EDA 技术实用教程 第 5 章 QuartusII 应用向导
5.1 基本设计流程 5.1.1 建立工作库文件夹和编辑设计文件 图5-1 选择编辑文件的语言类型,键入源程序并存盘 KX康芯科技
5.1 基本设计流程 5.1.2 创建工程 图5-2 利用“New Preject Wizard”创建工程cnt10 KX康芯科技
5.1 基本设计流程 5.1.2 创建工程 图5-3 将所有相关的文件都加入进此工程 KX康芯科技
5.1 基本设计流程 5.1.2 创建工程 图5-4 选择目标器件EP2C5T144C8 KX康芯科技
5.1 基本设计流程 5.1.2 创建工程 图5-5 将Max+plusII工程转换为QuartusII工程 KX康芯科技
5.1 基本设计流程 5.1.3 编译前设置 图5-6 选择目标器件EP2C5T144C8 KX康芯科技
5.1 基本设计流程 5.1.3 编译前设置 图5-7选择配置器件的工作方式 KX康芯科技
5.1 基本设计流程 5.1.3 编译前设置 图5-8 选择配置器件和编程方式 KX康芯科技
5.1.4 全程编译 KX康芯科技 图5-9 全程编译后出现报错信息
5.1 基本设计流程 5.1.5 时序仿真 图5-10 选择编辑矢量波形文件 KX康芯科技
5.1 基本设计流程 5.1.5 时序仿真 图5-11 波形编辑器 KX康芯科技
5.1 基本设计流程 5.1.5 时序仿真 图5-12 设置仿真时间长度 KX康芯科技
5.1 基本设计流程 5.1.5 时序仿真 图5-13 vwf激励波形文件存盘 KX康芯科技
5.1.5 时序仿真 图5-14 向波形编辑器拖入信号节点 KX康芯科技
5.1 基本设计流程 5.1.5 时序仿真 图5-15 设置时钟CLK的周期 KX康芯科技
5.1 基本设计流程 5.1.5 时序仿真 图5-16 选择总线数据格式 KX康芯科技
5.1 基本设计流程 5.1.5 时序仿真 图5-17设置好的激励波形图 KX康芯科技
5.1 基本设计流程 5.1.5 时序仿真 图5-18 选择仿真控制 KX康芯科技
5.1 基本设计流程 5.1.5 时序仿真 图5-19 仿真波形输出 KX康芯科技
5.1 基本设计流程 5.1.5 时序仿真 图5-20 选择全时域显示 KX康芯科技
5.1.6 应用RTL电路图观察器 图5-21 cnt10工程的RTL电路图 KX康芯科技
5.2.1 引脚锁定 图5-22 GW48实验系统模式5实验电路图 KX康芯科技
5.2 引脚设置和下载 5.2.1 引脚锁定 图5-23 Assignment Editor编辑器 KX康芯科技
5.2 引脚设置和下载 5.2.1 引脚锁定 图5-24 两种引脚锁定对话框 KX康芯科技
5.2 引脚设置和下载 5.2.2 配置文件下载 图5-25 选择编程下载文 KX康芯科技
5.2 引脚设置和下载 5.2.2 配置文件下载 图5-26加入编程下载方式 KX康芯科技
5.2 引脚设置和下载 5.2.2 配置文件下载 图5-27 双击选中的编程方式名 KX康芯科技
5.2 引脚设置和下载 5.2.2 配置文件下载 图5-28 ByteBlasterII编程下载窗 KX康芯科技
5.2 引脚设置和下载 5.2.3 AS模式编程配置器件 图5-29 ByteBlaster II接口AS模式编程窗口 KX康芯科技
5.2 引脚设置和下载 5.2.4 JTAG间接模式编程配置器件 图5-30 选择目标器件EP2C5T144 KX康芯科技
5.2.4 JTAG间接模式编程配置器件 图5-31 选定SOF文件后,选择文件压缩 KX康芯科技
5.2 引脚设置和下载 5.2.4 JTAG间接模式编程配置器件 图5-32 用JTAG模式对配置器件EPCS1进行间接编程 KX康芯科技
5.2.5 USB Blaster编程配置器件使用方法 KX康芯科技
5.2 引脚设置和下载 5.2.5 USB Blaster编程配置器件使用方法 图5-34 设置JTAG硬件功能 KX康芯科技
图5-35 在In-System Memory Content Editor中使用USB Blaster 5.2 引脚设置和下载 5.2.5 USB Blaster编程配置器件使用方法 图5-35 在In-System Memory Content Editor中使用USB Blaster KX康芯科技
5.3 嵌入式逻辑分析仪使用方法 1.打开SignalTap II编辑窗 图5-36 SignalTap II编辑窗 KX康芯科技
5.3 嵌入式逻辑分析仪使用方法 KX康芯科技 2.调入待测信号 3.SignalTap II参数设置
图5-38 设定SignalTap II与工程一同综合适配 5.3 嵌入式逻辑分析仪使用方法 4.文件存盘 图5-38 设定SignalTap II与工程一同综合适配 KX康芯科技
图5-39 下载cnt10.sof并准备启动SignalTap II 5.3 嵌入式逻辑分析仪使用方法 5.编译下载 6.启动SignalTap II进行采样与分析 图5-39 下载cnt10.sof并准备启动SignalTap II KX康芯科技
5.3 嵌入式逻辑分析仪使用方法 KX康芯科技 6.启动SignalTap II进行采样与分析
图5-41 SignalTap II数据窗设置后的信号波形 5.3 嵌入式逻辑分析仪使用方法 7.SignalTap II的其他设置和控制方法 图5-41 SignalTap II数据窗设置后的信号波形 KX康芯科技
5.4 原理图输入设计方法 KX康芯科技 5.4.1 设计流程 1. 为本项工程设计建立文件夹 假设本项设计的文件夹取名为adder, 5.4.1 设计流程 1. 为本项工程设计建立文件夹 假设本项设计的文件夹取名为adder, 路径为:d:\adder。 KX康芯科技
5.4 原理图输入设计方法 2. 输入设计项目和存盘 图5-42 元件输入对话框 KX康芯科技
图5-43 将所需元件全部调入原理图编辑窗并连接好 5.4 原理图输入设计方法 3. 将设计项目设置成可调用的元件 图5-43 将所需元件全部调入原理图编辑窗并连接好 KX康芯科技
图5-44 连接好的全加器原理图f_adder.bdf 5.4 原理图输入设计方法 4. 设计全加器顶层文件 图5-44 连接好的全加器原理图f_adder.bdf KX康芯科技
5.4 原理图输入设计方法 5. 将设计项目设置成工程和时序仿真 图5-45 f_adder.bdf工程设置窗 KX康芯科技
5.4 原理图输入设计方法 5. 将设计项目设置成工程和时序仿真 图5-46 加入本工程所有文件 KX康芯科技
5.4 原理图输入设计方法 5. 将设计项目设置成工程和时序仿真 图5-47 全加器工程f_adder的仿真波形 KX康芯科技
5.4 原理图输入设计方法 5.4.2 应用宏模块的原理图设计 1. 计数器设计 图5-48 含有时钟使能的两位十进制计数器 KX康芯科技
5.4 原理图输入设计方法 5.4.2 应用宏模块的原理图设计 1. 计数器设计 图5-49 两位十进制计数器工作波形 KX康芯科技
2. 频率计主结构电路设计 图5-50 两位十进制频率计顶层设计原理图文件 KX康芯科技
5.4 原理图输入设计方法 KX康芯科技 5.4.2 应用宏模块的原理图设计 2. 频率计主结构电路设计 5.4.2 应用宏模块的原理图设计 2. 频率计主结构电路设计 图5-51 两位十进制频率计测频仿真波形 KX康芯科技
5.4 原理图输入设计方法 3. 时序控制电路设计 图5-52 测频时序控制电路 KX康芯科技
5.4 原理图输入设计方法 5.4.2 应用宏模块的原理图设计 3. 时序控制电路设计 图5-53 测频时序控制电路工作波形 KX康芯科技
4. 顶层电路设计 图5-54 频率计顶层电路原理图 KX康芯科技
5.4 原理图输入设计方法 5.4.2 应用宏模块的原理图设计 4. 顶层电路设计 图5-55 频率计工作时序波形 KX康芯科技
习 题 KX康芯科技 5-1. 归纳利用QuartusII进行VHDL文本输入设计的流程:从文件输入一直到SignalTap II测试。 习 题 5-1. 归纳利用QuartusII进行VHDL文本输入设计的流程:从文件输入一直到SignalTap II测试。 5-2. 由图5-40、5-41,详细说明工程设计cnt10的硬件工作情况。 5-3. 如何为设计中的SignalTap II加入独立采用时钟?试给出完整的程序和对它的实测结果。 KX康芯科技
习 题 KX康芯科技 5-4. 参考Quartus II的Help,详细说明Assignments菜单中Settings对话框的功能。 习 题 5-4. 参考Quartus II的Help,详细说明Assignments菜单中Settings对话框的功能。 (1)说明其中的Timing Requirements & Qptions的功能、使用方法和检测途径。 (2)说明其中的Compilation Process的功能和使用方法。 (3)说明Analysis & Synthesis Setting的功能和使用方法,以及其中的Synthesis Netlist Optimization的功能和使用方法。 (4)说明Fitter Settings中的Design Assistant和Simulator功能,举例说明它们的使用方法。 KX康芯科技
习 题 KX康芯科技 5-5. 概述Assignments菜单中Assignment Editor的功能,举例说明。 习 题 5-5. 概述Assignments菜单中Assignment Editor的功能,举例说明。 5-6. 用74148和与非门实现8421BCD优先编码器,用3片74139组成一个5-24线译码器。 5-7. 用74283加法器和逻辑门设计实现一位8421BCD码加法器电路,输入输出均是BCD码,CI为低位的进位信号,CO为高位的进位信号,输入为两个1位十进制数A,输出用S表示。 5-8. 设计一个7人表决电路,参加表决者7人,同意为1,不同意为0,同意者过半则表决通过,绿指示灯亮;表决不通过则红指示灯亮。 5-9. 设计一个周期性产生二进制序列01001011001的序列发生器,用移位寄存器或用同步时序电路实现,并用时序仿真器验证其功能。 KX康芯科技
习 题 5-10. 用D触发器构成按循环码(000->001->011->111->101->100->000)规律工作的六进制同步计数器。 5-11. 应用4位全加器和74374构成4位二进制加法计数器。 5-12. 用74194、74273、D触发器等器件组成8位串入并出的转换电路,要求在转换过程中数据不变,只有当8位一组数据全部转换结束后,输出才变化一次。 如果使用74299、74373、D触发器和非门来完成上述功能,应该有怎样的电路? 5-13. 用一片74163和两片74138构成一个具有12路脉冲输出的数据分配器。要求在原理图上标明第1路到第12路输出的位置。若改用一片74195代替以上的74163,试完成同样的设计。 KX康芯科技
习 题 5-14. 用同步时序电路对串行二进制输入进行奇偶校验,每检测5位输入,输出一个结果。当5位输入中1的数目为奇数时,在最后一位的时刻输出1。 5-15. 用7490设计模为872的计数器,且输出的个位、十位、百位都应符合8421码权重。 5-16. 用74161设计一个97分频电路,用置0和置数两种方法实现。 5-17. 某通信接收机的同步信号为巴克码1110010。设计一个检测器,其输入为串行码x,输出为检测结果y,当检测到巴克码时,输出1。 KX康芯科技
实验与设计 5-1. 组合电路的设计 (1) 实验目的:熟悉QuartusⅡ的VHDL文本设计流程全过程,学习简单组合电路的设计、多层次电路设计、仿真和硬件测试。 (2) 实验内容1:首先利用QuartusⅡ完成2选1多路选择器(例4-3)的文本编辑输入(mux21a.vhd)和仿真测试等步骤,给出图4-3所示的仿真波形。最后在实验系统上进行硬件测试,验证本项设计的功能。 (3) 实验内容2:将此多路选择器看成是一个元件mux21a,利用元件例化语句描述图4-18,并将此文件放在同一目录中。以下是部分参考程序: KX康芯科技
实验与设计 KX康芯科技 ... COMPONENT MUX21A PORT ( a,b,s : IN STD_LOGIC; y : OUT STD_LOGIC); END COMPONENT ; u1 : MUX21A PORT MAP(a=>a2,b=>a3,s=>s0,y=>tmp); u2 : MUX21A PORT MAP(a=>a1,b=>tmp,s=>s1,y=>outy); END ARCHITECTURE BHV ; 按照本章给出的步骤对上例分别进行编译、综合、仿真。并对其仿真波形作出分析说明。 KX康芯科技
实验与设计 (4) 实验内容3:引脚锁定以及硬件下载测试。建议选实验电路模式5(附录图8),用键1(PIO0)控制s0;用键2(PIO1)控制s1;a3、a2和a1分别接clock5、clock0和clock2;输出信号outy仍接扬声器spker。通过短路帽选择clock0接256Hz信号,clock5接1024Hz,clock2接8Hz信号。最后进行编译、下载和硬件测试实验(通过选择键1、键2,控制s0、s1,可使扬声器输出不同音调)。 (5) 实验报告:根据以上的实验内容写出实验报告,包括程序设计、软件编译、仿真分析、硬件测试和详细实验过程;给出程序分析报告、仿真波形图及其分析报告。 KX康芯科技
实验与设计 KX康芯科技 (6) 附加内容:根据本实验以上提出的各项实验内容和实验要求,设计1位全加器。 首先用QuartusⅡ完成4.3节给出的全加器的设计,包括仿真和硬件测试。实验要求分别仿真测试底层硬件或门和半加器,最后完成顶层文件全加器的设计和测试,给出设计原程序,程序分析报告、仿真波形图及其分析报告。 (7) 实验习题:以1位二进制全加器为基本元件,用例化语句写出8位并行二进制全加器的顶层文件,并讨论此加法器的电路特性。 KX康芯科技
实验与设计 5-2. 时序电路的设计 (1) 实验目的:熟悉QuartusⅡ的VHDL文本设计过程,学习简单时序电路的设计、仿真和测试。 (2) 实验内容1:根据实验5-1的步骤和要求,设计触发器(使用例4-6),给出程序设计、软件编译、仿真分析、硬件测试及详细实验过程。 (3) 实验内容2:设计锁存器(使用例4-14),同样给出程序设计、软件编译、仿真分析、硬件测试及详细实验过程。 (4) 实验内容3:只用一个1位二进制全加器为基本元件和一些辅助的时序电路,设计一个8位串行二进制全加器,要求: 1、能在8-9个时钟脉冲后完成8位二进制数(加数被加数的输入方式为并行)的加法运算,电路须考虑进位输入Cin和进位输出Cout; KX康芯科技
实验与设计 KX康芯科技 2、给出此电路的时序波形,讨论其功能,并就工作速度与并行加法器进行比较; 3、在FPGA中进行实测。对于GW48 EDA实验系统,建议选择电路模式1(附录图3),键2,键1输入8位加数;键4,键3输入8位被加数;键8作为手动单步时钟输入;键7控制进位输入Cin;键9控制清0;数码6和数码5显示相加和;发光管D1显示溢出进位Cout。 4、键8作为相加起始控制,同时兼任清0;工作时钟由clock0自动给出,每当键8发出一次开始相加命令,电路即自动相加,结束后停止工作,并显示相加结果。就外部端口而言,与纯组合电路8位并行加法器相比,此串行加法器仅多出一个加法起始/清0控制输入和工作时钟输入端。 提示:此加法器有并/串和串/并移位寄存器各一。 (5) 实验报告:分析比较实验内容1和2的仿真和实测结果,说明这两种电路的异同点。 KX康芯科技
实验与设计 KX康芯科技 5-3. 设计含异步清0和同步时钟使能的加法计数器 (1) 实验目的:学习计数器的设计、仿真和硬件测试,进一步熟悉VHDL设计技术。 (2) 实验原理:实验程序为例4-22,实验原理参考4.4节,设计流程参考本章。 (3) 实验内容1:在QuartusⅡ上对例4-22进行编辑、编译、综合、适配、仿真。说明例中各语句的作用,详细描述示例的功能特点,给出其所有信号的时序仿真波形。 (4) 实验内容2:引脚锁定以及硬件下载测试(参考5.2节)。引脚锁定后进行编译、下载和硬件测试实验。将实验过程和实验结果写进实验报告。 KX康芯科技
实验与设计 KX康芯科技 (5) 实验内容3:使用SignalTap II对此计数器进行实时测试,流程与要求参考5.3节。 (6) 实验内容4:从设计中去除SignalTap II,要求全程编译后生成用于配置器件EPCS1编程的压缩POF文件,并使用ByteBlasterII,通过AS模式对实验板上的EPCS1进行编程,最后进行验证。 (7) 实验内容4:为此项设计加入一个可用于SignalTapII采样的独立的时钟输入端(采用时钟选择clock0=12MHz,计数器时钟CLK分别选择256Hz、16384Hz、6MHz),并进行实时测试。 (8) 思考题:在例4-22中是否可以不定义信号 CQI,而直接用输出端口信号完成加法运算,即: CQ <= CQ + 1?为什么? (9) 实验报告:将实验原理、设计过程、编译仿真波形和分析结果、硬件测试实验结果写进实验报告。 KX康芯科技
实验与设计 KX康芯科技 5-4. 用原理图输入法设计8位全加器 (1) 实验目的:熟悉利用QuartusⅡ的原理图输入方法设计简单组合电路,掌握层次化设计的方法,并通过一个8位全加器的设计把握利用EDA软件进行原理图输入方式的电子线路设计的详细流程。 (2) 实验原理:一个8位全加器可以由8个1位全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出cout与相临的高位加法器的最低进位输入信号cin相接。而一个1位全加器可以按照6.1节介绍的方法来完成。 KX康芯科技
实验与设计 (3) 实验内容1:完成半加器和全加器的设计,包括原理图输入、编译、综合、适配、仿真、实验板上的硬件测试,并将此全加器电路设置成一个硬件符号入库。键1、键2、键3(PIO0/1/2)分别接ain、bin、cin;发光管D2、D1(PIO9/8)分别接sum和cout。 (4) 实验内容2,建立一个更高层次的原理图设计,利用以上获得的1位全加器构成8位全加器,并完成编译、综合、适配、仿真和硬件测试。建议选择电路模式1(附录图3);键2、键1输入8位加数;键4、键3输入8位被加数;数码6/5显示加和;D8显示进位cout。 (5) 实验报告:详细叙述8位加法器的设计流程;给出各层次的原理图及其对应的仿真波形图;给出加法器的时序分析情况;最后给出硬件测试流程和结果。 KX康芯科技
实验与设计 KX康芯科技 5-5. 用原理图输入法设计较复杂数字系统 (1) 实验目的:熟悉原理图输入法中74系列等宏功能元件的使用方法,掌握更复杂的原理图层次化设计技术和数字系统设计方法。完成8位十进制频率机的设计。 (2) 原理说明:利用第4节介绍的2位计数器模块,连接它们的计数进位,用4个计数模块就能完成一个8位有时钟使能的计数器;对于测频控制器的控制信号,在仿真过程中应该注意它们可能的毛刺现象。最后按照设计流程和方法即可完成全部设计。 (3) 实验内容:首先完成2位频率计的设计,然后进行硬件测试,建议选择电路模式2;数码2和1显示输出频率值,待测频率F_IN接clock0;测频控制时钟CLK接clock2,若选择clock2 = 8Hz,门控信号CNT_EN的脉宽恰好为1秒。然后建立一个新的原理图设计层次,在此基础上将其扩展为8位频率计,仿真测试该频率计待测信号的最高频率,并与硬件实测的结果进行比较。 (4) 实验报告:给出各层次的原理图、工作原理、仿真波形图和分析,详述硬件实验过程和实验结果。 KX康芯科技