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

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


[第86回]


●CPUのレジスタ(6)

このところCPUのレジスタ回路について書いております。
トランジスタ数を削減するよう工夫して考えた回路を実際にテストするため、BS250と2N7000を使った[HC00]と[HCU04]で試してみたらクロック4MHzでもOKだったのですが、BS250の代わりに2SA1015を使った[HC00−A1015]と[HC10−A1015]では回路の遅れが大きくて4MHzはクリアできませんでした。
([HC00][HCU04][HC00−A1015][HC10−A1015]は[第76回]をご参照ください)

前回はそのことを説明するために、もう一度写真を撮りながら再テストしましたところ、どういうわけか[HC00−A1015]と[HC10−A1015]でも4MHzをすんなりとクリアしてしまいました。
その前にテストをしたときには駄目だったのですが、いざ写真を撮ろうとして再テストしたら、えらく良い子になってしまいました。

むむ。
そんなはずはない。

おお、そうだった。
WR_信号はインバータを3段通したのだった。
A1015版のHCU04はないので、[HC10−A1015]を使ったのだった。
そこを忘れておりました。

それで、[HC10−A1015]を使ってWR_信号を通して再度テストをしてみたのですが。

前回と同様上側(CH1)はD入力(1MHz)です。

下側(CH2)はRSフリップフロップのセット側出力です。
WR_は4MHzです。

こちらはRSフリップフロップのリセット側の出力です。

おかしくないじゃありませんか。
2SA1015を使った回路でも、4MHzでもクリアできてしまいました。
全くなんてことでしょう。
これでは筋書きが違ってしまうではありませんか。

そうそう。
[HC00−A1015]と[HC10−A1015]と[クロック発生回路]を使ってテスト中の写真を撮りましたのでお見せします。


どうも引っ込みがつかないのでありますが。
[HC00−A1015]と[HC10−A1015]で2SA1015のベースに入っておりますダイオードORが気になっています。



確かに今回あらためてテストをしてみて、問題はなかったのですが。
この回路はちょっとペンディングということで。
この先もこの回路が本当に使えるかどうか検証を重ねていくつもりです。

実は最初に[HC00−A1015]と[HC10−A1015]を使ってテストをしたときに速度が出なかったものですから、ダイオードをなくした回路をつくって、それでテストをしてしまいました。
それでダイオードが入っていると速度が出ませんから、これからはダイオードなしの回路でやっていきます、というふうに結ぶつもりだったのですが、上に書きましたように、再度テストをしてみましたら、[HC00−A1015]と[HC10−A1015]を使った回路でも全然速度が落ちなかったものですから、お話が結べなくなってしまいましたのです。

そういう次第でまったく脈絡の無いお話になってしまいましたが、それはともかくとしまして、せっかくダイオードなしの回路も作ってテストをしましたことですから、その写真もお見せすることにいたします。

A1015版のHCU04回路はありませんでしたので[HC00−A1015]基板を利用して作りました。


下はその回路図(1ゲート分)です。


[HC00−A1015]の回路からダイオードを外して、代わりに2SA1015を追加しました。


追加した2SA1015は基板裏に取り付けました。


下はその回路図(1ゲート分)です。


そのようにして作った回路でテストをしたときの波形の写真です。

上側(CH1)はD入力(1MHz)です。
下側(CH2)はRSフリップフロップのセット側の出力です。
WR_信号としては4MHzパルスを入力しています。

こちらも上側(CH1)はD入力(1MHz)です。

下側(CH2)はRSフリップフロップのリセット側の出力です。

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

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