Communications Blockset    
Convolutional Encoder

Create a convolutional code from binary data

Library

Convolutional sublibrary of Channel Coding

Description

The Convolutional Encoder block encodes a sequence of binary input vectors to produce a sequence of binary output vectors. This block can process multiple symbols at a time.

Input and Output Sizes

If the encoder takes k input bit streams (that is, can receive 2k possible input symbols), then this block's input vector length is L*k for some positive integer L. Similarly, if the encoder produces n output bit streams (that is, can produce 2n possible output symbols), then this block's output vector length is L*n.

The input can be a sample-based vector with L = 1, or a frame-based column vector with any positive integer for L.

Specifying the Encoder

To define the convolutional encoder, use the Trellis structure parameter. This parameter is a MATLAB structure whose format is described in the section, Trellis Description of a Convolutional Encoder," in the Communications Toolbox User's Guide. You can use this parameter field in two ways:

The encoder registers begin in the all-zeros state. You can configure the encoder so that it resets its registers to the all-zeros state during the course of the simulation. To do this, use one of these values of the Reset parameter:

Dialog Box

Trellis structure
MATLAB structure that contains the trellis description of the convolutional encoder.
Reset
Determines whether and under what circumstances the encoder resets to the all-zeros state before processing the input data. Choices are None, On each frame, and On nonzero Rst input. The last option causes the block to have a second input port, labeled Rst.

See Also

Viterbi Decoder, APP Decoder

References

[1]  Clark, George C. Jr. and J. Bibb Cain. Error-Correction Coding for Digital Communications. New York: Plenum Press, 1981.

[2]  Gitlin, Richard D., Jeremiah F. Hayes, and Stephen B. Weinstein. Data Communications Principles. New York: Plenum, 1992.


  Convolutional Deinterleaver Convolutional Interleaver