



Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
A concise overview of error detection and correction techniques used in data communication. It covers types of errors such as single-bit and burst errors, redundancy, and coding schemes like block coding. Key concepts include hamming distance, parity-check codes, cyclic codes, and checksums. The document also discusses forward error correction (fec) and provides examples and questions to reinforce understanding. It is a valuable resource for students and professionals seeking to understand data integrity in communication systems. Cyclic redundancy check (crc) and its applications in networks, polynomial representation of data, and desirable characteristics of polynomial generators. It also touches on checksums and forward error correction (fec) methods.
Typology: Exams
1 / 5
This page cannot be seen from the preview
Don't miss anything!




Types of Errors Errors are caused by interference. Data rate and noise duration factor into how many bits are affected. There are 2 types of errors:
Error Detection (Block Coding) There are 2 error detection conditions in block coding:
of corrupted bits**. (In example, you can XOR two codewords and count the # of 1's.) Minimum Hamming Distance The smallest Hamming distance between all possible codewords. To guarantee detection of up to s errors in all cases, the Minimum Hamming Distance should be: d_min = s + 1 Linear Block Codes A block code where XOR of any two valid codewords results in a valid codeword. Minimum Hamming Distance of a Linear Block Code The # of 1's in the nonzero valid codeword with the smallest # of 1's. Parity-Check Code A k-bit dataword is changed to an n-bit codeword where n = k + 1. The extra bit, called the parity bit , is selected to make the total number of 1's even (adding k bits and modulo-2). Minimum Hamming distance is 2. That is, the code is a single-bit error-detecting code. Syndrome The result of adding the n-bit codeword generated by parity-check and modulo-2. If 0, then the # of 1's is even and the dataword is accepted. Else, an error is detected. Cannot detect an even # of corrupted bits. Can detect an odd # of corrupted bits. Parity-Check Code Example Assume the sender sends the dataword 1011. The code-word created from this dataword is 10111, which is sent to the receiver. We examine 5 cases:
b. x^4 + 1 c. x^7 + x^6 + 1 d. x^15 + x^14 + 1 A: a. This is a very poor choice for a generator. Any two errors next to each other cannot be detected. b. This generator cannot detect two errors that are four positions apart. The two errors can be anywhere, but if their distance is 4, they remain undetected. c. This is a good choice for this purpose. d. This polynomial cannot divide any error of type x^t + 1 if t is less than 32,768. This means that a codeword with two isolated errors that are next to each other or up to 32,768 bits apart can be detected by this generator. Odd Number of Errors A generator that contains a factor of x + 1 can detect all odd-numbered errors. Burst Errors A burst error can have two or more terms. A burst error is of the form e(x) = x^i(x^j-i
Checksum An error-detecting technique that can be applied to a message of any length. The complement of the sum. At the source, the message is first divided into m-bit units. The generator then creates an extra m-bit unit called the checksum , which is sent with the message. At the destination, the checker creates a new checksum from the combination of the message and sent checksum. If the new checksum is all 0s , then the message is accepted. (Not as strong as CRC.) One's Complement Addition Allows us to represent unsigned numbers between 0 and 2^m - 1 using only m bits. Forward Error Correction (FEC) Allows the receiver to correct errors without delay from requesting the sender to retransmit. This requires a lot of redundant bits to be sent with the data, which increases bandwidth usage. Using Hamming Distance To detect t errors, we need to have d_min = 2t + 1. For instance, if we want to correct 10 bits in a packet, we need d_min = 21. Using XOR Divide a packet into N chunks, create the XOR of all the chunks and send N + 1 chunks. If any chunk is lost or corrupted, it can be recreated at the receiver. Chunk Interleaving Combine one chunk from multiple packets to send. If the new packet goes missing, then only one chunk from each original packet goes missing instead of all of them. Combining Hamming Distance and Interleaving We first create n-bit packets that can correct t-bit errors. Then we interleave m rows and send the bits column by column. In this way, we can automatically correct burst errors up to m x t-bit errors. Compounding High- and Low-Resolution Packets Create a duplicate of each packet with low-resolution redundancy and combine this version with the next packet. If a packet is lost, then we can use the low-resolution version from the next packet.