This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] ADC12QJ1600:难以获得 S-PLL 保持锁定状态

Guru**** 2385940 points
Other Parts Discussed in Thread: ADC12QJ1600
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1255118/adc12qj1600-difficulty-getting-s-pll-to-stay-locked

器件型号:ADC12QJ1600

您好!

我正在使用 ADC12QJ1600进行8通道1Gsps 转换。 我通过 FPGA 控制启动过程、SPI 和 JESD 链路、为了实现灵活性、我设置了单端和差分时钟来使用。 两个时钟都向芯片显示了良好的信号。

我一直在不停地处理一些问题(以前的问题也出现在 ADC 的评估板上)、在这些问题上我无法可靠地使 S-PLL 保持锁定状态。 启动芯片并按适当的时序要求对所有寄存器进行编程后、我可以查询0x208 JESD_STATUS 寄存器并获取0x05、这样我可以看到 CPLL 和 SPLL 都已锁定。 但是、大约一秒钟后、SPLL 将失去锁定。 如果我通过 SPI 复位 CPLL、会产生相同的结果-大约一秒钟的 SPLL 锁定、然后它又消失了。 我无法找到一种方法使其在进入该状态时保持锁定状态。 奇怪的是、我以前已经在同一个板上可靠地工作、我可能已经稍微调整了启动时序、但我要使用的寄存器设置没有更改。

我不确定如何使用芯片上的有限状态寄存器来调试这一点。 可以在哪些情况下锁定 CPLL、但 SPLL 无法锁定? 似乎 CPLL 是稳定的、SPLL 没有理由不保持稳定。 我不知道她在想些什么,我就不知道她在想些什么。

附件是我使用的寄存器配置过程的顺序:

~ delay, power up chip
0000 b0 CONFIG_A Reset the chip
~ delay, wait for init done 
0058 83 CPLL_OVR SPI pin control
002B 15 CLK_CTRL2 VCC Noise suppressant control (default: 0x00)
0213 0F OVER_CFG Overrange pin control (default: 0x07)
0057 82 TRIGOUT_CTRL TRIGOUT Output Control (default: 0x00)
005C 01 CPLL_RESET control (write 0x01 to hold in reset) (default: 0x00)
003F 4A CPLL_VCOCTRL1 VCO bias control (default: 0x4F, but must write 0x4A to use C-PLL)
003D 05 CPLL_FBDIV1 C-PLL Feedback Divider V and P (default: 0x00)
003E 14 CPLL_FBDIV2 C-PLL Feedback Divider N (default: 0x20)
005D 41 VCO_CAL_CTRL VCO Calibration Control (default: 0x40)
005C 00 Clear CPLL reset
~ delay, wait for cal complete
0200 00 JESD_EN register (clear to allow JESD changes) (default: 0x01)
0061 00 CAL_EN register (clear to allow calibration changes) (default: 0x01)
0201 00 JMODE JESD204C Mode (default: 0x00)
0202 1F KM1 JESD204C K Parameter (minus 1) (default: 0x1F)
0204 01 JCTRL JESD204C Control (default: 0x03)
0203 01 JSYNC_N JESD204C Manual Sync Request (default: 0x01)
0205 00 JTEST JESD204C Test Control (default: 0x00)
0061 01 CAL_EN register (set to enable calibration interface)
0200 01 JESD_EN register (set to enable JESD interface)
~ confirm CPLL and SPLL lock

谢谢。

克莱拉

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Claira:

    您能解释一下客户 EVM 或您设计的电路板上正在发生的这个问题吗?

    如果这是您的设计、您可以尝试将时钟速率降低一半、看看 SPLL 是否保持锁定。  

    此致、

    内拉伊   

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    之前、它发生在客户 EVM 上、我的 FPGA 代码的非常旧版本上、而目前在我设计的电路板上也同样以类似的方式发生。 使用 EVM 时、我假设这是启动的时序问题、经过一些调整后、我能够克服这一问题、但我没想到它会突然出现。 我无法将其精确定位到特定于启动过程的任何内容、因为在进行这些调整后、我什么都没有改变。

    我的代码还允许我手动访问 SPI、执行不同的启动迭代、并检查所有寄存器是否设置正确。 但是、当它进入此 SPLL 不锁定模式时、我找不到任何可以让该 SPLL 锁定的寄存器访问序列。 这让我得出结论:这与启动无关、而与时钟有问题的相关事物有关、这可能更多。

    我之前用此定制板将两个 PLL 锁定到单端50MHz 输入、还可以。 然后、我进行了一些修改、以添加对50MHz 差分时钟作为备用输入的支持、并且启动过程中唯一的改变是删除在差分时钟输入上启用 LVPECL 的不必要的寄存器写入。 当我无法使第二个 PLL 通过这个新的差分时钟输入锁定时、我又返回尝试 SE 输入、但发现即使使用以前工作的 SE 时钟输入、它也不再锁定 SPLL。 (请注意、当我使用 SE 时钟时、为差分时钟供电的芯片断电)

    对于我的实际问题、这可能是所有不必要的细节。 基本上、我看到 SPLL 的运行非常不可靠、有时会在几乎相同的启动条件和相同的时钟下获得锁定、有时则不会。 我需要知道芯片内部什么样的情况会导致 CPLL 锁定、而不是 SPLL 锁定、以及我如何继续调查并缓解这种情况。 CPLL 是否可以表现出连续锁定但仍向 SPLL 提供"不良"输入? VCO 修整例程有时是否出现修整值错误且旋紧了 CPLL 输出? 芯片在不散热的情况下运行是否会对 CPLL 的运行产生负面影响? (它确实会 HOT 运行)最后、上电时第一次 CPLL 启动是否有任何未提及的高度敏感时序要求、以及是否会导致无法通过进一步寄存器访问来解决的无锁定条件?

    谢谢。

    克莱拉