网站大量收购独家精品文档,联系QQ:2885784924
  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EDA郭会平EDA郭会平.doc

《EDA技术》课程设计  PAGE 13 一 设计意义 随着社会的发展和人们生活水平的提高,人们的安全意识的加强,安全防盗已成为社会问题。自古以来锁在人们的生活中扮演着重要的角色,人们对其要求也较高,希望锁既要安全可靠地防盗,又要使用方便。目前使用广泛的弹子锁由于要携带钥匙,经常更换锁芯等缺点,已经渐渐变得难以满足当前社会对于安全防盗的要求。而数字密码锁由于其高安全性、低成本、易操作、密码可更换等优点受到越来越多人的欢迎。在很多安全性要求高的地方已经有了数字密码锁的应用,如:数字保险柜、银行自动柜员机、门卡系统、自动售货机等[1]。  随着现代电子技术的迅速发展,ASIC 技术的日趋进步和完善,数字系统的硬件设计正朝着速度快、体积小、容量大、重量轻的方向发展。一个复杂的数字系统大概需要百万个以上的逻辑门或传输晶体管器件,如信号处理器,ALU 等,如果人工的话需要非常长的时间,这样效率就明显会下降。目前大部分密码锁采用单片机进行设计,电路比较复杂,性能不够灵活[2]。而硬件描述语言VHDL的出现,则为设计者提供了一种用形式化方法来描述数字系统硬件电路的方法。HDL 具有强大的系统描述能力、规范的程序设计结构、灵活的语句表达风格和多层次的仿真测试手段。根据系统的行为和功能要求,可以自上而下的完成相应的描述、综合、优化、仿真与验证,直至生成器件系统。VHDL 使得设计者可以进行更大、更复杂的数字系统的设计[3]。本文采用先进的EDA技术,利用QUARTUS Ⅱ工作平台和VHDL语言,设计了一种新型的密码锁。该密码锁具有密码预置和误码报警等功能,保密性好,远远大于以往的密码锁[4],使随机破译成功率几乎为零,编码可变,避免因人员的更替而使锁的保密级别下降且有利于用户编制易于记忆的密码,因而该数字密码锁具有体积小、功耗低、价格便宜、安全可靠,维护和升级都十分方便等优势。 二 设计原理 2.1 设计要求 设计一种数字密码锁,密码由4位二进制数字组成,初始设定为“0000”。可有用户任意输入正确时开锁,密码输入错误时报警。 按“安锁”键,将锁闭合;开锁时,先按“输入密码键”,输入密码,再按“确认”键;若输入密码内容有误,则报警;只有在开锁状态下才可以重新设置密码,先按“修改密码”键,输入新密码,再按“确认”键。 2.2 系统设计 2.2.1 设计概述 根据“自顶而上”的设计方法,将系统顶层实体划分为若干模块,本实验大体可分为三个模块,分别为:顶层实体控制器模块,寄存器模块,比较器模块。 控制器是整个系统的功能核心,接受按键和其他模块传来的信号,再根据系统功能产生相应的控制信号送到相关的模块,输出钥匙信号和报警信号。 键盘输入密码给比较器和寄存器。并提供密码脉冲信号给控制器;比较器用来比较编码器输出和寄存器输出数据是否相等,输出送给控制器;寄存器在校验密码时,输出密码以供比较,在修改密码时,保存新密码。钥匙信号控制锁打开、关闭,报警信号可以接LED及其他安防设备。 按“按锁”键,将锁闭合;开锁时,先按“输入密码”密码键,键入密码,再按“确认”键;若输入密码内容有误,报警;只有在开锁状态下才可以设置新密码,先按“修改密码”键,输入新密码,再按“确认”键。 2.2.2 各引脚功能 输入信号:clk 输入时钟 Lock 安锁信号 Start 开始输入密码 Ps_ch 修改密码 Enter 密码确认 Yes 密码比较 输出信号:warn 警告信号 Op 密码正确显示 Wr 寄存器读写信号 En 密码输入使能 三 仿真分析 3.1控制模块 控制模块采用有限状态机设计,将系统分为7个状态,即开锁状态、安锁状态、输入密码状态、密码初验正确状态、密码初验错误状态、报警状态及修改密码状态,状态转换图如图1所示。 系统上电时,处于开锁状态,当输入ps_ch信号时,系统进入修改密码状态;若输入lock信号,进入安锁状态,锁闭合;在安锁状态,输入start信号,进入输入密码状态;如果输入密码内容正确,进入密码初验正确状态,如果密码错误,进入密码初验错误状态;在密码初验正确状态,输入确认信号enter时,进入开锁状态;在密码初验错误状态,输入确认信号enter时,进入报警状态;在报警状态,alarm信号等于‘1’。 图1 状态机转换图 change unlock input Right1 inlock wrong alarm Enter=0 Ps_ch=1 Enter=1 Lock=0 Enter=1 Enter=0 Yes=1 Start=0 Start=1 Enter=1 Lock=1 Enter=0 Enter=1 Enter=0 Yes=0 波形仿真图如图2 控制模块仿真图所示 图2 控制模块仿真图 波形仿真分析:起始密码为“0000”,

文档评论(0)

ganqludp + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档