| Patent Number |
Title Of Patent |
Date Issued |
| 7606944 |
Dynamic input/output optimization within a storage controller |
October 20, 2009 |
| A system and method for optimizing accesses to storage devices based on RAID I/O request characteristics is disclosed. A current I/O request processed by a storage controller is analyzed for relative locality to a previous I/O request, and adjusted over time such that storage device |
| 7568122 |
Method and apparatus for identifying a faulty component on a multiple component field replaceabl |
July 28, 2009 |
| The present invention is directed to a data storage system utilizing a number of data storage devices. The data storage system features one or more storage device sleds, which may each carry multiple storage devices. Each storage device sled and its interconnected storage devices may |
| 7565566 |
Network storage appliance with an integrated switch |
July 21, 2009 |
| A network storage appliance including one or more integrated switching devices is disclosed. The appliance includes redundant storage controllers that transfer frames of data between storage devices and host computers. The integrated switching devices include a plurality of I/O ports |
| 7558897 |
Method for adopting an orphan I/O port in a redundant storage controller |
July 7, 2009 |
| A method for adopting an orphaned I/O port of a storage controller is disclosed. The storage controller has first and second redundant field-replaceable units (FRU) for processing I/O requests and a third FRU having at least one I/O port for receiving the I/O requests from host compu |
| 7543096 |
Safe message transfers on PCI-Express link from RAID controller to receiver-programmable window |
June 2, 2009 |
| A fault-tolerant mass storage system includes two RAID controllers that communicate via a PCI-Express link. Each controller has a bus bridge coupled to the link, a cache memory that caches user data for storage on disk drives controlled by the controllers, and a CPU. The CPU fetches and |
| 7536584 |
Fault-isolating SAS expander |
May 19, 2009 |
| A SAS expander includes SAS PHYs for transceiving signals with SAS devices on corresponding SAS links coupled to the SAS PHYs. The SAS expander includes status registers that provide fault detection parameters concerning communications on the SAS links. A microprocessor of the SAS ex |
| 7536508 |
System and method for sharing SATA drives in active-active RAID controller system |
May 19, 2009 |
| An active-active RAID system includes first and second active-active RAID controllers which efficiently share access to SATA drives. SAS expanders connect the RAID controllers to the drives. The controllers establish an affiliation within the SAS expanders with respectively-owned first a |
| 7536506 |
RAID controller using capacitor energy source to flush volatile cache data to non-volatile memor |
May 19, 2009 |
| A write-caching RAID controller is disclosed. The controller includes a CPU that manages transfers of posted-write data from host computers to a volatile memory and transfers of the posted-write data from the volatile memory to storage devices when a main power source is supplying power |
| 7536495 |
Certified memory-to-memory data transfer between active-active raid controllers |
May 19, 2009 |
| A system for performing an efficient mirrored posted-write operation having first and second RAID controllers in communication via a PCI-Express link is disclosed. The first bus bridge transmits a PCI-Express memory write request TLP to the second bus bridge. The TLP header includes |
| 7523350 |
Timer-based apparatus and method for fault-tolerant booting of a storage controller |
April 21, 2009 |
| A fault tolerant storage controller having a processor, redundant copies of a stored program, and a timer that automatically runs when the processor is reset is disclosed. Selection logic selects a first copy of the program to boot on the processor. If the timer expires before the fi |
| 7493441 |
Mass storage controller with apparatus and method for extending battery backup time by selective |
February 17, 2009 |
| A battery-backed write-caching mass storage controller is disclosed. The controller includes a plurality of volatile memory banks for caching write data prior to being written to disk drives. Critical data is stored into a first subset of the memory banks, leaving a second subset of |
| 7487391 |
Storage controller super capacitor adaptive life monitor |
February 3, 2009 |
| A storage controller has a capacitor pack for storing energy to supply during a main power loss, a temperature sensor that senses the capacitor pack temperature, and a CPU, which repeatedly: receives the temperature during an interval over which the capacitor pack is operated, determines |
| 7464214 |
Application server blade for embedded storage appliance |
December 9, 2008 |
| A server blade includes a printed circuit board (PCB), including a connector for connecting the blade to a backplane comprising a local bus, and a removal mechanism for use by a person to disconnect the connector from the backplane for removal of the blade from a chassis while the ch |
| 7464205 |
Application server blade for embedded storage appliance |
December 9, 2008 |
| A method for transferring data within a network storage appliance is disclosed. The method includes transmitting a packet on an I/O link from a server to a first portion of a storage controller. Transmitting the packet on the I/O link is performed within a single blade module in a ch |
| 7451348 |
Dynamic write cache size adjustment in raid controller with capacitor backup energy source |
November 11, 2008 |
| A high data availability write-caching storage controller has a volatile memory with a write cache for caching write cache data, a non-volatile memory, a capacitor pack for supplying power for backing up the write cache to the non-volatile memory in response to a loss of main power, and |
| 7437604 |
Network storage appliance with integrated redundant servers and storage controllers |
October 14, 2008 |
| A network storage appliance includes a chassis, enclosing a storage controller and first and second servers. The storage controller has first and second I/O ports for coupling to first and second I/O links. The storage controller controls a plurality of physical disk drives and prese |
| 7401254 |
Apparatus and method for a server deterministically killing a redundant server integrated within |
July 15, 2008 |
| An apparatus for deterministically killing one of redundant servers integrated into a network storage appliance chassis along with at least one storage controller is disclosed. Each server can generate a kill signal on a backplane of the chassis to the other server in response to a s |
| 7380163 |
Apparatus and method for deterministically performing active-active failover of redundant server |
May 27, 2008 |
| An apparatus is disclosed for deterministically performing active-active failover of redundant servers in response to a failure of a link on which each server provides a heartbeat to the other server. Each of the servers is configured to take over the identity of the other server on a co |
| 7380055 |
Apparatus and method in a cached raid controller utilizing a solid state backup device for impro |
May 27, 2008 |
| An apparatus for reducing data unavailability time after a loss of main power in a storage controller is described. The controller backs up its volatile memory containing posted-write data to a non-volatile memory upon detecting a loss of main power. The controller continues to provide |
| 7362565 |
Disk drive support system |
April 22, 2008 |
| A housing structure is provided for supporting vertically stacked horizontally extending arrays of forwardly removable disk drives in a very compact arrangement. The housing has spaced apart vertical walls with opposite side surface grooves having laterally projecting elastomeric bum |
| 7340555 |
RAID system for performing efficient mirrored posted-write operations |
March 4, 2008 |
| A bus bridge on a primary RAID controller receives user write data from a host and writes the data to its write cache and also broadcasts the data over a high speed link (e.g., PCI-Express) to a secondary RAID controller's bus bridge, which writes the data to its mirroring write cach |
| 7334064 |
Application server blade for embedded storage appliance |
February 19, 2008 |
| An application server blade for an embedded storage appliance is disclosed. The blade includes a printed circuit board (PCB) with a connector for connecting to a chassis backplane including a local bus. Affixed on the PCB is a server, a portion of a storage controller, and an I/O lin |
| 7330999 |
Network storage appliance with integrated redundant servers and storage controllers |
February 12, 2008 |
| A network storage appliance integrates a plurality of servers and a plurality of storage controllers into a single chassis. The storage controllers control transfers of data between the servers and storage devices controlled by the storage controllers. The servers and storage control |
| 7320083 |
Apparatus and method for storage controller to deterministically kill one of redundant servers i |
January 15, 2008 |
| An apparatus and method for deterministically killing one of redundant servers on a common network is disclosed. The apparatus includes a chassis that encloses the servers and a storage controller, status indicators generated by the servers to the storage controller, and kill control |
| 7315911 |
Method for efficient inter-processor communication in an active-active RAID system using PCI-exp |
January 1, 2008 |
| A fault-tolerant RAID system is disclosed. The system includes redundant RAID controllers coupled by a PCI-Express link. When a PCI-Express controller of one of the RAID controllers receives a PCI-Express memory write request transaction layer packet (TLP), it interprets a predetermi |
| 7313721 |
Apparatus and method for performing a preemptive reconstruct of a fault-tolerant RAID array |
December 25, 2007 |
| A RAID controller performs a preemptive reconstruct of a redundant array of disks while it is still fault-tolerant by determining the errors by a first disk exceeded the error threshold, and reading data from a second disk, and writing the data to a spare disk. The second disk's data is |
| 7278054 |
Apparatus and method for deterministically performing active-active failover of redundant server |
October 2, 2007 |
| An apparatus is disclosed for deterministically performing active-active failover of redundant servers in response to a failure of a link on which each server provides a heartbeat to the other server. Each of the servers is configured to take over the identity of the other server on a co |
| 7277995 |
Storage controller and method for performing host access control in the host interface adapter |
October 2, 2007 |
| A storage controller that provides controlled access to storage devices by host computers is disclosed. The storage controller includes a host interface adapter that interfaces the storage controller to the hosts, a device interface adapter that interfaces the storage controller to the |
| 7146448 |
Apparatus and method for adopting an orphan I/O port in a redundant storage controller |
December 5, 2006 |
| A storage controller configured to adopt orphaned I/O ports is disclosed. The controller includes multiple field-replaceable units (FRUs) that plug into a backplane having local buses. At least two of the FRUs have microprocessors and memory for processing I/O requests received from host |
| 7143227 |
Broadcast bridge apparatus for transferring data to redundant memory subsystems in a storage con |
November 28, 2006 |
| A bus bridge apparatus for performing broadcasted writes to redundant memory subsystems in a network storage controller is disclosed. The bus bridge includes a PCI-X target that receives a write command on a first PCI-X bus on one side of the bridge. The target is coupled to two PCI-X |