21世纪人类将全面进入信息化社会,对微电子信息技术和微电子基础技术将不断提出更高的发展要求,徽电子技术仍将继续是21世纪若干年代中最为重要的和最有活力的高科技领域之一。而集成电路(IC)技术在微电予领域占有重要的地位。伴随着IC技术的发展,电子设计自动化(Electronic Design Auromation,EDA)已经逐渐成为重要设计手段,其广泛应用于模拟与数字电路系统等重要领域。
1 电子密码锁的硬件电路
如图1所示,电子密码锁分为五个模块:初始密码锁存模块、输入密码锁存模块、密码显示模块、比较模块、计数模块。具体模块的功能叙述和VHDL语言的实现。
图1 密码锁结构图
2 初始密码锁存模块
(1)初始密码锁存模块的主要功能:实现初始设定密码的锁存。当RESET为低电平时,如果不处于报警状态,可设置密码;如果处于报警状态,即当反馈信号上升沿到来时,禁止安锁。当RESET为高电平时,这时锁存器受控于SETUP按钮,进入安锁状态。其模块图如图2所示。
图2 密码锁存模块
(2)初始密码锁存模块的输入,输出。
初始密码锁存模块的输入:
RESET:系统的复位信号。当需要复位系统时(一般在密码锁自动报警之后),只需使RESET变为高电平(RESET=‘1’)即可将整个系统复位,处于等待输入密码的状态。
D[3..0]:设置的电子密码锁的4位二进制原始密码,可以自由的更改的。
SETUP:初始密码的锁存,设置初始密码(4位二进制数)后,再按SETUP键密码有效,系统会自动锁存该初始密码。
FK:反馈信号。把输入的错误密码的次数反馈到初始密码锁存模块中,当连续输入4次错误密码时,会使系统的自动报警功能工作,产生报警信号。
初始密码锁存模块的输出:
Q[3..0]:输出设置的初始密码,在后面的显示电路中显示,以及在比较电路中与输入的开锁密码相比较。
(3)初始密码锁存模块的VHDL语言设计
3 输入密码锁存模块
(1)输入密码锁存模块的功能:只要按下START按钮,输入的密码就进入了输入密码锁存器。
其模块图如图3所示:
图3 输入密码锁存模块
(2)输入密码锁存模块的输入、输出。
输入密码锁存模块的输入:
A[3..0]:输入我们认为的开锁密码。
START:输入密码锁存键,按下START键,输入的密码就进入输入密码锁存模块了。
输入密码锁存模块的输出:
DOUT[3..0]:输出设置的我们认为是开锁的密码,在后面的显示电路中显示,以及在比较电路中与电子密码锁的初始密码相比较。
(3)输入密码锁存模块的VHDL语言设计。
4 整体设计模块
(1)整体没计模块的输入。
RESET:系统的复位信号。当需要复位系统时(一般框密码锁自动报警之后),只须使RESET变为高电平(RESET=‘1’)即可将整个系统复位,处于等待输入密码的状态。
SETUP:初始密码的锁存。设置初始密码(4位二进制数)后,再按SETUP键密码有效,系统会自动锁存该初始密码。
D[3..0]:设置电子密码锁的4位二进制原始密码,可以自由的更改的。
OP:输入假定的开锁密码后,按下此键,系统进入开锁状态。
A[3..0]:输入假定的开锁密码。
START:输入密码锁存键,按下START键,输入的密码就进入输入密码锁存模块了。
(2)整体设计模块的输出。
SMG1:显示原始密码。
SMG2:显示输入密码。
Adeng:显示开锁成功。
Bdeng:显示开锁失败。
Cdeng:开锁失败的次数达到4次,显示警报。
5 编译,综合
Altera公司的MAX+PLUSII开发环境,由于其目的是形成可下载到可编程逻辑器件(FPGA或CPLD)中的文件,因此,编译、综合过程是一起的。逻辑综合就是将较高抽象层次的描述自动转换到较低抽象层次描述的一种方法。编译的最终目的是为了生成可以进行仿真、定时分析及下载到可编程逻辑器件的相关文件,如*enf,*rpt,*snf,*pof等。
6 系统VHDL描述波形仿真
6.1 初始密码锁存模块YMM的功能仿真
(1)当RESET为低电平时,如果不处于报警状态,可设置密码;如果处于报警状态,即当反馈信号fk上升沿到来时,禁止安锁。
仿真波形如图4所示:
图4 仿真图一
(2)当RESET为高电平时,这时锁存器受控于SETUP按钮(低电平有效),进入安锁状态。仿真波形如图5所示。
图5 仿真图二
6.2 输入密码锁存模块XMM的功能仿真
只要按下START按钮(低电平有效),输入的密码就进入了输入密码锁存器。
当starC=‘0’时,锁存器才有输出。仿真波形如图6所示。
图6 仿真图三
6.3 顶层文件的功能仿真
当START=‘0’,OP=‘0’,SETUP=‘0’,输入的密码错误时,bjs=‘1’,kms=‘0’;输入的密码正确时,bjs=‘0’,kms=‘1’,当连续输入四次错误的密码时,jbs=‘1’,RESET是jbs的清零信号。仿真波形如图7所示。
图7 仿真图四
7 结语
设计了基于VHDL语言的电子密码锁的五个模块:初始密码锁存模块、输入密码锁存模块、密码显示模块、比较模块和计数模块。每个模块都通过了功能仿真,并下载到FPGA芯片中,仿真和测试的结果表明每个模块均完成了其逻辑功能。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:基于VHDL的电子密码锁设计