Digital Communication and Error Correcting Codes Timothy J. Schulz Professor and Chair Engineering Exploration Fall, 2004 Department of Electrical and Computer Engineering Department of Electrical and Computer Engineering Digital Data • ASCII Text A B C D E F . . . 01000001 01000010 01000011 01000100 01000101 01000110 . . . Digital Coding for Error Correction 00101001110101101010101000 Department of Electrical and Computer Engineering Digital Sampling 000010001000001011011011010000111110111111111 011 010 001 000 111 110 101 100 Digital Coding for Error Correction 00101001110101101010101000 Department of Electrical and Computer Engineering Digital Communication • Example: Frequency Shift Keying (FSK) – Transmit a tone with a frequency determined by each bit: s t b cos 2 f 0t 1 b cos 2 f1t Digital Coding for Error Correction 00101001110101101010101000 Department of Electrical and Computer Engineering Digital Channels Binary Symmetric Channel 0 1-p 0 p p 1 1 1-p Error probability: p Digital Coding for Error Correction 00101001110101101010101000 Department of Electrical and Computer Engineering Error Correcting Codes 3 channel bits per 1 information bit: rate = 1/3 encode book information bits channel bits 0 1 000 111 decode book channel bits information bits 000 001 010 011 100 101 110 111 0 0 0 1 0 1 1 1 Digital Coding for Error Correction 00101001110101101010101000 Department of Electrical and Computer Engineering Error Correcting Codes information bits channel code received bits decoded bits 0 0 1 0 1 000 000 111 000 111 010 000 100 001 110 0 0 0 0 1 5 channel errors; 1 information error Digital Coding for Error Correction 00101001110101101010101000 Department of Electrical and Computer Engineering Error Correcting Codes • An error will only be made if the channel makes 2 or three errors on a block of 3 channel bits ccc cce cec cee ecc ece eec eee 0.5 probability no errors (1-p)(1-p)(1-p) = one error (1-p)(1-p)(p) = one error (1-p)(p)(1-p) = two errors (1-p)(p)(p) = one error (p)(1-p)(1-p) = two errors (p)(1-p)(p) = two errors (p)(p)(1-p) = three errors (p)(p)(p) = error probability = 3p2 1-3p+3p2-p3 p-2p2+p3 p-2p2+p3 p2-p3 p-2p2+p3 p2-p3 p2-p3 p3 – 2p3 0.45 0.4 0.35 bit error probability situation 0.3 0.25 0.2 0.15 0.1 0.05 0 Digital Coding for Error Correction 0 0.1 0.2 0.3 channel error probability 0.4 0.5 00101001110101101010101000 Department of Electrical and Computer Engineering Error Correcting Codes • Codes are characterized by the number of channel bits (M) used for (N) information bits. This is called an N/M code. • An encode book has 2N entries, and each entry is an M-bit codeword. • A decode book has 2M entries, and each entry is an N-bit information-bit sequence. Digital Coding for Error Correction 00101001110101101010101000