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

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


2006-07-01 (Sat)

[Thoughts][Hard] Micro-Master: a basic computer training kit

マイコン世代の強み

現在、プログラマーやエンジニアとして指導的立場にある方々の多くは、マイコンの洗礼を受けて育っていることでしょう。かってパソコン(Personal computer)が、マイコン(My computer)と呼ばれていた頃、マイコン少年達は、I/OやASCIIに掲載されたダンプリスト片手に、ゲームの機械語入力に興じていました。

今となっては信じがたいことですが、当時はショップの中で、MZ-80 や PC-8001 相手に、10KBを超える16進数のマシン語を延々と数時間も打ち込み続けるマイコン少年達が、列をなしていたのです。店員の方々も現在とは違い、随分と寛容であったと思います。

マシン語入力のために活用された機能が、今は亡きモニターコマンドです。当時のマイコンは電源ONと共に、ROM-BASIC が起動していましたが、MON コマンドでモニターモードに移行することで、メモリー内容の参照修正・機械語の実行・カセットテープへのLOAD/SAVEなどを行うことができたのです。

BASIC から入門したマイコン小僧達は、ゲームのコード入力を通じて、ある者は機械語の世界に目覚め、ハードウェア制御の妙味に取り憑かれていきます。かの Linus 氏もそうであったように、多くのプログラマーが8ビットマイコンを通じて、システムプログラミングの基礎を身につけたことでしょう。

しかしながら、現代のパソコンは "進化の途中" で ROM-BASIC とモニターコマンドを失ってしまいました。コンピュータを学ぼうとする若い人達にとって、64ビット全盛の現在は、さぞかし "学びづらい" 時代になっているのではないかと思います。

一方で、8ビット全盛時代を経験することができた世代は、恵まれていたと同時に、ある意味 "ずるい" と言えるかもしれません。自分達は、しっかりと基礎鍛錬を終えているにもかかわらず、後輩に対しては応用を教えるばかりで、基本の指導にはあたっていないからです。

マイコンよ、もう一度

私は自身の経験から、一見遠回りに見えようとも、最初に基本を学ぶことが何よりも大切であると信じていますから、今の若い人達に必要なものは最新の64ビットパソコンではなく、8ビットもしくは16ビットのマイコンではないかと常々考えてきました。

しかし、世の中は最新の技術やハードウェアの学習を勧めるばかりで、"温故知新(ふるきをたずねて新しきを知る)" を叫ぶ人は皆無に近い状況です。世の趨勢が正しいのか、それとも自分の考えが歪んでいるのか。自分の信念を疑ってしまうことも多いわけですが、時として、出版界やネット上で志を同じくする人々に出会うことがあります。

Elenco Electronics

Micro-Master ある日、8ビットマイコンのトレーニングキットを探している時に出会った、米国の Elenco という会社はそのひとつ。Elenco は学校教育用の電子教材や工具を扱うメーカーであり、自社開発キットも豊富に取り揃えています。充実した同社のカタログを眺めていると、時間が立つのを忘れてしまいそうです。

同社のキットの中で、一際目を引いたものが、Micro-Master。このキットのタイトルは "A Basic Computer Training Kit to Leartn the Fundamentals of Computers" となっており、中身は往年の i8085 CPU を使ったマイコントレーニングボードです。

トランク風のプラスチックケースの中には、基板とパーツが丁寧に梱包されており、ユーザは手作業でトレーニングボードを仕上げることになります。

Micro-Master the ultimate training board

Micro-Master マニュアル表紙 ボード上には、アドレス・データバスを操作するスイッチと、バス制御スイッチ、モニターROM を操作するための16進テンキーが用意されており、気分はミニコンのオペレーター。ちなみに、NEC TK-80 にアドレス・データバスの操作スイッチはありませんでした。後で述べるように、Micro-Master は、より深いハードウェアレベルでメモリ操作を学ぶことができるのです。

気になるお値段ですが、私が購入した時点で定価はUSD 149.00でした。現在は、166.50ドルに値上がりしているようですが、それでもこの手のトレーニングボードとしては、破格の安さだと思います。Z-80などを使った8ビットCPUトレーニングボードは、日本も含め数多く販売されていますが、"自分の手を動かし内部を理解できる" ボードは、私が調べた限り、この Micro-Master しか見あたりません。

8ビットマイコンに限らず、体験することと、理解することは、全く違う次元の話です。世の中のトレーニングボードのほとんどは、ユーザに体験を積ませるだけのものであり、"理解の高み" に導いてくれるものではありません。

この点において、Micro-Master は歴史に残る名トレーニングボードと言えます。まず私が驚かされたのは、110ページを超えるマニュアルでした。通常、電子工作キットについてくるマニュアルというのは、ペラペラの数ページと相場が決まっていますが、Elenco の製品に添付されているものは、立派な教科書と言って良い内容になっています。

Simplified architecture

Micro-Master System Block ボードの製作に関しても、通常はハンダづけの解説が機械的に進むものですが、Micro-Master の場合は、まず最初に電源回路とアドレス・データバスのスイッチ組付けを行い、次に RAM 周りを実装。マニュアル操作による RAM への READ/WRITE を学びます。仕組みを理解しながら進むことが、徹底されているのです。

右のブロック図(拡大可能)に示す通り、Micro-Master は CPU に 8085, RAM に I/O ポートを備えた 8156 (256B RAM), ROM に 2816 (2KB)を採用しており、マイコンシステムとしては最小限の構成となっています。PDP-11 もそうでしたが、コンピュータの基本構造はかくも単純なものなのです。

最初に登場する 8156 を使った RAM の学習では、アドレスバス9ビット、データバス8ビット、コントロールバスとして ALE (Address Latch Enable), RD (ReaD from memory), WR (WRite to memory), IO/M (Input Output/Memory) の計4ビットを 8085 CPU に代わり、ユーザがスイッチ操作でメモリ内容を制御します。

このように段階を踏みながら、Micro-Master の理解は進みます。現代でマイコンと言えば、PIC, AVR などの Micro Controller Unit (MCU)を指しますが、残念なことに MCU もまた、進化の過程でコントロールバス・アドレスバス・データバスを失ってしまいました。

3つのバスはコンピュータアーキテクチャを理解する上で、避けては通れない重要な概念ですが、もはや紙の上でしか読んだことのない人の方が多いのではないでしょうか。Micro-Master のような優れた教材が、今後も末永く生産されることを願ってやみません。

Tequipment.NET (追伸その1)

現時点で、国内に Micro-Master を取り扱っているお店はないようです。是非とも入手したい方は、Tequipment.NET を訪ねると良いでしょう。

Micro-Master の商品コードは MM-8000K で、こちらから注文可能です。定価は改定前のままであり、売価は現時点でUSD 127.46。危険です。"ポチっと病" に注意しましょう。

6502マイコン・ボード製作記 (追伸その2)

トランジスタ技術2006年5月号から、桑野雅彦氏による "6502マイコン・ボード製作記" という連載記事が始まっています。このタイトルを目にした時、私は思わず我が目を疑いましたが、夢ではなかったようです。連載は続いています。

6502 と言えば、ファミコンや Apple II に搭載された CPU として有名ですが、現在でも Western Design Center (WDC)社が市販していることに、桑野氏が目を付けられたようです。

残念ながら、誌面に限りがあるため、全くの初心者がこの内容を理解することは難しいでしょう。Micro-Master の次の教材としては、良いかもしれません。

それにしても、この企画を通したトランジスタ技術編集部の方は凄い。7月号の Reader's forum には、同連載へのエールがふたつ掲載されていますが、気になるのはどちらも往年のマイコン世代ということ。若い世代の人達にこそ、この記事の良さと内容を分かってもらいたいものです。

昨今は組み込み技術が花盛りのようですが、基本技を身につける前に応用技へ挑戦することは、大変な危険を伴います。まる1ヵ月、8ビットもしくは16ビットCPUの基本を学ぶことは、その後の10年を大きく変えてくれることでしょう。

Flite MPF-1B Microprocessor Training System (追伸その3)

8ビットマイコンの話題ついでにもうひとつ。冒頭で、マイコン少年の媒体がカセットテープであったことに触れましたが、もう一度あの "ピーガー" を体験してみたい方も多いことでしょう。

カセットインターフェースを持ったトレーニングボードは、もはや絶滅したかと思いきや、それがあるんです。英国の Flite 社 が販売している MPF-1B は、まさに往年のマイコン少年少女の夢を再現してくれる Z-80 ボード。

"この" 世界では、結構有名なボードです。私自身は購入していませんが、噂によると教材がかなり充実しているようです(ただし高価)。本体はアセンブリ済みであり、Micro-Master のように自分自身の手で理解しながら組み上げるタイプではありません。

Flite社は Z-80 の他にも、68000, 8086, 8032, 68EC020 など多種類のトレーニングボードを開発・販売しています。68K のトレーニングボード(FLT-68K)は、世界的に見ても大変珍しいものでしょう。