AXI インターフェイスの推論 - 2022.1 日本語

Vivado Design Suite ユーザー ガイド: IP インテグレーターを使用した IP サブシステムの設計 (UG994)

Document ID
UG994
Release Date
2022-04-20
Version
2022.1 日本語

AXI インターフェイスに標準命名規則を使用すると (推奨)、Vivado IP インテグレーターによりインターフェイスが自動的に推論されます。次に、標準 AXI 名が使用されているコード例を示します。

図 1. 標準命名規則が使用されている場合の AXI インターフェイスの推論

この RTL モジュールをブロック デザインに追加すると、次に示すように AXI インターフェイスが自動的に推論されます。

図 2. モジュール参照で推論された AXI インターフェイス

モジュールに AXI インターフェイスが推論されると、IP インテグレーターのコネクション オートメーション機能が使用できるようになります。この機能では、インターフェイスをスレーブからマスターに、またはマスターからスレーブに接続するオプションが提供されます。

ポート名が標準 AXI インターフェイス名と一致しない場合は、インターフェイスを強制的に作成し、言語テンプレートにある X_INTERFACE_INFO 属性を使用して物理ポートを論理ポートにマップできます。

適切な HDL 言語 (Verilog/VHDLIP Integrator HDL) を展開表示し、AXI Interface の下から適切なインターフェイスを選択すると、Preview ペインに属性が表示されます。たとえば、AXI4 インターフェイスの VHDL 言語テンプレートには、モジュール定義に挿入する必要のある次の属性が表示されます。

図 3. 非標準 AXI 名の言語テンプレートで指定した属性の使用

同じ AXI クロックをマスター インターフェイスとスレーブ インターフェイスの両方に関連付ける場合は、クロック名は、s_axis_aclk または m_axis_aclk ではなく、axi_aclk または axis_aclk とする必要があります。クロック名に m_ および s_ 接頭辞を付けない場合、クロックがマスターとスレーブ両方の AXI インターフェイスに関連付けられます。次の図の例では、IP が AXI4-Stream スレーブ インターフェイスと AXI4-Stream マスター インターフェイスと共に表示されています。

スレーブ インターフェイス (s_axis) の Block Interface Properties ウィンドウを見ると、関連付けられているクロック (Associated clock) は s_axis_aclk となっています。

m_axis インターフェイスの [Block Interface Properties] ウィンドウを見ると、関連付けられているクロック ([Associated clock]) は None となっています。

s_axis_aclks_axism_axis の両方に関連付けるには、RTL コードでクロック名を axis_aclk に変更します。これで、クロックが m_axis インターフェイスにも関連付けられます。