Top Down FPGA/EPLD設(shè)計的黃金組合
電子技術(shù)的日新月異,不斷地改變著人們的生活方式。而世界電子技術(shù)及設(shè)計方法的發(fā)展,正在給中國的電子設(shè)計工程師們以新的挑戰(zhàn)和壓力。不能否認,目前中國電子設(shè)計技術(shù)仍遠遠落后于發(fā)達國家水平,尤其是在電子技術(shù)的基礎(chǔ)產(chǎn)業(yè),即IC/ASIC方面。當國人以國產(chǎn)計算機,電視,VCD,影碟機等產(chǎn)業(yè)欣欣向榮,飛速發(fā)展而沾沾自喜的時候,卻不能不看到,幾乎所有的核心技術(shù)和幾乎所有的內(nèi)部關(guān)鍵集成電路,仍然印著國外半導體廠家的商標。單從時間上看,國內(nèi)技術(shù)可能只落后一、二十年,但是我們更應該看到:一方面,這一產(chǎn)業(yè)的發(fā)展是以非線性速度向前推進的,另一方面,當發(fā)達國家"全民皆兵",整體發(fā)展水平平均較高時,國內(nèi)仍局限在為數(shù)不多的幾個國家重點投資企業(yè)或合資/獨資企業(yè)里。
然而,我們有幸的看到,F(xiàn)PGA/EPLD 的發(fā)展正逐步取代越來越多的ASIC市場??芍貜褪褂?,小批量,低投入,高性能,高密度,開發(fā)周期短等諸多優(yōu)點,使國內(nèi)更多的工程師們樂于采用。由于不需要任何投片費用,也不需要建立任何生產(chǎn)線,因此,采用FPGA/EPLD所需的投資遠遠低于ASIC的投資。據(jù)估計,引進一套先進的FPGA Top-Down設(shè)計工具所需費用還不到ASIC所需的十分之一,而大力推廣先進的FPGA設(shè)計方法,既可以降低諸多產(chǎn)業(yè)投資成本,也可培養(yǎng)一大批國內(nèi)的Top-Down的設(shè)計人才,從而提高國內(nèi)Top-Down設(shè)計的整體水平,為將來國內(nèi)ASIC產(chǎn)業(yè)的快速、健康發(fā)展打下堅實的基礎(chǔ)。
FPGA/EPLD的自上而下(Top-Down)設(shè)計方法:
Top_down設(shè)計方法嚴格來說只是一個概念,在不同的軟件上有不同的實現(xiàn)方式,只要能實現(xiàn)數(shù)據(jù)從頂部模型傳遞到底部模型的參數(shù)化過程都可以稱之為Top Down設(shè)計方法,從這點來說實現(xiàn)的方法也可以多種多樣。不過從數(shù)據(jù)管理和條理性上來衡量,對于某一特定類型都有一個相對合適的方法,當產(chǎn)品結(jié)構(gòu)的裝配關(guān)系很簡單時這點不太明顯,當產(chǎn)品的結(jié)構(gòu)很復雜或數(shù)據(jù)很大時數(shù)據(jù)的管理就很重要了。下面我們就WildFire來討論一下一般的Top Down的實現(xiàn)過程。不過在討論之前我們有必要先弄清楚WildFire中各種數(shù)據(jù)共享方法,因為top down的過程其實就是一個數(shù)據(jù)傳遞和管理的過程。弄清楚不同的幾何傳遞方法才能根據(jù)不同的情況使用不同的數(shù)據(jù)共享方法。
傳統(tǒng)的設(shè)計手段是采用原理圖輸入的方式進行的,如圖1所示。通過調(diào)用FPGA/EPLD廠商所提供的相應物理元件庫,在電路原理圖中繪制所設(shè)計的系統(tǒng),然后通過網(wǎng)表轉(zhuǎn)換產(chǎn)生某一特定FPGA/EPLD廠商布局布線器所需網(wǎng)表,通過布局布線,完成設(shè)計。原理圖繪制完成后可采用門級仿真器進行功能驗證。
圖1:傳統(tǒng)的設(shè)計手段與Top-Down設(shè)計工具的比較
然而,工程師的最初設(shè)計思想不是一開始就考慮采用某一FPGA/EPLD廠商的某一特定型號器件,而是從功能描述開始的。設(shè)計工程師首先要考慮規(guī)劃出能完成某一具體功能、滿足自己產(chǎn)品系統(tǒng)設(shè)計要求的某一功能模塊,利用某種方式(如HDL硬件描述語言)把功能描述出來,通過功能仿真(HDL仿真器)以驗證設(shè)計思路的正確性。當所設(shè)計功能滿足需要時,再考慮以何種方式(即邏輯綜合過程)完成所需要的設(shè)計,并能直接使用功能定義的描述。實際上這就是自頂而下設(shè)計方法。
HDL文本輸入硬件描述語言是用文本的形式描述硬件電路的功能,信號連接關(guān)系以及時序關(guān)系。它雖然沒有圖形輸入那么直觀,但功能更強,可以進行大規(guī)模,多個芯片的數(shù)字系統(tǒng)的設(shè)計。常用的HDL有ABEL,VHDL和VerilogHDL等。目前在我國廣泛應用的硬件描述語言主要有:ABEL語言、AHDL語言、Verilog語言、和VHDL語言,其中Verilog語言和VHDL語言最為流行。
與傳統(tǒng)電原理圖輸入設(shè)計方法相比,Top-Down設(shè)計方法具體有以下優(yōu)點:
1、完全符合設(shè)計人員的設(shè)計思路,從功能描述開始,到物理實現(xiàn)的完成。
2、功能設(shè)計可完全獨立于物理實現(xiàn)
在采用傳統(tǒng)的電原理輸入方法時,F(xiàn)PGA/EPLD器件的采用受到器件庫的制約。由于不同廠商FPGA/EPLD的結(jié)構(gòu)完全不同,甚至同一廠商不同系列的產(chǎn)品也存在結(jié)構(gòu)上的差別,因此,在設(shè)計一開始,工程師的設(shè)計思路就受到最終所采用器件的約束,大大限制了設(shè)計師的思路和器件選擇的靈活性。而采用Top-Down設(shè)計方法,功能輸入采用國際標準的HDL輸入方法,HDL可不含有任何器件的物理信息,因此工程師可以有更多的空間去集中精力進行功能描述,設(shè)計師可以在設(shè)計過程的最后階段任意選擇或更改物理器件。
3、設(shè)計可再利用
設(shè)計結(jié)果完全可以以一種知識產(chǎn)權(quán)(IP-Intellectual Property)的方式作為設(shè)計師或設(shè)計單位的設(shè)計成果,應用于不同的產(chǎn)品設(shè)計中,做到成果的再利用。
4、易于設(shè)計的更改
設(shè)計工程師可在極短的時間內(nèi)修改設(shè)計,對各種FPGA/EPLD結(jié)構(gòu)進行設(shè)計結(jié)果規(guī)模(門消耗)和速度(時序)的比較,選擇最優(yōu)方案。
5、設(shè)計、處理大規(guī)模、復雜電路
目前的FPGA/EPLD器件正向高集成度、深亞微米工藝發(fā)展。為設(shè)計系統(tǒng)的小型化,低功耗、高可靠性等提供了集成的手段。設(shè)計低于一萬門左右的電路,Top-Down設(shè)計方法具有很大的幫助,而設(shè)計更大規(guī)模的電路,Top-Down設(shè)計方法則是必不可少的手段。
6、設(shè)計周期縮短,生產(chǎn)率大大提高,產(chǎn)品上市時間提前,性能明顯提高,產(chǎn)品競爭力加強。據(jù)統(tǒng)計,采用Top-Down設(shè)計方法的生產(chǎn)率可達到傳統(tǒng)設(shè)計方法的2到4倍。
Top-Down設(shè)計流程如圖2所示,其核心是采用HDL語言進行功能描述,由邏輯綜合(Logic Synthesis)把行為(功能)描述轉(zhuǎn)換成某一特定FPGA/EPLD的工藝網(wǎng)表,送到廠商的布局布線器完成物理實現(xiàn)。在設(shè)計過程的每一個環(huán)節(jié),仿真器的功能驗證和門級仿真技術(shù)保證設(shè)計功能和時序的正確性。
FPGA/EPLD Top-Down 設(shè)計工具的黃金組合
Mentor Graphics公司提供一整套基于UNIX平臺和Windows 95/NT 平臺的FPGA/EPLD Top-Down設(shè)計工具:Renoir/ModelSim 和Exemplar,如圖2所示。兩種平臺的工具具有相同的用戶界面,并保證數(shù)據(jù)庫的完全統(tǒng)一。目前,在FPGA/EPLD Top-Down設(shè)計方法全球市場上,Mentor已擁有42%的市場份額,遠遠領(lǐng)先于其他任何一個廠家。
采用Top-Down設(shè)計方法進行FPGA/EPLD設(shè)計,其設(shè)計結(jié)果的優(yōu)劣與否取決于三個重要的因素:描述手段(即HDL語言)、設(shè)計方法(Style)和設(shè)計工具。描述手段是基礎(chǔ),設(shè)計方法需要工程經(jīng)驗,而設(shè)計工具則是Top-Down設(shè)計的關(guān)鍵。一套完整、強大、性能卓越的設(shè)計工具,可幫助設(shè)計工工程師最大限度的發(fā)揮其設(shè)計能力。
1. 圖形化輸入工具-Renoir
----設(shè)計工程師采用Top-Down方法進行FPGA/EPLD設(shè)計所面臨到的第一個問題就是HDL語言的學習。語言的學習過程和應用能力直接影響設(shè)計產(chǎn)品的完成及其性能。但是設(shè)計師進行產(chǎn)品設(shè)計的最初并不是考慮如何去寫語言,而是習慣于畫出設(shè)計的框圖,并采用圖形化方法(流程圖、狀態(tài)圖、真值表等)把它描述出來。Renoir這一圖形化輸入工具,不僅可以幫助設(shè)計師完成產(chǎn)品的功能描述,更可以自動生成HDL語言,為邏輯綜合提供必要的輸入數(shù)據(jù)。
---- 采用圖形化輸入方法主要優(yōu)點體現(xiàn)在:
提供框圖、流程圖、狀態(tài)圖、真值表等圖形輸入方法,使設(shè)計工程師從純文本的設(shè)計方法理解脫出來,設(shè)計手段更貼近于設(shè)計師的思維過程:
便于工程師之間進行設(shè)計的相互交流以及對前人/他人設(shè)計結(jié)果的理解與再利用; 便于初學者學習HDL語言;
便于設(shè)計成果的存檔,以便設(shè)計交流與再利用。
---- Renoir作為新一代的圖形化輸入工具更具有以下諸多優(yōu)點:
自動生成高效的HDL語言描述,生成結(jié)果可進行功能驗證及邏輯綜合;
完全支持VHDL和Verilog兩種國際標準,并完全支持VHDL/Verilog的混合描述;
支持UNIX和Win95/NT兩種平臺,具有相同界面和數(shù)據(jù)庫。Win95/NT平臺采用標準的Windows界面,易學易用;
支持框圖/流程圖的動畫(Animation)仿真、調(diào)試過程便于設(shè)計的調(diào)試;
即插即用(plug and play),與多種仿真器、綜合器及軟硬件協(xié)同驗證工具有完善的接口,組成各種設(shè)計流程;
在線查錯功能(On line checking),進行語法和可綜合性檢查; 語言到圖形的轉(zhuǎn)換,可以把VHDL、Verilog或混合HDL語言描述換成框圖、流程圖或狀態(tài)圖,并保持原設(shè)計的層次結(jié)構(gòu);
支持OLE(Object Liking and Embedding)標準,可把Renoir中的任何圖形設(shè)計形式連接或嵌入到任一支持OLE的應用程序中,如Word、Powerpoint等,以便用戶建立設(shè)計文檔;
支持在圖形輸入中加入注釋、屬性(pragma, attribute)、并可自動加到所產(chǎn)生的HDL源碼中;
支持IP調(diào)用,并可自動生成相應符號,以使IP嵌入到所設(shè)計的系統(tǒng)中。
2. 邏輯綜合工具-Exemplar
---- 邏輯綜合工具是通過映射和優(yōu)化過程,把設(shè)計功能描述轉(zhuǎn)換成與物理實現(xiàn)密切相關(guān)的工藝網(wǎng)表。在轉(zhuǎn)換過程中,不僅需要確保每一功能映射正確,還需保證盡量采用較少的硬件開銷,滿足設(shè)計的時序要求。因此,邏輯綜合工具是FPGA/EPLD Top-Down設(shè)計過程的關(guān)鍵。 Exemplar的主要特點:
完全支持VHDL/Verilog兩種國際標準;
針對不同結(jié)構(gòu)的FPGA/EPLD器件,采用不同的綜合優(yōu)化算法,以保證結(jié)果的最優(yōu)化;
支持不同類型器件的重映射,設(shè)計師可直接從一種器件的工藝網(wǎng)表映射到另一種器件的工藝網(wǎng)表,無需重新設(shè)計;
支持各廠商器件網(wǎng)表的不同格式輸入與輸出。如:XNF,EDIF等:
支持布局、布線后設(shè)計的反標注,產(chǎn)生后仿真所需功能網(wǎng)表(HDL)及延時網(wǎng)表(SDF);
持靜態(tài)時序分析;
支持綜合結(jié)果的圖形輸出,設(shè)計師可通過圖形輸出跟蹤分析關(guān)鍵路徑(Critical Path);
支持廣泛的FPGA廠商及其最新芯片型號,包括采用深亞微米技術(shù)的器件。廠商包括:Actel、Altera、Atmel、Cypress、Lattice、Lucent、Motorola、Quicklogic、Xilinx等;
FPGA/EPLD設(shè)計到ASIC設(shè)計可實現(xiàn)無縫升級,保證設(shè)計數(shù)據(jù)的兼容性及可再利用性;
即插即用,可與各種前端/后端工具結(jié)合使用,設(shè)計數(shù)據(jù)無虛人為干預/修改;
持UNIX平臺和Win95/NT平臺,不同平臺工具具有相同的用戶界面、功能、并完全保證設(shè)計數(shù)據(jù)的兼容性。
3. 功能仿真與時序驗證-ModelSim
---- 在FPGA/EPLD Top-Down設(shè)計流程中,設(shè)計仿真包含在設(shè)計過程的每一環(huán)節(jié)中,以保證設(shè)計的正確性。 ModelSim不僅可以完成設(shè)計的功能驗證(RTL級),也可實現(xiàn)邏輯綜合后的門級仿真以及布局布線后的功能和時序驗證。
---- ModelSim的主要特點:
完全支持VHDL和Verilog標準;
采用直接編輯技術(shù)(Direct-Compiled),大大提高HDL編譯和仿真速度;
唯一支持VHDL和Verilog混合描述的仿真工具;
支持RTL級和門級驗證,支持VITAL,SDF等;
具有友好的用戶界面,仿真器包括主控窗口、源碼窗口、仿真波形窗口、列表窗口、數(shù)據(jù)流窗口、設(shè)計結(jié)構(gòu)/層次窗口、過程管理窗口等;
支持單步調(diào)試,斷點設(shè)置,批命令處理方式,幫助設(shè)計師快速完成設(shè)計調(diào)試和驗證;
可與Renoir協(xié)同工作,完成狀態(tài)圖和流程圖的動畫調(diào)試;
即插即用,可與其它工具結(jié)合,完成各種流程;
支持UNIX和Window 95/NT平臺,不同平臺間具有相同的用戶界面和數(shù)據(jù)庫。
QICK