説明
インターフェイス合成中に各関数の RTL ポートをインプリメントするのに使用されるデフォルトのインターフェイス オプションを指定します。
構文
config_interface [OPTIONS]
オプション
-
-ap_memory_io: [=bus | port]
- デフォルトではポートに設定されています。ap_memory インターフェイスが RTL および IP でどのようにモデル化されるかを指定します。
-
-clock_enable[=true|false]
- デザインにクロック イネーブル ポート (
ap_ce
) を追加します。デフォルトは false です。クロック イネーブルは、アクティブ Low の場合、すべてのクロック動作が実行されないようにし、すべてのシーケンシャル動作がディスエーブルにします。
-
-default_slave_interface [none | s_axilite]
- スレーブ インターフェイスのデフォルトを
none
(Vivado IP フローのデフォルト) またはs_axilite
(Vitis カーネル フローのデフォルト) に指定します (ターゲット フローの概要を参照)。 -
-m_axi_addr64[=true|false]
- デザイン内のすべての
m_axi
ポートに対する 64 ビットのアドレス指定をグローバルにイネーブルにします。デフォルトでは Vitis フローでオンになりますが、それ以外ではオフになります。 -
-m_axi_alignment_byte_size <size>
-
m_axi
インターフェイスのメモリ アライメント境界をビット幅で指定します。<size>
値は、有効な 2 のべき乗で指定する必要があります。0 は無効な値です。デフォルト値は、open_solution -flow_target vitis
の場合は 64、-flow_target=vivado
の場合は 1 で、シングル バイトに揃います。重要: ポインターがランタイム時にアライメントされない場合、バースト動作が正しくなくなります。 -
-m_axi_auto_id_channel[=true|false]
-
m_axi
インターフェイスのチャネル ID の自動割り当てを有効にします。詳細は、M_AXI チャネル を参照してください。 -
-m_axi_auto_max_ports[=true|false]
-
true
の場合、INTERFACE プラグマまたは指示子を使用して明示的にバンドルされていないm_axi
インターフェイスはすべて個別のインターフェイスにマップされるので、リソース使用量が増加します (複数のアダプター)。デフォルトはfalse
で、m_axi
ポートは 1 つのインターフェイスにまとめられます。 -
-m_axi_buffer_impl [auto | lutram | uram | bram]
- すべての
m_axi
内部バッファーに対するインプリメンテーションを選択します。選択肢は、auto
、lutram
、bram
、uram
です。デフォルトはbram
です。 -
-m_axi_cache_impl [auto | lutram | uram | bram]
-
m_axi
アダプターに追加するキャッシュのインプリメンテーション リソースを指定します。選択肢は、auto
、lutram
、bram
、uram
です。デフォルトはauto
です。 -
-m_axi_conservative_mode=<true|false>
- このモードでは、書き込みデータがすべて揃うまでまで
m_axi
から書き込み要求は発行されません。MAXI アダプター内のバッファーを使用して、バースト用 (読み出しと書き込みの両方) のすべてのデータを格納します。これはデフォルトでイネーブル (true
) で、書き込みレイテンシが多少長くなる可能性はありますが、メモリ サブシステムに対する同時要求 (読み出しまたは書き込み) により発生するデッドロックを解決できます。この機能をディスエーブルにするするには、false
に設定します。 -
-m_axi_flush_mode
-
m_axi
アダプターをフラッシュ可能にします。パイプラインがブロックされたためにバーストが中断された場合は無効なデータが書き込み/読み出しされる、-m_axi_conservative_mode が指定されていない場合はデータ入力が欠落する、または出力空間が欠落する可能性があります。デフォルトはfalse
です。オプションを指定するとイネーブルになります。 -
-m_axi_latency <latency>
-
m_axi
インターフェイスのレイテンシをグローバルに指定し、読み出しまたは書き込みの指定サイクル (レイテンシ) 前にバス要求を開始できるようにします。デフォルト値は、open_solution -flow_target vitis
の場合は 64、-flow_target vivado
の場合は 0 です。 -
-m_axi_max_bitwidth <size>
-
m_axi
インターフェイスのデータ チャネルの最大ビット幅を指定します。デフォルトは 1024 です。8 ~ 1024 の 2 のべき乗を指定する必要があります。実際のアクセスが必要なインターフェイスよりも多い場合、アクセスがマルチサイクル バーストに分割されるので、スループットが小さくなります。 -
-m_axi_max_read_buffer_size <size>
- MAXI アダプターの読み出しデータ用バッファーのサイズを上書きします。MAXI ファブリックによってバッファリングが既に提供されている場合、読み出しバースト サイズ x 保留中の読み出しバースト数として計算されます。
-
-m_axi_max_read_burst_length <size>
-
m_axi
インターフェイスすべてのバースト転送中に読み出されるデータ値の最大数をグローバルに指定します。デフォルトは 16 です。 -
-m_axi_max_widen_bitwidth <size>
- 自動的にポート幅を変更して、
m_axi
インターフェイスのバーストを選択した幅まで広げます。8 ~ 1024 の 2 のべき乗を指定し、-m_axi_alignment_size
に揃える必要があります。デフォルト値はopen_solution -flow_target vitis
の場合 512 で、-flow_target vivado
の場合 0 です。 -
-m_axi_max_write_buffer_size <size>
- このオプションを使用すると、MAXI アダプターの書き込みデータ用バッファーのサイズを上書きできます。MAXI ファブリックによってバッファリングが既に提供されている場合、書き込みバースト サイズ x 保留中の書き込みバースト数として計算されます。
-
-m_axi_max_write_burst_length <size>
-
m_axi
インターフェイスすべてのバースト転送中に書き込まれるデータ値の最大数をグローバルに指定します。デフォルトは 16 です。 -
-m_axi_min_bitwidth <size>
-
m_axi
インターフェイスのデータ チャネルの最小ビット幅を指定します。デフォルトは 8 ビットです。8 ~ 1024 の 2 のべき乗を指定する必要があります。実際のアクセスが必要なインターフェイスよりも少ない場合は、このオプションでスループットが必ずしも増加するというわけではありません。 -
-m_axi_num_read_outstanding <size>
- デザインが停止する前に、
m_axi
インターフェイスに対して応答なしで送信できる読み出し要求の数を指定します。デフォルト値は 16 です。これによって、デザイン内の内部ストレージで、つまり FIFO のサイズが変わります。num_read_outstanding*max_read_burst_length*word_size
-
-m_axi_num_write_outstanding <size>
- デザインが停止する前に、
m_axi
インターフェイスに対して応答なしで送信できる書き込み要求の数を指定します。デフォルト値は 16 です。これによって、デザイン内の内部ストレージで、つまり FIFO のサイズが変わります。num_write_outstanding*max_write_burst_length*word_size
-
-m_axi_offset [off | direct | slave]
- デザイン内のすべての
m_axi
インターフェイスのオフセット ポートをグローバルに制御します。-
off
- オフセット ポートは生成されません。これが Vivado IP フローのデフォルト値です。
-
direct
- アドレス オフセットをオフセット ポートを介して IP に直接渡すためのスカラー入力オフセット ポートを生成します。
-
slave
- オフセット ポートを生成して、それを自動的に AXI4-Lite スレーブにマップします。これがデフォルト値です。
-
-
-register_io [off | scalar_in | scalar_out | scalar_all]
- すべての入力、出力、または最上位関数のすべてのポート用のレジスタをグローバルにイネーブルにします。デフォルトはオフ
off
です。 -
-s_axilite_auto_restart_counter [ 0 | 1 ]
- カーネルの自動再起動動作をイネーブルにします。自動再起動機能をディスエーブルにするには、0 を使用し、イネーブルにするには 1 を使用します。イネーブルの場合、ツールが
s_axilite
インターフェイスのap_ctrl_chain
制御プロトコルで自動再起動ビットを作成します。詳細は、 『Vitis 統合ソフトウェア プラットフォームの資料: アプリケーション アクセラレーション開発』 (UG1393) の「連続して実行されるカーネル」を参照してください。 -
-s_axilite_data64[=true|false]
-
s_axilite
インターフェイスのデータ幅を 64 ビットに設定します。 -
-s_axilite_interrupt_mode[=cor|tow]
-
s_axilite
インターフェイスの割り込みモードを読み出しでクリア (cor
) または書き込みでトグル (tow
) に指定します。読み出しでクリア割り込みは 1 回のトランザクションで完了しますが、tow
は 2 回のトランザクションが必要です。デフォルトの割り込みモードは、Tow
です。 -
-s_axilite_mailbox [both | in | out]
- ストリーム以外の安定しない
s_axilite
引数用にメールボックスの作成をイネーブルにします。メールボックス機能は、 『Vitis 統合ソフトウェア プラットフォームの資料: アプリケーション アクセラレーション開発』 (UG1393) の「連続して実行されるカーネル」 で説明される決して終了しないカーネルの設定と管理に使用されます。 -
-s_axilite_status_regs [ecc | off]
-
ECC がイネーブルになった BRAM または URAM ごとに 2 つのクリア オン リード (COR) カウンターを介して、
s_axilite
レジスタ マップ内の ECC エラー ビットの露出をイネーブルにします。- off
- ステータス レジスタは生成されません。これがデフォルト設定です。
- ecc
- BRAM および URAM の ECC エラーのカウンターをイネーブルにします。
-
-s_axilite_sw_reset[=false|true]
-
s_axilite
アダプターのカーネルのソフトウェア リセットをイネーブルにします。
例
次に、クロック イネーブル ポートを IP に追加する例を示します。
config_interface -clock_enable