新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計應用 > 現(xiàn)場可編程門陣列(FPGA)設(shè)計

現(xiàn)場可編程門陣列(FPGA)設(shè)計

作者: 時間:2011-05-27 來源:網(wǎng)絡(luò) 收藏

隨著器件規(guī)模、功能以及可靠性的不斷提高,在現(xiàn)代數(shù)字系統(tǒng)中的應用日漸廣泛。采用設(shè)計數(shù)字電路已經(jīng)成為數(shù)字電路系統(tǒng)領(lǐng)域的主要設(shè)計方式之一。

本文引用地址:http://www.butianyuan.cn/article/191194.htm

設(shè)計是指使用相應的EDA開發(fā)軟件對FPGA器件進行開發(fā)的過程。最早的設(shè)計方法是自底向上的,即首先確定庫中可用的元件,再使用這些元件進行模塊的設(shè)計,完成各模塊后進行連接,從而形成整個系統(tǒng)。最后經(jīng)過調(diào)試和測量來考察系統(tǒng)是否達到所需的性能指標。

隨著技術(shù)和需求的發(fā)展,自底向上的方法已經(jīng)不能適應復雜數(shù)字系統(tǒng)的設(shè)計。目前廣泛使用的是自頂向下的設(shè)計方法和流程:首先從系統(tǒng)設(shè)計入手,在頂層進行功能劃分和結(jié)構(gòu)設(shè)計,并用硬件描述語言對高層次的系統(tǒng)行為進行描述,在系統(tǒng)級采用仿真手段驗證設(shè)計的正確性,之后再逐級設(shè)計下一層的結(jié)構(gòu),用綜合優(yōu)化工具生成具體門電路的網(wǎng)表。這種逐級進行設(shè)計和驗證的方法可以及早發(fā)現(xiàn)問題并修改系統(tǒng)設(shè)計,縮短開發(fā)周期、節(jié)約成本。

FPGA設(shè)計流程
FPGA設(shè)計的一般流程如圖1所示,包括設(shè)計準備、設(shè)計輸入、功能仿真、設(shè)計處理、時序仿真、器件編程與測試幾個步驟。

設(shè)計準備

在數(shù)字系統(tǒng)設(shè)計之前,首先要進行方案論證、系統(tǒng)設(shè)計、器件選擇等準備工作。設(shè)計人員根據(jù)任務的功能和性能指標需求,對器件的資源、成本以及功耗等方面進行折衷,選擇合適的設(shè)計方案和FPGA器件。

設(shè)計描述與輸入

設(shè)計輸入就是指設(shè)計人員將所設(shè)計的系統(tǒng)或電路以開發(fā)軟件要求的某種形式表示出來,并輸入計算機的過程。設(shè)計描述和設(shè)計輸入通常使用圖形和硬件描述語言兩種形式。

圖形輸入方式

圖形方式的設(shè)計輸入主要是使用EDA軟件進行原理圖、狀態(tài)圖、波形圖等圖形的編輯和修改。

原理圖輸入方式是一種最直接的設(shè)計描述方式,使用元件庫中的元件畫出系統(tǒng)或電路的原理圖,符合人們的思維習慣。這種設(shè)計輸入方式要求設(shè)計人員具有豐富的硬件知識、熟悉FPGA器件的結(jié)構(gòu)。主要優(yōu)點是系統(tǒng)結(jié)構(gòu)清晰直觀、便于信號的觀察和電路的調(diào)整;缺點是設(shè)計效率低,產(chǎn)品升級、FPGA器件更換、EDA軟件更換時需要重新輸入原理圖,而硬件描述語言輸入方式就沒有這方面的問題。

狀態(tài)圖主要用來通過圖形方式設(shè)計有限狀態(tài)機。圖形化的有限狀態(tài)機設(shè)計具有簡單、直觀、快捷等特點。波形輸入方式主要是用來建立和編輯波形設(shè)計文件,以及輸入仿真向量和功能測試向量。

硬件描述語言輸入方式

硬件描述語言輸入方式使用文本進行設(shè)計描述,包括普通硬件描述語言和行為級硬件描述語言。比較有代表性的普通硬件描述語言是ABEL,它支持邏輯方程、真值表、狀態(tài)機等邏輯表達方式,主要用于簡單可編程邏輯器件的設(shè)計輸入。

行為級硬件描述語言是目前常用的高層硬件描述語言,主要有VHDL和Verilog HDL兩個IEEE標準。其突出優(yōu)點有:邏輯設(shè)計與具體工藝無關(guān),使設(shè)計人員在系統(tǒng)設(shè)計、邏輯驗證階段確定方案的可行性;行為級描述,便于設(shè)計大規(guī)模、復雜的數(shù)字系統(tǒng);具有很強的邏輯描述和仿真功能,輸入效率高;在不同的FPGA器件和EDA軟件之間的轉(zhuǎn)換比較方便;不必對底層的電路和FPGA器件結(jié)構(gòu)非常熟悉。

功能仿真

功能仿真也稱為前仿真或行為仿真。用戶所設(shè)計的電路在綜合之前應該首先進行邏輯功能的驗證,這種仿真沒有器件內(nèi)部邏輯單元和連線的實際延時信息,只是初步驗證系統(tǒng)的邏輯功能。

為了能夠完成功能仿真,需要先使用波形編輯器或硬件描述語言,來建立仿真時需要的波形文件和測試向量(盡可能包含所有可能影響設(shè)計功能的輸入信號的組合)。仿真結(jié)果將以波形圖的方式直觀顯示在計算機屏幕上,并生成報告。從中設(shè)計者可以觀察到各個信號的變化,以判斷電路是否實現(xiàn)了預期的功能。如果發(fā)現(xiàn)錯誤,則應該返回設(shè)計輸入階段進行邏輯設(shè)計的修改。


上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉