トランジスタでCPUをつくろう!
トランジスタで8080をつくってしまおうというまさにびっくり仰天、狂気のプロジェクトです!
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
見事にできましたら、もちろんTK−80モニタを乗せて、それからBASIC、CP/Mを走らせましょう!
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
[第368回]
●PC(プログラムカウンタ)の回路図
このところMYCPU4TRのPC(プログラムカウンタ)試作基板について書いています。
考え方にまずいところなどがあってなかなか思うようにいきません。
何回も試作を繰り返しています。
そのように何回も試作基板を作り直していることについては書いてきていますが、今作ろうとしているPC回路が一体どういう回路でそのどこに問題があるのか、その点についてはまだ書いていませんでした。
試作の途中の段階で書いても回路がまだ固まっていない状態では設計変更によって大幅に回路が変わってしまいます。
そのような理由もあって回路については今まで書いてこなかったのですが、ここにきてやっとなんとか落ち着いてきたように思えます。
そこで私自身の製作ノートも兼ねてこの辺でMYCPU4TRのPC(プログラムカウンタ)の回路図について整理したいと思います。
下はPCの本体、カウンタ部分の回路図です。
これで1ビット分です。
MYCPU4TRのPC(プログラムカウンタ)は4ビットですので、これと同じ回路が4回路あります。
このほかにカウントUPやアドレスデータの書き込みやカウンタクリアをするための回路(コントロール回路)が別にあります。
当初はそれらを含めて1枚の試作基板にまとめていたのですが、カウンタ本体の回路以外の「コントロール回路」に考え方の至らないところがあってまだ試行錯誤が必要に思われたので、カウンタ本体回路とコントロール回路を分離して2枚の試作基板に分けて作ることにしました。
上のカウンタ本体回路の試作基板は[第361回]でお見せした「裏表が逆」の基板です。
カウンタ本体回路とコントロール回路の2枚に分けて作りましたが、カウンタ本体回路基板は[第361回]で先にお見せしている「PC−D」(裏文字で読みにくいですが)です。
その基板に[第362回]で部品を実装してテストをしました。
このときはかなりひどい誤動作でまともなテストができませんでした。
何箇所も誤配線があったのですが、それを別にしても根本的なところで考え違いをしているところがあって、もう一度試作基板を作り直すことになりました。
誤動作の主たる原因は「コントロール回路」のほうにあったのですが、この時点ではそれについてはまだわかっていませんでしたので、カウンタ本体回路についても一部回路を変更して試作基板を作り直しました。
下が変更した回路です。
もとの回路では右下のT25、T22から「Q」を出力しています。
この「Q」はカウンタ本体からのラッチ出力でアドレスA0〜A3として使われると同時にカウントアップのためカウンタ本体の入力(左上のT1、T2)にループバックしています。
ここのところがまずいことに気が付きました。
カウンタ本体の入力としてループバックすることは必要ですが、その同じ信号ラインがアドレスラインのA0〜A3としても使われることになると、その信号線はカウンタ本体基板から外に出て別の複数の基板にまで配線されることになります。
カウンタ回路の入力はすなわちラッチ回路の入力です。
その入力ラインが基板の外まで長く伸びていればノイズによって誤動作する危険が増大することになります。
これはデジタル回路の基本ですがそこのところをうっかり失念していました。
そこに気が付いたので上の「変更後の回路」のように「Q」出力をバッファによってループバックラインと分離しました。
その部分を変更して作り直した試作基板は[第363回]でお見せした「裏表逆」の基板です(裏文字ですが「PC−D」と読める基板です)。
実はこのとき製作した「カウンタ本体回路」の基板にはまだ部品は実装していません。
このとき製作し直した「コントロール回路基板」に部品を実装して、それと[第362回]で部品を実装した変更前の「カウンタ回路基板」をつないで動作テストを行なったところ、やはりまだよくないところが出てきたのですが、それは「コントロール回路基板」の側の問題によるもので、変更前の「カウンタ回路基板」でラッチ入力とつながっているアドレスラインが長く伸びていていても幸いノイズによる誤動作は起きなかったためです。
動作テストを重ねていく中でラッチ入力とアドレスラインがつながっていることによって誤動作するようなことが出てきたら後で作り直したほうの「カウンタ本体基板」にも部品を実装してあらためて動作テストをするつもりです。
もっとも後から変更した回路のようにすべきなのははっきりしていますから、最終的に製品版としての基板を製作するときには後から変更したカウンタ本体回路のほうを使うことになります。
トランジスタでCPUをつくろう![第368回]
2021.6.27upload
前へ
次へ
ホームページトップへ戻る