インテル® Quartus® Primeプロ・エディションのユーザーガイド: デザイン上の推奨事項

ID 683082
日付 4/13/2020
Public

このドキュメントの新しいバージョンが利用できます。お客様は次のことを行ってください。 こちらをクリック 最新バージョンに移行する。

ドキュメント目次

2.3.6.3.1. CDC-50001: 1-Bit Asynchronous Transfer Not Synchronized

内容

シングルビット非同期データ転送の後には、シンクロナイザー・ェーンが続く必要があります。シンクロナイザー・チェーンは、同じクロックドメイン内のレジスターの線形シーケンスです。そうしないと、転送で準安定が発生する可能性があります。

起動クロックとラッチクロックが無関係または非同期の場合、データ転送は非同期と見なされます。共通の親クロックを共有しない場合、クロックは無関係です。クロックグループまたはクロック間の偽のパスを介して明示的に指定されている場合、クロックは非同期です。デスティネーション・レジスターにSynchronizer Identification = FORCEDインスタンスが割り当てられている場合、データ転送も非同期です。

推奨度

シングルビット非同期データ転送がシンクロナイザーチェーンによって保護されていることを確認します。これを行うには、転送先の後に1つ以上のシンクロナイザー・レジスターを追加します。各レジスター、転送先と同じクロックドメインにあり、それらの間にファンアウトはありません。

チェーンがメタスタビリティーを防ぐのに十分長いかどうかを確認するには、Timing Analyzerでreport_metastabilityコマンドを実行します。

違反する転送を非同期にしない場合、転送の起動クロックが正しく、転送のラッチクロックに関連していることを確認してください。

図 48.  Unsynchronized 1-bit Asynchronous TransferCDC-50001違反を防ぐには、次の図の青いレジスターの後に、clkbによってラッチされた少なくとも1つの他のレジスターが続く必要があります。

重大度

High

ステージ

Plan, Place, Route, Finalize

デバイスファミリー

  • インテル® Stratix® 10
  • インテル® Agilex™
  • インテル® Cyclone® 10 GX
  • インテル® Arria® 10