hslogic_多径信道的仿真

无线信道的建模向来是移动无线通信系统理论中具有挑战性的难点,通常采用统计的方法进行信道建模,根据所研究信号在特定环境下的特性来选择不同的信道模型。目前,在OFDM系统的仿真中,涉及无线信道的仿真方法主要有以下几种:1) 设定延时和衰落幅度值,然后与信号相乘并求和,这是最简单的多径信道仿真;2) 设定各延迟路径的时延和功率,根据路径功率用高斯过程分别得到复抽头系数的实部和虚部,然后用复抽头系数与信号相乘并求和,这也是一种简化的仿真方式;3) 产生Rayleigh衰落因子,如MATLAB中的函数raylrnd产生rayleigh幅度衰落,再用衰落因子与信号相乘;4),用FIR滤波器模拟信道;5) 利用各系统级仿真工具中的现成多径模块,如MATLAB的Simulink, Agilent的ADS等等

OFDM系统中的宽带无线信道近似为慢衰落信道[8]时:假设信道的衰落足够慢,在一个OFDM符号周期内可认为是恒定值。在这种假设下可以采用上述前三种方法。如果基站、移动台和散射体都是固定的,信道可以看做是一个非时变的滤波器,因此可以采用上述第四种方式。上述前四种方法是粗略的模型,它们没有考虑实际中宽带无线通信信道的时变特性。上述第五种方法采用国外软件中的现成模块,模型比较精细,但是做仿真的时候因为不清楚模块是如何产生的,如果对模块中各种参数的定义理解不够准确,往往不能合理的设置系统参数,达到需要仿真的效果。

文献[5]指出,根据信道的频率选择性(时间色散),信道分为平坦衰落信道和频率选择性衰落信道;根据信道的时间选择性(频率色散),信道分为快衰信道和慢衰信道。这样的信道分类不是完全隔离的,而是相互交叠。因而以下为了论述的方便,从时间色散的角度对信道建模。

从时间色散的角度看,宽带无线信道是频率选择性衰落信道,信道由多个可分辨径组合而成,其中每一个可分辨径是一个平坦衰落信道,即它是由多个具有不同时延的平坦衰落信道组合而成。在过去40年里,建立了大量的时间色散信道模型[8],如抽头延时线模型(如图3所示),COST207模型(抽头延时线模型的一种特例),Hashemi-Suzuki-Turin模型等等。其中抽头延时线模型是常用的一种模型,它把频率选择性衰落信道的输入信号和输出信号联系在一起,每个抽头系数是时变的。

x(t)y(t)分别代表信道输入和输出的复数低通样值,是关于时延和时间的多径传播信道的冲激响应,则图3所示的抽头延时线模型的冲激响应函数表示为:

                   (1)

其中,为第l个时延时间的功率;为第l个时延分量,是复高斯过程,它的功率谱就是第l个路径的多普勒频谱,它控制第l个路径的衰落率,为抽头时延。这样经过信道后的信号可以表示为:

                    (2)

其中作为单个的可分辨径,它是平坦衰落信道。由公式(1)(2)知,要建立频率选择性衰落信道首先要产生服从Rayleigh分布的平坦衰落信道

Clarke提出了一种用于描述平坦小尺度衰落的统计模型,即Rayleigh衰落信道[6]。仿真Clarke模型的方法主要有两类:第一类是正弦波叠加法(SOS);第二类是成形滤波器法。其中第一类方法能够有效地减少运算量,因此得到广泛地应用。第一类方法中又以Jakes仿真模型应用最广泛。Jakes仿真模型的一直有人在研究改进,IEEE 上有不少相应的文章。

以下给出MATLAB仿真多径信道的步骤如下:

(1) 设定多普勒频移值、时延向量值、时延路径衰落功率向量值,Jakes仿真器所需正弦波个数;

(2) 用Jakes仿真器产生第i条时延径的Rayleigh衰落时变函数,即产生。

(3) 即为公式(2)中的,根据公式(2)得到y(t)。如果仅考虑幅度衰落,则用的幅度乘上第i个延时信号即可。

[11][12]给出了一个Rayleigh衰落的仿真表达式(等效低通系统),模拟多径信道的幅度波动服从Rayleigh分布,相位波动服从平均分布。

       

其中N要大于6,最大多普勒频移(车载速度/波长,波长=光速/射频,例如,最大多普勒频率fdmax=150Hz(5GHz下移动速度为9m/s)),它对应入射角的情况。至此每一径的rayleigh衰落产生已经完成,它对信号的影响如下:

设输入基带信号为Iin,Qin, 输出为Iout, Qout, 则令xc = real(r(t)), xs = img(r(t)),只影响幅度时:Iout = sqrt(xc.^2+xs.^2).* Iin; Qout = sqrt(xc.^2+xs.^2).* Qin;影响幅度和相位时:Iout = xc.*Iin - xs.*Qin; Qout = xs.* Iin + xc.* Qin;

值得注意的是,为了使各径的幅度衰落相互独立引入counter这个量,而为了缩短仿真时间,引入了skip counter的概念,在程序中都有详细的描述.

 

 

猜你喜欢

转载自blog.csdn.net/ccsss22/article/details/108544623