《VHDL 程序设计教程》习题参考答案 VHDL 程序设计教程 习题参考解答 第 1 章思考题解答 1. 什么是VHDL?简述VHDL 的发展史。 答: VHDL 是美国国防部为电子项目设计承包商提供的,签定合同使用的,电子系统硬件描述语言。1983 年成立VHDL 语言开发组,1987 年推广实施,1993 年扩充改版。VHDL是IEEE 标准语言,广泛用于数字集成电路逻辑设计。 2. 简述VHDL 设计实体的结构。 答:实体由实体名、类型表、端口表、实体说明部分和实体语句部分组成。根据 IEEE 标准,实体组织的一般格式为: ENTITY 实体名 IS [GENERIC(类型表);] --可选项 [PORT(端口表);] --必需项 实体说明部分; --可选项 [BEGIN 实体语句部分;] END [ENTITY] [实体名]; 3. 分别用结构体的3 种描述法设计一个 4 位计数器。 答: 用行为描述方法设计一个 4 位计数器如下,其它描述方法,读者可自行设计。 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; u se ieee.std_logic_u nsigned.all; ENTITY cou ntA IS PORT (clk,clr,en:IN STD_LOGIC; Qa,qb,qc,qd:OUT STD_LOGIC); END cou ntA; ARCHITECTURE ex ample OF cou ntA IS SIGNAL cou nt_4:STD_LOGIC_v ector (3 DOWNTO 0); BEGIN Qa <= cou nt_4(0); Qb <= cou nt_4(1); Qc <= cou nt_4(2); Qd <= cou nt_4(3); 1《VHDL 程序设计教程》习题参考答案 PROCESS (clk,clr) BEGIN IF (clr = '1' ) THEN Cou nt_4 <= "0000"; ELSIF (clk'EVENT AND clk = '1' ) THEN IF (en = '1' ) THEN IF (cou nt_4 = "1111") THEN cou nt_4 <= "0000"; ELSE cou nt_4 <= cou nt_4+ '1'; END IF; END IF; END IF; END PROCESS; END ex ample; 第2 章 思考题解答 1. 什么叫对象?对象有哪几个类型? 答:在VHDL 语言中,凡是可以赋于一个值的客体叫对象(object)。VHDL 对象包含有专门数据类型,主要有4 个基本类型:常量(CONSTANT)、信号(SIGNAL)、变量(VARIABLE)和文件(FILES)。 2. VHDL 语言定义的标准类型有哪些? 答 VHDL 语言标准所定义的标准数据类型 (1) 整数类型(INTEGER TYPE) (2) 实数类型或浮点类型(REAL TYPE & FLOATING TYPE) (3) 位类型(BIT TYPE) (4) 位矢量类型(BIT_VECTOR TYPE) (5) 布尔类型(BOOLEAN TYPE) (6) 字符...