数字密码锁电路设计论文_第1页
数字密码锁电路设计论文_第2页
数字密码锁电路设计论文_第3页
数字密码锁电路设计论文_第4页
数字密码锁电路设计论文_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.PAGE *II. 工业大学北方信息工程学院本科毕业设计(论文)题目:数字密码锁电路设计系 别: 电子信息系 专 业: 通信工程 班 级: B100308 学 生: 蓉 学 号: B10030843 指导教师: 学智 丽娟 2014年05月. 毕业设计论文任务书系别 电子信息系 专业 通信工程 班级 B100308 蓉 * B10030843 1.毕业设计论文题目: 数字密码锁电路设计2.题目背景和意义:现存的密码锁大多是基于数字电路设计的,这种密码锁设计思路简单、易于实现,但是过多的原器件的组合给推广和流行带来了不便。根据这种情况研究出来一种功能强大、易于推广的密码锁已经迫在眉睫。而数字密

2、码锁具有高平安性、低本钱、易操作、密码可更换、体积小,功耗低,操作简单易于修改和维护等优点,受到越来越多人的欢送。 用VHDL可以快速灵活地设计出符合各种要求的数字密码锁,而且操作简单,稍加修改就可以改变密码的位数,增强其平安性,且很容易做成ASIC芯片,使设计过程到达高度自动化,并能够在设计完成后在Ma*plusII环境下进展电路的模拟仿真。 3.设计论文的主要容理工科含技术指标:密码输入:每按下一个数字键,就输入一个数值,并在显示器上显示该数值,同时将先前输入的数据依次左移一个数字位置。密码去除:按下去除键可去除前面所有输入的值。密码更改:按下更改键可将目前的数码设定成新的密码。密码上锁:

3、按下上锁键可将密码锁定。 4.设计的根本要求及进度安排含起始时间、设计地点:(1)选题、收集资料、确定开发工具、理解题目、开题报告3周(2)设计与实施方案,理解硬件电路,设计VHDL程序6周 3准备中期辩论、中期报告2周(4)验证程序,撰写毕业论文5周 5.毕业设计(论文)的工作量要求 撰写15000字论文 实验(时数)*或实习(天数): 图纸(幅面和数)*: 其他要求: 查阅资料不少于10份 指导教师签名: 年 月 日 学生签名: 年 月 日 系主任审批: 年 月 日说明:1本表一式二份,一份由学生装订入册,一份教师自留。2 带*项可根据学科特点选填。. 数字密码锁电路设计摘 要现存的密码锁

4、大多是基于数字电路设计的,这种密码锁设计思路简单、易于实现,但是过多的原器件的组合给推广和流行带来了不便,根据这种情况研究出来一种功能强大、易于推广的密码锁已经迫在眉睫。本文介绍了一种在Ma*plusII软件下,基于VHDL语言的复杂可编程逻辑器件的四位密码锁的设计方法,阐述了其软件设计方法。该密码锁通过三个模块:输入模块、控制模块、显示模块,从而实现密码输入、密码更改、密码去除、上锁解锁等功能,在输入模块包括时序产生电路、键盘扫描电路、键盘弹跳消除电路、键盘译码电路等几个小的功能电路;在控制模块包括按键数据的缓冲存储电路,密码的去除、变更、存储,密码核对即数值比拟电路,解锁电路即开/关门锁电

5、路等;显示模块主要将要显示数据的BCD码转换成数码器的七段显示驱动编码,在数码管上依次显示出来。本设计最后对每个模块进展仿真,验证该密码锁满足设计要求。利用这种方法设计的密码锁具有高平安性、低本钱、易操作、密码可更换、体积小,功耗低,操作简单易于修改和维护等优点。关键词:密码锁;VHDL;Ma*plusII;CPLD. Digital Code Lock Circuit Design AbctractThe e*isting locks are mostly designed based on digital circuit,the cipher lock design idea is sim

6、ple,easy to implement,but the original device bination of brought inconvenience to the promotion and popularity,according to this study out a powerful,easy to promote the password lock has been imminent.This paper introduces a kind of design method in ma*plusII software,four bit password VHDL langua

7、ge of the ple* programmable logic device lock based on,describes its software design method.The cipher lock through three modules:input module,control module,display module,so as to realize the password input,change the password,password removal,locking and unlocking functions in the input module in

8、cludes a functional circuit,timing circuit,keyboard scanning circuit,keyboard bounce several elimination circuit,keyboard decoding circuit to control module include sasmall;key data buffer storage circuit,password changes,cleaning,storage,password verification(i.e.numerical parison circuit),unlock c

9、ircuit(open, closed lock circuit);the main display module to display data BCD code into seven segment digital device driver code,in the digital tube display.The design and Simulation of each module,verify the password lock to meet the design requirements.Using this design method of cipher lock with

10、high security,low cost,easy to operate,the pass word can be replaced,small volume,power consumption, simple operation easy to modify and maintain.Key Words:Lock;VHDL;Ma*plusII;CPLD. 目 录TOC o 1-3 h u HYPERLINK l _Toc31154 1 绪论 PAGEREF _Toc31154 1 HYPERLINK l _Toc10945 1.1课题设计背景 PAGEREF _Toc10945 1 HY

11、PERLINK l _Toc23405 1.2课题研究的意义 PAGEREF _Toc23405 1 HYPERLINK l _Toc5970 1.3国外相关研究情况 PAGEREF _Toc5970 1 HYPERLINK l _Toc28056 2 技术介绍 PAGEREF _Toc28056 2 HYPERLINK l _Toc12759 2.1EDA技术介绍 PAGEREF _Toc12759 2 HYPERLINK l _Toc8468 2.1.1EDA技术的开展趋势 PAGEREF _Toc8468 2 HYPERLINK l _Toc413 2.1.2EDA技术的根本特征 PAG

12、EREF _Toc413 3 HYPERLINK l _Toc21193 2.2硬件描述语言VHDL PAGEREF _Toc21193 5 HYPERLINK l _Toc15037 2.2.1VHDL语言的特点 PAGEREF _Toc15037 5 HYPERLINK l _Toc4111 2.2.2VHDL的设计流程 PAGEREF _Toc4111 6 HYPERLINK l _Toc16217 2.3复杂可编程逻辑器件 PAGEREF _Toc16217 6 HYPERLINK l _Toc29922 2.3.1CPLD的研究现状 PAGEREF _Toc29922 6 HYPER

13、LINK l _Toc318 2.3.2CPLD的开展趋势 PAGEREF _Toc318 7 HYPERLINK l _Toc18128 2.3.3CPLD的研究方法 PAGEREF _Toc18128 7 HYPERLINK l _Toc31099 2.3.4CPLD的特点 PAGEREF _Toc31099 7 HYPERLINK l _Toc28335 2.4MA*+plus概述 PAGEREF _Toc28335 7 HYPERLINK l _Toc20655 2.4.1Ma*+plus开发系统的特点 PAGEREF _Toc20655 8 HYPERLINK l _Toc30893

14、 2.4.2Ma*plusII软件版本 PAGEREF _Toc30893 8 HYPERLINK l _Toc14382 2.4.3Ma*plusII设计方法 PAGEREF _Toc14382 9 HYPERLINK l _Toc1713 3 总体方案 PAGEREF _Toc1713 10 HYPERLINK l _Toc17154 3.1系统设计要求 PAGEREF _Toc17154 10 HYPERLINK l _Toc27054 3.2总体框图 PAGEREF _Toc27054 10 HYPERLINK l _Toc1744 4 模块电路设计 PAGEREF _Toc1744

15、13 HYPERLINK l _Toc28128 4.1密码锁输入模块的设计 PAGEREF _Toc28128 13 HYPERLINK l _Toc24250 4.1.1矩阵式键盘工作原理 PAGEREF _Toc24250 13 HYPERLINK l _Toc3646 4.1.2时序产生电路 PAGEREF _Toc3646 14 HYPERLINK l _Toc11769 4.1.3键盘扫描电路 PAGEREF _Toc11769 15 HYPERLINK l _Toc19842 4.1.4键盘译码电路 PAGEREF _Toc19842 15 HYPERLINK l _Toc212

16、23 4.1.5弹跳消除电路 PAGEREF _Toc21223 16 HYPERLINK l _Toc13862 4.1.6密码锁输入模块原理图 PAGEREF _Toc13862 16 HYPERLINK l _Toc7585 4.1.7VHDL局部源程序及流程图 PAGEREF _Toc7585 16 HYPERLINK l _Toc12173 4.1.8仿真结果 PAGEREF _Toc12173 19 HYPERLINK l _Toc15286 4.2密码锁控制模块设计 PAGEREF _Toc15286 19 HYPERLINK l _Toc24157 4.2.1密码锁控制模块原理

17、图 PAGEREF _Toc24157 20 HYPERLINK l _Toc5801 4.2.2控制模块局部源程序及流程图 PAGEREF _Toc5801 20 HYPERLINK l _Toc14221 4.2.3仿真结果 PAGEREF _Toc14221 22 HYPERLINK l _Toc22058 4.3密码锁显示模块 PAGEREF _Toc22058 23 HYPERLINK l _Toc12988 4.3.1显示模块原理图 PAGEREF _Toc12988 24 HYPERLINK l _Toc4490 4.3.2显示模块局部源程序及流程图 PAGEREF _Toc44

18、90 25 HYPERLINK l _Toc11513 4.3.3仿真结果 PAGEREF _Toc11513 26 HYPERLINK l _Toc6237 5 程序调试及系统仿真 PAGEREF _Toc6237 27 HYPERLINK l _Toc21581 参考文献 PAGEREF _Toc21581 30 HYPERLINK l _Toc28720 致 PAGEREF _Toc28720 32 HYPERLINK l _Toc7109 附录1 程序清单 PAGEREF _Toc7109 35. 1 绪论1.1课题设计背景现存的密码锁大多是基于数字电路设计的,这种密码锁设计思路简单、

19、易于实现,但是过多的原器件的组合给推广和流行带来了不便。而且随着社会物质财富的日益增长,平安防盗已成为全社会问题。人们对锁的要求越来越高,既要平安可靠地防盗,又要使用方便。根据这种情况研究出来一种功能强大、易于推广的密码锁已经迫在眉睫。而数字密码锁具有高平安性、低本钱、易操作、密码可更换、体积小,功耗低,操作简单易于修改和维护等优点,受到越来越多人的欢送。1.2课题研究的意义 现在广为流行的VHDL语言,描述能力强、覆盖面广、抽象能力强,所以采用VHDL建立硬件模型可以解决原器件过多而导致设计复杂的问题。用VHDL可以快速灵活地设计出符合各种要求的数字密码锁,而且操作简单,稍加修改就可以改变密

20、码的位数,增强其平安性,且很容易做成ASIC芯片,使设计过程到达高度自动化,并能够在设计完成后在Ma*plusII环境下进展电路的模拟仿真。1.3国外相关研究情况 电子密码锁的种类繁多,例如数码锁、指纹锁、磁卡锁、IC卡锁、生物锁等,但较实用的还是按键式电子密码锁。20世纪80年代后,随着电子锁专用集成电路的出现,电子锁的体积缩小,可靠性提高,本钱较高,是适合使用在平安性要求较高的场合,而且需要有电源提供能量,使用还局限在一定围,难以普及,所以对它的研究一直没有明显的进展。目前,在西方兴旺国家,密码锁技术相对先进,种类齐全,电子密码锁已被广泛应用于只能门禁系统中,通过多种更加平安,更加可靠的技

21、术实现大门的管理。在我国密码锁整体水平尚处在国际70年代左右,电子密码锁的本钱还很高,市场上仍以按键电子锁为主,按键式和卡片钥匙式电子锁已引进国际先进水平,现国有几个厂生产供给市场。但国自行研制开发的电子锁,其市场构造尚未形成,应用还不广泛。国的不少企业也引进了世界上先进的技术,开展前景非常可观。希望通过不的努力,使电子密码锁在我国也能得到广发应用。. 2 技术介绍2.1EDA技术介绍20世纪90年代,国际上电子和计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、工具等方面进展了彻底的变革,取得了巨大成功。在电子技术设计领域,可编程逻辑器件如CPLD、FPGA的应用,已

22、得到广泛的普及,这些器件为数字系统的设计带来了极大的灵活性。这些器件可以通过软件编程而对其硬件构造和工作方式进展重构,从而使得硬件的设计可以如同软件设计那样方便快捷。1这一切极改变了传统的数字系统设计方法、设计过程和设计观念,促进了EDA技术的迅速开展。2EDA是电子设计自动化Electronic Design Automation的缩写,在20世纪90年代初从计算机辅助设计CAD、计算机辅助制造CAM、计算机辅助测试CAT和计算机辅助工程CAE的概念开展而来的。3EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、

23、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。EDA技术的出现,极提高了电路设计的效率和可行性,减轻了设计者的劳动强度。42.1.1EDA技术的开展趋势从目前的EDA技术来看,其开展趋势是政府重视、使用普及、应用广泛、工具多样、软件功能强大。中国EDA市场已渐趋成熟,不过大局部设计工程师面向的是PC主板和小型ASIC领域,仅有小局部约11%的设计人员研发复杂的片上系统器件。为了与和美国的设计工程师形成更有力的竞争,中国的设计队伍有必要购入一些最新的EDA技术。5 6在信息通信领域,要优先开展高速宽带信息网、深亚微米集成电路、新型元器件、计算机及软

24、件技术、第三代移动通信技术、信息管理、信息平安技术,积极开拓以数字技术、网络技术为根底的新一代信息产品,开展新兴产业,培育新的经济增长点。7要大力推进制造业信息化,积极开展计算机辅助设计CAD、计算机辅助工程CAE、计算机辅助工艺CAP、计算机机辅助制造CAM、产品数据管理PDM、制造资源方案MRPII及企业资源管理ERP等。有条件的企业可开展网络制造,便于合作设计、合作制造,参与国和国际竞争。开展数控化工程和数字化工程。在ASIC和PLD. 设计方面,向超高速、高密度、低功耗、低电压方向开展。外设技术与EDA工程相结合的市场前景看好,如组合超大屏幕的相关连接,多屏幕技术也有所开展。中国自19

25、95年以来加速开发半导体产业,先后建立了几所设计中心,推动系列设计活动以应对亚太地区其它EDA市场的竞争。8在EDA软件开发方面,目前主要集中在美国。但各国也正在努力开发相应的工具,日本、国都有ASIC设计工具,但不对外开放。集成电路设计中心,也提供IC设计软件,但性能不是很强。相信在不久的将来会有更多更好的设计工具有各地开花并结果。据最新统计显示,中国和印度正在成为电子设计自动化领域开展最快的两个市场,年复合增长率分别到达了50%和30%。EDA技术开展迅猛,完全可以用日新月异来描述。EDA技术的应用广泛,现在已涉及到各行各业。EDA水平不断提高,设计工具趋于完美的地步。EDA市场日趋成熟,

26、但我国的研发水平沿很有限,需迎头赶上。92.1.2EDA技术的根本特征EDA代表了当今电子设计技术的最新开展方向,它的根本特征是:设计人员按照自顶向下的设计方法,对整个系统进展方案设计和功能划分,系统的关键电路用一片或几片专用集成电路ASIC实现,然后采用硬件描述语言HDL完成系统行为级设计,最后通过综合器和适配器生成最终的目标器件,这样的设计方法被称为高层次的电子设计方法。10 11下面介绍与EDA根本特征有关的几个概念: a. 自顶向下的设计方法 10年前,电子设计的根本思路还是选用标准集成电路自底向上地构造出一个新的系统,这样的设计方法就如同一砖一瓦建造金字塔,不仅效率低、本钱高而且容易

27、出错。 高层次设计是一种自顶向下的全新设计方法,这种设计方法首先从系统设计入手,在顶层进展功能方框图的划分和构造设计。在方框图一级进展仿真、纠错,并用硬件描述语言对高层次的系统行为进展描述,在系统一级进展验证。然后,用综合优化工具生成具体门电路的网络表,其对应的物理实现级可以是印刷电路板或专用集成电路。由于设计的主要仿真和调试过程是在高层次上完成的,这既有利于早期发现构造设计上的错误,防止设计工作的浪费,又减少了逻辑功能仿真的工作量,提高了设计的一次成功率。12b. ASIC设计 现代电子产品的复杂度日益提高,一个电子系统可能由数万个中小规模集成电路构成,这就带来了体积大、功耗大、可靠性差的问

28、题。解决这一问题的有效方法就是采用ASIC芯片进展设计。ASIC按照设计方法的不同可分为全定. 制ASIC、半定制ASIC和可编程ASIC也称为可编程逻辑器件。设计全定制ASIC芯片时,设计师要定义芯片上所有晶体管的几何图形和工艺规则,最后将设计结果交由IC厂家去进展掩模制造,做出产品。这种设计方法的优点是芯片可以获得最优的性能,即面积利用率高、速度快、功耗低,而缺点是开发周期长,费用高,只适合大批量产品开发。13 半定制ASIC芯片的幅员设计方法分为门阵列设计法和标准单元设计法,这两种方法都是约束性的设计方法,其主要目的就是简化设计,以牺牲芯片性能为代价来缩短开发时间。14 可编程逻辑芯片与

29、上述掩模ASIC的不同之处在于:设计人员完成幅员设计后,在实验室就可以烧制出自己的芯片,无须IC厂家的参与,大大缩短了开发周期。 可编程逻辑器件自70年代以来,经历了PAL、GAL、CPLD、FPGA几个开展阶段,其中CPLD/FPGA属高密度可编程逻辑器件,目前集成度已高达200万门/片,它将掩模ASIC集成度高的优点和可编程逻辑器件设计生产方便的特点结合在一起,特别适合于样品研制或小批量产品开发,使产品能以最快的速度上市,而当市场扩大时,它可以很容易地转由掩模ASIC实现,因此开发风险也大为降低。15 上述ASIC芯片,尤其是CPLD/FPGA器件,已成为现代高层次电子设计方法的实现载体。

30、 c. 硬件描述语言 硬件描述语言VHDL是一种用于设计硬件电子系统的计算机语言,它用软件编程的方式来描述电子系统的逻辑功能、电路构造和连接形式,与传统的门级描述方式相比,它更适合大规模系统的设计。16例如一个32位的加法器,利用图形输入软件需要输入500至1000个门,而利用VHDL语言只需要书写一行A=BC即可。而且VHDL语言可读性强,易于修改和发现错误。早期的硬件描述语言,如ABEL、HDL、AHDL,由不同的EDA厂商开发,互不兼容,而且不支持多层次设计,层次间翻译工作要由人工完成。为了克制以上缺乏,1985年美国国防部正式推出了高速集成电路硬件描述语言VHDL,1987年IEEE采

31、纳VHDL为硬件描述语言标准IEEESTD1076。VHDL是一种全方位的硬件描述语言,包括系统行为级、存放器传输级和逻辑门级多个设计层次,支持构造、数据流和行为三种描述形式的混合描述,因此VHDL几乎覆盖了以往各种硬件描述语言的功能,整个自顶向下或自底向上的电路设计过程都可以用VHDL来完成。172.2硬件描述语言VHDLVHDL是一种可以用来描述数字逻辑系统的编程语言,VHDL的全名是Very-High-Speed Integrated Circuit HardwareDescription Language,诞生于1982。1987年底,VHDL被IEEEThe Institute of

32、 Electrical and Electronics Engineers和美国国防部确认为标准硬件描述语言。它源于美国政府于1980年开场启动的超高速集成电路方案,VHDL主要用于描述数字系统的构造、行为、功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序构造特点是将一项工程设计,或称设计实体可以是一个元件、一个电路模块或一个系统分成外部或称可是局部,即端口和部或称不可视局部,既设计实体的部功能和算法完成局部两局部。在对一个设计实体定义了外部界面后,一旦其部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实

33、体分成外局部的概念是VHDL系统设计的根本点。应用VHDL进展工程设计的优点是多方面的。18VHDL的应用必将成为当前以及未来EDA解决方案的核心,更是整个电子逻辑系统设计的核心。2.2.1VHDL语言的特点a. VHDL具有更强的行为描述能力,从而决定了它成为电子工程领域事实上通用的硬件描述语言。强大的行为描述能力是避开具体的器件构造,从逻辑行为上描述和设计大规模电子系统的重要保证。b. VHDL语句的行为描述能力和程序构造,决定了它具有支持大规模设计的. 分解和已有设计的再利用功能。高效、高速完成符合市场需求的必须有多人甚至多个代发组共同并行工作才能实现的大规模系统设计。VHDL中设计实体

34、的概念、程序包的概念、设计库的概念为设计的分解和并行工作提供了有利的支持。c. VHDL丰富的仿真语句和库函数,使得在任何大系统的设计早期,就能查验设计系统的功能可行性,随时可对设计进展仿真模拟,使设计者对整个工程的构造和功能可行性做出判断。d. 用VHDL完成的一个确定的设计,可以利用EDA工具进展逻辑综合和优化,并自动的把VHDL描述设计转变成门级网表根据不同的实现芯片。e. VHDL对设计的描述具有相对独立性。设计者可以不懂硬件的构造,也不必管理最终设计实现的目标器件是什么,而进展独立的设计。正因为VHDL的硬件描述与具体的工艺技术和硬件构造无关,所以VHDL设计程序的硬件实现目标器件有

35、广阔的悬着围。19f. VHDL具有类属描述语句和子程序调用等程序,对于完成的设计,在不改变源程序的条件下,只需要改变类属参数量或者函数,就能轻易地改变设计的规模和构造。2.2.2VHDL的设计流程在用VHDL语言来设计电路时,主要的过程是这样的:a. 创立VHDL设计工程及使用文本编辑器输入设计源文件;b. 使用编译工具编译源文件,VHDL的编译器有很多,ACTIVE公司,MODELSIM公司,SYNPLICITY公司,SYNOPSYS公司,VERIBEST公司等都有自己的编译器;c. 目标器件的选择和源程序的编译及综合;d. 编辑测试文件及器件引脚的锁定和适配;e. 系统的功能仿真,对进入

36、功能仿真,给测试向量赋值,再设置波形的观察格式。作为一个独立的设计工程而言,仿真文件的提供足可以证明你设计的完整性;f. 连接硬件测试系统,进展下载操作,再通过硬件系统进展测试;g. 综合,综合的目的是在于将设计的源文件由语言转换为实际的电路,这一局部的最终目的是生成门电路级的网表Netlist;h. 布局、布线,这一步的目的是生成用于烧写的编程文件。在这一步,将用到第h步生成的网表并根据CPLD/FPGA厂商的器件容量,构造等进展布局、布线。这就好似在设计PCB时的布局布线一样。先将各个设计中的门根据网表的容和器件的构造放在器件的特定部位。然后在根据网表中提供的各门的连接,把各个门的输入输出

37、连接起来;i. 后仿真,这一步主要是为了确定你的设计在经过布局布线之后,是不是还满足你的设计要求。202.3复杂可编程逻辑器件CPLDple* Programmable Logic Device复杂可编程逻辑器件,是从PAL和GAL器件开展出来的器件,相对而言规模大,构造复杂,属于大规模集成电路围。是一种用户根据各自需要而自行构造逻辑功能的数字集成电路。其根本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过下载电缆在系统编程将代码传送到目标芯片中,实现设计的数字系统。212.3.1CPLD的研究现状当今社会是数字化的社会,是数字集成电路广泛应用的社会。数字

38、集成电路本身在不断地进展更新换代。可编程逻辑器件是近几年来才开展起来的一种新型集成电路,是当前数字系统设计的主要硬件根底,是硬件编程语言VHDL的物理实现工具,可编程逻辑器件对数字系统设计自动化起着重要作用,可以说没有了编程逻辑器件就没有当前的数字自动化。目前,以这种可编程逻辑器件为原材料,进展的EDA设计模式已经成为当前数字设计的主流。CPLD器件具有高密度、高速率、系列化、标准化、小型化、多功能、低耗能、低本钱、设计灵活方便、可无限反复编程,可现场模拟调试验证等特点,使用CPLD可在较短的时间完成一个电子系统的设计和制作,缩短了研制周期,到达快速上市和进一步降低本钱的要求。222.3.2C

39、PLD的开展趋势可编程逻辑器件正处于高速开展的阶段,下一代可编程逻辑器件硬件上有以下四大开展趋势:最先进的ASIC生产工艺将被更广泛的应用于以CPLD为代表的可编程逻辑器件;越来越多的高端CPLD产品将包含DSP或CPU等处理器核,从而CPLD将由传统的硬件设计手段逐渐过渡到为系统级设计平台;CPLD将包含功能越来越丰富的硬核,与传统ASIC进一步融合,并通过构造化ASIC技术加快占领局部ASIC市场;低本钱CPLD的密度越来越高,价格越来越合理,将成为CPLD开展的中坚力量。232.3.3CPLD的研究方法CPLD的设计方法采用自顶向下的层次化设计方法,即从整个系统的整体要求出发,自上向下的

40、逐步将系统设计容细化,即把整个系统分割为假设干功能模块,最后完成整个系统的设计。具体是借助于EDA软件用原理图、布尔表达式、硬件描述语言等方法生成相应的目标文件,最后用编程器或下载电缆用目标器件实现。2.3.4CPLD的特点它具有编程灵活、集成度高、设计开发周期短、适用围宽、开发工具先进、设计制造本钱低、对设计者的硬件经历要求低、标准产品无需测试、性强、价格群众化等特点,可实现较大规模的电路设计,因此被广泛应用于产品的原型设计和产品生产一般在10000件以下之中。24几乎所有应用中小规模通用数字集成电路的场合均可应用CPLD器件,CPLD器件已成为电子产品不可缺少的组成局部,它的设计和应用成为

41、电子工程师必备的一种技能。2.4MA*+plus概述Ma*+plusII是Altera公司提供的FPGA/CPLD开发集成环境,Altera是世界上最大的可编程逻辑器件的供给商之一。Ma*+plusII界面友好,使用便捷,被誉为业界最易用易学的EDA软件。25在Ma*+plusII上可以完成设计输入、元件适配、时序仿真和功能仿真、编程下载整个流程,它提供了一种与构造无关的设计环境,使设计者能方便地进展设计输入、快速处理和器件编程。2.4.1Ma*+plus开发系统的特点a. 开放的界面Ma*+plusII支持与Cadence,E*emplarlogic,Mentor Graphics,Synp

42、licty,Viewlogic和其它公司所提供的EDA工具接口。b. 与构造无关Ma*+plusII系统的核心为plier支持的Altera公司的FLE*10K、FLE*8000、FLE*6000、MA*9000、MA*7000、MA*5000和Classic可编程逻辑器件,提供了世界上唯一真正与构造无关的可编程逻辑设计环境。c. 完全集成化Ma*+plusII的设计输入、处理与较验功能全部集成在统一的开发环境下,这样可以加快动态调试、缩短开发周期。d. 丰富的设计库Ma*+plusII提供丰富的库单元供设计者调用,其中包括74系列的全部器件和多种特殊的逻辑功能Macro-Function以及

43、新型的参数化的兆功能。e. 模块化工具设计人员可以从各种设计输入、处理和较验选项中进展选择,还可根据需要添加新功能使设计环境用户化。由于Ma*plusII支持多种器件系列,设计者不必学习新工具即可支持新构造。f. 硬件描述语言VHDLMa*+plusII软件支持各种HDL设计输入选项,包括VHDL、Verilog HDL和Altera自己的硬件描述语言VHDL。g. Opencore特征Ma*+plusII软件具有开放核的特点,允许设计人员添加自己认为有价值的宏函数。h. Megacore功能兆功能是为复杂的系统级功能提供的,经过校验的HDL网表文件,它能使ACE* 1K、FLE* 10K、F

44、LE* 8000、FLE* 6000、MA* 9000、MA* 7000器件系列提供最优化的设计。26充分利用这些兆功能会使设计任务大大减轻,设计人员可把更多的精力投入到改良各种设计和最终的产品上。2.4.2Ma*plusII软件版本MA*+PLUSII软件按照使用平台可以分为PC机版和工作站版,按使用对象可分为商业版、根本版和学生版。a. 商业版 支持全部输入方式和版本发行时的除APE*系列之外的所有Altera CPLD器件。商业版运行时需要一个授权码和一个附加的并口硬件狗。 b. 根本版BaseLine 在商业版上作了一些限制。如不支持VHDL,不能进展功能仿真,不支持*些器件等,根本版

45、不需要并口硬件狗,只需要向Altera申请一个根本版授权码即可。 c. 学生版E+MA* 支持商业版的全部功能,但可使用的逻辑功能模块受到限制,且只支持几个器件。假设要安装学生版,应向Altera公司大学工程部申请学生版授权码。272.4.3Ma*plusII设计方法 a. 输入设计工程 逻辑设计的输入方法有图形输入,文本输入,波形输入以及第三方EAD工具生成的设计网表文件输入等。输入方法不同,生成的设计文件也不同。 b. 编译设计工程 首先,根据设计工程要求设定编译参数和编译策略。然后,根据设定的编译参数和编译策略对设计工程进展网表提取,逻辑综合和器件适配,并产生报告文件,延时信息文件和器件

46、编程文件,供分析,仿真及编程用。 c. 校验设计工程 工程校验方法包括功能仿真、模拟防真和定时分析。 功能仿真是在不考虑器件延时的理想情况下仿真设计工程的一种工程验证方法,称为前仿真。通过功能仿真可以用来验证一个工程的逻辑功能是否正确。模拟仿真时序仿真是在考虑设计工程具体适配器件的各种延时的情况下仿真设计工程的一种工程验证方法,称为后仿真。时序仿真不仅测试逻辑功能,还测试目标器件最差情况下的时间关系。28通过时序仿真,在把工程编程到器件之前全面检测工程,以确保在各种可能的条件下都有正确的响应。 定时分析用来分析器件引脚以及部节点间的传输路径延时、时序逻辑的性能以及器件部各种存放器的建立、保持时

47、间。d. 程验证设计工程 用MA*+PLUSII编程器通过Altera编程硬件或其他工业标准编程器将经过仿真确认后的编程目标文件输入所选定的Altera CPLD器件中,然后参加实际鼓励信号进展测试,检查是否到达设计要求。. 3 总体方案3.1系统设计要求a. 密码输入:每按下一个数字键,就输入一个数值,并在显示器上显示该数值,同时将先前输入的数据依次左移一个数字位置。b. 密码去除:按下去除键可去除前面所有输入的值。c. 密码更改:按下更改键可将目前的数码设定成新的密码。d. 密码上锁:按下上锁键可将密码锁定。e. 密码解锁:按下解锁键首先检查输入的密码是否正确,密码正确即开锁。3.2总体框

48、图考虑到实现各项数字密码锁功能的具体要求,整个电子密码锁系统的总体组成如图3.1所示。. BCD至七段译码电路数值比拟电路存放器去除信号发生电路按键数值缓冲器开/关锁电路弹跳消除电路键盘译码电路键盘时序产生电路键盘扫描电路图3.1 系统设计框图 a. 密码锁输入电路包括时序产生电路、键盘扫描电路、键盘弹跳消除电路、键盘译码电路等几个小的功能电路。b. 密码锁控制电路包括按键数据的缓冲存储电路,密码的去除、变更、存储、激活电锁存放器消除信号发生电路,密码核对数值比拟电路,解锁电路开/关门锁电路等几个小的功能电路。c. 七段数码管显示电路主要将待显示数据的BCD码转换成数码器的七段显示驱动编码。.

49、 . . 4 模块电路设计4.1密码锁输入模块的设计密码锁输入模块由时序产生电路、键盘扫描电路、键盘译码电路、弹跳消除电路组成,加上一个外接的3*4键盘组成,如图4.1所示。#9630582*741清抖电路键盘译码按键存储键盘扫描图4.1 密码锁输入模块电路4.1.1矩阵式键盘工作原理矩阵式键盘是一种常见的输入装置,在日常的生活中,矩阵式键盘在计算机、手机、微波炉等各种电子产品中被广泛应用。其根本原理就是将水平键盘扫描线和垂直输出译码线的穿插处通过一个按键来连通,再通过一个键盘输入译码电路,将各种键盘扫描线和垂直输出译码线信号的不同组合编码转化成一个特定的输入信号值或输入信号编码。如图4.2所

50、示为一34矩阵式键盘。矩阵式键盘以行、列形式排列,图中为4行3列,键盘上的每一个按键盘其实是一个开关电路,当*键被按下时,该按键所对应的位置就呈现逻辑0的状态,反之,未被按下时则呈现逻辑1的状态。按键输入方式为扫描法,即扫描行号由行线KY3-KY0输入键盘,变化的顺序依次为1110、1101、1011、0111、1110扫描信号每一次扫描一行,依次周而复始。例如现在的扫描信号为1011,依次目前正在扫描7、8、9这一行的按键,如果这行当中没有按键被按下的话,则由K*2-K*0读出的值为111,反之当8这个按键被按下的话,则由K*2-K*0读出的值为101。29 30按键位置与数码关系如表4.3

51、所示。. 经上拉电阻到VCC KEY2 #93602*78451 KEY1 KEY0 KY3(00)1110 KY2(01)1101 KY1(10)1011 KY0(11)0111图4.2 3*4矩阵键盘的面板设置表4.3 按键位置与数码关系KY3-KY0K*2-K*0按键号111011101110110111011101101110111011011101110111011101110011101110011101110011101110123456789*0# 假设从K*2-K*0读出的值皆为1,代表该列没有键按下,则不进展按键译码的动作;反之,如果有键按下,则应将K*2-K*0读出的值送

52、至译码电路进展编码。4.1.2时序产生电路时序产生电路中使用三种不同频率的工作脉冲波形,即系统时钟脉冲、弹跳消除取样信号和键盘扫描信号。本设计选用信号Q建立一个9位自由计数器,对输入主时钟进展降频处理。4.1.3键盘扫描电路键盘扫描电路的作用是提供键盘扫描信号,扫描信号变化次序为1110、1101、1011、0111(0表示按下,当键盘扫描信号为1110时,按键位置为011时,表示1键按下,按键位置为101时,表示2键按下,按键信号为110时,表示3键按下;当键盘扫描信号为1101时,按键位置为011时,表示4键按下,按键位置为101时,表示5键按下,按键位置为110时,表示6键按下;当键盘扫

53、描信号为1011时,按键位置为011时,表示7键按下,按键位置为101时,表示8键按下,按键位置为110时,表示9键按下;当键盘扫描信号为0111时,按键位置为011时,表示*键按下,按键位置为101时,表示0键按下,按键位置为110时,表示#键按下。4.1.4键盘译码电路 a. 按键存储电路 每次扫描会产生新的按键数据,可能会覆盖前面的数据,所以需要一个按键存储电路,将整个键盘扫描完毕的结果记录下来。本设计采用串行串出移位存放器来实现,在数字电路中串入串出移位存放器是指具有一个数据输入端口、一个同步时钟输入端口和一个数据输出端口的移位存放器。31 b. 键盘译码电路 键盘中的按键分别为数字按

54、键和功能按键,数字按键主要是用来输入数字的,但是键盘所产生的输出是无法直接拿来用作密码锁控制电路的输入的,必须有键盘译码电路来规划每个按键的输出形式,做相应的动作。键盘译码电路主要负责的工作是:首先判断是否有键按下,假设被按下的是数字按键,则解释成相应的BCD码,假设被按下的是功能键,则译成四位的数字码,由密码控制电路做相应的工作。本设计中按键位置与数码关系如表4.4所示。表4.4 按键位置与数码关系键扫信号SEL3.0按键位置KEY2.0按键号键盘译码输出按键功能11101110111011011101110110111011101101110111011101110111001110111

55、0011101110011101110123456789*0#N=0001N=0010N=0011N=0100N=0101N=0110N=0111N=1000N=1001N=0100N=0000N=0001数码输入上锁数码输入去除/解锁4.1.5弹跳消除电路 弹跳消除电路目前使用的按键大多数是机械式开关构造,在开关切换的瞬间会在接触点出现来回弹跳的现象,对于激活关闭如电灯、电视等一般电子用品,并不会有影响,但对于灵敏度较高的电路,这种弹跳现象则可能造成错误动作而影响到按键的正确性。虽然只是按下按键一次然后放掉,但实际产生的按键信号却不只跳动一次,经过取样信号的检查后,将会造成误判,以为键盘按了

56、两次。因此必须加上弹跳消除电路,防止误操作信号的发生。32 33在弹跳消除电路所使用的脉冲信号的频率必须比其他电路使用的脉冲信号的频率高。本设计采用分频的方法消除抖动,假设采样信号检测到输入由1变到0或由0变为1,先延时两个周期,仍旧检测到时0或1,则说明按键状态确实发生了变化,否则抖动处理。4.1.6密码锁输入模块原理图密码锁输入原理图如图4.5所示。 DATA_N3.0 DATA_F3.0CLK_IN FLAG_NKEY_IN2.0 FLAG_F CQD KSEL3.0 C_SR1.0 SR DATA_N3.0DATA_F3.0CLK_IN FLAG_NFLAG_F KEY_IN2.0 C

57、QDKSEL3.0C_SR1.0图4.5 输入模块原理图 实体描述:输入信号:CLK_IN:时钟信号 KEY_IN:按键输入信号 输出信号:DATA_N:数字键数据 DATA_F:功能键数据 FLAG_N:数字键数据标志 FLAG_F:功能键数字标志 CQD:键盘输入采样信号 KSEL:键盘扫描信号 CSR:按键行号00,01,10,11 VHDL局部源程序及流程图VHDL局部源程序如下。COUNTER:BLOCK -键盘扫描模块计数器 BEGIN PROCESS(CLK_IN) BEGIN IF(CLK_INEVENT AND CLK_IN=1) THEN Q=Q+1; END IF; C_

58、QD=Q(3); -键盘输入采样时钟 C_SR=Q(5 DOWNTO 0); -确定键盘扫描行号 END PROCESS; SEL =1110WHEN C_SR=00 ELSE -扫描0行 1101WHEN C_SR=01 ELSE 1011WHEN C_SR=10 ELSE 0111WHEN C_SR=11 ELSE 1111;END BLOCK COUNTER;KEY_DECODER:BLOCK -键盘译码模块 SIGNAL Z:STD_LOGIC_VECTOR(4 DOWNTO 0); BEGIN PROCESS(C_QD) BEGIN Z=C_SR&C; -按键位置2位&按键输入3位

59、IF(C_QD EVENT AND C_QD=1) THEN CASE Z IS WHEN 11101=NNNNNNNNNNNFFF=1000; END CASE; END IF; END PROCESS; FN=NOT ( N(3) AND N(2) AND N(1) AND N(0); FF=F(2) OR F(0); 输入模块流程图如图4.6所示开场按键输入时钟分频消除抖动键盘输入译码完毕图4.6 输入模块流程图 该模块中先设置输入输出变量,再设置两个进程:第一个进程键盘扫描模块,在时钟上升沿时通过用C_QD=Q3语句,取得一个脉冲波形,对主时钟进展8分频,其值为0、1、0、1;使用C_

60、SR=Q5 DOWNTO 4语句,取得一脉冲序列,依次为00、01、10、11;通过分频来消除抖动,利用SEL信号和C_SR来扫描键盘行号,第二个进程键盘译码模块利用在键盘扫描模块中扫描的行号,再设置C变量读取列,将读取的行号C_SR和C读取的列具体的按键在此进程中按键位置确定哪个键被按下。4.1.8仿真结果输入模块仿真结果如图4.7所示。图4.7 输入模块仿真图从仿真波形图分析可知,当KSEL为1101时,DATA_N为6二进制0110被按下,数字键标志FLAG_N变为高电平;当DATA_N为1111,FLAG_F变为高电平,即功能建按下。各输出产生了需要的波形。4.2密码锁控制模块设计 密

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论