Patents by Inventor John R. Kloeppner

John R. Kloeppner 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: 9019708
    Abstract: Apparatus and systems for improved access to storage devices from the sides of sleds mounted in storage enclosures. Embodiments provide apparatus and systems for a sled in a storage enclosure that provides access to storage devices on either side of the sled when the sled is slid forward out of its enclosure. Multiple sleds may be enclosed within a single enclosure to permit access to a portion of the storage devices in the enclosure hence reducing the problems of instability of the rack if the enclosure is mounted near the top of the rack.
    Type: Grant
    Filed: August 25, 2011
    Date of Patent: April 28, 2015
    Assignee: LSI Corporation
    Inventors: Macen Shinsato, Mohamad H. El-Batal, Robert E. Stubbs, Jason M. Stuhlsatz, 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: 20130205065
    Abstract: Methods and structure for an improved solid-state drive (SSD) for use in caching applications. An improved SSD comprises both volatile and non-volatile memory. The volatile memory provides improved performance as compared to present SSDs for use in caching application. The improved SSD senses impending failure of external power applied to the SSD and, while adequate power remains, copies cached data from the volatile memory to the non-volatile memory to retain the data through the power loss. In some embodiments, a local power source may be present to assure sufficient time for the SSD to save cached data in the non-volatile memory. Since the volatile memory (e.g., DRAM) is used for the primary caching function and the non-volatile memory is rarely used, performance, reliability and cost goals are achieved for write cache applications.
    Type: Application
    Filed: February 2, 2012
    Publication date: August 8, 2013
    Applicant: LSI CORPORATION
    Inventors: 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
  • Publication number: 20130050955
    Abstract: Apparatus and systems for improved access to storage devices from the sides of sleds mounted in storage enclosures. Embodiments provide apparatus and systems for a sled in a storage enclosure that provides access to storage devices on either side of the sled when the sled is slid forward out of its enclosure. Multiple sleds may be enclosed within a single enclosure to permit access to a portion of the storage devices in the enclosure hence reducing the problems of instability of the rack if the enclosure is mounted near the top of the rack.
    Type: Application
    Filed: August 25, 2011
    Publication date: February 28, 2013
    Applicant: LSI CORPORATION
    Inventors: Macen Shinsato, Mohamad H. El-Batal, Robert E. Stubbs, Jason M. Stuhlsatz, John R. Kloeppner
  • Publication number: 20110238938
    Abstract: A method includes multicasting an Input/Output (I/O) data associated with a host computing device through a multicast device associated with a storage controller coupled to another storage controller in a redundant configuration, and minoring, through the multicasting, the I/O data across the storage controller and the another storage controller through a bus utilized to couple the storage controller and the another storage controller. The method also includes transmitting an early write status message to the host computing device following the minoring of the I/O data across the storage controller and the another storage controller. The early write status message is associated with a successful completion of the mirroring of the I/O data across the storage controller and the another storage controller prior to the I/O data being written to a storage device associated therewith.
    Type: Application
    Filed: October 30, 2008
    Publication date: September 29, 2011
    Applicant: LSI Corporation
    Inventors: John R Kloeppner, Mohamad 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: 7676617
    Abstract: A method for verifying the proper communication of data packets from an initiator device on a PCIe data bus to a target device on the data bus. A target-specific counter on the initiator is synchronized to an initiator-specific counter on the target with the same value. The initiator writes the value of the target-specific counter into the tag field of the packet header, and also writes an identifier of the initiator into the header. Then the initiator sends the packet to the target on the PCIe data bus. Upon receipt of the packet, the target reads the identifier and checks the value against the appropriate initiator-specific counter on the target. When the value is not equal to the initiator-specific counter on the target, then it generates an error message. An additional memory write with specific data is posted from the initiator to the target. A memory read is posted of the additional memory write location from the initiator to the target.
    Type: Grant
    Filed: March 31, 2008
    Date of Patent: March 9, 2010
    Assignee: LSI Corporation
    Inventor: John R. Kloeppner
  • Publication number: 20090248942
    Abstract: A method for verifying the proper communication of data packets from an initiator device on a PCIe data bus to a target device on the data bus. A target-specific counter on the initiator is synchronized to an initiator-specific counter on the target with the same value. The initiator writes the value of the target-specific counter into the tag field of the packet header, and also writes an identifier of the initiator into the header. Then the initiator sends the packet to the target on the PCIe data bus. Upon receipt of the packet, the target reads the identifier and checks the value against the appropriate initiator-specific counter on the target. When the value is not equal to the initiator-specific counter on the target, then it generates an error message. An additional memory write with specific data is posted from the initiator to the target. A memory read is posted of the additional memory write location from the initiator to the target.
    Type: Application
    Filed: March 31, 2008
    Publication date: October 1, 2009
    Applicant: LSI CORPORATION
    Inventor: 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: 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
  • 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