WO1993006552A1 - Random access compare array - Google Patents
Random access compare array Download PDFInfo
- Publication number
- WO1993006552A1 WO1993006552A1 PCT/US1992/007884 US9207884W WO9306552A1 WO 1993006552 A1 WO1993006552 A1 WO 1993006552A1 US 9207884 W US9207884 W US 9207884W WO 9306552 A1 WO9306552 A1 WO 9306552A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- compare
- random access
- match
- row
- address
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C15/00—Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0893—Caches characterised by their organisation or structure
- G06F12/0895—Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/02—Comparing digital values
Definitions
- This invention relates to architectures for a data cache, and to the circuit design of data cache com- ponents which enable the cache to operate at high speed.
- a data cache is herein meant an electronic circuit which stores multiple words of digital data and which also stores a respective compare address for each data word that is used in accessing a particular word of data.
- Each data word can be any type of digital informa ⁇ tion, such as a computer operand or a computer instruction for example.
- One data cache architecture of the prior art consists essentially of a CAM (content addressable memory) in combination with a DATA RAM (random access memory).
- a compare address is sent to the CAM where it is compared with a plurality of N registers.
- a drawback, however, of the above cache architec ⁇ ture is that the speed of the cache is limited by the speed of the CAM plus the speed of the RAM. This is because the CAM compare operation must be completed before the RAM read operation can begin. Further, an additional drawback is that as the number of registers in the CAM is increased, then a point is quickly reached where the CAM cannot be implemented on an integrated circuit chip. This is because each register produces a MATCHi signal which goes off the chip, and the total number of input/output pins on even the most advanced chips are limited to less than three- hundred.
- a second data cache architecture which is an improvement over the above cache, is comprised of an ADDRESS RAM and a comparator in combination with the DATA RAM.
- the compare address is partitioned into a high order portion Ag and a low order portion A L and, address portion A. L is used to read an address from the ADDRESS RAM and a data word the DATA RAM is parallel. Then, the address that is read from the ADDRESS RAM is compared to Ag. If a match occurs, the data from the DATA RAM is valid; otherwise the data is invalid.
- the above des ⁇ cribed I/O pin limitation problem is overcome since only one comparison is made and so the multiple MATCHi signals are eliminated.
- the speed of the cache becomes limited by the speed of the ADDRESS RAM plus the speed of the comparator. That is because the compare operation cannot occur until after the ADDRESS RAM is read.
- a primary object of the invention is to provide a novel circuit, hereinafter called a random access compare array, which greatly increases the operating speed of a cache and which • is not pin limited when imple ⁇ mented on an integrated circuit chip.
- a random access compare array includes a plurality of multi- bit comparator circuits on an integrated circuit chip.
- Each of the comparator circuits has first and second input ports, has a respective multi-bit register coupled to the first port, and generates a respective match signal when the second port receives a compare address that equals the bits of the register on the first port.
- a compare address distribution circuit is included on the chip which receives the compare address and sends the compare address to the second port on all of the comparator circuits.
- a match selection circuit is included on the chip which receives a select address and in response selects a group of several of the comparator circuits.
- the match selection circuit passes a single match signal from the group of selected comparator circuits to a single output terminal of the chip; and thus the number of match signals that are generated on the chip is not limited by the chip's input/output pins.
- the match selection circuit selects all of the compare circuits of a group by generating a separate selection signal for that group; and, each multi- bit compare circuit in the group loads that selection signal with an input capacitance that is substantially less than the gate capacitance of a single transistor times the total number of bits in the compare circuit.
- the match selection circuit in ⁇ cludes a respective sense amplifier coupled to each match signal in a group, a respective selector coupled to each sense amplifier, an output sense amplifier coupled to all of the selectors, and no intervening multiplexor anywhere between the selected group and the output sense amplifier.
- each compare circuit shifts the voltages on a pair of conductors towards each other by half of a normal logic level when the first and second ports receive unequal bits, and it shifts the voltages on the conductors away from each other by half of a normal logic level when the first and second ports receive equal bits.
- a data cache can be constructed which operates more then 2% times faster than the prior art.
- Fig. 1 shows an overview of a random access compare array that is configured according to the present invention
- Fig. 2 shows a detailed circuit diagram of some of the components in the Figure 1 array
- Fig. 3 shows a detailed circuit diagram of some additional components in the Figure 1 array
- Fig. 4 provides an analysis of certain critical timing paths in the Figure 1 array
- Fig. 5 provides, for comparison purposes, an analysis of a critical timing path in a prior art cache.
- Fig. 6 shows how the random access compare array of Figures 1-4 is used in combination with a RAM to build a high speed cache in accordance with the present inven ⁇ tion.
- FIG. 1 shows an overview of a preferred embodiment of a random access compare array which is constructed according to the present invention. Included in this random access compare array are a plur ⁇ ality of multi-bit comparators 10 which are arranged on a semiconductor chip in rows and columns.
- each comparator 10 is labeled "comp”; the first row of com ⁇ parators 10 is labeled “Ri”; the last row is labeled “R ⁇ "; the first column is labeled "Ci; the second column is labeled "C 2 "; and the last column is labeled "C y " .
- the number of rows "x" ranges from thirty-two to four-thousand-ninety-six, and the number of columns "y” ranges from four to sixty-four.
- the rows and columns are selected such that the resulting array is nearly square.
- Each comparator 10 has a multi-bit input port PI and a multi-bit input port P2. Each comparator also has a respective multi-bit register 11 (labeled "REG") coupled to its' input port PI.
- each comparator 10 gen ⁇ erates a match signal on a respective conductor 12 which indicates when the second port P2 receives a compare address A H that equals the content of register 11 on port PI.
- This match signal from the comparator 10 at row Ri and column C x is labeled M ltl ; and from the comparator at row R and column C y/ the match signal is labeled ⁇ y .
- a compare address distribution circuit which includes com ⁇ ponents 20, 21-1 thru 21-4, and 22-1 thru 22-Y.
- Component 20 is a multi-bit bus that receives the compare address A H .
- Components 21-1 thru 21-Y are buffer circuits which repower the compare address A H , and one such buffer circuit is disposed in each column.
- Components 22-1 thru 22-Y are multi-bit busses that are respectively disposed in the columns and which carry the compare address A H from the buffer circuits to input port P2 of all of the comparators 10.
- a match selection circuit which includes components 30,
- Component 30 is a buffer circuit.
- Components 31- 1 thru 31-X are respective row decoder circuits which are respectively disposed in each of the rows.
- Component 32 is a selector circuit, and one selector circuit is associated with each comparator 10.
- Components 33-1 thru 33-4 are respective column sense amplifiers (labeled COLSA), and one sense amplifier is provided in each column.
- 34-1 thru 34-Y are respective column select circuits
- Component 35 is an output bus from all of the column selectors.
- Component 36 is an output sense amplifier for output bus 35; and component 37 is a single output conductor from the sense amplifier 36.
- a row select address A ⁇ is sent to component 30, and a column select address A LC is sent to components 34-1 thru 34-Y.
- components 30, 31-1 thru 31-X, and 32 select one row of comparator circuits 10. This row selection occurs in parallel with the generation of the match signals on the conductors 12.
- components 33-1 thru 33-Y, 34-1 thru 34- Y, 35, 36 and 37 pass one match signal from the selected row to the output conductor 37. This randomly selected match signal in FIG. 1 is labeled "RMATCH".
- the multi-bit bus 20 includes "k" conductors 20-1 through 20-k, where “k” is the number of bits in the compare address Ag. Each of the conductors 20-1 through 20-k carries a respective bit of that compare address. For most practical cases, “k” will range from ten to sixty; however, “k” can be any positive integer. Also as FIG. 2 shows, the buffer circuit 21-Y includes “k” logic gates 21-Y1 through 21-Yk, each of which has an inverting and non-inverting output.
- match circuit 10 has "k" stages 10-1 thru 10-k. All of the components in match circuit 10 are identified with reference numerals 41 thru 49 and 12. Components 41, 42, 43, 44, 48 and 49 are N- channel field effect transistors; component 47 is a P- channel field effect transistor; component 46 is a resis ⁇ tor; and components 45a, 45b and 12 are conductors. Com ⁇ ponents 41-44 are repeated for each of the "k" stages. All of these match circuit components are interconnected at row Ry. of column C y as shown; and at all of the other row-column locations, the match circuits 10 have the same structure.
- each register 11 includes "k" set-reset latches 11-1 thru 11-k.
- match circuit 10 compares the "k" bits in register 11 to the "k" bits on bus 20. If a match occurs, the match signal M-. >y on conductor 12 is generated as a low logic level (ground). If a mis-match occurs, signal ⁇ y is generated as a high (+V) logic level. Generation of signal M ⁇ y occurs as follows.
- Conductor 45a is further coupled to the gate of the N-channel transistors 48 and 49, and the +V voltage on conductor 45a turns those transistors ON. Due to the "ON" state of the transistors 48 and 49, signal V M . on conductor 45b and the match signal M- ⁇ y on conductor 12 are shorted to ground.
- a conductive path does exist from conductor 45a to conductor 45b through one or more stages 10-1 thru 10-k of the match circuit 10. Due to that conductive path, signal V M+ on conductor 45a drops and signal V M _ on conductor 45b rises. This reduces the gate- to-source voltage of transistor 48 to the point where transistor 48 turns OFF. At the same time, the reduced voltage V H+ on conductor 45a causes transistor 47 to turn ON. Thus with transistor 47 ON and transistor 48 OFF, the match signal M- ⁇ y on conductor 12 rises to +V.
- the transistors 41-44 are selected such that when all of stages 10-1 thru 10-k conduct, the total resistance through those stages is near zero; and, preferably transistor 49 is selected such that its resis ⁇ tance in its ON state approximates that of resistor 46.
- the voltages V M+ and V M _ both equal +V/2 when all of the bits in register 11 miscompare with all of the bits on bus 20. This means that the voltage swing that occurs on the conductors 45a and 45b when match changes to a total mismatch (and vice versa) is only one-half of supply voltage +V. Consequently, the match/mismatch can be detected in less time then it would otherwise take to generate a full voltage swing of +V.
- row selector 32 includes four N-channel transistors 51-54 and one inverter 55; and row decoder 31-x includes an AND gate 57, a NAND/- AND gate 58, and an Inverter 59. All of these components are interconnected as shown.
- gate 58 re ⁇ ceives all of the address bits that are needed to decode row R ⁇ . For simplicity, only one such bit is shown in FIG. 2, and the remaining bits are implied by the multiple input leads 58a.
- Each bit to gate 58 comes from a respective logic gate in the Am address buffer circuit 20, similar to the illustrated gate 20-1.
- Gate 58 has its non-inverting output AND'd with a clock signal CK by AND gate 57, and that produces signal R0W x which selects all of the match circuits 10 in row R * during a compare-read operation. Gate 58 also has its inverting output coupled to Inverter 59, and that produces signal WR0W x which selects a register 11 during a write operation. Selection of the match circuits occurs by sending signal ROW., to the gate of transistors 51 and 53 in all of the row selection circuits 32 of row R . In response to signal ROW x being high, transistors 51 and 53 turn ON.
- transistor 52 If signal M-. ⁇ on conductor 12 is high (indicating a mismatch), transistor 52 will turn ON, and the M ⁇ output of row selector 32 will be coupled to ground through transistors 51 and 52. Conversely, if signal M ⁇ y on conductor 12 is low (indicating a match), transistor 54 will turn ON, and the My output of row selector 32 will be coupled to ground through transistors 53 and 54.
- signal R0W x from row decoder 31-x is loaded down capaci- tively by only two transistors 51 and 53 for each match circuit in row R * .
- Such capacitive loading is approximately "k" times lower than that which would occur if signal R0W x had to drive two transistors for each stage of each match circuit in row R * . Consequently, signal R0W x can switch much faster than it otherwise could if each stage of each match circuit were a capacitive load.
- the output signals My and My are sent to the column sense amplifier 33-Y as illustrated in FIG. 3.
- the column sense amplifier 33-Y is made of six P-channel transistors 61-66 and three N-channel transistors, all of which are intercon ⁇ nected as shown.
- Sense amplifier 33-Y operates as follows. Initially, when the clock signal CK is low, tran- sistor 69 turns OFF and transistors 63 and 66 turn ON. When that occurs, transistors 61 and 62 conduct until the signals My and My are raised to the +V supply voltage minus the threshold voltage of the P-channel transistor 61 (or 62); and, transistors 64 and 65 conduct until the output signals MSAy and MSA T from the sense amplifier also are raised to that same voltage.
- transistor 69 turns ON, and transistors 63 and 66 turn OFF.
- transistor 69 turns ON, and transistors 63 and 66 turn OFF.
- one of the MATCH signals My or M ⁇ will be coupled to ground as was explained above. If signal My goes to ground, then transistor 67 turns OFF; and, that keeps the sense amplifier output signal MSAy high. Conversely, if signal y goes to ground, then transistor 68 turns OFF; and, that keeps the sense amplifier output signal MSA y high.
- MSAy and MSAy are sent to the column selector 34-Y. Such coupling is repeated for each of the columns Cx thru C ⁇ .
- Column selector 34-Y includes four N-channel transistors 71, 72, 73 and 74, one AND gate 75, and one buffer 76.
- AND gate 75 decodes the column address A ⁇ .
- the gates 75 and 76 respectively generate output signals COLy and WCOLy which are high only when column Cy is selected.
- a high COLy signal turns ON transistors 72 and 74. If the column sense amplifier output signal MSAy also is high, transistor 71 turns ON and the column selector output signal M is grounded. Conversely, if the column sense amplifier output signal MSAy is high, transistor 73 turns ON and the column selector output signal M is ground- ed.
- FIG. 4 shows in detail the speed with which the randomly selected match signal RMATCH is generated.
- the compare address A H is sent on bus 20; and simultaneously, the row select address Am and column select address A ⁇ are respectively sent to the row and column selectors.
- signals propagate through buffer 21-Y and comparator 10 to generate the MATCH signal ⁇ ; and in response to address A u , signals simul- taneously propagate through buffer 30 and row decoder 31- X to generate the ROW x signal.Since the match signal M- ⁇ y and the row select signal ROW x are generated in parallel, the overall speed with which the randomly selected match signal RMATCH is generated is increased.
- Speed is further increased because the match signal M ⁇ y is generated in the comparator 10 by switching the voltages V M+ and V M _ on two conductors 45a and 45b through a voltage swing of only half the supply voltage +v. This was explained in conjunction with FIG. 2. Also, speed is increased even further since the ROW x signal from the row decoder 31-x drives only a small number of transistors relative to the total number of stages "k" in comparator
- FIG. 5 shows how the prior art used a RAM 80 in combination with a comparator 81 to generate a quasi random match signal RMATCH' .
- a set of memory cells which contains an address is randomly selected by row address A R and a column address Ac. Selection begins when . address A R is sent to an address buffer 80a in the RAM 80. From the buffer 80a, signals propagate in a serial fashion through a row decoder 80b, a word line driver 80c, a memory cell 80d, a multiplexor 80e, and a sense amplifier 80f. This reads the address from the RAM 80 which in turn is compared by comparator 81 to the compare address A H .
- the number of columns in the RAM 80 is "k" times larger the an the number of columns in FIG. 4. This is because in FIG. 5 there is one column per bit, whereas in FIG. 4 there is one column per compare circuit. Due to this difference, "k" multiplexors must be included in the RAM 80 in order to keep the number of column sense amplifiers from being too large and comparable to that of FIG. 4; and these multiplexors add delay to the FIG. 5 circuit.
- each memory cell 80d is disposed at the intersection of each column and each row in the RAM 80 of FIG. 5, a memory cell 80d is disposed; and each memory cell adds a capacitive load to the row.
- FIG. 4 there is only one row selector for every "k" stages of comparator which adds a capacitive load to the row. Consequently, to drive the extra row capaci ⁇ tance in the FIG. 5 RAM 80, the row line driver must be provided; and that adds delay to the FIG. 5 circuit.
- the prior art comparator 81 in FIG. 5 does not internally generate the signals V M+ and V M _ that were described in conjunction with FIG. 2 as switching in opposite directions by one-half of a logic level +V.
- Conventional comparators generate a full logic level swing on one conductor to indicate a match/mismatch; and thus they operate slower.
- FIG's. 4 & 5 realistic estimates of actual delays in nano ⁇ seconds (ns) using a 0.8 micron CMOS three-level metal technology are shown in FIG's. 4 & 5 for each of the illustrated components. Adding those time delays in FIG. 4 from the address signal A H to the output signal RMATCH yields a total delay of 5.9 ns; whereas adding those time delays in FIG.
- FIG. 6 it shows how a random access compare array 90, which is constructed as described above via FIG's. 1-5, is used in combination with a RAM 91 as a data cache.
- the addresses Ag, m, and A LC are concatenated to form an address A of a memory space.
- Address A H makes up the high order portion of address A
- address Am together with address A LC make up the low order portion of address A.
- the random access compare array 90 and the RAM 91 can be on separate integrated circuit chips or on a single chip.
- the random access compare array 90 and the RAM are simultaneously addressed by the low order portion of address A (i.e. - by A m concatenated with A LC ) .
- the high order portion of address A i.e. - Ag
- the RMATCH signal will go true (or false) before the DATA is available from the memory 91; and that provides time for a decision to be made by digital control logic (- not shown) on how to treat the DATA from RAM 91. If the RMATCH signal is true, the DATA from the RAM 91 is valid and can be used; otherwise, the DATA from the RAM 91 is invalid and needs to be updated.
- each of the registers 11 includes and AND gate 11a as is shown in FIG. 2. Gate 11a clocks the address A H on bus 20 into register 11 as the logical AND of signal WR0W x from the row decoder, signal WCOLy from the column decoder, clock signal CK, and as externally gen ⁇ erated write enable signal WE.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Logic Circuits (AREA)
- Dram (AREA)
- Static Random-Access Memory (AREA)
Abstract
A random access compare array, on an integrated circuit chip is comprised of a plurality of multi-bit comparator circuits (10). Each comparator circuit is coupled to a respective multi-bit register (11); and, each comparator circuit is also coupled to an address distribution circuit (21-1 through 21-Y) which receives a compare address (AH?) and sends the compare address to all of the comparator circuits. A respective match signal (M1,1? to MX,Y?) is generated by each comparator circuit which indicates when the compare address and the content of the register that is coupled to the comparator are equal. Also, operating in parallel with the generation of the match signals is a match selection circuit (30, 31-1 through 31-X, 32, 33-1 through 33-Y, 34-1 through 34-Y, 35, 36) which receives a select address (ALR? and ALC?) and in response passes one match signal (M) to a single output pin (37). Due to the parallel operation of the compare-select circuits, the speed of operation is greatly increased; and due to the selective passing of any of the match signals to a single output pin, the size of the array is not pin limited.
Description
RANDOM ACCESS COMPARE ARRAY
BACKGROUND OF THE INVENTION
This invention relates to architectures for a data cache, and to the circuit design of data cache com- ponents which enable the cache to operate at high speed.
By a data cache is herein meant an electronic circuit which stores multiple words of digital data and which also stores a respective compare address for each data word that is used in accessing a particular word of data. Each data word can be any type of digital informa¬ tion, such as a computer operand or a computer instruction for example.
One data cache architecture of the prior art consists essentially of a CAM (content addressable memory) in combination with a DATA RAM (random access memory). In operation, a compare address is sent to the CAM where it is compared with a plurality of N registers. Each such compare produces a respective match output signal MATCHi (i=l, 2, ...N); and those MATCH£ signals are then sent from
the CAM to the DATA RAM where they select respective data words.
A drawback, however, of the above cache architec¬ ture is that the speed of the cache is limited by the speed of the CAM plus the speed of the RAM. This is because the CAM compare operation must be completed before the RAM read operation can begin. Further, an additional drawback is that as the number of registers in the CAM is increased, then a point is quickly reached where the CAM cannot be implemented on an integrated circuit chip. This is because each register produces a MATCHi signal which goes off the chip, and the total number of input/output pins on even the most advanced chips are limited to less than three- hundred. A second data cache architecture, which is an improvement over the above cache, is comprised of an ADDRESS RAM and a comparator in combination with the DATA RAM. In operation, the compare address is partitioned into a high order portion Ag and a low order portion AL and, address portion A.L is used to read an address from the ADDRESS RAM and a data word the DATA RAM is parallel. Then, the address that is read from the ADDRESS RAM is compared to Ag. If a match occurs, the data from the DATA RAM is valid; otherwise the data is invalid. With this second architecture, the above des¬ cribed I/O pin limitation problem is overcome since only one comparison is made and so the multiple MATCHi signals are eliminated. However, with this second architecture, the speed of the cache becomes limited by the speed of the ADDRESS RAM plus the speed of the comparator. That is because the compare operation cannot occur until after the ADDRESS RAM is read.
Accordingly, a primary object of the invention is to provide a novel circuit, hereinafter called a random access compare array, which greatly increases the operating speed of a cache and which•is not pin limited when imple¬ mented on an integrated circuit chip.
BRIEF SUMMARY OF THE INVENTION
In accordance with the present invention, a random access compare array includes a plurality of multi- bit comparator circuits on an integrated circuit chip. Each of the comparator circuits has first and second input ports, has a respective multi-bit register coupled to the first port, and generates a respective match signal when the second port receives a compare address that equals the bits of the register on the first port. Also, a compare address distribution circuit is included on the chip which receives the compare address and sends the compare address to the second port on all of the comparator circuits. Further, a match selection circuit is included on the chip which receives a select address and in response selects a group of several of the comparator circuits. This selection occurs in parallel with the generation of the match sig¬ nals; and due to this parallel operation, the speed of the array is substantially increased. Also in response to the select address, the match selection circuit passes a single match signal from the group of selected comparator circuits to a single output terminal of the chip; and thus the number of match signals that are generated on the chip is not limited by the chip's input/output pins.
To further increase the speed of the random access compare array, the match selection circuit selects all of the compare circuits of a group by generating a separate selection signal for that group; and, each multi- bit compare circuit in the group loads that selection signal with an input capacitance that is substantially less than the gate capacitance of a single transistor times the total number of bits in the compare circuit. To still further increase speed, the match selection circuit in¬ cludes a respective sense amplifier coupled to each match signal in a group, a respective selector coupled to each sense amplifier, an output sense amplifier coupled to all of the selectors, and no intervening multiplexor anywhere between the selected group and the output sense amplifier.
To even further increase speed, each compare circuit shifts the voltages on a pair of conductors towards each other by half of a normal logic level when the first and second ports receive unequal bits, and it shifts the voltages on the conductors away from each other by half of a normal logic level when the first and second ports receive equal bits.
By using the above random access compare array in combination with a RAM, a data cache can be constructed which operates more then 2% times faster than the prior art.
BRIEF DESCRIPTION OF THE DRAWINGS
Various features and advantages of the invention are described herein in conjunction with the accompanying drawings, wherein;
Fig. 1 shows an overview of a random access compare array that is configured according to the present invention; Fig. 2 shows a detailed circuit diagram of some of the components in the Figure 1 array;
Fig. 3 shows a detailed circuit diagram of some additional components in the Figure 1 array;
Fig. 4 provides an analysis of certain critical timing paths in the Figure 1 array;
Fig. 5 provides, for comparison purposes, an analysis of a critical timing path in a prior art cache; and.
Fig. 6 shows how the random access compare array of Figures 1-4 is used in combination with a RAM to build a high speed cache in accordance with the present inven¬ tion.
DETAILED DESCRIPTION
Referring now to FIG. 1, it shows an overview of a preferred embodiment of a random access compare array which is constructed according to the present invention. Included in this random access compare array are a plur¬ ality of multi-bit comparators 10 which are arranged on a semiconductor chip in rows and columns. In FIG. 1, each comparator 10 is labeled "comp"; the first row of com¬ parators 10 is labeled "Ri"; the last row is labeled "R^"; the first column is labeled "Ci; the second column is labeled "C2"; and the last column is labeled "Cy" . For most practical arrays, the number of rows "x" ranges from thirty-two to four-thousand-ninety-six, and the number of columns "y" ranges from four to sixty-four. Preferably, the rows and columns are selected such that the resulting array is nearly square.
Each comparator 10 has a multi-bit input port PI and a multi-bit input port P2. Each comparator also has a respective multi-bit register 11 (labeled "REG") coupled to its' input port PI. In operation, each comparator 10 gen¬ erates a match signal on a respective conductor 12 which indicates when the second port P2 receives a compare address AH that equals the content of register 11 on port PI. This match signal from the comparator 10 at row Ri and column Cx is labeled Mltl; and from the comparator at row R and column Cy/ the match signal is labeled ^y.
Also in the FIG. 1 random access compare array is a compare address distribution circuit which includes com¬ ponents 20, 21-1 thru 21-4, and 22-1 thru 22-Y. Component 20 is a multi-bit bus that receives the compare address AH. Components 21-1 thru 21-Y are buffer circuits which repower the compare address AH, and one such buffer circuit is disposed in each column. Components 22-1 thru 22-Y are multi-bit busses that are respectively disposed in the columns and which carry the compare address AH from the buffer circuits to input port P2 of all of the comparators 10.
Further in the FIG. 1 random access compare array is a match selection circuit which includes components 30,
30-1 thru 31-X, 32, 33-1 thru 33-Y, 34-1 thru 34-Y, 35, 36, and 37. Component 30 is a buffer circuit. Components 31- 1 thru 31-X are respective row decoder circuits which are respectively disposed in each of the rows. Component 32 is a selector circuit, and one selector circuit is associated with each comparator 10. Components 33-1 thru 33-4 are respective column sense amplifiers (labeled COLSA), and one sense amplifier is provided in each column. Components
34-1 thru 34-Y are respective column select circuits
(labeled COLSEL), and one such circuit is associated with each column sense amplifier. Component 35 is an output bus from all of the column selectors. Component 36 is an output sense amplifier for output bus 35; and component 37 is a single output conductor from the sense amplifier 36.
In operation, a row select address A^ is sent to component 30, and a column select address ALC is sent to components 34-1 thru 34-Y. In response to the row select address A^, components 30, 31-1 thru 31-X, and 32 select one row of comparator circuits 10. This row selection occurs in parallel with the generation of the match signals on the conductors 12. Also, in response to the column select address A^, components 33-1 thru 33-Y, 34-1 thru 34- Y, 35, 36 and 37 pass one match signal from the selected row to the output conductor 37. This randomly selected match signal in FIG. 1 is labeled "RMATCH".
Turning now to FIG's. 2 and 3, additional details of the circuits which make up the above described FIG. 1 array will be described. As FIG. 2 shows, the multi-bit bus 20 includes "k" conductors 20-1 through 20-k, where "k" is the number of bits in the compare address Ag. Each of the conductors 20-1 through 20-k carries a respective bit of that compare address. For most practical cases, "k" will range from ten to sixty; however, "k" can be any positive integer.
Also as FIG. 2 shows, the buffer circuit 21-Y includes "k" logic gates 21-Y1 through 21-Yk, each of which has an inverting and non-inverting output. Each gate receives a respective bit of the compare address AH, and the outputs from each gate are sent to all of the registers 11 and all of the comparators 10 in column Cγ. For simplicity, only one comparator and one register is shown. In all of the other columns Cl, C2, etc. the buffer circuits 21-1, 21-2, etc. are constructed in a similar fashion. Further as FIG. 2 shows match circuit 10 has "k" stages 10-1 thru 10-k. All of the components in match circuit 10 are identified with reference numerals 41 thru 49 and 12. Components 41, 42, 43, 44, 48 and 49 are N- channel field effect transistors; component 47 is a P- channel field effect transistor; component 46 is a resis¬ tor; and components 45a, 45b and 12 are conductors. Com¬ ponents 41-44 are repeated for each of the "k" stages. All of these match circuit components are interconnected at row Ry. of column Cy as shown; and at all of the other row-column locations, the match circuits 10 have the same structure.
Likewise, as FIG. 2 shows, each register 11 includes "k" set-reset latches 11-1 thru 11-k. In opera¬ tion, match circuit 10 compares the "k" bits in register 11 to the "k" bits on bus 20. If a match occurs, the match signal M-.>y on conductor 12 is generated as a low logic level (ground). If a mis-match occurs, signal ^y is generated as a high (+V) logic level. Generation of signal M^y occurs as follows.
In the case where a match occurs, no conductive path exists from conductor 45a to conductor 45b through the transistors 41-44. That is, when transistor 41 is ON and transistor 43 is off in one particular stage, then tran¬ sistor 42 is off and transistor 44 is ON; and vice versa. Consequently, when a match occurs, conductors 45a and 45b are separated by an open circuit. Due to this open cir¬ cuit, the voltage VM+ on conductor 45a rises to +V since that conductor is coupled to the +V supply through resistor
46. Conductor 45a is also coupled to the gate of the P- channel transistor 47, and the +V voltage turns that transistor off. Conductor 45a is further coupled to the gate of the N-channel transistors 48 and 49, and the +V voltage on conductor 45a turns those transistors ON. Due to the "ON" state of the transistors 48 and 49, signal VM. on conductor 45b and the match signal M-^y on conductor 12 are shorted to ground.
During a mismatch, a conductive path does exist from conductor 45a to conductor 45b through one or more stages 10-1 thru 10-k of the match circuit 10. Due to that conductive path, signal VM+ on conductor 45a drops and signal VM_ on conductor 45b rises. This reduces the gate- to-source voltage of transistor 48 to the point where transistor 48 turns OFF. At the same time, the reduced voltage VH+ on conductor 45a causes transistor 47 to turn ON. Thus with transistor 47 ON and transistor 48 OFF, the match signal M-^y on conductor 12 rises to +V.
Preferably, the transistors 41-44 are selected such that when all of stages 10-1 thru 10-k conduct, the total resistance through those stages is near zero; and, preferably transistor 49 is selected such that its resis¬ tance in its ON state approximates that of resistor 46. With such a circuit design, the voltages VM+ and VM_ both equal +V/2 when all of the bits in register 11 miscompare with all of the bits on bus 20. This means that the voltage swing that occurs on the conductors 45a and 45b when match changes to a total mismatch (and vice versa) is only one-half of supply voltage +V. Consequently, the match/mismatch can be detected in less time then it would otherwise take to generate a full voltage swing of +V.
In the event that a miscompare occurs in only one of the stages 10-1 thru 10-N, the resistance from conductor 45a to conductor 45b will rise from the near zero resis- tance that it has when all of the stages miscompare. However, such an increased resistance will not adversely affect the operation of the comparator 10 so long as the
voltage drop across that resistance remains small enough to keep transistor 48 turned off.
Further as shown in FIG. 2, row selector 32 includes four N-channel transistors 51-54 and one inverter 55; and row decoder 31-x includes an AND gate 57, a NAND/- AND gate 58, and an Inverter 59. All of these components are interconnected as shown. In operation, gate 58 re¬ ceives all of the
address bits that are needed to decode row R^. For simplicity, only one such bit is shown in FIG. 2, and the remaining bits are implied by the multiple input leads 58a. Each bit to gate 58 comes from a respective logic gate in the Am address buffer circuit 20, similar to the illustrated gate 20-1. Gate 58 has its non-inverting output AND'd with a clock signal CK by AND gate 57, and that produces signal R0Wx which selects all of the match circuits 10 in row R* during a compare-read operation. Gate 58 also has its inverting output coupled to Inverter 59, and that produces signal WR0Wx which selects a register 11 during a write operation. Selection of the match circuits occurs by sending signal ROW., to the gate of transistors 51 and 53 in all of the row selection circuits 32 of row R . In response to signal ROWx being high, transistors 51 and 53 turn ON. If signal M-.^ on conductor 12 is high (indicating a mismatch), transistor 52 will turn ON, and the Mγ output of row selector 32 will be coupled to ground through transistors 51 and 52. Conversely, if signal M^y on conductor 12 is low (indicating a match), transistor 54 will turn ON, and the My output of row selector 32 will be coupled to ground through transistors 53 and 54.
With the above described row selection circuitry, signal R0Wx from row decoder 31-x is loaded down capaci- tively by only two transistors 51 and 53 for each match circuit in row R*. Such capacitive loading is approximately "k" times lower than that which would occur if signal R0Wx had to drive two transistors for each stage of each match circuit in row R*. Consequently, signal R0Wx can switch
much faster than it otherwise could if each stage of each match circuit were a capacitive load.
From row selector 32 in column Cy, the output signals My and My are sent to the column sense amplifier 33-Y as illustrated in FIG. 3. There, the column sense amplifier 33-Y is made of six P-channel transistors 61-66 and three N-channel transistors, all of which are intercon¬ nected as shown. Sense amplifier 33-Y operates as follows. Initially, when the clock signal CK is low, tran- sistor 69 turns OFF and transistors 63 and 66 turn ON. When that occurs, transistors 61 and 62 conduct until the signals My and My are raised to the +V supply voltage minus the threshold voltage of the P-channel transistor 61 (or 62); and, transistors 64 and 65 conduct until the output signals MSAy and MSAT from the sense amplifier also are raised to that same voltage.
Thereafter, when the clock signal CK goes high, transistor 69 turns ON, and transistors 63 and 66 turn OFF. Also, when the clock signal CK goes high, one of the MATCH signals My or Mτ will be coupled to ground as was explained above. If signal My goes to ground, then transistor 67 turns OFF; and, that keeps the sense amplifier output signal MSAy high. Conversely, if signal y goes to ground, then transistor 68 turns OFF; and, that keeps the sense amplifier output signal MSAy high.
From the column sense amplifier 33-Y, the signals
MSAy and MSAy are sent to the column selector 34-Y. Such coupling is repeated for each of the columns Cx thru Cγ.
All of the column selectors then have their outputs coupled together to the final output sense amplifier 36.
Column selector 34-Y includes four N-channel transistors 71, 72, 73 and 74, one AND gate 75, and one buffer 76. AND gate 75 decodes the column address A^. Thus, the gates 75 and 76 respectively generate output signals COLy and WCOLy which are high only when column Cy is selected. A high COLy signal turns ON transistors 72 and 74. If the column sense amplifier output signal MSAy also
is high, transistor 71 turns ON and the column selector output signal M is grounded. Conversely, if the column sense amplifier output signal MSAy is high, transistor 73 turns ON and the column selector output signal M is ground- ed. Those signal M and M are then sent to the output sense amplifier 36, whose structure and sensing operation are the same as that of the above described column sense amplifier 33-Y. In response to the M and M signals, amplifier 36 generates the randomly selected match signal RMATCH on output conductor 37.
Considering now FIG. 4, it shows in detail the speed with which the randomly selected match signal RMATCH is generated. To begin the RMATCH signal generation, the compare address AH is sent on bus 20; and simultaneously, the row select address Am and column select address A^ are respectively sent to the row and column selectors. In response to the compare address AH, signals propagate through buffer 21-Y and comparator 10 to generate the MATCH signal ^; and in response to address Au, signals simul- taneously propagate through buffer 30 and row decoder 31- X to generate the ROWx signal.Since the match signal M-^y and the row select signal ROWx are generated in parallel, the overall speed with which the randomly selected match signal RMATCH is generated is increased. Speed is further increased because the match signal M^y is generated in the comparator 10 by switching the voltages VM+ and VM_ on two conductors 45a and 45b through a voltage swing of only half the supply voltage +v. This was explained in conjunction with FIG. 2. Also, speed is increased even further since the ROWx signal from the row decoder 31-x drives only a small number of transistors relative to the total number of stages "k" in comparator
10. This was also explained in conjunction with FIG. 2.
From the comparator 10 and row decoder 31-x, signals propagate through row selector 32, columns sense amplifier 33-Y, column selector 34-Y, and output sense amplifier 36 to produce the randomly selected match signal
RMATCH. Along this signal path, no multiplexors are included to select a column. Elimination of all multi¬ plexors is possible because there is only one column per comparator circuit. If by comparison, there were one column for each stage of each match circuit, then multi¬ plexors would have to be inserted between the columns and the sense amplifier in order to keep the total number of sense amplifiers from being too large. This multiplexor elimination further increases speed. For comparison purposes, FIG. 5 shows how the prior art used a RAM 80 in combination with a comparator 81 to generate a quasi random match signal RMATCH' . In the RAM 80, a set of memory cells which contains an address is randomly selected by row address AR and a column address Ac. Selection begins when. address AR is sent to an address buffer 80a in the RAM 80. From the buffer 80a, signals propagate in a serial fashion through a row decoder 80b, a word line driver 80c, a memory cell 80d, a multiplexor 80e, and a sense amplifier 80f. This reads the address from the RAM 80 which in turn is compared by comparator 81 to the compare address AH.
Generation of the RMATCH' signal via FIG. 5 occurs slower than the generating of the RMATCH signal via FIG. 4 for the following reasons. In FIG. 5, the reading of the RAM 80 and the comparing via comparator 81 occur in series; whereas in FIG. 4, the comparing in match circuit 10 and selecting via row decoder 31-X occur in parallel.
Further in FIG. 5, the number of columns in the RAM 80 is "k" times larger the an the number of columns in FIG. 4. This is because in FIG. 5 there is one column per bit, whereas in FIG. 4 there is one column per compare circuit. Due to this difference, "k" multiplexors must be included in the RAM 80 in order to keep the number of column sense amplifiers from being too large and comparable to that of FIG. 4; and these multiplexors add delay to the FIG. 5 circuit.
Also at the intersection of each column and each
row in the RAM 80 of FIG. 5, a memory cell 80d is disposed; and each memory cell adds a capacitive load to the row. By comparison, in FIG. 4, there is only one row selector for every "k" stages of comparator which adds a capacitive load to the row. Consequently, to drive the extra row capaci¬ tance in the FIG. 5 RAM 80, the row line driver must be provided; and that adds delay to the FIG. 5 circuit.
Also, the prior art comparator 81 in FIG. 5 does not internally generate the signals VM+ and VM_ that were described in conjunction with FIG. 2 as switching in opposite directions by one-half of a logic level +V. Conventional comparators generate a full logic level swing on one conductor to indicate a match/mismatch; and thus they operate slower. As a numerical example of what the above time delays are, realistic estimates of actual delays in nano¬ seconds (ns) using a 0.8 micron CMOS three-level metal technology are shown in FIG's. 4 & 5 for each of the illustrated components. Adding those time delays in FIG. 4 from the address signal AH to the output signal RMATCH yields a total delay of 5.9 ns; whereas adding those time delays in FIG. 5 from address AR to signal RMATCH' yields a total of 15.4 ns. In other words, the FIG. 4 circuit is over 2h times faster than the FIG. 5 circuit1 Referring now to FIG. 6, it shows how a random access compare array 90, which is constructed as described above via FIG's. 1-5, is used in combination with a RAM 91 as a data cache. In this application, the addresses Ag, m, and ALC are concatenated to form an address A of a memory space. Address AH makes up the high order portion of address A, and address Am together with address ALC make up the low order portion of address A. Depending on the size of the Fig. 6 cache, the random access compare array 90 and the RAM 91 can be on separate integrated circuit chips or on a single chip.
In operation, the random access compare array 90 and the RAM are simultaneously addressed by the low order
portion of address A (i.e. - by Am concatenated with ALC) . At the same time, the high order portion of address A (i.e. - Ag) is sent on the compare bus 20 to the random access compare array 90. Due to the speed of operation of the compare array 90, the RMATCH signal will go true (or false) before the DATA is available from the memory 91; and that provides time for a decision to be made by digital control logic (- not shown) on how to treat the DATA from RAM 91. If the RMATCH signal is true, the DATA from the RAM 91 is valid and can be used; otherwise, the DATA from the RAM 91 is invalid and needs to be updated.
An update is made by retrieving valid DATA from another memory source such as a magnetic disc (not shown); writing the valid DATA into the RAM 91 at the location that is addressed by A^ and ALC; and writing the compare address g into the register 11 of array 91 at the location that is addressed by the same A^ and ALC address. To perform the write into array 91, each of the registers 11 includes and AND gate 11a as is shown in FIG. 2. Gate 11a clocks the address AH on bus 20 into register 11 as the logical AND of signal WR0Wx from the row decoder, signal WCOLy from the column decoder, clock signal CK, and as externally gen¬ erated write enable signal WE.
A preferred embodiment of a random access compare array, as well as a data cache which incorporates that array, has now been described in detail. In addition, however, various changes and modifications can be made to the details of the preferred embodiment without departing from the nature and spirit of the invention. Accordingly, it is to be understood that the invention is not limited to the preferred embodiment but is defined by the appended claims.
Claims
1. A random access compare array, on an integrated circuit chip, which is comprised of: a plurality of multi-bit comparator circuits; each of said comparator circuits having first and second input ports, having a respective multi-bit register coupled to said first port, and having a means for generating a respective match signal when said second port receives an address that equals the bits of said register on said first port; an address distribution circuit which receives a compare address and sends said compare address to said second port on all of said comparator circuits; and, a match selection circuit which receives a select address and in response selects several of said comparator circuits in parallel with the generation of said match signals and passes a single match signal from said several comparator circuits to a single output terminal.
2. A random access compare array according to claim 1 wherein said multi-bit compare circuits and respec¬ tive multi-bit registers are disposed on said chip as a matrix of rows and columns; and wherein said match selec- tion circuit selects all of said compare circuits of one row in parallel with the generation of said match signals, and passes said single match signal from said one row of compare circuits to said single output terminal.
3. A random access compare array according to claim 2 wherein said match selection circuit selects all of said compare circuits of one row by generating a sep¬ arate row decode signal for that row; and wherein each multi-bit compare circuit loads said row decode signal with an input capacitance that is substantially less then the gate capacitance of a single transistor times the total number of bits in the compare circuit.
4. A random access compare array according to claim 2 wherein said match selection circuit includes respective column sense amplifiers in each column which sense all of the match signals in said one row, a respec¬ tive column selector connected to each of said column sense amplifiers, an output sense amplifier connected to all of said column selectors, and no intervening multiplexor anywhere between said selected row and said output sense amplifier.
5. A random access compare array according to claim 2 wherein each of said compare circuits includes a pair of voltage carrying conductors; and, a means for shifting the voltages on said conductors towards each other when said first and second ports receive unequal bits, and for shifting the voltages on said conductors away from each other when said first and second ports receive equal bits.
6. A random access compare array according to claim 2 wherein said semiconductor chip contains a certain number of input/output terminals and said compare circuits in said array outnumber said input/output terminals.
7. A random access compare array according to claim 2 in combination with a random access memory; said random access memory having a plurality of data words stored therein, and having a read address port which is coupled to receive said select address in parallel with said array such that said memory reads a stored data word in response to said select address while - in parallel therewith - said array selects one of said match signals.
8. A random access compare array in combination with a random access memory according to claim 7 wherein said match selection circuit selects all of said compare cir¬ cuits of one row by generating a separate row decode signal for that row; and wherein, each multi-bit circuit loads said row decode signal with an input capacitance that is substantially less then the gate capacitance of a single transistor times the total number of bits in the compare circuit.
9. A random access compare array in combination with a random access memory according to claim 8 wherein said match selection circuit includes respective column sense amplifiers in each column which sense all of the match signals in said one row, a respective column selector connected to each of said column sense amplifiers, an output sense amplifier connected to all of said column selectors, and no intervening multiplexor anywhere between said selected row and said output sense amplifier.
10. A random access compare array in combination with a random access memory according to claim 9 wherein each of said compare circuits includes a pair of voltage carrying conductors, and a means for shifting the voltages on said conductors towards each other when said first and second ports receive unequal bits and for shifting the voltages on said conductors away from each other when said first and second ports receive equal bits.
11. A random access compare array in combination with a random access memory according to claim 10 wherein said semiconductor chip contains a certain number of input/- output terminals and said compare circuits in said array outnumber said input/output terminals.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE69229039T DE69229039T2 (en) | 1991-09-19 | 1992-09-17 | DIRECT ACCESS COMPARISON MATRIX |
JP50623193A JP3581364B2 (en) | 1991-09-19 | 1992-09-17 | Random access comparison array |
EP92920631A EP0558733B1 (en) | 1991-09-19 | 1992-09-17 | Random access compare array |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/762,661 US5166660A (en) | 1991-09-19 | 1991-09-19 | Random access compare array |
US762,661 | 1991-09-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO1993006552A1 true WO1993006552A1 (en) | 1993-04-01 |
Family
ID=25065728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US1992/007884 WO1993006552A1 (en) | 1991-09-19 | 1992-09-17 | Random access compare array |
Country Status (5)
Country | Link |
---|---|
US (1) | US5166660A (en) |
EP (1) | EP0558733B1 (en) |
JP (1) | JP3581364B2 (en) |
DE (1) | DE69229039T2 (en) |
WO (1) | WO1993006552A1 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5369605A (en) * | 1993-07-07 | 1994-11-29 | Dell Usa, L.P. | Incremental search content addressable memory for increased data compression efficiency |
US6105081A (en) * | 1998-06-01 | 2000-08-15 | Advanced Micro Devices, Inc. | UART character matching used for address matching on a register-by-register basis |
US6198668B1 (en) * | 1999-07-19 | 2001-03-06 | Interval Research Corporation | Memory cell array for performing a comparison |
US6288948B1 (en) | 2000-03-31 | 2001-09-11 | Cypress Semiconductor Corp. | Wired address compare circuit and method |
IL136297A0 (en) * | 2000-05-22 | 2001-05-20 | Hywire Ltd | The implementation of a content addressable memory using a ram-cell structure |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4084230A (en) * | 1976-11-29 | 1978-04-11 | International Business Machines Corporation | Hybrid semiconductor memory with on-chip associative page addressing, page replacement and control |
US5034636A (en) * | 1990-06-04 | 1991-07-23 | Motorola, Inc. | Sense amplifier with an integral logic function |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4857882A (en) * | 1985-07-02 | 1989-08-15 | Vlsi Technology, Inc. | Comparator array logic |
US4896133A (en) * | 1987-02-10 | 1990-01-23 | Davin Computer Corporation | Parallel string processor and method for a minicomputer |
US5060143A (en) * | 1988-08-10 | 1991-10-22 | Bell Communications Research, Inc. | System for string searching including parallel comparison of candidate data block-by-block |
US5003286A (en) * | 1989-08-07 | 1991-03-26 | Motorola, Inc. | Binary magnitude comparator with asynchronous compare operation and method therefor |
-
1991
- 1991-09-19 US US07/762,661 patent/US5166660A/en not_active Expired - Lifetime
-
1992
- 1992-09-17 JP JP50623193A patent/JP3581364B2/en not_active Expired - Fee Related
- 1992-09-17 WO PCT/US1992/007884 patent/WO1993006552A1/en active IP Right Grant
- 1992-09-17 EP EP92920631A patent/EP0558733B1/en not_active Expired - Lifetime
- 1992-09-17 DE DE69229039T patent/DE69229039T2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4084230A (en) * | 1976-11-29 | 1978-04-11 | International Business Machines Corporation | Hybrid semiconductor memory with on-chip associative page addressing, page replacement and control |
US5034636A (en) * | 1990-06-04 | 1991-07-23 | Motorola, Inc. | Sense amplifier with an integral logic function |
Non-Patent Citations (1)
Title |
---|
IBM TECHNICAL DISCLOSURE BULLETIN. vol. 13, no. 5, October 1970, NEW YORK US pages 1317 - 1318 BIDWELL 'Memory with compare function in sense amplifier stage' * |
Also Published As
Publication number | Publication date |
---|---|
DE69229039T2 (en) | 1999-08-19 |
DE69229039D1 (en) | 1999-06-02 |
JP3581364B2 (en) | 2004-10-27 |
JPH06502952A (en) | 1994-03-31 |
EP0558733A1 (en) | 1993-09-08 |
US5166660A (en) | 1992-11-24 |
EP0558733B1 (en) | 1999-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108475226B (en) | Error code calculation on sensing circuit | |
US7463501B2 (en) | Semiconductor memory device | |
US7417881B2 (en) | Low power content addressable memory | |
KR101921433B1 (en) | Comparison operations in memory | |
US6901000B1 (en) | Content addressable memory with multi-ported compare and word length selection | |
US20050249021A1 (en) | Semiconductor memory device having memory architecture supporting hyper-threading operation in host system | |
US7095641B1 (en) | Content addressable memory (CAM) devices having priority class detectors therein that perform local encoding of match line signals | |
US5166660A (en) | Random access compare array | |
JP2779114B2 (en) | Associative memory | |
US4984215A (en) | Semiconductor memory device | |
US11967377B2 (en) | Dynamically gated search lines for low-power multi-stage content addressable memory | |
US7002860B2 (en) | Multilevel register-file bit-read method and apparatus | |
KR19990023422A (en) | Decode signal comparison circuit | |
US6914450B2 (en) | Register-file bit-read method and apparatus | |
JP2004110887A (en) | Data reading circuit of semiconductor device and data reading method | |
US5276846A (en) | Fast access memory structure | |
US6499089B1 (en) | Method, architecture and circuitry for independently configuring a multiple array memory device | |
US7849255B2 (en) | Pseudo-bidimensional randomly accessible memory using monodimensional sequentially-accessiblle memory structure | |
US6304103B1 (en) | FPGA using RAM control signal lines as routing or logic resources after configuration | |
JPH09288562A (en) | Multiple bit matching circuit | |
JP2708232B2 (en) | Semiconductor storage device | |
US6721842B2 (en) | Boundary addressable memory | |
US20020196670A1 (en) | Associative memory | |
JPS6321928B2 (en) | ||
JPH09306179A (en) | Associative memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): JP |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH DE DK ES FR GB GR IE IT LU MC NL SE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1992920631 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 1992920631 Country of ref document: EP |
|
WWG | Wipo information: grant in national office |
Ref document number: 1992920631 Country of ref document: EP |