利用Spartan-3 FPGA實現(xiàn)低成本DSP協(xié)處理
在過去,fpga一直在dsp應(yīng)用中被用作邏輯合并器件、總線橋和外設(shè)器件。最近,fpga在高性能dsp應(yīng)用中獲得很大的發(fā)展,并且逐漸成為標(biāo)準(zhǔn)dsp器件的理想?yún)f(xié)處理器件。 作為dsp協(xié)處理器件,fpga的高度并行結(jié)構(gòu)提供了巨大的計算能力。由于fpga硬件是可重配置的,因此可以針對具體的應(yīng)用開發(fā)出優(yōu)化的定制結(jié)構(gòu),非常理想地實現(xiàn)所需要的算法。 賽靈思(xilinx)公司的新一代spartan-3低成本fpga采用了90nm工藝技術(shù),不僅提供了實現(xiàn)高性能dsp功能的有效手段,而且還是一種更為經(jīng)濟(jì)的解決方案。低成本意味著可以利用它們配合傳統(tǒng)的dsp器件來實現(xiàn)高性能dsp協(xié)處理功能,通常主要是利用fpga器件經(jīng)濟(jì)地集成dsp運(yùn)算過程中的預(yù)處理和后處理器功能。 主要優(yōu)勢fpga架構(gòu)非常適合以高度并行的方式實現(xiàn)dsp功能,從而可以獲得極高的性能。此外,可編程能力使得用戶在實現(xiàn)所需要的功能時,可通過選擇適當(dāng)?shù)牟⑿卸仍谄骷娣e和性能之間做出折衷。fpga本質(zhì)上是未完全連接的邏輯和信號處理資源陣列。這些信號處理資源使設(shè)計人員可利用高度可擴(kuò)展的并行處理技術(shù)來實現(xiàn)dsp功能。例如,傳統(tǒng)dsp解決方案以串行方式實現(xiàn)多次乘法累加(mac)功能,而fpga則可利用spartan-3系列所集成的專用乘法器和寄存器以并行方式來實現(xiàn)。 作為例子,讓我們考慮一個256抽頭的有限脈沖響應(yīng)(fir)濾波器。利用fpga構(gòu)造中可用的資源,可以獲得一個高度并行的設(shè)計并達(dá)到更高的性能(圖1).因為fpga是完全硬件可編程的,因此提供了極大的靈活性,在設(shè)計中可以僅使用算法所需要的資源。
圖2示出了實現(xiàn)四個mac功能的不同方式。通過利用fpga構(gòu)造中的四個嵌入式乘法器,能夠以最快的速度實現(xiàn)四個mac的物理設(shè)計。同時,設(shè)計時還可選擇針對面積進(jìn)行優(yōu)化,這樣僅利用一個乘法器、一個累加器和一個寄存器就可在較低的性能水平下實現(xiàn)同樣的功能,或者也可以選擇采用半并行的方法。
盡管fpga為dsp帶來了很大好處,但分析一下在fpga構(gòu)造中實現(xiàn)dsp功能時的有效成本也非常重要。為了進(jìn)行 這一分析,我們將以最新的spartan-3 fpga系列為例,這一低成本系列器件集成了許多適合dsp的系統(tǒng)特點(diǎn)。spartan-3 :針對dsp而優(yōu)化spartan-3 fpga采用90nm制造技術(shù)來獲得較低的硅裸片成本。該系列器件也是唯一擁有高效率實現(xiàn)dsp功能所需要的所有系統(tǒng)特點(diǎn)(這些特點(diǎn)一度屬于高端fpga所專有)的低成本fpga(表1)。利用spartan-3系列,只需占用整個設(shè)備的一小部分空間即可實現(xiàn)高性能的復(fù)雜dsp功能。這樣就可將設(shè)備剩余的空間留下來,用于實現(xiàn)系統(tǒng)邏輯或接口功能,從而使成本更低且系統(tǒng)集成度更高。表2表明了如何結(jié)合spartan-3 fpga的高級器件特性和低成本特點(diǎn)以低成本實現(xiàn)dsp功能。表中給出了目前推出的spartan-3器件、對應(yīng)的每秒可完成乘法累加數(shù)(mmac/s)以及每種器件中單位mmac/s性能的成本。
將乘法器的數(shù)量與工作頻率相乘得到mmac/s數(shù)值。對于最低速度級的spartan-3 fpga 工作頻率為150 mhz。 然后,查一下對應(yīng)器件最低速度級為5萬件時的價格,就可以計算出單位mmac/s性能所需要的成本。
如何獲得最低的dsp功能成本目前,并沒有現(xiàn)成的標(biāo)準(zhǔn)來衡量在fpga中實現(xiàn)dsp功能時的實際成本。然而,為了后面的分析,可以將有效成本理想化,用實現(xiàn)dsp功能所使用的器件面積百分比乘以單位器件成本來表示。這樣計算應(yīng)當(dāng)是公平的,因為fpga的剩余部分還可用于其它系統(tǒng)功能。 為計算在fpga中實現(xiàn)一項dsp功能時的有效成本,我們考慮spartan-3系列中的中等規(guī)模器件,spartan-3 xc3s1000。在許多情況下,給定的dsp功能并不僅使用fpga邏輯資源,還使用到嵌入式乘法器和塊ram。在這種情況下,我們也將這些嵌入式功能所占用的裸片空間估算數(shù)值計算在內(nèi),并與所占用的邏輯資源裸片面積相加。 表3 示出了一些dsp功能以及在spartan-3器件中實現(xiàn)時的有效成本。(這里沒有包括編程prom的成本,因為在許多情況下,可以利用板上的現(xiàn)有eprom來編程fpga。)dsp應(yīng)用中最常用的一些功能是快速傅里葉變換(fft)和fir濾波器。一個采樣速率為8.1msps的單通道64抽頭mac fir濾波器利用spartan-3系列的xc3s1000器件實現(xiàn)時,有效成本為0.41美元。注意,這一濾波器使用了200個邏輯片和4個嵌入式乘法器——大約占用裸片面積的3%。 在spartan-3器件中還可以用低成本實現(xiàn)簡單的前向錯誤校正dsp內(nèi)核,如viterbi和reed solomn功能。一個每通道1.9 msps的32通道并行模式viterbi解碼器的有效成本為5.06美元,相當(dāng)于每通道0.16美元。運(yùn)行在60mhz的一個reed solomon g.709解碼器僅占用同樣器件6.9%的資源(有效成本僅0.92美元) 復(fù)雜功能,如通常用于無線基站的數(shù)字下轉(zhuǎn)換(ddc)或數(shù)字上轉(zhuǎn)換(duc),僅占用spartan-3 xc3s1000器件不到20%的裸片面積(有效成本為2.49美元)。
開發(fā)工具流程選擇賽靈思解決方案,可利用業(yè)