/Apparatus And Method For Address Pre-translation To Enhance Direct Memory Access By Hardware Subsystems
Abstract

Apparatus and method for performing address pre-translation to enhance direct memory access by hardware subsystems are described herein. An apparatus embodiment includes a processor to execute an enqueue instruction to submit, to a hardware subsystem, a job descriptor describing a job to be performed. The job descriptor includes virtual addresses of memory locations in which data required to perform the jobs are stored. An input-output memory management unit (IOMMU) is to obtain the address translations for the virtual addresses responsive to a pre-translation request from the processor. The address translations are obtained by the IOMMU prior to receiving a memory access request from the hardware subsystem. The IOMMU is to retrieve the data from the memory location using the address translations and to provide the retrieved data to the hardware subsystem to fulfill the request.

Full Text

What is claimed is:

Apparatus and method for performing address pre-translation to enhance direct memory access by hardware subsystems are described herein. An apparatus embodiment includes a processor to execute an enqueue instruction to submit, to a hardware subsystem, a job descriptor describing a job to be performed. The job descriptor includes virtual addresses of memory locations in which data required to perform the jobs are stored. An input-output memory management unit (IOMMU) is to obtain the address translations for the virtual addresses responsive to a pre-translation request from the processor. The address translations are obtained by the IOMMU prior to receiving a memory access request from the hardware subsystem. The IOMMU is to retrieve the data from the memory location using the address translations and to provide the retrieved data to the hardware subsystem to fulfill the request.
Timeline
Filed
06/02/2026
Published
09/24/2026
Granted
Not Available
IPC Codes(1)
G06F 12/1081:for peripheral access to main memory, e.g. direct memory access [DMA]