IP Library Granted Patent US 12712703
Granted Patent B2
US 12712703 · App. 18/420,822 · Granted Aug 18, 2026

Clock synchronization using digitally controlled oscillator

Inventors: Natan Manevich (Nesher, IL); Dotan David Levi (Kiryat Motzkin, IL); Nir Laufer (Zoran, IL); Wojciech Waśko (Młynek, PL); Maciej Machnikowski (Reda, PL); Doron Fael (Zichron Yaakov, IL); Arnon Sattinger (Zichron Yaakov, IL)
Assignee: Mellanox Technologies, Ltd
H04L7/0012H04L7/04
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12712703
App. No.
18/420,822
Granted
Aug 18, 2026
Kind
B2
Abstract

In one embodiment, a system, includes a digitally controlled oscillator (DCO) to generate a local clock signal having a local clock frequency, and a hardware clock to maintain a value indicative of a local clock time advancing at a frequency proportional to the local clock frequency of the local clock signal generated by the DCO, and clock synchronization circuitry to receive from a device an indication of a remote clock time, generate a digital control command to at least partially correct for a difference between the remote clock time and the local clock time, and provide the digital control command to the DCO, wherein the DCO is to adjust the local clock frequency responsively to the digital control command.

Claims (61)

1 . A system, comprising:

a digitally controlled oscillator (DCO) to generate a local clock signal having a local clock frequency; and

a hardware clock to maintain a value indicative of a local clock time advancing at a frequency proportional to the local clock frequency of the local clock signal generated by the DCO; and

clock synchronization circuitry to:

receive from a device an indication of a remote clock time;

generate a digital control command to at least partially correct for a difference between the remote clock time and the local clock time; and

provide the digital control command to the DCO, wherein the DCO is to adjust the local clock frequency responsively to the digital control command.

2 . The system according to claim 1 , wherein the digital control command indicates a new clock frequency to which to change the local clock frequency by the DCO.

3 . The system according to claim 1 , wherein the digital control command indicates a frequency adjustment to be made by the DCO to the local clock frequency.

4 . The system according to claim 1 , wherein the digital control command includes an Inter-Integrated Circuit (I 2 C) protocol command.

5 . The system according to claim 1 , wherein in response to the local clock time being less than the remote clock time, the clock synchronization circuitry is to generate:

a first digital control command to increase the clock frequency from a first frequency X to a second frequency Y; and

a second digital control command to decrease the clock frequency to a third frequency Z, which is greater than the first frequency X.

6 . The system according to claim 1 , wherein in response to the local clock time being greater than the remote clock time, the clock synchronization circuitry is to generate:

a first digital control command to decrease the clock frequency from a first frequency X to a second frequency P; and

a second digital control command to increase the clock frequency to a third frequency Q, which is less than the first frequency X.

7 . The system according to claim 1 , wherein the clock synchronization circuitry is to generate the digital control command to at least partially correct for the difference between the remote clock time and the local clock time while limiting an adjustment to the local clock frequency by the DCO.

8 . The system according to claim 1 , wherein the clock synchronization circuitry is to adjust the value of the hardware clock and/or adjust at least one parameter used to compute the local clock time from the value of the hardware clock responsively to the difference between the remote clock time and the local clock time resulting in a limit being exceeded.

9 . The system according to claim 1 , wherein the clock synchronization circuitry is to:

exchange time synchronization packets with the device over a network; and

generate the digital control command to at least partially correct for the difference between the remote clock time and the local clock time, based on the time synchronization packets.

10 . The system according to claim 1 , further comprising a pulse per second (PPS) input port to:

receive a PPS signal from the device; and

generate a timestamp from the hardware clock responsively to receiving a pulse of the PPS signal, wherein the clock synchronization circuitry is to generate the digital control command to at least partially correct for the difference between the remote clock time and the local clock time, based on the timestamp.

11 . The system according to claim 10 , wherein the device is a Global Navigation Satellite System (GNSS).

12 . The system according to claim 1 , further comprising a network device including:

the DCO; and

a network interface controller (NIC) application-specific integrated circuit (ASIC).

13 . The system according to claim 12 , further comprising a host device to connect to the network device, wherein the host device includes at least part of the clock synchronization circuitry to execute software to:

receive from the device the indication of the remote clock time; and

generate the digital control command to at least partially correct for the difference between the remote clock time and the local clock time.

14 . The system according to claim 12 , further comprising a host device to connect to the network device, wherein:

the host device includes a first part of the clock synchronization circuitry to execute software to receive from the device the indication of the remote clock time; and

the NIC ASIC includes a second part of the clock synchronization circuitry to execute firmware to generate the digital control command to at least partially correct for the difference between the remote clock time and the local clock time.

15 . The system according to claim 12 , wherein the NIC ASIC includes the clock synchronization circuitry to execute firmware to:

receive from the device the indication of the remote clock time; and

generate the digital control command to at least partially correct for the difference between the remote clock time and the local clock time.

16 . The system according to claim 12 , wherein the NIC ASIC includes the clock synchronization circuitry to:

receive from the device the indication of the remote clock time; and

generate the digital control command to at least partially correct for the difference between the remote clock time and the local clock time.

17 . The system according to claim 12 , wherein the NIC ASIC includes ports to send packets over a network, wherein DCO is connected to the ports and is to output the local clock signal towards the ports to provide a clock source for the ports.

18 . The system according to claim 1 , wherein the DCO is a unitary device to:

receive the digital control command; and

output the local clock signal with the local clock frequency in response to the digital control command.

19 . The system according to claim 18 , wherein the DCO is to output the local clock signal with the local clock frequency without receiving an input signal from an oscillator, which is external to the DCO.

20 . The system according to claim 1 , wherein the DCO is a temperature compensated crystal oscillator (TCXO).

21 . The system according to claim 1 , wherein the DCO is an oven-controlled crystal oscillator (OCXO).

22 . A system, comprising:

a digitally controlled oscillator (DCO) to generate a local clock having a local clock frequency;

a hardware clock to maintain a time-of-day value advancing at a frequency proportional to the local clock frequency of the local clock output by the DCO; and

clock synchronization circuitry to:

synchronize the hardware clock to a remote device;

generate a digital control command; and

provide the digital control command to the DCO, wherein the DCO is to adjust the local clock frequency responsively to the digital control command.

23 . A method, comprising:

generating, by a digitally controlled oscillator (DCO), a local clock signal having a local clock frequency;

maintaining a value indicative of a local clock time advancing at a frequency proportional to the local clock frequency of the local clock signal generated by the DCO;

receiving from a device an indication of a remote clock time;

generating a digital control command to at least partially correct for a difference between the remote clock time and the local clock time;

providing the digital control command to the DCO; and

adjusting, by the DCO, the local clock frequency responsively to the digital control command.