sysRef study 好的我们来深入探讨一下 AD9986 的 **Subclass 1** 模式。简单来说确定性延迟就是为了让系统每次上电时AD9986与逻辑器件之间的数据传输延迟是固定的做到“一次校准永远校准”。### Subclass 1 的核心理念LMFC 对齐在 Subclass 1 模式下SYSREF 信号的核心作用是为所有设备AD9986 和逻辑器件定义一个**绝对的时间零点Time 0**。这个参考点是实现确定性延迟的基石其核心逻辑如下1. **设定时间零点**系统上电后一个**单次脉冲One-Shot** SYSREF 信号被送到所有 JESD204B 设备的 SYSREF 引脚。在这个脉冲到来的一刻所有设备都会复位它们内部的多帧计数器重新定位其**本地多帧时钟 (LMFC)** 的边界。从此系统内所有设备的 LMFC 便在**相位上对齐**了。简单来说LMFC就像一个同步的“节拍器”而 SYSREF 就是按下同步“开始”键。2. **吸收链路延迟**即使 LMFC 对齐了每根高速串行数据线Lane的物理走线长度仍会不同导致数据到达逻辑器件的时间有早有晚。为了解决这个问题逻辑器件的 JESD204B IP 核内部包含一个“弹性缓冲器”Elastic Buffer。在 SYSREF 信号设定的 LMFC 边界所有 Lane 的数据会同时从缓冲器中释放从而补偿了物理延迟差异。3. **实现确定延迟**现在从 AD9986 的数据采样到逻辑器件的数据输出整个路径的延迟完全以 LMFC 为周期来计算是**可重复、可预测的**。无论上电多少回只要 SYSREF 和 LMFC 的相位关系固定系统的总延迟就固定了。### ⚙️ 校准配置流程 (One-Shot Sync)AD9986 使用 **One-Shot Sync单次同步** 模式来对齐 LMFC。校准流程可分为外部硬件层和芯片内部层#### 1. 硬件配置与时钟生成 (外部)这部分工作是整个流程的物理基础* **拓扑结构**使用合适的时钟缓冲器如 HMC7044将设备时钟和 SYSREF 以**星型拓扑**分配给系统中所有的 JESD204B 设备。* **物理约束*** **设备时钟分配**所有 AD9986 及逻辑器件的核心采样时钟CLKIN必须同源且 PCB 走线长度严格匹配。* **SYSREF 分配**SYSREF 信号线也必须与设备时钟线**保持等长**以最小化其到达各芯片的延时差异即分布偏斜, D_{SYSREF}。* **时序约束*** 为了确保 ADC/DAC 能精确对齐 LMFCSYSREF 信号相对于设备时钟CLKIN必须满足芯片数据手册中规定的**建立时间 (t_SU) 和保持时间 (t_HOLD)**。对于 GSPS 级的采样率这个时序窗口可能仅有几十到几百皮秒。SYSREF 信号的采样质量是整个流程成功的关键。* SYSREF 的频率需满足 f_SYSREF f_LMFC / N其中 f_LMFC 由 JESD204B 参数和采样率决定N 为正整数。#### 2. AD9986 的 One-Shot Sync (内部)硬件就绪后需要对 AD9986 进行 SPI 寄存器配置来执行和监控同步。* **寄存器配置*** 0x00B8[1] (SYSREF_MODE_ONESHOT)设置为 1进入 One-Shot 模式。* 0x00B9[1:0] (ROTATION_MODE)通常设置为 2b01在同步时短暂关闭并重新建立链路以确保相位复位。* 0x00BA[2:0] (SYSREF_AVERAGE)**强烈建议**在采样率较高时使用平均值模式以减少单个 SYSREF 脉冲因采样抖动产生的不确定性。该功能可自动计算多个 SYSREF 脉冲的平均相位达到更稳定对齐效果。* 0x019A[6] (SYSREF_INPUTMODE)根据 SYSREF 输入是 AC 耦合还是 DC 耦合设置此位。* **状态查询*** 0x00B8[4] (ONESHOT_SYNC_DONE)读取此位确保同步完成。* 0x00B6[4:0] 0x00B5 (SYSREF_PHASE)**关键**校准步骤。读取 SYSREF 边沿与内部 LMFC 边沿的相位差以设备时钟周期为单位。若读取值为 0代表 SYSREF 与 LMFC 边沿完美对齐。若不为 0需调整 SYSREF 发生器的相位延迟或通过 SPI 微调 SYSREF 延迟并重复此步直到读取为 0。### ️ AD9986/AD9082 API 支持ADI 官方提供了完善的 API 来管理上述同步过程无需开发者直接操作所有寄存器。关键函数包括* adi_ad9xxx_jesd_sysref_input_mode_set配置 SYSREF 接收器的接口模式AC/DC耦合等。* adi_ad9xxx_jesd_sysref_spi_enable_set使能 SYSREF 捕捉功能。* adi_ad9xxx_jesd_oneshot_sync执行 One-Shot 同步。* adi_ad9xxx_jesd_sysref_enable_set使能/上电 SYSREF 电路并等待同步完成。### 总结Subclass 1 校准清单硬件上确保**时钟与 SYSREF 走线等长、SYSREF 采样时序可靠、频率关系满足**软件上寄存器配置遵循**SYSREF 模式设为 One-Shot使能同步建议配置平均值模式**整个流程按“配置、触发、轮询完成、读取相位校准”的顺序即可。在进行多芯片同步时除了 LMFC 的对齐还需要通过**主从同步机制**来对齐每个芯片内部 NCO 的相位这是一个更高级的同步话题。