栏目分类
热点资讯
精品福利
你的位置:国产精品小车 > 精品福利 > 六年后,我依然不推荐为了找工作而学习FPGA
六年后,我依然不推荐为了找工作而学习FPGA

发布日期:2021-10-23 13:30    点击次数:162

2014年3月,我曾经写过一篇文章:

为什么不推荐为了找工作而学习FPGA-老莫-电子技术应用-AET-中国科技核心期刊-最丰富的电子设计资源平台

讨论了为什么我不建议一个没有基础的学生为了找工作而选择学习FPGA。这篇文章和我第一次写的一样。

为什么很多人觉得FPGA很难学-老莫-电子技术应用-AET-中国科技核心期刊-最丰富的电子设计资源平台

它们也被广泛地转移(飘)和发送(切)。很多个人博客、自媒体之类的,转发的时候连一个转发字都没有,更别说添加原创链接了。当然,没有链接到原文主要是因为重复转发后,估计转发者不知道原作者是谁。

吐槽完了,回去说说为什么不建议学FPGA。

六年前我讨论过为什么不建议学FPGA,主要是针对一些没有从事过FPGA相关工作,没有做过FPGA项目的应届毕业生或者初级求职者。主要原因是FPGA学习曲线和入门难度大,但学习后就业面不广。作为一个小白,为了“谋生”读书其实有更好的选择,没必要死在这里。如果你对FPGA感兴趣,或者已经在这个领域工作过,那就不在我这篇文章的讨论范围之内了。

六年前,我主要从技术发展、岗位数量、技术学习难度等角度讨论了为什么不建议学习FPGA。六年过去了,这些问题有没有改变?我觉得变化不大。除了这些遗留问题之外,今天我想从另一个方面来谈一谈这个问题,那就是学习条件。

学习条件的主要问题如下:

FPGA的学习要依赖于硬件平台和仪器目前FPGA缺乏适于自学优秀的教程FPGA缺乏有效的网络学习手段实体培训班一言难尽

以上四点将一一说明。

1.FPGA学习依赖硬件平台和仪器。

这是一个相当传统和古老的问题。FPGA的主要用途是用于通信/信号处理/网络/自动控制等硬件设备。了解FPGA在硬件中的用法和套路,是学习FPGA和学习软件编程最大的区别。因此,没有硬件平台的帮助,FPGA很难掌握其在硬件上的用法,尤其是培养硬件的“直觉”和“世界观”。如果只把学习FPGA看成是学习硬件描述语言和仿真工具,估计走了一年都无法入门。

但得益于包括FPGA在内的一系列硬件材料价格的下跌,市场上出现了相当多价格较低的硬件开发板。但这类开发板普遍存在一个问题:外围电路中“人机接口”较多,而“接口电路”较少。用这种开发板很难学会FPGA主要用途的通信/信号处理/自动控制(但更适合学习计算机组成或片上系统设计,后面会讲到)。即使有必要的外围电路,也往往需要有与信号产生/分析相关的仪器,才能学习到更深入的内容。而且一台仪器本身就贵,更别说一台仪器不够用了。几个仪器下来,几万块钱就出去了。

对于第一个问题,还是有办法解决的。第一种方法是专注于图像/视频信号处理,这样处理后的信号可以直接显示在屏幕上,而不会受到很多仪器的影响。这样,我们基本上可以练习与信号处理相关的各种算法。在这方面可以推荐一本书:

《FPGA设计技巧与案例开发详解(第2版)》(韩彬,于潇宇,张雷鸣,宋恒,林海全)【摘要 书评 试读】- 京东图书

第二种方式是使用虚拟仪器,一台好一点的电脑,几千元左右就能实现几台仪器的功能。比如这样:

EPI-LITE系列小型化高性能口袋实验

还有这个:

EPI-BE304

不过,几千块钱对于普通学生和初学者来说还是一笔不小的数目。与纯软件学习相比,它仍然是一个不可克服的困难。

2.目前FPGA缺乏适合自学的优秀教程。

教程是目前FPGA教育的一大难题。就是缺少优秀的教材,尤其是缺少适合自学的教程。目前教程主要是两个人写的,一个是大学老师写的,一个是开发板商家发的。

大学老师写教程的问题是,胜任大学老师的事情很多,他们往往很少有时间写教材。前年计划了一本教材,还没看完。主要是事情太多,项目、论文、日常教学、国际会议都占用时间。一些“著名的数据书翻译家”翻译最新的数据书,并添加一些旧的实验案例。一年出几本甚至十几本书。也有一些书是为了应付学校考核才编的。比如2016年,书籍依然会基于MaxPLus II编写,这是一个已经被淘汰了将近20年的工具。这类书的一个共同特点就是“扔下书袋”,这就使得硬件描述语言成为了一种编程语言。但很少谈及设计思路、设计方法、设计案例等“实际意义”的内容。

附在开发板上的教程的问题在于,这样的教程更多的是对开发板的“演示描述”,而不是真正的教程。给买家一堆所谓的“套路”,基本上就是连接外设,到处跑。买家得到足够的教程,按照流程自己运行。我发现自己“熟练”了自来水灯、LCD、SPI,后来又“熟练”了以太网等高级应用。事实上,他们中的大多数人跑步并体验到了一种虚拟的“凉爽感”。我以为我会,但我意识到在我完成我的乐趣后,我没有学到任何东西。

相对于纯软件领域的很多经典教程,FPGA领域的教程确实比较欠缺。其实这给初学者造成了很大的困扰。如果你是一个小白,当你选择你想学的东西的时候。同样的时间和精力,一个有好的教程,一个没有。把时间和精力花在哪个上面更划算?

3.FPGA缺乏有效的网络学习手段。

这也是显而易见的。例如,研究纯软件有一个类似于实验楼的网站:

在线做实验,高效学编程 - 实验楼

但是,FPGA显然缺乏这样一个完整全面的网站。也许我无知。如果有好的FPGA学习网站,欢迎推荐。

4.实体培训班一言难尽。

在以上所有道路都有问题的情况下,参加实体培训班是一种可行的方式。参加体能训练课程的好处是有人可以亲自解决问题,从而减少一些弱智但浪费时间的问题。从而加快进度,尽快进入有意义的学习阶段。

但是很多体能训练课程说来话长,有些训练课程还夹杂着20年前的老项目SDH。传授开发方法和设计思路...这方面说多了容易得罪人,现在就摸摸。

最后,做个声明,这篇文章是针对未来想通过自学/报班找到工作的小白。建议他们选择学习条件更好、更容易成功的方向。如果有机会参加可靠的项目,准备参加各种比赛的同学,或者已经进入行业的新人,都要认真讨论如何学好FPGA。



国产福利 精品福利