Memory device with defined programming transaction time
First Claim
1. A memory device, comprising:
- memory cells in a memory array;
logic to hold a received value representing a programmably-defined memory transaction time, defined according to a calibration operation performed on memory cells of the memory array, the programmably-defined memory transaction time corresponding to a maximum time expected for correct programming of data into memory cells of the memory array; and
logic to compare the programmably-defined memory transaction time with time consumed by a write operation in the memory array, and to generate a signal state for provision to a memory controller, wherein the signal state indicates whether the write operation has resulted in correct programming of data into memory cells of the memory array within the programmably-defined memory transaction time.
1 Assignment
0 Petitions
Accused Products
Abstract
This disclosure provides a method of accurately determining expected transaction times associated with flash memory subdivisions, such as devices, blocks or pages. By performing a test transaction to program each bit of each such unit, the maximum expected programming time of each unit may be determined in advance and used for scheduling purposes. For example, in a straightforward implementation, a relatively accurate, empirically measured time limit may be identified and used to efficiently manage and schedule flash memory transactions without awaiting ultimate resolution of attempts to write to a non-responsive page. This disclosure also provides other uses of empirically-measured maximum flash memory transaction times, including via multiple memory modes and prioritized memory; for example, if a high performance mode is desired, low variation in flash memory transaction times may be tolerated, and units not satisfying these principles may be marked relatively quickly.
18 Citations
20 Claims
-
1. A memory device, comprising:
-
memory cells in a memory array; logic to hold a received value representing a programmably-defined memory transaction time, defined according to a calibration operation performed on memory cells of the memory array, the programmably-defined memory transaction time corresponding to a maximum time expected for correct programming of data into memory cells of the memory array; and logic to compare the programmably-defined memory transaction time with time consumed by a write operation in the memory array, and to generate a signal state for provision to a memory controller, wherein the signal state indicates whether the write operation has resulted in correct programming of data into memory cells of the memory array within the programmably-defined memory transaction time. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A memory device, comprising:
-
memory locations in a non-volatile memory array, each memory location characterized by a programming time that is expected to change over a lifetime of the memory device; logic to hold a received value representing a programmably-defined memory transaction time that corresponds to a maximum expected time for proper programming of data into one or more of the memory locations of the non-volatile memory array; and logic to compare the programmably-defined memory transaction time with time consumed by a write operation directed to the one or more of the memory locations, and to generate a signal for provision to a memory controller to indicate whether the write operation has resulted in correct programming of data into the one or more of the memory locations within the programmably-defined memory transaction time. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A memory device, comprising:
-
logic to receive from a memory controller a programmably-defined value representing an expected maximum write time for a non-volatile memory location of the memory device; logic to compare write data received as part of a write operation directed to the non-volatile memory location with content of the non-volatile memory location following the write operation, to test for proper programming of the non-volatile memory location and to determine whether proper programming has been effected; logic to obtain a measure of time consumed by proper programming pursuant to the write operation and to compare the measure with the programmably-defined value; logic to notify the memory controller if the expected maximum write time is reached without proper programming pursuant to the write operation. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification