symdemap

Maps a symbol sequence to a binary sequence with binary or gray decoding

Calling sequence

b = symdemap(x,k[,enc])

Parameters

x:

Input symbol vector (real or complex, depending on the encoding)

k:

Number of bits / symbol

enc:

Specify binary ('b', default), qam ('q'), or phase ('p') encoding

b:

Output binary sequence (a vector of 0 and 1)

Description

Maps a symbol sequence to a binary sequence (sequence of 0 or 1), using one of the following possible encodings:

  • Binary encoding (PAM / NRZ) / enc = 'b': produces a vector of real symbols, uniformly distribued between -1 and 1 (if k = 2, only -1 and 1 are produced, e.g. NRZ encoding).
  • Phase encoding (PSK) / enc = 'p': produces complex symbols of unit magnitude and uniformly distribued phase between 0 and radians (for k = 1 bit/symbol, this is BPSK, which symbols are identical to NRZ, for k = 2 bits/symbol, this is QPSK, ...).
  • Quadrature amplitude Encoding (QAM) / enc = 'q': produces complex symbols where real and imaginary parts of the signal are independently modulated using each one half of the bitstream.

Example

b = symdemap([-1 1 1 -1], 1, 'b') // NRZ decoding


See also