Модели каналов GSM, CDMA и WiMAX

Этот пример показов, как симулировать многолучевые каналы с замираниями, определенные для стандартов беспроводной связи GSM/EDGE [1 2], CDMA [3] и WiMAX [4]. Пример использует системы Релея и MIMO с замираниями в канале objects™ from Communications Toolbox™, чтобы симулировать и визуализировать каналы.

Модель канала GSM

GSM (Глобальная система мобильной связи) является глобальным стандартом для 2G мобильной связи. Многолучевой канал с замираниями для GSM был определен в [1 2] для различных сценариев связи, включая сельскую местность (RAx), холмистую местность (HTx), городскую местность (TUx). Каждому сценарию был присвоен определенный профиль задержки степени (PDP) и Допплеровский спектр. В этом примере моделируем холмистый сценарий местности (HTx) с 12 отводами. Мы проходим модулированные сигналы GMSK через канал с замираниями и наблюдаем его импульсную характеристику.

% Set random number generator for repeatability
rng('default');

Создайте модулятор GMSK с помощью comm.GMSKModulator объект и использование его для модулирования случайным образом сгенерированных бит. Этот объект состоит в том, чтобы проиллюстрировать, что модуляция GMSK используется в системе GSM.

gmskMod = comm.GMSKModulator( ...
    'BitInput', true, ...
    'SamplesPerSymbol', 8);

% Modulate random bits using the GMSK object
x = gmskMod(randi([0 1], 1e4, 1));

Предположим мобильную скорость на 120 км/ч. Вычислите доплеровский сдвиг на несущей частоте 1,8 ГГц.

v = 120*1e3/3600;                   % Mobile speed (m/s)
fc = 1.8e9;                         % Carrier frequency
fd = v*fc/physconst('lightspeed');  % Maximum Doppler shift

Чтобы симулировать канал с замираниями для HTx, мы можем сконфигурировать comm.RayleighChannel объект, следующий спецификации PDP в [1 2]. Кроме того, мы можем использовать stdchan функция для создания требуемой comm.RayleighChannel объект, учитывая вход сценария 'gsmHTx12c1'. Поэтому мы не должны ссылаться на [1 2] для спецификаций PDP и Допплеровского спектра.

Rsym = 270.833e3; % GSM symbol rate
Rsamp = gmskMod.SamplesPerSymbol * Rsym; % GSM sample rate
gsmChan = stdchan('gsmHTx12c1', Rsamp, fd);

Включаем визуализацию импульсной характеристики для объекта канала и отправляем через него модулированные данные GMSK. Можно заметить, что задержки пути (касания) длятся более 5 выборок. Первые 7 и последние 5 отводов могут быть сгруппированы в два разных кластера. В этом смысле канал характеризует два доминирующих пути от передатчика к приемнику с рассеянием. Можно также заметить, что импульсная характеристика изменяется достаточно быстро при этой мобильной скорости 120 км/ч.

gsmChan.Visualization = 'Impulse response';
gsmChan(x);

Модель канала CDMA

CDMA (множественный доступ с кодовым разделением каналов) является стандартом для 3G мобильной связи. Как и GSM, многолучевой канал с замираниями для CDMA был определен в [3] для различных сценариев связи с различными PDP и доплеровскими спектрами. В этом примере мы моделируем типичный городской сценарий (TUx) с низкой мобильной скоростью и визуализируем частотную характеристику канала. The cdma2000ForwardReferenceChannels и cdma2000ForwardWaveformGenerator функции используются для конфигурирования и моделирования формы волны CDMA 2000, которая затем передается через канал с замираниями.

% Configure a CDMA waveform and change the packet length
config = cdma2000ForwardReferenceChannels('ALL-RC3');
config.NumChips = 1e4;

% Generate a waveform
waveform = cdma2000ForwardWaveformGenerator(config);

Выведите частоту выборки канала из строения формы волны. Если поле SpreadingRate является 'SR1', это соответствует форме волны 1.2288 Mcps. Если это 'SR3', это соответствует форме волны 3,6864 Mcps.

Rsprd = str2double(config.SpreadingRate(3)) * 1.2288e6;
Rsamp = Rsprd * config.OversamplingRatio;

% Assume a human walking speed which is about 5 km/h. Calculate the Doppler
% shift at the carrier frequency of 1.9 GHz.
v = 5*1e3/3600;                     % Mobile speed (m/s)
fc = 1.9e9;                         % Carrier frequency
fd = v*fc/physconst('lightspeed');  % Maximum Doppler shift

Снова сконфигурируйте канал CDMA для TUx с помощью stdchan функция. Включите визуализацию частотной характеристики канала и пропустите через нее форму волны. Можно наблюдать очевидную частотно-избирательность канала. Частотная характеристика изменяется медленно при этой низкой мобильной скорости 5 км/ч.

cdmaChan = stdchan('cdmatux', Rsamp, fd);
cdmaChan.Visualization = 'Frequency response';
y = cdmaChan(waveform);

Модель канала WiMAX

Модели канала WiMAX (IEEE ® 802.16) [4] для фиксированных беспроводных приложений предложены для сценариев, где радиус камеры менее 10 км, направленные антенны в приемнике установлены под уголками/окнами или на крыше, а антенны базовой станции (BS) имеют высоту от 15 до 40 м. Модели канала содержат набор моделей потерь пути, включая затенение (пригородный, городской) и многолучевую модель с замираниями, которая описывает многолучевой профиль задержки, распределение К-фактора и Допплеровский спектр. Также характеризуется коэффициент уменьшения усиления антенны, обусловленный использованием направленных антенн.

Этот пример использует MIMO многолучевой канал с замираниями System object™ comm.MIMOChannel с двумя передающими антеннами, одной приемной антенной и округлой структурой Допплеровского спектра. Модифицированные модели канала Stanford University Interim (SUI) состоят из набора из 6 типичных каналов, используемых для симуляции моделей канала IEEE 802.16 (более конкретно, версии стандарта 2004 года для фиксированных беспроводных приложений). Они предложены для сценария, где: размер камеры 7 км, высота антенны BS 30 м, высота приемной антенны 6 м, ширина луча антенны BS 120 степеней, приемная антенна либо всенаправленная, либо направленная (30 степени), и используется только вертикальная поляризация.

Каждая модифицированная модель канала SUI имеет три контакта. Каждый контакт характеризуется относительной задержкой (относительно задержки первого пути), относительной степенью, коэффициентом Райса К и максимальным Доплеровским сдвигом. Для каждой модели канала заданы два набора относительных степеней: один для всенаправленной антенны и один для направленной антенны 30 градусов. Кроме того, для каждого набора относительных степеней заданы два различных K-фактора, К-коэффициент для покрытия 90% камер и К-коэффициент для покрытия 75% камер. Следовательно, каждая из 6 модифицированных моделей канала SUI содержит параметры для четырех различных сценариев. Каждой модифицированной модели канала SUI дополнительно назначают корреляцию антенны, заданную как коэффициент огибающей корреляции между сигналами, принятыми в различных антенных элементах.

Приведенный ниже код создает канал с замираниями MIMO Системного объекта согласно модифицированной модели SUI-1 канала, для всенаправленной антенны и 90% камеры покрытия.

Модель канала имеет 3 пути: первый путь является Райсом, в то время как оставшиеся два являются Релеем. Каждый путь имеет округлый Допплеровский спектр для его диффузного компонента: параметры такие, как заданы в допплеровской ('Rounded') структуре. Хотя для каждого пути в [4] заданы различные максимальные доплеровские сдвиги, мы используем максимальное значение доплеровских сдвигов для всех путей.

Мы используем 2 передающие антенны и 1 приемную антенну. Подобно Приложению B [4], коэффициент корреляции между двумя ссылками на каждом пути принимается равным пространственной корреляции антенны. Коэффициент корреляции равен 0,7.

Частота дискретизации для системы WiMAX составляет 1,429, 2,857, 5,714, 11,429 или 22,857 МГц. При таких скоростях с небольшим доплеровским сдвигом нам нужно много выборок и длительное время симуляции, чтобы в достаточной степени показать статистические характеристики канала. Чтобы избежать этого, мы произвольно выбираем меньшую частоту дискретизации 0,1 МГц. Можно увеличить частоту дискретизации, Rsamp, и количество выборок, Nsв то же время, чтобы увидеть аналогичные статистические результаты.

Rsamp = 0.1e6;
Ns = 3e6;

wimaxChan = comm.MIMOChannel( ...
    'SampleRate', Rsamp, ...
    'PathDelays', [0 0.4 0.9]*1e-6, ...
    'AveragePathGains', [0 -15 -20], ...
    'FadingDistribution', 'Rician', ...
    'KFactor', 4, ...
    'MaximumDopplerShift', .5, ...
    'DopplerSpectrum', doppler('Rounded'), ...
    'TransmitCorrelationMatrix', [1 0.7; 0.7 1], ...
    'ReceiveCorrelationMatrix', 1, ...
    'PathGainsOutputPort', true);

Приведенный ниже код моделирует модифицированную модель канала SUI-1 с длинным входом модулированной системы координат QPSK.

Nt = size(wimaxChan.TransmitCorrelationMatrix, 1);
x = pskmod(randi([0 3], Ns, Nt), 4);
[~, g] = wimaxChan(x);

Доплеровский спектр 1-ой ссылки второго пути оценивается по усилениям комплексного пути и нанесен.

figure;
win = hamming(Ns/5);
Noverlap = Ns/10;
pwelch(g(:,2,1),win,Noverlap,[],Rsamp,'centered')
axis([-0.1/10 0.1/10 -80 10]);
legend('Simulation');

Теоретический округлый доплеровский спектр наложен на предполагаемый доплеровский спектр. Мы наблюдаем хорошую подгонку между ними.

fd = wimaxChan.MaximumDopplerShift;
f  = -fd:0.01:fd;
a  = wimaxChan.DopplerSpectrum.Polynomial;      % Parameters of the rounded Doppler spectrum
Sd = 1/(2*fd*(a(1)+a(2)/3+a(3)/5))*(a(1)+a(2)*(f/fd).^2+a(3)*(f/fd).^4);
Sd = Sd*10^(wimaxChan.AveragePathGains(2)/10);  % Scaling by average path power

hold on;
plot(f(Sd>0)/1e3,10*log10(Sd(Sd>0)),'k--');
legend('Simulation','Theory');

Доплеровский спектр для 2-ой ссылки 2-го пути также оценивается и сравнивается с теоретическим спектром. Мы также наблюдаем хорошую подгонку между ними.

figure;
pwelch(g(:,2,2),win,Noverlap,[],Rsamp,'centered')
axis([-0.1/10 0.1/10 -80 10]);
legend('Simulation');
hold on;
plot(f(Sd>0)/1e3,10*log10(Sd(Sd>0)),'k--');
legend('Simulation','Theory');

Для каждого пути мы строим график форм волны затухающей огибающей обеих передающие ссылки. Мы можем наблюдать корреляцию между затухающими огибающими.

figure;
semilogy(abs(g(:,1,1)),'b');
hold on;
grid on;
semilogy(abs(g(:,1,2)),'r');
legend('First transmit link','Second transmit link');
title('Fading envelopes for two transmit links of Path 1');

figure;
semilogy(abs(g(:,2,1)),'b');
hold on;
grid on;
semilogy(abs(g(:,2,2)),'r');
legend('First transmit link','Second transmit link');
title('Fading envelopes for two transmit links of Path 2');

figure;
semilogy(abs(g(:,3,1)),'b');
hold on;
grid on;
semilogy(abs(g(:,3,2)),'r');
legend('First transmit link','Second transmit link');
title('Fading envelopes for two transmit links of Path 3');

Мы вычисляем пространственные корреляционные матрицы для каждого пути. Мы наблюдаем, что они показывают соответствие с теоретическими значениями Rt. Обратите внимание, что corrcoef оценка функции может быть улучшена, если Ns увеличивается.

TxCorrMatrixPath1 = corrcoef(g(:,1,1),g(:,1,2)).'
TxCorrMatrixPath2 = corrcoef(g(:,2,1),g(:,2,2)).'
TxCorrMatrixPath3 = corrcoef(g(:,3,1),g(:,3,2)).'
TxCorrMatrixPath1 =

   1.0000 + 0.0000i   0.7537 + 0.0388i
   0.7537 - 0.0388i   1.0000 + 0.0000i


TxCorrMatrixPath2 =

   1.0000 + 0.0000i   0.7605 + 0.2331i
   0.7605 - 0.2331i   1.0000 + 0.0000i


TxCorrMatrixPath3 =

   1.0000 + 0.0000i   0.7113 + 0.1282i
   0.7113 - 0.1282i   1.0000 + 0.0000i

Избранная библиография

  1. 3GPP TS 05.05 V8.20.0 (2005-11): проект генерации; Группа технических спецификаций GSM/EDGE Radio Access™ Network; Радиопередача и прием (Release 1999).

  2. 3GPP TS 45.005 V7.9.0 (2007-2): Партнерский проект 3-ьей генерации; Группа технических спецификаций GSM/EDGE Radio Access Network; Радиопередача и прием (релиз 7).

  3. 3GPP TR 25.943 V6.0.0 (2004-12): проект партнерства Генерации; Группа технических спецификаций Radio Доступа Network; Аспекты развертывания (релиз 6).

  4. IEEE 802.16 Broadband Wireless Access Работы Group, «Channel моделей для фиксированных беспроводных приложений», IEEE 802.16a-03/01, 2003-06-27.