標準TTLだけ(!)でCPUをつくろう!(組立てキットです!)
(ホントは74HC、CMOSなんだけど…)
[第244回]
●またまた前回の訂正です
前回、EI命令の回路図(下に再掲しました)の説明のところで、Dフリップフロップ74HC74のCK入力(pin3)の前にあるゲートはムダな回路だと書きました。
何を考えていたのでしょう。って、しっかり考えていたのですよ。
無駄じゃなかったんです。
必要だったんです。
いきなり配線図を直してしまって、何かミスがあるといけません(ここのところ、すっかり自信を無くしてしまいました)。
とにかく実際に試作基板の上で配線を変更して、テストをしてみないことには、安心できません。
で、回路を変更して、74HC74のpin3に直接T4をつないで、それで、割込みのテストプログラムを作って、動作テストしてみたら…。
あれ?
全然、割込みが受付けられない?
そこで、やっと、気がつきました。
あれは、必要なゲートだったんだ。
EI命令が実行されたら、それ以後、割込みが受け付けられるか、DI命令が実行されるまでの間は、このDフリップフロップのQ出力(pin5)は、Hを維持していなければいけなかったんです。
割込み受付け可能状態を維持していなければいけないのですから。
もしも、CK(pin3)の入力回路にゲートがなくて、T4が直接つながっていると、各命令のT4で、Q出力(pin5)は簡単にLになってしまいます。
ということは割込み禁止状態になってしまうわけです。
このDフリップフロップのCK(pin3)はEI命令のT4のときにかぎって、クロックを入力することで、割込み許可状態が維持できるのですから、このゲート回路は、その要(かなめ)の回路だったんです。
けっこうがんばって、うんうんうなってしっかり回路を考えているんですけれど、そのことをすぐに忘れてしまって、せっかくの回路をあとで直してしまって悩むことになります。
ほんと、我ながら情けなくなってしまいます。
どうも、これは、いけません。
やっぱり、基板発注前に、全回路の最終動作確認をしなければ、いけないような気になってきてしまいました。
うーん。えらいこっちゃ…。
ほんま、なんぎ、やなぁ…。
ああ。本日は、そんなわけで、外部から割込み信号を入れて、動作テストをしました。
その様子を写真にも撮ったのですけれど、まとめて整理する時間がなくなってしまいました。
また、次回にご披露することにいたします。
2009.6.8upload
前へ
次へ
ホームページトップへ戻る