ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:491.93KB ,
资源ID:16849063      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16849063.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于FPGA的多功能电子万年历毕业设计Word文档格式.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于FPGA的多功能电子万年历毕业设计Word文档格式.docx

1、时刻数据与时刻设置数据多路选择模块 time_mux 11时刻显示动态位选模块 time_disp_select 13显示模块 disp_data_mux 14秒表模块 stopwatch 15日期显示与设置模块 date_main 16日期自动工作模块 autodate 16日期设置模块 setdate 17闹钟模块alarmclock 17分频模块 fdiv 19顶层模块图 20三、附录 22电子万年历系统的Verilog HDL语言程序设计部份代码 22主操纵模块 22秒自动计时子模块 24时刻自动工作操纵 24时刻数据与时刻设置数据多路选择模块 25时刻及其设置模块 26时刻显示动态位

2、选模块 27秒表模块 28分频模块 28参考文献 301 引言 选题意义钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能,诸如按时自动报警、按时自动打铃、时刻程序自动操纵、按时广播、按时启闭路灯等。所有这些,都是以钟表数字化为基础的。因此,研究电子万年历及扩大其应用,有超级现实的意义。数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相较具有更高的准确性和直观性,且无机械装置,具有更长的利用寿命,因此取得了普遍的利用。电子万年历从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路。因此,咱们这次设计与制做电子万年历确实是为了了解数字钟的原

3、理,从而学会制作数字钟。而且通过万年历的制作进一步了解各类在制作顶用到的中小规模集成电路的作用及利用方式,且由于电子万年历包括组合逻辑电路和时序电路,通过它能够进一步学习与把握各类组合逻辑电路与时序电路的原理与利用方式。本设计基于 FPGA 芯片,外围电路简单,系统集成化程度高,精度高,采纳 Verilog HDL语言编程,用软件的方式设计硬件,灵活性好,方便以后的产品升级。 电子万年历的研究背景 在今世忙碌的工作与生活中,时刻与咱们每一个人都有超级紧密的关系,每一个人都受到时刻的阻碍。为了更好的利用咱们自己的时刻,咱们必需对时刻有一个气宇,因此产生了钟表。钟表的进展是超级迅速的,从刚开始的机

4、械式钟表到此刻普遍用到的数字式钟表,即便此刻钟表千奇百怪,可是它们都只是完成一种功能计时功能,只是工作原理不同罢了,在人们的利用进程中,慢慢发觉了钟表的功能太单一,没有更大程度上的知足人们的需求。因此在那个地址,我想能不能把一些辅助功能加入钟表中。在此设计中所设计的钟表不但具有一般钟表的功能,它还能实现额外的功能:世界时、农历显示。人类不断研究,不断创新纪录。进展到此刻人们普遍利用的万年历。 万年历是采纳数字电路实现对.时,分,秒.数字显示的计时装置,普遍用于个人家庭,车站, 码头办公室等公开场合,成为人们常生活中不可少的必需品,由于数字集成电路的进展和石英晶体振荡器的普遍应用,使得数字钟的精

5、度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如按时自动报警、按时自动打铃、时刻程序自动操纵、按时广播、自动起闭路灯、按时开关烘箱、通断动力设备、乃至各类按时电气的自动启用等,可是所有这些,都是以钟表数字化为基础的。因此,研究万年历及扩大其应用,有着超级现实的意义。它能够对年、月、日、周日、时、分、秒进行计时,关于数字电子万年历采纳直观的数字显示,能够同时显示年、月、日、周日、时、分、秒等信息,还具有时刻校准等功能。综上所述此万年历具有读取方便、显示直观、功能多样、电路简练、本钱低廉等诸多优势,符合电子仪器仪表的进展趋势,具有广漠的市

6、场前景。国内外产品研究综述 万年历具有读取方便、显示直观、功能多样、本钱低廉等诸多优势,符合电子仪器仪表的进展趋势,具有广漠的市场前景。 近些年我国也开始重视对电子万年历的开发与设计,让更多的电子时钟能够走进人民生活,让更多的人能够应用到功能壮大,精度高的电子时钟。可是仍然存在很多问题。 中国电子万年历产业进展显现的问题中,许多情形不容乐观,如产业结构不合理、产业集中于劳动力密集型产品;技术密集型产品明显掉队于发达工业国家;生产要素决定性作用正在减弱;产业能源消耗大、产出率低、环境污染严峻、对自然资源破坏力大;企业整体规模偏小、技术创新能力薄弱、治理水平掉队等。 中国电子万年历产业进展研究报告

7、论述了世界电子万年历产业的进展历程,分析了中国电子万年历产业进展现状与差距,开辟性地提出了“新型电子万年历产业” 及替代品产业概念,在此基础上,从四个维度即“以人为本”、“科技创新”、“环境友好”和“面向以后”准确地界定了“新型电子万年历产业” 及替代产品的内涵。依照“新型电子万年历产业” 及替代品的评判体系和量化指标体系,从全新的角度对中国电子万年历产业进展进行了推演和精准预测,在此基础上,对中国的行政区划和四多数市圈的电子万年历产业进展进行了全面的研究。 随着人们生活水平的提高和生活节拍的加速,对时刻的要求愈来愈高,精准数字计时的消费需求也是愈来愈多。1一、多功能电子万年历及FPGA简介电

8、子万年历的进展 FPGA简介PLD/FPGA是近几年集成电路中进展最快的产品。由于PLD性能的高速进展和设计人员自身能力的提高,可编程逻辑器件供给商将进一步扩大可编程芯片的领地,将复杂的专用芯片挤向高端和超复杂应用。据IC Insights的数据显示,PLD市场从1999年的29亿美元增加到去年的56亿美元,几乎翻了一番。Matas估量这种高速增加局面以后很难显现,但可编程逻辑器件仍然是集成电路中最具活力和前途的产业。复杂可编程逻辑器件。可编程逻辑器件的两种要紧类型是现场可编程门阵列(FPGA)和复杂可编程逻辑(CPLD)。 在这两类可编程逻辑器件中,FPGA提供了最高的逻辑密度、最丰硕的特性

9、和最高的性能。 此刻最新的FPGA器件,如Xilinx Virtex系列中的部份器件,可提供八百万系统门(相对逻辑密度)。 这些先进的器件还提供诸如内建的硬连线处置器(如IBM Power PC)、大容量存储器、时钟治理系统等特性,并支持多种最新的超快速器件至器件(device-to-device)信号技术。 FPGA被应用于范围普遍的应用中,从数据处置和存储,和到仪器仪表、电信和数字信号处置等。电子万年历的工作原理按键消抖 可 编功能键 程调整键1 逻调整键2 辑 器 件 CPLD/FPGA LED显示模块功能键用来选择不同的工作模式:时刻正常显示功能、时刻调整与显示、秒表功能、闹钟设置与查

10、看、日期显示、日期调整与设置。调整键1:要紧用于闹钟设置、日期显示与调整、秒表、时刻调整与设置中的位置选择按钮,与功能键配合利用。2号键功能模式,即时刻调整与设置时,用作时、分、秒的移位,按一下,将会实现“时-分-秒”的依次移位,便于在特定位置进行调整;4号键功能模式,即闹钟设置与查看时,一样用作时、分、秒的移位,按一下,将会实现“时-分-秒”的依次移位,便于在特定位置进行调整;6号键功能模式,即日期调整与设置时,用作月、日的移位,按一下,将会实现“月-日”的依次移位,便于在特定位置进行调整。调整键2:要紧用于闹钟设置、日期显示与调整、秒表、时刻调整与设置中的调整按钮,与功能键配合利用。2号键

11、功能模式,即时刻调整与设置时,用作时、分、秒的调整,按一下,将会使适当前调整键1选择的位置数字增加1;4号键功能模式,即闹钟设置与查看时,一样用作时、分、秒的调整,按一下,将会使适当前调整键1选择的位置数字增加1;6号键功能模式,即日期调整与设置时,用作月、日的移位,按一下,将会使适当前调整键1选择的位置数字增加1。二、多功能电子万年历各功能模块实现时钟问题不管是用离散逻辑、可编程逻辑,仍是用全定制器件实现任何数字电路,设计不良的时钟在极限温度、电压或制造工艺存在误差的情形下将致使系统错误的行为,因此靠得住的时钟设计是超级关键的。在FPGA设计时通常采纳四种时钟:全局时钟、门控时钟、多级逻辑时

12、钟和波动式时钟,多时钟系统是这四种时钟类型的任意组合。2.1.1全局时钟关于一个设计项目来讲,全局时钟(或同步时钟)是最简单和最可预测的时钟。在FPGA设计中最好的时钟方案是:由专用的全局时钟输入引脚驱动单个主时钟去操纵设计项目中的每一个触发器。FPGA一样都具有专门的全局时钟引脚,在设计项目时应尽可能采纳全局时钟,它能够提供器件中最短的时钟到输出的延时。2.1.2门控时钟在许多应用中,整个设计项目都采纳外部的全局时钟是不可能或不实际的,因此通经常使用阵列时钟组成门控时钟。门控时钟常常同微处置器接口有关,例如用地址线去操纵写脉冲。每当用组合逻辑来操纵触发器时,通常都存在着门控时钟。在利用门控时

13、钟时,应认真分析时钟函数,以幸免毛刺的阻碍。若是设计知足下述两个条件,那么能够保证时钟信号不显现危险的毛刺,门控时钟就能够够像全局时钟一样靠得住工作:驱动时钟的逻辑必需只包括一个“与门”或一个“或门”,若是采纳任何附加逻辑,就会在某些工作状态下显现由于逻辑竞争而产生的毛刺。逻辑门的一个输入作为实际的时钟,而该逻辑门的所有其他输入必需当做地址或操纵线,它们遵守相关于时钟的成立和维持时刻的约束。2.1.3多级逻辑时钟当产生门控时钟的组合逻辑超过一级,即超过单个的“与门”或“或门”时,该设计项目的靠得住性将变得很差。在这种情形下,即便样机或仿真结果没有显示出静态险象,但事实上仍然可能存在危险,因此咱

14、们不该该用多级组合逻辑区作为触发器的时钟端。不同的系统 需要采纳不同的方式排除多级时钟,并无一个固定的模式。2.1.4波动式时钟许多系统要求在同一设计内采纳多时钟,最多见的例子是两个异步微处置器之间的接口,或微处置器和异步通信通道的接口。由于两个时钟信号之间要求必然的成立和维持时刻,因此上述应用引进了附加的按时约束条件,它们会要求将某些异步信号同步化。而在许多应用中只将异步信号同步化仍是不够的,当系统中有两个或两个以上非同源时钟时,数据的成立和维持时刻很宝贵到保证,设计人员将面临复杂的时刻分析问题。最好的方式是将所有非同源时钟同步化。利用FPGA内部的锁相环(PLL)是一个成效专门好的方式,但

15、并非是所有FPGA都带有PLL,而且带有PLL功能的芯片大多价钱昂贵。这时就需要利用带使能端的D触发器,并引入一个高频时钟来实现信号的同步化。稳固靠得住的时钟是保证系统靠得住工作的重要条件,设计中不能够将任何可能含有毛刺的输出作为时钟信号,而且尽可能只利用一个全局时钟,对多时钟系统要专门注意异步信号和非同源时钟的同步问题。为了取得高驱动能、低抖动时延、稳固的占空比的时钟信号,一样利用FPGA内部的专历时钟资源产生同步时序电路的主工作时钟。专历时钟资源要紧指两部份,一部份是布线资源,包括全局时钟布线资源和长线资源等,另一部份那么是FPGA内部的PLL。电子万年历的操纵系统此电子万年历系统要紧有8

16、个模块别离设计仿真,别离是以下8个模块:1.主操纵模块 maincontrol2.时刻及其设置模块 timepiece_main3.时刻显示动态位选模块 time_disp_select4.显示模块 disp_data_mux5.秒表模块 stopwatch6.日期显示与设置模块 date_main7.闹钟模块 alarmclock8.分频模块 fdiv主操纵模块 maincontrol该模块实现对各个功能模块的整体操纵,包括对时刻显示与调整、日期显示与调整、闹钟显示与调整、秒表操作等的操纵,结构功能图如2-1所示,波形仿真图如2-2所示。图2-1 主操纵模块的结构功能图 图2-2 主操纵模块

17、的波形仿真图SW3是功能键,从波形图中可知,SW3每显现一次上升沿,输出都会发生相应的转变,即依照Timepiece_EN(时钟自动显示使能),TimeSet_EN(时钟设置与调整使能),Stopwatch_EN(秒表功能使能),Alarmclock_EN(闹钟时刻设置使能),Date_EN(日期显示使能),DateSet_EN(日期显示与设置使能)的顺序依次输出有效波形“1”,对相应的模块输入有效使能,从而实现相应的功能。时刻及其设置模块 time_auto_and_set时刻及其设置模块要紧完成时刻的自动正常运行与显示,和在相应的功能号下,实现时刻的调整与设置。2.2.1时刻模块 time

18、piece_main该模块要紧完成时刻的自动增加与显示功能,即为正常的自动模式运行,其结构功能图如2-3所示,波形仿真图如2-4所示。图2-3 时刻及其设置模块的结构功能图 图2-4 时刻模块的结构功能图秒自动计时子模块 second_counter,结构功能图如2-5所示,图2-5 秒自动计时子模块的结构功能图分自动计时子模块 minute_counter,结构功能图如2-6示。图2-6 分自动计时子模块的结构功能图小时自动计时子模块 hour_counter,结构功能图如2-7所示。图2-7小时自动计时子模块的结构功能图图2-8 时刻模块的波形仿真图当Timepiece_EN为1时,即处于

19、时刻自动工作状态,即每显现一次时钟信号clk,计数一次,先计数second0,当计数到1001(即十进制的9)时,向second1发出一个计数信号,现在second1进行一次计数,类推,second1计数到0101(即十进制的5),且second0计数到1001(即十进制的9)时,minute0那么进行一次计数,依照此规律进行时刻的计数。当计满24小时,向day_EN发出一个计数信号,即此使能端输出有效信号1,进行日期的计数。2 时刻设置模块 timeset该模块要紧完成对时刻的设置相关的闪烁显示操纵和时刻中的小时、分钟、秒等数据的改变,流程图如2-9所示,结构功能图如2-10所示,波形仿真图

20、如2-11所示。开 始disp_drive=3b0结 束初始化,将当前时间赋予设置后的时间Timeset_EN=1?3b101?= disp_drive+3b1依SW2,按位进行数字调整 图 2-9 时刻设置模块的流程图图2-10 时刻设置模块的结构功能图图2-11 时刻设置模块的波形仿真图表2-12 时刻设置模块的端口说明输入端口功能TimeSet_EN时间设置使能,当其电平为高时,时间设置有效SW1,SW2调整键1与调整键2输入信号hour1,hour0当前时间的小时数输入minute1,minute0当前时间的分钟数输入second0,second1当前时间的秒数输入输出端口hour_s

21、et1,hour_set0设置时间后的小时数minute_set1,minute_set0设置时间后的分钟数second_set1,second_set0设置时间后的秒数disp_drive设置中的闪烁显示设置当Timeset_EN为1时,即实现时刻设置功能。SW1实现时刻格式中小时高、低位,分钟高、低位,秒钟高、低位的位选,即每显现一个SW1上升沿,disp_drive的相应数值加1(选择具体的需要调整的位置)。SW2实现相应得位的数值得调整,即每显现一个SW2上升沿,相应位的数值增加1。2.2.3时刻数据与时刻设置数据多路选择模块 time_mux该模块用来分时向显示单元传输显示数据,流程

22、图如2-13所示,结构功能图如2-14所示,波形仿真图如2-15所示。图2-13 多路选择模块的结构功能图依输入条件,判断是自动显示时间,或显示调整后的时间显示设置后的时间显示自动模式时的时间图 2 -14 多路选择模块的流程图图2-15 多路选择模块的波形仿真图时间设置使能信号自动模式中当前时间的小时数输入自动模式中当前时间的分钟数输入自动模式中当前时间的秒数输入时间设置后的小时数输入时间设置后的分钟数输入时间设置后的秒数输入hour_1,hour_0当前需要显示的小时输出minute_1,minute_0当前需要显示的分钟输出second_0,second_1当前需要显示的秒输出表2-16

23、 多路选择模块的端口说明时刻显示动态位选模块 time_disp_select该模块用来分时显示时刻数据,可是在选择适合的时刻距离下,人眼并非能分辨出是分时显示的,如此显示的方式能够降低功耗,结构功能图如2-17所示,波形仿真图如2-18所示。图2-17 时刻显示动态位选模块的结构功能图图2-18(a) 时刻显示动态位选模块的波形仿真图图2-18(b) 时刻显示动态位选模块的波形仿真图TimeSet_EN表示时刻设置使能,Time_EN表示时刻自动显示使能,clk_1kHz用于动态显示时刻,clk_200Hz用于闪烁显示时刻,timeset_disp_drive表示时刻设置数据显示的同步信号,

24、time_disp_select表示显示动态位选输出信号。当TimeSet_EN为0,Time_EN为1时,以clk_1kHz为是时钟信号,输出自动显示的时刻,按位依次显示;当TimeSet_EN为1,Time_EN为0时,那么以clk_200Hz为时钟信号,输出以timeset_disp_drive对应的位置。显示模块 disp_data_mux模块是时刻、日期等数据用数码管显示的操纵与数据传输模块,包括数据的传输和BCD码的译码等,结构功能图如2-19所示,波形仿真图如4-20所示。图2-19 显示模块的结构功能图显示原理采纳的是七段数码管的现实原理,如2-20所示:图2-20 七段数码管

25、的显示原理图2-21 显示模块的波形仿真图秒表模块 stopwatch该模块实现秒表的功能,在实际中,能够通过改变自动工作模式下的时刻的计数时钟的频率来实现秒表的功能,流程图如2-22所示,结构功能图如2-23所示,波形仿真图如2-24所示。EN=1?秒表工作状态时间自动工作状态图2-22 秒表模块的流程图图2-23 秒表模块的结构功能图图2-24 秒表功能的波形仿真图EN表示秒表使能操纵信号,clk1表示自动工作模式的时钟信号,clk2表示秒表工作模式的时钟信号,故当EN为有效信号1时,输出F_out与clk2同,即处于秒表工作状态,同理EN为0时,输出F_out与clk1同,即处于自动工作

26、状态。日期显示与设置模块 date_main该模块实现日期的显示和日期的调整与设置,结构功能图如2-25所示。图2-25 时刻显示与设置模块的结构功能图2.6.1日期自动工作模块 autodate该模块实现的是日期的自动工作功能,结构功能图如2-26所示,波形仿真图如2-27所示。图2-26 日期自动工作模块的结构功能图图2-27(a) 日期自动工作模块的波形仿真图图2-27(b) 日期自动工作模块的波形仿真图2.6.2日期设置模块 setdate该模块用于日期,结构功能图如2-28所示。图2-28 日期设置模块的结构功能图闹钟模块alarmclock该模块实现的功能包括闹钟的设置和闹钟时刻到

27、后的提示,流程图如2-29所示,结构功能图如2-30所示,波形仿真图如2-31所示。设置的闹钟与当前时间比较alarm=1b1闹钟工作=1b0闹钟不工作EN=1=disp_drive+3,b1根据不同的disp_drive选择在不同的位置上的数值加1图 2-29 闹钟模块的流程图图2-30 闹钟模块的结构功能图图2-31 闹钟模块的波形仿真图EN为闹钟设置使能,clk_200Hz用于设置中的闪烁显示的时钟,其中还概念了hour_set1,hour_set0,minute_set1,minute_set0,second_set1,second_set0,用来表示已经设置好的闹钟时刻。闹钟一直处于

28、工作状态,当前时刻(hour1,hour0,minute1,minute0,second1,second0)与设置的闹钟时刻相较较,当小时、分钟、秒钟的时刻完全相同时,那么闹铃响,输出信号alarm为有效信号1。SW1和SW2是调整键,别离操纵位选和数值的调整。分频模块 fdiv该模块完成全局时钟信号分频输出200Hz、60Hz、1Hz的三种时钟信号,流程图如2-32所示,结构功能图如2-33所示,波形仿真图如2-34所示。图2-33 分频模块的结构功能图图2-34分频模块的波形仿真图开始,输入1kHz时钟信号posedge clkCNT4?输出200Hz时钟信号f200HzCNT=CNT+1posedge

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

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