1 / 19

What is Cyclic Code ?

What is Cyclic Code ?. 指導教授:黃文傑 博士 學生:吳濟廷 2004.03.10. OUTLINE. Introduction Encoding Generator polynomial Decoding Parity check polynomial Syndrome testing Error correction Conclusion. Code Taxonomy. Today. Important cyclic code. BCH code Powerful random error-correcting codes

dane-porter
Download Presentation

What is Cyclic Code ?

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. What is Cyclic Code ? 指導教授:黃文傑 博士 學生:吳濟廷 2004.03.10 Wireless Communication Lab. CGU

  2. OUTLINE • Introduction • Encoding • Generator polynomial • Decoding • Parity check polynomial • Syndrome testing • Error correction • Conclusion

  3. Code Taxonomy Today

  4. Important cyclic code • BCH code • Powerful random error-correcting codes • Goley(23,12) code • Triple-error-correcting code • RS code • Nonbinary, widely used for error control in data communication and data storage

  5. a b c d ………………… x y z z a b c d …………… w x y Cyclic Code • Definition • Linearity: sum of any two codewords in the code is also a codeword • Cyclic: any cyclic shift of a codeword in the code is also a codeword 1 cyclic shift

  6. Cyclic shift • How do we make such a shift cyclic? Code polynomial form

  7. general form : Generator polynomial • be a polynomial of degree (n-k) that is a factor of • Encoded codeword where has degree (k-1)

  8. Encoding procedure 1.Multiply the message polynomial by 2.Divide by , obtaining the 3.Add to , obtaining the code polynomial

  9. Encoding example • Using the to generate a (7,4) systematic cyclic code from the message (1011) Dividing by g(X) quotient q(x) generator g(x) reminder

  10. Encoding (1 0 1 1) to a (7,4) cyclic code with Encoder (1 0 1 1)

  11. Parity-check polynomial • Definition from linear block code ~ to check if the basis still has orthogonality so we could get :

  12. no error detected error detected Syndrome testing • Purpose : to check if there’s error in received codeword • Result : syndrome polynomial • How to do the syndrome testing ?

  13. Calculation of the syndrome • Received codeword where generator polynomial syndrome quotient

  14. Syndrome calculator For a (7,4) cyclic code Transmitted codeword 0 1 1 1 0 0 1 Received codeword 0 1 1 0 0 0 1 error syndrome calculator ( 1 1 0 ) So we could get the by syndrome calculator What’s next ??

  15. Error pattern the code poly. the Rx poly. (with error) or in another form so Syndrome of received codeword is exactly the same as syndrome of error pattern !!

  16. 0 1 1 0 0 0 1 0 0 0 1 0 0 0 Decoding table for (7,4) cyclic code 0 1 1 1 0 0 1 Using the look-up table So from previous example, we could get the location of error (0 0 0 1 0 0 0) and get the corrected codeword by adding the error pattern to received codeword which is

  17. Conclusion • Cyclic code is good for error detection due to its structure • It’s so easy to implement • Convolution code next time ~

  18. [Reference] • Simon Haykin, ”Communication systems, 3rd ed.”, pp.686~pp699, John Wiley & Sons 1994 • Bernard Sklar, “Digital communications, 2nd ed.”, pp.356~pp.366, Prentice-Hall, 2002 • 盧而輝,”錯誤控制編碼”, pp.4.1~pp.4.34, 2001

More Related