AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design...

93
AXI Verification IP v1.1 LogiCORE IP 製品ガ イ ド Vivado Design Suite PG267 2017 10 4 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に よっては英語版の更新に対応していないものがあります。日本語版は参考用としてご使用の上、最新情報につきまし ては、必ず最新英語版をご参照ください。

Transcript of AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design...

Page 1: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI Verification IP v1.1

LogiCORE IP 製品ガイド

Vivado Design Suite

PG267 2017 年 10 月 4 日

この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料によっては英語版の更新に対応していないものがあります。日本語版は参考用としてご使用の上、最新情報につきましては、必ず最新英語版をご参照ください。

Page 2: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 2

PG267 2017 年 10 月 4 日 japan.xilinx.com

目次

IP の概要

第 1章: 概要機能一覧 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

アプリ ケーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

ラ イセンスおよび注文情報 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

第 2章: 製品仕様規格 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

性能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

ユーザー パラ メーター . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

ポートの説明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

AXI プロ ト コル チェッ ク と説明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

ザイ リ ンクス固有のコンフ ィギュレーシ ョ ン チェッ ク と説明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

第 3章: コアを使用するデザイン一般的なデザイン ガイ ド ライン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

ク ロ ッキング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

リセッ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

第 4章: デザイン  フローの手順コアのカスタマイズおよび生成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

Vivado IP インテグレーター内の AXI VIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

コアへの制約 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

シ ミ ュレーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

合成およびインプリ メンテーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

第 5章: サンプル デザイン概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

第 6章: テストベンチ複数のシ ミ ュレーシ ョ ン セッ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

AXI VIP のサンプル テス トベンチとテス ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

便利なコーディングのガイ ド ラインおよび例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

付録 A: アップグレードVivado Design Suite でのアップグレード . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

付録 B: axi_vip_v1_1_top API

付録 C: BFM から  VIP への移行

Page 3: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 3

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジAXI マスター エージェン ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

AXI スレーブ エージェン ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

AXI パススルー エージェン ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

READY の生成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

付録 E: デバッグザイ リ ンクス ウェブサイ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

付録 F: その他のリソースおよび法的通知ザイ リ ンクス リ ソース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

Documentation Navigator およびデザイン ハブ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

参考資料 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

改訂履歴 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

お読みください: 重要な法的通知 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

Page 4: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 4

PG267 2017 年 10 月 4 日 japan.xilinx.com Production 製品仕様

はじめに

ザイ リ ンクス LogiCORE™ AXI Verification IP (VIP) コアは、ユーザーが設計した AXI ベース IP のシ ミ ュレーシ ョ ンをサポートする目的で開発されています。 AXI VIP コアは 3 つのバージ ョ ンの AXI プロ ト コル (AXI3、 AXI4、 および AXI4-Lite) をサポート しています。

AXI VIP は暗号化されていない SystemVerilog ソース と して提供され、 SystemVerilog ク ラス ライブラ リ と合成可能 RTL で構成されます。

内蔵の RTL インターフェイスは、 仮想インターフェイスを介して AXI VIP で制御します。AXI ト ランザクシ ョ ンはユーザーの検証環境で作成され、 AXI ド ラ イバー ク ラスに渡されます。 次に、 このド ライバー ク ラスがタイ ミ ングを管理し、 内容をインターフェイスに駆動します。

機能

• すべてのプロ ト コル データ幅、 アドレス幅、 転送タイプ、 応答をサポート

• ト ランザクシ ョ ン レベルのプロ ト コル チェッ ク (バース ト タイプ、 長さ、 サイズ、 ロ ッ ク タイプ、 キャ ッシュ タイプ)

• ARM® ベースのト ランザクシ ョ ン レベル プロ ト コル チェッカー。 アサーシ ョ ン プロパティをサポート したツールで利用可能 [参照 1]

• SystemVerilog ビヘイビアー構文

• SystemVerilog ク ラス ベースの API

• ネッ トおよび定数タイオフに合成

IP の概要

この LogiCORE™ IP について

コアの概要

サポート される

デバイス ファ ミ リ (1)

UltraScale+™、 UltraScale™、

Zynq®-7000 All Programmable SoC、7 シ リーズ FPGA

サポート される

ユーザー インターフェイス

AXI4、 AXI4-Lite、 AXI3

リ ソース N/A

コアに含まれるもの

デザイン ファイル SystemVerilog

サンプル デザイン SystemVerilog

テス トベンチ N/A

制約ファイル N/A

シ ミ ュレーシ ョ ン モデル

暗号化されていない SystemVerilog

サポート される ソフ ト ウェア ド ラ イバー

N/A

テスト済みデザイン  フロー (2)(3)

デザイン入力 Vivado® Design Suite

シミ ュレーシ ョ ン(4)

サポート されるシ ミ ュレータについては、

『Vivado Design Suite ユーザー ガイ ド :リ リース ノート、 インス トールおよび

ライセンス』 を参照

合成 Vivado 合成

サポート

ザイ リ ンクス サポート ウェブ ページで提供

注記:1. サポート されているデバイスの一覧は、 Vivado IP カタログを参

照して ください。

2. サポート されているツールのバージ ョ ンは、 『Vivado Design Suite ユーザー ガイ ド : リ リース ノート、 インス トールおよび

ライセンス』 を参照してください。

3. この IP は、 Zynq PS 用の VIP は提供しません。 AXI3、 AXI4、 お

よび AXI4-Lite インターフェイス用の VIP コアのみを提供します。

4. この IP のすべての機能を利用するには、 高度なシ ミ ュレーシ ョ

ン機能をサポート したシ ミ ュレータが必要です。

5. AXI VIP は、 VHDL 階層に含めた場合、 プロ ト コル チェッカー

と してのみ動作します。

6. AXI 検証コンポーネン トの仮想部分を使用するには、 Verilog 階層に置く必要があ り ます。

7. 2 つの異なる リ ビジ ョ ン/バージ ョ ンの axi_vip パッケージを

インポート しないでください。 エラボレーシ ョ ン エラーが発生

します。

8. すべての AXI VIP およびその親は、 常に 新バージ ョ ンにアッ

プグレードする必要があ り ます。

Page 5: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 5

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 1章

概要ザイ リ ンクス LogiCORE™ AXI Verification IP (VIP) コアには次の使用方法があ り ます。

• マスター AXI コマンドおよび書き込みペイロードを生成する

• スレーブ AXI 読み出しペイロード と書き込み応答を生成する

• AXI ト ランザクシ ョ ンがプロ ト コルに準拠しているかをチェッ クする

AXI VIP は次の 3 つのモードに設定できます。

• AXI マスター VIP

• AXI スレーブ VIP

• AXI パススルー VIP

図 1-1 に AXI マスター VIP を示します。 AXI マスター VIP は AXI コマンド と書き込みペイロードを生成し、 これを AXI システムに送信します。

図 1-2 に AXI スレーブ VIP を示します。 AXI スレーブ VIP は AXI コマンドに応答し、 読み出しペイロード と書き込み応答を生成します。

X-Ref Target - Figure 1-1

図 1‐1: AXI マスター VIP

X-Ref Target - Figure 1-2

図 1‐2: AXI スレーブ VIP

SystemVerilog Interface AXI Protocol Checker M_AXI

X18492-121316

SystemVerilog Interface AXI Protocol CheckerS_AXI

X18493-121316

Page 6: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 6

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 1 章:概要

図 1-3 に AXI パススルー VIP を示します。 AXI パススルー VIP は、 通過するすべての AXI ト ランザクシ ョ ンに対してプロ ト コル チェッ クを実行します。 この場合、 IP は次のいずれかの動作モードに設定できます。

• モニターのみ

• マスター

• スレーブ

合成後のネッ ト リ ス トには AXI プロ ト コル チェッカーは含まれません。

重要: Vivado® シ ミ ュレータを使用する場合、 ARM AMBA アサーシ ョ ンの代わりに AXI Protocol Checker IP [参照 4] が使用されます。

機能一覧

• AXI3、 AXI4、 および AXI4-Lite インターフェイスをサポート

• AXI マスター、 AXI スレーブ、 およびパススルー モードに設定可能

• シ ミ ュレーシ ョ ン メ ッセージングを設定可能

• シ ミ ュレーシ ョ ン時に AXI プロ ト コル チェッ クを実行

アプリケーシ ョ ン

AXI VIP は、 検証およびシステム エンジニアが次の目的で使用できます。

• 2 つの AXI 接続間のト ランザクシ ョ ンをモニターする

• AXI ト ランザクシ ョ ンを生成する

• AXI プロ ト コルへの準拠をチェッ クする

X-Ref Target - Figure 1-3

図 1‐3: AXI パススルー VIP

SystemVerilog Interface AXI Protocol CheckerM_AXIS_AXI

X18494-121316

Page 7: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 7

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 1 章:概要

ライセンスおよび注文情報

このザイ リ ンクス LogiCORE™ IP モジュールは、ザイ リ ンクス エンドユーザー ライセンス規約のも とザイ リ ンクス Vivado Design Suite を使用して追加コス ト なしで提供されています。

その他のザイ リ ンクス LogiCORE IP モジュールに関する情報は、 ザイ リ ンクス IP コアのページから入手できます。その他のザイ リ ンクス LogiCORE IP モジュールおよびツールの価格や提供状況については、 お近くのザイ リ ンクス販売代理店にお問い合わせください。

Page 8: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 8

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 2章

製品仕様AXI VIP コアは AXI3、 AXI4、 および AXI4-Lite プロ ト コルをサポート しています。

規格

AXI インターフェイスは、 ARM® AMBA® (Advanced Microcontroller Bus Architecture) AXI バージ ョ ン 4 仕様 [参照 2] に準拠しています。 この仕様のサブセッ ト と して、 AXI4-Lite 制御レジスタ インターフェイスも含まれます。

性能

AXI VIP コアはワイヤと して合成され、 性能には影響しません。

ユーザー パラメーター

表 2-1 に、 AXI VIP コアのユーザー パラ メーターを示します。

表 2‐1: AXI VIP のユーザー パラメーター

パラメーター名 フォーマッ ト /範囲 デフォルト値 説明

PROTOCOLタイプ: 文字列

値の範囲: AXI4、AXI3、 AXI4LITE

AXI4 プロ ト コル固有の信号を有効にするために使用します。

INTERFACE_MODE

タイプ: 文字列

値の範囲: PASS_THROUGH、MASTER、 SLAVE

PASS_THROUGH

プロ ト コルのモードをマスター、 スレーブ、 またはパススルーのいずれに設定するかに使用します。

READ_WRITE_MODE

タイプ: 文字列

値の範囲: READ_WRITE、READ_ONLY、WRITE_ONLY

READ_WRITE

対応する AXI 読み出し /書き込み信号を有効にするために使用します。

ADDR_WIDTH

1 整数 64 (AXI4LITE)

12 整数 64 (AXI4/AXI3)

32 *_axi_{ar,aw}addr の幅

Page 9: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 9

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

DATA_WIDTH

タイプ: long

値の範囲: 32、 64、128、 256、 512、 1024

AXI4LITE: 32、 64

32 *_axi_wdata および *_axi_rdata の幅

ID_WIDTH

タイプ: long

値の範囲: 0 ~ 32

AXI4LITE: 0

0*_axi_{aw,ar,r,b}id の幅。VIP を AXI3 で使用するよ うにコンフ ィギュレーシ ョ ンした場合、 このパラ メーターで *_axi_wid の幅も制御します。

AWUSER_WIDTH

タイプ: long

値の範囲: 0 ~ 1024

AXI4LITE: 0

READ_ONLY: 0

0 *_axi_awuser の幅

ARUSER_WIDTH

タイプ: long

値の範囲: 0 ~ 1024

AXI4LITE: 0

WRITE_ONLY: 0

0 *_axi_aruser の幅

WUSER_WIDTH

タイプ: long

値の範囲: 0 ~ 1024

AXI4LITE: 0

READ_ONLY: 0

0 *_axi_wuser の幅

BUSER_WIDTH

タイプ: long

値の範囲: 0 ~ 1024

AXI4LITE: 0

READ_ONLY: 0

0 *_axi_buser の幅

RUSER_WIDTH

タイプ: long

値の範囲: 0 ~ 1024

AXI4LITE: 0

WRITE_ONLY: 0

0 *_axi_ruser の幅

SUPPORTS_NARROW(1)タイプ: long

値の範囲: 0、 1

AXI4LITE: 0

1

VIP がインターフェイスのネイティブ データ幅未満のバース ト ト ランザクシ ョ ンをサポートするかど うかを指定します。 プロ ト コルが AXI4LITE、 または HAS_WSTRB が 0 の場合は、SUPPORTS_NARROW を 0 に設定する必要があ り ます。

HAS_BURST

タイプ: long

値の範囲: 0、 1

AXI4LITE: 0

2'b01*_axi_arburst および *_axi_awburst を有効にするかど うかを制御します。 0 の場合、 *_axi_arburst と *_axi_awburst の値は 2'b01 です。

HAS_LOCK

タイプ: long

値の範囲: 0、 1

AXI4LITE: 0

1

*_axi_arlock および *_axi_awlock を有効にするかど うかを制御します。 0 の場合、 *_axi_arlock と *_axi_awlock の値は 0 です。

プロ ト コルが AXI4LITE、 READ_WRITE_MODE が READ_WRITE 以外、 HAS_BRESP が 0、 HAS_RRESP が 0 のいずれかに該当する場合、HAS_LOCK は 0 に設定する必要があ り ます。

HAS_CACHE

タイプ: long

値の範囲: 0、 1

AXI4LITE: 0

1*_axi_arcache および *_axi_awcache を有効にするかどうかを制御します。 0 の場合、 *_axi_arcache と *_axi_awcache の値は 0 です。

表 2‐1: AXI VIP のユーザー パラメーター (続き)

パラメーター名 フォーマッ ト /範囲 デフォルト値 説明

Page 10: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 10

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

HAS_REGION

タイプ: long

値の範囲: 0、 1

AXI4LITE/AXI3: 0

1*_axi_arregion および *_axi_awregion を有効にするかどうかを制御します。 0 の場合、 *_axi_arregion と *_axi_awregion の値は 0 です。

HAS_PROTタイプ: long

値の範囲: 0、 11

*_axi_arprot および *_axi_awprot を有効にするかど うかを制御します。 0 の場合、 *_axi_arprot と *_axi_awprot の値は 0 です。

HAS_QOS

タイプ: long

値の範囲: 0、 1

AXI4LITE/AXI3: 0

1*_axi_arqos および *_axi_awqos を有効にするかど うかを制御します。 0 の場合、 *_axi_arqos と *_axi_awqos の値は 0 です。

HAS_WSTRB

タイプ: long

値の範囲: 0、 1

READ_ONLY: 0

1

*_axi_wstrb を有効にするかど うかを制御します。

HAS_WSTRB が 1 の場合、 *_axi_wstrb の任意のビッ トを 1 または 0 に設定できます。

0 の場合、 *_axi_wstrb のビッ トはすべて 1 です。

HAS_BRESP

タイプ: long

値の範囲: 0、 1

READ_ONLY: 0

1*_axi_bresp を有効にするかど うかを制御します。

0 の場合、 *_axi_bresp の値は 0 です。

HAS_RRESP

タイプ: long

値の範囲: 0、 1

WRITE_ONLY: 0

1*_axi_rresp を有効にするかど うかを制御します。

0 の場合、 *_axi_rresp の値は 0 です。

HAS_ACLKENタイプ: long

値の範囲: 0、 10

ACLKEN ポート を有効にするかど うかを制御します。

ユーザー パラ メーターのみ。 0 の場合、 1 と して扱われます。

HAS_USER_BITS_PER_BYTE

タイプ: long

値の範囲: 0、 1

AXI4LITE: 0

1

バイ ト ごとの書き込み/読み出しユーザー ビッ トが 1 か 0 かを制御します。

1: 1 バイ ト ごとのユーザー ビッ ト (ruser/wuser のサイズはバイ ト単位)

0: 1 転送ごとのユーザー ビッ ト (ruser/wuser のサイズは転送単位)

WUSER_BITS_PER_BYTE

タイプ: long

値の範囲: 0、 32

AXI4LITE: 0

READ_ONLY: 0

0

HAS_USER_BITS_PER_BYTE が 1 のと き、 WUSER の値は次の式で計算します。

WUSER_WIDTH = WUSER_BITS_PER_BYTE* (DATA_WIDTH/8)

RUSER_BITS_PER_BYTE

タイプ: long

値の範囲: 0、 32

AXI4LITE: 0

READ_ONLY: 0

0

HAS_USER_BITS_PER_BYTE が 1 のと き、 RUSER の値は次の式で計算します。

RUSER_WIDTH = RUSER_BITS_PER_BYTE* (DATA_WIDTH/8)

注記:1. SUPPORTS_NARROW は、 Vivado IP インテグレーターでは SUPPORTS_NARROW_BURST と して扱われます。

表 2‐1: AXI VIP のユーザー パラメーター (続き)

パラメーター名 フォーマッ ト /範囲 デフォルト値 説明

Page 11: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 11

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

ポートの説明

表 2-2 に、 AXI VIP の独立したポートの説明を示します。

表 2-3 に、 マスターまたはパススルー モード時の AXI VIP コアのインターフェイス信号を示します。READ_WRITE_MODE パラ メーターが READ_ONLY の場合、 m_axi_aw*、 m_axi_w*、 および m_axi_b* 信号はポート リ ス トには表示されません。 READ_WRITE_MODE パラ メーターが WRITE_ONLY の場合、 m_axi_ar* および m_axi_r* 信号はポート リ ス トには表示されません。 ポートの定義は AXI 仕様を参照して ください。

表 2‐2: AXI VIP の独立したポートの説明

信号名 I/O 幅 説明 有効化

aclk I 1 インターフェイス ク ロ ッ ク入力

aresetn I 1 インターフェイス リセッ ト入力 (アクティブ Low) HAS_ARESETN == 1

aclken I 1 インターフェイス ク ロ ッ ク イネーブル信号 (アクティブ High) HAS_ACLKEN == 1

表 2‐3: AXI マスターまたはパススルー VIP のポートの説明

信号名 I/O AXI4 AXI3AXI4‐LITE 幅 説明 有効化

m_axi_awid O x x ID_WIDTH 書き込みアドレス チャネルの ト ランザクシ ョ ン ID

ID_WIDTH > 0

m_axi_awaddr O x x xADDR_WIDTH

書き込みアドレス チャネルの ト ランザクシ ョ ン アドレス (12 ~ 64)

m_axi_awlen O x xAXI4: 8

AXI3: 4書き込みアドレス チャネルの ト ランザクシ ョ ン バース ト長 (0 ~ 255)

m_axi_awsize O x x 3 書き込みアドレス チャネルの転送サイズ コード (0 ~ 7)

SUPPORTS_NARROW(1) == 1

m_axi_awburst O x x 2 書き込みアドレス チャネルのバース ト タイプ コード (0 ~ 2)

HAS_BURST == 1

m_axi_awlock O x xAXI4: 2

AXI3: 1書き込みアドレス チャネルのア ト ミ ック アクセス タイプ (0 ~ 1)

HAS_LOCK == 1

m_axi_awcache O x x 4 書き込みアドレス チャネルのキャッシュ特性

HAS_CAHCE == 1

m_axi_awprot O x x x 3 書き込みアドレス チャネルの保護特性 HAS_PROT == 1

m_axi_awqos O x 4 書き込みアドレス チャネルのサービス品質 (QoS)

HAS_QOS == 1

m_axi_awregion O x 4 書き込みアドレス チャネルの領域インデッ クス

HAS_REGION == 1

m_axi_awuser O xAWUSER_

WIDTH書き込みアドレス チャネルのユーザー定義信号

AWUSER_WIDTH > 0

m_axi_awvalid O x x x 1 書き込みアドレス チャネルの Valid 信号

m_axi_awready I x x x 1 書き込みアドレス チャネルの Ready 信号

m_axi_arid O x x ID_WIDTH 読み出しアドレス チャネルの ト ランザクシ ョ ン ID

ID_WIDTH > 0

Page 12: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 12

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

m_axi_araddr O x x xADDR_WIDTH

読み出しアドレス チャネルの ト ランザクシ ョ ン アドレス (12 ~ 64)

m_axi_arlen O x xAXI4: 8

AXI3: 4読み出しアドレス チャネルの ト ランザクシ ョ ン バース ト長 (0 ~ 255)

AXI4/AXI3 では常に ON

m_axi_arsize O x x 3 読み出しアドレス チャネルの転送サイズ コード (0 ~ 7)

SUPPORTS_NARROW(1) == 1

m_axi_arburst O x x 2 読み出しアドレス チャネルのバース ト タイプ コード (0 ~ 2)

HAS_BURST == 1

m_axi_arlock O x xAXI4: 2

AXI3: 1読み出しアドレス チャネルのア ト ミ ック アクセス タイプ (0 ~ 1)

HAS_LOCK == 1

m_axi_arcache O x x 4 読み出しアドレス チャネルのキャッシュ特性

HAS_CAHCE == 1

m_axi_arprot O x x x 3 読み出しアドレス チャネルの保護特性 HAS_PROT == 1

m_axi_arqos O x 4 読み出しアドレス チャネルのサービス品質 (QoS)

HAS_QOS == 1

m_axi_arregion O x 4 読み出しアドレス チャネルの領域インデッ クス

HAS_REGION == 1

m_axi_aruser O xARUSER_

WIDTH読み出しアドレス チャネルのユーザー定義信号

ARUSER_WIDTH > 0

m_axi_arvalid O x x x 1 読み出しアドレス チャネルの Valid 信号

m_axi_arready I x x x 1 読み出しアドレス チャネルの Ready 信号

m_axi_wid O x ID_WIDTH ID_WIDTH > 0

m_axi_wlast O x x 1 書き込みデータ チャネルの 終データ ビート

m_axi_wdata O x x xDATA_WIDTH 書き込みデータ チャネルのデータ

m_axi_wstrb O x x xDATA_

WIDTH/8書き込みデータ チャネルのバイ ト スト ローブ

HAS_WSTRB == 1

m_axi_wuser O x xWUSER_WIDTH

書き込みデータ チャネルのユーザー定義信号

WUSER_WIDTH > 0

m_axi_wvalid O x x x 1 書き込みデータ チャネルの Valid 信号

m_axi_wready I x x x 1 書き込みデータ チャネルの Ready 信号

m_axi_rid O x ID_WIDTH 読み出しデータ チャネルの ト ランザクシ ョ ン ID

ID_WIDTH > 0

m_axi_rlast O x 1 読み出しデータ チャネルの 終データ ビート

m_axi_rdata O x xDATA_WIDTH 読み出しデータ チャネルのデータ

m_axi_rresp O x x 2 読み出しデータ チャネルの応答コード (0 ~ 3)

HAS_RRESP == 1

表 2‐3: AXI マスターまたはパススルー VIP のポートの説明 (続き)

信号名 I/O AXI4 AXI3AXI4‐LITE 幅 説明 有効化

Page 13: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 13

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

表 2-4 に、 AXI VIP コアをスレーブまたはパススルー モードに設定した場合のインターフェイス信号を示します。

m_axi_ruser O xRUSER_WIDTH

読み出しデータ チャネルのユーザー定義信号

RUSER_WIDTH > 0

m_axi_rvalid O x x 1 読み出しデータ チャネルの Valid 信号

m_axi_rready I x x 1 読み出しデータ チャネルの Ready 信号

m_axi_bid O x ID_WIDTH 書き込み応答チャネルの ト ランザクシ ョ ン ID

ID_WIDTH > 0

m_axi_bresp O x x 2 書き込み応答チャネルの応答コード(0 ~ 3)

HAS_BRESP > 0

m_axi_buser O xBUSER_WIDTH

書き込み応答チャネルのユーザー定義信号

BUSER_WIDTH > 0

m_axi_bvalid O x x 1 書き込み応答チャネルの Valid 信号

m_axi_bready I x x 1 書き込み応答チャネルの Ready 信号

注記:1. SUPPORTS_NARROW は、 Vivado IP インテグレーターでは SUPPORTS_NARROW_BURST と して扱われます。

表 2‐3: AXI マスターまたはパススルー VIP のポートの説明 (続き)

信号名 I/O AXI4 AXI3AXI4‐LITE 幅 説明 有効化

表 2‐4: AXI スレーブまたはパススルー VIP のポートの説明

信号名 I/O AXI4 AXI3AXI4‐LITE 幅 説明 有効化

s_axi_awid I x x ID_WIDTH 書き込みアドレス チャネルの ト ランザクシ ョ ン ID

ID_WIDTH > 0

s_axi_awaddr I x x xADDR_WIDTH

書き込みアドレス チャネルの ト ランザクシ ョ ン アドレス (12 ~ 64)

s_axi_awlen I x xAXI4: 8

AXI3: 4書き込みアドレス チャネルの ト ランザクシ ョ ン バース ト長 (0 ~ 255)

s_axi_awsize I x x 3 書き込みアドレス チャネルの転送サイズ コード (0 ~ 7)

SUPPORTS_NARROW(1) == 1

s_axi_awburst I x x 2 書き込みアドレス チャネルのバース ト タイプ コード (0 ~ 2)

HAS_BURST == 1

s_axi_awlock I x xAXI4: 2

AXI3: 1書き込みアドレス チャネルのア ト ミ ック アクセス タイプ (0 ~ 1)

HAS_LOCK == 1

s_axi_awcache I x x 4 書き込みアドレス チャネルのキャッシュ特性

HAS_CAHCE == 1

s_axi_awprot I x x x 3 書き込みアドレス チャネルの保護特性 HAS_PROT == 1

s_axi_awqos I x 4 書き込みアドレス チャネルのサービス品質 (QoS)

HAS_QOS == 1

s_axi_awregion I x 4 書き込みアドレス チャネルの領域インデッ クス

HAS_REGION == 1

s_axi_awuser I xAWUSER_

WIDTH書き込みアドレス チャネルのユーザー定義信号

AWUSER_WIDTH > 0

Page 14: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 14

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

s_axi_awvalid O x x x 1 書き込みアドレス チャネルの Valid 信号

s_axi_awready I x x x 1 書き込みアドレス チャネルの Ready信号

s_axi_arid I x x ID_WIDTH 読み出しアドレス チャネルの ト ランザクシ ョ ン ID

ID_WIDTH > 0

s_axi_araddr I x x xADDR_WIDTH

読み出しアドレス チャネルの ト ランザクシ ョ ン アドレス (12 ~ 64)

s_axi_arlen I x xAXI4: 8

AXI3: 4読み出しアドレス チャネルの ト ランザクシ ョ ン バース ト長 (0 ~ 255)

s_axi_arsize I x x 3 読み出しアドレス チャネルの転送サイズ コード (0 ~ 7)

SUPPORTS_NARROW(1) == 1

s_axi_arburst I x x 2 読み出しアドレス チャネルのバース ト タイプ コード (0 ~ 2)

HAS_BURST == 1

s_axi_arlock I x xAXI4: 2

AXI3: 1読み出しアドレス チャネルのア ト ミ ック アクセス タイプ (0 ~ 1)

HAS_LOCK == 1

s_axi_arcache I x x 4 読み出しアドレス チャネルのキャッシュ特性

HAS_CAHCE == 1

s_axi_arprot I x x x 3 読み出しアドレス チャネルの保護特性 HAS_PROT == 1

s_axi_arqos I x 4 読み出しアドレス チャネルのサービス品質 (QoS)

HAS_QOS == 1

s_axi_arregion I x 4 読み出しアドレス チャネルの領域インデッ クス

HAS_REGION == 1

s_axi_aruser I xARUSER_

WIDTH読み出しアドレス チャネルのユーザー定義信号

ARUSER_WIDTH > 0

s_axi_arvalid O x x x 1 読み出しアドレス チャネルの Valid信号

s_axi_arready I x x x 1 読み出しアドレス チャネルの Ready 信号

s_axi_wid I x ID_WIDTH

s_axi_wlast I x x 1 書き込みデータ チャネルの 終データ ビート

s_axi_wdata I x x xDATA_WIDTH 書き込みデータ チャネルのデータ

s_axi_wstrb I x x xDATA_

WIDTH/8書き込みデータ チャネルのバイ ト ス トローブ

HAS_WSTRB == 1

s_axi_wuser I x xWUSER_WIDTH

書き込みデータ チャネルのユーザー定義信号

WUSER_WIDTH > 0

s_axi_wvalid O x x x 1 書き込みデータ チャネルの Valid 信号

s_axi_wready I x x x 1 書き込みデータ チャネルの Ready 信号

s_axi_rid I x x ID_WIDTH 読み出しデータ チャネルの ト ランザクシ ョ ン ID

ID_WIDTH > 0

表 2‐4: AXI スレーブまたはパススルー VIP のポートの説明 (続き)

信号名 I/O AXI4 AXI3AXI4‐LITE 幅 説明 有効化

Page 15: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 15

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

s_axi_rlast I x x 1 読み出しデータ チャネルの 終データ ビート

s_axi_rdata I x x xDATA_WIDTH 読み出しデータ チャネルのデータ

s_axi_rresp I x x x 2 読み出しデータ チャネルの応答コード (0 ~ 3)

HAS_RRESP == 1

s_axi_ruser I x xRUSER_WIDTH

読み出しデータ チャネルのユーザー定義信号

RUSER_WIDTH > 0

s_axi_rvalid O x x x 1 読み出しデータ チャネルの Valid 信号

s_axi_rready I x x x 1 読み出しデータ チャネルの Ready 信号

s_axi_bid I x x ID_WIDTH 書き込み応答チャネルの ト ランザクシ ョ ン ID

ID_WIDTH > 0

s_axi_bresp I x x x 2 書き込み応答チャネルの応答コード (0 ~ 3)

HAS_BRESP > 0

s_axi_buser I x xBUSER_WIDTH

書き込み応答チャネルのユーザー定義信号

BUSER_WIDTH > 0

s_axi_bvalid O x x x 1 書き込み応答チャネルの Valid 信号

s_axi_bready I x x x 1 書き込み応答チャネルの Ready 信号

注記:1. SUPPORTS_NARROW は、 Vivado IP インテグレーターでは SUPPORTS_NARROW_BURST と して扱われます。

表 2‐4: AXI スレーブまたはパススルー VIP のポートの説明 (続き)

信号名 I/O AXI4 AXI3AXI4‐LITE 幅 説明 有効化

Page 16: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 16

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

AXI プロ ト コル チェ ックと説明

表 2-5 に、 AXI プロ ト コル チェッ ク とその説明を示します。 これらは基本的に、 『AXI Protocol Checker LogiCORE IP 製品ガイ ド』 (PG101) [参照 4] に記載されたアサーシ ョ ンと同じものです。

表 2‐5: AXI プロ ト コル チェ ックと説明

プロ ト コル チェ ック名サポート される

プロ ト コル説明

AXI_ERRM_AWADDR_BOUNDARY AXI4/AXI3 書き込みバース トは 4KB 境界を越えるこ とができません。

AXI_ERRM_AWADDR_WRAP_ALIGN AXI4/AXI3 バース ト タイプが WRAP の書き込みト ランザクシ ョ ンは、アドレスが境界に揃っている必要があ り ます。

AXI_ERRM_AWBURST AXI4/AXI3 AWVALID が High のと き、 AWBURST の値を 2’b11 にはできません。

AXI_ERRM_AWLEN_LOCK AXI4/AXI3 排他アクセス ト ランザクシ ョ ンの長さは 16 ビート を超えることができません。

AXI_ERRM_AWCACHE AXI4/AXI3 キャ ッシュ可能でない場合 (AWCACHE[1] == 1'b0)、AWCACHE = 2'b00 とする必要があ り ます。

AXI_ERRM_AWLEN_FIXED AXI4/AXI3 バース ト タイプが FIXED のト ランザクシ ョ ンの長さは 16 ビート を超えるこ とができません。

AXI_ERRM_AWLEN_WRAP AXI4/AXI3 バース ト タイプが WRAP の書き込みト ランザクシ ョ ンの長さは 2、 4、 8、 または 16 とする必要があ り ます。

AXI_ERRM_AWSIZE AXI4/AXI3 書き込み転送のサイズは、 データ インターフェイスの幅を超えるこ とができません。

AXI_ERRM_AWVALID_RESET AXI4/AXI3/Lite ARESETn が High に移行した後の 初のサイクルでは、AWVALID は Low です。

AXI_ERRM_AWADDR_STABLE AXI4/AXI3/Liteハンドシェイ ク チェッ ク : AWVALID がアサート され、AWREADY が Low のと き、 AWADDR は安定している必要があり ます。

AXI_ERRM_AWBURST_STABLE AXI4/AXI3ハンドシェイ ク チェッ ク : AWVALID がアサート され、AWREADY が Low のと き、 AWBURST は安定している必要があ り ます。

AXI_ERRM_AWCACHE_STABLE AXI4/AXI3ハンドシェイ ク チェッ ク : AWVALID がアサート され、AWREADY が Low のと き、 AWCACHE は安定している必要があ り ます。

AXI_ERRM_AWID_STABLE AXI4/AXI3ハンドシェイ ク チェッ ク : AWVALID がアサート され、AWREADY が Low のと き、 AWID は安定している必要があ ります。

AXI_ERRM_AWLEN_STABLE AXI4/AXI3ハンドシェイ ク チェッ ク : AWVALID がアサート され、AWREADY が Low のと き、AWLEN は安定している必要があ ります。

AXI_ERRM_AWLOCK_STABLE AXI4/AXI3ハンドシェイ ク チェッ ク : AWVALID がアサート され、AWREADY が Low のと き、 AWLOCK は安定している必要があり ます。

AXI_ERRM_AWPROT_STABLE AXI4/AXI3/Liteハンドシェイ ク チェッ ク : AWVALID がアサート され、AWREADY が Low のと き、 AWPROT は安定している必要があり ます。

Page 17: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 17

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

AXI_ERRM_AWSIZE_STABLE AXI4/AXI3ハンドシェイ ク チェッ ク : AWVALID がアサート され、AWREADY が Low のと き、 AWSIZE は安定している必要があり ます。

AXI_ERRM_AWQOS_STABLE AXI4/AXI3ハンドシェイ ク チェッ ク : AWVALID がアサート され、AWREADY が Low のと き、 AWQOS は安定している必要があり ます。

AXI_ERRM_AWREGION_STABLE AXI4ハンドシェイ ク チェッ ク : ARVALID がアサート され、AWREADY が Low のと き、 AWREGION は安定している必要があ り ます。

AXI_ERRM_AWVALID_STABLE AXI4/AXI3/Liteハンドシェイ ク チェッ ク : AWVALID をアサート した場合、AWREADY が High になるまでアサート したままにする必要があ り ます。

AXI_RECS_AWREADY_MAX_WAIT AXI4/AXI3/Lite AWVALID がアサート されてから MAXWAITS サイクルの間、AWREADY をアサートするこ とを推奨します。

AXI_ERRM_WDATA_NUM AXI4/AXI3

書き込みデータ アイテムの数は、対応するアドレスの AWLEN に一致する必要があ り ます。 これは、 次のいずれかが発生すると ト リガーされます。

• 書き込みデータが到着した時点で WLAST がセッ ト されており、 WDATA カウン トが AWLEN と等し くない

• 書き込みデータが到着した時点で WLAST がセッ ト されておらず、 WDATA カウン トが AWLEN と等しい

• ADDR が到着した時点で WLAST が既に受信されており、WDATA カウン トが AWLEN と等し くない

AXI_ERRM_WSTRB AXI4/AXI3/Lite書き込みス ト ローブは、 開始アドレス、 転送サイズ、 およびビート数で定義された適切なバイ ト レーンに対してのみアサートする必要があ り ます。

AXI_ERRM_WVALID_RESET AXI4/AXI3/Lite ARESETn が High に移行した後の 初のサイクルでは、WVALID は Low です。

AXI_ERRM_WDATA_STABLE AXI4/AXI3/Lite ハンドシェイ ク チェッ ク : WVALID がアサート され、WREADY が Low のと き、 WDATA は安定している必要があ り ます。

AXI_ERRM_WLAST_STABLE AXI4/AXI3 ハンドシェイ ク チェッ ク : WVALID がアサート され、WREADY が Low のと き、 WLAST は安定している必要があ り ます。

AXI_ERRM_WSTRB_STABLE AXI4/AXI3/Lite ハンドシェイ ク チェッ ク : WVALID がアサート され、WREADY が Low のと き、 WSTRB は安定している必要があ り ます。

AXI_ERRM_WVALID_STABLE AXI4/AXI3/Liteハンドシェイ ク チェッ ク : WVALID をアサート した場合、WREADY が High になるまでアサート したままにする必要があり ます。

AXI_RECS_WREADY_MAX_WAIT AXI4/AXI3/Lite WVALID がアサート されてから MAXWAITS サイクルの間、WREADY をアサートするこ とを推奨します。

AXI_ERRS_BRESP_WLAST AXI4/AXI3 後の書き込みデータのハンドシェイ クが完了するまで、スレーブは BVALID を High に移行できません。

AXI_ERRS_BRESP_EXOKAY AXI4/AXI3 EXOKAY 書き込み応答は、 排他書き込みアクセスに対してのみ返すこ とができます。

AXI_ERRS_BVALID_RESET AXI4/AXI3/Lite ARESETn が High に移行した後の 初のサイクルでは、BVALID は Low です。

表 2‐5: AXI プロ ト コル チェ ックと説明 (続き)

プロ ト コル チェ ック名サポート される

プロ ト コル説明

Page 18: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 18

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

AXI_ERRS_BRESP_AW AXI4/AXI3/Lite 書き込みアドレスのハンドシェイ クが完了するまで、 スレーブは BVALID を High に移行できません。

AXI_ERRS_BID_STABLE AXI4/AXI3 ハンドシェイ ク チェッ ク : BVALID がアサート され、 BREADY が Low のと き、 BID は安定している必要があ り ます。

AXI_ERRS_BRESP_STABLE AXI4/AXI3/Lite ハンドシェイ ク チェッ ク : BVALID がアサート され、 BREADY が Low のと き、 BRESP は安定している必要があ り ます。

AXI_ERRS_BVALID_STABLE AXI4/AXI3/Liteハンドシェイ ク チェッ ク : BVALID をアサート した場合、BREADY が High になるまでアサート したままにする必要があり ます。

AXI_RECM_BREADY_MAX_WAIT AXI4/AXI3/Lite BVALID がアサート されてから MAXWAITS サイクルの間、BREADY をアサートするこ とを推奨します。

AXI_ERRM_ARADDR_BOUNDARY AXI4/AXI3 読み出しバース トは 4KB 境界を越えるこ とができません。

AXI_ERRM_ARADDR_WRAP_ALIGN AXI4/AXI3 バース ト タイプが WRAP の読み出し ト ランザクシ ョ ンは、アドレスが境界に揃っている必要があ り ます。

AXI_ERRM_ARBURST AXI4/AXI3 ARVALID が High のと き、 ARBURST の値を 2’b11 にはできません。

AXI_ERRM_ARLEN_LOCK AXI4/AXI3 排他アクセス ト ランザクシ ョ ンの長さは 16 ビート を超えることができません。

AXI_ERRM_ARCACHE AXI4/AXI3 ARVALID が High の場合、 ARCACHE[1] が Low なら ARCACHE[3:2] も Low にする必要があ り ます。

AXI_ERRM_ARLEN_FIXED AXI4/AXI3 バース ト タイプが FIXED のト ランザクシ ョ ンの長さは 16 ビート を超えるこ とができません。

AXI_ERRM_ARLEN_WRAP AXI4/AXI3 バース ト タイプが WRAP の読み出し ト ランザクシ ョ ンの長さは 2、 4、 8、 または 16 とする必要があ り ます。

AXI_ERRM_ARSIZE AXI4/AXI3 読み出し転送のサイズは、 データ インターフェイスの幅を超えるこ とができません。

AXI_ERRM_ARVALID_RESET AXI4/AXI3/Lite ARESETn が High に移行した後の 初のサイクルでは、ARVALID は Low です。

AXI_ERRM_ARADDR_STABLE AXI4/AXI3/Lite ARVALID がアサート され、 ARREADY が Low のと き、ARADDR は安定している必要があ り ます。

AXI_ERRM_ARBURST_STABLE AXI4/AXI3 ARVALID がアサート され、 ARREADY が Low のと き、ARBURST は安定している必要があ り ます。

AXI_ERRM_ARCACHE_STABLE AXI4/AXI3 ARVALID がアサート され、 ARREADY が Low のと き、ARCACHE は安定している必要があ り ます。

AXI_ERRM_ARID_STABLE AXI4/AXI3 ARVALID がアサート され、 ARREADY が Low のと き、 ARID は安定している必要があ り ます。

AXI_ERRM_ARLEN_STABLE AXI4/AXI3 ARVALID がアサート され、ARREADY が Low のと き、ARLEN は安定している必要があ り ます。

AXI_ERRM_ARLOCK_STABLE AXI4/AXI3 ARVALID がアサート され、 ARREADY が Low のと き、ARLOCK は安定している必要があ り ます。

AXI_ERRM_ARPROT_STABLE AXI4/AXI3/Lite ARVALID がアサート され、 ARREADY が Low のと き、ARPROT は安定している必要があ り ます。

表 2‐5: AXI プロ ト コル チェ ックと説明 (続き)

プロ ト コル チェ ック名サポート される

プロ ト コル説明

Page 19: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 19

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

AXI_ERRM_ARSIZE_STABLE AXI4/AXI3 ARVALID がアサート され、 ARREADY が Low のと き、ARSIZE は安定している必要があ り ます。

AXI_ERRM_ARQOS_STABLE AXI4/AXI3 ARVALID がアサート され、ARREADY が Low のと き、ARQOS は安定している必要があ り ます。

AXI_ERRM_ARREGION_STABLE AXI4 ARVALID がアサート され、 ARREADY が Low のと き、ARREGION は安定している必要があ り ます。

AXI_ERRM_ARVALID_STABLE AXI4/AXI3/Lite ARVALID をアサート した場合、 ARREADY が High になるまでアサート したままにする必要があ り ます。

AXI_RECS_ARREADY_MAX_WAIT AXI4/AXI3/Lite ARVALID がアサート されてから MAXWAITS サイ クルの間、ARREADY をアサートするこ とを推奨します。

AXI_ERRS_RDATA_NUM AXI4/AXI3 読み出しデータ アイテムの数は、 対応する ARLEN に一致する必要があ り ます。

AXI_ERRS_RID AXI4/AXI3

読み出しデータは、 関係するアドレスに常に続く必要があ ります。 したがって、 スレーブは未処理の読み出し ト ランザクシ ョ ンに一致する ID の読み出しデータしか与えるこ とができません。

AXI_ERRS_RRESP_EXOKAY AXI4/AXI3 EXOKAY 読み出し応答は、 排他読み出しアクセスに対してのみ返すこ とができます。

AXI_ERRS_RVALID_RESET AXI4/AXI3/Lite ARESETn が High に移行した後の 初のサイクルでは、RVALID は Low です。

AXI_ERRS_RDATA_STABLE AXI4/AXI3/Lite RVALID がアサート され、 RREADY が Low のと き、 RDATA は安定している必要があ り ます。

AXI_ERRS_RID_STABLE AXI4/AXI3 RVALID がアサート され、 RREADY が Low のと き、 RID は安定している必要があ り ます。

AXI_ERRS_RLAST_STABLE AXI4/AXI3 RVALID がアサート され、 RREADY が Low のと き、 RLAST は安定している必要があ り ます。

AXI_ERRS_RRESP_STABLE AXI4/AXI3/Lite RVALID がアサート され、 RREADY が Low のと き、 RRESP は安定している必要があ り ます。

AXI_ERRS_RVALID_STABLE AXI4/AXI3/Lite RVALID をアサート した場合、 RREADY が High になるまでアサート したままにする必要があ り ます。

AXI_RECM_RREADY_MAX_WAIT AXI4/AXI3/Lite RVALID がアサート されてから MAXWAITS サイクルの間、RREADY をアサートするこ とを推奨します。

AXI_ERRM_EXCL_ALIGN AXI4/AXI3 排他アクセスのアドレスはト ランザクシ ョ ンに含まれるバイ ト総数に揃っている必要があ り ます。

AXI_ERRM_EXCL_LEN AXI4/AXI3 排他アクセス バース トで転送されるバイ ト数は 2 のべき乗、すなわち 1、 2、 4、 8、 16、 32、 64、 または 128 バイ トです。

AXI_RECM_EXCL_MATCH AXI4/AXI3排他書き込みのアドレス、 サイズ、 および長さは、 同じ ID を持つ直前の排他読み出しのアドレス、 サイズ、 および長さに揃えるこ とを推奨します。

AXI_ERRM_EXCL_MAX AXI4/AXI3 排他バース トで転送される 大バイ ト数は 128 です。

AXI_RECM_EXCL_PAIR AXI4/AXI3 すべての排他書き込みの前には、 同じ ID を持つ未処理の排他読み出しが存在するこ とを推奨します。

表 2‐5: AXI プロ ト コル チェ ックと説明 (続き)

プロ ト コル チェ ック名サポート される

プロ ト コル説明

Page 20: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 20

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

AXI_ERRM_AWUSER_STABLE AXI4/AXI3 AWVALID がアサート され、 AWREADY が Low のと き、AWUSER は安定している必要があ り ます。

AXI_ERRM_WUSER_STABLE AXI4/AXI3 WVALID がアサート され、 WREADY が Low のと き、 WUSER は安定している必要があ り ます。

AXI_ERRS_BUSER_STABLE AXI4/AXI3 BVALID がアサート され、 BREADY が Low のと き、 BUSER は安定している必要があ り ます。

AXI_ERRM_ARUSER_STABLE AXI4/AXI3 ARVALID がアサート され、 ARREADY が Low のと き、ARUSER は安定している必要があ り ます。

AXI_ERRS_RUSER_STABLE AXI4/AXI3 RVALID がアサート され、 RREADY が Low のと き、 RUSER は安定している必要があ り ます。

AXI_AUXM_RCAM_OVERFLOW AXI4/AXI3/Lite 読み出し CAM オーバーフロー。 MAXRBURSTS パラ メーターを大き くする必要があ り ます。

AXI_AUXM_RCAM_UNDERFLOW AXI4/AXI3/Lite 読み出し CAM アンダーフロー

AXI_AUXM_WCAM_OVERFLOW AXI4/AXI3/Lite 書き込み CAM オーバーフロー。 MAXWBURSTS パラ メーターを大き くする必要があ り ます。

AXI_AUXM_WCAM_UNDERFLOW AXI4/AXI3/Lite 書き込み CAM アンダーフロー

AXI_AUXM_EXCL_OVERFLOW AXI4/AXI3 排他アクセス モニター オーバーフロー。 EXMON_WIDTH パラメーターを大き くする必要があ り ます。

AXI4LITE_ERRS_BRESP_EXOKAY Lite スレーブが AXI4-Lite インターフェイスに EXOKAY 応答を送信するこ とはできません。

AXI4LITE_ERRS_RRESP_EXOKAY Lite スレーブが AXI4-Lite インターフェイスに EXOKAY 応答を送信するこ とはできません。

AXI4LITE_AUXM_DATA_WIDTH Lite DATA_WIDTH パラ メーターは 32 または 64 です。

表 2‐5: AXI プロ ト コル チェ ックと説明 (続き)

プロ ト コル チェ ック名サポート される

プロ ト コル説明

Page 21: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 21

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 2 章:製品仕様

ザイリンクス固有のコンフ ィギュレーション チェックと説明

表 2-6 に、 ザイ リ ンクス固有のコンフ ィギュレーシ ョ ン チェッ ク とその説明を示します。

表 2‐6:ザイリンクス固有のコンフ ィギュレーシ ョ ン  チェ ックと説明

プロ ト コル チェ ック名サポート される

プロ ト コル説明

XILINX_AW_SUPPORTS_NARROW_BURST AXI4/AXI3狭い転送をサポート しない接続の場合、 AW マスターは AWLEN > 0 かつ AWSIZE が定義したインターフェイス DATA_WIDTH よ り も小さい転送を発行できません。

XILINX_AR_SUPPORTS_NARROW_BURST AXI4/AXI3狭い転送をサポート しない接続の場合、 AR マスターは ARLEN > 0 かつ ARSIZE が定義したインターフェイス DATA_WIDTH よ り も小さい転送を発行できません。

XILINX_AW_SUPPORTS_NARROW_CACHE AXI4/AXI3狭い転送をサポート しない接続の場合、 AW マスターは AWLEN > 0 かつ AWCACHE 変更可能ビッ トがアサートされていない転送を発行できません。

XILINX_AR_SUPPORTS_NARROW_CACHE AXI4/AXI3狭い転送をサポート しない接続の場合、 AR マスターは ARLEN > 0 かつ ARCACHE 変更可能ビッ トがアサート されていない転送を発行できません。

XILINX_AW_MAX_BURST AXI4/AXI3 AW マスターは、 大バース ト長の設定値よ り大きい AWLEN を発行できません。

XILINX_AR_MAX_BURST AXI4/AXI3 AR マスターは、 大バース ト長の設定値よ り大きい ARLEN を発行できません。

XILINX_AWVALID_RESET AXI4/AXI3/Lite ARESETn が High に移行した後の 初のサイ クルでは、AWREADY は Low です。

XILINX_WVALID_RESET AXI4/AXI3/Lite ARESETn が High に移行した後の 初のサイ クルでは、WREADY は Low です。

XILINX_BVALID_RESET AXI4/AXI3/Lite ARESETn が High に移行した後の 初のサイ クルでは、BREADY は Low です。

XILINX_ARVALID_RESET AXI4/AXI3/Lite ARESETn が High に移行した後の 初のサイ クルでは、ARREADY は Low です。

XILINX_RVALID_RESET AXI4/AXI3/Lite ARESETn が High に移行した後の 初のサイ クルでは、RREADY は Low です。

ARESET_XCHECK AXI4/AXI3/Lite AREST_N は、 1 ク ロ ッ ク サイ クル後に X/Z になるこ とはできません。

XILINX_AXI_ERRM_RESET_PULSE_WIDTH AXI4/AXI3/Lite

ARESETN は、Low に移行した後少なく と も 16 ク ロ ッ ク サイクルの間、 Low のままにする必要があ り ます。 詳細は、 『Vivado Design Suite: AXI リ ファレンス ガイ ド』 (UG1037) [参照 3] を参照してください。

Page 22: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 22

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 3章

コアを使用するデザインこの章では、 コアを使用した設計をよ り容易にするためのガイ ド ラインおよび追加情報を紹介します。

一般的なデザイン  ガイド ライン

AXI VIP コアは、 AXI マスター VIP の場合は図 3-1、 AXI スレーブ VIP の場合は図 3-2、 AXI パススルー VIP の場合は図 3-3 に示すよ うにシステムに挿入する必要があ り ます。

X-Ref Target - Figure 3-1

図 3‐1: AXI マスター VIP のトポロジ例

AXI Master VIP AXI Slave System

AW/W/B

AR/R

X18495-121316

Page 23: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 23

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 3 章: コアを使用するデザイン

クロッキング

このセクシ ョ ンは、 この IP コアには適用されません。

リセッ ト

AXI VIP には、 1 つのアクティブ Low リセッ ト (aresetn) が必要です。 この リセッ トは aclk に同期します。 この リセッ トは、 HAS_ARESETN に基づくオプシ ョ ンです。

X-Ref Target - Figure 3-2

図 3‐2: AXI スレーブ VIP のトポロジ例

AXI Slave VIP AXI Master System

AW/W/B

AR/R

X18496-121316

X-Ref Target - Figure 3-3

図 3‐3: AXI パススルー VIP のトポロジ例

AXI Master System AXI Slave System

AW/W/B

AR/RAXI Pass-Through

VIP

AW/W/B

AR/R

X18497-121316

Page 24: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 24

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 4章

デザイン  フローの手順この章では、 コアのカスタマイズと生成、 制約、 およびシ ミ ュレーシ ョ ン/合成/インプリ メンテーシ ョ ンの手順について説明します。 一般的な Vivado® デザイン フローおよび IP インテグレーターの詳細は、 次の Vivado Design Suite ユーザー ガイ ドを参照してください。

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

• 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 6]

• 『Vivado Design Suite ユーザー ガイ ド : 入門』 (UG910) [参照 7]

• 『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900) [参照 8]

コアのカスタマイズおよび生成

こ こでは、 ザイ リ ンクス ツールを使用し、 Vivado Design Suite でコアをカスタマイズおよび生成する方法について説明します。

Vivado IP インテグレーターでコアをカスタマイズおよび生成する場合は、 『Vivado Design Suite ユーザー ガイ ド : IP インテグレーターを使用した IP サブシステムの設計』 (UG994) [参照 5] を参照して ください。 IP インテグレーターは、 デザインの検証または生成時に一部のコンフ ィギュレーシ ョ ン値を自動的に計算する場合があ り ます。 値が変わるかど うかを確認するには、 この章のパラ メーターの説明を参照してください。 パラ メーター値を確認するには、Tcl コンソールから validate_bd_design コマンドを実行してください。

IP はユーザー デザインに合わせてカスタマイズできます。 それには、 IP コアに関連する各種パラ メーターの値を次の手順に従って指定します。

1. Vivado IP カタログから IP を選択します。

2. 選択した IP をダブルク リ ッ クするか、 ツールバーまたは右ク リ ッ ク メニューから [Customize IP] コマンドをクリ ッ ク します。

詳細は、 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 6] および 『Vivado Design Suite ユーザー ガイ ド : 入門』 (UG910) [参照 7] を参照してください。

注記: この章の図には Vivado 統合設計環境 (IDE) のスク リーンシ ョ ッ トが使用されていますが、 現在のバージ ョ ンとはレイアウ トが異なる場合があ り ます。

Page 25: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 25

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

図 4-1 に、 AXI VIP Vivado IDE の [Basic Settings] タブの設定画面を示します。

ランタイム パラ メーターの説明は、 表 2-1 を参照してください。

• [Component Name]: このコアに対して生成される出力ファイルのベース名です。 初の 1 文字は必ず小文字アルファベッ ト と し、 2 文字目以降は a ~ z、 0 ~ 9、 アンダースコア (_) を自由に組み合わせるこ とができます。

• [INTERFACE MODE] – プロ ト コルのモードをマスター、 スレーブ、 パススルーのいずれかに設定します。

• [PROTOCOL] – AXI プロ ト コルを選択します。

• [READ_WRITE MODE] – AXI 読み出しまたは書き込みモードを有効にします。

• [ADDRESS WIDTH] – アドレス幅を選択します。 デフォルト値は 32 です。

• [DATA WIDTH] – データ幅を選択します。 デフォルト値は 32 です。

• [ID WIDTH] – ID 幅を選択します。 デフォルト値は 0 です。

• [User signal widths] – 各ユーザー信号の幅を選択します。 デフォルト値は 0 です。

X-Ref Target - Figure 4-1

図 4‐1: AXI VIP IP のカスタマイズ画面 – [Basic Settings] タブ

Page 26: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 26

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

図 4-2 に、 AXI VIP Vivado IDE の [Advanced Settings] タブの設定画面を示します。 ユーザー パラ メーターの詳細は、表 2-1 を参照して ください。

ユーザー パラメーター

Vivado IDE のフ ィールド とユーザー パラ メーターの対応関係は、 表 2-1 を参照してください。 ユーザー パラ メーターは Tcl コンソールで使用します。

出力の生成

詳細は 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 6] を参照してください。

AXI VIP の出力ファイルは <project_name>/<project_name>.srcs/sources_1/ip/<component_name> ディ レク ト リに置かれ、 このディ レク ト リ を <ip_source_dir> と呼びます。 以降のセクシ ョ ンでは、 関連するファイルまたはディ レク ト リについて説明します。

X-Ref Target - Figure 4-2

図 4‐2: AXI VIP IP のカスタマイズ画面 – [Advanced Settings] タブ

Page 27: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 27

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

Vivado デザイン  ツールのプロジェク ト  ファイル

Vivado デザイン ツールのプロジェク ト ファ イルは、 <ip_source_dir> のルートに格納されます。

IP ソース

IP ソースは、 <ip_source_dir> のサブディ レク ト リに格納されます。

Vivado IP インテグレーター内の AXI VIP

このセクシ ョ ンでは、 AXI VIP をデザインおよびテス トベンチ環境で使用する方法について説明します。 図 4-3 に、AXI VIP を使用したデザイン例を示します。

AXI VIP は SystemVerilog ク ラス ライブラ リで、 ほとんどのシ ミ ュレータでサポート されます。 AXI VIP は、 コア デザインに関して Universal Verification Methodology (UVM) と同様の命名規則と構造を使用します。AXI VIP は、制約付きランダム検証やト ランザクシ ョ ン レベル モデリ ング (TLM) などの高度な検証手法を使用します。 これは SystemVerilog でコーディングされます。 AXI VIP は 2 つの部分で構成されます。 1 つは従来の IP (静的/物理的世界のモジュール) 同様にインスタンシエート され、 も う 1 つは検証環境の動的な世界で使用されます。 AXI VIP は、 仮想インターフェイスを使用して静的な世界を動的な世界に接続する IP です。 仮想インターフェイスは、 動的な世界のオブジェク ト と静的な世界のモジュールおよびインターフェイスをつなぐ唯一のメカニズムです。

表 4‐1: Vivado デザイン  ツールのプロジェク ト  ファイル

名称 説明

<component_name>.xciVivado ツールの IP コンフ ィギュレーシ ョ ン オプシ ョ ン ファ イル。 このファイルは、 Vivado ツールの任意のデザインにインポートでき、 その他すべての IP ソース ファ イルの生成に使用できます。

<component_name>.{veo|vho} AXI VIP インスタンシエーシ ョ ン テンプレート。

表 4‐2: IP ソース

名称 説明

hdl/*.sv AXI VIP ソース ファイル。

synth/<component_name>.sv AXI VIP によって生成された合成用 上位ファイル。 オプシ ョ ンで合成ターゲッ ト を選択した場合のみ生成されます。

sim/<component_name>.sv AXI VIP によって生成されたシ ミ ュレーシ ョ ン用 上位ファイル。 オプシ ョ ンでシ ミ ュレーシ ョ ン ターゲッ ト を選択した場合のみ生成されます。

X-Ref Target - Figure 4-3

図 4‐3: AXI VIP を使用したデザイン

AXI Master VIP

AXI Pass-Through VIP

AXI System

AXI Slave VIP

AXI Slave IP AXI Pass-Through VIPAXI Master IP

X18577-121316

Page 28: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 28

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

AXI マスター VIP 

図 4-4 に、 AXI マスター VIP とそのテス トベンチを示します。 テス トベンチは次の 3 つの部分で構成されます。

• ユーザー環境

• マスター エージェン ト

• AXI マスター VIP

ユーザー環境とマスター エージェン トは動的な世界にあ り、 AXI マスター VIP は静的な世界にあ り ます。 ユーザー環境はマスター エージェン ト と通信し、 マスター エージェン トは仮想インターフェイスを介して AXI VIP インターフェイス と通信します。 マスター エージェン トには次の 4 つのクラス メ ンバーがあ り ます。

• マスター書き込みド ライバー

• マスター読み出し ド ライバー

• モニター

• 仮想インターフェイス

マスター エージェン トの詳細は、 付録 D 「AXI VIP エージェン ト とフロー メ ソ ド ロジ」 を参照して ください。

X-Ref Target - Figure 4-4

図 4‐4: AXI VIP マスターのテスト  ベンチ

Test Bench

AXI System

Interface

Master Agent

Master Write Driver

Master Read Driver

Monitor

Virtual Interface

User Environment

Dynamic World

Static World

AXI Master VIP

X18578-121316

Page 29: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 29

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

図 4-5 に、 書き込みト ランザクシ ョ ンを作成して AXI VIP インターフェイスに送信する方法を示します。 まず、 ユーザー環境がト ランザクシ ョ ン タイプの変数を宣言した後、 マスター書き込みド ライバーに対して新規ト ランザクシ ョ ンへのハンドルを要求します。 create_transaction の間、 マスター書き込みド ライバーは AXI VIP の物理的な設定に基づいて ト ランザクシ ョ ンに対するプロパティを設定します。

ユーザー環境は、 このハンドルを使用してアクセス メ ソ ッ ドを使用した書き込みまたはランダム化によ り、 ト ランザクシ ョ ンのメンバーをセッ ト アップします。 ト ランザクシ ョ ンの設定が完了したら、 マスター書き込みド ライバーに ト ランザクシ ョ ンが返され、 マスター書き込みド ライバーが仮想インターフェイスを介して AXI VIP にト ランザクシ ョ ンを送信します。 これで、 AXI VIP のインターフェイス ピンが動作を開始します。 読み出し ト ランザクシ ョ ンのフローも同様の手順に従いますが、 ト ランザクシ ョ ンに対するハンドルのソース と してマスター読み出しド ライバーを使用する点のみ異なり ます。

AXI スレーブ VIP 

図 4-6 に、 AXI スレーブ VIP とそのテス トベンチを示します。 テス トベンチは次の 3 つの部分で構成されます。

• ユーザー環境

• スレーブ エージェン ト (メモ リ モデルなし )

• AXI スレーブ VIP

ユーザー環境とスレーブ エージェン トは動的な世界にあ り、 AXI スレーブ VIP は静的な世界にあ り ます。 ユーザー環境はスレーブ エージェン ト と通信し、 スレーブ エージェン トは仮想インターフェイスを介して AXI VIP インターフェイス と通信します。 メモ リ モデルなしのスレーブ エージェン トには次の 4 つのク ラス メ ンバーがあ り ます。

• スレーブ書き込みド ライバー

• スレーブ読み出し ド ライバー

• モニター

• 仮想インターフェイス

スレーブ エージェン トの詳細は、 付録 D 「AXI VIP エージェン ト とフロー メ ソ ド ロジ」 を参照して ください。

X-Ref Target - Figure 4-5

図 4‐5:書き込みト ランザクシ ョ ン  フロー

Master Agent

Wiggling Pins of Interface

User Environment

Declare Write Transaction

Fill In/Randomize Transaction

Master Write Driver

create_transaction

send

X18579-121316

Page 30: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 30

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

図 4-7 に、 書き込み応答ト ランザクシ ョ ンを作成して AXI VIP インターフェイスに送信する方法を示します。 まず、ユーザー環境がト ランザクシ ョ ン タイプの変数を宣言します。 ユーザー環境は、 この変数を使用して ト ランザクシ ョ ンを管理します。 次に、 ユーザー環境は get_wr_reactive を呼び出します。 これは、 書き込みト ランザクシ ョ ンがスレーブ書き込みド ライバーによって受信されるまでブロッ ク します。

スレーブ書き込みド ライバーは、 書き込みコマンドを受信するまで待ってから ト ランザクシ ョ ンへのハンドルを返します。 ユーザー環境は、 ランダム化またはト ランザクシ ョ ン ク ラスのメンバー関数を使用して ト ランザクシ ョ ンの応答部分に書き込みます。 次に、 スレーブ書き込みド ライバーは仮想インターフェイスを介して AXI VIP インターフェイスに ト ランザクシ ョ ンを送信します。 これで、 AXI VIP インターフェイスに関連するピンが動作を開始します。 読み出し応答ト ランザクシ ョ ンのフローも同様の手順に従います。

X-Ref Target - Figure 4-6

図 4‐6: AXI VIP スレーブのテスト  ベンチ

Test Bench

AXI System

Interface

Slave Agent

Slave Write Driver

Slave Read Driver

Monitor

Virtual Interface

User Environment

Dynamic World

Static World

AXI Slave VIP

X18580-121316

Page 31: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 31

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

シンプルな SRAM メモリ  モデル

AXI スレーブ VIP にはシンプルなメモ リ モデルがあ り ます (図 4-8 参照)。 このメモ リ モデルは、 SystemVerilog の連想配列です。 書き込みト ランザクシ ョ ンはメモ リ モデルに書き込むこ とができ、 読み出し ト ランザクシ ョ ンはメモリからデータを読み出すこ とができます。 これらを、 バッ ク ドア アクセス API と区別してフロン ト ドア アクセス とも呼びます。 これら 2 つの機能は、 AXI スレーブ VIP およびランタイム スレーブ モードの AXI パススルー VIP に実装されています。 これと同時に、 このメモ リ モデルにはメモ リに直接アクセスするためのバッ ク ドア API と して backdoor_memory_write と backdoor_memory_read も用意されています。 backdoor_memory_write はデータを メモ リに書き込み、 backdoor_memory_read はデータを メモ リから読み出します。 メモ リ モデル API の使用法は、 ザイ リ ンクス AXI API の資料 [参照 12] を参照してください。

重要: このメモ リは readmemh などのビルト イン システム タスクをサポート していません。backdoor_memory_write を使用してすべてのファイル情報をメモ リに書き込むこ とができます。 リセッ トはメモ リの内容に影響しません。

X-Ref Target - Figure 4-7

図 4‐7:書き込みト ランザクシ ョ ン  フロー

Slave Agent

Wiggling Pins of Interface

User Environment

Declare Write Reactive

Transaction

Fill In/Randomize Transaction

Slave Write Driver

get_wr_reactive

send

X18581-121316

X-Ref Target - Figure 4-8

図 4‐8: メモリ  モデル

0

Transaction Write

Transaction Read

DATA_WIDTH

2(ADDR_WIDTH – log2(DATA_WIDTH/8)) - 1

backdoor_memory_write

backdoor_memory_read

X18984-041117

Page 32: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 32

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

AXI スレーブ シンプル メモリ  VIP

AXI スレーブ シンプル メモ リ VIP は、図 4-6 に示した AXI スレーブ VIP とほとんど同じです。AXI スレーブ シンプル メモ リ VIP にはシンプル メモ リ モデルがある点のみが異なり ます。 ユーザー環境は、 読み出し /書き込みリ アクティブ ト ランザクシ ョ ンに書き込む必要があ り ません。 このテス トベンチは、 次の 3 つの部分で構成されます。

• ユーザー環境

• スレーブ エージェン ト (メモ リ モデルあ り )

• AXI スレーブ VIP

ユーザー環境とスレーブ エージェン トは動的な世界にあ り、 AXI スレーブ VIP は静的な世界にあ り ます。 ユーザー環境はスレーブ エージェン ト と通信し、 スレーブ エージェン トは仮想インターフェイスを介して AXI VIP インターフェイス と通信します。 メモ リ モデルあ りのスレーブ エージェン トには次の 5 つのク ラス メ ンバーがあ り ます。

• スレーブ書き込みド ライバー

• スレーブ読み出し ド ライバー

• モニター

• 仮想インターフェイス

• メモ リ モデル

メモ リ モデルあ りのスレーブ エージェン トの詳細は、 付録 D 「AXI VIP エージェン ト とフロー メ ソ ド ロジ」 を参照してください。

AXI スレーブ VIP とは異なり、AXI スレーブ シンプル メモ リ VIP ではユーザー環境は書き込み/読み出し リアクティブ ト ランザクシ ョ ンを作成および書き込む必要があ り ません。 これらはすべてスレーブ メモ リ エージェン トで実行されます。 使用方法は、 「複数のシ ミ ュレーシ ョ ン セッ ト 」 を参照して ください。

複数の AXI VIP 

図 4-9 に、 1 つのデザインに複数の AXI VIP を使用したテス トベンチを示します。 1 つの AXI VIP を使用した場合と同様に、 動的な世界と静的な世界が仮想インターフェイスを介して接続されます。

X-Ref Target - Figure 4-9

図 4‐9:複数の AXI VIP のテストベンチ

Test Bench

AXI System

AXI Slave VIP

Inte

rface

Pass-Through Agent

User Stimulus

Dynamic World

Static World

User Stimulus User Stimulus User Stimulus

DUT

AXI Master VIP

AXI Pass-Through VIP

AXI Pass-Through VIPAXI Master IP AXI Slave IP In

terfa

ce

Slave AgentMaster AgentPass-Through Agent

X18582-121316

Page 33: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 33

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

IP インテグレーターでの AXI VIP 階層パスの確認

先に説明したよ うに、 ユーザー環境では AXI VIP のエージェン ト を宣言する必要があ り ます。 また、 ユーザー環境でエージェン ト を作成する際に仮想インターフェイス と して設定した場合、 AXI VIP インターフェイスをエージェン トに渡す必要があ り ます。 次に、 IP インテグレーターで AXI VIP の階層パスを見つける方法を示します。

1. bd デザインを右ク リ ッ ク して、 [Generate Output Products] をク リ ッ ク します (図 4-10)。

2. [General Output Products] が表示されたら、 bd デザインをも う一度右ク リ ッ ク して、 [Create HDL Wrapper] をクリ ッ ク します。

X-Ref Target - Figure 4-10

図 4‐10: [Generate Output Products]

Page 34: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 34

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

3. 図 4-11 に、 ラ ッパー生成後の完成したインスタンス階層を示します。

4. 生成したラ ッパーを、 テス トベンチで DUT モジュールと して使用します。 これら 3 つの AXI VIP の階層パスは、 DUT.design_1.axi_vip_0.inst、 DUT.design_1.axi_vip_1.inst、 および DUT.design_1.axi_vip_2.inst です。

5. 階層内の VIP インスタンスは、 すべての IP の接続と検証チェッ クが完了してから確認するこ とを推奨します。[Simulation Settings] をク リ ッ ク してシ ミ ュレーシ ョ ン ツールをセッ ト アップし、 [Run Simulation] をク リ ッ ク します。 図 4-12 に、 Mentor Graphics 社の Questa Advanced Simulator の結果を示します。 階層を確認したら、SystemVerilog テス トベンチでこの階層を使用して VIP API を駆動します。

X-Ref Target - Figure 4-11

図 4‐11:完成したデザイン階層

Page 35: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 35

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

IP インテグレーターで AXI VIP をインスタンシエート し、 階層パスを確認したら、 次の手順と してテス トベンチで AXI VIP を使用します。 第 5 章 「サンプル デザイン」 を参照してください。

コアへの制約

こ こでは、 Vivado Design Suite でコアに制約を指定する方法について説明します。

必須の制約

このセクシ ョ ンは、 この IP コアには適用されません。

デバイス、 パッケージ、 スピード  グレードの選択

このセクシ ョ ンは、 この IP コアには適用されません。

クロック周波数

このセクシ ョ ンは、 この IP コアには適用されません。

クロック管理

このセクシ ョ ンは、 この IP コアには適用されません。

クロック配置

このセクシ ョ ンは、 この IP コアには適用されません。

X-Ref Target - Figure 4-12

図 4‐12: IP インテグレーターのデザイン階層内の VIP インスタンス

Page 36: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 36

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 4 章:デザイン フローの手順

バンク設定

このセクシ ョ ンは、 この IP コアには適用されません。

ト ランシーバーの配置

このセクシ ョ ンは、 この IP コアには適用されません。

I/O 規格と配置

このセクシ ョ ンは、 この IP コアには適用されません。

シミ ュレーシ ョ ン

Vivado シ ミ ュレーシ ョ ン コンポーネン トについて、 またサポート されているサードパーティ ツールについては、『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900) [参照 8] を参照してください。

重要: 7 シ リーズまたは Zynq-7000 デバイスをターゲッ トにしたコアでは、 UNIFAST ライブラ リはサポート されません。 ザイ リ ンクスの IP は UNISIM ラ イブラ リでのみテス ト と認定が行われています。

合成およびインプリ メンテーシ ョ ン

AXI VIP コアは、 ワイヤと して合成されるよ うに設定された検証用 IP です。 AXI VIP に含まれる axi_protocol_checker はシ ミ ュレーシ ョ ン専用で、 合成はされません。 AXI VIP にはインプリ メンテーシ ョ ンはあ り ません。

Page 37: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 37

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 5章

サンプル デザインこの章では、 Vivado® Design Suite で提供されているサンプル デザインについて説明します。

重要: この IP のサンプル デザインは、 IP のコンフ ィギュレーシ ョ ンに合わせてカスタマイズされています。 このサンプル デザインは、 AXI VIP の使用方法を示すこ とを目的と しています。 AXI VIP は、 VHDL 階層に含めた場合、 プロ ト コル チェッカーと してのみ動作します。 2 つの異なる リ ビジ ョ ン/バージ ョ ンの axi_vip パッケージをインポートしないでください。 エラボレーシ ョ ン エラーが発生します。 すべての AXI VIP およびその親は、 常に 新バージ ョンにアップグレードする必要があ り ます。

概要

図 5-1 に、 AXI VIP のサンプル デザインを示します。

このセクシ ョ ンでは、 AXI VIP コアの機能を示すために使用するサンプル テス トについて説明します。 サンプル テス トは SystemVerilog で提供されます。

コアのサンプル デザインを開く と、 サンプル ファ イルがテス トベンチの標準パスで提供され、 bd デザインはインポート ディレク ト リの下に置かれます。 これらのパッケージは、 ディ レク ト リ example.srcs/sources_1/bd/ex_sim/ipshared の下に置かれます。

サンプル デザインは、 次の 3 つのコンポーネン トで構成されています。

• マスター モードの AXI VIP

• パススルー モードの AXI VIP

• スレーブ モードの AXI VIP

AXI マスター VIP は書き込み/読み出し ト ランザクシ ョ ンを作成し、 AXI パススルー VIP へ送信します。 AXI パススルー VIP は AXI マスター VIP から ト ランザクシ ョ ンを受信し、 AXI スレーブ VIP へ送信します。 AXI スレーブ VIP は、 AXI パススルー VIP から ト ランザクシ ョ ンを受信する と、 書き込み/読み出し応答を生成して AXI パススルー VIP に返し、 後に AXI マスター VIP に返されます。

X-Ref Target - Figure 5-1

図 5‐1: AXI VIP のサンプル デザイン

Page 38: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 38

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 5 章:サンプル デザイン

AXI VIP (マスター、 パススルー、 およびスレーブ) のモニターは常に有効で、 各インターフェイスからすべての情報を収集します。 これらのモニターはインターフェイスの情報を ト ランザクシ ョ ン レベルに変換し、 スコアボードに送信します。 テス トベンチには 2 つのスコアボードが内蔵されています。 1 つは AXI パススルー VIP を基準にして AXI マスター VIP のセルフチェッ クを実行し、 も う 1 つはパススルー VIP を基準にして AXI スレーブ VIP のセルフチェッ クを実行します。

AXI VIP コアは完全には自律動作しません。 API を使用してテス ト を作成した場合、 ユーザー環境から ト ランザクシ ョ ンをセッ ト アップする方法はいくつかあ り ます。 AXI プロ ト コルに誤って違反する可能性があ り ます。 ト ランザクシ ョ ン ク ラスのメンバー関数はプロ ト コルおよびコンフ ィギュレーシ ョ ンの簡単なチェッ クを実行します。ジェネ リ ッ ク ト ランザクシ ョ ンを生成する際は、 ト ランザクシ ョ ン ランダム化と制約を使用するこ とを推奨します。 また、 ランダム化によって生成した ト ランザクシ ョ ンをさ らに変更するこ と も可能です。

AXI VIP をパススルー モードに設定した場合は、 パッシブ モニターと して使用するこ と も、 インターフェイスを制御するこ と もできます。 AXI VIP は、 ダウンス ト リームのスレーブを駆動するマスターと、 マスターに対して応答するスレーブに切り替えるこ とができます。 このプロセスはシ ミ ュレーシ ョ ン中にいつでも実行でき、 ユーザー設定によってパススルー モードに戻るこ とができます。

ランタイム マスター モードに切り替えた場合の動作は、 AXI マスター VIP の場合とまったく同じです。 ランタイム スレーブ モードに切り替えた場合の動作は、 AXI スレーブ VIP の場合とまったく同じです。

重要: モードの切り替えは、 すべての ト ランザクシ ョ ンが完了した後に実行して ください。 ト ランザクシ ョ ンの完了を待つ方法は、 サンプル デザインの例を参照してください。

Page 39: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 39

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6章

テストベンチこの章では、 Vivado® Design Suite で提供されているサンプル デザイン用のテス トベンチについて説明します。

Vivado IP カタログからサンプル デザインを開きます。 サンプル デザインを Vivado IP カタログまたは Vivado IP インテグレーターから開くには、 次の手順を実行します。

1. 新規プロジェク ト を開き、 [IP Catalog] をク リ ッ ク します。

2. [AXI Verification IP] を検索します。 IP をダブルク リ ッ ク し、 カスタマイズして IP を生成します。

3. IP を右ク リ ッ ク し、 [Open IP Example Design] をク リ ッ ク します。 IP インテグレーター デザインのコンポーネント と して既に AXI VIP を使用している場合は、 AXI VIP を右ク リ ッ ク して [Open IP Example Design] をク リ ッ クします。

どちらの場合も、 サンプル デザインを含む新規プロジェク トが作成されます。 このサンプル デザインは、 図 5-1 に示したよ うにマスター、 パススルー、 およびスレーブ VIP が互いに直接接続されています。 サンプル デザインの設定は、 元の VIP の設定と同じです。

複数のシミ ュレーシ ョ ン  セッ ト

Vivado Design Suite には、 ユーザー設定に基づいて 1 つのデザインに複数のシ ミ ュレーシ ョ ン セッ ト を含める機能があ り ます (AR: 64111)。 特に、 1 つのデザインに対して複数のテス トベンチを作成できます。 たとえば、 エラボレート済みデザインのビヘイビアー シ ミ ュレーシ ョ ンで使用するスティ ミ ュラスを提供するテス トベンチと、 インプリメン ト済みデザインのタイ ミ ング シ ミ ュレーシ ョ ンで使用するスティ ミ ュラスを提供するテス トベンチを用意するこ とが可能です。

AXI VIP 2017.1 リ リースのサンプル デザインには、 表 6-1 に示すシ ミ ュレーシ ョ ン セッ トが用意されています。sim_all_config は、 すべての機能を備えたシ ミ ュレーシ ョ ン セッ トです。 機能の一覧は、 「AXI VIP のサンプル テス トベンチとテス ト 」 を参照してください。 こ こには、 AXI VIP を複雑な方法で使用したいくつかの例も示しています。

ユーザーの便宜を図るため、 このサンプル デザインには上記のシ ミ ュレーシ ョ ン セッ ト以外にシンプルなコードを使用したシ ミ ュレーシ ョ ン セッ トが 10 種類用意されています。 これら 10 個のシ ミ ュレーシ ョ ン セッ トの命名規則は次のとおりです。

sim_<basic または adv>_mst_<mode>__pt_<mode>__slv_<mode>

ただし、 mode = active、 mem、 passive、 または combo

たとえば、 sim_basic_mst_passive__pt_mst__slv_comb は AXI マスター VIP がパッシブ モードの場合の AXI VIP の基本機能を実行するシ ミ ュレーシ ョ ン セッ トであるこ とを表しています。 AXI パススルー VIP はランタイム マスター モードで、 メモ リ モデルなしの AXI スレーブ VIP と通信します。

10 種類のシ ミ ュレーシ ョ ン セッ トの各テス トベンチには、 generic_tb.sv、 マスター スティ ミ ュラス、 およびスレーブ スティ ミ ュラスの 3 つのファイルがそれぞれ含まれます。

• generic_tb は、 スレーブ側 (AXI スレーブ VIP またはランタイム スレーブ モードの AXI パススルー VIP) を基準にして、マスター側 (AXI マスター VIP またはランタイム マスター モードの AXI パススルー VIP) に対するシンプルなセルフチェッ クを実行します。

Page 40: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 40

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

• マスター スティ ミ ュラスは、 AXI マスター VIP またはランタイム マスター モードの AXI パススルー VIP によって生成されます。

• スレーブ スティ ミ ュラスは、 AXI スレーブ VIP またはランタイム スレーブ モードの AXI パススルー VIP (メモリ モデルあ り、 またはなし ) によって生成されます。 スレーブ メモ リ スティ ミ ュラス ファ イルが含まれており、 このファ イルにアクセスする と メモ リ モデルあ りの AXI スレーブ VIP をチェッ クできます。

ベーシッ ク シ ミ ュレーシ ョ ン セッ ト とアドバンス ト シ ミ ュレーシ ョ ン セッ トの違いと して、 ベーシッ ク シ ミ ュレーシ ョ ン セッ トは AXI VIP を使用するためにテス トベンチで必要なコード スニペッ ト を示しています。 アドバンス ト シ ミ ュレーシ ョ ン セッ トには、 ユーザー設定可能な READY 信号などのオプシ ョ ン API も追加されています。詳細は、 Vivado Design Suite のサンプル デザインを参照してください。 API の使用法は、 ザイ リ ンクス AXI VIP API の資料 [参照 12] を参照してください。

次に、 各モードに対する ト ランザクシ ョ ンの生成方法を示します。

1. AXI マスター VIP 用のト ランザクシ ョ ンを生成する方法は、 表 6-1 に示した 10 種のシ ミ ュレーシ ョ ン セッ トのいずれかに含まれる mst_stimulus.sv を参照してください。

2. ベーシッ ク AXI スレーブ VIP 用のト ランザクシ ョ ン応答を生成する方法は、 表 6-1 に示した 10 種のシ ミ ュレーシ ョ ン セッ トのいずれかに含まれる slv_basic_stimulus.sv を参照してください。 メモ リ モデルの要件は、 mem_basic_stimulus.sv を参照してください。

3. アドバンス ト AXI スレーブ VIP 用のト ランザクシ ョ ン応答を生成する方法は、 表 6-1 に示した 10 種のシ ミ ュレーシ ョ ン セッ トのいずれかに含まれる slv_stimulus.sv を参照して ください。 メモ リ モデルの要件は、mem_stimulus.sv を参照して ください。

4. AXI パススルー VIP 用のト ランザクシ ョ ンを生成する方法は、 表 6-1 に示したシ ミ ュレーシ ョ ン セッ トのいずれかに含まれる passthrough_mst_stimulus.sv を参照して ください。

5. ベーシッ ク AXI パススルー VIP 用のト ランザクシ ョ ン応答を生成する方法は、 表 6-1 に示したシ ミ ュレーシ ョン セッ トのいずれかに含まれる passthrough_slv_basic_stimulus.sv を参照してください。 メモ リ モデルの要件は、 passthrough_mem_basic_stimulus.sv を参照してください。

6. アドバンス ト AXI パススルー VIP 用のト ランザクシ ョ ン応答を生成する方法は、 表 6-1 に示したシ ミ ュレーシ ョ ン セッ トのいずれかに含まれる passthrough_slv_stimulus.sv を参照してください。 メモ リ モデルの要件は、 passthrough_mem_stimulus.sv を参照してください。

7. [Sources] ウ ィンド ウで AXI VIP のサンプル デザインを開く と、 11 種類のシ ミ ュレーシ ョ ン セッ トが表示されます。 いずれかのシ ミ ュレーシ ョ ン セッ ト を選択してシ ミ ュレーシ ョ ンを実行するこ と も、 各テス トベンチのソース コードを表示するこ と もできます。

表 6‐1: AXI VIP のシミ ュレーシ ョ ン  セッ ト

シミ ュレーシ ョ ン  セッ ト名 含まれるファイル 説明

sim_basic_mst_passive_pt_mst_slv_comb

passthrough_mst_stimulus.sv

slv_basic_stimulus.sv

generic_tb.sv

AXI マスター VIP がパッシブ モードの場合の AXI VIP の基本機能。 AXI パススルー VIP はランタイム マスター モードで、 メモ リ モデルなしの AXI スレーブ VIP と通信します。

sim_basic_mst_active_pt_slv_slv_passive

mst_stimulus.sv

passthrough_slv_basic_stimulus.sv

generic_tb.sv

AXI マスター VIP がアクティブ モードの場合の AXI VIP の基本機能。 AXI パススルー VIP はメモ リ モデルなしのランタイム スレーブ モードです。 AXI スレーブ VIP はパッシブ モードです。

sim_basic_mst_active_pt_mem_slv_passive

mst_stimulus.sv

passthrough_mem_basic_stimulus.sv

generic_tb.sv

AXI マスター VIP がアクティブ モードの場合の AXI VIP の基本機能。 AXI パススルー VIP はメモ リ モデルあ りのランタイム スレーブ モードです。 AXI スレーブ VIP はパッシブ モードです。

Page 41: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 41

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

sim_basic_mst_active_pt_passive_slv_mem

mst_stimulus.sv

mem_basic_stimulus.sv

generic_tb.sv

AXI マスター VIP がアクティブ モードの場合の AXI VIP の基本機能。 AXI パススルー VIP はパッシブ モードです。AXI スレーブ VIP はメモリ モデルあ りのアクティブ モードです。

sim_basic_mst_active_pt_passive_slv_comb

mst_stimulus.sv

slv_basic_stimulus.sv

generic_tb.sv

AXI マスター VIP がアクティブ モードの場合の AXI VIP の基本機能。 AXI パススルー VIP はパッシブ モードです。AXI スレーブ VIP はメモリ モデルなしのアクティブ モードです。

sim_adv_mst_passive_pt_mst_slv_comb

passthrough_mst_stimulus.sv

slv_stimulus.sv

generic_tb.sv

AXI マスター VIP がパッシブ モードの場合の AXI VIP の高度な機能。 AXI パススルー VIP はランタイム マスター モードで、 メモ リ モデルなしの AXI スレーブ VIP と通信します。

sim_adv_mst_active_pt_slv_slv_passive

mst_stimulus.sv

passthrough_slv_stimulus.sv

generic_tb.sv

AXI マスター VIP がアクティブ モードの場合の AXI VIP の高度な機能。 AXI パススルー VIP はメモ リ モデルなしのランタイム スレーブ モードです。 AXI スレーブ VIP はパッシブ モードです。

sim_adv_mst_active_pt_mem_slv_passive

mst_stimulus.sv

passthrough_mem_stimulus.sv

generic_tb.sv

AXI マスター VIP がアクティブ モードの場合の AXI VIP の高度な機能。 AXI パススルー VIP はメモ リ モデルあ りのランタイム スレーブ モードです。 AXI スレーブ VIP はパッシブ モードです。

sim_adv_mst_active_pt_passive_slv_mem

mst_stimulus.sv

mem_stimulus.sv

generic_tb.sv

AXI マスター VIP がアクティブ モードの場合の AXI VIP の高度な機能。 AXI パススルー VIP はパッシブ モードです。 AXI スレーブ VIP はメモリ モデルあ りのアクティブ モードです。

sim_adv_mst_active_pt_passive_slv_comb

mst_stimulus.sv

slv_stimulus.sv

generic_tb.sv

AXI マスター VIP がアクティブ モードの場合の AXI VIP の高度な機能。 AXI パススルー VIP はパッシブ モードです。 AXI スレーブ VIP はメモリ モデルなしのアクティブ モードです。

sim_all_config 設定したすべての例を示します。

表 6‐1: AXI VIP のシミ ュレーシ ョ ン  セッ ト  (続き)

シミ ュレーシ ョ ン  セッ ト名 含まれるファイル 説明

Page 42: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 42

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

図 6-1 ~図 6-3 に、 AXI VIP のベーシッ ク シ ミ ュレーシ ョ ン セッ ト、 アドバンス ト シ ミ ュレーシ ョ ン セッ ト、 および sim_all_config シ ミ ュレーシ ョ ン セッ ト を示します。

X-Ref Target - Figure 6-1

図 6‐1: ベーシック  シミ ュレーシ ョ ン  セッ ト

sim_basic_mst_active_pt_passive_slv_mem

Master VIP(Passive)

Slave VIP(Without Memory Model)

Testbench

Pass-Through VIP (Runtime Master)

passthrough_mst_stimulus.sv slv_basic_stimulus.sv

sim_basic_mst_passive_pt_mst_slv_comb

Master VIP Slave VIP(Passive)

Testbench

Pass-Through VIP(Runtime Slave without

Memory Model)

passthrough_slv_basic_stimulus.sv

sim_basic_mst_active_pt_slv_slv_passive

mst_stimulus.sv

Master VIP Slave VIP(Passive)

Testbench

Pass-Through VIP(Runtime Slave with

Memory Model)

passthrough_mem_basic_stimulus.sv

sim_basic_mst_active_pt_mem_slv_passive

mst_stimulus.sv

Master VIP Slave VIP(With Memory Model)

Testbench

Pass-Through VIP(Passive)

mem_basic_stimulus.svmst_stimulus.sv

Master VIP Slave VIP(Without Memory Model)

Testbench

Pass-Through VIP (Passive)

mst_stimulus.sv slv_basic_stimulus.sv

sim_basic_mst_active_pt_passive_slv_comb

X18985-033017

Page 43: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 43

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

X-Ref Target - Figure 6-2

図 6‐2: アドバンスト  シミ ュレーシ ョ ン  セッ ト

Master VIP(Passive)

Slave VIP(Without Memory Model)

Testbench

Pass-Through VIP (Runtime Master)

passthrough_mst_stimulus.sv slv_stimulus.sv

sim_adv_mst_passive_pt_mst_slv_comb

Master VIP Slave VIP(Passive)

Testbench

Pass-Through VIP (Runtime Slave without

Memory Model)

passthrough_slv_stimulus.sv

sim_adv_mst_active_pt_slv_slv_passive

mst_stimulus.sv

Master VIP Slave VIP(Passive)

Testbench

Pass-Through VIP (Runtime Slave with

Memory Model)

passthrough_mem_stimulus.sv

sim_adv_mst_active_pt_mem_slv_passive

mst_stimulus.sv

Master VIP Slave VIP(With Memory Model)

Testbench

Pass-Through VIP(Passive)

mem_stimulus.sv

sim_adv_mst_active_pt_passive_slv_mem

mst_stimulus.sv

Master VIP Slave VIP(Without Memory Model)

Testbench

Pass-Through VIP (Passive)

mst_stimulus.sv slv_stimulus.sv

sim_adv_mst_active_pt_passive_slv_comb

X18986-033017

Page 44: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 44

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

図 6-4 に、 Vivado IDE でのシ ミ ュレーシ ョ ン設定例を示します。

AXI VIP のサンプル テストベンチとテスト

サンプル デザインとテス トベンチはいずれも VIP の設定に合わせて生成されます。 この VIP には 11 種類のテス トベンチがインプ リ メン ト されており、 「複数のシ ミ ュレーシ ョ ン セッ ト 」 で説明したよ うに、 各シ ミ ュレーシ ョ ン セッ トは異なるニーズに対応します。 詳細は、 第 5 章 「サンプル デザイン」 を参照して ください。

X-Ref Target - Figure 6-3

図 6‐3: sim_all_config シミ ュレーシ ョ ン  セッ ト

Master VIP Slave VIP(Without Memory Model)

Testbench

Pass-Through VIP

sim_all_config

X18988-033017

X-Ref Target - Figure 6-4

図 6‐4: Vivado Design Suite でのシミ ュレーシ ョ ン設定

Page 45: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 45

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

便利なコーディングのガイド ラインおよび例

テストベンチの必須条件

AXI VIP のテス トベンチをコーディングする際は、 次の要件を満たしている必要があ り ます。 これらを満たさない場合、 AXI VIP は動作しません。 これらの要件はすべての VIP に当てはま り ます。

1. 一般的な SystemVerilog テス トベンチ同様、 モジュール テス トベンチを作成します。

module testbench(); … endmodule

2. 2 つの必須パッケージ axi_vip_pkg と <component_name>_pkg をインポート します。<component_name>_pkg には、 AXI VIP 用のエージェン ト ク ラス とそのサブク ラスが含まれます。 各 VIP インスタンスにはコンポーネン ト パッケージがあ り、 これは出力の生成時に自動的に生成されます。 このコンポーネン ト パッケージには、 パラ メーターで指定されるエージェン トの typedef ク ラスが含まれます。 VIP をリ コンフ ィギュレーシ ョ ンしてもテス トベンチには影響しないため、 このパッケージをインポートするこ とを推奨します。 図 6-5 に、 スタンドアロン AXI VIP から <component_name>_pkg を取得する方法を示します。

X-Ref Target - Figure 6-5

図 6‐5: スタンドアロンの場合の <component_name>_pkg 

Page 46: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 46

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

図 6-6 に、 IP インテグレーター デザインから <component_name>_pkg を取得する方法を示します。 まず VIP をク リ ッ ク し、 [Block Properties] ウ ィンド ウで [Properties] をク リ ッ ク します。 このビューの [CONFIG] 欄にある [Component_Name] を確認します。

3. エージェン ト を宣言します。 1 つの AXI VIP につき、 1 つのエージェン ト を宣言する必要があ り ます。 エージェン ト を宣言する際は、 AXI VIP インターフェイス モードに応じた種類の typedef ク ラスを呼び出す必要があ ります。

4. エージェン トに対して new を作成し、 この new 関数に IF の正しい階層パスを渡します。 エージェン ト を new に設定する前に、 空のテス トベンチを使用してシ ミ ュレーシ ョ ンを実行し、 AXI VIP インスタンスの階層パスを確認します。 次のよ うなメ ッセージが表示されたら、 このパスを new 関数に渡します (図 4-12 参照)。

agent = new("my VIP agent", <hierarchy_path>.IF);

X-Ref Target - Figure 6-6

図 6‐6: IP インテグレーターの場合の <component_name>_pkg

名称 説明

<component_name>_mst_t マスター VIP

<component_name>_slv_t スレーブ VIP (メモ リ モデルなし )

<component_name>_slv_mem_t スレーブ VIP (メモ リ モデルあ り )

<component_name>_passthrough_t パススルー VIP (メモ リ モデルなし )

<component_name>_passthrough_mem_t パススルー VIP (メモ リ モデルあ り )

Page 47: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 47

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

エージェン トの開始

VIP の動作を開始するには、 エージェン トの開始を呼び出す必要があ り ます。 次に、 マスター、 スレーブ、 およびパススルー VIP の動作を開始する方法を示します。

AXI マスター VIP

エージェン ト を開始します。

mst_agent.start_master();

次に、 ト ランザクシ ョ ンを生成します。 ト ランザクシ ョ ン生成方法の詳細は、 Vivado サンプル デザインのシ ミ ュレーシ ョ ン セッ トに含まれる mst_stimulus.sv を参照して ください。

AXI スレーブ VIP

エージェン ト を開始します。

slv_agent.start_slave();

<component_name>_slv_t を使用する場合、 ユーザー環境は書き込み応答 (READ_WRITE_MODE が READ_ONLY 以外の場合)、 または読み出し応答 (READ_WRITE_MODE が WRITE_ONLY 以外の場合) を書き込む必要があ り ます。 詳細は、 Vivado サンプル デザインのシ ミ ュレーシ ョ ン セッ トに含まれる slv_basic_stimulus.sv/slv_stimulus.sv を参照して ください。

<component_name>_slv_mem_t を使用する場合、 書き込み応答と読み出し応答はエージェン トで処理されます。この場合、 ユーザー環境は何もする必要があ り ません。 詳細は、 Vivado サンプル デザインのシ ミ ュレーシ ョ ン セットに含まれる mem_basic_stimulus.sv/mem_stimulus.sv を参照してください。

AXI パススルー VIP

ランタイム スレーブ モード

AXI パススルー VIP をランタイム スレーブ モードに切り替えます。 手順 4 を実行して <hierarchy_path> を確認してから、 スレーブ エージェン ト を開始します。

<hierarchy_path>.set_slave_mode();passthrough_agent.start_slave();

<component_name>_passthrough_slv_t を使用する場合、 書き込み応答/読み出し応答をユーザー環境で書き込む必要があ り ます。

詳細は、 Vivado サンプル デザインのシ ミ ュレーシ ョ ン セッ トに含まれる passthrough_slv_basic_stimulus.sv/passthrough_slv_stimulus.sv を参照して ください。

<component_name>_passthrough_mem_t を使用する場合、 ユーザー環境は何もする必要があ り ません。 詳細は、 Vivado サンプル デザインのシ ミ ュレーシ ョ ン セッ トに含まれる passthrough_mem_basic_stimulus.sv/passthrough_mem_stimulus.sv を参照してください。

Page 48: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 48

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

ランタイム マスター モード  

AXI パススルー VIP をランタイム マスター モードに切り替えます。 手順 4 を実行して <hierarchy_path> を確認してから、 マスター エージェン ト を開始します。

<hierarchy_path>.set_master_mode();passthrough_agent.start_master();

ト ランザクシ ョ ンを作成します。 詳細は、 Vivado サンプル デザインのシ ミ ュレーシ ョ ン セッ トに含まれる passthrough_mst_stimulus.sv を参照してください。

ランタイム パススルー モード

デフォルトはパススルー モードです。 マスター /スレーブ モードからパススルー モードに戻す場合は、 API set_passthrough_mode を呼び出す必要があ り ます。 手順 4 を実行して <hierarchy_path> を確認してから、パススルー エージェン ト を開始します。

<hierarchy_path>.set_passthrough_mode();.

start_monitor はオプシ ョ ンです。

前述のよ うに、 パススルー VIP をランタイム マスター、 ランタイム スレーブ、 およびランタイム パススルー モードに切り替えるには、 それぞれ set_master_mode、 set_slave_mode、 および set_passthrough_mode API を使用します。

次に、 AXI VIP で使用する関連パラ メーターと typedef の一覧を示します。

parameter XIL_AXI_MAX_DATA_WIDTH = 1024;parameter XIL_AXI_USER_BEAT_WIDTH = 1024;parameter XIL_AXI_USER_ELEMENT_WIDTH = 32;parameter XIL_AXI_VERBOSITY_NONE = 0;parameter XIL_AXI_VERBOSITY_FULL = 400;typedef integer xil_axi_int;typedef longint xil_axi_long;typedef integer unsigned xil_axi_uint;typedef longint unsigned xil_axi_ulong;typedef logic [7:0] xil_axi_payload_byte;typedef logic xil_axi_strb_1byte;typedef logic [XIL_AXI_USER_BEAT_WIDTH-1:0] xil_axi_user_beat;typedef logic [XIL_AXI_MAX_DATA_WIDTH-1:0] xil_axi_data_beat;typedef logic [XIL_AXI_MAX_DATA_WIDTH/8-1:0] xil_axi_strb_beat;typedef integer unsigned xil_axi_user_element;

重要: パススルー VIP をランタイム マスター モードからほかのモードに切り替える際には、stop_master を呼び出す必要があ り ます。 同様に、 パススルー VIP をランタイム スレーブ モードからほかのモードに切り替える際には、stop_slave を呼び出す必要があ り ます。 詳細は、 Vivado のサンプル デザインを参照してください。 パススルー VIP エージェン トの start_master と start_slave を同時に呼び出すこ とはできません。 パススルー VIP をランタイム マスター モードからランタイム スレーブ モードに切り替えるには、 stop_master を呼び出す必要があ り ます。 その逆の場合は、 stop_slave を呼び出す必要があ り ます。

Page 49: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 49

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

オプシ ョ ンのテストベンチ制御

AXI スレーブ VIP のリアクテ ィブ ポート

AXI スレーブ VIP には axi_slv_agent と axi_slv_mem_agent の 2 つのエージェン トがあ り ます。 独自に ト ラフ ィ ッ クを生成する場合は、 axi_slv_agent と get_rd_reactive を使用してください。 axi_slv_mem_agent はト ラフ ィ ッ クの生成方法が決まっています。

サンプル デザインのシ ミ ュレーシ ョ ン セッ ト、 sim_all_config に示した読み出し応答を置く こ とを推奨します。次に、 手順を示します。

1. スレーブ エージェン トの読み出しド ライバーで、 get_rd_reactive を使用して読み出しコマンドを受信します。

2. ト ランザクシ ョ ン読み出しデータ情報を書き込んで、 AXI スレーブ VIP インターフェイスに返します。get_rd_reactive と send はどちら もブロ ッキングであるため、 ブロ ッキング イベン トのない initial および forever ブロ ッ クに含める必要があ り ます。 次に、 コード例を示します。

//slave VIP agent gets read transaction cmd information, fill in data information and send it back to Slave VIP interface initial begin forever begin slv_agent.rd_driver.get_rd_reactive(rd_reactive); fill_payload(rd_reactive); fill_ruser(rd_reactive); fill_beat_delay(rd_reactive); slv_agent.rd_driver.send(rd_reactive); end end

読み出しデータの受信方法 

読み出しデータを取得する方法には次の 2 つがあ り ます。

• マスター エージェン トの読み出し ド ラ イバーから受信する方法 (*mst_stimulus.sv ファ イルの driver_rd_data_method_one と driver_rd_data_method_two を参照)。

• VIP のモニターから取得する方法 (*exdes_generic.sv ファ イルの monitor_rd_data_method_one と monitor_rd_data_method_two を参照)。

モニターからデータを受信するには、 次の手順を実行します。

1. item_collected_port からモニター ト ランザクシ ョ ンを取得します。 この例では、 マスター エージェン トから取得します。

2. モニター ト ランザクシ ョ ンで cmd タイプが XIL_AXI_READ の場合、get_data_beat と get_data_block を使用して読み出しデータを取得します。

モニター ト ランザクシ ョ ンで cmd タイプが XIL_AXI_WRITE の場合、 get_data_beat と get_data_block を使用して書き込みデータを取得します。 monitor_rd_data_method_one は、 モニター ト ランザクシ ョ ンからデータ ビート を受信する方法を示しています。 monitor_rd_data_method_two は、 モニター ト ランザクシ ョ ンからデータ ブロ ッ クを受信する方法を示しています。

Page 50: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 50

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

読み出し ド ライバーからデータを受信するには、 次の手順を実行します。

1. マスター エージェン トの読み出し ド ラ イバーを使用して読み出し ト ランザクシ ョ ン ハンドルを作成します。

2. 読み出し ト ランザクシ ョ ンをランダム化します。 特定の読み出しコマンドを生成する場合は、axi_transaction ク ラスの API を使用してアドレスやバース ト長などを設定するか、 特定の値でト ランザクシ ョ ンをランダム化します。

3. 読み出し ト ランザクシ ョ ンの driver_return_item_policy を次のいずれかの値に設定します。

XIL_AXI_PAYLOAD_RETURN または XIL_AXI_CMD_PAYLOAD_RETURN

4. 読み出し ド ライバーを使用して読み出し ト ランザクシ ョ ンを送出します。

5. 読み出し ド ライバーを使用して応答を待ちます。

6. get_data_beat/get_data_block を使用して、 応答ト ランザクシ ョ ンからのデータを検査します。driver_rd_data_method_one は、 読み出し ド ライバーからデータ ビート を取得する方法を示しています。driver_rd_data_method_two は、読み出し ド ライバーからデータ ブロ ッ クを取得する方法を示しています。

注記: API get_data_beat: get_data_beat は、 指定したビートの値を返します。 常に 1024 ビッ ト を返します。上位バイ ト を下位バイ トに揃え、 未使用バイ ト を 0 に設定します。

これは必ずしも RDATA の表現とは一致しません。 データ幅が 32 ビッ トで ト ランザクシ ョ ンがサブサイズ バース ト (この例では 1B) の場合、 有効なのは get_data_beat の 後のバイ トのみです。 これは物理バスとは大き く異なります。

get_data_bit Physical Bus 1024 ... 0 32 0 ---------------- ----------- | X| | X| | X| | X | | X| | X | | X| | X | ---------------- -----------

注記: API get_data_block: get_data_block は、 ト ランザクシ ョ ンに対して 4K バイ トのペイロードを返します。 これは必ずしも RDATA の表現とは一致しません。 データ幅が 32 ビッ トで ト ランザクシ ョ ンがサブサイズ バース ト (この例では 1B) の場合、 上位バイ ト を下位バイ トに揃え、 未使用バイ ト を 0 に設定します。

get_data_block Physical Bus 32 ... 0 32 0 0 ---------------- ----------- | D C B A| | A| | 0 0 0 0| | B | | 0 0 0 0| | C | | 0 0 0 0| | D | | 0 0 0 0| ----------- | 0 0 0 0| 1k---------------- task monitor_rd_data_method_one(input axi_monitor_transaction updated); xil_axi_data_beat mtestDataBeat[]; mtestDataBeat = new[updated.get_len()+1]; for( xil_axi_uint beat=0; beat<updated.get_len()+1; beat++) begin mtestDataBeat[beat] = updated.get_data_beat(beat); // $display(" Read data from Monitor: beat index %d, Data beat %h", beat, mtestDataBeat[beat]); end endtask

Page 51: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 51

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

task monitor_rd_data_method_two(input axi_monitor_transaction updated); bit[8*4096-1:0] data_block; data_block = updated.get_data_block(); // $display(" Read data from Monitor: Block Data %h ", data_block); endtask task driver_rd_data_method_one(); axi_transaction rd_transaction; xil_axi_data_beat mtestDataBeat[]; rd_transaction = agent.rd_driver.create_transaction("read transaction with randomization"); RD_TRANSACTION_FAIL_1a:assert(rd_transaction.randomize()); rd_transaction.set_driver_return_item_policy(XIL_AXI_PAYLOAD_RETURN); agent.rd_driver.send(rd_transaction); agent.rd_driver.wait_rsp(rd_transaction); mtestDataBeat = new[rd_transaction.get_len()+1]; for( xil_axi_uint beat=0; beat<rd_transaction.get_len()+1; beat++) begin mtestDataBeat[beat] = rd_transaction.get_data_beat(beat); // $display("Read data from Driver: beat index %d, Data beat %h ", beat, mtestDataBeat[beat]); end endtask

task driver_rd_data_method_two(); axi_transaction rd_transaction; bit[8*4096-1:0] data_block; rd_transaction = agent.rd_driver.create_transaction("read transaction with randomization");

RD_TRANSACTION_FAIL_1a:assert(rd_transaction.randomize()); rd_transaction.set_driver_return_item_policy(XIL_AXI_PAYLOAD_RETURN); agent.rd_driver.send(rd_transaction); agent.rd_driver.wait_rsp(rd_transaction); data_block = rd_transaction.get_data_block(); // $display("Read data from Driver: Block Data %h ", data_block); endtask

詳細は、 Vivado サンプル デザインの simset sim_adv_mst_active_* を参照して ください。

Ready 信号の生成

次に、 指定した rready 信号の生成方法を示します。 AXI マスター VIP またはランタイム マスター モードの AXI パススルー VIP を使用します。create API を使用して rready を生成し、Low および High パターンを設定して VIP インターフェイスに送信します。 その他の rready 信号については、 何も行われなければ AXI VIP 自身がこの rready 信号を生成します。 READY ハンドシェイクの各種モードの詳細は、 「READY の生成」 を参照してください。

// master agent create rready rready_gen = mst_agent.rd_driver.create_ready("rready"); // set the feature of rready signal. If nothing is done here, default pattern of ready will be generated rready_gen.set_ready_policy(XIL_AXI_READY_GEN_OSC); rready_gen.set_low_time(1); rready_gen.set_high_time(2); // send the rready to VIP interface mst_agent.rd_driver.send_rready(rready_gen);

Page 52: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 52

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

その他のオプシ ョ ン制御

デバッグ用に、 API を使用してエージェン トのタグと出力詳細レベル (verbosity) を設定できます。

//set tag for agents for easy debug mst_agent.set_agent_tag("Master VIP");

//verbosity level which specifies how much debug information to produce// 0 - No information will be shown.// 400 - All information will be shown.mst_agent.set_verbosity(mst_agent_verbosity);

ト ランザクシ ョ ン例 

ト ランザクシ ョ ンを作成後に設定する方法はいくつかあ り ます。 サンプル デザインの sim_all_config では、 書き込みおよび読み出し ト ランザクシ ョ ンに対してそれぞれ 3 つの方法を示しています。 方法 1 はト ランザクシ ョ ンを作成後、 完全にランダム化します。 方法 2 は AXI BFM の WRITE_BURST および READ_BURST に似た方法で、 移行に適しています。 方法 3 は、 API を使用して ト ランザクシ ョ ンを設定する方法を示しています。

書き込みト ランザクシ ョ ンの方法

書き込みト ランザクシ ョ ンの方法 1

書き込みト ランザクシ ョ ンの場合、 次の手順を実行します。

1. マスター エージェン トの書き込みド ライバーから ト ランザクシ ョ ンを作成します。

2. ト ランザクシ ョ ンをランダム化します。

3. マスター エージェン トの書き込みド ライバーから ト ランザクシ ョ ンを送信します。

重要: こ こで送信される API はノンブロ ッキングです。 デフォルトでは、 ド ライバーはト ランザクシ ョ ン情報を返しません。 ト ランザクシ ョ ン情報を受信するには、 set_driver_return_item API を呼び出し、 関連する driver_return_item_policy をこ こで呼び出します。

wr_transaction = mst_agent.wr_driver.create_transaction("write transaction");WR_TRANSACTION_FAIL_1b: assert(wr_transaction.randomize());mst_agent.wr_driver.send(wr_transaction);

書き込みト ランザクシ ョ ンの方法 2

注記: これはブロ ッキング書き込みで、 BRESP が返されるまでブロ ッ ク します。

//The following shows the AXI4_WRITE_BURST. For other options. see the Xilinx AXI VIP API Documentation [Ref 12].

mst_agent.AXI4_WRITE_BURST( mtestID, mtestADDR, mtestBurstLength, mtestDataSize, mtestBurstType, mtestLOCK, mtestCacheType, mtestProtectionType, mtestRegion, mtestQOS, mtestAWUSER, mtestWData, mtestWUSER, mtestBresp );

Page 53: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 53

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

書き込みト ランザクシ ョ ンの方法 3

この方法は、 API を使用して書き込みト ランザクシ ョ ンのコマンド とデータを設定します。

wr_transaction = mst_agent.wr_driver.create_transaction("write transaction");wr_transaction.set_write_cmd(mtestADDR,mtestBurstType,mtestID, mtestBurstLength,mtestDataSize); wr_transaction.set_data_block(mtestWData);for(int beat=0; beat<wr_transaction.get_len()+1; beat++) begin

wr_transaction.set_data_beat(beat, dbeat);endmst_agent.wr_driver.send(wr_transaction);

読み出し ト ランザクシ ョ ンの方法

読み出し ト ランザクシ ョ ンの方法 1

読み出し ト ランザクシ ョ ンの場合、 次の手順を実行します。

1. マスター エージェン トの読み出し ド ラ イバーからの ト ランザクシ ョ ンを作成します。

2. ト ランザクシ ョ ンをランダム化します。

3. マスター エージェン トの読み出し ド ラ イバーから ト ランザクシ ョ ンを送信します。

重要: こ こで送信される API はノンブロ ッキングです。 ト ランザクシ ョ ン情報を受信するには、 ド ライバー リ ターン アイテム ポ リシーをこ こで設定する必要があ り ます。

rd_transaction = mst_agent.rd_driver.create_transaction("read transaction");RD_TRANSACTION_FAIL_1a:assert(rd_transaction.randomize());mst_agent.rd_driver.send(rd_transaction);

読み出し ト ランザクシ ョ ンの方法 2

注記: これはブロ ッキング読み出しで、 BRESP が返されるまでブロ ッ ク します。

// The following shows the AXI4_READ_BURST. For other options. see the Xilinx AXI VIP API Documentation [Ref 12].

mst_agent.AXI4_READ_BURST ( mtestID, mtestADDR, mtestBurstLength, mtestDataSize, mtestBurstType, mtestLOCK, mtestCacheType, mtestProtectionType, mtestRegion, mtestQOS, mtestARUSER, mtestRData, mtestRresp, mtestRUSER );

Page 54: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 54

PG267 2017 年 10 月 4 日 japan.xilinx.com

第 6 章: テストベンチ

読み出し ト ランザクシ ョ ンの方法 3

この方法は、 API を使用して読み出し ト ランザクシ ョ ンのコマンド とデータを設定します。

rd_transaction = mst_agent.rd_driver.create_transaction("read transaction");rd_transaction.set_read_cmd(mtestADDR,mtestBurstType,mtestID, mtestBurstLength,mtestDataSize);mst_agent.rd_driver.send(rd_transaction);

Page 55: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 55

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 A

アップグレード

Vivado Design Suite でのアップグレード

このセクシ ョ ンでは、 コア バージ ョ ン間でのユーザー ロジッ クまたはポートの変更点について説明します。

v1.0 から  v1.1 への変更点

axi_vip パッケージのバージ ョ ンが更新されました。

Page 56: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 56

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 B

axi_vip_v1_1_top API

この付録では、 axi_vip_v1_1_top API について説明します。 これらの API は、 次のコードで呼び出すこ とができます。 set_passthrough_mode、 set_master_mode、 および set_slave_mode はパススルー VIP のモードを実行時に切り替えるために使用します。 それ以外の API は、 アサーシ ョ ンに使用します。 次に、set_passthrough_mode の例を示します。

hierarchy_path>.set_passthrough_mode(). For <hierarchy_path>, see Figure 4-12 in Chapter 4, Design Flow Steps and AXI Pass-Through VIP, page 50.

set_passthrough_modefunction void set_passthrough_mode()Sets AXI VIP passthrough into run time passthrough mode

set_master_modefunction void set_master_mode()Sets AXI VIP passthrough into run time master mode

set_slave_modefunction void set_slave_mode()Sets AXI VIP passthrough into run time slave mode

set_xilinx_slave_ready_checkfunction void set_xilinx_slave_ready_check()Sets xilinx_slave_ready_check_enable of IF to be 1

clr_xilinx_slave_ready_checkfunction void clr_xilinx_slave_ready_check()Sets xilinx_slave_ready_check_enable of IF to be 0

set_max_aw_wait_cyclesfunction void set_max_aw_wait_cycles(input integer unsigned new_num)Sets max_aw_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

set_max_ar_wait_cyclesfunction void set_max_ar_wait_cycles(input integer unsigned new_num)Sets max_ar_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

set_max_r_wait_cyclesfunction void set_max_r_wait_cycles(input integer unsigned new_num)Sets max_r_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

Page 57: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 57

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 B: axi_vip_v1_1_top API

set_max_b_wait_cyclesfunction void set_max_b_wait_cycles(input integer unsigned new_num)Sets max_b_wait_cycles of PC (ARM Protocol Checker), not available in Vivado Simulator.

set_max_w_wait_cyclesfunction void set_max_w_wait_cycles(input integer unsigned new_num)Sets max_w_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

set_max_wlast_wait_cyclesfunction void set_max_wlast_wait_cycles(input integer unsigned new_num)Sets max_wlast_to_awvalid_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

set_max_rtransfer_wait_cyclesSets max_rtransfer_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

set_max_wtransfer_wait_cyclesSets max_wtransfer_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

set_max_wlcmd_wait_cyclesfunction void set_max_wlcmd_wait_cycles(input integer unsigned new_num)Sets max_wlcmd_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

get_max_aw_wait_cyclesfunction integer unsigned get_max_aw_wait_cycles()Returns max_aw_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

get_max_ar_wait_cyclesfunction integer unsigned get_max_ar_wait_cycles()Returns max_ar_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

get_max_r_wait_cyclesfunction integer unsigned get_max_r_wait_cycles()Returns max_r_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

get_max_b_wait_cyclesfunction integer unsigned get_max_b_wait_cycles()Returns max_b_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

get_max_w_wait_cyclesfunction integer unsigned get_max_w_wait_cycles()Returns max_w_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

Page 58: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 58

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 B: axi_vip_v1_1_top API

get_max_wlast_wait_cyclesfunction integer unsigned get_max_wlast_wait_cycles()Returns max_wlast_to_awvalid_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

get_max_rtransfer_wait_cyclesReturns max_rtransfer_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

get_max_wtransfer_wait_cyclesReturns max_wtransfer_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

get_max_wlcmd_wait_cyclesfunction integer unsigned get_max_wlcmd_wait_cycles()Returns max_wlcmd_wait_cycles of PC(ARM Protocol Checker), not available in Vivado Simulator.

set_fatal_to_warningsfunction void set_fatal_to_warnings()Sets fatal_to_warnings of PC(ARM Protocol Checker) to be 1, not available in Vivado Simulator.

clr_fatal_to_warningsfunction void clr_fatal_to_warnings()Sets fatal_to_warnings of PC(ARM Protocol Checker) to be 0, not available in Vivado Simulator.

Page 59: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 59

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 C

BFM から  VIP への移行この付録では、 AXI BFM を使用した Vivado® デザインから AXI VIP への移行について説明します。

1. Vivado IP インテグレーターの BD デザインで、 BFM を AXI VIP で置き換えて AXI VIP をコンフ ィギュレーシ ョンします。 たとえば置き換え前の BFM がスレーブ モードの AXI4 の場合、 AXI VIP プロ ト コルを AXI4、 インターフェイス モードをスレーブにセッ ト アップします。

2. テス トベンチで BFM に関連するすべてのタスクを削除し、 次のコードを追加します。

° 2 つのパッケージをインポート します。 <component_name>_pkg の取得方法は、 第 6 章 「テス トベンチ」を参照してください。

import <component_name>_pkg::*import axi_vip_pkg::*;

° エージェン ト を宣言します。 要件は、 第 6 章 「テス トベンチ」 を参照してください。

こ こでは移行を目的と しており、 BFM はパススルー モードをサポート していないため、 パススルー エージェン ト を宣言するこ とはあ り ません。

° エージェン ト を作成します。

- マスター モードの AXI VIP の場合:

mst_agent = new("master vip agent",<hierarchy path to AXI VIP instance> inst.IF);

階層パスの確認方法は、 第 4 章 「デザイン フローの手順」 を参照して ください。

° エージェン ト を開始します。

- マスター モードの AXI VIP の場合:

mst_agent.start_master();

° 既存の BFM WRITE/READ_BURST を VIP WRITE/READ_BURST で置き換えます。

- AXI VIP が AXI4 の場合:

AXI4_WRITE/READ_BURST

- AXI VIP が AXI3 の場合:

AXI3_WRITE/READ_BURST

- AXI VIP が AXI4LITE の場合:

AXI4LITE_WRITE/READ_BURST

Page 60: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 60

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D

AXI VIP エージェン ト とフロー メ ソ ドロジこの付録では、 AXI VIP エージェン ト とフロー メ ソ ド ロジについて説明します。 AXI VIP には次の 3 つのエージェントがあ り ます。

• AXI マスター エージェン ト

• AXI スレーブ エージェン ト

• AXI パススルー エージェン ト

AXI マスター エージェン ト

AXI マスター VIP をインスタンシエートするには、 マスター エージェン ト を宣言して作成する必要があ り ます。axi_mst_agent ク ラスには、 マスター VIP を構成するほかのコンポーネン トが含まれます。 すなわち、 読み出しド ライバー、 書き込みド ライバー、 およびモニターが含まれます。

X-Ref Target - Figure D-1

図 D‐1: AXI マスター VIP エージェン ト

AXI Interface

Master Write Driver Master Read DriverAXI Monitor

Virtual Interface

User Environment

AXI Master Agent

X18585-121316

Page 61: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 61

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

AXI マスター読み出し ド ライバー

• ユーザー環境から READ ト ランザクシ ョ ンを受信し、 AR チャネルを駆動します。

• AR コマンドを受信する と、 イベン ト を ト リガーします。

• ユーザー環境から READY ト ランザクシ ョ ンを受信し、 R チャネルの RREADY 信号を駆動します。

• デフォルトでは、 ド ライバー リ ターン アイテム ポ リシーを設定するまで ト ランザクシ ョ ンは返されません。使用法は、 ザイ リ ンクス AXI VIP API の資料 [参照 12] を参照してください。

AXI マスター書き込みドライバー

• ユーザー環境から WRITE ト ランザクシ ョ ンを受信し、 AW および W チャネルを駆動します。

• AW コマンドを受信する と、 イベン ト を ト リガーします。

• WLAST を受信する と、 イベン ト を ト リガーします。

• ユーザー環境から READY ト ランザクシ ョ ンを受信し、 B チャネルの BREADY 信号を駆動します。

• デフォルトでは、 ド ライバー リ ターン アイテム ポ リシーを設定するまで ト ランザクシ ョ ンは返されません。使用法は、 ザイ リ ンクス AXI VIP API の資料 [参照 12] を参照してください。

AXI モニター

• 5 つの AXI チャネル (AW、 AR、 R、 W、 および B) をすべて監視します。

• 7 つの解析ポートがあ り、 どれを使用するかを選択できます。 デフォルトでは item_collect_port のみが ON で、 それ以外のポートはすべて OFF です。 各解析ポート を ON にするには、 そのポートの set_enabled API を使用します。 次に、 解析ポート を示します。

• R チャネル ビート を収集して順序を変更し、 RLAST を受信する と完成した ト ランザクシ ョ ンを返します。

• B チャネル応答を収集して順序を変更し、 B チャネルを受信する と完成した ト ランザクシ ョ ンを返します。

• ト ランザクシ ョ ン ベースのプロ ト コル チェッ クを行います。

名称 説明

item_collect_port 書き込みと読み出しの両方のト ランザクシ ョ ン情報を収集し、 axi_monitor_transaction に変換します。

axi_cmd_port 書き込みと読み出しの両方のチャネル情報を収集し、 xil_axi_cmd_beat に変換します。

axi_rd_cmd_port 読み出しアドレス チャネル情報を収集し、 xil_axi_cmd_beat に変換します。

axi_wr_cmd_port 書き込みアドレス チャネル情報を収集し、 xil_axi_cmd_beat に変換します。

axi_bresp_port 書き込み応答チャネル情報を収集し、 xil_axi_resp_beat に変換します。

axi_wr_beat_port 書き込みデータ チャネル情報を収集し、 xil_axi_wr_beat に変換します。

axi_rd_beat_port 読み出しデータ チャネル情報を収集し、 xil_axi_read_beat に変換します。

Page 62: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 62

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

ト ランザクシ ョ ン  リ ターン  アイテム ポリシーの実装

表 D-1 に、 ト ランザクシ ョ ン リ ターンの説明を示します。

last_handshake = *LAST + *VALID + *READY

cmd_handshake = *VALID + *READY

bresp_handshake = BVALID + BREADY

リセッ ト中に返されるアイテム

リセッ トが適用される と、 転送中のト ランザクシ ョ ンはユーザー環境 (シーケンサー ) に返されます。 ただし複数のキューに同じ ト ランザクシ ョ ンが存在するこ とがあ り、 この場合はプロセスがその ト ランザクシ ョ ンを NO_RETURN に変更します。 したがって、 ユーザー環境に同じアイテムが複数回返されるこ とはあ り ません。

表 D‐1: ト ランザクシ ョ ン  リ ターンの説明

名称 説明

NO_RETURN ド ラ イバーはアイテムを返しません。

CMD_RETURN アイテムは cmd_handshake 時に返されます。

PAYLOAD_RETURN書き込みの場合、 アイテムは bresp_handshake 時に返されます。

読み出しの場合、 アイテムは last_handshake 時に返されます。

CMD_PAYLOAD_RETURN

アイテムは 2 回返されます。

cmd_handshake 時。

bresp_handshake 時 (書き込みの場合)。

last_handshake 時 (読み出しの場合)。

CMD_WLAST_RETURN

アイテムは 2 回返されます。

cmd_handshake 時。

last_handshake 時。

注記: この リ ターン タイプは、 読み出し ト ランザクシ ョ ンでは無効です。

CMD_WLAST_PAYLOAD_RETURN

アイテムは 3 回返されます。

cmd_handshake 時。

last_handshake 時。

bresp_handshake 時。

注記: この リ ターン タイプは、 読み出し ト ランザクシ ョ ンでは無効です。

WLAST_PAYLOAD_RETURN

アイテムは 2 回返されます。

last_handshake 時。

bresp_handshake 時。

注記: この リ ターン タイプは、 読み出し ト ランザクシ ョ ンでは無効です。

WLAST_RETURNアイテムは last_handshake 時に返されます。

注記: この リ ターン タイプは、 読み出し ト ランザクシ ョ ンでは無効です。

Page 63: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 63

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

書き込み CMD とデータ  フロー図X-Ref Target - Figure D-2

図 D‐2:書き込みコマンド とデータ  フロー

GET

Assert AWVALID

Address Channel Done

Address Accepted

AW Back Pressure Delay from Slave

Address Channel Delay(Driver Property)

Assert WVALID

Write Data Channel Done

Last Write Beat Accepted

Data Insertion Delay (Transaction)

Data Inter-Beat Delay (Transaction)

Last Beat

W Back Pressure from Slave

Assert WLAST

Yes

DATA Before CMD

(Transaction)

Start CMD Watchdog (Driver Property)

Wait Allow Beat Number

(Transaction)

CMD Before DATA

(Transaction)

Start CMD Watchdog (Driver Property)

Write Beat Accepted

No

Data Channel Delay (Driver Property)

Address Insertion Delay (Transaction)

Yes

Trigger Address Accepted

Increment Beat

Count

X18586-033017

Page 64: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 64

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

書き込みト ランザクシ ョ ン  フロー

AXI マスター書き込みト ランザクシ ョ ンは、 次の順で書き込みエージェン ト を通過します。

1. ド ラ イバーが、get_next_item を使用して次の ト ランザクシ ョ ンを要求します。これはブロ ッキング get です。

2. ユーザー環境が 1 つのト ランザクシ ョ ンを作成します。 この ト ランザクシ ョ ンには次のものが含まれます。

° コマンド情報 – AWADDR、 AWLEN、 AWSIZE、 AWID など

° ペイロード – WDATA バイ ト アレイおよび WSTRB アレイ

° マスターによって制御されるタイ ミ ング – ビート間タイ ミ ングおよびアドレス遅延

3. ユーザー環境がト ランザクシ ョ ンをド ライバーへプッシュします。

4. ド ラ イバーはリ クエス ト ポートから ト ランザクシ ョ ンをポップして処理用のキューに置き、 インターフェイスに駆動します。 ト ランザクシ ョ ン深さが > 1 の場合、 この値に達するまでド ライバーはト ランザクシ ョ ンの受信を続けます。

5. ト ランザクシ ョ ン ド ラ イバー リ ターン アイテム ポ リシーが次のいずれかの値に設定されている場合、 インターフェイスがスレーブから BRESP を受信する と、 マスター ド ラ イバーはト ランザクシ ョ ンのコピーをユーザー環境に返します。

° XIL_AXI_CMD_RETURN

° XIL_AXI_CMD_WLAST_RETURN

° XIL_AXI_WLAST_RETURN

° XIL_AXI_PAYLOAD_RETURN

° XIL_AXI_CMD_PAYLOAD_RETURN

° XIL_AXI_CMD_WLAST_PAYLOAD_RETURN

° XIL_AXI_WLAST_PAYLOAD_RETURN

6. ド ラ イバー リ ターン アイテム ポ リシーが XIL_NO_RETURN でない場合、 ユーザー環境は完了した ト ランザクシ ョ ンを受信します。

X-Ref Target - Figure D-3

図 D‐3:書き込みト ランザクシ ョ ン  フロー

Master Write Channel Driver

User Environment

4

1

2

3

5

6

X18587-121316

Page 65: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 65

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

読み出しコマンドのタイ ミング図X-Ref Target - Figure D-4

図 D‐4:読み出しコマンドの図

GET

Assert ARVALID

Address Channel Done

Address Accepted

AR Back Pressure Delay from Slave

Address Channel Delay(Driver Property)

Address InsertionDelay (Transaction)

X18588-033017

Page 66: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 66

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

読み出し ト ランザクシ ョ ン  フロー

AXI マスター読み出し ト ランザクシ ョ ンは、 次の順で読み出しエージェン ト を通過します。

1. ド ラ イバーが、get_next_item を使用して次の ト ランザクシ ョ ンを要求します。これはブロ ッキング get です。

2. ユーザー環境が 1 つのト ランザクシ ョ ンを作成します。 この ト ランザクシ ョ ンには次のものが含まれます。

° コマンド情報 – AWADDR、 AWLEN、 AWSIZE、 AWID など

° マスターによって制御されるタイ ミ ング – アドレス遅延

3. ユーザー環境がト ランザクシ ョ ンをド ライバーへプッシュします。

4. ド ラ イバーはリ クエス ト ポートから ト ランザクシ ョ ンをポップして処理用のキューに置き、 インターフェイスに駆動します。 ト ランザクシ ョ ン深さが > 1 の場合、 この値に達するまでド ライバーはト ランザクシ ョ ンの受信を続けます。

5. インターフェイスが同じ RID に対してスレーブから RDATA を受信する と、 RDATA バイ ト アレイ、 RRESP アレイ といったペイロード フ ィールドに書き込みます。

6. ト ランザクシ ョ ン ド ラ イバー リ ターン アイテム ポ リシーが XIL_AXI_CMD_RETURN または XIL_AXI_CMD_PAYLOAD_RETURN に設定されている場合、 ユーザー環境は完了した ト ランザクシ ョ ンを受信します。

BREADY のデータフロー

• BREADY は AW および W チャネルから独立して生成されます。

• BREADY の設定は、 AW および W ペイロードを転送する ト ランザクシ ョ ンとは異なる ト ランザクシ ョ ンまたは解析ポートから取得します。

• BREADY の設定は、 AW/W チャネルとは非同期に変更できます。

• 各種タイ ミ ング オプシ ョ ンは、 「設定可能な READY の遅延」 を参照してください。

X-Ref Target - Figure D-5

図 D‐5:読み出し ト ランザクシ ョ ン  フロー

Master Read Channel Driver

User Environment

4

1

2

3

5

6

X18589-121316

Page 67: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 67

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

X-Ref Target - Figure D-6

図 D‐6: BREADY のデータフロー

Initialize Current BREADY

Configuration

GET

Initial BREADY Configuration

BREADY Configuration

Process Current BREADY Configuration

Assert BREADY

Response Accepted

BREADY Configuration Queue If not empty, replace

current BREADY configuration.

X18590-033017

Page 68: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 68

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

RREADY のデータフロー

• RREADY は AR チャネルから独立して生成されます。

• RREADY の設定は、 AR ペイロードを転送する ト ランザクシ ョ ンとは異なる ト ランザクシ ョ ンまたは解析ポートから取得します。

• RREADY の設定は、 AR チャネルとは非同期に変更できます。

• 各種タイ ミ ング オプシ ョ ンは、 「設定可能な READY の遅延」 を参照してください。

Page 69: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 69

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

X-Ref Target - Figure D-7

図 D‐7: RREADY のデータフロー

Initialize Current RREADY

Configuration

GET

Initial RREADY Configuration

RREADY Configuration

Process Current RREADY Configuration

Assert RREADY

Response Accepted

RREADY Configuration Queue If not empty, replace

current RREADY configuration.

RLAST Asserted

Read Data Channel Done

No

X18591-033017

Page 70: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 70

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

AXI スレーブ エージェン ト

AXI スレーブ VIP をインスタンシエートするには、 スレーブ エージェン ト を宣言して作成する必要があ り ます。axi_slv_agent ク ラスには、 スレーブ VIP を構成するほかのコンポーネン トが含まれます。 すなわち、 読み出しド ライバー、 書き込みド ライバー、 およびモニターが含まれます。

AXI スレーブ読み出し ド ライバー

• インターフェイスから AR コマンドを受信し、 そのコマンドをユーザー環境に渡します。 READ ト ランザクシ ョ ンを作成し、 これをド ライバーに戻して R チャネルを駆動します。

• AR コマンドを受信する と、 イベン ト を ト リガーします。

• RLAST を受信する と、 イベン ト を ト リガーします。

• ユーザー環境から READY ト ランザクシ ョ ンを受信し、 AR チャネルの ARREADY 信号を駆動します。

• R チャネルを駆動します。

• コマンド オーダーは設定変更可能です。

X-Ref Target - Figure D-8

図 D‐8: AXI スレーブ VIP エージェン ト

AXI Interface

Slave Write Driver Slave Read DriverAXI Monitor

Virtual Interface

User Environment

CMD RDATABRESPCMD

AXI Slave Agent

X18592-121316

Page 71: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 71

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

AXI スレーブ書き込みドライバー

• インターフェイスから AW コマンド と WLAST を受信し、 その ト ランザクシ ョ ンをユーザー環境に渡します。ユーザー環境は BRESP ト ランザクシ ョ ンを作成し、 これをド ライバーに戻して B チャネルを駆動します。

• ユーザー環境から WRITE ト ランザクシ ョ ンを受信し、 AW および W チャネルを駆動します。

• AW コマンドを受信する と、 イベン ト を ト リガーします。

• WLAST を受信する と、 イベン ト を ト リガーします。

• ユーザー環境から READY ト ランザクシ ョ ンを受信し、 AW チャネルの AWREADY 信号を駆動します。

• ユーザー環境から READY ト ランザクシ ョ ンを受信し、 W チャネルの WREADY 信号を駆動します。

• 順番を変更した B チャネル応答を生成します。

AXI モニター

• 5 つの AXI チャネル (AW、 AR、 R、 W、 および B) をすべて監視します。

• R チャネル ビート を収集して順序を変更し、 RLAST を受信する と完成した ト ランザクシ ョ ンを返します。

• B チャネル応答を収集して順序を変更し、 B チャネルを受信する と完成した ト ランザクシ ョ ンを返します。

• ト ランザクシ ョ ン ベースのプロ ト コル チェッ ク。

Page 72: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 72

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

書き込み応答/リアクシ ョ ン  データ  フロー図X-Ref Target - Figure D-9

図 D‐9:書き込み応答/リアクシ ョ ン  データ  フロー

GETBRESP

Assert BVALID

Response Channel Done

Response Accepted

B Back Pressure from Master

Response Channel Delay (Driver Property)

Response Delay (Transaction Property)

User Environment Receives Transaction and Fills in BRESP

Reactive Put to User Environment

AW Address Accepted

FIFO

FIFO

WLAST Beat Accepted

Wait for AW Command Accepted

Wait for WLAST Beat Accepted

awcmd_accept_event wlast_accept_event

X18593-040517

Page 73: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 73

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

書き込みト ランザクシ ョ ン  フロー

AXI スレーブ書き込みエージェン トには次の 3 つのコンカレン ト ト ランザクシ ョ ン フローがあ り ます。

• アドレス チャネルの処理

• データ チャネルの処理

• 応答チャネルの生成

アドレス チャネルとデータ チャネルの READY 応答はどちらもユーザー環境からは独立して設定されます。 応答チャネル B のみがユーザー環境と通信しながら処理を進めます。 ト ランザクシ ョ ンは、 次の順で書き込みエージェン ト を通過します。

1. マスター書き込み応答ド ライバーが、 get_next_item を使用してユーザー環境に対してブロ ッキング get を実行します。 まだコマンドを受信していないため、 ユーザー環境はマスターからコマンドを受信するまで待つ必要があ り ます。

2. ユーザー環境が、 get_next_item を使用してド ライバーのリアクティブ ポートに対してブロ ッキング get を実行します。

3. この時点でド ライバーは WDATA および AWADDR からのビート を受信し、これらを保持構造体に格納できます。

4. スレーブ ド ラ イバーは、 完了した AWADDR フェーズおよび WDATA フェーズを受信した後に、 リ アクティブ ポート を介してコマンド オブジェク ト をユーザー環境へ転送します。

5. ユーザー環境は、 要求に対する応答を適切に判定し、 完了した ト ランザクシ ョ ンをド ライバーのリ クエス ト ポートに置きます。 この ト ランザクシ ョ ンには次のものが含まれます。

° コマンド情報 – AWADDR、 AWLEN、 AWSIZE、 AWID など。 ユーザー環境に 初に渡されたコマンドからの情報。

° 応答によって制御されるタイ ミ ングと応答 – 応答遅延、 BRESP。

6. ド ラ イバーはリ クエス ト ポートから ト ランザクシ ョ ンをポップして、 応答インターフェイスの処理用のキューに置き、 応答チャネルの遅延タイマーを開始します。 応答チャネルの遅延タイマーがタイムアップする前に、複数のト ランザクシ ョ ンが応答リ ス トに存在している可能性があ り ます。 応答リ ス トに複数のアイテムが存在する場合、 ド ライバーは次に送信されるべき応答を選択します。

7. BRESP を受信する と ト ランザクシ ョ ンが返されるよ うに設定されている場合、 スレーブ ド ラ イバーは WDATA のビート を書き込み、 ド ライバーの応答ポートから送信します。

8. ユーザー環境が完了した ト ランザクシ ョ ンを受信します。 X-Ref Target - Figure D-10

図 D‐10:書き込みト ランザクシ ョ ン  フロー

Slave Write Channel Driver

User Environment

3

1

6

5

7

8

2

4

X18594-121316

Page 74: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 74

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

AWREADY のタイ ミング フロー

• AWREADY は AW および W チャネルから独立して生成されます。

• AWREADY の設定は、 AW および W ペイロードを転送する ト ランザクシ ョ ンとは異なる ト ランザクシ ョ ンまたは解析ポートから取得します。

• AWREADY の設定は、 AW/W チャネルとは非同期に変更できます。

• 各種タイ ミ ング オプシ ョ ンは、 「設定可能な READY の遅延」 を参照してください。

Page 75: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 75

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

X-Ref Target - Figure D-11

図 D‐11: AWREADY のタイ ミング フロー

Initialize Current AWREADY

Configuration

GET

Initial AWREADY Configuration

AWREADY Configuration

Process Current AWREADY

Configuration

Assert AWREADY

Address Accepted

AWREADY Configuration Queue If not empty, replace

current AWREADY configuration.

X18595-040517

Page 76: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 76

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

WREADY のタイ ミング フロー

• WREADY は AW および W チャネルから独立して生成されます。

• WREADY の設定は、 AW および W ペイロードを転送する ト ランザクシ ョ ンとは異なる ト ランザクシ ョ ンまたは解析ポートから取得します。

• WREADY の設定は、 AW/W チャネルとは非同期に変更できます。

• 各種タイ ミ ング オプシ ョ ンは、 「設定可能な READY の遅延」 を参照してください。

Page 77: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 77

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

X-Ref Target - Figure D-12

図 D‐12: WREADY のタイ ミング フロー

Initialize Current WREADY

Configuration

GET

Initial WREADY Configuration

WREADY Configuration

Process Current WREADY Configuration

Assert WREADY

Write Beat Accepted

WREADY Configuration Queue If not empty, replace

current WREADY configuration.

WLAST Asserted

Write Data Channel Done

No

X18596-040517

Page 78: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 78

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

読み出しデータ/リアクシ ョ ン  データ  タイ ミング フロー図X-Ref Target - Figure D-13

図 D‐13:読み出しデータ/リアクシ ョ ン  フロー

GET

Assert RVALID

Read Data Channel Done

Last Read Beat Accepted

Data Insertion Delay (Transaction)

Data Inter-Beat Delay (Transaction)

User Environment Receives Transaction and Fills in RDATA/RRESP

Reactive Put to User Environment

AR Address Accepted

FIFO

Wait for AR Command Accepted

arcmd_accept_event

Data Channel Delay (Driver Property)

Read Beat Accepted Last Beat

R Back Pressure from Slave

Assert RLAST

Yes

X18597-040517

Page 79: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 79

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

読み出し ト ランザクシ ョ ン  フロー

AXI スレーブ読み出しエージェン トには次の 2 つのコンカレン ト ト ランザクシ ョ ン フローがあ り ます。

• アドレス チャネルの処理

• データ チャネルの処理

アドレス チャネルの READY 応答はユーザー環境から設定します。 データ チャネルはユーザー環境を使用してタイミ ングとペイロードを生成します。 ト ランザクシ ョ ンは、 次の順で読み出しエージェン ト を通過します。

1. マスター読み出し応答ド ライバーが、 get_next_item を使用してユーザー環境に対してブロ ッキング get を実行します。 まだコマンドを受信していないため、 ユーザー環境はマスターからコマンドを受信するまで待つ必要があ り ます。

2. ユーザー環境が、 get_next_item を使用してド ライバーのリアクティブ ポートに対してブロ ッキング get を実行します。

3. スレーブ ド ラ イバーが ARADDR コマンドを待ちます。

4. スレーブ ド ラ イバーは、 完了した ARADDR フェーズを受信した後に、 リ アクティブ ポート を介してコマンド オブジェク ト をシーケンサーへ転送します。 コマンド情報は、 ARADDR、 ARLEN、 ARSIZE、 ARID などのコマンド情報フ ィールドで構成されます。

5. ユーザー環境が 1 つのト ランザクシ ョ ンを作成します。 この ト ランザクシ ョ ンには次のものが含まれます。

° ペイロード – RDATA バイ ト アレイおよび RRESP アレイ

° スレーブによって制御されるタイ ミ ング – ビート間タイ ミ ングおよびデータ挿入遅延

6. ド ラ イバーはリ クエス ト ポートから ト ランザクシ ョ ンをポップして処理用のキューに置き、 インターフェイスに駆動します。 このと きシステムがアイ ドルなら、 ド ライバーはスレーブ データ チャネルの遅延タイマーを開始します。

7. タイマーがタイムアップする と、 ド ラ イバーはビート単位でデータを処理し、 インターフェイスで駆動します。複数のト ランザクシ ョ ンが保留中で、 スレーブが読み出しをサポートするよ うに設定されている場合、 保留中の複数ト ランザクシ ョ ンのビート をインターリーブします。

8. コマンドの 後のビート を受信する と ト ランザクシ ョ ンがユーザー環境に返されるよ うに設定されている場合、スレーブ ド ラ イバーはそれを応答ポートから送信します。

9. ユーザー環境が完了した ト ランザクシ ョ ンを受信します。

Page 80: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 80

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

ARREADY のタイ ミング フロー

• ARREADY は AR チャネルから独立して生成されます。

• ARREADY の設定は、 AR ペイロードを転送する ト ランザクシ ョ ンとは異なる ト ランザクシ ョ ンまたは解析ポートから取得します。

• ARREADY の設定は、 AR チャネルとは非同期に変更できます。

• 各種タイ ミ ング オプシ ョ ンは、 「設定可能な READY の遅延」 を参照してください。 X-Ref Target - Figure D-14

図 D‐14: ARREADY のタイ ミング フロー

Initialize Current ARREADY

Configuration

GET

Initial ARREADY Configuration

ARREADY Configuration

Process Current ARREADY

Configuration

Assert ARREADY

Address Accepted

ARREADY Configuration Queue If not empty, replace

current ARREADY configuration.

X18598-040517

Page 81: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 81

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

AXI パススルー エージェン ト

AXI パススルー VIP をインスタンシエートするには、パススルー エージェン ト を宣言して作成する必要があ り ます。axi_passthrough_agent ク ラスには、 パススルー VIP を構成するほかのコンポーネン トが含まれます。 パススルー VIP はランタイム マスター モード と ランタイム スレーブ モードの切り替えが可能です。 すなわちマスター読み出し ド ライバー、 マスター書き込みド ライバー、 スレーブ読み出し ド ライバー、 スレーブ書き込みド ライバー、およびモニターが含まれます。

AXI マスター読み出し ド ライバー

axi_mst_agent の AXI マスター読み出し ド ライバーと同じ機能です。

AXI マスター書き込みドライバー

axi_mst_agent の AXI マスター書き込みド ライバーと同じ機能です。

AXI スレーブ読み出し ド ライバー

axi_slv_agent の AXI スレーブ読み出し ド ライバーと同じ機能です。

AXI スレーブ書き込みドライバー

axi_slv_agent の AXI スレーブ書き込みド ライバーと同じ機能です。

AXI モニター

マスター /スレーブ エージェン トのモニターと同じ機能です。

X-Ref Target - Figure D-15

図 D‐15: AXI パススルー VIP エージェン ト

AXI Interface

Master Write Driver Master Read DriverAXI Monitor

Virtual Interface

User Environment

AXI Pass-Through Agent

Slave Write Driver Slave Read Driver

X18599-121316

Page 82: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 82

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

READY の生成

書き込みコマンド チャネル、 書き込みデータ チャネル、 書き込み応答チャネル、 読み出しコマンド チャネル、 および読み出しデータ チャネルの READY 信号は、 ほかの属性から独立して生成されます。 READY の生成には axi_ready_gen ク ラスを使用します。

設定可能な READY の遅延

各チャネルの READY 信号には、 特定の決まった挙動はあ り ません。 いつ、 どれだけの期間 READY をアサートするかの要件は存在せず、 電源投入直後に READY をアサートする必要がある と定めた要件もあ り ません。

READY 信号の制御は、 各エージェン トのド ライバーで設定します。 マスターの場合:

• RREADY

• BREADY

スレーブの場合:

• AWREADY

• ARREADY

• WREADY

READY 信号の生成を制御するために、 2 つの主要なコンフ ィギュレーシ ョ ンがあ り ます。 ただし、 プログラ ミ ング モデルを簡略化するために、 これらは異なるコンフ ィギュレーシ ョ ンと して示されるこ とがあ り ます。

表 D-2 に、 設定可能な READY の遅延の説明を示します。

表 D‐2:設定可能な READY の遅延

メンバー名 デフォルト 範囲 説明

use_variable_ranges FALSE 0 ~ 1

このプロパティを TRUE に設定した場合、 ready_gen ク ラスは設定した大値と 小値の範囲内で high_time、 low_time、 および event_count にランダムな値を生成します。

FALSE に設定した場合、 ready_gen は high_time、 low_time、 および event_count にプログラムした値を使用します。

max_low_time 5 0 ~ 232 - 1low_time の値の制約に使用します。 low_time 制約の範囲の 大値を指定します。

min_low_time 0 0 ~ 232 - 1low_time の値の制約に使用します。 low_time 制約の範囲の 小値を指定します。

low_time 2 0 ~ 232 - 1 使用する場合、 *READY を Low に駆動するサイクル数を指定します。

max_high_time 5 0 ~ 232 - 1high_time の値の制約に使用します。 high_time 制約の範囲の 大値を指定します。

min_high_time 0 0 ~ 232 - 1high_time の値の制約に使用します。 high_time 制約の範囲の 小値を指定します。

high_time 5 0 ~ 232 - 1 使用する場合、 *READY を High に駆動するサイクル数を指定します。

max_event_count 1 1 ~ 232 - 1event_count の値の制約に使用します。 event_count 制約の範囲の 大値を指定します。

min_event_count 1 1 ~ 232 - 1event_count の値の制約に使用します。 event_count 制約の範囲の 小値を指定します。

Page 83: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 83

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

GEN_SINGLE/RAND_SINGLE (デフォルトのポリシー )

このポ リシーが有効な場合、 *READY 信号は low_time サイ クルの間 0 に駆動された後、 このチャネルで 1 回のハンドシェイ クが発生するまで 1 に駆動されます。 このポ リシーは、 別のポ リシーが適用されるまで繰り返されます。

event_count 1 0 ~ 232 - 1使用する場合、 ポ リシー終了までにサンプルするハンドシェイ クの回数を指定します。

event_count_reset 2000 0 ~ 232 - 1 ウォ ッチド ッグの待機時間を指定します。

表 D‐2:設定可能な READY の遅延 (続き)

メンバー名 デフォルト 範囲 説明

X-Ref Target - Figure D-16

図 D‐16: GEN_SINGLE/RAND_SINGLE

low_time

*READY

A B

high_time

*VALID

X18603-031517

Page 84: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 84

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

GEN_OSC/RAND_OSC – アサート後、 一定のサイクル数が経過する間はアサート続行

このポ リシーが有効な場合、 *READY 信号は low_time サイ クルの間 0 に駆動された後、 high_time サイクルの間 1 に駆動されます。

注記:指定したサイクル数が経過するまで、 *READY はアサート されたままです。 このポ リシーは、 別のポ リシーが適用されるまで繰り返されます。

図 D-17 に示すよ うに、 イベン ト A が発生してから low_time ACLK の遅延の後に READY がアサート されます。high_time サイ クルの ACLK が経過する と READY はディアサート され、 カウンターは A から再スタート します。

GEN_EVENTS/RAND_EVENTS – アサート後、 一定回数のイベントが発生している間はアサート続行

このポ リシーが有効な場合、 *READY 信号は low_time サイ クルの間 0 に駆動された後、 event_count 回数のハンドシェイ クが発生するまで 1 に駆動されます。

注記: event_cycle_count_reset サイクルが経過しても、 プログラムしたイベン ト回数に達しない場合、 内蔵のウォッチド ッグ タイマーが ト リガーします。 これによ り、 ポ リ シーのその部分は終了します。 このポ リシーは、 別のポ リシーが適用されるまで繰り返されます。

low_time の値の範囲は 0 ~ 256 サイクルです。READY は N 回のチャネル受信イベン トが発生している間アサートされたままです (N は 1 ~ N ビート )。 これによ り、 ある一定のサイクル数の後 READY をアサート して、 無限にアサート したままにするこ と も、 一定回数のイベン トが発生している間アサートするこ と もできます。

セルフドレイン FIFO をモデル化できるよ うに、 イベン ト サイクル カウン ト タイムによる リセッ ト機能があ り ます。これを使用する と、 一定回数のイベン トが発生した時点でイベン ト サイクル カウン ト タイムがタイムアップしていなければ READY をディアサートするよ うに設定できます。 この場合、 イベン ト カウン トはリセッ ト され、 READY はさらに N 回のイベン トが発生している間アサート されたままです。

図 D-18 に示すよ うに、 イベン ト A が発生してから low_time ACLK の遅延の後に READY がアサート されます。イベン ト E1 ~ E4 の間アサート されたままで、 イベン ト回数の条件が満たされる とディアサート されます。 アルゴリズムは A から再スタート します。

X-Ref Target - Figure D-17

図 D‐17: GEN_OSC/RAND_OSC

low_time

*READY

A B

high_time

X18601-031517

Page 85: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 85

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

GEN_AFTER_VALID_SINGLE/RAND_AFTER_VALID_SINGLE

このポ リシーは、 *VALID のアサートが検出される と有効になり ます。 このポ リシーが有効になる と、 *READY は low_time サイ クルの間 Low に駆動されてからアサート され、 1 回のハンドシェイ クが検出される とディアサートされます。 このポ リシーは、 別のポ リシーが適用されるまで繰り返されます。

X-Ref Target - Figure D-18

図 D‐18: GEN_EVENTS/RAND_EVENTS

low_time

Event Counter

*READY

A E1 E2 E3 E4

X18600-031517

X-Ref Target - Figure D-19

図 D‐19: GEN_AFTER_VALID_SINGLE/RAND_AFTER_VALID_SINGLE

low_time

*READY

A B

high_time

*VALID

X18603-031517

Page 86: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 86

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

GEN_AFTER_VALID_EVENTS/RAND_AFTER_VALID_EVENTS

このポ リシーは、 *VALID のアサートが検出される と有効になり ます。 このポ リシーが有効になる と、 *READY は low_time サイ クルの間 Low に駆動されてから High にアサート され、 event_count 回数のハンドシェイ クを受信するか、 または event_count_reset サイクルが経過する とディアサート されます。 このポ リシーは、 別のポ リシーが適用されるまで繰り返されます。

X-Ref Target - Figure D-20

図 D‐20: GEN_AFTER_VALID_EVENTS/RAND_AFTER_VALID_EVENTS

delta1

Event Counter

*READY

A E1 E2 E3 E4

*VALID

X18602-121316

Page 87: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 87

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 D: AXI VIP エージェン ト とフロー メ ソ ドロジ

GEN_AFTER_VALID_OSC/RAND_AFTER_VALID_OSC

このポ リシーは、 *VALID のアサートが検出される と有効になり ます。 このポ リシーが有効になる と、 *READY は Low for low_time サイクルの間 Low に駆動されてから high_time サイクルの間アサート されます。 このポ リシーは、 別のポ リシーが適用されるまで繰り返されます。

GEN_NO_BACKPRESSURE

このポ リシーは、 ready 信号を生成してアサート したままにします。 ド ライバーがポ リシーの変更を検出するまでポ リシーは変わり ません。

GEN_AFTER_RANDOM

このポ リシーは、 low_time、 high_time、 および event_count を含む各種ポリシーをランダムに生成します。このポ リシーを使用する と、 1 つのポリシーが終了後、 次のポ リシーがランダムに選択されます。

low_time、 high_time、および event_count の値は、 それぞれの 大値/ 小値のペアを使用して生成されます。

X-Ref Target - Figure D-21

図 D‐21: GEN_AFTER_VALID_OSC/RAND_AFTER_VALID_OSC

low_time

*READY

A B

high_time

*VALID

X18603-031517

Page 88: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 88

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 E

デバッグこの付録では、 ザイ リ ンクス サポート ウェブサイ ト よ り入手可能な リ ソースおよびデバッグ ツールについて説明します。

ザイリンクス ウェブサイ ト

AXI VIP を使用した設計およびデバッグでヘルプが必要な場合は、 ザイ リ ンクス サポート ウェブ ページから製品の資料、 リ リース ノート、 アンサーなどを参照するか、 テクニカル サポートでサービス リ クエス ト を作成してください。

資料

この製品ガイ ドは AXI VIP に関する主要資料です。 このガイ ド、 並びに設計プロセスで使用する各製品の関連資料はすべて、ザイ リ ンクス サポート ウェブ ページ (https://japan.xilinx.com/support) または Xilinx Documentation Navigator から入手できます。

Xilinx Documentation Navigator は、 ダウンロード ページからダウンロードできます。 このツールの詳細および機能は、 インス トール後にオンライン ヘルプを参照してください。

アンサー 

アンサーには、 よ く発生する問題についてその解決方法、 およびザイ リ ンクス製品に関する既知の問題などの情報が記載されています。 アンサーは、 ユーザーが該当製品の 新情報にアクセスできるよ う作成および管理されています。

このコアに関するアンサーの検索には、 ザイ リ ンクス サポート ウェブ ページにある検索ボッ クスを使用します。 より的確な検索結果を得るには、 次のよ うなキーワードを使用してください。

• 製品名

• ツールで表示される メ ッセージ

• 問題の概要

検索結果は、 フ ィルター機能を使用してさ らに絞り込むこ とができます。

AXI VIP に関するマスター アンサー

AR: 68234

Page 89: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 89

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 E:デバッグ

テクニカル サポート

ザイ リ ンクスは、 製品資料の説明に従って使用されている LogiCORE™ IP 製品に対するテクニカル サポート を japan.xilinx.com/support で提供しています。 ただし、 次のいずれかに該当する場合、 タイ ミ ング、 機能、 サポートは保証されません。

• 資料で定義されていないデバイスにソ リ ューシ ョ ンをインプリ メン ト した場合。

• 資料で定義されている許容範囲を超えてカスタマイズした場合。

• 「DO NOT MODIFY」 と されているデザイン セクシ ョ ンに変更を加えた場合。

ザイ リ ンクス テクニカル サポートへのお問い合わせは、 ザイ リ ンクス サポート ウェブ ページを参照してください。

Page 90: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 90

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 F

その他のリソースおよび法的通知

ザイリンクス リソース

アンサー、 資料、 ダウンロード、 フォーラムなどのサポート リ ソースは、 ザイ リ ンクス サポート サイ ト を参照してください。

Xilinx Documentation Navigator およびデザイン  ハブ

Xilinx Documentation Navigator (DocNav) を使用する とザイ リ ンクスの資料、 ビデオ、 およびサポート リ ソースにアクセスして情報をフ ィルター、 検索できます。 Xilinx Documentation Navigator を開くには、 次のいずれかを実行します。

• Vivado IDE で [Help] → [Documentation and Tutorials] をク リ ッ ク します。

• Windows で [スタート ] → [すべてのプログラム] → [Xilinx Design Tools] → [DocNav] をク リ ッ ク します。

• Linux コマンド プロンプ トに 「docnav」 と入力します。

ザイ リ ンクス デザイン ハブには、 資料やビデオへのリ ンクがデザイン タスクおよびト ピッ クごとにま とめられており、 これらを参照するこ とでキー コンセプ ト を学び、 よ く ある質問を解決できます。 デザイン ハブにアクセスするには、 次のいずれかを実行します。

• Xilinx Documentation Navigator で [Design Hubs View] タブをク リ ッ ク します。

• ザイ リ ンクス ウェブサイ トのデザイン ハブ ページを参照します。

注記: Xilinx Documentation Navigator の詳細は、ザイ リ ンクス ウェブサイ トの Xilinx Documentation Navigator ページを参照してください。

注意: Xilinx Documentation Navigator からは、 日本語版は参照できません。 ウェブサイ トのデザイン ハブ ページの一部は翻訳されており、 日本語版が提供されている場合はそのリ ンク も追加されています。

Page 91: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 91

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 F: その他のリソースおよび法的通知

参考資料

次の資料は、 この製品ガイ ドの補足資料と して役立ちます。

注記:日本語版のバージ ョ ンは、 英語版よ り古い場合があ り ます。

1. 『ARM® AMBA® 4 AXI4, AXI4-Lite, and AXI4-Stream Protocol Assertions User Guide』 (DUI0534B)

2. ARM AMBA AXI 仕様のダウンロード方法は、 ARM AMBA仕様に記載されています。 次の仕様書を参照してください。

° 『AMBA AXI4-Stream Protocol Specification』

° 『AMBA AXI Protocol v2.0 Specification』

3. 『Vivado Design Suite: AXI リ ファレンス ガイ ド』 (UG1037: 英語版、 日本語版)

4. 『AXI Protocol Checker LogiCORE™ IP 製品ガイ ド (PG101)

5. 『Vivado Design Suite ユーザー ガイ ド : IP インテグレーターを使用した IP サブシステムの設計』 (UG994: 英語版、日本語版)

6. 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896: 英語版、 日本語版)

7. 『Vivado Design Suite ユーザー ガイ ド : 入門』 (UG910: 英語版、 日本語版)

8. 『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900: 英語版、 日本語版)

9. 『ISE から Vivado Design Suite への移行ガイ ド』 (UG911: 英語版、 日本語版)

10. 『Vivado Design Suite ユーザー ガイ ド : インプ リ メンテーシ ョ ン』 (UG904: 英語版、 日本語版)

11. 『LogiCORE IP AXI Interconnect 製品ガイ ド』 (PG059)

12. ザイ リ ンクス AXI VIP API の資料

Page 92: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 92

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 F: その他のリソースおよび法的通知

改訂履歴

次の表に、 この文書の改訂履歴を示します。

日付 バージョ ン 内容

2017 年 10 月 4 日 1.1 • 「IP の概要」 に注記 6 を追加。

• 「AXI VIP のユーザー パラ メーター」 の表で SUPPORTS_NARROW、HAS_LOCK、 HAS_WSTRB、 HAS_BRESP、 および HAS_RRESP の説明を更新。

• 「ザイ リ ンクス固有のコンフ ィギュレーシ ョ ン チェッ ク と説明」 の表に ARESET_XCHECK と XILINX_AXI_ERRM_RESET_PULSE_WIDTH を追加。

• 「参考資料」 の 1 (ARM 社資料) を更新。

• 「サンプル デザイン」 の章の 「概要」 セクシ ョ ンを更新。

• 「テス トベンチ」 の章の 「READY 信号の生成」 セクシ ョ ンのコードを更新。

• 「テス トベンチ」 の章で 「テス トベンチの必須条件」 セクシ ョ ンを更新、 および「AXI スレーブ VIP のリ アクティブ ポート 」 セクシ ョ ンを追加。

• 「設定可能な READY の遅延」 のセクシ ョ ンに GEN_NO_BACKPRESSURE を追加。

• 「axi_vip_v1_1_top API」 の付録を追加。

2017 年 6 月 7 日 1.0 • 「IP の概要」 の表に注記 5 ~ 7 を追加。

• 「テス トベンチ」 の章の 「複数のシ ミ ュレーシ ョ ン セッ ト 」 セクシ ョ ンに説明を追加。

• 「テス トベンチ」 の章の 「AXI パススルー VIP」 セクシ ョ ンに typedef の説明を追加。

2017 年 4 月 5 日 1.0 初版

Page 93: AXI Verification IP v1 - Xilinx...AXI Verification IP v1.1 LogiCORE IP 製品ガイド Vivado Design Suite PG267 2017 年 10 月 4 日 この資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。資料に

AXI VIP v1.1 93

PG267 2017 年 10 月 4 日 japan.xilinx.com

付録 F: その他のリソースおよび法的通知

お読みください: 重要な法的通知本通知に基づいて貴殿または貴社 (本通知の被通知者が個人の場合には 「貴殿」、 法人その他の団体の場合には 「貴社」。 以下同じ ) に開示される情報 (以下 「本情報」 といいます) は、 ザイ リ ンクスの製品を選択および使用するこ とのためにのみ提供されます。 適

用される法律が許容する 大限の範囲で、 (1) 本情報は 「現状有姿」、 およびすべて受領者の責任で (with all faults) とい う状態で提供

され、 ザイ リ ンクスは、 本通知をもって、 明示、 黙示、 法定を問わず (商品性、 非侵害、 特定目的適合性の保証を含みますがこれ

らに限られません)、 すべての保証および条件を負わない (否認する ) ものと します。 また、 (2) ザイ リ ンクスは、 本情報 (貴殿または

貴社による本情報の使用を含む) に関係し、 起因し、 関連する、 いかなる種類 ・ 性質の損失または損害についても、 責任を負わな

い (契約上、 不法行為上 (過失の場合を含む)、 その他のいかなる責任の法理によるかを問わない) ものと し、 当該損失または損害に

は、 直接、 間接、 特別、 付随的、 結果的な損失または損害 (第三者が起こした行為の結果被った、 データ、 利益、 業務上の信用の

損失、 その他あらゆる種類の損失や損害を含みます) が含まれるものと し、 それは、 たとえ当該損害や損失が合理的に予見可能で

あったり、 ザイ リ ンクスがそれらの可能性について助言を受けていた場合であったと しても同様です。 ザイ リ ンクスは、 本情報に

含まれるいかなる誤り も訂正する義務を負わず、 本情報または製品仕様のアップデート を貴殿または貴社に知らせる義務も負いま

せん。 事前の書面による同意のない限り、 貴殿または貴社は本情報を再生産、 変更、 頒布、 または公に展示してはなり ません。 一

定の製品は、 ザイ リ ンクスの限定的保証の諸条件に従う こ と となるので、 https://japan.xilinx.com/legal.htm#tos で見られるザイ リ ンク

スの販売条件を参照してください。 IP コアは、 ザイ リ ンクスが貴殿または貴社に付与したライセンスに含まれる保証と補助的条件

に従う こ とにな り ます。 ザイ リ ンクスの製品は、 フェイルセーフと して、 または、 フェイルセーフの動作を要求するアプリ ケー

シ ョ ンに使用するために、 設計されたり意図されたり していません。 そのよ うな重大なアプリ ケーシ ョ ンにザイ リ ンクスの製品を

使用する場合のリ スク と責任は、 貴殿または貴社が単独で負う ものです。 https://japan.xilinx.com/legal.htm#tos で見られるザイ リ ンク

スの販売条件を参照してください。

自動車用のアプリケーシ ョ ンの免責条項

オートモーティブ製品 (製品番号に 「XA」 が含まれる ) は、 ISO 26262 自動車用機能安全規格に従った安全コンセプ ト または余剰性

の機能 ( 「セーフティ設計」 ) がない限り、 エアバッグの展開における使用または車両の制御に影響するアプリ ケーシ ョ ン ( 「セー

フティ アプリ ケーシ ョ ン」 ) における使用は保証されていません。 顧客は、 製品を組み込むすべてのシステムについて、 その使用

前または提供前に安全を目的と して十分なテス ト を行う ものと します。 セーフティ設計なしにセーフティ アプリ ケーシ ョ ンで製品

を使用する リ スクはすべて顧客が負い、 製品の責任の制限を規定する適用法令および規則にのみ従う ものと します。

© Copyright 2017 Xilinx, Inc. Xilinx、 Xilinx のロゴ、 Artix、 ISE、 Kintex、 Spartan、 Virtex、 Vivado、 Zynq、 およびこの文書に含まれる

その他の指定されたブランドは、 米国およびその他各国のザイ リ ンクス社の商標です。 すべてのその他の商標は、 それぞれの保有

者に帰属します。

この資料に関するフ ィードバッ クおよびリ ンクなどの問題につきましては、 [email protected] まで、 または各ページの

右下にある [フ ィードバッ ク送信] ボタンをク リ ッ クする と表示されるフォームからお知らせください。 フ ィードバッ クは日本語で

入力可能です。 いただきましたご意見を参考に早急に対応させていただきます。 なお、 このメール アドレスへのお問い合わせは受

け付けており ません。 あらかじめご了承ください。