ImageVerifierCode 换一换
格式:DOC , 页数:11 ,大小:38.04KB ,
资源ID:3991643      下载积分:8 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/3991643.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(基于VHDL的智力竞赛抢答器的设计与实现.doc)为本站上传会员【丰****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

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

1、第 11 页 共 11 页 基于VHDL的智力竞赛抢答器设计 摘 要 本课程设计主要内容是利用EDA技术设计一个可容纳四组选手的智力竞赛抢答器,全面熟悉、掌握VHDL语言基本知识,掌握利用VHDL语言对常用的组合逻辑电路和时序逻辑电路编程.本课程设计的开发仿真工具是MAX+plus II,采用自顶向下、逐层细化的设计方法设计整套系统,顶层模块用图形描述,底层文件用VHDL语言描述。通过波形仿真,实现了智力竞赛抢答器的基本功能,达到了设计要求。 关键字 智力竞赛抢答器;EDA技术;VHDL;MAX+plus II;自顶向下 1 引 言 20世纪90年代,引进数字系统设

2、计方法发生突破性变革的技术是VHDL(Very High Speed Integrated Circuit Hardware Description Language,超高速集成电路硬件描述语言)。它是一种IEEE-1076标准所规范的硬件描述语言,主要用于算法级、寄存器级到门级的多种抽象设计层次的数字系统建模,已成为电子设计自动化(EDA)的一种重要手段。 本课程设计的主要目的是:全面熟悉、掌握VHDL语言基本知识,掌握利用VHDL语言对常用的的组合逻辑电路和时序逻辑电路编程,把编程和实际结合起来,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养设计综合电

3、路的能力,养成编写文档资料的习惯和规范编程的思想。 2 智力竞赛抢答器的主要功能 设计一个4人参加的智力竞赛抢答计时器。该系统具有回答问题时间控制的功能,要求回答问题时间小于等于100秒(显示为0~99),时间显示采用倒计时方式.当达到限定时间时,发出声响以示警告;当有某一参赛者首先按下抢答开关时,相应显示灯亮并伴有声响,此时抢答器不再接受其他输入信号。智力竞赛抢答器的功能分块如图2—1所示。 顶层文件QDQ daojishi 模块 sanxuanyi模块 pianxuan模块 xianshi模块 jianbie模块 suocunqi 模块 zhuanhuan模块

4、 图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_LOG

5、IC; Q :OUT STD_LOGIC); END jianbie; ARCHITECTURE jianbie_mk OF jianbie IS BEGIN PROCESS(CLK,CLR) BEGIN IF CLR='0'THEN ——利用IF_THEN_ELSE语句 Q〈='0’; ELSIF CLK'EVENT AND CLK=’0’THEN ——检测时钟下降沿 Q〈='1'; END IF; END PROCESS; END jianbie_mk; 鉴别模块程序调

6、试波形如图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,

7、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=’0'THEN Q1〈=’0'; Q2<=’0’; Q3〈='0'; Q4

8、〈=’0'; ALM〈=’0'; ELSIF CLK’EVENT AND CLK=’1'THEN —-检测CLR为高电平,则有人抢答 Q1〈=D1; Q2<=D2; Q3〈=D3; Q4〈=D4; ALM<='1'; END IF; END PROCESS; END suocunqi_mk; 锁存器模块程序调试波形如图3-4所示,给CLK一个时钟信号,在某一时刻开始赋给CLR一个高电平,则从下一个时钟上升沿开始:将

9、D1赋给Q1、将D2赋给Q2、将D3赋给Q3、将D4赋给Q4,并输出ALM为1;在CLR为低电平时无 输出。 图3—4锁存器模块仿真波形图 3。3 转换功能 转换模块zhuanhuan如图3—5所示,把抢答结果转化为一个四位二进制数,表示抢答者的编号。 图3-5 zhuanhuan模块 转换模块源代码如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY zhuanhuan IS PORT(D1,D2,D3,D4:IN STD_LOGIC; Q:OUT STD_LOGIC_VECT

10、OR(3 DOWNTO 0)); END zhuanhuan; ARCHITECTURE zhuanhuan_mk OF zhuanhuan IS BEGIN PROCESS(D1,D2,D3,D4) VARIABLE TMP:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN TMP:=D1&D2&D3&D4; CASE TMP IS WHEN ”1000"=>Q<=”0001”; ——类似于真值表的CASE语句 WHEN "0100"=〉Q<="0010”; WHEN "0010”=>Q<=”0011”; WHEN ”0

11、001"=>Q〈="0100”; WHEN OTHERS=>Q〈=”0000"; END CASE; END PROCESS; END zhuanhuan_mk; 转换模块程序调试波形如图3—6所示,通过此模块将D1D2D3D4的输入结果转换成Q1Q2Q3Q4这种四位二进制数,当D1=‘1',其他三位为‘0'时,输出Q为“0001”;当D2=‘1’,其他三位为‘0'时,输出Q为“0010”;当D3=‘1’,其他三位为‘0’时,输出Q为“0011”;当D4=‘1’,其他三位为‘0’时,输出Q为“0100”;其他情况下,输出Q为“0000”。 图3-6 转换模块仿真波形图 3。4

12、选择输出功能 选择输出模块sanxuanyi如图3-7所示,用两个四位二进制数表示倒计时,其中D1为高位,D2为低位,用一个四位二进制数D3表示抢答号,输出信号Q1和Q2,其中Q1和Q2作为显示模块中数码管的输入值。通过SEL的值控制Q1和 Q2输出抢答号或者倒计时,当SEL=‘0'时为输出倒计时状态,Q1代表高位,Q2代表低位;当SEL=‘1’时,为显示抢答号状态,Q1输出为‘0’,Q2的输出代表抢答者编号。 图3—7 sanxuanyi模块 选择输出模块源代码如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164。ALL; ENTITY san

13、xuanyi IS PORT(SEL:IN STD_LOGIC; D1,D2,D3:IN STD_LOGIC_VECTOR(3 DOWNTO 0); Q1,Q2 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END sanxuanyi; ARCHITECTURE sanxuanyi_mk OF sanxuanyi IS BEGIN PROCESS(SEL,D1,D2,D3) BEGIN IF SEL='1’ THEN Q1〈=”0000”;Q2〈=D3; ELSE Q1<=D1;Q2〈=D2; EN

14、D IF; END PROCESS; END sanxuanyi_mk; 选择输出模块程序调试波形如图3—8所示,由SEL控制Q的输出,当SEL为‘1’时,将D3赋给Q2,“0000"赋给Q1,输出结果代表抢答者编号;当SEL为‘0’时,将D2赋给Q2,D1赋给Q1,输出结果代表倒计时。 图3—8 选择输出模块仿真波形图 3。5 倒计时功能 倒计时模块daojishi如图3—9所示,用两个四位二进制数表示倒计时,定义变量HH,LL,由时钟CLK和使能信号EN控制,其中EN的值由锁存器模块中的ALM控制。当

15、倒计时至HH==0,LL==0时,发出声音停止计时,输出H(XXX),L(XXX)。 图3—9 daojishi模块 倒计时模块源代码如下: LIBRARY IEEE; USE IEEE。STD_LOGIC_1164。ALL; USE IEEE。STD_LOGIC_UNSIGNED。ALL; ENTITY daojishi IS PORT(CLK,EN:IN STD_LOGIC; H,L:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); SOUND:OUT STD_LOGIC);

16、END daojishi; ARCHITECTURE daojishi_mk OF daojishi IS BEGIN PROCESS(CLK,EN) VARIABLE HH,LL:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN IF CLK’EVENT AND CLK=’1'THEN IF EN=’1’THEN --EN=1驱动倒计时模块开始倒计时 SOUND<=’0’; HH:="1001"; LL:=”1001"; ELSIF LL=0 THEN IF

17、 HH=0 THEN SOUND<='1’; ——倒计时至0时,输出超时报警信号 ELSE LL:=”1001”; HH:=HH-1; END IF; ELSE LL:=LL—1; END IF; END IF; H〈=HH; L〈=LL; END PROCESS; END daojishi_mk; 倒计时模块程序调试波形如图3-10所示,当EN为“1"时,在时钟上升沿将“1001”赋给H和L,准备

18、进入倒计时;从EN为“0”且时钟的上升沿到来时,H和L的值开始以逐渐递减,即从99倒计时到0,同时倒计时至0时,输出超时报警信号SOUND=1。 图3-10 倒计时模块仿真波形图 3。6 片选功能 片选模块pianxuan如图3-11所示,该模块用于控制选择输出模块输出倒计时或者抢答号,其中EN1的值由锁存器模块中的ALM控制. 图3—11 pianxuan模块 片选模块源代码如下: LIBRARY IEEE; USE IEEE。STD_LOGIC_1164。ALL; ENTITY pianxuan IS PORT(CLK,EN1:IN STD_LOG

19、IC; A :OUT STD_LOGIC); END pianxuan; ARCHITECTURE pianxuan_mk OF pianxuan IS BEGIN PROCESS(CLK,EN1) BEGIN IF EN1='0’THEN ——利用IF_THEN_ELSE语句 A<=’0’; ELSIF CLK’EVENT AND CLK='1'THEN --检测时钟上升沿 A〈=’1'; END IF; END PROCESS; END pianxuan_mk;

20、 片选模块程序调试波形如图3—12所示,EN1=’0'时,将‘0'赋给A;当EN1=’1’时,在CLK时钟信号的下一个时钟上升沿将‘1’赋给A。 图3-12 片选模块仿真波形图 3。7 显示功能 显示模块如图3-13所示,将所有进程中的数值转换成七位二进制数. 图3—13 xianshi模块 显示模块源代码如下: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164。ALL; ENTITY xianshi IS PORT(D:IN STD_LOGIC_VEC

21、TOR(3 DOWNTO 0); Q:OUT STD_LOGIC_VECTOR(6 DOWNTO 0)); END xianshi; ARCHITECTURE xianshi_mk OF xianshi IS BEGIN PROCESS(D) BEGIN CASE D IS WHEN”0000”=>Q〈=”0111111”; WHEN"0001”=〉Q〈=”0000110

22、 WHEN”0010"=〉Q〈=”1011011"; WHEN"0011”=〉Q<=”1001111”; WHEN"0100”=>Q〈=”1100110”; WHEN”0101”=〉Q<=”1101101"; WHEN”0110"=>Q<=”1111101"; WHEN”0111”=〉Q〈=”0000111"; WHEN"1000”=>Q〈=”1111111”; WHEN”1001”=〉Q〈="1101111"; WHEN OTHERS=〉Q<=”0000000”;

23、 END CASE; END PROCESS; END xianshi_mk; 显示模块程序仿真波形如图3—14所示,将输入信号D转变成能在七段数码管上显示的七位二进制数. 图3—14 显示模块仿真波形图 3.8 顶层模块 各模块连接后形成顶层文件的电路图如图3—15所示。 图3—15 各模块连接后的电路图 顶层文件仿真波形如图3—16所示,D2最先获得抢答权,输出声音信号SOUND=1,在数码管上显示抢答号,Q1输出“0111111”(0),Q2输出“1011011”(2),代表抢答号为02;之后自动进入倒计时状态,将“1101111”(9)赋给Q1和Q2,同时开始自动

24、倒计时,倒计时至0时,输出超时报警信号SOUND=1,停止倒计时。 图3—16 顶层文件仿真波形图 4 总结 4.1 智力竞赛抢答器设计结果 通过MAX+plus II的仿真,证明了本系统在实际运用中的正确性,完全可以实现预期任务的要求,在有一组信号抢答成功后发出声音提示,并能通过译码器显示抢答号;在两组或者两组以上信号同时抢答时视抢答无效。抢答成功后,系统开启倒计时功能,并且能够准确计时将时间呈两位数显示;倒计时开始后从99秒倒计时至0秒并通过译码器实时显示计时结果,当倒计时至0秒时,停止倒计时,发出超时报警信号。 4。2 学习总结 在整个设计过程中,主要需要考虑的问题如下:将整套系统划分成多个子 模块,通过画流程图分析各模块之间的联系,以达到设计要求;程序中电路的时序设计;修改程序中的语法错误;程序仿真时波形的设计;根据波形仿真现象修改程序逻辑错误;对VHDL基本语法的掌握;掌握使用MAX+plus II编辑程序、编译、设计波形、仿真的方法. 通过本次课程设计,我们加深了对EDA技术、VHDL语言基本语法知识及程序基本框架的理解,将理论知识应用到实践中,提高了动手能力,同时养成了编写文档的习惯。整套系统运用MAX+plus II编程、调试、仿真,使我们对这个软件的使用熟练了很多.

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服