Communications Blockset | ![]() ![]() |
Parameters for Convolutional Coding
To process convolutional codes (including turbo codes), use the Convolutional Encoder, Viterbi Decoder, and/or APP Decoder blocks in the Convolutional sublibrary. If a mask parameter is required in both the encoder and the decoder, then use the same value in both blocks.
The blocks in the Convolutional sublibrary assume that you use one of two different representations of a convolutional encoder:
poly2trellis
function (in the Communications Toolbox) to generate the corresponding trellis structure mask parameter automatically. For an example, see Example: A Rate 2/3 Feedforward Convolutional Encoder.Details about these representations are in the sections, Polynomial Description of a Convolutional Encoder and Trellis Description of a Convolutional Encoder," in the Communications Toolbox User's Guide.
Using the Polynomial Description in Blocks
To use the polynomial description with the Convolutional Encoder, Viterbi Decoder, or APP Decoder blocks, you can use the utility function poly2trellis
, from the Communications Toolbox. This function accepts a polynomial description and converts it into a trellis description. For example, the command below computes the trellis description of an encoder whose constraint length is five and whose generator polynomials are 35 and 31.
trellis = poly2trellis(5,[35 31]);
To use this encoder with one of the convolutional coding blocks, simply place a poly2trellis
command such as
poly2trellis(5,[35 31]);
in the Trellis structure parameter field.
![]() | Convolutional Coding Features of the Blockset | Examples of Convolutional Coding | ![]() |