学习FPGA应该从什么地方入手呢?

FPGA学习路线:

大致分成四个部分:编程语言、基础知识、开发工具、项目实战。

编程语言:

推荐先学习Verilog,如果有一定的C语言基础,那么应该会比较好上手。

等积累一定开发经验之后,考虑看VHDL(因为在实际项目中一些模块是Verilog写的,另外一些是VHDL写的,所以即使写的不好但最好能看懂用)。

编程语言主要的内容有三大部分,语法、如何用这个语言做电路设计、如何用这个语言做验证。

这里推荐HDLBits网站,建议大家把这里面的题做一遍。

Verilog掌握比较熟练的推荐转向SystemVerilog(业界的大公司都在使用)。

仿真工具,这里比较常用的是Mentor的Modelsim,还有Synopsis的VCS,

此外,FPGA开发工具也会自带轻量级的仿真工具,网上也有一些开源的验证工具,比如iverilog,还有一些网页工具,比如EDAplayground(大家可以根据自己的实际情况选择)。

基础知识:

主要有专业基础和FPGA专业知识两部分。

专业基础一般都是大学期间学的课,比如:数电、计算机体系结构、接口、数字信号处理等等。

FPGA专业知识,包括:FPGA芯片的基础结构,以及它的一些基本单元的结构,比如查找表、逻辑单元、逻辑块、DSP、存储器等等(推荐看FPGA官方的文档)。

另外就是FPGA的开发流程,包含:设计、仿真、综合、映射、布局布线,时序收敛,映像下载和硬件调试等步骤。

开发工具:

主流的FPGA开发软件有两,赛灵思/AMD的Vivado、英特尔的Quartus(大家要根据自身情况去选择)。

工具的学习主要有3个目的:

1、熟悉前面说的FPGA开发流程。比如:怎么创建工程,怎么添加文件,怎么加入时序约束,怎么把生成的FPGA映像加载到开发板上等等。

2、熟悉一些常用的IP的用法,在FPGA项目中,会用到很多不同的IP核,比如PLL、FIFO、存储器等等,还有一些通信用的IP比如以太网控制器、PCIe、DDR控制器等等,这能帮助提升设计的效率和性能。

3、学习一些常见的硬件调试和时序分析的方法,比如怎么看最大频率,当时序不收敛的时候怎么进行分析和修改等等。

项目实战:

学习FPGA不摸板子,就像纸上谈兵,所以项目实战非常重要,从头到尾走几遍前面说的流程,是非常有利于学习FPGA的。

​​​​入口:免费领取fpga教程、fpga项目。 ​ ​ ​ ​

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值