基于eda技术的电子密码锁的设计

2019-02-15 17:55

摘 要

随着电子技术的发展,具有防盗报警等功能的电子密码锁代替密码量少、安全性差的机械式密码锁已是必然趋势。电子密码锁与普通机械锁相比,具有许多独特的优点:保密性好,防盗性强,可以不用钥匙,记住密码即可开锁等。目前使用的电子密码锁大部分是基于单片机技术,以单片机为主要器件,其编码器与解码器的生成为软件方式。在实际应用中,由于程序容易跑飞,系统的可靠性能较差。

本文主要阐述了一种基于现场可编程门阵列FPGA器件的电子密码锁的设计方法。用FPGA器件构造系统,所有算法完全由硬件电路来实现,使得系统的工作可靠性大为提高。由于FPGA具有现场可编程功能,当设计需要更改时,只需更改FPGA中的控制和接口电路,利用EDA工具将更新后的设计下载到FPGA中即可,无需更改外部电路的设计,大大提高了设计的效率。因此,采用FPGA开发的数字系统,不仅具有很高的工作可靠性,而且升级也极其方便。

本文采用EDA技术,利用Quartus II工作平台和硬件描述语言,设计了一种电子密码锁,并通过一片FPGA芯片实现。

关键词:电子密码锁;FPGA;硬件描述语言;EDA

1.绪论

1.1本课题研究的目的和意义

为了使现在的电子密码锁更能智能化的管理,让人们更能方便的使用,让其具有更高的安全性和经济性,针对基于单片机的电子密码锁的不足之处,本文采用EDA技术,利用QuartusⅡ工作平台硬件描述语言,设计一种电子密码锁,并通过一片FPGA芯片实现。采用VHDL语言使用自顶向下的方法对系统进行了描述,并在FPGA芯片CycloneⅡ上实现。设计充分利用了FPGA的资源可编程特性,可高效率的对系统进行升级与改进。设计的密码锁可设置任意密码,比一般的四位密码锁具有更高的安全可靠性,因此,采用FPGA 开发的数字系统,不仅具有很高的工作可靠性,其升级与改进也极其方便,应用前景十分良好。

1.2国内外现状及其发展

随着人们生活水平的提高和安全意识的加强,对安全的要求也就越来越高。锁自古以来就是把守护门的铁将军,人们对它要求甚高,既要安全可靠的防盗,又要使用方便,这也是制锁者长期以来研制的主题。随着电子技术的发展,各类电子产品应运而生,电子密码锁就是其中之一。据有关资料介绍,电子密码锁的研究从20世纪30年代就开始了,在一些特殊场所早就有所应用。这种锁是通过键盘输入一组密码完成开锁过程。研究这种锁的初衷,就是为提高锁的安全性。由于电子锁的密钥量(密码量)极大,可以与机械锁配合使用,并且可以避免因钥匙被仿制而留下安全隐患。电子锁只需记住一组密码,无需携带金属钥匙,免除了人们携带金属钥匙的烦恼,而被越来越多的人所欣赏。电子锁的种类繁多,例如数码锁,指纹锁,磁卡锁,IC卡锁,生物锁等。但较实用的还是按键式电子密码锁。

20世纪80年代后,随着电子锁专用集成电路的出现,电子锁的体积缩小,可靠性提高,成本较高,是适合使用在安全性要求较高的场合,且需要有电源提供能量,使用还局限在一定范围,难以普及,所以对它的研究一直没有明显进展。

目前,在西方发达国家,电子密码锁技术相对先进,种类齐全,电子密码锁已被广泛应用于智能门禁系统中,通过多种更加安全,更加可靠的技术实现大门的管理。在我国电子锁整体水平尚处于国际上70年代左右,电子密码锁的成本还很高,市场上仍以按键电子锁为主,按键式和卡片钥匙式电子锁已引进国际先

进水平,现国内有几个厂生产供应市场。但国内自行研制开发的电子锁,其市场结构尚未形成,应用还不广泛。国内的不少企业也引进了世界上先进的技术,发展前景非常可观。希望通过不断的努力,使电子密码锁在我国也能得到广泛应用。

目前使用的电子密码锁大部分是基于单片机技术,以单片机为主要器件,其编码器与解码器的生成为软件方式。在实际应用中,由于程序容易跑飞,系统的可靠性能较差。基于现场可编程逻辑门阵列FPGA器件的电子密码锁,用FPGA器件构造系统,所有算法完全由硬件电路来实现,使得系统的工作可靠性大为提高。由于FPGA具有现场可编程功能,当设计需要更改时,只需更改FPGA中的控制和接口电路,利用EDA工具将更新后的设计下载到FPGA中即可,无需更改外部电路的设计,大大提高了设计的效率。

1.3FPGA的设计流程:(如图1.1)

图1.1 FPGA的设计流程图 系统行为仿真 系统设计方案 系统行为描述 模块划分及其功能描述 各模块接口信号定义 时序、 同步、 算法 测试等 方案 系统设计要求 2.电子密码锁的原理

2.1编码总量的确定

电子密码锁随机开锁成功的概率定义为:

P=1/NT

其中P为随机开锁成功概率,NT为密码编码总量。显然要使密码锁保密安全性高,NT应尽可能大,使P趋于零,但NT越大,相应电路越复杂,密码的

记忆与操作也越麻烦。故NT应有合理的上限和下限。

下限NTL的选择应使密码落在随机开锁可能成功的操作时区以外。若每一次开锁操作时间为t,为便于做随机试验,将N T分为n段并期望在1/n段的1/2处开锁成功。此时

p=1/2n

则随机开锁试验期望成功的时间为:

Tr=NT×t/2n

假定系统设计不考虑误码输入的保护,密码锁在无保护的情况下使操作人员任意作随机开锁试验的时间为TEN,则:

NTL=(2n×T EN t)×x,其中x为最低安全系数。即: TEN=(N TL×t2n)x

显然若使NT>=NTL,则Tr>TEN,则使分段随机试验不易成功。

由此可得出数字密码锁的编码总量设定是系统设计安全性、保密性的首要技术指标。一般来说,当NT选定之后,NT的上限NTH原则上是越大越安全,但一般设计时取NTH=(10~1000)NTL较为合理。 2.2编码制式的选择

编码制式应根据NT的大小选取,可分为如下三种: (1)密码的各位都可以重码:NT1=ai; (2)密码的非相邻位可以重码:NT2=a(a-1)i;

(3)密码的任何一位都不能重码:NT3=a(a-1)……(a-i+1)。

其中a为基数,i为位数,a和i的选取应该满足NT≥NTL , a=2,3,4,10,12,14,16。

现在以最常用的a=10,i=6为例,可以计算出NT2=0159NT 1,NT 3=0.15N T1,所以编码制式考虑是否重码对NT有很大影响。

另外,相同制式下不同的基底对编码总量NT会有影响,而且基底的选择也会影响到硬件电路的设计。

本文设计的密码锁采用十进制编码,密码各位允许重码,为简化电路设计,密码锁口令采用对串行脉冲计数的方式输入。 2.3误码输入的保护措施

如前所述,电子密码锁的设计应考虑自身的安全保密性,由于编码和捕捉密码的实验都是随机的,若要使P=1 /NT趋近于0,必须采取误码输入的保护措施。假定设定的误码输入次数不超过三次,误码达到三次时系统应关闭主控电路,拒绝大于三次的密码输入,并且系统进入死锁状态。系统正常状态的恢复也可采用以下三种方式:

(1)延时后输入二级密码管理方式,即由管理员级密码作为正常输入的开锁密码,之后重新定义新的开锁密码;

(2)使用一个按键使系统重新恢复到正常状态; (3)系统掉电恢复或万能密码。

2.4系统流程

系统流程图如图2.1:

开始系统复位,初始化什么都不是不与相应的功能键值相等报警键盘输入判断为密码输入还是功能输入是密码输入否密码输入功能输入输入是功能输入判断密码是否正确显示输入判断是什么功能是与相应的功能键值相等解锁执行功能


基于eda技术的电子密码锁的设计.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:历史课题阶段性总结

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: