BCH Encoder

Create BCH code from binary vector data

Library

Block sublibrary of Channel Coding

Description

This block supports punctures (Shortening, Puncturing, and Erasures provides a tutorial).

The BCH Encoder block creates a BCH code with message length K and codeword length (N - number of punctures). You specify both N and K directly in the dialog box.

The input must be a frame-based column vector with an integer multiple of K elements. Each group of K input elements represents one message word to be encoded.

If the encoder is processing multiple codewords per frame, then the same puncture pattern holds for all codewords.

For a given codeword length N, only specific message lengths K are valid for a BCH code. For a full length BCH code, N must be of the form 2M-1, where . If N is less than 2M-1, the block assumes that the code has been shortened by length 2M - 1 - N. However, if N is greater than or equal to 2M-1, Primitive polynomial must be specified to appropriately set the value of M.

No known analytic formula describes the relationship among the codeword length, message length, and error-correction capability. For a list of some valid values of K corresponding to values of N up to 511, see the bchenc reference page in the Communications Toolbox™ documentation.

This block supports double and boolean data types.

The primitive and generator polynomials may be specified in their respective fields, which appear after selecting their corresponding check boxes.

Dialog Box

Codeword length, N

The codeword length.

Message length, K

The message length.

Specify primitive polynomial

Selecting this check box enables the field Primitive polynomial.

Primitive polynomial

This field is available only when Specify primitive polynomial is selected.

A row vector that represents the binary coefficients of the primitive polynomial in order of descending powers.

The default value is de2bi(primpoly(4, 'nodisplay'), 'left-msb'), corresponding to a (15,5) code.

Specify generator polynomial

Selecting this check box enables the field Generator polynomial.

Generator polynomial

This field is available only when Specify generator polynomial is selected.

A row vector that represents the binary coefficients of the generator polynomial in order of descending powers.

The length of the Generator polynomial must be N-K+1.

The default value is bchgenpoly(15,5).

Puncture code

Selecting this check box enables the field Puncture vector.

Puncture vector

This field is available only when Puncture code is selected.

A column vector of length N-K. A value of 1 in the Puncture vector corresponds to a bit that is not punctured, and a 0 corresponds to a bit that is punctured.

The default value is [ones(8,1); zeros(2,1)].

Pair Block

BCH Decoder

See Also

bchenc (in Communications Toolbox documentation)

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS