新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于點判決域的多模盲均衡算法及其FPGA實現

        基于點判決域的多模盲均衡算法及其FPGA實現

        作者: 時間:2011-04-26 來源:網絡 收藏

        2 設計
        選用公司的Spartan 3E系列產品中的XC3-S1600E器件,運用9.1i的集成開發環境進行綜合和實現,聯合第三方軟件modelsim進行仿真,使用VHDL硬件描述語言實現多模盲均衡器。


        2.1 均衡器結構設計及功能描述
        多模盲均衡器結構見圖2。

        基于點判決域的多模盲均衡算法及其FPGA實現

        (1)信源模塊:利用線性反饋移位寄存器產生偽隨機序列,序列的特征多項式采用f(x)=1+x3+x7。經過串/并變換后,將每一路的4個比特映射為對應的電平序列,形成16QAM的同相和正交信號。
        (2)濾波器模塊:濾波器模塊包括信道濾波器和均衡器,信道沖激響應和均衡器權系數均采用FIR濾波器結構。為了節省硬件資源,FIR濾波器采用串行結構實現。信道濾波器采用系數固定的FIR濾波器,均衡器采用系數可調的FIR濾波器。
        (3)判決模塊:判決裝置對均衡器的輸出進行決策,利用最小距離準則,在16QAM星座圖的字符集中找到與均衡器輸出最接近的點作為當前信號點的判決值。
        (4)誤差計算及系數更新模塊:迭代誤差的計算依據式(12)進行,系數的更新則采用式(2)的最陡下降法。


        2.2 數據格式及截位
        中,信號和數字用二進制定點有符號數表示,定點值采用補碼表示法[5]。算法中涉及的信號和變量的數據格式如表1所示。

        基于點判決域的多模盲均衡算法及其FPGA實現

        算法執行過程中,信源信號s(k)、信道系數h(k)、信道輸出x(k)、均衡器輸出y(k)、判決輸出d(k)均用8 bit字長表示;誤差信號e(k)、均衡器系數w(k)、步長因子則用16 bit字長表示;均方誤差mse(k)用32 bit字長表示。
        在有限字長的情況下,加法運算和乘法運算會增加操作數的位寬,為了節約硬件資源,對乘法運算后的數據進行有效截斷。由于信號能量、信道系數均進行了歸一化,運算過程中沒有出現溢出現象,保證了運算結果的準確性。


        3 MATLAB仿真及實現
        針對16QAM系統對算法進行性能仿真和分析。均衡器的抽頭數為7,中心抽頭權值初始化為1,其余抽頭權值初始化為零。衛星信道的信道參數為:幅頻響應滿足奈奎斯特升余弦特性,群時延失真為2.25個碼元寬度,信道長度為6,FIR系數為:
        基于點判決域的多模盲均衡算法及其FPGA實現
        圖3示出三種算法收斂速度比較,信道信噪比為25 dB,曲線通過100次獨立的蒙特卡洛夫仿真獲得。從圖中可見,CMA的穩態誤差為-6 dB左右,MCMA的穩態誤差為-12 dB左右,而的穩態誤差達到了-21 dB,相對于前兩種算法,其優勢非常明顯。三種算法的迭代速度均為4 000個碼元左右。

        基于點判決域的多模盲均衡算法及其FPGA實現

        圖4(a)和4(b)分別由Matlab仿真和modelsim仿真得到,FPGA的時鐘周期為50 MHz。圖中顯示的是多模盲均衡算法前100個碼元均方誤差的迭代情況。從圖中可見,二者的結果一致,表明了FPGA設計的正確性。

        基于點判決域的多模盲均衡算法及其FPGA實現

        圖5中是均衡器收斂后的一段波形圖。四條波形曲線由上到下依次是發送碼元、信道輸出、均衡器輸出和判決裝置輸出的同相分量。信號經過信道后,產生了嚴重的畸變,即碼間干擾;經過均衡器后,碼元之間的干擾被消除,與發送碼元波形非常接近;判決裝置依據最小距離準則對均衡器輸出進行判決,得到了正確的碼元輸出。

        基于點判決域的多模盲均衡算法及其FPGA實現

        本文提出一種基于點域判決的多模盲均衡算法,并給出了該均衡器的FPGA設計和實現方案。多模盲均衡器和CMA均衡器相比,穩態誤差提高了約15 dB,與MCMA均衡器相比,穩態誤差提高了約9 dB。均衡器收斂后,能夠克服信號的幅度失真和相位失真,正確恢復發送端的信息。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 庆城县| 大丰市| 霞浦县| 新干县| 故城县| 富裕县| 大余县| 东明县| 芜湖县| 新昌县| 右玉县| 高陵县| 麻江县| 宁南县| 犍为县| 睢宁县| 灵山县| 滦南县| 常德市| 巩留县| 芜湖市| 巫溪县| 墨江| 玉环县| 镇雄县| 岚皋县| 霍州市| 扬州市| 大冶市| 安陆市| 宜宾市| 都江堰市| 四川省| 黔江区| 江陵县| 莱西市| 余姚市| 东阳市| 中西区| 丽水市| 枣强县|