88
AXI リファレンス ガイド UG761 (v13.1) 2011 3 7

AXI リファレンス ガイド

Embed Size (px)

Citation preview

AXI リファレンスガイ ド

UG761 (v13.1) 2011 年 3 月 7 日

AXI リファレンス ガイド japan.xilinx.com UG761 (v13.1) 2011 年 3 月 7 日

Xilinx is providing this product documentation, hereinafter “Information,” to you “AS IS” with no warranty of any kind, expressor implied. Xilinx makes no representation that the Information, or any particular implementation thereof, is free from any claimsof infringement. You are responsible for obtaining any rights you may require for any implementation based on the Information.All specifications are subject to change without notice.

XILINX EXPRESSLY DISCLAIMS ANY WARRANTY WHATSOEVER WITH RESPECT TO THE ADEQUACY OF THEINFORMATION OR ANY IMPLEMENTATION BASED THEREON, INCLUDING BUT NOT LIMITED TO ANYWARRANTIES OR REPRESENTATIONS THAT THIS IMPLEMENTATION IS FREE FROM CLAIMS OFINFRINGEMENT AND ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULARPURPOSE.

Except as stated herein, none of the Information may be copied, reproduced, distributed, republished, downloaded, displayed,posted, or transmitted in any form or by any means including, but not limited to, electronic, mechanical, photocopying,recording, or otherwise, without the prior written consent of Xilinx.

© 2011 Xilinx, Inc. XILINX, the Xilinx logo, Virtex, Spartan, ISE, and other designated brands included herein are trademarksof Xilinx in the United States and other countries. All other trademarks are the property of their respective owners.

ARM® and AMBA® are registered trademarks of ARM in the EU and other countries. All other trademarks are the property oftheir respective owners.

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

改訂履歴次の表に、 この文書の改訂履歴を示します。

日付 バージョ ン 改訂の説明

2010 年 9 月 21 日 1.0 ザイ リ ンクスによる初版リ リース 12.4。

2011 年 3 月 1 日 2.0 ザイ リ ンクスによる第 2 版リ リース 13.1。

AXI インターコネク トの新機能を追加。

付録 A の ARESETN に関する説明を修正。

2011 年 3 月 7 日 3.0 リ ンク切れを修正。

AXI リファレンス ガイド japan.xilinx.com 1UG761 (v13.1) 2011 年 3 月 7 日

改訂履歴. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

第 1 章 : ザイリンクス システム開発のための AXI 入門概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5AXI の概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

AXI4 の利点のまとめ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6AXI の動作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6IP の相互運用性. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

データ解釈について . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8IP の互換性について . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8インフラス ト ラ クチャ IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9メモ リマップ方式のプロ ト コル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9AXI4-Stream プロ ト コル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9AXI4-Stream と メモ リマップ方式のプロ ト コルの組み合わせ . . . . . . . . . . . . . . . . . . . . . . . . . .9

AXI によって置き換えられるプロ ト コル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10ターゲッ ト リ ファレンス デザイン. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10その他の参考資料 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポートザイ リ ンクス デザイン ツールによる AXI 開発の支援 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

エンベデッ ド開発キッ ト : Embedded Edition および System Edition . . . . . . . . . . . . . . . . . . .13AXI エンベデッ ド システムの新規作成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13AXI IP の作成と インポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14デザインのデバッグおよび検証 : XPS による ChipScope の使用法 . . . . . . . . . . . . . . . .14

Project Navigator におけるプロセッサを含まないエンベデッ ド IP の使用法 . . . . . . . . . . . . .14System Generator : DSP Edition の使用法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15

System Generator による AXI4 のサポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15ザイ リ ンクス AXI IP : Logic Edition での使用法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17

ザイ リ ンクス AXI インフラス ト ラ クチャ IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19ザイ リ ンクス AXI インターコネク ト コア IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19

AXI インターコネク ト コアの特長 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19AXI インターコネク ト コアの制約 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22AXI インターコネク ト コア接続図 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23AXI インターコネク ト コアの使用モデル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23幅変換 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27N 対 M インターコネク ト (共有アクセス モード ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28ク ロ ッ ク変換 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29パイプライン処理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29ペリ フェラル レジスタ スライス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29データ パス FIFO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29

AXI インターコネク ト コアのスレーブとマスターの接続 . . . . . . . . . . . . . . . . . . . . . . . . . . . .30AXI-To-AXI コネク ターの特徴 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30内容 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30AXI-To-AXI コネク ターの使用法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31

外部マスターおよびスレーブ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31

Centralized DMA (セン ト ラル DMA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33AXI セン ト ラル DMA の概要. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34AXI セン ト ラル DMA のスキャ ッ ター ギャザー機能 . . . . . . . . . . . . . . . . . . . . . . . . . . .34セン ト ラル DMA の設定可能な機能. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34セン ト ラル DMA の AXI4 インターフェイス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35

目次

2 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

イーサネッ ト DMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35AXI4 DMA の概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37DMA の AXI4 インターフェイス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38

ビデオ DMA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39AXI VDMA の概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40VDMA の AXI4 インターフェイス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41

メモ リ制御 IP およびメモ リ インターフェイス ジェネレーター . . . . . . . . . . . . . . . . . . . . . . .41Virtex-6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42Spartan-6 のメモ リ制御ブロ ッ ク . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42

第 3 章 : ザイリンクス FPGA に導入された AXI 機能メモ リマップ方式 IP の機能の導入とサポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45AXI4-Stream の導入とサポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

AXI4-Stream 信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47AXI4-Stream 内の数値データ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47実数スカラー データの例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49複素スカラー データの例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50ベクター データの例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51パケッ ト と ヌル バイ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .54サイ ドバンド信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55イベン ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55TLAST イベン ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56

DSP と ワイヤレス IP AXI 機能の導入 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

第 4 章 : ザイリンクス AXI プロ ト コルへの移行概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

IP コアの AXI への移行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59AXI-To-PLB ブリ ッジ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60AXI4 スレーブ インターフェイス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60PLBv4.6 マスター インターフェイス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61AXI-To-PLBv4.6 ブリ ッジの機能説明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61

Local-Link から AXI4-Stream への移行. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62Local-Link の必須信号から AXI4-Stream 信号への対応付け . . . . . . . . . . . . . . . . . . . . . . . . . .62

Local-Link のオプシ ョ ン信号から AXI4-Stream 信号への対応付け . . . . . . . . . . . . . . . .64Local-Link IP のバリエーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65Local-Link に関する参考文献 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65

IP 移行における System Generator の使用法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65System Generator for DSP IP の AXI への移行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65

リセッ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65ク ロ ッ ク イネーブル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65TDATA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .65ポートの順序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66レイテンシ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67出力幅の仕様 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67

System Generator における PLBv4.6 インターフェイスの移行 . . . . . . . . . . . . . . . . . . . . . . . .67FSL ( 高速シンプレッ クス リ ンク ) から AXI4-Stream への移行 . . . . . . . . . . . . . . . . . . . . . . . . . . 67

マスター FSL から AXI4-Stream 信号への対応付け . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67スレーブ FSL から AXI4-Stream 信号への対応付け . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68スロ ッ トルの相違点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68

DSP IP で AXI4-Stream を使用するための HDL デザインの移行 . . . . . . . . . . . . . . . . . . . . . . . . . 69各 DSP IP 固有の移行に関する指示 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69

デモ テス トベンチ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69IP アップグレードのための CORE Generator の使用法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .70レイテンシの変更 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .70スレーブ FSL から AXI4-Stream 信号への対応付け . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .71

AXI リファレンス ガイド japan.xilinx.com 3UG761 (v13.1) 2011 年 3 月 7 日

AXI 移行におけるソフ ト ウェア ツールに関する考慮事項 ( エンディアンの反転 ) . . . . . . . . . . . . 71ビッグ エンディアンから リ トル エンディアンへの移行時のガイ ド ラ イン . . . . . . . . . . . . . . . . . . . 72データ タイプとエンディアンネス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73ハイエンドの検証ソ リ ューシ ョ ン. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

付録 A : AXI 導入のまとめAXI4 および AXI4-Lite 信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

グローバル信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .75AXI4 および AXI4-Lite 書き込みアドレス チャネル信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . .76AXI4 および AXI4-Lite 書き込みデータ チャネル信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .77AXI4 および AXI4-Lite 書き込み応答チャネル信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .78AXI4 および AXI4-Lite 読み出しアドレス チャネル信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . .78AXI4 および AXI4-Lite 読み出しデータ チャネル信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .80

AXI4-Stream 信号のまとめ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

付録 B : AXI の用語

4 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

AXI リファレンス ガイド japan.xilinx.com 5UG761 (v13.1) 2011 年 3 月 7 日

第 1 章

ザイリンクス システム開発のための AXI 入門

概要

ザイ リ ン ク ス®では、 Spartan®-6 および Virtex®-6 デバイ ス以降、 IP コ アに AXI (AdvancedeXtensible Interface) プロ ト コルを採用しています。

このリ ファレンス ガイ ドは、 次を目的と しています。

• AXI プロ ト コルの主要概念の紹介

• AXI ベースの IP 作成に利用できるザイ リ ンクス ツールの概要紹介

• ザイ リ ンクスが採用した AXI の機能の説明

• 既存デザインから AXI への移行方法に関するガイ ド ラインの提供

メモ : この リ ファレンス ガイ ドは、 AMBA® (Advanced Microcontroller Bus Architecture) ARM®

AXI4 仕様に代わるものではあ り ません。AXI によるデザインを開始する前に、『ARM AMBA AXIProtocol v2.0 Specification』 および 『AMBA4 AXI4-Stream Protocol v1.0』 をダウンロード して読

み理解する必要があ り ます。

仕様のダウンロード手順は次のとおりです。 資料をダウンロードする前に、 簡単な登録フォームに

入力する必要があ り ます。

1. www.amba.com にアクセスします。

2. [Download Specifications] をク リ ッ ク します。

3. 画面左側の [Contents] ペインよ り [AMBA] → [AMBA Specifications] → [AMBA4] をク リ ッ

ク します。

4. 『ABMA AXI4-Stream Protocol Specification』 および 『ABMA AXI Protocol Specificationv2.0』 の両方をダウンロード します。

AXI の概要

AXI は、 1996 年に公開されたマイ ク ロコン ト ローラー バス ファ ミ リ ARM AMBA の一部です。

AXI の 初のバージ ョ ンは、 2003 年にリ リースされた AMBA 3.0 で導入されました。 2010 年に

リ リースされた AMBA 4.0 には AXI の 2 番目のバージ ョ ンである AXI4 が含まれています。

AXI4 インターフェイスには、 次の 3 つの種類があ り ます。

• AXI4 ― メモ リマップ方式の高性能インターフェイスです。

• AXI4-Lite ― 簡素化された低スループッ トのメモ リマップ方式通信インターフェイスです (制御レジスタやステータス レジスタ との通信などに使用)。

• AXI4-Stream ― 高速のデータ ス ト リーミ ング用インターフェイスです。

ザイ リ ンクスでは、 ISE® Design Suite リ リース 12.3 で、 これらのインターフェイスを導入しました。

6 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 1 章 : ザイリンクス システム開発のための AXI 入門

AXI4 の利点のまとめ AXI4 はあらゆるザイ リ ンクス製品を改善および強化し、 生産性、 柔軟性、 そして可用性の向上と

いう利点を提供します。

• 生産性 ― AXI インターフェイスによる標準化によ り、開発者が習得しなければならない IP 用のプロ ト コルが 1 つで済みます。

• 柔軟性 ― アプリ ケーシ ョ ンに適したプロ ト コルを提供できます。

• AXI4 はメモリマップ方式のインターフェイス用プロ ト コルであり、1 つのアドレス フェー

ズによって 大 256 データ サイクルのバース ト転送が可能です。

• AXI4-Lite は、 メモ リマップ方式を用いた単一ト ランザクシ ョ ン専用の軽量インターフェ

イスです。 ロジッ クのフッ トプ リ ン トが小さ く、 設計時にも使用時にも扱いやすいシンプ

ルなインターフェイスです。

• AXI4-Stream は、 アドレス フェーズの要件をすべて取り去った、 データ バース ト サイズに

制約のないプロ ト コルです。AXI4-Stream によるインターフェイスおよび転送にはアドレス

フェーズが存在しないため、 メモリマップ方式のインターフェイスとは見なされません。

• 可用性 ― 業界の標準規格に移行するこ とで、 ザイ リ ンクスの IP カタログだけでなく、世界的

に展開している ARM 社パートナー コ ミ ュニティが提供する IP が利用可能になり ます。

• 多くの IP プロバイダーが AXI プロ ト コルをサポート しています。

• AXI ツールの強力なサードパーティ ベンダーが、 検証、 システム開発、 性能評価用のさ

まざまなツールを提供しています。AXI ベースのよ り高性能なシステムの開発を始めるに

は、 これらのツールが不可欠とな り ます。

AXI の動作

こ こでは、 AXI インターフェイスの動作について概要を説明します。 5 ページの 「概要」 に ARM仕様を入手する手順を示しています。 AXI の動作の詳細は、 これらの仕様を参照してください。

AXI 仕様では、 相互に情報を交換する IP コアと して表された 1 つの AXI マスターと 1 つの AXIスレーブ間のインターフェイスを規定しています。 メモ リマップ方式の AXI のマスターと スレー

ブは、 インターコネク ト ブロ ッ ク と呼ばれる構造によって接続されます。 ザイ リ ンクスの AXI インターコネク ト IP には AXI 準拠のマスターおよびスレーブ インターフェイスが含まれ、 1 つ以上

の AXI マスターおよびスレーブ間の ト ランザクシ ョ ン配線に使用できます。 AXI インターコネク

ト IP については、 19 ページの 「ザイ リ ンクス AXI インターコネク ト コア IP」 で説明します。

AXI4 および AXI4-Lite インターフェイスは、 次の 5 つのチャネルから構成されます。

• 読み出しアドレス チャネル

• 書き込みアドレス チャネル

• 読み出しデータ チャネル

• 書き込みデータ チャネル

• 書き込み応答チャネル

データは、 マスターとスレーブ間で双方向に同時転送が可能であ り、 それぞれの転送データのサイ

ズは異なっていてもかまいません。 サポート されるバース ト ト ランザクシ ョ ンのサイズは 大で

256 のデータ転送です。AXI4-Lite の場合は、1 ト ランザクシ ョ ンあた り 1 データの転送のみサポー

ト されます。

7 ページの図 1-1 は、 AXI4 読み出し ト ランザクシ ョ ンにおいて、 読み出しアドレスおよび読み出

しデータ チャネルがどのよ うに使用されるかを示したものです。

AXI リファレンス ガイド japan.xilinx.com 7UG761 (v13.1) 2011 年 3 月 7 日

AXI の動作

図 1-2 は、 書き込みト ランザクシ ョ ンにおいて、 書き込みアドレス、 書き込みデータ、 および書き

込み応答チャネルがどのよ うに使用されるかを示したものです。

図に示したとおり、 AXI4 では読み出し と書き込みのいずれの場合も、 データ とアドレスで別々の

接続を使用します。 このよ うなアーキテクチャを使用しているこ とによ り、 双方向から同時にデー

タを転送できるよ うにな り ます。 AXI4 はアドレスを 1 つ要求し、 大 256 ワードのデータをバー

ス ト転送します。 AXI4 準拠のシステムのデータ スループッ ト を高める さまざまなオプシ ョ ンが

AXI4 プロ ト コルに記述されています。 たとえばバース ト以外にも、 データのアップサイジングお

よびダウンサイジング、 Multiple Outstanding アドレス機能、 アウ トオブオーダー ト ランザクシ ョ

ン処理などの機能があ り ます。

ハード ウェア レベルの特徴と しては、 AXI マスター /スレーブの各ペアに対して異なるクロ ッ クを

使用できる とい う機能があ り ます。 また、 タイ ミ ング ク ロージャを容易にするためにレジスタ スライス (パイプライン ステージと も呼ばれる) を挿入できます。

X-Ref Target - Figure 1-1

図 1-1 : 読み出しのチャネル アーキテクチャ

X-Ref Target - Figure 1-2

図 1-2 : 書き込みのチャネル アーキテクチャ

Masterinterface

Read address channelAddress

andcontrol

Read data channel

Readdata

Readdata

Readdata

Readdata

Slaveinterface

X12076

Masterinterface

Write address channelAddress

andcontrol

Write data channel

Writedata

Writedata

Writedata

Writedata

Writeresponse

Write response channel

Slaveinterface

X12077

8 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 1 章 : ザイリンクス システム開発のための AXI 入門

AXI4-Lite の機能は、 いくつかの点を除き AXI4 と同様です。 も顕著な相違点は、 AXI4-Lite では

バース ト転送がサポート されていないこ とです。『ARM AMBA AXI Protocol v2.0 Specification』 の

AXI4-Lite に関する章に、 このプロ ト コルに関する詳細が記載されています。

AXI4-Stream プロ ト コルは、 ス ト リーミ ング データの伝送に使用する単一のチャネルを定義しま

す。 AXI4-Stream チャネルは、 AXI4 の書き込みデータ チャネルをモデルにしています。 ただし、

AXI4 とは異なり、 AXI4-Stream インターフェイスでは、 バース ト転送するデータ量に制限があ り

ません。 『AXI4-Stream Protocol Specification』 には、 これ以外にもオプシ ョ ン機能についての記

述があ り ます。 また、 AXI4-Stream 準拠のインターフェイスを分割、 結合、 インターリーブ、 アッ

プサイジング、 ダウンサイジングする方法も記載されています。 AXI4 とは異な り、 AXI4-Streamでは転送順序を並べ替えるこ とはできません。

AXI4-Stream の場合、 2 つの IP がいずれも AXI4-Stream 仕様に従って設計され、 信号レベルでは

互換性を持っていたと しても、 よ りハイレベルのシステムを考えた場合、 これら 2 つのコンポーネ

ン トが適切に連動する とは限り ません。 詳細は、 http://japan.xilinx.com/ipcenter/axi4.htm の AXIIP 仕様、 および 47 ページの 「AXI4-Stream 信号」 を参照してください。

IP の相互運用性

AXI 仕様は、シグナリ ングの規格を定義するこ とで、IP 間のデータ転送用プロ ト コルを規定するフ

レームワークを提供します。 この規格は、 データが IP 間で確実に交換され、 システム全体に行き

渡るよ うにします。

AXI IP の相互運用性は、 次に影響を与えます。

• IP アプリ ケーシ ョ ン空間

• IP によるデータ解釈の方法

• 使用する AXI インターフェイス プロ ト コル (AXI4、 AXI4-Lite、 AXI4-Stream のいずれか)

AXI プロ ト コルは、 データの交換、 転送、 変換方法を定義します。 また、 効率的かつ柔軟で予測性

の高い、 確実なデータ転送手段を提供します。

データ解釈について AXI プロ ト コルによってデータ解釈が規定または実行されるこ とはあ り ません。 したがって、設計

者がデータの内容を把握し、 異なる IP 間でデータ解釈の方法に互換性を持たせる必要があ り ます。

メモ リマップ方式の AXI4 インターフェイスを持つ汎用プロセッサなどの IP の場合、 エンドポイ

ン ト IP の要件に応じてデータをフォーマッ トおよび解釈するプロセッサをどのよ うにプログラ ミ

ングするかには、 高い自由度があ り ます。

IP の互換性について AXI4-Stream を使用する IP の中でも、イーサネッ ト MAC (EMAC) やビデオ ディ スプレイなどの

特定用途向け IP の場合、その互換性は対応するアプリ ケーシ ョ ンに限定されたものになり ます。し

たがって、たとえばイーサネッ ト MAC の IP をビデオ ディ スプレイ IP に直接接続するこ とは現実

的ではあ り ません。

メモ : EMAC と ビデオ ス ト リーミ ングなどの 2 つの IP が理論上はデータを交換できたと しても、

ビッ ト フ ィールドやデータ パケッ トの解釈の方法が両者ではまったく異なるため、連携した動作は

不可能です。

AXI リファレンス ガイド japan.xilinx.com 9UG761 (v13.1) 2011 年 3 月 7 日

IP の相互運用性

インフラス ト ラクチャ IP システムを構築する IP の別の形態と して、 インフラス ト ラ クチャ IP があ り ます。 インフラス ト ラ

クチャ IP は、 システム内のデータを汎用 AXI4 インターフェイスによって転送または変換するの

みでデータの解釈は行わない、 汎用 IP の場合がほとんどです。

インフラス ト ラ クチャ IP には、 たとえば次のよ うなものがあ り ます。

• レジスタ スライス (パイプライン用)

• AXI FIFO (バッファー動作/ク ロ ッ ク変換用)

• AXI インターコネク ト IP (メモ リマップ方式 IP の相互接続用)

• AXI DMA (Direct Memory Access) エンジン (メモリマップ方式からス ト リーム方式への変換用)

これらの IP は複数の IP を接続してシステムを構築する場合には役立ちますが、 通常、 データのエ

ンドポイン トにはなり ません。

メモリマップ方式のプロ ト コル メモ リマップ方式の AXI (AXI3、 AXI4、 AXI4-Lite) では、 すべてのト ランザクシ ョ ンに、 システ

ム メモ リ空間内の宛先アドレス と転送するデータが関連します。

多くの場合、 メモ リマップ方式のシステムでは、 定義されたメモ リマップを中心に IP が動作する

ため、 システム全体がよ り均質なものと して捉えられます。

AXI4-Stream プロ ト コル AXI4-Stream プロ ト コルは、 アドレス という概念がないかまたは必要と しない、データ中心のデー

タ フロー方式を用いるアプリ ケーシ ョ ンで使用されます。 AXI4-Stream の各インターフェイスは、

ハンドシェイ ク データ フローによる単独の単方向チャネルと して機能します。

メモ リマップ方式の AXI プロ ト コル タイプよ り も低レベルの動作であるこ とから、 IP 間のデータ

転送メカニズムはよ り効率的に定義されます。 ただし、 IP 間に統一されたアドレス関係は存在しま

せん。 AXI4-Stream IP はデータ フロー アプリ ケーシ ョ ンの性能を 適化するには適しているもの

の、 特定のアプリ ケーシ ョ ン空間に専用化される傾向があ り ます。

AXI4-Stream と メモリマップ方式のプロ ト コルの組み合わせ AXI4-Stream と メモ リマップ方式の AXI IP の両方を組み合わせてシステムを構築する手法もあ り

ます。 メモ リからス ト リームを入出力するには、 多くの場合 DMA エンジンを使用します。 たとえ

ば、 プロセッサを DMA エンジンと組み合わせるこ とで、 パケッ ト をデコード した り、 データのス

ト リーミ ングにプロ ト コル スタ ッ クをインプ リ メン ト してよ り複雑なシステムを構築し、異なるア

プリ ケーシ ョ ン空間または IP の間のデータ転送を可能にしたりできます。

10 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 1 章 : ザイリンクス システム開発のための AXI 入門

AXI によって置き換えられるプロ ト コル 表 1-1 は、利用可能な AXI4 のハイレベルの機能と、AXI の各オプシ ョ ンが置換する既存プロ ト コ

ルをま とめたものです。

ターゲッ ト リファレンス デザイン このガイ ドの別の章では、 ザイ リ ンクスのツールや IP の AXI への対応について、 よ り詳細に解説

しています。 Spartan-6 および Virtex-6 ターゲッ ト リ ファレンス デザインも AXI 対応に移行済み

で、 AXI への移行をサポート しています。 これらはザイ リ ンクスのターゲッ ト デザイン プラ ッ ト

フォームの一部である、 ド メ イン特化プラ ッ ト フォーム ソ リ ューシ ョ ンの基盤となるデザインで

す。 ターゲッ ト リ ファレンス デザインを活用するこ とで、エンベデッ ド、 DSP、 コネクティビティ

をはじめとするザイ リ ンクスのさまざまなデザイン分野に AXI がどのよ うに適用されるのかを知

る こ とができます。 ターゲッ ト リ フ ァ レンス デザインの詳細は http://japan.xilinx.com/products/targeted_design_platforms.htm に掲載されています。

表 1-1 : 使用可能な AXI4 の機能および置き換えられる IP(1)

インターフェイス 機能 置換対象

AXI4 • 従来のメモ リマップ方式のアドレス/データ インターフェイス

• データ バース トのサポート

PLBv3.4/v4.6

OPB

NPI

XCL

AXI4-Lite • 従来のメモ リマップ方式のアドレス/データ インターフェイス

• 単一データ サイクルのみ

PLBv4.6 (シングルのみ)

DCR

DRP

AXI4-Stream • データのみのバース ト Local-Link

DSP

TRN (PCIe 内で使用)

FSL

1. 詳細は、 第 4 章 「ザイ リ ンクス AXI プロ ト コルへの移行」 を参照してください。

AXI リファレンス ガイド japan.xilinx.com 11UG761 (v13.1) 2011 年 3 月 7 日

その他の参考資料

その他の参考資料 参考資料と して、 次の仕様書があ り ます。

• 『ARM AMBA AXI Protocol v2.0 Specification』

• 『AMBA4 AXI4-Stream Protocol v1.0』

http://www.amba.com よ り ARM® AMBA® AXI 仕様をダウンロードする手順については、 5 ペー

ジの 「概要」 を参照して ください。

さ らに、 この リ ファレンス ガイ ドでは、 ザイ リ ンクス ウェブサイ トに掲載された次の資料を参照

しています。

http://japan.xilinx.com/support/documentation/axi_ip_documentation.htm

• 『AXII Interconnect IP データシート 』 (DS768)

• 『AXI-To-AXI Connector IP データシート 』 (DS803)

• 『AXI External Master Connector データシート 』 (DS804)

• 『AXI External Slave Connector データシート 』 (DS805)

• 『MicroBlaze プロセッサ リ ファレンス ガイ ド』 (UG081)

また、 次のウェブサイ ト を紹介しています。

• AXI IP 関連資料のウェブサイ ト : http://japan.xilinx.com/ipcenter/axi4.htm

• EDK のウェブサイ ト : http://japan.xilinx.com/tools/embedded.htm

• CORE Generator® ツール : http://japan.xilinx.com/tools/coregen.htm

• メモ リ制御 : http://japan.xilinx.com/products/design_resources/mem_corner

• System Generator : http://japan.xilinx.com/tools/sysgen.htm

• Local-Link : http://japan.xilinx.com/products/design_resources/conn_central/locallink_member/sp06.pdf

• ターゲッ ト デザイン プラ ッ ト フォーム : http://japan.xilinx.com/products/targeted_design_platforms.htm

• アンサー データベース : http://japan.xilinx.com/support/answers/37425.htm

12 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 1 章 : ザイリンクス システム開発のための AXI 入門

AXI リファレンス ガイド japan.xilinx.com 13UG761 (v13.1) 2011 年 3 月 7 日

第 2 章

ザイリンクスのツールおよび IP による AXI のサポート

ザイリンクス デザイン ツールによる AXI 開発の支援 こ こでは、 ザイ リ ンクス® ツールを使用して、 ザイ リ ンクス AXI IP を相互接続したシステムを構

築する方法 (Xilinx Platform Studio または System Generator for DSP を使用)、 および個々の AXIIP を実装する方法 (CORE Generator™ ツールを使用) を説明します。

エンベデッ ド開発キッ ト : Embedded Edition および System Edition ザイ リ ンクス ISE Design Suite : Embedded Edition および System Edition は、この後説明する一連

のツールによって、 デザインに AXI コアを追加する作業をサポート します。

AXI エンベデッ ド システムの新規作成

次のエンベデッ ド開発キッ ト (EDK) ツールは、 AXI ベースの IP コア (pcore) の作成および追加を

サポート します。

• Base System Builder (BSB) ウ ィザード ― サポート対象の開発ボードに搭載されたあらゆる

機能、 またはたいていのエンベデッ ド システムに一般的に含まれる基本的な機能を用いて、

AXI または PLBv.46 の動作するエンベデッ ド デザインを作成します。 作成した基本システム

は Xilinx Platform Studio (XPS) のメ イン ビューおよび ISE でカスタマイズします。 ザイ リ ン

クスでは、 BSB を使用して新規デザインを作成するこ とを推奨しています。 詳細は XPS ヘル

プを参照して ください。

• Xilinx Platform Studio (XPS) ― さまざまなバス インターフェイス (AXI を含む) によって

IP ブロ ッ クを接続してエンベデッ ド システムを作成する、 ブロ ッ ク ベースのシステム アセン

ブリ ツールを提供します。プロセッサを含むシステム、含まないシステムのいずれにも対応し

ています。 このツールでは、 グラフ ィカル インターフェイスによって、 プロセッサ、 ペリ フェ

ラル、 バス インターフェイスを接続します。

• ソフ ト ウェア開発キッ ト (SDK) ― アプリ ケーシ ョ ン プロジェク ト用のソフ ト ウェア開発環

境です。 SDK は Eclipse オープン ソース規格に基づいて構築されています。 AXI ベースのエ

ンベデッ ド システムの場合、ハード ウェア プラ ッ ト フォーム仕様を XML 形式で SDK にエク

スポート します (XPS ベースのソフ ト ウェア開発やデバッグには対応していません)。 詳細は

SDK ヘルプを参照してください。

EDK の詳細は、 次のサイ ト を参照して ください。

http://japan.xilinx.com/support/documentation/dt_edk.htm

14 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

AXI IP の作成とインポート

XPS には、 Platform Studio の IP リ ポジ ト リーに IP を自動的に登録できるよ うにする Create andImport Peripheral (CIP) Wizard があ り ます。

デザインのデバッグおよび検証 : XPS による ChipScope の使用法

ChipScope™ Pro Analyzer AXI モニター コア (chipscope_axi_monitor) は、ザイ リ ンクスの AXI4または AXI4-Lite プロ ト コル インターフェイスのモニターおよびデバッグをサポート します。この

コアを使用するこ とで、 メモ リマップ方式のあらゆる AXI マスター /スレーブ バス インターフェ

イスを、 XPS からプローブできます。

このプローブによって、ペリ フェラルから AXI インターコネク ト コアに送信される AXI 信号を監

視できます。 たとえば、 MicroBlaze プロセッサの命令またはデータ インターフェイスにモニター

をセッ トするこ とで、プロセッサに対して入出力を行うすべてのメモ リ ト ランザクシ ョ ンを監視し

ます。

モニター コアはそれぞれ独立して動作するため、 ト リ ガー出力をチェーン接続すればシステム レベルの測定も可能です。モニター コアの補助ト リガー入力ポートやト リガー出力を用いてマルチレ

ベルのト リガー環境を構築するこ とで、 システム レベルの複雑な測定が簡素化されます。

たとえば、 マスターが 100MHz、 スレーブが 50MHz で動作している場合、 この多層ト リガーを使

用すれば、 異なるタイム ド メ イン間のデータ転送を解析できます。 また、 システム レベルの測定

によって、 複数のタイム ド メ インが存在する複雑なシステム レベルの障害のデバッグや、 レイテ

ンシのボ トルネッ ク解析が可能になり ます。

chipscope_axi_monitor コアは IP カタログの /debug フォルダー下にあ り、 XPS から次の手順で

システムに追加できます。

1. バス インターフェイスの System Assembly View (SAV) に chipscope_axi_monitor を追加します。

2. [Bus Name] で、 プローブするバスを選択します。

バスを選択する と、 ペリ フェラルと AXI インターコネク ト コア IP の間にモニターの頭文字

「M」 が表示されます。

3. ChipScope の ICON コアをシステムに追加し、 制御バスを AXI モニターに接続します。

4. モニター コアの [SAV Ports] タブ上で、 コアの MON_AXI_ACLK ポート を、 プローブ対象の

AXI インターフェイスが使用するクロ ッ ク と同様に設定します。

オプシ ョ ンと して、 MON_AXI_TRIG_OUT ポート を割り当て、 システム内のほかの chipscope_axi_monitor コアに接続できます。

Project Navigator におけるプロセッサを含まないエンベデッ ド IP の使用法

プロセッサ システム以外でも EDK IP の一部が必要となる場合があ り ます。たとえば、マルチポー

トの DDR3 コン ト ローラーを構築するには AXI インターコネク ト コア ブロッ クを使用します。こ

のよ うに、 プロセッサを含まないシステムでも、 EDK IP の管理、 接続、 提供に XPS を使用できま

す。 詳細は、 ザイ リ ンクス アンサー レコード #37856 を参照してください。

AXI リファレンス ガイド japan.xilinx.com 15UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス デザイン ツールによる AXI 開発の支援

System Generator : DSP Edition の使用法 System Generator for DSP は、AXI4 および AXI4-Stream の両インターフェイスに対応しています。

• AXI4 インターフェイスは EDK プロセッサ ブロ ッ クでサポート されます。

• AXI4-Stream インターフェイスは、 System Generator の AXI4 ブロ ッ ク ライブラ リに含まれ

る IP によってサポート されます。

System Generator による AXI4 のサポート

System Generator は、 そのブロッ ク セッ トに含まれる EDK プロセッサ ブロッ クを使用して AXI4(メモリマップ方式) をサポート します。EDK プロセッサ ブロッ クは、System Generator で作成した

ハードウェア回路とザイ リ ンクス MicroBlaze™ プロセッサの接続を可能にします。プロセッサへの

接続オプシ ョ ンと しては、 PLBv4.6 または AXI4 インターフェイスのいずれかを使用できます。

System Generator のフローを使用する場合、 AXI4 の専門用語を熟知している必要はあ り ません。

これは、 EDK プロセッサ ブロ ッ クがメモ リ を中心と した、 複数のバス タイプで動作するインター

フェイスを提供するためです。

共有レジスタ、 共有 FIFO、 共有メモ リ を用いたハード ウェアを作成できます。 指定したインター

フェイスへのメモ リの接続は、 EDK プロセッサ ブロ ッ クが管理します。

図 2-1 に、 [EDK Processor] ダイアログ ボッ クスの [Implementation] タブで AXI4 バス タイプを

選択した状態を示します。

X-Ref Target - Figure 2-1

図 2-1 : [EDK Processor] ダイアログ ボックスの [Implementation] タブ

16 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

ポート名の短縮

System Generator は AXI4-Stream の信号名を短縮するこ とで、 ブロ ッ ク上の表示を読みやすく し

ます。 これは表示方法に限られ、 ネッ ト リ ス ト内では AXI4-Stream の完全な名前が使用されます。

ポート名短縮のデフォルト設定はオンです。完全なポート名を表示させるには、ブロ ッ ク パラ メー

ターのダイアログ ボッ クスで [Display shortened port names] をオフにします。

ポートのグループ化

System Generator は AXI4-Stream チャネル信号をグループ化し、 各ブロ ッ クを色分けして表示し

ます。

次の図の例では、一番上の入力ポート data_tready と、上の 2 つの出力ポート data_tvalid とdata_tdata は、同じ AXI4-Stream チャネルに属します。同様に、phase_tready、phase_tvalid、

phase_tdata は同じチャネルに属します。

AXI4-Stream チャネルのいずれにも含まれない信号は、 ブロ ッ クの背景と同じ色で表示されます。

図 2-2 の rst 信号は、 その例です。

マルチチャネル TDATA の各チャネル表示

AXI4-Stream の TDATA 信号には、 複数のデータ チャネルが含まれる場合があ り ます。 SystemGenerator では、 TDATA の各チャネルが表示されます。 たとえば、 図 2-3 の複素乗算器では、 dout

ポートの TDATA が虚数部分と実数部分に分けて表示されています。

X-Ref Target - Figure 2-2

図 2-2 : ブロック信号のグループ化

AXI リファレンス ガイド japan.xilinx.com 17UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス デザイン ツールによる AXI 開発の支援

X-Ref Target - Figure 2-3

メモ : マルチチャネル TDATA の各チャネルが表示されても、 デザインに余分なロジッ クが追加さ

れるわけではあ り ません。 データはバイ ト ごとに適切にそろえられます。

System Generator および AXI IP 作成の詳細は、 次のウェブサイ ト をご覧ください。

http://japan.xilinx.com/tools/sysgen.htm

ザイリンクス AXI IP : Logic Edition での使用法 AXI4 イ ン ターフ ェ イ ス を備えたザイ リ ン ク ス IP は、 CORE Generator、 Project Navigator、PlanAhead の IP カタログから直接利用できます。 IP カタログの [AXI4] 列には、AXI4 サポートの

有無が表示されます。 また、 IP の情報パネルには、 その IP がサポートする AXI4、 AXI4-Stream、

AXI4-Lite インターフェイスが表示されます。

通常、 Virtex®-6 および Spartan®-6 デバイス ファ ミ リの場合、 AXI4 インターフェイスに対応して

いる IP は、 最新バージ ョ ンのものです。 これ以前の 「Production」 バージ ョ ンの IP も、 引き続き

Virtex-6、 Spartan-6、 Virtex®-5、 Virtex®-4、 Spartan®-3 デバイス ファ ミ リのコアに該当するレガ

シー イ ン ターフ ェ イ スによ ってサポー ト されます。 IP カ タ ロ グにはデフ ォル ト で、 IP の「Production」 バージ ョ ンがすべて表示されます。 図 2-4 は、 CORE Generator の IP カタログです。

図 2-3 : マルチチャネルの TDATA

18 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

18 ページの図 2-5 は、 PlanAhead を使用した場合の [AXI4] 列 と、 IP の詳細情報パネルに表示さ

れた、 サポート対象の AXI4 インターフェイスです。

X-Ref Target - Figure 2-4

図 2-4 : ザイリンクス ソフ トウェアの IP カタログ

X-Ref Target - Figure 2-5

図 2-5 : PlanAhead ソフ トウェアの IP カタログ

AXI リファレンス ガイド japan.xilinx.com 19UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス AXI インフラスト ラクチャ IP

ザイリンクス AXI インフラスト ラクチャ IP ザイ リ ンクスは、提供中の IP の大部分を AXI プロ ト コルに移行しました。 こ こでは、多くの AXIベースのシステムで使用される、 よ り複雑な IP の概要を説明します。

Virtex®-6 や Spartan®-6 デバイス、および今後サポート されるデバイスには、ザイ リ ンクスによる、

次の一般的なインフラス ト ラ クチャ IP を使用できます。

• ザイ リ ンクス AXI インターコネク ト コア IP

• AXI インターコネク ト コアのスレーブとマスターの接続

• 外部マスターおよびスレーブ

• Centralized DMA (セン ト ラル DMA)

• イーサネッ ト DMA

• ビデオ DMA

• メモ リ制御 IP およびメモ リ インターフェイス ジェネレーター

使用法の詳細は、 第 4 章 「ザイ リ ンク ス AXI プロ ト コルへの移行」 を参照して ください。 また、

AXI IP の全リ ス トは、 次のウェブサイ トに掲載されています。

http://japan.xilinx.com/ipcenter/axi4.htm

ザイリンクス AXI インターコネク ト コア IP AXI インターコネク ト コア IP (axi_interconnect) は、 1 つ以上のメモ リマップ方式 AXI マスター

デバイス と、 1 つ以上のメモ リマップ方式のスレーブ デバイスを接続します。AXI インターフェイ

スは、ARM® の AMBA® AXI 仕様のバージ ョ ン 4 に準拠しています。この仕様には AXI4-Lite 制御レジスタ インターフェイスのサブセッ ト も含まれます。

メモ : AXI インターコネク ト コア IP は、 メモ リマップ方式の転送のみを前提に構成されているた

め、AXI4-Stream による転送には適用できません。AXI4-Stream インターフェイスを備えた IP は、

通常同種の IP ど う し、 および DMA IP と接続されます。

AXI インターコネク ト コア IP は、Xilinx Platform Studio ソフ ト ウェアに含まれる、暗号化された

ライセンス不要の (無償) pcore と して提供されます。

AXI インターコネク ト コアの特長

AXI インターコネク ト IP には次のよ うな特長があ り ます。

• AXI プロ ト コル (AXI3、 AXI4、 AXI4-Lite) に準拠した次の機能

• 大バース ト長 256 のインク リ メンタル (INCR) バース トが可能です。

• 宛先が AXI3 のスレーブの場合、16 ビート を超える AXI4 バース トにはト ランザクシ ョ ン

を分割する変換を加えます。

• 複数のアドレス デコード範囲を持つスレーブに対して REGION 出力を生成します。

• USER 信号が存在する場合、 それを各チャネルに伝搬します。 その場合、 USER 信号幅は

チャネルごとに独立して設定できます (オプシ ョ ン)。

• サービス品質 (QoS) 信号が存在する場合、 それを伝搬します。 この信号は AXI インター

コネク ト コアでは使用しません (オプシ ョ ン)。

• インターフェイス データ幅

• AXI4 : 32、 64、 128、 256 ビッ ト

• AXI4-Lite : 32 ビッ ト

• アドレス幅 32 ビッ ト

20 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

• 1 ~ 16 個のマスターと 1 ~ 16 個のスレーブの接続

• マスターとスレーブを 1 対 1 で接続する場合、 AXI インターコネク ト コアは必要に応じ

てアドレス範囲チェッ クを実行できます。 さ らに、 通常のデータ幅、 ク ロ ッ ク レート、 プ

ロ ト コルの変換やパイプライン処理も実行できます。

• マスターとスレーブを 1 対 1 で接続し、変換またはアドレス範囲チェッ クのいずれも実行

しない場合、 AXI インターコネク ト コアはワイヤと してインプ リ メ ン ト され、 リ ソース

を使用せず、 遅延やレイテンシも発生しません。

• ビルト イン データ幅変換

• マスターおよびスレーブの各接続では、 それぞれ独立したデータ幅 (32、 64、 128、 256ビッ ト幅のいずれか) を使用できます。

- 内部クロスバーは、 ネイティブ データ幅が 32、 64、 128、 256 ビッ トになるよ う なコ

ンフ ィギュレーシ ョ ンが可能です。

- クロスバーのネイティブ データ幅と異なる幅のマスターおよびスレーブ接続ではデー

タ幅を変換します。

• よ りデータ幅の広いインターフェイスに変換する場合 (アップサイジング)、 データをパッ

ク (結合) します (オプシ ョ ン)。 それには、 アドレス チャネル制御信号によって許可する

(CACHE 変更許可ビッ ト をアサートする) 必要があ り ます。

• よ りデータ幅の狭いインターフェイスに変換 (ダウンサイジング) する際に、そのままでは

大バース ト長を超えてしま う場合は、 バース ト ト ランザクシ ョ ンを複数の ト ランザク

シ ョ ンに分割できます。

• ビルト イン ク ロ ッ ク レート変換

• マスターおよびスレーブの接続は、 それぞれ独立したクロ ッ ク レート を使用できます。

• 内部クロスバーのネイティブ ク ロ ッ ク レートへ整数比 (N:1 および 1:N) の同期変換が可

能です。

• 非同期クロ ッ ク変換にも対応しています (ただし、 同期変換よ り も多くのス ト レージを使

用し、 よ り長いレイテンシを発生します)。

• AXI インターコネク ト コアは、 接続された各マスター /スレーブ ペアのクロ ッ ク レート

に再同期された リセッ ト信号をエクスポート します。

• ビルト イン AXI4-Lite プロ ト コル変換

• AXI インターコネク ト コアは、あらゆる比率の AXI4 と AXI4-Lite マスター /スレーブの

組み合わせに対する接続が可能です。

• AXI インターコネク ト コアを AXI4-Lite のスレーブに接続した場合、 ト ランザクシ ョ ン

ID が保存され、 応答転送時にリ ス ト アされます。

- AXI4-Lite のスレーブの場合は ID をサンプリ ングした り保存したりする必要はあ り

ません。

• AXI インターコネク ト コアは、 複数ワードのバース トが実行される ト ランザクシ ョ ンな

ど、 AXI4 マスターからの不正な AXI4-Lite ト ランザクシ ョ ンを検出します。 このと きマ

スターに対してプロ ト コルに準拠したエラー応答を生成する と共に、 この不正な ト ランザ

クシ ョ ンが AXI4-Lite スレーブに伝搬されないよ うにします。

• AXI4-Lite スレーブへの書き込みおよび読み出しは単一スレッ ドの ト ランザクシ ョ ンです。

つま り、 一度に 1 つのアドレスのみを伝搬します。 これによって通常は、 書き込みと読み

出しのアドレス信号を分けるこ とによる リ ソースのオーバーヘッ ドを抑止できます。

AXI リファレンス ガイド japan.xilinx.com 21UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス AXI インフラスト ラクチャ IP

• ビルト イン AXI3 プロ ト コル変換

• AXI3 スレーブに接続した場合、AXI インターコネク ト コアは、AXI4 マスターからの 16ビート を超えるバース ト ト ランザクシ ョ ンを、 16 ビート以下の複数の ト ランザクシ ョ ン

に分割します。

• レジスタ スライスによるパイプライン処理 (オプシ ョ ン)

• マスターやスレーブに接続する、 各 AXI チャネルに適用できます。

• 周波数対レイテンシの ト レードオフを調整するこ とで、タイ ミ ング ク ロージャを容易にし

ます。

• すべての AXI ハンドシェイ ク条件において、 レジスタ スライスあたりのレイテンシは 1 サイ クルで、 データ スループッ トが低下するこ とはあ り ません。

• データ パス FIFO によるバッファー処理 (オプシ ョ ン)

• マスターやスレーブに接続する、 書き込みおよび読み出しのデータ パスに適用できます。

• 深さ 32 の LUT-RAM ベースのバッファーを提供します。

• 深さ 512 のブロ ッ ク RAM ベースのバッファーを提供します。

• 選択可能なインターコネク ト アーキテクチャ

• 共有アドレス複数データ (SAMD : Shared-Address, Multiple-Data) ク ロスバー

- 書き込みおよび読み出しデータ チャネル用の並列のクロスバー パスです。複数の書き

込みまたは読み出しデータ ソースが異なる宛先に対してデータを送信しよ う と してい

る場合、 AXI の順序の規定に従っていれば、 これらのデータ転送を独立して同時に実

行できます。

- コネクティビティ マップのコンフ ィギュレーシ ョ ンに従った、 スペース ク ロスバー

データ パスはリ ソース使用量を低減します。

- 書き込みアドレスの共有アービターと読み出しアドレスの共有アービターをそれぞれ

1 つずつ含みます。 通常、 ト ランザクシ ョ ンが平均 3 データ ビート以上の場合、 アー

ビ ト レーシ ョ ンに要するレイテンシはデータ スループッ トに影響を与えません。

• 共有アクセス モード (エリア 適化)

- 書き込みデータ、 読み出しデータ、 1 つのアドレス パスを共有します。

- 一度に 1 つの Outstanding ト ランザクシ ョ ンを発行します。

- リ ソース使用率を 小化します。

• Multiple Outstanding (複数の未処理) ト ランザクシ ョ ンのサポート

• マスターによる複数の深さレベルの順序変更 (ID スレッ ド ) に対応します。

• 大 16 ビッ ト幅の ID 信号に対応します (システム共通)。

• 書き込み応答の順序変更に対応します。 読み出しデータの順序変更および読み出しデータ

のインターリーブにも対応しています。

• 接続された各マスターに対して、 書き込みおよび読み出し ト ランザクシ ョ ンの受け付け限

度を設定できます。

• 接続された各スレーブに対して、 書き込みおよび読み出し ト ランザクシ ョ ンの発行限度を

設定できます。

• サイクル依存性 (デッ ド ロ ッ ク ) を予防する 「ID あたり 1 スレーブ」 の手法

• マスターは、発行した各 ID スレッ ドにおいて、書き込みおよび読み出しのスレーブ各 1 つずつに対する Outstanding ト ランザクシ ョ ンをいつでも実行できます。

22 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

• 固定優先順位と ラウンド ロビン アービ ト レーシ ョ ン

• 16 段階の静的優先順位を設定できます。

• よ り優先順位が高いほかのマスターからの要求がない場合、 低の優先順位に設定された

(優先順位 0 の) すべてのマスター間で、 ラウンド ロビン方式のアービ ト レーシ ョ ンが実行

されます。

• 受け付け限度に達したマスター、 発行限度に達したスレーブを宛先と しているマスター、

またはデッ ド ロ ッ クのおそれがある方法でスレーブにアクセスしよ う と しているマスター

は、 アービ ト レーシ ョ ンへの参加資格を一時的に奪われます。 これによって、 ほかのマス

ターがアービ ト レーシ ョ ンに参加できるよ うにします。

• 接続された各スレーブに対する TrustZone セキュ リティの一括サポート

- セキュアなスレーブと して設定する と、セキュアな AXI アクセスしか受け付けなくな

り ます。

- セキュアでないアクセスはブロ ッ ク され、AXI インターコネク ト コアがマスターに対

して DECERR 応答を返します。

• リ ソース使用量を低減する読み出し専用および書き込み専用マスター /スレーブのサポート

AXI インターコネク ト コアの制約 • AXI インターコネク ト コアは、 次の AXI3 機能には対応していません。

• ア ト ミ ッ ク ロ ッ ク ト ランザクシ ョ ン ― この機能は AXI4 プロ ト コルでは廃止されまし

た。 分割禁止にロッ ク された ト ランザクシ ョ ンは、 ロ ッ クを解除された ト ランザクシ ョ ン

に変換された うえでスレーブに伝搬されます。

• 書き込みインターリーブ ― この機能は AXI4 プロ ト コルでは廃止されました。 したがっ

て、 AXI3 マスターは、 書き込みインターリーブの深さが 1 のスレーブに接続するよ うに

設定する必要があ り ます。

• AXI4 の QoS 信号は、 アービ ト レーシ ョ ンの優先順位に影響を与えません。 QoS 信号は、 マ

スターからスレーブに伝搬されます。

• 複数ビートのバース ト を複数の単一ビート ト ランザクシ ョ ンに変換する AXI インターコネク

ト コアの機能は、 AXI4-Lite スレーブに接続した場合は実行されません。

• AXI インターコネク ト コアは低消費電力モードまたは AXI チャネル信号による伝搬には対応

していません。

• AXI インターコネク ト コアは、 AXI チャネル伝送のいずれかの宛先が恒久的にス トールして

も、 タ イムアウ ト しません。 したがって、 すべての AXI スレーブは受信した ト ランザクシ ョ

ンのすべてに対して AXI プロ ト コルの要件に従った応答を返す必要があ り ます。

• AXI インターコネク ト コアはアドレスマップの再割り当てを行いません。

• AXI インターコネク ト コアは、APB などの非 AXI プロ ト コルへのビルト イン変換機能を備え

ていません。

• AXI インターコネク ト コアにはクロ ッ ク イネーブル (ACLKEN) 入力があ り ません。 このため、

ザイ リ ンクス システムではメモ リマップ方式の AXI インターフェイス間で ACLKEN を使用で

きません。

メモ : ザイ リ ンクス AXI4-Stream インターフェイスでは ACLKEN 信号がサポート されています。

AXI リファレンス ガイド japan.xilinx.com 23UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス AXI インフラスト ラクチャ IP

AXI インターコネク ト コア接続図

図 2-6 は、 AXI インターコネク トの 上位接続図です。

AXI インターコネク ト コアの使用モデル

AXI インターコネク ト コア IP は、1 つ以上のメモ リマップ方式 AXI マスター デバイス と、1 つ以

上のメモ リマップ方式のスレーブ デバイスを接続します。以降のサブセクシ ョ ンでは、使用例につ

いて説明します。

• パス スルー

• 変換のみ

• N 対 1 のインターコネク ト

• 1 対 N のインターコネク ト

• N 対 M インターコネク ト (スパース ク ロスバー )

• N 対 M インターコネク ト (共有アクセス モード )

パス スルー

接続されるデバイスがマスターとスレーブのそれぞれ 1 つだけで、 オプシ ョ ンの変換機能やパイプ

ライン処理を実行しない場合、 AXI インターコネク ト コアはワイヤによる直接接続にな り、 レイ

テンシを発生せず、 ロジッ ク リ ソースも消費しません。

図 2-7 はパス スルーの接続図です。

X-Ref Target - Figure 2-6

図 2-6 : AXI インターコネク トの最上位接続図

AXI Interconnect

SlaveInterface

MasterInterface

SI Hemisphere MI Hemisphere

Crossbar

Master 0 Slave 0

Slave 1Master 1 Reg

iste

r S

lices

Reg

iste

r S

lices

Up-

size

rs

Up-

size

rs

Clo

ck C

onve

rter

s

Dow

n-si

zers

Dat

a F

IFO

s

Clo

ck C

onve

rter

s

Dow

n-si

zers

Pro

toco

l Con

vert

ers

Dat

a F

IFO

s

X12047

X-Ref Target - Figure 2-7

図 2-7 : AXI インターコネク トの使用例-パス スルー

Master 0 Slave 0

Interconnect

24 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

変換のみ

AXI インターコネク ト コアは、1 つのマスターを 1 つのスレーブに接続した場合、次のよ うなさま

ざまな変換およびパイプライン機能を実行できます。 次に例を示します。

• データ幅変換

• ク ロ ッ ク レート変換

• AXI4-Lite スレーブ適合

• AXI-3 スレーブ適合

• レジスタ スライスまたはデータ チャネル FIFO によるパイプライン処理

これらの使用例では、 AXI インターコネク ト コアにアービ ト レーシ ョ ン、 デコード、 ルーティング

のロジッ クは含まれません。 また、 実行する変換によってはレイテンシが発生する場合があり ます。

図 2-8 は、 1 対 1 変換の使用例を示したものです。

N 対 1 のインターコネク ト

一般に、 このよ うな AXI インターコネク ト コアのコンフ ィギュレーシ ョ ンを行うのは、 複数のマ

スター デバイスが、 1 つのスレーブ デバイス、 通常はメモ リ コン ト ローラーへのアクセスについ

てアービ ト レーシ ョ ンを実行する場合です。

このよ うなケースでは、 アドレス デコード ロジッ クが不要になるこ とがあ り、 その場合 AXI イン

ターコネク ト コアから除外されます (ただしアドレス範囲検証が不要の場合に限り ます)。

このコンフ ィギュレーシ ョ ンでも、 データ幅やク クロ ッ ク レート などの変換機能は動作します。

図 2-9 は N 対 1 の AXI インターコネク トの使用例を示したものです。

X-Ref Target - Figure 2-8

図 2-8 : AXI インターコネク トの使用例- 1 対 1 変換

X12049

Master 0 Slave 0

Interconnect

Conversionand/or

Pipelining

AXI リファレンス ガイド japan.xilinx.com 25UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス AXI インフラスト ラクチャ IP

.

1 対 N のインターコネク ト

も う 1 つの AXI インターコネク ト コアのコンフ ィギュレーシ ョ ン ケースが、1 つのマスター デバ

イス、通常はプロセッサが、複数のメモ リマップ方式のスレーブ ペリ フェラルにアクセスする場合

です。 このよ うな場合、 アドレスおよび書き込みデータ パスのアービ ト レーシ ョ ンは実行されませ

ん。 25 ページの図 2-10 は、 1 対 N のインターコネク トの使用例を示したものです。

N 対 M インターコネク ト (スパース クロスバー )

AXI インターコネク トは SAMD (共有アドレス複数データ) ト ポロジを取るこ とができます。 これ

は、 図 2-11 に示すよ うにスパース データ ク ロスバー接続から構成され、 単一スレッ ドの書き込み

および読み出しアドレス アービ ト レーシ ョ ンが実行されます。

X-Ref Target - Figure 2-9

図 2-9 : AXI インターコネク トの使用例 - N 対 1

X-Ref Target - Figure 2-10

図 2-10 : AXI インターコネク トの使用例- 1 対 N

X12050

Master 0

Master 1

Slave 0

Interconnect

Arb

iter

X12051

Master 0

Slave 0

Slave 1

Interconnect

Dec

oder

/Rou

ter

26 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

26 ページの図 2-12 は、スパース ク ロスバーによる書き込みおよび読み出しデータ パスを示したも

のです。

X-Ref Target - Figure 2-11

図 2-11 : 共有書き込みおよび読み出しアドレス アービ ト レーシ ョ ン

X12052

Master 0

Master 1

Master 2

Slave 0

Slave 1

Slave 2

Interconnect

AW

AR

AW

AR

AW

AR

AW

AR

AW

AR

AW

AR

WriteTransactionArbiter

ReadTransactionArbiter

Router

Router

X-Ref Target - Figure 2-12

図 2-12 : スパース クロスバーによる書き込みおよび読み出しデータ パス

X12053

InterconnectMaster 0

Master 1

Master 2

Slave 0

Slave 1

Slave 2

W

R

W

R

W

R

W

R

W

R

W

R

Write Data Crossbar

Read Data Crossbar

AXI リファレンス ガイド japan.xilinx.com 27UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス AXI インフラスト ラクチャ IP

並列書き込みおよび読み出しデータ パスは、 スパース コネクテ ィ ビテ ィ マップのコンフ ィギュ

レーシ ョ ンに従い、 各 SI (Slave Interface) スロ ッ ト (左側の AXI マスターに接続) を、 アクセス可

能なすべての MI (Master Interface) スロ ッ ト (右側の AXI スレーブに接続) に接続します。 複数の

ソースが異なる宛先に対してデータを送信しよ う と している場合、AXI の順序の規定に従っていれ

ば、 データ転送を独立して同時に実行できます。

すべての SI スロ ッ ト (複数の場合) の書き込みアドレス チャネルはセン ト ラル アービターに入力

され、 アービターは一度に 1 つの SI スロ ッ トへのアクセスを許可します。 読み出しアドレス チャ

ネルの場合も同様です。 各アービ ト レーシ ョ ン サイ クルでアクセス権を得たマスターは、 宛先の

MI スロ ッ トにアドレス情報を転送し、 該当するコマンド キューにエン ト リ をプッシュします。 こ

のよ うにして AXI の順序の規定に従いつつ、 さまざまなデータ パスを経由して適切な宛先にデー

タが送られます。

幅変換

AXI Interconnect コアには、 パラ メーターによって内部ネイティブ データ幅が定義されています。

サポート されるデータ幅は、 32、 64、 128、 256 ビッ トです。 ク ロスバーに接続された AXI データ

チャネルは、 C_INTERCONNECT_DATA_WIDTH パラ メーターによって指定された AXI インター

コネク トの 「ネイティブ」 幅に調整されます。

これとは異なる幅の SI スロ ッ ト または MI スロ ッ トがある と、 AXI インターコネク ト コアは幅変

換ユニッ ト を挿入して、 スロ ッ ト幅を AXI インターコネク ト コアのネイティブ幅に適合させてか

ら、 ク ロスバーをも う一方の側へと横断させます。

データが SI から MI に向かう方向で見てデータ パス幅が広くなる ( 「アップサイジング」 ) 場合と、

狭くなる ( 「ダウンサイジング」 ) 場合で、 幅変換の機能は異なり ますが、 SI 側 (SI から AXI イン

ターコネク ト ネイティブ幅への変換) と MI 側 (AXI インターコネク ト ネイティブ幅から MI への

変換) では同じになり ます。

MI と SI の各スロッ トには、それぞれ個別にパラ メーターによってデータ幅の値が関連付けられて

います。 AXI インターコネク ト コアは、 MI および SI の各スロ ッ ト を次の手順で自動的に内部ネ

イティブ データ幅に適合させます。

• SI スロ ッ トのデータ幅が AXI インターコネク トの内部ネイティブ データ幅よ り も広い場合、

SI スロ ッ トのパスに沿ってダウンサイジングの変換を実行します。

• AXI インターコネク ト コアの内部ネイティブ データ幅が MI スロ ッ トのデータ幅よ り も広い

場合、 MI スロ ッ トのパスに沿ってダウンサイジングの変換を実行します。

• SI スロ ッ トのデータ幅が AXI インターコネク トの内部ネイティブ データ幅よ り も狭い場合、

SI スロ ッ トのパスに沿ってアップサイジングの変換を実行します。

• AXI インターコネク ト コアの内部ネイティブ データ幅が MI スロ ッ トのデータ幅よ り も狭い

場合、 MI スロ ッ トのパスに沿ってアップサイジングの変換を実行します。

通常、AXI インターコネク ト コアのデータ幅は、システム デザイン内の 大 SI スロ ッ ト幅と 大

MI スロ ッ ト幅のうち小さい方に合わせられます。

この後、 ダウンサイジングおよびアップサイジングの動作について説明します。

28 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

ダウンサイジング

幅の広いマスター デバイスを接続するパスに使用されるダウンサイザーには、 AXI の 大バース

ト長を超える可能性があるバース ト ト ランザクシ ョ ンを分割する機能が (そのよ うなバース トが実

際には決して発生しない場合であっても ) 実装されています。SI 側のデータ幅が MI 側よ り も広く、

かつト ランザクシ ョ ンの転送サイズも MI 側 のデータ幅よ り広い場合、ダウンサイジングが実行さ

れ、 MI 側に発行される ト ランザクシ ョ ンのデータ ビート数は分割数に応じて倍増します。

• 書き込みの場合、 データがシ リ アル化されます。

• 読み出しの場合、 データが結合されます。

転送サイズが MI 側のデータ幅以下の場合、 ト ランザクシ ョ ン (アド レス チャネルの値) は変化せ

ず、 転送データはバイ ト レーン ステア リ ングの場合を除き、 そのまま通過します。 これは、 書き

込みおよび読み出しの両方に当てはま り ます。

アップサイジング

SI 側のアップサイザーでは、 AW/ARCACHE[1] ビッ ト (変更許可) がアサート されていれば、 デー

タ圧縮が実行されます (INCR および WRAP バース トの場合)。

その結果、 MI 側に発行される ト ランザクシ ョ ンのデータ ビート数は圧縮に応じて減少します。

• 書き込みの場合、 データが結合されます。

• 読み出しの場合、 データがシ リ アル化されます。

N 対 M インターコネク ト (共有アクセス モード )

共有アクセス モードにおける N 対 M 接続の場合、 28 ページの図 2-13 に示すよ うに、 AXI イ

ンターコネク ト コアは一度に 1 つだけ Outstanding ト ランザクシ ョ ンを提供します。 接続された

各マスターでは、 読み出し ト ランザクシ ョ ン要求が書き込み要求よ り も常に優先されます。 要求を

送信したマスターのいずれかをアービターが選択します。 これによって、宛先のスレーブ デバイス

に対する書き込みまたは読み出しデータ転送が有効にな り ます。 データ転送が完了 (書き込み応答

を含む) する と、 次の要求が選択され処理されます。

共有アクセス モードはインターコネク トのク ロスバー モジュールをインプ リ メ ン トするために必

要な リ ソースを 小限に抑えます。 図 2-13 に、 共有アクセス モードを示します。X-Ref Target - Figure 2-13

図 2-13 : 共有アクセス モード

AXI リファレンス ガイド japan.xilinx.com 29UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス AXI インフラスト ラクチャ IP

クロック変換

ク ロ ッ ク変換は、 次の条件に従って実行されます。

• ク ロ ッ ク レート リ ダクシ ョ ン モジュールは、入力 (SI) 側から出力 (MI) 側に向けて整数比 N:1でクロ ッ ク レート を分周します。

• ク ロ ッ ク レート アクセラレーシ ョ ン モジュールは、 入力 (SI) 側から出力 (MI) 側に向けて整

数比 1:N でクロ ッ ク レート を逓倍します。

• 同期クロ ッ ク変換モジュールは、 非同期 FIFO を通してチャネル信号を渡すこ とで、 ク ロ ッ ク

レート を増減します。

リ ダクシ ョ ンおよびアクセラレーシ ョ ンのいずれのモジュールでも、よ り高速なクロ ッ ク ド メ イン

のサンプリ ング サイ クルは自動的に決定されます。 各モジュールは、 5 つの AXI チャネルのすべ

てに適用可能です。

MIおよび SI は複数のクロ ッ ク入力を持ち、その各ビッ トは対応するインターフェイス スロ ッ トの

全信号と同期しています。 AXI インターコネク ト コアには専用のネイティブ ク ロ ッ ク入力があ り

ます。 AXI インターコネク ト コアは、 MI および SI の各スロ ッ トのク ロ ッ ク レート を AXI イン

ターコネク トのクロ ッ ク レートに自動的に適合させます。

通常、 AXI インターコネク ト コアのネイティブ ク ロ ッ ク入力は、 システム デザイン内の 大周波

数の SI または MI スロ ッ ト 、 たとえばメ イン メモ リ コン ト ローラーに接続された MI スロ ッ ト な

どが使用しているものと同じクロ ッ ク ソースに接続されます。

パイプライン処理

ある環境下では、 データ バース ト をバッファ リ ングする こ とで AXI インターコネク ト コアのス

ループッ トが向上する場合があ り ます。 このよ うな状況は通常、データ幅またはクロ ッ ク レートの

変換によって SI または MI スロ ッ トのデータ レートが AXI インターコネク ト コアのネイティブ

データ レート と異なる場合に見られます。

レート変換の種々の組み合わせに対応するために、オプシ ョ ンでさまざまな位置にデータ バース ト

バッファーを挿入できます。

さ らにオプシ ョ ンと して深さ 2 のレジスタ スライス (スキッ ド バッファー) を、各 SI または MI スロ ッ トの 5 つの AXI チャネルのそれぞれに対して挿入し、 システムのタイ ミ ング ク ロージャを改

善するこ と もできます。

ペリフェラル レジスタ スライス

SI および MI 両方の 外周部分では、必要に応じて、各インターフェイス スロ ッ トの各チャネルに

レジスタ スライス バッファーを挿入できます。 その主な目的は、 レイテンシは 1 サイ クル分増加

しますが、 システム タイ ミ ングを改善するこ とです。

ペリ フェラル レジスタ スライスは、 常に SI または MI スロ ッ トのクロ ッ クに同期します。

データ パス FIFO

AXI インターコネク ト コアの SI および MI の間で実行される、さまざまなデータ フロー レート変

換の組み合わせに対応するために、 必要に応じて次の 4 箇所にデータ パス バッファーを挿入でき

ます。

• 各 SI スロ ッ トの書き込みデータ ルーターの前の、 SI 側書き込みデータ FIFO

• 各 MI スロ ッ トの書き込みデータ マルチプレクサーの後の、 MI 側書き込みデータ FIFO

• 各 MI スロ ッ トの読み出しデータ ルーターの前 (MI 側) の、 MI 側読み出しデータ FIFO

30 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

• 各 SI スロ ッ トの読み出しデータ マルチプレクサー の後 (SI 側) の、SI 側読み出しデータ FIFO(マルチスレッ ド SI スロ ッ トの場合、 複数の ID スレッ ド パス間のマルチプレクサーも含まれ

ます)

データ FIFO は AXI インターコネク ト コアのネイティブ ク ロ ッ クに同期します。 各データ FIFOの幅は、 AXI インターコネク ト コアのネイティブ データ幅と同じです。

AXI インターコネク ト IP の詳細および必要な信号やパラ メーターについては、 ザイ リ ンク スの

ウェブサイ ト よ り提供している 『AXI インターコネク ト IP データシート 』 (DS768) を参照して く

ださい。 http://japan.xilinx.com/support/documentation/axi_ip_documentation.htm

AXI インターコネク ト コアのスレーブとマスターの接続 AXI インターコネク ト コア モジュールのスレーブ インターフェイスを、 別の AXI インターコネ

ク ト コアに接続する場合、 AXI-to-AXI コネク ター IP (axi2axi_connector) を使用すれば、 ほかの

ロジッ クの介在は不要です。 axi2axi_connector IP は、 システム内のコネクティ ビティ を記述する

ために必要なポート接続点、 および接続される AXI インターコネク ト コア モジュールの対応する

インターフェイスの設定に使用する一連のパラ メーターを提供します。

AXI-To-AXI コネクターの特徴

axi2axi_connector には、 次のよ うな特徴があ り ます。

• 1 つの AXI インターコネク ト コア モジュールのマスター インターフェイスを、 別の AXI インターコネク ト コア モジュールのスレーブ インターフェイスに接続します。

• すべてのマスター インターフェイス信号をすべてのスレーブ インターフェイス信号に直接接

続します。

• ロジッ クまたはス ト レージは含まれず、 EDK 内ではバス ブリ ッジと して機能します。

内容

axi2axi_connector ( 「コネク ター」 ) モジュールの AXI スレーブ インターフェイスは、必ず ( 「アッ

プス ト リームの」 ) AXI インターコネク ト コア モジュールのマスター インターフェイス接続点 (スロ ッ ト ) の 1 つに接続されます。 一方、 コネク ターの AXI マスター インターフェイスは、 必ず上

記とは異なる ( 「ダウンス ト リームの」 ) AXI インターコネク ト コア モジュールのスレーブ イン

ターフェイス スロ ッ トに接続されます (31 ページの図 2-14 参照)。

AXI リファレンス ガイド japan.xilinx.com 31UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス AXI インフラスト ラクチャ IP

AXI-To-AXI コネクターの使用法

AXI-To-AXI コネクター (axi2axi_connector) を使用する と、 2 つの AXI インターコネク ト コアを

カスケード接続できます。 axi2axi_connector IP のデータ幅およびクロ ッ ク周波数のパラ メーター

は、マスターおよびスレーブ インターフェイスの特性が適切に一致するよ うに、EDK ツールによっ

て設定します。

さ らに、 EDK ツールは、 互いに接続されたインターコネク ト モジュールが同じクロ ッ ク ソースに

同期するよ うに、 axi2axi_connector のクロ ッ ク ポート を自動的に接続します。

AXI To AXI コネクターの詳細および必要な信号やパラ メーターについては、 ザイ リ ンクスのウェ

ブサイ ト よ り提供している 『AXI To AXI Connector IP データシート 』 (DS803) を参照してくださ

い。 http://japan.xilinx.com/support/documentation/axi_ip_documentation.htm

外部マスターおよびスレーブ EDK の pcore と して入手できない AXI マスターまたはスレーブ IP モジュール (純粋な HDL モジュールなど) が存在し、 これらを EDK のサブモジュール内で AXI インターコネク ト コアに接続

する必要がある場合に、 これらのユーティ リ テ ィ コアを使用します。 AXI マスターまたはスレー

ブ モジュールをデザインの 上位に配置したまま、 このユーティ リ ティ pcore を使用して AXI 信号を EDK のサブシステムに接続します。

機能 • AXI マスターまたはスレーブ インターフェイスを AXI インターコネク ト コア IP に接続します。

• 一方の側にマスターまたはスレーブの AXI バス インターフェイス、も う一方の側に AXI ポー

トがあ り ます。

X-Ref Target - Figure 2-14

図 2-14 : 2 つの AXI インターコネク ト コアを接続するマスターおよびスレーブ インターフェイス モジュール

mb_0

AXI_Interconnect_0

AXI_Interconnect_1

AXI_Interconnect_2

slave_2

axi2axi_connector

slave_1

slave_3

M_AXI_IP

M_AXI_DP

M_AXI_IC

M_AXI_DC

X12036

32 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

• ほかのポートは I/O インターフェイス と してモデル化され、外部インターフェイス化できます。

この外部インターフェイスによって、 必要な信号を 上位のマスターまたはスレーブに接続で

きます。

32 ページの図 2-15 は、 AXI 外部マスター コネクターのブロ ッ ク図です。

図 2-16 は、 外部スレーブ コネクターのブロ ッ ク図です。

Platform Studio の IP カタログには、 外部マスターおよび外部スレーブ コネクターが用意されてい

ます。 詳細は、 次のウェブサイ ト を参照して ください。

http://japan.xilinx.com/ipcenter/axi4.htm

X-Ref Target - Figure 2-15

図 2-15 : 外部マスター コネクターを使用した EDK サブシステム

Individual AXI Ports madeexternal to sub-system

interface

Microblaze

EDK sub-system

Axi_ext_master_conn

ICAXI

DCAXI

S_AXI

M_AXI

Memory controllerAxi_interconnect

X12040

X-Ref Target - Figure 2-16

図 2-16 : 外部スレーブ コネクターを使用した EDK サブシステム

Microblaze

Axi_interconnect

ICAXI S_AXI Memory controller

DCAXI

EDK sub-system

Individual AXI Ports made external to sub-system

interface

Axi_gpio

Axi_ext_slave_conn

S_AXI

S_AXI

X12075

AXI リファレンス ガイド japan.xilinx.com 33UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス AXI インフラスト ラクチャ IP

Centralized DMA (セン ト ラル DMA) ザイ リ ンクスでは、AXI 対応のセン ト ラル DMA を提供しています。 このコアは、既存の PLBv4.6セン ト ラル DMA を AXI4 対応のバージ ョ ンに置き換えるもので、機能と性能が強化されています。

図 2-17 は、 AXI (AXI4 と AXI4-Lite) セン ト ラル DMA を導入した代表的なエンベデッ ド システ

ム アーキテクチャを示したものです。

AXI4 セン ト ラル DMA は、 ある メモ リマップ空間から別のメモ リマップ空間に、 システムのマイ

クロプロセッサの制御のも と、 AXI4 バース ト プロ ト コルによって高速にデータを転送します。

X-Ref Target - Figure 2-17

図 2-17 : AXI セン ト ラル DMA の一般的使用例

AXI CDMA

CPU(AXI

MicroBlaze)

AXI4 MMap Interconnect(AXI4-Lite)

AXI BRAM

AXI DDRx

Registers

Scatter Gather Engine

AXI4

AXI4

AXI4 Read

AXI4 Write

AXI4-Lite

AXI4

AXI IntcAXI4-Lite

AXI4-Lite

AXI4 MMap Interconnect

(AXI4)

DP

DC

IC

AXI4

AXI4

Interrupt

Interrupts In

Interrupt Out(To AXI Intc)

AXI4-Stream

AXI4-Stream

DataMover

X12037

34 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

AXI セン ト ラル DMA の概要

AXI セン ト ラル DMA では、 従来の PLBv4.6 セン ト ラル DMA と同様、 シンプル転送モード動作

を使用できます。 シンプル モードによる転送では、 CPU が 1 回の転送ごとにセン ト ラル DMA のレジスタ セッ ト をプログラムし、転送を起動します。セン ト ラル DMA には次のよ うな機能があ り

ます。

• 転送を実行します。

• 転送が完了する と割り込みを発生します。

• マイクロプロセッサが次の転送をプログラムし、 起動するまで待機します。

さ らに、AXI セン ト ラル DMA には、オプシ ョ ンと して 32 ビッ トおよび 64 ビッ トのバス幅のデー

タ リ アライ メン ト機能を備えています。 この機能によって、転送元および送信先のアドレスを独立

して指定できます。

AXI セン ト ラル DMA のスキャッ ター ギャザー機能

AXI セン ト ラル DMA には、従来の PLBv4.6 セン ト ラル DMA 動作のサポートに加えて、オプシ ョ

ンのスキャ ッ ター ギャザー (SG) 機能があ り ます。

SG 機能によって、転送制御に伴うシステム CPU の負荷を、セン ト ラル DMA のスキャ ッ ター ギャ

ザー エンジンが提供する高速のハードウェア オート メーシ ョ ンに軽減できます。 SG 機能は、 あら

かじめフォーマッ ト された転送コマンド (バッファー ディ スク リプター ) を、 システムに可能な

大の速度でシステム メモ リからフェ ッチして実行します。 この際、 CPU による介入は必要 小限

に抑えられます。 セン ト ラル DMA のアーキテクチャでは SG AXI4 バス インターフェ イ スを

AXI4 データ転送インターフェイス と分離します。 これによって、 バッファー ディ スク リプターの

フェッチおよび更新を、 実行中のデータ転送と並列して進めるこ とが可能となり、 性能が大幅に改

善されます。

DMA 転送は、 セン ト ラル DMA に内蔵された、 プログラム可能で柔軟な割り込み生成手法によっ

て、 システム CPU と適切に連携して進行します。 さ らに、 AXI セン ト ラル DMA では、 シンプル

モード と SG アシス ト モードを、 プログラム可能なレジスタ セッ ト を用いて、 システム プログラ

マーが切り替えるこ とができます。

AXI セン ト ラル DMA は、 新しい高性能 AXI DataMover ヘルパー コアを中心に構築されていま

す。 このコアは、 AXI4-Stream と メモ リマップ方式の AXI4 バスの間で基本的なブ リ ッジング エレ メン ト と して機能します。 AXI セン ト ラル DMA の場合、 DataMover の出力ス ト リームは、 内

部で入力ス ト リームへとループ バッ ク されます。 SG 機能は、 スキャ ッ ター ギャザー対応に機能強

化されたすべての AXI DMA 製品に使用される、 ザイ リ ンクス SG ヘルパー コアによって実現さ

れています。

セン ト ラル DMA の設定可能な機能

AXI4 セン ト ラル DMA では、 インプ リ メ ン トする機能セッ ト と FPGA リ ソースの使用量間の ト

レードオフが可能です。 FPGA のインプ リ メンテーシ ョ ン時に、 次の機能をパラ メーターを介して

設定できます。

• メ イン データ転送への DataMover Lite 適用 (このデータ転送メカニズムでは、 データ リ アラ

イ メン ト エンジン (DRE)、 および SG モードはサポート されない)

• スキャ ッ ター ギャザー機能の有効/無効

• DRE 機能の有効/無効 (DRE は 32 ビッ トおよび 64 ビッ トのデータ転送バス幅の場合のみ使用

可能)

• メ イン データ転送のバス幅の指定 (32、 64、 128、 256 ビッ ト )

• データ転送時に DataMover が使用できる AXI4 の 大バース ト長の指定

AXI リファレンス ガイド japan.xilinx.com 35UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス AXI インフラスト ラクチャ IP

セン ト ラル DMA の AXI4 インターフェイス

次の表は、 AXI4 セン ト ラル DMA の 4 つの外部インターフェイス、 およびこの DMA 機能に含ま

れる内部でブリ ッジングされた DataMover ス ト リーム インターフェイスをま とめたものです。

イーサネッ ト DMA ザイ リ ンクスのエンベデッ ド処理システムに導入された AXI4 プロ ト コルには、DMA (ダイレク ト

メモ リ アクセス) 機能を備えたイーサネッ ト ソ リ ューシ ョ ンがあ り ます。これは AXI4 の性能面の

利点と、 ザイ リ ンクスの既存イーサネッ ト IP ソ リ ューシ ョ ンが持つ効果的な動作を融合させた手

法です。

36 ページの図 2-18 は、 AXI DMA の上位ブロッ ク図です。

表 2-1 : AXI セン ト ラル DMA の AXI4 インターフェイス

インターフェイス AXI の種類 データ幅 内容

制御 AXI4-Lite

スレーブ

32 AXI セン ト ラル DMA の内部レジスタにアクセスします。 通

常は、システム プロセッサが AXI セン ト ラル DMA の動作を

制御および監視するために使用します。

スキャ ッ ター ギャザー AXI4 マスター 32 AXI セン ト ラル DMA がシステム メモ リから DMA 転送ディ

スク リプターを読み出すと き、および関連する転送動作が終了

した時点で更新済みのディ スク リプター情報をシステム メモ

リに書き戻すと きに使用する、メモ リマップ方式の AXI4 マス

ター インターフェイスです。

データ MMap 読み出し

AXI4 読み出し

マスター 32、 64、

128、 256

メモ リマップ方式のソース アドレスから転送ペイロード デー

タを読み出します。データ幅は、パラ メーターによって 32、64、128、 256 ビッ ト幅のいずれかに設定できます。

データ MMap 書き込み

AXI4 書き込み

マスター 32、 64、

128、 256メモ リマップ方式の宛先アドレスに転送ペイロード データを

書き込みます。データ幅は、パラ メーターによって 32、64、128、256 ビッ ト幅のいずれかに設定できます。幅はデータ読み出し

インターフェイス と同じにな り ます。

36 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

図 2-19 は、 AXI イーサネッ トの代表的なシステム アーキテクチャです。

X-Ref Target - Figure 2-18

図 2-18 : AXI DMA の上位ブロック図

AXI DMA

S2MM DMA Controller

MM2S DMA Controller

AXI DataMoverA

XI L

ite S

lave

Inte

rfac

e

MM2S_IntrOut

S2MM_IntrOut

ResetModule

Register Module

MM2S_DMACRMM2S_DMASR

MM2S_CURDESC

ReservedMM2S_TAILDESC

Reserved

S2MM_DMACRS2MM_DMASR

S2MM_CURDESC

ReservedS2MM_TAILDESC

Reserved

AX

I Con

trol

Inte

rfac

eA

XI S

tatu

sIn

terfa

ce

SG Engine(Interrupt Coalescing)

SG Interface

AXI Memory Map Read (MM2S)

AXI Memory Map Write (S2MM)

AXI Control Stream (MM2S)

AXI Status Stream (S2MM)

AXI Stream (MM2S)

AXI Stream (S2MM)

AXI Lite

AXI Memory Map SG Read / Write

SG Interface

X12038

X-Ref Target - Figure 2-19

図 2-19 : AXI DMA および AXI4 イーサネッ トの代表的使用例

CPU(AXI

MicroBlaze)

AXI4 MMap Interconnect

AXI Ethernet

AXI BRAM

AXI DDRx

Registers

AXI DMA

Scatter Gather Engine

DataMover

Ethernet Control

and Status

Registers

AXI4-Lite

AXI4-Stream

AXI4-Stream

AXI4-Stream

AXI4-Stream

Tx Payload

Rx Payload

Tx Control

Rx Status

AXI Intc

AXI4 MMap Interconnect

DP

DC

IC

AXI4

Interrupt

Interrupts In

Interrupt Out(To AXI Intc)

Interrupt Out(To AXI Intc)

AXI4-Stream

AXI4-Stream

AVB

Ethernet Tx

Ethernet Rx

MIIM

AXI4-LiteAXI4-Lite

AXI4-Lite

AXI4

AXI4

AXI4

AXI4

AXI4 Read

AXI4 Write

X12039

AXI リファレンス ガイド japan.xilinx.com 37UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス AXI インフラスト ラクチャ IP

36 ページの図 2-19 に示したとおり、 AXI イーサネッ トは新しい AXI DMA IP と組み合わせて使

用されるよ うにな り ました。 AXI DMA は、 従来の PLBv4.6 マルチポート メモ リ コン ト ローラー

(MPMC) が提供していた PLBv4.6 SDMA 機能を置き換えます。

AXI DMA は、 AXI イーサネッ トの AXI4-Stream ネイティブ プロ ト コルと、 エンベデッ ド処理シ

ステムが必要とする メモ リマップ方式の AXI4 プロ ト コルの間をブリ ッジングします。

AXI4 DMA の概要

AXI DMA エンジンは、 システム メモ リ と AXI4-Stream タイプのターゲッ ト ペリ フェラルの間の

高性能 DMA 機能を提供します。 また、 スキャ ッ ター ギャザー (SG) 機能も備え、CPU は転送の制

御および実行に伴う負荷をハード ウェア オート メーシ ョ ンにオフロードできます。

AXI DMA および SG エンジンは、 AXI DataMover ヘルパー コア (共有サブブロ ッ ク ) を中心に構

築されています。 このコアは、 AXI4-Stream と メモ リ マップ方式の AXI4 バスの間で基本的なブ

リ ッジング エレ メン ト と して機能します。

AXI DMA では、送信チャネルのメモ リマップからスレーブ (MM2S) と、受信チャネルのスレーブ

から メモ リマップ (S2MM) の転送動作を独立して実行できます。 また、 パケッ ト メ タデータの負

荷を軽減する独立した AXI4-Stream インターフェイスを提供します。

MM2S の AXI 制御ス ト リームは、AXI DMA よ り送信される SG ディ スク リプターから、ユーザー

アプリ ケーシ ョ ンのデータを提供します。

同様に、 S2MM の AXI ステータス ス ト リームは、 受信パケッ トに関連付けられた SG ディ スク リ

プター内に受信、 格納される AXI4 イーサネッ ト などのソース IP から、 ユーザー アプリ ケーシ ョ

ンのデータを提供します。

AXI イーサネッ ト アプリ ケーシ ョ ンでは、チェッ クサム オフロードの実行に必要な機能を、 AXI4制御ス ト リームおよび AXI4 ステータス ス ト リームが提供します。

オプシ ョ ンと して、 SG ディ スク リプターのキューにも対応しており、 AXI DMA 内部に 大 4 つのディ スク リプターをフェッチした りキューイングした りできます。この機能は、メ イン データ バス上の広帯域幅によるデータ転送を可能と します。

38 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

DMA の AXI4 インターフェイス

ザイ リ ンクスでは、 AXI4 機能を幅広く活用して DMA をインプ リ メ ン ト しています。 次の表は、

AXI DMA 機能で使用されている 8 つの AXI4 インターフェイスについてま とめたものです。

表 2-2 : AXI DMA インターフェイス

インターフェイス AXI の種類 データ幅 内容

制御 AXI4-Lite

スレーブ

32 AXI DMA の内部レジスタにアクセスします。通常は、シス

テム プロセッサが AXI DMA の動作を制御および監視す

るために使用します。

スキャ ッ ター ギャザー AXI4 マスター 32 AXI4 DMA がシステム メモリから DMA 転送ディスク リプ

ターを読み出すとき、および関連する転送動作が終了した時

点で更新済みのディスク リプター情報をシステム メモリに

書き戻すときに使用する、 メモリマップ方式の AXI4 マス

ター インターフェイスです。

データ MM 読み出し AXI4 読み出し

マスター 32、 64、

128、 256DMA のメモ リマップ方式インターフェイス側から、メ イン

ス ト リ ーム出力側へのデータ転送動作時に、 ペイ ロード

データを転送します。

データ MM 書き込み AXI4 書き込み

マスター 32、 64、

128、 256DMA のデータ ス ト リーム入力インターフェイス側から、

DMA のメモ リマップ方式インターフェイス側へのデータ

転送動作時に、 ペイロード データを転送します。

データ ス ト リーム出力 AXI4-Stream

マスター 32、 64、

128、 256データ MM 読み出しインターフェイスによって読み出さ

れたデータを、 AXI4-Stream プロ ト コルを使用して宛先の

受信 IP に転送します。

データ ス ト リーム入力 AXI4-Stream

スレーブ 32、 64、

128、 256AXI4-Stream プロ ト コルを使用してソース IP からデータ

を受信します。受信したデータは、データ MM 書き込みイ

ンターフェイスを介して、 メモ リマップ方式のシステムに

転送します。

制御ス ト リーム出力 AXI4-Stream

マスター

32 Tx 転送ディ スク リプターに埋め込まれた制御情報を、宛先

IP に転送するために使用します。

ステータス ス ト リーム入力 AXI4-Stream

スレーブ

32 ソース IP から Rx 転送情報を受信し、 関連する転送ディ ス

ク リプターのデータを更新した うえで、 システム メモ リに

書き戻します。 ディ スク リプターの更新にはスキャ ッ ター

ギャザー インターフェイスを使用します。

AXI リファレンス ガイド japan.xilinx.com 39UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス AXI インフラスト ラクチャ IP

ビデオ DMA AXI4 プロ ト コルによ るビデオ DMA (VDMA) は、 ビデオ アプ リ ケーシ ョ ンを広帯域化する ソ

リ ューシ ョ ンです。 イーサネッ ト DMA ソ リ ューシ ョ ンと同様の方法でインプリ メン ト されます。

図 2-20 は、 AXI4 VDMA の上位ブロ ッ ク図です。

40 ページの図 2-21 は、 AXI VDMA の代表的なシステム アーキテクチャです。

X-Ref Target - Figure 2-20

図 2-20 : AXI VDMA の上位ブロック図

AXI VDMA

S2MM DMA Controller

MM2S DMA Controller

AXI DataMover

AX

I Lite

Sla

ve In

terfa

ce

MM2S_IntrOut

S2MM_IntrOut

ResetModule

Register ModuleMM2S_DMACRMM2S_DMASR

MM2S_CURDESC

S2MM_DMACRS2MM_DMASR

S2MM_CURDESCReserved

SG Engine(Interrupt Coalescing )

AXI Memory Map Read (MM2S)

AXI Memory Map Write (S2MM)

AXI MM2S Stream

AXI S2MM Stream

AXI Lite

AXI Memory Map SG Read

MM2S Gen-Lock

MM2S FSync

S2MM Gen-Lock

S2MM FSync

MM2S_TAILDESCReserved

S2MM_TAILDESCReserved

MM2S Frame Size

MM2S Stride

MM2S Strt Addr 0

MM2S Strt Addr N:

MM2S Frame Size

MM2S Stride

MM2S Strt Addr 0

MM2S Strt Addr N:

MM2S Frame Size

MM2S Stride

MM2S Strt Addr 0

MM2S Strt Addr N:

MM2S Frame Size

MM2S Stride

MM2S Strt Addr 0

MM2S Strt Addr N:

axi_resetn

m_axis_mm2s_aresetns_axis_s2mm_aresetn

Line Buffer

Line Buffer

MM2S Line Bufffer Status

S2MM Line Bufffer Status

DownSizer

UpSizer

Reserved

x12054

40 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

AXI VDMA の概要

AXI VDMA エンジンは、 システム メモリ と AXI4-Stream タイプのターゲッ ト ペリ フェラルの間の

高性能 DMA 機能を提供します。 また、 スキャッター ギャザー (SG) 機能も備え、CPU は転送の制御

および実行に伴う負荷をハードウェア オート メーシ ョ ンにオフロードできます。AXI VDMA および

SG エンジンは、AXI DataMover ヘルパー コアを中心に構築されています。このコアは、AXI4-Streamと メモリマップ方式の AXI4 バスの間で基本的なブリ ッジング要素と して機能します。

AXI VDMA には、 大 16 フレーム バッファーの循環フレーム バッファー アクセス機能があ り、

ビデオ フレームの一部または全体を転送するツールを提供します。

また、 同じビデオ フレーム データを繰り返し転送する、 フレームの 「保留」 機能も備えています。

VDMA は独立したフレーム同期機能および独立した AXI ク ロ ッ クを持ち、各チャネルを異なるフ

レーム レートおよび異なるピクセル レートで動作させるこ とができます。2 つの独立して動作する

AXI VDMA チャネル間の同期を保つため、オプシ ョ ンと して Gen-Lock 同期機能も使用できます。

Gen-Lock を使用する と、 1 つ以上の AXI VDMA マスターに、 AXI VDMA スレーブを自動的に

同期させるこ とができます。 この機能によって、 スレーブではマスターとは異なるフレーム バッ

ファー空間による動作が可能になり ます。 このモードでは、 スレーブ チャネルがフレームを自動的

にスキップするか、 繰り返します。 いずれのチャネルを Gen-Lock スレーブまたは Gen-Lock マス

ターに設定してもかまいません。

ビデオ データを転送する場合、 AXI4-Stream ポートは、 8 ビッ トから 大 256 ビッ ト幅に設定で

きます。 AXI4-Stream ポート の幅が、 関連する メモ リ マップ方式の AXI4 ポート よ り も狭いコン

フ ィギュレーシ ョ ンでは、 AXI VDMA がデータのアップサイジングまたはダウンサイジングを実

行し、 メモ リマップ方式インターフェイス側のバース トにバス幅全体を使用できるよ うにします。

X-Ref Target - Figure 2-21

図 2-21 : AXI VDMA およびビデオ IP の代表的使用例

AXI リファレンス ガイド japan.xilinx.com 41UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス AXI インフラスト ラクチャ IP

VDMA の AXI4 インターフェイス

表 2-3 は、AXI VDMA 機能で使用される 6 つの AXI4 インターフェイスについてまとめたものです。

メモリ制御 IP およびメモリ インターフェイス ジェネレーター IP カタログには、 2 つの DDRx (SDRAM) AXI メモ リ コン ト ローラーがあ り ます。

Virtex-6 と Spartan-6 デバイスではメモ リ制御メカニズムが原理的に異なるため、 メモ リ制御記述

も必然的にデバイス固有のものになり ます (Virtex-6 はファブ リ ッ ク ベースのコン ト ローラーを使

用しているのに対し、 Spartan-6 はオンチップのメモ リ制御ブロ ッ ク (MCB) を搭載)。 この後は、

Virtex-6 および Spartan-6 デバイスによる AXI メモ リ制御について説明します。

Virtex-6 および Spartan-6 のメモ リ コン ト ローラーは、 2 つの異なるソフ ト ウェア パッケージ内で

使用できます。

• EDK では、メモリ コン ト ローラー コアの axi_v6_ddrx または axi_s6_ddrx を使用します。

• CORE™ Generator インターフェイスの場合は、 メモ リ インターフェイス ジェネレーター

(MIG) ツールを使用します。

下位の HDL コードは、 ラ ッパーが異なる以外は 2 つのパッケージで同じです。

AXI4 インターフェイスの柔軟性から、 いずれのタイプのコン ト ローラーを使用した場合でも適合

は容易です。

表 2-3 : AXI VDMA インターフェイス

インターフェイス AXI の種類 データ幅 内容

制御 AXI4-Lite スレーブ 32 AXI VDMA の内部レジスタにアクセスします。 通常

は、 システム プロセッサが AXI VDMA の動作を制御

および監視するために使用します。

スキャ ッ ター ギャザー

AXI4 マスター 32 AXI VDMA がシステム メモ リから DMA 転送ディ ス

ク リプターを読み出すと きに使用する、 メモ リ マップ

方式の AXI4 マスター インターフェイスです。 フェッ

チされたスキャ ッ ター ギャザー ディ スク リプターは、

ビデオ転送に関する内部パラ メーターを設定します。

データ MM 読み出し AXI4 読み出しマスター 32、 64、128、 256

DMA のメモリマップ方式インターフェイス側から、メ

イン ス ト リーム出力側へのデータ転送動作時に、 ペイ

ロード データを転送します。

データ MM 書き込み AXI4 書き込みマスター 32、 64、128、 256

DMA のデータ ス ト リーム入力インターフェイス側か

ら、DMA のメモ リマップ方式インターフェイス側への

データ転送動作時に、ペイロード データを転送します。

データ ス ト リーム

出力 AXI4-Stream マスター 8、 16、 32、

64、 128、256

データ MM 読み出しインターフェイスによって読み出

されたデータを、 AXI4-Stream プロ ト コルを使用して

宛先の受信 IP に転送します。

データ ス ト リーム

入力 AXI4-Stream スレーブ 8、 16、 32、

64、 128、256

AXI4-Stream プロ ト コルを使用してソース IP から

データを受信します。受信したデータは、データ MM 書き込みインターフェイスを介して、 メモ リ マップ方式

のシステムに転送します。

42 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

Virtex-6

Virtex-6 メモ リ コン ト ローラー ソ リ ューシ ョ ンは、メモリ インターフェイス ジェネレーター (MIG)ツールでサポート しており、 オプシ ョ ンで AXI4 インターフェイスを指定して更新できます。

このソ リ ューシ ョ ンは EDK から、 AXI4 専用インターフェイスを axi_v6_ddrx メモ リ コン ト

ローラーと指定しても使用できます。

axi_v6_ddrx メモ リ コン ト ローラーは、 ハード ウェア記述言語 (HDL) のロジッ ク、 GUI 共に同

じものを使用しますが、 XPS による EDK プロセッサのサポート用にパッケージ化されています。

Virtex-6 メモ リ コン ト ローラーは、AXI4-to-UI ブリ ッジ (AXI4 からユーザー インターフェイスへ

のブリ ッジ) を使用して AXI4 スレーブ インターフェイス (SI) に適合させます。AXI4-to-UI ブリ ッ

ジは、AXI4 スレーブ ト ランザクシ ョ ンを、MIG Virtex-6 UI プロ ト コルに変換します。これによっ

て、 従来の Virtex-6 メモ リ ソ リ ューシ ョ ンと同じオプシ ョ ンが使用できるよ うになり ます。

AXI4 の 適データ幅は UI データ幅と同じで、メモ リ データ幅の 4 倍です。AXI4 メモ リ インター

フェイスのデータ幅は、UI インターフェイスよ り も狭くするこ とができますが、 このよ うにするこ

とは推奨していません。 幅変換のサポートに、 エリ アが大き く タイ ミ ングや性能の劣るコアが使用

される可能性があるためです。

AXI4 インターフェイスは、 AXI4 の各ト ランザクシ ョ ンをよ り ス ト ラ イ ドの短い、 メモ リのサイ

ズに合った ト ランザクシ ョ ンに分割するこ とで、 UI へとマッピングします。 さ らに Virtex-6 メモ

リ コン ト ローラーがバンク /行を管理するこ とで、 メモ リ使用率が向上します。

図 2-22 は、AXI4 インターフェイスを使用した Virtex-6 メモ リ ソ リ ューシ ョ ンのブロ ッ ク図です。

Spartan-6 のメモリ制御ブロック

Spartan-6 デバイスは、 このデバイス固有の、ハード ウェアによる メモ リ制御ブロ ッ ク (MCB) プリ

ミ ティブを使用します。Spartan-6 MCB ソ リ ューシ ョ ンは、メモ リマップ方式の AXI4 スレーブ インターフェイス (SI) に適合します。

Spartan-6 アーキテクチャの外部メモ リ に対する AXI4 ト ランザクシ ョ ンを処理するには、 MCBユーザー インターフェイスへの変換ブリ ッジが必要です。

これら 2 つのインターフェイスが類似しているこ とから、AXI4 の SI を軽量に設定するこ とができ

ます。 それには、 データ幅の狭いバース ト を発行せず、 かつ設定対象の MCB インターフェイス と

同じネイティブ データ幅を持つマスターに接続します。

AXI4 ブリ ッジには、 次のよ うな特徴があ り ます。

• 16 ビート以下の転送の場合は、 AXI4 のインク リ メンタル (INCR) コマンドを MCB のコマン

ドに 1 対 1 で変換します。

X-Ref Target - Figure 2-22

図 2-22 : Virtex-6 メモリ制御のブロック図

axi_v6_ddrx (EDK) or memc_ui_top (COREGen) top level

DDR2 / DDR3 PHY

Virtex-6 Memory

Controller

AXI4 Slave Interface

BlockDDR2 / DDR3 DFINative

Interface

User Interface

bllock

UI Interface

AXI4 Interface

DDR2 or DDR3

SDRAM external

AXI4 Master

AXI リファレンス ガイド japan.xilinx.com 43UG761 (v13.1) 2011 年 3 月 7 日

ザイリンクス AXI インフラスト ラクチャ IP

• 16 ビート を超える AXI4 転送は、 大 16 ビートの ト ランザクシ ョ ンに分割して MCB プロ ト

コルによって送信します。

これによって、 マルチポート システムにおける性能とレイテンシのバランスを取る こ とができま

す。 AXI4 の WRAP コマンドは、 MCB インターフェイス上でラ ップ処理できるよ うに 2 つの MCBト ランザクシ ョ ンに分割されます。 MCB インターフェイスは WRAP をネイティブ コマンド と して

サポート していないためです。

axi_s6_ddrx コアと CORE Generator による Spartan-6 AXI MIG コアは、 大 6 ポート (MCB ポー

ト コンフ ィギュレーシ ョ ンによって異なる) を用いた 32、 64、 128 ビッ ト幅のインターフェイスな

ど、MCB のネイティブ ポート コンフ ィギュレーシ ョ ンをすべてサポート します。図 2-23 は、AXISpartan-6 メモ リ ソ リ ューシ ョ ンのブロ ッ ク図です。

メモ リ制御の詳細は、 メモ リ ソ リ ューシ ョ ンのウェブサイ ト http://japan.xilinx.com/products/design_resources/mem_corner の資料を参照してください。

X-Ref Target - Figure 2-23

図 2-23 : Spartan-6 メモリ ソリューシ ョ ンのブロック図

X12046

axi_s6_ddrx or mcb_ui_top

mcb_raw_wrapper

fpga boundary

MCB

MCB Soft Calibration Logic

AXI4 Master

AXI4 Master

AXI4 Master AXI4 SlaveInterface 5

AXI4 SlaveInterface 1

AXI4 SlaveInterface 0

LPDDR/DDR/DDR2/DDR3

SDRAM

Port 0

Port 1

Port 5

44 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 2 章 : ザイリンクスのツールおよび IP による AXI のサポート

AXI リファレンス ガイド japan.xilinx.com 45UG761 (v13.1) 2011 年 3 月 7 日

第 3 章

ザイリンクス FPGA に導入された AXI 機能

この章では、AXI 規格の各機能がザイ リ ンクス®の IP に具体的にどのよ うに利用されているかにつ

いて説明し、 IP 設計者が AXI 関連のさまざまなデザインや統合手法を自在に選択できるよ うにす

るこ とを目的と しています。

メモリマップ方式 IP の機能の導入とサポート

ザイ リ ンクスは、 AXI4 および AXI4-Lite に基づく豊富な機能のインプリ メンテーシ ョ ンとサポー

ト を進めてきました。 これらの機能は、 ザイ リ ンクスの開発チーム、 ユーザー、 サードパーティの

パートナーなどが作成したメモ リマップ方式 IP 間の相互運用を容易にします。

表 3-1 は、 ザイ リ ンクスが導入した AXI4 および AXI4-Lite の主要機能、 ザイ リ ンクス IP がイン

プリ メン ト した AXI4 仕様とそれに対するサポート レベルについてまとめたものです。

表 3-1 : ザイリンクスによる AXI4 および AXI4-Lite 機能の導入とサポート状況

AXI の機能 ザイリンクス IP のサポート

READY/VALID

ハンドシェイ ク AXI プロ ト コルによって規定された READY/VALID ハンドシェイ クによる順方向、逆方向の完全

フロー制御です。

転送長 メモ リマップ方式 AXI4 のバース ト長 :

• インク リ メンタル バース トの場合 1 ~ 256 ビート

• ラ ップ バース トの場合 1 ~ 16 ビート

ザイ リ ンクス IP では固定バース ト を使用しないでください。

固定バース トによってハンドシェイ ク レベルのプロ ト コル違反が発生するわけではあ り ません

が、 この動作は未定義であ り、 インク リ メンタル バース トに置き換えられる場合があ り ます。

転送サイズ/データ幅 IP のネイティブ データ幅は、 32、 64、 128、 256 ビッ トのいずれかに定義できます。

ただし、 AXI4-Lite でサポート されるデータ幅は 32 ビッ トのみです。

幅の狭い AXI4 バース トにも対応していますが、推奨できません。狭いバース トはシステム性能

を劣化させ、 システム規模を増大させる恐れがあるためです。

幅が異なるザイ リ ンクス IP 間で通信する必要がある場合、 AXI インターコネク トがデータ幅変

換の機能を提供します。

読み出し /書き込み専用 読み出し /書き込み、 読み出し専用、 書き込み専用のインターフェイスを使用できます。

AXI インターコネク ト をはじめとする多くの IP では、 インターフェイスを読み出し専用または

書き込み専用に設定する と、 これに合わせてロジッ クが 適化されます。

46 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 3 章 : ザイリンクス FPGA に導入された AXI 機能

AXI3 vs. AXI4 本来は AXI4 をサポートするよ う設計されています。 AXI3 との相互運用が必要な場合は、 AXIインターコネク ト に必要な変換ロジッ クがインプ リ メ ン ト されているため、 これを使用して

AXI3 と AXI4 デバイスを接続できます。

ただし、AXI3 の書き込みインターリーブ機能はサポート していません。ザイ リ ンクス IP では使

用しないでください。

メモ : この機能は、 AXI4 仕様になって削除されました。

ロ ッ ク /排他的アクセス ロ ッ ク された転送には対応していません。

ザイ リ ンクス インフラス ト ラ クチャ IP は、システム内のあらゆる場所に排他的アクセス ト ラン

ザクシ ョ ンを転送できますが、 ザイ リ ンクス IP 側では排他的アクセス機能をサポート していま

せん。 このため、 排他的アクセス要求に対する応答には、 すべて 「OK」 が返されます。

保護/キャ ッシュ ビッ ト インフラス ト ラ クチャ IP は、 システム内のあらゆる場所に保護ビッ トおよびキャ ッシュ ビッ ト

を転送できますが、通常のエンドポイン ト IP は動的保護またはキャ ッシュ ビッ ト をサポート し

ていません。

• 保護ビッ トは、常時セキュアな ト ランザクシ ョ ン タイプを意味する定数 000 に固定してくだ

さい。

• キャ ッシュ ビッ トは通常 0011 に固定します。 この値は、 バッファ リ ングおよび変更が可能

な ト ランザクシ ョ ンであるこ とを示します。

このよ うに設定する と、 システムを通過する ト ランザクシ ョ ンをインフラス ト ラ クチャ IP が転

送および変更する際に高い柔軟性が得られ、 性能が向上します。

サービス品質 (QoS) ビッ ト

インフラス ト ラ クチャ IP は QoS ビッ ト をシステム内のあらゆる場所に転送できますが、 エンド

ポイン ト IP は、 通常 QoS ビッ ト を無視します。

REGION ビッ ト ザイ リ ンクス AXI インターコネク トは、 そのアドレスマップ定義に規定された、 デコーダーの

ベース/上限アドレスに基づいて REGION ビッ ト を生成します。

レジスタ スライスなどのザイ リ ンクス インフラス ト ラ クチャ IP は REGION ビッ ト をシステム

全体に転送します。

複数のアドレス範囲に対応した一部のエンドポイン ト スレーブ IP は、アドレス デコーダーが冗

長になるこ とを防ぐために REGION ビッ ト を使用する場合があ り ます。

AXI マスター エンドポイン ト IP は REGION ビッ ト を生成しません。

ユーザー ビッ ト インフラス ト ラ クチャ IP はシステム内のあらゆる場所にユーザー ビッ ト を転送しますが、エン

ドポイン ト IP は通常これらを無視します。

相互運用性の問題が懸念されるため、 汎用 IP ではユーザー ビッ トの使用を推奨しません。

ただし、システム内にユーザー ビッ ト を転送する機能は、 ト ランザクシ ョ ンごとに補助的なサイ

ドバンド信号を必要とする、特殊用途のカスタム システムを構築する場合に役立ちます。たとえ

ば、 パリティ またはデバッグ情報を転送するためにユーザー ビッ ト を使用できます。

リセッ ト ザイ リ ンクス IP は通常、 リセッ トから 8 サイクル以内にすべての VALID 出力をディアサート

します。 リセッ ト パルス幅の要件は 16 サイクル以上です。

も遅い AXI ク ロ ッ クの 16 サイクルの間 AXI の ARESETN をアサート状態に保てば、 ザイ リ

ンクス IP のリセッ ト パルス幅と しては通常十分です。

低消費電力

インターフェイス サポート されていません。 AXI のオプシ ョ ンである低消費電力インターフェイス、 CSYSREQ、

CSYSACK、 CACTIVE は IP インターフェイスに含まれません。

表 3-1 : ザイリンクスによる AXI4 および AXI4-Lite 機能の導入とサポート状況 (続き)

AXI の機能 ザイリンクス IP のサポート

AXI リファレンス ガイド japan.xilinx.com 47UG761 (v13.1) 2011 年 3 月 7 日

AXI4-Stream の導入とサポート

AXI4-Stream の導入とサポート 相互運用を容易にするために、ス ト リーミ ング インターフェイスを必要とするザイ リ ンクス IP は、

AXI4-Stream プロ ト コルのサブセッ トに厳密に従っています。

AXI4-Stream 信号 表 3-2 に、 AXI4-Stream の信号、 使用条件、 使用上の注意を示します。

AXI4-Stream 内の数値データ

AXI4-Stream チャネルは、 マスターからスレーブにデータを転送する手段と して使用します。相互

運用性を確保するため、データ ビッ トの解釈方法がマスターとスレーブで正し く一致している必要

があ り ます。

ザイ リ ンクス IP では、 サンプ リ ングされた物理量を表す数値データ (例 : ビデオのピクセル デー

タ、 音声データ、 信号処理データなど) の転送にス ト リーミ ング インターフェイスをしばしば使用

します。 相互運用に対応するには、 数値データの一貫した解釈方法が必要です。

ザイ リ ンクス IP 内の数値データ ス ト リームは、 論理および物理の 2 つのレベルで定義されます。

情報を実質的にデータ構造と して転送できる DSP アプリ ケーシ ョ ンでは、 これらの定義を把握す

るこ とが特に重要です。

• 論理レベルとは、 アプリ ケーシ ョ ン固有のデータ構造の記述を指します。

• 物理レベルでは、 この論理によって規定されたデータを、 ビッ トや下位の AXI4-Stream 信号

にどのよ うに対応付けるかを記述します。

論理レベルでは単純な値のベクターによって数値データを表現します。 個々の値はアプリ ケーシ ョ

ンに応じて実数または複素数の形を取り ます。 ベクターの要素数も、 値と同様にアプリ ケーシ ョ ン

固有です。

表 3-2 : AXI4-Stream の信号

信号 使用条件 注意事項

TVALID 必須

TREADY オプシ ョ ン TREADY の使用は任意ですが、 強く推奨します。

TDATA オプシ ョ ン

TSTRB オプシ ョ ン 通常、エンドポイン ト IP では使用されませんが、スパース ス ト リー

ム信号で使用可能です。 メモ : 残りのパケッ ト を示すには、 TSTRBではなく TKEEP を使用します。

TKEEP 未使用 ヌル バイ トは残りのパケッ ト を示すためにのみ使用します。先頭ま

たは途中のヌル バイ トは通常サポート されません。

TLAST オプシ ョ ン

TID オプシ ョ ン 通常、エンドポイン ト IP では使用されませんが、インフラス ト ラ ク

チャ IP では使用可能です。

TDEST オプシ ョ ン 通常、エンドポイン ト IP では使用されませんが、インフラス ト ラ ク

チャ IP では使用可能です。

TUSER オプシ ョ ン

48 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 3 章 : ザイリンクス FPGA に導入された AXI 機能

物理レベルでは、 論理レベルで規定されたデータをインターフェイスの物理ワイヤにマップする必

要があ り ます。 論理値は、 ビッ ト幅 N の基本単位によって表します。 N はアプリ ケーシ ョ ン固有の

値です。 通常は、 次のよ うに規定されます。

• N ビッ トは、 固定小数点型の値と して解釈されますが、 浮動小数点型の値も使用できます。

• 実数の値は、 1 つの基本単位によって表されます。

• 複素数の値は、 基本単位の対と して表され、 実数成分の後ろに虚数成分が続きます。

相互運用を容易にするために、 ス ト リーム内の論理値は、 すべて同じビッ ト幅の基本単位によって

表現します。

AXI4-Stream の信号 TDATA に対応付ける前に、 各基本単位の N ビッ トには幅がバイ ト単位になる

よ うにパディング ビッ ト を付加します。 例 :

• N=12 の基本単位は、 16 ビッ トの値と して TDATA に格納されます。

• N=20 の基本単位は、 24 ビッ トの値と して TDATA に格納されます。

このよ うにするこ とでメモ リに基づくシステムとのインターフェイスが簡素化される と共に、 アッ

プサイジングやダウンサイジングを行う AXI インターコネク ト などの AXI インフラス ト ラ クチャ

IP を使用できるよ うにな り ます。

通常、 パディング用の追加ビッ トはスレーブへの入力時に無視されるため、 余分な リ ソースは使用

せず、 バッ クエンド ツールによって削除されます。 診断を簡素化するために、 マスターは未使用

ビッ ト を次のよ うに駆動します。

• 符号なしの値は、 ゼロ拡張します (未使用ビッ ト をゼロにします)。

• 符号付きの値は、 符号拡張します (未使用ビッ ト を符号ビッ ト と同じ値にします)。

TDATA の幅によっては、複数の基本単位を同じサイクル内に並列で転送できます。 たとえば、基本

単位が 16 ビッ トで TDATA 信号幅が 64 ビッ トの場合、 4 つの基本単位 (4 つのスカラー値または 2 つの複素数の値) を並列で転送できます。論理ベクターを構成する基本単位は、はじめに空間的に

(1 つの TDATA の幅方向)、 続いて時間的 (連続する各 TDATA 転送) に対応付けられます。

フ ィールド幅の合計がバイ トの整数倍にならない複数のデータ サブフ ィールドを連結する操作を、

バイ ト境界への位置合わせの前後のいずれに実行すべきかは、 通常、 情報のア ト ミ ッ ク性を考慮し

て決定します。 ア ト ミ ッ クな情報とは、 それだけで解釈が可能なデータを意味します。 一方、 ア ト

ミ ッ クではない情報とは、 データ解釈を目的と した場合に不完全なものを指します。

たとえば、 ア ト ミ ッ クなデータには、 浮動小数点数の情報ビッ トがすべて含まれます。 しかし、 浮

動小数点数の指数ビッ トだけではア ト ミ ッ クなデータ とは言えません。 通常 TDATA に情報を格納

する場合、データの非ア ト ミ ッ ク ビッ トに対しては、 (データ幅にかかわらず) ア ト ミ ッ クな単位が

完成するまで連結操作を続けます。 ア ト ミ ッ クな単位が完成した時点で、 必要であればパディング

ビッ ト を加えてバイ ト境界に揃えます。

AXI リファレンス ガイド japan.xilinx.com 49UG761 (v13.1) 2011 年 3 月 7 日

AXI4-Stream の導入とサポート

実数スカラー データの例

スカラー値のス ト リームの場合、 オプシ ョ ンの TLAST 信号には 2 つの使用方法があ り ます。 いず

れも、 等し く有効な方法です。 例を挙げて説明します。

次の表に示す特性を持った数値データのス ト リームを考えます。

このデータは、 図 3-1 に示すよ うな AXI4-Stream と して表されます。

スカラー値は、まったくパケッ ト化されていないデータ と見なすこ とができます。この場合、TLAST

はアクティブ Low に駆動してかまいません (TLASTA)。 また TLAST はオプシ ョ ン信号であるため、

チャネルから完全に削除するこ と もできます。

論理タイプ 符号なし実数

論理ベクター長 1 (たとえば、 スカラー値)

物理基本単位 12 ビッ ト固定小数点

物理基本単位格納幅 16 ビッ ト

物理 TDATA 幅 16 ビッ ト

X-Ref Target - Figure 3-1

図 3-1 : AXI4-Stream による実数スカラー (符号なし ) データの例

X12056

50 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 3 章 : ザイリンクス FPGA に導入された AXI 機能

一方、 スカラー値を長さ 1 のベクターである と見なすこ と もできます。 この場合は、 TLAST をアク

テ ィブ High に駆動する必要があ り ます (TLASTB)。 符号なしであるため、 使用しないパディ ング

ビッ トは 0 に駆動されています (ゼロ拡張)。

一方、符号付きのデータでは、図 3-2 に示すよ うに使用しないパディング ビッ ト を符号ビッ ト と同

じ値で駆動します (符号拡張)。

複素スカラー データの例

次の表に示す特性を持った数値データのス ト リームを考えます。

このデータは、 図 3-3 に示すよ うな AXI4-Stream と して表されます。

図の re(X) および im(X) は、 それぞれ X の実数成分と虚数成分を表します。

X-Ref Target - Figure 3-2

図 3-2 : 符号付きスカラー値 (符号拡張) の例

X12057

TDATA[15] ... TDATA[12]

論理タイプ 符号付き複素数

論理ベクター長 1 (たとえば、 スカラー値)

物理基本単位 12 ビッ ト固定小数点

物理基本単位格納幅 16 ビッ ト

物理 TDATA 幅 16 ビッ ト

X-Ref Target - Figure 3-3

図 3-3 : AXI4-Stream による複素スカラー データの例

X12058

AXI リファレンス ガイド japan.xilinx.com 51UG761 (v13.1) 2011 年 3 月 7 日

AXI4-Stream の導入とサポート

メモ : 図を見やすくするために、符号拡張した TDATA[15:12] は省略してあ り ます。複素数の値は、

2 ク ロ ッ ク サイ クルごとに 1 つ転送されます。

TDATA 信号の幅が 32 ビッ トのチャネルでも同じデータを転送できます。 この場合、バス幅が広い

こ とから、 図 3-4 に示すよ うに、 1 ク ロ ッ ク サイクルごとに 1 つの複素数の値を転送できます。

上の 2 つの図に示した同じデータの異なる表現方法 (直列および並列) は、システム固有の要件に合

わせてデータの表現を調整できるこ とを意味しています。 これら 2 つの表現方法は、 たとえば次の

よ うに使い分けます。

• 高速フーリエ変換 (FFT) などの高スループッ トの処理エンジンでは、並列の表現が望ましいで

し ょ う。

• MAC ベースの有限インパルス応答 (FIR) の場合は、 時分割多重化 (TDM) によるデータ パス

共有が可能な直列表現が適しています。

表現方法が異なるサブシステム間の相互運用性を得るには、 変換のメカニズムが必要にな り ます。

この場合、 表現方法は標準の AXI インフラス ト ラ クチャ IP によって簡単に変換ができるものを選

択します。

• 直列形式から並列形式への変換には AXI4-Stream ベースのアップサイザーを使用します。

• 並列形式から直列形式への変換には AXI4-Stream ベースのダウンサイザーを使用します。

ベクター データの例

次の表に示す特性を持った数値データのス ト リームを考えます。

X-Ref Target - Figure 3-4

図 3-4 : 32 ビッ ト幅の TDATA 信号による複素スカラー値転送の例

X12059

論理タイプ 符号付き複素数

論理ベクター長 4

物理基本単位 12 ビッ ト固定小数点

物理基本単位格納幅 16 ビッ ト

物理 TDATA 幅 16 ビッ ト

52 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 3 章 : ザイリンクス FPGA に導入された AXI 機能

AXI4-Stream による表現方法を図 3-5 に示します。

スカラーの場合と同様に、同じデータを 32 ビッ ト幅の TDATA チャネルに送出できます (図 3-6 参照)。

X-Ref Target - Figure 3-5

図 3-5 : 数値スト リームの例

X12060

X-Ref Target - Figure 3-6

図 3-6 : AXI4-Stream スカラーの例

X12061

AXI リファレンス ガイド japan.xilinx.com 53UG761 (v13.1) 2011 年 3 月 7 日

AXI4-Stream の導入とサポート

TDATA の幅が 64 ビッ トのチャネルでは、 並列度をさらに高めるこ とができます (図 3-7 参照)。

TDATA の幅を 128 ビッ トにするこ とで、 並列度を 大限に高めた例が図 3-8 です。

スカラー データに関してこ こまでの図に示したとおり、数値データには複数の表現方法があ り、 こ

れらはアプリ ケーシ ョ ンに応じて調整可能です。

同様に、 変換には AXI4-Stream のアップサイザーおよびダウンサイザーを使用できます。

X-Ref Target - Figure 3-7

図 3-7 : 64 ビッ ト幅 TDATA の例

x12062

X-Ref Target - Figure 3-8

図 3-8 : 128 ビッ ト幅 TDATA の例

X12063

54 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 3 章 : ザイリンクス FPGA に導入された AXI 機能

パケッ ト とヌル バイ ト

AXI4-Stream プロ ト コルでは、オプショ ンの TLAST 信号を使用してパケッ トの境界を指定できます。

多くの場合、 この指定方法で十分です。 しかし、 原理的に TLAST 信号はデータのサイズをパケッ

トの末尾で示すのに対し、 多くの IP ではパケッ トの先頭でサイズが必要にな り ます。 このよ うに

パケッ ト サイズを 初に指定する必要がある場合、 IP は別のメカニズムでパケッ ト サイズを知る

必要があ り ます。このこ とから、ス ト リーミ ングのスレーブ チャネルは次の 3 種類に分類できます。

• パケッ ト境界の解釈を必要と しないスレーブ

スレーブ チャネルにパケッ ト境界という概念がまったく存在しない場合、あるいはコアが実行

する処理動作がパケッ ト サイズの影響を受けない場合があ り ます。 多くの場合、 この種の IPは、 入力から出力にデータ と同じレイテンシで TLAST を伝搬するパス スルー機能を備えてい

ます。

• パケッ ト境界を識別するために TLAST 信号を必要とするスレーブ

これらのスレーブ チャネルは本質的にパケッ ト向けに設計され、パケッ ト サイズの指標と して

TLAST を使用できます。たとえば、巡回冗長検査 (CRC) コアは、データ転送と並行に CRC を計算でき、 TLAST 信号を検出した時点で CRC が正しいかど うかを検証できます。

• パケッ ト境界を識別するために TLAST 信号を必要と しないスレーブ

スレーブ チャネルの中には、必要なパケッ ト サイズを内部的に予測できるものがあ り ます。た

とえば、 FFT の入力パケッ ト サイズは常に変換のサイズと同じです。 このよ うな場合、 TLAST

が示す情報は冗長となるばかりか、 パケッ トのサイズ判断に曖昧さをもたらす恐れがあ り ます

(例 : N ポイン トの FFT に N-1 のサンプル パケッ トが入力された場合など)。

このよ うな曖昧さを排除するため、 多くのザイ リ ンクス IP コアではスレーブ チャネルの TLAST を無視し、明示的に得られるほかのパケッ ト サイズ情報を利用します。この場合、TLAST

の状態にかかわらず、AXI 転送の必要数が使用されます。 この方法であれば、TLAST をアサー

トするタイ ミ ングをマスターとスレーブで一致させる必要もな く、 ほとんどの場合相互運用性

が大幅に向上します。

例と して、 FIR に続き N ポイン ト FFT を実行する場合を考えます。 FIR はス ト リーム ベース

のコアであ り、N 回の転送ごとに TLAST をアサート したス ト リームを生成する機能は、本来備

えていません。 FFT が TLAST 入力を無視するよ うに設計されていれば、 これは問題にならず、

システムは期待どおりに機能します。ただし、FFT が TLAST を必要とする場合は、必要な信号

を発生させるために、 「再フレーミ ング」 のための中間的なコアが必要になり ます。

• パケッ ト化されたデータの場合、 残りのパケッ ト を示すために TKEEP が必要な場合があ り ま

す。 TDATA の幅がス ト リームのア ト ミ ッ ク サイズ (データの 小粒度) よ り も広い場合、 デー

タ ビート全体を埋めるに十分なデータ バイ ト数がないために、 パケッ トが残る可能性があ り

ます。 ザイ リ ンクスのエンドポイン ト IP がサポートする TKEEP の使用方法は、 残りのパケッ

ト を示すこ とのみです。 ディアサート された TKEEP ビッ ト (これらを AXI4-Stream プロ ト コ

ル v1.0 では 「ヌル バイ ト 」 と呼びます) は TLAST がアサート されたデータ ビート内にしか存

在しません。 パケッ ト化されていない連続ス ト リーム、 またはパケッ ト化されていてもデータ

幅がそのデータのア ト ミ ッ ク サイズ以下のス ト リームでは TKEEP は不要です。 これは、通常、

AXI4-Stream プロ ト コルに記載された 「アライ メン ト された連続ス ト リーム」 モデルに従って

います。

AXI4-Stream プロ ト コルは、サイズ変換後、特に中途半端な長さのパケッ ト をアップサイジン

グした後にパケッ ト長を保つためにヌル バイ ト を末尾にエンコードする場合の TKEEP の使用

方法を定義しています。この TKEEP 使用方法は、基本的にパケッ ト末尾の後ろに残余バイ ト を

エンコードする という ものです。これはデータのア ト ミ ッ ク サイズを超えてパケッ ト をアップ

サイジングしたこ とによって生じる、 意味のない情報です。

AXI リファレンス ガイド japan.xilinx.com 55UG761 (v13.1) 2011 年 3 月 7 日

AXI4-Stream の導入とサポート

ザイ リ ンクスの AXI マスター IP は転送末尾で TKEEP ビッ トすべてがディアサート されてい

るパケッ ト を生成しません。つま り、 このガイ ド ラインによって、ザイ リ ンクス IP はこのよ う

なパケッ トの送信元になるこ とはないため、 互換性とスループッ トが 大化されます。 TKEEP

ビッ トがディアサート されている場合は、同じデータ ビート内で TLAST = 1 とするこ とで、パ

ケッ ト内の 後のデータ バイ トの位置を示す必要があ り ます。

ザイ リ ンクスの AXI スレーブ IP は、通常 TKEEP ビッ トがすべてディアサート された転送末尾

のパケッ ト を受信できるよ うには設計されていません。 TKEEP 入力を備えたスレーブ IP は、

TLAST がアサート された TKEEP のみをサンプリ ングして、パケッ トの残りのバイ ト を判断し

ます。通常、ザイ リ ンクス IP を使用するシステムでは、ほかの IP が AXI4-Stream 仕様に記述

された「アライ メン ト された連続ス ト リーム」に準拠して設計されているため、すべての TKEEPビッ トがディアサート された末尾の転送は発生しません。

ザイ リ ンクス IP のシステムに入力されるすべてのス ト リームは、入力時点で完全に満たされて

いなければなり ません (先頭または途中にヌル バイ ト を含まない)。 これによ り、 どのよ うなサ

イズ変換を実行しても、 TKEEP は残りのパケッ トに対するエンコードのみに使用され、すべて

の TKEEP ビッ トがディアサート されたデータ ビートは発生しません。

サイドバンド信号

AXI4-Stream インターフェイス プロ ト コルでは、 TUSER バスを使用してサイ ドバンド信号を転送

できます。

相互運用性という観点から見る と、 AXI4-Stream チャネル上で TUSER を使用する と、 TDATA だけ

でなく TUSER にもマスターとスレーブで同じ解釈方法を使用する必要があるため課題が生じます。

通常、ザイ リ ンクス IP で TUSER フ ィールドを使用するのは、TDATA フ ィールドのデータを補強す

るために有益であ り、かつ 終的には無視してもよい情報を追加する場合のみです。 TUSER を無視

するこ とで、情報の一部が失われる可能性があ り ますが、 TDATA フ ィールドにはある情報が残され

ます。

た と えば、 FFT コア インプ リ メ ンテーシ ョ ンにおいて TDATA バスに適用するブロ ッ ク指数を

TUSER 出力によって示すこ とができます。 この場合、 TUSER を無視する と指数の倍率は失われま

すが、 TDATA には倍率をかける前の変換データが含まれています。

イベン ト

イベン ト信号とは、 特定の状態 (たとえば、 入力パラ メーターが無効、 バッファーが空またはフル、

コアが追加情報の待機中など) が存在するこ とを示すためにコアが使用する、 単線のインターフェ

イスです。 イベン ト信号は特定の状態が存在する間アサート され、 状態が解消された時点でディア

サート され、 ラ ッチはされません。 使用するコア、 およびそのシステム内での使用方法に応じて、

アサート されるイベン トはエラー、 警告、 情報などを表します。 イベン ト信号は、 オプシ ョ ンの信

号を含まない VALID 信号のみの AXI4-Stream チャネルと見なすこ とができます。 あるいは OOB(Out-Of-Band) 情報である と考え、 汎用フラグ、 割り込み、 ステータス信号のよ うに扱う こ と もで

きます。

イベン ト信号には、 次のよ うにさまざまな使用方法が考えられます。

• 無視する

明示的に述べられていない限り、 システムはいずれのイベン ト条件も無視できます。

通常、 イベン トがアサート されている間も、 ある程度の性能劣化の可能性はあるもののコアは

動作を続けます。

56 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 3 章 : ザイリンクス FPGA に導入された AXI 機能

• 割り込みまたは GPIO と して使用する

適切な割り込みコン ト ローラーまたは汎用 I/O コン ト ローラーを介してイベン ト信号をプロ

セッサに接続します。入力されたイベン トに対して、システム ソフ ト ウェアは必要に応じて自

由に応答できます。

• シ ミ ュレーシ ョ ン診断に使用する

イベン トは、ハード ウェア シ ミ ュレーシ ョ ン時に役に立つ場合があ り ます。イベン トによって、

マスターとスレーブ間の相互運用性の問題点を明らかにしたり、 サブシステム間の対話におけ

る解釈の誤り を示したりできます。

• ハードウェア診断に使用する

イベン トは、ハード ウェア診断時にも役立つ場合があ り ます。イベン ト信号を診断 LED または

テス ト ポイン トに配線したり、 ChipScopeェ Pro Analyzer に接続したりできます。

システムが、 開発から統合を経て リ リースに移行する と共に動作に対する信頼性が高ま り、 これに

合わせてイベン トの必要性は低くなる と思われます。

たとえば、 開発時のシミ ュレーシ ョ ンでは、 イベン ト を積極的に監視し、 システムが期待どおり動作

しているこ とを確認します。 ハードウェア統合に移行してからは、 予想外の動作を示したときのみイ

ベン ト を監視します。 完全にテス ト済みのシステムでは、 イベン ト を無視しても問題あり ません。

イベン ト信号は、その記述する状態をコアが検出した時点でアサート されるこ とに注意が必要です。

つま り、 コア内部のレイテンシやバッファ リ ングの方法によっては、 イベン ト を発生させる入力か

ら不確定の時間の経過後に、 イベン ト信号がアサート される場合がある という こ とです。

TLAST イベン ト

スレーブ チャネルの中には、 パケッ ト境界を示す TLAST 信号を必要と しないものがあ り ます。 こ

のよ う な場合、 入力される TLAST と、 内部のパケッ ト境界の概念の不一致を示す 2 つのイベン ト

があ り ます。

• TLAST 欠落 : コアの予想に反して TLAST がアサート されない状況です。

• 予期せぬ TLAST : コアの予想に反して TLAST がアサート される状況です。

これらのイベン トで問題が発生する可能性があるかど うかはシステム デザインによって異なり ます。

例と して、 CPU のコプロセッサと して FFT コアを使用する場合を考えます。 このシステムでは、

パケッ ト形式の DMA エンジンによってデータがコアにス ト リーム転送されます。

DMA エンジンは、指定された長さの連続したメモ リ領域を FFT コアに送信し、パケッ トの末尾で

適切に TLAST をアサートするよ うに設定できます。 システム ソフ ト ウェアは、 このコプロセッサ

を次に示すいくつかの方法で使用できます。

• 単独変換

も単純な動作モードでは、 FFT コアと DMA エンジンをロ ッ クステップ方式で動作させま

す。FFT コアが N ポイン ト変換を実行するよ うに設定されている場合、DMA エンジンは N 個の複素数サンプルからなるパケッ ト を送信するよ うに設定する必要があ り ます。

ソフ ト ウェアまたはハードウェアのバグによってこの関係が崩れた場合、 FFT コアは TLASTの不一致を検出して、 該当するイベン ト をアサート します。 この場合のイベン トはエラー状態

を示します。

AXI リファレンス ガイド japan.xilinx.com 57UG761 (v13.1) 2011 年 3 月 7 日

DSP とワイヤレス IP AXI 機能の導入

• グループ変換

通常、 DMA エンジンによって転送される 1 パケッ ト ごとに、 開始アドレス、 転送長、 フラグ

を含むディ スク リプターが必要です。 このよ うなディ スク リプターを生成してエンジンに送信

する動作はホス ト CPU の負荷になり ます。 変換サイズが短く、 変換回数が多くなる と、 この

ディ スク リプター管理のオーバーヘッ ドが、 FFT コアに CPU 処理をオフロードする メ リ ッ ト

を上回る可能性があ り ます。

この課題に対する解決策の 1 つが、複数の変換を 1 つの DMA 動作にグループ化する方法です。

たとえば、FFT コアを 32 ポイン ト変換用にコンフ ィギュレーシ ョ ンしている場合、CPU は 64回の変換を 1 回の DMA 動作にまとめるこ とができます。DMA エンジンは、64 回の変換に必

要なデータを含む長さ 2048 のサンプル パケッ ト を 1 つのみ生成します。 しかし、 DMA エン

ジンが送信するパケッ トはこの 1 つのみであるため、TLAST が適切にアサート されるのは 後

の変換に対するデータのみになり ます。 したがって、 グループ化された転送では、 FFT コアが

63 回の 「TLAST 欠落」 イベン ト を発生します。 このイベン ト発生は完全に予測された結果で

あ り、 エラー状態を示しているわけではあ り ません。

この例では、グループ転送の通常動作中に「予期せぬ TLAST」 イベン トはアサート されません。

TLAST が FFT 変換の 末尾に一致しない DMA 転送は行われないはずです。しかし、前述の単

独変換の場合と同じ よ うに、 ソフ ト ウェアまたはハード ウェアのエラーがこのイベン ト をア

サートする可能性があ り ます。 たとえば、 グループ化されたパケッ トの途中で、 変換サイズを

誤って変更した場合などにこのエラーが発生します。

• ス ト リーミ ング変換

大規模な変換の場合、入力パケッ ト全体を 1 つの連続したメモリ領域に格納するのが困難な場

合があ り ます。

このよ うな場合は、複数のよ り小さな DMA 転送によって FFT コアにデータを送信する必要が

あるこ とがあ り ます。 各転送の 後に TLAST 信号がアサート されます。 CPU による DMA 転送の管理方法によっては、 FFT コア内部のパケッ ト境界の概念と TLAST 信号がまったく一致

しない場合があ り ます。

このよ うな場合、 FFT コアはデータ転送中に 「TLAST 欠落」 と 「予期せぬ TLAST」 イベン ト

の両方をアサートするこ とにな り ます。 これはすべて想定された結果であ り、 エラー状態を示

しているわけではあ り ません。

DSP とワイヤレス IP AXI 機能の導入 個々の AXI4-Stream スレーブ チャネルは、 ブロ ッ ク型またはノンブロ ッ ク型チャネルのいずれか

に分類されます。

チャネル上で ト ランザクシ ョ ンを実行している間、 コアの動作が禁止される場合、 このチャネルを

ブロ ッ ク型チャネルと呼びます。

たとえば、データ チャネルと制御チャネルの 2 つのスレーブ チャネルを持つ FFT コアを考えます。

データ チャネルは入力データを、 制御チャネルは入力データの処理方法 (変換サイズなど) を指示

する制御パケッ ト を転送します。

制御チャネルは、 ブロ ッ ク型またはノンブロ ッ ク型のいずれにも設計できます。

• ブロ ッ ク型の場合、コアに制御パケッ ト とデータ パケッ トの両方が存在する場合にのみ変換が

実行されます。

• ノンブロ ッ ク型の場合は、データ パケッ トだけがあれば変換を実行できます。 コアは前回の変

換の制御情報を再利用します。

58 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 3 章 : ザイリンクス FPGA に導入された AXI 機能

ブロ ッ ク型と ノンブロ ッ ク型のインターフェイスの選択に関しては、 次のよ うにいくつかの ト レー

ドオフがあ り ます。

一般的には、 ブロ ッ ク型チャネルの簡便さはそのデメ リ ッ ト を上回り ます。

メモ : ブロ ッ ク型と ノンブロ ッ ク型の動作の違いは、 与えられたデータ と制御情報をコアが使用す

る方法であ り、スレーブ チャネルの TREADY の駆動方法に直接影響する とは限り ません。たとえば、

スレーブ チャネルに内部バッファーを適用したコアでは、このバッファーに空き領域がある と きに

TREADY をアサートする場合があ り ます。

機能 ブロック型 ノンブロック型

同期化 自動

コアは ト ランザクシ ョ ンに合わせて動作

します。たとえば、1 つの制御パケッ ト と

1 つの入力データ パケッ トによって、1 つの出力データ パケッ トが生成されます。

非自動

システム設計者は、 制御情報が

データよ り先にコアに到達する

よ う設計する必要があ り ます。

シグナリ ングの

オーバーヘッ ド 若干あり

前回と同じであっても、 制御情報を毎回

転送する必要があ り ます。

小限

前回と異なる場合のみ、 制御情

報を転送します。

接続 単純

ブロ ッ ク型コアのシステムには必要な

データが必要なと きに供給され、 自動同

期機能によって制御とデータのパケ ッ

トは確実に同期が保たれます。

複雑

ノ ンブロ ッ ク型のコアでは、 シ

ステム内のデータ フローと制御

フローをシステム設計者が管理

する必要があ り ます。

リ ソースの

オーバーヘッ ド

若干あ り

ブロッ ク動作を可能とするために、通常、

コアに少数のバッファーおよびステート

マシンを追加する必要があり ます。

なし

ノ ンブロ ッ ク型の動作には、 通

常、 リ ソースの追加は不要です。

AXI リファレンス ガイド japan.xilinx.com 59UG761 (v13.1) 2011 年 3 月 7 日

第 4 章

ザイリンクス AXI プロ ト コルへの移行

概要

既存のコアを移行するプロセスでは、 既存の I/O 信号を AXI プロ ト コルの対応する信号にマッピ

ングします。 ロジッ クの追加が必要になる場合もあ り ます。

MicroBlaze™ エンベデッ ド プロセ ッサではエンデ ィ アンネスが従来のビ ッ グ エンデ ィ アン

(PowerPC® エンベデッ ド プロセッサの PLB インターフェイスに対応) から、 リ トル エンディアン

(ARM® プロセッサの要件および AXI プロ ト コルに対応) に変更されました。 ソフ ト ウェアの移行

に関しては、 70 ページの 「IP アップグレードのための CORE Generator の使用法」 で説明します。

IP コアの AXI への移行

IP の移行に関して、 次のよ うなガイ ド ラインがあ り ます。

エンベデッ ド PLBv4.6 IP : エンベデッ ド IP の種類に応じて次の 3 とおりの移行ケースを検討する

必要があ り ます。

• ゼロから構築された IP

• 旧バージ ョ ンのザイ リ ンクス ツールが提供する Create and Import Perihperal Wizard を使

用して作成された IP

• 変更不可であ り、既存の PLBv4.6 インターフェイスを用いて現状のまま使用する必要があ

る IP

ゼロから作成した IP については、 こ こでは取り上げません。 45 ページの 「メモ リマップ方式 IP の機能の導入とサポート 」および ARM 社のウェブサイ トに掲載されている仕様書『ARM AMBA AXIProtocol v2.0 Specification』 を参照してください。 新規の IP は AXI プロ ト コルに従って設計する

必要があ り ます。

旧バージ ョ ンのザイ リ ンクス ツールが提供する Create and Import Peripheral (CIP) Wizard によっ

て作成した IP は、 アンサー レコード http://japan.xilinx.com/support/answers/37425.htm に掲載さ

れているテンプレート を使用して AXI 対応に移行できます。

変更せずに現状を保つ必要がある IP であっても、 AXI-To-PLB ブリ ッジを使用すれば ザイ リ ンク

ス ツール内での処理が可能になり ます。詳細は、次のセクシ ョ ン 「AXI-To-PLB ブリ ッジ」 を参照

して ください。

大規模なザイ リ ンクス IP (しばしばコネクテ ィ ビテ ィ IP または Foundation IP と呼ばれるもの) :この種の IP については、 その IP 別の資料に、 移行に関する指示が記載されています。 PCIe、 イー

サネッ ト、 メモ リ コア、 高速シ リアル I/O などの IP がこの分類に含まれます。

DSP IP : この多岐にわたる IP の変換に関する一般的なガイ ド ラインが示されています。

60 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 4 章 : ザイリンクス AXI プロ ト コルへの移行

Local-Link インターフェイス : Local-Link はザイ リ ンクス ソフ ト ウェアで何世代にもわたって使

用されてきた、 FIFO 方式の汎用ス ト リー ミ ング インターフェ イ スです。 詳細は、 62 ページの

「Local-Link から AXI4-Stream への移行」 を参照して ください。

AXI-To-PLB ブリ ッジ

PLBv4.6 ベースの IP を独自に開発してきたザイ リ ンクスのエンベデッ ド プロセッサの顧客企業向

けに、AXI-To-PLB ブリ ッジは既存の IP を AXI ベースのシステムに取り込むメカニズムを提供し

ます。

この AXI4 からプロセッサのローカル バス (PLBv4.6) へのブリ ッジは、AXI4 ト ランザクシ ョ ンを

PLBv4.6 ト ランザクシ ョ ンに変換します。AXI4 側では 32 ビッ ト または 64 ビッ トのスレーブと し

て、 PLBv4.6 側では 32 ビッ ト または 64 ビッ トのマスターと して機能します。

機能 ザイ リ ンクス AXI (AXI4 と AXI4-Lite) から PLBv4.6 へのブリ ッジは、 次の機能をサポートする

ソフ ト IP コアです。

• AXI4、 AXI4-Lite および PLB v.46 (ザイ リ ンクス シンプリ フ ィケーシ ョ ンを適用したもの)

• 同期クロ ッ ク比 : AXI:PLB=1:1

• AXI および PLB インターフェイスのアドレス幅 : 32 ビッ ト

• AXI および PLB インターフェイスのデータ バス幅 : 32 ビッ ト または 64 ビッ ト (AXI:PLB=1:1)

• 書き込みおよび読み出しデータのバッファ リ ング

AXI4 スレーブ インターフェイス AXI4 スレーブ インターフェイス (SI) の次の機能に対応しています。

• AXI4 インターフェイス カテゴ リの設定

• 制御 (AXI4-Lite) インターフェイス

• 読み出し /書き込みインターフェイス

• 読み出し専用インターフェイス

• 書き込み専用インターフェイス

• デザインの内部レジスタにアクセスする追加制御インターフェイス

• 1 ~ 256 の INCR バース ト

• FIXED タイプの 1 ~ 16 バース ト転送

• WRAP タイプの 2、 4、 8、 16 バース ト転送

• 幅の狭い転送に対するサポートの設定

• アライ メン ト なしの ト ランザクシ ョ ン

• バッファ リ ング可能な書き込み転送に対する早期応答

• バッファ リ ング可能な書き込み転送時のエラー /タイムアウ ト状態を調べるデバッグ レジスタ

• パイプライン化する読み出し /書き込みアドレス数 ( 大 2) の設定

• ヌル データ書き込みス ト ローブに対する割り込み生成

• 先頭および末尾のデータ ビート を除く、 部分データ ス ト ローブに対する割り込み生成

• 読み出し /書き込み同時動作のサポート

AXI リファレンス ガイド japan.xilinx.com 61UG761 (v13.1) 2011 年 3 月 7 日

AXI-To-PLB ブリ ッジ

PLBv4.6 マスター インターフェイス サポート対象の PLBv4.6 マスター インターフェイス (MI) 機能は次のとおりです。

• パイプライン化する読み出し /書き込みアドレス数 ( 大 2) の設定

• ザイ リ ンクス シンプリ フ ィケーシ ョ ンを適用した PLBv4.6 プロ ト コル

• 小 1 バイ ト、 4 ~ 8 バイ ト までの単独転送

• 2 ~ 16 データ ビートの固定長

• ライン サイズ 4 および 8 のキャッシュライン ト ランザクシ ョ ン

• 読み出し 1 回および書き込み 1 回に対するアドレスのパイプライン化

• 読み出し /書き込み同時動作のサポート

• 必要に応じてデータを複製する 32、 64、 128 ビッ トの PLBv4.6 データ バスのサポート

AXI-To-PLBv4.6 ブリ ッジの機能説明 図 4-1 は、 AXI-To-PLBv4.6 ブリ ッジのブロ ッ ク図です。

• PORT-2 は、 C_EN_DEBUG_REG=1、 C_S_AXI_PROTOCOL=”AXI4”、C_S_AXI_SUPPORTS_WRITE=1 の場合のみ有効です。

• AXI のデータ バス幅は 32 および 64 ビッ ト 、PLBv4.6 マスターは 32 および 64 ビッ トのデバ

イスです (例 : C_MPLB_NATIVE_DWIDTH= 32/64)。AXI-To-PLBv4.6 ブリ ッジは、 PLBv4.6 のデータ バス幅と して、 32 ビッ ト 、 64 ビッ ト 、 128ビッ ト をサポート し、 必要ならばデータを複製します。

• AXI ト ランザクシ ョ ンは AXI スレーブ インターフェイス (SI) によって受信された後、

PLBv4.6 バス マスター インターフェイス上の PLBv4.6 ト ランザクシ ョ ンに変換されます。

• 読み出しおよび書き込みデータはいずれもブリ ッジ内にバッファ リ ングされます (C_S_AXI_PROTOCOL=”AXI4” の場合)。 これは、 AXI と PLBv4.6 プロ ト コル間に機能の相

違があるためです。 具体的には、 AXI プロ ト コルではマスターがデータ フロー量を調整 (スロ ッ トル) できるのに対し、 PLBv4.6 プロ ト コルの PLB マスターはデータ フローをスロ ッ ト

ルできません。

X-Ref Target - Figure 4-1

図 4-1 : AXI-To-PLBv4.6 ブリ ッジのブロック図

PORT 1

PORT 2

AXI4

Registers

PLB

v46

AXI PLBv46 Bridge

AXI4 Lite

Invalid if (C_BRIDGE_AXI_PROTOCOL=”axi4lite”)

OR (C_S0_AXI_SUPPORTS_WRITE=0) OR (C_S0_AXI_DEBUG_REGISTER_EN=0)

Valid only when (C_BRIDGE_AXI_PROTOCOL=”axi4”)

Valid only when (C_BRIDGE_AXI_PROTOCOL=”axi4lite”)

AXI4-PLBv46 Bridge

Bridge Logic

AXILite-PLBv46 Bridge

X12064

62 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 4 章 : ザイリンクス AXI プロ ト コルへの移行

ブリ ッジには次のよ うな特徴があ り ます。

• PLBv4.6 書き込みト ランザクシ ョ ンを開始する前に、AXI ポートからの書き込みデータ入力を

バッファ リ ングします。

• 大バース ト長 (16) の PLB 転送 2 回分のデータを格納できる深さ 32x32/64x32 の読み出し

および書き込みデータ バッファーをインプ リ メン ト します。

• AXI から PLB への読み出し /書き込み同時動作をサポート します。

Local-Link から AXI4-Stream への移行 Local-Link は、ザイ リ ンクス IP コアに広く使用されているアクティブ Low の信号の規格です。 こ

れらの信号の多くに AXI4-Stream 内の信号が対応しているため、 AXI4-Stream プロ ト コルに簡単

に変換できます。

Local-Link の必須信号から AXI4-Stream 信号への対応付け Local-Link には一連の必須信号と、オプシ ョ ン信号があ り ます。表 4-1 は、必須信号と AXI4-Streamプロ ト コル信号の対応をまとめたものです。

• ク ロ ッ クおよびリ セッ ト信号は、 移行対象のインターフェイスの該当する ク ロ ッ クおよびリ

セッ ト信号に直接対応付けるこ とができます。ARESETN 信号を使用しない IP コアもあ り ます

が、 その場合は別のシステム リ セッ ト信号を使用できます。

表 4-1 : Local-Link の必須信号

信号名 方向 内容 対応する AXI4-Stream 信号

CLK 入力 ク ロ ッ ク : すべての信号は、 このク

ロ ッ クに同期します。

ACLK

RST_N 入力 リセッ ト : リセッ トがアサート され

る と、 制御信号がディアサート され

ます。

ARESETN

(または、その他の

リセッ ト )

DATA ソースから宛先 データ バス : フレーム データはこ

のバスを通して送信されます。

TDATA

SRC_RDY_N ソースから宛先 ソース Ready : ソースのデータ送信

準備が整ったこ とを示します。

TVAILD

DST_RDY_N 宛先からソース デスティネーシ ョ ン Ready : シンク

のデータ受信準備が整ったこ と を

示します。

TREADY

SOF_N ソースから宛先 フレームの開始 : フレームの先頭

ビート を示します。

<なし >

EOF_N ソースから宛先 フレームの終了 : フレームの 終

ビート を示します。

TLAST

CLK 入力 ク ロ ッ ク : すべての信号は、 このク

ロ ッ クに同期します。

ACLK

AXI リファレンス ガイド japan.xilinx.com 63UG761 (v13.1) 2011 年 3 月 7 日

Local-Link から AXI4-Stream への移行

• AXI4-Stream の TDATA 信号はオプシ ョ ンです。 Local-Link では DATA 信号が必須であるた

め、Local-Link から AXI4-Stream に変換されたインターフェイスでも TDATA 信号を生成する

必要がある と考えられます。

• ソースおよび宛先の Ready はアクティブ Low の信号です。 これらの信号はアクティブ Highの信号に反転するこ とで TVALID および TREADY 信号に変換できます。

メモ : TREADY 信号はオプシ ョ ンです。 インターフェイスを変換する場合、 この信号を使用す

るこ とを前提と しています。

• EOF_N はフレームの終端を示すためのアクティブ Low の信号です。この信号は反転するこ と

でオプシ ョ ンの TLAST に直接接続できます。

• SOF_N には、 AXI4-Stream プロ ト コル内に直接対応付けられる信号があ り ません。

フレームは必ず TLAST (または リ セッ ト ) 検出後の 初の有効なビートから開始されるため、

その先頭は明示的に示さな くてもわかり ます。 このため、 インターフェイスにこの信号は不要

になり ました。 この信号を TUSER フ ィールドに印加してもかまいません。

図 4-2 は、 単一 Local-Link の一般的な波形です。

図 4-2 から、 フロー制御信号 (SRC_RDY_N および DST_RDY_N) がデータ フローをどのよ うに制

御しているかがわかり ます。また、SOF_N と EOF_N 信号がデータ パケッ トのフレームを規定して

いる方法も確認して ください。

図 4-3 は、 AXI4-Stream によって同じタ イプの ト ランザクシ ョ ンを処理する場合を示したもので

す。 Local-Link との顕著な差異は、 フレーム開始が示されるよ うにな り、 その機能を担っていた

SOF 信号が削除された点のみであるこ とに注目して ください。

X-Ref Target - Figure 4-2

図 4-2 : 単一 Local-Link の波形

CLK

SOF_N

EOF_N

SRC_RDY_N

DST_RDY_N

DATA[63:0]

X12043

P0 P2 P3 P4 P5P1

X-Ref Target - Figure 4-3

図 4-3 : AXI4-Stream の波形

ACLK

TLAST

TVALID

TREADY

TDATA P0 P1 P2 P3 P4 P5X12042

64 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 4 章 : ザイリンクス AXI プロ ト コルへの移行

Local-Link のオプシ ョ ン信号から AXI4-Stream 信号への対応付け

表 4-2 は、Local-Link のオプシ ョ ン信号の中から使用頻度高いものについて、AXI4-Stream への対

応をまとめたものです。

• この表に示していないオプシ ョ ン信号は、 いずれも TUSER 信号を使用して送信する必要があ

り ます。

• Local-Link で SOP_N および EOP_N 信号が使用されるこ とはまれです。 これらの信号は、

SOF/EOF 信号に粒度を付加します。 これらの信号が必要な場合は、 TUSER フ ィールド内に作

成する必要があ り ます。

• REM 信号はパケッ トの残りの部分を指定します。 AXI4-Stream で TLAST = 1 の場合、 パケッ

ト内の 終バイ トの位置を示すために TKEEP バスがディアサート されるこ とがあ り ます。

• ソース中断信号 SRC_DSC_N はソース側から早期にト ランザクシ ョ ンを終了するためのメカ

ニズムです。 この機能は、 TUSER フ ィールド を使用して実現できます。 ソース デバイスは

TLAST 信号も印加する必要があ り ます。

• 宛先側からの中断については、AXI4-Stream プロ ト コル側に対応するネイティブ機能があ り ま

せん。 TUSER は常にソース デバイスから送信されるため、 この機能には使用できません。 し

たがって、 AXI4-Stream には規定されていない、 専用のサイ ドバンド信号を使用します。 この

よ うな信号は、 AXI4-Stream には含まれないと考えられます。

• CH インジケーターは、 スレッ ド ID (TID) に対応付けるこ とができます。 パリ ティ または何ら

かのエラー チェッ クに使用する リ ソース と しては TUSER が 適です。

表 4-2 : Local-Link のオプシ ョ ン信号から AXI4-Stream 信号への対応付け

信号名 方向 内容 対応する AXI 信号

SOP_N ソースから宛先 パケッ ト先頭 : フレーム内の

パケッ ト指定

TUSER

EOP_N ソースから宛先 パケッ ト終端 : フレーム内の

パケッ ト指定

TUSER

REM ソースから宛先 データの余り を示すバス : 有効データ と無効データの境界

指定

TKEEP

SRC_DSC_N ソースから宛先 ソース中断 : ソース デバイス

がフレームを中断したこ とを

示します。

TUSER

DST_DSC_N 宛先からソース 宛先中断 : 宛先デバイスがフ

レームを中断したこ とを示し

ます。

<なし >

CH ソースから宛先 チャネル バス番号 : チャネル

または宛先 ID を指定するた

めに使用します。

TID

PARITY ソースから宛先 パリティ : データ バス全体に

わたって計算したパリ ティを

含みます。

TUSER

AXI リファレンス ガイド japan.xilinx.com 65UG761 (v13.1) 2011 年 3 月 7 日

IP 移行における System Generator の使用法

Local-Link IP のバリエーシ ョ ン

Local-Link にはいくつかのバリエーシ ョ ンがあ り、 注意が必要です。

• 一部アクティブ High の信号を使用するものがあ り ます。 AXI4-Stream もアクティブ High の信号を使用するため (ARESETN を除く )、 このよ うな変形例では移行後も極性が変わり ません。

• 独自の Local-Link 信号を作成するユーザーもいます。 これらの信号は Local-Link 仕様には定

義されていません。

• 信号がソースから宛先に送信されるものの場合、移行先と しては TUSER が適しています。

• 信号が宛先からソースに向かう場合は、 TUSER その他の AXI4-Stream 信号はいずれも使

用できません。 このよ う な場合には、 宛先から ソースに信号を戻す別の AXI4-Stream インターフェイスを作成する方法が推奨されます。このインターフェイスでは オプシ ョ ンの

AXI4-Stream 信号の大部分を使用しません。 使用するのは TVALID と TUSER 信号のみ

です。

Local-Link に関する参考文献

Local-Link の資料は、 次のウェブサイ トから入手できます。

http://japan.xilinx.com/products/design_resources/conn_central/locallink_member/sp06.pdf

IP 移行における System Generator の使用法

DSP および PLBv4.6 いずれの IP も、 System Generator ソフ ト ウェアを使用した移行が可能です。

System Generator for DSP IP の AXI への移行

AXI IP を使用するために System Generator for DSP によるデザインを移行する場合、 一般的な考

慮事項がいくつかあ り ます。 こ こでは、 これらの重要な項目について詳細を述べ、 移行プロセスの

概要を示します。 各 IP 固有の移行に関する詳細については、 それぞれのデータシート を参照して

ください。

リセッ ト

System Generator では、 非 AXI IP の リ セッ ト信号はアクテ ィブ High です。 AXI IP 一般および

System Generator 内のリセッ ト信号にはアクティブ Low の aresetn が使用されます。 したがっ

て、 AXI と 非 AXI の IP の両方を 1 つのリセッ ト信号でリセッ トするには、 System Generator の「Inverter」 ブロ ッ クが必要になり ます。

aresetn 信号は内部レジスタにラ ッチされるため、Low パルスは少なく と も 2 サイクル必要です。

また、 aresetn は常に aclken よ り も優先されます。

クロック イネーブル

System Generator では、 クロ ッ ク イネーブルと して非 AXI IP および AXI IP のいずれに対しても

アクティブ High 信号を使用します。System Generator の AXI IP ではアクティブ High のクロ ッ ク

イネーブル aclken を使用します。

TDATA

AXI プロ ト コルでは、 データは 1 つの TDATA 入力ス ト リームに統合されます。 これによって、

CORE Generator 内の DSP IP の 上位ポート との一貫性が保たれます。 データ ポートの接続を容

易にするために、System Generator のブロ ッ ク ビューでは TDATA が個々のポートに分解して表示

されます。

66 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 4 章 : ザイリンクス AXI プロ ト コルへの移行

図 4-4 に、 この例の AXI Complex Multiplier ブロッ クを示します。

ポートの順序

非 AXI と AXI の IP、 たとえば複素乗算器の 3.1 (非 AXI) と 4.0 (AXI) では、ブロ ッ ク上の実数お

よび虚数ポートの表示順序が上下逆にな り ます。 したがって、 AXI ブロ ッ クをデータ パスに接続

する と きは、 誤って交差させないよ うに注意が必要です。 図 4-5 に、 ポート信号の例を示します。

X-Ref Target - Figure 4-4

図 4-4 : AXI Complex Multiplier ブロック

X-Ref Target - Figure 4-5

図 4-5 : ポート信号の例

AXI リファレンス ガイド japan.xilinx.com 67UG761 (v13.1) 2011 年 3 月 7 日

FSL (高速シンプレックス リンク) から AXI4-Stream への移行

レイテンシ

System Generator の AXI IP では、非 AXI IP とはレイテンシの扱い方が異なり ます。非 AXI IP では、 GUI のオプシ ョ ンを使用するか、 maximum performance オプシ ョ ンに -1 を指定するこ とで

直接レイテンシを規定できます。 これに対して AXI IP のレイテンシの場合は、 Automatic または

Manual のいずれかを指定します。

• Automatic が maximum performance オプシ ョ ンの -1 に相当します。

• レイテンシを手作業で設定する場合は、 AXI ブロ ッ クの Minimum Latency と呼ばれるパラ

メーターを使用します。ブロ ッ ク型のモードではシステムにバッ ク プレッシャがある場合、 レ

イテンシは指定した 小レイテンシよ り も大き くなるためです。 ノンブロ ッ ク型の AXI コン

フ ィギュレーシ ョ ンの場合、 レイテンシは必然的に決定します。

出力幅の仕様

System Generator では出力ワード幅の仕様が、 非 AXI と AXI の IP で異な り ます。 非 AXI IP では、 出力の 上位ビッ ト (MSB) と 下位ビッ ト (LSB) の両方を指定する必要があ り ます。 一方、

AXI IP では出力幅 (全体の幅) のみ指定すれば、 2 進数の小数点位置は自動的に判断されます。 出

力の丸め動作は、 非 AXI と AXI の IP で同様です。

System Generator における PLBv4.6 インターフェイスの移行 System Generator では、 既に PLBv4.6 インターフェイスが含まれているデザインの移行が容易で

す。15 ページの図 2-1 に示すよ うに、プロセッサ コア (pcore) を生成する前に EDK プロセッサ ブロ ッ クで AXI4 インターフェイスを選択します。

プロセッサ インポート モードを使用する場合、 [Bus Type] は灰色表示とな り、 入力できません。

これは、インポートする MicroBlaze™ プロセッサに使用されているバスを System Generator が自

動的に検出し、適切なインターフェイスを適用するためです。 System Generator へのインポート を

実行する前に、 AXI4 インターフェイスを備えた MicroBlaze プロセッサを含む新規の XPS プロ

ジェク ト を作成する必要があ り ます。

FSL (高速シンプレックス リンク) から AXI4-Stream への移行 FSL (高速シンプレッ クス リ ンク ) ペリ フェラルを AXI4-Stream ペリ フェラルに変換する場合に検

討すべき項目がいくつかあ り ます。 移行が必要となる対象は次のとおりです。

• スレーブ FSL ポートから AXI4-Stream スレーブ インターフェイスへ

• マスター FSL ポートから AXI4-Stream マスター インターフェイスへ

次の表は、 マスター FSL およびスレーブ FSL から AXI4-Stream 信号への変換表です。

マスター FSL から AXI4-Stream 信号への対応付け 表 4-3 に、 AXI4-Stream 信号の対応付けを示します。

表 4-3 : AXI4-Stream 信号の対応付け

信号 方向 AXI 信号 方向

FSL_M_Clk 出力 M_AXIS_<Port_Name>ACLK 入力

FSL_M_Write 出力 M_AXIS_<Port_Name>TVALID 出力

68 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 4 章 : ザイリンクス AXI プロ ト コルへの移行

スレーブ FSL から AXI4-Stream 信号への対応付け 表 4-4 に、 FSL から AXI4-Stream 信号への対応付けを示します。

スロッ トルの相違点

FSL と AXI4-Stream ではスロ ッ トルの方法に、 次のよ うな根本的な相違があ り ます。

• AXI_M_TVALID 信号は、 いったんアサートする と AXI_TREADY 信号によって転送が完了す

るまでディアサートできません。 ただし、 AXI_TREADY は、 AXI4-Stream スレーブからの要

求があれば、 常にアサートおよびディアサートできます。

• FSL の場合、 FSL_Full および FSL_Exists 信号がインターフェイスの状態 (スレーブがフ

ルかど うかやマスターに有効なデータがあるかど うかなど) を示します。

• FSL マスターは、 書き込みを実行する前に、 FSL スレーブの FSL_Full 信号の現在の状態を

確認するこ とで、 スレーブが転送を受信できるかど うかを確認します。

• AXI4-Stream のマスターの場合は、 転送が開始されてからのみ、 AXI_S_TREADY の状態を使

用できます。

MicroBlaze プロセッサには、 FSL インターフェイスの現在の状態を確認する FSL テス ト命令があ

り ます。 AXI4-Stream においてこの命令を動作させるために、 MicroBlaze の AXI4-Stream マス

ター インターフェイスは、それぞれに出力保持レジスタ と して機能する 32 ビッ トのデータ フ リ ッ

プフロ ップ (DFF) を備えています。

MicroBlaze は put fsl 命令を実行する際、この DFF に書き込みます。MicroBlaze 内の AXI4-Streamロジッ クは、AXI4-Stream に許可されるとただちに値を DFF から外部の AXI4-Stream スレーブ デバ

イスに転送します。 AXI4-Stream の TREADY/TVALID 信号を確認する代わりに、 FSL のテス ト命令

によ って DFF に有効なデータが格納されているかど う かを確認し ます。 これは、 この目的に

AXI_S_TREADY 信号を直接使用できないためです。

この 32 ビッ ト DFF の追加によって、現在の FSL 命令のすべてが AXI4-Stream 上でもシームレス

に動作するこ とが保証されます。 FSL から AXI4-Stream への変換にソフ ト ウェアの変更は必要あ

り ません。

FSL_M_Full 入力 M_AXIS_<Port_Name>TREADY 入力

FSL_M_Data 出力 M_AXIS_<Port_Name>TDATA 出力

FSL_M_Control 出力 M_AXIS_<Port_Name>TLAST 出力

表 4-3 : AXI4-Stream 信号の対応付け (続き)

信号 方向 AXI 信号 方向

表 4-4 :

信号 方向 AXI 信号 方向

FSL_S_Clk 出力 S_AXIS_<Port_Name>ACLK 入力

FSL_S_Write 入力 S_AXIS_<Port_Name>TVALID 入力

FSL_S_Full 出力 S_AXIS_<Port_Name>TREADY 出力

FSL_S_Data 入力 S_AXIS_<Port_Name>TDATA 入力

FSL_S_Control 入力 S_AXIS_<Port_Name>TLAST 入力

AXI リファレンス ガイド japan.xilinx.com 69UG761 (v13.1) 2011 年 3 月 7 日

DSP IP で AXI4-Stream を使用するための HDL デザインの移行

下位互換性を確保するために、 MicroBlaze プロセッサは AXI4 向けに通常のメモ リ マップ方式

AXI インターフェイスが設定されている場合でも、 引き続き FSL インターフェイスをサポート し

ます。 これを可能と するのが、 独立し た MicroBlaze コ ンフ ィ ギ ュ レーシ ョ ン パラ メ ーター

(C_STREAM_INTERCONNECT) であ り、 このパラ メーターに基づいてス ト リーム インターフェイ

スが AXI4-Stream あるいは FSL のいずれとすべきかを判断しています。

DSP IP で AXI4-Stream を使用するための HDL デザインの移行

DSP IP で AXI4-stream インターフェイスを使用する際には、 それによってフ ィルターまたは FFTなどの DSP 機能つま り信号処理動作が変化しないよ うにする必要があ り ます。 しかし、 DSP IP に入力されるデータのシーケンスが変わる と、 その DSP IP からの機能出力も著し く変化する可能性

があ り ます。 たとえば、 時分割多重化 (TDM) された入力データ ス ト リームにおいて 1 サンプル分

のシフ トが発生しただけでも、 すべての TDM データに誤った結果が出力されます。

AXI4-Stream インターフェイスを備えた DSP IP を使用するための HDL デザインの移行を容易に

するために、 こ こでは一般的な検討課題を示します。

各 DSP IP 固有の移行に関する指示

各 IP のデータシートには、 その IP 固有の移行に関する詳細な指示が記載されていますが、 こ こで

はそれらについて概観します。特定の IP を移行する前に、その IP のデータシートの「AXI4-Streamに関する考慮事項」 および 「旧バージ ョ ンからの移行」 の項を確認して ください。

デモ テストベンチ

図 4-6 に、 IP のデータシートに含まれる リ ス トの例を示します。

コアの移行をサポートするために CORE Generator ではテス トベンチ例を生成できます。生成され

たテス トベンチは、 CORE Generator プロジェク ト ディ レク ト リの下の demo_tb ディ レク ト リ内

に保存されます。 このテス ト ベンチは、 生成されたコアを イ ンス タンシエー ト し、 DSP IP がAXI4-stream インターフェイス と共にどのよ うに動作するかを簡単な例で示します。 これは、 コア

を実行する単純な VHDL テス トベンチです。 ソース コードは CORE Generator 出力ディ レク ト リ

内にある 1 つの VHDL ファ イル demo_tb/tb_<コンポーネン ト名>.vhd です。 ソース コード

には詳細なコ メン トが記載されています。デモンス ト レーシ ョ ン テス トベンチはコアの入力信号を

駆動して、 AXI4-Stream インターフェイスを備えたコアの機能と動作モードの実行例を示します。

X-Ref Target - Figure 4-6

図 4-6 : IP データシートの例

70 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 4 章 : ザイリンクス AXI プロ ト コルへの移行

生成されたテス トベンチの詳細な使用法は、 各 IP データシートのデモ テス トベンチに関するセク

シ ョ ンを参照して ください。

図 4-7 は、 demo_tb ディ レク ト リの構造を示したものです。

IP アップグレードのための CORE Generator の使用法

CORE Generator が使用可能であれば、 そのコア アップグレード機能を使用して既存の XCO ファ

イルを旧バージ ョ ンのコアから 新バージ ョ ンにアップグレードできます。

FIR Compiler v6.0、Fast Fourier Transform v8.0、DDS Compiler v5.0、Complex Multipler v4.0 などの DSP IP コアには、XCO パラ メーターを旧バージ ョ ンのコアからアップグレードする機能があ

り ます。 図 4-8 に、 CORE Generator のアップグレード機能を示します。

メモ : アップグレードのメカニズムだけでは、 新バージ ョ ンと互換性のあるコアは作成されませ

ん。 アップグレード機能は、 パラ メーターを旧バージ ョ ン と等価になる よ う選択するのみです。

AXI4-Stream インターフェイスを使用するには、デザイン内のコアのインスタンシエーシ ョ ンも更

新する必要があ り ます。 アップグレード機能は、 以前の XCO ファ イルのバッ クアップも作成しま

す。 生成された出力は、 CORE Generator プロジェク トの /tmp フォルダーに保存されます。

レイテンシの変更

AXI4-Stream の各スレーブ チャネルは、 ブロ ッ ク型またはノンブロ ッ ク型のいずれかに分類され

ます。 チャネル上で ト ランザクシ ョ ンを実行している間、 コアの動作が禁止される場合、 このチャ

ネルをブロ ッ ク型チャネルと呼びます。 通常、 DSP IP の AXI4-Stream インターフェイスのレイテ

ンシは、 非ブロ ッキング モードでは一定に、 ブロ ッキング モードでは可変にな り ます。 デザイン

移行時のエラーを回避するために、 IP データシートの 「Latency Changes」 および 「Instructions forMinimum Change Migration」 のセクシ ョ ンを参照してください。

X-Ref Target - Figure 4-7

図 4-7 : demo_tb ディレク ト リの構造

X-Ref Target - Figure 4-8

図 4-8 : CORE Generator のアップグレード機能

AXI リファレンス ガイド japan.xilinx.com 71UG761 (v13.1) 2011 年 3 月 7 日

AXI 移行におけるソフ トウェア ツールに関する考慮事項 (エンディアンの反転)

スレーブ FSL から AXI4-Stream 信号への対応付け

表 4-4 に、 FSL から AXI4-Stream 信号への対応付けを示します。

AXI 移行におけるソフ トウェア ツールに関する考慮事項 (エンディアンの反転)

MicroBlaze™ の PLBv4.6 に基づくビッグ エンディアン システムを AXI ベースのリ トル エンディ

アン システムに変換する場合、 ソフ ト ウェア フローへの影響に配慮する必要があ り ます。 こ こで

は、 このよ うなデザイン向けのソフ ト ウェア開発における一般的な考慮事項を解説します。

AXI4 の場合も、 ザイ リ ンクス ソフ ト ウェア開発キッ ト (SDK) のソフ ト ウェア ツールのフローは

変わり ません。IDE および下位のソフ ト ウェア ツールは MicroBlaze プロセッサ インターフェイス

を自動的に検出し、 使用する適切なオプシ ョ ンを推定します。

たとえば、SDK で管理するビルドでボード サポート パッケージやユーザー アプリ ケーシ ョ ンを構

築する と、 コンパイラーのフラグ -mlittle-endian が自動的に追加されます。 ただし、 コマン

ド ラ インから直接 MicroBlaze GNU コンパイラーを呼び出す場合は、 明示的にこのオプシ ョ ンを

付加する必要があ り ます。

Libgen、XMD、その他のコマンド ライン ソフ ト ウェア ツールは、エンディアンネスを考慮した う

えで出力を生成し、 プロセッサ システムと対話します。 さ らに、 デザインに使用されている AXIエンベデッ ド処理 IP に適切なド ライバーが関連付けられます。これには、MicroBlaze v8.00.a の更

新された CPU ド ラ イバーも含まれます。

ただし、 Xilinx Platform Studio IDE は、 AXI ベースのデザイン向けのボード サポート パッケージ

またはユーザー アプリ ケーシ ョ ンの作成には対応していません。 代わりに SDK を使用するか、 コ

マンド ラインから直接ソフ ト ウェア ツールを起動してください。

MicroBlaze のビッグ エンディアン システム向けに作成されたエンドユーザー アプ リ ケーシ ョ ン

であっても、コードがエンディアンネスの影響を受けないものであれば、 小限の変更、またはまっ

た く変更なしに同等のリ トル エンディアン システムで動作させるこ とができます。 ハード ウェア

の移行が完了後、ハード ウェア デザインの更新と同じ手法によって、ソフ ト ウェア アプリ ケーシ ョ

ンを移行します (推奨手順は SDK のオンライン ヘルプを参照してください)。 API が変更された場

合、 OS のライブラ リやド ラ イバー用のボード サポート パッケージ関数に対するユーザー アプ リ

ケーシ ョ ン内の呼び出しを変更する必要があ り ます。

ユーザー コード、 カスタム ド ラ イバー、 その他のコードは、 ビッグ エンディアンまたはリ トル エンディアン フォーマッ トによるデータ表現の影響を受ける場合、再作成が必要になる可能性があ り

ます。

表 4-5 : FSL から AXI4-Stream 信号への対応付け

信号 方向 AXI 信号 方向

FSL_S_Clk 出力 S_AXIS_<Port_Name>ACLK 入力

FSL_S_Write 入力 S_AXIS_<Port_Name>TVALID 入力

FSL_S_Full 出力 S_AXIS_<Port_Name>TREADY 出力

FSL_S_Data 入力 S_AXIS_<Port_Name>TDATA 入力

FSL_S_Control 入力 S_AXIS_<Port_Name>TLAST 入力

72 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 4 章 : ザイリンクス AXI プロ ト コルへの移行

ビッグ エンディアンからリ トル エンディアンへの移行時のガイドライン

以降に MicroBlaze のビッグ エンディアン表現で使用されているソフ ト ウェア フローやコードを、

リ トル エンディアンのデザインに移行する場合に考慮すべき一般的なガイ ド ラインを示します。

1. エンディアンネスの影響を受けやすいソフ ト ウェアの場合は状況を的確に把握して ください。

メモ リ、 ファ イル、 ス ト リームとの間で読み出しまたは書き込みを実行する場合は、 特に注意

が必要です。

2. MicroBlaze の PLBv4.6 ビッグ エンディアン システム上で動作する既存のソフ ト ウェアには

変更が必要な場合があ り ます。

a. XPS ソフ ト ウェア フローは AXI をサポート していないため、 SDK を使用する必要があ

り ます。

b. SDK では、新しい AXI ハードウェア ハンドオフのインポート、新しいボード ソフ ト ウェ

ア パッケージの作成、 ソフ ト ウェア アプリ ケーシ ョ ンのインポート を実行します。

c. 必要に応じてド ライバー呼び出しを変更し、ユーザー コードがエンディアン変更の影響を

受けないこ とを確認します。 ユーザー開発のド ライバーは、 動作がエンディアンネスの影

響を受ける場合、 再作成が必要となる可能性があ り ます。

d. コマンド ラインから GNU ツールを実行して makefile を作成する場合、 適切なコンパイ

ラー フラグ –mlittle-endian を使用する必要があ り ます。

3. MicroBlaze のリ トル エンディアンとビッグ エンディアン ソフ ト ウェアには互換性があ り ま

せん。

a. データ表現のエンディアンネスが異なるオブジェク ト ファ イル (.o) およびライブラ リ を、

混在させないでください。

b. 互換性が確認されている場合を除き、 ド ライバーを混在させないでください。

c. ビッグ エンディアン システム用に作成された ELF ファ イルを、リ トル エンディアン シス

テム上で使用しないでください (その逆も同様)。

d. 生成されたザイ リ ンクス データ ファイルがシステム内のエンディアンネスの影響を受ける

場合は (たとえば、 ELF ファイルなどの ブロッ ク RAM データを含む BIT ファイルなど) 使用しないでください。

e. ブロ ッ ク RAM の初期化やデータ共有の設定は、 マスターのエンディアンネス要件に合わ

せる必要があ り ます。

f. エンディアンネス (ファ イル内のバイ ト順) の影響を受ける、 旧アプリ ケーシ ョ ン データ

ファイルは使用しないでください。

g. MicroBlaze のエンディアンネスに注意を払い、 ソフ ト ウェア コードを適切に作成してく

ださい。

h. ビッグ エンディアンと リ トル エンディアンのマスター間でデータを交換する場合、 ユー

ザー アプリ ケーシ ョ ン コードおよびド ライバー (または、 いずれか一方) によってデータ

のバイ ト順を操作し、 相互運用性を確保する必要があ り ます。

下の表は、 MicroBlaze が各種データの表現にビッグ エンディアンまたはリ トル エンディアンを使

用する場合のデータ構成をま とめたものです。この表は、『MicroBlaze プロセッサ リ ファレンス ガイ ド』 (UG081) を基に作成しました。

AXI リファレンス ガイド japan.xilinx.com 73UG761 (v13.1) 2011 年 3 月 7 日

データ タイプとエンディアンネス

データ タイプとエンディアンネス

MicroBlaze がデータ表現にビッグ エンディアンまたはリ トル エンディアンのいずれのフォーマッ

ト を使用するかは、パラ メーター C_ENDIANNESS の設定によって決定します。 MicroBlaze™ プロ

セッサのハード ウェアがサポートするデータ タイプは、 ワード、 ハーフ ワード、 バイ トです。

反転ロードおよび反転ス ト ア命令の LHUR、LWR、SHR、SWR を使用する と、表の 「バイ ト反転オー

ダー」 に示したよ うに、 データ内のバイ トが反転されます。

表 4-6 ~ 74 ページの表 4-8 に、 各データ タイプのビッ トおよびバイ ト構成を示します。

表 4-6 : ワード データ タイプのビッ トおよびバイ ト構成

ワード データ タイプ 値

ビッグ エンディアン バイ ト アドレス n n+1 n+2 n+3

ビッグ エンディアン上位/下位バイ ト 上位バイ ト 下位バイ ト

ビッグ エンディアン バイ ト順 n n+1 n+2 n+3

ビッグ エンディアン バイ ト反転順 n+3 n+2 n+1 n

リ トル エンディアン バイ ト アドレス n+3 n+2 n+1 n

リ トル エンディアン上位/下位バイ ト 上位バイ ト 下位バイ ト

リ トル エンディアン バイ ト順 n+3 n+2 n+1 n

リ トル エンディアン バイ ト反転順 n n+1 n+2 n+3

ビッ ト ラベル 0 31

上位ビッ ト /下位ビッ ト 上位ビッ ト 下位ビッ ト

表 4-7 : ハーフ ワード データ タイプ

ハーフ ワード データ タイプ 値

ビッグ エンディアン バイ ト アドレス n n+1

ビッグ エンディアン上位/下位バイ ト 上位バイ ト 下位バイ ト

ビッグ エンディアン バイ ト順 n n+1

ビッグ エンディアン バイ ト反転順 n+1 n

リ トル エンディアン バイ ト アドレス n+1 n

リ トル エンディアン上位/下位バイ ト 上位バイ ト 下位バイ ト

リ トル エンディアン バイ ト順 n+1 n

リ トル エンディアン バイ ト反転順 n n+1

ビッ ト ラベル 0 15

上位ビッ ト /下位ビッ ト 上位ビッ ト 下位ビッ ト

74 japan.xilinx.com AXI リファレンス ガイド

UG761 (v13.1) 2011 年 3 月 7 日

第 4 章 : ザイリンクス AXI プロ ト コルへの移行

ハイエンドの検証ソリューシ ョ ン 多くのサードパーティ企業が (Cadence Design Systems、 ARM、 Mentor Graphics、 Synopsys など

の各社)、システム レベルの検証およびシステム レベル デザインの性能を調整する機能を持つツー

ルを提供しています。 AXI ベースの大規模システム設計において、可能なかぎり高度な検証および

性能が必要と される場合は、 これらのサードパーティ ツールを使用するこ とを推奨します。

表 4-8 : バイ ト データ タイプ

バイ ト アドレス n

ビッ ト ラベル 0 7

上位ビッ ト /下位ビッ ト 上位ビッ 下位ビッ ト

AXI リファレンス ガイド japan.xilinx.com 75UG761 (v 13.1) 2011 年 3 月 7 日

付録 A

AXI 導入のまとめ

この付録では、 ザイ リ ンクス®が AXI4、 AXI-Lite、 AXI4-Stream インターフェイス プロ ト コル IPに導入したプロ ト コル信号をまとめています。 これらの信号の詳細は、 AXI 仕様 (www.amba.comよ り入手可能) を参照して ください。

AXI4 および AXI4-Lite 信号

グローバル信号 表 A-1 にグローバル AXI 信号を示します。

表 A-1 : グローバル AXI 信号

信号 AXI4 AXI4-Lite

ACLK ク ロ ッ ク ソース。 関連するクロ ッ ク イネーブル信号 ACLKEN が併用される場合があ り ます。

ただし、ACLKEN は業界の便宜上使用される信号であ り、ARM 仕様には明示的に規定されていないこ と

に注意してください。

ARESETN アクティブ Low のグローバル リセッ ト ソース。 IP がリセッ ト ソース (極性を問いません) と して別の

信号を使用できる場合、 この信号はインターフェイス上に表れません。 ザイ リ ンクス IP では通常、 リ

セッ トのアサートから 8 サイクル以内に VALID 出力をディアサートする必要があ り ます。

また、 リセッ ト パルスの幅は、 通常 も遅いクロ ッ クの 16 サイクル以上であるこ とが要求されます。

76 japan.xilinx.com AXI リファレンス ガイド

UG761 (v 13.1) 2011 年 3 月 7 日

付録 A: AXI 導入のまとめ

AXI4 および AXI4-Lite 書き込みアドレス チャネル信号 表 A-2 に書き込みアドレス チャネル信号を示します。

メモ : 読み出し専用のマスターまたはスレーブ インターフェイスは、書き込みアドレス チャネル全

体があ り ません。

表 A-2 : 書き込みアドレス チャネル信号

信号 AXI4 AXI4-Lite

AWID 完全サポート。

マスターは、 ID ビッ トの変化する部分 (存在する場合) のみを出力して、

順序変更可能な ト ランザクシ ョ ンのスレッ ドを表示します。

単一スレッ ドのマスター インターフェイスの場合、 この信号を無視してかまいま

せん。マスターは、マスター ID を構成する定数の部分を出力する必要はあ り ませ

ん。 この部分は AXI インターコネク トによって付加されます。

この信号は存在しま

せん。

AWADDR 完全サポート。

32 ビッ ト幅です。必要に応じてよ り広い幅も使用します。 スレーブのネイティブ アドレス範囲を超える

上位ビッ トはエンドポイン ト スレーブによって無視 (切り捨て) されます。 この結果、 スレーブ内でアド

レスのエイ リ アシングが発生する可能性があ り ます。

メモ : EDK は 32 ビッ ト アドレスのみサポート します。

AWLEN 完全サポート。

サポート対象のバース ト :

• インク リ メンタル バース ト (INCR) の場合、 大 256 ビート

• ラ ップ バース ト (WRAP) の場合、 16 ビート

この信号は存在しま

せん。

AWSIZE 転送幅 8 ~ 256 ビッ トに対応しています。

AWSIZE がネイティブ データ幅よ り狭いバース トの使用は推奨できません。

この信号は存在しま

せん。

AWBURST INCR および WRAP を完全サポート。

FIXED バース トは推奨しません。

FIXED バース トでもプロ ト コルに準拠したハンドシェイ クは確立されますが、

FIXED 転送の影響が、 誤って INCR または未定義の状態に解釈される恐れがある

ためです。

この信号は存在しま

せん。

AWLOCK ザイ リ ンクスのエンドポイン ト IP には、排他的アクセス機能がインプリ メン ト さ

れていません。

インフラス ト ラ クチャ IP は排他的アクセス ビッ ト をシステム全体に転送します。

この信号は存在しま

せん。

AWCACHE 値 0011 の設定を推奨します。

ザイ リ ンクス IP は通常、 ト ランザクシ ョ ンを無視するか (スレーブの場合)、 ノーマル、キャ ッシュ不可、

変更可能、 バッファ リ ング可能のト ランザクシ ョ ンを生成します (マスターの場合)。

インフラス ト ラ クチャ IP はキャッシュ ビッ ト をシステム全体に転送します。

AWPROT 値 000 の設定を推奨します。

ザイ リ ンクス IP は通常、 ト ランザクシ ョ ンを無視するか (スレーブの場合)、 ノーマル、 セキュア、 デー

タ属性のト ランザクシ ョ ンを生成します (マスターの場合)。

インフラス ト ラ クチャ IP は保護ビッ ト をシステム全体に転送します。

AXI リファレンス ガイド japan.xilinx.com 77UG761 (v 13.1) 2011 年 3 月 7 日

AXI4 および AXI4-Lite 信号

AXI4 および AXI4-Lite 書き込みデータ チャネル信号 表 A-3 に書き込みデータ チャネル信号を示します。

メモ : 読み出し専用のマスターまたはスレーブ インターフェイスは、書き込みデータ チャネル全体

を無視します。

AWQOS ザイ リ ンクス エンドポイン ト IP にはインプリ メン ト されていません。

インフラス ト ラ クチャ IP は QoS ビッ ト をシステム全体に転送します。

こ の信号は存在し

ません。

AWREGION ザイ リ ンクス エンドポイン ト スレーブ IP にインプリ メン ト可能です。

マスター IP にはインプリ メン ト されていません。

対応するアドレス デコーダーの範囲設定に基づき、 AXI インターコネク トによっ

て生成されます。

こ の信号は存在し

ません。

AWUSER 通常、 ザイ リ ンクス エンドポイン ト IP にはインプリ メン ト されていません。

インフラス ト ラ クチャ IP はユーザー ビッ ト をシステム全体に転送します。

こ の信号は存在し

ません。

AWVALID 完全サポート。

AWREADY 完全サポート。

表 A-2 : 書き込みアドレス チャネル信号 (続き)

信号 AXI4 AXI4-Lite

表 A-3 : 書き込みデータ チャネル信号

信号 AXI4 AXI4-Lite

WDATA ネイティブ幅 32 ~ 256 ビッ トに対応しています。

今後、 512 ビッ トおよび 1024 ビッ ト幅もサポート される

可能性があ り ます。

32 ビッ ト幅に対応しています。

AXI4-Lite は現在のと ころ 64 ビッ トのネイ

ティブ データ幅をサポート していません。

WSTRB 完全サポート。 スレーブ インターフェイスでは WSTRB を無

視 (すべてのバイ ト を有効と見なす) してもか

まいません。

WLAST 完全サポート。 この信号は存在しません。

WUSER 通常、ザイ リ ンクス エンドポイン ト IP にはインプリ メン

ト されていません。

インフラス ト ラ クチャ IP はユーザー ビッ ト をシステム

全体に転送します。

この信号は存在しません。

WVALID 完全サポート。

WREADY 完全サポート。

78 japan.xilinx.com AXI リファレンス ガイド

UG761 (v 13.1) 2011 年 3 月 7 日

付録 A: AXI 導入のまとめ

AXI4 および AXI4-Lite 書き込み応答チャネル信号 表 A-4 に書き込み応答チャネル信号を示します。

メモ : 読み出し専用のマスターまたはスレーブ インターフェイスは、書き込み応答チャネル全体を

無視します。

AXI4 および AXI4-Lite 読み出しアドレス チャネル信号 表 A-5 に読み出しアドレス チャネル信号を示します。

メモ : 書き込み専用のマスターまたはスレーブ インターフェイスは、読み出しアドレス チャネル全

体を無視します。

表 A-4 : 書き込み応答チャネル信号

信号 AXI4 AXI4-Lite

BID 完全サポート。

詳細は、 AWID を参照してください。

この信号は存在しません。

BRESP 完全サポート。 EXOKAY の値は、仕様には規定されていません。

BUSER 通常、 ザイ リ ンクス エンドポイン ト IP にはインプリ メ

ン ト されていません。

インフラス ト ラ クチャ IP はユーザー ビッ ト をシステム

全体に転送します。

この信号は存在しません。

BVALID 完全サポート。

BREADY 完全サポート。

表 A-5 : 読み出しアドレス チャネル信号

信号 AXI4 AXI4-Lite

ARID 完全サポート。

マスターは、ID ビッ トの変化する部分 (存在する場合) のみを出力

して、順序変更可能な ト ランザクシ ョ ンのスレッ ドを表示します。

単一スレッ ドのマスター インターフェイスの場合、 この信号を無

視してかまいません。マスターは、「マスター ID」 を構成する定数

の部分を出力する必要はあ り ません。この部分は AXI インターコ

ネク トによって付加されます。

この信号は存在しません。

ARADDR 完全サポート。

32 ビッ ト幅です。 必要に応じてよ り広い幅も使用します。 スレーブのネイティブ アドレス範囲を超える

上位ビッ トはエンドポイン ト スレーブによって無視 (切り捨て) されます。 この結果、 スレーブ内でアド

レスのエイ リ アシングが発生する可能性があ り ます。

メモ : EDK は 32 ビッ ト アドレスのみサポート します。

ARLEN INCR および WRAP を完全サポート。

FIXED バース トは推奨しません。FIXED バース トでもプロ ト コル

に準拠したハンドシェイ クは確立されますが、 FIXED 転送による

影響が、 誤って INCR または未定義の状態に解釈される恐れがあ

るためです。

この信号は存在しません。

AXI リファレンス ガイド japan.xilinx.com 79UG761 (v 13.1) 2011 年 3 月 7 日

AXI4 および AXI4-Lite 信号

ARSIZE 転送幅 8 ~ 256 ビッ トに対応しています。

今後、512 ビッ トおよび 1024 ビッ ト幅もサポート される可能性が

あ り ます。 ARSIZE がネイティブ データ幅よ り狭いバース トの使

用は推奨できません。

この信号は存在しません。

ARBURST INCR および WRAP を完全サポート。

FIXED バース トは推奨しません。FIXED バース トでもプロ ト コル

に準拠したハンドシェイ クは確立されますが、 FIXED 転送の影響

が、 誤って INCR または未定義の状態に解釈される恐れがあるた

めです。

この信号は存在しません。

ARLOCK ザイ リ ンクスのエンドポイン ト IP には、排他的アクセス機能がイ

ンプ リ メン ト されていません。

インフラス ト ラ クチャ IP は排他的アクセス ビッ ト をシステム全

体に転送します。

この信号は存在しません。

ARCACHE 値 0011 の設定を推奨します。

ザイ リ ンクス IP は通常、 ト ランザクシ ョ ンを無視するか (スレーブの場合)、 ノーマル、 キャ ッシュ不可、

変更可能、 バッファ リ ング可能のト ランザクシ ョ ンを生成します (マスターの場合)。

インフラス ト ラ クチャ IP はキャッシュ ビッ ト をシステム全体に転送します。

ARPROT 値 000 の設定を推奨します。

ザイ リ ンクス IP は通常、 ト ランザクシ ョ ンを無視するか (スレーブの場合)、 ノーマル、 セキュア、 デー

タ属性のト ランザクシ ョ ンを生成します (マスターの場合)。

インフラス ト ラ クチャ IP は保護ビッ ト をシステム全体に転送します。

ARQOS ザイ リ ンクス エンドポイン ト IP にはインプ リ メン ト されていま

せん。

インフラス ト ラ クチャ IP は QoS ビッ ト をシステム全体に転送し

ます。

この信号は存在しません。

ARREGION ザイ リ ンクス エンドポイン ト スレーブ IP にインプ リ メン ト可能

です。

マスター IP にはインプ リ メン ト されていません。

対応するアドレス デコーダーの範囲設定に基づき、 AXI インター

コネク トによって生成されます。

この信号は存在しません。

ARUSER 通常、ザイ リ ンクス エンドポイン ト IP にはインプリ メン ト されて

いません。

インフラス ト ラ クチャ IP はユーザー ビッ ト をシステム全体に転送

します。

この信号は存在しません。

ARVALID 完全サポート。

ARREADY 完全サポート。

表 A-5 : 読み出しアドレス チャネル信号 (続き)

信号 AXI4 AXI4-Lite

80 japan.xilinx.com AXI リファレンス ガイド

UG761 (v 13.1) 2011 年 3 月 7 日

付録 A: AXI 導入のまとめ

AXI4 および AXI4-Lite 読み出しデータ チャネル信号 表 A-6 に読み出しデータ チャネル信号を示します。

メモ : 書き込み専用のマスターまたはスレーブ インターフェイスは、読み出しデータ チャネル全体

を無視します。

表 A-6 : 読み出しデータ チャネル信号

信号 AXI4 AXI4-Lite

RID 完全サポート。

詳細は、 ARID を参照してください。

この信号は存在しません。

RDATA ネイティブ幅 32 ~ 256 ビッ トに対応しています。 32 ビッ ト幅に対応しています。

AXI4-Lite は現在のと ころ 64 ビッ トのネイ

ティブ データ幅をサポート していません。

RRESP 完全サポート。 EXOKAY の値は、仕様には規定されていません。

RLAST 完全サポート。 この信号は存在しません。

RUSER 通常、 ザイ リ ンクス エンドポイン ト IP にはインプ リ メ

ン ト されていません。

インフラス ト ラ クチャ IP はユーザー ビッ ト をシステム

全体に転送します。

この信号は存在しません。

RVALID 完全サポート。

RREADY 完全サポート。

AXI リファレンス ガイド japan.xilinx.com 81UG761 (v 13.1) 2011 年 3 月 7 日

AXI4-Stream 信号のまとめ

AXI4-Stream 信号のまとめ AXI4-Stream 信号の一覧を表 A-7 に示します。

表 A-7 : AXI4-Stream 信号のまとめ

信号 オプシ ョ ンデフォルト (全ビッ ト )

内容

TVALID 必須 N/A 変更なし

TREADY オプシ ョ ン 1 変更なし

TDATA オプシ ョ ン 0 変更なし

ザイ リ ンクス AXI IP における規則 : 8 ~ 4096 ビッ ト幅までは、 ザイ リ ンクス AXI IP が使用します (テス ト境界の

確立)。

TSTRB オプシ ョ ン TKEEP と同じ、

それ以外

の場合は 1

変更なし

通常、 TSTRB はスパース ス ト リームのエンコードに使用します。 TSTRB は、 残

余パケッ トのエンコードだけを目的と して使用すべきではあ り ません。

TKEEP オプシ ョ ン 1 ザイ リ ンクス IP では、ヌル バイ トの利用をパケッ ト化されたス ト リームの末尾に

発生する残余バイ トのエンコードに限定しています。

ザイ リ ンクスのエンドポイン ト IP では、ス ト リーム中の先頭または途中のヌル バイ トに TKEEP を使用しません。

TLAST オプシ ョ ン 0 パケッ トの 終データ ビート を示します。

TLAST を省略した場合、 連続したパケッ ト化されていないス ト リームと見なされ

ます。

TID オプシ ョ ン 0 変更なし

ザイ リ ンクス AXI IP における規則 : 1 ~ 32 ビッ ト幅のみを、ザイ リ ンクス AXI IP が使用します (テス ト境界の確立)。

TDEST オプシ ョ ン 0 変更なし

ザイ リ ンクス AXI IP における規則 : 1 ~ 32 ビッ ト幅のみを、ザイ リ ンクス AXI IP が使用します (テス ト境界の確立)。

TUSER オプシ ョ ン 0 変更なし

ザイ リ ンクス AXI IP における規則 : 1 ~ 4096 ビッ ト幅のみを、 ザイ リ ンクス AXI IP が使用します (テス ト境界の

確立)。

82 japan.xilinx.com AXI リファレンス ガイド

UG761 (v 13.1) 2011 年 3 月 7 日

付録 A: AXI 導入のまとめ

AXI リファレンス ガイド japan.xilinx.com 83UG761 (v 13.1) 2011 年 3 月 7 日

付録 B

AXI の用語

こ こでは、AXI 固有の略語、用語および定義の一覧と共に、これらの用語が使用される IP コアの種

類を示します。

表 B-1 : AXI の用語

用語 コアの種類 内容 適用対象

AXI 汎用 インプ リ メン ト される AXI プロ ト コル イン

ターフェイス全般を指す一般的な用語です。

一般的な説明。

AXI4 メモ リマップ方式の

ブロ ッ ク転送。

大 256 データ ビート をバース ト転送する、

アドレス指定のインターフェイス。

エンベデッ ド コアおよびメモ リ コア。

例 : MIG、ブロ ッ ク RAM、EDK、

PCIe ブリ ッジ、 FIFO

AXI4-Lite 制御レジスタ向けの

サブセッ ト。

32 ビッ ト幅のデータを転送する メモ リマッ

プ方式の軽量インターフェイス。 転送できる

データは一度に 1 ビートのみです。

管理レジスタ。 例 : 割り込みコン

ト ローラー、UART Lite、IIC バス

インターフェイス

AXI4-Stream データ ス ト リーミ ング

向けのサブセッ ト

単一書き込みチャネル モデルの単方向

リ ンク。

バース ト長に制限があ り ません。

DSP、ビデオ、通信アプリ ケーシ ョ

ンに使用されます。

インターフェ

イス

AXI4

AXI4-Lite

AXI4-Stream

IP コア機能を外部に提供するための 1 つ以

上のチャネルの集合。 マスターをスレーブに

接続します。

1 つの IP が複数のインターフェイスを持つ

場合もあ り ます。

すべて

チャネル

AXI4

AXI4-Lite

AXI4-Stream

VALID 信号と関連付けられた、 AXI 信号の

独立した集合。

すべて

バス 汎用 複数ビッ トからなる信号。

(インターフェイスまたはチャネルとは異な

り ます。 )

すべて

84 japan.xilinx.com AXI リファレンス ガイド

UG761 (v 13.1) 2011 年 3 月 7 日

付録 B: AXI の用語

ト ランザク

シ ョ ン

AXI4-Stream チャネルを介して実行される完結した通信

動作で、1 つ以上の転送から構成されます。完

結した動作です。

DSP、ビデオ、通信アプリ ケーシ ョ

ンに使用されます。

AXI4

AXI4-Lite

アドレス、 データ、 応答の各チャネルを介し

た、互いに関連付けられた読み出し /書き込み

通信動作すべての集合で、 1 つ以上の転送か

ら構成されます。 完結した読み出しまたは書

き込み要求です。

エンベデッ ド コアおよびメモ リ コア。

管理レジスタ。

転送

AXI4

AXI4-Lite

AXI4-Stream

VALID 信号のハンドシェイ クによって識別

する、 情報を伝達する 1 つのクロ ッ ク サイ

クルです。 データ ビート。

すべて

バース ト

AXI4

AXI4-Lite

AXI4-Stream

複数の転送から構成される ト ランザクシ ョン。 すべて

マスター

AXI4

AXI4-Lite

AXI4-Stream

AXI ト ランザクシ ョ ンを生成してスレーブ IP へと接続されたワイヤに発信する、 IP またはデバイス (または IP 上の複数のインター

フェイスのうちの 1 つ)。

すべて

スレーブ

AXI4

AXI4-Lite

AXI4-Stream

マスター IP へと接続されたワイヤから AXIト ランザクシ ョ ンを受信して応答する、IP またはデバイス (または IP 上の複数のインター

フェイスのうちの 1 つ)。

すべて

マスター インターフェ

イス (汎用)

AXI4

AXI4-Lite

AXI4-Stream

発信 AXI ト ランザクシ ョ ンを生成して AXI 転送の開始側 (送信元) となる IP またはモ

ジュールのインターフェイス。

すべて

スレーブ インターフェ

イス (汎用)

AXI4

AXI4-Lite

AXI4-Stream

AXI 転送の受信側 (宛先) となって着信 AXI ト ランザクシ ョ ンを受信する IP またはモ

ジュールのインターフェイス。

すべて

SI AXI4

AXI4-Lite

AXI インターコネク トのスレーブ インター

フェイス : 接続されたすべてのマスター IP からの着信 AXI ト ランザクシ ョ ンを受信す

る、 ベクター化された AXI スレーブ イン

ターフェイス。

EDK

MI AXI4

AXI4-Lite

AXI インターコネク トのマスター インター

フェイス : 接続されたすべてのスレーブ IP への発信 AXI ト ランザクシ ョ ンを生成する、

ベクター化された AXI マスター インター

フェイス。

EDK

表 B-1 : AXI の用語 (続き)

用語 コアの種類 内容 適用対象

AXI リファレンス ガイド japan.xilinx.com 85UG761 (v 13.1) 2011 年 3 月 7 日

SI スロ ッ ト AXI4

AXI4-Lite

スレーブ インターフェイス スロ ッ ト : 1 つの

マスター IP に接続するインターコネク トの

スレーブ インターフェイス ベクター信号の

1 スライス。

EDK

MI スロ ッ ト AXI4

AXI4-Lite

マスター インターフェイス スロ ッ ト : 1 つの

マスター インターフェイス スレーブ IP に接

続するインターコネク トのマスター イン

ターフェイス ベクター信号の 1 スライス。

EDK

SI 側 AXI4

AXI4-Lite

インターコネク トの SI 側に近いモジュール

インターフェイスを指します。

EDK

MI 側 AXI4

AXI4-Lite

インターコネク トの MI 側に近いモジュール

インターフェイスを指します。

EDK

アップ

サイザー

AXI4

AXI4-Lite

AXI4-Stream

スレーブ インターフェイスからマスター イ

ンターフェイスの方向にデータが移動する場

合に (書き込み/読み出しの方向に関係なく )、データ パス幅を広くする変換機能。

すべて

ダウン

サイザー

AXI4

AXI4-Lite

AXI4-Stream

スレーブ インターフェイスからマスター インターフェイスにデータが移動する場合に

(書き込み/読み出しの方向に関係なく )、 デー

タ パス幅を狭くする変換機能。

すべて

SAMD ト ポロジ 共有アドレス複数データ EDK

ク ロスバー ト ポロジ AXI インターコネク トの中心に位置し、さま

ざまな SI スロ ッ トおよび MI スロ ッ ト間の

アドレス、 データ、 応答の各チャネルの転送

をルーティングするモジュール。

すべて

表 B-1 : AXI の用語 (続き)

用語 コアの種類 内容 適用対象

86 japan.xilinx.com AXI リファレンス ガイド

UG761 (v 13.1) 2011 年 3 月 7 日

付録 B: AXI の用語