On Saturday 06 December 2008 10:15:20 Johannes Berg wrote: > Yes, well, depending on which values you used you might have run into > the fact that the values from the tables were already rounded. Both errors happen for 20 Mhz channels... one of them is definitely a typo in the wiki. I get 144.4 MBit/s (wiki says 144.0) for MCS 15 (long GI) and 115.6 MBit/s (wiki says 173.3, which is a typo !) for MCS 27(short GI). in pseudocode: ----------------- int modulation = mcs & 7; int streams = mcs / 8; int bitrate = (flags & 40MHZ) ? 13500000 : 6500000; if (modulation < 4) bitrate *= (modulation + 1); else if (modulation == 4) bitrate *= (modulation + 2); else bitrate *= (modulation + 3); bitrate *= streams; if (flags & SHORT_GI) bitrate = (bitrate * 10) / 9; return (bitrate + 50000) / 100000; // do NOT just round down Henning
Attachment:
signature.asc
Description: This is a digitally signed message part.