UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Newbie luke7
Newbie
351 Views
Registered: ‎09-18-2019

Synchronization of Clock to 1PPS Signal

Hello,

I'm using the ZCU102 board (with the Zynq Ultrascale+) and am trying to figure out how to synchronize a clock---let's assume 100MHz---to a 1PPS (1Hz) reference signal. I've been told that a PLL or MMCM should be able to accomplish this, but haven't had any luck in figuring out how.

Here's a minimal working example of what I'm trying to accomplish:

In my design, I count intervals of time---let's assume 10ns increments, one per tick---using the clock and need the count to be accurate. The 1PPS reference signal is very accurate and precise, and I want to synchronize the clock to it in order to correct for any clock drift that may occur. If the clock drifts from the 1PPS signal, it should be adjusted to be back in sync with the 1PPS signal.

Here are the constraints of the problem:

  • The design does have to count intervals of time using the clock (as opposed to using something like NTP to get the time).
  • The design can't "synchronize" by adjusting the counter value (easier though that may be); it's the clock signal that has to be synchronized to be in phase with every 1PPS signal.
  • The design can't synchronize the 1PPS signal to the clock; it has to be the clock signal that's synchronized to the 1PPS signal.
  • The design has to be implemented entirely on the FPGA (as opposed to using the PS side of the Zynq).

I'd really appreciate any advice I can get on this!

 

Regards,

 

Luke

 

Note: I was able to find one similar discussion here, but it wasn't at all fruitful.

0 Kudos
1 Reply
330 Views
Registered: ‎09-17-2018

Re: Synchronization of Clock to 1PPS Signal

l7,

You need a long integration time on the phase filter of an external PLL.  The internal PLL will not be able to do this.  One divides down the 100 MHz to 1 Hz, and you youthe 1 Hz reference input to the PLL phase detector.  Loop stability, lock time, all become pretty important (critical).  One can do the same thing using digital signal processing, and a numerically controlled oscillator along with a higher frequency clock.  I used a 48 bit DDFS, with jitter filter as part of a solution I used to sync to a 1 PPS GPS signal.

l.e.o.