IRQ - Hold and reset Circuit.

2-Zons wrote 01/03/2019 at 06:26 • 0 points

Working on my 8 bit TTL CPU.  I've got a version of IRQ working.  When IRQ is pulled low, it loads the IRQ instruction (FF) into the instruction register after the current instruction is finished.  

I am trying to figure out the simplest way of preventing repeat IRQ instructions.  The solution I'm currently working with is a 2 bit state machine with 3 states, 2 Inputs (IRQ, and IRQ ack), and one output (IRQ out, which loads the IRQ instruction). This will work but I'm thinking there has to be simpler solution.

I need to be able to hold an IRQ signal long enough for an instruction to finish,  Once it has loaded the instruction (IRQ ack), it needs to ignore the IRQ signal until it goes hi and then low again (a new IRQ request).  I'm thinking there might be a simple way to do this with one or two D flip flops?  I can't think of it though.

I've been putting a lot on the stack lately.  This community has been just great for getting answers.