FPGA構建高性能DSP
在數(shù)據(jù)通信和圖像處理這樣的應用中,需要強大的處理能力。當最快的數(shù)字信號處理器(DSP)仍無法達到速度要求時,唯一的選擇是增加處理器的數(shù)目,或采用客戶定制的門陣列產(chǎn)品?,F(xiàn)在,設計人員有了新的選擇,可采用現(xiàn)場可編程門陣列(FPGA)來快速經(jīng)濟地完成設計。采用現(xiàn)場可編程器件不僅縮短了產(chǎn)品上市時間,還可滿足現(xiàn)在和下一代便攜式設計所需要的成本、性能、尺寸等方面的要求,并提供系統(tǒng)級支持。
本文引用地址:http://www.ex-cimer.com/article/2930.htm幸運的是,需要高性能DSP功能的便攜式設備設計者還有其它選擇。最近FPGA開始達到了應用所要求的成本競爭力。優(yōu)選的FPGA方案可用來處理計算量繁重的高端DSP算法,同時還可為設計提供可編程邏輯解決方案所固有的靈活性特點,以及定制門陣列(如ASIC)解決方案所具有的高性能及集成度。
增強DSP處理能力的傳統(tǒng)方法是采用多個處理器。選擇此類方案的缺點是成本昂貴,需要眾多附加部件,并且功耗很大。此外,開發(fā)和調試多處理器軟件通常會大大延遲產(chǎn)品上市時間。
定制門陣列或標準單元方案可以提供所需的強大DSP處理能力,然而,這種方案是以損失靈活性為代價的,并需要相當?shù)墓こ袒顿Y。由于他們不可重新編程,固定邏輯器件在發(fā)生錯誤時很難補救,也不容易對解決方案進行優(yōu)化。因此,定制方案的成本、風險以及所需要的開發(fā)時間,對許多應用來說都是無法接受的。
FPGA與傳統(tǒng)邏輯電路和門陣列具有不同的結構,FPGA利用小型查找表(16×1 RAM)來實現(xiàn)組合邏輯。每個查找表連接到一個D觸發(fā)器的輸入器,觸發(fā)器再來驅動其它邏輯,或驅動I/O。這些模塊間利用金屬連線互相連接或連接到I/O模塊。FPGA的邏輯是通過向內部靜態(tài)存儲器單元加載配置數(shù)據(jù)來實現(xiàn)的。存儲在存儲器單元中的值決定了邏輯單元的邏輯功能以及模塊間或與I/O間的連接,并最終決定了FPGA實現(xiàn)的功能。FPGA的這種結構允許無限次的重新編程。
FPGA還具有可擴展的優(yōu)點,FPGA本身復雜性的提高遠遠超過最終產(chǎn)品要求的復雜性。最新的FPGA產(chǎn)品,例如Xilinx的Virtex-E系列,提供的系統(tǒng)門密度從58000門到最高320萬門不等。最新器件的速度也大大提高。例如,1.8V Virtex-E器件比前一代產(chǎn)品快了30%,采用源同步數(shù)據(jù)傳輸結構,其I/O性能可達到622Mbps。
任何涉足便攜式產(chǎn)品設計的人,特別是通信領域的設計人員,都明白及時推出產(chǎn)品是產(chǎn)品設計首先要遵守的原則之一。所以能夠提供所需要的性能、達到成本要求并可以加快上市時間的器件具有重要的優(yōu)勢。
與專用集成電路(ASIC)相比,FPGA可使產(chǎn)品上市時間更快,并具有更小的風險。FPGA庫中的DSP核心不斷增加,許多現(xiàn)在就可使用。結果,設計人員可以利用比定制門陣列方案或多處理器解決方案所需要的時間短得多的時間就完成一項DSP設計。
加快FPGA實現(xiàn)和編程的一個方法是采用知識產(chǎn)權(IP)的模塊或核心。例如,大多數(shù)標準DSP功能都在Xilinx庫中以可參數(shù)配置的DSP核心的形式實現(xiàn)了,它們通過Xilinx公司的CORE生成器提供。包括乘法器、平方根電路、有限脈沖響應(FIR)濾波器、梳狀濾波器、積分器、正弦/余弦表以及離散傅里葉變換(DFT)、快速傅里葉變換(FFT)和離散余弦變換(DCT)等都已包括在內。
IP核心的使用也促進了設計再利用,這在生產(chǎn)周期中可節(jié)約大量的時間。FPGA和ASIC制造商正密切協(xié)作,使設計再利用變得更為容易。例如,Xilinx公司的IP互聯(lián)網(wǎng)收集和封裝工具使客戶可以將他們?yōu)?/font>FPGA創(chuàng)建的IP設計收集并封裝起來,并在公司內部或通過互聯(lián)網(wǎng)與其它設計小組共享。這樣的工具為設計人員提供了一個對可綜合的VHDL或Verilog代碼,或固定功能網(wǎng)表等進行明確、收集和封裝并建立相關文檔的自動化的方法。新的模塊一旦封裝好并公布出來,其它工程師就可以利用標準的互聯(lián)網(wǎng)瀏覽器下載這些IP,并安裝到他們的Xilinx CORE生成器系統(tǒng)中去。
雖然成本曾是阻礙在大批量生產(chǎn)的產(chǎn)品中選擇FPGA的重要因素,但現(xiàn)在卻不成問題了。實際上,當今的FPGA產(chǎn)品單位貨幣(每個美元)所買到的MAC(乘法/累加運算)數(shù)比傳統(tǒng)的DSP處理器還要高。正如任何器件一樣,FPGA制造商也在持續(xù)尋求降低成本的方法。例如,除了高密度的Virtex系列以外,Xilinx最近還推出了低成本的Spartan-II系列FPGA產(chǎn)品,直接向固定門陣列產(chǎn)品挑戰(zhàn),對從年產(chǎn)5萬至百萬件的大批量生產(chǎn)都非常理想。例如,10萬門的Spartan-II FPGA器件售價不到10美元(在與門陣列產(chǎn)品相當?shù)呐繒r)。
與傳統(tǒng)數(shù)據(jù)處理方法不同,DSP采用了高度流水線化的并行操作。而FPGA結構則可以做得更好,達到更高的性能。FPGA具有成千上萬的查找表和觸發(fā)器,因此FPGA平臺可以更低的成本達到比通用DSP更快的速度。例如,目前的兩百萬門FPGA可達到每秒1280億MAC的性能,比目前最快的DSP性能還要高一個量級。
對多DSP處理器解決方案,需要較大的功率才能驅動連接多個處理器的板級連接(具有較大的容抗)。與此相對比,F(xiàn)PGA可創(chuàng)建具有定制數(shù)據(jù)通道的處理器,數(shù)據(jù)以最小的負載從一個并行操作傳送到下一個操作,并且沒有取指令的額外開銷。這種結構使得在較低的時鐘頻率下可達到較高的性能。而功耗直接正比于電路的頻率,因此運行于較低時鐘頻率下并行處理的FPGA方案可大大減小功耗。
雖然FPGA的“可編程”特性帶來明顯的靈活性優(yōu)勢,但也需要設計編程技巧。FPGA制造商不斷改進這一流程,開發(fā)專門的軟件,與第三方軟件供應商建立伙伴關系,從而簡化編程過程,并提供最大的靈活性。
FPGA核心與系統(tǒng)級模型工具的集成為設計人員提供了創(chuàng)建低功耗、高性能便攜式DSP應用的簡明方法。實際上,目前的便攜式系統(tǒng)設計人員可以采用自動化的設計工具來完成系統(tǒng)設計和FPGA實施。采用與系統(tǒng)框圖類似的圖形化方法,軟件可自動將模塊轉換成相應的FPGA DSP核心。
為簡化FPGA設計流程,設計新手和有經(jīng)驗的設計人員可以利用像Xilinx最近推出的系統(tǒng)生成器這樣的工具,直接連接使用The Mathworks, Inc. (Natick, MA)的MATLAB和Simulink系統(tǒng)工具。設計人員采用這一解決方案可以快速建立和驗證一個DSP系統(tǒng)。軟件自動生成HDL表示,然后再映射成Xilinx LogicCORE構建模塊。設計人員利用它來優(yōu)化設計、并在高性能和低芯片成本之間進行平衡。
采用這一設計方法時,設計人員可以系統(tǒng)模塊方式定義DSP算法,并驗證算法數(shù)學上是否正確,然后利用位真值模擬方法來實施定點測試。在流程中的每一步,位寬度都可以優(yōu)化以與系統(tǒng)要求相匹配。然后,利用核心生成器實施系統(tǒng)級工具所指定的設計。
由于FPGA的性能和靈活性,以及新的簡明的設計和實施方法,在很多新興DSP應用領域,如數(shù)字通信和視頻處理,F(xiàn)PGA都成為優(yōu)選的解決方案。例如,Xilinx Virtex和Spartan-II FPGA可以用來實現(xiàn)通用移動通信系統(tǒng)(UMTS)碼分多址(CDMA)應用中的匹配濾波器。UMTS標準的芯片速率有8.192MHz和15.36MHz兩種選擇。通過FPGA解決方案,在未來不需要額外的資源就可以改變數(shù)據(jù)速率。
在CDMA無線通信系統(tǒng)中,所有移動手機和所有無線基站都工作在相同的頻譜。為區(qū)分不同的呼叫,每個手機廣播一個唯一的碼序列。CDMA基站必須能夠判別這些不同的碼序列才能夠分辨出不同的傳輸呼叫進程。這一判別是通過匹配濾波器實現(xiàn)的,匹配濾波器的輸出顯示出在輸入數(shù)據(jù)流中探測到特定的碼序列。
在CDMA數(shù)字通信接收器中,匹配濾波器作為信號處理器來計算發(fā)送信號與接收信號的相關性。FPGA都能提供良好的濾波器設計,而且能完成DSP的高級數(shù)據(jù)處理功能。
充分發(fā)揮FPGA DSP核心所具有的優(yōu)點,便攜式系統(tǒng)設計人員可大大縮短設計周期。采用FPGA技術,還可以獲得高性能,滿足成本要求,并享有快速有效地對新設計進行優(yōu)化的靈活性?!觯g自Portable Design,April)
評論