资源描述:
《verilog硬件描述语言与数字逻辑电路设计选题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、VerilogHDL大作业西电电子所(宋万杰)一.交通控制器二.彩灯控制器三.自动售邮票机四.8位二进制乘法电路五.量程自动转换的数字式频率计六.游戏电路-模拟掷骰子七.游戏电路-模拟乒乓球比赛八.多功能数字钟九.全自动电梯控制电路十一.自选题目十.基于FPGA的乐曲自动演奏器设计一.交通控制器课题内容1.设计一个十字路口交通控制系统,其东西,南北两个方向除了有红、黄、绿灯指示是否允许通行外,还设有时钟,以倒计时方式显示每一路允许通行的时间,绿灯,黄灯,红灯的持续时间分别是40、5和45秒。当东西或南北两路中任一道上出现
2、特殊情况,例如有消防车,警车要去执行任务,此时交通控制系统应可由交警手动控制立即进入特殊运行状态,即两条道上的所有车辆皆停止通行,红灯全亮,时钟停止计时,且其数字在闪烁。当特殊运行状态结束后,管理系统恢复原来的状态,继续正常运行。交通控制系统的示意,流程图RA,RBs=1?YA,RBRA,RBGA,RBT=40?yesnonos=1?T=5?RA,GBRA,RByesnonos=1?T=40?yesyesyesnonoRA,YBRA,RBs=1?T=5?yesyesyesnono绿黄红绿黄红东西南北交通控制系统示意图设计
3、提示:时钟用可预置减法计数器实现二.彩灯控制器1.设计要求设计能让一排灯(8只)自动改变显示花样的控制系统。可将实验板上的一排发光二极管作为彩灯用。控制器应有两种控制方式:◆规则变化。变化节拍有0.5秒和0.25秒两种,交替出现,每种节拍可有8种花样,各执行一或二个周期后轮换。彩灯变化方向有单向移动,双向移动,跳跃移动等。如图所示。◆随机变化。变化花样相同,但节拍及花样的转换都随机出现。2.设计提示▲灯光移动用移位寄存器实现。各种花样,有的可以存于寄存器中,使用时并行置人移位寄存器,有的可以利用环形计数器或扭环计数器实现
4、。▲节拍信号可选用实验板上的振荡器,花样控制信号可用4位计数器控制,1位控制节拍,另3位控制花样。▲随机信号可以用长度大于是15的伪随机序列信号发生器或用高速时钟驱动上述4位计数器得到。三.自动售邮票机1.设计要求◆机器有一个投币孔,每次只能投入一枚硬币。机器能自动识别硬币金额,最大为1元,最小为1角。购票者可选择的邮票面值有1元和5角两种,每次售出1枚邮票。◆购票时先选择邮票面值后投币,当投入的硬币总额达到或超过邮票面值时,机器应发出指示并拒收继续投入的硬币。◆购票者投币后,按动确认键,机器将发出邮票和零硬币,若所投金
5、额不足则发出“欠资”指示。在欠资情况下,购票者可以继续投币购票,也可按取消键,则机器将退出所投入的全部金额。◆购票者投入硬币以后,如未按确认键而按取消键,机器也将退出所投入的全部金额。◆找零或退币时,按由大到小原则处理,即总金额超过1元时,应找出1元硬币金额低于1元但超过5角时,应找出5角硬币,不足5角时,方才找出1角的硬币。2.设计提示◆投入的硬币识别装置牵涉到传感器,在没有传感器的情况下,要求用3个按键代表3种硬币输入(1元,5角和1角)。每按一键,表示投入一枚硬币。◆邮票面值(1元,5角)也各用一个按键代表,按动某
6、个键,表示选购某种面值的邮票同时可安排两只发光二极管指示所选的面值。◆确认,取消各用一个按键输入。◆投入的总金额用两只数码管显示。其显示的数字应随着硬币的投入或找出而变化。◆机器应有两个输出孔(这里用两个发光二极管代表),一个输出邮票,一个输出找回的硬币。找回的硬币按由大到小原则逐个输出,每输出一枚,数码管上的数字就减去相应的数。找零的过程可用一个按键控制,每按一次键,输出一枚硬币,直到计数器上显示数字为零。(也可只安排一个输出孔,邮票和硬币皆由此孔输出)。▲欠资信号和拒收信号可用发光二极管或其它方法表示,两种信号应有所
7、区别。▲以上各项操作都可以用声音辅助指示,例如欠资和拒收,出票和出硬币等。确认取消找零拒收欠资邮票找零邮票面值1元5角1角1元5角投币孔自动售邮票机示意图四.8位二进制乘法电路1.设计要求8位二进制乘法采用移位相加的方法。即用乘数的各位数码,从低位开始依次与被乘数相乘,每相乘一次得到的积称为部分积,将第一次(由乘数最低位与被乘数相乘)得到的部分积右移一位并与第二次得到的部分积相加,将加得的和右移一位再与第三次得到的部分积相加,再将相加的结果右移一位与第四次得到的部分积相加。直到所有的部分积都被加过一次。例如:被乘数(M7
8、M6M5M4M3M2M1M0)和乘数(N7N6N5N4N3N2N1N0)分别为11010101和10010011,其计算过程如下:11010101×1001001111010101N0与被乘数相乘的部分积,部分积右移一位11010101N1与被乘数相乘的部分积+11010101100111111110011111