国产精品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>

      流水線式快速傅里葉變換處理器的制作方法

      文檔序號(hào):6416003閱讀:694來源:國(guó)知局
      專利名稱:流水線式快速傅里葉變換處理器的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種快速傅里葉變換(FFT)處理器,具體地說,本發(fā)明涉及一種FFT流水線式處理器結(jié)構(gòu),它優(yōu)化為最大限度地減少能耗和集成電路面積的要求。
      傅里葉變換是一種周知的技術(shù),它可用于分析隨時(shí)間變化的信號(hào)。簡(jiǎn)單地說,傅里葉變換可將信號(hào)從隨時(shí)間變化的格式轉(zhuǎn)換成隨頻率變化的格式。逆傅里葉變換進(jìn)行相反的轉(zhuǎn)換。在用一系列按規(guī)則時(shí)間周期采樣的連續(xù)信號(hào)樣本以離散的形式表示一信號(hào)時(shí),相應(yīng)的傅里葉變換稱為離散傅里葉變換(DFT)。
      從較高層次上說,DFT是一種簡(jiǎn)單的算法。該算法包括步驟為輸入函數(shù)的數(shù)字化數(shù)據(jù)點(diǎn)、用正弦和余弦函數(shù)乘各個(gè)數(shù)據(jù)點(diǎn)、在相應(yīng)的累加器中對(duì)最終的積即用于正弦分量的積和由于余弦分量的積求和。在按這種方式處理了各個(gè)數(shù)據(jù)點(diǎn)時(shí),用所處理的數(shù)據(jù)點(diǎn)的數(shù)量除正弦和余弦累加器。最終的數(shù)值是用于目前正測(cè)量的頻率的正弦和余弦分量的均值。對(duì)所有的整數(shù)個(gè)頻率重復(fù)這一過程,直至頻率等于奈奎斯特頻率的兩倍。
      更正式地說,可將DFT和逆DFT定義成如下F(f)=&Sigma;T=0N-1f(T)WNfT-------------(1)]]>f(T)=1/N&Sigma;f=0N-1F(f)WN-fT------------(2)]]>其中F(f)=頻率分量或變換值f(T)=時(shí)基數(shù)據(jù)點(diǎn)或逆變換N=數(shù)據(jù)點(diǎn)的數(shù)量T=離散的時(shí)間
      f=離散的頻率WN=e-j2π/n=Cos(2π/N)-jSin(2π/N)=“旋轉(zhuǎn)因子”因此,旋轉(zhuǎn)因子是一復(fù)數(shù),在一般情況下,頻率域和時(shí)間域函數(shù)均為復(fù)數(shù),兩個(gè)復(fù)數(shù)值的積會(huì)產(chǎn)以下的項(xiàng)(A+jB)(C+jD)=AC+jAD+jBC-BD=(AC-BD)+j(AD+BC)(3)項(xiàng)(A+jB)可例如看作是時(shí)間域函數(shù),項(xiàng)(C+jD)可看作是WN即WN=Cos(2π/N)+jSin(2π/N)。
      DFT的實(shí)際問題是要花很長(zhǎng)時(shí)間進(jìn)行計(jì)算。事實(shí)上,就N個(gè)數(shù)據(jù)點(diǎn)來說,執(zhí)行DFT需要進(jìn)行約N2次復(fù)雜操作。一次復(fù)雜操作包括計(jì)算出正弦和余弦函數(shù)、乘以數(shù)據(jù)點(diǎn)并將積加起來。這一問題在可能有數(shù)萬個(gè)數(shù)據(jù)點(diǎn)要加以“實(shí)時(shí)”變換的應(yīng)用中特別麻煩。另一方面,如果減少數(shù)據(jù)點(diǎn)的數(shù)量,則可成平方地減少操作的次數(shù)。因此,將數(shù)據(jù)序列分解成兩個(gè)相等的部分并分別對(duì)各個(gè)部分進(jìn)行處理可以節(jié)省一半的計(jì)算操作。這是用于推導(dǎo)出快速過傅里葉變換(FFT)的方法。將輸入數(shù)據(jù)陣列分成越來越小陣列,以減少計(jì)算量,然后,用特征交叉模型來重新組合變換結(jié)果,所述特征交叉模型稱為“蝶”,它實(shí)際是一種小型FFT。FFT中的蝶的長(zhǎng)度稱為FFT的“基數(shù)”(R)。因此,如果用多個(gè)小的DFT例如長(zhǎng)度為2或4的蝶來取代大的DFT,則可顯著地減少?gòu)?fù)雜操作的數(shù)量。即使操作的次數(shù)隨DFT的長(zhǎng)度的減小而降低,DFT長(zhǎng)度的減少也要“花費(fèi)”約N次操作,因此,對(duì)FFT來說有常見的NlogN次計(jì)算復(fù)雜性。
      圖1A示出了N=8個(gè)數(shù)據(jù)點(diǎn)陣列D0-D7的實(shí)例性FFT蝶信號(hào)流的圖。將所述陣列的偶數(shù)分量輸入給前4-點(diǎn)DFT(8-點(diǎn)DFT的長(zhǎng)度的一半),將奇數(shù)數(shù)據(jù)點(diǎn)D1、D2、D5和D7輸入給后4-點(diǎn)DFT。將這兩個(gè)四點(diǎn)陣列的輸出結(jié)合起來,以便通過第二次重復(fù)由四個(gè)頻率分量構(gòu)成的各個(gè)集合,然后將偶數(shù)和奇數(shù)集加到一起,而生成與八點(diǎn)DFT相對(duì)應(yīng)的八點(diǎn)序列。但是,在求和之前,奇數(shù)DFT頻率分量必須是異相的,因?yàn)?,時(shí)間域中奇數(shù)項(xiàng)會(huì)移動(dòng)一個(gè)數(shù)據(jù)點(diǎn)??捎枚鄠€(gè)數(shù)據(jù)塊并用增量為π/4的零到2π的弧度范圍表示上述相移。
      這種分解-求解的方法可擴(kuò)展成如圖1B所示,在圖1B中,將各個(gè)四-點(diǎn)DFF分解成兩個(gè)2-點(diǎn)DFT。當(dāng)然,必須在以后將四個(gè)2-點(diǎn)DFT組合成為兩個(gè)4-點(diǎn)DFT,它們?nèi)缟纤瞿菢颖唤M合成一個(gè)8-點(diǎn)DFT。這可以再減少整個(gè)處理時(shí)間幾乎一半。
      因此,可將8-點(diǎn)FFT輸入數(shù)據(jù)分成僅由兩個(gè)或四個(gè)數(shù)據(jù)點(diǎn)構(gòu)成的子集,可對(duì)這些子集進(jìn)行二或四點(diǎn)離散傅里葉變換。使變換后的輸出乘以適當(dāng)?shù)摹靶D(zhuǎn)因子”,然后使其經(jīng)歷另一次的二或四點(diǎn)傅里葉變換。
      就許多信號(hào)處理系統(tǒng)和應(yīng)用而言,對(duì)高速數(shù)字信號(hào)作實(shí)時(shí)FFT計(jì)算是很重要的。異步數(shù)字用戶專用線路(ADSL)、數(shù)字音頻廣播(DAB)、數(shù)字視頻廣播(DVB)、正交分頻多路調(diào)制(OFDM)是其中一種的多載體調(diào)制(MCM)方案、聲納、雷達(dá)、基于數(shù)據(jù)塊的過濾和快速卷積、分樣過濾器庫(kù)、用于磁性存儲(chǔ)器的均衡器、回聲消除器以及多路均衡均為高速FFT應(yīng)用的實(shí)例。FFT處理器還例如在數(shù)字移動(dòng)蜂窩式無線電系統(tǒng)中有應(yīng)用,在這種系統(tǒng)中,要最大限度地減少能耗和IC芯片的大小。能耗越大,就會(huì)產(chǎn)生越大的熱量。對(duì)芯片大小來說,有一個(gè)上限,對(duì)特定的封裝IC可使用多少能量來說也有一個(gè)上限。減少能耗可使用更便宜的封裝IC芯片。在這些最重要的因素中,是考慮形成一種諸如FFT處理器之類的芯片處理器。
      盡管例如就實(shí)時(shí)應(yīng)用而言處理速度當(dāng)然很重要,但是,能耗還會(huì)隨所執(zhí)行的乘法、加法和寄存器操作的次數(shù)而增加。IC芯片的面積會(huì)隨象所使用的乘法器、加法器和寄存器之類的硬件組件的數(shù)量而增加。本發(fā)明的目的是最大限度地減少組件的數(shù)量和所執(zhí)行的操作量,以便最大限度地減少IC芯片的面積和能耗。
      存在有多種不同的方法去提高速度和/或最大限度地減少能耗和IC芯片面積需求。最成功的方法之一是使所說的處理過程成流水線。流水線式的處理器將計(jì)算負(fù)荷分成連續(xù)的處理級(jí),以便進(jìn)行并行處理。從本質(zhì)上說,流水線操作可使得從處理器的前一處理級(jí)中獲得的局部結(jié)果能在沒有延遲的情況下被立即地用于下一個(gè)處理級(jí)。實(shí)時(shí)的流水線式處理器的處理速度必須與輸入數(shù)據(jù)速率即用于連續(xù)操作的數(shù)據(jù)采集速度相匹配。這就意味著FFT流水線式處理器必須在N個(gè)時(shí)鐘周期內(nèi)計(jì)算N長(zhǎng)度的DFT,因?yàn)椋瑪?shù)據(jù)采集速度為每個(gè)周期一個(gè)樣本。
      以Shousheng He名義于1997年5月29日公布的WO97/19412公開了一種所提出的用于甚大規(guī)模積分(VLSI)的流水線式FFT結(jié)構(gòu)。所提供的這種流水線式FFT結(jié)構(gòu)是一種單通路、延遲-反饋(SDF)、基數(shù)-2的FFT,其中,分解旋轉(zhuǎn)因子以形成基數(shù)-4結(jié)構(gòu),基數(shù)-22與基數(shù)-4算法有同樣的乘法復(fù)雜性,但保持有基數(shù)-2的蝶結(jié)構(gòu)。
      WO97/19412中說明了He如何將所有的乘法器分解成簡(jiǎn)單或非簡(jiǎn)單乘法器。從結(jié)構(gòu)上說,圖2A示出了與HE所述相類似的實(shí)時(shí)流水線式FFT,它用于256個(gè)數(shù)據(jù)點(diǎn)即N=256。具體地說,將輸入數(shù)據(jù)序列傳給第一對(duì)蝶單元9和10。128個(gè)字的反饋寄存器1將蝶9的輸出與其輸入連起來。第二蝶單元10具有一64個(gè)字的反饋寄存器2。乘法器17將處理器包括蝶單元9和10的第一級(jí)與處理器包括蝶單元11和12的第二級(jí)連起來并用旋轉(zhuǎn)因子W1(N)乘數(shù)據(jù)流。蝶單元9、11、13和15的結(jié)構(gòu)分別不同于圖2B和2C所述的蝶單元10、12、14和16。蝶單元11和12配備有反饋寄存器3和4,它們分別具有32個(gè)字和16個(gè)字的容量。位于處理器第二與第三級(jí)之間的乘法器17用旋轉(zhuǎn)因子W2(N)乘數(shù)據(jù)流。處理器的第三級(jí)包括蝶13和14、8個(gè)字的反饋寄存器5以及4個(gè)字的反饋寄存器6。位于處理器的第三與第四級(jí)之間的乘法器用旋轉(zhuǎn)因子W3(N)乘數(shù)據(jù)流。處理器的第四級(jí)包括蝶15和16、兩個(gè)字的反饋寄存器7以及一個(gè)字的反饋寄存器8。輸出序和X(K)源于處理器的第四級(jí)的輸出。用時(shí)鐘信號(hào)19來同步的二進(jìn)制計(jì)數(shù)器18用作同步控制器和地址計(jì)數(shù)器,它可用于在處理器的各級(jí)之間所使用的旋轉(zhuǎn)因子。圖2B所示的BF2I型蝶包括兩個(gè)加法器21、兩個(gè)減法器22以及四個(gè)多路調(diào)制器23。所述多路調(diào)制器的操作受控于控制信號(hào)27。圖2C所示的BF2Ⅱ型蝶在結(jié)構(gòu)上與BF2Ⅰ型蝶相類似,但包括一2×2的轉(zhuǎn)換器26和邏輯門24即帶有逆輸入的與門??刂菩盘?hào)25作用于與門24的逆輸入。作用于多路調(diào)制器23的控制信號(hào)27還作用于與門24的非逆輸入。來自與門24的輸出驅(qū)動(dòng)轉(zhuǎn)換器26。
      圖2A中的基數(shù)-22的單延遲反饋FFT處理器的操作如下。在第一個(gè)N/2周期中,第一蝶模塊中2至1多路調(diào)制器23轉(zhuǎn)換至位置“0”,而蝶是空閑的。來自左面的輸入數(shù)據(jù)被傳至反饋位移寄存器,直至它們被填滿。在下一個(gè)N/2周期中,多路調(diào)制器23轉(zhuǎn)到位置“1”,蝶單元用輸入的數(shù)據(jù)和存儲(chǔ)在位移寄存器中的數(shù)據(jù)計(jì)算2-點(diǎn)DFT。
      Z1(n)=x(n)+x(n+N/1)(4)0≤n<N/2Z1(n+N/2)=x(n)-x(n+N/2)(5)在加載時(shí)間序列的下一幀的頭一半時(shí),將蝶輸出Z1(n)被傳送以施加旋轉(zhuǎn)因子,并將Z1(n+N/2)傳回至要在下一個(gè)N/2周期中加以“多路調(diào)制”的位移寄存器。
      除蝶輸入序列的“距離”剛好為N/4且通過借助轉(zhuǎn)換器26和受控加/減操作的實(shí)-虛交換來實(shí)現(xiàn)簡(jiǎn)單旋轉(zhuǎn)因子乘法以外,第二蝶的操作與第一蝶的操作相類似。這就需要有來自同步計(jì)數(shù)器18的兩位控制信號(hào)25和27。然后,數(shù)據(jù)經(jīng)過一按75%利用率工作的全復(fù)數(shù)乘法器17,以逐字地形成基數(shù)4FFT的第一級(jí)結(jié)果。下一步的處理過程按在每個(gè)連續(xù)蝶處理級(jí)減半的輸入距離重復(fù)這一方式。在N-1個(gè)時(shí)鐘周期之后,按位反序的順序輸出整個(gè)的DFT變換結(jié)果X(K)。然后,在不暫停的情況下對(duì)變換的下一幀進(jìn)行處理,因?yàn)樵谔幚砥鞯母骷?jí)處有流水線式的處理。
      HE的WO97/19412申請(qǐng)書認(rèn)為,這種基數(shù)-22SDF FFT處理器結(jié)構(gòu)對(duì)流水線式FFT計(jì)算來說是最佳的。但是,用本發(fā)明可使得FFT處理器的IC面積和能耗有更大的減少。
      使用多個(gè)小型DFT(即FFT,分解-求解的原理)的大型DFT的計(jì)算是一種可用迭代或流水線式結(jié)構(gòu)來實(shí)現(xiàn)的多級(jí)處理過程。盡管這種分解-求解策略節(jié)省了計(jì)算,但是,存在有在較少的處理級(jí)之間執(zhí)行的數(shù)量有所增加的復(fù)數(shù)旋轉(zhuǎn)因子乘法。從在各蝶處執(zhí)行的旋轉(zhuǎn)因子乘法是簡(jiǎn)單的角度來看,希望有兩點(diǎn)或四點(diǎn)DFT/蝶,因?yàn)椋朔ㄆ鞯南禂?shù)僅為±1或J。換句話說,對(duì)二或四點(diǎn)DFT中的各個(gè)變換來說,不需要復(fù)數(shù)乘法電路,而只需要“簡(jiǎn)單”乘法。在不用乘法器的情況下僅通過傳遞數(shù)據(jù)而無操作或通過改變符號(hào)或通過轉(zhuǎn)換實(shí)和虛分量來執(zhí)行簡(jiǎn)單乘法。換句話說,可避免非簡(jiǎn)單、計(jì)算費(fèi)力的乘法。但是,對(duì)FFT中2-點(diǎn)與4-點(diǎn)DFT蝶級(jí)之間的旋轉(zhuǎn)因子乘法來說,需要多次非簡(jiǎn)單復(fù)數(shù)乘法。
      通常的想法是,當(dāng)FFT的基數(shù)(即基本DFT計(jì)算單元的長(zhǎng)度)增加至8、16或更大(即在分解求解法中將變換分成8、16或更多的分支)時(shí),從每個(gè)高基數(shù)蝶(高基數(shù)FFT中的蝶)中所必須執(zhí)行的非簡(jiǎn)單乘法的角度看,計(jì)算“成本”會(huì)顯著地增加,從而會(huì)抵消通過蝶之間的數(shù)量有所減少的旋轉(zhuǎn)因子乘法器所獲得的收益。本發(fā)明人發(fā)現(xiàn),情況并不一定是這樣。與通常的想法相反,本發(fā)明用較少數(shù)量的低功率固定系數(shù)的乘法器在基數(shù)大于4的FFT中提供了一種非常有效且IC面積效率高的FFT處理器。利用某些旋轉(zhuǎn)因子關(guān)系(以下將詳細(xì)加以說明)可以僅使用較少量的固定系數(shù)乘法器。
      因此,本發(fā)明涉及較高基數(shù)的快速傅里葉變換(FFT)處理器,同時(shí)能在有最小能耗的情況下僅使用最小的集成電部芯片面積去有效地執(zhí)行快速傅里葉變換操作。最佳的是,本發(fā)明可用于任何基數(shù)大于4的FFT結(jié)構(gòu)。示例性實(shí)施例使用了蝶模塊,就實(shí)時(shí)的、流水線式FFT處理器結(jié)構(gòu)而言,所述蝶模塊具有8或16的長(zhǎng)度。就基數(shù)-8的實(shí)現(xiàn)形式而言,用基數(shù)-23蝶處理器模塊來形成上述FFT處理器。就基數(shù)-16的實(shí)現(xiàn)形式而言,用基數(shù)-24蝶處理器模塊來形成上述FFT處理器。
      在按基數(shù)-23所實(shí)現(xiàn)的基數(shù)-8示例性實(shí)施例中,用三個(gè)按流水線方式連在一起的2-點(diǎn)蝶單元來實(shí)現(xiàn)各個(gè)蝶模塊。輸入數(shù)據(jù)序列作用于這三個(gè)蝶單元之一的輸入并經(jīng)過這三個(gè)流水線式蝶單元的處理,以生成經(jīng)過傅里葉變換的數(shù)據(jù)序列。每個(gè)蝶單元均包括一單個(gè)的延遲反饋寄存器。在基數(shù)-8蝶模塊所需的這三種非簡(jiǎn)單旋轉(zhuǎn)因子乘法(在蝶中這三種非簡(jiǎn)單旋轉(zhuǎn)因子乘法均被執(zhí)行多次)中,本發(fā)明僅用一個(gè)固定系數(shù)據(jù)乘法器電路實(shí)現(xiàn)了上述三種乘法。在按基數(shù)-24所實(shí)現(xiàn)的基數(shù)-16示例性實(shí)施例中,用四個(gè)按流水線方式連在一起的2-點(diǎn)蝶單元來實(shí)現(xiàn)各個(gè)蝶模塊。在基數(shù)-16蝶模塊所需的這九種非簡(jiǎn)單旋轉(zhuǎn)因子乘法(在蝶中這九種非簡(jiǎn)單旋轉(zhuǎn)因子乘法均被執(zhí)行多次)中,本發(fā)明僅用兩個(gè)固定系數(shù)據(jù)乘法器電路實(shí)現(xiàn)了上述九種乘法。
      以下連同


      本發(fā)明的上述特點(diǎn)和目的(以及其它特點(diǎn)和目的),附圖中圖1A是一快速傅里葉變換(FFT)蝶的流程圖,其中,用兩個(gè)4-點(diǎn)DFT來執(zhí)行8-點(diǎn)DFT操作;圖1B是一雙蝶FFT流程圖,它用于實(shí)現(xiàn)8-點(diǎn)DFT;圖2A是就N=256的基數(shù)-22單個(gè)延遲反饋(SDF)流水線式FFT處理器結(jié)構(gòu);圖2B是圖2A所示的基數(shù)-22SDF流水線式FFT處理器中使用的第一個(gè)2點(diǎn)蝶結(jié)構(gòu)的圖;圖2C是圖2A所示的基數(shù)-22SDF流水線式FFT處理器中使用的第二個(gè)蝶結(jié)構(gòu)的圖;圖3是依照本發(fā)明一個(gè)示例性實(shí)施例的基數(shù)-23單通路延遲反饋實(shí)時(shí)流水線式FFT處理器的圖;圖4是示出了在實(shí)現(xiàn)圖3所示的基數(shù)-23FFT時(shí)使用的基數(shù)-23蝶;圖5是示出了復(fù)數(shù)平面中用于基數(shù)-8和基數(shù)-16DFT蝶模塊的旋轉(zhuǎn)因子的向量圖;圖6是用固定系數(shù)乘法器所實(shí)現(xiàn)的圖4所示基數(shù)-23蝶的圖;圖7示出了用于實(shí)現(xiàn)W18旋轉(zhuǎn)因子乘法的一個(gè)示例性固定系數(shù)乘法器;圖8是依照本發(fā)明另一個(gè)示例性最佳實(shí)施例的基數(shù)-24單通路延遲反饋實(shí)時(shí)流水線式FFT處理器的圖;圖9A是與圖8中基數(shù)-24流水線式FFT處理器的各個(gè)處理級(jí)中所使用的16-點(diǎn)FFT相對(duì)應(yīng)的基數(shù)-24蝶模塊的圖;圖9B是示出了不用乘法器實(shí)現(xiàn)的圖9A中所示的簡(jiǎn)單旋轉(zhuǎn)因子乘法的圖;圖9C是示出了由多個(gè)非簡(jiǎn)單的基數(shù)-16旋轉(zhuǎn)因子乘法構(gòu)成的固定系數(shù)乘法器的實(shí)現(xiàn)形式,它可用于圖9A所示的基數(shù)-24蝶;圖10示出了一示例性固定系數(shù)乘法器,它實(shí)現(xiàn)了用于多種基數(shù)-16旋轉(zhuǎn)因子的乘法;圖11是一曲線圖,它示出了用不同基數(shù)FFT處理器實(shí)現(xiàn)的4096-點(diǎn)FFT的FFT能耗;圖12是一曲線圖,它示出了用不同基數(shù)FFT處理器實(shí)現(xiàn)的4076FFT的FFT集成電路(IC)的面積消耗。
      在以下的說明中,為說明起見而不是為了進(jìn)行限制,說明了特定的細(xì)節(jié),諸如特定的實(shí)施例、技術(shù)、硬電路、裝置等,以便能對(duì)本發(fā)明加以全面的理解。例如,本發(fā)明的最佳示例性實(shí)施例是用于基數(shù)-23和基數(shù)-24流水線式FFT處理器的。但是,這些實(shí)施例和結(jié)構(gòu)僅是示例性的,本技術(shù)的專家可以看出,可用不脫離這些特定細(xì)節(jié)的其它實(shí)施例來實(shí)現(xiàn)本發(fā)明。在其它的情況下,略去了對(duì)周知DFT/FFT方法、裝置和技術(shù)的詳細(xì)說明,以避免因不必要的詳節(jié)妨礙了對(duì)本發(fā)明的說明。
      如上所述,對(duì)DFT/FFT計(jì)算的通常想法是,用基數(shù)-8或基數(shù)-16FFT處理器什么都不能得到,因?yàn)椋?jì)算量不顯著地降低。FFT領(lǐng)域中的某些專家還認(rèn)為,分解-基數(shù)FFT是最有效的,因?yàn)?,就?jì)算長(zhǎng)度為2n的DFT而且,它使用了周知的最少次數(shù)的非簡(jiǎn)單操作。與通常的想法及這些論點(diǎn)相反,本發(fā)明人發(fā)現(xiàn),用較高基數(shù)FFT處理器具體說是基數(shù)-8和基數(shù)-16的FFT處理器、用固定系數(shù)乘法器并用旋轉(zhuǎn)因子之間的某些優(yōu)勢(shì)關(guān)系去減少固定系數(shù)乘法器的實(shí)際數(shù)量,以實(shí)現(xiàn)必要的旋轉(zhuǎn)因子乘法,可在降低能耗和集成電路(IC)芯片表面面積方面獲得顯著的收益。的確,盡管就IC芯片面積或能量要求而言對(duì)較高基數(shù)的簡(jiǎn)單外推不一定導(dǎo)致更高的效率,但本發(fā)明用復(fù)數(shù)平面中的旋轉(zhuǎn)因子對(duì)稱、旋轉(zhuǎn)因子的分解以及固定系數(shù)乘法器去實(shí)現(xiàn)IC芯片和能耗方面的顯著高的效率。
      示例性基數(shù)-8FFT處理器用諸如圖3所示的實(shí)例之類的用于N=4096數(shù)據(jù)點(diǎn)陣列的基數(shù)-23單通路延遲反饋(SDF)流水線式FFT處理器結(jié)構(gòu)來最佳地實(shí)現(xiàn)本發(fā)明基數(shù)-8FFT處理器的第一個(gè)示例性實(shí)施例。圖3中的四個(gè)8-點(diǎn)蝶中的每個(gè)蝶均由三個(gè)流水線式2-蝶構(gòu)成。將輸入數(shù)據(jù)序列x(n)輸入給第一基數(shù)-23蝶模塊110。來自各個(gè)基數(shù)-23(8)BF模塊的輸出是輸入給上述模塊的8-點(diǎn)FFT,其中,頻率分量0-7按位顛倒的次序0、4、2、6、1、5、3、7輸出。該輸出與乘法器200相連,以便與第一旋轉(zhuǎn)因子乘數(shù)W4096n*k相乘,其中,就各個(gè)n和從0至(4096/8-1)=511的k值而言,n為按位顛倒次序(見上)的0至7。因此,將4096個(gè)旋轉(zhuǎn)因子值存儲(chǔ)在旋轉(zhuǎn)ROM260中,所述因子值的約1/8(512)是簡(jiǎn)單的。
      旋轉(zhuǎn)積作用于第二基數(shù)-23蝶模塊120,在乘法器220中使輸出序列與第二旋轉(zhuǎn)因子乘數(shù)W512n*k相乘,其中,就各個(gè)n和從0至(4096/82-1)=63的k值而言,n為按位顛倒次序的0至7。將4096個(gè)旋轉(zhuǎn)因子值存儲(chǔ)在旋轉(zhuǎn)ROM270中,所述因子值的約1/8是簡(jiǎn)單的。
      在第二基數(shù)-23蝶模塊140中處理旋轉(zhuǎn)積。在乘法器240中使輸出與第三旋轉(zhuǎn)因子乘數(shù)W64n*k相乘,其中,就各個(gè)n和從0至(4096/83-1)=7的k值而言,n為按位顛倒次序(重復(fù)64次)的0至7,將所述旋轉(zhuǎn)因子值存儲(chǔ)在旋轉(zhuǎn)ROM280中。在最后一個(gè)基數(shù)-23蝶模塊160中處理旋轉(zhuǎn)積,以形成經(jīng)傅里葉變換的輸出序列X(K)。
      各蝶模塊110、120、140和160均包括三個(gè)反饋通路。具體地說,蝶模塊110包括第一反饋通路,它具有一2048-字的反饋寄存器;第二反饋通路,它具有一1020-字的反饋寄存器;以及,第三反饋通路,它具有一512-字的反饋寄存器。蝶模塊120包括第一反饋通路,它包括有一256-字的寄存器440;第二反饋通路,它包括有一128-字的反饋寄存器420;以及,第三反饋通路,它包括有一64-字的反饋寄存器400。第三蝶模塊140包括第一反饋通路,它包括有一32-字的寄存器540;第二反饋通路,它包括有一16-字的反饋寄存器520;以及,第三反饋通路,它包括有一8-字的反饋寄存器500。蝶模塊160包括第一反饋通路,它包括有一4-字的寄存器640;第二反饋通路,它包括有一2-字的反饋寄存器620;以及,第三反饋通路,它包括有一1-字的反饋寄存器600。二進(jìn)制計(jì)數(shù)器820由時(shí)鐘信號(hào)800來同步。該二進(jìn)制計(jì)數(shù)器用作一同步控制器和地址計(jì)數(shù)器,它用于FFT處理器的各級(jí)之間所使用的全部因子。各反饋寄存器均提供延遲的X樣本,因此,可在不同時(shí)間對(duì)數(shù)據(jù)進(jìn)行處理。
      蝶模塊110、120、140和160中的每一個(gè)均包括三個(gè)流水線式2-點(diǎn)蝶單元(BF2)。每個(gè)蝶模塊均可實(shí)現(xiàn)基數(shù)-8(即8-點(diǎn))FFT算法,但該基數(shù)-8蝶被“分解”成三個(gè)級(jí)聯(lián)的基數(shù)-2蝶單元。蝶模塊160例如包括一第一蝶單元160A,它與第二蝶單元160B相連,第二蝶單元160B又與第三蝶單元160C相連。每個(gè)蝶單元160A-160C的內(nèi)部結(jié)構(gòu)均與圖2A所示的相似。另一種蝶單元的實(shí)現(xiàn)形式可使用圖2B所示的結(jié)構(gòu),以使j和-l與實(shí)/虛位移及加/減位移相乘。但是,也可以用其它方法來實(shí)現(xiàn)簡(jiǎn)單乘法。
      每個(gè)蝶單元均由同步控制器和地址計(jì)數(shù)器分別用時(shí)標(biāo)脈沖2、1和0來加以同步。每個(gè)蝶單元均包括一單通路反饋延時(shí)循環(huán)和寄存器。蝶單元160A包括一四字反饋寄存器64。蝶單元160B包括一個(gè)2-字反饋寄存器620,蝶單元160C包括一個(gè)1-字反饋寄存器600。
      圖4可推廣用于使用長(zhǎng)度為4X、2X和X的反饋寄存器的任何基數(shù)-23蝶單元,其中,X=1、8、64、512等。序列或系數(shù)是在數(shù)據(jù)經(jīng)過圖4所示的乘法器時(shí)要乘以的值。所說的序列在變成下一個(gè)值之前被處理X次。X的值取決于將基數(shù)-8蝶放置在流水線鏈路中的什么位置處。就最右側(cè)的模塊160而言,X=1;就最左側(cè)的模塊110而言,X=512;就模塊120而言,X=64。
      參照?qǐng)D1A所示的蝶結(jié)構(gòu),多個(gè)蝶單元的輸出僅乘以包括+1、-1、+j、-j的簡(jiǎn)單乘數(shù)。但是,也可以用無操作、符號(hào)變化或?qū)崳摲至俊敖粨Q”來實(shí)現(xiàn)上述簡(jiǎn)單乘法(無乘法器)。用蝶模塊之間的動(dòng)態(tài)乘法器(如圖2A中的動(dòng)態(tài)乘法器)來實(shí)現(xiàn)非簡(jiǎn)單旋轉(zhuǎn)因子乘法(如W1(n)、W2(n)、W3(n))。
      因此,通常的FFT處理器用動(dòng)態(tài)乘法器來進(jìn)行旋轉(zhuǎn)因子乘法。動(dòng)態(tài)乘法器從下述意義上來說是“動(dòng)態(tài)的”即如果該動(dòng)態(tài)乘法器執(zhí)行輸入數(shù)據(jù)字“A”與系數(shù)字“B”之間的乘法,則字“B”的數(shù)字值可改變成任何實(shí)際值。雖然就輸出序列乘以不同旋轉(zhuǎn)因子系數(shù)值而言是靈活的,但是,盡管可用較小的IC面積來實(shí)現(xiàn)動(dòng)態(tài)乘法器,但動(dòng)態(tài)乘法器會(huì)消耗相當(dāng)量的能量。在固定系數(shù)乘法器中,字“B”的數(shù)字值是恒定的。
      實(shí)踐中,通過使要相乘的多種形式的兩個(gè)二進(jìn)制字位移然后將位移后的形式加在一起,從而實(shí)現(xiàn)二進(jìn)制的乘法。由于對(duì)固定系數(shù)乘法器來說上述數(shù)據(jù)字之一是周知的,所以,乘法器不必執(zhí)行任何其它乘法。結(jié)果,固定系數(shù)乘法器僅包括動(dòng)態(tài)乘法器中所使用的硬件的約一半。此外,可將周知的數(shù)據(jù)字記錄成非常有效的格式,因此,與動(dòng)態(tài)乘法器相比,可顯著地減少固定系數(shù)的能耗。固定系數(shù)乘法器的缺點(diǎn)在于,對(duì)各種不同系數(shù)而言,需要一獨(dú)立的乘法器。因此,隨不同的固定系數(shù)乘法器的數(shù)量的增加,會(huì)消耗IC芯片的表面面積。
      隨蝶模塊的長(zhǎng)度增加至8和16,蝶模塊之間的旋轉(zhuǎn)因子乘法器的數(shù)量會(huì)減少。但是,經(jīng)過乘法器的必須乘以旋轉(zhuǎn)因子的數(shù)據(jù)的百分比會(huì)增加。還有,在各蝶模塊中執(zhí)行的旋轉(zhuǎn)因子乘法的次數(shù)也會(huì)增加。就基數(shù)-4FFT而言,經(jīng)過各個(gè)四點(diǎn)蝶模塊之間的75%的數(shù)據(jù)點(diǎn)必須乘以旋轉(zhuǎn)因子。就基數(shù)-8FFT而言,所述百分比會(huì)增加至87.5%,就基數(shù)-16FFT而言,所述百分比會(huì)增加至93.75%。
      蝶模塊之間的動(dòng)態(tài)乘法器所執(zhí)行的旋轉(zhuǎn)因子乘法的減少了的次數(shù)和各蝶模塊中用于基數(shù)有所增加的FFT的旋轉(zhuǎn)因子乘法次數(shù)的增加的凈效應(yīng)是所執(zhí)行的乘法總數(shù)有較少的減少。可用本發(fā)明的方法來減少較高基數(shù)FFT的蝶模塊的中使用的不同旋轉(zhuǎn)因子值的個(gè)數(shù)。在給定了各蝶模塊中執(zhí)行的較少數(shù)量的不同值、非簡(jiǎn)單旋轉(zhuǎn)因子乘法的情況下,本發(fā)明可用比動(dòng)態(tài)乘法器消耗更少能量的固定系數(shù)乘法實(shí)現(xiàn)了這些乘法。隨著各蝶模塊中執(zhí)行的不同值、非簡(jiǎn)單旋轉(zhuǎn)因子乘法的次數(shù)的增加,從所消耗的有所增加的IC芯片面積角度看,固定系數(shù)乘法器在這種情況下會(huì)變得不太有吸引力。
      本發(fā)明可通過(1)利用旋轉(zhuǎn)因子在復(fù)數(shù)平面內(nèi)的對(duì)稱性以及(2)分解旋轉(zhuǎn)因子來減少各蝶模塊中執(zhí)行的不同值、非簡(jiǎn)單旋轉(zhuǎn)因子乘法的次數(shù)。以下連同圖5所示的旋轉(zhuǎn)因子向量圖來說明上述兩種技術(shù)。
      在復(fù)數(shù)平面內(nèi)可將旋轉(zhuǎn)因子看作是具有數(shù)量“1”和特定相位角的向量。因此,將向量乘以旋轉(zhuǎn)因子等價(jià)于將該向量旋轉(zhuǎn)弧度為2πn/N的相位角。圖5中可以看出,就基數(shù)-8蝶模塊而言,旋轉(zhuǎn)因子W80對(duì)應(yīng)于簡(jiǎn)單的實(shí)值“1”。旋轉(zhuǎn)因子W82對(duì)應(yīng)于簡(jiǎn)單的虛值“-j”。旋轉(zhuǎn)因子W81對(duì)應(yīng)于非簡(jiǎn)單的復(fù)數(shù)值 。旋轉(zhuǎn)因子W83對(duì)應(yīng)于非簡(jiǎn)單的復(fù)數(shù)值 。注意W81與W83之間的對(duì)稱性。唯一的差別是,它們的實(shí)數(shù)分量的符號(hào)是不同的。利用上述對(duì)稱關(guān)系,相同的乘法器電路例如W81可用來執(zhí)行用于W81與W83兩者的非簡(jiǎn)單復(fù)數(shù)旋轉(zhuǎn)因子乘法,對(duì)上述因子中的一個(gè)而言僅需要改變符號(hào)。
      另外,可按如下方式分解旋轉(zhuǎn)因子W83∶W83=W81·W82??捎猛瑯拥腤81乘法器電路來實(shí)現(xiàn)旋轉(zhuǎn)因子W83,隨后是用符號(hào)改變和實(shí)與虛分量交換來實(shí)現(xiàn)的簡(jiǎn)單乘法即W82=-j,通過利用旋轉(zhuǎn)因子對(duì)稱性或者通過將非簡(jiǎn)單旋轉(zhuǎn)因子分解成共用因子,可減少專門的固定系數(shù)乘法器電路的數(shù)量,從而進(jìn)一步將較高基數(shù)FFT處理器所需的IC芯片面積的數(shù)量減至最小。
      因此,上述第一示例性實(shí)施例中的本發(fā)明使用了基數(shù)-8蝶模塊,該模塊用固定系數(shù)乘法器來執(zhí)行各基數(shù)-8蝶模塊中的非簡(jiǎn)單旋轉(zhuǎn)因子。而且,利用旋轉(zhuǎn)因子的對(duì)稱或分解,可用最少的固定系數(shù)乘法器硬件來實(shí)現(xiàn)非簡(jiǎn)單旋轉(zhuǎn)因子乘法。如前所述,每個(gè)基數(shù)-8蝶均需要與旋轉(zhuǎn)因子W81、W82和W83的旋轉(zhuǎn)因子乘法。不用乘法器執(zhí)行旋轉(zhuǎn)因子W83乘法,因?yàn)樵摮朔ㄊ呛?jiǎn)單的,也就是說,可用改變符號(hào)和實(shí)與虛分量交換來實(shí)現(xiàn)與-j的乘法。用相同的固定系數(shù)乘法電路來實(shí)現(xiàn)W81和W83旋轉(zhuǎn)因子乘法。
      圖6示出了用簡(jiǎn)單乘法和單個(gè)固定系數(shù)乘法器電路實(shí)現(xiàn)的圖4的基數(shù)-23蝶模塊160??筛鶕?jù)所示的用于各旋轉(zhuǎn)因子處理級(jí)650和660的旋轉(zhuǎn)因子序列將適當(dāng)?shù)牟考尤胄盘?hào)處理通路。處理級(jí)650包括一固定系數(shù)乘法器和簡(jiǎn)單旋轉(zhuǎn)因子乘法。通過僅將信號(hào)處理通路連到所示的兩個(gè)節(jié)點(diǎn)之間,可實(shí)現(xiàn)乘法“1”。當(dāng)?shù)麊卧?60A的輸出需要乘以非簡(jiǎn)旋轉(zhuǎn)因子W81時(shí),就將固定系數(shù)乘法器700接入上述信號(hào)處理通路。這種接入操作可受控于同步控制器820通過對(duì)控制器號(hào)進(jìn)行解碼并因此而對(duì)開關(guān)進(jìn)行控制而產(chǎn)生的時(shí)標(biāo)信號(hào)。處理級(jí)660和670包括可開關(guān)的處理通路,它們可用于乘以“1”的簡(jiǎn)單乘法和框720所示的乘以-j的乘法。
      圖7示出了用于旋轉(zhuǎn)因子W81的固定系數(shù)乘法器的一種有效實(shí)現(xiàn)形式。記住W81=1/2(1-j)]]>和W83=1/2(-1-j)]]>。盡管將圖6中的信號(hào)處理通路顯示為一信號(hào)線,但是,本技術(shù)的專家應(yīng)該認(rèn)識(shí)到,數(shù)據(jù)序列是包括實(shí)(I)和虛(Q)分量的復(fù)數(shù)。因此,圖7示出了I和Q信號(hào)處理通路。因此,用兩個(gè)比兩個(gè)動(dòng)態(tài)乘法器消耗更少能量的固定系數(shù)乘法器800和820來實(shí)現(xiàn)I和Q信號(hào)乘以1/ 的兩種乘法。實(shí)與虛分量在加法器840中相加并輸出,同時(shí)在用于W81的減法器860中從虛分量中減去實(shí)分量。同樣的乘法器電路可用于旋轉(zhuǎn)因子W83乘法,并對(duì)實(shí)分量改變符號(hào)。
      示例性基數(shù)-24FFT處理器圖8示出了本發(fā)明的第二實(shí)例性最佳實(shí)現(xiàn)形式。圖8中的實(shí)時(shí)流水線式FFT處理器100是除FFT操作以基數(shù)-16FFT算法為基礎(chǔ)而不是以基數(shù)-8算法為基礎(chǔ)以外都與圖3中基數(shù)-23SDF結(jié)構(gòu)相類似的基數(shù)-24單通路延遲反饋(SDF)處理器結(jié)構(gòu)。將N=4096點(diǎn)的輸入數(shù)據(jù)序列X(N)輸入給第一基數(shù)-24蝶模塊1020。來自各個(gè)R-24(16)BF模塊的輸出是輸入給上述模塊的16-點(diǎn)FFT,其中,頻率分量按位顛倒的次序輸出。該輸出與乘法器1100相連,以便與第一旋轉(zhuǎn)因子乘數(shù)W4096n*k相乘,其中,就各個(gè)n和從0至(4096/16-1)=255的k值而言,n為按位顛倒次序(見上)的0至15。因此,將4096個(gè)旋轉(zhuǎn)因子值存儲(chǔ)在旋轉(zhuǎn)ROM1120中,所述因子值的約1/16(256)是簡(jiǎn)單的。
      在第二基數(shù)-24蝶模塊1040中處理旋轉(zhuǎn)積,并在乘法器1140中將該旋轉(zhuǎn)積乘以第二旋轉(zhuǎn)因子乘數(shù)W256n*k,其中,就各個(gè)n和從0至(4096/162-1)=15的k值而言,n為按位顛倒次序的0至15,它重復(fù)6次。將這些旋轉(zhuǎn)因子值存儲(chǔ)在旋轉(zhuǎn)ROM1160中。在最后一個(gè)基數(shù)一24蝶模塊1060中處理旋轉(zhuǎn)積,以形成經(jīng)變換的序列X(K)。
      基數(shù)-16蝶模塊102O包括四個(gè)2-點(diǎn)FFT蝶,每個(gè)蝶均具有一單反饋通路和相應(yīng)的反饋寄存器1200、1220、1240和1260。蝶模塊1040包括四個(gè)反饋寄存器1300、1320、1340和1360。蝶模塊1060包括四個(gè)反饋寄存器1400、1420、1440和1460。FFT處理器根據(jù)一同步和地址生成器1520所接收的時(shí)鐘信號(hào)1500進(jìn)行操作,所述同步和地址生成器1520對(duì)各蝶模塊以及各模塊中的各蝶單元的操作進(jìn)行控制。
      圖9A說明了圖8所示的基數(shù)-24(16)蝶單元中的一個(gè)。四個(gè)2-點(diǎn)FFT蝶1060a、1060b、1060c和1060d按所示的流水線方式連在一起。蝶單元1060A包括一存儲(chǔ)有8X字的單通路反饋寄存器1460,其中,就蝶模塊1060而言,X=1;就蝶模塊1040而言,X=16;就蝶模塊1020而言,X=256。蝶單元1060B包括一4X字反饋寄存器1440,蝶單元1060C包括一2X字反饋寄存器1420,蝶單元1060D包括一X字反饋寄存器1400。除它們的反饋先進(jìn)先出(FIFO)存儲(chǔ)器有相應(yīng)不同長(zhǎng)度以外,上述四個(gè)2-點(diǎn)蝶單元可以是相同的。
      基數(shù)-16蝶需要下列旋轉(zhuǎn)因子乘法W161、W162、W163、W162、W164、W166、W163、W166和W169。圖5將這些旋轉(zhuǎn)因子顯示為復(fù)數(shù)平面內(nèi)的向量。通過按下述方式分解這些基數(shù)-16旋轉(zhuǎn)因子,可以簡(jiǎn)化旋轉(zhuǎn)因子乘法W163=W16-1·W164,其中,W164=-jW169=W161·W168,其中,W164=-1W162=W81,W166=W83=W81·W162。
      因此,基數(shù)-16蝶中的某些旋轉(zhuǎn)因子本身或它們的分解旋轉(zhuǎn)因子分量?jī)H為簡(jiǎn)單乘法從而不用乘法器來加以實(shí)現(xiàn)。此外,如圖5所示,W161和W16-1相對(duì)實(shí)軸是對(duì)稱的,因此,可通過改變虛分量的符號(hào),從W161中生成W16-1。所以,可用相同的固定系數(shù)乘法器來實(shí)現(xiàn)W161和W16-1旋轉(zhuǎn)因子乘法。就W162和W166而言,所需的另一個(gè)專門固定系數(shù)乘法器是用于實(shí)現(xiàn)非簡(jiǎn)單旋轉(zhuǎn)因子乘法的乘法器。如前所述,可用諸如圖7所示的乘法器之類的單個(gè)W81乘法器來實(shí)現(xiàn)上述兩種旋轉(zhuǎn)因子乘法。結(jié)果,可用剛好兩個(gè)固定系數(shù)乘法器電路來實(shí)現(xiàn)基數(shù)-16蝶模塊的所有旋轉(zhuǎn)因子乘法,而其余的乘法/操作則是簡(jiǎn)單的例如是改變符號(hào)、乘以1以及實(shí)與虛分量交換。
      參照?qǐng)D9A-9C,蝶單元1060a和1060b以及1060c和1060d通過為1和-j的簡(jiǎn)單旋轉(zhuǎn)因子乘法相連。圖9B示出了標(biāo)號(hào)1600和1680處的簡(jiǎn)單旋轉(zhuǎn)因子乘法。蝶單元1060b與1060c通過兩個(gè)非簡(jiǎn)單旋轉(zhuǎn)因子乘法器1620和1640以及一簡(jiǎn)單復(fù)數(shù)旋轉(zhuǎn)因子乘法器1660相連。圖9C示出3如何用固定系數(shù)乘法器來實(shí)現(xiàn)上述非簡(jiǎn)單旋轉(zhuǎn)因子乘法。不是用相應(yīng)的固定系數(shù)乘法來實(shí)現(xiàn)各類型的基數(shù)-16旋轉(zhuǎn)因子乘法,而是用旋轉(zhuǎn)因子的對(duì)稱性和分解來將固定系數(shù)乘法器的數(shù)量減少至僅為兩個(gè)。
      圖10說明了這種有效的實(shí)現(xiàn)形式,其中,固定系數(shù)乘法器以可切換的方式受控,以實(shí)現(xiàn)非簡(jiǎn)單旋轉(zhuǎn)因子乘法。I和Q通道被提供給IQ變換器1720,該變換器受控于同步控制器生成的控制信號(hào)1880。如果旋轉(zhuǎn)因子乘法是W161,則IQ變換器1720和IQ變換器1820(也受控于信號(hào)1880)使I和Q數(shù)據(jù)直接經(jīng)過,或者,如果旋轉(zhuǎn)因子乘法是W16-1,則IQ變換器1720和IQ變換器1820如圖所示那樣切換I和Q通路。在相應(yīng)的固定系數(shù)乘法器1740和1760中處理來自IQ變換器1720的I和Q通路輸出,以實(shí)現(xiàn)乘以兩個(gè)不同固定數(shù)的乘法、A-B和A+B(A是實(shí)分量,B是虛分量)。根據(jù)控制信號(hào)1880在IQ變換器1820中處理來自部件1740和1760的輸出,而I和Q的輸出則提供給加法器1840和1860。在減法器1780中減去原始輸出的I和Q信號(hào),并在固定系數(shù)乘法器180使上述I和Q信號(hào)乘以虛分量B。根據(jù)控制信號(hào)1880的狀態(tài),加上來自部件1800的輸出或者從輸入的I和Q信號(hào)中減去上述輸出。因此,可用圖10所示的同樣的三個(gè)乘法器1740、1760和1800來執(zhí)行用于非簡(jiǎn)單旋轉(zhuǎn)因子W16X的若干值的乘法。
      圖11和12所示的曲線圖說明了本發(fā)明的優(yōu)點(diǎn)。圖11示出了4096點(diǎn)數(shù)據(jù)序列的FFT處理器的能耗與包括基數(shù)2、4、8和16在內(nèi)的FFT基數(shù)長(zhǎng)度的曲線圖。使用大于4的基數(shù)、利用旋轉(zhuǎn)因子的對(duì)稱性和/或旋轉(zhuǎn)因子的分解并使用固定系數(shù)乘法器,本發(fā)明能獲得非常低的能耗,同時(shí)還能使IC面積消耗變低。
      具體地說,如果全都使用動(dòng)態(tài)乘法器,那么,通過將FFT處理器的基數(shù)增加到基數(shù)-4以上,就基數(shù)-8而言可以將能耗減少12%,就基數(shù)-16而言可以將能耗減少5%。如果使用了專用的動(dòng)態(tài)乘法器,則依照本發(fā)明第一示例性實(shí)施例,就基數(shù)-8FFT處理器而言可獲得最小的能耗。如果將專用的動(dòng)態(tài)乘法器用于基數(shù)-16FFT處理器,則就基數(shù)-8而言能耗實(shí)際會(huì)增加而不是減少。但是,如果在FFT處理器中使用固定系數(shù)乘法器而不是動(dòng)態(tài)乘法器,可以顯著地節(jié)省IC面積和能耗。依照本發(fā)明,如果在所說的蝶中使用了固定系數(shù)乘法器,則基數(shù)-16FFT處理器具有所有四種所說明的基數(shù)的最佳的最低能耗和非常低的面積消耗,(只有基數(shù)-8FFT處理器有略低的面積消耗)。
      盡管連同目前認(rèn)為是最實(shí)用和最佳的實(shí)施例說明了本發(fā)明,但是,應(yīng)該認(rèn)識(shí)到,本發(fā)明并不局限于所公開的實(shí)施例,相反,本發(fā)明用于涵蓋包括在后附權(quán)利要求的精神和范圍內(nèi)的各種改進(jìn)形式和等價(jià)結(jié)構(gòu)。例如,固定系數(shù)乘法器、旋轉(zhuǎn)因子的對(duì)稱性和/或旋轉(zhuǎn)因子的分解可用于這樣的FFT處理器,這種處理器具有除8或16以外長(zhǎng)度的蝶單元。盡管示例性實(shí)施例使用了流水線式處理結(jié)構(gòu),但是,本發(fā)明也可應(yīng)用于其它的FFT處理器結(jié)構(gòu)例如迭代結(jié)構(gòu),所以,本發(fā)明并不局限于特定的FFT處理器結(jié)構(gòu)。
      權(quán)利要求
      1.一種用最小集成電路芯片面積形成的快速傅里葉變換(FFT)處理器,它用于有效地執(zhí)行低能耗快速傅里葉變換操作,所述處理器包括一個(gè)或多個(gè)離散傅里葉變換(DFT)模塊,它們具有大于4的長(zhǎng)度,每個(gè)DFT模塊均包括一固定系數(shù)乘法器電路,它同于執(zhí)行旋轉(zhuǎn)因子乘法;其中,由各DFT模塊來處理輸入數(shù)據(jù)流,以生成變換后的輸出數(shù)據(jù)序列。
      2.如權(quán)利要求1的FFT處理器,其特征在于,各DFT模塊的長(zhǎng)度為8。
      3.如權(quán)利要求1的FFT處理器,其特征在于,各DFT模塊的長(zhǎng)度為16。
      4.如權(quán)利要求1的FFT處理器,其特征在于,各DFT模塊中的旋轉(zhuǎn)因子乘法包括非簡(jiǎn)單乘法和簡(jiǎn)單乘法,并且,用固定系數(shù)乘法器來執(zhí)行非簡(jiǎn)單乘法。
      5.如權(quán)利要求4的FFT處理器,其特征在于,在沒有執(zhí)行無操作、改變符號(hào)或變換實(shí)和虛分量的乘法器的情況下執(zhí)行所述簡(jiǎn)單乘法。
      6.如權(quán)利要求4的FFT處理器,其特征在于,用相同的固定系數(shù)乘法器電路來執(zhí)行不同的非簡(jiǎn)單旋轉(zhuǎn)因子值的乘法。
      7.如權(quán)利要求4的FFT處理器,其特征在于,將至少一個(gè)非簡(jiǎn)單旋轉(zhuǎn)因子分解成兩個(gè)分量旋轉(zhuǎn)因子,以減少不同非簡(jiǎn)單旋轉(zhuǎn)因子值的數(shù)量。
      8.如權(quán)利要求4的FFT處理器,其特征在于,用至少兩個(gè)非簡(jiǎn)單旋轉(zhuǎn)因子之間的對(duì)稱關(guān)系來減少不同非簡(jiǎn)單旋轉(zhuǎn)因子值的數(shù)量。
      9.如權(quán)利要求2的FFT處理器,其特征在于,僅用一個(gè)固定系數(shù)乘法電路來實(shí)現(xiàn)各8-點(diǎn)DFT模塊中的所有非簡(jiǎn)單旋轉(zhuǎn)因子乘法。
      10.如權(quán)利要求9的FFT處理器,其特征在于,所述一個(gè)固定系數(shù)乘法電路包括實(shí)和虛分量乘法器,在第一加法器中將實(shí)分量乘法器的輸出加至虛分量乘法器的輸出,在第二加法器中從虛乘法器輸出中減去實(shí)乘法器的輸出。
      11.如權(quán)利要求3的FFT處理器,其特征在于,每個(gè)16-點(diǎn)DFT模塊均用兩個(gè)固定系數(shù)乘法器電路來執(zhí)行所有的非簡(jiǎn)單旋轉(zhuǎn)因子乘法。
      12.如權(quán)利要求11的FFT處理器,其特征在于,每個(gè)16-點(diǎn)DFT模塊中的兩個(gè)固定系數(shù)乘法器電路均包括第一固定系數(shù)乘法器電路,它具有實(shí)和虛分量乘法器,在第一加法器中將實(shí)分量乘法器的輸出加至虛分量乘法器的輸出,在第二加法器中從虛乘法器輸出中減去實(shí)乘法器的輸出;以及第二固定系數(shù)乘法器電路,它具有實(shí)和虛分量變換器,這些變換器對(duì)一個(gè)旋轉(zhuǎn)因子乘法來說轉(zhuǎn)換至第一狀態(tài),對(duì)另一個(gè)旋轉(zhuǎn)因子乘法來說轉(zhuǎn)換至第二狀態(tài)。
      13.一種用FFT處理器來計(jì)算快速傅里葉變換(FFT)的方法,所述處理器是用最小集成電路芯片面積形成的,以便用減少的能耗有效地執(zhí)行快速傅里葉變換操作,所述方法包括下列步驟用多個(gè)處理模塊來形成上述FFT處理器,每個(gè)處理模塊均具有大于4的長(zhǎng)度,每個(gè)處理模塊均包括一固定系數(shù)乘法器,它用于執(zhí)行旋轉(zhuǎn)因子乘法;以及在各個(gè)處理模塊中處理輸入數(shù)據(jù)流,以生成變換后的輸出數(shù)據(jù)序列。
      14.如權(quán)利要求13的方法,其特征在于,各處理模塊的長(zhǎng)度為8。
      15.如權(quán)利要求13的方法,其特征在于,各處理模塊的長(zhǎng)度為16。
      16.如權(quán)利要求13的方法,其特征在于,該方法還包括將各處理器模塊中的旋轉(zhuǎn)因子乘法分成非簡(jiǎn)單乘法和簡(jiǎn)單乘法;以及用一個(gè)或多個(gè)固定系數(shù)乘法器來執(zhí)行非簡(jiǎn)單乘法。
      17.如權(quán)利要求16的方法,其特征在于,在沒有執(zhí)行無操作、改變符號(hào)或轉(zhuǎn)換實(shí)與虛分量的乘法器的情況下執(zhí)行簡(jiǎn)單旋轉(zhuǎn)因子乘法。
      18.如權(quán)利要求16的方法,其特征在于,該方法還包括在各處理模塊中用與各個(gè)不同非簡(jiǎn)單旋轉(zhuǎn)因子值乘法相對(duì)應(yīng)的固定系數(shù)乘法器電路來執(zhí)行不同的非簡(jiǎn)單旋轉(zhuǎn)因子值的乘法。
      19.如權(quán)利要求16的方法,其特征在于,該方法還包括在各處理模塊中用相同的固定系數(shù)乘法器電路來執(zhí)行不同的非簡(jiǎn)單旋轉(zhuǎn)因子值的乘法。
      20.如權(quán)利要求16的方法,其特征在于,該方法還包括將至少一個(gè)非簡(jiǎn)單旋轉(zhuǎn)因子分解成兩個(gè)分量旋轉(zhuǎn)因子,以減少不同非簡(jiǎn)單旋轉(zhuǎn)因子值的數(shù)量。
      21.如權(quán)利要求16的方法,其特征在于,該方法還包括用至少兩個(gè)非簡(jiǎn)單旋轉(zhuǎn)因子之間的對(duì)稱關(guān)系來減少不同非簡(jiǎn)單旋轉(zhuǎn)因子值的數(shù)量。
      22.如權(quán)利要求14的方法,其特征在于,該方法還包括僅用一個(gè)固定系數(shù)乘法電路來實(shí)現(xiàn)各8-點(diǎn)處理模塊中的所有非簡(jiǎn)單旋轉(zhuǎn)因子乘法,以便執(zhí)行各8-點(diǎn)處理模塊中的所有非簡(jiǎn)單旋轉(zhuǎn)因子乘法。
      23.如權(quán)利要求15的方法,其特征在于,該方法還包括僅用兩個(gè)固定系數(shù)乘法電路來實(shí)現(xiàn)各16-點(diǎn)處理模塊中的所有非簡(jiǎn)單旋轉(zhuǎn)因子乘法,以便執(zhí)行各16-點(diǎn)處理模塊中的所有非簡(jiǎn)單旋轉(zhuǎn)因子乘法。
      24.一種用最小集成電路芯片面積形成的快速傅里葉變換(FFT)處理器,它用于有效地執(zhí)行低能耗快速傅里葉變換操作,所述處理器包括一個(gè)或多個(gè)離散傅里葉變換(DFT)模塊,每個(gè)DFT模塊均具有三個(gè)連在一起的2-點(diǎn)蝶單元;以及用連接兩個(gè)2-點(diǎn)蝶單元的一個(gè)固定系數(shù)乘法器電路實(shí)現(xiàn)的一個(gè)或多個(gè)旋轉(zhuǎn)因子乘法器;其中,由上述三個(gè)蝶單元來處理輸入數(shù)據(jù)流,以生成變換后的輸出數(shù)據(jù)序列。
      25.如權(quán)利要求24的FFT處理器,其特征在于,所述FFT處理器是流水線式的,帶有流水線寄存器,它位于各蝶單元之間,并且,各個(gè)2-點(diǎn)蝶單元均包括一位于輸出與輸入之間的反饋通路。
      26.如權(quán)利要求25的FFT處理器,其特征在于,所述反饋通路是一單延遲反饋通路,并且,每個(gè)DFT模塊包括三個(gè)反饋寄存器,每個(gè)寄存器均包合有不同長(zhǎng)度的反饋序列。
      27.如權(quán)利要求26的FFT處理器,其特征在于,DFT模塊通過一動(dòng)態(tài)乘法器與旋轉(zhuǎn)因子存儲(chǔ)器相連,因此,使來自蝶模塊之一的輸出在于相鄰DFT模塊中被處理之前乘以從動(dòng)態(tài)乘法器內(nèi)的旋轉(zhuǎn)因子存儲(chǔ)器中檢索出來的旋轉(zhuǎn)因子。
      28.如權(quán)利要求24的FFT處理器,其特征在于,在不用乘法器電路的情況下執(zhí)行簡(jiǎn)單旋轉(zhuǎn)因子乘法。
      29.如權(quán)利要求28的FFT處理器,其特征在于,用無操作、用改變符號(hào)操作或?qū)嵟c虛分量交換操作來執(zhí)行簡(jiǎn)單旋轉(zhuǎn)因子乘法。
      30.如權(quán)利要求24的FFT處理器,其特征在于,所述固定系數(shù)乘法電路包括實(shí)和虛分量乘法器,在第一加法器中將實(shí)分量乘法器的輸出加至虛分量乘法器的輸出,在第二加法器中從虛輸出中減去實(shí)輸出。
      31.如權(quán)利要求24的FFT處理器,其特征在于,用相同的固定系數(shù)乘法器電路來執(zhí)行要在各個(gè)DFT模塊中加以執(zhí)行的所有非簡(jiǎn)單旋轉(zhuǎn)因子乘法。
      32.一種用最小集成電路芯片面積形成的快速傅里葉變換(FFT)處理器,它用于有效地執(zhí)行低能耗快速傅里葉變換操作,所述處理器包括一個(gè)或多個(gè)離散傅里葉變換(DFT)模塊,每個(gè)DFT模塊均具有四個(gè)連在一起的2-點(diǎn)蝶單元;以及用一固定系數(shù)乘法器電路實(shí)現(xiàn)的一個(gè)或多個(gè)旋轉(zhuǎn)因子乘法器,它們將上述2-點(diǎn)蝶單元中的兩個(gè)連接起來;其中,由上述三個(gè)蝶單元來處理輸入數(shù)據(jù)流,以生成變換后的輸出數(shù)據(jù)序列。
      33.如權(quán)利要求32的FFT處理器,其特征在于,所述FFT處理器是流水線式的,帶有流水線寄存器,它位于各蝶單元之間,并且,各個(gè)2-點(diǎn)蝶單元均包括一位于輸出與輸入之間的反饋通路。
      34.如權(quán)利要求33的FFT處理器,其特征在于,所述反饋通路是一單延遲反饋通路,并且,每個(gè)DFT模塊包括四個(gè)反饋寄存器,每個(gè)寄存器均包含有不同長(zhǎng)度的反饋序列。
      35.如權(quán)利要求32的FFT處理器,其特征在于,在不用乘法器電路的情況下執(zhí)行簡(jiǎn)單旋轉(zhuǎn)因子乘法。
      36.如權(quán)利要求35的FFT處理器,其特征在于,用無操作、用改變符號(hào)操作或?qū)嵟c虛分量交換操作來執(zhí)行簡(jiǎn)單旋轉(zhuǎn)因子乘法。
      37.如權(quán)利要求32的FFT處理器,其特征在于,第一固定系數(shù)乘法電路包括第一實(shí)和虛分量乘法器,在第一加法器中將上述第一實(shí)分量乘法器的輸出加至第一虛分量乘法器的輸出,在第二加法器中從虛乘法器輸出中減去實(shí)乘法器輸出。
      38.如權(quán)利要求37的FFT處理器,其特征在于,第二固定系數(shù)乘法電路包括實(shí)和虛分量變換器,這些變換器對(duì)一個(gè)旋轉(zhuǎn)因子乘法來說轉(zhuǎn)換至第一狀態(tài),對(duì)另一個(gè)旋轉(zhuǎn)因子乘法來說轉(zhuǎn)換至第二狀態(tài)。
      39.如權(quán)利要求38的FFT處理器,其特征在于,用所述第一和第二固定系數(shù)乘法器電路來執(zhí)行要在各個(gè)DFT模塊中加以執(zhí)行的所有非簡(jiǎn)單旋轉(zhuǎn)因子乘法。
      40.一種用FFT處理器來計(jì)算快速傅里葉變換(FFT)的方法,所述處理器是用最小集成電路芯片面積形成的,以便用減少的能耗有效地執(zhí)行快速傅里葉變換操作,所述方法包括下列步驟用一個(gè)或多個(gè)處理模塊來形成上述FFT處理器,每個(gè)處理模塊均實(shí)現(xiàn)按流水線的方式連在一起的三個(gè)2-點(diǎn)蝶單元以及通過一固定系數(shù)乘法器電路連接的至少兩個(gè)蝶單元;使輸入數(shù)據(jù)流作用于上述三個(gè)蝶單元中第一個(gè)單元的輸入并對(duì)該輸入數(shù)據(jù)流進(jìn)行處理;在上述三個(gè)蝶單元中第二個(gè)單元內(nèi)處理前述第一蝶單元的輸出;以及在上述三個(gè)蝶單元中第三個(gè)單元內(nèi)處理前述第二蝶單元的輸出,以生成輸出數(shù)據(jù)序列。
      41.如權(quán)利要求40的方法,其特征在于,該方法還包括用相同的固定系數(shù)乘法器來執(zhí)行不同的非簡(jiǎn)單旋轉(zhuǎn)乘法。
      42.如權(quán)利要求41的方法,其特征在于,用上述固定系數(shù)乘法器來執(zhí)行用于各處理模塊的所有非簡(jiǎn)單旋轉(zhuǎn)因子乘法。
      43.一種用FFT處理器來計(jì)算快速傅里葉變換(FFT)的方法,所述處理器是用最小集成電路芯片面積形成的,以便用減少的能量有效地執(zhí)行快速傅里葉變換操作,所述方法包括下列步驟用一個(gè)或多個(gè)處理模塊來形成上述FFT處理器,每個(gè)處理模塊均具有按流水線的方式連在一起的四個(gè)2-點(diǎn)蝶單元以及通過一固定系數(shù)乘法器電路連接的至少兩個(gè)蝶單元;使輸入數(shù)據(jù)流作用于上述四個(gè)蝶單元中第一個(gè)單元的輸入并對(duì)該輸入數(shù)據(jù)流進(jìn)行處理;在上述四個(gè)蝶單元中第二個(gè)單元內(nèi)處理前述第一蝶單元的輸出;在上述四個(gè)蝶單元中第三個(gè)單元內(nèi)處理前述第二蝶單元的輸出;以及在上述四個(gè)蝶單元中第四個(gè)單元內(nèi)處理前述第二蝶單元的輸出,以生成輸出數(shù)據(jù)序列。
      44.如權(quán)利要求43的方法,其特征在于,該方法還包括用相同的固定系數(shù)乘法器來執(zhí)行不同的非簡(jiǎn)單乘法。
      45.如權(quán)利要求43的方法,其特征在于,用兩個(gè)固定系數(shù)乘法器來執(zhí)行用于各處理模塊的所有非簡(jiǎn)單旋轉(zhuǎn)因子乘法。
      全文摘要
      用離散傅里葉變換(DFT)蝶模塊來形成快速傅里葉變換(FFT)處理器,所述蝶模塊在最佳示例性實(shí)施例均具有大于4的長(zhǎng)度。在一第一示例性實(shí)施例中,所述FFT處理器使用了長(zhǎng)度-8的蝶。在一第二示例性實(shí)施例中,所述FFT處理器使用了長(zhǎng)度-16的蝶。此外,用低能耗固定系數(shù)乘法器來執(zhí)行各蝶模塊中的非簡(jiǎn)單旋轉(zhuǎn)因子乘法。通過分解簡(jiǎn)單和非簡(jiǎn)單旋轉(zhuǎn)因子并利用旋轉(zhuǎn)因子在復(fù)數(shù)平面中的對(duì)稱性和/或旋轉(zhuǎn)因子的分解,可減少不同非簡(jiǎn)單旋轉(zhuǎn)因子乘法的數(shù)量。依照上述和其它因子,本發(fā)明可用最小的能耗和IC芯片表面面積來構(gòu)成FFT處理器。
      文檔編號(hào)G06F17/14GK1290369SQ9881392
      公開日2001年4月4日 申請(qǐng)日期1998年12月18日 優(yōu)先權(quán)日1998年1月21日
      發(fā)明者R·B·赫爾貝里 申請(qǐng)人:艾利森電話股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1