文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2012)03-0057-03
目前,正交頻分復(fù)用OFDM(Orthogonal Frequency Division Multiplexing)技術(shù)已經(jīng)成為未來(lái)寬帶無(wú)線接入系統(tǒng)的基本實(shí)現(xiàn)技術(shù)之一,其抗多徑衰落和高頻帶利用率的優(yōu)點(diǎn)被廣泛應(yīng)用于無(wú)線通信系統(tǒng)中,是解決高速數(shù)據(jù)在無(wú)線信道中傳輸?shù)氖走x方案[1]。
FFT_IFFT處理器是OFDM系統(tǒng)中數(shù)據(jù)處理的核心單元,是OFDM系統(tǒng)中數(shù)據(jù)正交調(diào)制和解調(diào)的關(guān)鍵。本文設(shè)計(jì)實(shí)現(xiàn)了一種用于P2P移動(dòng)無(wú)線通信手持終端產(chǎn)品,采用單碟形4路并行結(jié)構(gòu),兼容802.11g協(xié)議,可配置FFT_IFFT處理器,在處理速度、實(shí)現(xiàn)面積、功耗方面均滿足802.11g系統(tǒng)及手持移動(dòng)無(wú)線通信終端的要求。
2.2 FFT/IFFT可配置方案
由基4算法分析可知,要分別完成1 024、256、64點(diǎn)的FFT計(jì)算,需要的迭代級(jí)數(shù)分別為5、4、3級(jí)。由于1 024點(diǎn)的FFT運(yùn)算可分解為4個(gè)256點(diǎn)的FFT運(yùn)算,而256點(diǎn)的FFT運(yùn)算又可分為4個(gè)64點(diǎn)的FFT運(yùn)算,64點(diǎn)的FFT運(yùn)算經(jīng)過(guò)3級(jí)迭代就可求出。可以通過(guò)簡(jiǎn)單的模式控制實(shí)現(xiàn)多點(diǎn)數(shù)的配置,如圖2所示。其中5級(jí)蝶形計(jì)算單元,每級(jí)蝶形單元結(jié)構(gòu)一致,采用順序蝶形計(jì)算,當(dāng)選擇模式0時(shí),數(shù)據(jù)直接送入第一級(jí),進(jìn)行1 024點(diǎn)的5級(jí)運(yùn)算;選擇模式1時(shí),數(shù)據(jù)通過(guò)選擇器跳過(guò)第1級(jí),數(shù)據(jù)送入第2級(jí),從而完成256點(diǎn)的4級(jí)迭代運(yùn)算;選擇模式2時(shí),數(shù)據(jù)通過(guò)選擇器跳過(guò)第1級(jí)和第2級(jí),數(shù)據(jù)送入第3級(jí),從而完成64點(diǎn)的三級(jí)迭代運(yùn)算。這樣就可以正確簡(jiǎn)單地實(shí)現(xiàn)系統(tǒng)要求的配置要求。
2.3 基本蝶形運(yùn)算單元設(shè)計(jì)
蝶形運(yùn)算單元的設(shè)計(jì)是整個(gè)FFT/IFFT處理器設(shè)計(jì)的關(guān)鍵。完成蝶形運(yùn)算的一次復(fù)數(shù)乘法包含4次實(shí)數(shù)乘法和2次實(shí)數(shù)加、減法,如果將乘數(shù)擴(kuò)大1位,可將計(jì)算化簡(jiǎn)為3次實(shí)數(shù)乘和5次實(shí)數(shù)加/減法。為了提高處理速度,本設(shè)計(jì)采用四級(jí)流水線處理方式,有效地減小了關(guān)鍵路徑時(shí)延。蝶形單元的數(shù)據(jù)從RAM輸入及輸出到RAM需要2個(gè)時(shí)鐘周期,這里引入2級(jí)流水;對(duì)輸入數(shù)據(jù)的實(shí)部和虛部分開(kāi)并行計(jì)算,一次復(fù)數(shù)乘法只需3個(gè)乘法累加器即可完成,用4個(gè)加法器及4個(gè)減法器即可完成基4蝶形單元后續(xù)數(shù)據(jù)處理,再次引入二級(jí)流水。整個(gè)蝶形單元處理時(shí)間為4個(gè)周期,采用四級(jí)流水線結(jié)構(gòu)后,以較小的資源代價(jià)有效提高了處理器的時(shí)鐘頻率。
2.4 乒乓RAM設(shè)計(jì)
為了滿足無(wú)線移動(dòng)通信要求,實(shí)現(xiàn)對(duì)連續(xù)數(shù)據(jù)流和突發(fā)數(shù)據(jù)流的處理,本文設(shè)計(jì)的FFT/IFFT處理器采用了輸入、輸出雙乒乓結(jié)構(gòu),保證了系統(tǒng)高吞吐率的要求。設(shè)計(jì)共使用4組RAM(RAM0~RAM3),每組RAM劃分為4塊存儲(chǔ)器。輸入數(shù)據(jù)寫(xiě)入RAM0組中的4塊存儲(chǔ)器,寫(xiě)完后開(kāi)始寫(xiě)入RAM1,與此同時(shí),從RAM0組中讀出數(shù)據(jù)送入蝶形單元進(jìn)行計(jì)算,其結(jié)果按照同址計(jì)算規(guī)則寫(xiě)回相應(yīng)的地址,直到M級(jí)蝶形運(yùn)算完成后,最終的計(jì)算結(jié)果寫(xiě)入RAM2。RAM2寫(xiě)滿后,即可從RAM2讀出計(jì)算結(jié)果,同時(shí)RAM1組中的數(shù)據(jù)將被讀出送入蝶形單元進(jìn)行運(yùn)算,其運(yùn)算結(jié)果按照同址運(yùn)算規(guī)律送回RAM1存儲(chǔ),M級(jí)蝶形運(yùn)算完成后,最終結(jié)果寫(xiě)入RAM3組,RAM3寫(xiě)滿后即可從中讀出運(yùn)算結(jié)果。
2.5 無(wú)沖突并行地址設(shè)計(jì)[4]
4路并行數(shù)據(jù)處理結(jié)構(gòu)需要保證每次讀取的一組數(shù)據(jù)分別存儲(chǔ)在不同的RAM中,否則在數(shù)據(jù)讀取時(shí)會(huì)產(chǎn)生地址沖突[5]。本設(shè)計(jì)中RAM地址采用二維地址,其中地址x表示每塊RAM中數(shù)據(jù)地址,y表示數(shù)據(jù)來(lái)自RAM塊的標(biāo)號(hào)。
3 FPGA實(shí)現(xiàn)及測(cè)試分析
本文FFT/IFFT處理器采用Verilg硬件語(yǔ)言描述,在Mentor公司的Modelsim仿真平臺(tái)上進(jìn)行了RTL功能仿真及時(shí)序仿真,其結(jié)果與Matlab仿真結(jié)果進(jìn)行比較顯示正確。處理器采用了Xilinx 公司Virtex-Ⅱ xc22v500 芯片進(jìn)行了驗(yàn)證,在SMIC COMS 0.18 ?滋m工藝下對(duì)設(shè)計(jì)的處理器進(jìn)行了綜合仿真。結(jié)果顯示:完成64點(diǎn)16 bit符號(hào)數(shù)復(fù)數(shù)FFT運(yùn)算只需要50個(gè)時(shí)鐘周期,完成256點(diǎn)FFT運(yùn)算需要256個(gè)時(shí)鐘周期,最大時(shí)鐘頻率可以達(dá)到167 MHz,處理器的單元核心面積為1.4 mm2。設(shè)計(jì)完全滿足了無(wú)線移動(dòng)手持終端設(shè)備高速小面積的設(shè)計(jì)要求。
參考文獻(xiàn)
[1] BECCHETI L.Enhancing IP service provision over heterogeneous wireless networks[J].A Path toward 4G.IEEE Communication Magazine,2001,39(8):74~81.
[2] 程佩青.數(shù)字信號(hào)處理教程[M].北京:清華大學(xué)出版社. 2004:138-150.
[3] JOHNSON L G.Conflict free memory addressing for dedicated FFT hareware[J]. IEEE Transactions On Circuits and System,Analog And Digital Signal Processing,1992,39(5):99-105.
[4] TROY A,MAHARATNA K,KRSTIC M,et al.Low-power VLSI implementation of the inner receiver
for OFDM-based WLAN system[J].IEEE Transactions on circuits and systems,2008,55(2):672-686.
[5] FOSTER M,TURNER A,SHARPING J,et al.Broad-band optical parameric gain on a silicon photonic chip[J].Nature Photon,2006,441:960-963.