您好,欢迎访问三七文档
目录1、概述……………………………………(4)2、设计要求………………………………(4)3、设计内容………………………………(5)4、方案设计与原理分析…………………(6)5、锁存译码设计…………………………(9)6、报警信号发生器………………………(16)7、密码锁控制电路仿真结果及下载分析(18)8、心得体会………………………………(22)EDA课程设计第2页电子技术综合任务书姓名学号学院班级题目简易14位数字密码锁控制电路设计设计任务1、基本要求(1)、14位数字密码分成高7位(DH6….DH0)和低7位(DL6….DL0),用数字逻辑开关预置,输出信号out为1表示开锁,否则关闭。;(2)、14位数字密码分时操作,先预置高7位,然后再置入低7位,(3)要求电路工作可靠,保密性强,开锁出错立即报警,(4)、利用MAXPLUS2软件进行设计、编译、并在FPGA芯片上实现;(5)、14位密码自己设定。时间进度总体时间为1周;星期一上午:讲解;星期一下午:理解电路原理;星期二下午:编辑源程序设计电路;星期四下午:验收电路图,检验程序是否正确;星期五之前:上交课程设计报告;主要参考文献【1】刘爱荣、王振成。EDA技术与CPLD︱FPGA开发应用简明教程。北京:清华大学出版社;【2】刘吕华。数字逻辑EDA设计与实践。北京:国防工业出版EDA课程设计第3页1、概述现在EDA技术应用广泛,包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有EDA的应用。目前EDA技术已在各大公司、科研和教学部门广泛使用。在产品设计与制造方面,EDA技术可实现前期的计算机仿真、系统级模拟及测试环境的仿真、PCB的制作、电路板的焊接、ASIC的设计等。EDA是随着集成电路和计算机技术的飞速发展应运而生的一种高级、快速、有效的电子设计自动化工具。它是为解决自动控制系统设计而提出的,从七十年代经历了计算机辅助设计CAD,计算机辅助工程CAE,电子系统设计自动化ESDA三个阶段。前两个阶段的EDA产品都只是个别或部分的解决了电子产品设计中的工程问题;第三代EDA工具根据工程设计中的瓶颈和矛盾对设计数据库实现了统一管理,并提供了并行设计环境概念,提供了独立与工艺和厂家的系统级的设计工具。2、设计要求1、14位数字密码分成高7位(DH6….DH0)和低7位(DL6….DL0),用数字逻辑开关预置,输出信号out为1表示EDA课程设计第4页开锁,否则关闭。2、14位数字密码分时操作,先预置高7位,然后再置入低7位,(顶层电路可参考图1)。3、要求电路工作可靠,保密性强,开锁出错立即报警,(用声光两种形式同时报警)。4、利用MAXPLUS2软件进行设计、编译、并在FPGA芯片上实现。5、设计14位密码自己设定。比如:“10010010011100”。本次采用:前两位+本人学号倒数3位数字(3位十进制数用BCD码表示)作为设计密码。前两位分配:一班是01,二班是10,三班是11,四班是00学号:201000484112(高七位)(低七位)01000100010010本人密码:01000100010010EDA课程设计第5页3、设计内容设计简易14位数字密码模块ic9a模块,框图见下图,模块IC9A设计采用VHDL实现。设计一个报警信号电路(频率:100khz,输出占空比为0.)作为CP报警用,方法不限。时钟由实验箱CP2中的4096HZ提供。在ic9a模块基础上设计14位数字密码锁的顶层电路。提高部分(选作):增加密码修改功能。4、方案设计与原理分析EDA课程设计第6页密码锁控制电路原理图:①先清零→置入D6-D0低位密码→②按下CLK→低7位被存在IC9A1的锁存器中→③置高7位密码→OUT2=1,表示开锁密码正确→OUTB=1→标志输入正确密码。④按下CLK1→这时锁前的Q端控制三态门开锁OUTA=1.如果密码不正确,则报警。密码锁控制电路原理图分析:FP201分频器上图EDA课程设计第7页CLK2:分频器脉冲输入信号,CLR2为分频器的清零信号,FP201为20分频的分频器,OUT3输出分频信号用于输出合适的频率使报警灯光能够闪烁。IC9A1锁存译码电路与前端连接图CLK:置低7位密码控制脉冲,CLR:清零IC9A1、D触发器。CLK1:开锁控制信号和控制分频器输出脉冲是否输出到声报警器。OUTB:密码正确指示灯。IC9A1前的二输入与门:保证开锁可靠,保证单次触发。IC9A1中的D[6..0]具有低七位自锁功能。OUT2:当密码正确输出高电平,错误则输出低电平。整个电路来说:CLR和CLR2开始置0,使分频器,D触发器和ic9a清零,当CLK为1,IC9A1前的二输入与门另一信号相与后为1,使D输入信号中的低7位密码置入IC9A1的锁存器中,再从D把密码的高7位置入,和低7位一起经过译码器,如果译码正确,则EDA课程设计第8页OUT2输出为1,开锁指示灯OUTB亮,同时,当CLK1为上升沿时锁前的D触发器输出高电平使3态门导通OUTA输出高电平开锁,光报警和声报警不工作。如果译码错误,则OUT2为0,开锁指示灯OUTB不亮,当CLK1为上升沿时锁前的D触发器输出高电平使3态门不导通OUTA输出低电平不开锁,此时,光报警和声报警开始工作,提示密码错误。5、锁存译码设计1、锁存器:VHDL源程序:libraryieee;useieee.std_logic_1164.all;entitysuocunisport(clk,clr:instd_logic;d:instd_logic_vector(6downto0);q:outstd_logic_vector(6downto0));endsuocun;architectureartofsuocunisbeginEDA课程设计第9页process(clk,clr)beginif(clr='0')thenq=0000000;elsif(clk'eventandclk='1')thenq=d;endif;endprocess;endart;锁存器仿真图:锁存原理:当CLK过来一个上升沿信号时,把D中的7位密码置入锁存器当中不再改变,只有当CLK再过来一个上升沿信号时,才再次把D中的7位密码置入锁存器。当CLR为0时,把输出q清零。2、译码器:EDA课程设计第10页VHDL源程序:libraryieee;useieee.std_logic_1164.all;entityyimaisport(ql:instd_logic_vector(6downto0);qh:instd_logic_vector(13downto7);out1:outstd_logic);endyima;architectureartofyimaisbeginprocess(ql,qh)beginif(ql=0010010andqh=0100010)thenout1='1';elseout1='0';endif;endprocess;EDA课程设计第11页endart;译码仿真图:密码为:01000100010010译码原理:ql位密码和qh位密码相与,当这14位密码与原定密码相符时,out1输出为1,说明密码正确,当不相符时,out1输出为0,说明密码错误。3、IC9A1:VHDL源程序:libraryieee;useieee.std_logic_1164.all;entityyimaisport(ql:instd_logic_vector(6downto0);qh:instd_logic_vector(13downto7);out1:outstd_logic);endyima;EDA课程设计第12页architectureartofyimaisbeginprocess(ql,qh)beginif(ql=0010010andqh=0100010)thenout1='1';elseout1='0';endif;endprocess;endart;libraryieee;useieee.std_logic_1164.all;entitysuocunisport(clk,clr:instd_logic;d:instd_logic_vector(6downto0);q:outstd_logic_vector(6downto0));endsuocun;EDA课程设计第13页architectureartofsuocunisbeginprocess(clr,clk)beginif(clr='0')thenq=0000000;elsif(clk'eventandclk='1')thenq=d;endif;endprocess;endart;libraryieee;useieee.std_logic_1164.all;entityic9a1isport(clk1,clr1:instd_logic;d1:instd_logic_vector(6downto0);out2:outstd_logic);endic9a1;EDA课程设计第14页architectureart1ofic9a1iscomponentsuocunport(clk,clr:instd_logic;d:instd_logic_vector(6downto0);q:outstd_logic_vector(6downto0));endcomponent;componentyimaport(ql:instd_logic_vector(6downto0);qh:instd_logic_vector(13downto7);out1:outstd_logic);endcomponent;signals1:std_logic_vector(6downto0);beginu1:suocunportmap(clk1,clr1,d1,s1);u2:yimaportmap(s1,d1,out2);endart1;IC9A1仿真图:EDA课程设计第15页密码为:01000100010010低7位锁存6、报警信号发生器电路图:主要部件为分频器EDA课程设计第16页FP201分频器上图FP201分频器,采用计数器的方法进行分频,输入20个上升沿为一个输出周期。此分频器是20分频。FP201VHDL源程序:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityfp201isport(ql:bufferstd_logic_vector(3downto0);clr,clk:instd_logic;out3:outstd_logic);endfp201;architectureartoffp201issignals1:std_logic;beginprocess(clr,clk)EDA课程设计第17页beginif(clr='0')thenql=0000;elsif(clk'eventandclk='1')thenif(ql=1001)thenql=0000;s1=s1xor'1';out3=s1;elseql=ql+1;endif;endif;endprocess;endart;FP201仿真图:20分频7、密码锁控制电路仿真结果及下载分析EDA课程设计第18页密码锁控制电路:仿真结果:EDA课程设计第19页CLR2为分频器低电平清零;CLR为IC9A1和触发器低电平清零;CLK2为分频器输入脉冲;CLK1控制锁前3态门和报警电路是否导通;CLK为锁存控制信号;SHENG声音报警输入脉冲;OUTB为密码正确显示;OUTA为是否开锁输出;GUANG为光报警输入信号;D[6..0]为密码输入端口;按上图分析:CLR和CLR2开始置0,使分频器,D触发器和ic9a1清零,当CLK为1,IC9A1前的二输入与门另一信号相与后为1,使D输入信号中的低7位密码置入IC9A1的锁存器中,再从D把
本文标题:EDA课设设计报告
链接地址:https://www.777doc.com/doc-6372431 .html