トランジスタでCPUをつくろう!
トランジスタで8080をつくってしまおうというまさにびっくり仰天、狂気のプロジェクトです!
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
見事にできましたら、もちろんTK−80モニタを乗せて、それからBASIC、CP/Mを走らせましょう!
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
[第96回]
●HC139回路(2)
前回はHC139の1/2回路のトランジスタ版回路をお見せしました。
最初にまずHC139と同じ動作をする回路をインバータと3入力NANDで考えて、次にその回路をトランジスタで置き換えました。
わかりやすい回路なのですが、それを使ってレジスタ回路のセレクト信号を出力する回路をつくるとトランジスタが78個も必要になります。
それだけならレジスタ回路と同じ50mm×100mmのサイズになんとか収まりそうなのですが、その基板にはそれ以外にコネクタなども実装したいと考えています。
しかしトランジスタが78個もあっては、さらにそこにコネクタなどを配置することはとてもできそうにありません。
そこでなんとかトランジスタを減らす工夫をすることにいたしました。
前回お見せしたトランジスタ回路をじっくり眺めていたところ、3入力NANDのうちのG_信号を受ける部分は4つのNAND回路の全てが同じ回路になっていることに気が付きました。
それならG_信号のもとのところで1つの回路に集約できそうです。
下はそのように考えて描き直した回路図です。
こういう芸当はトランジスタ回路だからこそできることで、ロジックICをどうひねってみてもできることではありません。
もっともこれで正しく動作するかどうかは実験をして確かめてみなければわかりません。
それは先のこととして、これで6トランジスタが削減できました。
レジスタセレクト信号回路にはこれと同じ回路が2つありますから、合計12トランジスタの削減です。
トータルでは66個になりました。
しかしそれだけでは、まだまだ削減不足です。
上のG_信号の回路をBやAにも適用できないものかと考えました。
最初はちょっと無理なように思えて、途中で諦めようとしたのですが、そこをもうひと押し、最後の頑張りでねばって考えた結果、下の回路図になりました。
もとの回路と同じロジックなのですが、さすがにこれでは何がなんだかわからない回路になってしまいました。
G_とBとAに0、1を与えて、場合ごとにY0〜Y3がどうなるかをていねいに追っていくと、この回路でも正しい結果が得られることがわかります。
しかしそれは図面上だけのことで、これだけ複雑な回路で何段かのトランジスタとダイオードを通していると、理屈通りに動いてくれるかどうか、疑問に思えてきます。
そういうことになりますと、やっぱりこの回路図と同じ回路を実際に組んで試してみるしかありません。
次回に続きます。
トランジスタでCPUをつくろう![第96回]
2015.7.14upload
前へ
次へ
ホームページトップへ戻る