基于VHDL的智力竞赛抢答器的设计与实现教程方案.doc

基于VHDL的智力竞赛抢答器的设计与实现教程方案.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
摘 要 本课程设计主要内容是利用EDA技术设计一个可容纳四组选手的智力竞赛抢答器,全面熟悉、掌握VHDL语言基本知识,掌握利用VHDL语言对常用的组合逻辑电路和时序逻辑电路编程。本课程设计的开发仿真工具是MAX+plus II,采用自顶向下、逐层细化的设计方法设计整套系统,顶层模块用图形描述,底层文件用VHDL语言描述。通过波形仿真,实现了智力竞赛抢答器的基本功能,达到了设计要求。 关键字 智力竞赛抢答器;EDA技术;VHDL;MAX+plus II;自顶向下 1 引 言 20世纪90年代,引进数字系统设计方法发生突破性变革的技术是VHDL(Very High Speed Integrated Circuit Hardware Description Language,超高速集成电路硬件描述语言)。它是一种IEEE-1076标准所规范的硬件描述语言,主要用于算法级、寄存器级到门级的多种抽象设计层次的数字系统建模,已成为电子设计自动化(EDA)的一种重要手段。 本课程设计的主要目的是:全面熟悉、掌握VHDL语言基本知识,掌握利用VHDL语言对常用的的组合逻辑电路和时序逻辑电路编程,把编程和实际结合起来,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养设计综合电路的能力,养成文档资料的习惯和规范编程的思想。 设计一个4人参加的智力竞赛抢答计时器。具有回答问题时间控制功能要求回答问题时间小于等于100秒(显示为0~99),时间显示采用倒计时方式。当达到限定时间时,发出声响以示警告;当有某一参赛者首先按下抢答开关时,相应显示灯亮并伴有声响,此时抢答器不再接受其他输入信号 图2-1智力竞赛抢答器功能模块划分图 该智力竞赛抢答器分为七个模块,分别为:鉴别模块、锁存器模块、转换模块、选择输出模块、倒计时模块、片选模块和显示模块。 3 主要功能的实现 3.1 鉴别功能 鉴别模块jianbie如图3-1所示,输入信号CLK和CLR,若CLR=“0”,表示无人按键,输出信号Q为0;若CLR=“1”,表示有人按键,输出信号Q为1。 图3-1 jianbie模块 鉴别模块源代码如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY jianbie IS PORT(CLK,CLR:IN STD_LOGIC; Q :OUT STD_LOGIC); END jianbie; ARCHITECTURE jianbie_mk OF jianbie IS BEGIN PROCESS(CLK,CLR) BEGIN IF CLR=0THEN --利用IF_THEN_ELSE语句 Q=0; ELSIF CLKEVENT AND CLK=0THEN --检测时钟下降沿 Q=1; END IF; END PROCESS; END jianbie_mk; 鉴别模块程序调试波形如图3-2所示,给CLK一个时钟信号,在某一时刻开始赋给CLR一个高电平,则从下一个时钟下降沿开始Q输出高电平。 图3-2鉴别模块仿真波形图 3.2 锁存器功能 锁存器模块suocunqi如图3-3所示,锁存器对四位答题者的结果进行锁存,并将其赋给输出信号Q1,Q2,Q3,Q4。 图3-3 suocunqi模块 锁存器模块源代码如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY suocunqi IS PORT(D1,D2,D3,D4:IN STD_LOGIC; CLK,CLR:IN STD_LOGIC; Q1,Q2,Q3,Q4,ALM:OUT STD_LOGIC); END suocunqi; ARCHITECTURE suocunqi_mk OF suocunqi IS BEGIN PROCESS(CLK) BEGIN IF CLR=0THEN Q1=0; Q2=0; Q3=0; Q4=0; ALM=0; ELSIF CLKEVENT AND CLK=1THEN --检测CLR为高电平,则有人抢答 Q1=D1; Q2=D2; Q3

您可能关注的文档

文档评论(0)

高考学子 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档