Check out my first novel, midnight's simulacra!

MSI: Difference between revisions

From dankwiki
(Created page with "Message-signaled interrupts were introduced in PCI 2.2, and are present in all versions of PCIe. Rather than a distinct physical hardware line for interrupt delivery, MSIs are in-band. This cuts down on interconnect complexity, allows for multiple distinct interrupts per device (up to 32, though Windows supports only 16), and eliminates a performance hit previously necessary for DMA coherency. MSI-X, introduced in PCIe 3.0, allows up to 2048 interrupt numbers per device...")
(No difference)

Revision as of 03:41, 19 February 2023

Message-signaled interrupts were introduced in PCI 2.2, and are present in all versions of PCIe. Rather than a distinct physical hardware line for interrupt delivery, MSIs are in-band. This cuts down on interconnect complexity, allows for multiple distinct interrupts per device (up to 32, though Windows supports only 16), and eliminates a performance hit previously necessary for DMA coherency.

MSI-X, introduced in PCIe 3.0, allows up to 2048 interrupt numbers per device.

MSI requires per-package LAPICs to be present and enabled, but eliminates the need for per-bus I/O APICs. Intel's current LAPIC implementation, the x2APIC, can address 32-bit processor IDs and is set up using MSRs.