eda技术及应用课后习题答案 下载本文

3-4 fpga 系列器件中的 lab 有何作用?

答:fpga(cyclone/cyclone ii)系列器件主要由逻辑阵列块 lab、嵌入式存储器块(eab)、i/o 单元、嵌入 式硬件乘法器和 pll 等模块构成;其中 lab(逻辑阵列块)由一系列相邻的 le(逻辑单元)构成的;fpga 可编程 资源主要来自逻辑阵列块 lab。

3-5 与传统的测试技术相比,边界扫描技术有何优点?p47~50

答:使用 bst(边界扫描测试)规范测试,不必使用物理探 针,可在器件正常工作时在系统捕获测量的功能数 据。克服传统的外探针测试法和“针床”夹具测试法来无法对 ic 内部节点无法测试的难题。 3-6 解释编程与配置这两个概念。 p58

答:编程:基于电可擦除存储单元的 eeprom 或 flash 技 术。cpld 一股使用此技术进行编程。cpld 被编程后改 变了电可擦除存储单元中的信息,掉电后可保存。电可擦除编程工艺的优点是编程后信息不会因掉电而丢失,但编 程次数有限,编程的速度不快。 配置:基于 sram 查找表的编程单元。编程信息是保 存在 sram 中的,sram 在掉电后编程信息立即丢失,在 下次上电后,还需要重新载入编程信息。大部分 fpga 采用该种编程工艺。该类器件的编程一般称为配置。对于 sram 型 fpga 来说,配置次数无限,且速度快;在加电时可随时更改逻辑;下载信息的保密性也不如电可擦除的编程。 3-7 请参阅相关资料,并回答问题:

按本章给出的归类方式,将基 于乘积项的可编程逻辑结构的 pld 器件归类为 cpld ;将基于查找表的可编程逻辑结构的 pld 器什归类为 fpga,那么,

apex 系列属于什么类型 pld 器件?

max ii 系列又属于什么类型的 pld 器件?为什么? p54~56

答:apex(advanced logic element matrix)系列属于 fpga 类型 pld 器件;编程信息存于 sram 中。max ii 系列属于 cpld 类型的 pld 器件;编程信息存于 eeprom 中。 第四章

4-1:画出与下例实体描述对应的原理图符号元件: entity buf3s is

-- 实体 1:三态缓冲器 -- 输入端 -- 使能端 -- 输出端

port (input : in std_logic

enable : in std_logic output : out std_logic ) end buf3x

entity mux21 is

--实体 2: 2 选 1 多路选择器

port (in0, in1, sel : in std_logic; output : out std_logic); 4-1.答案

4-2. 图 3-30 所示的是 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。 4-2.答案

library ieee;

use ieee.std_logic_1164.all; entity mux41 is

port(s:in std_logic_vector(1 downto 0); --输入选择信号 a,b,c,d:in std_logic; --输入信号 y:out std_logic);--输出端 end entity;

architecture art of mux41 is begin

process(s) begin

if (s=00) then y=a;

elsif (s=01) th en y=b; elsif (s=10) th en y=c; elsif (s=11) th en y=d; else y=null; end if;

edn process; end art; library ieee;

use ieee.std_logic_1164.all; entity mux41 is

port(s:in std_logic_vector(1 downto 0); --输入选择信号 a,b,c,d:in std_logic; --输入信号 y:out std_logic);--输出端 end mux41;

architecture art of mux41 is begin

process(s) begin

case s is

when “00” = y=a; when “01” = y=b; when “10” = y=c; when “11” = y=d; when others =null;

end case; end process; end art;

4-3. 图 3-31 所示的是双 2 选 1 多路选择器构成的电路 muxk,对于其中 mux21a,当 s=0和1时,分别有 y=a 和 y=b。试在一个结构体中用两个进程来表达此电路,每个进程中用 case 语句描述一个 2 选 1 多路选择器 mux21a。 4-3.答案

library ieee;

use ieee.std_logic_1164.all; entity mux221 is

port(a1,a2,a3:in std_logic_vector(1 downto 0); --输入信号 s0,s1:in std_logic;

outy:out std_logic);--输出端 end entity;

architecture one of mux221 is signal tmp : std_logic; begin

pr01:process(s0) begin if s0=”0” then tmp=a2; else tmp=a3; end if;

end process; pr02:process(s1) begin if s1=”0” then outy=a1; else outy=tmp; end if;

end process;

end architecture one; end case;

4-4.下图是一个含有上升沿触发的 d 触发器的时序电路,试写出此电路的 vhdl 设计文件。 4-4.答案 library ieee;

use ieee.std_logic_1164.all;

entity multi is port(cl:in std_logic; --输入选择信号 clk0:in std_logic; --输入信号 out1:out std_logic);--输出端 end entity;

architecture one of multi is signal q : std_logic; begin pr01:

process(clk0) begin

if clk ‘event and clk=’1’ then q=not(cl or q);else end if;

end process; pr02:

process(clk0) begin out1=q;

end process;

end architecture one; end process;

【篇三:eda技术实用教程第五版第13章习题答案】

p class=txt>由什么原因引起的?有什么特点?如何避免? 解:两种: (1) begin

顺序语句 end process (2) begin wait 语句;顺序语句 end process

两个的主要不同就在于敏感信号的不同

13-2比较case语句与with_select语句,叙述它

们的异同点。并用with_select_when语句描述4个16位至1个16位输出的4选1多路选择器。 答:①相同点:case语句中各子句的条件不能有重叠,必须包容所有的条件;with_seclect语句也不允许选择值有重叠现象,也不允许选择值涵盖不全的情况。另外,两者对子句各选择值的测试都具有同步性,都依赖于敏感信号的变化。