GLOSSARY

セットアップ・ホールド時間とは

Setup and Hold Time
最終更新:2026-08-02technology

セットアップ・ホールド時間とは?

セットアップ時間・ホールド時間とは、フリップフロップなどの順序回路が入力データを正しく取り込むために必要な、クロックエッジ周辺のタイミング制約です。セットアップ時間はクロックエッジより前にデータが安定していなければならない時間、ホールド時間はエッジより後もデータを保持しなければならない時間で、満たせないとタイミング違反となり誤動作します。

定義・解説

セットアップ時間・ホールド時間(Setup / Hold Time)は、フリップフロップなどの順序回路が入力データを正しく取り込むために必要な、クロックエッジ周辺のタイミング制約です。セットアップ時間はクロックエッジより前にデータが安定していなければならない時間、ホールド時間はエッジより後もデータを保持しなければならない時間を指します。

これらの制約が守られないと、フリップフロップが不安定な中間状態(メタステーブル)に陥り、出力が確定せず論理誤りを引き起こす恐れがあります。したがって、すべてのパスでセットアップ・ホールドを満たすようにタイミングを収束させる「タイミングクロージャ」が設計の重要工程になります。

セットアップ違反は動作周波数を下げれば回避できますが、ホールド違反はクロック周波数に依存せず、配線遅延やクロックスキュー(クロック到達時刻のばらつき)で起こるため、遅延素子の挿入などで個別に修正します。これらはスタティックタイミング解析(STA)で網羅的に検証します。

タイミング制約は論理合成や配置配線で最適化の目標として使われます。logic-synthesisやrtl、scan-testの各項とあわせて読むと、機能記述から実チップのタイミング検証までの流れが理解できます。ツールはSynopsys・Cadence・Siemens EDAが提供します。

よくある質問(FAQ)

セットアップ違反とホールド違反はどう違いますか?
セットアップ違反はデータの到着が遅すぎて次のクロックエッジに間に合わない状態で、クロック周波数を下げれば解消できます。ホールド違反はデータが速く到着しすぎて前の値を壊してしまう状態で、周波数を下げても解消せず回路の修正(バッファ挿入)が必要です。
ホールド違反はどう修正しますか?
データパスに遅延バッファを挿入して、データの到着をわざと遅らせます。セットアップ違反のようにクロック周波数では解決できないため、配置配線の段階でツールが自動的にバッファを挿入するのが一般的です。
メタスタビリティとは何ですか?
セットアップ・ホールド条件が破られたときに、フリップフロップの出力が0でも1でもない不安定な中間状態にとどまる現象です。いつ収束するか確率的にしか分からないため、非同期信号を受ける箇所では2段以上のフリップフロップで同期化し、発生確率を実用上無視できるレベルまで下げます。

デバイスの製造メーカー

Synopsys米国

世界最大のEDA(電子設計自動化)ソフトウェア企業。論理合成・配置配線・物理検証・TCAD・IPライセンスを提…

企業詳細を見る →
Cadence Design Systems米国

EDAとIPの世界2大メーカーの一つ。アナログ・カスタム・デジタルIC設計、PCB・システム解析、AI駆動のJ…

企業詳細を見る →
Siemens EDA(旧Mentor Graphics)米国

シーメンスのEDA部門(旧Mentor Graphics)。PCBレイアウト・IC物理設計・機能検証・DFM(…

企業詳細を見る →

関連用語

論理合成とは →RTL(レジスタ転送レベル)とは →スキャンテストとは →EDA(電子設計自動化)とは →
← 用語集に戻る