工具/软件:
大家好!
在初始配置后尝试更新 DCLKX_Y_DIV 寄存器会导致输出时钟未对齐。
我们的配置具有处于双环路模式的 PLL、可将3GHz 器件时钟馈送到输出时钟分频器。 我们的初始配置将这些分压器设置为24和30、为100MHz 和125MHz 提供断电状态下的 DDLY。 理想情况下、我们的输出时钟的相位将与输入时钟(ClkIn0/1)对齐。 修改 DCLKX_Y_DIV 寄存器时、我们注意到输出时钟彼此不对齐。
我们尝试执行同步、但在修改 DCLKX_Y_DIV 寄存器后仍然注意到存在较大的相位偏移。
我们更新 输出时钟的过程 如下:
- 更新 DCLKX_Y_DIV
- 更新 DCLKX_Y_DDLY
- DCLKX_Y_DDLY_PD = 0
- SYNC_DISX = 0
- 设置 SYNC_MODE = 1且 SYNC_1SHOT_EN = 1
- 切换 SYNC_POL、等待100ms、切换 SYNC_POL
- SYNC_DISX = 1
- DCLKX_Y_DDLY_PD = 1
- 更新 DCLKX_Y_FMT
请注意、每个修改后时钟的 DDLY 和 DIV 是相同的。 例如:DCLK2和 DCLK7的 DIV = 15、DDLY = 15。 我们最初仅尝试更新 DCLKX_Y_DIV、但出现相同的错位情况。
有人能帮助我们了解为获得此结果而进行的错误配置吗? 还是简单地缺少同步操作?
我附上了 PLL 初始配置的寄存器映射。