日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 物聯(lián)網(wǎng) > 《物聯(lián)網(wǎng)技術(shù)》雜志
[導(dǎo)讀]摘 要:針對(duì)實(shí)時(shí)高速信號(hào)處理要求,設(shè)計(jì)并實(shí)現(xiàn)了一種基于FPGA的高速流水線結(jié)構(gòu)的基4FFT處理器。根據(jù)各種不同基算法的運(yùn)算量、硬件面積和控制復(fù)雜度,選定按時(shí)間抽取的基4算法,同時(shí)采用單路延時(shí)反饋(Single-path Delay Feedback,SDF)流水線結(jié)構(gòu),提高了處理速度。通過(guò)Verilog HDL語(yǔ)言進(jìn)行模塊化描述和驗(yàn)證,結(jié)果表明,該FFT處理器具有較高性能。

引言

快速傅里葉變換 (Fast Fourier Transformation,F(xiàn)FT) 作為時(shí)域和頻域轉(zhuǎn)化的基本運(yùn)算,是數(shù)字譜分析的必要前提。FFT方法是信號(hào)處理領(lǐng)域的核心算法之一,它廣泛應(yīng)用于雷達(dá)信號(hào)處理、觀測(cè)、數(shù)字通信、數(shù)據(jù)變換、定時(shí)定位處理、無(wú)線通訊、圖像處理等領(lǐng)域。為便于硬件實(shí)現(xiàn),F(xiàn)FT 算法常采用分級(jí)運(yùn)算結(jié)構(gòu)。如今的 FFT 大多采用并行結(jié)構(gòu),但其運(yùn)算速度往往受到數(shù)據(jù)帶寬的限制,因而需要增加成倍的存儲(chǔ)單元才能滿足速度要求。本文對(duì) FFT 算法進(jìn)行了分析,基于節(jié)省運(yùn)算量、減少硬件面積和提高處理速率的考慮,給出了一個(gè)基于 FPGA的高速流水線結(jié)構(gòu)的基 4FFT 處理器的設(shè)計(jì)方法。

1 基 4FFT 算法

FFT 算法的基本思想是 :利用 DFT 系數(shù)的特性 ( 即周期性、對(duì)稱性和可約性 ) 來(lái)合并 DFT 運(yùn)算中的某些項(xiàng),把長(zhǎng)序列 DFT 變成短序列 DFT,從而減少其運(yùn)算量,達(dá)到提高速度的目的。一般的 FFT 算法可以分為兩類 :第一類對(duì)時(shí)間,對(duì)時(shí)間序列 x(n) 進(jìn)行逐次分解,稱為時(shí)域抽取 FFT 法(Decima-tion-In-Time-FFT,DIT-FFT);第二類對(duì)頻率,主要對(duì)傅里葉變換序列 X(k) 進(jìn)行分解,稱為頻域抽取 FFT 法 (Decimation-In-Frequency-FFT,DIF-FFT)。本設(shè)計(jì)采用 DIT-FFT 法進(jìn)行設(shè)計(jì)。

1.1 基 4 DIT-FFT 算法

DFT 將時(shí)域信號(hào)變換成頻域信號(hào)后,長(zhǎng)度為 N 的有限長(zhǎng)序列 x(n) 的離散傅里葉變換可以表示為 :

基于FPGA的高速基4FFT設(shè)計(jì)與實(shí)現(xiàn)

基 4 DIT-FFT 算法的基本原理是 :將一個(gè) N 點(diǎn)的 FFT分解為 4 個(gè) N/4 點(diǎn)的序列,再分別進(jìn)行 DFT 計(jì)算 ;然后再將每個(gè)N/4點(diǎn)進(jìn)一步分解為 4 個(gè)N/16點(diǎn)的計(jì)算,依此類推。同理,對(duì)于多點(diǎn)數(shù)還可以進(jìn)行多級(jí)分解。其基 4 蝶形運(yùn)算如下:

基于FPGA的高速基4FFT設(shè)計(jì)與實(shí)現(xiàn)

其中,X(K), X(k+N/4), X(k+2N/4), X(k+3N/4) 是蝶形運(yùn)算后的結(jié)果。基 4 蝶形運(yùn)算單元可以用圖 1 表示。

基于FPGA的高速基4FFT設(shè)計(jì)與實(shí)現(xiàn)

1.2 算法比較與選擇

一般常用乘法次數(shù)和加法次數(shù)來(lái)衡量一個(gè)算法的性能。例如,對(duì)于基 4FFT 算法的描述為 :每個(gè)蝶形運(yùn)算為 3 次復(fù)數(shù)乘法,每級(jí)共有 N/4 個(gè)基 4 蝶形單元,共有 m 級(jí) ( 其中,N=4m)。表 1 所列是 4 種常用基數(shù)算法運(yùn)算量的比較,表中,l=log2N。

基于FPGA的高速基4FFT設(shè)計(jì)與實(shí)現(xiàn)

一般情況下,基數(shù)越高,總計(jì)算量就越少,但是,控制復(fù)雜性也會(huì)相應(yīng)提高。就復(fù)雜性而言,基 2 算法最容易控制,操作簡(jiǎn)單 ;基 4 算法控制稍許復(fù)雜,但與基 2 相差不大 ;基 8和基 16 算法的控制復(fù)雜度與基 4 相比,難度會(huì)增大很多。綜合考慮運(yùn)算量與控制復(fù)雜度,本文選擇基 4 算法來(lái)實(shí)現(xiàn)設(shè)計(jì)。

2 基 4 FFT 算法的硬件實(shí)現(xiàn)

現(xiàn)今的 FFT 算法大多采用并行結(jié)構(gòu)來(lái)實(shí)現(xiàn)。由于并行結(jié)構(gòu)的數(shù)據(jù)輸入大多是串行連續(xù)輸入的,需要進(jìn)入串并轉(zhuǎn)換,這樣會(huì)浪費(fèi)大量時(shí)間,尤其是在一些實(shí)時(shí)高速處理的場(chǎng)合,并行結(jié)構(gòu)難以適應(yīng)。而流水線結(jié)構(gòu)在實(shí)時(shí)性和連續(xù)性等方面具有天然的優(yōu)勢(shì),所以,本設(shè)計(jì)采用流水線結(jié)構(gòu)來(lái)完成設(shè)計(jì)。

FFT 算法的流水線結(jié)構(gòu)一般分為 3 種:第一種是單路延時(shí)轉(zhuǎn)接器結(jié)構(gòu) (Single-path Delay Commutator,SDC) ;第二種是多路延時(shí)轉(zhuǎn)接器結(jié)構(gòu) (Multi-path Delay Commutator,MDC) ;第三種是單路延時(shí)反饋轉(zhuǎn)接器結(jié)構(gòu) (Single-path Delay Feedback,SDF)。表 2 所列是流水線結(jié)構(gòu) FFT 各種指標(biāo)的比較,其中,k=log4N。

基于FPGA的高速基4FFT設(shè)計(jì)與實(shí)現(xiàn)

從表 2 可以看出,在運(yùn)算量上,SDC 占優(yōu)勢(shì),但控制復(fù)雜度較高。綜合考慮運(yùn)算量、存儲(chǔ)單元及控制復(fù)雜度,SDF是最優(yōu)的選擇。因此,本設(shè)計(jì)采用 SDF 結(jié)構(gòu)。

本文設(shè)計(jì)實(shí)現(xiàn)的一個(gè) 1024 點(diǎn)流水線結(jié)構(gòu)基 4-SDF FFT的結(jié)構(gòu)框圖如圖 2 所示。

2.1 蝶形運(yùn)算單元

可以將蝶形運(yùn)算分割為下式 :

基于FPGA的高速基4FFT設(shè)計(jì)與實(shí)現(xiàn)

其中,基于FPGA的高速基4FFT設(shè)計(jì)與實(shí)現(xiàn)是蝶形運(yùn)算后一狀態(tài)的結(jié)果。經(jīng)過(guò)分割后,可以看出,整個(gè)蝶形運(yùn)算只有 a+b, a-b, a+jb, a-jb 四種計(jì)算,分別采用復(fù)數(shù)加法與減法器就可以完成蝶形運(yùn)算,從而可大大簡(jiǎn)化設(shè)計(jì)和實(shí)現(xiàn)的復(fù)雜度。圖 3 與圖 4 分別是蝶形單元所用到的復(fù)數(shù)加法器與減法器的框圖。

基于FPGA的高速基4FFT設(shè)計(jì)與實(shí)現(xiàn)

基于FPGA的高速基4FFT設(shè)計(jì)與實(shí)現(xiàn)

2.2高效乘法器

一般兩個(gè)復(fù)數(shù)分別為A=a+jb, B=C+jd的復(fù)數(shù)相乘的計(jì) 算過(guò)程為:

AB=(a+j b)(c+j d)=(ac-bd)+j(ad+bc)=Fre+j Yim                      (4)

其中,Yre為 AB 結(jié)果的實(shí)部,Yim為 AB 的虛部。

顯然,一次復(fù)數(shù)乘法共需要4次實(shí)數(shù)乘法和3次實(shí)數(shù)加 法,但是,如果進(jìn)行一定的變換,就可以減少實(shí)數(shù)乘法的次數(shù)。 即:

Yx=ac-bd=ac-ad+ad-bd=(c-d)a+(a-b)d                                      (5)

Yim=ad+bc=ad-bd+bd+bc=(c+d)b+(a-b)d                                 (6)

在計(jì)算前,將c-d,c+d,a-b的結(jié)果放在存儲(chǔ)單元中,這樣, 一次復(fù)數(shù)乘法就只需要3次實(shí)數(shù)乘法與5次實(shí)數(shù)加法,顯然 會(huì)大大節(jié)約硬件開銷,同時(shí)也提高了計(jì)算速度。

本設(shè)計(jì)采用有符號(hào)數(shù)BOOTH編碼的乘法器,根據(jù)數(shù)據(jù) 量化,利用10位的被乘數(shù)和10位的乘數(shù)進(jìn)行運(yùn)算。其計(jì)算 結(jié)果乘積需要經(jīng)過(guò)飽和,最后取10位結(jié)果保留。

2.3旋轉(zhuǎn)因子存儲(chǔ)

本設(shè)計(jì)需要將旋轉(zhuǎn)因子向量= cos i +jsin i的實(shí)部和 虛部存儲(chǔ)在寄存器中,并利用查找表方式實(shí)現(xiàn)向量旋轉(zhuǎn)運(yùn)算。 這樣只需要取在1/8圓內(nèi),即[0,…,n/4]之間的旋轉(zhuǎn)因子, 其他的旋轉(zhuǎn)因子都是這1/8圓周區(qū)域內(nèi)旋轉(zhuǎn)因子的變換。按照 旋轉(zhuǎn)因子的周期性和對(duì)稱性,其他區(qū)域的旋轉(zhuǎn)因子,可通過(guò) 交換實(shí)部虛部和改變正負(fù)號(hào)來(lái)得到。

例如:設(shè)點(diǎn)A為[0,…,”4]的一個(gè)旋轉(zhuǎn)因子,假設(shè)它 寫成矢量形式是A=cosx+jsinx,那么,映射到4個(gè)象限內(nèi)的 另外7個(gè)投影則是:

sinx+jcosx, -cosx +jsinx, -sinx +jcosx, -cosx+j(-sinx), -sinx+j(-cosx), sinx+j(-cosx), cosx+j(-sinx)

旋轉(zhuǎn)因子一共有8個(gè)數(shù)據(jù)。只需要將這樣的一個(gè)數(shù)據(jù)的 實(shí)部和虛部的數(shù)值(不包括符號(hào))分別存儲(chǔ)在寄存器同一個(gè)地 址的數(shù)據(jù)存儲(chǔ)單元里,就可以在取出這個(gè)數(shù)據(jù)后,通過(guò)變換 安排好它的實(shí)部和虛部,然后重新安排它的正負(fù)號(hào),就可得到 其他在該級(jí)運(yùn)算中所需要的另外7個(gè)旋轉(zhuǎn)因子。

2.4控制單元

每級(jí)蝶形運(yùn)算單元都有自己的控制單元,這主要是控制 蝶形運(yùn)算單元的工作模式,判斷是否進(jìn)入流水操作,操作數(shù) 的選取,RAM的選通,復(fù)數(shù)乘法的選通,以及產(chǎn)生RAM和 旋轉(zhuǎn)因子的地址。另外,控制單元還需要產(chǎn)生使能信號(hào),以供 下一級(jí)的輸入使用。

對(duì)于蝶形單元的控制,主要是控制其工作模式。在蝶形 單元中,輸入數(shù)據(jù)先存儲(chǔ)到第一個(gè)存儲(chǔ)單元中,同時(shí)從第一個(gè) 存儲(chǔ)單元的相同地址中取出上一次蝶形運(yùn)算的結(jié)果,然后把第 二、三段數(shù)據(jù)存儲(chǔ)到第二、三個(gè)存儲(chǔ)單元中,同時(shí)讀出相應(yīng)的 結(jié)果;當(dāng)最后的一段數(shù)據(jù)到來(lái)時(shí),從存儲(chǔ)單元中讀取相應(yīng)的 數(shù)據(jù)進(jìn)行蝶形運(yùn)算,同時(shí)輸出第一個(gè)運(yùn)算結(jié)果,并把其他3 個(gè)結(jié)果同址寫回三個(gè)存儲(chǔ)單元相對(duì)應(yīng)的位置。

對(duì)于旋轉(zhuǎn)因子的控制,由于在寄存器中的旋轉(zhuǎn)因子都是 無(wú)符號(hào)數(shù),因此在進(jìn)行復(fù)數(shù)乘法之前,需要根據(jù)控制單元的 指示,重新安排它的正負(fù)號(hào)。

2.5輸出數(shù)據(jù)地址轉(zhuǎn)換

在系統(tǒng)中,F(xiàn)FT輸出的數(shù)據(jù)也許是給下一級(jí)使用。特別是 在OFDM系統(tǒng)中,也需要找回原來(lái)的順序。由于輸出數(shù)據(jù)的 地址是亂序,所以需要有地址產(chǎn)生模塊給數(shù)據(jù)產(chǎn)生地址,以 方便后級(jí)使用。輸出數(shù)據(jù)地址轉(zhuǎn)換應(yīng)按照00、01、10、11輸入, 并按照11、10、01、00順序輸出。

3仿真、綜合及FPGA實(shí)現(xiàn)

本文設(shè)計(jì)實(shí)現(xiàn)了一個(gè)1 024點(diǎn)的基4 FFT處理器,數(shù)據(jù) 處理精度為10位。采用Verilog HDL語(yǔ)言描述整個(gè)設(shè)計(jì),并 編寫測(cè)試平臺(tái)。筆者利用Modelsim SE 6.5對(duì)本文的設(shè)計(jì)進(jìn)行 了功能仿真驗(yàn)證,運(yùn)算結(jié)果與Matlab計(jì)算的結(jié)果一致,從而 證明了本文算法的正確性。

在FPGA實(shí)現(xiàn)方面,本文選用Xilinx的Spartan-3E-XC- 3S500E芯片,該器件的內(nèi)部含有4個(gè)數(shù)字時(shí)鐘管理器(DCM), 73 kB 的分布 RAM, 360 kB 的 block RAM, 4 個(gè) 18X18 的專 用乘法器(Dedicated Multipliers)單元,其中乘法器的工作頻 率可達(dá)到300 MHz。綜合布線工具均采用Xilinx的設(shè)計(jì)平臺(tái)ISE9.1,表3所列是其該處理器與一些現(xiàn)有文獻(xiàn)中的FFT處 理器核的性能比較,可見本設(shè)計(jì)具有一定的優(yōu)勢(shì)。

基于FPGA的高速基4FFT設(shè)計(jì)與實(shí)現(xiàn)

4結(jié)語(yǔ)

本文通過(guò)采用SDF流水線結(jié)構(gòu)設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)基于 FPGA的高速基4 FFT處理器,F(xiàn)PGA內(nèi)部資源消耗明顯減少, 并保持了比較高的工作頻率,能滿足信號(hào)處理系統(tǒng)實(shí)時(shí)處理的 要求。從實(shí)現(xiàn)結(jié)果可以看出,與并行結(jié)構(gòu)的FFT處理器相比, 流水線結(jié)構(gòu)的處理速度更快。該處理器可適用于超高速場(chǎng)合 以及需要密集型數(shù)字信號(hào)處理的領(lǐng)域,比如數(shù)字通信、數(shù)據(jù) 變換、定時(shí)定位處理、無(wú)線通訊、圖像處理等。

20210915_6141736b491a4__基于FPGA的高速基4FFT設(shè)計(jì)與實(shí)現(xiàn)

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過(guò)流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問(wèn)題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問(wèn)題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉