《EDA技术与VHDL基础》课后习题答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《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、实体名、类型表、端口表、实体说明部分
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、子程序、子程序
二、选择题
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、修改正确如下所示:
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;