eda第四版課后答案(2)
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:三態(tài)緩沖器
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-2. 圖3-30所示的是4選1多路選擇器,試分別用IF_THEN語句和CASE語句的表達方式寫出此電路的VHDL程序。選擇控制的信號s1和s0的數(shù)據(jù)類型為STD_LOGIC_VECTOR;當s1='0',s0='0';s1='0',s0='1';s1='1',s0='0'和s1='1',s0='1'分別執(zhí)行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;
