您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 酒店餐饮 > EDA实验报告-实验3计数器电路设计
暨南大学本科实验报告专用纸课程名称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+PLUSII中使用内建的74XX库选择逻辑器件构成计数器电路,并且结合使用VHDL语言设计转换模块与接口模块,最后将74XX模块与自设计模块结合起来形成完整的计数器电路。并借用前面设计的数码管显示模块显示计数结果。◆74161构成8位二进制同步计数器(程序为T3-1)◆七、原理图◆8位二进制同步计数器原理图(程序为T3-1)VCCCKDSPINPUTVCCRESETINPUTVCCCKCNTINPUTSEL0OUTPUTaOUTPUTbOUTPUTcOUTPUTdOUTPUTeOUTPUTfOUTPUTgOUTPUTDA[7..0]OUTPUTPRNCLRNTQTFFinst2d_in[3..0]abcdefgxdeledinst3D_IN[7..0]SELD_OUT[3..0]XSH8_4inst4VCCVCCCLKCLRENQAQBQCQDRCOCNT4instCLKCLRENQAQBQCQDRCOCNT4inst8DA[7..0]DA[0]DA[1]DA[2]DA[3]DA[4]DA[5]DA[6]DA[7]模块说明:采用了两个74161计数器,一个用来作为低位计数,另一个作为高位计数器。数据总线开关(4位二路开关)模块用于将计数器输出的数据分路切换为LED数码管显示所需要的数据格式。字形码转换模块调用前面实验所设计的模块。八、实验电路连线与使用操作A:为独立扩展下载板上第86脚,应接“数码管段位引线”接线组“KPL_AH”的AB:为独立扩展下载板上第87脚,应接“数码管段位引线”接线组“KPL_AH”的BC:为独立扩展下载板上第88脚,应接“数码管段位引线”接线组“KPL_AH”的CD:为独立扩展下载板上第89脚,应接“数码管段位引线”接线组“KPL_AH”的D低4位计数器高4位计数器字形码转换触发信号数据总线开关LED数码管显示计数器2时钟源1计数器1进位时钟源24位二路开关E:为独立扩展下载板上第90脚,应接“数码管段位引线”接线组“KPL_AH”的EF:为独立扩展下载板上第92脚,应接“数码管段位引线”接线组“KPL_AH”的FG:为独立扩展下载板上第93脚,应接“数码管段位引线”接线组“KPL_AH”的GSEL0:为独立扩展下载板上第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=160x时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=160x时sel的值在’0’和‘1’之间不断变化,表明这个时间段选中二个数码管,并显示为“16”。其他状态下计数时钟产生的显示结果值类同。另外第一个timebar体现了同步计数功能,当CKCNT为上升沿时计数器加1。第4个timebar体现异步复位功能,当RESET为0时立刻复位重新开始计算。结论:仿真结果达到实验要求。下载硬件调试结果:顶层文件原理图:VCCCKDSPINPUTVCCRESETINPUTVCCCKCNTINPUTSEL0OUTPUTaOUTPUTbOUTPUTcOUTPUTdOUTPUTeOUTPUTfOUTPUTgOUTPUTDA[7..0]OUTPUTCOUNTERCLRNCLKENPLDNADENTBCQDQCQBQARCO74161instCOUNTERCLRNCLKENPLDNADENTBCQDQCQBQARCO74161inst1PRNCLRNTQTFFinst2d_in[3..0]abcdefgxdeledinst3D_IN[7..0]SELD_OUT[3..0]XSH8_4inst4VCCVCCVCCDA[0]DA[1]DA[2]DA[3]DA[4]DA[5]DA[6]DA[7]DA[7..0]PIN_86PIN_87PIN_88PIN_89PIN_90PIN_92PIN_93PIN_69PIN_68PIN_70PIN_79仿真结果:九、实验心得通过实验,熟悉了quartus的硬件仿真步骤,熟悉了分模块仿真的作用和如何在仿真图上体现出该模块要实现的所有功能,熟悉8位二进制同步计数器使用操作。实验三问题1、74161计数器是什么功能的计数器,用专业的词语形容答:4位16进制异步复位同步置数计数器2、XSH8_4的功能?答:4位2选1多路选择器,从8位输入中选择高4位或低4位输出3、XDELED模块功能?答:段译码模块,把输入的4位2进制数译码为数码管的段选信号。4、TFT是什么模块?作用是什么?答:T触发器,输入上升沿则输出翻转。5、74161里的引脚含义以及为什么这么连接,(ABCD哪个引脚是高位,哪个引脚是低位?ENT、ENP作用,ENT\ENP\LDN为什么接高电平VCC?而第二个74161为什么接RCO?为什么不把RCO进位脉冲接到时钟CLK引脚?答:LDN:控制是否输入预置数的引脚。ABCD:预置数输入引脚。D为高位ENT、ENP:使能端,当ENT、ENP同时为高电平时才能计数,一高一低,保持计数不变。ENT\ENP\LDN接高电平VCC:保持74161计数状态,而且不允许置数。第二个74161接RCO原因:当低四位的计数进位时,高四位的计数器就计数加1。不接CLK的原因是为了实现两个计数器实现同步计数功能。6、74161里的RCO的高电平时间有没可能跨越两个CKL时钟周期,为什么?答:当第一个计数器计数到”1111”时RCO从0变成1的时候,当下一个时钟上升沿时,RCO又变为0,它的宽度只有一个脉冲的宽度。不可能跨越2个clk。7、74161是在1111的时候产生进位信号还是在0000的时候产生进位信号?为什么?答:在1111的时候产生进位信号,因为数字电路是有延时的,在1111时产生进位时才能保证低四位在下一个0000时高四位同时加1。8.DA[7..0]的输入怎么是断开的?输入从哪里来?答:输入从两个74161的四个引脚来,把它们的引脚输出的线的名保持一致就行。这是一种通用的标号方式,为了使线的复杂度降低,使用不能乱命名,必须与输入的一致。9三个电路里均有T触发器,作用?答:每一个上升沿的间隔固定了,得出来的0和1的占空比也会固定。使得数码管第1位和第二位的占用时间一样长。10、第二个电路图芯片7439
本文标题:EDA实验报告-实验3计数器电路设计
链接地址:https://www.777doc.com/doc-2910976 .html