(精品论文)eda课程设计—抢答器_第1页
(精品论文)eda课程设计—抢答器_第2页
(精品论文)eda课程设计—抢答器_第3页
(精品论文)eda课程设计—抢答器_第4页
(精品论文)eda课程设计—抢答器_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

EDA课程设计报告报 告 题 目: 作者所在系部: 作者所在专业: 作者所在班级: 作 者 姓 名 : 指导教师姓名: 完 成 时 间 : 内容摘要抢答器是为智力竞赛参赛者答题时进行抢答而设计的一种优先判决器电路,竞赛者可以分为若干组,抢答时各组对主持人提出的问题要在最短的时间内做出判断,并按下抢答按键回答问题。当第一个人按下按键后,则在显示器上显示该组的号码,对应的灯亮,同时电路将其他各组按键封锁,使其不起作用。若抢答时间内无人抢答,则报警灯亮。回答完问题后,由主持人将所有按键恢复,重新开始下一轮抢答。因此要完成抢答器的逻辑功能,该电路应包括抢答器鉴别模块、抢答器计数模块、报警模块、译码模块、分频模块。关键词:抢答鉴别 封锁 计数 报警Abstract Responder is the answer for the quiz participants to answer in the design when a priority decision circuit, and the race can be divided into several groups, answer in each group on the host issues raised in the shortest possible time to make judgments , and press the answer in answer key. After pressing the button when the first person, then the display shows the number of the group, the corresponding lights, while other groups will be key circuit block, it does not work. If the answer in time, no answer in, the alarm lights. Answering questions, all the keys from the host to restore and re-start the next round of the Responder. So to complete the answering device logic functions, the circuit should include Responder identification module, Responder counting module, alarm module, decoding module, frequency module. KEY: Responder Identification Blockade Count Alarm一、 设计要求1.抢答器同时供4名选手或4个代表队比赛,分别用4个按钮S0 S3表示。2.设置一个系统清除和抢答控制开关rst,该开关由主持人控制。3抢答器具有锁存与显示功能。即选手按动按钮,锁存相应的编号,并在LED和数码管上显示,同时提示灯亮。选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。4. 抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如20秒)5. 如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示20。二、方案设计与论证1、 概述将该任务分成五个模块进行设计,分别为:抢答器鉴别模块、抢答器计时模块、报警模块、分频模块、译码模块。2、 抢答器鉴别模块:在这个模块中主要实现抢答过程中的抢答功能,并能对超前抢答进行警告,还能记录无论是正常抢答还是朝前抢答者的台号,并且能实现当有一路抢答按键按下时,该路抢答信号将其余的抢答信号封锁的功能。其中有四个抢答信号s0、s1、s2、s3;抢答状态显示信号states;抢答与警报时钟信号clk2;系统复位信号rst;警报信号warm。3、 抢答器计数模块:在这个模块中主要实现抢答过程中的计时功能,在有抢答开始后进行20秒的倒计时,并且在20秒倒计时后无人抢答显示超时并报警。其中有抢答时钟信号clk1;系统复位信号rst;抢答使能信号start;无人抢答警报信号warn;计时中止信号stop;计时十位和个位信号tb,ta。4、 报警模块:在这个模块中主要实现抢答过程中的报警功能,当主持人按下控制键,有限时间内 人抢答或是计数到时蜂鸣器开始报警,计数停止信号stop;状态输出信号alm;计数脉冲clk。5、 译码模块:在这个模块中主要实现抢答过程中将BCD码转换成7段的功能。6、 分频模块:在这个模块中主要实现抢答过程中所需的时钟信号。7、 顶层文件:在这个模块中是对前五个模块的综合编写的顶层文件。三、单元电路设计(一)抢答鉴别模块1.VHDL源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity xuanshou is port(rst,clk2:in std_logic; s0,s1,s2,s3:in std_logic; states:buffer std_logic_vector(3 downto 0); light:buffer std_logic_vector(3 downto 0);warm:out std_logic);end xuanshou ;architecture one of xuanshou issignal st:std_logic_vector(3 downto 0);beginp1:process(s0,rst,s1,s2,s3,clk2) begin if rst=0 then warm=0;st=0000; elsif clk2event and clk2=1 then if (s0=1 or st(0)=1)and not( st(1)=1 or st(2)=1 or st(3)=1 ) then st(0)=1; end if ; if (s1=1 or st(1)=1)and not( st(0)=1 or st(2)=1 or st(3)=1 ) then st(1)=1; end if ; if (s2=1 or st(2)=1)and not( st(0)=1 or st(1)=1 or st(3)=1 ) then st(2)=1; end if ; if (s3=1 or st(3)=1)and not( st(0)=1 or st(1)=1 or st(2)=1 ) then st(3)=1; end if ;warm=st(0) or st(1) or st(2) or st(3);end if ;end process p1;p2:process(states(0),states(1),states(2),states(3),light) begin if (st=0000) then states=0000; elsif (st=0001) then states=0001;elsif (st=0010) then states=0010; elsif (st=0100) then states=0011;elsif (st=1000) then states=0100; end if; light=st;end process p2;end one;2. 抢答鉴别仿真图3抢答鉴别元件图(二)计数模块1. VHDL源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity JS is port(clk1,rst,start,stop:in std_logic; ta,tb:buffer std_logic_vector(3 downto 0);end JS;architecture one of JS issignal co:std_logic;beginp1:process(clk1,rst,start,stop,ta) begin if rst=0 or stop=1 then ta=0000; elsif clk1event and clk1=1 then co=0; if start=1 then if ta=0000 then ta=1001;co=1; else ta=ta-1; end if; end if; end if;end process p1;p2:process(co,rst,start,stop,tb) begin if rst=0 or stop=1 then tb=0010; elsif coevent and co=1 then if start=1 then if tb=0000 then tb=0011; else tb=tb-1; end if; end if; end if;end process p2;end one ;2.计数仿真图3.计数元件图 (三)报警模块1. VHDL源程序library ieee;use ieee.std_logic_1164.all;entity shengyin isport(rst:in std_logic; warn:in std_logic; clk:in std_logic; ta,tb:in integer range 0 to 9; stop:in std_logic; alm:out std_logic ); end; architecture bhv of shengyin is begin process(warn,ta,tb,stop,clk) begin if rst=0then alm=0; elsif stop=1then alm=0; elsif ta=0 and tb=0 then alm=clk; elsif warn=1then alm=clk; else almdoutdoutdoutdoutdoutdoutdoutdoutdoutdoutdout=1111111; END CASE; END PROCESS; END rtl;2.译码元件图(五)分频模块(用500HZ的时钟和1HZ的计数时钟)1Div100library ieee; use ieee.std_logic_1164.all; entity div100 is port( clk:in std_logic; clk100:out std_logic ); end div100; architecture art of div100 is signal num: integer range 0 to 99; signal temp:std_logic; begin process(clk) begin if clkevent and clk=1thenif num=99 then num=0;temp=not temp;else num=num+1; end if; clk100=temp; end if; end process; end art; 仿真图:Div100元件图:2.DIV50M:这是一个50M分频,将50MHZ的信号分为1HZ。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY fenpin ISPORT(clk : IN STD_LOGIC;clk50 : OUT STD_LOGIC);END fenpin;ARCHITECTURE rtl OF fenpin ISSIGNAL count : STD_LOGIC_VECTOR(25 DOWNTO 0);BEGINPROCESS(clk)BEGINIF (clkevent AND clk=1) THENIF(count=10111110101111000010000000) THENCount =00000000000000000000000000;ELSECount = count +1;END IF ;END IF ;END PROCESS;PROCESS(clk)BEGINIF (clkevent AND clk=1) THENIF(count=10111110101111000010000000) THENclk50 = 1;ELSEclk50 = 0;END IF ;END IF ;END PROCESS;END; fenpin元件图(六)顶层文件1.仿真图:2. QDQ_1主电路图连线四 锁定引脚及下载1.选择锁定引脚,再重新编译一次。在编程窗的Mode中选择Active Serial programming编程模式,打开编程文件,选中QD

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论