ARM7
名前 |
開始アドレス |
終了アドレス |
サイズ |
ミラーリング(有・無) |
幅 / モード |
BIOS (ARM7) |
0x00000000 |
0x00003FFF |
16 KB |
無 |
不明 |
メインメモリ |
0x02000000 |
0x023FFFFF |
4 MB (8 MB) |
有 |
16 / all |
共有メモリ |
0x037F8000 |
0x037FFFFF |
32 KB |
? |
32 / 16,32 |
プライベートメモリ |
0x03800000 |
0x0380FFFF |
64 KB |
有 |
32 / 16,32 |
レジスタ |
0x04000000 |
* |
* |
* |
* |
Wifi コントロール |
0x04800000 |
0x04800FFF |
* |
有** |
16 |
Wifi MAC メモリ |
0x04804000 |
0x04805FFF |
8 KB |
有** |
16 |
GBA カートリッジ ROM |
0x08000000 |
0x09FFFFFF |
32 MB |
無 |
16 / all |
GBA カートリッジ RAM |
0x0A000000 |
0x0A00FFFF |
64 KB |
有 |
8 / 8 |
ARM7 BIOS は PC チェックによって保護されています。
PROTECTION_CR 領域は、( PC < PROTECTION_CR ) の条件を満たす場合のみ読み込み可能です。また、( PC < 0x4000 )の領域のみ読み込み可能です。
ARM9
名前 |
開始アドレス |
サイズ |
ミラーリング(有・無) |
幅・モード |
ITCM |
0x00000000* |
16 KB |
無 |
32 / all |
DTCM |
0x00800000* |
16 KB |
無 |
32 / all |
メインメモリ |
0x02000000 |
4 MB (8 MB) |
有 |
16 / all |
共有メモリ |
0x03000000 |
32 KB |
有 |
32 / 16,32 |
レジスタ |
0x04000000 |
* |
* |
* |
パレット RAM |
0x05000000 |
2 KB |
有 |
16 / 16,32 |
ビデオ RAM |
0x06000000 |
? |
? |
16 / 16,32 |
スプライト RAM |
0x07000000 |
2 KB |
有 |
16 / 16,32 |
GBA カートリッジ ROM |
0x08000000 |
32 MB |
無 |
16 / all |
GBA カートリッジ RAM |
0x0A000000 |
64 KB |
有 |
8 / 8 |
BIOS (ARM9) |
0xFFFF0000 |
4 KB |
no |
不明/ all |
メインメモリは両方のCPUから使用可能ですが同時にアクセスした時、片方が遅れている場合は、どちらか1つが優先されます。
共有メモリは16KBごとに2つのバンクとしてアクセスします。
各CPUは、どちらか片方のバンクのみアクセス可能です。(切り替え可能です。)
バンク切り替えは、無線LANパケットやサウンドバッファのバッファパッシング機構の実装に使います。(訳注:バッファパッシングってどんなものなんでしょう…)
ARM9 BIOSはシステムセットアップに使います。
システム初期化時、ARM7 BIOSにシグナルを送っている間にいくつかのメモリをクリアします。
最終更新:2007年12月09日 22:10