ft register circuits described in the next section. of x"-1 and it must be of degree r given by Equation 14.17. In other If the received, possibly corrupted, codeword is r(x), the decoder words it is of the form given by expression 14.18. calculates a syndrome polynomial, s(x), which is used for error detection and correction. s(x) is defined in one of two ways: as the r = (n - k ) (14.17) remainder after dividing either r(x) or x r (r(x) by g(x); the second of these two options allows maximum commonality between the coder (14.18) and decoder, as explained below. In either case a valid codeword produces a zero syndrome. It therefore has r + 1 coefficients, the most significant of which is always 1. There is a very large number of known binary cyclic 14.5.2 Implementation of cyclic coders and codes, and published tables are available which give for each code decoders the values of n and k, the coefficients of g(x), and the distance of the code and hence its error detection and correction ability. In such Cyclic coders and decoders are implemented using Linear Feedback tables it is common practice to represent the binary coefficients of Shift Registers (LFSR). The general form of a systematic cyclic the generator polynomial in actual notation. For example, if the coder is shown in Figure 14.1, for the code with generator g(x) given generator of a (7,3) cyclic code (which therefore has 7-3+1=5 by Equation 14.22. In = d(x) -9r-1 Out = c(x) = Figure 14.1 General form of a systematic cyclic coder 14/8 Coding g(x) = 1.x + 8r-1 (14.22) different syndrome, the basis of decoder operation is the same in either case. In a decoder which is only designed to detect errors, the syndrome All multiplications and additions are in GF(M), for example in is tested using an r-input OR gate, whose output is 1 (indicating an modulo-2 for binary digits. The rectangular boxes are latches which error) if the syndrome is non-zero. In an error correcting decoder, store the results from multipliers or adders, as appropriate; there are further 