IP Library Patent Application 17393877
Patent Application
App. No. 17/393,877

PAGE MAP RENUMBERING TO REDUCE ERROR CORRECTION FAILURES AND IMPROVE PROGRAM TIME UNIFORMITY

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 None
App. No.
17/393,877
Abstract

Systems, apparatuses and methods may provide for technology that detects a request to program a NAND memory containing a plurality of dies and programs the NAND memory on a stripe-by-stripe basis, wherein each stripe spans the plurality of dies and includes multiple types of pages. The multiple types of pages may reduce program time variability across the stripes and reduce the error susceptibility of the NAND memory.

Claims (49)

1 . A solid state drive (SSD) comprising:

a device controller;

a chip controller; and

a NAND memory containing a plurality of dies, wherein one or more of the device controller or the chip controller include logic coupled to one or more substrates, the logic to:

detect a request to program the NAND memory, and

program the NAND memory on a stripe-by-stripe basis, wherein each stripe spans the plurality of dies and includes multiple types of pages.

2 . The SSD of claim 1 , wherein the multiple types of pages are to reduce a program time variability across the stripes.

3 . The SSD of claim 1 , wherein the multiple types of pages are to reduce an error susceptibility of the NAND memory.

4 . The SSD of claim 1 , wherein to program the NAND memory on the stripe-by-stripe basis, the logic is to:

reorder logical page addresses in a first die of the plurality of dies in accordance with a first configuration, and

reorder logical page addresses in a second die of the plurality of dies in accordance with a second configuration, wherein the first configuration is different from the second configuration.

5 . The SSD of claim 1 , wherein to program the NAND memory on the stripe-by-stripe basis, the logic is to:

start a first program operation in a first die of the plurality of dies at a first wordline position, and

start a second program operation in a second die of the plurality of dies at a second wordline position, wherein the first wordline position is different from the second wordline position, and wherein each stripe includes pages from multiple wordline locations.

6 . The SSD of claim 1 , wherein the logic is to:

prefill a first die in the plurality of dies is prefilled with dummy data to a first logical page address, and

prefill a second die in the plurality of dies is prefilled with dummy data to a second logical page address, wherein the first logical page address is different from the second logical page address, and wherein each stripe includes pages from multiple wordline locations.

7 . The SSD of claim 1 , wherein the multiple types of pages include two or more of an extra page, an upper page or a lower page.

8 . A semiconductor apparatus comprising:

one or more substrates; and

logic coupled to the one or more substrates, wherein the logic is implemented at least partly in one or more of configurable or fixed-functionality hardware, the logic to:

detect a request to program a NAND memory containing a plurality of dies; and

program the NAND memory on a stripe-by-stripe basis, wherein each stripe spans the plurality of dies and includes multiple types of pages.

9 . The semiconductor apparatus of claim 8 , wherein the multiple types of pages are to reduce a program time variability across the stripes.

10 . The semiconductor apparatus of claim 8 , wherein the multiple types of pages are to reduce an error susceptibility of the NAND memory.

11 . The semiconductor apparatus of claim 8 , wherein to program the NAND memory on the stripe-by-stripe basis, the logic is to:

reorder logical page addresses in a first die of the plurality of dies in accordance with a first configuration; and

reorder logical page addresses in a second die of the plurality of dies in accordance with a second configuration, wherein the first configuration is different from the second configuration.

12 . The semiconductor apparatus of claim 8 , wherein to program the NAND memory on the stripe-by-stripe basis, the logic is to:

start a first program operation in a first die of the plurality of dies at a first wordline position; and

start a second program operation in a second die of the plurality of dies at a second wordline position, wherein the first wordline position is different from the second wordline position, and wherein each stripe includes pages from multiple wordline locations.

13 . The semiconductor apparatus of claim 8 , wherein the logic is to:

prefill a first die in the plurality of dies with dummy data to a first logical page address; and

prefill a second die in the plurality of dies with dummy data to a second logical page address, wherein the first logical page address is different from the second logical page address, and wherein each stripe includes pages from multiple wordline locations.

14 . The semiconductor apparatus of claim 8 , wherein the multiple types of pages include two or more of an extra page, an upper page or a lower page.

15 . A method comprising:

detecting a request to program a NAND memory containing a plurality of dies; and

programming the NAND memory on a stripe-by-stripe basis, wherein each stripe spans the plurality of dies and includes multiple types of pages.

16 . The method of claim 15 , wherein the multiple types of pages reduce a program time variability across the stripes.

17 . The method of claim 15 , wherein the multiple types of pages reduce an error susceptibility of the NAND memory.

18 . The method of claim 15 , wherein programming the NAND memory on the stripe-by-stripe basis includes:

reordering logical page addresses in a first die of the plurality of dies in accordance with a first configuration; and

reordering logical page addresses in a second die of the plurality of dies in accordance with a second configuration, wherein the first configuration is different from the second configuration.

19 . The method of claim 15 , wherein programming the NAND memory on a stripe-by-stripe basis includes:

starting a first program operation in a first die of the plurality of dies at a first wordline position; and

starting a second program operation in a second die of the plurality of dies at a second wordline position, wherein the first wordline position is different from the second wordline position, and wherein each stripe includes pages from multiple wordline locations.

20 . The method of claim 15 , further including:

prefilling a first die in the plurality of dies with dummy data to a first logical page address; and

prefilling a second die in the plurality of dies with dummy data to a second logical page address, wherein the first logical page address is different from the second logical page address, and wherein each stripe includes pages from multiple wordline locations.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 2, 2024
From: INTEL CORPORATION
To: INTEL NDTM US LLC
Reel/Frame 067305/0491 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 29, 2022
From: RAJWADE, SHANTANU; GANAPATHI, KARTIK; SHENOY, ROHIT; GAEWSKY, KRISTOPHER; GOLEZ, MARKANTHONY; ANGOTH, VIVEK; KALAVADE, PRANAV; GANGADHAR, SARVESH
To: INTEL CORPORATION
Reel/Frame 059420/0450 →