EDA秒表电路课程设计Word格式文档下载.docx

上传人:b****5 文档编号:19916407 上传时间:2023-01-12 格式:DOCX 页数:13 大小:595.20KB
下载 相关 举报
EDA秒表电路课程设计Word格式文档下载.docx_第1页
第1页 / 共13页
EDA秒表电路课程设计Word格式文档下载.docx_第2页
第2页 / 共13页
EDA秒表电路课程设计Word格式文档下载.docx_第3页
第3页 / 共13页
EDA秒表电路课程设计Word格式文档下载.docx_第4页
第4页 / 共13页
EDA秒表电路课程设计Word格式文档下载.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

EDA秒表电路课程设计Word格式文档下载.docx

《EDA秒表电路课程设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《EDA秒表电路课程设计Word格式文档下载.docx(13页珍藏版)》请在冰豆网上搜索。

EDA秒表电路课程设计Word格式文档下载.docx

三、设计内容及要求

设计内容:

设计一个计时范围为0.01秒到1小时的数字秒表。

具体内容如下:

(1)计时分辨率为0.01秒,所以要设计分频电路或直接获得一个100HZ的时钟信号。

(2)从0.01秒到0.1秒、0.1秒到1秒以及1分到10分,要用到十进制计数器,设计一具有清零、使能端,4位计数输出端和1位计数溢出端的十进制计数器。

(3)从10秒到1分,以及从10分到1小时,要用到六进制计数器。

设计一具有清零、使能端,4位计数输出端和1位计数溢出端的六进制计数器。

(4)根据上述模块完成顶层文件设计,构成完整的计时电路。

要求:

1)根据系统设计要求,采用自顶向下的方法,划分系统主要模块,画出整体设计原理框图。

2)根据工作原理、用硬件描述语言对设计内容实现,列出设计程序清单,给出仿真波形图和调试中存在问题及解决方法。

3)设计内容下载至目标芯片,在EDA的GW48型实验箱进行功能验证。

4)谈谈该课题的课程设计中遇到的问题,获得哪些技能和体会,以及建设性意见。

四、设计步骤和安排:

(1)题目安排;

图书馆查相关资料;

(2)设计原理研究,总体设计;

(3)各主要模块的VHDL设计。

各模块的设计仿真分析。

(4)完成系统顶层文件设计,系统总体功能的仿真分析。

(5)将设计内容进行硬件配置,在GW48实验箱上进行调试。

(6)撰写课程设计报告、答辩并提交报告。

1.前言……………………………………………………………1

2.设计要求…………………………………………………………1

3.实验目的…………………………………………………………1

4.实验原理…………………………………………………………2

5.设计框图…………………………………………………………2

6.模块说明…………………………………………………………3

6.1分频器…………………………………………………………3

6.2十进制计数器…………………………………………………4

6.3六进制计数器…………………………………………………5

7.顶层文件……………………………………………………………7

7.1整体连接图……………………………………………………7

7.2仿真波形………………………………………………………7

8.硬件调试……………………………………………………………8

8.1硬件要求………………………………………………………8

8.2引脚锁定………………………………………………………8

9.实验总结……………………………………………………………9

9.1错误与解决方法…………………………………………………9

9.2心得体会…………………………………………………………9

10.参考文献……………………………………………………………10

1.前言

本次设计的目的就是在掌握EDA实验开发系统的初步使用基础上,了解EDA技术,对计算机系统中时钟控制系统进一步了解,掌握状态机工作原理,同时了解计算机时钟脉冲是怎么产生和工作的。

在掌握所学的计算机组成与结构课程理论知识时,通过对数字秒表的设计,进行理论与实际的结合,提高与计算机有关设计能力,提高分析,解决计算机与控制实现的技术,达到课程设计的目标。

利用VHDL语言设计基于计算机电路中时钟脉冲原理的数字秒表,显示最长时间是59分59秒99,设计了复位和启停开关。

复位开关reset可以在任何情况下使用,使用以后计时器清零,并做好下一次计时的准备,启停开关为en,高电平时秒表工作,低电平时秒表停止计时,在触发高电平时接着上次的计时继续计时。

数字秒表在日常生活中有广泛的用途,秒表的逻辑结构较简单,它主要由显示译码器、十进制计数器、六进制计数器和 

分频器组成。

四个10进制计数器:

用来分别对百分之一秒、十分之一秒、秒和分进行计数;

两个6进制计数器:

用来分别对十秒和十分进行计数;

显示译码器:

完成对显示的控制。

根据电路持点,用层次设计概念将此设计任务分成若干模块,规定每一模块的功能和各模块之间的接口,然后再将各模块合起来联试。

通过MAX+plusⅡ软件,对上述模块设计,仿真无误后,设计顶层文件,仿真无误后,下载到主芯片EPF10K10LC84-4中,按适配划分后的管脚定位,同相关功能块硬件电路接口连线,进行硬件实验。

EPF10K10LC84-4是Altera公司生产的FLEX10K系列可编程逻辑器件。

主要采用了嵌入式阵列,容量高达百万门,为可重复配置的CMOS 

SRAM工艺,系统工作过程中可随时改变配置,有利于现场编程,完成秒表设计的修改于完善。

2设计要求

⑴秒表共有6个输出显示,分别为百分之一秒、十分之一秒、秒、分、十分,所以共有6个计数器与之相对应,6个计数器的输出全部为BCD码输出,这样便于和显示译码器的连接。

⑵整个秒表还需要有一个启动停止信号和一个置零信号,以便秒表能随意停止及启动。

⑶秒表的逻辑结构较简单,它主要由显示译码器、分频器、十进制计数器和六进制计数器组成,由于实验板上面的数码管自带译码器,所以无需再行设计译码器。

3.实验目的

通过本次课设,加深对EDA技术设计的理解,学会用MaxplusⅡ工具软件设计基本电路,熟练掌握VHDL语言,为以后工作使用打下坚实的基础。

4.实验原理

根据数字秒表的设计要求,可以使用多个不同的计数器单元模块,通过有机的组合来得到数字秒表系统。

要满足数字秒表的精度,首先应获得精确地计时基准信号,这里的系统精度要求为0.01s,因此必须设置周期为0.01s的时钟脉冲,由于数字秒表输入的脉冲为1024MHz,因此将来每10个外界输入脉冲就输出一个频率,该频率的时间周期正好为0.01s,即先将外界脉冲进行1024Hz----100Hz分频;

5.设计框图

数字秒表

显示电路

计时电路

计时控制电路

控制状态机

七段译码电路

扫描电路

分频电路

计数器

十进制计数器

六进制计数器

系统组成框图

6.模块说明

6.1分频计

能进行十分频的分频计,将实验板上的1024HZ信号十分频得到100HZ,为所需要的能够精确到最小精度为0.01秒,其文本语言(文件名:

fenpingqi.vhd)为底层文本,图1为分频器的仿真波形图

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

USEIEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITYfenpinqiIS

PORT(clk:

INSTD_LOGIC;

clka:

OUTSTD_LOGIC);

ENDfenpinqi;

ARCHITECTUREylfOFfenpinqiIS

BEGIN

PROCESS(clk)

VARIABLENUM:

INTEGERRANGE0TO4;

VARIABLEq:

STD_LOGIC;

IFclk'

EVENTANDclk='

1'

THEN

IFNUM=4THENNUM:

=0;

q:

=NOTq;

ELSENUM:

=NUM+1;

ENDIF;

clka<

=q;

ENDPROCESS;

ENDylf;

图1

6.2十进制计数器

能够实现10进制循环计数,带有清零端reset、开始端en、时钟信号端clk、其文本语言(文件名:

CNT10.vhd)为底层文本,图2为十进制计数器的仿真波形图

ENTITYCNT10IS

PORT(reset,en,clk:

carry:

OUTSTD_LOGIC;

q:

OUTSTD_LOGIC_VECTOR(3DOWNTO0));

ENDCNT10;

ARCHITECTUREylfOFcnt10IS

SIGNALqs:

STD_LOGIC_VECTOR(3DOWNTO0);

SIGNALCA:

IF(reset='

)THEN

qs<

="

0000"

;

ELSIF(clk'

eventandclk='

)then

IFen='

then

IF(qs="

1001"

ca<

='

0'

ELSIF(qs="

1000"

=qs+1;

ELSE

PROCESS(ca,en)

q<

=qs;

carry<

=caANDen;

图2

6.3六进制计数器

能够实现6进制循环计数,带有清零端reset、开始端en、时钟信号端clk、其文本语言(文件名:

CNT6.vhd)为底层文本,图3为六进制计数器的仿真波形图

ENTITYCNT6IS

carry:

ENDCNT6;

ARCHITECTUREylfOFcnt6IS

SIGNALca:

0101"

0100"

图3

7.顶层文件

7.1整体连接图

7.2仿真波形

8.硬件调试

8.1硬件要求

⑴主芯片EPF10K10LC84_4;

⑵6位八段扫描共阴极数码管显示;

⑶两个按键开关(reset置零,en启停);

⑷CLK的跳线冒接在1024HZ上;

⑸选择实验板上的模式5。

8.2引脚锁定

9.实验总结

9.1错误与解决方法

①分频器VHDL语言设计时,想要将1024HZ的频率十分频为100HZ,所犯的错误定义一个变量NUM时RANGE范围从0到9,

INTEGERRANGE0TO9;

仿真时所得频率的一个上升沿就对应原始频率的十个脉冲,变成了20分频,所以NUM的RANGE范围改正为

②顶层文件仿真出波形时发现reset置零按键不起作用,但是计时完全可以,而且reset的功能和en启停按键一样,后来检查发现是十进制计数器和六进制计数器里面VHDL语言出现了差错,原先错误地方

IF(clk'

这样对十进制计数器和六进制计数器本身没有影响,但是reset所起的置零作用必须在有脉冲也就是en必须使能的情况下而且必须在脉冲上升沿到来时才能工作。

后来将VHDL改成

这样一旦reset置零按键触发就会有高电平,所有的数码管都会立即清零达到置零的目的。

③硬件验证时,也遇到了两个问题。

第一个,按下en启停键,实验板上的数码管计时没有走起来,然后检查了一下CLOCK的跳线冒,发现时接触良好的,由于软件仿真已经成功,所以我只怀疑实验板上面的问题,然后我发现,我所锁定的那个按键接触不良,应该已经被损坏,于是重新换个按键,锁定引脚。

本以为已经成功了,但是在秒表计时到分时,新的问题又出现了,第二个问题,数码管从左向后第四位显示的是乱码,我直接怀疑应该是引脚锁定出错了,然后查看锁定的引脚,发现数码管的LED21,LED22,LED23锁成42,43,44引脚,后来查阅实验指导书改成47,48,49引脚,实验总算成功。

9.2心得体会

本次EDA课程设计历时一个星期,一个星期的日子里,可以说是苦多于甜,但是让我学到了很多东西,同时巩固以前所学过的知识,而且还学到了很多在书本上所没有学到过的知识。

通过这次设计,进一步加深了对EDA的了解,让我对它有了更加浓厚的兴趣。

但是在编调试顶层文件的程序时,遇到了不少问题,特别是各元件之间的连接,以及信号的定义,总是有错误,在细心的检查下,终于找出了错误和警告,排除困难后,程序编译就通过了。

在硬件实验时,也遇到了一点困难,想要的结果不能在数码管上得到正确的显示:

在设定输入的时钟信号后,数字秒表计数一会儿,始终是会出现乱码。

后来,经过调试之后,才发现是因为数码管的引脚锁定出了问题。

经过调试错误与改正,终于实现了秒表计时电路的课程设计。

通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正解决问题,从而提高自己的实际动手能力和独立思考的能力。

在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。

总的来说,这次设计的秒表计时电路还是比较成功的,虽然在实际的过程中曾经遇到了大量的问题,但是经过自己的努力,都给妥善解决了,这样的积累对于现在大学生来说是十分宝贵的。

希望以后能有更多的动手实践机会,在硬件中发现自己的不足,弥补自己的不足,最终成为一个合格的大学生。

10.参考文献

[1]朱正伟,韩学超.EDA技术与应用[M].北京:

清华大学出版社,2005

[2]潘松,黄继业.EDA技术与VHDL[M].北京:

清华大学出版社,2007

[3]聂春燕.EDA技术实验与课程设计.北京:

清华大学出版社,2006

[4]张亦华,延明.EDA技术实用教程.北京:

北京邮电大学出版社,2005

[5]黄仁欣.EDA技术实用教程.北京:

[6]林明泉.VHDL数字控制系统设计范例.北京:

电子工业出版社,2003

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

当前位置:首页 > 高等教育 > 哲学

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

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