Тема: ”Исследование моделей стационарных MIMO каналов связи”

Часть 3

 

 

Выполнил: ст.гр.218

 Холмогорцев И.А.

 

Пояснение алгоритмов, упомянутых в работе.

1) Модель Кронекера

Модель Кронекера предполагает, что пространственные корреляции на передающей и приемной стороне неотделимы. Эквивалентно, направления выхода (DoD)  и входа (DoA) спектра разделены. Полная корреляционная матрица может быть представлена как:

Rh=E[Rr⊗Rr],

где  — произведение Кронекера

Rt— корреляционная матрица передатчика, то есть Rt = E[HHH] размера N(T) x N(T).

Rr— корреляционная матрица передатчика, то есть Rr = E[HHH] размера N(R) x N(R).

Можно получить  реализацию MIMO канальной матрицы в виде:

H=Rr1/2ARt1/2

где  — матрица размера N(R) x N(T) комплексных Гауссовых переменных с нулевым средним  и единичной дисперсией.

Листинг 33 — Пример использования модели Кронекера (Под операцией умножения Кронекера понимается операция, описанная в главе 4.2.2[1])

% Frist example of the Kronecker model as used in section 4.2.2 where it uses the

% full Kronecker matrix.

% Tim Brown, January 2012

 

N = 1000; % Arbritrary number of samples

ntx = 4;

nrx = 4;

R_tx = [1 0.6 0.5 0.2; % Example transmit correlation matrix, for 4x4 channel

        0.6 1 0.45 0.3;

        0.5 0.45 1 0.1;

        0.2 0.3 0.1 1];

R_rx = [1 0.44 0.42 0.3; % Example receive correlation matrix, for 4x4 channel

        0.44 1 0.41 0.23;

        0.42 0.41 1 0.13;

        0.3 0.23 0.13 1];

R = kron(R_tx,R_rx); % Apply Kronecker product to resolve the full matrix

   

%Generate a long vector form of NTx by NRx channels with N samples (note

%the book only uses one sample

h = (randn(nrx * ntx, N) + j * randn(nrx * ntx, N))/sqrt(2);

 

% Either the sqrtm or Choelsky factorisation can be used here.

W = sqrtm(R);

%W = chol(R);

 

% Create Kronecker correlated channel H

H = zeros(ntx,nrx,N);

for nn = 1:N

    w = W * h(:,nn);

    H(:,:,nn) = reshape(w, nrx, ntx);

end

 

% Compare the eigen distributions to show the effect of correlation on the

% channel

H_iid = (randn(nrx, ntx, N) + j * randn(nrx, ntx, N))/sqrt(2);

S_iid = zeros(ntx, nrx, N);

S_kron = zeros(ntx, nrx, N);

for nn = 1:N

    [Uiid S_iid(:,:,nn) Viid] = svd(squeeze(H_iid(:,:,nn)));

    [Ukron S_kron(:,:,nn) Vkron] = svd(squeeze(H(:,:,nn)));

end

 

% Generate histogram/probability density for singular values

bins_S_dB = [-30:1:20];

bins_S = 10.^(bins_S_dB./20);

pdf_s1iid = hist(abs(squeeze(S_iid(1,1,:))),bins_S);

pdf_s2iid = hist(abs(squeeze(S_iid(2,2,:))),bins_S);

pdf_s3iid = hist(abs(squeeze(S_iid(3,3,:))),bins_S);

pdf_s4iid = hist(abs(squeeze(S_iid(4,4,:))),bins_S);

pdf_s1kron = hist(abs(squeeze(S_kron(1,1,:))),bins_S);

pdf_s2kron = hist(abs(squeeze(S_kron(2,2,:))),bins_S);

pdf_s3kron = hist(abs(squeeze(S_kron(3,3,:))),bins_S);

pdf_s4kron = hist(abs(squeeze(S_kron(4,4,:))),bins_S);

 

% Convert histograms to cumulative distributions

NBins = length(bins_S);

CDF_s1iid = zeros(1,NBins);

CDF_s2iid = zeros(1,NBins);

CDF_s3iid = zeros(1,NBins);

CDF_s4iid = zeros(1,NBins);

CDF_s1kron = zeros(1,NBins);

CDF_s2kron = zeros(1,NBins);

CDF_s3kron = zeros(1,NBins);

CDF_s4kron = zeros(1,NBins);

 

for nb = 1:NBins

    CDF_s1iid(1,nb) = sum(squeeze(pdf_s1iid(1,1:nb)));

    CDF_s2iid(1,nb) = sum(squeeze(pdf_s2iid(1,1:nb)));

    CDF_s3iid(1,nb) = sum(squeeze(pdf_s3iid(1,1:nb)));

    CDF_s4iid(1,nb) = sum(squeeze(pdf_s4iid(1,1:nb)));

    CDF_s1kron(1,nb) = sum(squeeze(pdf_s1kron(1,1:nb)));

    CDF_s2kron(1,nb) = sum(squeeze(pdf_s2kron(1,1:nb)));

    CDF_s3kron(1,nb) = sum(squeeze(pdf_s3kron(1,1:nb)));

    CDF_s4kron(1,nb) = sum(squeeze(pdf_s4kron(1,1:nb)));

end

 

figure

semilogy(bins_S_dB,CDF_s1iid,'b-',bins_S_dB,CDF_s1kron,'g:',bins_S_dB,CDF_s2iid,'b-',bins_S_dB,CDF_s3iid,'b-', ...

         bins_S_dB,CDF_s4iid,'b-',bins_S_dB,CDF_s2kron,'g:',bins_S_dB,CDF_s3kron,'g:',bins_S_dB,CDF_s4kron,'g:')

set(gca,'FontSize',10)

set(gcf,'color','white')

ylabel('Cumulative Distribution (%)')

xlabel('Eigenvalue Magnitude (dB)')

legend('i.i.d Rayleigh','Kronecker')

 

Результат работы скрипта — сравнительные графики на рисунке 9.

 

Рисунок 9 — Кумулятивные распределения

 

2) Граничное значение частоты Fc

Данная информация объясняет, каким образом определяется этот параметр (Fc) для различных типов Доплеровского спектра:

—  Для любого типа спектра, кроме “Gaussian” и “BiGaussian” параметр Fc = 1;

— Для типа “Gaussian” параметр Fc эквивалентен  полю значения структуры “NormalizedStandardDeviations”, умноженному на sqrt(2∙log(2));

— Для типа “BiGaussian

А) Если поле “PowerGains” структуры “Doppler spectrum” равно [0,0], тогда Fc = SigmaGaussian2 (SigmaGaussian1) помноженному на sqrt(2∙log(2)).

Б) Если значения  переменных “CenterFreqGaussian1” и “CenterFreqGaussian2” оба равны 0 и  SigmaGaussian1” и SigmaGaussian2” одинаковы (идентичны), тогда Fc равен SigmaGaussian2 умноженному на sqrt(2∙log(2)).

В) Во всех других случаях Fc равен 1.

3) Выбор антенны

Когда объект находится в режиме выбора антенны , он использует  следующие алгоритмы для обработки входного сигнала:

— Случайные пути постоянно генерируются и развиваются для каждого звена системы, вне зависимости от того, выбрано звено или нет. Значения усиления путей  невыбранных звеньев  помечаются как “NaN” на своем выходе.

—  Пространственная корреляция применяется только для выбранных антенн приема/передачи, а коэффициенты корреляции, соответствуют входам матрицы передатчика и/или матрице приемника. Другими словами, пространственная корреляционная матрица  для выбранных антенн приема/передачи является подматрицей корреляционной матрицы  Передатчика/Приемника.

— Прохождение по пути канала происходит только по выбранным элементам.

—  Всякий раз, когда элемент, связанный с определенной передающей антенной переходит из выбранного состояния в “ не выбранное” состояние, то его канальный фильтр выключается. Например, если параметр “AntennaSelection” установлен на значение “Tx” и выбранная передающая антенна поменялась со 2 на 1, канальный фильтр соответствующий второй антенне будет перезагружен.

—  Нормализация выхода канала происходит по числу выбранных приемных антенн.

MIMO на частном примере в спецификации Wi-Fi 802.11n.

Первое поколение устройств с поддержкой стандарта WiFi 802.11n появилось на рынке несколько лет назад. Технология MIMO (MIMO - multipleinput/multipleoutput - множественные входы/множественные выходы) является стержнем 802.11n. Это радиосистема с множеством раздельных путей передачи и приема. MIMO-системы описываются с использованием количества передатчиков и приемников. Стандарт WiFi 802.11n определяет набор возможных комбинаций от 1х1 до 4х4.

Важно помнить, что  поддержка WiFi 802.11n c MIMO и большим количеством приемников может снизить эффект многолучевого распространения и деструктивную интерференцию, но в любом случае лучше уменьшать условия многолучевого распространения где и как только возможно. Один из важнейших моментов – держите антенны как можно дальше от металлических предметов (прежде всего омни антенны WiFi, которые имеют круговую или всенаправленную диаграмму направленности).

Необходимо четко понимать, что далеко не все Wi-Fi клиенты и Точки Доступа стандарта WiFi одинаковы с точки зрения MIMO (Рисунок 10)




Рисунок 10 — Множество различных клиентов 802.11n


Существуют клиенты 1х1, 2х1, 3х3 и т.д. Например мобильные устройства типа смартфона чаще всего поддерживают MIMO 1x1, иногда 1x2. Это связано с двумя ключевыми проблемами:
1. необходимость обеспечения низкого потребления энергии и долгой жизни аккумулятора,
2. сложность в расположении нескольких антенн с адекватным их разнесением в небольшом корпусе.
Это же касается и других мобильных устройств: планшетных компьютеров, КПК и т.п.
Ноутбуки выского уровня довольно часто уже сейчас поддерживают 
MIMO вплоть до 3х3 (MacBook Pro и тп).

Давайте рассмотрим основные типы MIMO в сетях стандарта WiFi.
Сейчас мы опустим детализацию количества передатчиков и приемников. Важно понять принцип.

Первый тип: Разнесение при Получении сигнала на WiFi устройстве

Если в точке приема есть не менее двух связанных приемников с разнесенными антеннами,
то вполне реально провести анализ всех копий на каждом приемнике для выбора лучших сигналов.
Далее с этими сигналами можно проводить различные манипуляции, но нас интересует, прежде всего,
возможность их комбинирования с помощью технологии 
MRC (Maximum Ratio Combined). Технология MRC подробнее будет рассмотрена далее.

Второй тип: Разнесение при Отправке сигнала на WiFi устройстве

Если в точке отправки есть не менее двух связанных передатчиков WiFi с разнесенными антеннами, то появляется возможность отправки группы идентичных сигналов для увеличения количества копий информации, повышения надежности на передаче и снижения необходимости перепосылки данных в радиоканале, в случае их потерь.


Третий тип: Пространственное мультиплексирование сигналов на устройстве стандарта WiFi (объединение сигналов)

Если в точке отправки и в точке приема есть не менее двух связанных передатчиков WiFi с разнесенными антеннами, то появляется возможность отправки набора разной информации поверх разных сигналов с целью создания возможности виртуального объединения таких информационных потоков в один канал передачи данных, общая пропускная способность которого стремится к сумме отдельных потоков, из которых он состоит. Это называется Пространственным мультиплексированием. Но здесь крайне важно обеспечить возможность качественного разделения всех исходных сигналов, что требует большой величины SNR – соотношения сигнал/шум.




Рисунок 11 — Разнесение и комбинирование сигналов


Технология MRC (maximumratiocombined) используется во многих современных Точках Доступа Wi-Fi корпоративного класса (Рисунок 12)




Рисунок 12 — Технология MRC. Улучшение сигнала от Клиента к ТД


MRC направлен на подъем уровня сигнала в направлении от Wi-Fi клиента к Точке Доступа WiFi 802.11.
Алгоритм работы 
MRC подразумевает сбор на нескольких антеннах и приемниках всех прямых и переотраженных при многолучевом распространении сигналов. Далее специальный процессор (DSP) отбирает лучший сигнал с каждого приемника и выполняет комбинирование. Фактически математическая обработка реализует виртуальный фазовый сдвиг для создания положительной интерференции со сложением сигналов. Таким образом, результирующий суммарный сигнал значительно лучше по характеристикам, чем все исходные.

MRC позволяет обеспечивать значительно лучшие условия работы маломощных мобильных устройств в сети стандарта Wi-Fi.

В системах WiFi 802.11n достоинства многолучевого распространения используются для одновременной передачи нескольких радиосигналов. Каждый из этих сигналов, называемых «пространственными потоками», отправляется с отдельной антенны с помощью отдельного передатчика. Вследствие наличия некоторого расстояния между антеннами каждый сигнал следует к приемнику по немного отличающемуся пути. Этот эффект называется «пространственным разнесением». Приемник также оборудован несколькими антеннами со своими отдельными радиомодулями, которые независимо декодируют поступающие сигналы, и каждый сигнал объединяется с сигналами от других приемных радиомодулей. В результате этого одновременно осуществляется прием нескольких потоков данных. Это обеспечивает значительно более высокую пропускную способность, чем в прежних системах стандарта WiFi 802.11, но и требует наличия клиента с поддержкой 802.11n.

Теперь немного углубимся в данную тему:
В устройствах стандарта WiFi с MIMO возможно разделение всего входящего информационного потока на несколько различных потоков данных с помощью пространственного мультиплексирования для последующей их отправки. Используется несколько передатчиков и антенн для отправки различных потоков в одном частотном канале. Можно визуализировать это таким образом, что некоторая текстовая фраза может передаваться так что первое слово отправляется через один передатчик, второе через другой передатчик и т.д.
Естественно, принимающая сторона должна поддерживать такой же функционал (MIMO) для полноценного выделения различных сигналов, их пересборки и объединения с помощью опять же пространственного мультиплексирования. Так мы получаем возможность восстановить исходный информационный поток. Представленная технология позволяет разделить большой поток данных на набор меньших потоков и передавать их отдельно один от другого. В целом это дает возможность более эффективно утилизировать радиосреду и конкретно частоты выделенные для Wi-Fi(Рисунок 13).




Рисунок 13 — Объединение сигналов и более высокая утилизация спектра


Технология стандарта WiFi 802.11n также определяет как MIMO может быть использована для улучшения уровня SNR на приемнике используя управление диаграммой направленности на передаче (transmit beamforming)(Рисунок 14). С данной техникой возможно управлять процессом отправки сигналов с каждой антенны так, чтобы улучшились параметры принимаемого сигнала в приемнике.  Другими словами в дополнение к отправке множественных потоков  данных могут быть использованы множественные передатчики, чтобы достичь более высокого SNR в точке приема и, в результате, большей скорости передачи данных на клиенте.  
Необходимо отметить следующие вещи:
1. Процедура управления диаграммой направленности (transmit beamforming), определенная в стандарте Wi-Fi 802.11n, требует совместной работы с приемником (фактически с клиентским устройством) для получения обратной связи о состоянии сигнала на приемнике. Здесь необходимо иметь поддержку этой функциональности на обеих сторонах канала – как на передатчике, так и на приемнике.
2. В силу сложности данной процедуры управление диаграммой направленности (transmit beamforming) не было поддержано в первом поколении чипов 802.11n как на стороне терминалов, так и на стороне Точек Доступа. В настоящее время большинство существующих чипов для клиентских устройств также Не поддерживают данный функционал.
3. Существуют решения для построения сетей 
Wi-Fi, которые позволяют полноценно управлять диаграммой направленности на Точках Доступа без необходимости получения обратной связи от клиентских устройств.




Рисунок 14 — Управление диаграммой направленности при передаче. Улучшение сигнала от ТД к клиенту


Другие способы формирования MIMO каналов в Matlab

1)   Формирование корреляционных матриц непосредственно в спецификации 802.11n Wi Fi, описанной выше

В прикрепленном к статье архиву содержатся все .m-файлы, необходимые для формирования генераторной(G) и проверочной (H) матриц. Ниже приведен листинг, отражающий 1 из этих файлов:

Листинг 34 — формирование матриц G и H

function [ H, G, Z ] = buildHG( n, R )

%BUILDHG Creates the parity check matrix H and the generator matrix G

%(reading the prototype from file) for codeword length n and rate R

 

[H, Z] = buildH(n, R);

 

if R == 1/2

    rStr = '12';

elseif R == 2/3

    rStr = '23';

elseif R == 3/4

    rStr = '34';

else

    rStr = '56';

end

 

if(exist(['matrix/',num2str(n),'_',rStr,'.mat'],'file'))

    load(['matrix/',num2str(n),'_',rStr],'G');

else

    gfH = gf(H);

    k = n*R;

    B = gfH(:,1:n-k);

    C = gfH(:,n-k+1:n);

    C1 = inv(C);            % Very slow operation

    G = [eye(k);C1*B];

 

    CHECK = gfH*G;

    if any(CHECK(:))

        disp('G is not correct');

        return

    end

 

    if ~exist('matrix','dir')

        mkdir('matrix');

    end

    save(['matrix/',num2str(n),'_',rStr],'G','-append');

end

G = double(G.x);

 

end

 

Следует отметить, что входными данными будут являться n — длина кодового слова при кодировании и R – типовая скорость кодирования.

Комментарии приведены во всех файлах на английском, несмотря на это, они просты для понимания. Все остальные файлы находятся в архиве, прикрепленном к статье.


2)   Еще один вид формирования корреляционных матриц

Данная программа — “channel_coeff” при определенных входных данных, а именно NT –количество передающих антенн, NR – приемных, N – длина канальной матрицы, Rtx – корреляционный вектор/матрица на передающей стороне, Rrx – корреляционный вектор/матрица на приемной стороне, type – тип корелляции генерирует MIMO канал.[7] Некоторые комментарии так же присутствуют на английском и так же просты для перевода.

Листинг 35 — еще один вид формирования корреляционных матриц

function hh=channel_coeff(NT,NR,N,Rtx,Rrx,type)

% correlated Rayleigh MIMO channel coefficient

% Inputs:

% NT : число перед. антенн

% NR : кол-во приемных

% N : длина кан. матрицы

% Rtx : correlation vector/matrix of Tx

% e.g.) [1 0.5], [1 0.5;0.5 1]

% Rrx : correlation vector/matrix of Rx

% type : тип корреляции: ’complex’ или ’field’

% Outputs:

% hh : NR x NT x N correlated channel

% uncorrelated Rayleigh fading channel, CN(1,0)

h=sqrt(1/2)*(randn(NT*NR,N)+1i*randn(NT*NR,N));

if nargin, hh=h; return; end % Uncorrelated channel

if isvector(Rtx), Rtx=toeplitz(Rtx); end

if isvector(Rrx), Rrx=toeplitz(Rrx); end

% Narrow band correlation coefficient

if strcmp(type,'complex')

C =chol(kron(Rtx,Rrx))'; % Complex correlation

else

C =sqrtm(sqrt(kron(Rtx,Rrx))); % Power (field) correlation

end

% Apply correlation to channel matrix

hh=zeros(NR,NT,N);

for i=1:N, tmp=C*h(:,i); hh(:,:,i)=reshape(tmp,NR,NT); end


Список используемой литературы:

1.   T. Brown, E. DeCarvalho and P. Kyritsi Practical Guide to the MIMO Radio Channel with Matlab Examples,Wiley,2012.

2.  Oestges, C., and B. Clerckx. MIMO Wireless Communications: From Real-World Propagation to Space-Time Code Design, Academic Press, 2007.

3.   Correira, L. M. Mobile Broadband Multimedia Networks: Techniques, Models and Tools for 4G, Academic Press, 2006.

4.   Kermoal, J. P., L. Schumacher, K. I. Pedersen, P. E. Mogensen, and F. Frederiksen. "A stochastic MIMO radio channel model with experimental validation." IEEE Journal on Selected Areas of Communications. Vol. 20, Number 6, 2002, pp. 1211–1226.

5.   Jeruchim, M., P. Balaban, and K. S. Shanmugan. Simulation of Communication Systems, Second Edition, New York, Kluwer Academic/Plenum, 2000.

6.   Pätzold, Matthias, Cheng-Xiang Wang, and Bjorn Olav Hogstand. "Two New Sum-of-Sinusoids-Based Methods for the Efficient Generation of Multiple Uncorrelated Rayleigh Fading Waveforms."IEEE Transactions on Wireless Communications. Vol. 8, Number 6, 2009, pp. 3122–3131.

7.   Yong Soo Cho, Jaekwon Kim, Won Young Yang, Chung G. Kang MIMO-OFDM WIRELESS COMMUNICATIONS WITH MATLAB, Whiley, 2010