基於TMS320LF2407的FFT算法的實現

2021-01-10 電子產品世界

1 快速傅立葉變換的原理

本文引用地址:http://www.eepw.com.cn/article/150397.htm

  非周期性連續時間信號x(t)的傅立葉變換可以表示為

  式中計算出來的是信號x(t)的連續頻譜。但是,在實際的控制系統中能夠得到的是連續信號x(t)的離散採樣值x(nT)。因此需要利用離散信號x(nT)來計算信號x(t)的頻譜。

  有限長離散信號x(n),n=0,1,…,N-1的DFT定義為:

  可以看出,DFT需要計算大約N2次乘法和N2次加法。當N較大時,這個計算量是很大的。利用WN的對稱性和周期性,將N點DFT分解為兩個N/2點的 DFT,這樣兩個N/2點DFT總的計算量只是原來的一半,即(N/2)2+(N/2)2=N2/2,這樣可以繼續分解下去,將N/2再分解為N/4點 DFT等。對於N=2m 點的DFT都可以分解為2點的DFT,這樣其計算量可以減少為(N/2)log2N次乘法和Nlog2N次加法。圖1為FFT與DFT-所需運算量與計算點數的關係曲線。由圖可以明顯看出FFT算法的優越性。

  將x(n)分解為偶數與奇數的兩個序列之和,即

  x1(n)和x2(n)的長度都是N/2,x1(n)是偶數序列,x2(n)是奇數序列,則

  其中X1(k)和X2(k)分別為x1(n)和x2(n)的N/2點DFT。由於X1(k)和X2(k)均以N/2為周期,且WN k+N/2=-WN k,所以X(k)又可表示為:

  上式的運算可以用圖2表示,根據其形狀稱之為蝶形運算。依此類推,經過m-1次分解,最後將N點DFT分解為N/2個兩點DFT。圖3為8點FFT的分解流程。


  FFT算法的原理是通過許多小的更加容易進行的變換去實現大規模的變換,降低了運算要求,提高了與運算速度。FFT不是DFT的近似運算,它們完全是等效的。


相關焦點

  • 基於TMS320LF2407的FFT算法的實現及應用
    由圖可以明顯看出FFT算法的優越性。 將x(n)分解為偶數與奇數的兩個序列之和,即 FFT算法的原理是通過許多小的更加容易進行的變換去實現大規模的變換,降低了運算要求,提高了與運算速度。FFT不是DFT的近似運算,它們完全是等效的。
  • 基於TMS320LF2407A DSP的PFC級電路的原理與
    基於TMS320LF2407A DSP的PFC級電路的原理與 佚名 發表於 2010-04-20 13:35:35 基於TMS320LF2407A DSP的PFC級電路的原理與設計  1、引言
  • 基於TMS320LF2407A DSP的PFC級電路的原理
    本文以由德州儀器TMS320LF2407A 16位定點DSP控制的平均電流型功率因數校正(PFC)升壓變換器為例,來說明與傳統模擬設計方案存在的不同。在模擬控制領域不同的控制環路參數,必須重新定義到它們的數字履行上,然後進行環路分析,並給出要求的電壓和電流環路補償器,最後介紹這些補償器的分立化及它們在軟體中的執行。
  • TMS320LF2407A DSP的PFC級電路的原理與設計
    本文以由德州儀器TMS320LF2407A 16位定點DSP控制的平均電流型功率因數校正(PFC)升壓變換器為例,來說明與傳統模擬設計方案存在的不同。  2、TMS320LF2407A控制的PFC級電路  圖1所示為由TMS320LF2407A控制的PFC級電路。
  • 基於TMS32OLF24O7的FFT算法的實現
    FFT算法的原理是通過許多小的更加容易進行的變換去實現大規模的變換,降低了運算要求,提高了與運算速度。FFT不是DFT的近似運算,它們完全是等效的。2 快速傅立葉算法在TMS320LF2407上的實現根據FFT算法的特點,處理器要在一個指令周期內完成乘和累加的工作,因為複數運算要多次查表相乘才能實現。
  • 基於TMS320DM642電子穩像算法的實現
    摘要:介紹了一種解決視頻圖像抖動問題的電子穩像方法,系統利用灰度投影算法和德州儀器公司的定點數位訊號處理器晶片TMS320DM642實現電子穩像。文中提出了電子穩像性能的基本要求,介紹了穩像的基本原理,根據要求選擇了穩像算法,從而設計了系統的硬體框圖,並完成了算法的仿真。實驗結果表明,該算法穩效果好,且達到準確性要求。關鍵詞:電子穩像;灰度投影算法;數位訊號處理器 電子穩像集合了計算機、數字圖像處理和數位訊號處理等技術為一體的新一代實現圖像序列穩定的綜合性技術。實時性和準確性是衡量電子穩像系統的兩個重要指標。
  • 用FPGA實現FFT算法(圖)
    當n較大時,因計算量太大,直接用dft算法進行譜分析和信號的實時處理是不切實際的。快速傅立葉變換(fast fourier transformation,簡稱fft)使dft運算效率提高1~2個數量級。其原因是當n較大時,對dft進行了基4和基2分解運算。fft算法除了必需的數據存儲器ram和旋轉因子rom外,仍需較複雜的運算和控制電路單元,即使現在,實現長點數的fft仍然是很困難。
  • 基於tms320vc5416和圖像傳感器0v7620的足球機器人設計
    本文在簡單介紹了全自主足球機器人比賽系統的基礎上,分析了傳統視覺系統的缺點,給出了用cmos圖像傳感器 0v7620、SRAM幀存儲器 IS61LV25616、CPLD/FPGA控制器 EPF10K10LC84—3以及 DSP器件 tms320vc5416
  • 基於MSP430系列微控制器的FFT算法實現
    離散時間採樣的快速傅立葉變換FFT(fast Fouriertrans form)算法是目前最主要的諧波檢測和分析方法。FFT算法的實現可以採用專用晶片37—40、DSP晶片6—1141—44、FPGA晶片193— 207以及微控制器等。隨著集成電路製造技術和數字計算機技術的進步,微控制器晶片的功能和所能提供的邏輯資源越來越多。
  • 數位訊號控制器TMS320LF2401A的特點及應用分析
    TI公司推出的基於TI的數位訊號處理器(DSP)TMS320C2xx DSP CPU核的數位訊號控制器TMS320LF2401A,它能精確地控制馬達,以減小噪音和改善Ariston超靜音洗衣機的效率。
  • 基於DSP的FFT算法實現
    基於DSP的FFT算法實現1、FFT的原理快速傅氏變換(FFT)是離散傅氏變換的快速算法,它是根據離散傅氏變換的奇、偶、
  • 基於TMS32OLF24O7的FFT算法的實現及應用
    信號的一些特性在時域總是表現得不明顯,通過傅立葉算法,將其變換到頻域,其特性就一目了然。例如,來自供電系統的幹擾在時域上總是不易識別,但是在頻域上就可以很清晰地看到50~60 Hz的離散諧波。 在計算機系統中,實際上是以離散傅立葉變換(DFT)的方式處理數據。由於DFT的運算量比較大,並不適用於嵌入式控制系統,所以實際應用中常使用DFT 的快速算法一快速傅立葉變換(FFT)。
  • 基於TMS320DM6446的H.264編碼器實現與優化
    詳細介紹了以TMS320DM6446DSP為核心的視頻編碼系統的硬體設計,並重點研究了H.264編碼器在以TMS320DM 6446為目標的CCS平臺上的移植和優化工作。2 視頻編碼系統硬體設計2.1 DSP的選型 DSP選用TI公司的Davinci媒體處理專用器件TMS320DM6446(簡稱DM6446)。它採用ARM+DSP雙核架構,包含一個TMS320C64x+核心和一個ARM926EJ-S核心。
  • 基於TMS320F2812的逆變電源控制器設計
    首先介紹了逆變電源技術的發展現狀,在介紹了晶片的特性之後,詳細分析了基於TMS320F2812逆變電源控制器的硬體和軟體設計,並對仿真結果進行分析總結。結果表明,該逆變電源能夠得到穩定的正弦波輸出。1 基於TMS320F2812逆變電源的總體設計1.1 DSP控制器TMS320F2812性能TMS320F2812晶片是TMS320C28x系列中的一種,它採用先進的改進型哈佛結構,其程序存儲器和數據存儲器具有各自的總線結構,從而它的處理能力達到最大;它的指令執行速度為150 MIPS,這種高性能使複雜控制算法的實時執行成為可能。
  • 通俗易懂的講解FFT的讓你快速了解FFT
    當然這都是以前的事情了,經過了系統的學習+2個星期的研究,自製了一個FFT的算法,不敢說速度上的優勢,但是個人認為是一種通俗易懂的實現方法。經過實際的VC++模擬實驗、和STM32跑的也很成功。 首先,要會FFT,就必須要對DFT有所了解,因為兩者之間本質上是一樣的。
  • 基於TMS320F240專用定點可編程晶片實現電動機微機保護裝置的設計
    基於TMS320F240專用定點可編程晶片實現電動機微機保護裝置的設計 單亞娟,鄭建勇,曹 發表於 2020-11-25 10:30:06   作者:單亞娟,鄭建勇
  • 基於SPWM控制全數字單相變頻器的設計及實現
    本文介紹了基於DSPTMS320LF2407A並使用SPWM控制技術的全數字單相變頻器的設計及實現方法,最後給出了實驗波形。在變頻調速系統中,應用DSP作為控制晶片以實現數位化控制,它既提高了系統可靠性,又使系統的控制精度高、實時性強、硬體簡單、軟體編程容易,是變頻調速系統中最有發展前景的研究方向之一。TMS320LF2407A晶片簡介TMS320LF2407A 是TI公司專為電機控制而設計的單片DSP控制器。
  • 史上最簡單的FFT(快速傅立葉變換)
    FFT1 簡述FFT是專門用來求解多項式乘法的一個高效算法。(cp *a,int n,int inv){ if(n==1) return; int m=n/2; for(int i=0;i<m;i++){ tmp[i]=a[2*i]; tmp[i+m]=a[2*i+1]; } for(int i=0;i<n;i++) a[i]=tmp[i]; fft(a,
  • 基於FPGA的FFT算法硬體實現
    基於FPGA的FFT算法硬體實現