新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的64點FFT處理器設計

        基于FPGA的64點FFT處理器設計

        作者: 時間:2009-08-25 來源:網絡 收藏

        不同于以往的基-4 算法,這里是將輸入的64點數據以8位輸入數據為一組,共分成8組的方式輸入給運算單元進行運算的。完整的FFT蝶形運算共分6級,經歷196個循環狀態。將來自存儲單元的數據輸入到FFT運算單元中,前三級是按8位1組的方法,分為8組進行運算;后三級是將前三級運算所得到的中間數據送入運算單元進行運算。經過FFT運算后,將所得到運算結果寫入存儲單元中保存。結果以倒位序方式輸出,需要經過調整位序變換成為自然順序輸出。

        本文引用地址:http://www.104case.com/article/191949.htm

        2 FFT運算器設計
        2.1 系統的整體結構
        一個完整的FFT運算單元應該包括以下幾個組成部分:
        全局控制單元包括控制器和地址產生單元,用于調控整個FFT運算系統,生成蝶形運算單元以及其他子單元所需的地址,控制各子單元時序,保證其正常有序地工作;
        蝶形運算器單元 由蝶形運算器和旋轉因子存儲單元(ROM)組成,負責將送入的輸人數據進行蝶形運算,是FFT運算器的核心單元;
        存儲寄存器單元 采用兩個RAM乒乓通信,通過通信接口單元接收總線控制信號,負責存儲輸入數據、中間數據和運算所得最終結果。
        系統整體框圖如圖1所示。

        3 實驗結果驗證
        這里的FFT運算器通過硬件描述語言VHDL代碼進行編寫,在ModelSimSE PLUS 6.1f環境下完成系統仿真,波形仿真如圖3所示。
        由波形仿真圖可以看出,地址控制單元以3位二進制編碼定義各子單元的地址,存儲的數據在時序信號和地址總線單元控制下進行FFT運算。實驗證明,當外部時鐘頻率為40 MHz時,可以對隨機生成的64點序列進行FFT定點運算,運算時間為10μs。

        4 結 語
        這里的FFT運算器采用定點數處理,當處理浮點數時,系統存在處理異常、數據溢出等問題。但是由于可以迅速處理多點數信號,因此在數字圖像處理、實時通信系統的調試和解調等方面具有一定的實際意義,達到了使用實現DSP算法的目的。
        本文在以下方面有所創新:
        (1)輸入的64位數據以8位共8組的方式并行輸入,將FFT運算流程分為6級,整個FFT運算過程清晰,結構合理,提高了運行效率。
        (2)使用2塊雙口RAM作為存儲器,采用“乒乓操作”,在一個時鐘周期內保證數據傳遞的單向性,減少了數據傳輸的冗余,提高了精度。
        (3)將整個FFT運算器進行模塊化設計,在控制模塊的調配下,各個子模塊準確工作,保證了運算的可靠性。


        上一頁 1 2 下一頁

        關鍵詞: FPGA FFT 處理器

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 邵武市| 红安县| 阿巴嘎旗| 德州市| 桦南县| 亳州市| 阿合奇县| 秭归县| 罗江县| 澎湖县| 宁河县| 灌云县| 永泰县| 青岛市| 卢氏县| 岳普湖县| 达尔| 枣阳市| 太和县| 峨眉山市| 丽江市| 广西| 东阳市| 九龙坡区| 玛沁县| 白河县| 资兴市| 阿坝| 江门市| 南丹县| 门头沟区| 昌宁县| 沙田区| 讷河市| 罗田县| 乐至县| 阜新| 岳普湖县| 伊宁市| 平泉县| 邮箱|