以下程序是一個以 3000MHz VCO 頻率運行的系統(tǒng)的編程示例。使用 CLKOUT0 和 CLKOUT2 在 1500MHz 頻率下驅(qū)動轉(zhuǎn)換器。使用 CLKOUT4 在 150MHz 頻率下驅(qū)動 FPGA。使用兩個頻率為 10MHz 的 SYSREF 脈沖來同步轉(zhuǎn)換器和 FPGA。
- 對寄存器 0x000 至 0x555 進行編程(請參閱建議編程序列)。準(zhǔn)備 SYSREF 操作的關(guān)鍵:
- 準(zhǔn)備手動同步:SYNC_POL = 0、SYNC_MODE = 1、SYSREF_MUX = 0
- 根據(jù)示例設(shè)置輸出分頻器:對于 1500MHz 的頻率,DCLK0_1_DIV 和 DCLK2_3_DIV = 2。對于 150MHz 的頻率,DCLK4_5_DIV = 20。
- 根據(jù)示例設(shè)置輸出分頻器:對于 10MHz SYSREF,SYSREF_DIV = 300。
- 設(shè)置 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 個脈沖)。SCLK0_1_PD = 0、SCLK2_3_PD = 0、SCLK4_5_PD = 0。
- 清除本地 SYSREF DDLY:SYSREF_CLR = 1。
- 確立 JESD204B/C 的 SYSREF 與器件時鐘之間的確定性相位關(guān)系:
- 設(shè)置器件時鐘和 SYSREF 分頻器數(shù)字延遲:DCLK0_1_DDLY、DCLK2_3_DDLY、DCLK4_5_DDLY 和 SYSREF_DDLY。
- 設(shè)置器件時鐘數(shù)字延遲半步進:DCLK0_1_HS、DCLK2_3_HS、DCLK4_5_HS。
- 根據(jù)需要設(shè)置 SYSREF 時鐘數(shù)字延遲,以實現(xiàn)已知的相位關(guān)系:SCLK0_1_DDLY、SCLK2_3_DDLY 和 SCLK4_5_DDLY。如果需要進行半步進調(diào)整,則可選擇 SCLK0_1_HS、SCLK2_3_HS 和 SCLK4_5_HS。
- 要允許 SYNC 影響分頻器,請設(shè)置:SYNC_DIS0 = 0、SYNC_DIS2 = 0、SYNC_DIS4 = 0、SYNC_DISSYSREF = 0。
- 通過切換 SYNC_POL = 1,然后 SYNC_POL = 0,從而執(zhí)行同步。
- 現(xiàn)在,分頻器已同步,請禁用 SYNC 以防止復(fù)位這些分頻器。SYSREF 復(fù)位它自己的分頻器或輸出時鐘的分頻器是不可取的。
- 防止 SYNC (SYSREF) 影響分頻器:SYNC_DIS0 = 1、SYNC_DIS2 = 1、SYNC_DIS4 = 1、SYNC_DISSYSREF = 1。
- 釋放本地 SYSREF 數(shù)字延遲的復(fù)位狀態(tài)。
- SYSREF_CLR = 0。請注意,在 SYSREF_PD = 0 之后,只需為 15 個時鐘分配路徑時鐘設(shè)置此位。
- 設(shè)置 SYSREF 操作。
- 允許引腳 SYNC 事件啟動脈沖發(fā)生器:SYNC_MODE = 2。
- 選擇脈沖發(fā)生器作為 SYSREF 信號:SYSREF_MUX = 2。
- 完成!將 SYNC 引腳置為有效或切換 SYNC_POL 以發(fā)送一系列 2 個 SYSREF 脈沖。