Electrical computers and digital processing systems: memory – Storage accessing and control – Specific memory composition
Reexamination Certificate
1998-09-30
2002-07-16
Kim, Matthew (Department: 2186)
Electrical computers and digital processing systems: memory
Storage accessing and control
Specific memory composition
C711S154000, C711S167000, C365S185220, C365S185330
Reexamination Certificate
active
06421757
ABSTRACT:
TECHNICAL FIELD
The present invention relates, generally, to a sequence controller for performing operations in a flash memory and, more particularly, to an on-chip state machine for automating program and erase functions in a flash memory.
BACKGROUND ART
With the ever increasing demand for cellular telephones and related telecommunication technologies, companies providing these products and services are continuously looking for ways to improve the cost, reliability and performance of their products and services. In order to improve a the performance and yet reduce the cost of cellular phone systems in general, one trend is for manufacturers and designers of microprocessor systems to replace a portion or all of the existing Electrically-Erasable and Programmable Read-Only Memory (EPROM) memory with Flash memory.
Flash memory is being increasingly incorporated into a wide variety of applications, such as, for example, digital cellular phones and other wireless applications, various peripheral devices such as modems, fax machines and printers, and other types of control systems. Flash memory typically offers various advantages over other types of memory, including RAM, ROM and EEPROM. For example, flash memory can often provide the electrical erasability features of random access memory (RAM), yet also provide the nonvolatility features of read only memory (ROM) utilized to retain stored information after power is terminated. Typically, flash memory stores information and data as a voltage charge on the floating gate of a transistor while other memory types, in general, require the use of additional components to facilitate the storage of the charge or to keep the memory latched, possibly resulting in a more expensive means for storing information. Further, flash memory generally provides for the programming of information or data by changing the logic of the flash cells, i.e., from a logic “1” to a logic “0”, by setting a control gate voltage Vcg to a sufficiently high programming voltage, grounding the a source, and then setting the drain voltage to less than the programming voltage, thus facilitating the transfer of a number of electrons to the floating gate. Although this programming of the flash cells is typically done on a byte level, recent technologies have provided for the programming of the flash memory cells on a bit by bit level. However, unlike RAM memory, flash memory typically cannot be erased on a byte level, but instead requires the erasing of memory cells on a larger scale, such as a sector of memory, i.e, a block of memory generally 1 k or greater.
In general, microcontroller-based systems, such as cellular telephone systems, that utilize flash memory typically comprise a host system, e.g., a microcontroller, that interfaces with the flash memory to program and erase the flash memory as desired. For example, as used in the context of a cellular telephone application, a user may enter a phone number onto a keypad to indicate a desired number to be stored for later retrieval. Once the number has been entered, the microprocessor will store the number by programming it into the flash memory. Upon receiving a request for the programmed number, the microprocessor will access the flash memory and retrieve the number for display. Alternatively, the user may desire for a preprogrammed number to be removed from the stored memory. Upon receiving the proper command, the microprocessor accesses the flash memory location in which the preprogrammed number is stored and erases the contents of flash memory for that location.
Although the programming and erasing functions of the flash memory can be facilitated by the microcontroller, these functions can compromise or even preclude the microcontroller from performing other suitable or desired functions, e.g. displaying information or transmitting information, due to the need for the microcontroller to complete the potentially time-delaying tasks of programming and erasing the flash memory. As a result, the operation of the microcontroller is somewhat hindered by the often substantially simultaneous multiple requirements of displaying, transmitting, storing, programming and erasing information and data.
Methods and apparatus are thus needed to overcome these and other shortcomings in the prior art. Specifically, methods and apparatus are needed for automating the program and erase functions in a flash memory thus allowing the host system to perform other tasks and operations.
SUMMARY OF THE INVENTION
The present invention provides methods and apparatus for automating and controlling the programming operations in a flash memory, as well as for automating and controlling the erasing operations in a flash memory
One advantage of the present invention is that reprogramming of the flash cells may be limited to those flash cells verified as a programming failure, thus reducing the unnecessary programming (or reprogramming) of flash cells.
A further advantage of the present invention is that the timers for controlling the programming and erasing operations are readily configurable without affecting the performance of the sequence controller.
Another advantage of the present invention is that the common interface circuitry may be employed to facilitate automation and control of both programming and erasing functions.
Another advantage of the present invention is that with a significant amount of control logic resident in a finite state machine, the design of the peripheral circuits is simplified.
A preferred embodiment of the present invention provides a state machine having handshaking capabilities for managing and coordinating a synchronized operation in a manner which mitigates timing hazards. Additionally, the handshaking capabilities help to ensure that programming and erasing sequences are properly executed with surrounding circuitry.
In accordance with a further aspect of the present invention, a state machine is provided which facilitates the resetting of functions and operations in a desired sequence.
The above and other advantages of the present invention may be carried out in one form by methods and apparatus for automating the programming or erasing functions in the flash memory, including the verifying of the programming or erasing sequences, through the use of a state machine operatively coupled to a flash memory and including a plurality of functional blocks configured to facilitate the programming and erasing operations.
REFERENCES:
patent: 5509134 (1996-04-01), Fandrich et al.
patent: 5541879 (1996-07-01), Suh et al.
patent: 5627784 (1997-05-01), Roohparvar
patent: 5805501 (1998-09-01), Shiau et al.
High-Voltage Switching for Flash Memory Programming, Micron Technology, Inc., Mar., 1998, Technical Note, TN-28-08, pp. 1-2.
EEPROM Replacement with Flash Memory, Intel, Mar., 1997, pp. 1,3, and 5-20.
Das Srinjoy
Wang Peiqing
Anderson Matthew D.
Conexant Systems, Inc
Kim Matthew
Thomas Kayden Horstemeyer & Risley LLP
LandOfFree
Method and apparatus for controlling the programming and... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and apparatus for controlling the programming and..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for controlling the programming and... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2853084