Quartus® Prime プロ・エディションのユーザーガイド: デザイン最適化

ID 683641
日付 7/08/2024
Public
ドキュメント目次

7.4.9. create_new_node

説明

デザインネットリストに LUT セルまたはフリップフロップを作成します。次のユースケースが適用されます。

  • ロジックのバグを修正するためのゲートを追加します。
  • ホールド遅延を追加するためにワイヤー LUT を追加します。
  • 必要に応じて新しいフリップフロップを作成します。

新しいノードの名前は階層的です。したがって、ノード a|b|c|d を作成する際には、階層型 a|b|c がネットリストに存在することを確認する必要があります。ソースまたはデスティネーション・ノードがパーティションの下にある場合は、新しい LUT がそのパーティションの下に挿入されます。

注: このコマンドは、拡張 LUT または演算 LUT をサポートしていません。

新しいノードを作成した後、次のコマンドを実行して、接続、lutmask の変更、または新しいノードを配置できます。

  1. make_connection を実行して、新しい LUT の DATA 入力と出力ポートに接続します。
  2. modify_lutmask を実行して、新しい LUT の lutmask を変更します。
  3. place_node を実行して、新しい LUT を配置 (その後で配線) します。

このフローにより、新しいノードの正当な配置を決定する際、解析にすべての配置要件が含まれるようになります。以下はその

用途

次の例では、入力ポート DATAADATAB を備え、出力がそれぞれに接続された new_lut LUT ノードを作成します。modify_lutmask は、A&B ロジックを実行するように lutmask を変更します。place_node は、新しい LUT を配置します。ノード配置後の接続配線が完了します。

create_new_node -name new_lut -type lut
make_connection -from src_a -to new_lut -port DATAA
make_connection -from src_b -to enew_lut -port DATAB
make_connection -from new_lut -to dst_reg -port D
modify_lutmask -to new_lut -eqn A&B
place_node -name new_lut

作成した新しいフリップフロップ・ノードに接続するには、make_connection コマンドを使用して、フリップフロップ・データポート (D) およびコントロール・ポート (CLK, ENASCLRCLRN)、またその出力 Q ポートから接続します。新しいフリップフロップ・ノードは、place_node コマンドを使用して配置する必要があります。接続は、place_node コマンドの後に自動的に配線されます。

create_new_node -name my_ff -type ff
make_connection -from reg0 -to my_ff -port D
make_connection -from clk -to my_ff -port CLK
make_connection -from my_ff -to reg1 -port D
place_node -name my_ff -location “X10 Y10 X10 Y10”

引数

name
フリップフロップ・ノードの新しい LUT の名前