data communication line codes and constrained sequences

21
Institute for Experimental Mathematics Ellernstrasse 29 45326 Essen - Germany Data communication line codes and constrained sequences A.J. Han Vinck May 18, 2003

Upload: wyanet

Post on 12-Jan-2016

16 views

Category:

Documents


0 download

DESCRIPTION

Data communication line codes and constrained sequences. A.J. Han Vinck May 18, 2003. A-synchronous arrivals: Line codes. Binary data transmitted using special signal form Important aspects: No DC content: average signal level = 0 High frequencies present in signal - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Data communication line codes and constrained sequences

Institute for Experimental Mathematics

Ellernstrasse 29

45326 Essen - Germany

Data communicationline codes and constrained

sequences

A.J. Han Vinck

May 18, 2003

Page 2: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

A-synchronous arrivals: Line codes

• Binary data transmitted using special signal form

• Important aspects:– No DC content: average signal level = 0– High frequencies present in signal – Enough transitions in signal to gain timing information

• Applications:– Optical transmission– Magnetic and Optical recording

Page 3: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Line codes for clock recovery: examples

1 0 1 1 0 0 0 0 1 0 1

Basic frequency

Basic frequency factor of 2 higher!

+5V

0

+5V

0

-5V

–Longest run = 2

–No DC Manchester code

Page 4: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

4B/5B (FDDI)

Property: 4 bits translated into 5 channel digits

at most one „o“ at beginning; at most two „o“ at end

Data code NRZI (change only when a „1“ occurs)

0000 11110

0001 01001

0010 10100

0011 10101

***

1111 11100

Result:

Longest run of „0s“ = 4

Longest run of „1s“ = 6

010001010 0101 01011

0110 01110 0111 01111

1000 10010 1001 10011

1010 10110 1011 10111

1100 11010 1101 11011

1110 11100

Page 5: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

4B/5B codes

1 0 1 1 0 0 0 0 1 0 1

DATA

NRZI

Rule NRZI: change only when a „1“ occurs

Page 6: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Run Length Limited sequences (RLL)

• maximum run of same symbols – changes in sequence used to synchronize

• minimum run of same symbols – used to improve transmision efficiency

Example: ( minimum = 2, maximum = 5 )

00111000001111001100111

Page 7: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Ex: CD (EFM) uses min=2, max=10

Note: DvD uses EFM+

Page 8: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Problem:

• Encoding into RLL sequence

– Instead of RLL sequence consider (d,k)-constrained sequence– between 2 „ones“: maximum of k zeros; minimum of d zeros– The „ones“ indicate the position of a transition in the RLL sequence

• ex: 0100010010001101 1000011100001001

Hence: RLL sequence has minimum run of d+1 and maximum of k+1

ex: the manchester code ( with efficiency ½ ) has (d,k) = (0,1)

efficiency can be improved to 0.69!

Page 9: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Why is it used in recording?–no constraint: L bits take time L/1

–with constraint: L bits take time ‘ L/C(d,k), where C(d,k) < 1

–same spacing: (d+1) units of time ‘= /(d+1)

SURPRISE:SURPRISE: ‘L/C(d,k) = L/[(d+1) C(d,k)] < L for [(d+1) C(d,k)] > 1

1

0

1

0

Page 10: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Example: d = 1

–00 00 or 11 2 d = 1

–01 000 or 111 3

–10 0000 or 1111 4

–11 00000 or 11111 5 C(d,k) = 2/3.5 = 1/1.75

–With constraint L bits take

‘L/C(d,k) = L/(d+1) C(d,k) = 0.875 L < L

SECRETSECRET:: we changed the timing!

Page 11: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Example (cont‘d)

Example: 4 symbols 00,01,10,11

encode sequence 00, 01, 10, 00, 00...

as

00, 111, 0000, 11, 00,...,

where after every symbol we change polarity.

The code is uniquely decodable!

Page 12: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

IBM disk code (d,k) = (2,7)

• 10 1000 0000 or 1111• 11 0100 0111 or 1000• 011 000100 000111 or 111000• 010 001000 001111 or 110000• 000 100100 111000 or 000111• 0011 00100100 00111000 or

11000111• 0010 00001000 00001111 or

11110000

(d,k) RLL

Homework: show that this code does not violate the constraint!

Page 13: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Cont‘d

–Efficiency = ½

–Maximum 0.51 (shown by Information theory)

Instead of using L positions to store L bits of information

we need only L/ R*(d+1) = L/1.5 positions or 1/3 less!

Page 14: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Eight to Fourteen Modulation (EFM)

Page 15: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Efficient encoding example: d=1, k=

• 000 00000 R = 3/5 = 0.6 (Maximum = 0.69)

• 001 00001• 010 00010• 011 00100 R*(d+1) = 1.2• 100 00101• 101 01000• 110 01001• 111 01010

Problem:

–What is maximum rate?

–How to encode?

Page 16: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Ex: Modified Frequency Modulation MFM (d,k) = (1,3)

• Use markov state diagram to describe sequence generation

A 0/00 B

1/01

0/10 1/01

Decoding rule:

0 x0

1 01

Efficiency = ½

Maximum = 0.55

•R*(d+1) = 1.0

Page 17: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Calculations of maximum rate C(d,k)

• Use maximum entropy of the following Markov source

• Information Theory gives the answer!Very important for practical applications: how far away from optimal?

0 0 0 0 0

1 1 1

0 1 2 d d+1 k

–C(d,k) := # of information bits/channel use

Page 18: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Shannons way out

– N(n) is the number of constrained sequences of lenght n

– The „capacity is then defined as n

)n(NloglimC 2

n

Page 19: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Example (MFM)0 0 0

1 1 1

S1 S2 S3 S4

# sequences in state S1 at time n = # sequences in state S1 at time n-2

+ # sequences in state S1 at time n-3

+ # sequences in state S1 at time n-4

A solution can be of the form: # sequences in state S1 at time n cZn

Then, we obtain the relation: Zn = Zn-2 + Zn-3 + Zn-4

A solution for Z gives the rate as C = log2 (use previous formula)

Page 20: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

problem

– For large d:

exact timing

detection of transition

erroneous shift of transition is called peak shift

(in recording)

Page 21: Data communication line codes and constrained sequences

A.J. Han Vinck

University Duisburg-Essen digital communications group

Other constrained codes

Equal weight codes: # ones is the same for every code word

example: 0011, 0101, 0110, 1001, 1010, 1100

DC-balanced: try to balance the number of ones and zeros

example: transmit 000 or 111, 010 or 101

001 or 110, 100 or 011

only 1-bit redundancy, for every length

Pulse Position modulation: weight 1 code words

example: 001, 010, 100