[ARM奮闘記 AT29LV1024]

★ROMの更新

フラッシュROMの更新は、アドレスバスとデータバスにコマンドを流してやることでモードを切り替え、 消去や書き込みを行います。また、書き込みの単位はセクタと呼ばれる単位で行わねばなりません。
AT29LV1024 は 128word (=256byte) のセクタが 512個集まって 128Kbyte の容量になっています。
コマンドの内容などは、AT29LV1024 のデータシートなどを参考にしてください。

★メモリマップ

再び、再び、メモリマップ。



RAMの方のマップ設定は前ページまでで済んでいますが、リマップしたために ROM がメモリマップ上から 姿を消しています(中央のマップ)。
EBI の機能を使うことで、未接続の領域に ROM を出現させることにします。

0x400000番地以降に出現させるには、EBI_CSR0 に 0x0040203D を設定します。
この設定により、メモリマップは上図右側のマップに変わります。

★ROM部分の詳細なマップ



ROMの容量は 64Kword (=128Kbyte) しかありませんが、1Mbyte の空間が ROMにマップされます。
0x400000以降 にマップした場合は、0x400000〜0x4FFFFF の番地は全て ROM に繋がっています。
ただし、128Kbyte しかないので、同じ内容が循環的にたくさん並んでいる状態になっています。
たとえば、0x400000番地の内容と 0x420000番地の内容は常に同じなことに注意してください。


[前へ][▲上へ][次へ]