基于VHDL语言的8位数字密码锁设计探究.docVIP

基于VHDL语言的8位数字密码锁设计探究.doc

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
EDA课程设计报告书 课题名称 基于VHDL语言的8位数字密码锁设计 姓 名 学 号 院、系、部 专 业 指导教师 2016年6月2日 熟悉集成电路的引脚安排。掌握各芯片的逻辑功能及使用方法。了解面包板结构及其接线方法。了解的组成及工作原理。熟悉的设计与制作。 图2.1电子密码锁系统总体框图 3功能模块 3.1 输入模块 3.1.1功能介绍 输入时有三个拨码键控制输入,每个拨码各控制一位密码,对于其中一个拨码键每拨一次码按一次按键,表示输入一位,当输入四位时输出一位数,用“888”作为初始密码。 3.1.2输入模块与仿真图形 单脉冲控制如图3.1如下图 图3.1 上图为单脉冲控制输入,当M给一上升沿信号将在PUL输出一位与之对应的高或低电平。 四位串行输入并行输出寄存器如下图3.2 图3.2 上图为4为串行输入并行输出寄存器,它由4个D触发组成,当reset为高电平时,每给一脉冲输入数据将向右移一位二值代码,它能同时复位。 3.1.3程序的输入 在文本区内输入程序,程序如下: 单脉冲信号控制 puls.vhd LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY puls IS PORT (PUL,M:IN STD_LOGIC; Q:OUT STD_LOGIC); END puls; ARCHITECTURE BEHAVE OF puls IS SIGNAL TEMP:STD_LOGIC; BEGIN PROCESS(M) BEGIN IF MEVENT AND M=1 THEN IF PUL=1 THEN TEMP=1; ELSE TEMP=0; END IF; END IF; END PROCESS; Q=TEMP; END BEHAVE; 4位串行输入并行输出寄存器 shifter.vhd LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY shifter IS PORT (din:IN STD_LOGIC; reset,CLK: IN STD_LOGIC; qout: buffer STD_LOGIC_VECTOR(0 TO 3) ); END shifter; ARCHITECTURE act OF shifter IS BEGIN PROCESS(CLK) VARIABLE q:STD_LOGIC_VECTOR(0 TO 3); BEGIN IF reset=0 THEN q:=(others=0); ELSE if clkevent and clk=1 then q(3):=q(2); q(2):=q(1); q(1):=q(0); q(0):=din; END IF; END IF; qout=q; END PROCESS; END architecture act; 3.2 控制模块 Seg7.vhd LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY Seg7 IS PORT(num:IN STD_LOGIC_VECTOR(3 DOWNTO 0); led:OUT STD_LOGIC_VECTOR(6 DOWNTO 0)); END Seg7; ARCHITECTURE ACT OF Seg7 IS BEGIN LED=1111110WHEN num=0000ELSE 0110000WHEN num =0001ELSE 1101101WHEN num =0010ELSE 1111001WHEN num =0011ELSE 0110011WHEN num =0100ELSE 1011011WHEN num =0101ELSE 1011111WHEN num =0110ELSE 1110000WHEN num =0111ELSE 1111111WHEN num =1000ELSE 1111011WHEN num =1001ELSE 1110111WHEN num =1010ELSE 0011111WHEN num =1011ELSE 1001110WHEN num =1100ELSE 0111101WHEN num =1101ELSE 1001111WHEN num =1110ELSE 1000111WHEN num

文档评论(0)

1112111 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档