CPU・メモリ・入出力機能を1つのチップに収めた小型のコンピュータ。
マイクロコントローラ(マイコン)とは、CPU・メモリ・入出力(I/O)機能を1つのチップ(半導体部品)にまとめた小型のコンピュータのことです。これ1個で「考える・覚える・外とやり取りする」という機器制御に必要な機能がそろいます。
CPU(=中央処理装置。計算や判断を行う頭脳)だけの部品を「マイクロプロセッサ」と呼びます。これに対しマイコンは、CPUにメモリや入出力まで「全部入り」にしたのが特徴です。だから外付け部品が少なくて済み、炊飯器のような小さな機器にも組み込めます。
身近な例で考えると、キッチンが付いたワンルームの部屋に似ています。寝る場所(CPU)・収納(メモリ)・調理台(入出力)が1部屋に全部そろっているので、これだけで生活が完結します。上の図解で、マイコンの中身を見てみましょう。
マイコンの内部は、おもに次の3つの部分でできています。これらは「バス」(=部品同士をつなぐ内部の配線)で結ばれ、データをやり取りします。
・CPU:プログラムの命令を読み取り、計算や判断を行う頭脳です。
・メモリ:プログラムを記憶するROM(=電源を切っても消えない読み出し用メモリ)と、計算途中のデータを置くRAM(=電源を切ると消える作業用メモリ)の2種類があります。
・入出力(I/O):センサやスイッチからの信号を受け取り、モータやランプへ信号を送る窓口です。タイマ(時間を計る)やA/D変換(アナログ信号をデジタルに変える)も含まれます。
パソコンではこれらが別々の部品として基板に並んでいますが、マイコンではすべて1チップに収まっているのが大きな違いです。そのぶん安く・小さく作れます。
SoC(System on a Chip、エスオーシー)とは、マイコンの考え方をさらに進めて、1つのチップにより多くの機能を統合したものです。CPUやメモリだけでなく、GPU(=画像処理用の演算回路)や無線通信回路、画像処理回路などまで1チップに詰め込みます。
両者の使い分けの目安は次のとおりです。
・マイコン:炊飯器・リモコンなど小規模でシンプルな制御向け。安くて省電力。
・SoC:スマートフォンやゲーム機など高機能で多様な処理が必要な機器向け。
身近な例で考えると、マイコンは必要最低限の道具がそろった工具箱、SoCはあらゆる工具を備えた大型の作業場のような関係です。どちらも「1つにまとめる」点は同じですが、まとめる機能の量と高機能さが違います。