Changes between Version 4 and Version 5 of 802.11/wlan_exp/Porting_v1.5


Ignore:
Timestamp:
Apr 19, 2016, 11:00:14 AM (8 years ago)
Author:
murphpo
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • 802.11/wlan_exp/Porting_v1.5

    v4 v5  
    1313Setup AP+STA network
    1414
     15{{{#!th
     16'''wlan_exp v1.4'''
     17}}}
     18{{{#!th
     19'''wlan_exp v1.5'''
     20}}}
     21{{{#!tr valign=top
     22
    1523{{{#!td
    1624{{{#!python
    17 # wlan_exp v1.4
     25# Create simple AP+STA network
    1826n_ap.disassociate_all()
    1927n_ap.set_ssid('WARP-AP')
     
    2533{{{#!td
    2634{{{#!python
    27 # wlan_exp v1.5
     35# Create simple AP+STA network
    2836n_ap.configure_bss(ssid='WARP-AP', channel=6)
    2937n_ap.add_association(n_sta)
     
    3139}}}
    3240
     41}}}
    3342
    3443=== Configuring Tx Rates ===
     
    3746 * Require {{{phy_mode}}} argument to select between 11a ({{{'NONHT'}}}) and 11n ({{{'HTMF'}}}) rates
    3847
     48{{{#!th
     49'''wlan_exp v1.4'''
     50}}}
     51{{{#!th
     52'''wlan_exp v1.5'''
     53}}}
     54{{{#!tr valign=top
     55
    3956{{{#!td
    4057{{{#!python
    41 # wlan_exp v1.4
    42 rate = wlan_exp_util.wlan_rates[x]
     58# Select QPSK 1/2 rate for all DATA Tx
     59rate = wlan_exp_util.wlan_rates[2]
    4360n.set_tx_rate_unicast(rate, curr_assoc=True, new_assoc=True)
    4461n_ap.set_tx_rate_multicast_data(rate)
     
    4764{{{#!td
    4865{{{#!python
    49 # wlan_exp v1.5
    50 n.set_tx_rate_unicast(mcs=x, phy_mode='NONHT', curr_assoc=True, new_assoc=True)
    51 n_ap.set_tx_rate_multicast_data(mcs=x, phy_mode='NONHT')
     66# Select non-HT QPSK 1/2 rate for all DATA Tx
     67n.set_tx_rate_unicast(mcs=2, phy_mode='NONHT', curr_assoc=True, new_assoc=True)
     68n_ap.set_tx_rate_multicast_data(mcs=2, phy_mode='NONHT')
     69}}}
    5270}}}
    5371}}}
     
    6381'''wlan_exp v1.5'''
    6482}}}
    65 |-------------------
     83{{{#!tr valign=top
     84
    6685{{{#!td
    6786{{{#!python
     
    85104}}}
    86105
     106}}}
     107
     108=== Other API Changes ===
     109
     110The table below lists some other changes to the wlan_exp API. For complete wlan_exp documentation refer to the [//docs/mango-wlan-exp/index.html wlan_exp HTML docs].
     111||= Deprecated =||= Replacement =||= Docs Link =||
     112|| {{{n_ap.ap_configure(support_power_savings=bool)}}} || {{{n_ap.enable_DTIM_multicast_buffering(bool)}}} ||  [//docs/mango-wlan-exp/node_ap.html#wlan_exp.node_ap.WlanExpNodeAp.enable_DTIM_multicast_buffering docs]  ||
     113|| {{{n_sta.sta_configure(bool}}}  || {{{n_sta.enable_beacon_mac_time_update(bool)}}} ||  [//docs/mango-wlan-exp/node.html#wlan_exp.node.WlanExpNode.enable_beacon_mac_time_update docs]  ||
     114|| {{{n_ibss.ibss_configure(bool}}}  || {{{n_ibss.enable_beacon_mac_time_update(bool)}}} ||  [//docs/mango-wlan-exp/node.html#wlan_exp.node.WlanExpNode.enable_beacon_mac_time_update docs]  ||
    87115
    88116
     117== Event Log Changes ==
    89118
    90 Other new APIs
     119== Tx/Rx Entry Changes ==
    91120
    92  * AP support for STA power savings: deprecated {{{n_ap.ap_configure(support_power_savings=bool)}}}, use {{{n_ap.enable_DTIM_multicast_buffering(bool)}}}
    93  * STA/IBSS updating MAC time from beacon receptions:
    94   * Deprecated {{{n_sta.configure_sta(?)}}}, use {{{n_sta.enable_beacon_mac_time_update(bool)}}}
    95   * Deprecated {{{n_ibss.configure_ibss(?)}}}, use {{{n_ibss.enable_beacon_mac_time_update(bool)}}}
     121'''{{{phy_mode}}} Field'''
     122Starting in v1.5 the reference design supports both non-HT (11a) and HTMF (11n) waveforms. The Tx and Rx PHY can switch between PHY modes per-packet. The Tx/Rx log entries have a {{{phy_mode}}} field which encodes which mode was used for a given Tx/Rx event. The {{{NONHT}}} PHY mode (11a) has value {{{1}}}; the {{{HTMF}}} PHY mode (11n) has value {{{2}}}.
    96123
     124'''{{{mcs}}} Field'''
     125Previous releases defined a {{{rate}}} field in Tx and Rx entries. The {{{rate}}} value was an index into the array of 8 supported 11a rates. Starting in v1.5 the {{{rate}}} field is replaced by {{{mcs}}} and always records the MCS index of the Tx/Rx waveform. The {{{mcs}}} value must be combined with the {{{phy_mode}}} value to know what PHY rate and mode were used for a given Tx/Rx event.
     126
     127'''{{{pkt_type}}} Field'''
     128Previous releases defined a {{{pkt_type}}} field in Tx and Rx log entries. This field had values like {{{LTG}}} and {{{ACK}}}. The mapping of 802.11 packet types to {{{pkt_type}}} values was arbitrary, implemented in the reference C code. Starting in v1.5 the {{{pkt_type}}} field is a copy of the 1-byte {{{frame_control1}}} field from the packet's 802.11 header. This field encodes the type (Data, Management or Control) and sub-type (i.e. QoS Data, Protected Data; Probe Request, Beacon; RTS, ACK). The reference code does not modify the type/sub-type values recorded in the {{{pkt_type}}} log entries.
     129
     130'''{{{timestamp_frac}}} Field'''
     131Tx/Rx entries have always had a {{{timestamp}}} field which records the MAC Time in microseconds of each Tx/Rx event. Starting in v1.5 the MAC/PHY hardware also records a "fractional" timestamp for Tx/Rx events. By combining the {{{timestamp}}} and {{{timestamp_frac}}} values the timing of a Tx/Rx event can be resolved with sample-period accuracy.
     132
     133The fractional timestamp value records the value of the counter in the {{{wlan_mac_time_hw}}} core which defines the microsecond intervals for the MAC and System Times. This counter counts from 0 to 159 at 160MHz (i.e. 160 cycles @ 160MHz = 1 µsec). Thus the {{{timestamp_frac}}} field will have values in {{{[0, 1, ... 159]}}}. To translate this value into a fraction of a microsecond, divide the {{{timestamp_frac}}} value by 160.
     134
     135'''Renamed {{{TX}}} entry type to {{{TX_HIGH}}}'''
     136The {{{TX_HIGH}}} entry type (named {{{TX}}} in previous releases) records each packet which passes through a queue in the upper MAC framework. Each {{{TX_HIGH}}} entry will have 0 or more {{{TX_LOW}}} entries, depending on how the lower MAC handles the transmission event.
     137