基于FPGA技术实现智能抢答器的设计.docx

上传人:b****3 文档编号:5299243 上传时间:2022-12-15 格式:DOCX 页数:21 大小:428.08KB
下载 相关 举报
基于FPGA技术实现智能抢答器的设计.docx_第1页
第1页 / 共21页
基于FPGA技术实现智能抢答器的设计.docx_第2页
第2页 / 共21页
基于FPGA技术实现智能抢答器的设计.docx_第3页
第3页 / 共21页
基于FPGA技术实现智能抢答器的设计.docx_第4页
第4页 / 共21页
基于FPGA技术实现智能抢答器的设计.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

基于FPGA技术实现智能抢答器的设计.docx

《基于FPGA技术实现智能抢答器的设计.docx》由会员分享,可在线阅读,更多相关《基于FPGA技术实现智能抢答器的设计.docx(21页珍藏版)》请在冰豆网上搜索。

基于FPGA技术实现智能抢答器的设计.docx

基于FPGA技术实现智能抢答器的设计

河北工业大学城市学院

毕业设计说明书

作者:

陈厚黎学号:

098063

系:

信息工程系

专业:

电子科学与技术

题目:

基于FPGA技术实现智能抢答器的设计

 

指导者:

伍萍辉教授

(姓名)(专业技术职务)

评阅者:

(姓名)(专业技术职务)

 

年月日

毕业设计(论文)中文摘要

 

基于FPGA技术实现智能抢答器的设计

摘要:

智力抢答器作为一种电子产品,很早就广泛应用于各种智力和知识竞赛场合。

但之前所使用的抢答器有的电路复杂不便于制作,可靠性低,实现起来非常困难。

FPGA的出现从根本上改变了以往数字电路的设计模式,使电路由硬件设计转变为软件设计。

从而提高了设计的灵活性,降低了电路的复杂程度,功能升级方便,大大缩短了设计周期,减少了研发经费。

本设计采用FPGA现场可编程技术,避免了硬件电路的焊接与调试,同时由于FPGA的I/O端口丰富,可以在设计的基础上略加修改实现具有多组输入的抢答器,增强了系统的灵活性。

本系统具有较好的稳定性和可靠性,能准确、公正、直观地判断出第一抢答者,并通过抢答器的指示灯显示和蜂鸣器等手段指示出第一抢答者。

 

关键字:

智力抢答器FPGA缩短周期稳定性可靠性

 

毕业设计(论文)外文摘要

TitleThedesignoftheintelligentviestoanswerfirstdevicebasedonFPGAtechnology

Abstra

Intelligenceresponderasakindofelectronicproducts,arewidelyusedinallkindsofintelligenceandknowledgecompetitionveryearly.Butbeforethebuzzerusedsomecircuitisnoteasytomake,lowreliability,isverydifficulttoimplement.TheappearanceofFPGAfundamentallychangedthepreviousdigitalcircuitdesignpattern,makethecircuitdesignedbyhardwareintosoftwaredesign.Soastoimprovetheflexibilityofthedesign,reducesthecomplexityofthecircuit,upgradeconvenient,greatlyshortenthedesigncycle,reducetheresearchanddevelopmentspending.ThisdesignUSESFPGAfieldprogrammabletechnology,avoidtheweldinganddebuggingofhardwarecircuit,atthesametimebecausetheI/OportoftheFPGAisrich,canberealizedonthebasisofthedesignalittlemodificationhasmultiplesetsofinputbuzzer,enhancetheflexibilityofthesystem.Thissystemhasgoodstabilityandreliability,accurate,fairandvisuallydeterminethefirstviestoanswerfirst,andthroughtheresponderlightdisplayandbuzzershowfirstviestoanswerfirst.

 

Keywords:

IntelligencebuzzerFPGACycle-timereductionStabilityResponsibility

 

目次

1引言

FPGA(即现场可编程门阵列)差不多最早出现在上个世纪的八十年代中期,现场可编程门阵列是在PAL、GAL、CPLD等一系列可编程的器件的基础上更先进的发展产物。

它的工作原理是采用了逻辑单元阵列LCA的概念,在它的内部包括了可配置逻辑模块CLB、输出输入模块和内部的连线三个部分。

它的优点是能够重复的编程,在系统加电时,可编程门阵列就可以加载各个配置的数据,与之相连的硬件系统就可以达到不同用户的需求。

抢答器在我们的日常生活中应用十分的广泛,例如在各个比赛的抢答环节中。

为了实现比赛的公平公正,能够更加直观的选择出回答问题的选手,抢答器成为了人们的首要选择。

在应用过程中,抢答器主要是采用数字显示、灯光显示或者是音响效果等一系列的方法来显示出抢到优先权的选手,同时也可以显示出答题的时间。

因此,研究智能抢答器就有了很大的实际意义。

在过去的设计中会比较多的选择使用TTL电平或者是数字集成电路来完成电路的设计。

虽然这种电路选择比较便宜,但是在布线和比较复杂的电路集成板的设计中容易出现错误,并且当需要改动的时候会特别麻烦。

所以,在本设计中,我们选择的是FPGA芯片作为主要硬件,利用电子设计自动化技术,最后在硬件语言描述部分采用的是VHDL硬件描述语言,完成基于FPGA技术的智能抢答器的设计。

1.1本课题的发展现状

FPGA(现场可编程门阵列)的概念自从美国1984年首先发表声明以来,FPGA的技术就一直在不断地发展,如今已经逐渐变得成熟。

在发展的过程中器件的集成度在逐渐增大的同时器件的价格呈现出下降的的趋势,而它的其他优点主要表现在可以现场设计、修改、验证、实现多达数万门级的数字系统的单片机,这一特点也慢慢得到世界上各个国家在电子系统方面的认可和关注。

就目前的形势来看,FPGA技术已经能够广泛的应用在电子设计的各个方面,不再仅仅是ASIC技术的一个小小的补充。

智力抢答器作为目前的一种比较普遍的电子产品,很早就被人们熟知并且应用在许多的场合。

但传统的抢答器的制作电路比较复杂,这样使得在制作起来就比较麻烦,可靠性还很低,很难实现预期的效果。

因此在很多情况下,为了简单,会选择购买一些集成块,使操作起来变得比较简单。

但同样也会遇到问题,比如购买集成块就比较困难。

随着科技的不断进步与发展,在电子设计的领域,系统设计在规模上向小型化,微型化发展,在运行速度上逐渐向快速化,高速化发展,在内存方面逐渐变得向大容量的方向发展。

根据人们的需求,EDA技术(电子设计自动化技术)逐渐发展起来,EDA技术的开发与运用为电子系统的设计带来了新的变革,慢慢显现出在仿真功能方面的优点,越来越得到人们的肯定。

因此,本课题研究的智力抢答器我们也选择应用FPGA技术。

1.2本课题研究的目的和意义

与传统的抢答器相比,基于FPGA技术的智力抢答器克服了原有设计复杂的硬件连线,较差的可靠性,在设计上面会浪费很大的精力,最后也有可能达不到自己想要设计目的等一系列的缺点。

随着FPGA技术的不断发展,智力抢答器的电路也变得简单而方便。

FPGA技术的出现使得电路设计的重点从硬件部分转移到了软件部分,与传统的设计相比,应用FPGA技术会使得设计的灵活性有所提高,电路的复杂程度逐渐变低,在功能的升级方面也能够变得方便许多,使设计周期大大的缩短,研发的费用也变少。

在本课题的设计中,稳定性和可靠性都比较好,在使用的过程中,能够十分准确、公平、公正、快速的找到首先回答问题的选手,并通过一些显示装置,例如:

蜂鸣器、数码管等显示出第一个抢答者。

这样就使得抢答装置在应用过程中更直观,在智能抢答器的设计方面,还可以根据用户的需要完成具体功能的设计。

最终,根据系统的需要的功能要求,完成相应的描述部分,仿真部分和硬件电路部分的验证。

1.3、实现方法概述

抢答器作为比赛过程中的必需品,在设计方面有很多中选择。

我们平常比较常见的有两种设计:

第一种方案是选择用触发器和小规模的数字逻辑芯片,另外一种方案是选择用单片机。

这两种方案相比较而言,用小规模逻辑芯片设计的第一种方案的设计思路比较简单,但是在电路实现方面比较复杂;而相比较第二种方案在用单片机完成的过程中,实现过程比较方便,但是随着比赛过程中组数的不确定会出现I/O口不够用的情况。

因此,在本课题的设计中采用的是基于FPGA现场可编程技术,不仅可以避免实现起来的复杂性高,还能随时加入组数,使在设计方面更适应不同的需要。

在基于FPGA技术的智能抢答器的设计系统里可以分为以下几个模块:

抢答鉴别模块、抢答信号输出模块、抢答计时模块、答题计时模块、抢答计分模块、防抖动模块、分频模块、抢答超时报警模块、答题超时报警模块、抢答显示模块、顶层模块11个部分。

1、抢答鉴别模块:

在这个模块的设计中主要实现的是能够快速准确的完成抢答的功能,在这个过程中还应该能够辨别出提前抢答的组号。

所以在抢答器应用的过程中既能显现出正常抢答的组数,还能显示出超前抢答的组数,同时还能完成在有一个抢答键按下的时候,其他抢答线路都处于抢答封锁的状态。

2、抢答信号输出模块:

在这个模块设计中主要完成将抢答的信号输出到其他模块的功能。

3、抢答计时模块:

在这个模块设计中主要完成抢答过程中的计时功能,在有抢答命令开始后进行一个倒计时,并且在倒计时完成后有报警的提示音。

4、答题计时模块:

在这个模块设计中主要完成答题过程中的所有计时功能,在有抢答答题开始后可以进行答题的倒计时,并且能够在规定倒计时后显示超时并报警,此时必须停止答题。

5、抢答计分模块:

在这个模块设计中主要是给定四个抢答信号的记分情况,规定每个抢答信号初始是五分,当抢答并答对的时候加一分;抢答答错的时候减一分;没有获得抢答权的选手分数保持不变。

6、防抖动模块:

智能抢答器中设计中的add加分输入和sub减分输入使用的拨档开关一般属于机械开关,因此在开关动作瞬间经常会出现信号来回弹跳的现象,尽管只是进行了一次拨键动作,但是信号在实际的产生中却不只是弹跳了一次,所以在设计中必须加上消除抖动的电路。

7、分频模块:

因为在系统设计中所用的时钟脉冲信号不同,所以应采用分频模块进行分频,以完成本系统的设计。

8、抢答者台号显示模块:

在这个模块设计中可以用来显示出抢到答题机会的抢答者的组号。

9、抢答超时报警模块:

在抢答倒计时模块倒计时至0秒时给出报警提示,通知抢答答题的时间结束。

10、答题超时报警模块:

在抢答者回答问题的倒计时至0秒时给出报警的提示,通知答题时间的结束。

11、顶层模块:

在这个模块中是完成对以上几个模块的综合编写的顶层文件。

整体系统的设计电路如下图所示:

 

2基本应用电路设计

在知识竞赛、文体娱乐活动(抢答赛活动)中,所有参赛者如果考虑恰当好后都想抢先答题。

如果没有准确辨别抢答前后的设备,有时很难区别出他们的先后顺序,令主持人感到为难。

为了使比赛能顺利进行,需要有一个能判断抢答先后的设备,我们将它称为智力竞赛抢答器。

2.1 抢答器设计基本要求

设计任务:

本文设计了一个通用型抢答器,设置有4个抢答按钮,可供4组人员进行抢答,各组可手动按按钮申请抢答权。

抢答器具体功能有如下几点。

(1)可供4组抢答,共设置了4个按键。

(2)设置一个抢答控制开关Start,该开关由主持人控制,只有当主持人按下开始键才能抢答,在按开始按钮前抢答属于违规。

(3)抢答器具有定时抢答功能,且一抢答的时间设定为30s。

当主持人启动“开

始”键后,LCD上会显示30s的倒计时,抢答的4组成员可在30s内可以进行抢答,30s后抢答无效。

(4)抢答器具有锁存与显示功能。

即选手按动按钮,锁存相应的组号,并在LED数码管上显示抢答成功的组号。

(5)本系统同时还添加设置有语音功能,在抢答过程中若某一小组抢答成功,那

么语音系统会对其进行相应的播报。

(6)最具特色的是LCD显示功能,在某小组抢答成功后,LCD会分别显示出每小

组与抢答成功组的时间差当四组参赛者之一抢先按下前面的按纽时,抢答器能准确判断出抢答者,并显示组号。

2.2硬件电路设计

本文是以FPGA为基础设计的多功能抢答器。

根据设计功能要求,该设计主要包括抢答器输入键盘按钮,FPGA芯片模块,数码管显示电路,单片机(控制模块),语音播报电路,LCD液晶屏显示模块。

抢答器结构简图如下图所示。

(1)FPGA电路模块:

FPGA正常工作时的基本电路,由时钟和复位电路组成。

利用FPGA(CYCLONEEPIC6Q240C8)来进行运算和处理。

(2)键盘按钮输入电路:

用了5个按键开关,其中一个是主持人“开始”按钮,其余四个为抢答小组按钮,按键电路都接有上拉电阻。

(3)LCD数码管显示电路:

采用一位LCD数码管来显示抢答成功选手。

(4)语音电路模块:

采用ISD1420语音芯片来实现语音播报。

(5)LCD显示模块:

采用LM1602芯片来分别显示四组抢答时间差。

2.3软件程序设计

FPGA作为现代集成电路设计的重点与热点,设计一般采用自顶向下、由粗到细、逐步求精的方法。

设计最顶层是指系统的整体要求,最下层是指具体的逻辑电路。

自顶向下是将数字系统的整体逐步分解为各个子系统和模块,若子系统规模较大则进一步分解为更小的子系统和模块,层层分解,直至整个系统中各子模块关系合理、便于设计实现为止。

(1)RS触发器

图表17447双D触发器

RS触发器的功能是用双D触发器7474来实现,如图表1所示,SD表示置位端,RD表示复位端,输入0有效,Q为原码输出,QBAR为反码输出。

(2)数字秒表模块

图表2基于FPGA抢答器电路设计

具有复位功能,用两个数码管分别显示个位和十位,当使能端输入1时,开始计数,秒钟自动加1,计数时间为1分钟,蜂鸣器接到COUNTER_6的carry_out端口,计数到59时蜂鸣器报警的同时恢复到00状态,系统有单独的置零信号,将数码管显示时间直接恢复到00状态。

显示部分的数码管段选用总线复用技术,位选用动态扫描,一般只要每个扫描频率超过人的眼睛视觉暂留频率24HZ以上就可以点亮单个显示而不闪烁,扫描频率采用与7447使能控制信号同一个1KHZ信号。

10进制计数器的部分程序见附表。

2.3.1抢答器鉴别模块

4组抢答理论上应有16中可能的选择情况,但是由于芯片的速度非常块,两组以上同时抢答成功的可能性极小,本文设计了这4种情况,以简化电路的复杂性。

由于抢答按钮按下后没有自锁功能,因此本模块设计了自锁功能(即当一抢答者抢答后其他抢答者不能再抢答上)。

直到下一次重新开始抢答。

在设计恢复电路时,我采用了由运算放大器NE5532构成的二阶压控电压源低通滤波器来实现恢复电路,从取样电路的输出端得到的取样信号作为恢复电路的输入信号输入到恢复电路中。

通过调整R12、R13、C5、C6元件的值,即可改变二阶压控电压源低通滤波器的截止频率。

图表3抢答鉴别模块

rst为复位信号输入端;s1、s2、s3、s4为抢答信号输入端;D1、D2、D3、D4为抢答信号输出端。

使用QuartusⅡ对抢答鉴别模块进行功能仿真:

仿真图分析:

当rst复位后,S1、S2、S3、S4分别输入抢答信号后,D1、D2、D3、D4输出相应的抢答者信号,并且能鉴别出最先抢答者并所存。

2.3.2抢答信号输出模块

当完成抢答后需要一模块输出抢答的信号用于以后的计分模块。

运行抢答信号输出模块,生成元件图:

图中D1、D2、D3、D4为抢答信号输入端;states为抢答信号输出端。

使用QuartusⅡ软件对抢答信号输出模块进行功能仿真:

抢答信号输出模块仿真分析:

当D1、D2、D3、D4有高电平输出时states分别显示其选择信号。

2.3.3抢答计时模块

主持人按下复位键后开始9秒倒计时,四位选手在此9秒内进行抢答,若在此倒计时内有人抢答则由stop控制停止倒计时,若没有人抢答则直至倒计时结束触发报警模块。

运行抢答计时模块,生成元件图:

其中clk1为时钟脉冲信号输入端;rst为复位信号输入端;en为使能信号输入端;stop为停止倒计时输入端q为倒计时输出端。

使用QuartusⅡ对抢答计时模块进行功能仿真:

抢答计时模块仿真分析:

当给给与clk1时钟脉冲输入后,复位端rst及使能端en高电平有效时,q输出倒计时时间;当stop高电平有效时,停止倒计时。

2.3.4答题计时模块

主持人复位并且确定抢答选手后。

主持人可根据题目的难易程度来确定抢答者答题时间分别有59秒、19秒或39秒三种情况。

运行答题计时模块,生成元件图:

答题计时模块元件图分析:

如上图clr为复位信号输入端;en为使能信号输入端;clk为时钟脉冲信号输入端;ldn为计时预置信号输入端;ta为19秒倒计时预置输入端;tb为39秒倒计时预置输入端;qa、qb为时间输出端。

答题计时模块仿真

使用QuartusⅡ对答题计时模块进行功能仿真:

图表4答题计时模块仿真

(1)

图表5答题计时模块仿真

(2)

图表6答题计时模块仿真(3)

答题计时模块仿真图分析:

上图分别为59秒、19秒、39秒倒计时功能仿真,可以看到当ta、tb低电平时实现59秒倒计时,ta、tb分别实现19秒和39秒倒计时预置。

2.3.5防抖动电路模块

由于本次设计具有计分功能,而抢答器中的add加分键使用的拨档开关属于机械开关,在开关动作瞬间往往会出现来回弹跳的现象,虽然只是拨键一次,而实际上产生的信号却不只是弹跳一次,因此必须加上消除抖动的电路。

图表7防抖动模块元件图

防抖动电路元件图分析:

clk为接收时钟脉冲信号端,keyin为接收输入脉冲端,keyout为输出确认脉冲端。

使用QuartusⅡ对防抖动模块进行功能仿真:

防抖动电路模块仿真分析:

当给与clk时钟脉冲后,只有当keyin键输入超过6个时钟脉冲信号时keyout才能显示高电平。

2.3.6抢答计分模块

抢答开始为每位选手预置5分,当有选手抢答成功后,主持人根据选手的答题对错情况,按动加分(或减分)按钮为选手加分(减分),每次可以给答题组加一分(或减一分),当本次比赛结束后按动清零按钮,所有答题组的分数将恢复预置值,开始下一轮抢答。

图表8抢答计分模块元件图

抢答计分元件图分析:

clk为时钟信号输入端;clr为设置分数恢复端;add为加分信号输入端;sub为减分信号输入端;states为抢答者信号输入端;a_out、b_out、c_out、d_out分别为四组抢答选手的分数输出端。

使用QuartusⅡ对抢答计分模块进行功能仿真:

图表9抢答计分模块仿真

(1)

图表10抢答计分模块仿真

(2)

抢答计分模块仿真分析:

在复位键高电平有效后、add加分键高电平有效时,无论chose选择哪个选手就给相应的选手加分;sub为高电平时反之。

2.3.7、分频模块

由于本次设计中的倒计时模块所用时钟较低,因此用到两种频率所以本设计使用一分频模块进行1000分频。

图表11分频模块元件图

其中clk时钟频率输入端,newclk为1000分频之后的频率输出端。

使用QuartusⅡ对分频模块进行功能仿真:

分频模块仿真分析:

如图明显看出clk被分频后的输出的1000分频(newclk)。

2.3.8抢答显示模块

采用7段数码管来进行动态显示:

抢答倒计时时间、答题倒计时时间、抢答者分数,本设计使用的数码管动态显示,但是当频率高到一定程度时给人的直观感觉是所有数据就如同同时显示一样。

图表12抢答显示模块元

抢答显示模块元件图分析:

p0、p1、p2、p3、p4、p5、p7端可分别用于显示各组抢答选手的分数输入端;clk为时钟频率输入端;count为数码管显示输出端,data用于输出数码管信息

使用QuartusⅡ对抢答显示模块进行功能仿真:

抢答显示模块仿真分析:

当为clk加上时钟脉冲信号后,分别为p0、p1、p3、p4、p5、p7指定输出信号后,count会一次选择8个数码管进行显示,data则显示当时选择的数码管要表示的数据。

2.3.9抢答报警模块

本设计设置59秒倒计时抢答时间,在此59秒倒计时内进行抢答,当完成9秒倒计时仍没有人抢答,则报警灯亮

图表13抢答报警模块元件图

抢答报警模块元件图分析:

如上图rst为复位按钮,q为倒计时时间输入,warm端为报警输出。

使用QuartusⅡ对抢答报警模块进行功能仿真:

抢答报警模块仿真分析:

如图在rst复位端高电平有效之后,q倒计时为0秒时报警输出端warm为高电平。

2.3.10答题报警模块

本设计设置59秒、39秒、19秒倒计时为答题时间,允许选手在此时间内进行抢答,当完成规定秒数倒计时后仍没有人抢答,则答题报警灯亮。

图表14答题报警模块元件图

答题报警模块元件图分析:

rst为复位信号,qa、qb为接收答题倒计时模块时间的输入端,warm为答题报警信号输出端。

使用QuartusⅡ对答题报警模块进行功能仿真:

答题报警模块仿真分析:

当rst为低电平复位后,qa、qb输入为倒计时0秒后,答题报警信号输出端warm输出高电平报警。

 

3系统总体电路图

用两片7474构成的4个RS触发器组成时间鉴别电路。

调用前面形成的rs模块、qiangdayima模块、共阳极数码管译码器7447及相关的非门、与非门、输入、输出端子形成的总电路如图4所示。

该电路在EPF10K10LC84-4实验板上实现,因为板子上开关K1-K8平时为高电平,按下时为低电平。

而根据电路设计需要,主持人复位开关K8平时应接高电平,四组抢答开关K1-K4平时应为低电平,故接成如图4所示开关模式。

显示部分直接采用实验板上的1个共阳极数码管,不必将译码器的输出A~G具体连线到实验板上。

图15基于FPGA的抢答器电路设计图数码管的7个段,只需将其输出端定义到可用作数码管显示的I/O引脚上即可。

竞赛开始前,主持人先按下KK键,各触发器复位(Q=0),4个发光二极管均不亮,竞赛开始后,开始抢答,例如第一组抢答成功即P1被按下则门1输出为0,使Q1=1,发光二极管亮,同时Q1BAR=‘0’。

Q1BAR=‘0’有2个作用,其一是封锁门2、门3、门4,使P2、P3、P4再按时不能把相应触发器的Q置‘0’;其二是使门5输出为1,驱动数字秒表开始计时。

当计时达到60秒钟的时候,蜂鸣器报警,答题时间结束。

图表15基于FPGA抢答器电路设计

 

4编程及测试

为设计项目选定Cyclone系列EP1C20F400型芯片;根据该芯片的管脚规定,自己在Pin/Location/chip屏幕中添加输入输出端可用的引脚编号,并编译通过;对器件编程,使用ByteBlaste下载电缆把项目以在线配置的方式下载到Cyclone系列EP1C20F400型芯片中。

按功能键键复位,用四位拨码开关键模拟抢答,实验仿真结果正确,达到了预期的设计要求。

缺点是某组优先抢答后,扬声器一直在叫

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1