wlanSegmentParseBits

Биты данных синтаксического анализа сегмента

Описание

пример

y = wlanSegmentParseBits(bits,cbw,numES,numCBPS,numBPSCS) выполняет парсинг сегмента на входе bits согласно IEEE® 802.11ac™-2013, Раздел 22.3.10.7, когда cbw 'CBW16' или 'CBW160'.

Примечание

Парсинг сегмента битов применяется только, когда полоса пропускания канала составляет или 16 МГц или 160 МГц, и исключена для остающихся полос пропускания канала (как утверждено в вышеупомянутом разделе IEEE802.11ac-2013). Поэтому, когда cbw любое принятое значение кроме 'CBW16' или 'CBW160', wlanSegmentParseBits возвращает неизменный вход.

Примеры

свернуть все

Синтаксический анализ сегмента закодировал биты для настройки VHT (с полосой пропускания канала 160 МГц и тремя пространственными потоками) в два символа OFDM.

Задайте входные параметры. Установите полосу пропускания канала на 160 МГц, количество закодированных битов на символ OFDM к 2 808, количество пространственных потоков к 3, количество закодированных потоков к 1, количество закодированных битов на поднесущую на пространственный поток к 2 и количество символов OFDM к 2. Вычислите количество закодированных битов на символ OFDM на пространственный поток путем деления количества закодированных битов на символ OFDM количеством пространственных потоков.

chanBW = 'CBW160';
numCBPS = 2808;
numSS = 3;
numES = 1;
numBPSCS = 2;
numSym = 2;
numCBPSS = numCBPS/numSS;

Создайте входную последовательность битов.

bits = randi([0 1],numCBPSS*numSym,numSS,'int8');

Выполните парсинг сегмента на битах.

parsedBits = wlanSegmentParseBits(bits,chanBW,numES,numCBPS,numBPSCS);

Проанализированная последовательность является 3D массивом битов.

size(parsedBits)
ans = 1×3

   936     3     2

parsedBits(1:5,:,:)
ans = 5x3x2 int8 array
ans(:,:,1) =

   1   0   1
   0   1   1
   1   0   1
   0   0   0
   1   0   1


ans(:,:,2) =

   1   1   1
   1   1   1
   0   0   1
   1   1   0
   1   0   0

Получите битный порядок после парсинга сегмента символа OFDM настройки S1G с полосой пропускания канала 16 МГц и двумя пространственными потоками.

Задайте входные параметры. Установите полосу пропускания канала на 16 МГц, количество закодированных битов на символ OFDM к 1 872, количество пространственных потоков к 2, количество закодированных потоков к 1, количество закодированных битов на поднесущую на пространственный поток к 2 и количество символов OFDM к 2. Вычислите количество закодированных битов на символ OFDM на пространственный поток путем деления количества закодированных битов на символ OFDM количеством пространственных потоков.

chanBW = 'CBW16';
numCBPS = 1872;
numSS = 2;
numES = 1;
numBPSCS = 2;
numSym = 1;
numCBPSS = numCBPS/numSS;

Создайте входную последовательность.

sequence = (1:numCBPS*numSym).';
inp = reshape(sequence,numCBPSS*numSym,numSS);

Выполните парсинг сегмента на последовательности.

parsedSequence = wlanSegmentParseBits(inp,chanBW,numES,numCBPS,numBPSCS);

Проанализированная последовательность является 3D массивом, содержащим соответствующий битный порядок.

size(parsedSequence)
ans = 1×3

   468     2     2

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

свернуть все

Введите последовательность проанализированных потоком битов в виде (N CBPSS×NSYM)-by-NSS матрица, где:

  • N CBPSS является количеством закодированных битов на символ OFDM на пространственный поток.

  • N SYM является количеством символов OFDM.

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

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

Полоса пропускания канала в МГц в виде 'CBW1', 'CBW2', 'CBW4', 'CBW8', 'CBW16', 'CBW20', 'CBW40', 'CBW80', или 'CBW160'.

Пример: 'CBW160'

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

Количество закодированных потоков в виде целого числа от 1 до 9, или 12.

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

Количество закодированных битов на символ OFDM в виде положительного целого числа. Когда cbw 'CBW16' или 'CBW160', numCBPS должно быть целое число, равное 468×NBPSCS×NSS, где:

  • N BPSCS является количеством закодированных битов на поднесущую на пространственный поток.

  • N SS является количеством пространственных потоков. Это составляет количество столбцов (второе измерение) входа bits.

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

Количество закодированных битов на поднесущую на пространственный поток в виде log2 (M), где M является порядком модуляции. Поэтому numBPSCS должен равняться:

  • 1 для модуляции BPSK

  • 2 для модуляции QPSK

  • 4 для 16QAM модуляция

  • 6 для 64QAM модуляция

  • 8 для 256QAM модуляция

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

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

свернуть все

Проанализированные сегментом биты в виде (N CBPSSI×NSYM)-by-NSS-by-NSEG массив, где:

  • N CBPSSI является количеством закодированных битов на символ OFDM на пространственный поток на блок interleaver.

  • N SYM является количеством символов OFDM.

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

  • N SEG является количеством сегментов. Когда cbw 'CBW16' или 'CBW160', N SEG равняется 2. В противном случае это 1.

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

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

Смотрите также

Введенный в R2017b