wlanS1GConfig
Configure S1G transmission
Description
The wlanS1GConfig
object is a sub-1-GHz-format (S1G-format)
configuration object for the WLAN S1G packet format.
Creation
Description
creates a
configuration object that initializes parameters for an IEEE®
802.11™ S1G-format PPDU.cfgS1G
= wlanS1GConfig
sets
properties using one or more name-value pair arguments. Enclose each property name in
quotation marks. For example,
cfgS1G
= wlanS1GConfig(Name,Value)wlanS1GConfig('ChannelBandwidth','CBW4','STBC',true)
specifies an S1G
format with a channel bandwidth of 4 MHz and space-time block coding enabled.
Properties
ChannelBandwidth
— Channel bandwidth of PPDU transmission
'CBW2'
(default) | 'CBW1'
| 'CBW4'
| 'CBW8'
| 'CBW16'
Channel bandwidth of PPDU transmission, specified as one of these values:
'CBW1'
– Channel bandwidth of 1 MHz'CBW2'
– Channel bandwidth of 2 MHz'CBW4'
– Channel bandwidth of 4 MHz'CBW8'
– Channel bandwidth of 8 MHz'CBW16'
– Channel bandwidth of 16 MHz
Data Types: char
| string
Preamble
— Preamble type
'Short'
(default) | 'Long'
Preamble type, specified as 'Short'
or
'Long'
.
Dependencies
This property applies only when you set the ChannelBandwidth
property to a value other than
'CBW1'
.
Data Types: char
| string
NumUsers
— Number of users
1
(default) | 2
| 3
| 4
Number of users, specified as 1
, 2
,
3
, or 4
.
Data Types: double
UserPositions
— User positions
[0 1]
(default) | vector of integers
User positions, specified as a 1-by-NumUsers
vector of integers in the interval [0, 3] in strictly increasing order.
Example: [0 2 3]
specifies the positions for three users. The
first user occupies position 0, the second user occupies position 2, and the third user
occupies position 3.
Dependencies
This property applies only when you specify the NumUsers
property as a value greater than 1
.
Data Types: double
NumTransmitAntennas
— Number of transmit antennas
1
(default) | 2
| 3
| 4
Number of transmit antennas, specified as 1
,
2
, 3
, or 4
.
Data Types: double
NumSpaceTimeStreams
— Number of space-time streams
1
(default) | integer in the interval [1, 4] | row vector of integers
Number of space-time streams in the transmission, specified as a 1-by-NumUsers
vector of integers in the interval [1, 4].
Data Types: double
SpatialMapping
— Spatial mapping scheme
'Direct'
(default) | 'Hadamard'
| 'Fourier'
| 'Custom'
Spatial mapping scheme, specified as 'Direct'
,
'Hadamard'
, 'Fourier'
, or
'Custom'
.
Dependencies
The default value, 'Direct'
, applies only when you set the
NumTransmitAntennas
and NumSpaceTimeStreams
properties to the same value.
Data Types: char
| string
SpatialMappingMatrix
— Spatial mapping matrix
1
(default) | complex-valued scalar | complex-valued matrix | complex-valued 3-D array
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 NSTS -by-NT, where:
NSTS is the number of space-time streams;
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-NSTS-by-NT, where NST is the number of occupied subcarriers. The value of NST is the sum of the occupied data and pilot subcarriers. The
ChannelBandwidth
property determines the value of NST. In this case, each occupied subcarrier has its own spatial mapping matrix.This table shows the
ChannelBandwidth
setting and the corresponding NST:ChannelBandwidth
Number of Occupied Subcarriers, NST Number of Data Subcarriers Number of Pilot Subcarriers 'CBW1'
26 24 2 'CBW2'
56 52 4 'CBW4'
114 108 6 'CBW8'
242 234 8 'CBW16'
484
468 16
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. For more information, see Section 20.3.11.11.2 of [1]. The calling function normalizes the spatial mapping matrix for each subcarrier.
Example: [0.5 0.3; 0.4 0.4; 0.5 0.8]
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
Beamforming
— Enable beamforming in a long-preamble packet
true
or 1
(default) | false
or 0
Enable beamforming in a long-preamble packet, specified as a numeric or logical
value of 1
(true
) or 0
(false
). To apply a beamforming steering matrix, set this property
to 1
(true
). The SpatialMappingMatrix
property specifies the beamforming steering
matrix.
Dependencies
This property applies only when all of these conditions are satisfied:
The
Preamble
property is set to'Long'
.The
NumUsers
property is set to1
.The
SpatialMapping
property is set to'Custom'
.
Data Types: logical
STBC
— Enable space-time block coding
false
or 0
(default) | true
or 1
Enable space-time block coding (STBC) of the PPDU data field for all users,
specified as a numeric or logical value of 1
(true
) or 0
(false
). STBC
transmits multiple copies of the data stream across assigned antennas.
When you set this property to
0
(false
), STBC is not applied to the data field. The number of space-time streams is equal to the number of spatial streams.When you set this property to
1
(true
), STBC is applied to the data field. The number of space-time streams is twice the number of spatial streams.
For more information, see Section 22.3.10.9.4 of [2].
Dependencies
This property applies only when the NumUsers
property is 1
.
Data Types: logical
MCS
— Modulation and coding scheme
0
(default) | integer in the interval [0, 10] | vector of integers
Modulation and coding scheme specified as one of these values:
an integer in the interval [0, 10], applicable when the
NumUsers
property is1
a 1-by-
NumUsers
vector of integers in the interval [0, 10].
This table shows the modulation type and coding rate for each valid value
of MCS
:
MCS | Modulation | Coding Rate |
---|---|---|
0 | Binary phase-shift keying (BPSK) | 1/2 |
1 | Quadrature phase-shift keying (QPSK) | 1/2 |
2 | QPSK | 3/4 |
3 | 16-point quadrature amplitude modulation (16-QAM) | 1/2 |
4 | 16-QAM | 3/4 |
5 | 64-QAM | 2/3 |
6 | 64-QAM | 3/4 |
7 | 64-QAM | 5/6 |
8 | 256-QAM | 3/4 |
9 | 256-QAM | 5/6 |
10 | BPSK | 1/2 |
Data Types: double
ChannelCoding
— FEC coding type
'BCC'
(default)
This property is read-only.
Forward error correction (FEC) coding type, specified as 'BCC'
.
The wlanS1GConfig
object supports only binary convolutional coding
(BCC).
Data Types: char
APEPLength
— APEP length
256
(default) | nonnegative integer | vector of nonnegative integers
Aggregated MPDU (A-MPDU) pre-end-of-frame (pre-EOF) padding (APEP) length, in bytes.
When the
NumUsers
property is1
, specify this property as a nonnegative integer in the interval [0, 216 – 1].When the
NumUsers
property is a value other than1
, specify this property as a 1-by-NumUsers
vector of integers in the interval [0, 216 – 1].For a null data packet (NDP), set this property to
0
.
The wlanS1GConfig
uses this property to determine the
number of OFDM symbols in the data field. For more information, see Table 22-1 of [2].
Note
This object supports only aggregated data transmission.
Data Types: double
PSDULength
— PSDU length
nonnegative integer
This property is read-only.
Physical layer convergence procedure (PLCP) service data unit (PSDU) length, in
bytes, specified as an integer. The wlanS1GConfig
object calculates this
property internally based on other properties.
Data Types: double
GuardInterval
— Guard interval (cyclic prefix) duration
'Long'
(default) | 'Short'
Guard interval (cyclic prefix) duration for the data field within a packet, specified as one of these values:
'Long'
– Guard interval duration of 800 ns'Short'
– Guard interval duration of 400 ns
Note
For S1G format, the first OFDM symbol within the data field always has a long
guard interval, even when you set this property to
'Short'
.
Data Types: char
| string
GroupID
— Group identification number
1
(default) | integer in the interval [1, 62]
Group identification number, specified as an integer in the interval [1, 62]. The group identification number is signaled during a multiuser transmission.
Dependencies
This property applies only when you set the Preamble
property to'Long'
and the NumUsers
property to a value greater than 1.
Data Types: double
PartialAID
— Abbreviated indication of PSDU recipients
37
(default) | integer in the interval [0, 511]
Abbreviated indication of the PSDU recipients, specified as an integer in the interval [0, 511].
When you set the
UplinkIndication
property to1
(true
), the partial identification number is the last nine bits of the basic service set identifier (BSSID). This property must be an integer in the interval [0, 511].When you set the
UplinkIndication
property to0
(false
), the partial identification number is an identifier that combines the association ID with the BSSID of its serving AP. This property must be an integer in the interval [0, 63].
For more information, see Table 22-1 of [2].
Data Types: double
UplinkIndication
— Uplink indication
false
or 0
(default) | true
or 1
Uplink indication, specified as a numeric or logical value of 1
(true
) or 0
(false
). To
indicate that the PPDU is sent on a downlink transmission, set this property to
0
(false
). To indicate that the PPDU is sent on
an uplink transmission, set this property to 1
(true
).
Dependencies
This property applies only when you set the ChannelBandwidth
property to a value other than
'CBW1'
and the NumUsers
property to 1
.
Data Types: logical
Color
— AP color identifier
0
(default) | integer in the interval [0, 7]
Access point (AP) color identifier, specified as an integer in the interval [0, 7]. An AP includes a color number for the basic service set (BSS). An S1G station (STA) can use the color setting to determine if the transmission is within a BSS with which it is associated. The STA can terminate the reception process for transmissions received from a BSS with which it is not associated.
Dependencies
This property applies only when these conditions are satisfied:
The
ChannelBandwidth
property is not'CBW1'
.The
NumUsers
property is1
.The
UplinkIndication
property is0
(false
).
Data Types: double
TravelingPilots
— Enable traveling pilots
false
or 0
(default) | true
or 1
Enable traveling pilots, specified as a numeric or logical value of
1
(true
) or 0
(false
). To specify non-constant pilot locations, set this property
to 1
(true
). Traveling pilots allow a receiver to
track a changing channel due to Doppler spread.
Data Types: logical
ResponseIndication
— Response indication type
'None'
(default) | 'NDP'
| 'Normal'
| 'Long'
Response indication type, specified as 'None'
,
'NDP'
, 'Normal'
, or 'Long'
.
This information is used to indicate the presence and type of frame that will be sent a
short interframe space (SIFS) after the current frame transmission. The value to which
you set this property sets the response indication field, which is transmitted in these fields:
The SIG2 field of the S1G_SHORT preamble
The SIG-A-2 field of the S1G_LONG preamble
The SIG field of the S1G_1M preamble
Data Types: char
| string
RecommendSmoothing
— Recommend smoothing for channel estimation
true
or 1
(default) | false
or 0
Recommend smoothing for channel estimation, specified as a numeric or logical value
of 1
(true
) or 0
(false
).
If the frequency profile does not vary across the channel, the receiver sets this property to
1
(true
). In this case, frequency-domain smoothing is recommended as part of channel estimation.If the frequency profile varies across the channel, the receiver sets this property to
0
(false
). In this case, frequency-domain smoothing is not recommended as part of channel estimation.
Data Types: logical
Object Functions
packetFormat | WLAN packet format |
transmitTime | Packet transmission time |
Examples
Create wlanS1GConfig Object for Single User
Create an S1G configuration object with default settings for a single user. Override the default by specifying a 4 MHz channel bandwidth and short preamble configuration.
cfgS1G = wlanS1GConfig; cfgS1G.ChannelBandwidth = 'CBW4'; cfgS1G.Preamble = 'Short'; cfgS1G
cfgS1G = wlanS1GConfig with properties: ChannelBandwidth: 'CBW4' Preamble: 'Short' NumUsers: 1 NumTransmitAntennas: 1 NumSpaceTimeStreams: 1 SpatialMapping: 'Direct' STBC: 0 MCS: 0 APEPLength: 256 GuardInterval: 'Long' PartialAID: 37 UplinkIndication: 0 Color: 0 TravelingPilots: 0 ResponseIndication: 'None' RecommendSmoothing: 1 Read-only properties: ChannelCoding: 'BCC' PSDULength: 261
Create wlanS1GConfig Object for Two Users
Create an S1G configuration object that assigns a 2 MHz bandwidth and two users. Use a combination of Name,Value pairs and in-line initialization to change default settings. In vector-valued properties, each element applies to a specific user.
cfgMU = wlanS1GConfig('ChannelBandwidth','CBW2', ... 'Preamble','Long', ... 'NumUsers',2, ... 'GroupID',2, ... 'NumTransmitAntennas', 2); cfgMU.NumSpaceTimeStreams = [1 1]; cfgMU.MCS = [4 8]; cfgMU.APEPLength = [1024 2048]; cfgMU
cfgMU = wlanS1GConfig with properties: ChannelBandwidth: 'CBW2' Preamble: 'Long' NumUsers: 2 UserPositions: [0 1] NumTransmitAntennas: 2 NumSpaceTimeStreams: [1 1] SpatialMapping: 'Direct' MCS: [4 8] APEPLength: [1024 2048] GuardInterval: 'Long' GroupID: 2 TravelingPilots: 0 ResponseIndication: 'None' Read-only properties: ChannelCoding: 'BCC' PSDULength: [1031 2065]
NumUsers
is set to 2 and the user-dependent properties are two-element vectors.
Create WLAN S1G Configuration Object and Return Packet Format
Create an S1G configuration object with default property values.
cfgS1G = wlanS1GConfig;
Compute and display the packet format. The default properties specify a transmission with short preamble.
format = packetFormat(cfgS1G); disp(format)
S1G-Short
Now create an S1G configuration object, specifying a long preamble.
cfgS1GLongPreamble = wlanS1GConfig('Preamble','Long');
Compute and display the packet format.
format = packetFormat(cfgS1GLongPreamble); disp(format)
S1G-Long
More About
PPDU
The physical layer (PHY) protocol data unit (PPDU) is the complete physical layer convergence procedure (PLCP) frame, including PLCP headers, MAC headers, the MAC data field, and the MAC and PLCP trailers.
References
[1] IEEE Std 802.11-2012. "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 802.11ac™-2013. "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." 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™.
Usage notes and limitations: After the first use of this object for an S1G MU-MIMO transmission, you cannot change the number of elements in any of these properties.
Version History
Introduced in R2016b
See Also
Objects
wlanDMGConfig
|wlanHESUConfig
|wlanHEMUConfig
|wlanHETBConfig
|wlanHTConfig
|wlanNonHTConfig
|wlanVHTConfig
Functions
Apps
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: .
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)