インテル® Quartus® Prime プロ・エディションのユーザーガイド: Timing Analyzer

ID 683243
日付 9/30/2019
Public

このドキュメントの新しいバージョンが利用できます。お客様は次のことを行ってください。 こちらをクリック 最新バージョンに移行する。

ドキュメント目次

2.2.4. エンティティー・バインドSDCファイルの使用

インテル® Quartus® Prime プロ・エディション Timing Analyzerは、Synopsys Design Constraints( .sdc )ファイルのプロジェクト内の特定のデザイン・エンティティー(モジュール)への割り当てをサポートします。

通常、.sdcファイルで指定するタイミング制約は、特定のデザイン・エンティティーではなく、プロジェクト全体に適用されます。ただし、PropertiesダイアログボックスまたはSDC_ENTITY_FILE割り当てを使用して、.sdcファイルをデザイン・エンティティーにバインドできます。エンティティー・バインド制約により、タイミング制約をより正確に指定でき、デザインブロックまたはIPでタイミング制約を移植できます。

  • タイミング制約の移植性—割り当てられたエンティティーを含むすべてのデザイン・パーティションには、エンティティーにバインドされた.sdc制約が自動的に含まれます。オプションで、Include entity-bound SDC files (--include_sdc_entity_in_partition)オプションを使用してエクスポートするパーティションで、これらの制約のエクスポートを指定できます。これにより、合成済みまたは最終的なデザインブロック、またはタイミング制約付きのIPパッケージをハンドオフできます。
  • タイミング制約の精度—グローバルではなく特定のエンティティーにのみタイミング制約を適用し、制約の入力を簡素化します。この方法は、特にワイルドカード(*)タイミング制約を使用する場合に、意図する以上に適用されるグローバル制約の意図しない副作用を回避します。デフォルトでは、エンティティーにバインドされた.sdc制約は、プロジェクト内の割り当てられたエンティティーのすべてのインスタンスに自動的に適用されます。または、デフォルトですべての制約をグローバルに適用し、エンティティーにバインドされた制約スコープで説明されるようにget_current_instanceコマンドを使用して、現在のエンティティーのみを対象とする制約を選択できます。
  • 注: すべて インテル® Stratix® 10 FPGA IPコアは、エンティティー・バインドの.sdc制約を自動的に使用します。

バインドされたエンティティー.sdcファイルを作成または変更するには、次の手順に従います。

  1. .sdcファイルを作成し、Project > Add/Remove files in projectファイルをクリックして、 .sdcファイルを追加します。 .sdcファイルがFilesリストに表示されます。
  2. Filesリストで、.sdcファイルを選択し、Propertiesボタンをクリックします。
  3. TypeSynopsys Design Constraints File with entity bindingを選択します。
    図 53. エンティティーの再バインド
  4. Entityで、.sdcにバインドするエンティティーを選択します。
  5. OKをクリックします。

または、次の割り当てを.qsfに追加して、指定したエンティティーを指定した.sdcファイルにバインドします。

QSF割り当て構文:

set_instance_assignment -entity <entity_name> -name \
    SDC_ENTITY_FILE <sdc_file_name> -no_sdc_promotion –no_auto_inst_discovery

SDC_ENTITY_FILEコマンドには、次のオプションが適用されます。

  • -no_sdc_promotion –no_auto_inst_discovery—制約スコープをオフにします。 Timing Analyzerは各エンティティーの.sdcファイルを1回読み取り、コレクション・フィルターは変更しません。get_current_instanceは空の文字列を返します。
  • -no_sdc_promotion—手動プロモーションをオンにします。Timing Analyzerは、バインドされたインスタンスごとにエンティティーの.sdcファイルを1回読み出し、get_current_instanceは値を返します。Timing Analyzerは、コレクション・フィルターを変更しません。
  • オプションなし—自動制約スコープをイネーブルします。 Timing Analyzerは、バインドされたインスタンスごとにエンティティー.sdcファイルを1回読み出し、get_current_instanceは値を返します。コレクション・フィルター(クロックおよび最上位ポートフィルターを除く)には、現在のインスタンスの階層パス(つまり、get_current_instanceの戻り値)が付加されます。