[Armadillo:04764] [Armadillo-J][Type C(4M)] ブートローダーについて

村上満 email@hidden
2009年 11月 20日 (金) 17:51:23 JST


はじめまして。
村上と申します。

ブートローダーについてわからないことがあるのでお教え願います。

ハードウェア・・・Armadillo-J Type C(4M)

ブート手順を調べるためにソースコードを読んでいます。
使っているArmdillo-J Type Cはブートローダー(hermit)が
書き換え不能とのことなのですが、
メモリマップのどこに配置されて、
どういった手順でカーネル起動に至るのでしょうか?

<調べたこと>
旧タイプであるS-TYPEはブートローダーの書き換えが可能なので、
Webからソースコードをダウンロードして見ました。
以下ブート手順です。
1. エントリー(_start_flash)から、シリアルの初期化
2. スタックをDRAM0x00800000に設定
3. 0x00700000にコードをコピー
4. jump to 0x00700000(main)
(以下省略)

しかし、プログラムカウンタがいきなり、
_start_flashになっていることはないのではないかと思っています。
私は以下のようではないかと想像していました。
1. 電源投入時は、0番地から起動するので、ROMのミラーが0番地に見えている。
2. 0番地の命令が「hermitの先頭付近の番地にJump」
3. リマップレジスタ?をたたいて、0番地にRAMが見える
4. _start_flashにJump

BoardParameterの領域にブートローダーがいるのかと思い、
このエリアをdumpして、ニーモニックを眺めていましたが、
よくわかりませんでした。

Netsilicon ns7520のデータシートを見ましたが、
それらしい記述がみあたりませんでした。

よろしくお願いいたします。
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://lists.atmark-techno.com/pipermail/armadillo/attachments/20091120/f9f84533/attachment.html>


armadillo メーリングリストの案内