Non-volatile memory and method with write cache partitioning
First Claim
Patent Images
1. A nonvolatile memory, comprising:
- an array of memory cells organized into a plurality of blocks, each block being a plurality of memory cells that are erasable together;
said array being partitioned into a first group of blocks and a second group of blocks;
a group of read/write circuits for reading or programming in the memory array a corresponding page of memory cells in parallel;
said first group of blocks having first-group pages that are each once programmable in between erasure, and the memory cells in the first-group page each storing one or more bit of data;
said second group of blocks having second-group pages that are each multi-time programmable with a partial page being once programmable each time, and the memory cells in the second-group page each storing one bit of data; and
a controller for controlling writing data in a fragment of one or more partial page selectively either to the first group of blocks in granularity of a page or to the second group of blocks in granularity of one or more partial page, the selection to write to either first or second group being a function of predefined attributes of the data and predefined states of said first group of blocks and said second group of blocks.
3 Assignments
0 Petitions
Accused Products
Abstract
A portion of a nonvolatile memory is partitioned from a main multi-level memory array to operate as a cache. The cache memory is configured to store at less capacity per memory cell and finer granularity of write units compared to the main memory. In a block-oriented memory architecture, the cache has multiple functions, not merely to improve access speed, but is an integral part of a sequential update block system. Decisions to write data to the cache memory or directly to the main memory depend on the attributes and characteristics of the data to be written, the state of the blocks in the main memory portion and the state of the blocks in the cache portion.
-
Citations
20 Claims
-
1. A nonvolatile memory, comprising:
-
an array of memory cells organized into a plurality of blocks, each block being a plurality of memory cells that are erasable together; said array being partitioned into a first group of blocks and a second group of blocks; a group of read/write circuits for reading or programming in the memory array a corresponding page of memory cells in parallel; said first group of blocks having first-group pages that are each once programmable in between erasure, and the memory cells in the first-group page each storing one or more bit of data; said second group of blocks having second-group pages that are each multi-time programmable with a partial page being once programmable each time, and the memory cells in the second-group page each storing one bit of data; and a controller for controlling writing data in a fragment of one or more partial page selectively either to the first group of blocks in granularity of a page or to the second group of blocks in granularity of one or more partial page, the selection to write to either first or second group being a function of predefined attributes of the data and predefined states of said first group of blocks and said second group of blocks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. In a nonvolatile memory having an array of memory cells organized into a plurality of blocks, each block being a plurality of memory cells that are erasable together;
- a method of operating the nonvolatile memory, comprising;
partitioning the array into a first group of blocks and a second group of blocks; providing a group of read/write circuits for reading or programming in the memory array a corresponding page of memory cells in parallel; said first group of blocks having first-group pages that are each once programmable in between erasure, and the memory cells in the first-group page each storing one or more bit of data; said second group of blocks having second-group pages that are each multi-time programmable with a partial page being once programmable each time, and the memory cells in the second-group page each storing one bit of data; and writing data in a fragment of one or more partial page selectively either to the first group of blocks in granularity of a page or to the second group of blocks in granularity of one or more partial page, the selection to write to either first or second group being a function of predefined attributes of the data and predefined states of said first group of blocks and said second group of blocks.
- a method of operating the nonvolatile memory, comprising;
Specification