Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Cyclic codes



The considerable part of block codes belongs to the class of cyclic codes. It defines a simplification of both encoding and decoding procedures on the basis of a cyclical properties of code words. If b = (b 0, b 1,..., bn) – the allowed code word of the cyclic code so its cyclical shift on arbitrary number of symbols also is the allowed code word. For example, a word b1 = (bn, b 0, b 1,..., b n–1) corresponds to cyclical shift of a word b = (b 0, b 1,..., b n–1, bn) on one symbol to the right. Thus according to a rule of cyclical permutation combination symbols b are displaced on one numeral to the right, and the right numeral bn takes a place of a left numeral b 0. Properties of the cyclic code are convenient for studying, representing code words in the form of polynomials on degrees of a formal variable x which factors are symbol numerals in a code word b (x) = b 0 + b 1× x + b 2× x ` +... + bn × xn. Mathematical operations (addition, multiplication and division of polynomials) make by rules of polynomials algebra which stated in Section 5 of manual [3]. If addition and multiplication of polynomials is made by the modulo of polynomial (xn – 1) so all possible polynomials of degree (n – 1) and less organize an algebraic ring of polynomials Rn with the properties stated in the manual [3]. For construction of a cyclic code in a ring Rn choose a subset of polynomials an ideal I. The polynomial of the minimum degree g (x) in this subset is called as the generator polynomial of cyclic code. As generator polynomials of the cyclic code choose the prime polynomial. In algebra of polynomials of the whole degree prime polynomial play the same role what prime number play in the algebra of integers. The detailed table of generating polynomials of cyclical codes is reduced in Attachment А.1. Generator polynomials of short cyclic codes are given in table. 7.1.

table 7.1 – Generator polynomials of short cyclic codes

Maximum degree of a generator polynomial Generator polynomial g (x)
  x 3 + x 2 + 1 x 3 + x + 1  
  x 4 + x + 1 x 4 + x 3 + 1  
  x 5 + x 2 + 1 x 5 + x 3 + 1 x 5 + x 4 + x 2 + 1
  x 6 + x + 1 x 6 + x 5 + 1 x 6 + x 5 + x 3 + x 2 + 1

All polynomials of the ideal I corresponding to the allowed code words of cyclic codes are divided on generator polynomial g (x) without remainder that allows to formulate a following coding rule:

coding rule of nonsystematic cyclic code looks like:

b (x) = a (xg (x). (7.3)

Systematiccyclic codes are used often in practice

coding rule of systematic cyclic code(n, k) looks like:

b (х) = a (ххnk + r (х), ( 7.4)

where r (x) – remainder of division a (xxn-k on g (x). The coding rule (7.4) can be realized by such coding algorithm for systematic cyclic code:

1 To the word of a primary code a on the right (пk) zeros are added. It is equivalent to polynomial multiplication a (х) on xn–k.

2 Product a (xxn–k divides on thegenerator polynomial g (x). as a result of division remainder r (x) is defined.

3 The calculated remainder is summarized with the displaced combination
a (ххn–k. Therefore the allowed code word is formed as ( 7.4).

Example 7.2 Forming of code word of cyclic code (10, 5).

For the given primary code word a = (10110) we will generate a code word of a cyclic code (10, 5). Polynomial representation of the primary code word will be
a (x) = x 4 + x 2 + x. given cyclic code has parameters: п = 10, k = 5, r = (пk) = 5. From the table 7.1 for example the generator polynomial g (x) = x 5 + x 4 + x 2 + 1 is chosen. Next we will fulfill mathematical operations according to algorithm (7.5):

1) a (хх ( nk ) = (x 4 + x 2 + xx 5 = x 9 + x 7 + x 6;

2) Division a (х) х(n–k) / g (x)

3) Polynomial of allowed code word is

b (х) = a (ххnk Å r (х) = х 9 + x 7 + x 6 + x 3 + х 2 + 1.

To polynomial b (х) = х 9 + x 7 + x 6 + x 3 + х 2 + 1 there corresponds a word of binary symbols b = (1011001101) in which first four symbols are informational and remaining – additional. Property of divisibility of allowed code words on the generator polynomial is widely used for detection of errors in transmission systems.

If (x) = b (x) + e (x) – the received code word containing the errors polynomial e (x) = e 0 + e 1 x +... + en xn as a result of division it is received:

(x)/ g (x) = q (x) + s (x). (7.5)

Here q (x) – an arbitrary polynomial ("whole"), s (x) – the polynomial of a syndromeequal toremainder of division (x) on g (x). It has degree not above (nk – 1).

By absence of errors a syndrome s (x) = 0. On syndrome form it is possible to establish a location of errors in the received code word and to use this information for decoding with error-correction.

Example 7.3 Syndrome decoding of a cyclic code (7, 4).

The word of binary primary code a = (1010) as subject to transmission via the channel with single errors is set. Let's choose the cyclic code ensuring errorless transmission this word in these conditions. From table А.1 we define, that the task can be solved by using of the cyclic code with a generator polynomial g (x) = x 3 + x 2 + 1 and parameters n = 7, k = 4, q cor = 1. We will show, how the method of syndrome decoding for correction of single errors is realized. Using algorithm of encoding (7.4), we will generate allowed word b (x) = (x 6 + x 4 + 1). suppose, that in the channel the single error e (x) = x 6 operates. In this case the received word looks like (x) = b (x)+ e (x) = x 6 + x 4 + 1 + x 6 = x 4 + 1. We use a rule (7.5) for determination of a syndrome. By syndrome decoding on the syndrome form it is possible to establish an error location (i.e. to fulfill syndrome decoding). For this purpose it is necessary to make the table of syndromes and of errors polynomials corresponding to them. For compiling of such table it is necessary to take advantage of the equality implying from (7.5) by q (x) = 0:

s (x) = e (x)/ g (x). (7.6)

Outcomes of evaluations are presented to table 7.2 under this formula of syndrome polynomials s (x) for various polynomials of an errors. With a view of presentation a value of syndromes are presented in the form of binary words.

table 7.2 – Correspondence between syndromes and error polynomials

error polynomial e (x) x 6 x 5 x 4 x 3 x 2 x  
Syndrome s (x) x 2 + x x + 1 x 2 + x + 1 x 2 + 1 x 4 x 2  
binary syndrome representation              

Let the polynomial of the received from the channel word look like (x) = x 4 + 1.We will fulfill operation of division (x)/ g (x):

From table 7.2 it is discovered, that to such syndrome there error polynomial e (x) = x6 corresponds. Error correction consists of addition of the received code word with an error polynomial

(x) + e (x) = x 4 + 1 + x 6 = x 6 + x 4 + 1

that coincides with the transmitted allowed word b (x) = x 6 + x 4 + 1. To it there a binary word b = (1010101) corresponds, in which first four symbols are errorless transmitted symbols of primary code = (1010) (as the used code is systematic).

Such codes with cyclic properties find application in practice:

1 Goley code (23, 12) – perfect cyclic code with a generator polynomial g (x) = x 11 + x 10 + x 6 + x 5 + x 4 + x 2 + 1 and minimal distance d min = 7.

2 Expanded Goley code (24, 12) with minimal distance d min = 8 which is received by addition of the general parity checking.

3 Bose-Chaudhuri-Hochuenghem codes (BCH codes) which form extensive class of a cyclic codes. Bynary BCH codes have parameters: n = 2 m – 1, (nk) ³ mt, d min = 2 t + 1, where m (m ³ 3) and t – any positive integers. Theoretical data on BCH codes is given in section 10.4 of the textbook [1].

4 Reed-Solomon codes (RS codes) – a subclass of nonbinary BCH codes with parameters: code symbols are got out of field GF (q), q = 2 m, m – integer; length of word n = (q – 1), quantity of information symbols k = (n – 2 q corr), the minimum distance d min = (2 q cor + 1). The extension of a code to n = q or to n = (q + 1) is also possible.

The effective using of cyclic properties of allowed words cyclic codes allows to realize enough simple decoding algorithms. It is considered, that realization complexity of cyclic codes decoding algorithms is described by power function C decod = nk, where the k – small number which size depends on concrete algorithm realization. Examples of encoding/decoding algorithms are more low resulted. Thus the mathematical apparatus of sedate polynomials algebra and the description the discrete linear filters, is presented in sections 5 and 6 of the manual [3] is widely used.

Example 7.4 encoder structure of the systematic cyclic code.

Using algorithm (7.5) we will form the block diagram of a cyclic encoder (15, 11), with a generator polynomial g (x) = x 4 + x + 1 which is chosen from table 7.1. The scheme of encoder is resulted on figure 7.1.

 
 


According to an algorithm (7.4) encoder works as follows. Originally switches S 1 and S 2 are in position 1. Eleven information symbols of a coded prime word a (x) are entered at the left into chain of division into a polynomial g (x) = x 4 + x + 1. Simultaneously they through consistently connected delay elements arrive on a encoder exit, forming an information part of the allowed code word a (xxn–k. On first four steps in register cells the divider scheme on a generator polynomial the remainder of a division r (x) is formed. Then switches S 1 and S 2 are established in position 2, division process stops, and remainder is read out from an exit of divider and finished in a checking part of final code word b (x) = a (ххn–k + r (х).

Example 7.5 encoder structure of the nonsystenatic cyclic code

Using a coding rule (7.3) for nonsystematic cyclic code we will form the coder block diagram for generator polynomial g (x) = x 4 + x + 1. The coding rule (7.3) provides multiplication of polynomials a (x) and g (x). Using structure of a multiplier for polynomials from section 6.1 of manual [3] the encoder scheme we will present on figure 7.2. The important element of coders schemes for cyclic codes is the scheme of division polynomial on a polynomial for an evaluation of a division remainder by coding of systematic code by algorithm (7.4) and also for syndrome evaluation by syndrome decoding on algorithm (7.5). The structure of such divider schemes is considered in section 6.1 from the manual [3].

 
 





Дата публикования: 2014-11-02; Прочитано: 472 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.013 с)...