# US 2013/0159622 A1 · Chained, scalable storage devices

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2013/0159622 A1
- Document ID: US20130159622A1
- Status: Published application
- Kind: A1
- Application number: 13/765,253
- Filed: 2013-02-12
- Published: 2013-06-20
- Earliest claimed: 2010-06-18
- Assignees: LSI Corporation
- Inventors: Earl T. Cohen
- Web page: https://patentgrep.com/patent/US20130159622A1

## CPC

- G06F 3/061: {Improving I/O performance}
- G06F 3/0604: {Improving or facilitating administration, e.g. storage management}
- G06F 3/0626: {Reducing size or complexity of storage systems}
- G06F 3/0631: {by allocating resources to storage systems}
- G06F 3/0659: {Command handling arrangements, e.g. command buffers, queues, command scheduling}
- G06F 3/0664: {at device level, e.g. emulation of a storage device or system}
- G06F 3/067: {Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]}
- G06F 3/0683: {Plurality of storage devices}
- G06F 3/0688: {Non-volatile semiconductor memory arrays}
- G06F 12/00: Accessing, addressing or allocating within memory systems or architectures (digital input from, or digital output to record carriers, e.g. to disk storage units, G06F3/06)
- G06F 13/4022: {using switching circuits, e.g. switching matrix, connection or expansion network (G06F13/4009 takes precedence)}
- G06F 2213/0026: PCI express
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Described embodiments access data in a chained, scalable storage system. A primary agent of one or more storage devices receives a host request including a logical address from a host coupled to the primary agent. The primary agent determines, based on the logical address, a corresponding physical address in at least one of the storage devices and generates, based on the physical address, a sub-request for each determined physical address in the storage devices. The primary agent sends, via a storage device interface network operable independently of the host, the sub-requests to the storage devices. The storage device interface network is a peer-to-peer network coupling the storage devices to the primary agent. The primary agent receives sub-statuses in response to the sub-requests, and determines an overall status. The primary agent provides the overall status to the host such that the host is coupled to the storage devices without a switch.

## Claims

### Claim 1

A method of accessing data in a chained, scalable storage system, the method comprising:
receiving, by a primary agent of one or more storage devices, a host request from a host device coupled to the primary agent via a host interface network, the request to access a logical address of the one or more storage devices;
determining, by the primary agent based on the logical address, a corresponding physical address in at least one of the one or more storage devices;
generating, by the primary agent based on the physical address, a sub-request corresponding to the host request and each of the determined corresponding physical addresses in at least one of the one or more storage devices;
sending, by the primary agent via a storage device interface network operable independently of the host device, the sub-requests to the at least one storage device, the storage device interface network a peer-to-peer network coupling the storage devices to the primary agent; and
receiving, by the primary agent from the at least one storage device, respective sub-statuses in response to the sub-requests, determining an overall status based on each respective sub-status, and providing the overall status to the host device,
wherein the host device is coupled to the one or more storage devices without employing a network switch.

### Claim 2 (depends on 1)

The method of claim 1, wherein the storage device interface network is not directly accessible to the host interface network.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
sending, by each of the storage devices, data communication via a respective separate data communication path with the host separate from the storage device interface network,
whereby control traffic between the host device and the storage devices is solely between the host device and the primary agent, while data communication bandwidth scales with a number of the storage devices.

### Claim 4 (depends on 1)

The method of claim 1, wherein, for the method, the host interface network and the storage device interface network comprise transmission media comprising at least one of: a backplane, one or more copper cables, one or more optical fibers, one or more coaxial cables, one or more twisted pair copper wires.

### Claim 5 (depends on 4)

The method of claim 4, further comprising:
selectively providing higher bandwidth storage device interface network connections to a subset of the one or more storage devices.

### Claim 6 (depends on 5)

The method of claim 5, wherein the subset of the one or more storage devices comprises one or more of the storage devices located proximately to the host device.

### Claim 7 (depends on 4)

The method of claim 4, wherein the host interface network comprises a Peripheral Component Interconnect Express (PCI-E) network.

### Claim 8 (depends on 7)

The method of claim 7, wherein the host interface network comprises a PCI-E Gen4 network, and the storage device interconnect network comprises one or more of: a PCI-E Gen3 network, an Ethernet network, a Serial Attached Small Computer System Interface (SAS) network, and a Serial Advanced Technology Attachment (SATA) network.

### Claim 9 (depends on 1)

The method of claim 1, wherein, for the method, the one or more storage devices comprise at least one of: a Solid State Disk (SSD), a Hard Disk Drive (HDD), a Magnetoresistive Random Access Memory (MRAM), a tape library, and a hybrid magnetic and solid state storage system.

### Claim 10 (depends on 1)

The method of claim 1, further comprising:
providing a bandwidth to the host interface network that is related to an aggregate deliverable bandwidth of the one or more storage devices.

### Claim 11 (depends on 10)

The method of claim 10, wherein the storage device interface network comprises one or more physical links, each link having an independent bandwidth.

### Claim 12 (depends on 11)

The method of claim 11, wherein each of the one or more physical links comprise (i) a relatively lower-bandwidth sideband coupling for transferring control data, and (ii) a relatively higher-bandwidth main band coupling for transferring user data.

### Claim 13 (depends on 10)

The method of claim 10, wherein the providing comprises providing each of the storage devices with a separate physical link of the host interface network.

### Claim 14 (depends on 1)

The method of claim 1, further comprising:
employing the one or more storage devices in a Redundant Array of Independent Disks (RAID) system.

### Claim 15

A chained, scalable storage system comprising:
a plurality of storage devices, at least one of the storage devices a primary agent for one or more of the plurality of storage devices;
a host device coupled via a host interface network to the at least one primary agent,
wherein the at least one primary agent is configured to:
receive a host request from the host device, the request to access a logical address of the one or more of the plurality of storage devices;
determine, based on the logical address, a corresponding physical address in at least one of the one or more of the plurality of storage devices;
generate, based on the physical address, a sub-request corresponding to the host request and each of the determined corresponding physical addresses in at least one of the one or more of the plurality of storage devices;
send, via a storage device interface network operable independently of the host device, the sub-requests to the at least one storage device, the storage device interface network a peer-to-peer network coupling the storage devices to the primary agent; and
receive, from the at least one storage device, respective sub-statuses in response to the sub-requests, determine an overall status based on each respective sub-status, and provide the overall status to the host device,
wherein the host device is coupled to the one or more storage devices without employing a network switch.

### Claim 16 (depends on 15)

The system of claim 15, wherein the storage device interface network is not directly accessible to the host interface network.

### Claim 17 (depends on 16)

The system of claim 16, wherein control traffic between the host device and the storage devices is solely between the host device and the at least one primary agent, and data bandwidth scales with a number of the storage devices.

### Claim 18 (depends on 15)

The system of claim 15, wherein the storage device interface network is configured to, at least one of:
selectively provide higher bandwidth connections to a subset of the one or more storage devices; and
provide a bandwidth to the host interface network that is related to an aggregate deliverable bandwidth of the one or more storage devices.

### Claim 19 (depends on 15)

The system of claim 15, wherein:
the host interface network comprises a Peripheral Component Interconnect Express (PCI-E) Gen4 network;
the storage device interconnect network comprises one or more of: a PCI-E Gen3 network, an Ethernet network, a Serial Attached Small Computer System Interface (SAS) network, and a Serial Advanced Technology Attachment (SATA) network; and
the one or more storage devices comprise at least one of: a Solid State Disk (SSD), a Hard Disk Drive (HDD), a Magnetoresistive Random Access Memory (MRAM), a tape library, a hybrid magnetic and solid state storage system; and a Redundant Array of Independent Disks (RAID).

### Claim 20

A non-transitory machine-readable medium, having encoded thereon program code, wherein, when the program code is executed by a machine, the machine implements a method of accessing data in a chained, scalable storage system, the method comprising:
receiving, by a primary agent of one or more storage devices, a host request from a host device coupled to the primary agent via a host interface network, the request to access a logical address of the one or more storage devices;
determining, by the primary agent based on the logical address, a corresponding physical address in at least one of the one or more storage devices;
generating, by the primary agent based on the physical address, a sub-request corresponding to the host request and each of the determined corresponding physical addresses in at least one of the one or more storage devices;
sending, by the primary agent via a storage device interface network operable independently of the host device, the sub-requests to the at least one storage device, the storage device interface network a peer-to-peer network coupling the storage devices to the primary agent; and
receiving, by the primary agent from the at least one storage device, respective sub-statuses in response to the sub-requests, determining an overall status based on each respective sub-status, and providing the overall status to the host device,
wherein the host device is coupled to the one or more storage devices without employing a network switch.
