[[TracNav(802.11/TOC)]] = MAC Config Hardware = In addition to the state implemented in the CPU_LOW processor, certain time critical MAC behaviors are implemented directly in the FPGA fabric via the MAC Config Hardware core. This core was designed to meet the needs of the DCF implementation of 802.11 while still remaining flexible for custom applications. There are three basic components to the peripheral: Timers, MAC CFG Tx Core A, MAC CFG Tx Core B. == Timers == Many MAC algorithms require precise scheduling of transmissions relative to some preceding transmission or reception event. Examples in the DCF include the following: * ACK and CTS transmissions must occur a SIFS period after previous qualified receptions * Contention windows must begin a timeout interval after a previous unsuccessful transmission To enable these and other custom applications, we have designed the hardware with 4 independent timers that can be configured via software in CPU_LOW: 1. '''postRxTimer1''' 1. '''postRxTimer2''' 1. '''postTxTimer1''' 1. '''postTxTimer2''' These timers each independently begin after the prior transmission or reception. They count until a user-specified interval of time has elapsed and then assert an output to the MAC CFG Tx Core A and MAC CFG Tx Core B subsystems. In the stock DCF implementation of the Mango 802.11 Reference Design, only '''postTxTimer2''' and '''postRxTimer1''' are used. Their durations are set to a ACK timeout and a SIFS respectively. One future straightforward extension to the design would be to use '''postTxTimer1''' to enable the "burst" transmission capabilities introduced in the 802.11e amendment where each transmission is separated by a deterministic SIFS or RIFS interval. == MAC CFG Tx Core A == The Tx Core A === Implementation Details === == MAC CFG Tx Core B == === Implementation Details ===