新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于XQ2V1000 FPGA的數字脈沖壓縮系統實

        基于XQ2V1000 FPGA的數字脈沖壓縮系統實

        作者: 時間:2011-07-01 來源:網絡 收藏

        2.2.1 FFT處理單元的硬件復用

          在系統中FFT處理單元通過使用軟核Fast Fourier Transform v3.O來實現的。該IP核提供3種結構選擇。

          (1)管線級,數據流水I/0。這種結構將若干基-2蝶形單元級聯起來,使得數據的輸入、計算、輸出可以流水進行,從而可以達到很高的處理速度,但資源消耗較大;

          (2)基-2,最少資源消耗。這種結構采用單個基-2蝶形單元對輸入數據進行變換,運算消耗的時間較長;

          (3)基-4,突發I/O;這種結構采用單個基-4蝶形單元對輸入數據進行變換,并利用塊RAM來存儲旋轉因子,占用系統資源較少,在1個PRT內可以完成脈壓結果的輸出,從而在資源和速度這兩者之間達到很好的平衡,也是設計中實際采用的結構。

          FFT處理單元主要包括2個過程:數據I/O和運算過程,但兩者不是流水執行的。FFT啟動信號有效后,數據開始進行裝載,裝載完成后開始進行FFT運算;等待運算結束后,結果才可以輸出。在運算過程中,不發生數據的裝載或輸出。

          在數字設計中,FFT和IFFT處理單元時可以采用相同的結構來實現的。具體的方法是:在做IFFT運算前,先交換輸入數據的實部和虛部,然后送入FFT處理單元按照FFT的結構進行運算,并交換FFT運算結果的實部和虛部,最后除以運算點數N,就可以得到IFFT的運算結果。

          該IP核基于上面的方法同時具有進行IFFT運算的功能,通過實時配置端口FWD INV上的電平可以實現復用,分別完成FFT和IFFT運算。在FPGA設計中,利用結構復用減少邏輯單元塊,不僅可以節約系統資源,而且能夠減少結構間的硬連線及傳輸線時延,有利于提高系統的工作頻率。

          2.2.2 脈沖壓縮模塊的時序設計

          由于FFT和IFFT的邏輯運算功能已經在IP核中實現,因此時序設計便顯得尤為重要。在FFT(或IFFT)運算單元中,主要的狀態與時序控制信號及其功能描述如表1所示。

          

          在采樣距離門有效期間,將樣本數據寫入FIFO中進行緩存。采樣結束后,通過FFT單元的寫使能信號(NFFT_WE和FWD_INV_WE)將NFFT=010 10及FWD_INV_WE=1寫入狀態控制寄存器設定工作模式,接著啟動START信號進行FFT運算,寫使能信號與sTART之間僅差1個時鐘周期。運算結束后,DONE信號有效1個時鐘周期,輸出使能信號UNLOAD與DONE同步,經過7個時鐘周期后數據有效信號DV開始有效,FFT運算結果開始流水輸出,同時與匹配濾波器的系數相乘,并存入RAM中。由于乘法運算的固有延遲,寫使能RAM_EN延遲DV信號2個時鐘周期。存儲結束時,IFFT單元的寫使能信號同時有效,并設定NFFT=01010及FWD_INV_WE=0,接著啟動START信號進行IFFT運算。運算結束后,DONE信號(與UNLOAD同步)再次有效,IFFT運算輸出結果在DV信號有效期間直接寫入RAM中。單個PRT內各控制信號的具體時序說明如圖4所示。

          

          2.2.3 塊浮點數據格式

          在數字信號處理系統中,數據表示格式可分為定點制、浮點制和塊浮點制,它們在實現時對系統資源的要求不同,工作速度也不同,有著不同的適用范圍。定點表示法使用最多,簡單且速度快,但動態范圍有限,需要用合適的溢出控制規則(如定比例法)適當壓縮輸入信號的動態范圍,但這樣會降低輸出信號的信噪比。浮點表示法的優點是動態范圍大,可避免溢出,能在很大的動態范圍內達到很高的信噪比,主要缺點是系統實現復雜,硬件需求量大,成本和功耗高,而且速度較慢。

          塊浮點表示法兼有定點法和浮點法的某些優點,是以上2種表示法的結合。這種表示法首先對一組數據進行檢測,歸一化最大數的小數部分,再建立適當的指數。接著把剩下數據的小數部分轉化為合適的數,使它們可以使用最大數的指數。塊浮點算法的主要優點是:大動態范圍、低截斷(或舍入)噪聲,是一種有效的數據表示形式。從芯片實現角度上看,塊浮點表示法能夠保證較高的信號處理質量,尤其適用于FFT運算的場合。脈壓模塊中的FFT核帶有塊浮點運算的功能,整個運算過程中的數據格式表示如圖5所示。

          

        基于XQ2V1000 FPGA的數字脈沖壓縮系統實

          ADC輸入數據為14 b的二進制補碼形式,對其低位補零擴展為16 b(IP核要求的輸入精度)后送入FFT運算單元,輸出結果為16 b的定點數以及指數EXP1。復乘包括乘法和累加運算,即FFT結果與匹配系數進行16 b×16 b的乘法運算,所得結果再進行加法運算;在進行加法運算前,所有數據擴展為33 b以防止溢出的發生,最終數據截取高16 b送入IFFT處理單元,輸出為16 b的定點數和指數EXP2,將其與EXPl相加后

          得到指數EXP。脈壓的最終結果即為IFFT后的16 b定點數以及指數EXP,兩者分別存儲在FPGA片內RAM中。

          2.3 脈沖壓縮模塊的測試

          設輸入理想LFM信號參數如下:帶寬B=40 MHz;時寬T=6μs;系統樣本速率為60 MHz;使用海明窗加權。在上述條件下,脈沖壓縮系統的輸出結果對數圖如圖6所示。

          

        基于XQ2V1000 FPGA的數字脈沖壓縮系統實

          在圖6中,橫軸代表距離采樣單元,即系統最小距離分辨率。通過系統實際處理結果與Madab仿真結果的對比驗證了設計的正確性和實用性。

          3 結語

          系統采用完成14位、60 MSPS的數據采集,并在FPGA中實現1 024點的。設計采用并行流水方式提高工作速度,而塊浮點算法則充分保證運算的精度。IP核的復用大大降低硬件規模,從而使整個系統具有高速度、高精度和低功耗的特點。


        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 芮城县| 额尔古纳市| 安吉县| 曲麻莱县| 工布江达县| 台前县| 毕节市| 溆浦县| 潍坊市| 娄烦县| 阳曲县| 茶陵县| 天门市| 绥滨县| 威宁| 休宁县| 拉萨市| 石楼县| 花垣县| 昌江| 安溪县| 志丹县| 深泽县| 呼和浩特市| 上林县| 宜宾县| 蓬溪县| 刚察县| 尼勒克县| 安新县| 长海县| 宝坻区| 顺义区| 石林| 紫云| 紫金县| 阿城市| 朔州市| 望谟县| 罗山县| 东丽区|