Datasheet
AD9910 Data Sheet
Rev. D | Page 46 of 64
across all the devices. If the SYNC_INx signal is edge aligned at all
devices, and all devices have the same sync receiver delay and
sync state preset value, then they all have matching clock states
(that is, they are synchronized). This concept is shown in
Figure 53, in which three AD9910 devices are synchronized,
with one device operating as a master timing unit and the
others as slave units.
The master device must have its SYNC_INx pins included as part
of the synchronization distribution and delay equalization mecha-
nism in order for it to be synchronized with the slave units.
The synchronization mechanism begins with the clock distribu-
tion and delay equalization block, which is used to ensure that
all devices receive an edge-aligned REFCLK signal. However,
even though the REFCLK signal is edge aligned among all devices,
this alone does not guarantee that the clock state of each internal
clock generator is coordinated with the others. This is the role
of the synchronization and delay equalization block. This block
accepts the SYNC_OUTx signal generated by the master device
and redistributes it to the SYNC_INx input of the slave units (as
well as feeding it back to the master). The goal of the redistributed
SYNC_OUT x signal from the master device is to deliver an
edge-aligned SYNC_INx signal to all of the sync receivers.
Assuming that all devices share the same REFCLK edge (due to
the clock distribution and delay equalization block), and all
devices share the same SYNC_INx edge (due to the synchroni-
zation and delay equalization block), then all devices should
generate an internal sync pulse in unison (assuming that they
all have the same sync receiver delay value). With the further
stipulation that all devices have the same sync state preset value,
then the synchronized sync pulses cause all of the devices to
assume the same predefined clock state simultaneously; that is,
the internal clocks of all devices become fully synchronized.
The synchronization mechanism depends on the reliable gen-
eration of a sync pulse by the edge detection block in the sync
receiver. Generation of a valid sync pulse, however, requires
proper sampling of the rising edge of the delayed SYNC_INx signal
with the rising edge of the local SYSCLK. If the edge timing of
these signals fails to meet the setup or hold time requirements
of the internal latches in the edge detection circuitry, then the
proper generation of the sync pulse is in jeopardy. The setup
and hold validation block (see Figure 54) gives the user a means
to validate that proper edge timing exists between the two signals.
The setup and hold validation block can be disabled via the
sync timing validation disable bit in Control Function Register 2.
The validation block makes use of a user-specified time window
(programmable in increments of ~75 ps via the 4-bit sync
validation delay word in the multichip sync register). The setup
validation and hold validation circuits use latches identical to
those in the rising edge detector and strobe generator. The
programmable time window is used to skew the timing between
the rising edges of the local SYSCLK signal and the rising edges
of the delayed SYNC_INx signal. If either the hold or setup
validation circuits fail to detect a valid edge sample, the condition
is indicated externally via the SYNC_SMP_ERR pin (active high).
The user must choose a sync validation delay value that is a
reasonable fraction of the SYSCLK period. For example, if the
SYSCLK frequency is 1 GHz (1 ns period), then a reasonable
value is 4 (300 ps). Choosing too large a value can cause the
SYNC_SMP_ERR pin to generate false error signals. Choosing
too small a value may cause instability.
SYNC
PULSE
SYSCLK
DELAY
DELAY
CHECK LOGIC
4
SYNC VALIDATION
DELAY
4
4
SYNC_SMP_ERR
SYNC RECEIVER
12
SYNC TIMING VALIDATION DISABLE
SETUP
VALIDATION
HOLD
VALIDATION
D
Q
12
SETUP AND HOLD VALIDATION
TO
CLOCK
GENERATION
LOGIC
FROM
SYNC
RECEIVER
DELAY
LOGIC
D Q
D Q
RISING EDGE
DETECTOR
AND STROBE
GENERATOR
06479-054
Figure 54. Sync Timing Validation Block