Claims
- 1. A method for increasing programming bandwidth, the method comprising:(a) providing a plurality of bits to be stored in a respective plurality of memory cells along a wordline, wherein some of the bits represent a programmed state and others represent an un-programmed state; and (b) for each memory cell along the wordline regardless of the memory cell's content: (b1) if the bit to be stored in the memory cell represents the programmed state, programming the memory cell; and (b2) if the bit to be stored in the memory cell represents the un-programmed state, skipping the memory cell.
- 2. The invention of claim 1, wherein each memory cell comprises a respective bitline, wherein the memory cell is programmed in (b1) by grounding its bitline while a programming pulse is applied on the wordline, and wherein the memory cell is skipped in (b2) by not grounding its bitline while a programming pulse is applied on the wordline.
- 3. The invention of claim 2, wherein two or more memory cells are programmed by sequentially grounding their bitlines.
- 4. The invention of claim 2, wherein two or more memory cells are programmed by simultaneously grounding their bitlines.
- 5. The invention of claim 1, wherein each memory cell in the plurality of memory cells comprises an antifuse.
- 6. The invention of claim 1, wherein each memory cell in the plurality of memory cells comprises a write-once memory cell.
- 7. The invention of claim 1, wherein each memory cell in the plurality of memory cells comprises a write-many memory cell.
- 8. The invention of claim 1, wherein each memory cell in the plurality of memory cells comprises a field-programmable memory cell.
- 9. The invention of claim 1, wherein the plurality of memory cells is part of a three-dimensional memory array.
- 10. The invention of claim 1, wherein (b1) comprises:while the memory cell is being programmed, determining whether the memory cell is in a programmed state; and if the memory cell is determined to be in the programmed state, terminating the programming of the memory cell.
- 11. A memory device comprising;a plurality of memory cells along a wordline; and a controller operative to, for each memory cell regardless of the memory cell's content, determine whether a bit to be stored in the memory cell represents a programmed state or an un-programmed state; program the memory cell if the bit to be stored in the memory cell represents the programmed state; and skip the memory cell if the bit to be stored in the memory cell represents the un-programmed state.
- 12. The invention of claim 11, wherein each memory cell comprises a respective bitline, and wherein the controller programs a memory cell by grounding its bitline while a programming pulse is applied on the wordline and skips a memory cell by not grounding its bitline while a programming pulse is applied on the wordline.
- 13. The invention of claim 12, wherein the controller is operative to program two or more memory cells by sequentially grounding their bitlines.
- 14. The invention of claim 12, wherein the controller is operative to program two or more memory cells by simultaneously grounding their bitlines.
- 15. The invention of claim 11, wherein each memory cell in the plurality of memory cells comprises an antifuse.
- 16. The invention of claim 11, wherein each memory cell in the plurality of memory cells comprises a write-once memory cell.
- 17. The invention of claim 11, wherein each memory cell in the plurality of memory cells comprises a write-many memory cell.
- 18. The invention of claim 11, wherein each memory cell in the plurality of memory cells comprises a field-programmable memory cell.
- 19. The invention of claim 11, wherein the plurality of memory cells is part of a three-dimensional memory array.
- 20. A memory device comprising:a plurality of memory cells along a wordline; and a controller operative to apply a programming pulse on the wordline of a duration determined by a number of bits representing a programmed state that are to be stored in the plurality of memory cells; wherein each memory cell comprises a detection circuit operative to detect, while that memory cell is being programmed, when that memory cell is in a programmed state.
- 21. A method for increasing programming bandwidth, the method comprising:(a) with a data storage device, masking bits that represent new data to be written into a plurality of memory cells of a memory device with bits that represent an un-programmed state, thereby generating a plurality of bits, some of which represent a programmed state and others of which represent the un-programmed state; (b) sending the plurality of bits from the data storage device to the memory device; and (c) for each memory cell of the plurality of memory cells: (c1) if the bit to be stored in the memory cell represents the programmed state, programming the memory cell; and (c2) if the bit to be stored in the memory cell represents the un-programmed state, skipping the memory cell.
- 22. The invention of claim 21, wherein the memory cell is programmed in (c1) by grounding its bitline while a programming pulse is applied on its wordline, and wherein the memory cell is skipped in (c2) by not grounding its bitline while a programming pulse is applied on its wordline.
- 23. The invention of claim 21, wherein the plurality of memory cells stores a page of data.
- 24. The invention of claim 21, wherein the plurality of memory cells stores a file system structure, and wherein the new data comprises a modification to the file system structure.
- 25. The invention of claim 21, wherein the plurality of memory cells stores a file allocation table, and wherein the new data comprises an entry to the file allocation table.
- 26. The invention of claim 21, wherein each memory cell in the plurality of memory cells comprises an antifuse.
- 27. The invention of claim 21, wherein each memory cell in the plurality of memory cells comprises a write-once memory cell.
- 28. The invention of claim 21, wherein each memory cell in the plurality of memory cells comprises a write-many memory cell.
- 29. The invention of claim 21, wherein each memory cell in the plurality of memory cells comprises a field-programmable memory cell.
- 30. The invention of claim 21, wherein the plurality of memory cells is part of a three-dimensional memory array.
- 31. A system for increasing programming bandwidth, the system comprising:a memory device comprising a plurality of memory cells along a wordline and a controller; and a data storage device coupled with the memory device and operative to generate a plurality of bits by masking bits that represent new data to be written into the plurality of memory cells with bits that represent an un-programmed state, whereby some of bits of the plurality of bits represent a programmed state and others represent the un-programmed state; wherein the controller is operative to, for each memory cell, determine whether a bit to be stored in the memory cell represents the programmed state or the un-programmed state; program the memory cell if the bit to be stored in the memory cell represents the programmed state; and skip the memory cell if the bit to be stored in the memory cell represents the un-programmed state.
- 32. The invention of claim 31, wherein each memory cell in the plurality of memory cells comprises an antifuse.
- 33. The invention of claim 31, wherein each memory cell in the plurality of memory cells comprises a write-once memory cell.
- 34. The invention of claim 31, wherein each memory cell in the plurality of memory cells comprises a write-many memory cell.
- 35. The invention of claim 31, wherein each memory cell in the plurality of memory cells comprises a field-programmable memory cell.
- 36. The invention of claim 31, wherein the plurality of memory cells is part of a three-dimensional memory array.
- 37. A system for increasing programming bandwidth, the system comprising:a memory device comprising: a plurality of memory cells along a wordline; and a controller operative to apply a programming pulse on the wordline of a duration determined by a number of bits representing a programmed state that are to be stored in the plurality of memory cells; and a data storage device coupled with the memory device and operative to provide the memory device with a plurality of bits to be stored in the plurality of memory cells, wherein the plurality of bits comprises a first set of bits representing a modification to data stored in the plurality of memory cells and a second set of bits representing an un-programmed state; wherein each memory cell comprises a detection circuit operative to detect, while that memory cell is being programmed, when that memory cell is in a programmed state.
CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims the benefit of the following U.S. provisional applications, each of which was filed on Mar. 21, 2001: U.S. Provisional Application No. 60/277,794 U.S. Provisional Application No. 60/277,815 and U.S. Provisional Application No. 60/277,738 Each of the above-referenced applications is hereby incorporated by reference.
US Referenced Citations (17)
Non-Patent Literature Citations (1)
Entry |
Information Disclosure Statement, 3 pages, Sep. 27, 2001. |
Provisional Applications (3)
|
Number |
Date |
Country |
|
60/277794 |
Mar 2001 |
US |
|
60/277815 |
Mar 2001 |
US |
|
60/277738 |
Mar 2001 |
US |