802.11ah генерация формы волны

Этот пример показывает, как сгенерировать формы волны IEEE® 802.11ah™ S1G и подсвечивает некоторые ключевые возможности стандарта.

Введение

802.11ah предназначается для расширенной области значений и приложений малой мощности в нелицензированной sub полосе на 1 ГГц, включая машину, чтобы обработать машинным способом коммуникацию и Интернет вещей. 802.11ah использует более узкую непрерывную пропускную способность канала, чем 802.11n™ и 802.11ac™, чтобы упростить большое расстояние, коммуникацию малой мощности на более низкой скорости передачи данных. Допустимая пропускная способность канала равняется 1, 2, 4, 8, и 16 МГц.

С тех пор 802.11ah использует те же базовые технологии физического уровня в качестве 802.11n и 802.11ac, цепочки обработки очень похожи. За исключением передач на 1 МГц, в общих данных модулируется с помощью того же процесса в качестве в 802.11ac с 1/10 тактовой частотой.

В этом примере много 802.11ah формы волны S1G [1] сгенерированы, чтобы подсветить некоторые ключевые режимы и функции 802.11ah стандарт.

802.11ah режимы и функции PHY

802.11ah стандарт задает три режима:

  • Режим на 1 МГц (S1G_1M) предназначается для низких приложений скорости передачи данных. Этот режим показывает расширенную преамбулу и новую схему модуляции и кодирования, MCS10, чтобы улучшить робастность. MCS10 является BPSK 1/2 уровень с повторением 2 раз. Когда MCS10 используется, короткое учебное поле (STF) повышено на 3 дБ, чтобы допускать пакетное обнаружение [2]. В этом режиме целый PPDU является beamformed.

  • > = режим преамбулы 2 МГц длиной (S1G_LONG) используется для одной или многопользовательских передач с 2, 4, 8, или пропускная способность канала на 16 МГц. PPDU подобен 802.11ac VHT PPDU, состоя из всенаправленного фрагмента и изменяемого лучом фрагмента.

  • > = короткий режим преамбулы на 2 МГц (S1G_SHORT) используется для однопользовательских передач с 2, 4, 8, или пропускная способность канала на 16 МГц. В этом режиме целый PPDU является beamformed.

802.11ah стандарт предназначается, чтобы действовать на открытом воздухе, а также в закрытом помещении. Перемещающиеся Пилоты были введены, чтобы компенсировать Доплеровское распространение, вызванное отражениями из-за автомобильного движения. В предыдущих 802,11 стандартах экспериментальные местоположения фиксируются к той же поднесущей на время пакета. Отслеживание переменных условий канала из-за высокой Доплеровской среды не является эффективным с фиксированными экспериментальными местоположениями. Пилоты перемещения изменяют поднесущие, которые несут пилотов в зависимости от времени, который улучшает способность отследить изменяющиеся условия канала. В этом примере форма волны сгенерирована для каждого из этих трех режимов, введенных выше с настройками для MCS10, и перемещающийся пилот подсветил.

Режим S1G 1 МГц

PPDU на 1 МГц S1G состоит из пяти полей, все из которых могут быть beamformed:

  1. STF - Короткое учебное поле, которое используется для крупной синхронизации

  2. LTF1 - Первое длинное учебное поле, которое используется для прекрасной синхронизации и начальной оценки канала

  3. SIG - сигнальное поле, которое получатель декодирует, чтобы определить параметры передачи

  4. LTF2-N - Последующие длинные учебные поля, который используется для оценки канала MIMO

  5. Данные - поле данных, которое несет пользовательскую полезную нагрузку данных

Примеры генерации формы волны для MCS0 и передач на 1 МГц MCS10 показывают. Когда MCS10 используется, повышение степени на 3 дБ применяется к короткому учебному полю. Это повышение степени будет визуализироваться.

Функция wlanS1GConfig возвращает объект настройки S1G. Создайте объект настройки S1G для пропускной способности на 1 МГц, 1 антенны передачи, 1 пространственно-временного потока, уровень BSPK 1/2 (MCS0), и 256-байтовая длина APEP.

cfg1MHz = wlanS1GConfig;
cfg1MHz.ChannelBandwidth = 'CBW1';
cfg1MHz.NumTransmitAntennas = 1;
cfg1MHz.NumSpaceTimeStreams = 1;
cfg1MHz.MCS = 0;
cfg1MHz.APEPLength = 256;

Создайте PSDU случайных битов с помощью необходимой длины для заданной настройки формата.

psdu = randi([0 1],cfg1MHz.PSDULength*8,1);

Сгенерируйте форму волны S1G с помощью сконфигурированного объекта формата S1G и PSDU как входные параметры к генератору формы волны, wlanWaveformGenerator. Генератор формы волны модулирует биты PSDU согласно настройке формата. Генератор формы волны также выполняет работу с окнами OFDM. В этом примере работа с окнами отключена для более ясной визуализации.

% Generate waveform with windowing disabled
txMCS0 = wlanWaveformGenerator(psdu,cfg1MHz,'WindowTransitionTime',0);

Измените MCS cfg1MHz к 10 и сгенерируйте вторую форму волны, чтобы продемонстрировать повышение степени STF.

cfg1MHz.MCS = 10;
txMCS10 = wlanWaveformGenerator(psdu,cfg1MHz,'WindowTransitionTime',0);

Степень построена в течение первых 320 микросекунд обеих форм волны, чтобы получить длительность STF и первого LTF в передаче на 1 МГц. Отметьте повышение степени STF, когда MCS10 будет использоваться. Повышение степени требуется, чтобы получать достаточную пакетную чувствительность обнаружения, чтобы поддержать MCS10 [2].

t = 320; % Duration to plot in microseconds
sr = wlanSampleRate(cfg1MHz); % Sample rate Hz
tick = (1/sr)*1e6; % Microseconds per sample
hf = figure;
hp(1) = plot(0:tick:t-tick,20*log10(abs(txMCS10(1:t*sr*1e-6,:))),'bx-');
hold on;
hp(2) = plot(0:tick:t-tick,20*log10(abs(txMCS0(1:t*sr*1e-6,:))),'ro-');
xlim([0 t-1]);
ylim([-20 15]);
s1gWavGenPlotFieldOverlay(cfg1MHz,hf);
grid on;
legend(hp,'1 MHz MCS10','1 MHz MCS0','Location','SouthWest');
title('Power of 1 MHz PPDU');
xlabel('Time (us)');
ylabel('Power (dBW)');

S1G> Режим Преамбулы =2 МГц длиной

802.11ah длинная преамбула поддерживает одну и многопользовательские передачи. Длинная преамбула PPDU состоит из двух фрагментов; всенаправленный фрагмент и изменяемый лучом фрагмент.

Всенаправленный фрагмент передается всем пользователям без beamforming. Это состоит из трех полей:

  1. STF - Короткое учебное поле, которое используется для крупной синхронизации

  2. LTF1 - Первое длинное учебное поле, которое используется для прекрасной синхронизации и начальной оценки канала

  3. SIG-A - Сигнализация о поле, которое получатель декодирует, чтобы определить параметры передачи, относящиеся ко всем пользователям

Изменяемый лучом фрагмент может быть beamformed каждому пользователю. Это состоит из четырех полей:

  1. D-STF - beamformed короткое учебное поле, которое используется получателем для автоматического управления усилением

  2. D-LTF - Длинные учебные поля beamformed, который используется для оценки канала MIMO

  3. SIG-B - Сигнальное поле B. В многопользовательской передаче SIG-B сигнализирует о MCS для каждого пользователя. В однопользовательской передаче MCS сообщен в поле SIG-A всенаправленного фрагмента преамбулы. Поэтому в однопользовательской передаче переданный символ SIG-B является точным повторением первого D-LTF. Это повторение допускает улучшенную оценку канала.

  4. Данные - поле данных, которое несет пользовательскую полезную нагрузку данных

Чтобы визуализировать повторение первого D-LTF, объект настройки формата преамбулы 2 МГц длиной S1G создается с помощью функции wlanS1GConfig и конфигурируется для одного пространственно-временного потока и одной антенны передачи.

cfgSU = wlanS1GConfig;
cfgSU.ChannelBandwidth = 'CBW2';
cfgSU.Preamble = 'Long';
cfgSU.NumUsers = 1;
cfgSU.NumSpaceTimeStreams = 1;
cfgSU.NumTransmitAntennas = 1;
cfgSU.MCS = 1;
cfgSU.APEPLength = 150;

> форма волны преамбулы =2 МГц длиной с одним пространственно-временным потоком сгенерирована с помощью объекта cfgSU.

% Generate a PSDU containing random bits
psdu = randi([0 1],cfgSU.PSDULength*8,1);

% Generate a PPDU waveform
txSU = wlanWaveformGenerator(psdu,cfgSU);

Поля D-LTF и SIG-B построены. Отметьте повторение D-LTF в символе SIG-B.

s1gWavGenPlotSIGB(cfgSU,txSU);

Как сравнение преамбула 2 МГц длиной многопользовательская форма волны будет генерироваться и визуализироваться. Во-первых, объект настройки формата создается для двух пользователей. Пользовательские положения, количество потоков времен пробела, MCS и длины APEP сконфигурированы на пользователя, использующего векторы, чтобы параметризовать соответствующие свойства объекта cfgMU.

cfgMU = wlanS1GConfig;
cfgMU.ChannelBandwidth = 'CBW2';
cfgMU.Preamble = 'Long';
cfgMU.NumUsers = 2;
cfgMU.UserPositions = [0 1];
cfgMU.NumSpaceTimeStreams = [1 1];
cfgMU.NumTransmitAntennas = sum(cfgMU.NumSpaceTimeStreams);
cfgMU.MCS = [1 2];
cfgMU.APEPLength = [150 250];

Случайный PSDU создается для каждого пользователя, и сгенерирована многопользовательская форма волны. Длина PSDU для каждого пользователя, cfgMU.PSDULength, вычисляется на основе свойств передачи объектом cfgMU.

% Generate cell array containing the PSDUs for all users
psdu = cell(cfgMU.NumUsers,1);
for i = 1:cfgMU.NumUsers
    psdu{i} = randi([0 1],cfgMU.PSDULength(i),1);
end

% Generate waveform
txMU = wlanWaveformGenerator(psdu,cfgMU);

Два поля D-LTF и поля SIG-B построены для первого пространственно-временного потока. Обратите внимание, что символ SIG-B больше не является повторением D-LTF1, когда это несет MCS на пользователя.

s1gWavGenPlotSIGB(cfgMU,txMU);

S1G> Короткий Режим Преамбулы на =2 МГц

S1G> короткая форма волны преамбулы на =2 МГц состоит из пяти полей, все из которых могут быть beamformed:

  1. STF - Короткое учебное поле, которое используется для крупной синхронизации

  2. LTF1 - Первое длинное учебное поле, которое используется для прекрасной синхронизации и начальной оценки канала

  3. SIG - сигнальное поле, которое получатель декодирует, чтобы определить параметры передачи

  4. LTF2-N - Последующие длинные учебные поля, который используется для оценки канала MIMO

  5. Данные - поле данных, которое несет пользовательскую полезную нагрузку данных

В этом примере S1G будут сгенерированы короткие формы волны преамбулы на 2 МГц с и без перемещающихся пилотов.

Перемещающиеся пилоты являются дополнительной функцией для всех трех режимов S1G, чтобы допускать наружные ссылки, где Доплеровское распространение потенциально введено из-за движущихся автомобилей. Перемещающиеся пилоты повышены 1.5 раза по сравнению с фиксированными пилотами, чтобы улучшать производительность оценки канала в этой среде [3].

Два> = короткие формы волны преамбулы на 2 МГц сгенерированы; один с фиксированными пилотами и один с перемещающимися пилотами. Сначала короткая настройка формата преамбулы на 2 МГц S1G с фиксированными экспериментальными местоположениями создается с помощью функции wlanS1GConfig.

cfgFix = wlanS1GConfig;
cfgFix.ChannelBandwidth = 'CBW2';
cfgFix.Preamble = 'Short';
cfgFix.NumTransmitAntennas = 1;
cfgFix.NumSpaceTimeStreams = 1;
cfgFix.MCS = 0; % BPSK so same power on all subcarriers for analysis
cfgFix.APEPLength = 100;
cfgFix.TravelingPilots = false; % Fixed pilot subcarriers

Сгенерируйте фиксированную экспериментальную форму волны с помощью объекта cfgFix и случайных битов PSDU. Биты PSDU создаются с помощью необходимой длины для заданной настройки формата.

% Generate a PSDU containing random bits
psdu = randi([0 1],cfgFix.PSDULength*8,1);

% Generate a PPDU waveform
txFix = wlanWaveformGenerator(psdu,cfgFix);

Извлеките поле данных от формы волны области времени с помощью известной длительности преамбулы. Постройте значение символов OFDM и поднесущих. Местоположение пустых указателей, поднесущих переноса данных и экспериментальных поднесущих переноса подсвечено. Экспериментальные местоположения остаются неизменными на время пакета.

s1gWavGenPlotGrid(txFix,cfgFix, ...
    'Demodulated OFDM symbols with fixed pilots highlighted')

Теперь форма волны сгенерирована с помощью той же настройки, но с перемещающимися пилотами. Это могло быть выполнено путем изменения свойства TravelingPilots существующего объекта настройки и регенерации формы волны, но в этом примере отдельный объект создается и используется.

% Copy the format configuration object and enable traveling pilots
cfgTravel = cfgFix;
cfgTravel.TravelingPilots = true;

% Generate waveform with traveling pilots
txTravel = wlanWaveformGenerator(psdu,cfgTravel);

Значение символов OFDM и поднесущих построено снова. Экспериментальные местоположения теперь изменяются на символ OFDM. Значение экспериментальных поднесущих в 1.5 раза больше чем это поднесущих переноса данных.

s1gWavGenPlotGrid(txTravel,cfgTravel, ...
    'Demodulated OFDM symbols with traveling pilots highlighted')

Заключение

Этот пример продемонстрировал, как сгенерировать формы волны для различного 802.11ah режимы S1G и подсветил некоторые ключевые возможности стандарта.

Приложение

Этот пример использует следующие функции помощника:

Выбранная библиография

  1. Черновой Стандарт IEEE P802.11ah™/D5.0 для Информационных технологий - Телекоммуникаций и обмена информацией между системами - Локальными сетями и городскими компьютерными сетями - Конкретными требованиями - Часть 11: Беспроводное Среднее управление доступом (MAC) LAN и Физический уровень (PHY) Спецификации. Поправка 2: Лицензия Sub 1 ГГц Освобожденная Операция.

  2. Sameer Vermani и др. "Формат преамбулы для 1 МГц", IEEE 802.11-11/1482r4, 2012-01-16.

  3. Рон Порэт и др. "Перемещающиеся Пилоты", IEEE 8902.11-12/1322r0, 2012-11-12.

Для просмотра документации необходимо авторизоваться на сайте