テストベクタ(テストパターン)とは、半導体チップの機能試験で、各入力ピンに与える信号の値と、各出力ピンから返ってくるべき期待値を、クロックの1サイクルごとに並べたデータの列です。ATE(自動テスト装置)はこのデータに従って1サイクルずつ入力を与え、出力を期待値と比較し、1つでも一致しなければそのチップを不良と判定します。テストプログラムの中核となるデータです。
テストベクタの作り方は大きく2つあります。(1)機能パターン:設計の検証で使ったシミュレーションの入出力を記録し、テスタ用に変換したもの。実際の動作に近い条件で試験できますが、故障をどれだけ検出できるかは保証されません。(2)構造テストパターン:ATPG(自動テストパターン生成)ツールがスキャンチェーンを使う前提で生成するもので、縮退故障や遷移故障などの故障モデルに対する検出率(故障カバレッジ)を数値で保証できます。現在のロジックLSIでは構造テストパターンが主流です。
テストベクタのやり取りには標準形式が使われます。IEEE 1450として標準化されたSTIL(Standard Test Interface Language)や、従来から使われているWGL、シミュレーションの波形を記録するVCDなどから、各テスタ固有の形式に変換してテストプログラムに組み込みます。設計側とテスト側でデータの形式とタイミングの定義を合わせることが、量産立ち上げ時のトラブルを減らす要点になります。
大規模SoCではテストベクタのデータ量が問題になります。パターン数が増えるとテスタのベクタメモリに収まらず、テスト時間も長くなるためです。対策として、チップ内に展開回路を設けて外部から送るデータを数十分の1に圧縮するテストコンプレッションや、チップ内部でパターンを生成するBISTが併用されています。テストベクタの量と質は、故障カバレッジとテストコストの両方を決める要素です。