Virtualizing input/output interrupts

US9396142B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9396142-B2
Application numberUS-201414300418-A
CountryUS
Kind codeB2
Filing dateJun 10, 2014
Priority dateJun 10, 2014
Publication dateJul 19, 2016
Grant dateJul 19, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

An input/output hub may include an interface unit and one or more communication units. Each communication unit may be configured to receive interrupts or messages from a corresponding endpoint device. A given communication unit may be further configured to synthesize a virtual address from the received message, translate the synthesized virtual address to a real address, and then translate the real address to a physical address. The interface unit may be configured to send an interrupt dependent upon the physical address.

First claim

Opening claim text (preview).

What is claimed is: 1. An apparatus, comprising: one or more communication units, wherein each of the one or more communication units is configured to: receive an interrupt or message from a respective endpoint device; synthesize a virtual address dependent upon at least part of the received interrupt or message; translate the synthesized virtual address to a real address; and translate the real address to a physical address; an interface unit coupled to each of the one or more communication units, wherein the interface unit is configured to send an interrupt dependent upon the physical address; wherein to synthesize the virtual address each of the one or more communication units is further configured to synthesize a requester identity, wherein the requester identity is dependent upon an identity of the respective endpoint device. 2. The apparatus of claim 1 , wherein each one of the one or more communication units includes an address translation unit. 3. The apparatus of claim 2 , wherein to translate the synthesized virtual address to the real address, each one of the one or more communication units is further configured to access the address translation unit using the synthesized virtual address. 4. The apparatus of claim 2 , wherein to translate the real address to the physical address, each one of the one or more communication units is further configured to access the address translation unit using the real address. 5. A method for handling an interrupt in a computer system, the method comprising: receiving an interrupt or message from an endpoint device; synthesizing a virtual address dependent on at least part of the received interrupt or message; translating the synthesized virtual address to a real address; and translating the real address to a physical address; wherein synthesizing the virtual address includes synthesizing a requester identity, wherein the requester identity is dependent upon an identity of the endpoint device. 6. The method of claim 5 , wherein translating the synthesized virtual address comprises accessing an address translation unit using the synthesized virtual address. 7. The method of claim 5 , wherein translating the real address to the physical address comprising accessing an address translation unit using the real address. 8. The method of claim 5 , further comprising filtering the received interrupt or message. 9. The method of claim 5 , wherein the received interrupt or message comprises an offset from a base address. 10. A system, comprising: one or more processors; one or more memories, wherein each memory of the one or more memories is coupled to a respective one of the one or more processors; and an input/output (I/O) hub coupled to at least one of the one or more processors, wherein the I/O hub is configured to: receive an interrupt or message from an endpoint device; synthesize a virtual address dependent on at least part of the received interrupt or message; translate the synthesized virtual address to a real address; and translate the real address to a physical address; wherein to synthesize the virtual address the I/O hub is further configured to synthesize a requester identity, wherein the requester identity is dependent upon an identity of the endpoint device. 11. The system of claim 10 , wherein the I/O hub is further configured to send an interrupt dependent upon the physical address. 12. The system of claim 10 , wherein the I/O hub is further configured to filter the received interrupt or message. 13. The system of claim 12 , wherein the I/O hub includes an address translation unit. 14. The system of claim 13 , wherein to translate the synthesized virtual address to the real address, the I/O hub is further configured to access address translation unit using the synthesized virtual address.

Assignees

Inventors

Classifications

  • for multiple virtual address spaces, e.g. segmentation (G06F12/1045 takes precedence) · CPC title

  • Hypervisors; Virtual machine monitors · CPC title

  • using page tables, e.g. page table structures · CPC title

  • G06F13/32Primary

    using combination of interrupt and burst mode transfer · CPC title

  • the data cache being concurrently physically addressed · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9396142B2 cover?
An input/output hub may include an interface unit and one or more communication units. Each communication unit may be configured to receive interrupts or messages from a corresponding endpoint device. A given communication unit may be further configured to synthesize a virtual address from the received message, translate the synthesized virtual address to a real address, and then translate the …
Who is the assignee on this patent?
Oracle Int Corp
What technology area does this patent fall under?
Primary CPC classification G06F13/32. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 19 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).