7 | | The MAC High Framework provides a queue for outgoing wireless transmissions. |
| 7 | 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. |
| 8 | |
| 9 | The wireless transmission process is the following: |
| 10 | |
| 11 | 1. A free queue element is checked out and, if available, filled in with a packet payload. |
| 12 | 2. 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. |
| 13 | 3. 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. |
| 14 | 4. 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. |