2019.9.15
前へ
次へ
ホームページトップへ戻る

トランジスタでCPUをつくろう!
トランジスタで8080をつくってしまおうというまさにびっくり仰天、狂気のプロジェクトです!
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
見事にできましたら、もちろんTK−80モニタを乗せて、それからBASIC、CP/Mを走らせましょう!
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆


[第155回]


●バイポーラトランジスタ復活

久し振りに連載を再開した前回では、それまでA1015とN7000(一部はBS250とN7000)で構成するつもりだった基本回路をひっくり返してしまい、A1015とC1815のペアでいくことになりました、と書きました。
その組み合わせは今までの連載では出てきませんでした。
当然一からの検証が必要です。
バイポーラトランジスタを使うということについては、連載開始の直後に、[第2回]で早々と却下してしまいました。
今から考えますといかにも考えが雑であります。
どうもはなからCMOSFET回路にいきたくて、初めに結論ありき、というような書き方でよくありませんです。

確かに電流動作なので、トータルの消費電流とか、ファンアウトとかということは無視するわけにはいきません。
しかしBS250をA1015に置き換えた回路ではベース抵抗を51KΩにして、N7000との組み合わせではありますが、期待通りに動くことを確認しています。
5Vで51KΩですからA1015のベースエミッタ間に流れる電流は0.1mAです。
仮にこのトランジスタの前段にあるトランジスタの出力に100個のA1015がつながっていたとしても、その負荷はトータルでわずかに10mAにしかなりません。
A1015、C1815のhFEはかなりバラつきがありますが大体は100ぐらいはあるようですので、すると0.1mA×100=10mAなので、まあそのあたりまでならファンアウトは取れそうです。
いくらなんでもひとつの出力に100個の入力がぶらさがるなんてことはないと思いますから、ファンアウトという点では問題はないと考えてもよいでしょう。

それではトータルとしての消費電流はどうなのかということについてですが、これはトランジスタだけではなくてそのほかの回路についても考えなければなりません。
ただMOSFETかバイポーラかという選択の中で消費電流を問題にした、という点で考えれば、トランジスタ以外の回路の消費電流についてはMOSFETを使っても、バイポーラトランジスタを使ってもどちらでも同じですから、そこはとりあえずは考えないことにして、バイポーラトランジスタを使ったとした場合の、全トランジスタの消費電流がいかほどかということについて考えてみます。
仮にN7000の代わりにC1815を使ったとして、そのベース抵抗もA1015と同じ51KΩにすることにします。
全部で6000個のトランジスタを使うとして、その全部は同時にはONにはなりません。
少なくとも半分はOFFのままのはずです。
するとそれは3000個のトランジスタのベースエミッタ間に流れる電流の合計ということになります。
コレクタエミッタ間に流れる電流のほうが大きいではないか、とお考えかもしれませんが、ここで考えているトランジスタCPU回路では前段のトランジスタのコレクタエミッタ間電流は結局次段のトランジスタの駆動電流と同じだと考えられます。
ということで0.1mA×3000を計算しますと300mAという結果を得ます。
その程度の電流値ならば問題にするほどの電流量ではありませんでしょう。
ということになりますと、結局[第2回]でバイポーラトランジスタは使えないとした理由はあくまでMOSFETと比較した場合の相対的なものでしかなくて、それをもってバイポーラトランジスタは使えません、と却下してしまうのはいかにも雑で言い過ぎでありました。
3年以上も経ってから過去記事の訂正などみっともない限りでありますが。
ま、見方を変えればそれだけ進歩したということで。
つまりは、今になってよくよく考えてみれば、多分バイポーラトランジスタペアも十分使えるのでは、と思います。

ところでバイポーラトランジスタ回路については[第8回]で、下の図を使ってバイポーラトランジスタではこういう回路にはできません、と書いています。


これもちょっと不適切な説明でありました。
バイポーラトランジスタの場合にはコレクタエミッタ間だけではなくてベースエミッタ間にもしっかり電流が流れてしまいます。
ですから上の図のようにベース抵抗を入れないままでしたら、そりゃあA1015のエミッタからC1815のエミッタに貫通電流が流れてしまい、おそらくあっという間に焼損してしまいますでしょう。
ということでバイポーラトランジスタの場合には電流制限のためにベース抵抗は欠かせません。
A1015とC1815にそれなりの大きさのベース抵抗を付加するならば、上の図のようにA1015とC1815をつないでも壊れる心配はありません(下図)。


こわいのはA1015とC1815が同時にONになって、A1015のエミッタからコレクタを通してC1815のコクレクタを通ってエミッタに電流が流れてしまうことですが、その可能性が出てくるのは入力をオープンにしたときだけで、そうでなければ常にどちらか一方のトランジスタしかONになりませんから、破損の危険はありません。
それでは入力OPENのときはどうなのか、ということなのですが、その場合にもベース抵抗が利いてきます。
バイポーラトランジスタは上図のような使い方をする場合には電流増幅素子として働きます。
コレクタエミッタ間に流れる電流はベースエミッタ間に流れる電流×hFEですから、上でも書きましたようにベース抵抗が51KΩならば、コレクタエミッタ間には10mA以上の電流は流れません。
細かいことをいいますと入力OPENの場合、上の図の回路ではベース電流は0.05mAしか流れません。
A1015とC1815のベース電流はR1+R2=102KΩを流れる電流ですから、そうなります。
A1015、C1815のデータシートではhFEの最大値は400となっていますから(そんなものはおそらく稀でありましょう)、仮に増幅率が最大の400だったとしても、コレクタ電流の最大値は0.05×400=20mAということになります。

そのように考えていきますと、バイポーラトランジスタ回路は余程雑な扱いをしない限り壊れることなどない、安心できる回路ということになりましょう。
バイポーラトランジスタ回路が壊れにくいという点についてはCMOSFETに比べて非常に大きな利点であろうかと思います。

トランジスタでCPUをつくろう![第155回]
2019.9.15upload

前へ
次へ
ホームページトップへ戻る