SEGMENTED READ LINE CIRCUIT PARTICULARLY USEFUL FOR MULTI-PORT STORAGE ARRAYS

Abstract: A read line for a column of memory cells within an array is divided into a first read line segment, a first read buffer, and a second read line segment. Both the first and second read line segments occupy a single wiring channel. When reading a memory cell connected to the first read line segment, the level of the first read line segment is sensed by the first read buffer and conveyed to a column read output node by way of the second read line segment and an associated second read buffer. Alternatively, when reading a memory cell connected to the second read line segment, the first read buffer is disabled, thus adopting a high impedance output, and the level of the second read line segment is sensed by the second read buffer and conveyed to the column read output node. Each of the first and second read line segments have less capacitive loading than a single read line, which results in lower power and faster read access times. Further, when reading a memory cell coupled to the second read line segment, the first read line segment remains in a precharged state, conserving power even more. Consequently, when used as part of a multiport register file within a processor, power is reduced by implementing registers having a high frequency of reference as memory cells coupled to the second read line segment.

Description: SEGMENTED READ LINE CIRCUIT PARTICULARLY USEFUL FOR MULTI-PORT STORAGE ARRAYS BACKGROUND OF THE INVENTION Field ofthe Invention This invention relates to the design of integrated circuit memory arrays, and more specifically relates to reading data stored within a memory arrav 0 Description of Related Art An array configuration is a highly useful and frequently encountered structure for storing data withm an integrated circuit In manv common arrangements a two-dimensional arrav of storage elements (also known as memory _> cells) is arranged into rows and columns with each memory cell connected to an associated row and column A group ot memory cells is selected by activating a row line (also known as a wordline) to which all the cells of the group are connected This enables each ofthe memory cells within the group, when in a read mode, to dπve its associated column Ime (also known as a bitiine) in a manner corresponding to the data stored within each memory cell Alternatively, when in the write mode, each memory cell is enabled to receive data conveyed on the bitiine to the memory cell 0 There are many ways to arrange a bitiine configuration and an associated read circuit One well known technique uses a cross-coupled sense amplifier, or "sense amp" Typically a pair of bitlines couple each ofthe two sides of a cross-coupled memory cell to a differential amplifier which resolves a slight difference in voltage between the two bitlines into a stable, full-level value (which may then be further decoded and eventually routed to an output signal) 5 Sense amp circuits are constructed from a bi-stable circuit block (such as a cross-coupled differential pair of transistors) which is forced into an unstable state just before the bitlines are to be sensed During sensing, a slight differential input from the bitlines pushes the sense amp mto one of two stable states (corresponding to reading a logic " 1 ' or a logic "0") Consequently, sense amp circuits consume significant power while actually sensing the bitlines 0 Alternatively, a separate line, known as a "write line", may be employed for writing a selected memory ceil within a column of memory cells, and a separate line, known as a "read line", may be used for reading a selected memory cell within the column of memory cells Such write and read lines may be configured as differential lines (and which therefore each employ two wires) To save area another well known technique uses a single read Ime to sense data within a memory cell, and is frequently known as a "single-ended" read (as opposed to a differential read as in the 5 differential sense amp discussed above) While several vanations are possible, one frequently encountered configuration precharges each read line high When a memory cell is enabled by a read select line, the read line is either discharged by the memory cell (such as for a logic "0") or the read line is left in the precharged state (such as for a logic " 1 ") Such a single-ended read structure typicallv requires a greater voltage transition on the read line for proper 0 sensmg to occur than for a differential sense amp configuration However, the single-ended read line configuration is more efficient for multi-port RAMs because each read port requires a separate read line for each column of memory cells within the array The finite number of available metal lines through a memory array either limits the number of read ports which may be implemented, or requires usage of a larger memory cell layout just to suppon the additional read lines necessary for each read port Since a single-ended read configuration requires only one metal line per read line for each column of memory cells in the array, such a configuration allows twice as many read poπs as would a differential sense amp configuration, which requires two metal lines for each "read line" equivalent Fig 1 illustrates the interconnections necessary for a multi-port memory cell 10 having two wnte poπs and four read poπs (a "2W-4R" memory cell) The read ports are single-ended read poπs as described above, and consequently have one metal wire for each read line A read select line for a given port directs the memory cell 10 to dπve a corresponding read Ime for each port Thus, read select lines RDSELl. RDSEL2. RDSEL3. and RDSEL4 and read lmes RDBIT1. RDBIT2. RDBIT3, and RDBIT4 allow for independent reading ofthe logic level stored within the memory cell 10 by each of the four read ports Also shown in Fig 1 are two write select lines, WRSEL1 and WRSEL2, for enabling the memory cell 10 to respond to data conveyed to the cell on either of two write data lines WRBIT1 and WRBIT2 respectively For convenience, the group of four read lines RDBIT1-RDBIT4 mav also be referred to as a read bus RDBITx Similarly, the group of four read select lines RDSELl -RDSEL4 may be referred to as read select bus RDSELx. the group of two write select lines WRSEL1-WRSEL2 may be referred to as write select bus WRSELλ, and the group of two write data lines WRBIT1-WRBIT2 may be referred to as write data bus WRBITx Referring now to Fig 2, an array 20 illustrates a traditional array configuration using a group of memory cells such as that shown in Fig 1 For simplicity of discussion a 3x3 array is shown, but one skilled in the art will immediately recognize the extendibility of such an array A decoder 22 generates each ofthe four signals within read select bus RDSELx 1. which bus is connected to each of memory cells MCI 1, MCI 2. and MCI 3 within the first row of memory cells of array 20 Similarly, the decoder 22 generates each ofthe two signals within wnte select bus WRSELxl, which bus is also connected to each of the same three memory cells MCI 1, MC12. and MC13 Read select busses RDSELx2 and RDSELx3 service the second row (MC21, MC22. and MC23) and third row (MC31. MC32. and MC33) of memorv cells, respectively, as do write select busses WRSELx2 and WRSELx3, respectively In the column direction, wnte data bus WRBITx 1 is connected to each ofthe memory cells MCI 1, MC21, and MC31 within the first column ofthe array 20. Likewise, write data busses WRBITx2 and WRBITx3 are connected to the second column (MC12, MC22. and MC32) and third column (MC13, MC23. and MC33) of memory cells, respectively Similarly, read line busses RDBITxl, RDBITx2, and RDBITx3 are connected to the first column, the second column, and the third column of memory cells, respectively The write data busses and the read line busses are typically, although not always, connected to an I/O block which includes various buffers and decoders, which for clarity is not shown in Fig 2 As can be seen in the array 20 of Fig 2, each memory cell is connected to a read line for each of four read ports Within a given column ofthe array 20, a given read line is connected to every memory cell withm the column Since the speed ofthe read line is constrained by the capacitive loading upon the read line, a longer read line is more difficult to sense quickly One constraint on the speed of a read Ime is the capacitive loadmg placed upon a read Ime by each memory cell. This capacitive loading arises from the read line traversing above other conductive structures withm the memory cell, as well as from junction capacitance and gate overlap capacitance withm each ofthe memory cells This capacitive loadmg mcreases as additional memory cells are connected to each read line, which tends to slow the discharge ofthe read Ime when reading a logic "0" Since a great proportion ofthe capacitive loading placed upon a read line by a memory cell arises from the junction capacitance ofthe dram diffusion of a transistor withm the memory cell used to discharge the read Ime. usmg a larger discharge transistor increases the available current but also increases the total capacitive load on the read line, and thus does not afford much increase in speed SUMMARY OF THE INVENTION It is an object ofthe present invention to provide a high performance read Ime structure which utilizes a smgle wiring channel for an entire array It is a further object ofthe present invention to provide a read line structure which affords low power operation of a memory array These and other objects are accomplished bv the current invention in which, for one embodiment, a group of read line segments are used for a column ofthe memory array, and which segments are serially connected across the array by a group of read buffers Each of these read Ime segments may reside within the same wiring channel, because no two read line segments run side-by-side Each read buffer is individually enabled to sense the voltage ofthe read Ime segment coupled to its mput, and to dπve the adjacent read line segment coupled to its output Because each read Ime segment is connected to a group of memory cells which is smaller than the total number of memory cells withm a given column ofthe memory array, faster access times are achievable than with smgle read Ime structures Furthermore lower power dissipation results because for many of the memory cells, only a portion of the read line segments are active The remainder ofthe read line segments stay inactive, typically in a precharged state In one embodiment the present mvention includes an apparatus for reading a selected memory cell from a column of memory cells withm a memory array of an integrated circuit, and for conveying information read therefrom to a column read output node A first read line segment has coupled thereto a first plurality of memory cells, and a second read line segment has coupled thereto a second plurality of memory cells A first read buffer has an input coupled to the first read Ime segment and has an output coupled to the second read Ime segment, said read buffer havmg an enable input which, when active, enables the output and which, when inactive, disables the output by causing the output to adopt a high impedance state A second read buffer has an mput coupled to the second read line segment and has an output coupled to the column read output node In another embodiment, the present invention includes a first read line segment having coupled thereto a first plurality of memory cells, and a second read line segment having coupled thereto a second plurality of memory cells A first read buffer has an mput coupled to the first read line segment and has an output coupled to the second read Ime segment, said first read buffer for sensmg a voltage level ofthe first read line segment when the selected memory cell is among the first plurality of memory cells, and for subsequently driving a voltage onto the second read line segment correspondmg to the voltage level sensed on the first read Ime segment, and alternatively said first read buffer for adoptmg a high impedance state on the ouφut thereof when the selected memory cell is among the second plurality of memory cells coupled to the second read line segment Also mcluded is a second read buffer havmg an mput coupled to the second read Ime segment and having an ouφut coupled to a column read ouφut node, said second read buffer for sensmg a voltage level ofthe second read line segment when the selected memory cell is among the second plurality of memory cells, and for subsequently driving a voltage onto the column read ouφut node corresponding to the voltage level sensed on the second read line segment, and alternatively when the selected memory cell is among the first plurality of memory cells coupled to the first read line segment, said second read buffer for sensing a voltage level ofthe second read Ime segment as dnven by the first read buffer, and for subsequently driving a voltage onto the column read ouφut node corresponding to the voltage level sensed upon the second read line segment In yet another embodiment ot the present invention, an apparatus for reading a selected memory cell from a column of memory cells within a memory array ot an integrated circuit includes a plurality "M" of read line segments arranged sequentially and in a non-overlapping marmer, wherein "ι"= 1. 2, . "M", each read line segment "I" of the plurality "M" of read Ime segments having coupled thereto an associated plurality of memory cells The apparatus also includes a plurality "M-l " of read buffers, wherein "j" = 1, 2, .. "M-l ". each read buffer "j" ofthe plurality "M-l" of read buffers havmg an mput coupled to a respective read line segment "j" for sensing a voltage level thereon, and each read buffer "j" further having an ouφut coupled to an adjacent read line segment " j +1 " for driving, when enabled, a voltage thereon correspondmg to the voltage level sensed on its respective input Further included is a read buffer "M" havmg an mput coupled to a respective read Ime segment "M" for sensing a voltage level thereon, and having an ouφut coupled to a column read ouφut node for driving a voltage thereon corresponding to the voltage level sensed on its respective input A logic state stored within a selected memory cell associated with a read line segment "k" of the column of memory cells, wherem "k" = 1.2, ... "M". is sensed and conveyed to the column read ouφut node by enabling the read buffers "k" through "M" disposed between the read line segment "k" and the column read output node, if any such read buffer is not already enabled In a method embodiment of the current invention for use within a memory array of an integrated circuit, a method for readmg a selected memory cell from a column of memory cells and conveying information read therefrom to a column read ouφut node includes providing a plurality of read line segments for the column of memory cells, wherem a respective portion ofthe memory cells within the column are coupled to each respective one ofthe plurality of read Ime segments. The method then mciudes enablmg the selected memory cell to drive a signal onto the respective read Ime segment coupled thereto, said signal correspondmg to a logic value stored previously into the selected memory cell, followed by sensmg the signal developed on the read line segment associated with the selected memory cell. The method further includes driving a corresponding signal to the previously-sensed signal onto an adjacent read line segment, said adjacent read line segment disposed between the selected read line segment and the column read ouφut node, and buffering the correspondmg signal on the adjacent read line segment to the column read ouφut node by way of any intervening read line segments disposed therebetween BRIEF DESCRIPTION OF THE DRAWINGS Fig 1. labelled p nor art. is an interface diagram of a multi-port memory cell, illustrating the signal connections to and from such a memory cell Fig 2. labelled prior art. is a block diagram of a traditional memory array incorporating a group of memory cells such as the memory cell depicted in Fig 1 Fig 3 is a block diagram of one physical embodiment of a read Ime tree structure for a smgle port of a memory array Fig 4 is a block diagram of another physical embodiment of a read line tree structure for a single port of a memory array Fig 5 is a block diagram of a physical embodiment of a read Ime structure tor a single poπ of a memorv arrav in accordance with the current invention Fig 6 is a schematic diagram of a read buffer useful for the read line embodiment shown in Fig 5 Fig 7 is a schematic diagram of a multi-port memory cell useful for the read line structure shown in Fig 5 Fig 8 is a waveform diagram showing certain details ofthe operation ofthe read line structure shown in Fig 5 Fig 9 is a waveform diagram showing additional details of the operation ofthe read line structure shown in Fig 5 Fig 10 is a block diagram of another physical embodiment of a read Ime structure for a smgle port of a memory array in accordance with the current mvention DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Certain structures may be employed to reduce the limitation of large RAM arrays The circuit structure shown Fig 3 includes a read line tree structure for a smgle port of a memory array (either for a single-port RAM or for a smgle port of a multi-port RAM) A first group of memory cells (not shown ) is connected to a local read Ime 30 When an addressed memory cell connected to local read line 30 is enabled for read, a buffer 34 is enabled to sense the local read Ime 30 and to then dπve a global read Ime 38. which is sensed by buffer 39 Similarly, a second, third and fourth group of memorv cells (not shown) are connected to local read lmes 31. 32. and 33, respectively, which are respectively sensed by buffers 35. 36. and 37 which are each connected to global read line 38 Each buffer is enabled onlv when a memory cell connected to an associated local read Ime is enabled for readmg, and consequently only one buffer is enabled at any smgle time Each memory cell only needs to discharge an associated local read Ime. while a buffer senses the local read line and discharges the much-larger globai read Ime Such an arrangement may be expanded from the two-level tree shown in Fig 3 to higher level tree structures For example. Fig 4 shows an analogous read Ime structure (for a single port) implemented in a three-level tree While offering a significant improvement in local capacitive loading, a disadvantage of these tree approaches relates to the layout ofthe array- each level of such a tree requires a separate wiring channel through the entire array Referring now to Fig 5, a read line structure 50 includes an upper read line RDBITU and a lower read Ime RDBITL A read buffer 60 couples the upper read Ime RDBITU to the lower read Ime RDBITL when an enable signal conveyed on enable Ime 61 is active Memory cells 52, 53, and 54 (representing a portion ofthe total array) each have a respective read port connected to the upper read line RDBITU, while memory cells 56, 57, and 58 (representing the remaining portion ofthe total memorv array) are likewise coupled to the lower read line RDBITL A read buffer 59 is also coupled to the Iower read line RDBITL for sensing the lower read line RDBITL and for driving a column read ouφut node 62 For clarity, only one read line structure is shown, and all other signals, such as read select lines, write select lines, and write data lines, are not shown One embodiment of read buffer 60 is illustrated in Fig 6 The voltage on the upper read line RDBITU is sensed and amplified by inverter 70 and further by inverter 71 The enable signal conveyed on line 61 is inverted by inverter 72. and which two complementary signals together enable a CMOS transmission gate 73 When so enabled, transmission gate 73 provides a path for inverter 71 to dπve the lower read Ime RDBITL When disabled, transmission gate 73 provides a high impedance ouφut as seen by the lower read line RDBITL. and thus the read buffer 60 will not significantly affect the voltage on the lower read Ime RDBITL Fig 7 shows a schematic diagram of a multi-port memory cell 94 useful for the read line structure of Fig 5, and used for memory cells 52, 53, 54, 56, 57, and 58 A pair of cross-coupled inverters 80 and 81 between nodes 83 and 84 provide the basic memory element ofthe memory cell 94 An inverter 82 buffers the logic level stored on node 84 onto an ouφut node 85. which is then coupled to one or more read lmes RDBITl, RDBIT2. RDBIT3, and RDBIT4 by a respective read select Ime RDSELl. RDSEL2, RDSEL3, and RDSEL4 through a respective read access transistor 89, 88. 87. and 86 A first write select line WRSEL1, together with a complement signal generated by inverter 90, enables a transmission gate 91 which conveys a logic level present on a first write data line WRBIT1 mto the memory cell Such a new logic level is wntten mto the memory cell 94 by dnving a voltage onto node 83 and overpowering the ouφut of inverter 80, which is designed to be a weak inverter, until inverter 81 dπves a complement level onto node 84, and which data is then latched by inverter 80 A second write select line WRSEL2, together with a complement signal generated by inverter 92 enables a transmission gate 93 which conveys a logic level present on a second write data line WRBIT2 mto the memory cell While memory cell 94 shows two wnte ports and four read ports, one skilled in the art will recognize that such a memory cell is clearly extendable to greater numbers of either wnte or read ports Referring agam to Fig 5, memorv cell 52 represents an instantiation ofthe memory cell 94 depicted in Fig 7 Fig 5 shows a connection to only one ofthe read lines ofthe memory cell 94 For example, read line RDBITl of Fig 7 is shown connected to the upper read line RDBITU in Fig 5 For clarity, none of the other remainmg read lmes RDBIT2-4 withm memory cell 94 are shown in Fig 5, nor are any ofthe read select lines RDSELl -RDSEL4, nor any ofthe write select lmes WRSEL1-WRSEL2 and write data lines WRBIT1-WRBIT2 The operation ofthe read Ime shown in Fig 5 may be described by analysis of several examples In general both the upper and lower read Ime segments are precharged high between memory cell accesses For example the upper read line RDBITU may have an associated precharge load (not shown), while the read buffer 60 drives the lower read Ime RDBITL to a similar precharged state Other configurations are equally plausible, such as a separate precharge load on the lower read Ime RDBITL To read a memory cell coupled to the lower read Ime RDBITL. such as memory cell 58. the read buffer 60 is disabled Such an ENABLE signal to read buffer 60 is advantageous lv a function of upper- order row address bits and a memory arrav timmg signal When the corresponding read select line (not shown) for this read port is then enabled the memory cell 58 either discharges the Iower read line RDBITL to read a logic "0" or aitemativelv. leaves the lower read line RDBITL precharged to read a logic " 1 " (thus leaving the lower read line RDBITL "floatmg high") This polarity is advantageously chosen when usmg a smgle N-channel read access transistor because such a memory cell, although able to discharge a read line completely to ground potential, is limited by the N- channel threshold voltage in the high voltage the memory cell is able to drive Because only a portion ofthe memory cells corresponding to this read line are actually coupled to the lower read line RDBITL, the capacitance of the lower read line RDBITL is lower than if a single read Ime were used Consequently, memory cell 58 is able to discharge the lower read Ime RDBITL more quickly than otherwise achievable Because the upper read Ime remains precharged, less read Ime power is consumed when readmg a memory cell coupled to the lower read line RDBITL (This is due to the dynamic power necessary to discharge and re-charge a capacitive load ) Further, because the lower read line discharges faster (changes state from high to low more quicklv), the read buffer 59 used to sense the lower read line RDBITL has its N-channel and P-channel transistors simultaneously conductive for a shorter peπod of tune, thus further reducmg power consumption Read buffer 59 may include a single mveπor or may mclude additional buffering or I/O selection logic, as would be readily chosen by one skilled in the art Fig 8 illustrates several waveforms relevant to the above described case Waveform PH2 is a system clock present in one microprocessor embodiment of the current invention, and does not directly impact this discussion Waveform RDSEL represents the voltage on a read select line (not shown in Fig 5) used to address the memory cell bemg read, such as memory cell 58 In this example, memory cell 58 contams a logic "0" which causes memory cell 58 to discharge the lower read Ime RDBITL, which is shown as waveform RDBITL As discussed above, the ENABLE input to read buffer 60 must be inactive before the RDSEL signal for the selected memory cell is driven high To read a memory cell coupled to the upper read line RDBITU. such as memory cell 52 both the upper and lower read lmes are precharged high between memorv cell accesses, as before When the correspondmg read select line (not shown) for this read port is enabled, the memory cell 52 either discharges the upper read Ime RDBITU to read a logic "0" or alternatively, leaves the upper read Ime RDBITU precharged to read a logic " 1 " (thus leaving the upper read line RDBITU "floatmg high") The read buffer 60 is enabled to transfer the value ofthe upper read line RDBITU to the lower read line RDBITL, where the value is sensed by read buffer 59 (and ultimately passed to an ouφut buffer section ofthe memory array) Since no read select lines are active for any memory cell coupled to the lower read line RDBITL. no corruption of data results from using the lower read line to convey the value from the upper read Ime RDBITU to the read buffer 59 For a memory cell using separate read and write lines, no feedback path exists for writing data from a read line into the memory cell, which further assures no corruption of data within non-selected memory cells Because, as with the lower read Ime, only a portion ofthe memory cells correspondmg to this read line 50 are actually coupled to the upper read line RDBITU. the capacitance ofthe upper read line RDBITU is lower, and memory cell 52 is able to discharge the upper read line RDBITU more quickly than otherwise achievable Since there is only one read buffer 60 for the entire read line 50. the transistor size within buffer 60 (inverter 71 on Fig 6) used to discharge the lower read Ime RDBITL is much larger than the transistors withm a memory cell (transistor 89 and inverter 82 of Fig 7) which would otherwise discharge a single read line array As a result, even though reading a memory cell coupled to the upper read Ime RDBITU requires a read buffer delay, the lower total capacitance on the upper read line provides for a faster discharge rate on the upper read line RDBITU, and the higher drive capability of read buffer 60 results a faster discharge rate on the lower read hne RDBITL, thus recovering the speed apparently lost As in the earlier example, the lower read Ime RDBITL discharges faster and the read buffer 59 used to sense the lower read line RDBITL has its N-channel and P-channel transistors simultaneously conductive for a shorter period of time, thus further reducmg power consumption Fig 9 illustrates several waveforms relevant to the above described case Waveform PH2 is a system clock present m one microprocessor embodiment ofthe current invention, and is not relevant to this discussion Waveform RDSEL represents the voltage on a read select Ime (not shown m Fig 5) used to address the memory cell 52 bemg read In this example, memory cell 52 also contams a logic "0" which causes memory cell 52 to discharge the upper read Ime RDBITU, which is shown as waveform RDBITU The read buffer 60, which is enabled, responds to the falling voltage on the upper read Ime RDBITU by discharging the Iower read line RDBITL The voltage ofthe end ofthe lower read Ime RDBITL nearest read buffer 60 is represented by waveform RDBITL', while the voltage ofthe opposite end ofthe lower read Ime RDBITL (the end nearest read buffer 59) is represented by waveform RDBITL" The voltage difference between waveforms RDBITL' and RDBITL" is caused by the RC delays inherent in driving a relatively long, heavily- loaded line traversing through a memory array of an integrated circuit As can be seen by compaπng the waveforms m Fig 8 with those in Fig 9, it is actually faster to read a memory cell (e g , memory cell 52) coupled to the upper read line RDBITU than to read a memory cell (e g , memory cell 58) coupled to the lower read Ime RDBITL Such performance results from various design choices, includmg the number of memory cells coupled to the upper read Ime RDBITU compared to the number of memory cells coupled to the lower read line RDBITL. and the size ofthe various "discharging" transistors, as discussed already above A significant advantage of this segmented read Ime structure is the faster read capability discussed above. An additional advantage is a reduction in power dissipation For example, when used m a register file for a microprocessor, commonly-referenced registers may be grouped together and may be implemented using memory cells coupled to the Iower read Ime RDBITL Thus, the upper read lmes throughout the memory array are quiescent for the frequent accesses to the commonly-referenced registers, and only need be discharged to read a less-frequently-referenced register The read Ime segments need not be equal in size, but may be optimized to be greatly dissimilar in the number of memory cells connected to the various readlme segments For example, the lower read line RDBITL may be connected to 64 memory cells, and the upper read line RDBITU may be connected to 128 memory cells, for optimizing a 192-regιster file having 64 registers more frequently accessed than the remaining 128 registers One skilled in the art will recognize that the advantages thus-far descnbed are not restncted to read lmes havmg just two segments Other embodiments havmg a greater number of segments may also be employed to advantage For example, Fig 10 illustrates a read Ime structure 100 havmg three read line segments RDBITX. RDBITY. and RDBITZ. each connected to an associated group of memory cells 102, 104, and 106, respectively In this embodiment, all three read buffers 108. 1 10, and 1 12 are enabled to read a memory cell within group 102. and only read buffers 1 10 and 1 12 are enabled to read a memory cell within group 104 An additional advantage ofthe read line structure of this invention involves the physical layout of an array Each read line segment of a smgle read Ime structure may be routed m the same wiring channel because nowhere do two adjacent read line segments run side-by-side. If an identical memory cell layout is used, the read line segments may actually be in-line with each other, although such a collinear arrangement is certainly not required The read buffers herein described may be made relatively small compared to the length of each read line segment, and thus do not significantly increase the size of a memory array While the mvention has been largely descnbed with respect to the embodiments set forth above, the mvention is not necessanly limited to these embodiments For example, the vaπous read Ime segments need not be identical in size nor in the number of memory cells connected thereto As an additional example, the vanous read Ime segments can be hierarchically combmed with other structures such as a tree structure or an array of memory arrays Moreover, while the embodiments have been descnbed m the context of a multi-port SRAM array, it should be appreciated that such an array is useful for a variety of circuit blocks, such as cache memories, register files, buffers, and others, and is useful for memory structures such as Dynamic Random Access Memories (DRAMs) and Read-Only Memories (ROMs), and is not merely useful for circuit blocks known commercially as "multi-port static RAMs" Accordmgiy, other embodiments, variations, and improvements not described herein are not necessarily excluded from the scope of the invention, which is defined by the following appended claims

Claims: What is claimed is 1 An apparatus for readmg a selected memory cell from a column of memory cells withm a memor y array of an mtegrated circuit, and for conveymg mformation read therefrom to a column read ouφut node, compnsmg a first read Ime segment having coupled thereto a first plurality of memory cells. a second read line segment having coupled thereto a second plurality of memory cells. a first read buffer having an input coupled to the first read line segment and having an ouφut coupled to the second read line segment, said read buffer having an enable input which, when active, enables the ouφut and which, when mactive. disables the ouφut by causing the ouφut to adopt a high impedance state, and a second read buffer having an input coupled to the second read line segment and havmg an ouφut coupled to the column read ouφut node 2 An apparatus as m claim 1 wherein the first read buffer is enabled when the selected memory cell is among the first plurality of memory cells, and wherein the first read buffer is disabled when the selected memory cell is among the second plurality of memory cells 3 An apparatus as in claim 1 wherein the enable input to the first read buffer is a signal derived from upper-order row address information corresponding to the selected memory cell 4 An apparatus as m claim 1 wherem the first and second read line segments occupy a single wiring channel withm the memory array 5 An apparatus as in claun 4 wherem the memory array is a multiple read port memory array 6 An apparatus as in claim 4 wherein the memorv array is a single read port memorv arrav 7 An apparatus as m claim 5 wherem the second plurality of memory cells have a higher frequency of reference than the first plurality of memory cells 8 An apparatus as m claim 5 wherem the second plurality of memory cells have a frequency of reference which is less than or equal to that ofthe first plurality of memory cells 9 An apparatus for reading a selected memory cell from a column of memory cells withm a memory array of an mtegrated circuit, and for conveymg mformation read therefrom to a column read ouφut node, compnsmg a first read line segment havmg coupled thereto a first plurality of memory cells. a second read line segment having coupled thereto a second plurality of memory cells a first read buffer having an input coupled to the first read line segment and having an ouφut coupled to the second read line segment, said first read buffer for sensmg a voltage level of the first read line segment when the selected memory cell is among the first plurality of memory cells, and for subsequently dnving a voltage onto the second read line segment correspondmg to the voltage level sensed on the first read line segment, and alternatively said first read buffer for adoptmg a high impedance state on the ouφut thereof when the selected memory cell is among the second plurality of memory cells coupled to the second read Ime segment; and a second read buffer having an input coupled to the second read line segment and havmg an ouφut coupled to a column read ouφut node, said second read buffer for sensing a voltage level ofthe second read Ime segment when the selected memory cell is among the second plurality of memory cells, and for subsequently dnvmg a voltage onto the column read ouφut node corresponding to the voltage level sensed on the second read line segment, and alternatively when the selected memory cell is among the first plurality of memory cells coupled to the first read line segment, said second read buffer for sensmg a voltage level of the second read line segment as driven by the first read buffer, and for subsequently driving a voltage onto the column read ouφut node corresponding to the voltage level sensed upon the second read line segment 10 An apparatus as in claim 9 wherein the first and second read line segments occupy a single wiring channel withm the memory array 1 1 An apparatus as in claim 10 wherein the memory array is a multiple read-port memory array 12. An apparatus as m claim 1 1 wherem the memory array is configured as a register file of a processor 13 An apparatus as m claim 12 wherem registers corresponding to the second plurality of memory cells have a higher frequency of reference than registers corresponding to the first plurality of memory cells 14 An apparatus for readmg a selected memory cell from a column of memory cells withm a memory array of an integrated circuit, comprising a plurality "M" of read Ime segments arranged sequentially and in a non-overlapping manner, wherem "ι"= 1 , 2, ... "M", each read line segment "I" of the plurality "M" of read line segments having coupled thereto an associated plurality of memory cells; a plurality "M-l " of read buffers, wherein "j" = 1, 2, ... "M-l ", each read buffer "j" ofthe plurality "M-l" of read buffers havmg an mput coupled to a respective read Ime segment "j" for sensmg a voltage level thereon, and each read buffer "j" further having an ouφut coupled to an adjacent read Ime segment "j+1 " for driving, when enabled, a voltage thereon corresponding to the voltage level sensed on its respective input, a read buffer "M" having an input coupled to a respective read line segment "M" for sensmg a voltage level thereon, and having an ouφut coupled to a column read ouφut node for driving a voltage thereon corresponding to the voltage level sensed on its respective input; and wherein a logic state stored within a selected memory cell associated with a read Ime segment "k" of the column of memory cells, wherein "k" = 1, 2, "M". is sensed and conveyed to the column read ouφut node by enabling the read buffers "k" through "M" disposed between the read Ime segment "k" and the column read ouφut node, if any such read buffer is not already enabled 15 An apparatus as in claun 14 wherein "M" is equal to the integer 2 16 An apparatus as in claim 14 wherein "M" is equal to the integer 3 17 An apparatus as in claim 14 wherein "M" is an integer greater than 3 18 Withm a memory array of an mtegrated circuit, a method for readmg a selected memory cell from a column of memory cells and conveymg mformation read therefrom to a column read ouφut node, comprising the steps of providmg a plurality of read Ime segments for the column of memory cells, wherein a respective portion ofthe memory cells within the column are coupled to each respective one of the plurality of read une segments. enablmg the selected memory cell to drive a signal onto the respective read line segment coupled thereto, said signal correspondmg to a logic value stored previously into the selected memory cell sensing the signal developed on the read line segment associated with the selected memory cell dnvmg a correspondmg signal to the previously-sensed signal onto an adjacent read Ime segment, said adjacent read Ime segment disposed between the selected read Ime segment and the column read ouφut node, and buffenng the correspondmg signal on the adjacent read Ime segment to the column read ouφut node by way of any intervening read Ime segments disposed therebetween 19 A method as in claim 18 wherein the sensing step is performed using a read buffer having an mput coupled to the selected read line segment, and having an ouφut coupled to the adjacent read line segment 20 A method as in claun 19 wherem the sensmg step further comprises enablmg the read buffer usmg a signal derived from upper-order row addresses ofthe memory array

Inventors: CALVIN R TODD, MCMINN BRIAN D, CALVIN, R., TODD, MCMINN, BRIAN, D.
Applicants: ADVANCED MICRO DEVICES INC, ADVANCED MICRO DEVICES, INC.
Application year: 1996
Main classification: G11C8
IPC codes: G11C8