all_registers クエリの置換 - 2022.1 日本語

Vivado Design Suite ユーザー ガイド: 制約の使用 (UG903)

Document ID
UG903
Release Date
2022-06-01
Version
2022.1 日本語

次に、クエリに関するその他の推奨事項を示します。

  • all_registers を使用したクエリは多数のオブジェクトを返すので、できるだけ使用しないようにしてください。このようなクエリは、適切な名前パターンを使用したセル/ピンのクエリに置き換える必要があります。
  • all_registers をどうしても使用する必要があり、このクエリであるクロック ドメインからのすべての順次エレメントを取得する場合は、all_registers -clock を使用する場合とクロック オブジェクトを直接使用する場合とで適用範囲が同じになることがあります。

    たとえば、次の 2 つのコマンドの適用範囲は同じですが、get_clocks を使用する 2 つ目のコマンドは、マルチサイクル パス制約で膨大な数の順次エレメントではなく 1 つのクロック オブジェクトを参照しているので、より効率的です。

    元の制約:

    set_multicycle_path –from [all_inputs] –to [all_registers –clock clk1]

    効率的な制約:

    set_multicycle_path –from [all_inputs] –to [get_clocks clk1]
重要: Vivado Design Suite 2018.3 から、all_registers コマンドは、少なくとも 1 つのイネーブルにされたセットアップ/ホールド/リカバリ/リリムーバル タイミング アークおよび CLK->Q タイミング アークを含むプリミティブしか返さなくなりました。つまり、BUFGCE および BUFGCE_DIV などのバッファーは all_registers コマンドでは返されなくなりました。