EDA课程设计数字密码锁

更新时间:2024-03-23 15:17:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

目录

目录 ........................................................................................................................................................................ 1 摘要 ........................................................................................................................................................................ 2 关键词 .................................................................................................................................................................... 2 1 引言 .................................................................................................................................................................. 3 1.1 课程设计背景 ............................................................................................................................................. 3 1.2 课程设计目的 ............................................................................................................................................. 3 1.3 课程设计内容 ............................................................................................................................................. 3 2 数字密码锁设计............................................................................................................................................... 3 2.1系统设计 ..................................................................................................................................................... 3 2.2模块功能 ..................................................................................................................................................... 4

2.2.1 控制模块 ............................................................................................................................................ 4 2.2.2 比较模块 ............................................................................................................................................ 6 2.2.3 寄存模块 ............................................................................................................................................ 6

3 仿真分析 .......................................................................................................................................................... 7 3.1 控制模块的仿真 ......................................................................................................................................... 7 3.2 比较模块的仿真 ......................................................................................................................................... 8 3.3 寄存模块的仿真 ......................................................................................................................................... 9 3.4系统的仿真波形 ......................................................................................................................................... 9 3.5 系统的引脚锁定 ........................................................................................................................................ 11 4 设计总结 ......................................................................................................................................................... 11 参考文献 .......................................................................................................................................................... 12

1

摘要:随着数字集成技术和电子设计自动化(EDA)技术的迅速发展,数字密码锁应运

而生。本文采用先进的EDA技术,利用QUARTUS Ⅱ工作平台和VHDL语言,设计了一种新型的数字密码锁,它不但可以完成锁具的基本功能,还能附加一些其他的智能,例如:报警、识别功能,数字密码锁具功能齐全,安全系数高,有机械锁无可比拟的优越性,它的造价成本低,易于操作,越来越受到众多客户的青睐,可以优先占领市场有利份额。

关键词:EDA技术;QUARTUS Ⅱ工作平台;VHDL语言;数字密码锁

2

1 引言

1.1 课程设计背景

数字密码锁随着电子工业的发展,数字电子技术已经深入到了人们生活的各个层面, 而且各种各样的电子产品也正在日新月异地向着高精尖技术发展。由于电子产品 的功能不断增加,使用也越来越方便,有些产品已经成为了人们日常生活中不可 缺少的必备物品。发展历史悠久的机械式门锁,因其功能单一,安全性能较差等 缺点,必将被新一代的电子门锁所代替。新颖的多功能电子门锁,集电子门锁、 防盗报警器,门铃等功能于一身,而且还具有定时器呼唤,断电自动报知,显示 屋内有无人和自动留言等诸多附加功能。在未来的生活中,数字密码锁必将在学 领域再创新的成绩,将给我们的生活带来更大的便利,前景不可估量。

1.2 课程设计目的

1. 掌握VHDL语言编程方法,通过实践加深对理论知识的理解。 2. 学会QuartusⅡ软件的使用方法。 3.掌握数字密码锁的设计方法。

4.掌握波形仿真,学会分析实验现象,提高分析问题的能力。

1.3 课程设计内容

设计一个数字密码锁,用户可输入4位的二进制数,可有用户任意输入正确时开锁,密码输入错误时报警.码可手动预置,并可进行修改密码,取消报警。给出系统总体组成框图,设计思路,完成以上模块的VHDL实现及功能仿真,顶层文件及整体仿真。

2 数字密码锁设计

2.1系统设计

根据系统的设计要求,系统设计采用自顶向下的设计方法。顶层设计采用原理图

3

的设计方式和系统的整体组装,分别由控制模块、寄存器模块、比较器模块等部分组成。即按照这三个组成模块定义相应的芯片引脚和输入输出的参数。

2.2模块功能

系统主要由3个模块组成,分别是控制模块、寄存器模块、比较器模块。

2.2.1 控制模块

控制模块采用有限状态机设计,将系统分为7个状态,即开锁状态(outlock)、安锁状态(inlock)、输入密码状态(input)、密码初验正确状态(right)、密码初验错误状态(wrong)、报警状态(alarm)、修改密码状态(change)。状态转移图如图2-2-1。

enter=’0’ enter=’1’ lock=’0’ outlock xiu=’0’ start=’0’ inlock enter=’1’ enter=’1’ enter=’1’ enter=’0’ change rightx yes=’1’ start=’1’ input yes=’0’ wrong enter=’0’ alarm enter=’0’ 图2-2-1 状态转移图

系统上电时,处于开锁状态,当输入修改密码xiu信号时,系统进入修改密码状态;若输入安锁lock信号,系统进入安锁状态,锁闭合:在安锁状态,输入输入密码start信号,系统进入输入密码状态;在输入密码状态,如输入密码内容和长度均正确,进入密码初验正确状态,如果密码错误,进入密码初验错误状态;在密码初验正确状态,输入确认信号enter时,进入开锁状态,在开锁状态kai信号等于‘1’;在密码初验错误状态,输入确认信号enter时,进入报警状态;在报警状态。warn信号等于‘1’。 VHDL代码如下:

library ieee;

use ieee.std_logic_1164.all;

4

entity mima is

port(clk,lock,start,xiu,enter,yes:in std_logic; warn,kai,wr,en:out std_logic); end;

architecture bhv of mima is

type state is(inlock,input,rightx,wrong,unlock,change,alarm); signal ps,ns:state; begin process(clk) begin

if clk'event and clk='1'then ps<=ns; end if; end process;

process(ps,lock,start,xiu,enter,yes) begin case ps is

when inlock=>kai<='0';en<='0';warn<='0'; wr<='0'; if(start='1')then ns<=input; else ns<=inlock; end if;

when input=>en<='1';kai<='0';warn<='0'; wr<='0'; if(yes='1')then ns<=rightx; else ns<=wrong; end if;

when rightx=>en<='0';kai<='0';warn<='0'; wr<='0'; if enter='1' then ns<=unlock; else ns<=rightx; end if;

when wrong =>en<='0';kai<='0';warn<='0'; wr<='0'; if enter='1'then ns<=alarm; else ns<=wrong; end if;

when unlock =>kai<='1';warn<='0';en<='0'; wr<='0'; if lock='1'then ns<=inlock; elsif xiu='1'then ns<=change;

5

u3:bi port map(a=>key,b=>f,c=>g); end;

3.5 系统的引脚锁定

如图3-5所示:

图3-5 引脚锁定表

4 设计总结

通过这次的课程设计,使我对EDA这门课程、对QuartusⅡ开发软件和FPGA实验开发系统有了一个更加深刻的认识。我深深地被EDA的强大所震撼,QuartusⅡ开发软件虽然使用起来有些麻烦,但它的功能真的很强大,而且设计很自由,设计方式很多,能极大地满足当今社会高速发展的需要。通过这次课程设计,我还懂得了理论与实际相结合的重要性。我们只有把所学的理论知识与实践相结合起来,从实践中检验理论,才能真正为社会服务,并且我们也可以在实践中提高自己的实际动手能力和独立思考的能力,使自己更加适合当今社会的需要。

这次关于密码锁的课程设计,总的来说,还是比较成功的。在设计的过程中遇到的问题,反映出来我的许多不足之处,我以后要努力克服缺点。说真的,这次的课程设计真的很不容易,在过程中遇到了不少的问题。如:编写源程序时,经常不能通过。就如

11

在写顶层文件的程序时,遇到了不少的问题,各元件之间的连接、顶层文件程序与底层文件程序之间的连接以及信号的定义,总是有错误。但在老师同学的帮助下,再加上自己不懈的努力,最终还是算比较顺利地做了出来。

经过这次的课程设计,使我以后的学习和生活受益匪浅,让我在以后的学习中更加注重理论与实践的结合,我应该感谢这次的设计。

参考文献

[1] Volnei A.Pedroni著,乔庐峰、王志功等译,VHDL数字电路设计教程.电子工业出版社,2010 [2] 周立功,EDA实验与实践.第一版.北京航空航天大学出版社,2007 [3] 潘松,黄继业。《EDA技术实用教程》。科学出版社,2010.6 [4] 刘江海。《EDA技术课程设计》。华中科技大学出版社,2009.5

12

本文来源:https://www.bwwdw.com/article/jbp8.html

Top