17.05.2015 Views

8x300 design guide - Al Kossow's Bitsavers - Trailing-Edge

8x300 design guide - Al Kossow's Bitsavers - Trailing-Edge

8x300 design guide - Al Kossow's Bitsavers - Trailing-Edge

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

2.5 8X300 INTERRUPT STRUCTURE<br />

<strong>Al</strong>though the 8X300 microprocessor is a very fast device and in<br />

many cases external events occurring randomly and influencing the<br />

program flow may be discovered by means of a polling technique,<br />

there are instances when the system must react immediately to such<br />

events.<br />

Because the 8X300 has no interrupt facility, it is necessary to add<br />

hardware to obtain such a facility. This hardware should perform<br />

the following actions on receipt of an interrupt signal:<br />

- save the current Program Counter contents<br />

- retain the last used I V L and I V R addresses<br />

- make the program jump to a fixed (interrupt) address<br />

- detect a return instruction<br />

- restore the I V L and I V R addresses<br />

- restore the original contents of the Program Counter<br />

Any registers which are used in the interrupt routine should also be<br />

saved and restored on return; this is done in software as is the<br />

restoration of the IVL and IVR addresses, although the saving is<br />

done by hardware. To save and restore various items, a RAM of at<br />

least ten bytes is required. However, it is assumed that a 256 byte<br />

RAM is available, connected to the right bank.<br />

To provide an interrupt facility for 8X300 systems, it is necessary to<br />

add the following hardware:<br />

a) EXECUTE decoding - Interrupts must be inhibited during an<br />

EXECUTE instruction<br />

b) Return decoding - 717777 (JMP 17777) is used as a return<br />

instruction. The address 17777 must be decoded<br />

c) Interrupt control - The Interrupt signal has to be synchronized<br />

with the Master Clock, and various control signals have to be<br />

generated<br />

d) Return Address Register<br />

e) Interrupt Vector logic - This logic forces a jump to the interrupt<br />

address on the instruction bus<br />

f) I V L, I V R Save logic - It is necessary to retain the last I V Land<br />

I V R addresses selected before the interrupt, to be able to<br />

restore these addresses on ret urn<br />

2-47

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!