内容发布更新时间 : 2024/12/22 21:40:17星期一 下面是文章的全部内容请认真阅读。
选择题练习
一、VHDL基本结构
1. 一个项目的输入输出端口是定义在
A. 实体中 B. 结构体中 C. 任何位置 D. 进程中
2. 描述项目逻辑功能的是
A. 实体 B. 结构体 C. 配置 D. 进程
3. 关键字ARCHITECTURE定义的是 A. 结构体 B. 进程 C. 实体 D. 配置
4.VHDL语言共支持四种常用库,其中哪种库是用户的VHDL设计现行工作库: A.IEEE库 B.VITAL库
C.STD库 D.WORK工作库 5. VHDL语言是一种结构化设计语言;一个设计实体(电路模块)包括实体与结构体两部分,结构体描述是 A.器件外部特性; B.器件的内部功能; C.器件的综合约束;
D.器件外部特性与内部功能。
6. 在VHDL中,库可以包含一个或多个 A. 程序包 B. 结构体 C. 输入 D. 输出
7. 一个能为VHDL综合器接受,并能作为一个独立的设计单元的完整的VHDL程序成为 A. 设计输入 B. 设计输出 C. 设计实体 D. 设计结构
8. Q为输出信号,但内部设计会用到其反馈信号,其正确的端口说明是:
A. Q:IN BIT; B. Q:OUT BIT; C. Q:INOUT BIT; D. Q:BUFFER BIT;
9.VHDL语言程序结构的特点是把一个设计实体分成 A.外部和内部 B.实体和实体说明
C.结构体和结构体说明 D.图形部分和文本部分
10. VHDL设计文件的实体说明部分描述的是 A.电路系统的内部结构 B.电路系统的逻辑功能 C.电路系统的主要参数 D.电路系统的外部端口
11.VHDL语言程序结构中必不可少的部分是:
A.库 B.程序包 C.配置 D.实体和结构体
12. 下列选项中,哪些项在VHDL程序设计文件中属于可选部分 A.库和实体 B.实体和结构体 C.结构体和配置 D. 库、程序包和配置
13. 关于VHDL中实体说明的格式,以下叙述不正确的是
A.实体说明以“ENTITY 实体名 IS”开头,以“END 实体名”结束 B.实体说明中包含类属表和端口说明两部分 C.端口说明中只需要规定端口的模式即可 D.实体名一定要与设计文件同名
14. 在VHDL的实体说明中,端口名表的作用是 A.列出所有输入端口的名称 B.列出所有输出端口的名称
C.说明实体输入、输出端口的信号类型及端口模式 D.只定义输入、输出端口的数目
15. 在VHDL中,为了使已声明的数据类型、子程序、元件能被其他设计实体调用或共享,可以把它们汇集在 中。
A.设计实体 B.配置 C.结构体 D.库和程序包
16.在包含多个结构体的VHDL程序中,必须使用 来选择用于综合和仿真的结构体。 A.If语句 B.Case语句 C.Configuration语句 D.While语句
17.在VHDL的端口声明语句中,用 声明端口为双向方向 A.IN B.OUT C.INOUT D.BUFFER
18. 类属说明的正确格式是:
A.GENERIC(delay:TIME=20us); B.GENERIC(delay:TIME:=20us); C.GENERIC(delay TIME=20us); D.GENERIC(delay=TIME:=20us);
19. VHDL的设计实体可以被高层次的系统 ,成为系统的一部分 A.输入 B.输出 C.仿真 D.调用
20.VHDL常用的库是( )标准库
A.IEEE B.STD C.WORK D.PACKAGE
21.VHDL的实体声明部分用来指定设计单元的
A.输入端口 B.输出端口 C.引脚 D.以上均可
22.以下关于VHDL中的程序包,说法错误的是
A.程序包可定义一些子程序、常量和用户数据类型,供多个设计实体共享 B.用户只能使用VHDL预定义的标准程序包,不能由用户自己定义程序包 C.程序包由程序包声明单元和程序包体单元两部分构成
D.在实体中引用一个程序包的格式为:Use 库名.程序包名.项目名;
23.在VHDL中,为了使已声明的数据类型、子程序、元件能被其他设计实体调用或共享,可以把它们汇集在 中。
A.设计实体 B.程序库 C.结构体 D.程序包
24.如果信号a定义为标准逻辑矢量,要使a<=a+1;语句合法,则需要打开下面哪些程序包
① std_logic_1164 ② std_logic_unsigned ③ std_logic_arith ④ std_logic_signed
A. ①和② B. ②和③ C.①和③ D. ②和③
二、VHDL基本语法
(一) 标识符
1. 1987标准的VHDL语言对大小写是 A. 敏感的 B. 只能用小写 C. 只能用大写 D. 不敏感
2. 关于1987标准的VHDL语言中,对标识符描述正确的是 A. 必须以英文字母开头 B. 可以使用汉字开头 C. 可以使用数字开头 D. 任何字符都可以
3. 1987标准的VHDL语言中,对合法的标识符描述不正确的是 A. 下划线不能用在开头 B. 下划线不能连用 C. 不能使用下划线 D. 下划线不能用在结尾
4. 符合1987标准VHDL的标识符是 A. A_2 B. A+2 C. 2A D. 22
5. 符合1987VHDL标准的标识符是 A. a_2_3 B. a__ ___2 C. 2_2_a D. 2a
6. 不符合1987标准VHDL的标识符是 A. a_1_in B. a_in_2 C. 2_a D. asd_1
7. 不符合1987 标准VHDL的标识符是 A. a2b2 B. a1b1 C. ad12 D. P
8. 下列标识符中, 是不合法的标识符。
A. State0 B. 9moon C. Not_Ack_0 D. signall
9. 在VHDL的IEEE标准库中,预定义的标准逻辑位STD_LOGIC的数据类型中是用什么 表示的。
A. 小写字母和数字 B. 大写字母数字 C. 大或小写字母和数字 D. 全部是数字
10. 下面哪一个可以用作VHDL中的合法的实体名 。 A. OR B. VARIABLE C. SIGNAL D. OUT1
11. 以下关于VHDL中标识符的说法不正确的是
A.标识符由26个英文字母和数字0~9以及下划线组成 B.标识符必须由英文字母开始,且不能以下划线结束 C.标识符中可以包含空格
D.标识符不允许与VHDL中的关键字重合
(二)数据类型
1. 对于大多数主流的VHDL综合器,一般不支持哪个数据类型 A.TIME B.BIT C.STRING D.INTEGER
2. 在VHDL中,乘“*”和除“/”算术运算的操作数据是 数据类型 A. 整型 B. 实型 C. 整型和实型 D.比特型
3.如定义SIGNAL b:BIT_VECTOR(0 TO 0),则信号b的位宽是几位? A. 0 B. 1 C. 2 D. 非法语句
4. 下面哪个数据类型不能够被综合,仅能用于仿真。 A. STD_LOGIC B. INTEGER C. BIT D. REAL
5. 下面哪个数据类型只有“真”和“假”两种状态。
A. STD_LOGIC B. INTEGER C. BIT D. BOOLEAN
6. 关于VHDL数据类型,正确的是 A. 数据类型不同不能进行运算 B. 数据类型相同才能进行运算 C. 数据类型相同或相符就可以运算 D. 运算与数据类型无关
7. 下面数据中属于实数的是 A. 4.2 B. 3 C. ‘1’ D. “11011” 8. 下面数据中属于位矢量的是 A. 4.2 B. 3 C. ‘1’ D. “11011”
9. 有如下定义:
signal a: character 则下面哪个赋值语句是正确的
A. a<=” 11”; B. a<=” zz” C. a<=’z’ D.a<=’Z’;
10. 关于VHDL数据类型,不正确的是
A. “STD_LOGIC” 是IEEE预定义数据类型 B. “BIT_VECTOR”是IEEE预定义数据类型 C. 布尔型数据类型的取值是FALSE和TRUE D. 数据类型为字符型的标识符是区分大小写的。
11. 下列哪个数据类型不必事先声明而可以直接引用 A. STD_LOGIC B. STD_LOGIC_VECTOR C. BIT D. 前面三个答案都是错误的
12. STD_LOGIG_1164中定义的高阻是字符 A. X B. x C. z D. Z
13. 要使用std_logic数据类型,必须对IEEE中的 程序包进行声明。 A. std_logic_signed B. std_logic_unsigned C. std_logic_arith D. std_logic_1164
14. 在STD_LOGIG_1164中字符Z定义为 A. 高阻 B. 弱信号0 C. 弱信号1 D. 初始值
15. 使用STD_LOGIG_1164使用的数据类型时
A. 可以直接调用 B. 必须在库和包集合中声明 C. 必须在实体中声明 D. 必须在结构体中声明 16. 关于转化函数正确的说法是
A. 任何数据类型都可以通过转化函数相互转化 B. 只有特定类型的数据类型可以转化
C. 任何数据类型都不能转化 D. 前面说法都是错误的
17. 有如下定义: