IP Library › Granted Patent US 12,316,442
Granted Patent B2
US 12,316,442 · App. 17/559,737 · Granted May 27, 2025

Synchronizing a real-time clock and a network clock

Inventor: Kishore Kasichainula (Phoenix, AZ)
Assignee: Intel Corporation
H04J3/0667H04L7/048
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 12,316,442
App. No.
17/559,737
Granted
May 27, 2025
Kind
B2
Abstract

System and techniques for synchronizing a real-time clock and a network clock are described herein. A network device maintains an always running time (ART) replica of an ART in a compute system. The network device samples network time updates (e.g., precision time protocol messages) and the ART replica to produce error correction of the ART replica to the network time. The error correction is written to memory of the compute device to enable high precision synchronization between clock sources local to the compute device and the network time.

Claims (57)

1. A network interface device for synchronizing a real-time clock and a network clock, the network interface device comprising:

an input line configured to receive an always-running timer (ART) clock signal from an ART for a compute device that includes the network interface;

an ART replica configured to produce an ART replica clock signal;

network time circuitry configured to receive a network time from a network node;

error correction circuitry configured to:

compare the ART clock signal to the ART replica clock signal to produce an offset;

compute an error correction from the network time and the output of the ART replica; and

write the offset and the error correction to working memory of the compute device.

2. The network interface device of claim 1 , wherein the error correction circuitry includes a proportional integration control loop, and wherein, to compute the error correction, the error correction circuitry is configured to use the proportional integration control loop.

3. The network interface device of claim 2 , wherein the error correction includes an error accumulation.

4. The network interface device of claim 2 , wherein the error correction includes a multiplier.

5. The network interface device of claim 1 , wherein the compute node includes a processor configured to:

read the offset and the error correction from the working memory;

obtain a central processing unit (CPU) time based on the ART; and

determine a system time for the compute device by applying the offset and the error correction to the CPU time.

6. The network interface device of claim 5 , wherein the processor is invoked to read the offset and the error, and obtain the CPU time by a single CPU instruction.

7. The network interface device of claim 1 , wherein the ART is included in a power management component (PMC) of the compute device.

8. The network interface device of claim 1 , wherein, to compute the error correction, the error correction circuitry is configured to:

sample the network time and the ART replica clock signal continually at a frequency, wherein the network time is received continually; and

compute the error correction after each sampling of the network time.

9. The network interface device of claim 8 , wherein the frequency is greater than ten megahertz.

10. A network appliance for synchronizing a real-time clock and a network clock, the network appliance comprising:

memory including instructions; and

processing circuitry that, when configured by the instructions, performs operations comprising:

receiving a signal from an always-running timer (ART) for a compute device in which the appliance is located;

running an ART replica;

comparing the ART signal to output of the ART replica to produce an offset;

receiving a network time from a network node external to the compute device;

computing an error correction from the network time and the output of the ART replica; and

writing the offset and the error correction to working memory of the compute device.

11. The network appliance of claim 10 , wherein computing the error correction includes using a proportional integration control loop.

12. The network appliance of claim 11 , wherein the error correction includes an error accumulation.

13. The network appliance of claim 11 , wherein the error correction includes a multiplier.

14. The network appliance of claim 10 , wherein an operating system of the compute device generates a system time by:

reading the offset and the error correction from the working memory;

obtaining a central processing unit (CPU) time based on the ART; and

determining the system time for the compute device by applying the offset and the error correction to the CPU time.

15. The network appliance of claim 14 , wherein a single CPU instruction is used to read the offset and the error, and to obtain the CPU time.

16. The network appliance of claim 10 , wherein the ART is included in a power management component (PMC) of the compute device.

17. The network appliance of claim 10 , wherein computing the error correction includes:

sampling the network time and the ART replica output continually at a frequency, wherein the network time is received continually; and

computing the error correction after each sampling of the network time.

18. The network appliance of claim 17 , wherein the frequency is greater than ten megahertz.

19. A system for synchronizing a real-time clock and a network clock, the system comprising:

means for receiving, in a network interface, a signal from an always-running timer (ART) for a compute device;

means for running, in the network interface, an ART replica;

means for comparing the ART signal to output of the ART replica to produce an offset;

means for receiving, at the network interface, a network time from a network node;

means for computing, by the network interface, an error correction from the network time and the output of the ART replica; and

means for writing, by the network interface, the offset and the error correction to working memory of the compute device.

20. The system of claim 19 , wherein the means for computing the error correction include means for using a proportional integration control loop.

21. The system of claim 20 , wherein the error correction includes an error accumulation.

22. The system of claim 20 , wherein the error correction includes a multiplier.

23. The system of claim 19 , wherein the means for computing the error correction includes:

means for sampling the network time and the ART replica output continually at a frequency, wherein the network time is received continually; and

means for computing the error correction after each sampling of the network time.

24. The system of claim 23 , wherein the frequency is greater than ten megahertz.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2022
From: KASICHAINULA, KISHORE
To: INTEL CORPORATION
Reel/Frame 058605/0987 →
Continuity (1)
Related Publication 20220116132A1 · Apr 14, 2022
References Cited (9)
US 10122484B1 · Kasichainula · 2018 [cited by examiner]
US 20190020465A1 · Carlstedt · 2019 [cited by examiner]
US 20190045475A1 · Kasichainula · 2019 [cited by applicant]
US 20210117418A1 · Dadwal · 2021 [cited by examiner]
NL 2033555 · 2024 [cited by applicant]
WO 2013163793 · 2013 [cited by applicant]
“Netherlands Application Serial No. 2033555, Office Action mailed Nov. 29, 2022”, With English machine translation, 5 pgs. [cited by applicant]
“Netherlands Application Serial No. 2033555, Search Report mailed Oct. 18, 2023”, With English claims, 12 pgs. [cited by applicant]
Coleman, James, “Emerging COTS architecture support for real-time TSN ethernet”, Applied Computing, ACM. pp. 258-265, (Apr. 8, 2019), 8 pages. [cited by applicant]