基于FPGA的四位电子密码锁设计与实现--专业综合实训报告

上传人:日度 文档编号:145969929 上传时间:2020-09-25 格式:DOCX 页数:7 大小:399.34KB
返回 下载 相关 举报
基于FPGA的四位电子密码锁设计与实现--专业综合实训报告_第1页
第1页 / 共7页
基于FPGA的四位电子密码锁设计与实现--专业综合实训报告_第2页
第2页 / 共7页
基于FPGA的四位电子密码锁设计与实现--专业综合实训报告_第3页
第3页 / 共7页
基于FPGA的四位电子密码锁设计与实现--专业综合实训报告_第4页
第4页 / 共7页
基于FPGA的四位电子密码锁设计与实现--专业综合实训报告_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《基于FPGA的四位电子密码锁设计与实现--专业综合实训报告》由会员分享,可在线阅读,更多相关《基于FPGA的四位电子密码锁设计与实现--专业综合实训报告(7页珍藏版)》请在金锄头文库上搜索。

1、基于FPGA的四位电子密码锁设计与实现摘要:针对于传统密码锁安全性能低及可靠性差等问题,立足于芯片中数据存储的保密性,运用EDA技术自顶向下的设计方法,提出了基于FPGA的四位电子密码锁的设计与实现方法,所设计的四位电子密码锁具有解锁、密码修改、报警提示及液晶显示功能。设计分析与仿真结果表明,基于FPGA所设计的四位电子密码锁保密性更高、灵活性更好,使得数据存储的整体可靠性增强,为提高数据的保密性提供了新的解决方案。关键词:密码锁;FPGA;保密性;EDA技术;Design and Implementation of 4-Bit Electronic Cipher Lock Based on

2、FPGAWANG Guo-qiangLI Shang-fuWANG FeiXIE Li-liWANG QinSUN BaiSchool of Electronic Engineering,Heilongjiang University;Abstract:Traditional lock faces safety problem of low performance and poor reliability. Based on the data stored in the chip of confidentiality,and using EDA technology top-down desi

3、gn approach,we proposed the design and implementation of a 4-bit FPGA-based electronic lock,which provides unlock,password change,alarm and LCD functions.Design analysis and simulation results show that the designed FPGA-based electronic lock provides better confidentiality,flexibility and reliabili

4、ty for data storage.This approach provides a novel solution for improving data confidentiality.Keyword:Coded lock;FPGA;Confidentiality;EDA technology;0 引言随着时代的发展,人们生活水平逐步提高,同时安全意识也日益增强,如何实现家庭防盗这一问题就尤其突出。传统的机械锁由于其构造简单,锁芯直接外露,导致被撬的事情比比皆是。因此,随着电子技术工业的发展,数字电子技术已经深入到人们的日常生活中,层出不穷的电子产品也向着高端方向发展,电子密码锁也就应运而

5、生,在生活安全领域,具有防盗、报警功能的电子密码锁完全打破了机械密码锁的密码量少和安全性差的缺点1。电子密码锁的复杂性,需要设计专门的电子电路和技术,许多相关研究机构和组织的科研人员进行了大量研究。目前该领域的研究主要集中在如何使电子密码锁体积缩小、可靠性提高、成本降低、续航能力增强以及应用范围提升等方面,所以设计一款安全、可靠和廉价的电子锁有着重大的意义2。1 电子密码锁的系统框图本设计系统由主控芯片(FPGA)、显示电路、报警电路和开/关门电路组成,而主控芯片又可分为按键处理部分、控制部分和译码显示部分。系统原理图如图1所示。图1 系统原理图下载原图2 设计原理及流程设计采用传统的硬件电路

6、设计方法来设计系统的硬件。基于FPGA电子密码锁3,将开锁电路、执行电路、报警电路4和键盘输入次数锁定电路等完整地集成在一个电路板;包括输入电路模块、密码识别电路模块、密码错误报警模块和显示模块。通过键盘输入密码,用FPGA作为中控芯片,配以硬件的电路,接收代码,跟存储中的密码进行比对,如果密码正确则驱动电磁执行器进行开锁5,密码不正确,允许再次输入密码,若连续3次输入错误,则通过通信线路引导智能报警系统进行报警。其中,中控芯片又可分为按键处理部分、控制部分和译码显示部分6,用电磁继电器代替传统的机械式密码锁,用数码管显示输入的数字,由于采用的是可编程逻辑器件FPGA,使得系统有相当大的灵活性

7、,随时可以进行硬件升级、扩展。而且系统设计完善以后还可以将主控的FPGA固化成一片ASIC7-8,那么这块ASIC就可以作为专用的数字密码锁芯片。该电子密码锁通过各个模块间的相互配合,利用密码识别模块检验其准确性,根据准确性来激发报警模块。最终将会显示其是否成功,然后执行解开锁功能来完成既定的安全任务。3 四位电子密码锁的设计与实现3.1 输入电路模块本密码锁采用四位二进制编码作为密码进行输入,输入电路模块即借助DE2开发板这个平台,利用四个去抖按键键入密码,一个拨动开关作为复位键。由于按键上面没有确切的数字,本设计通过程序设定:K0、K1、K2和K3分别对应二进制数字0、1。所以密码共有2=

8、16种组合方式,相对比较繁琐,不易破解。输入电路模块作为人机交互的模块,其作用就是传递人与机器间的信息,即通过对按键的识别进行采集,并传递给中控芯片。3.2 密码识别电路模块密码识别电路模块是接收中控芯片传递给它的密码信息进行识别。首先通过对程序编程预置初始密码,然后随着中控芯片收到输入电路模块的密码信息后9,发送命令给密码识别电路模块,让与预置的初始密码进行比对,不论正确与否,该模块都会将比对后的信息反馈回中控芯片。3.3 密码错误报警模块当中控芯片收到密码识别电路模块反馈的信息后,判断该密码是否正确;如若错误,中控芯片则会发送信息给密码错误报警模块,该模块会触发导致响铃报警,并使报警灯LE

9、D D0灯熄灭。3.4 显示模块显示模块包括字符液晶显示屏和LED灯两个部分。字符液晶显示屏能清晰地显示输入的密码,以防止由于失误键入错误密码,而LED灯能直观地表示出密码输入的正误,二者相辅相成,使本设计更人性化,更加利于操作。3.5 各个模块具体实现3.5.1 FPGA有限状态机本设计是通过FPGA有限状态机来实现8,设计有限状态机最开始的工作时要确定电路,包括哪些状态,比如某个电路包括4个状态,S0、Sl、S2和S3。然后对所有状态给出一个状态编码,比如为状态S0赋予编码00,为状态Sl赋予编码01,为状态S2赋予编码10,为状态S3赋予编码11。状态编码是状态的标识,保存在寄存器当中,

10、对于此编码形式,只需一个2位的寄存器就可以了。如图2所示,有限状态机应该包括以下状态:密码为输入前的等待状态、输入密码时的等待状态、输入密码正确时的通过状态、输入密码错误时的警报状态。图2 有限状态机的状态下载原图其中当密码输入时又可包括以下状态:正常输入状态、异常输入状态(包括命令状态)。图3(该图是在程序编译后,tools-Netiist_Vewers-RTL Vewer得到的)表示了密码输入时候的次状态机,表示了4个密码输入的顺序状态,以及输入完成后的等待确认状态。图3 密码输入的次状态机下载原图3.5.2 密码的输入本次密码锁的密码输入采用FPGA芯片上的4位单个按键K0、K1、K2和

11、K3,在前面的输入电路模块中已提到:每个按键都有0和1两种表现形式,通过程序,按下按键表示密码“1”,没有按键表示密码“0”。假如要更改输入的数字,可以按复位键,重新按键。密码输入4位按键后可以自动检验密码的正误。3.5.3 密码的显示密码显示采用数码管动态扫描显示9,初始时显示4位密码,当输入密码后数码管的第1位、第2位、第3位、第4位会依次显示输入的密码,错误后复位可以重新输入。密码显示采用的是记录密码的寄存器的数据,显示扫描的扫描时间设置为1ms左右,这样显示不会出现闪烁或者残影10。3.5.4 电路的识别当输入密码正确时,中控芯片会进行判断识别,通过LED灯来显示输入的密码正确与否。当

12、密码输入正确时,LED D3灯亮。3.5.5 警报识别电路当密码输入错误时,系统会进行报警,使LED灯显示为1110,即LED D0亮。并且反馈给中控芯片触发报警模块,当警报过一段时间之后,系统会进入Waits状态,然后恢复初始状态。3.5.6 密码锁控制电路密码锁的控制电路是实现锁的功能11,当密码输入正确后,输入信号通过中控芯片向密码锁控制电路发出命令进行解锁。密码锁控制电路的主要部分便是电磁继电器。这里的电磁继电器就相当于锁,之前已提出当信号正确便会通过中控芯片,密码锁控制电路实现既定功能。使用电子密码锁的时候,只会用到两种工作模式12,一种是密码输入正确后自动开锁,另一种是密码错误向中

13、控芯片反馈信息并报警。4 仿真结果与性能分析本文设计对于密码锁模块功能的仿真将采用Quarters软件来实现。4.1 仿真流程在完成编写、编译VHDL程序后,则进行仿真验证VHDL程序。仿真流程图如图4所示。图4 仿真流程图下载原图4.2 密码识别电路仿真当密码输入1111正确之后,LED灯对应数值变成0111,此时表示解锁通过。同时,在经过一段时间之后,LED灯又变成了初始值0010,如图5所示。图5 密码识别电路仿真结果下载原图本设计全局时钟设置为50 MHz、zero1、one1、yes、three1即为键入密码的输入信号,复位键resetb一直处于高电平状态,即没有复位、0、1、2、3

14、作为输出信号分别对应灯LED D0、LED D1、LED D2、LED D3,高电平时LED灯灭,低电平LED灯亮。当输入信号都为高电平时,即输入密码为1111,输出信号3为低电平,即LED D3灯亮。4.3 警报识别电路仿真当密码输入1110错误之后,LED灯变成1110,此时表示报警。同时,在经过一段时间之后,LED灯又变成了初始值0010。如图6所示。图6 警报识别电路仿真结果下载原图5 结束语数据安全是衡量系统保密性的重要指标,因此,对于密码锁的研究十分重要。本文基于ALTERA公司的DE2开发板,所有算法完全由硬件电路来实现,使得系统的工作可靠性大为提高;同时由于FPGA具有在系统可

15、编程功能,当设计需要更改时,只需更改FPGA中的控制和接口电路,利用EDA工具将更新后的设计下载到FPGA中即可,无需更改外部电路的设计,大大提高了设计的效率,充分发挥了该芯片的作用。该密码锁采用四位按键输入密码,操作简单。并且借助FPGA这个工作平台,将密码输入模块、密码识别模块、错误报警模块和显示模块有机地结合在一起,使之构成一个完善的系统,完成了数字电子密码锁的密码录入、密码识别功能,并通过LED灯的显示能清晰地判断输入密码是否正确。研究及仿真结果表明,四位密码锁安全性更高,可靠性更强。未来的研究将进一步总结各种安全技术的特点,为后续设计安全系数更高的密码锁提供新的思路。参考文献1刘潇婷.基于FPGA的红外遥控电子密码锁的实现D.大连:大连大学,2008.2杨晓慧,杨永健.基于FPGA的EDA/SOPC技术与VHDLM.北京:国防工业出版社,2007:35-36.3王卫兵,刘克刚,朱秋萍.用FPGA的电子密码锁J.电子技术,2010(01):26-28.4曾繁泰.EDA工程方法学M.北京:清华大学出版社,2011:30-47.5潘松,王国栋.VHDL实用教程M.成都:电子科技大学出版社,2010:13-17.6简弘伦.精通Verilog HDL IC设计核心技术实例详

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

当前位置:首页 > 大杂烩/其它

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