《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 一種FFT逆序輸出整序的時間優化方法
一種FFT逆序輸出整序的時間優化方法
2015年微型機與應用第14期
王 鋒,彭華仁
(中國電子科技集團公司第四十一研究所,山東 青島 266555)
摘要: 在數字信號處理中,FFT運算具有非常重要的作用。傳統FFT算法具有原位計算的特點,原位FFT算法在自然序輸入時輸出呈逆序狀態,因此為了得到自然序的結果數據,就必須對全部FFT輸出數據進行整序。使用查找表整序是從FFT的逆序輸出結果中直接讀取自然序結果數據。試驗證明,在獲取全部FFT結果數據時,查找表整序相比傳統整序在時間效率上可以提高一倍,并且在連續FFT分析的情況下,優勢會更明顯。
關鍵詞: FFT 逆序 整序 查找表
Abstract:
Key words :

  摘  要: 在數字信號處理中,FFT運算具有非常重要的作用。傳統FFT算法具有原位計算的特點,原位FFT算法在自然序輸入時輸出呈逆序狀態,因此為了得到自然序的結果數據,就必須對全部FFT輸出數據進行整序。使用查找表整序是從FFT的逆序輸出結果中直接讀取自然序結果數據。試驗證明,在獲取全部FFT結果數據時,查找表整序相比傳統整序在時間效率上可以提高一倍,并且在連續FFT分析的情況下,優勢會更明顯。

  關鍵詞: FFT;逆序;整序;查找表

0 引言

  在原位FFT運算過程中,當輸入數據為自然序時,由于FFT算法過程對輸入數據的多次“奇偶抽取”,使得輸出數據呈逆序狀態,即輸出數據的索引和自然序索引的二進制表示呈相互位逆序狀態[1]。因此必須對輸出數據進行整序,才能得到自然序的結果。即一次FFT分析包括FFT計算和對FFT逆序輸出的整序。FFT分析幾乎都在DSP處理器中完成,DSP處理器通過內部CPU逐條執行軟件指令來完成各種運算和邏輯功能[2]。因此,在DSP內執行一次FFT算法,必須順序執行FFT計算和整序操作[3-5]。研究者為提升整序效率進行了多種改進,有的是對整序過程中的逆序數計算進行了多種改進,比如逆序數生成法[6-7]和分組數據交換法[8],但這些改進只關注了整序過程中的逆序數計算這一個方面;有的將逆序數計算與整序結合在一起,比如任意基的快速整序算法[9-10],但這種方法理解起來很困難[11]。

  在實際應用中,所感興趣的目標FFT數據,無論是全部FFT數據還是部分數據,都可看作全部自然序的FFT結果中的一段,那么可以設法從FFT逆序輸出中直接獲取這一段目標數據。即首先明確目標數據段在整序后的FFT結果中的位置,計算這些位置索引值的逆序數并存儲在一個查找表中,然后根據此查找表就可以在FFT的逆序輸出數據中直接提取目標數據。采用此算法將逆序數的計算從整序過程中剝離,簡化整序過程,提高整序效率。使用查找表整序的方式易于理解,操作簡單,并且在需要進行連續FFT分析的情況下會體現出很大的優勢。

1 FFT算法的原位計算的特點

001.jpg

  圖1是8點的時域抽取基-2的原位FFT算法流程,輸入數據是自然序的,輸出數據為逆序狀態[4]。

  對圖1中FFT的輸入數據和輸出數據的索引變化在表1中予以反映。

004.jpg

  由表1可見,原位FFT的輸入數據為自然序,輸出數據為逆序,并且將自然序索引二進制表示的比特排列順序完全逆過來,就得到逆序索引的二進制表示[5]。因此為了得到自然序的FFT結果,就需要對FFT的逆序輸出結果進行整序。傳統的整序算法是在原位FFT計算完畢后依自然序遍歷每一個輸出數據,先通過“比特倒序”運算計算自然序索引的逆序數,此逆序數就是輸出數據的正確索引值,再以逆序數為索引調整這個FFT數據的位置,最后得到全部自然序的FFT結果數據。在DSP內只能使用高級語言編碼實現位逆序時,傳統做法是利用產生逆序數的十進制運算規律,采用循環迭代計算逆序數[4-5]。

  一次傳統的N點原位FFT分析需要計算N個索引值的逆序數才能得到全部的自然序結果,進而才能獲取自然序結果中的某一段目標FFT數據。對于需要連續進行FFT分析的情況,無論是獲取全部FFT數據還是一段FFT數據,每一次N點FFT分析都需要重新計算一遍N個索引值的逆序數。對于重復計算,可以只計算一次,因此可以優化FFT分析中的整序過程。

2 基于查找表整序算法

  無論所需要的目標數據是全部FFT結果還是部分FFT結果,都可以事先計算目標數據在整個FFT結果中位置索引的逆序數,并將這些逆序數存儲在一個查找表中,然后根據此查找表在FFT逆序輸出數據中直接提取自然序的目標數據。在需要對信號進行連續FFT分析的環境中,查找表的計算可以在FFT分析前完成,并且只需計算一次。這種整序方式可以省去FFT分析過程中計算逆序數的時間,縮短單次FFT分析時間,提高單位時間內的FFT分析次數,提高信號分析效率。

  設N點原位FFT運算,對目標數據在全部自然序的FFT結果中的位置索引進行逆序操作,由于自然序和逆序索引的二進制表示之間是比特倒置關系,于是需要將每個自然序索引值二進制表示的最低位移向最高位,次低位移向次高位直到完成這個自然序索引值的位逆序過程。將一個索引值的位逆序函數設為BitReverse(intiSourceIndex,intiBitNum),其返回值為一個逆序數;所獲取的查找表設為IndexArray。位逆序的計算流程圖如圖2所示。

002.jpg

  圖2中,iSourceIndex是待逆序的索引值,iBitNum是FFT計算點數的二進制位數,iDesIndex是BitReverse()函數返回的逆序數。構造FFT結果的數據查找表的流程圖如圖3所示。

003.jpg

  圖3中,iStart為目標數據在整個FFT自然序結果中的起始位置,iDataLen為目標數據的長度,由BitReverse()函數的返回值iDesIndex構成一個位置查找表IndexArray。于是,通過查找表從位置索引為iDesIndex的FFT逆序輸出中獲取自然序的目標結果數據。相比于傳統的整序方式,使用查找表整序可以省去FFT分析過程中逆序數的計算過程。下面的試驗在FFT計算完畢后,統計了傳統整序和使用查找表整序所消耗的時鐘周期個數,進而比較兩種整序方式的時間效率。

3 試驗

  試驗環境是TI公司提供的高效C編譯器和集成開發環境Code Composer Studio,選擇C67xx CPU Cycle Accurate Simulator處理器。在獲得相同整序結果的前提下,比較傳統整序和使用查找表整序的耗時情況。試驗中,N點自然序數據作為FFT的輸入,目標數據為全部FFT結果數據。在FFT計算完畢后,對FFT的逆序輸出數據采用不同的整序方式得到自然序結果數據,統計兩種整序方式所消耗的時鐘周期數,并通過對比時鐘周期數得到兩種整序過程在時間效率上的差別。

  記錄N點FFT中傳統整序和查找表整序所消耗的時鐘周期個數,并計算后者與前者的百分比以觀察時間效率的改善情況。運行情況記錄如表2所示。

005.jpg

  由表2可見,單獨就整序過程而言,使用查找表整序比傳統的整序在時間效率上可以提高一倍多。如果僅需要得到某一段FFT結果數據,傳統整序首先要對N點FFT的全部逆序輸出進行整序,然后再截取目標數據,而使用查找表整序則可以從FFT逆序輸出數據中直接獲取任意長度的目標數據,并且目標數據的長度越短,查找表長度越短,獲取目標數據的時間效率就越高。

  對于N點原位FFT運算,傳統整序需要計算N點索引的逆序數。使用查找表進行整序,假設目標數據長度為M(M≤N),則查找表內索引個數為M,索引數據類型設為32 bit整型,那么所需分配的空間為M×32 bit。計算查找表時可以在FFT分析前進行,這部分時間不占用FFT分析時間。對于單次FFT分析,增加M(M≤N)點數據空間可以為FFT計算節省N次逆序數的計算時間;對于連續FFT分析,不妨設連續分析n次,可以節省n×N次逆序數的計算時間。

4 結論

  本文在充分理解原位FFT的計算特點后,在FFT分析前,對目標數據在全部FFT結果中的位置索引計算逆序數,并將計算結果存儲為一個查找表,然后通過此查找表從FFT的逆序輸出中獲得自然序結果。試驗結果證明,相比于傳統的整序,使用查找表整序時間高效并且簡單實用,具有普遍的實用價值。比如,在軟件無線電領域,一般的無線電信號帶寬比較窄,頻率范圍比較寬,通常使用帶通采樣,因此對無線電信號進行FFT計算時,只關心某一段結果數據;并且在需要對無線電信號進行連續監測的環境中,系統希望快速獲取每一次的FFT分析結果,在這種情況下,使用查找表整序處理FFT的逆序輸出就具有很大的優勢。于是,使用查找表整序節省了FFT分析的整序時間,從而提高了FFT分析的時間效率。

參考文獻

  [1] 方志紅,張長耀,俞根苗.利用逆序循環實現FFT運算中倒序算法的優化[J].信號處理,2004,20(5):533-535.

  [2] 劉衛新.實現FFT整序方法的研究[D].南京:南京理工大學,2003.

  [3] 高麗,劉衛新,張學智.FFT標準移序算法的優化[J].探測與控制學報,2004,26(2):62-64.

  [4] 丁玉美,高西全.數字信號處理[M].西安:西安電子科技大學出版社,1995.

  [5] 姚天任.數字信號處理[M].北京:清華大學出版社,2011.

  [6] 張學智,蔡暉.快速實現FFT的逆序方法[J].探測與控制學報,2001,23(2):62-64.

  [7] 喬春明,朱冰蓮.快速傅里葉變換中逆序數計算的一種快速算法[J].信息技術,2011(8):164-165.

  [8] 張學智,毛俊.無須逆序數的FFT整序的一個新方法[J].探測與控制學報,2002,24(2):61-63.

  [9] 林水生,黃順吉.一種實現任意基的快速整序算法[J].電子科技大學學報,1998,27(4):343-346.

  [10] 林水生,黃順吉.改進的任意基FFT整序算法[J].信號處理,1999,15(2):163-165.

  [11] 賈淵,王俊波,姬長英.FFT快速整序算法的對比、改進及實現[J].電子科技大學學報,2009,38(2):292-295.


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美激情视频给我| 极品少妇一区二区三区精品视频 | 久久狠狠亚洲综合| 亚洲欧美国产一区二区三区| 中文精品视频| 亚洲无限av看| 亚洲欧美国产77777| 亚洲欧美日本另类| 香蕉久久夜色精品国产使用方法| 亚洲欧美日韩国产综合在线| 亚洲欧美日韩在线播放| 亚洲永久精品国产| 亚洲欧美经典视频| 欧美一区二区播放| 久久精品视频播放| 老**午夜毛片一区二区三区| 麻豆成人在线观看| 牛人盗摄一区二区三区视频| 欧美激情一区二区三级高清视频| 欧美乱在线观看| 欧美天堂亚洲电影院在线观看| 国产精品videossex久久发布| 国产精品久久国产三级国电话系列 | 亚洲美女诱惑| 中日韩午夜理伦电影免费| 亚洲一区二区三区四区五区黄| 亚洲一区二区三区涩| 香蕉久久夜色精品| 久久人人97超碰人人澡爱香蕉| 男人的天堂亚洲| 欧美日韩国产色综合一二三四 | 亚洲欧美日本国产有色| 小处雏高清一区二区三区| 久久福利资源站| 美女诱惑黄网站一区| 欧美精品系列| 国产精品久久九九| 国产性色一区二区| 亚洲第一天堂无码专区| 99ri日韩精品视频| 午夜精品一区二区三区在线播放| 久久www成人_看片免费不卡| 亚洲国产成人精品视频| 亚洲免费播放| 欧美亚洲专区| 蜜桃精品久久久久久久免费影院| 欧美日韩国产不卡| 国产欧美日本| 亚洲黄色免费| 亚洲免费视频观看| 亚洲激情第一区| 亚洲一区二区三区精品在线| 久久久久9999亚洲精品| 欧美激情国产日韩精品一区18| 国产精品乱码人人做人人爱| 一区二区在线观看视频| 99精品视频免费全部在线| 香蕉av福利精品导航| 日韩天堂在线观看| 欧美综合第一页| 欧美精品在线免费播放| 国产欧美精品xxxx另类| 91久久午夜| 午夜视频精品| 中文av字幕一区| 久久噜噜亚洲综合| 欧美少妇一区二区| 激情久久综艺| 亚洲一区二区三区三| 亚洲精品你懂的| 欧美中文在线观看| 欧美日韩一区二区在线观看视频| 韩国av一区二区三区在线观看| 一区二区精品在线| 亚洲电影中文字幕| 先锋a资源在线看亚洲| 欧美成人精品三级在线观看| 国产伦精品一区二区三区视频孕妇 | 亚洲视频网在线直播| 亚洲国产精品一区二区尤物区| 亚洲午夜激情网页| 免费日韩av电影| 国产目拍亚洲精品99久久精品| 99re6这里只有精品| 亚洲国内在线| 久久精品一区二区三区不卡牛牛 | 亚洲欧美日韩在线播放| 日韩视频免费看| 久久综合九色综合久99| 国产精品视频一二| 99re6这里只有精品| 亚洲精品乱码久久久久久按摩观| 久久久精品国产免大香伊 | 亚洲日韩第九十九页| 欧美在线视频播放| 欧美在线地址| 国产精品久久久久久亚洲调教 | 亚洲黄色av一区| 久久经典综合| 国产精品推荐精品| 亚洲天堂偷拍| 亚洲一区制服诱惑| 欧美日韩精品久久久| 亚洲人成在线观看一区二区| 亚洲黄色在线| 久久夜色精品亚洲噜噜国产mv| 国产一二三精品| 亚洲欧美国产视频| 午夜老司机精品| 国产精品久久久久一区二区三区| 亚洲美女毛片| 一区二区欧美日韩视频| 欧美经典一区二区三区| 亚洲国产精品精华液网站| 亚洲国产你懂的| 美玉足脚交一区二区三区图片| 韩国精品久久久999| 欧美一级免费视频| 久久精品国内一区二区三区| 国产精品一区二区三区成人| 亚洲与欧洲av电影| 小黄鸭精品aⅴ导航网站入口| 国产精品久久久一区麻豆最新章节| 一区二区三区日韩欧美精品| 亚洲一级片在线观看| 国产精品国产三级国产aⅴ入口| 亚洲图片在区色| 午夜精品在线看| 国产老女人精品毛片久久| 午夜日韩在线| 久久永久免费| 黄色精品网站| 亚洲人成在线免费观看| 欧美激情在线有限公司| 亚洲免费不卡| 亚洲欧美欧美一区二区三区| 国产伦理一区| 亚洲电影第1页| 欧美激情一区二区三级高清视频| 亚洲美女少妇无套啪啪呻吟| 亚洲一区二区视频在线观看| 国产精品视频免费一区| 欧美影院在线播放| 美乳少妇欧美精品| 亚洲六月丁香色婷婷综合久久| 亚洲免费小视频| 国产亚洲高清视频| 亚洲国产欧美在线人成| 欧美精品在线免费| 亚洲天堂激情| 久久久久久久一区二区| 亚洲第一中文字幕| 亚洲视频999| 国产日韩欧美在线播放| 亚洲黄色av| 国产精品久久久久aaaa九色| 欧美中文在线免费| 欧美极品欧美精品欧美视频| 中文在线一区| 久久免费视频一区| 亚洲精品一区二区在线| 午夜视频一区二区| 亚洲国产成人不卡| 性欧美大战久久久久久久久| 激情欧美丁香| 亚洲亚洲精品在线观看| 国产一区二区成人| 亚洲美女毛片| 国产日韩一区二区三区| 91久久亚洲| 国产精品有限公司| 亚洲人线精品午夜| 国产精品亚洲综合色区韩国| 91久久精品日日躁夜夜躁国产| 国产精品毛片大码女人| 亚洲国产欧美一区| 国产精品久久久久天堂| 最新国产乱人伦偷精品免费网站 | 国产精品一区二区三区观看| 亚洲欧洲视频| 国产日韩欧美精品一区| 一区二区高清在线观看| 国产一区二区精品久久91| 日韩视频在线免费| 国产亚洲亚洲| 亚洲午夜av在线| 在线看国产一区| 欧美一区二区播放| 亚洲老板91色精品久久| 久久久久久久久久码影片| 一区二区三区**美女毛片| 美乳少妇欧美精品| 午夜日韩av| 国产精品对白刺激久久久| 亚洲精品免费看| 国外视频精品毛片| 亚洲欧美综合| 99热在这里有精品免费| 欧美大片91| 久久精品国产69国产精品亚洲|