## Are you sure?

This action might not be possible to undo. Are you sure you want to continue?

**36: Communication Systems Engineering
**

Lectures 14: Cyclic Codes and error detection

Eytan Modiano

.g.011} is a cyclic code • Cyclic codes can be dealt with in the very same way as all other LBC’s – Generator and parity check matrix can be found • A cyclic code can be completely described by a generator string G – All codewords are multiples of the generator string • In practice. so are all cyclic shifts of c – E.110.Cyclic Codes • A cyclic code is a linear block code where if c is a codeword. {000. cyclic codes are often used for error detection (CRC) – Used for packet networks – When an error is detected by the received. it requests retransmission .101.

single bit – Cyclic redundancy check (CRC) .g..Error detection techniques • Used by the receiver to determine if a packet contains errors • If a packet is found to contain errors the receiver requests the transmitter to re-send the packet • Error detection techniques – Parity check E.

Parity check codes k Data bits r Check bits • Each parity check is a modulo 2 sum of some of the data bits Example: c1 = x1 + x2 + x3 c2 = x2 + x3 + x4 c3 = x1 + x2 + x4 .

encoded frame contains even number of 1's Receiver counts number of ones in frame – An even number of 1’s is interpreted as no errors – An odd number of 1’s means that an error must have occured A single error (or an odd number of errors) can be detected An even number of errors cannot be detected Nothing can be corrected • Probability of undetected error (independent errors) N i P(un det ected ) = ∑ p (1 − p) N − i i even i N = packet size p = error prob. . otherwise it is 0 1011011 -> 1011011 1 1100110 -> 1100110 0 • • Thus.Single Parity Check Code • The check bit is 1 if frame contains odd number of 1's.

Cyclic Redundancy Checks (CRC) M k Data bits T T = M 2r + R R r Check bits M = info bits R = check bits T = codeword • A CRC is implemented using a feedback shift register Bits in Bits out .

for some A) Now when T is divided by G there will be no remainder => no errors All done using mod 2 arithmetic T = M 2r + R = A*G => M 2r = A*G + R (mod 2 arithmetic) Let R = remainder of M 2r/G and T will be a multiple of G • Choice of G is a critical parameter for the performance of a CRC .Cyclic redundancy checks T = M 2r + R • How do we compute R (the check bits)? – – – – Choose a generator string G of length r+1 bits Choose R such that T is a multiple of G (T = A*G.

G = 1001 M = 110101 => M2r = 110101000 110011 110101000 1001 01000 1001 0001100 1001 01010 1001 011 = R (3 bits) 1001 Modulo 2 Division .Example r = 3.

Checking for errors • • Let T’ be the received sequence Divide T’ by G – If remainder = 0 assume no errors – If remainder is non zero errors must have occurred Example: Send T = 110101011 Receive T’ = 110101011 (no errors) No way of knowing how many errors occurred or which bits are In error 1001 110101011 1001 01000 1001 0001101 1001 01001 1001 000 => No errors .

Mod 2 division as polynomial division .

Implementing a CRC .

If fewer than d errors occur they will always detected.Effectiveness of error detection technique • Effectiveness of a code for error detection is usually measured by three parameters: 1) minimum distance of code (d) (min # bit errors undetected) The minimum distance of a code is the smallest number of errors that can map one codeword onto another. Even more than d errors will often be detected (but not always!) 2) burst detecting ability (B) (max burst length always detected) 3) probability of random bit pattern mistaken as error free (good estimate if # errors in a frame >> d or B) – Useful when framing is lost – K info bits => 2k valid codewords – With r check bits the probability that a random string of length k+r maps onto one of the 2k valid codewords is 2k/2k+r = 2-r .

Performance of CRC • For r check bits per frame and a frame length less than 2r-1. or 3 errors (d > 3) All bursts of errors of r or fewer bits Random large numbers of errors with prob.2. the following can be detected 1) 2) 3) All patterns of 1. 1-2-r • Standard DLC's use a CRC with r=16 with option of r=32 – CRC-16. G = X16 + X15 + X2 +1 = 11000000000000101 .

Physical Layer Error Characteristics Most Physical Layers ( communications channels) are not well described by a simple BER parameter • Most physical error processes tend to create a mix of random & bursts of errors • A channel with a BER of 10-7 and a average burst size of 1000 bits is very different from one with independent random errors • Example: For an average frame length of 104 bits – random channel: E[Frame error rate] ~ 10-3 – burst channel: E[Frame error rate] ~ 10-6 • • • Best to characterize a channel by its Frame Error Rate This is a difficult problem for real systems .

- cnuploaded byravishankar03
- Systematicuploaded byPratik Dhage
- ch10uploaded bychetanajitesh76
- crcwikiuploaded byPratik Mahajan
- Handout 11(1)uploaded byAmmar khan
- Reviewer in Dcn_chap10uploaded byJane Caverte
- Data Link Layeruploaded bySpriha Batar
- 6 Cyclic Codesuploaded bySrinidhi Upadhyaya
- Mã vònguploaded byAkira Kuroda
- Error Control Codinguploaded byvinayganturi
- MZOWAuploaded byKifaru Malale
- צפינה- מצגת 2 | Cyclic Codesuploaded byRon
- lec2uploaded byabhilasha01varshney
- An3_derivat.ro_retele-locale_RC CA Curs 08 1 Error Detectionuploaded byGeorge Datcu
- Cyclic Redundancy Check - Wikipedia, The Free Encyclopediauploaded bykirukirukiru
- TSB 2012-008-O v2.PDF (Download)uploaded byInnovite
- Solution of HW6uploaded bymiguel
- Data Comm Rev Q1uploaded bywirdina
- Flac Descriptionuploaded byexfmln
- Bst Handout e07uploaded byProdigious Jatt
- Modbusuploaded bysudirmanpriyo
- Fix Cyclic Redundancy Check Erroruploaded byAnonymous S3wsIptcO
- PID5030.pdfuploaded byPATEL SWAPNEEL
- STM32F051R8T6uploaded byciaociao345
- Ch4Flow and Error Controluploaded byThedemonizer Pratik
- Komdat Chapter 10 Englishuploaded byAditiya Muaffan
- DCC2010 FPGA BasedTransceiver KD6OZHuploaded byboisolivier
- FPGA Implementation of 32uploaded bySharath Kumar S S
- What is Retransmission, ARQ and HARQ_ - TelecomHalluploaded byTomta Franck
- Bluetooth Communication Using a Touchscreen Interface With the Raspberry Piuploaded byAris SuryoNegoro

- Formation Football 101uploaded byngt881
- Radioshack Charger Instructionsuploaded byngt881
- Poool Elecuploaded byngt881
- typical_characteristics.pdfuploaded byngt881
- About Nicd Batteriesuploaded byngt881
- Physics of Resonanceuploaded byngt881
- cHDCuploaded byngt881
- Ship Store Code Practiceuploaded byngt881
- LOU #1 Amended 27juin12 G FR Copyuploaded byngt881
- Formation Football 101uploaded byngt881
- Paper59 TCXO Comparisonuploaded byngt881
- Milsuploaded byngt881
- Batteriesuploaded byngt881
- What is Neutral in Electricityuploaded byngt881
- nickelmetalhydride_appmanuploaded byngt881
- chm39uploaded byngt881
- W3000uploaded byngt881
- Rev Protectionuploaded byngt881
- Soundwavesuploaded byngt881
- Seriesvs.parauploaded byngt881
- Lead-Acid Battery Infouploaded byngt881
- Transistor.switchesuploaded byngt881
- Batt Testeruploaded byngt881
- Temper Atuploaded byngt881
- Non Rechargeable FAQuploaded byngt881
- Crystal Resonator Basic Theoryuploaded byngt881
- The 555 Timer ICuploaded byngt881
- Design and Safety Considerationsuploaded byngt881
- relaydrv2uploaded byngt881
- PICkit2 User Guide 51553c Jpuploaded byngt881

Close Dialog## Are you sure?

This action might not be possible to undo. Are you sure you want to continue?

Loading