官方淘宝店 易迪拓培训 旧站入口
首页 > 无线通信 > 通信技术学习讨论 > 已知各径时延和功率如何产生多径瑞利衰落信道?附方法

已知各径时延和功率如何产生多径瑞利衰落信道?附方法

12-30
比如COST207 TU 6径模型,各径的时延(单位:采样间隔)和功率(dB)如下:
delay = [0 2 6 16 24 50];
amp = [-3 0 -2 -6 -8 -10];
如果希望各径服从独立的瑞利衰落,是否可以这样来实现:
h_amp_dB = zeros(1,max(delay)+1);
h_amp_dB(delay+1) = amp;
h_amp = zeros(1,max(delay)+1);
h_amp(delay+1) = 10.^(h_amp_dB(delay+1)/10);
h = h_amp(randn(1,max(delay)+1)+1i*randn(1,max(delay)+1))/sqrt(2);
然后信号经过多径信道后可以表示为:
rx = conv(h,tx)    %tx是一次仿真中生成的一帧数据,包含多个符号
上述实现参考了别人的代码,找代码的过程中发现一个印度人的blog也专门谈到多径瑞利信道:
http://www.dsplog.com/2008/08/26/ofdm-rayleigh-channel-ber-bpsk/
他的代码里面,多径Rayleigh是这样实现的:
% multipath channel
   nSym = 10000;      %符号总数,根据上下文,相当于仿真次数吧
   nTap = 10;         %多径数
   ht = 1/sqrt(2)*1/sqrt(nTap)*(randn(nSym,nTap) + j*randn(nSym,nTap));
我的理解,他这里为了方便说明问题,多径相对时延为1个采样间隔,各径功率都相等,等于1?
上面还除了个sqrt(nTap),作者说目的是for normalizing the average channel power over multiple channel realizations to 1.那我写的那一段代码也要除以个类似的参数吗?
我最近在仿真OFDM中的同步算法,如果信道为高斯信道,或者是多径高斯信道(各时延信号简单相加),算法的性能都很好,定时同步几乎不受信噪比影响,频偏估计MSE随信噪比增加而下降。符合预期。但是多径衰落信道我不知道该怎么仿真。
我知道matlab里有个rayleighchan函数可以用来模拟瑞利信道(貌似stdchan也可以?),但是我试过,算法性能很差,比AWGN信道下差很多,不知道哪里设置得不对。
我还有个疑问,因为目前很多定时同步算法都是利用训练序列自身的相关性,通过搜索相关峰来实现同步,也就是说算法会同步到最强径。而信道增益向量乘上一个复随机向量后,原来的功率最强径也仍旧保持最强径吗?因为我试过上面的方法,同步错误率很高。
谢谢!

虽然有好多方法,但是我推荐这篇文章的
The Generation of Correlated Rayleigh Random Variates by Inverse Discrete
Fourier Transform
优点是快速简洁,缺点是物理意义不显然。

Top