hardware support for clock synchronization in distributed systems martin horauer university of...

10
Hardware Support for Clock Synchronization in Distributed Systems Martin Horauer University of Technology Vienna Department of Computer Technology

Upload: marvin-brooks

Post on 19-Jan-2018

213 views

Category:

Documents


0 download

DESCRIPTION

Requirements  Hardware Clock  small oscillator drift  good stability  fine grained  rate and state adjustable  Access to an external time reference  Timestamp Messages  tight coupling of timestamp mechanisms to the network medium Hardware Support OCXO or XO + Rate Synchronization Clock ASIC UTCSU

TRANSCRIPT

Page 1: Hardware Support for Clock Synchronization in Distributed Systems Martin Horauer University of Technology Vienna Department of Computer Technology

Hardware Support for Clock Synchronization in Distributed Systems

Martin Horauer

University of Technology ViennaDepartment of Computer Technology

Page 2: Hardware Support for Clock Synchronization in Distributed Systems Martin Horauer University of Technology Vienna Department of Computer Technology

Objectives

LANs (hardware)

Internal Clock Synchronization:

| Cp(t) - Cq(t) |

External Clock Synchronization:

| Cp(t) - t | 1ns

distance10m 100m 1 km

1s

1ms

precision,accuracy NTP

LANs (software)

GPS

PLL

LANs (hardware)

Page 3: Hardware Support for Clock Synchronization in Distributed Systems Martin Horauer University of Technology Vienna Department of Computer Technology

Requirements Hardware Clock

small oscillator drift good stability fine grained rate and state adjustable

Access to an external time reference

Timestamp Messages tight coupling of timestamp mechanisms to the network medium

Hardware Support

OCXOor

XO + Rate Synchronization

Clock ASICUTCSU

Page 4: Hardware Support for Clock Synchronization in Distributed Systems Martin Horauer University of Technology Vienna Department of Computer Technology

Ts = Cp(t)

TRmin

= Cq(t)

end-to-endmin

end-to-endmax

t

t

TransmitterNode p

ReceiverNode q

TRmax

= Cq(t)

Queing delay, NetworkController FIFOs, etc.

Overload, NetworkController FIFOs, etc.

Software Timestamping

Cq(t) - Cp(t) TR – TS - [ - ]

= max - min

Page 5: Hardware Support for Clock Synchronization in Distributed Systems Martin Horauer University of Technology Vienna Department of Computer Technology

Ts = Cp(t)

TRmin

= Cq(t)

min

t

t

TransmitterNode p

ReceiverNode q

Timestamping with HardwareSupport

Page 6: Hardware Support for Clock Synchronization in Distributed Systems Martin Horauer University of Technology Vienna Department of Computer Technology

min max

t

t

TransmitterNode p

ReceiverNode q

TRmax

= Cq(t)

Ts = Cp(t)

Timestamping with HardwareSupport

Cq(t) - Cp(t) TR – TS - [ - ]

= max - min

Page 7: Hardware Support for Clock Synchronization in Distributed Systems Martin Horauer University of Technology Vienna Department of Computer Technology

Hardware Support for Clock Synchronization

U TC SU

NetworkController

T im estam pLogic

PhysicalLayer

Device

C PU M EM O R Y

PC I Bus

PC I-PC IBridge

PC ITarget

local PC I Bus

Page 8: Hardware Support for Clock Synchronization in Distributed Systems Martin Horauer University of Technology Vienna Department of Computer Technology

Clock Synchronization PacketTimestamping

Preamble SFD Dest. Addr. Src. Addr. TF User Data FCS

Transmit TS FCSTransmit Timestamping:

Preamble SFD Dest. Addr. Src. Addr. TF User Data FCSTransmit TS

FCSReceive TS

Receive Timestamping:

Transmit TS FCS

Dest. Addr. Src. Addr. TF User DataTransmit TS FCS

Receive CRC check:=

FCSReceive TS

Page 9: Hardware Support for Clock Synchronization in Distributed Systems Martin Horauer University of Technology Vienna Department of Computer Technology

Hardware Support for Clock Synchronization

UTCSU

Netw orkContro ller

Physica lLayer

Device

C PU M EM O R Y

PC I Bus

Page 10: Hardware Support for Clock Synchronization in Distributed Systems Martin Horauer University of Technology Vienna Department of Computer Technology

Prototype Implementation