4. 测试向量基础:向量格式(STIL/WGL)、向量周期、时序定义、向量压缩技术

测试向量(Test Vector)是ATE测试程序的核心数据载体,它定义了DUT在每个测试周期内输入/输出引脚的逻辑状态及时序关系。本章系统讲解向量的标准格式、周期模型、时序定义方法以及工业级向量压缩技术,帮助开发者高效构建与优化测试向量集。

4.1 向量格式:STIL与WGL

工业界主流向量格式包括STIL(Standard Test Interface Language)和WGL(Waveform Generation Language)。两者均用于描述测试模式与波形时序,但在语法结构、可扩展性及工具链支持上存在差异。

特性 STIL WGL
标准化组织 IEEE 1450 Synopsys(事实标准)
语法风格 块结构,关键字驱动 行结构,波形定义灵活
时序定义 内嵌WaveformTable 独立Timing块
压缩支持 内建Repeat/Compress 依赖外部工具
工具链生态 广泛支持(Tessent, DFT) 主要配合Synopsys工具
格式选择建议: 若ATE平台支持STIL原生解析,优先使用STIL以获得更好的跨平台兼容性;若设计流程基于Synopsys工具链,WGL可减少格式转换开销。

4.1.1 STIL向量结构示例

STIL 1.0 {
  Signals {
    CLK In;  DATA InOut;  Q Out;
  }
  SignalGroups {
    bus = 'DATA[7:0]';
  }
  Timing {
    WaveformTable wft_main {
      Period '100ns';
      Waveforms {
        CLK  { 0 { '0ns' D/U; } 1 { '50ns' D/U; } }
        DATA { 0 { '0ns' Z; } 1 { '0ns' D/U; } }
        Q    { 0 { '0ns' Z; } 1 { '0ns' D/U; } }
      }
    }
  }
  PatternBurst burst1 {
    PatList { pat_scan; pat_func; }
  }
  Pattern pat_scan {
    W = wft_main;
    V { '0' '1' 'L'; }
    V { '1' '0' 'H'; }
  }
}

4.1.2 WGL向量结构示例

WGL
TIMING t_main {
  WAVEFORM CLK {
    0: D(0ns);
    1: D(50ns);
  }
  WAVEFORM DATA {
    0: Z(0ns);
    1: D(0ns);
  }
  WAVEFORM Q {
    0: Z(0ns);
    1: D(0ns);
  }
}
PATTERN scan_chain {
  VECTORS {
    CLK DATA Q
    0   1    L
    1   0    H
  }
}
格式转换注意: STIL的WaveformTable与WGL的TIMING块在周期对齐方式上存在差异。转换时需确认ATE平台是否支持自动周期映射,否则需手动调整时序参数。

4.2 向量周期与时序定义

向量周期(Vector Period)定义了ATE施加一组测试向量的时间窗口,时序定义则描述每个引脚在该周期内的具体波形行为。两者共同决定了测试的时序精度与吞吐率。

4.2.1 向量周期模型

向量周期模型 向量周期 T = 100 ns T0 T1 T2 T3 CLK DATA 周期内包含多个时序事件点(T0~T3),每个事件点定义引脚状态切换

4.2.2 时序定义关键参数

  • 周期(Period): 单个向量的时间长度,通常由DUT工作频率决定。例如100 MHz对应10 ns周期。
  • 事件时间(Event Time): 引脚状态切换的时刻,相对于周期起始点。
  • 波形格式(Waveform Format): 定义引脚在周期内的行为模式,如NRZ(非归零)、RZ(归零)、SBC(环绕)等。
  • 时序窗口(Timing Window): 输出数据有效的时间区间,用于ATE采样判决。
时序定义陷阱: 不同ATE平台对时序分辨率的支持不同(如1 ps vs 10 ps)。在跨平台移植时,务必检查时序定义是否超出ATE硬件精度,否则可能导致测试失效。

4.3 向量压缩技术

向量压缩旨在减少测试数据量,降低ATE存储需求与测试时间。工业级压缩技术分为无损压缩与有损压缩两大类,前者保持测试覆盖率不变,后者通过模式缩减牺牲部分覆盖率换取更高压缩比。

4.3.1 常用压缩方法对比

压缩技术 压缩比 适用场景 实现复杂度
重复向量压缩(Repeat) 2x ~ 10x 扫描链测试 低
游程编码(Run-Length) 3x ~ 15x 连续相同状态 中
字典编码(LZW/LZ77) 5x ~ 20x 大规模向量集 高
X填充压缩(X-Fill) 2x ~ 8x 含无关位向量 中
模式重排序(Pattern Reorder) 1.5x ~ 4x ATE加载优化 低

4.3.2 重复向量压缩原理

重复向量压缩流程 原始向量序列: V1 V2 V3 V3 V3 V3 V4 V5 V5 V5 压缩后: V1 V2 V3*4 V4 V5*3 压缩比 = 原始向量数 / 压缩后向量数 = 10 / 5 = 2x

4.3.3 X填充压缩策略

测试向量中常存在大量无关位(X位),通过智能填充可提升压缩效率。常见策略包括:

  • 相邻填充(Adjacent Fill): 将X位填充为相邻向量的相同位值,增加游程长度。
  • 0/1偏好填充(Preferred Fill): 根据统计分布,将X位填充为出现频率更高的逻辑值。
  • 自适应填充(Adaptive Fill): 结合ATE硬件特性,动态选择填充策略以最大化压缩比。
压缩效果验证: 在ATE平台上实际加载压缩后的向量集,需验证解压缩后的时序与原始向量完全一致。建议使用ATE内置的向量比对功能进行逐周期校验。

4.4 向量压缩与ATE平台适配

不同ATE平台对向量压缩的支持程度不同。下表列出主流平台的压缩特性:

ATE平台 支持压缩格式 最大压缩比 解压缩硬件
Teradyne UltraFLEX STIL Repeat, LZW 20:1 板载DSP
Advantest T2000 WGL Run-Length 15:1 FPGA加速
Chroma 3650 自定义字典压缩 10:1 软件解压
NI STS STIL Repeat, X-Fill 8:1 CPU解压
平台适配建议: 在开发阶段使用STIL/WGL标准格式存储向量,部署时根据目标ATE平台选择最优压缩方案。建议保留一份未压缩的原始向量集,用于调试与回归验证。

4.5 本章小结

测试向量是ATE测试程序的数据核心,其格式、周期、时序定义与压缩技术直接影响测试效率与成本。开发者应掌握STIL与WGL的语法差异,理解向量周期与时序的映射关系,并熟练运用重复压缩、游程编码、X填充等工业级压缩技术。在跨平台移植时,需重点关注时序精度与压缩格式的兼容性,确保测试覆盖率与数据完整性。