EDA技術實用教程習題答案——潘松_黃繼業(yè)_第1頁
EDA技術實用教程習題答案——潘松_黃繼業(yè)_第2頁
EDA技術實用教程習題答案——潘松_黃繼業(yè)_第3頁
EDA技術實用教程習題答案——潘松_黃繼業(yè)_第4頁
EDA技術實用教程習題答案——潘松_黃繼業(yè)_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、EDAEDA 技術實用教程技術實用教程潘松 黃繼業(yè)第一章第一章 1-11-1 EDAEDA 技術與技術與 ASICASIC 設計和設計和 FPGAFPGA 開發(fā)有什么關系開發(fā)有什么關系? ? 答:利用答:利用 EDAEDA 技術技術進行進行電子系統(tǒng)設計電子系統(tǒng)設計的最后目標是完成的最后目標是完成專用集成電路專用集成電路 ASICASIC 的設計和實現(xiàn)的設計和實現(xiàn);FPGAFPGA 和和 CPLDCPLD 是實現(xiàn)這一途徑的是實現(xiàn)這一途徑的主流主流器件器件。FPGAFPGA 和和 CPLDCPLD 通常也被稱為通常也被稱為可編程專用可編程專用 ICIC,或,或可編程可編程 ASICASIC。FPG

2、AFPGA 和和 CPLDCPLD 的應用是的應用是 EDAEDA 技術有機融合軟硬件電子設計技術、技術有機融合軟硬件電子設計技術、SoCSoC(片上系統(tǒng))和(片上系統(tǒng))和 ASICASIC 設計,以及對自動設計與自動實現(xiàn)最典型的詮釋。設計,以及對自動設計與自動實現(xiàn)最典型的詮釋。 1-21-2 與軟件描述語言相比,與軟件描述語言相比,VHDLVHDL 有什么特點有什么特點? ? 答:編譯器將軟件程序翻譯成基于某種特定答:編譯器將軟件程序翻譯成基于某種特定 CPUCPU 的機器代碼,這種代碼僅限于這種的機器代碼,這種代碼僅限于這種 CPUCPU 而不能移植,并且機器代碼不代表硬件結而不能移植,并

3、且機器代碼不代表硬件結構,更不能改變構,更不能改變 CPUCPU 的硬件結構,只能被動地為其特定的硬件電路結構所利用。的硬件結構,只能被動地為其特定的硬件電路結構所利用。綜合器綜合器將將 VHDLVHDL 程序轉化程序轉化的目標是底層的電路結構的目標是底層的電路結構網網表文件表文件,這種滿足,這種滿足 VHDLVHDL 設計程序功能描述的電路結構,不依賴于任何特定硬件環(huán)境;具有相對獨立性。綜合器在將設計程序功能描述的電路結構,不依賴于任何特定硬件環(huán)境;具有相對獨立性。綜合器在將 VHDL(VHDL(硬件描述硬件描述語言語言) )表達的電路功能轉化成具體的電路結構網表過程中,具有明顯的表達的電路

4、功能轉化成具體的電路結構網表過程中,具有明顯的能動性和創(chuàng)造性能動性和創(chuàng)造性,它不是機械的一一對應式的,它不是機械的一一對應式的“翻譯翻譯” ,而是根,而是根據(jù)設計庫、工藝庫以及預先設置的各類約束條件,選擇最優(yōu)的方式完成電路結構的設計。據(jù)設計庫、工藝庫以及預先設置的各類約束條件,選擇最優(yōu)的方式完成電路結構的設計。 l-3l-3 什么是綜合什么是綜合? ?有哪些類型有哪些類型? ?綜合在電子設計自動化中的地位是什么綜合在電子設計自動化中的地位是什么? ? 什么是綜合什么是綜合? ? 答:在電子設計領域中綜合的概念可以表示為:將答:在電子設計領域中綜合的概念可以表示為:將用行為和功能層次表達的電子系

5、統(tǒng)用行為和功能層次表達的電子系統(tǒng)轉換為轉換為低層次低層次的便于的便于具體實現(xiàn)具體實現(xiàn)的模塊組合裝配的模塊組合裝配的過程。的過程。有哪些類型有哪些類型? ? 答:答:(1)(1)從自然語言轉換到從自然語言轉換到 VHDLVHDL 語言算法表示,即語言算法表示,即自然語言綜合自然語言綜合。(2)(2)從算法表示轉換到寄存器傳輸級從算法表示轉換到寄存器傳輸級(RegisterTransport(RegisterTransport LevelLevel,RTL)RTL),即從行為域到結構域的綜合,即,即從行為域到結構域的綜合,即行為綜合行為綜合。(3)(3)從從 RTLRTL 級表示轉換到邏輯門級表示

6、轉換到邏輯門( (包括觸發(fā)器包括觸發(fā)器) )的表示,的表示,即即邏輯綜合邏輯綜合。(4)(4)從邏輯門表示轉換到版圖表示從邏輯門表示轉換到版圖表示(ASIC(ASIC 設計設計) ),或轉換到,或轉換到 FPGAFPGA 的配置網表文件,可稱為的配置網表文件,可稱為版圖綜合或結構綜合版圖綜合或結構綜合。綜合在電子設計自動化中的地位是什么綜合在電子設計自動化中的地位是什么? ? 答:是核心地位(見圖答:是核心地位(見圖 1-31-3) 。綜合器具有更復雜的工作環(huán)境,綜合器在接受。綜合器具有更復雜的工作環(huán)境,綜合器在接受 VHDLVHDL 程序程序并準備對其綜合前,必須獲得與最終實現(xiàn)設計電路硬件特

7、征相關的并準備對其綜合前,必須獲得與最終實現(xiàn)設計電路硬件特征相關的工藝庫信息工藝庫信息,以及獲得優(yōu)化綜合的,以及獲得優(yōu)化綜合的諸多約束條件信息諸多約束條件信息;根據(jù);根據(jù)工藝庫工藝庫和約束條件信息和約束條件信息,將,將 VHDLVHDL 程序轉化成電路實現(xiàn)的相關信息程序轉化成電路實現(xiàn)的相關信息。 1-41-4 在在 EDAEDA 技術中,自頂向下的設計方法的重要意義是什么技術中,自頂向下的設計方法的重要意義是什么? ? 答:在答:在 EDAEDA 技術應用中,技術應用中,自頂向下自頂向下的設計方法,就是在整個設計流程中各設計環(huán)節(jié)的設計方法,就是在整個設計流程中各設計環(huán)節(jié)逐步求精逐步求精的過程。

8、的過程。 1-51-5 IPIP 在在 EDAEDA 技術的應用和發(fā)展中的意義是什么技術的應用和發(fā)展中的意義是什么? ? 答:答:IPIP 核具有規(guī)范的接口協(xié)議,良好的核具有規(guī)范的接口協(xié)議,良好的可移植可移植與與可測試性可測試性,為系統(tǒng)開發(fā)提供了,為系統(tǒng)開發(fā)提供了可靠的保證可靠的保證。第二章第二章 2-12-1 敘述敘述 EDAEDA 的的 FPGA/CPLDFPGA/CPLD 設計流程設計流程。 P1316P1316答:答:1.1.設計輸入設計輸入( (原理圖原理圖/ /HDLHDL 文本編輯文本編輯) );2.2.綜合綜合;3.3.適配適配;4.4.時序仿真與功能仿真時序仿真與功能仿真;5

9、.5.編程下載編程下載;6.6.硬件測試硬件測試。 2-22-2 IPIP 是什么是什么?IP?IP 與與 EDAEDA 技術的關系是什么技術的關系是什么? ? P2426P2426IPIP 是什么是什么? ? 答:答:IPIP 是知識產權核或知識產權模塊,是知識產權核或知識產權模塊,用于用于 ASICASIC 或或 FPGA/CPLDFPGA/CPLD 中的預先設計好的電路功能模塊中的預先設計好的電路功能模塊。IPIP 與與 EDAEDA 技術的關系是什么技術的關系是什么? ? 答:答:IPIP 在在 EDAEDA 技術開發(fā)中具有十分重要的地位;與技術開發(fā)中具有十分重要的地位;與 EDAED

10、A 技術的關系分有技術的關系分有軟軟 IPIP、固固 IPIP、硬硬 IPIP:軟軟IPIP 是用是用 VHDLVHDL 等硬件描述語言描述的功能塊等硬件描述語言描述的功能塊,并不涉及用什么具體電路元件實現(xiàn)這些功能;,并不涉及用什么具體電路元件實現(xiàn)這些功能;軟軟 IPIP 通常是以硬件描述語言通常是以硬件描述語言 HDLHDL 源文件源文件的形式出現(xiàn)。的形式出現(xiàn)。固固 IPIP 是完成了綜合的功能塊是完成了綜合的功能塊,具有較大的設計深度,以,具有較大的設計深度,以網表文件的形式提交客戶使用網表文件的形式提交客戶使用。硬硬 IPIP 提供設計的最終階段產品提供設計的最終階段產品:掩模。掩模。

11、2-32-3 敘述敘述 ASICASIC 的設計方法。的設計方法。 P1819P1819答:答:ASICASIC 設計方法設計方法, ,按版圖結構及制造方法分有按版圖結構及制造方法分有半定制半定制(Semi-custom)(Semi-custom)和和全定制全定制(Full-custom)(Full-custom)兩種實現(xiàn)方法。兩種實現(xiàn)方法。全定制方法是一種全定制方法是一種基于晶體管基于晶體管級的,級的,手工手工設計版圖的制造方法。設計版圖的制造方法。半定制法是一種半定制法是一種約束性約束性設計方式,約束的目的是簡化設計,縮短設計周期,降低設計成本,提高設計正確率。半定制法按邏輯實設計方式,約

12、束的目的是簡化設計,縮短設計周期,降低設計成本,提高設計正確率。半定制法按邏輯實現(xiàn)的方式不同,可再分為現(xiàn)的方式不同,可再分為門陣列法門陣列法、標準單元法標準單元法和和可編程邏輯器件法可編程邏輯器件法。 2-42-4 FPGA/CPLDFPGA/CPLD 在在 ASICASIC 設計中有什么用途設計中有什么用途? ? P16,18P16,18答:答:FPGA/CPLDFPGA/CPLD 在在 ASICASIC 設計中,設計中,屬于可編程屬于可編程 ASICASIC 的邏輯器件的邏輯器件;使設計效率大為提高,上市的時間大為縮短。;使設計效率大為提高,上市的時間大為縮短。 2-52-5 簡述在基于簡

13、述在基于 FPGA/CPLDFPGA/CPLD 的的 EDAEDA 設計流程中所涉及的設計流程中所涉及的 EDAEDA 工具,及其在整個流程中的作用。工具,及其在整個流程中的作用。 P1923P1923答:基于答:基于 FPGA/CPLDFPGA/CPLD 的的 EDAEDA 設計流程中所涉及的設計流程中所涉及的 EDAEDA 工具工具有:有:設計輸入編輯器設計輸入編輯器(作用:接受不同的設計輸入表達方式,如(作用:接受不同的設計輸入表達方式,如原理圖原理圖輸入方式輸入方式、狀態(tài)圖輸入方式狀態(tài)圖輸入方式、波形輸入方式波形輸入方式以及以及 HDLHDL 的文本輸入方式的文本輸入方式。 ) ;HD

14、LHDL 綜合器綜合器(作用:(作用:HDLHDL 綜合器綜合器根據(jù)工藝庫根據(jù)工藝庫和和約束條件信息約束條件信息,將將設計輸入編輯器提供的信息轉設計輸入編輯器提供的信息轉化為化為目標器件硬件結構細節(jié)的信息目標器件硬件結構細節(jié)的信息,并在數(shù)字電路設計技術、化簡優(yōu)化算法以及計算機軟件等復雜結,并在數(shù)字電路設計技術、化簡優(yōu)化算法以及計算機軟件等復雜結體進行優(yōu)化處理)體進行優(yōu)化處理) ;仿真器仿真器(作用:(作用:行為模型的表達行為模型的表達、電子系統(tǒng)的建模電子系統(tǒng)的建模、邏輯電路邏輯電路的的驗證驗證及及門級系統(tǒng)的測試門級系統(tǒng)的測試) ;適配器適配器(作用:完成目(作用:完成目標系統(tǒng)在器件上的標系統(tǒng)在

15、器件上的布局布局和和布線布線) ;下載器下載器(作用:把設計結(作用:把設計結果信息下載到對應的實際器件果信息下載到對應的實際器件,實現(xiàn)硬件設計),實現(xiàn)硬件設計) 。第三章第三章 3-13-1 OLMCOLMC(輸出邏輯宏單元)(輸出邏輯宏單元)有何功能有何功能? ?說明說明 GALGAL 是怎樣實現(xiàn)可編程組合電路與時序電路的。是怎樣實現(xiàn)可編程組合電路與時序電路的。 P3436P3436OLMCOLMC 有何功能有何功能? ? 答:答:OLMCOLMC 單元設有多種組態(tài)單元設有多種組態(tài),可配置成,可配置成專用組合輸出專用組合輸出、專用輸入專用輸入、組合輸出雙向口組合輸出雙向口、寄存器輸出寄存器

16、輸出、寄存器輸出寄存器輸出雙向口雙向口等。等。說明說明 GALGAL 是怎樣實現(xiàn)可編程組合電路與時序電路的是怎樣實現(xiàn)可編程組合電路與時序電路的? ? 答:答:GALGAL(通用陣列邏輯器件)是通過對其中的(通用陣列邏輯器件)是通過對其中的 OLMCOLMC(輸出輸出邏輯宏單元)的邏輯宏單元)的編程和編程和三種模式配置三種模式配置(寄存器模式寄存器模式、復合模式復合模式、簡單模式簡單模式) ,實現(xiàn),實現(xiàn)組合電路組合電路與與時序電路時序電路設計的。設計的。 3-23-2 什么是基于乘積項的可編程邏輯結構什么是基于乘積項的可編程邏輯結構? ? P3334P3334,4040答:答:GALGAL、CP

17、LDCPLD 之類都是之類都是基于乘積項基于乘積項的的可編程可編程結構;即包含有結構;即包含有可編程與陣列可編程與陣列和和固定的或陣列固定的或陣列的的 PALPAL(可編程陣列邏輯)(可編程陣列邏輯)器件構成。器件構成。 3-33-3 什么是基于查找表的可編程邏輯結構什么是基于查找表的可編程邏輯結構? ? P4041P4041答:答:FPGAFPGA(現(xiàn)場可編程門陣列)是(現(xiàn)場可編程門陣列)是基于查找表基于查找表的的可編程邏輯結構可編程邏輯結構。 3-43-4 FPGAFPGA 系列器件中的系列器件中的 LABLAB 有何作用有何作用? ? P4345P4345答:答:FPGAFPGA(Cyc

18、lone/CycloneCyclone/Cyclone IIII)系列器件主要由)系列器件主要由邏輯陣列塊邏輯陣列塊 LABLAB、嵌入式存儲器塊(嵌入式存儲器塊(EABEAB) 、I/OI/O 單元單元、嵌入式硬件乘法器嵌入式硬件乘法器和和PLLPLL 等模塊構成;其中等模塊構成;其中 LABLAB(邏輯陣列塊)由一系列相鄰的(邏輯陣列塊)由一系列相鄰的 LELE(邏輯單元)構成的(邏輯單元)構成的;FPGAFPGA 可編程資源主要來自邏輯陣列塊可編程資源主要來自邏輯陣列塊 LABLAB。 3-53-5 與傳統(tǒng)的測試技術相比,邊界掃描技術有何優(yōu)點與傳統(tǒng)的測試技術相比,邊界掃描技術有何優(yōu)點?

19、? P4750P4750答:使用答:使用 BSTBST(邊界掃描測試)(邊界掃描測試)規(guī)范測試,規(guī)范測試,不必使用物理探針不必使用物理探針,可在器件正常工作時在系統(tǒng),可在器件正常工作時在系統(tǒng)捕獲測量的功能數(shù)據(jù)捕獲測量的功能數(shù)據(jù)??朔鹘y(tǒng)的外??朔鹘y(tǒng)的外探針測試法和探針測試法和“針床針床”夾具測試法來無法對夾具測試法來無法對 ICIC 內部節(jié)點無法測試的難題。內部節(jié)點無法測試的難題。 3-63-6 解釋編程與配置這兩個概念。解釋編程與配置這兩個概念。 P58P58答:編程:答:編程:基于基于電可擦除存儲單元的電可擦除存儲單元的 EEPROMEEPROM 或或 FlashFlash 技術技術。C

20、PLDCPLD 一股使用此技術進行編程。一股使用此技術進行編程。CPLDCPLD 被編程后改變了電可擦除存儲被編程后改變了電可擦除存儲單元中的信息,單元中的信息,掉電后可保存掉電后可保存。電可擦除編程工藝的優(yōu)點是編程后。電可擦除編程工藝的優(yōu)點是編程后信息不會因掉電而丟失信息不會因掉電而丟失,但,但編程次數(shù)有限編程次數(shù)有限,編程的速度不快編程的速度不快。配置:配置:基于基于 SRAMSRAM 查找表的編程單元查找表的編程單元。編程。編程信息是保存在信息是保存在 SRAMSRAM 中中的,的,SRAMSRAM 在在掉電后編程信息立即丟失掉電后編程信息立即丟失,在,在下次上電后,還下次上電后,還需要

21、重新載入編程信息需要重新載入編程信息。大部分。大部分 FPGAFPGA 采用該種編程工藝。采用該種編程工藝。該類器件的編程一般稱為配置該類器件的編程一般稱為配置。對于。對于 SRAMSRAM 型型 FPGAFPGA 來說,來說,配置次數(shù)無限配置次數(shù)無限,且且速度快速度快;在;在加電時可隨時更改邏輯加電時可隨時更改邏輯;下載信息的保密性也不如電可擦除的編程。;下載信息的保密性也不如電可擦除的編程。 3-73-7 請參閱相關資料,并回答問題:按本章給出的歸類方式,將基于乘積項的可編程邏輯結構的請參閱相關資料,并回答問題:按本章給出的歸類方式,將基于乘積項的可編程邏輯結構的 PLDPLD 器件歸類為

22、器件歸類為 CPLDCPLD;將基于查;將基于查找表的可編程邏輯結構的找表的可編程邏輯結構的 PLDPLD 器什歸類為器什歸類為 FPGAFPGA,那么,那么,APEXAPEX 系列屬于什么類型系列屬于什么類型 PLDPLD 器件器件? ? MAXMAX IIII 系列又屬于什么類型的系列又屬于什么類型的 PLDPLD 器件器件? ?為什么為什么? ? P5456P5456答:答:APEXAPEX(Advanced(Advanced LogicLogic ElementElement Matrix)Matrix)系列屬于系列屬于 FPGAFPGA 類型類型 PLDPLD 器件器件;編程信息存于

23、編程信息存于 SRAMSRAM 中中。MAXMAX IIII 系列屬于系列屬于 CPLDCPLD 類型類型的的 PLDPLD 器件器件;編程信息存于編程信息存于 EEPROMEEPROM 中中。第四章第四章4-14-1:畫出與下例實體描述對應的原理圖符號元件:畫出與下例實體描述對應的原理圖符號元件: ENTITYENTITY buf3sbuf3s ISIS - 實體實體 1 1:三態(tài)緩沖器:三態(tài)緩沖器 PORTPORT (input(input : : ININ STD_LOGICSTD_LOGIC ; ; - 輸入端輸入端 enableenable : : ININ STD_LOGICSTD

24、_LOGIC ; ; - 使能端使能端 outputoutput : : OUTOUT STD_LOGICSTD_LOGIC ) ) ; ; - 輸出端輸出端ENDEND buf3xbuf3x ; ;ENTITYENTITY mux21mux21 ISIS -實體實體 2 2: 2 2 選選 1 1 多路選擇器多路選擇器PORTPORT (in0,(in0, in1,in1, selsel : : ININ STD_LOGIC;STD_LOGIC;outputoutput : : OUTOUT STD_LOGIC);STD_LOGIC);4-1.4-1.答案答案 4-2.4-2. 圖圖 3-3

25、03-30 所示的是所示的是 4 4 選選 1 1 多路選擇器,試分別用多路選擇器,試分別用 IF_THENIF_THEN 語句和語句和 CASECASE 語句的表達方式寫出此電路的語句的表達方式寫出此電路的 VHDLVHDL 程序。選擇控制的信號程序。選擇控制的信號s1s1 和和 s0s0 的數(shù)據(jù)類型為的數(shù)據(jù)類型為 STD_LOGIC_VECTORSTD_LOGIC_VECTOR;當;當 s1=0s1=0,s0=0s0=0;s1=0s1=0,s0=1s0=1;s1=1s1=1,s0=0s0=0和和 s1=1s1=1,s0=1s0=1分別執(zhí)行分別執(zhí)行y=ay=a、y=by=b、y=cy=c、y

26、=dy=d。 4-2.4-2.答案答案LIBRARYLIBRARY IEEE;IEEE;USEUSE IEEE.STD_LOGIC_1164.ALL;IEEE.STD_LOGIC_1164.ALL;ENTITYENTITY MUX41MUX41 ISISPORT(s:INPORT(s:IN STD_LOGIC_VECTOR(1STD_LOGIC_VECTOR(1 DOWNTODOWNTO 0);0); -輸入選擇信號輸入選擇信號 a,b,c,d:INa,b,c,d:IN STD_LOGIC;STD_LOGIC; -輸入信號輸入信號 y:OUTy:OUT STD_LOGIC);-STD_LOGI

27、C);-輸出端輸出端ENDEND ENTITY;ENTITY;ARCHITECTUREARCHITECTURE ARTART OFOF MUX41MUX41 ISISBEGINBEGINPROCESS(s)PROCESS(s)BEGINBEGINIFIF (S=00)(S=00) THENTHEN y=a;y=a;ELSIFELSIF (S=01)(S=01) THTH ENEN y=b;y=b;ELSIFELSIF (S=10)(S=10) THTH ENEN y=c;y=c;ELSIFELSIF (S=11)(S=11) THTH ENEN y=d;y=d;ELSEELSE y=NULL;

28、y= y=a;y= y=b;y= y=c;y= y=d;yNULL;=NULL;ENDEND CASE;CASE;ENDEND PROCESS;PROCESS;ENDEND ART;ART;4-3.4-3. 圖圖 3-313-31 所示的是雙所示的是雙 2 2 選選 1 1 多路選擇器構成的電路多路選擇器構成的電路 MUXKMUXK,對于其中,對于其中 MUX21AMUX21A,當,當 s=0s=0和和11時,分別有時,分別有 y=ay=a和和 y=by=b。試在。試在一個結構體中用兩個進程來表達此電路,每個進程中用一個結構體中用兩個進程來表達此電路,每個進程中用 CASECASE 語句描述一

29、個語句描述一個 2 2 選選 1 1 多路選擇器多路選擇器 MUX21AMUX21A。4-3.4-3.答案答案LIBRARYLIBRARY IEEE;IEEE;USEUSE IEEE.STD_LOGIC_1164.ALL;IEEE.STD_LOGIC_1164.ALL;ENTITYENTITY MUX221MUX221 ISISPORT(a1,a2,a3:INPORT(a1,a2,a3:IN STD_LOGIC_VECTOR(1STD_LOGIC_VECTOR(1 DOWNTODOWNTO 0);0); -輸入信號輸入信號 s0,s1:INs0,s1:IN STD_LOGIC;STD_LOGI

30、C; outy:OUTouty:OUT STD_LOGIC);-STD_LOGIC);-輸出端輸出端ENDEND ENTITY;ENTITY;ARCHITECTUREARCHITECTURE ONEONE OFOF MUX221MUX221 ISISSIGNALSIGNAL tmptmp : : STD_LOGIC;STD_LOGIC;BEGINBEGINPR01:PROCESS(s0)PR01:PROCESS(s0)BEGINBEGINIFIF s0=”0”s0=”0” THENTHEN tmp=a2;tmp=a2;ELSEELSE tmp=a3;tmp=a3;ENDEND IF;IF;EN

31、DEND PROCESS;PROCESS;PR02:PROCESS(s1)PR02:PROCESS(s1)BEGINBEGINIFIF s1=”0”s1=”0” THENTHEN outy=a1;outy=a1;ELSEELSE outy=tmp;outy=tmp;ENDEND IF;IF;ENDEND PROCESS;PROCESS;ENDEND ARCHITECTUREARCHITECTURE ONE;ONE;ENDEND CASE;CASE;4-4.4-4.下圖是一個含有上升沿觸發(fā)的下圖是一個含有上升沿觸發(fā)的 D D 觸發(fā)器的時序電路,試寫出此電路的觸發(fā)器的時序電路,試寫出此電路的 VH

32、DLVHDL 設計文件。設計文件。 4-4.4-4.答案答案LIBRARYLIBRARY IEEE;IEEE;USEUSE IEEE.STD_LOGIC_1164.ALL;IEEE.STD_LOGIC_1164.ALL;ENTITYENTITY MULTIMULTI ISISPORT(CL:INPORT(CL:IN STD_LOGIC;STD_LOGIC; -輸入選擇信號輸入選擇信號 CLK0:INCLK0:IN STD_LOGIC;STD_LOGIC; -輸入信號輸入信號 OUT1:OUTOUT1:OUT STD_LOGIC);-STD_LOGIC);-輸出端輸出端ENDEND ENTITY

33、;ENTITY;ARCHITECTUREARCHITECTURE ONEONE OFOF MULTIMULTI ISISSIGNALSIGNAL Q Q : : STD_LOGIC;STD_LOGIC;BEGINBEGINPR01:PR01: PROCESS(CLK0)PROCESS(CLK0)BEGINBEGINIFIF CLKCLK EVENTEVENT ANDAND CLK=1CLK=1THENTHEN Q=NOT(CLQ=NOT(CL OROR Q);ELSEQ);ELSEENDEND IF;IF;ENDEND PROCESS;PROCESS;PR02:PR02: PROCESS(CL

34、K0)PROCESS(CLK0)BEGINBEGINOUT1=Q;OUT1=Q;ENDEND PROCESS;PROCESS;ENDEND ARCHITECTUREARCHITECTURE ONE;ONE;ENDEND PROCESS;PROCESS;4-5.4-5.給出給出 1 1 位全減器的位全減器的 VHDLVHDL 描述。要求:描述。要求: (1)(1) 首先設計首先設計 1 1 位半減器,然后用例化語句將它們連接起來,圖位半減器,然后用例化語句將它們連接起來,圖 3-323-32 中中 h_suberh_suber 是半減器,是半減器,diffdiff 是輸出差,是輸出差,s_out

35、s_out 是借位輸出,是借位輸出,sub_insub_in 是借位輸入。是借位輸入。 (2)(2) 以以 1 1 位全減器為基本硬件,構成串行借位的位全減器為基本硬件,構成串行借位的 8 8 位減法器,要求用例化語句來完成此項設計位減法器,要求用例化語句來完成此項設計( (減法運算是減法運算是 x x y y - - sun_insun_in = = diffr)diffr)4-5.4-5.答案答案底層文件底層文件 1 1:or2a.VHDor2a.VHD 實現(xiàn)或門操作實現(xiàn)或門操作LIBRARYLIBRARY IEEE;IEEE;USEUSE IEEE.STD_LOGIC_1164.ALL;

36、IEEE.STD_LOGIC_1164.ALL;USEUSE IEEE.STD_LOGIC_UNSIGNED.ALL;IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYENTITY or2aor2a ISISPORT(a,b:INPORT(a,b:IN STD_LOGIC;STD_LOGIC; c:OUTc:OUT STD_LOGIC);STD_LOGIC);ENDEND ENTITYENTITY or2a;or2a;ARCHITECTUREARCHITECTURE oneone OFOF or2aor2a ISISBEGINBEGINc c = a a OROR b;b;E

37、NDEND ARCHITECTUREARCHITECTURE one;one;底層文件底層文件 2 2:h_subber.VHDh_subber.VHD 實現(xiàn)一位半減器實現(xiàn)一位半減器LIBRARYLIBRARY IEEE;IEEE;USEUSE IEEE.STD_LOGIC_1164.ALL;IEEE.STD_LOGIC_1164.ALL;USEUSE IEEE.STD_LOGIC_UNSIGNED.ALL;IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYENTITY h_subberh_subber ISISPORT(x,y:INPORT(x,y:IN STD_LOGIC

38、;STD_LOGIC;diff,s_out:OUTdiff,s_out:OUT STD_LOGIC);STD_LOGIC);ENDEND ENTITYENTITY h_subber;h_subber;ARCHITECTUREARCHITECTURE ONEONE OFOF h_subberh_subber ISISSIGNALSIGNAL xyz:xyz: STD_LOGIC_VECTOR(1STD_LOGIC_VECTOR(1 DOWNTODOWNTO 0);0);BEGINBEGINxyzxyz = diff=0;s_out=0;diff=0;s_out= diff=1;s_out=1;d

39、iff=1;s_out= diff=1;s_out=0;diff=1;s_out= diff=0;s_out=0;diff=0;s_out= NULL;NULL;ENDEND CASE;CASE;ENDEND PROCESS;PROCESS;ENDEND ARCHITECTUREARCHITECTURE ONE;ONE;頂層文件:頂層文件:f_subber.VHDf_subber.VHD 實現(xiàn)一位全減器實現(xiàn)一位全減器LIBRARYLIBRARY IEEE;IEEE;USEUSE IEEE.STD_LOGIC_1164.ALL;IEEE.STD_LOGIC_1164.ALL; USEUSE IE

40、EE.STD_LOGIC_UNSIGNED.ALL;IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYENTITY f_subberf_subber ISISPORT(x,y,sub_in:INPORT(x,y,sub_in:IN STD_LOGIC;STD_LOGIC;diffr,sub_out:OUTdiffr,sub_out:OUT STD_LOGIC);STD_LOGIC);ENDEND ENTITYENTITY f_subber;f_subber;ARCHITECTUREARCHITECTURE ONEONE OFOF f_subberf_subber ISISCO

41、MPONENTCOMPONENT h_subberh_subberPORT(x,y:INPORT(x,y:IN STD_LOGIC;STD_LOGIC;diff,S_out:OUTdiff,S_out:OUT STD_LOGIC);STD_LOGIC);ENDEND COMPONENT;COMPONENT;COMPONENTCOMPONENT or2aor2aPORT(a,b:INPORT(a,b:IN STD_LOGIC;STD_LOGIC;c:OUTc:OUT STD_LOGIC);STD_LOGIC);ENDEND COMPONENT;COMPONENT;SIGNALSIGNAL d,e

42、,f:d,e,f: STD_LOGIC;STD_LOGIC;BEGINBEGINu1:u1: h_subberh_subber PORTPORT MAP(x=x,y=y,diff=d,s_out=e);MAP(x=x,y=y,diff=d,s_out=e);u2:u2: h_subberh_subber PORTPORT MAP(x=d,y=sub_in,diff=diffr,s_out=f);MAP(x=d,y=sub_in,diff=diffr,s_out=f);u3:u3: or2aor2a PORTPORT MAP(a=f,b=e,c=sub_out);MAP(a=f,b=e,c=su

43、b_out);ENDEND ARCHITECTUREARCHITECTURE ONE;ONE;ENDEND ARCHITECTUREARCHITECTURE ART;ART;4-6.4-6.根據(jù)下圖,寫出頂層文件根據(jù)下圖,寫出頂層文件 MX3256.VHDMX3256.VHD 的的 VHDLVHDL 設計文件。設計文件。 4-6.4-6.答案答案MAX3256MAX3256 頂層文件頂層文件LIBRARYLIBRARY IEEE;IEEE;USEUSE IEEE.STD_LOGIC_1164.ALL;IEEE.STD_LOGIC_1164.ALL;USEUSE IEEE.STD_LOGIC_U

44、NSIGNED.ALL;IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYENTITY MAX3256MAX3256 ISISPORTPORT (INA,INB,INCK:(INA,INB,INCK: ININ STD_LOGIC;STD_LOGIC;INC:INC: ININ STD_LOGIC;STD_LOGIC;E,OUT:OUTE,OUT:OUT STD_LOGIC);STD_LOGIC);ENDEND ENTITYENTITY MAX3256;MAX3256;ARCHITECTUREARCHITECTURE ONEONE OFOF MAX3256MAX3256 IS

45、ISCOMPONENTCOMPONENT LK35LK35 -調用調用 LK35LK35 聲明語句聲明語句PORT(A1,A2:INPORT(A1,A2:IN STD_LOGIC;STD_LOGIC;CLK:INCLK:IN STD_LOGIC;STD_LOGIC;Q1,Q2:OUTQ1,Q2:OUT STD_LOGIC);STD_LOGIC);ENDEND COMPONENT;COMPONENT;COMPONENTCOMPONENT D D -調用調用 D D 觸發(fā)器聲明語句觸發(fā)器聲明語句PORT(D,C:INPORT(D,C:IN STD_LOGIC;STD_LOGIC;CLK:INCLK

46、:IN STD_LOGIC;STD_LOGIC;Q:OUTQ:OUT STD_LOGIC);STD_LOGIC);ENDEND COMPONENT;COMPONENT;COMPONENTCOMPONENT MUX21-MUX21-調用二選一選擇器聲明語句調用二選一選擇器聲明語句PORT(B,A:INPORT(B,A:IN STD_LOGIC;STD_LOGIC;S:INS:IN STD_LOGIC;STD_LOGIC;C:OUTC:OUT STD_LOGIC);STD_LOGIC);ENDEND COMPONENT;COMPONENT;SIGNALSIGNAL AA,BB,CC,DD:AA,B

47、B,CC,DD: STD_LOGIC;STD_LOGIC;BEGINBEGINu1:u1: LK35LK35 PORTPORT MAP(A1=INA,A2=INB,CLK=INCK,MAP(A1=INA,A2=INB,CLK=INCK, Q1=AA,Q2=BB);Q1=AA,Q2=BB);u2:u2: D D PORTPORT MAP(D=BB;CLK=INCK,C=INC,Q=CC);MAP(D=BB;CLK=INCK,C=INC,Q=CC);u3:u3: LK35LK35 PORTPORT MAPMAP (A1=BB,A2=CC,CLK=INCK,(A1=BB,A2=CC,CLK=INCK

48、, Q1=DD,Q2=OUT1)Q1=DD,Q2=OUT1);u4:u4: MUX21MUX21 PORTPORT MAPMAP (B=AA,A=DD,S=BB,C=E);(B=AA,A=DD,S=BB,C=E);ENDEND ARCHITECTUREARCHITECTURE ONE;ONE;設計含有異步清零和計數(shù)使能的設計含有異步清零和計數(shù)使能的 1616 位二進制加減可控計數(shù)器。位二進制加減可控計數(shù)器。 4-7.4-7.答案:答案:LIBRARYLIBRARY IEEE;IEEE;USEUSE IEEE.STD_LOGIC_1164.ALL;IEEE.STD_LOGIC_1164.ALL;

49、USEUSE IEEE.STD_LOGIC_UNSIGNED.ALL;IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYENTITY CNT16CNT16 ISISPORT(CLK,RST,EN:INPORT(CLK,RST,EN:IN STD_LOGIC;STD_LOGIC; CHOOSE:INCHOOSE:IN BIT;BIT; SETDATA:BUFFERSETDATA:BUFFER INTEGERINTEGER RANCERANCE 6553565535 DOWNTODOWNTO 0;0; COUT:COUT: BUFFERBUFFER INTEGERINTEGER

50、RANCERANCE 6553565535 DOWNTODOWNTO 0);0);ENDEND CNT16;CNT16;ARCHITECTUREARCHITECTURE ONEONE OFOF CNT16CNT16 ISISBEGINBEGIN PROCESS(CLK,RST,SDATA)PROCESS(CLK,RST,SDATA) VARIABLEVARIABLE QI:STD_LOGIC_VECTOR(65535QI:STD_LOGIC_VECTOR(65535 DOWNTODOWNTO 0);0); BEGINBEGINIFIF RST=1RST=1 THENTHEN -計數(shù)器異步復位計

51、數(shù)器異步復位 QI:=(OTHERS=0);QI:=(OTHERS=0);ELSIFELSIF SET=1SET=1 THEN-THEN-計數(shù)器一步置位計數(shù)器一步置位QI:=SETDATA;QI:=SETDATA; ELSIFELSIF CLKEVENTCLKEVENT ANDAND CLK=1CLK=1 THENTHEN -檢測時鐘上升沿檢測時鐘上升沿 IFIF EN=1EN=1 THENTHEN 檢測是否允許計數(shù)檢測是否允許計數(shù)IFIF CHOOSE=1CHOOSE=1 THENTHEN -選擇加法計數(shù)選擇加法計數(shù) QI:=QI+1;QI:=QI+1; -計數(shù)器加一計數(shù)器加一 ELSEEL

52、SE QI=QI-1;QI=QI-1; -計數(shù)器加一計數(shù)器加一 ENDEND IF;IF;ENDEND IF;IF;ENDEND IF;IF; COUT=QI;-COUT=QI;-將計數(shù)值向端口輸出將計數(shù)值向端口輸出ENDEND PROCESS;PROCESS;ENDEND ONE;ONE;第五章第五章5-15-1 歸納利用歸納利用 QuartusQuartus IIII 進行進行 VHDLVHDL 文本輸入設計的文本輸入設計的流程流程:從文件輸入一直到:從文件輸入一直到 SignalTapSignalTap IIII 測試。測試。P95P115P95P115答:答:1 1 建立工作庫文件夾和

53、編輯設計文件建立工作庫文件夾和編輯設計文件;2 2 創(chuàng)建工程創(chuàng)建工程;3 3 編譯前設置編譯前設置;4 4 全程編譯全程編譯;5 5 時序仿真時序仿真;6 6 引腳鎖定引腳鎖定;7 7 配配置文件下載置文件下載;8 8 打開打開 SignalTapSignalTap IIII 編輯窗口;編輯窗口;9 9 調入調入 SignalTapSignalTap IIII 的待測信號;的待測信號;1010 SignalTapSignalTap IIII 參數(shù)設置;參數(shù)設置;1111 SignalTapSignalTap IIII 參數(shù)設置文件存盤;參數(shù)設置文件存盤;1212 帶有帶有 SignalTapS

54、ignalTap IIII 測試信息的編譯下載;測試信息的編譯下載;1313 啟動啟動 SignalTapSignalTap IIII 進行采樣與分析;進行采樣與分析;1414 SignalTapSignalTap IIII的其他設置和控制方法。的其他設置和控制方法。 5.65.6 5.75.75.85.85.95.95.105.105.125.125.135.135.145.14第六章第六章 6-16-1 什么是固有延時什么是固有延時? ?什么是慣性延時什么是慣性延時? ?P150151P150151答:答:固有延時固有延時(Inertial(Inertial Delay)Delay)也稱為

55、也稱為慣性延時慣性延時,固有延時的主要物理機制是,固有延時的主要物理機制是分布電容效應分布電容效應。 6-26-2 是什么是什么? ?在在 VHDLVHDL 中,中, 有什么用處有什么用處? ?P152P152 是什么是什么? ? 答:在答:在 VHDLVHDL 仿真和綜合器中,仿真和綜合器中,默認的固有延時量默認的固有延時量(它在數(shù)學上是一個無窮小量)(它在數(shù)學上是一個無窮小量) ,被稱為被稱為 延時延時。在在 VHDLVHDL 中,中, 有什么用處有什么用處? ?答:在答:在 VHDLVHDL 信號賦值中信號賦值中未給出固有延時未給出固有延時情況下,情況下,VHDLVHDL 仿真器和綜合器

56、將仿真器和綜合器將自動為系統(tǒng)中的信號賦值配自動為系統(tǒng)中的信號賦值配置一足夠小置一足夠小而又能而又能滿足邏輯排序滿足邏輯排序的的延時量延時量 ;使;使并行語句并行語句和和順序語句順序語句中的中的并列賦值邏輯并列賦值邏輯得以得以正確執(zhí)行正確執(zhí)行。 6-46-4 說明信號和變量的功能特點,以及應用上的異同點。說明信號和變量的功能特點,以及應用上的異同點。P128P129P128P129答:變量:變量是一個答:變量:變量是一個局部量局部量,只能,只能在進程和子程序中使用在進程和子程序中使用。變量不能將信息帶出對它做出定義的當前結構。變量的賦值是。變量不能將信息帶出對它做出定義的當前結構。變量的賦值是一

57、一種理想化的數(shù)據(jù)傳輸種理想化的數(shù)據(jù)傳輸,是,是立即發(fā)生立即發(fā)生的,的,不存在任何延時行為不存在任何延時行為。變量的主要作用是在進程中作為。變量的主要作用是在進程中作為臨時的數(shù)據(jù)存儲單元臨時的數(shù)據(jù)存儲單元。信號:信號是描述硬件系統(tǒng)的基本數(shù)據(jù)對象,其性質信號:信號是描述硬件系統(tǒng)的基本數(shù)據(jù)對象,其性質類似于連接線類似于連接線;可作為設計實體中并行語句模塊間的;可作為設計實體中并行語句模塊間的信息交流通道信息交流通道。信。信號不但可以號不但可以容納當前值容納當前值,也可以,也可以保持歷史值保持歷史值;與觸發(fā)器的記憶功能有很好的對應關系與觸發(fā)器的記憶功能有很好的對應關系。 6-56-5 在在 VHDLV

58、HDL 設計中,給設計中,給時序電路清零時序電路清零( (復位復位) )有兩種力方有兩種力方法,它們是什么法,它們是什么? ?解:設解:設 Q Q 定義成信號,一種方法:定義成信號,一種方法:Q=“000000”Q=“000000” ; 其中其中“000000”“000000”反映出信號反映出信號 Q Q 的位寬度。的位寬度。第二種方法:第二種方法:Q0)Q0);其中;其中 OTHERS=0OTHERS=0不需要給出信號不需要給出信號 Q Q 的位寬度的位寬度,即可對,即可對 Q Q 清零。清零。 6-66-6 哪一種復位方法必須將復位信號放在敏感信號表中哪一種復位方法必須將復位信號放在敏感信

59、號表中? ?給出這兩種電路的給出這兩種電路的 VHDLVHDL 描述。描述。解:邊沿觸發(fā)復位信號要將復位信號放在進程的敏感信號表中。解:邊沿觸發(fā)復位信號要將復位信號放在進程的敏感信號表中。(1 1)邊沿觸發(fā)復位信號)邊沿觸發(fā)復位信號. ARCHITECTUREARCHITECTURE bhvbhv 0F0F DFF3DFF3 ISIS SIGNALSIGNAL QQ:STD_LOGIC;QQ:STD_LOGIC; BEGINBEGIN PROCESS(RST)PROCESS(RST) BEGINBEGIN IFIF RSTEVENTRSTEVENT ANDAND RST=1RST=1 THEN

60、THEN QQ=(QQ0);=0); ENDEND IF;IF; ENDEND PROCESS;PROCESS; Q1=QQ;Q1=QQ; END;END;(2 2)電平觸發(fā)復位信號)電平觸發(fā)復位信號. ARCHITECTUREARCHITECTURE bhvbhv 0F0F DFF3DFF3 ISIS SIGNALSIGNAL QQ:STD_LOGIC;QQ:STD_LOGIC; BEGINBEGIN PROCESS(CLK)PROCESS(CLK) BEGINBEGIN IFIF RST=1RST=1 THENTHEN QQ=(QQ0);=0); ENDEND IF;IF; ENDEND

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論