見出し画像

TJD4 vol.5 セレクタ 汎用ロジックicだけで作るcpu

noteのみなさんこんにちは,masudaです.
今回は上手く行っていなかったセレクタ回路を完成させました.

進捗

現在の進捗です.
システムを少し見直して,メインメモリからディスプレイを接続することにしました.

汎用ic以外の部品の使用について

制作のコンセプトや自分の目標に納得できない仕様変更ですが,一部の部分をPICで制作することにしました.
これは各モジュールの実現方法と現実的な予算を考慮した結果になります.
しかしやはり,CPUの動作にPICを持ち込みたくないので,CPUには基本的にPICは使わないこととしました!
今回妥協する部分は,プログラムメモリ,メインメモリ,ディスプレイ,プログラムカウンタになります,ひとつずつ説明していこうと思います.

まずプログラムメモリについてですが,TJD4の先祖様TD4は,ROMをDIPスイッチによって実装していました.8ビットのスイッチを16個繋げていますが,TJD4でこれと同じことをしようとすると,10ビットのスイッチを256jこ配線することになります.これはさすがに無理がありますね(笑).畳一枚くらいの面積と数万円の出費をしてまでやることではないと思い,PICを採用します.
次にメインメモリです.実装には標準ic7489相当の機能を持った16番地64ビットの情報を保存できるメモリicを使用する予定でしたが,現在7489は入手が非常に難しく,アリエクで1か月待つか,よくわからんサイトからフィリピンペソで購入するしかない状況です...これについてもCPUではないのでPICを使おうと思います.
最後にディスプレイとプログラムカウンタについてですが,これは4ビットを情報を7セグメントに直す汎用icが存在しないことが原因です.
0から9までのデコーダなら4511などいろいろありますが,16進数で0からFとなるとなかなかふさわしいものがなく,,,表示としてはZK-80みたいにしたいなーと思い,プログラムカウンタの16進表示とディスプレイの16進表示にはそれぞれ同じPICを採用したいと思います.

繰り返しになりますが,CPUの基本動作にPICは全く寄与しないので,タイトル詐欺は可否したつもりです.
なにとぞご容赦ください~m(__)m

セレクタ

セレクタ,CPUではMUXとも称されますけど,これは,複数の信号に対し,操作線に従いただ一つの出力を反映させるモジュールになります.
今回は8入力のセレクタを作成しましたので,ABCDEFGHの8種類の信号のうち,どれかを出力するものになります.
たとえば,操作線が0ならA,1ならB,2ならC,,,操作線が7ならHを出力するような回路ができればそれはMUXであると言えます.
今回はバッファつきの回路とバッファなしの回路を一つずつ作成しました,バッファを付けた方は1回路を実現するのに2枚のユニバーサル基板を要しました.
また,直前にLEDをつけた信号には,バッファをかませて信号を強化を行っています.これが無いと電流の大部分がLEDに流れてしまい,セレクタが正しく動作しませんでした(このせいで1か月くらいセレクタが立ち往生していました笑)
今回バッファには74LV541AP,セレクタには74HC151AP採用しました.

写真

今回は分かりやすいLEDが無いので動画は割愛しますー
ALUと重ねられているのがバッファなし,二枚に分割されているのがバッファ付きのものになります.


感想

そろそろCPUとして産声をあげそうなくらいの進捗になってきてワクワクのワクです!
次回は命令デコーダについて書くと思います,相当なボリュームの記事になると思いますが,結論から言ってしまうと大量のDIPスイッチが使われないままお蔵入りになりそうです.

この記事が気に入ったらサポートをしてみませんか?