タイミング例外は、使用する数を制限し、できる限り簡潔にします。そうしないと、次の問題が発生します。
- 例外が多用されると (特に多数のネットリスト オブジェクトに使用される場合)、インプリメンテーション コンパイル時間が大幅に長くなります。
- 複数の例外が同じパスに適用されると、制約のデバッグが複雑になります。
- 信号の制約により、その信号の最適化が妨害されることがあります。不要な例外や例外コマンドに不要なポイントを含めると、最適化が妨害される可能性があります。
次に、実行時間に悪影響を及ぼすタイミング例外の例を示します。
set_false_path -from [get_ports din] -to [all_registers]
-
din
ポートに入力遅延がない場合は、制約は設定されないので、フォルス パスを追加する必要はありません。 -
din
ポートが順次エレメントにのみ接続される場合、シーケンシャル セルに対してフォルス パスを明示的に指定する必要はありません。制約は、次のように記述した方が効率的です。set_false_path -from [get_ports din]
- フォルス パスが必要だが
din
ポートからシーケンシャル セルへのパスが 2、3 個しかない場合は、制約をより特定的に指定します (all_registers
を使用すると、デザインで使用されるレジスタの数によって何千ものセルが返される可能性あり)。set_false_path -from [get_ports din] -to [get_cells blockA/config_reg[*]]