高速移動(dòng)下OFDM均衡器的FPGA實(shí)現
2.2.1 均衡過(guò)程
CIR中使用迭代算法避免了并行大向量和大矩陣的運算,而是分步運算。所以對輸入信號進(jìn)行均衡,首先要進(jìn)行并串變換,但是不需要變成真正的串行信號。當Q=2時(shí),實(shí)際上對需要均衡的輸入信號Y(i)每次取出5個(gè)數據,用yk表示,暫且將這樣的變換叫作分組并串變換(P/GS),然后均衡矩陣ek與yk分組完成乘法運算得到一個(gè)zk,zk是一個(gè)數據不是向量,最后進(jìn)行串并變換就得到均衡后的信號向量Z(i)。整個(gè)均衡的過(guò)程如圖5所示。本文引用地址:http://dyxdggzs.com/article/191638.htm
2.2.2 仿真結果
實(shí)現該算法的重要一步是所設計的乘加器可以正常使用,并且實(shí)時(shí)性好。對其進(jìn)行仿真如圖6所示,可以發(fā)現當clk發(fā)生上升沿跳變時(shí)進(jìn)行計算,圖中信號(a,b)表示輸入的數據信號;fcl表示相乘的結果;c表示進(jìn)行乘加以后的運算結果,其計算準確,基本上沒(méi)有延遲。
ISE中設計的傳輸模塊實(shí)現波特率為19 200 b/s的串口通信控制器,把數據通過(guò)RS 232完成FPGA與PC機的雙向通信。把均衡后的信號Z(i)傳回Matlab中,采用QPSK的星座圖進(jìn)行分析,選擇子載波的數目N=128,循環(huán)前綴CP的長(cháng)度為8,并且在認為信噪比被準確估計的情況下均衡的結果,如圖7所示。
由此星座圖可以看出,在均衡前接收到的信號因為多普勒頻移和噪聲的影響,偏離星座點(diǎn)向周?chē)l(fā)散,使用FPGA中均衡以后傳回的數據基本沒(méi)有發(fā)散現象。
3 結語(yǔ)
在ISE軟件平臺上使用Verilog語(yǔ)言實(shí)現了一種基于時(shí)變OFDM系統的低復雜度MMSE均衡器算法。在Xilinx公司Virtex-2實(shí)驗板(XC2V930芯片)上對其進(jìn)行驗證,基本達到該算法在Matlab上仿真的均衡效果。但是由于浮點(diǎn)數計算量太大,選用定點(diǎn)數對其進(jìn)行截取,還是有一定的局限性,在進(jìn)行大量數據的運算中還是會(huì )有些數據不太準確,造成整體的誤碼率效果不是太好,故還需要進(jìn)一步改進(jìn)算法和FPGA的實(shí)現方法,以期達到更好的均衡效果。
評論