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

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


[第2回]

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

さて、ある程度知識をお持ちの方でしたなら、トランジスタでCPUをつくるためには大変な数のトランジスタが必要になるであろうということは容易に想像がつくことと思います。
その通りであります。
おそらく数千個は使うことになろうかと思います。
ま。
それにつきましてはちょいと置くことにいたしまして。

実は。
トランジスタでCPUを作ることは、回路図上では不可能なことではありません。
なにしろすでに実物があります。
なんたってMYCPU80があるのですから。

MYCPU80は汎用ロジックICのみで作られています。
ということは。
個々のロジックIC、たとえば74HC00とかHC04とかHC32とかあるいはHC74とかというロジックICをひとつひとつトランジスタに置き換えていけば、理屈の上ではトランジスタ版のMYCPU80を作り上げることができるはずであります。
つまりはすでにロジック回路としては動作することを実証済みの見本があることになりますから、ま、あとはひたすら根気の問題かと。

しかし。
ことはそれほど単純なものではありませんでしょう。
それではそれこそ山のようにトランジスタをつぎ込んだお化けのような回路図になってしまいます。
たとえそのような回路図の通りに実物を作り上げたとしましても、ひょっとしたら、多分、いえ、きっと保証つきで全く動いてはくれないでありましょう。

ロジックICとトランジスタは違うのでありますね。おそらくは。
はじめからロジック回路用に設計されたロジックICだからこそ、回路図通りに配線すればそれなりに動いてくれます。
しかしトランジスタはもともとアナログ素子なのですから、それなりのクセをお持ちのはず。
それを数千個も同じ基板上に配して配線でつないだりしましたら、何がおきるかわかったものではありません。
あ。
たとえばということで、同一基板上に、と書きましたが、今回はおそらく1枚の基板では無理で、複数の基板に分けることになろうかと思います。

それはそれで重要課題でありますが、まあ、技術的な問題ですから、ひとつずつ地道に実験しつつ積み上げていくことで、いずれはゴールに到達することも期待できましょう。
ところがそういう技術的な肝心なことよりも前にまずもってクリアしなければならない重要な課題があります。

当たり前といえは当たり前のことなのですが、まず第一にどういうトランジスタを使うか、ということが最重要な課題となります。
それと同時に、いかにして使用するトランジスタ数を削減するかということもきわめて重要な課題となります。
なんたって数千個という数量なのですから、それをどうやって基板に配置するかという物理的な問題とともに、たとえ単価は安くてもそれの数千個分の価格はとんでもないものになってしまうという経済的な問題でもあります。
とにかくどうやって設計するかという本来の課題よりも前に、そのような物理的かつ経済的な問題をクリアしなければなりません。
これがなかなかに難問なのであります。
あ。
トランジスタ数を削減するということはもちろん技術的な問題でもあります。

前置きが長くなりました。
やっと本日のお題にとりかかります。
そもそもトランジスタとはそも何者ぞ、というあたりから入らなければなりませぬ。

すると、いきなりバイポーラトランジスタでありますとかユニポーラトランジスタでありますとかというお話になってしまいます。
そうしますと、正孔とかキャリアとかPNPとかNPNとか、もう業界用語といいますか、専門用語といいますか、わけがわからんものの羅列になってしまって、ほんと、そんなものは何回読んだってさっぱりわけわかめ、なのであります。
ええ。すぐに忘れてしまいます。
えっと、どちらがPNPで、どちらがNPNだったっけ?

つまるところわけはよくはわからんのですけれども、一般にトランジスタと呼んでおりますところの、2SC1815とか2SA1015とかのトランジスタがバイポーラトランジスタなのだそうであります。
そして2SC1815がNPNトランジスタで2SA1015がPNPトランジスタです。
それらはシリコントランジスタで、それとは別にゲルマニウムトランジスタというものもありますが、それはデジタル回路用途には不向きですから、今はそれ(ゲルマニウムトランジスタ)には触れません。

2SC1815も2SA1015も非常にポピュラーなトランジスタでありますし、入手もきわめて容易でかつ価格も安いとよいことづくめであります。
かく言う私自身もこの2つでほとんどの回路をまかなっております関係上、これらが使えれば申し分ないのでありますが。
残念ながら、使えません。

バイポーラトランジスタは電流動作です。
ベース・エミッタ間に電流を流さなければ使うことができません。
しかもデジタル回路なのですから、0Vから5Vまでフルスイングしてくれなければなりません。
当然十分なベース電流を必要とします。
もっとも2SC1815も2SA1015も十分な増幅率の素子ですから、個々の素子にはそれほどの電流は必要とはしないでありましょう。
しかし、たとえば1個のトランジスタ当たりわずか1mAのベース電流を流したとしてもそれが5000個であれば5Aの電流になってしまいます。
もっとも全てのトランジスタがONになるわけではありませんから、それは極端な話ですが、しかし電流の供給がまずもって肝要であろうことはご理解いただけると思います。

もうひとつファンアウトという問題もあります。
MYCPU80の回路図を見ていただければ推察できるかと思いますが、信号出力によってはずいぶん沢山の回路の入力信号として使われているものがあります。
するとそのような回路のトランジスタ出力はそれだけの数のトランジスタを駆動するだけの大きな電流出力を要求されることになります。
するとそれは同時にその回路に大きな電流が流れることも意味します。
間を1mmもあけないでびっしりと配線したラインにパルス状の大きな電流が流れる、なんてそんな恐ろしいことは想像したくもありませぬ。
ですので。
残念ながら、バイポーラトランジスタは、却下、不採用ということになります。

が。
そういう理由で一旦は不採用と決まったバイポーラトランジスタなのですが、実は回路の検討を少しずつ具体化していく中で、2SA1015は部分的に復活が見込めそうな状況が見えてきております。
それにつきましては、いずれ具体的な設計作業の説明の中で明らかにしていくつもりでおります。

本日は時間がなくなってしまいました。
次回に続きます。

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

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