发明名称 Direct memory access (DMA) address translation between peer input/output (I/O) devices
摘要 A method and apparatus is described herein for supporting direct memory accesses between peer I/O devices. It is determined whether a guest physical address (GPA) referenced by an access generated from an I/O device, is within a range of GPAs associated with local I/O devices based at least in part on a GPA base and a GPA window size. If the GPA is within the window, then the GPA is translated to an HPA based at least in part on a base HPA associated with a local device and then forwarded to that local device. However, if the GPA is not within the window, then the access is forwarded upstream.
申请公布号 US8850098(B2) 申请公布日期 2014.09.30
申请号 US200912653989 申请日期 2009.12.22
申请人 Intel Corporation 发明人 Madukkarumukumana Rajesh;Sutton, II James A.;Schoinas Ioannis;Uhlig Richard
分类号 G06F13/36;G06F13/28 主分类号 G06F13/36
代理机构 Blakely, Sokoloff, Taylor & Zafman LLP 代理人 Blakely, Sokoloff, Taylor & Zafman LLP
主权项 1. A method comprising: determining if a peer-to-peer transfer request generated by a first Peripheral Component Interconnect (PCI) device references an address in a window of addresses of a target device that has the same PCI bus address of a PCI master device; forwarding the peer-to-peer transfer request to a translation logic, if the target device does not have the same PCI bus address of the PCI master device, wherein the translation logic to translate the first device virtual address to the address of the target device is based at least in part on the PCI bus base address of the PCI master device plus offset, wherein once translated, a translation field is included with the address to indicate that a translation has already occurred and that a subsequent translation is unnecessary; forwarding the peer-to-peer transfer request to a local direct memory access (DMA) engine, if the address of the target device has the same PCI bus address of the PCI master device.
地址 Santa Clara CA US