EDA技术与实验考题

合集下载

EDA技术EDA技术试卷(练习题库)(2023版)

EDA技术EDA技术试卷(练习题库)(2023版)

EDA技术EDA技术试卷(练习题库)1、个项目的输入输出端口是定义在()。

2、描述项目具有逻辑功能的是()。

3、关键字ARCHITECTURE定义的是。

4、M AXP1USII中编译VHD1源程序时要求()。

5、1987标准的VHD1语言对大小写是()。

6、关于1987标准的VHD1语言中,标识符描述正确的是()。

7、符合1987VHD1标准的标识符是()。

8、VHD1语言中变量定义的位置是()。

9、VHD1语言中信号定义的位置是()。

10、变量是局部量可以写在()。

11、变量和信号的描述正确的是()。

12、关于VHD1数据类型,正确的是()。

13、下面数据中属于实数的是()。

14、下面数据中属于位矢量的是()。

15、可以不必声明而直接引用的数据类型是()。

16、STD_10GIG_1164中定义的高阻是字符()。

17、STD_10GIG」164中字符H定义的是()。

18、使用STD_1OG1G」164使用的数据类型时()。

19、VHD1运算符优先级的说法正确的是()。

20、如果a=1,b=0,则逻辑表达式(aANDb)OR(NOTbANDa)的值是()。

21、不属于顺序语句的是()。

22、正确给变量X赋值的语句是()。

23、EDA的中文含义是()。

24、EPF10K20TC144-4具有多少个管脚()。

25、如果a=1,b=1,则逻辑表达式(aXORb)OR(NOTbANDa)的值是()。

26、MAX+P1USII的,数据类型为std_1ogic_vector,试指出下面那个30、在一个VHD1,数据类型为integer,数据范围0to127,下面哪个赋31、下列那个流程是正确的基于EDA软件的FPGA/CP1D和变量的说法,哪一个是不正确的:()。

33、下列语句中,不属于并行语句的是:()。

34、O在EDA工具中,能将硬件描述语言转换为硬件电路的重要工具软件称为。

35、不是操作符号它只相当与作用〃target=Zb1ank〃>在VHD1的CASE语句中,条件句中的“二>”不是操作符号,它只相当与O作用。

(完整版)EDA技术试题库

(完整版)EDA技术试题库

EDA试题库建设[70%基础题,20%中档题,10%提高题(试题容量:20套试卷,其中每套试题填空题10空(每空2分),选择题10题(每题2分)),简答题4题(每题5分),分析题2题(每题10分),设计题2题(每题10分)。

]基础题部分填空题(140空)1.一般把EDA技术的发展分为(CAD)、(CAE)和(EDA)三个阶段。

2.EDA设计流程包括(设计准备)、(设计输入)、(设计处理)和(器件编程)四个步骤。

3.时序仿真是在设计输入完成之后,选择具体器件并完成布局、布线之后进行的时序关系仿真,因此又称为(功能仿真)。

4.VHDL的数据对象包括(变量)、(常量)和(信号),它们是用来存放各种类型数据的容器。

5.图形文件设计结束后一定要通过(仿真),检查设计文件是否正确。

6.以EDA方式设计实现的电路设计文件,最终可以编程下载到(FPGA)或者(CPLD)芯片中,完成硬件设计和验证。

7.MAX+PLUS的文本文件类型是(.VHD)。

8.在PC上利用VHDL进行项目设计,不允许在(根目录)下进行,必须在根目录为设计建立一个工程目录。

9.VHDL源程序的文件名应与(实体名)相同,否则无法通过编译。

10.常用EDA 的设计输入方式包括(文本输入方式)、(图形输入方式)、(波形输入方式)。

11.在VHDL 程序中,(实体)和(结构体)是两个必须的基本部分。

12.将硬件描述语言转化为硬件电路的重要工具软件称为(HDL 综合器)。

13、VHDL 的数据对象分为(常量)、(变量)和(信号)3 类。

14、VHDL 的操作符包括(算术运算符)和(符号运算符)。

15、常用硬件描述语言有(Verilog HDL)、(AHDL)以及(VHDL)。

16、VHDL基本语句有(顺序语句)、(并行语句)和属性自定义语句。

17、VHDL 同或逻辑操作符是(XNOR)。

18、原理图文件类型后缀名是(.GDF),Verilog HDL语言文本文件类型的后缀名是(.V )。

EDA考试题题库及答案

EDA考试题题库及答案

EDA考试题题库及答案一、选择题1.一个项目的输入输出端口是定义在(A)A、实体中;B、结构体中;C、任何位置;D、进程中。

2.QuartusII中编译VHDL源程序时要求(C)A、文件名和实体可以不同名;B、文件名和实体名无关;C、文件名和实体名要相同;D、不确定。

3.VHDL语言中变量定义的位置是(D)A、实体中中任何位置;B、实体中特定位置;C、结构体中任何位置;D、结构体中特定位置。

4.可以不必声明而直接引用的数据类型是(C)A、STD_LOGIC;B、STD_LOGIC_VECTOR;C、BIT;D、ARRAY。

5.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是(C)A、FPGA全称为复杂可编程逻辑器件;B、FPGA是基于乘积项结构的可编程逻辑器件;C、基于SRAM的FPGA器件,在每次上电后必须进行一次配置;D、在Altera公司生产的器件中,MAX7000系列属FPGA结构。

6.下面不属于顺序语句的是(C)A、IF语句;B、LOOP语句;C、PROCESS语句;D、CASE语句。

7.VHDL语言是一种结构化设计语言;一个设计实体(电路模块)包括实体与结构体两部分,实体体描述的是(A)A、器件外部特性;B、器件的内部功能;C、器件的综合约束;D、器件外部特性与内部功能。

8.进程中的信号赋值语句,其信号更新是(C)A、按顺序完成;B、比变量更快完成;C、在进程的最后完成;D、都不对。

9.在EDA工具中,能完成在目标系统器件上布局布线软件称为(C)A、仿真器B、综合器C、适配器D、下载器10.VHDL常用的库是(A)A、IEEE;B、STD;C、WORK;D、PACKAGE。

11.在VHDL中,用语句(D)表示clock的下降沿。

A、clock'EVENT;B、clock'EVENT AND clock='1';C、clock='0';D、clock'EVENT AND clock='0'。

(完整word版)EDA技术题库

(完整word版)EDA技术题库

(完整word版)EDA技术题库EDA技术题库⼀.填空题1. Verilog的基本设计单元是模块。

它是由两部分组成,⼀部分描述接⼝;另⼀部分描述逻辑功能,即定义输⼊是如何影响输出的。

2. ⽤assign描述的语句我们⼀般称之为组合逻辑,并且它们是属于并⾏语句,即于语句的书写次序⽆关。

⽽⽤always描述的语句我们⼀般称之为组合逻辑或时序逻辑,并且它们是属于串⾏语句,即于语句的书写有关。

3.在case语句中⾄少要有⼀条default语句。

4. 已知x=4’b1001,y=4’0110,则x的4位补码为4’b1111,⽽y的4位的补码为4’b0110 。

5. 两个进程之间是并⾏语句。

⽽在Always中的语句则是顺序语句。

6.综合是将⾼层次上描述的电⼦系统转换为低层次上描述的电⼦系统,以便于系统的具体硬件实现。

综合器是能⾃动将⾼层次的表述(系统级、⾏为级)转化为低层次的表述(门级、结构级)的计算机程序7. 设计输⼊的⽅式有原理图、硬件描述语⾔、状态图以及波形图。

8.按照仿真的电路描述级别的不同,HDL仿真器可以完成:系统级仿真,⾏为级仿真,RTL 级仿真,门级(时序)仿真。

按照仿真是否考虑硬件延时分类,可以分为:功能仿真和时序仿真。

仿真器可分为基于元件(逻辑门)仿真器和基于HDL语⾔的仿真器9. IP核是知识产权核或知识产权模块,在EDA技术中具有⼗分重要的地位。

半导体产业的IP定义为⽤于ASIC或FPGA中的预先设计好的电路功能模块。

IP分为软IP、固IP和硬IP。

10.可编程逻辑器件PLD是⼀种通过⽤户编程或配置实现所需逻辑功能的逻辑器件,也就是说⽤户可以根据⾃⼰的需求,通过EDA开发技术对其硬件结构和⼯作⽅式进⾏重构,重新设计其逻辑功能11.两种可编程逻辑结构是基于与-或阵列可编程结构(乘积项逻辑可编程结构)、基于SRAM 查找表的可编程逻辑结构12.PLD按集成度分类:简单PLD、复杂PLD;按结构分类:基于“与-或”阵列结构的器件、基于查找表结构的器件;从编程⼯艺上分类:熔丝型、反熔丝型、EPROM型、EEPROM型、SRAM 型、Flash型13.Verilog的端⼝模式有三种:输⼊端⼝、输出端⼝、双向端⼝,对应的端⼝定义关键词分别是:input、output、inout14.Verilog中常⽤有两种变量:寄存器型变量(⽤reg定义)、⽹线型变量(⽤wire定义)15.Verilog有两种赋值⽅式:阻塞式赋值(=)、⾮阻塞式赋值(<=)16.Verilog有四种循环语句:for语句、repeat语句、while语句、forever语句17.Verilog 的描述风格:RTL描述、数据流描述、⾏为描述、结构描述18.从状态机的信号输出⽅式上分,有Mealy型和Moore型两种状态机;从状态机的描述结构上分,有单过程状态机和多过程状态机;从状态机表达⽅式上分,有符号化状态机和确定状态编码的状态机;从状态机编码⽅式上分,有顺序编码状态机、⼀位热码编码状态机或其他编码⽅式状态机。

EDA试题答案

EDA试题答案

学习使人进步1.1.1(1)什么叫EDA(P1)?EDA技术是一种以计算机为工作平台,结合计算机图形学、拓扑逻辑学、计算方法学及人工智能等多项计算机应用科学的最新成果而开发出来的一套软件工具。

1.1.2(2)EDA技术在硬件硬件方面融合了哪些技术(P1)?大规模集成电路制造技术、IC版图设计技术、ASIC (专用集成电路)测试和封装技术、FPGA和CPLD编程下载技术、自动测试技术等1.1.3(3)EDA技术在计算机辅助工程方面融合了哪些技术(P1)?计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)、计算机辅助工程(CAE)技术以及多种计算机语言的设计概念。

1.1.4(4)EDA技术在现代电子学方面融合了哪些内容(P1)?如:电子线路设计理论、数字信号处理技术、嵌入式系统和计算机设计技术、数字系统建模和优化技术及微波技术等1.1.5(5)EDA技术在21世纪的突出表现有哪5个方面(P2)?●使电子设计产品以自主知识产权方式得以明确表达和确认成为可能。

●在仿真验证和设计两方面都支持标准硬件描述语言的功能强大的EDA软件不断推出。

●电子技术全方位进入EDA领域。

●EDA使得电子领域各学科的界限更加模糊,更加互为包容。

●不断推出更大规模的FPGA和CPLD。

●基于EDA工具的用于ASIC设计的标准单元已涵盖大规模电子系统及复杂IP核模块。

●软硬件IP核在电子领域得以进一步确认。

●SoC高效率低成本设计技术日益成熟。

●系统级、行为验证级硬件描述语言使复杂电子系统的设计特别是验证趋于高效和简单。

1.2.1(6)画图说明EDA技术实现目标是什么(P3)?1.3.1(7)目前常用的HDL主要有哪些?其中使用最多的是谁(P4)?VHDL;Verilog HDL;SystemVerilog ;System C 1.3.2(8)与Verilog相比VHDL有哪两方面优势?有哪三方面不足(P5)?优势:1.语法比Verilog更严谨,通过EDA工具自动语法检查,以排除许多设计中的疏忽;2.有很好的行为级描述能力和一定的系统级描述能力,而Verilog建模时,行为与系统级抽象及相关描述能力不及VHDL。

电子与通信技术:EDA技术考试题

电子与通信技术:EDA技术考试题

电子与通信技术:EDA技术考试题1、单选可以不必声明而直接引用的数据类型是()。

A.STD_LOGICB.STD_LOGIC_VECTORC.BITD.前面三个答案都是错误的正确答案:C2、单选电(江南博哥)子系统设计优化,主要考虑提高资源利用率减少功耗(即面积优化)及提高运行速度(即速度优化),下列方法()不属于面积优化。

A、流水线设计B、资源共享C、逻辑优化D、串行化正确答案:A3、单选在VHDL的CASE语句中,条件句中的“=>”不是操作符号,它只相当与()作用。

A.IFB.THENC.ANDD.OR正确答案:B4、单选关于VHDL数据类型,正确的是()。

A.数据类型不同不能进行运算B.数据类型相同才能进行运算C.数据类型相同或相符就可以运算D.运算与数据类型无关正确答案:D5、名词解释HDL正确答案:硬件描述语言6、单选MAX+PLUSII的设计文件不能直接保存在()。

A.硬盘B.根目录C.文件夹D.工程目录正确答案:B7、填空题EDA设计输入主要包括()、()和()。

正确答案:图形输入;HDL文本输入;状态机输入8、问答题结构体的三种描述方式。

正确答案:即行为级描述、数据流级描述和结构级描述。

9、填空题时序仿真是在设计输入完成之后,选择具体器件并完成布局、布线之后进行的时序关系仿真,因此又称为功能()。

正确答案:仿真10、单选综合是EDA设计流程的关键步骤,在下面对综合的描述中,()是错误的。

A.综合就是把抽象设计层次中的一种表示转化成另一种表示的过程。

B.综合就是将电路的高级语言转化成低级的,可与FPGA/CPLD的基本结构相映射的网表文件。

C.为实现系统的速度、面积、性能的要求,需要对综合加以约束,称为综合约束。

D.综合可理解为,将软件描述与给定的硬件结构用电路网表文件表示的映射过程,并且这种映射关系是唯一的(即综合结果是唯一的)。

正确答案:D11、名词解释FPGA正确答案:现场可编程门阵列。

EDA技术试验问答题答案(基本包含)

EDA技术试验问答题答案(基本包含)

EDA技术试验问答题答案(基本包含)第一章1-1 EDA技术与ASIC设计和FPGA开发有什么关系?FPGA/CPLD 在ASIC设计中有什么用途?答:利用EDA技术进行电子系统设计的最后目标是完成专用集成电路ASIC的设计和实现;FPGA和CPLD是实现这一途径的主流器件。

FPGA和CPLD通常也被称为可编程专用IC,或可编程ASIC。

FPGA 和CPLD的应用是EDA技术有机融合软硬件电子设计技术、SoC(片上系统)和ASIC设计,以及对自动设计与自动实现最典型的诠释。

FPGA/CPLD在ASIC设计中,属于可编程ASIC的逻辑器件;使设计效率大为提高,上市的时间大为缩短。

1-2与软件描述语言相比,VHDL有什么特点? P6答:编译器将软件程序翻译成基于某种特定CPU的机器代码,这种代码仅限于这种CPU而不能移植,并且机器代码不代表硬件结构,更不能改变CPU的硬件结构,只能被动地为其特定的硬件电路结构所利用。

综合器将VHDL程序转化的目标是底层的电路结构网表文件,这种满足VHDL设计程序功能描述的电路结构,不依赖于任何特定硬件环境;具有相对独立性。

综合器在将VHDL(硬件描述语言)表达的电路功能转化成具体的电路结构网表过程中,具有明显的能动性和创造性,它不是机械的一一对应式的“翻译”,而是根据设计库、工艺库以及预先设置的各类约束条件,选择最优的方式完成电路结构的设计。

l-3什么是综合?有哪些类型?综合在电子设计自动化中的地位是什么? P5什么是综合? 答:在电子设计领域中综合的概念可以表示为:将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程。

有哪些类型?答:(1)从自然语言转换到VHDL语言算法表示,即自然语言综合。

(2)从算法表示转换到寄存器传输级(RegisterTransport Level,RTL),即从行为域到结构域的综合,即行为综合。

(3)从RTL级表示转换到逻辑门(包括触发器)的表示,即逻辑综合。

EDA试题题库及参考答案

EDA试题题库及参考答案

一、选择题:(20分)1.大规模可编程器件主要有FPGA、CPLD两类,下列对CPLD结构与工作原理的描述中,正确的是:___D__A. CPLD是基于查找表结构的可编程逻辑器件B. CPLD即是现场可编程逻辑器件的英文简称C. 早期的CPLD是从FPGA的结构扩展而来D. 在Xilinx公司生产的器件中,XC9500系列属CPLD结构2.基于VHDL设计的仿真包括有①门级时序仿真、②行为仿真、③功能仿真和④前端功能仿真这四种,按照自顶向下的设计流程,其先后顺序应该是:_________DA.①②③④ B.②①④③C.④③②①D.②④③①3.下面对利用原理图输入设计方法进行数字电路系统设计,哪一种说法是正确的:__________BA.原理图输入设计方法直观便捷,很适合完成较大规模的电路系统设计B.原理图输入设计方法多用于较规范、规模不大的电路设计,和HDL代码描述方法均可以被综合,相得益彰C.原理图输入设计方法无法对电路进行功能描述D.原理图输入设计方法不适合进行层次化设计4.在VHDL语言中,下列对进程(PROCESS)语句的语句结构及语法规则的描述中,不正确的是:_______DA.PROCESS为一无限循环语句B.敏感信号发生更新时启动进程,执行完成后,等待下一次进程启动C.当前进程中声明的变量不可用于其他进程D.进程由说明语句部分、并行语句部分和敏感信号参数表三部分组成5.对于信号和变量的说法,哪一个是不正确的:_________AA.信号用于作为进程中局部数据存储单元B.变量的赋值是立即完成的C.信号在整个结构体内的任何地方都能适用D.变量和信号的赋值符号不一样6.进程中的信号赋值语句,其信号更新是___C____。

A.按顺序完成;B.比变量更快完成;C.在进程的最后完成;D.都不对。

7.VHDL语言共支持四种常用库,其中哪种库是用户的VHDL设计现行工作库:_______D A.IEEE库B.VITAL库C.STD库D.WORK工作库8.VHDL语言是一种结构化设计语言;一个设计实体(电路模块)包括实体与结构体两部分,结构体描述___________。

《EDA技术》试题及答案

《EDA技术》试题及答案

一、简答题:(30分,每小题5分)1.CPLD和FPGA有什么差异?在实际应用中各有什么特点?答:差异:(1)CPLD:复杂可编程逻辑器件,FPGA:现场可变成门阵列;(2)CPLD:基于乘积项技术的确定型结构,FPGA:基于查找表技术的统计型结构;(3)CPLD:5500 ~ 50000门,FPGA:1K ~ 10M 门。

实际应用中各自的特点:CPLD适用于逻辑密集型中小规模电路,编程数据不丢失,延迟固定,时序稳定;FPGA 适用于数据密集型大规模电路,需用专用的ROM 进行数据配置,布线灵活,但时序特性不稳定2.简述VHDL语言中端口模式IN,OUT,BUFFER和INOUT 各自的特点及OUT,BUFFER与INOUT的主要区别?答:端口模式中各自的含义与特点为:IN:输入,只读;OUT:输出,只写;BUFFER:带反馈的输出,可读可写;INOUT:双向,可读可写。

OUT,BUFFER,INOUT各自的区别:OUT模式下的信号,在程序中只能作为对象被赋值,不能作为源赋给其他信号;BUFFER模式下的信号,在程序中既可作为对象被赋值,又可作为源赋给其他信号,对象和源是同时发生,是同一个信号;INOUT模式下的信号,双向传输,同样既做对象又可作源,但对象和源不是同一个信号。

3.VHDL中有哪3种数据对象?详细说明它们的功能特点以及使用场所。

3种数据对象为:常量、信号、变量。

各自的功能特点和使用场所:常量:代表电路中一个确定的数,如电源、地等。

全局量,信号变量使用的地方都可用信号:代表电路中的某一条硬件连接线,包括输入、输出端口,信号赋值存在延迟。

全局量,使用场所:architecture、package、entitiy。

变量:代表电路中暂存某些值的载体。

变量赋值不存在延迟。

局部量,使用场所:process、function、procedure。

4.数字频率计功能是测量被测信号的频率,测量频率的基本原理是什么?实现的主要逻辑模块有那些?答:频率计测量频率的基本原理是:1秒时间内代测信号的脉冲个数。

EDA技能考试题目及评分标准

EDA技能考试题目及评分标准

乐山师范学院物电系EDA实验技能考试试题题一1位全加器原理图输入设计题目要求:一、口头回答该实验中各端口信号的涵义。

(50分)二、实验操作(50分)1、设计如图1所示的半加器,封装后作为1位全加器的底层元件。

2、设计如图2所示的一位全加器,进行编译综合仿真操作,分析仿真波形。

3、下载进行硬件测试。

(提示:选实验电路模式5,键1、键2、键3(PIO0/1/2)分别接ain、bin、cin;发光二极管D2、D1(PIO9/8)分别接sum和coun。

)图1图2题二2选1多路选择器VHDL设计题目要求:一、口头回答该实验中各端口信号的涵义。

(50分)二、实验操作(50分)1、按照文本设计的操作流程,根据2选1多路选择器的工作原理,编写2选1的VHDL 源程序(参考所附代码)。

做出仿真波形,下载进行硬件测试。

部分参考代码:PROCESS (a,b,s)BEGINIF s = '0' THENy <= a ;ELSE y <= b ;END IF;END PROCESS;2、选实验电路模式5,键1、键2、键3为输入信号a、b、s。

输出信号y锁定在目标芯片的20引脚。

题三D触发器的VHDL设计题目要求:一、口头回答该实验中各端口信号的涵义。

(50分)二、实验操作(50分)1、按MAX+plusⅡ的文本输入设计方法与流程完成D触发器的VHDL设计、软件编译、仿真分析、硬件测试及详细实验过程。

部分参考代码:ARCHITECTURE bhv OF DFF1 ISSIGNAL Q1 : STD_LOGIC ; --类似于在芯片内部定义一个数据的暂存节点 BEGIN PROCESS (CLK)BEGINIF CLK'EVENT AND CLK = '1' THENQ1 <= D ;END IF;Q <= Q1 ; --将内部的暂存数据向端口输出END PROCESS ;END bhv;2、锁定引脚、编译并编程下载。

eda实验考试题目.docx

eda实验考试题目.docx

设计实验与考核1、设计一个带计数使能、同步复位、带进位输出的增1六位二进制计数器,计数结果由共阴极七段数码管显示。

2、设计一个带计数使能、异步复位、带进位输出的增1二I•进制计数器,计数结果由共阴极七段数码管显示。

3、设计一个带计数使能、同步复位、同步装载的可逆七位二进制计数器,计数结果由共阴极七段数码管显示。

4、设计一个带计数使能、异步复位、异步装载、可逆计数的通用计数器。

计数结果由共阴极七段数码管显示。

5、设计一个具有16分频、8分频、4分频和2分频功能的分频器6、设计一个正负脉宽相等的通用分频器7、设计一个正负脉宽可控的16分频的分频器8、根据需要设计一个分频器:可以控制实现四种分频形式:第一•种:8分频、第二种:10分频、第三种:15分频、第四种:16分频,其屮8分频和16分频为正负脉宽相等的分频器9、设计一个M序列发生器,M序列为“111()0111”10、设计一个彩灯控制器,彩灯共有21个,每次顺序点亮相邻的3个彩灯,如此循环执行, 循环的方向可以控制11、设计一个具有左移、右移控制,同步并行装载和串行装载的8位串行移位寄存器,每次移位为1位12、设计-•个15人表决电路,参加表决者为15人,同意为1,不同意为0,同意者过半则表决通过,绿指示灯亮,表决不通过则红指示灯亮。

数码管显示赞成人数。

13、设计一个异步复位,同步并行装载的8位串行左移移位寄存器14、有16个开关,编号为0到15,编号0的优先级最高。

当某一个拨码开关为T'时由共阴极七段数码管显示其编号(可用16进制数显示,亦可用I •进制显示)15、设计一个全自动洗衣机水位控制器。

耍求:当水位超过某一上限值时,停止加水,启动洗衣机;当水位低于某一下限值时,加水,停止洗衣机;否则启动洗衣机,停止加水。

16、根据真值表设计一位全加器,然后用结构的描述方法设计一个6位加法器。

17、设计4位二进制数到BCD码(8421码)的转换器。

EDA 考试题目+ 万能版

EDA  考试题目+ 万能版

上次考试题目:(计数器是不同进制)1:计数器流水灯显示2:计数器流水灯显示加蜂鸣器报警3:计数器数码管显示4:计数器数码管显示加蜂鸣器报警5:点阵行显示(某一行的某几个点)6:点阵列显示(某一行的某几个点)7:静态显示8个数8:流水灯EDA考试资料万能终结版---------- 电子1101班昨天晚上才完成这份文档没来得及上传大家见谅!目录1.万能流水灯 (3)2分频模块 (4)3译码器模块 (4)4二选一模块 (5)5计数器模块 (6)6点阵行静态显示 (6)7点阵行动态扫描显示 (7)8点阵列动态扫描显示 (8)9点阵静态显示某一列 (9)10.万能计数器 (11)11.按键 (13)*************************************************************************** 1.万能流水灯,根据给CASE语句中的赋值可以实现各个时间--各种灯的跳变*************************************************************************** library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity led_water isport(clk:in std_logic;qout:out std_logic_vector(7 downto 0));end;architecture a of led_water issignal CQI:integer range 0 to 7 :=0;signal q0 :std_logic:='0';beginprocess(clk)variable count :integer range 0 to 10000000;beginif rising_edge(clk) thenif count<10000000 then count:=count+1;else q0<= NOT q0;count:=0;end if;end if;end process;process(q0)beginif rising_edge(q0) thenif CQI<7 then CQI<=CQI+1;else CQI<=0;end if;case CQI iswhen 0=> qout<="00000001";when 1=> qout<="00000010";when 2=> qout<="00000100";when 3=> qout<="00001000";when 4=> qout<="00010000";when 5=> qout<="00100000";when 6=> qout<="01000000";when 7=> qout<="10000000";end case;end if;end process;end;************************************************************************ 2.分频模块调整count的值就可以得到不同频率的分频器*********************************************************************** library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity fenpin isport ( clk :in std_logic;q :out std_logic);end fenpin;architecture bahave of fenpin issignal q0 :std_logic:='0';beginprocess(clk)variable count :integer range 0 to 10000000;beginif rising_edge(clk) thenif count<10000000 then count:=count+1;else q0<= NOT q0;count:=0;end if;end if;end process;q<=q0;end bahave;***************************************************************************** 3.译码器模块**************************************************************************** library ieee; --库调用use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;entity decl7s is --实体部分port(bcdin:in std_logic_vector(3 downto 0); --输入bcdinsegout:out std_logic_vector(7 downto 0)); --输出segoutend entity decl7s;architecture bhv of decl7s is --结构体beginprocess(bcdin)begincase bcdin is --以下是共阴数码管的数码显示情况when "0000"=>segout<="00111111";--输入是0时,则数码管上显示0when "0001"=>segout<="00000110";--输入是1时,则数码管上显示1when "0010"=>segout<="01011011";--输入是2时,则数码管上显示2when "0011"=>segout<="01001111";--输入是3时,则数码管上显示3when "0100"=>segout<="01100110";--输入是4时,则数码管上显示4when "0101"=>segout<="01101101";--输入是5时,则数码管上显示5when "0110"=>segout<="01111101";--输入是6时,则数码管上显示6when "0111"=>segout<="00000111";--输入是7时,则数码管上显示7when "1000"=>segout<="01111111";--输入是8时,则数码管上显示8when "1001"=>segout<="01101111";--输入是9时,则数码管上显示9when "1010"=>segout<="01110111";--输入是a时,则数码管上显示awhen "1011"=>segout<="01111100";--输入是b时,则数码管上显示bwhen "1100"=>segout<="00111001";--输入是c时,则数码管上显示cwhen "1101"=>segout<="01011110";--输入是d时,则数码管上显示dwhen "1110"=>segout<="01111001";--输入是e时,则数码管上显示ewhen "1111"=>segout<="01110001";--输入是f时,则数码管上显示fwhen others=>segout<="00000000";end case;end process;end architecture bhv;********************************************************************* 4.二选一模块******************************************************************** library ieee;use ieee.std_logic_1164.all;entity mux2_1 isport(s:in std_logic;bcd:in std_logic_vector(7 downto 0);y:out std_logic_vector(3 downto 0));end mux2_1;architecture bhv of mux2_1 isbeginwith s selecty<=bcd(3 downto 0) when '0',bcd(7 downto 4) when others;end bhv;********************************************************************* 5.计数器模块更改值可以实现不同计数的变化*********************************************************************library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity cnt24 isport(clk:in std_logic;BCD_out:out std_logic_vector(7 downto 0);reset:in std_logic);end cnt24;architecture bhv of cnt24 issignal shi:std_logic_vector(3 downto 0);signal ge:std_logic_vector(3 downto 0);beginprocess(reset,clk)beginif reset='0' thenshi<="0000";ge<="0000";elsif rising_edge(clk) thenif ge=3 and shi=2 then --------------------更改可实现进制改变ge<="0000";shi<="0000";elsif ge=9 thenge<="0000";shi<=shi+1;else ge<=ge+1;end if;BCD_out(7 downto 4)<=shi;BCD_out(3 downto 0)<=ge;end if;end process;end bhv;***************************************************************************** 6.点阵行静态显示通过更改可以显示不同的行***************************************************************************** library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity dianzhen isport(din:out std_logic_vector(3 downto 0);lie:out std_logic_vector(15 downto 0));end ;architecture one of dianzhen isbegindin<="0110";lie<=x"ffff";end;***************************************************************************** 7.点阵行动态扫描显示可更改频率***************************************************************************** library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity liushui isport(clk:in std_logic;L:buffer std_logic_vector(15 downto 0);Q:buffer std_logic_vector(3 downto 0));end;architecture one of liushui issignal clk1:std_logic;beginfenpin:process(clk)variable num:integer range 1 to 10000000;beginif falling_edge(clk) thenif num=1000000 thenclk1<=not clk1;num:=1;elsenum:=num+1;end if;end if;end process;xianshi:process(clk1)BEGINL<=X"FFFF";if falling_edge(clk1) thenQ<=Q+1;end if;end process;end one;******************************************************************************* 8点阵列动态扫描显示****************************************************************************** library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity dianzhen isport(clk:in std_logic;--时钟引脚16SLE:buffer std_logic_vector( 3 downto 0);-----选择行(69,70,71,72)L:out std_logic_vector(15 downto 0));----选择列(73,74,75,76,77,83,84,85,91,94, 96,97,98,99,100,103)end;architecture one of dianzhen issignal clk1:std_logic;signal M:std_logic_vector(3 downto 0);beginfenpin:process(clk)variable num:integer :=0;beginif falling_edge(clk) thenif num=30000 thennum:=0;clk1<=not clk1;else num:=num+1;end if;SLE<=SLE+1;end if;end process;xianshi:process(clk1)variable N:integer:=0;beginif falling_edge(clk1) thenif N=15 thenM<=M+1;N:=0;else N:=N+1;end if;end if;end process;zhuanma:process(M)begincase M is--"0000"when "0000"=>L<=X"0001";when "0001"=>L<=X"0002";when "0010"=>L<=X"0004";when "0011"=>L<=X"0008";when "0100"=>L<=X"0010";when "0101"=>L<=X"0020";when "0110"=>L<=X"0040";when "0111"=>L<=X"0080";when "1000"=>L<=X"0100";when "1001"=>L<=X"0200";when "1010"=>L<=X"0400";when "1011"=>L<=X"0800";when "1100"=>L<=X"1000";when "1101"=>L<=X"2000";when "1110"=>L<=X"4000";when "1111"=>L<=X"8000";END CASE;end process;end one;************************************************************************** 9点阵静态显示某一列更改L的值可实现************************************************************************** library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity dianzhen1 isport(clk:in std_logic;--时钟引脚16SLE:buffer std_logic_vector( 3 downto 0);-----选择行(69,70,71,72)L:out std_logic_vector(15 downto 0));----选择列(73,74,75,76,77,83,84,85,91,94,96,97,98,99,100,103)end;architecture one of dianzhen1 issignal clk1:std_logic;signal M:std_logic_vector(3 downto 0);beginfenpin:process(clk)variable num:integer :=0;beginif falling_edge(clk) thenif num=10000 thennum:=0;clk1<=not clk1;else num:=num+1;end if;end if;end process;xianshi:process(clk1)variable N:integer:=0;beginL< =X"0004";if falling_edge(clk1) thenSLE<=SLE+1;end if;end process;end one;*******************************************************************************10.万能计数器更改最大值即可包括蜂鸣器******************************************************************************* library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity smg isport(clk,rst,charge:in std_logic;ala :buffer std_logic;ws:buffer std_logic_vector(2 downto 0);Q:buffer std_logic_vector(6 downto 0));end entity;architecture one of smg issignal clk1,clk2,clk3:std_logic;signal shi,ge,cnt:std_logic_vector(3 downto 0);beginfenpin:process(clk)variable num,num0,num1:integer range 1 to 10000000;beginif falling_edge(clk) thenif num=1000 thenclk1<=not clk1;num:=1;else num:=num+1;end if;if num0=10000000 thenclk2<=not clk2;num0:=1;else num0:=num0+1;end if;if num1=10000 thenclk3<=not clk3;num1:=1;else num1:=num1+1;end if;end if;end process;weixuan:process(clk1)beginif falling_edge(clk1) thenif ws="001" thenws<="000";else ws<=ws+1;end if;end if;end process;jishi:process(clk2,rst,charge)beginif rst='1' thenshi<="0000" ;ge<="0000";elsif charge='1' and falling_edge(clk2) thenif shi="0001" and ge="0110"then-----------------------更改可改变进制(加)shi<="0000";ge<="0000";elsif ge="1001" thenshi<=shi+1;ge<="0000";else ge<=ge+1;end if;elsif charge='0' and falling_edge(clk2) thenif ge>0 thenge<=ge-1;elsif shi>0 and ge="0000" thenshi<=shi-1;ge<="1001";elseshi<="0101";ge<="1001";------------------更改可改变进制(减)end if;end if;end process;alarm:process(clk3,ge)beginif falling_edge(clk3) thenif ge="0000" and shi="0000" then clk3<=not clk3;end if;end if;end process;max2_1:process(ws)beginif ws="000" thencnt<=ge;end if;if ws="001" thencnt<=shi;end if;end process;yima:process(cnt)begincase cnt isWHEN"0000"=>Q<="0111111";WHEN"0001"=>Q<="0000110";WHEN"0010"=>Q<="1011011";WHEN"0011"=>Q<="1001111";WHEN"0100"=>Q<="1100110";WHEN"0101"=>Q<="1101101";WHEN"0110"=>Q<="1111101";WHEN"0111"=>Q<="0000111";WHEN"1000"=>Q<="1111111";WHEN"1001"=>Q<="1101111";WHEN"1010"=>Q<="1110111";WHEN"1011"=>Q<="1111100";WHEN"1100"=>Q<="0111001";WHEN"1101"=>Q<="1011110";WHEN"1110"=>Q<="1111001";WHEN"1111"=>Q<="1110001";WHEN OTHERS=>NULL;end case;end process;end one;******************************************************************************* 11.按键charge是按键rst是加减选择*******************************************************************************library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity smg isport(clk,rst,charge:in std_logic;ws:buffer std_logic_vector(2 downto 0);Q:buffer std_logic_vector(6 downto 0));end entity;architecture one of smg issignal clk1,clk2:std_logic;signal shi,ge,cnt:std_logic_vector(3 downto 0);signal keyin,keyout,q1,q2,q3:STD_LOGIC_VECTOR(3 DOWNTO 0);beginfenpin:process(clk)variable num,num0:integer range 1 to 10000000;beginif falling_edge(clk) thenif num=100000 thenclk1<=not clk1;num:=1;else num:=num+1;end if;if num0=10000000 thenclk2<=not clk2;num0:=1;else num0:=num0+1;end if;end if;end process;weixuan:process(clk1)beginif falling_edge(clk1) thenif ws="001" thenws<="000";else ws<=ws+1;end if;end if;end process;JIANPAN:process(clk1,charge)beginkeyin(0)<=charge;if falling_edge(clk1) thenq1<=keyin;q2<=q1;q3<=q2;end if;keyout<=q1 or q2 or q3;end process;jishi:process(rst,keyout)beginshi<="0011"; ----------------------------------------十位置位if rst='1' and falling_edge(keyout(0)) thenif ge="1001"thenge<="0000";else ge<=ge+1;end if;elsif rst='0' and falling_edge(keyout(0)) thenif ge="0000" thenge<="1001";else ge<=ge-1;end if;end if;end process;max2_1:process(ws)beginif ws="000" thencnt<=ge;end if;if ws="001" thencnt<=shi; ---------------------end if; ----------------------end process;yima:process(cnt)begincase cnt isWHEN"0000"=>Q<="0111111";--0--3FWHEN"0001"=>Q<="0000110";--1--06WHEN"0010"=>Q<="1011011";--2--5BWHEN"0011"=>Q<="1001111";--3--4FWHEN"0100"=>Q<="1100110";--4--66WHEN"0101"=>Q<="1101101";--5--6DWHEN"0110"=>Q<="1111101";--6--7DWHEN"0111"=>Q<="0000111";--7--07WHEN"1000"=>Q<="1111111";--8--7FWHEN"1001"=>Q<="1101111";--9--6FWHEN"1010"=>Q<="1110111";--A--77WHEN"1011"=>Q<="1111100";--B--7CWHEN"1100"=>Q<="0111001";--C--39WHEN"1101"=>Q<="1011110";--D--5EWHEN"1110"=>Q<="1111001";--E--79WHEN"1111"=>Q<="1110001";--F--79WHEN OTHERS=>NULL;end case;end process;end one;企鹅2013年12月27日。

EDA考试复习题目全集.docx

EDA考试复习题目全集.docx

《EDA 技术与项目训练》选择题1. 一个项目的输入输出端口是定义在A o A. 实体中B.结构体中C.任何位置D.进程体 2. 描述项目具有逻辑功能的是_ B ° A. 实体B.结构体C.配置D.进程 3. 关键字ARCHITECTURE 定义的是A 。

A. 结构体B.进程C.实体D.配置 4. MAXPLUSI1中编译VHDL 源程序时要求C 。

A.文件名和实体可不同名B.文件名和实体名无关C.文件名和实体名要相同D.不确定 5. 1987标准的VIIDL 语言对大小写是 D 。

A. 敏感的B.只能用小写C.只能用大写D.不敏感6. 关于1987标准的VHDL 语言中,标识符描述止确的是 _________ 。

A. 必须以英文字母开头B.可以使用汉字开头C.可以使用数字开头D.任何字符都可以7. 关于1987标准的VHDL 语言中,标识符描述正确的是B 。

A. 下划线可以连用 B.下划线不能连用 C.不能使用下划线 D.可以使用任何字符8. 符合1987VHDL 标准的标识符是 A 。

A. A_2B. A+2C. 2A 9. 符合1987VHDL 标准的标识符是—A 。

A. a 2 3B. a 2C. 2 2 a10. 不符合1987VHDL 标准的标识符是 C 。

A. a_l_inB. a_in_2C. 2_a11. 不符合1987VHDL 标准的标识符是 _________ oA. a2b2B. alblC. ad 1212. VIIDL 语言中变量定义的位置是 D A. 实体中中任何位置 B.实体中特定位置 C.结构体中任何位置D.结构体中特定位置 13. VIIDL 语言中信号定义的位置是 D A. 实体中任何位置 B.实体中特定位置 C.结构体中任何位置D.结构体中特定位置 14. 变量是局部量可以写在 B 。

A. 实体中B.进程中C.线粒体D.种子体中 15・变量和信号的描述正确的是A ___________ oA. 变量赋值号是:二B.信号赋值号是:二C.变量赋值号是〈二D.二者没有区别16・变量和信号的描述正确的是 _____ B 。

EDA试题——精选推荐

EDA试题——精选推荐

EDA试题⼀、填空(每空1 分,共20 分)1、CPLD是complex programmable logic devices,FPGA是field programmable gatearray。

2、常⽤的硬件描述语⾔有VHDL 、 verilog 、 ABEL。

3、VHDL语句包括顺序语句、并⾏语句。

4、设计过程中的仿真有⾏为仿真、功能仿真、时序仿真三种。

5、状态机由时序逻辑、组合逻辑两个进程构成。

6、VHDL 中,字符的表⽰是‘’,字符串的表⽰是“”。

7、数字系统主要包括数据处理⼦系统、控制⼦系统两部分。

8、VHDL 中有算术操作符、逻辑操作符、关系操作符、符号操作符四类操作符。

⼆、名词解释(每题5 分,共20 分)1、EDA 技术:P12、逻辑综合:P103、⽶⽴机:P2214、⾏为描述:P190三、简答题(每题2 分,共20 分)1、简述EDA 技术的特点,并列出 EDA ⼯程的设计流程。

1)、⽤软件的⽅式设计硬件;2)、⽤软件⽅式设计的系统到硬件系统的转换由有关的开发软件⾃动完成;3)、设计过程中可⽤有关软件进⾏各种仿真;4)、系统可现场编程,在线升级;5)、整个系统可集成在⼀个芯⽚上,体积⼩、功耗低、可靠性⾼;6)、从以前的“组合设计”到真正的“⾃由设计“;7)、设计的移植性好,效率⾼;8)、⾮常适合分⼯设计,团体协作。

2、简述顺序语句和并⾏语句的区别,信号赋值和变量赋值的区别顺序语句:P144;并⾏语句:P165信号赋值和变量赋值的区别:P144四、综合题(每题10 分,共40 分)1、⽤VHDL 描述⼀个3-8 线译码器,电路要求如下:输⼊:a、b、c ,输出:Y(7 DOWNTO 0),由输⼊信号编码的不同,分别在对应的输出位上输出为⾼电平,其余为0。

P1942、⽤VHDL 设计⼀个时钟使能的⼗进制计数器。

输⼊:CLK、CLR、ENA,输出:计数CQ(2 DOWNTO 0),进位:COP2053、设计⼀个全加器电路,设计⽅式不限。

《EDA技术与实践》期末复习资料(含答案)

《EDA技术与实践》期末复习资料(含答案)

泉州经贸职业技术学院《EDA技术与实践》期末复习资料(含答案)一、选择题1、在执行MAX+PLUSⅡ的 D 命令,可以精确分析设计电路输入与输出波形间的延时量。

A .Create default symbol B. SimulatorC. compilerD.Timing Analyzer2、VHDL常用的库是 AA. IEEEB.STDC. WORKD. PACKAGE3、下面既是并行语句又是串行语句的是 CA.变量赋值B.信号赋值C.PROCESS语句D.WHEN…ELSE语句4、在VHDL中,用语句 D 表示clock的下降沿。

A. clock’EVENTB. clock’EVENT AND clock=’1’C. clock=’0’D. clock’EVENT AND clock=’0’1. 一个项目的输入输出端口是定义在 A 。

A. 实体中B. 结构体中C. 任何位置D. 进程体2. 描述项目具有逻辑功能的是 B 。

A. 实体B. 结构体C. 配置D. 进程3. 关键字ARCHITECTURE定义的是 A 。

A. 结构体B. 进程C. 实体D. 配置4. MAXPLUSII中编译VHDL源程序时要求 C 。

A.文件名和实体可不同名B.文件名和实体名无关C. 文件名和实体名要相同D. 不确定5. 1987标准的VHDL语言对大小写是 D 。

A. 敏感的B. 只能用小写C. 只能用大写D. 不敏感6. 关于1987标准的VHDL语言中,标识符描述正确的是 A 。

A. 必须以英文字母开头B.可以使用汉字开头C.可以使用数字开头D.任何字符都可以7. 关于1987标准的VHDL语言中,标识符描述正确的是 B 。

A. 下划线可以连用B. 下划线不能连用C. 不能使用下划线D. 可以使用任何字符8. 符合1987VHDL标准的标识符是 A 。

A. A_2B. A+2C. 2AD. 229. 符合1987VHDL标准的标识符是 A 。

EDA技术与实验考题附答案

EDA技术与实验考题附答案

填空题1.VHDL与1985年正式推出,是目前标准化成都最高的硬件描述语言.2.IEEE于1987年将VHDL采纳为ieee#1076 标准.3.用VHDL书写的源文件,既是程序又是文档,既是工程技术人员之间交换信息的文件,又可作为合同签约者之间的文件.4.一般将一个完整VHDL程序称为设计实体.5.用VHDL设计的电路,既可以被高层次的系统调用,成为系统的一部分,也可以作为一个电路的功能块独立存在和独立运行.6.VHDL设计实体的基本结构由库、程序包、实体、结构体、配置、等部分构成.7.实体和结构体是设计实体的基本组成,它们可以构成最基本的VHDL程序.8.IEEE于1987年公布了VHDL的ieee#1076 -1987 语法标准.9.IEEE于1993年公布了VHDL的ieee#1076 -1993 语法标准.10.根据VHDL语法规则,在VHDL程序中使用的文字、数据对象、数据类型都需要预先定义.11.在VHDL中最常用的库是ieee. 标准库,最常用的程序包是std_logic_1146 程序包.12.VHDL的实体由实体声明部分和结构体组成.13.VHDL的实体声明部分指定了设计单元的输入、输出端口或引脚,它是设计实体对外的一个通信界面,是外界可以看到的部分.14.VHDL结构体用来描述设计实体的逻辑结构和逻辑功能,它由VHDL语句构成,是外界看不见的部分.15.在VHDL的端口声明语句中,端口方向包括in 、out 、inout 和Buffer(具有读功能的输出) .16.VHDL的数字型文字包括整数文字、实数文字、以数字基数表示的文字、物理量文字.1.17.VHDL的字符是以单引号括起来的数字、字母、符号.18.VHDL的标识符名必须以字母开头,后跟若干字母、数字或单个下划线构成,但最后不能为下划线.19.VHDL的数据对象包括变量、常量、信号,它们是用来存放各种类型数据的容器.20.VHDL的变量(V ARIABLE)是一个局部量,只能在进程、函数和过程中声明和使用.21.VHDL的信号(SIGNAL)是一种数值容器,不仅可以容纳当前值,也可以保持历史值.22.常数(CONSTANT)是程序中的一个恒定不变的值,一般在程序前段声明.23.VHDL的数据类型包括标量型、复合型、存取类型、文件型.24.VHDL的标量型(Scalar Type)是单元素的最基本数据类型,包括整数型、实数型、枚举型、时间型.25.在VHDL中,标准逻辑位数据有九种逻辑值.26.VHDL的操作符包括逻辑操作符(Logic Operator)、关系操作符(Relation Operator)、算术操作符(Arithmetic Operator)、符号操作符(Sign Operator)四类.27.在VHDL中,预定义的属性标识符可用于检出时钟边沿、完成定时检查、获得未约束的数据类型范围等.28.VHDL的基本描述语句包括并行语句、顺序语句.29.VHDL的顺序语句只能出现在进程、过程、函数中,是按程序书写的顺序自上而下、一条一条地执行.30.VHDL的并行语句在结构体中的执行是并行语句的,其执行方式与语句书写的顺序无关.31.在VHDL的各种并行语句间,可以用信号来交换信息.32.VHDL的PROCESS(进程)语句是由顺序语句组成的,但其本身却是并行语句.33.VHDL的并行信号赋值语句的赋值目标必须都是信号.34.VHDL的子程序有过程、函数两种类型.35.VHDL的过程分为过程首和过程体两部分,调用前需要将它们装入程序包中.36.VHDL的函数分为函数首、函数体两部分,调用前需要将它们装入程序包(Package)中.37.元件例化是将预先设计好的设计实体作为一个元件,连接到当前设计实体中一个指定的端口.38.在PC上或工作站利用VHDL进行项目设计,不允许在根目录下进行,必须在根目录下为设计建立一个工程目录(即文件夹).39.程序包是用VHDL语言编写的,其源程序也需要以。

EDA实验试题16.6(附答案)

EDA实验试题16.6(附答案)

1.用原理图输入法设计一位全加器,进行功能仿真,做出仿真波形。

参考实验一2.用原理图输入法设计一位半加器,进行功能仿真,做出仿真波形。

参考课本61页图3-53.用原理图输入法设计一位全加器,进行下载测试,参考实验一4.用原理图输入法设计一位半加器,进行下载测试,参考课本61页图3-55.用文本输入法设计一个分频电路,并进行功能测试。

以25M为信号源,得到一周期为1秒的方波脉冲。

library ieee; --调用库use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity fp is -----实体说明(实体名需与文件名一致)port(inclk:in std_logic; ------端口说明outputa:out std_logic);end fp;architecture arch_fp of fp is ------构造体说明signal fp:std_logic_vector(24 downto 0); ------信号定义signal f:std_logic;beginprocess(inclk) ------进程语句描述if (inclk'event and inclk='1') then ------将时钟分频至1Hzif fp=24999999 thenfp<="0000000000000000000000000";f<=not f;else fp<=fp+1;end if;end if;end process;outputa<=f;end arch_fp; -------构造体结束6.用文本输入法设计一个分频电路,并进行功能测试。

以25M为信号源,得到一周期为2秒的方波脉冲。

library ieee; --调用库use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity fp is -----实体说明(实体名需与文件名一致)port(inclk:in std_logic; ------端口说明outputa:out std_logic);end fp;architecture arch_fp of fp is ------构造体说明signal fp:std_logic_vector(24 downto 0); ------信号定义signal f:std_logic;beginprocess(inclk) ------进程语句描述beginif (inclk'event and inclk='1') then ------将时钟分频至1Hzif fp=124999999 thenfp<="0000000000000000000000000";f<=not f;else fp<=fp+1;end if;end if;end process;outputa<=f;end arch_fp; -------构造体结束7.用文本输入法设计一个50倍分频电路,进行功能仿真。

EDA考试题目和答案

EDA考试题目和答案

设计实验与考核1、设计一个带计数使能、异步复位、带进位输出的增1六位二进制计数器,计数结果由共阴极七段数码管显示。

答:library ieee;useuseentity counter isport(clk,clk1,en,clr:in std_logic;ledout:out std_logic_vector(6 downto 0);scanout,scanout1,co:out std_logic);end counter;architecture a of counter issignal cnt:std_logic_vector(7 downto 0);signal led:std_logic_vector(6 downto 0);signal scan:std_logic;signal hex:std_logic_vector(3 downto 0);beginprocess(clk)beginif(clk'event and clk='1')thenif en='1'thenif clr='1'thencnt<=(others=>'0');elseif cnt="00111111"thencnt<="00000000";co<='1';elsecnt<=cnt+'1';co<='0';end if;end if;end if;end if;end process;process(clk1)if clk1'event and clk1='1'thenscan<=not scan;end if;Scanout=scan;Scanout1=not scan;end process;ledout<=not led;hex<=cnt(7 downto 4) when scan='1'else cnt(3 downto 0);with hex selectled<="1111001"when"0001","0100100"when"0010","0110000"when"0011","0011001"when"0100","0010010"when"0101","0000010"when"0110","1111000"when"0111","0000000"when"1000","0010000"when"1001","0001000"when"1010","0000011"when"1011","1000110"when"1100","0100001"when"1101","0000110"when"1110","0001110"when"1111","1000000"when others;end a;2、设计一个带计数使能、同步复位、带进位输出的增1二十进制计数器,计数结果由共阴极七段数码管显示。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

填空题1.VHDL与1985年正式推出,是目前的硬件描述语言.2.IEEE于1987年将VHDL采纳为标准.3.用VHDL书写的源文件,既是又是,既是工程技术人员之间交换信息的文件,又可作为合同签约者之间的文件.4.一般将一个完整VHDL程序称为.5.用VHDL设计的电路,既可以被高层次的系统调用,成为系统的一部分,也可以作为一个电路的功能块和.6.VHDL设计实体的基本结构由、、、、、等部分构成.7.和是设计实体的基本组成,它们可以构成最基本的VHDL程序.8.IEEE于1987年公布了VHDL的语法标准.9.IEEE于1993年公布了VHDL的语法标准.10.根据VHDL语法规则,在VHDL程序中使用的文字、数据对象、数据类型都需要.11.在VHDL中最常用的库是标准库,最常用的程序包是程序包.12.VHDL的实体由部分和组成.13.VHDL的实体声明部分指定了设计单元的或,它是设计实体对外的一个通信界面,是外界可以看到的部分.14.VHDL结构体用来描述设计实体的和,它由VHDL语句构成,是外界看不见的部分.15.在VHDL的端口声明语句中,端口方向包括、、和.16.VHDL的数字型文字包括、、、.1.17.VHDL的字符是以单引号括起来的数字、字母、符号.18.VHDL的标识符名必须以,后跟若干字母、数字或单个下划线构成,但最后不能为.19.VHDL的数据对象包括、、,它们是用来存放各种类型数据的容器.20.VHDL的变量(V ARIABLE)是一个,只能在进程、函数和过程中声明和使用.21.VHDL的信号(SIGNAL)是一种数值容器,不仅可以容纳,也可以保持.22.常数(CONSTANT)是程序中的一个的值,一般在声明.23.VHDL的数据类型包括、、、.24.VHDL的标量型(Scalar Type)是单元素的最基本数据类型,包括、、、.25.在VHDL中,标准逻辑位数据有种逻辑值.26.VHDL的操作符包括逻辑操作符(Logic Operator)、关系操作符(Relation Operator)、算术操作符(Arithmetic Operator)、符号操作符(Sign Operator)四类.27.在VHDL中,预定义的可用于检出时钟边沿、完成定时检查、获得未约束的数据类型范围等.28.VHDL的基本描述语句包括、.29.VHDL的顺序语句只能出现在、、中,是按程序书写的顺序自上而下、一条一条地执行.30.VHDL的并行语句在结构体中的执行是的,其执行方式与语句书写的顺序无关.31.在VHDL的各种并行语句间,可以用来交换信息.32.VHDL的PROCESS(进程)语句是由组成的,但其本身却是.33.VHDL的并行信号赋值语句的赋值目标必须都是.34.VHDL的子程序有、两种类型.35.VHDL的过程分为过程首和过程体两部分,调用前需要将它们装入中.36.VHDL的函数分为、两部分,调用前需要将它们装入程序包(Package)中.37.元件例化是将预先设计好的设计实体作为一个,连接到当前设计实体中一个指定的.38.在PC上或工作站利用VHDL进行项目设计,不允许在下进行,必须在根目录下为设计建立一个工程目录(即文件夹).39.程序包是用VHDL语言编写的,其源程序也需要以文件类型保存.40.VHDL的源文件是用EDA工具的文本编辑方式输入的,因此称为.单项选择题1.IEEE于1987年公布了VHDL的()语法标准A.IEEE STD 1076-1987 B.RS232C.IEEE.STD-LOGIC-1164 D.IEEE STD 1076-19932.IEEE于1993年公布了VHDL的()语法标准A.IEEE STD 1076-1987 B.RS232C.IEEE.STD-LOGIC-1164 D.IEEE STD 1076-19933.一个能为VHDL综合器接受,并能作为一个独立的设计单元的完整的VHDL程序称为()A.设计输入B.设计输出C.设计实体D.设计结构4.VHDL的设计实体可以被高层次的系统(),成为系统的一部分A.输入B.输出C.仿真D.调用5.VHDL最常用的库是()A.IEEE B.STD C.WORK D.PACKAGE6.VHDL的实体声明部分用来指定设计单元的()A.输入端口B.输出端口C.引脚D.以上均可7.一个实体可以拥有一个或多个()A.设计实体B.结构体C.输入D.输出8.在VHDL的端口声明语句中,用()声明端口为输入方向A.IN B.OUT C.INOUT D.BUFFER9.在VHDL的端口声明语句中,用()声明端口为输出方向A.IN B.OUT C.INOUT D.BUFFER10.在VHDL的端口声明语句中,用()声明端口为双向方向A.IN B.OUT C.INOUT D.BUFFER11.在VHDL的端口声明语句中,用()声明端口为具有读功能的输出方向A.IN B.OUT C.INOUT D.BUFFER12.在VHDL中用()来把特定的结构体关联一个确定的实体,为一个大型系统的设计提供管理和进行工程组织A.输入B.输出C.综合D.配置13.在VHDL中,45-234-287属于()文字A.整数B.以数制基数表示的C.实数D.物理量14.在VHDL中,88-670-551.453-909属于()文字A.整数B.以数制基数表示的C.实数D.物理量15.在VHDL中,16#FE#属于()文字A.整数B.以数制基数表示的C.实数D.物理量16.在VHDL中,100m属于()文字A.整数B.以数制基数表示的C.实数D.物理量17.在VHDL标识符命名规则中,以()开头的标识符是正确的A.字母B.数字C.字母或数字D.下划线18.在VHDL中,可以用()表示数据或地址总线的名称A.下标名B.段名C.总线名D.字符串19.在下列标识符中,()是VHDL合法标识符A.4h_adde B.h_adde_ C.h_adder D._h_adde20.在下列标识符中,()是VHDL错误的标识符A.4h_adde B.h_adde4 C.h_adder_4 D.h_adde21.在VHDL中,()不能将信息带出对它定义的当前设计单元A.信号B.常量C.数据D.变量22.在VHDL中,()的数据传输是立即发生的,不存在任何的延时行为A.信号B.常量C.数据D.变量23.在VHDL中,()的数据传输不是立即发生的,目标信号的赋值是需要一定延时A.信号B.常量C.数据D.变量24.在VHDL中,为目标变量的赋值符号是()A.= :B.= C.:= D.<=25.在VHDL中,为目标信号的赋值符号是()A.= :B.= C.:= D.<=26.在VHDL中,为定义信号名时,可以用()符号为信号赋值A.= :B.= C.:= D.<=27.在VHDL中,()是单元素的最基本数据类型,通常用于描述一个单值的数据对象A.标量型B.复合类型C.存取类型D.文件类型28.在VHDL中,数组型(Array)和记录型(Record) 属于()数据A.标量型B.复合类型C.存取类型D.文件类型29.在VHDL的IEEE标准库中,预定义的标准逻辑位数据STD-LOGIC有()种逻辑值.A.2 B.3 C.8 D.930.在VHDL的IEEE标准库中,预定义的位数据类型BIT有()种逻辑值.A.2 B.3 C.8 D.931.在VHDL的IEEE标准库中,预定义的标准逻辑位STD-LOGIC的数据类型中的数据是用()表示的.A.小写字母B.大写字母C.大或小写字母D.全部是数字32.在VHDL中,加“+”和减“—”算术运算的操作数据是()数据类型A.整型B.实型C.整型或实型D.任意类型33.在VHDL中,乘“*”和除“/”算术运算的操作数据是()数据类型A.整型B.实型C.整型或实型D.任意类型34.在VHDL中,用语句()表示检测clock的上升沿A.clock’EVENT B.clock’EVENT AND clock=’1’C.clock=’1’D.clock’EVENT AND clock=’0’35.在VHDL中,用语句()表示检测clock的下降沿A.clock’EVENT B.clock’EVENT AND clock=’1’C.clock=’1’D.clock’EVENT AND clock=’0’36.在VHDL中,IF语句中至少应有一个条件语句,条件语句必须由()表达式构成A.BIT B.STD_LOGIC C.BOOLEAN D.任意37.在VHDL的CASE语句中,条件语句中的“=>”不是操作符,它只相当于()的作用.A.IF B.THEN C.AND D.OR38.在VHDL的FOR_LOOP语句中的循环变量是一个临时变量,属于LOOP语句的局部变量,(B)事先声明A.必须B.不必C.其类型要D.其属性要39.在VHDL中,语句“FOR n IN 0 TO 7 LOOP”定义循环次数为()次A.8 B.7 C.0 D.140.在VHDL中,含W AIT语句的进程PROCESS的括弧中后()再加敏感信号,否则是非法的A.可以B.不能C.任意D.只能41.在VHDL的并行语句之间,可以用()来传送往来信息A.变量B.变量和信号C.信号D.常量42.在VHDL中,PROCESS结构是由()语句构成的A.顺序B.顺序和并行C.并行D.任何43.在VHDL的进程语句格式中,敏感信号表列出的是设计电路的()信号A.输入B.输入和输出C.输出D.时钟44.VHDL的块语句是并行语句结构,它的内部是由()语句构成的A.并行和顺序B.顺序C.并行D.任意45.在VHDL中,条件赋值语句WHEN_ELSE属于()语句A.并行兼顺序B.顺序C.并行D.不存在的46.过程调用前需要将过程的过程首和过程体装入()中A.源程序B.结构体C.程序包D.设计实体47.在元件例化(COMPONENT)语句中,用()符号实现名称映射,将例化元件端口声明语句中的信号名与PORT MAP()中的信号名关联起来A.= B.:= C.<= D.=>48.VHDL的STD库包含STANDARD和TEXTIO程序包,它们是文件()的程序包A.输入B.输入/输出C.输出D.编辑49.VHDL的WORK库是用户设计的现行工作库,用于存放()的工程项目A.用户自己设计B.公共程序C.共享数据D.图形文件50.在VHDL中,为了使已声明的数据类型、子程序、元件能被其他设计实体调用或共享,可以把它们汇集在()中A.设计实体B.程序库C.结构体D.程序包。

相关文档
最新文档