ザイリンクス TLM – ESL モデリング用 SystemC ライブラリ - 2022.1 日本語

Vitis 統合ソフトウェア プラットフォームの資料: アプリケーション アクセラレーション開発 (UG1393)

Document ID
UG1393
Release Date
2022-05-25
Version
2022.1 日本語

ザイリンクス TLM (XTLM) は、AXI プロトコルをモデリングするための Accellera SystemC TLM 2.0 ライブラリのザイリンクス版です。カスタム TLM ソケットを使用して SystemC 間にシミュレーション基盤を提供するほか、トランザクターを介した RTL と SystemC 間の協調シミュレーション基盤も提供します。TLM 2.0 にはソケット、ペイロード、およびフェーズが含まれますが、これらのデフォルト要素だけでは AXI の全機能をサポートするには不十分です。このため、XTLM では独自のソケット、ペイロード、フェーズのセットが定義されています。

XTLM のユーザーは、SystemC および TLM 2.0 仕様の基本を理解している必要があります。次の表に、XTLM ライブラリ内で使用できるクラスの概要を示します。

表 1. XTLM の機能と使用方法
S. No. XTLM の機能/クラス 使用法
1 aximm_payload 1 つのトランザクション内の AXI4 メモリ マップ バス上のデータを記述するトランザクション オブジェクト クラス。

TLM 2.0 汎用ペイロードに基づいていますが、そこから派生したものではありません。

2 axis_payload 1 つのトランザクション内の AXI4-Stream バス上のデータを記述するトランザクション オブジェクト クラス。

TLM 2.0 汎用ペイロードに基づいていますが、そこから派生したものではありません。

3 xtlm_aximm_initiator_socket マスター/イニシエーターの AXI4 メモリ マップ インターフェイスに使用する基本ソケット。

読み出しソケットと書き込みソケットごとに 1 つのソケットをインスタンシエートする必要があります。

4 xtlm_aximm_simple_initiator_socket_tagged 複数インターフェイスにバインドする、マスター/イニシエーターの AXI4 メモリ マップ インターフェイスに使用する基本ソケット。

読み出しソケットと書き込みソケットごとに 1 つのソケットをインスタンシエートする必要があります。

各インターフェイスを新しい ID で追加する必要があります。

5 xtlm_aximm_target_socket スレーブ/ターゲットの AXI4 メモリ マップ インターフェイスに使用する基本ソケット。

読み出しソケットと書き込みソケットごとに 1 つのソケットをインスタンシエートする必要があります。

6 xtlm_aximm_passthrough_target_socket_tagged 複数インターフェイスにバインドする、スレーブ/ターゲットの AXI4 メモリ マップ インターフェイスに使用する基本ソケット。

読み出しソケットと書き込みソケットごとに 1 つのソケットをインスタンシエートする必要があります。

各インターフェイスを新しい ID で追加する必要があります。

7 xtlm_axis_initiator_socket マスター/イニシエーターの AXI4-Stream インターフェイスに使用する基本ソケット。
8 xtlm_axis_simple_initiator_socket_tagged 複数インターフェイスにバインドする、マスター/イニシエーターの AXI4-Stream インターフェイスに使用する基本ソケット。

各インターフェイスを新しい ID で追加する必要があります。

9 xtlm_axis_target_socket スレーブ/ターゲットの AXI4-Stream インターフェイスに使用する基本ソケット。
10 xtlm_axis_passthrough_target_socket_tagged 複数インターフェイスにバインドする、スレーブ/ターゲットの AXI4-Stream インターフェイスに使用する基本ソケット。

各インターフェイスを新しい ID で追加する必要があります。

11 xtlm_aximm_initiator_stub スタブ XTLM スレーブ インタフェースに対する 1 つのイニシエーター ソケット。

このソケットは、XTLM マスターがない場合に便利です。

これにより、SystemC のポート バインディング エラーを回避できます。

12 xtlm_aximm_target_stub スタブ XTLM マスター インタフェースに対する 1 つのターゲット ソケット。

このソケットは、XTLM スレーブがない場合に便利です。

これにより、SystemC のポート バインディング エラーを回避できます。

13 xtlm_axis_initiator_stub スタブ XTLM AXI4-Stream スレーブ インタフェースに対する 1 つのイニシエーター ソケット。

このソケットは、XTLM AXI4-Stream マスターがない場合に便利です。

これにより、SystemC のポート バインディング エラーを回避できます。

14 xtlm_aximm_target_stub スタブ XTLM マスター インタフェースに対する 1 つのターゲット ソケット。

このソケットは、XTLM スレーブがない場合に便利です。

これにより、SystemC のポート バインディング エラーを回避できます。

15 xtlm_aximm_initiator_rd_socket_util AXI4 メモリ マップ イニシエーター読み出しソケット用ユーティリティ。

xtlm_aximm_initiator_socket タイプでのみ動作します。

16 xtlm_aximm_initiator_wr_socket_util

AXI4 メモリ マップ イニシエーター書き込みソケット用ユーティリティ。

xtlm_aximm_initiator_socket タイプでのみ動作します。

17 xtlm_aximm_target_rd_socket_util AXI4 メモリ マップ ターゲット読み出しソケット用ユーティリティ。

xtlm_aximm_target_socket タイプでのみ動作します。

18 xtlm_aximm_target_wr_socket_util AXI4 メモリ マップ ターゲット書き込みソケット用ユーティリティ。

xtlm_aximm_target_socket タイプでのみ動作します。