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.

[参考译文] ADS9813:数据偏移

Guru**** 2680515 points

Other Parts Discussed in Thread: ADS9813, ADS9813EVM, TSWDC155EVM

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1591552/ads9813-data-offset

器件型号: ADS9813
主题中讨论的其他部件:TSWDC155EVM

尊敬的所有人:

我使用的是 ADS9813 模数转换器。 我在双通道 SDR 模式下运行 ads9813、并使用全一模式的内置测试模式来快速启动 ADC、发现只有通道 0 与全一模式完全相同的通道 7、即 18'h3ffff。 但其余通道模式会是 18'h03fff。 我在 fclkout 的上升沿对数据进行采样。 我想知道帧和第一个有效数据位之间的有效数据帧是否有固定偏移?

Andy.Liu

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

    尊敬的 Andy:

    感谢您的发布。 请问您使用的是 ADS9813 什么类型的应用?

    打开设备电源时、请确保:

    1. 提供自由运行的 SMPL_CLK
    2. 完成 数据表第 6.4.3 节中列出的初始化序列
    3. 提供 SMPL_SYNC 脉冲以将输出数据索引与 FCLKOUT 对齐

    然后、您可以设置测试图形。 您能分享一下完成这些步骤后偏移是否仍然存在吗?

    此致、

    Samiha

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

    尊敬的 Samiha:

    我使用 FPGA 作为具有 FMC 连接的 ADS9813 EVM 的接口。 我的目标是对 ads9813 进行编程以在双通道 SDR 模式下运行。

    我确定遵循了上电过程、并且我认为我提供的 SPI 初始化序列是正确的。 以下是为所有一个固定测试模式对 ads9813 寄存器进行编程的 SPI 序列 I。

              4'd0tmp ='{8'h0416'h000B
              4'd1tmp ='{8'h0316'h0002
              4'd2tmp ='{8'h9216'h0002
              4'd3tmp ='{8'hC516'h0604
              4'd4tmp ='{8'HC116'h0300
              4'd5tmp ='{8'h1316'h0002
              4'd6tmp ='{8'h1416'hFFFF; // TP0_A[15:0]表示模式 24'hFFFFFF
              4'd7tmp ='{8'h1516'hFFFF; // TP1_A[7:0]=0、TP0_A[23:16]=0xFF
              4'd8tmp ='{8'h1616'hFFFF
              4'd9tmp ='{8'h1816'h0002
              4'd10tmp ='{8'h1916'hFFFF; // TP0_B[15:0]
              4'd11tmp ='{8'h1A16'hFFFF; // TP0_B[23:16]
              4'd12tmp ='{8'h1B16'hFFFF
    问题仍然存在。 我想分享屏幕截图。 向您展示详细信息。
    对于某些通道、有 4 位零、不应存在
    此致
    Andy Liu
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Samiha:

    我使用 FPGA 作为具有 FMC 连接的 ADS9813 EVM 的接口。 我的目标是对 ads9813 进行编程以在双通道 SDR 模式下运行。

    我确定遵循了上电过程、并且我认为我提供的 SPI 初始化序列是正确的。 以下是为所有一个固定测试模式对 ads9813 寄存器进行编程的 SPI 序列 I。

              4'd0tmp ='{8'h0416'h000B
              4'd1tmp ='{8'h0316'h0002
              4'd2tmp ='{8'h9216'h0002
              4'd3tmp ='{8'hC516'h0604
              4'd4tmp ='{8'HC116'h0300
              4'd5tmp ='{8'h1316'h0002
              4'd6tmp ='{8'h1416'hFFFF; // TP0_A[15:0]表示模式 24'hFFFFFF
              4'd7tmp ='{8'h1516'hFFFF; // TP1_A[7:0]=0、TP0_A[23:16]=0xFF
              4'd8tmp ='{8'h1616'hFFFF
              4'd9tmp ='{8'h1816'h0002
              4'd10tmp ='{8'h1916'hFFFF; // TP0_B[15:0]
              4'd11tmp ='{8'h1A16'hFFFF; // TP0_B[23:16]
              4'd12tmp ='{8'h1B16'hFFFF
    问题仍然存在。 我想分享屏幕截图。 向您展示详细信息。
    对于某些通道、有 4 位零、不应存在
    此致
    Andy Liu
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Andy:

    感谢您的耐心,因为我们离开办公室的感恩节假期。

    感谢您分享信息。 寄存器写入看起来正确。 您是否在初始化序列之后将 SMPL_SYNC 信号脉冲过一次?

    我将使用 ADS9813EVM 在我一侧检查它、然后返回给您。

    此致、

    Samiha

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

    尊敬的 Andy:

    感谢您的耐心,因为我们离开办公室的感恩节假期。

    感谢您分享信息。  寄存器写入看起来正确。 您是否在初始化序列之后将 SMPL_SYNC 信号脉冲过一次?

    我将使用 ADS9813EVM 在我一侧检查它、然后返回给您。

    此致、

    Samiha

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

    尊敬的 Samiha:

    没问题。

    是的、我在初始化序列之后施加了一次 SMPL_SYNC 信号脉冲。 期待尽快收到您的答复。

    此致

    Andy Liu

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

    尊敬的 Andy:

    我使用 4 通道 DDR 和 4 通道 SDR 在 ADS9813EVM 上进行了测试。 除了设置相同的 0xC1 之外、我使用的寄存器写入与您相同、并且能够看到所有通道的 0xFFFFFF 输出。 在您的情况下、问题可能是该器件不支持双通道 SDR 模式。 您可以尝试双通道 DDR 或其中一种支持的模式吗?

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

    尊敬的 Samiha:

    感谢您的答复。 实际上、我已经尝试了所有模式、即双通道 DDR、四通道 DDR 和四通道 SDR。 仍无法看到全部一种模式 0xffffff。  

    顺便说一下、采样时钟频率的可用值是多少? 数据表中的 3.9MHz ~ 8.1MHz 之间是否有任何值? 或者、只有 4 和 8MHz?

    此致、

    Andy Liu  

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

    尊敬的 Andy:

    如何评估 ADC? 它是位于您自己的电路板上还是使用的是 ADS9813EVM? 如果使用您自己的电路板、您能分享 ADC 原理图吗?

    可以使用 3.9MHz 和 8.1MHz 之间的任何 SMPL_CLK 值。 您使用的时钟值是多少?

    您还能否读回寄存器 0x14、0x15、0x16 中的寄存器值、以便我们可以验证寄存器是否正确写入? 是否仅在一个 ADC 上看到了此问题?

    此致、

    Samiha

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

    尊敬的 Samiha:

    感谢 foy 您的答复。

    我使用的是 ADS9813EVM、我只有一个 ADC。 我已经在 4 通道 DDR 模式下尝试了 4MHz 和 8MHz、但结果仍未完全一致。 我稍后将尝试读回寄存器值。

    此致、

    Andy Liu

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

    尊敬的 Andy:

    很好了解。 如果您使用的是 ADS9813EVM、您是否将其与 TSWDC155EVM 控制器卡和软件 GUI 配合使用? 如果没有、如何为电路板供电? 更好地了解您的设置将帮助我找出问题的根源。

    此致、

    Samiha

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

    尊敬的 Samiha:

    我不采用这两种方法中的任何一种、即  TSWDC155EVM 控制器卡和软件 GUI。 我正在使用带 FMC 的 Xilinx xczu15eG FPGA 为 ADS9813EVM 供电。 我使用 TI 提供的示例 RTL 代码 (ADS98XX-RTL FPGA-EXAMPLE-CODE V1.1.0) 进行数据采集。 我将用于 Xilinx 7 系列的 IDDR 基元替换为用于 UltraScale+ FPGA 的 IDDRE1。 它成功编译并通过了所有一种测试模式。 但当我使用 SPI 配置切换到另一种测试模式时、例如 24'h123456。 即使我每 24 位检查一次帧、结果也与测试图形不匹配。 我还不明白。

    此致、

    Andy Liu

     

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

    尊敬的 Andy:  

    感谢您的分享。 如果您有 TSWDC155EVM、我们可以使用 GUI 确认运行。 这听起来可能是解串器代码未按预期解析输出的问题。  我不熟悉 IDDRE1 原始性、因此我无法与之对话、但快速的谷歌搜索显示、Xilinx 7 系列和 IDDRE1 的 IDDR 可能以不同的方式运行时钟(就像 IDDRE1 需要真正的反相时钟的情况)。 只是一个想法、因为我使用 FPGA 代码的体验有限、但我会尝试在那里进行调试。

    您是否能够通过逻辑分析仪直接从 ADC 的输出中读取几个样本的输出? 这样我们可以确认 ADC 输出的是正确的数据。 正如我之前提到的、回读测试图形寄存器也是一个很好的调试步骤。  

    此致、

    Samiha

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

    尊敬的 Samiha:

    我使用 Zynq-7000 系列和 TI 提供的 RTL 示例代码解决了这个问题、这些示例代码与 Xilinx FPGA 兼容。 我可以看到 100kHz、10kHz、100kHz、50mV 正弦波的波形。 以及通过 SPI 切换寄存器的斜坡测试图形。

    非常感谢您的帮助。

    祝你一切顺利

    Andy Liu