Module 4: Metrics & Methodology Topic 3: Source Synchronous Timing
Module 4: Metrics & Methodology Topic 3: Source Synchronous Timing
clk
in
Tsetup
Thold
H. Heck 2008
Section 4.3
EE 564
H. Heck 2008
Section 4.3
EE 564
Contents
Synchronous Bus Limitations Source Synchronous Concept & Advantages Operation Timing Equations Maximum Transfer Rate Summary References Appendix: Timing Equation Derivation
H. Heck 2008
Section 4.3
EE 564
FROM CORE
f max = 1
Tcycle ,min
Max frequency is defined by min cycle time Min cycle time is limited by maximum delays. Can we find a way to remove the dependence on absolute delays?
H. Heck 2008 Section 4.3 4
TO CORE
CLK D Q
CLK D Q
EE 564
PLL
Delay Line
I/O Clock
PLL
Sys Clock
Sys Clock
The transmitting agent sends the clock (a.k.a. strobe), along with the data signal. Overview:
Drive the clock and data signals with a known phase relationship. Design the clock and data signals to be identical in order to preserve the phase relationship. As long as the phase relationship can be maintained, the lines can be much longer.
H. Heck 2008 Section 4.3 5
EE 564
DATA @ Rx
300 ps
CLK/CLK# @ Rx
H. Heck 2008 Section 4.3
Tsu = 500 ps
EE 564
In real systems, the difference in delay between signals can be made much smaller than the absolute delays. Therefore, with source synchronous signaling we can expect
to achieve higher performance to be able to use longer traces
H. Heck 2008
Section 4.3
EE 564
H. Heck 2008
Section 4.3
EE 564
Operation
Typically, there is one strobe signal (or pair of signals) per two bytes of data signals.
Varies by design
PLL
Data
Deskew
Delay Line
I/O Clock
90o
PLL
Sys Clock
Sys Clock
Data
Deskew
PLL
Delay Line
I/O Clock
PLL
Sys Clock
Sys Clock
DATA
Setup Hold Setup Hold
STROBE
H. Heck 2008
Section 4.3
EE 564
STROBE/STROBE
Thmar
@ DRIVER
DATA
Tsuskew: flight time skew for setup Tsumar: setup margin Tvb: min driver phase offset (setup)
H. Heck 2008
Thskew: flight time skew for hold Thmar: hold margin Tva: min driver phase offset (hold)
10 Section 4.3
EE 564
Thmar
@ DRIVER
DATA
The sum of the timings at the receiver must not exceed the phase offsets at the driver: Tvb = Tsu + Tsuskew + Tsumar [4.3.1] Tva = Th + Thskew + Thmar [4.3.2] the transmitter design requires minimum offsets:
[4.3.3]
Tva Th + Thskew
[4.3.4]
11
Section 4.3
EE 564
Thmar
@ DRIVER
DATA
We must also satisfy the following relationship: Tbit ,min Tva + Tvb [4.3.5] Tbit: data bit width This determines our maximum transfer rate. TRmax = 1 TRmax: max transfer rate Tbit ,min [4.3.6]
H. Heck 2008 Section 4.3 12
EE 564
Question
Based on what weve covered in the previous slides, what are the implications to:
The transmitter design? The receiver design? The interconnect design?
H. Heck 2008
Section 4.3
13
EE 564
Example Tsu = 500 ps, Th = 500 ps The target transfer rate is 500 MT/s. What are reasonable flight time skew targets? SETUP HOLD
x ns x ns 1.0 ns
CLK/CLK# @ Tx DATA @ Tx
1.0 ns
x - 0.5 ns
x + 0.5 ns
DATA @ Rx CLK/CLK# @ Rx
H. Heck 2008
Tsu = 0.5 ns Th = 0.5 ns
Section 4.3
14
EE 564
As a result, source synchronous interfaces typically operate at 2x-8x the clock frequency.
Expect that ratio to scale much higher in the future.
Matching of delays (transmitter & interconnect) is a key design consideration for designing high speed source synchronous interfaces.
H. Heck 2008
Section 4.3
15
EE 564
References
S. Hall, G. Hall, and J. McCall, High Speed Digital System Design, John Wiley & Sons, Inc. (Wiley Interscience), 2000, 1st edition. W. Dally and J. Poulton, Digital Systems Engineering, Cambridge University Press, 1998. R. Poon, Computer Circuits Electrical Design, Prentice Hall, 1st edition, 1995. H.B.Bakoglu, Circuits, Interconnections, and Packaging for VLSI, Addison Wesley, 1990. H. Johnson and M. Graham, High Speed Digital Design: A Handbook of Black Magic, PTR Prentice Hall, 1993. S. Dabral and T. Maloney, Basic ESD and I/O Design, John Wiley and Sons, New York, 1998.
H. Heck 2008 Section 4.3 16
EE 564
H. Heck 2008
Section 4.3
17
EE 564
DELAY
Strobe n
From Core
Data
Receiver Chip
Data Q D Q D
To Core
H. Heck 2008
Section 4.3
18
EE 564
Operation #2
The timing path starts at the flip-flop of the transmitting agent and ends at the flip-flop of the receiving agent. The strobe signal is used as the clock input of the receiver flip-flop.
Driver Chip
From Core
DELAY
D Q Strobe n
n
From Core
D Q Data
Data Q D Q D n
The transmitted strobe (and data) signals are generated from the on-chip bus clock. Typically, the strobe is phase shifted by cycle from the data signal.
Duty cycle variations will cause variation on the phase relationship
H. Heck 2008 Section 4.3 19
Strobe
EE 564
BCLK
TBCLK /4
DCLK
Tco(STB)
DRIVER STB/STB
Tco(DATA) Tflight(STB)
DRIVER
DATA
RECEIVER STB/STB
Tflight(DATA) Tsu
RECEIVER
DATA
Tsumar
TBCLK
+ Tco ( STB ) + T flight ( STB ) Tsu Tsumar Tco ( DATA) T flight ( DATA) = 0
Section 4.3
[4.3.1a]
20
H. Heck 2008
EE 564
Setup Analysis
TBCLK 4 + Tco ( STB ) + T flight ( STB ) Tsu Tsumar Tco ( DATA) T flight ( DATA) = 0
[4.3.1a]
For a double pumped bus, the difference between Tco(DATA) and Tco(STB) is typically set to one-half of the cycle time (TDCLK/2 = TBCLK/4) to center the strobe in the data valid window.
Double pumped: source synchronous transfer rate is 2x the central clock rate.
This relationship is typically specified as Tvb (data valid before strobe ), which signifies the minimum time for which the data at the transmitter is valid prior to transmission of the strobe. Mathematically: T [4.3.2a] Tvb,min [Tco ( DATA) Tco ( STB ) ] max BCLK 4 Simplify the loop equation:
[4.3.3a]
21
EE 564
Setup Analysis #2
Tvb ,min = Tsu + T flight ( STB ) T flight ( DATA) Tsumar
[4.3.4a]
In reality, there will be some difference in flight times between data and strobe.
trace length, loading, crosstalk, ISI, etc.
H. Heck 2008
Section 4.3
22
EE 564
H. Heck 2008
Section 4.3
23
EE 564
BCLK
TBCLK/4
DCLK
Tco(STB) Tco(DATA)
DRIVER STB/STB
Tflight(STB)
DRIVER
DATA
RECEIVER STB/STB
Tflight(DATA)
Th
Thmar
RECEIVER
DATA
t TBCLK 4 + Tco ( DATA) + T flight ( DATA) Thmar Thold T flight ( STB ) Tco ( STB ) = 0
Section 4.3 24 H. Heck 2008
EE 564
Hold Analysis
TBCLK 4 + Tco ( DATA) + T flight ( DATA) Thmar Thold T flight ( STB ) Tco ( STB ) = 0
[4.3.8a]
Just as for the setup case, we need to specify the minimum phase relationship between data and strobe:
Tva ,min [Tco ( DATA) Tco ( STB ) ] min + TBCLK 4
[4.3.9a]
In addition, define the flight time skew for the hold case: Thskew [T flight ( DATA) T flight ( STB ) ] min [4.3.10a] In addition, define the flight time skew for the hold case: Tva ,min = +Thold Thskew + Thmar [4.3.11a] Note that the Thskew is defined such that it is a negative quantity, while Tva is defined to be positive. Section 4.3 H. Heck 2008
25
EE 564
Tva,min
Tcycle,min
The maximum transfer rate can be determined using the definitions for Tva and Tvb.
TBCLK = 4(Tva ,min [Tco ( DATA) Tco ( STB ) ] min ) TBCLK = 4( Tvb,min + [Tco ( DATA) Tco ( STB ) ] max )
s We can calculate the limit of TBCLK (for a double pumped bus) by adding the two equations above.
TBCLK ,min = 4( Tvb,min + Tva ,min )
H. Heck 2008 Section 4.3
[4.3.12a]
26
EE 564
BCLK
TBCLK/8
BCLK TBCLK/8 DCLK Tco(STB) DRIVER STB/STB Tflight(STB) DRIVER DATA Thold Tmargin RECEIVER DATA Tco(DATA)
Tsetup
The setup and hold equations remain the same. What changes are the Tva and Tvb definitions:
Tvb [Tco ( DATA) Tco ( STB ) ] max Tva [Tco ( DATA) Tco ( STB ) ] min +
H. Heck 2008 Section 4.3
TBCLK TBCLK
8 8
[4.3.13a] [4.3.14a]
27