VHDL试卷6套
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、填空题(20分,每空格1分)
1、一个完整的VHDL语言程序通常包含实体(entity),构造体(architecture),
配置(configuration),包集合(package)和库(library) 5各部分。
2、在一个实体的端口方向说明时,输入使用in表示,那么构造体内部不能再使用的输出是用 out 表示;双向端口是用 inout 表示;构造体内部可再次使用的输出是用 buffer 表示;
3、一个构造体可以使用几个子结构,即相对比较独立的几个模块来构成。VHDL语言可以有以下3种形式的子结构描述语句: BLOCK 语句结构; PROCESS 语句结构和SUBPROGRAMS 结构。
4、VHDL的客体,或称数据对象包括了常数、变量variable 和信号signal 。
5、请列出三个VHDL语言的数据类型,如实数、位等。位矢量,字符,布尔量。
6、设D0为'0', D1为'0', D2为'1', D3为'0', D0 & D1 & D2 & D3的运算结果是“0010”,D3 & D2 & D1 & D0的运算结果是“0100”。
7、构造体的描述方式包括三种,分别是寄存器传输(RTL)描述方法或称数据流;构造体的结构描述方式和构造体的行为描述方式。
1、传统的系统硬件设计方法是采用自上而下(top down)的设计方法,利用硬件描述语言(HDL)的硬件电路设计方法采用自下而上(bottom up)的设计方法。(×)传统的系统硬件设计方法是采用自下而上(bottom up)的设计方法,利用硬件描述语言(HDL)的硬件电路设计方法采用自上而下(top down)的设计方法
2、VHDL可以采用层次化的设计,一个高层的结构体中可以调用低层的实体(√)
3、一个VHAL程序中仅能使用一个进程(process)语句。(×)
可以使用多个进程语句。
4、VHDL语言的预算操作包括了逻辑运算符、关系运算符、乘法运算符等,它们三者的优先级是相同的。
(×)
逻辑运算符<关系运算符<乘法运算
1、试举出两种可编程逻辑器件 CPLD 、 FPGA 。
2、VHDL程序的基本结构包括库、程序包、实体
和结构体。
3、more_ _11标识符合法吗?不合法。8bit标识符合法吗?不合法。
variable标识符合法吗?不合法。
4、信号的代入通常用 <= ,变量用 := 。
5、表示‘0’‘1’;两值逻辑的数据类型是 bit(位),表示‘0’‘1’‘Z’等九值逻辑的数据类型是 std_logic(标准逻辑),表示空操作的数据类型是 NULL 。
6、定义一个信号a,数据类型为4位标准逻辑向量 signal a : std_logic_vector(3 downto 0) 定义一个变量b,数据类型为2位位向量 variable b : bit_vector(1 downto 0) 。
7、<=是小于等于关系运算符,又是赋值运算操作符。
8、设D0为'1', D1为'0', D2为'1', D3为'0', D3 & D2 & D1 & D0的运算结果是“0101”,D1 & D2 & D3 & D4的运算结果是“1010”。
1、进程语句中,不管在何时,process语句后面必须列出敏感信号(×)
包含wait语句的进程语句可不列出敏感信号。
2、VHDL语言与计算机C语言的没有差别。(×)
●运行的基础
–计算机语言是在CPU+RAM构建的平台上运行
–VHDL设计的结果是由具体的逻辑、触发器组成的数字电路
●执行方式
–计算机语言基本上以串行的方式执行
–VHDL在总体上是以并行方式工作
●验证方式
–计算机语言主要关注于变量值的变化
–VHDL要实现严格的时序逻辑关系
3、在结构体中定义一个全局变量(VARIABLES),可以在所有进程中使用。(×)
“变量(VARIABLES)”改为“信号”。
4、Moore状态机输出只是状态机当前状态的函数,Mealy状态机输出为有限状态机当前值和输入值的函数(√)
2、VHDL程序的基本结构至少应包括实体、结构体两部分和对
库的引用声明。
3、1_Digital标识符合法吗?否, \12 @ +\ 呢?合法。
4、在VHDL的常用对象中,信号、变量可以被多次赋予不同的值,
常量只能在定义时赋值。
5、实体的端口模式用来说明数据、信号通过该端口的传输方向,端口模式有 in 、 Out 、 inout 、 buffer 。
6、VHDL语言中std_logic类型取值‘Z’表示高阻,取值‘X’表示不确定。
7、整型对象的范围约束通常用 range 关键词,位矢量用 downto/to 关键词。
8、位类型的初始化采用(字符/字符串)字符、位矢量用字符串。
9、进程必须位于结构体内部,变量必须定义于进程/包/子程序内部。
10、并置运算符 & 的功能是把多个位或位向量合并为一个位向量。
11、进程执行的机制是敏感信号发生跳变。
12、判断CLK信号上升沿到达的语句是 if clk’event and clk = ‘1’ then .
13、 IF 语句各条件间具有不同的优先级。
14、任何时序电路都以时钟为驱动信号,时序电路只是在时钟信号的边沿到来时,
其状态才发生改变。
二、判断对错并改正(12分,每小题3分)
1、CONSTANT T2:std_logic <= ’0’;(错)改正:把<= 换为:= 。
2、若某变量被定义为数值型变量,未赋初始值时默认值为‘0’。
(错)改正:把‘0’的单引号去掉。
3、在结构体中定义一个全局变量(V ARIABLES),可以在所有进程中使用。
(错)改正:“变量(V ARIABLES)”改为“信号”。
1、VHDL是否区分大小写?不区分。
2、digital_ _8标识符合法吗?不合法。12_bit标识符合法吗?不合法。
signal标识符合法吗?不合法。
3、结构体有三种描述方式,分别是数据流、行为、
和结构化。
4、请分别列举一个常用的库和程序包library ieee 、use ieee.std_logic_1164.all 。
5、一个信号处于高阻(三态)时的值在VHDL中描述为‘Z’。
6、将一个信号width定义为一个4位标准逻辑向量为
signal width : std_logic_vector(3 downto 0) 。
7、/=是不相等操作符,功能是在条件判断是判断操作符两端不相等。
8、设D0为'0', D1为'1', D2为'1', D3为'0', D3 & D2 & D1 & D0的运算结果是
“0110”,(D3 or D2)and(D1 and not D0)的运算结果是:‘1’。
9、赋值语句是(并行/串行)并行执行的,if语句是(并行/串行)串行执行的。