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.

[参考译文] ADC32J25:JESD204B 配置

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1243974/adc32j25-jesd204b-configuration

器件型号:ADC32J25
主题中讨论的其他器件:LMK04828

您好!

我们现在已经构建了电路板、并且正在启动过程中。

原理图以前已经审阅过、但想再次进行检查。

  • 在第18页上
    • MGTREFCLK0P/N 是 FPGA (接收器)的160 MHz 器件时钟
    • FPGACLK1P/N 是 FPGA 的8 MHz SYSREF
    • ADCCLKP/N 是 ADC (ADC32J25IRGZT、发送器)的160 MHz 时钟
    • SYSREFP/N 是 ADC 的 SYSREF
    • 它们应该都是 LVDS 吗?
      • 如果是、我应该移除 R414和 R415
      • 我是否还应该将 R418和 R419更新为0欧姆?
      • 是否仍需要 R346和 R347来将 LVDS 连接到 FPGA?
  • 之前、幻灯片中提到了
    • 通道速率=(FS * 10 * F)/S。当 LMFS = 2221时、为(160M * 10 * F)/1 = 3.2Gbps。 如果您为 K 使用20值、则 SYSREF = FS /(N * K)、其中 N 是任意整数。 如果 N = 1、则 SYSREF = 8MHz。
    • 根据 JESD204B 标准、必须满足以下两个公式:

       1 < K < 32

      17 < F*K< 1024

      由于 F 为2、K 至少需要为9。 对 K 使用的值越大、为数据提供的缓冲就越多、但延迟就越大。 某些器件仅允许使用 K 的特定值。

  • n 似乎未与任何参数相关联。  则 K 变为任意值。  如何确定 N?

原理图已经过审阅、但您能否再次

  • 表2: SYNCP_ADC 和 SYNCM_ADC
    • 通过3.3V CMOS 生成
  • 表3:FPGACLK1P/N:LMK04828的 SYSREF
    • LVDS
  • 表5:DAP/M_ADC、DBP/M_ADC 和 GTREFCLK0P/N
    • 所有 LVDS
  • 表15: ADC32J25IRGZT
  • 表18:LMK04828

我认为除同步之外的所有差分信号都是 LVDS。

如果您可以再看一下并确认电路和端接、我将不胜感激。

此致、

安德鲁

e2e.ti.com/.../1067.fibersense_5F00_v1p23.pdf

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

    Andrew、您好!

    我将检查这一点。 只是一个抬头,响应可能会因假期延迟。

    此致、Amy

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

    Andrew、

    是的、所有时钟和 SYSREF 都应为 LVDS。

    n 是一个整数、使得 SYSREF 频率落在多帧边界上。 如果要以较低的速度运行 SYSREF 频率、则它必须是最大 SYSREF 频率(FS/K)的整数倍。 在上述示例中、如果设置 N=2、则新的 SYSREF 频率将为4MHz。 这仍然位于多帧边界上。

    我在原理图中看到的唯一遗憾是、此器件使用差分同步。 SYNCP 和 SYNCN 应与0.95V 的 VCM 直流耦合。

    通常在这种情况下、使用分压器执行 LVDS 至 LVPECL 的转换。 这些 FPGA 引脚的 IO 电平是多少?

    谢谢,Chase

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

    尊敬的 Chase:

    很抱歉耽误你的时间。  旅行时的情景。

    SYNCP~和 SYNCM~是来自常规 FPGA 引脚的3.3V CMOS。

    它在1.3V VIH 下是否仍能工作?

    谢谢!

    安德鲁

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

    尊敬的 Chase:

    您能不能看一下原理图上的 SYNCP/M~信号?

    它们由常规 FPGA 引脚使用3.3V CMOS 生成。

    同样对于1类 JESC、根据我的理解、不使用 SYNC~。  而是使用 SYSREF。

    是这样吗?

    谢谢!

    安德鲁  

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

    尊敬的 Chase:

    BTW 我在"使用 ADC32J25进行当前设计的原理图审阅"中发现了以下引用

    "SYNC 基本上是 JESD204B 标准中的直流信号、不应具有交流电容器。 也不需要100 Ω 终端。"

    我想这就是我保持设计现状的原因。

    请告诉我。

    安德鲁

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

    尊敬的 Chase:

    您可以看一下或尝试一下吗?

    DCLKout0是160 MHz 处 FPGA 的参考时钟

    SDCLKout1是8 MHz 端 FPGA 的 SYSREF

    我试探这两个。  我在 DCLKout0上观察到160 MHz 信号、但在 SDCLKout1上没有信号。

    您能看到我是否缺少 SYSREF 输出的内容吗?

    谢谢!

    安德鲁

    e2e.ti.com/.../LMK04828b_5F00_v071623c.tcs

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

    我尝试了几种不同的配置、但在 SDCLKout1上仍然没有 SYSREF。

    我当时只是在查看数据表。  我是否需要脉冲或切换 LMK04828上的 SYNC (引脚6)以生成 SYSREF 信号?

    谢谢!

    安德鲁

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

    Andrew、您好!

    很抱歉耽误你的时间。 我在本周早些时候生病了,今天又回来了。 请在下面找到我的评论。

    SYNCP~和 SYNCM~是来自常规 FPGA 引脚的3.3V CMOS。

    它在1.3V VIH 下是否仍能工作?

    [/报价]

    不、这不起作用。 该器件需要一个直流耦合差分信号进行同步、同时施加高达 AVDD + 0.3V 的最大电压。 这意味着任一 SYNC 引脚的最大电压应仅为2.1V。

    同样适用于1类 JESC,据我所知,不使用 SYNC~。  而是使用 SYSREF。

    部分正确、JESD204B 子类1使用 SYSREF 来实现确定性延迟、但仍使用 SYNC 来 开始启动的 CGS (代码组同步)阶段。 当 ILAS 落在 LMFC 边界(子类1中与 SYSREF 对齐)时、ILAS (初始通道对齐序列)阶段将由 SYSREF 驱动。

    尊敬的 Chase:

    您可以看一下或尝试一下吗?

    DCLKout0是160 MHz 处 FPGA 的参考时钟

    SDCLKout1是8 MHz 端 FPGA 的 SYSREF

    我试探这两个。  我在 DCLKout0上观察到160 MHz 信号、但在 SDCLKout1上没有信号。

    您能看到我是否缺少 SYSREF 输出的内容吗?

    谢谢!

    安德鲁

    LMK04828b_v071623c.tcs

    [/报价]

    我们很快将请计时团队的一些成员来看看这一主题。

    我刚看了数据表。  我是否需要脉冲或切换 LMK04828上的 SYNC (引脚6)以生成 SYSREF 信号?

    根据我的理解、如果您处于引脚脉冲模式、则需要切换 LMK04828上的 SYNC 以生成突发 SYSREF 信号。 如果您处于连续 SYSREF 模式、则不必执行此操作。 同样、时钟团队的相关人员将为您回顾此内容。

    此致、Chase

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

    尊敬的 Chase:

    我在 LMK04828上启动了另一个线程、此时我将尝试查看 LMK04828是否设置正确。

    以下是寄存器文件以及设置 SYSREF 生成的步骤(第137行至第147行)。

    仍然看不到  SDCLKout1的 SYSREF 输出。

    同时、包括 SYNC~在内的所有控制信号都来自3.3V 引脚、

    因此它们高于 AVDD (1.8V)+ 0.3V。  我可以尝试读回。  

    它们是否会损坏 ADC? 即使我们大幅度减慢速度、它们也不会起作用吗?

    我将尝试查看是否有返修方法、但我正在准备进行电路板旋转。

    谢谢!

    安德鲁

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

    我错过了文件。  就在这里。

    谢谢!

    e2e.ti.com/.../HexRegisterValues_5F00_072023a.txt

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

    Andrew、您好!

    我能够在工作台上重现您的问题、但我仍然难以理解为什么我们都看到了相同的问题。 我应该在下周之前解决这个问题、然后我可以回到你的身边。 同时,跟踪蔡斯的回应,他所说的是正确的。  您可以通过切换 SYNC 引脚或使用 SYSREF 脉冲发生器来生成 SYSREF 信号、但不一定同时使用这两者。 您在下面的问题/陈述也是:

    以下是寄存器文件以及设置 SYSREF 生成的步骤(第137行至第147行)。

    仍然看不到  SDCLKout1的 SYSREF 输出。

    [/报价]

    与您在此处提到的相同问题相关:

    我在 DCLKout0上观察到160 MHz 信号,但在 SDCLKout1上没有信号。

    谢谢!

    此致!

    安德烈亚

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

    尊敬的 Andrea:

    这是我用于导出寄存器值的 TICS pro 文件。

    谢谢!

    安德鲁

    e2e.ti.com/.../LMK04828b_5F00_v072123a.tcs

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

    Andrew、您好!

    我解决了您的问题。 在您附加的第二个文件中、您需要:

    1) 1)设置 SYNC_DISSYSREF = 0、然后通过设置0x143 = 31和0x143 = 11来切换 SYNC。 这会将分频器复位并对齐输出。

    2) 2)设置0x144 = FF。 这可以禁用输出与同步事件重新同步。

    3) 3)设置0x143 = 11。 这会将器件设置为从通过 SPI 生成的 SYNC 引脚获取 SYNC。

    4) 4)设置0x139 = 03。 这使 SYSREF_MUX 输出成为连续的 SYSREF、因此您可以在任何时候探测引脚时看到信号。 如果您不想看到使用连续信号、但在探测时仍然看到该信号、则需要将示波器设置为在信号的上升沿触发。

    我已经附上了在结束时可用的.tcs 文件。 您应该加载它、它应该可以正常工作。

    e2e.ti.com/.../LMK04828_5F00_JESD204B_5F00_Config_5F00_Cust.tcs

    希望这对您有所帮助。 祝你好运!

    此致!

    安德烈亚

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

    尊敬的 Andrea:

    8 MHz Sysref 在遵循您的建议后工作!

    下面还附加了.TCS (与您的相同)和我使用的.hex 文件(基本上从 TICS Pro 导出、并在0x1FFF53之后添加了您建议的命令

    e2e.ti.com/.../0820.LMK04828_5F00_JESD204B_5F00_Config_5F00_Cust.tcs

    e2e.ti.com/.../HexRegisterValues_5F00_072423c_5F00_ti.txt

    现在、我将尝试使 ADC 与 JESD204B 一起工作。

    非常感谢

    安德鲁

    PS:我想 在尝试让 JESD204B 与 ADC 一起工作时再留几天时间。

     

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

    尊敬的 Andrea:

    您能否查看注释和原理图?

    主要是我想看看 LMK04828和 ADC32J25之间的信号类型是否一致

    • ADC32J25期望 ADCCLKP/N 和 SYSREFP/N 为 LVDS
    • 在 LMK04828中、这些信号被设计为 LVPECL。  我可以更新电阻器。

    谢谢!

    安德鲁

    e2e.ti.com/.../notes-072423a.pdf

    e2e.ti.com/.../6318.fibersense_5F00_v1p23.pdf

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

    Andrew、您好!

    下面是我对原理图的建议:

    • 我不会关闭 CLKout10_11、而是会关闭 CLKout8_9并使用 CLKout10_11实现100MHz 输出。 由于160MHz 和100MHz 引脚相对靠近、因此将它们彼此放置得尽可能远离可最大程度地减少串扰。
    • 铁氧体磁珠旁边的 VCC9_CP2 0.1uF 电容器应放置在铁氧体磁珠的左侧。 从 DS (包括下面)的图41可以看出、只应在相位检测器频率(PFD)< 50MHz 时、向右添加0.1uF、这不是您的情况(您的 PFD 为80MHz)。  

    • 对于任何 SPI 线路、一条很好的经验法则是在这些线路上靠近 SPI 引脚添加一个串联电阻器(10 Ω 电阻器就足够了)。 适用于 CLKIN_SEL (引脚58和59)、STATUS_LD (引脚31和48)、RESET (引脚5)、SYNC (引脚6)、SCK (引脚19)和 SDIO (引脚20)
    • 如果您计划将终端更改为 LVDS、则应为 ADC 和 SYSREF 使用以下设置(LMK04828 DS 上的图30)、因为 ADC 的两个输入都需要外部终端。

    • 对于 CLKout6、由于它是 LCPECL、因此您需要以下端接:

    •  CLKout8和 CLKout9的终端应位于接收器侧、而不是 LMK04828。

    我将让 Chase 对原理图的其余部分进行评论。

    此致!

    安德烈亚

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

    尊敬的 Andrea:

    再次感谢您的评分

    该评估板目前已构建完成、因此我会尽量使其工作、并在下一次开发电路板时遵循您的建议。

    对于  ADCCLKP/N 和 SYSREFP/N、ADC 是为 LVPECL 而设计的、LMK04828也是如此。

    所以我认为应该没问题。

    在 Sysref 工作的情况下、让我看看我是否可以从 ADC 捕获一些数据。

    我的问题是控制信号来自3.3V FPGA 引脚、高于1.8V + 0.3V。

    请允许我再次与您联系。

    此致、

    安德鲁

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

    Andrew、您好!

    我提出的所有建议都是为了让器件正常工作、而非要求、但 CLKout6除外、不确定您的终端是否会允许您看到 LCPECL 信号。 如果您需要的输出、那么我不会为 LMK04828担心。

    对于从 LMK04828传输到 ADC 的 LVPECL 信号、这不应在任一器件上引起任何问题。 实际上、ADC 可以处理 LVPECL 时钟、而由于摆幅更高、它实际上会提高 ADC 性能。 实际上、如果您不介意更高的功耗、我建议您选择 ADC 的终端。 希望这对您有所帮助。

    此致!

    安德烈亚

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

    尊敬的 Andrea:

    我一直在旅行,我又回到了这个。

    我已经验证 FPGA 能够正确地将寄存器值发送到 ADC。

    之前我担心 FPGA 组为3.3V、而 ADC SPI 需要1.8V 的信号。

    我能够正确读回寄存器值。  我改变了几次来确定。 并且每次都读取正确的寄存器值。

    话虽如此、我要尝试以下

    • 从 ADC32J25发送测试图形并在 FPGA 中进行验证。  
      • 我正在使用多个寄存器:3Bh、09h、0Ah 和0Bh。   
      • 我认为09h、0Ah 和0Bh 在 SERDES 级别生成了测试模式。
      • 3Bh 在链路层生成
      • 最后、我只是使用3Bh 尝试不同的测试图形、
      • 我已经达到这样的时间点、当我将模式设置为 K28.5 (010)时、我将始终在一致的基础上捕获 BCBC
      • 但是、对于其他模式、捕获的数据并不一致
      • SYSREF 将是周期性的。  我是否需要将这一次写入以便能够捕获 ADC 数据?

    e2e.ti.com/.../ADC_5F00_regi.txt

    您是否可以查看寄存器并让我知道需要更改哪些位置才能接收一致的测试图形?

    如果可能、您能否提供几组寄存器值以及预期的接收数据模式?

    此外、如果需要对 LMK04828进行更改以便一次性使用 SYSREF、请让我知道。

    BTW

    • 每多帧帧帧帧数:20
    • 每帧八位位组数:2
    • 换序:关闭

    除了 3Bh、09h、0Ah 和0Bh、串行器/解串器测试模式也是2Ah。  我正在尝试查看我应该查看哪些测试模式。

    来设置 FPGA 或 DSP 上的 JESD204B、

    • 换序:已禁用
    • 0 =链路 SYSREF Re 同步事件不需要 SYSREF 事件:
      • RX 内核使下一个 LMFC 上的 SYNC 无效。
      • SYSREF 延迟: 0 core_clk 周期延迟
      • 0 =内核仅在复位后检测到的第一个 SYSREF 事件时对齐 LMFC 计数器、
        并忽略后续的 SYSREF 事件

    再次感谢您的帮助

    安德鲁

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

    Andrew、您好!

    为什么需要生成测试图形? 您想用它们实现什么? 理想情况下、如果我知道您的目标/您打算使用 ADC32J25做什么、我可以更好地回答这个问题。 谢谢!

    此致!

    安德烈亚

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

    尊敬的 Andrea:

    我只想确保 JESD 在故障排除方面正常工作、但最终目标是从 ADC32J25获取采样数据。

    我们可以先尝试使用 ADC 数据。

    谢谢!

    安德鲁

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

    Andrew、您好!

    如果您能够立即测试数据、如果不能、我们将返回到您的测试模式、那将非常好。 如果这对您有用、请告诉我它是否有效、我们可以从那里开始。

    再次感谢、

    安德烈亚

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

    尊敬的 Andrea:

    好的。  让我立即尝试一下。

    谢谢!

    安德鲁

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

    你好、Andrea。

    下面是几个显示 K 字符的屏幕截图、

    此外、还随附了寄存器值列表。  唯一的非零值是2B、30和31。

    不确定下一步应该是什么。  我们已经对 FPGA 设计进行了返工、看来一切顺利。  所有时钟都在工作。  ILAS 正在工作。

    此致、

    安德鲁

      e2e.ti.com/.../adc_5F00_regi.pdf

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

    Andrew、

    这看起来 SYNC 存在问题、可能是设计它时采用的格式造成的。 我想您必须使用器件的软件同步来初始化该链接。 请参阅寄存器0x3A SYNC_REQ 和 SYNC_REQ_EN。

    此致、Chase

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

    尊敬的 Chase:

    您是对的。   

    我们处理了同步序列和计时、看起来我们正在接收有效数据。

    请查看所附的屏幕截图。

    我们只需要解析数据并进行验证。

    一个问题是、使用一次性 SYSREF 相对于重复 SYSREF 是否更有利?

    如果您指出我的方向来更新一次性 SYSREF 的 LMK04828寄存器、我会期待但也会感激您的帮助。

    此致、

    安德鲁

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

    Andrew、您好!

    很高兴您现在收到了正确的数据。 在 sysref 方面、连续的 sysref 非常方便、但并不是必需的。  ,您能为 LMK 注册更新提供帮助吗?

    此致、Chase

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

    Andrew、您好!

    要在切换同步后仅为 SYSREF 生成脉冲、您只需要设置寄存器0x139[1:0]= 0 (使 SYSREF_MUX =正常同步)。 希望这对您有所帮助!

    此致!

    安德烈亚

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

    尊敬的 Andrea:

    下面是在 FPGA 中捕获的波形。

    第一张图是直接来自 Vivado ILA 的数据图。

    在第2个波形中、我提取了第1个波形的红色部分并将它们串联在一起。

    简而言之、我认为 ADC 和 JESD 的基本机制是有效的。

    我们只需要改进同步过程并确定数据格式。

    我将关闭案例。

    一旦我们按预期使一切正常工作、我就可以更新原理图并分享以供审阅。

    感谢您和其他人的支持。

    此致、

    Andrewe2e.ti.com/.../adc_5F00_capture1.pdf

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

    Andrew、您好!

    我很高兴听到您的链接已建立。 您连接的数据看起来不错! 如果您有任何问题、请在以后任何关于此主题的论坛帖子中包含指向此主题的链接、因为它将帮助您提供一些幕后故事。

    此致、Chase