IP Library Granted Patent US 8,874,832
Granted Patent B2
US 8,874,832 · App. 13/648,838 · Granted Oct 28, 2014

AD HOC flash memory reference cells

Inventors: Mark Murin (Kfar Saba, IL); Eran Sharon (Rishon Lezion, IL)
Assignee: SanDisk Technologies Inc.
G06F12/0246G11C16/349G11C16/3495G11C16/28
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 8,874,832
App. No.
13/648,838
Granted
Oct 28, 2014
Kind
B2
Abstract

A method for managing a flash memory that includes a plurality of primary cells and a plurality of spare cells includes interrogating the flash memory to determine which spare cells have been used to replace respective primary cells and using at least a portion of a remainder of the spare cells as reference cells.

Claims (65)

1. A method of managing a flash memory that includes a plurality of primary cells and a plurality of spare cells, the method comprising:

(a) interrogating the flash memory to determine which spare cells have been used to replace respective primary cells;

(b) using, as reference cells, at least a portion of a remainder of the spare cells; and

(c) assigning any unused primary cells of the flash memory as reference cells, the unused primary cells increasing number of the reference cells available within the flash memory.

2. The method of claim 1 , wherein the flash memory includes a memory cell array, the memory cell array includes,

(a) a data section configured for storing user data;

(b) a control section configured for storing control and management information for the user data in the data section; and

(c) a redundant section configured to compensate bad bit lines in the data section and the control section,

wherein cells in the data and control sections are the primary cells and cells in the redundant section are the spare cells.

3. The method of claim 2 , wherein interrogating the flash memory further includes,

retrieving column remapping information recorded in the flash memory, the column remapping information identifying bit lines from the redundant section that replaced bad bit lines detected during initial testing of the flash memory, the bit lines from the redundant section used for storing user data or control and management information that were being stored in the bad bit lines; and

identifying unused spare cells on the bit lines from the redundant section of the memory cell array, the unused spare cells used as reference cells of the memory cell array; and

providing access to the reference cells on the bit lines of the redundant section.

4. The method of claim 2 ,

wherein the unused primary cells belong to any one or both of the data section and the control section of the memory cell array.

5. The method of claim 2 , wherein interrogating the flash memory further includes,

examining the memory cell array of the flash memory to determine logical types of blocks distributed within, wherein each of the different logical types of blocks has distinct requirements for storing the control and management information, the different logical types of blocks include blocks of single level cells and blocks of multi-level cells;

when the memory cell array includes different logical types of blocks,

identifying layout of the different logical types of blocks within a same plane of the memory cell array of the flash memory; and

assigning cells from the unused bit lines of particular ones of logical types of blocks as reference cells, the cells from the unused bit lines increasing number of the reference cells of the memory cell array, wherein the particular ones of the logical types of blocks include single level cells.

6. The method of claim 1 , wherein the reference cells are not pre-assigned.

7. The method of claim 1 , wherein the reference cells are not located on dedicated bit lines.

8. A flash memory device comprising:

(a) a flash memory including a plurality of primary cells and a plurality of spare cells, wherein the flash memory includes a memory cell array having a data section, a control section and a redundant section; and

(b) a controller operative:

(i) to interrogate the flash memory to determine which spare cells have been used to replace respective primary cells;

(ii) to use, as reference cells, at least a portion of a remainder of the spare cells; and

(iii) to assign any unused primary cells from any one or both of the data section and the control section of the memory cell array as reference cells, the unused primary cells increasing number of the reference cells available in the flash memory.

9. The flash memory device of claim 8 , wherein the controller and the memory cell array of the flash memory being integrated into one or more integrated circuit chips.

10. The flash memory device of claim 8 , wherein

(a) the data section of the memory cell array is used for storing user data;

(b) the control section of the memory cell array is used for storing control and management information for the user data in the data section; and

(c) the redundant section of the memory cell array is used to compensate bad bit lines in the data section and the control section,

wherein cells in the data and control sections are the primary cells and cells in the redundant section are the spare cells.

11. The flash memory device of claim 8 , wherein the controller, during interrogation of the flash memory, is further operative to,

obtain column remapping information recorded in the flash memory, the column remapping information identifies bit lines from the redundant section that replaced bad bit lines detected during initial testing of the flash memory, the bit lines from the redundant section used for storing user data or control and management information that were being stored in the bad bit lines;

identify unused spare cells on the bit lines from the redundant section of the memory cell array, the unused spare cells used as reference cells of the memory cell array; and

provide access to the reference cells on the bit lines of the redundant section.

12. The flash memory device of claim 8 , wherein the controller is further operative to,

examine the memory cell array of the flash memory to determine logical types of blocks distributed within, each of the different logical types of blocks has different requirements for storing the control and management information, the different logical types of blocks include single level cells and multi-level cells;

when the memory cell array includes different logical types of blocks,

identify layout of the different logical types of blocks within a same plane of the memory cell array of the flash memory; and

assign cells from the unused bit lines of particular ones of logical types of blocks as reference cells, the cells from the unused bit lines increasing number of the reference cells of the memory cell array, wherein the particular ones of the logical types of blocks include single level cells.

13. A system, comprising:

(a) a flash memory including a plurality of primary cells and a plurality of spare cells, wherein the flash memory includes a memory cell array having a data section, a control section and a redundant section; and

(b) a host, of the flash memory, including:

(i) a memory for storing code for managing the flash memory by steps including:

(A) interrogating the flash memory to determine which spare cells have been used to replace respective primary cells,

(B) using, as reference cells, at least a portion of a remainder of the spare cells;

(C) assigning any unused primary cells from any one or both of the data section and the control section of the memory cell array as reference cells, the unused primary cells increasing number of the reference cells available in the flash memory; and

(ii) a processor for executing the code.

14. The system of claim 13 , wherein

(a) the data section of the memory cell array is used for storing user data;

(b) the control section of the memory cell array is used for storing control and management information for the user data in the data section; and

(c) the redundant section of the memory cell array is used to compensate bad bit lines in the data section and the control section,

wherein cells in the data and control sections are the primary cells and cells in the redundant section are the spare cells.

15. The system of claim 13 , wherein the code for interrogating the flash memory further includes the steps for,

retrieving column remapping information recorded in the flash memory, the column remapping information identifies bit lines from the redundant section that replaced bad bit lines detected during initial testing of the flash memory, the bit lines from the redundant section used for storing user data or control and management information that were being stored in the bad bit lines;

identifying unused spare cells on the bit lines from the redundant section of the memory cell array, the unused spare cells used as reference cells of the memory cell array; and

providing access to the reference cells on the bit lines of the redundant section.

16. The system of claim 13 , wherein the code for interrogating the flash memory further includes the steps for,

examining the memory cell array of the flash memory to determine logical types of blocks distributed within, wherein each of the different logical types of blocks has distinct requirements for storing the control and management information, the different logical types of blocks include single level cells and multi-level cells;

when the memory cell array includes different logical types of blocks,

identifying layout of the different logical types of blocks within a same plane of the memory cell array of the flash memory; and

assigning cells from the unused bit lines of particular ones of logical types of blocks as reference cells, the cells from the unused bit lines increasing number of the reference cells of the memory cell array, wherein the particular ones of the logical types of blocks include single level cells.

Assignments (5)
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2024
From: SANDISK TECHNOLOGIES LLC
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 069796/0423 →
CHANGE OF NAME Recorded May 25, 2016
From: SANDISK TECHNOLOGIES INC
To: SANDISK TECHNOLOGIES LLC
Reel/Frame 038807/0898 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 10, 2014
From: SANDISK IL LTD.
To: SANDISK TECHNOLOGIES INC.
Reel/Frame 033070/0041 →
Continuity (3)
Division 12434650 · May 3, 2009
Provisional Application 61074705 · Jun 23, 2008
Related Publication 20130097368A1 · Apr 18, 2013