我已经使用标准PDP的类似 EPA,EVA和ETU 构建了一个带有瑞利信道的OFDM收发器。问题是即使对于BPSK,我也会获得非常高的BER,即50-60%或更高的比特error.Scatterplotting确认了它。我的OFDM收发器模块包括:
----随机数据 - 调制(BPSK,QPSK,QAM) - Serial2Parallel - IFFT - CyclicPrefix>>> Rayleigh Ch>>删除CP数据--- FFT --- Par2Ser --- DeMod ---汇数据。
我使用内置matlab函数创建瑞利信道传递标准PDP作为参数。
channelObj = rayleighchan(tSampling,fDoppler,tau_in_sec,pdb_in_dB);
channelObj.ResetBeforeFiltering=0; % channel remains static before filtering
过滤n-OFDM符号&计算CIR
for symb=1:OFDMSymb
ofdm_td_rx_signal(:,symb) = filter(channelObj, ofdm_td_TXdata(:,symb));
channel_cir(tapIndices,symb)= (channelObj.PathGains).';
end
channel_cfr = fft(channel_cir,nCarrier); % freq. response from CIR
同样在接收器处,在FFT块之后,我只是尝试通过将接收符号除以CFR来使用此CFR
fft_RXdata=fft_data./channel_cfr;
我得到的是非常高的SNR和分散的星座符号。收发器块的恢复很简单并且都被验证为无错误...让我如何改进它。 我如何才能提高BER? 是否需要均衡器?匹配过滤器是否有帮助?提前感谢。
注意:只使用RAYLEIGH CHANNEL AWGN NOISE根本没有添加......
答案 0 :(得分:0)
帮助我的一个可能的解决方案是使用基于块的导频(参考虚拟数据)传输与OFDM符号。使用接收到的导频数据在RX处执行最小二乘信道估计,该导频数据固有地捕获信道行为。