4. 高速数据采集接口设计与实现
量子测控系统要在微秒级完成量子态读取与反馈,FPGA 与 ADC/DAC 之间的数据通道是整条信号链的物理起点。本节围绕四类接口展开:ADC/DAC 的器件级接口协议、JESD204B/C 高速串行链路、LVDS 源同步接口,以及贯穿全链的时钟与同步机制。理解它们的差别,才能为不同采样率、通道数和延迟预算选择正确的接口方案。
一、ADC/DAC 接口协议:从并行到串行
ADC/DAC 与 FPGA 之间的接口,本质是“采样数据如何跨越芯片边界”。按电气形式可分为三类:
- 并行 CMOS/LVCMOS:每个采样位一根数据线,外加采样时钟。12 bit、1 GSPS 时数据线翻转率高达 12 Gbps,走线数量与同步难度都不可接受,仅适合低速多通道场景。
- LVDS 源同步:数据以差分对传输,随路发送位时钟(DCO)或帧时钟(FCO),FPGA 用随路时钟采样数据。典型速率 0.5~1.2 Gbps/lane,适合中速 ADC(如 14 bit、250 MSPS)与 DAC 回放。
- JESD204B/C 串行:用 1~8 条高速 SerDes lane 承载多通道数据,速率 3.125~32 Gbps/lane,是当前高采样率多通道 ADC/DAC 的主流接口。
选择依据可归纳为:采样率×位宽×通道数决定总吞吐,总吞吐低于约 1 Gbps 可用 LVDS,高于 2 Gbps 且通道数多时优先 JESD204B/C。例如 8 通道、14 bit、500 MSPS 的 ADC,总吞吐 56 Gbps,必须用 JESD204B 多 lane 承载。
二、JESD204B/C 链路:分层与关键参数
JESD204B 链路分为三层:传输层负责把多通道采样数据映射为帧(Frame)与多帧(Multiframe);链路层负责 8b/10b 编码(B 版本)或 64b/66b 编码(C 版本)、对齐字符插入与链路建立;物理层即 SerDes,完成串并转换与均衡。C 版本用 64b/66b 编码,编码开销从 25% 降到 3%,同速率下有效带宽更高,并支持更高 lane 速率。
配置一条链路需要确定几个核心参数:
- L:lane 数量,如 4;
- M:转换器通道数,如 2;
- F:每帧每 lane 的字节数(octet),如 2;
- K:每多帧的帧数,如 32;
- S:每帧每通道的采样数,通常为 1;
- N/N':转换器位宽与传输位宽,如 14/16。
它们必须满足:L×F = M×S×N'/8。以 M=2、N'=16、S=1、L=4 为例,右侧为 2×1×2=4,故 F=1。若采样率 500 MSPS,则每 lane 字节率 = 500M×F = 500 MB/s,经 8b/10b 编码后线速率 = 500M×10 = 5 Gbps,落在 JESD204B 常用范围内。
链路建立分三阶段:代码组同步(CGS)由接收端发送 SYNC 请求,发送端发 K28.5 字符;随后初始化多帧对齐(ILAS)发送配置参数;最后进入数据传输。调试时若链路起不来,先查 SYNC 是否拉低、K28.5 是否被正确识别,再核对两侧 L/M/F/K 是否一致。
三、LVDS 源同步接口:时序是核心
LVDS 源同步接口中,ADC 同时输出数据差分对与随路时钟 DCO。FPGA 侧用 IDELAY/ODELAY 原语调整数据或时钟延迟,使采样点落在数据眼图中心。关键约束是建立/保持时间:数据有效窗口减去 FPGA 输入寄存器建立时间与时钟偏斜后,必须仍有余量。
实际调试步骤:先用 IDELAY 扫描延迟抽头(如 0~31),统计每个抽头下误码率,找到误码率为零的窗口中心,再固定该值。若窗口宽度小于 2 个抽头,说明走线等长或端接有问题,需检查差分对长度匹配与 100 Ω 端接。
四、时钟与同步机制
高速采集系统的时钟树决定采样抖动与通道间确定性。典型结构是:系统参考时钟(如 100 MHz)经时钟芯片(如 LMK 系列)产生 ADC 采样时钟、FPGA 系统时钟与 JESD204B 所需的 SYSREF。SYSREF 是 JESD204B 实现确定性延迟的关键:它对齐各芯片的内部分频器与多帧边界,使每次上电后 lane 延迟一致。
同步设计要点:
- 采样时钟与 SYSREF 必须同源,且 SYSREF 满足建立/保持要求;
- 多片 ADC 之间用同一 SYSREF 对齐,保证通道间确定性延迟;
- FPGA 内部用 MMCM/PLL 生成与采样率整数相关的处理时钟,避免跨时钟域频繁切换;
- 跨时钟域数据用异步 FIFO 或握手同步,禁止直接打拍多比特总线。
五、接口选型与调试要点
把上述内容落到工程决策上,可形成如下判断路径:先算总吞吐,再定接口类型;JESD204B/C 优先核对 L/M/F/K 与线速率;LVDS 优先做延迟扫描;无论哪种接口,时钟与 SYSREF 的完整性都是前提。调试时建议按“电源与端接→时钟质量→链路建立→数据比对”的顺序推进,避免在链路未通时反复调整数据路径。
一个常见的教学示例:8 通道 14 bit 500 MSPS ADC,选 JESD204B、L=4、M=8、F=2、K=32、N'=16。校验:L×F=8,M×S×N'/8=8×1×2=8,成立。每 lane 字节率 = 500M×F/L×M = 500M×2×8/4 = 2000 MB/s,8b/10b 后线速率 20 Gbps,需选用支持 20 Gbps 以上 lane 的 FPGA 收发器。若改用 JESD204C 的 64b/66b,线速率约 16.5 Gbps,对通道要求更低,但需确认 ADC 是否支持 C 版本。
综上,高速数据采集接口设计不是单一协议的选择,而是“吞吐需求—接口类型—链路参数—时钟同步—时序收敛”的联合设计。掌握 JESD204B/C 的参数约束、LVDS 的延迟扫描方法和 SYSREF 的确定性延迟作用,就能为量子测控 FPGA 建立稳定、可复现的数据入口。