FPGA/EPLD的自上而下(Top-Down)設計方法解析
傳統的設計手段是采用原理圖輸入的方式進(jìn)行的,通過(guò)調用FPGA/EPLD廠(chǎng)商所提供的相應物理元件庫,在電路原理圖中繪制所設計的系統,然后通過(guò)網(wǎng)表轉換產(chǎn)生某一特定FPGA/EPLD廠(chǎng)商布局布線(xiàn)器所需網(wǎng)表,通過(guò)布局布線(xiàn),完成設計。原理圖繪制完成后可采用門(mén)級仿真器進(jìn)行功能驗證。
然而,工程師的最初設計思想不是一開(kāi)始就考慮采用某一FPGA/EPLD廠(chǎng)商的某一特定型號器件,而是從功能描述開(kāi)始的。設計工程師首先要考慮規劃出能完成某一具體功能、滿(mǎn)足自己產(chǎn)品系統設計要求的某一功能模塊,利用某種方式(如HDL硬件描述語(yǔ)言)把功能描述出來(lái),通過(guò)功能仿真(HDL仿真器)以驗證設計思路的正確性。當所設計功能滿(mǎn)足需要時(shí),再考慮以何種方式(即邏輯綜合過(guò)程)完成所需要的設計,并能直接使用功能定義的描述。實(shí)際上這就是自頂而下設計方法。
與傳統電原理圖輸入設計方法相比,Top-Down設計方法具體有以下優(yōu)點(diǎn):
1、完全符合設計人員的設計思路,從功能描述開(kāi)始,到物理實(shí)現的完成。
2、功能設計可完全獨立于物理實(shí)現
在采用傳統的電原理輸入方法時(shí),FPGA/EPLD器件的采用受到器件庫的制約。由于不同廠(chǎng)商FPGA/EPLD的結構完全不同,甚至同一廠(chǎng)商不同系列的產(chǎn)品也存在結構上的差別,因此,在設計一開(kāi)始,工程師的設計思路就受到最終所采用器件的約束,大大限制了設計師的思路和器件選擇的靈活性。而采用Top-Down設計方法,功能輸入采用國際標準的HDL輸入方法,HDL可不含有任何器件的物理信息,因此工程師可以有更多的空間去集中精力進(jìn)行功能描述,設計師可以在設計過(guò)程的最后階段任意選擇或更改物理器件。
3、設計可再利用
設計結果完全可以以一種知識產(chǎn)權(IP-Intellectual Property)的方式作為設計師或設計單位的設計成果,應用于不同的產(chǎn)品設計中,做到成果的再利用。
4、易于設計的更改
設計工程師可在極短的時(shí)間內修改設計,對各種FPGA/EPLD結構進(jìn)行設計結果規模(門(mén)消耗)和速度(時(shí)序)的比較,選擇最優(yōu)方案。
5、設計、處理大規模、復雜電路
目前的FPGA/EPLD器件正向高集成度、深亞微米工藝發(fā)展。為設計系統的小型化,低功耗、高可靠性等提供了集成的手段。設計低于一萬(wàn)門(mén)左右的電路,Top-Down設計方法具有很大的幫助,而設計更大規模的電路,Top-Down設計方法則是必不可少的手段。
6、設計周期縮短,生產(chǎn)率大大提高,產(chǎn)品上市時(shí)間提前,性能明顯提高,產(chǎn)品競爭力加強。據統計,采用Top-Down設計方法的生產(chǎn)率可達到傳統設計方法的2到4倍。
Top-Down設計,其核心是采用HDL語(yǔ)言進(jìn)行功能描述,由邏輯綜合(Logic Synthesis)把行為(功能)描述轉換成某一特定FPGA/EPLD的工藝網(wǎng)表,送到廠(chǎng)商的布局布線(xiàn)器完成物理實(shí)現。在設計過(guò)程的每一個(gè)環(huán)節,仿真器的功能驗證和門(mén)級仿真技術(shù)保證設計功能和時(shí)序的正確性。
Mentor Graphics公司提供一整套基于UNIX平臺和Windows 95/NT 平臺的FPGA/EPLD Top-Down設計工具:Renoir/ModelSim 和Exemplar,兩種平臺的工具具有相同的用戶(hù)界面,并保證數據庫的完全統一。目前,在FPGA/EPLD Top-Down設計方法全球市場(chǎng)上,Mentor已擁有42%的市場(chǎng)份額,遠遠領(lǐng)先于其他任何一個(gè)廠(chǎng)家。
采用Top-Down設計方法進(jìn)行FPGA/EPLD設計,其設計結果的優(yōu)劣與否取決于三個(gè)重要的因素:描述手段(即HDL語(yǔ)言)、設計方法(Style)和設計工具。描述手段是基礎,設計方法需要工程經(jīng)驗,而設計工具則是Top-Down設計的關(guān)鍵。一套完整、強大、性能卓越的設計工具,可幫助設計工工程師最大限度的發(fā)揮其設計能力。
1. 圖形化輸入工具-Renoir
----設計工程師采用Top-Down方法進(jìn)行FPGA/EPLD設計所面臨到的第一個(gè)問(wèn)題就是HDL語(yǔ)言的學(xué)習。語(yǔ)言的學(xué)習過(guò)程和應用能力直接影響設計產(chǎn)品的完成及其性能。但是設計師進(jìn)行產(chǎn)品設計的最初并不是考慮如何去寫(xiě)語(yǔ)言,而是習慣于畫(huà)出設計的框圖,并采用圖形化方法(流程圖、狀態(tài)圖、真值表等)把它描述出來(lái)。Renoir這一圖形化輸入工具,不僅可以幫助設計師完成產(chǎn)品的功能描述,更可以自動(dòng)生成HDL語(yǔ)言,為邏輯綜合提供必要的輸入數據。
---- 采用圖形化輸入方法主要優(yōu)點(diǎn)體現在:
提供框圖、流程圖、狀態(tài)圖、真值表等圖形輸入方法,使設計工程師從純文本的設計方法理解脫出來(lái),設計手段更貼近于設計師的思維過(guò)程: 便于工程師之間進(jìn)行設計的相互交流以及對前人/他人設計結果的理解與再利用; 便于初學(xué)者學(xué)習HDL語(yǔ)言;
便于設計成果的存檔,以便設計交流與再利用。
---- Renoir作為新一代的圖形化輸入工具更具有以下諸多優(yōu)點(diǎn):
自動(dòng)生成高效的HDL語(yǔ)言描述,生成結果可進(jìn)行功能驗證及邏輯綜合;
完全支持VHDL和Verilog兩種國際標準,并完全支持VHDL/Verilog的混合描述;
支持UNIX和Win95/NT兩種平臺,具有相同界面和數據庫。Win95/NT平臺采用標準的Windows界面,易學(xué)易用;
支持框圖/流程圖的動(dòng)畫(huà)(Animation)仿真、調試過(guò)程便于設計的調試;
即插即用(plug and play),與多種仿真器、綜合器及軟硬件協(xié)同驗證工具有完善的接口,組成各種設計流程;
在線(xiàn)查錯功能(On line checking),進(jìn)行語(yǔ)法和可綜合性檢查; 語(yǔ)言到圖形的轉換,可以把VHDL、Verilog或混合HDL語(yǔ)言描述換成框圖、流程圖或狀態(tài)圖,并保持原設計的層次結構;
支持OLE(Object Liking and Embedding)標準,可把Renoir中的任何圖形設計形式連接或嵌入到任一支持OLE的應用程序中,如Word、Powerpoint等,以便用戶(hù)建立設計文檔;
支持在圖形輸入中加入注釋、屬性(pragma, attribute)、并可自動(dòng)加到所產(chǎn)生的HDL源碼中; 支持IP調用,并可自動(dòng)生成相應符號,以使IP嵌入到所設計的系統中;
完善的設計管理,支持設計項目管理、設計層次管理、設計小組管理及設計數據版本管理等;
通過(guò)需求與設計可跟蹤(Requirement Tracebility)管理,不僅保證設計正確,而且保證正確設計(Design thing Right and Design Right thing)。
2. 邏輯綜合工具-Exemplar
---- 邏輯綜合工具是通過(guò)映射和優(yōu)化過(guò)程,把設計功能描述轉換成與物理實(shí)現密切相關(guān)的工藝網(wǎng)表。在轉換過(guò)程中,不僅需要確保每一功能映射正確,還需保證盡量采用較少的硬件開(kāi)銷(xiāo),滿(mǎn)足設計的時(shí)序要求。因此,邏輯綜合工具是FPGA/EPLD Top-Down設計過(guò)程的關(guān)鍵。
Exemplar的主要特點(diǎn):
完全支持VHDL/Verilog兩種國際標準;
針對不同結構的FPGA/EPLD器件,采用不同的綜合優(yōu)化算法,以保證結果的最優(yōu)化;
支持不同類(lèi)型器件的重映射,設計師可直接從一種器件的工藝網(wǎng)表映射到另一種器件的工藝網(wǎng)表,無(wú)需重新設計;
支持各廠(chǎng)商器件網(wǎng)表的不同格式輸入與輸出。如:XNF,EDIF等:
支持布局、布線(xiàn)后設計的反標注,產(chǎn)生后仿真所需功能網(wǎng)表(HDL)及延時(shí)網(wǎng)表(SDF);
持靜態(tài)時(shí)序分析;
支持綜合結果的圖形輸出,設計師可通過(guò)圖形輸出跟蹤分析關(guān)鍵路徑(Critical Path);
支持廣泛的FPGA廠(chǎng)商及其最新芯片型號,包括采用深亞微米技術(shù)的器件。廠(chǎng)商包括:Actel、Altera、Atmel、Cypress、Lattice、Lucent、Motorola、Quicklogic、Xilinx等;
FPGA/EPLD設計到ASIC設計可實(shí)現無(wú)縫升級,保證設計數據的兼容性及可再利用性;
即插即用,可與各種前端/后端工具結合使用,設計數據無(wú)虛人為干預/修改;
持UNIX平臺和Win95/NT平臺,不同平臺工具具有相同的用戶(hù)界面、功能、并完全保證設計數據的兼容性。
3. 功能仿真與時(shí)序驗證-ModelSim
---- 在FPGA/EPLD Top-Down設計流程中,設計仿真包含在設計過(guò)程的每一環(huán)節中,以保證設計的正確性。 ModelSim不僅可以完成設計的功能驗證(RTL級),也可實(shí)現邏輯綜合后的門(mén)級仿真以及布局布線(xiàn)后的功能和時(shí)序驗證。
---- ModelSim的主要特點(diǎn):
完全支持VHDL和Verilog標準;
采用直接編輯技術(shù)(Direct-Compiled),大大提高HDL編譯和仿真速度;
唯一支持VHDL和Verilog混合描述的仿真工具;
支持RTL級和門(mén)級驗證,支持VITAL,SDF等;
具有友好的用戶(hù)界面,仿真器包括主控窗口、源碼窗口、仿真波形窗口、列表窗口、數據流窗口、設計結構/層次窗口、過(guò)程管理窗口等; 支持單步調試,斷點(diǎn)設置,批命令處理方式,幫助設計師快速完成設計調試和驗證; 可與Renoir協(xié)同工作,完成狀態(tài)圖和流程圖的動(dòng)畫(huà)調試; 即插即用,可與其它工具結合,完成各種流程; 支持UNIX和Window 95/NT平臺,不同平臺間具有相同的用戶(hù)界面和數據庫。
評論