In: Math
Construct a BCH (7,4) code with the generator matrix G(p)=p3 +p+1. (Draw the structure of the encoder )
BCH codes can be defined by two parameters that are code size n and the number of errors to be corrected t
Block length: n = 2m - 1
Number of information bits: k ≥ n-m*t
Minimum distance: dmin≥2t + 1.
Generator matrix G(p)=p3 +p+1.
Generator Matrix (G) for (7, 4) Code
G is a (4 × 7) matrix
The steps involved in using G(x) to create a generator matrix (G) for a systematic code are shown below.
STEP ONE - Creating a non-systematic generating matrix G
A suitable (4 × 7) generator matrix can be constructed by writing the generator polynomial 1011 shifted right one bit for each successive row. There are 4 rows corresponding to the choice of 4 input data bits. The 4 rows are labeled (0 to 3) for reference. While this is a valid generator polynomial, it does not generate a systematic code.
0: | 1 | 0 | 1 | 1 | 0 | 0 | 0 |
1: | 0 | 1 | 0 | 1 | 1 | 0 | 0 |
2: | 0 | 0 | 1 | 0 | 1 | 1 | 0 |
3: | 0 | 0 | 0 | 1 | 0 | 1 | 1 |
STEP TWO - Creating a systematic generating matrix G = [Ik|P]
A systematic generator matrix G is distinguished by having a (k × k) identity matrix, often on the left-hand side as G = [Ik|P] such that each code word includes (k) data bits followed by (n-k) parity bits. Alternatively, the format G = [P|Ik] places the identity matrix on the right hand side.
To adjust the above generator matrix for a (7,4) systematic code, the leftmost columns will be manipulated to form a (4 × 4) identity matrix. To this end, begin with the top row and add to it selected rows until the first 4-bits describe the top row of an identity matrix. The new Row 0 is formed by the sum of rows (3,2,0) refering to the labels shown above. Go down the matrix for each row until the complete generator matrix is formed.
1 | 0 | 0 | 0 | 1 | 0 | 1 |
0 | 1 | 0 | 0 | 1 | 1 | 1 |
0 | 0 | 1 | 0 | 1 | 1 | 0 |
0 | 0 | 0 | 1 | 0 | 1 | 1 |
(7,4 ) BCH ENCODER
The (7, 4) BCH Encoder is implemented with a Linear Feedback Shift Register (LFSR).
(7, 4) BCH codeword are encoded.
Complete Set of (7,4) Codewords (cyclic)
cyclic code such as this, the circular shift of a valid codeword produces another valid codeword.
For example, rotating the 7-bit codeword (01) left by one bit gives the codeword (02):
(01) = 0001011
(02) = 0010110
For an (7,4) code to be cyclic, G(x) must be a factor of x7 + 1 and no smaller xN + 1.