当前位置:   article > 正文

FPGA学习路线by老石谈芯

fpga学习路线

放一张老石!(思维导图在文末!)

入行十年,我总结了这份FPGA学习路线:搞定这四点,你也能轻松进阶(老石谈芯).
在这里插入图片描述

摘要

(一)编程语言

1 硬件描述语言HDL

FPGA使用的语言叫做硬件描述语言HDL寄存器输入集语言RTL
(先不考虑高级语言C、Python编程)

主流硬件描述语言有1 VHDL 2Verilog 3System Verilog

VHDL和Verilog各有优缺点,比如VHDL的语法更加严谨,而Verilog更加灵活,更加像C语言

入门的话,先熟练掌握一门语言即可

老石建议:先学Verilog(尤其是有C语言开发经验),有开发经验了之后再学VHDL,因为有可能在实际的项目中有一部分模块是用Verilog写的,一部分是用VHDL写的(最好至少大概能看懂)

不管学习什么语言,最主要的都有三大点
1 语法
2 如何使用这个语言做设计
3 如何使用这个语言做验证

书籍几乎都大同小异,但是建议认真的看一遍Verilog的语法,不用要死记硬别,但是需要对每一条的语法和功能做到心中有数
在这里插入图片描述可以先看可生成电路的可综合的Verilog语法,不太多
再看主要用于写验证和仿真的不可综合的语法

书籍:《verilog传奇》
强烈推荐的刷题网站!!!!!HDLBits.
建议先做,不会的时候反查 Verilog的书籍,这样通过实践来学习

2 寄存器输入集语言RTL

2.1 如何入门

RTL设计主要有组合电路时序电路两个部分,还有一个非常重要的部分就是状态机,都应该熟练的掌握(刷题网站里都有对应的题目哦!~)

关于RTL的验证,初学者主要掌握如何写一个简单的测试平台,及如何写一些简单的测试用例

2.2 最大的思维转变

在这里插入图片描述
思维转变:软件编程大都是顺序执行的,但硬件编程大都是并行执行的!

在学习Verilog的时候一定要多想想它对应的硬件电路是什么样的

3 推荐转向学习System Verilog

现在的大公司更喜欢的System Verilog
System Verilog可以看成是Verilog的超集,它加入了很多Verilog里不支持但是非常有用的功能
比如自定义类型、结构体联合体、接口
还有一些用于仿真验证的特性,比如业界常用的随机约束、UVM
也简化勒很多Verilog里的一些语法表达,不用纠结一个信号到底是wire还是reg可以直接用Logic来表示

不建议初学者一开始就学System Verilog(还没太找到好的教程)

4 仿真工具

在这里插入图片描述学习编程语言很重要的就是仿真工具
这是网上的两个开源的工具:iVerilog,EDAplayground

(二)基础知识

1 电路、数电,计算机网络结构,接口,数字信号处理
推荐优先看数电

2 和FPGA相关的知识,包括FPGA芯片的结构以及它的一些基本组成单元的结构(推荐看FPGA官方的文档)

3 了解FPGA的开发流程
在这里插入图片描述

(三)开发工具

入门阶段建议专注于一个平台
在这里插入图片描述在这里插入图片描述

(四)动手实验

配合开发版的学习
比较经典的实验有:数码管、流水灯、按键、红绿灯 还有一些常见的总线的通信
还有一些数据处理和信号处理的实验
《深入浅出玩转FPGA》

(五)思维导图

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/178984
推荐阅读
相关标签
  

闽ICP备14008679号