專利名稱::重新編碼的基-2流水線fft處理器的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明一般地涉及流水線FFT處理器。更具體地,本發(fā)明涉及單路徑延遲反饋流水線快速傅立葉變換處理器。
背景技術(shù):
:傅立葉變換是眾所周知的數(shù)學(xué)運算,其被用于獲得時變信號的頻變表示。逆傅立葉變換執(zhí)行相反的操作。雖然傅立葉變換是連續(xù)函數(shù)的有用的分析工具,但它不能變換離散函數(shù),也不能變換在大多數(shù)應(yīng)用中更常見的采樣序列。離散傅立葉變換(DFT)實現(xiàn)了該目的。在包括執(zhí)行光譜分析或相關(guān)分析的數(shù)字信號處理系統(tǒng)的許多數(shù)字信號處理系統(tǒng)中,DFT是重要的功能元件。DFT的目的在于,已知另一個長度為N的數(shù)據(jù)序列{x(n)},計算具有N個復(fù)值數(shù)的序列{X(k)},用如下公式表示X(k)=Σn=0N-1x(n)WNkn]]>其中WN=e-j2π/N從這些公式中可以觀察到,對于每個值k,X(k)的直接計算涉及N個復(fù)數(shù)乘法和N-1個復(fù)數(shù)加法。因此,計算DFT的所有N個值將需要N2個復(fù)數(shù)乘法和N2-N個復(fù)數(shù)加法。通式解可用基于分治法(divide-and-conquer)的方法被分解,以減小與DFT相關(guān)的計算復(fù)雜度。使用分治法將數(shù)據(jù)序列分成多個部分,并單獨地處理每個部分。每個單獨部分可被進一步劃分。該分解形成基本的快速傅立葉變換(FFT)操作,其中,最常用的抽取因子(decimatingfactor)是2或4(導(dǎo)致執(zhí)行DFT的基-2或基-4FFT)。在分治法中,DFT的計算被分解成長度漸短的嵌套的DFT,直到DFT已經(jīng)被減小到其基。隨分治算法的進行,產(chǎn)生在復(fù)平面中有效地執(zhí)行相位旋轉(zhuǎn)的旋轉(zhuǎn)因子(twiddlefactor)。對于基-2分解,對輸入數(shù)據(jù)序列{x(n)}執(zhí)行長度2的DFT。長度2的DFT的第一級的結(jié)果使用長度2的DFT被合并,然后通過使最終值乘以適當(dāng)?shù)男D(zhuǎn)因子在復(fù)平面中旋轉(zhuǎn)最終值。繼續(xù)該過程直到已經(jīng)處理所有N個值并且產(chǎn)生最終輸出序列{X(k)}。將輸入序列分解成一系列較小序列,能夠?qū)⑴c完成DFT相關(guān)的復(fù)雜度從N2階復(fù)雜度減小到Nlog2N階復(fù)雜度。許多先前的解法提高了FFT處理器的吞吐量,同時通過使用基于流水線處理器的結(jié)構(gòu)來平衡FFT等待時間和FFT處理器的面積需求之間的關(guān)系。在流水線處理器結(jié)構(gòu)中,主要關(guān)心的是增加吞吐量并減少等待時間,同時還力圖最小化處理器結(jié)構(gòu)的面積需求。普通流水線FFT結(jié)構(gòu)通過為DFT重組計算中的每個級執(zhí)行單個長度2DFT(使用在蝶形單元中執(zhí)行的基-2蝶形運算)實現(xiàn)了這一點。也可以在每個重組級使用少于或多于一個的蝶形單元,然而,在實時數(shù)字系統(tǒng)中,這足夠使FFT處理器的計算速度和輸入數(shù)據(jù)速率相匹配。如果數(shù)據(jù)采集速度是每周期一個采樣,那么每個重組級具有一個蝶形單元就足夠了。這里簡單回顧了先前的流水線FFT結(jié)構(gòu),目的是透徹地了解根據(jù)本發(fā)明的FFT處理器。在該論述中,將包括執(zhí)行基-2、基-4、和更復(fù)雜的系統(tǒng)的算法。假設(shè)輸入和輸出次序是最適合該算法的任何形式。如果需要不同次序,那么考慮到與執(zhí)行緩沖器相關(guān)的存儲器代價,可在流水線FFT的輸入端和輸出端設(shè)置適當(dāng)?shù)闹匦屡判虻木彌_器。提供按次序的輸入的系統(tǒng)最適于數(shù)據(jù)一次到達(dá)一個采樣并可被立即處理的系統(tǒng)。無次序的輸入最適于其中數(shù)據(jù)可以以任意次序從緩沖器被提取的緩沖數(shù)據(jù)。所有現(xiàn)有結(jié)構(gòu)都基于DFT的頻率抽取(Decimation-In-FrequencyDIF)分解。輸入和輸出數(shù)據(jù)是復(fù)數(shù)的,并且所有的算術(shù)運算也是復(fù)數(shù)的。對于基-2算法,應(yīng)用N是2的冪的限制?;?4算法將N限制為4的冪,而基-8算法(R23SDF)將N限制為8的冪。為了清楚起見,已經(jīng)省略了所有控制和旋轉(zhuǎn)因子的硬件要求。圖1示出現(xiàn)有技術(shù)的16點基-2多路徑延遲換向器(R2MDC)流水線FFT的一般執(zhí)行方式。一般地,R2MDC方法將輸入序列分成兩個并行數(shù)據(jù)流。在每個級,數(shù)據(jù)流的一半在存儲器中被緩沖并且然后與數(shù)據(jù)流的另一半并行處理。R2MDC結(jié)構(gòu)中的乘法器和加法器的利用率是50%。R2MDC結(jié)構(gòu)需要個延遲寄存器。圖2示出現(xiàn)有技術(shù)的256點基4多路徑延遲換向器(R4MDC)的一般執(zhí)行方式。一般地,R4MDC是R2MDC的基-4形式,其將輸入序列分成4個并行數(shù)據(jù)流。R4MDC結(jié)構(gòu)僅有25%的時間利用所有組件。R4MDC結(jié)構(gòu)需要個延遲寄存器。圖3示出現(xiàn)有技術(shù)的基-2單路徑延遲反饋(R2SDF)流水線16-位FFT的一般執(zhí)行方式。一般地,通過將蝶形單元輸出存儲在反饋移位寄存器中,R2SDF方法比R2MDC執(zhí)行方式更有效地使用寄存器。R2SDF執(zhí)行方式達(dá)到了乘法器和加法器的50%的利用率,并需要N-1個延遲寄存器。圖4示出現(xiàn)有技術(shù)的256點基-4單路徑延遲反饋(R4SDF)流水線FFT的一般執(zhí)行方式。一般地,R4SDF是R2SDF的基-4形式。在該執(zhí)行方式中,乘法器的利用率增加到75%,然而加法器的利用率僅為25%。如同在R2SDF結(jié)構(gòu)中一樣,R4SDF結(jié)構(gòu)需要N-1個延遲寄存器。如同R2SDF的情況一樣,存儲器被完全利用。圖5示出現(xiàn)有技術(shù)的256點基-4單路徑延遲換向器(R4SDC)流水線FFT的一般執(zhí)行方式。一般地,R4SDC使用修正基-4算法以達(dá)到乘法器的75%的利用率。R4SDC執(zhí)行方式需要2N-2個存儲器。圖6示出現(xiàn)有技術(shù)的256點基-22單路徑延遲反饋(R22SDF)流水線FFT結(jié)構(gòu)的一般執(zhí)行方式。一般地,R22SDF結(jié)構(gòu)用±1和±j的平凡乘法將一個基-4蝶形運算分成兩個基-2蝶形運算,以達(dá)到75%的乘法器利用率和50%的加法器利用率。R22SDF結(jié)構(gòu)需要N-1個存儲器。圖7示出現(xiàn)有技術(shù)的512點基-23單路徑延遲反饋(R23SDF)流水線FFT結(jié)構(gòu)的一般執(zhí)行方式。R23SDF結(jié)構(gòu)通過利用類似于R22SDF結(jié)構(gòu)的技術(shù)使基-8蝶形單元的硬件要求最小化。用內(nèi)部蝶形延遲硬件和±1、±j、以及0.707(±1-j)的平凡乘法使用單個基-8蝶形單元作為三個基-2蝶形單元的組合。R23SDF結(jié)構(gòu)需要N-1個存儲器。考慮到上述現(xiàn)有技術(shù),顯然,提供能夠減小執(zhí)行過程所需的硬件復(fù)雜度的FFT處理器是理想的。另外的提供能夠在減小的半導(dǎo)體面積中被執(zhí)行的FFT處理器也是理想的。制造能夠獲得這種減小的硬件復(fù)雜度和半導(dǎo)體面積的FFT用于任意的長度為2的冪的FFT運算也是理想的。
發(fā)明內(nèi)容本發(fā)明的目的在于消除或減輕先前的流水線FFT處理器的至少一個不足。在本發(fā)明的第一方面,提供了一種用于接收輸入序列的流水線快速傅立葉變換(FFT)處理器。該處理器包括至少一個FFT三聯(lián)體,用于接收輸入序列并輸出表示輸入序列的FFT的最終輸出序列。該至少一個FFT三聯(lián)體具有通過可選擇乘法器串聯(lián)的第一、第二、和第三蝶形模塊??蛇x擇乘法器對相鄰蝶形模塊的輸出序列選擇性地執(zhí)行平凡系數(shù)乘法和復(fù)系數(shù)乘法。該至少一個FFT三聯(lián)體中的每個在旋轉(zhuǎn)因子乘法器中終止。乘法器對其各自的三聯(lián)體的第三蝶形模塊的輸出應(yīng)用旋轉(zhuǎn)因子。在本發(fā)明的第一方面的實施例中,每個蝶形模塊包括基-2蝶形單元和反饋存儲器,其中,優(yōu)選地對于N個采樣的輸入序列,每個蝶形模塊的輸出序列X(k,n)均等于x(n)+(-1)kx(n+N2).]]>在本發(fā)明的另一個實施例中,至少一個可選擇乘法器被集成在鄰近蝶形模塊中。在另一個實施例中,每個可選擇乘法器均包括乘法器和用于旁通乘法器的開關(guān)。在另一個實施例中,第一和第二蝶形模塊通過用于選擇性地應(yīng)用平凡系數(shù)乘法的可選擇乘法器連接,并且第二和第三蝶形模塊優(yōu)選地通過用于執(zhí)行平凡系數(shù)乘法的可選擇乘法器和用于執(zhí)行復(fù)系數(shù)乘法的可選擇乘法器連接。在另一個實施例中,對于具有N個采樣的輸入序列,用于第一、第二、和第三蝶形模塊的反饋存儲器分別保存N/2、N/4、和N/8個采樣。在另一個實施例中,處理器用于接收長度為N的輸入序列,其中(log2N)mod3=1,處理器具有多個連續(xù)的FFT三聯(lián)體,并進一步包括具有蝶形單元和大小為保存單個采樣的相應(yīng)的存儲器的FFT終接器(terminator),F(xiàn)FT終接器用于從最終旋轉(zhuǎn)因子乘法器接收輸出序列并用于對接收的輸出序列執(zhí)行蝶形運算,以提供輸入序列的FFT。在可選實施例中,處理器用于接收長度為N的輸入序列,其中,(log2N)mod3=2,處理器具有多個連續(xù)的FFT三聯(lián)體,并進一步包括具有第一和第二蝶形單元的FFT終接器,每個蝶形單元分別具有大小為保存兩個采樣和單個采樣的相應(yīng)的存儲器,第一蝶形單元通過選擇性乘法器連接至第二蝶形單元,該選擇性乘法器用于選擇性地將第一蝶形單元的輸出乘以-j,F(xiàn)FT終接器從最終旋轉(zhuǎn)因子乘法器接收輸出序列并對接收的輸出序列執(zhí)行一對蝶形運算,以提供輸入序列的FFT。在另一個實施例中,旋轉(zhuǎn)因子乘法器是協(xié)調(diào)旋轉(zhuǎn)數(shù)字計算機旋轉(zhuǎn)器(cordicrotator)。在本發(fā)明的第二實施例中,提供了一種用于接收N個采樣的輸入序列的流水線FFT處理器。該處理器包括至少一個FFT三聯(lián)體。該至少一個FFT三聯(lián)體具有第一FFT級、第二FFT級、和第三FFT級。第一FFT級具有第一級基-2蝶形單元,用于接收輸入序列并根據(jù)對輸入序列執(zhí)行的蝶形運算提供第一級輸出序列,第一級基-2蝶形單元具有連接到其上的第一反饋存儲器。第二FFT級具有可選擇乘法器,用于選擇性地將第一級輸出序列乘以平凡系數(shù);以及第二級基-2蝶形單元,用于根據(jù)對可選擇乘法器的輸出執(zhí)行的蝶形運算提供第二級輸出序列,第二級基-2蝶形單元具有連接到其上的第二反饋存儲器。第三FFT級具有乘法可選擇乘法器(multiplyselectablemultiplier),用于選擇性地將第二級輸出序列乘以平凡系數(shù)和復(fù)系數(shù)中的至少一個;第三級基-2蝶形單元,用于根據(jù)對該乘法可選擇乘法器的輸出執(zhí)行的蝶形運算提供蝶形輸出,該第三級基-2蝶形單元具有連接到其上的第三反饋存儲器;以及乘法器用于將蝶形輸出乘以旋轉(zhuǎn)因子,以提供對應(yīng)于輸入序列的FFT的輸出序列。在本發(fā)明的第二方面的實施例中,第一、第二、和第三級輸出序列X(k,n)中的每個均等于x(n)+(-1)kx(n+N2).]]>在另一個實施例中,至少一個蝶形單元包括集成的左乘函數(shù),用于對接收的輸入序列應(yīng)用平凡系數(shù)乘法。在另一個實施例中,F(xiàn)FT處理器包括根據(jù)輸入序列的長度N確定的FFT終接器。在一個實施例中,F(xiàn)FT終接器包括具有大小為存儲單個采樣的存儲器的蝶形模塊,用于接收第三FFT級乘法器的輸出作為終接器輸入,并用于對該終接器輸入執(zhí)行蝶形運算以提供N個采樣的輸入序列的FFT。在可選實施例中,F(xiàn)FT終接器包括第一蝶形模塊,具有大小為存儲一對采樣的存儲器,用于接收第三級乘法器的輸出作為終接器輸入,并用于對該終接器輸入執(zhí)行蝶形運算;以及第二蝶形模塊,通過可選擇乘法器連接至終接器的第一蝶形模塊,該可選擇乘法器用于選擇性地將終接器的第一蝶形模塊的輸出乘以-j,該第二蝶形模塊具有大小為存儲單個采樣的存儲器,并用于對終接器的第一蝶形模塊的選擇性的乘法輸出執(zhí)行蝶形運算,以提供輸出序列的FFT。在本發(fā)明的第三實施例中,提供了一種用于在具有蝶形模塊的FFT處理器中對N個采樣的序列執(zhí)行FFT的方法。該方法包括以下步驟對所有整數(shù)1≤x≤log2N,重復(fù)下面的接收和緩沖、生成和選擇性乘法的步驟。接收和緩沖步驟包括從具有N個采樣的序列一次接收和緩沖個采樣。生成步驟包括使用第n個和第個采樣生成2點FFT。選擇性乘法步驟包括選擇性地將生成的2點FFT序列乘以復(fù)值被乘數(shù)。重復(fù)上面的步驟后,本方法包括以下步驟使用根據(jù)(log2N)mod3關(guān)系確定的終止序列終止FFT。在本發(fā)明第三方面的實施例中,從包括1、-j、和通過旋轉(zhuǎn)因子分解確定的復(fù)數(shù)旋轉(zhuǎn)因子的列表中選擇復(fù)值被乘數(shù)。在(log2N)mod3=1的實施例中,終止FFT的步驟包括緩沖從最終選擇性乘法接收的采樣并且使用緩沖的采樣和序列中的隨后采樣執(zhí)行2點FFT,以獲得N個采樣的序列的FFT。在(log2N)mod3=2的實施例中,終止FFT的步驟包括緩沖從最終選擇性乘法接收的一對采樣并且使用該兩個緩沖的采樣和序列中的兩個隨后采樣執(zhí)行成對的2點FFT;選擇性地將成對的2點FFT的結(jié)果乘以-j;以及緩沖從成對的2點FFT的選擇性乘法接收的采樣并且使用緩沖的采樣和序列中的隨后采樣執(zhí)行2點FFT,以獲得N個采樣的序列的FFT。對本領(lǐng)域的普通技術(shù)人員來說,通過結(jié)合附圖參閱本發(fā)明的特定實施例的如下描述,本發(fā)明的其它方面和特征將變的顯而易見。參照下面的附圖對本發(fā)明進行描述,在附圖中圖1是現(xiàn)有技術(shù)的16點R2MDCFFT處理器的框圖;圖2是現(xiàn)有技術(shù)的256點R4MDCXFFT處理器的框圖;圖3是現(xiàn)有技術(shù)的16點R2DSFFFT處理器的框圖;圖4是現(xiàn)有技術(shù)的256點R4SDFFFT處理器的框圖;圖5是現(xiàn)有技術(shù)的256點R4SDCFFT處理器的框圖;圖6是現(xiàn)有技術(shù)的16點R22SDFFFT處理器的框圖;圖7是現(xiàn)有技術(shù)的512點R22SDFFFT處理器的框圖;圖8是重新編碼的基-2DIFFFT流程圖,其中N=16;圖9是替換的重新編碼的基-2DIFFFT流程圖,其中N=16;圖10是RR2SDF流水線FFT的示例性實施例的框圖,其中N=128;圖11示出RR2SDFFFT結(jié)構(gòu)的示例性蝶形單元結(jié)構(gòu);圖12示出用于左乘平凡常數(shù)系數(shù)-j的RR2SDFFFT結(jié)構(gòu)的替換的蝶形單元結(jié)構(gòu);圖13是替換的RR2SDF流水線FFT的框圖,其中N=128;圖14是根據(jù)本發(fā)明的FFT三聯(lián)體的框圖;圖15是當(dāng)(log2N)mod3=1時使用的FFT終接器的框圖;圖16是當(dāng)(log2N)mod3=2時使用的FFT終接器的框圖;以及圖17是示出本發(fā)明的方法的流程圖。具體實施例方式本發(fā)明提供了用于以三聯(lián)體的方式執(zhí)行FFT的系統(tǒng)和方法。本發(fā)明的一個實施例提供了基于三聯(lián)體的FFT處理器,其允許在減小的半導(dǎo)體面積中的物理實現(xiàn),這是由于與現(xiàn)有技術(shù)的許多系統(tǒng)相比,硬件復(fù)雜度有所減小。本發(fā)明的實施例通過最小化蝶形乘法復(fù)雜度同時保持簡單的蝶形結(jié)構(gòu)而在現(xiàn)有類似工作的基礎(chǔ)上有所改進。描述了基-2頻率抽取FFT處理器中基-8分解的乘法復(fù)雜度。蝶形的乘法復(fù)雜度可以是任何2的基數(shù)的冪,但在這里所計劃的處理器中達(dá)到了實際極限,這是由于增加的過程控制復(fù)雜度優(yōu)于使用所述技術(shù)獲得的硬件增益。通過本發(fā)明的實施例獲得的硬件收益在單路徑延遲反饋流水線快速傅立葉變換處理器中完成,一般地通過對FFT運算重新編碼在VLSI芯片中實現(xiàn)。優(yōu)選地使用用于從具有N個采樣的x(n)的輸入序列生成X(k,n)=x(n)+-1kx(x+N2)]]>的輸出映射的蝶形單元。該蝶形單元優(yōu)選地采用帶有2對1多路復(fù)用器的適當(dāng)?shù)暮唵渭臃ㄆ骱蜏p法器硬件。在形成FFT三聯(lián)體的三個FFT級中使用具有蝶形單元和適當(dāng)大小的反饋存儲器的蝶形模塊。FFT級受工藝控制和時序電路支配,與來自源信號、存儲器、或其它FFT級的其它數(shù)字輸入通信,使得總的數(shù)據(jù)處理速率匹配或超過輸入序列(也稱為數(shù)字輸入信號)的速率。這允許FFT處理器在沒有停頓的情況下執(zhí)行連續(xù)變換。本發(fā)明的實施例的FFT處理器的周期是這樣的,其數(shù)據(jù)處理速率優(yōu)選地匹配或超過數(shù)字輸入信號的速率,并且因此FFT能夠在沒有停頓的情況下執(zhí)行連續(xù)變換。旋轉(zhuǎn)因子分解技術(shù)被用于確定可在8的任何冪的邊界處終止的復(fù)旋轉(zhuǎn)系數(shù),使得能夠使用標(biāo)準(zhǔn)基-2單路徑延遲反饋結(jié)構(gòu)進行FFT運算,以便處理器因此能夠通過切換到FFT的最終級中的基-2乘法復(fù)雜度FFT結(jié)構(gòu),來執(zhí)行2的任何冪的FFT。這可以通過在4的冪長度的FFT早期終止旋轉(zhuǎn)因子分解一個級并在嚴(yán)格2的冪長度的FFT早期終止旋轉(zhuǎn)因子分解兩個級來實現(xiàn)。下面將結(jié)合圖14、15、和16,更加詳細(xì)的描述對于2的冪的任何輸入長度的本發(fā)明的三聯(lián)體的使用。開發(fā)本發(fā)明的方法和系統(tǒng)的一個推動因素是減小蝶形乘法器復(fù)雜度,同時保持基-2算法的簡單蝶形結(jié)構(gòu)。系數(shù)重新編碼方法基于旋轉(zhuǎn)因子分解技術(shù)。重新編碼基-2方法和系統(tǒng)具有基-8分解的乘法復(fù)雜度,同時保持基-2分解的結(jié)構(gòu)和優(yōu)點。如上所述,通過以下方程定義大小為N的DFTX(K)=Σn=0Nx(n)WNkn]]>0≤k<N(1)其中WN是第N個旋轉(zhuǎn)因子并由以下方程定義WN=e-j2π/N本發(fā)明的方法將通過將DFT方程的分治分解法的前三個步驟一起考慮而推導(dǎo)出。在三個分解步驟后,n和k的方程通過以下公式定義n=N2n1+N4n2+N8n3+n4]]>k=k1+2k2+4k3+8k4(2)用三個分解步驟將(2)中的方程應(yīng)用于DFT方程(1),得到如下方程X(k1+2k2+4k3+8k4)=Σn4=0N8-1Σn3=01Σn2=01Σn1=01x(N2n1+N4n2+N8n3+n4)WN(N2n1+N4n2+N8n3+n4)(k1+2k2+4k3+8k4)---(3)]]>展開最里層的方程得到如下方程X(k1+2k2+4k3+8k4)=Σn4=0N8-1Σn3=01Σn2=01{BN2k1(N4n2+N8n3+n4)WN(N4n2+N8n3+n4)k1}WN(N4n2+N8n3+n4)(2k2+4k3+8k4)---(4)]]>其中表示蝶形運算并具有以下形式BN2k1(N4n2+N8n3+n4)=x(N4n2+N8n3+n4)+(-1)k1x(N4n2+N8n3+n4+N2)---(5)]]>可以使用標(biāo)準(zhǔn)分治法將(4)中的表達(dá)式進一步分解,直到獲得標(biāo)準(zhǔn)基-2頻率抽取FFT。然而,通過使用第二個分解步驟來減小旋轉(zhuǎn)系數(shù),可獲得具有較小電路面積的兩個蝶形結(jié)構(gòu)。通過合并方程(4)中的兩個旋轉(zhuǎn)因子項并最小化,可獲得以下方程WN(N4n2+N8n3+n4)(k1+2k2+4k3+8k4)=WN2Nn2k4WNN(n2k3+n3k4)WNN2(n2k2+n3k3)WNN4(n2k1+n3k2)WNN8(n3k1)WNn4(k1+2k2+4k3+8k4)]]>=(-1)(n2k2+n3k3)(-j)(n2k1+n3k2)WNN8(n3k1)WNn4(k1+2k2+4k3)WN8n4k4----(6)]]>其中WNN/8=22-j22---(7)]]>將方程(6)往回代入方程(4)并展開n2和n3的和得到X(k1+2k2+4k3+8k4)=Σn4=0N8-1[Y(k1,k2,k3,n4)WNn4(k1+2k2+4k3)]WN/8n4k4---(8)]]>其中Y(k1,k2,k3,n4)可采用存在于方程(9)和方程(10)中的形式中的任一種。Y(k1,k2,k3,n4)={[x(n4)+(-1)k1x(n4+N2)]+(-1)k2((-j)k1[x(n4+N4)+(-1)k1x(n4+3N4)])}+]]>(-1)k3{([x(n4+N8)+(-1)k1x(n4+5N8)]+(-1)k2((-j)k1[x(n4+3N8)+(-1)k1x(n4+7N8)]))(-j)k2WNN8k1}---(9)]]>對于N=16的FFT,該方程產(chǎn)生圖8中示出的信號流程圖??蛇x地,重新編碼的蝶形方程Y(k1,k2,k3,n4)可采用以下形式Y(jié)(k1,k2,k3,n4)={[x(n4)+(-1)k1x(n4+N2)]+(-1)k2((-j)k1[x(n4+N4)+(-1)k1x(n4+3N4)])}+]]>(-1)k3{((WNN8k1[x(n4+N8)+(-1)k1x(n4+5N8)])+(-1)k2((-j)k1WNN8k1[x(n4+3N8)+(-1)k1x(n4+7N8)]))(-j)k2}---(10)]]>用于該重新編碼的N=16的FFT的信號流程圖在圖9中示出。通過在4的冪或嚴(yán)格2的冪長度的FFT早期終止旋轉(zhuǎn)因子分解,并繼續(xù)標(biāo)準(zhǔn)基-2分解,可以建立用于任意2的冪長度的快速傅立葉變換。由于與噪聲相關(guān)的原因,目前,方程(9)中的分解和圖8比方程(10)中的分解和圖9略微優(yōu)選,這是因為帶有平凡乘法的蝶形運算首先出現(xiàn),然后帶有WNN/8的乘法的蝶形運算。在給定噪聲規(guī)格的實現(xiàn)中,標(biāo)準(zhǔn)分解允許小于使用交錯分解獲得的存儲單元的第二級存儲器單元。通過將使用上述方法生成的重新編碼的旋轉(zhuǎn)系數(shù)映入R2SDF結(jié)構(gòu),獲得重新編碼的基-2單路徑延遲反饋(RR2SDF)結(jié)構(gòu)。圖10示出N=128的RR2SDFFFT的示例性實施例。圖10示出用于使用RR2SDF執(zhí)行N=128的FFT的新型系統(tǒng)90。采樣序列從未示出的源被提供給基-2蝶形單元(BF2)102,該蝶形單元具有用于存儲64個采樣的反饋存儲器104。本領(lǐng)域技術(shù)人員可以理解,選擇大小為64個采樣的反饋存儲器以保存輸入序列中的N=128個采樣的一半。此外,BF2102和反饋存儲器104的組合可被稱為蝶形模塊100,下面描述的蝶形單元和反饋存儲器的組合也能夠稱為蝶形模塊。存儲器104接收BF2102的輸出,并將其內(nèi)容重新提供給BF2102以便和隨后接收的采樣集合結(jié)合使用。BF2102的輸出由將輸入乘以平凡系數(shù)-j的乘法器106改變。該布置被稱為可選擇乘法器。開關(guān)系統(tǒng)允許選擇乘以-j或乘以單位因子(unityfactor),這被實現(xiàn)作為乘法器的旁通。本領(lǐng)域技術(shù)人員可以理解,乘法的作用在于簡化在復(fù)平面中旋轉(zhuǎn)BF2102的輸出。BF2102和乘法器106的輸出被選擇性地提供給第二蝶形單元BF2108。BF2108具有類似于連接到BF2102的反饋存儲器104的反饋存儲器110。反饋存儲器110的大小優(yōu)選地為32個采樣。BF2108的輸出被切換,并被間斷地提供給乘法器112,以應(yīng)用復(fù)系數(shù)WNN/8。乘法器112的輸出和BF2108的輸出被切換為乘法器114的輸入,其中該乘法器應(yīng)用因子-j。該布置是乘法可選擇乘法器,其中,任何一個因子或兩個因子的單位可以選擇地被應(yīng)用到序列中。乘法器114的輸入和輸出被切換為BF2116的輸入,該BF2具有16個采樣的反饋存儲器118。WNN/8和-j的選擇性應(yīng)用用來僅在適當(dāng)時在復(fù)平面中執(zhí)行相位旋轉(zhuǎn)。BF2116具有大小為存儲16個采樣的反饋存儲器118。這完成了第一三聯(lián)體92。BF2116的輸出被提供到乘法器120,該乘法器將輸出乘以W1(n)的旋轉(zhuǎn)因子。BF2116的輸出在通過旋轉(zhuǎn)因子相位旋轉(zhuǎn)后作為輸入被提供到BF2122,該BF2具有大小為保存8個采樣的反饋存儲器124。BF2122的輸出被乘法器126選擇性地乘以-j。BF2122和乘法器126的輸出被切換為BF2128的輸入,該BF2具有大小優(yōu)選地為保存4個采樣的反饋存儲器130。BF108后面的乘法可選擇乘法器布置類似地在BF2128后面應(yīng)用,其中前面的乘法器130應(yīng)用WNN/8,并且第二個乘法器132應(yīng)用-j。乘法器132的輸入和輸出被選擇性地切換為BF2134的輸入,該BF2具有大小為存儲2個采樣的反饋存儲器136。BF2134的輸出被提供到乘法器138,該乘法器應(yīng)用W2(n)的旋轉(zhuǎn)因子。這表明第二三聯(lián)體94的完成。BF2134的輸出在乘法器138中相位旋轉(zhuǎn)后被提供給BF2140,該BF2具有大小為存儲一個采樣的反饋存儲器142。BF2140的輸出是輸入序列的完整FFT。本領(lǐng)域技術(shù)人員將會理解,上述結(jié)構(gòu)被描述為具有兩個FFT三聯(lián)體的流水線FFT處理器。第一三聯(lián)體92是第一級BF2102、第二級BF2108、和第三級BF2116以及相應(yīng)的反饋存儲器及旋轉(zhuǎn)因子單元或乘法器的組合。第二三聯(lián)體94是對應(yīng)于BF2122、BF2128、和BF2134的模塊以及相應(yīng)的反饋存儲器和旋轉(zhuǎn)因子單元或乘法器的組合。FFT處理器由BF2140和其形成FFT終接器96的相應(yīng)的反饋存儲器終止。本領(lǐng)域技術(shù)人員將理解,雖然反饋存儲器大小存在差異,但前兩個三聯(lián)體基本類似。本實施方式優(yōu)選地使用執(zhí)行以下方程描述的蝶形運算的蝶形單元,該蝶形運算可以使用將在下文中詳細(xì)描述的圖11示出的蝶形單元實現(xiàn)。X(k,n)=x(n)+(-1)kx(n+N2)]]>在前N/2s個周期中(其中,s是從1開始的蝶形級數(shù)目),蝶形單元通過旁通加法器和減法器硬件而在其反饋存儲器中收集數(shù)據(jù)。這通過將選擇信號Sn設(shè)置為零來實現(xiàn)。在隨后的N/2s個周期中,蝶形單元對輸入數(shù)據(jù)和在前N/2s個周期中存儲在反饋寄存器中的數(shù)據(jù)執(zhí)行2點FFT。蝶形單元的第一輸出X(n)被發(fā)送到級乘法器,其后可以是單位乘法器(即,線)、WNN/8的常數(shù)乘法、或復(fù)旋轉(zhuǎn)系數(shù)乘法器。乘法器的選擇通過過程控制被編程。蝶形單元的第二輸出X(n+N/2)被送回反饋存儲器,以被延遲N/2s個周期。在被延遲后,第二輸出X(n+N/2)被發(fā)送到級乘法器。重復(fù)該周期直到已經(jīng)處理所有N個數(shù)據(jù)點。完整FFT輸出將使最后單元處于逆位次序。由于FFT處理器的流水線本質(zhì),可以在沒有停頓的情況下連續(xù)執(zhí)行多個FFT。圖11通過出示例性基-2蝶形單元148的邏輯布局將其示出。該示例性蝶形單元148的運算對應(yīng)于上述蝶形運算的方法。超大規(guī)模集成電路(VLSI)設(shè)計領(lǐng)域、數(shù)字信號處理器(DSP)設(shè)計領(lǐng)域、和多個相關(guān)領(lǐng)域的技術(shù)人員將易于理解,這可以使用專用硬件、可編程門陣列實現(xiàn),或作為在通用或?qū)S锰幚砥餍酒蠄?zhí)行的軟件實現(xiàn)。圖10的反饋存儲器被用于允許存儲部分蝶形運算以便和隨后的采樣一起使用。節(jié)點150接收第n個采樣的實部xr(n),同時節(jié)點154接收第n個采樣的虛部xi(n)。節(jié)點158接收第(n+N/2)個采樣的實部xr(n+N/2),同時節(jié)點160接收第(n+N/2)個采樣的虛部xi(n+N/2)。加法器152將節(jié)點150和節(jié)點158處的值(對應(yīng)于兩個采樣的實部)相加,并將和傳到節(jié)點150a。加法器156將節(jié)點154和節(jié)點162處的值(對應(yīng)于兩個采樣的虛部)相加,并將和傳到節(jié)點154a。加法器160將節(jié)點150的值和節(jié)點158的負(fù)值相加,以獲得兩個采樣的實值的差。實值差被傳到節(jié)點158a。加法器164將節(jié)點154的值和節(jié)點162的負(fù)值相加,以獲得兩個采樣的虛值的差。虛值差被傳到節(jié)點162a。本領(lǐng)域技術(shù)人員將理解,在不偏離本發(fā)明的情況下,加法器160和164起到減法器的作用并能夠這樣執(zhí)行。蝶形單元148的輸出由同步信號Sn控制,該同步信號控制每個輸出處的開關(guān)。如上所述,根據(jù)開關(guān)信號確定Xr(n),以在節(jié)點150和節(jié)點150a處的值之間選擇。如上所述,根據(jù)開關(guān)信號確定Xi(n),以在節(jié)點154和節(jié)點154a處的值之間選擇。如上所述,根據(jù)開關(guān)信號確定Xr(n+N/2),以在節(jié)點158和節(jié)點158a處的值之間選擇。如上所述,根據(jù)開關(guān)信號確定Xi(n+N/2),以在節(jié)點162和節(jié)點162a處的值之間選擇。可以將圖11的蝶形運算左乘以常數(shù)系數(shù)(-j)k從而產(chǎn)生以下方程,其示例性執(zhí)行方式在圖12中示出。X(k1,k2,n)=(-j)k1(x(n)+(-1)k2x(n+N2))]]>在蝶形單元中,在前N/2s個周期(其中,s是從1開始的蝶形級數(shù)目),F(xiàn)FT通過旁通蝶形單元加法器和減法器硬件而在反饋存儲器中收集數(shù)據(jù)。這通過在2對1輸出多路復(fù)用器上將選擇信號Sn設(shè)置為0來實現(xiàn)。在隨后的N/2s個周期,蝶形單元對輸入數(shù)據(jù)和在前N/2s個周期中存儲在反饋寄存器中的數(shù)據(jù)執(zhí)行2點FFT。對于要求左乘以-j的FFT級,該乘法是平凡運算,其要求通過蝶形單元交換輸入信號的實部和虛部并且在虛數(shù)據(jù)路徑倒置加一減指向。對于前3N/2s+2個輸入執(zhí)行單位左乘,并且對于最后N/2s+2個輸入執(zhí)行-j復(fù)乘。蝶形單元的第一輸出X(n)被發(fā)送到級乘法器,其后可以是單位乘法器(即,線)、WNN/8的常數(shù)乘法、或復(fù)旋轉(zhuǎn)系數(shù)乘法器,并且該選擇通過過程控制被編程。蝶形單元的第二輸出X(n+N/2)被送回反饋存儲器以被延遲N/2s個周期。在延遲后,第二輸出X(n+N/2)被發(fā)送到級乘法器。完整FFT輸出將使最后單元處于逆位次序。由于FFT處理器的流水線本質(zhì),可以在不停頓的情況下連續(xù)執(zhí)行多個FFT。圖12通過示出示例性左乘基-2蝶形單元170的邏輯布局將其示出。該示例性左乘蝶形單元170的運算對應(yīng)于上述蝶形運算的方法。如同前面一樣,本領(lǐng)域技術(shù)人員可以理解,在多個平臺上執(zhí)行該示例性蝶形。節(jié)點172接收第n個采樣的實部xr(n),同時節(jié)點176接收第n個采樣的虛部xi(n)。如由控制信號確定的那樣,節(jié)點180和184接收第(n+N/2)個采樣的實部xr(n+N/2)和虛部xi(n+N/2)??刂菩盘栠€確定在這些節(jié)點的值到達(dá)加法器之前,對其應(yīng)用實-虛交換??刂菩盘栍山邮战粨Q信號Sn-1和Sn作為其輸入的邏輯與門188提供。如將在下文描述的,Sn也用于在加法器之后的值之間切換。加法器174將節(jié)點172和180的值相加,并將和傳到節(jié)點172a。如由188的控制信號確定的那樣,加法器178將節(jié)點176的值和節(jié)點184的值或節(jié)點184的負(fù)值相加。這些值的和或差被傳到節(jié)點176a。加法器182將節(jié)點172的值和節(jié)點180的負(fù)值相加,以獲得兩個節(jié)點的值的差。值的差被傳到節(jié)點180a。如由188的控制信號確定的那樣,加法器186將節(jié)點176的值和節(jié)點184的值或節(jié)點184的負(fù)值相加。值的和或差被傳到節(jié)點184a。本領(lǐng)域技術(shù)人員將理解,加法器182起到減法器的作用,并且加法器178和186分別左乘-i起到加法器-減法器塊的作用,并能夠在不偏離本發(fā)明的情況下實施。蝶形單元170的輸出由同步信號Sn控制,同步信號控制每個輸出的開關(guān)。如上所述,根據(jù)開關(guān)信號確定Xr(n),以在節(jié)點172和172a處的值之間選擇。如上所述,根據(jù)開關(guān)信號確定Xi(n),以在節(jié)點176和176a處的值之間選擇。如上所述,根據(jù)開關(guān)信號確定Xr(n+N/2),以在節(jié)點180和180a處的值之間選擇。如上所述,根據(jù)開關(guān)信號確定Xi(n+N/2),以在節(jié)點184和184a處的值之間選擇。本領(lǐng)域技術(shù)人員可以理解,由該蝶形單元執(zhí)行的左乘被選擇性的應(yīng)用,并允許選擇性的平凡乘法和鄰近蝶形單元的集成,該集成可在實施尺寸和復(fù)雜度方面具有優(yōu)勢。圖13示出用于使用RR2SDF實現(xiàn)FFT的新型系統(tǒng)200,其中N=128。采樣序列從未示出的源被提供到基-2蝶形單元(BF2)202,該蝶形單元具有用于存儲64個采樣的反饋存儲器204。存儲器接收BF2202的輸出,并將其內(nèi)容重新提供給BF2202,以便與隨后接收的采樣集合結(jié)合使用。BF2202的輸出被提供給乘法可選擇乘法器,其中,其被間歇地提供給乘法器112以應(yīng)用復(fù)系數(shù)WNN/8。乘法器112的輸出和BF2202的輸出被切換為乘法器114的輸入,該乘法器應(yīng)用平凡系數(shù)-j。乘法器114的輸入和輸出被切換為BF2208的輸入。BF2208具有與連接到BF2202的反饋存儲器204類似的反饋存儲器210。反饋存儲器210的大小優(yōu)選地為保存32個采樣。BF2208的輸出被提供給可選擇乘法器,該實施例中是乘法器106,用于應(yīng)用-j。BF2208和乘法器106的輸出被提供作為BF2216的輸入,該BF2具有16個采樣反饋存儲器218。BF2216的輸出被提供給乘法器120,該乘法器將輸出乘以W1(n)的旋轉(zhuǎn)因子。至此所述的系統(tǒng)形成圖13的系統(tǒng)的第一三聯(lián)體92a。本領(lǐng)域技術(shù)人員將理解,第一三聯(lián)體92a的結(jié)構(gòu)在構(gòu)造上類似于圖10示出的實施例的第一三聯(lián)體92的結(jié)構(gòu)。在圖10和13的第一三聯(lián)體92和92a中,BF2單元保持類似的安排,但旋轉(zhuǎn)因子的應(yīng)用被重新排列,因此在圖10的實施例中的前兩個BF2單元之間應(yīng)用的旋轉(zhuǎn)因子被應(yīng)用在圖13的實施例中第二和第三BF2之間,反之亦然。在系統(tǒng)的第二三聯(lián)體94a中,乘法器120的輸出被用作BF2222的輸入,該BF2具有大小為保存8個采樣的反饋存儲器224。BF2222的輸出被提供給乘法器130和132的乘法可選擇乘法器排列,其中,前面的乘法器130應(yīng)用復(fù)系數(shù)WNN/8,而第二個乘法器132應(yīng)用平凡系數(shù)-j。乘法器132的輸入和輸出被切換為BF2228的輸入,該BF2具有大小為存儲4個采樣的反饋存儲器229。BF2228的輸出被應(yīng)用平凡系數(shù)-j的乘法器126改變。BF2228和乘法器126的輸出被切換為BF2234的輸入,該BF2具有大小優(yōu)選地為保存2個采樣的反饋存儲器236。BF2234的輸出被提供給乘法器138,其中,其被旋轉(zhuǎn)因子W2(n)相位旋轉(zhuǎn)。這形成了系統(tǒng)中第二三聯(lián)體。乘法器138的輸出被提供給包括BF2240的FFT終接器96a,該BF2具有大小為存儲一個采樣的反饋存儲器242。BF2240的輸出是輸入序列的完整FFT。上面參考圖10和13描述的實施方式采用乘法器、可選擇乘法器、和乘法可選擇乘法器。乘法器接收兩個輸入并提供其輸入的產(chǎn)物作為輸出。在圖10和13的示例性實施例中使用乘法器,用于旋轉(zhuǎn)因子的應(yīng)用??蛇x擇乘法器是乘法器和開關(guān)的組合,這樣布置使得乘法器能夠被旁通。在圖10和13的示例性實施例中使用可選擇乘法器,用于在兩個蝶形模塊之間的平凡系數(shù)-j的應(yīng)用以及復(fù)系數(shù)WNN/8的應(yīng)用。乘法可選擇乘法器是串聯(lián)的兩個或更多個可選擇乘法的排列。串聯(lián)的可選擇乘法器的布置允許沒有、任一個、或兩個乘法器將被旁通。在圖10和13的示例性實施例中使用乘法可選擇乘法器,用于平凡系數(shù)-j、復(fù)系數(shù)WNN/8、-j和WNN/8、或單位因子的應(yīng)用。可選擇乘法器或乘法可選擇乘法器可以用于通過旁通乘法器來選擇性地應(yīng)用單位乘法。注意,兩個RR2SDF分解之間的蝶形結(jié)構(gòu)是相同的,然而,WNN/8的平凡乘法的位置是不同的。當(dāng)試圖滿足噪聲規(guī)格時,第二和第五緩沖器的存儲器緩沖器需求在替換的RR2SDF分解中將更大,超過前面示出的標(biāo)準(zhǔn)分解(standarddecomposition)。這在第二緩沖器的情況下尤其重要,其中,第二緩沖器具有N/4個復(fù)合存儲器存儲元件。用于前面討論的流水線處理器FFT結(jié)構(gòu)的復(fù)數(shù)乘法器、加法器、和存儲器單元的數(shù)量的比較在表1中示出。在該表中,所有值已經(jīng)使用可應(yīng)用的基-4算法列出,以易于基-2、基-4、和基-8結(jié)構(gòu)的比較。<tablesid="table1"num="001"><tablewidth="804">乘法器#加法器#存儲器大小R2MDC2(log4N-1)4log4N3N/2-2R4MDC3(log4N-1)8log4N5N/2-4R2SDF2(log4N-1)4log4NN-1R4SDFlog4N-18log4NN-1R4SDClog4N-13log4N2N-2R22SDFlog4N-14log4NN-1R23SDFlog4N-14log4NN-1R2SDPlog4N-12log4NN-1R2SDP(可用狀態(tài))log4N-12log4N2N-2RR2SDFlog4N-14log4NN-1</table></tables>表1-用于前面討論的流水線處理器FFT結(jié)構(gòu)的復(fù)數(shù)乘法器、加法器、和存儲器單元的數(shù)量的比較在表1中,RR2SDF結(jié)構(gòu)的性能看起來似乎與R22SDF結(jié)構(gòu)相同。然而,實際上,同傳統(tǒng)R22SDF結(jié)構(gòu)中的log8N-1個復(fù)數(shù)乘法器相比,RR2SDF結(jié)構(gòu)通常僅具有l(wèi)og8N-1個復(fù)數(shù)乘法器(每個復(fù)數(shù)乘法器需要4個實乘法器和2個實加法器)和log8N-1個常數(shù)復(fù)數(shù)乘法器(每個運算需要2個實常數(shù)乘法器和2個實加法器)。RR2SDF和R23SDF結(jié)構(gòu)具有同等數(shù)量的算子(operator),然而,與R23SDF結(jié)構(gòu)不同,RR2SDF結(jié)構(gòu)不局限于8的冪的FFT長度,而是能夠是所有2的冪的FFT長度。R23SDF結(jié)構(gòu)需要在不必存在于RR2SDF結(jié)構(gòu)中的蝶形單元中有額外的寄存級。對于給定的噪聲性能規(guī)格,標(biāo)準(zhǔn)RR2SDF結(jié)構(gòu)中的常數(shù)乘法的次序允許用于第二級存儲器的更好的實用硬件性能,優(yōu)于替換的RR2SDF或R23SDF結(jié)構(gòu)。圖14示出本發(fā)明的三聯(lián)體。蝶形模塊100a包括蝶形單元248和反饋存儲器250。存儲器250的大小優(yōu)選地為保存N/2個采樣,其中,三聯(lián)體的序列長度是N(2的冪)。蝶形模塊100a向可選擇乘法器256提供2點FFT輸出,該乘法器選擇性地將100a的2點輸出乘以復(fù)系數(shù)-j。可選擇乘法器256的輸出被提供到蝶形模塊100b,該蝶形模塊具有蝶形單元248和大小為保存N/4個采樣的存儲器252。蝶形模塊100b對由可選擇乘法器256提供的采樣序列提供2點FFT輸出。蝶形模塊100b的2點FFT輸出被提供到乘法可選擇乘法器258,其選擇性地將蝶形模塊100b的輸出適當(dāng)?shù)某艘訵NN/8和/或-j??蛇x擇乘法器258的最終輸出被提供給蝶形模塊100c,該蝶形模塊具有蝶形單元248和大小為保存N/8個采樣的存儲器254。最終2點FFT輸出被提供給乘法器,其將適當(dāng)?shù)男D(zhuǎn)因子W1(n)應(yīng)用于輸出。本領(lǐng)域技術(shù)人員將理解,本發(fā)明的三聯(lián)體可與其它三聯(lián)體串聯(lián)使用,以設(shè)計用于任何8的冪長度的輸入串的FFT處理器。本發(fā)明的FFT處理器需要最小數(shù)量的蝶形運算用于給定長度的序列。對于對長度N的序列的FFT運算,有三個不同的FFT終止條件,其允許執(zhí)行任何2的冪長度的FFT。這三個終止條件與輸入序列的長度N有關(guān),并可通過對(log2N)mod3求值快速確定。當(dāng)(log2N)mod3=0時,F(xiàn)FT不需要FFT終接器,因為FFT三聯(lián)體系列已經(jīng)執(zhí)行了所需的蝶形運算數(shù)目。當(dāng)(log2N)mod3=1時,除了一個所需的蝶形運算外,三聯(lián)體已經(jīng)執(zhí)行了所需的所有蝶形運算。因此,當(dāng)(log2N)mod3=1時,F(xiàn)FT處理器需要如圖15所示的具有單個終止蝶形的FFT終接器。(log2N)mod3=1的終接器260包括具有大小為保存單個采樣的存儲器260的蝶形單元262。當(dāng)(log2N)mod3=2時,除了兩個所需的蝶形運算,三聯(lián)體已經(jīng)執(zhí)行了所有所需的所有蝶形運算。因此,當(dāng)(log2N)mod3=2時,F(xiàn)FT要求如圖16所示的FFT終接器。(log2N)mod3=2的終接器包括具有大小為保存2個采樣的存儲器270的蝶形單元268。蝶形單元268的輸出被選擇性地由乘法器272做乘法,該乘法器選擇性地應(yīng)用-j??蛇x擇乘法器272的輸出被提供給蝶形單元274,該蝶形單元連接至大小為保存1個采樣的反饋存儲器276。當(dāng)放置在適當(dāng)?shù)娜?lián)體系列之后時,終接器260和266終止FFT處理器,該FFT處理器允許用于任何輸入序列長度N的處理器設(shè)計,其中N是2的冪。圖17是示出本發(fā)明的方法的流程圖。在步驟300中,接收N個采樣的輸入序列。步驟306、308、和310對應(yīng)于第一蝶形模塊的運算,并形成步驟302。在步驟306中,前一半采樣被緩沖。在步驟308中,緩沖的采樣結(jié)合無緩沖的新近到達(dá)的采樣成對使用,以生成2點FFT。為每對采樣重復(fù)成對的生成2點FFT。在步驟310中,每個2點FFT序列被選擇性地乘以復(fù)值被乘數(shù)。步驟312對應(yīng)于三聯(lián)體中的第二蝶形模塊的運算。在步驟314,四分之一的采樣被緩沖。當(dāng)緩沖N/4個采樣時,在步驟316中,緩沖的采樣和新近到達(dá)的采樣被用于生成新的成對2點FFT序列。重復(fù)步驟316和314,直到序列中的所有N個采樣被適當(dāng)?shù)靥幚怼T诓襟E318中,步驟316的成對FFT序列被選擇性地乘以復(fù)值被乘數(shù)。步驟320對應(yīng)于三聯(lián)體中的第三蝶形模塊的運算。在步驟322,由步驟318提供的采樣的八分之一被緩沖。在步驟324中,基于緩沖的采樣和新近到達(dá)的采樣生成2點FFT。連續(xù)的生成FFT序列用于存儲器中所有的配對,并且重復(fù)步驟322和324,直到所有N個采樣被處理。在步驟326中,步驟324的結(jié)果被選擇性地乘以復(fù)值旋轉(zhuǎn)因子。在步驟328中,根據(jù)(log2N)mod3的關(guān)系確定的適當(dāng)?shù)慕K止序列然后被應(yīng)用到三聯(lián)體中的第三蝶形模塊的輸出。本發(fā)明的方法和系統(tǒng)允許被執(zhí)行用于FFT處理器的簡化設(shè)計。本發(fā)明的FFT處理器利用FFT三聯(lián)體和序列終接器(易于確定的終止元件)的重復(fù)結(jié)構(gòu)。FFT三聯(lián)體和適當(dāng)?shù)慕K接器的重復(fù)使用允許本發(fā)明的FFT處理器的可延伸性以適用于任意長度N的輸入序列,其中N=2Q,且Q是非負(fù)整數(shù)。如上面指出的那樣,本發(fā)明的結(jié)構(gòu)提供了不大于現(xiàn)有技術(shù)解的實現(xiàn),同時,提供對長度是2的冪的所有序列的可應(yīng)用性,這與由現(xiàn)有技術(shù)的R23SDF實現(xiàn)所使用的8的冪相對。以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。權(quán)利要求1.一種流水線快速傅立葉變換(FFT)處理器,用于接收輸入序列,所述處理器包括至少一個FFT三聯(lián)體,具有通過可選擇乘法器串聯(lián)的第一、第二、和第三蝶形模塊,所述可選擇乘法器用于對鄰近蝶形模塊的輸出序列選擇性地執(zhí)行平凡系數(shù)乘法和復(fù)系數(shù)乘法,所述至少一個FFT三聯(lián)體中的每個在旋轉(zhuǎn)因子乘法器中終止,所述旋轉(zhuǎn)因子乘法器用于對所述各個三聯(lián)體的所述第三蝶形模塊的輸出應(yīng)用旋轉(zhuǎn)因子,所述至少一個FFT三聯(lián)體用于接收所述輸入序列并用于輸出表示所述輸入序列的FFT的最終輸出序列。2.根據(jù)權(quán)利要求1所述的處理器,其中,每個蝶形模塊包括基-2蝶形單元和反饋存儲器。3.根據(jù)權(quán)利要求2所述的處理器,其中,對于N個采樣的輸入序列,每個蝶形模塊的輸出序列X(k,n)都等于x(n)+(-1)kx(n+N2).]]>4.根據(jù)權(quán)利要求1至3中的任一項所述的處理器,其中,至少一個用于執(zhí)行平凡系數(shù)乘法的所述可選擇乘法器被集成到鄰近蝶形模塊中。5.根據(jù)權(quán)利要求1至4中的任一項所述的處理器,其中,所述可選擇乘法器的每個都包括乘法器和用于旁通所述乘法器的開關(guān)。6.根據(jù)權(quán)利要求1至5中的任一項所述的處理器,其中,所述第一和第二蝶形模塊通過用于選擇性地應(yīng)用平凡系數(shù)乘法的可選擇乘法器連接。7.根據(jù)權(quán)利要求6所述的處理器,其中,所述第二和第三蝶形模塊通過用于執(zhí)行平凡系數(shù)乘法的可選擇乘法器和用于執(zhí)行WNN/8的復(fù)系數(shù)乘法的可選擇乘法器連接。8.根據(jù)權(quán)利要求2所述的處理器,其中,對于具有N個采樣的輸入序列,用于所述第一、第二、和第三蝶形模塊的所述反饋存儲器分別保存N/2、N/4、和N/8個采樣。9.根據(jù)權(quán)利要求1至8中的任一項所述的處理器,其中,所述輸入序列的長度為N,其中(log2N)mod3=1,所述處理器具有串聯(lián)的多個FFT三聯(lián)體并進一步包括FFT終接器,所述FFT終接器具有蝶形單元和大小為保存單個采樣的相應(yīng)的存儲器,所述FFT終接器用于接收來自所述最終旋轉(zhuǎn)因子乘法器的所述輸出序列,并用于對所述接收的輸出序列執(zhí)行蝶形運算,以提供所述輸入序列的FFT。10.根據(jù)權(quán)利要求1至9中的任一項所述的處理器,其中,所述輸入序列的長度為N,其中(log2N)mod3=2,所述處理器具有串聯(lián)的多個FFT三聯(lián)體并進一步包括FFT終接器,所述FFT終接器具有第一和第二蝶形單元,所述蝶形單元具有大小分別為保存兩個采樣和單個采樣的相應(yīng)的存儲器,所述第一蝶形單元通過可選擇乘法器連接至所述第二蝶形單元,所述可選擇乘法器用于選擇性地將所述第一蝶形單元的輸出乘以-j,所述FFT終接器用于接收來自所述最終旋轉(zhuǎn)因子乘法器的所述輸出序列,并用于對所述接收的輸出序列執(zhí)行一對蝶形運算,以提供所述輸入序列的FFT。11.根據(jù)權(quán)利要求1至10中的任一項所述的處理器,其中,所述旋轉(zhuǎn)因子乘法器是協(xié)調(diào)旋轉(zhuǎn)數(shù)字計算機旋轉(zhuǎn)器。12.一種流水線快速傅立葉變換(FFT)處理器,用于接收N個采樣的輸入序列,所述處理器包括至少一個FFT三聯(lián)體,所述三聯(lián)體具有第一FFT級,具有第一級基-2蝶形單元,所述第一級基-2蝶形單元用于接收所述輸入序列并用于根據(jù)對所述輸入序列執(zhí)行的蝶形運算提供第一級輸出序列,所述第一級基-2蝶形單元具有連接到其上的第一反饋存儲器;第二FFT級,具有可選擇乘法器,用于選擇性地將所述第一級輸出序列乘以平凡系數(shù);以及第二級基-2蝶形單元,用于根據(jù)對所述可選擇乘法器的輸出執(zhí)行的所述蝶形運算提供第二級輸出序列,所述第二級基-2蝶形單元具有連接到其上的第二反饋存儲器;以及第三FFT級,具有乘法可選擇乘法器,所述乘法可選擇乘法器用于選擇性地將所述第二級輸出序列乘以所述平凡系數(shù)和復(fù)系數(shù)中的至少一個;第三級基-2蝶形單元,用于根據(jù)對所述乘法可選擇乘法器的輸出執(zhí)行的所述蝶形運算提供蝶形輸出,所述第三級基-2蝶形單元具有連接到其上的第三反饋存儲器;以及乘法器,用于將所述蝶形輸出乘以旋轉(zhuǎn)因子,以提供對應(yīng)于所述輸入序列的FFT的輸出序列。13.一種流水線快速傅立葉變換(FFT)處理器,用于接收N個采樣的輸入序列,所述處理器包括至少一個FFT三聯(lián)體,所述三聯(lián)體具有第一FFT級,具有第一級基-2蝶形單元,所述第一級基-2蝶形單元用于接收所述輸入序列并用于根據(jù)對所述輸入序列執(zhí)行的蝶形運算提供第一級輸出序列,所述第一級基-2蝶形單元具有連接到其上的第一反饋存儲器;第二FFT級,具有乘法可選擇乘法器,用于選擇性地將所述第一級輸出序列乘以所述平凡系數(shù)和常數(shù)復(fù)系數(shù)中的至少一個;以及第二級基-2蝶形單元,用于根據(jù)對所述可選擇乘法器的輸出執(zhí)行的所述蝶形運算提供第二級輸出序列,所述第二級基-2蝶形單元具有連接到其上的第二反饋存儲器;以及第三FFT級,具有可選擇乘法器,用于選擇性地將所述第二級輸出序列乘以平凡系數(shù);第三級基-2蝶形單元,用于根據(jù)對所述可選擇乘法器的輸出執(zhí)行的所述蝶形運算提供蝶形輸出,所述第三級基-2蝶形單元具有連接到其上的第三反饋存儲器;以及乘法器,用于將所述蝶形輸出乘以旋轉(zhuǎn)因子,以提供對應(yīng)于所述輸入序列的FFT的輸出序列。14.根據(jù)權(quán)利要求12和13中的任一項所述的FFT處理器,其中,所述第一、第二、和第三級輸出序列X(k,n)中的每個都等于x(n)+(-1)kx(n+N2).]]>15.根據(jù)權(quán)利要求12至14中的任一項所述的FFT處理器,其中,所述蝶形單元的至少一個包括集成的左乘函數(shù),用于對接收的輸入序列應(yīng)用平凡系數(shù)乘法。16.根據(jù)權(quán)利要求12至15中的任一項所述的FFT處理器,進一步包括根據(jù)所述輸入序列的長度N確定的FFT終接器。17.根據(jù)權(quán)利要求16所述的FFT處理器,其中,所述FFT終接器包括具有大小為存儲單個采樣的存儲器的蝶形模塊,所述蝶形模塊用于接收所述第三FFT級乘法器的輸出作為終接器輸入,并用于對所述終接器輸入執(zhí)行蝶形運算,以提供所述N個采樣的輸入序列的FFT。18.根據(jù)權(quán)利要求16所述的FFT處理器,其中,所述FFT終接器包括具有大小為存儲一對采樣的存儲器的第一蝶形模塊,所述第一蝶形模塊用于接收所述第三級乘法器的輸出作為終接器輸入,并用于對所述終接器輸入執(zhí)行蝶形運算;以及第二蝶形模塊,通過可選擇乘法器連接至所述終接器的所述第一蝶形模塊,所述可選擇乘法器用于選擇性地將所述終接器的所述第一蝶形模塊的輸出乘以-j,所述第二蝶形模塊具有大小為存儲單個采樣的存儲器,并用于對所述終接器的所述第一蝶形模塊的選擇性乘法輸出執(zhí)行蝶形運算,以提供所述輸出序列的FFT。19.一種用于在具有蝶形模塊的FFT處理器中對N個采樣的序列執(zhí)行FFT的方法,所述方法包括對所有整數(shù)1≤x≤log2N,重復(fù)以下步驟從具有N個采樣的序列一次接收并緩沖個采樣;使用第n個和第個采樣生成2點FFT;選擇性地將所述生成的2點FFT序列乘以復(fù)值被乘數(shù);使用根據(jù)(log2N)mod3的關(guān)系確定的終止序列終止所述FFT。20.根據(jù)權(quán)利要求19所述的方法,其中,所述復(fù)值被乘數(shù)從包括1、-j、和復(fù)旋轉(zhuǎn)因子系數(shù)的列表中選擇。21.根據(jù)權(quán)利要求19和20中的任一項所述的方法,其中,(log2N)mod3=1并且終止所述FFT的步驟包括緩沖從所述最終選擇性乘法接收的采樣,并使用所緩沖的采樣和所述序列中隨后采樣執(zhí)行2點FFT,以獲得N個采樣的序列的FFT。22.根據(jù)權(quán)利要求19至21中的任一項所述的方法,其中,(log2N)mod3=2并且終止所述FFT的步驟包括緩沖從所述最終選擇性乘法接收的一對采樣,并且使用所述兩個緩沖的采樣和所述序列中的兩個隨后采樣執(zhí)行成對的2點FFT;選擇性地將所述成對的2點FFT的結(jié)果乘以-j;以及緩沖從所述成對的2點FFT的所述選擇性乘法接收的采樣,并且使用所述緩沖的采樣和所述序列中隨后采樣執(zhí)行2點FFT,以獲得所述N個采樣的序列的FFT。全文摘要一種單路徑延遲反饋流水線快速傅立葉變換處理器,包括至少一組三聯(lián)體FFT級裝置第一FFT級裝置,包括基-2蝶形、反饋存儲器、和單位乘法;第二FFT級裝置,包括平凡系數(shù)左乘、基-2蝶形、反饋存儲器、和可選擇單位或W文檔編號G06F17/14GK1823333SQ200480020053公開日2006年8月23日申請日期2004年6月21日優(yōu)先權(quán)日2003年7月18日發(fā)明者肖恩·G·吉布,彼得·J·W·格勞曼申請人:加拿大西格納斯通信公司