IP Library Granted Patent US 9,671,972
Granted Patent B2
US 9,671,972 · App. 14/987,324 · Granted Jun 6, 2017

Efficient readout from memory cells using data compression

Inventors: Uri Perlmutter (Ra'anana, IL); Dotan Sokolov (Ra'anana, IL); Ofir Shalvi (Ra'anana, IL); Oren Golov (Hod-HaSharon, IL)
Assignee: Apple Inc.
G06F3/0638G06F3/0604G06F3/0679G06F11/1008G06F12/08
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 9,671,972
App. No.
14/987,324
Granted
Jun 6, 2017
Kind
B2
Abstract

A method for data storage includes storing data in a group of analog memory cells by writing respective input storage values to the memory cells in the group. After storing the data, respective output storage values are read from the analog memory cells in the group. Respective confidence levels of the output storage values are estimated, and the confidence levels are compressed. The output storage values and the compressed confidence levels are transferred from the memory cells over an interface to a memory controller.

Claims (33)

1. An apparatus, comprising:

a plurality of memory cells;

circuitry configured to:

read a plurality of values from a subset of the plurality of memory cells, wherein each value of the plurality of values corresponds to data stored in a respective one of the subset of the plurality of memory cells;

determine a plurality of confidence levels dependent upon the plurality of values; and

compress the plurality of confidence levels.

2. The apparatus of claim 1 , wherein to compress the plurality of confidence levels, the circuitry is further configured to determine a first number of confidence levels of the plurality of confidence levels having a first value, and a second number of confidence levels of the plurality of confidence levels having a second value.

3. The apparatus of claim 2 , wherein the circuitry is further configured to send the first number of confidence levels and the second number of confidence levels to a controller.

4. The apparatus of claim 1 , wherein to compress the plurality of confidence levels, the circuitry is further configured to combine each confidence level of the plurality of confidence levels using a logical-AND operation to generate an indicator value.

5. The apparatus of claim 4 , wherein the circuitry is coupled to a controller via a data bus, and wherein the circuitry is further configured to send the indicator value to a controller using at least one wire separate from the data bus.

6. The apparatus of claim 1 , wherein each memory cell of the plurality of memory cells includes a non-volatile memory cell.

7. A method for operating a memory, comprising:

reading, by a circuit included in the memory, a plurality of values from a subset of a plurality of memory cells, wherein each value of the plurality of values corresponds to data stored in a respective one of the subset of the plurality of memory cells;

determining, by the circuit, a plurality of confidence levels dependent upon the plurality of values; and

compressing the plurality of confidence levels, by the circuit.

8. The method of claim 7 , wherein compressing the plurality of confidence levels includes determining a first number of confidence levels of the plurality of confidence levels having a first value, and a second number of confidence levels of the plurality of confidence levels having a second value.

9. The method of claim 8 , further comprising sending the first number of confidence levels and the second number of confidence levels to a controller.

10. The method of claim 7 , wherein compressing the plurality of confidence levels includes combining each confidence level of the plurality of confidence levels using a logical-AND operation to generate an indicator value.

11. The method of claim 10 , wherein the memory is coupled to a controller via a data bus, and further comprising, sending the indicator value to the controller coupled to the memory using at least one wire separate from the data bus.

12. The method of claim 11 , further comprising decompressing, by the controller, the plurality of confidence intervals dependent upon the indicator value.

13. The method of claim 7 , wherein each memory cell of the plurality of memory cells includes a non-volatile memory cell.

14. A system, comprising:

a controller; and

a memory coupled to the controller via a data bus, wherein the memory includes a plurality of memory cells, and wherein the memory is configured to:

read a plurality of values from a subset of the plurality of memory cells, wherein each value of the plurality of values corresponds to data stored in a respective one of the subset of the plurality of memory cells;

determine a plurality of confidence levels dependent upon the plurality of values; and

compress the plurality of confidence levels.

15. The system of claim 14 , wherein to compress the plurality of confidence levels, the memory is further configured to determine a first number of confidence levels of the plurality of confidence levels having a first value, and a second number of confidence levels of the plurality of confidence levels having a second value.

16. The system of claim 15 , wherein the memory is further configured to send the first number of confidence levels and the second number of confidence levels to the controller.

17. The system of claim 14 , wherein to compress the plurality of confidence levels, the memory is further configured to combine each confidence level of the plurality of confidence levels using a logical-AND operation to generate an indicator value.

18. The system of claim 17 , wherein the memory is further configured to send the indicator value to the controller using at least one wire separate from the data bus.

19. The system of claim 18 , wherein the controller is further configured to decompress the plurality of confidence levels dependent upon the indicator value.

20. The system of claim 14 , wherein each memory cell of the plurality of memory cells includes a non-volatile memory cell.

Continuity (6)
Continuation 13526859 · Jun 19, 2012
Continuation 12397368 · Mar 4, 2009
Provisional Application 61034511 · Mar 7, 2008
Provisional Application 61052276 · May 12, 2008
Provisional Application 61053031 · May 14, 2008
Related Publication 20160117130A1 · Apr 28, 2016