wlanHEMUUser
Configure users for HE MU transmission
Description
The wlanHEMUUser object contains properties of a user within a
WLAN high-efficiency (HE) resource unit (RU). When you create a wlanHEMUConfig
object, the value to which you set its AllocationIndex property
determines its User property. The User property is
returned as a cell array of wlanHEMUUser objects.
Creation
Description
creates an HE user configuration object for cfgHEMU.User = wlanHEMUUser(RUNumber)RUNumber, the input RU
number.
sets properties using one or more name-value pairs. Enclose each property name in
quotation marks.cfgHEMU.User = wlanHEMUUser(RUNumber,Name,Value)
Properties
Aggregated MPDU (A-MPDU) pre-end-of-frame (pre-EOF) padding (APEP) length, in bytes, specified as an integer in the interval [1, 6451631].
The object uses this property to determine the number of OFDM symbols in the data field. For more information, see [1].
Data Types: double
Modulation and coding scheme (MCS) used for transmission, specified as a nonnegative
integer in the interval [0, 11]. 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) |
| 1/2 |
| 1 | Quadrature phase-shift keying (QPSK) |
| 1/2 |
| 2 | Not applicable | 3/4 | |
| 3 | 16-point quadrature amplitude modulation (16-QAM) |
| 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 |
Data Types: double
Number of space-time streams in the transmission, specified as an integer in the interval [1, 8]. The maximum number of space-time streams for any user within a MU-MIMO RU is 4. The maximum value of the sum of the number of space-time streams over all users in an RU is 8. For information on these and other restrictions on the number of space-time streams, see Tables 18-1 and 27-30 of [1].
Data Types: double
Dual carrier modulation (DCM) indicator, specified as a logical value of
1 (true) or 0
(false). To indicate that DCM is used for the HE-Data field, set
this property to 1 (true).
Dependencies
You can only set this property to 1 (true)
when all of these conditions are satisfied:
The
MCSproperty is0,1,3, or4.The
STBCproperty of the associatedwlanHEMUConfigobject is0(false).The
NumSpaceTimeStreamsproperty is less than or equal to 2.The
RUproperty of the associatedwlanHEMUConfigobject defines a single-user RU.
Data Types: logical
Forward-error-correction (FEC) coding type for the HE-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
MCSproperty is not10or11.The size of any RU is less than or equal to 242. Obtain the RU sizes by using the
ruInfoobject function with the associatedwlanHEMUConfigobject.The
NumSpaceTimeStreamsproperty is less than or equal to 4.
Data Types: char | string
Station (STA) identifier, specified as an integer in the interval [0, 2047]. The
value of this property specifies the station association identifier (AID) field as
defined in section 26.11.1 of [1]. The 11 least
significant bits (LSBs) of the AID field are used to address the STA. When you set this
property to 2046, the associated RU carries no data.
Data Types: double
RU number, specified as an integer or a vector of integers. This property indexes
the appropriate cell array elements of the RU property
within the associated wlanHEMUConfig
object.
Note
This property is read-only after the object is created.
Data Types: double
Nominal packet padding, in microseconds, specified as 0,
8, or 16. The associated wlanHEMUConfig
object uses this property and the pre-forward-error-correction (pre-FEC) padding factor
to calculate the duration, TPE, of the packet
extension field. For more information about the packet extension field, see section
27.3.13 of [1].
This table shows the possible values of TPE for different values of this property and a, a parameter defined by equation (27-83) or (27-84) of [1].
| Value of a | Value of TPE in Microseconds | ||
|---|---|---|---|
NominalPacketPadding Set to
0 | NominalPacketPadding Set to
8 | NominalPacketPadding Set to
16 | |
1 | 0 | 0 | 4 |
2 | 0 | 0 | 8 |
3 | 0 | 4 | 12 |
4 | 0 | 8 | 16 |
Data Types: double
Post-FEC padding bit source used by the wlanWaveformGenerator function, specified as one of these values.
'mt19937ar with seed'— Generate normally distributed random bits by using the mt19937ar algorithm with seed specified in thePostFECPaddingSeedproperty.'Global stream'— Generate normally distributed random bits by using the current global random number stream.'User-defined'— Use the bits specified in thePostFECPaddingBitsproperty as the post-FEC padding bits.
Data Types: char | string
Post-FEC padding bit seed for the mt19937ar algorithm, specified as a nonnegative
integer. If this object is an element of the User property of the
wlanHEMUConfig
object, the default value of this property the user number, i.e.,
the default value of User{k}.PostFECPaddingSeed is
k for all integers k in the interval [1,
Nusers].
Nusers is the number of users in the
transmission.
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 getNumPostFECPaddingBits 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
Examples
Create a 20 MHz multiuser HE configuration object with the allocation index set to 0. An allocation index of 0 specifies nine 26-tone RUs in a 20 MHz channel.
cfgMU = wlanHEMUConfig(0); for i=1:numel(cfgMU.User) % Set the APEPLength of each user cfgMU.User{i}.APEPLength = 100; end
Display the configuration object properties for the fourth user.
cfgMU.User{4}ans =
wlanHEMUUser with properties:
APEPLength: 100
MCS: 0
NumSpaceTimeStreams: 1
DCM: 0
ChannelCoding: 'LDPC'
STAID: 0
NominalPacketPadding: 0
PostFECPaddingSource: 'mt19937ar with seed'
PostFECPaddingSeed: 4
Read-only properties:
RUNumber: 4
Create an HE MU configuration object for a 40 MHz transmission with an allocation index of 11000000 for each 20 MHz subchannel. This configuration specifies two 242-tone RUs, each with one user.
cfgHEMU = wlanHEMUConfig(["11000000" "11000000"],'NumTransmitAntennas',2);
Configure the first RU and the first user.
cfgHEMU.RU{1}.SpatialMapping = 'Direct';
cfgHEMU.User{1}.APEPLength = 1e3;
cfgHEMU.User{1}.MCS = 2;
cfgHEMU.User{1}.NumSpaceTimeStreams = 2;
cfgHEMU.User{1}.ChannelCoding = 'LDPC';
cfgHEMU.User{1}.NominalPacketPadding = 16;Configure the second RU and the second user.
cfgHEMU.RU{2}.SpatialMapping = 'Fourier';
cfgHEMU.User{2}.APEPLength = 500;
cfgHEMU.User{2}.MCS = 3;
cfgHEMU.User{2}.NumSpaceTimeStreams = 1;
cfgHEMU.User{2}.ChannelCoding = 'LDPC';
cfgHEMU.User{2}.NominalPacketPadding = 8;Display the configuration object properties for both RUs and both users.
disp(cfgHEMU)
wlanHEMUConfig with properties:
RU: {[1×1 wlanHEMURU] [1×1 wlanHEMURU]}
User: {[1×1 wlanHEMUUser] [1×1 wlanHEMUUser]}
NumTransmitAntennas: 2
STBC: 0
GuardInterval: 3.2000
HELTFType: 4
SIGBMCS: 0
SIGBDCM: 0
UplinkIndication: 0
BSSColor: 0
SpatialReuse: 0
TXOPDuration: 127
HighDoppler: 0
Read-only properties:
ChannelBandwidth: 'CBW40'
AllocationIndex: [192 192]
cfgHEMU.RU{1:2}ans =
wlanHEMURU with properties:
PowerBoostFactor: 1
SpatialMapping: 'Direct'
Read-only properties:
Size: 242
Index: 1
UserNumbers: 1
ans =
wlanHEMURU with properties:
PowerBoostFactor: 1
SpatialMapping: 'Fourier'
Read-only properties:
Size: 242
Index: 2
UserNumbers: 2
cfgHEMU.User{1:2}ans =
wlanHEMUUser with properties:
APEPLength: 1000
MCS: 2
NumSpaceTimeStreams: 2
DCM: 0
ChannelCoding: 'LDPC'
STAID: 0
NominalPacketPadding: 16
PostFECPaddingSource: 'mt19937ar with seed'
PostFECPaddingSeed: 1
Read-only properties:
RUNumber: 1
ans =
wlanHEMUUser with properties:
APEPLength: 500
MCS: 3
NumSpaceTimeStreams: 1
DCM: 0
ChannelCoding: 'LDPC'
STAID: 0
NominalPacketPadding: 8
PostFECPaddingSource: 'mt19937ar with seed'
PostFECPaddingSeed: 2
Read-only properties:
RUNumber: 2
References
[1] IEEE® Std 802.11ax™-2021 (Amendment to IEEE Std 802.11™-2020). “Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications. Amendment 1: Enhancements for High Efficiency WLAN.” IEEE Standard for Information Technology — Telecommunications and Information Exchange between Systems. Local and Metropolitan Area Networks — Specific Requirements.
Extended Capabilities
You must specify the data type of the postFECPaddingBits property
as int8.
Version History
Introduced in R2018b
See Also
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.
Seleziona un sito web
Seleziona un sito web per visualizzare contenuto tradotto dove disponibile e vedere eventi e offerte locali. In base alla tua area geografica, ti consigliamo di selezionare: .
Puoi anche selezionare un sito web dal seguente elenco:
Come ottenere le migliori prestazioni del sito
Per ottenere le migliori prestazioni del sito, seleziona il sito cinese (in cinese o in inglese). I siti MathWorks per gli altri paesi non sono ottimizzati per essere visitati dalla tua area geografica.
Americhe
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- 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)