EDA实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一计数器设计
一、实验目的
计数器是实际中最为常用的时序电路模块之一,本实验的主要目的是掌握使用HDL描述计数器类型模块的基本方法。
二、实验仪器与器材
1.EDA开发软件一套
2.微机一台
3.实验开发系统一台
4.其他器材与材料若干
三、实验说明
计数器是数字电路系统中最重要的功能模块之一,设计时可以采用原理图或HDL语言完成。下载验证时的计数时钟可选连续或单脉冲,并用数码管显示计数值。
四、实验要求
1.设计一个带有计数允许输入端、复位输入端和进位输入端的十进制计数器。
2.编制仿真测试文件,并进行功能仿真。
3.下载并验证计数器功能。
4.为上述设计建立元件符号。
5.在上述基础上设计计数器。
五、实验结果
十进制计数器程序:
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity counter10 is
port(en,reset,clk:in std_logic;
q:buffer std_logic_vector(3 downto 0);
co:out std_logic);
end counter10;
architecture behav of counter10 is
begin
process(clk,en)
begin
if clk'event and clk='1' then
if reset='1' then q<="0000";
elsif en='1' then
if q<"1001" then q<=q+'1';
else q<="0000";
end if;
end if;
end if;
end process;
co<='1' when q="1001" else '0';
end behav;
仿真波形图:
实验二七段数码显示译码器设计
一、实验目的:
学习7段数码显示译码器设计,学习VHDL组合电路的多层次设计方法。
二、实验原理:
七段数码管由8个(a,b,c,d,e,f,g,dp)按照一定位置排列的发光二极管构成,通常采取共阴极或者共阳极的设计,将8个二极管的同一极接在一起,通过分别控制另外的8个电极的电平,使二极管导通(发光)或截止(不发光)。
七段数码显示译码器的功能就是根据需要显示的字符,输出能够控制七段数码管显示出该字符的编码。
三、实验内容:
1、用VHDL设计7段数码管显示译码电路,并在VHDL描述的测试平台下对译码器进行功能仿真,给出仿真的波形。
1、数码管显示电路设计
利用以上设计的译码器模块,设计一个可以在8个数码管上同时显示字符的电路。快速轮流点亮8个数码管,这样就可以实现同时显示8个字符的效果。
要实现以上功能,就必须按照一定时钟节拍,轮流使译码器输出所需要字符的编码;同时控制数码管的公共电极电平,轮流点亮数码管。
2、用QuartusII对2中的设计进行编译、综合、仿真,给出其所有信号的仿真波形和时序分析数据。
3、QuartusII集成环境,将设计下载到实验电路上进行硬件测试。管脚锁定: clk: 28
A(3): 30 SW1
A(2): 35 SW2
A(1): 36 SW3
A(0): 37 SW4
LED7S(6): 163 SEG g
LED7S(5): 166 SEG f
LED7S(4): 165 SEG e
LED7S(3): 168 SEG d
LED7S(2): 167 SEG c
LED7S(1): 170 SEG b
LED7S(0): 169 SEG a
实验结果:
数码管显示电路的原理框图:
VHDL描述:
7段数码管显示译码电路VHDL描述:
library 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";
实验三数控分频器的设计一、实验目的: