Interrupt Logic; Nmi Logic; Smi# Logic - Intel Quark SoC X1000 Core Developer's Manual

Hide thumbs Also See for Quark SoC X1000 Core:
Table of Contents

Advertisement

9.3.1

Interrupt Logic

The Intel
line. An interrupt request reaches the internal instruction execution unit two clocks
after the INTR pin is asserted if proper setup is provided to the first stage of the
synchronizer.
There is no special logic in the interrupt path other than the synchronizer. The INTR
signal is level sensitive and must remain active for the instruction execution unit to
recognize it. The interrupt is not serviced by the Intel
INTR signal does not remain active.
The instruction execution unit looks at the state of the synchronized interrupt signal at
specific clocks during the execution of instructions (if interrupts are enabled). These
specific clocks are at instruction boundaries, or iteration boundaries in the case of
string move instructions. Interrupts are accepted at these boundaries only.
An interrupt must be presented to the Intel
clocks before the end of an instruction for the interrupt to be acknowledged. Presenting
the interrupt three clocks before the end of an instruction allows the interrupt to pass
through the two-clock synchronizer, leaving one clock to prevent the initiation of the
next sequential instruction and begin interrupt service. If the interrupt is not received
in time to prevent the next instruction, it will be accepted at the end of the next
instruction, assuming INTR is still held active.
The longest latency between when an interrupt request is presented on the INTR pin
and when the interrupt service begins is determined as follows:
longest instruction used + the two clocks for synchronization + one clock
required to vector into the interrupt service microcode.
9.3.2

NMI Logic

The NMI pin has a synchronizer much like that used on the INTR line. The NMI logic is
otherwise different from that of the maskable interrupt.
NMI is edge triggered, as opposed to the level triggered INTR signal. The rising edge of
the NMI signal is used to generate the interrupt request. The NMI input need not
remain active until the interrupt is actually serviced. The NMI pin must remain active
only for a single clock if the required setup and hold times are met. NMI operates
properly if it is held active for an arbitrary number of clocks.
The NMI input must be held inactive for at least four clocks after it is asserted to reset
the edge triggered logic. A subsequent NMI may not be generated if the NMI is not held
inactive for at least four clocks after being asserted.
The NMI input is internally masked when the NMI routine is entered. The NMI input
remains masked until an IRET (return from interrupt) instruction is executed. Masking
the NMI signal prevents recursive NMI calls. If another NMI occurs while the NMI is
masked off, the pending NMI is executed after the current NMI is done. Only one NMI
can be pending while NMI is masked.
9.3.3

SMI# Logic

SMI# is edge triggered like NMI, but the interrupt request is generated on the falling-
edge. SMI# is an asynchronous signal, but must meet setup and hold times t
in order to guarantee recognition on a specific clock. The SMI# input need not remain
active until the interrupt is actually serviced. The SMI# input only needs to remain
active for a single clock if the required setup and hold times are met. SMI# also works
correctly if it is held active for an arbitrary number of clocks.
®
Intel
Quark SoC X1000 Core
Developer's Manual
166
®
Quark SoC X1000 Core contains a two-clock synchronizer on the interrupt
®
Intel
Quark Core—Hardware Interface
®
Quark SoC X1000 Core if the
®
Quark SoC X1000 Core INTR pin three
Order Number: 329679-001US
and t
20
21
October 2013

Advertisement

Table of Contents
loading

Table of Contents