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.

[参考译文] ADC12DJ2700:FG 校准失败

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1051687/adc12dj2700-fg-calibration-failure

器件型号:ADC12DJ2700
主题中讨论的其他器件: LMK04828LMX2592LMH5401ADC12DJ5200RF

您好、

ADC12DJ2700中的前景校准有问题。

通常、这意味着对于 JMODE_0、JMODE_2、前台校准通过。

此外、对于采样时钟为~2450及更高的 JMODE_16、将通过前台校准。

对于 JMODE_16、对于低采样时钟、主要在~2400MHz 和更低频率下、它会失败。

 

通常情况下、FG_DONE 位轮询花费高达400ms 的时间、直到检测到 FG 校准成功。

我们尝试将时间延长到几秒、但没有使用。 故障仍然存在。

 

在本例中、什么会影响 FG 校准故障?

我们应该如何进行调试?

 

背景信息

在我们的设计中、LMK04828用作 JESD204B DEVCLK 和 SYSREF 的时钟分配器件、
它为 Xilinx FPGA (JESD204B 接收器)和 LMX2592供电、后者为 ADC12DJ2700采样时钟供电。

系统模拟输入进入 LMH5401差动运算放大器(SE 输入至差动输出)、该运算放大器馈入 ADC12DJ2700。

 随附的查找 JMODE_16、2700MHz (FG 校准通过)和 JMODE_16、2200MHz (FG 校准失败)的 ADC 寄存器转储。

e2e.ti.com/.../AdcRegisterDump.txt

谢谢、

吉尔

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

    您好、Gil、

    是否可以确认您在多个设备上看到了此问题? 此外、您能否共享用于对 ADC 进行编程的寄存器写入序列?

    此致、

    Neeraj

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

    Neeraj、您好!

    是的。 我们已经在 多 个系统中看到过这一点。

    JMODE_0和 JMODE_2的写入序列会成功生成  FG 校准。

    在 JMODE_16中、在一个特定的采样频率范围(~2400MHz 和更低)内、FG 校准失败。

    在采样时钟为~2450及更高的 JMODE_16中、前台校准通过。

    写入顺序如下:

    R000.SOFT_RESET = 1.

    睡1us

    R2C2                                      = 0x1F

    R200.JESD_EN                     = 0

    R061.CAL_EN                      = 0

    R029.SYSREF_RECV_EN  = 1.

    R029.SYSREF_PROC_EN  = 1

    R03B。 TMPST_RECV_EN   =标记 En;  “1”启用 ADC 标记,“0”禁用 ADC 标记

    R03B。 TMSTP_LVPECL_EN =标记 En

    R160.TIMESTAMP_EN       =标记 En

    R201.JMOD                          = JMOD; 0/2/16

    R202.KM1                             = 0x5

    R204.SYNC_SEL                 = 0

    R204.SCR                              = 1

    R204.SFORMAT                  = 0

    R030.FS_RANGE_A[15:8]  = FS_A[15:8]; 0x2000 500mVpp、0xA000 800mVpp、0xFFFF 1000mVpp

    R031.FS_RANGE_A[7:0]   = FS_A[7:0]

    R032.FS_RANGE_B[15:8]  = FS_B[15:8]

    R033.FS_RANGE_B[7:0]    = FS_B[7:0]

    R216.DIG_BIND_A             = 0

    R216.DIG_BIND_B             =~ AdcChanDigtalBindEn; “1”DDC1和 DDC2来自通道1

    R219.NCO_SYNC_ILA       = 0

    R219.NCO_SYNC_NEXT   = 0

    R220                                      = FREQA[31:24]; DDC1 NCO 的频率

    R221                                      = FREQA[23:16]

    R222                                      = FREQA[15:8]

    R223                                      = FREQA[7:0]

    R240                                      = FREQB[31:24]; DDC2 NCO 的频率

    R241                                      = FREQB[23:16]

    R242                                      = FREQB[15:8]

    R243                                      = FREQB[7:0]

    R225                                     = PHASEA0[15:8]; DDC1 NCO 的相位

    R224                                     = PHASEA0[7:0]

    R245                                     = PHASEB0[15:8]; DDC2 NCO 的相位

    R244                                     = PHASEB0[7:0]

    R048.SER_PE                      = 0x7

    R062.CAL_CFG                   = 0x5

    R029.SYSREF_SEL = 0

    R2B0.SRC_EN         = 0

    R2B1.SRC_AVG     = 2

    R2B1.SRC_HDUR   = 3

    R2B0.SRC_EN         = 1

    等待 R2B4.SRC_DONE = 1

    R061.CAL_EN                      = 1

    R200.JESD_EN                     = 1.

    R06C.CAL_SOFT_TRIG     = 0

    R06C.CAL_SOFT_TRIG     = 1.

    等待 R06A.FG_DONE   = 1

    R2C2                                      = 0x0

    在第一个帖子中、您可以在 FG 校准失败时以及通过时找到 ADC12DJ2700寄存器值。

    您能否描述 FG 校准失败的可能原因?

    谢谢你

    吉尔

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

    您好、Gil、

    但是、从熔丝 ROM 中得到的值没有被正确加载到 ADC 中。 在第二步的寄存器写入序列中、您可以尝试以下两种操作。

    1.将延迟从1us 增加到100ms。 或者 、不是延迟轮询寄存器地址0x270的位"0"。 当熔丝完成加载时、它将读取为1。 因此、等待位0读取1、然后继续进一步写入寄存器。

    此致、

    Neeraj

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

    Neeraj、您好!

    你的想法证明是正确的!

    我们将延迟更改为1ms、并且两个系统都通过了 FG 校准。

    您是否有理由建议延迟100毫秒? (数据表状态为750ns)。

    1ms 应该可以吗? 我们应该使用100ms 还是应该轮询寄存器0x270中的位"0"?

    是否有任何有关该寄存器和其他保留寄存器的文档?

    谢谢

    吉尔

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

    您好、Gil、

    保险丝负载速度基于应用于 ADC 的 DEV 时钟频率。 如果没有将 DEV 时钟应用于 ADC、则熔丝将使用大量内部时钟加载。  

    我认为最好的选择是轮询寄存器0x270中的位"0"。 这是 ADC12DJ5200RF 数据表中的文档。

    此致、

    Neeraj