The present invention relates to nonvolatile erasable programmable memories and more specifically, techniques for reading and writing data for these types of memories.
Memory and storage is one of the key technology areas that is enabling the growth in the information age. With the rapid growth in the Internet, World Wide Web (WWW), wireless phones, personal digital assistant, digital cameras, digital camcorders, digital music players, computers, networks, and more, there is continually a need for better memory and storage technology. A particular type of memory is nonvolatile memory. A nonvolatile memory retains its memory or stored state even when power is removed. Some types of nonvolatile erasable programmable memories include Flash, EEPROM, EPROM, MRAM, FRAM, ferroelectric, and magnetic memories. Some nonvolatile storage products include CompactFlash (CF) cards, MultiMedia cards (MMC), Flash PC cards (e.g., ATA Flash cards), SmartMedia cards, and memory sticks.
A widely used type of semiconductor memory storage cell is the floating gate memory cell. Some types of floating gate memory cells include Flash, EEPROM, and EPROM. The memory cells are configured or programmed to a desired configured state. In particular, electric charge is placed on or removed from the floating gate of a Flash memory cell to put the memory into two or more stored states. One state is an erased state and there may be one or more programmed states. Alternatively, depending on the technology and terminology, there may be a programmed state and one or more erased states. A Flash memory cell can be used to represent at least two binary states, a 0 or a 1. A Flash memory cell can store more than two binary states, such as a 00, 01, 10, or 11; this cell can store multiple states and may be referred to as a multistate memory cell. The cell may have more than one programmed states. If one state is the erased state (00), the programmed states will be 01, 10, and 11, although the actual encoding of the states may vary.
Despite the success of nonvolatile memories, there also continues to be a need to improve the technology. It is desirable to improve the density, speed, durability, and reliability of these memories. It is also desirable to reduce power consumption.
As can be seen, there is a need for improving the operation of nonvolatile memories. Specifically, by using a technique of dynamic column block selection of the memory cells, this will reduce noise in the operation of the integrated circuit, which will permit the integrated circuit to operate more reliably. Further, the technique will also reduce the area required by the block selection circuitry, which will reduce the cost of manufacture.
The invention provides a technique of accessing selecting circuits assigned to columns of an array of memory cells to hold data read or to be written into the memory cells. The selecting circuits may be latches. In a specific embodiment, the memory cells are multistate memory cells. There is a shift register, acting as a pointer, having a stage for each column block of the array. A strobe pulse is shifted through this shift register. The strobe points, with each clock, at and enables a different circuit in sequence. That particular selecting circuit that has been enabled by the strobe will then perform a certain operation. In a read mode, the selected selecting circuit will transfer the stored information through an output line to the output buffer for output from the integrated circuit. And while in a programming mode, the selected selecting circuit will receive data from an input buffer. This data will be written into a memory cell.
In one specific embodiment, the invention is an integrated circuit including a number of nonvolatile memory cells arranged in rows and columns. A number of read/write circuits are connected to a number of array columns of memory cells. In an embodiment, a read/write circuit includes a sense amplifier circuit. A number of first latch circuits are connected to the same set of read/write circuits and a first I/O line. A number of second latch circuits are connected to one or more sense amplifiers and a second I/O line. There is a shift register chain including a number of shift register stages, acting as pointers. Each stage has a data input and a data output. Each stage has a clock input. Each shift register has its input connected to the previous shift register output and the output connected to the next shift register input.
Accordingly, those cells are floating gate devices. Flash, EEPROM, or EPROM memory cells are some examples of floating gate devices. The first latches may be implemented using a pair of cross-coupled inverters. The second latches may be implemented using a pair of cross-coupled inverters. Other techniques for implementing a latch may be used such as using other logic gates including NAND and NOR. Each stage of the shift register may be a master-slave-type register. Each memory cell may store a plurality of bits of data. The memory cells may be multistate memory cells. One of the first latch circuits and one of the second latch circuits may hold data to be written into or read from a single memory cell for a column of the memory cells. The first latches are connected between the first I/O line and a different one of the read/write circuits. Furthermore, the second latches are connected between the second I/O line and the same read/write circuit as the first latch one of the sense amplifiers.
The first and second latches are not part of a shift register. The first latch circuits do not form a shift register. The second latch circuits do not form a shift register. Therefore, data is not serially passed from one of the first latch circuits to a next one of the first latch circuits. Data is not serially passed from one of the second latch circuits to a next one of the second latch circuits.
In another embodiment, the invention is a method of operating an integrated circuit. A first latch is provided to hold data associated with a first column of memory cells. A second latch is provided to hold data associated with a second column of memory cells. A shift register is provided having a first stage with an output connected to an enable input of the first latch, and a second stage with an output connected to an enable input of the second latch. A strobe bit is loaded into the first stage of the shift register to enable connecting of the first latch to an I/O line. The shift register is clocked to advance the strobe bit from the first stage of the shift register to the second stage to enable connecting of the second latch to the I/O line. Connecting of the first latch to the I/O line is disabled upon clocking the shift register.
Other objects, features, and advantages of the present invention will become apparent upon consideration of the following detailed description and the accompanying drawings, in which like reference designations represent like features throughout the figures.