Synchronous memory and data processing system having a programmable burst order

Information

  • Patent Grant
  • 6230250
  • Patent Number
    6,230,250
  • Date Filed
    Monday, December 6, 1999
    25 years ago
  • Date Issued
    Tuesday, May 8, 2001
    23 years ago
Abstract
A data processing system (15) including a synchronous random access memory (30) and a method for accessing the synchronous random access memory are disclosed. A digital processor (20) of the data processing system is coupled to a system clock circuit (65) that produces a system clock signal for controlling operation of the digital processor. Addressable storage cells within the synchronous random access memory are accessed in response to the system clock signal and an address select signal (ADS) to write data into the storage cells or read data out from the storage cells. Initial row and column addresses are latched into a row address buffer (48) and a column address buffer (49). The data are read out from the memory in an order corresponding to a control signal (WT) in synchronization with the system clock signal. The synchronous random access memory device may be fabricated as a dynamic storage device or as a static storage device.
Description




FIELD OF THE INVENTION




This invention relates to a dynamic random access memory (DRAM) arranged for operating in a data processing system.




BACKGROUND OF THE INVENTION




In the past, semiconductor dynamic random access memory operated faster than the associated microprocessor. During the late 1970's and early 1980's, the microcomputer market was in the early stages of development. At that time, a microcomputer system included a microprocessor and a dynamic random access memory. In a microcomputer arrangement, the microprocessor ran synchronously in response to a clock signal, but the dynamic random access memory ran asynchronously with respect to the operation of the microprocessor. The microprocessor clock was applied to a controller circuit that was interposed between the microprocessor and the dynamic random access memory. In response to the microprocessor clock signal, the controller derived other control or clock signals which ran the dynamic random access memory operation.




Typical operating speeds of the microprocessor and the dynamic random access memory were different from each other. A microprocessor cycle time was in a range of 400-500 nanoseconds while a dynamic random access memory cycle time was approximately 300 nanoseconds. Thus the dynamic random access memory was able to operate faster than its associated microprocessor. The memory completed all of its tasks with time to spare. As a result, the microprocessor operated at its optimum speed without waiting for the memory to write-in data or read out data.




Subsequently, as the semiconductor art developed, the operating speeds of microprocessors and memory devices have increased. Microprocessor speeds, however, have increased faster than dynamic random access memory speeds. Now microprocessors operate faster than their associated dynamic random access memory. For instance, a microprocessor cycle time is approximately 40 nanoseconds and a dynamic random access memory cycle time is approximately 120 nanoseconds. The microprocessor completes all of its tasks but must wait significant periods of time for the dynamic random access memory.




Having the microprocessor waiting for the memory is a problem that has been attracting the attention of many microcomputer designers. High speed static cache memories have been added to the microcomputer systems to speed up access to data stored in the memory. A significant part of the problem is to speed up access to data in the memory without significantly increasing the cost of the microcomputer system. Cache memory, however, is significantly more expensive than dynamic random access memory.




An existing problem with dynamic random access memory devices is that they require a substantial amount of peripheral circuitry between the microprocessor and the memory for generating several control signals. So many interdependent control signals are generated by long logic chains within the peripheral circuitry that microcomputer systems designers must resolve very complex timing problems. The delay caused by the timing problems and the fact that memories now are accessed slower than the associated microprocessor cause problems of excessive time delays in microcomputer system operations.




In addition to the foregoing problems, the prior art arrangements, such as described in U.S. Pat. No. 5,390,149, include many control leads between the microprocessor and the dynamic random access memory. Those control leads include several chip-to-chip interconnections. Generally, integrated circuit designers desire to reduce the number of off-chip leads from a device. Thus, there is a problem in actually reducing the number of off-chip leads between the microprocessor and the dynamic random access memory.




SUMMARY OF THE INVENTION




These and other problems are solved by a digital processor and a system clock circuit for producing a system clock signal having timing edges for controlling operation of the digital processor. A synchronous random access memory, directly responsive to the edges of the system clock signal and an address select signal, is arranged for accessing addressable storage cells within the synchronous dynamic random access memory to write data into the storage cells or read data out from the storage cells. Row address strobe (RAS) and column address strobe (CAS) control signals are not required because row and column address timing is initiated by the single address select signal. This synchronous random access memory device may be fabricated as a dynamic or as a static storage device.











BRIEF DESCRIPTION OF THE DRAWINGS




A better understanding of the invention may be derived by reading the following detailed description with reference to the drawings wherein:





FIG. 1

is a block diagram of a data processing system including a synchronous random access memory;





FIG. 2

is a block diagram of a synchronous random access memory;





FIG. 3

is a timing diagram of a synchronous random access read operation;





FIG. 4

is a timing diagram of a synchronous random access write operation;





FIG. 5

is a logic schematic diagram of a timing gate circuit;





FIG. 6

is a timing diagram for the operation of the timing gate circuit of

FIG. 5

; and





FIG. 7

is a truth table for a wrap address scramble used in a synchronous wrap read 8-bit operation.











DETAILED DESCRIPTION




Referring now to

FIG. 1

, a data processing system


15


includes a digital processor


20


which receives digital data by way of a bus


17


from an input peripheral device


24


. The digital processor


20


may be a microprocessor. Control signals pass between the digital processor


20


and the input peripheral device


24


by way of a control bus


18


. The digital processor


20


processes that data and other data, all of which may be transmitted by way of a data bus


25


for storage in and retrieval from a synchronous memory device


30


. The digital processor


20


also sends resulting output data via an output data bus


32


to an output peripheral device


40


where the output data may be displayed or used for reading, viewing or controlling another device that is not shown. Control signals are transmitted between the digital processor


20


and the synchronous memory device


30


by way of a control bus


60


. Control signals also are transmitted between the digital processor


20


and the output peripheral device


40


by way of a control bus


62


. System clock signals are produced by a system clock device


65


and are applied through a clock lead


67


to the digital processor


20


, the synchronous memory device


30


, the input peripheral device


24


, and the output peripheral device


40


.




From time to time during operation of the data processing system


15


, the digital processor


20


accesses the synchronous memory


30


for writing data into storage cells or for reading data from the storage cells thereof. Storage cell row and column addresses, generated by the digital processor


20


, are applied through an address bus


45


to the synchronous memory


30


. Data may be sent by way of the data bus


25


either from the digital processor


20


to be written into the synchronous memory


30


or to be read from the synchronous memory


30


to the digital processor


20


.




Control signals, produced by the digital processor


20


and transmitted by way of the control bus


60


to the synchronous memory


30


include an address select signal {overscore (ADS)}, a write signal {overscore (WE)}, a burst select signal {overscore (BT)}, a burst direction signal +/−, a wrap select signal {overscore (WP)}, a wrap-type signal WT, a wrap-length signal WL, and others. Control signals may also be transmitted by way of the control bus


60


from the synchronous memory


30


to the digital processor


20


.




Referring now to

FIG. 2

, the synchronous random access memory


30


includes a memory array


75


of metal-oxide-semiconductor (MOS) dynamic storage cells arranged in addressable rows and columns. The memory array


75


of storage cells is similar to the well known arrays of cells used in dynamic random access memory devices. Either complementary metal-oxide-semiconductor (CMOS) or bipolar complementary metal-oxide-semiconductor (BICMOS) technology may be used for fabricating the memory array


75


.




Several other circuit blocks including timing and control circuit


42


, row address buffer


48


, column address buffer


49


, row address decoder


50


, transfer gates


51


and


53


, column address counter


52


, column address decoder


54


, wrap address scrambler and multiplexer (MUX)


61


, output multiplexer (OMUX) and data-out driver, input multiplexer (IMUX) and data-in driver


64


, mask register


93


, and count control circuit


94


are shown in FIG.


2


. These other circuit blocks are designed and arranged for operating the array of storage cells synchronously with the digital processor


20


of

FIG. 1

in response to the common system clock signal CLK. The circuit blocks other than the array of storage cells may be fabricated as either CMOS or BICMOS circuits.




The synchronous random access memory


30


is operable for synchronous random access read or write operations, for synchronous burst read or write operations, and for synchronous wrap read or write operations. Several types of synchronous operations are to be described herein with reference to timing diagrams. In the timing diagrams, a DON'T CARE state is represented by crosshatching.




Referring now to

FIGS. 2 and 3

for a synchronous random access read operation, an N bit wide row address and the address select signal {overscore (ADS)} are applied to the address bus


45


and a lead


46


. Control signals, such as the signal {overscore (ADS)} and others including a write signal WE, a burst select signal {overscore (BT)}, and a wrap select signal {overscore (WP)}, are active low signals. The write signal {overscore (WE)} on a lead


47


of the control bus


60


being high, at clock cycle time


2


, designates a read operation. The synchronous read operation commences at a falling edge of the system clock signal CLK at clock cycle time


1


. For this illustrative embodiment, the system clock times operations in synchronism at the negative-going edges of the clock pulses, such as at the clock cycle times


1


,


2


,


3


, etc. In other embodiments, not shown herein, the system may time operations at the positive-going edges or on both negative-going and positive-going edges of the clock pulses.




When the system clock CLK has a negative-going edge while the row address is applied at the clock cycle time


1


and the address select signal {overscore (ADS)} is low, the row address is latched into the row address buffer


48


.




Since the illustrative embodiment has an N bit wide address bus, that bus is time shared by row addresses and column addresses. During the clock cycle time


2


following the latching of the row address into the row address buffer


48


, a column address is applied to the address bus


45


and is latched into the column address buffer


49


. During the clock cycle time


2


, the address select signal {overscore (ADS)} and the clock signal latch the column address into the column address buffer


49


in this multiplexed address system.




Concurrently with the latching of the column address into the column address buffer, the row address is being decoded through the row address decoder


50


. The row address decoder


50


decodes the binary number row address into a one-out-of-


2




N


selection. As a result of the one-out-of-


2




N


selection, an active signal is applied to the wordline of the one selected row. This wordline remains selected throughout the remainder of the random access read operation.




At the next negative-going edge of the system clock CLK, a load initial address signal LIA enables a group of load count transfer gates


51


to move the initial column address into upper count and lower count sections of a column address counter


52


. The most significant bits of the column address are latched into the upper count section


58


and the least significant bits of the column address are latched into the lower count section


59


of the column address counter


52


. All of those address bits in the column address counter


52


represent the initial column address to be applied to the memory array for the read out operation. Since the operation being described is a synchronous random access operation, the initial column address is the only column address to be applied to the memory array during the read operation.




The most significant bits of the initial column address are applied from the upper count section


58


through gates


53


to the column address decoder


54


for selecting M columns of storage cells of the memory array, from which data are to be read out. These most significant bits of the column address are decoded by the column address decoder


54


to enable a block of M columns of storage cells in the memory array


75


.




Data bits are read from a group of M storage cells, determined by a part of the decoded column address, i.e., the decoded most significant bits of the column address. These M data bits are transferred in parallel from the memory array


75


through a group of leads


55


to an output multiplexer OMUX where they are latched for output during the clock cycle time


4


.




A one-out-of-M selection is made by the output multiplexer OMUX in response to control signals


63


applied to the output multiplexer from the lower count section


59


of the column address counter


52


through wrap address scrambler and mux


61


. The least significant bits of the initial column address, residing in the lower count section


59


, determine which bit latched in the output multiplexer OMUX is the one-out-of-M bit to be gated through the output multiplexer to a lead in the data bus


25


.




A more complete description of the column address counter


52


and of the output multiplexer can be found in the U.S. Pat. No. 5,390,149 mentioned previously and incorporated herein by reference.




Referring now to

FIGS. 2 and 4

for a synchronous random access write operation, row addressing and column addressing occur similar to the synchronous random access read operation except that the write signal WE is at a low level at the clock cycle time


2


to designate the synchronous random access write operation. The decoded row address from the row decoder


50


enables one row of storage cells in the memory array


75


. The most significant bits of the column address, decoded by the column decoder


54


, enable a block of M column leads in the array. The selected set of storage cells at the addressed intersections of the addressed row and the set of M addressed columns are enabled to receive the data that is to be written. The least significant bits of the column address (residing in the lower count section


59


of the column address counter


52


) determine control signals


66


that are applied to the input multiplexer IMUX through wrap address scrambler and mux


61


for determining which one-out-of-M bit on the data bus


25


is transmitted through the input multiplexer IMUX to be written into the memory array


75


. The one-out-of-M bit is applied to the associated column lead of the selected block of columns of storage cells in the memory array


75


. That bit of data is written into the storage cell at the address selected by the row address and the initial column address. The other M-


1


bits of data, related to the selected set of M columns, are not written into the memory array


75


because the input multiplexer IMUX does not transmit those M-


1


bits to the associated column lines of the memory array


75


.




A more complete description of the input multiplexer IMUX can be found in the U.S. Pat. No. 5,390,149 mentioned previously.




The next subsequent operation of the memory array following either the synchronous read operation or the synchronous write operation may be another synchronous random access operation, i.e., either a synchronous read operation or a synchronous write operation. The same row and column addresses or a different row or column address can be used to select the storage cell for the next access. A synchronous burst or a synchronous wrap operation also may follow the synchronous random access read or write operations.




In a synchronous burst read-up operation, after the initial column address is decoded, the address residing in the upper and lower count sections


58


and


59


is incremented under control of the clock signal COUNT. The next address produced in the upper and lower count sections


58


and


59


is the initial column address incremented by one. The next sequential bit is transmitted through the output multiplexer OMUX from the column of storage cells of the memory thereby addressed.




A first block of M columns and a next higher order block of M columns of storage of the memory array


75


are addressed simultaneously by the column address decoder


54


. Bits are transmitted through the output multiplexer OMUX from a first one of those blocks while bits from the second block of M columns are accessed from the memory array and are applied to the output multiplexer OMUX. When the first set of addresses is exhausted, the sequence of addresses continues through the second set of M addresses while a third set of M addresses is applied to the output multiplexer in place of the first set. By thus alternating sets of addresses in a rising order, the desired burst of bits is read out of the memory array


75


. These alternating sets of addresses for selecting the desired sequence of bits enables the data to be read out through the output multiplexer OMUX to the data bus


25


in a continuous stream without having to wait for each address to be supplied from the original digital processor


20


of FIG.


1


. The sequential bits of data transmitted out of the output multiplexer OMUX are in a continuous stream at a rate of the system clock CLK.




In the foregoing discussion of the synchronous read and write operations, the illustrative embodiment includes an N bit wide address bus


45


that is time-shared by row and column addresses. In another useful embodiment, not shown, the address bus may be wide enough so that both the row and column addresses are applied concurrently in parallel. As a result, both addresses are latched simultaneously into their respective address buffers, i.e., row address buffer


48


and column address buffer


49


when the address select signal {overscore (ADS)} is low when the system clock CLK goes low. Otherwise the synchronous random access read and write operations proceed, as previously described.




It is noted that for the synchronous random access write operations, the row and column addresses may be latched either before data is latched or at the same time.




In addition to the synchronous random access read and write operations, the embodiment of

FIGS. 1 and 2

can perform a synchronous burst read operation and a synchronous burst write operation.




In the synchronous burst read operation, a group of bits is read rapidly from a sequence of column addresses along a common row of storage cells in the memory array


75


. The sequence of addresses can be either in an ascending order of column addresses (UP) or in a descending order of column addresses (DOWN). The direction, or polarity, of the sequence of column addresses is determined by a burst direction signal +/− on a lead


56


of the control bus


60


. The length of the burst, i.e., the number of bits it the burst, is determined by the duration of the low burst select signal {overscore (WT)} that is applied, on a lead


57


of the control bus


60


, by the digital processor


20


of FIG.


1


. When the burst select signal {overscore (BT)} goes high, the synchronous burst read operation is terminated.




Generally, synchronous burst read and write operations and synchronous wrap read and write operations are similar to random access read and write operations. There are some differences. Except for the manner in which addresses are latched into the address buffers, a synchronous operation (either a synchronous burst read, a synchronous burst write operation, a synchronous wrap read operation, or a synchronous wrap write operation) of the synchronous memory device


30


of

FIG. 2

is accomplished in a manner which is similar to the operation described in the aforementioned U.S. Pat. No. 5,390,149. The upper count section


58


and the lower count section


59


of the column address counter


52


operate as described in the aforementioned patent application.





FIG. 7

is TABLE I showing the logic of the conversion process that is accomplished by the wrap address scrambler and multiplexer. As shown in TABLE I, the wrap length signal WL is zero (WL=0). Headings for the columns of the table include, as an input, the three least significant bits of the initial column address A


0


, A


1


, A


2


. The wrap type signal WT may be either low (WT=0) or high (WT=1). Each line of the truth table presents a sequence of output addresses which are produced by the wrap address scrambler


61


in response to the three least significant bits from the initial column address residing in the column address counter


52


. The wrap address scrambler


61


produces the sequence for which ever wrap type WT is applied in synchronism with the system clock signal CLK.




Thus, in the top line for wrap type signal WT equal to zero (WT=


0


) and initial address A


0


=0, A


1


=0, A


2


=0, the sequence of addresses produced by the wrap address scrambler is 0,1,2,3,4,5,6,7. The translation from the initial input address to the output sequence of addresses may be accomplished in a number of ways, e.g., by a look-up table. Output addresses from the wrap address scrambler


61


access similarly ordered outputs from the output multiplexer OMUX. Since only eight bits are latched into the output multiplexer, only eight addresses are produced and used for reading those bits to the data bus


25


.




If the wrap type signal equals one (WT=1), then the sequence of addresses occurs in the order shown in the right most column. Thus when the wrap type signal WT=1 and the least significant three bits of the initial column address are A


0


=0, A


1


=0, A


2


=0, the order of addresses applied to the output multiplexer is 2,3,0,1,6,7,4,5. Bits from the output multiplexer positions, so identified, are read out in that order onto the data bus


25


of FIG.


2


.




In

FIG. 2

, the mask register


93


receives and stores coded mask data from the data bus


25


. Responsive to the system clock signal CLK, the mask register


93


applies the mask data to control the operation of the count control circuit


94


.




Count control circuit


94


, in response to the status of the burst control signal BURST, the wrap control signal WRAP, the mask data, and the system clock CLK, produces a clock signal COUNT for controlling the operation of the column address counter


52


and the wrap address scrambler and multiplexer


61


.




Timing and control circuit


42


of

FIG. 2

is responsive to the address select signal {overscore (ADS)}, the write signal {overscore (WE)}, the burst select signal BT, the burst direction signal +/−, the wrap select signal {overscore (WP)}, the wrap-type signal WT, the wrap-length signal WL, and the system clock signal CLK for producing control signals, such as, the row and column address latching signals XAL and YAL, the load initial address signal LIA, the write enable signal WEN, the data-in latch signal DINL, the burst control signal BURST, and the wrap control signal WRAP.




In the timing and control circuit


42


of

FIG. 2

, all of the signals from the control bus


60


are gated by the system clock signal CLK on lead


67


so that all control signals internal to the synchronous random access memory


30


, such as, the signals XAL, YAL, LIA, WEN, DINL, BURST and WRAP are synchronized with the system clock signal CLK. This feature assures that the functions of the synchronous random access are synchronized with that clock. Any logic circuitry external to the synchronous random access memory


30


need not be concerned with any complex timing relationships between the various signals transmitted on the control bus


60


.




Referring now to

FIG. 5

, there are shown two exemplary gates


101


and


102


of the timing and control circuit


42


of FIG.


2


. In gate


101


, the address select signal {overscore (ADS)} is gated by the system clock signal CLK, i.e., sampled on the negative-going edge of the pulses of the system clock signal CLK. The resulting output of the gate


101


is the row address latch signal XAL. In the gate


102


, the output of gate


101


also is gated by the system clock signal CLK. The resulting output of the gate


102


is the column address latch signal YAL.





FIG. 6

is a timing diagram for the operation of the gates


101


and


102


. As shown in

FIG. 6

, the row address latch signal XAL is activated by the negative-going edge of the system clock CLK at the system clock cycle time


2


when the address select signal {overscore (ADS)} is low. The column address latch signal YAL is activated by the negative-going edge of the system clock CLK one clock cycle later, i.e., at system clock cycle time


3


when the address select signal {overscore (ADS)} is low. The timing of the negative-going edge of the address select signal {overscore (ADS)} is irrelevant, as long as the level of that signal is low at the negative-going edge of the system clock signal CLK.




Similarly, all of the other internal control signals are responsive to sampled levels of the external control signals on the control bus


60


at times of the negative-going edges of the system clock signal CLK.




The foregoing describes data processing system arrangements which represent illustrative embodiments of the invention. Those embodiments and others made obvious in view thereof are considered to fall within the scope of the appended claims.



Claims
  • 1. A synchronous memory, comprising:a memory array arranged in rows and columns of memory cells, each memory cell arranged to store a respective data bit; a control circuit coupled to receive a system clock signal and a binary select signal, the control circuit arranged to produce a control signal; a row address circuit arranged to latch a row address signal in response to the system clock signal and the binary select signal, the row address circuit arranged to select at least one row from the rows of memory cells; and a column address circuit arranged to latch a column address signal in response to the system clock signal and the binary select signal, the column address circuit arranged to produce a sequence of column address signals in synchronization with the system clock signal, wherein the column address signals have an order corresponding to the control signal, and wherein each column address corresponds to at least one column of memory cells from the columns of memory cells.
  • 2. A synchronous memory as in claim 1, wherein the binary select signal has a first logic state and a second logic state, the second logic state different from the first logic state, and wherein the first logic state disables the row and column address circuits, and wherein the second logic state does not disable the row and column address circuits.
  • 3. A synchronous memory as in claim 1, wherein the control signal has a first logic state and a second logic state, the second logic state different from the first logic state, and wherein the order of the column address signals comprises a sequential order corresponding to the first logic state and an interleaved order corresponding to the second logic state.
  • 4. A synchronous memory as in claim 1, wherein the row address further comprises:a row address latch circuit arranged to latch the row address signal, the row assress latch circuit arranged to produce a latched row address signal; and a row address decoder circuit coupled to receive the latched row address signal, the row address decoder circuit arranged to select the at least one row from the rows of memory cells.
  • 5. A synchronous memory as in claim 1, wherein the memory cells are dynamic memory cells.
  • 6. A synchronous memory as in claim 1, wherein the memory cells are static memory cells.
  • 7. A synchronous memory as in claim 1, wherein the row address circuit latches the row address signal in response to a first cycle of the system clock signal and wherein the column address circuit latches the column address signal in response to a second cycle of the system clock signal.
  • 8. A synchronous memory as in claim 7, wherein the first cycle is adjacent the second cycle.
  • 9. A synchronous memory as in claim 1, wherein the column address circuit further comprises:a column address counter circuit arranged to latch the column address signal, the column address counter circuit arranged to produce the sequence of column address signals; and a column address decoder circuit coupled to receive the sequence of column address signals, the column address decoder circuit arranged to select a plurality of columns corresponding to the sequence of column address signals.
  • 10. A synchronous memory as in claim 9, further comprising:an output data bus having plural leads connected to respective data terminals; and an output circuit coupled to receive an integral multiple of M data bits corresponding to the sequence of column address signals at a first time, the output circuit producing a first data bit from a first group of M data bits on a lead of the data bus in response to the system clock signal at a second time, the output circuit producing a second data bit from a second group of M data bits on the lead of the data bus in response to the system clock signal at a third time after the second time.
  • 11. A synchronous memory as in claim 10, wherein the output circuit produces the first data bit in response to a positive-going edge of the system clock signal and produces a second data bit from the first group in response to a negative-going edge of the system clock signal.
  • 12. A data processing system, comprising:a clock circuit arranged to produce a system clock signal; a digital processor coupled to the clock circuit and arranged to operate synchronously with the system clock signal; a synchronous memory coupled to the digital processor and the clock circuit and arranged to operate synchronously with the system clock signal, the synchronous memory comprising: a memory array arranged in rows and columns of memory cells, each memory cell arranged to store a respective data bit; a control circuit coupled to receive the system clock signal and a binary select signal, the control circuit arranged to produce a control signal; a row address circuit arranged to latch a row address signal in response to the system clock signal and the binary select signal, the row address circuit arranged to select at least one row from the rows of memory cells; and a column address circuit arranged to latch a column address signal in response to the system clock signal and the binary select signal, the column address circuit arranged to produce a sequence of column address signals in synchronization with the system clock signal, wherein the column address signals have an order corresponding to the control signal, and wherein each column address corresponds to at least one column of memory cells from the columns of memory cells.
  • 13. A data processing system as in claim 12, wherein the binary select signal has a first logic state and a second logic state, the second logic state different from the first logic state, and wherein the first logic state disables the row and column address circuits, and wherein the second logic state does,not disable the row and column address circuits.
  • 14. A data processing system as in claim 12, wherein the control signal has a first logic state and a second logic state, the second logic state different from the first logic state, and wherein the order of the column address signals comprises a sequential order corresponding to the first logic state and an interleaved order corresponding to the second logic state.
  • 15. A data processing system as in claim 12, wherein the row address circuit comprises:a row address latch circuit arranged to latch the row address signal, the row address latch circuit arranged to produce a latched row address signal; and a row address decoder circuit coupled to receive the latched row address signal, the row address decoder circuit arranged to select the at least one row from the rows of memory cells.
  • 16. A data processing system as in claim 12, wherein the row address circuit latches the row address signal in response to a first cycle of the system clock signal and wherein the column address circuit latches the column address signal in response to a second cycle of the system clock signal.
  • 17. A data processing system as in claim 16, wherein the first cycle is adjacent the second cycle.
  • 18. A data processing system as in claim 12, wherein the column address circuit comprises:a column address counter circuit arranged to latch the column address signal, the column address counter circuit arranged to produce the sequence of column address signals; and a column address decoder circuit coupled to receive the sequence of column address signals, the column address decoder circuit arranged to select a plurality of columns corresponding to the sequence of column address signals.
  • 19. A data processing system as in claim 18, further comprising:an output data bus having plural leads connected to respective data terminals; and an output circuit coupled to receive an integral multiple of M data bits corresponding to the sequence of column address signals at a first time, the output circuit producing a first data bit from a first group of M data bits on a lead of the data bus in response to the system clock signal at a second time, the output circuit producing a second data bit from a second group of M data bits on the lead of the data bus in response to the system clock signal at a third time after the second time.
  • 20. A data processing system as in claim 19, wherein the output circuit produces the first data bit in response to a positive-going edge of the system clock signal and produces a second data bit from the first group in response to a negative-going edge of the system clock signal.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a division of application Ser. No. 08/262,161, filed Jun. 17, 1994, now abandoned, which is a continuation of application Ser. No. 07/783/436, filed Oct. 24, 1991, now abandoned. U.S. patent application Ser. No. 07/690,207, filed Apr. 23, 1991, now abandoned in favor of continuation U.S. patent application Ser. No. 08/184,749, filed Jan. 21, 1994, now U.S. Pat. No. 5,390,149; U.S. patent application Ser. No. 09/454,825, filed Dec. 6, 1999; and U.S. patent application Ser. No. 09/454,537, filed Dec. 6, 1999, are hereby incorporated by reference.

US Referenced Citations (21)
Number Name Date Kind
3631404 Bernhardt Dec 1971
3702463 Lesniewski Nov 1972
4608678 Threewitt Aug 1986
4649511 Gdula Mar 1987
4698749 Bhadriraju Oct 1987
5014188 Kawamura May 1991
5021951 Baba Jun 1991
5077693 Hardee et al. Dec 1991
5093807 Hashimoto et al. Mar 1992
5097437 Larson Mar 1992
5126975 Handy et al. Jun 1992
5179670 Farmwald et al. Jan 1993
5226011 Yanagisawa Jul 1993
5243703 Farmwald et al. Sep 1993
5268865 Takasugi Dec 1993
5291580 Bowden, III et al. Mar 1994
5345573 Bowden, III et al. Sep 1994
5390149 Vogley et al. Feb 1995
5479635 Kametani Dec 1995
5587954 Vogley et al. Dec 1996
5808958 Vogley et al. Sep 1998
Foreign Referenced Citations (1)
Number Date Country
59-56276 Mar 1984 JP
Non-Patent Literature Citations (13)
Entry
“A 1Mb Field Memory for TV Pictures”, Nakagawa, et al., IEEE 1987 Customer Integrated Circuits Conference, 1987, pp. 319-322.
“A 20 ns 256K X 4 FIFO Memory”, Hashimoto, et al., IEEE 1987 Customer Integrated Circuits Conference, May 1987, pp. 315-318.
“A 20-ns 256K × 4 FIFO Memory”, Hashimoto, et al., IEEE Journal of Solid State Circuits, vol. 23, No. 2, Apr. 1988, pp. 490-499.
“A Sub-10nS Cache SRAM for High Performance 32 Bit Microprocessors”, Reese, et al., IEEE 1990 Customer Integrated Circuits Conference, pp. 24.2.1-24.2.4.
“Internally Timed RAMs Build Fast Writable Control Stores”, Mohammad Shakaib Iqbal, Design Applications, Electronic Design, Aug. 1988, pp. 93-96.
“Motorola's Radical SRAM Design Speeds Systems 40%”, Bernard C. Cole, Technology to Watch, Electronics, Jul. 1987, pp. 66-68.
“Static Rams Have On-chip Address and Data Latches for Pipelining”, EDN, Triad Semiconductors, Inc., Dec. 1988, p. 116.
“Self-Timed SRAMs Pace High-Speed ECL Processors”, Charles Hochstedler, Semiconductor Memories, 1990, pp. 4-10.
“Special-Feature SRAMs”, John Gallant, EDN Special Report, Jun. 1991, pp. 104-112.
“Specialty SRAMs Are Filling The Speed Gap”, Samuel Weber, Electronics, May 1990, pp. 85-87.
“SRAMs On-Chip Address and Data Latches Boost Throughput in Pipelined Systems”, Steven Leibson, EDN Oct. 1988, pp. 102 and 104.
“System Snags Shouldn't Slow The Boom in Fast Static RAMs”, J. Robert Lineback, Electronics, Inside Technology, Jul. 1987, pp. 60-62.
“Will The Search For The Ideal Memory Architecture Ever End?”, Ron Wilson, Computer Design, Jul. 1990, pp. 78-99.
Continuations (1)
Number Date Country
Parent 07/783436 Oct 1991 US
Child 08/262161 US