《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于FPGA IP核的FFT實(shí)現(xiàn)
基于FPGA IP核的FFT實(shí)現(xiàn)
摘要: 在利用FFT IP核進(jìn)行FFT算法實(shí)現(xiàn)的同時,對仿真結(jié)果做了全面分析,由于IP核的可塑性很強(qiáng),增加了芯片的靈活性。使用Altera FFT的IP Core大大減少了產(chǎn)品的開發(fā)時間,Altera還可進(jìn)一步實(shí)現(xiàn)加窗功能,甚至DDC部分(單端信號向I/Q轉(zhuǎn)換)整合到其FFT處理器模塊中,能進(jìn)一層次簡化開發(fā)的流程,在今后實(shí)際工程應(yīng)用中高效利用。
關(guān)鍵詞: FPGA IP核 FFT Cyclone Ⅱ
Abstract:
Key words :

0 引 言

數(shù)字信號處理領(lǐng)域中FFT算法有著廣泛的應(yīng)用。目前現(xiàn)有的文獻(xiàn)大多致力于研究利用FFT算法做有關(guān)信號處理、參數(shù)估計(jì)、F+FT蝶形運(yùn)算單元與地址單元設(shè)計(jì)、不同算法的FFT實(shí)現(xiàn)以及FFT模型優(yōu)化等方面。而FPGA廠商Altera公司和Xilinx公司都研制了FFT IP核,性能非常優(yōu)越。在FFT的硬件實(shí)現(xiàn)中,需要考慮的不僅僅是算法運(yùn)算量,更重要的是算法的復(fù)雜性、規(guī)整性和模塊化,而有關(guān)利用FFT IP核實(shí)現(xiàn)FFT算法卻涉及不多。這里從Altera IP核出發(fā),建立了基4算法的512點(diǎn)FFT工程,對不同參數(shù)設(shè)置造成的誤差問題進(jìn)行分析,并在EP2C70F896C8器件上進(jìn)行基于Quartus II的綜合仿真,得到利用FFT IP核的FFT算法高效實(shí)現(xiàn),最后利用Matlab進(jìn)行的計(jì)算機(jī)仿真分析證明了工程結(jié)果的正確性。

1 算法原理

FFT算法是基于離散傅里葉變換(DFT),如式(1)和式(2):

求和運(yùn)算的嵌套分解以及復(fù)數(shù)乘法的對稱性得以實(shí)現(xiàn)。其中一類FFT算法為庫利一圖基(Cooley-Tukey)基r按頻率抽選(DIF)法,將輸入序列循環(huán)分解為N/r個長度為r的序列,并需要logr N級運(yùn)算。算法的核心操作是蝶型運(yùn)算,蝶型運(yùn)算的速度直接影響著整個設(shè)計(jì)的速度。

基4頻域抽取FFT算法是指把輸出序列X(k)按其除4的余數(shù)不同來分解為越來越短的序列,實(shí)現(xiàn)x(n)的DFT算法。FFT的每一級的運(yùn)算都是有N/4個蝶形運(yùn)算構(gòu)成,第m級的一個蝶形運(yùn)算的四節(jié)點(diǎn)分別為Xm(k),Xm(k+N/4m),Xm(k+2N/4m)以及Xm(k+3N/4m),所以每一個蝶形運(yùn)算結(jié)構(gòu)完成以下基本迭代運(yùn)算:

式(3)~式(6)中:m表示第m級蝶形算法;k為數(shù)據(jù)所在的行數(shù);N為所要計(jì)算的數(shù)據(jù)的點(diǎn)數(shù);WN為旋轉(zhuǎn)因子。

將輸入序列循環(huán)分解為4點(diǎn)序列的基4分解,使用4點(diǎn)FFT在乘法上更具優(yōu)勢,Altera的:FFT兆核選用的就是基4運(yùn)算,若N是2的奇數(shù)冪的情況下,F(xiàn)FT IP核則自動在完成轉(zhuǎn)換的最后使用基2運(yùn)算。

2 FFT兆核(IP)函數(shù)

FFT Core支持4種I/O數(shù)據(jù)流結(jié)構(gòu):流(Stream-ing)、變量流(Variable Streaming)、緩沖突發(fā)(BufferedBurt)、突發(fā)(Burst)。流結(jié)構(gòu)允許輸入數(shù)據(jù)連續(xù)處理,并輸出連續(xù)的復(fù)數(shù)據(jù)流,這個過程不需要停止FFT函數(shù)數(shù)據(jù)流的進(jìn)出。變量流結(jié)構(gòu)允許輸入數(shù)據(jù)連續(xù)處理,并產(chǎn)生一個與流結(jié)構(gòu)相似連續(xù)輸出數(shù)據(jù)流。緩沖突發(fā)數(shù)據(jù)流結(jié)構(gòu)的FFT需要的存儲器資源比流動I/O數(shù)據(jù)流結(jié)構(gòu)少,但平均模塊吞吐量減少。突發(fā)數(shù)據(jù)流結(jié)構(gòu)的執(zhí)行過程和緩沖突發(fā)結(jié)構(gòu)相同,不同的是,對于給定參數(shù)設(shè)置,突發(fā)結(jié)構(gòu)在降低平均吞吐量的前提下需要更少的存儲資源。

3 FFT處理器引擎結(jié)構(gòu)

FFT兆核函數(shù)可以通過定制參數(shù)來使用兩種不同的引擎結(jié)構(gòu):四輸出(Quad-outlput)或單輸出(Signal-output)引擎結(jié)構(gòu)。為了增加FFT兆核函數(shù)的總吞吐量,也可以在一個FFT兆核函數(shù)變量中使用多個并行引擎。本文建立一個基于QuartusⅡ7.O計(jì)算24位512點(diǎn)FFT工程,采用四輸出FFT引擎結(jié)構(gòu),如圖1所示。


復(fù)取樣數(shù)據(jù)X[k,m]從內(nèi)部存儲器并行讀出并由變換開關(guān)(SW)重新排序,排序后的取樣數(shù)據(jù)由基4處理器處理并得到復(fù)數(shù)輸出G[k,m],由于基4按頻率抽選(DIF)分解方法固有的數(shù)字特點(diǎn),在蝶形處理器輸出上僅需要3個復(fù)數(shù)乘法器完成3次乘旋轉(zhuǎn)因子(有一個因子為1,不需要乘)計(jì)算。這種實(shí)現(xiàn)結(jié)構(gòu)在一個單時鐘周期內(nèi)計(jì)算所有四個基4蝶形復(fù)數(shù)輸出。

同時,為了辨別取樣數(shù)據(jù)的最大動態(tài)范圍,四個輸出由塊浮點(diǎn)單元(BFPU)并行估計(jì),丟棄適當(dāng)?shù)淖畹臀?LSB),在寫入內(nèi)部存儲器之前對復(fù)數(shù)值進(jìn)行四舍五入并行重新排序。對于要求轉(zhuǎn)換時間盡量小的應(yīng)用,四輸出引擎結(jié)構(gòu)是最佳的選擇;對于要求資源盡量少的應(yīng)用,單輸出引擎結(jié)構(gòu)比較合適。為了增加整個FFT吞吐量,可以采用多并行的結(jié)構(gòu)。

4 系統(tǒng)驗(yàn)證

4.1 工程仿真


選擇CycloneⅡ系列的EP2C70F896C8芯片來實(shí)現(xiàn),先在QuartusⅡ軟件下進(jìn)行綜合仿真,初始化參數(shù)設(shè)置FFT變換長度為512點(diǎn),數(shù)據(jù)和旋轉(zhuǎn)因子精度為24 b,選擇緩沖突發(fā)的數(shù)據(jù)流結(jié)構(gòu),四輸出引擎并行FFT引擎?zhèn)€數(shù)為4個,復(fù)數(shù)乘法器結(jié)構(gòu)為“4/Mults/2Adders”。EP2C70F896C8芯片包括68 416個邏輯單元,31 112個寄存器單元,最大用戶輸入/輸出引腳622個,總RAM達(dá)1 152 000 b,其布線資源由密布的可編程開關(guān)來實(shí)現(xiàn)相互間的連接,這種結(jié)構(gòu)完全符合實(shí)現(xiàn)FFT電路的要求。

經(jīng)綜合和時序分析得知:其工作時鐘頻率69.58 MHz(period=14.372 ns),進(jìn)行一次蝶形運(yùn)算只需約14 ns,全部512點(diǎn)數(shù)據(jù)處理完成則需14.372×4×512=29.3μs滿足時序要求。具體綜合結(jié)果如圖2所示,為Quartus軟件環(huán)境下仿真得到。

圖3則表明了FFT的綜合邏輯結(jié)果,為編譯成功后的RTL級電路描述。

FFT處理器模塊采用緩沖突發(fā)數(shù)據(jù)流結(jié)構(gòu)的信號時序圖如圖4所示,在系統(tǒng)復(fù)位信號(reset_n)變?yōu)榈碗娖胶螅瑪?shù)據(jù)源將sink_ready信號置高電平,表明有能力接收輸入信號。數(shù)據(jù)源加載第一個復(fù)數(shù)數(shù)據(jù)樣點(diǎn)到FFT函數(shù)中,同時將sink_sop信號置高電平,表示輸入模塊的開始。在下一個時鐘周期,sink_sop信號被復(fù)位,并以自然順序加載后面的N-1個復(fù)輸人數(shù)據(jù)樣點(diǎn)。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
主站蜘蛛池模板: 韩国免费毛片 | 成人软件18免费 | 中美日韩在线网免费毛片视频 | 性久久久久久久久久 | www.99在线 | 男人和女人在床做黄的网站 | 日本一级特黄特色大片免费视频 | 一区二区三区影视 | 色哟哟国产成人精品 | 久久视频免费观看 | 久久久久久免费一区二区三区 | 99精品国产成人一区二区 | 国内成人精品亚洲日本语音 | 九九在线免费观看视频 | 国产在线视频h | 久久免费激情视频 | 在线观看成年人免费视频 | 久久精品视频免费观看 | 欧美成人性色生活片免费在线观看 | 狠狠干香蕉 | 国产成人精品男人的天堂538 | 福利视频美女国产精品 | 亚洲三级网 | free性丰满白嫩白嫩的hd | 天堂1在线观看 | 久久精品视频5 | 欧美成人综合在线观看视频 | 亚洲精品国精品久久99热 | 亚洲精品久久久久午夜三 | 欧美日韩高清不卡免费观看 | 日本成人在线视频网站 | 性感美女香蕉视频 | 美国毛片免费一级 | 国产精品高清全国免费观看 | 日本一二线不卡在线观看 | 久久久国产99久久国产久 | 精品久久网 | 日产一区两区三区 | 国产精品亚洲国产三区 | 国产免费a级片 | 欧美黄视频在线观看 |