Claims
- 1. A method of controlling data sampling clocking of asynchronous network nodes, each asynchronous network node having a local clock and transmitting and receiving packets to and from an asynchronous network according to an asynchronous network media access protocol, comprising:
designating as a master node an asynchronous network node capable of transmitting and receiving packets on the asynchronous network; designating as a slave node each non-master asynchronous network node which desires to synchronously transport packets across the asynchronous network; synchronizing a master node clock of the master node with a slave node clock of each slave node; continuously correcting each slave node clock compared with the master node clock to smooth slave clock error to an average of zero compared with the master clock as a reference using timestamp information from the master node; and deriving a derivative clock at the slave node from the continuously correcting each slave node clock to control data sampling at the slave node.
- 2. The method of claim 1, wherein the step of designating a master node is determined by assessing an ability of an asynchronous node to directly access synchronous network timing information.
- 3. The method of claim 2, wherein an asynchronous network node with direct access to synchronous network timing information is designated the master node.
- 4. The method of claim 1, wherein synchronizing further includes:
sending timestamp report messages in pairs from the master node to slave nodes at periodic intervals by:
sending a first timestamp report message from the master node to the slave nodes; recording master timestamp information at the master node at a defined time during transmission of the first timestamp report message of a pair corresponding to the transmission of the first timestamp report message of a pair; and sending a second timestamp report message from the master node to the slave nodes which contains the master timestamp information; and receiving timestamp report messages in pairs by the slave nodes from the master node by:
recording a slave timestamp at the slave nodes at a fixed time during reception of each timestamp report message to provide a recorded timestamp of the first timestamp report message at the slave nodes; comparing the recorded timestamp of the first timestamp report message of each pair at the particular slave node with the master timestamp information from within the second timestamp report message of the same pair to determine a master clock offset from the slave clock of the slave nodes; and adjusting the slave clock of the slave nodes to be synchronized with the master clock based on the master clock offset.
- 5. The method of claim 1, wherein continuously correcting includes:
using a continuing series of calculated master clock offsets from the slave clock to calculate a correction factor for the slave clock, the additional calculated master clock offsets being determined from additional received timestamp report message pairs following the synchronization step; and tracking error of the slave clock as compared with the master clock and modifying slave clock frequency to smooth the error and create a continuously corrected slave clock with an average error of zero as compared to the master clock.
- 6. The method of claim 1, wherein the step of deriving a derivative clock includes selecting a pair of integers to be used to divide in serial stages a synchronized tracked slave clock to a lower frequency to control the data sampling clocking.
CROSS-REFERENCE TO RELATED APPLICATION(S)
[0001] This patent application claims the benefit of the filing date of U.S. Provisional Patent Application No. 60/197,224 filed Apr. 14, 2000; and U.S. Provisional Patent Application No. 60/196,002 filed Apr. 7, 2000; the entire contents of both of which are hereby expressly incorporated by reference.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60196002 |
Apr 2000 |
US |
|
60197224 |
Apr 2000 |
US |