Verilog入门与进阶

发布时间:2023-08-02 10:30

1 从VHDL开始

我在刚开始进行FPGA开发时,使用的是VHDL语言,简单学习了一下语法就开始编码了,那时真是无知者无畏,因为之前有开发单片机的经历,就像写c语言一样来写VHDL,不太明白代码什么意思,就那么模仿着别人的代码进行开发,就这样也完成了几个小项目,现在如果看那时的代码真是惨不忍睹。虽然如此,这一时期还是有很多收获,学会编写测试平台,掌握了仿真的方法,这也是开发FPGA的基本功。单位组织参加过两个付费的FPGA培训,当时虽然听不太懂,但对FPGA有了更深入的认识,之后慢慢消化了培训资料,在FPGA时序分析、设计技巧方面有很大进步。下面进入正题,换了工作之后,要求切换语言从VHDL换成Verilog,下面把Verilog学习过程和大家分享一下,分为入门和进阶两部分。

2 Verilog入门

Verilog语法相比VHDL更简单,可综合的语法加起来用不了一页纸。虽然如此,要想真正掌握还是要下一番功夫。为了避免象学习VHDL一样,一直处于业余状态。我决心要系统学习Verilog,经过一番搜索,下选择了如下两本书。

\"Verilog入门与进阶_第1张图片\"

《Verilog HDL入门(第3版)》这本书我觉很适合初学者,可以作为学习Verilog的第一本书,书中对Verilog语言进行了详细讲解,将Verilog设计分成数据流建模、行为级建模和结构建模。我当时一边看书一边做笔记,把书中的练习题也做了,感觉很有收获。

《Verilog数字系统设计教程》夏宇闻老师这本书大家应该比较熟悉了,这是我读的第二本Verilog书,同样推荐给大家。看完第一本后,再看这一本,读起来并不困难,既能巩固之前学到的知识,又有新的内容。尤其是关于阻塞与非阻塞的描述,一直指导着我之后的编码,相信读过这本书的朋友也是一样的情况。

学习完上面两本书,我感觉Verilog基本入门了,接下来就要靠大量的实践来提高了。

3 Verilog进阶

在入门的基础上如何进行提高呢,这时我想到了参加培训时一个老师推荐的书《数字设计原理与实践》,当时参加完培训我就买了这本书,翻了翻就扔一边了,看不进去。刚开始看《Altera FPGA/CPLD设计(基础)》、《Altera FPGA/CPLD设计(高级)》也是一样感觉,不知道在说什么。重新把这本书拿出来,仔细阅读有了跟之前完全不同的感受。当时老师推荐这个书时就说,如果你没有什么数字电路的基础,可以好好阅读这个书。学习FPGA,只会Verilog是不行的,要对数字电路有更深入的理解,就像我们常说的Verilog与其它软件语言的不同,每一句都对应着硬件电路。这本书目前出到了第五版,第五版相比第四版有了很多改变,去掉了VHDL语言的部分,全部使用Verilog。第五版目前只有英文版,第四版有中文版,推荐大家看第四版。
\"Verilog入门与进阶_第2张图片\"

《Verilog HDL高级数字设计》最后推荐的也是最重量级的,如果只推荐一本书,那么我推荐这本。这本书教会我怎么使用状态机。我们工作中经常也遇到这样的情况,要实现某一功能,先用文字进行描述,接下来将文字变换成书中教的ASMD(算法状态机与数据通路)。ASMD将数字通路与控制器分离,同时将它们之间的联系呈现出来。完成ASMD图之后,代码也就出来了,我使用这种方法完成很多项目。

\"Verilog入门与进阶_第3张图片\"

4 如何更进一步

看完上面的四本书之后,我也在寻找进一步提高编程能力的方法,渐渐的我发现,要继续提高,就要深入某个领域,比如图像方向、信号处理方向、高速接口或者AI推理,verilog或者说fpga仅仅是一个工具。这也是fpga工程师面临的一个困境,我相信很多fpga工程师到一定阶段都会遇到,如何破局呢?欢迎大家留言讨论。

需要下载电子版书籍的朋友关注 硬码农二毛哥 公众号,回复3,下载电子书,下图中后两本书都只有第三版。
\"Verilog入门与进阶_第4张图片\"

对zynq7000,zynqmpsoc器件和AI推理感兴趣的朋友,欢迎关注我的公众号 硬码农二毛哥 一起学习交流
\"Verilog入门与进阶_第5张图片\"

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号