This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.

wlanLSIGBitRecover

Recover information bits in L-SIG field

Syntax

[bits,failCheck,info] = wlanLSIGBitRecover(lsig,noiseVarEst)
[bits,failCheck,info] = wlanLSIGBitRecover(lsig,noiseVarEst,csi)

Description

example

[bits,failCheck,info] = wlanLSIGBitRecover(lsig,noiseVarEst) recovers information bits, bits, for legacy signal (L-SIG) field lsig and channel noise variance estimate noiseVarEst. The function also returns failCheck, the result of the parity check on bits and info, a structure containing modulation and coding scheme (MCS) value and physical layer convergence procedure service data unit (PSDU) length.

example

[bits,failCheck,info] = wlanLSIGBitRecover(lsig,noiseVarEst,csi) recovers the L-SIG information bits for channel state information csi.

Examples

collapse all

Recover the information bits in the L-SIG field of a WLAN HE single-user (HE-SU) waveform.

Create a WLAN HE-SU-format configuration object with default settings and use it to generate an HE-SU waveform.

cfgHE = wlanHESUConfig;
cbw = cfgHE.ChannelBandwidth;
waveform = wlanWaveformGenerator(1,cfgHE);

Obtain the WLAN field indices, which contain the modulated L-SIG and RL-SIG fields.

ind = wlanFieldIndices(cfgHE);
rxLSIG = waveform(ind.LSIG(1):ind.RLSIG(2),:);

Perform orthogonal frequency-division multiplexing (OFDM) demodulation to extract the L-SIG field.

lsigDemod = wlanHEDemodulate(rxLSIG,'L-SIG',cbw);

Average the L-SIG and RL-SIG symbols, return the pre-HE OFDM information, and extract the demodulated L-SIG symbols.

lsigDemodAverage = mean(lsigDemod,2);
preHEInfo = wlanHEOFDMInfo('L-SIG',cbw);
lsig = lsigDemodAverage(preHEInfo.DataIndices,:);

Recover the L-SIG information bits and other information, assuming no channel noise. Display the parity check result.

noiseVarEst = 0;
[bits,failCheck,info] = wlanLSIGBitRecover(lsig,noiseVarEst);
disp(failCheck);
   0

Recover the information bits in the L-SIG field of a WLAN HE multiuser (HE-MU) waveform with specified channel state information.

Create a WLAN HE-MU-format configuration object with an allocation index of 192 and use it to generate an HE-MU waveform.

cfgHE = wlanHEMUConfig(192);
cbw = cfgHE.ChannelBandwidth;
waveform = wlanWaveformGenerator(1,cfgHE);

Obtain the WLAN field indices, which contain the modulated L-SIG and RL-SIG fields.

ind = wlanFieldIndices(cfgHE);
rxLSIG = waveform(ind.LSIG(1):ind.RLSIG(2),:);

Perform OFDM demodulation to extract the L-SIG field.

lsigDemod = wlanHEDemodulate(rxLSIG,'L-SIG',cbw);

Average the L-SIG and RL-SIG symbols, return the pre-HE OFDM information, and extract the demodulated L-SIG symbols.

lsigDemodAverage = mean(lsigDemod,2);
preHEInfo = wlanHEOFDMInfo('L-SIG',cbw);
lsig = lsigDemodAverage(preHEInfo.DataIndices,:);

Specify the channel state information and assume no channel noise.

csi = ones(52,1);
noiseVarEst = 0;

Recover the L-SIG information bits and other information. Display the parity check result.

[bits,failCheck,info] = wlanLSIGBitRecover(lsig,noiseVarEst,csi);
disp(failCheck);
   0

Input Arguments

collapse all

Demodulated L-SIG symbols, specified as a complex-valued column vector. The size of lsig depends on the WLAN format. For a high-efficiency (HE) format, specify lsig as a 52-by-1 column vector. For a very-high-throughput (VHT), high-throughput (HT), or non-high-throughput (non-HT) format, specify lsig as a 48-by-1 column vector.

Data Types: double
Complex Number Support: Yes

Channel noise variance estimate, specified as a nonnegative scalar.

Data Types: double

Channel state information, specified as a real-valued column vector. The size of csi depends on the WLAN format. For a high-efficiency (HE) format, specify csi as a 52-by-1 column vector. For a very-high-throughput (VHT), high-throughput (HT), or non-high-throughput (non-HT) formats, specify csi as a 48-by-1 column vector.

To use the channel state information for enhanced demapping of the orthogonal frequency-division multiplexing (OFDM) symbols, specify csi.

Data Types: double

Output Arguments

collapse all

Information bits recovered from L-SIG field, returned as a 24-by-1 binary column.

Data Types: int8

Parity check result, returned as a logical value of 1 (true) or 0 (false). The wlanLSIGBitRecover function returns failCheck as 1 if the recovered bits fail the parity check.

Data Types: logical

MCS value and PSDU length, returned as a structure containing these fields.

MCS value, returned as an integer in the interval [0, 7]. Each value of MCS corresponds to a rate, as shown in this table.

MCSRate (Mb/s)
06
19
212
318
424
536
648
754

For more information, see Section 17.3.4 of [1].

Data Types: double

Length of PSDU, returned as a nonnegative integer. The value of length is the number of octets in the PSDU that the physical (PHY) layer attempts to send.

Data Types: double

Data Types: struct

References

[1] IEEE Std 802.11™– 2016. “Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications." IEEE Standard for Information Technology – Telecommunications and information exchange between systems – Local and metropolitan area networks – Specific requirements.

[2] IEEE P802.11ax™/D3.1 “Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications. Amendment 6: Enhancements for High Efficiency WLAN." Draft Standard for Information Technology – Telecommunications and information exchange between systems – Local and metropolitan area networks – Specific requirements.

Extended Capabilities

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

Introduced in R2019a