Questa CDC

Questa® CDC (Clock Domain Crossing) は、HDL シミュレーションでは解析しきれない、問題を引き起こす可能性のある回路構成を検証できます。
アジェンダ
- Questa CDC の概要
- Questa CDC 関連資料
Questa CDC の概要
Questa CDC とは、クロック・ドメインやシンクロナイザの構造解析ツールです。
異なるクロック・ドメイン間における信号の接続により発生するメタステーブルは、シミュレーションなどによる事前検証ができません。また、温度や電圧などのバランスにより発生頻度が異なる為、実機での検証も非常に困難です。
回路構造からメタステーブルの可能性がある箇所を抽出する事ができるツールが Questa CDC です。
Clock Domain Crossing
マルチ・クロック・ドメイン設計の場合、シミュレーションでは異なるクロック・ドメイン間のデータ転送を正確に予測できません。

そこで、予め問題を引き起こしやすい回路構造を解析する事で設計の初期段階から対策できます。
マルチ・クロック・ドメイン設計で問題となるのは、メタスタビリティです。送信クロックと受信クロックのタイミングがあわずに setup / hold タイミング違反を起こし、メタスタビリティが発生します。メタスタビリティが発生すると受信信号が不安定な状態を経てから収束します。

Questa CDC の構造解析フロー
Questa CDC で構造解析を行う際は、RTL 設計終了後に実行可能です。
インテル® FPGA を対象としたデザインに対して、Questa CDC の構造解析を実行する際に必要なものは、下記です。
- HDL ソース・ファイル
- Questa CDC
- Quartus® Prime / Quartus® II
※ Quartus のライブラリのみを使用します。

Questa CDC の特長
Questa CDC は、CDC の問題を早期にとらえることができます。
- CDC 構造チェックの自動実行
- プロトコルチェック用アサーションの自動生成
- メタスタビリティ検証
- デバッグ機能
Questa CDC は完全な構造解析を行います。デザイン中のクロックを自動判別し、非同期クロック間の CDC 解析を行い、レポートを生成します。CDC レポートから対策が必要な RTL 部分を特定できます。

さらに、メタステーブル注入シミュレーションも可能です。
メンターの特許であるメタスタビリティ・インジェクタは自動メタスタビリティ発生器です。他製品と大きく違うのは、回路構成からハードウェアとして起こり得る値からランダムにメタスタビリティを発生させることができます。より実機動作に近い検証が可能です。


通常のシミュレーションでは、わかりえなかった回路の危険性を確認できます。CDC の対策回路をすり抜けて後段に伝わったメタステーブルは予期せぬ動作になります。
CDC の対策回路の妥当性をメタステーブル・インジェクタにより確認を取ることができ、回路の信頼性向上につながります。

Questa CDC 関連資料
Questa CDC のインストール

メンターの非同期クロック検証である Questa® CDC のインストール手順についてまとめています。
Makefile を使用した操作方法
『Questa CDC - Makefile を使用した操作方法』

インテルの FPGA を対象としたデザインの場合、メガファンクションなどを使用されるケースが多いです。
メガファンクションは論理合成が不可能なシミュレーション・モデルでの提供となっている為、ライブラリを読み込み、CDC 検証を行う必要があります。ライブラリの読み込みやコンパイルなどの手順を Makefile で事前準備する事で複雑な手順を行わずに容易に検証を進める事ができます。

メンターの Support Net では、ダウンロードやマニュアル、トラブルシューティングなどの情報を提供しています。
