1. 1QuartusII安装 ................................................................................................................................. 安装文件夹内容 ........................................................................................................................................ 安装步骤 .................................................................................................................................................... 破解步骤 .................................................................................................................................................... 1. 2工程建立 ........................................................................................................................................... 第二讲:Verilog HDL语言的应用与仿真 .............................................................................................. 2.1分频器原理说明 ................................................................................................................................. 2.2编写Verilog HDL程序 ..................................................................................................................... 2.3程序仿真 ............................................................................................................................................. 第三讲:原理图方式编程及IP核调用 ................................................................................................... 第四讲:程序下载 .................................................................................................................................... 4.1引脚配置 .............................................................................................................................................
FPGA教程——Quartus II 入门指南
第一讲:Quartus II 安装及工程建立。 第二讲:Verilog HDL语言的运用及仿真。 第三讲:原理图方式编程及IP核调用。 第四讲:程序下载。
第一讲:Quartus II 安装及工程建立
1. 1QuartusII安装
本指南的QuartusII版本是QuartusII 7.2。
1.1.1QuartusII安装文件夹内容
从网上下载或是从其它地方考贝来的QuartusII7.2文件夹内包含两个文件:72_quartus_windows.exe和压缩文件Crack_QII72,如图1-1所示。
图1-1 QuartusII安装文件夹包含文件
1.1.2QuartusII安装步骤
(1)双击72_quartus_windows.exe文件,出现QuartusII7.2对话框,如图1-2。
图1-2 QuartusII7.2对话框
(2)点击Install按钮,开始安装,等待完成出现Quartus II 7.2 Setup安装对话框,如图1-3,点击Next,对话框变为图1-4所示,选择同意选项,点击Next,直到出现图1-5,单击Finish完成安装。
图1-3 Quartus II 7.2 Setup安装对话框 图1-4 Quartus II 7.2 Setup安装对话框 图1-5 Quartus II 7.2 Setup安装对话框
1.1.3QuartusII破解步骤
(1)解压文件Crack_QII72,出现四个文件license.DAT,Quartus_II_7.2_b151破解器.exe,sys_cpt.dll,读我.txt,如图1-6所示,其中读我.txt文件有破解说明。
图1-6 Crack_QII72文件夹包含文件
(2)双击Quartus_II_7.2_b151破解器.exe打开Quartus_II_7.2_b151破解器,如图1-7所示。
图1-7 Quartus_II_7.2_b151破解器
(3)点击浏览按钮在路径C:\\altera\\72\\quartus\\bin找到sys_cpt.dll文件,单击应用按钮,完成修补。
① ②
图1-8 Quartus_II_7.2_b151破解器
(4)双击桌面Quartus II 7.2(32-Bit)快捷菜单,打开Quartus II 7.2软件,如图1-9。
图1-9 Quartus II 软件界面
(5)如图1-10所示,点击菜单Tools->License Setup…,出现图1-11所示的Options对话框。
图1-10 点击License Setup选项
网卡IP
图1-11 Options对话框
(6)复制Network Interface Card(NIC)ID选项内的数值,获取网卡IP。
(7)打开License.txt文件,将复制的内容代替HOSTID的内容(共三处),并保存,关闭文件,如图1-12所示。
① ② ③
图1-12 license.txt文件内更新HOSTID
(8)复制更新好的license.txt文件到C:\\altera\\72路径下。
(9)在步骤(5)的Options对话框中,点击浏览,找到license.txt文件,如图1-13所示。
找到license.txt文件 点击ok完成破解
图1-13 更新license.txt文件
1. 2工程建立
(1)双击桌面Quartus II 7.2(32-Bit)快捷菜单,打开Quartus II 7.2软件,如图1-14。
图1-14 Quartus II 软件界面
(2)点击菜单File->New Project Wizard打开工程向导,如图1-15,出现图1-16的工程向导。
图1-15 打开Quartus II 新建工程向导 图1-16 Quartus II工程向导——介绍
(3)点击Next,出现图1-17所示的工程向导,选择工程路径,则工程名和顶层文件名自动出现,在此将工程名和顶层文件名可的Lab0-删除,如图1-18所示。
工程路径 工程名 顶层文件名
图1-17 Quartus II工程向导——工程路径,工程名和工程顶层文件名
工程路径 工程名 顶层文件名
图1-18 修改后Quartus II工程向导——工程路径,工程名和工程顶层文件名
(4)点击Next,出现图1-19所示的工程向导,可增加已有文件,在此保持默认,不进行操作。
图1-19 Quartus II工程向导——增加文件
(5)点击Next,出现图1-20所示的工程向导,设置器件,这与所使用的FPGA有关,在此使用的是Cyclone II系列的EP1C6Q240C8。
选择与硬件匹配的器件
图1-20 Quartus II工程向导——器件设置
(6)点击Next,出现图1-21所示的工程向导,EDA工具设置,可以加入第三方EDA工具,在此保持默认。
图1-21 Quartus II工程向导——EDA工具设置
(7)点击Next,出现图1-22所示的工程向导,总结前面所做的选择。
图1-22 Quartus II工程向导——总结
(8)点击Finish,完成工程新建向导,可观察到工程文件夹中包含工程相关文件,如图
1-23所示,只要双击工程文件所示。
,即可打开已有工程,工程窗口如图1-24
图1-23 工程相关文件
资源管理栏 工程栏 编译状态显示 信息显示窗
图1-24 工程窗口
第二讲:Verilog HDL语言的应用与仿真
2.1分频器原理说明
本讲和第三讲的内容都是实现一个分频器,系统时钟为50MHz(即20ns),通过分频产生一个频率为10KHz(100us)的方波信号,其中参数可变,易于产生不同频率的方波信号。
实现原理,计数器counter在系统时钟作用下,每一个系统时钟上升沿counter加1,直到2499(100us/2/20ns-1=2499),分频dividers_out信号翻转,并且复位计数器counter,其原理如图2-1所示。
图2-1 分频器原理
本讲用Verilog HDL语言形式实现分频器,下一讲用原理图方式实现分频器,通过这两讲,可以比较两种不同的编程方法。
下面讲述Verilog HDL语言形式实现分频器。
2.2编写Verilog HDL程序
(1) 接上讲,双击工程文件
,打开工程,如图2-2所示。
图2-2 dividers工程
(2)新建*.bdf文件,作为顶层文件,文件名一定要和工程名相同。其步骤如图2-3所示,点击File->New…打开new窗口,选择Block Diagram/Schematic File,如图2-4所示,新建好的*.bdf文件如图2-5所示。
①点File菜单 ②点New…菜单
图2-3 新建菜单
Block Diagram/Schematic File ③在新建窗口选择
图2-3 新建窗口
④Block Diagram/Schematic File文件
图2-5 *.bdf文件
(3)保存*.bdf文件。在*.bdf文件里画一导线,再删除(使文件可以保存),点击保存,文件名与工程名相同,如图2-6与图2-7所示,最后结果如图2-8所示。
④点击保存按钮 ③按Delete键删除线 ②按住左键画线 ①选择画线
图2-6 在*.bdf文件中画线并删除
⑥点击保存按⑤顶层文件名与工程名一致 钮
图2-7 另存为对话框
文件名改变
图2-8 保存后的dividers.bdf文件
(4)新建Verilog HDL文件。步骤如图2-9,2-10所示。
①点File菜单 ②点New…菜单
图2-9 点击新建菜单
③在新建窗口选择Verilog HDL File文件
图2-10 新建窗口选择Verilog HDL File
(5)在Verilog HDL文件中编写程序,并保存文件。步骤如图2-11,2-12所示。
①编写文件 ②点击保存按钮
图2-11 编写Verilog HDL程序
③文件名要与模块名一致 ④点击保存按钮
图2-12 保存Verilog HDL程序
(6)将Verilog HDL文件生成符号文件*.bsf,以供在*.bdf文件中调用。其步骤如图2-13所示。
①点File菜单 ②单击 ③单击
图2-13 生成*.bsf文件步骤。
(7)生成*.bdf文件的过程中,对此Verilog HDL文件进行初步编译,如果出错,则修改,直到编译通过才产生*.bdf文件文件,如图2-14所示。
dividers_v.bsf文件
图2-14 dividers_v.bsf文件
(8)在顶层文件dividers.bdf文件中添加dividers_v.bsf文件,其步骤如图2-15,2-16,2-17所示。
①双击打开dividers.bdf文件 ②双击dividers.bdf文件空白
图2-15 打开dividers.bdf文件
本工程内符号 ③在出现的符号窗口中,选择dividers_v, 安装程序时的符号,即IP核 ④出现符号形状,回车
图2-16 Symbol对话框
⑤放置符号
图2-17 添加后dividers_v.bsf文件如果的工程窗口
(9)给符号添加引脚。步骤为右击符号,选择Generate Pins for Symbol Ports选项,如图2-18,添加后结果2-19所示。
①右击符号 ②单击
2-18 添加引脚步骤
添加的引脚自动命名
图2-19 添加引脚后结果
(10)编译程序。单击按钮编译程序,信息栏显示编译结果,直到把所有错误去掉。
2.3程序仿真
程序编译好后,可以通过仿真,观察波形,是否满足要求。下面讲述程序仿真。 (1)新建波形文件。其步骤如图2-20,2-21.2-22所示。
①点击File ②点击New…
图2-20 单击新建菜单
③点击Other File ④选择波形文件 ⑤点击ok
图2-21 选择波形文件
配置区 引脚区 波形文件
图2-22 波形文件形式
(2)波形文件中插入引脚。如图2-23,2-24,2-25,2-26,2-27,2-28所示。
①右键 ②插入 ③插入针和总线
图2-23 插入引脚菜单
④单击Node Finder
图2-24 插入引脚对话框
⑤选择all ⑥单击List
图2-25 引脚查找对话框
第⑥步后出现所有引脚 第⑦步后插入所有引脚 ⑧点击OK ⑦点此,将所有引脚插入
图2-26 引脚查找对话框
⑨点击OK
图2-27 引脚插入对话框
⑩引脚插入
图2-28 引脚插入
(3) 设置输入引脚。步骤如图2-29,2-30,2-31所示。
①选中引脚 ②点击时钟
图2-29 设置输入引脚
③设置时钟
图2-30 时钟对话框
④设置好的时钟
图2-31 设置好时钟
(4)设置结束时间。由于分频信号的周期是100us,为了能看全整个波形信号,在此设置结束时间为220us。步骤如图2-32所示。
①单击Edit ②单击End Time…
图2-32 设置结束时间
③更改End Time ④单击OK
图2-33 结束时间对话框
(5)保存波形文件。单击保存按钮,在另存为对话框中,输入下工程名一致的文件名,如图
2-34所示。
和工程名一致
图2-34 保存波形文件
(6)仿真程序。点击仿真按钮
,开始仿真,仿真成功显示成功对话框,如图2-35所示。
图2-35 仿真成功对话框
(7)观察仿真结果。本程序产生的波形为10KHz(100us),结果如图2-36所示。
①单击缩放按钮 ③双击可产生游标,用于测量 ②左键放大,右键缩小
图2-36 仿真结果
第三讲:原理图方式编程及IP核调用
本讲讲述用原理图的方式实现第二讲的内容。需要一个计数器、一个比较器、一个常数,其步骤如下。
(1)接上讲,双击工程文件,打开工程,如图3-1所示。
图3-1 dividers工程
(2)新建 *.bdf文件。原理图方式编程都是在*.bdf文件上操作。新建*.bdf过程如图3-2,3-3,3-4……3-17所示。
①点击 File ②点击 New…
图3-2 新建菜单
③选择Block Diagram/Schematic File ①点击OK
图3-3 新建对话框
新建好的*.bdf文件
图3-3 新建好的*.bdf文件
(3)增加一计数器IP核。此计数器32位,具有复位功能。其步骤如图3-4,3-5所示。
①双击空白处
图3-4 *.bdf文件
第①步后出现 ②选择arithmetic
图3-5 符号对话框
③拉动滚动条 第④步后出现 ④选择lpm_counter ⑤双击lpm_counter
图3-6 符号对话框
第⑤步后出现 ⑥选择Verilog HDL
图3-7 lpm_counter管理器
⑦修改名称 ⑧点击Next
图3-8 lpm_counter管理器
⑨修改位数⑩单击Next
图3-9 lpm_counter管理器
⑾单击Next
图3-10 lpm_counter管理器
⑿选择Clear复位 ⒀单击Next
图3-11 lpm_counter管理器
⒁单击Next
图3-12 lpm_counter管理器
⒂单击Finish
图3-13 lpm_counter管理器
⒃单击空白处 第⒂步后跟随鼠标出现
图3-14 *.bdf文件
⒄单击保存 第⒃步后跟随鼠标出现
图3-15 保存*.bdf文件
⒅更改文件名 ⒆点击保存
图3-16 另存为对话框
保存后文件
图3-17 保存后dividers_bdf文件
(3)添加比较器IP核。其步骤如图3-18,3-19……2-30所示。
①双击空白处
图3-18 双击dividers_bdf.bdf文件
②点击向导
图3-19 符号对话框
③点击Next
图3-20 向导管理器
④选择Verilog HDL ⑥添加文件名称 ⑤选择LPM_COMPARE ⑦点击Next
⑧修改位数 ⑨选择大于等于 ⑩单击Next 图3-21向导管理器-图3-22向导管理器
⑾单击Next
图3-23向导管理器
⑿单击Next
图3-24向导管理器
⒀单击Next
图3-25向导管理器
⒁单击Finish
图3-26向导管理器
出现符号
图3-27 符号对话框
⒂选择符号后回车
图3-28符号对话框
⒃单击空白处 出现符号
图3-29 dividers_bdf.bdf文件
出现符号
图3-30 dividers_bdf.bdf文件
(3)添加常数IP核。其步骤如图3-31,3-32……3-38所示。
①单击Tool ②单击MegaWizard Plug-In Manager
图3-31 从菜单进入IP核向导
③单击Next
图3-32 向导管理器
④选择Verilog HDL ⑤选择⑥添加名称 LPM_CONSTANT ⑦单击Next
图3-33 向导管理器
⑧修改位数 ⑨修改参数 ⑩单击Next
图3-34 向导管理器
⑾单击Next
图3-35向导管理器
⑿单击Next
图3-36 向导管理器
⒀选择对应符号,回车
图3-37符号对话框
⒁单击后出现
图3-38 dividers_bdf.bdf文件
(4) 建Verilog HDL文件,文件名fanzhuan。功能为使能上升沿时,信号反转,程序如图
3-39所示,编程过程参考第二讲2.2节步骤(4)(5)(6)相关内容。
图3-39 反转模块程序内容
(5)布局与连线。将四个模块lpm_counter_dividers、lpm_compare_dividers、lpm_constant_dividers、fanzhuan布局好,并连线,添加输入输出引脚,最终如图3-40所示。
图3-40 divides_bdf.bdf文件
(6)给divides_bdf.bdf产生符号文件。步骤如图3-41所示。
①单击File ②单击 ③单击
图3-41 给当前文件创建符号文件菜单
(7)顶层文件中加入divides_bdf模块符号,并连线。双击顶层文件dividers.bdf空白处,跳出符号对话框,如图3-42所示,选择divides_bdf模块符号,回车,最终连好线的顶层文件dividers.bdf如图3-43所示。
①选择divides_bdf模块 ②回车
图3-42 符号对话框
图3-43 顶层文件dividers.bdf最终结果
(8)编译程序。点击按钮,编译程序,修改错误,直到错误修改完成。
(9)添加新加入引脚到波形文件。其步骤如图3-44,3-45……3-48所示。
①双击打开波形文件 ②右键引脚区 ③单击Insert ④单击Insert Node or Bus…
图3-44 波形文件增加引脚
⑤单击Node Finder…
图3-45 插入引脚对话框
⑥单击List ⑨点击OK ⑦选择引脚 ⑧点击加入
图3-46引脚查找对话框
⑩点击OK
图3-47 插入引脚对话框
新增引脚
图3-48 波形文件中插入引脚
(10)仿真程序。点击编译程序,编译结果如图3-49所示。
波形仿真结果,两种方法产生的波形效果一样
图3-49 波形仿真结果
第四讲:程序下载
本讲讲述程序下载步骤,内容包括引脚分配、下载配置、下载。硬件为本实验室的FPGA
信号转接板,FPGA是U50芯片,型号为EP1C6Q240C8。
4.1引脚配置
(1)分配引脚。引脚对应关系如表4-1所示,分配引脚步骤如图4-1,4-2所示。 引脚名称 clk dividers_out divider_out_bdf FPGA管脚 29 127 156 ①点击Assignment ②点击Pins 外部接口 FPGA_CLK2 JP29-5 JP29-6
图4-1 引脚分配菜单
③双击输入引脚
图4-2 引脚分配界面
⑤单击保存 ④分配完所有引脚
图4-3 引脚分配结果
⑥保存后引脚分配结果出现在引脚旁边
图4-4 保存引脚分配后现象
(2) 设置未用引脚。未用引脚设置为三态输入,如果设置为输出很容易烧坏芯片。其步骤
如图4-5,4-6,4-7,4-8所示。
①点击Assignment ②点击Device…
图4-5 芯片设置菜单
③点击Device and Pin Option
图4-6 芯片设置对话框
④选择Unused Pins ⑤下拉列表中选择As input tri-stated ⑥单击确定
图4-7 设置未使用引脚
⑦单击OK
图4-8 芯片设置对话框
(3) 编译工程,使改变生效。单击编译工程。
(4) 连接外部硬件。JTAG下载线一端连计算机D25,另一端连JP32;示波器地接JP29的1
脚,通道1接JP32的5脚,通道6接JP32的6脚。
(5) 检查电路,给FPGA信号转接板上电。
(6)打开下载对话框,设置下载配置,其步骤如图4-9,4-10,4-11,4-12,4-13,4-14所示。
①单击下载按钮 ②单击Hardware Setup…
图4-9 程序下载界面
③下拉列表选择ByteBlasterII ④单击 Close
图4-10 硬件设置对话框
⑤下拉列表选择JTAG ⑥选中选项 ⑦单击Change File…
图4-11 程序下载界面
⑧选择文件dividers.sof ⑨单击打开
图4-12 选择下载文件
⑾单击Start按钮开始下载 ⑩重复步骤(2)确定未用引脚为三态输入
图4-13 程序下载界面
下载成功进程显示100%
图4-14 下载成功界面
因篇幅问题不能全部显示,请点此查看更多更全内容