トランジスタでCPUをつくろう!
トランジスタで8080をつくってしまおうというまさにびっくり仰天、狂気のプロジェクトです!
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
見事にできましたら、もちろんTK−80モニタを乗せて、それからBASIC、CP/Mを走らせましょう!
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
[第413回]
●バイナリカウンタ回路の改良(3)
今回は前回で説明した回路を実際に組んでその動作をオシロスコープで観測した波形写真をお見せすることにします。
前回も書きましたが当初はRS回路を1段使っただけでカウンタの動作をさせようとしたしたところデータがラッチできなくてQ、Q_出力が反転を繰り返してしまったことからRS回路を2段使ったカウンタ回路を考えました。
前回はそのことを文章だけで説明しましたが、参考までにどういう状態になるのかということをテスト回路で再現してその波形を撮影しました。
テストをしたのは下の回路です。
この回路の動作は前回説明しました。
CKINがHの期間中だけT1、T2のゲート回路がONになってそのときのQ_が入力されます。
するとそれがすぐにQに出力され、Q、Q_が反転します。
その反転したQ_がゲート回路を通ってQ、Q_回路に伝わるためまたQ、Q_が反転します。
下はその状態を観測したオシロスコープの画像です。
上側(CH1)はCKINです。
下側(CH2)はQ出力です。
CKINがHの期間Q出力は細かくHとLを繰り返しています。
オシロスコープの水平時間軸を拡大しました。
上は200ns/divですが下は100ns/divです。
オシロスコープの水平時間軸をさらに拡大しました(下の写真)。
上は100ns/divですが下は50ns/divです。
Q出力は約25nsごとにHからLにそしてLからHに変化しています。
この動作はトランジスタのインバータ回路を3段通ることで行なわれています。
ということはトランジスタのインバータ回路1段あたり約8nsという速度になります。
これは驚異的な速度です。
さて次は逆に速度を下げるための回路です。
下は前回説明したインバータ(7404相当、遅延あり)+NAND(7400相当)の回路です。
CKINから入力したクロックパルスの立ち上がりに同期してCKOUTから短いパルスが出力されます。
そのほかの時間はCKOUTはHのままです。
下はその波形です。
上側(CH1)はCKINに入力した方形波です。
下側(CH2)はNAND回路から出力されたCKOUT波形です。
水平時間軸を拡大しました(下の写真)。
インバータの入力回路は高抵抗(200KΩ)のため出力が遅延してなまった波形になります。
NANDゲートの出力もそのためLからHになるときの波形がなまっています。
これは回路の特性として仕方がないことです。
この出力波形をたとえばインバータ回路に入力したとすると1/2Vcc(2.5V)近辺で出力が反転することになります。
おそらくそのときのパルス幅は150nsほどになると思います。
まだ説明の途中ですが本日は時間がなくなってしまいました。
次回に続きます。
トランジスタでCPUをつくろう![第413回]
2024.2.6upload
前へ
次へ
ホームページトップへ戻る