wlanVHTSIGARecover

Восстановление информационных бит VHT-SIG-A

Описание

пример

recBits = wlanVHTSIGARecover(rxSig,chEst,noiseVarEst,cbw) возвращает восстановленные информационные биты из VHT-SIG-A[1] поле. Входы включают в себя принятое поле VHT-SIG-A, оценку канала, оценку отклонения шума и полосу пропускания канала.

пример

recBits = wlanVHTSIGARecover(rxSig,chEst,noiseVarEst,cbw,Name,Value) задает параметры алгоритма при помощи одного или нескольких аргументов пары "имя-значение".

[recBits,failCRC] = wlanVHTSIGARecover(___) возвращает состояние отказа проверки CRC, failCRC, с использованием аргументов из предыдущих синтаксисов.

[recBits,failCRC,eqSym] = wlanVHTSIGARecover(___) возвращает уравненные символы, eqSym.

[recBits,failCRC,eqSym,cpe] = wlanVHTSIGARecover(___) возвращает общую фазовую ошибку, cpe.

Примеры

свернуть все

Восстановите информационные биты в поле VHT-SIG-A путем выполнения оценки канала на L-LTF по квазистатическому каналу с замираниями 1x2

Создайте wlanVHTConfig объект, имеющий пропускную способность канала 80 МГц. Сгенерируйте сигналы поля L-LTF и VHT-SIG-A, используя этот объект.

cfg = wlanVHTConfig('ChannelBandwidth','CBW80');
txLLTF = wlanLLTF(cfg);
[txVHTSIGA, txBits] = wlanVHTSIGA(cfg);
chanBW = cfg.ChannelBandwidth;
noiseVarEst = 0.1;

Передайте сигналы L-LTF и VHT-SIG-A через квазистатический канал с замираниями 1x2 с AWGN.

H = 1/sqrt(2)*complex(randn(1,2),randn(1,2));
rxLLTF    = awgn(txLLTF*H,10);
rxVHTSIGA = awgn(txVHTSIGA*H,10);

Выполните оценку канала на основе L-LTF.

demodLLTF = wlanLLTFDemodulate(rxLLTF,chanBW,1);
chanEst = wlanLLTFChannelEstimate(demodLLTF,chanBW);

Восстановление VHT-SIG-A. Проверьте успешность проверки CRC.

[rxBits,failCRC] = wlanVHTSIGARecover(rxVHTSIGA,chanEst,noiseVarEst,'CBW80');
failCRC
failCRC = logical
   0

Проверка отказа CRC возвращает 0, что указывает на то, что CRC прошел.

Сравните переданные биты с принятыми битами. Подтвердите, что результат CRC, указанный как правильный, поскольку выход совпадает с входом.

isequal(txBits,rxBits)
ans = logical
   1

Восстановление VHT-SIG-A в канале AWGN. Сконфигурируйте сигнал VHT, чтобы иметь полосу пропускания канала 160 МГц, один пространственно-временной поток и одну приемную антенну.

Создайте wlanVHTConfig объект, задающий пропускную способность канала 160 МГц.

cfg = wlanVHTConfig('ChannelBandwidth','CBW160');

Сгенерируйте сигналы поля L-LTF и VHT-SIG-A.

txLLTF = wlanLLTF(cfg);
[txSig,txBits] = wlanVHTSIGA(cfg);
chanBW = cfg.ChannelBandwidth;
noiseVarEst = 0.1;

Пропустите переданный VHT-SIG-A через канал AWGN.

awgnChan = comm.AWGNChannel('NoiseMethod','Variance','Variance',noiseVarEst);
rxLLTF = awgnChan(txLLTF);
rxSig = awgnChan(txSig);

Выполните оценку канала на основе L-LTF.

demodLLTF = wlanLLTFDemodulate(rxLLTF,chanBW,1);
chEst = wlanLLTFChannelEstimate(demodLLTF,chanBW);

Восстановите VHT-SIG-A, задав метод эквализации с нулями, и проверьте результат CRC

[recBits,failCRC] = wlanVHTSIGARecover(rxSig,chEst,noiseVarEst,'CBW160','EqualizationMethod','ZF');
disp(failCRC)
   0

Проверьте, что принятый сигнал не содержит битовых ошибок.

biterr(txBits,recBits)
ans = 0

Восстановление VHT-SIG-A в канале 2x2 MIMO с AWGN. Подтвердите, что CRC проверки проходов.

Сконфигурируйте канал 2x2 MIMO VHT.

chanBW = 'CBW20';
cfgVHT = wlanVHTConfig('ChannelBandwidth', chanBW, 'NumTransmitAntennas', 2, 'NumSpaceTimeStreams', 2);

Сгенерируйте сигналы L-LTF и VHT-SIG-A.

txLLTF  = wlanLLTF(cfgVHT);
txVHTSIGA = wlanVHTSIGA(cfgVHT);

Передайте сигналы L-LTF и VHT-SIG-A через 2 × 2 канал MIMO с белым шумом.

mimoChan = comm.MIMOChannel('SampleRate', 20e6);
rxLLTF = awgn(mimoChan(txLLTF), 15);
rxVHTSIGA = awgn(mimoChan(txVHTSIGA),15);

Демодулируйте сигнал L-LTF. Чтобы сгенерировать оценку канала, используйте демодулированную L-LTF.

demodLLTF = wlanLLTFDemodulate(rxLLTF, chanBW, 1);
chanEst = wlanLLTFChannelEstimate(demodLLTF, chanBW);

Восстановите информационные биты в VHT-SIG-A.

[recVHTSIGABits, failCRC, eqSym] = wlanVHTSIGARecover(rxVHTSIGA, chanEst, 0, chanBW);

Визуализируйте график поля точек уравненных символов, eqSym.

scatterplot(eqSym(:))

Figure Scatter Plot contains an axes. The axes with title Scatter plot contains an object of type line. This object represents Channel 1.

Входные параметры

свернуть все

Полученное поле VHT-SIG-A, заданное как N матрица S-by N R. N S является количеством выборок и увеличивается с пропускной способностью канала.

Пропускная способность каналаN S
'CBW20'160
'CBW40'320
'CBW80'640
'CBW160'1280

N R является количеством приемных антенн.

Типы данных: double
Поддержка комплексного числа: Да

Оценка канала, заданная как N массив ST-на-1-бай- N R. N ST является количеством занятых поднесущих и увеличивается с пропускной способностью канала.

Пропускная способность каналаN ST
'CBW20'52
'CBW40'104
'CBW80'208
'CBW160'416

N R является количеством приемных антенн.

Оценка канала основана на L-LTF.

Типы данных: double
Поддержка комплексного числа: Да

Оценка отклонения шума, заданная как неотрицательный скаляр.

Типы данных: double

Пропускная способность канала в МГц, заданная как 'CBW20', 'CBW40', 'CBW80', или 'CBW160'.

Типы данных: char | string

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'PilotPhaseTracking','None' отключает отслеживание фазы управления.

Смещение дискретизации символов OFDM, представленное как часть длины циклического префикса (CP), заданная как разделенная разделенными запятой парами, состоящая из 'OFDMSymbolOffset' и скаляром в интервале [0, 1]. Заданное значение указывает начальное местоположение для демодуляции OFDM относительно начала CP. Значение 0 представляет начало CP и значение 1 представляет конец CP.

Типы данных: double

Метод эквализации, заданный как разделенная разделенными запятой парами, состоящая из 'EqualizationMethod' и одно из этих значений.

  • 'MMSE' - Приемник использует эквалайзер минимальной квадратной ошибки.

  • 'ZF' - Приемник использует уравнитель с нулями.

Типы данных: char | string

Отслеживание фазы пилота, заданное как разделенная разделенными запятой парами, состоящая из 'PilotPhaseTracking' и одно из этих значений.

  • 'PreEQ' - Включите отслеживание фазы пилот-сигнала, которое функция выполняет перед любой операцией эквализации.

  • 'None' - Отключить отслеживание фазы управления.

Типы данных: char | string

Выходные аргументы

свернуть все

Восстановленные информационные биты VHT-SIG-A, возвращенные как вектор-столбец 48 на 1. Для получения дополнительной информации см. VHT-SIG-A.

Проверка отказа CRC, возвращенная следующим true если проверка CRC прекращается или false если проверка CRC пройдена.

Уравненные символы в данных, несущих поднесущие, возвращаются как матрица 48 на 2. Каждый сегмент полосы пропускания канала 20 МГц имеет два символа и 48 данных, несущих поднесущие. Эти сегменты объединяются в одну матрицу 48 на 2, которая содержит поле VHT-SIG-A.

Общая фазовая ошибка в радианах, возвращенная как вектор-столбец 2 на 1.

Подробнее о

свернуть все

VHT-SIG-A

Поле очень высокой пропускной способности сигнала A (VHT-SIG-A) состоит из двух символов: VHT-SIG-A1 и VHT-SIG-A2. Поле VHT-SIG-A содержит информацию, необходимую для интерпретации информации VHT PPDU.

Подробные сведения о битах в поле VHT-SIG-A см. в стандарте IEEE Std 802.11ac™-2013 [1], таблица 22-12.

L-LTF

Устаревшее длинное поле обучения (L-LTF) является вторым полем в 802.11™ устаревшей преамбуле OFDM PLCP. L-LTF является компонентом VHT, HT и не-HT PPDUs.

Оценка канала, оценка смещения мелкой частоты и оценка смещения тонкой синхронизации символа полагаются на L-LTF.

L-LTF состоит из циклического префикса (CP), за которым следуют два одинаковых длинных обучающих символа (C1 и C2). CP состоит из второй половины длинного обучающего символа.

Длительность L-LTF изменяется в зависимости от полосы пропускания канала.

Пропускная способность канала (МГц)Частотный интервал поднесущей, Δ F (кГц)Период быстрого преобразования Фурье (FFT) (T БПФ  = 1/ Δ F)Длительность интервала защиты циклического префикса или обучающего символа (GI2) (T GI2  = T FFT/2  )Длительность L-LTF (T LONG  = T GI2  + 2 × T FFT)
20, 40, 80 и 160312.53,2 мкс1,6 мкс8 мкс
10156.256,4 мкс3,2 мкс16 мкс
578.12512,8 мкс6,4 мкс32 мкс

PPDU

Модуль данных протокола ЦНПК

PPDU является полной системой координат PLCP, включая заголовки PLCP, MAC-заголовки, поле MAC- данных и MAC-трейлеры и PLCP.

Алгоритмы

свернуть все

Восстановление VHT-SIG-A

Поле VHT-SIG-A состоит из двух символов и находится между полем L-SIG и фрагментом VHT-STF структуры пакета для PPDU формата VHT.

Для пакетов с одним пользователем можно восстановить информацию о длине из полей L-SIG и VHT-SIG-A. Поэтому для приемника не требуется строго декодировать поле VHT-SIG-A.

Для получения подробной информации VHT-SIG-A см. IEEE Std 802.11ac -2013 [1], раздел 22.3.4.5, и Perahia [2], раздел 7.3.2.1.

Ссылки

[1] Стандарт IEEE Std 802.11ac™-2013 IEEE на информационные технологии - Телекоммуникации и обмен информацией между системами - Локальные и столичные сети - Особые требования - Часть 11: Беспроводное управление средним доступом к локальной сети (MAC) и физический уровень (PHY) Спецификации - Поправка 4: Улучшения для очень высокого

[2] Перахия, Э. и Р. Стейси. Беспроводные LAN следующей генерации: 802.11n и 802.11ac. 2-е издание, Великобритания: Cambridge University Press, 2013.

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

.
Введенный в R2015b

[1] IEEE® Std 802.11ac -2013 Адаптировано и переиздано с разрешения IEEE. Копирайт IEEE 2013. Все права защищены.