1. 课程导入与测试系统全景
在 ADI(Analog Devices)的芯片与板级验证工作中,自动化测试并不是“把仪器接上、跑个脚本”这么简单。它更像是一套围绕被测对象(DUT)构建的测量系统:激励源负责产生可控的输入信号,测量仪器负责采集响应,开关/矩阵负责把有限的仪器端口扩展到多通道、多测试点,控制软件负责调度、同步、判定与记录。本课程要解决的,正是如何把这些环节组织成一个可重复、可追溯、可扩展的自动化测试系统。
先看一个典型场景。假设我们拿到一块 ADI 的高精度 ADC 评估板(例如 24 位 Σ-Δ 型 ADC),需要验证其直流精度与噪声性能。手工测试的做法通常是:用精密源表输出一个接近满量程的直流电压,等待读数稳定,记录若干次采样,再换一个输入点重复。这个过程单点就要几十秒,若要覆盖零点、半量程、满量程、正负极性以及多个增益档位,人工操作既慢又容易引入不一致。自动化测试要做的,是把“设置激励—等待建立—采集—计算—判定—记录”这一整条链路交给程序控制,让同样的测试在无人干预下重复执行,并且每次的时序、量程、滤波设置完全一致。
这类系统的核心挑战可以归纳为四类。第一是精度与不确定度:DUT 的指标可能优于仪器本身的精度,必须通过校准、比值测量、参考比对等手段把系统误差压下去。第二是同步与时序:多台仪器之间、激励与采集之间需要触发对齐,否则测到的相位、建立时间、通道间偏斜都不可信。第三是连接与寄生:从仪器到 DUT 的线缆、开关矩阵、探针都会引入电阻、电容、漏电流和热电动势,低电平测量中这些往往就是误差主因。第四是可维护与可扩展:测试项会不断增加,仪器会更换,脚本要能复用而不是每次重写。
仪器集成在芯片与板级验证中的价值,可以从三个层面理解。在芯片验证层面,自动化测试用于特性表征(characterization),需要在温度、电压、频率等多个维度上扫描,产生大量数据点,人工无法完成。在板级验证层面,测试对象变成整板功能,需要同时激励多路输入、采集多路输出,并验证板上的电源、时钟、接口是否正常。在量产与筛选层面,测试节拍(test time)直接决定成本,自动化系统必须兼顾覆盖率和速度。这三个层面的共同点是:都需要一套统一的“激励—连接—测量—判定”框架,只是规模、精度和节拍要求不同。
下面这张图给出本课程所讨论的自动化测试系统全景。它把系统分成激励层、连接层、测量层、控制层和判定/数据层,并标出各层之间的信号流与控制流。理解这张图,有助于在后续章节中定位每一个具体技术点所处的位置。
从图中可以看到,激励层和测量层通过连接层与 DUT 交互,控制层负责调度和同步,判定与数据层负责把测量结果转化为“通过/不通过”以及可追溯的记录。实际系统中,这五层并不是严格分离的:源表既是激励也是测量,开关矩阵既影响连接也影响时序,控制软件既发命令也读数据。因此,后续章节会围绕这些交叉点展开。
本课程的任务地图可以按“从单点测量到系统集成”的顺序来组织。首先建立对仪器通信与控制的统一认识,包括 VISA、SCPI、IVI 等接口标准,以及如何用 Python 或 LabVIEW 建立稳定的仪器会话。接着进入直流与低频测量,讨论源表、DMM 的精度、量程、滤波和校准,以及如何用四线制、保护环、屏蔽等手段降低误差。然后是多通道与开关系统,解决通道扩展、寄生参数、热电动势和继电器寿命等问题。再往后是时序与同步,涉及触发路由、采样时钟、多仪器对齐和抖动控制。最后是测试软件架构与数据管理,包括测试序列、参数化、异常处理、数据存储和报告生成。
为了让学习过程有明确的抓手,这里给出一个贯穿课程的示例任务:用一台精密源表、一台 6½ 位数字万用表和一台开关矩阵,对一块 24 位 ADC 评估板进行直流线性度测试。测试点包括 −10 V、−5 V、0 V、+5 V、+10 V 五个输入,每个点采集 100 个读数,计算平均值和标准差,判定平均值与理想值的偏差是否小于 0.01% FS,标准差是否小于 5 μV。这个任务看似简单,但已经涉及激励设置、量程选择、建立时间、滤波、开关路径、数据统计和限值判定。后续章节会逐步把其中的每个环节展开。
需要强调的是,自动化测试系统的搭建不是一次性的工作。随着测试项增加、仪器更新、DUT 改版,系统需要持续维护。因此,从第一天起就应关注可读性、可配置性和可追溯性:测试参数放在配置文件中而不是硬编码在脚本里,仪器地址和量程用变量管理,每次测量都记录时间戳、量程、滤波和原始读数。这些习惯在后续章节中会反复出现,也是把“能跑通”变成“能长期使用”的关键。
本章作为导入,不展开具体编程和仪器操作,而是先建立全景认知。接下来将从仪器通信与控制开始,逐步进入各个技术模块。希望读者在学习过程中,不仅掌握单个仪器的用法,更能理解它们如何组合成一个完整的测量系统,并在实际项目中做出合理的架构选择。