实验四 VHDL设计有时钟使能的两位十进制计数器.docx
- 文档编号:28306261
- 上传时间:2023-07-10
- 格式:DOCX
- 页数:17
- 大小:600.35KB
实验四 VHDL设计有时钟使能的两位十进制计数器.docx
《实验四 VHDL设计有时钟使能的两位十进制计数器.docx》由会员分享,可在线阅读,更多相关《实验四 VHDL设计有时钟使能的两位十进制计数器.docx(17页珍藏版)》请在冰豆网上搜索。
实验四VHDL设计有时钟使能的两位十进制计数器
实验四VHDL设计有时钟使能的两位十进制计数器
一、实验目的
1.进一步掌握基本组合逻辑电路的实现方法;
2.进一步了解VHDL顺序语句的设计方法;
3.学习用if语句和case语句设计译码器的实现方法;
4.掌握时序逻辑电路的实现方法;
5.进一步了解VHDL并行语句的设计方法;
6.学习用process并行语句和串行语句实现计数器的方法;
7.进一步了解VHDL元件例化的设计方法;
8.进一步了解图形输入设计方法;
二、实验内容
1.用VHDL设计法设计CT7448BCD七段显示译码器。
VHDL文件编辑结束后,以CT7448.VHD为文件名,保存,并编辑波形,进行仿真,验证设计的电路。
执行“FILE”菜单的“GreateDefaultSymbol”命令,为CT7448生成元件符号,作为共享文件。
2.用VHDL设计法设计有时钟使能的两位十进制计数器。
VHDL文件编辑结束后,以counter8.VHD为文件名,保存,并编辑波形,进行仿真,验证设计的电路。
执行“FILE”菜单的“GreateDefaultSymbol”命令,为有时钟使能的两位十进制计数器生成元件符号,作为共享文件。
3.将前面实验内容生成的符号图,以图形输入方式新建一个顶层文件,通过连线,完成实验。
三、实验步骤
1.建立工程
2、选择StratixEP1S10F484C5芯片,
3、创建VHDL文件
4、输入BCD七段显示译码器程序
libraryieee;
useieee.std_logic_1164.all;
entityCT7448BCD_ljjis
port(a,b,c,d:
instd_logic;
ltn,rbin,bin:
instd_logic;
oa,ob,oc,od,oe,of1,og,rbon:
outstd_logic);
endCT7448BCD_ljj;
architectureljj_7448ofCT7448BCD_ljjis
begin
process(bin)
variablei:
std_logic_vector(3to0);
variableo:
std_logic_vector(6to0);
begin
i(0):
=a;
i
(1):
=b;
i
(2):
=c;
i(3):
=d;
if(bin='1')then
caseiis
when"0000"=>o:
="0111111";
when"0001"=>o:
="0000110";
when"0010"=>o:
="1011011";
when"0011"=>o:
="1001111";
when"0100"=>o:
="1100110";
when"0101"=>o:
="1101101";
when"0110"=>o:
="1111101";
when"0111"=>o:
="0100111";
when"1000"=>o:
="1111111";
when"1001"=>o:
="1101111";
whenothers=>o:
="0000000";
endcase;
if(ltn='0')then
o:
="1111111";
endif;
if(rbin='0'andi="0000")then
o:
="0000000";
endif;
else
o:
="1000000";
endif;
oa<=o(0);
ob<=o
(1);
oc<=o
(2);
od<=o(3);
oe<=o(4);
of1<=o(5);
og<=o(6);
endprocess;
endljj_7448;
5、设置顶层实体名
6、进行综合编译
7、新建波形文件
8、导入引脚
9.生成网表
10、进行功能仿真
分析波形图可知结果正确。
11、生成元件执行“File”菜单下的“GreateSymbolFilesForCurrentFiles”
12、再进行下一个设计,新建VDH文件
13、输入两位十进制计数器的程序
LIBRARYieee;
USEieee.std_logic_1164.ALL;
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITYCOUNTER8_ljjIS
PORT(ENA,CLK,CLR:
INSTD_LOGIC;
Q1,Q2:
OUTSTD_LOGIC_VECTOR(3DOWNTO0);
COUT:
OUTSTD_LOGIC);
ENDCOUNTER8_ljj;
ARCHITECTURECOUNTER8OFCOUNTER8_ljjIS
BEGIN
PROCESS(ENA)
VARIABLEH:
STD_LOGIC_VECTOR(3DOWNTO0);
VARIABLEL:
STD_LOGIC_VECTOR(3DOWNTO0);
BEGIN
IFCLR='1'THEN
H:
="0000";
L:
="0000";
ELSIF(ENA='1')THEN
IF(CLK'EVENTANDCLK='1')THEN
IFL="1111"THEN
L:
="0000";
H:
=H+1;
IFH="1111"THEN
H:
="0000";
COUT<='1';
ENDIF;
ELSE
L:
=L+1;
ENDIF;
ENDIF;
ENDIF;
Q1<=H;
Q2<=L;
ENDPROCESS;
ENDCOUNTER8
14、设置顶层文件Assignments->Setting
16、进行综合编译
17、新建波形文件
19、导入引脚
18、设置仿真文件
20、进行波形仿真
由波形图可知结果正确。
21、生成元件
22、新建原理图文件
23、导入新建的元件,连线
24进行综合编译
25、新建波形仿真文件
26、设置引脚
27、生成网表
28、功能仿真
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验四 VHDL设计有时钟使能的两位十进制计数器 实验 VHDL 设计 时钟 十进制 计数器
![提示](https://static.bdocx.com/images/bang_tan.gif)