码迷,mamicode.com
首页 > 其他好文 > 详细

我的 FPGA 学习历程(01)—— 数字逻辑入门

时间:2015-11-14 16:34:37      阅读:349      评论:0      收藏:0      [点我收藏+]

标签:

       大概是在13年的时候,弟弟给我看了一段 verilog 代码,并且跟我说这东西很有用,于是网上查了查资料,大神们是这样说的:在大学,你只能学到 51单片机,作为电子的入门基础,但是实际上嵌入式市场上用的大多是更为高端的芯片,主要分为三类:ARM、DSP、FPGA。

       既然决定学下 FPGA,就一定要有一块开发板。淘宝上的板子有很多家,有黑金、特权、至芯科技等等好多家,最后选了黑金的一块学生版AX301。当时以为 FPGA 嘛,肯定要比 51 高级一些,板子上有个 VGA 接口,因为用的是笔记本,说不定调试的时候需要一个屏幕,于是又买了个 VGA 7寸的小显示器(-____-)买到现在还不会写 VGA 驱动。

       拿到开发板后,你需要做的事情:

       第一步,看看板子附带的光盘资料,包括用户手册、原理图等等。熟悉下资料。

       第二步,altera 官网注册一个账号,下载安装 quartus 软件。

    • quartus 有免费的 网络版本,免费版本与注册版本的区别如下:
  1. 免费版没有多线程编译的功能,如果是多核 CPU,免费版只会使用其中一个 CPU,编译速度会慢一些。
  2. 免费版如果使用了 IP 核,生成的烧录文件(.sof)只能在线使用(一直连着电脑),而(.pof)只能使用一个小时。
  3. 免费版中 Qsys 或者 SOPCBuilder中只能使用 NIOS 精简核,否则 quartus 编译报错。
    • quartus 版本区别:
  1. 9 ~ 10 版中包含 图形仿真输入工具,10 ~ 12 版中没有,13版中又添加了,没有图形输入就只能用 Modelsim 编写 testbench 来仿真了。图形仿真输入工具对于初学者而言是必须的。
  2. 11版之后 Qsys 会代替 SOPCbuilder。
  3. 14版之后只有 64 位机器的支持,而 Modelsim 只有 32位,也就是说,如果安装了 14 之后的版本,运行 Modelsim仿真软件,你的 CPU 要有虚拟化支持。

总的来说,对于入门而言免费的版本就足够了,我就用了一年的免费版,最后才用它制作了一个电子钟。

       第三步,看看光盘里的快速入门视频、入门资料、工程项目。

  1. 按照视频上的要求打开一个 quartus 工程(.qpf)文件结尾
  2. 装好 USB-Blaster 驱动连上开发板的 Jtag 口,下载一个(.sof)文件看看效果。
  3. 按照 PDF 教程里的说明转化(.sof)文件文件为(.jic)文件,烧录到 EPCS 里去。

       FPGA 的自学入门之路真的很曲折。(*>.<*)曾经三个月连个灯都点不亮。

       我用的是Altera 的 FPGA,使用的 HDL 语言是 verilog。

       要想入门前需要数字逻辑基础知识:

  1. 基本逻辑门
  2. 卡诺图和逻辑化简

       当时我在熟悉板子之后只会编译别人写好的工程,烧写文件,而 verilog 却一直无法入门。附带的 PDF 教程里有 Verilog 扫盲文,此外还有建模篇,我的天哪,第一个例程就是流水灯,第二个就是按键消抖,技术分享,verilog 一行我都看不懂。

回头想想也没什么难的,只不过是一个计数器而已。只是当时我没有任何基础罢了,做教程、做板子的大神自然不会教你那些最基础的东西,因为他们觉得 我的知道的东西也是你理所应当知道的

       黑金社区做整套教程确实不易,而且难得文笔轻松活泼。可是一本笔记性质的东西教不了初学者什么,知识零零散散,需要事先有硬件从业者的经历、VHDL 的知识,转行到这块板子上才能轻轻松松读的懂。我个人可能比较愚钝,大约一年之后我才看得懂这本建模篇。

       光盘上还有夏文宇老师的《数字逻辑设计》 PDF版,这本书从语法的角度讲了 verilog,语法讲的非常细致,没有区分可综合和不可综合的部分,此外没有实验方法,我不知道该用什么软件来练习书中的例子。

       网上几乎没有 verilog 的入门视频,只能去买本书了,很快就入了一本《FPGA数字逻辑设计教程——Verilog》,老外写的,国人翻译,确实质量不错。但是这本译作是以 Digilent 公司的 BASYS2 和 NEXYS2 开发板作为例程的,那两块板子用的都是 xilinx 公司的 FPGA。书里用的工具是 ISE。不过虽然是竞争公司的产品,但不同厂商之间 FPGA 区别不大、verilog 通用性强,只要把书中的开关输入改为常数、把多个LED灯改成不超过4个LED灯,其他的真还没什么问题。

我的 FPGA 学习历程(01)—— 数字逻辑入门

标签:

原文地址:http://www.cnblogs.com/sxyf/p/4964484.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!