MEMORY
{
- vector : o = 0x400000, l = 0x00400
- rom : o = 0x400400, l = 0x0fc00
- ram : o = 0x410000, l = 0x10000
+ vector : o = 0xFFFFE160, l = 0x00400
+ rom : o = 0x00400400, l = 0x0fc00
+ ram : o = 0x00410000, l = 0x10000
}
SECTIONS
<環境>
ボード:Interface 2006年6月号付録基板+メモリ増設環境
+ (未確認ですが株式会社イーエスピー企画さんの
+ 互換ボードでも動くと思います)
- ソフト:当方ルネサスのモニタプログラムをROMに焼いてます。
- (つまりは 外部SRAM(0x00400000)からベクタを配置です)
-
- コンパイラ:shc (ルネサスの評価版コンパイラ)
+ コンパイラ:shc (ルネサスのコンパイラ 当方は評価版で確認)
もしくは
sh-elf-gcc
メイク:cygwinからGNU makeを使用
- (すいません、そのうち nmake とかの対応も考えます...)
+ (すいません、そのうち nmake とかの対応も考えます)
- シリアル:38400bps 8bit ノンパリ ストップビット1bit でよいかと。
+ シリアル:38400bps 8bit ノンパリ ストップビット1bit。
<使い方>
gcc の場合: hos-v4a/sample/sh/sh7144/gcc
- に移動して、gmake -f gmake.mak MEMMAP=ram
+ に移動して、gmake -f gmake.mak
と打ち込みます。
- 出来上がった、sample_ram.abs (shcの場合)や、sample.mot (gccの場合)を
-ã\83¡ã\83¢ã\83ªã\81«ã\83ã\83¼ã\83\89ã\81\97ã\81¦å®\9fè¡\8cé\96\8bå§\8bã\81\97ã\81¦ください。
+ 出来上がった、sample.mot をルネサスさんの Flash Development Toolkit
+ã\81ªã\81©ã\82\92ç\94¨ã\81\84ã\81¦ã\83\95ã\83©ã\83\83ã\82·ã\83¥ã\83¡ã\83¢ã\83ªã\81«ç\84¼ã\81\8dã\81\93ã\82\93ã\81§ください。
5人の哲学者がそれぞれ、考えたり、お腹を空かせたり、食事したりする様子が
シリアルに表示されれば成功です。
<備考>
- なお、MEMMAP=ram を指定しなければ、ROM動作用のファイルが
-出来上がるはず(こちらは増設RAM不要)ですが、Flashの書き換え寿命もあり
-当方は実験していません。
+ 当方でフラッシュメモリの書き換え寿命の問題もあり、基板にRAM増設を
+行った後に、主にルネサスさんのモニタプログラムを利用して開発して
+おります。
+
+ ビルド時に
+
+ gmake -f gmake.mak MEMMAP=ram
+
+ とすることで、RAMロード用の sample_ram.mot が出来上がります。
+
+ 参考までに動作確認したモニタプログラムの設定です。
+
+ Monitor Vector 00000000 - 000002BF
+ Monitor ROM 00000400 - 000057A1
+ Monitor RAM FFFFE000 - FFFFE15F
+ User Vector FFFFE160 - FFFFE41F
+
+ 外部RAMアクセスに必要な設定はモニタプログラム側で行う
+必要があります。
+ 上記以外の設定の場合は、ご使用のメモリマップに合わせて
+サンプルを変更してください。
==============================================================================