Main Content

wlanNonHTConfig

Create non-HT configuration object

Description

The wlanNonHTConfig object is a configuration object for the WLAN non-high-throughput (non-HT) packet format.

Creation

Description

cfgNonHT = wlanNonHTConfig creates a configuration object that initializes parameters for an IEEE® 802.11™ non-HT PPDU.

example

cfgNonHT = wlanNonHTConfig(Name,Value) sets properties using one or more name-value pairs. Enclose each property name in quotation marks. For example, wlanNonHTConfig('Modulation','DSSS') specifies the modulation type as direct-sequence spread spectrum (DSSS).

At runtime, the calling function validates object settings for properties relevant to the operation of the function.

Properties

expand all

Modulation type for the non-HT transmission, specified as 'OFDM' for orthogonal frequency division multiplexing (OFDM) or 'DSSS' for direct-sequence spread spectrum (DSSS).

Data Types: char | string

Channel bandwidth of PPDU transmission, specified as one of these values.

  • 'CBW5' — Channel bandwidth of 5 MHz

  • 'CBW10' — Channel bandwidth of 10 MHz

  • 'CBW20' — Channel bandwidth of 20 MHz

  • 'CBW40' — Channel bandwidth of 40 MHz for non-HT duplicate

  • 'CBW80' — Channel bandwidth of 80 MHz for non-HT duplicate

  • 'CBW160' — Channel bandwidth of 160 MHz for non-HT duplicate

Data Types: char | string

Indicate inactive 20 MHz subchannels in a non-HT duplicate packet, specified as a numeric or logical 0 (false) or a logical vector with at least one element set to 0 (false). When specifying a vector, the elements correspond to subchannels in order of increasing absolute frequency. Each element indicates whether the corresponding 20 MHz subchannel is inactive. To indicate an inactive 20 MHz subchannel, set the corresponding element to 1 (true). If you set this property to 0 (false), the wlanNonHTConfig object applies that value to all 20 MHz subchannels, indicating that all subchannels are active.

Example: [0 0 0 1] indicates a non-HT duplicate packet such that the subchannel with the highest absolute frequency value is inactive.

Dependencies

To enable this property, set the ChannelBandwidth property to either 'CBW80' or 'CBW160'.

Data Types: logical

OFDM MCS used for transmission, specified as an integer in the interval [0, 7]. This table shows the modulation type and coding rate for each valid value of MCS.

Value of MCSModulationCoding RateCoded Bits Per Subcarrier Coded Bits Per OFDM SymbolData Bits Per OFDM SymbolData Rate in Mbps
5-MHz Channel Bandwidth10-MHz Channel Bandwidth20-MHz Channel Bandwidth
0Binary phase-shift keying (BPSK)1/2148241.536
1BPSK3/4148362.254.59
2quadrature phase-shift keying (QPSK)1/2296483612
3QPSK3/4296724.5918
416-point quadrature amplitude modulation (16-QAM)1/241929661224
516-QAM3/4419214491836
664-QAM2/36288192122448
764-QAM3/4628821613.52754

For more information, see Table 17-4 of [1].

Data Types: double

Data rate for DSSS modulation, specified as a one of these values:

  • '1Mbps' — Differential binary phase-shift keying (DBPSK) with a data rate of 1 Mbps

  • '2Mbps' — Differential quadrature phase-shift keying (DQPSK) with a data rate of 2 Mbps

  • '5.5Mbps' — Complementary code keying (CCK) with a data rate of 5.5 Mbps

  • '11Mbps' — CCK with a data rate of 11 Mbps

Data Types: char | string

DSSS modulation preamble type, specified as 'Long' or 'Short'.

Dependencies

The 'Short' value of this property does not apply when you set the DataRate property to '1Mbps'.

Data Types: char | string

Clock locking indicator for DSSS modulation, specified as a numeric or logical 1 (true) or 0 (false). This property corresponds to the locked clocks bit (bit b2) of the SERVICE field as specified in Section 16.2.3.5 of [1]. To indicate that the physical layer (PHY) implementation derives its transmit frequency clock and symbol clock from the same oscillator, set this property to 1 (true). For more information, see Sections 16.2.3.5 and 18.1.3 of [1].

Note

Section 18.3.2.2 of [1] specifies that the locked clocks bit must be 1 for all extended rate PHY (ERP) systems when transmitting at any of these rates:

  • An optional ERP-packet binary convolutional coding (ERP-PBCC) rate

  • A data rate described in Section 16 of [1]

Therefore, to model ERP systems, you must set this property to 1 (true).

Data Types: logical

Physical layer convergence procedure (PLCP) service data unit (PSDU) length, in bytes, specified as an integer in the interval [0, 4095].

Data Types: double

Number of transmit antennas, specified as a positive integer.

Dependencies

To enable this property, set the ChannelBandwidth property to 'CBW20'.

Data Types: double

Cyclic shift values, in nanoseconds, of additional transmit antennas. The first eight antennas use the cyclic shift values specified in Table 21-10 of [1]. The remaining L antennas use the values you specify in this property, where L = NumTransmitAntennas – 8. Specify this property as one of these values:

  • An integer in the interval [–200, 0] – the wlanNonHTConfig object uses this cyclic shift value for each of the L additional antennas.

  • A row vector of length L of integers in the interval [–200, 0] – the wlanNonHTConfig 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 wlanNonHTConfig object uses only the first L elements. For example, if you set the NumTransmitAntennas property to 16, the wlanNonHTConfig 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

Signal channel bandwidth in the scrambler sequence, specified as a numeric or logical 1 (true) or 0 (false). To signal the channel bandwidth, set this property to 1 (true). Otherwise, set this property to 0 (false). For more information, see section 17.3.5.5 of [1].

Dependencies

To enable this property, set the Modulation property to 'OFDM'.

Data Types: logical

Signal bandwidth operation in the scrambler sequence, specified as one of these values.

  • 'Absent' — Disable bandwidth operation signaling

  • 'Static' — Signal static bandwidth operation

  • 'Dynamic' — Signal dynamic bandwidth operation

For more information, see section 17.3.5.5 of [1].

Data Types: char | string

Object Functions

scramblerRangeGet scrambler initialization range

Examples

collapse all

Configure transmission parameters by creating a wlanNonHTConfig object, specifying a channel bandwidth of 80 MHz and static bandwidth operation.

cfg = wlanNonHTConfig('ChannelBandwidth','CBW80','SignalChannelBandwidth',true, ... 
     'BandwidthOperation','Static');

Generate a random PSDU of the appropriate length.

psdu = randi([0 1],8*cfg.PSDULength,1,'int8');

Generate the initial pseudorandom scrambler sequence.

[range,numBits] = scramblerRange(cfg);
scramInit = randi(range);

Generate the non-HT Data field signal.

y = wlanNonHTData(psdu,cfg,scramInit);

Create a wlanNonHTConfig object for DSSS operation for a PSDU length of 2048 bytes.

cfgNHT = wlanNonHTConfig('Modulation','DSSS','PSDULength',2048)
cfgNHT = 
  wlanNonHTConfig with properties:

      Modulation: 'DSSS'
        DataRate: '1Mbps'
    LockedClocks: 1
      PSDULength: 2048

More About

expand all

References

[1] IEEE Std 802.11-2016 (Revision of 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.

Extended Capabilities

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

Introduced in R2015b

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