Specifications

Intel
®
Quark SoC X1000 Core
October 2013 Developer’s Manual
Order Number: 329679-001US 67
Real Mode Architecture—Intel
®
Quark Core
5.4 Interrupts
Many of the exceptions discussed in Section 3.7.3, “Maskable Interrupt” on page 34 are
not applicable to Real Mode operation, in particular exceptions 10, 11, 14, and 17,
which do not occur in Real Mode. Other exceptions have slightly different meanings in
Real Mode; Table 25 identifies these exceptions.
5.5 Shutdown and Halt
The HALT instruction stops program execution and prevents the Intel
®
Quark SoC
X1000 Core from using the local bus until restarted via the RESUME instruction. The
Intel
®
Quark SoC X1000 Core is forced out of halt by NMI, INTR with interrupts enabled
(IF=1), or by RESET. If interrupted, the saved CS:IP points to the next instruction after
the HLT.
As in the case of Protected Mode, the shutdown occurs when a severe error is detected
that prevents further processing. In Real Mode, shutdown can occur under the following
two conditions:
An interrupt or an exception occurs (exceptions 8 or 13) and the interrupt vector is
larger than the Interrupt Descriptor Table (i.e., there is not an interrupt handler for
the interrupt).
A CALL, INT or PUSH instruction attempts to wrap around the stack segment when
SP is not even (i.e., pushing a value on the stack when SP = 0001, resulting in a
stack segment greater than FFFFH).
An NMI input can bring the processor out of shutdown if the Interrupt Descriptor Table
limit is large enough to contain the NMI interrupt vector (at least 0017H) and the stack
has enough room to contain the vector and flag information (i.e., SP is greater than
0005H). If these conditions are not met, the Intel
®
Quark SoC X1000 Core is unable to
execute the NMI and executes another shutdown cycle. In this case, the Intel
®
Quark
SoC X1000 Core remains in the shutdown and can only exit via the RESET input.
Table 25. Exceptions with Different Meanings in Real Mode (see Table 24)
Function
Interrupt
Number
Related Instructions
Return Address
Location
Interrupt table limit too small 8 INT Vector is not within table limit Before Instruction
CS, DS, ES, FS, GS Segment
overrun exception
13
Word memory reference beyond offset =
FFFFH.
An attempt to execute past the end of
CS segment.
Before Instruction
SS Segment overrun
exception
12 Stack Reference beyond offset = FFFFH Before Instruction