新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的24點離散傅里葉變換結構設計

        基于FPGA的24點離散傅里葉變換結構設計

        作者: 時間:2012-10-23 來源:網絡 收藏

        摘要 基于Good—Thomas映射算法和ISE快速IP核,設計了一種易于實現的24點,所設計的24點DFT模塊采用流水線結構,主要由3個8點FFT模塊和1個3點DFT模塊級聯而成,并且兩級運算之間不需要旋轉因子,整個DFT模塊僅僅需要14個實數乘法器,布局布線后仿真工作時鐘頻率可達200 MHz。首先根據Good—Thomas算法將并行的24路輸入信號分成3組,每組8路信號,并進行并/串轉換,得到3路串行信號;其次,將3路串行信號分別輸入至3個FFT IP核模塊進行8點FFT運算;然后,將上述3個FFT IP核模塊同一時刻輸出的3路信號進行3點DFT變換;最后,將得到的3路并行輸出信號分別進行串/并轉換,得到24路DFT輸出信號。此外,設計的24點DFT結構還具有很好的擴展性,通過修改FFT IP核變換點數參數便可實現長度N=3×2n點DFT。
        關鍵詞 24點DFT;;Good—Thomas映射算法;FFT IP核

        由于具有高集成度、高速、可編程等優點,現場可編程門陣列(Field Programmable Gate Array,)已經廣泛用于多種高速信號實時處理領域中。(Discrete Fourier Transform,DFT),尤其對應的快速傅里葉變換(Fast Fourier Transform,FFT),是數字信號處理中的一種基本變換。基于FPGA的FFT設計和實現是眾多應用中的一個重要環節,是眾多FPGA芯片廠商和研究工作者一直致力研究的內容。
        目前,Altera和Xilinx公司都提供了可塑性很強的FFT IP核,只要改動相應的參數設置,就可以應用于不同產品中。國內不少大學及研究所也已經采用FPGA芯片設計開發具有自主知識產權的FFT。然而,目前絕大多數基于FPGA的FFT主要采用Cooley—Tukey映射算法實現基2和基4結構的點FFT。這在實際應用中存在以下問題:1)某些場合中所采用的DFT變換點數不一定滿足,例如24點、48點等DFT無法采用上述FFT結構實現;2)采用Cooley—Tukey映射算法將高點數的DFT分解成若干個低點數DFT過程中,采用多級流水線結構實現FFT,但每一級輸出結果需要乘以相應旋轉因子后再進入下一級運算,從而增加了復數乘法器資源的使用。
        以Xilinx公司Virtex IV芯片為硬件平臺,結合Xilinx公司ISE10.1軟件提供的FFT IP核,提出一種適合FPGA實現的基于Good-Thomas算法的24點DFT結構。相對于已有的FFT結構,設計的DFT結構不僅能夠充分利用FFT IP核優良特性,還能大大節約復數乘法器資源的使用。同時,該結構還能擴展至變換長度N滿足N=3×2n的DFT。

        1 24點DFT實現原理
        1.1 Good—Thomas映射算法
        基于Cooley—Tukey映射算法和Good-Thomas映射算法的FFT均可以將長度為N=N1N2的DFT分解成N2個N1點DFT和N1個N2點DFT級聯的形式。尤其基于Cooley—Tukey映射的FFT是最為通用的FFT算法,能夠適應于任意N1和N2長度下的DFT。相對基于Cooley-Tukey映射的FFT,基于Good —Thomas映射的FFT只能適應于N1和N2互質情況下的DFT,但N1點DFT與N2點DFT之間的中間結果不需要采用旋轉因子進行調制,從而能夠大幅節約復數乘法器的使用。
        假設輸入序列x(n)長度為N=N1N2,其中N1和N2互質,則基于Good—Thomas映射的FFT實現步驟如下:
        a.JPG
        從以上步驟可以看出,基于Good—Thomas映射的FFT,雖然與基于Cooley—Tukey映射的FFT實現原理相似,但輸入/輸出索引映射不同,而且沒有旋轉因子。


        上一頁 1 2 3 4 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 灵川县| 广南县| 涞源县| 那曲县| 武城县| 玉溪市| 仲巴县| 大悟县| 涞源县| 阿拉善盟| 修武县| 罗山县| 丰顺县| 菏泽市| 肇庆市| 遵义县| 沂水县| 赣州市| 郓城县| 古交市| 新平| 八宿县| 永康市| 北辰区| 额尔古纳市| 嘉禾县| 广丰县| 银川市| 平乐县| 克什克腾旗| 东丽区| 连平县| 太保市| 涞源县| 平原县| 永州市| 平顶山市| 永平县| 岫岩| 克拉玛依市| 新乡县|