您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > EDA设计智力竞赛抢答器设计
1引言无论是在学校、工厂、军队还是益智性电视节目,都会举办各种各样的智力竞赛,都会用到抢答器。目前市场上已有各种各样的智力竞赛抢答器,但绝大多数是早期设计的,以模拟电路、数字电路或者模拟电路与数字电路相结合的产品。这部分抢答器已相当成熟,但功能越多的电路相对来说就越复杂,且成本偏高,故障高,显示方式简单(有的甚至没有显示电路),无法判断提前抢按按钮的行为,不便于电路升级换代。本设计就是基于VHDL设计的一个智力竞赛抢答器尽量使竞赛真正达到公正、公平、公开。基于EDA技术设计的抢答器,以其价格便宜、安全可靠、使用方便而受到了人们的普遍欢迎。本文以现场(FPGA)为设计载体,以硬件描述语言为主要表达方式,以QuartusⅡ开发软件设计的电子抢答器,具有抢答鉴别与锁存功能以及10秒答题限时功能。EDA技术是在电子CAD技术基础上发展起来的计算机软件系统,是指以计算机为工作平台,融合了应用电子技术、计算机技术、信息处理及智能化技术的最新成果,进行电子产品的自动设计。利用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析范畴用得很宽。包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军到设计出IC版图或PCB版图的整个过程在计算机上自动处理完成。现在对EDA的概念或事等各个领域,都有EDA的应用。目前EDA技术已在各大公司、企事业单位和科研教学部门广泛使用。例如在飞机制造过程中,从设计、性能测试及特性分析直到飞行模拟,都可能涉及到EDA技术。本文所指的EDA技术,主要针对电子电路设计、PCB设计和IC设计。EDA设计可分为系统级、电路级和物理实现级。1.1设计的目的本次设计的目的就是在掌握EDA实验开发系统的初步使用基础上,了解EDA技术,了解并掌握VHDL硬件描述语言的设计方法和思想,通过学习的VHDL语言结合电子电路的设计知识理论联系实际,掌握所学的课程知识,学习VHDL基本单元电路的综合设计应用。通过对智力竞赛抢答器的设计,巩固和综合运用所学课程,理论联系实际,提高设计能力,提高分析、解决计算机技术实际问题的独立工作能力。本文以现场(FPGA)为设计载体,以硬件描述语言为主要表达方式,以QuartusⅡ开发软件设计的电子抢答器,具有抢答鉴别与锁存功能以及10秒答题限时功能,应用二极管和数码显示管为主要部件来设计扫描显示器。通过课程设计深入理解VHDL语言的精髓和掌握运用所学的知识,达到课程设计的目标。1.2设计的基本内容本文是设计的一个四路智力竞赛抢答器,利用VHDL设计抢答器的各个模块,并使用EDA工具对各模块进行仿真验证。智力竞赛抢答器的设计分为四个模块:鉴别锁存模块;答题计时模块;答题超时提醒模块以及显示模块。把各个模块整合后,通过电路的输入输出对应关系连接起来。设计成一个有如下功能的抢答器:(1)设计一个四组(人)参加的智力竞赛抢答计时器,它具有四路抢答输入,主持人按下复位键后,系统复位进入抢答状态,计时显示初始值;(2)某组首先按下抢答键,该路抢答信号,竞赛抢答器能够设别最先抢答的信号,锁定该信号,同时扬声器响起,参赛小组的序号在数码管上显示;(3)主持人对抢答结果进行确认,给出倒计时计数允许信号,开始回答问题,计时显示器从初始值开始以秒为单位倒计时,计数至0时,停止计数,扬声器发出超时报警信号,以中止继续回答问题;(4)当主持人给出倒计时计数禁止信号时,扬声器停止鸣叫;(5)参赛者在规定时间内回答完问题,主持人给出倒计时计数禁止信号,以免扬声器鸣叫,按下复位键,又可开始新一轮的抢答;2VHDL及QuartusII软件介绍2.1硬件描述语言——VHDL2.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。根据以上的分析,我们可将整个系统分为四个主要模块:鉴别锁存模块,答题计时模块,答题超时提醒模块以及显示模块。3.2抢答器模块的设计抢答器中各个模块由VHDL实现后,利用EDA工具对各模块进行了时序仿真(TimingSimulation),其目的是通过时序可以更清楚的了解程序的工作过程。3.2.1鉴别锁存设计鉴别锁存模块的关键是准确判断出第一抢答者并将其锁存,实现的方法可使用软件进行编程。在得到第一信号后将输入封锁,使其
本文标题:EDA设计智力竞赛抢答器设计
链接地址:https://www.777doc.com/doc-6135059 .html