文档库

最新最全的文档下载
当前位置:文档库 > EDA期末考试试题

EDA期末考试试题

第一部分:填空题

1.一般把EDA技术的发展分为CAD、CAE和EDA三个阶段,并向着ESDA方向发展。

2.EDA技术在应用设计领域主要包含哪四个方面的内容(1)HDL (2)PLD

(3)EDA工具软件(4)EDA开发系统。

3.EDA技术的基本特征(1)自顶向下的设计方法;(2)采用硬件描述语言;(3)高层综合和优化;(4)并行工程;(5)开放性和标准化。

4.当前最流行的并成为IEEE标准的硬件描语言是V HDL和Verilog-HDL。

5.什么是PLD?

答: PLD,Programmable-Logic-Device,即可编程逻辑器件。是一种具有内建结构、由用户编程以实现某种逻辑功能的新型逻辑器件。

6.SPLD的基本结构框图是什么?

EDA期末考试试题

7.一般CPLD器件至少包含可编程逻辑宏单元,可编程I/O单元和可编程内部连线3种基本结构。

一般FPGA器件至少包含可编程逻辑功能块/CLB、IOB/可编程I/O块和PI/可编程内部互连三类可编程资源。

8.用PROM完成半加器/全加器的示意图。

9.使用方框图示意出采用硬件描述语言设计硬件电路进行由上而下的设计的三个层次为:

EDA期末考试试题

10.可编程逻辑器件的发展趋势在哪5个方面(1)向更大规模、更高集成度的片上系统方向发展(2)向低电压、低功耗的绿色器件方向发展(3)向更高速可预测延时的方向发展(4)向在PLD内嵌入多种功能模块的方向发展(5)向模数混合可编程的方向发展11.目前,在PLD器件制造与生产领域的三大公司为Altera、Xilinx和Lattice 12.FPGA的发明者是Xilinx公司;ISP编程技术的发明者是Lattice公司。

13、目前常见的可编程逻辑器件的编程和配置工艺包括基于E2PROM/Flash技术、基于

SRAM查找表的编程单元和基于反熔丝编程单元。

14、基于EPROM、E2PROM和快闪存储(flash)器件的可编程器件,在系统断电后编程信

息不丢失

15、采用SRAM结构的的可编程器件,在系统断电后编程信息丢失

16、V erilog-HDL于1983年推出,是在C语言的基础上演化而来的。

于1995年正式采纳为IEEE标准,其代号为Verilog-HDL1634-1995。

17、一个基本的Verilog-HDL程序由模块构成。

18、一个完整的Verilog-HDL设计模块包括:模块关键字和模块名、端口列表、端口定义、

和功能描述4部分。

19、V erilog-HDL模块的I/O端口声明用来声明模块端口定义中各端口数据流动方向,包括

输入端口、输出端口和双向端口。

20、V erilog-HDL语言的三种常用的模型描述方法为行为描述、结构描述和数据流描述。21.V erilog-HDL的数值集合由哪四种基本的值组成(1)0(2)1(3)x(4)z。

22、10’hxf=10’xxxxxx1111;

10’hzf=10’zzzzzz1111;

23、标识符count、Count、COUNT是代表同一标识符吗?不是,因为标识符区分大小写。

24、wor和trior连线类型,在多重驱动时,具有线或特性的连线;wand和triand

连线类型,在多重驱动时,具有线与特性的连线。

25、Wire[15:0] wire-b表示连线宽度为16 位,其最高位为15 ,最低位为0 。

26、tri[7:0]bus表示定义了一个8位宽的线矢量,名字叫bus 。

27、常用的register 型变量主要为reg 、integer 、time 和real 四种。

28、若a=5’b10x01,b=5’b10x01,则

a= =b的结果为x a= = =b的结果为 1

29、若A=5’b11011,B=5’b10101,则有

&A=0 |B=1 ~A=5’b00100A&B=5’b10001

30、若A=8’b1000_0100

则A<<3的结果为8’b00100000A>>3的结果为8’b00010000;

31、对于Verilog-HDL语言中的关键字,在建模时都必须小写。

32、MAX+ plusⅡ软件是Altera公司自己开发的第三代PLD开发软件。

33、MAX+ plusⅡ软件支持的设计的方式有图形输入、文本输入、波形输入和符号输入等不

同的编辑方式。

34.MAX+ plusⅡ软件环境下,执行原理图输入设计法,应选择图形输入方式。其设计文件保存的扩展名应为.gdf .

若在MAX+ plusⅡ软件环境下,执行文本输入设计法,应选择文本输入方式。对于Verilog 语言其设计文件保存的扩展名应为.v .

第一部分思考题:

1、谈谈你对EDA技术的理解。(什么是EDA)。

EDA技术就是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件的方式设计的电子系统到硬件系统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形成集成电子系统或专用集成芯片的一门新技术,或称为IES/ASIC自动设计技术。

2、EDA技术的精髓是什么?它们各自的含义是什么?

答:精髓是建模、仿真、综合。建模指的是用硬件描述语言描述电路的功能;仿真指的是验证所建模型的电路功能;综合是指把软件模型转化为硬件电路。

3.简要解释建模、仿真和综合的含义。

答:建模是指用硬件描述语言描述电路的功能。仿真是指验证电路的功能。综合是指把软件模型转化为硬件电路。

4、EDA技术的主要特征有哪些?

答:自顶向下的设计方法;采用硬件描述语言;高层综合优化;并行工程;开放性和标准化。

5、什么是硬件描述语言?用硬件描述语言设计电路有哪些优点?

答:是一种用于设计硬件电子系统的计算机语言,它用软件编程的方式来描述电子系统的功能、电路结构和连接形式;与传统的门级描述方式相比,它更适合复杂数字电子系统的设计。

突出的优点:

①语言的公开可利用性;

②设计与工艺的无关性;

③宽范围的描述能力;

④便于组织大规模系统的设计;

⑤便于设计的复用、交流、保存和修改等。

6、Top-Down与Bottom-Up的硬件电路的设计方法各有何优缺点?

答:Top-Down的设计方法有利于早期发现结构设计上的错误,避免设计工作的浪费,减少了逻辑功能仿真的工作量,提高了设计的一次成功率。

6、描述用Verilog-HDL语言,建模的一般步骤(流程)?

EDA期末考试试题

片上,体积小、功耗低、可靠性高。

3、从使用的角度讲,EDA技术主要包括几个方面的内容?答:EDA技术的学习主要应掌握四个方面的内容:①大规模可编程逻辑器件;②硬件描述语言;③软件开发工具;

④实验开发系统。其中,硬件描述语言是重点。

8、硬件描述语言VHDL的特点是什么?

VHDL是一种具备形式化、层次化和规范化的硬件描述语言。1硬件相关结构2 VHDL的并发性3混合级描述以及混合级模拟。

9、对于目标器件为FPGA/CPLD的VHDL设计,其工程设计包括几个主要步骤?每步的作用是什么?每步的结果是什么?

答:第一:需要进行“源程序的编辑和编译”—用一定的逻辑表达手段将设计表达出来;

第二:要进行“逻辑综合”---将用一定的逻辑表达手段将表达出来的设计经过一系列的操作,分解成一系列的逻辑电路及对应的关系(电路分解);

第三:要进行目标器件的“布线/适配”---在选用的目标器件中建立这些基本逻辑电路的对应关系(逻辑实现)

第四:目标器件的编程下载---将前面的软件设计经过编程变成具体的设计系统(物理实

现);最后要进行硬件仿真/硬件测试---验证所设计的系统是否符合要求。同时,在过程中要进行有关“仿真”---模拟有关设计结果与设计构想是否相符。设计基本流程如图所示。

10、IP是什么?IP与EDA技术的关系是什么?

答:IP在EDA技术开发中具有十分重要的地位;与EDA、固IP、硬IP软IP通常是以硬件描述语言

HDL源文件的形式出现。而IP的产生可以简化EDA设计的复杂度。

11、表达式C<=A+B中,A、B和C的数据类型都是STD_LOGIC_VECTOR,是否能直接进行加法运算?说明原因和解决办法。

12、VHDL中有哪三种数据对象?详细说明它们的功能特点及使用方法。

答:在VHDL中,数据对象(Data Objects)类似于一种容器,它接受不同数据类型的赋值。

数据对象有三种,即常量(CONSTANT)、变量(V ARIABLE)和信号(SIGNAL)。

前两种可以从传统的计算机高级语言中找到对应的数据类型,其语言行为与高级语言

中的变量和常量十分相似。但信号是具有更多的硬件特征的特殊数据对象,是VHDL中最

有特色的语言要素之一。

1)常量(CONSTANT) 常量代表数字电路中的电源、地、恒定逻辑值等常数;常量的定义和设置主要是为了使设计实体中的常数更容易阅读和修改。例如,将位矢的宽度定义为一个常量,只要修改这个常量就能很容易地改变宽度,从而改变硬件结构。在程序中,常量是一个恒定不变的值,一旦作了数据类型的赋值定义后,在程序中不能再改变,因而具有全局意义。

2)变量(V ARIABLE) 变量代表暂存某些值的载体,变量常用在实现某种算法的赋值语句中;在VHDL语法规则中,变量是一个局部量,只能在进程和子程序中使用。变量不能将信息带出对它作出定义的当前设计单元。变量的赋值是一种理想化的数据传输,是立即发生,不存在任何延时的行为。

3)信号(SIGNAL) 信号代表物理设计中的某一条硬件连接线,包括输入、输出端口。是描述硬件系统的基本数据对象。信号可以作为设计实体中并行语句模块间的信息交流通道。

在VHDL中,信号及其相关的信号赋值语句、决断函数、延时语句等很好地描述了硬

件系统的许多基本特征。如硬件系统运行的并行性;信号传输过程中的惯性延时特性;多驱

动源的总线行为等。时序电路中触发器的记忆特性。

信号作为一种数值容器,不但可以容纳当前值,也可以保持历史值。这一属性与触发器的记忆功能有很好的对应关系。

13、信号与变量的区别有哪些?信号可以用来描述哪些硬件特性?

答:变量赋值与信号赋值的区别在于,变量具有局部特征,它的有效只局限于所定义的一个进程中,或一个子程序中,它是一个局部的、暂时性数据对象(在某些情况下)。对于它的赋值是立即发生的(假设进程已启动),即是一种时间延迟为零的赋值行为。信号则不同,信号具有全局性特征,它不但可以作为一个设计实体内部各单元之间数据传送的载体,而且可通过信号与其他的实体进行通信(端口本质上也是一种信号)。信号的赋值并不是立即发生的,它发生在一个进程结束时。赋值过程总是有某种延时的,它反映了硬件系统并不是立即发生的,它发生在一个进程结束时。赋值过程总是有某些延时的,它反映了硬件系统的重要特性,综合后可以找到与信号对应的硬件结构,如一根传输导线、一个输入/输出端口或一个D触发器等。

14、名词解释:VHDL、.实体说明、.结构体、类属表、数据对象、并行语句、程序包。

答:1)VHDL(Very high speed intergated circuit Hardware Description Language):非常

高速集成电路的硬件描述语言。

2)实体说明:用来描述电路器件的外部情况及各信号端口的基本性质。

3)结构体:通过若干并行语句来描述设计实体的逻辑功能(行为描述)或内部电路结构(结构描述),从而建立设计实体输出与输入之间的关系。

4)类属表:用来确定设计实体中定义的局部常数,用以将信息参数传递到实体,用类属表指明器件的一些特征。最常用的是上升沿和下降沿之类的延迟时间,负载电容、驱动能力和功耗等。

5)数据对象:数据对象是数据类型的载体,共有三种形式的对象:Constant(常量)、Variable(变量)、Signal(信号)。

6)并行语句:并行语句有五种类型,可以把它们看成结构体的五种子结构。这五种语句结构本身是并行语句,但内部可能含有并行运行的逻辑描述语句或顺序运行的逻辑描述语句,如进程内部包含的即为顺序语句。五种语句结构分别为块语句、进程语句、信号赋值语句、子程序调用语句和元件例化语句。

7)程序包:程序包可定义一些公用的子程序、常量以及自定义数据类型等。各种VHDL编译系统都含有多个标准程序包,如Std-Logic-1164和Standard程序包。用户也可已自行设计程序包。程序包由两个独立的单元组成:程序包声明单元和程序包体单元构成。

8、元件例化语句的作用是什么?答:元件例化语句作用:把已经设计好的设计实体称为一个元件或一个模块,它可以被高层次的设计引用。是使VHDL设计构成自上而下层次设计的重要途径。

15、信号与变量的区别有哪些?信号可以用来描述哪些硬件特性?

答:变量赋值与信号赋值的区别在于,变量具有局部特征,它的有效只局限于所定义的一个进程中,或一个子程序中,它是一个局部的、暂时性数据对象(在某些情况下)。对于它的赋值是立即发生的(假设进程已启动),即是一种时间延迟为零的赋值行为。

信号则不同,信号具有全局性特征,它不但可以作为一个设计实体内部各单元之间数据传送的载体,而且可通过信号与其他的实体进行通信(端口本质上也是一种信号)。信号的赋值并不是立即发生的,它发生在一个进程结束时。赋值过程总是有某种延时的,它反映了硬件系统并不是立即发生的,它发生在一个进程结束时。赋值过程总是有某些延时的,它反映了硬件系统的重要特性,综合后可以找到与信号对应的硬件结构,如一根传输导线、一个输入/输出端口或一个D触发器等。

16、什么是并行语句?什么是顺序语句?

答:并行语句主要用来描述模块之间的连接关系,顺序语句一般用来实现模块算法部分。

17、进程语句的特点是什么?

答:进程(PROCESS)语句是最具VHDL语言特色的语句。因为它提供了一种用算法(顺序语句)描述硬件行为的方法。进程实际上是用顺序语句描述的一种进行过程,也就是说进程用于描述顺序事件。

主要特点有:进程与进程或其它并发语句之间的并发性;进程内部的顺序性;进程的启动于挂起(由敏感信号的变化来启动),并不是任何时候都处于启动状态。:进程与进程或其它并发语句之间的通信。

18、什么是重载运算符?VHDL的IEEE库中的哪个程序包预定义了该操作符?

答:为不同数据类型间的运算带来极大的方便, 通过重新定义运算符的方式,允许被重载的运算符能够对新的数据类型进行操作,或者允许不同的数据类型之间用此运算符进行运算。这就是重载运算符。VHDL的IEEE库中的STD_LOGIC_UNSIGNED程序包预定义了该操作符。

19、并行信号赋值语句有哪三种形式?条件信号赋值语句又分别与什么语句等效?答:简单信号赋值语句、条件信号赋值语句和选择信号赋值语句。条件信号赋值语句与进程中的多选择IF语句等价。

20、Case语句有什么特点?其分支条件使用时有哪些注意事项?

答:CASE语句根据满足的条件直接选择多项顺序语句中的一项执行。用来描述总线或编码、译码行为。可读性比IF语句强。

使用CASE语句需注意以下几点:

(1) 条件句中的选择值必须在表达式的取值范围内。

(2) 除非所有条件句中的选择值能完整覆盖CASE语句中表达式的取值,否则最末一个条件句中的选择必须用“OTHERS”表示。它代表已给的所有条件句中未能列出的其他可能的取值,这样可以避免综合器插入不必要的寄存器。这一点对于定义为STD_LOGIC和STD_LOGIC_VECTOR数据类型的值尤为重要,因为这些数据对象的取值除了1和0以外,还可能有其他的取值,如高阻态Z、不定态X 等。

(3) CASE语句中每一条件句的选择只能出现一次,不能有相同选择值的条件语句出现。

(4) CASE语句执行中必须选中,且只能选中所列条件语句中的一条。这表明CASE语句中至少要包含一个条件语句。

21、元件例化语句的作用是什么?如何进行元件例化?元件例化时端口映射有哪两种方式?有什么注意事项?

答:把低层次元件安装(调用)到当前层次设计实体内部的过程。包括类属参数传递、元件端口映射。例化名称:例化元件名称[GENERIC MAP(类属名称=﹥表达式--类属参数的映射的对应关系{,类属名称=﹥表达式})][端口名称=﹥]表达式--元件端口的映射{,[端口名称=﹥]表达式});元件例化时端口映射有两种方式:名称关联方式:低层次端口名=﹥当前层次端口名、信号名;位置关联方式:(当前层次端口名,当前层次端口名,…);

22.‘简述Quartus II的设计流程。

答:Quartus II的设计过程包括设计项目的建立与设计的输入、设计编译、设计校验(仿真和定时分析)、器件编程四个步骤。

设计输入:可以采用原理图输入、HDL语言描述、及波形输入等几种方式。

设计编译:先根据设计要求设定编译参数和编译策略,如器件的选择、逻辑综合方式的选择等。然后根据设定的参数和策略对设计项目进行网表提取、逻辑综合和器件适配,并产生报告文件、延时信息文件及编程文件,供分析仿真和编程使用。

设计校验(项目仿真):包括功能仿真、时序仿真和定时分析,可以利用软件的仿真功能来验证设计项目的逻辑功能是否正确。

器件编程与验证:用经过仿真确认后的编程文件通过编程器(Programmer)将设计下载到实际芯片中,最后测试芯片在系统中的实际运行性能。

在设计过程中,如果出现错误,则需重新回到设计输入阶段,改正错误或调整电路后重复上述过程。

或者:

步骤1:建立工作库文件夹;2:编辑设计文件;3:存盘,注意实体名与文本取名一致;4:创建工程;5:选择目标器件;6:启动编译;7:建仿真波形文件;8:仿真测试和波形分析;9:引脚锁定并编译;10:编程下载/配置;11:硬件测试。

23、设计项目的验证有哪几种方法?答:包括功能仿真、时序仿真和定时分析。功能仿真又称前仿真,是在不考虑器件延时的理想情况下的一种项目验证方法,通过功能仿真来验证一个项目的逻辑功能是否正确。时序仿真又称模拟仿真或后仿真,是在考虑设计项目具体适配器件的各种延时的情况下的一种项目验证方法。时序仿真不仅测试逻辑功能,还测试目标器件最差情况下的时间关系。定时分析可以分析各个信号到输出端的时间延迟,可以给出延迟矩阵和最高工作频率,还可分析信号的建立、保持时间。

24、什么叫功能仿真?什么叫模拟仿真?两者有什么区别?

答:功能仿真又称前仿真,是在不考虑器件延时的理想情况下的一种项目验证方法,通过功能仿真来验证一个项目的逻辑功能是否正确。时序仿真又称模拟仿真或后仿真,是在考虑设计项目具体适配器件的各种延时的情况下的一种项目验证方法。时序仿真不仅测试逻辑功能,还测试目标器件最差情况下的时间关系。

25、简述层次结构设计的优点。答:层次化设计是一种模块化的设计方法,设计人员对设计的描述由上至下逐步展开,符合常规的思维习惯;由于顶层设计与具体的器件和工艺无关,因此易于在各种可编程逻辑器件中间进行移植。层次化的设计方法可以使多个设计人员同时进行操作。有利于对设计任务进行合理的分配并用系统工程的方法对设计进行管理。

26、在数字系统设计中锁定引脚的作用是什么?

答:将设计文件中的输入、输出信号定位到所选器件的具体物理管脚上。

名词解释

FPGA 现场可编程门阵列

CPLD 复杂可编程逻辑器件

EDA 电子设计自动化

IP 知识产权核

SOC 单芯片系统

FPGA 现场可编程门阵列

LUT 查找表

EDA 电子设计自动化

Synthesis 综合

LPM 参数可定制宏模块库

VHDL 超高速集成电路硬件描述语言

RTL 寄存器传输级

SOPC 可编程片上系统

EAB 嵌入式阵列块

ASIC 专用集成电路

RTL 寄存器传输级

UART 串口(通用异步收发器)

ISP 在系统编程

IEEE 电子电气工程师协会

LAB逻辑阵列块