TI中文支持网
TI专业的中文技术问题搜集分享网站

ADC12DJ3200: JMODE1 数据拼接问题

Part Number:ADC12DJ3200

ADC设置为JMODE1模式,lane_rate=6.4G ,K=4 , jesd204B_core lck=160MHz, sysref都是20MHz, 采用3.2GHz的采样频率,
设置斜坡测试模式,通过ILA查看数据,从第九个数据开始,出现错误,如图:
linwei hu:

第三张图是数据解析的示意,请问哪里有误?

,

Cherry Zhou:

您好,您的问题我们升级到英文论坛看下,有答复尽快给您。

,

Cherry Zhou:

您是否正在使用2个 Xilinx JESD IP、每个 IP 有8个信道?在这种情况下,每个 IP 将生成256位的输出。 斜坡测试模式生成八位位组斜坡(8位值),而不是采样值斜坡(12位值的斜坡)。

建议将 ADC 设置为传输层测试图形模式。者可以让您轻松了解通道数据如何映射到样本,因为帧中的每个样本都有一个恒定的12位值。 此值可在datasheet中的" N 的短传输测试模式= 12模式"表41中找到。 

,

linwei hu:

您好,我目前使用传输层测试图形模式,采样点的顺序是否按照JMODE1的S0,S1,S2—->S78,S79的顺序?

,

Cherry Zhou:

好的我们跟进给工程师看下哈。

,

linwei hu:

非常感谢,我们目前使用的时候,有一个问题:下面第一幅图是采样100MHz的正弦波,但是会有锯齿状的,第二幅图是放大后的细节,我们目前不知道是什么原因引起的,

,

Cherry Zhou:

 ‘传输层测试’模式是 ADC 的特殊测试模式。 您试下在此模式下配置 ADC 并生成 S0-S70的结果。 可以帮助我们更好地了解导致问题的原因。

此外还请分享下传输层的 RTL 代码(其中通道数据映射到样本)。 

,

linwei hu:

上图是我们使用传输层测试模式生成的图像,目前这个模式下没有问题,但是在采样正弦波时,会出现波动的情况,

目前是使用JMODE1, 在FPGA中使用2个IP核,从FPGA的IP核输出的256位数据到样本的映射分为:

jesd204_0_example_design_1 -> out_data[256:0]  ->S0,S2,S4…….S76,S78

jesd204_0_example_design_2 -> out_data_2[256:0]  ->S1,S3,S5…..S77,S79

目前看来有点问题,请问哪里需要改正,

,

Cherry Zhou:

您能再提供下以下信息吗(ADC 处于传输层测试模式)?

1) 256位总线上的确切值(对于两个连续的时钟周期)

2) 用于将256位通道数据映射到采样值的代码。 

,

linwei hu:

您好,非常感谢您的解答,我们重新阅读了器件手册,发现是之前的一个设置没有做好,目前有了稍微正常的采样,但是还是有问题,可否再次询问一下?

上图是部分采样点,看起来交替起伏,我们估计是采样的校准未做好,目前的校准配置如下:

0:dout<=24'h0000B0; ///***///进行软复位 之后延迟100ms //时钟50MHz 20ns * 5000 = 100 ms 5001: dout<=24'h020000; ///***///清除 JESD_EN (始终在 CAL_EN 之前)5002: dout<=24'h006100; ///***///清除 CAL_EN (始终位于 JESD_EN 之后) 5003:dout<=24'h020101;//jmode5004:dout<=24'h020203;//km5005:dout<=24'h020301; //非零 即使用 软同步5006:dout<=24'h020400; //00 015007:dout<=24'h020500; //设置JTEST

5008:dout<=24'h0030FF; //设置量程5009:dout<=24'h0031FF;5010:dout<=24'h0032FF;5011:dout<=24'h0033FF;

5012:dout<=24'h002920;5013:dout<=24'h002960;

5014:dout<=24'h002970; //////将SYSREF_SEL设置为0,使用SYSREF校准

5015:dout<=24'h02B104; //设置SRC校准参数5016:dout<=24'h02B001; //启用SRC_EN

//5016:dout<=24'h004803; //将串行器预加重设置为3

5021:dout<=24'h006201; //使用foreground校准 

5137:dout<=24'h02C11F; //Alarm Status Register5138:dout<=24'h02C200; //Alarm Mask Register

5139: dout<=24'h006101; ///***///设置 CAL_EN (始终在 JESD_EN 之前)5140: dout<=24'h020001; ///***///设置 JESD_EN (始终在 CAL_EN 之后)

5141: dout<=24'h006B00; //设置使用Calibration Software Trigger

5142: dout<=24'h006C00; ///***///将 CAL_SOFT_TRIG 设置为低电平以复位校准状态机5143: dout<=24'h006C01; ///***///将 CAL_SOFT_TRIG 设置为高电平以启用校准 ,

目前0X02C 02D 02E 寄存器的读出分别是  C1   00  86  ,在器件手册中 表 7. Examples of SYSREF_POS Readings and SYSREF_SEL Selections,没有看到SYSREF_POS[23:0] 与 OPTIMAL SYSREF_SEL SETTING  相应的映射,

目前0X2B2 2B3 2B4寄存器的读出分别是 15  4D 02,  表明SRC_DONE 未完成,

目前0X06A寄存器读出是 08,表明FG_DONE  始终未完成,

请问是什么原因?请问有相应的自动foreground校准的配置代码吗?

,

linwei hu:

目前ADC12DJ3200的2个子ADC分别输出的数据如下:  应该是校准未做好。

,

Cherry Zhou:

新的问题我们反馈给工程师看下,应该会在下周工作日给到您答复。

,

linwei hu:

好的,非常感谢

,

linwei hu:

您好,很抱歉打扰您,请问我们遇到的问题可否有工程师的解答了?非常感谢

,

linwei hu:

您好,非常抱歉打扰您,目前我们仍然困于这个问题,不知道怎么解决,请问该问题可否有工程师的解答?非常感谢您

,

Cherry Zhou:

您好,十分抱歉,我们再来催促下工程师看看,我们把英文论坛的链接给您贴在下面:

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1231651/adc12dj3200-jmode1-data-stitching-issue

,

Cherry Zhou:

请看以下答复:

以下是更新后的寄存器写入:

SCR_DONE 未完成意味着未正确校准 sysref。 请确保 sysref 到达 ADC。 

,

linwei hu:

好的,衷心感谢您的耐心解答。

赞(0)
未经允许不得转载:TI中文支持网 » ADC12DJ3200: JMODE1 数据拼接问题
分享到: 更多 (0)