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

ID 683082
日付 8/03/2023
Public
ドキュメント目次

2.1.1. 同期デザインの実装

同期デザインでは、クロック信号ですべての入力および出力のアクティビティーを制御します。

クロックのそれぞれのアクティブエッジ (通常は立ち上がりエッジ) では、レジスターのデータ入力がサンプリングされ、出力に転送されます。アクティブ・クロック・エッジに続いて、レジスターのデータ入力に供給される組み合わせロジックの出力で値が変化します。この変化により、ロジックでの伝播遅延によって不安定な期間が発生します。これは、信号が数回の遷移を経て最終的に新しい値に整定するために発生するものです。レジスターのデータ入力で発生する変化は、次のアクティブ・クロック・エッジの後まで、その出力の値に影響しません。

レジスターの内部回路ではデータ出力を入力から分離するため、次のタイミング要件を満たしている場合は、組み合わせロジックの不安定さがデザインの動作に影響することはありません。

  • アクティブ・クロック・エッジの前に、データ入力が少なくともレジスターのセットアップ時間の間安定していることが保証されている
  • アクティブ・クロック・エッジの後に、データ入力が少なくともレジスターのホールド時間の間安定していることが保証されている

    すべてのクロック周波数とその他のタイミング要件を指定すると、 インテル® Quartus® Primeのタイミング・アナライザーは、デザイン内のすべてのピンのセットアップ時間 (tSU) およびホールド時間 (tH) に対する実際のハードウェア要件を報告します。これらの外部ピン要件を満たし、同期デザイン手法に従うことで、デバイス内のすべてのレジスターのセットアップ時間とホールド時間が満たされるようにします。

    ヒント: すべての入力ピンでセットアップ時間およびホールド時間の要件を満たすには、レジスターに供給する組み合わせロジックへの入力がレジスターのクロックと同期関係にある必要があります。信号が非同期の場合は、デバイスの入力で信号をレジスターすることで、必要なセットアップ時間とホールド時間に対する違反を防ぐことができます。

    レジスターのセットアップ時間またはホールド時間に違反すると、出力が発振したり、出力がHighとLowのレベルの中間の電圧レベルに設定されるメタステーブルと呼ばれる状態になったりする可能性があります。この不安定な状態では、電源レールのノイズなどの小さな摂動により、レジスターがHighまたはLowの電圧レベルになり、予測できない有効状態が発生する可能性があります。また、伝播遅延の増加や不正な出力状態などの望ましくないさまざまな影響が発生することも考えられます。場合によっては、比較的長い時間にわたって出力が2つの有効な状態の間で振動することもあります。