DNA/DNR-IRIG-650 IRIG Timing Layer
Chapter 3
48
Programming with the Low Level API
Tel: 508-921-4600
www.ueidaq.com
Vers:
4.6
Date: March 2019
DNx-IRIG-650 Chap3x.fm
© Copyright 2019
United Electronic Industries, Inc.
DataField: The DataField has variable length depending on the command type.
A comma symbol „
,
‟
must be inserted ahead of each data field to help the
decoder process the DataField.
*
: 1 byte character.
The star symbol is used to mark the end of DataField.
CHK1, CHK2: Two bytes character string.
CHK1 and CHK2 are the checksum of the data between Preamble and „
*
‟
.
CR, LF: Two bytes binary data.
The two bytes are used to identify the end of a command.
Sample Command
:
$PMTK000*32
<CR><LF>
For more information please see the “NMEA manual for Fastrax IT500 Series
GPS receivers”.
3.2.8
Calibrating the
precision
oscillator
The IRIG-650 is factory calibrated using a 10MHz precise Rubidium clock
generator. The calibration value is stored inside an EEPROM on the board and
is loaded into the calibration DAC every time that the IOM powers up/boots up.
The
DqCmdSetCalibration()
function call can be used to write a 12-bit
calibration value directly to the calibration DAC. Mid scale is 0x800.
The user calibration value cannot be stored in EEPROM and needs to be
programmed every time when IRIG-650 is configured by the user application.
Please contact UEI technical support for more detail and calibration advice.
3.2.9
Custom PLL
frequency
generation
The IRIG-650 has one (or three for logics after 0x010210D8) on-board PLL
driven from precision temperature and oven controlled oscillator. This PLL can
be programmed to generate any frequency from 1Hz to 1MHz to a precise 4-
digit value in logics before 0x010210D8. PLL output can be routed to any of TTL
Out lines as well as SYNCx lines, to be used as a timebase for other layers. See
the “Assigning TTL outputs” on page 31 for details.
To program PLL frequency and duty cycle (from 0 to 1 with 16-bit resolution) use
the following function call:
int DqAdv650ProgramPLL(int hd, int devn, double duty_cycle,
double frequency, double* f_actual)
For logics after 0x010210D8, the PLLs on event modules 0 or 1 described in
Section
3.2.6.1
should be used, as they provide superior following of input event
sources such as IRIG-B timing sources.
3.2.9.1
Clocking other
layers from the
IRIG-650
The on-board PLL allow one or more layers to be clocked 20x more reliably and
with lower jitter up to 100MHz than the CPU layer’s base clock of 66MHz.
By configuring the custom PLL generation as seen above, and then configuring
a SYNC line as seen in Section
3.2.4
for either:
•
CT650_OUT_CFG_SRC_CR
(for logics before 0x010210D8)