左騏
摘 要:FPGA技術(shù)在電子設(shè)計領(lǐng)域應(yīng)用廣泛,逐漸成為設(shè)計實現(xiàn)電子系統(tǒng)的主要手段。本文主要介紹了FPGA技術(shù)的特點、設(shè)計流程及其發(fā)展趨勢。
關(guān)鍵詞:現(xiàn)場可編程門陣列;FPGA;設(shè)計流程
1 引言
在數(shù)字電路設(shè)計中,F(xiàn)PGA(Field Programmable Gate Array,現(xiàn)場可編程門陣列)技術(shù)得到越來越廣泛的應(yīng)用。用戶可以通過改變配置信息對其功能進行重新定義,來滿足設(shè)計要求。FPGA具有可編程、高集成度、高速等優(yōu)點。其可編程特性帶來了電路設(shè)計的靈活性,縮短了產(chǎn)品研發(fā)周期。FPGA技術(shù)已經(jīng)成為電子工程師設(shè)計實現(xiàn)電子系統(tǒng)的主要手段。
2 FPGA簡介
FPGA是PAL(Programmable Array Logic,可編程陣列邏輯)、GAL(Generic Array Logic,通用陣列邏輯)、PLD(Programmable Logic Device,可編程邏輯器件)等可編程器件的基礎(chǔ)上發(fā)展起來的。FPGA是一種半定制專用集成電路(ASIC),它的出現(xiàn)既解決了全定制ASIC的不足,又克服了原有PLD電路數(shù)有限的缺點。
FPGA采用了邏輯單元陣列LCA(Logic Cell Array)的結(jié)構(gòu),內(nèi)部包括可配置邏輯模塊CLB(Configurable Logic Block)、輸入輸出模塊IOB(Input Output Block)和內(nèi)部連線(Interconnect)三部分。
FPGA的主要特點有:
(1)采用FPGA設(shè)計ASIC電路,用戶不需要投片生產(chǎn),就能得到合用的芯片。
(2)FPGA內(nèi)部有豐富的觸發(fā)器和I/O引腳。
(3)FPGA是ASIC電路中設(shè)計周期最短、開發(fā)費用最低、風(fēng)險最小的器件之一。
(4)FPGA采用高速CHMOS工藝,功耗低,可以與CMOS、TTL電平兼容。
(5)FPGA具有設(shè)計靈活、開發(fā)周期短、功耗低等特點。
3 設(shè)計流程
FPGA設(shè)計是指利用開發(fā)軟件和編程工具對器件進行開發(fā)的過程,它主要包括五個過程:
3.1 設(shè)計準備
在進行設(shè)計之前,首先要進行方案論證、系統(tǒng)設(shè)計和器件選擇等設(shè)計準備工作。設(shè)計者首先要根據(jù)任務(wù)要求,如系統(tǒng)所完成的功能和復(fù)雜程度,對工作速度和器件本身的資源和成本、連線的可布性等方面進行權(quán)衡,選擇合適的方案和合適的器件類型。
3.2 設(shè)計輸入
設(shè)計者將所設(shè)計的系統(tǒng)或電路以開發(fā)軟件要求的某種形式表示出來并輸入到計算機的過程稱為設(shè)計輸入。常用的有三種方式,即原理圖、硬件描述語言(HDL)、波形輸入。
3.3 設(shè)計處理
在設(shè)計處理過程中,編譯軟件將對設(shè)計輸入的文件進行邏輯化簡、綜合優(yōu)化,并且適當?shù)赜靡黄蚨嗥骷詣拥剡M行適配,最后產(chǎn)生編程用的編程文件。設(shè)計處理應(yīng)當包括以下五個過程:語法檢查和設(shè)計規(guī)則檢查、邏輯優(yōu)化和綜合、適配和分割、布局布線、生成編程數(shù)據(jù)文件。
3.4 設(shè)計驗證
設(shè)計驗證包括功能仿真和時序仿真,這兩項工作是在設(shè)計處理過程中同時進行的。功能仿真是在設(shè)計輸入完成之后,在選擇具體的器件進行編譯之前進行的邏輯功能驗證,因此又稱為前仿真,此仿真無延時信息,對于系統(tǒng)初步的功能檢測非常方便。仿真前首先要利用波形編輯器或硬件描述語言建立測試向量,仿真結(jié)果以報告或波形的形式輸出,從中可以看出各個節(jié)點的結(jié)果,如果有錯誤,則返回設(shè)計輸入中修改邏輯設(shè)計。時序仿真是在選擇了具體器件并完成布局布線之后進行的時序關(guān)系仿真,因此也稱為后仿真,由于不同的器件內(nèi)部的延時不一樣,不同的布局、布線方案也能引起不同的延時,因此在設(shè)計處理以后,對系統(tǒng)和各模塊進行時序仿真、分析其時序關(guān)系,估計設(shè)計的性能以及檢查和消除競爭冒險是非常有必要的。
3.5 器件編程
編程是將編程數(shù)據(jù)寫到可編程器件中去。器件編程要滿足一定的條件,如編程電壓、編程時序和算法等。器件編程完畢之后,可以用編譯時產(chǎn)生的文件進行檢驗、加密等工作。
4 FPGA發(fā)展趨勢
4.1基于FPGA的嵌入式系統(tǒng)(SOPC System-on-a-Programmable-Chip )技術(shù)正在成熟
System on Chip(SOC)技術(shù)在芯片設(shè)計領(lǐng)域被越來越廣泛地采用,而SOPC技術(shù)是SOC技術(shù)在可編程器件領(lǐng)域的應(yīng)用。這種技術(shù)的核心是在FPGA芯片內(nèi)部構(gòu)建處理器。Altera公司為NIOSII軟核處理器提供了完整的軟硬件解決方案,可以讓客戶短時間完成SOPC系統(tǒng)的構(gòu)建和調(diào)試工作。
4.2 FPGA芯片向高性能、高密度、低壓和低功耗的方向發(fā)展
在高性能計算和高吞吐量I/O應(yīng)用方面,F(xiàn)PGA已經(jīng)取代了專用的DSP芯片,成為最佳的實現(xiàn)方案。因此,高性能和高密度也成為衡量FPGA芯片廠家設(shè)計能力的重要指標。
隨著FPGA性能和密度的提高,功耗也逐漸成為了FPGA應(yīng)用的瓶頸。雖然FPGA比DSP等處理器的功耗低,但是要明顯高于專用芯片(ASIC)的功耗。FPGA的廠家也在采用各種新工藝和技術(shù)來降低FPGA的功耗,并且已經(jīng)取得了明顯的效果。
4.3基于IP庫的設(shè)計方法
未來的FPGA芯片密度不斷提高,傳統(tǒng)的基于HDL的代碼設(shè)計方法很難滿足超大規(guī)模FPGA的設(shè)計需要。隨著專業(yè)的IP庫設(shè)計公司不斷增多,商業(yè)化的IP庫種類會越來越全面,支持的FPGA器件也會越來廣泛。
作為FPGA的設(shè)計者,主要的工作是找到適合項目需要的IP庫資源,然后將這些IP整合起來,完成頂層模塊設(shè)計。隨著FPGA密度不斷提高和IP庫的價格逐漸趨于合理化,這種設(shè)計方法將會成為主流的FPGA設(shè)計技術(shù)。
5 結(jié)束語
隨著半導(dǎo)體制造工藝水平的不斷提高,F(xiàn)PGA在集成度提高同時,制造成本將大幅下降。憑借其高性能、開發(fā)周期短等優(yōu)勢,F(xiàn)PGA技術(shù)將在電子系統(tǒng)設(shè)計領(lǐng)域扮演越來越重要的角色。
參考文獻:
[1]劉麗華,辛德祿,李本俊.專用集成電路設(shè)計方法,北京:北京郵電大學(xué)出版社,2000.
[2]褚振勇,翁木云.FPGA設(shè)計及應(yīng)用,西安:西安電子科技大學(xué)出版社,2002.
(作者單位:西安電子工程研究所)