当前位置:文档之家› 数字逻辑实验指导书

数字逻辑实验指导书

数字逻辑实验指导书目录前言...................................................................................................错误!未定义书签。

实验一通过3-8译码器实例学习Q UARTUS P RIME (1)实验二4选1多路选择器设计 (15)实验三异步清零和同步使能加法计数器设计 (17)实验四八位七段数码管显示电路的设计 (19)实验五整数分频器的设计 (22)实验六加减法运算器设计 (24)实验七状态机设计 (27)实验八设计七人表决器 (33)实验九设计四人抢答器 (35)实验十可控脉冲发生器的设计 (37)实验一通过3-8译码器实例学习Quartus一、实验目的1、通过简单的3-8译码器的设计,掌握组合逻辑电路的设计方法。

2、初步掌握Quartus软件使用方法和设计流程。

3、掌握组合逻辑电路的静态测试方法。

4、掌握远程云端硬件实验平台的使用。

二、实验原理3-8译码器顾名思义三输入,八输出。

当输入信号按二进制方式的表示值为N时,标号为N的输出端输出高电平表示有信号产生,而其它则为低电平表示无信号产生。

因为三个输入端能产生的组合状态有八种,即二进制0~7,所以输出端在每种组合中仅有一位为高电平。

其真值表下表所示输入输出a[2] a[1] a[0] y7 y6 y5 y4 y3 y2 y1 y00 0 0 0 0 0 0 0 0 0 10 0 1 0 0 0 0 0 0 1 00 1 0 0 0 0 0 0 1 0 00 1 1 0 0 0 0 1 0 0 01 0 0 0 0 0 1 0 0 0 01 0 1 0 0 1 0 0 0 0 01 1 0 0 1 0 0 0 0 0 01 1 1 1 0 0 0 0 0 0 0译码器不需要像编码器那样用一个输出端指示输出是否有效。

但可以在输入中加入一个输出使能端,用来指示是否将当前的输入进行有效的译码,当使能端指示输入信号无效或不用对当前信号进行译码时,输出端全为高电平,表示无任何信号。

本例设计中没有考虑使能输入端,读者自己设计时可以考虑加入使能输入端时,程序如何设计。

三、实验内容本实验通过VHDL实现一个3—8译码器功能模块,通过改变输入a[2..0]的值,从而改变输出y0—y7的数值。

实验中信号与管脚连接见下表四、实验步骤下面将通过这个实验,向读者介绍在Quartus软件下项目文件的生成、编译、管脚分配以及时序仿真等的操作过程。

(本实验指导书使用Quartus Prime 17.1Lite 版本)1.建立工程1)选择开始菜单下或者桌面上的Quartus图标,运行Quartus软件,进入下图所示界面。

选择软件中的菜单File>New或者界面中的New 图标,选择新建New Quartus Prime Project,进入新建工程对话框。

3)点击NEXT进入工程设定对话框如下图所示。

第一个输入框为工程工作文件夹地址输入框,设定好后所有工程相关文件将统一存放在该文件夹下;第二个输入框为工程名输入框;第三个输入框为该工程的顶层文件名输入框。

本例中工程文件夹名、工程名、顶层文件名都为decoder38。

4)点击NEXT,进入工程类型对话框,选择Empty project。

5)点击NEXT,进入工程文件对话框。

在该界面下我们可以添加工程所需的文件,这里由于是新建工程故不添加任何文件。

6)点击NEXT,进入器件选择对话框,这里我们选择Family>CycloneⅣ E;Packege>FBGA;Pin count>256然后选择下方芯片EP4CE10F17C8即FPGA平台主芯片。

7)点击NEXT进入EDA工具设置对话框,如下图所示,在这里我们将仿真工具设置为ModelSim-Altera,即选择Simulation>ModelSim-Altera>VHDL。

8)点击NEXT进入工程信息汇总对话框。

该对话框汇总了本工程中所有的设置信息,确认无误后点击NEXT进入工程编辑界面。

2、Quartus Prime开发环境简介建立工程后就可以进入Quartus Prime集成开发环境(如下图所示)从图中可以看出Quartus Prime集成开发环境大致可以分为4个窗口,最左上角为工程管理窗口,包括原代码文件、约束文件和仿真测试文件的管理;左中窗口为工程流程向导,涵盖FPGA开发过程中分析、综合、管脚分配、布局布线及静态时序分析的整个流程;右边主窗口为各种文件和报表的打开窗口;最下方窗口为工程信息框,显示综合过程信息等内容。

有了以上基本认识,下面我们就来实现本实验指导书的第一个实验3-8译码器。

3、工程实现1)如下图所示,点击菜单File>New,在新建菜单下选择VHDL File。

2)在新建的文件内输入相应的设计代码,代码如下:LIBRARY IEEE;USE IEEE.std_logic_1164.ALL;ENTITY decoder38 ISPORT (a : IN std_logic_vector(2 DOWNTO 0);y : OUT std_logic_vector(7 DOWNTO 0));END decoder38;ARCHITECTURE rtl OF decoder38 ISBEGINPROCESS (a)BEGINCASE a ISWHEN "000" => y <= "00000001";WHEN "001" => y <= "00000010";WHEN "010" => y <= "00000100";WHEN "011" => y <= "00001000";WHEN "100" => y <= "00010000";WHEN "101" => y <= "00100000";WHEN "110" => y <= "01000000";WHEN "111" => y <= "10000000";WHEN OTHERS => y <= "00000000";END CASE;END PROCESS;END rtl;3)代码输入完成确认无误后,选择菜单Processing/Analyze Current File或点击编辑窗口中工具栏图标,进行HDL代码语法分析。

4)语法分析无误后,选择Processing/Start/Start Analysis & Synthesis,或者按下快捷键Ctrl+K,或者点击工具栏图标,进行HDL文件的分析和综合。

5)分析和综合完成后就可以对工程进行管脚分配。

可以利用Quartus Prime中Pin Planner进行可视化的管脚分配。

点击上方工具条中的Pin Planner图标,或者选择菜单栏中的Assignments>Pin Planner。

此时应看到如下界面在界面下方的窗口中的输入输出信号后,输入对应的FPGA 管脚标号(或将信号拖拽到上方的Package 图中对应的管脚上),并指定I/O输入输出标准。

(远程云端硬件实验平台I/O电压电流均为3.3V 2mA)。

管脚设置完成后如图,关闭Pin Planner即完成管脚分配6)管脚约束完成后,就可以指定下载所需文件的类型。

远程云端硬件实验平台下载需要.rbf类型的下载文件,该文件的生成需要在工程中设定后才可由Quartus Prime软件自动产生。

具体方法如下,首先点击菜单栏中的Assignments>Device,选择Device and Pin Options。

然后选择Programming Files,在右侧对话框中勾选Raw Binary File(.rbf),点击OK 确认。

此时工程全编译后Quartus软件即会自动生成远程云端实验平台所需的.rbf 下载文件。

7)点击菜单栏中的Processing>Start Compilation或者图标栏中的完成整个工程的编译。

8)如果将文件下载到本地开发板,则点击菜单栏中Tools>Programmer或者图标栏的Programmer,进入硬件编程管理界面。

将Altera USB Blaster的USB端连接电脑,JTAG端连接开发板JTAG口,打开开发板电源。

将Hardware Setup选择成USB-Blaster,Mode选择成JTAG,同时选择工程文件夹下的.sof文件作为写入文件。

点击Start,将.sof文件下载到开发板上的FPGA 中,本工程完成。

五、实验报告1、进一步熟悉和理解Quartus Prime软件的使用方法和工程实现的流程。

2、仿照3-8译码器实现数字电路中最基本的与门、或门、非门及比较器、多路选择器等基本逻辑电路的VHDL代码。

实验二4选1多路选择器设计一、实验目的1、了解多路选择器设计的原理。

2、进一步熟悉Quartus Prime软件的使用方法和VHDL输入的全过程。

3、进一步掌握实验系统的使用。

二、实验原理多路选择器是数字系统设计中经常使用的模块,其特点是在选择信号控制下,输出端与确定的数据通道联通,并随数据通道的信号变化而变化。

在本实验中,我们将实现一个4选1多路选择器,因此将有一个2位的选择信号,4个数据输入信号和1个数据输出信号。

三、实验内容本实验要求通过VHDL实现一个4选1多路选择器。

通过选择信号sel[1..0]实现数据输出通路dataout在不同的数据输入通路datain0—datain3之间切换,并观察输出信号随输入信号的变化而变化。

实验中信号与管脚连接如下表四、实验步骤1、打开Quartus Prime软件,新建一个工程。

2、建完工程之后,再新建一个VHDL空白源文件。

3、按照实验原理和自己的想法,在VHDL编辑窗口编写VHDL程序,读者可参照光盘中提供的示例程序。

4、编写完VHDL程序后,保存。

5、对自己编写的VHDL程序进行编译并仿真,对程序的错误进行修改。

6、编译仿真无误后,依照拨动开关、LED与FPGA的管脚连接表进行管脚分配,然后进行综合和实现。

7、用下载电缆通过JTAG口将对应的sof文件加载到FPGA中。

相关主题