1、 电子与信息工程学院电子与信息工程学院 EDA 课程设计报告 ( 2011 2012 学年 第 一 学期) 课课 程程 设设 计计 报报 告告 - 1 - 课程设计题目:四位密码锁 内容和要求: 1.掌握 VHDL 语言的使用,学会用 VHDL 语言来编程解决实际问题; 2.学会使用 EDA 开发软件设计小型综合电路,掌握仿真的技巧; 3.学会应用开发系统实现硬件电路,检验电路的功能。 设 计 内 容 ( 原 理 图 以 及 相 关 说 明 、 调 试 过 程 、 结 果 ) 实验目的:实验目的: 1.掌握 VHDL 语言的使用,学会用 VHDL 语言来编程解决实际问题; 2.学会使用 EDA
2、 开发软件设计小型综合电路,掌握仿真的技巧; 3.学会应用开发系统实现硬件电路,检验电路的功能。 实验要求:实验要求: 用 VHDL 语言设计一个密码锁,用波形仿真验证其功能后,实现到 GW48 实验系统。 功能描述:功能描述:用于模仿密码锁的工作过程。完成密码锁的核心控制功能。 功能要求:功能要求:设计一个密码锁,平时处于等待状态。管理员可以设置或更改密码。如果不预 置密码,密码缺省为“1234” 。用户如果需要开锁,按相应的按键进入输入密码状态,输 入 4 位密码,按下确定键后,若密码正确,锁打开;若密码错误,将提示密码错误,要求 重新输入,三次输入都错误,将发出报警信号。报警后,只有管理
3、员作相应的处理才能停 止报警。用户输入密码时,若输入错误,在按下确定键之前,可以通过按取消键重新输入。 正确开锁后,用户处理完毕后,按下确定键,系统回到等待状态。系统操作过程中,只要 密码锁没有打开,如果 60 秒没有对系统操作,系统回到等待状态。要求密码在输入过程 中被依次显示,即先输入的为密码的第一位,总是显示在最左边。用两个发光二极管模拟 显示,其中一个显示当前的工作模式,灭表示用户模式,亮表示管理员模式;另外一个指 示锁的状态,灭表示锁处于锁定,亮表示锁被开启。 注意:用两个按键实现密码输入,注意:用两个按键实现密码输入,Key1Key1 选选择输入的是第几位密码,择输入的是第几位密码
4、,KEY2KEY2 输入密码数字。输入密码数字。 功能描述:功能描述: 初始状态:初次使用密码锁时,要先用 Reset 键初始化。初始状态下,用户密码为 “1234” ,管理员密码为“0000” 。 用户开锁:默认情况下,密码锁处于用户使用状态。如果当前为管理员状态,则按下 user 键回到用户状态。用户开锁时,输入四位数用户密码,可以从 out_code6 的输出状态 确定密码输入状态。如输入错误则按下 clear 清除前一位输入。输入完毕后按 enter,如 果密码正确,则开锁,否则重新输入密码。开锁后再次按下 enter 键则关锁,回到等待状 态。三次密码输入错误,警报器 alarming 为 1。要管理员输入管理员密码解除警报。此时 哪怕用户再输对密码也没用。 管理员解除警报:当用户三次密码输入错误的时候,alarming 为 1,此时,只要管理 员密码输入正确后,按下 clear 键,alarming 为 0,报警取消。 管理员修改密码:在非警报和为开锁状态下,任何时候按 admin 键进入管理员状态。 按 chgcode 选择修改密码,先选择修改的是用户密码还是管