CDMA Reference Blockset    

IS-95A Reverse Traffic Channel Codec Demo

The IS-95A Reverse Traffic Channel Codec demo shows the channel coding at the mobile station and the corresponding decoding at the base station receiver. The transmitter encodes the data, and the channel model adds noise to simulate errors in transmission. The receiver side retrieves the information bits by performing the decoding tasks. The operations performed conform to the IS-95A channel coding requirements, and illustrate the usage of the corresponding elements of the blockset.

You can open the model by following the instructions in Opening a Demo, or by typing is95revchcodec2 at the MATLAB prompt.

Library Blocks in the Demo

The IS-95A Reverse Traffic Channel Codec demo uses these library blocks from the CDMA Reference Blockset:

How the Demo Works

The base station transmitter section performs the Cyclic Redundancy Check (CRC) generation, convolutional encoding, symbol repetition, and interleaving. The Random Binary Frame Generator masked subsystem generates random data that act as information bits. The Mobile Station Transmitter Data Rate masked subsystem provides the selection of the data rate. The IS-95A CRC Generator library block appends the CRC bits to the information bits. These CRC bits are used to detect errors in the data frame at the receiver. The IS-95A Rev Ch Convolutional Encoder library block convolutionally encodes the data using a 1/2-rate encoder for protection against channel errors.

Because IS-95A supports variable data rate operation, the data frame at this stage can have a number of different sizes. Depending on the data rate, the IS-95A Rev Ch Repeater/Derepeater library block (denoted IS-95A Rev Ch Repeater block in this demo) may repeat the bits it receives to create a data frame of 384 symbols. Note that if you change the simulation so that it uses Rate Set II, then the block also punctures the input frame; that is, the block removes some of the input symbols to keep the output frame size constant. Then the IS-95A Rev Ch Interleaver/Deinterleaver library block (denoted IS-95A Rev Ch Interleaver in this demo) interleaves the data frame for protection against the localized error bursts that can occur in fading channel conditions.

This interleaved data is converted to the bipolar form, and the AWGN Channel block adds white Gaussian noise to each symbol of the bipolar data. This noise represents the random error in the demodulation of the symbol.

The mobile side performs the reverse operations. The IS-95A Rev Ch Interleaver/Deinterleaver library block (denoted IS-95A Rev Ch Deinterleaver in this demo) deinterleaves the input data to restore the original symbol ordering. The IS-95A Rev Ch Repeater/Derepeater library block (denoted IS-95A Rev Ch Derepeater in this demo) derepeats the data depending on the symbol rate, which involves averaging the symbols that were repeated. Note that if you change the simulation so that it uses Rate Set II, then the block also depunctures the data by inserting zeros in the locations corresponding to the punctured symbols. The resulting frame is then provided as input to the IS-95A Rev Ch Viterbi Decoder library block, which retrieves the information that was previously encoded. The decoded information bits and the CRC bits are provided to the IS-95A Frame Quality Detector library block. The final metrics from the IS-95A Rev Ch Viterbi Decoder block are also input to the IS-95A Frame Quality Detector block, which decides whether the frame was correctly received. The IS-95A Frame Quality Detector block outputs the Quality Indicator signal, as well as the information bits without the CRC bits. One Error Rate Calculation block compares the information bits to the bits generated at the source, while another Error Rate Calculation block compares the Quality Indicator bits with zero. Finally, the resultant bit and frame error rates are displayed.

Visible Results of the Demo

The demo displays the bit error rate (BER) and the frame error rate (FER) for the reverse channel coding and decoding operations. Both of these error rates show the protection that the codec offers against errors introduced in the channel. The error rates depend on the additive noise in the system as well as the data rate in the simulation. You can see the error rates change as you change the Es/No parameter in the AWGN Channel block, or the or the Data Rate parameter inside the Mobile Station Transmitter Data Rate masked subsystem.

Changing Demo Parameters

This section suggests some ways that you can alter the parameters in the demo after you understand the model.

Simulation Duration.   The simulation duration in this demo is set to 10 seconds. Because the frame duration in IS-95A is 0.02 second, this model processes 500 frames. This gives a sufficient time for the BER measurements to converge at reasonable SNR settings. For lower SNR settings the FER may take a longer time to converge. To run the simulation for a longer or shorter time, select Parameters from the Simulation menu, and change the Stop time to 0.02 times the number of frames you want to simulate.

Data Rate.   To change the data rate, double-click on the Mobile Station Transmitter Data Rate icon and change the Data Rate parameter. Choices are Full, Half, Quarter, and One-Eighth rates.

Rate Set.   The Rate set parameter is Rate Set I by default in the simulation, but alternatively you may select Rate Set II. The Rate set parameter should be changed in all of the blocks by double-clicking on their icons and selecting either Rate Set I or Rate Set II from the Rate set parameter menu. The blocks that need to be changed to the same Rate set parameter are the IS-95A CRC Generator, IS-95A Rev Ch Convolutional Encoder, IS-95A Rev Ch Viterbi Decoder, and IS-95A Frame Quality Detector.

Signal-to-Noise Ratio.   Change the Es/No parameter in the AWGN Channel block. The detection performance improves with an increase in the signal-to-noise ratio.

Random Seed.   To run the simulation with different seeds, change the Initial seed parameters in the Random Binary Frame Generator masked subsystem and/or the AWGN Channel block.

Further Explorations

The demo serves as the starting point for building simulation models for channel coding and decoding. It can be used for developing codec models for the Access channel. In addition, it is a good platform for experimenting with variations in channel decoding algorithms such as soft-decision quantization, and specialized implementations of the Viterbi decoder. In addition, you may combine this model with parts of the reverse channel detection model for a more elaborate simulation.


 IS-95A Forward Traffic Channel Codec Demo IS-95A Reverse Traffic Channel Transmitter Demo