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

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

2.1.2. 非同期デザインの危険性

リップルカウンターやパルス・ジェネレーターなどの非同期デザイン手法は、デバイスリソースを節約するための「近道」として機能します。ただし、非同期手法には固有の問題があります。例えば、伝播遅延は温度や電圧の変動に応じて変化するため、伝播遅延に依存すると、タイミング制約が不完全になったり、グリッチやスパイクが発生する可能性があります。

相対的な伝播遅延に依存する非同期デザイン構造では、競合状態が発生する可能性があります。競合状態は、信号変化の順序がロジックの出力に影響する場合に発生します。同じロジックデザインでも、配置と配線に応じて、タイミング遅延がコンパイルごとに異なる可能性があります。起こりうるバリエーションの数により、特定のロジックブロックに関連するタイミング遅延を特定することができなくなります。プロセスの改善によりデバイスが高速になると、非同期デザインの遅延が減少し、デザインが想定どおりに機能しなくなる可能性があります。特定の遅延に依存することにより、非同期デザインを他のアーキテクチャー、デバイス、またはスピードグレードに移行することも難しくなります。

非同期デザイン構造のタイミングは多くの場合、タイミング割り当てと制約でモデル化することが困難な場合や不可能な場合があります。完全な、または正確なタイミング制約がないと、合成および配置配線ツールが使用するタイミングに重点を置くアルゴリズムで最良の最適化を実行できず、報告される結果が不完全になる可能性があります。

さらに、非同期デザイン構造では、グリッチが生成される可能性があります。グリッチは、クロック周期に比べて非常に短いパルスです。組み合わせロジックがグリッチの主な原因です。組み合わせロジックへの入力が変化すると、出力は新しい値に整定するまでに数回のグリッチを示します。グリッチは組み合わせロジックを介して伝播し、非同期デザインの出力での不正な値につながる可能性があります。同期デザインでは、データ処理は次のクロックエッジまで行われないため、レジスターのデータ入力でのグリッチが悪影響をおよぼすことはありません。