<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于FPGA的FFT算法硬件實現(xiàn)

          基于FPGA的FFT算法硬件實現(xiàn)

          作者: 時間:2011-03-06 來源:網(wǎng)絡(luò) 收藏

          可以看出,圖3減少了一個旋轉(zhuǎn)因子復(fù)乘模塊,不但節(jié)約了一次乘法運算時間,也省略了第一級旋轉(zhuǎn)因子,更好地利用了硬件結(jié)構(gòu)。
          首先,在QuartusⅡ環(huán)境中對4點蝶形運算時序仿真,采用流水線設(shè)計,連續(xù)輸入連續(xù)輸出,仿真結(jié)果如圖4所示。

          本文引用地址:http://www.ex-cimer.com/article/191332.htm


          由圖4可以看出,輸出比輸入延時6個時鐘,這在系統(tǒng)的控制核心地址產(chǎn)生單元的設(shè)計中需要考慮到。
          1.3 地址產(chǎn)生與時序控制
          對于1 024.點基4 運算,需要5級蝶形運算,每一級運算都要有寫地址和讀地址,根據(jù)同址運算的特點可知,當(dāng)前的寫地址即是上一級蝶形運算的讀地址。因此完成運算需要設(shè)計6級RAM地址。其中第1級的寫地址即是數(shù)據(jù)輸入的順序地址,不予討論。最后一級讀地址為數(shù)據(jù)正序輸出所需的地址。其余4級為1 024點數(shù)據(jù)對應(yīng)的FFT蝶形運算。
          第一級讀取節(jié)點地址的順序應(yīng)該是:(0,256,512.768),(1,257,513,769),……,(255,511.767,1 023)。易觀察其讀地址的規(guī)律如下:設(shè)讀取次序的二進制編碼為bit[9:0];則讀地址的二進制編碼為{bit[1:O],bit[9:2]},并且依次可以推出第2、3、4級的讀地址二進制編碼分別為{bit[9:8],bit[1:0],bit[7:2]},{bit[9:6],bit[1:0],bit[5:2]}、{bit[9:4],bit[1:0],bit[3:2]},而最后一級輸出數(shù)據(jù)的地址二進制編碼則為:{bit[1:0],bit[3:2],bit[5:4],bit[7:6],bit[9:8]}。圖5給出了第1級讀地址和第2級讀地址的部分?jǐn)?shù)據(jù),也可以看出第2級的寫地址即是第1級的讀地址。


          圖1中的地址產(chǎn)生單元作為系統(tǒng)的控制核心,不僅要生成每一級的RAM讀寫地址,還要產(chǎn)生RAM寫使能信號、輸出有效信號以及4點蝶形運算單元和旋轉(zhuǎn)因子產(chǎn)生單元的啟動信號,由于時序電路還需要考慮器件延時,例如上文提到的4點蝶形運算輸出比輸入延時6個時鐘,以及RAM存取數(shù)據(jù)輸出比輸入延時1個時鐘,這些都需要在控制核心中考慮到。
          1.4 旋轉(zhuǎn)因子產(chǎn)生
          對于1 024點FFT蝶形運算,需要1 024個旋轉(zhuǎn)角度(即2π的1 024等份),其中第一級不需要復(fù)乘運算,第6級只是將數(shù)據(jù)進行整序沒有運算單元,其他4級都需要旋轉(zhuǎn)因子。本設(shè)計采用將旋轉(zhuǎn)因子預(yù)置于ROM中,通過查找表方法得出每一級運算的所需的旋轉(zhuǎn)因子。根據(jù)旋轉(zhuǎn)因子的可約性,后幾級運算所需的旋轉(zhuǎn)因子都可以在第一級運算的旋轉(zhuǎn)因子中找到,因此無需另外存儲。旋轉(zhuǎn)因子在ROM中的存儲規(guī)律是:旋轉(zhuǎn)因子相位角p處存儲旋轉(zhuǎn)因子W=*****。定義一個10 bit的計數(shù)器count[9:0],則第2、3、4、5級ROM的相位角規(guī)律按照Verilog語法可表示為

          為了節(jié)省資源,本設(shè)計只在ROM單元中存儲了前256個旋轉(zhuǎn)因子數(shù)據(jù),即第一象限因子其余象限的因子可通過象限轉(zhuǎn)換后得到,這樣就大大節(jié)省了存儲單元的硬件資源。圖6為旋轉(zhuǎn)因子產(chǎn)生單元在QuartusⅡ環(huán)境中仿真結(jié)果的部分?jǐn)?shù)據(jù)。



          關(guān)鍵詞: FPGA FFT 算法 硬件實現(xiàn)

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();