基于CPLD的电子密码锁设计本科毕业设计论文文档格式.docx
- 文档编号:16335524
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:69
- 大小:896.72KB
基于CPLD的电子密码锁设计本科毕业设计论文文档格式.docx
《基于CPLD的电子密码锁设计本科毕业设计论文文档格式.docx》由会员分享,可在线阅读,更多相关《基于CPLD的电子密码锁设计本科毕业设计论文文档格式.docx(69页珍藏版)》请在冰豆网上搜索。
本人完全意识到本声明的法律后果由本人承担。
日期:
年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
日期:
导师签名:
日期:
注意事项
1.设计(论文)的内容包括:
1)封面(按教务处制定的标准封面格式制作)
2)原创性声明
3)中文摘要(300字左右)、关键词
4)外文摘要、关键词
5)目次页(附件不统一编入)
6)论文主体部分:
引言(或绪论)、正文、结论
7)参考文献
8)致谢
9)附录(对论文支持必要时)
2.论文字数要求:
理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
3.附件包括:
任务书、开题报告、外文译文、译文原文(复印件)。
4.文字、图表要求:
1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写
2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。
图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画
3)毕业论文须用A4单面打印,论文50页以上的双面打印
4)图表应绘制于无格子的页面上
5)软件工程类课题应有程序清单,并提供电子文档
5.装订顺序
1)设计(论文)
2)附件:
按照任务书、开题报告、外文译文、译文原文(复印件)次序装订
指导教师评阅书
指导教师评价:
一、撰写(设计)过程
1、学生在论文(设计)过程中的治学态度、工作精神
□优□良□中□及格□不及格
2、学生掌握专业知识、技能的扎实程度
3、学生综合运用所学知识和专业技能分析和解决问题的能力
4、研究方法的科学性;
技术线路的可行性;
设计方案的合理性
5、完成毕业论文(设计)期间的出勤情况
二、论文(设计)质量
1、论文(设计)的整体结构是否符合撰写规范?
2、是否完成指定的论文(设计)任务(包括装订及附件)?
三、论文(设计)水平
1、论文(设计)的理论意义或对解决实际问题的指导意义
2、论文的观念是否有新意?
设计是否有创意?
3、论文(设计说明书)所体现的整体水平
建议成绩:
(在所选等级前的□内画“√”)
指导教师:
(签名)单位:
(盖章)
年月日
评阅教师评阅书
评阅教师评价:
一、论文(设计)质量
二、论文(设计)水平
评阅教师:
教研室(或答辩小组)及教学系意见
教研室(或答辩小组)评价:
一、答辩过程
1、毕业论文(设计)的基本要点和见解的叙述情况
2、对答辩问题的反应、理解、表达情况
3、学生答辩过程中的精神状态
评定成绩:
教研室主任(或答辩小组组长):
(签名)
教学系意见:
系主任:
摘要
当今的科学技术日趋成熟,电子密码锁因具有便捷、安全的特性被诸多领域加以应用,市面上所使用的电子密码锁大部分是通过单片机与分离元件进行组合来实现的,其电路比较复杂、性能不够灵活且成本较高。
基于此,本篇论文为大家介绍了一种基于复杂可编程逻辑器件(CPLD)的电子密码锁设计方法。
它采用了近年来正流行的EDA技术,在硬件方面,选择ALTERA公司MAXⅡ系列CPLD芯片EMP570T100C为核心元件,用QuartusII开发软件作为工作平台,并使用VerilogHDL语言来描述算法,实现密码锁的功能。
该密码锁采用四位密码输入解锁,每位密码均采用0到F的十六进制输入方案,四位密码共计有65536种排序可能,且随时可以更新密码和升级算法,不易被破解。
硬件部分仅由一片CPLD芯片、一块LCD1602液晶屏、一只无源蜂鸣器与一块2*4键盘模块组成,体积小、易维护、使用方便,具有较好的应用前景。
关键词:
电子密码锁;
CPLD;
VerilogHDL硬件描述语言
ABSTRACT
Today'
sscienceandtechnologyisbecomingmature,electroniccombinationlockforconvenientandsafecharacteristicsaremanyfieldstoapplication,theelectroniccombinationlockonthemarketusemostlybysinglechipmicrocomputerandseparatingelementsarecombinedtorealize,itscircuitiscomplex,inflexibleandhighcostperformance.
Basedonthis,thispaperintroducesakindofbasedoncomplexprogrammablelogicdevice(CPLD)electroniccombinationlockdesignmethod,usingadvancedEDAtechnology,hardwarechoiceALTERAcompanyMAXⅡEMP570T100CseriesCPLDchipasthecoreelement,QuartusIIasworkplatform,usingVerilogHDLlanguagedescriptionalgorithm,realizethecombinationlockfunction.
Thecombinationlockadoptsfourpasswordtounlock,eachpasswordadopt0Fthehexadecimalinputplan,fourpasswordatotalof65536kindsofsortingpossible,andthepasswordcanbeupdatedatanytimeandupdatealgorithm,isnoteasytobecracked.HardwarepartonlybyaCPLDchip,aLCD1602LCDscreen,apassivebuzzeranda2*4keyboardmodule,smallvolume,easymaintenance,easytouse,hasgoodapplicationprospect.
KeyWords:
Electroniccombinationlock;
VerilogHDLhardwaredescriptionlanguage
1引言
1.1电子锁设计的现实意义
锁从来都是保护人身财产安全的人工屏障,几千年来,机械锁在能工巧匠的手中换化出诸多样式,但同时也伴随着年久腐锈,钥匙易遗失等一系列问题。
且已然遭窃,主人却毫无所知,这一类的问题也时常发生。
在科技成果无处不在的当代,在信息互联高度便利的今天,我们正在追求更可靠、更智能的安全装置,电子密码锁就是其中之一。
据有关资料介绍,电子锁的研究早在上世纪三十年代就开始了,并在一些特殊场所得到应用[1]。
这种锁是通过键盘输入一组密码,根据密码校验的结果控制机械机构的动作,从而完成开锁过程的。
由于电子锁的密码排列组合种类极多,并且可以避免因有形的钥匙被仿制或丢失而留下安全隐患,与机械锁相比,在安全性能上得到了很大的提高。
再加上锁的密钥是一串符号,无需携带实体钥匙,避免了人们随身携带钥匙的烦恼,而在今天受到越来越多的人的青睐。
1.2当前电子密码锁的类别与工艺
电子锁的种类繁多,已开发的就有有数码锁、磁卡锁、生物锁等诸多类别,它们不仅被应用在住宅、保险柜等传统领域,还延用于公共场所的身份验证与签到,既保障了环境安全,又节约了人力和物力,本课题就设计了一种基于CPLD技术的按键式电子密码锁。
与当前大多数基于单片机技术的密码锁相比较,后者以单片机为控制核心的元素,用软件实现编码器和解码器的功能。
在实际应用中,系统很容易跑飞,可靠性较差。
而基于复杂可编程逻辑器件(CPLD)的电子密码锁,是采用CPLD器件为主控芯片的系统,所有的算法完全由硬件电路实现,使系统可靠性大大提高。
同时,CPLD作为EDA的一种类别,具备了EDA设计的优点,采用自上而下的设计方案。
这种设计方法使得多名设计师可以同时进行一个项目的设计。
总设计师先将整个系统的硬件开发任务划分成多个可操作的小模块,模块划分完成后再把它们分别分配给下一层的多名设计师设计师。
每一名设计师都有明确的分工,他们只对自己所设计的模块负责;
下层的工作都完成后,再交由上层设计师对其进行功能验证。
可以逐层描述、逐层仿真,直至满足系统指标的设计方式,大大缩短了系统的开发时间,同时也降低了开发成本[2-3]。
1.3本课题的设计思路
该此密码锁设计所选择的开发环境是ALTARE公司的QuartusⅡ,并选择了该公司MAXII系列的EPM570T100C5芯片作为系统的核心部件,之所以做这样的选择是因为该系列的芯片在所有CPLD所有系列中单位I/O引脚的功耗和成本都是最低的。
价格低廉,性能却不俗,支持高达300MHz的内部时钟频率,具有板上振荡器和用户闪存,不需要分立振荡器或者非易失存储器,减少了芯片数量,并能实现JTAG命令,简化了电路板管理,在充分满足电子密码锁设计的需要的同时更兼备了高性能、低成本、低功耗的优势。
模块设计方面,选择VerilogHDL描述语言设计密码锁方案,系统构成主要分为4个部分:
数字密码输入模块、密码锁控制模块和密码锁显示模块以及声音模块。
(1)密码输入模块:
设计为加减计数器,以加按键、减按键和确定按键三键组合的方式实现每位密码十六种可能的输入,节省了键盘与芯片接口资源;
(2)密码锁控制模块:
定义了一个十六位比较器,将之前输入模块所记录下的密码与原设定密码进行比较,比较结果只返回“二者相等(aeb)”一个状态位;
(3)密码锁显示模块:
为LCD1602单行实时显示,显示当前的键入密码与密码锁的状态;
(4)声音模块:
密码错误单频率蜂鸣报警,开锁成功则播放音乐。
最后编写状态机连接各模块,全面实现系统功能。
2密码锁的硬件设计
2.1开发流程
本次电子密码锁的设计以CPLD芯片为核心部件,是基于当下流行的EDA技术,其芯片的内部结构与系统开发的流程都有别于传统设计,为了更好地完成设计,我们必须明确以下两个问题:
首先,什么是EDA?
EDA是电子设计自动化(ElectronicDesignAutomation)的缩写,是90年代初从CAD(计算机辅助设计)、CAM(计算机辅助制造)、CAT(计算机辅助测试)和CAE(计算机辅助工程)的概念发展而来的[4-5,7]。
近年来,作为一项电子设计技术,电子设计自动化迅速发展,在诸多·
领域得到了推广和应用,一般从认识上可以将其分为狭义EDA技术和广义EDA技术。
狭义EDA技术,就是指“依靠功能强大的电子计算机,在相应的工具软件平台上,对以HDL为系统逻辑描述手段完成的设计文件,自行完成逻辑编译、化简、分割、综合、优化和仿真,直至下载到可编程逻辑器件CPLD/FPGA或专用集成电路ASIC芯片中,实现特定的电子电路设计功能。
”
广义EDA技术,则被诠释为“通过计算机及其电子系统的辅助分析和设计软件来完成电子系统某一部分的设计过程。
因此,广义EDA技术除了包含狭义EDA技术之外,还包括印刷电路板辅助设计(PCB-CAD)技术、计算机辅助分析(CAA)技术(如EWB、MATLAB、PSPICE等)以及其他射频和高频设计与分析的工具等。
在EDA工具的基本组成部分中,必须要有的综合器与适配器这两个特殊的软件包。
其次,与传统设计相比,开发流程有何区别?
传统的电子设计方法是自下而上(Bottom-Up)的,如图2-1所示,是基于电路板的设计。
这种设计方法以固定功能元件为基础,然后根据这些器件进行模块逻辑设计,完成各个模块后进行连接,最后形成系统。
这种手工设计的方法具有如下缺点:
(1)经验不足的设计人员难以胜任系统开发工作,上手难度高;
(2)设计以来已有的通用元器件,同时,如果某一过程存在错误,则查找和修改十分不便;
(3)已将器件集成好的电路设计,生产工艺直接相关与实现过程都被定死,难以移植性,通用性差;
(4)在样机或芯片被生产出来前不能进行实测,一旦设计出现偏差,必将影响效率;
(5)从开始设计到项目完成耗时耗力,开发成本大[6]。
图2-1传统的电子设计方法
而本设计则反其道而行,采用自上而下(Top-Down)的设计方式,这是EDA设计的一大创新,如图2-2所示,将数字系统的整体化整为零,变为多个子系统和模块。
若子系统,规模仍然较大,可以再进一步分解。
如此层层分解,整理出各个子系统关系合理的整个系统,使得逻辑电路级的设计和实现更为容易。
采用自上而下的设计方法具有如下优点:
(1)这是一种模块化的设计方法;
(2)由于高层设计同器件无关,可以完全独立于目标器件的结构,因此在设计的最始阶段,设计人员不必考虑芯片结构的限制。
可以集中精力对产品进行最适应市场需求的设计,进而避免了再设计风险,使产品能够更快地上市;
图2-2自上而下的设计方法
(3)因为系统采用硬件描述语言进行设计,不必考虑芯片结构的限制,因此设计移植性好;
(4)适用于高效率、大规模系统设计的自上而下的设计方案;
(5)纯硬件系统可靠性高。
(6)具有强大的系统建模、电路仿真功能;
可以多人同时设计系统的不同部分;
(7)开发技术已经标注化、规范化,IP核具有可利用性;
(8)可利用计算机,进行全方位地仿真和测试,有需要时还能进行自动设计;
(9)对设计者的从业年限要求降低,受硬件知识和硬件经验的影响小;
(10)具有较好的高速性能;
2.2硬件结构
电子密码锁系统组成如下图所示,键盘模块输入密码或更改信号,CPLD实现系统的具体控制功能,显示模块同步反应当前系统状态,音乐模块协同报警信息同步响应,起到警醒作用,指示模块则进行重要信息提示,整个系统分工明确,人机互动良好。
图2-3系统硬件组成框图
2.3器件的选型与连接
硬件上系统由一块ALTERA公司的EPM570T100C5开发板,外接一块8位独立键盘构成。
开发板上具体使用到的器件有:
EPM570T100C5一片、LCD1602一块、48M晶振一只、有源蜂鸣器一只、三只发光二极管、8*8点阵一块(只用到四个点位)以及JTAG下载接口,具体线路连接见图2-4、图2-5[8-10]。
图2-4核心系统接线图
图2-5外接器件接线图
3密码锁的软件设计
3.1系统功能设计方案
该密码锁设定为四位密码输入,系统程序编写主要分为时钟电路、加减计数器、比较器、主控制状态机、LCD屏显示和音乐编曲六个模块分别进行。
其中各模块功能独立,主控制状态机完成密码的采录、比较与更改,并产生比较器、LCD显示以及音乐调用所需的输入信号。
具体实现功能如下:
(1)系统带7个功能键,分别为ADD(加按键)、SUB(减按键)、SET(确定键)、BACK(删除键)、RET(复位键)、CLOSE(关锁键)、CHANGE(密码更改)。
(2)上电以后,进入待机状态。
(3)待机状态下,随时可以输入密码。
由一个以ADD与SUB作为输入信号的加减计数器调整想要输入的密码值,液晶屏上同步显示密码输入状态。
具体步骤为:
一开
始时,LCD第一位显示当前数值(可通过ADD和SUB调整),按下SET键后,将当
前值作为输入密码的第一个数(此时LCD第一位显示为*);
继续通过ADD与SUB改变当前值(LCD第二位显示当前数值),SET键确认,将该值做为密码第二位(此时LCD第二位显示为*),以此类推直至四位密码都输入完毕。
当屏幕上四颗星都亮起时,密码输入完毕。
(4)密码输入期间,每按下一次BACK键,删除一位当前最末位密码,密码删除后
可重新输入。
(密码被删后,LCD相对应位的显示也被清除)
(5)四盏LED同步显示已输入密码的位数。
(6)输入密码满四位后,自动比较,密码正确LCD显示“Waiting”,错误则显示“ERROR”,蜂鸣器报警,按下复位键后回到待机状态。
(7)a、密码正确,LCD显示“Waiting”后,按下SET键开锁,LCD显示“OPEN”,并以一Led示意开锁成功。
b、开锁成功后,按下CLOSE重新上锁,或延时15秒后自动上锁。
C、若不进行开锁操作,15s后回到待机状态。
(8)错误、进入等待和开锁状态下各有一盏指示灯指示当前状态,指示灯点亮时系统工作在该状态。
(9)任何情况下,按下复位键,系统回到待机状态(已更改过的密码不变)。
(注:
所有按键应做过操作保护,以免错误操作使程序陷入死循环)
图3-1系统结构框图
表3-1系统I/O分配
输入
输出
信号/Pin
定义
Clk_div/12
时钟
Lcd_data[0]/74
LCD数据总线1
Lcd_rw/73
LCD写信号
Resetb/
27
复位
Lcd_data[1]/71
LCD数据总线2
Lcd_rs/75
LCD设置
Add/28
加
Lcd_data[2]/72
LCD数据总线3
Lcd_e/76
LCD使能
Sub/29
减
Lcd_data[3]/69
LCD数据总线4
Led1/95
灯1
Set/30
确定/
开锁
Lcd_data[4]/70
LCD数据总线5
Led2/96
灯2
Back/33
删除
Lcd_data[5]/67
LCD数据总线6
Led3/92
灯3
Change/
34
更改
Lcd_data[6]/68
LCD数据总线7
Led4/87
灯4
Close/41
关锁
Lcd_data[7]/64
LCD数据总线8
Bell/21
蜂鸣器接口
Lock/23
锁状态
3.2软件平台的选择
QuartusⅡ是新一代由Altera公司推出的开发软件,QuartusⅡ兼具强大的设计能力直观易用的接口,它支持包括图形输入法,基于硬件描述语言的文本编辑输入法和内存编辑输入法等多种编辑输入法。
支持本公司的IP核,内置LPM/MegaFunction宏功能模块库,提供大量成熟的模块供用户使用选择,使其可以简化设计和提高开发效率。
该软件属于第四代PLD开发平台,基本已经取代了MAXII开发平台。
该平台支持包括基于Internet的协作设计,并与Cadence、ExemplarLogic、MentorGraphics、Synopsys和Synplicity等EDA供应商的开发工具相兼容。
平台增添了FastFit编译选项,改进了软件的LogicLock模块设计功能,推进了网络编辑性能,而且提升了调试能力。
QuartusⅡ能够成为作为广大设计人员首选的开发工具,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 CPLD 电子 密码锁 设计 本科 毕业设计 论文
![提示](https://static.bdocx.com/images/bang_tan.gif)