位相情報を追加すると、SSN 解析の精度を高めることができます。デフォルトでは、SSN 解析ですべての出力ポートが同時にトグルすると想定されます。この想定はワースト ケースの状況であり、不必要に見積もりの悪い SSN 解析レポートが生成される可能性があります。デザインのクロック情報が使用可能であれば、SSN 解析でより正確な SSN ノイズがレポートされます。
この機能を使用するには、次の Tcl コマンドを使用して SSN 位相解析をイネーブルにします。
report_ssn -phase
create_clock
および create_generated_clock
の Tcl コマンドを使用してクロック情報を入力します。これらのコマンドにより、SSN 解析に次の必要な入力が提供されます。
- 位相グループ注記: 1 つの MMCM または PLL に属する生成されたクロックがグループになります。
- 周期
- デューティ サイクル
- 位相シフト注記: 0 度からの絶対位相シフトが含まれます。
詳細は、 『Vivado Design Suite Tcl コマンド リファレンス ガイド』 (UG835) および 『Vivado Design Suite ユーザー ガイド: Tcl スクリプト機能の使用』 (UG894) を参照してください。
ヒント: SSN 位相解析をオンにすると、SSN 解析レポートに [Phase] 列が表示されるようになります。
次の点に注意してください。
- マスター クロックが複数あると、SSN 結果は改善しません。SSN 結果を削減するため、各マスター クロック内に複数の位相が必要です。
- 1 つの位相グループ内のポートが 1 つであると、SSN 結果は改善しません。各クロック グループまたは位相グループに、ポートは少なくとも 2 つ必要です。
SSN ノイズを最小限に抑えるには、同一位相グループのクロック信号と異なる位相グループのクロック信号の両方に対して、あるクロックのクロック遷移をほかのクロックに合わせてシフトさせる必要があります。これらのシフトの大きさ (単位は ps) は、デザインやアーキテクチャによって異なります。
また、次の点にも注意してください。
- 高集積デザインの場合、位相を含む SSN 解析に数十分かかることがあります。
- 180 度のシフトでは SSN 結果は改善されません。クロック情報に立ち上がりおよび立ち下がり遷移情報は含まれていますが、SSN 解析ではそのポートの実際の出力ロジックは含まれません。クロックが Low から High に遷移する場合、ポート出力はいずれかの方向になります。保守的な SSN レポートを生成するため、アルゴリズムでは 180 度が位相シフト 0 と同じと認識されます。出力ポートに関する情報がないので、解析では 180 度シフトのポートの SSN ノイズが多く見積もられます。実際には、SSN は 180 度シフトで削減されていますが、アルゴリズムではその削減が認識されません。
- 50% のデューティ サイクルのみがサポートされ、それ以外のクロックは非同期信号と認識されます。