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

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


[第125回]


●合計24本のダイオードを追加!

前回からの続きです。
試作として組み上げた[HC373]回路基板を改造してダイオードを16本も追加したあと、動作テストをして正しく機能することが確認できました。
しかし。
回路図を眺めていましたら、まだまずいところがあることに気が付いてしまいました。



問題はデータを書き込むときに発生します。
上の回路図はいままで何回も見ていただいている[HC373]の1ビット分の回路図です。
今回問題があることに気が付いたトランジスタ(点線で囲った中の左下にある2N7000)に、わかりやすいように寄生ダイオードを描き加えました。

CS_とWR_がアクティブで、そのときDinが’1’のとき、その2N7000のソースドレイン間には図の矢印の方向に電流が流れてしまいます。
その電流は図の3個の2N7000を経由してGNDに流れることになります。
書き込むデータがFFのときは8ビット全部の回路がGNDに対してショートするため、書き込みパルスがHのわずかな期間だけですけれど、かなりの電流が流れることになります。

書き込みパルスは図の左下のNORゲートによって作られます。
下図はその部分をトランジスタで示した回路図です。

書き込みパルスは図の中央の2個の2SA1015(T2,T3)がONのときに出力されます。
さきほどの回路図の最後にGNDに接している2N7000は上の図の右下にあるT7です。
わずかな期間ですけれど、この2個の2SA1015(T2,T3)と、右下の2N7000(T7)と、そして最多ではさきほどの回路図の2個の2N7000×8ビット分のトランジスタがONになって、+5VからGNDにショート電流が流れることになります。

今のところ動作テストでは、とりあえずは正常に動作しているようですが、これはこのままにしておくわけにはいきませんでしょう。
最悪の場合トランジスタが破損してしまうかもしれません。

念のため、ショートしている様子を写真に撮りました。

ND80Z3.5に接続して下のプログラムを実行しました。

8000 3E00    LP:LD A,00
8002 D300       OUT (00),A
8004 3EFF       LD A,FF
8006 D300       OUT (00),A
8008 C30080     JP JP

上側(CH1)はWR_信号で、下側(CH2)は2SA1015(T3)のコレクタ出力です。
00を書き込んだときの書き込みパルス(中央のパルス)は正常ですが、FFを書き込んだときのパルス(右側のパルス)はショート状態であることがはっきりわかります。

前回に続いて今回もまたダイオードを8本追加しました。

合計24本の追加です。

ダイオードを追加したあとの波形です。

ショート状態は解消されました。

しかし。
とりあえず24本のダイオードの追加は試作的に組んだ基板に無理やり追加しただけです。
今度はそれを回路パターンを変更して、はめこまなければなりません。
まさに苦難の連続であります。

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

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