先週は新人のチョンボでブルーが入っていた哲さん。今週も マイコンのコンセプトは、日本が引き出した
なにやら問題を抱えたようで、疲れ気味。愛犬ロボは、週に
一度の散歩で喜んでいるよう。哲さんの妻は、「亭主元気で
留守がいい。」とばかりに、土曜日の午後を待ちわびるまで
になってきた。憂鬱な哲さん、今日も肩を落として啓二さん
の仕事部屋にやってきた。部屋から、料理教室を終えた女性
が出てきたところ。うらやましそうに見送りながら、部屋に
入る。
哲 :いいなあ、毎回違う女性が相手になってくれて。 啓二:ちょっと待て。こっちはビジネスだぞ。 哲 :ビジネスでも、女性と会えるのはよいことだ。 啓二:何を言っているんだ。料理をしたことのない女性に、教えるのは大変なんだぞ。 哲 :へいへい、そういうことにしておきますか。 啓二:今日も浮かない顔だなあ。何かあったか。 哲 :先週の話が尾を引いて、もっとましな技術者を使えとクライアントが。 零細企業にそんな余裕はないって。 啓二:考え方ひとつ。10年後に仕事をまかせられる人材を抱えていると 思えば、どうってことないって。 哲 :お前、どうしてそう前向きなの。 啓二:起きてしまったことは消せない。やってしまったことは仕方がない。 それからどれだけリカバーできるか、ではないのか。 哲 :本当に子供にロボットを作らせてやるだけになれるかな。 啓二:落ち込むなって。今日はマイコンのコンセプトの話をしよう。 哲 :マイコンなんて、この世になければいいんだ。 啓二:マイコンのコンセプトは、実は日本から出たんだぞ。 あのIntelの創成期に、電卓用のICを設計・開発して くれるように依頼したのはBUSICOMという日本の会社だった。 哲 :それが、今の自分の苦しみを生み出したんだ。 啓二:相当重傷だな、これは。 そして、Intel4004というマイコンを設計・開発の技術者の一人は 日本人の嶋正利さんなんだ。8008、8080そしてZ80も手がけたんだ。 哲 :それがどうしたんだ。 啓二:嶋さんは、電気・電子の専門家ではなくて、化学の専門家なんだ。 そして、Intelは創成期はメモリ開発が主体で、電卓用IC開発を 扱う部署は、花形ではなかった。その中で世界を震撼させる技術 が生まれたんだ。要するに、専門家でなくても、花形でなくとも すばらしい技術が生まれる要素はある。人間でも、今は一見輝く ことがなくても、地上の星になる可能性もあるんだ。 哲 :そうかなあ。 啓二:電卓用に専用ICを、汎用で実現したことに値打ちがある。 そしてワンチップマイコンは、このIntel4004がアダムでありイヴ なんだ。IntelのPentiumシリーズだって、MotorolaのPowerPCだって 日本から電卓専用IC設計・開発の依頼がなかったら生まれてない かも知れないんだぞ。 ひとつの側面で見れば、新人君はどうしようもないかも知れない。 が、自分の技術に対して自信をもって反発するような気概のない 人間は大成しないぞ。 哲 :まあ、そうだが。 啓二:クライアントにしても、期日までに、一定品質のソフトを納品 できれば文句は言えないはず。自社の中で、誰を割り当てるかは その企業の勝手で、内政干渉と突っぱねるくらいでないと部下の 信頼も得られないのでは。 哲 :確かに。でも納期がなあ。 啓二:納期を厳守することは大切だが。その納期にあわせるが故にソフト の品質が落ちて、後日クレームの嵐になるようなら、3段ロケット のように、基本機能の確認をしつつ、機能強化でやればいいじゃん。 哲 :かな。少なくとも納品してから、修正につぐ修正よりもよいか。 それで掛け合ってみるか。 啓二:で、マイコンの話だが、4004は電卓を3つのICで実現した。 この3つのICの機能をまとめると、CPU、I/O、メモリと なる。そして、データの扱い方はリトルエンディアンで、I/O は、独立したI/Oアドレスを持っている。 哲 :そう言えば、前回まで、そんな話だったような。 啓二:次にCPUの内部で、制御はマイクロプログラム方式を採用して いる。マイクロプログラムは、デジタル回路の動作をカウンタと レジスタで記述し、ROMの中に入れてある。 プログラムカウンタで命令を取り出し、解釈して実行するのが、 マイクロコンピュータの基本動作。このプログラムカウンタでの 命令取り出しにも、マイクロプログラムが利用さている。 哲 :マイクロプログラムの例を説明してくれよ。 啓二:よし、きた。プログラムカウンタで命令を取り出すときは、次の ようにする。 プログラムカウンタの内容を、MARレジスタに転送。 MAR:Memory Address Register MARレジスタの値を、プログラムROMにアドレスとして与える。 プログラムROMから出力されるデータを、IRレジスタに転送。 IR:Instruction Register この3つの動作で、命令が取り出せる。レジスタに値をセットする ためには、クロックが必要なので、クロック入力に信号を0→1→0 を与える。これがマイクロプログラムの役割。 哲 :マイクロプログラムって、案外単純なんだなあ。 啓二:コンピュータは、デジタル回路の応用の一つなの。そしてデジタル 回路はあまり複雑なことはできないから、プログラムを利用して、 複雑なことができるようにしているのさ。 哲 :へえ、コンピュータって慣れると、自分で作れそうだなあ。 啓二:そうさ。今は、自分専用あるいは分野専用にコンピュータを設計して 使っている技術者もたくさんいるんだ。ロボットのように単純だけど 高速あるいは並列動作が必要な場合は、マイコンを多数利用したり、 関節動作に特化したコンピュータを自分で設計して使っていたりする。 哲 :うん、うん。 啓二:そのためには、一つのマイコンをハードウエアからソフトウエアまで 触れて、良し悪しを体感しないと、イメージがないので判断できない。 哲 :新人には、仕事を与えて、蛇のように、丸呑みして力ずくで消化させて みないと駄目ということか。 啓二:そういうこと。料理教室の食材が少し余ったんだ。酒の肴程度のものは できるけど、食べるか。 哲 :食べる、食べる。ビール買ってくる。 啓二:じゃ、その間に作っておくから。ロボにも何かやらないとな。 (1時間の散歩が、5時間近くになり、帰宅した哲さんが 奥さんの頭に角があるのを見たのは、言うまでもない)