Minimum maximal level programming

Researcher:
Prof. Yitzhak Birk | Electrical and Computer Engineering

Categories:

Information and Computer Science

The Technology

Writing to NAND Flash memory is much slower than reading. Also, writing to a cell increases with an increase in the required increase to its charge level. Finally, since a full page is written concurrently, the writing time to a cell is determined by the worst case, which is invariably the need to raise the level from the minimum (erased state) to the maximum level.

With Minimum Maximal Level Programming, memory cells are shared among data pages, including even the possibility of placing a fraction of an information bit in a cell. Also, we do so such that the k’th writing to a cell only uses levels 0,…,k. For example, with 4-level cells (two bits per cell), N bits per page and 2N cells, we do the following: the first two N-bit pages are written to the first N cells and to the 2nd N cells, respectively, using only levels 0 and 1. The third page is “smeared” across all 2N cells, essentially placing 0.5 additional information bit in each cell, and this is done using only levels 0,1,2. Similarly, the 4th page is written across all 2N cells utilizing all levels (0,1,2,3). To clarify, the late pages add information, they do not replace it. The end result is 2N cells, each with a 2-bit information capacity, storing 4N information bits, so there is no loss of capacity.

Advantages

  • Average writing speed is increased
  • Reading of a set of cells that has not been fully written to is faster

Applications and Opportunities

  • NAND Flash memory
arrow Business Development Contacts
Dr. Arkadiy Morgenshtein
Director of Business Development, ICT