基于QuartusII的四组智力抢答器的设计与仿真Word格式文档下载.docx

上传人:b****5 文档编号:19707088 上传时间:2023-01-09 格式:DOCX 页数:23 大小:85.87KB
下载 相关 举报
基于QuartusII的四组智力抢答器的设计与仿真Word格式文档下载.docx_第1页
第1页 / 共23页
基于QuartusII的四组智力抢答器的设计与仿真Word格式文档下载.docx_第2页
第2页 / 共23页
基于QuartusII的四组智力抢答器的设计与仿真Word格式文档下载.docx_第3页
第3页 / 共23页
基于QuartusII的四组智力抢答器的设计与仿真Word格式文档下载.docx_第4页
第4页 / 共23页
基于QuartusII的四组智力抢答器的设计与仿真Word格式文档下载.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

基于QuartusII的四组智力抢答器的设计与仿真Word格式文档下载.docx

《基于QuartusII的四组智力抢答器的设计与仿真Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于QuartusII的四组智力抢答器的设计与仿真Word格式文档下载.docx(23页珍藏版)》请在冰豆网上搜索。

基于QuartusII的四组智力抢答器的设计与仿真Word格式文档下载.docx

ABSTRACT

Thisdesignimplementsthelogicfunctionofthefour-groupintelligenceResponder.Itismainlycomposedoftheidentificationmoduleofansweringmachine,scoringmodule,7-segmentdecodedisplaymodule,top-levelmoduleandsoon.ThewholecodeisdescribedintheVHDLHardwareDescriptionLanguage,andcarriedonthecompilingandtestingintheQuartus||6.0.Byanalyzingtheresultsofsimulation,itshowsthattheansweringmachinehasmeettheexpectedfunctionsandrequirements.

Keywords:

VHDL;

QuartusII6.0;

Responder

第1章绪论

1.1研究背景

人类社会进入到高度发达的信息化社会,信息社会的发展离不开电子产品的进步。

现代电子产品在性能提高、复杂度增大的同时,价格却一直呈下降趋势,而且产品更新换代的步伐也越来越快,实现这种进步的主要原因就是生产制造技术和电子设计技术的发展。

前者以微细加工技术为代表,目前已进展到深亚微米阶段,可以在几平方厘米的芯片上集成数千万个晶体管;

后者的核心就是EDA技术。

没有EDA技术的支持,想要完成上述超大规模集成电路的设计制造是不可想象的,但是面对当今飞速发展的电子产品市场,设计师需要更加实用、快捷的EDA工具,使用统一的集体化设计,改变传统的设计思路,将精力集中到设计构想、方案比较和寻找优化设计等方面,需要以最快的速度,开发出性能优良、质量一流的电子产品,对EDA技术提出了更高的要求。

传统的EDA设计方法采用自底向上的设计方法,一般先按电子系统的具体功能要求进行功能划分,然后对每个子模块画出真值表,用卡诺图进行手工逻辑简化,写出布尔表达式,画出相应的逻辑线路图,再据此选择元器件,设计电路板,最后进行实测与调试,由于无法进行硬件系统功能仿真,如果某一过程存在错误,查找和修改十分不便,所以这是一种费时、费力的设计方法,而现代电子设计技术(EDA)是自顶向下且先进高效的。

在电子产品的设计理念、设计方式、系统硬件构成、设计的重用性、知识产权、设计周期等方面,EDA技术具有一定的优势

所以本次设计的抢答器抛弃了传统的设计方法,选择了采用主流的EDA技术进行设计。

1.2研究目的

智力竞赛是“快乐学习”这一教育模式的典范,它采用在规定的一段时间内抢答和必答等方式,在给人们的生活带来乐趣的同时,也使参与者和观众在愉悦的氛围中学到一些科学知识和生活知识,因此很受大家的喜欢。

但是,在这类比赛中,对于谁先谁后抢答,在何时抢答,如何计算答题时间等等问题,若是仅凭主持人的主观判断,就很容易出现误判。

所以,我们就需要一种具备自动锁存,置位,清零等功能智能抢答器来解决这些问题。

智能竞赛抢答器是一种应用十分广泛的设备,在各种竞赛、抢答场合中,它都能客观、迅速地判断出最先获得发言权的选手。

早期的抢答器只是由三个三极管、可控硅、发光管等器件组成的,能通过发光管的指示辨认出选手号码。

现在大多数智能抢答器都是由单片机或数字集成电路构成的,并且新增了许多功能,如选手号码显示,抢按前或抢按后的计时,选手得分显示等功能

第2章EDA简介

20世纪末,电子技术获得飞速的发展,作为现代电子设计的核心EDA扮演的角色也越来越重要。

由于电子领域的变化可谓是日新月异,所以本章就简单的介绍一下EDA技术和EDA中几个重要的名词。

2.1EDA技术介绍

电子设计技术的核心就是EDA技术,EDA是指以计算机为工作平台,融合应用电子技术、计算机技术、智能化技术最新成果而研制成的电子CAD通用软件包,主要能辅助进行三方面的设计工作,即IC设计、电子电路设计和PCB设计。

EDA技术已有30年的发展历程,大致可分为三个阶段。

70年代为计算机辅助设计(CAD)阶段,人们开始用计算机辅助进行IC版图编辑、PCB布局布线,取代了手工操作。

80年代为计算机辅助工程(CAE)阶段。

与CAD相比,CAE除了有纯粹的图形绘制功能外,又增加了电路功能设计和结构设计,并且通过电气连接网络表将两者结合在一起,实现了工程设计。

CAE的主要功能是:

原理图输入,逻辑仿真,电路分析,自动布局布线,PCB后分析。

90年代为电子系统设计自动化(EDA)阶段。

  高层次设计是一种“自顶向下”的全新设计方法,这种设计方法首先从系统设计入手,在顶层进行功能方框图的划分和结构设计。

在方框图一级进行仿真、纠错,并用硬件描述语言对高层次的系统行为进行描述,在系统一级进行验证。

然后,用综合优化工具生成具体门电路的网络表,其对应的物理实现级可以是印刷电路板或专用集成电路

由于设计的主要仿真和调试过程是在高层次上完成的,这既有利于早期发现结构设计上的错误,避免设计工作的浪费,又减少了逻辑功能仿真的工作量,提高了设计的一次成功率。

2.2VHDL简介

VHDL的英文全名是Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage,诞生于1982年。

1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言。

VHDL主要用于描述数字系统的结构,行为,功能和接口。

除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。

VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。

在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。

这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。

VHDL语言能够成为标准化的硬件描述语言并获得广泛应用,它自身必然具有很多其他硬件描述语言所不具备的优点。

归纳起来,VHDL语言主要具有以下优点:

VHDL语言功能强大、设计方式多样、VHDL语言具有强大的硬件描述能力、VHDL语言具有很强的移植能力、VHDL语言的设计描述与器件无关、语言程序易于共享和复用

2.3QuartusII简介

EDA给出的实验和设计多是基于QuartusⅡ的,其应用方法和设计流程对于其他流行的EDA工具而言具有一定的典型性和一般性,所以对此作一些介绍。

QuartusⅡ是Altera提供的FPGA/CPLD开发集成环境,Altera是世界上最大的可编程逻辑器件供应商之一。

QuartusⅡ在21世纪初推出,是Altera前一代FPGA/CPLD集成开发环境MAX+plusⅡ的更新换代品,其界面友好,使用快捷。

Altera的QuartusⅡ提供了完整的多平台设计环境,能满足各种特定设计的需要,也是单芯片可编程系统(SOPC)设计的综合环境和SOPC开发的基本设计工具,并为AlteraDSP开发包进行系统模型设计提供了集成综合环境。

QuartusⅡ设计工具完全支持Verilog,VHDL的设计流程,其内部嵌有Verilog,VHDL逻辑综合器。

QuartusⅡ也可以利用第三方的综合工具,如LeonardoSpectrum,SynplifyPro,DC-FPGA,并能直接调用这些工具,如ModelSim。

此外,QuartusⅡ与MATLAB和DSPBuilder结合,可以进行基于FPGA的DSP系统开发,是DSP硬件系统实现的关键EDA工具。

QuartusⅡ包括模块化的编译器。

编译器包括的功能模块有分析/综合器(Analyzersis&

Synthesis),适配器(Fitter),时序分析器(TimingAnalyer),设计辅助模块(DesignAssistant),EDA网表文件生成器(EDANetlistWriter)等。

此外QuartusⅡ还包括十分有用的LPM(LibraryofParameterizedModules)模块,他们是复杂或高级系统构建的重要组成部分,也可以是QuartusⅡ中与普通设计文件一起使用

QuartusⅡ编译器支持的硬件描述语言有VHDL,Verilog,SystemVerilog及AHDL

2.4可编译逻辑器件FPGA/CPLD简介

FPGA(Field-ProgrammableGateArray),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。

它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。

以硬件描述语言(Verilog或VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至FPGA上进行测试,是现代IC设计验证的技术主流。

这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数学方程式。

在大多数的FPGA里面,这些可编辑的元件里也包含记忆元件例如触发器(Flip-flop)或者其他更加完整的记忆块

系统设计师可以根据需要通过可编辑的连接把FPGA内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里。

一个出厂后的成品FPGA的逻辑块和连接可以按照设计者而改变,所以FPGA可以完成所需要的逻辑功能。

根据对抢答器的功能要求,把要设计的系统划分FPGA一般来说比ASIC(专用集成芯片)的速度要慢,无法完成复杂的设计,而且消耗更多的电能。

但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价。

厂商也可能会提供便宜的但是编辑能力差的FPGA。

因为这些芯片有比较差的可编辑能力,所以这些设计的开发是在普通的FPGA上完成的,然后将设计转移到一个类似于ASIC的芯片上。

另外一种方法是用CPLD

可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。

FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。

用户可以根据不同的配置模式,采用不同的编程方式。

第3章四组智力抢答器的设计

3.1系统设计要求

一般来说,设计一台智力抢答器,必须能够准确判断出第一位抢答者,并且通过数显、蜂鸣这些途径能让人们很容易得知谁是抢答成功者,让抢答者在规定时间内答题,主持人根据答题结果实行增减分的操作,并将分数显示在屏幕上,评出最终赢家。

所以我们在设计智力抢答器的模块需要满足鉴别、计分、数显等功能,具体设计要求如下:

设计一个四组智力抢答器系统,每组有一个对应的按钮,编号分别为A,B,C,D。

在主持人的主持下,参赛者通过抢先按下抢答按钮获得答题资格。

当某一组按下按钮并获得答题资格后,LED显示出改组编号,并有抢答成功显示,同时锁定其他组的抢答器,使其他组抢答无效。

如果主持人在未按下开始按钮前,已有人按下抢答按钮,属于违规,并显示违规组的编号,同时蜂鸣器发音提示,其他按钮无效。

获得回答资格后,若改组回答的问题正确,则加一分,否则减一分。

抢答器设有复位开关,有主持人控制。

根据抢答器的设计要求,可以使用多个不同的单元模块,并通过顶层模块对子模块单元的调用来得到抢答系统。

这些单元模块包括抢答判决模块、计分模块和7段LED显示驱动模块。

3.2顶层模块的设计

顶层模块的实体中需要定义清零信号输入端(CLR)、抢答许可控制输入端(EN)、四组抢答输入端(分别为A,B,C,D)、计分脉冲输入端(ADD_SUB_SIGN)、加/减分控制输入端(CONT_SIGN)、A组得分结果显示输出端(AA2_DISP、AA1_DISP、AA0_DISP)、B组得分结果显示输出端(BB2_DISP、BB1_DISP、BB0_DISP)、C组得分结果显示输出端(CC2_DISP、CC1_DISP、CC0_DISP)、D组得分结果显示输出端(DD2_DISP、DD1_DISP、DD0_DISP)、成功抢答组号显示输出端(T_DISP)、提前抢答报警输出端(F_DISP)和抢答成功提示灯(LED_A、LED_B、LED_C、LED_D)

顶层模块程序编写如下:

Libraryieee;

Useieee.std_logic_1164.all;

Useieee.std_logic_unsigned.all;

ENTITYTOPIS

Port(CLR:

instd_logic;

EN:

A,B,C,D:

ADD_SUB_SIGN:

INSTD_LOGIC;

CONT_SIGN:

INBIT;

LED_A:

OUTSTD_LOGIC;

LED_B:

LED_C:

LED_D:

T_DISP:

OUTSTD_LOGIC_VECTOR(6DOWNTO0);

F_DISP:

OUTSTD_LOGIC_VECTOR(3DOWNTO0);

AA2_DISP:

AA1_DISP:

AA0_DISP:

BB2_DISP:

BB1_DISP:

BB0_DISP:

CC2_DISP:

CC1_DISP:

CC0_DISP:

DD2_DISP:

DD1_DISP:

DD0_DISP:

OUTSTD_LOGIC_VECTOR(6DOWNTO0)

);

ENDTOP;

ARCHITECTUREEXOFTOPIS

COMPONENTQDPBIS

PORT(CLR:

T_LED:

F_LED:

OUTSTD_LOGIC_VECTOR(3DOWNTO0)

);

ENDCOMPONENTQDPB;

COMPONENTCONTIS

PORT(

CHOS:

INSTD_LOGIC_VECTOR(3DOWNTO0);

AA2,AA1,AA0:

BB2,BB1,BB0:

CC2,CC1,CC0:

DD2,DD1,DD0:

ENDCOMPONENTCONT;

COMPONENTLED_DRIVIS

PORT(DIN:

DOUT:

ENDCOMPONENTLED_DRIV;

SIGNALT_LED:

STD_LOGIC_VECTOR(3DOWNTO0);

SIGNALAA2_POINTS:

SIGNALAA1_POINTS:

SIGNALAA0_POINTS:

SIGNALBB2_POINTS:

SIGNALBB1_POINTS:

SIGNALBB0_POINTS:

SIGNALCC2_POINTS:

SIGNALCC1_POINTS:

SIGNALCC0_POINTS:

SIGNALDD2_POINTS:

SIGNALDD1_POINTS:

SIGNALDD0_POINTS:

BEGIN

U0:

QDPBPORTMAP(CLR=>

CLR,EN=>

EN,A=>

A,B=>

B,C=>

C,D=>

D,

LED_A=>

LED_A,LED_B=>

LED_B,LED_C=>

LED_C,LED_D=>

LED_D,

T_LED=>

T_LED,F_LED=>

F_DISP);

U1:

CONTPORTMAP(ADD_SUB_SIGN=>

ADD_SUB_SIGN,

CONT_SIGN=>

CONT_SIGN,CHOS=>

T_LED,

AA2=>

AA2_POINTS,AA1=>

AA1_POINTS,AA0=>

AA0_POINTS,

BB2=>

BB2_POINTS,BB1=>

BB1_POINTS,BB0=>

BB0_POINTS,

CC2=>

CC2_POINTS,CC1=>

CC1_POINTS,CC0=>

CC0_POINTS,

DD2=>

DD2_POINTS,DD1=>

DD1_POINTS,DD0=>

DD0_POINTS);

U2:

LED_DRIVPORTMAP(DIN=>

T_LED,DOUT=>

T_DISP);

U3:

AA2_POINTS,DOUT=>

AA2_DISP);

U4:

AA1_POINTS,DOUT=>

AA1_DISP);

U5:

AA0_POINTS,DOUT=>

AA0_DISP);

U6:

BB2_POINTS,DOUT=>

BB2_DISP);

U7:

BB1_POINTS,DOUT=>

BB1_DISP);

U8:

BB0_POINTS,DOUT=>

BB0_DISP);

U9:

CC2_POINTS,DOUT=>

CC2_DISP);

U10:

CC1_POINTS,DOUT=>

CC1_DISP);

U11:

CC0_POINTS,DOUT=>

CC0_DISP);

U12:

DD2_POINTS,DOUT=>

DD2_DISP);

U13:

DD1_POINTS,DOUT=>

DD1_DISP);

U14:

DD0_POINTS,DOUT=>

DD0_DISP);

ENDEX;

系统输入信号是复位信号CLR,允许抢答信号EN,计分脉冲信号ADD_SUB_SIGN,计分加/减信号CONT_SIGN;

系统输出信号是各组的抢答成功指示灯LED_A、LED_B、LED_C、LED_D,显示成功抢答组号T_LED,显示报警提前抢答的组号F_LED。

A组计分显示信号:

AA2,AA1,AA0、B组计分显示信号:

BB2,BB1,BB0、C组计分显示信号:

CC2,CC1,CC0、D组计分显示信号:

DD2,DD1,DD0;

当CLR为低电平,EN为高电平,ADD_SUB_SIGN为时钟信号,CONT_SIGN为高电平。

如果A组抢答成功则T_LED显示A组组号。

A组回答正确A组计分显示信号进行加一分否则减一分。

当CLR为低电平,EN为高电平,ADD_SUB_SIGN=‘1’。

如果B组抢答成功则T_LED显示B组组号。

B组回答正确B组计分显示信号进行加一分否则减一分。

如果C组抢答成功则T_LED显示C组组号。

C组回答正确C组计分显示信号进行加一分否则减一分。

当CLR为低电平,EN为高电平,ADD_SUB_SIGN=‘1’。

如果D组抢答成功则T_LED显示D组组号。

D组回答正确A组计分显示信号进行加

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

当前位置:首页 > 人文社科 > 教育学心理学

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

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