digital comm v

9
Fundamentals of Electrical Engineering Error Correcting Codes Correcting errors

Upload: manuel-jaime-aliaga-pinto

Post on 21-Dec-2015

14 views

Category:

Documents


0 download

DESCRIPTION

comunication digital

TRANSCRIPT

Fundamentals ofElectrical Engineering

Error Correcting Codes

• Correcting errors

Digital Communication Modelb(n)

SinkSourceDecoder

s(m)b(n)Source Source

Coder

s(m)ChannelCoder

DigitalChannel

ChannelDecoder

c(l) c(l)

c = GbSource coder:

G =

���������

1 0 0 00 1 0 00 0 1 00 0 0 11 1 1 00 1 1 11 1 0 1

���������

Example: (7,4) Hamming code

dmin � 3

How to Correct Errors?

c = GbSource coder:

Channel decoder receives �c = c� e

s = H�c

G =

���������

1 0 0 00 1 0 00 0 1 00 0 0 11 1 1 00 1 1 11 1 0 1

���������

H =

�1 1 1 0 1 0 00 1 1 1 0 1 01 1 0 1 0 0 1

lower portion of G

identity

= H(c� e) = Hc�He

= HGb�He

= He

Decoder forms

How to Correct Errors?

c =

�b

- - - - -Glowerb

�c = Gb

H =�Glower I

G =�

IGlower

= 0Hc = HGb = [(Glowerb)� (Glowerb)]

Error Correction1. For each received “codeword”, form

2. If non-zero, find error sequence

3. Add error sequence to received “codeword”

4. Find data bits in corrected codeword

H�c = He

e He1000000 1010100000 1110010000 1100001000 0110000100 1000000010 0100000001 001

�c� e = (c� e)� e = c

H =

�1 1 1 0 1 0 00 1 1 1 0 1 01 1 0 1 0 0 1

Do we win?• Remember, to send data at the same rate, we must

scale the bit interval duration by the coding efficiency factor E = K/N

-5 0 5 10

10-8

10-6

10-4

10-2

100

Signal-to-Noise Ratio (dB)

Prob

abilit

y of

Blo

ck E

rror

Uncoded (K=4)

(7,4) Code

Hamming Codes• For a (N, K) code, number of single-bit errors = N

• Number of non-zero values for

• To correct any single-bit error, must have

• Maximally efficient when equality applies

N K E3 1 0.337 4 0.57

15 11 0.7331 26 0.8463 57 0.90

127 120 0.94

2N�K � 1 � N, N �K = number of coding bits

2N�K � 1 = N

H�c = 2N�K � 1

But…• The efficient Hamming code can correct all single-

bit errors

• When do double-bit errors become more likely than single-bit errors?

double-bit errors more likely whenpe

1� pe>

2N � 1

�N

1

�pe(1� pe)N�1

� �� �single-bit error probability

?<

�N

2

�p2

e(1� pe)N�2

� �� �double-bit error probability

Error-Correcting Codes• Even though the channel introduces transmission

errors, error correcting codes can repair the errors

• However, it would seem that errors are always present in digital communication