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

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

1.6.4.1. ステートマシンの起動

インテル® Stratix® 10デバイスでは、レジスターが同じセクターにない場合、それらは必ずしも同じクロックサイクルで起動するとは限りません。そのため、ステートマシンが未定義の状態になると、ステートマシンで問題が発生する可能性があります。

ワンホット・エンコードされたステートマシンでは、未定義のステートの数が正当なステートの数と比較して大きくなるため、特にこの問題の影響を受けやすくなります。リタイミングでも、この問題のリスクが大きくなります。これは、ステートレジスターがロジックまたは配線全体でリタイミングされると、1つのステートマシンの異なるステートレジスターが異なるセクターになる可能性が高くなることが原因です。

このリスクを緩和するため、コンパイラーは、 インテル® Stratix® 10デザインの6ステート以下のステートマシンすべてに自動的に Safe State Machine を使用します。この Safe State Machine 設定は、ステートマシンが未定義の状態になるとステートマシンを強制的にリセット状態に戻します。コンパイラーは、6ステートを超えるステートマシン、もしくは インテル® Arria® 10または インテル® Cyclone® 10 GXデバイスには Safe State Machine を自動的に使用しません。使用した場合は、結果の品質に対する影響が大きくなる可能性があります。