《EDA技术课程设计报告.docx》由会员分享,可在线阅读,更多相关《EDA技术课程设计报告.docx(19页珍藏版)》请在优知文库上搜索。
1、第1章引言EDA是电子设计自动化(EleCtrOniCDesignAUtOmation)的缩写,在20世纪60年头中期从计算机协助设计(CAl)、计算机协助制造(C砧1)、计算机协助测试(CAT)和计算机协助工程(CAE)的概念发展而来的。EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言VHD1.或者VeriIogHD1.完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下教等工作。EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。VerilogHD1.是一种
2、硬件描述语言,以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能。此次课程设计我们运用QuartusI【这个软件,运用VerilogHD1.语言进行编程。数字钟是一种用数字电路技术实现时、分、秒计时的钟表。与机械钟相比具有更高的精确性和直观性,具有更长的运用寿命,已得到广泛的运用。数字钟的设计方法有很多种,例如可用中小规模集成电路组成电子钟,也可以利用专用的电子钟芯片配以显示电路及其所狗要的外圉电路组成电子钟,还可以利用单片机来实现电子钟等等。这些方法都各有其特点,其中利用单片机实现的电子钟具有编程敏捷,以便于功能的扩展。
3、本次课程设计要求利用EDA技术,设计一个数码管显示数字钟的样品,数字钟要求具备以下功能:I、具有时、分、杪,计数显示功能,以24小时循环计时:2、具有消零,调整小时、分钟功能:3、具有整点报时功能,整点报时的同时1.ED花样显示第2章电路原理数码管显示数字钟设计,运用到8位数码管,要求其中6位数码管动态显示,分别显示时、分、杪的计数,同时对时间进行设置,数字钟的总体功能根据要求可“1.ED灯花样显示模块”经过时钟分频信号,传递绐“数码管显示模块”,实现所需功能。数字钟设计原理如图3.1所示:图3.1数字钟设计原理图3.1 顶层模块设计顶层模块设计如附录图3所示,其RT1.电路图如附录图4所示。
4、顶旧模块包含四个输入:系统时钟输入“elk”,秒设置信号“ssot”,分钟设置信号mmset”,小时设置信号“hset”一个8位的段选数码管显示值输出“seg”,一个8位的片选数码管显示哪一个数码管输出“dig”,将输出给数码管进行动态显示.“时钟分频模块”电路符号名为“int_div,“按键驱动模块”电路符号名道anjian,“时钟计数模块”内部采纳三格计数器级联的方式分别驱动时、分、杪计数,秒计数器和分计数播均为60进制计数器,小时计数器为24进制计数器,电路符号名分别为两个ji_shu_60”和个“ji_shu24”。3.2时钟分频模块设计“时钟分频模块”干脆运用老师上课所给的分频程序,
5、加入两个分频模块,与“时钟计数模块”和“按键驱动模块”进行连接。3.3按键驱动模块设计按键驱动模块运用原理图方法设计,采纳在按键信号传输过程中申联触发器实现按键去抖,保证触发器两次触发的间隔远大F按键抖动的时间,而远小于人动作反应的时间.另外因为实例用独立按键按下后是低电平,所以在触发器后面串联一个非门,使其变为高电平有效,附录图1所示为按键驱动模块隙理图,图3.2图32按键驱动模块封装而成的电路元ql3:0=ql3:0+1:if(ql39)beginql3:0=0:q23:0=i23:0+l:endif(q1=4)if(q2=2)beginql=0jq2=0;endend如图1.2所示该模块
6、中60进制模块与24进制模块的仿真波形,60进制模块设置qsO、qsl分别为个位、十位,个位计数到9之后消零,十位计数到5之后清零,24进制模块设置qhO、qhl分别为个位、十位,个位计数到9之后清零,十位计数到2之后清零。3. 5整点报时模块整点报时模块的设计思路是当数字钟计数到一个整点时间时,蜂鸣器起先响鸣.蜂鸣器的封装设计如图3.3所示,程序设计为一段乐谱,主要VeriIogHD1.代码如下:always(POSedgeclk_4Hz)begincase(j),dkorigin=d4916;/lowd2:origin=d6168:,d3zorigin=d7281:d4zorigin=d7
7、791:d5zorigin,d8730;d6:Origin=d9565;,d7rorigin=,dl0310;,d8:origin=*d010647;/middle,d9:origin=*d011272;dl:Origin=d011831;,dlIiorigin=d12087;dl2:Origin=d12556;,dl3rigin=,d012974;dl4:Origin=d13346:,dl5zorigin=dl3516:/highdl6:Origin=dl3829:,dl7rorigin三,114108;,dl8oriin=,dll535:dl9:Origin=dl4470;d20:Orig
8、in=dl4678;d21:Origin=dl4864;default:origin=,dlllll;endcuseendalways(PoSedgeelk4Hz)/乐谱beginif(len=63)Ien=O;elselen=len+I:case(len)O:j=3:l:j=3:2:j=3:3:j=3:4:j=5;5:j=5;e:j=5:7:j=6:8:j=8;9:j=8;10:j=8:ll:j=6:12:j=6;13:j=6;14:j=6:15:j=l2;16:j=12:17:j=12;18:j=15:19:j=15;20:j=15:21:j=15;22:j=15:23:j=9:24:j=
9、9;25:j=9;26:j=927:j=9:28:j=9;29:j=9;30:j=9:31:j=9:32:j=9;33:j=9:34:j=10:35:j=7;36:j=7:37:j=6:38:j=6;39:j=5;40:j=5:41:j=5:42:j=6:43:j=8;44:j=8:45:j=9;46:j=9:47:j=3:48:j=3:49:j=8:50:j=8;51:j=8:52:j=5:53:j=5:54:j=8:55:j=5:56:j=5:57J=5;58:j=5;59:j=5;60:j=5:61:j=5:62:j=5:63:j=5:endcaseend3.61.ED灯花样显示模块1.
10、ED灯花样显示模块是与整点报时模块同时工作,当蜂鸣器响呜时1.ED灯闪该模块设计思路较为简洁,只需在时分秒的时钟傩出端接入个以低电平驱动的1.ED邓即可实现。3.7数码管显示模块设计数码管动态显示的原理是利用人眼的视觉停留,依次点亮将个数码管的位选信号,当第一个数码管被点亮时,将段选信号变为第一个数码管要显示的信息,当其次个数码管被点亮时,将段选信号变为其次个数码管要显示的信息,以此类推,循环扫描。当循环扫描一次全部数码管所用的时间在人眼能反应出图像变更的时间(约为0.02秒)之内时,人自然就会在视觉上看到完整的图像,而不会感到闪“数码管显示模块”的作用就是将6位10进制的时间数据BCD码转化
11、成供数码管动态显示的位选和段选数据。该模块在VerilogHD1.语言描述下的主要段落如下:always(PoSedgeclk_lk)begincase(count)3dO:disp_dat-d;3dl:disp_dat=dl:3d2:disp_dat=4hf;3d3:disp_dat=d2;3d4:disp_dat=d3;3d5:disp_dat=4hf;选择扫描显示数据第一个数码管其次个数码管第三个数码管第四个数码管第五个数码管第六个数码管3*d6:disp_dat=d4:/d7:4:3*d7:disp_dat=d5:/d3:0:endcase第七个数码管第八个数码管case(count)
12、3,dO:dig_r8b01111111:3dl:dig_r=8bl0111111:3,d2:dig_r=8bll011111:3,d3:dig_r=8blll0llll:3d4:digr=8bllll0111:选择数码管显示位选择第一个数码管显示选择其次个数码管显示选择第三个数码管显示选择第四个数码管显示选择第五个数码管显示3,d5:dig_r=8blllll011;3,d6:dig_r=8bllllil01:3,d7:dig_r=8bllllillO:选择第六个数码管显示选择第七个数码管显示选择第八个数码管显示endcaseend如图3.4所示是“数码管显示模块”的封装图,输入包括时钟信号
13、“elk”,更位信号“dr”;数码管显示数据BCD码输入,由低位到高位依次为“dO”、dl”、“d2”、“d3”、“d4”、“d5”。输出包括:一个8位的段选数码管显示值输出“seg”,一个8位的片选数码管显示哪一个数码管输出dig”。.3*一一:scanled-clk_1kdg(70一d30seg70一d130一d2(30 d3(3.0 FfIO9M20f30fMSQz0Q“MgMRgMi36吊M-0aA1_TT_n_n_ri_rUTJTJTj-ur1.rur1.r1.JTJ-1.J-I5AOII_JIIII5AIIIII国41波形仿真结果时、分、秒三个按键的去抖原理完全一样,这里提取小时输入和输出进行波形仿真验证,每一个时钟上升沿h_out的值都保持和hin的值相反,该设计能够达到预期设计要求。按键所绑的开关在开发板上是Sl、52、S3,分别限制小时进位、分钟进位、秒清零。60进制和24进制模块(时、分、秒模块)波形仿J分析:图4.6整点报时,锋鸣器响图4.5按下S1,小时进位,1.ED3亮第5章小结在此次课程设计中,遇到的问题主要有以下几个方面:(1)由于YeriIOgHD1.这门语言对自己来说属于一个从未接触过的东西,所以学习起来比较困难.此次课程设计选择的课题是