文/孙维佳 伍小保 范欢欢
相控阵雷达系统中,ADC 采样通道间的采样数据对齐都是必要的,否则会对I/Q 的正交度或各通道间的合成带来影响,导致最终的分析结果异常。由于整机性能要求的提高,对ADC 采样率等各方面的需求也日益增高,在不低于百Msps 的采样率下,如何保证采样点对齐是一个重要问题。
相比于传统的并行LVDS 组传输方式的ADC 芯片,JESD204B 接口逐渐成为更多高速AD 的数据传输协议选择。其在提高传输速率和系统集成度方面都有明显的优势,接口速率高至12.5Gbps。JESD204B 标准中的subclass1和subclass2 支持确定性延迟功能,利用该性质可将多通道数据传输路径的相对延迟量固定。本文提出的设计方案针对JESD204B 接口subclass1 的ADC 芯片解决采样点对齐的问题,并基于ADI 公司生产的14bit、500Msps 四通道AD9694 芯片电路进行验证。
JESD204B 接口多用于AD/DA 器件与逻辑器件之间的数据传输,分为物理层、数据链路层、传输层和应用层。数据链路的建立需要经过代码组同步、初始化同步和数据传输三个过程[1]。确定性延迟指的是从串行数据发送端的并行帧数据输入至接收端并行解帧的所需时间。对于Subclass1 的器件,由SYNC 信号和SYSREF 信号共同完成代码组同步并确定LMFC(local multi-frame clock,多帧时钟)边沿。其时序图如图1所示。
图2:AD9694 芯片SYSREF 信号建立时间检测
FPGA 和ADC 器件均以SYSREF 作为LMFC 沿的起点。在SYNC 信号拉低时,发送端输出K(/K28.5/)码。当SYNC 信号拉高后,ADC 以下一个有效的LMFC 为起点发送ILAS序列。接收端FPGA 收到的各通道的ILAS 起始时间并不一致,需要在FPGA 的buffer 中进行缓存。当所有通道的ILAS 序列都到来之后,选取下一个LMFC 边沿作为起始点同时对各通道数据进行读出、处理,即可保证所有通道数据的对齐,实现确定性延迟。
上述分析可知SYSREF 信号需以ADC 的采样时钟进行稳定有效的采样,满足时钟沿采集信号时的建立保持时间,方可将多帧时钟与采样时钟准确关联。为保证SYSREF 采样的有效性,很多ADC 芯片根据采样时钟边沿位置设立了建立时间和保持时间的时间窗口,判断SYSREF 边沿是否落在窗口内,并利用可回读的状态寄存器反映其是否满足建立保持时间。以AD9694 芯片为例,若配置时钟上升沿采样SYSREF 信号,则回读建立时间寄存器的值位于0x8~0xF 之间时,可满足SYSREF边沿相对于时钟上升沿的安全裕量[2]。见图2。
图3:FPGA 扇出SYSREF 信号路径示意图
图4:SYSREF 扇出路径的PCB 约束
文 献[3][4]等给出了以HMC7044、LMK04828 等扇出芯片建立时钟树的模型,建议用于大规模ADC/DAC 的JESD204B 接口应用环境,可兼顾采样时钟和SYSREF 等关键信号的需求。但对于某些应用背景,上述扇出芯片的内部PLL 功能和过多的扇出路径都属于冗余功能。文献[5]提出了只要保证采集时钟和FPGA 工作时钟(即SYSREF 脉冲产生的时钟源)同源,则采用FPGA 直接输出SYSREF 信号至ADC 芯片有简化系统设计、提高灵活性的优势,并可配置利用下降沿采样SYSREF 信号。但随着ADC 采样率的提高,仅用时钟下降沿进行SYSREF 的采样未必满足对于该信号的采样需求,因此在该方案的基础上需要继续优化FPGA 输出SYSREF 信号的处理。
由FPGA 逻辑产生的SYSREF 信号在扇出时的路径如图3所示,会受到内部逻辑走线延迟、I/O 延迟和PCB 走线延迟等各部分的影响。
PCB 走线延迟可通过满足JESD204B 关键信号的严格等长实现,包括SYSREF 信号和AD 采样时钟。以AD9694 测试载板设计为例,采样时钟由PCB 上SMP 连接器输入后,经功分器分为等长的两路单端线,分别作为两个变压器输入、转换为差分时钟信号输入至ADC 芯片。时钟传输路径分段严格保持等长。而两对SYSREF 信号由FPGA 的差分输出管脚输出,并在PCB 上通过蛇形走线保持等长。SYNC 信号虽也是FPGA 扇出的JESD204B 关键信号,但对其时序要求并不严格,因此可适当放松等长条件。如图4所示。
图5:FPGA 底层SYSREF 路径约束
FPGA 内部的走线延迟一般可达ns 量级,与ADC 的采样周期相当,因此必须对内部资源的延迟时间进行约束、确保其路径延时不因多次编译而改变。Xilinx K7 系列FPGA 可通过原语将SYSREF 表示的DFF 输出,并通过约束语句固定DFF 在底层占据的位置坐标,再将各扇出路径的走线节点通过约束语句完全固定[6]。vivado 软件可通过时序报告直接分析出由DFF 至IO 管脚的延时。
如图5所示,经过约束语句进行约束的各条扇出路径仅能做到近似相等,且无法保证SYSREF 和AD 输入的采样时钟的相位关系。进一步的等长调节可调用Xilinx 的selectIO资源,通过调节ODELAY(Output delay resources)延迟值调节路径延迟,并通过回读寄存器确认状态满足多片ADC 的sysref 信号都能满足建立保持时间。ODELAY 是Xilinx 7系列FPGA HP(High Performance) bank 的特性之一,可通过原语调用,实现固定或可变的延时。ODELAY 的总延迟时间由串联的若干抽头确定,每个抽头的延迟时间由引入的时钟频率决定,满足 [7],可轻松实现几十ps 量级的精确调整。
在环境温度变化的情况下,总路径延迟可能产生变化。PCB 走线延迟,即电信号在PCB 板中的传输速度,受介质介电常数影响,根据[8],在20~80 摄氏度范围内多种常见PCB 介质的介电常数变化值在3%以内,因此在较宽的温度变化范围内PCB 走线时间延迟的变化影响可忽略。FPGA的ODELAY 资源对于电压和温度的影响有持续的自动校正功能[9]。因此,FPGA 内部逻辑资源的走线延迟变化是可能引起路径延迟的最重要因素。若在某些应用场合中工作温度范围较宽,实测延迟对SYSREF 的建立保持时间造成影响,可根据FPGA 中XADC 反馈读出的内核温度建立查找表,通过修正ODELAY延迟解决温度带来的变化问题。
FPGA 中ADC 接口实现的内部逻辑主要包括外设ADC 芯片配置、控制和数据获取、对齐。确定ODELAY 延时值通过反复发送SYSREF 测试脉冲、并在不同ODELAY设置值下回读寄存器判断可靠区域实现。通过多次测量可以减少随机因素带来的影响。在实际应用时,本设计未采用vivado 中提供的JESD204B IP core,改 用verilog 代 码 设 计实现。逻辑设计中,将图1中的时序图作为JESD204B 链路层控制的部分用一个FSM 控制。工作过程为:程序初始化后,判断ADC配置成功后拉低SYNC 信号,并对高速接口进行复位。判断高速接口的PLL 和buffer 状态正常后,产生SYSREF 脉冲,并定位多帧时钟的位置。然后进行连续K 码检测,若K码接收超过五个连续有效,在距离多帧时钟边沿安全的距离下拉高SYNC 信号,并等待各Lane 中ILAS 序列和ADC 数据的到来、同步控制读出。逻辑功能框图和FSM 的状态转移图如图6所示。
结合2.1 节中描述的底层约束和原语调用,可实现同步采集功能。
图6:JESD204B 接口控制逻辑功能框图与状态转移图
图7:30 次上电的通道间相位差值
板级测试平台基于两片AD9694 设计,除参考通道外,两片ADC 芯片分别接入两路对比信号。测试条件下采样率为320Msps。输入信号由信号源经功分器和等长同相电缆扇出至各通道输入端,并通过前端射频通道二次变频后进入ADC 进行数字下变频为1MHz 的I/Q 点频信号,采集传送至FPGA 芯片。通过matlab 分析I/Q 数据的相位,比较多次上电时各通道的同一固定点相位差,得到如图7的测试结果。
由此可见,相对于参考通道,待测通道的相位变化趋势保持一致,多次上电的相位差变化小于4 度。各通道间的起始相位差异来自于电路中的模拟器件的影响。
本文介绍了在较高采样率的基于JESD204B 协议的多片ADC 中实现多通道相位同步采样的方法,描述了基于Xilinx FPGA进行JESD204B 关键信号约束性扇出和接口代码设计的实现方式,并基于AD9694 给出了实测结果,验证方法可行。该方法为数字阵列体制雷达中多片多通道ADC 采样同步的应用场合提供了一种有效解决方案,具有较强的实用性和工程借鉴意义。