EDA技術與應用課後習題答案

  第一章

EDA技術與應用課後習題答案

1-1 EDA技術與ASIC設計和FPGA開發有什麼關係? P3~4

答:利用EDA技術進行電子系統設計的最後目標是完成專用集成電路ASIC的設計和實現;FPGA和CPLD是實現這一途徑的主流器件。FPGA和CPLD通常也被稱爲可編程專用IC,或可編程ASIC。FPGA和CPLD的應用是EDA技術有機融合軟硬件電子設計技術、SoC(片上系統)和ASIC設計,以及對自動設計與自動實現最典型的詮釋。

1-2與軟件描述語言相比,VHDL有什麼特點? P6

答:編譯器將軟件程序翻譯成基於某種特定CPU的機器代碼,這種代碼僅限於這種CPU而不能移植,並且機器代碼不代表硬件結構,更不能改變CPU的硬件結構,只能被動地爲其特定的硬件電路結構所利用。綜合器將VHDL程序轉化的目標是底層的電路結構網表文件,這種滿足VHDL設計程序功能描述的電路結構,不依賴於任何特定硬件環境;具有相對獨立性。綜合器在將VHDL(硬件描述語言)表達的電路功能轉化成具體的電路結構網表過程中,具有明顯的能動性和創造性,它不是機械的一一對應式的“翻譯”,而是根據設計庫、工藝庫以及預先設置的各類約束條件,選擇最優的方式完成電路結構的設計。

l-3什麼是綜合?有哪些類型?綜合在電子設計自動化中的地位是什麼? P5

什麼是綜合? 答:在電子設計領域中綜合的概念可以表示爲:將用行爲和功能層次表達的電子系統轉換爲低層次的便於具體實現的模塊組合裝配的過程。

有哪些類型? 答:(1)從自然語言轉換到VHDL語言算法表示,即自然語言綜合。(2)從算法表示轉換到寄存器傳輸級(RegisterTransport Level,RTL),即從行爲域到結構域的綜合,即行爲綜合。(3)從RTL級表示轉換到邏輯門(包括觸發器)的表示,即邏輯綜合。(4)從邏輯門表示轉換到版圖表示(ASIC設計),或轉換到FPGA的配置網表文件,可稱爲版圖綜合或結構綜合。

綜合在電子設計自動化中的地位是什麼? 答:是核心地位(見圖1-3)。綜合器具有更復雜的工作環境,綜合器在接受VHDL程序並準備對其綜合前,必須獲得與最終實現設計電路硬件特徵相關的工藝庫信息,以及獲得優化綜合的諸多約束條件信息;根據工藝庫和約束條件信息,將VHDL程序轉化成電路實現的相關信息。

1-4在EDA技術中,自頂向下的設計方法的重要意義是什麼? P7~10

答:在EDA技術應用中,自頂向下的設計方法,就是在整個設計流程中各設計環節逐步求精的過程。

1-5 IP在EDA技術的應用和發展中的意義是什麼? P11~12

答:IP核具有規範的接口協議,良好的可移植與可測試性,爲系統開發提供了可靠的保證。

  第二章

2-1 敘述EDA的FPGA/CPLD設計流程。 P13~16

答:1.設計輸入(原理圖/HDL文本編輯);2.綜合;3.適配;4.時序仿真與功能仿真;5.編程下載;6.硬件測試。

2-2 IP是什麼?IP與EDA技術的關係是什麼? P24~26

IP是什麼? 答:IP是知識產權核或知識產權模塊,用於ASIC或FPGA/CPLD中的預先設計好的電路功能模塊。

IP與EDA技術的關係是什麼? 答:IP在EDA技術開發中具有十分重要的地位;與EDA技術的關係分有軟IP、固IP、硬IP:軟IP是用VHDL等硬件描述語言描述的功能塊,並不涉及用什麼具體電路元件實現這些功能;軟IP通常是以硬件描述語言HDL源文件的形式出現。固IP是完成了綜合的功能塊,具有較大的設計深度,以網表文件的形式提交客戶使用。硬IP提供設計的最終階段產品:掩模。

2-3 敘述ASIC的設計方法。 P18~19

答:ASIC設計方法,按版圖結構及製造方法分有半定製(Semi-custom)和全定製(Full-custom)兩種實現方法。

全定製方法是一種基於晶體管級的,手工設計版圖的製造方法。

半定製法是一種約束性設計方式,約束的`目的是簡化設計,縮短設計週期,降低設計成本,提高設計正確率。半定製法按邏輯實現的方式不同,可再分爲門陣列法、標準單元法和可編程邏輯器件法。

2-4 FPGA/CPLD在ASIC設計中有什麼用途? P16,18

答:FPGA/CPLD在ASIC設計中,屬於可編程ASIC的邏輯器件;使設計效率大爲提高,上市的時間大爲縮短。

2-5 簡述在基於FPGA/CPLD的EDA設計流程中所涉及的EDA工具,及其在整個流程中的作用。 P19~23

答:基於FPGA/CPLD的EDA設計流程中所涉及的EDA工具有:設計輸入編輯器(作用:接受不同的設計輸入表達方式,如原理圖輸入方式、狀態圖輸入方式、波形輸入方式以及HDL的文本輸入方式。);HDL綜合器(作用:HDL綜合器根據工藝庫和約束條件信息,將設計輸入編輯器提供的信息轉化爲目標器件硬件結構細節的信息,並在數字電路設計技術、化簡優化算法以及計算機軟件等複雜結體進行優化處理);仿真器(作用:行爲模型的表達、電子系統的建模、邏輯電路的驗證及門級系統的測試);適配器(作用:完成目標系統在器件上的佈局和佈線);下載器(作用:把設計結果信息下載到對應的實際器件,實現硬件設計)。

  第三章

3-1 OLMC(輸出邏輯宏單元)有何功能?說明GAL是怎樣實現可編程組合電路與時序電路的。 P34~36

OLMC有何功能? 答:OLMC單元設有多種組態,可配置成專用組合輸出、專用輸入、組合輸出雙向口、寄存器輸出、寄存器輸出雙向口等。

說明GAL是怎樣實現可編程組合電路與時序電路的? 答:GAL(通用陣列邏輯器件)是通過對其中的OLMC(輸出邏輯宏單元)的編程和三種模式配置(寄存器模式、複合模式、簡單模式),實現組合電路與時序電路設計的。

3-2 什麼是基於乘積項的可編程邏輯結構? P33~34,40

答:GAL、CPLD之類都是基於乘積項的可編程結構;即包含有可編程與陣列和固定的或陣列的PAL(可編程陣列邏輯)器件構成。

3-3 什麼是基於查找表的可編程邏輯結構? P40~41

答:FPGA(現場可編程門陣列)是基於查找表的可編程邏輯結構。

3-4 FPGA系列器件中的LAB有何作用? P43~45

答:FPGA(Cyclone/Cyclone II)系列器件主要由邏輯陣列塊LAB、嵌入式存儲器塊(EAB)、I/O單元、嵌入式硬件乘法器和PLL等模塊構成;其中LAB(邏輯陣列塊)由一系列相鄰的LE(邏輯單元)構成的;FPGA可編程資源主要來自邏輯陣列塊LAB。