A line card of a network box receives a sync input signal and generates a first time stamp based on receipt of the sync input signal. The line card generates a system clock signal in a phase-locked loop and generates a sync output signal by dividing the system clock signal in a divider circuit. The sync output signal is fed back to an input terminal as a sync feedback signal. A time stamp is generated based on receipt of the sync feedback signal. The line card determines a time between the sync input signal and the sync feedback signal based on the first time stamp and the second time stamp. The timing of the sync output signal is adjusted based on the time difference using a coarse time adjustment by adjusting a divide ratio of the divider circuit and using a fine time adjustment in the phase-locked loop based on a residue of a remainder of the time difference not accounted for by the coarse time adjustment.
|
1. A method comprising:
generating a sync output signal, the sync output signal indicative of indicating when to update a time of day counter;
feeding back the sync output signal to an input terminal as a sync feedback signal;
determining a time difference between a sync input signal and the sync feedback signal;
adjusting a timing of the sync output signal based on the time difference;
generating a local system clock signal in a phase-locked loop;
generating the sync output signal by dividing the local system clock signal;
adjusting a divide value of a divider to adjust the timing of the sync output signal based on the time difference; and
determining a residue of the time difference according to a remaining time difference not accounted for by adjusting the divide value.
7. A method comprising:
generating a sync output signal, the sync output signal indicative of indicating when to update a time of day counter;
feeding back the sync output signal to an input terminal as a sync feedback signal;
determining a time difference between a sync input signal and the sync feedback signal;
generating a local system clock signal in a phase-locked loop;
generating the sync output signal by dividing the local system clock signal; and
adjusting a timing of the sync output signal based on the time difference by: making a coarse adjustment based on the time difference, the coarse adjustment being a change to a divide value used to generate the sync output signal by dividing the local system clock signal; determining a residue based on a remaining time difference after the coarse adjustment; and making a fine adjustment based on the residue by adjusting the phase-locked loop.
6. An apparatus comprising:
a first input terminal to receive an sync input signal;
a phase-locked loop to generate a local system clock signal;
a divider circuit to divide the local system clock signal and generate a sync output signal;
a time of day counter coupled to the sync output signal and configured to update a count value responsive to the sync output signal;
a second input terminal coupled to receive the sync output signal as a feedback sync signal;
arithmetic logic to determine a time difference between the sync input signal and the sync output signal;
control logic to adjust a timing of the sync output signal based on the time difference;
determine an adjustment to a divide value of the divider circuit to adjust the timing of the sync output signal based on the time difference; and
to determine a residue of the time difference based on the time difference and the adjustment to the divide value.
14. An apparatus comprising:
a first input terminal to receive an sync input signal;
a phase-locked loop to generate a local system clock signal;
a divider circuit to divide the local system clock signal and generate a sync output signal;
a time of day counter coupled to the sync output signal and configured to update a count value responsive to the sync output signal;
a second input terminal coupled to receive the sync output signal as a feedback sync signal;
arithmetic logic to determine a time difference between the sync input signal and the sync output signal;
control logic configured to: adjust a timing of the sync output signal based on the time difference; determine a coarse adjustment to the timing of the sync output signal based on the time difference, the coarse adjustment being a change to a divide value used in the divider circuit to generate the sync output signal; and determine a fine adjustment according to a residue based on a remaining time difference between the sync input signal and the sync output signal after the coarse adjustment.
2. The method as recited in
adjusting the phase-locked loop based on the residue as part of adjusting the timing of the sync output signal.
3. The method as recited in
generating a first time stamp based on receipt of the sync input signal;
generating a second time stamp based on receipt of the sync feedback signal; and
generating the time difference by determining a difference between the first time stamp and the second time stamp.
4. The method as recited in
adjusting the timing of the sync output signal based on the time difference to obtain a zero delay sync output signal such that a time difference between the sync input signal and the sync output signal is substantially zero.
5. The method as recited in
after adjusting the timing of the sync output signal based on the time difference, waiting for a predetermined time period; and
responsive to an end of the predetermined time period, readjusting the timing of the sync output signal based a newly determined time difference between a later sync output signal and a later sync input signal.
9. The method as recited in
making the fine adjustment by adjusting a feedback divider divide value in a feedback divider of the phase-locked loop.
10. The apparatus as recited in
adjust the phase-locked loop based on the residue as part of adjusting the timing of the sync output signal.
11. The apparatus as recited in
a first time stamper to provide a first time stamp indicative of receipt of the sync input signal;
a second time stamper to generate a second time stamp indicative of receipt of the feedback sync signal; and
wherein the time difference is based on a difference between the first time stamp and the second time stamp.
12. The apparatus as recited in
control logic to adjust a timing of the sync output signal based on the time difference to obtain a zero delay sync output signal such that a time difference between the sync input signal and the sync output signal is substantially zero.
13. The apparatus as recited in
a timer circuit to determine a predetermined number of system clock cycles; and
responsive to the predetermined number of system clock cycles having occurred after adjusting the timing of the sync output signal based on the time difference, the control logic is responsive to readjust the timing of the sync output signal based on a newly determined time difference between a later sync output signal and a later sync input signal.
15. The apparatus as recited in
16. The apparatus as recited in
|
This application is a continuation of U.S. patent application Ser. No. 16/836,706, filed Mar. 31, 2020, entitled “Secondary Phase Compensation Assist for PLL IO Delay,” naming Vivek Sarda as inventor, which application is incorporated herein by reference in its entirety.
This application relates to the application entitled “Secondary Phase Compensation Assist for PLL TO Delay Aligning SYNC Signal to System Clock Signal”, naming Vivek Sarda as inventor, patent application Ser. No. 16/836,713, filed Mar. 31, 2020, which application is incorporated herein by reference in its entirety.
This invention relates to network timing and more particularly to reducing errors in network timing signals.
Network communication boxes use timing protocols to ensure time of day (ToD) counters in the network are synchronized. SYNC signals are used to update time of day counters at the same time in the network. Any delay/offset and process, voltage, temperature (PVT) variation between the SYNC lines being supplied to the ToD counters in each line card in the network box results in an error that is classified as Continuous Time Error (CTE). The CTE budget for a network box is 5 ns for Class D type network boxes. Reducing sources of timing error in network boxes would give greater flexibility to designers to meet the CTE budget.
Accordingly, in one embodiment a method includes receiving a SYNC input signal and generating a SYNC output signal, the SYNC output signal indicating when to update a time of day counter. The method further includes feeding back the SYNC output signal to an input terminal as a SYNC feedback signal and determining a time difference between the SYNC input signal and the SYNC feedback signal. A timing of the SYNC output signal is adjusted based on the time difference.
In another embodiment an apparatus includes a first input terminal to receive an input SYNC signal. A phase-locked loop generates a system clock signal. A divider circuit divides the system clock signal and generates a SYNC output signal. A time of day counter is coupled to the SYNC output signal and updates a count value responsive to the SYNC output signal. A second input terminal is coupled to receive the SYNC output signal as a feedback SYNC signal. Arithmetic logic determines a time difference between the SYNC input signal and the SYNC output signal and control logic adjusts a timing of the SYNC output signal based on the time difference.
In another embodiment a method includes receiving a SYNC input signal and generating a first time stamp based on receipt of the SYNC input signal. The method further includes generating a local system clock signal in a phase-locked loop and generating a SYNC output signal by dividing the local system clock signal in a divider circuit. The SYNC output signal is fed back to an input terminal as a SYNC feedback signal. A time stamp is generated based on receipt of the SYNC feedback signal. A time difference is determined between the SYNC input signal and the SYNC feedback signal based on the first time stamp and the second time stamp. The timing of the SYNC output signal is adjusted based on the time difference using a coarse time adjustment by adjusting a divide ratio of the divider circuit and using a fine time adjustment using the phase-locked loop based on a residue of a remainder of the time difference not accounted for by the coarse time adjustment.
The present invention may be better understood, and its numerous objects, features, and advantages made apparent to those skilled in the art by referencing the accompanying drawings.
The use of the same reference symbols in different drawings indicates similar or identical items.
The master timing card 103 supplies a SYNC signal and system clock signal (SYSCLK) to the slave line card 101 generated using PLL 117 and dividers (not shown). The SYNC signal is also referred to as the FSYNC (frame sync) signal in certain contexts as the signal has different names (SYNC or F SYNC) at the system level or integrated circuit level inside the network box. The signal will be referred to as the SYNC signal herein for ease of reference. The master timing card 103 supplies the SYSCLK and SYNC signal to all of the master line cards 105 over backplane 119. The SYNC signal is a global signal inside the network system box 100 that signifies the right moment/edge for the Time of Day (ToD) counters 111 to rollover. The SYNC signal has a frequency range of 1 kHz to pp2s (pulse per 2 seconds). In many network systems the SYNC signal is 1 pulse per second (1PPS). SYNC is an integer divided down and edge aligned version of the system clock signal SYSCLK. The SYNC output from the master timing card (TC) is the global SYNC used by all the line cards (LC) for their ToD rollover alignment. The various ToD counters 111 contain the same value and turnover at the same time based on the SYNC signal. Each of the line cards 101 and 105 generate the SYNC signal by dividing the SYSCLK generated by PLL 121 in a divider (not shown in
The exact position of the SYNC edge is derived using a precision time protocol (PTP) servo loop that uses the time information inside the incoming Synchronous Ethernet (SyncE) packet stream to the slave line card 101.
The slave line card and the master timing card also have a closed loop PTP servo system in accordance with the IEEE 1588 protocol that corrects the position of the SYNC signal over process, voltage, and temperature (PVT) and aligns the SYNC signals distributed by the master timing card 203 to the time stamps of the incoming packet stream to the slave line card. The servo loop ensures that the slave line card and the master timing card are synchronized. The slave line card 101 and the master timing card 103 exchange information in the closed loop system to adjust the CLK and SYNC pair on the master timing card such that the slave line card ToD is aligned with the network ToD of the chosen incoming data stream on data_in 116. The PTP servo loop adjusts the timing of SYNC by adjusting PLL 117 so that the slave line card ToD is aligned in frequency and phase to the upstream ToD received by the slave line card on data_in 116. The distributed SYSCLK is supplied as a reference clock to the PLL 121 within each of the line cards and the line card PLLs generate a local SYSCLK and SYNC signal that is phase and frequency aligned with the distributed SYSCLK and SYNC signal. The master line cards 105 are duplicates (up to 64 copies) of the slave line card 101 but without the closed loop PTP servo loop. In other words, the distribution of the CLK/SYNC pair to the master line cards 105 is open loop (without the PTP closed loop adjustments).
Referring to
Any delay/offset and PVT variation between the SYNC lines to the ToD's in each line card and the slave timing card in the network box results in an error that is classified as Continuous Time Error (CTE). The CTE budget for a network box is 5 ns for Class D type network boxes. One source of error is that the SYNC signal and SYSCLK supplied by the local PLLs in the line cards still have to transit through the circuitry of the PLL to the ToD counters. A mismatch exists in SYNC signal delivery due to PVT differences between the line cards including the slave line card and the master line cards. That mismatch impacts the accuracy of the timestamps in every Master LC and impacts the Continuous Time Error (CTE) budget of 5 ns for a Class D network box.
Accordingly, referring to
The SYNC signal 507 is received at buffer 509 and is used, along with SYSCLK 515, to adjust the PLL 511 to ensure the SYNC_OUT and local SYSCLK 521 generated in the line card is phase and frequency aligned with the input SYNC and SYSCLK from the master timing card. The SYNC_OUT signal is generated by an integer divide in divider 517 of the local SYSCLK 521 generated by the PLL 511 that is aligned in phase and frequency to SYSCLK.
Referring to
Referring back to
Another approach utilizes the time stamps as discussed herein. Referring to
While the embodiment of
Referring to
In at least one embodiment the IO delay realignment is programmable to be either to the SYNC input signal or to the SYSCLK and thus the SYNC control logic includes the functionality to determine the IO error with respect to both input signals. The programmability may be implemented over a programming interface (not shown) of the integrated circuit implementing the realignment.
The description of the invention set forth herein is illustrative and is not intended to limit the scope of the invention as set forth in the following claims. Variations and modifications of the embodiments disclosed herein may be made based on the description set forth herein, without departing from the scope of the invention as set forth in the following claims.
Patent | Priority | Assignee | Title |
Patent | Priority | Assignee | Title |
10007639, | Apr 08 2015 | Microsemi Semiconductor ULC | PLL system with master and slave devices |
10075284, | Jan 21 2016 | Integrated Device Technology, Inc.; Integrated Device Technology, inc | Pulse width modulation (PWM) to align clocks across multiple separated cards within a communication system |
10084559, | Mar 06 2015 | CAVIUM INTERNATIONAL; MARVELL ASIA PTE, LTD | System and method for maintaining a time of day in a port of a PHY module |
10158444, | Nov 16 2017 | Microsemi Corporation | Event-driven precision time transfer |
10511312, | Jun 28 2019 | Skyworks Solutions, Inc | Metastable-free output synchronization for multiple-chip systems and the like |
10536258, | Jun 02 2018 | Texas Instruments Incorporated | Skew compensation for multi-domain clock generation |
10594423, | Sep 09 2019 | Cisco Technology, Inc. | Re-timing a packetized radio flow to clean noise induced by packet delay variation of a packet network |
10715307, | Aug 01 2019 | Microsemi Semiconductor ULC | Embedded time of day receiver for clock transmission |
10727845, | Jun 25 2019 | Skyworks Solutions, Inc | Use of a virtual clock in a PLL to maintain a closed loop system |
10797686, | Apr 12 2019 | Microchip Technology Inc.; MICROCHIP TECHNOLOGY INC | Phase predictor and associated method of use |
10917097, | Dec 24 2019 | Microsemi Semiconductor ULC | Circuits and methods for transferring two differentially encoded client clock domains over a third carrier clock domain between integrated circuits |
10951216, | Oct 14 2019 | Silicon Laboratories Inc.; Silicon Laboratories Inc | Synchronization of clock signals generated using output dividers |
11088816, | Mar 31 2020 | Skyworks Solutions, Inc | Secondary phase compensation assist for PLL IO delay aligning sync signal to system clock signal |
11088819, | Mar 31 2020 | Skyworks Solutions, Inc | Secondary phase compensation assist for PLL IO delay |
11502812, | Jul 14 2021 | Skyworks Solutions, Inc | Data protocol over clock line |
5140611, | Sep 29 1989 | FIRSTPOINT CONTACT TECHNOLOGIES, LLC | Pulse width modulated self-clocking and self-synchronizing data transmission and method for a telephonic communication network switching system |
5509038, | Apr 06 1994 | Fujitsu, Ltd | Multi-path data synchronizer system and method |
5644604, | Nov 14 1994 | Fujitsu, Ltd | Digital phase selector system and method |
5964880, | Dec 10 1997 | Intel Corporation | Circuit interface synchronization using slave variable delay loop |
6549046, | Dec 29 2000 | Cisco Technology, Inc | Method and apparatus for phase aligning two clock signals utilizing a programmable phase adjustment circuit |
6760586, | Sep 10 1999 | ERICSSON-LG ENTERPRISE CO , LTD | System and method for processing a handover of digital enhanced cordless telecommunication (DECT) line cards in a switching system |
6839858, | May 14 2001 | Ciena Corporation | System for clock synchronization |
6885647, | Dec 30 1998 | UTSTARCOM KOREA LIMITED C O OF UTSTARCOM, INC | Base station for compensating route delay between bases station and mobile station of CDMA mobile communication system and operation method thereof |
7002996, | Apr 09 2001 | Qualcomm Incorporated | System and method for switch timing synchronization |
7079589, | Jun 10 2002 | National Semiconductor Corporation | Serial digital communication superimposed on a digital signal over a single wire |
7116743, | Mar 04 2003 | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | Digital phase lock loop |
7203227, | Mar 06 2002 | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | All digital reference frequency locking |
7417510, | Sep 28 2006 | Skyworks Solutions, Inc | Direct digital interpolative synthesis |
7451337, | Oct 07 2002 | Advanced Micro Devices, Inc. | Guaranteed edge synchronization for multiple clocks |
7451339, | Sep 15 2006 | International Business Machines Corporation | Pulse-per-second attachment for STP |
7535893, | Dec 05 2003 | Microsoft Technology Licensing, LLC | TDM services using a packet-switched fabric |
7860205, | Sep 18 2001 | CIENA LUXEMBOURG S A R L ; Ciena Corporation | Clock synchronization using a weighted least squares error filtering technique |
7903681, | Jun 13 2008 | WSOU Investments, LLC | Method for distributing a common time reference within a distributed architecture |
8355476, | Sep 23 2008 | Electronics and Telecommunications Research Institute | Timestamping method and apparatus for precise network synchronization |
8942561, | Oct 21 2008 | AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LIMITED | Synchronization transport over passive optical networks |
9246615, | Sep 28 2012 | MICROSEMI STORAGE SOLUTIONS, INC | Delay measurement in a point to multipoint system |
9369270, | Mar 15 2013 | Integrated Device Technology, Inc.; Integrated Device Technology, inc | Dual-coupled phase-locked loops for clock and packet-based synchronization |
9426762, | May 11 2012 | MICROSEMI STORAGE SOLUTIONS, INC | Timing synchronization for networks with radio links |
9479182, | Jul 02 2015 | Integrated Device Technology, inc | Methods and apparatus for synchronizing operations using separate asynchronous signals |
9594396, | Jul 28 2010 | Cray UK Limited | Synchronizing data transfer between a first clock domain and second clock domain |
9628255, | Dec 18 2015 | Integrated Device Technology, inc | Methods and apparatus for transmitting data over a clock signal |
9665121, | Dec 11 2014 | KHALIFA UNIVERSITY OF SCIENCE AND TECHNOLOGY | Method and devices for time transfer using peer-to-peer transparent clocks |
9673970, | Feb 25 2016 | KHALIFA UNIVERSITY OF SCIENCE AND TECHNOLOGY | Methods and systems for estimating frequency synchronization accuracy |
9860004, | May 11 2011 | MICROSEMI STORAGE SOLUTIONS, INC | Network distributed packet-based synchronization |
9960873, | Feb 22 2013 | TELEFONAKTIEBOLAGET L M ERICSSON PUBL | Time synchronous pluggable transceiver |
20060020733, | |||
20060280182, | |||
20070046516, | |||
20080080563, | |||
20080240169, | |||
20090024865, | |||
20090168808, | |||
20090251226, | |||
20100118894, | |||
20110296226, | |||
20120300795, | |||
20120319734, | |||
20130121347, | |||
20140068315, | |||
20140320181, | |||
20150092797, | |||
20150185759, | |||
20150200770, | |||
20150207620, | |||
20150222276, | |||
20160170439, | |||
20160182217, | |||
20170135053, | |||
20170288801, | |||
20170373824, | |||
20190020333, | |||
20190036804, | |||
20190379474, | |||
20190379475, | |||
20200021379, | |||
20200028666, | |||
20200050575, | |||
20200127752, | |||
20200285265, | |||
20210157355, | |||
20210297083, | |||
20210328758, | |||
20220209880, | |||
CN102291233, | |||
CN103684727, | |||
CN104378193, | |||
CN107294634, | |||
WO2015003364, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Aug 09 2021 | Skyworks Solutions, Inc. | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Aug 09 2021 | BIG: Entity status set to Undiscounted (note the period is included in the code). |
Date | Maintenance Schedule |
Jun 06 2026 | 4 years fee payment window open |
Dec 06 2026 | 6 months grace period start (w surcharge) |
Jun 06 2027 | patent expiry (for year 4) |
Jun 06 2029 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jun 06 2030 | 8 years fee payment window open |
Dec 06 2030 | 6 months grace period start (w surcharge) |
Jun 06 2031 | patent expiry (for year 8) |
Jun 06 2033 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jun 06 2034 | 12 years fee payment window open |
Dec 06 2034 | 6 months grace period start (w surcharge) |
Jun 06 2035 | patent expiry (for year 12) |
Jun 06 2037 | 2 years to revive unintentionally abandoned end. (for year 12) |