2022年EDA技术实验教案 .pdf
教案2011 2012学年第 1 学期系(部)室电子与通信工程系课程名称EDA 技术及应用(实验)专业、年级、班级09 电气、 08 通信专业主讲教师张文希长 沙 学 院 教 务 处精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 1 页,共 30 页 - - - - - - - - - - 教案编写说明精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 2 页,共 30 页 - - - - - - - - - - 长沙学院教案编 号:1 (累积 2 课时) 课时安排:2 学时教学课型:实验课题目:实验一简单逻辑电路实验教学目的要求:运用 Quartus II 集成环境下的 VHDL 文本设计方法设计半加器,进行波形仿真、引脚分配并下载到实验设备上进行逻辑功能验证,并分析其波形。教学重点、难点:重点: Quartus II 软件平台和使用VHDL 语言设计电路的方法难点:波形仿真、分析教学方式、手段、媒介:讲授、多媒体、示范教学过程:一、实验目的1.学习 Create-SOPC实验平台的使用方法;2.熟悉 Quartus II 软件平台和使用VHDL 语言设计电路的方法;3.学习简单逻辑电路的设计、仿真和硬件测试。二、实验内容运用 Quartus II 集成环境下的 VHDL 文本设计方法设计半加器,进行波形仿真、引脚分配并下载到实验设备上进行逻辑功能验证。三、实验步骤及参考程序1.EDA 实验箱介绍和使用2.创建个人实验文件夹 (最好使用英文字母命名不要用中文或数字名称)如:D:example 3.运行 Quartus 软件。4.创建一个 VHDL 设计文件: File New,在 Device Design Files 中选择 VHDL File。在程序编辑窗输入VHDL 程序并保存;在弹出对话框中输入文件名(必须和程序中实体名相同)并使下方小框内出现“”,点击保存会弹出“是否创建新工程”提示信息如图 1-1 所示。图 1-1 图 1-2 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 3 页,共 30 页 - - - - - - - - - - 5.创建一个新工程:点击图1-1 中“是”可进入创建工程向导(也可以File New project Wizard 进入向导),此时看到的默认工程名、顶层实体名都为h_adder (其中工程名可换名但顶层实体名必与编写的程序实体名一致),如图 1-2。点击 NEXT,再在弹出窗中点击 NEXT,选择目标器件: Cyclone 系列 EP1C20F324C8 芯片,如图 1-3。图 1-3 6.编译:选择Processing Start Compilation 命令,对此工程进行逻辑分析、综合适配、时序分析等。如果设计正确则完全通过各种编译,如果有错误则根据报错信息返回h_adder.vhd 进行修改,直至完全通过编译为止。7.创建一个仿真波形文件:File New,在 Other Files 中选择 Vector Waveform File,如图 1-4,进入波形编辑窗口。图 1-4 图 1-5 8.以扩展名为 .VWF,文件名与编译的文件名相同,保存创建的仿真波形文件,如h_adder.vwf。9.输入引脚: Name 栏中点击鼠标右键,选择“Insert Node or Bus”,在其对话框中点击 “Node Finder ” 按钮,弹出“Node Finder ” 对话框, Named:*;Filter :Pin:all,点击“List ”,列出所有引脚,在其中选择需要仿真的引脚,如图1-5 所示。它们将在波形编辑窗口中出现。图 1-6 图 1-7 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 4 页,共 30 页 - - - - - - - - - - 10. 对所有 input 引脚赋初值(所有可能出现的信号组合状态都要求存在), 对所有 output引脚赋随机值后,保存仿真波形文件,如图1-6 所示。11. 开始仿真:选择Processing Start Simulation 若仿真没有出错,则在完成仿真后,可以看到仿真结果波形,观察输入、输出波形逻辑关系是否是与设计要求相符,波形仿真无误后进行下步操作。12. 选择 Assignments Assignments Editor,在 Assignments Editor 窗口中选择Pin 标签页,再按下表分配引脚,如图1-7 所示:引脚名称引脚编号连接网络引脚名称引脚编号连接网络a PIN_N14 KEY2 co PIN_N15 LED2 b PIN_V11 KEY3 so PIN_U11 LED3 13. 重编译:选择Processing Start Compilation 命令,重新编译,完成后形成可配置到 FPGA 的 h_adder.sof 文件和配置到外部存储器的h_adder.pof文件。14. 编程下载:使用 Create-SOPC2000实验系统及 SOPC 开发板,将 ByteBlaster II 下载电缆插入 SOPC 开发板的 JTAG 下载接口中。仔细检查确保接线无误后打开电源。在Quartus II 软件中,选择 Tools/Programmer 菜单,出现如图1-8 所示的编程配置界面。在 ”Mode ” 中选 择 JTAG, 点击 ”Add File ” 按 钮添 加需 要 配 置 的 SOF 文 件, 选中Program/Configure,点击 ”Start ”按钮就可以对芯片进行配置。15. 测试:配置完成后按动KEY2 和 KEY3,改变 a、b 的输入电平观察输出结果验证设计是否正确。参考程序如下:LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY h_adder IS PORT(a,b:IN STD_LOGIC; co,so:OUT STD_LOGIC); END; ARCHITECTURE one OF h_adder IS BEGIN so = NOT(a XOR (NOT b ); co = a AND b; END; 板书设计:讨论、思考题、作业1.一位全加器 VHDL 文本输入设计;2.改变输入、输出引脚编号,并测试逻辑功能。参考书目:后记:精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 5 页,共 30 页 - - - - - - - - - - 长沙学院教案编 号: 2 (累积 4 课时) 课时安排:2 学时教学课型:实验课题目:实验二2 选 1 多路选择器教学目的要求:运用 Quartus II 集成环境下的 VHDL 文本设计方法设计2 选 1 多路选择器, 进行波形仿真、引脚分配并下载到实验设备上进行逻辑功能测试,合理设计输入波形。教学重点、难点:重点:掌握 Quartus II 软件平台、 VHDL 语言的基本语法和语句。难点:波形仿真激励设置、分析教学方式、手段、媒介:讲授、多媒体、示范教学过程:一、实验目的学习 Create-SOPC实验平台的使用方法;熟悉 Quartus II 软件平台和使用VHDL 语言设计电路的方法;掌握 VHDL 语言的基本语法和语句;把握 VHDL 程序设计组合逻辑电路的基本结构和设计特点。二、实验内容运用 Quartus II 集成环境下的 VHDL 文本设计方法设计2 选 1 多路选择器,进行波形仿真、引脚分配并下载到实验设备上进行逻辑功能测试。三、实验步骤及参考程序实验步骤和方法参考实验一,引脚分配可参考下表。引脚名称引脚编号连接网络引脚名称引脚编号连接网络a PIN_M3 FPGA_M1 q PIN_R10 LED1 b PIN_M4 FPGA_M2 sel PIN_T10 KEY1 参考程序如下:library ieee; use ieee.std_logic_1164.all; entity mux21a is port(a,b,sel:in std_logic; q:out std_logic); end; architecture behave of mux21a is begin process (a,b,sel) begin 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 6 页,共 30 页 - - - - - - - - - - if sel=0 then q=a; else q=b; end if; end process; end; 板书设计:讨论、思考题、作业分析程序中的每一条语句的功能及特点;采用多种描述方式表达出2 选 1多路选择器功能。参考书目:后记:精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 7 页,共 30 页 - - - - - - - - - - 长沙学院教案编 号: 3 (累积 6 课时) 课时安排:2 学时教学课型:实验课题目:实验三D 触发器设计教学目的要求:运用 Quartus II 集成环境下的VHDL 文本设计方法设计简单时序电路D 触发器,依据 D 触发器的工作特性,进行波形仿真和分析、引脚分配并下载到实验设备上进行功能测试。教学重点、难点:重点:时序逻辑电路的设计方法和VHDL 语句并行、串行特性。难点:进程、变量、信号的使用用教学方式、手段、媒介:讲授、多媒体、示范教学过程:一、实验目的熟悉 Quartus II 的 VHDL 文本设计简单时序电路的方法;掌握时序电路的描述方法、波形仿真和测试,特别是时钟信号的特性。二、实验内容运用 Quartus II 集成环境下的 VHDL 文本设计方法设计简单时序电路D 触发器,依据 D 触发器的工作特性, 进行波形仿真和分析、 引脚分配并下载到实验设备上进行功能测试。三、实验步骤及参考程序实验步骤和方法参考实验一,引脚分配可参考下表。引 脚 名称引脚编号连接网络clk PIN_T10/J16 KEY1/连线d PIN_M3 FPGA_M1 q PIN_R10 LED1 library ieee; use ieee.std_logic_1164.all; entity DFF1 is port(clk:in std_logic; d:in std_logic; q:out std_logic); end; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 8 页,共 30 页 - - - - - - - - - - architecture bhv of DFF1 is signal q1:std_logic; begin process(clk) begin if clkevent and clk=1then q1=d; end if; q New,在Device Design Files 中选择Block Diagram/Schematic File,如图 4-1 所示,点击 OK 打开原理图编辑窗口。图 4-1 图 4-2 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 10 页,共 30 页 - - - - - - - - - - 在图形编辑窗中双击鼠标左键,将弹出元件输入对话框,在对话框右栏打开元件库找到需要的元件,如图4-2 所示,点击 OK 即可将元件调入原理图编辑窗。将所有需要的元件都调入编辑窗。将各个元件采用单击鼠标并拖动的方法连接号电路图,然后分别在input 和 output 的pin_name上双击使变为黑色,再分别输入各引脚名,如图4-3 所示。图 4-3 选择 FileSave As 命令,选择为此工程已建好目录,将设计好的原理图文件取名为h_adder.bdf 同时使下方小框内出现“” ,点击保存会弹出“是否创建新工程”提示信息如图 4-4 所示。图 4-4 图 4-5 创建一个新工程: 点击图 4-4 中 “是”可进入创建工程向导 (也可以 File New project Wizard 进入向导),此时看到的默认工程名、顶层实体名都为h_adder ,此时将工程名换为 f_adder顶层实体名不变,如图4-5 所示。点击 NEXT,再在弹出窗中点击NEXT,选择目标器件: Cyclone 系列 EP1C20F324C8 芯片。按照实验一的方法完成半加器的编译、仿真。将半加器设置成可调用的元件,在打开半加器原理图文件下, 选择 FileCreate/UpdateCreate Symbol Files for Current File命令,如图 4-6 所示。此时半加器文件形成了一个符号元件可供高层次设计调用。图 4-6 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 11 页,共 30 页 - - - - - - - - - - 建立全加器原理图。与半加器原理图建立方法相同,选择FileNew 进入编辑窗,双击编辑窗,弹出元件输入对话框, 此时在对话框右栏顶上可以看到多了一个Project元件库,其中有一个元件,它就是前面生成的可供调用的半加器元件,如图4-7 所示。找到需要的元件, 连接好全加器原理图, 选择 ProjectSet as Top-Level Entity命令,将其设置为顶层文件,如图4-8 所示。图 4-7 图 4-8 图 4-9 编译、仿真、编程下载和实验一基本相同,需要注意的是:波形仿真时的波形文件名必须与图 4-9 所示的框中名称一样的 .vwf 文件。引脚分配可参考下表。引脚名称引脚编号连接网络引脚名称引脚编号连接网络ain PIN_T10 KEY1 cout PIN_N15 LED2 bin PIN_N14 KEY2 sum PIN_R10 LED1 cin PIN_V11 KEY3 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 12 页,共 30 页 - - - - - - - - - - 板书设计:讨论、思考题、作业1VHDL 和原理图结合设计2多位加法计数器的设计参考书目:后记:精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 13 页,共 30 页 - - - - - - - - - - 长沙学院教案编 号: 5 (累积 10 课时) 课时安排:2 学时教学课型:实验课题目:实验五4 位加法计数器教学目的要求:运用 Quartus II 集成环境下的 VHDL 文本设计方法设计4 位加法计数器, 进行波形仿真和分析、引脚分配并下载到实验设备上进行功能测试,充分理解硬件如何实现计数功能。教学重点、难点:重点:时钟信号、进程和BUFFER 端口的运用。难点:敏感信号和BUFFER 端口的运用教学方式、手段、媒介:讲授、多媒体、示范教学过程:一、实验目的掌握时钟信号、进程和BUFFER 端口的运用;了解计数器的设计、仿真和硬件测试,进一步熟悉VHDL 语句、语法及应用等。二、实验内容运用 Quartus II 集成环境下的 VHDL 文本设计方法设计4 位加法计数器, 进行波形仿真和分析、引脚分配并下载到实验设备上进行功能测试。三、实验步骤及参考程序实验步骤和方法参考实验一,引脚分配可参考下表。引脚名称引脚编号连接网络引脚名称引脚编号连接网络clk PIN_T10 KEY1 q2 PIN_N15 LED2 q0 PIN_R11 LED4 q3 PIN_R10 LED1 q1 PIN_U11 LED3 参考程序如下:entity CNT4 is port( clk:in bit; q:buffer integer range 15 downto 0); end; architecture bhv of CNT4 is begin process(clk) begin if clkevent and clk=1 then 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 14 页,共 30 页 - - - - - - - - - - q=q+1; end if; end process; end bhv; 板书设计:讨论、思考题、作业分析程序中各语句的功能和特点;比较各种端口类型以及如何应用;试设计一个含异步清0 和同步时钟使能的4 位加法计数器。参考书目:后记:精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 15 页,共 30 页 - - - - - - - - - - 长沙学院教案编 号: 6 (累积 12 课时) 课时安排:2 学时教学课型:实验课题目:实验六数控分频器的设计教学目的要求:运用 Quartus II 集成环境下的 VHDL 文本设计方法设计数控分频器。 进行波形仿真和分析、引脚分配并下载到实验设备上进行功能测试。教学重点、难点:重点:用 VHDL 语言设计多进制计数器。难点:灵活运用计数器将时钟信号分出多种不同频率信号。教学方式、手段、媒介:讲授、多媒体、示范教学过程:一、实验目的1. 学习数控分频器的设计、分析和测试方法2. 进一步熟悉 VHDL 语句、语法;二、实验内容运用 Quartus II 集成环境下的 VHDL 文本设计方法设计数控分频器。 进行波形仿真和分析、引脚分配并下载到实验设备上进行功能测试。三、实验步骤及参考程序实验步骤和方法参考实验一。参考程序:LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY PULSE IS PORT(CLK: IN STD_LOGIC; D: IN STD_LOGIC_VECTOR(7 DOWNTO 0); FOUT: OUT STD_LOGIC); END; ARCHITECTURE ONE OF PULSE IS SIGNAL FULL: STD_LOGIC; BEGIN P_REG:PROCESS(CLK) VARIABLE CNT8:STD_LOGIC_VECTOR(7 DOWNTO 0); 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 16 页,共 30 页 - - - - - - - - - - BEGIN IF CLKEVENT AND CLK=1 THEN IF CNT8=11111111 THEN CNT8:=D; FULL=1; ELSE CNT8:=CNT8+1; FULL=0; END IF; END IF; END PROCESS P_REG; P_DIV:PROCESS(FULL) VARIABLE CNT2:STD_LOGIC; BEGIN IF FULLEVENT AND FULL=1 THEN CNT2:=NOT CNT2; IF CNT2=1 THEN FOUT=1; ELSE FOUT=0; END IF; END IF; END PROCESS P_DIV; END; 参考波形图:板书设计:讨论、思考题、作业1、思考频率测量的方法; 2、扩展为 16 位分频器; 3、怎样利用分频模块设计一个电路,使其输出方波的正负脉宽的宽度分别由两个8 位输入数据控制?参考书目:后记:精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 17 页,共 30 页 - - - - - - - - - - 长沙学院教案编 号: 7 (累积 14 课时) 课时安排:2 学时教学课型:实验课题目:实验七7 段数码显示译码器设计教学目的要求:运用 Quartus II 集成环境下的 VHDL 文本设计方法设计7 段数码显示译码器, 要求将输入的 4 位二进制数进行译码,并在实验箱的 7 段数码管上显示对应的十六进制数值。要求进行波形仿真和分析、引脚分配并下载到实验设备上进行功能测试。教学重点、难点:重点: CASE 语句的使用,字形、字位的控制。难点:时钟信号频率与显示控制,实现多位数码管动态扫描。教学方式、手段、媒介:讲授、多媒体、示范教学过程:一、实验目的1. 熟悉进程和 CASE 语句的运用;2. 掌握译码的概念,掌握7 段数码显示器的使用方法3. 进一步熟悉 VHDL 语句、语法。二、实验内容运用 Quartus II 集成环境下的 VHDL 文本设计方法设计7 段数码显示译码器, 要求将输入的 4 位二进制数进行译码,并在实验箱的7 段数码管上显示对应的十六进制数值。要求进行波形仿真和分析、引脚分配并下载到实验设备上进行功能测试。三、实验步骤及参考程序数码管个引脚的定义和显示原理实验步骤和方法参考实验一,引脚分配可参考右图。其中输入的二进制信号a用拔码开关输入,输出的十六进制数值由数码管8 显示(网络号 :E_7SEG_A8) 参考程序如下:-7 段数码显示程序设计-程序包library ieee; use ieee.std_logic_1164.all; -实体(所保存的文件名要为decl7s.vhd) -如果该工程仅此一个程序文件,则工程名也为decl7s entity decl7s is port(a:in std_logic_vector(3 downto 0); -输入信号,表示4位二进制数led_selout:out std_logic; -位选信号,选择实验箱上的7 段数码管精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 18 页,共 30 页 - - - - - - - - - - led7s:out std_logic_vector(6 downto 0);-控制数码管 7 个段的亮和不亮end; -结构体,结构体的名字可以任取architecture one of decl7s is begin -将 led_selout 置 1,该信号可以绑定E_7SEG_A1 到 E_7SEG_A8 范围的任一个数码管led_seloutled7sled7sled7sled7sled7sled7sled7sled7sled7sled7sled7sled7sled7sled7sled7sled7snull; end case; end process; end; 板书设计:讨论、思考题、作业1、思考如何用多个数码管同时显示该数值,结合实验六进行。2、结合试验五,显示试验五中的加法计算的结果。参考书目:后记:精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 19 页,共 30 页 - - - - - - - - - - 长沙学院教案编 号: 8 (累积 16 课时) 课时安排:2 学时教学课型:实验课题目:实验八带有复位和时钟使能的十进制计数器教学目的要求:运用 Quartus II 集成环境下的 VHDL 文本设计方法设计带有复位和时钟使能的十进制计数器,要求对输入的脉冲信号进行计数,并在实验箱的7 段数码管上显示对应的十进制计数值。要求具有复位和使能功能,并能输出进位信号。进行波形仿真和分析、引脚分配并下载到实验设备上进行功能测试。教学重点、难点:重点:设计带控制功能的计数器。难点:多位数码管动态显示,多时钟设计教学方式、手段、媒介:讲授、多媒体、示范教学过程:一、实验目的1. 熟悉进程和 signal的运用;2. 进一步熟悉7 段数码显示器的使用方法;3. 进一步熟悉 VHDL 语句、语法。二、实验内容运用 Quartus II 集成环境下的 VHDL 文本设计方法设计带有复位和时钟使能的十进制计数器,要求对输入的脉冲信号进行计数,并在实验箱的7 段数码管上显示对应的十进制计数值。要求具有复位和使能功能,并能输出进位信号。进行波形仿真和分析、引脚分配并下载到实验设备上进行功能测试。三、实验步骤及参考程序实验步骤和方法参考实验一,引脚分配可参考右图。参考程序(一位显示) :-引用library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; -实体entity cnt10 is port( clk,rst,en: in std_logic; -rst:复位;led7s: out std_logic_vector(7 downto 0); cout: out std_logic);-进位信号精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 20 页,共 30 页 - - - - - - - - - - end; -结构体architecture bhh of cnt10 is signal cq: std_logic_vector(3 downto 0); begin -clk 上升沿计数process(clk,rst,en) variable cqi :std_logic_vector(3 downto 0); begin -复位if rst=1 then cqi:=(others=0); -en为高电平时候计数elsif clkevent and clk=1 then if en=1 then if cqi0); end if; end if; end if; -进位if cqi=9 then cout=1 ; else cout=0; end if; cqled7sled7sled7sled7sled7sled7sled7sled7sled7sled7sled7sled7sled7sled7sled7sled7snull; end case; end process; end; 波形图:板书设计:讨论、思考题、作业1、思考十六进制计数器的设计方法2、如何设计出频率计参考书目:后记:精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 22 页,共 30 页 - - - - - - - - - - 长沙学院教案编 号: 9 (累积 18 课时) 课时安排:2 学时教学课型:实验课题目:实验九带有并行置位的移位寄存器教学目的要求:运用 Quartus II 集成环境下的VHDL 文本设计方法设计带有并行置位的移位寄存器,要求具有置位功能。进行波形仿真和分析、引脚分配并下载到实验设备上进行功能测试。教学重点、难点:重点:移位寄存器的设计方法。难点:多种移位方式的设计教学方式、手段、媒介:讲授、多媒体、示范教学过程:一、实验目的1. 学习移位寄存器的设计方法;2. 进一步熟悉 VHDL 语句、语法。二、实验内容运用 Quartus II 集成环境下的 VHDL 文本设计方法设计带有并行置位的移位寄存器,要求具有置位功能。进行波形仿真和分析、引脚分配并下载到实验设备上进行功能测试。三、实验步骤及参考程序实验步骤和方法参考实验一,引脚分配可参考(时钟引脚改用 J3)右图。参考程序:-引用library ieee; use ieee.std_logic_1164.all; -实体entity shfrt is port(clk,load : in std_logic; din : in std_logic_vector(7 downto 0); qb : out std_logic); end; -结构体architecture bha of shfrt is begin process(clk,load) variable reg8:std_logic_vector(7 downto 0); 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 23 页,共 30 页 - - - - - - - - - - begin if clkevent and clk=1 then if load =1 then reg8:=din; else reg8(6 downto 0) :=reg8(7 downto 1); end if ; end if ; qb=reg8(0); end process; end; 板书设计:讨论、思考题、作业1、思考在本试验的基础上,增加移位方向的控制。2、思考循环移位寄存器的设计方法。参考书目:后记:精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 24 页,共 30 页 - - - - - - - - - - 长沙学院教案编 号: 10 (累积 20 课时) 课时安排:2 学时教学课型:实验课题目:实验十8 位十六进制频率计设计教学目的要求:运用 Quartus II 集成环境下的图形设计方法设计一个8 位的十六进制频率计。进行波形仿真和分析教学重点、难点:重点:原件的例化,多个文件的例化。难点:多个文件的例化实现。教学方式、手段、媒介:讲授、多媒体、示范一、实验目的1. 设计 8 位十六进制频率计,学习较复杂数字系统设计方法。2. 熟悉元件例化语句;3. 熟悉包含多个文件的电路设计方法。二、实验内容运用 Quartus II 集成环境下的图形设计方法设计一个8 位的十六进制频率计。进行波形仿真和分析。三、实验步骤及参考程序实验步骤:编写测频控制器、 32 位锁存器、 32位计数器并编译、仿真得到正确的波形;编写顶层模块;仿真并分析波形。参考程序:1、测频控制器LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY FTCTRL IS PORT(CLKK:IN STD_LOGIC; CNT_EN:OUT STD_LOGIC; RST_CNT:OUT STD_LOGIC; LOAD:OUT STD_LOGIC); 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 25 页,共 30 页 - - - - - - - - - - END; ARCHITECTURE BEHAV OF FTCTRL IS SIGNAL DIV2CLK:STD_LOGIC; BEGIN PROCESS(CLKK) BEGIN IF CLKKEVENT AND CLKK=1 THEN DIV2CLK=NOT DIV2CLK; END IF; END PROCESS; PROCESS(CLKK,DIV2CLK) BEGIN IF CLKK=0AND DIV2CLK=0 THEN RST_CNT=1; ELSE RST_CNT=0; END IF; END PROCESS; LOAD=NOT DIV2CLK; CNT_EN=DIV2CLK; END; 2、32 位锁存器LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY REG32B IS PORT(LK:IN STD_LOGIC; DIN:IN STD_LOGIC_VECTOR(31 DOWNTO 0); DOUT:OUT STD_LOGIC_VECTOR(31 DOWNTO 0); END; ARCHITECTURE BEHAV OF REG32B IS BEGIN PROCESS(LK,DIN) BEGIN IF LKEVENT AND LK=1 THEN DOUT=DIN; END IF; END PROCESS; END; 3、32 位计数器LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY COUNTER32B IS PORT(FIN:IN STD_LOGIC; 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 26 页,共 30 页 - - - - - - - - - - CLR:IN STD_LOGIC; ENABL:IN STD_LOGIC; DOUT: OUT STD_LOGIC_VECTOR(31 DOWNTO 0); END; ARCHITECTURE BEHAV OF COUNTER32B IS SIGNAL CQI:STD_LOGIC_VECTOR(31 DOWNTO 0); BEGIN PROCESS(FIN,CLR,ENABL) BEGIN IF CLR=1 THEN CQI0); ELSIF FINEVENT AND FIN=1 THEN IF ENABL=1 THEN CQI=CQI+1; END IF; END IF; END PROCESS; DOUTCLK1HZ,CNT_EN=TSTEN1,RST_CNT=CLR_CNT1,LOAD=LOAD1); U2:REG32B PORT MAP (LK=LOAD1,DIN=DTO1,DOUT=DOUT); U3:COUNTER32B PORT MAP(FIN=FSIN,CLR=CLR_CNT1,ENABL=TSTEN1,DOUT=DTO1); END; 参考波形图:板书设计:讨论、思考题、作业1、怎样设计4 位或 8 位十进制频率计?2、将顶层文件的设计用图形的方法实现。3、将 32 位频率值用实验箱上的8 个数码管显示出来。参考书目:后记:精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 28 页,共 30 页 - - - - - - - - - - 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 29 页,共 30 页 - - - - - - - - - - 文档编码:KDHSIBDSUFVBSUDHSIDHSIBF-SDSD587FCDCVDCJUH 欢迎下载 精美文档欢迎下载 精品资料 - - - 欢迎下载 - - - - - - - - - - - 欢迎下载 名师归纳 - - - - - - - - - -第 30 页,共 30 页 - - - - - - - - - -