Volume 2, Part 2: External Interrupt Architecture
2:603
External Interrupt Architecture
10
The Itanium architecture provides a high performance external interrupt architecture.
While IA-32 processors commonly use a three wire shared APIC bus, processors based
on the Itanium architecture utilize a high performance, message-based, point-to-point
protocol between processors and multiple I/O interrupt controllers. To ensure that
processors based on the Itanium architecture can fully leverage the large set of existing
platform infrastructure and I/O devices, compatibility with existing platform
infrastructure is provided in the form of direct support for Intel 8259A compatible
interrupt controllers and limited support for level sensitive interrupts.
This chapter introduces the basic external interrupt mechanism provided by the
architecture, while
provides the complete architectural
definition for the Itanium external interrupt architecture.
10.1
External Interrupt Basics
Interrupts are identified by their vector number. The vector number implies interrupt
priority, and also determines whether the interrupt is delivered to processor firmware
as a “PAL-based” interrupt, or whether it is delivered to the operating system as an
“IVA-based” external interrupt.
This chapter discusses asynchronous external interrupts only. PAL-based platform
management interrupts (PMI) are not discussed here. External interrupts are IVA-based
and are delivered to the operating system by transferring control to code located at
address CR[IVA]+0x3000. This code location is also known as the external interrupt
vector and is described on
.
Software can distinguish interrupts based on their vector number. Vector numbers
range from 0 to 255. Vector numbers also establish interrupt priorities as follows:
• Vector numbers below 16 are special, and are architecturally defined in
Section 5.8.1, “Interrupt Vectors and Priorities” on page 2:118
. The non-maskable
interrupt (NMI) is always vector 2 and is higher priority than all in-service external
interrupts. ExtINT, Intel 8259A compatible external interrupt controller interrupt, is
always vector 0. Vector numbers below 16 have higher priority than vectors above
16. Vector 15 is used to indicate that the highest priority pending interrupt in the
processor is at a priority level that is currently masked or there are no pending
external interrupts.
• For vector numbers between 16 and 255, higher vector numbers imply higher
priority. In this range, vectors are freely assignable by software. This is achieved by
programming of interrupt controllers and the processor internal interrupt
configuration registers.
Summary of Contents for ITANIUM ARCHITECTURE - SOFTWARE DEVELOPERS VOLUME 3 REV 2.3
Page 1: ......
Page 11: ...x Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 13: ...1 2 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 33: ...1 22 Volume 1 Part 1 Introduction to the Intel Itanium Architecture ...
Page 57: ...1 46 Volume 1 Part 1 Execution Environment ...
Page 147: ...1 136 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 149: ...1 138 Volume 1 Part 2 About the Optimization Guide ...
Page 191: ...1 180 Volume 1 Part 2 Predication Control Flow and Instruction Stream ...
Page 230: ......
Page 248: ...236 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 250: ...2 2 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 264: ...2 16 Volume 2 Part 1 Intel Itanium System Environment ...
Page 380: ...2 132 Volume 2 Part 1 Interruptions ...
Page 398: ...2 150 Volume 2 Part 1 Register Stack Engine ...
Page 486: ...2 238 Volume 2 Part 1 IA 32 Interruption Vector Descriptions ...
Page 750: ...2 502 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 754: ...2 506 Volume 2 Part 2 About the System Programmer s Guide ...
Page 796: ...2 548 Volume 2 Part 2 Interruptions and Serialization ...
Page 808: ...2 560 Volume 2 Part 2 Context Management ...
Page 842: ...2 594 Volume 2 Part 2 Floating point System Software ...
Page 850: ...2 602 Volume 2 Part 2 IA 32 Application Support ...
Page 862: ...2 614 Volume 2 Part 2 External Interrupt Architecture ...
Page 870: ...2 622 Volume 2 Part 2 Performance Monitoring Support ...
Page 891: ......
Page 1099: ...3 200 Volume 3 Instruction Reference padd Interruptions Illegal Operation fault ...
Page 1295: ...3 396 Volume 3 Resource and Dependency Semantics ...
Page 1296: ......
Page 1302: ...402 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 1494: ...4 192 Volume 4 Base IA 32 Instruction Reference FWAIT Wait See entry for WAIT ...
Page 1647: ...Volume 4 Base IA 32 Instruction Reference 4 345 ROL ROR Rotate See entry for RCL RCR ROL ROR ...
Page 1884: ...4 582 Volume 4 IA 32 SSE Instruction Reference ...
Page 1885: ...Index Intel Itanium Architecture Software Developer s Manual Rev 2 3 Index ...
Page 1886: ...Index Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 1898: ...INDEX Index 12 Index for Volumes 1 2 3 and 4 ...