版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、1.3 FPGA的設計流程1.3.1 可編程邏輯器件的一般設計流程n可編程邏輯器件的設計過程是利用EDA開發(fā)軟件和編程工具對器件進行開發(fā)的過程。可編程邏輯器件的一般設計流程如圖1.3.1所示,包括設計準備,設計輸入,功能仿真,設計處理,時序仿真和器件編程及測試等七個步驟。圖1.3.1可編程邏輯器件的一般設計流程1設計準備設計準備n在系統(tǒng)設計之前,首先要進行的是方案論證,系統(tǒng)設計和器件選擇等準備工作。設計人員需要根據(jù)任務要求,如系統(tǒng)的功能和復雜度,對工作速度和器件本身的資源、成本及連線的可布性等方面進行權衡,選擇合適的設計方案和合適的器件類型。一般采用自頂向下的設計方法。2設計輸入設計輸入n設計
2、輸入是設計人員將所設計的系統(tǒng)或電路以開發(fā)軟件要求的某種形式表示出來,并送入計算機的過程。設計輸入通常有以下幾種形式: (1)原理圖輸入方式(2)HDL(硬件描述語言)輸入方式(3)波形輸入方式(1)原理圖輸入方式n原理圖輸入方式是一種最直接的設計描述方式,要設計什么,就從軟件系統(tǒng)提供的元件庫中調(diào)出來,畫出原理圖。這種方式要求設計人員有豐富的電路知識及對PLD的結(jié)構比較熟悉。其主要優(yōu)點是容易實現(xiàn)仿真,便于信號的觀察和電路的調(diào)整;缺點是效率低,特別是產(chǎn)品有所改動,需要選用另外一個公司的PLD器件時,就需要重新輸入原理圖,而采用硬件描述語言輸入方式就不存在這個問題。 (2)HDL(硬件描述語言)輸入
3、方式n硬件描述語言是用文本方式描述設計,它分為普通硬件描述語言和行為描述語言。普通硬件描述語言有ABEL、CUR和LFM等,它們支持邏輯方程。真值表、狀態(tài)機等邏輯表達方式,主要用于簡單PLD的設計輸入。行為描述語言是目前常用的高層硬件描述語言,主要有VHDL和 Verilog HDL兩個IEEE標準。其突出優(yōu)點有:語言與工藝的無關性,可以使設計人員在系統(tǒng)設計、邏輯驗證階段便確立方案的可行性;語言的公開可利用性,便于實現(xiàn)大規(guī)模系統(tǒng)的設計;具有很強的邏輯描述和仿真功能,而且輸入效率高,在不同的設計輸入庫之間的轉(zhuǎn)換非常方便,用不著對底層的電路和PLD結(jié)構的熟悉。 (3)波形輸入方式n波形輸入方式主要
4、是用來建立和編輯波形設計文件,以及輸入仿真向量和功能測試向量。波形設計輸入適用于時序邏輯和有重復性的邏輯函數(shù)。系統(tǒng)軟件可以根據(jù)用戶定義的輸入輸出波形自動生成邏輯關系。波形編輯功能還允許設計人員對波形進行拷貝、剪切、粘貼、重復與伸展,從而可以用內(nèi)部節(jié)點、觸發(fā)器和狀態(tài)機建立設計文件,并將波形進行組合,顯示各種進制的狀態(tài)值,也可以將一組波形重疊到另一組波形上,對兩組仿真結(jié)果進行比較。 3功能仿真功能仿真n功能仿真在編譯之前對用戶所設計的電路進行邏輯功能驗證,此時的仿真沒有延時信息,僅對初步的功能進行檢測。仿真前,要先利用波形編輯器和硬件描述語言等建立波形文件和測試向量(即將所關心的輸入信號組合成序列
5、),仿真結(jié)果將會生成報告文件和輸出信號波形,從中便可以觀察到各個節(jié)點的信號變化。如果發(fā)現(xiàn)錯誤,則返回設計輸入中修改邏輯設計。4設計處理設計處理n 設計處理是器件設計中的核心環(huán)節(jié)。在設計處理過程中,編譯軟件將對設計輸入文件進行邏輯化簡、綜合優(yōu)化和適配,最后產(chǎn)生編程用的編程文件。 (1)語法檢查和設計規(guī)則檢查n設計輸入完成后,首先進行語法檢查,如原理圖中有無漏連信號線,信號有無雙重來源,文本輸入文件中關鍵字有無輸錯等各種語法錯誤,并及時列出錯誤信息報告供設計人員修改,然后進行設計規(guī)則檢驗,檢查總的設計有無超出器件資源或規(guī)定的限制,并將編譯報告列出,指明違反規(guī)則情況以供設計人員糾正。(2)邏輯優(yōu)化和
6、綜合n化簡所有的邏輯方程或用戶自建的宏,使設計所占用的資源最少。綜合的目的是將多個模塊化設計文件合并為一個網(wǎng)表文件,并使層次設計平面化。 (3)適配和分割n確立優(yōu)化以后的邏輯能否與器件中的宏單元和I/O用單元適配,然后將設計分割為多個便于識別的邏輯小塊形式映射到器件相應的宏單元中。如果整個設計較大,不能裝入一片器件時,可以將整個設計劃分(分割)成多塊,并裝入同一系列的多片器件中去。分割可全自動、部分或全部用戶控制,目的是使器件數(shù)目最少,器件之間通信的引腳數(shù)目最少。 (4)布局和布線n 布局和布線工作是在上面的設計工作完成后由軟件自動完成的,它以最優(yōu)的方式對邏輯元件布局,并準確地實現(xiàn)元件間的互連
7、。布線以后軟件自動生成報告,提供有關設計中各部分資源的使用情況等信息。 5時序仿真時序仿真n 時序仿真又稱后仿真或延時仿真。由于不同器件的內(nèi)部延時不一樣,不同的布局布線方案也給延時造成不同的影響,因此在設計處理以后,對系統(tǒng)和各模塊進行時序仿真,分析其時序關系,估計設計的性能,以及檢查和消除競爭冒險等是非常有必要的。實際上這也是與實際器件工作情況基本相同的仿真。6器件編程測試器件編程測試n時序仿真完成后,軟件就可產(chǎn)生供器件編程使用的數(shù)據(jù)文件。對EPLDCPLD來說,是產(chǎn)生熔絲圖文件,即 JED文件。對于FPGA來說,是產(chǎn)生位流數(shù)據(jù)文件(Bitstream Generation),然后將編程數(shù)據(jù)放
8、到對應的具體可編程器件中去。 n器件編程需要滿足一定的條件,如編程電壓、編程時序和編程算法等。普通的EPLDCPLD器件和一次性編程的FPGA需要專用的編程器完成器件的編程工作?;赟RAM的FPGA可以由EPROM或其它存儲體進行配置。在線可編程的PLD器件不需要專門的編程器,只要一根編程下載電纜就可以了。n器件在編程完畢后,可以用編譯時產(chǎn)生的文件對器件進行校驗、加密等工作。對于支持JTAG技術,具有邊界掃描測試BST(Bandary-Scan Testing)能力和在線編程能力的器件來說,測試起來就更加方便。 1.3.2 基于MAX十plus的設計流程 nMAXplus是Altera提供的
9、FPGACPLD開發(fā)集成環(huán)境。在MAXplus上可以完成FPGA的整個設計流程,它提供了一種與結(jié)構無關的設計環(huán)境,使設計者能方便地進行設計輸入、快速處理和器件編程。 n 基于MAXplus軟件的設計流程如圖1.3.2所示,分為4個步驟,包括設計輸入編輯、編譯網(wǎng)表提取、數(shù)據(jù)庫建立、邏輯綜合、邏輯分割、適配、延時網(wǎng)表提取、編程文件匯編(裝配)以及編程下載等過程。n圖1.3.2 基于MAX十plus的設計流程 設計輸入(圖形編輯器,文本編輯器,符號編輯器,波形編輯器)項目處理(網(wǎng)表提取器,數(shù)據(jù)庫,邏輯綜合器,適配器)項目校驗(仿真器,時間分析器)器件編程(編程器)1. 設計輸入設計輸入nMAXplu
10、s軟件的設計文件可以來自 MAXplus設計輸入工具或各種工業(yè)標準的EDA設計輸入工具。MAXplus強大的集成功能允許信息在各種應用程序間自由交流,設計者可在一個工程內(nèi)直接從某個設計文件轉(zhuǎn)換到其他任何設計文件,而不必理會設計文件是圖形格式、文本格式,還是波形格式。nMAXplus具有原理圖輸入與符號編輯、硬件描述語言輸入、波形設計輸入、平面圖編輯、層次設計輸入多種設計輸入方法。2. 項目處理項目處理nMAXplus處理一個設計時,軟件編譯器讀取設計文件信息,產(chǎn)生用于器件編程、仿真、定時分析的輸出文件。消息處理器可自動定位編譯過程中發(fā)現(xiàn)的錯誤,編譯器還可優(yōu)化設計文件。項目處理基本步驟n項目處理
11、包括以下基本步驟:n 消息處理器自動定位錯誤;n 邏輯綜合與試配。n 定時驅(qū)動編譯。n 設計規(guī)則檢查。n 多器件劃分。n 產(chǎn)生用于仿真的工業(yè)標準格式。n 生成編程文件。 3. 項目校驗項目校驗nMAXplus提供的設計校驗功能包括設計仿真與定時分析,用于測試設計的邏輯操作和內(nèi)部時序。其中設計仿真又分為功能仿真、時序仿真和多器件仿真。4. 器件編程器件編程nMAXplus編程器使用編譯器生成的編程文件對 Altera器件進行下載編程,它可用來進行器件編程、校驗、檢查、探測空白及功能測試。1.3.3 基于Quartus的設計流程nQuartus 是Altera 繼MAXplus之后提供的FPGAC
12、PLD開發(fā)集成環(huán)境。目前,Altera公司最新的 Quartus設計軟件是 3.0版,該版本設計軟件包括了許多新的功能,將設計性能改善了15,編譯時間縮短了50。nQuartus 3.0版設計軟件除了支持 Altera的 APEX 20KE、APEX 20KC、APEX 、nARM的Excalibur嵌入處理器方案、Mercury、Stratix、FLEX10KE和ACEXIK之外,還支持MAX3000A、MAX7000系列乘積項器件。 n基于Quartus的設計流程如圖1.3.3所示。圖1.3.3 基于Quartus的設計流程1. 設計輸入設計輸入nQuartus 支持多種設計輸入方法。Qu
13、artus本身具有的編輯器支持原理圖式圖形設計輸入,文本編輯輸入(如AHDL、VHDL、Verilog)和內(nèi)存編輯輸入(如Hex、Mif)。第三方EDA工具編輯的標準格式文件,如 EDIF、HDL、VQM。也可以采用一些別的方法優(yōu)化和提高輸入的靈活性,如混合設計格式,利用LPM和宏功能模塊來加速設計輸入。 2. 設計項目的編譯設計項目的編譯nQuartus 編譯器的功能包括設計錯誤檢查、邏輯綜合、Altera適配器件以及為仿真、定時分析和器件編程產(chǎn)生輸出文件。編譯器首先提取項目設計文件之間的層次連接信息并檢查基本的設計輸入錯誤,然后結(jié)合所有的設計文件生成能被高效處理的數(shù)據(jù)庫。設計人員能指示編譯
14、器應用許多技術,如定時驅(qū)動編譯,增加設計速度及優(yōu)化器件資源的利用率。在編譯過程中和編譯后,用戶都能在編譯結(jié)果報告窗口看到結(jié)果。編譯器生成的編程文件可用 Quartus編程器或其它工業(yè)標準編程器對Altera器件進行編程或配置。 (1)編譯設置nQuartus軟件允許編譯一個完整的設計或者設計的任何組成部分。對一個新建項目軟件創(chuàng)建缺省的編譯設置,用戶可以通過指定編譯設置選項來創(chuàng)建用戶的編譯設置,以后可以直接調(diào)用該編譯設置。Quartus軟件的編譯設置指南可以輕松地幫助用戶完成編譯設置。(2)資源分配n設計人員可以將自己設計中的部分邏輯分配到器件資源的特定位置,如可將模塊設計文件(bdf)中的某一
15、模塊的邏輯分配到器件特定的 MegaLAB行中,MegaLAB是 APEX器件的大規(guī)模結(jié)構。(3) 編譯設計n點擊快捷鍵或在Processing下拉菜單中選擇Start Compilation或 Start analysisElaboration開始完全或部分編譯。在狀態(tài)欄中將顯示編譯進度的百分比和每階段所花費時間,編譯的結(jié)果在編譯報告欄中自動更新,編譯完后的結(jié)果將顯示。如果編譯后有錯誤和警告信息,就要對設計原文件進行修改,再重新編譯直到無錯誤和警告信息為止。n 編譯完后將產(chǎn)生一個編譯報告欄,它包含了怎樣將一個設計放到一個器件中的所有信息,如器件使用統(tǒng)計、編譯設置、底層顯示、器件資源利用率,狀
16、態(tài)機的實現(xiàn)、方程式、延時分析結(jié)果和 CPU使用資源等。 (4)查看適配結(jié)果 n 在編譯成功后,就可在最后編譯平面圖中查看結(jié)果。平面圖顯示了編譯器是怎樣將邏輯設計分配到 Altera器件中去的。沒用的單元為白色,使用過的單元為彩色并互相連接。在編譯平面圖中點擊邏輯單元,還可查看該邏輯單元的路由連接關系(5) 分配邏輯到ESBn設計人員可以使用映射選項技術,強制Quartus軟件將自己的邏輯設計在特殊的器件資源中實現(xiàn),如 ESB(Embedded System Block)。 ESB是存在于 APEX、Mercury和基于ARMMIPS的 Excalibur系列器件中的一種結(jié)構,能實現(xiàn)存儲器(RA
17、M,ROM,F(xiàn)IFO或CAM)或組合邏輯。在進行新的資源分配前,設計人員可以回注在上次編譯過程中編譯器所作的任何分配,以確保后面的編譯具有相同的適配。3. 延時分析和仿真延時分析和仿真n1)延時分析n Quartus支持對單個時鐘或多個時鐘的延時分析:單個時鐘的延時分析包括Fmax(最大時鐘頻率及最差情況下的寄存器到寄存器的延時)、 Tsu(建立時間)、 Th(保持時間)、 Too(時鐘到輸出時間)、Tm(各個引腳之間的延時)及整個系統(tǒng)的 Fmax(包括引腳上的輸入輸出延時)。1)延時分析nQuartus支持用戶對多個時鐘的延時分析,可以分析由不同時鐘控制的寄存器之間的延時,可以運用Slack
18、進行分析。n Quartus自動檢測組合邏輯電路。不同類型的延時信息(請參考編譯部分),包括沒有布局布線的延時信息,經(jīng)過布局布線的延時信息及混合的樹狀層次型設計。在缺省情況下,在編譯之后一般自動調(diào)用延時分析,也可以禁止調(diào)用。n Quartus生成的延時信息也可以以VHDL,Verilog或標準延時文件(SD)的格式輸出到第三方的EDA工具中。所有的延時分析信息都包含在編譯報告中。(2)仿真nQuartus支持多種仿真方法。n 波形方式輸入:.vwf(向量波形文件)是 Quartus中最主要的波形文件;.vec(向量文件)是 MAXPLUS中的文件,主要是為了向下兼容;.tbl(列表文件)用來將
19、MAXPLUS中的 .scf文件輸入到 Quartus 中。n支持 Testbench:Tcl/TK腳本文件;VerilogVHDL Testbench。n第三方的仿真工具:其中 Quartus支持的第三方 EDA仿真工具有:Model Technology(Modelsim);Cadence(VERILOGXL);Synopsys(VCS);Synopsys(VSS)。4. 器件編程器件編程nQuartus編程器可以配置 Altera公司的 APEX、FLEX6000、Mercury及基于 ARMMIPS的Excalibur系列器件,并能校驗、測試和在配置前對空器件進行檢查。該編程器和編程硬
20、件(ByteBlasterMV與MasterBlaster通信電纜)很容易地在幾分鐘內(nèi)就可以編程或配置一個工作芯片。配置模式包括被動串行配置和JTAG等模式。1.3.4 基于ISE的設計流程nISE系列軟件是Xilinx公司推出的集成EDA開發(fā)工具,它支持Xilinx公司的所有CPLDFPGA產(chǎn)品。目前,ISE系列軟件的最高版本是5.x,包括ISE Foundation、ISE Alliance、ISE WebPACK和 ISE BaseX四種類型。不同版本類型的 ISE軟件在性能上略有區(qū)別。n基于ISE的設計流程如圖1.3.4所示,主要包括設計輸入、功能仿真、綜合、實現(xiàn)、時序仿真和下載配置等
21、幾個步驟。 圖1.3.4 基于ISE的設計流程1. 設計輸入設計輸入nISE系列軟件采用基于工程的分層次管理,支持硬件描述語言、原理圖和狀態(tài)圖的混合設計輸入方式。硬件描述語言設計、原理圖設計和狀態(tài)圖設計具有不同的特點,適用于不同的場合,設計輸入方式特性比照表如表1.3.1所示。 表1.3.1 設計輸入方式特性比照表2. 綜合綜合n在ISE系列軟件中,Xilinx公司推出了自己的綜合工具XST,并支持第三方綜合工具,如Synplify、FPGA Express等。在FPGA設計過程中,設計的綜合效果主要取決于設計者的設計風格和綜合工具的綜合能力。 3. 功能仿真功能仿真n 在FPGA設計過程中,
22、功能仿真是最基本的仿真驗證,它主要針對實現(xiàn)前的設計文件。功能仿真的主要目的是驗證設計文件的邏輯功能是否正確,是否滿足設計要求。在功能仿真過程中,ISE系列軟件支持波形仿真激勵和硬件描述語言仿真激勵。 4. 實現(xiàn)實現(xiàn)n在ISE系列軟件中, FPGA設計的實現(xiàn)主要包括:n轉(zhuǎn)換(Translate)、n映射(Map)、n布局布線(PlaceRoute)n時間參數(shù)提取(Timing)(1)轉(zhuǎn)換(Translate)n在轉(zhuǎn)換過程中,多個設計文件和約束文件將被合并為一個NGD文件,并同時輸出BLD文件。其中,NGD文件包含當前設計的全部邏輯描述,BLD文件是轉(zhuǎn)換的運行報告。轉(zhuǎn)換可以接受的設計文件包括EDN、EDF、EDIF和SEDIF文件,轉(zhuǎn)換的約束文件包括UCF、NCF、NMC和N GC文件。(2)映射(Map)n 在映射過程中,當前設計的NGD文件將被映射為目標器件的特定物理單元(如C LB、IOB),并保存在NCD文件中。映射的輸入文件包括NGD、NMC、NCD(可選)和MFP(可選)文件,輸出文件包括NCD、PCF、NGM和MRP文件。其中,MFP文件是通過Floorplanner生成的布局約束文件,NCD文件包含當前設計的物理映射信息,PCF文件包含當前設計的物理約束信息,NGM文件與當前設計的靜態(tài)時序分
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年春七年級語文下冊 第三單元 12 賣油翁說課稿 新人教版
- 12古詩三首《己亥雜詩》說課稿-2024-2025學年語文五年級上冊統(tǒng)編版
- 15 分享真快樂(說課稿)2023-2024學年統(tǒng)編版道德與法治 一年級下冊001
- 2025裝修工程泥工承包合同
- 7讓弦發(fā)出高低不同的聲音 說課稿-2024-2025學年科學四年級上冊教科版
- 2024-2025學年高中歷史 專題四 王安石變法 一 積貧積弱的北宋教學說課稿 人民版選修1
- 14 請幫我一下吧 第一課時 說課稿-2023-2024學年道德與法治一年級下冊統(tǒng)編版
- 6我們神圣的國土 第1課時(說課稿)-部編版道德與法治五年級上冊
- 2023八年級英語下冊 Module 1 Feelings and impressions Unit 2 I feel nervous when I speak Chinese第三課時說課稿 (新版)外研版
- 2024-2025學年新教材高中語文 第二單元 6.2 文氏外孫入村收麥說課稿(3)部編版必修上冊
- 科技論文圖表等規(guī)范表達
- 高考寫作指導議論文標準語段寫作課件32張
- 2021年普通高等學校招生全國英語統(tǒng)一考試模擬演練八省聯(lián)考解析
- 華能火力發(fā)電機組節(jié)能降耗技術導則(2023年版)
- 基礎知識3500個常用漢字附拼音
- 企業(yè)易制毒化學品管理培訓
- JJF(紡織)072-2018紡織滾筒式烘干機校準規(guī)范
- 北京故宮作文600字
- 羊水栓塞的應急預案演練腳本
- 物業(yè)保潔及餐飲服務項目方案
- (新版教材)粵教粵科版六年級下冊科學全冊課時練(同步練習)
評論
0/150
提交評論