US20060245270A1 - Random cache read - Google Patents
Random cache read Download PDFInfo
- Publication number
- US20060245270A1 US20060245270A1 US11/115,489 US11548905A US2006245270A1 US 20060245270 A1 US20060245270 A1 US 20060245270A1 US 11548905 A US11548905 A US 11548905A US 2006245270 A1 US2006245270 A1 US 2006245270A1
- Authority
- US
- United States
- Prior art keywords
- memory
- interface
- memory device
- address
- volatile memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1015—Read-write modes for single port memories, i.e. having either a random port or a serial port
- G11C7/1042—Read-write modes for single port memories, i.e. having either a random port or a serial port using interleaving techniques, i.e. read-write of one part of the memory while preparing another part
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2245—Memory devices with an internal cache buffer
Definitions
- the present invention relates generally to memory devices and in particular the present invention relates to non-volatile memory devices with cache read.
- RAM random-access memory
- RAM random-access memory
- ROM read-only memory
- ROM electrically erasable programmable read-only memory
- EEPROM electrically erasable programmable read-only memory
- EEPROM electrically isolated gates (floating gates). Data is stored in the memory cells in the form of charge on the floating gates. Charge is transported to or removed from the floating gates by specialized programming and erase operations.
- Flash memory is a type of EEPROM that can be erased in blocks instead of one byte at a time and reprogrammed.
- a typical Flash memory comprises a memory array, which includes a large number of memory cells. Each of the memory cells includes a floating gate field-effect transistor capable of holding a charge. The data in a cell is determined by the presence or absence of the charge in the floating gate.
- the cells are usually grouped into sections called “erase blocks.”
- the memory cells of a Flash memory array are typically arranged into a “NOR” architecture (each cell directly coupled to a bitline) or a “NAND” architecture (cells coupled into “strings” of cells, such that each cell is coupled indirectly to a bitline and requires activating the other cells of the string for access, but allowing for a higher cell density).
- Each of the cells within an erase block can be electrically programmed in a random basis by charging the floating gate. The charge can be removed from the floating gate by a block erase operation, wherein all floating gate memory cells in the erase block are erased in a single operation.
- Non-volatile memory includes, but not limited to, Polymer Memory, Ferroelectric Random Access Memory (FeRAM), Ovionics Unified Memory (OUM), Magnetoresistive Random Access Memory (MRAM), Molecular Memory, Nitride Read Only Memory (NROM), and Carbon Nanotube Memory.
- FeRAM Ferroelectric Random Access Memory
- OFUUM Ovionics Unified Memory
- MRAM Magnetoresistive Random Access Memory
- NROM Nitride Read Only Memory
- Carbon Nanotube Memory Carbon Nanotube Memory
- SDRAM synchronous DRAM
- DDR SDRAM double data rate SDRAM
- DDR SDRAM double data rate SDRAM
- DDR SDRAM double data rate SDRAM
- Other forms of synchronous memory interfaces are also utilized in modern memories and memory systems, including, but not limited to, double data rate 2 SDRAM (DDR2), graphics double data rate (GDDR), graphics double data rate 2 (GDDR2), and Rambus DRAM (RDRAM).
- Read operations in many memory types typically include the steps of receiving a read command, receiving the requested address on the address lines of the memory device, decoding the requested memory address to select the desired page of memory cells from the array, waiting until the data from the selected page of memory cells is read from the bit lines that couple the data from the array to sense amplifiers, latching the page of read data from the sense amplifiers to an I/O buffer, and transferring the read data from the memory device.
- many memory types in particular non-volatile memory types, include a cache read mode of operation.
- a cache read operation to reduce the overall latency of a read operation, the next page of data is read from the array by the sense amplifiers while the current page is being transferred from the device so that it will be ready to be latched into the I/O buffer once the current page of data is finished being transferred from the memory.
- the data read from the next page by the sense amplifiers is typically stored in a data cache latch. This allows the latency of the data sensing of the next page of data by the sense amplifiers and the data I/O of data words from the current page of data to run concurrently.
- the user only sees a full latency read operation for the initial page of data, while each following page of data is sensed concurrently with the I/O of the previous page.
- the cache read operation only allows for the current address to be incremented and the next sequential page of data to be sensed and read from the memory. If another page of data that is non-sequentially addressed is desired to read, the cache read operation must be terminated and a new read operation started with a new address. For each new non-sequential read operation the user must wait the full latency period of a standard/initial page read operation.
- the various embodiments relate to volatile and non-volatile memory devices that utilize a random cache read mode of operation which allows the next page of memory being read/sensed from the memory array by the sense amplifiers while the current page is being transferred from the memory I/O buffer to be non-sequential and selected by the user.
- This allows for random page read capability without losing the low latency benefits of the concurrent sensing-data I/O of a cache read mode of operation, allowing the address of the next page of data to be read to be user selectable.
- the invention provides a memory device comprising an array of memory cells, control circuitry for controlling access to the array of memory cells, wherein the control circuitry is adapted to allow sensing of first data values for a first group of memory cells in response to receiving a first read command and a first address and to allow sensing of second data values for a second group of memory cells in response to receiving a second read command and a second address, the sensing of second data values to occur concurrently with providing the first data values to DQ lines of the memory device, and wherein the control circuitry is further adapted to permit the second address to be non-sequential with the first address.
- the invention provides a non-volatile memory device comprising a non-volatile memory array containing a plurality of memory pages each having a plurality of non-volatile memory cells, a plurality of sense amplifiers, an I/O buffer, a memory interface, and a controller coupled to the non-volatile memory array, the I/O buffer, and the memory interface, wherein the controller is adapted to access pages of memory from the memory array in a cache read mode of operation with a user-selectable cache read, wherein a next memory page is sensed from the non-volatile memory array by the plurality of sense amplifiers while data of a current memory page is transferred from the I/O buffer through the memory interface of the non-volatile memory device and where the next memory page is selected by an address input on the memory interface.
- the invention provides a system comprising a processor coupled to a non-volatile memory device, wherein the system is adapted to access pages of memory from the non-volatile memory device in a cache read mode of operation with a user-selectable cache read, and wherein the non-volatile memory device is adapted to read a next memory page from an array of the non-volatile memory device while data of a current memory page is transferred from the non-volatile memory device through a memory interface and where the next memory page is selected by an address input on the memory interface.
- the invention provides a method of operating a memory device comprising sensing first data values for a first group of memory cells in response to receiving a first read command and a first address, sensing second data values for a second group of memory cells in response to receiving a second read command and a second address, wherein sensing of the second data values occurs concurrently with providing the first data values to DQ lines of the memory device, and wherein the first address and the second address are each selectable by an external processor.
- the invention provides a method of operating a non-volatile memory comprising receiving a first read command and a first address at an interface of a non-volatile memory device, sensing a first memory page of the first read command from a memory array of the non-volatile memory device, receiving a second read command and a second address at the interface of the non-volatile memory device, and sensing a second memory page of the second read command from the memory array while transferring data of the first memory page from the memory device.
- FIG. 1 details simplified block diagram of a system containing a non-volatile memory device in accordance with an embodiment of the present invention.
- FIG. 2 details a waveform of a random cache read operation of a memory in accordance with an embodiment of the present invention.
- Embodiments of the present invention utilize a cache read mode of operation, where a user-selected next page of memory is being read/sensed from the memory array by the sense amplifiers while a previously read page of memory is being transferred from the memory I/O buffer.
- This random cache read mode allows for non-volatile memory with a page read capability that benefits from the low latency of the concurrent data sensing and data I/O of a cache read mode of operation and yet still allows for the address of the next page of data to be user selectable.
- a basic read operation/cycle in most memory types typically includes the steps of receiving a read command on the memory interface, which includes the requested address on the address lines, decoding the requested memory address to select the desired page of memory cells from the array, and waiting a specified latency period until the data from the selected page of memory cells is read from the bit lines that couple the data from the array to sense amplifiers. The row/page of data read by the sense amplifiers is then latched into an I/O buffer to be read from the memory device.
- many of these memory devices include a cache read mode of operation, wherein the sensing and latching of the next sequential page of data by the sense amplifiers and data cache occurs while the current page of data is being transferred/read from the I/O buffer of the memory device.
- This concurrent execution of the sensing of the next page of data while transferring the current page of data allows the data transfer rate of the memory device to be increased and the latency of the data sensing of the next page of data by the sense amplifiers to be hidden from the user.
- the user In a cache read operation, the user only sees the full latency of a read operation for the initial page of data, with each following page of data being sensed concurrently with the I/O of the previous page.
- a conventional cache read operation only allows for the next sequential page of data to be sensed and read from the memory. If another page of data that is non-sequentially addressed is desired to be read, the cache read operation must be terminated and a new read operation started with a new address. For each new non-sequential read operation the user must wait the full latency period of a standard read operation or that of the initial page read of a new cache read operation.
- Embodiments of the present invention implement what is termed herein as a random cache read mode operation, wherein the address of next page of data to be read is input to the memory through the interface with the triggering cache read mode command while the current page of data is being read from the I/O buffer of the memory device.
- this next page of data can be selected from any memory bank of the memory device without restriction.
- FIG. 1 shows a simplified diagram of a system 128 incorporating a non-volatile memory device 100 of the present invention coupled to a host 102 , which is typically a processing device or memory controller.
- the non-volatile memory 100 is a NOR architecture Flash memory device or a NAND architecture Flash memory device.
- memory device 100 embodiments of the present invention incorporating other non-volatile memory arrays 112 of differing technology and architecture types (including, but not limited to, Polymer memory, FeRAM, OUM, MRAM, Molecular memory, and Carbon Nanotube memory) are also possible and should be apparent to those skilled in the art with the benefit of the present disclosure.
- the non-volatile memory device 100 has an interface 130 that contains an address interface 104 , control interface 106 , and data interface 108 that are each coupled to the processing device 102 to allow memory read and write accesses. It is noted that other memory interfaces 130 that can be utilized with embodiments of the present invention exist, such as a combined address/data bus, and will be apparent to those skilled in the art with the benefit of the present disclosure. In one embodiment of the present invention, the interface 130 is a synchronous memory interface.
- an internal memory controller 110 directs the internal operation; managing the non-volatile memory array 112 and updating RAM control registers and non-volatile erase block management registers 114 .
- the RAM control registers and tables 114 are utilized by the internal memory controller 110 during operation of the non-volatile memory device 100 .
- the non-volatile memory array 112 contains a sequence of memory banks or segments 116 . Each bank 116 is organized logically into a series of erase blocks (not shown). Memory access addresses are received on the address interface 104 of the non-volatile memory device 100 and divided into a row and column address portions.
- the row address is latched and decoded by row decode circuit 120 , which selects and activates a row/page (not shown) of memory cells across a selected memory bank.
- the bit values encoded in the output of the selected row of memory cells are coupled to a local bitline (not shown) and a global bitline (not shown) and are detected by sense amplifiers 122 associated with the memory bank.
- the sense amplifiers 122 include a data cache or data latch 132 , which latches the sensed data from the sense amplifiers 122 once it has been sensed/read from the physical row/page of the bank 116 . In one embodiment of the present invention, this latching of the sensed data into the data cache allows the sense amplifiers to be released to sense the next page of memory.
- the column address of the access is latched and decoded by the column decode circuit 124 .
- the output of the column decode circuit 124 selects the desired column data from the internal data bus (not shown) that is coupled to the outputs of the data cache 132 holding the data from the individual read sense amplifiers 122 and couples them to an I/O buffer 126 for transfer from the memory device 100 through the data interface 108 .
- the row decode circuit 120 selects the row page and column decode circuit 124 selects write sense amplifiers 122 .
- Data values to be written are coupled from the I/O buffer 126 via the internal data bus to the write sense amplifiers 122 selected by the column decode circuit 124 and written to the selected non-volatile memory cells (not shown) of the memory array 112 .
- the written cells are then reselected by the row and column decode circuits 120 , 124 and sense amplifiers 122 so that they can be read to verify that the correct values have been programmed into the selected memory cells.
- two or more data caches 132 are coupled to the sense amplifiers 122 , allowing multiple pages of data to be sensed and cached while data operations are occurring with the I/O buffer 126 (data being read or written to the I/O buffer 126 ) or a second data read operation to occur and stored in a second data cache 132 while data is read from a first data cache 132 .
- one or more data cache circuits 132 are coupled between the output of the column decode circuit 124 and the I/O buffer 126 .
- the output of the column decode circuit 124 selects the desired column data directly from the outputs of the individual read sense amplifiers 122 and couples them to the I/O buffer 126 , allowing the data cache 132 to be eliminated.
- the column decode circuit 124 is placed before the read sense amplifiers 122 .
- non-volatile memory devices systems, external interfaces, and/or manners of coupling the memory controller/host to the non-volatile memory device(s), such as directly coupled individual control busses and signal lines, are possible and will be apparent to those skilled in the art with benefit of the present disclosure.
- a conventional non-volatile memory such as a Flash memory
- the memory takes memory commands that are input over its interface (control lines, address lines, and data lines).
- the memory commands are typically differentiated/specified by one or more special control line combinations and are accompanied by the address and/or data required to perform the specified command, which are interleaved along with or after the command codes or incorporated as part of the command itself.
- a conventional read command in a Flash memory begins by a read mode command being indicated to the Flash memory (for example, by a combination of asserted signals on the chip enable (CE#) and command latch enable (CLE), and de-asserted signals on the read enable (RE#) and address latch enable (ALE)).
- An initial read command byte (00h) is clocked in.
- An address of the memory row/page to be read is then latched in the address latch of the memory from the address/data bus on the next five following clock cycles, a final read command byte (30h) is then given to the Flash memory to execute the data page read from its memory array.
- a Ready/Busy signal line (R/B#) is asserted by the Flash memory while it executes the read operation and senses the selected memory row/page.
- the Ready/Busy signal line is de-asserted by the device and the Read Enable (RE#) line can be utilized to clock bytes of data from the read memory page from the Flash memory device.
- RE# Read Enable
- a typical cache read command operation begins with a conventional read command sequence to input the starting address of the read and execute the initial read from the memory.
- a cache read command (00h, 31h) is then utilized to signal the memory to read the next sequentially addressed row/page of the memory array with its sense amplifiers while the initial page is read/transferred from the I/O buffer.
- Each following sequential page is then triggered to be read from the array with the cache read command (00h, 31h) before the row/page currently held in the I/O buffer is transferred from the memory device so that the next sequential page can be sensed while the current page is being transferred.
- An example sequence would be: Initial Read Command (00h), Address, Final Read Command (30h), Wait for R/B# to go inactive, Initial Read Command (00h), Cache Read Command (31h), Wait for R/B# to go inactive, Transfer data of initial page, Initial Read Command (00h), Cache Read Command (31h), Wait for R/B# to go inactive, Transfer data of next sequential page, Initial Read Command (00h), Cache Read Command (31h), Wait for R/B# to go inactive, Transfer data, etc.
- a cache read exit command is required to exit the cache read mode of operation and resume normal memory operation/commands.
- a random cache read command sequence of an embodiment of the present invention allows for the input of an address to be read along with the command triggering the next row/page of data to be read from the memory array.
- a specialized cache read command (which includes the address of the next page of data to be read in the random cache read operation—00h, Address, 31h) is then utilized to signal the memory to read the next randomly selected/addressed row/page of the memory array with its sense amplifiers while the initial page is read from the I/O buffer.
- Each following randomly selectable page is then triggered to be read from the array with the specialized cache read command (for example, 00h, Address, 31h) before/while the row/page currently held in the I/O buffer is transferred from the memory device so that the next page can be sensed while the current page is being transferred.
- the specialized cache read command for example, 00h, Address, 31h
- An example sequence would be: Initial Read Command (00h), Address, Final Read Command (30h), Wait for R/B# to go inactive, Initial Read Command (00h), Address, Cache Read Command (31h), Wait for R/B# to go inactive, Transfer data of initial page, Initial Read Command (00h), Address, Cache Read Command (31h), Wait for R/B# to go inactive, Transfer data of next randomly selected page, Initial Read Command (00h), Address, Cache Read Command (31h), Wait for R/B# to go inactive, Transfer data, etc.
- FIG. 2 details the waveforms and data movements 200 of rows/pages of data in a random cache read of a memory embodiment of the present invention.
- waveforms are shown for I/O lines 202 , Ready/Busy (R/B_) line 204 , and Read Enable (RE_) 206 that detail the selection and transfer of random pages of data from a memory device of an embodiment of the present invention.
- an initial page (Page M) is selected and sensed from the memory array 216 by an Initial Read Command (00h) 208 , Address (for Page M) 210 , and Final Read Command (30h) 212 .
- the Ready/Busy line is de-asserted 214 by the memory, indicating the page of data (Page M) has been sensed is present in the data cache and/or I/O buffer and is ready to be transferred from the device.
- a random cache read command and new address are input to the memory device by another Initial Read Command (00h) 218 , Address (for Page N) 220 , and Cache Read Command (31h) 222 , to begin the sensing of the next randomly selected page of data (Page N) 230 .
- the data for the initial page (Page M) is transferred out of the memory device on the I/O lines 226 utilizing the Read Enable (RE_) to clock each data word out 228 .
- a new random cache read command and new address (for Page P) are again input to the memory device by an Initial Read Command (00h) 232 , Address (for Page P) 234 , and Cache Read Command (31h) 236 , to begin the sensing of the next randomly selected page of data (Page P) 244 .
- the R/B_line is de-asserted 238 and the data from Page N is transferred out of the memory device 240 utilizing the RE_to clock the data words 242 . Additional random cache reads for following memory rows/pages may be added as desired.
- a non-volatile memory has been described that utilizes a cache read mode of operation, where a next page of memory is being read/sensed from the memory array by the sense amplifiers while a previously read page of memory is being read from the memory I/O buffer, wherein the next page is user selected.
- This random cache read mode allows for a memory with a random page read capability, in which the address of the next page of data to be read is user selectable, which benefits from the low latency of a cache read mode of operation due to concurrent data sensing and data I/O.
Landscapes
- Read Only Memory (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Dram (AREA)
Abstract
Description
- The present invention relates generally to memory devices and in particular the present invention relates to non-volatile memory devices with cache read.
- Memory devices are typically provided as internal storage areas in a computer. The term memory identifies data storage that comes in the form of integrated circuit chips. There are several different types of memory used in modern electronics, one common type is RAM (random-access memory). RAM is characteristically found in use as main memory in a computer environment. RAM refers to read and write memory; that is, you can both write data into RAM and read data from RAM. This is in contrast to ROM (read-only memory), which permits you only to read data. Most RAM is volatile, which means that it requires a steady flow of electricity to maintain its contents.
- Computers almost always contain a small amount of ROM that holds instructions for starting up the computer, typically called a basic input output system (BIOS). Unlike RAM, ROM generally cannot be written to by a user. An EEPROM (electrically erasable programmable read-only memory) is a special type of non-volatile ROM that can be erased and programmed by exposing it to an electrical charge. EEPROM comprise a large number of memory cells having electrically isolated gates (floating gates). Data is stored in the memory cells in the form of charge on the floating gates. Charge is transported to or removed from the floating gates by specialized programming and erase operations.
- Yet another type of non-volatile memory is a Flash memory. A Flash memory is a type of EEPROM that can be erased in blocks instead of one byte at a time and reprogrammed. A typical Flash memory comprises a memory array, which includes a large number of memory cells. Each of the memory cells includes a floating gate field-effect transistor capable of holding a charge. The data in a cell is determined by the presence or absence of the charge in the floating gate. The cells are usually grouped into sections called “erase blocks.” The memory cells of a Flash memory array are typically arranged into a “NOR” architecture (each cell directly coupled to a bitline) or a “NAND” architecture (cells coupled into “strings” of cells, such that each cell is coupled indirectly to a bitline and requires activating the other cells of the string for access, but allowing for a higher cell density). Each of the cells within an erase block can be electrically programmed in a random basis by charging the floating gate. The charge can be removed from the floating gate by a block erase operation, wherein all floating gate memory cells in the erase block are erased in a single operation. It is noted that other types of non-volatile memory exist which include, but not limited to, Polymer Memory, Ferroelectric Random Access Memory (FeRAM), Ovionics Unified Memory (OUM), Magnetoresistive Random Access Memory (MRAM), Molecular Memory, Nitride Read Only Memory (NROM), and Carbon Nanotube Memory.
- A synchronous DRAM (SDRAM) is a type of DRAM that can run at much higher clock speeds than conventional DRAM memory. SDRAM's can be accessed quickly, but are volatile. SDRAM synchronizes itself with a CPU's bus and is capable of running at 100 MHZ, 133 MHZ, 166 MHZ, or 200 MHZ, about three or four times faster than conventional FPM (Fast Page Mode) RAM, and about two to three times as fast EDO (Extended Data Output) DRAM and BEDO (Burst Extended Data Output) DRAM. An extended form of SDRAM that can transfer a data value on the rising and falling edge of the clock signal is called double data rate SDRAM (DDR SDRAM, or simply, DDR). Other forms of synchronous memory interfaces are also utilized in modern memories and memory systems, including, but not limited to,
double data rate 2 SDRAM (DDR2), graphics double data rate (GDDR), graphics double data rate 2 (GDDR2), and Rambus DRAM (RDRAM). - Many computer systems are designed to operate using one or more forms of synchronous DRAM, but would benefit from non-volatile memory. A synchronous Flash memory has been designed that allows for a non-volatile memory device with an SDRAM interface. Although knowledge of the function and internal structure of a synchronous Flash memory is not essential to understanding the present invention, a detailed discussion is included in U.S. patent application Ser. No. 09/627,682 filed Jul. 28, 2000 and titled, “Synchronous Flash Memory,” which is commonly assigned.
- Read operations in many memory types typically include the steps of receiving a read command, receiving the requested address on the address lines of the memory device, decoding the requested memory address to select the desired page of memory cells from the array, waiting until the data from the selected page of memory cells is read from the bit lines that couple the data from the array to sense amplifiers, latching the page of read data from the sense amplifiers to an I/O buffer, and transferring the read data from the memory device. To speed up memory read operations, many memory types, in particular non-volatile memory types, include a cache read mode of operation. In a cache read operation, to reduce the overall latency of a read operation, the next page of data is read from the array by the sense amplifiers while the current page is being transferred from the device so that it will be ready to be latched into the I/O buffer once the current page of data is finished being transferred from the memory. The data read from the next page by the sense amplifiers is typically stored in a data cache latch. This allows the latency of the data sensing of the next page of data by the sense amplifiers and the data I/O of data words from the current page of data to run concurrently. In a cache read operation, the user only sees a full latency read operation for the initial page of data, while each following page of data is sensed concurrently with the I/O of the previous page.
- The cache read operation, however, only allows for the current address to be incremented and the next sequential page of data to be sensed and read from the memory. If another page of data that is non-sequentially addressed is desired to read, the cache read operation must be terminated and a new read operation started with a new address. For each new non-sequential read operation the user must wait the full latency period of a standard/initial page read operation.
- For the reasons stated above, and for other reasons stated below which will become apparent to those skilled in the art upon reading and understanding the present specification, there is a need in the art for a memory, and in particular a non-volatile memory, with a reduced cache read mode latency.
- The above-mentioned problems with cache read operation in volatile/non-volatile memories and other problems are addressed by the present invention and will be understood by reading and studying the following specification.
- The various embodiments relate to volatile and non-volatile memory devices that utilize a random cache read mode of operation which allows the next page of memory being read/sensed from the memory array by the sense amplifiers while the current page is being transferred from the memory I/O buffer to be non-sequential and selected by the user. This allows for random page read capability without losing the low latency benefits of the concurrent sensing-data I/O of a cache read mode of operation, allowing the address of the next page of data to be read to be user selectable.
- For one embodiment, the invention provides a memory device comprising an array of memory cells, control circuitry for controlling access to the array of memory cells, wherein the control circuitry is adapted to allow sensing of first data values for a first group of memory cells in response to receiving a first read command and a first address and to allow sensing of second data values for a second group of memory cells in response to receiving a second read command and a second address, the sensing of second data values to occur concurrently with providing the first data values to DQ lines of the memory device, and wherein the control circuitry is further adapted to permit the second address to be non-sequential with the first address.
- For another embodiment, the invention provides a non-volatile memory device comprising a non-volatile memory array containing a plurality of memory pages each having a plurality of non-volatile memory cells, a plurality of sense amplifiers, an I/O buffer, a memory interface, and a controller coupled to the non-volatile memory array, the I/O buffer, and the memory interface, wherein the controller is adapted to access pages of memory from the memory array in a cache read mode of operation with a user-selectable cache read, wherein a next memory page is sensed from the non-volatile memory array by the plurality of sense amplifiers while data of a current memory page is transferred from the I/O buffer through the memory interface of the non-volatile memory device and where the next memory page is selected by an address input on the memory interface.
- For yet another embodiment, the invention provides a system comprising a processor coupled to a non-volatile memory device, wherein the system is adapted to access pages of memory from the non-volatile memory device in a cache read mode of operation with a user-selectable cache read, and wherein the non-volatile memory device is adapted to read a next memory page from an array of the non-volatile memory device while data of a current memory page is transferred from the non-volatile memory device through a memory interface and where the next memory page is selected by an address input on the memory interface.
- For a further embodiment, the invention provides a method of operating a memory device comprising sensing first data values for a first group of memory cells in response to receiving a first read command and a first address, sensing second data values for a second group of memory cells in response to receiving a second read command and a second address, wherein sensing of the second data values occurs concurrently with providing the first data values to DQ lines of the memory device, and wherein the first address and the second address are each selectable by an external processor.
- For yet a further embodiment, the invention provides a method of operating a non-volatile memory comprising receiving a first read command and a first address at an interface of a non-volatile memory device, sensing a first memory page of the first read command from a memory array of the non-volatile memory device, receiving a second read command and a second address at the interface of the non-volatile memory device, and sensing a second memory page of the second read command from the memory array while transferring data of the first memory page from the memory device.
- Further embodiments of the invention include methods and apparatus of varying scope.
-
FIG. 1 details simplified block diagram of a system containing a non-volatile memory device in accordance with an embodiment of the present invention. -
FIG. 2 details a waveform of a random cache read operation of a memory in accordance with an embodiment of the present invention. - In the following detailed description of the invention, reference is made to the accompanying drawings that form a part hereof, and in which is shown, by way of illustration, specific embodiments in which the invention may be practiced. In the drawings, like numerals describe substantially similar components throughout the several views. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. Other embodiments may be utilized and structural, logical, and electrical changes may be made without departing from the scope of the present invention. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is defined only by the appended claims and equivalents thereof.
- Embodiments of the present invention utilize a cache read mode of operation, where a user-selected next page of memory is being read/sensed from the memory array by the sense amplifiers while a previously read page of memory is being transferred from the memory I/O buffer. This random cache read mode allows for non-volatile memory with a page read capability that benefits from the low latency of the concurrent data sensing and data I/O of a cache read mode of operation and yet still allows for the address of the next page of data to be user selectable.
- As stated above, a basic read operation/cycle in most memory types typically includes the steps of receiving a read command on the memory interface, which includes the requested address on the address lines, decoding the requested memory address to select the desired page of memory cells from the array, and waiting a specified latency period until the data from the selected page of memory cells is read from the bit lines that couple the data from the array to sense amplifiers. The row/page of data read by the sense amplifiers is then latched into an I/O buffer to be read from the memory device. To speed up memory read operations, many of these memory devices include a cache read mode of operation, wherein the sensing and latching of the next sequential page of data by the sense amplifiers and data cache occurs while the current page of data is being transferred/read from the I/O buffer of the memory device. This concurrent execution of the sensing of the next page of data while transferring the current page of data allows the data transfer rate of the memory device to be increased and the latency of the data sensing of the next page of data by the sense amplifiers to be hidden from the user. In a cache read operation, the user only sees the full latency of a read operation for the initial page of data, with each following page of data being sensed concurrently with the I/O of the previous page.
- A conventional cache read operation, however, only allows for the next sequential page of data to be sensed and read from the memory. If another page of data that is non-sequentially addressed is desired to be read, the cache read operation must be terminated and a new read operation started with a new address. For each new non-sequential read operation the user must wait the full latency period of a standard read operation or that of the initial page read of a new cache read operation.
- Embodiments of the present invention implement what is termed herein as a random cache read mode operation, wherein the address of next page of data to be read is input to the memory through the interface with the triggering cache read mode command while the current page of data is being read from the I/O buffer of the memory device. In one embodiment of the present invention, this next page of data can be selected from any memory bank of the memory device without restriction.
-
FIG. 1 shows a simplified diagram of asystem 128 incorporating anon-volatile memory device 100 of the present invention coupled to ahost 102, which is typically a processing device or memory controller. In one embodiment of the present invention, thenon-volatile memory 100 is a NOR architecture Flash memory device or a NAND architecture Flash memory device. It is noted thatmemory device 100 embodiments of the present invention incorporating othernon-volatile memory arrays 112 of differing technology and architecture types (including, but not limited to, Polymer memory, FeRAM, OUM, MRAM, Molecular memory, and Carbon Nanotube memory) are also possible and should be apparent to those skilled in the art with the benefit of the present disclosure. Thenon-volatile memory device 100 has aninterface 130 that contains anaddress interface 104,control interface 106, and data interface 108 that are each coupled to theprocessing device 102 to allow memory read and write accesses. It is noted thatother memory interfaces 130 that can be utilized with embodiments of the present invention exist, such as a combined address/data bus, and will be apparent to those skilled in the art with the benefit of the present disclosure. In one embodiment of the present invention, theinterface 130 is a synchronous memory interface. Internal to the non-volatile memory device, aninternal memory controller 110 directs the internal operation; managing thenon-volatile memory array 112 and updating RAM control registers and non-volatile erase block management registers 114. The RAM control registers and tables 114 are utilized by theinternal memory controller 110 during operation of thenon-volatile memory device 100. Thenon-volatile memory array 112 contains a sequence of memory banks orsegments 116. Eachbank 116 is organized logically into a series of erase blocks (not shown). Memory access addresses are received on theaddress interface 104 of thenon-volatile memory device 100 and divided into a row and column address portions. - On a read access the row address is latched and decoded by
row decode circuit 120, which selects and activates a row/page (not shown) of memory cells across a selected memory bank. The bit values encoded in the output of the selected row of memory cells are coupled to a local bitline (not shown) and a global bitline (not shown) and are detected bysense amplifiers 122 associated with the memory bank. Thesense amplifiers 122 include a data cache ordata latch 132, which latches the sensed data from thesense amplifiers 122 once it has been sensed/read from the physical row/page of thebank 116. In one embodiment of the present invention, this latching of the sensed data into the data cache allows the sense amplifiers to be released to sense the next page of memory. The column address of the access is latched and decoded by thecolumn decode circuit 124. The output of thecolumn decode circuit 124 selects the desired column data from the internal data bus (not shown) that is coupled to the outputs of thedata cache 132 holding the data from the individualread sense amplifiers 122 and couples them to an I/O buffer 126 for transfer from thememory device 100 through thedata interface 108. - On a write access the
row decode circuit 120 selects the row page andcolumn decode circuit 124 selectswrite sense amplifiers 122. Data values to be written are coupled from the I/O buffer 126 via the internal data bus to thewrite sense amplifiers 122 selected by thecolumn decode circuit 124 and written to the selected non-volatile memory cells (not shown) of thememory array 112. The written cells are then reselected by the row and column decodecircuits sense amplifiers 122 so that they can be read to verify that the correct values have been programmed into the selected memory cells. - In another
memory device 100 embodiment of the present invention, two ormore data caches 132 are coupled to thesense amplifiers 122, allowing multiple pages of data to be sensed and cached while data operations are occurring with the I/O buffer 126 (data being read or written to the I/O buffer 126) or a second data read operation to occur and stored in asecond data cache 132 while data is read from afirst data cache 132. In yet another embodiment of the present invention, one or moredata cache circuits 132 are coupled between the output of thecolumn decode circuit 124 and the I/O buffer 126. In further embodiment of the present invention, the output of thecolumn decode circuit 124 selects the desired column data directly from the outputs of the individualread sense amplifiers 122 and couples them to the I/O buffer 126, allowing thedata cache 132 to be eliminated. In yet a further embodiment of the present invention, thecolumn decode circuit 124 is placed before theread sense amplifiers 122. - It is noted that other architectures of non-volatile memory devices, systems, external interfaces, and/or manners of coupling the memory controller/host to the non-volatile memory device(s), such as directly coupled individual control busses and signal lines, are possible and will be apparent to those skilled in the art with benefit of the present disclosure.
- In a conventional non-volatile memory, such as a Flash memory, during operation the memory takes memory commands that are input over its interface (control lines, address lines, and data lines). The memory commands are typically differentiated/specified by one or more special control line combinations and are accompanied by the address and/or data required to perform the specified command, which are interleaved along with or after the command codes or incorporated as part of the command itself. For example, a conventional read command in a Flash memory begins by a read mode command being indicated to the Flash memory (for example, by a combination of asserted signals on the chip enable (CE#) and command latch enable (CLE), and de-asserted signals on the read enable (RE#) and address latch enable (ALE)). An initial read command byte (00h) is clocked in. An address of the memory row/page to be read is then latched in the address latch of the memory from the address/data bus on the next five following clock cycles, a final read command byte (30h) is then given to the Flash memory to execute the data page read from its memory array. A Ready/Busy signal line (R/B#) is asserted by the Flash memory while it executes the read operation and senses the selected memory row/page. After a latency period, which is governed by the operation of the memory and, in particular, its sense amplifiers, the Ready/Busy signal line is de-asserted by the device and the Read Enable (RE#) line can be utilized to clock bytes of data from the read memory page from the Flash memory device.
- A typical cache read command operation begins with a conventional read command sequence to input the starting address of the read and execute the initial read from the memory. Once the initial page is read from the memory array and is latched in the I/O buffer, a cache read command (00h, 31h) is then utilized to signal the memory to read the next sequentially addressed row/page of the memory array with its sense amplifiers while the initial page is read/transferred from the I/O buffer. Each following sequential page is then triggered to be read from the array with the cache read command (00h, 31h) before the row/page currently held in the I/O buffer is transferred from the memory device so that the next sequential page can be sensed while the current page is being transferred. An example sequence would be: Initial Read Command (00h), Address, Final Read Command (30h), Wait for R/B# to go inactive, Initial Read Command (00h), Cache Read Command (31h), Wait for R/B# to go inactive, Transfer data of initial page, Initial Read Command (00h), Cache Read Command (31h), Wait for R/B# to go inactive, Transfer data of next sequential page, Initial Read Command (00h), Cache Read Command (31h), Wait for R/B# to go inactive, Transfer data, etc. In some memory devices, a cache read exit command is required to exit the cache read mode of operation and resume normal memory operation/commands.
- A random cache read command sequence of an embodiment of the present invention allows for the input of an address to be read along with the command triggering the next row/page of data to be read from the memory array. In one embodiment of the present invention, once the initial read command is executed and the initial page read from the memory array and latched in the I/O buffer, a specialized cache read command (which includes the address of the next page of data to be read in the random cache read operation—00h, Address, 31h) is then utilized to signal the memory to read the next randomly selected/addressed row/page of the memory array with its sense amplifiers while the initial page is read from the I/O buffer. Each following randomly selectable page is then triggered to be read from the array with the specialized cache read command (for example, 00h, Address, 31h) before/while the row/page currently held in the I/O buffer is transferred from the memory device so that the next page can be sensed while the current page is being transferred. An example sequence would be: Initial Read Command (00h), Address, Final Read Command (30h), Wait for R/B# to go inactive, Initial Read Command (00h), Address, Cache Read Command (31h), Wait for R/B# to go inactive, Transfer data of initial page, Initial Read Command (00h), Address, Cache Read Command (31h), Wait for R/B# to go inactive, Transfer data of next randomly selected page, Initial Read Command (00h), Address, Cache Read Command (31h), Wait for R/B# to go inactive, Transfer data, etc.
-
FIG. 2 details the waveforms anddata movements 200 of rows/pages of data in a random cache read of a memory embodiment of the present invention. InFIG. 2 , waveforms are shown for I/O lines 202, Ready/Busy (R/B_)line 204, and Read Enable (RE_) 206 that detail the selection and transfer of random pages of data from a memory device of an embodiment of the present invention. In thecommand sequence 200, an initial page (Page M) is selected and sensed from thememory array 216 by an Initial Read Command (00h) 208, Address (for Page M) 210, and Final Read Command (30h) 212. After a latency period for Page M to be read by the sense amplifiers of the memory device, the Ready/Busy line is de-asserted 214 by the memory, indicating the page of data (Page M) has been sensed is present in the data cache and/or I/O buffer and is ready to be transferred from the device. At this time a random cache read command and new address are input to the memory device by another Initial Read Command (00h) 218, Address (for Page N) 220, and Cache Read Command (31h) 222, to begin the sensing of the next randomly selected page of data (Page N) 230. Once the R/B_line is de-asserted 224 after a brief busy interval (while data is latched into the I/O buffer and the new page read (for Page N) initiated on the memory array) the data for the initial page (Page M) is transferred out of the memory device on the I/O lines 226 utilizing the Read Enable (RE_) to clock each data word out 228. A new random cache read command and new address (for Page P) are again input to the memory device by an Initial Read Command (00h) 232, Address (for Page P) 234, and Cache Read Command (31h) 236, to begin the sensing of the next randomly selected page of data (Page P) 244. The R/B_line is de-asserted 238 and the data from Page N is transferred out of thememory device 240 utilizing the RE_to clock thedata words 242. Additional random cache reads for following memory rows/pages may be added as desired. - It is also noted that other volatile and non-volatile memory embodiments of the present invention incorporating random cache read modes of operation are possible and should be apparent to those skilled in the art with the benefit of the present invention.
- A non-volatile memory has been described that utilizes a cache read mode of operation, where a next page of memory is being read/sensed from the memory array by the sense amplifiers while a previously read page of memory is being read from the memory I/O buffer, wherein the next page is user selected. This random cache read mode allows for a memory with a random page read capability, in which the address of the next page of data to be read is user selectable, which benefits from the low latency of a cache read mode of operation due to concurrent data sensing and data I/O.
- Although specific embodiments have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that any arrangement that is calculated to achieve the same purpose may be substituted for the specific embodiments shown. Many adaptations of the invention will be apparent to those of ordinary skill in the art. Accordingly, this application is intended to cover any adaptations or variations of the invention. It is manifestly intended that this invention be limited only by the following claims and equivalents thereof.
Claims (40)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/115,489 US7123521B1 (en) | 2005-04-27 | 2005-04-27 | Random cache read |
US11/515,629 US7369447B2 (en) | 2005-04-27 | 2006-09-05 | Random cache read |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/115,489 US7123521B1 (en) | 2005-04-27 | 2005-04-27 | Random cache read |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/515,629 Division US7369447B2 (en) | 2005-04-27 | 2006-09-05 | Random cache read |
Publications (2)
Publication Number | Publication Date |
---|---|
US7123521B1 US7123521B1 (en) | 2006-10-17 |
US20060245270A1 true US20060245270A1 (en) | 2006-11-02 |
Family
ID=37085972
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/115,489 Expired - Fee Related US7123521B1 (en) | 2005-04-27 | 2005-04-27 | Random cache read |
US11/515,629 Expired - Fee Related US7369447B2 (en) | 2005-04-27 | 2006-09-05 | Random cache read |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/515,629 Expired - Fee Related US7369447B2 (en) | 2005-04-27 | 2006-09-05 | Random cache read |
Country Status (1)
Country | Link |
---|---|
US (2) | US7123521B1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070165458A1 (en) * | 2006-01-17 | 2007-07-19 | Nancy Leong | Random cache read using a double memory |
US20080151637A1 (en) * | 2006-12-20 | 2008-06-26 | Micron Technology, Inc. | Interleaved memory program and verify method, device and system |
US20090168530A1 (en) * | 2007-12-26 | 2009-07-02 | Toshio Yamamura | Semiconductor storage device and method of reading data therefrom |
US20120057421A1 (en) * | 2008-03-05 | 2012-03-08 | Micron Technology, Inc. | Devices and system providing reduced quantity of interconnections |
US20130054937A1 (en) * | 2011-08-26 | 2013-02-28 | Micron Technology, Inc. | Apparatuses and methods for providing data from multiple memories |
US20180052775A1 (en) * | 2007-10-24 | 2018-02-22 | Greenthread, Llc | Nonvolatile memory systems with embedded fast read and write memories |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7546416B2 (en) * | 2006-06-26 | 2009-06-09 | Micron Technology, Inc. | Method for substantially uninterrupted cache readout |
JP2008097736A (en) * | 2006-10-13 | 2008-04-24 | Spansion Llc | Semiconductor device and its control method |
US7719899B2 (en) | 2007-02-13 | 2010-05-18 | Micron Technology, Inc. | Circuits, systems and methods for driving high and low voltages on bit lines in non-volatile memory |
KR100813631B1 (en) * | 2007-03-19 | 2008-03-14 | 삼성전자주식회사 | Flash memory device capable of improving read performance |
JP4561782B2 (en) * | 2007-06-21 | 2010-10-13 | ソニー株式会社 | Semiconductor memory device and method of operating semiconductor memory device |
US9513695B2 (en) | 2008-06-24 | 2016-12-06 | Virident Systems, Inc. | Methods of managing power in network computer systems |
US8417873B1 (en) * | 2008-06-24 | 2013-04-09 | Virident Systems, Inc. | Random read and read/write block accessible memory |
US8499120B2 (en) * | 2008-10-17 | 2013-07-30 | Seagate Technology Llc | User selectable caching management |
US8898439B2 (en) * | 2009-07-17 | 2014-11-25 | Macronix International Co., Ltd. | Serial flash memory and address transmission method thereof |
TWI435215B (en) * | 2009-08-26 | 2014-04-21 | Phison Electronics Corp | Method for giving read commands and reading data, and controller and storage system using the same |
JP5746201B2 (en) | 2009-11-05 | 2015-07-08 | ラムバス・インコーポレーテッド | Interface clock management |
KR101796116B1 (en) | 2010-10-20 | 2017-11-10 | 삼성전자 주식회사 | Semiconductor device, memory module and memory system having the same and operating method thereof |
US9892032B2 (en) * | 2013-02-07 | 2018-02-13 | Sandisk Technologies Llc | Management of random cache read operations |
JP5911834B2 (en) * | 2013-09-11 | 2016-04-27 | 株式会社東芝 | Nonvolatile semiconductor memory device |
KR102650603B1 (en) | 2018-07-24 | 2024-03-27 | 삼성전자주식회사 | Nonvolatile memory device, operation method of the nonvolatile memory device, and operation method of memory controller controlling the nonvolatile memory device |
US11335402B2 (en) * | 2018-12-19 | 2022-05-17 | Micron Technology, Inc. | Systems and techniques for accessing multiple memory cells concurrently |
KR20210034873A (en) * | 2019-09-23 | 2021-03-31 | 에스케이하이닉스 주식회사 | Memory device and operating method thereof |
KR102714853B1 (en) * | 2019-12-02 | 2024-10-10 | 에스케이하이닉스 주식회사 | Memory device and operating method thereof |
Citations (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5416739A (en) * | 1994-03-17 | 1995-05-16 | Vtech Computers, Ltd. | Cache control apparatus and method with pipelined, burst read |
US5801996A (en) * | 1997-02-26 | 1998-09-01 | Micron Technology, Inc. | Data path for high speed high bandwidth DRAM |
US5813029A (en) * | 1996-07-09 | 1998-09-22 | Micron Electronics, Inc. | Upgradeable cache circuit using high speed multiplexer |
US5825788A (en) * | 1996-05-20 | 1998-10-20 | Micron Technology Inc. | Data ordering for cache data transfer |
US5835941A (en) * | 1995-11-17 | 1998-11-10 | Micron Technology Inc. | Internally cached static random access memory architecture |
US5845317A (en) * | 1995-11-17 | 1998-12-01 | Micron Technology, Inc. | Multi-way cache expansion circuit architecture |
US5862154A (en) * | 1997-01-03 | 1999-01-19 | Micron Technology, Inc. | Variable bit width cache memory architecture |
US5953739A (en) * | 1996-08-09 | 1999-09-14 | Micron Technology, Inc. | Synchronous DRAM cache using write signal to determine single or burst write |
US5960453A (en) * | 1996-06-13 | 1999-09-28 | Micron Technology, Inc. | Word selection logic to implement an 80 or 96-bit cache SRAM |
US5991855A (en) * | 1997-07-02 | 1999-11-23 | Micron Electronics, Inc. | Low latency memory read with concurrent pipe lined snoops |
US6006310A (en) * | 1995-09-20 | 1999-12-21 | Micron Electronics, Inc. | Single memory device that functions as a multi-way set associative cache memory |
US6018792A (en) * | 1997-07-02 | 2000-01-25 | Micron Electronics, Inc. | Apparatus for performing a low latency memory read with concurrent snoop |
US6119197A (en) * | 1997-10-31 | 2000-09-12 | Micron Technology, Inc. | Method for providing and operating upgradeable cache circuitry |
US6172893B1 (en) * | 1999-01-05 | 2001-01-09 | Micron Technology, Inc. | DRAM with intermediate storage cache and separate read and write I/O |
US6378047B1 (en) * | 1997-07-07 | 2002-04-23 | Micron Technology, Inc. | System and method for invalidating set-associative cache memory with simultaneous set validity determination |
US6445636B1 (en) * | 2000-08-17 | 2002-09-03 | Micron Technology, Inc. | Method and system for hiding refreshes in a dynamic random access memory |
US6460114B1 (en) * | 1999-07-29 | 2002-10-01 | Micron Technology, Inc. | Storing a flushed cache line in a memory buffer of a controller |
US20030014588A1 (en) * | 2001-07-10 | 2003-01-16 | Micron Technology, Inc. | Caching of dynamic arrays |
US6636946B2 (en) * | 2001-03-13 | 2003-10-21 | Micron Technology, Inc. | System and method for caching data based on identity of requestor |
US6717857B2 (en) * | 2001-10-24 | 2004-04-06 | Samsung Electronics Co., Ltd. | Non-volatile semiconductor memory device with cache function and program, read, and page copy-back operations thereof |
US6754772B2 (en) * | 2001-11-15 | 2004-06-22 | Micron Technology, Inc. | Distributed cache |
US6757840B1 (en) * | 2000-08-21 | 2004-06-29 | Micron Technology, Inc. | Device and method for configuring a cache tag in accordance with burst length |
US6763420B2 (en) * | 2001-07-13 | 2004-07-13 | Micron Technology, Inc. | Method and apparatus for modifying cache address computation schemes |
US6779076B1 (en) * | 2000-10-05 | 2004-08-17 | Micron Technology, Inc. | Method and system for using dynamic random access memory as cache memory |
US6789169B2 (en) * | 2001-10-04 | 2004-09-07 | Micron Technology, Inc. | Embedded DRAM cache memory and method having reduced latency |
US6789168B2 (en) * | 2001-07-13 | 2004-09-07 | Micron Technology, Inc. | Embedded DRAM cache |
US6862654B1 (en) * | 2000-08-17 | 2005-03-01 | Micron Technology, Inc. | Method and system for using dynamic random access memory as cache memory |
US20050060495A1 (en) * | 2003-08-27 | 2005-03-17 | Stmicroelectronics S.A. | Asynchronous read cache memory and device for controlling access to a data memory comprising such a cache memory |
US20050080987A1 (en) * | 2003-10-09 | 2005-04-14 | Micron Technology, Inc. | Random access interface in a serial memory device |
-
2005
- 2005-04-27 US US11/115,489 patent/US7123521B1/en not_active Expired - Fee Related
-
2006
- 2006-09-05 US US11/515,629 patent/US7369447B2/en not_active Expired - Fee Related
Patent Citations (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5416739A (en) * | 1994-03-17 | 1995-05-16 | Vtech Computers, Ltd. | Cache control apparatus and method with pipelined, burst read |
US6006310A (en) * | 1995-09-20 | 1999-12-21 | Micron Electronics, Inc. | Single memory device that functions as a multi-way set associative cache memory |
US5835941A (en) * | 1995-11-17 | 1998-11-10 | Micron Technology Inc. | Internally cached static random access memory architecture |
US5845317A (en) * | 1995-11-17 | 1998-12-01 | Micron Technology, Inc. | Multi-way cache expansion circuit architecture |
US5825788A (en) * | 1996-05-20 | 1998-10-20 | Micron Technology Inc. | Data ordering for cache data transfer |
US6266796B1 (en) * | 1996-05-20 | 2001-07-24 | Micron Technology, Inc. | Data ordering for cache data transfer |
US5960453A (en) * | 1996-06-13 | 1999-09-28 | Micron Technology, Inc. | Word selection logic to implement an 80 or 96-bit cache SRAM |
US5829036A (en) * | 1996-07-09 | 1998-10-27 | Micron Electronics, Inc. | Method for providing and operating upgradeable cache circuitry |
US6219755B1 (en) * | 1996-07-09 | 2001-04-17 | Micron Technology, Inc. | Upgradeable cache circuit using high speed multiplexer |
US5813029A (en) * | 1996-07-09 | 1998-09-22 | Micron Electronics, Inc. | Upgradeable cache circuit using high speed multiplexer |
US6044433A (en) * | 1996-08-09 | 2000-03-28 | Micron Technology, Inc. | DRAM cache |
US5953739A (en) * | 1996-08-09 | 1999-09-14 | Micron Technology, Inc. | Synchronous DRAM cache using write signal to determine single or burst write |
US5862154A (en) * | 1997-01-03 | 1999-01-19 | Micron Technology, Inc. | Variable bit width cache memory architecture |
US6201740B1 (en) * | 1997-02-26 | 2001-03-13 | Micron Technology, Inc. | Cache memories using DRAM cells with high-speed data path |
US5801996A (en) * | 1997-02-26 | 1998-09-01 | Micron Technology, Inc. | Data path for high speed high bandwidth DRAM |
US6018792A (en) * | 1997-07-02 | 2000-01-25 | Micron Electronics, Inc. | Apparatus for performing a low latency memory read with concurrent snoop |
US5991855A (en) * | 1997-07-02 | 1999-11-23 | Micron Electronics, Inc. | Low latency memory read with concurrent pipe lined snoops |
US6378047B1 (en) * | 1997-07-07 | 2002-04-23 | Micron Technology, Inc. | System and method for invalidating set-associative cache memory with simultaneous set validity determination |
US6119197A (en) * | 1997-10-31 | 2000-09-12 | Micron Technology, Inc. | Method for providing and operating upgradeable cache circuitry |
US6172893B1 (en) * | 1999-01-05 | 2001-01-09 | Micron Technology, Inc. | DRAM with intermediate storage cache and separate read and write I/O |
US6460114B1 (en) * | 1999-07-29 | 2002-10-01 | Micron Technology, Inc. | Storing a flushed cache line in a memory buffer of a controller |
US6445636B1 (en) * | 2000-08-17 | 2002-09-03 | Micron Technology, Inc. | Method and system for hiding refreshes in a dynamic random access memory |
US6862654B1 (en) * | 2000-08-17 | 2005-03-01 | Micron Technology, Inc. | Method and system for using dynamic random access memory as cache memory |
US6757840B1 (en) * | 2000-08-21 | 2004-06-29 | Micron Technology, Inc. | Device and method for configuring a cache tag in accordance with burst length |
US6779076B1 (en) * | 2000-10-05 | 2004-08-17 | Micron Technology, Inc. | Method and system for using dynamic random access memory as cache memory |
US6636946B2 (en) * | 2001-03-13 | 2003-10-21 | Micron Technology, Inc. | System and method for caching data based on identity of requestor |
US20030014588A1 (en) * | 2001-07-10 | 2003-01-16 | Micron Technology, Inc. | Caching of dynamic arrays |
US6789168B2 (en) * | 2001-07-13 | 2004-09-07 | Micron Technology, Inc. | Embedded DRAM cache |
US6763420B2 (en) * | 2001-07-13 | 2004-07-13 | Micron Technology, Inc. | Method and apparatus for modifying cache address computation schemes |
US6789169B2 (en) * | 2001-10-04 | 2004-09-07 | Micron Technology, Inc. | Embedded DRAM cache memory and method having reduced latency |
US6717857B2 (en) * | 2001-10-24 | 2004-04-06 | Samsung Electronics Co., Ltd. | Non-volatile semiconductor memory device with cache function and program, read, and page copy-back operations thereof |
US6754772B2 (en) * | 2001-11-15 | 2004-06-22 | Micron Technology, Inc. | Distributed cache |
US6889289B2 (en) * | 2001-11-15 | 2005-05-03 | Micron Technology, Inc. | Method of distributed caching |
US20050060495A1 (en) * | 2003-08-27 | 2005-03-17 | Stmicroelectronics S.A. | Asynchronous read cache memory and device for controlling access to a data memory comprising such a cache memory |
US20050080987A1 (en) * | 2003-10-09 | 2005-04-14 | Micron Technology, Inc. | Random access interface in a serial memory device |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7423915B2 (en) * | 2006-01-17 | 2008-09-09 | Spansion Llc | Random cache read using a double memory |
US20070165458A1 (en) * | 2006-01-17 | 2007-07-19 | Nancy Leong | Random cache read using a double memory |
US8194454B2 (en) | 2006-12-20 | 2012-06-05 | Round Rock Research, Llc | Interleaved memory program and verify method, device and system |
US20080151637A1 (en) * | 2006-12-20 | 2008-06-26 | Micron Technology, Inc. | Interleaved memory program and verify method, device and system |
US7539062B2 (en) | 2006-12-20 | 2009-05-26 | Micron Technology, Inc. | Interleaved memory program and verify method, device and system |
US20090231918A1 (en) * | 2006-12-20 | 2009-09-17 | Micron Technology, Inc. | Interleaved memory program and verify method, device and system |
US7808824B2 (en) | 2006-12-20 | 2010-10-05 | Micron Technology, Inc. | Interleaved memory program and verify method, device and system |
US20100322003A1 (en) * | 2006-12-20 | 2010-12-23 | Micron Technology, Inc. | Interleaved memory program and verify method, device and system |
US8004897B2 (en) | 2006-12-20 | 2011-08-23 | Round Rock Research, Llc | Interleaved memory program and verify method, device and system |
US20180052775A1 (en) * | 2007-10-24 | 2018-02-22 | Greenthread, Llc | Nonvolatile memory systems with embedded fast read and write memories |
US20090168530A1 (en) * | 2007-12-26 | 2009-07-02 | Toshio Yamamura | Semiconductor storage device and method of reading data therefrom |
US8320200B2 (en) | 2007-12-26 | 2012-11-27 | Kabushiki Kaisha Toshiba | Semiconductor storage device and method of reading data therefrom |
US8111562B2 (en) | 2007-12-26 | 2012-02-07 | Kabushiki Kaisha Toshiba | Semiconductor storage device and method of reading data therefrom |
US20120057421A1 (en) * | 2008-03-05 | 2012-03-08 | Micron Technology, Inc. | Devices and system providing reduced quantity of interconnections |
US8369168B2 (en) * | 2008-03-05 | 2013-02-05 | Micron Technology, Inc. | Devices and system providing reduced quantity of interconnections |
US8730759B2 (en) | 2008-03-05 | 2014-05-20 | Micron Technology, Inc. | Devices and system providing reduced quantity of interconnections |
US20130054937A1 (en) * | 2011-08-26 | 2013-02-28 | Micron Technology, Inc. | Apparatuses and methods for providing data from multiple memories |
US8732433B2 (en) * | 2011-08-26 | 2014-05-20 | Micron Technology, Inc. | Apparatuses and methods for providing data from multiple memories |
US9043578B2 (en) | 2011-08-26 | 2015-05-26 | Micron Technology, Inc. | Apparatuses and methods for providing data from multiple memories |
Also Published As
Publication number | Publication date |
---|---|
US20080074933A1 (en) | 2008-03-27 |
US7123521B1 (en) | 2006-10-17 |
US7369447B2 (en) | 2008-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7123521B1 (en) | Random cache read | |
US7908425B2 (en) | Method and device for performing cache reading | |
US6798710B2 (en) | Synchronous flash memory with virtual segment architecture | |
US8832360B2 (en) | Solid state storage device controller with expansion mode | |
JP5360214B2 (en) | Data programming method for multi-plane flash memory, device and system using the same | |
US8111562B2 (en) | Semiconductor storage device and method of reading data therefrom | |
US20050204091A1 (en) | Non-volatile memory with synchronous DRAM interface | |
US7386657B2 (en) | Random access interface in a serial memory device | |
WO2003085677A1 (en) | Nonvolatile storage device | |
US20060146612A1 (en) | Flash memory devices configured to output data without waiting for bitline and wordline recovery and methods of operating same | |
US7562182B2 (en) | Memory access | |
US6515900B2 (en) | Non-volatile memory with background operation function | |
CN108538332B (en) | Reading method of NAND gate flash memory | |
KR20020086746A (en) | Synchronous flash memory with concurrent write and read operation | |
US6662279B2 (en) | DQ mask to force internal data to mask external data in a flash memory | |
EP1269476A2 (en) | Synchronous flash memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MICRON TECHNOLOGY, INC., IDAHO Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LOUIE, BENJAMIN;WAN, YUNQIU;YIP, AARON;AND OTHERS;REEL/FRAME:016514/0428;SIGNING DATES FROM 20050330 TO 20050404 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
AS | Assignment |
Owner name: ROUND ROCK RESEARCH, LLC,NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICRON TECHNOLOGY, INC.;REEL/FRAME:023786/0416 Effective date: 20091223 Owner name: ROUND ROCK RESEARCH, LLC, NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICRON TECHNOLOGY, INC.;REEL/FRAME:023786/0416 Effective date: 20091223 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.) |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20181017 |