非同期リセット シンクロナイザー - 2023.2 日本語

Vivado Design Suite ユーザー ガイド: デザイン解析およびクロージャ テクニック (UG906)

Document ID
UG906
Release Date
2023-10-19
Version
2023.2 日本語

次の図にクリア ベース同期の非同期リセット シンクロナイザー、その後の図にプリセット ベース同期の非同期リセット シンクロナイザーを示します。FF1 セルはそれぞれ同期クリア信号または同期プリセット信号に接続されており、これらの信号のディアサートには clk_a に対して安全にタイミング解析が実行されます。CLEAR および PRESET を持つフリップフロップを 1 つの非同期リセット シンクロナイザー内に混合することはできません。

図 1. クリア ベースの非同期リセット シンクロナイザー

図 2. プリセット ベースの非同期リセット シンクロナイザー

デスティネーション クロック ドメイン内のリセット信号は複数回同期しないようにしてください。つまり、ソース クロック ドメインからデスティネーション クロック ドメインまでのリセットのファンアウトがないようにします。これにより、異なる時間でデスティネーション クロック ドメインがリセットから解除されて、デザインが未知の状態になることはなくなります。この推奨項目に従わないと、起動フロップからデスティネーション クロックへのファンアウトがクリティカル違反 CDC-11 Fan-out from launch flop to destination clock になります。

ただし、デスティネーション クロック ドメイン内でリセット信号を複数回同期しても安全な FIFO Generator IP を使用する場合もあります。FIFO Generator は非同期にリセット状態になり、同期で解除されます。ブロック RAM へ真の同期リセットが適用されますが、FIFO は非同期リセットを受信します。wr_rst_busy 信号がデータフローを保持するために使用されている限り、ロジックの一部がリセットから解除され、ほかの部分がリセットのままになることはありません。

AXI インターフェイスでは 5 つの FIFO Generator IP を使用して、各デスティネーション クロック ドメイン内でリセットが同期されます。これも、構造上安全なリセット回路の例です。この場合、リセット信号を複数回同期しても安全なので、CDC-11 違反は無視しても問題ありません。

次の図は、同じデスティネーション クロック ドメインで 2 つの FIFO Generator を使用した安全なリセット同期の例です。

図 3. 安全なリセット同期の例