real time 802 11 on warp
play

Real-time 802.11 on WARP Patrick Murphy Mango Communications Nov - PowerPoint PPT Presentation

Real-time 802.11 on WARP Patrick Murphy Mango Communications Nov 2013 http://warpproject.org http://mangocomm.com A Bit of History Rice WARP funded by NSF in 2006 Led by Prof. Ashu Sabharwal Rice team designed WARP v1 and v2


  1. Real-time 802.11 on WARP Patrick Murphy Mango Communications Nov 2013 http://warpproject.org http://mangocomm.com

  2. A Bit of History • Rice WARP funded by NSF in 2006 • Led by Prof. Ashu Sabharwal • Rice team designed WARP v1 and v2 hardware • Community support, reference designs, 11 workshops • Distributed hardware to 25+ research groups • Mango Communications founded in 2008 • Took over hardware manufacturing & distribution • Took over all WARP development and support in early 2012 • Released all-new WARP v3 hardware in mid-2012 • Already most widely-adopted version of WARP hardware

  3. WARP Reference Designs • WARPLab Reference Design • OFDM Reference Design

  4. WARP Reference Designs WARPLab Rapid PHY prototyping with MATLAB and WARP hardware • Raw Tx/Rx waveforms via Ethernet • Multi-antenna and multi-node from one script • WARPLab 7 • Re-designed from scratch in early 2013 • Much cleaner code for multi-antenna / multi-node experiments • Much faster than previous versions • Custom mex function for network I/O • 2.1 msec to read 819 µsec of 40MHz “air” time •

  5. WARP Reference Designs OFDM Ref Design MIMO OFDM PHY in FPGA • SISO, 2x2 multiplexing, 2x1 STBC, selection diversity • AF and DF cooperation • Custom frame format with 10 MHz bandwidth • CSMA MAC in C • One software app for PHY control and full MAC • No higher layer MAC roles (AP vs STA, etc) • Interoperates across all generations of WARP hardware •

  6. WARP Reference Designs • WARPLab Reference Design • OFDM Reference Design • 802.11 Reference Design

  7. 802.11 Reference Design • Interoperability Real-time MAC & PHY in FPGA • No compromises on MAC timing or PHY features • AP & station implementations • • Experimental Visibility Hooks throughout MAC & PHY • Framework for running experiments and understanding results • • Extensibility All source code open • Behavior specified in software whenever possible • Interfaces for real world traffic •

  8. 802.11 Reference Design CPU High Top-Level MAC MAC Framework MAC CPU Low 802.11 DCF MAC MAC DCF Core PHY PHY Tx PHY Rx Hardware Support Hardware WARP v3 Node Software MicroBlaze CPU FPGA Core WARP Hardware

  9. 802.11 Reference Design • CPU High CPU High • All inter-MPDU processing Top-Level MAC MAC Framework • Wired-wireless portal CPU Low • Queueing 802.11 DCF MAC • Role-specific behaviors MAC DCF Core PHY Tx PHY Rx • Beacons Hardware Support • Associations WARP v3 Node • Channel selection • Framework for common code

  10. 802.11 Reference Design • CPU Low CPU High • All intra-MPDU processing Top-Level MAC MAC Framework • Rate selection CPU Low • Re-transmissions 802.11 DCF MAC • Backoff selections MAC DCF Core PHY Tx PHY Rx • PHY configuration Hardware Support • Same code for any top-level MAC WARP v3 Node

  11. 802.11 Reference Design • DCF Core CPU High Top-Level MAC • DCF MAC state MAC Framework • Carrier sensing (CCA) CPU Low • Slot timer 802.11 DCF MAC • Backoff counter MAC DCF Core PHY Tx PHY Rx • NAV Hardware Support • Real-time PHY control WARP v3 Node • All parameters set by CPU Low

  12. 802.11 Reference Design • PHY Cores CPU High Top-Level MAC • Designed in System Generator MAC Framework • OFDM Tx CPU Low • OFDM & DSSS Rx 802.11 DCF MAC • All SISO PHY rates MAC DCF Core PHY Tx PHY Rx • All synchronization real-time per pkt Hardware Support • 160MHz core clock WARP v3 Node • Flexible bandwidth (20MHz max)

  13. 802.11 Reference Design • Hardware CPU High Top-Level MAC • Usual hardware support cores MAC Framework radio_controller, ad_controller, Ethernet, etc. • CPU Low • Standard Mango WARP v3 node 802.11 DCF MAC • FPGA resource utilization: MAC DCF Core PHY Tx PHY Rx LUT FF Mult BRAM Hardware Support 802.11 Usage 62983 65073 135 245* WARP v3 Node V6 Chip Total 150720 301440 768 416 % Used 41% 21% 17% 55% *71 BRAM used by ChipScope ILA in Rx PHY Design v0.6-beta

  14. Packet Flow Example Data Tx CPU High CPU Low DCF Core PHY Pkt Tx Pkt Tx MPDU Tx

  15. Packet Flow Example Data Tx CPU High CPU Low DCF Core PHY Pkt Tx Pkt Tx MPDU Tx Tx Done

  16. Packet Flow Example Data Tx CPU High CPU Low DCF Core PHY Pkt Tx Pkt Tx MPDU Tx Tx Done ACK Rx Tx Success Pkt Rx

  17. Packet Flow Example Data Tx with Re-transmission CPU High CPU Low DCF Core PHY Pkt Tx Pkt Tx MPDU Tx Tx Done Timeout

  18. Packet Flow Example Data Tx with Re-transmission CPU High CPU Low DCF Core PHY Pkt Tx Pkt Tx MPDU Tx Tx Done Timeout Backoff Pkt Tx

  19. Packet Flow Example Data Tx with Re-transmission CPU High CPU Low DCF Core PHY Pkt Tx Pkt Tx MPDU Tx Tx Done Timeout Backoff Pkt Tx Pkt Tx Tx Done

  20. Packet Flow Example Data Tx with Re-transmission CPU High CPU Low DCF Core PHY Pkt Tx Pkt Tx MPDU Tx Tx Done Timeout Backoff Pkt Tx Pkt Tx Tx Done ACK Rx Tx Success Pkt Rx

  21. Packet Flow Example Data Tx with Re-transmission CPU High CPU Low DCF Core PHY Pkt Tx Pkt Tx MPDU Tx Tx Done Timeout Backoff Idle Pkt Tx Pkt Tx Tx Done ACK Rx Tx Success Pkt Rx

  22. Packet Flow Example Data Tx with Re-transmission CPU High CPU Low DCF Core PHY Pkt Tx Pkt Tx MPDU Tx Tx Done CPU High free to manage higher-layer state (802.11 Timeout management processes, Ethernet traffic, queueing, user interaction, etc.) while CPU Low and hardware perform actual Backoff transmissions and receptions Idle Pkt Tx Pkt Tx Tx Done ACK Rx Tx Success Pkt Rx

  23. MAC Timing Calibration • Standard gives precise IFS durations • Tight tolerance required • Example: SIFS = (16 ± 0.9)µs on medium • Must account for hardware & implementation latencies • Tricky calibration problem

  24. MAC Timing Calibration Hardware Setup Oscilloscope (RSSI > Thresh) PHY Rx PHY Tx WARP v3 Monitor 802.11 Ref Design Power Splitter WARP v3 AP Linksys WRT54G STA

  25. MAC Timing Calibration WARP AP ⇄ Wi-Fi Station WARP Tx WARP Rx Energy Monitor Data ACK

  26. MAC Timing Calibration WARP AP ⇄ Wi-Fi Station WARP Tx Data ACK WARP Rx Energy Monitor 9µs Slot

  27. MAC Timing Calibration WARP AP ⇄ Wi-Fi Station WARP Tx Data ACK WARP Rx Energy Monitor Deferred transmissions at slot boundaries

  28. MAC Timing Calibration WARP AP ⇄ Wi-Fi Station WARP Tx Data ACK WARP Rx Energy Monitor 16µs 34µs SIFS DIFS

  29. MAC Timing Calibration WARP AP ⇄ Wi-Fi Station ACK WARP Tx WARP Rx Data Energy Monitor 16µs 34µs SIFS DIFS

  30. MAC Timing Calibration WARP AP ⇄ Wi-Fi Station ACK WARP Tx WARP Rx Data Calibration confirmed by simple energy-only observer seeing Energy identical medium idle intervals from WARP and Wi-Fi devices Monitor 16µs 34µs SIFS DIFS

  31. 802.11 Reference Design • Interoperability Real-time MAC & PHY in FPGA • No compromises on MAC timing or PHY features • AP & station implementations • • Experimental Visibility Hooks throughout MAC & PHY • Framework for running experiments and understanding results • • Extensibility All source code open • Behavior specified in software whenever possible • Interfaces for real world traffic •

  32. Experiment Framework WARPnet • New framework for real-time control and measurement • Directly observe PHY/MAC events at all nodes in real-time • Hooks throughout 802.11 Reference Design MAC and PHY

  33. Experiment Framework Baseline Implementation Transmit Events Receive Events • Timestamp • Timestamp • Tx Power, Rate, Length • Rx Power, Rate, Length • MAC headers • MAC headers • Sequence number • Sequence number • Tx result (ACK/timeout, number • Per-subcarrier channel estimates of re-transmissions, etc.) • Rx result (FCS good/bad)

  34. Experiment Framework Demonstration 802.11 Wireless Link TCP Speed Test (Uplink then Downlink) Wi-Fi Client Mango 802.11 Reference Design AP

  35. Experiment Framework Demonstration Visualization of WARPnet log for 50 second experiment

  36. Experiment Framework Demonstration Rx Power Rx Times & Rates Visualization of WARPnet log for 50 second experiment

  37. Experiment Framework Demonstration Rx Rates Visualization of WARPnet log for 50 second experiment

  38. Experiment Framework Demonstration # Re-Transmissions Tx Times & Rates Visualization of WARPnet log for 50 second experiment

  39. Experiment Framework Demonstration # Re-Transmissions Visualization of WARPnet log for 50 second experiment

  40. Experiment Framework Demonstration

  41. Experiment Framework Demonstration Rx Power Rx Times & Rates # Re-Transmissions Tx Times & Rates ≈ 2.5 seconds

  42. Experiment Framework Demonstration Channel Estimates

  43. Experiment Framework WARPnet • Prototype framework built in MATLAB • Too slow for multi-node experiments with long logs • Re-implementation in Python is underway • Will be part of 802.11 Reference Design v1.0 release

Recommend


More recommend