IP Library Granted Patent US 7,209,979
Granted Patent B2
US 7,209,979 · App. 10/113,027 · Granted Apr 24, 2007

Storage processor architecture for high throughput applications providing efficient user data channel loading

Assignee: EMC Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,209,979
App. No.
10/113,027
Filed
Mar 29, 2002
Granted
Apr 24, 2007
Kind
B2
Art Unit
2143
USPC
709/249
Abstract

A storage processor particularly suited to RAID systems provides high throughput for applications such as streaming video data. An embodiment is configured as an ASIC with a high degree of parallelism in its interconnections. The communications architecture provides saturation of user data pathways with low complexity and low latency by employing multiple memory channels under software control, an efficient parity calculation mechanism and other features.

Claims (32)

1. A storage processor, comprising:

at least one switch connecting a front end interface connectable to host and a back end interface connectable to a data store, said front and back ends each having a channel connecting it to said at least one switch, each said front end and back end channels having respective bandwidths;

at least two memory interfaces each with a respective channel permitting simultaneous read and writes to memories connected thereto;

a data translator connected to transfer data to and from said memories through each of said two memory interfaces;

said at least one switch being configured to provide for transfer of write data from said front end to said back end by storing said write data in a selected subset of said memories, generating translated data responsively to said write data stored in said selected subset, storing store data responsive to said translated data and said write data in said selected subset or another subset of said memories;

said at least one switch being further configured such that a rate of transfer of said write data through said front end channel is substantially equal to said bandwidth of said front end channel;

wherein said at least one switch, when generating translated data, is configured to perform an error-checking process on the write data stored in said selected subset of said memories to generate error-checking data and, when storing store data, is configured to store said store data responsive to said error-checking data and said write data in said selected subset or another subset of said memories;

wherein data is transferred through the switch by writing to selected ones of said memories and reading from said selected ones of said memories in a single hop between said front end and said back end such that a load on said memories is balanced.

2. A storage processor as in claim 1 , wherein said data translator includes a parity calculator.

3. A storage processor as in claim 1 , wherein said selected one of said memories is selected by software configured to share bandwidths of said at least two memory interfaces, whereby said bandwidths of said at least two memory interfaces may be less than would be required for a single memory interface.

4. A storage processor as in claim 3 , further comprising a control processor connected to said at least one switch to control said data translator.

5. A storage processor as in claim 4 , wherein said at least one switch is configured to transfer requests from said front end to said control processor through said at least one switch.

6. A storage processor as in claim 3 , wherein all of said at least two memories are connected to read and write to and from both of said front and back end interfaces.

7. A storage processor as in claim 1 further comprising a control processor connected to said at least one switch to control said data translator.

8. A storage processor as in claim 1 wherein said at least one switch is configured to transfer requests from said front end to said control processor through said at least one switch.

9. A storage processor as in claim 1 , wherein all of said at least two memories are connected to read and write to and from both of said front and back end interfaces.

10. A storage processor for a redundant array of independent disks, comprising:

an ASIC including a communications fabric connecting a front end connectable to a communications device generating a requesting process to a back end connectable to an array of disks, each of said front and back ends being connected to said communications fabric by a port having a respective bandwidth;

said communications fabric including multiple memories, a parity calculator, a control processor, and a DMA engine connected by said communications fabric for control by said control processor;

said memories each having a bandwidth less than a bandwidth of said front end port bandwidth multiplied by a number of reads and writes required to transfer data to and from said front end port;

said communications fabric providing for transfer of control data from said requesting process to said control processor;

said communications fabric providing for serial transfer of data from said front end to said back end interfaces such that data from said requesting process is written with parity data responsive thereto to said redundant array at a rate that is substantially equal to said front end port bandwidth;

wherein data is transferred through said communications fabric by writing to selected ones of said multiple memories and reading from said selected ones of said multiple memories in a single hop between said front end and said back end; and

wherein said control processor controls which of said multiple memories is included in said selected ones of said multiple memories such that a load on said multiple memories is balanced.

11. A storage processor as in claim 10 , wherein said parity calculator includes an XOR FIFO.

12. A storage processor as in claim 10 , wherein all of said multiple memories are connected to read and write to and from both of said front and back end interfaces.

13. A storage processor as in claim 10 , wherein all of said multiple memories are connected to read and write to and from both of said front and back end interfaces.

14. The storage processor of claim 1 , wherein the at least one switch and the data translator form part of an ASIC, and wherein the data translator comprises a DMA engine and an XOR FIFO that link the front end interface and the back end interface with a memory.

15. The storage processor of claim 11 , wherein the communications fabric of the ASIC comprises a crossbar switch coupled to the DMA engine and the XOR FIFO to link the front end interface and the back end interface with one of the multiple memories.

16. The storage processor of claim 11 , wherein the DMA engine and the XOR FIFO are integrated as part of the ASIC.

17. The storage processor of claim 1 , wherein the memories connected to the at least to memory interfaces comprise non-cache memories.

18. The storage processor of claim 10 , wherein the multiple memories of the communications fabric comprise non-cache memories.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2002
From: SOLOMON, ROBERT; BROWN, JEFFREY
To: EMC CORPORATION
Reel/Frame 013335/0223 →
Continuity (1)
Related Publication 20030188032A1 · Oct 2, 2003