文档详情

3-8译码器VHDL设计.doc

发布:2017-06-25约2.05万字共5页下载文档
文本预览下载声明
3-8译码器的VHDL设计1.实体框图2.程序设计正确的程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY DECODER38A IS PORT(A2,A1,A0,S1,S2,S3:IN STD_LOGIC; Y:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END ENTITY DECODER38A;ARCHITECTURE ONE OF DECODER38A ISSIGNAL S: STD_LOGIC_VECTOR(5 DOWNTO 0); BEGINS=A2A1A0S1S2S3; WITH S SELECT YWHEN 000100, WHEN 001100, WHEN 010100, WHEN 011100, WHEN 100100, WHEN 101100, WHEN 110100, WHEN 111100, WHEN OTHERS;END ARCHITECTURE ONE;3.仿真波形图4.仿真波形分析当S1 S2 S3=100时,只有当A2 A1 A0=111时,Y[7]才输出低电平,否则为高电平,当A2 A1 A0=110时,Y[6]才输出低电平,否则为高电平,当A2 A1 A0=101时,Y[5]才输出低电平,否则为高电平,Y[4]到Y[0]同理。可见该程序设计的是3-8译码器三、共阳极数码管七段显示译码器的VHDL设计1.实体框图2.程序设计正确的程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY DISPLAY_DECODER IS PORT(A3,A2,A1,A0:IN STD_LOGIC; Y:OUT STD_LOGIC_VECTOR(6 DOWNTO 0));END ENTITY DISPLAY_DECODER;ARCHITECTURE ONE OF DISPLAY_DECODER ISSIGNAL S: STD_LOGIC_VECTOR(3 DOWNTO 0); BEGINS=A3A2A1A0; WITH S SELECT Y=1111110 WHEN 0000, 0110000 WHEN 0001, 1101101 WHEN 0010, 1111001 WHEN 0011, 0110011 WHEN 0100, 1011011 WHEN 0101, 1011111 WHEN 0110, 1110000 WHEN 0111, 1111111 WHEN 1000, 1111011 WHEN 1001, 0000000 WHEN OTHERS;END ARCHITECTURE ONE;3.仿真波形图4.仿真波形分析由图可知,当A3 A2 A1 A0=0000时,输出Y[6]到Y[0]对应为1111110,即只有g不亮,数码管显示为0,A3 A2 A1 A0=0001时,输出对应为0110000,数码管显示为1,A3 A2 A1 A0=0010时,输出对应为1101101,数码管显示为2,其他同理,当A3 A2 A1 A01001,即大于9,数码管无显示。由此可知,程序设计的是七段显示译码管。
显示全部
相似文档