用VHDL语言设计BCD-七段译码.docVIP

  • 11
  • 0
  • 约2.16千字
  • 约 6页
  • 2016-10-10 发布于重庆
  • 举报
用VHDL语言设计BCD-七段译码

简单电路的VHDL语言描述 一、实验内容 1.用VHDL语言设计BCD-七段译码驱动芯片,编译、下载,并进行电路功能验证。 (1) 程序源代码 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY DELED IS PORT(NUM:IN STD_LOGIC_VECTOR(3 DOWNTO 0); A,B,C,D,E,F,G: OUT STD_LOGIC); END ENTITY DELED; ARCHITECTURE ART OF DELED IS SIGNAL LED:STD_LOGIC_VECTOR(6 DOWNTO 0); BEGIN PROCESS(NUM) BEGIN CASE NUM IS WHEN 0000=LED=1111110; WHEN 0001=LED=0110000; WHEN 0010=LED=1101101; WHEN 0011=LED=1111001; WHEN 0100=LED=0110011; WHEN 0101=LED=1011011; WHEN 0110=LED=1011111; WHEN 0111=LED=1110000; WHEN 1000=LED=1111111; WHEN 1001=LED=1111011; WHEN 1010=LED=1110111; WHEN 1011=LED=0011111; WHEN 1100=LED=1001110; WHEN 1101=LED=0111101; WHEN 1110=LED=1001111; WHEN OTHERS=LED=1000111; END CASE; END PROCESS; A=LED(6); B=LED(5); C=LED(4); D=LED(3); E=LED(2); F=LED(1); G=LED(0); END ART; (2) 程序的编译和电路功能的仿真结果 电路的编译 电路功能的仿真 (3) 电路的引脚分配 电路引脚分配图 2.用VHDL语言设计一个分频器,输出100Hz方波的电路,编译、仿真、下载,并进行电路功能的验证。 (1) 程序源代码 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY FENPIN IS PORT(CLK_IN:IN STD_LOGIC; CLK_OUT:OUT STD_LOGIC); END ENTITY FENPIN; ARCHITECTURE ART OF FENPIN IS SIGNAL Q:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN PROCESS(CLK_IN) BEGIN IF CLK_INEVENT AND CLK_IN=1 THEN IF Q=1001 THEN Q=0000; ELSE Q=Q+1; END IF; END IF; END PROCESS; PROCESS(Q) BEGIN IF Q=0100 THEN CLK_OUT=0; ELSE CLK_OUT=1; END IF; END PROCESS; END ART; (2) 电路的编译 电路的编译结果 (3) 电路功能的仿真 电路功能仿真验证 (4) 电路引脚分配 电路的引脚分配图 实验小结:此次的实验是用VHDL语言设计一个BCD译码电路和一个分频器,实验中主要解决的是分频器的设计思路,实验中设计的是一个10分频的电路,即先计数输入脉冲正脉冲的个数,然后定义一个中间量,通过技术正脉冲的个数(满10个正脉冲)和这个中间量来实现10分频。要做好一个实验首先有一个好的设计思路,然后在根据这个思路来编写程序来实

文档评论(0)

1亿VIP精品文档

相关文档