Main Content

wlanSegmentParseSymbols

Segment-parse data subcarriers

Description

y = wlanSegmentParseSymbols(sym,cbw) performs the inverse operation of the segment deparsing on the input sym defined in IEEE® 802.11™-2020, Section 21.3.10.9.3, when cbw is 'CBW16' or 'CBW160'.

Note

Segment parsing of the data subcarriers applies only when the channel bandwidth is either 16 MHz or 160 MHz, and is bypassed for the remaining channel bandwidths (as stated in the aforementioned section of IEEE 802.11-2020). Therefore, when cbw is any accepted value other than 'CBW16' or 'CBW160', wlanSegmentParseSymbols returns the input unchanged.

example

Examples

collapse all

Segment-deparse and segment-parse the symbols in four OFDM symbols for a VHT configuration with a channel bandwidth of 160 MHz and two spatial streams.

Define the input parameters. Since the channel bandwidth is 160 MHz, set the number of data subcarriers to 468 and the number of frequency segments to two.

chanBW = 'CBW160';
numSD = 468;
numSym = 4;
numSS = 2;
numSeg = 2;

Create the input sequence of symbols.

data = randi([0 1],numSD/numSeg,numSym,numSS,numSeg);

Segment-deparse the symbols into data subcarriers. The first dimension of the parsed output accounts for the total number of data subcarriers.

deparsedData = wlanSegmentDeparseSymbols(data,chanBW);
size(deparsedData)
ans = 1×3

   468     4     2

Segment-parse the symbols into data subcarriers. The size of the output is equal to the size of the original sequence.

segments = wlanSegmentParseSymbols(deparsedData,chanBW);
size(segments)
ans = 1×4

   234     4     2     2

Input Arguments

collapse all

Input sequence of equalized data to be segmented, specified as an NSD-by-NSYM-by-NSS array, where:

  • NSD is the number of data subcarriers.

  • NSYM is the number of OFDM symbols.

  • NSS is the number of spatial streams.

Data Types: double | single
Complex Number Support: Yes

Channel bandwidth in MHz, specified as 'CBW1','CBW2', 'CBW4','CBW8', 'CBW16', 'CBW20', 'CBW40', 'CBW80', or 'CBW160'.

Example: 'CBW160'

Data Types: char | string

Output Arguments

collapse all

Frequency segments, specified as an (NSD/NSEG)-by-NSYMby-NSS-by-NSEG array, where:

  • NSD is the number of data subcarriers.

  • NSEG is the number of segments. When cbw is 'CBW16' or 'CBW160', NSEG is 2. Otherwise it is 1.

  • NSYM is the number of OFDM symbols.

  • NSS is the number of spatial streams.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

Version History

Introduced in R2017b

expand all