PXI

cancel
Showing results for 
Search instead for 
Did you mean: 

Error -250016 when trying to synchronize PXIe-5451 and PXI-5412

Hi,

 

I am trying to synchronize two AWGs in the same PXI chassis (PXIe-1082) using the TClk VIs. One AWG is a PXIe-5451, and the other is a PXI-5412.

 

I am using an external 10MHz reference clock sent to the PXI chassis. Each AWG is using its onboard sample clock timebase.

 

I want to be able to synchronize them while the sample clocks are in High-Resolution Sampling mode on each card, and I want to set the sample rate on the 5451 to be 4 times the sample rate on the 5412. (Ex. 5451 Sample rate: 399,360,000Hz, 5412 Sample rate: 99,840,000Hz)

 

However, when I try to do this, I receive the following error message:

Error -250016 occurred at niTClk Synchronize.vi:1

Possible reason(s):

NI-TClk cannot find a common TClk period that works for all the specified sessions. The invalid TClk period may be produced by either an incompatible combination of sample clock rates or large differences between input path pipeline delays between sessions.<LF/><LF/>Use a different combination of sample clock rates.

 

I have tried setting both sample rates to be the same, and still receive the same error. However, if I set the sample rates to be 400Mhz and 100Mhz, then I don't receive any errors. Also, if I try to synchronize two PXI-5412 cards this same way, and to the same arbitrary frequency (Ex. 99,840,000Hz), then I again do not receive any errors.

 

One other thing I have noticed is that if I read in the sample rates from my 5451 and 5412, they differ from both the value I set and from each other by between a few hundred nanohertz and a few microhertz. However, the actual (read-in) sample rates of two 5412s are the same. Is this difference of a few microhertz or less between the 5451 and 5412 really enough to cause the synchronization to fail? And if so, is there anything I can do to correct it? Or any other way to accomplish what I am trying to do?

 

I have not uploaded my VIs because I figured they would not be that helpful without my hardware, but please let me know if they might help in diagnosing this problem. Also, I am running Labview 2012.0.1f3 (32-bit) on a Windows 7 Enterprise (64-bit) OS.

 

Thanks very much for any help,

Bill

Download All
0 Kudos
Message 1 of 4
(5,760 Views)

Hello,

 

By default, arbitrary waveform generators use High-Resolution Clocking to generate a waveform if the sampling rate that you choose is not an exact integer division of the maximum frequency of function generator. When High-Resolution Clocking is used, the sampling rate you specify can actually be coerced to a slightly different value than specified.

 

The problem with this is that if your specified sample rate is coerced into a non interger it will not be evenly divisible into other frequencies. When synchronizing multiple devices using NI-TClk, the algorithm will attempt to choose a TClk frequency that all sampling rates can be divided into evenly. Having an actual sampling rate that has been coerced into a non devisable value throws off the NI-TClk algorithm resulting in error -250016.

Could you try to disable High-Resolution Clocking and use Divide-Down Clocking instead. You can do this in LabVIEW using the Clock Mode property of the niFgen Property Node, and setting the value to NIFGEN_VAL_DIVIDE_DOWN.

 

Please let me know if this helps.

Cameron T
Applications Engineer
National Instruments
0 Kudos
Message 2 of 4
(5,722 Views)

Hi Cameron,

 

Thanks for your quick response. I tried what you suggested, and actually I've noticed that the PXIe-5451 doesn't seem to coerce the sample clock as described by you or the NI Signal Generators Help file. Even if I set it to Divide Down mode, it always seems to be behave as though it is in High-Resolution mode. The PXI-5412 doesn't have this problem.

 

That said, you are correct that if I set the sample rates to be integer divisors of the sample clock timebase for each card, the synchronize VI succeeds.

 

However, I was really hoping for a fix that wouldn't greatly restrict the sample rates that I can use, because I want them to be integer multiples of an arbitrary frequency that is determined by my experiment. Is there any way to get these cards to synchronize without having to coerce the sample rates to be integer divisors of the sample clock timebase?

 

Thanks again,

Bill

0 Kudos
Message 3 of 4
(5,691 Views)

Hello,

 

Unfortunately, you will have to choose sample rates that are interger divisors of the TClk frequency.

Cameron T
Applications Engineer
National Instruments
0 Kudos
Message 4 of 4
(5,603 Views)