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.

[参考译文] CDCE6214-Q1:CDCE6214

Guru**** 2576215 points
Other Parts Discussed in Thread: CDCE6214

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

https://e2e.ti.com/support/clock-timing-group/clock-and-timing/f/clock-timing-forum/1569605/cdce6214-q1-cdce6214

器件型号:CDCE6214-Q1
主题中讨论的其他器件:CDCE6214

工具/软件:

您好论坛、

以上是时钟 IC 的当前实现。  我们正在获得正确的输出频率、但输出反相或具有 180 度的相位差。  我们使用 OUT3 来驱动下一个 板时钟芯片、下面是来自第一个板的基准时钟(黄色信号)、而 OUT3(蓝色信号)用于驱动下一个板上的 pri 基准输入。  

 启用零延迟模式、下面是寄存器设置。

  e2e.ti.com/.../8880.HexRegisterValues.txt

我们需要使输入 2MHz 信号输入和输出同相。  是否有办法做到这一点?

谢谢您、

乔治·维格莱特

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

    George、

    当将基准倍频器设置为 1 (R25[7:0]= 1) 并将 PLL_ndiv 加倍至 1170 (R30[14:0]) 时、您是否仍然会看到此问题?

    谢谢、

    Kadeem

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

    我更改了以下寄存器写入:

    0x001E1170、

    0x00193401、

    我获得相同的结果、在基准时钟上升沿触发、out3 在下降沿触发、如原始示波器捕获所示。

    谢谢您、

    乔治

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

    George、

    尝试切换到内部零延迟模式路径 (R0[10]= 1) 并重新校准 PLL。  

    之后、器件是否具有正确的行为?

    谢谢、

    Kadeem

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

     下面是我的写函数、如果我将校准行添加到中、就没有输出。  如果我删除它、我确实会得到输出、无论哪种方式都不会设置锁定状态。  还提供了寄存器数组。  我们使用 2MHz 输入基准时钟、该时钟在 OUT1 和 OUT4 上的 OUT0、OUT2、OUT3 和 10MHz 上生成 2MHz 输出时钟。  即使当我不执行重新校准并且它没有锁定时、我也会获得 2MHz 和 10MHz 信号。

    e2e.ti.com/.../config_5F00_CDCE6214_5F00_10MHZ_5F00_ZDM.h

    static bool ConfigureClock ()

    INT 计数= 0;

    uint16_t v = 0;

    //复位

    HAL_GPIO_WritePin (PDN-GPIO_Port、PDN-Pin、GPIO_PIN_RESET);

    HAL_DELAY (250);

    HAL_GPIO_WritePin (PDN-GPIO_Port、PDN-Pin、GPIO_PIN_SET);

    HAL_DELAY (25);

    //I2C_WRITE_CDCE6214_reg (0x67、0x000F、0x5020);//解锁 EEPROM

    HAL_DELAY (25);

    // printf(“Configuring Clock chip\r\n“);

    //计算数组中的元素数

    //模板 6214_64mHz_values

    size_t num_elements = sizeof (cdce6214_v6_10MHz_values)/ sizeof (uint32_t);

    //迭代数组、并将每个 uint32_t 值拆分为两个 uint16_t 值

    对于 (size_t i = 0;i < num_elements;i++)

    uint32_t value = cdce6214_v6_10MHz_values[i];

    //将值拆分为大写和小写字

    uint16_t reg_addr =(uint16_t)(value >> 16);//高位字为 reg_addr

    uint16_t reg_value =(uint16_t) value;//低位字为 reg_value

    //打印拆分值

    if(!I2C_WRITE_CDCE6214_reg (0x67、reg_addr、reg_value))

    // printf(“失败的索引%zu:reg_addr = 0x%04X、reg_value = 0x%04X\r\n“、i、reg_addr、reg_value);

    返回 false;

    }

    HAL_DELAY (1);

    }

    HAL_DELAY (50);

    I2C_WRITE_CDCE6214_reg (0x67、0x0000、0x1510);//校准

    for (count = 0;count < 5;count ++){//检查是否锁定

    HAL_DELAY (50);

    V = I2C_READ_CDCE6214_reg (0x67、0x0007);

    如果 ((v & 0x01)== 0x01){

    HAL_GPIO_WritePin (SYSTEM_RDY_GPIO_Port、SYSTEM_RDY_Pin、GPIO_PIN_RESET);

    休息

    }

    }

    返回 true;

    }

    谢谢您、

    乔治

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

    George、

    我认为我在这里看到了问题。 我将您的设置加载到 TICS Pro 中、并看到以下内容:

    零延迟模式专门针对来自 PLL 的时钟。 当使用 REFCLK 作为时钟源时、时钟不处于零延迟模式。 零延迟的时钟源必须来自 PSA 或 PSB。

    我还建议将 PLL 锁定检测窗口从 1.36ns 增加到 8.9ns、以改善 PLL 锁定、并将 PLL 顺序从分数阶 1 更改为整数。

    谢谢、

    Kadeem

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

    尊敬的 Kadeem:

    感谢您提供的信息、我 更新了 PSA 反馈、并将 锁定检测窗口时间增加到 8.9ns、系统现在已锁定。  下面是所使用的寄存器值。  现在、这确实会锁定、但如果 I power cycle 会锁定在不同的相位、并且永远不会与基准时钟对齐。  示波器屏幕截图显示了基准时钟、蓝色是 OUT2 频率。

    const uint32_t cdce6214_v6_10MHz_values[]={

    0x00550000、

    0x005400,

    0x0053FF00、

    0x005205C0、

    0x00510004、

    0x00500000、

    0x004F0008、

    0x004E1000、

    0x004D0000、

    0x004C0188、

    0x004B4008、

    0x004AA181、

    0x00490000、

    0x00480027、

    0x00470006、

    0x00460808、

    0x0045A181、

    0x00440000、

    0x004300C3、

    0x00420006、

    0x00410808、

    0x0040A181、

    0x003F0000、

    0x003E00C3、

    0x003D0000、

    0x003C0008、

    0x003B2008、

    0x003A502C、

    0x00390000、

    0x00380027、

    0x0037001E、

    0x00363400、

    0x00350069、

    0x00345000、

    0x003340C0、

    0x003207C0、

    0x00310013、

    0x00301A14、

    0x002F0A50、

    0x002E0000、

    0x002D4F80、

    0x002C0318、

    0x002B0051

    0x002A0002、

    0x00290000、

    0x00280000、

    0x00270000、

    0x00260000、

    0x00250000、

    0x00240000、

    0x002327F8、

    0x00220000、

    0x00212710、

    0x00200000、

    0x001F0000、

    0x001E0249、

    0x001D0000、

    0x001C0000、

    0x001B0004、

    0x001A0000、

    0x00190400、

    0x00180719、

    0x00170406

    0x001600A2、

    0x00150585、

    0x00140000、

    0x00130000、

    0x00120000

    0x001126C4、

    0x0010921F、

    0x000FA037、

    0x000E0000、

    0x000D0000、

    0x000C7002、

    0x000B0000、

    0x000A0000、

    0x00090000、

    0x00080001、

    0x00070C0F、

    0x000619EC、

    0x00050008、

    0x00040000、

    0x00030000、

    0x00020003、

    0x00012310、

    0x00001500

    };

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

    这是工具中的配置  

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

    George、

    请更改使用倍频器(将“倍频器/分频器“块从 x2 更改为/1)、并将整数分频器加倍 (585 至 1170)。 完成此操作后、它是否始终锁定相位?

    谢谢、

    Kadeem

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

    进行这些更改似乎会产生相同的结果。  时钟 IC 数据表指定参考时钟为 10 –200MHz、这是否是我们使用 2MHz 参考时出现的问题?

    ——乔治

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

    我尝试配置 SYNC 引脚并进行切换、在配置寄存器后、它会使所有输出静音、但当输出返回时、它们不与基准时钟对齐。 SYNC 引脚是否应 在内部将其输出与基准时钟边沿对齐?

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

    George、

    我在使用内部路径连接配置后将其工作。

    e2e.ti.com/.../George_5F00_ZDM_5F00_Configuration.tcs

    我认为关键的是确保在需要遵循零延迟模式的输出上启用 SYNC。 这会将分频器与输入时钟对齐。

    写入这之后、我设置 SYNC 位并查看 OUT3 时钟与输入时钟同相。

    此外、请注意、在您的配置中、还为 LVDS 设置了 OUT2 输出、但 SECREF 输入格式(对于外部模式)为 LVCMOS 而非差分。

    谢谢、

    Kadeem

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

    尊敬的 Kadeem:  

    我刚刚在用户控制中找到了这些寄存器、并准备好测试它们。我将尝试您的解决方案、让您知道它是如何实现的、但确实有必要修复它。  我修改了此电路板、使其不使用差分时钟。  

    谢谢您、

    乔治  

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

    尊敬的 Kadeem:

    我非常感谢所有的帮助、现在时钟是确定性的。   下图显示参考时钟为黄色、第一块板上的 out3 为蓝色、用于驱动第二块板上的参考时钟、紫色线为第二块板上的 out3。  它的偏移始终相同、如果我不断添加电路板、每个输出的偏移都将相同。  是否有办法进行配置?

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

    George、

    您能否提供您的寄存器文件或 TCS 文件以及当前设置? 今天我将无法进入实验室进行测试、但我仍然可以查看并查看是否可以发现问题。

    您是否直接在器件引脚上进行探测? 我们在这里探测零延迟模式测试。

    谢谢、

    Kadeem

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

     尊敬的 Kadeem:

    已附加配置文件。  对于基准时钟、测量结果在引脚 5(黄色)上测得、对于 OUT3 的 2MHx 输出信号、测量结果在引脚 14(蓝色)上测得  

    e2e.ti.com/.../Current_5F00_configuration.tcs

    下面参考引脚 5(黄色)到 OUT0 引脚 7(蓝色)的另一个问题是 180 相位差。  好的一点是每次重启时结果总是相同的、并且可以预测地运行。

    谢谢您、

    乔治  

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

    George、

    我仍然不知道您为何在 OUT3 上看到偏移。 我们在实验中没有看到具有类似设置的此偏移。

    话虽如此、我注意到有几个设置是关闭的:

    1. OUT0 的 CMOS 压摆率设置为无效值:
    2. OUT1 的 CMOS 压摆率设置为无效值:
    3. OUT4 的 CMOS 压摆率设置为无效值:

    对于 OUT0 问题、这是因为 OUT0 不是来自 PLL。 因此、对于源自 OUT0 的时钟、没有零延迟模式。

    谢谢、

    Kadeem