



下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第一章1-1 EDA技術與ASIC設計和FPGA開發有什么關系?答:利用EDA技術進行電子系統設計的最后目標是完成專用集成電路ASIC的設計和實現;FPGA和CPLD是實現這一途徑的主流器件。FPGA和CPLD通常也被稱為可編程專用IC ,或可編程ASIC。FPGA和CPLD的應用是EDA技術有機融合軟硬件電子設計技術、SoC (片上系統)和 ASIC設計,以及對自動設計與自動實現最典型的詮釋。1-2與軟件描述語言相比, VHDL有什么特點? P6答:編譯器將軟件程序翻譯成基于某種特定CPU的機器代碼,這種代碼僅限于這種CPU而不能移植,并且機器代碼不代表硬件結構,更不能改變CPU的硬件結構,
2、只能被動地為其特定的硬件電路結構所利用。綜合器將VHDL程序轉化的目標是底層的電路結構網表文件,這種滿足VHDL設計程序功能描述的電路結構,不依賴于任何特定硬件環境;具有相對獨立性。綜合器在將VHDL(硬件描述語言)表達的電路功能轉化成具體的電路結構網表過程中,具有明顯的能動性和創造性,它不是機械的一一對應式的“翻譯”,而是根據設計庫、工藝庫以及預先設置的各類約束條件,選擇最優的方式完成電路結構的設計。1-3什么是綜合?有哪些類型 滁合在電子設計自動化中的地位是什么?什么是綜合?答:在電子設計領域中綜合的概念可以表示為:將用行為和功能層次表達的電子系統轉換為低層次的便于具體實現的模塊組合裝配的
3、過程。有哪些類型?答:(1)從自然語言轉換到 VHDL語言算法表示,即自然語言綜合。(2)從算法表示轉換到寄存器傳輸級(RegisterTransportLevel , RTL),即從行為域到結構域的綜合,即行為綜合。(3)從RTL級表示轉換到邏輯門(包括觸發器)的表示,即邏輯綜合。(4)從邏輯門表示轉換到版圖 表示(ASIC設計),或轉換到FPGA的配置網表文件,可稱為版圖綜合或結構綜合。綜合在電子設計自動化中的地位是什么?答:是核心地位(見圖1-3)。綜合器具有更復雜的工作環境,綜合器在接受VHDL程序并準備對其綜合前,必須獲得與最終實現設計電路硬 件特征相關的工藝庫信息,以及獲得優化綜合
4、的諸多約束條件信息;根據工藝庫和約束條件信息,將 VHDL程序轉 化成電路實現的相關信息。1-4在EDA技術中,自頂向下的設計方法的重要意義是什么? P710答:在EDA技術應用中,自頂向下的設計方法,就是在整個設計流程中各設計環節逐步求精的過程。1-5 IP 在EDA技術的應用和發展中的意義是什么? P1112答:IP核具有規范的接口協議,良好的可移植與可測試性,為系統開發提供了可靠的保證。第二章2-1 敘述 EDA 的 FPGA/CPLD 設計流程。P1316答:1.設計輸入(原理圖/HDL文本編輯);2.綜合;3.適配;4.時序仿真與功能仿真;5.編程下載;6.硬件測試。2-2 IP 是
5、什么?IP 與EDA技術的關系是什么 ? P2426IP是什么?答:IP是知識產權核或知識產權模塊,用于ASIC或FPGA/CPLD中的預先設計好的電路功能模塊。IP與EDA技術的關系是什么?答:IP在EDA技術開發中具有十 分重要的地位;與 EDA技術的關系分有軟IP、固IP、硬IP :軟IP是用VHDL等硬件描述語言描述的功能塊,并不 涉及用什么具體電路元件實現這些功能;軟IP通常是以硬件描述語言 HDL源文件的形式出現。固IP是完成了綜合 的功能塊,具有較大的設計深度,以網表文件的形式提交客戶使用。硬IP提供設計的最終階段產品:掩模。2-3敘述ASIC的設計方法。P1819答:ASIC設
6、計方法,按版圖結構及制造方法分有半定制(Semi-custom)和全定制(Full-custom) 兩種實現方法。全定制方法是一種基于晶體管級的,手工設計版圖的制造方法。半定制法是一種約束性設計方式,約束的目的是簡化設計,縮短設計周期,降低設計成本,提高設計正確率。半定制法按邏輯實現的方式不同,可再分為門陣列法、標準單元法和可 編程邏輯器件法。2-4 FPGA/CPLD在ASIC 設計中有什么用途 ? P16,18答:FPGA/CPL疏ASIC設計中,屬于可編程 ASIC的 邏輯器件;使設計效率大為提高,上市的時間大為縮短。2-5 簡述在基于FPGA/CPLD的EDA設計流程中所涉及的 EDA
7、工具, 及其在整個流程中的作用。P1923答:基于FPGA/CPLD的EDA設計流程中所涉及的 EDA工具有: 設計輸入編輯器(作用:接受不同的設計輸入表達方式,如原理圖輸入方式、狀態圖輸入方式、波形輸入方式以及HDL的文本輸入方式。);HDL綜合器(作用:HDL綜合器根據工藝庫和約束條件信息,將設計輸入編輯器提供的信息 轉化為目標器件硬件結構細節的信息,并在 數字電路設計技術、化簡優化算法以及計算機軟件等復雜結體進行優化 處理);仿真器(作用:行為模型的表達、 電子系統的建模、邏輯電路的驗證及門級系統的測試);適配器(作用:完成目標系統在器件上的布局和布線);下 載器(作用:把設計結果信息下
8、載到對應的實際器件,實現硬件設計)。第三章3-1 OLMC輸出邏輯宏單元)有何功能 ?說明GAL是怎樣實現可編 程組合電路與時序電路的。P3436OLMCW何功能?答:OLMC單元設有多種組態,可配置 成專用組合輸出、專用輸入、組合輸出雙向口、寄存器 輸出、寄存器輸出雙向口等。說明GAL是怎樣實現可編程組合電路與時序電路的?答:GAL(通用陣列邏輯器件)是通過對其中的OLMC(輸出邏輯宏單元)的編程和三種模式配置(寄存器模式、復合模式、 簡單模式),實現組合電路與時序電路設計 的。3-2什么是基于乘積項的可編程邏輯結構 ? P3334 , 40答:GAL CPLD之類都是基于乘積項的可編程結構
9、;即 包含有可編程與陣列和固定的或陣列的PAL (可編程陣列邏輯)器件構成。3-3什么是基于查找表的可編程邏輯結構 ? P4041答:FPGA(現場可編程門陣列)是基于查找表的可編程 邏輯結構。3-4 FPGA系列器件中的LAB有何作用?答:FPGA( Cyclone/Cyclone II )系列器件主要由邏輯陣列塊 LAB、嵌 入式存儲器塊(EAB、I/O單元、嵌入式硬件乘法器和 PLL等模塊構成;其中 LAB (邏輯陣列塊)由一系列 相鄰的LE (邏輯單元)構成的;FPGA可編程資源主要來自邏輯陣列塊 LAB。3-5與傳統的測試技術相比,邊界掃描技術有何優點? P4750答:使用BST (
10、邊界掃描測試)規范測試,不必使用物理探 針,可在器件正常工作時在系統捕獲測量的功能數據。克服傳統的外探針測試法和“針床”夾具測試法來無法對IC內部節點無法測試的難題。3-6解釋編程與配置這兩個概念。P58答:編程:基于電可擦除存儲單元的EEPROM或Flash技術。CPLD一股使用此技術進行編程。CPLD被編程后改變了電可擦除存儲單元中的信息,掉電后可保存。電可擦除編程工藝的優點是編程后信息不會因掉電而丟失,但編 程次數有限,編程的速度不快。配置:基于SRAM查找表的編程單元。編程信息是保存在SRAM中的,SRAM在掉電后編程信息立即丟失,在下次上電后,還需要重新載入編程信息。大部分FPGA采
11、用該種編程工藝。該類器件的編程一般稱為配置。對于 SRAM型FPGA來說,配置次數無限,且速度快;在加電時可隨時更改邏輯; 下載信息的保密性也不如電可擦除的編程。3-7請參閱相關資料,并回答問題:按本章給出的歸類方式, 將基 于乘積項的可編程邏輯結構的PLD器件歸類為CPLD;將基于查找表的可編程邏輯結構的PLD器什歸類為FPGA,那么,APEX系列屬于什么類型 PLD器件? MAXII系列又屬于什么類型的 PLD器件?為什么?P5456答:APEX(Advanced Logic Element Matrix)系列屬于 FPGA 類型 PLD 器 件;編程信息存于 SRAM中。MAX II系列
12、屬于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, ini, sel : IN STD_LOGIC;output : OUT STD_LOGIC);4-1.答案4-2.圖3-30所示的是4選1多路選擇器,
13、試分別用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、yv=b、yv=c、yv=d。4-2.答案LIBRARY IEEE;USE MUX41 ISPORT(s:IN STD_LOGIC_VECTOR(1 DOWN
14、TO 0);-輸入選擇信號a,b,c,d:IN STD_LOGIC;-輸入信號y:OUT STD_LOGIC);-輸出端END ENTITY;ARCHITECTURE ART OF MUX41 ISBEGINPROCESS(s)BEGINIF (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 PR
15、OCESS;END ART;LIBRARY IEEE;USE MUX41 ISPORT(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 ISBEGINPROCESS(s)BEGINCASE s ISWHEN “00" => y<=a;WHEN “01 " => y<=b;WHEN “10" => y<=c;WHEN “11"
16、; => 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' o試在一個結構體中用兩個進程來表達此電路,每個進程中用CASE語句描述一個2選1多路選擇器 MUX21A4-3.答案LIBRARY IEEE;USE MUX221 ISPORT(a1,a2,a3:IN STD_LOGIC_VECTOR(1 DO
17、WNTO 0);-輸入信號 s0,s1:IN STD_LOGIC;outy:OUT STD_LOGIC);-輸出端4-5.答案END ENTITY;底層文件1 :實現或門操作ARCHITECTURE ONE OF MUX2211sLIBRARY IEEE;SIGNAL tmp : STD_LOGIC;USE or2a ISBEGINPORT(a,b:IN STD_LOGIC;PR01:PROCESS(s0)c:OUT STD_LOGIC);BEGINEND ENTITY or2a;IF s0= " 0" THEN tmp<=a2;ARCHITECTURE one OF
18、 or2a ISELSE tmp<=a3;BEGINEND IF;c <= a OR b;END PROCESS;END ARCHITECTURE one;PR02:PROCESS(s1)底層文件2 :實現一位半減器BEGINLIBRARY IEEE;IF s1= " 0" THEN outy<=a1;USE h_subber ISELSE outy<=tmp;PORT(x,y:IN STD_LOGIC;END IF;diff,s_out:OUT STD_LOGIC);END PROCESS;END ENTITY h_subber;END ARCHI
19、TECTURE ONE;ARCHITECTURE ONE OF h_subber ISEND CASE;SIGNAL xyz: STD_LOGIC_VECTOR(1 DOWNTO 0);4-4.下圖是一個含有上升沿觸發的D觸發器的時序電路,試寫出此電BEGIN路的VHDL設計文件。xyz <= x & y;4-4.答案PROCESS(xyz)LIBRARY IEEE;BEGINUSE MULTI ISCASE xyz ISPORT(CL:IN STD_LOGIC;-輸入選擇信號WHEN "00" => diff<='0's_out&
20、lt;='0'CLK0:IN STD_LOGIC;-輸入信號WHEN "01" => diff<='1's_out<='1'OUT1:OUT STD_LOGIC);-輸出端WHEN "10" => diff<='1's_out<='0'END ENTITY;WHEN "11" => diff<='0's_out<='0'ARCHITECTURE ONE OF MULTI
21、ISWHEN OTHERS => NULL;SIGNAL Q : STD_LOGIC;END CASE;BEGINEND PROCESS;PR01:END ARCHITECTURE ONE;PROCESS(CLK0)頂層文件:實現一位全減器BEGINLIBRARY IEEE;IF CLK ' EVENT AND CLK= 1USE f_subber ISTHEN Q<=NOT(CL OR Q);ELSEPORT(x,y,sub_in:IN STD_LOGIC;END IF;diffr,sub_out:OUT STD_LOGIC);END PROCESS;END ENTITY
22、 f_subber;PR02:ARCHITECTURE ONE OF f_subber ISPROCESS(CLK0)COMPONENT h_subberBEGINPORT(x,y:IN STD_LOGIC;OUT1<=Q;diff,S_out:OUT STD_LOGIC);END PROCESS;END COMPONENT;END ARCHITECTURE ONE;COMPONENT or2aEND PROCESS;PORT(a,b:IN STD_LOGIC;4-5.給出1位全減器的VHDL描述。要求:c:OUT STD_LOGIC);(1)首先設計1位半減器,然后用例化語句將它們連接
23、起來,圖END COMPONENT;3-32中h_suber 是半減器,diff 是輸出差,SIGNAL d,e,f: STD_LOGIC;s_out是借位輸出,sub_in是借位輸入。BEGIN(2)以1位全減器為基本硬件,構成串行借位的8位減法器,要u1: h_subber PORT MAP(x=>x,y=>y,diff=>d,s_out=>e);求用例化語句來完成此項設計(減法運算是xu2: h_subber PORT MAP(x=>d,y=>sub_in,diff=>diffr,s_out=>f);y - sun_in = diffr)u
24、3: or2a PORT MAP(a=>f,b=>e,c=>sub_out);END ARCHITECTURE ONE;END ARCHITECTURE ART;4-6.根據下圖,寫出頂層文件的VHDL設計文件。4-6.答案MAX3256頂層文件LIBRARY IEEE;USE MAX3256 ISPORT (INA,INB,INCK: IN STD_LOGIC;INC: IN STD_LOGIC;E,OUT:OUT STD_LOGIC);END ENTITY MAX3256;ARCHITECTURE ONE OF MAX3256 ISCOMPONENT LK35調用LK35
25、聲明語句PORT(A1,A2:IN STD_LOGIC;CLK:IN STD_LOGIC;Q1,Q2:OUT STD_LOGIC);END COMPONENT;COMPONENT D調用D觸發器聲明語句PORT(D,C:IN STD_LOGIC;CLK:IN STD_LOGIC;Q:OUT STD_LOGIC);END COMPONENT;COMPONENT MUX淵用二選一選擇器聲明語句PORT(B,A:IN STD_LOGIC;S:IN STD_LOGIC;C:OUT STD_LOGIC);END COMPONENT;SIGNAL AA,BB,CC,DD: STD_LOGIC;BEGINu
26、1: LK35 PORT MAP(A1=>INA,A2=>INB,CLK=INCK, Q1=>AA,Q2=>BB);u2: D PORT MAP(D=>BB;CLK=>INCK,C=>INC,Q=>CC);u3: LK35 PORT MAP (A1=>BB,A2=>CC,CLK=INCK, Q1=>DD,Q2=>OUT1;) u4: MUX21 PORT MAP (B=>AA,A=>DD,S=>BB,C=>E);END ARCHITECTURE ONE;設計含有異步清零和計數使能的16位二進制加減可
27、控計數器。4-7.答案:LIBRARY IEEE;USE CNT16 ISPORT(CLK,RST,EN:IN STD_LOGIC;CHOOSE:IN BIT;SETDATA:BUFFER INTEGER RANCE 65535 DOWNTO 0;COUT: BUFFER INTEGER RANCE 65535 DOWNTO 0);END CNT16;ARCHITECTURE ONE OF CNT16 ISBEGINPROCESS(CLK,RST,SDATA)VARIABLE QI:STD_LOGIC_VECTOR(65535 DOWNTO 0);BEGINIF RST='1'
28、 THEN - 計數器異步復位QI:=(OTHERS=>'0');ELSIF SET= 1' THEN-計數器一步置位QI:=SETDATA;ELSIF CLK'EVENT AND CLK='1' THEN -檢測時鐘上升沿IF EN=' 1 THEN -檢測是否允許計數IF CHOOSE= 1' THEN -選擇力口法計數QI:=QI+1;-計數器加一ELSE QI=QI-1;- 計數器加一END IF;END IF;END IF;COUT<=QI;-將計數值向端口輸出END PROCESS;END ONE;第五章5
29、-1歸納利用Quartus II 進行VHDL文本輸入設計的流程:從文件輸入一直到 SignalTap II 測試。P95P115答:1建立工作庫文件夾和編輯設計文件;2創建工程;3編譯前設置;4全程編譯;5時序仿真;6引腳鎖定;7配置文件下載;8打開SignalTap II編輯窗口; 9調入 SignalTap II的待測信號;10 SignalTap II參數設置;11 SignalTap II參數設置文件存盤;12 帶有SignalTapII測試信息的編譯下載;13啟動SignalTapII進行采樣與分析;14 SignalTap II的其他設置和控制方法。第六章6-1什么是固有延時?什
30、么是慣性延時?P150151答:固有延時(Inertial Delay) 也稱為慣性延時,固有延時的主要物理 機制是分布電容效應。6-2 S是什么?在VHDL中,S有什么用處 ?P152S是什么?答:在VHDL仿真和綜合器中,默認的固有延時量(它在數學上是一個無窮小量),被稱為S延時。在VHDL中,S有什么用處?答:在VHDL信號賦值中未給出固有 延時情況下,VHDL仿真器和綜合器將自動為系統中的信號賦值配置一足夠小而又能滿足邏輯排序的延時量6 ;使并 行語句和順序語句中的并列賦值邏輯得以正確執行。6-4說明信號和變量的功能特點,以及應用上的異同點。P128P129答:變量:變量是一個局部量,
31、只能在進程和子程序中使用。變量不能 將信息帶出對它做出定義的當前結構。變量的賦值是一種理想化的數據傳輸,是立即發生的,不存在任何延時 行為。變量的主要作用是在進程中作為臨時的數據存儲單元。信號:信號是描述硬件系統的基本數據對象,其性質類似于連接線;可作為設計實體中并行語句模塊間的信息交流通道。信號不但可以容納當前值,也可以保持歷史值;與觸發 器的記憶功能有很好的對應關系。6-5在VHDL設計中,給時序電路清零(復位)有兩種力方法,它們是什 么?解:設Q定義成信號,一種方法:Q<= "000000”;其中“ 000000” 反映出信號Q的位寬度。第二種方法:Q<=(OTHE
32、RS=>0');其中OTHERS=>' 0'不需要給出信號 Q的 位寬度,即可對 Q清零。6-6哪一種復位方法必須將復位信號放在敏感信號表中?給出這兩種電路的VHDL描述。解:邊沿觸發復位信號要將復位信號放在進程的敏感信號表中。(1)邊沿觸發復位信號ARCHITECTURE bhv 0F DFF3 ISSIGNAL QQ:STD_LOGIC;BEGINPROCESS(RST)BEGINIF RST ' EVENT AND RST = 1' THEN QQ<=(OTHERS=>0');END IF;END PROCESS;Q1<=QQ;END;(2)電平觸發復位信號ARCHITECTURE bhv 0F DFF3 ISSI
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論