实验二+09999的计数器电路的设计讲课稿.docx

上传人:b****3 文档编号:4145524 上传时间:2022-11-28 格式:DOCX 页数:9 大小:237.75KB
下载 相关 举报
实验二+09999的计数器电路的设计讲课稿.docx_第1页
第1页 / 共9页
实验二+09999的计数器电路的设计讲课稿.docx_第2页
第2页 / 共9页
实验二+09999的计数器电路的设计讲课稿.docx_第3页
第3页 / 共9页
实验二+09999的计数器电路的设计讲课稿.docx_第4页
第4页 / 共9页
实验二+09999的计数器电路的设计讲课稿.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

实验二+09999的计数器电路的设计讲课稿.docx

《实验二+09999的计数器电路的设计讲课稿.docx》由会员分享,可在线阅读,更多相关《实验二+09999的计数器电路的设计讲课稿.docx(9页珍藏版)》请在冰豆网上搜索。

实验二+09999的计数器电路的设计讲课稿.docx

实验二+09999的计数器电路的设计讲课稿

 

实验二:

+0~9999的计数器电路的设计

EDA实验报告

学院(部):

电气与信息工程学院

专业:

电子信息工程

学生姓名:

刘玉文

班级:

电子信息工程1101

学号:

11401700430

指导教师姓名:

谭会生

实验二:

0~9999的计数器电路的设计

1.实验目的

(1)进一步熟悉和掌握QuartusII软件的使用。

(2)进一步熟悉和掌握GW48-CK或其他EDA实验开发系统的使用。

(3)学习和掌握VHDL进程语句和元件例化语句的使用。

2.实验内容

设计并调试好一个技术范围为0~9999的4位十进制计数器电路CNT9999,并用GW48-CK或其他EDA实验开发系统(可选用的芯片为ispLSI1032E-PLCC84或EPM7128S-PL84或XCS05/XCS10-PLCC84芯片)进行硬件验证。

3.实验条件

(1)开发软件:

QuartusII8.0。

(2)实验设备:

GW48-CKEDA实验开发系统。

(3)拟用芯片:

EPM7128S-PL84。

4.实验设计

(1)系统原理框图

为了简化设计并便于显示,本计数器电路CNT9999的设计分为两个层次,其中底层电路包括四个十进制计数器模块CNT10,再由这四个模块按照图所示的原理框图构成顶层电路CNT9999。

CNT9999电路原理框图

(2)VHDL程序

计数器CNT9999的底层和顶层电路均采用VHDL文本输入,有关VHDL程序如下。

1)CNT10的VHDL源程序:

--CNT10.VHD

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

USEIEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITYCNT10IS

PORT(CLK:

INSTD_LOGIC;

CLR:

INSTD_LOGIC;

ENA:

INSTD_LOGIC;

CQ:

OUTSTD_LOGIC_VECTOR(3DOWNTO0);

CO:

OUTSTD_LOGIC);

ENDENTITYCNT10;

ARCHITECTUREARTOFCNT10IS

SIGNALCQI:

STD_LOGIC_VECTOR(3DOWNTO0);

BEGIN

PROCESS(CLK,CLR,ENA)IS

BEGIN

IFCLR='1'THENCQI<="0000";

ELSIFCLK'EVENTANDCLK='1'THEN

IFENA='1'THEN

IFCQI="1001"THEN

CQI<="0000";

ELSE

CQI<=CQI+'1';

ENDIF;

ENDIF;

ENDIF;

ENDPROCESS;

PROCESS(CLK,CQI)IS

BEGIN

IFCLK'EVENTANDCLK='1'THEN

IFCQI<"1001"THEN

CO<='0';

ELSE

CO<='1';

ENDIF;

ENDIF;

ENDPROCESS;

CQ<=CQI;

ENDARCHITECTUREART;

2)CNT9999的VHDL源程序:

--CNT9999.VHD

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

ENTITYCNT9999IS

PORT(CLK:

INSTD_LOGIC;

CLR:

INSTD_LOGIC;

ENA:

INSTD_LOGIC;

DOUT:

OUTSTD_LOGIC_VECTOR(15DOWNTO0));

ENDENTITYCNT9999;

ARCHITECTUREARTOFCNT9999IS

COMPONENTCNT10IS

PORT(CLK,CLR,ENA:

INSTD_LOGIC;

CQ:

OUTSTD_LOGIC_VECTOR(3DOWNTO0);

CO:

OUTSTD_LOGIC);

ENDCOMPONENTCNT10;

SIGNALS0,S1,S2,S3:

STD_LOGIC;

BEGIN

U0:

CNT10PORTMAP(CLK,CLR,ENA,DOUT(3DOWNTO0),S0);

U1:

CNT10PORTMAP(S0,CLR,ENA,DOUT(7DOWNTO4),S1);

U2:

CNT10PORTMAP(S1,CLR,ENA,DOUT(11DOWNTO8),S2);

U3:

CNT10PORTMAP(S2,CLR,ENA,DOUT(15DOWNTO12),S3);

ENDARCHITECTUREART;

(3)仿真波形设置

本设计包括两个层次,因此先进行底层的十进制计数器CNT10的仿真,再进行顶层CNT9999的仿真。

如图是CNT10仿真输入设置及可能结果估计图。

同理可进行CNT9999仿真输入设置及可能结果估计。

CNT10的时序仿真结果

CNT9999的时序仿真结果

5.实验总结

通过本次实验,对QuartusII软件的基本操作有了更深层次的认识,并能初步熟练和掌握他的运用。

文件名与实体名要相对应,输入源程序时要仔细,时序仿真时,要先保存仿真文件,最后才能对其进行相应地仿真操作。

计数动态扫描显示电路

1.实验目的

(1)学习QuartusII8.0软件的基本使用方法。

(2)学习GW48-CKEDA实验开发系统的基本使用方法。

(3)了解VHDL程序中数据对象、数据类型、顺序语句和并行语句的综合应用。

2.实验内容

设计并调试一个由两个4位二进制并行加法器级联而成的8位二进制并行加法器。

3.实验内容

(1)开发软件:

QuartusII8.0。

(2)实验设备:

GW48-CKEDA实验开发系统。

(3)拟用芯片:

EPM7128S-PL84。

4.实验设计

(1)系统原理框图

为了简化设计并便于显示,该计数动态扫描显示电路分为两个层次,底层电路包括四个十进制计数器模块CNT10、动态显示控制信号产生模块CTRLS、数据动态显示控制模块DISPLAY等六个模块,再由这六个模块按照图所示的原理图构成顶层电路DTCNT9999。

(2)VHDL程序

十进制计数器模块CNT10的VHDL程序见0~9999的计数器电路,其余两个模块的VHDL程序如下:

1)CTRLS的VHDL源程序

--CTRLS.VHD

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

USEIEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITYCTRLSIS

PORT(CLK:

INSTD_LOGIC;

SEL:

OUTSTD_LOGIC_VECTOR(2DOWNTO0));

ENDENTITYCTRLS;

ARCHITECTUREARTOFCTRLSIS

SIGNALCNT:

STD_LOGIC_VECTOR(2DOWNTO0);

BEGIN

PROCESS(CLK)IS

BEGIN

IFCLK'EVENTANDCLK='1'THEN

IFCNT="111"THEN

CNT<="000";

ELSE

CNT<=CNT+'1';

ENDIF;

ENDIF;

ENDPROCESS;

SEL<=CNT;

ENDARCHITECTURE;

2)DISPLAY的VHDL源程序:

--DISPLAY.VHD

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

USEIEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITYDISPLAYIS

PORT(SEL:

INSTD_LOGIC_VECTOR(2DOWNTO0);

DATAIN:

INSTD_LOGIC_VECTOR(15DOWNTO0);

COM:

OUTSTD_LOGIC_VECTOR(7DOWNTO0);

--LEDW:

OUTSTD_LOGIC_VECTOR(2DOWNTO0);

SEG:

OUTSTD_LOGIC_VECTOR(7DOWNTO0));

ENDENTITY;

ARCHITECTUREARTOFDISPLAYIS

SIGNALDATA:

STD_LOGIC_VECTOR(3DOWNTO0);

BEGIN

P1:

PROCESS(SEL)IS

BEGIN

CASESELIS

WHEN"000"=>COM<="11111110";

WHEN"001"=>COM<="11111101";

WHEN"010"=>COM<="11111011";

WHEN"011"=>COM<="11110111";

WHEN"100"=>COM<="11101111";

WHEN"101"=>COM<="11011111";

WHEN"110"=>COM<="10111111";

WHEN"111"=>COM<="01111111";

WHENOTHERS=>COM<="11111111";

ENDCASE;

ENDPROCESSP1;

--LEDW<=SEL;

P2:

PROCESS(SEL,DATAIN)

BEGIN

CASESELIS

WHEN"000"=>DATA<=DATAIN(3DOWNTO0);

WHEN"001"=>DATA<=DATAIN(7DOWNTO4);

WHEN"010"=>DATA<=DATAIN(11DOWNTO8);

WHEN"011"=>DATA<=DATAIN(15DOWNTO12);

WHENOTHERS=>DATA<="0000";

ENDCASE;

CASEDATAIS

WHEN"0000"=>SEG<="00111111";

WHEN"0001"=>SEG<="00000110";

WHEN"0010"=>SEG<="01011011";

WHEN"0011"=>SEG<="01001111";

WHEN"0100"=>SEG<="01100110";

WHEN"0101"=>SEG<="01101101";

WHEN"0110"=>SEG<="01111101";

WHEN"0111"=>SEG<="00000111";

WHEN"1000"=>SEG<="01111111";

WHEN"1001"=>SEG<="01101111";

WHENOTHERS=>SEG<="00000000";

ENDCASE;

ENDPROCESSP2;

ENDARCHITECTURE;

(3)仿真波形设置

0~9999计数的时序仿真结果

5.实验总结

经过本次实验,对QuartusII有了更深入的了解,以及学会了更多操作。

用原理图的方法输入顶层电路时,要先生成底层模块的电路图;时序仿真时,要注意输入信号的合适设置。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1