I am trying to figure out how CCK works and there is one thing that keeps bothering me. I the following text I refer to the example shown in https://books.google.hr/books?id=nSKNDAAAQBAJ&pg=PA422&lpg=PA422&dq=engineering+desk+reference+cck&source=bl&ots=Bxrr4P4_P4&sig=SCfcKL_eUyJwtpW0yUhuDna2OzQ&hl=hr&sa=X&ved=2ahUKEwit9pS2m8XcAhWnh6YKHc9hBZcQ6AEwAXoECAEQAQ#v=onepage&q=engineering%20desk%20reference%20cck&f=false , pp. 422.
The table at bottom left and values for I and Q component of modulated signal lead me to conclusion that after 8 bit code word is generated, QPSK actually transmits 2 bits per one code word element which yields total of 16 bits per one 8-bit code word.
Is this correct? What am I missing?
Thank you in advance.
You have understood it correctly. BPSK transmits one bit per symbol while QPSK transmits two bits per symbol (i.e. 16 bits per 8 symbols). BPSK has two states which you can label 1 and 0, thus one bit. QPSK has four states which you can label 11, 10, 01 and 00, thus two bits per symbol.
I couldn't access the link you provided but https://en.wikipedia.org/wiki/Phase-shift_keying explains QPSK in other words.
I came across two more links that explain QPSK well in the terms of In-phase and Quadrature:
There is a table in the first one that I suppose matches the table in the textbook.
Is DQPSK used with 5.5 Mbps and QPSK with 11Mbps?
In addition, it is stated that first dibit (d0, d1) is used to rotate the code word in reference to the previous code word in terms of DQPSK. Does this mean that every transmitted QPSK symbol is additionally rotated by certain angle?
No, both 5.5 and 11 Mbps use DQPSK. (Those speeds are for 802.11b HR-DSSS, which is very old and hopefully is phased out. I haven't seen 802.11b-only devices in years, but my experience is very limited to Finland.)
In DQPSK the meaning of each symbol depends on the previous symbol. This was invented because it is more difficult to create a receiver which matches also the phase of the transmission (the frequency must match of course). DQPSK will allow a phase shift (and even slight frequency mismatch) and still be able to recover the transmitted symbol, but will produce more errors than pure QPSK. QPSK is used in OFDM in 802.11a and from 802.11g onwards (with higher QAMs).
I couldn't find a reference to your second question. IIRC the idea is to synchronize the symbol counter. In real world the transmission could contain a stream of thousands of zeros. There would be no phase changes so the receiver would just need to clock how many symbols there are. If the clock doesn't match with the transmitter the count of symbols would be wrong. By introducing a predefined rotation at certain intervals the receiver can reset its clock. The rotation is easy to remove so it won't cause any ill effects.
This All About Circuits site has pretty good pages on these technologies. I am not a radio or hardware engineer so I don't need this info in my work. Here is their page on DQPSK: https://www.allaboutcircuits.com/technical-articles/differential-quadrature-phase-shift-keying-dqpsk-modulation/
I believe the interpretation "rotates the whole word" comes from phase variable phi 1 which is contained in every code word chip. I found the reference 802.11 Wireless LAN Fundamentals, Roshan & Leary, Cisco Press, pp. 100, table 3-12 regarding phase rotation phi 1 in reference to previous symbol and whether it's even or odd symbol. In short these are the values:
(d0, d1) Even symbol phase change* Odd symbol phase change*
00 0 180
01 90 -90
10 180 0
11 -90 90