M-ASK, M-PSK, and QAM-M Mod and Demod
Purpose of the LAB: To put into practice M-ASK, M-PSK and QAM-M mod/demod and observe their performances/diffrences.
Educational objectives:
- Consider M-ary modulations with different schemes.
- Visualize the constellation of modulations.
- Analyze their spectral efficiency and noise sensitivity
- Compare performances via BER
BPSK/2-ASK
At first, run Media:BPSK.grc corresponding to the flowgraph :
Refer to the section https://wiki.gnuradio.org/index.php?title=Simulation_example:_BPSK_Demodulation for explanation.
Variables
Contents of the variables 'Delay', 'rrc-taps' and 'timing_loop_bw'
Delay: int (5.5 * sps + 7)
rrc_ taps : firdes.root _raised_ cosine ( nfilts , nfilts , 1.0/float( sps ), Alpha, 11* sps * nfilts )
timing_loop_bw : 0.0628
Blocks Setting
M-PSK
QPSK
Modify the previous flowgraph to obtain a QPSK Media:QPSK.grc
- Edit Constellation object QPSK.
- Modulus Edit 4.
- Add a K-bit Unpack block (K: 2) to be placed as shown in the flowgraph
- Multiply the delay by 2 --> int (5.5 * sps + 7)*2
- Observe the BER as the noise power increases.
8-PSK
Modify the previous flowgraph to obtain an 8-PSK Media:8psk.grc
- Edit Constellation object 8PSK
- Modulus Edit 8
- K-bit Unpack block (K: 3).
- Observe the BER as the noise power increases.
- Multiply the delay by 3 --> int (5.5 * sps + 7)*3
M-ASK
4-ASK
Modify the QPSK flowgraph to obtain a 4-ASK.
- Replace the Constellation Object by Constellation Rect Object block
4-ASK Media:4ASK.grc whose flowgraph is given below :
- Modify Constellation Rect Object as shown above.
- Modulus Edit 4.
- K-bit Unpack block (K: 2)
- Multiply the delay by 2 --> int (5.5 * sps + 7)*2
- Observe the BER as the noise power increases.
8-ASK
8-ASK Media:8ASK.grc whose flowgraph is given below :
- Edit Constellation Rect Object as shown
QAM-M
QAM-16 Media:QAM16.grc whose flowgraph is given below :
- Modify the QPSK flowgraph to obtain a 16-QAM
- Edit Constellation object 16QAM
- Modulus Edit 16
- K-bit Unpack block (K: 4).
- Observe the BER as the noise power increases.
- Multiply the delay by 4 --> int (5.5 * sps + 7)*4