STA(Static Timing Analysis:静的タイミング解析)とは、回路のすべての信号経路(パス)について、信号が目標のクロック周期内に届くかを入力パターンなしで検証する手法です。回路を実際に動かして確かめるシミュレーションとは違い、各セルと配線の遅延を積み上げて経路ごとの到着時刻を計算するため、数十億ゲート規模の回路でも全パスを網羅的に検査できます。論理合成後から配置配線、最終のサインオフまで繰り返し使われます。
STAの基本は2種類のチェックです。(1)セットアップチェック:データが次のクロックエッジより一定時間前に到着しているか(遅すぎないか)を確認し、違反すると動作周波数を上げられません。(2)ホールドチェック:データがクロックエッジの直後に変化しないか(早すぎないか)を確認し、違反すると周波数を下げても直らない致命的な不良になります。要求時刻と到着時刻の差をスラック(余裕)と呼び、負のスラックが違反を意味します。
STAの結果は、製造ばらつきと動作条件の想定に強く依存します。プロセスの速い・遅い(コーナー)、電源電圧、温度の組合せ(PVTコーナー)ごとに解析し、さらに動作モード(通常動作・テストモードなど)を掛け合わせた数十通りの条件を同時に検証するMCMM(マルチコーナー・マルチモード)が標準です。チップ内の局所的なばらつきは、OCV・AOCV・POCVといった統計的な補正で遅延に上乗せします。
精度を決めるのは入力データです。セルの遅延はPDKに含まれるタイミングライブラリ(Libertyファイル)から、配線の遅延は寄生抽出(PEX)で求めた抵抗・容量から計算されます。代表的なサインオフツールにSynopsys PrimeTimeとCadence Tempusがあります。なお、STAは信号の論理的な正しさは見ないため、機能の検証にはシミュレーションや形式検証を併用します。