1
\$\begingroup\$

I am busy with synchronize all my ADCs on data acquisiton systems. My ADCs need to clock signals for their duty. So in my opinion for synchronization, if i send to all my ADCs clock signal which is driven by 1 a GPS with accurate 1PPS output, it can be be synchronous with each other. So i am looking for a knowledge or a component which do that timing job. My ADCs need to 24.576 mHz Clocking signal with accurate GPS PPS signal. How can i do that? Do you have a solution or any idea for that?


Thank you for all your reply. But i want to give you a detailed explanation below;

I have two data acquisiton device which includes ADCs on their own (MAX11040K maxim integrated). And each system has 4 ADCs. There is no connection between those systems (no cable, no wireless connection). They are totally seperate from each other. I want to put one of those systems on somewhere in England, and i start to system for data acquisition. And i want to put other one on somewhere in Germany. And i start to system for data acquisiton too.

Now i want to watch these raw data ( which comes from ADCs) on systems by an software in USA. I want to see raw data on both of these devices at the same time. So i need to know "time knowledge" with raw data. I can do that by putting a GPS Receiver Module on each systems. GPS gives me a Peak Per Second signal which is valid all over the world. Beause it has Real Time Clock signal. All GPS Receiver Modules in the world produce PPS signal at the same time. I want to use that signal for sychronization. I need to trigger a circuit with that PPS signal only at start. By this way, Triggered circuit can produce a 24.576 mHz signal for my ADCs clock signal. So all systems work synchroniza to each other. This is a theory what i want to do.

Sychronization can be done with two way;

The first one;

I put a crystal for every ADCs on two device, and if i push the start buttons of seperated systems at the same time, systems will work sychronizally with each other. And i can watch raw data on USA by a software. But this never can happen because of systems located different countries.

The second way which i need to help for this;

The ADCs, which is in DAQ system, need 24.576 mHz clock signal. if I design a circuit which is triggered by GPS PPS signal, the circuit can produce a 24.576 mHz clock signal for my ADCs. The ADCs works without a crystal. This circuit which i planned provide them for synchronized clock signal. After that i can watch systems on USA.

Now the circuit which i need to has one input (PPS signal) and one output which is accurate GPS PPS signal.

Finally, how can i create this circuit?

\$\endgroup\$
4
  • 4
    \$\begingroup\$ "mHz" is pretty darn slow. \$\endgroup\$
    – Andy aka
    Jan 15 '15 at 8:39
  • 3
    \$\begingroup\$ So you want to derive a 24.576MHz clock signal output from a GPS receiver's 10MHz reference output? Why not simply use a 24.576MHz oscillator to drive all of the ADC clocks? As long as the one clock signal drives all of the ADC, won't they be synchronous? \$\endgroup\$
    – MarkU
    Jan 15 '15 at 9:52
  • 1
    \$\begingroup\$ Maybe the ADC's are far apart. The GPS PPS signal could provide synchronization over a large geographic baseline. \$\endgroup\$
    – mkeith
    Jan 15 '15 at 22:24
  • \$\begingroup\$ Thank you for your reply, please see my edit above for detailed explanation. \$\endgroup\$
    – Cem
    Jan 16 '15 at 12:44
1
\$\begingroup\$

It's not exactly clear what your setup is here, but I've had a couple of applications that have done things like this. I can give you an idea of what the methods used were. Both of these solutions were in actual use, but had different requirements and methods.

  1. The first method was to use a voltage controlled oscillator that drove my ADC clock for synchronized audio sampling. The idea is to have the oscillator run a counter and use some software to determine if the number of counts between PPS signals was off of expected. Then a control loop was implemented in firmware to adjust the voltage input of the oscillator (slowly to prevent artifacts). This created very good synchronization, but it does require specific hardware support, and the effects of the adjustment rate on the signal have to be well understood.

  2. The second method was pure software based. In this method, the ADC clock was free running. This ran a free-running counter as well. When a PPS signal occured, the current counter value was stored as a data point inline in the ADC samples. Then the data from all the ADCs were combined by resampling them in software post processing to align the PPS sample timestamps. Again, this requires pretty decent knowledge of the signal so you an know which signal processing artifacts are acceptable and which aren't.

A way of looking at it is the first method is a control systems solution while the second is a digital signal processing solution. Both are valid, but both have pros and cons and the solution has to match the application needs.

For example, the first method requires more specialized hardware but much less processing power, while the second one can be implemented on more generalized processors. In my case, the first was an embedded unit that needed to run with fairly low power. The second was a data collection unit, so we could process the data later on a PC.

\$\endgroup\$
0
1
\$\begingroup\$

From looking at the ADC datasheet, it appears that you can use the PPS signal directly from the GPS tranceiver to run this ADC in a synchronized manner. (You may need to invert it, but that is straightforward.) See this blurb from the datasheet.

Synchronizing Multiple Devices to an Independent Clock Source

To periodically synchronize multiple devices to an independent
timing source, connect the timing source to
the SYNC inputs of the devices. If minimal jitter is
important in the application, program the devices to a
frequency slightly slower than the external frequency,
such that SYNC falling edges only occur a short time
after the DRDYOUT signals.

So, it appears that you just need to program the device frequency to be slightly slower than an integer multiple of samples per second. If you read about how the SYNC line works, you can see how this solution should provide a low jitter samples that are synchronized across multiple locations.

(I left the other answer there as a more general solution to the problem)

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.