清华大学出版社《EDA技术与VHDL基础》教材习题答案 主编:杨健
《EDA技术与VHDL基础》
课后习题答案
第一章 EDA技术概述
一、填空题
1、电子设计自动化
2、非常高速集成芯片硬件描述语言 3、CAD、CAE、EDA
4、原理图输入、状态图输入、文本输入 5、VHDL、Verilog HDL 6、硬件特性
二、选择题
1、A 2、C 3、A 4、D 5、C 6、D 7、A
第二章 可编程逻辑器件基础
一、填空题
1、PLD
2、Altera公司、Xilinx公司、Lattice公司 3、基于反熔丝编程的 FPGA 4、配置芯片
二、选择题
1、D 2、C 3、C 4、D
第三章 VHDL程序初步——程序结构
一、填空题
1、结构、行为、功能、接口
2、库和程序包、实体、结构体、配置
3、实体名、类型表、端口表、实体说明部分
1
清华大学出版社《EDA技术与VHDL基础》教材习题答案 主编:杨健
4、结构体说明语句、功能语句
5、端口的大小、实体中子元件的数目、实体的定时特性 6、设计库 7、元件、函数
8、进程PROCESS、过程PROCEDURE 9、顺序语句、并行语句
二、选择题
1、D 2、C 3、C 4、B 5、D 6、B 7、A 8、C
三、简答题
2、
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; ENTITY nand_3in IS PORT(a,b,c:IN STD_LOGIC; y:OUT STD_LOGIC); END;
ARCHITECTURE bhv OF nand_3in IS BEGIN
y<=NOT(a AND b AND c); END bhv; 5、0000
6、11110111(247)
第四章 VHDL基础
一、填空题
1、顺序语句、并行语句 2、跳出本次循环
3、等待、信号发生变化时 4、函数、过程
5、值类属性、函数类属性、信号类属性、数据类型类属性、数据范围类属性 6、程序调试、时序仿真 7、子程序、子程序
二、选择题
2
清华大学出版社《EDA技术与VHDL基础》教材习题答案 主编:杨健
1、B 2、A 3、A 4、C 5、B 6、C 7、D
三、判断题
1、√ 2、√ 3、√ 4、√ 5、× 6、×
四、简答题
9、修改正确如下所示: LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY count IS PORT(clk:IN BIT;
q:OUT BIT_VECTOR(7 DOWNTO 0)); END count;
ARCHITECTURE a OF count IS BEGIN
PROCESS(clk)
IF clk'EVENT AND clk='1' THEN q<=q+1;
END PROCESS; END a;
10、修改正确如下所示: ?
SIGNAL invalue:IN INTEGER RANGE 0 TO 15; SIGNAL outvalue:OUT STD_LOGIC; ?
CASE invalue IS
WHEN 0=>outvalue<='1'; WHEN 1=>outvalue<='0'; WHEN OTHERS=>NULL; END CASE; ?
11、修改正确如下所示:
3
清华大学出版社《EDA技术与VHDL基础》教材习题答案 主编:杨健
ARCHITECTURE bhv OF com1 IS BEGIN
SIGNAL a,b,c:STD_LOGIC; pro1:PROCESS(clk) BEGIN
IF NOT (clk'EVENT AND clk='1') THEN x<=a XOR b OR c; END IF;
END PROCESS; END; 12、
(1) PROCESS(…) --本题中两条IF语句均为信号c进行可能赋值,VHDL语言不允许 IF a=b THEN c<=d; END IF;
IF a=4 THEN c<=d+1; END IF; END PROCESS;
(2)ARCHITECTURE behave OF mux IS --同时为q进行多次可能赋值,VHDL语言不允许 BEGIN
q<=i0 WHEN a='0' AND b='0' ELSE '0'; --WHEN ELSE语句语法错误 q<=i1 WHEN a='0' AND b='1' ELSE '0'; q<=i2 WHEN a='1' AND b='0' ELSE '0'; q<=i3 WHEN a='1' AND b='1' ELSE '0'; END behave; 13、
next1<=1101 WHEN (a='0' AND b='0') ELSE d WHEN a='0' ELSE c WHEN b='1' ELSE 1011; 15、 (1)、STD_LOGIC_UNSIGNED (2)、GENERIC (3)、IN (4)、width-1(7) (5)、counter_n (6)、“00000000” (7)、clk’EVENT AND clk=’1’ (8)、ELSIF (9)、END IF (10)、q<= count
16、修改正确如下所示: LIBRARY IEEE;
4