INTERFACE - INTERFACE - 2026.1 日本語 - UG1399

Vitis 高位合成ユーザー ガイド (UG1399)

Document_ID
UG1399
Release_Date
2026-06-23
Version
2026.1 日本語

説明

Interface (`syn.interface.*` / `config_interface`)

AXI とポート インターフェイスの動作のグローバル デフォルトを設定します。

構文

表 1. コンフィギュレーションの表
オプション コンフィギュレーション ファイル Tcl デフォルト 型/値 説明
clock_enable syn.interface.clock_enable=true config_interface -clock_enable 0 bool 最上位ブロックにクロック イネーブル (ce) ポートを追加します。
default_slave_interface syn.interface.default_slave_interface=[s_axilite|none] config_interface -default_slave_interface [s_axilite|none] s_axilite enum スカラー型の最上位ポートのデフォルト インターフェイス タイプです。
m_axi_addr64 syn.interface.m_axi_addr64=true config_interface -m_axi_addr64 1 bool すべての M_AXI インターフェイスで 64 ビット アドレスを使用します。
m_axi_alignment_byte_size syn.interface.m_axi_alignment_byte_size=<N> config_interface -m_axi_alignment_byte_size <N> 1 int M_AXI アドレスのアライメント要件 (バイト単位) です。
m_axi_alignment_size syn.interface.m_axi_alignment_size=<N> config_interface -m_axi_alignment_size <N> 0 int M_AXI のアライメント サイズ (要素単位)。m_axi_alignment_byte_size とは異なります。
m_axi_auto_id_channel syn.interface.m_axi_auto_id_channel=true config_interface -m_axi_auto_id_channel 0 bool M_AXI インターフェイスに一意の ID チャネルを自動的に割り当てます。
m_axi_auto_max_ports syn.interface.m_axi_auto_max_ports=true config_interface -m_axi_auto_max_ports 0 bool パフォーマンスを最大化するために M_AXI ポート数を自動的に最大化します。
m_axi_buffer_impl syn.interface.m_axi_buffer_impl=[bram|lutram|uram|auto] config_interface -m_axi_buffer_impl [bram|lutram|uram|auto] bram enum M_AXI 内部バッファーのインプリメンテーション リソースです。
m_axi_cache_impl syn.interface.m_axi_cache_impl=[auto|lutram|bram|uram] config_interface -m_axi_cache_impl [auto|lutram|bram|uram] auto enum M_AXI キャッシュのインプリメンテーション リソース (#pragma HLS cache 使用時) です。
m_axi_conservative_mode syn.interface.m_axi_conservative_mode=<bool> config_interface -m_axi_conservative_mode <bool> 1 bool M_AXI のコンサバティブ モードを有効にします。バースト境界をまたいだパイプラインを削減します。
m_axi_flush_mode syn.interface.m_axi_flush_mode=true config_interface -m_axi_flush_mode 0 bool M_AXI 書き込みチャネルのフラッシュ モードを有効にします。
m_axi_latency syn.interface.m_axi_latency=<N> config_interface -m_axi_latency <N> 0 int M_AXI バスの想定レイテンシ (クロック サイクル単位、スケジューリングに使用) です。
m_axi_max_bitwidth syn.interface.m_axi_max_bitwidth=<N> config_interface -m_axi_max_bitwidth <N> 1024 int すべての M_AXI インターフェイスの最大バス幅 (ビット単位) です。
m_axi_max_read_burst_length syn.interface.m_axi_max_read_burst_length=<N> config_interface -m_axi_max_read_burst_length <N> 16 int M_AXI インターフェイスの最大読み出しバースト長です。
m_axi_max_widen_bitwidth syn.interface.m_axi_max_widen_bitwidth=<N> config_interface -m_axi_max_widen_bitwidth <N> 0 int M_AXI バスの想定レイテンシ (クロック サイクル単位、スケジューリングに使用) です。
m_axi_max_write_burst_length syn.interface.m_axi_max_bitwidth=<N> config_interface -m_axi_max_bitwidth <N> 1024 int すべての M_AXI インターフェイスの最大バス幅 (ビット単位) です。
m_axi_min_bitwidth syn.interface.m_axi_max_read_burst_length=<N> config_interface -m_axi_max_read_burst_length <N> 16 int M_AXI インターフェイスの最大読み出しバースト長です。
m_axi_num_read_outstanding syn.interface.m_axi_max_widen_bitwidth=<N> config_interface -m_axi_max_widen_bitwidth <N> 0 int ツールが M_AXI データ バスを拡張できる最大ビット幅です。0 = ディスエーブル
m_axi_num_write_outstanding syn.interface.m_axi_max_write_burst_length=<N> config_interface -m_axi_max_write_burst_length <N> 16 int M_AXI インターフェイスの最大書き込みバースト長です。
m_axi_offset syn.interface.m_axi_offset=[off|slave|direct] config_interface -m_axi_offset [off|slave|direct] slave enum M_AXI ベース アドレス オフセット モード: off = オフセットなし、slave = AXI-Lite レジスタ経由、direct = 専用ポート。
register_io syn.interface.register_io=[off|scalar_in|scalar_out|scalar_all] config_interface -register_io [off|scalar_in|scalar_out|scalar_all] off enum ソフトウェアとハードウェアの通信用に S_AXILite インターフェイスにメールボックス レジスタを追加します。
s_axilite_data64 syn.interface.s_axilite_data64=true config_interface -s_axilite_data64 0 bool S_AXILite インターフェイスで 64 ビット データ幅を使用します。
s_axilite_interrupt_mode syn.interface.s_axilite_interrupt_mode=[cor|tow] config_interface -s_axilite_interrupt_mode [cor|tow] tow enum 割り込みレジスタ モード: cor (読み出し時クリア) または tow (書き込み時トグル)。
s_axilite_mailbox syn.interface.s_axilite_mailbox=[in|out|both|none] config_interface -s_axilite_mailbox [in|out|both|none] none enum ソフトウェアとハードウェアの通信用に S_AXILite インターフェイスにメールボックス レジスタを追加します。
s_axilite_memory_auto_widen syn.interface.s_axilite_memory_auto_widen=<bool> config_interface -s_axilite_memory_auto_widen <bool> true bool S_AXILite メモリ マップド レジスタを自動的に拡張して、アクセス効率を向上させます。
s_axilite_status_regs syn.interface.s_axilite_status_regs=[ecc|off] config_interface -s_axilite_status_regs [ecc|off] off enum S_AXILite インターフェイスに ECC ステータス レジスタを追加します。
s_axilite_sw_reset syn.interface.s_axilite_sw_reset=true config_interface -s_axilite_sw_reset 0 bool S_AXILite インターフェイスにソフトウェア制御のリセット レジスタを追加します。

使用法


ini
[hls]
syn.interface.m_axi_latency=64
syn.interface.m_axi_max_read_burst_length=256
syn.interface.m_axi_max_write_burst_length=256
syn.interface.m_axi_num_read_outstanding=16
syn.interface.m_axi_num_write_outstanding=16
syn.interface.m_axi_offset=slave
syn.interface.register_io=scalar_all
syn.interface.default_slave_interface=s_axilite

tcl
config_interface \
  -m_axi_latency 64 \
  -m_axi_max_read_burst_length 256 \
  -m_axi_max_write_burst_length 256 \
  -m_axi_num_read_outstanding 16 \
  -m_axi_num_write_outstanding 16 \
  -m_axi_offset slave \
  -register_io scalar_all \
  -default_slave_interface s_axilite