《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 解決方案 > 高效FPGA乘法器在無(wú)線基站中的使用

高效FPGA乘法器在無(wú)線基站中的使用

2011-07-28
作者:Ian Ing Asher Hazanchuk
來(lái)源:Lattice半導(dǎo)體公司

      基于WiMax及其派生標(biāo)準(zhǔn)的新興寬帶無(wú)線協(xié)議需要越來(lái)越高的吞吐量和數(shù)據(jù)速率。這些協(xié)議提出的快速芯片速率和數(shù)字射頻處理可以在使用FPGA方案的硬件上得到最佳的實(shí)現(xiàn)。

  FPGA非常適合作為高性能,、高性價(jià)比的解決方案來(lái)實(shí)現(xiàn)這些物理層協(xié)議中的數(shù)字功能,,因?yàn)樗鼈儼ㄒ韵仑S富的資源:

  1.DSP模塊,可以用來(lái)實(shí)現(xiàn)各種FIR濾波和FFT/IFFT操作所要求的乘法器和加法器/累加器功能,;

  2. SERDES收發(fā)器,,可以支持無(wú)線前端與基帶數(shù)字板之間的CPRI和OBSAI接口;

  3. 重要的FPGA嵌入式RAM塊存儲(chǔ)器(EBR),,可以用來(lái)存儲(chǔ)濾波器系數(shù),,執(zhí)行塊交錯(cuò)以及實(shí)現(xiàn)FEC解碼(Turbo、維特比,、Reed-Solomon等),;

  4. 高速LVDS I/O,分別支持到DAC和來(lái)自ADC的寬并行接口,。這些轉(zhuǎn)換器定義了射頻/模擬功能和廉價(jià)數(shù)字基帶邏輯之間的界限,。接口的速率越高,低成本FPGA解決方案便能集成更多的數(shù)字上變頻/數(shù)字下變頻功能,。

  本文重點(diǎn)討論第一種資源,,即DSP乘法模塊。通過(guò)減少和優(yōu)化DSP乘法模塊在FFT和FIR中的實(shí)現(xiàn),,設(shè)計(jì)師可以在盡量減少資源使用的條件下滿足吞吐量要求,,從而允許用戶使用最具性價(jià)比的現(xiàn)成FPGA器件。下面對(duì)這四種乘法器節(jié)省技術(shù)進(jìn)行介紹,。

  用于WiMaxOFDM功能的高效復(fù)數(shù)乘法

  WiMax系統(tǒng)設(shè)計(jì)的一個(gè)重要特征是支持正交頻分復(fù)用(OFDM),。FPGA使得分別使用IFFT和FFT在離散時(shí)間內(nèi)實(shí)現(xiàn)OFDM發(fā)送器和接收器變得特別容易。諸如802.16a等協(xié)議需要256樣點(diǎn)的FFT,。而802.16e這些協(xié)議要求多種FFT樣點(diǎn),,或者可以靈活調(diào)整的FFT樣點(diǎn)以適應(yīng)動(dòng)態(tài)信道和帶寬要求(可擴(kuò)展OFDMA)。

  復(fù)數(shù)乘法

  在執(zhí)行256和1024樣點(diǎn)FFT時(shí),可通過(guò)Radix-4結(jié)構(gòu)獲得乘法器的最高效使用,。FFT算法通過(guò)復(fù)用4樣點(diǎn)離散傅里葉變換(DFT)蝶形結(jié)構(gòu)進(jìn)行分解,。例如,一個(gè)16點(diǎn)的FFT可以通過(guò)按時(shí)間抽取,、按頻率抽取或其他相關(guān)分解方式用2級(jí)Radix-4 DFT結(jié)構(gòu)實(shí)現(xiàn),。第1級(jí)由4個(gè)4樣點(diǎn)DFT組成,第2級(jí)同樣由4個(gè)4點(diǎn)DFT組成,。由于每個(gè)DFT的輸出要求在饋送給下一級(jí)之前為結(jié)果提供3個(gè)相位因子,,因此第1級(jí)和第2級(jí)之間的9個(gè)相位因子需要9次復(fù)數(shù)乘法。

  初看起來(lái),,執(zhí)行一次復(fù)數(shù)乘法需要4個(gè)乘法器和2個(gè)加法/減法器,。然而,該表達(dá)式可以重新寫成另外一種只需3個(gè)乘法器,、3個(gè)加法器和2個(gè)減法器的表達(dá)式,。值得注意的是,加法器是在FPGA的內(nèi)核邏輯中實(shí)現(xiàn)的,,使用了豐富的逐位進(jìn)位模式(ripple mode)的通用可編程邏輯單元(PLC)片,。

  如果D=Dr+jDi是復(fù)數(shù)數(shù)據(jù),C=Cr+jCi是復(fù)數(shù)系數(shù),,那么復(fù)數(shù)乘法的標(biāo)準(zhǔn)表達(dá)式如下:

  E1:R=D*C=(Dr+jDi)*(Cr+jCi)=Rr+jRi (1)

  其中Rr=Dr*Cr-Di*Ci, Ri=Dr*Ci+Di*Cr

  上述標(biāo)準(zhǔn)表達(dá)式要求使用4個(gè)乘法器,。該表達(dá)式可以通過(guò)代數(shù)方法重新整理為:

  E2: Rr=Dr*Cr-Di*Ci (2)

  E3: Rr=Dr*Cr-Di*Ci+0 (3)

  E4: Rr=Dr*Cr-Di*Ci+(Dr*Ci-Di*Cr)-(Dr*Ci-Di*Cr) (4)

  E5: Rr=(Dr*Cr-Dr*Ci+Di*Cr-Di*Ci)+(Dr*Ci-Di*Cr) (5)

  復(fù)數(shù)結(jié)果的新表達(dá)式是:

  E6: Rr=[(Dr+Di)*(Cr-Ci)]+(Dr*Ci-Di*Cr) (3次乘法) (6)

  E7: Ri=Dr*Ci+Di*Cr (復(fù)用來(lái)自Rr的乘積) (7)

  如圖1所示,最優(yōu)的復(fù)數(shù)乘法可以用3個(gè)乘法器,、3個(gè)加法器和2個(gè)減法器實(shí)現(xiàn),。值得注意的是,在FPGA中,,加法/減法模塊所用的相對(duì)裸片面積要小于18×18的乘法器模塊,。




圖1:采用4個(gè)和3個(gè)乘法器的復(fù)數(shù)乘法


  總之,所用乘法器數(shù)量減少25%可以帶來(lái)下面兩大好處之一:

  1.在相同F(xiàn)FT吞吐量的條件下可以少用乘法器,;

  2.在乘法器數(shù)量不變的條件下可以提高FFT吞吐量,。

  數(shù)字上變頻/下變頻器中FIR濾波器的高效實(shí)現(xiàn)

  如下的三個(gè)高效乘法器技術(shù)可用于實(shí)現(xiàn)FPGA中的數(shù)字上變頻和下變頻。這已經(jīng)成為優(yōu)化的重點(diǎn)領(lǐng)域,,因?yàn)闊o(wú)線設(shè)計(jì)師需要滿足將數(shù)據(jù)從非常高的采樣速率向芯片處理速率轉(zhuǎn)移的要求,。數(shù)字下變頻器/上變頻器(DDC/DUC)子系統(tǒng)是基站內(nèi)發(fā)送器/接收器的主要數(shù)字器件,以前是用昂貴的模擬/混合信號(hào)器件實(shí)現(xiàn)的,。共有三種技術(shù)可以用來(lái)減少FPGA實(shí)現(xiàn)方案中的乘法器數(shù)量,。

  1.系數(shù)對(duì)稱的FIR濾波器可節(jié)省乘法器;

  2.分布式運(yùn)算操作使用嵌入式塊存儲(chǔ)器,;

  3.級(jí)聯(lián)積分梳狀濾波器使用加法器,。
 

 

上變頻/下變頻概述
 
       如圖2中上半部分描述的那樣,,DDC由以下器件組成:一個(gè)基于數(shù)控振蕩器(NCO)的I/Q分離器,它通過(guò)兩個(gè)混頻器將來(lái)自射頻部分的輸入信號(hào)用正弦和余弦波進(jìn)行調(diào)制,;一個(gè)抽取部分,,可以由3級(jí)FIR抽取濾波器或后接級(jí)聯(lián)積分梳狀(CIC)濾波器的FIR抽取濾波器進(jìn)行配置。
 
圖2:DDC/DUC結(jié)構(gòu),。
 
         圖2中的DUC由以下器件組成:3級(jí)FIR內(nèi)插濾波器或后面接FIR內(nèi)插濾波器的CIC濾波器,;一個(gè)基于NCO和兩個(gè)混頻器的I/Q混頻器,其在I,、Q輸出信號(hào)到達(dá)射頻部分前對(duì)它們進(jìn)行解調(diào),。請(qǐng)記住,抽取用于采樣刪除以達(dá)到較低的采樣率,,而內(nèi)插用于增加外推樣本以提高采樣率,。
 
變頻器的通用實(shí)現(xiàn)指南
 
DDC/DUC系統(tǒng)是一個(gè)需要大量乘法器的系統(tǒng)。抽取和內(nèi)插濾波器通常由乘法器和加法器陣列實(shí)現(xiàn),,而混頻功能就是一個(gè)乘法器,。利用面積優(yōu)化方法實(shí)現(xiàn)NCO要基于使用復(fù)數(shù)乘法器的相移。
 
克服需要大量乘法器的系統(tǒng)所帶來(lái)的挑戰(zhàn)首先是要分解和級(jí)聯(lián)濾波器:
 
1. 一個(gè)抽取/內(nèi)插系數(shù)為N的大型FIR抽取濾波器或FIR內(nèi)插濾波器可以分解成兩個(gè)或三個(gè)抽取/內(nèi)插系數(shù)分別為N1,、N2和N3的較小、較簡(jiǎn)單的級(jí)聯(lián)濾波器,。抽取/內(nèi)插系數(shù)滿足以下等式:
 
E8: N=N1*N2*N3
 
2. 將FIR抽取濾波器或FIR內(nèi)插濾波器分解成兩個(gè)或三個(gè)獨(dú)立濾波器可以減少實(shí)現(xiàn)整個(gè)濾波器所需的抽頭總數(shù),。抽取或內(nèi)插系數(shù)為N的單個(gè)濾波器需要大量的抽頭(乘法器)才能滿足基本的濾波器衰減和噪聲特性要求。將濾波器分解成兩個(gè)或三個(gè)更小和更簡(jiǎn)單的濾波器可以減少整個(gè)濾波系統(tǒng)的抽頭數(shù)量,。另外,,第二和第三級(jí)聯(lián)濾波器的較低采樣率可以實(shí)現(xiàn)時(shí)間復(fù)用,從而進(jìn)一步縮小實(shí)現(xiàn)的尺寸,。
 
當(dāng)濾波器階數(shù)確定好后,,還可以采取多種措施減少實(shí)際濾波器中的乘法器數(shù)量。下面將對(duì)此進(jìn)行介紹,。
 
 
表1:可減少WiMax系統(tǒng)設(shè)計(jì)中乘法器數(shù)量的四種技術(shù),。
 
三種專用于變頻器的乘法器節(jié)省技術(shù)
 
1. 對(duì)稱抽取和內(nèi)插濾波器
 
系數(shù)對(duì)稱的DDC抽取濾波器和DUC內(nèi)插濾波器可以用來(lái)獲得最多50%的乘法器節(jié)省效果。在對(duì)稱條件下,,n個(gè)抽頭的FIR濾波器系數(shù)h(0),、h(1)、…,、h(n)滿足h(k)=h(n-k){0≤k≤n}.
 
由于h(k)=h(n-k),、h(k)與兩個(gè)相關(guān)樣本之和的乘積可以一次完成,因此所需乘法器的數(shù)量可以最多減少2倍(對(duì)于偶數(shù)個(gè)系數(shù)),。在FPGA中,,可以利用低成本的逐位進(jìn)位邏輯實(shí)現(xiàn)使用相同系數(shù)的兩個(gè)數(shù)據(jù)樣本的加法,。
 
2. 通過(guò)分布式運(yùn)算功能并利用EBR存儲(chǔ)器塊實(shí)現(xiàn)FIR濾波器
 
對(duì)乘法器密集應(yīng)用(如DDC或DUC)來(lái)說(shuō),F(xiàn)PGA資源的高效使用特別重要,。將存儲(chǔ)器和LUT結(jié)構(gòu)資源用作乘法器可以顯著提升實(shí)現(xiàn)效率,。EBR和這種結(jié)構(gòu)的分布式存儲(chǔ)器可以用作使用分布式存儲(chǔ)器技術(shù)的FIR濾波器乘法器。分布式存儲(chǔ)器技術(shù)也被稱為軟乘法技術(shù),,使用這種技術(shù)通??梢允笷PGA器件中的乘法器數(shù)量增加2到5倍。
 
從圖3可以看出如何使用EBR實(shí)現(xiàn)使用分布式算術(shù)技術(shù)的FIR濾波器,。樣本被串行移位進(jìn)EBR地址總線,。在EBR內(nèi)部有一個(gè)預(yù)計(jì)算的結(jié)果乘法表以及帶合適系數(shù)的各個(gè)輸入樣本比特(地址比特)總和。累加器將累加n個(gè)(n是樣本比特分辨率)中間結(jié)果,,并在n個(gè)時(shí)鐘周期后提供完整的FIR濾波結(jié)果,。
 
圖3:將塊存儲(chǔ)器用作FIR乘法器
 
3. CIC濾波器使用加法器而不是乘法器
 
用CIC乘法器代替某些內(nèi)插/抽取FIR濾波器鏈部分是另一種減少實(shí)現(xiàn)所需乘法器數(shù)量的方法。CIC乘法器沒(méi)有乘法器,,而是使用加法器和減法器,。數(shù)字上變頻/下變頻通常要求數(shù)百階的大范圍速率變化。高速率變化內(nèi)插或抽取濾波器在硬件方面非常昂貴,。CIC濾波器也被稱為Hogenauer濾波器,,可以用作低成本的高因數(shù)抽取或內(nèi)插濾波器。它們可以用來(lái)在數(shù)字系統(tǒng)中取得任意的和很大的速率變化,,并能夠僅使用加法器和減法器高效實(shí)現(xiàn),。因?yàn)镕PGA有很快的進(jìn)位鏈用于實(shí)現(xiàn)加法器,因此CIC濾波器非常適合FPGA實(shí)現(xiàn),。積分器和梳狀濾波器的結(jié)構(gòu)與特性請(qǐng)參見(jiàn)表2,。
 
表2:梳狀濾波器和積分器的結(jié)構(gòu)與特性。
 
利用IP核實(shí)現(xiàn)變頻器和OFDM
 
    用Lattice的FPGA實(shí)現(xiàn)DDC或DUC變頻器相當(dāng)簡(jiǎn)單,,因?yàn)镕PGA提供了作為IP內(nèi)核使用的重要組成器件,。將CIC濾波器用作數(shù)據(jù)速率轉(zhuǎn)換中內(nèi)插器的應(yīng)用如圖4所示,它給出了用作數(shù)字無(wú)線應(yīng)用中的變頻器的CIC內(nèi)插器的使用,。
 
圖4:用于數(shù)字無(wú)線電應(yīng)用的數(shù)字上變頻器
 
數(shù)字上變頻器使用以下一些IP內(nèi)核配置:
 
1. FIR濾波器(63個(gè)抽頭的內(nèi)插濾波器),;
 
2. FIR濾波器(31個(gè)抽頭的內(nèi)插濾波器);
 
3. CIC濾波器(速率在8到2K之間可編程的內(nèi)插CIC濾波器),;
 
4. NCO(帶正弦和余弦輸出的NCO),。
 
LatticeECP2/M的優(yōu)勢(shì)
 
LatticeECP2/M系列低成本FPGA具有多種與WiMax系統(tǒng)設(shè)計(jì)高度相關(guān)的高性能特性。在其他低成本FPGA系列器件中很難找到這些特性,,而只能在昂貴的高端FPGA產(chǎn)品中才能找到:
 
1. 帶硬連線的乘法器,、加法器/累加器模塊和管線級(jí)的高性能DSP模塊;
 
2. 速率高達(dá)3.125Gbps的SERDES收發(fā)器通道,,支持無(wú)線電頭部和基帶數(shù)字板之間的CPRI和OBSAI接口,;
 
3. 在LatticeECP2/M存儲(chǔ)器增強(qiáng)系列產(chǎn)品中數(shù)量眾多的18kB EBR存儲(chǔ)器塊,;
 
4. 支持ADC/DAC接口的高速LVDS I/O,輸入和輸出速率均可高達(dá)840Mbps,;
 
5. 低成本的LatticeECP2/M系列器件均可提供這些豐富和高性能的資源,,而價(jià)格遠(yuǎn)低于其他FPGA器件。WiMax系統(tǒng)設(shè)計(jì)師還能使用多種設(shè)計(jì)技術(shù)減少所需DSP乘法器的數(shù)量,,從而讓用戶有可能使用更小,、更便宜的FPGA器件。
 
 
   作者:Ian Ing
 
   Asher Hazanchuk
 
   Lattice半導(dǎo)體公司
本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。