EDA数字秒表的设计_第1页
EDA数字秒表的设计_第2页
EDA数字秒表的设计_第3页
EDA数字秒表的设计_第4页
EDA数字秒表的设计_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、EDA 设 计 报 告 数字秒表的设计 一 设计目的1.根据设计要求,完成对数字秒表的设计。2.进一步加强对Quartus的应用和对Verilog HDL语言的使用。二 设计内容和要求1.计时精度应大于1/100S,计时器能显示1/100S的时间,提供给计时器内部定时的时钟频率应大于100Hz,这里选用KHz。2.计时器的最大计时时间为1小时,为此需要6位的显示器,显示的最长时间为59分59.99秒。3.设置有复位和起/停开关,复位开关用来使计数器清零,做好计时准备。起停开关的使用方法与传统的机械式计数器相同,即按一下,启动计时器开始计时,再按一下计时终止。三 系统设计方案自顶向下的设计自顶向

2、下的设计方法是数字系统设计中最常用的设计方法.也是基于芯片的系统设计的主要方法。自顶向下的设计方法利用功能分割手段将设计由上到下进行层次话和模块化,及分层次、分模块进行设计和仿真。功能分割时,将系统功能分解为功能块,功能块再分解为逻辑块,逻辑块再分解为更少的逻辑块和电路。如此分割,逐步的将系统细化,将功能逐步的具体化,模块化。高层次设计进行功能和接口描述,说明模块的功能和接口,模块功能的更详细描述在下一设计层次说明,最底层的设计才涉及具体寄存器和逻辑门电路等实现方式的描述。四 模块设计 1.分频模块将输入1KHZ的系统时钟经过十分频分为100HZ的单位时钟。编程原理跟计数器原理相似。 2.定时

3、模块采用2个60进制、1个100进制的BCD码全加器作为定时器,分为分,秒,百分秒,输入时钟信号为分频器输出信号100HZ时钟,外界两个拨码开关作为清零按钮和暂停按钮。 3.位选发生器:根据显示的数据位和人眼暂留效应,设计显示分为分、秒、百分秒位,每位需要2个数码管进行显示,因此变化频率至少为300HZ,为了方便则采用1KHZ,循环码则从000循环到101。 4.多路选择器根据位选信号,输出对应位显示的数据。 5.译码器将多路选择器输出端的数据对应的转换为七段二进制数,送给显示器。五 顶层原理图以上所描述的模块的程序编写均在同一工程下,由程序生成的元件也在该工程下,所以可以在该工程下再建一原理

4、图作为顶层,将所需要的元件按照要求进行连线,加入输入输出处端口并改名。包层原理图,并将原理图置为顶层文件。由于我们的程序是写在一起的,所以本设计的整体原理图如图1所示:图1.实验原理图六 系统仿真与引脚分配本实验结果的仿真图与引脚分配如下图2引脚分配实验原理图 图2.实验结果仿真图与引脚分配七 器件编程与硬件下载1.在Quartus软件中为顶层文件选择好芯片类型,选择引脚后进行编译。2.将实验箱端口与计算机相应端口连接,检测试验箱是否可以使用,经检测无误后,关闭试验箱,将主芯片标号对应顶层文件相应引脚标号连线到相应器件处。即输入时钟信号端接试验箱时钟发生电路CLK输出端(用50MHz信号),启

5、动新号段与归零信号端分别接两个拨码开关,输出端count2.0分别接3/8译码器的SEL2SEL0端,输出a,b,c,d,e,f,g,h端接显示译码器的相应输入端,连接好线后打开试验箱电源,将设计好的程序下载到试验箱的芯片上即可测试功能。八 总结及心得1. 总结通过这次课程设计让我对EDA这门课有了更深刻的了解,对设计过程中困难重重现总结如:在程序编写时,先要在心中规划一个大概流程,然后编写,经过与其他同学多次合作修改最终编译而成,在如何编写程序方面收获颇多;在往开发板上导程序的时候,虽然出现了几次错误,但是只要有耐心,就能获得成功。2心得体会这次EDA课程设计,可以说是苦多于甜,但是可以学的

6、到很多很多的东西,同时不仅可以巩固以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次设计,进一步加深了对EDA的了解,让我对它有了更加浓厚的兴趣。特别是当程序编写调试成功时,心里特别的开心。但在编写时,有错误,在细心的检查下,终于找出了错误和警告,排除困难后,程序编译就通过了,心里终于舒了一口气。在波形仿真时,也遇到了一点困难,想要的结果不能在波形上得到正确的显示。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中

7、遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。总的来说,这次设计的数字秒表还是比较成功的,在设计中遇到了很多问题,最后在同学的帮助下,终于游逆而解,有点小小的成就感,终于觉得平时所学的知识有了实用的价值,达到了理论与实际相结合的目的,不仅学到了不少知识,而且锻炼了自己的能力,使自己对以后的路有了更加清楚的认识,同时,对未来有了更多的信心。最后,对给过我帮助的所有同学再次表示忠心的感谢!九 设计程序如下:module qwe(clk,out_wei,out_duan,rst,k

8、ey2);/key2=27pininput rst;input clk;input key2;output 7:0out_wei;output 7:0out_duan; reg 7:0out_wei=8b00000000;reg 7:0out_duan=8b00000011; /a b c d e f g dpreg 4:0count; reg 3:0count1;reg 14:0count2;reg 7:0sec_l=8b00000011;/zero at firstreg 7:0sec_h=8b00000011;reg 7:0fen_l=8b00000011;reg 7:0fen_h=8b

9、00000011;reg 7:0msec_l=8b00000011;reg 7:0msec_h=8b00000011;reg 3:0s_1=0;reg 3:0s_2=0;reg 3:0s_3=0;reg 3:0s_4=0; reg 3:0s_5=0;reg 3:0s_6=0;reg clk_out; reg pause;/信号always(posedge clk) begin/fenpin if(count2=25000)begin /one of thousand secend 25000count2=0;clk_out=clk_out;endelse count2=count2+1;end

10、always(posedge clk_out) begin/scancount=count+1b1;case(count) 1 :begin out_wei=8b11111110;out_duan=msec_l;/out_wei=8b11111011;/out_duan=8b00000100;/out_wei=8b11011111;/out_duan=8b00000100; end 3:beginout_wei=8b11111101;out_duan=msec_h;/out_wei=8b11111011;/out_duan=8b00000100;/out_wei=8b11011111;/out

11、_duan=8b00000100;end 6:beginout_wei=8b11110111;out_duan=sec_l;/out_wei=8b11111011;/out_duan=8b00000100;/out_wei=8b11011111;/out_duan=8b00000100;end 9:beginout_wei=8b11101111;out_duan=sec_h;/out_wei=8b11111011;/out_duan=8b00000100;/out_wei=8b11011111;/out_duan=8b00000100;end 12:beginout_wei=8b1011111

12、1;out_duan=fen_l;/out_wei=8b11111011;/out_duan=8b00000100;/out_wei=8b11011111;/out_duan=8b00000100;end 15:beginout_wei=8b01111111;out_duan=fen_h;/out_wei=8b11111011;/out_duan=8b00000100;/out_wei=8b11011111;/out_duan=8b00000100;end 18:count=0;endcaseend always(negedge key2) beginpause=pause;endalways

13、(posedge clk_out or negedge rst) begin/minite secend if(!rst) begins_1=0;s_2=0;s_3=0;s_4=0;s_5=0;s_6=0;endelseif(count1=10)begin/if 1s l+1 count1=0; if(s_6=9) begins_6=0; if(s_5=9)begins_5=0; if(s_1=9)begin s_1=0; if(s_2=5) begins_2=0; if(s_3=9)begins_3=0; if(s_4=5)s_4=0;else s_4=s_4+1;endelse s_3=s

14、_3+1;end else s_2=s_2+1;end else s_1=s_1+1;end else s_5=s_5+1;end else s_6=s_6+1;endelse if(pause=1) begin count1=count1+1; end end /这下面全部是扫描显示用的。always(s_1 or s_2 or s_3 or s_4 or s_5 or s_6) begin case(s_1)0:sec_l=8b11000000;1:sec_l=8b11111001;2:sec_l=8b10100100;3:sec_l=8b10110000;4:sec_l=8b100110

15、01;5:sec_l=8b10010010;6:sec_l=8b10000010;7:sec_l=8b11111000;8:sec_l=8b10000000;9:sec_l=8b10010000;default:sec_l=1bx;endcase case(s_2)0:sec_h=8b11000000;1:sec_h=8b11111001;2:sec_h=8b10100100;3:sec_h=8b10110000;4:sec_h=8b10011001;5:sec_h=8b10010010;6:sec_h=8b10000010;default:sec_h=1bx;endcasecase(s_3)

16、0:fen_l=8b11000000;1:fen_l=8b11111001;2:fen_l=8b10100100;3:fen_l=8b10110000;4:fen_l=8b10011001;5:fen_l=8b01001001;6:fen_l=8b10010010;7:fen_l=8b10000010;8:fen_l=8b10000000;9:fen_l=8b10010000;default:fen_l=1bx;endcasecase(s_4)0:fen_h=8b11000000;1:fen_h=8b11111001;2:fen_h=8b10100100;3:fen_h=8b10110000;4:fen_h=8b10011001;5:fen_h=8b01001001;6:fen_h=8b10010010;default:fen_h=1bx;endcasecase(s_6)0:msec_l=8b11000000;1:msec_l=8b11111001;2:msec_l=8b10100100;3:msec_l=8b10110000;4:msec_l=8b10011001;5:msec_l=8b10011001;6:msec_l=8b10010010;7:msec_l=8b10000010;8:msec_l=8b10000000;9:msec_l=8b10010000;defaul

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论