System Address Map Initialization in x86/x64 Architecture Part 2: PCI Express-Based Systems

by Darmawan Salihun
Oct. 7, 2017 0 comments INFOSEC Institute Management

This article is the second part of a series that clarifies PCI expansion ROM address mapping to the system address map. The mapping was not sufficiently covered in my “Malicious PCI Expansion ROM”‘ article (http://resources.infosecinstitute.com/pci-expansion-rom/). You are assumed to have a working knowledge of PCI bus protocol and details of the x86/x64 boot process. If you don’t, then please read the first part to get up to speed with the background knowledge required to understand this article (at http://resources.infosecinstitute.com/system-address-map-initialization-in-x86x64-architecture-part-1-pci-based-systems/). The first part focuses on system address map initialization in a x86/x64 PCI-based system. This article focuses on more recent systems, i.e., x86/x64 PCI Express-based systems. From this point on, PCI Express is abbreviated as PCIe throughout this article, in accordance with official PCI Express specification.

http://resources.infosecinstitute.com/system-address-map-initialization-x86x64-architecture-part-...