Abstract:
An integrated circuit memory device is described which can operate at high data speeds. The memory device can either store or retrieve data from the memory in a burst access operation. The burst operations latch a memory address from external address lines and internally generates additional memory addresses. The integrated circuit memory can output data in a continuous stream while new rows of the memory are accessed. A method and circuit are described for outputting a burst of data stored in a first row of the memory while accessing a second row of the memory.

Description:
This application is a continuation of U.S. patent application Ser. No. 08/572,487, filed Dec. 14, 1995 now U.S. Pat. No. 5,729,504. 
    
    
     TECHNICAL FIELD OF THE INVENTION 
     The present invention relates generally to integrated circuit memories and in particular the present invention relates to burst access memories. 
     BACKGROUND OF THE INVENTION 
     A wide variety of integrated circuit memories are available for storing data. One type of memory is the dynamic random access memory (DRAM). A DRAM is designed to store data in memory cells formed as capacitors. The data is stored in a binary format; a logical &#34;one&#34; is stored as a charge on a capacitor, and a logical &#34;zero&#34; is stored as a discharged capacitor. The typical DRAM is arranged in a plurality of addressable rows and columns. To access a memory cell, a row is first addressed so that all memory cells coupled with that row are available for accessing. After a row has been addressed, at least one column can be addressed to pinpoint at least one specific memory cell for either reading data from, or writing data to via external data communication lines. The data stored in the memory cells is, therefore, accessible via the columns. 
     With the constant development of faster computer and communication applications, the data rates in which a memory circuit must operate continue to increase. To address the need for increased data rates, a variety of DRAMs are commercially available. These memories are produced in a variety of designs which provide different methods of reading from and writing to the dynamic memory cells of the memory. One such method is page mode operation. Page mode operations in a DRAM are defined by the method of accessing a row of a memory cell array and randomly accessing different columns of the array. Data stored at the row and column intersection can be read and output while that column is accessed. Page mode DRAMs require access steps which limit the communication speed of the memory circuit. 
     An alternate type of memory circuit is the extended data output (EDO) memory which allows data stored at a memory array address to be available as output after the addressed column has been closed. This memory circuit can increase some communication speeds by allowing shorter access signals without reducing the time in which memory output data is available on the communication lines. Column access times are, therefore, &#34;masked&#34; by providing the extended data output. A more detailed description of a DRAM having EDO features is provided in the &#34;1995 DRAM Data Book&#34; pages 1-1 to 1-30 available from Micron Technology, Inc. Boise, Id., which is incorporated herein by reference. 
     Yet another type of memory circuit is a burst access memory which receives one address of a memory array on external address lines and automatically addresses a sequence of columns without the need for additional column addresses to be provided on the external address lines. By reducing the external address input signals, burst EDO memory circuits (BEDO) are capable of outputting data at significantly faster communication rates than the above described memory circuits. 
     Although BEDO memories can operate at significantly faster data rates than non-burst memories, bursts of output data are terminated when changing from one memory row to another. The alternative to terminating a data burst is to wait until a data burst is complete until the memory row is changed. Changing memory rows is time consuming and because data is interrupted during the transition between rows, the data rate of the memory circuits is slowed. 
     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 burst access memory which allows a data burst to continue while receiving and addressing a new memory row address. 
     SUMMARY OF THE INVENTION 
     The above mentioned problems with integrated memory circuits and other problems are addressed by the present invention and which will be understood by reading and studying the following specification. A memory device is described which allows a new memory array row to be accessed while continually outputting data from a prior memory row. 
     In particular, the present invention describes a synchronous memory device comprising an input for receiving a clock signal, a plurality of addressable memory elements, a plurality of external address inputs, address counter circuitry for receiving a first address on the plurality of external address inputs, and for generating a sequence of addresses in response to the first address and the clock signal, and output buffer circuitry adapted to drive a sequence of data from the memory device. The output buffer circuitry is adapted to continue to drive the sequence of data from the memory device while a new address is received by the address counter circuity. 
     In another embodiment, a method is described of reading data from a synchronous memory device having a plurality of addressable memory elements arranged in rows and columns. The method comprises the steps of receiving a first row address, receiving a first column address, accessing a row of memory elements having the first row address, generating a sequence of column addresses starting at the first column address, outputting data stored at the sequence of column addresses, receiving a second row address while outputting the data stored at the sequence of column addresses, and accessing a row of memory elements having the second row address while outputting the data stored at the sequence of column addresses. 
     In another embodiment, a memory device is described which comprises a plurality of addressable memory elements, a plurality of external address inputs, first means for receiving a first address on the plurality of external address inputs, and for generating a sequence of addresses in response to the first address, and second means for driving a sequence of data from the memory device while a new address is received by the first means. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a block diagram of a memory device incorporating burst access; 
     FIG. 2 illustrates linear and interleaved addressing sequences; 
     FIG. 3 is a timing diagram of a burst read followed by a burst write of the device of FIG. 1; 
     FIG. 4 is a timing diagram of a burst write followed by a burst read of the device of FIG. 1; 
     FIG. 5 is a block diagram of a memory device incorporating the features of the present invention; 
     FIG. 6a is a timing diagram of the operation of the device of FIG. 5; 
     FIG. 6b is a continuation of the timing diagram of FIG. 6a; 
     FIG. 7a is a timing diagram of a series of continuous burst read operations; and 
     FIG. 7b is a timing diagram of a series of burst read operations. 
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     In the following detailed description of the preferred embodiments, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration specific preferred embodiments in which the inventions may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized and that logical, mechanical and electrical changes may be made without departing from the spirit and scope of the present inventions. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present inventions is defined only by the appended claims. 
     BEDO Memories 
     To fully understand the present invention, a detailed description is provided of a burst extended data output memory circuit (BEDO). FIG. 1 is a schematic representation of a sixteen megabit device designed to operate in a burst access mode. The device is organized as a 2 Meg×8 burst EDO DRAM having an eight bit data input/output path 10 providing data storage for 2,097,152 bytes of information in the memory array 12. An active-low row address strobe (RAS*) signal 14 is used to latch a first portion of a multiplexed memory address, from address inputs AO through A10 16, in latch 18. The latched row address 20 is decoded in row decoder 22. The decoded row address is used to select a row of the memory array 12. An active-low column address strobe (CAS*) signal 24 is used to latch a second portion of a memory address from address inputs 16 into column address counter 26. The latched column address 28 is decoded in column address decoder 30. The decoded column address is used to select a column of the memory array 12. 
     In a burst read cycle, data within the memory array located at the row and column address selected by the row and column address decoders is read out of the memory array and sent along data path 32 to output latches 34. Data 10 driven from the burst EDO DRAM may be latched external to the device with a CAS* signal after a predetermined number of CAS* cycle delays (latency). For a two cycle latency design, the first CAS* falling edge during a RAS* cycle is used to latch the initial address for the burst access. The first burst data from the memory is driven from the memory after the second CAS* falling edge, and remains valid through the third CAS* falling edge. Once the memory device begins to output data in a burst read cycle, the output drivers 34 will continue to drive the data lines without tri-stating the data outputs during CAS* high intervals dependent on the state of the output enable 42 and write enable 36 (OE* and WE*) control lines, thus allowing additional time for the system to latch the output data. Once a row and a column address are selected, additional transitions of the CAS* signal are used to advance the column address within the column address counter in a predetermined sequence. The time at which data will be valid at the outputs of the burst EDO DRAM is dependent only on the timing of the CAS* signal provided that OE* is maintained low, and WE* remains high. The output data signal levels may be driven in accordance with standard CMOS, TTL, LVTTL, GTL, or HSTL output level specifications. 
     The address may be advanced linearly, or in an interleaved fashion for maximum compatibility with the overall system requirements. FIG. 2 is a table which shows linear and interleaved addressing sequences for burst lengths of 2, 4 and 8 cycles. The &#34;V&#34; for starting addresses A1 and A2 in the table represent address values that remain unaltered through the burst sequence. The column address may be advanced with each CAS* transition. When the address is advanced with each transition of the CAS* signal, data is also driven from the part after each transition following the device latency which is then referenced to each edge of the CAS* signal. This allows for a burst access cycle where CAS* toggles only once (high to low or low to high) for each memory cycle. This is in contrast to standard DRAMs which require CAS* to go low and then high for each cycle, and synchronous DRAMs which require a full CAS* cycle (high and low transitions) for each memory cycle. 
     In the burst access memory device, each new column address from the column address counter is decoded and is used to access additional data within the memory array without the requirement of additional column addresses being specified on the address inputs 16. This burst sequence of data will continue for each CAS* falling edge until a predetermined number of data accesses equal to the burst length has occurred. A CAS* falling edge received after the last burst address has been generated will latch another column address from the address inputs 16 and a new burst sequence will begin. Read data is latched and output with each falling edge of CAS* after the first CAS* latency. For a burst write cycle, data 10 is latched in input data latches 34. Data targeted at the first address specified by the row and column addresses is latched with the CAS* signal when the first column address is latched (write cycle data latency is zero). Other write cycle data latency values are possible; however, for today&#39;s memory systems, zero is preferred. Additional input data words for storage at incremented column address locations are latched by CAS* on successive CAS* pulses. Input data from the input latches 34 is passed along data path 32 to the memory array where it is stored at the location selected by the row and column address decoders. As in the burst read cycle previously described, a predetermined number of burst access writes will occur without the requirement of additional column addresses being provided on the address lines 16. After the predetermined number of burst writes has occurred, a subsequent CAS* will latch a new beginning column address, and another burst read or write access will begin. 
     Control circuitry 38, in addition to performing standard DRAM control functions, controls the I/O circuitry 34 and the column address counter/latch 26. The control circuity determines when a current data burst should be terminated based upon the state of RAS* 14, CAS* 24 and WE* 36. The write enable signal is used in burst access cycles to select read or write burst accesses when the initial column address for a burst cycle is latched by CAS*. WE* low at the column address latch time selects a burst write access. WE* high at the column address latch time selects a burst read access. The level of the WE* signal must remain high for read and low for write burst accesses throughout the burst access. A low to high transition within a burst write access will terminate the burst access, preventing further writes from occurring. A high to low transition on WE* within a burst read access will likewise terminate the burst read access and will place the data output 10 in a high impedance state. Transitions of the WE* signal may be locked out during critical timing periods within an access cycle in order to reduce the possibility of triggering a false write cycle. After the critical timing period, the state of WE* will determine whether a burst access continues, is initiated, or is terminated. Termination of a burst access resets the burst length counter and places the DRAM in a state to receive another burst access command. In the case of burst reads, WE* will transition from high to low to terminate a first burst read, and then WE* will transition back high prior to the next falling edge of CAS* in order to specify a new burst read cycle. For burst writes, WE* would transition high to terminate a current burst write access, then back low prior to the next falling edge of CAS* to initiate another burst write access. Both RAS* and CAS* going high during a burst access will also terminate the burst access cycle placing the data drivers in a high impedance output state, and resetting the burst length counter. 
     A basic implementation of the device of FIG. 1 may include a fixed burst length of 4, a fixed CAS* latency of 2 and a fixed interleaved sequence of burst addresses. Further, just as fast page mode DRAMs and EDO DRAMs are available in numerous configurations including x1, x4, x8 and x16 data widths, and 1 Megabit, 4 Megabit, 16 Megabit and 64 Megabit densities; the burst access memory device of FIG. 1 may take the form of many different memory organizations. 
     FIG. 3 is a timing diagram for performing a burst read followed by a burst write of the device of FIG. 1. In FIG. 3, a row address is latched by the RAS* signal. WE* is low when RAS* falls for an embodiment of the design where the state of the WE* pin is used to specify a burst access cycle at RAS* time. Next, CAS* is driven low with WE* high to initiate a burst read access, and the column address is latched. The data out signals (DQ&#39;s) are not driven in the first CAS* cycle. On the second falling edge of the CAS* signal, the internal address generation circuitry advances the column address and begins another access of the array, and the first data out is driven from the device after a CAS* to data access time (T CAC ). Additional burst access cycles continue, for a device with a specified burst length of four, until the fifth falling edge of CAS* which latches a new column address for a new burst read access. WE* falling in the fifth CAS* cycle terminates the burst access, and initializes the device for additional burst accesses. The sixth falling edge of CAS* with WE* low is used to latch a new burst address, latch input data and begin a burst write access of the device. Additional data values are latched on successive CAS* falling edges until RAS* rises to terminate the burst access. 
     FIG. 4 is a timing diagram depicting burst write access cycles followed by burst read cycles. As in FIG. 3, the RAS* signal is used to latch the row address. The first CAS* falling edge in combination with WE* low begins a burst write access with the first data being latched. Additional data values are latched with successive CAS* falling edges, and the memory address is advanced internal to the device in either an interleaved or sequential manner. On the fifth CAS* falling edge a new column address and associated write data are latched. The burst write access cycles continue until the WE* signal goes high in the sixth- CAS* cycle. The transition of the WE* signal terminates the burst write access. The seventh CAS* low transition latches a new column address and begins a burst read access (WE* is high). The burst read continues until RAS* rises terminating the burst cycles. 
     Continuous BEDO (CBEDO) 
     FIG. 5 illustrates a continuous memory circuit which includes all of the features of the standard BEDO memory as described above. The continuous memory circuit, however, operates differently than the previously described BEDO memory when the row access signal (RAS*) is inactive. That is, as explained above, a burst access operation is terminated when the RAS* and the CAS* signals go high in a standard BEDO circuit. Time specifications for the BEDO circuitry dictates that the RAS* signal remain high for a minimum time of T RP  (precharge time). Further, a minimum access time T RAC , measured from the falling edge of RAS*, is required to access the new row. As a result, a new memory row cannot be accessed until a minimum time of T RAC  +T RP  has passed following the rising edge of RAS*. Typical times for T RAC  and T RP  are 60 ns and 40 ns, respectively. To eliminate this 100 ns time period in which data is not being provided as output, circuitry is provided in control 139 of the memory circuit. 
     FIG. 5 is a schematic representation of a sixteen megabit device designed to operate in a burst access mode and incorporating the features of present invention. The device is organized as a 2 Meg×8 burst EDO DRAM having an eight bit data input/output path 110 providing data storage for 2,097,152 bytes of information in the memory array 112. An active-low row address strobe (RAS*) signal 114 is used to latch a first portion of a multiplexed memory address, from address inputs AO through A10 116, in latch 118. The latched row address 120 is decoded in row decoder 122. The decoded row address is used to select a row of the memory array 112. An active-low column address strobe (CAS*) signal 124 is used to latch a second portion of a memory address from address inputs 116 into column address counter 126. The latched column address 128 is decoded in column address decoder 130. The decoded column address is used to select a column of the memory array 112. 
     In a burst read cycle, data within the memory array located at the row and column address selected by the row and column address decoders is read out of the memory array and sent along data path 132 to output latches 134. Data 110 driven from the burst EDO DRAM may be latched external to the device with a CAS* signal after a predetermined number of CAS* cycle delays (latency). Once the memory device begins to output data in a burst read cycle, the output drivers 134 will continue to drive the data lines without tri-stating the data outputs during CAS* high intervals dependent on the state of the output enable and write enable (OE* and WE*) control lines, thus allowing additional time for the system to latch the output data. Once a row and a column address are selected, additional transitions of the CAS* signal are used to advance the column address within the column address counter in a predetermined sequence. The time at which data will be valid at the outputs of the burst EDO DRAM is dependent only on the timing of the CAS* signal provided that OE* is maintained low, and WE* remains high. As with the memory of FIG. 1, the output data signal levels may be driven in accordance with standard CMOS, TTL, LVTTL, GTL, or HSTL output level specifications. Further, the address may be advanced linearly, or in an interleaved fashion for maximum compatibility with the overall system requirements as shown in FIG. 2. 
     In the burst access memory device, each new column address from the column address counter is decoded and is used to access additional data within the memory array without the requirement of additional column addresses being specified on the address inputs 116. This burst sequence of data will continue for each CAS* falling edge until a predetermined number of data accesses equal to the burst length has occurred. A CAS* falling edge received after the last burst address has been generated will latch another column address from the address inputs 116 and a new burst sequence will begin. Read data is latched and output with each falling edge of CAS* after the first CAS* latency. 
     Input data from the input latches 134 is passed along data path 132 to the memory array where it is stored at the location selected by the row and column address decoders. As in the burst read cycle previously described, a predetermined number of burst access writes will occur without the requirement of additional column addresses being provided on the address lines 116. After the predetermined number of burst writes has occurred, a subsequent CAS* will latch a new beginning column address, and another burst read or write access will begin. 
     The write enable signal is used in burst access cycles to select read or write burst accesses when the initial column address for a burst cycle is latched by CAS*. WE* low at the column address latch time selects a burst write access. WE* high at the column address latch time selects a burst read access. The level of the WE* signal must remain high for read and low for write burst accesses throughout the burst access. A low to high transition within a burst write access will terminate the burst access, preventing further writes from occurring. A high to low transition on WE* within a burst read access will likewise terminate the burst read access and will place the data output 110 in a high impedance state. Transitions of the WE* signal may be locked out during critical timing periods within an access cycle in order to reduce the possibility of triggering a false write cycle. After the critical timing period, the state of WE* will determine whether a burst access continues, is initiated, or is terminated. Termination of a burst access resets the burst length counter and places the DRAM in a state to receive another burst access command. 
     Control circuitry 138, in addition to performing standard DRAM control functions, controls thI I/0 circuitry 134 and the column address counter/latch 126. The control circuity determines when a current data burst should be terminated based upon the states of RAS* 114, CAS* 124 and WE* 136. In the standard BEDO operation described above, control circuitry 138 terminated a data burst when WE* transitioned during a burst, or when both CAS* and RAS* transitioned high. In a CBEDO operation, control circuitry 138 does not terminate a burst operation when CAS* and RAS* go high, but looks to WE* for an indication that a burst operation is to be terminated. Continuous mode circuitry 141 can be optionally provided to allow the memory device to operate in either the standard BEDO operation or a CBEDO operation. 
     A basic implementation of the device of FIG. 5 may include a fixed burst length of 4, a fixed CAS* latency of 2 and a fixed interleaved sequence of burst addresses. Further, just as fast page mode DRAMs and EDO DRAMs are available in numerous configurations including x1, x4, x8 and x16 data widths, and 1 Megabit, 4 Megabit, 16 Megabit and 64 Megabit densities; the burst access memory device of FIG. 5 may take the form of many different memory organizations. 
     FIGS. 6a and 6b is a timing diagram for performing a continuous burst read of the device of FIG. 5. In FIGS. 6a and 6b, row address 1 is latched on the first falling edge of the RAS* signal. WE* is low when RAS* falls for an embodiment of the memory device where the state of the WE* pin is used to specify a burst access cycle at RAS* time. Next, with WE* high, CAS* is driven low to initiate a burst read access, and column address m is latched. The data out signals (DQ&#39;s) are not driven in the first CAS* cycle, but remain tri-state. On the second falling edge of the CAS* signal, data stored at column m is output on the DQ lines after a CAS* to data access time (T CAC ). On the rising edges of CAS*, the internal address generation circuitry advances the column address. Data stored at column addresses m+1, m+2, and m+3 are output on the falling edges of CAS*. After column address m is latched, the RAS* signal goes high to begin the sequence of accessing a new row. While data is being provided on the DQ lines from row 1, RAS* goes low to latch a new row address (2) from the address inputs. It will be appreciated that the RAS* signal transitioned high and low without interrupting the data output on the DQ lines. A new column address will be loaded on the last CAS* cycle of a burst, For example in FIGS. 6a and 6b, a new column address (n) is latched on the first CAS* active transition following the beginning of the RAS* cycle. The burst read operation continues uninterrupted for rows 2 and 3, and columns n, o, and p. To terminate a continuous burst read operation, the WE* signal merely has to transition high prior to a falling edge of the CAS* signal. 
     It will be appreciated that the read and write operations performed on a single memory row of the memory of FIG. 5 are identical to the operation of the memory of FIG. 1 as shown in FIG. 3. That is, after completing a burst read, the WE* signal transitions low and the next falling edge of CAS* latches a new column address for a burst write operation. Likewise, the timing diagram of FIG. 4 depicting burst write access cycles followed by burst read cycles can be replicated with the memory of the present invention. As such, BEDO memory devices can be replaced with CBEDO memory devices without effecting the operation of the memory support system. It will further be appreciated by those skilled in the art that the memory device of FIG. 5 can operate with burst lengths of 2, 4, 8, or full row cycles. 
     FIGS. 7a and 7b are provided to more clearly illustrate the advantages of the CBEDO memory over BEDO memory devices. The timing diagram of FIG. 7a shows one possible series of burst read operations on four different memory rows (R1, R2, R3 and R4) in a CBEDO memory device. FIG. 7b shows burst read operations in a BEDO memory device. On the first CAS* cycle of the first RAS* cycle, an initial column address is latched from the external address inputs. Data out is burst onto the DQ lines on the next four CAS* cycles. Once the initial column has been latched and the T RAS  minimum specification has been satisfied, RAS* can toggle high and then low again without disrupting the burst. To avoid a premature termination of a burst, RAS* cannot transition high until after the last column associated with each row has been latched. For the example shown in FIG. 7, the second RAS* cycle cannot transition high until after the CAS* cycle which latches column C2. This ensures the column which is to be bursted upon is latched prior to RAS* going high and terminating the burst. 
     As described above, a memory cell cannot be accessed until time T RAC  following the start of a RAS cycle. It can be seen that the CBEDO memory device reduces the time needed to burst read data from several memory rows. For example, using a 66 MHz clock, a CBEDO memory operating with a 4 bit burst length can output 26 different bits of data from 7 different rows in 600 ns, while a BEDO memory device operating with a 4 bit burst length is limited to 16 bits from 4 different rows during the same time period. It is also important to point out that for multiple bursts upon the same row (RAS* cycles low and stays low for several different columns) the CBEDO and BEDO perform identically. 
     The CBEDO memory device of the present invention allows both RAS* and CAS* to transition high during a burst read operation without terminating the burst output stream on the DQ lines. Thus, a data burst read is continued when RAS* both transitions high and transitions low and the data drivers are not placed in a high impedance output state. While operating in a continuous burst mode, the memory device continues a burst read data while a new memory array row is being addressed. It will be understood by those skilled in the art that a word line coupled to access transistors in a memory do not need to remain active during a full burst operation. That is, each memory row word line is connected to an access transistor for each memory cell in that array row. All memory cells are, therefore, accessed at once when the word line is activated. By latching the data stored in the memory cell with latches 134, a first word line can be deactivated and another word line activated. As known to those skilled in the art, digit lines and sense amplifiers are used to read data stored in the memory cells. These bit lines must be equilibrated prior to reading a memory cell. The equilibration and memory cell access processes require a minimum specified time. These processes can be accomplished in the memory device of FIG. 5 during a continuing burst operation, as explained above, thereby increasing the data rate of the memory device. 
     Conclusion 
     A memory device has been described which can operate at fast data rates. The memory device is a random access memory having rows and columns of memory elements. After accessing an array row, an internal memory addressing circuit allows access to numerous columns of data while requiring only one external column address. The memory device can receive and access a new memory row without interrupting the burst of data from the previously accessed row. This continuous burst operation allows for faster data rates by eliminating the need to terminate a output data while addressing a new memory row. 
     Although specific embodiments have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that any arrangement which is calculated to achieve the same purpose may be substituted for the specific embodiment shown. This application is intended to cover any adaptations or variations of the present invention. For example, an external clock signal could be used to synchronize the burst access operation in place of the CAS* signal. Therefore, it is manifestly intended that this invention be limited only by the claims and the equivalents thereof.