TECHNIQUES FOR MAPPING DEVICE ADDRESSES TO PHYSICAL MEMORY ADDRESSES
First Claim
1. A data processing system, comprising:
- a main storage;
an input/output memory management unit (IOMMU) coupled to the main storage;
a peripheral component interconnect (PCI) device coupled to the IOMMU, wherein the system is configured to allocate an amount of physical memory in the main storage and the IOMMU is configured to provide access to the main storage and to map a PCI address from the PCI device to a physical memory address within the main storage; and
a mapper configured to perform a mapping between the allocated amount of physical memory of the main storage and a contiguous PCI address space, wherein the IOMMU is further configured to translate PCI addresses of the contiguous PCI address space to the physical memory address within the main storage.
1 Assignment
0 Petitions
Accused Products
Abstract
A data processing system includes a main storage, an input/output memory management unit (IOMMU) coupled to the main storage, a peripheral component interconnect (PCI) device coupled to the IOMMU, and a mapper. The system is configured to allocate an amount of physical memory in the main storage and the IOMMU is configured to provide access to the main storage and to map a PCI address from the PCI device to a physical memory address within the main storage. The mapper is configured to perform a mapping between the allocated amount of physical memory of the main storage and a contiguous PCI address space. The IOMMU is further configured to translate PCI addresses of the contiguous PCI address space to the physical memory address within the main storage.
46 Citations
20 Claims
-
1. A data processing system, comprising:
-
a main storage; an input/output memory management unit (IOMMU) coupled to the main storage; a peripheral component interconnect (PCI) device coupled to the IOMMU, wherein the system is configured to allocate an amount of physical memory in the main storage and the IOMMU is configured to provide access to the main storage and to map a PCI address from the PCI device to a physical memory address within the main storage; and a mapper configured to perform a mapping between the allocated amount of physical memory of the main storage and a contiguous PCI address space, wherein the IOMMU is further configured to translate PCI addresses of the contiguous PCI address space to the physical memory address within the main storage. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A data processing system, comprising:
-
an input/output memory management unit (IOMMU) coupled to a main storage; a peripheral component interconnect (PCI) device coupled to the IOMMU, wherein the system is configured to allocate an amount of physical memory in the main storage and the IOMMU is configured to provide access to the main storage and to map a PCI address from the PCI device to a physical memory address within the main storage; and a mapper configured to perform a mapping between the allocated amount of physical memory of the main storage and a contiguous PCI address space, wherein the mapper is configured to allocate separate contiguous areas of PCI memory within the contiguous PCI address space for application requests, and wherein the IOMMU is further configured to translate PCI addresses of the contiguous PCI address space to the physical memory address within the main storage. - View Dependent Claims (17, 18)
-
-
19. A method of accessing physical memory, comprising:
-
mapping, using an input/output memory management unit (IOMMU), a peripheral component interconnect (PCI) address from a PCI device to a physical memory address within main storage; mapping, using a mapper, between an allocated amount of physical memory of the main storage and a contiguous PCI address space; and translating, using the IOMMU, PCI addresses of the contiguous PCI address space to a physical memory address within the main storage. - View Dependent Claims (20)
-
Specification