首页 EDA课程设计数字密码锁

EDA课程设计数字密码锁

举报
开通vip

EDA课程设计数字密码锁..PAGE优选目录TOC\o"1-3"\u目录PAGEREF_Toc359304856\h2摘要PAGEREF_Toc359304857\h3关键词PAGEREF_Toc359304858\h31引言PAGEREF_Toc359304859\h41.1课程设计背景PAGEREF_Toc359304860\h41.2课程设计目的PAGEREF_Toc359304861\h41.3课程设计内容PAGEREF_Toc359304862\h42数字密码锁设计PAGER...

EDA课程设计数字密码锁
..PAGE优选目录TOC\o"1-3"\u目录PAGEREF_Toc359304856\h2摘要PAGEREF_Toc359304857\h3关键词PAGEREF_Toc359304858\h31引言PAGEREF_Toc359304859\h41.1课程设计背景PAGEREF_Toc359304860\h41.2课程设计目的PAGEREF_Toc359304861\h41.3课程设计内容PAGEREF_Toc359304862\h42数字密码锁设计PAGEREF_Toc359304863\h42.1系统设计PAGEREF_Toc359304864\h42.2模块功能PAGEREF_Toc359304865\h52.2.1控制模块PAGEREF_Toc359304866\h52.2.2比拟模块PAGEREF_Toc359304867\h72.2.3存放模块PAGEREF_Toc359304868\h73仿真 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 PAGEREF_Toc359304869\h83.1控制模块的仿真PAGEREF_Toc359304870\h83.2比拟模块的仿真PAGEREF_Toc359304871\h93.3存放模块的仿真PAGEREF_Toc359304872\h103.4系统的仿真波形PAGEREF_Toc359304873\h103.5系统的引脚锁定PAGEREF_Toc359304874\h124设计总结PAGEREF_Toc359304875\h12参考文献PAGEREF_Toc359304876\h13摘要:随着数字集成技术和电子设计自动化(EDA)技术的迅速开展,数字密码锁应运而生。本文采用先进的EDA技术,利用QUARTUSⅡ工作平台和VHDL语言,设计了一种新型的数字密码锁,它不但可以完成锁具的根本功能,还能附加一些其他的智能,例如:报警、识别功能,数字密码锁具功能齐全,平安系数高,有机械锁无可比拟的优越性,它的造价本钱低,易于操作,越来越受到众多客户的青睐,可以优先占领市场有利份额。关键词:EDA技术;QUARTUSⅡ工作平台;VHDL语言;数字密码锁1引言1.1课程设计背景数字密码锁随着电子工业的开展,数字电子技术已经深入到了人们生活的各个层面,而且各种各样的电子产品也正在日新月异地向着高精尖技术开展。由于电子产品的功能不断增加,使用也越来越方便,有些产品已经成为了人们日常生活中不可缺少的必备物品。开展历史悠久的机械式门锁,因其功能单一,平安性能较差等缺点,必将被新一代的电子门锁所代替。新颖的多功能电子门锁,集电子门锁、防盗报警器,门铃等功能于一身,而且还具有定时器呼唤,断电自动报知,显示屋内有无人和自动留言等诸多附加功能。在未来的生活中,数字密码锁必将在学领域再创新的成绩,将给我们的生活带来更大的便利,前景不可估量。1.2课程设计目的1.掌握VHDL语言编程方法,通过实践加深对理论知识的理解。2.学会QuartusⅡ软件的使用方法。3.掌握数字密码锁的设计方法。4.掌握波形仿真,学会分析实验现象,提高分析问题的能力。1.3课程设计内容设计一个数字密码锁,用户可输入4位的二进制数,可有用户任意输入正确时开锁,密码输入错误时报警.码可手动预置,并可进展修改密码,取消报警。给出系统总体组成框图,设计思路,完成以上模块的VHDL实现及功能仿真,顶层文件及整体仿真。2数字密码锁设计2.1系统设计根据系统的设计要求,系统设计采用自顶向下的设计方法。顶层设计采用原理图的设计方式和系统的整体组装,分别由控制模块、存放器模块、比拟器模块等局部组成。即按照这三个组成模块定义相应的芯片引脚和输入输出的参数。2.2模块功能系统主要由3个模块组成,分别是控制模块、存放器模块、比拟器模块。2.2.1控制模块控制模块采用有限状态机设计,将系统分为7个状态,即开锁状态〔outlock〕、安锁状态(inlock)、输入密码状态(input)、密码初验正确状态(right)、密码初验错误状态(wrong)、报警状态(alarm)、修改密码状态(change)。状态转移图如图2-2-1。enter=’0’enter=’0’lock=’0’enter=’0’start=’0’enter=’0’changeoutlockrightxinputwrongalarminlockenter=’1’xiu=’0’enter=’1’yes=’1’yes=’0’start=’1’enter=’1’enter=’1’图2-2-1状态转移图系统上电时,处于开锁状态,当输入修改密码xiu信号时,系统进入修改密码状态;假设输入安锁lock信号,系统进入安锁状态,锁闭合:在安锁状态,输入输入密码start信号,系统进入输入密码状态;在输入密码状态,如输入密码内容和长度均正确,进入密码初验正确状态,如果密码错误,进入密码初验错误状态;在密码初验正确状态,输入确认信号enter时,进入开锁状态,在开锁状态kai信号等于‘1’;在密码初验错误状态,输入确认信号enter时,进入报警状态;在报警状态。warn信号等于‘1’。VHDL代码如下:libraryieee;useieee.std_logic_1164.all;entitymimaisport(clk,lock,start,xiu,enter,yes:instd_logic;warn,kai,wr,en:outstd_logic);end;architecturebhvofmimaistypestateis(inlock,input,rightx,wrong,unlock,change,alarm);signalps,ns:state;beginprocess(clk)beginifclk'eventandclk='1'thenps<=ns;endif;endprocess;process(ps,lock,start,xiu,enter,yes)begincasepsiswheninlock=>kai<='0';en<='0';warn<='0';wr<='0';if(start='1')thenns<=input;elsens<=inlock;endif;wheninput=>en<='1';kai<='0';warn<='0';wr<='0';if(yes='1')thenns<=rightx;elsens<=wrong;endif;whenrightx=>en<='0';kai<='0';warn<='0';wr<='0';ifenter='1'thenns<=unlock;elsens<=rightx;endif;whenwrong=>en<='0';kai<='0';warn<='0';wr<='0';ifenter='1'thenns<=alarm;elsens<=wrong;endif;whenunlock=>kai<='1';warn<='0';en<='0';wr<='0';iflock='1'thenns<=inlock;elsifxiu='1'thenns<=change;elsens<=unlock;endif;whenalarm=>warn<='1';kai<='0';en<='0';wr<='0';ifenter='1'thenns<=inlock;elsens<=alarm;endif;whenchange=>en<='1';warn<='0';kai<='1';wr<='1';ifenter='1'thenns<=unlock;elsens<=change;endif;endcase;endprocess;end;2.2.2比拟模块在数字密码器中,比拟器模块的功能是对按键输入和存放器模块的输出进展比拟,然后将比拟的结果送入到控制器模块。比拟器的具体工作原理是:当比拟结果相等时,c输出为1;当比拟结果不相等时,c的输出为0。VHDL代码如下:libraryieee;useieee.std_logic_1164.all;entitybiisport(a,b:instd_logic_vector(3downto0);c:outstd_logic);end;architecturebhvofbiisbeginc<='1'whena=belse'0';end;2.2.3存放模块存放器模块用于存放预设和修改后的密码,并在开锁时将所存密码输出到比拟器与按键输入的密码进展比拟,判断由按键输入密码是否正确的结果。VHDL代码如下:libraryieee;useieee.std_logic_1164.all;entityjiisport(clk,wr,en:instd_logic;data_in:instd_logic_vector(3downto0);data_out:outstd_logic_vector(3downto0));end;architecturebhvofjiissignalm:std_logic_vector(3downto0);beginprocess(clk)beginifclk'eventandclk='1'thenif(en='1'andwr='1')thendata_out<=data_in;m<=data_in;elsedata_out<=m;endif;endif;endprocess;end;3仿真分析3.1控制模块的仿真控制模块是系统的核心,其仿真波形如图3-1所示。各端口功能如下:输入信号:clk输入时钟,lock安锁信号,start开场输入密码,xiu修改密码,enter密码确认,Yes密码比拟。输出信号:warn警告信号,kai密码正误显示信号,wr存放器读写信号,en密码输入使能。图3-1控制模块仿真波形图3-1控制器仿真波形波形仿真分析:起始初始密码为"0000〞,安锁后锁关闭kai信号为‘0’;开锁时,按下start开锁键,密码比拟yes信号为‘1’有效,输入密码正确,按下enter确认键,锁开,锁开标志信号kai为’1’;开锁状态下,按下xiu修改密码键,输入新密码后按确认键start,密码修改成功,再按下lock安锁,此时密码为新输入密码;按下输入密码键start输入密码键假设输入密码错误,按下确认键enter后,报警warm信号有效。3.2比拟模块的仿真比拟器模块的工作原理是:当比拟结果相等时,输出为1;当比拟结果不相等时,输出为0。其仿真波形如图3-2。各端口功能如下:输入信号:a按键输入的密码,b存放器储存的密码。输出信号:c按键输入与存放器的密码是否相等。图3-2比拟器仿真波形波形仿真分析:起始存放器输出密码为"0001〞,键盘输入为"0101〞时不相等,所以输出c为0;当存放器输出密码为"0011〞,键盘输入为"0011〞时相等,所以输出c为1,其他与此一样。3.3存放模块的仿真开锁时将所存密码输出到比拟器与按键输入的密码进展比拟,到达判断由按键输入密码是否正确的结果。图4是存放器模块的仿真波形。图3-3存放器仿真波形波形仿真分析:当使能信号en和wr都有效时,将data_in输入的信号存储到存放器中,无论输入信号data_in为多少,输出信号data_out都为存放器所存内容。其他情况下,输出data_out信号,不随data_in输入改变。3.4系统的仿真波形图3-4系统仿真波形波形分析:上电后,系统的初始密码为"0000〞,按下start键由键盘key输入密码"0000〞,输入密码正确按确认键enter键锁开按,锁关闭开锁输出标志信号kai无效为1,显示开锁;在开锁状态下按xiu修改密码键后,由键盘key输入新密码0001后按确认键enter密码修改成功,按lock键密码锁上锁,此时密码锁密码为新密码;假设按下start键后输入的密码错误如图"1111〞与密码锁密码"0000〞不同,warm报警信号有效,锁不开且报警。假设按下start键后输入的密码正确如图"1111〞与密码锁密码"1111〞一样,kai开锁信号有效,锁开且不报警。顶层文件VHDL代码如下:libraryieee;useieee.std_logic_1164.all;entitytopisport(clk,lock,start,xiu,enter:instd_logic;key:instd_logic_vector(3downto0);warn,kai:outstd_logic);end;architecturebhvoftopisponentmimaisport(clk,lock,start,xiu,enter,yes:instd_logic;warn,kai,wr,en:outstd_logic);endponent;ponentjiisport(clk,wr,en:instd_logic;data_in:instd_logic_vector(3downto0);data_out:outstd_logic_vector(3downto0));endponent;ponentbiisport(a,b:instd_logic_vector(3downto0);c:outstd_logic);endponent;signald,e,g:std_logic;signalf:std_logic_vector(3downto0);beginu1:mimaportmap(clk=>clk,lock=>lock,start=>start,xiu=>xiu,enter=>enter,yes=>g,kai=>kai,warn=>warn,wr=>d,en=>e);u2:jiportmap(clk=>clk,wr=>d,en=>e,data_in=>key,data_out=>f);u3:biportmap(a=>key,b=>f,c=>g);end;3.5系统的引脚锁定如图3-5所示:图3-5引脚锁定 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 4设计总结通过这次的课程设计,使我对EDA这门课程、对QuartusⅡ开发软件和FPGA实验开发系统有了一个更加深刻的认识。我深深地被EDA的强大所震撼,QuartusⅡ开发软件虽然使用起来有些麻烦,但它的功能真的很强大,而且设计很自由,设计方式很多,能极大地满足当今社会高速开展的需要。通过这次课程设计,我还懂得了理论与实际相结合的重要性。我们只有把所学的理论知识与实践相结合起来,从实践中检验理论,才能真正为社会效劳,并且我们也可以在实践中提高自己的实际动手能力和独立思考的能力,使自己更加适合当今社会的需要。这次关于密码锁的课程设计,总的来说,还是比拟成功的。在设计的过程中遇到的问题,反映出来我的许多缺乏之处,我以后要努力抑制缺点。说真的,这次的课程设计真的很不容易,在过程中遇到了不少的问题。如:编写源程序时,经常不能通过。就如在写顶层文件的程序时,遇到了不少的问题,各元件之间的连接、顶层文件程序与底层文件程序之间的连接以及信号的定义,总是有错误。但在教师同学的帮助下,再加上自己不懈的努力,最终还是算比拟顺利地做了出来。经过这次的课程设计,使我以后的学习和生活受益匪浅,让我在以后的学习中更加注重理论与实践的结合,我应该感谢这次的设计。参考文献[1]VolneiA.Pedroni著,乔庐峰、王志功等译,VHDL数字电路设计教程.电子工业,2021[2]周立功,EDA实验与实践.第一版.航空航天大学,2007[3]潘松,黄继业。"EDA技术实用教程"。科学,2021.6[4]X江海。"EDA技术课程设计"。华中科技大学,2021.5
本文档为【EDA课程设计数字密码锁】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
dczly68
从事多年财务会计,税务工作的经验
格式:doc
大小:115KB
软件:Word
页数:13
分类:教育学
上传时间:2021-11-28
浏览量:1