The present invention relates to a nonvolatile memory device in which nonvolatile memory cells such as flash memory cells are used as memory elements, and a method for accessing the nonvolatile memory device.
In recent years, memory devices using nonvolatile memory such as flash memory are widely used for holding digital information for use in digital cameras, movie players, portable music players, etc., and the amount of data that can be held in the memory devices is increasing. However, the flash memory requires significant time for erasing and writing, and therefore increasing the amount of data that is to be held results in a reduction in transfer rate. Thus, there is a need for a memory device capable of meeting both demands for a larger amount of data and a higher transfer rate.
In order to satisfy such a need, there has been proposed a system in which a flash memory is composed of a plurality of banks to/from which data can be written/read independently, and the banks are each provided with a data register, making it possible to perform so-called multi-page access for simultaneously accessing the banks, and thereby to achieve high-speed transfer (see Patent Document 1).
The performance of the above-mentioned conventional memory device can be enhanced by increasing the number of banks, but in order to do so, the memory device must be used in combination with a memory controller that supports multi-page access.
In order to achieve high-speed transfer in the conventional memory device, a memory controller capable of simultaneously accessing all the banks is required, but designing a new memory controller to accord with an increased number of banks leads to a cost increase.
On the other hand, it is also possible to use the memory device with an increased number of banks in combination with an existing memory controller designed for multi-page access to a small number of banks, but in such a case, Furthermore, in the case of accessing with such an existing memory controller, data registers provided in banks that are not involved in multi-page access are not used, and therefore they are wasted resources. As such, despite increase in area and cost, achieved performance is only at the same level as a memory device with a small number of banks.
Therefore, an object of the present invention is to provide a nonvolatile memory device capable of, when used in combination with a memory controller that supports multi-page access to all banks, achieving high-speed transfer, as well as capable of, even when used in combination with an existing memory controller that supports multi-page access to a small number of banks, enhancing transfer performance compared to conventional memory devices, and another object is to provide a method for accessing the same nonvolatile memory device.
To solve the above-mentioned problem, the present invention provides a nonvolatile memory device including:
a memory area divided into a plurality of banks from/to which data can be read/written independently;
a data register portion including data registers for storing data that has been read from the memory area or that is to be written to the memory area, the data registers being at least equal in number to the banks;
a control circuit for writing data stored in the data register portion to the memory area, or reading data from the memory area to store the read data to the data register portion, in accordance with an instruction from a memory controller; and
a data register selection portion for changing connections between the banks and the data registers in accordance with the number of banks that are to be simultaneously accessed.
In the nonvolatile memory device of the present invention, the data register selection portion preferably selects data registers that are to be used for accessing the banks in accordance with a command issued by the memory controller.
The data registers that are to be used for accessing the banks may be directly designated by the command. In addition, the data register selection portion may select the data registers that are to be used for accessing the banks, based on an argument of the command issued by the memory controller.
Also, in the nonvolatile memory device of the present invention, the data register selection portion may select data registers that are to be used for accessing the banks in accordance with a selection signal inputted from an external terminal. In addition, the data register selection portion may be operable to select a plurality of data registers for use in accessing one of the banks.
Furthermore, in the nonvolatile memory device of the present invention, the data register selection portion may select different data registers for use in writing data to any one of the banks and reading data from that bank.
The present invention also provides a method for accessing a nonvolatile memory device including:
a memory area divided into a plurality of banks from/to which data can be read/written independently; and data registers for storing data that has been read from the memory area or that is to be written to the memory area, the data registers being at least equal in number to the banks,
wherein connections between the banks and the data registers are changed in accordance with the number of banks that are to be simultaneously accessed.
In the access method of the present invention, it is preferred that at least two of the data registers are selected for any one of the banks that is to be accessed, and the separate data registers are used in parallel, one for storing data transferred from the memory controller, and one for writing data stored therein to the memory area.
Also, it is preferred that at least two of the data registers are selected for any one of the banks that is to be accessed, and the separate data registers are used in parallel, one for transferring data stored therein to the memory controller, and one for storing data that has been read from the memory area.
Also, in the access method of the present invention, predetermined data that has been read from any bank may be stored to one of the data registers, and transferred to the memory controller when an instruction to read the predetermined data is given by the memory controller, whereas when overwriting the predetermined data, the data stored in the data register may be updated with data transferred from the memory controller, and thereafter written to the bank.
Also, when any of the data registers is selected for accessing any one of the banks, any unselected data register may be used as a volatile memory area.
The nonvolatile memory device according to the present invention makes it possible to select data registers that are to be connected to banks, and therefore to enhance access speed in accordance with an access method used by the memory controller. In addition, it is possible for the memory controller to access any data registers that are not performing data transfer with their respective banks, and therefore data can be inputted/outputted in a pipelining manner, whereby it is possible to enhance access speed.
Furthermore, the data registers that are not performing data transfer with their respective banks can be used as volatile memory areas, and therefore it is possible to expand working memory for the memory controller without causing a cost increase, and thereby to enhance performance of the controller.
Hereinafter, a nonvolatile memory device according to an embodiment of the present invention will be described with reference to the drawings.
The nonvolatile memory device 100 includes a data register portion 110, a data register selection portion 120, a memory area 130, and a control circuit 140. The memory area 130 is composed of nonvolatile memory cells such as flash memory cells, and divided into four banks 131 to 134 (Bank0 to Bank3) on which reading/writing can be performed independently. The data register portion 110 is composed of four data registers 111 to 114, which are used by the memory controller 200 for accessing the memory area 130. The data register selection portion 120 selects a data register that is to be used for accessing any of the banks 131 to 134.
The control circuit 140 writes data, which is transferred from the memory controller 200 via an I/O terminal 151, to the memory area 130 in accordance with a command and an address, which are transferred from the memory controller 200 via a control signal terminal 152, and the control circuit 140 also reads data from the memory area 130, and transfers it to the memory controller 200.
Control signals transferred from the memory controller 200 include CLE (COMMAND LATCH ENABLE) and ALE (ADDRESS LATCH ENABLE), which indicate the types of information inputted to the I/O terminal 151, a write signal WE (WRITE ENABLE), a read signal RE (READ ENABLE), and an R/B (READY/BUSY) signal, which is a state signal indicating the state of the memory area 130.
Note that in addition to the components as shown in the figure, the nonvolatile memory device 100 includes an address buffer, a sense amplifier, row/column decoders, etc., which are omitted because they are irrelevant to the description of the present invention.
In
Note that the designation or instruction is given by using a command, data, or a combination thereof. In the case of making the designation by a command, the command may be exclusively prepared for designating the number of banks, or an argument of the command may designate the number of banks.
The connections between the banks and the data registers may be changed in accordance with a selection signal inputted from an external terminal 153. The selection signal may designate the number of banks that are to be accessed by multi-page access or the connections between the banks and the data registers.
Next, the operation of the nonvolatile memory device 100 will be described, starting with the mode of multi-page access performed for reading/writing data to/from the nonvolatile memory device 100.
Part (A) of
Part (B) of
Part (C) of
In the case of accessing to a small number of banks as shown in parts (B) and (C) of
Next, processing for writing/reading will be concretely described with reference to the drawings.
In this manner, by simultaneously writing data pieces to four banks, it is made possible to achieve high-speed writing.
In this manner, by writing data pieces in data registers to banks, in parallel with storing next data pieces to other data registers, it is made possible to achieve high-speed writing.
In this manner, by simultaneously reading data pieces in four banks, it is made possible to achieve high-speed reading.
In this manner, by outputting data pieces in data registers to the memory controller, in parallel with storing next data pieces to other data registers, it is made possible to achieve high-speed reading.
Next, if a write request is given by the memory controller 200, a data piece WD transferred from the memory controller 200 is stored to the data register 112, and written to the bank 131 as shown in part (B) of
In this manner, by using different data registers for reading and writing, it is made possible to constantly hold in the data registers frequently-referenced data pieces such as management information concerning the nonvolatile memory, and thereby to achieve high-speed access.
In this manner, by using data registers that are not used for accessing the memory area (in this case, the data registers 113 and 114) as working memory for the memory controller 200, it is made possible to extend the capacity of working memory for the memory controller 200 without causing a cost increase, and thereby to achieve enhancement in performance.
While the nonvolatile memory device according an embodiment of the present invention and the method for accessing the same have been described above, the applicable scope of the invention is not limited thereto, and similar effects can be achieved even if the number of banks on which multi-page access is performed is changed or the number of data registers exceeds the number of banks.
The present invention makes it possible to provide a high-performance and easy-to-use nonvolatile memory device adaptable to access methods pertaining to memory controllers, and therefore is suitable for memory devices that require high-speed access.
Number | Date | Country | Kind |
---|---|---|---|
2004-326184 | Nov 2004 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP05/20444 | 11/8/2005 | WO | 00 | 5/9/2007 |