Patents by Inventor Dennis E. Gates

Dennis E. Gates 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: 9110796
    Abstract: Apparatus and circuitry are provided for supporting collection and/or verification of data integrity information. A circuitry in a storage controller is provided for creating and/or verifying a Data Integrity Block (“DIB”). The circuitry comprises a processor interface for coupling with the processor of the storage controller. The circuitry also comprises a memory interface for coupling with a cache memory of the storage controller. By reading a plurality of Data Integrity Fields (“DIFs”) from the cache memory through the memory interface based on information received from the processor, the DIB is created in that each DIF in the DIB corresponds to a respective data block.
    Type: Grant
    Filed: January 27, 2009
    Date of Patent: August 18, 2015
    Assignee: Avago Technologies General IP (Singapore) Pte Ltd
    Inventors: Dennis E. Gates, John R. Kloeppner
  • Patent number: 8756371
    Abstract: Methods and apparatus for improved calculation of redundancy information in RAID storage controllers. Features and aspects hereof provide for a firmware/software element (FPE) for generating redundancy information in combination with a custom logic circuit (HPE) designed to generate redundancy information. A scheduler element operable on a processor of a storage controller along with the FPE determines which of the FPE and HPE is best suited to rapidly complete a new redundancy computation operation and activates or queues the new operation for performance by the selected component.
    Type: Grant
    Filed: October 12, 2011
    Date of Patent: June 17, 2014
    Assignee: LSI Corporation
    Inventors: Randy K. Hall, Dennis E. Gates, Randolph W Sterns, John R. Kloeppner, Mohamad H. El-Batal
  • Publication number: 20130097376
    Abstract: Methods and apparatus for improved calculation of redundancy information in RAID storage controllers. Features and aspects hereof provide for a firmware/software element (FPE) for generating redundancy information in combination with a custom logic circuit (HPE) designed to generate redundancy information. A scheduler element operable on a processor of a storage controller along with the FPE determines which of the FPE and HPE is best suited to rapidly complete a new redundancy computation operation and activates or queues the new operation for performance by the selected component.
    Type: Application
    Filed: October 12, 2011
    Publication date: April 18, 2013
    Applicant: LSI CORPORATION
    Inventors: Randy K. Hall, Dennis E. Gates, Randolph W. Sterns, John R. Kloeppner, Mohamad H. El-Batal
  • Patent number: 7913027
    Abstract: A configurable storage array controller can be configured to either a single-processor configuration or a multi-processor configuration by configuring a data bus switch system.
    Type: Grant
    Filed: April 7, 2009
    Date of Patent: March 22, 2011
    Assignee: LSI Corporation
    Inventors: John R. Kloeppner, Jeremy D. Stover, Dennis E. Gates, Jason M. Stuhlsatz, Robert E. Stubbs, Mohamad El-Batal
  • Publication number: 20100257301
    Abstract: A configurable storage array controller can be configured to either a single-processor configuration or a multi-processor configuration by configuring a data bus switch system.
    Type: Application
    Filed: April 7, 2009
    Publication date: October 7, 2010
    Applicant: LSI CORPORATION
    Inventors: John R. Kloeppner, Jeremy D. Stover, Dennis E. Gates, Jason M. Stuhlsatz, Robert E. Stubbs, Mohamad El-Batal
  • Publication number: 20100191910
    Abstract: Apparatus and circuitry are provided for supporting collection and/or verification of data integrity information. A circuitry in a storage controller is provided for creating and/or verifying a Data Integrity Block (“DIB”). The circuitry comprises a processor interface for coupling with the processor of the storage controller. The circuitry also comprises a memory interface for coupling with a cache memory of the storage controller. By reading a plurality of Data Integrity Fields (“DIFs”) from the cache memory through the memory interface based on information received from the processor, the DIB is created in that each DIF in the DIB corresponds to a respective data block.
    Type: Application
    Filed: January 27, 2009
    Publication date: July 29, 2010
    Inventors: Dennis E. Gates, John R. Kloeppner
  • Patent number: 7562176
    Abstract: Apparatus, systems and methods for clustering multiple PCI Express hierarchies to enable access of components in different hierarchies. Each PCI Express hierarchy includes a root device as well as a cluster port for coupling each hierarchy to each other hierarchy of a physical cluster through a PCI Express switched fabric. Memory addresses and transaction IDs are re-mapped by the cluster port of each hierarchy to partition the PCI Express space of the system of multiple hierarchies. A first portion of the partitioned space is reserved for access to local components within a hierarchy. A second portion of the space is used to access remote components of other hierarchies from within a different first hierarchy. The address and transaction ID values exchanged in such remote transactions are re-mapped and used by the cluster port of each hierarchy to route exchanges between hierarchies using standard PCIe root devices, endpoint devices, and switches.
    Type: Grant
    Filed: February 28, 2007
    Date of Patent: July 14, 2009
    Assignee: LSI Corporation
    Inventors: John R. Kloeppner, Dennis E. Gates, Robert E. Stubbs, Mohamad H. El-Batal, Russell J. Henry, Charles E. Nichols
  • Publication number: 20080209099
    Abstract: Apparatus, systems and methods for clustering multiple PCI Express hierarchies to enable access of components in different hierarchies. Each PCI Express hierarchy includes a root device as well as a cluster port for coupling each hierarchy to each other hierarchy of a physical cluster through a PCI Express switched fabric. Memory addresses and transaction IDs are re-mapped by the cluster port of each hierarchy to partition the PCI Express space of the system of multiple hierarchies. A first portion of the partitioned space is reserved for access to local components within a hierarchy. A second portion of the space is used to access remote components of other hierarchies from within a different first hierarchy. The address and transaction ID values exchanged in such remote transactions are re-mapped and used by the cluster port of each hierarchy to route exchanges between hierarchies using standard PCIe root devices, endpoint devices, and switches.
    Type: Application
    Filed: February 28, 2007
    Publication date: August 28, 2008
    Inventors: John R. Kloeppner, Dennis E. Gates, Robert E. Stubbs, Mohamad H. El-Batal, Russell J. Henry, Charles E. Nichols
  • Patent number: 7155537
    Abstract: A method and system for facilitating communication between computer subnets are provided. One embodiment of the present invention comprises presetting buffers in an internal subnet, wherein the buffers help route external commands to a plurality of devices within the internal subnet. When a command from an external subnet is received by the internal subnet, the command is translated and sent to the proper internal device, as determined by the buffers. The command is then performed by the proper internal device. In another embodiment of the present invention, translation mapping are established for the internal subnet. When a command is received from an external subnet, the destination address associated with the command is translated to the address of the appropriate internal device, and the command is then sent directly to the internal device, which performs the command. By using either the buffer or translation mappings, the internal subnet appears to be a single device to the external subnet.
    Type: Grant
    Filed: September 27, 2001
    Date of Patent: December 26, 2006
    Assignee: LSI Logic Corporation
    Inventors: Bret S. Weber, Russell J. Henry, Dennis E. Gates, Keith W. Holt
  • Patent number: 7043622
    Abstract: Systems and methods for handling I/O requests from a host system to a storage system. A system includes an I/O module for processing I/O requests from a host system, a virtualized storage element, and a communication medium coupling the I/O module to the virtualized storage elements. The virtualized storage element includes a mapping table for translating virtual storage locations into physical storage locations and a plurality of physical storage locations. The virtualized storage element generates base virtual addresses using the mapping table to communicate the base virtual addresses to the I/O module. The I/O module generates specific virtual addresses using the base virtual addresses and using information derived from the I/O requests. The I/O module uses the specific virtual addresses in communication with the virtualized storage element to identify the physical storage locations in the virtualized storage element.
    Type: Grant
    Filed: December 23, 2002
    Date of Patent: May 9, 2006
    Assignee: LSI Logic Corporation
    Inventors: Russell J. Henry, Bret S. Weber, Dennis E. Gates, John R. Kloeppner, Keith W. Holt
  • Patent number: 7035995
    Abstract: A hardware assisted searching mechanism is provided that offloads the processor from searching operations. In a preferred embodiment, the hardware assisted searching mechanism performs a binary search of an associated 32 bit register against a binary search table that is set up by the firmware of the storage system. From this binary search table, an index into other structures stored in firmware is obtained that may be used to identify a target device. For example, when a search is to be performed due to receipt of an I/O operation, the firmware, i.e. software instructions stored in the persistent memory chip that are executed by the system processor, writes a 32 bit value to a hardware register that is used by the hardware assisted searching mechanism of the present invention. The hardware assisted searching mechanism performs a binary search of a binary search table based on the contents of the hardware register and returns an index of the entry in another hardware register.
    Type: Grant
    Filed: December 11, 2002
    Date of Patent: April 25, 2006
    Assignee: LSI Logic Corporation
    Inventors: Russell J. Henry, Bret S. Weber, Dennis E. Gates, John R. Kloeppner, Keith William Holt
  • Patent number: 6917990
    Abstract: Methods and associated structure for improving storage system performance by reducing latency associated with communication medium transactions internal to a storage subsystem. In one aspect of the present invention, an I/O control element associated with a storage system transmits prefetch read requests to an associated storage element of the storage system in response to receipt of a host system request. This allows the storage element to commence data transfer to the I/O element in advance of the I/O element returning the data to the host system. Subsequent transfers of data from the storage element to the I/O element then overlap the transfer of data from the I/O element to the host.
    Type: Grant
    Filed: December 23, 2002
    Date of Patent: July 12, 2005
    Assignee: LSI Logic Corporation
    Inventors: Russell J. Henry, Bret S. Weber, Dennis E. Gates, John R. Kloeppner, Keith W. Holt
  • Patent number: 6898666
    Abstract: A method of increasing computer system bandwidth for computer system having two or more memory complexes is disclosed in which exclusive OR operations are performed on the data from the data regions to generate parity information which is stored in the same single cache pool as the data regions. By using a single cache pool for related data regions, bandwidth and performance are improved.
    Type: Grant
    Filed: November 1, 2001
    Date of Patent: May 24, 2005
    Assignee: LSI Logic Corporation
    Inventors: Russell J. Henry, Max L. Johnson, Bret Weber, Dennis E. Gates
  • Publication number: 20040122987
    Abstract: Methods and associated structure for improving storage system performance by reducing latency associated with communication medium transactions internal to a storage subsystem. In one aspect of the present invention, an I/O control element associated with a storage system transmits prefetch read requests to an associated storage element of the storage system in response to receipt of a host system request. This allows the storage element to commence data transfer to the I/O element in advance of the I/O element returning the data to the host system. Subsequent transfers of data from the storage element to the I/O element then overlap the transfer of data from the I/O element to the host.
    Type: Application
    Filed: December 23, 2002
    Publication date: June 24, 2004
    Inventors: Russell J. Henry, Bret S. Weber, Dennis E. Gates, John R. Kloeppner, Keith W. Holt
  • Publication number: 20040123017
    Abstract: Systems and methods for handling I/O requests from a host system to a storage system. A system includes an I/O module for processing I/O requests from a host system, a virtualized storage element, and a communication medium coupling the I/O module to the virtualized storage elements. The virtualized storage element includes a mapping table for translating virtual storage locations into physical storage locations and a plurality of physical storage locations. The virtualized storage element generates base virtual addresses using the mapping table to communicate the base virtual addresses to the I/O module. The I/O module generates specific virtual addresses using the base virtual addresses and using information derived from the I/O requests. The I/O module uses the specific virtual addresses in communication with the virtualized storage element to identify the physical storage locations in the virtualized storage element.
    Type: Application
    Filed: December 23, 2002
    Publication date: June 24, 2004
    Inventors: Russell J. Henry, Bret S. Weber, Dennis E. Gates, John R. Kloeppner, Keith W. Holt
  • Publication number: 20040117596
    Abstract: A hardware assisted searching mechanism is provided that offloads the processor from searching operations. In a preferred embodiment, the hardware assisted searching mechanism performs a binary search of an associated 32 bit register against a binary search table that is set up by the firmware of the storage system. From this binary search table, an index into other structures stored in firmware is obtained that may be used to identify a target device. For example, when a search is to be performed due to receipt of an I/O operation, the firmware, i.e. software instructions stored in the persistent memory chip that are executed by the system processor, writes a 32 bit value to a hardware register that is used by the hardware assisted searching mechanism of the present invention. The hardware assisted searching mechanism performs a binary search of a binary search table based on the contents of the hardware register and returns an index of the entry in another hardware register.
    Type: Application
    Filed: December 11, 2002
    Publication date: June 17, 2004
    Inventors: Russell J. Henry, Bret S. Weber, Dennis E. Gates, John R. Kloeppner, Keith William Holt
  • Patent number: 6735645
    Abstract: The present invention is directed to a system and method for eliminating race conditions in RAID controllers while utilizing a high bandwidth internal architecture for data flow. A remote memory controller of the present invention may ensure that an acknowledge signal is sent only after a memory operation has been actually completed. This may provide for remote direct memory access without coherency problems and data corruption problems while a high bandwidth data flow internal architecture is being utilized.
    Type: Grant
    Filed: September 4, 2001
    Date of Patent: May 11, 2004
    Assignee: LSI Logic Corporation
    Inventors: Bret S. Weber, Russell J. Henry, Dennis E. Gates, Keith W. Holt
  • Patent number: 6654853
    Abstract: Data transfers from the peripheral interface of a disk array to a data buffer are snooped to determine if the starting address of a data transfer matches an entry in a list of starting addresses for requested data. If a match is identified, third party transfer is initiated and the data is simultaneously transferred to the host interface of the host system. The resulting data bandwidth is increased. A throttling/suspension mechanism can temporarily or indefinitely hold up actual data movement into the data buffer to allow for temporary buffering and interface speed matching as data is transferred to the host interface.
    Type: Grant
    Filed: December 23, 1996
    Date of Patent: November 25, 2003
    Assignee: LSI Logic Corporation
    Inventors: Dennis E. Gates, Scott E. Greenfield
  • Publication number: 20030105931
    Abstract: The present invention is directed to an architecture for transparent mirroring. A method of providing data redundancy in a data storage system may include receiving a request by a first data storage device controller for data access operation. Data is written to a local storage device and a data access operation performed by a second data storage device controller communicatively coupled to the first data storage device controller over an interconnect fabric simultaneously. The second data storage device controller communicatively coupled to a second data storage device.
    Type: Application
    Filed: November 30, 2001
    Publication date: June 5, 2003
    Inventors: Bret S. Weber, Russell J. Henry, Dennis E. Gates, Keith W. Holt, John V. Sherman
  • Patent number: 6385683
    Abstract: The present invention provides storage system controllers and methods of controlling storage systems therewith. The controller (10) includes a main processor (12), a memory (14), a device interface (18) adapted to interface a peripheral component (28-32), such as a RAID storage device, with the storage system controller, and an operations sequencer (24). The main processor sequences a plurality of tasks to be executed to complete an operation. The operations sequencer coordinates an execution of the plurality of tasks. Methods of the invention include receiving a task status for each of the plurality of tasks that is executed, and issuing an interrupt to the main processor after all of the plurality of tasks of the operation are finished executing. In this manner, the operations sequencer offloads at least some of the main processor overhead to improve processor efficiency.
    Type: Grant
    Filed: August 13, 1999
    Date of Patent: May 7, 2002
    Assignee: LSI Logic Corporation
    Inventors: Rodney A. DeKoning, Dennis E. Gates, Keith W. Holt, John R. Kloeppner