Contenido principal

wlanVHTSIGBRecover

(To be removed) Recover VHT-SIG-B information bits

wlanVHTSIGBRecover will be removed in a future release. Use wlanVHTDemodulate, wlanVHTTrackPilotError, wlanVHTEqualize, and wlanVHTSIGBBitRecover instead. For more information on updating your code, see Version History. (since R2026a)

Description

recBits = wlanVHTSIGBRecover(rxSig,chEst,noiseVarEst,cbw) VHT-SIG-B field for a single-user transmission. Inputs include the received VHT-SIG-B field, the channel estimate, the noise variance estimate, and the channel bandwidth.

example

recBits = wlanVHTSIGBRecover(rxSig,chEst,noiseVarEst,cbw,userNumber,numSTS) returns the recovered information bits of a multiuser transmission for the user of interest, userNumber, and the number of space-time streams, numSTS.

[recBits,eqSym] = wlanVHTSIGBRecover(___) returns the equalized symbols, eqSym, using the arguments from previous syntaxes.

[recBits,eqSym,cpe] = wlanVHTSIGBRecover(___) returns the common phase error, cpe.

recBits = wlanVHTSIGBRecover(___,Name=Value) specifies algorithm parameters by using one or more name-value arguments in addition to any combination of input or output arguments from the previous syntaxes.

Examples

collapse all

Recover VHT-SIG-B bits in a perfect channel having 80 MHz channel bandwidth, one space-time stream, and one receive antenna.

Create a wlanVHTConfig object having a channel bandwidth of 80 MHz. Using the object, create a VHT-SIG-B waveform.

cfg = wlanVHTConfig('ChannelBandwidth','CBW80');
[txSig,txBits] = wlanVHTSIGB(cfg);

For a channel bandwidth of 80 MHz, there are 242 occupied subcarriers. The channel estimate array dimensions for this example must be [Nst,Nsts,Nr] = [242,1,1]. The example assumes a perfect channel and one receive antenna. Therefore, specify the channel estimate as a column vector of ones and the noise variance estimate as zero.

chEst = ones(242,1);
noiseVarEst = 0;

Recover the VHT-SIG-B. Verify that the received information bits are identical to the transmitted bits.

rxBits = wlanVHTSIGBRecover(txSig,chEst,noiseVarEst,'CBW80');
isequal(txBits,rxBits)
ans = logical
   1

Input Arguments

collapse all

Received VHT-SIG-B field, specified as an NS-by-NR matrix. NS is the number of samples and increases with channel bandwidth.

Channel BandwidthNS
'CBW20'80
'CBW40'160
'CBW80'320
'CBW160'640

NR is the number of receive antennas.

Data Types: double | single
Complex Number Support: Yes

Channel estimate, specified as an NST-by-NSTS-by-NR array. NST is the number of occupied subcarriers. NSTS is the number of space-time streams. For multiuser transmissions, NSTS is the total number of space-time streams for all users. NR is the number of receive antennas.

NST increases with channel bandwidth.

ChannelBandwidthNumber of Occupied Subcarriers (NST)Number of Data Subcarriers (NSD)Number of Pilot Subcarriers (NSP)
'CBW20'56524
'CBW40'1141086
'CBW80'2422348
'CBW160'48446816

The channel estimate is based on the VHT-LTF.

Data Types: double | single

Noise variance estimate, specified as a nonnegative scalar.

Data Types: double | single

Channel bandwidth, specified as 'CBW20', 'CBW40', 'CBW80', or 'CBW160'.

Data Types: char | string

Number of the user in a multiuser transmission, specified as an integer having a value from 1 to NUsers. NUsers is the total number of users.

Number of space-time streams in a multiuser transmission, specified as a vector. The number of space-time streams is a 1-by-NUsers vector of integers from 1 to 4, where NUsers is an integer from 1 to 4.

Example: [1 3 2] is the number of space-time streams for each user.

Note

The sum of the space-time stream vector elements must not exceed eight.

Name-Value Arguments

collapse all

Specify optional pairs of arguments as Name1=Value1,...,NameN=ValueN, where Name is the argument name and Value is the corresponding value. Name-value arguments must appear after other arguments, but the order of the pairs does not matter.

Example: PilotPhaseTracking='None' disables pilot phase tracking.

OFDM symbol sampling offset represented as a fraction of the cyclic prefix (CP) length, specified as the name-value pair consisting of 'OFDMSymbolOffset' and a scalar in the interval [0, 1]. The value you specify indicates the start location for OFDM demodulation relative to the beginning of the CP. The value 0 represents the start of the CP, and the value 1 represents the end of the CP.

Data Types: double

Equalization method, specified as one of these values.

  • 'MMSE' — The receiver uses a minimum mean-square error equalizer.

  • 'ZF' — The receiver uses a zero-forcing equalizer.

When the received signal has multiple receive antennas, the function exploits receiver diversity during equalization. When the number of transmitted space-time streams is one and you specify this argument as 'ZF', the function performs maximal-ratio combining.

Data Types: char | string

Pilot phase tracking, specified as one of these values.

  • 'PreEQ' — Enable pilot phase tracking, which the function performs before any equalization operation.

  • 'None' — Disable pilot phase tracking.

Data Types: char | string

Output Arguments

collapse all

Recovered VHT-SIG-B information bits, returned as an Nb-by-1 column vector. Nb is the number of recovered VHT-SIG-B information bits and increases with the channel bandwidth. The output is for a single user as determined by userNumber.

The number of output bits is proportional to the channel bandwidth.

ChannelBandwidthNb
'CBW20'26
'CBW40'27
'CBW80'29
'CBW160'29

See VHT-SIG-B for information about the meaning of each bit in the field.

Equalized symbols, returned as an NSD-by-1 column vector. NSD is the number of data subcarriers.

NSD increases with the channel bandwidth.

ChannelBandwidthNSD
'CBW20'52
'CBW40'108
'CBW80'234
'CBW160'468

Common phase error in radians, returned as a scalar.

More About

collapse all

Algorithms

collapse all

References

[1] IEEE Std 802.11ac™-2013 IEEE Standard for Information technology — Telecommunications and information exchange between systems — Local and metropolitan area networks — Specific requirements — Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications — Amendment 4: Enhancements for Very High Throughput for Operation in Bands below 6 GHz.

[2] Perahia, E., and R. Stacey. Next Generation Wireless LANs: 802.11n and 802.11ac. 2nd Edition, United Kingdom: Cambridge University Press, 2013.

Extended Capabilities

expand all

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

Version History

Introduced in R2015b

expand all


1 IEEE Std 802.11-2020 Adapted and reprinted with permission from IEEE. Copyright IEEE 2020. All rights reserved.

2 IEEE Std 802.11-2020 Adapted and reprinted with permission from IEEE. Copyright IEEE 2020. All rights reserved.

3 © IEEE 2021. All rights reserved.