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.

[参考译文] LMK04828:关于 SYSREF_DIV、DCLKOUTx_DIV 值

Guru**** 2581345 points
Other Parts Discussed in Thread: LMK04828

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

https://e2e.ti.com/support/clock-timing-group/clock-and-timing/f/clock-timing-forum/716825/lmk04828-regarding-sysref_div-dclkoutx_div-values

器件型号:LMK04828

您好!

我使用 LMK04828生成93.6MHz 的器件时钟和 2.925MHz 的 SYSREF (93.6/32)。 VCO 频率= 2995.2MHz。 器件 clk= VCO_freq/32。 SYSMREF = VCO_freq/1024。 我正在设计中生成 devclk0、sysref0、devclk1、sysref1。 两个 Devclks 频率相同。 两个 sysref 的频率相同。  我希望所有输出时钟上升沿彼此对齐。

我对此有2个问题。

问题1:如果我希望所有输出对齐、并且我在它们之间不需要任何特定的延迟、我是否仍然需要同步它们的分频器? VCO 的输出默认不是相位对齐?

问题2:如果我对分频器使用 SYNC、则器件 clk=VCO/32、即 DCLKoutX_DIV=32、因此 DCLKoutX_DDLY_CNTH=16和 DCLKoutX_DDLY_CNTL=16。 根据我的理解、CNTH 和 CNTL 值应该是分频器值的一半、是否正确。 如果我想将其中一个器件时钟延迟1个 VCO 周期、则对于该特定器件时钟、CNTL=17、CNTH=16。 如果我想将其中一个器件时钟延迟2个 VCO 周期、那么它应该是 CNTL=18、CNTH=16、这是正确的吗?

SYSREF=2.925MHz (VCO/1024) SYSREF_DIV=1024。 SYSREF_DDLY 值应为多少。 SYSREF_DDLY 是否应为512 (1024/2)? 如果不是、应该是什么值。 要求是器件时钟和 SYSREF 上升沿应对齐。 您能解释一下 SYSREF_DDLY 值的影响吗?

有人能不能用这一重新表达 DDLY 价值观的基本概念来澄清我。 提前感谢。

谢谢、此致、

相扑

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

    [引述 USER="Lakshmi sumala 外号]]问题1:如果我希望所有输出保持一致、并且我不需要在它们之间有任何特定的延迟、我是否仍然需要同步它们的分频器? VCO 的输出是否默认不是相位对齐?

    是的、同步分频器。  通过使用正常同步设置切换 SYNC_POL 引脚、您可以单独通过软件来实现此目的。  正常同步设置意味着 SYSREF_MUX = 0x00 (正常同步)。  SYNC_MODE = 0x01 (SYNC 引脚)。  请注意、SYNC 上的引脚切换也会导致 SYNC 发生。

    [引用 USER="Lakshmi sumala graneshe">Quesion2:如果我对分频器使用 SYNC、则器件 clk=VCO/32、即 DCLKoutX_DIV=32、因此 DCLKoutX_DDLY_CNTH=16和 DCLKoutX_DDLY_CNTL=16。 根据我的理解、CNTH 和 CNTL 值应该是分频器值的一半、是否正确。 如果我想将其中一个器件时钟延迟1个 VCO 周期、则对于该特定器件时钟、CNTL=17、CNTH=16。 如果我想将其中一个器件时钟延迟2个 VCO 周期、那么它应该是 CNTL=18、CNTL=16、这是正确的吗?

    为 DCLKoutX_DDLY_CNTH/_CNTL 编程的值不取决于分频器值。  该值相对于另一个分频器输出。  假设您的所有分频器都具有_CNTL/_CNTL = 5/5。  如果一个输出被延迟两个周期、那么该时钟的值可以是_CNTH +_CNTL 的两个更大值。  因此、在前一个示例中、可以是7/5、6/6或5/7、以实现两个 VCO 周期的延迟。  最小关断时钟时间可通过最小_CNTL/_CNTL 值2/2来实现。

    [引用用户="Lakshmi sumala 外行]SYSREF=2.925MHz (VCO/1024) SYSREF_DIV=1024。 SYSREF_DDLY 值应为多少。 SYSREF_DDLY 是否应为512 (1024/2)? 如果不是、应该是什么值。 要求是器件时钟和 SYSREF 上升沿应对齐。 您能解释一下 SYSREF_DDLY 值的影响吗?[/引述]

    以在器件时钟路径和 SYSREF 路径之间实现相同的数字延迟。  考虑以下公式:

    DCLKoutX_DDLY_CNTH + DCLKoutX_DDLY_CNTL = SYSREF_DDLY (全局 SYSREF 延迟)+ SDCLKoutY_DDLY (本地 SYSREF 延迟)+ SYSREF_DIV_ADJUST + DCLKout_MUX_ADJUST

    通过对齐这些数字、器件时钟和 SYSREF 时钟将大致共享上升沿。

    其中 SYSREF_DIV_ADJUST 为

    SYSREF_DIV % 4 SYSREF_DIV_ADJUST
    0 2.
    1 2.
    2. 3.
    3. 3.

    DCLKoutX_MUX_ADJUST 是...

    DCLKoutX_MUX SYSREF_DIV_ADJUST
    0 (分频) 1
    1 (Div + DCC + HS) 0

    73、
    Timothy

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

    您好、Timothy、

    非常感谢您的详细答复。

    因此,根据您的答复,如果未提供同步,VCO 输出将不会相位对齐。 我是对的吗?

    请参阅 LMK04828数据表的"第9.3.3节数字延迟"

    在这两种延迟模式下、常规时钟分频器由备用分频值替代。 替代除法
    值由两个值组成、DCLKoutX_DDLY_CNTH 和 DCLKoutX_DDLY_CNTL。 最小值
    _CNTH/_CNTL 值为2、最大_CNTH/_CNTL 值为16。 这将产生一个最小的替代方案
    除以值4、最大值为32。

    基于此、我认为 DCLKoutX_DDLY_CNTH/_CNTL 是分频器值的一半。您能不能说出上述语句的含义?  

    谢谢、此致、

    相扑

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

    非常感谢您的详细答复。

    因此,根据您的答复,如果未提供同步,VCO 输出将不会相位对齐。 我是对的吗?

    请参阅 LMK04828数据表的"第9.3.3节数字延迟"

    在这两种延迟模式下、常规时钟分频器由备用分频值替代。 替代除法
    值由两个值组成、DCLKoutX_DDLY_CNTH 和 DCLKoutX_DDLY_CNTL。 最小值
    _CNTH/_CNTL 值为2、最大_CNTH/_CNTL 值为16。 这将产生一个最小的替代方案
    除以值4、最大值为32。

    基于此、我认为 DCLKoutX_DDLY_CNTH/_CNTL 是分频器值的一半。您能不能说出上述语句的含义?

    谢谢、此致、

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

    [引用 user="Lakshmi sumala grande">]根据您的回复,如果未提供同步,VCO 输出将不会进行相位对齐。 我是正确的吗?

    我一直发送一 个同步脉冲来确保时钟同步、通常我按照第37页的 SYSREF 示例9.3.2.1.1设置的步骤2e 所述进行同步。

    [引用 USER="Lakshmi sumala 外号]]基于此、我认为 DCLKoutX_DDLY_CNT/_CNTL 是分频器值的一半。您能不能说出以上语句的含义?  [/报价]

    在静态数字延迟情况下、如果所有 DDLY CNTH/CNTL 值都设置为4/4。  那么,所有时钟都将在同一相位开始----无论分频器是什么。  但是、如果其中一个设置为4/5、2/7或任何其他添加到9的组合、则该时钟将从其他时钟延迟一个周期。

    在动态数字延迟情况下、如果您除以8、并且 DCLKoutX_DDLY_CNTI/_CNTL 值设置为4和4。  动态数字延迟不会产生任何影响、因为这通常是在时钟周期内发生的。  4个 VCO 周期为低电平、4个 VCO 周期为高电平。  如果您想延迟一个 VCO 时钟周期、只要一些 CNTH 和 CNTL 寄存器为9、上升沿现在将延迟1个周期。  根据提供给 CNTH 和 CNTL 的特定值、实际波形将是您的波形。  请注意、对于动态数字延迟、有必要在数字延迟寄存器之后将相同的 DDLY_CNTH/CNTL 值编程到寄存器中。  换言之、当使用动态数字延迟时、对于 DCLKout0、寄存器0x101和0x102应编程为相同的值、并且不会改变。  当对 DDLYD_STEP_CNT 寄存器进行编程时、针对 DCLKoutX 分频器进行延迟调整、该分频器的 DDLYd#_EN = 1。

    [引用 USER="Lakshmi sumala 外号]]基于此、我认为 DCLKoutX_DDLY_CNT/_CNTL 是分频器值的一半。您能不能说出以上语句的含义?  [/报价]
    DCLKoutX_DDLY_CNTH/CNTL 可以是您喜欢的任何设置。

    73、
    Timothy

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

    您好、Timothy、

    非常感谢您的回复。 现在它很清楚。 我需要再作一个澄清,以便进一步了解。

    "在静态数字延迟情况下、如果所有 DDLY CNTH/CNTL 值都设置为4/4。  那么,所有时钟都将在同一相位开始----无论分频器是什么。  但是、如果其中一个设置为4/5、2/7或任何其他添加到9的组合、则该时钟将从其他时钟延迟一个周期。"

    这意味着、假设 clkout0/1/2被8分频。 clkout0设置 CNTL=4 CNTH=4。 clkout1设置 CNTL=2 CNTH=7。 clkout2设置 CNTL=7 CNTH=2。 假设低电平由"A"表示、高电平由"b"表示。

    clkout0= aaabbbbaaaabbbbaaaabbbaaabbbbaaaabbbb

    clkout1= aabbbbbaaaabbbbaaaabbbabbbbaaaabbbb

    clkout2= aaaaaaabbaaaabbbbaaaabbbbaaaabbbb

    因此、clkout1和 clkout2相对于 clkout0实际上是1 clk 周期延迟、但 clkout1/2的第一个脉冲不会是50%占空比。 如果我的理解有误、请改正。

    谢谢、此致、

    相扑

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

    实际上、对于静态数字延迟情况、CNTL + CNTH 的输出时钟都保持低电平、然后进入正常的分频器操作。

    只有在动态数字延迟情况下、您才能看到单独的低计数和高计数。 您还可以参考上面提到的+1 DDLYd 寄存器的 TICS Pro LMK04828软件(如0x0102)。

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

    您好、Timothy、

    感谢您清除我的所有疑问。 现在它很清楚。 如果数据表中包含所有这些信息、那就更好了。

    谢谢、此致、

    相扑