
基于FPGA的多功能电子万年历毕业设计.doc
34页毕业设计中期报告题目名称:基于FPGA的万年历设计院系名称:电气学院班 级:应电学 号:0832100589学生姓名:梁启超 指导教师:潘金凤2011年06月目录一、多功能电子万年历及FPGA简介 11.1电子万年历的发展 11.2 FPGA简介 11.3 电子万年历的工作原理 2二、多功能电子万年历各功能模块实现 42.1 时钟问题 42.1.1 全局时钟 42.1.2 门控时钟 42.1.3 多级逻辑时钟 52.1.4 波动式时钟 52.2 电子万年历的控制系统 62.3 主控制模块 maincontrol 72.4 时间及其设置模块 time_auto_and_set 82.2.1 时间模块 timepiece_main 82.2.2 时间设置模块 timeset 92.2.3 时间数据与时间设置数据多路选择模块 time_mux 112.3 时间显示动态位选模块 time_disp_select 132.4 显示模块 disp_data_mux 142.5 秒表模块 stopwatch 152.6 日期显示与设置模块 date_main 162.6.1 日期自动工作模块 autodate 162.6.2 日期设置模块 setdate 172.7 闹钟模块alarmclock 172.8 分频模块 fdiv 192.9 顶层模块图 20三、附录 22电子万年历系统的Verilog HDL语言程序设计部分代码 223.1主控制模块 223.2秒自动计时子模块 243.3时间自动工作控制 243.4时间数据与时间设置数据多路选择模块 253.5时间及其设置模块 263.6时间显示动态位选模块 273.7秒表模块 283.8分频模块 28参考文献 301 引言1.1 选题意义钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能,诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、定时启闭路灯等。
所有这些,都是以钟表数字化为基础的因此,研究电子万年历及扩大其应用,有非常现实的意义数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用电子万年历从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路因此,我们此次设计与制做电子万年历就是为了了解数字钟的原理,从而学会制作数字钟而且通过万年历的制作进一步了解各种在制作中用到的中小规模集成电路的作用及使用方法,且由于电子万年历包括组合逻辑电路和时序电路,通过它可以进一步学习与掌握各种组合逻辑电路与时序电路的原理与使用方法本设计基于 FPGA 芯片,外围电路简单,系统集成化程度高,精度高,采用 Verilog HDL语言编程,用软件的方式设计硬件,灵活性好,方便以后的产品升级 1.2电子万年历的研究背景 在当代繁忙的工作与生活中,时间与我们每一个人都有非常密切的关系,每个人都受到时间的影响为了更好的利用我们自己的时间,我们必须对时间有一个度量,因此产生了钟表钟表的发展是非常迅速的,从刚开始的机械式钟表到现在普遍用到的数字式钟表,即使现在钟表千奇百怪,但是它们都只是完成一种功能——计时功能,只是工作原理不同而已,在人们的使用过程中,逐渐发现了钟表的功能太单一,没有更大程度上的满足人们的需求。
因此在这里,我想能不能把一些辅助功能加入钟表中在此设计中所设计的钟表不但具有普通钟表的功能,它还能实现额外的功能:世界时、农历显示人类不断研究,不断创新纪录发展到现在人们广泛使用的万年历 万年历是采用数字电路实现对.时,分,秒.数字显示的计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,但是所有这些,都是以钟表数字化为基础的因此,研究万年历及扩大其应用,有着非常现实的意义它可以对年、月、日、周日、时、分、秒进行计时,对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒等信息,还具有时间校准等功能综上所述此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景1.3国内外产品研究综述 万年历具有读取方便、显示直观、功能多样、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。
近些年我国也开始重视对电子万年历的开发与设计,让更多的电子时钟能够走进人民生活,让更多的人能够应用到功能强大,精度高的电子时钟但是仍然存在很多问题 中国电子万年历产业发展出现的问题中,许多情况不容乐观,如产业结构不合理、产业集中于劳动力密集型产品;技术密集型产品明显落后于发达工业国家;生产要素决定性作用正在削弱;产业能源消耗大、产出率低、环境污染严重、对自然资源破坏力大;企业总体规模偏小、技术创新能力薄弱、管理水平落后等 中国电子万年历产业发展研究报告阐述了世界电子万年历产业的发展历程,分析了中国电子万年历产业发展现状与差距,开创性地提出了“新型电子万年历产业” 及替代品产业概念,在此基础上,从四个维度即“以人为本”、“科技创新”、“环境友好”和“面向未来”准确地界定了“新型电子万年历产业” 及替代产品的内涵根据“新型电子万年历产业” 及替代品的评价体系和量化指标体系,从全新的角度对中国电子万年历产业发展进行了推演和精准预测,在此基础上,对中国的行政区划和四大都市圈的电子万年历产业发展进行了全面的研究 随着人们生活水平的提高和生活节奏的加快,对时间的要求越来越高,精准数字计时的消费需求也是越来越多。
[1]一、多功能电子万年历及FPGA简介1.1电子万年历的发展钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能,诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、定时启闭路灯等所有这些,都是以钟表数字化为基础的因此,研究电子万年历及扩大其应用,有非常现实的意义数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用电子万年历从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路因此,我们此次设计与制做电子万年历就是为了了解数字钟的原理,从而学会制作数字钟而且通过万年历的制作进一步了解各种在制作中用到的中小规模集成电路的作用及使用方法,且由于电子万年历包括组合逻辑电路和时序电路,通过它可以进一步学习与掌握各种组合逻辑电路与时序电路的原理与使用方法1.2 FPGA简介PLD/FPGA是近几年集成电路中发展最快的产品由于PLD性能的高速发展以及设计人员自身能力的提高,可编程逻辑器件供应商将进一步扩大可编程芯片的领地,将复杂的专用芯片挤向高端和超复杂应用。
据IC Insights的数据显示,PLD市场从1999年的29亿美元增长到去年的56亿美元,几乎翻了一番Matas预计这种高速增长局面以后很难出现,但可编程逻辑器件依然是集成电路中最具活力和前途的产业复杂可编程逻辑器件 可编程逻辑器件的两种主要类型是现场可编程门阵列(FPGA)和复杂可编程逻辑(CPLD) 在这两类可编程逻辑器件中,FPGA提供了最高的逻辑密度、最丰富的特性和最高的性能 现在最新的FPGA器件,如Xilinx Virtex"系列中的部分器件,可提供八百万"系统门"(相对逻辑密度) 这些先进的器件还提供诸如内建的硬连线处理器(如IBM Power PC)、大容量存储器、时钟管理系统等特性,并支持多种最新的超快速器件至器件(device-to-device)信号技术 FPGA被应用于范围广泛的应用中,从数据处理和存储,以及到仪器仪表、电信和数字信号处理等1.3 电子万年历的工作原理按键消抖 可 编功能键 程调整键1 逻调整键2 辑 器 件 CPLD/FPGA LED显示模块u 功能键用来选择不同的工作模式:时间正常显示功能、时间调整与显示、秒表功能、闹钟设置与查看、日期显示、日期调整与设置。
u 调整键1:主要用于闹钟设置、日期显示与调整、秒表、时间调整与设置中的位置选择按钮,与功能键配合使用Ø 2号键功能模式,即时间调整与设置时,用作时、分、秒的移位,按一下,将会实现“时-分-秒”的依次移位,便于在特定位置进行调整;Ø 4号键功能模式,即闹钟设置与查看时,同样用作时、分、秒的移位,按一下,将会实现“时-分-秒”的依次移位,便于在特定位置进行调整;Ø 6号键功能模式,即日期调整与设置时,用作月、日的移位,按一下,将会实现“月-日”的依次移位,便于在特定位置进行调整u 调整键2:主要用于闹钟设置、日期显示与调整、秒表、时间调整与设置中的调整按钮,与功能键配合使用Ø 2号键功能模式,即时间调整与设置时,用作时、分、秒的调整,按一下,将会使得当前调整键1选择的位置数字增加1;Ø 4号键功能模式,即闹钟设置与查看时,同样用作时、分、秒的调整,按一下,将会使得当前调整键1选择的位置数字增加1;Ø 6号键功能模式,即日期调整与设置时,用作月、日的移位,按一下,将会使得当前调整键1选择的位置数字增加1二、多功能电子万年历各功能模块实现2.1 时钟问题无论是用离散逻辑、可编程逻辑,还是用全定制器件实现任何数字电路,设计不良的时钟在极限温度、电压或制造工艺存在偏差的情况下将导致系统错误的行为,所以可靠的时钟设计是非常关键的。
在FPGA设计时通常采用四种时钟:全局时钟、门控时钟、多级逻辑时钟和波动式时钟,多时钟系统是这四种时钟类型的任意组合2.1.1 全局时钟对于一个设计项目来说,全局时钟(或同步时钟)是最简单和最可预测的时钟在FPGA设计中最好的时钟方案是:由专用的全局时钟输入引脚驱动单个主时钟去控制设计项目中的每一个触发器FPGA一般都具有专门的全局时钟引脚,在设计项目时应尽量采用全局时钟,它能够提供器件中最短的时钟到输出的延时2.1.2 门控时钟在许多应用中,整个设计项目都采用外部的全局时钟是不可能或不实际的,所以通常用阵列时钟构成门控时钟门控时钟常常同微处理器接口有关,例如用地址线去控制写脉冲每当用组合逻辑来控制触发器时,通常都存在着门控时钟在使用门控时钟时,应仔细分析时钟函数,以避免毛刺的影响如果设计满足下述两个条件,则可以保证时钟信号不出现危险的毛刺,门控时钟就可以像全局时钟一样可靠工作:u 驱动时钟的逻辑必须只包含一个“与门”或一个“或门”,如果采用任何附加逻辑,就会在某些工作状态下出现由于逻辑竞争而产生的毛刺u 逻辑门的一个输入作为实际的时钟,而该逻辑门的所有其他输入必须当成地址或控制线,它们遵守相对于时钟的建立和保持时间的约束。
2.1.3 多级逻辑时钟当产生门控时钟的组合逻辑超过一级,即超过单个的“与门”。






![河南新冠肺炎文件-豫建科[2020]63号+豫建科〔2019〕282号](http://img.jinchutou.com/static_www/Images/s.gif)





