eda2实验报告.docx
《eda2实验报告.docx》由会员分享,可在线阅读,更多相关《eda2实验报告.docx(19页珍藏版)》请在冰豆网上搜索。
eda2实验报告
南京理工大学
EDA设计(II)
实验报告
摘要
本篇报告主要阐述了EDA实验中多功能数字钟的设计制作过程,此多功能数字钟具有计时、校准、保持清零、整点报时、及星期显示等多种功能。
设计过程中采用层次化的设计方法,按功能将数字钟划分为多个模块,最终将各个模块有序组合完成整个设计要求。
其中采用框图设计各功能模块中的数字逻辑电路,在QuartusⅡ7.1中完成模块的功能仿真测试,最终将电路下载CycloneⅢ系列芯片中的EP3C25F324C8芯片中实现数字钟的功能。
关键词多功能数字钟层次化BlockDiagram仿真测试
Abstract
Thisreportmainlyaddressedtheprocessofdesigningthemulti-functionaldigitalclockoftheEDAexperimen.Themulti-functionaldigitalclockhasthefunctionoftiming,calibration,keepingandclearing,thewholepointtimekeeping,andweekdisplay.Thewholedesigningprogressusedthemethodofhierarchical.Accordingtothefunctions,thedigitialclockwasdividedintoseveralmodules,eventuallycompletethedesignrequirementswiththecombinationofeachmodule.ItmustbementionedthattheBlockDiagramwasusedtodescribethedigitallogiccircuits.ThefunctionalsimulationwascompletedundertheenvironmentofQuartusⅡ7.1.Atlast,itwasdownladedtoEP3C25F324C8chipofCycloneⅢtoachievethefunctionofmulti-functionaldigitalclock.
Keywordsmulti-functionaldigitalclockHierarchicalBlockDiagramsimulation
目录
一、设计要求说明…………………………………………………..4
二、方案论证………………………………………………………..4
三、子模块设计原理……………………………………………….5
3.1脉冲发生电路………………………………………………….5
3.2校分计时电路………………………………………………….9
3.3报时电路……………………………………………………...14
3.4译码显示电路………………………………………………...16
3.5清零、保持功能………………………………………………18
3.6总电路………………………………………………………...18
3.7引脚设计……………………………………………………...19
四、调试…………………………………………………………..19
五、编程下载……………………………………………………..19
六、结论………………………………………………………….20
七、附加电路…………………………………………………….20
八、实验感想…………………………………………………….20
参考文献………………………………………………………….21
多功能数字钟
一、设计要求说明
利用QuartusII软件设计一个数字钟,并下载到SmartSOPC实验系统中。
设计一个数字计时器,可以完成00:
00:
00到23:
59:
59的计时功能,并在控制电路的作用下具有保持、清零、快速校时、快速校分、整点报时等功能。
二、方案论证
本实验采用层次化的设计方法。
将电路分为脉冲发生电路、计时电路、报时电路、译码显示电路、校分电路、清零电路等六个功能模块,分别对这六个功能模块进行设计,并进行独立模拟仿真与调试,最后合理连接各个模块,完成整体电路的设计,这样的设计方法有利于降低设计的复杂度,而且有利于分析问题的原因及解决问题。
其整体框图如下图所示。
脉冲发生电路是将48Mhz脉冲信号分成实验所需的各种频率的脉冲信号。
计时电路是用模24和模60计数电路进行连接,在脉冲信号作用下不断计数。
译码显示电路使用的是动态显示的方式,只使用一片数码管译码器外加一些较高频率的时钟控制电路来实现数码管的“同时”显示功能。
整点报时电路利用一些简单门电路实现两种不同频率的报时。
清零开关作用在计数电路的清零端,使数码管显示为零。
校时校分开关使时、分计数电路不受秒计数电路的进位信号控制,而选通另一个脉冲信号进行控制。
三、各子模块设计原理
3.1脉冲发生电路
本次试验中需要多种不同频率的时钟,如计时电路的同步时钟频率为1Hz,校时校分电路需要2Hz的时钟频率,报时、动态显示电路中需要1kHz、500Hz的时钟频率,而系统时钟由芯片EP3C25F324C8提供的频率高达48MHz,所以根据需要设计了48、24、1000、2分频器。
具体分步电路如下所示:
3.1.1二分频电路
二分频电路由一个D触发器构成,原理图如下:
二分频器仿真波形如下图:
3.1.2二十四分频电路
3分频电路由74160构成一个模3计数器,原理图如下:
8分频电路由三个2分频电路串联而成,原理图如下:
24分频电路由3分频器和8分频器串联而成,原理图如下:
24分频电路仿真波形如下:
3.1.3四十八分频电路
48分频电路由24分频器和2分频器串联而成,原理图如下:
48分频电路仿真波形如下:
3.1.4一千分频电路
10分频电路由74163构成一个模10计数器,并实现占空比为50%,原理图如下:
10分频电路仿真波形如下:
1000分频电路由三个10分频器串联而成,原理图如下:
3.1.5脉冲发生电路总图
封装图如下:
封装图各引脚说明:
Input:
fenpin_in:
接时钟信号输入端(即48MHZ)
output:
1kHZ:
引出1000HZ信号
500HZ:
引出500HZ信号
2HZ:
引出2HZ信号
1HZ:
引出1HZ信号
3.2校分计时电路
校分计时电路由计时电路和校分校时电路组合而成。
计时电路由一个模7(星期位)、一个模24和两个模60计数电路构成,由1Hz信号驱动采用同计数方式,即可完成0:
00:
00:
00到6:
23:
59:
59的计时。
校分电路由2Hz信号驱动,由开关控制(1正常计数,0快速校分),屏蔽进位信号,实现校分功能。
3.2.1模60计数电路
运用两个74160BCD码计数电路构成模60计数电路。
当两个使能端ENT和ENP同时接高电平且清零端无效时,才能正常计数。
将低位的进位信号RCO送入高位的使能端ENT,而低位的使能端ENT接高电平。
同时将低位和高位的另一个使能端ENP连到一起作为模60计数电路的使能端EN,通过控制这一使能端即可以控制模60计数电路的是否计数。
当计数为59时,通过给置数LDN一个低电平将输出置00。
最后将两个74160的清零端连到一起用于后面的清零电路。
模60计数电路的原理框图如下:
仿真波形如下:
3.2.2模24计数电路
模24计数电路设计原理与模60计数电路相同,也是由两个74160BCD码计数电路构成。
将低位和高位的使能端ENP连到一起作为模24计数电路的使能端,控制其是否计数。
最后将两个74160的清零端连到一起用于后面的清零电路。
模24的原理框图如下:
仿真波形如下:
3.2.3模7计数电路
模7计数电路由一个74160BCD码计数电路构成,四位输入端由高到低置数为0000,输出端由0到6循环计数。
模7的原理框图如下:
仿真波形如下:
3.2.4校分电路
校分电路由几个逻辑门构成。
当输入in为1时,通过逻辑门的分析可得,1HZ输出,即正常计数;当输入in为0时,通过分析可得,2HZ输出,即可实现快速校分的功能。
校分电路原理图如下:
3.2.5校分计时电路总图
校分校时电路的原理就是当开关置于一个状态时,计数器正常计数;当开关至于另一个状态时,低位的进位信号无法送入高位,此时高位使能端恒为高电平,计数器持续计数,当达到预订数字时再将开关置回原状态,计数器又将正常计数。
为了让较位时速度快点,设计在计数器正常计数时钟频率为1Hz,进行较位时时钟频率为2Hz。
具体电路图如下:
计时电路仿真波形如下:
校分电路仿真波形如下:
将正常计时的电路仿真与校分计时的电路仿真对比可以看见,快速校分时,分低位、时低位、星期位不受进位信号影响,均以2Hz频率计数,可确定电路设计正确,可以封装。
封装如下:
封装图各引脚说明:
Input:
RESET:
清零(低电平有效)
HOLD:
保持(低电平有效)
reM:
校分(低电平有效)
reH:
校时(低电平有效)
reD:
校星期(低电平有效)
1Hz:
正常时钟信号输入
2Hz:
校分时钟信号输入
Output:
S0[3..0]:
计时电路秒个位
S1[3..0]:
计时电路秒十位
M0[3..0]:
计时电路分个位
M1[3..0]:
计时电路分十位
H0[3..0]:
计时电路时个位
H1[3..0]:
计时电路时十位
D0[3..0]:
计星期电路
3.3报时电路
整点报时电路要求完成数字钟在每59分53秒、59分55秒、59分57秒时低音报时,在59分59秒时高音报时,这就要求了用1000Hz、500Hz两种信号分别驱动。
在电路设计中,将响铃条件利用卡诺图化简,使用与非门组成逻辑电路实现功能。
59分53秒、59分55秒、59分57秒的处理
首先绘出秒个位的卡诺图。
Q2Q1
Q4Q3
00
01
11
10
00
0
0
1
0
01
0
1
1
0
11
x
x
x
x
10
0
0
x
x
表1卡诺图
由卡诺图可知,3、5、7秒的控制信号为
。
59分59秒的处理
9即为‘1001’,只用将最高位和最低位相与即可。
原理图如下:
封装如下:
封装图各引脚说明:
Input:
500Hz:
59秒高音报时驱动
1KHz:
53&55&57秒低音响铃驱动
ml[1]:
计时电路秒低位第1位
ml[2]:
计时电路秒低位第2位
ml[3]:
计时电路秒低位第3位
ml[4]:
计时电路秒低位第4位
mh[1]:
计时电路秒高位第1位
mh[3]:
计时电路秒高位第3位
fh[1]:
计时电路分高位第1位
fh[3]:
计时电路分高位第3位
fl[1]:
计时电路分低位第1位
fl[4]:
计时电路分低位第4位
output:
Buzzer:
响铃输出
3.4译码显示电路
译码显示电路由模7电路、24选4电路集成。
模7计数器(在计时电路中已设计封装)用来产生扫描信号,数据选择器分时复用,用一个七段显示译码器来完成多位数码的显示,为的是显示清楚并不为人眼察觉出复用,需要一个合理的显示扫描频率,因此选用1KHz频率扫描;另一部分为数据选择和显示译码电路,通过一个七段显示译码器提供七个数码管的显示驱动,位码的选择与数据相对应,这里要求译码器在选择一路数据的同时产生为选信号。
通过以上两部分就实现译码显示的设计要求。
3.4.124选4电路
24选4电路由4个8选1数据选择器构成,电路图如下:
3.4.2译码显示电路总图
译码显示电路再加上模7计数器,3线-8线译码器实现位选功能,译码显示器实现7段管显示功能,原理图如下:
仿真波形如下:
封装如下:
封装图引脚说明:
Input:
Wk[3..0]:
星期位输入端
HL[3..0]:
时高位输入端
HO[3..0]:
时低位输入端
ML[3..0]:
分高位输入端
MO[3..0]:
分低位输入端
SL[3..0]:
秒高位输入端
SO[3..0]:
秒低位输入端
1KHz:
信号驱动
Output:
Y[6..0]:
七位数码管位选
LEG[6..0]:
七段数码管段选
3.5清零、保持功能
数字钟的这两种功能,可利用已经通过去抖动处理的开关去控制计数器本身所带的使能端和清零端来实现。
3.6总电路
把之前设计的模块连接起来,即构成总电路:
3.7引脚分配
将设计完成的多功能闹钟下载到芯片中,首先要将电路图中的引脚与芯片引脚相对应,如下图所示。
四、调试
选择“Processing->startcompilation”进行全编译,无错误。
五、编程下载
打开实验箱开关,点击QuartusII工具栏中的
按钮,在“Program/configure”列下的复选框中大勾后,点击“Start”按钮往芯片中下载程序。
下载程序完成后,操作实验箱上的各开关,可实现设计的各种功能,实验成功。
六、结论
该程序能实现从00:
00:
00到23:
59:
59的计时,并具有保持、清零、快速校时、快速校分、整点报时、星期显示等功能。
七、附加电路:
由于时间紧张,并未实现更多的附加电路。
但验收完成后我又继续思考了一些。
秒表电路设计
秒表电路的设计,需要原时钟分位为秒位,时位为分为,且要有秒表的保持,清零等功能。
且要设计三显来实现时钟、闹铃、秒表显示的切换。
秒表的主电路与时钟的计时电路一样,但是不需要校时校分控制开关,故校分校时控制电路可以在原有的电路的基础上省略,即使校时校分输入端接地,保留原计时电路的清零与保持。
而时钟输入信号为60Hz。
设计原理图如下:
八、实验小结:
本次EDA实验集数字电路设计、软件仿真与硬件实现于一体,考察了我们数字电路的基础知识、模块化设计、软件应用、软硬件的联系等多方面的能力。
在这过程中自然会暴露许多问题,正是通过解决这一个个暴露出来的问题来提高我们的实践能力,得到学以致用。
(一)实验中遇到的问题及解决方法
1)在做分频电路设计时,由于对整个实验的设计思路没有整体把握,少设计了一个2Hz的频率输出端,在设计到校分校时电路时才发现问题,回头重新返工,重新设计,增加了很多工作量,导致实验进度一下子慢了下来。
这是由于自己在实验前没有好好分析思路造成的。
2)在最后连接总电路图后,下载到实验箱后,我的译码管只能显示六位。
我检查出是星期中模7计数器的问题,我原本的设计思路是实现由1到7计数,但却引出了Y[0]到Y[6]输出端,造成后一位Y[7]输出“跑掉了”,经过改正,译码管能显示7位了。
3)当拨动开关快速校分时,会出现不稳定。
所以应当引入消颤开关组。
(二)实验成果的优缺点本次EDA实验的内容为设计多功能数字钟,我在很好的完成了数字钟基本功能的基础上还加入了星期功能,实现了七位计数。
各功能模块我都做了独立的电路,最终再将各功能模块组合实现多功能数字钟,体现了设计的层次性与条理性,而且还有利于数字钟功能的扩展。
当然实验中还存在很多不足之处,如虽然加入了星期的显示,但并没有将它做的很好。
每在开机星期显示的是0,要在一次进位后星期才能正常的工作,而且也没有考虑到人们生活中的习惯,日常生活中一般不叫星期七,而叫星期日,需要在六进位后显示数字8。
还有一点不足是在有限的时间内没能设计出更多的附加功能,也没来得及去研究VHDL语言代码来完成实验。
(三)实验收获:
这次实验是单人独立完成,虽然可以和同学交流讨论,但也应该有自己的设计思路。
实验后我最大的收获是学会了独立,自己动手排查问题,解决问题,因为每个人的思路不尽相同,只有自己最明白哪里出了问题,而不是如往常一样,几个人一起实验,有问题就等着别人解决,最后也没学到什么东西。
这次实验让我重新回顾的数电知识,学会了使用QuartesII软件,学会有问题自己解决,收获良多。
参考文献
[1]蒋立平.数字逻辑电路与系统设计.北京:
电子工业出版社,2009.
[2]EDA设计实验指导书.南京理工大学电子技术中心,2010.