AR# 47167

14.1 EDK、Zynq - MicroBlaze プロセッサを接続した状態で PS DDR メモリの半分のみが使用されるのはなぜか

説明


processing_system7 で AXI ポートをイネーブルにすると次の情報メッセージが表示されます。MicroBlaze プロセッサを接続した状態で PS DDR メモリの半分のみが使用されるのはなぜでしょうか。

INFO: You can modify the DDR address range accessed by Programmable Logic through the processing_system7 AXI slave interfaces. If MicroBlaze processoris a master on processing_system7 AXI slave interfaces, please use the top half of the address range (Base Address = 0x20000000; High Address = 0x3FFFFFFF). For all other masters, any subset of the DDR addresses can be used.

ソリューション

MicroBlaze は DDR アドレス範囲の上位半分のみにあく背背うします。理由は次のとおりです。

- MicroBlaze のリセット ベクターはアドレス 0x0000_0000 で固定されている。
- レイテンシを最小限にするためリセットおよびその他の例外ベクターを保存するのに、ほとんどの MicroBlaze トポロジではローカル ブロック RAM (LMB) が使用される。
- デフォルトの PS DDR/OCM アドレス範囲には 0x0000_0000 が含まれる。
- EDK ではアドレス範囲に 2^n アドレス アライメントが必要。

つまり、PS DDR 範囲にアクセスするようになっている MicroBlaze デザインの場合はたいてい、DDR の上位半分に関連する PS AXI インターフェイス アドレスを変更する必要があります。[System Assembly View] の [Address] タブで関連 BASEADDR パラメーターを変更すると、これは可能になります。

アドレス 0x0000_0000 をホストするのに LMB が使用されない場合は、この制限は適用されず DDR アドレス範囲全体が使用されます。

アンサー レコード リファレンス

マスター アンサー レコード

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
52540 Zynq-7000 SoC - よく寄せられる質問 (FAQ) N/A N/A
AR# 47167
日付 10/24/2012
ステータス アクティブ
種類 エラー メッセージ
デバイス
ツール
IP