關 閉

        新聞中心

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

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

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

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 栾川县| 改则县| 舞阳县| 连南| 来宾市| 宣化县| 宝鸡市| 开原市| 寻乌县| 阿坝县| 读书| 霍城县| 乐清市| 泉州市| 昆山市| 柳林县| 兴隆县| 法库县| 涿鹿县| 乐都县| 万州区| 邵阳县| 辰溪县| 望奎县| 大厂| 西和县| 高密市| 台东市| 长汀县| 车致| 茌平县| 任丘市| 昌邑市| 华阴市| 锦州市| 甘孜县| 盐池县| 黄山市| 日照市| 山东省| 监利县|