HPS-FPGA AXIブリッジ、ハード・プロセッサ・システム(HPS)の

5. HPS-FPGA AXI ブリッジ
November 2012
cv_54005-1.1
cv_54005-1.1
この章では、FPGA ファブリックおよび HPS ロジックの間でのデータ通信に使用され
る HPS 内のブリッジについて説明します。ブリッジは Advanced Microcontroller Bus
Architecture(AMBA®)の Advanced eXtensible Interface(AXI™)プロトコルを使用し、
AMBA Network Interconnect(NIC-301)に基づいています。
f ARM ウェブサイト(infocenter.arm.com)からダウンロード可能な AMBA AXI Protocol
Specification v1.0 および AMBA Network Interconnect (NIC-301) Technical Reference Manual
も追加情報として使用可能です。
HPS には、以下の HPS-FPGA AXI ブリッジが含まれています。
■
FPGA-to-HPS ブリッジ
■
HPS-to-FPGA ブリッジ
■
軽量 HPS-to-FPGA ブリッジ
AXI ブリッジの機能
HPS-FPGA AXI ブリッジによって、FPGA ファブリック内のマスタは HPS ロジックのス
レーブと通信するようになります。例えば、FPGA ファブリック内の追加メモリまた
はペリフェラルをインスタンス化することが可能で、HPS ロジック内のコンポーネ
ントに属するマスタ・インタフェースがそれらにアクセスできます。また、FPGA
ファブリック内の Nios® II などのコンポーネントをインスタンス化できて、それらの
マスタ・インタフェースは HPS ロジック内のメモリまたはペリフェラルにアクセス
することができます。
AXI ブリッジには、表 5–1 に示す機能があります。
表 5‒1. AXI ブリッジの機能
機能
FPGA-to-HPS
ブリッジ
HPS-to-FPGA
ブリッジ
軽量
HPS-to-FPGA
ブリッジ
AMBA AXI3 インタフェースのプロトコルのサ
ポート
v
v
v
クロック・クロッシングの実装、および HPS
ロジックと FPGA ファブリックのクロック・
ドメイン間のデータ転送の管理
v
v
v
HPS ロジックおよび FPGA ファブリックの間
でのデータ幅変換の実行
v
v
v
初期化時における FPGA インタフェース幅の
コンフィギュレーション
v
v
© 2012 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos
are trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as
trademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance of its
semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any products and
services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information, product, or service
described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device specifications before relying
on any published information and before placing orders for products or services.
ISO
9001:2008
Registered
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
2012 年 11 月
Subscribe
5‒2
第 5 章: HPS-FPGA AXI ブリッジ
AXI ブリッジのブロック図およびシステム統合
各ブリッジは、FPGA ファブリックへの 1 本のインタフェースおよび HPS ロジックへ
のもう 1 本のインタフェースからなる AXI マスタ・スレーブ・ペアから構成されて
います。HPS-to-FPGA および軽量 HPS-to-FPGA ブリッジには、FPGA ファブリックの
AXI インタフェースまたは Avalon-MM スレーブ・インタフェースに接続可能な AXI マ
スタ・インタフェースがあります。FPGA-to-HPS ブリッジには、FPGA ファブリック
の AXI マスタ・インタフェースまたは Avalon-MM インタフェースに接続可能な AXI
スレーブ・インタフェースがあります。
f AXI ブリッジのコンフィギュレーションについて詳しくは、Cyclone V デバイス・ハン
ドブック volume 3 の Instantiating the HPS Component の章を参照してください。
AXI ブリッジのブロック図およびシステム統合
図 5–1 に、HPS への FPGA ファブリックおよび L3 インタコネクトにおける AXI ブ
リッジのブロック図を示します。各マスタ(M)およびスレーブ(S)のインタ
フェースは、データ幅と共に示しています。各インタコネクトのクロック・ドメイ
ンは括弧内に示されています。クロック・ドメインは 5–12 ページの「クロックおよ
びリセット」に示しています。
図 5‒1. AXI ブリッジの接続
FPGA Fabric
32, 64, or 128 Bits
(h2f_axi_clk)
M
AXI
HPS-to-FPGA
Bridge
32 Bits
(h2f_lw_axi_clk)
32 Bits
(l4_mp_clk)
S
AHB
(GPV)
S
AXI
32 Bits
(l4_mp_clk)
M
AHB
M
AXI
M
AHB
32, 64, or 128 Bits
(f2h_axi_clk)
S
AHB
(GPV)
Lightweight
HPS-to-FPGA Bridge
S
AXI
FPGA-to-HPS
Bridge
M
AXI
S
AXI (GPV)
64 Bits
(l3_main_clk)
32 Bits
(l4_mp_clk)
64 Bits
(l3_main_clk)
M
AXI
M
AXI
S
AXI
(L3 Main Switch)
(L3 Slave Peripheral Switch)
(L3 Main Switch)
L3 Interconnect
HPS-to-FPGA ブリッジは、Level 3(L3)メイン・スイッチによってマスタされ、軽量
HPS-to-FPGA ブリッジは L3 スレーブ・ペリフェラル・スイッチによってマスタされ
ます。
FPGA-to-HPS ブリッジは L3 メイン・スイッチをマスタし、FPGA ファブリックに実装
されている任意のマスタが HPS のほとんどのスレーブにアクセスできるようにしま
す。例えば、FPGA-to-HPS ブリッジは、SDRAM サブシステムへのキャッシュ・コ
ヒーレント・アクセスを実行するために、Cortex-A9 MPU サブシステムのアクセラ
レータ・コヒーレンシ・ポート(ACP)にアクセスできます。
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
2012 年 11 月
Altera Corporation
第 5 章: HPS-FPGA AXI ブリッジ
AXI ブリッジの機能の説明
5‒3
3 個すべてのブリッジには、グローバル・プログラマ・ビュー(GPV)レジスタが含
まれています。GPV レジスタはブリッジの動作を制御します。3 個すべてのブリッジ
の GPV レジスタへのアクセスは、軽量 HPS-to-FPGA ブリッジを経由して提供されま
す。
f マスタが持っている各ブリッジへのアクセスなどの接続について詳しくは、
Cyclone V デバイス・ハンドブック volume 3 の Interconnect の章を参照してください。
AXI ブリッジの機能の説明
グローバル・プログラマ・ビュー
HPS-to-FPGA ブリッジには、GPV と呼ばれるレジスタ一式が含まれています。GPV に
は、ブリッジの機能および動作を制御する設定があります。3 個すべてのブリッジの
GPV レジスタへのアクセスは、軽量 HPS-to-FPGA ブリッジを経由して提供されます。
GPV レジスタにアクセスできるのは、HPS または FPGA ファブリックのセキュア・マ
スタのみです。
FPGA-to-HPS ブリッジ
FPGA-to-HPS ブリッジは、HPS のペリフェラルおよびメモリへのアクセスを提供しま
す。このアクセスは、FPGA ファブリックに実装された任意のマスタに対して使用可
能です。32 ビット、64 ビット、および 128 ビットのデータをサポートするために、
FPGA ファブリックへのブリッジ・スレーブをコンフィギュレーションできます。L3
インタコネクトに接続されているブリッジのマスタ・インタフェースには 64 ビット
のデータ幅があります。
表 5–2 に、FPGA ファブリックに対して開いているコンフィギュレーション可能なス
レーブ・インタフェースを含む FPGA-to-HPS ブリッジの機能を示します。
表 5‒2. FPGA-to-HPS ブリッジの機能
ブリッジの機能
FPGA スレーブ・インタフェース
L3 マスタ・インタフェース
32、64、または 128 ビット
64 ビット
クロック・ドメイン
f2h_axi_clk
l3_main_clk
バイト・アドレス幅
32 ビット
32 ビット
ID 幅
8 ビット
8 ビット
リード受け入れ
16 トランザクション
16 トランザクション
ライト受け入れ
16 トランザクション
16 トランザクション
受け入れ合計
32 トランザクション
32 トランザクション
データ幅
(1)
表 5–2 の注:
(1) ブリッジ・スレーブのデータ幅は、システム内で HPS コンポーネントをインスタンス化するとき
にユーザーによってコンフィギュレーション可能です。
FPGA-to-HPS ブリッジには、
「グローバル・プログラマ・ビュー」で説明する GPV が
含まれています。GPV レジスタには、FPGA スレーブ・インタフェースが 32 ビット
幅または 128 ビット幅にコンフィギュレーションされているとき、ブリッジ・ス
レーブの機能を調整する設定があります。HPS 内で 1 つまたは複数のトランザク
ションが未処理になるように、fn_mod レジスタを通してスレーブの発行機能を調整
2012 年 11 月
Altera Corporation
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
5‒4
第 5 章: HPS-FPGA AXI ブリッジ
AXI ブリッジの機能の説明
することができます。また、fn_mod2 レジスタの bypass_merge ビットを経由してス
レーブ・バイパス・マージの機能をイネーブルすることも可能です。この機能は、
FPGA スレーブ・インタフェースが 32 ビット幅または 128 ビット幅にコンフィギュ
レーションされるときにロジックの拡大および縮小によってどのトランザクション
も変更されないことを確認します。
1
5–14 ページの「GPV クロック」に示すように、GPV へのアクセスをサポートするため
に l4_mp_clk クロックを修正することは非常に重要です。
ACP への FPGA-to-HPS アクセス
誤り訂正コード(ECC)オプションが Level 2(L2)キャッシュ・コントローラにイ
ネーブルされる場合、FPGA-to-HPS ブリッジから ACP へのすべてのアクセスは 64
ビット幅である必要があり、拡大または縮小が起きた後に 8 バイト境界にアライン
メントされている必要があります。
表 5–3 に、ECC のイネーブル状態で L2 キャッシュへのアクセスをサポートする、い
くつかの可能なマスタおよび FPGA-to-HPS ブリッジ・スレーブのコンフィギュレー
ションを示します。
表 5‒3. FPGA マスタおよび FPGA-to-HPS ブリッジのコンフィギュレーション
ソフト・ロ
ジック・マス
タ幅
ソフト・ロジッ
ク・マスタ・アラ
インメント
32 ビット
8 バイト
ソフト・ロジック・
ソフト・ロジック・マスタ・
マスタ・バースト・
バースト長
サイズ(幅)
4 バイト
FPGA-to-HPS ブ
リッジ・スレーブ
幅
2、4、6、8、10、12、14、
または 16 ビート
32 ビット
64 ビット
8 バイト
8 バイト
1 ~ 16 ビート
32 ビット
128 ビット
8 または 16 バイト
8 または 16 バイト
1 ~ 16 ビート
32 ビット
32 ビット
8 バイト
4 バイト
2、4、6、8、10、12、14、
または 16 ビート
64 ビット
64 ビット
8 バイト
8 バイト
1 ~ 16 ビート
64 ビット
128 ビット
8 または 16 バイト
8 または 16 バイト
1 ~ 16 ビート
64 ビット
32 ビット
8 バイト
4 バイト
2、4、6、8、10、12、14、
または 16 ビート
128 ビット
64 ビット
8 バイト
8 バイト
1 ~ 16 ビート
128 ビット
128 ビット
8 または 16 バイト
8 または 16 バイト
1 ~ 16 ビート
128 ビット
f L2 キャッシュの ECC オプションについて詳しくは、Cyclone V デバイス・ハンドブック
volume 3 の Cortex-A9 Microprocessor Unit Subsystem の章を参照してください。
FPGA-to-HPS ブリッジのスレーブ信号
FPGA-to-HPS ブリッジのスレーブ・アドレス・チャネルは、MPU サブシステムの ACP
に配線されるユーザー側波帯信号をサポートしています。すべての信号はデータを
除いて固定幅を持っており、リード・データおよびライト・データのチャネルにス
トローブを書き込みます。信号幅は、ブリッジのデータ幅設定によって異なります。
表 5–4 ~表 5–8 に、FPGA-to-HPS スレーブ・インタフェースによる FPGA ファブリッ
クへのすべての信号を示します。
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
2012 年 11 月
Altera Corporation
第 5 章: HPS-FPGA AXI ブリッジ
AXI ブリッジの機能の説明
5‒5
表 5–4 に、スレーブ・ライト・アドレス・チャネル信号を示します。
表 5‒4. FPGA-to-HPS ブリッジのスレーブ・ライト・アドレス・チャネル信号
信号
幅
入力 / 出力
説明
AWID
8 ビット
入力
ライト・アドレス ID
AWADDR
32 ビット
入力
ライト・アドレス
AWLEN
4 ビット
入力
バースト長
AWSIZE
3 ビット
入力
バースト・サイズ
AWBURST
2 ビット
入力
バースト・タイプ
AWLOCK
2 ビット
入力
ロック・タイプ — バリッド値は 00(通
常のアクセス)および 01(排他的なア
クセス)です
AWCACHE
4 ビット
入力
キャッシュ・ポリシー・タイプ
AWPROT
3 ビット
入力
保護タイプ
AWVALID
1 ビット
入力
ライト・アドレス・チャネル・バリッ
ド
AWREADY
1 ビット
出力
ライト・アドレス・チャネル準備
AWUSER
5 ビット
入力
ユーザー側波帯信号
表 5–5 に、スレーブ・ライト・データ・チャネル信号を示します。
表 5‒5. FPGA-to-HPS ブリッジのスレーブ・ライト・データ・チャネル信号
信号
幅
入力 / 出力
8 ビット
入力
ライト ID
WDATA
32、64、または 128 ビット
入力
ライト・データ
WSTRB
4、8、または 16 ビット
入力
ライト・データ・ストローブ
WLAST
1 ビット
入力
ライト・ラスト・データ識別子
WVALID
1 ビット
入力
ライト・データ・チャネル・バ
リッド
WREADY
1 ビット
出力
ライト・データ・チャネル準備
WID
説明
表 5–6 に、スレーブ・ライト応答チャネル信号を示します。
表 5‒6. FPGA-to-HPS ブリッジのスレーブ・ライト応答チャネル信号
信号
2012 年 11 月
幅
入力 / 出力
BID
8 ビット
出力
ライト応答 ID
BRESP
2 ビット
出力
ライト応答
BVALID
1 ビット
出力
ライト応答チャネル・バリッド
BREADY
1 ビット
入力
ライト応答チャネル準備
Altera Corporation
説明
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
5‒6
第 5 章: HPS-FPGA AXI ブリッジ
AXI ブリッジの機能の説明
表 5–7 に、スレーブ・リード・アドレス・チャネル信号を示します。
表 5‒7. FPGA-to-HPS ブリッジのスレーブ・リード・アドレス・チャネル信号
信号
幅
入力 / 出力
説明
ARID
8 ビット
入力
リード・アドレス ID
ARADDR
32 ビット
入力
リード・アドレス
ARLEN
4 ビット
入力
バースト長
ARSIZE
3 ビット
入力
バースト・サイズ
ARBURST
2 ビット
入力
バースト・タイプ
ARLOCK
2 ビット
入力
ロック・タイプ — バリッド値は 00(通
常のアクセス)および 01(排他的なア
クセス)です。
ARCACHE
4 ビット
入力
キャッシュ・ポリシー・タイプ
ARPROT
3 ビット
入力
保護タイプ
ARVALID
1 ビット
入力
リード・アドレス・チャネル・バリッ
ド
ARREADY
1 ビット
出力
リード・アドレス・チャネル準備
ARUSER
5 ビット
入力
リード・ユーザー側波帯信号
表 5–8 に、スレーブ・リード・データ・チャネル信号を示します。
表 5‒8. FPGA-to-HPS ブリッジのスレーブ・リード・データ・チャネル信号
信号
幅
入力 / 出力
8 ビット
出力
リード ID
RDATA
32、64、または 128
ビット
出力
リード・データ
RRESP
2 ビット
出力
リード応答
RLAST
1 ビット
出力
リード・ラスト・データ識別子
RVALID
1 ビット
出力
リード・データ・チャネル・バ
リッド
RREADY
1 ビット
入力
リード・データ・チャネル準備
RID
説明
HPS-to-FPGA ブリッジ
HPS-to-FPGA ブリッジは、コンフィギュレーション可能な幅の高性能マスタ・インタ
フェースを FPGA ファブリックに対して提供します。ブリッジは、FPGA に実装され
ているロジック、ペリフェラル、およびメモリへのアクセス権を HPS 内のほとんど
のマスタに提供します。アドレス空間の効果的なサイズは、0x3FFF0000、または
1 GB マイナス 64 MB です。アドレス空間のサイズは、HPS のペリフェラル、軽量
HPS-to-FPGA ブリッジ、オンチップ RAM、およびブート ROM によって 64 MB 分が占
有されているため、1 GB より小さくなります。32 ビット、64 ビット、または 128
ビットのデータ用に FPGA ファブリックに開いているブリッジ・マスタをコンフィ
ギュレーションできます。また、L2 キャッシュ・アドレス・フィルタリング・メカ
ニズムを通して、MPU サブシステムに開いたアドレス空間の大きさを低減すること
ができます。
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
2012 年 11 月
Altera Corporation
第 5 章: HPS-FPGA AXI ブリッジ
AXI ブリッジの機能の説明
5‒7
f 各ブリッジへのアクセス権を持っているマスタについて詳しくは、Cyclone V デバイ
ス・ハンドブック volume 3 の Interconnect の章を参照してください。L2 キャッシュ・
アドレス・フィルタリングについて詳しくは、Cyclone V デバイス・ハンドブック
volume 3 の Cortex-A9 Microprocessor Unit Subsystem の章を参照してください。
HPS ロジックのブリッジのスレーブ・インタフェースには 64 ビットのデータ幅があ
ります。ブリッジは、FPGA のロジックが HPS とは非同期に任意のクロック・ドメイ
ンを動作するようにする幅調整およびクロック・クロッシング・ロジックを提供し
ています。
1
MPU が FPGA からブートする場合、HPS-to-FPGA ブリッジはアクセスされます。MPU が
FPGA からブートする前に、SoC デバイスの FPGA 部分はコンフィギュレーションさ
れる必要があり、また、HPS-to-FPGA ブリッジはアドレス可能な空間にリマップされ
る必要があります。
f HPS-to-FPGA ブリッジのイネーブルについて詳しくは、Cyclone V デバイス・ハンド
ブック volume 3 の Interconnect の章を参照してください。
表 5–9 に、FPGA ファブリックに対して開いているコンフィギュレーション可能なマ
スタ・インタフェースを含む HPS-to-FPGA ブリッジの機能を示します。
表 5‒9. HPS-to-FPGA ブリッジの機能
ブリッジの機能
データ幅
(1)
クロック・ドメイン
L3 スレーブ・インタ
フェース
FPGA マスタ・インタ
フェース
64 ビット
32、64、または 128 ビット
l3_main_clk
h2f_axi_clk
バイト・アドレス幅
32 ビット
30 ビット
ID 幅
12 ビット
12 ビット
リード受け入れ
16 トランザクション
16 トランザクション
ライト受け入れ
16 トランザクション
16 トランザクション
受け入れ合計
32 トランザクション
32 トランザクション
表 5–9 の注:
(1) ブリッジ・マスタ・データ幅は、システム内で HPS コンポーネントをインスタンス化するときに
ユーザーによってコンフィギュレーション可能です。
5–3 ページの「グローバル・プログラマ・ビュー」に示すように、HPS-to-FPGA ブ
リッジの GPV には、ブリッジ・マスタの機能を調整する設定があります。HPS 内で
1 つまたは複数のトランザクションが未処理になるように、fn_mod レジスタを通し
てマスタの発行機能を調整することができます。また、fn_mod2 レジスタの
bypass_merge ビットを通してマスタ・バイパス・マージの機能をイネーブルするこ
とも可能です。この機能は、FPGA マスタ・インタフェースが 32 ビット幅または 128
ビット幅にコンフィギュレーションされるときにロジックの拡大および縮小によっ
てどのトランザクションも変更されないことを確認します。
1
2012 年 11 月
5–14 ページの「GPV クロック」に示すように、GPV へのアクセスをサポートするため
に l4_mp_clk クロックを修正することは非常に重要です。
Altera Corporation
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
5‒8
第 5 章: HPS-FPGA AXI ブリッジ
AXI ブリッジの機能の説明
HPS-to-FPGA ブリッジのマスタ信号
HPS-to-FPGA ブリッジのすべてのマスタ信号はデータを除いて固定幅を持っており、
リード・データおよびライト・データのチャネルにストローブを書き込みます。信
号幅は、FPGA ロジックへのブリッジ・インタフェースのデータ幅設定によって異な
ります。表 5–10 ~表 5–14 に、HPS-to-FPGA マスタ・インタフェースによる FPGA
ファブリックへのすべての信号を示します。
表 5–10 に、マスタ・ライト・アドレス・チャネル信号を示します。
表 5‒10. HPS-to-FPGA ブリッジのマスタ・ライト・アドレス・チャネル信号
信号
幅
入力 / 出力
説明
AWID
12 ビット
出力
ライト・アドレス ID
AWADDR
30 ビット
出力
ライト・アドレス
AWLEN
4 ビット
出力
バースト長
AWSIZE
3 ビット
出力
バースト・サイズ
AWBURST
2 ビット
出力
バースト・タイプ
AWLOCK
2 ビット
出力
ロック・タイプ — バリッド値は 00(通常
のアクセス)および 01(排他的なアクセ
ス)です
AWCACHE
4 ビット
出力
キャッシュ・ポリシー・タイプ
AWPROT
3 ビット
出力
保護タイプ
AWVALID
1 ビット
出力
ライト・アドレス・チャネル・バリッド
AWREADY
1 ビット
入力
ライト・アドレス・チャネル準備
表 5–11 に、マスタ・ライト・データ・チャネル信号を示します。
表 5‒11. HPS-to-FPGA ブリッジのマスタ・ライト・データ・チャネル信号
信号
幅
入力 / 出力
12 ビット
出力
ライト ID
WDATA
32、64、または 128
ビット
出力
ライト・データ
WSTRB
4、8 または 16 ビット
出力
ライト・データ・ストローブ
WLAST
1 ビット
出力
ライト・ラスト・データ識別子
WVALID
1 ビット
出力
ライト・データ・チャネル・バ
リッド
WREADY
1 ビット
入力
ライト・データ・チャネル準備
WID
説明
表 5–12 に、マスタ・ライト応答チャネル信号を示します。
表 5‒12. HPS-to-FPGA ブリッジのマスタ・ライト応答チャネル信号
信号
幅
入力 / 出力
説明
BID
12 ビット
入力
ライト応答 ID
BRESP
2 ビット
入力
ライト応答
BVALID
1 ビット
入力
ライト応答チャネル・バリッド
BREADY
1 ビット
出力
ライト応答チャネル準備
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
2012 年 11 月
Altera Corporation
第 5 章: HPS-FPGA AXI ブリッジ
AXI ブリッジの機能の説明
5‒9
表 5–13 に、マスタ・リード・アドレス・チャネル信号を示します。
表 5‒13. HPS-to-FPGA ブリッジのマスタ・リード・アドレス・チャネル信号
信号
幅
入力 / 出力
説明
ARID
12 ビット
出力
リード・アドレス ID
ARADDR
30 ビット
出力
リード・アドレス
ARLEN
4 ビット
出力
バースト長
ARSIZE
3 ビット
出力
バースト・サイズ
ARBURST
2 ビット
出力
バースト・タイプ
ARLOCK
2 ビット
出力
ロック・タイプ — バリッド値は
00(通常のアクセス)および 01
(排他的なアクセス)です
ARCACHE
4 ビット
出力
キャッシュ・ポリシー・タイプ
ARPROT
3 ビット
出力
保護タイプ
ARVALID
1 ビット
出力
リード・アドレス・チャネル・バ
リッド
ARREADY
1 ビット
入力
リード・アドレス・チャネル準備
表 5–14 に、マスタ・リード・データ・チャネル信号を示します。
表 5‒14. HPS-to-FPGA ブリッジのマスタ・リード・データ・チャネル信号
信号
幅
入力 / 出力
説明
12 ビット
入力
リード ID
RDATA
32、64、または 128
ビット
入力
リード・データ
RRESP
2 ビット
入力
リード応答
RLAST
1 ビット
入力
リード・ラスト・データ識別子
RVALID
1 ビット
入力
リード・データ・チャネル・バ
リッド
RREADY
1 ビット
出力
リード・データ・チャネル準備
RID
軽量 HPS-to-FPGA ブリッジ
軽量 HPS-to-FPGA ブリッジは、低性能インタフェースを FPGA ファブリックに対して
提供します。このインタフェースは、ソフト・ペリフェラルのコントロール・レジ
スタおよびステータス・レジスタにアクセスする上で便利です。ブリッジは 2 MB の
アドレス空間を提供し、FPGA ファブリックに実装されているロジック、ペリフェラ
ル、およびメモリへのアクセスを提供します。MPU サブシステム、DMA(ダイレク
ト・メモリ・アクセス)コントローラ、および DAP(デバッグ・アクセス・ポート)
は、FPGA ファブリックまたは GPV にアクセスする上で軽量 HPS-to-FPGA ブリッジを
使用できます。また、FPGA ファブリックのマスタ・インタフェースも、3 つすべて
のブリッジの GPV レジスタにアクセスする上で軽量 HPS-to-FPGA ブリッジを使用で
きます。
f 各ブリッジにアクセスするマスタについて詳しくは、Cyclone V デバイス・ハンド
ブック volume 3 の Interconnect の章を参照してください。
2012 年 11 月
Altera Corporation
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
5‒10
第 5 章: HPS-FPGA AXI ブリッジ
AXI ブリッジの機能の説明
FPGA ファブリックへのブリッジ・マスタは、32 ビットの固定データ幅を持っていま
す。HPS ロジック内のブリッジのスレーブ・インタフェースは、32 ビットの固定
データ幅を持っています。
軽量 HPS-to-FPGA ブリッジをセカンダリとして、FPGA ファブリックへの低性能マス
タ・インタフェースとして使用します。軽量ブリッジは、固定幅およびより小さな
アドレス空間を持っているため、FPGA ペリフェラルへのメモリ・マップド・レジス
タ・アクセスなどの低帯域幅トラフィックに便利です。この手法は高性能 HPS-toFPGA ブリッジからトラフィックを転換して、CSR アクセス・レイテンシおよびシス
テム性能全体を向上させることができます。
表 5–15 に、FPGA ファブリックへのマスタ・インタフェースを含む軽量 HPS-to-FPGA
ブリッジの機能を示します。
表 5‒15. 軽量 HPS-to-FPGA ブリッジの機能
ブリッジの機能
L3 スレーブ・インタ
フェース
FPGA マスタ・インタ
フェース
データ幅
32 ビット
32 ビット
クロック・ドメイン
l4_mp_clk
h2f_lw_axi_clk
バイト・アドレス幅
32 ビット
21 ビット
ID 幅
12 ビット
12 ビット
リード受け入れ
16 トランザクション
16 トランザクション
ライト受け入れ
16 トランザクション
16 トランザクション
受け入れ合計
32 トランザクション
32 トランザクション
5–2 ページの 図 5–1 に示しているように、軽量 HPS-to-FPGA ブリッジには 3 つのマ
スタ・インタフェースがあります。FPGA ファブリックに接続されているマスタ・イ
ンタフェースは、HPS から FPGA ファブリックのカスタム・ロジックに対して軽量イ
ンタフェースを提供します。HPS-to-FPGA ブリッジおよび FPGA-to-HPS ブリッジに接
続されている他の 2 つのマスタ・インタフェースは、各ブリッジへの GPV レジスタ
のアクセスを可能にします。
また、軽量 HPS-to-FPGA はこれら 4 つのインタフェースの動作を制御するための
GPV を持っています(1 個のスレーブおよび 3 個のマスタ)
。5–3 ページの「グロー
バル・プログラマ・ビュー」に示されています。
GPV によって、ブリッジ発行の機能を設定して 1 つまたは複数のトランザクション
をサポートできるようになります。また、GPV によって wr_tidemark レジスタライ
ト最高到達点を設定することができ、データが FPGA ファブリックのスレーブに書き
込まれる前にどれだけ多くのデータがブリッジでバッファされるか制御することが
できます。
1
デザインで軽量 HPS-to-FPGA ブリッジを使用しない場合でも、軽量 HPS-to-FPGA ブリッ
ジ用にクロック設定を修正することは非常に重要です。l4_mp_clk クロックは、
HPS-to-FPGA ブリッジ上および FPGA-to-HPS ブリッジ上での GPV アクセスで必要とな
ります。
軽量 HPS-to-FPGA ブリッジのマスタ信号
軽量 HPS-to-FPGA ブリッジのすべてのマスタ信号には固定幅があります。表 5–16 ~
表 5–20 に、軽量 HPS-to-FPGA マスタ・インタフェースによる FPGA ファブリックへ
のすべての信号を示します。
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
2012 年 11 月
Altera Corporation
第 5 章: HPS-FPGA AXI ブリッジ
AXI ブリッジの機能の説明
5‒11
表 5–16 に、マスタ・ライト・アドレス・チャネル信号を示します。
表 5‒16. 軽量 HPS-to-FPGA ブリッジのマスタ・ライト・アドレス・チャネル信号
信号
幅
入力 / 出力
説明
AWID
12 ビット
出力
ライト・アドレス ID
AWADDR
21 ビット
出力
ライト・アドレス
AWLEN
4 ビット
出力
バースト長
AWSIZE
3 ビット
出力
バースト・サイズ
AWBURST
2 ビット
出力
バースト・タイプ
AWLOCK
2 ビット
出力
ロック・タイプ — バリッド値は
00(通常のアクセス)および 01
(排他的なアクセス)です
AWCACHE
4 ビット
出力
キャッシュ・ポリシー・タイプ
AWPROT
3 ビット
出力
保護タイプ
AWVALID
1 ビット
出力
ライト・アドレス・チャネル・バ
リッド
AWREADY
1 ビット
入力
ライト・アドレス・チャネル準備
表 5–17 に、マスタ・ライト・データ・チャネル信号を示します。
表 5‒17. 軽量 HPS-to-FPGA ブリッジのマスタ・ライト・データ・チャネル信号
信号
幅
入力 / 出力
説明
WID
12 bits
出力
ライト ID
WDATA
32 bits
出力
ライト・データ
WSTRB
4 bits
出力
ライト・データ・アドレス
WLAST
1 bit
出力
ライト・ラスト・データ識別子
WVALID
1 bit
出力
ライト・データ・チャネル・バ
リッド
WREADY
1 bit
入力
ライト・データ・チャネル準備
表 5–18 に、マスタ・ライト応答チャネル信号を示します。
表 5‒18. 軽量 HPS-to-FPGA ブリッジのマスタ・ライト応答チャネル信号
信号
2012 年 11 月
幅
入力 / 出力
BID
12 ビット
入力
ライト応答 ID
BRESP
2 ビット
入力
ライト応答
BVALID
1 ビット
入力
ライト応答チャネル・バリッド
BREADY
1 ビット
出力
ライト応答チャネル準備
Altera Corporation
説明
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
5‒12
第 5 章: HPS-FPGA AXI ブリッジ
AXI ブリッジの機能の説明
表 5–19 に、マスタ・リード・アドレス・チャネル信号を示します。
表 5‒19. 軽量 HPS-to-FPGA ブリッジのマスタ・リード・アドレス・チャネル信号
信号
幅
入力 / 出力
説明
ARID
12 ビット
出力
リード・アドレス ID
ARADDR
21 ビット
出力
リード・アドレス
ARLEN
4 ビット
出力
バースト長
ARSIZE
3 ビット
出力
バースト・サイズ
ARBURST
2 ビット
出力
バースト・タイプ
ARLOCK
2 ビット
出力
ロック・タイプ — バリッド値は
00(通常のアクセス)および 01
(排他的なアクセス)です
ARCACHE
4 ビット
出力
キャッシュ・ポリシー・タイプ
ARPROT
3 ビット
出力
保護タイプ
ARVALID
1 ビット
出力
リード・アドレス・チャネル・バ
リッド
ARREADY
1 ビット
入力
リード・アドレス・チャネル準備
表 5–20 に、マスタ・リード・データ・チャネル信号を示します。
表 5‒20. 軽量 HPS-to-FPGA ブリッジのマスタ・リード・データ・チャネル信号
信号
幅
入力 / 出力
説明
RID
12 bits
入力
リード ID
RDATA
32 bits
入力
リード・データ
RRESP
2 bits
入力
リード応答
RLAST
1 bit
入力
リード・ラスト・データ識別子
RVALID
1 bit
入力
リード・データ・チャネル・バ
リッド
RREADY
1 bit
出力
リード・データ・チャネル準備
クロックおよびリセット
FPGA-to-HPS ブリッジ
HPS ロジックのブリッジのマスタ・インタフェースは、l3_main_clk クロック・ドメ
インで動作します。FPGA ファブリックに開いているスレーブ・インタフェースは、
ユーザー・ロジックによって提供される f2h_axi_clk クロック・ドメインで動作し
ます。ブリッジは、HPS とは非同期に FPGA ロジックが任意のクロック・ドメインで
動作できるようにするクロック・クロッシング・ロジックを提供します。
f f2h_axi_clk クロックについて詳しくは、Cyclone V デバイス・ハンドブック volume 3
の HPS Component Interfaces の章を参照してください。l3_main_clk および l4_mp_clk
クロックについて詳しくは、Cyclone V デバイス・ハンドブック volume 3 の Clock
Manager の章を参照してください。
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
2012 年 11 月
Altera Corporation
第 5 章: HPS-FPGA AXI ブリッジ
AXI ブリッジの機能の説明
5‒13
FPGA-to-HPS には 1 つのリセット信号 fpga2hps_bridge_rst_n があります。リセッ
ト・マネージャは、コールド・リセットまたはウォーム・リセット時に FPGA-to-HPS
ブリッジに対してこの信号を駆動します。
f リセット・マネージャについて詳しくは、Cyclone V デバイス・ハンドブック volume 3
の Reset Manager の章を参照してください。
HPS-to-FPGA ブリッジ
FPGA ファブリック内部へのマスタ・インタフェースは、h2f_axi_clk クロック・ド
メインで動作します。h2f_axi_clk クロックはユーザー・ロジックによって提供され
ます。HPS ロジックのブリッジのスレーブ・インタフェースは、l3_main_clk クロッ
ク・ドメインで動作します。ブリッジは、HPS とは非同期に FPGA のロジックが任意
のクロック・ドメインで動作できるようにするクロック・クロッシング・ロジックを
提供します。
f l3_main_clk クロックについて詳しくは、Cyclone V デバイス・ハンドブック volume 3
の Clock Manager の章を参照してください。h2f_axi_clk クロックについて詳しくは、
Cyclone V デバイス・ハンドブック volume 3 の HPS Component Interfaces の章を参照し
てください。
HPS-to-FPGA ブリッジには 1 つのリセット信号 hps2fpga_bridge_rst_n があります。
リセット・マネージャは、コールド・リセットまたはウォーム・リセット時に HPSto-FPGA ブリッジに対してこの信号を駆動します。
リセット・マネージャについて詳しくは、Cyclone V デバイス・ハンドブック
volume 3 の Reset Manager の章を参照してください。
軽量 HPS-to-FPGA ブリッジ
FPGA ファブリック内部へのマスタ・インタフェースは、FPGA ファブリックのカス
タム・ロジックによって提供される h2f_lw_axi_clk クロック・ドメインで動作しま
す。HPS ロジックのブリッジのスレーブ・インタフェースは、l4_mp_clk クロック・
ドメインで動作します。ブリッジは、HPS とは非同期に FPGA のロジックが任意のク
ロック・ドメインで動作できるようにするクロック・クロッシング・ロジックを提供
します。
f l4_mp_clk クロックについて詳しくは、Cyclone V デバイス・ハンドブック volume 3 の
Clock Manager の章を参照してください。h2f_lw_axi_clk クロックについて詳しく
は、Cyclone V デバイス・ハンドブック volume 3 の HPS Component Interfaces の章を参
照してください。
軽量 HPS-to-FPGA ブリッジには 1 つのリセット信号 lwhps2fpga_bridge_rst_n があ
ります。リセット・マネージャは、コールド・リセットまたはウォーム・リセット
時に軽量 HPS-to-FPGA ブリッジに対してこの信号を駆動します。
f リセット・マネージャについて詳しくは、Cyclone V デバイス・ハンドブック volume 3
の Reset Manager の章を参照してください。
2012 年 11 月
Altera Corporation
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
5‒14
第 5 章: HPS-FPGA AXI ブリッジ
HPS-FPGA AXI ブリッジのアドレス・マップおよびレジスタ定義
GPV クロック
FPGA-to-HPS ブリッジおよび HPS-to-FPGA ブリッジには、軽量 HPS-to-FPGA ブリッジ
によってマスタされている GPV スレーブ・インタフェースがあります。これらのイ
ンタフェースは l4_mp_clk クロック・ドメインで動作します。FPGA デザインで軽量
HPS-to-FPGA ブリッジを使用しない場合でも、HPS-to-FPGA ブリッジおよび FPGA-toHPS ブリッジの GPV レジスタをプログラムできるようにするために、有効な
l4_mp_clk クロックが生成されていることを確認する必要があります。3 つすべての
ブリッジの GPV ロジックは l4_mp_clk ドメイン内にあります。GPV について詳しく
は、5–3 ページの「グローバル・プログラマ・ビュー」を参照してください。
データ幅サイジング
HPS-to-FPGA ブリッジおよび FPGA-to-HPS ブリッジは、32 ビット、64 ビット、128
ビットのインタフェースを FPGA ファブリックに開くようにします。32 ビットおよ
び 128 ビットのインタフェースでは、ブリッジは 64 ビット固定のインタフェースへ
のデータ幅変換を HPS 内部で実行します。データが 64 ビット・インタフェースから
128 ビット・インタフェースに変換される場合、この変換は拡大(upsizing)と呼ば
れます。データが 64 ビット・インタフェースから 32 ビット・インタフェースに変
換される場合、この変換は downsizing(縮小)と呼ばれます。排他的アクセスが複数
のトランザクションに分割される場合、トランザクションは排他的アクセスの情報
を失います。
拡大または縮小のプロセス中、データ・マージング技術を使用してトランザクショ
ンもサイズ変更することができます。例えば、32 ビットから 64 ビットへの拡大のと
き、ブリッジの 32 ビット・インタフェースへの各ビートのサイズが 2 バイトのみの
場合、ブリッジは単一の 64 ビット・ビートを形成する最大 4 ビートをマージするこ
とができます。同様に、128 ビットから 64 ビットへの縮小のとき、ブリッジの 128
日と・インタフェースへの各ビートのサイズが 4 バイトのみの場合、ブリッジは単
一の 64 ビット・ビートを形成する 2 つのビートをマージすることができます。
ブリッジは、キャッシュ不可能とマークされたアクセス用にはトランザクション・
マージングを実行しません。
1
ブリッジがデータと応答をマージしないようにするために、GPV の bypass_merge
ビットを設定することができます。ブリッジが複数の応答を単一の応答にマージす
る場合、その応答は最高の優先順位を持つことになります。応答タイプには以下の
優先順位があります。
1. DECERR
2. SLVERR
3. OKAY
HPS-FPGA AXI ブリッジのアドレス・マップおよびレジスタ定義
f アドレス・マップおよびレジスタ定義は、このハンドブックの volume に付属の
hps.html ファイルにあります。ファイルを開くにはリンクをクリックします。
モジュールの説明およびベース・アドレスを見るには、スクロールして以下のモ
ジュール・インスタンスのリンクをクリックします。
■
fpga2hpsregs
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
2012 年 11 月
Altera Corporation
第 5 章: HPS-FPGA AXI ブリッジ
改訂履歴
■
5‒15
hps2fpgaregs
また、レジスタおよびフィールドの説明を見るには、レジスタ名にスクロールして
クリックします。レジスタ・アドレスは、各モジュール・インスタンスのベース・
アドレスに相対的なオフセットです。
f すべてのモジュールのベース・アドレスは、Cyclone V デバイス・ハンドブック
volume 3 の Introduction to the Hard Processor の章にも示されています。
改訂履歴
表 5–21 に、本資料の改訂履歴を示します。
表 5‒21. 改訂履歴
バー
ジョン
日付
変更内容
2012 年 11 月
1.1
GPV について説明。
2012 年 1 月
1.0
初版。
2012 年 11 月
Altera Corporation
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
5‒16
Cyclone V デバイス・ハンドブック
Volume 3:ハード・プロセッサ・システムのテクニカル・リファレンス・マニュアル
第 5 章: HPS-FPGA AXI ブリッジ
改訂履歴
2012 年 11 月
Altera Corporation