I’ve been working on some QPSK modems and LDPC Octave simulations that I developed as prototypes for HF FreeDV. They use the Coded Modulation Library (CML). These simulations were based on Octave code sent to me by Bill, VK5DSP, who helped me work out how to use the CML library.
These simulations will be useful for anyone who wants to try LPDC in Octave. I have documented how to install and use the CML library in ldpc.m, and written ldpcut.m to demonstrate how to use the CML LDPC functions.
Here is a plot of a 1152 bit codeword, rate 1/2 code, compared to uncoded PSK. Notice how the bit errors drop off a cliff at an Eb/No of 1.5dB? Pretty cool. It’s runs at about 20,000 bit/s on a single core of my modest laptop, without any attempt at optimisation.