wlanEHTTBConfig
Description
The wlanEHTTBConfig
object is a configuration object for the WLAN
extremely high-throughput trigger-based (EHT TB) packet format.
Creation
Description
creates a configuration object that initializes parameters for an IEEE®
802.11™ EHT TB PPDU. For a detailed description of the EHT WLAN formats, see
IEEE P802.11be™/D5.0 [1]. cfgEHTTB
= wlanEHTTBConfig
sets properties using
one or more name-value arguments. cfgEHTTB
= wlanEHTTBConfig(Name=Value
)
Properties
Channel bandwidth of PPDU transmission, specified as one of these values.
"CBW20"
— Channel bandwidth of 20 MHz"CBW40"
— Channel bandwidth of 40 MHz"CBW80"
— Channel bandwidth of 80 MHz"CBW160"
— Channel bandwidth of 160 MHz"CBW320"
— Channel bandwidth of 320 MHz
Data Types: char
| string
Resource unit size, specified as a positive integer or a row vector of positive
integers. If the resource unit (RU) is a multiple resource unit (MRU),
RUSize
is a vector with entries given by the sizes of the RUs
that compose the MRU. Otherwise, RUSize
is a scalar. The possible
RU sizes are 26
, 52
, 106
,
242
, 484
, 996
,
1992
, and 3984
.
If the RU is an MRU, each element of the row vector must be equal to one of
26
, 52
, 106
,
242
, 484
, or 996
.
Data Types: double
Resource unit index, specified as an integer in the range [1, 148] or a row vector
of such integers. If the RU is an MRU, RUIndex
is a vector with
entries given by the indices of the RUs that compose the MRU. Otherwise,
RUIndex
is a scalar. Use this property to indicate the location
of the RU within the channel.
Example: An 80 MHz transmission has four possible 242-tone RUs, one in each 20 MHz
subchannel. RU 242-1 (RUSize
= 242, RUIndex
= 1)
is the RU occupying the lowest absolute frequency within the 80MHz, and RU 242-4
(RUSize
= 242, RUIndex
= 4) is the RU occupying
the highest absolute frequency.
Data Types: double
Power scaling factor for pre-EHT fields, specified as a real scalar in the range [1/√2, 1].
Data Types: double
Number of transmit antennas, specified as a positive integer.
Data Types: double
Cyclic shift values, in nanoseconds, of additional transmit antennas for the pre-EHT
fields of the waveform. The first eight antennas use the cyclic shift values specified
in Table 21-10 of IEEE Std 802.11-2020 [2]. The remaining
L antennas use the values that you specify in this property, where L = NumTransmitAntennas
–
8. Specify this property as one of these values:
An integer in the range [−200, 0] — The
wlanEHTTBConfig
object uses this cyclic shift value for each of the L additional antennas.A row vector of length L of integers in the range [−200, 0] — The
wlanEHTTBConfig
object uses the kth element as the cyclic shift value for the (k + 8)th transmit antenna.Note
If you specify this property as a row vector of length greater than L, the
wlanEHTTBConfig
object uses only the first L elements. For example, if you set theNumTransmitAntennas
property to16
, thewlanEHTTBConfig
object uses only the first L = 16 – 8 = 8 elements of this vector.
Dependencies
To enable this property, set the NumTransmitAntennas property to a value greater than
8
.
Data Types: double
Number of space-time streams in the transmission, specified as an integer in the interval [1, 8].
Data Types: double
Starting space-time stream index, in one-based form, specified as an integer in the interval [1, 8]. In a multi-user multiple-input multiple-output (MU-MIMO) configuration with multiple users on the same RU, each user must transmit on a distinct space-time stream. In this case, you must set this property and the NumSpaceTimeStreams property to ensure that each space-time stream transmits at most one user.
Data Types: double
Spatial mapping scheme, specified as "direct"
,
"hadamard"
, "fourier"
, or
"custom"
.
The default value, "direct"
, applies only when NumTransmitAntennas is equal to NumSpaceTimeStreams.
Data Types: char
| string
| enumeration
Spatial mapping matrix, specified as one of these values:
A complex-valued scalar. This value applies to all the subcarriers.
A complex-valued matrix of size NSTSTotal -by-NT, where:
NSTSTotal is the sum of the number of the space-time streams for all users assigned to the RU.
NT is the number of transmit antennas.
In this case, the spatial mapping matrix applies to all the subcarriers.
A complex-valued 3-D array of size NST-by-NSTSTotal-by-NT, where NST is the number of occupied carriers and is determined by the RUSize property. In this case, each occupied subcarrier has its own spatial mapping matrix.
Use this property to rotate and scale the output vector of the constellation mapper. The spatial mapping matrix is used for beamforming and mixing space-time streams over the transmit antennas. The calling function normalizes the spatial mapping matrix for each subcarrier.
Example: [0.6 0.2; 0.5 0.4; 0.5 0.9]
represents a spatial mapping
matrix with three space-time streams and two transmit antennas.
Dependencies
This property applies only when you set the SpatialMapping property to "custom"
.
Data Types: double
Complex Number Support: Yes
Phase rotation values for the pre-EHT portion of the waveform, specified as a row vector of length 16 with entries equal to 1 or −1. This property applies only when the channel bandwidth is 320 MHz. The 16 entries of this property correspond to 20 MHz subchannels in ascending order of frequency, as defined in Equation 36-13 of IEEE P802.11be/D2.0 [1].
Data Types: double
Modulation and coding scheme (MCS) for transmission, specified as a nonnegative
integer in the range [0, 13], or 15. This table shows the modulation type and coding
rate for each valid value of MCS
:
MCS | Modulation | Dual Carrier Modulation | Coding Rate |
---|---|---|---|
0 | Binary phase-shift keying (BPSK) | Not applicable | 1/2 |
1 | Quadrature phase-shift keying (QPSK) | Not applicable | 1/2 |
2 | Not applicable | 3/4 | |
3 | 16-point quadrature amplitude modulation (16-QAM) | Not applicable | 1/2 |
4 | 3/4 | ||
5 | 64-QAM | Not applicable | 2/3 |
6 | 3/4 | ||
7 | 5/6 | ||
8 | 256-QAM | 3/4 | |
9 | 5/6 | ||
10 | 1024-QAM | 3/4 | |
11 | 5/6 | ||
12 | 4096-QAM | 3/4 | |
13 | 5/6 | ||
15 | BPSK-DCM |
| 1/2 |
Data Types: double
Forward-error-correction (FEC) coding type for the EHT-Data field, specified as
"ldpc"
for low-density parity-check (LDPC) coding or
"bcc"
for binary convolutional coding (BCC).
Dependencies
You can set this property to "bcc"
only when all of these
conditions are satisfied:
The
MCS
property is in the range [0, 9], or equal to 15.The size of any RU is less than or equal to 242. Obtain the RU sizes by using the
ruInfo
object function.The NumSpaceTimeStreams property is less than or equal to 4.
Data Types: char
| string
| enumeration
Pre-FEC padding factor, specified as 1
, 2
,
3
, or 4
.
Data Types: single
| double
Extra OFDM symbol segment indicator, specified as 1
(true
) or 0
(false
). To
indicate the presence of an extra OFDM symbol segment for LDPC coding, set this property
to 1
(true
). Otherwise, set this property to
0
(false
).
Dependencies
To enable this property, set the ChannelCoding property to "ldpc"
.
Data Types: logical
PE-Disambiguity subfield value, specified as 1
(true
) or 0
(false
). For more
information, see Section 27.3.12 of IEEE Std 802.11-2020 [2].
Data Types: logical
Length of L-SIG field, in OFDM symbols, specified as an integer in the range [1,
4093]. The L-SIG length must satisfy mod(LSIGLength,3)
=
1
, where mod(a,m)
returns the remainder after
dividing a
by m
. For more information, see
mod
.
Data Types: double
Guard interval (cyclic prefix) duration for the data field within a packet, in
microseconds, specified as 3.2
or 1.6
.
Data Types: double
EHT-LTF compression mode, specified as 1
, 2
,
or 4
. These values correspond to the 1× EHT-LTF, 2× EHT-LTF, and 4×
EHT-LTF compression modes. The EHT-LTF type is enumerated in Table 36-18 of IEEE
P802.11be/D2.0 [1] as:
1× EHT-LTF — Duration of 3.2 μs with a guard range duration of 1.6 μs
2× EHT-LTF — Duration of 6.4 μs with a guard range duration of 0.8 μs or 1.6 μs
4× EHT-LTF — Duration of 12.8 μs with a guard range duration of 0.8 μs or 3.2 μs
For more information on the EHT-LTF, see Section 36.3.12.10 of IEEE P802.11be/D2.0 [1].
Data Types: double
Number of EHT-LTF symbols in the PPDU, specified as 1
,
2
, 4
, 6
, or
8
.
Data Types: double
Basic service set (BSS) color identifier, specified as an integer in the interval [0, 63].
Data Types: double
Value of Spatial Reuse 1 subfield in the U-SIG field, specified as an integer in the range [0, 15]. For more information, see Table 36-31 of IEEE P802.11be/D2.0 [1].
Data Types: double
Value of Spatial Reuse 2 subfield in the U-SIG field, specified as an integer in the range [0, 15]. For more information, see Table 36-31 of IEEE P802.11be/D2.0 [1].
Data Types: double
Duration information for transmit opportunity (TXOP) protection in microseconds, specified as an integer in the interval [0, 8448]. This table describes the correspondence between the value you set for this property and the value of the seven-bit TXOP subfield in the U-SIG field.
TXOPDuration Property | TXOP Subfield |
---|---|
[] | 127 |
Integer less than 512 | |
Integer greater than or equal to 512 |
Data Types: double
Channelization for a 320 MHz channel bandwidth, specified as 1
or
2
. A 320 MHz channel has three possible locations for the channel
center frequencies. In accordance with Section 36.3.23.2 of IEEE P802.11be/D2.0 [1], when you
specify 1
, these locations are numbers 31, 95, and 159. When you
specify 2
, the locations are numbers 63, 127 and 191.
Dependencies
This property applies only when you specify the ChannelBandwidth
property as "CBW320"
.
Data Types: double
Disregard bits in the first U-SIG symbol, specified as a binary column vector of
length 6. The default is a column vector of length 6 with all entries equal to
1
.
Data Types: double
| int8
Validate bit in the second U-SIG symbol, specified as 1
or
0
.
Data Types: double
| int8
Disregard bits in the second U-SIG symbol, specified as a binary column vector of length 5.
Data Types: double
| int8
Post-FEC padding bit source used by the wlanWaveformGenerator
function, specified as one of these values:
"mt19937arwithseed"
— Generate normally distributed random bits by using the mt19937ar algorithm with seed specified in the PostFECPaddingSeed property."globalstream"
— Generate normally distributed random bits by using the current global random number stream."userdefined"
— Use the bits specified in the PostFECPaddingBits property as the post-FEC padding bits.
Data Types: char
| string
| enumeration
Post-FEC padding bit seed for the mt19937ar algorithm, specified as a nonnegative integer.
Dependencies
To enable this property, set the PostFECPaddingSource
property to "mt19937ar with seed"
.
Data Types: double
Post-FEC padding bits, specified as a binary-valued scalar or column vector.
To generate a waveform, the wlanWaveformGenerator
function requires n bits, where
n depends on the specified configuration. To calculate
n, use the numPostFECPaddingBits
object function with the specified configuration
object as the input argument and specify this property as a vector of length
n. Alternatively, specify this input as a binary-valued scalar or
column vector of arbitrary length. If the length of this property is less than
n, the waveform generator loops the vector to create a vector of
length n. If the length of this property is greater than
n, the function uses only the first n entries as
the post-FEC padding bits.
Note
For C/C++ code generation, you must specify the data type of this property as
int8
.
Data Types: single
| double
| int8
Object Functions
psduLength | EHT PSDU length |
packetFormat | WLAN packet format |
ruInfo | Resource unit allocation information |
showAllocation | Resource unit allocation |
transmitTime | Packet transmission time |
compressionMode | Compression mode of EHT TB configuration |
numPostFECPaddingBits | Required number of post-FEC padding bits |
Examples
Create a configuration object for a WLAN EHT TB transmission.
cfgEHTTB = wlanEHTTBConfig;
Get the PSDU length, in bytes, from the configuration object by using the psduLength
object function.
length = psduLength(cfgEHTTB);
Generate a PSDU of the relevant length, converting bytes to bits by multiplying by eight.
psdu = randi([0 1],8*length,1);
Generate a time-domain waveform for the bits and configuration, specifying an oversampling factor of 3
. Plot the waveform.
waveform = wlanWaveformGenerator(psdu,cfgEHTTB,OversamplingFactor=3); plot(abs(waveform)); title("EHT TB Waveform"); xlabel("Time (Nanoseconds)"); ylabel("Amplitude");
Create a configuration object for an EHT TB transmission, setting the channel bandwidth to 320 MHz and specifying that the configuration has an MRU of size 3*996.
cfgEHTTB = wlanEHTTBConfig(ChannelBandwidth="CBW320",RUSize=[996 996 996],RUIndex=[1 2 3]);
Use the compressionMode
object function to return the compression mode of the configuration.
compressionMode(cfgEHTTB)
ans = 0
References
[1] IEEE P802.11be/D5.0. “Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications. Amendment 8: Enhancements for Extremely High Throughput (EHT).” Draft Standard for Information Technology — Telecommunications and Information Exchange between Systems — Local and Metropolitan Area Networks — Specific Requirements, https://ieeexplore.ieee.org/document/10381585
[2] IEEE Std 802.11-2020 (Revision of 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.
Extended Capabilities
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
Version History
Introduced in R2023a
See Also
Objects
wlanDMGConfig
|wlanEHTMUConfig
|wlanHETBConfig
|wlanHTConfig
|wlanNonHTConfig
|wlanS1GConfig
|wlanVHTConfig
Functions
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: United States.
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)