![配套課件-電子設(shè)計自動化_第1頁](http://file4.renrendoc.com/view/afa83589832b68eae36f41bdb94105d9/afa83589832b68eae36f41bdb94105d91.gif)
![配套課件-電子設(shè)計自動化_第2頁](http://file4.renrendoc.com/view/afa83589832b68eae36f41bdb94105d9/afa83589832b68eae36f41bdb94105d92.gif)
![配套課件-電子設(shè)計自動化_第3頁](http://file4.renrendoc.com/view/afa83589832b68eae36f41bdb94105d9/afa83589832b68eae36f41bdb94105d93.gif)
![配套課件-電子設(shè)計自動化_第4頁](http://file4.renrendoc.com/view/afa83589832b68eae36f41bdb94105d9/afa83589832b68eae36f41bdb94105d94.gif)
![配套課件-電子設(shè)計自動化_第5頁](http://file4.renrendoc.com/view/afa83589832b68eae36f41bdb94105d9/afa83589832b68eae36f41bdb94105d95.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1.1 EDA技術(shù)的發(fā)展歷程 1.2 EDA技術(shù)的應用 1.3 EDA技術(shù)的發(fā)展趨勢習題 1.1 EDA技術(shù)的發(fā)展歷程120世紀70年代的計算機輔助設(shè)計階段早期的電子系統(tǒng)硬件設(shè)計采用分立元件。隨著集成電路的出現(xiàn)和應用,硬件設(shè)計進入到大量選用中小規(guī)模標準集成電路階段。人們將這些器件焊接在電路板上,做成初級的電子系統(tǒng)。對電子系統(tǒng)的調(diào)試是在組裝好的印刷電路板(Printed Circuit Board,PCB)上進行的。由于傳統(tǒng)的手工布圖方法無法滿足產(chǎn)品復雜性的要求,更不能滿足工作效率的要求,因而人們開始將產(chǎn)品設(shè)計過程中具有高度代表性的繁雜勞動(如布圖布線工作)用二維圖形編輯與分析CAD工具替代,其
2、中最具代表性的產(chǎn)品就是美國ACCEL公司開發(fā)的Tango布線軟件。PCB布圖布線工具受到計算機工作平臺的制約,因此其支持的設(shè)計工作有限,且性能比較差。220世紀80年代的計算機輔助工程設(shè)計階段隨著微電子工藝的發(fā)展,相繼出現(xiàn)了集成上萬只晶體管的微處理器、集成幾十萬門到上百萬門儲存單元的隨機存儲器和只讀存儲器。此外,支持定制單元電路設(shè)計的硅編程、掩膜編程的門陣列,如標準單元的半定制設(shè)計方法以及可編程邏輯器件(PAL和GAL)等一系列微結(jié)構(gòu)和微電子學的研究成果,這些都為電子系統(tǒng)的設(shè)計開辟了新天地,使得可以用少數(shù)幾種通用的標準芯片實現(xiàn)電子系統(tǒng)的設(shè)計。伴隨著計算機和集成電路的發(fā)展,EDA技術(shù)進入到計算機
3、輔助工程設(shè)計階段。20世紀80年代初推出的EDA工具以邏輯模擬、定時分析、故障仿真、自動布局和布線為核心,重點解決電路設(shè)計完成之前的功能檢測等問題。利用這些工具,設(shè)計師能在產(chǎn)品制作之前預知產(chǎn)品的功能與性能,能生成產(chǎn)品制造文件。如果說20世紀70年代的自動布局布線的CAD工具代替了設(shè)計工作中的繪圖和重復勞動,那么20世紀80年代出現(xiàn)的具有自動綜合能力的CAED工具則替代了設(shè)計師的部分工作,對保證電子系統(tǒng)的設(shè)計、制造出最佳的電子產(chǎn)品起著關(guān)鍵的作用。到了20世紀80年代后期,EDA工具已經(jīng)可以進行設(shè)計描述、綜合與優(yōu)化和設(shè)計結(jié)果驗證。CAED階段的EDA工具不僅為成功開發(fā)電子產(chǎn)品創(chuàng)造了有利的條件,而且
4、為高級設(shè)計人員的創(chuàng)造性勞動提供了方便。但此時,大部分從原理圖出發(fā)的EDA工具仍然不能適應復雜電子系統(tǒng)的設(shè)計要求,而具體化的元件圖形仍制約著對設(shè)計的優(yōu)化。320世紀90年代電子系統(tǒng)設(shè)計自動化(EDA)階段為了滿足千差萬別的系統(tǒng)用戶提出的設(shè)計要求,最好的辦法是由用戶自己設(shè)計芯片,讓他們把所需的電路直接設(shè)計在自己的專用芯片上。微電子技術(shù)的發(fā)展,特別是可編程邏輯器件的發(fā)展,使得微電子廠家可以為用戶提供各種規(guī)模的可編程邏輯器件,使設(shè)計者能夠通過設(shè)計芯片來實現(xiàn)電子系統(tǒng)功能。EDA工具的發(fā)展,又為設(shè)計師提供了全線EDA工具。這個階段發(fā)展起來的EDA工具,目的是在設(shè)計前期將設(shè)計師從事的許多高層次設(shè)計工作由工具
5、來完成,如可以將用戶要求轉(zhuǎn)換為設(shè)計技術(shù)規(guī)范,有效地處理可用的設(shè)計資源與理想的設(shè)計目標之間的矛盾,按具體的硬件、軟件和算法分解設(shè)計等。電子技術(shù)和EDA工具的發(fā)展,使設(shè)計師可以在不太長的時間內(nèi)使用EDA工具,通過一些簡單的、標準化的設(shè)計過程,利用微電子廠家提供的設(shè)計庫來完成數(shù)萬門ASIC和集成系統(tǒng)的設(shè)計與驗證。20世紀90年代,設(shè)計師逐步從使用硬件轉(zhuǎn)向設(shè)計硬件,從單個電子產(chǎn)品開發(fā)轉(zhuǎn)向系統(tǒng)級電子產(chǎn)品SOC(System on a chip,即片上系統(tǒng)集成)開發(fā)。因此,EDA工具是以系統(tǒng)級設(shè)計為核心,包括系統(tǒng)行為級描述與結(jié)構(gòu)綜合、系統(tǒng)仿真與測試驗證、系統(tǒng)劃分與指標分配、系統(tǒng)決策與文件生成等一整套的電子
6、系統(tǒng)設(shè)計自動化工具。這時的EDA工具不僅具有電子系統(tǒng)設(shè)計的能力,而且能提供獨立于工藝和廠家的系統(tǒng)級設(shè)計能力,具有高級抽象的設(shè)計構(gòu)思手段,從而使電子系統(tǒng)設(shè)計更簡單,使電子系統(tǒng)設(shè)計不再是電子工程師的專利。1.2 EDA技術(shù)的應用EDA技術(shù)在教學、科研、產(chǎn)品設(shè)計與制造等各方面都發(fā)揮著巨大的作用。在教學方面,幾乎所有理工科院校的電子信息類專業(yè)都開設(shè)了EDA課程,主要目的是讓學生了解EDA的基本概念和基本原理,掌握用HDL(Hardware Design Language)語言編寫規(guī)范的程序,掌握邏輯綜合的理論和算法,使用EDA工具進行電子電路課程的實驗并進行簡單系統(tǒng)的設(shè)計,為今后工作打下基礎(chǔ)。在科研方
7、面,主要利用電路仿真工具(EWB或Pspice)進行電路設(shè)計與仿真,利用虛擬儀器進行產(chǎn)品測試,將CPLD/FPGA器件實際應用到儀器設(shè)備中,從事PCB設(shè)計和ASIC設(shè)計等。在產(chǎn)品設(shè)計與制造方面,EDA技術(shù)應用于仿真、生產(chǎn)、測試等各個環(huán)節(jié),如PCB的制作、電子設(shè)備的研制與生產(chǎn)、電路板的焊接、運用FPGA/CPLD進行數(shù)字系統(tǒng)的設(shè)計與制作、ASIC的流片過程,等等。EDA技術(shù)已經(jīng)應用于各行各業(yè),在機械、電子、通信、航空航天、化工、礦產(chǎn)、生物、醫(yī)學、軍事等各個領(lǐng)域都有EDA技術(shù)的應用。另外,EDA軟件的功能也日益強大。1.3 EDA技術(shù)的發(fā)展趨勢1.3.1 EDA工具的發(fā)展1設(shè)計輸入工具的發(fā)展趨勢早
8、期EDA工具的設(shè)計輸入普遍采用原理圖輸入方式,以文字和圖形作為設(shè)計載體和文件,將設(shè)計信息加載后,由后續(xù)的EDA工具完成設(shè)計分析工作。原理圖輸入方式的優(yōu)點是直觀,能滿足以設(shè)計分析為主的一般要求,但是原理圖輸入方式不適合用EDA綜合工具。20世紀80年代末,電子設(shè)計開始采用新的綜合工具,設(shè)計描述轉(zhuǎn)向以各種硬件描述語言為主的編程方式。用硬件描述語言描述設(shè)計,更接近系統(tǒng)行為描述,且便于綜合,更適于傳遞、修改和設(shè)計信息,還可以建立獨立于工藝的設(shè)計文件。其不便之處是不太直觀,要求設(shè)計師學會編程。很多電子設(shè)計師都具有原理圖設(shè)計的經(jīng)驗,不具有編程經(jīng)驗,所以仍然希望繼續(xù)在比較熟悉的符號與圖形環(huán)境中完成設(shè)計,而不
9、是利用編程完成設(shè)計。為此,EDA工具軟件公司在20世紀90年代相繼推出一批圖形化免編程的設(shè)計輸入工具,允許設(shè)計師用他們最熟悉的設(shè)計方式,如框圖、狀態(tài)圖、真值表和邏輯方程建立設(shè)計文件,然后由EDA工具自動生成綜合所需的硬件描述語言文件。2具有混合信號處理能力的EDA工具目前,數(shù)字電路設(shè)計的EDA工具比模擬集成電路的EDA工具多。模擬集成電路EDA工具開發(fā)的難度較大,但實現(xiàn)高性能復雜電子系統(tǒng)的設(shè)計還離不開模擬信號,因此,20世紀90年代以來,EDA工具廠商都比較重視數(shù)/模混合信號設(shè)計工具的開發(fā)。具有混合信號設(shè)計能力的EDA工具能處理含有數(shù)字信號處理、專用集成電路宏單元、數(shù)/模變換模塊、各種壓控振蕩
10、器在內(nèi)的混合系統(tǒng)設(shè)計。美國Cadence、Synopsys等公司開發(fā)的EDA工具軟件就具有這種混合系統(tǒng)設(shè)計能力。3仿真工具的發(fā)展在整個電子設(shè)計過程中,仿真是花費時間最多,同時也是占用EDA工具資源最多的一個環(huán)節(jié)。通常,設(shè)計的大量工作都是在進行仿真,如驗證設(shè)計的有效性、測試設(shè)計的精度和保證設(shè)計的要求等。提高仿真的有效性一方面應建立合理的仿真算法,另一方面應在系統(tǒng)級仿真中建立系統(tǒng)級模型,在電路級仿真中建立電路級模型。預計在下一代的EDA工具中,仿真工具還會有較大的發(fā)展。4綜合工具的開發(fā)隨著電子系統(tǒng)和電路的集成規(guī)模越來越大,已不可能直接面向版圖做設(shè)計,且要找出設(shè)計中的錯誤也更加困難。將設(shè)計者從繁瑣的
11、版圖設(shè)計和分析工作中轉(zhuǎn)移到設(shè)計前期的算法開發(fā)和功能驗證上,這是設(shè)計綜合工具要達到的目的。高層次綜合工具可以將低層次的硬件設(shè)計一起轉(zhuǎn)換到物理級的設(shè)計,實現(xiàn)不同層次、不同形式的設(shè)計描述轉(zhuǎn)換,通過各種綜合算法實現(xiàn)設(shè)計目標所規(guī)定的優(yōu)化設(shè)計。設(shè)計者的經(jīng)驗在設(shè)計綜合中起重要作用,自動綜合工具將有效地提高優(yōu)化設(shè)計效率。綜合工具由最初的只能實現(xiàn)邏輯綜合,逐步發(fā)展到可以實現(xiàn)設(shè)計前端的綜合,直到設(shè)計后端的版圖綜合以及測試綜合的理想且完整的綜合工具。設(shè)計前端的綜合工具可以實現(xiàn)從算法級的行為描述到寄存器傳輸級結(jié)構(gòu)描述的轉(zhuǎn)換,給出滿足約束條件的硬件結(jié)構(gòu)。在確定寄存器傳輸結(jié)構(gòu)描述后,由邏輯綜合工具完成硬件門級結(jié)構(gòu)的描述,
12、邏輯綜合后的結(jié)果作為版圖綜合的輸入數(shù)據(jù),進行版圖綜合。版圖綜合將門級和電路級的結(jié)構(gòu)描述轉(zhuǎn)換成物理版圖的描述,通過自動交互的設(shè)計環(huán)境,實現(xiàn)按面積、速度和功率完成布局布線的優(yōu)化,實現(xiàn)最佳的版圖設(shè)計。將設(shè)計測試工作提前到設(shè)計前期,可以縮短設(shè)計周期,減少測試費用。測試綜合貫穿整個設(shè)計過程,可以消除設(shè)計小的冗余邏輯,診斷不可測的邏輯結(jié)構(gòu),自動插入可測性結(jié)構(gòu),生成測試向量。隨著電子產(chǎn)品市場的飛速發(fā)展,電子設(shè)計人員需要更加實用、快捷的EDA工具,使用統(tǒng)一的集成化設(shè)計環(huán)境,改變傳統(tǒng)設(shè)計思路,即優(yōu)先考慮具體物理實現(xiàn)方式,將精力集中到設(shè)計構(gòu)思、方案比較和尋找優(yōu)化設(shè)計等方面,以最快的速度開發(fā)出性能好、質(zhì)量高的電子產(chǎn)
13、品。1.3.2 EDA硬件載體的發(fā)展方向EDA技術(shù)的硬件載體在本書中指的是可編程邏輯器件,它已經(jīng)成為當今世界最具吸引力的半導體器件,在現(xiàn)代電子系統(tǒng)設(shè)計中扮演著越來越重要的角色。其未來的發(fā)展方向包括以下幾個方面:(1) 向密度更高、速度更快、頻帶更寬的百萬門方向發(fā)展。例如,Xilinx的XC4036XV系統(tǒng)的產(chǎn)品其工作速度可以達到1 GHz,Virtex FPGA是100萬門的系統(tǒng)級器件,ALTERA也已經(jīng)推出250萬門以上的可編輯邏輯芯片。(2) 向系統(tǒng)內(nèi)可重構(gòu)的方向發(fā)展。系統(tǒng)內(nèi)可重構(gòu)是指可編輯芯片在置入用戶系統(tǒng)后仍具有改變其內(nèi)部功能的能力。采用系統(tǒng)內(nèi)可重構(gòu)技術(shù),使得系統(tǒng)內(nèi)硬件的功能可以像軟件
14、那樣通過編程來配置,從而在電子系統(tǒng)中引入“軟硬件”的全新概念,不僅使電子系統(tǒng)的設(shè)計和產(chǎn)品性能的改進擴充變得十分簡便,還使新一代電子系統(tǒng)具有極強的靈活性和適應性,為許多復雜信號的處理及信息加工的實現(xiàn)提供了新的思路和方法。(3) 向混合可編程器件技術(shù)發(fā)展。目前運用EDA技術(shù)設(shè)計的電路主要是數(shù)字電路,在未來幾年內(nèi)這一局面將會有所改變,模擬電路及數(shù)?;旌想娐返目删幊碳夹g(shù)將有所發(fā)展。比如美國Lattice于1999年底推出的ispPAC,就允許設(shè)計者使用開發(fā)軟件在計算機中設(shè)計、修改模擬電路,進行電路特性模擬仿真,最后通過編程電纜將設(shè)計方案下載至芯片中。ispPAC可以實現(xiàn)三種功能:信號調(diào)理(對信號放大、
15、衰減、濾波),信號處理(對信號進行求和、求差、積分運算),信號轉(zhuǎn)換(將數(shù)字信號轉(zhuǎn)換成模擬信號)。(4) 向低電壓、低功耗的綠色元件發(fā)展。集成技術(shù)的發(fā)展,工藝水平的不斷提高,也使得可編輯芯片的工作電壓正在逐漸降低,功耗在不斷減少。Philips的XPLA1系列CPLD芯片,其功耗就是普通芯片的1/1000??偟膩碚f,EDA的發(fā)展趨勢表現(xiàn)在如下幾個方面:(1) 超大規(guī)模集成電路的集成度和工藝水平不斷提高,深亞微米工藝走向成熟,使片上系統(tǒng)設(shè)計成為可能。(2) 市場對電子產(chǎn)品提出更高的要求,如降低電子系統(tǒng)的成本、減小系統(tǒng)的體積等,從而對系統(tǒng)的集成度不斷提出更高的要求。(3) 高性能的EDA工具得到長足
16、發(fā)展,自動化和智能化程度不斷提高,為嵌入式系統(tǒng)設(shè)計提供功能強大的開發(fā)環(huán)境。(4) 計算機硬件設(shè)計平臺性能大幅度提高,為復雜的片上系統(tǒng)提供了物理基礎(chǔ)。習 題1.1 一般把EDA技術(shù)的發(fā)展分為哪幾個階段?1.2 簡述EDA技術(shù)的應用。1.3 簡述EDA技術(shù)的發(fā)展趨勢。1.4 簡述EDA工具的發(fā)展。1.5 敘述可編輯邏輯器件的發(fā)展方向。2.1 傳統(tǒng)的設(shè)計方法 2.2 現(xiàn)代的設(shè)計方法 2.3 EDA設(shè)計過程 2.4 在系統(tǒng)編程技術(shù) 2.5 EDA工具軟件介紹 2.6 實訓:運用圖形法設(shè)計3-8譯碼器 習題 2.1 傳統(tǒng)的設(shè)計方法由底向上的設(shè)計方法其主要步驟是:根據(jù)系統(tǒng)對硬件的要求詳細編制技術(shù)規(guī)格書,畫
17、出系統(tǒng)控制流程圖,對系統(tǒng)的功能進行細化,合理地劃分功能模塊,并畫出系統(tǒng)的功能框圖;進行各功能模塊的細化和電路設(shè)計;各功能模塊設(shè)計、調(diào)試完成后,將各功能模塊的硬件電路連接起來再進行系統(tǒng)的調(diào)試,最后完成整個系統(tǒng)的硬件設(shè)計。其設(shè)計過程大致如圖2-1所示。圖2-1 由底向上的設(shè)計方法流程圖由底向上的硬件設(shè)計方法有如下幾個特征:(1) 設(shè)計的方向是自底至上,先設(shè)計最小的單元電路。使用該方法進行硬件設(shè)計首先要選擇具體的元器件,并用這些元器件進行邏輯電路設(shè)計,從而完成系統(tǒng)的硬件設(shè)計,然后再將各功能模塊連接起來,完成整個系統(tǒng)的硬件設(shè)計。(2) 采用通用邏輯元器件,通常采用74系列或CMOS4000系列的產(chǎn)品進
18、行設(shè)計。(3) 在系統(tǒng)硬件設(shè)計的后期進行調(diào)試和仿真。只有在部分或全部硬件電路連接完成后,才可以進行電路調(diào)試,一旦考慮不周到,系統(tǒng)設(shè)計存在較大缺陷,則要重新設(shè)計,使設(shè)計周期延長。(4) 設(shè)計結(jié)果是多張電路圖。設(shè)計調(diào)試完畢形成電路原理圖,該圖包括元器件型號和信號之間的互連關(guān)系等。由底向上的設(shè)計方法是傳統(tǒng)的IC和PCB的設(shè)計方法。采用由底向上的設(shè)計方法需要設(shè)計者先定義和設(shè)計每個基本模塊,然后對這些模塊進行連線以完成整體設(shè)計。在IC設(shè)計復雜程度低于10 000門時,常采用這種設(shè)計方法,但是隨著設(shè)計復雜程度的增加,該方法會產(chǎn)生產(chǎn)品生產(chǎn)周期長、可靠性低、開發(fā)費用高等問題。2.2 現(xiàn)代的設(shè)計方法EDA技術(shù)采
19、用現(xiàn)代的設(shè)計方法自頂向下的設(shè)計方法。這種設(shè)計方法綜合運用各方面的知識,設(shè)計者必須從系統(tǒng)的角度來分析每個設(shè)計,同時還要對數(shù)字電路結(jié)構(gòu)、EDA工具、微電子等有關(guān)知識有比較全面的了解,這樣才能發(fā)揮自頂向下設(shè)計的優(yōu)勢,提高電路設(shè)計的質(zhì)量和效率。在進行自頂向下的設(shè)計時,仿真和綜合只是系統(tǒng)實現(xiàn)的手段,要成功完成一個復雜系統(tǒng)的設(shè)計,不僅要熟練使用先進的高層次設(shè)計工具,還要對系統(tǒng)本身有正確理解。采用自頂向下技術(shù)進行設(shè)計可分為三個主要階段:系統(tǒng)設(shè)計、系統(tǒng)的綜合優(yōu)化和系統(tǒng)實現(xiàn),各個階段之間并沒有絕對的界限。圖2-2是一個完整的自頂向下的設(shè)計流程。圖2-2 自頂向下設(shè)計流程2.2.1 系統(tǒng)設(shè)計1系統(tǒng)功能分析進行系統(tǒng)
20、功能分析的目的是在進行系統(tǒng)設(shè)計之前明確系統(tǒng)的需求,也就是確定系統(tǒng)所要完成的功能、系統(tǒng)的輸入輸出以及輸入輸出之間的關(guān)系等,并且要確定系統(tǒng)的時序要求。系統(tǒng)功能分析的另外一個目的就是進行系統(tǒng)的模塊劃分。在系統(tǒng)分析時,應根據(jù)功能的耦合程度,將系統(tǒng)劃分為不同的功能模塊,每一個功能都映射到一個模塊,同時還需要確定模塊之間的相互關(guān)系,這是模塊化設(shè)計的基本要求。2體系結(jié)構(gòu)設(shè)計體系結(jié)構(gòu)設(shè)計是整個系統(tǒng)設(shè)計階段最重要的工作,它的首要任務(wù)就是數(shù)據(jù)通路和控制通路的設(shè)計。在數(shù)字系統(tǒng)設(shè)計中,系統(tǒng)的控制是建立在數(shù)據(jù)通路基礎(chǔ)之上的,不同的數(shù)據(jù)通路對應了不同的控制通路。數(shù)據(jù)通路的設(shè)計包括被處理數(shù)據(jù)的類型分析、處理單元的劃分以及處
21、理單元之間的關(guān)聯(lián)程度等??刂仆肥菙?shù)據(jù)通路上數(shù)據(jù)傳輸?shù)目刂茊卧?,用于協(xié)調(diào)數(shù)據(jù)處理單元之間的關(guān)系??刂仆返脑O(shè)計主要包括數(shù)據(jù)的調(diào)度、數(shù)據(jù)的處理算法和正確的時序安排。數(shù)據(jù)通路和控制通路的設(shè)計并不是截然分開的,有時在確定好數(shù)據(jù)通路后,由于時序或數(shù)據(jù)調(diào)度等問題,而不得不重新修改數(shù)據(jù)通路。一般來說,數(shù)據(jù)通路與控制通路的設(shè)計往往要經(jīng)過多次反復才能達到最優(yōu)效果。3系統(tǒng)描述所謂系統(tǒng)描述,也就是使用HDL語言對系統(tǒng)進行編碼。在進行大型軟件的開發(fā)時,編碼與前面所進行的系統(tǒng)劃分工作相比就顯得不那么重要了,但在使用硬件描述語言進行數(shù)字電路描述時,情況則完全不同,因為語言的描述直接決定著電路的性能,不好的編碼將無法反映
22、所確定的體系結(jié)構(gòu),可能導致前面所做的工作完全被浪費。4系統(tǒng)功能仿真系統(tǒng)功能仿真用于檢查設(shè)計者所編寫的硬件描述語言代碼是否完成了預定的功能。幾乎所有的高層設(shè)計軟件都支持語言級的系統(tǒng)仿真,這樣在系統(tǒng)綜合前就可以通過系統(tǒng)功能仿真來驗證所設(shè)計系統(tǒng)的功能正確與否。2.2.2 系統(tǒng)綜合優(yōu)化1系統(tǒng)的綜合優(yōu)化綜合器對系統(tǒng)的綜合優(yōu)化主要分為兩步:第一步將硬件描述語言翻譯成門電路;第二步對產(chǎn)生的電路進行優(yōu)化。綜合優(yōu)化的主要工作是在第二步進行的,判斷一個綜合器性能的標準也基于這一步。系統(tǒng)優(yōu)化的目的就是花費最少的硬件資源滿足最大的時序要求,所以系統(tǒng)優(yōu)化就是在系統(tǒng)的速度和面積之間找到一個最佳方案。系統(tǒng)優(yōu)化的關(guān)鍵在于系統(tǒng)
23、約束條件的設(shè)定,施加到系統(tǒng)的約束條件將使綜合器對系統(tǒng)的優(yōu)化按照設(shè)計者期望的目標進行。2門級仿真綜合工具可以從綜合優(yōu)化后的電路中提取出系統(tǒng)門級描述的硬件描述語言文件,該文件內(nèi)不僅包含了完成系統(tǒng)功能所需的元件信息,而且也包含了電路元件的一些時序信息,但不包含元件之間的連線信息。門級仿真比功能仿真可以更精確地反映電路的時序特性,經(jīng)過門級仿真的電路通過布局布線后仿真的可能性增大。進行ASIC設(shè)計時,在生產(chǎn)廠家的工藝庫上布局布線的流程較為繁瑣,進行門級仿真可以在進行布局布線之前最大限度地發(fā)現(xiàn)問題而節(jié)省時間。如果進行布局布線后時序仿真的條件便利,很多情況下就不需要進行門級仿真工作了。比如在使用可編程器件(
24、FPGA或CPLD)實現(xiàn)電路時,設(shè)計者可以相對地獲得布局布線后提取出的延時信息文件,這樣就不需要再進行門級仿真了。2.2.3 系統(tǒng)實現(xiàn)如果系統(tǒng)綜合優(yōu)化的結(jié)果滿足設(shè)計者的要求,就可以進行系統(tǒng)實現(xiàn)了,設(shè)計者可以將綜合后的電路的網(wǎng)表文件和設(shè)計者的時序要求交給IC生產(chǎn)廠家進行下一步的工作,也可以通過EDA工具軟件對FPGA/CPLD芯片進行配置與編程。2.3 EDA設(shè)計過程上一節(jié)介紹了現(xiàn)代電路設(shè)計的流程,這一節(jié)介紹運用EDA技術(shù)進行數(shù)字系統(tǒng)設(shè)計的過程。完整地了解EDA技術(shù)進行設(shè)計開發(fā)的流程對于正確選擇和使用EDA軟件、優(yōu)化設(shè)計項目、提高設(shè)計效率十分有益。一個完整的、典型的EDA設(shè)計流程既是自頂向下設(shè)計
25、方法的具體實施途徑,也是EDA工具軟件本身的組成結(jié)構(gòu)。在實踐中進一步了解這一設(shè)計流程的諸多設(shè)計工具,有利于有效地排除設(shè)計中出現(xiàn)的問題,提高設(shè)計質(zhì)量和總結(jié)設(shè)計經(jīng)驗。圖2-3是運用EDA技術(shù)進行數(shù)字系統(tǒng)設(shè)計的流程圖。由圖2-3知,可以把EDA設(shè)計流程分為:設(shè)計輸入、時序與功能仿真、綜合、適配與下載。圖2-3 EDA設(shè)計流程圖2.3.1 設(shè)計輸入1圖形輸入圖形輸入通常包括原理圖輸入、狀態(tài)圖輸入和波形圖輸入三種方法。狀態(tài)圖輸入方法根據(jù)電路的控制條件和不同的轉(zhuǎn)換方式,用繪圖的方式在EDA工具的狀態(tài)圖編輯器上繪出狀態(tài)圖,然后由EDA編譯器和綜合器將此狀態(tài)變化流程圖編輯綜合成電路網(wǎng)表。波形圖輸入方法則將待設(shè)
26、計的電路看成是一個黑盒子,該黑盒子電路的輸入和輸出是時序波形圖,EDA工具能據(jù)此完成黑盒子電路的設(shè)計。原理圖輸入是EDA設(shè)計中最常用的方式,類似于傳統(tǒng)電子設(shè)計的原理圖輸入方法,即在EDA軟件的圖形編輯界面中繪制能完成特定功能的電路原理圖。原理圖由邏輯器件(符號)和連線構(gòu)成,圖中的邏輯器件可以是EDA軟件庫中預制的功能模塊,如與門、非門、或門、觸發(fā)器以及各種74系列器件功能的宏功能塊,也可以調(diào)用由HDL語言編寫的程序電路,把該程序電路看成一個電路符號進行調(diào)用。原理圖編輯繪制完成后,原理圖編輯器將對輸入的圖形文件進行排錯,之后再將其編譯成適用于邏輯綜合的網(wǎng)表文件。用原理圖輸入的優(yōu)點是顯而易見的:(
27、1) 設(shè)計者進行電子線路設(shè)計不需要增加新的相關(guān)知識,如HDL語言等。(2) 方法與Protel作圖相似,設(shè)計過程形象直觀,適用于初學與演示。(3) 對于較小的電路模型,其結(jié)構(gòu)與實際電路十分接近,設(shè)計者易于把握電路全局。(4) 由于設(shè)計方式接近于底層電路布局,因而易于控制邏輯資源的使用,節(jié)省面積。然而,使用原理圖輸入也存在以下缺點:(1) 圖形設(shè)計方式并沒有得到標準化,不同的EDA軟件中的圖形文件兼容性差,難以交換與管理。(2) 隨著電路設(shè)計規(guī)模的擴大,原理圖輸入描述方式必然引起一系列難以克服的困難,如電路功能原理的易讀性下降,錯誤排查困難,整體調(diào)整和結(jié)構(gòu)升級困難等。(3) 由于圖形文件的不兼容
28、性,使性能優(yōu)秀的電路模塊的再利用十分困難,這是圖形輸入應用的最大障礙。一般在數(shù)字電子系統(tǒng)設(shè)計中采用原理圖與硬件描述語言共同輸入的方式,頂層系統(tǒng)文件采用原理圖輸入,而各個子模塊采用硬件描述語言輸入。2硬件描述語言(HDL)輸入隨著EDA技術(shù)的發(fā)展,使用硬件語言設(shè)計CPLD/FPGA成為一種趨勢。目前最主要的硬件描述語言是VHDL和Verilog HDL。VHDL發(fā)展較早,語法嚴格,而Verilog HDL是在C語言的基礎(chǔ)上發(fā)展起來的一種硬件描述語言,語法較自由。VHDL和Verilog HDL兩者相比,VHDL的書寫規(guī)則比Verilog煩瑣一些,但Verilog HDL自由的語法也容易讓少數(shù)初學
29、者出錯。國外電子專業(yè)很多會在本科階段教授VHDL,在研究生階段教授Verilog HDL。國內(nèi)VHDL的參考書很多,便于查找資料,而Verilog HDL的參考書相對較少,這給學習Verilog HDL帶來一些困難。從EDA技術(shù)的發(fā)展上看,已出現(xiàn)用于CPLD/FPGA設(shè)計的硬件C語言編譯軟件,雖然還不成熟,應用極少,但它有可能會成為繼VHDL和Verilog HDL之后,設(shè)計大規(guī)模CPLD/FPGA的又一種手段。HDL輸入方式與傳統(tǒng)的計算機軟件語言編輯輸入基本一致,它使用了某種硬件描述語言的電路設(shè)計文本(如VHDL、Verilog HDL及AHDL)進行編輯輸入。可以說,HDL輸入方法克服了原
30、理圖輸入法存在的所有弊端,為EDA技術(shù)的應用和發(fā)展打開一個廣闊的天地。目前有些EDA輸入工具可以把圖形輸入與HDL輸入的優(yōu)勢結(jié)合起來,如狀態(tài)圖輸入編輯方式即用圖形化狀態(tài)機輸入工具,用圖形的方式表示狀態(tài)圖,在填好時鐘信號名、狀態(tài)轉(zhuǎn)換條件、狀態(tài)機類型等要素后,就可自動生成VHDL/Verilog HDL程序。又如,在原理圖輸入方式中,先用VHDL描述的各個電路模塊,直觀地表示系統(tǒng)的總體框架,再用自動HDL生成工具生成相應的VHDL或Verilog HDL程序,但總體上看,純粹的HDL輸入仍然是最基本、最有效和最通用的輸入方法。1) VHDL輸入VHDL(Very-high-speed Integr
31、ated Circuit Hardware Description Language)誕生于1982年,1987年底被IEEE和美國國防部確認為標準硬件描述語言。自IEEE公布了VHDL的標準版本IEEE-1076(簡稱87版)之后,各EDA公司相繼推出了自己的VHDL設(shè)計環(huán)境,或宣布自己的設(shè)計工具可以和VHDL接口。此后,VHDL在電子設(shè)計領(lǐng)域得到了廣泛的應用,并逐步取代了原有的非標準的硬件描述語言。1993年,IEEE對VHDL進行了修訂,從更高的抽象層次和系統(tǒng)描述能力上擴展VHDL的內(nèi)容,公布了新版本的VHDL,即IEEE標準的1076-1993版本(簡稱93版)?,F(xiàn)在,VHDL和Ver
32、ilog HDL作為IEEE的工業(yè)標準硬件描述語言,同樣得到眾多EDA公司的支持,在電子工程領(lǐng)域已成為事實上的通用硬件描述語言。有專家認為,在新的世紀中,VHDL與Verilog HDL語言將承擔起大部分的數(shù)字系統(tǒng)設(shè)計任務(wù)。VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口。除了含有許多具有硬件特征的語句外,VHDL的語言形式、描述風格與句法十分類似于一般的計算機高級語言。VHDL的程序結(jié)構(gòu)特點是將一項工程設(shè)計(或稱設(shè)計實體,可以是一個元件、一個電路模塊或一個系統(tǒng))分成外部(或稱可視部分及端口)和內(nèi)部(或稱不可視部分),即涉及實體的內(nèi)部功能和算法完成部分。在對一個設(shè)計實體定義了外部界面后,一
33、旦其內(nèi)部開發(fā)完成,其他的設(shè)計就可以直接調(diào)用這個實體。這種將設(shè)計實體分成內(nèi)、外兩部分的概念是VHDL系統(tǒng)設(shè)計的基礎(chǔ)。2) Verilog HDL輸入早期的硬件描述語言是以一種高級語言為基礎(chǔ),加上一些特殊的約定而產(chǎn)生的,目的是為了實現(xiàn)RTL級仿真,用以驗證設(shè)計的正確性,而不必像傳統(tǒng)的手工設(shè)計過程那樣,必須等到完成樣機后才能進行實測和調(diào)試。Verilog HDL是在使用最廣泛的C語言的基礎(chǔ)上發(fā)展起來的一種硬件描述語言,它是由GDA(Gateway Design Automation)公司的PhilMoorby在1983年末首創(chuàng)的,最初只設(shè)計了一個仿真與驗證工具,之后又陸續(xù)開發(fā)了相關(guān)的故障模擬與時序分
34、析工具。1985年,Moorby推出它的第三個商用仿真器Verilog-XL,獲得了巨大的成功,從而使得Verilog HDL迅速得到推廣應用。1989年,Cadence公司收購了GDA公司,使得Verilog HDL成為了該公司的獨家專利。1990年,Cadence公司公開發(fā)表了Verilog HDL,并成立了LVI組織以促進Verilog HDL成為IEEE標準,即IEEE Standard 1364-1995。Verilog HDL的最大特點就是易學易用,如果有C語言的編程經(jīng)驗,設(shè)計者可以在較短的時間內(nèi)學習和掌握Verilog HDL,因而可以把Verilog HDL安排在與ASIC設(shè)計
35、等相關(guān)的課程內(nèi)進行講授。由于HDL語言本身是專門面向硬件與系統(tǒng)設(shè)計的,因而這樣的安排可以使學習者同時獲得設(shè)計實際電路的經(jīng)驗。與之相比,VHDL的學習要困難一些。3) ABEL-HDL輸入這是一種早期的硬件描述語言,在可編程邏輯器件的設(shè)計中可以方便、準確地描述所設(shè)計電路的邏輯功能。ABEL-HDL支持邏輯電路的多種表達形式,其中包括邏輯方程、真值表和狀態(tài)圖。ABEL語言和Verilog語言同屬一種描述級別,但ABEL語言的特性受支持的程度遠遠不如 Verilog。Verilog是從集成電路設(shè)計發(fā)展而來的,語言較為成熟,支持的EDA工具很多,而ABEL語言從早期可編程邏輯器件(PLD)的設(shè)計中發(fā)展
36、而來。ABEL-HDL被廣泛用于各種可編程邏輯器件的邏輯功能設(shè)計,由于其語言描述的獨立性,因而適用于各種不同規(guī)模的可編程器的設(shè)計。 如DOS版的ABEL3.0軟件可對包括GAL進行全方位的邏輯描述和設(shè)計,而在諸如Lattice的ispEXPERT、DATAIO的Synario、Vantis的Design-Direct、Xilinx的Foundation和WebPack等EDA軟件中,ABEL-HDL同樣可用于較大規(guī)模的FPGA/CPLD器件功能設(shè)計。ABEL-HDL還能對所設(shè)計的邏輯系統(tǒng)進行功能仿真。ABEL-HDL設(shè)計也能通過標準格式轉(zhuǎn)換文件轉(zhuǎn)換至其他設(shè)計環(huán)境,如VHDL、Verilog-H
37、DL等。從長遠來看,ABEL-HDL只會在較小的范圍內(nèi)繼續(xù)存在。4) AHDL輸入AHDL(ALTERA HDL)是ALTERA公司發(fā)明的硬件描述語言,特點是非常易學易用,學過高級語言的人可以在很短的時間(如幾周)內(nèi)掌握AHDL。它的缺點是移植性不好,通常只用于ALTERA自己的開發(fā)系統(tǒng)中。2.3.2 綜合過程一般來說,綜合過程是僅對于HDL而言的。利用HDL綜合器對設(shè)計進行綜合是十分重要的一步,因為綜合過程是連接軟件設(shè)計的HDL描述與硬件實現(xiàn)的一座橋梁。綜合就是將電路的高級語言(如行為描述)轉(zhuǎn)換成低級的、可與FPGA/CPLD的基本結(jié)構(gòu)相映射的網(wǎng)表文件或程序。當輸入的HDL文件在EDA工具中
38、檢測無誤后,首先面臨的是邏輯綜合,因此要求HDL源文件中的語句都是可綜合的。在綜合之后,HDL綜合器一般都可以生成一種或多種文件格式網(wǎng)表文件,如有EDIF、VHDL、Verilog等標準格式,在這種網(wǎng)表文件中用各自的格式描述電路的結(jié)構(gòu),如在VHDL網(wǎng)表文件中采用VHDL的語法,用結(jié)構(gòu)描述的風格重新詮釋綜合后的電路結(jié)構(gòu)。整個綜合過程就是將設(shè)計者在EDA平臺上編輯輸入的HDL文本、原理圖或狀態(tài)圖形描述,依據(jù)給定的硬件結(jié)構(gòu)組件和約束控制條件進行編譯、優(yōu)化、轉(zhuǎn)換和綜合,最終獲得門級電路甚至更底層的電路描述網(wǎng)表文件。由此可見,綜合器工作前,必須給定最后實現(xiàn)的硬件結(jié)構(gòu)參數(shù),它的功能就是將軟件描述與給定的硬
39、件結(jié)構(gòu)用某種網(wǎng)表文件的方式對應起來,成為相應的映射關(guān)系。如果把綜合理解為映射過程,那么顯然這種映射不是惟一的,并且綜合也不是單純的或一個方向的。為達到速度、面積、性能的要求,往往需要對綜合加以約束,稱為綜合約束。2.3.3 適配器適配器也稱結(jié)構(gòu)綜合器,它的功能是將由綜合器產(chǎn)生的網(wǎng)表文件配置于指定的目標器件中,使之產(chǎn)生最終的下載文件,如JEDEC、Jam格式的文件。適配器所選定的目標器件(FPGA/ CPLD芯片)必須屬于原綜合器指定的目標器件系列。通常,EDA軟件中的綜合器可由專業(yè)的第三方EDA公司提供,而適配器則需由FPGA/CPLD供應商提供,因為適配器的適配對象直接與器件的結(jié)構(gòu)細節(jié)相對應
40、。邏輯綜合通過后必須利用適配器將綜合后的網(wǎng)表文件針對某一具體的目標器件進行邏輯映射操作,包括底層器件配置、邏輯分割、邏輯布局布線操作。適配完成后可以利用適配所產(chǎn)生的仿真文件進行精確的時序仿真,同時產(chǎn)生可用于編程的文件。2.3.4 時序仿真與功能仿真在編程下載前必須利用EDA工具對適配生成的結(jié)果進行模擬測試,這就是仿真。仿真就是讓計算機根據(jù)一定的算法和一定的仿真庫對EDA設(shè)計進行模擬,以驗證設(shè)計,排除錯誤。仿真是EDA設(shè)計過程中的重要步驟。時序與功能仿真通常由PLD公司的EDA開發(fā)工具直接提供,也可以選用第三方的專業(yè)仿真工具。1時序仿真時序仿真是接近真實器件運行特性的仿真,仿真文件中已包含了器件
41、的硬件特性參數(shù),因此仿真精度高。但時序仿真的仿真文件必須來自針對具體器件的綜合器與適配器。綜合后所得到的EDIF等網(wǎng)表文件通常作為FPGA適配器的輸入文件,產(chǎn)生的仿真網(wǎng)表文件中包含了精確的硬件延遲信息。2功能仿真功能仿真是指直接對VHDL、原理圖描述或其他描述形式的邏輯功能進行功能模擬,以了解其實現(xiàn)的功能是否滿足原設(shè)計要求,仿真過程不涉及任何具體器件的硬件,不經(jīng)歷綜合與適配階段,在設(shè)計項目編輯編譯后即可進入門級仿真器進行模擬測試。直接進行功能仿真的好處是設(shè)計耗時短,對硬件庫、綜合器等沒有任何要求。對于規(guī)模比較大的設(shè)計項目,綜合與適配是非常耗時的,比如每一次修改后的模擬都必須進行時序仿真,顯然極
42、大地降低開發(fā)效率。因此,通常的做法是:首先進行功能仿真,待確認設(shè)計文件所表達的功能滿足設(shè)計者原有意圖,即邏輯功能滿足要求后,再進行綜合、適配和時序仿真,以便把握設(shè)計項目在硬件條件下的運行情況。2.3.5 編程下載適配后生成的下載或配置文件通過編程器或編程電纜向FPGA或CPLD進行下載,以便進行硬件調(diào)試和驗證(Hardware Debugging)。通常,將對CPLD的下載稱為編程(Program),對FPGA中的SRAM進行直接下載稱為配置(Configure),但對于OTP FPGA的下載和對FPGA專用ROM的下載仍稱為編程。FPGA與CPLD的辨別和分類主要依據(jù)其結(jié)構(gòu)特點和工作原理。通
43、常的分類方法是:(1) 將以乘積項結(jié)構(gòu)方式構(gòu)成邏輯行為的器件稱為CPLD,如Lattice公司的ispLSI系列、Xilinx公司的XC9500系列、ALTERA公司的MAX7000S系列和Lattice(原Vantis)的Mach系列等。(2) 將以查表法結(jié)構(gòu)方式構(gòu)成邏輯行為的器件稱為FPGA,如Xilinx的Spartan系列、ALTERA公司的FLEX10K或ACEX1K系列等。另外應該注意,從目前EDA技術(shù)相關(guān)概念的稱謂上看,“FPGA”而非“CPLD”具有更廣泛的含義。例如,Synopsys公司為ALTERA和Xilinx推出的FPGA/CPLD綜合器是FPGA Compiler和F
44、PGA Express;Mentor公司的綜合器是FPGA Advantage。本書中我們將利用EDA技術(shù)開發(fā)FPGA/CPLD統(tǒng)稱為“FPGA開發(fā)技術(shù)”。2.3.6 硬件測試最后對載入了設(shè)計的FPGA或CPLD的硬件系統(tǒng)進行統(tǒng)一測試,以便最終驗證設(shè)計項目在目標系統(tǒng)上的實際工作情況,以排除錯誤,改進設(shè)計。在學習EDA技術(shù)時,讀者可以準備一個EDA實驗開發(fā)系統(tǒng),現(xiàn)在市場上用于教學與開發(fā)的EDA實驗開發(fā)系統(tǒng)很多,可以買一套,或自己做一套,當然如果數(shù)量不多的話,自己開發(fā)成本可能很大。無論使用那種EDA實驗開發(fā)系統(tǒng),其基本原理都是一樣的。用戶設(shè)計的電路(包括原理圖輸入與HDL輸入)經(jīng)過編譯后生成相應的
45、程序(對于FPGA芯片為.sof文件,對于CPLD芯片為.pof文件),這些文件通過下載配置電路下載配置到芯片中;在開發(fā)系統(tǒng)中還要包括晶振電路,用于產(chǎn)生脈沖信號;其他電路還包括基本輸入電路(如鍵盤電路、傳感器電路、A/D轉(zhuǎn)換電路等)、基本輸出電路(如數(shù)碼管電路、LED發(fā)光管電路、電機驅(qū)動電路、蜂鳴器電路、D/A轉(zhuǎn)換電路等)、擴展口電路;為了便于用戶設(shè)計開發(fā),EDA實驗開發(fā)系統(tǒng)往往還留有部分擴展口以供用戶擴展開發(fā)使用;此外,系統(tǒng)中還包括一些通信接口電路(如RS232、USB接口電路等)、功能復雜的多媒體電路、無線發(fā)送接收電路,等等。2.4 在系統(tǒng)編程技術(shù)采用EEPROM編程下載技術(shù)的可編程邏輯器
46、件具有可反復編程且能長期保存的優(yōu)點,但編程時需用昂貴的專用編程器,編程效率低,使用不便,特別是對于目前常用的引腳多且具有諸如PLCC、TQFP、PQFP、BGA等封裝的器件,采用專用編程器下載幾乎無法進行實用,因為芯片在編程器上的插拔過程會損傷引腳,以致于要經(jīng)修正后才能上貼裝機,生產(chǎn)效率極低,不能進行大規(guī)模生產(chǎn)。由Lattice公司發(fā)明的在系統(tǒng)可編程ISP(In-System Programmability)技術(shù),很好地解決了可編程器件在編程下載方面的諸多問題。這一編程方式已被其他PLD公司廣泛采用,甚至許多單片機的編程下載方式也都采用了ISP技術(shù),比如AVR單片機現(xiàn)在普遍使用ISP技術(shù)。在系
47、統(tǒng)可編程器件是一種無需將器件從電路板上取下、無需專門的編程高壓即可編程的芯片。它通過45根編程連線與計算機的并口相連,在專門的燒錄軟件的幫助下,可非常方便地實現(xiàn)編程下載。使用這種技術(shù)可以免去以往PLD插拔芯片的麻煩。ISP器件的編程方法多種多樣,可利用PC或工作站編程,還可用微處理器進行編程,ISP還允許通過紅外線、電話線或互聯(lián)網(wǎng)進行遠程編程等,因此可適用于各種不同的需要。采用ISP技術(shù)的CPLD/FPGA系統(tǒng)可以在裝配后進行邏輯設(shè)計和編程下載,并能根據(jù)需要對系統(tǒng)硬件功能實時地加以修改或按預定程序改變邏輯組態(tài),從而使整個硬件系統(tǒng)變得像軟件那樣靈活且易于修改。因此,可利用ISP技術(shù),在不改變硬件
48、電路和結(jié)構(gòu)的情況下重構(gòu)邏輯,或進行硬件升級,甚至在系統(tǒng)不停止工作的條件下進行遠程硬件升級。顯然,ISP技術(shù)使現(xiàn)代數(shù)字系統(tǒng)設(shè)計的面貌為之一新,有力地促進了EDA技術(shù)的發(fā)展。其編程過程大致如下:(1) 編程前先焊接安裝芯片,以減少對器件的觸摸和損傷,可使用任意封裝形式的器件,如圖2-4所示。(2) 設(shè)計相關(guān)的下載配置電路,使由計算機并口(或其它接口)輸出的下載數(shù)據(jù)通過相關(guān)的電路配置到芯片或其它存儲器中。ISP器件允許帶有一般的存儲電路,而且樣機制造方便,支持生產(chǎn)和測試流程中的修改,如圖2-5所示。圖2-4 未編程前先焊接安裝芯片 圖2-5 系統(tǒng)可編程器件 (3) 如果修改設(shè)計,可隨時通過計算機對芯
49、片內(nèi)部的電路進行修改,允許現(xiàn)場硬件升級,縮短了研發(fā)周期與調(diào)試時間,如圖2-6所示。圖2-7是使用ALTERA公司的Quartus軟件進行下載配置的示意圖,通過計算機并口傳輸數(shù)據(jù),其下載方式有JTAG、PS、AS、In-S等。圖2-6 在系統(tǒng)現(xiàn)場修改設(shè)計 圖2-7 ISP下載配置示意圖2.5 EDA工具軟件介紹目前,ALTERA公司是可編程邏輯器件的主要供應商之一,其主要產(chǎn)品有:MAX3000/7000、FLEX10K、APEX20K、ACEX1K、Stratix、Cyclone等,其所開發(fā)的軟件有MAX +plus和Quartus。Xilixn公司是FPGA的發(fā)明者,也是可編程邏輯器件的主要供
50、應商之一,其產(chǎn)品種類較全,主要有:XC9500、Coolrunner、Spartan、Virtex等,所開發(fā)的軟件有Foundation和ISE。Lattice是ISP技術(shù)的發(fā)明者,ISP技術(shù)極大地促進了PLD產(chǎn)品的發(fā)展,與ALTERA和Xilinx相比,其開發(fā)工具略遜一籌。Lattice公司的中小規(guī)模PLD比較有特色,1999年推出了可編程模擬器件,1999年收購Vantis(原AMD子公司)后成為第三大可編程邏輯器件供應商,2001年12月又收購了Agere公司(原Lucent微電子部)的FPGA部門,其主要產(chǎn)品有ispMACH4000、EC/ECP、XO、XP以及可編程模擬器件等。另外,
51、常見的EDA工具軟件生產(chǎn)廠家還有ACTEL公司、Cypress公司、QuickLogic公司、ATMEL公司等。下面將介紹典型的常用EDA工具軟件。2.5.1 ISE軟件介紹Xilinx公司早期的EDA工具軟件為Foundation,它支持的Xilinx公司的芯片有XC9500、XC9500XL、XPLA3、Spartan、SpartanXL、Spartan、XC3000A/L、XC4000E/L/EX/XL /XV/XLA、XC5200、Virtex和Virtex-5等。運行Foundation時,首先進入項目管理器(Project Manager)窗口,所有的設(shè)計輸入、實現(xiàn)和仿真都必須在項
52、目管理器中完成。項目管理器可以對FPGAExpress綜合工具和設(shè)計實現(xiàn)工具進行初始化,利用合適的用戶界面,在項目管理器中就可以對整個設(shè)計開發(fā)過程進行管理。它是Xilinx公司上一代的PLD開發(fā)軟件,目前Xilinx已經(jīng)停止開發(fā)升級Foundation,而轉(zhuǎn)向ISE軟件平臺。ISE軟件引入獨有的ISE Fmax技術(shù),達到業(yè)界最快的邏輯性能,可對Virtex-5設(shè)計進行布線前和布線后優(yōu)化,對新的Express Fabric技術(shù)的增強布線支持減少了邏輯層次和信號延遲,并可更高效地壓縮設(shè)計。ISE軟件提供一種改進的時序收斂環(huán)境,為邏輯和物理設(shè)計域提供更緊密的關(guān)聯(lián);時序分析、布局規(guī)劃和實現(xiàn)報告之間的自
53、動交叉探測功能,為布線和調(diào)試設(shè)計提供了更大的可視性和更高效的方法;將Xplorer集成到設(shè)計流程中,為設(shè)計者提供了自動搜索各種設(shè)置和約束的能力,從而大大提高了用戶設(shè)計的性能。此外,ISE軟件還支持Virtex-5 FPGA中的第二代稀疏鋸齒 (Sparse Chevron)技術(shù),極大地簡化了PCB設(shè)計?;诖罅康腣irtex-5器件特性,ISE軟件中的新型Xpower Estimator工具確保了準確的功耗估計,從而允許設(shè)計者預先規(guī)劃功耗預算。2.5.2 ispLEVER軟件介紹ispLEVER是Lattice公司最新推出的一套EDA軟件,提供設(shè)計輸入、HDL綜合、驗證、器件適配、布局布線、編
54、程和在系統(tǒng)設(shè)計調(diào)試等功能。設(shè)計輸入可采用原理圖、硬件描述語言、混合輸入三種方式。ispLEVER能對所設(shè)計的數(shù)字電子系統(tǒng)進行功能仿真和時序仿真,其軟件中含有不同的工具,適用于各個設(shè)計階段,如ispLEVER軟件中包含Synplicity公司的“Synplify”、Exemplar Logic公司的“Leonado”綜合工具和Lattice的ispVM器件編程工具。ispLEVER軟件提供給開發(fā)者一個有力的工具,用于設(shè)計所有Lattice可編程邏輯產(chǎn)品。這使得ispLEVER的用戶能夠設(shè)計所有Lattice公司的FPGA、FPSC、CPLD產(chǎn)品,而不必學習新的設(shè)計工具。2.5.3 MAX+plu
55、s 介紹MAX+plus (或?qū)懗蒑axplus 2、MP2)是ALTERA公司推出的第三代PLD開發(fā)系統(tǒng),使用MAX+plus 的設(shè)計者不需精通器件內(nèi)部的復雜結(jié)構(gòu),可以用自己熟悉的設(shè)計工具(如原理圖輸入或硬件描述語言)建立設(shè)計,MAX+plus 把這些設(shè)計自動換成最終所需的格式,其設(shè)計速度非???。對于一般幾千門的電路設(shè)計,使用MAX+plus ,從設(shè)計輸入到器件編程完畢、用戶拿到設(shè)計好的邏輯電路,大約只需幾小時,設(shè)計處理一般在數(shù)分鐘內(nèi)完成。特別是在原理圖輸入等方面,Maxplus 2被公認為是最易使用、人機界面最友善的PLD開發(fā)軟件,特別適合初學者使用。其設(shè)計過程如下:(1) 設(shè)計輸入。早期
56、,設(shè)計人員采用傳統(tǒng)的原理圖輸入方法來開始設(shè)計,自90年代初,Verilog HDL、VHDL、AHDL等硬件描述語言輸入方法在大規(guī)模設(shè)計中得到了廣泛應用。(2) 前仿真(功能仿真)。所設(shè)計的電路必須在布局布線前驗證其功能是否有效。ASCI設(shè)計中,這一步稱為第一次Sign-off;PLD設(shè)計中,有時跳過這一步。(3) 設(shè)計編譯。設(shè)計輸入后有一個從高層次系統(tǒng)行為設(shè)計向門級邏輯電路設(shè)計轉(zhuǎn)化、翻譯的過程,即把設(shè)計輸入的某種或某幾種數(shù)據(jù)格式(網(wǎng)表)轉(zhuǎn)化為軟件可識別的某種數(shù)據(jù)格式(網(wǎng)表)。(4) 優(yōu)化。對于綜合生成的網(wǎng)表,根據(jù)布爾方程功能等效的原則,用更小、更快的綜合結(jié)果代替一些復雜的單元,并與指定的庫映
57、射生成新的網(wǎng)表,這是減小電路規(guī)模的一條必由之路。(5) 布局布線。在PLD設(shè)計中,第(3)(5)步可以用PLD廠家提供的開發(fā)軟件(如 Maxplus 2)自動一次完成。(6) 后仿真(時序仿真)。此時需要利用在布局布線中獲得的精確參數(shù)再次驗證電路的時序。ASCI設(shè)計中,這一步驟稱為第二次Sign-off。(7) 生產(chǎn)。布線和后仿真完成之后,ASCI或PLD芯片就可以投產(chǎn)了。2.5.4 Quartus 介紹Quartus是MAX+plus的升級版本,是ALTERA公司的第四代開發(fā)軟件。Quartus提供了方便的設(shè)計輸入方式,編譯快速,器件編程直接、易懂,它能夠支持邏輯門數(shù)在百萬門以上的邏輯器件的
58、開發(fā),并且為第三方工具提供了無縫接口。Quartus支持的器件有:Stratix、Stratix GX、Stratix、Mercury、MAX3000A、MAX7000B、MAX7000S、MAX7000AE、MAX、FLEX6000、FLEX10K、FLEX10KA、FLEX10KE、Cyclone、Cyclone、APEX、APEX20KC、APEX20KE和ACEX1K系列。Quartus軟件包的編程器是系統(tǒng)的核心,提供強大的設(shè)計處理功能,設(shè)計者可以通過添加特定的約束條件來提高芯片的利用率。ALTERA公司是世界上最大的EDA硬件芯片生產(chǎn)廠商之一,但其Quartus的安裝需要計算機具有較
59、高的硬件配置,為了方便一些用戶的需要,本書在介紹Quartus應用的同時也介紹了MAX+plus的應用,其它EDA工具軟件的使用請參考相關(guān)的書籍。2.6 實訓:運用圖形法設(shè)計3-8譯碼器一、實訓目的(1) 學會運用MAX+plus軟件的圖形法輸入設(shè)計數(shù)字電路。(2) 掌握MAX+plus軟件的使用步驟。(3) 掌握3-8譯碼器的原理圖輸入設(shè)計。二、實訓原理138為3-8譯碼器,共有 54/74S138和 54/74LS138 兩種線路結(jié)構(gòu)形式,其主要特性如下:當一個選通端(G1)為高電平,另兩個選通端(NG2A和NG2B)為低電平時,可將地址端(A0、A1、A2)的二進制譯碼在一個對應的輸出端
60、以低電平譯出。利用G1、NG2A和NG2B級聯(lián)可將3-8譯碼器擴展成24線譯碼器;若外接一個反相器,則還可級聯(lián)擴展成32線譯碼器。3-8譯碼器的真值表如表2-1所示。MAX+plus原理圖輸入的基本操作包括編輯原理圖、編譯設(shè)計文件、生成元件符號以及功能仿真、引腳鎖定、時序仿真、編程下載和硬件調(diào)試等(有時功能仿真與時序仿真也可以同時進行),如圖2-8所示。用MAX+plus設(shè)計的原理圖如圖2-9所示。其中G1、NG2A、NG2B表示控制輸入信號,A0、A1、A2表示地址輸入信號,NY0、NY1、NY2、NY3、NY4、NY5、NY6、NY7表示二進制譯碼輸出信號(在信號名稱前面加上一個“N”表示
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- .7市場部培訓紫琪爾項目
- 2025年全球及中國無人機測量軟件行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年全球及中國珍珠奶茶配料行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年全球及中國電信行業(yè)CRM軟件行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年全球及中國便攜式四合一氣體檢測儀行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年全球及中國塑料輔助設(shè)備行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025-2030全球機器人滾珠絲杠行業(yè)調(diào)研及趨勢分析報告
- 2025年全球及中國一次性發(fā)熱暖袋行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年全球及中國金屬箔電流傳感貼片電阻行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025-2030全球貓咪吹風機行業(yè)調(diào)研及趨勢分析報告
- 2024-2025學年廣東省深圳市南山區(qū)監(jiān)測數(shù)學三年級第一學期期末學業(yè)水平測試試題含解析
- 廣東2024年廣東金融學院招聘專職輔導員9人筆試歷年典型考點(頻考版試卷)附帶答案詳解
- DB31∕731-2020 船舶修正總噸單位產(chǎn)品能源消耗限額
- 2024年衛(wèi)生專業(yè)技術(shù)資格考試衛(wèi)生檢驗技術(shù)(初級(師)211)相關(guān)專業(yè)知識試題及答案指導
- 《手衛(wèi)生知識培訓》培訓課件
- 江蘇省南京鼓樓區(qū)2024年中考聯(lián)考英語試題含答案
- 兒科護理學試題及答案解析-神經(jīng)系統(tǒng)疾病患兒的護理(二)
- 15篇文章包含英語四級所有詞匯
- 王陽明心學完整版本
- (汽車制造論文)機器人在汽車制造中應用
- 幼兒園手工教學中教師指導行為研究-以自貢市幼兒園為例
評論
0/150
提交評論