筆者在校的科研任務(wù),需要用FPGA搭建OFDM通信系統(tǒng),而OFDM的核心即是IFFT和FFT運(yùn)算,因此本文通過(guò)Xilinx FFT IP核的使用總結(jié)給大家開(kāi)個(gè)頭,詳細(xì)內(nèi)容可查看官方文檔PG109。
我們直接來(lái)看看FFT IP核配置界面:
由于OFDM接收機(jī)中大多是數(shù)據(jù)串并轉(zhuǎn)換后的連續(xù)低速并行數(shù)據(jù)流輸入FFT,故這里采用流水線結(jié)構(gòu)。之后根據(jù)OFDM子載波數(shù)選擇變換長(zhǎng)度。該IP核僅支持50MHZ采樣率數(shù)據(jù)的流水線處理,如果數(shù)高速通信場(chǎng)合,可以再次將數(shù)據(jù)串并轉(zhuǎn)換用多個(gè)FFT IP核并行運(yùn)算,也就是FPGA設(shè)計(jì)中常用的“面積換速度”。
第二頁(yè)中比較重要的是選擇數(shù)據(jù)格式和縮減 截?cái)嗵幚?。此IP核支持浮點(diǎn)運(yùn)算,但隨之會(huì)消耗大量的硬件資源,且延遲也較大,所以多采用定點(diǎn)運(yùn)算方式。定點(diǎn)運(yùn)算中固定的bit位寬很容易出現(xiàn)數(shù)據(jù)溢出,在蝶形運(yùn)算過(guò)程中僅保留高位而整體右移可把計(jì)算過(guò)程中增加的位寬去除掉,最后再左移即可,顯然這種做法是在犧牲計(jì)算精度來(lái)降低硬件資源。設(shè)置Scaling Options為Scaled則在FFT IP核配置通道可以自定義縮減因子。當(dāng)設(shè)置縮減位寬后,選中本頁(yè)左下角的OVFLO溢出信號(hào),仿真過(guò)程中可以通過(guò)溢出信號(hào)確定合適的縮減因子。
第三頁(yè)主要是設(shè)置底層資源,對(duì)功能沒(méi)有多大影響。存儲(chǔ)部分可以用BRAM和DRAM兩種資源,這里普及下:兩者主要的區(qū)別在于BRAM是FPGA內(nèi)部專用的硬件存儲(chǔ)資源,用不用都在那里(你見(jiàn)或者不見(jiàn),我就在那里,不來(lái)不去。。。好像在哪里見(jiàn)過(guò)),而DRAM是利用SLICEM中的LUT搭建出來(lái)的,相當(dāng)于是BRAM的補(bǔ)充。在存儲(chǔ)量較小時(shí),DRAM可能會(huì)表現(xiàn)出更好的功耗和速率優(yōu)勢(shì)。正如官方文檔介紹的,在變換長(zhǎng)度小于1024,即占用存儲(chǔ)資源少的情況下可使用DRAM。而下面的Optimize Options則可以權(quán)衡使用CLB和DSP Slices。
接口和配置可以說(shuō)是所有IP核使用的重中之重。
AXI總線的統(tǒng)一封裝給IP核調(diào)用帶來(lái)了很多方便,各部分功能通道相互分開(kāi)結(jié)構(gòu)非常清晰。每個(gè)通道的data以字節(jié)為單位的packet傳輸信息,如config通道信息如下:
在這一通道中要在數(shù)據(jù)進(jìn)入前設(shè)置好變換方式和縮減因子,此處配置為正變換,縮減因子[1 1 1 1]。給大家看下OFDM接收機(jī)工程中FFT運(yùn)算部分的仿真波形圖:
din是DD-OFDM ADC 接收數(shù)據(jù),只有一路實(shí)部信號(hào)。dout_I,dout_Q分別是FFT運(yùn)算后復(fù)數(shù)中的實(shí)部和虛部。顯然FFT運(yùn)算后得到了信號(hào)的不同頻率成分,下面的dout_vld負(fù)責(zé)提取赫比特對(duì)稱中數(shù)據(jù)載波。希望本文能起到拋磚引玉的作用,歡迎交流~
審核編輯:湯梓紅
-
FPGA
+關(guān)注
關(guān)注
1645文章
22021瀏覽量
617256 -
ofdm
+關(guān)注
關(guān)注
6文章
350瀏覽量
57598 -
Xilinx
+關(guān)注
關(guān)注
73文章
2184瀏覽量
124950 -
FFT
+關(guān)注
關(guān)注
15文章
444瀏覽量
60874 -
通信系統(tǒng)
+關(guān)注
關(guān)注
6文章
1225瀏覽量
54089
原文標(biāo)題:從Xilinx FFT IP核到FPGA實(shí)現(xiàn)OFDM
文章出處:【微信號(hào):Hack電子,微信公眾號(hào):Hack電子】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
adc采樣后數(shù)據(jù)無(wú)法實(shí)現(xiàn)ofdm(fft)解調(diào)
xilinx FPGA的FFT IP核的調(diào)用
一種基于FPGA的可配置FFT IP核實(shí)現(xiàn)設(shè)計(jì)
基于FPGA的FFT和IFFT IP核應(yīng)用實(shí)例
【Mill】Xilinx ip FFT變換,為什么你的matlab數(shù)據(jù)無(wú)法嚴(yán)格比對(duì)?——無(wú)線通信連載
基于Xilinx_FPGA_IP核的FFT算法的設(shè)計(jì)與實(shí)現(xiàn)
Xilinx 的IP:1024點(diǎn)FFT快速傅立葉變換
可配置FFT IP核的實(shí)現(xiàn)及基礎(chǔ)教程

通過(guò)Xilinx FFT IP核的使用實(shí)現(xiàn)OFDM

FPGA實(shí)現(xiàn)基于Vivado的BRAM IP核的使用
Xilinx FFT IP介紹與仿真測(cè)試
使用Xilinx FPGA實(shí)現(xiàn)OFDM系統(tǒng)

評(píng)論