110
AXI リファレンス ガイド UG761 (v13.3) 2011 10 19

AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

[Guide Subtitle] (オプシ ョ ン)

UG761 (v13.3) 2011 年 10 月 19 日 (オプシ ョ ン)

AXI リファレンス ガイド

UG761 (v13.3) 2011 年 10 月 19 日

Page 2: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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.

© Copyright 2011 Xilinx, Inc. XILINX, the Xilinx logo, Virtex, Spartan, Kintex, Artix, ISE, and other designated brandsincluded herein are trademarks of Xilinx in the United States and other countries. All other trademarks are the property of theirrespective 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.3) を翻訳したもので、 内容に相違が生じる場合には原文を優先します。

資料によっては英語版の更新に対応していないものがあ り ます。

日本語版は参考用と してご使用の上、 新情報につきましては、 必ず 新英語版をご参照ください。

この資料に関するフ ィードバッ クおよびリ ンクなどの問題につきましては、 [email protected] までお知らせく

ださい。 いただきましたご意見を参考に早急に対応させていただきます。 なお、 このメール アドレスへのお問い合わせは受け

付けており ません。 あらかじめご了承ください。

改訂履歴

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

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

2010/09/21 12.4 ザイ リ ンクスによる初版リ リース。

2011/03/01 13.1 ザイ リ ンクスによる第 2 版リ リース。 AXI インターコネク トの新機能を追加。

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

2011/03/07 13.1_web リ ンク切れを修正。

Page 3: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

2011/07/06 13.2 リ リース変更 :

• AXI インターコネク ト IP の機能と使用例を改訂。

• 適化に関する章を追加。

2011/10/19 13.3 リ リース更新 :

• FIFO の占有状態に応じて割り込みバース ト転送が可能になるまで AWVALID/ARVALID信号のアサート を遅延させるオプシ ョ ンに関する説明を、 15 ページの 「AXI インター

コネク ト コアの特長」 に追加。

• CORE Generator 使用に関連する制約を、 18 ページの 「AXI インターコネク ト コアの

制約」 に追加。

• スループッ ト向上の手段と して BRMA FIFO のアサート遅延オプシ ョ ンを使用する場

合の影響を、 74 ページの表 5-1 に追加。

• スループッ ト向上の手段と して BRMA FIFO のアサート遅延オプシ ョ ンを使用する場

合の影響を、 78 ページの 「スループッ ト /帯域幅 適化のガイ ド ライン」 に追加。

• 『ACI MPMC アプリ ケーシ ョ ン ノート (XAPP739)』 への参照を、 81 ページの 「AXI4ベースのマルチポート メモ リ コン ト ローラー : AXI4 システム 適化の例」 に追加。

• FIFO の占有状態に応じて割り込みバース ト転送が可能になるまで AWVALID/ARVALID信号のアサー ト を遅延させる AXI イ ン ターコネク ト オプシ ョ ンに関する説明を、

84 ページの 「AXI インターコネク ト コンフ ィギュレーシ ョ ンの詳細設定」 に追加。

• AXI 設計への BSB 適用に関する説明を、 92 ページの 「ベース システム ビルダーの出

力結果を解析および 適化せずに適用する」 に追加。

• 『AXI MPMC アプリ ケーシ ョ ン ノート (XAPP739)』 への参照を、付録 C 「その他の資

料」 に追加。

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

Page 4: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

Page 5: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

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

はじめに. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

AXI の概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

AXI の動作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

IP の相互運用性. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

AXI によって置き換えられるプロ ト コル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

ターゲッ ト リ ファレンス デザイン. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

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

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

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

第 3 章 : ザイリンクス FPGA に導入された AXI 機能

メモ リマップ方式 IP の機能の導入とサポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

AXI4-Stream の導入とサポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

DSP と ワイヤレス IPAXI 機能の導入 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

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

概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

AXI-To-PLB ブリ ッジ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

Local-Link から AXI4-Stream への移行. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

IP 移行における System Generator の使用法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

FSL (高速シンプレッ クス リ ンク ) から AXI4-Stream への移行 . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

DSP IP で AXI4-Stream を使用するための HDL デザインの移行 . . . . . . . . . . . . . . . . . . . . . . . . . 65

AXI 移行におけるソフ ト ウェア ツールに関する考慮事項 (エンディアンの反転) . . . . . . . . . . . . . 68

ビッグ エンディアンから リ トル エンディアンへの移行時の一般的ガイ ド ラ イン . . . . . . . . . . . . . 68

データ タイプとエンディアンネス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

ハイエンドの検証ソ リ ューシ ョ ン. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

第 5 章 : AXI システムの最適化の検討事項とヒン ト

AXI システムの 適化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

AXI4 ベースのマルチポート メモ リ コン ト ローラー : AXI4 システム 適化の例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

AXI システム設計結果の低品質化を招く一般的な ミ ス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

付録 A : AXI 導入のまとめ

AXI4 および AXI4-Lite 信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

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

目次

Page 6: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

付録 B : AXI の用語

付録 C : その他の資料

ザイ リ ンクス資料 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

Page 7: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

第 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 で、これらのインターフェイスを導入しました。

Page 8: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 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 インターフェイスの動作について概要を説明します。3 ページの「はじめに」 に ARM仕様を入手する手順を示しています。 AXI の動作の詳細は、 これらの仕様を参照してください。

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

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

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

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

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

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

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

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

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

• 書き込み応答チャネル

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

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

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

ト されます。

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

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

Page 9: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

AXI の動作

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

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

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

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

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

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

AXI4 プロ ト コルに記述されています。 機能の例と して、 バース ト以外にもデータのアップサイジ

ングとダウンサイジング、 Multiple Outstanding (複数の未処理) アドレス、 順不同ト ランザクシ ョ

ン処理などがあ り ます。

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

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

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

図 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

Page 10: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 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/support/documentation/axi_ip_documentation.htm および 43 ページ

の 「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 が理論上はデータを交換できたと しても、

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

可能です。

Page 11: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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 の間のデータ転送を可能にしたりできます。

Page 12: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

AXI によって置き換えられるプロ ト コル

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

ルをま とめたものです。

ターゲッ ト リファレンス デザイン

このガイ ドの別の章では、 ザイ リ ンクスのツールおよび IP の AXI への対応について、 よ り詳細に

解説しています。AXI への移行をサポートするために、 ザイ リ ンクス ド メ イン特化プラ ッ ト フォー

ム ソ リ ューシ ョ ンの基盤を成す Spartan-6 および Virtex-6 のターゲッ ト リ ファレンス デザインも

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 プロ ト コルへの移行」 を参照して ください。

Page 13: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

第 2 章

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

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

する方法 (Xilinx Platform Studio または System Generator for DSP を使用)、および個々の AXI IPを実装する方法 (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 の動作するエンベデッ ド デザインを作成します。 作成した基本システムは XilinxPlatform Studio (XPS) のメ イン ビューおよび ISE® Design Suite でカスタマイズします。ザイ

リ ンクスでは、 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

Page 14: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 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 を参照してください。

System Generator : DSP Edition の使用法

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

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

Page 15: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

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

る IP でサポート されます。

System Generator による AXI4 のサポート

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

EDK プロセッサ ブロ ッ クは、 System Generator で作成したハード ウ ェア回路とザイ リ ン ク ス

MicroBlaze™ プロセ ッサの接続を可能にし ます。 プロセ ッ サへの接続オプシ ョ ン と し ては、

PLBv4.6 または AXI4 インターフェイスのいずれかを使用できます。

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

を提供するため、 System Generator のフローを使用する際に、 AXI4 の専門用語を熟知している必

要はあ り ません。

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

イスへのメモ リの接続は EDK プロセッサ ブロ ッ クによって管理されます。

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

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

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

Page 16: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 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 が虚数部分と実数部分に分けて表示されています。

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

Page 17: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

注記 : マルチチャネル 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 カタ ログには

「Production」 バージ ョ ンの IP がすべて表示されます。 図 2-4 に CORE Generator の IP カタログ

を示します。

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

Page 18: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

14 ページの図 2-5 は、PlanAhead を使用した場合の IP カタログの [AXI4] 列 と、 IP の詳細情報パ

ネルに表示された、 サポート対象の AXI4 インターフェイスです。

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

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

Page 19: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

ザイリンクス 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/support/documentation/axi_ip_documentation.htm

このリ ンクは、 付録 C 「その他の資料」 にも記載されています。

ザイリンクス AXI インターコネク ト コア IPAXI インターコネク ト コア 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 はザイ リ ン ク ス エンベデッ ド開発ツールキッ ト (EDK) および

Project Navigator に含まれる、 暗号化されていないラ イセンス不要 (無償) の pcore と して提供さ

れ、 CORE Generator® ソフ ト ウェアを介してエンベデッ ド以外のデザインに使用できます。

詳細は、 『AXI インターコネク ト IP データシート 』 (DS768) を参照して ください。 この リ ンクは、

付録 C 「その他の資料」 にも記載されています。

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

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

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

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

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

ザクシ ョ ンを分割する変換を加えます。

• 複数のアドレス デコード範囲を持つスレーブ デバイスで使用するための REGION 出力を

生成します。

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

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

Page 20: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

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

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

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

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

• AXI4-Lite : 32 ビッ ト

• アドレス幅 32 ビッ ト

• コアのスレーブ インターフェイス (SI) は、 1 ~ 16 SI スロ ッ ト を含むよ うに構成でき、接続さ

れた 大 16 個のマスター デバイスからの ト ランザクシ ョ ンを受け入れます。 マスター イン

ターフェイス (MI) は、1 ~ 16 MI スロ ッ ト を含むよ うに構成でき、接続された 大 16 個のス

レーブ デバイスへの ト ランザクシ ョ ンを発行します。

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

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

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

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

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

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

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

注記 : CORE Generator などエンベデッ ド以外のシステムで使用する場合、AXI インターコネク ト コアは複数のマスターを 1 つのスレーブに接続します。その代表的な例がメモリ コン ト ローラーです。

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

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

- 内部クロスバーは、 ネイティブ データ幅が 32、 64、 128、 256、 512、 1024 ビッ トに

なるよ うなコンフ ィギュレーシ ョ ンが可能です。

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

タ幅を変換します。

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

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

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

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

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

シ ョ ンに分割できます。

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

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

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

能です。

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

用し、 レイテンシが発生)。

• AXI インターコネク ト コアは、 SI および MI の各スロ ッ トに対応するクロ ッ ク入力に再

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

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

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

組み合わせに対して接続可能です。

Page 21: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

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

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

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

ません。

• AXI インターコネク ト コアは、複数のワードにアクセスする ト ランザクシ ョ ンなど、AXI4マスターからの不正な AXI4-Lite ト ランザクシ ョ ンを検出します。 このと きマスターに対

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

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

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

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

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

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

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

に分割します。

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

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

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

ます。

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

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

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

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

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

• 信号のアサート遅延機能 (オプシ ョ ン)

- W- チャネル FIFO にバース ト データがすべて格納されるまで AWVALID のアサート

を遅延させます。

- R- チャネル FIFO にバース ト長全体を格納できる十分な空きが生じるまで ARVALIDのアサート を遅延させます。

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

• 共有アドレス複数データ (SAMD) ク ロスバー

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

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

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

に実行できます。

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

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

- 書き込みアドレスの共有アービタ と読み出しアドレスの共有アービタを 1 つずつ含

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

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

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

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

Page 22: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

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

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

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

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

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

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

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

度を設定できます。

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

設定できます。

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

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

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

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

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

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

されます。

• SI スロ ッ トのう ち受け付け限度に達したもの、発行限度に達した MI スロ ッ ト を宛先と し

ているもの、 またはデッ ド ロ ッ クのおそれがある方法で MI スロ ッ トにアクセスしよ う と

しているものは、 一時的にアービ ト レーシ ョ ンの対象から外されます。 これによって、 ほ

かの SI スロ ッ トがアービ ト レーシ ョ ン可能になり ます。

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

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

な り ます。

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

対して DECERR 応答を返します。

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

AXI インターコネク ト コアの制約

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

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

ロ ッ ク された ト ランザクシ ョ ンは、 ロ ッ クを解除された ト ランザクシ ョ ンに変換された うえ

で MI によって伝搬されます。

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

ターは、 書き込みインターリーブの深さが 1 のスレーブに接続するよ うに設定する必要があ

り ます。

• AXI4 の QoS 信号は、 アービ ト レーシ ョ ンの優先順位に影響を与えません。 QoS 信号は、 SIから MI に伝搬されます。

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

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

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

していません。

Page 23: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

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

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

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

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

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

ていません。

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

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

きません。

注記 : ザイ リ ンクス AXI4-Stream インターフェイスは ACLKEN 信号をサポート しています。

• AXI インターコネク ト コアを CORE Generator のツール フローで使用する場合、 MI ポート

を 1 つだけ備えたコアしか構成できないため、接続されるスレーブ デバイスは 1 つとなり、ア

ドレスのデコードは実行されません。

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

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

AXI インターコネク ト コアは、 SI、 MI と、 その間を結ぶ AXI チャネル パスを構成するファンク

シ ョ ン ユニッ トから成り ます。 SI は、 接続されたマスター デバイスからの書き込みおよび読み出

し ト ランザクシ ョ ン要求を受け入れます。 MI はスレーブ デバイスに対して ト ランザクシ ョ ンを発

行します。 中央に位置するクロスバーは、 SI と MI に接続されたさまざまなデバイス間のすべての

AXI チャネルに ト ラフ ィ ッ クを振り分けます。

AXI インターコネク ト コアには、 ク ロスバーと各インターフェイス間に配置され、 さまざまな変

換およびス ト レージ機能を果たすその他の機能単位も含まれます。 ク ロスバーは、 SI 関連のファン

クシ ョ ン ユニッ ト (SI 域) と MI 関連のファンクシ ョ ン ユニッ ト (MI 域) の中央で、 AXI インター

コネク ト コアを 2 つに分割しています。

次に、 AXI インターコネク ト コアの使用モデルについて説明します。

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

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

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

いて説明します。

図 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

Page 24: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

• パス スルー

• 変換のみ

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

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

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

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

パス スルー

AXI インターコネク ト コアに接続されるデバイスがマスターとスレーブのそれぞれ 1 つだけで、オ

プシ ョ ンの変換機能やパイプライン処理を実行しない場合、スレーブ インターフェイス とマスター

インターフェイス間のすべてのパスはワイヤによる直接接続になり、レイテンシを発生せず、ロジッ

ク リ ソースも消費しません。

ただし、 ARESET_OUT_N 出力に接続しているマスターまたはスレーブ デバイスの場合、 AXI イン

ターコネク ト コアは、 INTERCONNECT_ARESETN 入力をスレーブおよびマスター インターフェイ

スそれぞれのクロ ッ ク ド メ インに再同期し続けます。 これによ り、少数のフ リ ップフロ ップが消費

されます。

図 2-7 はパス スルーの使用例です。

変換のみ

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

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

• データ幅変換

• ク ロ ッ ク レート変換

• AXI4-Lite スレーブ適合

• AXI-3 スレーブ適合

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

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

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

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

Master 0 Slave 0

Interconnect

Page 25: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

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

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

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

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

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

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

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

このコンフ ィギュレーシ ョ ンでも、データ幅やクロ ッ ク レート などの変換機能は動作します。図 2-9は N 対 1 の AXI インターコネク トの使用例を示したものです。

.

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

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

X12049

Master 0 Slave 0

Interconnect

Conversionand/or

Pipelining

X12050

Master 0

Master 1

Slave 0

Interconnect

Arb

iter

Page 26: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

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

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

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

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

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

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

N 対 M の AXI インターコネク トでは、 SAMD (共有アドレス複数データ) ト ポロジを取るこ とが

できます。 これは、 図 2-11 に示すよ うにスパース データ ク ロスバー接続から構成され、 単一ス

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

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

X12051

Master 0

Slave 0

Slave 1

Interconnect

Dec

oder

/Rou

ter

図 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

Page 27: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

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

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

レーシ ョ ンに従い、 各 SI スロ ッ ト (左側の AXI マスターに接続) を、 アクセス可能なすべての MIスロ ッ ト (右側の AXI スレーブに接続) に接続します。 複数のソースが異なる宛先に対してデータ

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

同時に実行できます。

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

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

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

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

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

データが送られます。

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

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

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

読み出し ト ランザクシ ョ ン要求が書き込み要求よ り も常に優先されます。 次に要求を送信したマス

ターのいずれかをアービタが選択します。 これによって、宛先のスレーブ デバイスに対する書き込

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

次の要求が選択され処理されます。 この共有アクセス モードでは、 AXI インターコネク トのク ロ

スバー モジュールをインプ リ メン トするために必要な リ ソースが 小限に抑えられます。

図 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

Page 28: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

幅変換

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

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

続された 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 インターコネク ト コアのデータ幅は、 メモ リ コン ト ローラーなど、 システム デザイン

内で もスループッ トが重要となるペリ フェラルの幅に合わせます。

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

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

Page 29: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

ダウンサイジング

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

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

際には決して発生しない場合であっても ) 実装されています。

SI 側のデータ幅が MI 側よ り も広く、かつト ランザクシ ョ ンの転送サイズも MI 側 のデータ幅よ り

広い場合、 ダウンサイジングが実行され、 MI 側に発行される ト ランザクシ ョ ンのデータ ビート数

は分割数に応じて倍増します。

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

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

AXI インターコネク ト コアは (SI 上の) 各出力データ ビー ト の RRESP を、 結合した入力データ

ビー ト 内で発生し たワース ト エラー条件に設定し ます。 その場合の優先順位は高い方から

DECERR、 SLVERR、 OKAY、 EXOKAY です。

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

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

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

アップサイジング

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

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

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

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

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

AXI インターコネク ト コアは、各入力データ ビートの RRESP を (SI 上の) 各出力データ ビートの

RRESP に複製します。

クロック変換

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

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

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

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

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

レート を増減します。

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

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

てに適用可能です。

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

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

あ り ます。AXI インターコネク ト コアは、MI および SI の各スロ ッ トのクロ ッ ク レート を AXI インターコネク トのネイティブ ク ロ ッ ク レートに自動的に適合させます。

Page 30: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

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

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

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

パイプライン処理

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

ループッ トが向上します。 このよ うな状況は通常、データ幅またはクロ ッ ク レートの変換によって

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

と異なる場合に見られます。

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

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

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

善するこ と もできます。

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

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

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

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

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

データ パス FIFO

一部の状況下では、 データ バース ト をバッファ リ ングするこ とで AXI インターコネク トのスルー

プッ トが向上します。 このよ う な状況は通常、 データ幅またはク ロ ッ ク レートの変換によって SIまたは MI スロ ッ トのデータ レートが AXI インターコネク ト コアのネイティブ データ レート と

異なる場合に見られます。 レート変換の種々の組み合わせに対応するために、 オプシ ョ ンと して次

のよ うな位置にデータ バース ト バッファーを挿入できます。

• SI 側のデータ幅またはクロ ッ ク変換の後、 クロスバー モジュールの前の SI 側書き込みデータ

FIFO

• ク ロスバー モジュールの後、 MI 側のデータ幅、 クロ ッ クまたはプロ ト コル変換の前の MI 側書き込みデータ FIFO

• ク ロスバー モジュールの MI 側の前、 MI 側のデータ幅、 クロ ッ クまたはプロ ト コル変換の後

の MI 側読み出しデータ FIFO

• ク ロスバー モジュールの SI 側の後、 SI 側のデータ幅またはクロ ッ ク変換の前の SI 側読み出

しデータ FIFO

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

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

コネク ト IP データシート 』 (DS768) を参照して ください。 この リ ンクは、 付録 C 「その他の資料」

にも記載されています。

Page 31: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

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 インターコネク ト コア モジュールのスレーブ インターフェイス スロ ッ トに接続されます (27 ページの図 2-14 参照)。

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

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

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

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

ます。

図 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

Page 32: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

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

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

AXI To AXI コネクタの詳細および必要な信号やパラ メーターについては、『AXI To AXI ConnectorIP データシート 』 (DS803) を参照してください。 このリ ンクは、 付録 C 「その他の資料」 にも記載

されています。

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

EDK の pcore と して入手できない AXI マスターまたはスレーブ IP モジュール (純粋な HDL モジュールなど) を EDK のサブモジュール内で AXI インターコネク ト コアに接続する必要がある場

合は、 これらのユーティ リ ティ コアを使用します。 AXI マスターまたはスレーブ モジュールをデ

ザインの 上位に配置したまま、このユーティ リ ティ pcore を使用して AXI 信号を EDK のサブシ

ステムに接続します。

機能

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

す。

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

トがあ り ます。

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

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

きます。

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

図 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

Page 33: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

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

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

す。 詳細は、 次のウェブサイ ト を参照して ください。 http://japan.xilinx.com/support/documentation/axi_ip_documentation.htm

このリ ンクは、 付録 C 「その他の資料」 にも記載されています。

図 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

Page 34: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

Centralized DMA (セン ト ラル DMA)ザイ リ ンクスでは、AXI 対応のセン ト ラル DMA を提供しています。 このコアは、既存の PLBv4.6セン ト ラル DMA を、機能と性能が強化された AXI4 バージ ョ ンに置き換えます。図 2-17 に、AXI(AXI4 と AXI4-Lite) セン ト ラル DMA を導入した代表的なエンベデッ ド システム アーキテクチャ

を示します。

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

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

図 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

Page 35: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

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 ビッ ト )

Page 36: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

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

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

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

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

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

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

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

法です。

33 ページの図 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 ビッ ト幅のいずれかに設定できます。 幅はデータ読

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

Page 37: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

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

図 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

Å£Figure Top x-ref 3Å¢

図 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

Page 38: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

33 ページの図 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 つのディ スク リプターをフェ ッチおよびキューイングできます。 この機能は、 メ イン データ バス上

の広帯域幅によるデータ転送を可能と します。

Page 39: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

DMA の AXI4 インターフェイス

ザイ リ ンクスによる DMA のインプリ メンテーシ ョ ンでは、広範囲にわたり AXI4 の機能を適用し

ています。 表 2-2 は、 AXI VDMA 機能で使用される 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 転送情報を受信し、 関連する転送ディ ス

ク リプターのデータを更新した うえで、 システム メモ リに

書き戻します。 ディ スク リプターの更新にはスキャ ッ ター

ギャザー インターフェイスを使用します。

Page 40: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

ビデオ DMAAXI4 プロ ト コルによ るビデオ DMA (VDMA) は、 ビデオ アプ リ ケーシ ョ ンを広帯域化する ソ

リ ューシ ョ ンです。 イーサネッ ト DMA ソ リ ューシ ョ ンと同様の方法でインプリ メン ト されます。

図 2-20 は、 AXI4 VDMA の上位ブロッ ク図です。

37 ページの図 2-21 は、 AXI VDMA の代表的なシステム アーキテクチャです。

図 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

Page 41: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

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 がデータのアップサイジングまたはダウンサイジングを実

行し、 メモ リマップ方式インターフェイス側のバース トにバス幅全体を使用できるよ うにします。

図 2-21 : AXI VDMA およびビデオ IP の代表的使用例

Page 42: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

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、 256DMA のメモ リマップ方式インターフェイス側から、メ

イン ス ト リーム出力側へのデータ転送動作時に、 ペイ

ロード データを転送します。

データ MM 書き込み AXI4 書き込み

マスター 32、 64、

128、 256DMA のデータ ス ト リーム入力インターフェイス側か

ら、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書き込みインターフェイスを介して、 メモ リマップ方

式のシステムに転送します。

Page 43: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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

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 インターフェイス と同じネイティブ データ幅を持つマスターに接

続するこ とで、 軽量なインターフェイス と して構成できます。

図 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

Page 44: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

AXI4 ブリ ッジには、 次のよ うな特徴があ り ます。

• 16 ビート以下の転送の場合は、 AXI4 のインク リ メンタル (INCR) コマンドを MCB のコマン

ドに 1 対 1 で変換します。

• 16 ビート を超える AXI4 転送は、 大 16 ビートの ト ランザクシ ョ ンに分割して MCB プロ ト

コルによって送信します。

これによって、 マルチポート システムにおける性能とレイテンシのバランスを取る こ とができま

す。MCB インターフェイスは WRAP をネイティブ コマンド と してサポート していないため、AXI4の WRAP コマンドは、 MCB インターフェイス上で処理できるよ うに 2 つの MCB ト ランザクシ ョ

ンに分割可能です。

axi_s6_ddrx コアと CORE Generator による Spartan-6 AXI MIG コアは、 大 6 ポート (MCB ポー

ト コンフ ィギュレーシ ョ ンによって異なる) を用いた 32、 64、 128 ビッ ト幅のインターフェイスな

ど、MCB のネイティブ ポート コンフ ィギュレーシ ョ ンをすべてサポート します。図 2-23 は、AXISpartan-6 メモ リ ソ リ ューシ ョ ンのブロ ッ ク図です。

メモ リ制御の詳細は、 次のウェブサイ トに掲載されたメモリに関する資料を参照してください。

http://japan.xilinx.com/products/technology/memory-solutions/index.htm

図 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

Page 45: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

第 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、 512、 1024 ビッ トのいずれかに定義できます。

ただし、 AXI4-Lite でサポート されるデータ幅は 32 ビッ トのみです。

幅の狭い AXI4 バース トにも対応していますが、推奨されていません。狭いバース トはシステム

性能を低下させ、 システム規模を増大させる可能性があるためです。

幅が異なるザイ リ ンクス IP 間で通信する必要がある場合、 AXI インターコネク トがデータ幅変

換の機能を提供します。

読み出し /書き込み専用 読み出し /書き込み、 読み出し専用、 書き込み専用のインターフェイスを使用できます。

AXI インターコネク ト をはじめとする多くの IP では、 インターフェイスを読み出し専用または

書き込み専用にする と、 これに合わせてロジッ クが 適化されます。

Page 46: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 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 のサポート

Page 47: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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 オプシ ョ ン

Page 48: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 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 に情報を格納

する場合、データの非ア ト ミ ッ ク ビッ トに対しては、 (データ幅にかかわらず) ア ト ミ ッ クな単位が

完成するまで連結操作を続けます。 ア ト ミ ッ クな単位が完成した時点で、 必要であればパディング

ビッ ト を加えてバイ ト境界に揃えます。

Page 49: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

AXI4-Stream の導入とサポート

実数スカラー データの例

スカラー値のス ト リームの場合、 オプシ ョ ンの TLAST 信号には 2 つの使用方法があ り ます。 いず

れも、 等し く有効な方法です。 例を挙げて説明します。

次の表に示す特性を持った数値データのス ト リームを考えます。

このデータは、 図 3-1 に示すよ うな AXI4-Stream と して表されます。

スカラー値は、 パケッ ト化されていないデータ と見なすこ とができます。 この場合、 TLAST はアク

ティブ Low に駆動してかまいません (TLASTA)。 また TLAST はオプシ ョ ン信号であるため、 チャ

ネルから完全に削除するこ と もできます。

論理タイプ 符号なし実数

論理ベクター長 1 (たとえば、 スカラー値)

物理基本単位 12 ビッ ト固定小数点

物理基本単位格納幅 16 ビッ ト

物理 TDATA 幅 16 ビッ ト

図 3-1 : AXI4-Stream による実数スカラー ( 符号なし ) データの例

X12056

Page 50: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 3 章 : ザイリンクス FPGA に導入された AXI 機能

一方、 スカラー値を長さ 1 のベクターである と見なすこ と もできます。 この場合は、 TLAST をアク

テ ィブ High に駆動する必要があ り ます (TLASTB)。 符号なしであるため、 使用しないパディ ング

ビッ トは 0 に駆動されています (ゼロ拡張)。

符号付きのデータでは、図 3-2 に示すよ うに使用しないパディング ビッ ト を符号ビッ ト と同じ値で

駆動します (符号拡張)。

複素スカラー データの例

次の表に示す特性を持った数値データのス ト リームを考えます。

このデータは、 図 3-3 に示すよ うな AXI4-Stream と して表されます。

図の re(X) および im(X) は、 それぞれ X の実数成分と虚数成分を表します。

図 3-2 : 符号付きスカラー値 ( 符号拡張 ) の例

X12057

TDATA[15] ... TDATA[12]

論理タイプ 符号付き複素数

論理ベクター長 1 (たとえば、 スカラー値)

物理基本単位 12 ビッ ト固定小数点

物理基本単位格納幅 16 ビッ ト

物理 TDATA 幅 16 ビッ ト

図 3-3 : AXI4-Stream による複素スカラー データの例

X12058

Page 51: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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 ベースのダウンサイザーを使用します。

ベクター データの例

次の表に示す特性を持った数値データのス ト リームを考えます。

図 3-4 : 32 ビッ ト幅の TDATA 信号による複素スカラー値転送の例

X12059

論理タイプ 符号付き複素数

論理ベクター長 4

物理基本単位 12 ビッ ト固定小数点

物理基本単位格納幅 16 ビッ ト

物理 TDATA 幅 16 ビッ ト

Page 52: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 3 章 : ザイリンクス FPGA に導入された AXI 機能

AXI4-Stream による表現方法を 図 3-5 に示します。

スカラーの場合と同様に、 同じデータを 32 ビッ ト幅の TDATA チャネルに送出できます (図 3-6 参照)。

図 3-5 : 数値スト リームの例

X12060

図 3-6 : AXI4-Stream スカラーの例

X12061

Page 53: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

AXI4-Stream の導入とサポート

TDATA の幅が 64 ビッ トのチャネルでは、 並列度をさらに高めるこ とができます (図 3-7 参照)。

TDATA の幅を 128 ビッ トにするこ とで、 並列度を 大限に高めた例が 図 3-8 です。

スカラー データに関してこ こまでの図に示したとおり、数値データには複数の表現方法があ り、 こ

れらはアプリ ケーシ ョ ンに応じて調整可能です。

図 3-7 : 64 ビッ ト幅 TDATA の例

x12062

図 3-8 : 128 ビッ ト幅 TDATA の例

X12063

Page 54: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 3 章 : ザイリンクス FPGA に導入された AXI 機能

同様に、 変換には AXI4-Stream のアップサイザーおよびダウンサイザーを使用できます。

パケッ ト とヌル バイ ト

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 使用方法は、 基本的にパケッ ト末尾の後ろに残りのバイ

Page 55: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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) 情報である と考え、 汎用フラグ、 割り込み、 ステータス信号の

よ うに扱う こ と もできます。

Page 56: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 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 個の複素数サンプルからなるパケッ ト を送信するよ うに設定する必要があ り ます。

Page 57: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

DSP とワイヤレス IPAXI 機能の導入

ソフ ト ウェアまたはハード ウェアのバグによってこの関係が崩れた場合、 FFT コアは TLASTの不一致を検出して、 該当するイベン ト をアサート します。 この場合のイベン トはエラー状態

を示します。

• グループ変換

通常、 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 とワイヤレス IPAXI 機能の導入

個々の AXI4-Stream スレーブ チャネルは、 ブロ ッ ク型またはノンブロ ッ ク型チャネルのいずれか

に分類されます。

チャネル上で ト ランザクシ ョ ンを実行している間、 コアの動作が禁止される場合、 このチャネルを

ブロ ッ ク型チャネルと呼びます。

たとえば、データ チャネルと制御チャネルの 2 つのスレーブ チャネルを持つ FFT コアを考えます。

データ チャネルは入力データを、 制御チャネルは入力データの処理方法 (変換サイズなど) を指示

する制御パケッ ト を転送します。

制御チャネルは、 ブロ ッ ク型またはノンブロ ッ ク型のいずれにも設計できます。

• ブロ ッ ク型の場合、コアに制御パケッ ト とデータ パケッ トの両方が存在する場合にのみ変換が

実行されます。

Page 58: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 3 章 : ザイリンクス FPGA に導入された AXI 機能

• ノンブロ ッ ク型の場合は、データ パケッ トだけがあれば変換を実行できます。 コアは前回の変

換の制御情報を再利用します。

ブロ ッ ク型と ノンブロ ッ ク型のインターフェイスの選択に関しては、 次のよ うにいくつかの ト レー

ドオフがあ り ます。

一般的には、 ブロ ッ ク型チャネルの簡便さはそのデメ リ ッ ト を上回り ます。

注記 : ブロ ッ ク型と ノンブロ ッ ク型の動作の違いは、 与えられたデータ と制御情報をコアが使用す

る方法であ り、 スレーブ チャネルの TREADY の駆動方法に直接影響する とは限り ません。 たとえ

ば、 スレーブ チャネルに内部バッファーを適用したコアでは、 このバッファーに空き領域がある と

きに TREADY をアサートする場合があ り ます。

機能 ブロック型 ノンブロック型

同期化 自動

コアは ト ランザクシ ョ ンに合わせて動

作します。たとえば、1 つの制御パケッ

ト と 1 つの入力データ パケッ トによっ

て、 1 つの出力データ パケッ トが生成

されます。

非自動

システム設計者は、 制御情報が

データよ り先にコアに到達する

よ うな設計が必要です。

シグナリ ングの オーバーヘッ ド

若干あり

前回と同じであっても、 制御情報を毎

回転送する必要があ り ます。

小限

前回と異なる場合のみ、 制御情

報を転送します。

接続 単純

ブロ ッ ク型コアのシステムには必要な

データが必要なと きに供給され、 自動

同期機能によ って制御とデータのパ

ケッ トは確実に同期が保たれます。

複雑

ノ ンブロ ッ ク型のコアでは、 シ

ステム内のデータ フローと制御

フローをシステム設計者が管理

する必要があ り ます。

リ ソースの

オーバーヘッ ド 若干あり

ブロ ッ ク動作を可能とするために、 通

常、 コアに少数のバッファーおよびス

テー ト マシンを追加する必要があ り

ます。

なし

ノ ンブロ ッ ク型の動作には、 通

常、 リ ソースの追加は不要です。

Page 59: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

第 4 章

ザイリンクス AXI プロ ト コルへの移行

概要

既存のコアを移行するプロセスでは、 既存の I/O 信号を AXI プロ ト コルの対応する信号にマッピ

ングします。 ロジッ クの追加が必要になる場合もあ り ます。

MicroBlaze™ エンベデッ ド プロセ ッサではエンデ ィ アンネスが従来のビ ッ グ エンデ ィ アン

(PowerPC® エンベデッ ド プロセッサの PLB インターフェイスに対応) から、 リ トル エンディアン

(ARM® プロセッサの要件および AXI プロ ト コルに対応) に変更されました。 ソフ ト ウェアの移行

に関しては、 66 ページの 「IP アップグレードのための CORE Generator の使用法」 で説明します。

IP コアの AXI への移行

IP の移行に関して、 次のよ うなガイ ド ラインがあ り ます。

エンベデッ ド PLBv4.6 IP : エンベデッ ド IP の移行シナリオと して、次の 3 種類の IP について検討

する必要があ り ます。

• ゼロから構築された IP

• 旧バージ ョ ンのザイ リ ンクス ツールが提供する Create and Import Peripheral Wizard を使

用して作成された IP

• 変更不可であ り、既存の PLBv4.6 インターフェイスを用いて現状のまま使用する必要があ

る IP

ゼロから作成した IP については、 こ こでは取り上げません。 41 ページの 「メモ リマップ方式 IP の機能の導入とサポー ト 」 および ARM 社のウェブサイ ト に掲載されている仕様書 『ARM AMBAAXI Protocol v2.0 Specification』 を参照してください。新規の IP は AXI プロ ト コルに従って設計

する必要があ り ます。

ザイ リ ン ク ス ツールの前バージ ョ ン (AXI 未対応バージ ョ ン) に含まれる Create and ImportPeripheral (CIP) Wizard によって作成された IP は、 同ウ ィザードを再度実行して AXI ベースのテ

ンプレー ト デザイ ンを作成する こ と で移行でき ます。 あ るいは、 ソ リ ューシ ョ ン レ コード

http://japan.xilinx.com/support/answers/37425.htm 掲載の AXI IP テンプレート による移行も可能

です。

変更せずに現状を保つ必要がある IP であっても、 AXI-To-PLB ブリ ッジを使用すれば ザイ リ ンク

ス ツール内での処理が可能になり ます。詳細は、次のセクシ ョ ン 「AXI-To-PLB ブリ ッジ」 を参照

して ください。

大規模なザイ リ ンクス IP (コネクティビティ IP または Foundation IP と呼ばれる) : 通常、この種の

IP については、 IP 別の資料に移行に関する指示が記載されています。 PCIe、 イーサネッ ト、 メモ

リ コア、 シ リ アル高速 I/O などの IP がこれに含まれます。

DSP IP : この多岐にわたる IP の変換に関する一般的なガイ ド ラインが示されています。

Page 60: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

Local-Link インターフェイス : Local-Link はザイ リ ンクス ソフ ト ウェアで何世代にもわたって使

用されてきた、 FIFO 方式の汎用ス ト リー ミ ング インターフェ イ スです。 詳細は、 58 ページの

「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) の設定

• ヌル データ書き込みス ト ローブに対する割り込み生成

• 先頭および末尾のデータ ビート を除く、 部分データ ス ト ローブに対する割り込み生成

• 読み出し /書き込み同時動作のサポート

Page 61: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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 マスターはデータ フローをスロ ッ トルで

きません。

図 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

Page 62: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 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 は、Local-Link の必須信

号と 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

Page 63: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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 の一般的な波形です。

次の図から、フロー制御信号 (SRC_RDY_N および DST_RDY_N) がデータ フローをどのよ うに制御

しているかがわかり ます。また、SOF_N と EOF_N 信号がデータ パケッ トのフレームを規定してい

る方法も確認して ください。

図 4-3 は、 AXI4-Stream によって同じタ イプの ト ランザクシ ョ ンを処理する場合を示したもので

す。 Local-Link との顕著な差異は、 フレーム開始が示されるよ うにな り、 その機能を担っていた

SOF 信号が削除された点のみであるこ とに注目して ください。

図 4-2 : 単一 Local-Link の波形

CLK

SOF_N

EOF_N

SRC_RDY_N

DST_RDY_N

DATA[63:0]

X12043

P0 P2 P3 P4 P5P1

図 4-3 : AXI4-Stream の波形

ACLK

TLAST

TVALID

TREADY

TDATA P0 P1 P2 P3 P4 P5X12042

Page 64: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 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 が 適です。

Local-Link IP のバリエーシ ョ ン

Local-Link にはいくつかのバリエーシ ョ ンがあ り、 注意が必要です。

• 一部アクティブ High の信号を使用するものがあ り ます。 AXI4-Stream もアクティブ High の信号を使用するため (ARESETN を除く )、 このよ うな変形例では移行後も極性が変わり ません。

• 独自の Local-Link 信号を作成するユーザーもいます。 これらの信号は Local-Link 仕様には定

義されていません。

表 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

Page 65: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

IP 移行における System Generator の使用法

• 信号がソースから宛先に送信されるものの場合、移行先と しては 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 が個々のポートに分解して表示

されます。

Page 66: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

図 4-6 に、 この例の AXI Complex Multiplier ブロ ッ クを示します。

ポートの順序

非 AXI と AXI の IP、 たとえば複素乗算器の 3.1 (非 AXI) と 4.0 (AXI) では、ブロ ッ ク上の実数お

よび虚数ポートの表示順序が上下逆にな り ます。 したがって、 AXI ブロ ッ クをデータ パスに接続

する と きは、 誤って交差させないよ うに注意が必要です。 図 4-5 にポート信号の例を示します。

図 4-4 : AXI Complex Multiplier ブロック

図 4-5 : ポート信号の例

Page 67: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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 インターフェイスが含まれているデザインの移行が容易で

す。11 ページの図 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 出力

FSL_M_Full 入力 M_AXIS_<Port_Name>TREADY 入力

Page 68: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 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 への変換にソフ ト ウェアの変更は必要あ り ません。

下位互換性を確保するために、MicroBlaze プロセッサは通常のメモリマップ方式 AXI インターフェ

イスが AXI4 向けに構成されている場合でも、 引き続き FSL インターフェイスをサポート します。

これを可能とするのが、 独立し た MicroBlaze コ ンフ ィ ギ ュ レーシ ョ ン パラ メ ーター

(C_STREAM_INTERCONNECT) であ り、 このパラ メーターに基づいてス ト リーム インターフェイ

スを AXI4-Stream あるいは FSL のいずれとすべきかを判断しています。

FSL_M_Data 出力 M_AXIS_<Port_Name>TDATA 出力

FSL_M_Control 出力 M_AXIS_<Port_Name>TLAST 出力

表 4-3 : AXI4-Stream 信号の対応付け (続き)

信号 方向 AXI 信号 方向

表 4-4 : 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 入力

Page 69: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

DSP IP で AXI4-Stream を使用するための HDL デザインの移行

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 アップグレードのための CORE Generator の使用法

• レイテンシの変更

• 割り当て済みポートの AXI4-Stream インターフェイスへのマップ

各 DSP IP 固有の移行に関する指示

各 IP のデータシートには、 その IP 固有の移行に関する詳細な指示が記載されていますが、 こ こで

はそれらの概要を記載します。特定の IP を移行する前に、その IP のデータシートの「AXI4-Streamに関する考慮事項」 および 「旧バージ ョ ンからの移行」 の項を確認してください。 図 4-6 に例を示

します。

デモ テストベンチ

コアの移行をサポートするために CORE Generator ではテス トベンチ例を生成できます。生成され

たテス トベンチは、 CORE Generator プロジェク ト ディ レク ト リの下の demo_tb ディ レク ト リ内

に保存されます。このテス トベンチは、生成されたコアをインスタンシエート し、DSP IP が AXI4-stream インターフェイス と共にどのよ うに動作するかを簡単な例で示します。 これは、 コアを実行

する単純な VHDL テス トベンチです。

ソース コードは CORE Generator 出力ディ レク ト リ内にある 1 つの VHDL ファ イル

demo_tb/tb_<component_name>.vhd です。

図 4-6 : IP データシートの例

Page 70: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

ソース コードには詳細なコ メン トが記載されています。 デモ テス トベンチはコアの入力信号を駆

動して、 AXI4-Stream インターフェイスを備えたコアの機能と動作モードの実行例を示します。生

成されたテス トベンチの詳細な使用法は、 各 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 Multiplier 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 for Minimum Change Migration」 のセクシ ョ ンを参照してください。

図 4-7 : demo_tb ディレク ト リの構造

図 4-8 : CORE Generator のアップグレード機能

Page 71: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

DSP IP で AXI4-Stream を使用するための HDL デザインの移行

割り当て済みポートの AXI4-Stream インターフェイスへのマップ

各 DSP IP のデータシートには、 以前のバージ ョ ンと 新のバージ ョ ンのコアについて、 ポート名

の変更、 ポートの追加と廃止予定、 および極性の変更をまとめた表が掲載されています。 注目すべ

き変更点は次のとおりです。

• リセッ ト : DSP IP の AXI4-Stream インターフェイスのリセッ ト信号 aresetn はアクティブ

Low であ り、2 ク ロ ッ ク サイクル以上アサートする必要があ り ます。 このリセッ ト信号は常に

クロ ッ ク イネーブル信号の aclken よ り も優先されます。

したがって、 既存の IP インスタンシエーシ ョ ンの リセッ ト入力を、 1 ク ロ ッ ク サイ クル以上

のアクティブ High 信号 SCLR から、 2 ク ロ ッ ク サイ クル以上のアクティブ Low のリセッ ト

入力に変更する必要があ り ます。

• 入力および出力 TDATA ポートの構造 : AXI 仕様では、 データを単一の TDATA 入力ス ト リー

ムに統合するこ とを求めています。 視覚的に把握しやすくするために、 IP GUI の IP シンボル

やインプリ メンテーシ ョ ンの詳細タブに TDATA の構造を表示できます。 また、 IP のインスタ

ンシエーシ ョ ンを容易にするために、 デモ テス トベンチの例にも TDATA 構造の信号の接続方

法および機能面からの信号の分割方法が示されています。デモ テス トベンチでは、シ ミ ュレー

シ ョ ン時に波形を見やすくするために、 TDATA フ ィールドにエイ リ アスを割り当てています。

図 4-9 に、 TDATA ポートの構造を示します。

図 4-9 : TDATA ポートの構造

Page 72: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

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 のラ

イブラ リおよびド ライバー用のボード サポート パッケージ関数に対するユーザー アプリ ケーシ ョ

ン内の呼び出しを変更する必要があ り ます。

ユーザー コード、 カスタム ド ラ イバー、 その他のコードは、 ビッグ エンディアンまたはリ トル エンディアン形式によるデータ表現の影響を受ける場合、 再作成が必要になる可能性があ り ます。

ビッグ エンディアンからリ トル エンディアンへの移行時の一般的ガイドライン

次に MicroBlaze のビッグ エンディアン形式で使用されているソフ ト ウェア フローやコードを、 リ

トル エンディアンのデザインに移行する場合に考慮すべき一般的なガイ ド ラインを示します。

1. エンディアンネスの影響を受けやすいソフ ト ウェアの場合は状況を的確に把握して ください。

メモ リ、 ファ イル、 ス ト リームとの間で読み出しまたは書き込みを実行する場合は、 特に注意

が必要です。

2. MicroBlaze の PLBv4.6 ビッグ エンディアン システム上で動作する既存のソフ ト ウェアには

変更が必要な場合があ り ます。

a. XPS ソフ ト ウェア フローは AXI をサポート していないため、 SDK を使用する必要があ

り ます。

b. SDK では、新しい AXI ハードウェア ハンドオフのインポート、新しいボード ソフ ト ウェ

ア パッケージの作成、 ソフ ト ウェア アプリ ケーシ ョ ンのインポート を実行します。

Page 73: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

データ タイプとエンディアンネス

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) を基に作成されました。 この リ ンクは、 付録 C 「その他の資料」 にも記載されてい

ます。

データ タイプとエンディアンネス

MicroBlaze がデータ表現にビッグ エンディアンまたはリ トル エンディアンいずれの形式を使用す

るかは、パラ メーター C_ENDIANNESS で指定します。 MicroBlaze™ プロセッサのハード ウェアが

サポートするデータ タイプは、 ワード、 ハーフ ワード、 バイ ト です。 反転ロードおよび反転ス ト

ア命令の LHUR、 LWR、 SHR、 SWR を使用する と、 表の 「バイ ト反転オーダー」 に示したよ うに、

データ内のバイ トが反転されます。

表 4-5 ~ 70 ページの表 4-7 に、 各データ タイプのビッ トおよびバイ ト構成を示します。

表 4-5 : ワード データ タイプのビッ トおよびバイ ト構成

ワード データ タイプ 値

ビッグ エンディアン バイ ト アドレス n n+1 n+2 n+3

ビッグ エンディアン上位/下位バイ ト 上位バイ ト 下位バイ ト

ビッグ エンディアン バイ ト順 n n+1 n+2 n+3

ビッグ エンディアン バイ ト反転順 n+3 n+2 n+1 n

Page 74: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

リ トル エンディアン バイ ト アドレス n+3 n+2 n+1 n

リ トル エンディアン上位/下位バイ ト 上位バイ ト 下位バイ ト

リ トル エンディアン バイ ト順 n+3 n+2 n+1 n

リ トル エンディアン バイ ト反転順 n n+1 n+2 n+3

ビッ ト ラベル 0 31

上位ビッ ト /下位ビッ ト 上位ビッ ト 下位ビッ ト

表 4-6 : ハーフ ワード データ タイプ

ハーフ ワード データ タイプ 値

ビッグ エンディアン バイ ト アドレス n n+1

ビッグ エンディアン上位/下位バイ ト 上位バイ ト 下位バイ ト

ビッグ エンディアン バイ ト順 n n+1

ビッグ エンディアン バイ ト反転順 n+1 n

リ トル エンディアン バイ ト アドレス n+1 n

リ トル エンディアン上位/下位バイ ト 上位バイ ト 下位バイ ト

リ トル エンディアン バイ ト順 n+1 n

リ トル エンディアン バイ ト反転順 n n+1

ビッ ト ラベル 0 15

上位ビッ ト /下位ビッ ト 上位ビッ ト 下位ビッ ト

表 4-7 : バイ ト データ タイプ

バイ ト アドレス n

ビッ ト ラベル 0 7

上位ビッ ト /下位ビッ ト 上位ビッ ト 下位ビッ ト

表 4-5 : ワード データ タイプのビッ トおよびバイ ト構成 (続き)

Page 75: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

ハイエンドの検証ソリューシ ョ ン

多くのサードパーティ企業が (Cadence Design Systems、 ARM、 Mentor Graphics、 Synopsys など

の各社)、システム レベルの検証およびシステム レベル デザインの性能を調整する機能を持つツー

ルを提供しています。 AXI ベースの大規模システム設計において、可能な限り高度な検証および性

能が必要と される場合は、 これらのサードパーティ ツールを使用するこ とを推奨します。

Page 76: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

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

Page 77: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

第 5 章

AXI システムの最適化の検討事項とヒン ト

AXI ベースのザイ リ ンクス IP、 サードパーティ提供の IP、およびユーザー IP には、 システムのサ

イズ、 Fmax、 スループッ ト、 レイテンシ、 使いやすさ、 デバッグ容易性などを調整する、 多様な

コンフ ィギュレーシ ョ ン オプシ ョ ンやデザイン上の選択肢があ り ます。 IP デザインに関連する判

断とシステム アーキテクチャも、 システムのエ リ アおよび性能に影響を与えます。 AXI ベースの

システムは、小規模な Spartan® や Artix® ク ラスのデザインから、非常に大規模で高性能な Virtex®

デザインまでを対象と して幅広く ソ リ ューシ ョ ンを提供しなければならないこ とから、AXI IP およ

びシステムのコンフ ィギュレーシ ョ ンに関する選択の幅はきわめて広くなり ます。

この章では、 IP デザインとシステム コンフ ィギュレーシ ョ ンの 適化に役立つ情報や概念を解説

します。 ある属性に対する 適化がほかの属性と競合するために、 両者の ト レードオフによってバ

ランスを取る必要が生じるこ と もあ り ます。 たとえば、 パイプラインの追加によってタイ ミ ングを

改善しよ う とする と、 エ リ アに悪影響を与える場合などです。

74 ページの表 5-1 および 76 ページの表 5-2 に、AXI インターコネク ト と IP の各種機能、コンフ ィ

ギュレーシ ョ ン パラ メーター、 適化のオプシ ョ ンそれぞれが与える影響を、 さまざまな判断基準

別にま とめています。 各判断基準における影響は、 好ましいものから好まし く ないものへ、 適

(++)、 好ましい (+)、 中立 (0)、 好まし くない (-)、 不適 (--) とい う スケールで示しています。 IP およびシステムのデザインでは、 アプリ ケーシ ョ ンに必要な属性を 大化する と同時に負のト レード

オフを 小化するよ うに、 システムのアーキテクチャ設計、 適化、 および診断時にこれらの表を

活用して ください。

この章で説明する 適化のオプシ ョ ンやス ト ラテジをよ り理解するには、AXI のプロ ト コル、『AXIインターコネク ト IP データシート 』 (DS768)、XPS ツールの一般的な使用方法を身に付けておく必

要があ り ます。 このリ ンクは、 付録 C 「その他の資料」 にも記載されています。

Page 78: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

第 5 章 : AXI システムの最適化の検討事項とヒン ト

74 japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日

表 5-1 : AXI インターコネク トの最適化と機能への影響

機能 コンフ ィギュレーシ ョ ン

サイズ

/エリア

タイ

ミング

/Fm

ax

スル

ープ

ット

レイテ

ンシ

使いや

すさ

/柔軟性

デバ

ッグ容

易性

注意事項

ク ロ ッ ク ド メ イン変換

( オプシ ョ ン、

デフォルト = OFF)

同期クロ ッ ク変換 - + 0 - + 0 同期クロ ッ ク変換には、 複数のサイクルからなる複雑なタイ ミ

ング仕様を必要と します ( コア レベル UCF は AXI インターコ

ネク ト TCL によって自動的に生成 )。

非同期クロ ッ ク変換 -- + 0 -- ++ 0 非同期クロ ッ ク変換には深さ 32 ビッ トの FIFO が使用されま

す。 通常は非同期変換よ り も同期変換を推奨します。

幅変換 ( オプシ ョ ン、 デフォルト = OFF)

ダウンサイザー -- -- -- - + 0 サイズ コンバーターはマルチスレッ ドをサポート しません。

ID が変更された場合、 前の ID の ト ランザクシ ョ ンが完了する

までコンバーターはス トールします。アップサイザー -- - - - + 0

AXI4 からのエンドポイン

ト スレーブ プロ ト コル変換 ( オプシ ョ ン、 デフォルト = OFF)

AXI4-Lite 0 0 -- 0 + ++ AXI3 コンバーターはマルチスレッ ドをサポート しません。 ID が変更された場合、 前の ID の ト ランザクシ ョ ンが完了するま

でコンバーターはス トールします。 AXI3 コンバーターには、

AXI4 の長いバース ト を AXI3 の 大長 16 のバース トに分割処

理するロジッ ク も必要です。 このロジッ クによってサイズとレ

イテンシが増加します。

AXI3 - - - - 0 0

接続モード

共有アクセス共有データ ++ 0 -- 0 + ++

ク ロスバー - スパース ( デフォルト )

0 + + 0 0 0

ク ロスバー - 完全接続 -- - + 0 0 0

ID スレッ ド処理

単一スレッ ド + + 0 0 + + マスターが ID を使用しないと宣言した場合、 またはインター

コネク トが明示的に単一スレッ ド モードに設定された場合に

適用されます。 共有アドレス共有データ (SASD) モード、 サイ

ズ変換、 またはプロ ト コル変換などのコンフ ィギュレーシ ョ ン

設定によって、 使用モード と して自動的に単一スレッ ド モー

ドが適用される場合があるこ とに注意して ください。

複数スレッ ドのサポート 0 0 + 0 0 - 使用スレッ ド数が増える と共に読み出しの順序変更または読み

出しインターリーブが発生する可能性が高くな り、 デバッグが

よ り困難になり ます。

発行 / 受け入れ数1 ( デフォルト ) + + - 0 + +

2, 4, 8, 16, 32 - 0 + - 0 -

凡例 : 「++」 = 適、 「+」 = 好ましい、 「0」 = 中立、 「-」 = 好まし くない、 「--」 = 不適

Page 79: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

第 5 章 : AXI システムの最適化の検討事項とヒン ト

75 japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日

データ パス幅32 ( デフォルト ) + + - 0 0 0

64, 128, 256, 512, 1024 -- - ++ 0 0 0

レジスタ スライス ( オプシ ョ ン、

デフォルト = OFF)

タイプ 7 ( 軽量 ) - ++ - - + 0 AXI インターコネク トには、 インターコネク トのコンフ ィギュ

レーシ ョ ンに応じて自動的にレジスタ スライスのタイプを選

択する 「タイプ 8」 のレジスタ スライスが追加されました。

タイプ 8 の使用を推奨し、 それ以外のタイプを優先するのは正

当な理由がある場合のみと してください。

タイプ 1 ( レジスタ完全装備 )

-- ++ 0 - + 0

タイプ 8 ( 自動 ) - ++ 0 - + 0

フロアプラン ( オプシ ョ ン、 デフォルト = OFF)

IP ブロッ クおよびサブモ

ジュール ( または、 いずれか

一方 ) のフロアプラン

0 + 0 0 -- 0

データ パス FIFO ( オプシ ョ ン、

デフォルト = OFF)

SRL - 0 + - 0 0 SRL FIFO の深さは 32 です。

BRAM -- 0 ++ - 0 0 BRAM FIFO の深さは 512 です。 FIFO 占有に応じてバース ト

転送が可能になるまで AWVALID/ARVALID を遅延させる BRAM FIFO の追加オプシ ョ ンを使用するこ とで、 レイテンシ

は増加するもののスループッ ト を向上できます。

アービ ト レーシ ョ ン優先順

位 ( オプシ ョ ン、

デフォルト = ラウンド ロビン )

ラウンド ロビンよ り も優先さ

れる固定優先順位

0 0 0 + - 0 各マスターには、 デフォルト優先度のレベル 0 を持つマスター

よ り も優先される、 よ り高い固定優先度を割り当てるこ とがで

きます。 デフォルト優先度 0 に設定されたマスターには共通の

ラウンド ロビン優先度が与えられます。

AXI ChipScope モニター

( オプシ ョ ン、

デフォルト = OFF)

ON - - 0 0 0 ++

AXI ハード ウェア プロ ト コ

ル チェッカー ( オプシ ョ ン、

デフォルト = OFF)

ON - - 0 0 0 ++

表 5-1 : AXI インターコネク トの最適化と機能への影響 (続き)

機能 コンフ ィギュレーシ ョ ン

サイズ

/エリア

タイ

ミング

/Fm

ax

スル

ープ

ット

レイテ

ンシ

使いや

すさ

/柔軟性

デバ

ッグ容易性

注意事項

凡例 : 「++」 = 適、 「+」 = 好ましい、 「0」 = 中立、 「-」 = 好まし くない、 「--」 = 不適

Page 80: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

第 5 章 : AXI システムの最適化の検討事項とヒン ト

76 japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日

表 5-2 : AXI エンドポイン ト IP の最適化と機能への影響

機能 コンフ ィギュレーシ ョ ン

サイズ

/エリア

タイ

ミング

/Fm

ax

スル

ープ

ット

レイテ

ンシ

使いや

すさ

/柔軟性

デバ

ッグ容易性

注意事項

IP プロ ト コル

AXI4-Lite ++ 0 - 0 + ++ AXI インターコネク トは本来 AXI4 に基づいて開発されていま

す。 新規デザインでの AXI3 プロ ト コルの使用は推奨されてい

ません。AXI4 0 0 0 0 0 0

狭いバース トのサポート

ON ( デフォルト ) -- - - - 0 0 AXI マスター IP が明示的に OFF と指定しない限り、狭いバー

ス トのオプシ ョ ンは ON と見なされます。 ザイ リ ンクスの AXI マスター IP は通常狭いバース ト を使用しないため、 OFF を指定して ください。

OFF ( 推奨 ) 0 0 0 0 0 0

スレッ ド処理

スレッ ドを使用しないか、

単一スレッ ドのみを発行+ + 0 0 + + 複数の異なる AXI スレーブ エンドポイン ト を宛先と した ト ラ

ンザクシ ョ ンが混在する場合に単一スレッ ドを使用する と、

AXI インターコネク ト内のデッ ド ロ ッ ク防止ロジッ クによっ

てス トールが発生する可能性があ り ます。複数スレッ ドを発行 0 0 + 0 0 -

ト ランザクシ ョ ンの

パイプライン処理機能

1 + + - 0 + + 多数の ト ランザクシ ョ ンのパイプライン処理中に新たにパイプ

ライン処理される ト ランザクシ ョ ンでは、 レイテンシが長くな

る場合があ り ますが、 スループッ トが向上する可能性があ り ま

す。 パイプライン処理する ト ランザクシ ョ ンが多すぎる と、 行

頭ブロ ッキングが発生する可能性があ り ます。

> 1 ~ 大 32- 0 + 0 0 0

データ パス幅

32 + + - 0 0 0 ネイティブ データ パス幅は、 アプ リ ケーシ ョ ンの性能要件を

満たす範囲で 小にして ください。 このと き、 システム内での

サイズ変換を 低限に抑えるには、 広いネイティブ幅をサポー

トする方がよい場合もある という こ とに注意してください。

64, 128, 256, 512, 1024 -- - ++ 0 0 0

AXI4 バース ト長

短 (1 ~ 4) 0 0 - + 0 0 バース トが長いと、 行頭ブロッキングを発生させる可能性があ

り ます。 長いバース トに続いてパイプライン処理される ト ラン

ザクシ ョ ンでは、 レイテンシが長くなる場合があ り ますが、 ス

ループッ トが向上する可能性があ り ます。

長 ( 大 256) 0 0 ++ -- 0 0

凡例 : 「++」 = 適、 「+」 = 好ましい、 「0」 = 中立、 「-」 = 好まし くない、 「-」 = 不適

Page 81: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

AXI システムの最適化

AXI システムの最適化

システムの 適化は通常、 次に示すガイ ド ラインに沿って進めます。

サイズ/エリア最適化のガイド ライン AXI IP またはシステム デザインを検討する場合、 サイズとエ リ アに関する次のガイ ド ラ インを使

用して ください。

1. ク ロ ッ ク ド メ イン変換を伴う ロジッ クを削減するこ とによ り、 ク ロ ッ ク ド メ イン変換を 小

限に抑えます。 使用クロ ッ ク数を可能な限り少なく し、 ク ロ ッ ク変換が必要な場合は、 整数比

の同期クロ ッ クのみにするよ うにします。

2. AXI インターコネク トのスパース ク ロスバー接続または共有アドレス共有データ (SASD) コンフ ィギュレーシ ョ ンを使用します。システムの接続および帯域幅の要件を分析してください。

AXI インターコネク ト をク ロスバー モードで使用する場合は、 可能であればシステムのコネ

クティ ビティ マップ指定を必要 低限にとどめ、 不必要なマスター /スレーブ接続パスのため

のデータ パス ロジッ クを削減します。 SASD では、 すべてのデバイスが 1 つのデータ パスを

共有し、 Outstanding (未処理) ト ランザクシ ョ ンが一度に 1 つしか発生しないため、 データ接

続のコンフ ィギュレーシ ョ ンを SASD にする と、 消費されるロジッ クは削減されます。

3. AXI のメモ リマップ方式 IP では、 発行または受け入れの数を低減するこ とを含め、 マルチス

レッ ドの使用を少なく します。 スレッ ドおよびト ランザクシ ョ ンのパイプライン処理の使用を

減らすこ とで AXI インターコネク トの ト ランザクシ ョ ン処理ロジッ クが簡素になり ますが、ス

ループッ トに影響を及ぼす場合があ り ます。

4. AXI3 または AXI4 の狭いバース トの使用は避けます。 AXI プロ ト コルには狭いバース トが規

定されていますが、 通常マスター IP では使用しません。 マスター IP が狭いバース ト を発行し

ないこ とを明示的に宣言する と、 スレーブの中には (メモ リ コン ト ローラーなど) 狭いバース

ト ト ランザクシ ョ ンを受信しないこ とを察知して、 狭いバース ト用のサポート ロジッ クを削

除するものがあ り ます。

5. プロ ト コル変換を 小限に抑え、 可能であれば AXI4-Lite を使用します。 AXI3 スレーブへの

プロ ト コル変換はロジッ クを消費します。AXI4-Lite プロ ト コルは、特に AXI インターコネク

トに接続されるすべてのデバイスが AXI4-Lite タイプの場合、 よ り少数のロジッ クでサポート

可能です。 AXI4-Lite プロ ト コルを使用し、 AXI4-Lite IP を独立したサブシステム と してグ

ループ化する と、 ロジッ クを削減できます。

6. 必要に応じて、 インターコネク ト をよ り小規模で複雑性の低いサブシステムに分割し、 各サブ

システムをこれまで述べてきた手順で 適化できるよ うにします。 これには、プロ ト コル タイ

プ、 帯域幅、 マスター /スレーブの接続方法などを分析する必要があ り ます。 接続に関する要

件を 小限に抑え、 変換動作が少なくなるよ うに IP をサブシステムにグループ化する と、 ロ

ジッ クを削減できます。

7. データ パスの幅を低減し、サイズおよび幅の変換を 小限に抑えます。必要 低限のデータ パス幅で幅変換も可能な限り少なくなるよ うにシステムを設計します。AXI インターコネク ト コアのデータ幅またはコア ク ロ ッ ク と、接続されたすべてのエンドポイン トの幅と クロ ッ ク とが

一致するよ うに注意して ください。 一致していないと、 変換の数が過剰になる可能性があ り ま

す。 可能であれば、 汎用のメモ リマップ方式 AXI の幅コンバーターを使用せずに、 ユーザー

IP 内で幅変換を実行してください。

プロ ト コルに準拠したメモ リ マップ方式 AXI の幅コンバーター ブロ ッ クは、 アド レス計算、

マルチスレッ ドのサポート、 ト ランザクシ ョ ン分割、 アライ メン ト されていないバース ト、 任

意のバース ト長などに対応するために複雑です。

Page 82: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 5 章 : AXI システムの最適化の検討事項とヒン ト

AXI インターコネク トに到達する前の、 ユーザー IP またはアプリ ケーシ ョ ン ド メ インでよ り

効率的に幅変換を実行できれば、 システム全体のエリ アが削減されます。

タイ ミ ング/Fmax 最適化のガイド ライン

1. 必要に応じて、 レジスタ スライスを有効にします。 レジスタ スライスは、 AXI のパイプライ

ン ステージと して機能し、 レジスタ スライス全体にわたる組み合わせタイ ミ ング パスを分割

します。 AXI インターコネク トは、接続された各エンドポイン トの境界にオプシ ョ ンのレジス

タ スライスを提供します。FIFO Generator も、AXI レジスタ スライスのスタンドアロン イン

スタンスを生成できます。 さまざまなタイプのレジスタ スラ イスを使用できる こ と、 さ らに

個々の AXI チャネルごとに粒度を設定できるこ とで、 レジスタ スライスの配置を細かく調整

できます。

2. プロセッサ、DDR3 メモ リ コン ト ローラー、PCIe ブリ ッジなどの大規模で複雑な IP ブロ ッ ク

は、 レジスタ スライス有効使用できる有用な例です。 レジスタ スライスがタイ ミ ング パスを

分割するこ とで、 配置配線 (PAR) ツールは、 大規模な IP ブロ ッ クをよ り自由に、 インターコ

ネク ト コアやその他の IP ロジッ クが密集している領域から離れた場所に移動できるよ うにな

り ます。

a. レジスタ スライスを多用するこ とで、特に領域がほぼ満たされているデザインでは、エ リ

アおよび PAR ツールにおける密集度合いが増加し、 タ イ ミ ングに悪影響を与える場合が

あ り ます。

b. AXI 仕様で定められているよ うに、ユーザー IP では、同じ AXI インターフェイスの入力

と出力間に組み合わせパスがないよ うにする必要があ り ます。 この AXI プロ ト コルの規

則は、 システム全体のタイ ミ ング改善に有効です。

3. データ パス幅を低減し、 サイズ/幅変換を必要 小限に抑えます ( 「サイズ/エリ ア 適化のガ

イ ド ライン」、 手順 7)。

4. 必要に応じて、 インターコネク ト をよ り小規模または複雑性の低いサブシステムに分割し、 タ

イ ミ ングが重要な IP をそれほど重要でない IP から分離できるよ うにします。 たとえば、 帯域

の低い IP のグループを、 低速のクロ ッ ク、 狭いデータ幅の AXI インターコネク ト上に配置す

るこ とで、 よ り高速のクロ ッ ク レート と よ り広いデータ パスで動作する高性能 IP にロジッ ク

リ ソースを確保し、 密集を緩和できます。

5. レジスタ スライスを使用する IP を分離してから、 IP ブロ ッ クのフロアプランを実行します (これは高度なス ト ラテジ)。 レジスタ スライスを配置してタイ ミ ングを分離した後に、 これら

の IP ブロ ッ クをインターコネク ト コアから離れた領域でフロアプランするこ とで、 ブロ ッ ク

コア周辺の密集を緩和できます。

スループッ ト /帯域幅最適化のガイド ライン

1. 78 ページの 「タイ ミ ング/Fmax 適化のガイ ド ラ イン」 で説明するタイ ミ ングの 適化を使用

して、 ク ロ ッ ク周波数を高く します。長い組み合わせパスをレジスタ スライスの適用によって

分割するなどしてクロ ッ ク周波数を増大させるこ とで、システム全体の帯域幅を改善できます。

2. データ パス幅を広く します。 データ パスが広いほど、 ク ロ ッ ク サイクルごとに伝送される情

報が増えます。

3. データ パス FIFO バッファーを有効にします。エラスティ ッ ク バッファーによって、一時的な

ス トールやデータ フローのバッ クプレッシャーの影響を隠すこ とができます。 FIFO の占有状

態に応じて割り込みバース ト転送が可能になるまで AWVALID/ARVALID を遅延させる BRAMFIFO の追加オプシ ョ ンを使用するこ とで、 レイテンシは増加するものの、 スループッ ト を向

上できます。

Page 83: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

AXI システムの最適化

4. インターコネク ト を分離して、 高性能 IP をま とめてグループ化し、 よ り性能の低い IP は別の

インターコネク ト内に配置します。

高性能 IP をよ り小さなサブシステムと して分離するこ とで、 よ り柔軟にサブシステムを 適

化でき、 スループッ トが向上します。

5. ト ランザクシ ョ ンのバース ト長を長く します。バース トが長ければ、アドレス アービ ト レーシ ョ

ンや制御ロジッ クのオーバーヘッ ドによるス トール サイクル発生の可能性が低減されます。

長いバース トには、 次のよ うな効果もあ り ます。

• 大量の連続データを伝送する という意図が AXI スレーブに伝わり、 メモ リ コン ト ロー

ラーなどのスレーブの応答がよ り適切に 適化されます。

• AXI アドレス チャネルの帯域幅が相対的に低減されます。 AXI インターコネク トに含ま

れる共有アドレス アービタ ロジッ ク周辺で、 アドレス チャネルの密集が緩和されます。

6. 発行 / 受け入れ数を含む、 ト ランザクシ ョ ンのパイプライン処理を増加させます。 ト ランザク

シ ョ ンのパイプライン処理によ り、 スレーブ内のアービタおよび制御ロジッ クは前の ト ランザ

クシ ョ ンの処理中に、 次の ト ランザクシ ョ ンの処理を先行して開始できます。 これによって、

連続した ト ランザクシ ョ ン間で発生する、アービ ト レーシ ョ ン/制御サイクルによるス トールを

低減できます。

7. スパース ク ロスバーによる AXI インターコネク トの並列処理を活用します。 スパース ク ロス

バー モードの AXI インターコネク トでは、 複数のマスターが複数の独立したスレーブにデー

タを転送する並行データ フローが可能です。

8. IP がデータ ス ト リームに挿入するアイ ドル サイクルを 低限に抑えて、 確実にデータを供給

できるよ うになるまでは、読み出し /書き込みアドレス要求の発行を避けます。 これを守らない

と、 読み出しまたは書き込みデータ転送の進行中に ト ランザクシ ョ ンのデータ フェーズがス

トールした場合、AXI インターコネク トがほかの読み出しまたは書き込みデータ転送に対応で

きな くなる可能性があ り ます。 マスターまたはスレーブがス トールする と、 ほかのデバイスの

動作を妨げ、 システム スループッ トが制限される可能性があ り ます。

スループッ ト を高めるには、 低限のス トール サイ クルで処理を完了できる準備が整ってか

ら、 読み出しまたは書き込みを要求するよ うに IP を設計して ください。 バッファーの使用が

これに有益な場合があ り ます。 ワース ト ケースは、 きわめて低速な AXI マスターが書き込み

バース ト を要求した場合です。 低速のマスターにアービ ト レーシ ョ ンが与えられる と、 この遅

い書き込みト ランザクシ ョ ンが完了するまで、 同じスレーブに対するほかの書き込みがブロ ッ

ク され、 各データ ビートの転送に多くのクロ ッ ク サイ クルが費やされる可能性があ り ます。

AXI インターコネク ト内のデータ パス FIFO を使用するこ とで (AWVALID/ARVALID 遅延機

能を適用した場合)、 低速のマスターによるスループッ トへの影響を緩和できます。

レイテンシ最適化のガイド ライン 1. ク ロ ッ クおよび幅変換を 小限に抑えます。 ク ロ ッ クおよび幅変換には、 レイテンシ サイクル

を増加させるロジッ クが必要です。

2. AXI3 または AXI4 の狭いバース トの使用は避けます。メモ リ コン ト ローラーなど一部の AXIスレーブ デバイスでは、狭いバース ト を 大幅のバース トに変換する内部ロジッ クを使用する

必要があ り ます。 このパッキングのロジッ クによってレイテンシが増加します。 特定のスレー

ブに接続されるいずれのマスターも狭いバース ト を実行しないよ うにできる場合、 スレーブ内

の狭いバース ト をサポートするロジッ クを無効化し、 エリ アとレイテンシを低減できます。

3. レイテンシの影響を受けやすいマスターのアービ ト レーシ ョ ン優先順位を高く します。 一部の

マスターがほかのマスターに比べてレイテンシの影響を受けやすい場合、 影響を受けやすいマ

スターの優先順位を上げるこ とは、 要求をよ り迅速に処理するのに有用です。

Page 84: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 5 章 : AXI システムの最適化の検討事項とヒン ト

4. ト ランザクシ ョ ンのバース ト長を短くするこ とで、 行頭ブロ ッキングが長期間継続するこ とを

防ぎます。 バース トが長いと、 よ り長時間にわたってデータ パスを占有する可能性があ り、 こ

の間、 レイテンシの影響を受けやすいマスターは待機しなければなり ません。 バース ト長を短

くするこ とで、 アービ ト レーシ ョ ン サイ クルの頻度が増し、 このよ うなマスターがアクセス権

を得るこ とができます。

5. レジスタ スライスの使用をなるべく避けながら、 クロッ ク周波数を増加させます。 これによって

レイテンシの絶対時間が短縮されます。 レジスタ スライスを追加せずにクロ ッ クを高速化すれ

ば、 レイテンシのサイクル数を変化させずに、 各クロッ ク サイクルの周期だけを短縮できます。

6. レイテンシの影響を受けにくい競合 IP からの ト ランザクシ ョ ン パイプライン処理の発行/受け

入れ数を抑制します。 多数の ト ランザクシ ョ ンをパイプライン処理する と、 行頭ブロ ッキング

を招く可能性があ り ます。発行/受け入れ数を制限するこ とでパイプライン処理される ト ランザ

クシ ョ ン数が制限され、 レイテンシの影響を受けやすいト ランザクシ ョ ンよ り前に、 パイプラ

インの対象とな り得る ト ランザクシ ョ ンの数が低減されます。

7. システム アドレス マップおよびアドレス アクセス パターンを、 AXI DDRx (MIG) メモ リ コン ト ローラーの行/バンク管理機能を活用できる構成にします。 メモ リ内のオープン バンクや

行 (ページ) のアドレス位置にアクセスするこ とで DRAM メモ リへのアクセス時間が短縮され

ます。

8. ク ロスバー モードの AXI インターコネク トによる並列処理を使用したり、 インターコネク ト

を分離したりするこ とで、 レイテンシが重要なマスターからスレーブへのパスの密集を解消し

て長さを短く します。 AXI インターコネク ト を分離、 グループ化、 適化するこ とで、 レイテ

ンシの影響を受けやすいマスターを、 アクセスするスレーブの も近くに配置できます。

使いやすさとデバッグに関する最適化のガイド ライン 1. 使いやすさを向上させるには、 ネイティブの も使いやすいクロ ッ ク、 幅、 プロ ト コルなどで

各 IP を使用し、 インターコネク トのポート ごとの設定を使用して IP に適合させます。

2. 完全なクロスバー接続を使用するこ とで、 ト ランザクシ ョ ンのアクティブなソース/宛先をよ り

柔軟に変更できますが、 スパース接続では、 通信可能なマスターとスレーブの組み合わせに制

約があ り ます。 さ らに簡潔なソ リ ューシ ョ ンは、 AXI インターコネク ト の共有アド レス共有

データ (SASD) モードを使用するこ とです。SASD モードは一度に 1 つの読み出しまたは書き

込みト ランザクシ ョ ンしか許可せず、 ト ランザクシ ョ ンの重複やパイプライン処理も発生しま

せん。 AXI インターコネク トの SASD モードでは ト ランザクシ ョ ンがス トールするため、 一

度に 1 つのト ランザクシ ョ ンしか進行しません。 これによって、 ト ランザクシ ョ ン シーケンス

のデバッグと把握が容易になり ます。

3. AXI4-Lite プロ ト コルは、AXI3 や AXI4 プロ ト コルに比べてはるかにシンプルです。IP にとっ

て AXI4-Lite で十分な場合は、 このプロ ト コルを使用するこ とでデザインが簡潔になり ます。

4. スレッ ド処理と ト ランザクシ ョ ンのパイプライン処理を少なくするこ とで、 AXI ChipScope™デバッグ モニターによるシステムのデバッグと解析が容易になり ます。スレッ ド処理やパイプ

ライン処理は、 各 AXI チャネル上のアクティ ビテ ィ と論理的ト ランザクシ ョ ン間の対応を取

りづら く します。 高度なスレッ ド処理やパイプライン処理のせいで、 ユーザー IP の機能的バ

グが露呈する可能性も高ま り ます。

5. AXI ChipScope モニターを有効にする と、ハード ウェア内の全波形の取得と ト リガーが可能に

な り ます。 これによって、 AXI インターコネク トの境界における一部またはすべての AXI 信号をハード ウェア ランタイムから表示/ ト リ ガーできるよ うにな り ます。 この機能は、 ハード

ウェアでの機能または性能上の問題点を診断する場合に有用です。

6. 機能エラーによるプロ ト コル違反の検出し、原因をよ り迅速に分離するには、 AXI ハードウェ

ア プロ ト コル チェッカーも役立ちます。

Page 85: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

AXI4 ベースのマルチポート メモリ コン ト ローラー : AXI4 システム最適化の例

AXI4 ベースのマルチポート メモリ コン ト ローラー : AXI4 システム最適化の例

AXI4 MPMC の概要

AXI4 ベースのマルチポート メモ リ コン ト ローラー (AXI MPMC) は、 AXI インターコネク ト と

AXI メモ リ コン ト ローラー コア (以後、 簡略化して AXI MIG と呼ぶ) を組み合わせるこ とで構築

できます。 この構成では、 複数の AXI4 マスターが共通の物理メモ リ を共有できます。

81 ページの図 5-1 に示すよ うに、 インターコネク トは N 個のマスター対 1 個のスレーブと して構

成でき、 AXI MIG は AXI インターコネク トにスレーブと して接続されます。

AXI マスター、 AXI インターコネク ト、 AXI MIG 間の IP コンフ ィギュレーシ ョ ンに関する判断

は、 サイズ、 Fmax、 スループッ ト、 レイテンシなどのシステム特性に多大な影響を与える場合が

あ り ます。 AXI MPMC のサイズと性能のバランスは、 前述の一般的な 適化のガイ ド ラ インを適

用するこ とで調整できます。 こ こでは、 システム 適化手法を適用して AXI MPMC を調整するい

くつかの例について解説します。 EDK または Project Navigator による AXI MPMC デザイン作成

方法の詳細は 『AXI マルチポート メモ リ コン ト ローラー アプ リ ケーシ ョ ン ノート 』 (XAPP739)を参照して ください。 このリ ンクは、 付録 C 「その他の資料」 にも記載されています。

メモリ コン ト ローラーの初期コンフ ィギュレーシ ョ ン

このシステムの AXI MPMC は、共用物理メモ リ との間で複数のデータ ス ト リームを送受信する目

的で使用するものと します。第 1 段階と して、システムの帯域幅要件を満たすよ うにメモ リ コン ト

ローラーをコンフ ィギュレーシ ョ ンします。 AXI MIG は 8、 16、 32、 64、 128 ビッ ト幅の物理メ

モ リ をサポート し、スピード グレード -1 の Virtex-6 デバイスの場合、300 ~ 400MHz のメモ リ クロ ッ ク レート を使用できます (ク ロ ッ クおよび幅に関する制約は、MIG の資料を参照)。 これは、物

理データ レーン上のデータ レート 600 ~ 800MHz に相当します。 4 つの AXI マスターが必要で

あ り、 ネイティブ 32 ビッ ト × 48MHz の AXI4 インターフェイスを介して、 それぞれのマスターが

読み出しに 大 100MB/sec、 書き込みに 大 100MB/sec の帯域幅を消費するものと仮定します。

したがって、 必要な総帯域幅は 4 × 2 × 100MB/sec = 800MB/sec になり ます。 メモ リ コン ト ロー

ラーのコンフ ィギュレーシ ョ ン オプシ ョ ンに関して 表 5-3 のよ うな計算が成り立ちます。

図 5-1 : AXI4 MPMC のブロック図

Page 86: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 5 章 : AXI システムの最適化の検討事項とヒン ト

システムの帯域幅要件を満たすメモリ コンフ ィギュレーシ ョ ンのうち も小さい 2 つは、16 ビッ ト

幅の DDR3 をメモリ クロ ッ ク レート 300 ~ 400MHz で動作させ、理論帯域幅 1200 ~ 1600MB/secを実現するものです (総帯域幅 800MB/sec のうちメモリによる使用率は 67% ~ 50%)。理論上は 400MHz で動作する 8 ビッ ト幅の DDR3 でも帯域幅要件を満たすこ とができますが、リ フ

レッシュ、 書き込みレベリ ング、 読み出し /書き込みのバス ターンアラウンド時間、 行/バンク アド

レス変更などによるオーバーヘッ ド (損失クロ ッ ク サイクル) を考える と、 さ らにマージンが必要で

す。 AXI MIG を使用する場合、 AXI スレーブ インターフェイスのデータ幅は、 ネイティブ設定で

物理メモリのデータ幅の 4 倍になり、 AXI スレーブのクロ ッ クはメモリ クロ ッ ク周波数の 1/2 にな

り ます。 したがって、 300 ~ 400MHz で動作する 16 ビッ ト幅の DDR3 は、 150 ~ 200MHz で動作

する 64 ビッ ト幅の AXI スレーブ インターフェイスに直接対応します。

AXI インターコネク トの初期コンフ ィギュレーシ ョ ン

メモ リ コン ト ローラーの帯域幅全体を使用するには、 AXI インターコネク ト コアの帯域幅がメモ

リ コン ト ローラーの帯域幅と同じかそれ以上の必要があ り ます。サイズと タイ ミ ングに影響を及ぼ

す幅変換やク ロ ッ ク変換は避ける とい う推奨事項から、 インターコネク ト コアおよびスレーブ側

ポートは 150 ~ 200MHz 動作の 64 ビッ ト幅に設定して、メモ リ コン ト ローラーのネイティブ AXIインターフェイスのコンフ ィギュレーシ ョ ンに一致させてください。

AXI インターコネク トのマスター側を設定する際には、 AXI マスターのネイティブ設定が 48MHzで 32 ビッ ト幅であるこ とに注意して ください。 このため、 マスターごとに 32 ビッ トから 64 ビッ

トへのサイズ変換が必要になり ます。 また、 インターコネク トが 200MHz で動作している場合は、

各 AXI マスターの 48MHz の AXI ク ロ ッ クに対する非同期クロ ッ ク変換が必要です。

クロ ッ ク変換に関する推奨事項

ク ロ ッ ク変換では、 ロジッ クを削減するために、 非同期変換ではなく同期変換となる比率を使用す

るこ とを推奨します。非同期クロ ッ ク変換をなくす方法と して、200MHz のインターコネク ト クロ ッ

クの代わりに、 次のよ うなクロ ッ クを使用するシステム コンフ ィギュレーシ ョ ンが考えられます。

• 48MHz の AXI マスター ク ロ ッ ク

• 48 × 4 = 192MHz の AXI インターコネク ト ク ロ ッ ク

• 192 × 2 = 384MHz のメモ リ ク ロ ッ ク

注記 : 48、 192、および 384MHz のクロ ッ クは、位相をそろえるために、同じ MMCM (MixedMode Clock Manager) ブロ ッ クで駆動してください。

表 5-3 : メモリ コン トローラーのコンフ ィギュレーシ ョ ン オプシ ョ ン

物理 DDR3 データ幅 (ビッ ト )

メモリ クロック (MHz)

データ レート (MHz)

理論最大帯域幅 (MB/sec)

8 300 600 600

8 400 800 800

16 300 600 1200

16 400 800 1600

32 300 600 2400

32 400 800 3200

64 300 600 4800

64 400 800 6400

128 300 600 9600

Page 87: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

AXI4 ベースのマルチポート メモリ コン ト ローラー : AXI4 システム最適化の例

図 5-2 に例を示します。

AXI4 マスターのコンフ ィギュレーシ ョ ン

AXI4 マスターによる AXI4 ト ランザクシ ョ ンの使用は、 メモ リ コン ト ローラーおよびシステムの

性能に影響を与えます。このシステムはメモ リ コン ト ローラー帯域幅のきわめて多く を必要とする

ため、 AXI4 ト ランザクシ ョ ンのバース ト長を 大の 256 ビートにしてシステム全体のデータ帯域

幅を改善します。

バース ト長の最大化 バース ト長を長くする こ とでアド レス アービ ト レーシ ョ ン/制御のサイ クルが削減される と共に、

メモ リ コン ト ローラーがアクセスする行、 バンクおよび読み出し /書き込み方向が、 よ り長い期間

一定に保たれます。 通常、 長いバース トはレイテンシに影響を与えますが、 このアプリ ケーシ ョ ン

ではレイテンシの影響をそれほど受けず、データ パス FIFO がエラスティ ッ クにバッファーする と

しているため、 長いバース トの使用に行頭ブロッ クやス トールは生じません。

狭いバース ト ト ランザクシ ョ ン発行の排除

AXI4 マスターが狭いバース ト ト ランザクシ ョ ンを発行しないよ うにして ください。 AXI 仕様で

は、 狭いバース ト とは AXI ト ランザクシ ョ ンのサイズがインターフェイスのネイティブ データ幅

よ り も狭いものと定義されています。 このよ うなバース トはバス使用率の観点から効率が低く、 す

べてを 大幅のバース トに再構成する処理を行うために、 メモ リ コン ト ローラーに追加ロジッ クが

必要とな り ます。 この例では、 次のよ うに設定します。

• マスターが発行する AXI ト ランザクシ ョ ンのサイズを 32 ビッ トにします (AxSIZE = 0x2)

• AXI ト ランザクシ ョ ンの変更許可ビッ ト を有効にして (AxCACHE[3]=1)、すべてのダウンス ト

リーム アップサイザーがよ り広い幅全体を使用できるよ うにします。 これによって、オーバー

ヘッ ド となる狭いバース ト用のロジッ クがメモリ コン ト ローラーから削除されます。

XPS では、 パラ メーター C_SUPPORTS_NARROW を使用するこ とで、 狭いバース ト用のロジッ クが

削除されるよ うに、 自動的に AXI MIG が構成されます。 CORE Generator™ を使用する場合は、

AXI MIG で狭いバース ト用のロジッ クが削除されるよ うに、 手動で設定する必要があ り ます。

図 5-2 : AXI インターコネク トのマスター側コンフ ィギュレーシ ョ ンのブロック図

Page 88: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 5 章 : AXI システムの最適化の検討事項とヒン ト

ト ランザクシ ョ ンのパイプライン処理

AXI4 マスターは、 ト ランザクシ ョ ンをパイプライン処理できるよ うに設計するこ とで、 前の ト ラ

ンザクシ ョ ンのデータ転送処理中に、 新しいアドレス要求を発行できるよ うになり ます。 ト ランザ

クシ ョ ンのパイプライン処理によって、 アドレスおよび制御サイクルとデータ転送サイクルがオー

バーラ ップできるため、データ パスの効率とスループッ トが向上します。 ただし、新しいアドレス

要求を発行する前に、 マスターが十分な書き込みデータを供給できるこ と、 あるいは読み出しデー

タを十分受け入れるこ とができ、 低限のス トールでバース ト全体の処理を完了できるこ とを確認

して ください。アドレス要求を発行しておきながら、要求した ト ランザクシ ョ ンのデータ転送フェー

ズで過剰にス トールするマスターは、 終的にはシステム全体のス トールや低速化をもたらすバッ

クプレッシャーを生じさせる可能性があ り ます。

単一スレ ッ ドのト ランザクシ ョ ン

AXI4 マスターは、すべての ト ランザクシ ョ ンを単一スレッ ドのみで処理するよ うに設計します (パラ メーター C_SUPPORTS_THREADS=0 を使用して宣言)。 複数スレッ ドを使用しないこ とで、 書き

込み応答と読み出しデータが順に戻されるものと して設計できるため、 AXI4 マスター内のロジッ

クが簡潔になり ます。 このシステム例ではアップサイザーがアクティブであるため、 単一スレッ ド

の使用によ り、 AXI インターコネク トの性能も向上します。 AXI インターコネク トのアップサイ

ザーは ID スレッ ドが変化する と ス トールするため、 単一スレッ ドであればアップサイザーを通過

する ト ランザクシ ョ ンのス トールを防止できます。 AXI4 マスター自身で複数スレッ ドを使用しな

いこ とを宣言するこ とで、 マルチスレッ ド用のロジッ クを含まないよ うに AXI インターフェイス

をコンフ ィギュレーシ ョ ンできます。これによってエリ アが削減され、タイ ミ ングが改善されます。

ChipScope モニターを使用した AXI ト ランザクシ ョ ンの解析は容易で、 システム全体での相関を

取りやすくなるため、 単一スレッ ドならばデバッグも簡単です。

AXI インターコネク ト コンフ ィギュレーシ ョ ンの詳細設定

AXI MIG、 AXI インターコネク ト、 ユーザーの AXI マスターに対する基本的なコンフ ィギュレー

シ ョ ンを完了後、AXI システム コンフ ィギュレーシ ョ ンをよ り詳細に調整する第 2 段階に進みます。

コンバーター バンクの個別設定

AXI インターコネク トのコンフ ィギュレーシ ョ ンを微調整する場合、 AXI インターコネク トのコン

バーター バンク ブロッ クについて理解しておく と役に立ちます。コンバーター バンクはレジスタ スライスおよびデータ パス FIFO 機能に加えて、 サイズ、 クロ ッ ク、 プロ ト コルの変換も処理します。

図 5-3 に示すよ うに、 コンバーター バンクは AXI インターコネク トの各エンドポイン トで個別に

設定できます。

図 5-3 : 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

Page 89: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

AXI4 ベースのマルチポート メモリ コン ト ローラー : AXI4 システム最適化の例

接続される AXI マスターの観点から 84 ページの図 5-3 に注目する と、データ パス FIFO が、 よ り

大きなネイティブ幅と クロ ッ ク周期でインターコネク ト コアに接続されるよ うに、アップサイザー

と クロ ッ ク コンバーターの後ろに配置されているのがわかり ます。

AXI マスターは、 メモ リ コン ト ローラーよ り も比較的低い帯域幅で動作します (1/2 の幅、1/4 のク

ロ ッ ク周波数)。 このため、 データ パス FIFO を有効にするこ とでインターコネク トはメモ リ コン

ト ローラーとの間のよ り幅の広い ト ランザクシ ョ ンのバッファ リ ングが可能とな り、 FIFO の反対

側では低速で各 AXI マスターの要求を処理できます。 このよ うにデータ パス FIFO は、 AXI マス

ターのデータ レートが低いこ とによる メモ リ コン ト ローラーのス トールを減らすこ とができます。

AXI インターコネク トが提供するデータ パス FIFO には、深さ 32 または 512 のオプシ ョ ンがあ り

ます。 AXI4 マスターが 大長 256 ビートの長いバース ト を生成するため、 バース ト全体を格納で

きるよ うに FIFO は深さ 512 に構成します。

リ リース 13.3 以降では、 FIFO の占有状態に応じて、 ダウンス ト リームへの割り込みバース ト転送

が可能になるまで AWVALID/ARVALID を遅延させる、 新しいオプシ ョ ン機能がデータ パス FIFOに導入されました。 この機能によって、 次の動作が可能になり ます。

• 書き込みデータ パス FIFO にト ランザクシ ョ ンの全データがバッファ リ ングされるまで、 ク ロ

スバーへの書き込みアドレス要求を保留する

• 読み出しデータ パス FIFO にト ランザクシ ョ ンの全データを格納できる空きができるまで、 ク

ロスバーへの読み出しアドレス要求を保留する

この機能によって、データ転送にス トール サイクルを発生させるこ とな く、データ パス FIFO がト

ランザクシ ョ ン全体をクロスバーの全帯域幅でソース/シンクできるこ とが確実になるまで、ク ロス

バーに ト ランザクシ ョ ン要求が渡されないよ うにします。 これは、83 ページの図 5-2 に示すデザイ

ン例のよ うに、 マスターの帯域幅がスレーブ (メモ リ コン ト ローラー ) に比べて比較的低速な場合

に特に効果がある機能です。

タ イ ミ ングの検討 AXI インターコネク トは、 タ イ ミ ングの観点から、 メモ リ コン ト ローラーとのインターフェイス

でレジスタ スライスを有効にしてください。 メモ リ コン ト ローラーの AXI インターフェイスはシ

ステム内で も幅が広く、 も高いクロ ッ ク周波数で動作するため、 レジスタ スライスを有効にし

なければ、 ク リ テ ィ カル パスになる可能性が高く な り ます。 メモ リ コン ト ローラーの AXI イン

ターフェイスの 5 チャネルすべてにタイプ 8 のレジスタ スライスを使用できるため、AXI インター

コネク ト では、 各 AXI チャネルに 適なレジスタ スラ イスのタ イプを選択できます。 AXI マス

ター インターフェイスにはレジスタ スラ イスは必須ではないこ とに注意して ください。 これは、

AXI マスターとアップサイザーが共にク ロ ッ ク コンバーターの低速周波数である 48MHz で駆動

されているためです。 さ らに、48MHz と 192MHz のクロ ッ ク ド メ イン間でタイ ミ ングを分離する

クロ ッ ク コンバーターは、 レジスタ スライス と して機能します。

複数ト ランザクシ ョ ンの発行 / 受け入れ

AXI インターコネク トの各ポートでの発行および受け入れ数を 適化するこ とで、 ト ランザクシ ョ

ンのパイプライン処理をサポート し、 行頭ブロ ッキングが低減するよ うパイプライン処理を抑制で

きます。 AXI マスターに割り当てられるデフォルトの発行数は、特に指定しない限り 1 です。発行

数を 1 にする と ロジッ クは 小化されるものの、 ト ランザクシ ョ ンをパイプライン処理できなくな

り ます。 発行数は 2 以上に設定してください。

このターゲッ ト システムではスループッ トの 大にしたいため、 データ パス FIFO をオーバーフ

ローさせない範囲で 大の Outstanding ト ランザクシ ョ ン数を計算できます。 前述のとおり、 デー

タ パス FIFO は 幅 64 ビッ ト × 深さ 512 です。

これは幅 32 ビッ ト × 深さ 1024 のス ト レージと等価です。AXI4 マスターが 大長 256 の AXI ト ラ

ンザクシ ョ ンを生成する場合、データ パス FIFO には 大 4 つのト ランザクシ ョ ンを格納できます。

AXI インターコネク トは発行および受け入れ数と して 1、 2、 4、 8、 16、 32 をサポート します。 し

たがって、 各 AXI マスターの発行数と しては 2 または 4 が妥当です。

Page 90: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 5 章 : AXI システムの最適化の検討事項とヒン ト

• 4 つのマスターを使用し、 それぞれの発行数が 2 である とする と、 各マスターが 2 つ発行する

ト ランザクシ ョ ンを完全にパイプライン処理するには、 メモ リ コン ト ローラーの受け入れ数は

8 でなければなり ません。

• ト ランザクシ ョ ンはすべて長いバース トである とする と、メモ リ コン ト ローラーにおける 8 を超える ト ランザクシ ョ ンのパイプライン処理は過剰です。 したがって、 マスターの発行値を 4 にする と、スレーブは 大 16 個のト ランザクシ ョ ンを処理しなければならないこ とから、こ

の値は大きすぎるこ とにな り ます。

• マスターの発行数が 4 では大きすぎ、 1 ではト ランザクシ ョ ンをパイプライン処理できないこ

とを考えれば、 2 という設定が妥当です。

AXI MPMC システムへのプロセッサ追加

プロセッサが性能面でレイテンシの影響を非常に受けやすいため、 この章の AXI MPMC のシステ

ム例にプロセッサが追加される と、 適化は複雑になり ます。オペレーティング システムまたはプ

ロ ト コル スタ ッ クのよ うな複雑なソフ ト ウェアを実行するために、プロセッサも メモ リ コン ト ロー

ラーを共有する必要がある場合、 プロセッサの低レイテンシ要件と、 ほかの AXI マスターの高ス

ループッ ト要件を共に満たすよ うに、 さ らに慎重に 適化を進める必要があ り ます。

プロセッサの ト ラフ ィ ッ クがほかのデバイスと干渉し、 結果と してほかのマスターのスループッ ト

を低下させる可能性があ り ます。 これは、 ほかのデバイスの行/バンク アクセス パターンを分断さ

せるランダム メモ リ アクセスが原因で、 プロセッサは短い ト ランザクシ ョ ンを多数生成できるた

めです。 4 ~ 8 ワードのキャ ッシュ ラ インに相当する短い ト ランザクシ ョ ンは、 行/バンク アクセ

ス時間、 読み出し /書き込みターンアラウンドなどに数メモ リ ク ロ ッ ク サイ クルを消費します。 プ

ロセッサが伝送する実際のデータ帯域幅は狭いものの、 通常ならば線形で長いメモ リ コン ト ロー

ラーによるバース ト アクセス パターンが分断されう るため、 事実上はこのよ う な ト ラフ ィ ッ クが

理論上の帯域幅の多くを占有するこ とにな り ます。

たとえば、 10MB/sec の帯域幅でプロセッサにデータを供給する ト ラフ ィ ッ クが、 実際にはメモ リ

コン ト ローラーの理論上帯域幅の 100MB/sec 相当を占有する可能性があ り ます。 プロセッサ性能

向上のための 適化にはシステム スループッ ト との ト レードオフが伴い、ほかのマスターが利用で

きる帯域幅が失われる可能性があ り ます。

プロセッサ追加時の検討事項

プロセッサをシステムに追加する場合、 一般的には次の点を検討する必要があ り ます。

• マージン向上のためにメモ リの幅またはクロ ッ ク速度の向上が必要か

• プロセッサがバース ト ト ランザクシ ョ ンの完了を待つ時間を短縮するために、 ほかの AXI マスターのバース ト長を短くすべきか

• レイテンシを 小にするために、 プロセッサに 高優先順位のアービ ト レーシ ョ ンを与えるべ

きか

• ト ランザクシ ョ ンのパイプライン処理による行頭ブロ ッキングを抑制するために、 ほかのデバ

イスの発行/受け入れ数を減らすべきか

• ク ロ ッ ク変換なし、 または同期クロ ッ ク変換だけで、プロセッサのメモ リ パスを優遇するよ う

にシステム ク ロ ッ クを変更できるか

注記 : MicroBlaze™ プロセッサは、ネイティブ幅 128、 256、 512 ビッ トの AXI インターフェ

イスをサポート できます。 これは、 アプ リ ケーシ ョ ン ド メ インでのサイズ変換が、 AXI の汎

用幅変換よ り も高効率な例の 1 つです。 MicroBlaze のビッ ト幅が広いキャ ッシュ構成は、 同

様に幅が広いメモ リ コン ト ローラーに接続して、サイズ変換によるレイテンシへの影響を除去

するのに理想的です。

Page 91: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

AXI4 ベースのマルチポート メモリ コン ト ローラー : AXI4 システム最適化の例

プロセッサ性能を向上させる 適化の手順は、システム スループッ ト 大化の手順とは逆になるこ

とが多くあ り ます。 したがって、 よ り大規模なメモ リ コン ト ローラーを使用してマージンを向上す

る必要があるか、 あるいはソフ ト ウェアを慎重に 適化して (キャ ッシュ ミ スを 小限に抑え) レイテンシとスループッ トの適切なバランスを取るために、 積極的にシステムで試行錯誤を繰り返す

必要があ り ます。

AXI MPMC に可能なその他の最適化

こ こまでは、 デザインの 適化プロセスの例に沿ってさまざまな設計判断基準間のト レードオフを

検討しながら、 AXI MPMC の 適化について解説してきました。

こ こからのサブセクシ ョ ンでは、適用の可能性があるさ らに詳細な 適化のアイデアを紹介します。

これらの 適化は、 特定の AXI MPMC デザインに適している場合もあれば適さない場合もあ り、

与えられた条件下で有効な手段となるかど うかには検証が必要になる可能性があ り ます。

AXI インターコネク ト : 共有アドレス共有データ モード

未使用の帯域幅が十分に余っている場合、 AXI イ ン ターコネク ト を共有ア ド レ ス共有データ

(SASD) モードに設定できます。

SASD では、 AXI インターコネク ト コアが単純化され、 読み出しまたは書き込みト ランザクシ ョ

ンを一度に 1 つだけ処理し、 さ らに読み出し と書き込みでアドレス配線を共用します。

このモードでは、 ト ランザクシ ョ ンのパイプライン処理はサポート されず、 読み出し と書き込みの

同時実行も禁止されますが、 ロジッ クが大幅に削減されます。 ト ランザクシ ョ ン間にス トール サイ

クルが発生するこ とや、読み出し と書き込みの同時データ フローを使用できないものの、長いバー

ス ト を使用するこ とから、 システムの帯域幅要件に対しては許容できる範囲と思われます。 SASDによって、 システム デバッグおよび AXI ト ランザクシ ョ ンの波形解析も著し く簡単にな り ます。

また、 SASD にはエンドポイン ト IP の機能バグやプロ ト コル違反に対して、 一般的によ り寛容で

ある という特徴もあ り ます。

独立した AXI インターコネク ト サブシステムへの IP グループの分割

AXI MPMC デザインに多数のマスターが含まれ、 タイ ミ ング要件を満たすのが困難な場合に、 考

えられるス ト ラテジの 1 つと して、複数の IP を独立した N × 1 の AXI インターコネク トにグルー

プ化し、 これらを メ インの AXI インターコネク トにフ ィードする方法があ り ます。 この方法では、

ファンインが広い 1 つのインターコネク トが、 ファンインの小さい複数のインターコネク トに分割

されるこ とにな り ます。 インターコネク トは小型化されるこ とで配線およびタイ ミ ング要件を満た

しやすくな り、 レジスタ スラ イス、 FIFO、 サイズ、 ク ロ ッ ク、 幅の各コンバーターの配置のオプ

シ ョ ンもよ り多様になり ます。

IP グループ化の例 たとえば、 2 つの AXI インターコネク トが互いに直接接続される場合、隣接するインターコネク ト

からそれぞれ 1 つずつレジスタ スライスを有効化して、 連続したレジスタ スライス と して使用で

きます。 この方法によって、 大規模な AXI MPMC システムにおいて配線距離を延ばすこ とが可能

です。

複数の AXI インターコネク ト を使用するこ とで、 システム全体のサイズを小さ くできる場合もあ り

ます。 AXI MPMC に多数のアップサイザー、 特に 32 ビッ トから 128 ビッ ト などステップの大きい

変換が必要な場合、 よ り幅の狭い AXI インターコネク トによってマスターをサブグループに分割す

るこ とで、 エリ アを費やしタイ ミ ングにも影響を与えるアップサイザーの個数を削減できます。

注記 : XPS では、 AXI イ ン ターコネク ト の 2 つの イ ンス タ ンスをカスケード接続する場合、

AXI-to-AXI コネクタ IP をインスタンシエートする必要があ り ます。このブリ ッジ IP は XPS がイ

Page 92: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 5 章 : AXI システムの最適化の検討事項とヒン ト

ンターコネク ト をカスケード接続するためのツール メカニズムを提供しますが、ロジッ ク と しては

ワイヤしか含まれず、 ロジッ ク リ ソースを消費するこ とはあ り ません。

デバッグおよび解析 : AXI ChipScope モニターおよび AXI ハードウェア プロ ト コル チェ ッカーの適用

XPS の AXI ChipScope™ デバッグ モニターは、 ハード ウェア上で AXI インターフェイス信号の

波形を取得したり ト リ ガーした りする機能です。AXI ChipScope モニターは、ハード ウェアの機能

上の問題をデバッグし、 性能上の問題を診断するために有用です。

複雑なシステムの動作解析

システム全体に複数の AXI ChipScope モニターを配置し、 それぞれを互いに ト リ ガーさせるこ と

で、 よ り複雑なシステム レベルの動作を解析できます。 何らかの AXI プロ ト コル違反が発生した

と きに AXI ChipScope モニターの ト リ ガーができる機能、 AXI ハード ウェア プロ ト コル チェッ

カーが利用可能です。 これによって、 プロ ト コル違反の原因をよ り迅速に分離できます。

フロアプラン AXI インターコネク トに接続された AXI IP に対しては、 配置ツールによる結果を改善し、 配線の

密集を緩和するフロアプランを実行できます。 大規模な FPGA でのフロアプランを容易にするに

は、 レジスタ スライスを追加で有効にして、 AXI IP インターフェイスの境界をフ リ ップフロ ップ

によってよ り明確にします。

注記 : AXI インターコネク トのコンフ ィギュレーシ ョ ンを大幅に変更した場合は、 フロアプランの

配置を再確認し、 必要ならば更新します。 この再確認を行わないと、 データ パス FIFO を有効にす

るなど後続の変更によ り、AXI インターコネク トのフッ トプ リ ン トや必要な配置が変化してしま う

場合があ り ます。

Cadence 社のバス ファンクシ ョ ン モデル

XPS では AXI バス ファンクシ ョ ン モデル (BFM) のインスタンシエートでき、AXI プロ ト コル モニターを用いて AXI IP を動作させテス トするシ ミ ュレーシ ョ ンを実行できます。この機能は、XPSで提供されている Cadence 社の製品です。

BFM の使用方法 ザイ リ ンクスは、 これらの BFM を開発中のユーザー IP の検証に使用するこ とを推奨しています。

特にパイプライン処理される ト ランザクシ ョ ンやマルチスレッ ドの ト ラフ ィ ッ クなどは、AXI ト ラ

ンザクシ ョ ンの動作を把握する難しさを考える と、 捉えにくい機能エラーのデバッグやプロ ト コル

違反の根本原因の特定をハードウェア内だけで行う こ とはきわめて困難と思われます。 これに比べ

てシ ミ ュレーシ ョ ンは通常、 複雑なシステムに適用する前に新しい AXI IP を検証およびデバッグ

する、はるかにコス トのかからない方法です。詳細は、『AXI バス ファンクシ ョ ン モデル ユーザー

ガイ ド』 (UG783) および 『AXI バス ファンクシ ョ ン モデル データシート 』 (DS824) を参照してく

ださい。

Page 93: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

AXI システム設計結果の低品質化を招く一般的なミス

よりシンプルでビッ ト幅の広いインターコネク トおよびメモリ コン ト ローラー

AXI MPMC システムに対して適用可能とな り得る別のス ト ラテジと して、 メモ リ コン ト ローラー

と AXI インターコネク ト コアの幅を大き くする方法があ り ます。たとえば、 メモ リ幅を倍にして、

理論上のシステム帯域幅を 2 倍にします。このよ うにシステム スループッ トに潜在的な余裕を加え

るこ とで、 残りのシステムのコンフ ィギュレーシ ョ ンが大幅に簡潔化されます。

たとえば、 当初 400MHz で 16 ビッ ト幅 DDR3 と 200MHz で 64 ビッ ト幅に構成されていた AXIインターコネク ト コアを、 300MHz で 32 ビッ ト幅 DDR3 と 150MHz で 128 ビッ ト幅 AXI イン

ターコネク トに再構成します。 物理メモ リ幅の倍増によって帯域幅が増加するため、 次のよ うにシ

ステムが大幅に簡潔化されます。

• AXI ク ロ ッ クの 200MHz から 150MHz への低速化によるタイ ミ ング関連の簡潔化

• ク ロ ッ ク周波数を低下させるこ とで、 レジスタ スライスを無効にできます。

• ク ロ ッ ク周波数を低下させるこ とで、 スピード グレードの低い FPGA デバイスを使用で

きます。

• ク ロスバーの SASD への設定変更 (ただし、 ト ランザクシ ョ ンのパイプライン処理とマルチス

レッ ドが不可となる)

• システム デバッグが簡単になり ます。

• 将来のシステム帯域幅拡大 (ク ロ ッ ク周波数の増大やクロスバーの有効化などによる) に対するマージンを確保できます。

• マスターが短いバース ト を使用可能になる こ とによ るレ イテンシの削減またはシステムの

FIFO/バッファ リ ング要件の緩和

注記 : メモ リ コン ト ローラーおよび AXI インターコネク トのデータ幅の拡大によって、 システム

にサイズ変換やボードレベルの新たな要件が加わる場合があ り ます。 これによって AXI システム

簡潔化の効果が相殺される可能性があるため、 特定のアプリ ケーシ ョ ンで総合的な改善が得られる

かど うかは、 実験および解析のうえで判断する必要があ り ます。

AXI システム設計結果の低品質化を招く一般的なミス

こ こでは、 予想よ り大きなエ リ ア、 低い性能やタイ ミ ング特性を持つ AXI システム設計につなが

り得る、 間違えやすい設計手法を紹介します。

メモリ コン ト ローラーのサイズを大き く しすぎる

AXI Virtex-6 MIG は、 8、 16、 32、 64、 128 ビッ ト幅の DDR3 物理メモ リ をサポート し、 AXI のネイティブ データ幅は 4 倍の 32、 64、 128、 256、 512 ビッ トにな り ます。

システム内に、 32 ビッ ト幅のマイ ク ロプロセッサと、 これに対応する AXI4-Lite ペリ フェラルし

かない場合、 これを 64 ビッ ト幅の物理 DDR3 メモ リに接続するこ とは、 ロジッ クの浪費であ り、

実際に性能を低下させます。 このよ う な AXI MIG は、 物理インターフェイスのロジッ クおよび

AXI MIG 内の 256 ビッ ト データ パスによって、エ リ アを著し く増加させます。 また、プロセッサ

の 32 ビッ ト幅 AXI インターフェイスを、ネイティブ幅 256 ビッ トの AXI インターフェイスにアッ

プサイズする必要もあ り、 エ リ アとレイテンシがさらに増加します。

AXI MIG は、 不必要なサイズ変換を 低限に抑えながら、 システムに必要な帯域幅を満たすサイ

ズにして ください。 これは、 64 ビッ ト幅の DDR3 DIMM を搭載した固定評価ボード ML605 を使

用する場合などに一般的に見られる状況です。 64 ビッ ト幅の DDR3 DIMM 用に構成された AXIMIG を含むリ ファレンス デザインから作業できる場合もあ り ますが、このサイズは MicroBlaze プロセッサの単純なアプリ ケーシ ョ ンには大きすぎます。

Page 94: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 5 章 : AXI システムの最適化の検討事項とヒン ト

AXI インターコネク トに不適切なコア データ幅またはコア クロックを設定する

AXI インターコネク トに誤ったコア データ幅を設定した り、 不適切なコア ク ロ ッ クを接続したり

する と、 システムに重大な影響を及ぼす可能性があ り ます。

たとえば、AXI インターコネク トに 5 つのマスターと 5 つのスレーブが接続されるシステムを考え

ます。各マスターおよびスレーブは 100MHz で 64 ビッ ト幅である と仮定します。このと き AXI インターコネク ト も 100MHz で 64 ビッ ト幅に設定されていれば、 ク ロ ッ ク またはビッ ト幅のコン

バーターは使用されません。しかし、インターコネク トのコア データ幅を誤って 75MHz で 32 ビッ

ト幅に設定した場合、 同じシステムでも各マスターに 64:32 ビッ トのダウンサイザー、 各スレーブ

に 32:64 ビッ トのアップサイザー、 さ らにマスターと スレーブすべてに非同期ク ロ ッ ク コンバー

ターが必要にな り ます。 10 個のサイズ コンバーターと 10 個の非同期クロ ッ ク コンバーターが追

加されれば、 システムのタイ ミ ング低下、 エ リ アの大幅な増加、 そして非常に大きなレイテンシが

もたらされます。

加えて、マスターとスレーブからの 64 ビッ ト幅の広い AXI ト ラフ ィ ッ クが、AXI インターコネク

トのはるかに狭く低速の 32 ビッ ト データ パスに集中するため、システムのスループッ トが著し く

制限されます。 これによって、マスターとスレーブが伝送するすべてのデータ ビート間でス トール

サイクルが発生する可能性があ り ます。

クロ ッ クやインターコネク ト データ幅の設定に注意する

XPS は幅およびクロ ッ ク変換のコンフ ィギュレーシ ョ ンを自動的に処理するため、インターコネク

ト ク ロ ッ クの接続やインターコネク ト データ幅の設定を誤る と、 これに合わせて XPS はシステム

を動作させるのに必要な変換をすべて自動的に有効化します。 その結果、 適切に動作し、 すべての

AXI ト ランザクシ ョ ンを完了するよ うに見えても、 帯域幅、 エリ ア、 レイテンシ、 タイ ミ ングが要

件からかけ離れたシステムになる可能性があ り ます。

レジスタ スライスを多用する

通常、 レジスタ スライスはシステムのタイ ミ ング ク ロージャに役立ちます。 しかしレジスタ スラ

イスは、 必要以上に多用する と逆効果になる場合があ り ます。

たとえば、大規模システムの AXI インターフェイスすべてで全レジスタ スライスを有効にする と、

システムのエリ アが増大し、 タイ ミ ングは改善されずに、 配線の密集や、 マップ、 配置、 配線処理

の長時間化などを招きます。

レジスタ スライスは段階的に追加する

タイ ミ ングが満たされない場合には、 大のクロ ッ ク周波数およびデータ幅のインターフェイスか

ら順にレジスタ スライスを追加する、段階的な追加方法が推奨されます。レジスタ スライスは、大

規模なクロスバー インターコネク ト またはサイズ変換を実行する AXI インターフェイスにも必要

になる場合があ り ます。大規模システムのタイ ミ ングを満たすために多数のレジスタ スライスが必

要な場合は、 配置配線ツールのガイ ドにフロアプランが必要になる可能性があ り ます。

AXI4-Lite IP にはレジスタ スライスを配置しない

通常、 AXI4-Lite IP にはレジスタ スライスを配置しないでください。

推奨方法では、 AXI4-Lite IP を独立した SASD AXI インターコネク ト上に分離し、 この AXI イン

ターコネク トおよびこれに接続された AXI4-Lite IP を低速の共通周波数のク ロ ッ クで駆動するこ

とで、 タイ ミ ングを向上させます。AXI4-Lite インターコネク トにタイ ミ ング改善が必要な場合は、

SASD インターコネク ト内の特別な内部レジスタ スライス ランクを有効にしてから、 タイ ミ ング

を満たしていない AXI4-Lite チャネルにのみ、 レジスタ スライスを追加します。

使用するレジスタ スライスのタイプを誤った場合にも、 悪影響が生じます。

Page 95: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

AXI システム設計結果の低品質化を招く一般的なミス

使用するレジスタ スライスのタ イプに注意する

たとえば、タイプ 1 レジスタ スライスはス トールを発生させずに、連続でのデータ ビート をサポー

ト します。 これに対して、 タイプ 7 レジスタ スライスは、占有エリ アが小さいものの、データ転送

ごとに毎回ス トールが発生します。

• タイプ 7 レジスタ スライスは AXI4-Lite インターフェイスまたは AXI インターフェイスの

AW、 AR、 B チャネルに適しています。 これらのインターフェイスでは、連続するデータ ビー

トが発生しないか、 発生しても頻度が低いためです。

• タイプ 1 レジスタ スライスは、 バース ト ト ランザクシ ョ ンが発生する R および W チャネル

向けに設計されています。

• 利便性を高めるために用意されたタイプ 8 レジスタ スライス オプシ ョ ンは、 AXI インターコ

ネク トのコンフ ィギュレーシ ョ ンに基づいて、 タイプ 1 と タイプ 7 を自動的に切り替えます。

タイプ 8 の使用を推奨します。 それ以外のタイプを優先するのは、 特に正当な理由がある場合

のみと して ください。

新規 IP のシミ ュレーシ ョ ンによる検証を省略する

AXI4 は次のよ うな特徴を備えた豊富なプロ ト コルを提供します。

• よ り複雑なシステムへのスケーリ ングが可能

• マルチスレッ ドやト ランザクショ ンのパイプライン処理などの高度なプロ ト コル機能をサポート

• ト ランザクシ ョ ンの順序付けや完了規則によって、 システム内の複数の AXI マスターおよび

スレーブ間のト ラフ ィ ッ クを管理

このよ うに AXI プロ ト コルが豊富な機能を備え、 クロスバー内で同時データ転送が発生する可能性

があるこ とから、 新しい AXI IP をハードウェア上だけでデバッグおよび検証するこ とは困難です。

新規 IP は BFM を用いて検証する

新しい IP は、 AXI バス ファンクシ ョ ン モデル (XPS で利用できる Cadence® 社の BFM など) とAXI プロ ト コル チェッカー/アサーシ ョ ン (Cadence 社または ARM® 社のウェブサイ ト よ り入手可

能) を用いて、 シ ミ ュレーシ ョ ンで検証して ください。

シ ミ ュレーシ ョ ン ベースの検証は、ハード ウェアのみによる検証に比べて、デバッグのサイクル時

間が大幅に短く、 機能上の問題点の特定と分離が容易です。 また、 よ り多岐にわたる AXI ト ラ

フ ィ ッ クに対応しています。

ハード ウェアのみによる AXI IP の検証では、 デバッグ サイクルごとにシステム全体の合成と配置

配線 (PAR) が必要にな り、 AXI ChipScope モニターで確認できる信号も、 シ ミ ュレーシ ョ ン検証

の場合に比べて限定されます。 比較的一般的なシステムの場合でさえ、 AXI4 ト ラフ ィ ッ クが複雑

な可能性はあ り、 ハード ウェアのみの検証は高コス トにな り ます。

AXI IP のシ ミ ュレーシ ョ ン検証は省略しない

それでも AXI IP をハード ウェアのみで検証せざるを得ない場合は、 AXI インターコネク ト をでき

る限り簡潔なコンフ ィギュレーシ ョ ンにするこ とを推奨します。

たとえば、SASD を使用し (発行/受け入れ数が 1 に制限されます)、 コンバーター バンク機能 (サイ

ズ変換、 ク ロ ッ ク変換、 データ パス FIFO など) の使用を 小限に抑えます。 ハード ウェアのみの

検証では、 レジスタ スラ イスは ト ラフ ィ ッ ク パターンのフ ィルターと して機能し、 一部のプロ ト

コル違反からシステムを隔離するため、 レジスタ スライスの有効化も役立ちます。

ハード ウェアのみの検証を実行する場合、システム内の重要な位置で、AXI ChipScope モニターお

よびハードウェア プロ ト コル チェッカーを有効にします。

Page 96: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

第 5 章 : AXI システムの最適化の検討事項とヒン ト

ベース システム ビルダーの出力結果を解析および最適化せずに適用する

BSB (Base System Builder) は、 評価ボードで動作させるこ とができ、 カスタム ボードをベースと

した設計に着手する際に使用できる実用的な AXI システムを提供します。 ただし、 BSB によって

生成されるシステムは、 AXI IP が提供できる幅広いソ リ ューシ ョ ンにおけるポイン ト ソ リ ュー

シ ョ ンに過ぎません。

BSB では、 システムのベースライン アーキテクチャを確立する際にエリ アまたはスループッ トの

いずれを 適化したデザインとするかの基本的な選択が可能です。

BSB 出力は最適化、適合化、 変換する

BSB から出力される AXI システムは、 77 ページの 「AXI システムの 適化」 に示した手法を用い

てエンド アプ リ ケーシ ョ ン向けにさ らに適合化や 適化し、 段階的に調整して ください。 アプ リ

ケーシ ョ ン固有の要件を満たすための BSB 出力の調整を怠る と、 設計結果の品質が低下し、 性能

も向上しません。

AXI IP ベースの適切なソ リ ューシ ョ ンに必要なアーキテクチャ と 適化は、 IBM CoreConnect™またはザイ リ ンクス MPMC ベース システムのそれとは大幅に異なる可能性があ り ます。AXI シス

テム用 BSB の出力は、CoreConnect または MPMC ベース システム用 BSB の出力と同種のシステ

ム アーキテクチャで設計されている とは限 り ません。 BSB で生成された CoreConnect または

MPMC システムと同等のエリ ア、性能、機能の ト レードオフを実現するには、AXI システム用 BSBの出力に大幅な変更を加える必要があ り ます。

Page 97: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

付録 A

AXI 導入のまとめ

この付録では、 ザイ リ ンクスが AXI4、 AXI-Lite、 AXI4-Stream インターフェイス プロ ト コル IPに導入したプロ ト コル信号をまとめています。 これらの信号の詳細は、 AXI 仕様 (www.amba.comよ り入手可能) を参照して ください。

AXI4 および AXI4-Lite 信号

グローバル信号

表 A-1 にグローバル AXI 信号を示します。

AXI4 および AXI4-Lite 書き込みアドレス チャネル信号

表 A-2 に書き込みアドレス チャネル信号を示します。

注記 : 読み出し専用のマスターまたはスレーブ インターフェイスは、書き込みアドレス チャネル全

体があ り ません。

表 A-1 : グローバル AXI 信号

信号 AXI4 AXI4-Lite

ACLK ク ロ ッ ク ソース。

ARESETN アクティブ Low のグローバル リセッ ト ソース。 IP がリセッ ト ソース (極性を問わない) と して別の信

号を使用できる場合は、 インターフェイス上に表れません。 ザイ リ ンクス IP では通常、 リセッ トのア

サートから 8 サイクル以内に VALID 出力をディアサートする必要があ り ます。 また、 リセッ ト パルス

は、 通常 も低速のクロ ッ クの 16 サイ クル以上必要です。

Page 98: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

付録 A : AXI 導入のまとめ

表 A-2 : 書き込みアドレス チャネル信号

信号 AXI4 AXI4-Lite

AWID 完全にサポート されています。

マスターは、 ID ビッ トの変化する部分 (存在する場合) のみを出力して、順序変更

可能な ト ランザクシ ョ ンのスレッ ドを表示します。

単一スレッ ドのマスター インターフェイスの場合は無視してかまいません。 マス

ターは、マスター ID を構成する定数の部分を出力する必要はあ り ません。 この部

分は AXI インターコネク トによって付加されます。

存在しません。

AWADDR 完全にサポート されています。

32 ビッ ト幅です。 必要に応じてよ り広い幅も使用します。 スレーブのネイティブ アドレス範囲を超える

上位ビッ トはエンドポイン ト スレーブによって無視 (切り捨て) されます。 この結果、 スレーブ内でアド

レスのエイ リ アシングが発生する可能性があ り ます。

注記 : EDK は 32 ビッ ト アドレスのみサポート します。

AWLEN 完全にサポート されています。

サポート対象のバース ト :

• インク リ メンタル バース ト (INCR) の場合、 大 256 ビート

• ラ ップ バース ト (WRAP) の場合、 16 ビート

存在しません。

AWSIZE 転送幅 8 ~ 1024 ビッ トに対応しています。

AWSIZE がネイティブ データ幅よ り狭いバース トの使用は推奨されていません。

存在しません。

AWBURST INCR および WRAP を完全にサポート します。

FIXED バース トは推奨されていません。

FIXED バース ト でもプロ ト コルに準拠したハン ドシェ イ クは確立されますが、

FIXED 転送の影響が、 誤って INCR または未定義の状態に解釈される可能性があ

るためです。

存在しません。

AWLOCK ザイ リ ンクスのエンドポイン ト IP には、排他的アクセス機能がインプリ メン ト さ

れていません。

インフラス ト ラ クチャ IP は排他的アクセス ビッ ト をシステム全体に転送します。

存在しません。

AWCACHE 値 0011 を推奨します。

ザイ リ ンクス IP は通常、 ト ランザクシ ョ ンを無視するか (スレーブの場合)、 ノーマル、キャ ッシュ不可、

変更可能、 バッファ リ ング可能のト ランザクシ ョ ンを生成します (マスターの場合)。

インフラス ト ラ クチャ IP はキャッシュ ビッ ト をシステム全体に転送します。

AWPROT 値 000 を推奨します。

ザイ リ ンクス IP は通常、 ト ランザクシ ョ ンを無視するか (スレーブの場合)、 ノーマル、 セキュア、 デー

タ属性のト ランザクシ ョ ンを生成します (マスターの場合)。

インフラス ト ラ クチャ IP は保護ビッ ト をシステム全体に転送します。

AWQOS ザイ リ ンクス エンドポイン ト IP にはインプ リ メン ト されていません。

インフラス ト ラ クチャ IP は QoS ビッ ト をシステム全体に転送します。

存在しません。

Page 99: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

AXI4 および AXI4-Lite 信号

AXI4 および AXI4-Lite 書き込みデータ チャネル信号

表 A-3 に書き込みデータ チャネル信号を示します。

注記 : 読み出し専用のマスターまたはスレーブ インターフェイスは、書き込みデータ チャネル全体

を無視します。

AXI4 および AXI4-Lite 書き込み応答チャネル信号

表 A-4 に書き込み応答チャネル信号を示します。

注記 : 読み出し専用のマスターまたはスレーブ インターフェイスは、書き込み応答チャネル全体を

無視します。

AWREGION ザイ リ ンクス エンドポイン ト スレーブ IP にインプリ メン ト可能です。

マスター IP にはインプリ メン ト されていません。

対応するアドレス デコーダーの範囲設定に基づき、 AXI インターコネク トによっ

て生成されます。

存在しません。

AWUSER 通常、 ザイ リ ンクス エンドポイン ト IP にはインプ リ メン ト されていません。

インフラス ト ラ クチャ IP はユーザー ビッ ト をシステム全体に転送します。

存在しません。

AWVALID 完全にサポート されています。

AWREADY 完全にサポート されています。

表 A-2 : 書き込みアドレス チャネル信号 (続き)

信号 AXI4 AXI4-Lite

表 A-3 : 書き込みデータ チャネル信号

信号 AXI4 AXI4-Lite

WDATA ネイティブ幅 32 ~ 1024 ビッ トに対応しています。 32 ビッ ト幅に対応しています。

AXI4-Lite は現在のと ころ 64 ビッ ト のネイ

ティブ データ幅をサポート していません。

WSTRB 完全にサポート されています。 スレーブ インターフェイスでは WSTRB を無

視 (すべてのバイ ト を有効と見なす) しても

かまいません。

WLAST 完全にサポート されています。 存在しません。

WUSER 通常、ザイ リ ンクス エンドポイン ト IP にはインプリ メン

ト されていません。

インフラス ト ラ クチャ IP はユーザー ビッ ト をシステム全

体に転送します。

存在しません。

WVALID 完全にサポート されています。

WREADY 完全にサポート されています。

Page 100: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

付録 A : AXI 導入のまとめ

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 または未定義の状態に解釈される可能性

があるためです。

存在しません。

ARSIZE 転送幅 8 ~ 1024 ビッ トに対応しています。

ARSIZE がネイティブ データ幅よ り狭いバース トの使用は推奨さ

れていません。

存在しません。

Page 101: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

AXI4 および AXI4-Lite 信号

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

Page 102: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

付録 A : AXI 導入のまとめ

AXI4 および AXI4-Lite 読み出しデータ チャネル信号

表 A-6 に読み出しデータ チャネル信号を示します。

注記 : 読み出し専用のマスターまたはスレーブ インターフェイスは、読み出しデータ チャネル全体

を無視します。

表 A-6 : 読み出しデータ チャネル信号

信号 AXI4 AXI4-Lite

RID 完全にサポート されています。

詳細は、 ARID を参照して ください。

存在しません。

RDATA ネイティブ幅 32 ~ 1024 ビッ トに対応しています。 32 ビッ ト幅に対応しています。

AXI4-Lite は現在のと ころ 64 ビッ ト のネイ

ティブ データ幅をサポート していません。

RRESP 完全にサポート されています。 EXOKAY の値は、 仕様には規定されていま

せん。

RLAST 完全にサポート されています。 存在しません。

RUSER 通常、 ザイ リ ンクス エンドポイン ト IP にはインプ リ メ ン

ト されていません。

インフラス ト ラ クチャ IP はユーザー ビッ ト をシステム全

体に転送します。

存在しません。

RVALID 完全にサポート されています。

RREADY 完全にサポート されています。

Page 103: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

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 が使用します (テス ト境界の確

立)。

Page 104: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

付録 A : AXI 導入のまとめ

Page 105: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

付録 B

AXI の用語

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 信号の独立した集

合。

すべて

バス 汎用 複数ビッ トからなる信号。

(インターフェイスまたはチャネルとは異なる)すべて

ト ランザク

シ ョ ン

AXI4-Streamチャネルを介して実行される完結した通信動作で、 1 つ以上の転送から構成されます。 完結した動作です。

DSP、 ビデオ、 通信ア

プリ ケーシ ョ ンに使用

されます。

AXI4

AXI4-Lite

アドレス、データ、応答の各チャネルを介した、互いに

関連付けられた読み出し /書き込み通信動作すべての集

合で、 1 つ以上の転送から構成されます。 完結した読み

出しまたは書き込み要求です。

エンベデッ ド コアお

よびメモ リ コア。

管理レジスタ。

Page 106: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

付録 B : AXI の用語

転送

AXI4

AXI4-Lite

AXI4-Stream

VALID 信号のハンドシェイクによって識別する、情報を

伝達する 1 つのクロッ ク サイクルです。 データ ビート。

すべて

バース ト

AXI4

AXI4-Lite

AXI4-Stream

複数の転送から構成される ト ランザクシ ョ ン。 すべて

マスター

AXI4

AXI4-Lite

AXI4-Stream

IP から AXI ト ランザクシ ョ ンを生成してスレーブ IPへと接続されたワイヤに発信する、 IP またはデバイス (または IP 上の複数のインターフェイスのうちの 1 つ)。

すべて

スレーブ

AXI4

AXI4-Lite

AXI4-Stream

マスター IP へと接続されたワイヤから IP 由来の AXIト ランザクシ ョ ンを受信して応答する、 IP またはデバ

イス (または IP 上の複数のインターフェイスの う ちの

1 つ)。

すべて

マスター イン

ターフェイス

(汎用)

AXI4

AXI4-Lite

AXI4-Stream

発信 AXI ト ランザクシ ョ ンを生成して AXI 転送の開

始側 (送信元) となる IP またはモジュールのインター

フェイス。

すべて

スレーブ イン

ターフェイス

(汎用)

AXI4

AXI4-Lite

AXI4-Stream

AXI 転送の受信側 (宛先) となって着信 AXI ト ランザク

シ ョ ンを受信する IP またはモジュールのインターフェ

イス。

すべて

SIAXI4

AXI4-Lite

AXI インターコネク トのスレーブ インターフェイス

• XPS フローの場合、接続されたすべてのマスター デバ

イスからの着信 AXI ト ランザクショ ンを受信する、ベ

クター化された AXI スレーブ インターフェイス

• CORE Generator ツール フローの場合、 1 つのマス

ター デバイ スに接続された複数のス レーブ イ ン

ターフェイスのうちの 1 つ

EDK

MIAXI4

AXI4-Lite

AXI インターコネク トのマスター インターフェイス

• XPS フローの場合、接続されたすべてのスレーブ デバイスへの発信 AXI ト ランザクシ ョ ンを生成する、

ベクター化された AXI マスター インターフェイス

• CORE Generator ツール フローの場合、1 つのスレー

ブ デバイスに接続された 1 つのマスター インター

フェイス

EDK

SI スロ ッ トAXI4

AXI4-Lite

スレーブ インターフェイス スロ ッ ト : 1 つのマスター

IP に接続する インターコネク ト のスレーブ インター

フェイス ベクター信号の 1 スライス。

EDK

AXI の用語 (続き)

用語 コアの種類 内容 適用対象

Page 107: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

MI スロ ッ トAXI4

AXI4-Lite

マスター インターフェイス スロ ッ ト : 1 つのマスター

インターフェイス スレーブ IP に接続するインターコネ

ク トのマスター インターフェイス ベクター信号の 1 スライス。

EDK

SI 側AXI4

AXI4-Lite

インターコネク ト の SI 側に近いモジュール インター

フェイスを指します。

すべて

MI 側AXI4

AXI4-Lite

インターコネク トの MI 側に近いモジュール インター

フェイスを指します。

すべて

アップサイ

ザー

AXI4

AXI4-Lite

AXI4-Stream

スレーブ インターフェイスからマスター インターフェ

イスの方向にデータが移動する場合に (書き込み/読み

出しの方向に関係なく )、 データ パス幅を広くする変換

機能。

すべて

ダウンサイ

ザー

AXI4

AXI4-Lite

AXI4-Stream

スレーブ インターフェイスからマスター インターフェ

イスの方向にデータが移動する場合に (書き込み/読み

出しの方向に関係なく )、 データ パス幅を狭くする変換

機能。

すべて

SAMD ト ポロジ 共有アドレス複数データ : 異なるマスターおよびスレー

ブ デバイス間でデータ転送が独立して同時に発生する

AXI インターコネク トのコンフィギュレーシ ョ ン。

すべて

SASD ト ポロジ 共有アド レス共有データ : 単一の読み出しおよび書き

込みパスがインプリ メ ン ト された AXI インターコネク

トのコンフ ィギュレーシ ョ ン。

すべて

共有アクセス トポロジ リ ソース消費を 小化するために、一度に 1 つのト ラン

ザクシ ョ ンしか発行されない SASD ト ポロジに基づい

た AXI インターコネク トのコンフ ィギュレーシ ョ ン。

EDK

ク ロスバー トポロジ マスターおよびスレーブ デバイス間のデータ パスがス

パース接続によってインプリ メン ト される SAMD ト ポ

ロジに基づいた AXI インターコネク トのコンフ ィギュ

レーシ ョ ン。

すべて

クロスバー 構造 AXI インターコネク トの中心に位置し、 さまざまな SIスロ ッ トおよび MI スロ ッ ト間のアドレス、データ、応

答の各チャネルの転送をルーティングするモジュール。

すべて

AXI の用語 (続き)

用語 コアの種類 内容 適用対象

Page 108: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

付録 B : AXI の用語

Page 109: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

付録 C

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

• 『ARM AMBA AXI Protocol v2.0 Specification』

• 『AMBA4 AXI4-Stream Protocol v1.0』

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

ジの 「はじめに」 を参照してください。

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

参照しています。

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

• 『AXI インターコネク ト IP データシート 』 (DS768)

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

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

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

• 『AXI バス ファンクシ ョ ン モデル データシート 』 (DS824)

ザイリンクス資料

• 『AXI マルチポート メモ リ コン ト ローラー アプリ ケーシ ョ ン ノート 』 (XAPP739) : http://japan.xilinx.com/support/documentation/application_notes/xapp739_axi_mpmc.pdf

• 『AXI バス ファンクシ ョ ン モデル ユーザー ガイ ド』 (UG783) : http://japan.xilinx.com/support/documentation/sw_manuals/xilinx13_3/ug783_axi_bfm.pdf

• 『MicroBlaze プロセッサ リ ファレンス ガイ ド』 (UG081) : http://japan.xilinx.com/support/documentation/sw_manuals/xilinx13_3/mb_ref_guide.pdf

• ISE Design Suite : インス トールおよびライセンス ガイ ド (UG798) : http://japan.xilinx.com/support/documentation/sw_manuals/xilinx13_3/iil.pdf

• ISE Design Suite : リ リース ノート ガイ ド (UG631) : http://japan.xilinx.com/support/documentation/sw_manuals/xilinx13_3/irn.pdf

• ビデオ デモ : http://japan.xilinx.com/design

• ザイ リ ンクス アンサー データベース : http://japan.xilinx.com/support/mysupport.htm

• ザイ リ ンクス用語集 : http://japan.xilinx.com/support/documentation/sw_manuals/glossary

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

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

• メモ リ制御 : http://japan.xilinx.com/products/technology/memory-solutions/index.htm

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

Page 110: AXI リファレンス ガイド - Xilinx...AXI リファレンス ガイド japan.xilinx.com UG761 (v13.3) 2011 年 10 月 19 日Xilinx is providing this product documentation, hereinafter

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

UG761 (v13.3) 2011 年 10 月 19 日

付録 C : その他の資料

• 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