FPGA该怎么学啊?


根据提问者的描述 。已经做了3年的硬件设计 。想拓展提升自己 。寻找出路 。对FPGA比较感兴趣 。但是公司没有这样的平台 。该如何自学呢?
有3年的硬件设计经验 。有一定的硬件基础 。学习FPGA相对来说还是比较容易的 。下面谈谈本人的观点 。
随着科技发展 。对硬件的处理能力要求越来越高 。FPGA在在众多处理器当中有绝对的优势 。FPGA是非常好的一个并行处理平台 。只要逻辑资源允许 。可以构建n个处理模块 。n个软核 。FPGA是一个高度集成芯片 。很多模块集成到FPGA芯片上 。比如DSP处理单元、片内RAM、高速收发器、微处理器、以太网等 。提升自己 。学习FPAG还是非常有前途的 。

FPGA该怎么学啊?

文章插图
硬件描述语言
学习FPGA 。要先学它的编程语言——硬件描述语言 。有VHDL和Verilog 。个人建议学习Verilog 。Verilog语言和C语言比较相似 。对于有C语言基础的人来说比较容易入门 。而且目前市场上使用Verilog语言的人较多 。编程语言就不多说了 。自己购买教材 。或者网上下载电子书、视频教程学习 。
开发工具
比如Altera公司的的开发工具:quartus 。Xilinx公司的开发工具:Vivado、ISE等 。FPGA主流的两大公司就是Altera和Xilinx 。占据了市场90%左右的份额 。熟悉掌握使用这两家公司的开发工具以及相关芯片即可 。
下图为quartus开发工具设计的原理图以及程序 。
FPGA该怎么学啊?

文章插图
FPGA该怎么学啊?

文章插图
always语句 。下图为下降沿触发 。当wr有效 。且CS=0时 。将data数据写入outport 。
FPGA该怎么学啊?

文章插图
动手实践
这是最关键的 。刚看书是没多大用处的 。一定要购买FPGA开发板学习 。对于初学者来说 。最好不要买最小系统板 。要购买那种外设较多的开发板 。例子较全 。
FPGA该怎么学啊?

文章插图
FPGA该怎么学啊?

文章插图
把开发板的大部分例程都练习遍之后 。你已经入门了 。只有多做项目才能快速成长 。
FPGA该怎么学啊?

文章插图
以上是本人观点 。欢迎大家留言 。一起交流学习 。若想了解更多知识 。请关注本头条号 。谢谢~
其他观点:
1、先学习硬件描述语言 。Verilog或VHDL 。verilog相对简单 。编程风格类似C语言 。有C基础的上手快 。verilog语法资料网上很多 。也可以买本书看看 。
2、FPGA的开发工具也是必学 。任何一门语言都有自己编程环境 。FPGA常用开发工具有ISE 。vivado 。quartus 。仿真工具modelsim 。
FPGA该怎么学啊?

文章插图
图1 VIVADO 开发工具
3、买个开发板 。有一个FPGA的硬件平台是必不可少 。学有所用 。利用开发板熟悉FPGA的开发流程 。同时开发板厂家会相应例程 。便于学习 。上手 。
FPGA该怎么学啊?

文章插图
图2 开发板
4、对于懂硬件的朋友来说 。也算有优势 。熟悉硬件也必不可少 。有助于底层代码调试 。
FPGA该怎么学啊?

文章插图
图3 FPGA开发流程
5、最后就是参与FPGA项目 。在实践中前行 。历练更快 。提高更多 。
有一起学习FPGA的道友 。多多关注 。欢迎留言讨论
其他观点:
有时候 。学习一样东西 。需要一个思路 。一个流程 。进入一个陌生的领域 。一个新兴的行业需要了解这个思路 。这个规则 。这就是行业之道 。这个道 。是最初创立这个行业 。这项技术的一群人在一起开会讨论出来的结果 。
FPGA该怎么学啊?

文章插图
FPGA该怎么学啊?

文章插图
所以 。我们学习fpga的时候 。先要明确 。现在自己想干嘛 。想要一个什么样的结果 。你可能回想:“我要成为一个高手 。告诉我 。高高手” 。啧啧啧~ 。先别想这么远 。毕竟咱们实现民族复兴 。社会主义社会 。也是分阶段来的嘛 。按照 。流行说法 。先给自己定个小目标 。”学习使用fpga设计一个流水灯” 。好 。接下来 。就要去做准备工作了 。磨刀不误砍柴工嘛 。准备工作主要是哪些呢 。小书这里主要就以最常用的xilinx公司的zynq系列fpga介绍几种:(1)准备好开发版;(2)开发所需要的软件准备好;(3)开发所需要的资料准备好;前两项 。大家一般都已经完成 。主要是第三步 。怎么去找资料 。毕竟面对满满学海 。当你一头扎进去后 。若是没有目标 。可能会迷失了方向 。这时 。大家最先想到的是就是百度了 。好 。百度搜索一下 。怎么学习fpga 。那么搜索到的答案很可能就是:“最好的资料当然就是上的设计文档了” 。于是 。你开心的打开 。输入:??“等等 。我该输入啥 。这里英文该咋搜” 。

推荐阅读