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

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


[第116回]


●[HC139]の動作テスト

また間が空いてしまいました。
納期の迫っている仕事を抱えてしまいますと、なかなかに苦しいです。
[HC139]の動作テストはもう何日も前に済ませて、写真も撮ってあるのですが、それを整理してこのように説明つきでUPしようとしますと、その時間がなくて、間が空いてしまうことになります。
本日はやっとそのうちの1件が片付きました。
でもまだ片付かないで残っている仕事がありますので、細切れ状態の説明はまだ続きそうです。
どうか気長にお付き合いをお願いいたします。

さてその[HC139]の動作テストですが前回説明しましたように、ND80Z3.5の拡張バスコネクタに接続して、ND80Z3.5から[HC139]にアクセスすることでテストを行ないました。
ND80Z3.5と[HC139]とを接続して、[HC139]の左下の丸ピンソケットのところで、G1_にIORD、G2_にA7、C〜AにA2〜A0を接続し、ND80Z3.5でIN A,(00)〜IN A,(07)を実行することで、[HC139]の右上の出力信号用LEDを点灯させることができますから、それを見ることで[HC139]回路が正しく働いているかどうかを判定することができます。



ND80Z3.5(ND80ZVも同じ)はボード上のI/O回路にA7=1のアドレスを使っていますがA7=0のI/Oアドレスは使っていません。
そこで外部にA7=0になるようなアドレスのI/Oを接続すれば、ND80Z3.5(ND80ZV)本体上のI/Oとぶつかることなく、アクセスすることができます。
今回は[HC139]にアドレス00〜07を与えてIN命令を実行し、そのアドレスに対応する出力を見ることにしました。
実際にはA6〜A3は接続されていなくて[HC139]にはそのビットに対応する入力はありませんから、
0XXXX000〜0XXXX111(Xは0または1)のいずれのアドレスでもアクセスされます。

8000 DB00    LP:IN A,(00)
8002 C30080     JP LP
を実行しました。

出力ラインbOのLEDが点灯しています。

8000 DB01    LP:IN A,(01)
8002 C30080     JP LP
を実行しました。

出力ラインbPのLEDが点灯しています。

8000 DB02    LP:IN A,(02)
8002 C30080     JP LP
を実行しました。

出力ラインbQのLEDが点灯しています。

8000 DB03    LP:IN A,(03)
8002 C30080     JP LP
を実行しました。

出力ラインbRのLEDが点灯しています。

8000 DB04    LP:IN A,(04)
8002 C30080     JP LP
を実行しました。

出力ラインbSのLEDが点灯しています。

8000 DB05    LP:IN A,(05)
8002 C30080     JP LP
を実行しました。

出力ラインbTのLEDのみが点灯するはずなのですが、bSのLEDも点灯しています。
どこかで回路がショートしているようです。
しかしひとつ上のDB04では正しく表示されました。
どうも単純なショートではないようです。
原因の追求は後ですることにして、とりあえずはテストを続けることにしました。

8000 DB06    LP:IN A,(06)
8002 C30080     JP LP
を実行しました。

出力ラインbUのLEDが点灯しています。
正しく表示されています。

8000 DB07    LP:IN A,(07)
8002 C30080     JP LP
を実行しました。

出力ラインbVのLEDのみが点灯するはずなのですが、bUのLEDも点灯しています。
さきほどのDB05のときと同じです。
しかしDB04、DB06では異常は発生しませんでした。
これはどうしたことでしょう?

次回はその原因を追求いたします。

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

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