« Dual Display (^-^) | トップページ | バーンダウン・チャート (^-^) »

2007年3月 4日 (日)

CPU選定で迷う (^-^)

仕事の山場はあと2週間弱になり、そのあと年休消化が待っています。先が見えてきたせいもあって、そろそろ今年のロボット作りの意欲がわいてきました。

昨日は今年のマイクロマウスの構想を練っていましたが、CPUの選定でかなり迷っています。昨年のマウスはH8/3052F(ROM 512KB, RAM 8KB)でITRONを載せて使用したROMが67KB、RAMが8KB。Basic MouseのときはH8/3664F(ROM 32KB, RAM 2KB)でROMが足りなくなったのでROMの大きいCPUを使ったのですが、今度はRAMが足りなくなった。(もともと2KBで動けたんだから、足りなくなるはず無いのに)

RAMが足りないと何が悪いかといいますと、タックオーバーフローを起こしてプログラムが暴走する危険性があったり、デバッグやプログラム開発中のトレース用にログを残すことができなかったりするわけです。さらに言うと、デバッグするのにコードを修正するたび毎回CPUのROMにプログラムを転送するのですごく時間がかかり、非効率的です。(60KB程度を転送するのに1~2分はかかります。)RAMがたっぷりあればRAMにプログラムを転送してデバッグできるので、転送は数秒でできて待ち時間が大幅に減ります。

話をまとめると、私のCPUに対する要求は次の項目になります。

  1. ROM 128KB以上
  2. RAM 256KB以上(外付けでも可)
  3. Clock周波数 16MHz以上
  4. CPUボードの入手が容易であること
  5. CPUボードのサイズがマイクロマウスの上に載せられる大きさであること
  6. 開発環境(コンパイラ、リンカ、統合開発環境)が安価であること
  7. 安価なJTAGデバッガもしくはモニタデバッガを利用できること

2,7はプログラムをRAMに転送してC/C++のコードを1行ずつステップ実行させてデバッグしたいという要求です。なので、開発効率に目をつぶればRAMはもっと少なくても可。

今回はC++に挑戦したいので、開発環境をルネサスのHEW+GCCで行くつもりです。なので、6はすでにクリア済み。デバッガは、アルファプロジェクトのXrossFilderがJTAGデバッガとしては飛びぬけて安い(※)ので、目を付けています。

※ H8やSH用のJTAGデバッガの相場は数年前は20~30万円くらいしていたのが、ここ何年かで10万円台のものがでてきて激安になったと思っていました。それに対して6万円ちょっとというのは破格も破格。

上記の要求に合いそうなCPUボードをいくつか検討しつつ、迷っています。

  • RAMへの転送さえ目をつぶれば、SH-Tinyのボード(\2,940)がサイズも手ごろですごく魅力的です。デバッガとあわせても1万円でお釣りがきます
  • 昨年使ったH8/3052FにSRAM外付けだと、安価なJTAGデバッガが見つかりません。H8-300H系の安価なJTAGデバッガを希望します。
  • もっとRAMをふんだんに使いつつボードのサイズを小さくするなら、秋月のAKI-H8/3069F(ROM 512KB, 内蔵RAM 16KB + 外付けDRAM 2MB)とか。手元に1枚あります。
  • 昨年のInteface6月号についてきたSH7144F(ROM 256KB, RAM 8KB)にSRAM 512KBを外付けするとか。ボードのサイズがAKI-H8/3052Fよりちょっと小さい上、雑誌を2冊かってCPUボードを2枚確保済み。先ほどのXrossFilderを使うならこれがベスト? でも、今後は入手できない可能性大。

高々H8/3664Fでもできる世界にSHを持ち込むのは、ネズミを狩るのにマシンガンを持ち出しているような気もして、やりすぎ感を否めません。

う~ん、悩むなぁ。

« Dual Display (^-^) | トップページ | バーンダウン・チャート (^-^) »

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/167990/14127379

この記事へのトラックバック一覧です: CPU選定で迷う (^-^):

« Dual Display (^-^) | トップページ | バーンダウン・チャート (^-^) »

最近の写真