工具与软件:
我们在一个项目中使用了 TI 的 ADS4128IRGZT ADC。
ADS4128IRGZT 具有时钟输入和时钟输出。 此 ADC 的数据输出与时钟输出同步。
我们将100MHz 时钟馈送到 AMD Artix 7 FPGA 内的时钟向导生成的 ADC。 ADC 的数据输出由 FPGA 使用 ADC 时钟输出信号进行捕获。
我已经在 FPGA 内部实现了集成逻辑分析仪(ILA)、用于捕获 ADC 的各种时钟和 ADC 的数据输出总线。
我们使用配置为 CMOS 输出的 ADS4128IRGZT ADC 的二进制补码。
下面是 FPGA ILA 的屏幕截图、其中显示了 ADC 正在进行和来自 ADC 的时钟
ILA 时钟再次在 FPGA 内部生成400MHz。 信号"adc_clk"是由 FPGA 生成并馈送到 ADC 的100MHz 时钟。 信号"sample_clk"是来自 ADC 的时钟输出。
从屏幕截图中可以看出、ADC 似乎改变了时钟高电平脉冲的持续时间。 ADS4128IRGZT ADC 的工作原理是这样吗? 它是否将时钟输出的高电平与其转换时间相关? 数据表中未提及类似的内容。
有时它也会错过时钟脉冲。
另一个问题如下:
ADS4128IRGZT ADC 具有其串行配置接口的另一个时钟输入。 我已选择将串行接口与 FPGA 连接、并使用6.25MHz 时钟(屏幕截图中为 transmitter_clk)驱动该接口。
数据表指定该串行接口时钟介于1和20MHz 之间。
当串行接口时钟和100MHz 时钟都被馈送到 ADC 时、就会发生断线现象。 然后、ADC 的时钟输出似乎生成了一个"组合时钟"、如下面的屏幕截图所示。
如果您可以或无法解决上述问题、请告诉我们。