IP Library Granted Patent US 9,449,692
Granted Patent B2
US 9,449,692 · App. 13/196,938 · Granted Sep 20, 2016

Functional data programming and reading in a memory

Inventor: Ramin Ghodsi (Cupertino, CA)
Assignee: Micron Technology, Inc.
G11C16/10G06F11/1008G11C16/0483G11C16/26G11C16/349
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,449,692
App. No.
13/196,938
Granted
Sep 20, 2016
Kind
B2
Abstract

Methods for functional programming memory cells and apparatuses are disclosed. One such method for functional programming includes encoding a group of data with a function to generate representative data and programming the representative data to the memory. In one embodiment, the representative data is a pattern of threshold voltages to be programmed to a group of memory cells.

Claims (48)

1. A method for functional programming in a memory, the method comprising:

encoding a group of data responsive to a mathematical function selected from a plurality of mathematical functions to generate representative data comprising a particular pattern of threshold voltages of a plurality of patterns of threshold voltages to be programmed to a group of memory cells; and

programming the representative data corresponding to the group of memory cells to the memory;

wherein the selected mathematical function is selected, at least in part, in response to a value of the group of data; and

wherein a value of each mathematical function of the plurality of mathematical functions for a particular memory cell of the group of memory cells is dependent at least upon a cell number of the particular memory cell within the group of memory cells.

2. The method of claim 1 wherein the representative data comprise a plurality of threshold voltages.

3. The method of claim 1 wherein the mathematical function is further selected responsive to a memory parameter of the memory.

4. The method of claim 2 wherein the encoding the group of data comprises:

selecting the group of data; and

generating the plurality of threshold voltages, wherein each of the plurality of threshold voltages corresponds to a respective memory cell of the group of memory cells.

5. The method of claim 1 wherein the encoding the group of data comprises matching the group of data with the particular pattern of threshold voltages.

6. The method of claim 1 , wherein a variation of the selected mathematical function represents the group of data.

7. The method of claim 1 , wherein a parameter of the selected mathematical function is variable.

8. The method of claim 1 , further comprising:

wherein the selected mathematical function corresponds to a particular set of bit patterns for the group of memory cells; and

wherein a different mathematical function of the plurality of mathematical functions corresponds to a different set of bit patterns for the group of memory cells.

9. The method of claim 8 , further comprising:

wherein the particular set of bit patterns comprises a number of bit patterns equal to a number of memory cells of the group of memory cells.

10. The method of claim 8 , further comprising:

wherein a value of the selected mathematical function for the particular memory cell of the group of memory cells is further dependent upon a particular bit pattern of the particular set of bit patterns that corresponds to the group of data.

11. A method for functional programming in a memory, the method comprising:

encoding a group of data responsive to a function to generate representative data; and

programming the representative data to a number of memory cells of the memory equal to a number of elements of the group of data;

wherein the encoding the group of data responsive to the function to generate the representative data comprises determining a particular pattern of a plurality of patterns corresponding to the function that represents the group of data;

wherein a number of patterns of the plurality of patterns corresponding to the function is less than 2 m where m is the number of elements of the group of data; and

wherein programming the representative data to the memory comprises the programming the particular pattern to the memory.

12. The method of claim 11 wherein the determining the particular pattern comprises reading a table in memory comprising particular groups of bits and each of their corresponding representative patterns.

13. The method of claim 11 wherein each of the patterns is a matrix of cell numbers and threshold voltages.

14. The method of claim 11 and further comprising generating each of the plurality of patterns with a function operating on a respective group of data.

15. The method of claim 14 wherein each of the plurality of patterns represents a different group of data.

16. The method of claim 11 , further comprising:

implementing error correction at a resolution, the resolution of error correction determined by the number of elements of the group of data.

17. The method of claim 11 , further comprising:

selecting the function in response to a bit pattern of the group of data.

18. The method of claim 11 , wherein the selecting the function comprises selecting the function from a plurality of functions, and wherein each function of the plurality of functions corresponds to a respective set of bit patterns that can be represented by the number of elements of the group of data.

19. An apparatus comprising:

an array of memory cells; and

an encoder coupled to the array of memory cells, wherein the encoder is configured to encode a group of data in accordance with a mathematical function selected, at least in part in response to a bit pattern of the group of data, from a plurality of mathematical functions to generate a representative pattern of threshold voltages of a plurality of patterns of threshold voltages to be programmed to the array of memory cells;

wherein the group of data comprises a plurality of digits of data;

wherein each mathematical function of the plurality of mathematical functions corresponds to a particular number of patterns of threshold voltages of the plurality of patterns of threshold voltages; and

wherein the particular number of patterns of threshold voltages for each mathematical function of the plurality of mathematical functions is less than a number of patterns of digits that can be represented by a number of digits of data of the plurality of digits of data.

20. The apparatus of claim 19 wherein the encoder comprises an encoder/decoder, wherein the encoder/decoder is further configured to decode a read pattern of threshold voltages into a group of data.

21. The apparatus of claim 19 wherein the encoder is configured to change the number of digits of data of the plurality of digits of data to increase or decrease a resolution of error correction coding.

22. The apparatus of claim 21 wherein the encoder is further configured to operate on the group of data to generate the representative pattern of threshold voltages.

23. The apparatus of claim 21 wherein the encoder is further configured to operate on a constant times the group of data to generate the representative pattern of threshold voltages.

24. The apparatus of claim 19 and further comprising a memory, configured to store the plurality of mathematical functions, coupled to the encoder.

25. The apparatus of claim 19 wherein the apparatus is a 3-D NAND memory device.

26. The apparatus of claim 25 wherein the plurality of patterns of threshold voltages is stored in memory cells across multiple planes of the memory device.

Assignments (8)
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
Reel/Frame 051028/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050937/0001 →
RELEASE OF SECURITY INTEREST Recorded Aug 23, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 047243/0001 →
SECURITY INTEREST Recorded Jul 13, 2018
From: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 047540/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE ERRONEOUSLY FILED PATENT #7358718 WITH THE CORRECT PATENT #7358178 PREVIOUSLY RECORDED ON REEL 038669 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Jun 8, 2017
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 043079/0001 →
PATENT SECURITY AGREEMENT Recorded Jun 2, 2016
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 038954/0001 →
SECURITY INTEREST Recorded May 12, 2016
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038669/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2011
From: GHODSI, RAMIN
To: MICRON TECHNOLOGY, INC.
Reel/Frame 026691/0543 →
Continuity (1)
Related Publication 20130033939A1 · Feb 7, 2013