I obtained the results shown in this chart using the example simulation code, with the trellis depth set to K x 5, using the adaptive quantizer with three-bit channel symbol quantization. For each data point, I ran the simulation until 100 errors (or possibly more) occurred. With this number of errors, I have 95% confidence that the true number of errors for the number of data bits through the simulation lies between 80 and 120.
Notice how the simulation results for BER on an uncoded channel closely track the theoretical BER for an uncoded channel, which is given by the equation P(e) = 0.5 * erfc(sqrt(Eb/N0)) = Q(sqrt(2Eb /N0). This validates the uncoded BER algorithm and the Gaussian noise generator. The coded BER results appear to agree well with those obtained by others.
Since I first published this tutorial in 1999, I've gotten a few questions about the 95% confidence interval, so let me elaborate somewhat. Error events occur as a Poisson process, a random sequence of events in time. The Poisson process has a mean rate equal to n/t, where n is the number of events (the number of errors, in this case) and t is the time interval of the measurement. For the purposes of the simulation, let's let t = the total number of bits in the simulation. Let's say we measure 100 errors in 100,000 bits. The rate is thus 100/100,000, or 1 x 10-3. If we set up the simulation to run for 100,000 bits, then the mean of the Poisson distribution is t, or 100 errors. The formula for the probability of an expected number r of errors, given a mean of errors, is . So the Poisson distribution for 50 to 150 errors, given a mean of 100 errors, is illustrated in the chart below:
The obvious next step for you to take is to start varying some of the parameters. For example, you can try different trellis depths, the fixed quantizer instead of the adaptive quantizer, more or fewer bits in the quantizer, and so on.
Click on one of the links below to go to the beginning of that section:
Introduction
Description of the Algorithms
Simulation Source Code Examples
Example Simulation Results
Bibliography
About Spectrum Applications...