愛車のバイクVFR750F(RC36)のテールライトをLEDに換装したのに続き、ウインカーもLEDに換装する目標です。
今回は論理回路を考えます。
多数の入力から一定のルールに基づく出力をする回路を作るのですが、このような場合にはデジタル信号にしたほうが楽に処理できます。
入力が有る・無いを『1』『0』の2値に置き換えて考え、その2値数値入力により2値数値出力をします。
このような2値演算を論理演算と呼び、その回路を論理回路と呼びます。代表的な論理回路は…
演算名称 | 演算内容 |
---|---|
バッファ回路 | ひとつの入力の内容をそのまま出力する |
Not 回路 | ひとつの入力の内容(1、0)を逆にして出力する |
And 回路 | 複数の入力の全てが1なら出力も1、それ以外なら0 |
Or 回路 | 複数の入力のいづれかが1なら出力も1、それ以外なら0 |
があり、不思議な事に、どんなに複雑な演算もこれらの回路を複数組み合わせればできてしまいます。電卓でも、パソコンでも!
そして、これらの回路が組み込まれたTTL規格ICが数十円で売っているので、簡単に論理回路が作れます。
・TTL-IC規格の本 | ・論理回路が組み込まれたIC |
ところがです。この方式だと回路規模が大きくなるとすぐに必要なチップ数が膨大になってしまい、体積も大きくなります。(昔はコレでも十分小さかったんですよ。)
そこで次時代は、ワンチップ上に多種の論理回路を載せておき、その間をマトリクス状に配線しておき、『マトリクスの接続する・しないを設定(書き込み)』できるPAL(Programmable Array Logic)やGAL(Generic Array Logic)が流行ります。
確かにコレ、便利です。今までの数チップが1チップになってしまうし、素人が趣味でプリント板を設計しても『ピン間1本』が限界なため、配線の引きまわしが膨大になってしまうことが解消されますし、なんたって『後から回路修正ができてしまう』というオマケが付いてきます!
さらに論理が複雑になると、演算回路をプログラムと呼ぶ制御コードと記憶回路を使用して繰り返し利用することで、さらなる応用ができるようになったMPU(CPUとも呼ぶ)を使えば回路か簡単になります。
しかしMPUはコンピュータの心臓そのものなので、価格も高くなるし回路設計も大変です。
しかし、それすら過去の遺物になってしまうかもしれません。
写真をご覧ください。
・自作Z80マイコンボード | ・中央のチップと右のチップだけで動きます |
1番左の昔はMPU、記憶回路、入出力回路等がそれぞれ別のチップで提供されていたため、膨大な体積になっています。
次の世代の中央の写真では、左の写真と同一の機能を持っているのに記憶回路以外の回路が小型のワンチップに集積され大幅に小型化・省電力化されています。
そして驚くのはコレ!
・ワンチップコントローラ・PIC |
単純な論理演算用と制限はあるものの、ほぼ全てが1チップ化され、たったひとつの外付け部品で動いてしまうのに、価格は数百円!
動作速度の点ではハードワイヤが優れているのですが、今回はそんなに速度は要求されないのと、とにかく小型化が優先されるため、ワンチップマイコン・PIC(Peripheral Interface Controller)を使用してみることにします。