EDA实验报告材料-实验3计数器电路设计

更新时间:2023-05-05 06:30:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

暨南大学本科实验报告专用纸

课程名称EDA实验成绩评定

实验项目名称计数器电路设计指导教师郭江陵

实验项目编号03 实验项目类型验证实验地点B305

学院电气信息学院系专业物联网工程

组号:A6

一、实验前准备

本实验例子使用独立扩展下载板EP1K10_30_50_100QC208(芯片为EP1K100QC208)。EDAPRO/240H实验仪主板的VCCINT跳线器右跳设定为3.3V;EDAPRO/240H实验仪主板的VCCIO跳线器组中“VCCIO3.3V”应短接,其余VCCIO均断开;独立扩展下载板“EP1K10_30_50_100QC208”的VCCINT跳线器组设定为 2.5V;独立扩展下载板“EP1K10_30_50_100QC208”的VCCIO跳线器组设定为3.3V。请参考前面第二章中关于“电源模块”的说明。

二、实验目的

1、了解各种进制计数器设计方法

2、了解同步计数器、异步计数器的设计方法

3、通过任意编码计数器体会语言编程设计电路的便利

三、实验原理

时序电路应用中计数器的使用十分普遍,如分频电路、状态机都能看到它的踪迹。计数器有加法计数器、可逆计数器、减法计数器、同步计数器等。利用MAXPLUSII已建的库74161、74390分别实现8位二进制同步计数器和8位二——十进制异步计数器。输出显示模块用VHDL实现。

四、实验容

1、用74161构成8位二进制同步计数器(程序为T3-1);

2、用74390构成8位二——十进制异步计数器(程序为T3-2);

3、用VHDL语言及原理图输入方式实现如下编码7进制计数器(程序为T3-3):

0,2,5,3,4,6,1

五、实验要求

学习使用Altera建库所封装的器件与自设计功能相结合的方式设计电路,学习计数器电路的设计。

六、设计框图

首先要熟悉传统数字电路中同步、异步计数器的工作与设计。在MAX+PLUS II中使用建的74XX库选择逻辑器件构成计数器电路,并且结合使用VHDL语言设计转换模块与接口模块,最后将74XX模块与自设计模块结合起来形成完整的计数器电路。并借用前面设计的数码管显示模块显示计数结果。

◆74161构成8位二进制同步计数器(程序为T3-1)

七、原理图

◆ 8位二进制同步计数器原理图 (程序为T3-1)

模块说明: 采用了两个74161计数器,一个用来作为低位计数,另一个作为高位计数器。数据总线开关(4位二路开关)模块用于将计数器输出的数据分路切换为LED 数码管显示所需要的数据格式。字形码转换模块调用前面实验所设计的模块。

八、实验电路连线

与使用操作

A :为独立扩展下载板上第86脚,应接“数码管段位引线”接线组“KPL_AH ”的A

B :为独立扩展下载板上第87脚,应接“数码管段位引线”接线组“KPL_AH ”的B

C :为独立扩展下载板上第88脚,应接“数码管段位引线”接线组“KPL_AH ”的C

D :为独立扩展下载板上第89脚,应接“数码管段位引线”接线组“KPL_AH ”的D

E:为独立扩展下载板上第90脚,应接“数码管段位引线”接线组“KPL_AH”的E F:为独立扩展下载板上第92脚,应接“数码管段位引线”接线组“KPL_AH”的F G:为独立扩展下载板上第93脚,应接“数码管段位引线”接线组“KPL_AH”的G SEL0:为独立扩展下载板上第69脚,为数码管的位选扫描信号,接信号接线组“DS1-8A(T)”的SS0引线插孔。SS1、SS2接地(即在电源引线插孔组GND孔处)。

RESET:为独立扩展下载板上第68脚,应接“多功能复用按键F1-F12”信号接线组“F1_12(T)”的F9~F12的任意一个插孔

CKCNT:为独立扩展下载板上第70脚,应接时钟信号源接线组“CLOCK(T)”的“FRQ (18~21)”引线插孔

CKDSP:为独立扩展下载板上第79脚即GCLK1,应接时钟信号接线组“CLOCK(T)”的“FRQ(11)”引线插孔

备注:程序T3-1、T3-2、T3-3的插线均相同,其中T3-3中CLK与T3-1的CKCNT定义引脚相同。

使用操作:

◆8位二进制同步计数器使用操作demo3top:

程序下载以后,在“动态键盘显示模块”的二个数码管DS8.7A上显示计数值,围为00~FFH的二位十六进制数,并循环递增计数。

九、波形仿真分析

4为2路开关选择器模块仿真结果

输入信号:sel:高低四位选择控制为,高电平选低四位,低电平选高四位

D_IN :输入8位数

输出信号:D_out:根据选择输出高四位或低四位数

波形分析结果

如上图在两个timebar之间,sel为高电平输出了D_IN的低四位数,在两个timebar 两边sel为低电平,输出了D_IN的高四位,结果正确。

字行码转换模块仿真结果如下图

输入信号:

D_IN :要显示的4位2进制数

输出信号:

a,b,c,d,e,f,g : 输出数码管段选

波形结果分析

在上图timebar处,输入的4位2进制数是5输出的段码是”1101101”,即共阴

数码管对应的数值为5。仿真结果正确。

◆8位二进制同步计数器仿真结果demo3top:

输入信号:

RESET:清零信号,低电平下重新开始计数。

CKDSP:动态显示数码管扫描频率设定。

CKCNT:计数时钟信号。

中间信号量:

DA[7..0]:用于显示计数模块输出的中间计数结果。

输出信号:

A~G:数码管7个段位,用于显示计数结果。

波形结果分析:

如图所示,当计数器DA[7..0]输出为“16”时,第2个timebar处对应的数码管的段码为”1111101”,即共阴数码管显示对应的值为6,第3个timebar处对应数码管的段码值为“0000110”,即共阴数码管显示对应的值为1,且在DA = 16 0x时sel的值在’0’ 和‘1’之间

不断变化,表明这个时间段选中二个数码管,并显示为“16”。其他状态下计数时钟产生的显示结果值类同。另外第一个timebar 体现了同步计数功能,当CKCNT为上升沿时计数器加1。第4个timebar体现异步复位功能,当RESET为0时立刻复位重新开始计算。

结论:由上述分析所得结果,完全达到实验所需的要求。

CNT4单独进行仿真结果

输入信号:

EN :使能信号,当EN为高电平时开始计数。

CLK :时钟信号,没一个时钟上升沿,计数加1。

CLR :复位信号,为低电平时,计数复位。

输出信号:

QA,QB, QC, QD : 计数输出4位2进制数信号,QA为第一位。

RCO :进位信号,当计数计到16个数时产生进位,为高电平。

波形结果分析:

第一个timebar,体现了同步计数功能,当clk为上升沿时开始计数。第二个timebar体现进位输出功能,当计数计到“1111”时产生进位,RCO为高电平。第三个timebar体现异步复位功能,CLR信号为低电平时,输出立刻复位为“0000”,第四个timebar体现使能信号只有为高电平时才计数,低电平保持不变。

结论:仿真结果正确。

对“demo3Atop”进行仿真的结果如下:

输入信号:

RESET:清零信号,低电平下重新开始计数。

CKDSP:动态显示数码管扫描频率设定。

CKCNT:计数时钟信号。

中间信号量:

DA[7..0]:用于显示计数模块输出的中间计数结果。

输出信号:

A~G:数码管7个段位,用于显示计数结果。

波形结果分析:

如图所示,当计数器DA[7..0]输出为“16”时,第3个timebar处对应的数码管的段码为”1111101”,即共阴数码管显示对应的值为6,第2个timebar处对应数码管的段码值为“0000110”,即共阴数码管显示对应的值为1,且在DA = 16 0x时sel的值在’0’ 和‘1’之间不断变化,表明这个时间段选中二个数码管,并显示为“16”。其他状态下计数时钟产生的显示结果值类同。另外第一个timebar 体现了同步计数功能,当CKCNT为上升沿时计数器加1。第4个timebar体现异步复位功能,当RESET为0时立刻复位重新开始计算。

结论:仿真结果达到实验要求。

下载硬件调试结果:

顶层文件原理图:

本文来源:https://www.bwwdw.com/article/1b1e.html

Top