基于FPGA的verilog的电子密码锁设计
基于FPGA的数字密码锁
基于F P G A的数字密码锁LG GROUP system office room 【LGA16H-LGYY-LGUA8Q8-LGA162】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;目录摘要 (I)Abstract (II)第1章所选项目的研究意义 (1)概述 (1)数字密码锁的研究现状 (2)数字密码锁的应用 (3)数字密码锁的困难 (3)本文研究意义 (3)设计思路 (4)第2章设计方案 (5)功能定义 (5)模块设计 (5)第3章系统软件设计 (7)设计概括 (7)设计流程 (7)密码存储模块 (7)编码模块 (8)比较模块 (8)主要程序模块 (9)第4章软件仿真 (14)仿真过程 (14)仿真结果 (15)仿真分析 (16)仿真过程 (17)结论 (18)参考文献 (19)附录1 程序代码 (20)项目创新及特色 (26)第1章所选项目的研究意义概述数字密码锁是一个小型的数字系统,与普通机械锁相比, 具有许多独特的优点: 保密性好, 防盗性强, 可以不用钥匙, 记住密码即可开锁等。
FPGA基于verilog HDL的密码锁
EDA课程设计课设密码锁名称:课设2014.6.23——7.5 日期:姓陈飞名:学110250101号:哈尔滨工业大学(威海)信电学院电子信息工程2014.6一. 所用软件与硬件介绍1.1所用软件介绍QuartusII是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。
QuartusII可以在XP、Linux以及Unix上使用,除了可以使用TCL脚本完成设计流程外,提供了完善的用户图形界面设计方式。
具有运行速度快,界面统一,功能集中,易学易用等特点。
QuartusII支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。
对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。
此外,QuartusII 通过和DSP Builder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。
Maxplus II 作为Altera的上一代PLD设计软件,由于其出色的易用性而得到了广泛的应用。
目前Altera已经停止了对MaxplusII 的更新支持,QuartusII 与之相比不仅仅是支持器件类型的丰富和图形界面的改变。
Altera在QuartusII 中包含了许多诸如SignalTapII、Chip Editor和RTL Viewer的设计辅助工具,集成了SOPC和HardCopy设计流程,并且继承了MaxplusII 友好的图形界面及简便的使用方法。
FPGA基于某verilog HDL的密码锁
EDA课程设计课设名称:密码锁课设日期: 2014.6.23——7.5 姓名:陈飞学号:110250101哈尔滨工业大学(威海)信电学院电子信息工程2014.6一. 所用软件与硬件介绍1.1所用软件介绍QuartusII是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。
QuartusII可以在XP、Linux以及Unix上使用,除了可以使用TCL脚本完成设计流程外,提供了完善的用户图形界面设计方式。
具有运行速度快,界面统一,功能集中,易学易用等特点。
QuartusII支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。
对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。
此外,QuartusII 通过和DSP Builder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。
Maxplus II 作为Altera的上一代PLD设计软件,由于其出色的易用性而得到了广泛的应用。
目前Altera已经停止了对MaxplusII 的更新支持,QuartusII 与之相比不仅仅是支持器件类型的丰富和图形界面的改变。
Altera在QuartusII 中包含了许多诸如SignalTapII、Chip Editor和RTL Viewer的设计辅助工具,集成了SOPC和HardCopy设计流程,并且继承了MaxplusII 友好的图形界面及简便的使用方法。
FPGA基于verilog HDL的密码锁
EDA课程设计课设名称:密码锁课设日期: 2014。
6。
23——7。
5 姓名:陈飞学号:110250101哈尔滨工业大学(威海)信电学院电子信息工程2014。
6一。
所用软件与硬件介绍1。
1所用软件介绍QuartusII是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。
QuartusII可以在XP、Linux以及Unix上使用,除了可以使用TCL脚本完成设计流程外,提供了完善的用户图形界面设计方式。
具有运行速度快,界面统一,功能集中,易学易用等特点.QuartusII支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。
对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。
此外,QuartusII 通过和DSP Builder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。
Maxplus II 作为Altera的上一代PLD设计软件,由于其出色的易用性而得到了广泛的应用。
目前Altera已经停止了对MaxplusII 的更新支持,QuartusII 与之相比不仅仅是支持器件类型的丰富和图形界面的改变.Altera在QuartusII 中包含了许多诸如SignalTapII、Chip Editor和RTL Viewer的设计辅助工具,集成了SOPC 和HardCopy设计流程,并且继承了MaxplusII 友好的图形界面及简便的使用方法.1.2所用硬件介绍硬件的总体设计:故由上图,将整个硬件电路部分主要分成五个部分,即:FPGA电路设计,数码管显示驱动电路设计,温度传感器电路设计,报警电路设计,键盘矩阵控制电路设计。
基于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的电子密码锁是新型现代化安全管理系统,微机自动识别技术和现代安全管理措施技术,包括生物技术、通信技术、电子和机械电等诸多新技术都在其中体现,重要部门出入口安全防范问题因此得到了解决。
电子密码锁verilog课程设计
电子密码锁verilog课程设计一、课程目标知识目标:1. 掌握电子密码锁的基本原理及其Verilog HDL实现方法;2. 了解数字电路设计的基本流程,包括设计、仿真和验证;3. 理解Verilog HDL语言的基本语法和结构,如模块、端口、信号定义等;4. 学会使用硬件描述语言进行简单的数字系统设计。
技能目标:1. 能够运用Verilog HDL语言设计一个具备基本功能的电子密码锁;2. 能够对所设计的电子密码锁进行功能仿真和时序分析;3. 能够根据实际需求调整和优化电子密码锁的设计;4. 培养学生的实际操作能力和问题解决能力。
情感态度价值观目标:1. 激发学生对数字电路和硬件描述语言的兴趣,培养其主动学习和探索的精神;2. 培养学生的团队合作意识,学会与他人共同解决问题;3. 增强学生的自信心,使其在克服困难的过程中体验到成就感;4. 引导学生关注科技发展,认识到所学知识在现实生活中的应用。
本课程针对高年级学生,结合课程性质、学生特点和教学要求,将目标分解为具体的学习成果。
在教学过程中,注重理论与实践相结合,使学生能够掌握电子密码锁的设计方法,提高其编程能力和实际操作技能。
同时,关注学生情感态度的培养,激发其学习兴趣,为学生的未来发展奠定基础。
二、教学内容本章节教学内容依据课程目标,结合教材相关章节,进行以下安排:1. 电子密码锁原理介绍:讲解电子密码锁的基本工作原理、组成和分类,使学生了解电子密码锁在实际应用中的重要性。
2. Verilog HDL基础知识:回顾Verilog HDL的基本语法、数据类型、运算符、赋值语句等,为学生编写电子密码锁程序打下基础。
3. 数字电路设计流程:介绍数字电路设计的基本流程,包括设计、仿真和验证,让学生了解实际工程项目的设计过程。
4. 电子密码锁设计:详细讲解电子密码锁的设计方法,包括密码存储、密码输入、密码比对和锁控逻辑等模块的设计。
5. 功能仿真及时序分析:教授如何对所设计的电子密码锁进行功能仿真和时序分析,以确保设计满足预期要求。
《基于VHDL语言和FPGA的电子密码锁》范文
《基于VHDL语言和FPGA的电子密码锁》篇一一、引言随着科技的发展,电子密码锁已逐渐取代传统的锁具,成为了安全领域的重要组成部分。
而作为电子密码锁核心技术之一的FPGA(现场可编程门阵列)技术,以及VHDL语言编程的灵活性,更是对密码锁设计起到了重要的推动作用。
本文旨在详细探讨基于VHDL语言和FPGA的电子密码锁的设计与实现。
二、VHDL语言与FPGA概述VHDL(VHSIC Hardware Description Language)是一种硬件描述语言,用于描述电子系统的结构和行为。
而FPGA则是一种可编程逻辑器件,其内部由许多可配置的逻辑单元组成,通过编程可以实现各种复杂的数字电路功能。
将VHDL语言与FPGA相结合,可以实现电子密码锁的高效、灵活和可定制的设计。
三、电子密码锁的设计要求在基于VHDL语言和FPGA的电子密码锁设计中,首先需要明确设计要求。
这些要求包括:高安全性、易于使用、良好的扩展性以及低成本等。
此外,密码锁应能抵抗各种常见的攻击方式,如暴力破解等。
四、基于VHDL的密码锁设计与实现基于VHDL语言的电子密码锁设计主要分为几个模块:密码输入模块、解码模块、控制模块和输出模块等。
密码输入模块负责接收用户输入的密码;解码模块对输入的密码进行解码,判断其是否正确;控制模块根据解码结果控制输出模块的开关状态;而整个系统则由FPGA实现。
在VHDL编程中,需要详细描述各个模块的功能、接口以及它们之间的通信方式。
例如,密码输入模块应能接收一定长度的密码输入,并将其传递给解码模块。
解码模块则根据预设的算法对密码进行解码,并将结果传递给控制模块。
控制模块根据解码结果控制输出模块的开关状态,以实现密码锁的开启或关闭。
五、FPGA的实现与优化在FPGA上实现电子密码锁时,需要利用FPGA的编程工具进行编程和配置。
首先,将VHDL代码编译成可在FPGA上运行的二进制代码;然后,将二进制代码下载到FPGA中,实现对电子密码锁的硬件配置。
基于-VerilogHDL的数字密码锁的设计
基于Verilog HDL的数字密码锁设计是一种常见的数字电路设计项目,它可以帮助学生理解数字逻辑电路和Verilog HDL的应用。
下面将详细介绍数字密码锁的设计方案。
一、系统结构设计数字密码锁主要由数字键盘、数码管显示、密码比对模块和控制逻辑组成。
数字键盘用于输入密码,数码管显示用于显示密码输入状态和开锁结果,密码比对模块用于比对输入的密码和预设的密码是否一致,控制逻辑用于控制整个系统的运行。
二、硬件设计1. 数字键盘:数字键盘采用矩阵式键盘,通过扫描按键来获取用户输入的密码。
2. 数码管显示:数码管用于显示密码输入状态,例如显示“请输入密码”、“密码正确”或“密码错误”等信息。
3. 密码比对模块:密码比对模块接收输入的密码和预设的密码,在Verilog HDL中实现密码比对逻辑。
4. 控制逻辑:控制逻辑用于控制密码输入、比对和显示的流程,以及控制门锁的开关。
三、Verilog HDL设计1. 数字键盘输入模块:编写Verilog HDL代码来接收数字键盘输入的密码。
2. 密码比对模块:编写Verilog HDL代码来比对输入的密码和预设的密码,输出比对结果。
3. 数码管控制模块:编写Verilog HDL代码来控制数码管的显示,根据密码比对结果显示相应的信息。
四、系统功能设计1. 密码输入功能:用户通过数字键盘输入密码。
2. 密码比对功能:系统对输入的密码进行比对,判断密码是否正确。
3. 显示功能:数码管显示密码输入状态和开锁结果。
五、仿真与综合完成Verilog HDL代码设计后,进行仿真验证,确保系统能够正常工作。
然后进行综合和布局布线,生成FPGA可编程文件。
六、总结与展望通过数字密码锁的设计,学生可以深入理解数字逻辑电路、Verilog HDL语言的应用,并且掌握数字密码锁系统的设计原理。
未来,可以进一步优化系统功能,增加更多的安全性和便利性功能,提升系统的性能和可靠性。
fpga电子密码锁课程设计
fpga电子密码锁课程设计一、课程目标知识目标:1. 学生能理解FPGA的基本原理和电子密码锁的工作机制;2. 学生能掌握使用硬件描述语言(HDL)进行数字电路设计和实现的方法;3. 学生能了解数字电路中常见的加密算法,并运用到电子密码锁的设计中;4. 学生能分析并解决电子密码锁在实际应用中可能遇到的问题。
技能目标:1. 学生能运用所学知识,设计并实现一个基于FPGA的电子密码锁;2. 学生能熟练使用相关硬件描述语言和开发工具,完成电子密码锁的编程与调试;3. 学生能通过实际操作,提高动手能力和团队协作能力;4. 学生能通过课程项目,培养创新思维和问题解决能力。
情感态度价值观目标:1. 学生能够认识到科技对社会和生活的重要性,增强学习科技的兴趣和责任感;2. 学生能够在课程学习中,培养勇于探索、积极进取的精神;3. 学生能够通过团队协作,学会互相尊重、沟通与协作,培养良好的团队精神;4. 学生能够关注电子密码锁在安全领域的应用,提高对国家和社会安全的意识。
二、教学内容1. 数字电路基础:回顾数字电路的基本概念,重点掌握组合逻辑电路和时序逻辑电路的设计原理;教材章节:第一章 数字逻辑基础2. FPGA原理与应用:介绍FPGA的基本结构、工作原理以及编程方法;教材章节:第二章 可编程逻辑器件及其编程技术3. 硬件描述语言(HDL):学习硬件描述语言的基本语法和编程技巧;教材章节:第三章 硬件描述语言VHDL/Verilog基础4. 加密算法:讲解常见的加密算法,如AES、DES等,分析其原理和实现方法;教材章节:第四章 数字信号处理与加密算法5. 电子密码锁设计与实现:结合所学知识,设计并实现一个基于FPGA的电子密码锁;教材章节:第五章 数字系统设计实例分析与综合6. 课程项目与实践:以小组形式进行项目实践,完成电子密码锁的设计、编程、调试和测试;教材章节:第六章 数字系统项目实践教学内容安排和进度:第1周:数字电路基础复习第2周:FPGA原理与应用学习第3-4周:硬件描述语言学习第5周:加密算法学习第6-8周:电子密码锁设计与实现第9-10周:课程项目与实践,成果展示与评价。
基于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)密码验证逻辑设计:采用逻辑门设计密码验证逻辑,包括密码存储、密码输入和密码比对等功能。
基于Verilog的FPGA的电子密码锁的设计
基于 FPGA 设计的电子密码锁是一个小型的数字系统,与普通机械锁相比,具有许多独特的优点:保密性好,防盗性强,可以不用钥匙,记住密码即可开锁等。
目前使用的电子密码锁大部份是基于单片机技术,以单片机为主要器件。
在实际应用中,程序容易跑飞,系统的可靠性较差。
本文介绍的一种基于现场可编辑门阵列 FPGA 器件的电子密码锁的设计方法,采用 VHDL 语言对系统进行描述,并在EP3C10E144C8 上实现。
通过仿真调试,利用可编程逻辑器件 FPGA 的电子密码锁的设计基本达到了预期目的。
固然,该系统在一些细节的设计上还需要不断地完善和改进,特殊是对系统的扩展有很好的使用系统和设计的价值。
现场可编程门阵列; VHDL 语言;电子密码锁FPGA—based design of the electronic code lock is a small digitalsystem. It has many unique advantages:good privacy and security , it do not need the key but remember password to unlock, and so on while it compare to ordinary mechanical locks. At present, the electronic code lock is most used of SCM technology 。
In practice, however, the process easy run to fly。
So the reliability of this system is poor。
The paper introduced a field programmable gate arrays FPGA devices to design electronic password lock 。
数电课程设计-基于FPGA的电子密码锁的设计
摘要随着电子技术的发展,具有防盗报警等功能的电子密码锁代替密码量少、安全性差的机械式密码锁已是必然趋势。
电子密码锁与普通机械锁相比,具有许多独特的优点:保密性好,防盗性强,可以不用钥匙,记住密码即可开锁等。
目前使用的电子密码锁大部分是基于单片机技术,以单片机为主要器件,其编码器与解码器的生成为软件方式。
在实际应用中,由于程序容易跑飞,系统的可靠性能较差。
本文主要阐述了一种基于现场可编程门阵列FPGA器件的电子密码锁的设计方法。
用FPGA器件构造系统,所有算法完全由硬件电路来实现,使得系统的工作可靠性大为提高。
由于FPGA具有现场可编程功能,当设计需要更改时,只需更改FPGA中的控制和接口电路,利用EDA工具将更新后的设计下载到FPGA中即可,无需更改外部电路的设计,大大提高了设计的效率。
因此,采用FPGA开发的数字系统,不仅具有很高的工作可靠性,而且升级也极其方便。
本文采用EDA技术,利用Quartus II工作平台和硬件描述语言,设计了一种电子密码锁,并通过一片FPGA芯片实现。
关键词:电子密码锁;FPGA;硬件描述语言;EDAABSTRACTWith the development of electronic technology, electronic password lock with burglar alarm and other functions replacing less password and poor security mechanical code lock is an inevitable trend. compared electronic password lock with ordinary mechanical locks, it has many unique advantages :confidentiality, and security in nature, do not use the key, remember password can unlock it etc .Most electronic password locks we used now is based upon SCM technology ,SCM is its mainly device ,and the creating of encoding and decoding devices is the fashion of Software mode. In practical application, the reliability of the system may be worse because of easy running fly of the programme.This paper mainly expatiates a design method of electronic password lock based upon Field Programmable Gate Array device. We use FPGA devices to construct system , all of the algorithm entirely achieved by the hardware circuit , because of FPGA has the function of ISP , when the design needs to be changed We only need to change the control and interface circuit of FPGA,EDA tools are used to download the updated design to FPGA without changing the design of the external circuit , this greatly enhance the efficiency of the design .Therefore , we use FPGA to empolder the digital system has not only high reliability but also extremely convenient of upgrading and improvement .In this paper ,we use EDA technology , Quartus II platform and hardware description language designing an electronic password lock ,and it achieved through an FPGA chip.Key words:electronic password lock;FPGA;hardware description language;EDA目录1 绪论 (1)1.1国内外现状及其发展 (1)1.2电子密码锁的原理 (2)1.3电子密码锁的系统简介 (4)1.4系统设计要求 (4)1.5本课题的研究目的和意义 (5)2 现场可编程门阵列FPGA (6)2.1FPGA的基本结构 (6)2.2FPGA的优点 (10)2.3FPGA的设计流程 (11)2.4自顶向下设计法 (17)2.5用模块化设计FPGA (18)3 VHDL硬件描述语言 (20)3.1VHDL语言的基本结构 (20)3.2结构体的描述方式 (21)3.3自上而下(TOP DOWN)的设计方法 (22)4 电子密码锁的设计与仿真 (24)4.1硬件设备 (24)4.2几个主要功能模块的设计 (25)4.3计算机仿真 (32)结束语 (38)参考文献 (39)附录1英文原文 (40)附录2中文译文 (49)附录3源程序 (56)1 绪论1.1 国内外现状及其发展随着人们生活水平的提高和安全意识的加强,对安全的要求也就越来越高。
基于FPGA和VHDL的数字密码锁的设计与实现
基于FPGA和VHDL的数字密码锁的设计与实现
自古以来人们对物品安全就十分重视,数字化的今天,电子锁正在逐步取代以往的机械锁被广泛运用在门禁、银行和保险柜。
然而,这些基于单片机的密码锁可靠性较差,而且功能拓展有限。
随着物联网技术的发展,人们对电子锁安全性和可靠性又提出了新的要求。
本文所述的FPGA,即现场
可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。
由于其高集成度,使得电子产品在体积上大大缩减,且具有可靠、灵活、高效等特性,己备受设计师们的青睐。
1 系统概述
1.1 功能概述
(1)初始密码为000000,按C键设置密码,密码设置完成后按A
键即上锁。
(2)以4&TImes;4键盘为输入设备,按B键开始密码输入,串行输入6位密码,输入完成后按#键,确认密码输入完成。
七段数码管将显示用户。
基于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章所选项目的研究意义概述数字密码锁是一个小型的数字系统,与普通机械锁相比, 具有许多独特的优点: 保密性好, 防盗性强, 可以不用钥匙, 记住密码即可开锁等。
基于FPGA的verilog的电子密码锁设计
二、概述 (2)1.1 电子密码锁的现状 (2)1.2 论文主要完成的工作 (3)三、系统硬件设计 (3)2.1 系统设计方案 (3)2.1.1 系统功能需求分析 (3)2.1.2 系统实现方案的论证比较 (3)2.1.3 系统方案的总体设计 (4)2.2 主控模块 (5)2.2.1 主控芯片EP4CE6E22C8的介绍 (5)2.3 键盘模块 (5)2.4 显示模块 (6)三、芯片主控设计 (7)3.1 FPGA有限状态机 (7)3.2 设计流程 (9)3.3 系统软件设计总RTC级图 (11)3.4 状态编码 (11)3.5 密码的输入 (12)3.6 密码的记录与比较 (12)3.7 密码的显示 (12)四、程序仿真 (13)五、结论 (14)参考文献 (14)一、二、概述1.1 电子密码锁的现状随着我国对外开放的不断深入,高档建筑发展很快,高档密码锁具市场的前景乐观。
我国密码锁具行业对密码锁具高新技术的投入正逐年增大,高档密码锁的市场需求也逐年增加。
在安防工程中,锁具产品是关系到整个系统安全性的重要设备,所以锁具产品的优劣也关系了整个安防工程的质量和验收。
目前,市场上比较先进的智能电子密码锁分别有:IC卡电子密码锁、射频卡式电子密码锁、红外遥控电子密码锁、指纹识别电子密码锁和瞳孔识别电子密码锁等。
IC卡电子密码锁成本低,体积小,卡片本身无须电源等优点占领了一定的市场份额,但是由于有机械接触,会产生接触磨损,而且使用不太方便,在一定程度上限制了它的应用;射频卡式电子密码锁是非接触式电子密码锁,成本也不太高,体积跟IC卡密码锁相当,卡片使用感应电源,重量很轻,技术成熟,受到了广泛的欢迎,但是与IC卡电子密码锁相比,成本偏高;指纹识别电子密码锁和瞳孔识别电子密码锁可靠性很高,安全性是目前应用系统中最高的,但是成本高昂,还没进入大众化使用阶段。
在国外,美国、日本、德国的电子密码锁保密性较好,并结合感应卡技术,生物识别技术,使电子密码锁系统得到了飞跃式的发展。
课程设计报告-基于fpga的电子密码锁的设计
课程设计报告-基于fpga的电子密码锁的设计
一、引言
随着计算机技术的发展,传统的安全锁逐渐淡出人们的视野,取而代之的是一种更加
先进而安全的电子密码锁。
采用FPGA开发的电子密码锁在现代实用锁中变得越来越常见,它能够实现简单易懂、稳定可靠的安全锁功能,从而满足人们对安全问题日益严峻的需求。
本文主要介绍基于FPGA技术设计的电子密码锁的原理及实际应用,旨在为技术研究和产
品设计提供有价值的参考。
二、系统概述
电子密码锁是一种可以根据用户的输入及系统的设置的安全保护锁,它主要由输入接口、控制器、显示屏和锁具电源等组成。
基于FPGA设计的电子密码锁主要分为输入端处
理和控制端处理两部分,其中,输入端利用FPGA控制集成电路(IC)、有源转换器和输入/
输出连接器,实现密码锁的输入模块部分的处理功能;控制端利用FPGA实现温度检测和
按键、加密算法、记录密码信息等功能,满足密码锁的控制要求。
三、工作原理
电子密码锁工作原理主要是建立在输入接口和控制器之间的信息传输上。
当用户通过
输入接口输入密码时,控制器收到输入信号,利用自身中内置的加密算法,将输入的密码
信息和系统设置密码进行比对,如果密码正确,系统会将密码锁打开,从而使得受保护的
物品得到有效的安全保护。
四、总结
基于FPGA技术设计的电子密码锁为现代安全保护提供了一种先进的途径,其安全性
和可靠性得到了极大的提高,使得大多数受保护物品得到有效保护。
电子密码锁以及FPGA 技术的发展正在为我们日常生活与工作提供前所未有的便利,也将带给未来更多安全的思
考与希望。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、概述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)为核心,配以相应硬件电路,设计一个密码锁,密码为一个4位的十进制数,密码固化在锁内,用户输入密码正确,则开锁(绿灯亮);若不正确,则报警(红灯亮)若用户输入密码不正确,可以按复位键重新输入密码。
2.1.2 系统实现方案的论证比较方案一:采样台湾凌阳科技有限公司推出的以凌阳自主研发的SPCE061A 芯片为主控芯片,用一条下载线连接到计算机就可以实现在线仿真、在线调试、在线下载,低廉的价格保证了系统可靠开发;此外,61板具有SOC概念、DSP 功能和语音特色,为电子密码锁的语音报警提供了方便,但是基于单片机设计的密码锁外围电路比较复杂,系统可靠性差,密码的数量少,尤其是系统的程序不够稳定,功率较大,需要专门的电源供电,所以不采用这个方案。
方案二:设计一种基于FPGA的电子密码锁的设计,用FPGA设计的系统已经是现代生活中经常用到的工具之一,通过键盘输入密码,用FPGA作为主控芯片,用数码管显示输入的数字,如果出现错误便通过报警电路发出报警,主控芯片又可分为按键处理部分、控制部分和译码显示部分用电子密码锁代替传统的机械式密码锁。
由于采用的是可编程逻辑器件FPGA,使得系统有相当大的灵活性,随时可以进行硬件升级、扩展。
而且系统设计完善以后还可以将主控的FPGA固化成一片ASIC,那么这块ASIC就可以作为专用的数字密码锁芯片。
方案的论证比较在实际应用中, 由于程序容易跑飞, 系统的可靠性能较差,而基于FPGA设计的电子密码锁克服了基于单片机设计密码锁的缺点。
基于上述比较以上两种方案,根据系统设计要求,采用方案二。
2.1.3 系统方案的总体设计系统原理框图本系统由主控芯片(FPGA),键盘,显示电路,报警电路和开/关门电路组成,而主控芯片又可分为按键处理部分,控制部分和译码显示部分。
系统原理框系统原理框图如图2.1.3所示:图2.1.3 系统总体框架总体设计原理本系统有8个按键,K0,K1,K2,K3,K4,K5代表数字0-9共10个数字和1个确认键,1个复位键。
密码长度为四位,并且固化在锁内,输入正确密码后,按确认键即可开门,本系统设置为绿灯亮。
在输入密码的过程中,当用户键入错误密码时,报警灯红灯亮。
按下复位键,可使报警停止,同时清除所有密码显示。
每输入一位数字,密码在数码管上的显示左移一位。
即上电后,按确认键即可开门。
门开后可通过锁门按钮关门,门关上后要再次输入密码才能开门。
在输入密码的过程中,当用户键入错误密码时,系统就会报警,由扬声器发出报警声,当连续三次出现密码错误时,则系统会长时间报警不止,这时必须按警报复位键方可停止。
2.2 主控模块2.2.1 主控芯片EP4CE6E22C8的介绍主控芯片采用ACEX1K 系列的EP4CE6E22C8。
Cyclone IV系列是当今Altera CPLD 中应用前景最好的器件系列之一,该系列的FPGA 由逻辑阵列块LAB (Logic array block)、嵌入式阵列块EAB(embedded array block)、快速互联以及IO 单元构成,每个逻辑阵列块包含8 个逻辑单元LE(logic element)和一个局部互联。
每个逻辑单元则由一个4 输入查找表(LUT)、一个可编程触发器、快速进位链、级连链组成,多个LAB 和多个EAB 则可通过快速通道互相连接[3]。
EAB 是Cyclone IV系列器件在结构设计上的一个重要部件,他是输入端口和输出端口都带有触发器的一种灵活的RAM 块,其主要功能是实现一些规模不太大的 FIFO、ROM、RAM 和双端口RAM 等。
2.3 键盘模块按键方式分为8个独立按键,K0,K1,K2,K3,K4,K5代表数字0-9共10个数字和1个确认键,1个复位键。
考虑到按键数目不够,采用了一位按键作为功能转换按键;即前5位按键输入0~4,同时按下功能转换按键时,按键0~4即转换为按键5~9,这就弥补了按键数目的不足。
最后两位按键设定为确认输入按键和复位按键。
密码输入完成后可以按确认键检验密码的正误,报警、输入错误或者其他情况可以按复位按键重新输入。
按键上拉,当IO口被拉高电平,当IO口检测到高电平时,表示按键按下。
部分按键控制电路如图2.3所示:图2.32.4 显示模块LED显示块是由发光二极管显示字段的显示器件。
在单片机应用系统中通常使用的是7段LED,本设计将采用共阳极。
共阳极LED显示块的发光二极管与阳极并接。
数码管显示块中共有8个发光二极管,其中7个发光二极管构成七笔字形“8”,1个发光二极管构成小数点。
7段显示块与FPGA接口非常容易。
只要将一个8位并行输出与显示块的发光二极管引脚相连即可。
8位并行输出口输出不同的字节数据即可获得不同的数字或字符,如表5.1所示。
通常将控制发光二极管的8位字节数据称为段选码。
共阳极与共阴极的段选码互为补数。
表2.4 LED显示块功能表三、芯片主控设计3.1 FPGA有限状态机本设计是通过FPGA有限状态机来实现,设计有限状态机最开始的工作时要确定电路,包括哪些状态,比如某个电路包括四个状态,S0,S1,S2,S3。
然后对所有状态给出一个状态编码,比如为状态S0赋予编码00,为状态S1赋予编码01,为状态S2赋予编码10,为状态S3赋予编码11。
状态编码是状态的标识,保存在寄存器当中,对于此编码形式,只需一个2位的寄存器就可以了。
FSM Encoding Style 主要有:Binary Encoding One Hot Encoding Gray Encoding二进制与一位热码的特性比较:表3.1 二进制与一位热码的特性比较状态机可以认为是组合逻辑和寄存器逻辑的特殊租户,它一般包括两个部分:组合逻辑部分和寄存器逻辑部分。
寄存器用于存储状态,组合电路用于状态译码和产生输出信号。
状态机的下一个状态及输出,不仅与输入信号有关,而且还有寄存器当前所处的状态有关。
根据输出信号产生方法的不同,状态机可以分成两类:Mealy型和Moore型。
Moore型状态机的输出只是当前状态的函数,而Moore型状态机的输出只是当前状态的函数,而Mealy型状态机的输出则是当前状态和当前输入状态的函数。
其原理如下两图:3.2 设计流程本次密码锁的设计,有限状态机应该包括以下状态:密码为输入前的等待状态、输入密码时的等待状态、输入密码正确时的通过状态、输入密码错误时的警报状态。
图3.3 主有效状态机的状态转换图其中当密码输入时又可包括以下状态,正常输入状态、异常输入状态(包括命令状态)、输入确认状态。
下面的图(图是在程序编译后,tools->Netlist_Vewers->RTL Vewer得到的)表示了密码输入的时候的次状态机,表示了4个密码输入的顺序状态,以及输入完成后的等待确认状态。
图3.4次有效状态机的状态转换3.3 系统软件设计总RTC级图3.4 状态编码状态编码主要有二进制编码、格雷编码和一位独热编码等方式。