EDA课设智力竞赛抢答器设计Word文档格式.docx

上传人:b****4 文档编号:8003452 上传时间:2023-05-09 格式:DOCX 页数:21 大小:65.60KB
下载 相关 举报
EDA课设智力竞赛抢答器设计Word文档格式.docx_第1页
第1页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第2页
第2页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第3页
第3页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第4页
第4页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第5页
第5页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第6页
第6页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第7页
第7页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第8页
第8页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第9页
第9页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第10页
第10页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第11页
第11页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第12页
第12页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第13页
第13页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第14页
第14页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第15页
第15页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第16页
第16页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第17页
第17页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第18页
第18页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第19页
第19页 / 共21页
EDA课设智力竞赛抢答器设计Word文档格式.docx_第20页
第20页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

EDA课设智力竞赛抢答器设计Word文档格式.docx

《EDA课设智力竞赛抢答器设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《EDA课设智力竞赛抢答器设计Word文档格式.docx(21页珍藏版)》请在冰点文库上搜索。

EDA课设智力竞赛抢答器设计Word文档格式.docx

鉴别锁存模块;

答题计时模块;

答题超时提醒模块以及显示模块。

把各个模块整合后,通过电路的输入输出对应关系连接起来。

设计成一个有如下功能的抢答器:

(1)设计一个四组(人)参加的智力竞赛抢答计时器,它具有四路抢答输入,主持人按下复位键后,系统复位进入抢答状态,计时显示初始值;

(2)某组首先按下抢答键,该路抢答信号,竞赛抢答器能够设别最先抢答的信号,锁定该信号,同时扬声器响起,参赛小组的序号在数码管上显示;

(3)主持人对抢答结果进行确认,给出倒计时计数允许信号,开始回答问题,计时显示器从初始值开始以秒为单位倒计时,计数至0时,停止计数,扬声器发出超时报警信号,以中止继续回答问题;

(4)当主持人给出倒计时计数禁止信号时,扬声器停止鸣叫;

(5)参赛者在规定时间内回答完问题,主持人给出倒计时计数禁止信号,以免扬声器鸣叫,按下复位键,又可开始新一轮的抢答;

2VHDL及QuartusII软件介绍

2.1硬件描述语言——VHDL

2.1.1VHDL的简介

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

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

自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。

此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。

1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,(简称93版)。

现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。

有专家认为,在新的世纪中,VHDL于Verilog语言将承担起大部分的数字系统设计任务。

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

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

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

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

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

VHDL比其它硬件描述语言相比有以下优点:

(1)与其他的硬件描述语言相比,VHDL具有更强的行为描述能力,从而决定了他成为系统设计领域最佳的硬件描述语言。

强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。

(2)VHDL丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。

(3)VHDL语句的行为描述能力和程序结构决定了他具有支持大规模设计的分解和已有设计的再利用功能。

符合市场需求的大规模系统高效,高速的完成必须有多人甚至多个代发组共同并行工作才能实现。

(4)对于用VHDL完成的一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动的把VHDL描述设计转变成门级网表。

(5)VHDL对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管理最终设计实现的目标器件是什么,而进行独立的设计。

2.1.2VHDL语言的特点

应用VHDL进行系统设计,有以下几方面的特点。

(1)功能强大

VHDL具有功能强大的语言结构。

它可以用明确的代码描述复杂的控制逻辑设计。

并且具有多层次的设计描述功能,支持设计库和可重复使用的元件生成。

VHDL是一种设计、仿真和综合的标准硬件描述语言。

(2)可移植性

VHDL语言是一个标准语言,其设计描述可以为不同的EDA工具支持。

它可以从一个仿真工具移植到另一个仿真工具,从一个综合工具移植到另一个综合工具,从一个工作平台移植到另一个工作平台。

此外,通过更换库再重新综合很容易移植为ASIC设计。

(3)独立性

VHDL的硬件描述与具体的工艺技术和硬件结构无关。

设计者可以不懂硬件的结构,也不必管最终设计实现的目标器件是什么,而进行独立的设计。

程序设计的硬件目标器件有广阔的选择范围,可以是各系列的CPLD、FPGA及各种门阵列器件。

(4)可操作性

由于VHDL具有类属描述语句和子程序调用等功能,对于已完成的设计,在不改变源程序的条件下,只需改变端口类属参量或函数,就能轻易地改变设计的规模和结构。

(5)灵活性

VHDL最初是作为一种仿真标准格式出现的,有着丰富的仿真语句和库函数。

使其在任何大系统的设计中,随时可对设计进行仿真模拟。

所以,即使在远离门级的高层次(即使设计尚未完成时),设计者就能够对整个工程设计的结构和功能的可行性进行查验,并做出决策。

2.2QuartusII软件的应用

QuartusII是Altera公司的第四代可编程逻辑器件集成开发环境,提供从设计输入到器件编程的全部功能。

QuartusII可以产生并识别EDIF网表文件、VHDL网表文件和VerilogHDL网表文件,为其它EDA工具提供了方便的接口;

可以在QuartusII集成环境中自动运行其它EDA工具。

利用QuartusII软件的开发流程可概括为以下几步:

设计输入、设计编译、设计定时分析、设计仿真和器件编程。

(1)设计输入

QuartusII软件在File菜单中提供"

NewProjectWizard…"

向导,引导设计者完成项目的创建。

当设计者需要向项目中添加新的VHDL文件时,可以通过"

New"

选项选择添加。

(2)设计编译

QuartusII编译器完成的功能有:

检查设计错误、对逻辑进行综合、提取定时信息、在指定的Altera系列器件中进行适配分割,产生的输出文件将用于设计仿真、定时分析及器件编程。

①首先确定软件处于CompileMode,可以通过Processing菜单进行选择。

②在Processing菜单中选择CompilerSettings项。

可以进行器件选择、模式设定、综合和适配选项设定及设计验证等。

③单击Processing菜单下的"

StartCompilation"

项,开始编译过程。

④查看编译结果,我们可以得到详细的编译报告。

(3)设计定时分析

单击Project菜单下的"

TimingSettings…"

选项,可以方便地完成时间参数的设定。

QuartusII软件的定时分析功能在编译过程结束之后自动运行,并在编译报告的TimingAnalyses文件夹中显示。

其中我们可以得到最高频率fmax、输入寄存器的建立时间tSU、引脚到引脚延迟tPD、输出寄存器时钟到输出的延迟tCO和输入保持时间tH等时间参数的详细报告,从中可以清楚地判定是否达到系统的定时要求。

(4)设计仿真

QuartusII软件允许设计者使用基于文本的向量文件(.vec)作为仿真器的激励,也可以在QuartusII软件的波形编辑器中产生向量波形文件(.vwf)作为仿真器的激励。

波形编辑方式与MAX+PLUSII软件的操作相似。

在Processing菜单下选择"

SimulateMode"

选项进入仿真模式,选择"

SimulatorSettings…"

对话框进行仿真设置。

在这里可以选择激励文件、仿真模式(功能仿真或时序仿真)等,单击"

RunSimulator"

即开始仿真过程。

(5)器件编程

设计者可以将配置数据通过MasterBlaster或ByteBlasterMV通信电缆下载到器件当中,通过被动串行配置模式或JTAG模式对器件进行配置编程,还可以在JTAG模式下给多个器件进行编程。

利用QuartusII软件给器件编程或配置时,首先需要打开编程器(在New菜单选项中选择打开ChainDescriptionFile),在编程器中可以进行编程模式设置(Mode下拉框)、硬件配置(ProgrammingHardware对话框)及编程文件选择(AddFile…按钮),将以上配置存盘产生.cdf文件,其中存储了器件的名称、器件的设计及硬件设置等编程信息。

当以上过程正确无误后,单击Start按钮即可开始对器件进行编程配置。

3系统设计组成

3.1抢答器的组成原理

因为设计的是四路抢答器,所以系统的输入信号有:

各组的抢答按钮A、B、C、D,系统复位信号RST,系统时钟信号CLK,计时确认端S,计时禁止信号STOP;

系统的输出信号有:

任一组抢答成功并锁存显示该组号码的数码管显示信号输出口PLAYER,任一组抢答成功并锁存后的提示主持人确认扬声器信号VOICE,抢答成功组答题允许信号ALLOW,答题倒计时的数码管显示信号COUNT。

根据以上的分析,我们可将整个系统分为四个主要模块:

鉴别锁存模块,答题计时模块,答题超时提醒模块以及显示模块。

第一信号输出

第一信号鉴别,锁存

扬声器

答题组序号

倒计时器

确认键S

允许答题信号

主持人复位RST

抢答信号

禁止信号

STOP

图3.1系统框图

3.2抢答器模块的设计

抢答器中各个模块由VHDL实现后,利用EDA工具对各模块进行了时序仿真(TimingSimulation),其目的是通过时序可以更清楚的了解程序的工作过程。

3.2.1鉴别锁存设计

鉴别锁存模块的关键是准确判断出第一抢答者并将其锁存,实现的方法可使用软件进行编程。

在得到第一信号后将输入封锁,使其它组的抢答信号无效。

形成第一抢答信号后,通过软件设置数码显示电路,使其显示第一抢答者的组别,控制扬声器发出音响,并等待主持人按下确认键来启动答题计时电路。

鉴别锁存电路可以由VHDL程序来实现,以下是一断鉴别锁存的VHDL程序:

signalwave:

std_logic;

signali:

signalj:

signalk:

begin

process(clk,rst,s,stop)

variabletem1:

std_logic_vector(6downto0);

variabletem2:

integerrange0to11;

if(rst='

1'

)then

tem1:

="

1111111"

;

tem2:

=0;

j<

='

0'

i<

allow<

voice<

wave<

k<

elsif(clk'

eventandclk='

if(a='

andb='

andc='

andd='

andj='

)thentem1:

0110000"

elsif(a='

1101101"

1111001"

0110011"

endif;

player<

=tem1;

endprocess;

鉴别锁存电路由VHDL程序实现后,可以根据数码管显示判断抢答成功组号的,其仿真图如图3.2.1所示。

各组的抢答按钮A、B、C、D分别对应着各组号码1、2、3、4。

由图可知按下抢答按钮的顺序依次为A、B、C、D。

经过程序的判决,抢答成功的数码管显示信号输出口PLAYER显示为二进制的“0110000”,即十进制的“1”。

所以抢答成功的第一组。

3.2.2答题计时设计

答题计时模块的任务是当主持人启动确认键时开始计时,如果在规定的时间内答完题则答题有效,如果在规定的时间内没有完成,则答题无效。

计时器从规定的时间倒计时,计时为零时计时结束。

答题有无效作凭主持人来判断。

计时电路可以由VHDL程序来实现,以下是计时的VHDL程序:

if((s='

ori='

)andk='

=tem2+1;

if(tem2=11)then

if(stop='

casetem2is

when0=>

count<

1110111"

when1=>

1111011"

when2=>

when3=>

1110000"

when4=>

1011111"

when5=>

1011011"

when6=>

when7=>

when8=>

when9=>

when10=>

1111110"

whenothers=>

null;

endcase;

答题计时电路由VHDL程序实现后,其仿真图如图3.2.2所示。

图3.2.2答题计时仿真图

当小组开始答题时,答题倒计时的数码管显示信号COUNT会从初始值开始以秒为单位倒计时,计数至0时,停止计数。

3.2.3答题超时提醒设计

计时显示器从初始值开始以秒为单位倒计时,计数至0时,停止计数,扬声器发出超时报警信号,以中止继续回答问题。

当主持人再按下禁止键时,扬声器停止报警。

答题超时提醒可以由VHDL程序来实现,以下是提醒的VHDL程序:

超时提醒显示由VHDL程序实现后,其仿真图如图3.2.3所示。

当计数器倒计时到0时,超时报警信号即扬声器信号VOICE变为高电平。

此时主持人按下禁止键,扬声器则会停止报警。

3.2.4显示设计

此模块将计分电路中的计分结果通过扫描并显示出来于屏幕上。

抢答者和观众则通过显示屏幕上的信息来决定下一步的操作。

四路抢答器的显示由数码管、二极管以及扬声器组成。

数码管用来显示抢答成功的组序号和作为计数器的倒计时显示。

二极管用来提醒小组当前应进行的操作。

扬声器用来告诉小组违规行为。

显示模块可以由VHDL程序来实现,以下是显示的VHDL程序:

player<

if(sto

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

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

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2