announcements - university of california, berkeleybwrcs.eecs.berkeley.edu/classes/ee290c_s04/... ·...

14
1 EE290C - Spring 2004 Advanced Topics in Circuit Design High-Speed Electrical Interfaces Lecture 17 Components Principles of Error Control Borivoje Nikolic March 16, 2004. 2 Announcements Project phase 1 is posted Due April 1, 20-min presentation in class and a written report. When simulating, use a 127-bit PR sequence

Upload: others

Post on 22-Jun-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Announcements - University of California, Berkeleybwrcs.eecs.berkeley.edu/Classes/EE290C_S04/... · Announcements Project phase 1 is posted Due April 1, 20-min presentation in class

1

EE290C - Spring 2004Advanced Topics in Circuit DesignHigh-Speed Electrical Interfaces

Lecture 17Components

Principles of Error ControlBorivoje NikolicMarch 16, 2004.

2

Announcements

Project phase 1 is postedDue April 1, 20-min presentation in class and a written report.When simulating, use a 127-bit PR sequence

Page 2: Announcements - University of California, Berkeleybwrcs.eecs.berkeley.edu/Classes/EE290C_S04/... · Announcements Project phase 1 is posted Due April 1, 20-min presentation in class

2

3

Project

ConnectorLine card trace

Package

Chip

Backplane trace Backplane via

Package-to-board via

Line card via

20”

4

Channel: S21

0 1 2 3 4 5 60

0.2

0.4

0.6

0.8

1

GHz

|H|

|H|=0.16 (victim = blue, FEXT = green, NEXT = red)

0 1 2 3 4 5 6-60

-50

-40

-30

-20

-10

0

GHz

|H| [

dB]

|H|=-16.13 [dB] (victim = blue, FEXT = green, NEXT = red)

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 10-8

0

0.2

0.4

0.6

0.8

1

1.2

sec

step

R

Raw Step Response

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

x 10-8

0

0.2

0.4

0.6

0.8

1

sec

sbR

Raw Single Bit Response (victim = blue, FEXT = green, NEXT = red)

Page 3: Announcements - University of California, Berkeleybwrcs.eecs.berkeley.edu/Classes/EE290C_S04/... · Announcements Project phase 1 is posted Due April 1, 20-min presentation in class

3

5

Normalized SBR @ 6.25Gb/s 2-PAM & 4-PAM Nyquists

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

x 10-8

0

0.2

0.4

0.6

0.8

1

sec

sbR

--

Raw

Raw Single Bit Response

2-PAM SBR 4-PAM SBR

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

x 10-8

0

0.2

0.4

0.6

0.8

1

sec

sbR

--

Raw

Raw Single Bit Response

6

2-PAM 6.25Gb/s with Tx, Rx Eq

Tx Eq only Tx + Rx Eq

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

x 10-10

-0.5

-0.4

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

second

With no xtalk, no RFC

56ps 37mV

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

x 10-10

-0.5

-0.4

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

second

With no xtalk, with RFC

70ps 83mV

Page 4: Announcements - University of California, Berkeleybwrcs.eecs.berkeley.edu/Classes/EE290C_S04/... · Announcements Project phase 1 is posted Due April 1, 20-min presentation in class

4

7

4-PAM 6.25Gb/s with Tx, Rx Eq (prbs sequence)

Tx Eq only Tx + Rx Eq

0 0.5 1 1.5 2 2.5 3

x 10-10

-0.5

-0.4

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

second

With no xtalk, no RFC

76ps 52mV

0 0.5 1 1.5 2 2.5 3

x 10-10

-0.5

-0.4

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

second

With no xtalk, with RFC

80ps 57mV

8

Error Control

TextbooksLin, Costello, “Error Control Coding”Wicker, “Error Control Systems”Houghton, “Error Control for Engineers”

Basics in e.g.Lee, Messerschmitt, “Digital Communications”Proakis, “Digital Communications”

Page 5: Announcements - University of California, Berkeleybwrcs.eecs.berkeley.edu/Classes/EE290C_S04/... · Announcements Project phase 1 is posted Due April 1, 20-min presentation in class

5

9

Error Control

Error DetectionThe receiver has the capability to detect any code block that contains fewer than a predetermined number of symbols in error.

Forward Error CorrectionA system of error control for data transmission wherein the receiver has the capability to detect and correct any code block that contains fewer than a predetermined number of symbols in error.

10

Error Control

Transmitter has to add redundancy to the transmitted dataThis defines the code rate

k - user bitsn - channel bitsr – redundancy bits, r = n – kR = k/n – code rate

Example: parity check in RS-2328 bits of data are replaced with 9-bit codewords256 symbols are chosen out of a set of 512 that satisfy the property of having even parity R=8/9

Page 6: Announcements - University of California, Berkeleybwrcs.eecs.berkeley.edu/Classes/EE290C_S04/... · Announcements Project phase 1 is posted Due April 1, 20-min presentation in class

6

11

Hamming Distance

Minimum number of bits that has to be flipped in one codeword to get a valid codeworddmin = 2 in parity If we receive a message we can detect that it is invalid, but we have no way to figure out which one was sentThere are 9 nearest neighbors with d = 1

12

Error Detection vs. Error Correction

To detect t errors:dmin > tt = 1 for parity code (dmin = 2)

To correct t errors: dmin > 2tParity code cannot correct errorsNeed dmin = 3: the correct symbol is one bit away, others are at least 2 bits away

Page 7: Announcements - University of California, Berkeleybwrcs.eecs.berkeley.edu/Classes/EE290C_S04/... · Announcements Project phase 1 is posted Due April 1, 20-min presentation in class

7

13

Hamming Bound

There is a total of 2n symbols, 2k are validHow to maximize dmin?Number of neighbors with distance d:

If the code corrects t errors( )!!

!dnd

n−

( )kn

t

d dndn −

=≤

−∑ 2

!!!

0

14

Hamming Codes

There are some codes that exactly satisfy Hamming bound, or perfect codes (n, k, t):

(3, 1, 1), (7, 4, 1), (15, 11, 1)

Hamming codes: (2m – 1, 2m – m – 1, 1)Golay code: (23, 12, 3) – corrects up to 3 errors

Page 8: Announcements - University of California, Berkeleybwrcs.eecs.berkeley.edu/Classes/EE290C_S04/... · Announcements Project phase 1 is posted Due April 1, 20-min presentation in class

8

15

Perfect codes

No extra symbols in 2n symbol spaceEvery symbol is remapped to a valid symbolNo ability to detect more than t errorsE.g. Golay code (23, 12, 3) can be extended to (24, 12, 3) by adding a parity bit

16

Gilbert Bound

The smallest symbol space (2n) that guarantees the existence of a t-error correcting code with k user bits

( )kn

t

d dndn −

=≤

−∑ 2

!!!2

0

Most codes are between the Hamming and Gilbert bounds

If a message has more if t detected errors, it will not be recovered (but will be flagged)

Page 9: Announcements - University of California, Berkeleybwrcs.eecs.berkeley.edu/Classes/EE290C_S04/... · Announcements Project phase 1 is posted Due April 1, 20-min presentation in class

9

17

Some Coding Terms

Block codes are memorylessCombinatorial mapping

Systematic codes include the user data and add some redundancyConvolutional codes have finite memory

We introduced them before Viterbi decoders

18

Syndrome

n – k decoded redundant bitsIf no errors syndrome is 0If there are errors, syndrome points to bit position(s)To find a position of one error in 15 bits, need 4 extra bits – (15, 11, 1) code

Page 10: Announcements - University of California, Berkeleybwrcs.eecs.berkeley.edu/Classes/EE290C_S04/... · Announcements Project phase 1 is posted Due April 1, 20-min presentation in class

10

19

Coding Gain

Example: DVB-S2 (satellite TV broadcast)DVB-S1 uses QPSKDVB-S2 – more programs, HDTV, in the same band, same dish, same satellites8-PSK loses 2.5dB in SNR at required BER, to increase spectral efficiency by 50%

Forward error correction has to pick up the BER loss better than 2.5dB loss in SNR

20

Coding Gain

BER

SNR

Coded

Uncoded

Codinggain

@ specified BER

Page 11: Announcements - University of California, Berkeleybwrcs.eecs.berkeley.edu/Classes/EE290C_S04/... · Announcements Project phase 1 is posted Due April 1, 20-min presentation in class

11

21

Error types

Random errorsAdditive white Gaussian noise (AWGN)

Error burstsTiming errors (e.g. PLL cycle slip, loss of lock, …)Supply disturbancesThundersThermal asperities in disk drivesScratches on a CD, DVD

Bursts are randomized by using interleaving

22

Error Detection Schemes

ParityTwo-dimensional (horizontal/vertical) parity

Vertical parity (checksum) is added at the end of a block1 1 0 0 1 1 0 1 11 0 0 1 0 0 0 1 10 0 0 1 1 1 1 0 01 1 1 1 0 1 0 1 0-------------------------------1 0 1 1 0 1 1 1 Detected parity1 0 0 1 0 1 0 1 Encoded parity

Cyclic redundancy check (CRC)

Page 12: Announcements - University of California, Berkeleybwrcs.eecs.berkeley.edu/Classes/EE290C_S04/... · Announcements Project phase 1 is posted Due April 1, 20-min presentation in class

12

23

Coding Overhead

Byte-level parity adds 11% of overhead for detecting one errorThis expands the required bandwidth (depending on the modulation schemeIncreases in-band noise

BER

SNR

Coded

Uncoded

Codinggain

24

Error Detection Schemes

Cyclic redundancy checkSymbol (message) bits are di, i = 1, m – 1.Add n bits such that the complete message is divisible by a generator polynomial (GP) in the GF(2n)

The complete message

∑−

=α=

1m

ni

iidCRC

01

0=α∑

=

m

i

iid

Page 13: Announcements - University of California, Berkeleybwrcs.eecs.berkeley.edu/Classes/EE290C_S04/... · Announcements Project phase 1 is posted Due April 1, 20-min presentation in class

13

25

CDC Detection Performance

Usially a 2-byte (16-bit) CRC is used with 1k-2k blocks0.8% - 1.6% overheadDetects all error bursts shorter than the length of GPErrors can be corrected as well

26

Error Correction

Correction by parity More about advanced parity checks later

Correction with CRCReed-Muller codes

Low rate

Reed-Solomon codesMost common in practice

Page 14: Announcements - University of California, Berkeleybwrcs.eecs.berkeley.edu/Classes/EE290C_S04/... · Announcements Project phase 1 is posted Due April 1, 20-min presentation in class

14

27

Reed-Solomon Codes

Invented ~1960A special case of BCH (Bose-Chaudhury-Hocquenghem) codesStarts with bits, di

And replaces with symbols, pi

01

0=α∑

=

m

i

iid

01

0=α∑

=

m

i

iip