I am trying to put together a baseband-equivalent simulation of 802.11a signals, which according to Wikipedia has a variable encoding (PSK, QAM, etc.) that have differing coding rates (1/2, 2/3, 3/4) depending on the choice of RATE bits. I can't find any details on the forward error corrector used in 802.11a. Could someone point me the the algorithm used in 802.11a?
1 Answer
From the official standard, IEEE Std 802.11a-1999, Part 11, section 17.3.5.5 Convolutional encoder, see the rate 1/2 code:
The resulting two streams A and B are interleaved bit-alternatingly.
The other rates (2/3 and 3/4) are achieved through puncturing (as defined on the page right after).
Since this code can't deal with anything that deserves the name "burst error", which in the context of OFDM means "wideband disturbance" (in this case, "interference spanning more than 3 subcarriers" is impossible to correct reliably), there's an interleaver following this. Don't forget that in your implementation.
By modern standards, this is not an overly impressive code, to be honest.
gr-ieee802-11
. It's accurate enough a simulation that you can plug it into an SDR and talk to real WiFis. $\endgroup$