FPGA目前非常火,各个高校也开了FPGA的课程,但是FPGA并不是每个人都适合,FPGA讲究的是一个入道,入什么道,入电子设计的道,就是说,这个过程,你得从电子设计开始,然后再学FPGA,而不是先从VHDL开始,直接跳过数电模电.这一点非常重要,这涉及到你以后的发展高度的问题.我是过来人,我深刻体会到FPGA与数电模电的基础的深层次联系.对于本科生而言,你可以把FPGA当作业余兴趣,但不要把它当成今后的饭碗,你可以保持这个兴趣直到研究生读完.从我招聘的情况来看,做FPGA的至少要读过研究生。
做FPGA,一定要学,一定要有兴趣,至少要学3年才算可以掌握这门技术,为什么这么说呢,我每天与FPGA打交道,xilinx官方网站的基本上每个英文资料我都看了一下,我看了整整两年的文档,才在这个行业有话语权,而我每天要研究14个小时的FPGA,差不多是一般人的两倍.现在我可以说我掌握了FPGA,可以用来做任何事情,CPU,交换机,等等这都不算什么.重要的是,我可以用相同的价钱把一个系统的性能做到大多数现状的10倍以上.或者说,某个东西,我看了一下,可以用10分之一的成本把这个系统做下来.我现在苦恼的是,不知道要做什么.我设计的千兆交换机,用FPGA做的成本,比用通用的ASIC还低.随着研究的深入,看着一行行代码就能想象出用什么逻辑电路设计,哪里是组合逻辑,哪里是触发器,VHDL语言,设计的就是逻辑门,越是深入研究这些东西,越是觉得与电路关系深刻,之后设计的代码越像是用74系列搭起来的.这种时候,FPGA的性能将发挥到极致.在spartan-3中,可以把逻辑运行到200MHz以上去,在virtex-5中,跑600MHz是没任何问题的,编译系统报告的速度在-1的速度下有800多MHz.
编写好的代码实际上是对电路的理解,我自始至终强调,做好电子设计才能做好FPGA,有了硬件基础,做好FPGA的话,你的收入可能会成指数增长.
FPGA是电工的高级工具,掌握了它,你可以认为掌握了整个电子世界.
另一个牛人的话:
就我这几年接触的FPGA应用方向来看,通信方面用的比较多,FPGA逻辑设计才是精髓,对于初学者,要先学习逻辑设计,不建议上来就学NIOS,因为上来就学NIOS,只能学学一些简单的配置,学不到什么实质的东西,就目前来看,实际项目中用到NIOS的很少,一般都是采用CPU+FPGA的模式。所以还是建议初学者多学习逻辑设计方面的东西。 |