マイコンと周辺回路の基礎

[| ]  最終更新: 2011/02/10 19:17:28

マイコンとは

マイコンはMicro Computer、文字通りの意味なら「小さなコンピュータ」です。
その昔、コンピュータといったら部屋一つが必要だった時代、机の脇に置けるくらいのコンピュータが登場して「ミニコン」と呼ばれるようになった次の時代として、LSI1個(当初は数個)にコンピュータの主要部分が収まるようになりました。

現在では、主に、身近なコンピュータであるパソコンの処理部分(=CPU)と比較して、「小さい」という意味で解釈されることが一般的となった一方、「組み込みマイコン」と「組み込み」という言葉がつくことが多くなりました。 組み込み、とは、なにかの機械/装置に組み込んで使う、ということを意味します。 パソコンや電卓は「計算する」(compute=計算する)ことが目的なので、それ自体の演算回路は組み込みとは呼ばれませんが、ビデオデッキや洗濯機に入っているマイコンは、あたかも多くの部品のなかの一つとして、装置を構成するという意味合いが強く、組み込みマイコンと呼ばれます。
これも歴史的には、なにか機械を制御するという場合、機械の外にコンピュータがあるのが当たり前だった時代からすると、そのコンピュータが装置に「組み込まれた」という意味もあります。
携帯電話のコンピュータは通信の制御をする目的というより、あれ自体が一つの情報機器になってしまっているので、洗濯機のマイコンとは役割の大きさがぜんぜん違います。が、これもまた、一般には「組み込み」と呼ばれています。考えようによったら、「箱としてのコンピュータ」ではないものが全部「組み込み」と言えるのかもしれません。

さて、「小さい」とはどういうことかというと、いろいろあります。

コンピュータの構造

マイコン、組み込みマイコンの話をするまえに、コンピュータの一般的な構造を知っておく必要があります。

コンピュータの、本当に重要な部分は、

です。現在主流のコンピュータは、メモリの上にプログラムとデータの両方を置きます。別の見方をすれば、メモリの上には単なる0/1が大量に入っていて、それをCPUが参照して、はじめて、命令として使うか、データとして使うかが決まるとも言えます。
メモリはアドレス(番地)で区別されます。値を出し入れする場所には順にアドレスが振ってあって、CPUがアドレスを指定することで、メモリは渡す値を準備し、書き込むときはアドレスと値をセットにしてメモリに渡します。

メモリには、読み書き可能なRAMと、読むだけのROMがあります。ROMは主に「消えてしまっては困る物」を置くために使われます。ふつうのRAMが電源を切ると消えてしまうのに対して、ROMは消えません。また、プログラムの異常などで、へんなものを書き込もうとしても、ROMはそもそも書けません(一般には特殊な手続きで書き込む)。 そのため、パソコンの場合は、電源を入れたときに最低限起動するのに必要なプログラム(大部分はハードディスクなどからRAMに読み込める)を、組み込み系の場合には全てのプログラムとそれでつかう固定データを書き込んであります。
(そのため、パソコンのROMは比率的にはとても小さく、組み込み系はROMが大半です)。

蛇足ですが、RAMの仲間にはいくつか種類があります。演算回路に近い順に

などがあります。

さて、演算部分と記憶で何ができるかというと、処理しかできません。
コンピュータが役立つ機械になるためには、データの入出力が必要です。
入力の例:
キーボード、マウス、マイク
出力の例:
ディスプレイ、プリンタ、スピーカ
入出力双方向:
ディスクドライブ、ネットワーク、USB
当然ながら、これらには複雑な回路などが必要ですが、CPUという立場からすると、
・ディジタル値が入力できること
・ディジタル値が出力できること
の二つに集約されます。入力のための回路は、入力された値を何らかの形でディジタル値の組にします(単に値をならべる、順番に値をわたす、など)。 出力のための回路は、与えられた値をもとに、出力すべき信号を作り出します。
これらの回路も番地で区別され、それがずらっと並んだような物が、装置としてのコンピュータです。 また、これら回路を「インターフェイス回路」と一般に呼びます。
※CPUの種類によって、メモリと同列に見える物、メモリとは別物に見える物があります。

組み込みマイコン

いま、ふつうに「マイコン」として市販されている物の多くは「組み込みマイコン」です。

組み込みマイコンの特徴は、一言で言えば「全部はいっている」です。

パソコン用のCPUが、CPUの部分だけ、すなわち、メモリや各種回路は別に用意しなければならないのに対して、組み込みマイコンでは最初から全てが入っていて、プログラムをいれて電源をいれれば、様々な機能を発揮します。最近はあまり聞かなくなりましたが、そのことを称して「ワンチップマイコン」とも呼ばれていました。
そのかわり、パソコンにはいろいろな物を追加できる、変更できる拡張性があるのに対して(たとえば、メモリを追加すれば容量が増える)、組み込みマイコンでは追加できないか、追加するのにかなり手間がかかります。 そのため、マイコンは一般にメモリの大きさや入っている回路で膨大な種類があり、そこから目的に応じて必要なものを選択して使うことになります。また、一番リッチなものでも収まらない場合、頭をかかえることになります。


マイコンの入出力

ここでは、マイコンの一般的な入出力について見ていきます。

ただ、実はこれらはマイコンに限らず、パソコンでも可能です。 もちろん、パソコンに標準搭載はされておらず、必要なときは、その機能の回路をパソコンに追加することになります。
アドテックシステムサイエンス社インタフェース社

入出力機能

以下に一般的な入出力の機能を列挙します。

こういった物が、マイコンの規模に応じて、搭載されています。
逆に、最初から盛りだくさんに積んであるため、CPUとしてはそれほど性能は高くないものの、部品としてみたときに足の数が100を超える場合があるなど、大きめなことがあります。

接続事例

以上は、接続の概要です。 ただ、実際には、それに伴うプログラムを作らなければなりません。
マイコン制御によるメカトロ装置の神髄は「とりあえず全部つないでおいて後はソフトでなんとかする」ですが、逆に言えば、そのソフトで性能が大幅にかわります。そのため、「メカトロニクス」という単語に「コンピュータ」は含まれていませんが、実際には、コンピュータの比重がかなり高い物となっています。



熊谷正朗 [→連絡]
東北学院大学 工学部 機械知能工学科 RDE
[| ]