初学者如何学习FPGA?
还未开设相关的课程,也缺少具有实践经验的老师,那么如何才能找到一种捷径帮助初学者快速学会如此具有竞争力的技术呢?我们公司从原来仅有1人,到目前为止已经发展成为了一支拥有30多人的FPGA团队,其中有一些成长的经历,在此希望能与大家一起分享。
(1)掌握FPGA的编程语言
在学习一门技术之前我们往往从它的编程语言开始,如同学习单片机一样,我们从C语言开始入门,当掌握了C语言之后,开发单片机应用程序也就不是什么难事了。学习FPGA也是如此,FPGA的编程语言有两种:VHDL和Verilog,这两种语言都适合用于FPGA的编程,VHDL是由美国军方组织开发的,在1987年就成为了IEEE的标准;而Verilog则是由一家明间企业的私有财产转移过来的,由于其优越性特别突出,于是在1995年也成为了 IEEE标准。VHDL在欧洲的应用较为广泛,而Verilog在中国、美国、日本、台湾等地应用较为广泛,作者比较推崇是Verilog,因为它非常易于学习,很类似于C语言,如果具有C语言基础的人,只需要花很少的时间便能迅速掌握Verilog,而VHDL则较为抽象,学习的时间较长。
作为在校大学生,学习Verilog的最好时期是在大学二年级开设《电子技术基础(数字部分)》时同步学习,不仅能够理解数字电路实现的方式,更能通过FPGA将数字电路得以实现。作者发现华中科技大学康华光教授主编的《电子技术基础(数字部分)》非常好,可以说是一本与时俱进的教材,在本书的第二章最后一节专门介绍了Verilog语言与FPGA,并且在每一章的最后一节都介绍了如何使用Verilog建模实现相关数字电路的内容,因此本书非常适合大二学习FPGA的学生参考。本书是以《电子技术基础(数字部分)》为背景,并与该书同步配套学习FPGA,并在它的基础上作了改进,源于它而又高于它。
大三、大四的学生还可以进一步强化学习Verilog,建议以北京航天航空大学出版社出版的由夏宇闻教授编写的《Verilog数字系统设计教程(第二版)》作为蓝本,本书比较全面地、详细地介绍了Verilog的基本语法。如果是其他初学者,可以直接借助《Verilog数字系统设计教程(第二版)》和本书即能全面掌握Verilog的语法,这是学习FPGA的第一步,也是必不可少的一步。
(2)一个易学易用的硬件平台是成功的一半
除了学习编程语言以外,更重要的是实践,将自己设计的程序能够在真正的FPGA里运行起来,这时我们需要一个硬件平台作为支撑,然而很多FPGA硬件平台的价格却让初学者望而却步,上千元的价格并不是一般的初学者(特别是学生)能够承受的,关键是缺乏详细的配套资料,学习起来非常吃力。针对这种状况,广州周立功单片机发展有限公司开发了一套不以盈利为目的、售价仅99元的FPGA开发学习板,即使是学生也完全能够承受得起,希望帮助更多的大学生因此而提高动手实践能力。
在过去的一年里,我们一共投入了4位开发工程师围绕EasyFPGA030开展工作,翻译了全部开发工具软件使用指南和相关技术资料,先自己吃透然后再根据自己的理解、实践和多次讨论,将技术资料通俗化,并且录制了第一个"Actel FPGA快速入门视频教程"供初学者免费下载。为了便于初学者快速入门,当第一版做出来销售1000套之后,才发现初学者的焊接经验不足,于是又开始设计第二版硬件电路,这就是目前大家在网站上见到的一体化EasyFPGA030开发学习板。
为了能够带给大家最充分、最权威的知识,我们还邀请了国内第一家大学EDA实验室创始人之一的夏宇闻教授给我们进行Veirlog的培训,之后我们制作了一系列Veirlog视频教程和PPT供初学者学习,同样免费提供给大家。同时,我们和夏老师一起共同合作编写了本书,目的是希望能够以最快的速度帮助初学者入门,另外我们还有一个30多人的团队为用户提供全面的FPGA技术支持和售后服务,解决用户的后顾之忧。
由此可见通过EasyFPGA030的平台学习,不仅可以帮助用户节约前期的学习成本,而且该套件详细的资料使得初学者少走很多弯路,对于初学者来说,EasyFPGA030是一个不可多得的FPGA开发学习平台。
(3)技术的巩固和升华
对于初学者来说,当有了一定的基础后,应该将技术继续巩固和升华,作者认为参加竞赛是学生验证所学知识的一个最好的舞台,不仅能够锻炼学生的动手能力,而且能够发挥学生的创造力和想象力。
广州周立功单片机发展有限公司已经成功地举办了两届"Actel杯中国大学生FPGA电子设计竞赛",参加的队伍分别是100队和300队,每支队伍都将免费获得一套价值1480元的FPGA开发套件作为竞赛的平台,竞赛完后该套件无需退回
- 用大电流LDO为FPGA供电需要低噪声、低压差和快速瞬态响应(08-17)
- 基于FPGA 的谐波电压源离散域建模与仿真(01-30)
- 基于FPGA的VRLA蓄电池测试系统设计(06-08)
- 降低从中间总线电压直接为低电压处理器和FPGA供电的风险(10-12)
- FPGA和功能强大的DSP的运动控制卡设计(03-27)
- DE0-Nano-SoC 套件 / Atlas-SoC 套件(10-30)