The present invention is related to a method and apparatus for increasing the throughput for a memory device, in particular, a method and apparatus for a burst architecture with a double clock rate in a memory device.
Memory designers strive to increase the throughput of memories, i.e., the speed of the data read from or written to the memory, expressed generally in megabytes per second (Mbytes/second), to match the increasing speed of microprocessors associated with the memory in a system. One way to increase throughput is to use a burst architecture in which the data flows out of the memory in bursts of data. The data is first fetched from the memory and stored in registers, then it is clocked out in bursts by a fast clock from the registers to the output (I/Os). One limitation of the burst method is that data in the bursts comes from memory locations nearby. This limitation, however, is generally accepted because it is very likely that the next data needed will be very close in the memory space to the previously fetched data. For this reason burst architectures are very common in memories, particularly in DRAM and flash memories.
For one embodiment, the invention provides a method of accessing a memory device. The method includes latching a plurality of data words, providing a first data word to a first data bus at a first time and providing a second data word to a second data bus at a second time while the first data word is being provided to the first data bus. The method further includes providing the first data word to an output bus from the first data bus at the second time and providing the second data word to the output bus from the second data bus at a third time while providing a third data word to the first data bus.
For another embodiment, the invention provides a memory device. The memory device includes a memory array, a plurality of sensing devices coupled to the memory array, a first data bus for receiving data words from a first portion of the plurality of sensing devices, a second data bus for receiving data words from a second portion of the plurality of sensing devices and a switch to multiplex the data words from the first and second data busses onto an output bus. The memory device is adapted to sequentially provide individual data words from the first portion of the plurality of sensing devices to the first data bus, to sequentially provide individual data words from the second portion of the plurality of sensing devices to the second data bus and to alternately provide data words form the first and second data busses onto the output bus.
The invention further provides methods and apparatus of varying scope.
Features and advantages of the present invention will become more apparent from the following description of the preferred embodiments described below in detail with reference to the accompanying drawings where:
a is a simplified timing diagram of the operation of the burst state machine shown in
b shows a more detailed timing diagram of the operation of the burst state machine shown in
a shows a simplified timing diagram of the operation of the burst state machine shown in
b shows a more detailed timing diagram of the operation of the burst state machine shown in
In the following detailed description, 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. It is to be understood that other embodiments may be utilized and structural changes may be made without departing from the scope of the present invention.
One example of a burst memory scheme is shown in
Periodic signals s1 and s2 are provided by a controller such as burst state machine 200 to latch blocks 106a to 106h. s1 and s2 are periodic and clocked by the same external clock signal ck but are out of phase. Each s1, s2 signal lasts for n (e.g., n=8) clock cycles to allow the transfer of the n words to the output buffers through the drivers DR. In this example s1 and s2 are opposite in phase. During phase s1 data is transferred from sense amps 104a to 104h, to latches LT2 of latch blocks 106a to 106h and data previously stored in latches LT1 of latch blocks 106a to 106h is released to node A. During phase s2, data is stored in LT1 while data previously stored in latches LT2 is released to node A. This sequence continues for the duration of the burst operation and allows pipeline operation i.e., data is sent out of the chip at the same time as new data is retrieved from the memory.
In general, the speed of a data transfer is limited by the propagation delay of the device. In the example of
In the example of
An example of a simplified block diagram of controller or burst state machine 200 is shown in
An example of an architecture according to the present invention regarding the data path from A to B is shown in
To perform the double word selection for the double bus architecture, the burst state machine must be modified accordingly. A simplified block diagram of a burst state machine 400 for use in connection with a double bus burst mode architecture is shown in
a shows a simplified timing diagram of the operation of burst state machine 400. Again, 8 data words are used in this example, however a different number of data words or data bits per word could be used depending on design considerations. As can be seen in
In clock step 3, w0 is stable on the output pads 314 at node C. Word w1 is now stable at B′. Signal sele low routes the word w1 from B′ to D. Word w2 is selected by sw2. It also propagates in 12 ns from A to B.
In clock step 4, w1 is stable on the output D and w2 is stable at B. Signal sele is high again and transfers w2 to D. Signals sw3 is activated and transfers w3 from A to B in 12 ns.
In clock step 5, w2 is stable on the output C. Signal sele low routes the next word w3 from B′ to D. Word w4 is selected by sw4 and propagates in 12 ns from A to B.
Operation continues in this manner until the burst operation is completed. With the double bus architecture, throughput is effectively doubled without changing the overall propagation delay from A to C. In the example of
Architectures according to the present invention may also be used in connection with different burst configurations. For example, word counter 406 and 6/2×4 decoder 408 can be configured to send a different sequence of signals sw0 . . . sw7, for example: sw5-sw4-sw7-sw6-sw1-sw0-sw3-sw2. The only limitation is that an even word must be followed by an odd word, and an odd word must be followed by an even word. All sequences of sw0 . . . sw7 signals otherwise are allowed.
The present invention includes a method and apparatus for a memory device having a burst architecture with a doubled clock rate. The throughput may be doubled by employing a double bus architecture that is multiplexed onto an output bus. The invention can be implemented with a minimum increment in silicon area and without greatly increasing the complexity of the logic controlling the core memory operation. Moreover, the throughput is doubled without increasing the memory device latency, i.e., the time needed to retrieve data from the memory from the time of the first request for the data.
Number | Date | Country | Kind |
---|---|---|---|
RM02A0369 | Jul 2002 | IT | national |
This application is a continuation of U.S. patent application Ser. No. 10/367,587 filed Feb. 14, 2003 now U.S. Pat. No. 6,917,545, issued on Jul. 12, 2005, and titled, “Dual Bus Memory Burst Architecture,” which claims priority to Italian Patent Application Serial No. RM2002A000369, filed Jul. 9, 2002, entitled “Dual Bus Memory Burst Architecture,” both of which are commonly assigned.
Number | Name | Date | Kind |
---|---|---|---|
5732406 | Bassett | Mar 1998 | A |
5877990 | Kim | Mar 1999 | A |
6202120 | Lang | Mar 2001 | B1 |
6243309 | Shin | Jun 2001 | B1 |
6580637 | Pascucci | Jun 2003 | B1 |
20030021163 | Nakazawa et al. | Jan 2003 | A1 |
Number | Date | Country | |
---|---|---|---|
20050207233 A1 | Sep 2005 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10367587 | Feb 2003 | US |
Child | 11142114 | US |