小梅哥和你一起深入学习FPGA之初学者指南
感谢论坛给我的诸多照顾,通过和广大电子爱好者深入交流,我真正了解到了很多初学者的困惑。特权同学的深入浅出玩转FPGA系列教程确实不错,想当初,我也是靠着他的视频教程入门的。跟着特权同学的教程,我们能够很快学会QuartusII软件的使用,也能够做一些简单的实验。但是跟着他的教程走了大半年,后来又跟着黑金的教程走了大半年,还有CrazyBingo的VIP教程。感觉他们都很厉害,能够做出那么优秀的设计,可是自己却一直不得要领,出了问题就是找不到原因,不知道怎么去解决。直到我在业界几位大师的带领下系统的学习了一段时间后,我才真正的能够自己进行独立的FPGA系统设计。总结我这一年半时间的FPGA学习经历,有以下心得:
一、正确的设计方法尤为重要
很多初学者,包括绝大多数的高校EDA课程,都没有教给学生正确的设计方法,可以这么说,很多高校的授课老师对这门技术的掌握也是连入门的要求都没达到,他们要么干脆不知道要仿真,要么就用Quartus II自带的绘制波形的仿真软件进行简单的测试,很少有老师教学生怎么去进行系统的仿真,更少有老师教学生进行testbench的编写。前天接触一个进行EDA教学的老师,课程实验要求里面说了要进行仿真,但是他不要求学生仿真,究其原因,他自己说的是因为他自己不会写testbench。每天在各大论坛,有那么多的学生在网上咨询着一些入门级的问题,让我们不得不嗟叹,很多大学的课程教学,是很失败的。我以前自学FPGA的时候,也觉得testbench的编写特别的难,想跟人学,却没有人教。导致一直止步不前,对自己所写的代码,执行时会是怎么样一个效果,心里完全没有一个清晰的概念。即那时候的学习,还只停留在代码层,完全没有理解FPGA的工作实质。只是看着别人这么写能行,我也就这么写了。当后来学会了仿真之后,突然一下子就全部理解了,知道了自己的每一行代码生成的电路在执行的时候会是什么情况,知道了FPGA时序设计的本质,知道了怎么通过仿真结果去修改和优化自己的设计。因此,这里我主要就是想说,FPGA设计并不难,只要学习者掌握了正确的学习方法。
二、学习参考很重要
在开始学习的过程中,总会遇到各种各样的困难:软件使用不熟练、语法不熟练、基本原理不熟练等等,都会严重打击初学者的积极性。那么针对这三个问题,小梅哥的建议则是:软件不熟练,就跟着视频教程一步一步走,Altera官网有一套视频教程,这些教程由官方出品,具有极高的参考价值,另外,目前网上很多FPGA爱好者也出了有视频教程,如果只是想单纯的学习软件的使用,跟着这些视频教程来走是非常适合的;语法不熟练,就需要去看书了,目前讲verilog语法的书满天飞,但是实际又有多大的价值呢。个人认为,夏宇闻老师的经典教材《Verilog数字设计教程》绝对是一本好书。这本书将Verilog语法的精髓讲的淋漓尽致,对于可综合语法和不可综合语法都很看重,这是其他教材所无法达到的。虽然做FPGA设计,代码必须能够是可综合的,这样才能生成有意义的电路,才能被下载到FPGA芯片中去执行。因此,绝大部分教材就只讲了可综合的设计语法,对于不可综合的语法,只是简单的一带而过,这其实是非常错误的观点。正确的FPGA设计流程,应该是在开发环境中仿真无误后才进行板级验证,而在仿真的过程中,要想使仿真结果能够全面可靠,不可综合的语法运用相当重要。只有运用好了这些语法,我们才能够编写出好的测试文件,对我们的设计进行全面的测试。因此,那些认为不可综合语法不重要的人,大部分对于仿真测试这一块没有深刻的认识。因此,他们也就无法进行很多创新设计和复杂的系统设计。对于连基本电路原理都不熟悉的人,小梅哥就感觉有点无能为力了,只能希望你自己能够多多在网上查阅资料,将基本原理弄清楚。小梅哥从小学六年级拆开自己一台崭新的复读机,接触花花绿绿的电路板开始,到如今,也已经有了十多个年头,这十年,小梅哥无时不刻不在被电子技术的强大魅力所吸引,义无反顾的投入到电子技术的学习中。电子技术的学习,需要激情,需要耐力。
给初学者的学习建议:
最开始不要急于求成,一定要掌握正确的设计流程和设计方法,这里应该强烈要求大家使用modelsim-Altera软件对我们的编写代码进行仿真,而不是简单的“代码编写》编译》下板测试》修改代码”的方式,正确的方式应该为“代码编写》功能仿真调试》编译》门级仿真》下板测试”。仿真第一可以节约时间,第二可以让我们对FPGA内部的信号工作时序有非常清晰的认识,使我们能以最
电子 FPGA Quartus EDA 仿真 电路 Altera Verilog ADC 传感器 DAC 相关文章:
- 基于ARM的嵌入式系统中从串配置FPGA的实现(06-09)
- 周立功:如何兼顾学习ARM与FPGA(05-23)
- 初学者如何学习FPGA(08-06)
- 为何、如何学习FPGA(05-23)
- 学习FPGA绝佳网站推荐!!!(05-23)
- 我的FPGA学习历程(05-23)