IP Library Granted Patent US 10,628,300
Granted Patent B2
US 10,628,300 · App. 15/811,658 · Granted Apr 21, 2020

RAID stripe physical placement

Inventors: Amir Hossein Gholamipour (Irvine, CA); Chandan Mishra (Irvine, CA); Mai Ghaly (Bloomington, MN)
Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
G06F12/0246G06F3/0688G06F3/0689G06F12/0653G06F3/064
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 10,628,300
App. No.
15/811,658
Granted
Apr 21, 2020
Kind
B2
Abstract

Apparatuses, systems, methods, and computer program products are disclosed for redundant array of independent disks (RAID) stripe physical placement. An apparatus includes a plurality of memory die comprising physical pages for storing data. An apparatus includes a control circuit that assigns addresses to a plurality of data stripes, wherein the control circuit assigns the addresses to the plurality of data stripes by: assigning stripe pages of a data stripe of the plurality of data stripes to different memory die of a plurality of memory die; and assigning adjacent stripe pages of the data stripe to different page numbers.

Claims (30)

1. An apparatus comprising:

a plurality of memory die comprising physical pages for storing data, wherein each memory die of the plurality of memory die comprises a plurality of physical pages with a range of page numbers and each memory die of the plurality of memory die has the same range of page numbers; and

a control circuit that assigns physical addresses to a plurality of data stripes, wherein the control circuit assigns the physical addresses to the plurality of data stripes by:

assigning stripe pages of a data stripe of the plurality of data stripes to different memory die of the plurality of memory die; and

assigning adjacent stripe pages of the data stripe to different page numbers of the range of page numbers of the different memory die of the plurality of memory die.

2. The apparatus of claim 1 , wherein the control circuit assigns exclusive or (XOR) pages corresponding to the plurality of data stripes such that a maximum of one XOR page is assigned to a memory die of the plurality of memory die.

3. The apparatus of claim 1 , wherein the plurality of data stripes each have a same, fixed number of pages per data stripe.

4. The apparatus of claim 1 , wherein a number of memory die is greater than or equal to a number of pages per data stripe, and the number of memory die is not a multiple of the number of pages per data stripe.

5. The apparatus of claim 1 , wherein adjacent stripe pages of data stripes of the plurality of data stripes are assigned to physically adjacent memory die of the plurality of memory die, logically adjacent memory die of the plurality of memory die, a first memory die of the plurality of memory die and a last memory die of the plurality of memory die, or a combination thereof.

6. The apparatus of claim 1 , wherein data stripes of the plurality of data stripes comprise an XOR page.

7. The apparatus of claim 6 , wherein the XOR page for the data stripes is placed in a same page number.

8. The apparatus of claim 1 , wherein a starting page number for data stripes of the plurality of data stripes is the same.

9. The apparatus of claim 1 , wherein a starting memory die of the plurality of memory die for data stripes of the plurality of data stripes is different.

10. The apparatus of claim 1 , wherein each stripe page of a data stripe of the plurality of data stripes is assigned to a memory die of the plurality of memory die and a page number of the memory die based on a predetermined formula.

11. The apparatus of claim 10 , wherein the formula is based on a number of memory die of the plurality of memory die and the number of pages per data stripe.

12. A system comprising:

a controller; and

a plurality of storage devices comprising physical pages for storing data, wherein each storage device of the plurality of storage devices comprises a plurality of physical pages with a range of page numbers and each storage device of the plurality of storage devices has the same range of page numbers, the controller is configured to distribute a plurality of array stripes having a number of physical pages per array stripe across the plurality of storage devices by:

placing stripe pages of an array stripe of the plurality of array stripes in different storage devices of the plurality of storage devices;

assigning exclusive or (XOR) pages corresponding to the plurality of array stripes such that the XOR pages are distributed across the plurality of storage devices; and

assigning adjacent stripe pages of the array stripe to different page numbers of the range of page numbers of the different storage devices of the plurality of storage devices.

13. The system of claim 12 , wherein the XOR pages are distributed such that a storage device of the plurality of storage devices has a maximum of one XOR page assigned to the storage device.

14. The system of claim 12 , wherein a number of storage devices of the plurality of storage devices is not a multiple of the number of pages per array stripe.

15. The system of claim 12 , wherein a number of storage devices of the plurality of storage devices is a multiple of the number of pages per array stripe.

16. The system of claim 12 , wherein a starting storage device of the plurality of storage devices for an array stripe of the plurality of array stripes is determined based on a number of storage devices of the plurality of storage devices and an ending storage device of the plurality of storage devices for the array stripe is determined based on the number of storage devices of the plurality of storage devices and the number of pages per data stripe.

17. The system of claim 12 , wherein a starting page for an array stripe of the plurality of array stripes is determined based on a number of storage devices of the plurality of storage devices and the number of pages per data stripe.

18. An apparatus comprising:

means for storing a plurality of data stripes in a plurality of memory devices, wherein a number of memory devices of the plurality of memory devices is not a whole number multiple of a number of pages used to store each data stripe of the plurality of data stripes; and

means for determining physical locations to store the plurality of data stripes.

19. The apparatus of claim 18 , wherein the means for determining locations to store the plurality of data stripes comprises a formula based on the number of memory devices and the number of pages per data stripe.

Assignments (10)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
RELEASE OF SECURITY INTEREST AT REEL 052915 FRAME 0566 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 059127/0001 →
SECURITY INTEREST Recorded Feb 6, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 052915/0566 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2018
From: GHOLAMIPOUR, AMIR HOSSEIN; MISHRA, CHANDAN; GHALY, MAI
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 045961/0334 →