逐次逼近型模数转换器(因其逐次逼近型寄存器而称为SAR ADC)广泛运用于要求最高18 位分辨率和最高5 MSPS 速率的应用中。其优势包括尺寸小、功耗低、无流水线延迟和易用。
主机处理器可以通过多种串行和并行接口(如SPI、I2C 和LVDS)访问或控制ADC。本文将讨论打造可靠、完整数字接口的设计技术,包括数字电源电平和序列、启动期间的I/O 状态、接口时序、信号质量以及数字活动导致的误差。
数字I/O 电源电平和序列
多数SAR ADC 都提供独立的数字I/O 电源输入(VIO 或 VDRIVEVDRIVE),后者决定接口的工作电压和逻辑兼容性。此引脚应与主机接口(MCU、DSP 或FPGA)电源具有相同的电压。数字输入一般应在DGND − 0.3 V与 VIO+ 0.3 V 之间,以避免违反绝对最大额定值。须在 VIO引脚与DGND 之间连接走线短的去耦电容。
采用多个电源的ADC 可能拥有明确的上电序列。应用笔记AN-932 电源时序控制为这些ADC 电源的设计提供了良好的参考。为了避免正向偏置ESD 二极管,避免数字内核加电时处于未知状态,要在接口电路前打开I/O 电源。模拟电源通常在I/O电源之前加电,但并非所有ADC 均是如此。请参阅并遵循数据手册中的内容,确保序列正确。
启动期间的数字I/O 状态
为了确保初始化正确无误,有些SAR ADC 要求处于某些逻辑状态或序列,以实现复位、待机或关断等数字功能。在所有电源都稳定之后,应施加指定脉冲或组合,以确保ADC 启动时的状态符合预期。例如,一个高脉冲在RESET 上持续至少50 ns,这是配置AD7606 以使其在上电后能正常运行所必须具备的条件。
在所有电源均完全建立之前,不得切换数字引脚。对于SARADC,转换开始引脚CNVST 可能对噪声敏感。在图1 所示示例中,当AVCC、DVCC 和VDRIVE 仍在上升时,主机cPLD 拉高CNVST。这可能使 AD7367 进入未知状态,因此,在电源完全建立之前,主机应使 CNVST 保持低电平。
图1. 在电源上升时拉高 CNVST 可能导致未知状态。
数字接口时序
转换完成之后,主机可以通过串行或并行接口读取数据。为了正确读取数据,须遵循特定的时序策略,比如,SPI总线需要采用哪种模式等。不得违反数字接口时序规范,尤其是ADC
和主机的建立和保持时间。最大比特率取决于整个循环,而不仅仅是最小额定时钟周期。图2和下列等式展示了如何计算建立和保持时间裕量。主机把时钟发送至ADC 并读取ADC 输出的数据。
图2. 建立和保持时序裕量。
tCYCLE = tJITTER + tSETUP + tPROP_DATA + tPROP_CLK + tDRV + tMARGIN
tCYCLE : 时钟周期 = 1/fCLOCK
tJITTER: 时钟抖动
tSETUP: 主机建立时间
tHOLD: 主机保持时间
tPROP_DATA: 从ADC 到主机的传输线路的数据传播延迟
tPROP_CLK: 从主机到ADC 的传输线路的数据传播延迟
tDRV: 时钟上升/下降沿后的数据输出有效时间
tMARGIN: 裕量时间大于等于0 表示达到建立时间或保持时间要求,小于0 表示未达到建立时间或保持时间要求。
主机建立时间裕量
tMARGIN_SETUP = tCYCLE, min – tJITTER – tSETUP – tPROP_DATA – tPROP_CLK – tDRV, MAX
建立时间等式以最大系统延迟项定义最小时钟周期时间或最大频率。要达到时序规格,必须大于等于0。提高周期(降低时钟频率)以解决系统延迟过大问题。对于缓冲器、电平转换器、隔离器或总线上的其他额外元件,把额外延迟加入tPROP_CLK 和 tPROP_DATA.
类似地,主机的保持时间裕量为
tMARGIN_HOLD = tPROP_DATA + tPROP_CLK + tDRV – tJITTER – tHOLD
保持时间等式规定了最小系统延迟要求,以避免因违反保持时间要求而出现逻辑错误。要达到时序规格,必须大于等于0。
ADI 公司带SPI 接口的许多SAR ADC 都是从 CS 或 CNV的下降沿为MSB 提供时钟信号,剩余的数据位则跟随SCLK 的下降沿,如图3 所示。在读取MSB 数据时,要使用等式中的tEN而非tDRV .
图3. AD7980 3 线 CS 模式下的SPI 时序。
因此,除了最大时钟速率以外,数字接口的最大工作速率也取决于建立时间、保持时间、数据输出有效时间、传播延迟和时钟抖动。
在图4 中,DSP 主机访问AD7980处于3 线CS模式下,其中,VIO = 3.3 V。DSP 锁存SCLK 下降沿上的SDO 信号。DSP的额定最小建立时间为5 ns,最小保持时间为2 ns。对于典型的FR-4PCB 板,传播延迟约为180 ps/in。缓冲器的传播延迟为5 ns。CNV、SCLK 和SDO 的总传播延迟为
tprop = 180 ps/in × (9 in + 3 in) + 5 ns = 7 ns.
tJITTER = 1 ns. 主机SCLK 的工作频率为30 MHz,因此,tCYCLE = 33 ns.
tSETUP_MARGIN = 33 ns − 1 ns – 5 ns – 7 ns – 11 ns – 7 ns = 2 ns
tHOLD_MARGIN =11 ns + 7 ns + 7 ns – 1 ns – 2 ns = 22 ns
建立时间和保持时间裕量均为正,因此,SPI SCLK 可以在30 MHz下工作。
图4. DSP 和AD7980 之间的数字接口。
数字信号质量
数字信号完整性(包括时序和信号质量)确保:在额定电压下接收信号;不相互干扰;不损坏其他器件;不污染电磁频谱。信号质量由多个项定义,如图5 所示。本部分将介绍过冲、振铃、反射和串扰。
图5. 常用信号质量规格。
反射是阻抗不匹配导致的结果。当信号沿着走线传播时,每个接口处的瞬时阻抗都不相同。部分信号会反射回去,部分信号会继续沿着线路传播。反射可能在接收器端产生过冲、欠冲、振铃和非单调性时钟边沿。
过冲和欠冲可能损坏输入保护电路,或者缩短IC 的使用寿命。图6 所示为AD7606的绝对最大额定值。数字输入电压应在–0.3 V 和VDRIVE+ 0.3 V 之间。另外,如果振铃高于最大 VIL或小于最小VIH可能导致逻辑误差。
图6. AD7606 的绝对最大额定值。
为了减少反射:
尽量缩短走线的长度
控制走线的特性阻抗
消除分支
使用适当的端接方案
用环路面积小的固体金属作为返回电流参考平面
使用较低的驱动电流和压摆率
针对走线特性阻抗的计算,目前有许多软件工具或网站,比如Polar Instruments Si9000 PCB传输线路场求解器。借助这些工具,特性阻抗计算起来非常简单,只需选择传输线路型号并设置相应的参数即可,比如电介质类型和厚度以及走线宽度、厚度和隔离。
作为一种新兴标准,IBIS 用于描述IC 数字I/O 的模拟行为。ADI提供针对SAR ADC 的IBIS模型。预布局仿真可检测时钟分布、芯片封装类型、电路板堆叠、网络拓扑结构和端接策略。也可检测串行接口时序限制以便为定位和布局提供指导。后仿真可验证设计是否符合所有指导方针和限制的要求,同时检测是否存在反射、振铃、串扰等违反要求的情况。
在图7 中,一个驱动器通过一条12 英寸的微带线路连接SCLK1,另一个驱动器通过一个与微带串联的43 Ω 电阻连接SCLK2。
图7. 驱动AD7606 SCLK。
在图8 中,SCLK1 上的大过冲违反了–0.3 V 至+3.6 V 的绝对最大额定值。串联电阻可减小SCLK2 上的压摆率,使信号处于额定值之内。
图8. AD7606 IBIS 过冲模型仿真。
串扰是能量通过互电容(电场)或互感(磁场)在并行传输线路间耦合的情况。串扰量取决于信号的上升时间、并行线路的长度以及它们之间的间距。
控制串扰的一些常用方法为:
增加线路间距
减小并行布线
使走线靠近参考金属平面
使用适当的端接方案
减小信号压摆率
数字活动导致的性能下降
数字活动可能导致SAR ADC 性能下降,使SNR 因数字地或电源噪声、采样时钟抖动和数字信号干扰而减小。
孔径或采样时钟抖动设定SNR限值,尤其是对高频输入信号。系统抖动有两个来源:来自片内采样保持电路的孔径抖动(内部抖动),以及采样时钟上的抖动(外部抖动)。孔径抖动为转换间的采样时间变化,为ADC的函数。采样时钟抖动通常为主要误差源,但两个源都会导致模拟输入采样时间变化,如图9所示。它们的影响难以区分。
总抖动会产生误差电压,ADC 总SNR 的限制因素为
其中,f 为模拟输入频率,tJ为总时钟抖动。
例如,当模拟输入为10 kHz,总抖动为1 ns 时,SNR 限值为84 dB。
图9. 采样时钟抖动导致的误差电压。
数字输出开关导致的电源噪声应与敏感的模拟电源相隔离。分别去耦模拟和数字电源,密切注意地回流路径。
高精度SAR ADC 可能对数字接口上的活动很敏感,即使电源适当去耦和隔离时。突发时钟往往优于连续时钟。数据手册通常会列出接口不应活动的安静时间。在较高吞吐速率条件下,可能难以减少这些时间内的数字活动,通常为采样时刻及出现关键位判断点时。
结论
密切注意数字活动,确保SAR ADC 转换有效。数字活动导致的误差可能使SAR ADC 进入未知状态,导致故障,或者降低性能。希望本文能帮助设计师排查根本原因,同时还能提供解决方案。