You are on page 1of 41

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/301684136

Delay-Locked Loops: Basics

Presentation · April 2016


DOI: 10.13140/RG.2.1.2273.8320/1

CITATIONS READS

0 2,463

1 author:

Woorham Bae
Ayar Labs
58 PUBLICATIONS   204 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Agile hardware design methodology View project

Silicon Photonics View project

All content following this page was uploaded by Woorham Bae on 23 August 2016.

The user has requested enhancement of the downloaded file.


Delay-Locked Loops
1. Basics
Woorham Bae
wrbae@isdl.snu.ac.kr

Dept. of Electrical Engineering and Computer Science


Seoul National Univ.
Delay-Locked Loop (DLL)

• Matching TIMING at separate two points by adjusting DELAY

• Negative feedback loop


• DLL does not self-generate CKin CKout
Delay
the output clock Element

Controller

Sensor

2015
2 CONFIDENTIAL
DLL Building Block: Delay Line

• Delay element with a control port

• Control signal adjusting delay

• Typically, tuning RC time constant CKin Delay CKout


Element

VCDL D-V Curve


Control
Signal
Delay

Sensor
Vctrl

2015
3 CONFIDENTIAL
DLL Building Block: Phase Detector

• Phase detector (PD) for sensing the phase difference

• Linear phase detector, bang-bang phase detector

CKin Delay CKout


PD Gain Curve Element

Vavg
Controller

ΔΦ
Sensor

2015
4 CONFIDENTIAL
DLL Building Block: Loop Filter

• Loop filter for controlling delay element according to the


sensed phase difference

• For DLL, only an integrator is CKin CKout


Delay
sufficient: will be discussed Element

after a while

Controller

Sensor

2015
5 CONFIDENTIAL
Comparison to Phase-Locked Loop

• Voltage-controlled oscillator vs. Voltage-controlled delay line


VCO VCDL
Voltage Frequency Source Phase
input output phase output

Voltage
input

Phase
Domain
Model
VCO VCDL
Voltage Frequency Source Phase
input output phase output

Phase Voltage
Integrate output input
1/s 2015
6 CONFIDENTIAL
Comparison to Phase-Locked Loop

• PLL has a pole at zero frequency inherently, but DLL does not

• Stability and settling issues are relaxed in DLL

• Jitter does not accumulate in VCDL

• But VCDL cannot adjust frequency: difficult to generate


different output frequency

2015
7 CONFIDENTIAL
Types and Applications of DLL

• Type I
– Multi-phase clock generation, zero-delay buffer

– Only one input

– PD compares input and output of the VCDL

• Type II
– Data recovery

– Two inputs (i.e. data and clock)

– VCDL delays only one input

– PD compares VCDL output and the other input

2015
8 CONFIDENTIAL
DLL Applications - 1

• Multi-phase clock generation (Type I)

CK0 CK90 CK180 CK270

CKin CKout

0.25UI 0.25UI 0.25UI 0.25UI


VCDL
Vctrl

CP + LF

Phase
Detector

2015
9 CONFIDENTIAL
DLL Applications - 2

• Zero-delay buffer (Type I)

• Driving the clock to a large load without adding skew

• Resolving the skew problem due to on-chip clock tree

CKin CKout
VCDL

Vctrl Buffer

CP + LF

Phase
Detector

2015
10 CONFIDENTIAL
DLL Applications - 3

• Data recovery (Type II)

• Recovering data by sampling at the eye center

• Jitter is not filtered

Data Phase CKout


Detector

Vctrl
CP + LF VCDL

CKin

2015
11 CONFIDENTIAL
Building Block Examples: PD - 1

• XOR phase detector

• Locking point at p/2, not zero


Vavg

CK A
Out
CK B
-p/2 p/2 ΔΦ

CK A

CK B

Out A B A B A

Phase-locked A lead B lead


2015
12 CONFIDENTIAL
Building Block Examples: PD - 2

• Phase-frequency detector (PFD)

• Flip-flops to remember the edges PFD has been comparing

• Detects cycle slipping

D UP: A lead CK A Vavg


Q
CK A
R
CK B
-p
Reset
UP p ΔΦ
D R
Q DN
CK B DN: B lead

2015
13 CONFIDENTIAL
Building Block Examples: PD - 3

• For a special case of type-II, when one of the input is not a CLK

• Hogge phase detector: Logic level Data is required


DN Data

CLK
UP

Data D Q D Q
A
B A

CLK DN

Vavg
UP

p
-p ΔΦ
2015
14 CONFIDENTIAL
Building Block Examples: PD - 4

• For a special case of type-II, when one of the input is not a CLK

• Alexander phase detector, or Bang-bang phase detector


CLK Late Case CLK Early Case

CLK

Data

Vavg
edge data edge_l edge data edge_l

p
-p ΔΦ XOR XOR XOR XOR

DN=0 UP=1 DN=1 UP=0


2015
15 CONFIDENTIAL
Building Block Examples: Delay

• For most of CMOS circuits, RC time constant determines circuit


BANDWIDTH and DELAY (Time constant  1/bandwidth)

• Upper limit by process or power Tuning Range


• Lower limit:

Delay
Bandwidth
limitation
• VCDL bandwidth should be
higher than the clock frequency Power/Process
limitation
even when the VCDL is SLOW

Vctrl
• Inductors make it different

2015
16 CONFIDENTIAL
Building Block Examples: Delay

• Delay element examples

Vctrl,p

- Out +
Out Out
In In+ In-
In

IBIAS
Vctrl,n

R Tuning C tuning
R tuning
2015
17 CONFIDENTIAL
Type-I DLL Transfer Function

VCDL dout=din+KVCDLVctrl

CKin CKout din dout


KVCDL

1/sC
Vctrl Vctrl

Charge
Pump
KPDCP

Phase
Detector
2015
18 CONFIDENTIAL
Type-I DLL Transfer Function

• PD detects difference dout=din+KVCDLVctrl


between din and dout
din dout

KPDCP(din-dout)

KPDCP

2015
19 CONFIDENTIAL
Type-I DLL Transfer Function

• Charge-pump and loop filter dout=din+KVCDLVctrl


capacitor integrate the
din dout
difference

KPDCP(din-dout)/sC
1/sC

KPDCP

2015
20 CONFIDENTIAL
Type-I DLL Transfer Function

• ALL-PASS Equating dout = din +


KVCDLKPDCP(din-dout)/sC
din dout
KVCDL
dout/din = 1

1/sC
Vctrl

KPDCP

2015
21 CONFIDENTIAL
One Common Mistake

• Some papers mislead that dout=din+KVCDLVctrl


DLL exhibits low-pass
din dout
• Because they miss out KVCDL

1/sC
Vctrl
• Can the VCDL delay Vctrl?
KPDCP

[Ph.D Dissertation, GeorgiaTech, 2005]

2015
22 CONFIDENTIAL
More Realistic Model

• Latency by VCDL should be dout=din+KVCDLVctrl


considered
din dout
s  K PDCP KVCDL / C KVCDL
H ( s) 
s  e - sT K PDCP KVCDL / C

s  K PDCP KVCDL / C 1/sC


H ( s)  Vctrl
s(1 - TK PDCP KVCDL / C )  K PDCP KVCDL / C

 z  K PDCP KVCDL / C KPDCP e-sT


K PDCP KVCDL
p 
1 - TK PDCP KVCDL / C

2015
23 CONFIDENTIAL
More Realistic Model

• Transfer function in no longer flat

• Jitter amplification

H(s) Jitter
Amplification

z  K PDCP KVCDL / C
K PDCP KVCDL
p 
1 - TK PDCP KVCDL / C
z p 

2015
24 CONFIDENTIAL
Type-II DLL Transfer Function

• Type-II has two inputs: when jitters of CK1 and CK2 are fully
correlated, TF of type-II is same as that of type-I

CK2 CK2
PD+CP PD+CP

LF LF

Vctrl Vctrl
CKin CK1
VCDL VCDL
CKout CKout
Type-I DLL Type-II DLL
2015
25 CONFIDENTIAL
Type-II DLL Transfer Function

• Two transfer functions: CK1-to-OUT, CK2-to-OUT

CK2 CK2
KPDCP KPDCP
d2

1/sC 1/sC

Vctrl Vctrl
CK1 CK1
KVCDL KVCDL
d1 CKout CKout

2015
26 CONFIDENTIAL
Type-II DLL Transfer Function - 1

• CK1-to-OUT

CK2 CK2
KPDCP KPDCP

-KPDCPdout

1/sC 1/sC

Vctrl Vctrl
CK1
KVCDL KVCDL
d1 CKout d1 dout

2015
27 CONFIDENTIAL
Type-II DLL Transfer Function - 1

• CK1-to-OUT

CK2
KPDCP

-KPDCPdout

1/sC

-KPDCPdout/sC
d1 dout

2015
28 CONFIDENTIAL
Type-II DLL Transfer Function - 1

• CK1-to-OUT

• HIGH PASS

dout s CK2
( s)  KPDCP
d1 s  K PDCP KVCDL / C
-KPDCPdout

1/sC

KVCDL
d1 dout
d1 - KPDCPKVCDLdout/sC = dout
2015
29 CONFIDENTIAL
Type-II DLL Transfer Function - 2

• CK2-to-OUT

CK2 d2
KPDCP KPDCP
d2

KPDCP(d2-dout)
1/sC

Vctrl
CK1 CK1
KVCDL
CKout dout

2015
30 CONFIDENTIAL
Type-II DLL Transfer Function - 2

• CK2-to-OUT

d2
KPDCP

1/sC

CK1 KPDCP(d2-dout)/sC
dout

2015
31 CONFIDENTIAL
Type-II DLL Transfer Function - 2

• CK2-to-OUT

• LOW PASS

d2
d 2  K PDCP KVCDL / sC  dout (1  K PDCP KVCDL / sC ) KPDCP

dout K PDCP KVCDL / C


( s) 
d2 s  K PDCP KVCDL / C
1/sC

CK1
KVCDL
dout
KPDCPKVCDL(d2-dout)/sC=dout
2015
32 CONFIDENTIAL
Jitter Sources in DLL

• Jitter induced in VCDL: thermal noise, supply noise

• PD/CP noise: thermal noise, dithering noise, quantization noise

Vdd noise
XOR PD CK A UP
BBPD
CK A CK B DN
Out
CK B
UP
Out UP DN
DN
Vctrl
Delay variation Vctrl
Jitter at
output dout
dout

2015
33 CONFIDENTIAL
Noise Transfer Function: VCDL

dout=din+KVCDLVctrl dout=din+KVCDLVctrl
dn dn
din dout din dout
KVCDL

1/sC -doutKPDCP
Vctrl

KPDCP KPDCP

2015
34 CONFIDENTIAL
Noise Transfer Function: VCDL

dout=din+KVCDLVctrl dout=din+KVCDLVctrl
dn dn
din dout din dout
KVCDL
-doutKPDCP/sC
1/sC 1/sC
Vctrl

KPDCP KPDCP

2015
35 CONFIDENTIAL
Noise Transfer Function: VCDL

Equating dout = dn -
doutKVCDLKPDCP/sC dn
din dout
KVCDL
dout s
( s) 
dn s  K PDCP KVCDL / C
1/sC
Vctrl
• VCDL induced jitter is high-
pass filtered KPDCP

2015
36 CONFIDENTIAL
Noise Transfer Function: PD

dout=din+KVCDLVctrl dout=din+KVCDLVctrl

din dout din dout


KVCDL KVCDL
(in-doutKPDCP)/sC
1/sC 1/sC
in in

KPDCP KPDCP

2015
37 CONFIDENTIAL
Noise Transfer Function: PD

Equating dout = KVCDL(in-doutKPDCP)/sC

din dout
KVCDL
dout KVCDL / C
( s) 
in s  K PDCP KVCDL / C
1/sC
in
• PD induced jitter is low-pass
filtered KPDCP

2015
38 CONFIDENTIAL
Loop Bandwidth Trade-Off

• Although the input-to-output transfer function is unity, DLL has


the trade-off similar to PLL

• High-pass: VCDL jitter

• Low-pass: PD, CP jitter

• In order to minimize the overall jitter, the loop bandwidth


should be chosen carefully

2015
39 CONFIDENTIAL
References
[1] Jia, Cheng. A Delay-Locked Loop for Multiple Clock Phases/Delays Generation. Ph.D. Diss.
Georgia Institute of Technology, 2005.
[2] Bae, Woorham. Circuit Techniques for Low-Power, Area-Efficient Wireline Transceivers. Ph.D. Diss.
Seoul National University, 2016.

2015
40 CONFIDENTIAL
View publication stats

You might also like