您好,欢迎访问三七文档
一是狠抓工作机制创新。把创新作为市政管理工作的“硬指标”,结合自身职责,抓好1-2项创新性工作,落实对个人的目标责任制考核,增强创新的积极性和主动性。二是推动工作成效创新,积极深化各项改革,得到上级领导的充分肯定。EDA课程设计报告设计题目:用VHDL语言实现数字钟的设计班级:电子1201班学号:姓名:方雅菁指导教师:李世平设计时间:2015年1月9日—11日一是狠抓工作机制创新。把创新作为市政管理工作的“硬指标”,结合自身职责,抓好1-2项创新性工作,落实对个人的目标责任制考核,增强创新的积极性和主动性。二是推动工作成效创新,积极深化各项改革,得到上级领导的充分肯定。摘要数字钟是一种用数字电路技术实现时、分、秒计时的钟表。与机械钟相比具有更高的准确性和直观性,具有更长的使用寿命,已得到广泛的使用。数字钟的设计方法有许多种,例如可用中小规模集成电路组成电子钟,也可以利用专用的电子钟芯片配以显示电路及其所需要的外围电路组成电子钟。本设计采用赛林思公司的FPGA作为硬件平台、QUARTUSII作为编写程序和仿真的平台来编译程序并实现管教锁定和下载的软件平台来实现数字钟。本设计的程序用VHDL语言编写,由本人独立设计完成。整体采用TOP-TO-DOWN设计思路。最顶层采用元件例化的方法,各个模块内部采用进程和状态机来设计完成。主要电路为:主控状态机模块、秒计数模块、分计数模块、时计数模块、天计数模块、月计数模块、年计数模块、星期计数模块、整点报时模块。关键词:EDA,数字钟,计数器,状态机,元件例化,FPGA,VHDLEDA课程设计3目录摘要........................................................................................错误!未定义书签。一、课程设计目的...........................................................错误!未定义书签。二、设计内容和要求.......................................................错误!未定义书签。2.1实验要求.................................................................错误!未定义书签。2.2实验设计.................................................................错误!未定义书签。三、VHDL程序设计.........................................................错误!未定义书签。3.1普通年、月、时、分、秒的设计(基本功能).错误!未定义书签。3.2可变进制计数器(天计时)设计(基本功能).错误!未定义书签。3.3主控模块设计.........................................................错误!未定义书签。3.4星期模块(增加功能).........................................错误!未定义书签。3.5闹钟模块(增加功能).........................................错误!未定义书签。3.6整点报时的实现(增加功能).............................错误!未定义书签。3.7上下午显示(增加功能).....................................错误!未定义书签。四、仿真验证...................................................................错误!未定义书签。4.1普通计数器功能仿真.............................................错误!未定义书签。4.2可变天计时功能仿真.............................................错误!未定义书签。4.3主控部分功能仿真.................................................错误!未定义书签。4.4整点报时功能仿真.................................................错误!未定义书签。4.5闹钟功能仿真.........................................................错误!未定义书签。4.6星期功能仿真.........................................................错误!未定义书签。4.7上下午显示功能仿真.............................................错误!未定义书签。4.8综合功能仿真.........................................................错误!未定义书签。五、器件编程下载及设计结果.......................................错误!未定义书签。5.1程序总体元件图.....................................................错误!未定义书签。5.2Ucf管脚映射文件...................................................错误!未定义书签。六、总结...........................................................................错误!未定义书签。七、参考文献...................................................................错误!未定义书签。一是狠抓工作机制创新。把创新作为市政管理工作的“硬指标”,结合自身职责,抓好1-2项创新性工作,落实对个人的目标责任制考核,增强创新的积极性和主动性。二是推动工作成效创新,积极深化各项改革,得到上级领导的充分肯定。一、课程设计目的掌握利用可编程逻辑器件和EDA设计工具进行电子系统设计的方法,内容包括:VHDL程序设计、输入——在QUARTUSII平台上用VHDL描述系统的功能逻辑综合——将源程序编译后,为设计系统选择一个电路实现方案,按照这个方案进行逻辑综合和优化,生成1个电路网表文件功能仿真——检查自己的设计是否达到和完成要求的逻辑功能设计实现——布局、布线及配置,最后生成可以写到芯片中的目标文件时序仿真——是适配到选定的芯片后进行的仿真,它模拟芯片的实际动作,仿真时间模型严格将门级延时计算在内,可以分析出竞争与冒险,时序仿真验证过的电路与实际电路基本上已致。器件编程——对器件编程下载二、设计内容和要求2.1实验要求用VHDL语言实现数字钟的设计,要求设计实现一个具有带预置数的数字钟,具有显示年月日时分秒的功能。用6个数码管显示时分秒,set按钮产生第一个脉冲时,显示切换年月日,第2个脉冲到来时可预置年份,第3个脉冲到来时可预置月份,依次第4、5、6、7个脉冲到来时分别可预置日期、时、分、秒,第8个脉冲到来后预置结束,正常工作,显示的是时分秒。Up为高电平时,upclk有脉冲到达时,预置位加1.否则减1.2.2实验设计本设计采用top-down模式设计。下面介绍一下其优点。EDA课程设计5自顶而下(TOPTODOWN)的层次化设计方法在现代EDA设计中有着明显的优势,越来越受到设计者的欢迎。对于一个复杂的设计系统,运用层次化设计方法,使设计课题进一步细化,分块设计,条理清晰。另外,在调试时可采用逆向调试方式,即从模块调试向总体调试方向开展调试工作,使设计中出现的问题在模块级就能发现,及时处理,这样就会使一个复杂的设计变得容易调试,缩短了设计时间。层次化设计方法:开始设计时,先设计出一个顶层总框图(一般称之为顶层图),该框图是由若干个具有特定功能的源模块组成。下一步是对这些不同功能的模块进行设计,产生这些模块的原理图文件或VHDL源文件。对于有些功能复杂的模块,全部使用元件库中的元器件设计仍显复杂,因此还可以将该模块继续化分为若干个功能子模块,这样就形成模块套模块的层次化设计方法。这种方法也称之为自顶向下的系统设计方法。主控模块年计时月计时日计时时计时分计时秒计时星期计时定点报时平年/闰年28~31判断上下午图1总体框图如图2-1所示,本设计实现了对年、月、日、小时、分秒的基本基本计时外,还实现了对星期的显示和基于小时下的定点报时及上下午的判断。本系统由8个模块组成,其中主控模块负责各个模块之间的调度、分析计算数字钟的状态、给出相应的控制信号。各个计数器功能相似,都具有计数、输出一是狠抓工作机制创新。把创新作为市政管理工作的“硬指标”,结合自身职责,抓好1-2项创新性工作,落实对个人的目标责任制考核,增强创新的积极性和主动性。二是推动工作成效创新,积极深化各项改革,得到上级领导的充分肯定。DCB码、双向调节计数状态的功能。三、VHDL程序设计3.1普通年、月、时、分、秒的设计(基本功能)图2年、月、时、分、秒计时器元件图此类计数器思路一致,只需改变年月等各进制数,如年为2个100进制计时,使之能够显示到9999年;月为12进制计时,表示一年12个月;小时计时为24进制,表示一天有24个小时;同理,分秒为60进制。具体实现方法如下表表1普通年月时分秒端口实现Clk:Period:0usOffset:1000us当Set=0时正常计时,使用clk时钟在clk时钟下正常计时Up_down_clockPeriod:0usOffset:1000us当Set=1是,使用Up_down_Clock时钟Updown端口选择预置数是加1还是-1,当为up时加,为down时-1当预置数加1时选择up—上升沿当预置数减1时选择up—下降沿基本计时能够实现的功能如下:计数功能;EDA课程设计7BCD输出计数状态;预置数可使年月时分秒加1,减1;计数时钟可变;清零功能。3.2可变进制计数器(天计时)设计(基本功能)图3可变天计时元件图此种计数器一个可实现4种进制,现在就出现两种方法来确定计数器进制,(1):将年、月的BCD输出引到天计数器端,可让天计数器自己判断自己应该处于何种进制;(2):将计算的任务交给主控制模块,天计数器模块只负责接收主控模块发回来的信息来决定计数器进制。第一种方法不仅增加了此模块设计的复杂性、增加了输入引脚数而且还增加了模块之间的耦合度,这是在层次化设计时的大忌,而第二种方法只需在此模块上添加两个引脚然后在模块内部只需根据这两个引脚来选择进制数。很显然第二种方法要优越于第一种方法。因此选择第二种方法。如图所示,可变天计时与普通计时而言多了一个sel端口,可以用来改变计时的天数,计时的天数随着年月的改变而产生变化,共有28,29,30,31天。闰年的二月有29天,平年的2月有28天,1.3.5.7.8.10.12月有31天,其余月份有30天,因此,sel可以显示当前月份的天数,其余端口与普通计时一致端口设置请看表1,sel的设置如下表所示一是狠抓工作机制创新。把创新作为市政管理工作的“硬指标”,结合自身职责,抓好1-2项创新性工作,落实对个人的目标责任制考核,增强创新的积极性和主动性。二是推动工作成效创新,积极深化各项改革,得到上级领导的充分肯定。表2.sel端口的设置Sel显示数字的含义Sel=00表示天数为28天Sel=01表示天数为29天Sel=10表示天数为30天Sel=11表示天数为31天此模块能够实现的功能如下:计数功能;DCB码输出计数状态功能;预
本文标题:EDA课程设计报告
链接地址:https://www.777doc.com/doc-2029595 .html