The following procedure is a programming example for a system which is to operate with a 3000-MHz VCO frequency. Use CLKout0 and CLKout2 to drive converters at 1500 MHz. Use CLKout4 to drive an FPGA at 150 MHz. Synchronize the converters and FPGA using a two SYSREF pulses at 10 MHz.
- Program registers 0x000 to 0x555 (refer to
Section 8.5.1). Key to prepare for SYSREF operations:
- Prepare for manual SYNC: SYNC_POL =
0, SYNC_MODE = 1, SYSREF_MUX = 0
- Setup output dividers as per
example: DCLK0_1_DIV and DCLK2_3_DIV = 2 for frequency of 1500 MHz. DCLK4_5_DIV = 20
for frequency of 150 MHz.
- Setup output dividers as per
example: SYSREF_DIV = 300 for 10-MHz SYSREF.
- Setup SYSREF: SYSREF_PD = 0,
SYSREF_DDLY_PD = 0, DCLK0_1_DDLY_PD = 0, DCLK2_3_DDLY_PD = 0, DCLK4_5_DDLY_PD = 0,
SYNC_EN = 1, SYSREF_PLSR_PD = 0, SYSREF_PULSE_CNT = 1 (2 pulses). SCLK0_1_PD = 0,
SCLK2_3_PD = 0, SCLK4_5_PD = 0.
- Clear Local SYSREF DDLY: SYSREF_CLR
= 1.
- Establish deterministic phase relationships between SYSREF and Device Clock for JESD204B:
- Set device clock and SYSREF divider digital delays: DCLK0_1_DDLY, DCLK2_3_DDLY, DCLK4_5_DDLY, and SYSREF_DDLY.
- Set device clock digital delay half steps: DCLK0_1_HS, DCLK2_3_HS, DCLK4_5_HS.
- Set SYSREF clock digital delay as required to achieve known phase relationships: SCLK0_1_DDLY, SCLK2_3_DDLY, and SCLK4_5_DDLY. If half step adjustments are required SCLK0_1_HS, SCLK2_3_HS, and SCLK4_5_HS.
- To allow SYNC to affect dividers: SYNC_DIS0 = 0,
SYNC_DIS2 = 0, SYNC_DIS4 = 0, SYNC_DISSYSREF = 0.
- Perform SYNC by toggling SYNC_POL = 1 then SYNC_POL = 0.
- Now that dividers are synchronized, disable SYNC from resetting these dividers. It is not desired for SYSREF to reset it's own divider or the dividers of the output clocks.
- Prevent SYNC (SYSREF) from affecting dividers: SYNC_DIS0 = 1, SYNC_DIS2 = 1, SYNC_DIS4 = 1, SYNC_DISSYSREF = 1.
- Release reset of local SYSREF digital delay.
- SYSREF_CLR = 0. Note this bit needs to be set for only 15 clock distribution path clocks after SYSREF_PD = 0.
- Set SYSREF operation.
- Allow pin SYNC event to start pulser: SYNC_MODE = 2.
- Select pulser as SYSREF signal: SYSREF_MUX = 2.
- Complete! Now asserting the SYNC pin, or toggling SYNC_POL will result in a series of 2 SYSREF pulses.