Patents by Inventor Andrew W. Lueck

Andrew W. Lueck has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 7480784
    Abstract: In one embodiment, an input/output memory management unit (IOMMU) comprises a cache to cache translation data from memory; and a control unit coupled to the cache. The control unit is configured to implement address translation and memory protection for memory requests sourced by one or more input/output (I/O) devices. The memory requests sourced by the I/O devices travel in one or more first virtual channels, and the control unit is configured to transmit memory requests sourced by the control unit in at least a second virtual channel separate from the first virtual channels.
    Type: Grant
    Filed: August 11, 2006
    Date of Patent: January 20, 2009
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Mark D. Hummel, Michael J. Haertel, Andrew W. Lueck, Mitchell Alsup, William Alexander Hughes, Geoffrey S. Strongin
  • Publication number: 20080114916
    Abstract: In one embodiment, an input/output memory management unit (IOMMU) comprises a control register and control logic coupled to the control register. The control register is configured to store a base address of a device table, wherein a given input/output (I/O) device has an associated device identifier that selects a first entry in the device table. The first entry comprises a pointer to an interrupt remapping table. The control logic is configured to remap an interrupt specified by an interrupt request received by the IOMMU from the given I/O device if the interrupt remapping table includes an entry for the interrupt.
    Type: Application
    Filed: November 13, 2006
    Publication date: May 15, 2008
    Inventors: Mark D. Hummel, Andrew W. Lueck, Andrew G. Kegel
  • Publication number: 20080114906
    Abstract: In one embodiment, an input/output memory management unit (IOMMU) comprises a control register configured to store a base address of a set of translation tables and control logic coupled to the control register. The control logic is configured to respond to an input/output (I/O) device-initiated request having an address within an address range of an address space corresponding to a peripheral interconnect. One or more operations other than a memory operation are associated with the address range, and the control logic is configured to translate the address to a second address outside of the address range if the translation tables specify a translation from the address to the second address, whereby a memory operation is performed in response to the request instead of the one or more operations associated with the address range.
    Type: Application
    Filed: November 13, 2006
    Publication date: May 15, 2008
    Inventors: Mark D. Hummel, Andrew W. Lueck, Andrew G. Kegel
  • Publication number: 20070168636
    Abstract: In one embodiment, an input/output (I/O) node comprises an I/O memory management unit (IOMMU) configured to translate memory requests. The I/O node is configured to couple to an interconnect and to operate as a tunnel on the interconnect, and wherein the IOMMU is configured translate memory requests passing through the tunnel in the upstream direction. In another embodiment, a system comprises another I/O node configured to bridge another interconnect to the interconnect, wherein the I/O node is the tunnel for the other I/O node.
    Type: Application
    Filed: January 16, 2007
    Publication date: July 19, 2007
    Inventors: Mark D. Hummel, Andrew W. Lueck, Geoffrey S. Strongin, Mitchell Alsup, Michael Haertel
  • Publication number: 20070168644
    Abstract: In one embodiment, an input/output (I/O) memory management unit (IOMMU) comprises at least one memory and control logic coupled to the memory. The memory is configured to store translation data corresponding to one or more I/O translation tables stored in a memory system of a computer system that includes the IOMMU. The control logic is configured to translate an I/O device-generated memory request using the translation data. The translation data includes a type field indicating one or more attributes of the translation, and the control logic is configured to control the translation responsive to the type field.
    Type: Application
    Filed: January 16, 2007
    Publication date: July 19, 2007
    Inventors: Mark D. Hummel, Geoffrey S. Strongin, Andrew W. Lueck
  • Publication number: 20070168641
    Abstract: In one embodiment, a system comprises one or more input/output (I/O) devices; an I/O memory management unit (IOMMU) coupled to receive memory requests sourced by the I/O devices and configured to provide address translation for the memory requests; and a virtual machine monitor (VMM) configured to manage one or more virtual machines on the system, wherein the VMM is configured to virtualize the IOMMU, providing one or more virtual IOMMUs for use by one or more virtual machines.
    Type: Application
    Filed: January 16, 2007
    Publication date: July 19, 2007
    Inventors: Mark D. Hummel, Andrew W. Lueck, Geoffrey S. Strongin, Mitchell Alsup, Michael Haertel
  • Publication number: 20070168643
    Abstract: In an embodiment, an input/output (I/O) memory management unit (IOMMU) comprises at least one memory configured to store translation data; and control logic coupled to the memory and configured to translate an I/O device-generated memory request using the translation data. The translation data corresponds to one or more device table entries in a device table stored in a memory system of a computer system that includes the IOMMU, wherein the device table entry for a given request is selected by an identifier corresponding to the I/O device that generates the request. The translation data further corresponds to one or more I/O page tables, wherein the selected device table entry for the given request includes a pointer to a set of I/O page tables to be used to translate the given request.
    Type: Application
    Filed: January 16, 2007
    Publication date: July 19, 2007
    Inventors: Mark D. Hummel, Geoffrey S. Strongin, Mitchell Alsup, Michael Haertel, Andrew W. Lueck
  • Patent number: 7155553
    Abstract: A PCI Express to PCI bridge enables upstream and downstream isochronous data transfer by modifying the PCI bus arbiter so that the PCI device on the PCI bus is treated as a virtual port for the bridge. Data from the PCI device is assigned via a port arbitration table to sufficient bandwidth so that the data from the PCI device can be transferred upstream isochronously. The bridge also handles downstream isochronous data transfer.
    Type: Grant
    Filed: August 14, 2003
    Date of Patent: December 26, 2006
    Assignee: Texas Instruments Incorporated
    Inventors: Andrew W. Lueck, Kevin K. Main, Jeffrey H. Enoch
  • Patent number: 7028130
    Abstract: A system having a PCI Express fabric and PCI devices connected thereto transmits data from the PCI devices having PCI Express traffic classes assigned. A PCI Express to PCI bridge assigns a predetermined address to the grant line for each PCI device coupled to the PCI bus and stores this address along with the data from the PCI device in the PCI transaction queues. When the data is transmitted along the PCI Express fabric, or when it is processed within the PCI Express to PCI bridge, the address assigned to the respective grant line becomes the PCI Express traffic class for that data. This enables the commands from one device to be processed irrespective of commands from other PCI devices on the PCI bus.
    Type: Grant
    Filed: August 14, 2003
    Date of Patent: April 11, 2006
    Assignee: Texas Instruments Incorporated
    Inventors: Andrew W. Lueck, Kevin K. Main
  • Patent number: 7013358
    Abstract: The present invention provides a system for signaling legacy serialized interrupts within a PCI-Express environment, using message signaled interrupts. The system provides structures and methods that interface a PCI environment (106) with a PCI-Express environment (104). The present invention provides a PCI to PCI-Express bridge device (110) that is communicatively linked (112, 114) to the PCI and PCI-Express environments. The bridge device comprises a translation function (116) that is communicatively linked (120, 122) to the PCI and PCI-Express environments. A serialized interrupt is signaled from the PCI environment, and the translation function generates a message signaled interrupt within the PCI-Express environment based on that serialized interrupt.
    Type: Grant
    Filed: August 9, 2003
    Date of Patent: March 14, 2006
    Assignee: Texas Instruments Incorporated
    Inventors: Andrew W. Lueck, Kevin Keith Main