IP Library Granted Patent US 8,717,792
Granted Patent B2
US 8,717,792 · App. 13/532,714 · Granted May 6, 2014

Selective activation of programming schemes in analog memory cell arrays

Inventors: Dotan Sokolov (Ra'anana, IL); Naftali Sommer (Rishon Lezion, IL); Uri Perlmutter (Ra'anana, IL); Ofir Shalvi (Ra'anana, IL)
Assignee: Apple Inc.
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,717,792
App. No.
13/532,714
Granted
May 6, 2014
Kind
B2
Abstract

A method for data storage includes defining a first programming scheme that programs a group of analog memory cells while reducing interference caused by at least one memory cell that neighbors the group, and a second programming scheme that programs the group of the analog memory cells and does not reduce all of the interference reduced by the first programming scheme. One of the first and second programming schemes is selected based on a criterion defined with respect to the analog memory cells. Data is stored in the group of the analog memory cells using the selected programming scheme.

Claims (36)

1. A method for data storage, comprising:

defining a first programming scheme that programs a group of analog memory cells while permitting immediate aborting of programming the memory cells, and a second programming scheme that programs the group of the analog memory cells without permitting the immediate aborting;

selecting one of the first and second programming schemes based on a criterion defined with respect to the analog memory cells; and

storing data in the group of the analog memory cells using the selected programming scheme.

2. The method according to claim 1 , wherein selecting the one of the programming schemes comprises selecting the first programming scheme for programming the group while concurrently reading from another group of the memory cells, and selecting the second programming scheme for programming the group without concurrently reading from any other group of the memory cells.

3. Apparatus for data storage, comprising:

a memory, comprising a plurality of analog memory cells; and

circuitry, which is configured to define a first programming scheme that programs a group of the analog memory cells while permitting immediate aborting of programming the memory cells, to define a second programming scheme that programs the group of the analog memory cells without permitting the immediate aborting, to select one of the first and second programming schemes based on a criterion defined with respect to the analog memory cells, and to store data in the group of the analog memory cells using the selected programming scheme.

4. The apparatus according to claim 3 , wherein the circuitry is configured to select the first programming scheme for programming the group while concurrently reading from another group of the memory cells, and to select the second programming scheme for programming the group without concurrently reading from any other group of the memory cells.

5. Apparatus for data storage, comprising:

an interface, which is configured to communicate with a memory that includes a plurality of analog memory cells; and

circuitry, which is configured to define a first programming scheme that programs a group of the analog memory cells while permitting immediate aborting of programming the memory cells, to define a second programming scheme that programs the group of the analog memory cells without permitting the immediate aborting, to select one of the first and second programming schemes based on a criterion defined with respect to the analog memory cells, and to store data in the group of the analog memory cells using the selected programming scheme.

6. The method according to claim 1 , wherein the criterion depends on a wear level of the memory cells in the group.

7. The method according to claim 1 , wherein the criterion depends on a number of Programming and Erasure (P/E) cycles previously applied to the memory cells in the group.

8. The method according to claim 1 , wherein the criterion depends on a number of read errors occurring in one or more read operations from the memory cells in the group.

9. The method according to claim 1 , wherein the criterion depends on a temperature of the memory cells in the group.

10. The method according to claim 1 , wherein the criterion depends on a supply voltage provided to the memory cells in the group.

11. The method according to claim 1 , wherein the criterion depends on a retention time that is expected to occur in the memory cells in the group.

12. The method according to claim 1 , wherein the criterion depends on a level of the interference affecting the memory cells in the group.

13. The method according to claim 1 , wherein selecting the one of the programming schemes comprises selecting the second programming scheme at a first time, and switching to the first programming scheme at a second time that is later than the first time.

14. The method according to claim 13 , and comprising switching from the first programming scheme to the second programming scheme at a third time that is later than the second time.

15. The method according to claim 1 , wherein the memory cells are comprised in a memory device, and wherein selection of the one of the programming schemes is performed by a memory controller that is separate from the memory device and connected to the memory device by an interface.

16. The method according to claim 1 , wherein the memory cells are comprised in a memory device, and wherein selection of the one of the programming schemes is performed by programming circuitry in the memory device.

17. The method according to claim 1 , wherein the memory cells are comprised in a memory device that is connected to a memory controller by an interface, and comprising indicating the selected programming scheme over the interface.

18. The apparatus according to claim 3 , wherein the criterion depends on a wear level of the memory cells in the group.

19. The apparatus according to claim 3 , wherein the criterion depends on a number of Programming and Erasure (P/E) cycles previously applied to the memory cells in the group.

20. The apparatus according to claim 3 , wherein the criterion depends on a number of read errors occurring in one or more read operations from the memory cells in the group.

21. The apparatus according to claim 3 , wherein the criterion depends on a temperature of the memory cells in the group.

22. The apparatus according to claim 3 , wherein the criterion depends on a supply voltage provided to the memory cells in the group.

23. The apparatus according to claim 3 , wherein the criterion depends on a retention time that is expected to occur in the memory cells in the group.

24. The apparatus according to claim 3 , wherein the criterion depends on a level of the interference affecting the memory cells in the group.

25. The apparatus according to claim 3 , wherein the circuitry is configured to select the second programming scheme at a first time, and to switch to the first programming scheme at a second time that is later than the first time.

26. The apparatus according to claim 25 , wherein the circuitry is configured to switch from the first programming scheme to the second programming scheme at a third time that is later than the second time.

27. The apparatus according to claim 3 , wherein the circuitry comprises programming circuitry that is coupled to the memory cells and a memory controller that is separate from the programming circuitry and connected to the programming circuitry by an interface, and wherein selection of the one of the programming schemes is performed by the memory controller.

28. The apparatus according to claim 3 , wherein the circuitry comprises programming circuitry that is coupled to the memory cells and a memory controller that is separate from the programming circuitry and connected to the programming circuitry by an interface, and wherein selection of the one of the programming schemes is performed by the programming circuitry.

29. The apparatus according to claim 3 , wherein the circuitry comprises programming circuitry that is coupled to the memory cells and a memory controller that is separate from the programming circuitry and connected to the programming circuitry by an interface, and comprising indicating the selected programming scheme over the interface.

Continuity (3)
Division 12714501 · Feb 28, 2010
Provisional Application 61156520 · Mar 1, 2009
Related Publication 20120262971A1 · Oct 18, 2012