《EDA技术实用教程(第四版)》习题答案
时间:2025-03-13
时间:2025-03-13
EDA技术实用教程(第四版)
《EDA技术实用教程(第四版)》习题
1 习 题
1-1 EDA技术与ASIC设计和FPGA开发有什么关系?FPGA在ASIC设计中有什么用途?P3~4
1-2 与软件描述语言相比,VHDL有什么特点? P6
l-3 什么是综合?有哪些类型?综合在电子设计自动化中的地位是什么? P5 1-4 在EDA技术中,自顶向下的设计方法的重要意义是什么? P7~10 1-5 IP在EDA技术的应用和发展中的意义是什么? P22~14
1-6 叙述EDA的FPGA/CPLD设计流程,以及涉及的EDA工具及其在整个流程中的作用。 (P11~13)
2 习 题
2-1 OLMC(输出逻辑宏单元)有何功能?说明GAL是怎样实现可编程组合电路与时序电路的。 P34~36
2-2 什么是基于乘积项的可编程逻辑结构? P33~34,40 什么是基于查找表的可编程逻辑结构? P40~41
2-3 FPGA系列器件中的LAB有何作用? P43~45
2-5 解释编程与配置这两个概念。 P58
2-6 请参阅相关资料,并回答问题:按本章给出的归类方式,将基于乘积项的可编程逻辑结构的PLD器件归类为CPLD;将基于查找表的可编程逻辑结构的PLD器什归类为FPGA,那么,APEX系列属于什么类型PLD器件? MAX II系列又属于什么类型的PLD器件?为什么? P54~56
3 习 题
3-1 画出与以下实体描述对应的原理图符号元件: ENTITY buf3s IS --实体1:三态缓冲器 PORT(input:IN STD_LOGIC; --输入端 enable:IN STD_LOGIC; --使能端 output:OUT STD_LOGIC); --输出端 END buf3s ;
ENTITY mux21 IS --实体2: 2选1多路选择器 PORT(in0, in1,sel: IN STD_LOGIC; output:OUT STD_LOGIC);
EDA技术实用教程(第四版)
3-2 图3-16所示的是4选1多路选择器,试分别用IF_THEN语句和CASE语句的表达方式写出此电路的VHDL程序,选择控制信号s1和s0的数据类型为STD_LOGIC_VECTOR;当s1=’0’,s0=’0’;s1=’0’,s0=’1’;s1=’1’,s0=’0’和s1=’1’,s0=’1’时,分别执行y<=a、y<=b、y<=c、y<=d。
图3-16 4选1多路选择器 --解1:用IF_THEN语句实现4选1多路选择器 LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; ENTITY mux41 IS
PORT (a,b,c,d: IN STD_LOGIC; s0: IN STD_LOGIC; s1: IN STD_LOGIC;
y: OUT STD_LOGIC); END ENTITY mux41;
ARCHITECTURE if_mux41 OF mux41 IS
SIGNAL s0s1 : STD_LOGIC_VECTOR(1 DOWNTO 0);--定义标准逻辑位矢量数据 BEGIN
s0s1<=s1&s0; --s1相并s0,即s1与s0并置操作 PROCESS(s0s1,a,b,c,d)
BEGIN
IF s0s1 = "00" THEN y <= a; ELSIF s0s1 = "01" THEN y <= b; ELSIF s0s1 = "10" THEN y <= c; ELSE y <= d; END IF; END PROCESS;
END ARCHITECTURE if_mux41;
--解2:用CASE语句实现4选1多路选择器
EDA技术实用教程(第四版)
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; ENTITY mux41 IS
PORT (a,b,c,d: IN STD_LOGIC; s0: IN STD_LOGIC; s1: IN STD_LOGIC; y: OUT STD_LOGIC);
END ENTITY mux41;
ARCHITECTURE case_mux41 OF mux41 IS
SIGNAL s0s1 : STD_LOGIC_VECTOR(1 DOWNTO 0);--定义标准逻辑位矢量数据类型 BEGIN
s0s1<=s1&s0; --s1相并s0,即s1与s0并置操作 PROCESS(s0s1,a,b,c,d) BEGIN
CASE s0s1 IS --类似于真值表的case语句 WHEN "00" => y <= a; WHEN "01" => y <= b; WHEN "10" => y <= c; WHEN "11" => y <= d; WHEN OTHERS =>NULL ; END CASE;
END PROCESS;
END ARCHITECTURE case_mux41;
3-3 图3-17所示的是双2选1多路选择器构成的电路MUXK,对于其中MUX21A,当s=’0’和s=’1’时,分别有y<=‘a’和y<=’b’。试在一个结构体中用两个进程来表达此电路,每个进程中用CASE语句描述一个2选1多路选择器MUX21A。
图3-17 含2选1多路选择器的模块
--解:用CASE语句实现图4-18所示的是双2选1多路选择器构成的电路 LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; ENTITY mux31 IS
PORT(a1,a2,a3,s0,s1: IN STD_LOGIC; outy:OUT STD_LOGIC); END ENTITY mux31;
ARCHITECTURE case_mux31 OF mux31 IS SIGNAL y : STD_LOGIC;
EDA技术实用教程(第四版)
BEGIN
u1: PROCESS(s0,a1,a2,a3) BEGIN
CASE s0 IS --类似于真值表的case语句 WHEN '0' => y <= a2; WHEN '1' => y <= a3; WHEN OTHERS =>NULL ; END CASE; END PROCESS; u2: PROCESS(s1,a1,a2,a3,y)
BEGIN
CASE s1 IS --类似于真值表的case语句 WHEN '0' => outy <= a1; WHEN '1' => outy <= y; WHEN OTHERS =>NULL ; END CASE;
END PROCESS;
END ARCHITECTURE case_mux31;
3-4 将例3-20程序的计数器改为十二进制计数器,程序用例3-21的方式表述,并且将复位RST改为同步清零控制,加载信号LOAD改为异步控制方式。讨论例3-20与例3-21的异同点。
--解:十二进制计数器VHDL程序设计。 LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY CNT12 IS
PORT(CLK,RST,EN,LOAD : IN STD_LOGIC; DATA : IN STD_LOGIC_VECTOR(3 DOWNTO 0); --4位预置数 DOUT : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);--计数值输出 COUT : OUT STD_LOGIC); --计数进位输出 END CNT12;
ARCHITECTURE behav OF CNT12 IS
…… 此处隐藏:12879字,全部文档内容请下载后查看。喜欢就下载吧 ……上一篇:主持人口才训练方法
下一篇:可编程控制器及应用实验报告