Abstract:
A memory (12) includes a plurality of memory cells (12), a sense amplifier (18) coupled to at least one of the plurality of memory cells, a temperature dependent current generator (26) comprising a plurality of selectable temperature dependent current sources (52-62) for generating a temperature dependent current, a temperature independent current generator (28) comprising a plurality of selectable temperature independent current sources (70, 72, 74) for generating a temperature independent current, and a summer (30) coupled to the temperature dependent current generator (26) and the temperature independent current generator (28) for combining the temperature dependent current and the temperature independent current to generate a reference current for use by the sense amplifier (18). A temperature coefficient of the reference current is approximately a same as a temperature coefficient of a memory cell current of at least one of the plurality of memory cells.
Abstract:
A memory including a plurality of word line drivers and two charge pumps. During an initialization mode, a first charge pump provides a supply voltage to a first set of word line drivers and a second charge pump provides a voltage to a second set of word line drivers. During a normal read operation, the second charge pump supplies a supply voltage to the word line driver used for the read operation. During a normal mode write operation, the first charge pump supplies a supply voltage to the word line driver being used for the write operation.
Abstract:
An erase operation in a non-volatile memory (10) includes selecting a block (14, 16, or 18) on which to perform an erase operation, erasing the selected block≠ receiving test data corresponding to the selected block, determining a soft program verify voltage level based on the test data, and soft programming the erased selected block using the soft program verify voltage level. A non-volatile memory (10) includes a plurality of blocks, a test block (20) which stores test data corresponding to each of the plurality of blocks, and a flash control (30) coupled to the plurality of blocks and the test block, the flash control determining a soft program verify voltage level for a particular block of the plurality of blocks based on the test data for the particular block when the particular block is being soft programmed.
Abstract:
A circuit and method reduces disturb in a memory array (12) resulting from one of two supply voltages dropping below a predetermined value. Memory control logic (22) is operated using a logic power domain. Higher voltages than that of the logic power domain are generated in response to an oscillator (18) oscillating. The higher voltages are used to operate the memory array (12). Operation of the oscillator (18) is controlled with the memory control logic (22) when the logic power domain is at least at a first level or value. The oscillator (18) is disabled when the logic power domain is below the first level. The disabling of the oscillator (18) has the effect of preventing generation of the higher voltages. This facilitates preventing the higher voltages from reaching the memory array (12) when they may not be properly controlled.
Abstract:
A non-volatile memory (12) can have multiple blocks (14, 16, 18) erased in parallel for a relatively few number of erase operations. This saves time for the user in the set-up of the memory (12) because the erase operation is relatively slow. Problems with parallel erase relate to different blocks having different program/erase histories with the result that the blocks with different histories erase differently. Thus, after a predetermined number of erase cycles are performed, the ability to parallel erase is prevented. This is achieved by allowing parallel erasing operations until the predetermined number of erase operations have been counted. After that predetermined number has been reached, a parallel erase mode disable signal is generated to prevent further parallel erase cycles. The count and the predetermined number are maintained in a small block (20) of the non-volatile memory (12) that is inaccessible to the user.