《EDA技术及应用》实验指导书
附:各模块的VHDL代码
LIBRARY ieee;
USE ieee.std_logic_1164.ALL; ENTITY hb1 IS
PORT(d:IN STD_LOGIC_VECTOR(3 DOWNTO 0); out1:OUT STD_LOGIC ); END hb1;
ARCHITECTURE a OF hb1 IS BEGIN process begin
If d>\ Then out1<='0'; Else out1<='1'; End if; end process; END a;
LIBRARY ieee;
USE ieee.std_logic_1164.ALL; ENTITY hb2 IS
PORT(d:IN STD_LOGIC_VECTOR(3 DOWNTO 0); out1:OUT STD_LOGIC ); END hb2;
ARCHITECTURE a OF hb2 IS BEGIN process begin
If d>\ Then out1<='0'; Else out1<='1'; End if; end process; END a;
LIBRARY ieee;
USE ieee.std_logic_1164.ALL; ENTITY hb3 IS
PORT(d:IN STD_LOGIC_VECTOR(3 DOWNTO 0); out1:OUT STD_LOGIC ); END hb3;
21
《EDA技术及应用》实验指导书
ARCHITECTURE a OF hb3 IS BEGIN process begin
If d>\ Then out1<='0'; Else out1<='1'; End if; end process; END a;
LIBRARY ieee;
USE ieee.std_logic_1164.ALL; ENTITY hb4 IS
PORT(d:IN STD_LOGIC_VECTOR(3 DOWNTO 0); out1:OUT STD_LOGIC ); END hb4;
ARCHITECTURE a OF hb4 IS BEGIN process begin
If d=\ Then out1<='0'; Else out1<='1'; End if; end process; END a;
LIBRARY ieee;
USE ieee.std_logic_1164.ALL; ENTITY sel4 IS
PORT(d1,d2,d3,d4:IN STD_LOGIC_VECTOR(3 DOWNTO 0); sel:IN STD_LOGIC_VECTOR(2 DOWNTO 0);
q:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END sel4;
ARCHITECTURE a OF sel4 IS BEGIN process begin
22
《EDA技术及应用》实验指导书
CASE sel IS
WHEN \ WHEN \ WHEN \ WHEN \ WHEN \ WHEN \ WHEN \ WHEN \ WHEN others=>NULL; END CASE; end process; END a;
实验七 数字钟实验
一、实验目的
1、掌握多位计数器相连的设计方法。
2、掌握十进制、六十进制、二十四进制计数器的设计方法。 3、继续巩固多位共阴极扫描显示数码管的驱动及编码。 4、了解和掌握分频电路实现的方法。 5、掌握扬声器的驱动。 6、LED 灯的花样显示。
7、掌握FPGA技术的层次化设计方法。
二、实验主要仪器与设备
1、输入:三个按键开关(清零,调小时,调分钟)。
2、输出:8个LED灯;扬声器;8位七段扫描共阴极数码显示管。 3、主芯片:EP1K10TC100-3。
三、实验内容及原理
在同一块FPGA芯片EP1K10TC100-3上集成了如下电路模块: 1、时钟计数:秒——60进制BCD码计数;分——60进制BCD码计数;
23
《EDA技术及应用》实验指导书
时——24进制BCD码计数;同时整个计数器有清零,调分,调时功能。在接近整点时能提供报时信号。
2、有驱动8位七段共阴极扫描数码管的片选驱动信号输出和七段字行译码输出。编码和扫描可参照“实验四”。
3、扬声器在整点时有报时驱动信号产生。
4、LED灯按个人要求在整点时有花样显示信号产生。
四、预习要求
做实验前必须认真复习数字电路中计数器、分频电路、数码驱动,以及硬件VHDL编程等相关内容。
五、实验步骤
1、利用VHDL文本输入法设计second、minute、hour、alert、seltime、DELED模块,并生成相应的元件符号。
2、利用原理图设计输入法画图7-1。 3、选择芯片ACEX1K EP1K10TC100-3。 4、编译。 5、仿真。
6、管脚分配,并再次编译。 7、实验连线。
8、编程下载,观察实验结果。
24
《EDA技术及应用》实验指导书
图7-1
原理图如图7-1,各模块分别为:各种进制的计数及时钟控制模块;扫描分时显示,译码,分频模块;彩灯,扬声器编码模块。各模块都是由VHDL语言编写。
六、实验连线
输入接口:
1、代表清零,调时,调分信号RESET,SETHOUR,SETMIN的管脚分别连接按键开关。
2、代表计数时钟信号CLK和扫描时钟信号CKDSP的管脚分别同1HZ时钟源和32HZ(或更高)时钟源相连。 输出接口:
1、代表扫描显示的驱动信号管脚SEL2,SEL1,SEL0和A….G参照实验四与数码管的信号连接点连接;
2、代表扬声器的驱动信号的管脚SPEAK同扬声器驱动接口SPEAKER相连;
3、代表花样LED灯显示的信号管脚LAMP0…LAMP2同3个LED灯相连。
25