基于FPGA的密码锁设计
基于FPGA的电子密码锁设计

基于FPGA的电子密码锁设计一、设计要求:1、开锁代码为8位二进制,当输入代码的位数和位值与锁内给定的密码一致,且按规定程序开锁时,方可开锁,并点亮开锁指示灯。
否则,系统进入“错误”状态,并发出报警信号。
2、开锁程序有设计者确定,并要求所内给定的密码可调,且预置方便,保密性好。
3、串行电子密码锁的报警方式是点亮指示灯,并使喇叭鸣叫报警,直到按下复位开关,报警才停止。
此时,电子密码锁又进入等待下一次开锁的状态。
二.设计说明与提示:1.该题目的主要任务是产生一个开锁信号OPEN,而开锁信号的形成条件是,输入代码和已设密码相同。
实现这种功能的电路构思有多种,本题目运用两片8位锁存器,一片存入密码,另一片输入开锁代码,通过比较的方式,若两者相等,则形成开锁信号。
2.在开锁信号产生时,要求输出声,光信号,声音的产生由开锁信号触动扬声器工作,光信号由开锁信号点亮LED指示灯。
3.用按钮开关的第一个动作信号触发一个5秒定时器,若5秒内无开锁信号产生,让扬声器发出特殊音响,以示警告,并输出一个信号推动LED不断闪烁。
三.设计思想:电子密码锁的系统结构框图分成两大部分:控制器和处理器。
整个系统的输入信号有一个时钟脉冲CLK ,输出信号有表示开锁,关锁信号的红灯,绿灯以及报警信号SPEAKER。
控制器中的所有按键按下时均为高电平,即高电平有效。
RW 为“密码设定”信号, OK 为“确定”信号, RED=‘0’GREED=‘1’为开锁信号CNT 表示上一位密码正确时,控制器给出的可进行下一位二进制密码比较的信号,OPEN=‘1’为控制器给出的锁开信号, OPEN=‘0’为控制器给出的密码错误信号。
处理器中有一个计数器,计数器C1用是用来记录从第一个按钮触动后的5秒内若未将锁打开(即输入正确密码时间超过5秒),则电路自动复位并进入自锁状态,使之无法再打开,并由扬声器发出持续20秒的报警信号。
四、设计程序与部分分析:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity lock_m isport(key:in std_logic_vector(7 downto 0);clk,clk1,ok,rw: in std_logic;red,green,speaker,rwled,okrw:out std_logic);end lock_m;architecture behav of lock_m issignal ok1,ok2,ok0,prr,start,pdan,rw1,rin:std_logic :='0';signal sbuf1,sbuf2,keyin:std_logic_vector(7 downto 0):="";signal mmst: std_logic_vector(7 downto 0):="";signal cnt:std_logic_vector(2 downto 0):="000";signal cnt1:std_logic_vector(4 downto 0):="00000";beginprocess(clk) ---定义个存储器将密码存放在keyin中beginif clk'event and clk='1' thenkeyin<=key;end if;end process;prr<=pdan or rw1 or rin or ok;st: process(keyin,prr,ok1) -----第一次修改密码beginif ok1='1' then start<='0';elsif (keyin/="" and prr='0') thenstart<='1';else start<='0';end if;end process;inkey: process(key,start,clk) ----输入密码时间进入记时状态beginif clk'event and clk='1' then ok1<='0';ok2<='0';if start='1' then sbuf1<=keyin; ----将密码放入rom1暂存器中if ok='1' then ok2<='1';elsif cnt="100" then cnt<="000" ;ok1<='1'; --5秒到将cnt值零将ok1值置高else cnt<=cnt+'1';end if ;else cnt<="000";sbuf1<=sbuf1; ----当start=‘1’时cnt永远保持‘0’end if;end if;end process;pandan : process(ok,ok1,ok2,clk,start) ---输入密码用于判断密码是否正确beginif ok2='1' or ok1='1' then pdan<='1'; ------开锁信号elsif clk'event and clk='1' thenif pdan='1' thenif cnt1="10011" thenpdan<='0'; --20秒后判断结束,进入等待外部输入状态elsecnt1<=cnt1+'1';end if;elsecnt1<="00000"; ---等待状态时cnt1一直为‘0’end if;end if;end process;comp: process(pdan,rw1,sbuf1,mmst,rin,clk1) -----显示程序beginif pdan='1' then ------开锁信号密码正确if sbuf1=mmst then -----红灯灭,绿灯亮red<='0';green<='1';rwled<='0';speaker<='0';okrw<='0';else ------密码错误red<='1';green<='0';rwled<='0';speaker<=clk1;okrw<='0';end if; ----红灯亮,绿灯灭,elsif rw1='1' then ----第一次修改密码显示状态red<='1';green<='0';rwled<='1';speaker<='0';okrw<='0';elsif rin='1' thenred<='0';green<='0';rwled<='1';speaker<='0'; okrw<='1';elsered<='1';green<='0';rwled<='0';speaker<='0';okrw<='0';end if;end process;rewrite:process(rw,keyin,ok0,clk,start,pdan,rin)beginif clk'event and clk='1' thenif ok0='1' then rw1<='0';elsif keyin="" and pdan='0' and rin='0' thenif rw='1' thenrw1<='1';end if;end if;end if;end process;process(rw1,ok,keyin,clk)beginif clk'event and clk='1' thenok0<='0';sbuf2<=keyin;if rw1='1' thenif ok='1' thenok0<='1';if mmst=sbuf2 thenrin<='1';elserin<='0';end if;end if;elseif rin='1' thenif ok='1' thenmmst<=sbuf2;rin<='0';else mmst<=mmst;end if;else null;end if;end if;end if;end process;end behav;五、仿真波形:(密码正确)密码锁默认的密码为“”,当我们第一次设置的密码为key=””,然后按OK键盘确认。
基于FPGA的电子密码锁的设计

信号控制处理模块的顶层图如图 4所示。左边为输入信号 ,
右边为输出信号。 SD IN 为串行脉冲输入 ,电路内部设计一个十 进制加法器对串行脉冲计数 ,计数值作为口令输入。 trig 为本模 块 时 钟输 入 端口。 Lo ck为 上 锁 键 , SET 为 口令 设 置确 认 键 , CR ACK 为 解锁键 , SET I为解 锁确认 键 , CR为复 位键 ,它们均 为低电平有 效。 sec 端口的每 个上升沿使 得口令显 示在消隐状 态和显示状态之间切换。解锁错误时 , AL ERT 输出高电平作为 报警信号。系统死锁后 , dead lock 输出高电平与 AL ER T报警 信号共同产生强报警信号。 din [3. . . 0]为显nd if;
end pro cess; 程序中 cnt 为编码计数器 ,它的每一个值 代表一种 状态 ,在 不同状态下 enco de端口输出不同的 L ED选择编码 。此编码作为 译 码器 74L S138的地址 输入 ,用 于选择 操作 哪一位 L ED 数码 管。 3电子密码锁的实现 本文设计在 Alter a 公司的开发软件 Quar tus II5. 0软件包上 编 译 仿真 ,并在 Cyclone EP1C6Q240C8上 下载实 现 ,实 际测试 表明系统的各项功能要求均得到满足并且系统工作良好。 本文设计的密码锁克服了基于单片机的密码锁的可靠性较
基于FPGA的电子密码锁的研究与设计

论文题目:基于FPGA的电子密码锁设计摘要普通的机械锁保密性不好,防盗性差,而且必须使用钥匙。
但是,基于FPGA设计的电子密码锁与普通的机械锁比较来说,就克服了这些不足之处。
该论文主要描述的是一种电子密码锁的设计方法,这种电子密码锁是基于现场可编程门阵列(FPGA)的电子密码锁。
由FPGA构造的电子密码锁系统中,硬件电路可以实现所有的算法,大幅度提高了西戎的工作可靠性。
为了提高设计的效率,可以在更改设计时只更改FPGA中的控制和接口电路,这是因为FPGA的现场可编程功能,也正是利用这一点,可以将更新后的设计下载到FPGA中,省去了更改外部电路设计的麻烦。
所以,这样的系统既可以使工作的可靠性增强也可以更加方便的升级。
系统所实现的功能:用户给电子密码锁设定一个密码,当使用本机键盘开锁时,该密码与用户设定的密码比较,如果密码正确,则开锁;如果密码不正确,用LED灯报警;允许用户重新输入密码。
关键词电子密码锁;FPGA;硬件描述语言;EDAAbstractFPGA-based design of electronic locks is a small digital system,compared with ordinary mechanical locks,has many unique advantages:confidentiality,security and strong,you can not have the keys,remember a password to unlock.This paper describes an approach based on field programmable gate array(FPGA)devices electronic locks design.Construct systems with FPGA devices,all algorithms entirely by hardware circuit to achieve,making the work system reliability greatly improved.As the FPGA with field-programmable function,when you need to change the design,just change the FPGA control and interface circuitry using EDA tools designed updated downloaded to the FPGA without the need to change the external circuit design,greatly improving the design efficiency.Therefore,the use of digital FPGA development system,not only has high reliability,but also extremely easy to upgrade.System implemented features:electronic locks user to set a password when using the keyboard lock,compared with the password set by the user's password,if the password is correct,then unlock;If the password is incorrect,the speaker alarm,allows the user to re- enter the password.Key wordsElectronic locks;FPGA;Hardware Description Language;EDA目录摘要 (I)Abstract (II)前言 (1)第一章概述 (2)1.1 课题背景 (2)1.2 课题研究的目的和意义 (2)1.3 国内外现状 (3)1.4 课题的主要研究工作 (4)第二章相关知识介绍 (5)2.1 FPGA的相关介绍 (6)2.1.1 可编程逻辑器件 (6)2.1.2 FPGA简介 (7)2.1.3 FPGA应用特点 (7)2.1.4 FPGA的设计流程 (9)2.2 硬件描述语言Verilog (11)2.2.1 Verilog语言简介 (11)2.2.2 Verilog语言的优点 (11)2.2.3 Verilog语言的基本结构 (12)2.3 QuartusⅡ软件开发工具 (12)第三章电子密码锁的总体设计 (14)3.1 设计要求 (14)3.2 系统原理框图 (14)3.3 系统主控制流程框图 (15)第四章电子密码锁的软件设计 (17)4.1 主要功能模块设计 (17)4.1.1 输入模块 (18)4.1.2 显示模块 (19)4.3 电子密码锁的仿真 (19)第五章电子密码锁的硬件实现 (24)5.1 电子密码锁的硬件模块实现 (24)5.2 硬件设备 (24)5.3 硬件的实现 (25)结论 (27)参考文献 (28)致谢 (30)前言基于FPGA的电子密码锁是新型现代化安全管理系统,微机自动识别技术和现代安全管理措施技术,包括生物技术、通信技术、电子和机械电等诸多新技术都在其中体现,重要部门出入口安全防范问题因此得到了解决。
基于FPGA的加密算法设计与实现

基于FPGA的加密算法设计与实现近年来,随着社会信息化的不断推进,数据安全性越来越受到广泛关注。
而对于各种形式的数据进行加密便成为了保障数据安全的一种重要手段。
在这种背景下,FPGA基于的加密算法得到了广泛的研究和应用。
本文将着重探讨基于FPGA的加密算法设计与实现。
一、FPGA与加密算法FPGA是可编程逻辑门阵列,它的特点是可重构性强、硬件配置灵活,能够满足各种不同应用的需求。
FPGA在加密算法设计与实现方面具有很大的优势,它不仅能够进行高效的数据加密和解密操作,而且还可以在网络加速、安全路由器等领域得到应用。
二、基于FPGA的加密算法设计1.对称加密算法设计对称加密算法是一种广泛应用的加密算法,在FPGA上进行对称加密算法设计主要包括DES(数据加密标准)、AES(高级加密标准),这两种算法分别在硬件资源利用率和加密速度方面有不同的优势。
2.非对称加密算法设计非对称加密算法设计主要包括RSA算法和椭圆曲线加密算法,这两种算法在FPGA上的资源利用和加密速度等方面都需要进行优化,同时还需要考虑安全性和稳定性等问题。
三、基于FPGA的加密算法实现1.硬件实现硬件实现主要是针对对称算法设计进行优化,采用硬件电路实现数据加密解密操作,具有加密速度快、安全性高等优点。
对于AES加密算法,硬件实现可采用S-box的共享、Pipelining、流水线相关技术等方法进行优化,以达到更高的加密速度和更高的硬件资源利用率。
2.软件实现软件实现主要是针对对称算法和非对称算法进行,采用CPU的软件程序设计实现数据加密解密。
软件实现主要具有灵活、简单等优点,同样可进行优化和加速。
对于RSA算法,软件实现可以采用Montgomery算法等数学优化算法,以达到加速的效果;对于AES算法,采用SIMD指令集等技术进行加速。
四、FPGA加密算法的安全问题在进行FPGA加密算法设计与实现时,也需要注意其安全性问题。
主要有以下几方面:1.密钥保护:FPGA加密算法的设计中,密钥的保护尤为重要,需要采取适当的安全措施,如物理隔离、动态密钥更新、复杂化密钥算法等方式保护密钥安全。
基于FPGA的电子密码锁系统的设计

目录第1章绪论1.1 国内外现状及其发展1.2 电子密码锁的系统简介1.3 系统设计要求1.4 本课题的研究目的和意义第2章现场可编程门阵列FPGA2.1 FPGA的基本结构2.1.1 可配置存储器2.1.2 可配置逻辑块(CLB)2.1.3 输入/输出块(IOB)2.1.4 可编程内部连线(PI)2.2 FPGA的设计流程2.3 VHDL硬件描述语言第3章电子密码锁的设计与仿真3.1 硬件设备3.2 密码锁输入电路3.3 密码锁控制电路3.4 系统有关编译和仿真结论参考文献附录基于FPGA的电子密码锁系统的设计随着电子技术的发展,具有防盗报警等功能的电子密码锁代替密码量少、安全性差的机械式密码锁已是必然趋势。
电子密码锁与普通机械锁相比,具有许多独特的优点:保密性好,防盗性强,可以不用钥匙,记住密码即可开锁等。
目前使用的电子密码锁大部分是基于单片机技术,以单片机为主要器件,其编码器与解码器的生成为软件方式。
在实际应用中,由于程序容易跑飞,系统的可靠性能较差。
本文主要阐述了一种基于现场可编程门阵列FPGA器件的电子密码锁的设计方法。
用FPGA器件构造系统,所有算法完全由硬件电路来实现,使得系统的工作可靠性大为提高。
由于FPGA具有现场可编程功能,当设计需要更改时,只需更改FPGA中的控制和接口电路,利用EDA工具将更新后的设计下载到FPGA中即可,无需更改外部电路的设计,大大提高了设计的效率。
因此,采用FPGA开发的数字系统,不仅具有很高的工作可靠性,而且升级也极其方便。
本文采用EDA技术,利用Quartus II工作平台和硬件描述语言,设计了一种电子密码锁,并通过一片FPGA芯片实现。
关键词:电子密码锁FPGA 硬件描述语言EDA第1章绪论1.1 国内外现状及其发展随着人们生活水平的提高和安全意识的加强,对安全的要求也就越来越高。
锁自古以来就是把守护门的铁将军,人们对它要求甚高,既要安全可靠的防盗,又要使用方便,这也是制锁者长期以来研制的主题。
基于FPGA的电子密码锁设计开题报告

参考文献:
[1]郭海英.基于单片机的电子密码锁的设计[J].现代电子技术,2005,28(13):95-96.
[2]王宽仁.可靠安全的智能密码锁[J].电子技术应用,2001,27(2):14.
[12]陆重阳,卢东华.FPGA技术及其发展趋势[J].微电子技术,2003,(01):15-18
三、主要内容和研究方法
基于FPGA设计的电子密码锁是一个小型的数字系统,与普通机械锁相比,具有许多独特的优点:保密性好,防盗性强,可以不用钥匙,记住密码即可开锁。目前使用的电子密码锁大部分是基于单片机技术,以单片机为主要器件,其编码器与解码器的生成为软件方式。在实际应用中,由于程序容易跑飞,系统的可靠性能较差。本文介绍一种基于现场可编程门阵列FPGA器件的电子密码锁的设计方法采用VHDL语言对系统进行描述,并在FLEX10K10LC84-4上实现。
第8学期第5~9周(2016.3.26~2016.4.29);
毕业设计申请答辩:
第8学期第9~10周(2016.4.25~201பைடு நூலகம்.5.6);
毕业设计答辩:
第8学期第11~12周(2016.5.9~2016.5.20);
整理上缴各种材料:
第8学期第13周(2016.5.23~2016.5.27)。
开题人(签名):
基于现场可编程逻辑门阵列逻辑门阵列逻辑门阵列fpgafpgafpga器件的电子密码锁用器件的电子密码锁用器件的电子密码锁用fpgafpgafpga器件构造系统所有算法完全由硬件电路来实现器件构造系统所有算法完全由硬件电路来实现器件构造系统所有算法完全由硬件电路来实现使得系统的工作可靠性大为提高使得系统的工作可靠性大为提高使得系统的工作可靠性大为提高911911911利用利用利用fpgafpgafpga设计电子密码锁其成本低设计方便设计电子密码锁其成本低设计方便设计电子密码锁其成本低设计方便现有资源充足现有资源充足现有资源充足实现比较容易实现比较容易实现比较容易利于系统的维护改进和升级利于系统的维护改进和升级利于系统的维护改进和升级可靠性更高可靠性更高可靠性更高更安全更安全更安全121212
基于fpga的数字密码锁设计与实现

一、概述在当今信息技术高度发达的时代,数字密码锁已成为人们生活中常见的安全保障措施之一。
随着FPGA(可编程逻辑门阵列)技术的不断成熟和普及,基于FPGA的数字密码锁设计与实现已经成为一个备受关注的研究方向。
本文将探讨基于FPGA的数字密码锁的设计原理、实现过程以及相关技术细节,为相关领域的研究和应用提供参考。
二、数字密码锁的基本原理1.数字密码锁的基本功能数字密码锁是一种利用密码验证来进行身份识别和门禁控制的设备。
其基本功能包括输入密码、密码验证和门禁控制等。
2.数字密码锁的工作原理数字密码锁通常由键盘、控制单元和执行单元等组成,其工作原理是用户通过键盘输入密码,控制单元接收并验证密码的正确性,然后执行单元根据验证结果控制门禁的开启或关闭。
三、基于FPGA的数字密码锁设计1.基于FPGA的数字密码锁的优势相比传统的基于单片机或嵌入式系统的数字密码锁,基于FPGA的数字密码锁具有更高的灵活性和可扩展性。
FPGA可以根据实际需求进行灵活的硬件逻辑设计,同时兼容多种通信协议和接口,使得其在数字密码锁设计中具有显著的优势。
2.基于FPGA的数字密码锁的设计原理基于FPGA的数字密码锁主要包括密码输入模块、密码验证模块和门禁控制模块。
密码输入模块负责接收用户输入的密码,密码验证模块根据预设的密码进行验证,门禁控制模块根据验证结果控制门禁的开启或关闭。
3.基于FPGA的数字密码锁的设计流程(1)确定需求:明确数字密码锁的功能和性能要求。
(2)硬件设计:设计数字密码锁的硬件逻辑,包括键盘接口、密码验证逻辑和门禁控制逻辑。
(3)软件设计:设计数字密码锁的用户界面和控制逻辑。
(4)综合与实现:将硬件和软件进行综合,实现数字密码锁的功能。
四、基于FPGA的数字密码锁的实现1.硬件设计(1)键盘接口设计:采用矩阵式键盘接口,利用FPGA内部的GPIO 接口进行连接。
(2)密码验证逻辑设计:采用逻辑门设计密码验证逻辑,包括密码存储、密码输入和密码比对等功能。
基于FPGA的数字密码锁

基于F P G A的数字密码锁精选文档TTMS system office room 【TTMS16H-TTMS2A-TTMS8Q8-CPLD/FPGA课程设计项目名称:基于FPGA的数字密码锁设计专业班级:学生学号:学生姓名:指导老师:2016年6月4日摘要本设计是基于现场可编程门阵列FPGA 器件的电子密码锁的设计。
通过Verilog 语言控制4位二进制数,组成数字排列,形成一个简单的数字密码锁,假设预设密码为4位数:0000,当输入正确时输出为1、输入错误时输出为0。
同时输出输入的次数,当3次以上输入错误时,输出一个报警信号,即使第四、五次输入正确也输出报警信号。
本设计利用Modelsim软件编写Verilog HDL硬件描述语言程序以实现输入密码、开锁、报警功能。
通过仿真调试,利用可编程器件FPGA的电子密码锁的设计基本达到了预期目的。
关键词:现场可编程门阵列;数字密码锁;Verilog HDL;AbstractThis design is the electronic code lock field programmable gate array FPGA devices based design. By Verilog language control 4-bit binary number, composed of figures arranged to form a simple digital lock, assuming that the default password is 4 digits: 0000, correct output when the input is 1, the output of the input error to zero. At the same time the number of input and output, and when more than three times the input error, an alarm signal is output, even if the fourth and fifth also enter the correct output alarm signal.This design uses Modelsim software write Verilog HDL hardware description language program to implement a password lock, alarm function. The simulation debugging, using the programmable device FPGA design basic electronic locks to achieve the desired purpose.Key words: FPGA;The digital combination lock;Verilog HDL;目录第1章所选项目的研究意义概述数字密码锁是一个小型的数字系统,与普通机械锁相比, 具有许多独特的优点: 保密性好, 防盗性强, 可以不用钥匙, 记住密码即可开锁等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学号14082200163 成绩评语题目基于FPGA的密码锁设计作者嘿嘿班级 0803BF 院别信息与通信工程专业电子信息工程完成时间 2011年5月8日基于FPGA的密码锁设计【摘要】基于FPGA设计的电子密码锁是一个小型的数字系统,与普通机械锁相比, 具有许多独特的优点: 保密性好, 防盗性强, 可以不用钥匙, 记住密码即可开锁等。
目前使用的电子密码锁大部分是基于单片机技术, 以单片机为主要器件, 其编码器与解码器的生成为软件方式。
在实际应用中, 由于程序容易跑飞, 系统的可靠性能较差。
本文介绍一种基于现场可编程门阵列FPGA 器件的电子密码锁的设计方法采用Verilog HDL语言对系统进行描述,并在EP1K10TC100-3上实现。
系统所实现的功能:用户给电子密码锁设定一个密码,当使用本机键盘开锁时,该密码与用户设定的密码比较,如果密码正确,则开锁;如果密码不正确,则允许用户重新输入密码,最多可输入三次,若三次都不正确,则扬声器报警,直到按复位键才允许再次输入代码。
通过仿真调试,利用可编程器件FPGA的电子密码锁的设计基本达到了预期目的。
当然,该系统在一些细节的设计上还需要不断的完善和改进,特别是对系统的扩展有很好的实用和设计的价值。
【关键词】:现场可编程门阵列, 硬件描述语言, 电子密码锁, 扬声器【Abstract】FPGA-based design of the electronic code lock is a small digital system, electronic password lock compared with ordinary mechanical locks, with many unique advantages: good privacy, security and strong, can not key to remember passwords to unlock, and so on. At present the use of the electronic code lock on most of SCM technology to SCM as the main devices, encoders and decoders of Health and the software approach. In practice, since the process easy run to fly, the reliability of the system can be poor. Based on this paper, a field programmable gate arrays FPGA devices electronic password lock design, Verilog HDL language used to describe the system and achieve EP1K10TC100-3.Implementation of the system features: users of electronic password lock to set a password, when using the keyboard unlock the machine, the user password and set the password, if the correct password, then unlock if the password is not correct, allows Users to enter a password, can enter up to three times, three times if not correct, the speaker alarm, until the reset button only allowed to re-enter the code.The simulation tests using programmable devices FPGA electronic password lock the basic design to achieve the expected goal. Of course, some of the details of the system in the design of the need to constantly refined and improved, in particular the expansion of the system have a good design and practical value.【Key words】: FPGA , Verilog HDL, electronic password lock , speaker基于FPGA的密码锁设计 (2)一、概述 (5)1.1 电子密码锁的现状 (5)1.2 论文主要完成的工作 (6)二、系统硬件设计 (6)2.1 系统设计方案 (6)2.1.1 系统功能需求分析 (6)2.1.2 系统实现方案的论证比较 (6)2.1.3 系统方案的总体设计 (7)2.2 主控模块 (8)2.2.1 主控芯片EP1K10TC100-3的介绍 (8)2.3 键盘模块 (8)2.4 显示模块 (9)2.5 报警模块 (10)三、系统软件设计 (10)3.1系统主控制流程框图 (10)3.2 键盘扫描程序框图 (11)3.3 获取键值程序框图 (11)3.4 解码、报警模块 (12)3.5 系统软件设计总RTL级图 (13)四、系统测试与总结 (13)4.1 仿真波形图 (13)4.2 本次课题设计体会 (14)参考文献 (14)附录 (14)一、概述1.1 电子密码锁的现状随着我国对外开放的不断深入,高档建筑发展很快,高档密码锁具市场的前景乐观。
我国密码锁具行业对密码锁具高新技术的投入正逐年增大,高档密码锁的市场需求也逐年增加。
在安防工程中,锁具产品是关系到整个系统安全性的重要设备,所以锁具产品的优劣也关系了整个安防工程的质量和验收。
目前,市场上比较先进的智能电子密码锁分别有:IC卡电子密码锁、射频卡式电子密码锁、红外遥控电子密码锁、指纹识别电子密码锁和瞳孔识别电子密码锁等。
IC 卡电子密码锁成本低,体积小,卡片本身无须电源等优点占领了一定的市场份额,但是由于有机械接触,会产生接触磨损,而且使用不太方便,在一定程度上限制了它的应用;射频卡式电子密码锁是非接触式电子密码锁,成本也不太高,体积跟IC卡密码锁相当,卡片使用感应电源,重量很轻,技术成熟,受到了广泛的欢迎,但是与IC 卡电子密码锁相比,成本偏高;指纹识别电子密码锁和瞳孔识别电子密码锁可靠性很高,安全性是目前应用系统中最高的,但是成本高昂,还没进入大众化使用阶段。
在国外,美国、日本、德国的电子密码锁保密性较好,并结合感应卡技术,生物识别技术,使电子密码锁系统得到了飞跃式的发展。
这几个国家的密码锁识别的密码更复杂,并且综合性比较好,已经进入了成熟期,出现了感应卡式密码锁,指纹式密码锁,虹膜密码锁,面部识别密码锁,序列混乱的键盘密码锁等各种技术的系统,它们在安全性,方便性,易管理性等方面都各有特长,新型的电子密码锁系统的应用也越来越广。
基于FPGA的电子密码锁是新型现代化安全管理系统,它集微机自动识别技术和现代安全管理措施为一体,它涉及电子,机械,计算机技术,通讯技术,生物技术等诸多新技术。
它是解决重要部门出入口实现安全防范管理的有效措施,适用各种场合,如银行、宾馆、机房、军械库、机要室、办公间、智能化小区、工厂、家庭等。
在数字技术网络技术飞速发展的今天,电子密码锁技术得到了迅猛的发展。
它早已超越了单纯的门道及钥匙管理,逐渐发展成为一套完整的出入管理系统。
它在工作环境安全、人事考勤管理等行政管理工作中发挥着巨大的作用。
在该系统的基础上增加相应的辅助设备可以进行电梯控制、车辆进出控制,物业消防监控、餐饮收费、私家车库管理等,真正实现区域内一卡智能管理。
目前使用的电子密码锁大部分是基于单片机技术, 以单片机为主要器件, 其编码器与解码器的生成为软件方式。
在实际应用中, 由于程序容易跑飞, 系统的可靠性能较差。
基于FPGA的电子密码锁已经是现代生活中经常用到的工具之一,用于各类保险柜、房门、防盗门等等。
用电子密码锁代替传统的机械式密码锁,克服了机械式密码锁密码量少、安全性能差的缺点。
由于采用的是可编程逻辑器件FPGA,使得系统有相当大的灵活性,随时可以进行硬件升级、扩展,而且系统设计完善以后还可以将主控的FPGA固化成一片ASIC,那么这块ASIC就可以作为专用的数字密码锁芯片。
而且由于硬件可升级,还可随时增加密码位数或增加新的功能,使得密码锁有更高的安全性、可靠性和方便性。
1.2 论文主要完成的工作课题主要解决系统硬件和软件两方面的问题。
硬件方面要解决FPGA可编程器件与其外围电路的接口设计的问题;软件方面主要问题是利用Verilog HDL语言完成基于FPGA的电子密码锁的编程问题。
除此之外,程序还要完成基本的密码开锁功能,并通过扬声器长时间鸣叫报警。
本设计是由FPGA可编程逻辑器件编程实现的控制电路,具体有按键指示、输入错误提示、密码有效指示、控制开锁、控制报警等功能。
它具有安全可靠、连接方便、简单易用、结构紧凑、系统可扩展性好等特点。
二、系统硬件设计2.1 系统设计方案2.1.1 系统功能需求分析本系统主要集中在以FPGA以核心外围扩展设计,整个电路主要电子锁具的组成框图是以可编程逻辑器件(FPGA)为核心,配以相应硬件电路,完成密码的设置、存贮、识别和显示、驱动电磁执行器并检测其驱动电流值,报警等功能。
FPGA接收键入的代码,并与存贮在闪存中的密码进行比较,如果密码正确,则驱动电磁执行器开锁;如果密码不正确,则允许操作人员重新输入密码,最多可输入三次;如果三次都不正确,则通过FPGA产生报警,FPGA将每次开锁操作和此时电磁执行器的驱动电流值作为状态信息发送给监控器,同时将接收来自接口的报警信息也发送给监控器。
2.1.2 系统实现方案的论证比较方案一:采样台湾凌阳科技有限公司推出的以凌阳自主研发的SPCE061A芯片为主控芯片,用一条下载线连接到计算机就可以实现在线仿真、在线调试、在线下载,低廉的价格保证了系统可靠开发;此外,61板具有SOC概念、DSP功能和语音特色,为电子密码锁的语音报警提供了方便,但是基于单片机设计的密码锁外围电路比较复杂,系统可靠性差,密码的数量少,尤其是系统的程序不够稳定,功率较大,需要专门的电源供电,所以不采用这个方案。