Method and apparatus for iterative synchronization of two or more electronic devices
First Claim
1. A method comprising:
- obtaining timing or synchronization information during a plurality of synchronization events, wherein a synchronization event is an event involving communication across a separation between at least two separated electronic circuits of a plurality of electronic circuits in order to synchronize timebases of the separated electronic circuits, the plurality of electronic circuits each having at least one component used to output a signal that represents a timebase, wherein which events occur in each of the plurality of electronic circuits according to the timebase of the respective electronic circuit;
synchronizing the timebases of the separated electronic circuits as part of at least one of the plurality of synchronization events, using the obtained timing or synchronization information; and
providing for a dynamic adjustment of offset between the timebases of the at least two separated electronic circuits at an adjustment time, wherein the dynamic adjustment is based on an amount of time since a prior synchronization event, wherein the adjustment time is distinct from each of the plurality of synchronization event times and wherein the dynamic adjustment takes into account estimated offsets for a time period between the time of one of the synchronization event times and the adjustment time, and wherein the estimated offsets are determined without communication across the separation occurring at the adjustment time.
20 Assignments
0 Petitions
Accused Products
Abstract
Dynamic adjustment of offset between timebases of separated electronic circuits is provided based on an amount of time between synchronization events, wherein a synchronization event is an event involving communication across a separation between the separated electronic circuits in order to synchronize the timebases. The dynamic adjustment can be dynamically or adaptively adjusting a margin of error to account for drift that may have occurred since a prior synchronization event. Adjustments might be done by applying a learning sequence to quantify and adjust for static or slowly varying delays between the timebases and coordinating the timebases using output of the learning sequence. The learning sequence might quantify and adjust for static or slowly varying delays and frequency drift in a communication system having a master timebase device and slave timebase devices wherein slave timebase devices are configured to adjust their local timebases to coincide with the master timebase by obtaining timing/synchronization information during one or more events, the events being communication and/or synchronization events, analyzing the timing/synchronization information to derive timing errors due to system nonidealities, and applying timing correction based on timing errors derived by the analyzing.
-
Citations
30 Claims
-
1. A method comprising:
-
obtaining timing or synchronization information during a plurality of synchronization events, wherein a synchronization event is an event involving communication across a separation between at least two separated electronic circuits of a plurality of electronic circuits in order to synchronize timebases of the separated electronic circuits, the plurality of electronic circuits each having at least one component used to output a signal that represents a timebase, wherein which events occur in each of the plurality of electronic circuits according to the timebase of the respective electronic circuit; synchronizing the timebases of the separated electronic circuits as part of at least one of the plurality of synchronization events, using the obtained timing or synchronization information; and providing for a dynamic adjustment of offset between the timebases of the at least two separated electronic circuits at an adjustment time, wherein the dynamic adjustment is based on an amount of time since a prior synchronization event, wherein the adjustment time is distinct from each of the plurality of synchronization event times and wherein the dynamic adjustment takes into account estimated offsets for a time period between the time of one of the synchronization event times and the adjustment time, and wherein the estimated offsets are determined without communication across the separation occurring at the adjustment time. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method of determining an adjustment between timebases of separated electronic circuits comprising:
-
receiving the timing signal at one of a plurality of synchronization event times, a synchronization event time being a time of one of a plurality of synchronization events wherein a synchronization event is an event involving communication across a separation between at least two separated electronic circuits of a plurality of electronic circuits in order to synchronize the timebases of the separated electronic circuits, the plurality of electronic circuits each having at least one component used to output a timing signal that represents a timebase, wherein which events occur in each of the plurality of electronic circuits according to the timebase of the respective electronic circuit; applying a learning sequence to quantify and adjust for static delays or varying delays between the timebases; and coordinating the timebases using output of the learning sequence at an adjustment time that is distinct from each of the plurality of synchronization events event times, such that at least one component used to output a signal that represents the timebase is altered so that the timebase is altered, thus taking into account estimated offsets for the time period between the time of at least one of the synchronization events and the adjustment time and wherein the estimated offsets are determined without communication across the separation occurring at the adjustment time. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method of quantifying a frequency drift between a master timer of a master device and a slave timer of a slave device, the master device and the slave device being devices that include electronic elements that rely on timing, the method comprising:
-
obtaining a plurality of timestamps, each timestamp obtained from a packet received at the master device or the slave device and each timestamp representing a time of sending the packet containing that timestamp, thereby defining a plurality of timestamp times; using at least one of the plurality of timestamps to adjust timing of one of the electronic elements; applying a learning sequence to the plurality of timestamps to quantify the frequency drift at a MAC level, such that the frequency drift can be measured independent of timing values of a PHY level, and wherein the frequency drift is quantified as of a sample time that is other than-one of the plurality of timestamp times, and wherein the learning sequence takes into account estimated frequency drifts for the nonzero time period between-one of the plurality of timestamp times and the sample time, without the packet being received at the sample time. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
-
23. A method of applying a learning sequence to quantify and adjust for static or varying delays and frequency drift in a system comprising at least a slave device and a master device, comprising:
-
obtaining timing or synchronization information during a plurality of synchronization events, wherein a synchronization event is an event involving communication across a separation between the master device and the slave device in order to synchronize a master timer and a slave timer, wherein a plurality of electronic circuits each has at least one component used to output a signal that represents a timer, wherein which events occur in each of the plurality of electronic circuits according to timer signals and wherein at least two have distinct timers and one of the plurality of electronic circuits is the master device having the master timer and one of the plurality of electronic circuits is the slave device having the slave timer; synchronizing the master timer and the slave timer, as part of at least one of the plurality of synchronization events, using the obtained timing or synchronization information; applying a one-time or periodically repeated learning sequence to derive static or varying delays in the system; correcting for such static or varying delays in the system; applying a learning sequence to learn master-slave frequency drift; and applying learned frequency drift to static or dynamic adjustment at an adjustment time that is distinct from each of the plurality of synchronization event times, thus taking into account estimated frequency drifts for a time period between a time of one of the synchronization events and the adjustment time, wherein the learned frequency drift is determined without communication across the separation. - View Dependent Claims (24, 25)
-
-
26. A method of applying a learning sequence to quantify and adjust for static or varying delays and frequency drift in a communication system comprising at least a slave timebase device and a master timebase device, wherein slave timebase devices are configured to adjust their local timebases to coincide with the master timebase device, comprising:
-
obtaining timing/synchronization information during one or more events, the events being communication and/or synchronization events involving communication between the master timebase device and the slave timebase device in order to synchronize a master timer and a slave timer, wherein a plurality of electronic circuits each has at least one component used to output a signal that represents a timer, wherein which events occur in each of the plurality of electronic circuits according to timer signals and wherein at least two have distinct timers and one of the plurality of electronic circuits is the master timebase device having the master timer and one of the plurality of electronic circuits is the slave timebase device having the slave timer; synchronizing the master timer and the slave timer as part of at least one of the communication and/or synchronization events, using the obtained timing/synchronization information; analyzing the timing/synchronization information to derive timing errors due to system nonidealities; and applying timing correction based on timing errors derived by the analyzing, wherein timing correction is applied at a correction time that is distinct from any one of the times of the one or more events, with the timing correction taking into account drifts or offsets for the nonzero time period between an event time and a correction time, without a communication between the master timebase device and the slave timebase device occurring at the correction time. - View Dependent Claims (27, 28, 29, 30)
-
Specification