[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 メーリングリストの案内