EDA实验7段显示译码器

合集下载

EDA实验七段数码管

EDA实验七段数码管

1.实验名称 :十六进制7 段数码显示译码器设计2.实验目的:学习 7 段数码显示译码器的Verilog硬件设计。

3.实验原理:7 段数码是纯组合电路,往常的小规模专用IC,如 74 或 4000 系列的器件只好作十进制BCD 码译码,但是数字系统中的数据办理和运算都是二进制的,因此输出表达都是十六进制的,为了知足十六进制数的译码显示,最方便的方法就是利用译码程序在FPGA/CPLD中来实现。

比如6-18作为7 段译码器,输出信号LED7S7 位分别接图6-17数码管的7 个段,高位在左,低的位在右。

比如当LED7S输出为“”时,数码管的7 个段g,f,e,d,c,b,a分别接1,1,0,1,1,0,1;接有高电平的段发亮,于是数码管显示“5”。

这里没有考虑表示小数点的发光管,假如要考虑,需要增添段h,而后将LED7S改为 8 位输出。

4.实验内容:1、编写和输入设计文件新建文件夹——输入源程序——文件存盘源程序 :module LED(A,LED7S);input [3:0]A;output [6:0]LED7S;reg [6:0]LED7S;always @ (A)begin: LEDcase(A)4'b0000: LED7S<=7'b0111111;4'b0001: LED7S<=7'b0000110;4'b0010: LED7S<=7'b1011011;4'b0011: LED7S<=7'b1001111;4'b0100: LED7S<=7'b1100110;4'b0101: LED7S<=7'b1101101;4'b0110: LED7S<=7'b1111101;4'b0111: LED7S<=7'b0000111;4'b1000: LED7S<=7'b1111111;4'b1001: LED7S<=7'b1101111;4'b1010: LED7S<=7'b1110111;4'b1011: LED7S<=7'b1111100;4'b1100: LED7S<=7'b0111001;4'b1101: LED7S<=7'b1011110;4'b1110: LED7S<=7'b1111001;4'b1111: LED7S<=7'b1110001;default: LED7S<=7'b0111111;endcaseendendmodule2、创立工程翻开并成立新工程管理窗口——将设计文件加入工程中——选择目标芯片——工具设置——结束设置3、全程编译前拘束项目设置选择 FPGA 目标芯片——选择配置器件的工作方式——选择配置器件和编程方式——选择目标器件引脚端口状态——选择Verilog 语言版本4、全程综合与编译Processing—— Start Compilation 启动全程编译5、仿真测试时序剖析 :延时剖析及结果:生成RTL 原理图:该实验的配置模式:适配板布局图及实验仪IO 脚与芯片的管脚对应关系和其详尽放大图片:十六进制逻辑剖析:计数器和译码器连结电路的顶层文件原理图:6.总结与领会本次实验让我学会了好多知识。

EDA实验三-七段译码显示

EDA实验三-七段译码显示

河北科技大学实验报告2013级电信专业132 班学号130701213 2016年6月7日姓名田继辉同组人指导教师于国庆实验名称实验三七段译码显示成绩实验类型设计型批阅教师一、实验目的(1)掌握VHDL语言的行为描述设计时序电路。

(2)掌握FPGA动态扫描显示电路设计方法。

(3)熟悉进程(process)和顺序语句的应用。

二、实验原理:用4个开关作为加法器的一组输入变量,共4组输入变量;对每组变量进行译码,变换成0~F标准段码,段码中“1”表示段亮,“0”表示段灭。

一位时钟输入作为扫描显示位扫时钟,四位位扫输出,依次输出高电平。

8位段码输出,根据位选状态选择输出四组输入变量的相应译码结果。

四组输入采用试验箱K1~K16,时钟输入选择试验箱CP1或CP2;试验箱LED显示选择动态显示方式(CZ1开关ST选择OFF),段码、位码分别扫描输出,某个管的位码有效期间,将其对应的段码输出,各位码依次有效,实现循环扫描显示,将输入的16位二进制数,每4位一组,分别显示到4个数码管上(0~F)。

三、实验内容及步骤1.打开MUXPLUS II VHDL编辑器,完成七段译码显示的设计。

包括VHDL程序输入、编译、综合。

实验程序如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;ENTITY alpher ISPORT(1 / 6clk : IN STD_LOGIC;choice : OUT STD_LOGIC_VECTOR(7 downto 0);data : OUT STD_LOGIC_VECTOR(7 downto 0)); END alpher;ARCHITECTURE a OF alpher ISSIGNAL count : STD_LOGIC_VECTOR(3 downto 0); SIGNAL temp : STD_LOGIC_VECTOR(3 downto 0);BEGINchoice<="10000000";clk1_label:PROCESS (clk)BEGINIF clk'event and clk='1' THENcount<=count+1;END IF;END PROCESS clk1_label;WITH count selectdata <= "11111100" WHEN "0000","01100000" WHEN "0001","11011010" WHEN "0010","11110010" WHEN "0011","01100110" WHEN "0100","10110110" WHEN "0101","10111110" WHEN "0110","11100000" WHEN "0111","11111110" WHEN "1000","11110110" WHEN "1001","11101110" WHEN "1010","00111110" WHEN "1011","10011100" WHEN "1100","01111010" WHEN "1101","10011110" WHEN "1110","10001110" WHEN OTHERS;END a;2、建立仿真波形文件,使用MAXPLUS II Simulator功能进行功能仿真。

EDA实验报告

EDA实验报告

EDA实验报告班级:姓名:目录实验一:七段数码显示译码器设计 (1)摘要 (1)实验原理 (1)实验方案及仿真 (1)引脚下载 (2)实验结果与分析 (3)附录 (3)实验二:序列检测器设计 (6)摘要 (6)实验原理 (6)实现方案及仿真 (6)引脚下载 (7)实验结果与分析 (8)实验三:数控分频器的设计 (11)摘要 (11)实验原理 (11)方案的实现与仿真 (11)引脚下载 (12)实验结果及总结 (12)附录 (12)实验四:正弦信号发生器 (14)摘要 (14)实验原理 (14)实现方案与仿真 (14)嵌入式逻辑分析及管脚下载 (16)实验结果与分析 (17)附录 (18)实验一:七段数码显示译码器设计摘要:七段译码器是一种简单的组合电路,利用QuartusII的VHDL语言十分方便的设计出七段数码显示译码器。

将其生成原理图,再与四位二进制计数器组合而成的一个用数码管显示的十六位计数器。

整个设计过程完整的学习了QuartusII的整个设计流程。

实验原理:七段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用译码程序在FPGA\CPLD中来实现。

本实验作为7段译码器,输出信号LED7S的7位分别是g、f、e、d、c、b、a,高位在左,低位在右。

例如当LED7S 输出为“1101101”时,数码管的7个段g、f、e、d、c、b、a分别为1、1、0、1、1、1、0、1。

接有高电平段发亮,于是数码管显示“5”。

实验方案及仿真:I、七段数码显示管的设计实现利用VHDL描述语言进行FPGA上的编译实现七段数码显示译码器的设计。

运行QuartusII在G:\QuartusII\LED7S\下新建一个工程文件。

新建一个vhdl语言编译文件,编写七段数码显示管的程序见附录1-1。

EDA实验三七段数码管显示译码

EDA实验三七段数码管显示译码

实验三:七段数码管显示译码一、实验目的:1 设计并实现一个7段数码管控制接口,要求:在输入四位数据为0~15时,数码管显示0~F;2设计并实现一个两位7段数码管控制接口,实现输入八位二进制,结果由两位7段数码管显示功能。

3 熟悉ISE9.1软件中电路的设计仿真及综合实现方法;4 熟悉下载方法及实验系统调试方法。

二、实验原理七段数码管显示译码程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY hex2led ISPORT(hex : IN STD_LOGIC_VECTOR(3 downto 0);ledout : OUT STD_LOGIC_VECTOR(6 downto 0));END hex2led;ARCHITECTURE rtl OF hex2led ISSIGNAL led :STD_LOGIC_VECTOR(6 downto 0);BEGINledout<= NOT led;WITH hex SELECTled<="1111001" when "0001","0100100" when "0010","0110000" when "0011","0011001" when "0100","0010010" when "0101","0000010" when "0110","1111000" when "0111","0000000" when "1000","0010000" when "1001","0001000" when "1010","0000011" when "1011","1000110" when "1100","0100001" when "1101","0000110" when "1110","0001110" when "1111","1000000" when others;END rtl;三、实验处理激励代码:tb : PROCESSBEGINhex<="0000";wait for 50 ns;for i in 0 to 15 loophex<=hex+1;wait for 50 ns;end loop;功能仿真图时序仿真图(图中黄线可以看出延时)延时报告:Data Sheet report:All values displayed in nanoseconds (ns) Pad to PadSource Pad |Destination Pad| Delay | hex<0> |ledout<0> | 5.963| hex<0> |ledout<1> | 5.963| hex<0> |ledout<2> | 5.963| hex<0> |ledout<3> | 5.958| hex<0> |ledout<4> | 5.963| hex<0> |ledout<5> | 5.958| hex<0> |ledout<6> | 5.958| hex<1> |ledout<0> | 5.963| hex<1> |ledout<1> | 5.963| hex<1> |ledout<2> | 5.963| hex<1> |ledout<3> | 5.958| hex<1> |ledout<4> | 5.963| hex<1> |ledout<5> | 5.958| hex<1> |ledout<6> | 5.958| hex<2> |ledout<0> | 5.963| hex<2> |ledout<1> | 5.963| hex<2> |ledout<2> | 5.963| hex<2> |ledout<3> | 5.958| hex<2> |ledout<4> | 5.963| hex<2> |ledout<5> | 5.958| hex<2> |ledout<6> | 5.958| hex<3> |ledout<0> | 5.963| hex<3> |ledout<1> | 5.963| hex<3> |ledout<2> | 5.963| hex<3> |ledout<3> | 5.958| hex<3> |ledout<4> | 5.963| hex<3> |ledout<5> | 5.958| hex<3> |ledout<6> | 5.958| ---------------+---------------+---------+可编程器件、拨码开关、与发光二极管关系#PACE: Start of PACE I/O Pin AssignmentsNET "hex<0>" LOC = "N17" ;NET "hex<1>" LOC = "H18" ;NET "hex<2>" LOC = "L14" ;NET "hex<3>" LOC = "L13" ;NET "ledout<0>" LOC = "B4" ;NET "ledout<1>" LOC = "A4" ;NET "ledout<2>" LOC = "D5" ;拨码开关状态数码管显示D1D2D3D4下下下下0下下下上1下下上下2下下上上3下上下下4下上下上5下上上下6下上上上7上下下下8上下下上9上下上下A 上下上上B 上上下下C 上上下上D 上上上下E 上上上上FNET "ledout<3>" LOC = "C5" ;NET "ledout<4>" LOC = "A6" ;NET "ledout<5>" LOC = "B6" ;NET "ledout<6>" LOC = "E7" ;设计表格记录实验结果,并分析其结果的正确性。

实验五-7段数码显示译码器设计

实验五-7段数码显示译码器设计

实验五7段数码显示译码器设计实验报告一、实验要求1、GW48实验箱2、写出7段数码显示译码器程序3、总结实验步骤和实验结果二、实验内容1、说明例中各语句的含义,以及该例的整体功能。

在max+plus2或quartus2上对以下该例进行编辑、编译、综合、适配仿真,给出其所有信号的时序仿真波形。

module zdw(in,out);output [6:0]out;input [3:0]in;reg[6:0]out;always@(in)begincase(in)4'd0: out=7'b1111110;4'd1: out=7'b0110000;4'd2: out=7'b1101101;4'd3: out=7'b1111001;4'd4: out=7'b0110011;4'd5: out=7'b1011011;4'd6: out=7'b1011111;4'd7: out=7'b1110000;4'd8: out=7'b1111111;4'd9: out=7'b1111011;4'd10: out=7'b1110111;4'd11: out=7'b0011111;4'd12: out=7'b1001110;4'd13: out=7'b0111101;4'd14: out=7'b1001111;4'd15: out=7'b1000111;default: out=7'bx;endcaseendendmodule2、引脚锁定以及硬件下载测试。

建议选实验电路模式6,用数码8显示译码输出(PIO46—PIO40)。

键8,键7,键6,键5四位控制输入,硬件验证译码器的工作性能。

EDA七段码显示译码器4511BD的逻辑功能仿真实验

EDA七段码显示译码器4511BD的逻辑功能仿真实验
74LS279是一种由基本RS触发器构成的四RS锁存器集成电路,其内部共 集成了4个独立的基本RS触发器。
4.4.2 JK触发器逻辑功能仿真实验 JK触发器属边沿触发器的一种,是比较常用的一种触发器。
在Multisim中分为两种:虚拟元件和实际元件
实际元件:
4.4.3 D触发器逻辑功能仿真实验 D触发器也是一种常用的边沿触发器,在Multisim中包含虚拟和实际两类 元件。
实际元件:74LS74
4
U1A
~1PR
2 1D
1Q 5
3 1CLK ~1Q 6
~1CLR 1
74LS74D
通过仿真实验,从波形图中可明显看到: ①时钟脉冲上升沿与Q和Q’反转的对应关系; ②D触发器的特性方程为: Qn1 D ③ Q端输出信号与时钟脉冲信号之间的2分频关系。
4.4 触发器仿真实验
触发器:具有记忆功能,能够存储一位二进制数字信号的基本逻辑单元电 路,是时序逻辑电路的基本单元。
触发器有两种稳定的工作状态,0状态或1状态。当外加不同的触发信号时, 可以把它置成1或0状态。
根据是否有时钟脉冲信号输入,可以把触发器分为时钟触发器和基本触发 器两类。 常用触发器有RS触发器、JK触发器、D触发器和T触发器。
4.4.1 RS触发器逻辑功能仿真实验 1. 基本RS触发器单元仿真实验
基本RS触发器由两个与非门交叉连接组成,它有两个输入端:复位 端R,低电平有效;置位端S,低电平有效。还有两个输出端。
与非门组成的基本RS触发器的状态表Fra bibliotek输入信号
S’
R’
1
1
1
0
0
1
0
0
输出信号
Q
Q’

EDA实验_七段译码显示

EDA实验_七段译码显示

河北科技大学实验报告2012级电信专业122班学号38 15年6月3日姓名郑振兴同组人指导教师于国庆实验名称实验三七段译码显示成绩实验类型设计型批阅教师一、实验目的(1)掌握VHDL语言的行为描述设计时序电路。

(2)掌握FPGA动态扫描显示电路设计方法。

(3)熟悉进程(process)和顺序语句的应用。

二、实验原理:用4个开关作为加法器的一组输入变量,共4组输入变量;对每组变量进行译码,变换成0~F标准段码,段码中“1”表示段亮,“0”表示段灭。

一位时钟输入作为扫描显示位扫时钟,四位位扫输出,依次输出高电平。

8位段码输出,根据位选状态选择输出四组输入变量的相应译码结果。

四组输入采用试验箱K1~K16,时钟输入选择试验箱CP1或CP2;试验箱LED显示选择动态显示方式(CZ1开关ST选择 OFF),段码、位码分别扫描输出,某个管的位码有效期间,将其对应的段码输出,各位码依次有效,实现循环扫描显示,将输入的16位二进制数,每4位一组,分别显示到4个数码管上(0 ~ F)。

三、实验内容及步骤1.打开MUXPLUS II VHDL编辑器,完成七段译码显示的设计。

包括VHDL程序输入、编译、综合。

实验程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.All;ENTITY qiduanyima ISPORT ( CLK: IN STD_LOGIC;A: OUT STD_LOGIC_VECTOR(3 DOWNTO 0) ;B: IN STD_LOGIC_VECTOR(15 DOWNTO 0) ;C: OUT STD_LOGIC_VECTOR(6 DOWNTO 0) ) ; END qiduanyima;ARCHITECTURE simple OF qiduanyima ISBEGINPROCESS (CLK)VARIABLE Q : INTEGER RANGE 0 TO 5;VARIABLE COUNT : STD_LOGIC_VECTOR(3 DOWNTO 0); BEGINIF CLK'EVENT AND CLK='1' THENQ:=Q+1;CASE Q ISWHEN 1 => A(3 DOWNTO 0)<= "1000";WHEN 2 => A(3 DOWNTO 0)<= "0100";WHEN 3 => A(3 DOWNTO 0)<= "0010";WHEN 4 => A(3 DOWNTO 0)<= "0001";WHEN OTHERS => NULL;END CASE;CASE Q ISWHEN 1 =>COUNT(3 DOWNTO 0):=B(3 DOWNTO 0);WHEN 2 =>COUNT(3 DOWNTO 0):=B(7 DOWNTO 4);WHEN 3 =>COUNT(3 DOWNTO 0):=B(11 DOWNTO 8);WHEN 4 =>COUNT(3 DOWNTO 0):=B(15 DOWNTO 12);WHEN OTHERS => NULL;END CASE;IF Q = 5 THENQ := 0;END IF;END IF;CASE COUNT ISWHEN "0000" => C(6 DOWNTO 0) <= "0111111" ;WHEN "0001" => C(6 DOWNTO 0) <= "0000110" ;WHEN "0010" => C(6 DOWNTO 0) <= "1011011" ;WHEN "0011" => C(6 DOWNTO 0) <= "1001111" ;WHEN "0100" => C(6 DOWNTO 0) <= "1100110" ;WHEN "0101" => C(6 DOWNTO 0) <= "1101101" ;WHEN "0110" => C(6 DOWNTO 0) <= "1111101" ;WHEN "0111" => C(6 DOWNTO 0) <= "0000111" ;WHEN "1000" => C(6 DOWNTO 0) <= "1111111" ;WHEN "1001" => C(6 DOWNTO 0) <= "1101111" ;WHEN "1010" => C(6 DOWNTO 0) <= "1110111" ;WHEN "1011" => C(6 DOWNTO 0) <= "1111100" ;WHEN "1100" => C(6 DOWNTO 0) <= "0111001" ;WHEN "1101" => C(6 DOWNTO 0) <= "1011110" ;WHEN "1110" => C(6 DOWNTO 0) <= "1111001" ;WHEN "1111" => C(6 DOWNTO 0) <= "1110001" ;WHEN OTHERS => NULL ;END CASE;END PROCESS;END ARCHITECTURE simple;2、建立仿真波形文件,使用 MAXPLUS II Simulator功能进行功能仿真。

eda实验7段数码显示译码器

eda实验7段数码显示译码器

《EDA技术实用教程》实验报告实验一、7段数码显示译码器一、实验目的(1) 熟悉QuartusⅡ软件应用环境,了解实验流程。

(2) 编写简单的VHDL代码,并在QuartusⅡ中进行调试和验证,并在EDA6000中下载代码和验证。

(3) 学习7段数码显示译码器的设计。

二、实验原理7段数码管是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能做十进制BCD译码,然而数字系统中的处理和运算都是二进制,所以输出表达都是十六进制的,为了满足十六进制数的译码显示,最方便的方法就是利用译码程序在FPGA/CPLD中来实现。

本实验中的7段译码管输出信号LED7S 的7位分别接数码管的7个段,高位在左,低位在右。

三、实验仪器南京伟福实业有限公司生产EDA2000/6000试验仪EDA6000相关软件和试验仪连接线和ByteBlaster[MV]连接线四、实验步骤与结果1、创建文件夹并编辑设计文件在D盘中创建文件夹取名ex4。

打开QuartusⅡ,选择菜单File中New。

在New窗口中的Device Design File中选择语言类型VHDL File。

在该编译窗口中键入本实验程序。

将其保存在D盘的ex4文件夹里。

文件名与实体名一致,类型为vhd。

程序如下LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;ENTITY DecL7S ISPORT ( A : IN STD_LOGIC_VECTOR(3 DOWNTO 0) ;LED7S : OUT STD_LOGIC_VECTOR(6 DOWNTO 0) ) ;END ;ARCHITECTURE one OF DecL7S ISBEGINPROCESS( A )BEGINCASE A(3 DOWNTO 0) ISWHEN "0000" => LED7S <= "0111111" ; -- X"3F"'0WHEN "0001" => LED7S <= "0000110" ; -- X"06"'1WHEN "0010" => LED7S <= "1011011" ; -- X"5B"'2WHEN "0011" => LED7S <= "1001111" ; -- X"4F"'3WHEN "0100" => LED7S <= "1100110" ; -- X"66"'4WHEN "0101" => LED7S <= "1101101" ; -- X"6D"'5WHEN "0110" => LED7S <= "1111101" ; -- X"7D"'6WHEN "0111" => LED7S <= "0000111" ; -- X"07"'7WHEN "1000" => LED7S <= "1111111" ; -- X"7F"'8WHEN "1001" => LED7S <= "1101111" ; -- X"6F"'9WHEN OTHERS => NULL ;END CASE ;END PROCESS ;END ;2、创建工程(1)选择菜单File中New Project Wizard命令,在如下“工程设置”对话框中单击右侧“…”按钮,找到文件夹D:\ex4,选中已存盘的ex4.vhd的文件。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

EDA实验报告
一、实验目的
设计一个7段数码显示译码器设计。

二、实验仪器
计算机一台,U盘一个,QuartusⅡ软件
三、实验步骤
1. 新建一个文件夹YHY,打开QuartusⅡ软件,选择菜单File→New,在弹出的New 对话框中选择Device Design File页的原理图文件编辑器输入项VHDL File(如图一),按OK按钮打开VHDL编辑器窗口。

2. 在VHDL编辑器窗口输入7段数码显示译码器的VHDL描述:
IBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY DECL7S IS
PORT(A:IN STD_LOGIC_VECTOR(3 DOWNTO 0);
LED7S:OUT STD_LOGIC_VECTOR(6 DOWNTO 0) );
END;
ARCHITECTURE ONE OF DECL7S IS
BEGIN
PROCESS(A)
BEGIN
CASE A IS
WHEN "0000"=>LED7S<="0111111";WHEN "0001"=>LED7S<="0000110";
WHEN "0010"=>LED7S<="1011011";WHEN "0011"=>LED7S<="1001111";
WHEN "0100"=>LED7S<="1100110";WHEN "0101"=>LED7S<="1101101";
WHEN "0110"=>LED7S<="1111101";WHEN "0111"=>LED7S<="0000111";
WHEN "1000"=>LED7S<="1111111";WHEN "1001"=>LED7S<="1101111";
WHEN "1010"=>LED7S<="1110111";WHEN "1011"=>LED7S<="1111100";
WHEN "1100"=>LED7S<="0111001"; WHEN "1101"=>LED7S<="1011110";
WHEN "1110"=>LED7S<="1111001"; WHEN "1111"=>LED7S<="1110001";
WHEN OTHERS=>NULL;
END CASE;
END PROCESS;
END;
3. 编译并运行,观察其波形输出(如下图)。

4. 打开Fil e→Create/Update→Create Symbol files for current file(如下图)。

5.打开FILE——NEW,新建一个BLOCK DIAGRAM/SCHEMA TIC FILE文件,单击SYMBOL TOOL 按钮,在弹出的对话框中选中PROJECT下的ADDER8,即调出其原理图(如下图所示)。

四、实验分析与总结
1. 根据7段数码显示译码器的波形图知,实验结果正确,设计成功。

2. 通过此次实验,进一步熟悉了7段数码显示译码器的VHDL描述方法。

对VHDL的使
用有了更深入的了解。

相关文档
最新文档