Version 4 (modified by chunter, 10 years ago) (diff) |
---|
802.11 Reference Design
- Download
- Changelog
- FAQ
- Architecture
Using the Design...
Benchmarks
- IFS Calibration
- Throughput
- Transmitter Characterization
- Receiver Characterization
- Pkt. Det. Min. Power Characterization
MAC
Upper-level
Lower-level...
- PHY
Experiments Framework...
- Packet Flow
- FPGA Architecture
- FPGA Resource Usage
- App Notes
- Other Resources
- License
- Changelog
Wireless Transmit Queue
The MAC High Framework provides a queue for outgoing wireless transmissions. The storage of this queue is in the DRAM SODIMM on the WARP v3 board provided it is plugged into the board (otherwise, a much smaller queue is created inside local BRAM). The MAC High Framework maintains a pool a free queue elements that can be checked out by the upper-level MAC. Furthermore, it maintains a series of full queue elements that are tied to any number of independent queues. This allows, for example, an upper-level MAC like an Access Point to queue packets for each station independently.
The wireless transmission process is the following:
- A free queue element is checked out and, if available, filled in with a packet payload.
- The upper-level MAC decides which outgoing queue, if any, the packet should be added to and notifies the framework to add it to the end of that particular queue.
- The upper-level MAC checks each of the outgoing queues when the lower-level MAC is ready for another packet. Depending on whatever emptying mechanism it chooses (e.g. round-robin), it notifies the MAC High Framework to send from a particular queue.
- Once sent, the queue element is returned back to the free pool so it can be checked out and filled in with a new payload in the future.