《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于System Generator的盲均衡器設(shè)計與實現(xiàn)
基于System Generator的盲均衡器設(shè)計與實現(xiàn)
2014年電子技術(shù)應(yīng)用第7期
何宗苗,姚遠程,秦明偉
西南科技大學 信息工程學院 特殊環(huán)境機器人技術(shù)四川省重點實驗室,四川 綿陽621010
摘要: 基于System Generator軟件,在xc7z020-1clg484芯片上設(shè)計了一種高速盲均衡器。該盲均衡器由延遲模塊、濾波模塊、誤差計算模塊和系數(shù)更新模塊構(gòu)成,采用MCMA算法,使用并行結(jié)構(gòu)和流水線技術(shù)。其數(shù)據(jù)位寬為16 bit,階數(shù)為13階,能夠?qū)?6QAM和QPSK信號進行均衡,輸入速率達到67 Mb/s。硬件協(xié)同仿真結(jié)果表明,該高速盲均衡器是有效的。
中圖分類號: TN911.7
文獻標識碼: A
文章編號: 0258-7998(2014)07-0033-04
Design and implementation of blind equalizer based on System Generator
He Zongmiao,Yao Yuancheng,Qin Mingwei
Robot Technology Used for Special Environment Key Laboratory,College of Information Engineering,Southwest University of Science and Technology, Mianyang 621010,China
Abstract: A high speed blind equalizer based on System Generator software is designed in the xc7z020-1clg484 chip by using MCMA algorithm, parallel architecture and pipeline technology. It is composed of a delay module, a filter module, an error calculation module and a coefficient update module.The blind equalizer, whose data width is 16 bit and order number is 13, can be equalised on the 16QAM and QPSK signals. The input rate reached 69 Mb/s. Results of hardware co-simulation show that design of the high-speed blind equalizer is effective.
Key words : System Generator;blind equalizer;MCMA algorithm;16QAM

       在無線通信中,由于受多徑效應(yīng)、噪聲、衰落等的影響,接收端信號不可避免地存在碼間干擾,這樣會限制無線通信系統(tǒng)的最大傳輸率,并導致接收端產(chǎn)生較大的誤碼率。均衡器可以消除碼間干擾,但自適應(yīng)均衡器具有三大局限性:(1)在多點無線網(wǎng)絡(luò)通信中,如果發(fā)送的周期性訓練序列被中斷,將導致無法通信;(2)發(fā)送周期性的訓練序列增加了系統(tǒng)傳輸?shù)念~外開銷,降低了傳輸效率;(3)在一些特殊環(huán)境,接收端根本不可能得到發(fā)送端的訓練序列[1]?;谝陨显?,所以提出了盲均衡器。本文采用QPSK和16QAM兩種調(diào)制方式,使用System Generator軟件對其進行設(shè)計。首先在Simulink下對MCMA算法進行浮點建模仿真,再利用Xilinx公司模塊進行定點仿真,而后由定點仿真模型直接生成FPGA代碼,最后下載到芯片中進行測試。

1 MCMA盲均衡原理

        恒模算法(CMA)是一種在實際生活中廣泛應(yīng)用的盲均衡算法[2-4],但是CMA算法存在著信號收斂速度慢、剩余誤差大和相位偏移等局限性。因此,修正恒模算法(MCMA)被提出。MCMA算法[5]將信號的虛部和實部分開進行處理,對信號的虛部和實部分別進行均衡,使其信號中含有相位信息,這樣可以有效地對信道引起的相位偏移進行補償,使星座圖輸出變正。

 

 

 

2 盲均衡器設(shè)計

2.1 總體結(jié)構(gòu)

        本文利用xc7z020-1clg484芯片實現(xiàn)MCMA算法盲均衡器,由于芯片資源比較豐富,采用了自上而下的設(shè)計方法,并采用流水線技術(shù)和并行結(jié)構(gòu)。將總體結(jié)構(gòu)按功能分成濾波器模塊、誤差計算模塊、系更新模塊、數(shù)據(jù)延遲模塊4個模塊,并分別對模塊進行設(shè)計。盲均衡器總體結(jié)構(gòu)圖如圖1所示。

2.2 數(shù)據(jù)延遲模塊設(shè)計

        數(shù)據(jù)延遲模塊的輸入信號有I路和Q路,I路代表信號的虛部,Q路代表信號的實部,每一路都是16 bit并行輸入,1 bit為符號位,其余15 bit為小數(shù)位的數(shù)據(jù)。數(shù)據(jù)延遲模塊的結(jié)構(gòu)示意圖如圖2所示。由于后面設(shè)計的濾波器模塊要采用并行結(jié)構(gòu),完成濾波器輸入信號與所有抽頭系數(shù)的相乘,所以數(shù)據(jù)延遲模塊將均衡器輸入信號(Qdata和Idata)的所有延遲信號(Qdata0~Qdata12和Idata0~Idata12)并行輸出,并將它們輸入到濾波器模塊的輸入端,用于和相應(yīng)的抽頭系數(shù)進行并行相乘。同時,這26路并行數(shù)據(jù)還將輸入到系數(shù)更新模塊,完成所有抽頭系數(shù)的并行更新。

2.3 濾波器模塊設(shè)計

        濾波器的子模塊如圖3所示。濾波器模塊的輸入信號一部分是來自數(shù)據(jù)延遲模塊輸出的均衡器輸入信號的各延遲信號(Qdata0~Qdata12)和(Idata0~Idata12),這部分信號的數(shù)據(jù)寬度為16 bit,1 bit為符號位,其余15 bit為小數(shù)位的數(shù)據(jù)。由于濾波器的抽頭系數(shù)是不斷更新的,所以該模塊還有一部分輸入信號來自系數(shù)更新模塊更新后的抽頭系數(shù),用于與相應(yīng)的輸入信號相乘完成卷積運算,這部分信號的數(shù)據(jù)寬度為16 bit,其中1 bit為符號位,1 bit為整數(shù)位,其余14 bit為小數(shù)位。濾波器模塊由4路13階FIR濾波器(QFIR0、QFIR1、IFIR0、IFIR1),一個減法器和一個加法器構(gòu)成。在本文中,QFIR0、QFIR1、IFIR0和IFIR1采用相同的并行流水線濾波器結(jié)構(gòu)。Qdata0~Qdata12和Idata0~Idata12經(jīng)過濾波器模塊處理后,IFR0和QFR1信號相減得到虛部輸出信號Y_I(n),QFIR0和IFR1信號相加得到實部輸出信號Y_Q(n)。這兩路信號的數(shù)據(jù)位寬都是36 bit,其中1 bit為符號位,5 bit為整數(shù)位,其余30 bit為小數(shù)位的數(shù)據(jù)。這兩路信號既要作為盲均衡器的輸出信號,又要經(jīng)過截取并重新定義,作為誤差模塊的輸入信號。

2.4 誤差模塊設(shè)計

        誤差模塊由虛部和實部誤差模塊構(gòu)成,兩個模塊結(jié)構(gòu)相同,其中MCMA誤差計算虛部模塊的結(jié)構(gòu)圖如圖4所示。MCMA誤差計算模塊中主要包含數(shù)據(jù)的截取、重新定義、減法器和乘法器。根據(jù)定點仿真得出的結(jié)果,需要首先對濾波器模塊的虛部輸出信號Y_I(n)和實部輸出信號Y_Q(n)進行數(shù)據(jù)截取,截取為16 bit數(shù)據(jù),舍棄低20位。再重新定義為1 bit為符號位、5 bit為整數(shù)位、10 bit為小數(shù)位的數(shù)據(jù)。這兩個信號經(jīng)過取模后,分別輸入到16 bit×16 bit的硬核乘法器中,得到32 bit的絕對值的平方,再將得到的數(shù)據(jù)與32 bit減法器中的常模值相減,最后送到32 bit×16 bit的硬核乘法器中相乘,舍棄低24 bit,重新定義為1 bit為符號位、17 bit為整數(shù)位、其余6 bit為小數(shù)位的數(shù)據(jù),便得到MCMA算法虛部的誤差信號。

2.5 系數(shù)更新模塊設(shè)計

        系數(shù)更新模塊主要由1個數(shù)據(jù)延時模塊、13個系數(shù)增量模塊、13個新系數(shù)計算模塊構(gòu)成。由于整個盲均衡器輸入信號比輸出信號晚16個時鐘周期,為了使誤差信號與輸入信號同時輸入到系數(shù)增量模塊,這里與輸入信號的信號延遲模塊有點不同,需要延遲16個時鐘周期。系數(shù)更新模塊都對應(yīng)一個系數(shù)增量模塊,如圖5所示,因此需要調(diào)用該模塊13次,濾波器的每個系數(shù)也都對應(yīng)一個新系數(shù)計算模塊,如圖6所示。所以新系數(shù)計算模塊也需要調(diào)用13次,才能完成所有的運算并輸出更新后的濾波系數(shù)。

3 仿真和實現(xiàn)結(jié)果

        本文采用Xilinx公司的System Generator軟件[6]進行硬件協(xié)同仿真,如圖7所示,實際上就是PC和開發(fā)板的協(xié)同仿真,把硬件模塊下載到開發(fā)板中進行仿真,硬件模塊和PC共享存儲器交換數(shù)據(jù)。協(xié)同仿真參數(shù)設(shè)置如下:信源采用功率歸一化的16QAM[7]和QPSK信號,信噪比為25 dB,步長為0.002,信道參數(shù)為[1,0,0.299 7,0,0,-0.003 6],該信道的頻率響應(yīng)起伏較大。MCMA均衡器采用中心抽頭[8]初始化,將I路信號中第7路的抽頭系數(shù)設(shè)為1,其他抽頭系數(shù)設(shè)為0,長度為13,采樣間隔時間為1/1 000 s。

        在ISE軟件對整個工程文件進行綜合、轉(zhuǎn)換、映射、布局布線后,得到的靜態(tài)時間報告如表1所示。從中可以看出,輸入速率達到67 Mb/s。16QAM和QPSK信號經(jīng)過信道衰減、噪聲過后,均衡前的星座圖如圖8和圖9所示;硬件協(xié)同仿真后,均衡星座圖如圖10和圖11所示。從圖8~圖11可以看出,MCMA算法設(shè)計是有效的,均衡信號的同時還糾正了相位偏移。

 

        在無線非協(xié)作通信中,盲均衡器是非常關(guān)鍵的信號處理單元,消耗硬件資源很大。本文基于System Generator軟件,闡述了MCMA算法[9]的實現(xiàn)過程,通過優(yōu)化Xilinx公司模塊的參數(shù)配置,合理地利用xc7z020-1clg484芯片的資源,實現(xiàn)了高速盲均衡器,使輸入速度達到67 Mb/s。與傳統(tǒng)設(shè)計方法相比,提高了設(shè)計效率,對當前和今后復雜、高速的信號處理單元設(shè)計有一定借鑒意義。

參考文獻

[1] 許玲,蔣文軍.一種用于數(shù)字QAM接收機的盲均衡器實現(xiàn)[J].電視技術(shù),2003(12):13-16.

[2] 尹曉璐.基于FPGA的信道均衡器的設(shè)計與實現(xiàn)[D].成都:電子科技大學,2005.

[3] 孫蘭清,葛臨東,劉鋒.常模類盲均衡算法的研究[J].電視技術(shù),2006(10):10-14.

[4] JOHNSON C R,SCHNITER P,ENDRES T J,et al.Blind equalization using the constant modulus criterion:a review[J].Proceedings of the IEEE,1998,86(10):1927-1950.

[5] 何振亞.自適應(yīng)信號處理[M].北京:科學出版社,2002.

[6] 田耘,胡彬,徐文波,等.Xilinx ISE Design Suite 10.x FPGA開發(fā)指南[M].北京:人民郵電出版社,2008.

[7] 王松濤,王波.高性能數(shù)字電視QAM均衡器的VLSI結(jié)構(gòu)設(shè)計[J].電視技術(shù),2008(32):14-17.

[8] BENVENISTE A,GOURSAT M.Bind equalizers[J].IEEE Trans.on Commun.,1984,32(8):871-883.

[9] ZHANG X,ZHUO D F.A modified blind equalization algorithm based on kurtosis of output signal[C].Proceedings of IEEE 2004 Conference on Radio Science.Qingdao:[s.n.],

     2004:228-231.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。