eda郭会平《eda技术》课程设计

上传人:小** 文档编号:45056310 上传时间:2018-06-15 格式:DOC 页数:13 大小:99.01KB
返回 下载 相关 举报
eda郭会平《eda技术》课程设计_第1页
第1页 / 共13页
eda郭会平《eda技术》课程设计_第2页
第2页 / 共13页
eda郭会平《eda技术》课程设计_第3页
第3页 / 共13页
eda郭会平《eda技术》课程设计_第4页
第4页 / 共13页
eda郭会平《eda技术》课程设计_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《eda郭会平《eda技术》课程设计》由会员分享,可在线阅读,更多相关《eda郭会平《eda技术》课程设计(13页珍藏版)》请在金锄头文库上搜索。

1、EDA 技术课程设计 1一一 设计意义设计意义随着社会的发展和人们生活水平的提高,人们的安全意识的加强,安全防盗已成为社会问题。自古以来锁在人们的生活中扮演着重要的角色,人们对其要求也较高,希望锁既要安全可靠地防盗,又要使用方便。目前使用广泛的弹子锁由于要携带钥匙,经常更换锁芯等缺点,已经渐渐变得难以满足当前社会对于安全防盗的要求。而数字密码锁由于其高安全性、低成本、易操作、密码可更换等优点受到越来越多人的欢迎。在很多安全性要求高的地方已经有了数字密码锁的应用,如:数字保险柜、银行自动柜员机、门卡系统、自动售货机等1。 随着现代电子技术的迅速发展,ASIC 技术的日趋进步和完善,数字系统的硬件

2、设计正朝着速度快、体积小、容量大、重量轻的方向发展。一个复杂的数字系统大概需要百万个以上的逻辑门或传输晶体管器件,如信号处理器,ALU 等,如果人工的话需要非常长的时间,这样效率就明显会下降。目前大部分密码锁采用单片机进行设计,电路比较复杂,性能不够灵活2。而硬件描述语言 VHDL 的出现,则为设计者提供了一种用形式化方法来描述数字系统硬件电路的方法。HDL 具有强大的系统描述能力、规范的程序设计结构、灵活的语句表达风格和多层次的仿真测试手段。根据系统的行为和功能要求,可以自上而下的完成相应的描述、综合、优化、仿真与验证,直至生成器件系统。VHDL 使得设计者可以进行更大、更复杂的数字系统的设

3、计3。本文采用先进的 EDA 技术,利用QUARTUS 工作平台和 VHDL 语言,设计了一种新型的密码锁。该密码锁具有密码预置和误码报警等功能,保密性好,远远大于以往的密码锁4,使随机破译成功率几乎为零,编码可变,避免因人员的更替而使锁的保密级别下降且有利于用户编制易于记忆的密码,因而该数字密码锁具有体积小、功耗低、价格便宜、安全可靠,维护和升级都十分方便等优势。EDA 技术课程设计 2二二 设计原理设计原理2.1 设计要求设计要求设计一种数字密码锁,密码由 4 位二进制数字组成,初始设定为“0000”。可有用户任意输入正确时开锁,密码输入错误时报警。按“安锁”键,将锁闭合;开锁时,先按“输

4、入密码键”,输入密码,再按“确认”键;若输入密码内容有误,则报警;只有在开锁状态下才可以重新设置密码,先按“修改密码”键,输入新密码,再按“确认”键。2.2 系统设计系统设计2.2.1 设计概述设计概述根据“自顶而上”的设计方法,将系统顶层实体划分为若干模块,本实验大体可分为三个模块,分别为:顶层实体控制器模块,寄存器模块,比较器模块。控制器是整个系统的功能核心,接受按键和其他模块传来的信号,再根据系统功能产生相应的控制信号送到相关的模块,输出钥匙信号和报警信号。键盘输入密码给比较器和寄存器。并提供密码脉冲信号给控制器;比较器用来比较编码器输出和寄存器输出数据是否相等,输出送给控制器;寄存器在

5、校验密码时,输出密码以供比较,在修改密码时,保存新密码。钥匙信号控制锁打开、关闭,报警信号可以接LED 及其他安防设备。按“按锁”键,将锁闭合;开锁时,先按“输入密码”密码键,键入密码,再按“确认”键;若输入密码内容有误,报警;只有在开锁状态下才可以设置新密码,先按“修改密码”键,输入新密码,再按“确认”键。2.2.2 各引脚功能各引脚功能输入信号:clk 输入时钟Lock 安锁信号Start 开始输入密码Ps_ch 修改密码EDA 技术课程设计 3Enter 密码确认Yes 密码比较输出信号:warn 警告信号Op 密码正确显示 Wr 寄存器读写信号 En 密码输入使能EDA 技术课程设计

6、4三三 仿真分析仿真分析3.1 控制模块控制模块控制模块采用有限状态机设计,将系统分为 7 个状态,即开锁状态、安锁状态、输入密码状态、密码初验正确状态、密码初验错误状态、报警状态及修改密码状态,状态转换图如图 1 所示。系统上电时,处于开锁状态,当输入 ps_ch 信号时,系统进入修改密码状态;若输入lock 信号,进入安锁状态,锁闭合;在安锁状态,输入 start 信号,进入输入密码状态;如果输入密码内容正确,进入密码初验正确状态,如果密码错误,进入密码初验错误状态;在密码初验正确状态,输入确认信号 enter 时,进入开锁状态;在密码初验错误状态,输入确认信号 enter 时,进入报警状

7、态;在报警状态,alarm 信号等于1。图 1 状态机转换图changeunlockinputRight1inlockwrongalarmEnter=0Ps_ch=1Enter=1Lock=0Enter=1Enter=0Yes=1Start=0Start=1Enter=1Lock=1Enter=0Enter=1Enter=0Yes=0EDA 技术课程设计 5波形仿真图如图 2 控制模块仿真图所示波形仿真分析:起始密码为“0000”,安锁后锁关闭 op 信号为0;开锁时,按下 start开锁键,密码比较 yes 信号为1有效,输入密码正确,按下 enter 确认键,锁开,锁开标志信号 op 有效

8、为1;开锁状态下,按下 ps_ch 修改密码键,输入新密码后按确认键 start,密码修改成功,再按下 lock 安锁,此时密码为新输入密码;按下输入密码键 start 输入密码键若输入密码错误,按下确认键 enter 后,报警 warm 信号有效。3.2 比较模块比较模块在数字密码器中,比较器模块的功能是对按键输入和寄存器模块的输出进行比较,然后将比较的结果送入到控制器模块。比较器的具体工作原理是:当比较结果相等时,c 输出为 1;当比较结果不相等时,c 的输出为 0。波形仿真图如图 3 比较模块仿真图所视波形仿真分析:起始寄存器输出密码为“0000”,键盘输入为“1100”时不相等,所以输

9、图 2 控制模块仿真图图 3 比较模块仿真图EDA 技术课程设计 6出 c 为 0;当寄存器输出密码为“0001”,键盘输入为“0001”时相等,所以输出 c 为 1,其他与此相同。3.3 寄存器模块寄存器模块寄存器模块用于存放预设和修改后的密码,并在开锁时将所存密码输出到比较器与按键输入的密码进行比较,达到判断由按键输入密码是否正确的结果。波形仿真图如图 4 寄存器模块仿真图所视波形仿真分析:如图 4 当使能信号 en 无效时,无论输入 data_in 信号与写使能信号wr 是否有效输出 data_out 都为“0000”当使能信号 en 与写使能信号 wr 都有效时,将 data_in输入

10、的信号存储到寄存器中如 data 分别为“0011”, “0100”, “0101”时,对应寄存器中存放“0011”, “0100”, “0101”。当使能信号 en 有效而写使能信号 wr 无效时,无论输入信号data_in 为多少,输出信号 data_out 都为寄存器所存内容。3.4 整体程序仿真整体程序仿真整体程序波形仿真图如图 5 程序波形仿真图所视图 5 程序波形仿真图EDA 技术课程设计 7波形分析:上电后,系统的初始密码为“0000”按 lock 键按锁,锁关闭开锁输出标志信号 op 无效为 0;开锁时,按下 start 键由键盘 key 输入密码“0000”,输入密码正确按确

11、认键 enter 键锁开,开锁输出标志信号 op 为 1,显示开锁;在开锁状态下按 ps_ch 修改密码键后,由键盘 key 输入新密码 1010 后按确认键 enter 密码修改成功,按 lock 键密码锁上锁,此时密码锁密码为新密码;若按下 start 键后输入的密码错误如图“0000”与密码锁密码“1010”不同,warm 报警信号有效,op 信号无效,锁不开且报警。EDA 技术课程设计 8四四 设计总结设计总结本文提出的数字密码锁由于采用 VHDL 语言设计,使用 FPGA 实现,因而体积小,功耗低、性能特别灵活,稍加修改就可以改变密码的位数和输入密码的次数,因而升级和维护都很方便。连

12、续开锁失败后,报警系统报警,但不死锁;只有锁处于开启状态时,才可以重新设置密码;开锁后有显示开锁的输出信号,有较好的识别性。总之该密码锁具有较好的应用前景。VHDL 语言是一种很有用的硬件描述语言,通过两周的学习与实践终于基本实现了老师要求的设计要求,通过自己动手实践和同学们交流,研究完成了一次设计,掌握了设计应有的基本流程,很开心,也使我对 EDA 课程 VHDL 语言有了更深刻的了解,同时也增加了我的兴趣。通过仿真分析可以看出,该密码锁达到了设计要求。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能

13、真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到的问题,反映出来我的许多不足之处,我以后要努力克服缺点。总的来说,这次设计的密码锁还是比较成功的,在设计中遇到了很多问题,最后在同学和老师的辛勤的指导下外加上自己的努力,终于都得到了解决,因此很有成就感,终于觉得平时所学的知识有了实用的价值,达到了理论与实际相结合的目的。EDA 技术课程设计 9参考文献参考文献1.吴秋兰, 耿霞. 基于 ISP 技术的电子密码锁设计J.2004 30(12): 78-802.宁爱民.应用 ATC89C2051 单片机设计电子密码锁J.淮海工学院学报,2003,12(2):28-313

14、.孟祥忠.数字电子密码锁的设计4.冼凯仪.电子设计自动化中的硬件描述语言J.半导体技术,2003,28(4):32-36EDA 技术课程设计 10附录附录源程序代码:-控制器状态转化模块-library ieee;use ieee.std_logic_1164.all;library ieee;use ieee.std_logic_1164.all;entity mima is port(clk,lock,start,ps_ch,enter,yes:in std_logic;warn,op,wr,en:out std_logic);end; architecture bhv of mima istype state is(inlock,input,right1,wrong,unlock,change,alarm);signal ps,ns:state;beginprocess(clk)beginif clkevent and c

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号