国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      快速傅立葉轉(zhuǎn)換方法

      文檔序號:6427174閱讀:495來源:國知局
      專利名稱:快速傅立葉轉(zhuǎn)換方法
      技術(shù)領(lǐng)域
      本發(fā)明提供一種快速傅立葉轉(zhuǎn)換方法,特別指一種用以計算段L(Llength)數(shù)據(jù)的快速傅立葉轉(zhuǎn)換方法。
      背景技術(shù)
      蝴蝶結(jié)構(gòu)(butterfly structure)是一種普遍用來實現(xiàn)快速傅立葉轉(zhuǎn)換的演算法。這種方法是將輸入的數(shù)據(jù)點利用多層交叉運算的方式,得到最后快速傅立葉轉(zhuǎn)換的結(jié)果。請參考圖1。圖1為常規(guī)快速傅立葉轉(zhuǎn)換的蝴蝶結(jié)構(gòu)。在此例子中,共有八個固定的輸入數(shù)據(jù)x(0),x(1),x(2)至x(7)用來進行快速傅立葉轉(zhuǎn)換,并得到最后的輸出結(jié)果X(0),X(1),X(2)至X(7)。首先,八點輸入數(shù)據(jù)必須先經(jīng)過編號的位反轉(zhuǎn)(bit reversal)運算來決定此八點輸入數(shù)據(jù)的順序。所謂地編號的位反轉(zhuǎn)運算是指反轉(zhuǎn)原本編號位中各個位從最不重要位(Least Significant Bit)至最重要位(Most Significant Bit)的順序。舉例來說,標號為4的位表示為”100”,其位反轉(zhuǎn)后的結(jié)果為”001”,也就是標號變?yōu)?,標號為6的位表示為”110”,其位反轉(zhuǎn)后的結(jié)果為”011”,也就是標號變?yōu)?,而標號為0的位表示經(jīng)反轉(zhuǎn)后標號一樣為0,依此類推。原本編號為x(0),x(1),x(2)至x(7)的八個數(shù)據(jù)點經(jīng)編號的位反轉(zhuǎn)再排序之后,變成了如圖1所示的x(0),x(4),x(2),x(6),x(1),x(5),x(3),x(7),做為快速傅立葉轉(zhuǎn)換蝴蝶結(jié)構(gòu)的輸入。
      接著,依照輸入數(shù)據(jù)的順序兩兩進行交叉運算,如圖所示x(0)與x(4)交叉運算,x(2)與x(6)交叉運算,x(1)與x(5)交叉運算,x(3)與x(7)交叉運算,在交叉運算的過程中,x(4),x(6),x(5),x(7)會乘上一個稱做twiddlefactor(旋轉(zhuǎn)因子)的加權(quán)參數(shù)W[z],運算結(jié)果得到x’(0),x’(1),x’(2)至x’(7)。從x得到x’是第一層的蝴蝶結(jié)構(gòu)運算。然后,x’(0)與x’(2)交叉運算,x’(1)與x’(3)交叉運算,x’(4)與x’(6)交叉運算,x’(5)與x’(7)交叉運算,并且,在交叉運算的過程中,x’(2),x’(3),x’(6),x’(7)會乘上加權(quán)參數(shù)W[z],得到x”(0),x”(1),x”(2)至x”(7)。從x’得到x”是第二層的蝴蝶結(jié)構(gòu)運算。最后,x”(0)與x”(4),x”(1)與x”(5),x”(2)與x”(6),x”(3)與x”(7)進行交叉運算,運算過程中x”(4),x’(5),x”(6),x”(7)乘上加權(quán)參數(shù)W[z],運算過后得到最后快速傅立葉轉(zhuǎn)換結(jié)果X(0),X(1),X(2)至X(7)。從x”得到X是第三層的蝴蝶結(jié)構(gòu)運算。
      以上八點輸入數(shù)據(jù)共需要三層的蝴蝶結(jié)構(gòu)運算,事實上,愈多點的輸入數(shù)據(jù)需愈多層的蝴蝶結(jié)構(gòu)運算,這與輸入數(shù)據(jù)點數(shù)的乘冪有關(guān)。假設有M點輸入數(shù)據(jù),而M的乘冪為N,所以這M點輸入數(shù)據(jù)需要N層運算。與例來說,八的乘冪為3,所以需三層運算,16點的乘冪為4,所以需4層運算。
      在常規(guī)的方法中,處理輸入數(shù)據(jù)的快速傅立葉轉(zhuǎn)換時,只能針對固定長度的數(shù)據(jù)點進行運算,而且,這輸入數(shù)據(jù)的長度一定要事先設定成2的次方,才能順利進行接下來的運算。此種固定數(shù)據(jù)點的輸入方式造成使用上的不便,也讓快速傅立葉轉(zhuǎn)換運算較無彈性。另外,對于乘冪為N的M點輸入數(shù)據(jù),在快速傅立葉轉(zhuǎn)換運算的過程中需經(jīng)過N層的蝴蝶結(jié)構(gòu),才能得到運算結(jié)果,換句話說,以程序的執(zhí)行上需要N層循環(huán)才能完成運算。這樣程序執(zhí)行較為復雜冗長。

      發(fā)明內(nèi)容
      因此本發(fā)明的主要目的在于提供一種用以一處理單元載入并計算段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換方法,以解決上述常規(guī)的問題。
      本發(fā)明公開一種快速傅立葉轉(zhuǎn)換方法用以一處理單元載入并計算段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換,該方法包含令該段L輸入數(shù)據(jù)對應一序列數(shù)據(jù),該序列數(shù)據(jù)長度為M;計算一乘冪N,使該N值對應該M值;針對該序列數(shù)據(jù)進行位反轉(zhuǎn),得到一反轉(zhuǎn)序列數(shù)據(jù);依據(jù)該N值以及該序列數(shù)據(jù)長度M計算多組加權(quán)參數(shù)W[z];以及依據(jù)多組循環(huán)參數(shù)及該多組加權(quán)參數(shù)W[z]對該反轉(zhuǎn)序列數(shù)據(jù)進行循環(huán)運算后輸出該段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換值。
      本發(fā)明更公開一種快速傅立葉轉(zhuǎn)換轉(zhuǎn)換裝置,其用于執(zhí)行段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換,其包含一補零模塊,接收該段L輸入數(shù)據(jù),使其對應一序列數(shù)據(jù),該序列數(shù)據(jù)長度為M;一乘冪計算模塊,用來計算一乘冪N,使該N值對應該M值;一位反轉(zhuǎn)模塊,接收該序列數(shù)據(jù)且依據(jù)該N值將該序列數(shù)據(jù)進行反轉(zhuǎn),并產(chǎn)生一反轉(zhuǎn)序列數(shù)據(jù);一參數(shù)計算模塊,依據(jù)該N值以及該段L數(shù)據(jù)長度計算多組加權(quán)參數(shù)W[z];一循環(huán)控制模塊,依據(jù)該N值及至少一計數(shù)器提供多組循環(huán)參數(shù);以及一傅立葉轉(zhuǎn)換模塊,依據(jù)該多組循環(huán)參數(shù)及多組加權(quán)參數(shù)W[z]對該反轉(zhuǎn)序列數(shù)據(jù)進行循環(huán)運算后輸出該段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換值。


      圖1為常規(guī)快速傅立葉轉(zhuǎn)換的蝴蝶結(jié)構(gòu)。
      圖2為本發(fā)明用以計算段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換方法的流程圖。
      圖3為本發(fā)明一種用于執(zhí)行段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換的快速傅立葉轉(zhuǎn)換轉(zhuǎn)換裝置。
      主要元件符號說明
      10 快速傅立葉轉(zhuǎn)換轉(zhuǎn)換裝置12 補零模塊
      14 乘冪計算模塊 16 位反轉(zhuǎn)模塊
      18 參數(shù)計算模塊 22 循環(huán)控制模塊
      24 傅立葉轉(zhuǎn)換模塊
      具體實施例方式
      請參考圖2。圖2為本發(fā)明用以計算段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換方法的流程圖,本流程可以一程序代碼撰寫,并以一處理單元處理后出,可用于行動單元的頻譜分析或是頻譜分析儀上直接分析信號。步驟100,令該段L輸入數(shù)據(jù)對應一序列數(shù)據(jù),該序列數(shù)據(jù)長度為M。步驟110,計算一乘冪N,使該N值對應該M值。本發(fā)明的精神在于使用者可以輸入任意長度L的數(shù)據(jù),L值不一定要為2的次方,但是為了讓快速傅立葉轉(zhuǎn)換的運算順利進行,必須讓這段L輸入數(shù)據(jù)對應至一長度為M的序列數(shù)據(jù),M的值即為2的N次方(2N=M)。如果L值恰好為2的次方,則L值與M值相等,2的N次方等于L。如果L值不等于2的次方,則M值為2的次方中大于L的最小值。這段M(lengthM)序列數(shù)據(jù)是由該段L輸入數(shù)據(jù)補上(M-L)個零所組成。
      步驟120中,針對該序列數(shù)據(jù)進行位反轉(zhuǎn),得到一反轉(zhuǎn)序列數(shù)據(jù)。位反轉(zhuǎn)指的是反轉(zhuǎn)該序列數(shù)據(jù)中的各個位從最不重要位至最重要位的順序。步驟130,依據(jù)該N值以及該序列數(shù)據(jù)長度M計算多組加權(quán)參數(shù)W[z](Twiddlefactor)。加權(quán)參數(shù)W[z]是在進行快速傅立葉轉(zhuǎn)換過程中必要的函數(shù),其與輸入數(shù)據(jù)長度和輸入數(shù)據(jù)長度的乘冪有關(guān)。此加權(quán)參數(shù)W[z]是本領(lǐng)域技術(shù)人員所熟知,在此不加以詳述。步驟140,依據(jù)多組循環(huán)參數(shù)及該多組加權(quán)參數(shù)W[z]對該反轉(zhuǎn)序列數(shù)據(jù)進行循環(huán)運算后輸出該段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換值。在循環(huán)運算過程中,共進行三層循環(huán)運算。該多組循環(huán)參數(shù)包括一用來控制最外層循環(huán)的主循環(huán)控制信號i,用來控制第二層循環(huán)的一次循環(huán)控制信號j,用來控制第三層循環(huán)的一內(nèi)循環(huán)控制信號k,以及一倍數(shù)控制信號FFA_radix。i值為0、1、、、(N-1);j值為0、1、、、(M/2)-1;該反轉(zhuǎn)序列數(shù)據(jù)為x
      、x[1]、、、x[M-1];該倍數(shù)控制信號FFA-radix為一2的次方的變數(shù),于第一次執(zhí)行主循環(huán)時該FFA_radix的值為2,而第二次執(zhí)行主循環(huán)開始該FFA_radix每次以2的倍數(shù)增加,每一次的主循環(huán)對應一FFA_radix值;該k值為于其中一次主循環(huán)之下,以間隔1依序從0遞增至對應該次主循環(huán)的FFA_radix值。該循環(huán)運算中最內(nèi)層循環(huán)運算包含于其中一次主循環(huán)之下,如果k值小于對應該次主循環(huán)的FFA_radix值的二分之一,則計算x[FFA_radix*j+k]=x[FFA_radix*j+k]+x[FFA_radix*j+k+FFA_radix/2]*W[z]。如果k值不小于對應該次主循環(huán)的FFA_radix值的二分之一,則計算x[FFA_radix*j+k]=x[FFA_radix*j+k]*W[z]+x[FFA_radix*j+k-FFA_radix/2]。
      為了更清楚說明本發(fā)明步驟140的循環(huán)運算,其程序如下
      FFA_pts=M;  FFA_radix=1;  For(i=0;i<N;i++)  {  FFA-pts/=2;  FFA-radix*=2;  For(j=0;j<FFA_pts;j++)  {   for(k=0;k<FFA_radix;k++)   {  if(k<FFA_radix/2)  x[FFA_radix*j+k]= x[FFA_radix*j+k]+x[FFA_radix*j+k+FFA_radix/2]*W[k*FFA_pts];<!-- SIPO <DP n="4"> --><dp n="d4"/>  else  x[FFA_radix*j+k]= x[FFA_radix*j+k] *W[k*FFA_pts]+x[FFA_radix*j+k-FFA_radix/2];  }  }  for(k=0;k<FFT_pts;k++)x[k]=X[k];  }
      程序說明如下
      如同的前所述,最外層的循環(huán)受到主循環(huán)控制信號i的控制,從0開始每次加1一直變化到N-1為止。一開始,參數(shù)FFA_pts設定成數(shù)據(jù)的長度M,而倍數(shù)控制信號FFA_radix設定為1。在每執(zhí)行一次主循環(huán)時,參數(shù)FFA_pts會變成一半,倍數(shù)控制信號FFA_radix會加倍,因此,在對應不同的主循環(huán)的i值之下,參數(shù)FFA_pts和倍數(shù)控制信號FFA_radix的值都不相同。第二層循環(huán)由一次循環(huán)控制信號j來控制,在某一主循環(huán)i所對應的參數(shù)FFA_pts之下,j的值以間隔為1由0變化到FFA_pts-1。第三層循環(huán)由內(nèi)循環(huán)控制信號k控制,在某一主循環(huán)i所對應的倍數(shù)控制信號FFA_radix之下,k的值以間隔為1由0變化到FFA_radix-1。在最內(nèi)層的循環(huán)中,如果k值小于對應該次主循環(huán)的FFA_radix值的二分之一,則x[FFA_radix*j+k]=x[FFA_radix*j+k]+x[FFA_radix*j+k+FFA_radix/2]*W[z]。如果k值不小于對應該次主循環(huán)的FFA_radix值的二分之一,則x[FFA_radix*j+k]=x[FFA_radix*j+k]*W[z]+x[FFA_radix*j+k-FFA_radix/2]。最后程序算得的結(jié)果X[z]即是段L輸入數(shù)據(jù)的快速傅立葉轉(zhuǎn)換結(jié)果。
      請參考圖3。圖3為本發(fā)明一種用于執(zhí)行段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換的快速傅立葉轉(zhuǎn)換轉(zhuǎn)換裝置10,此快速傅立葉轉(zhuǎn)換轉(zhuǎn)換裝置10為一種處理裝置??焖俑盗⑷~轉(zhuǎn)換轉(zhuǎn)換裝置10包含一補零模塊12,一乘冪計算模塊14,一位反轉(zhuǎn)模塊16,一參數(shù)計算模塊18,一循環(huán)控制模塊22以及一傅立葉轉(zhuǎn)換模塊24。補零模塊12用來接收該段L輸入數(shù)據(jù),使其對應一序列數(shù)據(jù),該序列數(shù)據(jù)長度為M。乘冪計算模塊14用來計算一乘冪N,使該N值對應該M值。M的值即為2的N次方(2N=M)。如果L值恰好為2的次方,則L值與M值相等,2的N次方等于L。如果L值不等于2的次方,則M值為2的次方中大于L的最小值。這段M序列數(shù)據(jù)是由該段L輸入數(shù)據(jù)補上(M-L)個零所組成。位反轉(zhuǎn)模塊16接收該序列數(shù)據(jù)并依據(jù)該N值將該序列數(shù)據(jù)進行位反轉(zhuǎn),并產(chǎn)生一反轉(zhuǎn)序列數(shù)據(jù)。位反轉(zhuǎn)指的是反轉(zhuǎn)該序列數(shù)據(jù)中的各個位從最不重要位至最重要位的順序。參數(shù)計算模塊18依據(jù)該N值以及該段L數(shù)據(jù)長度計算多組加權(quán)參數(shù)W[z](Twiddle factor)。循環(huán)控制模塊22控制本發(fā)明快速傅立葉轉(zhuǎn)換法三個循環(huán)的循環(huán)參數(shù),依據(jù)該N值及至少一計數(shù)器提供一用來控制最外層循環(huán)的主循環(huán)控制信號i,用來控制第二層循環(huán)的一次循環(huán)控制信號j,用來控制第三層循環(huán)的一內(nèi)循環(huán)控制信號k,以及一倍數(shù)控制信號FFA_radix。i值為0、1、、、(N-1);j值為0、1、、、(M/2)-1;該反轉(zhuǎn)序列數(shù)據(jù)為x
      、x[1]、、、x[M-1];該倍數(shù)控制信號FFA_radix為一2的次方的變數(shù),于第一次執(zhí)行主循環(huán)時該FFA_radix的值為2,而第二次執(zhí)行主循環(huán)開始該FFA_radix每次以2的倍數(shù)增加,每一次的主循環(huán)對應一FFA_radix值;該k值為于其中一次主循環(huán)之下,以間隔1依序從0遞增至對應該次主循環(huán)的FFA_radix值。傅立葉轉(zhuǎn)換模塊24依據(jù)該多組循環(huán)參數(shù)及多組加權(quán)參數(shù)W[z]對該反轉(zhuǎn)序列數(shù)據(jù)進行循環(huán)運算后輸出該段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換值。該循環(huán)運算包含執(zhí)行圖2中步驟140的循環(huán)運算程序。
      在常規(guī)的方法中,處理輸入數(shù)據(jù)的快速傅立葉轉(zhuǎn)換時,只能針對固定長度的數(shù)據(jù)點進行運算,而且,這輸入數(shù)據(jù)的長度一定要事先設定成2的次方,才能順利進行接下來的運算。此種固定數(shù)據(jù)點的輸入方式造成使用上的不便,也讓快速傅立葉轉(zhuǎn)換運算較無彈性。另外,對于乘冪為N的M點輸入數(shù)據(jù),在快速傅立葉轉(zhuǎn)換運算的過程中需經(jīng)過N層的蝴蝶結(jié)構(gòu),才能得到運算結(jié)果,換句話說,以程序的執(zhí)行上需要N層循環(huán)才能完成運算。這樣程序執(zhí)行較為復雜冗長。相較于常規(guī)技術(shù),本發(fā)明的快速傅立葉轉(zhuǎn)換方法中,將任意段L輸入數(shù)據(jù)對應一序列數(shù)據(jù),使其變成二的次方長度的數(shù)據(jù),因此,本發(fā)明的快速傅立葉轉(zhuǎn)換方法可以處理不固定長度的輸入數(shù)據(jù)的快速傅立葉轉(zhuǎn)換。另外,不論輸入數(shù)據(jù)長度的乘冪值N為何,本發(fā)明循環(huán)運算皆只需要三層循環(huán)即可完成快速傅立葉轉(zhuǎn)換的運算,因此具有運算簡單,運算效率高,所需硬體較少的優(yōu)點。
      以上所述僅為本發(fā)明的較佳實施例,凡依本發(fā)明權(quán)利要求所進行的等效變化與修改,皆應屬本發(fā)明的涵蓋范圍。
      權(quán)利要求
      1.一種快速傅立葉轉(zhuǎn)換方法,被一處理單元載入并執(zhí)行,用以計算段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換,該方法包含
      令該段L輸入數(shù)據(jù)對應一序列數(shù)據(jù),該序列數(shù)據(jù)長度為M;
      計算一乘冪N,使該N值對應該M值;
      針對該序列數(shù)據(jù)進行位反轉(zhuǎn),得到一反轉(zhuǎn)序列數(shù)據(jù);
      依據(jù)該N值以及該序列數(shù)據(jù)長度M計算多組加權(quán)參數(shù)W[z];以及
      依據(jù)多組循環(huán)參數(shù)及該多組加權(quán)參數(shù)W[z]對該反轉(zhuǎn)序列數(shù)據(jù)進行循環(huán)運算后輸出該段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換值。
      2.如權(quán)利要求1所述的快速傅立葉轉(zhuǎn)換方法,其另包含如果輸入數(shù)據(jù)長度L小于M,則將段L數(shù)據(jù)再補上(M-L)個零以構(gòu)成該序列數(shù)據(jù)。
      3.如權(quán)利要求1所述快速傅立葉轉(zhuǎn)換方法,其中該2的N次方等于M。
      4.如權(quán)利要求1所述的快速傅立葉轉(zhuǎn)換方法,其中該循環(huán)運算共包含三個循環(huán),該多組循環(huán)參數(shù)包括一用來控制最外層循環(huán)的主循環(huán)控制信號i,用來控制第二層循環(huán)的一次循環(huán)控制信號j,用來控制第三層循環(huán)的一內(nèi)循環(huán)控制信號k,以及一倍數(shù)控制信號FFA_radix。
      5.如權(quán)利要求4所述的快速傅立葉轉(zhuǎn)換方法,該i值為0、1、、、(N-1);該j值為0、1、、、(M/2)-1;該反轉(zhuǎn)序列數(shù)據(jù)為x
      、x[1]、、、x[M-1];該倍數(shù)控制信號FFA_radix為一2的次方的變數(shù),于第一次執(zhí)行主循環(huán)時該FFA_radix的值為2,而第二次執(zhí)行主循環(huán)開始該FFA_radix每次以2的倍數(shù)增加,每一次的主循環(huán)對應一FFA_radix值;該k值為于其中一次主循環(huán)之下,以間隔1依序從0遞增至對應該次主循環(huán)的FFA_radix值。
      6.如權(quán)利要求5所述的快速傅立葉轉(zhuǎn)換方法,其中該循環(huán)運算另包含于其中一次主循環(huán)之下,如果k值小于對應該次主循環(huán)的FFA_radix值的二分之一,則計算
      x[FFA_radix*j+k]=x[FFA_radix*j+k]+x[FFA_radix*j+k+FFA_radix/2]*W[z]。
      7.如權(quán)利要求5所述的快速傅立葉轉(zhuǎn)換方法,其中該循環(huán)運算另包含于其中一次主循環(huán)之下,如果k值不小于對應該次主循環(huán)的FFA_radix值的二分之一,則計算
      x[FFA_radix*j+k]=x[FFA_radix*j+k]*W[z]+x[FFA_radix*j+k-FFA_radix/2]。
      8.如權(quán)利要求1所述的快速傅立葉轉(zhuǎn)換方法,其中針對該序列數(shù)據(jù)進行位反轉(zhuǎn)系反轉(zhuǎn)該序列數(shù)據(jù)中各個位從最不重要位至最重要位的順序,以得到一反轉(zhuǎn)序列數(shù)據(jù)。
      9.一種快速傅立葉轉(zhuǎn)換轉(zhuǎn)換裝置,其用于執(zhí)行段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換,其包含
      一補零模塊,接收該段L輸入數(shù)據(jù),使其對應一序列數(shù)據(jù),該序列數(shù)據(jù)長度為M;
      一乘冪計算模塊,用來計算一乘冪N,使該N值對應該M值;
      一位反轉(zhuǎn)模塊,接收該序列數(shù)據(jù)且依據(jù)該N值將該序列數(shù)據(jù)進行反轉(zhuǎn),并產(chǎn)生一反轉(zhuǎn)序列數(shù)據(jù);
      一參數(shù)計算模塊,依據(jù)該N值以及該段L數(shù)據(jù)長度計算多組加權(quán)參數(shù)W[z];
      一循環(huán)控制模塊,依據(jù)該N值及至少一計數(shù)器提供多組循環(huán)參數(shù);以及
      一傅立葉轉(zhuǎn)換模塊,依據(jù)該多組循環(huán)參數(shù)及多組加權(quán)參數(shù)W[z]對該反轉(zhuǎn)序列數(shù)據(jù)進行循環(huán)運算后輸出該段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換值。
      10.如權(quán)利要求9所述的轉(zhuǎn)換裝置,其中該2的N次方等于M。
      11.如權(quán)利要求9所述的轉(zhuǎn)換裝置,其中該L等于M。
      12.如權(quán)利要求9所述的轉(zhuǎn)換裝置,其中當該M大于L時,長度為M的該序列數(shù)據(jù)為該補零模塊將該段L輸入數(shù)據(jù)補上(M-L)組零所構(gòu)成。
      13.如權(quán)利要求9所述的轉(zhuǎn)換裝置,其中該傅立葉轉(zhuǎn)換模塊所執(zhí)行的循環(huán)運算共包含三個循環(huán),該多組循環(huán)參數(shù)包括一用來控制最外層循環(huán)的主循環(huán)控制信號i,用來控制第二層循環(huán)的一次循環(huán)控制信號j,用來控制第三層循環(huán)的一內(nèi)循環(huán)控制信號k,以及一倍數(shù)控制信號FFA_radix。
      14.如權(quán)利要求9所述的快速傅立葉轉(zhuǎn)換方法,該i值為0、1、、、(N-1);該j值為0、1、、、(M/2)-1;該反轉(zhuǎn)序列數(shù)據(jù)為x
      、x[1]、、、x[M-1];該倍數(shù)控制信號FFA_radix為一2的次方的變數(shù),于第一次執(zhí)行主循環(huán)時該FFA_radix的值為2,而第二次執(zhí)行主循環(huán)開始該FFA_radix每次以2的倍數(shù)增加,每一次的主循環(huán)對應一FFA_radix值;該k值為于其中一次主循環(huán)之下,以間隔1依序從0遞增至對應該次主循環(huán)的FFA_radix值。
      15.如權(quán)利要求14所述的快速傅立葉轉(zhuǎn)換方法,其中該循環(huán)運算另包含于其中一次主循環(huán)之下,如果k值小于對應該次主循環(huán)的FFA_radix值的二分之一,則計算
      x[FFA_radix*j+k]=x[FFA_radix*j+k]+x[FFA_radix*j+k+FFA_radix/2]*W[z]。
      16.如權(quán)利要求14所述的快速傅立葉轉(zhuǎn)換方法,其中該循環(huán)運算另包含于其中一次主循環(huán)之下,如果k值不小于對應該次主循環(huán)的FFA_radix值的二分之一,則計算
      x[FFA_radix*j+k]=x[FFA_radix*j+k]*W[z]+x[FFA_radix*j+k-FFA_radix/2]。
      17.如權(quán)利要求9所述的快速傅立葉轉(zhuǎn)換方法,其中針對該序列數(shù)據(jù)進行位反轉(zhuǎn)系反轉(zhuǎn)該序列數(shù)據(jù)中各個位從最不重要位至最重要位的順序,以得到一反轉(zhuǎn)序列數(shù)據(jù)。
      全文摘要
      一種快速傅立葉轉(zhuǎn)換方法,被一處理單元載入并執(zhí)行,用以計算段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換,該方法包含令該段L輸入數(shù)據(jù)對應一長度為M的序列數(shù)據(jù);計算一乘冪N,使該N值對應該M值;針對該序列數(shù)據(jù)進行位反轉(zhuǎn),得到一反轉(zhuǎn)序列數(shù)據(jù);依據(jù)該N值以及該序列數(shù)據(jù)長度M計算多組加權(quán)參數(shù)W[z];以及依據(jù)多組循環(huán)參數(shù)及該多組加權(quán)參數(shù)W[z]對該反轉(zhuǎn)序列數(shù)據(jù)進行循環(huán)運算后輸出該段L數(shù)據(jù)的快速傅立葉轉(zhuǎn)換值。
      文檔編號G06F17/14GK1746882SQ200410077069
      公開日2006年3月15日 申請日期2004年9月10日 優(yōu)先權(quán)日2004年9月10日
      發(fā)明者廖偉舜 申請人:明基電通股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1