中学生の子供のために、マイコンを触ってみる羽目になった コンピュータの5機能
哲さんは、土曜日の午後になると、愛犬ロボを連れて、啓二
さんの仕事部屋にやってきました。どんなことが始まるのか。
哲 :こんちは。愛犬連れてやってきたぞ。 啓二:おう、入れよ。 哲 :女房には、ロボの散歩と言って、1時間ぬけて来た。 啓二:1時間か、少ないなあ。 哲 :家事を手伝えと言われたところを、やっと抜けてきたんだぞ。 啓二:はやく、マイコンをマスターして、家事手伝いロボットを作ろうか。 哲 :やっぱ、家事手伝いは、若い女性じゃなくちゃ。 啓二:そんなこというから、奥さんが怒るんだぞ。 哲 :ハハハ、で最初の講義・実習は何だ。 啓二:コンピュータの5機能を答えてみろよ。 哲 :お前、馬鹿にしているのか。 啓二:そうじゃないよ。 親父として、子供に威厳を保てるかを試してやっているんだ。 哲 :入力、出力、演算、制御、記憶だよ。 啓二:よし、それじゃ、その5機能を英語で。 哲 :Input、Output、Compute、Control、Memoryだよ。 啓二:フムフム、いいじゃないか。 哲 :で、これが、ワンチップマイコンとどう関係するんだ。 啓二:ワンチップマイコンは、この5機能を全部ひとつのチップ に入れてあるんだ。 哲 :ワンチップって、そういうことなのか。 啓二:そう。で、ワンチップであるが故に、制約が出てくる。 哲 :どんな制約なんだ。 啓二:Windowsマシンで、アプリケーションプログラムが、メモリ不足で 動かないとなったら、どうする。 哲 :そんなの簡単。メモリを買って来て、実装するさ。 啓二:ワンチップマイコンの場合、大抵はメモリを増設できない。 外部に外付けできることもあるが、原則として増設できない と考えた方がよい。 哲 :結構不便なんだな。 啓二:そう。Windowsマシンで楽している奴等には、わからないだろうが、 プログラムもデータも定まったメモリの中に入るようにしなければ ならない。 そのため、マイコンにやらせる機能をしっかり押さえて、メモリ オーバーにならないようにする。 哲 :システム設計をきっちりしないとならないんだなあ。 啓二:そう言うこと。で、次の質問だ。Windowsマシンで、動作が鈍いと 思ったらどうしているのかな。 哲 :大抵のマシンならば1.2GHz程度で動いているから、あまり 感じないが少し前までならば、クロックを速くするために、ボード ごと交換してクロックアップしたなあ。 啓二:いい環境で仕事をしているなあ。それで、残業を減らしているのは、 羨ましい。 哲 :何だよ。妙に絡むじゃないか。クロックアップとワンチップマイコン にどういう関係があるんだよ。 啓二:まず、ワンチップマイコンは、制御分野では高速でも30MHz 程度なんだ。 そして、使われる分野によっては、高速を要求されているにも 関わらずに4MHz程度にすることもある。 哲 :何故そんなことするのかな。自分が苦しむだけじゃないか。 速いクロックで、楽すればいいじゃない。 啓二:この、地球温暖化増長者が。お前たちが、そんなことだから日本 の電力需要が増加して、二酸化炭素排出量が増える原因になるんだぞ。 ワンチップマイコンの適用分野は、電源の制約が厳しいことが多くて、 高速なクロックを利用すると、電力消費が激しくて使い物にならないし、 製品寿命を短くする原因になるんだ。 また、電池駆動を要求されたなら、連続使用時間と機能を秤にかけて、 クロックの周波数を落としたりする。 哲 :ワンチップマイコンを利用する設計者って、そこまで考えているのか。 啓二:当然。ワンチップマイコンを利用する技術者は、Windowsに関わる技術者 と比べて、1ケタ上の実力を要求されるのさ。それにハードウエアの知識 がないと手も足もでない分野もある。 哲 :ハードウエアって難しいのか。 啓二:ハードウエアそのものよりも、適用できる技術を、金と時間と能力を バランスさせて開発させなければならないことが難しい。 哲 :で、コンピュータの5機能が、それとどういう関係なんだよ。 啓二:5機能のうち、どこで何を担当させられるかを、マイコンごとに見極 めないと仕事にならないのさ。これから、段々教授していくけれどね。 哲 :コンピュータの5機能をもったワンチップマイコンって、どんなのが あるんだ。 啓二:国内外で20種類以上あるよ。でも、日本国内では、簡単に入手できる のは、ルネサスのH8/300、R8C/Tiny、M16C/Tiny、NECエレクトロニクスの 78kシリーズ、マイクロチップのPIC、ATMELのAVRなんかだろうなあ。 哲 :で、お前が薦めるワンチップマイコンはどれなんだよ。 啓二:どれでもいいんだが、NECエレクトロニクスの78kシリーズかな。 哲 :何故、78kシリーズを薦めるのかな。 啓二:開発環境が評価版ならばWebからダウンロードできるし、マニュアル その他も日本語で、フラッシュをつかっているために、1000回程度 プログラムを書きかえられる。それと、Z80のプログラミングモデル に似ているところから。 哲 :ふーん、そうなんだ。 啓二:今日は、これまでにしておこう。あまりたくさんやると、消化不良になる。 マイコンを扱うときは、コンピュータの5機能を、3機能に集約して考える こともある。 哲 :3機能って、どう集約するんだ。 啓二:さっき、Input、Output、Compute、Control、Memoryって答えたよな。 哲 :うん。 啓二:InputとOutputでI/O(アイオー)、ComputeとControlでCPU (シーピーユー)、Memoryはそのままメモリ。 哲 :なんで、そうやって集約するんだろう。 啓二:それは来週の話としよう。お疲れさん。