EDA课设 电子密码锁.doc_第1页
EDA课设 电子密码锁.doc_第2页
EDA课设 电子密码锁.doc_第3页
EDA课设 电子密码锁.doc_第4页
EDA课设 电子密码锁.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

课 程 设 计 说 明 书目 录1 前言12 设计原理22.1设计要求22.2设计方案33 仿真分析43.1 Quartus II 仿真软件43.2 整体波形仿真53.3 模块波形仿真63.3.1 寄存器模块波形仿真63.3.2 控制器模块波形仿真63.3.3 比较器模块波形仿真73.4实验箱下载验证74 设计总结85 参考文献9附录101 前言由于安全防盗已成为全社会关注的问题。基于EDA技术设计的电子密码锁,以其价格便宜、安全可靠、使用方便,受到了人们的普遍关注。而以现场可编程逻辑器件(FPGA)为设计载体,以硬件描述语言(VHDL)为主要表达方式,以Quartus开发软件和GW48EAD开发系统为设计工具设计的电子密码锁,由于其能够实现数码输入、数码清除、密码解除、密码更改、密码上锁和密码解除等功能,因此,能够满足社会对安全防盗的要求。随着现代电子技术的迅速发展,ASIC 技术的日趋进步和完善,数字系统的硬件设计正朝着速度快、体积小、容量大、重量轻的方向发展。一个复杂的数字系统大概需要百万个以上的逻辑门或传输晶体管器件,如信号处理器,ALU 等,如果人工的话需要非常长的时间,这样效率就明显会下降。目前大部分密码锁采用单片机进行设计,电路比较复杂,性能不够灵活。而硬件描述语言VHDL的出现,则为设计者提供了一种用形式化方法来描述数字系统硬件电路的方法。VHDL 具有强大的系统描述能力、规范的程序设计结构、灵活的语句表达风格和多层次的仿真测试手段。根据系统的行为和功能要求,可以自上而下的完成相应的描述、综合、优化、仿真与验证,直至生成器件系统。VHDL 使得设计者可以进行更大、更复杂的数字系统的设计。本文采用先进的EDA技术,利用Quartus工作平台和VHDL语言,设计了一种新型的密码锁。该密码锁具有密码预置和误码报警等功能,保密性好,远远大于以往的密码锁,使随机破译成功率几乎为零,编码可变,避免因人员的更替而使锁的保密级别下降且有利于用户编制易于记忆的密码,因而该数字密码锁具有体积小、功耗低、价格便宜、安全可靠,维护和升级都十分方便等优势。数字密码锁是在实际应用中使用极其广泛的一种数字电路,它的主要功能是用来对某些物品进行加密保护,目的是避免无权人员进行越权操作。随着人们生活水平的提高,密码锁作为家庭防盗卫士的作用日趋重要,它与普通机械锁相比有一些独特的优势,如:保密性强,防盗性能好,可以不用钥匙,只要记住密码即可开锁。所以,具有防盗报警功能的数字密码锁代替安全性较差的机械锁已经成为必然趋势。2设计原理2.1设计要求本系统是基于EDA作为开发工具,VHDL语言为硬件描述语言,Quartus作为程序运行平台,所开发的程序通过调试运行、波形仿真验证,初步实现了设计目标。本系统具体采用元件例化的方法将各个工作模块连接在一起,实现系统完整的功能。数字密码锁的系统结构框图如图1所示。设计一个电子密码锁,实现密码的输入、更改、上锁等功能;密码输入:开锁代码为二进制数,当输入的密码时,显示器上将显示该数值;密码上锁:当按下上锁键后,密码锁将被上锁;密码更改:当按下密码更改键后,密码锁将被重置为新密码;密码解除:当按下解锁键后,如果密码正确,密码锁将被打开。2进制输入信号图2-1数字密码锁结构框图控制器寄存器比较器安锁确认输入密码修改密码报警信号钥匙信号2.2设计方案根据“自顶而上”的设计方法,将系统顶层实体划分为若干模块,然后按功能分为若干模块,然后对每一模块进一步细分,直至得到简单易实现的子模块。控制器是整个系统的功能核心,接受按键和其他模块传来的信号,再根据系统功能产生相应的控制信号送到相关的模块,输出钥匙信号和报警信号。键盘输入密码给比较器和寄存器。并提供密码脉冲信号给控制器;比较器用来比较输出和寄存器输出数据是否相等,输出送给控制器;寄存器在校验密码时,输出密码以供比较,在修改密码时,保存新密码。钥匙信号控制锁打开、关闭,报警信号可以接LED及其他安防设备。按“安锁”键,将锁闭合;开锁时先按“输入密码”,再按“确认”;若输入密码内容有误,报警;只有在开锁状态下才可以设置新密码,按“修改密码”输入新密码,按“确认”。此次设计用拨码开关的高低电平来实现二进制输入。3 仿真分析3.1 Quartus II 仿真软件Quartus II 是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。 Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl脚本完成设计流程外,提供了完善的用户图形界面设计方式。具有运行速度快,界面统一,功能集中,易学易用等特点。 Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。此外,Quartus II 通过和DSP Builder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。Maxplus II 作为Altera的上一代PLD设计软件,由于其出色的易用性而得到了广泛的应用。目前Altera已经停止了对Maxplus II 的更新支持,Quartus II 与之相比不仅仅是支持器件类型的丰富和图形界面的改变。Altera在Quartus II 中包含了许多诸如SignalTap II、Chip Editor和RTL Viewer的设计辅助工具,集成了SOPC和HardCopy设计流程,并且继承了Maxplus II 友好的图形界面及简便的使用方法。Quartus II提供了完全集成且与电路结构无关的开发包环境,具有数字逻辑设计的全部特性,包括:可利用原理图、结构框图、VerilogHDL、AHDL和VHDL完成电路描述,并将其保存为设计实体文件;LogicLock增量设计方法,用户可建立并优化系统,然后添加对原始系统的性能影响较小或无影响的后续模块;功能强大的逻辑综合工具;完备的电路功能仿真与时序逻辑仿真工具;定时/时序分析与关键路径延时分析;可使用SignalTap II逻辑分析工具进行嵌入式的逻辑分析;支持软件源文件的添加和创建,并将它们链接起来生成编程文件;使用组合编译方式可一次完成整体设计流程;可读入标准的EDIF网表文件、VHDL网表文件和Verilog网表文件;能生成第三方EDA软件使用的VHDL网表文件和Verilog网表文件。3.2 整体波形仿真在数字密码锁代码编写完成后,用Quartus II对其进行编译并仿真,整个系统的仿真波形如图2所示。可以看到,系统的初始密码为“000”,按“输入密码”键(start)后,“钥匙信号”(key)变为高电平,再按“确认”键(enter),此时系统为开锁状态;在此状态下,按“修改密码”键(ps_ch),输入新密码“111”,再按“确认”键(enter);按“安锁”键(lock),锁闭合(key变为低电平);再按“输入密码”键(start),此时输入密码“000”,然后按“确认”键(enter),系统报警(warn),因为新密码已变为“111”;再次按“输入密码”键(start),此时输入密码“111”,“钥匙信号”(key)变为高电平,报警信号(warn)变为低电平,然后按“确认”键(enter)。图3-1 数字密码锁整体仿真波形3.3 模块波形仿真3.3.1 寄存器模块波形仿真图3是寄存器模块的仿真波形。m的初始值为000。当en=1时,寄存器将data_in的数据赋给m,当en=0时,寄存器将m的数据赋给data_out。图3-2 寄存器模块波形仿真3.3.2控制器模块波形仿真 图4是控制器模块的仿真波形。按“输入密码”键(start),再使“确认”键(enter)、“比较信号”键分别为高电平有效,“钥匙信号”(key)变为高电平,系统处于开锁状态;在此状态下,按“修改密码”键(ps_ch),计数器时钟信号(cnt_clk)有效计数,按“安锁”键(lock),锁闭合,钥匙信号(key变为低电平);使“确认”键(enter)为高电平、“比较信号”键为低电平,这时再按“输入密码”键(start),钥匙信号(key变为低电平),系统报警(warn)。图3-3 控制器模块波形仿真3.3.3 比较器模块波形仿真图5是比较器模块的仿真波形。在数字密码锁中,比较器模块的功能是将输入数据与寄存器数据进行比较,结果送入控制器模块。比较器的具体工作原理是:当a和b相等时,c输出为1,不相等时为0。图3-4 比较器模块波形仿真3.4实验箱下载验证根据程序的要求对应好管脚,下载到实验箱,通过拨码开关输入密码,将其显示在数码管上,将钥匙信号,报警信号连LED灯,若系统的初始密码为“000”,按“输入密码”键(start)后,“钥匙信号”(key)灯不亮,再按“确认”键(enter),(key)灯亮状态。在此状态下,按“修改密码”键(ps_ch),输入新密码“111”,再按“确认”键(enter)。按“安锁”键(lock),锁闭合(key灯不亮)。再按“输入密码”键(start),此时输入密码“000”,然后按“确认”键(enter),系统报警(warn)灯亮,因为新密码已变为“111”。再次按“输入密码”键(start),此时输入密码“111”,然后按“确认”键(enter),(key)灯亮。4 设计总结使用VHDL语言设计电路,思路简单,功能明了使用Quartus II软件设计电路不仅可以进行逻辑仿真,还可以进行时序仿真;使用可编程逻辑器件不仅省去了电路制作的麻烦,还可以反复多次进行硬件实验,非常方便的修改设计,且设计的电路保密性很强。总之,采用EDA技术使得复杂的电子系统设计变得简单容易,可大大提高了设计效率。 本文以现场可编程逻辑器件(FPGA)为设计载体,以硬件描述语言(VHDL)为主要表达方式,以Quartus开发软件和开发系统为设计工具设计了一种具有密码输入、密码修改、报警、密码设置等功能的电子密码锁。同时阐述电子密码锁的工作原理和软硬件实现方法。由于本设计中的FPGA芯片体积小,功耗低,价格便宜,安全可靠,稍加修改就可以改变密码的位数,而且维护和升级比较方便,很容易做成ASIC芯片,因而具有较好的应用前本次课设,在连接各个模块的时候一定要注意各个输入、输出引脚的线宽,因为每个线宽是不一样的,只要让各个线宽互相匹配,才能得出正确的结果,否则,出现任何一点小的误差就会导致整个文件系统的编译出现错误提示,在器件的选择上也有一定的技巧,只有选择了合适当前电路所适合的器件,编译才能得到完满成功。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。5 参考文献1 孟庆海,张洲.VHDL基础及经典实例开发.西安交通大学出版社,20082 李洋.EDA技术(第2版).机械工业出版社,20093 Volnei A.pedroniCircuit Design with VHDL. 电子工业出版社 ,20084 谭会生 EDA技术综合应用实例与分析.西安电子科技出版社 ,20035 潘松,黄继业.EDA技术实用教程.科学出版社,2010附录源程序:-控制模块-library ieee;use ieee.std_logic_1164.all;entity control is port(clk,lock,start,ps_ch,enter,yes:in std_logic; warn,key,wr,en:out std_logic);end control; architecture bhv of control istype state is(inlock,input,right1,wrong,unlock,change,alarm);signal ps,ns:state;begin process(clk) begin if clkevent and clk=1then pskey=0;en=0;warn=0;wr=0; if(start=1)then ns=input; else nsen=1;wr=0;key=0;warn=0; if(yes=1)then ns=right1; else nsen=0;wr=0;key=0;warn=0; if enter=1 then ns=unlock; else nsen=0;wr=0;key=0;warn=0; if enter=1then ns=alarm; else nskey=1;warn=0;en=1;wr=0; if lock=1then ns=inlock; elsif ps_ch=1then ns=change; else nswarn=1;key=0;en=0;wr=0; if enter=0then ns=inlock; else nsen=1;wr=1;warn=0;key=1; if enter=1then ns=unlock; else ns=change; end if; end case; end process;end bhv;-寄存器模块-library ieee;use ieee.std_logic_1164.all;entity reg isport(clk,wr,en:in std_logic; data_in:in std_logic_vector(2 downto 0); data_out:out std_logic_vector(2 downto 0);end reg;architecture b

温馨提示

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

评论

0/150

提交评论