EDA电子科大版简答填空考试要点

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

EDA电子科大版简答填空考试要点

1.VHDL程序一般包括几个组成部分?每部分的作用是什么?

三个基本组成部分:库、程序包使用说明,实体描述和实体对应的结构体描述(必要时还包括结构体的配置)

库、程序包使用说明-用于打开调用本设计实体将用到的库、程序包。

实体描述----------用于描述该设计实体与外界的接口信号说明。

结构体描述--------用于描述该设计实体内部的组成及内部工作的逻辑关系。

结构体配置语句主要用于层次化的方式对特定的设计实体进行元件的例化,或是为实体选定某个特定的结构体

2.库由哪些部分组成?在VHDL语言中常见的有哪几种?编程人员怎样使用已有的库?

库由多个包含已定义的函数,数据类型,元件调用说明及子程序的程序包组成,常见的库有如下四种

IEEE库、WORK库、STD库、VITAL库使用方式如下

LIBRARY 库名

3.在VHDL中常用到的预定义程序包有哪几个?怎样使用这些程序包?

常见的预定义程序包有四种:STD_LOGIC_1164,STD_LOGIC_ARITH,STD_LOGIC_UNSIGNED和STD_LOGIC_SIGNED,STANDARD和TEXTIO

使用这些程序报的方法:USE 库名.程序包.项目名/ALL;

4.VHDL语言中的数据对象有几种?各种数据对象的作用范围如何?各种数据对象的实际物理意义是什么?

数据对象有三种:常量、变量、信号

常量使用的范围取决于被定义的位置。在程序包中定义的敞亮具有全局最大化的特征,可以在调用此程序包的所有实体中应用;定义在设计实体的常量,其有效范围为在这个实体定义的所有结构体;定义在设计实体的某一结构体的常量,只能用于此结构体;定义在结构体的某一单元的常量如在一个进程中,只能用在这个进程中。

变量只能使用在进程和子程序中,其使用范围仅限于被定义的变量的进程和子程序中。

信号具有全局特性。

常量相当于电路中的恒定电平,而变量和信号相当于组合电路系统中门与门间的连接及其连线的信号值。

5.什么是标识符?在VHDL的基本标识符是怎么规定的?

标识符用来定义常量、变量、信号、端口、子程序或者参数的名字。

VHDL基本标识符就是以英文字母开头,不连续使用下划线_,不以下划线结尾的,由26个英文大小写字母,数字0-9以及下划线_组成的字符串。

6.信号和变量在描述和使用时有哪些主要的区别?

信号和变量的主要区别表现在接受和保持信息的方式,信息保持和传递的区域大小上。

7.VHDL是一种强类型的硬件描述语言,强数据类型的含义是什么?VHDL采用强数据类型有什么好处

强数据类型含义:要求设计实体的每一个常数、变量信号、函数以及设定的各种参量都必须有确定的数据类型,并且只有数据类型相同的量才能相互传递和作用。

好处:能使VHDL编译和综合工具确定而无歧义的结果综合,保证设计硬件的唯一性。

8.VHDL语言的标准数据类型有哪些?用户可以自定义的数据类型有哪些?并简单介绍各数据类型。

标量型:属单元素的最基本的数据类型,通常用于描述一个单值数据对象,它包括实数类型、整数类型、枚举类型和时间类型

复合类型:可以由细小的数据类型复合而成,如可由标量复合而成。复合类型主要有数组型和记录型

存取类型:为给定的数据类型的数据对象提供存取方式

文件类型:用于提供多值存取类型

用户可自定义的数据类型:枚举类型,整数类型,数组类型,记录类型,时间类型,实数类型等

9.BIT数据类型和STD_LOGIC数据类型有什么区别?

BIT数据类型只能取值0或1,而STD_LOGIC数据类型是BIT数据类型的扩展,除了0和1外,还包括7种数据类型,分别是U,X,Z,W,L,H,_

10.用户如何自定义数据类型?举例说明

利用类型定义语句TYPE和子类型定义语句SUBTYPE实现

如TYPE WEEK IS (SON,MON,TUE,WED,THU,FRI,SAT)

SUBTYPE DIGITS INTEGER RANGE 0 TO 9

11.VHDL语言有哪几种操作符?在一个表达式中有多种操作符时应按如何准则运算?

主要有四种操作符逻辑运算符,关系运算符,算术运算符,符号运算符此外还有重载运算符。按照操作符的优先级高低进行运算

12.简述六种移位操作符SLL,SRL,SLA,SRA,ROL,ROR的含义及操作规定

SLL:逻辑左移,bit或布尔一维数组

SRL:逻辑右移,bit或布尔一维数组

SLA:算数左移,bit或布尔一维数组

SRA:算数右移,bit或布尔一维数组

ROL:逻辑循环左移,bit或布尔一维数组

ROR:逻辑循环右移,bit或布尔一维数组

13.为什么从本质上讲VHDL语句都是并行语句?既然都是并行语句为什么又有顺序语句?实现顺序语句的物理本质又是什么?

因为并行语句包含了进程语句,而顺序语句只能在进程和子程序中进行,而进程语句是并行执行的,子程序本身并无并行和顺序之分,所以从本质上说VHDL语句都是并行语句。并行语句与顺序语句并不是相互独立的语句,它们往往互相包含,互相依存是一个矛盾的统一体。

物理本质:逻辑系统中的组合逻辑,时序逻辑,或它们的综合体。

14.VHDL程序设计中的基本语句系列有哪几种?它们的特点如何?他们各使用在什么场所?它们包括些什么基本语句?

主要分为顺序语句和并行语句。顺序语句包括六种:赋值语句,转向控制语句,等待语句,子程序调用语句,返回语句,空操作语句。

并行语句包括:进程语句,块语句,并行信号赋值语句,并行过程调用语句,元件例化语句,生成语句

15.转向控制语句有哪几种?它们各自用在什么场所?使用它们应该注意些什么?

if条件语句,case选择语句,loop循环语句,next和exit语句

if条件语句至少应该有一个条件句,条件句必须由布尔表达式构成,loop的结束条件值必须是综合时就可以决定的。

16.case语句中,什么情况下是可以不要when others语句的?在什么情况下一定要when others语句?

除非所有条件句的选择值能完整的覆盖case语句中表达式的取值,这样的话就可以不要when others语句,除开上面的情况,其余时候都要用

17.for-loop应该用在什么场合?循环变量是怎样取值的?是否需要事先在程序中定义?

在重复的次数已知的情况下可以使用该语句。循环变量的取值是根据系统的功能要求给定的,要事先在程序上定义。

18.wait语句有哪几种书写格式?哪些格式可以进行逻辑组合

wait until结构

wait on结构其中wait until结构可以进行逻辑组合

19.VHDL的预定义属性的作用是什么?哪些项目可以具有这些属性?常用的预定义属性有哪几类?

作用在于可对信号或其他的项目多种属性进行检测或统计。

具有属性的项目:类型,子类型,过程,函数,信号,变量,常量,实体,结构体,配置,程序包,元件,语句标号。

相关文档
最新文档