トランジスタでCPUをつくろう!
トランジスタで8080をつくってしまおうというまさにびっくり仰天、狂気のプロジェクトです!
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
見事にできましたら、もちろんTK−80モニタを乗せて、それからBASIC、CP/Mを走らせましょう!
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
[第97回]
●HC139回路(ジャノ目試作基板)
前回はHC139の1/2回路のトランジスタ版回路を工夫して使用トランジスタ数を4割ほど削減した回路図をお見せしました。
最初に考えたインバータと3入力NANDで構成した回路とは似ても似つかぬ回路になってしまいました。
回路図上でロジックを追ってみますと、ちゃんとHC139と同じ動作をするようなのですが、これだけ複雑な回路で何段かのトランジスタとダイオードを通していると、理屈通りに動いてくれるかどうか、さすがにいささか心配になります。
そういうことになりますと、やっぱりこの回路図と同じ回路を実際に組んで試してみるしかありません。
ということでジャノ目基板に組んで試してみることにいたしました。
下は前回の回路図の通りに製作したテスト基板です。
写真の右側を上にするように90度左に回転させると、前回の回路図と同じ配置になります。
こちらは基板裏側の写真です。
狭い基板にこれだけぎっしり実装するとどうしても「立体」配線になってしまいます。
さっそく電源をつないでONしてみました。
LEDの配線の向きを間違えてしまったので、出力が全点灯しています。
これを見て最初はあせってしまいました。
出力は負論理なので0出力のときに点灯するようにするべきでした。
G_が無入力(H入力)なので出力は全部1(H)です。
G_=0、B=0、A=0を入力しました。
[出力0]が0になりました(本当は点灯するべきですがLEDの接続を間違えてしまったので消灯しています)。
G_=0、B=0、A=1を入力しました。
[出力1]が0になりました。
G_=0、B=1、A=0を入力しました。
[出力2]が0になりました。
G_=0、B=1、A=1を入力しました。
[出力3]が0になりました。
スタティックな状態では正しく動作しました。
問題は速度です。
ND80Z3.5のバスに接続して、G_にIOWRをつなぎ、A、BにA0、A1をつないでOUT命令を繰り返すプログラムを実行して、出力の波形をオシロで観測しました。
上側(CH1)がG_入力に接続したIOWRで、下側(CH2)は[出力0]の波形です。
立下り、立上りともシャープな波形で安心しました。
これなら十分使えそうです。
トランジスタでCPUをつくろう![第97回]
2015.7.15upload
前へ
次へ
ホームページトップへ戻る