基于Verilog的数字密码锁设计.pdf

基于Verilog的数字密码锁设计.pdf

ID:59582876

大小:546.28 KB

页数:15页

时间:2020-11-13

基于Verilog的数字密码锁设计.pdf_第1页
基于Verilog的数字密码锁设计.pdf_第2页
基于Verilog的数字密码锁设计.pdf_第3页
基于Verilog的数字密码锁设计.pdf_第4页
基于Verilog的数字密码锁设计.pdf_第5页
资源描述:

《基于Verilog的数字密码锁设计.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、课程设计报告课程设计题目:基于Verilog的数字密码锁设计学号:201520070209学生姓名:尹景兴专业:通信工程班级:1521301指导教师:钟凯2018年1月12日.目录一、课程设计内容........................-1-二、实现思路............................-1-1.解锁过程............................-1-2.报警过程............................-1-3.重置密码过程........................-1-三、实现程序

2、............................-2-四、仿真验证............................-5-1.解锁过程............................-5-2.报警过程............................-6-3.重置密码过程........................-8-五、设计心得...........................-11-.一、课程设计内容设计一个4位串行数字密码锁,要求如下:1.开锁密码为4位二进制,当输入密码与锁内给定的密码一致时,方可开锁。

3、否则进入“错误”状态,发出报警信号。2.锁内的密码可调。3.串行数字密码锁的报警,直到按下复位开关,才停下。此时,数字密码锁又自动等待下一个开锁状态。二、实现思路1.解锁过程密码锁出厂之前预设一个初始密码,在本课程设计中将其预设为0101。在密码锁上锁状态下,输入正确密码,密码锁打开。2.报警过程当输入的密码与锁内密码不一致时,蜂鸣器响起,直到按下取消按键,蜂鸣器才停止鸣叫。3.重置密码过程重置密码时,需先验证原密码是否正确。当输入.原密码正确,才可以输入新密码,设置新密码为锁内密码。三、实现程序modulecoded_lock(clk,in,se

4、t,pause,value1,value2,store,bee,status,temp_set,ook);inputclk,in,set,pause;outputregbee=0;outputregstatus=0;outputregtemp_set=0;outputregook=0;outputreg[3:0]value1;outputreg[3:0]value2;outputreg[3:0]store;regen=1;reg[2:0]i=0;reg[2:0]j=0;reg[2:0]k=0;reg[2:0]count1=0;reg[2:0]cou

5、nt2=0;reg[2:0]count3=0;reg[3:0]keynum=4'b0101;always@(posedgeclk)beginif(set==1)forktemp_set<=1;value1<=4'bxxxx;value2<=4'bxxxx;store<=4'bxxxx;i<=0;j<=0;k<=0;ook<=0;count1<=0;count2<=0;.count3<=0;joinendalways@(posedgeclk)beginif(temp_set==0)begincase({en,in})2'b11:beginvalue1

6、[i]<=1'b1;i<=i+1;count1<=count1+1;end2'b10:beginvalue1[i]<=1'b0;i<=i+1;count1<=count1+1;endendcaseendendalways@(posedgeclk)beginif(count1==4)beginif(value1==keynum)status<=1;elsebee<=1;i<=0;count1<=0;value1<=4'bxxxx;endendalways@(posedgeclk)beginif(pause==1)bee<=0;endalways@(p

7、osedgeclk)beginif(temp_set==1&&ook==0)begincase({en,in})2'b11:beginvalue2[j]<=1'b1;j<=j+1;count2<=count2+1;end.2'b10:beginvalue2[j]<=1'b0;j<=j+1;count2<=count2+1;endendcaseendendalways@(posedgeclk)beginif(count2==4)beginif(value2==keynum)ook<=1;j<=0;count2<=0;value2<=4'bxxxx;e

8、ndendalways@(posedgeclk)beginif(ook==1)begincase({en,in})2'b1

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。