17
1 © 2018 The MathWorks, Inc. IEEE 802.11ax Waveform Generation and Link-level Simulation in MATLAB with WLAN System Toolbox Houman Zarrinkoub, PhD. Product Manager Communications, LTE and WLAN System Toolboxes [email protected]

IEEE 802.11ax Waveform Generation, Link-level Simulation ......MATLAB with WLAN System Toolbox Houman Zarrinkoub, PhD. Product Manager Communications, LTE and WLAN System Toolboxes

  • Upload
    others

  • View
    17

  • Download
    0

Embed Size (px)

Citation preview

  • 1© 2018 The MathWorks, Inc.

    IEEE 802.11ax

    Waveform Generation and Link-level Simulation in

    MATLAB with WLAN System Toolbox

    Houman Zarrinkoub, PhD.

    Product Manager

    Communications, LTE and WLAN System Toolboxes

    [email protected]

  • 2

    What is 802.11ax?

    ▪ IEEE 802.11ax is the latest member of the Wi-Fi standards

    ▪ Evolution of the popular 802.11ac

    ▪ HE = High Efficiency

    ▪ Goals:

    – More effectively use 2.4 and 5 GHz bands

    – Increase average throughput 4x per user in high-density scenarios

    – Scenarios: corporate offices, stadiums, outdoor hotspots, dense residential complexes

    – Improve outdoor performance

    – Improve power efficiency

    ▪ Backwards compatibility with 11a/b/g/n/ac

  • 3

    Key Features of 802.11ax

    ▪ Modulation order up to 1024-QAM

    ▪ 8x8 Access-Point MIMO

    ▪ Downlink OFDMA & MU-MIMO

    ▪ Uplink OFDMA & MU-MIMO

    ▪ 4x longer Symbol Duration

    ▪ Extended range preamble

    ▪ Channel bonding 20MHz 40MHz

    TimeSubcarriers

    78.125kHz

    spacing

    1 symbol = 12.8ms

    AP

  • 4

    Enabling technologies:

    OFDMA and MU-MIMO

    ▪ SU-MIMO - all subcarriers (full-band) are

    used by one user

    ▪ MU-MIMO - all subcarriers (full-band) are

    used by multiple users

    ▪ OFDMA - subsets of subcarriers are used

    by individual users

    ▪ MU-MIMO & OFDMA - a subset of

    subcarriers are used by multiple users

    TimeSubcarriers

    TimeSubcarriers

    TimeSubcarriers

    TimeSubcarriers

    User 1

    User 2

    User 3

    User 4

    Space

    Space

  • 5

    Rationale: More efficiency

    ▪ WLAN MAC efficiency drops with increasing number of stations (users)

    ▪ Overhead (preamble, MAC headers, …) may consume more time that

    payload data

    ▪ 802.11n – introduced Aggregation

    – Combines short packets in time

    ▪ 802.11ac – introduced MU-MIMO

    – Combines multiple users in space

    ▪ 802.11ax - introduced OFDMA

    – Combines multiple users in frequency dimension

  • 6

    802.11ax in WLAN System Toolbox

    ▪ Based on IEEE P802.11ax/D1.1

    End-to-End SimulationsSignal Generation

    Single User

    MU-MIMO & OFDMA

  • 7

    Waveform Generation Example in MATLAB

  • 8

    Generating 802.11ax PPDU Formats

    cfg = heSUConfig;

    cfg = heSUConfig;

    cfg.ExtendedRange = true;

    cfg = heMUConfig(allocation);

    cfg = heTriggerBasedConfig();

    tx = heWaveformGenerator(psdu,cfg);

  • 9

    Resource Units in 802.11ax

    ▪ OFDMA in 11ax is facilitated by

    resource units (RUs)

    ▪ An RU is a group of 26, 52, 106, 242,

    484, 996 or 1992 subcarriers

    ▪ ≤ 8 users can share an RU (MU-MIMO)

    ▪ A user can only be assigned to one RU

    ▪ The number, size, and location of RUs

    is defined by an allocation index

  • 10

    HE-MU Format: OFDMA and MU-MIMO Allocations

    ▪ An allocation index is required when

    creating an HE-MU configuration

    ▪ For each 20MHz sub-band an allocation index

    specifies:

    – The number, size and location of RUs

    – How many users are assigned to each RU

    – Which HE-SIG-B content channel users are

    signaled on, for RUs >242-tones

    ▪ You can easily visualize user allocations

    >> plotAllocation(cfg);

  • 11

    OFDMA and MU-MIMO Allocation in WLAN System Toolbox

    ▪ Use allocation index to define an 802.11ax configuration

    allocationIndex = 136;

    cfg = heMUConfig(allocationIndex);

    ruInfo(cfg)

    ans =

    struct with fields:

    NumUsers: 4

    NumRUs: 3

    RUIndices: [1 5 2]

    RUSizes: [106 26 106]

    NumUsersPerRU: [2 1 1]

    NumSpaceTimeStreamsPerRU: [2 1 1]

    PowerBoostFactorPerRU: [1 1 1]

    Total number of users in

    this allocation

    Number of resource units

    (RUs) in this allocation

    136 specifies 3 RUs,

    2x106-tone and 1x26 tone

    The size and index of

    each RU in the allocation

  • 12

    Configuring Users and RUs

    ▪ The hierarchy within heMUConfig allows RUs to be configured:

    cfg = heMUConfig(97);

    % Configure RU 1 and the user

    cfg.RU{1}.User{1}.APEPLength = 1500;

    cfg.RU{1}.User{1}.MCS = 2;

    cfg.RU{1}.User{1}.NumSpaceTimeStreams = 4;

    cfg.RU{1}.User{1}.ChannelCoding = 'LDPC';

    cfg.RU{1}.SpatialMapping = 'Direct';

    % Configure RU 2, user 1

    cfg.RU{2}.User{1}.APEPLength = 1000;

    cfg.RU{2}.User{1}.MCS = 3;

    cfg.RU{2}.User{1}.NumSpaceTimeStreams = 2;

    cfg.RU{2}.User{1}.ChannelCoding = ‘BCC';

    % Configure RU 2, user 2

    cfg.RU{2}.User{2}.APEPLength = 2000;

    cfg.RU{2}.User{2}.MCS = 6;

    cfg.RU{2}.User{2}.NumSpaceTimeStreams = 2;

    cfg.RU{2}.User{2}.ChannelCoding = ‘LDPC’;

    % Configure RU 2 common properties

    cfg.RU{2}.SpatialMapping = 'Custom';

    cfg.RU{2}.SpatialMappingMatrix = Q;

    heMUConfig

    ChannelBandwidth

    RU

    STBC

    RU{2}

    Size

    Index

    User

    SpatialMapping

    RU{1}

    Size

    Index

    User

    SpatialMapping

    APEPLength

    MCS

    ChannelCoding

    User{1}

    APEPLength

    MCS

    ChannelCoding

    User{1}

    APEPLength

    MCS

    ChannelCoding

    User{2}

    A cell array cfg.RU

    contains the

    configuration for RUs

    A cell array RU{x}.User

    contains the configuration for

    users within a RU x

  • 13

    Full-band MU-MIMO Allocations

    ▪ A full-band MU-MIMO allocation is specified with index 192-223

    cfg = heMUConfig(210);

    ruInfo(cfg)

    ans =

    struct with fields:

    NumUsers: 3

    NumRUs: 1

    RUIndices: 1

    RUSizes: 996

    NumUsersPerRU: 3

    NumSpaceTimeStreamsPerRU: 3

    PowerBoostFactorPerRU: 1

    210 specifies 3 users,

    full band 80 MHz

    Allocation Index 20 MHz Subchannel Resource Unit Assignment192-199 (191 + NumUsers ) Full band 20 MHz (1-8 users)

    200-207 (199 + NumUsers)Full band 40 MHz (1-8 users), or

    448-tone RU with 1-8 users signaled in the corresponding HE-SIG-B content channel

    208-215 (207 + NumUsers)Full band 80 MHz (1-8 users), or

    996-tone RU with 1-8 users signaled in the corresponding HE-SIG-B content channel216-223 (215 + NumUsers ) Full band 160 MHz (1-8 users)

    3 users

    All users on

    single RU

  • 14

    OFDMA and MU-MIMO Allocations greater than 20 MHz

    ▪ An allocation index is required for each 20 MHz subchannel

    cfg = heMUConfig([192 192 192 193]);

    ruInfo(cfg)

    ans =

    struct with fields:

    NumUsers: 5

    NumRUs: 4

    RUIndices: [1 2 3 4]

    RUSizes: [242 242 242 242]

    NumUsersPerRU: [1 1 1 2]

    NumSpaceTimeStreamsPerRU: [1 1 1 2]

    PowerBoostFactorPerRU: [1 1 1 1]

    Four allocation indices defines

    an 80 MHz allocation. Each

    element specifies the allocation

    for a 20MHz subchannel

    192 specifies 1 user in

    a 242-tone RU193 specifies 2 users

    in a 242-tone RU

    The 4th RU contains 2 users,

    as the allocation index is 193.

    The total number of users

    is 1+1+1+2 = 5

  • 15

    WLAN Examples

    802.11ax Parameterization for Waveform Generation and Simulation

    Generation of different types of IEEE 802.11ax high

    efficiency (HE) formats.

    802.11ax OFDMA and Multi-User MIMO Throughput Simulation

    Throughput of OFDMA, MU-MIMO, and a combination of

    OFDMA and MU-MIMO over TGax indoor channel.

    802.11ax Packet Error Rate Simulation for Single User Format

    Packet error rate of an 802.11ax single user format link.

  • 16

    For which aspects of 802.11ax do you want more support?

    ▪ HE-MU uplink transmission with a single 106-tone RU

    ▪ Demodulation and decoding of HE trigger-based format transmissions

    ▪ 80+80 channel bandwidth

    ▪ Outdoor TGax channel model

    ▪ Code generation support

  • 17

    Summary

    ▪ Support of single-user, MU-MIMO and OFDMA

    – Waveform generation

    – End-to-end simulation

    ▪ Open environment

    – MATLAB source code included

    – Link to test and measurement instruments, RF, SDRs

    ▪ Easy configuration and visualization

    – Allocation index

    – Resource visualization