IP Library Granted Patent US 9,348,321
Granted Patent B2
US 9,348,321 · App. 13/931,149 · Granted May 24, 2016

Method, time consumer system, and computer program product for maintaining accurate time on an ideal clock

Inventors: Cort Dougan (Austin, TX); Victor Yodaiken (Austin, TX)
Assignee: FINITE STATE RESEARCH LLC
G04G7/00G04R40/00H04J3/0641
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 9,348,321
App. No.
13/931,149
Granted
May 24, 2016
Kind
B2
Abstract

Methods, time consumer systems, and computer program products for maintaining accurate time on an ideal clock of a timing device are disclosed. The method includes receiving time information from a local clock, a reference clock, and one or more secondary clocks. The method further includes calculating frequencies for the local clock, the reference clock, and the one or more secondary clocks. The method further includes comparing the calculated frequencies of the reference clock to the calculated frequencies of the one or more secondary clocks. The method further includes detecting a holdover and/or a compromise situation based on the comparison. The method further includes syntonizing the ideal clock to one or more of the calculated frequencies.

Claims (54)

1. A method for maintaining accurate time on an ideal clock of a timing device, comprising:

receiving time information from a local clock, a reference clock, and one or more secondary clocks;

calculating frequencies for the local clock, the reference clock, and the one or more secondary clocks;

comparing the calculated frequency of the reference clock to the calculated frequencies of the one or more secondary clocks;

determining whether the calculated frequency of the reference clock has changed with respect to the calculated frequencies of the one or more secondary clocks;

detecting a compromise situation in response to determining that the calculated frequency of the reference clock has changed with respect to the calculated frequencies of the one or more secondary clocks; and

in response to detecting the compromise situation, syntonizing the ideal clock to one or more of the calculated frequencies of the one or more secondary clocks.

2. The method of claim 1 , further comprising:

syntonizing the ideal clock to the calculated frequency of the reference clock if no compromise situation is detected.

3. The method of claim 1 , wherein the one or more secondary clocks comprise one or more National Institute for Standards and Technology Internet clocks.

4. The method of claim 1 , wherein the calculated frequencies of the reference clock, the one or more secondary clocks, and the local clock comprise best fit frequencies based on the received time information from the reference clock, the one or more secondary clocks, and the local clock, respectively.

5. The method of claim 1 , further comprising:

storing the calculated frequencies.

6. The method of claim 1 , further comprising:

initiating a holdover mode in response to detecting a compromise situation.

7. The method of claim 6 , further comprising:

detecting that the compromise situation has ended; and

in response to detecting that the compromise situation has ended:

terminating the holdover mode, and

syntonizing the ideal clock to the calculated frequency of the reference clock.

8. The method of claim 1 , wherein the time information from the one or more secondary clocks is received over a packet network.

9. The method of claim 8 , wherein the received time information from the one or more secondary clocks is subject to a packet delay variation.

10. The method of claim 9 , wherein the receiving of the time information from the one or more secondary clocks is periodic, further comprising:

using historical data of the packet delay variation to determine a minimum expected response time delay, and

wherein the calculating frequencies comprises using an interval of time, the interval of time beginning at a first time where the time information from the one or more secondary clocks is received with the minimum expected response time delay and ending at a second time where the time information from the one or more secondary clocks is received with the minimum expected response time delay.

11. A time consumer system for maintaining accurate time on an ideal clock comprising:

a processor, and

a computer readable memory coupled to the processor, wherein the computer readable memory contains computer readable program instructions that configure the processor to:

receive time information from a local clock, a reference clock, and one or more secondary clocks;

calculate frequencies for the local clock, the reference clock, and the one or more secondary clocks;

compare the calculated frequency of the reference clock to the calculated frequencies of the one or more secondary clocks;

determine whether the calculated frequency of the reference clock has changed with respect to the calculated frequencies of the one or more secondary clocks;

detect a compromise situation in response to determining that the calculated frequency of the reference clock has changed with respect to the calculated frequencies of the one or more secondary clocks; and,

in response to detecting the compromise situation, syntonize the ideal clock to one or more of the calculated frequencies of the one or more secondary clocks.

12. The time consumer system of claim 11 , wherein the processor is further configured to:

syntonize the ideal clock to the calculated frequency of the reference clock if no compromise situation is detected.

13. The time consumer system of claim 11 , wherein the time consumer comprises one of:

a server computer and a base station for a communications system.

14. The time consumer system of claim 11 , wherein the processor is further configured to

calculate best fit frequencies for the reference clock, the one or more secondary clocks, and the local clock based on the received time information from the reference clock, the one or more secondary clocks, and the local clock, respectively.

15. The time consumer system of claim 11 , further comprising a database, wherein the calculated frequencies are stored in the database.

16. A computer program product comprising a non-transitory computer readable medium having stored thereon executable computer instructions for maintaining accurate time in an ideal clock of a timing device, the computer instructions are configured to cause a computer to perform operations comprising the following steps:

receiving time information from a local clock, a reference clock, and one or more secondary clocks;

calculating frequencies for the local clock, the reference clock, and the one or more secondary clocks;

comparing the calculated frequency of the reference clock to the calculated frequencies of the one or more secondary clocks;

determining whether the calculated frequency of the reference clock has changed with respect to the calculated frequencies of the one or more secondary clocks;

detecting a compromise situation in response to determining that the calculated frequency of the reference clock has changed with respect to the calculated frequencies of the one or more secondary clocks; and,

in response to detecting the compromise situation, syntonizing the ideal clock to one or more of the calculated frequencies of the one or more secondary clocks.

17. The computer program product of claim 16 , wherein the computer instructions are further configured to cause the computer to perform operations comprising the following step:

syntonizing the ideal clock to the calculated frequency of the reference clock if no compromise situation is detected.

18. The computer program product of claim 16 , wherein the computer instructions are further configured to cause the computer to perform operations comprising the following step:

calculating best fit frequencies for the reference clock, the one or more secondary clocks, and the local clock based on the received time information from the reference clock, the one or more secondary clocks, and the local clock, respectively.

19. The computer program product of claim 16 , wherein the computer instructions are further configured to cause the computer to perform operations comprising the following step:

storing the calculated frequencies.

Assignments (2)
MERGER Recorded Feb 27, 2019
From: FINITE STATE RESEARCH, LLC
To: FINITE STATE MACHINE LABS INC.
Reel/Frame 048452/0530 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2015
From: DOUGAN, CORT; YODAIKEN, VICTOR
To: FINITE STATE RESEARCH LLC
Reel/Frame 034675/0174 →
Continuity (2)
Provisional Application 61666101 · Jun 29, 2012
Related Publication 20140003199A1 · Jan 2, 2014