インテル Quartus Primeプロ・エディション のユーザーガイド: デザイン制約
バージョン情報
更新対象: |
---|
インテル® Quartus® Prime デザインスイート 19.3 |
1. デザインの制約
GUIで、スクリプトを使用して、または制約を保存するファイルで直接、設計制約を指定できます。 インテル® Quartus® Primeソフトウェアは、GUIで指定した制約を次のファイルに保存します。
- インテル® Quartus® Prime Settingsファイル (<project_directory>/<revision_name>.qsf)—プロジェクトの現在のリビジョンに対するプロジェクト全体およびインスタンス・レベルの割り当てがTcl構文で含まれています。プロジェクトの各リビジョンには、個別の.qsfファイルがあります。
- Synopsys* Design Constraintsファイル (<project_directory>/<revision_name>.sdc)—Timing Analyzerは業界標準の Synopsys* Design Constraint形式を使用し、それらの制約を.sdcファイルに保存します。
1.1. GUIでのデザイン制約デザインの指定
インテル® Quartus® Primeソフトウェアで制約を作成または更新するとき、MessagesウィンドウのSystemタブには同等のTclコマンドが表示されます。これらのコマンドを、将来のスクリプト化されたデザイン定義およびコンパイルの参照として利用します。
1.1.1. グローバル制約と割り当て
設定タイプ | 新規プロジェクト・ウィザード | Programmerダイアログ・ボックス | Settingsダイアログ |
---|---|---|---|
Project-wide | X | X | X |
Synthesis | X | X | X |
Fitter | X | X | X |
Simulation | X | ||
Third-party Tools | X | ||
IP Settings | X |
1.1.2. ノード、エンティティー、およびインスタンス・レベルの制約
Assignment Type | Assignment Editor | Interface Planner | Chip Planner | Pin Planner |
---|---|---|---|---|
Pin | X | X | X | |
Location | X | X | X | |
Routing | X | X | ||
Simulation | X | X | X |
1.1.2.1. Assignment Editorでインスタンス固有の制約を指定する

- 選択したノードの割り当てを追加、編集、または削除するために
- 個々の割り当てをイネーブルまたはディセーブルするために
- 割り当てにコメントを追加するために
1.1.2.2. 多次元バス制約の指定
たとえば、次の割り当てを指定して、reg [31:0] r [0:2][4:5] 3次元バスのすべてのビットに制約を適用できます。
set_instance_assignment -name PRESERVE_REGISTER ON -to r
次に、制約はすべてのビットrに適用されます。 [0][4][31], r[0][4][30], … , r[1][5][0]
1.1.2.3. Pin PlannerでI/O制約を指定する
1.1.2.4. Interface Plannerでのインターフェイスの制約を計画する
Interface Plannerは インテル® Quartus® Prime Fitterと動的に対話して、計画中に配置の合法性を正確に検証します。インタラクティブ・レポートを使用して、さまざまなフロアプランを評価し、繰り返しコンパイルすることなく、最適な実装を正確に計画できます。Fitterの検証により、インターフェイス・プランと実際の実装結果との間の最高の相関が保証されます。最終的な実装で高い信頼性を維持しながら、インターフェイス・プランの制約をプロジェクトに適用できます。
1.1.2.5. Chip Plannerを使用して制約を調整する
Chip Plannerを使用すると、デバイス・フロアプランのグラフィック表示で、ピン、ロジックセル、LABなどのデバイスリソースへの既存の割り当てを調整できます。Logic LockLogic Lockリージョンウィンドウのロジックロック領域にドラッグとドロップすることで、方程式とルーティング情報を表示し、割り当てを降格することもできます。
1.1.2.6. Design Partition Plannerを使用したデザインの制約
1.1.3. インテル Quartus Prime GUIのコンポーネント間の調査
Project Navigator、Assignment Editor、Chip Planner、またはPin Plannerで、他の インテル® Quartus® Primeツールで特定のリソースを表示する場合:
- 次に、表示したいピン機能をクリックします。
- Locate Nodeをクリックし、メニューオプションのいずれかをクリックします。
対応するウィンドウが開き(または既に開いている場合は手前に表示される)、クリックした要素が表示されます。
Project NavigatorでResource Selectedを配置します。
HierarchyタブのEntityリストで、任意のオブジェクトを右クリックし、Locate > Locate in Chip Plannerをクリックします。
Chip Plannerが開き、選択したインスタンスが表示されます。
1.1.4. GUIでのタイミング制約の指定

GUIで制約を指定すると、ダイアログボックスに同等のSDCコマンド構文が表示されます。
Clockダイアログボックスの作成
個々のタイミングの割り当ては、プロジェクト全体の要件を上書きします。
- 不適切なタイミング違反や無関係なタイミング違反の報告を避けるために、ノードとパスにタイミング例外を割り当てることができます。
- Timing Analyzerは、ポイント間のタイミンググ制約、アサインメントを作成する際に特定のノードを指定するためのワイルド・カード、およびノードのグループに個別のアサインメントを作成するためのtime groupアサインメントをサポートしています。
1.2. Tclスクリプトによるデザインの制約
インテル® Quartus® Prime Tclパッケージを使用するとき、スクリプトでプロジェクトを開いたり、割り当てを行ったり、デザインをコンパイルしたり、コンパイル結果を既知の目標やベンチマークと比較したりできます。さらに、このようなスクリプトは、制約を変更してデザインを再コンパイルすることにより、反復デザインプロセスを自動化できます。
1.2.1. プロジェクトの作成と制約の適用
この例では、Tcl スクリプトを使用してプロジェクトを作成し、< Intel Quartus Prime installation directory> /qdesigns/fir_filter/ディレクトリーのチュートリアル・デザイン・ファイルを使用してプロジェクトの制約を適用します。
project_new filtref -overwrite # Assign family, device, and top-level file set_global_assignment -name FAMILY "Arria 10" set_global_assignment -name DEVICE <Device> set_global_assignment -name VERILOG_FILE filtref.v # Assign pins set_location_assignment -to clk Pin_28 set_location_assignment -to clkx2 Pin_29 set_location_assignment -to d[0] Pin_139 set_location_assignment -to d[1] Pin_140 # project_close
スクリプトをsetup_proj.tclという名前のファイルに保存し、コマンドプロンプトで例に示すコマンドを入力して、デザインを作成し、制約を適用し、デザインをコンパイルし、ファーストコーナーとスローコーナーのタイミング分析を実行します。タイミング分析の結果は、filtref_sta_1.rptおよびfiltref_sta_2.rptの2つのファイルに保存されます。
quartus_sh -t setup_proj.tcl quartus_syn filtref quartus_fit filtref quartus_asm filtref quartus_sta filtref --model=fast --export_settings=off mv filtref_sta.rpt filtref_sta_1.rpt quartus_sta filtref --export_settings=off mv filtref_sta.rpt filtref_sta_2.rpt
次のコマンドを入力して、タイミング分析を実行せずにデザインを作成し、制約を適用し、デザインをコンパイルします。
quartus_sh -t setup_proj.tcl quartus_sh --flow compile filtref
quartus_sh --flow compileコマンドはフルコンパイルを実行し、ツールバーのStart Compilationボタンをクリックするのと同じです。
1.2.2. ピンの割り当て
ピンまたはデバイスの位置に信号を割り当てるには、次の例に示すTclコマンドを使用します。
set_location_assignment -to <signal name> <location>
イネーブルな場所はピンの場所名です。一部のデバイスファミリーは、エッジおよびI/Oバンクの場所もサポートしています。エッジの場所はEDGE_BOTTOM、EDGE_LEFT、EDGE_TOP、およびEDGE_RIGHTです。 I/Oバンクの場所にはIOBANK_1からIOBANK_nが含まれます。nはデバイス内のI/Oバンクの数です。
1.2.3. インテル Quartus Prime設定ファイルの生成
インテル® Quartus® Primeソフトウェアから.qsfファイルを生成するには、Assignments > Export Assignmentsをクリックします。
.qsfを人間が読める形式で編成するには、Project > Organize Intel Quartus Prime Settings Fileを使用します。
整理された.qsfファイル
この例は、.qsfファイルがデザイン・リビジョンをどのように特徴付けるかを示しています。set_global_assignmentコマンドはすべてのグローバル制約とソフトウェア設定を行い、set_location_assignmentはデザイン内の各I/Oノードをデバイス上の物理ピンに制約します。
# Project-Wide Assignments # ======================== set_global_assignment -name SYSTEMVERILOG_FILE top.sv set_global_assignment -name SYSTEMVERILOG_FILE blinking_led.sv set_global_assignment -name SDC_FILE blinking_led.sdc set_global_assignment -name SDC_FILE jtag.sdc set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files set_global_assignment -name LAST_QUARTUS_VERSION "17.1.0 Pro Edition" set_global_assignment -name TEXT_FILE blinking_led_generated.txt # Pin & Location Assignments # ========================== set_location_assignment PIN_AN18 -to clock set_location_assignment PIN_AR23 -to led_zero_on set_location_assignment PIN_AM21 -to led_two_on set_location_assignment PIN_AR22 -to led_one_on set_location_assignment PIN_AL20 -to led_three_on # Analysis & Synthesis Assignments # ================================ set_global_assignment -name FAMILY "Arria 10" set_global_assignment -name TOP_LEVEL_ENTITY top # Fitter Assignments # ================== set_global_assignment -name DEVICE 10AS066N3F40E2SG # ----------------- # start ENTITY(top) # Fitter Assignments # ================== set_instance_assignment -name IO_STANDARD "1.8 V" -to led_zero_on set_instance_assignment -name IO_STANDARD "1.8 V" -to led_one_on set_instance_assignment -name IO_STANDARD "1.8 V" -to led_two_on set_instance_assignment -name IO_STANDARD "1.8 V" -to led_three_on set_instance_assignment -name SLEW_RATE 1 -to led_zero_on set_instance_assignment -name SLEW_RATE 1 -to led_one_on set_instance_assignment -name SLEW_RATE 1 -to led_two_on set_instance_assignment -name SLEW_RATE 1 -to led_three_on set_instance_assignment -name CURRENT_STRENGTH_NEW 12MA -to clock set_instance_assignment -name CURRENT_STRENGTH_NEW 12MA -to led_zero_on set_instance_assignment -name CURRENT_STRENGTH_NEW 12MA -to led_one_on set_instance_assignment -name CURRENT_STRENGTH_NEW 12MA -to led_two_on set_instance_assignment -name CURRENT_STRENGTH_NEW 12MA -to led_three_on # end ENTITY(top) # ---------------
1.2.4. Synopsys Design Constraint (.sdc)ファイル
.sdcファイル
この例は、小規模デザインのタイミング制約を示しています。
## PROGRAM "Quartus Prime" ## VERSION "Version 17.1.0 Internal Build 91 05/07/2017 SJ Pro Edition" ## DATE "Wed May 10 14:22:08 2017" ## ## DEVICE "10AX115R4F40I3SG" ## #************************************************************** # Time Information #************************************************************** set_time_format -unit ns -decimal_places 3 #************************************************************** # Create Clock #************************************************************** create_clock -name {clk_in} -period 10.000 -waveform { 0.000 5.000 } [get_ports {clk_in}] #************************************************************** # Create Generated Clock #************************************************************** derive_pll_clocks #************************************************************** # Set Clock Uncertainty #************************************************************** derive_clock_uncertainty #************************************************************** # Set Input Delay #************************************************************** set_input_delay -add_delay -clock [get_clocks {clk_in}] 1.500 [get_ports {async_rst}] set_input_delay -add_delay -clock [get_clocks {clk_in}] 1.200 [get_ports {data_in}] #************************************************************** # Set Output Delay #************************************************************** set_output_delay -add_delay -clock [get_clocks {clk_in}] 2.000 [get_ports {data_out}] #************************************************************** # Set Multicycle Path #************************************************************** set_multicycle_path -setup -end -from [get_keepers *] -to [get_keepers {reg2}] 2
1.2.5. Tcl-onlyスクリプトのフロー
デザインの内容を手続き型の実行可能なTcl( .tcl)ファイルにエクスポートし、生成されたスクリプトを使用して、他の制約を試した後に設定を復元できます。
制約を実行可能なTclスクリプトとしてエクスポートするには、Project Project > Tcl File for Projectをクリックします。
blinking_led_generated.tclファイル
# Quartus Prime: Generate Tcl File for Project # File: blinking_led_generated.tcl # Generated on: Wed May 10 10:14:44 2017 # Load Quartus Prime Tcl Project package package require ::quartus::project set need_to_close_project 0 set make_assignments 1 # Check that the right project is open if {[is_project_open]} { if {[string compare $quartus(project) "blinking_led"]} { puts "Project blinking_led is not open" set make_assignments 0 } } else { # Only open if not already open if {[project_exists blinking_led]} { project_open -revision blinking_led blinking_led } else { project_new -revision blinking_led blinking_led } set need_to_close_project 1 } # Make assignments if {$make_assignments} { set_global_assignment -name SYSTEMVERILOG_FILE top.sv set_global_assignment -name SYSTEMVERILOG_FILE blinking_led.sv set_global_assignment -name SDC_FILE blinking_led.sdc set_global_assignment -name SDC_FILE jtag.sdc set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files set_global_assignment -name LAST_QUARTUS_VERSION "17.1.0 Pro Edition" set_global_assignment -name TEXT_FILE blinking_led_generated.txt set_global_assignment -name FAMILY "Arria 10" set_global_assignment -name TOP_LEVEL_ENTITY top set_global_assignment -name DEVICE 10AS066N3F40E2SG set_location_assignment PIN_AN18 -to clock set_location_assignment PIN_AR23 -to led_zero_on set_location_assignment PIN_AM21 -to led_two_on set_location_assignment PIN_AR22 -to led_one_on set_location_assignment PIN_AL20 -to led_three_on set_instance_assignment -name IO_STANDARD "1.8 V" -to led_zero_on set_instance_assignment -name IO_STANDARD "1.8 V" -to led_one_on set_instance_assignment -name IO_STANDARD "1.8 V" -to led_two_on set_instance_assignment -name IO_STANDARD "1.8 V" -to led_three_on set_instance_assignment -name SLEW_RATE 1 -to led_zero_on set_instance_assignment -name SLEW_RATE 1 -to led_one_on set_instance_assignment -name SLEW_RATE 1 -to led_two_on set_instance_assignment -name SLEW_RATE 1 -to led_three_on set_instance_assignment -name CURRENT_STRENGTH_NEW 12MA -to clock set_instance_assignment -name CURRENT_STRENGTH_NEW 12MA -to led_zero_on set_instance_assignment -name CURRENT_STRENGTH_NEW 12MA -to led_one_on set_instance_assignment -name CURRENT_STRENGTH_NEW 12MA -to led_two_on set_instance_assignment -name CURRENT_STRENGTH_NEW 12MA -to led_three_on # Commit assignments export_assignments # Close project if {$need_to_close_project} { project_close } }
例:
- Opens the project
- Assigns Constraints
- Writes assignments to QSF file
- Closes project
1.2.5.1. Tcl-only Timing Analysis
1.3. 完全に反復的なスクリプトフロー
1.4. デザインの制約の改訂履歴
ドキュメント・バージョン | インテル® Quartus® Primeバージョン | 変更内容 |
---|---|---|
2019.10.16 | 19.3.0 |
|
2019.08.21 | 18.1.0 | 「Tclのみのスクリプトフロー」トピックのマイナーな誤字を修正。 |
2019.01.04 | 18.1.0 |
|
2017.11.06 | 17.1.0 |
|
2017.05.08 | 17.0.0 |
|
2016.10.31 | 16.1.0 |
|
2015.11.02 | 15.1.0 |
|
2014年6月 | 14.0.0 | 更新のフォーマット。 |
2012年11月 | 12.1.0 | タスクウィンドウとレポートウィンドウのPin Plannerの説明を更新 。 |
2012年6月 | 12.0.0 | サーベイ・リンクを削除。 |
2011年11月 | 10.0.2 | テンプレートを更新。 |
2010年12月 | 10.0.1 | テンプレートを更新。 |
2010年7月 | 10.0.0 | すべてのデザイン制約方法をより広くカバーするために章を書き直しました。手順とユーザー・インターフェイスの詳細を削除し、Quartus IIヘルプへのリンクに置き換えました。 |
2009年11月 | 9.1.0 |
|
2009年3月 | 9.0.0 |
|
2008年11月 | 8.1.0 | ページサイズを8-1/2 x 11に変更。内容に変更なし。 |
2008年5月 | 8.0.0 | Quartus IIソフトウェア v7.0 のリビジョンおよび日付のみ更新。 |
2. インターフェイス・プランニング
Interface Plannerの機能
Interface Plannerは インテル® Quartus® Prime Fitterと動的に対話して、計画中に配置の合法性を正確に検証します。インタラクティブ・レポートを使用して、さまざまなフロアプランを評価し、繰り返しコンパイルすることなく、最適な実装を正確に計画できます。Fitter検証により、インターフェイス・プランと実際の実装結果との間の最高の相関が保証されます。最終的な実装で高い信頼性を維持しながら、インターフェイス・プランの制約をプロジェクトに適用できます。
Interface Plannerは、次のサポートを提供します。
- デザインプロセスの任意の段階で、法的なデザインペリフェラルフロアプランを計画します。
- クロック・ネットワーク・シナリオを分析および変更して、高ファンアウト信号の配置を指示します。
- Fitterを使用して、すべての配置の合法性を自動的に評価します。
- さまざまなフロアプラン・ファイルを保存して再読み込みします。
- GUIおよびTclコマンドライン操作。
2.1. インターフェイス計画の概要
インテル® FPGAには、コアデバイスとペリフェラル・デバイスの場所が含まれています。デバイスのコア・ロケーションは、アダプティブ・ルックアップ・テーブル(ALUT)、コア・フリップ・フロップ、RAM、およびデジタル・シグナル・プロセッサー(DSP)です。デバイスペリフェラルの場所には、I/Oエレメント、フェーズ・ロック・ループ(PLL)、クロックバッファー、ハード・プロセッサー・システム(HPS)が含まれます。
インテル® FPGAには、ハードPCI Express® IPコア、高速トランシーバー、ハード・メモリー・インターフェイス回路、エンベデッド・プロセッサーなど、デバイスペリフェラルに多くのシリコン機能が含まれています。これらのペリフェラル要素間の相互作用は複雑になる可能性があります。 Interface Plannerは、この複雑さを簡素化し、次のようなI/Oインターフェイスおよびペリフェラル要素をすばやく視覚化して配置できるようにします。
- I/Oエレメント
- SRAMインタフェース
- PLL
- クロック
- ハード・インターフェイスIPコア
- 高速トランシーバー
- ハード・メモリー・インターフェイスIPコア
- エンベデッド・プロセッサー
初期化後、 Interface Plannerはプロジェクトの論理階層、合成後のデザイン要素、およびフィッターが作成したデザイン要素を、ターゲットデバイスの場所のビューとともに表示します。 GUIは、フロアプランにデザイン要素を配置するためのさまざまな方法をサポートしています。フロアプランに要素を配置すると、フィッターは合法性をリアルタイムで検証し、最終的な実装との正確な相関を確認します。
2.2. Interface Plannerの使用
Flow制御の各ステップを実行すると、ダウンストリーム・コマンドと、Assignments、Plan 、およびReportsタブが使用可能になります。Interface Plannerは、フローの前提条件の手順を完了した後にのみコマンドを実行できます。
Initialize Interface Planner の後、計画を開始する前に行ったプロジェクトの割り当てを確認するよう求められます。Assignmentsタブでインポートしたプロジェクトの割り当てを無効またはイネーブルにして、競合を解決し、さまざまな実装を評価します。
プロジェクトの割り当てを使用してプランを更新すると、PlanタブのターゲットデバイスのChip ViewまたはPackage Viewにデザイン要素を配置する準備が整います。Planタブにデザイン要素を配置すると、Fitterは配置の合法性をリアルタイムで検証します。計画が完了して検証されたら、プロジェクトのアプリケーションのTclスクリプトとして制約をエクスポートします。
次のトピックでは、これらのインターフェイス計画フローの手順を詳細に説明します。
- ステップ1:プロジェクトのセットアップ
Interface Plannerには、入力として少なくとも部分的に完成した合成 インテル® Quartus® Primeプロジェクトが必要です。Interface Plannerを使用して、完全に完成した設計プロジェクトの配置を調整することもできます。 - ステップ2:Interface Plannerの初期化
初期化中Interface Planner合成スナップショットのコンパイルデータベースをロードし、View Assignmentsコマンドとプロジェクトの割り当てを調整するためのAssignmentsタブをイネーブルにします。 - ステップ3:プロジェクトの割り当てで計画の更新
Interface Plannerでペリフェラル計画の前に 、競合するインポートされたプロジェクトの割り当てを調整し、計画に保持する割り当てで計画を更新する必要があります。 - ステップ4:ペリフェラル機器の配置の計画
FlowコントロールのPlan Designをクリックして、IPコアおよびその他のデザイン要素をデバイスペリフェラルの合法的な場所にインタラクティブに配置します。Planタブには、ターゲット・デバイス・アーキテクチャーのグラフィカルな抽象化とともに、プロジェクトのデザイン要素のリストが表示されます。 - ステップ5:配置データを報告する
Interface Planner配置を生成して、接続レポートを使用して、セルを見つけ、デザイン内のインターフェイスおよび要素の配置について最適な決定を下すことができます。 - ステップ6:計画の制約の検証とエクスポート
生成されたTclスクリプトとしてプロジェクトに計画制約をエクスポートする前に、インターフェイス計画を検証する必要があります。検証では、スクリプトを生成する前に、Fitterが残りの未配置デザイン要素をすべて配置できることを確認する必要があります。
2.2.1. ステップ1:プロジェクトのセットアップ
-
デザインに対して少なくとも次の手順を実行します。
- 既知のデバイス・ペリフェラル・インターフェイスを完全に定義します。
- すべての既知のインターフェイスIPコアをインスタンス化します。
- すべての汎用I/Oを宣言します。
- すべての汎用I/OのI/O規格、電圧、駆動強度、およびスルーレートを定義します。
- コアクロッキングを定義します(オプション、ただし推奨)。
- ペリフェラルIPのすべてのインターフェイスを仮想ピンまたはテストロジックに接続します。この手法により、シェルデザインのインターフェイスにループバックが作成され、合成の最適化後もペリフェラルインターフェイスが維持されるようになります。
- デザインを合成するには、Processing > Start > Start Analysis & Synthesisをクリックします。Interface Plannerを実行する前に少なくともAnalysis&Synthesisを実行する必要があります。
2.2.2. ステップ2:Interface Plannerの初期化
- Tools > Interface Planner をクリックします。Interface Plannerが開き、Homeタブが表示されます。
-
Flowコントロールで、Initialize Interface Planner
をクリックします。初期化後、Fitter は、変更を加えるときにインターフェイス・プランを動的に検証します。
図 11. Interface Planner Homeタブ
2.2.3. ステップ3:プロジェクトの割り当てで計画の更新
- Flowコントロールで、View Assignmentsをクリックします。
- Assignmentsタブで、プロジェクト割り当ての特定のグループまたはグループをイネーブルまたはディセーブルして、競合を解決したり、異なる設定で実験したりします。割り当ての名前またはステータスで割り当てのリストをフィルタリングできます。
-
すべての競合を解決した後、FlowコントロールのUpdate
Planをクリックして、イネーブルされたプロジェクトの割り当てをインターフェイス・プランに適用します。
図 12. Interface Planner (Assignments Tab)
2.2.4. ステップ4:ペリフェラル機器の配置の計画
効率を高めるため、Interface Plannerで次の順序でデザイン要素を配置します。
- 特定のロケーション要件がわかっているPLLなどのすべてのI/Oピンまたはエレメントを配置します。
- 既知のすべてのペリフェラルのインターフェイスIPを配置します。
- (オプション)配置されていない残りのセルをすべて配置します。
Interface Plannerフロアプランにデザイン要素を配置するには、次のコントロールを使用します。
- Design Elementリストに配置するデザイン要素を見つけます。名前、IP、配置ステータス、I/O、およびその他の基準でリストを検索およびフィルタリングできます。
- デザイン要素のカラーコーディング定義をカスタマイズするには、Highlightカラムをクリックします。 図 13. Interface Planner (Planタブ)
- 次のいずれかの方法を使用して、フロアプランにデザイン要素を配置します。
- Design Elementsリストから要素をドラッグし、ChipまたはPackageビューで使用可能なデバイスリソースにドロップします。 Ctrlキーを押しながらクリックして、ChipまたはPackageビューをドラッグアンドパンします。Interface Plannerが有効な位置を計算するため、ドラッグ中にわずかな遅延が発生する場合があります。
- Interface Plannerrが未配置のデザイン要素を有効な場所に配置できるようにするには、右クリックしてAutoplace Selectedを選択します。 すべての未配置クロックにAutoplace Selectedを使用する必要があります。
- Design Elementsの横にある
ボタンをクリックして、Legal Locationsのリストを表示します。 リスト内の有効な場所をクリックして、フロアプラン内の場所を強調表示します。 リスト内の任意の場所をダブルクリックして、その場所に要素を配置します。
図 14. Legal Locations法的場所のリスト - プランを変更しても前後に進むには、UndoボタンとRedoボタンをクリックします。
- デザインの接続を視覚化してトラバースするには(たとえば、PLLの基準クロックピンと駆動されたデスティネーションセルを表示するには)、デザイン要素を選択してLink Infoタブをクリックします。BackタンとForwardボタンをクリックして、デザインの接続性をトラバースします。
- Fitterが好む配置場所を示すレポートを生成するには、デザイン要素を選択してReport Placeability of Selected Elementをクリックします。
2.2.4.1. クロック・ネットワークのプラン
Interface Plannerはデバイスの低スキュー・ルーティング・ネットワーク(クロック・ネットワーク)を使用して信号の詳細を示すクロックレポートを生成します。
デザインのクロック要素を特定して配置するには、PlanタブでClockingィルターをクリックします。 Design Element Filterに検索テキストを入力して、リストをさらに絞り込むことができます。Interface Plannerは、次のクロック・ネットワーク要素のグループとしてクロック・ネットワークを表します。
- クロックソース
- クロック・マルチプレクサー
- クロック領域
クロックグループ全体または個々のクロックエレメントを配置するには、その場所にドラッグするか、Report Legal Locations of Selected ElementまたはAutoplace Selectedコマンドを使用します。 配置後、Design Elementリスト内のアイテムにカーソルを合わせて配置を強調表示します。 クロックエレメントの配置は、依存するコアおよび周辺エレメントの配置に影響します。
クロックデザイン要素のクロックタイプを編集できます。クロックタイプは、依存するコアおよびペリフェラル・エレメントの配置に影響します。クロック要素を右クリックして、次のクロックタイプのいずれかを指定します。
- Not Set
- Locally Routed
- Global
- Large Periphery
- Periphery
- Regional
2.2.4.2. フロアプランの保存と読み込み
- Interface Plannerフロアプランを保存するには、File > Save Floorplanをクリックし、ファイル名を指定します。
- Interface Plannerフロアプランをロードするには、File > Load Floorplanをクリックし、 .planファイルを参照します。
2.2.5. ステップ5:配置データを報告する
- Flowコントロールで、View Reportsをクリックします。レポートのリストがTasksペインに表示されます。
- Tasksペインで任意のレポート名をダブルクリックして、Table of Contentsペインでレポートを生成します。
-
レポートでデザイン要素を選択し、 PlaceおよびUnplaceをクリックするか、選択した要素または場所に関する詳細データをレポートします。
図 17. Reportsタブ
2.2.6. ステップ6:計画の制約の検証とエクスポート
- Flow制御で、Validate Planをクリックします。フィッターは、残りのすべての未配置デザイン要素の配置を確認します。制約をエクスポートする前に、エラーを修正する必要があります。
- 検証後、Export Constraintsをクリックして、プロジェクトに計画を適用するTclスクリプトを生成します。出力Tclファイルには、インターフェイス・プランを インテル® Quartus® Primeプロジェクトに適用するための指示が含まれています。
- Interface Plannerを閉じます。
- インテル® Quartus® Primeプロジェクトでエクスポートされたインターフェイス・プラン制約を適用するにはTools > Tcl Scriptsをクリックして、 <project name>.pdp_assignments.tclスクリプトファイルを選択します。
-
Runをクリックします。スクリプトが実行され、Interface Planner制約がプロジェクトに適用されます。または、プロジェクトディレクトリからスクリプトを実行できます。
quartus_sh –t <assignments_file>.tcl
- 合成を実行し、プロジェクト内のインターフェイス計画を適用するにはStart > Start Analysis & Synthesisをクリックします。
- Compilation Reportを確認して、計画の実施を確認します。
2.3. Interface Plannerユーザー・インターフェイス・コントロール
- フロー制御
Flow制御パネルは、Interface Planner内のどこからでも一般的なInterface Plannerコマンドへの即時アクセスを提供します。 - Homeタブのコントロール
Interface Planner Homeタブには、Interface Plannerでプロジェクトを開くためのコントロールが含まれています 。 - Assignmentsタブのコントロール
Assignmentsタブには、プロジェクトの割り当てとの潜在的な競合を解決するためのコントロールが含まれています。 - Planタブのコントロール
Planタブには、インターフェイス・プランのロジックを見つけて配置するのに役立つ次のコントロールが含まれています。 - Reportsタブのコントロール
Interface Planner Reportsタブには、データのフィルタリングとエンティティーと場所の検索に役立つ次のTaskペインのコントロールが含まれています。
2.3.1. フロー制御
コマンド | 説明 |
---|---|
Open Project | Interface Plannerで インテル® Quartus® Primeプロジェクトを選択して開くことができます。Open Projectコマンドの使用は、Interface Plannerをスタンドアロン・モードで使用する場合にのみ必要です。 |
Initialize Interface Planner | 合成ネットリストを読み込み、Fitter検証エンジンを起動し、 インテル® Quartus® Primeプロジェクトから割り当てをインポートします。 |
View Assignments | Assignmentsタブを開きます。このタブでは、競合する割り当てを確認および調整できます。 Interface Plannerプロジェクトからインポートします。特定のプロジェクトの割り当てをイネーブルまたはディセーブルして、競合を解決します。 |
Update Plane | イネーブルなプロジェクトの割り当てをインターフェイス・プランに適用します。計画を更新するまで、Planタブでペリフェラル計画を実行することはできません。 |
Plan Design | インターフェイス・プランにロジックを配置するためのPlanタブを開きます。 |
Export Constraints | プロジェクトの後続のアプリケーションのために、インターフェイス・プランをTclスクリプトファイルとして保存します。このコマンドは、Validate Planを正常に実行した後にのみ使用できます。 |
Validate Plane | インターフェイス・プランのすべての制約が、残りのすべての未配置デザイン要素の配置と互換性があることを確認します。その後、報告された検証エラーのソースを直接見つけて解決できます。 Write Plan Fileを実行する前に、プランを正常に検証する必要があります。 |
View Reports | データをフィルタリングし、エンティティーと場所を見つけるためのReportsタブを開きます。 |
2.3.2. Homeタブのコントロール
コマンド | 説明 |
---|---|
最近のプロジェクト | インテル® Quartus® Primeプロジェクトが最近開いたものにすばやくアクセスできます。名前付きタイルは各プロジェクトを表します。タイルをクリックして、プロジェクトのDetailsを表示します。タイルをダブルクリックして、Interface Plannerをプロジェクトを開きます 。 |
ブラウズ | インテル® Quartus® PrimeでのInterface Plannerプロジェクトを見つけて開くことができます 。 Interface Plannerは、操作のプロジェクトの合成ネットリストが必要です。 |
説明 | インテル® Quartus® Primeプロジェクトのファイルパス、リビジョン、作成日などのプロジェクトとファイルの詳細を提供します。特定のプロジェクトリビジョンを選択できます。 |
2.3.3. Assignmentsタブのコントロール
潜在的な競合をすべて解決するまで、特定の割り当てまたはクラスの割り当てをイネーブルまたは無効にすることができます。すべてのプロジェクト割り当てのステータスに満足したら、Update Planをクリックして、イネーブルなプロジェクト割り当てでインターフェイス・プランを更新します。Interface Plannerは、残りの割り当ての競合についてエラーを報告します。
コマンド | 説明 |
---|---|
Filterフィールド | 割り当てターゲットのワイルドカード式の作成をサポートします。EnabledボタンとDisabledボタンは、リスト内のイネーブルな割り当てまたは無効な割り当てのみをフィルタリングします。 |
Enable All Projects Assignments | インターフェイス・プランでインポートされたすべてのプロジェクト割り当てをイネーブルします。 |
Disable All Project Assignments | 計画内のインポートされたすべてのプロジェクト割り当てをディセーブルします。 |
Clear | Assignmentsリストからフィルターをクリアします。 |
2.3.4. Planタブのコントロール
インターフェイス・プランでの配置または配置解除は、生成されたInterface Planner制約スクリプトをプロジェクトに追加するまで、プロジェクトの インテル® Quartus® Primeには適用されません。
コマンド | 説明 |
---|---|
![]() |
配置のための正当な場所をリストします。 |
Locate Node | 選択したデザイン要素が階層データベースで参照されている インテル® Quartus® Primeプロ・エディションツールのリストを表示します。Design Elementsリストの特定の要素に対してLocate Nodeコマンドが無効になっている場合、その要素はデザイン内の要素として表されていないためです。 |
Autoplace All | 配置されていないすべてのデザイン要素をインターフェイス・プランのイネーブルな位置に配置しようとします。 |
Autoplace Fixed | イネーブルな場所が1つしかない未配置のデザイン要素をすべてインターフェイス・プランに配置しようとします。 |
Unplace All | インターフェイス・プランに配置されたすべてのデザイン要素を配置解除します。 |
Right-click > Auto-place selected element | 選択したデザイン要素とそのすべての子を、インターフェイス・プランのイネーブルな場所に配置しようとします。 |
Chip View | ターゲット・デバイス・チップを表示します。ズームインしてチップの詳細を表示します。 |
Package View | ターゲット・デバイス・パッケージを表示します。ズームインしてチップの詳細を表示します。 |
Show I/O Banks | PlanタブでI/Oバンクを選択して色分けします。 |
Show Differential Pin Pair Connections | 一対の差動ピン間の赤い接続線を表示します。パッケージビューでは、正と負のピンにそれぞれ文字pとnのラベルが付けられます。 |
Show PCIe Hard IP Interface Pins | PlanタブでPCIeハードIPインターフェイスピンを選択して色分けします。このコマンドにアクセスするには、Planタブのパッケージビューで右クリックし、x1 Lanes 、x2 Lanes、x4 Lanes、x8 Lanes 、または16 Lanesを選択します。イネーブルにした後、 Color Legendで色分けを表示します。 |
Show DQ/DQS Pins | PlanタブでPCIeハードIPインターフェイスピンを選択して色分けします。このコマンドにアクセスするには、Planタブのパッケージビューで右クリックし、x4 Mode、x8/x9 Mode、x16/x16 Mode 、またはx32/x36 Modeを選択します。イネーブルにした後、Color Legendで色分けを表示します。 |
Right-click > Report Placeability of Selected Element | Reportsタブに詳細情報を表示し、選択したセルのインターフェイス・プラン内のイネーブルな場所をフィッティングに適している順に表示します。 |
Copy Current View | 現在のインターフェイス・プランをクリップボードにコピーして、ワードプロセッサやプレゼンテーションファイルなどの他のファイルに貼り付けます。 |
Reset Plan | 配置されたすべてのデザイン要素を配置解除し、適用されたプロジェクト割り当てをインターフェイス・プランから削除します。すべてのプロジェクトの割り当てをイネーブルな状態にリセットします。その後、デザイン要素を配置する前にUpdate Planを実行する必要があります。このコマンドはインターフェイス・プランにのみ適用され、Interface Plannerスクリプトを適用するまで インテル® Quartus® Primeプロジェクトの割り当てには影響しません。 |
Load Floorplan | Interface Planner Floorplan Format(.plan)ファイルを選択してロードできます。Save Floorplanをクリックして、Interface Plannerフロアプラン・ファイルを形式で保存できます。 |
Save Floorplan | Interface Plannerフロアプランを.planファイルとして保存できます。 |
Undo/Redoボタン | Undoボタンは、Planタブで行った最後の変更を元に戻します。Redoは最後の取り消しを再実装します。これらのコマンドを使用して、プランを変更しても前後にステップします。 |

2.3.5. Reportsタブのコントロール
コマンド | 説明 |
---|---|
Create all Summary Reports | 次の要約レポートを作成します。
|
Report All Placed/Unplaced Pins | インターフェイスプラン内のすべての配置済み(Report All Placed Pins)または未配置(Report All Unplaced Pins)ピンの名前、親(存在する場合)、およびタイプをそれぞれ報告します。Placed Pinsレポートには、配置場所の名前が含まれます。Unplaced Pinsレポートには、潜在的な配置場所の数が含まれます。任意のセルを右クリックして、接続性または位置情報を配置、配置解除、またはレポートします。 |
Report All Placed/Unplaced HSSI Channels | インターフェイス・プラン内のすべての配置済み(Report All Placed HSSI Channels)または未配置(Report All Unplaced HSSI Channels)チャンネルの名前、親(存在する場合)、およびタイプをそれぞれ報告します。Placed HSSI Channelsレポートには、配置場所の名前が含まれます。未配置HSSIチャネルレポートには、潜在的な配置場所の数が含まれます。任意のセルを右クリックして、接続性または位置情報を配置、配置解除、またはレポートします。 |
右クリック > Report Placed/Unplaced Periphery Cells of Selected Type | 選択したタイプに一致する配置済み(Report Placed Periphery Cells of Selected Type)または未配置(Report Unplaced Periphery Cells of Selected Type)セルの名前、親(ある場合)、およびタイプを報告します。配置されたセルのレポートには、配置場所の名前が含まれます。未配置セルレポートには、配置可能な場所の数が含まれます。任意のセルを右クリックして、接続性または位置情報を配置、配置解除、またはレポートします。 |
右クリック > Report Periphery Locations of Selected Type | 選択したタイプのデバイス内のすべての場所、およびその場所がマージをサポートしているかどうかを報告します。 |
右クリック > Report Periphery Cell Connectivity | 選択したセルへの接続の送信元ポートとタイプ、宛先ポートとタイプを報告します。セルを右クリックして、個々のセルの接続性を報告します。 |
右クリック > Place/Unplace Cell | インターフェイス・プランの選択した場所にセルを配置します。同様に、任意のセルを右クリックし、Place Cell of Selected TypeまたはUnplace Cell of Selected Typeをクリックして、同じタイプの複数のセルを配置または配置解除できます。 |
右クリック > Report Cell Locations for Custom Placement | Legal Locationレポートで、インターフェイス・プランで選択したセルの優先法的場所を報告します。右クリックして、セルを場所にすぐに配置するか、選択したタイプのすべてのペリフェラルの場所を報告します。 |
Remove Invalid Reports | インターフェイス・プランの変更により無効にした古いInterface Plannerレポートを削除します。 |
Report Instance Assignments | インターフェイス・プランにインポートされたすべてのプロジェクト割り当てを表示します。これらの割り当てを計画から削除できます。 |
2.4. Interface Planner レポート
- Report Summary
ReportsタブのCreate all Summary Reportsをクリックして、インターフェイス・プランの周辺セルに関する概要レポートを生成します。 - Report Pins
デザインのI/Oピンに関するレポートを生成します。 - Report HSSI Channels
インターフェイス・プランでHSSIチャネルに関するレポートを生成します。 - Report Clocks
計画内のクロック・ネットワークを示すレポートを生成します。 - Report Periphery Locations
インターフェイス・プランのペリフェラル・セルのステータスを示すレポートを生成します。 - Report Cell Connectivity
インターフェイス・プランのすべてのセル間の接続を示すレポートを生成します。 - Report Instance Assignments
Report Instance Assignmentsをクリックして、インポートされたすべてのプロジェクト割り当てをインターフェイス・プランに表示します。
2.4.1. Report Summary
コマンド | 説明 |
---|---|
Create all Summary Reports | 次の要約レポートを作成します。
|
2.4.2. Report Pins
コマンド | 説明 |
---|---|
Report All Placed Pins | 配置済みピンレポートを生成します。このレポートには、インターフェイス・プランに配置されたすべてのピンの名前、親、タイプ、および場所がリストされます。 |
Report All Unplaced Pins | 未配置ピンレポートを生成します。このレポートには、インターフェイス・プランのすべての未配置ピンの名前、親、タイプ、および潜在的な配置の数がリストされます。 |
2.4.3. Report HSSI Channels
コマンド | 説明 |
---|---|
Report All Placed HSSI Channels | 配置済みHSSIチャネルレポートを生成します。このレポートには、インターフェイス・プランに配置されたすべてのHSSI RX/TXチャネルの名前、親、タイプ、および場所がリストされます。 |
Report All Unplaced HSSI Channels | 未配置HSSIチャネルレポートを生成します。このレポートには、インターフェイス・プラン内のすべての未配置HSSI RX/TXチャネルの名前、親、タイプ、および場所がリストされます。 |
2.4.4. Report Clocks
コマンド | 説明 |
---|---|
Report Clocks | グローバルおよびその他の高速信号レポートを生成します。 |
2.4.5. Report Periphery Locations
コマンド | 説明 |
---|---|
右クリック > Report Placed Periphery Cells of Selected Type | All Periphery Cellsレポートからアクセスできます。このコマンドは、選択したタイプに一致する選択した配置されたペリフェラル・セルの名前、親(存在する場合)、タイプ、および場所を報告します。任意のセルを右クリックして、接続性または位置情報を配置、配置解除、またはレポートします。 |
右クリック > Report Unplaced Periphery Cells of Selected Type | All Periphery Cellsレポートからアクセスできます。このコマンドは、選択したタイプに一致する選択した配置されていないペリフェラル・セルの適切な場所の名前、親(ある場合)、タイプ、および数を報告します。任意のセルを右クリックして、接続性または位置情報を配置、配置解除、またはレポートします。 |
右クリック > Report Periphery Locations of Selected Type | 選択したタイプのデバイス内のすべての場所、およびその場所がマージをサポートしているかどうかを報告します。 |
2.4.6. Report Cell Connectivity
コマンド | 説明 |
---|---|
右クリック > Report Periphery Cell Connectivity | レポート内の任意のCell Nameを右クリックして、Report Periphery Cell Connectivityをレポートします 。レポートには、選択したセルへの送信元ポートと宛先ポート、および接続のタイプがリストされます。任意のセルを右クリックして、セルへのすべての接続を報告します。 |
2.4.7. Report Instance Assignments
コマンド | 説明 |
---|---|
Report Instance Assignments | デザインでイネーブルになっているすべてのインスタンス割り当てを報告します。セルを右クリックして、割り当てを削除するか、同じタイプのすべての割り当てを削除します。 |
2.5. インターフェイス・プランニングの改訂履歴
ドキュメント・バージョン | インテルlQuartus Prime | 変更内容 |
---|---|---|
2019.04.01 | 19.1.0 |
|
2018.05.07 | 18.0.0 |
|
2017.11.06 | 17.1.0 |
|
2016.10.31 | 16.1.0 |
|
2016.05.03 | 16.0.0 |
|
2015.11.02 | 15.1.0 |
|
2015.05.04 | 15.0.0 | Molsonに関するドキュメントの2番目のベータリリース。
次の主題に関する情報を追加。
|
2014.12.15 | 14.1. | Molsonに関するドキュメントの最初のベータリリース。 |
3. デバイスI/Oピンの管理
この章では、ターゲットデバイスのI/Oピンの効率的な計画と割り当てについて説明します。 設計段階の早い段階で、I / O規格、ピン配置ルール、およびPCB特性を考慮してください。
I/Oプランニング・タスク |
アクセスする方法 |
---|---|
インターフェイスとデバイスのペリフェラルをプランニングする | Tools > Interface Planner |
ピン割り当ての編集、検証、またはエクスポート |
Assignments > Pin Planner |
特別なピン割り当て機能の詳細については、 インテル® Arria® 10 SoCデバイスについては、 インテル® Arria® 10ハード・プロセッサー・システムのテクニカル・リファレンス・マニュアルでのHPSコンポーネントのインスタンス化を参照してください。
3.1. I/O Planning Overview
デザインファイルを定義する前でも、I/Oピンを計画できます。インターフェイスIPコア信号を含む、デザインファイルでまだ定義されていない予想されるノードを割り当ててから、最上位ファイルを生成します。最上位ファイルは、デザイン階層の次のレベルをインスタンス化し、メモリ、高速I/O、デバイス・コンフィグレーション、デバッグツールなどのインターフェイスポート情報を含みます。
デザインエレメント、I/O規格、インターフェイスIP、およびその他のプロパティーを、名前またはセルにドラッグしてデバイスI/Oピンに割り当てます。その後、I/O検証用の最上位デザインファイルを生成できます。
I/O割り当て検証を使用して、VCCIO、VREF、エレクトロマイグレーション(電流密度)、同時スイッチング出力(SSO)、ドライブ強度、I/O規格、PCI_IOクランプダイオード、およびI/Oピン方向の互換性に対してI/Oピンを完全に分析しますルール。
インテル® Quartus® Primeソフトウェアは、デバイスI/Oピンロジックとプロパティーを表示、割り当て、検証するためのPin Plannerツールを提供します。または、I/O割り当てをTclスクリプトに入力するか、HDLコードに直接入力できます。
3.1.1. 基本的なI/O計画フロー
- Assignments > Deviceをクリックし、ロジック、パフォーマンス、およびI/O要件を満たすターゲットデバイスを選択します。 I/O規格、電圧と電源の要件、および利用可能なI/Oピンを考慮して指定します。
- Assignments > Pin Plannerをクリックします。
- ロジックの割り当て、I/O規格、出力負荷、スルーレート、電流強度など、デバイスとPCBの特性に合わせてI/Oプロパティーを割り当てます。
- TasksペインのRun I/O Assignment Analysisをクリックして、割り当てを検証し、合成されたデザインネットリストを生成します。報告された問題を修正します。
- Processing Processing > Start Compilationをクリックします。コンパイル中に、 インテル® Quartus® PrimeソフトウェアがI/O割り当て分析を実行します。
3.1.2. PCBデザインツールの統合
インテル® Quartus® Primeソフトウェアは、 インテル® Quartus® Prime設定ファイル( .qsf )、Pin-Out File( .pin )、およびFPGA Xchange-Format File( .fx )ファイルでのピン割り当て情報のインポートとエクスポートを可能にすることにより、ボードレイアウトツールと統合します。
ツール統合 |
サポートされているEDAツール |
---|---|
Pin PlannerでI/O割り当てを定義および検証し、検証のために割り当てをPCBツールにエクスポートします。 |
Mentor Graphics* I/Oデザイナー Cadence Allegro |
PCBツールでI/O割り当てを定義し、検証のために割り当てをPin Plannerにインポートします |
Mentor Graphics* I/Oデザイナー Cadence Allegro |
3.1.3. インテルデバイス規約
次の用語はインテルデバイスおよびI/O構造を説明します。
3.2. HPS I/Oピン
Pin PlannerでI/Oピンを割り当てるには、次の手順を実行します。
- インテル® Quartus® Primeプロジェクトを開き、Assignments > Pin Plannerをクリックします。
- Processing > Start Analysis & Elaborationをクリックして、デザインを詳述し、デバイスビューにAll Pinsを表示します。
- 割り当てのためのピンを見つけたりハイライトするには、TasksペインでHighlight Pinsの下にPin Finderやピンタイプをクリックしてください。
- (オプション)割り当て用のノードのカスタムグループを定義するには、GroupsまたはAll Pinsリストで1つ以上のノードを選択しCreate Groupをクリックします。
- All Pinsスプレッドシートで、またはパッケージビューにドラッグして、デバイスI/Oピンのロジック、I/O規格、インターフェイスIP、およびプロパティーの割り当てを入力します。
- プロパティーを差動ピンペアに割り当てるには、Show Differential Pin Pair Connectionsをクリックします。赤(p)と負(n)の差動ピンの間に赤い接続線が表示されます。
-
(オプション)ボードトレースモデルの割り当てを作成するには:
- 出力または双方向ピンを右クリックして、Board Trace Modelをクリックします。差動I/O規格の場合、ボード・トレース・モデルは、2つの対称的なボード・トレース・モデルと差動ピンペアを使用します。
- 差動ピンペアのプラス側のボード・トレース・パラメーターを指定します。この割り当ては、差動ピンペアのマイナス側の対応する値に適用されます。
- 完全なI/O割り当て分析を実行するには 、 Run I/O Assignment Analysisをクリックします。フィッターは分析結果を報告します。デザイン合成の前に、予約されたピンのみが解析されます。
3.2.1. 排他的なピングループへの割り当て
ピンのグループを排他的な割り当てに指定できます。ピンをExclusive I/O Groupに割り当てると、フィッターは他の排他的I/Oグループと同じI/Oバンクに信号を配置しません。たとえば、 group_aに排他的に割り当てられた信号セットとgroup_bに割り当てられた別の信号セットがある場合、Fitterは各グループを異なるI/Oバンクに確実に配置します。
3.2.2. スルーレートとドライブ強度の割り当て
デバイスのピンスルーレートとドライブ強度を指定できます。これらのプロパティーは、ピンの発信信号の整合性に影響します。 Slew RateまたはSlow Slew Rate の割り当てを使用して、Current Strengthの割り当てでピンの駆動強度を調整します。
3.2.3. 仮想ピンの割り当て
デザインでシングルエンドの最上位ピンに差動I/O規格を割り当てると、ピンプランナーは自動的に負のピンを差動ピンペアの割り当ての一部として認識し、負のピンを作成します。 インテル® Quartus® Primeソフトウェアは、負のピンの位置の割り当てを.qsfに書き込みます。ただし、差動ペアの負のピンの.qsfにはI/O規格の割り当ては追加されません。
次の例は、差動I/O規格を割り当てるトップ・レベル・ピンlvds_inを含むデザインを示しています。ピンプランナーは、差動ピンlvds_in(n)を自動的に作成して、差動ピンペアを完成させます。

特定のI/Oバンクで使用可能なピンを超える大きなバスがデザインに含まれている場合、エッジロケーション割り当てを使用してバスを配置できます。エッジロケーションの割り当ては、エッジの近くで互いに近接しているため、大型バスの回路基板ルーティング機能を向上させます。次の図は、インテルデバイスパッケージのエッジを示しています。
3.2.3.1. 差動ピンでのI/O配置ルールのオーバーライド
I/O配置ルールは、ノイズの多い信号が隣接する信号を破損しないようにします。各デバイスファミリーには、定義済みのI/O配置ルールがあります。
I/O配置ルールは、たとえば、差動ピンに対するシングルエンドI/Oの配置、または電圧基準入力規格を使用する場合にVREFグループ内に配置できる出力ピンと双方向ピンの数を定義します。
IO_MAXIMUM_TOGGLE_RATE割り当てを使用して、通常のデザインアクティビティ中に切り替わらないシステムリセットピンなど、ピンのI/O配置ルールをオーバーライドします。この割り当てに0 MHzの値を設定すると、フィッターはデバイスの動作中にDC状態のピンを認識します。フィッターは、割り当てられたピンを配置ルール分析から除外します。0 MHzのIO_MAXIMUM_TOGGLE_RATEをアクティブなスイッチングピンに割り当てないでください。割り当てた場合、デザインが意図したとおりに機能しない可能性があります。
3.2.4. Tclコマンドを使用したピン割り当ての入力
Tclコンソールに個別のTclコマンドを入力するか、.tclスクリプトを作成してコマンドラインに次のように入力することにより、Tclスクリプトでピン割り当てを適用できます。
Tclスクリプト割り当ての適用
quartus_sh -t <my_tcl_script>.tcl
EPM240Gのピン・アサインメント
次の例では、set_location_assignmentおよびset_instance_assignment Tclコマンドを使用して、特定の場所、I/O規格、およびドライブ強度にピンを割り当てます。
set_location_assignment PIN M20 -to address[10] set_instance_assignment -name IO_STANDARD "2.5 V" -to address[10] set_instance_assignment -name CURRENT_STRENGTH_NEW "MAXIMUM CURRENT" -to address[10]
3.2.5. HDLコードでのピン割り当ての入力
合成属性または低レベルI/Oプリミティブを使用して、HDLコードにI/Oピン割り当てを直接埋め込むことができます。 HDLコードを分析および合成すると、情報は適切なI/Oピン割り当てに変換されます。次のいずれかの方法を使用して、HDLコードでピン関連の割り当てを指定できます。
- トップレベルのピンである信号名に合成属性を割り当てる
- ALT_BUF_INなどの低レベルI/Oプリミティブを使用して、入力、出力、および差動バッファーを指定し、パラメーターまたは属性を設定する
3.2.5.1. 低レベルI/Oプリミティブの使用
または、低レベルI/Oプリミティブを使用してI/Oピンの割り当てを入力できます。ピンの位置、I/O規格、ドライブ強度、スルーレート、およびオンチップ終端(OCT)値の割り当てを割り当てることができます。低レベルの差動I/Oプリミティブを使用して、デザインのHDLコードで差動ペアの正と負の両方のピンを定義することもできます。
プリミティブベースの割り当ては、完全なコンパイルを実行してピン割り当て(Assignments > Back Annotate Assignments)をバック・アノテーションするまで、Pin Plannerに表示されません。
3.3. I/Oピン割り当てのインポートとエクスポート
インテル® Quartus® Primeソフトウェアは、プロジェクト間でのI/Oピン割り当ての転送、またはサードパーティのPCBツールでの分析をサポートします。 I/Oピンの割り当ては、次の方法でインポートまたはエクスポートできます。
アサインメントのインポート |
アサインメントのエクスポート |
|
---|---|---|
シナリオ: |
|
|
コマンド |
Assignments > Import Assignments |
Assignmentsト > Export Assignments |
ファイル・フォーマット |
.qsf, .esf, .acf, .csv, .txt,.sdc |
.pin,.fx,.csv, .tcl, .qsf |
説明 |
N/A |
エクスポートされた.csvファイルは、列と行の順序と形式を保持します。.csvファイルをインポートする場合、列見出しの行を変更しないでください。 |
3.3.1. PCBツールのインポートとエクスポート
ピンプランナーは、PCBツールを使用した割り当てのインポートとエクスポートをサポートしています。イネーブルな割り当てを.pinファイルとしてエクスポートして、サポートされている他のPCBツールで分析できます。サポートされているPCBツールから最適化された割り当てをインポートすることもできます。.pinファイルには、ピン名、番号、および詳細なプロパティーが含まれています。
Mentor Graphics* I/O Designerでは、割り当てを転送するために.fxファイルと.pinファイルの両方を生成およびインポートする必要があります。しかし インテル® Quartus® Primeソフトウェアは、I/O Designerからピン割り当てをインポートするために.fxのみを必要とします。
ファイル名 |
変更内容 |
---|---|
Pin Name/Usage |
デザインピンの名前、またはピンがGNDまたはVCCピンかどうか |
Location |
デバイスパッケージ上の場所のピン番号 |
Dir |
ピンの方向 |
I/O Standard |
ピンが構成されているI/O規格の名前 |
Voltage |
ピンに接続するために必要な電圧レベル |
I/O Bank |
ピンが属するI/Oバンク |
User Assignment |
YまたはNは、デザインピンの場所の割り当てがユーザー割り当て(Y)またはフィッターによって割り当てられたか(N)を示します。 |
3.3.2. 別のターゲットデバイスへの割り当ての移行
互換性のあるピン割り当てを1つのターゲットデバイスから別のターゲットデバイスに移行できます。異なる密度と同じデバイスパッケージに移行できます。また、密度とピン数が異なるデバイスパッケージ間で移行することもできます。
インテル® Quartus® Primeソフトウェアは無効な割り当てを無視し、コンパイル中にエラーメッセージを生成します。移行の互換性を評価した後、互換性のない割り当てを変更し、Exportをクリックして割り当てを別のプロジェクトにエクスポートします。

強調表示されたPIN_AC23のピン機能の移行結果は、ピンが移行デバイスのNCであっても、NCではなく電圧リファレンスVREFB1N2です。 VREF規格はNCよりも優先度が高いため、移行結果には電圧リファレンスが表示されます。デザインのポート接続にそのピンを使用しない場合でも、移行デバイスの実際のボードでそれを必要とするI/O規格にはVREF規格を使用する必要があります。
移行デバイスの1つにVCCまたはGNDへの接続用のピンがあり、これらの同じピンが移行パス内の異なるデバイスのI/Oピンである場合、 インテル® Quartus® Primeソフトウェアは、これらのピンがI/Oに使用されないようにします。これらのピンが正しいPCBプレーンに接続されていることを確認してください。
同じパッケージ内の2つのデバイス間で移行する場合、小さい方のダイに接続されていないピンは、大きい方のダイのVCCまたはGNDに接続するように意図されている場合があります。移行を容易にするために、元のデザインでこれらのピンをVCCまたはGNDに接続できます。これは、ピンが小さなダイに物理的に接続されていないためです。
3.4. EPM240Gのピン・アサインメント
インテル® Quartus® Primeソフトウェアは、ターゲットデバイスの定義済みI/Oルールに対してI/Oピン割り当てを検証します。次のツールを使用して、ピン・プランニング・プロセス全体でI/Oピンの割り当てを検証できます。
I/O検証ツール |
変更内容 |
Runをクリックします。 |
---|---|---|
I/Oタイミング |
コンパイル中のすべてのI/Oおよびタイミングチェックに対してI/O割り当てを完全に検証します。 |
処理 > Start Compilation |
3.4.1. I/O割り当て検証規則
I/O割り当て分析は、次のルールに照らして割り当てを検証します。
ルール | 変更内容 | HDL 要件 |
---|---|---|
I/O bank capacity |
I/Oバンクに割り当てられているピンの数に対して、I/Oバンクに割り当てられているピンの数をチェックします。 |
不要 |
I/O bank VCCIO voltage compatibility |
I/Oバンクに割り当てられたピンに必要なVCCIOが1つだけであることを確認します。 |
不要 |
I/O bank VREF voltage compatibility |
I/Oバンクに割り当てられたピンに必要なVREFが1つだけであることを確認します。 |
不要 |
I/O standard and location conflicts |
ピンの場所が割り当てられたI/O規格をサポートしているかどうかを確認します。 |
不要 |
I/O standard and signal direction conflicts |
ピンの位置が割り当てられたI/O規格と方向をサポートしているかどうかを確認します。たとえば、特定のピン位置の特定のI/O規格は、出力ピンのみをサポートできます。 |
不要 |
Differential I/O standards cannot have open drain turned on |
差動I/O規格のすべてのピンのオープンドレインがオフになっていることを確認します。 |
不要 |
I/O standard and drive strength conflicts |
ドライブ強度の割り当てがI/O規格の仕様内にあるかどうかを確認します。 |
不要 |
Drive strength and location conflicts |
ピンの位置が割り当てられたドライブ強度をサポートしているかどうかを確認します。 |
不要 |
BUSHOLD and location conflicts |
ピン位置がBUSHOLDをサポートしているかどうかを確認します。たとえば、専用のクロックピンはBUSHOLDをサポートしていません。 |
不要 |
WEAK_PULLUP and location conflicts |
ピンロケーションがWEAK_PULLUPをサポートしているかどうかを確認します(たとえば、専用クロックピンはWEAK_PULLUPをサポートしていません)。 |
不要 |
Electromigration check |
連続するパッドの結合されたドライブ強度が特定の制限を超えているかどうかをチェックします。 たとえば、 Stratix® IIデバイスの10個の連続パッドの合計電流ドライブは200 mAを超えることはできません。 |
不要 |
PCI_IO clamp diode, location, and I/O standard conflicts |
割り当てられたI/O規格とともにピンの位置がPCI_IOクランプダイオードをサポートしているかどうかを確認します。 |
不要 |
SERDES and I/O pin location compatibility check |
デザイン内のSERDESに接続されているすべてのピンが専用のSERDESピンロケーションに割り当てられていることを確認します。 |
必要 |
PLL and I/O pin location compatibility check |
PLLに接続されているピンが専用のPLLピン位置に割り当てられているかどうかを確認します。 |
必要 |
ルール | 変更内容 | HDL 要件 |
---|---|---|
I/O bank cannot have single-ended I/O when DPA exists |
DPAと同じI/OバンクにシングルエンドI/Oピンが存在しないことを確認します。 |
不要 |
A PLL I/O bank does not support both a single-ended I/O and a differential signal simultaneously |
差動信号が存在する場合、PLL I/OバンクにシングルエンドI/Oピンが存在しないことを確認します。 |
不要 |
シングルエンド入力は、差動I/O ピンから所定の距離だけ離れている必要があります。 |
シングルエンド入力ピンが差動I/O ピンから所定の距離だけ離れているかチェックします。 |
不要 |
Single-ended output must be a certain distance away from a VREF pad |
シングルエンド入力ピンが差動I/O ピンから所定の距離だけ離れているかチェックします。 |
不要 |
Single-ended input is required to be a certain distance away from a differential I/O pin |
シングルエンド入力ピンが差動I/O ピンから所定の距離だけ離れているかチェックします。 |
不要 |
Too many outputs or bidirectional pins in a VREFGROUP when a VREF is used |
VREFが使用されている場合、VREFGROUPに一定数以下の出力または双方向ピンがあることを確認します。 |
不要 |
Too many outputs in a VREFGROUP |
VREFGROUPに含まれる出力が多すぎるかどうかを確認します。 |
不要 |
3.4.2. I/Oアサインメントの解析
I/O割り当て分析は、I/Oシステムとボードレイアウトルールの完全なセットに対してI/O割り当てを検証します。完全なI/O割り当て解析は、PLL、LVDS、またはギガビット・トランシーバー・ブロックなどのリソースから直接供給されるか、供給されるブロックを検証します。さらに、チェッカーは適切なVREFピンの使用、ピンの位置、および許容される混合I/O規格の合法性を検証します。
初期のピンプランニング中にI/O割り当て解析を実行して、コンパイルの前に初期予約ピン割り当てを検証します。デザインファイルを定義したら、I/O割り当て解析を実行して、合成されたネットリストに関してより徹底的な合法性チェックを実行します。 I/O割り当てを変更するたびに、I/O割り当て分析を実行します。
フィッターはピンを割り当てて、制約に対応します。たとえば、エッジの位置をLVDSピンのグループに割り当てると、フィッターは指定されたエッジの位置の各LVDSピンにピンの位置を割り当ててから、合法性チェックを実行します。フィッター配置ピンを表示するには、ピンプランナーでShow Fitter Placementsをクリックします。これらの提案されたピン位置を受け入れるには、ピン割り当てをバックアノテーションする必要があります。
I/O割り当て警告レポートを表示して、すべての割り当て警告を表示および解決します。たとえば、一部のデザインピンのドライブ強度またはスルーレートが未定義であるという警告。フィッターは、未定義のシングルエンド出力および双方向ピンをキャリブレーションされていないOCTとして認識します。警告を解決するには、報告されたピンにCurrent Strength 、 Slew RateまたはSlow Slew Rateを割り当てます。または、 Terminationをピンに割り当てることができます。ピンにOCTが割り当てられている場合、ドライブ強度またはスルーレート設定を割り当てることはできません。
3.4.2.1. デザインファイルを使用しない早期I/O割り当て解析
HDLデザインファイルを定義する前に、基本的なI/O合法性チェックを実行できます。この手法により、予備的なボードレイアウトが作成されます。たとえば、ターゲットデバイスを指定し、PCB特性に対応するピン割り当てを入力できます。 I/O規格を予約して各ピンに割り当ててから、I/O割り当て解析を実行して、各I/OバンクでI/O規格の競合がないことを確認できます。
I/Oピンとして使用する予定のすべてのピンを予約して、フィッターが各ピンのタイプを判別できるようにする必要があります。 I/O割り当て分析を実行した後、Fitterによって報告されたエラーを修正し、すべてのエラーが修正されるまでI/O割り当て分析を再実行します。完全なI/O割り当て解析には、すべてのデザインファイルが必要です。
3.4.2.2. デザインファイルを使用したI/O割り当て分析
I/O割り当て分析を使用すると、HDLデザインファイルを完全に定義した後、完全なI/O合法性チェックを実行できます。完全なデザインでI/O割り当て解析を実行すると、ツールはすべてのI/Oルールに対してすべてのI/Oピン割り当てを検証します。部分的なデザインでI/O割り当て分析を実行すると、ツールはデザインの定義された部分についてのみ合法性をチェックします。次の図は、デザインファイルを使用してピン配置を分析するためのワークフローを示しています。
I/O割り当て解析で不完全なデザインファイルが渡された場合でも、完全なコンパイル中にエラーが発生する可能性があります。たとえば、専用のクロックピンに割り当てる代わりに、ユーザーI/Oピンにクロックを割り当てたり、デザインでまだインスタンス化していないPLLを駆動するようにクロックをデザインしたりできます。この問題は、I/O割り当て解析がピンが駆動するロジックを考慮せず、専用クロック入力のみがPLLクロックポートを駆動できることを検証しないために発生します。
より良いカバレッジを得るには、時間の経過とともに可能な限り多くのデザイン、特にピンに接続するロジックを分析します。たとえば、デザインにPLLまたはLVDSブロックが含まれる場合、完全な解析の前にこれらのファイルを定義します。 I/O割り当て分析を実行した後、Fitterによって報告されたエラーを修正し、すべてのエラーが修正されるまでI/O割り当て分析を再実行します。
次の図は、完全なコンパイルを実行する前にI/O割り当て分析を実行することによるコンパイル時間の利点を示しています。
3.4.2.3. デフォルトのI/Oピン分析のオーバーライド
ピンのデフォルトのI/O解析をオーバーライドして、VREFや非アクティブなピンの解析など、I/Oルールの例外に対応できます。
各デバイスにはVREFピンが含まれており、それぞれが1つ以上のI/Oピンをサポートしています。 VREFピンとそのI/OピンはVREFバンクを構成します。 VREFピンには、通常、HSTLタイプやSSTLタイプのI/O規格などのVREF I/O規格の入力が割り当てられます。逆に、VREF出力にはVREFピンは不要です。 VREFバンクに電圧基準入力が存在する場合、特定の数の出力のみがそのVREFバンクに存在できます。 I/O割り当て解析は、異なる出力イネーブルによって制御される双方向信号を独立した出力イネーブルとして扱います。
Output Enable Groupオプションを双方向信号に割り当て、信号を単一の出力イネーブル化グループとして分析するには、次の手順に従います。
- ピンプランナーでこの割り当てにアクセスするには、All pinsリストを右クリックし、Customize Columnsをクリックします。
- Available columnsで、Show these columns in this orderにOutput Enable Groupを追加します。カラムがAll Pinsリストに表示されます。
- 同じ方向に駆動しているすべての信号セットのOutput Enable Group割り当てに同じ整数値を入力します。
3.4.3. I/O分析レポートについて
詳細なI/O割り当て解析レポートには、影響を受けるピン名と問題の説明が含まれます。 CompilationレポートのFitterセクションには、次のレポートなど、I/O割り当て分析中に生成された情報が含まれています。
- I/O Assignment Warnings—各ピンに対して生成された警告を一覧表示します。
- Resource Section—さまざまなピンタイプとI/Oバンクの使用を定量化します。
- I/O Rules Section—テストされたI/Oルールに関する概要、詳細、およびマトリックス情報を一覧表示します。
Statusカラムは、ルールが成功したか、失敗したか、チェックされなかったかを示します。重大度評価は、効果的な分析のためのルールの重要性を示します。 「適用外」のルールは、ターゲットデバイスファミリーには適用されません。

3.5. I/Oタイミング
たとえば、ECOを使用して一部のI/Oピンのスルーレートまたはドライブ強度を変更すると、デザインを再コンパイルせずにタイミングを検証できます。 I/Oタイミングと、デザインのI/Oタイミングパスに影響する要因を理解する必要があります。出力ピンと双方向ピンの出力負荷仕様の精度は、I/Oタイミングの結果に影響します。
インテル® Quartus® Primeソフトウェアは、I/Oタイミング解析の3つの異なる方法をサポートしています。
I/Oタイミング解析 |
変更内容 |
---|---|
高度なI/Oタイミング解析 |
ボード・トレース・モデルでI/Oタイミングを分析して、正確な「ボード対応」シミュレーション・モデルをレポートします。各I/O規格またはピンの完全なボード・トレース・モデルを構成します。Timing Analyzerは、I/Oバッファー、パッケージ、およびボード・トレース・モデルのシミュレーション結果を適用して、正確なI/O遅延とシステムレベルの信号情報を生成します。この情報を使用して、タイミングと信号の整合性を改善します。 |
I/Oタイミング解析 |
シグナル・インテグリティー解析なしで、デフォルトまたは指定の容量性負荷でI/Oタイミングを分析します。 Timing Analyzerは、容量性負荷のデフォルト値またはユーザー指定の値を使用して、tCOをI/Oピンに報告します。 |
フルボード配線シミュレーション |
Mentor Graphics* HyperLynx*および Synopsys* HSPICEでのシミュレーションには、インテル提供または インテル® Quartus® Primeソフトウェア生成のIBISまたはHSPICE I/Oモデルを使用します。 |
高度なI/Oタイミングサポートの詳細については、ターゲットデバイスの適切なデバイスハンドブックを参照してください。ボードレベルのシグナル・インテグリティーの詳細、および高速デザインでシグナル・インテグリティーを改善する方法のヒントについては、シグナル・インテグリティーおよびパワーインテグリティ–サポートセンターのWebサイトを参照してください。
IBISおよびHSPICEモデルの作成については、 インテル® Quartus® PrimeソフトウェアおよびそれらのモデルをHyperLynx*およびHSPICEシミュレーションに統合する方法については、 サードパーティツールを使用したシグナル・インテグリティー解析の章を参照してください。
3.5.1. 高度なI/Oタイミングの実行
高度なI/Oタイミング解析は、ボード・トレース・モデルと終端ネットワーク仕様を使用して、正確な出力バッファーからピンへのタイミング推定、FPGAピンおよびボードトレースのシグナル・インテグリティーおよび遅延値を報告します。コンパイル中に、サポートされているデバイスに対して高度なI/Oタイミングが自動的に実行されます。
3.5.1.1. ボードの熱モデル
インテル® Quartus® Primeソフトウェアは、さまざまなI/O規格のボード・トレース・モデルテンプレートを提供します。
次の図は、2.5 V I/O規格のテンプレートを示しています。このモデルは、近端および遠端のボード・コンポーネント・パラメーターで構成されています。
近端ボード・トレース・モデリングには、デバイスに近い要素が含まれます。遠端モデリングには、リンクの受信側で受信デバイスに近い要素が含まれます。ボード・トレース・モデルトポロジは概念的なものであり、必ずしもすべてのコンポーネントの実際のボードトレースと一致するわけではありません。たとえば、近端モデルのパラメーターは、デバイス端の個別の終端およびブレークアウト・トレースを表すことができます。遠端モデリングは、ディスクリート外部メモリー・コンポーネントへのボードトレースの大部分、および遠端終端ネットワークを表すことができます。メモリー・コンポーネントの終端を含むボード全体の近端モデリング、および実際のメモリー・コンポーネントの遠端モデリングを使用して、同じ回路を解析できます。

次の図は、LVDS I/O規格のテンプレートを示しています。遠端容量(Cf)は、外部デバイスまたは複数デバイスの容量性負荷を表します。遠端に複数のデバイスがある場合、すべてのレシーバーのキャパシタンスを考慮して、遠端で等価キャパシタンスを見つける必要があります。遠端の容量は、すべての受信機容量の合計になります。
伝送線路の インテル® Quartus® Primeソフトウェア・モデルは、伝送線路の抵抗を考慮しません(ロスレスモデル)。 分布インダクタンス(L)とキャパシタンス(C)の値を1インチごとに指定するだけで、PCBベンダーまたはメーカー、CADデザインツール、 Mentor Graphics* HyperLynx*ソフトウェアなどのシグナル・インテグリティー・ツールから取得できます。

3.5.1.2. ボード・トレース・モデルの定義
Advanced I/O Timingは、このモデルを使用して、出力バッファーからボードトレースの遠端までの出力信号をシミュレートします。出力モードの出力ピンまたは双方向ピンのボードルーティングで、容量性負荷、終端コンポーネント、およびトレースインピーダンスを定義できます。各I/O規格または特定のピンに対して、全体的なボード・トレース・モデルを構成できます。デザイン内の各I/O規格の全体的なボード・トレース・モデルを定義します。 I/O規格を使用するすべてのピンにそのモデルを使用します。 Pin PlannerのBoard Trace Modelウィンドウを使用して、特定のピンのモデルをカスタマイズできます。
- Assignments > Device > Device and Pin Optionsをクリックします。
- Board Trace Modelをクリックして、各I/O規格のボード・トレース・モデル値を定義します。
- I/O Timingをクリックし、ボードトレースの近端および遠端でデフォルトのI/Oタイミングオプションを定義します。
- Assignments > Pin Plannerをクリックし、ボード・トレース・モデルの値を個々のピンに割り当てます。
ボード・トレース・モデルの指定
## setting the near end series resistance model of sel_p output pin to 25 ohms set_instance_assignment -name BOARD_MODEL_NEAR_SERIES_R 25 -to se1_p ## Setting the far end capacitance model for sel_p output signal to 6 picofarads set_instance_assignment -name BOARD_MODEL_FAR_C 6P -to se1_p
3.5.1.3. ボード・トレース・モデルの変更
ボード・トレース・モデルのグラフィカル表現内で、ボード・トレース・モデルのパラメーターを変更できます。
Board Trace Modelウィンドウには、差動信号ペアの正と負の信号のルーティングとコンポーネントが表示されます。設定は自動的に負の信号に適用されるため、ペアの正の信号のみを変更します。 p 、n 、kなどの標準のユニットプレフィックスを使用して、それぞれピコ、ナノ、キロを表します。 shortまたはopen値を使用して、並列コンポーネントのショートまたはオープン回路を指定します。
3.5.1.4. 近端と遠端のI/Oタイミング解析の指定
I/Oタイミング解析の近端または遠端を選択できます。近端のタイミング解析はデバイスピンにまで及びます。近端解析中にset_output_delay制約を適用して、ボード全体の遅延を考慮することができます。
遠端I/Oタイミング解析では、高度なI/Oタイミング解析は、ボードトレースの遠端での外部デバイス入力にまで及びます。近端または遠端のタイミングエンドポイントを選択するかどうかに関係なく、ボード・トレース・モデルはタイミング解析中に考慮されます。
3.5.1.5. 高度なI/Oタイミング解析レポート
次のレポートは、高度なI/Oタイミング解析情報を示しています。
I/Oタイミングレポート | 説明 |
---|---|
Timing Analyzerレポート | シグナル・インテグリティーおよびボード遅延データを報告します。 |
ボード・トレース・モデルの割り当てレポート | 各出力および双方向信号のボード・トレース・モデルコンポーネント設定を要約します。 |
Signal Integrity Metricsレポート | 各出力または双方向ピンのボード・トレース・モデル設定に基づいて、高度なI/Oタイミング解析中に計算されたすべてのシグナル・インテグリティーメトリックが含まれます。 FPGAピンとボード遅延の遠端負荷、定常状態電圧、および立ち上がり時間と立ち下がり時間の両方での測定が含まれます。 |
3.5.2. 容量性負荷によるI/Oタイミングと電力の調整
出力ピンと双方向ピンのtCOと電力を計算するとき、Timing AnalyzerとPower Analyzerはバルク容量性負荷を使用します。 I/O規格ごとに容量性負荷の値を調整して、より正確なtCOおよび電力測定値を取得し、PCBの出力または双方向ネットの動作を反映させることができます。の インテル® Quartus® Primeソフトウェアは、入力ピンの容量性負荷設定を無視します。デザイン全体に対して、I/O規格ごとにピコファラッド(pF)で容量性負荷の設定を調整できます。コンパイル中、コンパイラは設定に基づいて電力とtCOの測定値を測定します。 Output Pin Loadロジックオプションを使用して、個々のピンの容量性負荷を調整することもできます。
3.6. ルーティングおよびタイミング遅延の表示
任意のノードを右クリックし、Locate > Locate in Chip Planner をクリックして、ユーザーI/OパッドとVCC 、GND、およびVREFパッド間のI/Oタイミング遅延とルーティングを視覚化および調整します。Chip Plannerは、ロジックの配置、領域、相対的なリソース使用量、詳細なルーティング情報、ファンインとファンアウト、レジスターパス、高速トランシーバーチャネルをグラフィカルに表示します。物理的なタイミングの見積もり、配線の混雑、およびクロック領域を表示できます。 Chip Plannerを使用して、リソース間の接続を変更し、ロジックセルとI/Oアトムの配置にコンパイル後の変更を加えます。Pin Plannerでアイテムを選択すると、対応するアイテムがChip Plannerで強調表示されます。
3.7. スクリプトAPI
インテル® Quartus® Primeソフトウェアを使用すると、GUIではなくTclコマンドを使用してI/O管理機能にアクセスできます。スクリプトコマンドオプションとTcl APIパッケージの詳細については、システム・コマンド・プロンプトで次を入力して、Tcl API Helpブラウザーを表示してください。
quartus_sh --qhelp
3.7.1. 生成された合成可能なネットリスト。
TclコンソールまたはTclスクリプトに次を入力します。
execute_module -tool map
execute_moduleコマンドは、フローパッケージにあります。
システム・コマンド・プロンプトで以下のコマンドを入力します。
quartus_syn <project name>
3.7.2. Reserve Pins
リビジョンを削除するには、以下のTclコマンドを使用します。
set_instance_assignment -name RESERVE_PIN <value> -to <signal name>
次のイネーブルな予約済みピン値のいずれかを使用します。
- "AS BIDIRECTIONAL"
- "AS INPUT TRI STATED"
- "AS OUTPUT DRIVING AN UNSPECIFIED SIGNAL"
- "AS OUTPUT DRIVING GROUND"
- "AS SIGNALPROBE OUTPUT"
3.7.3. 場所を設定
次のTclコマンドを使用して、ピンまたはデバイスの位置に信号を割り当てます。
set_location_assignment <location> -to <signal name>
イネーブルな場所は、ピンの場所、I/Oバンクの場所、またはエッジの場所です。ピンの場所には、 PIN_A3などのピン名が含まれます。I/Oバンクの場所にはIOBANK_1からIOBANK_ nまでが含まれます。nはデバイス内のI/Oバンクの数です。
次のイネーブルなエッジ位置の値のいずれかを使用します。
- EDGE_BOTTOM
- EDGE_LEFT
- EDGE_TOP
- EDGE_RIGHT
3.7.4. 排他的I/Oグループ
次のTclコマンドは、排他的なI/Oグループの割り当てを作成します。
set_instance_assignment -name "EXCLUSIVE_IO_GROUP" -to pin
3.7.5. スルーレートと電流強度
次のTclコマンドを使用して、スルーレートとドライブ強度の割り当てを作成します。
set_instance_assignment -name CURRENT_STRENGTH_NEW 8MA -to e[0] set_instance_assignment -name SLEW_RATE 2 -to e[0]
3.8. デバイスI/Oピンの管理の改訂履歴
以下の表に本章の改訂履歴を示します。
ドキュメント・バージョン | インテル® Quartus® Primeバージョン | 変更内容 |
---|---|---|
2018.05.07 | 18.0.0 |
|
2017.11.06 | 17.1.0 |
|
2017.05.08 | 17.0.0 |
|
2016.10.31 | 16.1.0 |
|
2015.11.02 | 15.1.0 |
|
2014.12.15 | 14.1.0 |
|
2014.08.30 | 14.0a10.0 |
|
2014.06.30 | 14.0.0 |
|
2013年11月 | 13.1.0 |
|
2013年5月 | 13.0.0 |
|
2012年11月 | 12.1.0 |
|
2012年6月 | 12.0.0 |
|
2011年11月 | 11.1.0 |
|
2010年12月 | 10.0.1 | テンプレートを更新。 |
2010年7月 | 10.0.0 |
|
2009年11月 | 9.1.0 |
|
2009年3月 | 9.0.0 |
|
A. インテル Quartus Primeプロ・エディションユーザーガイド
インテル® Quartus® Primeプロ・エディション FPGAデザインフローのすべてのフェーズの包括的な情報については、次のユーザーガイドを参照してください。