EDA期末考试试题 下载本文

内容发布更新时间 : 2024/5/4 12:05:13星期一 下面是文章的全部内容请认真阅读。

第一部分:填空题

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标准的硬件描语言是 VHDL 和Verilog-HDL。 5.什么是PLD?

答: PLD,Programmable-Logic-Device,即可编程逻辑器件。是一种具有内建结构、由用户编程以实现某种逻辑功能的新型逻辑器件。 6.SPLD的基本结构框图是什么?

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

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

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

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

行为级仿真 RLT级仿真 设计规格 行为级描述 RLT级描述

1 2

输出门级网表 门级仿真、定时检查 逻辑综合优化

3

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、Verilog-HDL于1983年推出,是在C语言的基础上演化而来的。 于1995年正式采纳为IEEE标准,其代号为Verilog-HDL1634-1995。 17、一个基本的Verilog-HDL程序由模块构成。

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

和功能描述4部分。

19、Verilog-HDL模块的I/O端口声明用来声明模块端口定义中各端口数据流动方向,包括 输入端口、输出端口和双向端口。

20、Verilog-HDL语言的三种常用的模型描述方法为行为描述、结构描述和数据流描述。 21.Verilog-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’b00100 A&B=5’b10001 30、若A=8’b1000_0100

则A<<3的结果为8’b00100000 A>>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语言,建模的一般步骤(流程)? 1: 建立工2:输入设计项目3:取名并 4:将项目设5:选择目 原理图/HDL代码 存盘 置成Project 标器件 作库文件 11:测试 10:编程 9: 引脚锁8:仿真波形 7:建立仿真6:启动 验证 下载/配置 定并编译测试和分析 波形文件 编译器 7、利用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)、变量(VARIABLE)和信号(SIGNAL)。

前两种可以从传统的计算机高级语言中找到对应的数据类型,其语言行为与高级语言中的变量和常量十分相似。但信号是具有更多的硬件特征的特殊数据对象,是VHDL中最有特色的语言要素之一。

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

2)变量(VARIABLE) 变量代表暂存某些值的载体,变量常用在实现某种算法的赋值语句中;在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程序包预定义了该操作符。