LVDS系列31:Xilinx 7系 ADC LVDS接口参考设计(二)

 ADC接口:

许多ADC使用LVDS接口进行通信,使用一个或多个LVDS接口将数字数据传输给FPGA。

下图显示了模拟输入信号Input Signal、输入时钟Input Clock、位时钟Bit Clock、帧时钟Frame Clock、输出数据Output Data。

模拟信号在输入ADC后,经过一定延时转换为数字格式,并给到ADC输出端。其中下图模拟信号被转换为具有12位ADC分辨率的串行数据流从ADC输出端输出,与高速位时钟和用于同步的帧时钟一起提供给FPGA。

帧时钟FCLK,是ADC采样时钟的数字化和相移版本,也就是上图的用于采集Input signal输入信号的采样时钟Input Clock;

FCLK与串行数据相位对齐,一个采样时钟采样到的ADC串行化的12bit数据,都会放在一个FCLK周期中,FPGA就需要根据FCLK来判断哪12个bit的串行数据,属于同一个12bit ADC数据;

高速位时钟DCLK则是相位提前90度,时钟边沿对齐到高速串行数据的每个bit的中心位置;

ADC提供一个或多个数据通道,一般一个差分数据通道,对应到一个ADC转换器,但也会有一个转换器对应多个差分数据通道,和一个差分数据通道对应多个转换器的情况出现,有一些ADC能够配置不同的输出数据结构;

下面指的1线模式,指1个转换器对应1个数据通道,2线模式,指1个转换器对应2个数据通道,其中转换器的数量一般对应ADC模拟信号输入的通道数量,差分数据通道数量则是对应连接到FPGA或其他处理设备的LVDS的数据通道数量;

DCLK的频率由ADC的分辨率、采样率、差分数据通道和转换器的对应关系决定的,一个ADC一般只有一个DCLK和一个FCLK,所有差分数据通道在ADC输出时,都会与这一个DCLK和FCLK同步;

LVDS I/O的最大速度由DCLK在FPGA逻辑或者ISERDESE2能支持的最大工作频率来设定;

如16位ADC,1线DDR模式,150Ms/s:

比特率为:16150=2.4Gb/s;
由于使用DDR模式,则:
比特时钟速率为:16
150/2 = 1.2GHz;

可以看到这个16位150M采样率的ADC,如果只使用1个数据通道传输数据,需要1.2GHz的高速bit时钟,这个速度对于FPGA来说太高了,无法实现,那么解决方案则是,使用2线模式或是更多线模式,一个转换器对应2个或更多个数据通道;

16位ADC,2线DDR模式,150Ms/s:

比特时钟速率为:16*150/2/2 = 600MHz,

600MHz的时钟,在FPGA中的实现相比如1200MHz的时钟的实现就具有了可行性;

下图是14位和16位ADC在1线模式下的输出时序图:

上图时序中,16位和14位两种数据结构,使用的实现相同的时序,一个输入时钟Input Clock对应一个帧时钟FCLK,一个FCLK时钟周期下有8个Bit Clock,使用DDR模式,则1个FCLK能最大传输16个bit数据位,

其中16位则是将这个16bit数据位全部使用,14位则是闲置其中2个bit位;

下图是14位和16位ADC在2线模式下的输出时序图:

上图时序,使用2线模式,相比于1线模式,2线模式使用2个差分数据通道传输1个转换器的数据,那么数据速率不变,比特时钟速度相应应该为1线模式的一半,

可以看出,FCLK帧时钟对应ADC的模拟输入采样时钟,所以对比1线模式应该不会变化,那么可以看到此时1个FCLK帧时钟周期下,只有4个DCLK比特时钟周期,可以确定DCLK在2线模式下为1线模式速度的一半;

其中Bytewise Mode和Bitwise Mode则是输出串行数据结构不同;

例如ad9253:

其上电默认时序模式为16位、2线DDR、1帧模式:

如果想使用ADC的其他模式,也可以使用ADC的SPI接口,配置其对应的时序模式寄存器:

如修改为12位、2线DDR、1帧模式:

或者修改为16位、1线DDR、1帧模式:

本文章由威三学社出品

对课程感兴趣可以私信联系

相关推荐
ZPC821013 天前
docker 镜像备份
人工智能·算法·fpga开发·机器人
ZPC821013 天前
docker 使用GUI ROS2
人工智能·算法·fpga开发·机器人
tiantianuser13 天前
RDMA设计53:构建RoCE v2 高速数据传输系统板级测试平台2
fpga开发·rdma·高速传输·cmac·roce v2
博览鸿蒙13 天前
FPGA 和 IC,哪个前景更好?怎么选?
fpga开发
FPGA_小田老师13 天前
xilinx原语:ISERDESE2原语详解(串并转换器)
fpga开发·iserdese2·原语·串并转换
tiantianuser13 天前
RDMA设计50: 如何验证网络嗅探功能?
网络·fpga开发·rdma·高速传输·cmac·roce v2
Lzy金壳bing13 天前
基于Vivado平台对Xilinx-7K325t FPGA芯片进行程序在线更新升级
fpga开发·vivado·xilinx
unicrom_深圳市由你创科技13 天前
医疗设备专用图像处理板卡定制
图像处理·人工智能·fpga开发
tiantianuser13 天前
RDMA设计52:构建RoCE v2 高速数据传输系统板级测试平台
fpga开发·rdma·高速传输·cmac·roce v2
luoganttcc14 天前
Taalas 将人工智能模型蚀刻到晶体管上,以提升推理能力
人工智能·fpga开发