wlanVHTSIGARecover

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

Синтаксис

recBits = wlanVHTSIGARecover(rxSig,chEst,noiseVarEst,cbw)
recBits = wlanVHTSIGARecover(rxSig,chEst,noiseVarEst,cbw,cfgRec)
[recBits,failCRC] = wlanVHTSIGARecover(___)
[recBits,failCRC,eqSym] = wlanVHTSIGARecover(___)
[recBits,failCRC,eqSym,cpe] = wlanVHTSIGARecover(___)

Описание

пример

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

пример

recBits = wlanVHTSIGARecover(rxSig,chEst,noiseVarEst,cbw,cfgRec) указывает информацию алгоритма с помощью объекта wlanRecoveryConfig cfgRec.

[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 МГц. Используя объект создать форму волны VHT-SIG-A.

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

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

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

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

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

Используя wlanRecoveryConfig, набор метод коррекции к принуждению нуля, 'ZF'.

cfgRec = wlanRecoveryConfig('EqualizationMethod','ZF');

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

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

Восстановите VHT-SIG-A. Проверьте, что нет никаких битовых ошибок в полученной информации.

[rxBits,crcFail] = wlanVHTSIGARecover(rxSig,chanEst,noiseVar,'CBW160',cfgRec);
crcFail
crcFail = logical
   0

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

biterr(txBits,rxBits)
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(:))

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

свернуть все

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

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

N R является количеством, получают антенны.

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

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

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

N R является количеством, получают антенны.

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

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

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

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

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

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

Параметры алгоритма, заданные как объект wlanRecoveryConfig. Функция использует эти свойства:

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

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

Метод коррекции, заданный как 'MMSE' или 'ZF'.

  • 'MMSE' указывает, что получатель использует минимальный эквалайзер среднеквадратичной погрешности.

  • 'ZF' указывает, что получатель использует обеспечивающий нуль эквалайзер.

Пример: 'ZF'

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

Отслеживание экспериментального этапа, заданное как 'PreEQ' или 'None'.

  • '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

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

Для получения дополнительной информации бита поля VHT-SIG-A обратитесь к Станд. IEEE 802.11ac™-2013 [1], Таблица 22-12.

L-LTF

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

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

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

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

Пропускная способность канала (МГц)Частотный интервал поднесущей, Δ F (kHz)Период быстрого преобразования Фурье (FFT) (БПФ T  = 1 / Δ F)Циклический префиксный или учебный интервал охраны символа (GI2) длительность (T GI2 = БПФ T  / 2)Длительность L-LTF (T LONG = T GI2 + 2 × БПФ T)
20, 40, 80, и 160312.53.2 μs1.6 μs8 μs
10156.256.4 μs3.2 μs16 μs
578.12512.8 μs6.4 μs32 μs

PPDU

Модуль данных о протоколе PLCP

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

Алгоритмы

свернуть все

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

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

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

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

Ссылки

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

[2] Perahia, E. и Р. Стейси. Беспроводная LAN следующего поколения: 802.11n и 802.11ac. 2-й выпуск, Соединенное Королевство: Издательство Кембриджского университета, 2013.

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

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

Введенный в R2015b


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