大家好、
将 ADC 设置为 JMODE1模式、LANE_RATE=6.4G、K=4、jesd204B_CORE LK=160MHz、Sysref 为20MHz、在3.2GHz 下采样、设置斜坡测试模式。 通过 ILA 检查数据时、从第九个数据开始会出现错误、如下图所示:
下图显示了数据分辨率:
您能帮助检查这个问题吗? 谢谢。
此致、
切里
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.
大家好、
将 ADC 设置为 JMODE1模式、LANE_RATE=6.4G、K=4、jesd204B_CORE LK=160MHz、Sysref 为20MHz、在3.2GHz 下采样、设置斜坡测试模式。 通过 ILA 检查数据时、从第九个数据开始会出现错误、如下图所示:
下图显示了数据分辨率:
您能帮助检查这个问题吗? 谢谢。
此致、
切里
您好、Cherry:
我无法理解误差。 请确认您是否使用2个 Xilinx JESD IP、每个 IP 有8个通道。 在这种情况下、每个 IP 都将生成256位的输出。 斜坡测试图形模式生成一个八位位组斜坡(8位值)、而不是一个采样值斜坡(12位值的斜坡)。
我建议将 ADC 设置为传输层测试图形模式。 由于一帧中的每个样本都有一个恒定的12位值、因此这有助于您轻松了解通道数据如何映射到样本。 此值可在数据表的" N = 12模式的队列传输测试模式"表41中找到。
此致、
艾米特
尊敬的 Amet:
上面的图像是客户使用传输层测试模式生成的图像、没有问题、但在采样正弦波时会产生波动。
目前使用的是 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
谢谢。此致、
切里
尊敬的 Amet:
感谢您和客户查看设备手册、发现以前的某个设置有问题。 现在提供了更普通的样品、但仍有问题:
上图显示了一些采样点、看起来它们之间存在交替和波动、并且样本校准似乎没有正确完成。 电流校准配置如下:
0:dout<=24'h0000B0; ///***///Delay of 100 ms after soft reset //时钟50MHz 20ns * 5000 = 100 ms 5001: dout<=24'h020000; ///***///Clear JESD_EN (always before CAL_EN) 5002: dout<=24'h006100; ///***///Clear CAL_EN (always after JESD_EN) 5003:dout<=24'h020101;//jmode 5004:dout<=24'h020203;//km 5005:dout<=24'h020301; //Non-zero means soft synchronization 5006:dout<=24'h020400; //00 01 5007:dout<=24'h020500; //Set JTest 5008:dout<=24'h0030FF; //Set the range 5009:dout<=24'h0031FF; 5010:dout<=24'h0032FF; 5011:dout<=24'h0033FF; 5012:dout<=24'h002920; 5013:dout<=24'h002960; 5014:dout<=24'h002970; //////Set SYSREF_SEL to 0 and use SYSREF calibration 5015:dout<=24'h02B104; //Sets the SRC calibration parameters 5016:dout<=24'h02B001; //enable SRC_EN //5016:dout<=24'h004803; //Set the serializer pre-emphasis to 3 5021:dout<=24'h006201; //Use the foreground calibration 5137:dout<=24'h02C11F; //Alarm Status Register 5138:dout<=24'h02C200; //Alarm Mask Register 5139: dout<=24'h006101; ///***///Set CAL_EN (always before JESD_EN) 5140: dout<=24'h020001; ///***///Set JESD_EN (always after CAL_EN) 5141: dout<=24'h006B00; //Setup uses the Calibration Software Trigger 5142: dout<=24'h006C00; ///***///Set CAL_soft_trig low to reset the calibration state machine 5143: dout<=24'h006C01; ///***///Set CAL_soft_trig high to enable calibration,
目前0X02C/02D/02E 寄存器分别读取 C1/00/86。 器件手册中的表7。 在 SYSREF_POS 读数和 SYSREF_SEL 选择的示例中、没有相应的 SYSREF_POS[23:0]映射和最佳 SYSREF_SEL 设置。
当前0X2B2/2B3/24寄存器分别读取15/4D/02、表示 SRC_DONE 未完成。 0X06A 寄存器现在读数为08、这表示 FG_DONE 从未完成。
为什么会这样? 是否有相应自动前台校准的配置代码?
ADC12DJ3200的两个子 ADC 当前输出的数据如下:
这应该是校准 问题。
谢谢。此致、
切里