{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

n99_9 - TCOM 370 NOTES 99-9 CYCLIC CODES AND THE CRC(CYCLIC...

Info icon This preview shows pages 1–4. Sign up to view the full content.

View Full Document Right Arrow Icon
1 TCOM 370 NOTES 99-9 CYCLIC CODES, AND THE CRC (CYCLIC REDUNDANCY CHECK) CODE 1. CYCLIC CODES Cyclic codes are a special type of linear block code that are popular because they are very effective for error detection and correction and their coders and decoders are easy to implement in hardware. Definition: A cyclic code is a linear (N,k) block code with the property that every cyclic shift of a codeword results in another codeword . Cyclic shifts of any finite word [b N-1 , b N-2 , ..., b 0 ] of binary digits are generated by writing out the sequence and shifting the bits (left or right) by the desired number, in such a way that any bits which exit the word at one end re-enter the word at the other end. In other words, we shift bits with carry-around of bits that fall of one end to the other end. For example, the generator matrix G= 1 1 0 1 0 1 for a (3,2) linear block code produces the codewords [000], [110], [101], and [011] (corresponding to data words [00], [10], [01], and [11], respectively). Pick any codeword, say [110]. Its cyclic shifts [011] and [101] are both valid codewords. 2. CYCLIC REDUNDANCY CHECK CODES A very popular error detecting code implemented in many data transmission schemes is the cyclic redundancy check (CRC) code. Remember that fundamentally this is a type of linear block code. Polynomial Representation of Binary Words To understand how a CRC coder works, let us first define the notion of the polynomial associated with a binary sequence. The polynomial is in terms
Image of page 1

Info icon This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
2 of some dummy variable X, the powers of which are combined with binary (0 and 1) coefficients. For a bit sequence [b k-1 , b k-2 , ..., b 1 , b 0 ] the associated polynomial is b k-1 X k-1 + b k-2 X k-2 + ... + b 1 X + b 0 Note that this a polynomial of order k-1 for a bit sequence (word) of length k bits. For example, for the data (message) bit sequence [1010100101] of k=10 bits, the polynomial representation is M(X)=X 9 + X 7 + X 5 + X 2 + 1. Suppose k message or data bits are encoded into N code bits by appending to the message bits a sequence of n=N-k bits [r n-1 , r n-2 , ..., r 1 , r 0 ]. Let R(X) be the polynomial representing these appended bits. Then the codeword of length N=k+n corresponding to the message M(X) is [b k-1 , b k-2 , ..., b 1 , b 0 , r n-1 , r n-2 , ..., r 1 , r 0 ] for which the corresponding polynomial is clearly T(X) = X n M(X) + R(X). This follows because the original message bits now occupy more significant bit positions in the codeword; each message bit is moved left by n bits to make room for the n appended bits. For example, to the above 10-bit message sequence if we append the 3-bit sequence 111, the resulting 13-bit code sequence has the polynomial representation X 3 (X 9 + X 7 + X 5 + X 2 + 1) + X 2 + X + 1= X 12 + X 10 + X 8 + X 5 + X 3 + X 2 + X + 1.
Image of page 2
3 ENCODING AS COMPUTATION OF REMAINDER IN POLYNOMIAL DIVISION
Image of page 3

Info icon This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Image of page 4
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

What students are saying

  • Left Quote Icon

    As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern