/ «2005-01-11 (Tue) ^ 2005-01-14 (Fri)» ?
   西田 亙の本:GNU 開発ツール -- hello.c から a.out が誕生するまで --

Categories Books | Hard | Hardware | Linux | MCU | Misc | Publish | Radio | Repository | Thoughts | Time | UNIX | Writing | プロフィール


2005-01-12 (Wed)

[MCU] 彷徨

遙かなるガンダーラ

さて、理想の16ビットアーキテクチャを求めて、旅が始まった訳だが、ガンダーラへの道のりは決して平坦なものではなかった。途中の道中をつぶさに記述していくと、立派な連載が出来上がってしまうので止めておくが、いくつか重要な点を記しておこう。

Renesas H8

私も日本人であるから、当初は国産MCUもいくつか下調べを行った。ところが、国内メーカーは、私のような一見客を最初から相手にする気がないのか、それとも彼らのプレゼンテーション能力自体に問題があるのか、Web 上に用意された資料のお粗末さは目を覆うばかりである。

具体的に、現在日本でベストセラーとなっているルネサスの H8/300H (旧日立)を見てみよう。トップページを開くと、H8/300H グループの一覧が家系図のようにズラズラと現れ、いきなり「どこ見ていいのか、訳分かんない」状態に陥る。

それでもめげずに、Overview を探すと "シリーズ概要" という項目の中に、H8/300H シリーズの特徴 というページが見つかる。「これこれ、このページを読めば概略が分かるのねぇ〜」と鼻歌交じりでクリックすると、一瞬我が目を疑うことになる。呪文にも等しいこの10行から、私達に一体何を読み取れというのか?H8/300H というプロセッサに興味をもって訪れたユーザーに対して、これほど冷たい仕打ちはないであろう。

「まぁまぁ、ここは日本だから」と、切れかかった自分をなんとか抑えつつ、「概略が用意されていないなら、ドキュメントを見れば良いのよ」と、次に "ドキュメント一覧" をクリック。と、そこに現れ出でたるは、153行にもおよぶ H8/300H ファミリーのデータテーブル。どうやら、「自分の目的にかなったMCUのPDFを、勝手にダウンロードして頂戴」ということらしい。新しいアーキテクチャを理解する上で、極めて重要な意味を持つアプリケーションノートも、閑古鳥が鳴くほど寂しい品揃えである。

悲しいことだが、これらのページを見る限り、エンドユーザーに自社製品を理解してもらおうという姿勢は、微塵も感じられない。大口の顧客に対しては、ルネサス社からの手厚い技術指導が用意されているのかもしれないが・・。

教材として考えた場合、プロセッサの単純さや、命令コードの対称性が重要になることはもちろんだが、それ以上に大切なことは、優れたドキュメント体系が整備され、良質のサンプルコードが用意されているか、否かである。こうして、H8 は教材候補の中から真っ先に消えていった。

蛇足ながら、同じ Renesas でも北米のページは、日本のものとは少々趣がことなる。試しに、同じ話題を扱った マイクロコンピュータ ラインアップMPU and MCU を見比べてみてほしい。また、H8S family のページ上に用意された Architecture というページからは、複雑なファミリー全体像を図から理解してもらおうという、工夫の跡が伺える。レジスター構成図もきちんと添えられており、感心(というか、本来これが当たり前なのだが)。日米のこの差は、一体何に由来しているのであろうか?

Atmel AVR

その後も遍路を重ね、購入した評価ボードは数知れず。途中、Atmel 社AVR 嬢に、しばし心を奪われることになった。Atmel 社のドキュメント群は質が高く、Application notes も充実していることに、いたく感心。すっかり Atmel 贔屓になってしまったのだが、命令体系、中でもアドレッシングモードがMCU向けにかなり特殊であったこと、プログラム書き込みに別途ライターが必要であること、下位機種には JTAG が装備されていないことなどから、最終的に断念した。

一方で、AVR は Olimex を始め、優れた学習キットが市場に出回っているので、手軽に楽しむことが出来る。また、binutils/GCC も AVR をサポートしており、GNU 開発ツールを活用してマイクロコントローラー・プログラミングに挑戦したいという方には、お勧めのプロセッサーと言えるだろう。