ImageVerifierCode 换一换
格式:DOC , 页数:44 ,大小:578KB ,
资源ID:2593924      下载积分:10 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

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

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     留言反馈    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(毕业论文设计--万年历的设计与实现论文.doc)为本站上传会员【可****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

毕业论文设计--万年历的设计与实现论文.doc

1、内蒙古大学鄂尔多斯学院11级自动化 万年历的设计与实现摘要:本设计为一个多功能的万年历,具有年、月、日、时、分、秒计数显示功能,以24小时循环计数,具有校对功能。本设计采用EDA技术,以硬件描述语言verilog HDL和VHDL为系统逻辑描述手段设计文件,在Quartus II工具软件环境下,采用自顶向下的设计方法,由各个基本模块共同构建了一个基于KH-310开发工具的万年历。系统主芯片采用EP1C12Q240C8,由主程序和BCD模块组成。经编译和仿真所设计的程序,在可编程逻辑器件上下载验证,本系统通过控制能够完成年、月、日和时、分、秒的分别显示,由按键输入进行数字钟的校时、切换、扫描功能

2、。关键字:VHDL Verilog HDL EDA 万年历 目录一、绪论.11.1选题背景.1 1.2课题相关技术的发展.11.3课题研究的必要性.21.4课题研究的内容.3二、EDA技术.42.1 EDA概述.42.2什么是EDA.42.3 EDA的特点.5三、FPGA简介.73.1 FPGA概述.73.2 FPGA开发编程原理.73.3FPGA基本结构.83.4 FPGA系统设计流程.10四、万年历设计方案.134.1万年历的原理.134.2 实验程序.134.3 实验连接.344.4 实验仿真与实现.35五、实验结论与研究展望.375.1实验结论.375.2研究展望.37致谢.38参考文

3、献.390内蒙古大学鄂尔多斯学院11级自动化专业 绪论0140内蒙古大学鄂尔多斯学院11级自动化专业1.1选题背景20世纪末,数字电子技术飞速发展,有力的推动了社会生产力的发展和社会信息化的提高。在其推动下,数字技术的应用已经渗透到人类生活的各个方面。从计算机到手机,从数字电话到数字电视,从家用电器到军用设备,从工业自动化到航天技术,都尽可能的采用了数字电子技术。而现代电子设计技术的核心是EDA技术。 本设计采用的VHDL和Verilog HDL是两种应用最为广泛硬件描述语言。前者具有很强大的功能,覆盖面广,描述能力强,支持门级电路的描述,也支持以寄存器、存储器、总线及其运算单元等构成的寄存器

4、传输级电路的描述,还支持以行为算法和结构的混合描述为对象的系统级电路的描述。后者可以用来进行各种层次的逻辑设计,也可以进行数字系统的逻辑综合、仿真验证和时序分析。而采用Verilog HDL进行电路设计的最大优点就是设计与工艺无关性。本设计将从EDA中FPGA嵌入式应用开发技术与数字钟技术发展的客观实际出发,通过对该技术发展状况的了解,以及课题本身的需要,指出研究基于FPGA的芯片系统与设计万年历的设计与实现的必要性。1.2课题相关技术的发展当今电子产品正向功能多元化,体积最小化,功耗最低化的方向发展。它与传统的电子产品在设计上的显著区别师大量使用大规模可编程逻辑器件,使产品的性能提高,体积缩

5、小,功耗降低。同时广泛运用现代计算机技术,提高产品的自动化程度和竞争力,缩短研发周期。EDA技术正是为了适应现代电子技术的要求,吸收众多学科最新科技成果而形成的一门新技术。美国Altera公司的可编程逻辑器件采用全新的结构和先进的技术,加上MaxplusII(或最新的QUARTUS)开发环境,更具有高性能,开发周期短等特点,十分方便进行电子产品的开发和设计。EDA技术以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件的方式设计的电子系统到硬件系统的逻辑编译,逻辑化简,逻

6、辑分割,逻辑映射,编程下载等工作。最终形成集成电子系统或专用集成芯片的一门新技术。1.3课题研究的必要性如今的时代是科技是第一生产力的时期。因此,新产品、新技术层出不穷,电子技术的发展更是日新月异。在这快速发展的年代,时间对人们来说是越来越宝贵,在快节奏的生活时,人们往往忘记了时间,一旦遇到重要的事情而忘记了时间,这将会带来很大的损失。因此我们需要一个定时系统来提醒这些忙碌的人。数字化的钟表给人们带来了极大的方便。近些年,随着科技的发展和社会的进步,人们对数字钟的要求也越来越高,传统的时钟已不能满足人们的需求。多功能,样式新颖已经成为数字钟的发展潮流。1.4 课题研究的内容本设计主要研究基于F

7、PGA的数字钟,要求时间以24小时为一个周期,显示年、月、日、时、分、秒,可以对年、月、日、时、分及秒进行单独校对,使其校正到标准时间。因此,研究数字钟及扩大其应用,有着非常现实的意义。二、EDA技术2.1 EDA概述EDA在通信行业(电信)里的另一个解释是企业数据架构,EDA给出了一个企业级的数据架构的总体视图,并按照电信企业的特征,进行了框架和层级的划分。 “EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪60年代中期从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的1

8、。”2.2 什么是EDA20世纪90年代,国际上电子和计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、工具等方面进行了彻底的变革,取得了巨大成功。在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用,已得到广泛的普及,这些器件为数字系统的设计带来了极大的灵活性。这些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计可以如同软件设计那样方便快捷。这一切极大地改变了传统的数字系统设计方法、设计过程和设计观念,促进了EDA技术的迅速发展。 EDA技术就是依靠功能强大的电子计算机,在EDA工具软件平台上,对以硬件描述语言HDL(Hardwar

9、e Description Language)为系统逻辑描述手段完成设计文件,自动地完成逻辑编译、化简、分割、综合、优化、仿真,直至下载到可编程逻辑器件CPLD/FPGA或专用集成电路ASIC(Application Specific Integrated Circuit)芯片中,实现既定的电子电路设计功能1。EDA技术使得电子电路设计者的工作仅限于利用硬件描述语言和EDA软件平台来完成对系统硬件功能的实现,极大地提高了设计效率,缩短了设计周期,节省了设计成本。 今天,EDA技术已经成为电子设计的重要工具,无论是设计芯片还是设计系统,如果没有EDA工具的支持,都将难以完成的。EDA工具已经成为

10、现代电路设计师的重要武器,正在发挥着越来越重要的作用。 2.3 EDA的特点(1) 高层综合和优化。为了能更好地支持自顶向下的设计方法,现代的EDA工具能够在系统进行综合和优化,这样就缩短了设计的周期,提高了设计效率。(2)采用硬件描述语言进行设计。采用硬件描述语言进行电路与系统的描述是当前EDA技术的另一个特征。与传统的原理图设计方法相比,HDL语言更适合描述规模大的数字系统,它能够使设计者在比较抽象的层次上对所设计系统的结构和逻辑功能进行描述。采用HDL语言设计的突出优点是:语言的公开性和利用性;设计与工艺的无关性;宽范围的描述能力;便于组织大规模系统的设计;便于设计的复用,交流,保存和修

11、改等。目前最常用的硬件描述语言有VHDL和Verilog HDL,它们都已经成为IEEE标准。(3)开放性和标准化。现代EDA工具普遍采用标准化和开放性框架结构,任何一个EDA系统只要建立了一个符合标准的开放式框架结构,就可以接纳其他厂商的EDA工具仪器进行设计工作。这样就可以实现各种EDA工具的优化组合,并集成在一个易于管理的统一环境下,实现资源共享。三、FPGA简介3.1 FPGA概述“FPGA(FieldProgrammable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定

12、制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。2”3.2FPGA开发编程原理 FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。 现场可编程门阵列(FPGA)是可编程器件,与传统逻辑电路和门阵列(如PAL,GAL及CPLD器件)相比,FPGA具有不同的结构。FPGA利用小型查找表(161RAM)来实现组合逻辑,每个查找表连接到一个D触发器的输

13、入端,触发器再来驱动其他逻辑电路或驱动I/O,由此构成了既可实现组合逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块。“FPGA的逻辑是通过向内部静态存储单元加载编程数据来实现的,存储在存储器单元中的值决定了逻辑单元的逻辑功能以及各模块之间或模块与I/O间的联接方式并最终决定了FPGA所能实现的功能,FPGA允许无限次的编程2。”3.3 FPGA基本结构FPGA具有掩膜可编程门阵列的通用结构,它由逻辑功能块排成阵列,并由可编程的互连资源连接这些逻辑功能块来实现不同的设计。FPGA一般由3种可编程电路和一个用于存放编程数据的静态存储器SRAM组成。

14、这3种可编程电路是:可编程逻辑模块(CLB-Configurable Logic Block)、输入/输出模块(IOB-I/O Block)和互连资源(IRInterconnect Resource)2。可编程逻辑模块CLB是实现逻辑功能的基本单元,它们通常规则的排列成一个阵列,散布于整个芯片;可编程输入/输出模块(IOB)主要完成芯片上的逻辑与外部封装脚的接口,它通常排列在芯片的四周;可编程互连资源包括各种长度的连接线段和一些可编程连接开关,它们将各个CLB之间或CLB、IOB之间以及IOB之间连接起来,构成特定功能的电路。(1) CLB是FPGA的主要组成部分。它主要由逻辑函数发生器、触发

15、器、数据选择器等电路组成。CLB中3个逻辑函数发生器分别是G、F和H,相应的输出是G 、F和H。G有4个输入变量G1、G2、G3和G4;F也有4个输入变量F1、F2、F3和F4。这两个函数发生器是完全独立的,均可以实现4输入变量的任意组合逻辑函数。逻辑函数发生器H有3个输入信号;前两个是函数发生器的输出G和F,而另一个输入信号是来自信号变换电路的输出H1。这个函数发生器能实现3输入变量的各种组合函数。这3个函数发生器结合起来,可实现多达9变量的逻辑函数。CLB中有许多不同规格的数据选择器(四选一、二选一等),通过对CLB内部数据选择器的编程,逻辑函数发生器G、F和H的输出可以连接到CLB输出端

16、X或Y,并用来选择触发器的激励输入信号、时钟有效边沿、时钟使能信号以及输出信号。这些数据选择器的地址控制信号均由编程信息提供,从而实现所需的电路结构。CLB中的逻辑函数发生器F和G均为查找表结构,其工作原理类似于ROM。F和G的输入等效于ROM的地址码,通过查找ROM中的地址表可以得到相应的组合逻辑函数输出。另一方面,逻辑函数发生器F和G还可以作为器件内高速RAM或小的可读写存储器使用,它由信号变换电路控制。(2) 输入/输出模块IOB。IOB提供了器件引脚和内部逻辑阵列之间的连接。它主要由输入触发器、输入缓冲器和输出触发/锁存器、输出缓冲器组成。每个IOB控制一个引脚,它们可被配置为输入、输

17、出或双向I/O功能。当IOB控制的引脚被定义为输入时,通过该引脚的输入信号先送入输入缓冲器。缓冲器的输出分成两路:一路可以直接送到MUX,另一路经延时几纳秒(或者不延时)送到输入通路D触发器,再送到数据选择器。通过编程给数据选择器不同的控制信息,确定送至CLB阵列的I1和I2是来自输入缓冲器,还是来自触发器。当IOB控制的引脚被定义为输出时,CLB阵列的输出信号OUT也可以有两条传输途径:一条是直接经MUX送至输出缓冲器,另一条是先存入输出通路D触发器,再送至输出缓冲器。IOB输出端配有两只MOS管,它们的栅极均可编程,使MOS管导通或截止,分别经上拉电阻接通Vcc、地线或者不接通,用以改善输

18、出波形和负载能力。(3) 可编程互连资源IR。可编程互连资源IR可以将FPGA内部的CLB和CLB之间、CLB和IOB之间连接起来,构成各种具有复杂功能的系统。IR主要由许多金属线段构成,这些金属线段带有可编程开关,通过自动布线实现各种电路的连接。3.4FPGA系统设计流程一般说来,一个比较大的完整的项目应该采用层次化的描述方法:分为几个较大的模块,定义好各功能模块之间的接口,然后各个模块再细分去具体实现,这就是TOP DOWN(自顶向下)的设计方法。目前这种高层次的设计方法已被广泛采用。高层次设计只是定义系统的行为特征,可以不涉及实现工艺,因此还可以在厂家综合库的支持下,利用综合优化工具将高

19、层次描述转换成针对某种工艺优化的网络表,使工艺转化变得轻而易举。CPLD/FPGA系统设计的工作流程如图2-2所示。图3.1FPGA系统设计流程设计准备设计输入原理图硬件描述语言波形图设计处理优化、综合适配、分割布局、布线设计完成器件编程功能仿真时序仿真器件测试 流程说明:1.工程师按照“自顶向下”的设计方法进行系统划分。2.输入verilog HDL代码,这是设计中最为普遍的输入方式。此外,还可以采用图形输入方式(框图、状态图等),这种输入方式具有直观、容易理解的优点。3.将以上的设计输入编译成标准的verilog HDL文件。4.进行代码级的功能仿真,主要是检验系统功能设计的正确性。这一步

20、骤适用于大型设计,因为对于大型设计来说,在综合前对源代码仿真,就可以大大减少设计重复的次数和时间。一般情况下,这一仿真步骤可略去。5.利用综合器对verilog HDL源代码进行综合优化处理,生成门级描述的网络表文件,这是将高层次描述转化为硬件电路的关键步骤。综合优化是针对ASIC芯片供应商的某一产品系列进行的,所以综合的过程要在相应的厂家综合库的支持下才能完成。6.利用产生的网络表文件进行适配前的时序仿真,仿真过程不涉及具体器件的硬件特性,是较为粗略的。一般的设计,也可略去这一步骤。7.利用适配器将综合后的网络表文件针对某一具体的目标器件进行逻辑映射操作,包括底层器件配置、逻辑分割、逻辑优化

21、和布局布线。8.在适配完成后,产生多项设计结果:(a)适配报告,包括芯片内部资源利用情况,设计的布尔方程描述情况等;(b)适配后的仿真模型;(c)器件编程文件。根据适配后的仿真模型,可以进行适配后时序仿真,因为已经得到器件的实际硬件特性(如时延特性),所以仿真结果能比较精确的预期未来芯片的实际性能。如果仿真结果达不到设计要求,就修改verilog HDL源代码或选择不同速度和品质的器件,直至满足设计要求。最后将适配器产生的器件编程文件通过编程器或下载电缆载入到目标芯片CPLD/FPGA中。四、万年历总体设计方案4.1 万年历原理 设计原理如图4.1所示:基准时钟置数按键控制按键显示动态显示译码

22、计数器 图4.1 设计原理图计数器在正常情况下是对1HZ的频率计数,在调整时间状况下是对需要调整的时间模块进行计数;控制按键用来选择是正常计数还是调整时间并决定调整时、分、秒;置数按键按下时,表示相应的调整块要加一,如要对小时调整时,显示时间的LED管将闪烁且当置数按键按下时,相应的小时显示要加一。动态显示模块是对计数器的计数进行译码,送到LED显示。4.2 实验程序(1) Clock模块Library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity Clock is port( mode, set

23、, clr, clk ,k:in std_logic; seg7, segctr :out std_logic_vector(7 downto 0) );end entity;ARCHITECTURE arch OF Clock ISsignal state: std_logic_vector(1 downto 0);signal Hour, Min, Sec,Year,Mon,Day,d: std_logic_vector(5 downto 0);signal BCDH, BCDM, BCDS,BCDN,BCDY,BCDR: std_logic_vector(7 downto 0);sign

24、al segDat: std_logic_vector(3 downto 0);signal blink: std_logic_vector(2 downto 0);signal set_reg, blink_clk: std_logic; component BCD port(DataIn : in std_logic_vector(5 downto 0); BCDOut : out std_logic_vector(7 downto 0) ); end component;BEGIN process(mode) begin if (clr=1) then state=00; else if

25、 (modeevent and mode=1) then state blink blinkblink_clk, others=0); when 10 = blinkblink_clk, others=0); when 11 = blinkblink_clk, others=0); end case; end process; process(Mon, Year,d)begin case Mon is when 000001 = d case Year is when 010000 = d d d d d d d d d d d d d d d d d d d d d d d d=011110

26、; end case;end process;process(clk)variable blink_cnt: std_logic_vector(13 downto 0);begin if (clr=1) then blink_clk0); else if (clkevent and clk=1) then if (blink_cnt=11000011010011) then blink_cnt:=(others=0); blink_clk=not blink_clk; else blink_cnt:=blink_cnt+1; end if; end if; end if; end proces

27、s;process(clk, state)variable clk_cnt: std_logic_vector(16 downto 0);begin if (clr=1) then Hour=000000; Min=000000; Sec=000000; Year=000000; Mon=000000; Day0);set_reg if (clk_cnt=11000011010011111) then clk_cnt:=(others=0); if (Sec=59) then Sec0); if (Min=59) then Min0); if (Hour=23) then Hour0); if

28、 (Day=d) then Day=000001; if (Mon=12) thenMon=000001;if (Year=63) thenYear=000001; else Year=Year+1; end if; else Mon=Mon+1; end if; else Day=Day+1; end if; else Hour=Hour+1; end if; else Min=Min+1; end if; else Sec if(k=1)then if (set=1) then if set_reg=0 then set_reg=1; if (Year=63) then Year=0000

29、01; else Year=Year+1; end if; end if; else set_reg=0; end if; else if (set=1) then if set_reg=0 then set_reg=1; if (Hour=23) then Hour0); else Hour=Hour+1; end if; end if; else set_reg if(k=1)then if (set=1) then if set_reg=0 then set_reg=1; if (Mon=12) then Mon=000001; else Mon=Mon+1; end if; end i

30、f; else set_reg=0; end if; else if (set=1) then if set_reg=0 then set_reg=1; if (Min=59) then Min0); else Min=Min+1; end if; end if; else set_reg if(k=1)then if (set=1) then if set_reg=0 then set_reg=1; if (Day=d) then Day=000001; else Day=Day+1; end if; end if; else set_reg=0; end if; else if (set=1) then if set_reg=0 then set_reg=1; if (Sec=59) then Sec0); else Sec=Sec+1; end if; end if; else set_reg=0

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服