關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > FFT在低功率微程序控制器中的應用

        FFT在低功率微程序控制器中的應用

        作者: 時間:2010-08-17 來源:網絡 收藏
        0 引言
        在以前,外圍設備是更大的微處理器如特定用途集成電路和DSP中的內存。現在,低微處理器包括了外圍設備,這樣就有機會在低功耗的情況下進行復雜的運算。本文介紹了在低的微處理器中執行快速傅里葉變換(),其中微處理器包括一周期的硬件乘法器。這個可以實時計算輸入電壓的頻譜。
        為了完成此任務,一個模數轉換器對輸入信號進行采樣然后傳輸到微處理器。微處理器再對樣本信號進行256點的,這樣就獲得輸入電壓的頻譜。為了測試其有效性,微處理器計算頻譜的幅值然后實時地傳輸給示波器。

        1 背景
        為了確定輸入樣本信號的頻譜信息,需要計算輸入樣本的離散傅里葉變換(DFT)。離散傅里葉變換定義為:

        式中:N是樣本點數;X(k)是頻譜,與x(n)代表輸入樣本。利用歐拉方程的一致性將這個求和公式中的輸入樣本與頻譜分離為它們的實部與虛部,可得以下方程式:

        因為輸入樣本只是考慮實部。式(2)與式(3)中的求和公式的第二項消失了,假設有N個樣本,直接計算式(2)、式(3)需要2N2次乘法及2N(N-1)次加法。因此256點輸入樣本的DFT將要求131072次乘法和130560次加法。
        已經出現了很多種算法。普通的以基為2的算法連續將DFT分解成2個更小的DFT。為了使其變成可能,N必須分解為2的整數冪。轉化為以2為基的FFT的步驟見圖1的蝶形計算。從圖1的蝶形計算中可觀察到,獲得基為2的FFT算法的解只需要(N/2)log2N次乘法與Nlog2N次加法。在圖l中的值WH通常認為是旋轉因子且能夠在執行FFT前計算得到。

        本文引用地址:http://www.104case.com/article/162918.htm


        在圖1中,FFT的輸入具有特殊的形式。它是具有位倒置下標的原始順序。因此,當計算基為2的N=8的FFT時,輸入數據的記錄順序要求為O(000b),1(001b),…,0(000b),4(100b),…。
        FFT是以正確的順序作為輸出。圖1同樣揭示了單一的蝶形計算的結果只是FFT的下一階段的輸入。因為計算是在適當的位置中完成的,舊值可以代替新獲得值且在計算N點的FFT只是需要2N個變量樣本(需要2N個變量是因為每一個變量值都有一個實部與虛部)。
        當完成FFT時,結果是以復數為記法的。式(4)和式(5)將復數表示形式轉變為以極坐標表示:

        在DSP的文章里介紹了很多關于DFT/FFT的優化方法,使其計算速度更快且需要的計算量更少,其中一個比較重要的優化方法(也可能是最容易執行的)。
        從觀察DFT中可以獲得,因為具有N點的實值信號的DFT是以X(N/2)為對稱的,因此有:


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 呼和浩特市| 喜德县| 太仆寺旗| 吉林市| 理塘县| 上杭县| 宣威市| 宁武县| 桐庐县| 汨罗市| 理塘县| 获嘉县| 平度市| 滁州市| 宜黄县| 综艺| 宣武区| 巴南区| 万安县| 贡山| 定结县| 余干县| 泊头市| 和平县| 扬中市| 镇远县| 宣城市| 比如县| 东丰县| 济南市| 会泽县| 和政县| 磐石市| 海门市| 鄂州市| 东辽县| 通辽市| 平原县| 凤凰县| 邓州市| 荆门市|