ImageVerifierCode 换一换
格式:DOCX , 页数:42 ,大小:569.42KB ,
资源ID:22315621      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/22315621.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数字密码锁设计学位论文Word文档下载推荐.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数字密码锁设计学位论文Word文档下载推荐.docx

1、数字密码锁Abstract The application of electronics products brings great convenience to our life. As a electronics product, digital encrypted lock has more advantages over traditional lock in our daily use. Meanwhile, the development of EDA technology takes a breakthrough to the performance of electronics

2、 products, which saves the resources and enhances the reliability. In this paper, through analysis of the digital encrypted locks function, we divided the whole system into several modules. Then, we described each module by VHDL (Very High-Speed Integrated Circuit Hardware Description Language) and

3、drew the graphic files. We simulated the files and finally got the results. When you input correct codes, the door opens and the light is green. When the wrong codes are inputted, the light turns red and the alert rings. The results have demonstrated the feasibility of our approach. Key words: FPGA;

4、Programmable Logic Device;Digital Encrypted Lock第1章 绪 论随着科技的发展,电子产品已广泛地应用于人们的日常生活,数字密码锁也应用于保险提箱、超市物品柜等诸多场合,给人们带来了安全和方便。本项目的数字锁除能实现同于其他数字锁的一般功能外,还有一些其他的优点。安装了报警装置,在输入错误密码后发出警报,提高了安全性。另外键盘设有盲点,可以方便盲人开锁,扩大了它的应用领域。基于这些优点和其广泛的实用性,该数字锁具有研发的意义。近几年来EDA技术的迅猛发展给电子产品的设计带来了新方法,有文章评论可编程逻辑器件FPGA/PLD将冲击未来的系统设计1。与此

5、同时,IC技术发展日新月异。1960年Gordon Moore提出集成电路的功能随着时间呈指数增长的规律。Moore的预言在其后的几十年中表现出惊人的吻合,且被称之为Moore定律2。该定律指出,IC的集成度(即每个微电子芯片上集成的器件数),每IS个月翻一番,对应于IC制作工艺的特征线宽则每三年缩小30%。根据按比例缩小原理(Scaling Down Principle),特征线条越窄,IC工作速度越快,单元功能消耗的功率越低。因此,IC的发展不仅提高集成度,而且大大改善其性能(速度、功耗、可靠性等)。现在人们已经能够把一个完整的电子系统集成在一个芯片上了。因此,用一片可编程逻辑器件芯片FP

6、GA/CPLD实现数字锁的功能既节省了资源又提高了系统的可靠性。本文将数字密码锁划分成控制器、比较器、计数器、编码器、数据选择器等一些模块,并加入使能电路、消抖电路和指示电路等外围电路。对每一个模块均进行了VHDL语言描述和基于Max+plus软件平台的计算机仿真3-5,得到了较理想的波形。仿真结果证明了我们设计的正确性。波形及相关程序见附录。本文具体安排如下:论文的第一部分阐述课题的背景和研究意义;第二部分给出了数字锁的设计方案,介绍数字锁的工作过程;在第三部分中我们对系统的模块进行了仿真,得到了满意的结果;最后一个部分给出了结论。第2章 设计方案密码的输入方式有并行和串行两种。采用串行输入

7、方式,电路较简单,而且还有一个优点,就是串行输入必须用时序电路实现,对结果的判别与操作程序有关。故本设计采用串行数字锁并对操作过程有所规定。2.1系统模块划分图2-1是数字密码锁的原理框图。通过图2-1对数字密码锁的模块划分,我们可以确定整个系统的输入输出端口信号。 图2-1 密码锁各模块划分1. 数字按键输入信号a0a9,用来进行数字按键操作;2. 按键输入信号wait_t, 用来建立密码器的等待状态;3. 按键输入信号ready,用来设置密码器的准备操作状态;4. 按键输入信号setup,用于内部人员进行重新设置密码器;5. 按键输入信号open_t,用来设置密码器进入启动状态;6. 绿灯

8、指示驱动信号led_g,驱动绿灯显示;7. 红灯指示驱动信号led_g,驱动红灯显示;8. 蜂鸣器驱动信号alert,驱动蜂鸣器报警;9. 外部时钟信号clk,用来作为内部操作时钟和驱动蜂鸣器;10. 数码管显示译码输出a, b, c, d, e, f, g 。2.2信号功能描述1) 给密码锁上电后按下ready键,表示密码器准备就绪,可以接受外界输入密码。2) 通过a0a9按键输入3位数字密码后按下open_t键,如果输入的密码正确,则开锁,同时密码器绿灯亮。如果密码有误,则不能开启,同时红灯亮,发出警报。3) 密码锁开启结束后,密码锁进入下一次开锁等待状态。这时设置按键wait_t使密码锁

9、重新进入等待状态。4) 密码锁处于报警状态时,ready和wait_t键不起作用。这种情况下,密码锁由内部人员按setup键来对密码锁进行重新设置,使其回到等待状态。安全起见,setup应置于外部人员看不到的地方。5) 如果密码输入时操作失误,按下ready键重新回到密码锁准备就绪状态。6) 密码锁的工作时钟由外部晶振提供,可以用分频器对外部时钟进行分频操作,以产生需要的时钟。 2.3数字锁工作过程 首先,密码锁通过键盘输入数字密码,然后密码通过编码器转换输出BCD码,接下来通过比较器与预置密码进行比较,同时将输入的密码数字通过数码管显示译码模块显示出来,最后将比较的结果dep送入控制器中。外

10、部键每送入一个密码,计数器的计数值加1。如果计数器的计数值计到3,表示3个密码已经输入完毕。接下来计数器应向控制器发出反馈信号full,这表示控制器已经进入启动状态。 控制器模块在密码器每收到一个密码数字时向计数器发出一个时钟信号,如果密码器在按下open_t键以前收到第4个密码数字,将会转入报警状态,这时等待按下open_t键开始报警。所以,密码器每输入一个密码应该向控制器模块送入一个data_in信号,显然这个信号也应该同步。另外,数字密码a0a9、ready、open_t 、wait_t 、setup均由按键方式产生,其产生时刻和持续时间长短是随机不定的,并且存在因开关簧片反弹而引起的电

11、平抖动现象,因此每个开关后面安一个消抖模块以保证系统能捕捉到输入脉冲,同时保证每按一个键只形成一个宽度为系统时钟周期的脉冲。控制器是数字密码锁的核心部分,下面将对这一部分作重点的分析。将控制器的工作分为六个状态:Qa建立等待状态,Qb准备就绪状态,Qc密码输入状态,Qd开启状态,Qe报警状态,Qf报警返回状态。根据工作过程,可以得到控制器工作流程图,见附录,并化简得到状态转换的激励方程:各状态之间的转换过程如下:图2-2 控制器状态转换图上图描述了控制器在6个状态之间的跳转过程和具体转换条件,可以清楚地看出控制器的工作过程。第3章 仿真及测试结果各模块的VHDL语言描述文件见附录,通过仿真得到

12、了令人满意的波形。3.1 顶层设计仿真波形:图3-1 系统仿真结果从图中看出,每输入一个密码,data_in出现一个高电平。在输入正确密码1,2,3时,比较器判断信号均显示高电平,系统进入Qd启动状态。按下open_t键以后,绿灯亮(低电平有效)。开锁过程完成。3.2 时钟信号仿真波形:图3-2 时钟信号仿真波形一clk_div2是clk的200,000分频为控制器提供时钟信号。图3-3 时钟信号仿真波形二clk_div1是clk的1000分频,为报警器提供时钟信号。3.3控制器的仿真: 下面我们对数字锁的核心部分控制器进行仿真。clk_div2为控制器提供时钟,dep为比较器输出信号,绿灯和

13、红灯均为低电平有效。c11为wait_t输出信号,c22为setup输出信号,c33为ready输出信号,c44为open_t输出信号。本文仿真了控制器于不同状态的跳转情况。仿真时间为3.25s。模块流程图见附录。仿真源程序:library ieee;use ieee.std_logic_1164.all;entity control_model is port(c11,c22,c33,c44:in std_logic; data_in : dep : full : clk_div2 : en :out std_logic; cnp,reset : s_lr,s_lg,wait_l:out s

14、td_logic);end control_model;architecture control_model_arch of control_model is type state is (qa,qb,qc,qd,qe,qf); signal current_state:state:=qa;begin process begin wait until clk_div2event and clk_div2=1; wait_1en0 if (c11=)then current_state else=qb; s_lg s_lrwait_1 if (c33=qc; resetresetcnp if (

15、c44=qf; elsif (c33=) then reset= elsif(full=) then=qd; elsif(data_in= cnp if (data_in= elsif(c33= elsif(c44= when qe= if(c33= when qf= if (c22= wait_l end case; end process;end control_model_arch;仿真波形:图3-4 系统各状态转换仿真图从上图可以看出,系统处于a状态(建立等待状态)时,密码器不会接受除wait_t以外的信号,按下wait_t键,系统进入b状态(准备就绪状态)同时输出计数器清零信号set

16、up。这时按下ready键,密码锁进入c状态(密码输入状态),控制器接受密码输入。当输入密码满3位时,full信号出现高电平,这时转入启动状态d状态。控制器要判断接下来的信号是open_t还是数字键,假设我们又输入一个数字,data_in出现高电平,系统则进入报警状态e状态。如果按下open_t键,如波形图c44出现高电平,控制器发出红灯亮信号并进入报警返回状态f状态。这时我们完成了abcdef的状态转换仿真。按下setup键,c22信号出现高电平,数字锁重新进入b状态,按ready键,进入c状态,输入密码,dep出现低电平表明密码不符合,转入e状态。系统于e状态时,按下ready键又转入c状

17、态。在c状态时按下open_t键,不符合启动程序,则进入f状态同时红灯亮。完成bcecf的转换仿真。同样,f状态时按下setup键,c22信号出现高电平,数字锁重新进入b状态。系统b状态按下ready键进入c状态,输入三位密码后进入d状态,若这时发现操作失误,按下ready键可输出reset信号,返回c状态(密码输入状态),若不按ready,按下open_t则开锁,绿灯亮。第4章 结 论本文用可编程逻辑器件实现了多功能数字锁系统的功能,增加了系统的及程度,节省了资源。该密码锁在输入正确密码时,锁开启并且绿灯亮,输入密码不正确时,红灯亮并发出警报。本文给出顶层原理图、模块框图以及各模块的VHDL

18、语言源程序。各模块的VHDL语言描述已通过计算机仿真测试,得到了满意的波形。这证明了设计的正确性和方法的可行性。谢 词感谢指导老师一直以来给我的帮助,在理论学习和查阅资料的过程中,张有志老师一直给我热心的指导,这为后来系统功能的具体实现打下了基础。还要感谢实验室的老师在软件实现过程中给与的帮助。仿真过程中遇到很多问题在老师帮助和个人努力下得以解决,最终完成了设计任务,得到正确结果。参考文献1可编程逻辑器件FPGA/PLD冲击未来的系统设计OL. 2 王金明等数字系统设计与Verilog HDLM电子工业出版社,20023 任勇峰, 庄新敏VHDL与硬件实现速成M国防工业出版社,20054 金西

19、VHDL与复杂数字系统设计M西安电子科技大学出版社, 20035 冯涛,王程Max+plus入门与提高M人民邮电出版社, 20026汪国强等可编程路逻辑器件实验M电子工业出版社, 20057居悌可编程路逻辑器件的开发与应用M人民邮电出版社,19958赵立民可编程路逻辑器件与数字系统设计M机械工程出版社,20039 Wayne Wolf FPGA-based system design M China Machine Press, 200510 杨恒FPGA/CPLD最新实用技术指南M清华大学出版社,200511Vocke.Computer aided routing for complex p

20、rogrammable logic device manufacturing test development J IEEE, April 2000:171-17612 Charles W. McKay. Digital CircuitsMEnglewood Cliffs, N.J. c1978.13 Allan R. Hambley ElectronicsM Publishing House of Electronics Industry ,200514 Mark D. Birnbaum Essential electronic design automationM200515于枫,张丽英,

21、廖宗建ALTERA可编程逻辑器件应用技术M科学出版社,2004附录:1) 顶层文件VHDL源程序LIBRARY IEEE;USE IEEE.std_logic_1164.ALL;USE IEEE.std_logic_arith.ALL;USE IEEE.std_logic_unsigned.ALL;USE WORK.cipher_example.ALL;ENTITY cipher_top IS PORT(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9:IN std_logic; wait_t: ready: IN std_logic; setup: open_t: clk: led

22、_g,led_r,alert:OUT std_logic; a,b,c,d,e,f,g:OUT std_logic);END cipher_top ;ARCHITECTURE cipher_top_arch OF cipher_top IS COMPONENT clkdiv_model PORT (clk: clk_div1: clk_div2: END COMPONENT clkdiv_model; COMPONENT keysync_model PORT (c1,c2,c3,c4: a00,a10,a20,a30,a40,a50,a60,a70,a80,a90; c11,c22,c33,c

23、44: a01,a11,a21,a31,a41,a51,a61,a71,a81,a91: END COMPONENT keysync_model; COMPONENT enable_model PORT (open_t: a0,a1,a2,a3,a4,a5,a6,a7,a8,a9: en: c4: a00,a10,a20,a30,a40,a50,a60,a70,a80,a90: END COMPONENT enable_model; COMPONENT invert_model PORT (wait_t: c1,c2,c3: END COMPONENT invert_model; COMPON

24、ENT mux4_model PORT (s0,s1: e1,e2,e3,e4: END COMPONENT mux4_model; COMPONENT encoder_model PORT (a01,a11,a21,a31,a41,a51,a61,a71,a81,a91: b1,b2,b3,b4: data_in: END COMPONENT encoder_model; COMPONENT comparator_model PORT (b1,b2,b3,b4: dep: END COMPONENT comparator_model; COMPONENT counter_model PORT (reset: cnp: s0,s1 OUT std_logic; full: END COMPONENT counter_model; COMPONENT decoder_model PORT (b1,b2,b3,b4

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1