计算机组成原理课程设计习题

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用于枚举与整数类型、及对应的一维数组之间的小于等于的关系操作;
26.下面是一个逻辑非门的VHDL描述,填空。本题主要联系单分支结构
entity and2 is
Port ( a : in std_logic;
b : out std_logic);
end and2;
architecture Behavioral of and2 is
EDA是(基于计算机的)电子设计自动化技术,英文全名为Electronic Design Automation
5.分别说明一个VHDL源文件包括那四部分,那一部分可以不需要?
库引用说明(library),实体说明(entity),结构体(architecture),配置说明(configuration)四部分,其中配置说明部分可以不需要
第一部分VHDL习题
1.说明VHDL的英文含义或中文描述
VHDL的英文全名是(Very High Speed Integrated Circuit)Hardware Description Language,是一种硬件描述语言。
2.VHDL是由那个组织提出的?它有几个版本?除了VHDL外,Verilog也是一种硬件描述语言,它的语法结构和那种高级语言基本相同?
是全局性数据对象;
1源自文库.写出常量、变量和信号的保留字
常量的保留字为CONSTANT
变量的保留字为VARIABLE
信号的保留字为SINALE
20.变量和信号的赋值表达式里哪个可以带AFTER(时间延迟)?
信号的赋值表达式里可以带延迟例如:A<=’1’AFTER 2 ms
21.在VHDL中已经预先定义了下面的一些类型,说明他们的名字
23.Bit和std_logic的后面加VECTOR变化为什么类型?
变化为基于Bit或std_logic数据类型的数组,数组中每一个元素的数据类型都是Bit或std_logic即:
Type bit_vector is array(natural range<>) of bit
Type std_logic_vector is array(natural range<>) of std_logic
关系运算符:=:等于,操作数数据类型为任何数据类型
/=:不等于,操作数数据类型为任何数据类型
<:小于,操作数数据类型为枚举与整数类型、及对应的一维数组
<=:小于等于,操作数数据类型为枚举与整数类型、及对应的一维数组
>:大于,操作数数据类型为枚举与整数类型、及对应的一维数组
>=:大于等于,操作数数据类型为枚举与整数类型、及对应的一维数组
该电路的功能是实现一个与门逻辑电路,
当输入的a,b的值为00时,得到的c的输出值为0;
当输入的a,b的值为01时,得到的c的输出值为0;
当输入的a,b的值为10时,得到的c的输出值为0;
当输入的a,b的值为1时,得到的c的输出值为1;
当输入的a,b的值为其他情况时,得到的c的输出值为不确定的值。
31.说明循环控制结构中NEXT和EXIT分别类似于C中那两个语句?
BIT是 一个逻辑型的数据类型,端口为BIT类型时,该端口的信号取值只可能是“1”或“0”(逻辑值)
STD_LOGIC比BIT包含的内容丰富和完整的多,当然也包含了BIT类型,它是IEEE在1993年制定的新的标准(IEEESTD1164),具有9种不同的值:
'U'——初始值'X'——不定'0'——0'1'——1'Z'——高阻
entity and2 is
Port ( a,b : in std_logic;
c : out std_logic);
end and2;
architecture Behavioral of and2 is
begin
--c<=a and b;
process (a,b)
variable tmp:std_logic_vector(1 downto 0);
28.下面VHDL包含了一个IF嵌套结构,说明它描述的电路的功能
该电路的功能是实现一个异或门逻辑电路,
当输入的a,b的值相同时,得到的c的输出值为0,
当输入的a,b的值相异(即不相同)时,得到的c的输出值为1
29.上面VHDL描述语句
elsif是否应为elseif?不是
30.分析下面的电路描述,体会多分支结构,说明电路的功能
CONSTANT(常量)的赋值符号为‘:=’
VARIABLE(变量)的赋值符号为‘:=’
SINALE(信号)端口信号的的赋值符号为‘:=’
内部信号的赋值符号为‘<=’
18.说明变量和信号的区别
变量:用于进程、子进程等模块的内部;
是局部性数据对象;
信号:用于与外部的接口;
用于构造体中的各进程模块之间或其内部;
ENTITY axamp IS
PORT(dat1,dat2 : IN STD_LOGIC_VECTOR(3 DOWNTO 0);
dat3,dat4 : IN STD_LOGIC_VECTOR(3 DOWNTO 0);
电平信号就是一种电压信号,它的特点就是在输入不变,供电不变,电路其他参数稳定的情况下,某一段时间中,保持一个相对固定的值。比如数字电路中的,高电平信号,低电平信号等等。
脉冲信号一般是由振荡电路产生的,振荡电路通过自我激励的形式(正反馈),形成一个特殊波形,然后通过非门这样的电路整形后就可以得到脉冲信号了。
Boolean(布尔数据类型)
Bit(位数据类型)
Bit_vector(位矢量数据类型)
Character(字符数据类型)
String(字符串数据类型)
Integer(整数数据类型)
Real(实数数据类型)
Time(时间数据类型)
files(文件类型)
22.说明bit(位),std_logic(标准逻辑位)的区别
9.构造体保留字是什么?在构造中主要定义什么内容?
Architecture,设计实体的内部结构和外部设计实体端口间的逻辑关系。
(一个设计实体的功能与(/或)结构描述)
10.库引用说明文件类似于C中的哪个文件?
类似于C语言中的.h头文件引用
11.端口定义的信号如果赋初植,用哪个符号?
:=
12.说出至少2个VHDL保留字
16.VHDL的注释符号和行分割符号分别是什么?
‘--’为注释符号,且只在该文本行有效;
‘;’为行分隔符,VHDL的语句行可写在不同文本行中;
(空格:除关键字、标志符自身中间不能插入空格外,其他地方可插入任意数目的空格)
17.VHDL的数据对象是常量、变量和信号,它们的赋值符号分别是什么?其中信号赋值符号有2个,分别用于什么位置?
与电平信号相比,脉冲信号在输入不变的情况下,仍然会发生周期性的变化,比如电平在高低之间不断反复,而且高电平和低电平维持的时间都相对固定。产生这个现象的原因主要就是前面说的那个振荡信号,既然是振荡,肯定有电压的变化(而且往往是周期性变化,比如正弦波)。
这两个例题还说明了ELSE可以不出现在IF结构中。
XOR:异或,操作数数据类型为BIT,BOOLEAN,STD_LOGIC
符号运算符:+:正号,操作数数据类型为整数
-:负号,操作数数据类型为整数
连接运算符:&:字符串OR位串,操作数数据类型为一维数组
25.在VHDL里,符号“<=”有两个含义,分别说明它们的含义以及它们使用的场合
用于信号量除端口定义赋初值以外的赋值;
begin
tmp:=a&b;
case tmp is
when "00" => c<='0';
when "01" => c<='0';
when "10" => c<='0';
when "11" => c<='1';
when others => c<='X';
end case;
end process;
end Behavioral;
(单项端口,从外部输入至实体)
OUT:输出端口,定义的通道为单向输出模式,规定数据只能通过此端口从实体向外流出,或者说可以将实体中的数据向此端口赋值。
(单项端口,从实体输出至外部)
INOUT:定义的端口确定为输入输出双向端口,即从端口的内部看,可以对此端口进行赋值,或通过此端口读入外部的数据信息;而从端口的外部看,信号即可由此端口流出,也可向此端口输入信号。
6.VHDL源文件保存后的扩展名是什么?
VHD
7.实体的保留字是什么?在实体中主要定义什么内容?
Entity,对设计实体与外部电路进行接口描述
(一个设计实体与外部的接口定义)
8.端口定义中的模式主要有那四种,分别说明它们的特点.
IN:输入端口,定义的通道为单向只读模式。规定数据只能此端口被读入实体。
24.说明各种运算符号的含义
算术运算符:+:加,操作数数据类型为整数
-:减,操作数数据类型为整数
*:乘,操作数数据类型为整数和实数(包括浮点数)
/:除,操作数数据类型为整数和实数(包括浮点数)
MOD:取模,操作数数据类型为整数
REM:取余,操作数数据类型为整数
**:乘方,操作数数据类型为整数
ABS:取绝对值,操作数数据类型为整数
begin
process(a)
begin
if a = '0' then
b<='___1___⑴_____';
else
b<='____0__⑵_____';
end if;
end process;
end Behavioral;
27.下面两个分别描述了一个电平驱动的D触发器和一个脉冲驱动的D触发器
区别一个信号在什么情况下是电平?什么情况下是脉冲?
NEXT语句类似于C中的continue语句
EXIT语句类似于C中的break语句
32.下面VHDL描述包括了一个循环结构,说明电路的功能,将FOR结构改为WHILE实现
这是一个奇偶校验码的生成电路,
33.下面是一个函数应用实例
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
Signal,variable,entity ,architecture,,,,,,,
13.定义标识符时,可以使用英文字母(大小写都可以),可以使用数字字符0-9,可以使用下划线,但下划线不可以用在标识符的开始或结束,也不能连续使用,不能用关键字。下面列出了一些标识符,判断它们是否是合法的VHDL标识符.
首字符必用字母
以上标识符中除了on以外都不是合法的VHDL标识符
14.VHDL标识符大小写英文字母是否做区分?
不作区分(关键字和标识符都不区分大小写)
15.说明字符串和位串的区别
字符串:
被双引号括起来的ASCII字符,如,“Hello”;
位串:
被双引号括起来的数字序列,其前冠以基数说明符;如,
B“0110_1111”,O“117”,X“FFE0”;
逻辑运算符:NOT:非,操作数数据类型为BIT,BOOLEAN,STD_LOGIC
AND:与,操作数数据类型为BIT,BOOLEAN,STD_LOGIC
NAND:与非,操作数数据类型为BIT,BOOLEAN,STD_LOGIC
OR:或,操作数数据类型为BIT,BOOLEAN,STD_LOGIC
NOR:或非,操作数数据类型为BIT,BOOLEAN,STD_LOGIC
(双向端口,可以从外部输入至实体,也可以从实体输入至外部)
BUFFER:缓冲端口。其功能与INOUT类似,区别在于当需要输入数据时,只允许内部回读输出的信号,即允许反馈。与INOUT模式相比,BUFFER回读的信号不是由外部输入的,而是由内部产生、向外输出的信号。
(单项端口(伪双向端口),可以从外部输入至实体,也可以从端口回读该输出值至实体,不可以从外部输入至实体)
VHDL于1983年由美国国防部(DoD)发起创建,有IEEE-1706(87版)和IEEE-1706-1993(93版)两个版本,C语言
3.说明FPGA的英文含义或中文描述
FPGA是现场可编程门阵列,英文全名为Field Programmable Gate Array
4.说明EDA的英文含义或中文描述
'W'——弱信号不定'L'——弱信号0'H'——弱信号1'-'——不可能的情况
在使用该数据类型时,在程序中必须写出库说明语句和使用包集合的说明语句。
BIT只能取两个值,非1即0,而STD有9个取值.对于bit数据类型,clock'EVENT AND clock = '1'是检测信号的上升沿;而std_logic类型的数据则不可以这样做,原因是此数据类型的取值是很多选择的.用RISING_EDGE(clock)则可以进行信号的上升沿判断.(RISING_EDGE是VHDL语言在IEEE库中的标准程序包内的预定义函数.)
相关文档
最新文档