專利名稱:用于基-2快速傅立葉變換同址運算的地址產(chǎn)生方法
技術(shù)領(lǐng)域:
本發(fā)明屬通信和集成電路設(shè)計技術(shù)領(lǐng)域,具體涉及一種基-2快速傅立葉變換蝶形運算的 地址產(chǎn)生方法及其硬件實現(xiàn),尤其涉及一種適用于同址運算的地址產(chǎn)生方法及其硬件實現(xiàn)。
技術(shù)背景OFDM(正交頻分復址)技術(shù)的應(yīng)用使得通信質(zhì)量和數(shù)據(jù)率大大提高。快速傅立葉變換(FFT) 是這一技術(shù)中的關(guān)鍵算法,也是運算量和硬件開銷最大的部分。在FFT中,基2的同址運算 是目前廣泛采用的算法。其特點是,N點快速傅立葉變換中含有l(wèi)ogN級運算,每級運算含有 N/2個蝶形運算,每個蝶形結(jié)構(gòu)需要兩個操作數(shù)作為輸入。其中,第一級運算的所有輸入采 用與前級調(diào)制輸出的順序倒序,每級運算后的結(jié)果仍然存到操作數(shù)的輸入地址中。logN級運 算全部完成后,最后的N個結(jié)果正好按照調(diào)制輸出的順序輸出。從最后的輸出結(jié)果往回看, 第m級運算的數(shù)據(jù)是按照第m+l級結(jié)果序列的奇偶分開。每個蝶形運算的兩個操作數(shù)是奇偶 部分對應(yīng)的兩個數(shù)。雖然從后往前推導,操作數(shù)具有上述特點,但是快速傅立葉變換同址運 算的各級操作數(shù)的地址產(chǎn)生是計算的關(guān)鍵?,F(xiàn)有解決方案是采用基于ALU的地址發(fā)生器,通 過一定的算術(shù)和邏輯運算產(chǎn)生所需地址;或者通過查找表進行遍歷搜索。這些方法是以找出 第m級的輸出在第m+l級輸入的位置為目標。但是,這兩種方法對于硬件的消耗都比較大, 尤其是查找表的方法,對于傅立葉變換點數(shù)較大時不再適用。 發(fā)明內(nèi)容本發(fā)明的目的在于提供一種適用于基-2快速傅立葉變換同址運算的地址產(chǎn)生算法及其硬 件實現(xiàn),以尋找每個蝶形運算的操作數(shù)為目標,使用很少的硬件資源,完成所有地址的搜索。本發(fā)明提出的適用于基-2快速傅立葉變換(假設(shè)N點傅立葉變換,地址寬度r^logN)同 址運算的地址產(chǎn)生方法,其具體步驟如下根據(jù)奇偶分離規(guī)律,對于第m級運算,參與每個蝶形運算的兩個數(shù)的地址的第m位相反, 其余位相同;對于第m級運算,屏蔽指針地址的第m位,在剩下的n-1比特中循環(huán)加1,進行2"—'范圍內(nèi)的地址搜索;每個指針指到的地址都是參與某個蝶形運算的操作數(shù)所在地址,另一個操作 數(shù)地址由指針所指地址的第m位取反得到。本發(fā)明所提出的適用于基-2快速傅立葉變換同址運算地址產(chǎn)生方法的硬件實現(xiàn),包括一個初始地址寄存器;一個記錄生成地址的指針;一個多比特按位異或邏輯。其中,初始地址寄存器,其寬度為n比特的移位寄存器,與參與蝶形運算操作數(shù)地址的位寬相 同。初始地址與傅立葉變換的點數(shù)N和當前蝶形運算的級數(shù)m有關(guān)。記錄生成地址的指針是一個與操作數(shù)地址寬度相同的寄存器,每一級運算開始時都以初 始地址寄存器中的值為初值,當需要產(chǎn)生下一蝶形運算操作數(shù)地址時,指針值加l。按位異或邏輯可處理位寬為n比特,與指針和操作數(shù)地址的寬度相同。本發(fā)明的特點在于首先,以找出每級運算中參與每個蝶形運算的兩個操作數(shù)為目標, 不論這兩個數(shù)在上一級的輸出處于什么位置。其次,根據(jù)同址運算中奇偶分離的規(guī)律,利用 很少的硬件資源實現(xiàn)所有地址的搜索。
圖1是以8點快速傅立葉變換為例,根據(jù)同址運算的奇偶分離特性,各級蝶形運算輸入 數(shù)的規(guī)律圖示。圖2為根據(jù)圖1所示的同址運算的特點,輸入序列地址值的規(guī)律圖示。圖3是本發(fā)明提出的適用于快速傅立葉變換同址運算的地址產(chǎn)生方法圖示(以8點快速傅立葉變換為例)。圖4為本發(fā)明提出的地址產(chǎn)生算法的硬件實現(xiàn)圖示。圖中標號l為初始地址寄存器,2為指針寄存器,3為按位異或運算。
具體實施方式
以下參照附圖詳細描述本發(fā)明的具體實施方式
。圖1是以8點傅立葉變換為例,給出同址運算的特點。上圖為8點傅立葉變換的3級蝶 形運算的操作過程,下圖為各級蝶形運算輸入操作數(shù)序列的順序。同址運算的特點包括 第一級輸入數(shù)的順序為待處理信號正常序列的倒序; 最后一級的輸出還原為變換之前的順序序列; 每一級的輸入輸出值存在同一地址中;每一級輸入序列的順序是下一級輸入序列奇偶分開后的順序; 一個蝶形運算的操作數(shù)是奇偶部分對應(yīng)的兩個數(shù)。圖2給出了根據(jù)圖1所示的同址運算的特點,輸入序列地址值的規(guī)律(地址值從左到右 按位編號,地址位的最高位編號為l)??梢园l(fā)現(xiàn)第m級中每個蝶形運算的一對操作數(shù)的第m位相反,其余位相同((Km《n)。圖3是以8-FFT為例,給出了本發(fā)明提出的適用于基-2快速傅立葉變換同址運算的地址 產(chǎn)生方法。對于每一級蝶形運算(假設(shè)第m級運算),該方法包括第一步,指針初始值全0,位寬為n-l;第二步,屏蔽操作數(shù)地址值的第m位,其余位隨指針值增加,從全0到全1,遍歷所有 情況。地址值的搜索方式完全根據(jù)指針的累加計數(shù),與該地址在序列中的實際位置以及在上 一級的輸出位置無關(guān)。指針指到的地址所在值是參與第m級中一個蝶形運算的其中一個輸入 數(shù)。第三步,屏蔽位取反得到的地址值是參與該蝶形運算的另一個輸入數(shù)所在位置。 圖4給出了本發(fā)明提出的基-2快速傅立葉變換同址運算地址產(chǎn)生方法的硬件實現(xiàn)。根據(jù) 圖2和圖3所示的地址產(chǎn)生方法,比特屏蔽用初始地址寄存器1實現(xiàn)。初始地址寄存器1是 一個寬度為n,具有右移功能的移位寄存器。第m級運算初始地址的值是第m位為l,其余位 為0。指針寄存器2從初始值開始累加1。指針寄存器2中的每個值都是同級中某個蝶形運算 的一個輸入數(shù)地址。每次累加1后,指針寄存器2和初始地址寄存器1進行按位異或3運算 即可得到與指針寄存器2中對應(yīng)的參與同一個蝶形運算的另一操作數(shù)地址。當指針寄存器2 累加一個周期,即指針寄存器2從初始值累加到全1時,初始地址寄存器1右移一位,表示 當前級地址產(chǎn)生完畢,開始下一級運算。最后所應(yīng)說明的是以上實施例僅用以說明而非限制本發(fā)明的技術(shù)方案,盡管參照上述 實施例對本發(fā)明進行了詳細說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當理解依然可以對本發(fā)明進行 修改或者等同替換,而不脫離本發(fā)明的精神和范圍的任何修改或局部替換,其均應(yīng)涵蓋在本 發(fā)明的權(quán)利要求范圍當中。
權(quán)利要求
1、一種用于基-2快速傅立葉變換同址運算的地址產(chǎn)生方法,假設(shè)為N點傅立葉變換,則地址寬度n=logN,其特征在于具體步驟為根據(jù)同址蝶形運算奇偶分離的規(guī)律,對于第m級蝶形運算,屏蔽指針的第m位,在剩下的n-1比特中循環(huán)累加1,進行2n-1范圍內(nèi)的地址搜索;指針指到的每個值都是參與一個蝶形運算的其中一個操作數(shù)所在的地址;另一個操作數(shù)的地址由指針所指值的第m位取反得到。
2、 一種實現(xiàn)如權(quán)利要求1所述的用于基-2快速傅立葉變換同址運算的地址產(chǎn)生方法的硬 件結(jié)構(gòu),其特征在于包括一個初始地址寄存器;一個記錄生成地址的指針;一個多比特按位異或邏輯。
3、 根據(jù)權(quán)利要求2所述的硬件結(jié)構(gòu),其特征在于所述的初始地址寄存器是寬度為n比特 的移位寄存器,與參與蝶形運算操作數(shù)地址的位寬相同;初始地址與快速傅立葉變換點數(shù)N 和當前蝶形運算的級數(shù)m有關(guān);初始值設(shè)為第m位為l,其余n-l位為0;如果第m級蝶形運算計算完畢,則初始地址右移一位,用同樣的方法產(chǎn)生下一級蝶形運算所需的輸入數(shù)地址。
4、 根據(jù)權(quán)利要求2所述的硬件結(jié)構(gòu),其特征在于所述的記錄生成地址的指針是一個與操 作數(shù)地址寬度相同的寄存器;每一級蝶形運算開始時都以初始地址寄存器中的值為初始值, 當需要產(chǎn)生下一蝶形運算操作數(shù)地址時,指針值加l。
5、 根據(jù)權(quán)利要求2所述的硬件結(jié)構(gòu),其特征在于所述的按位異或邏輯,可處理的位寬為 n比特,與指針和操作數(shù)地址的寬度相同。
全文摘要
本發(fā)明屬于通信和集成電路設(shè)計技術(shù)領(lǐng)域,具體涉及一種用于基-2快速傅立葉變換同址運算的地址產(chǎn)生方法和硬件實現(xiàn)。地址產(chǎn)生方法根據(jù)同址運算的奇偶分離規(guī)律,以尋找每個蝶形運算的一對操作數(shù)為目標,借助指針累加1產(chǎn)生各個蝶形運算的一個操作數(shù)地址,借助一對操作數(shù)地址間的關(guān)系通過特殊位取反得到另一個對應(yīng)的操作數(shù)地址。實現(xiàn)上述地址產(chǎn)生方法的硬件結(jié)構(gòu)包含一個初始地址寄存器、一個記錄生成地址的指針和一個多比特按位異或邏輯。其中,初始地址寄存器是一個位寬與操作數(shù)存儲地址位寬相同的移位寄存器;指針是一個位寬與初始地址寄存器和存儲操作數(shù)地址的寬度相同的寄存器;異或邏輯支持的操作寬度與地址寬度相同。根據(jù)本發(fā)明提出的地址產(chǎn)生方法,硬件實現(xiàn)簡單,資源消耗很低。
文檔編號G06F17/14GK101221555SQ20081003303
公開日2008年7月16日 申請日期2008年1月24日 優(yōu)先權(quán)日2008年1月24日
發(fā)明者電 周, 周曉方, 爽 趙, 陸雯青 申請人:復旦大學