Skip to main content

Signal Decoding

Jia-YinAbout 1 mincomm

Objective

Using a differential decoder to eliminate phase ambiguity, decode the signal after the Costas loop and restore the original transmitted data stream.

System architecture file: Qpsk_stage6.grcopen in new window

Steps and Instructions

  1. After the Costas Loop, use the Constellation Decoder to decode the signal into symbols between 0 and 3.
  2. Use the differential decoder to decode the symbols.
  3. Convert the decoded symbols to the original transmitted symbols 0 to 3.
  4. Compare the finally decoded symbols with the delayed original transmitted symbols.

System Simulation

GNU Radio QPSK Tutorial
GNU Radio QPSK Tutorial
GNU Radio QPSK Tutorial
GNU Radio QPSK Tutorial

Additional Notes

Differential Decoder Function

  • The differential decoder decodes the signal by the phase change of adjacent symbols, avoiding the uncertainty of absolute phase, which is particularly suitable for handling phase ambiguity problems in PSK modulated signals.

Comparing Received Bitstream with Input Bitstream

  • The sending end generates packed bytes, so we need to use the unpack bit module to unpack each byte into 8 bits.
  • For easy comparison, convert the bitstream to floating point values 0.0 and 1.0, as Time Sink only accepts floating point and complex numbers.

Signal Delay Compensation

  • Due to the signal delay caused by multiple modules and filters in the receiving end, the original data stream needs to be compensated with the same delay before comparing with the original signal.
  • Adjust the delay value until the received signal is completely synchronized with the transmitted signal.

Exercise 7

  1. Find a suitable delay value in the above simulation to make the received signal completely synchronized with the transmitted signal.
  2. After GNU Radio version 3.10.9.0, it is recommended to use Symbol_Sync to replace Polyphase_Clock_Sync. The new version of the decoding architecture can be downloaded hereopen in new window. Please use the new version for simulation and adjust the appropriate delay value to make the received signal completely synchronized with the transmitted signal.