WO2014112396A1 - マスク動作時に比較データを上書きするcamセル - Google Patents
マスク動作時に比較データを上書きするcamセル Download PDFInfo
- Publication number
- WO2014112396A1 WO2014112396A1 PCT/JP2014/000274 JP2014000274W WO2014112396A1 WO 2014112396 A1 WO2014112396 A1 WO 2014112396A1 JP 2014000274 W JP2014000274 W JP 2014000274W WO 2014112396 A1 WO2014112396 A1 WO 2014112396A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- comparison
- data
- circuit
- memory
- bit
- Prior art date
Links
Images
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
- G11C15/04—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 using semiconductor elements
-
- 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/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/30—Providing cache or TLB in specific location of a processing system
- G06F2212/304—In main memory subsystem
- G06F2212/3042—In main memory subsystem being part of a memory device, e.g. cache DRAM
Definitions
- the present disclosure relates to a semiconductor integrated circuit, and more particularly to a technique for operating a comparator, a memory element incorporating the comparator, an associative memory, and the like at high speed.
- TLB Translation Look-aside Buffer
- a TLB circuit generally includes a VPN memory array that stores virtual address page numbers (Virtual Page Number: hereinafter referred to as VPN) and a PPN that stores physical address page numbers (Physical) Page Number: hereinafter referred to as PPN). And a memory array.
- VPN Virtual Page Number
- PPN Physical address Page Number
- the VPN memory array is searched with a desired VPN, and when a matching VPN is found, the corresponding PPN is read from the PPN memory array.
- the page size is variable in order to effectively use the memory space.
- the effective number of VPN bits stored by the TLB changes according to the page size, specific bits are excluded from the search target.
- Patent Document 1 discloses a technique for changing the number of bits of an address to be converted in accordance with a supported page size.
- the semiconductor integrated circuit of Patent Document 1 has a detection signal line hierarchized, and a comparison result from a CAM (Content-addressable memory) cell is connected to a local detection line through a transistor, and The detection line is connected to the common detection line through a transistor controlled by data in the size bit.
- CAM Content-addressable memory
- a transistor including a transistor for controlling the presence or absence of a mask (a transistor controlled by data in a size bit) is connected in series between the local detection line and the ground power supply.
- a transistor controlled by data in a size bit is connected in series between the local detection line and the ground power supply.
- a mismatch is detected at a specific bit in the content addressable memory and the common signal line is driven to the ground level, it is necessary to drive the two-stage transistors between the local detection line and the ground power supply.
- it is difficult to increase the speed of the associative memory comparison operation and as a result, it is difficult to increase the speed of the associative memory.
- a storage element with a comparison function that compares stored comparison data and comparison data is controlled by a storage circuit that stores the comparison data and a write control signal in a write operation.
- the mask control signal indicates a mask operation when performing a comparison operation by the comparison circuit
- the write circuit overwrites the comparison data in the memory circuit, while the mask control signal indicates a non-mask operation. The comparison data is not overwritten in the storage circuit.
- the writing circuit overwrites the comparison data in the storage circuit when the mask control signal indicates the mask operation.
- the comparison operation the data to be compared stored in the storage circuit which is the comparison target with the comparison data is updated to the comparison data. Therefore, in the comparison circuit, the same data (comparison data) are compared, and a coincidence determination is output. That is, the comparison result is masked.
- the mask control signal indicates a non-masking operation
- the comparison data held in the memory circuit is not updated, so the comparison circuit compares the comparison data with the comparison data.
- the presence or absence of the comparison result mask is controlled without providing a control switch (for example, a transistor) for controlling the presence or absence of the comparison result mask at the output portion of the memory element with a comparison function.
- a control switch for example, a transistor
- the multi-bit associative memory includes a plurality of storage elements with a comparison function according to the first aspect.
- a plurality of the storage circuits are provided with a plurality of storage elements.
- Bit comparison data is stored, and multi-bit comparison data corresponding to the multi-bit comparison data is given to the plurality of comparison circuits, and output from the comparison circuits of the plurality of storage elements with comparison functions A logical sum of the comparison results is taken, and based on the logical sum, a coincidence comparison determination is made between the multi-bit comparison data and the multi-bit comparison data.
- the address translation buffer uses the multi-bit associative memory according to the second aspect, the multi-bit compared data is a logical address in a virtual address space, and the multi-bit The comparison data is a logical address to be searched, and the mask control signal is an output signal of a page size storage memory cell storing page size information of the virtual memory space.
- a 1-bit comparator that compares data to be compared with comparison data selects either the data to be compared or the comparison data under the control of a mask control signal
- a selection circuit that outputs the comparison result by comparing the output signal of the selection circuit and the comparison data.
- the selection circuit includes a mask operation in which the mask control signal is a mask operation. When the mask control signal indicates a non-masking operation, the comparison data is selected and output when the comparison data is selected and output.
- the selection circuit selects and outputs the comparison data, so the comparison circuit compares the same data (comparison data), and the coincidence determination is performed. Is output. That is, the comparison result is masked.
- the mask control signal indicates a non-masking operation
- the data to be compared and the comparison data are compared.
- the presence / absence of the comparison result mask is controlled without providing a control switch (for example, a transistor) for controlling the presence / absence of the comparison result mask at the output unit of the 1-bit comparator. can do. Therefore, it is possible to realize a high-speed operation of the 1-bit comparator.
- a multi-bit comparator includes a plurality of 1-bit comparators according to the fourth aspect.
- a plurality of selection circuits are provided with a multi-bit comparator.
- Comparison data is provided, and a plurality of comparison circuits are provided with multi-bit comparison data corresponding to the multi-bit comparison data, and the comparison results output from the comparison circuits of the plurality of 1-bit comparators And the multi-bit comparison data is compared with the multi-bit comparison data based on the logical sum.
- the present disclosure it is possible to increase the speed of the storage element with a comparison function.
- the memory area with a comparison function can be reduced in area and power.
- the memory element with a comparison function having a large bit width of search data has a high effect.
- FIG. 3 is a circuit diagram of a memory element with a comparison function according to the first embodiment.
- FIG. FIG. 3 is a state transition diagram of the circuit according to the first embodiment.
- FIG. 6 is a circuit diagram showing another example of the semiconductor integrated circuit according to the first embodiment. It is a circuit diagram which shows the other example of a write auxiliary circuit.
- FIG. 6 is a circuit diagram showing another example of the semiconductor integrated circuit according to the first embodiment.
- FIG. 6 is a circuit diagram showing another example of the semiconductor integrated circuit according to the first embodiment.
- FIG. 6 is a circuit diagram showing another example of the semiconductor integrated circuit according to the first embodiment.
- FIG. 6 is a circuit diagram showing another example of the semiconductor integrated circuit according to the first embodiment.
- 3 is a circuit diagram of an associative memory according to Embodiment 2.
- FIG. 6 is a circuit diagram of a comparator according to Embodiment 3.
- FIG. 1 is a circuit diagram of a semiconductor integrated circuit according to the present embodiment. As shown in FIG. 1, the semiconductor integrated circuit includes a storage element 101 with a comparison function.
- the memory element 101 with a comparison function receives a control by the memory circuit 102 for storing the data to be compared and the write control signal WCT and the mask control signal MSK.
- Write circuit 106 for writing comparison data WBL and NWBL) and a pair of overwriting comparison data SBLU and NSBLU (hereinafter simply referred to as overwriting comparison data SBLU and NSBLU), and storage data stored in the storage circuit 102 And a pair of comparison data SBL and NSBL (hereinafter simply referred to as comparison data SBL and NSBL), and a comparison circuit 103 for determining whether the stored data and the comparison data SBL and NSBL match or not, and a common detection line 113 is connected between the ground power supply and the comparison result of the comparison circuit 103 And a transistor ND3 receiving a certain comparison circuit output signal ND to the gate.
- the write circuit 106 receives the control by the write control signal WCT, writes the data to be compared WBL and NWBL to the storage circuit 102, and receives the control by the mask control signal MSK, and receives the overwriting comparison data SBLU and NSBLU. And an overwriting unit 105 for writing to the memory circuit 102.
- the storage circuit 102 is connected between the power supply and the storage node D1, the transistor PL1 connected between the power supply and the storage node D1, the transistor ND1 connected between the storage node D1 and the ground power supply, and the power supply and the storage node D2.
- a transistor PL2 and a transistor ND2 connected between the storage node D2 and the ground power supply are provided.
- a storage node D2 is connected to the gates of the transistors PL1 and ND1, and a storage node D1 is connected to the gates of the transistors PL2 and ND2.
- Data stored in the storage circuit 102 is output via storage nodes D1 and D2.
- the comparison circuit 103 includes transistors NE1, NE2 and transistors NE1, NE2 connected in series between a pair of comparison data lines 117 (hereinafter simply referred to as comparison data lines 117) to which comparison data SBL, NSBL are supplied.
- Transistors PE1 and PE2 connected in parallel are provided.
- a storage node D2 is connected to the gates of the transistors NE1 and PE2, and a storage node D1 is connected to the gates of the transistors NE2 and PE1.
- the node between the transistors NE1 and NE2 and the node between the transistors PE1 and PE2 are connected to the gate of the transistor ND3.
- the writing unit 104 includes a comparison data line 115 and a storage circuit 102 of a pair of comparison data lines 115 (hereinafter simply referred to as comparison data lines 115) to which comparison data WBL and NWBL are supplied.
- comparison data lines 115 A transistor NW1 connected between the storage node D1 and a transistor NW2 connected between the other compared data line 115 and the storage node D2 of the storage circuit 102 is provided.
- Write control signal WCT is applied to the gates of transistors NW1 and NW2.
- the overwriting unit 105 includes one overwriting comparison data line 116 out of a pair of overwriting comparison data lines 116 (hereinafter simply referred to as overwriting comparison data line 116) to which the overwriting comparison data SBLU and NSBLU are supplied.
- a transistor NU1 connected between the storage node D1 of the storage circuit 102 and a transistor NU2 connected between the other overwrite comparison data line 116 and the storage node D2 of the storage circuit 102 are provided.
- a mask control signal MSK is applied to the gates of the transistors NU1 and NU2.
- the transistors ND1, ND2, ND3, NE1, NE2, NW1, NW2, NU1, and NU2 are NMOS transistors
- the transistors PL1, PL2, PE1, and PE2 are PMOS transistors.
- the same comparison data is supplied to the overwriting comparison data line 116 and the comparison data line 117.
- FIG. 2A is a state transition diagram showing a state after a write operation
- FIG. 2B is a state showing a state after a determination operation as a non-mask operation that determines a match or a mismatch in a comparison operation
- FIG. 2C is a transition diagram illustrating a state after the mask operation for masking the comparison result in the comparison operation. In FIG. 2, “1” indicates that the signal is “HIGH”, and “0” indicates that the signal is “LOW”.
- the signal of the common detection line 113 is precharged to “HIGH”, and the comparison data SBL and NSBL are both set to “LOW” as shown in FIG. It has become.
- compared data WBL and NWBL are written and stored in the memory circuit 102 via the transistors NW1 and NW2.
- “HIGH” is stored as storage data in the storage node D1 of the storage circuit 102
- “LOW” is stored as storage data in the storage node D2. It shall be.
- “LOW” is stored as the storage data of the storage node D1
- “HIGH” is stored as the storage data of the storage node D2.
- one of the comparison data SBL and NSBL changes to “HIGH”.
- the transistors NE1, NE2, PE1, and PE2 of the comparison circuit 103 are turned on / off according to the storage data of the storage nodes D1 and D2 received from the storage circuit 102, and the comparison result is output as the comparison circuit output signal ND.
- the comparison circuit output signal ND is “LOW” and the transistor ND3 is “OFF”
- the storage data stored in the storage circuit 102 and the comparison data SBL, NSBL “Matching determination” (indicated in FIG. 2B and FIG. 2C as “matching”).
- the comparison circuit output signal ND is “HIGH” and the transistor ND3 is “ON”, it indicates that the storage data stored in the storage circuit 102 and the comparison data SBL and NSBL do not match. It is “mismatch determination” (denoted as “mismatch” in FIGS. 2B and 2C).
- the transistors NW1 and NW2 are assumed to be “OFF”.
- Example 1 An example of the determination operation (hereinafter referred to as Example 1) will be described in detail using the data pattern 1 in FIG. 2B and the circuit diagram in FIG.
- Example 1 since the storage data of the storage node D1 is “HIGH” and the storage data of the storage node D2 is “LOW”, the transistors NE2 and PE2 are “ON”, while the transistors NE1 and PE1 are “OFF”. To do. Further, since the mask control signal MSK is “LOW”, the transistors NU1 and NU2 are “OFF”.
- the comparison data SBL is “HIGH”, but since the transistors NE1 and PE1 are “OFF”, the comparison data SBL (“HIGH” data) is not supplied to the gate of the transistor ND3, and the gate of the transistor ND3. Remains “LOW”. Therefore, since the transistor ND3 is not “ON”, the determination result is “match determination”.
- the determination result for the data pattern 4 in FIG. 2B is “match determination”.
- Example 2 Another example of the determination operation (hereinafter referred to as Example 2) will be described in detail using the data pattern 2 in FIG. 2B and the circuit diagram in FIG.
- Example 2 since the storage data of the storage node D1 is “HIGH” and the storage data of the storage node D2 is “LOW”, the transistors NE2 and PE2 are “ON”, while the transistors NE1 and PE1 are “OFF”. To do. Further, since the mask control signal MSK is “LOW”, the transistors NU1 and NU2 are “OFF”.
- the comparison data NSBL is “HIGH” and the transistors NE2 and PE2 are “ON”, the comparison data NSBL (“HIGH” data) is supplied to the gate of the transistor ND3. As a result, the transistor ND3 is “ON” and the common detection line 113 is driven to “LOW”. That is, the determination operation is “mismatch determination”.
- the determination result for the data pattern 3 in FIG. 2B is “mismatch determination”.
- Example 3 an example of the mask operation (hereinafter referred to as Example 3) will be described in detail using the data pattern 1 of FIG. 2C and the circuit diagram of FIG.
- Example 3 the mask control signal MSK is “HIGH”, and the transistors NU1 and NU2 are “ON”. Therefore, the storage node D1 is overwritten with the comparison data SBLU, and the storage node D2 is overwritten with the comparison data NSBLU.
- the data stored in the storage node D1 in the write operation (FIG. 2A) and the overwriting comparison data SBLU are the same (“HIGH”), in the write operation (FIG. 2A).
- the data (“HIGH”) stored in the storage node D1 is not changed.
- the data (“LOW”) stored in the storage node D2 in the write operation (FIG. 2A) is not changed.
- Example 3 The subsequent operation is the same as in Example 1, and a detailed description thereof is omitted. Thereby, in the mask operation shown in Example 3, the determination result becomes “match determination” as in Example 1.
- the determination result for the data pattern 4 in FIG. 2C is “match determination”.
- Example 4 Another example of the mask operation (hereinafter referred to as Example 4) will be described in detail using the data pattern 2 of FIG. 2C and the circuit diagram of FIG.
- Example 4 as in Example 3, since the mask control signal MSK is “HIGH”, the transistors NU1 and NU2 are “ON”. For this reason, the storage node D1 is overwritten with the overwriting comparison data SBLU, and the storage node D2 is overwritten with the overwriting comparison data NSBLU.
- the data (“HIGH”) written to the storage node D1 in the write operation (FIG. 2A) is different from the overwrite comparison data SBLU (“LOW”), the storage data of the storage node D1 Is updated to “LOW” (FIG. 2C).
- the data (“LOW”) written to the storage node D2 in the write operation (FIG.
- the storage data of the storage node D2 Is updated to “HIGH” (FIG. 2C).
- the transistors NE1 and PE1 are “ON”, while the transistors NE2 and PE2 are “OFF”.
- the comparison data NSBL is “HIGH”, but since the transistors NE2 and PE2 are “OFF”, the comparison data NSBL (“HIGH” data) is not supplied to the gate of the transistor ND3, and the gate of the transistor ND3. Remains “LOW”. Therefore, since the transistor ND3 is not “ON”, the determination result is “match determination”.
- the determination result for data pattern 3 in FIG. 2C is “match determination”.
- the transistors NU1 and NU2 are “ON”.
- the storage node D1 is overwritten with the overwriting comparison data SBLU
- the storage node D2 is overwritten with the overwriting comparison data NSBLU.
- the storage data and the comparison data SBL of the storage node D1 and the storage data and the comparison data NSBL of the storage node D2 are the same data regardless of the data stored in the storage circuit 102 before the mask operation. It becomes. That is, in the mask operation, the comparison data 103 compares the same data. As a result, the comparison result of the comparison circuit 103 is “match determination”, the comparison circuit output signal ND is “LOW”, and the transistor ND3 remains “OFF”. That is, the comparison result is masked.
- the mask operation can be realized without providing a transistor (control switch) for controlling the presence or absence of a mask between the memory element 101 with a comparison function and the common detection line 113. it can.
- a transistor control switch
- FIG. 1 shows an example in which the memory element 101 with a comparison function is connected to the common detection line 113 by only one bit, actually, a plurality of memory elements 101 with a comparison function are connected to the same common detection line 113.
- the number of memory elements 101 with a comparison function connected to the same common detection line 113 increases, the load on the common detection line 113 increases, and thus the speed-up effect is more remarkably enhanced.
- the size of the transistor ND3 necessary for obtaining a desired operation speed can be reduced as compared with the related art. That is, the area of the memory element 101 with the comparison function and the semiconductor integrated circuit including the memory element 101 can be reduced.
- the transistor ND3 can be made smaller, the transistors NE1, NE2, PE1, PE2, and the like before the transistor ND3 can be reduced in size, so that the area can be further reduced.
- the parasitic capacitance associated with the circuit is reduced due to the effect of reducing each transistor and the effect of reducing the layout for realizing the transistors, and thus power consumption can be reduced. As for the effect of reducing the area and power consumption, the effect becomes more prominent as the number of memory elements 101 with a comparison function connected to the common detection line 113 increases as in the case of speeding up. Rise.
- FIG. 3 is a circuit diagram showing another example of the semiconductor integrated circuit according to the present embodiment. Compared with the semiconductor integrated circuit shown in FIG. 1, an auxiliary circuit 301 is added to assist overwriting from the overwriting unit 105 to the memory circuit 102 during the mask operation.
- the write auxiliary circuit 301 includes a PMOS transistor PH1 connected between the power supply and the sources of the transistors PL1 and PL2.
- a mask control signal MSK is supplied to the gate of the transistor PH1.
- the mask control signal MSK when the mask control signal MSK is set to “HIGH”, the data “LOW”, which is one of the comparison data SLBU and NSLBU for overwriting, is stored in the storage nodes D 1 and D 1 of the storage circuit 102. It is written in either one of D2. At this time, by weakening the capabilities of the transistors PL1 and PL2, the storage nodes D1 and D2 that receive the above writing can be easily changed to “LOW”.
- the write assist circuit 301 supplies power to the sources of the transistors PL1 and PL2 when the mask control signal MSK is “LOW”, and on the other hand, when the mask control signal MSK is “HIGH”. Shut off the power supply to the source. Thereby, when the mask control signal MSK is “HIGH”, the capabilities of the transistors PL1 and PL2 can be weakened. As a result, the data stored in the storage nodes D1 and D2 are likely to change to “LOW”.
- the overwriting speed of the overwriting comparison data SBLU and NSBLU to the storage circuit 102 can be increased. Further, the improvement of the overwriting speed can reduce the noise output from the comparison circuit 103 during the mask operation. Further, when writing the overwriting comparison data SBLU and NSBLU in the memory circuit 102, the through current flowing through the transistor PL1 and the transistor NU1 or the transistor PL2 and the transistor NU2 can be reduced, and low power consumption can be realized. Furthermore, since overwriting of the overwriting comparison data SBLU and NSBLU is facilitated, the gate width of the transistors NU1 and NU2 can be reduced, and the area can be reduced.
- the power supply to the sources of the transistors PL1 and PL2 is interrupted by using the write auxiliary circuit 301, whereby the transistors PL1 and PL1 are cut off.
- the capability of the transistors PL1 and PL2 may be weakened by weakening the source power supply of the transistors PL1 and PL2 using the write assist circuit 301 as shown in FIG.
- the write auxiliary circuit 301 shown in FIG. 4A includes a PMOS transistor PH2 connected between the power supply and the source of the transistor PL1 and the source of the transistor PL2 in addition to the write auxiliary circuit 301 shown in FIG. is doing. Therefore, the drain of the transistor PH1 and the drain of the transistor PH2 are connected. The gate of the transistor PH2 is connected to the ground power supply.
- the transistor PH2 remains “ON” even when the transistor PH1 is “OFF” during the mask operation. Accordingly, during the mask operation, the source power of the transistors PL1 and PL2 is weaker than that during the non-mask operation (for example, during the write operation or the determination operation), and the capabilities of the transistors PL1 and PL2 are reduced. As a result, it is possible to increase the speed at which the overwriting comparison data SBLU and NSBLU are overwritten in the storage circuit 102.
- the source power supply becomes weak means, for example, in the case of a PMOS transistor, the capability as a power supply due to a decrease in the source potential of the transistor or a decrease in the current supply capability from the power supply to the source of the transistor. Refers to a decrease.
- the write auxiliary circuit 301 shown in FIG. 4B includes a transistor PH2 connected between the power supply and the source of the transistor PL1 and the source of the transistor PL2 in addition to the write auxiliary circuit 301 shown in FIG. Yes.
- the gate of the transistor PH2 is connected to the drain of the transistor PH2. Therefore, the drain of the transistor PH1 and the drain and gate of the transistor PH2 are connected.
- the write assist circuit 301 Even when the transistor PH1 is turned “OFF” during the mask operation, the source power supply of PL1 and PL2 is not shut off, and the transistor PL1 is near the threshold voltage of the transistor PH2. , PL2 source power supply voltage is maintained. As a result, the source power of the transistors PL1 and PL2 is weaker in the mask operation than in the non-mask operation (for example, during the write operation or the determination operation), and the capabilities of the transistors PL1 and PL2 are reduced. As a result, it is possible to increase the speed at which the overwriting comparison data SBLU and NSBLU are overwritten in the storage circuit 102.
- the write auxiliary circuit 301 shown in FIG. 4C includes a power source (hereinafter referred to as high VDD) having a voltage lower than that of the power source connected to the source of the transistor PL1.
- the transistor PH2 is connected between the source of the transistor PL1 and the source of the transistor PL2. Therefore, the drain of the transistor PH1 and the drain of the transistor PH2 are connected.
- Write auxiliary circuit 301 further includes an inverter 311 connected between the gate of transistor PL1 and the gate of transistor PH2. As a result, the inverted mask control signal MSK is supplied to the gate of the transistor PH2.
- the write assist circuit 301 Even when the transistor PH1 is turned off during the mask operation, power is supplied to the sources of the transistors PL1 and PL2 from the low VDD via the transistor PH2. . That is, the source power supply of the transistors PL1 and PL2 is not shut off. On the other hand, since the transistor PH2 is “OFF” during the non-masking operation, power is supplied to the sources of the transistors PL1 and PL2 from the high VDD via the transistor PL1.
- the source power of the transistors PL1 and PL2 is lowered (becomes weaker) than during the non-mask operation (for example, during the write operation or the determination operation), so that the capabilities of the transistors PL1 and PL2 are reduced. To do. As a result, it is possible to increase the speed at which the overwriting comparison data SBLU and NSBLU are overwritten in the storage circuit 102.
- the write auxiliary circuit 301 shown in FIG. 4D includes an NMOS transistor NH2 connected between the power supply and the source of the transistor PL1 and the source of the transistor PL2 in addition to the write auxiliary circuit 301 shown in FIG. is doing. Therefore, the drain of the transistor PH1 and the source of the transistor NH2 are connected. The gate of the transistor NH2 is connected to the gate of the transistor PH1.
- the transistor PH1 is “OFF” and the transistor NH2 is “ON” during the mask operation, so that the source power supply of the transistors PL1 and PL2 is “VDD ⁇ Vthn”. Maintained in the vicinity.
- the source power supply of the transistors PL1 and PL2 becomes weaker than that during the non-mask operation (for example, during the write operation or the determination operation), and the capabilities of the transistors PL1 and PL2 are reduced. As a result, it is possible to increase the speed at which the overwriting comparison data SBLU and NSBLU are overwritten in the storage circuit 102.
- writing auxiliary circuit 301 is added to increase the overwriting speed of the overwriting comparison data SBLU and NSBLU in the memory circuit 102 during the mask operation.
- Writing assistance is not limited to this.
- writing of compared data WBL and NWBL may be assisted. .
- FIG. 5 is a circuit diagram showing another example of the semiconductor integrated circuit according to the present embodiment.
- the write assist circuit 301 of this aspect is additionally provided with a PMOS transistor PH3 provided between the transistor PH1 and the power supply.
- a write control signal WCT is connected to the gate of the transistor PH3.
- writing to the memory circuit 102 is assisted not only when the mask control signal MSK is “HIGH” but also when the write control signal WCT is “HIGH”. That is, the writing is also assisted when the comparison data WBL and NWBL are written in the memory circuit 102 during the writing operation.
- the comparison data WBL and NWBL are stored in the memory circuit 102 even when the write control signal WCT is “HIGH”.
- the writing speed can be increased.
- the through current flowing through the transistor PL1 and the transistor NW1 or the transistor PL2 and the transistor NW2 can be reduced, and low power consumption can be realized.
- the write assist circuit 301 shown in FIG. 5 for a semiconductor integrated circuit, it becomes easy to write the data to be compared WBL and NWBL. Therefore, the gate width of the transistors NW1 and NW2 can be reduced, and the area can be reduced. .
- FIG. 5 an example in which the capability of the transistors PL ⁇ b> 1 and PL ⁇ b> 2 is reduced by cutting off power supply to the sources of the transistors PL ⁇ b> 1 and PL ⁇ b> 2 during the mask operation and the write operation using the write auxiliary circuit 301.
- the source of the transistors PL ⁇ b> 1 and PL ⁇ b> 2 is used in at least one of the mask operation and the write operation using the write auxiliary circuit 301 similar to the circuits shown in FIGS.
- the power supply may be weakened.
- an auxiliary circuit 301 that cuts off the power supply to the sources of the transistors PL1 and PL2 in one of the mask operation and the write operation and weakens the source power of the transistors PL1 and PL2 in the other is used. May be.
- write auxiliary circuit 301 shown in FIGS. 3 to 5 is merely an example, and the circuits PL1 and PL2 may be weakened by using circuits other than those shown in FIGS.
- the compared data WBL, NWBL, overwriting comparison data SBLU, NSBLU and comparison data SBL, NSBL are supplied via different data lines 115, 116, 117, respectively. However, at least any two pieces of data may be supplied via a common data line. In the following embodiments, specific examples will be described.
- FIG. 6 is a circuit diagram showing another example of the semiconductor integrated circuit according to the present embodiment.
- the data line 411 (hereinafter simply referred to as a common comparison data line 411) is shared, and the comparison data SBL and NSBL are supplied via the common comparison data line 411.
- the transistor NU1 and the comparison circuit 103 are connected to one data line 411 of the common comparison data lines 411, and the transistor NU2 and the comparison circuit 103 are connected to the other data line 411.
- Other circuit configurations, write operations, and comparison operations are the same as those in FIG. 3, and detailed descriptions thereof are omitted.
- the number of wirings can be reduced, and the semiconductor integrated circuit can be highly integrated. Further, since the wiring load related to charging / discharging during the comparison operation is reduced, low power consumption can be realized.
- FIG. 7 is a circuit diagram showing another example of the semiconductor integrated circuit according to the present embodiment.
- the compared data line 115 and the common comparison data line 411 are referred to as a pair of common data lines 421 (hereinafter simply referred to as a common data line 421). ).
- a pair of common data BL and NBL (hereinafter simply referred to as common data BL and NBL) is supplied to the common data line 421.
- the semiconductor integrated circuit includes a compared data circuit 402 that outputs compared data WBL and NWBL, a comparative data circuit 403 that outputs comparison data SBL and NSBL, a compared data circuit 402, and a compared data circuit. 403, a data selection circuit that selects one of comparison data WBL and NWBL and comparison data SBL and NSBL received from comparison data circuit 402 and comparison data circuit 403, and outputs the selected data to common data line 421 401.
- the data selection circuit 401 selects the data to be compared WBL and NWBL during the write operation. In other words, during the write operation, the comparison data WBL and NWBL are supplied to the common data line 421 as the common data BL and NBL, and the comparison data WBL and NWBL are written into the memory circuit 102 under the control of the write control signal WCT. .
- the data selection circuit 401 selects the comparison data SBL and NSBL during the comparison operation (mask operation and determination operation). That is, during the comparison operation, the comparison data SBL and NSBL are supplied as the common data BL and NBL to the common data line 421, and the determination operation or the mask operation is executed according to the mask control signal MSK.
- the write operation after the data selection circuit 401 selects the comparison data WBL and NWBL and the comparison operation after the data selection circuit 401 selects the comparison data SBL and NSBL are the same as those in FIGS. Detailed description thereof will be omitted.
- the number of data lines can be further reduced from the circuits of FIGS.
- the semiconductor integrated circuit according to this aspect can further reduce the area.
- the writing circuit 106 includes a writing unit 104 that performs writing to the storage circuit 102 in a writing operation and an overwriting unit 105 that performs overwriting on the storage circuit 102 in a masking operation. As shown in “Other example 4 of semiconductor integrated circuit” below, the writing unit 104 and the overwriting unit 105 may be shared.
- FIG. 8 is a circuit diagram showing another example of the semiconductor integrated circuit according to the present embodiment.
- transistors NU1, NU2 and transistors NW1, NW2 are different.
- the common transistors are called NWU1 and NWU2.
- the transistors NWU1 and NWU2 are NMOS transistors.
- the OR control 501 takes the logical sum of the write control signal WCT and the mask control signal MSK, and it is a common output signal from the OR gate 501 instead of the mask control signal MSK.
- the write control signal WCTC is supplied to the gate of the transistor PH1 of the write auxiliary circuit 301. Further, the common write control signal WCTC is given to the gates of the transistors NWU1 and NWU2 of the write circuit 106.
- the writing unit 104 and the overwriting unit 105 can be used in common as the writing circuit 106, so that the memory element 101 with a comparison function and the semiconductor integrated circuit including the same can be reduced in area. Is possible.
- the OR gate 501 is increased compared to FIG. 7, but in general, a plurality of memory elements 101 with comparison functions are controlled by one common mask control signal MSK. Overall area reduction is possible.
- the second embodiment below an example is shown in which two memory elements 101 with a comparison function are controlled by one common mask control signal MSK.
- FIG. 9 is a circuit diagram of the content addressable memory according to the present embodiment.
- the associative memory 600 includes two memory elements 101 with a comparison function to be masked. Specifically, the two storage elements 101 with a comparison function, the data selection circuit 401, the compared data circuit 402, and the comparison data circuit 403 shown in FIG. 8 are connected in parallel. Each memory element 101 with a comparison function receives output signals from the common write assist circuit 301 and the common OR gate 501.
- the associative memory 600 further includes a mask information storage element 602 that stores a pair of mask information data MBL and NMBL, and a storage element 601 with a comparison function that is not subject to mask control.
- the mask information data MBL and NMBL are data indicating, for example, a memory element with a comparison function that is excluded from a target of logical sum among a plurality of memory elements with a comparison function, that is, a memory element with a comparison function to be masked. .
- the output signal of the mask information storage element 602 is given as a mask control signal MSK to one terminal of the OR gate 501 that supplies the common write control signal WCTC. Further, the write control signal WCT is given to the other terminal of the OR gate 501.
- the memory element 601 with a comparison function that is not subject to mask control has the same configuration as the memory element 101 with a comparison function that is subject to mask control. Compared with the memory element 101 with a comparison function, the memory elements 601 and NWU2 of the write circuit 106 The difference is that a write control signal WCT is applied to the gate and that the sources of the transistors PL1 and PL2 of the memory circuit 102 are connected to a power source.
- a mechanism for converting a logical address into a physical address is required, and a TLB is used as a hardware mechanism for speeding up the conversion.
- the TLB stores a plurality of data in which a logical address of each page is associated with a real address on a physical memory.
- a storage device that stores a logical address is referred to as a logical address array
- a storage device that stores a physical address is referred to as a physical address array.
- the logical address to be searched is input to the logical address array, and all stored logical addresses are compared with the logical address to be searched for. If there is a matching logical address as a result of the matching comparison determination, address conversion is realized by reading a physical address associated with the logical address from the TLB. For this reason, a special memory cell called a CAM cell with a built-in 1-bit comparator is generally used as the memory cell of the logical address array, and the output of the CAM cell is logically ORed with a common detection line composed of wired OR. Multi-bit comparison is performed (see Patent Document 1).
- the memory space is managed in units called pages, and each page size is a multiple of the minimum page size. Therefore, the effective bits of the logical address and the physical address vary depending on the page size.
- TLB a technique is known in which a page size memory is provided that stores page size information for each of a plurality of logical addresses stored in a logical address array (see Patent Document 1). At the time of address conversion, the comparison result of a specific bit is masked from the entire comparison in accordance with the information in the page size memory for each line.
- the mask information storage element 602 shown in FIG. 9 is used as a page size memory that stores the page size.
- the storage elements 101 and 601 with comparison functions are used as CAM cells having a function of storing a logical address and comparing the stored logical address with a logical address input for search.
- the output signal of each CAM cell is connected to the common detection line 113 via the transistor ND3.
- a wired OR of the common detection line 113 is taken, and a logical address as multi-bit comparison data stored in a plurality of CAM cells and input to the plurality of CAM cells for searching. The comparison comparison with the logical address as the multi-bit comparison data is performed.
- a plurality of circuits having the configuration shown in FIG. 9 are provided, and a plurality of logical addresses composed of a plurality of bits are stored for a plurality of entries. Then, the input logical address for search and the logical address stored in the plurality of entries are simultaneously compared.
- the address conversion is performed in the same manner as the memory element 101 with the comparison function and the semiconductor integrated circuit using the same as shown in the first embodiment. It is possible to realize high-speed address conversion, low power consumption, and small area in the buffer and virtual storage system. Further, as shown in FIG. 9, since the memory element 101 with a comparison function shown in FIG. 8 can have the same structure as the memory element 601 with a comparison function that does not perform mask control, the number of development steps can be reduced. Further, in an array including a plurality of memory elements 101 and 601 with a comparison function, a circuit can be realized by a continuous layout pattern in which memory elements having the same structure are arranged, so that the yield can be improved.
- the associative memory 600 has been described as having two storage elements 101 with a comparison function to be masked and one storage element 601 with a comparison function that is not a mask control target.
- the number of memory elements 101 and 601 with a comparison function is not limited to this.
- a plurality of memory elements with comparison functions 601 that are not subject to mask control may be provided, and for example, the number of memory elements with comparison functions 101 and 601 may be three or more.
- the memory element 101 with a comparison function connected to one common detection line 113 is controlled by the same common write control signal WCTC, but is different for each single or plural memory elements 101 with a comparison function. You may receive control of a common write control signal. As a result, it is possible to control the elements to be logically summed and the elements to be excluded from the objects to be logically summed among the plurality of memory elements 101 with a comparison function.
- FIG. 10 is a circuit diagram of a multi-bit comparator according to this embodiment.
- the multi-bit comparator 700 includes two 1-bit comparators 701 that are mask control targets and a 1-bit comparator 721 that is not mask control targets.
- a 1-bit comparator 701 to be masked is selected under the control of the mask control signal MSK to select one of the comparison target data WBL and NWBL and the comparison data SBL and NSBL and output as selection data
- a circuit 702 a comparison circuit 703 for determining whether the comparison data SBL, NSBL and the selection data received from the selection circuit 702 match or not, and a common detection line 713 are connected between the ground power supply and the comparison circuit 703.
- a transistor ND11 that receives a comparison circuit output signal CND as a comparison result at its gate.
- the selection circuit 702 includes a transistor NS11 connected between one comparison data line 717 and the internal comparison data line 711 of the pair of comparison data lines 717 supplied with the comparison data SBL and NSBL, and the other comparison.
- the transistor NS12 connected between the data line 717 and the internal comparison data line 712, and connected between one of the pair of data lines 715 to be compared and the internal comparison data line 711.
- a transistor NS13 and a transistor NS14 connected between the other compared data line 715 and the internal comparison data line 712 are provided.
- a mask control signal MSK is connected to the gates of the transistors NS11 and NS12.
- a mask control signal MSK is connected to the gates of the transistors NS13 and NS14 via an inverter 740.
- the selection data of the selection circuit 702 is output via the internal comparison data lines 711 and 712.
- the comparison circuit 703 includes transistors NE11 and NE12 connected in series between a pair of comparison data lines 717, and transistors PE11 and PE12 connected in parallel with the transistors NE11 and NE12.
- An internal comparison data line 711 is connected to the gates of the transistors NE11 and PE12, and an internal comparison data line 712 is connected to the gates of the transistors NE12 and PE11.
- the node between the transistors NE11 and NE12 and the node between the transistors PE11 and PE12 are connected to the gate of the transistor ND11.
- the 1-bit comparator 721 that is not subject to mask control is connected between a comparison circuit 703 that determines whether the compared data WBL, NWBL and the comparison data SBL, NSBL match or do not match, and the common detection line 713 and the ground power supply. And a transistor ND11 that receives a comparison circuit output signal CND as a comparison result of the comparison circuit 703 at its gate.
- the transistors NS11, NS12, NS13, NS14, NE11, NE12, and ND11 are NMOS transistors
- the transistors PE11 and PE12 are PMOS transistors.
- the 1-bit comparator 701 subject to mask control has a determination operation for determining whether the compared data WBL, NWBL and the comparison data SBL, NSBL match or do not match, and a mask operation for masking the comparison result. .
- the transistors NS13 and NS14 of the selection circuit 702 are “ON”, while the transistors NS11 and NS12 are “OFF”. Therefore, the comparison data WBL and NWBL are output from the internal comparison data lines 711 and 712. As a result, the comparison circuit 703 compares the compared data WBL and NWBL with the comparison data SBL and NSBL, and the transistor ND11 is turned “ON” or “OFF” according to the comparison result. Accordingly, the 1-bit comparator 701 outputs a determination result of coincidence or disagreement between the comparison data WBL and NWBL and the comparison data SBL and NSBL.
- comparison data SBL and NSBL are output to the internal comparison data lines 711 and 712, respectively.
- comparison data SBL and NSBL are input to the comparison circuit 703 from the internal comparison data lines 712 and 713 and the pair of comparison data lines 717 as data to be compared. Therefore, the comparison circuit 703 compares the same data.
- the comparison circuit 703 in the mask operation makes a “coincidence determination” regardless of the values of the compared data WBL, NWBL and the comparison data SBL, NSBL. Therefore, the comparison circuit output signal CND is “LOW”, and the transistor ND11 remains “OFF”. That is, the comparison result in the mask operation is masked.
- comparison data SBL and NSBL and comparison data WBL and NWBL are input to the comparison circuit 703 as comparison target data. Therefore, the 1-bit comparator 721 outputs a determination result of coincidence or disagreement between the compared data WBL and NWBL and the comparison data SBL and NSBL.
- a mask operation can be realized without providing a transistor (control switch) for controlling the presence or absence of a mask between the 1-bit comparator 721 and the common detection line 713. it can. Thereby, it is possible to realize high speed, low power consumption, and small area for the 1-bit comparator and the multi-bit comparator. Note that as the number of bits connected to the common detection line 713 increases, the load on the common detection line 713 increases, and thus the effects of speeding up, low power consumption, and area reduction are significantly increased. *
- this technology is effective for large-scale associative memories with many comparison circuits.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Static Random-Access Memory (AREA)
- Semiconductor Memories (AREA)
Abstract
比較機能付き記憶素子(101)は、被比較データを記憶する記憶回路(102)と、記憶回路(102)が保持する被比較データと、比較データとを比較して、その比較結果を出力する比較回路(103)と、書き込み動作において、書込み制御信号(WCT)の制御を受けて記憶回路(102)に被比較データを書き込むとともに、比較動作において、マスク制御信号(MSK)がマスク動作を示したとき、記憶回路(102)に比較データを上書きする書込み回路(106)とを備えている。
Description
本開示は半導体集積回路に関し、特に比較器並びに比較器を内蔵した記憶素子及び連想メモリ等を高速に動作させる技術に関するものである。
電子計算機の仮想記憶システムにおいて、アドレス変換を高速化するための手段としてTLB(Translation Look-aside Buffer)が広く用いられる。TLBの回路は、一般的に仮想アドレスページ番号(Virtual Page Number:以下、VPNと称する)を記憶したVPNメモリアレイと、物理アドレスページ番号(Physical Page Number:以下、PPNと称する)を記憶したPPNメモリアレイとによって構成される。そして、アドレス変換の際には、VPNメモリアレイに対して所望のVPNで検索を実施し、一致しているVPNが発見されると、PPNメモリアレイから対応するPPNを読み出す。
一般的な仮想記憶システムではメモリ空間を有効活用するために、ページサイズが可変になっている。この場合、TLBによって記憶されているVPNの有効なビット数はページサイズに応じて変わるため、特定のビットが検索対象から除外される。
特許文献1では、サポートするページサイズに応じて、変換するアドレスのビット数を変化させる技術が開示されている。具体的には、特許文献1の半導体集積回路は、検出信号線を階層化しており、CAM(Content-addressable memory)セルからの比較結果は、トランジスタを通じてローカル検出線に接続されており、かつローカル検出線は、サイズビット内のデータによって制御されるトランジスタを通じて共通検出線に接続されている。
しかしながら、特許文献1に記載された回路構成では、ローカル検出線とグランド電源との間に、マスクの有無を制御するトランジスタ(サイズビット内のデータによって制御されるトランジスタ)を含めて、トランジスタが直列に2段接続されている。このため、例えば連想メモリにおけるある特定のビットで不一致が検出され、共通信号線がグランドレベルに駆動される場合、ローカル検出線とグランド電源との間の2段のトランジスタを駆動する必要がある。これにより、連想メモリの比較動作の高速化が困難であり、結果として連想メモリの高速化が困難であるという課題がある。
さらに、共通検出線にはローカル検出線の負荷とあわせるとかなりの負荷が付随するため、直列に2段接続されたトランジスタの駆動による速度劣化が際立つという課題がある。
ここで、連想メモリを高速化するために、直列に2段接続されているトランジスタのゲート幅を大きくする方法が考えられる。しかしながら、この方法では、共通検出線に付随するトランジスタの拡散容量が増加するため、ゲート幅を大きくすることによる高速化には限界がある。また、ゲート幅を大きくすることによって、回路面積の増加や共通検出線の負荷増加に伴う消費電力の増加という新たな課題が生じる。
上記問題に鑑み、本開示は、比較機能付き記憶素子の高速化を、面積や消費電力を増大させずに実現することを目的とする。
本開示の第1態様では、記憶された被比較データと比較データとを比較する比較機能付き記憶素子は、前記被比較データを記憶する記憶回路と、書き込み動作において、書込み制御信号の制御を受けて前記記憶回路に前記被比較データを書き込む書込み回路と、前記記憶回路が保持する前記被比較データと、前記比較データとを比較して、その比較結果を出力する比較回路とを備えており、前記書込み回路は、前記比較回路によって比較動作を行う際に、マスク制御信号がマスク動作を示すとき、前記記憶回路に前記比較データを上書きする一方、前記マスク制御信号が非マスク動作を示すとき、前記記憶回路への前記比較データの上書きを行わないものである。
この態様によると、書込み回路は、比較回路によって比較動作を行う場合において、マスク制御信号がマスク動作を示すとき、記憶回路に比較データを上書きする。これにより、比較動作において、比較データとの比較対象である記憶回路に記憶された被比較データは、比較データに更新される。したがって、比較回路では、同じデータ同士(比較データ同士)が比較されることになり、一致判定が出力される。すなわち、比較結果はマスクされる。一方で、マスク制御信号が非マスク動作を示すとき、記憶回路に保持された被比較データは更新されないため、比較回路では被比較データと比較データとが比較される。このように、本態様では、比較機能付き記憶素子の出力部に比較結果のマスクの有無を制御する制御用のスイッチ(例えば、トランジスタ)を設けることなく、比較結果のマスクの有無を制御することができる。したがって、比較機能付き記憶素子を用いた読み出し動作、比較動作等について高速動作を実現することが可能となる。
本開示の第2態様では、多ビットの連想メモリは、第1態様に係る比較機能付き記憶素子を複数個、備えており、前記複数の比較機能付き記憶素子において、複数の前記記憶回路に多ビットの被比較データが記憶され、かつ複数の前記比較回路に前記多ビットの被比較データと対応する多ビットの比較データが与えられており、前記複数の比較機能付き記憶素子の比較回路から出力された比較結果の論理和をとり、当該論理和に基づいて、前記多ビットの被比較データと、前記多ビットの比較データとの一致比較判定を行うものである。
本開示の第3態様では、アドレス変換バッファは、第2態様に係る多ビットの連想メモリを用いており、前記多ビットの被比較データは、仮想アドレス空間における論理アドレスであり、前記多ビットの比較データは検索対象の論理アドレスであり、前記マスク制御信号は、仮想メモリ空間のページサイズ情報を記憶したページサイズ記憶用メモリセルの出力信号であるものとする。
本開示の第4態様では、被比較データと比較データとを比較する1ビット比較器は、マスク制御信号の制御を受けて、前記被比較データと前記比較データとのうちのいずれか一方を選択して出力する選択回路と、前記選択回路の出力信号と前記比較データとを比較して、その比較結果を出力する比較回路とを備えており、前記選択回路は、前記マスク制御信号がマスク動作を示すとき、前記比較データを選択して出力する一方、前記マスク制御信号が非マスク動作を示すとき、前記被比較データを選択して出力するものである。
この態様によると、マスク制御信号がマスク動作を示すとき、選択回路は比較データを選択して出力するため、比較回路では同じデータ同士(比較データ同士)が比較されることになり、一致判定が出力される。すなわち、比較結果はマスクされる。一方で、マスク制御信号が非マスク動作を示すとき、被比較データと比較データとが比較される。このように、本態様では、1ビット比較器の出力部に、比較結果のマスクの有無を制御するような制御用のスイッチ(例えば、トランジスタ)を設けることなく、比較結果のマスクの有無を制御することができる。したがって、1ビット比較器の高速動作を実現することが可能となる。
本開示の第5態様では、多ビット比較器は、第4態様に係る1ビット比較器を複数個、備えており、前記複数の1ビット比較器において、複数の前記選択回路に多ビットの被比較データが与えられ、かつ複数の前記比較回路に前記多ビットの被比較データと対応する多ビットの比較データが与えられており、前記複数の1ビット比較器の比較回路から出力された比較結果の論理和をとり、当該論理和に基づいて、前記多ビットの被比較データと前記多ビットの比較データとの一致比較判定を行うものである。
本開示によれば、比較機能付き記憶素子の高速化を実現することができる。また、比較機能付き記憶素子の小面積化、低電力化を実現することができる。特に、検索データのビット幅が大きい比較機能付き記憶素子において、高い効果を有する。
以下、本開示の実施の形態を、図面を参照しながら説明する。
なお、以下の各実施形態は、例示説明にすぎず、本開示、その適用範囲あるいはその用途を制限することを意図するものではない。
<実施の形態1>
図1は本実施形態に係る半導体集積回路の回路図である。図1に示すように、半導体集積回路は、比較機能付き記憶素子101を備えている。
図1は本実施形態に係る半導体集積回路の回路図である。図1に示すように、半導体集積回路は、比較機能付き記憶素子101を備えている。
比較機能付き記憶素子101は、被比較データを記憶する記憶回路102と、書込み制御信号WCT及びマスク制御信号MSKによる制御を受けて、記憶回路102に一対の被比較データWBL,NWBL(以下、単に被比較データWBL,NWBLと称する)及び一対の上書き用比較データSBLU,NSBLU(以下、単に上書き用比較データSBLU,NSBLUと称する)を書き込む書込み回路106と、記憶回路102で記憶している記憶データと一対の比較データSBL,NSBL(以下、単に比較データSBL,NSBLと称する)とを受けて、記憶データと比較データSBL,NSBLとの一致或いは不一致の判定を行う比較回路103と、共通検出線113とグランド電源との間に接続され、比較回路103の比較結果である比較回路出力信号NDをゲートに受けるトランジスタND3とを備えている。
書込み回路106は、書込み制御信号WCTによる制御を受けて、被比較データWBL,NWBLを記憶回路102に書き込む書込み部104と、マスク制御信号MSKによる制御を受けて、上書き用比較データSBLU,NSBLUを記憶回路102に書き込む上書き部105とを備えている。
記憶回路102は、電源と記憶ノードD1との間に接続されたトランジスタPL1と、記憶ノードD1とグランド電源との間に接続されたトランジスタND1と、電源と記憶ノードD2との間に接続されたトランジスタPL2と、記憶ノードD2とグランド電源との間に接続されたトランジスタND2とを備えている。トランジスタPL1とトランジスタND1とのゲートには記憶ノードD2が接続され、トランジスタPL2とトランジスタND2とのゲートには記憶ノードD1が接続されている。記憶回路102の記憶データは、記憶ノードD1,D2を介して出力される。
比較回路103は、比較データSBL,NSBLが供給される一対の比較データ線117(以下、単に比較データ線117と称する)の間に直列に接続されたトランジスタNE1,NE2と、トランジスタNE1,NE2と並列に接続されたトランジスタPE1,PE2とを備えている。トランジスタNE1とトランジスタPE2とのゲートには記憶ノードD2が接続され、トランジスタNE2とトランジスタPE1とのゲートには記憶ノードD1が接続されている。また、トランジスタNE1とトランジスタNE2との間のノード及びトランジスタPE1とトランジスタPE2との間のノードは、トランジスタND3のゲートに接続されている。
書込み部104は、被比較データWBL,NWBLが供給される一対の被比較データ線115(以下、単に被比較データ線115と称する)のうちの、一方の被比較データ線115と記憶回路102の記憶ノードD1との間に接続されたトランジスタNW1と、他方の被比較データ線115と記憶回路102の記憶ノードD2との間に接続されたトランジスタNW2とを備えている。トランジスタNW1,NW2のゲートには、書込み制御信号WCTが与えられる。
上書き部105は、上書き用比較データSBLU,NSBLUが供給される一対の上書き用比較データ線116(以下、単に上書き用比較データ線116と称する)のうちの、一方の上書き用比較データ線116と記憶回路102の記憶ノードD1との間に接続されたトランジスタNU1と、他方の上書き用比較データ線116と記憶回路102の記憶ノードD2との間に接続されたトランジスタNU2とを備えている。トランジスタNU1,NU2のゲートにはマスク制御信号MSKが与えられる。
ここで、トランジスタND1,ND2,ND3,NE1,NE2,NW1,NW2,NU1,NU2は、NMOSトランジスタであり、トランジスタPL1,PL2,PE1,PE2は、PMOSトランジスタである。また、上書き用比較データ線116と、比較データ線117とには同じ比較データが供給されている。
このように、上書き用比較データ線116と、比較データ線117とを分けることにより、配線に接続されるトランジスタ数が減少するため、負荷が軽減される。これにより、比較回路103によるデータの比較速度が高速化され、比較機能付き記憶素子101の読み出し速度等の高速化を実現することができる。
[書き込み動作]
図1に示す半導体集積回路の書き込み動作について説明する。
図1に示す半導体集積回路の書き込み動作について説明する。
書込み制御信号WCTが“LOW”から“HIGH”に変化することにより、書込み部104のトランジスタNW1,NW2が“ON”し、記憶回路102に被比較データWBL,NWBLが書き込まれる。
[比較動作]
次に、比較回路103による比較動作について、図1の回路図及び図2(a)~(c)の状態遷移図を用いて説明する。図2(a)は書き込み動作後の状態を示す状態遷移図であり、図2(b)は比較動作のうちの一致或いは不一致を判定する、非マスク動作としての判定動作後の状態を示す状態遷移図であり、図2(c)は比較動作のうちの比較結果をマスクするマスク動作後の状態を示す状態遷移図である。なお、図2において、“1”は信号が“HIGH”であることを示し、“0”は信号が“LOW”であることを示すものとする。
次に、比較回路103による比較動作について、図1の回路図及び図2(a)~(c)の状態遷移図を用いて説明する。図2(a)は書き込み動作後の状態を示す状態遷移図であり、図2(b)は比較動作のうちの一致或いは不一致を判定する、非マスク動作としての判定動作後の状態を示す状態遷移図であり、図2(c)は比較動作のうちの比較結果をマスクするマスク動作後の状態を示す状態遷移図である。なお、図2において、“1”は信号が“HIGH”であることを示し、“0”は信号が“LOW”であることを示すものとする。
まず、比較動作が開始される前は、共通検出線113の信号は“HIGH”にプリチャージされており、図2(a)に示すように、比較データSBL,NSBLはいずれも“LOW”になっている。そして、記憶回路102には、トランジスタNW1,NW2を介して被比較データWBL,NWBLが書き込まれ、記憶される。具体的には、データパタン1,2では、記憶回路102の記憶ノードD1には、記憶データとして“HIGH”が記憶されている一方、記憶ノードD2には、記憶データとして“LOW”が記憶されているものとする。同様に、データパタン3,4では、記憶ノードD1の記憶データとして“LOW”が記憶されている一方、記憶ノードD2の記憶データとして“HIGH”が記憶されているものとする。
次に、比較動作が開始されると、図2(b),(c)に示すように、比較データSBL,NSBLのいずれか一方が“HIGH”に変化する。比較回路103のトランジスタNE1,NE2,PE1,PE2は、記憶回路102から受けた記憶ノードD1,D2の記憶データに応じてON/OFFし、比較結果を比較回路出力信号NDとして出力する。
ここで、比較回路103による判定の結果は、比較回路出力信号NDが“LOW”であり、トランジスタND3が“OFF”のときは、記憶回路102に記憶された記憶データと、比較データSBL,NSBLとが一致していることを示す「一致判定」(図2(b),(c)内では「一致」と記載する)となる。一方で、比較回路出力信号NDが“HIGH”であり、トランジスタND3が“ON”のときは、記憶回路102に記憶された記憶データと、比較データSBL,NSBLとが不一致であることを示す「不一致判定」(図2(b),(c)内では「不一致」と記載する)となる。なお、以下の比較動作において、トランジスタNW1,NW2は“OFF”しているものとする。
[判定動作(非マスク動作)]
まず、図2(b)のデータパタン1と図1の回路図とを用いて、判定動作の一例(以下、例1と称する)について詳細に説明する。
まず、図2(b)のデータパタン1と図1の回路図とを用いて、判定動作の一例(以下、例1と称する)について詳細に説明する。
例1では、記憶ノードD1の記憶データが“HIGH”であり、記憶ノードD2の記憶データが“LOW”であるため、トランジスタNE2,PE2が“ON”する一方、トランジスタNE1,PE1が“OFF”する。また、マスク制御信号MSKが“LOW”であるため、トランジスタNU1,NU2は“OFF”している。
このとき、比較データSBLが“HIGH”であるが、トランジスタNE1,PE1が“OFF”しているため、比較データSBL(“HIGH”データ)はトランジスタND3のゲートに供給されず、トランジスタND3のゲートは“LOW”のままである。したがって、トランジスタND3が“ON”しないため、判定結果は「一致判定」となる。
同様にして、図2(b)のデータパタン4についての判定結果は「一致判定」となる。
次に、図2(b)のデータパタン2と図1の回路図とを用いて、判定動作の他の例(以下、例2と称する)について詳細に説明する。
例2では、記憶ノードD1の記憶データが“HIGH”であり、記憶ノードD2の記憶データが“LOW”であるため、トランジスタNE2,PE2が“ON”する一方、トランジスタNE1,PE1が“OFF”する。また、マスク制御信号MSKが“LOW”であるため、トランジスタNU1,NU2は、“OFF”している。
このとき、比較データNSBLが“HIGH”となっており、かつトランジスタNE2,PE2が“ON”しているため、比較データNSBL(“HIGH”データ)がトランジスタND3のゲートに供給される。これにより、トランジスタND3が“ON”して、共通検出線113が“LOW”に駆動される。すなわち、判定動作は「不一致判定」となる。
同様にして、図2(b)のデータパタン3についての判定結果は「不一致判定」となる。
[マスク動作]
次に、図2(c)のデータパタン1と図1の回路図とを用いて、マスク動作の一例(以下、例3と称する)について詳細に説明する。
次に、図2(c)のデータパタン1と図1の回路図とを用いて、マスク動作の一例(以下、例3と称する)について詳細に説明する。
例3では、マスク制御信号MSKが“HIGH”になっており、トランジスタNU1,NU2が“ON”している。そのため、記憶ノードD1には比較データSBLU、記憶ノードD2には比較データNSBLUが上書きされる。ここで、書き込み動作(図2(a))において記憶ノードD1に記憶されたデータと、上書き用比較データSBLUとが同じ(“HIGH”)であるため、書き込み動作(図2(a))において記憶ノードD1に記憶されたデータ(“HIGH”)は変更されない。同様に、書き込み動作(図2(a))において記憶ノードD2に記憶されたデータ(“LOW”)は変更されない。
以後の動作は、例1と同様であり、その詳細な説明を省略する。これにより、例3に示すマスク動作では、例1の場合と同様に判定結果が「一致判定」となる。
同様にして、図2(c)のデータパタン4についての判定結果は「一致判定」となる。
次に、図2(c)のデータパタン2と図1の回路図とを用いて、マスク動作の他の例(以下、例4と称する)について詳細に説明する。
例4では、例3と同様に、マスク制御信号MSKが“HIGH”であるため、トランジスタNU1、NU2が“ON”している。そのため、記憶ノードD1には上書き用比較データSBLUが上書きされ、記憶ノードD2には上書き用比較データNSBLUのデータが上書きされる。ここで、書き込み動作(図2(a))において記憶ノードD1に書込まれたデータ(“HIGH”)と、上書き用比較データSBLU(“LOW”)とが異なるため、記憶ノードD1の記憶データが“LOW”に更新される(図2(c))。同様に、書き込み動作(図2(a))において記憶ノードD2に書込まれたデータ(“LOW”)と、上書き用比較データNSBLU(“HIGH”)とが異なるため、記憶ノードD2の記憶データが“HIGH”に更新される(図2(c))。これにより、トランジスタNE1,PE1が“ON”する一方、トランジスタNE2,PE2が“OFF”する。
このとき、比較データNSBLは“HIGH”であるが、トランジスタNE2,PE2が“OFF”しているため、比較データNSBL(“HIGH”データ)はトランジスタND3のゲートに供給されず、トランジスタND3のゲートは“LOW”のままである。したがって、トランジスタND3は“ON”しないため、判定結果は「一致判定」となる。
同様にして、図2(c)のデータパタン3についての判定結果は「一致判定」となる。
このように、マスク動作においては、マスク制御信号MSKが“HIGH”であるため、トランジスタNU1、NU2が“ON”している。これにより、記憶ノードD1には上書き用比較データSBLUが上書きされ、記憶ノードD2には上書き用比較データNSBLUのデータが上書きされる。結果として、マスク動作では、マスク動作前に記憶回路102に記憶されていたデータにかかわらず、記憶ノードD1の記憶データと比較データSBL、及び記憶ノードD2の記憶データと比較データNSBLはそれぞれ同じデータとなる。すなわち、マスク動作では、比較回路103によって、同じデータ同士が比較されることになる。その結果、比較回路103の比較結果は「一致判定」となり、比較回路出力信号NDは“LOW”であり、トランジスタND3は“OFF”のままである。すなわち、比較結果はマスクされる。
以上のように、本態様によると、比較機能付き記憶素子101と共通検出線113との間にマスクの有無を制御するトランジスタ(制御用のスイッチ)を設けることなく、マスク動作を実現することができる。これにより、比較機能付き記憶素子101による比較、読み出し等について、高速動作を実現することが可能となる。図1では、比較機能付き記憶素子101が1ビットだけ共通検出線113接続されている例を示しているが、実際には同一の共通検出線113に複数の比較機能付き記憶素子101が接続される。この同一の共通検出線113に接続される比較機能付き記憶素子101の数が増加するほど、共通検出線113の負荷が大きくなるため、より顕著に高速化の効果が高まる。
また、比較機能付き記憶素子101を備える半導体集積回路の高速化が図れるため、従来と比較して、所望の動作速度を得るために必要なトランジスタND3のサイズが小さくてすむ。すなわち、比較機能付き記憶素子101及びこれを備える半導体集積回路の小面積化が可能となる。また、トランジスタND3を小さくできることに伴って、トランジスタND3の前段のトランジスタNE1、NE2、PE1、PE2なども小型化が可能となるため、さらに小面積化が可能となる。また、各トランジスタが小さくなる効果や、それらのトランジスタを実現するレイアウトが小さくなる効果によって回路に付随する寄生容量が減少し、低消費電力化が可能となる。このような小面積化、低消費電力化の効果についても、高速化の場合と同様に共通検出線113に接続される比較機能付き記憶素子101の数が増えるほど、より顕著にそれらの効果が高まる。
(半導体集積回路の他の例1)
図3は本実施形態に係る半導体集積回路の他の例を示す回路図である。図1に記載の半導体集積回路と比較すると、マスク動作の際に、上書き部105から記憶回路102への上書きを補助する補助回路301が追加されている。
図3は本実施形態に係る半導体集積回路の他の例を示す回路図である。図1に記載の半導体集積回路と比較すると、マスク動作の際に、上書き部105から記憶回路102への上書きを補助する補助回路301が追加されている。
書込み補助回路301は、電源とトランジスタPL1及びトランジスタPL2のソースとの間に接続されたPMOSのトランジスタPH1を有している。トランジスタPH1のゲートには、マスク制御信号MSKが与えられている。
図3の回路において、書き込み動作及び判定動作については、図1と同様であり、その詳細な説明を省略する。
[マスク動作]
本態様に係るマスク動作の際の上書き動作について、図3を用いて詳細に説明する。
本態様に係るマスク動作の際の上書き動作について、図3を用いて詳細に説明する。
マスク動作において、マスク制御信号MSKが“HIGH”に設定されると、上書き用比較データSLBU,NSLBUのうちのいずれか一方のデータである“LOW”のデータが、記憶回路102の記憶ノードD1,D2のうちのいずれか一方に書き込まれる。このとき、トランジスタPL1,PL2の能力を弱めておくことにより、上記の書き込みを受ける記憶ノードD1,D2を“LOW”に変化しやすくすることができる。
具体的に説明すると、書込み補助回路301は、マスク制御信号MSKが“LOW”のときにはトランジスタPL1,PL2のソースに電源を供給する一方、マスク制御信号MSKが“HIGH”のときにはトランジスタPL1,PL2のソースへの電源供給を遮断する。これにより、マスク制御信号MSKが“HIGH”のとき、トランジスタPL1,PL2の能力を弱めることができる。その結果、記憶ノードD1,D2の記憶データが“LOW”に変化しやすくなる。
それ以外の動作については、図1の場合と同様であり、その詳細な説明を省略する。
以上のように、本態様によると、半導体集積回路に書込み補助回路301を追加することにより、記憶回路102への上書き用比較データSBLU,NSBLUの上書き速度を速めることができる。さらに、この上書き速度の向上によって、マスク動作時に比較回路103から出力されるノイズを低減することができる。また、記憶回路102に上書き用比較データSBLU,NSBLUを書き込む際に、トランジスタPL1とトランジスタNU1、或いはトランジスタPL2とトランジスタNU2を通して流れる貫通電流を削減でき、低消費電力化が実現できる。さらに、上書き用比較データSBLU,NSBLUの上書きが容易になるため、トランジスタNU1,NU2のゲート幅を縮小でき、小面積化が実現できる。
ここで、図3の回路を用いたマスク動作では、トランジスタPL1,PL2のソースへの電源供給が遮断されるため、マスク制御信号MSKが“LOW”のときに記憶回路102に記憶されていたデータは破壊される。このデータの破壊は、マスク制御信号MSKが“HIGH”のときに比較回路103の比較結果をマスクするアプリケーションでは問題とはならない。具体的には、例えば仮想アドレス空間において論理アドレスを物理アドレスに変換するアドレス変換バッファにおいて、CAM(Content-addressable memory)の特定のビットの比較結果をページサイズメモリでマスクする機構等では、上記のデータの破壊は問題とはならない。
なお、図3では、マスク動作の際(マスク制御信号MSKが“HIGH”のとき)に、書込み補助回路301を用いてトランジスタPL1,PL2のソースへの電源供給を遮断することによって、トランジスタPL1,PL2の能力を弱める例を示したが、必ずしも電源供給を遮断する必要はない。例えば、図4に示すような書込み補助回路301を用いて、トランジスタPL1,PL2のソース電源を弱めることによって、トランジスタPL1,PL2の能力を弱めてもよい。
(書込み補助回路の他の例1)
図4(a)に示す書込み補助回路301は、図3に示した書込み補助回路301に加えて、電源とトランジスタPL1のソース及びトランジスタPL2のソースとの間に接続されたPMOSのトランジスタPH2を有している。したがって、トランジスタPH1のドレインとトランジスタPH2のドレインとは接続されている。また、トランジスタPH2のゲートはグランド電源に接続されている。
図4(a)に示す書込み補助回路301は、図3に示した書込み補助回路301に加えて、電源とトランジスタPL1のソース及びトランジスタPL2のソースとの間に接続されたPMOSのトランジスタPH2を有している。したがって、トランジスタPH1のドレインとトランジスタPH2のドレインとは接続されている。また、トランジスタPH2のゲートはグランド電源に接続されている。
書込み補助回路301をこのような構成とすることによって、マスク動作時にトランジスタPH1が“OFF”になった場合においても、トランジスタPH2が“ON”を維持する。したがって、マスク動作時には、非マスク動作時(例えば、書き込み動作時や判定動作時)と比較してトランジスタPL1,PL2のソース電源が弱くなり、トランジスタPL1,PL2の能力が低下する。これにより、記憶回路102に上書き用比較データSBLU,NSBLUが上書きされる速度を速めることができる。
ここで、「ソース電源が弱くなる」とは、例えばPMOSトランジスタの場合、トランジスタのソース電位が下がったり、電源からトランジスタのソースへの電流供給能力が下がったりする等の理由により、電源としての能力が低下することを指すものとする。
(書込み補助回路の他の例2)
図4(b)に示す書込み補助回路301は、図3に示した書込み補助回路301に加えて、電源とトランジスタPL1のソース及びトランジスタPL2のソースとの間に接続されたトランジスタPH2を有している。また、トランジスタPH2のゲートはトランジスタPH2のドレインに接続されている。したがって、トランジスタPH1のドレイン、並びにトランジスタPH2のドレイン及びゲートは接続されている。
図4(b)に示す書込み補助回路301は、図3に示した書込み補助回路301に加えて、電源とトランジスタPL1のソース及びトランジスタPL2のソースとの間に接続されたトランジスタPH2を有している。また、トランジスタPH2のゲートはトランジスタPH2のドレインに接続されている。したがって、トランジスタPH1のドレイン、並びにトランジスタPH2のドレイン及びゲートは接続されている。
書込み補助回路301をこのような構成とすることによって、マスク動作時にトランジスタPH1が“OFF”になった場合においても、PL1,PL2のソース電源は遮断されず、トランジスタPH2の閾値電圧近傍でトランジスタPL1,PL2のソース電源の電圧が維持される。これにより、マスク動作時には、非マスク動作時(例えば、書き込み動作時や判定動作時)と比較してトランジスタPL1,PL2のソース電源が弱くなり、トランジスタPL1,PL2の能力が低下する。これにより、記憶回路102に上書き用比較データSBLU,NSBLUが上書きされる速度を速めることができる。
(書込み補助回路の他の例3)
図4(c)に示す書込み補助回路301は、図3に示した書込み補助回路301に加えて、トランジスタPL1のソースに接続された電源(以下、高VDDと称する)よりも低い電圧の電源(以下、低VDDと称する)と、トランジスタPL1のソース及びトランジスタPL2のソースとの間に接続されたトランジスタPH2を有している。したがって、トランジスタPH1のドレインとトランジスタPH2のドレインとは接続されている。書込み補助回路301は、トランジスタPL1のゲートとトランジスタPH2のゲートとの間に接続されたインバータ311をさらに有している。これにより、トランジスタPH2のゲートには、反転されたマスク制御信号MSKが供給される。
図4(c)に示す書込み補助回路301は、図3に示した書込み補助回路301に加えて、トランジスタPL1のソースに接続された電源(以下、高VDDと称する)よりも低い電圧の電源(以下、低VDDと称する)と、トランジスタPL1のソース及びトランジスタPL2のソースとの間に接続されたトランジスタPH2を有している。したがって、トランジスタPH1のドレインとトランジスタPH2のドレインとは接続されている。書込み補助回路301は、トランジスタPL1のゲートとトランジスタPH2のゲートとの間に接続されたインバータ311をさらに有している。これにより、トランジスタPH2のゲートには、反転されたマスク制御信号MSKが供給される。
書込み補助回路301をこのような構成とすることによって、マスク動作時にトランジスタPH1が“OFF”になっても、トランジスタPL1,PL2のソースには、低VDDからトランジスタPH2を介して電源が供給される。すなわち、トランジスタPL1,PL2のソース電源は遮断されない。一方で、非マスク動作時には、トランジスタPH2が“OFF”されるため、トランジスタPL1,PL2のソースには、高VDDからトランジスタPL1を介して電源が供給される。
このように、マスク動作時には、非マスク動作時(例えば、書き込み動作時や判定動作時)と比較してトランジスタPL1,PL2のソース電源が下がる(弱くなる)ため、トランジスタPL1,PL2の能力が低下する。これにより、記憶回路102に上書き用比較データSBLU,NSBLUが上書きされる速度を速めることができる。
(書込み補助回路の他の例4)
図4(d)に示す書込み補助回路301は、図3に示した書込み補助回路301に加えて、電源とトランジスタPL1のソース及びトランジスタPL2のソースとの間に接続されたNMOSのトランジスタNH2を有している。したがって、トランジスタPH1のドレインとトランジスタNH2のソースとは接続されている。また、トランジスタNH2のゲートはトランジスタPH1のゲートに接続されている。
図4(d)に示す書込み補助回路301は、図3に示した書込み補助回路301に加えて、電源とトランジスタPL1のソース及びトランジスタPL2のソースとの間に接続されたNMOSのトランジスタNH2を有している。したがって、トランジスタPH1のドレインとトランジスタNH2のソースとは接続されている。また、トランジスタNH2のゲートはトランジスタPH1のゲートに接続されている。
書込み補助回路301をこのような構成とすることにより、マスク動作時はトランジスタPH1が“OFF”であり、トランジスタNH2が“ON”であるため、トランジスタPL1,PL2のソース電源が“VDD-Vthn”近傍で維持される。
これにより、マスク動作時には、非マスク動作時(例えば、書き込み動作時や判定動作時)と比較して、トランジスタPL1,PL2のソース電源が弱くなり、トランジスタPL1,PL2の能力が低下する。これにより、記憶回路102に上書き用比較データSBLU,NSBLUが上書きされる速度を速めることができる。
図3及び図4では、書込み補助回路301を追加することによって、マスク動作の際に記憶回路102への上書き用比較データSBLU,NSBLUの上書き速度を速める例について説明したが、書込み補助回路301による書き込みの補助はこれに限定されない。例えば、以下の「書込み補助回路の他の例5」に示すように、上書き用比較データSBLU,NSBLUの上書きの補助に加えて、被比較データWBL,NWBLの書き込みを補助するようにしてもよい。
(書込み補助回路の他の例5)
図5は本実施形態に係る半導体集積回路の他の例を示す回路図である。図3に記載の半導体集積回路と比較すると、本態様の書込み補助回路301は、トランジスタPH1と電源との間に設けられたPMOSのトランジスタPH3が追加されている。トランジスタPH3のゲートには、書込み制御信号WCTが接続されている。
図5は本実施形態に係る半導体集積回路の他の例を示す回路図である。図3に記載の半導体集積回路と比較すると、本態様の書込み補助回路301は、トランジスタPH1と電源との間に設けられたPMOSのトランジスタPH3が追加されている。トランジスタPH3のゲートには、書込み制御信号WCTが接続されている。
このような構成とすることによって、マスク制御信号MSKが“HIGH”のときだけでなく、書込み制御信号WCTが“HIGH”のときにも記憶回路102への書き込みが補助される。すなわち、書き込み動作の際に、記憶回路102に被比較データWBL,NWBLが書き込まれるときにも書込みが補助される。
それ以外の動作については、図3と同様であり、その詳細な説明を省略する。
以上のように、本態様によると、図3に示した書込み補助回路301に係る効果に加えて、書込み制御信号WCTが“HIGH”のときにも、記憶回路102に被比較データWBL,NWBLが書き込まれる速度を高速化することができる。また、トランジスタPL1とトランジスタNW1、或いはトランジスタPL2とトランジスタNW2を通して流れる貫通電流を削減でき、低消費電力化が実現できる。さらに、図5に示す書込み補助回路301を半導体集積回路に用いることによって、被比較データWBL,NWBLの書き込みが容易になるため、トランジスタNW1,NW2のゲート幅を縮小でき、小面積化が実現できる。
なお、図5では、書込み補助回路301を用いて、マスク動作及び書き込み動作の際に、トランジスタPL1,PL2のソースへの電源供給を遮断することによって、トランジスタPL1,PL2の能力を低下させる例を示したが、必ずしも電源供給を遮断する必要はない。例えば、図5において、図4(a)~(d)に示した回路と同様の書込み補助回路301を用いて、マスク動作及び書き込み動作のうちの少なくともいずれか一方において、トランジスタPL1,PL2のソース電源を弱めるようにしてもよい。また、図5において、マスク動作及び書き込み動作のうちのいずれか一方はトランジスタPL1,PL2のソースへの電源供給を遮断し、他方はトランジスタPL1,PL2のソース電源を弱めるような補助回路301を用いてもよい。
なお、図3~5において示した書込み補助回路301は、一例を例示したにすぎず、図3~5に示した以外の回路を用いて、トランジスタPL1,PL2の能力を弱めてもかまわない。
また、図1~図5に示した回路では、被比較データWBL,NWBL、上書き用比較データSBLU,NSBLU及び比較データSBL,NSBLは、それぞれ異なるデータ線115,116,117を介して供給されるものとしたが、少なくともいずれかの2つのデータが、共通のデータ線を介して供給されるものとしてもよい。以下の態様では、その具体的な例について説明する。
(半導体集積回路の他の例2)
図6は本実施形態に係る半導体集積回路の他の例を示す回路図である。図3に記載の半導体集積回路と比較すると、本態様に係る半導体集積回路では、同じ比較データが供給される上書き用比較データ線116と比較データ線117とを共通データ線としての一対の共通比較データ線411(以下、単に共通比較データ線411と称する)に共通化しており、この共通比較データ線411を介して比較データSBL,NSBLが供給される。これにより、共通比較データ線411のうちの一方のデータ線411には、トランジスタNU1と比較回路103とが接続され、他方のデータ線411にはトランジスタNU2と比較回路103とが接続される。それ以外の回路構成、書き込み動作及び比較動作については、図3と同様であり、その詳細な説明を省略する。
図6は本実施形態に係る半導体集積回路の他の例を示す回路図である。図3に記載の半導体集積回路と比較すると、本態様に係る半導体集積回路では、同じ比較データが供給される上書き用比較データ線116と比較データ線117とを共通データ線としての一対の共通比較データ線411(以下、単に共通比較データ線411と称する)に共通化しており、この共通比較データ線411を介して比較データSBL,NSBLが供給される。これにより、共通比較データ線411のうちの一方のデータ線411には、トランジスタNU1と比較回路103とが接続され、他方のデータ線411にはトランジスタNU2と比較回路103とが接続される。それ以外の回路構成、書き込み動作及び比較動作については、図3と同様であり、その詳細な説明を省略する。
本態様のような構成とすることによって、配線本数を削減することができ、半導体集積回路の高集積化が可能となる。また、比較動作時の充放電に係る配線負荷が減少するため、低消費電力化が実現できる。
(半導体集積回路の他の例3)
図7は本実施形態に係る半導体集積回路の他の例を示す回路図である。図6に記載の半導体集積回路と比較すると、本態様に係る半導体集積回路では、被比較データ線115と共通比較データ線411とを一対の共通データ線421(以下、単に共通データ線421と称する)に共通化している。共通データ線421には、一対の共通データBL,NBL(以下、単に共通データBL,NBLと称する)が供給される。さらに、本態様に係る半導体集積回路は、被比較データWBL,NWBLを出力する被比較データ回路402と、比較データSBL,NSBLを出力する比較データ回路403と、被比較データ回路402及び比較データ回路403と接続され、被比較データ回路402及び比較データ回路403から受けた被比較データWBL,NWBL及び比較データSBL,NSBLのうちのいずれか一方を選択し、共通データ線421に出力するデータ選択回路401とを備えている。
図7は本実施形態に係る半導体集積回路の他の例を示す回路図である。図6に記載の半導体集積回路と比較すると、本態様に係る半導体集積回路では、被比較データ線115と共通比較データ線411とを一対の共通データ線421(以下、単に共通データ線421と称する)に共通化している。共通データ線421には、一対の共通データBL,NBL(以下、単に共通データBL,NBLと称する)が供給される。さらに、本態様に係る半導体集積回路は、被比較データWBL,NWBLを出力する被比較データ回路402と、比較データSBL,NSBLを出力する比較データ回路403と、被比較データ回路402及び比較データ回路403と接続され、被比較データ回路402及び比較データ回路403から受けた被比較データWBL,NWBL及び比較データSBL,NSBLのうちのいずれか一方を選択し、共通データ線421に出力するデータ選択回路401とを備えている。
データ選択回路401は、書き込み動作時には、被比較データWBL,NWBLを選択する。すなわち、書き込み動作時には、共通データ線421に共通データBL,NBLとして被比較データWBL,NWBLが供給され、書込み制御信号WCTの制御を受けて、被比較データWBL,NWBLが記憶回路102に書き込まれる。
データ選択回路401は、比較動作時(マスク動作時及び判定動作時)には、比較データSBL,NSBLを選択する。すなわち、比較動作時には、共通データ線421に共通データBL,NBLとして比較データSBL,NSBLが供給され、マスク制御信号MSKに応じて、判定動作或いはマスク動作が実行される。
なお、データ選択回路401が被比較データWBL,NWBLを選択した後の書き込み動作及びデータ選択回路401が比較データSBL,NSBLを選択した後の比較動作については、図3及び図6と同様であり、その詳細な説明を省略する。
以上のように、本態様によると、図3及び図6の回路からさらにデータ線の本数を削減することができる。これにより、本態様に係る半導体集積回路は、一層の小面積化が可能となる。
図1~図7では、書込み回路106は、書き込み動作において記憶回路102への書き込みを行う書込み部104と、マスク動作において記憶回路102への上書きを行う上書き部105を備えるものとしたが、例えば、以下の「半導体集積回路の他の例4」に示すように、書込み部104と上書き部105とを共通化してもよい。
(半導体集積回路の他の例4)
図8は本実施形態に係る半導体集積回路の他の例を示す回路図である。図7に記載された半導体集積回路と比較すると、トランジスタNU1,NU2とトランジスタNW1,NW2とが共通化されている点で異なる。共通化されたトランジスタはNWU1,NWU2と称する。ここで、トランジスタNWU1,NWU2はNMOSトランジスタである。
図8は本実施形態に係る半導体集積回路の他の例を示す回路図である。図7に記載された半導体集積回路と比較すると、トランジスタNU1,NU2とトランジスタNW1,NW2とが共通化されている点で異なる。共通化されたトランジスタはNWU1,NWU2と称する。ここで、トランジスタNWU1,NWU2はNMOSトランジスタである。
さらに、本実施形態に係る半導体集積回路では、ORゲート501によって書込み制御信号WCTとマスク制御信号MSKとの論理和をとっており、マスク制御信号MSKに代えてORゲート501の出力信号である共通書込み制御信号WCTCを書込み補助回路301のトランジスタPH1のゲートに与えている。また、共通書込み制御信号WCTCを書込み回路106のトランジスタNWU1,NWU2のゲートに与えている。
このような構成とすることにより、書込み制御信号WCT及びマスク制御信号MSKのうちのいずれか一方が“HIGH”になると、共通書込み制御信号WCTCが“HIGH”になる。そして、そのときの共通データBL,NBLが記憶回路102に書き込まれる。書込み制御信号WCT及びマスク制御信号MSKはそれぞれ書き込み動作時及びマスク動作時に“HIGH”になる信号である。したがって、図8のような回路を用いることによって、図5と同様に書き込み動作時及びマスク動作時の書き込み(上書き)が容易になる。
以上のように、本態様によると、書込み部104と上書き部105とを共通化して書込み回路106とすることができるため、比較機能付き記憶素子101及びこれを備えた半導体集積回路の小面積化が可能となる。
なお、図8では、図7と比較してORゲート501が増加しているが、一般的には1つの共通化されたマスク制御信号MSKで複数の比較機能付き記憶素子101を制御しており、総合的に見て面積削減が可能である。なお、以下の実施の形態2では、1つの共通化されたマスク制御信号MSKで2つの比較機能付き記憶素子101を制御する例を示している。
<実施の形態2>
図9は本実施形態に係る連想メモリの回路図である。図9に示すように、連想メモリ600は、マスク対象となる2つの比較機能付き記憶素子101を有している。具体的には、図8に示した比較機能付き記憶素子101、データ選択回路401、被比較データ回路402及び比較データ回路403が2つ並列に接続されている。そして、それぞれの比較機能付き記憶素子101は、共通の書込み補助回路301及び共通のORゲート501からの出力信号を受けている。
図9は本実施形態に係る連想メモリの回路図である。図9に示すように、連想メモリ600は、マスク対象となる2つの比較機能付き記憶素子101を有している。具体的には、図8に示した比較機能付き記憶素子101、データ選択回路401、被比較データ回路402及び比較データ回路403が2つ並列に接続されている。そして、それぞれの比較機能付き記憶素子101は、共通の書込み補助回路301及び共通のORゲート501からの出力信号を受けている。
連想メモリ600は、さらに、一対のマスク情報データMBL,NMBLを記憶するマスク情報記憶素子602と、マスク制御の対象とならない比較機能付き記憶素子601とを備えている。マスク情報データMBL,NMBLは、例えば、複数の比較機能付き記憶素子のうち、論理和をとる対象から除外する比較機能付き記憶素子、すなわちマスクの対象とする比較機能付き記憶素子を示すデータである。
共通書込み制御信号WCTCを供給するORゲート501の一方の端子には、マスク情報記憶素子602の出力信号が、マスク制御信号MSKとして与えられる。また、ORゲート501の他方の端子には、書込み制御信号WCTが与えられる。マスク制御の対象とならない比較機能付き記憶素子601は、マスク対象となる比較機能付き記憶素子101と同様の構成であり、比較機能付き記憶素子101と比較すると、書込み回路106のトランジスタNWU1,NWU2のゲートに書込み制御信号WCTが与えられる点、及び記憶回路102のトランジスタPL1,PL2のソースが電源に接続されている点で異なる。
このような構成とすることにより、例えば、マスク情報記憶素子602の出力信号が“HIGH”のとき、マスク制御の対象とならない比較機能付き記憶素子601の比較結果は共通検出線113に反映される一方、2つの比較機能付き記憶素子101の比較結果はマスクされる。一方で、マスク情報記憶素子602の出力信号が“LOW”のとき、マスク制御の対象とならない比較機能付き記憶素子601の比較結果及び2つの比較機能付き記憶素子101の比較結果が共通検出線113に反映される。
一般的に仮想記憶システムにおいては、論理アドレスを物理アドレスに変換する機構が必要であり、変換の高速化を図るためのハードウェアの機構としてTLBが用いられる。TLBには各ページの論理的なアドレスと、物理メモリ上の実アドレスとを紐付けした複数のデータが記憶されている。以下、論理アドレスを記憶した記憶装置を論理アドレスアレイと称し、物理アドレスを記憶した記憶装置を物理アドレスアレイと称する。
論理アドレスを物理アドレスに変換する際は、検索対象となる論理アドレスを論理アドレスアレイに入力して、記憶している全ての論理アドレスと、検索対象となる論理アドレスとの一致比較判定を行う。一致比較判定の結果、一致している論理アドレスが存在すると、その論理アドレスに紐付けされた物理アドレスがTLBから読み出されることによってアドレス変換が実現する。このため、論理アドレスアレイのメモリセルは、1ビット比較器を内蔵したCAMセルという特殊なメモリセルが一般的に用いられ、CAMセルの出力はワイヤードORで構成される共通検出線で論理和をとられて多ビットの比較が行われる(特許文献1参照)。
また、仮想記憶システムにおいては、メモリ空間はページと呼ばれる単位で管理され、各ページサイズは最小ページサイズの倍数が用いられる。そのため、論理アドレス、物理アドレスはページのサイズによって有効なビットが変わる。これに対応するため、TLBでは、論理アドレスアレイに記憶された複数の論理アドレスごとにページサイズの情報を記憶したページサイズメモリを設ける技術が知られている(特許文献1参照)。アドレス変換の際は、ライン毎に持つページサイズメモリの情報に応じて特定のビットの比較結果が全体の比較からマスクされる。
仮想記憶システムにおけるアドレス変換バッファのTLBでは、図9に示したマスク情報記憶素子602がページサイズを記憶したページサイズ用メモリとして用いられる。また、比較機能付き記憶素子101,601は、論理アドレスを記憶し、記憶した論理アドレスと検索のために入力された論理アドレスとの比較をする機能を有したCAMセルとして用いられる。各CAMセルの出力信号は、それぞれ、トランジスタND3を介して共通検出線113に接続されている。そして、図示はしないが、例えば共通検出線113のワイヤードORをとって、複数のCAMセルに記憶された多ビットの被比較データとしての論理アドレスと、この複数のCAMセルに検索のために入力された多ビットの比較データとしての論理アドレスとの一致比較判定を行う。
TLBにおいては、図9の構成の回路を複数設けており、複数ビットからなる論理アドレスを複数エントリー分記憶している。そして、入力された検索用の論理アドレスと上記複数エントリーで記憶されている論理アドレスとを同時に比較する。
このように、TLBにおいて、図9に示した構成を適用することにより、上述の実施の形態1において示したような比較機能付き記憶素子101及びこれを用いた半導体集積回路と同様に、アドレス変換バッファ及び仮想記憶システムにおけるアドレス変換の高速化と低消費電力化、小面積化が実現できる。また、図9に示すように、図8に示した比較機能付き記憶素子101は、マスク制御を行わない比較機能付き記憶素子601と同様の構造にすることができるため、開発工数が削減できる。さらに、複数の比較機能付き記憶素子101,601からなるアレイにおいては、同様の構造の記憶素子が並ぶ連続的なレイアウトパタンによって回路を実現することができるため、歩留まりを向上させることができる。
なお、図9において、連想メモリ600は、マスク対象となる2つの比較機能付き記憶素子101と、1つのマスク制御の対象とならない比較機能付き記憶素子601とを有するものとして説明したが、それぞれの比較機能付き記憶素子101,601の数はこれに限定されない。例えば、複数のマスク制御の対象とならない比較機能付き記憶素子601を備えていてもよいし、例えば、比較機能付き記憶素子101,601の数がそれぞれ3つ以上でもよい。
また、1つの共通検出線113に接続される比較機能付き記憶素子101は同一の共通書込み制御信号WCTCの制御を受けるものとしたが、単一の又は複数の比較機能付き記憶素子101毎に異なる共通書込み制御信号の制御を受けてもよい。これにより、複数の比較機能付き記憶素子101のうち、論理和をとる対象の素子と論理和をとる対象から除外する素子とを制御することが可能となる。
<実施の形態3>
図10は本実施形態に係る多ビットの比較器の回路図である。図10に示すように、多ビット比較器700は、2つのマスク制御対象の1ビット比較器701と、マスク制御非対象の1ビット比較器721とを備えている。
図10は本実施形態に係る多ビットの比較器の回路図である。図10に示すように、多ビット比較器700は、2つのマスク制御対象の1ビット比較器701と、マスク制御非対象の1ビット比較器721とを備えている。
マスク制御対象の1ビット比較器701は、マスク制御信号MSKの制御を受けて、被比較データWBL、NWBLと比較データSBL,NSBLとのうちのいずれか一方を選択し、選択データとして出力する選択回路702と、比較データSBL,NSBLと選択回路702から受けた選択データとの一致或いは不一致の判定を行う比較回路703と、共通検出線713とグランド電源との間に接続され、比較回路703の比較結果である比較回路出力信号CNDをゲートに受けるトランジスタND11とを備えている。
選択回路702は、比較データSBL,NSBLが供給される一対の比較データ線717のうちの、一方の比較データ線717と内部比較データ線711との間に接続されたトランジスタNS11と、他方の比較データ線717と内部比較データ線712との間に接続されたトランジスタNS12と、一対の被比較データ線715のうちの一方の被比較データ線715と内部比較データ線711との間に接続されたトランジスタNS13と、他方の被比較データ線715と内部比較データ線712との間に接続されたトランジスタNS14とを備えている。トランジスタNS11,NS12のゲートには、マスク制御信号MSKが接続されている。トランジスタNS13,NS14のゲートには、マスク制御信号MSKがインバータ740を介して接続されている。そして、選択回路702の選択データは、内部比較データ線711,712を介して出力される。
比較回路703は、一対の比較データ線717間に直列に接続されたトランジスタNE11,NE12と、トランジスタNE11,NE12と並列に接続されたトランジスタPE11,PE12とを備えている。トランジスタNE11,PE12のゲートには内部比較データ線711が接続され、トランジスタNE12,PE11のゲートには内部比較データ線712が接続されている。また、トランジスタNE11とトランジスタNE12との間のノード及びトランジスタPE11とトランジスタPE12との間のノードは、トランジスタND11のゲートに接続されている。
マスク制御非対象の1ビット比較器721は、被比較データWBL,NWBLと比較データSBL,NSBLとの一致或いは不一致の判定を行う比較回路703と、共通検出線713とグランド電源との間に接続され、比較回路703の比較結果である比較回路出力信号CNDをゲートに受けるトランジスタND11とを備えている。
ここで、トランジスタNS11,NS12,NS13,NS14,NE11,NE12,ND11は、NMOSトランジスタであり、トランジスタPE11,PE12は、PMOSトランジスタである。
[比較動作]
マスク制御対象の1ビット比較器701は、比較動作として、被比較データWBL,NWBLと比較データSBL,NSBLとの一致或いは不一致の判定を行う判定動作と、比較結果をマスクするマスク動作とを有する。
マスク制御対象の1ビット比較器701は、比較動作として、被比較データWBL,NWBLと比較データSBL,NSBLとの一致或いは不一致の判定を行う判定動作と、比較結果をマスクするマスク動作とを有する。
[判定動作]
1ビット比較器701の判定動作について説明する。
1ビット比較器701の判定動作について説明する。
マスク制御信号MSKが“LOW”のとき、選択回路702のトランジスタNS13,NS14が“ON”する一方、トランジスタNS11,NS12が“OFF”している。したがって、内部比較データ線711,712からは、被比較データWBL,NWBLが出力される。これにより、比較回路703では、被比較データWBL,NWBLと比較データSBL,NSBLとが比較され、比較結果に応じてトランジスタND11が“ON”または“OFF”する。これにより、1ビット比較器701は、被比較データWBL,NWBLと比較データSBL,NSBLとの一致或いは不一致の判定結果を出力する。
[マスク動作]
1ビット比較器701のマスク動作について説明する。
1ビット比較器701のマスク動作について説明する。
マスク制御信号MSKが“HIGH”のとき、選択回路702のトランジスタNS11,NS12が“ON”する一方、トランジスタNS13,NS14が“OFF”している。したがって、内部比較データ線711,712には比較データSBL,NSBLが出力される。これにより、比較回路703には、内部比較データ線712,713及び一対の比較データ線717から、比較対象のデータとして比較データSBL,NSBLが入力される。したがって、比較回路703では同じデータ同士が比較されることになる。これにより、マスク動作における比較回路703では、被比較データWBL,NWBL及び比較データSBL,NSBLの値にかかわらず「一致判定」がなされる。したがって、比較回路出力信号CNDは“LOW”であり、トランジスタND11は“OFF”のままである。すなわち、マスク動作における比較結果はマスクされる。
なお、マスク制御非対象の1ビット比較器721では、比較回路703に対して、比較対象のデータとして比較データSBL,NSBL及び被比較データWBL,NWBLが入力される。したがって、1ビット比較器721は、被比較データWBL,NWBLと比較データSBL,NSBLとの一致或いは不一致の判定結果を出力する。
以上のように、本実施形態によると、1ビット比較器721と共通検出線713との間にマスクの有無を制御するトランジスタ(制御用のスイッチ)を設けることなく、マスク動作を実現することができる。これにより、1ビット比較器及び多ビット比較器について、高速化、低消費電力化、小面積化が実現できる。なお、共通検出線713に接続されたビット数が増加するほど、共通検出線713の負荷が大きくなるため、より顕著に高速化、低消費電力化、小面積化の効果が高まる。
本開示では、比較器並びに比較器を内蔵した記憶素子及び連想メモリ等を備えたデバイスにおいて、比較動作の高速化、小面積化、低消費電力化を実現することが可能となる。
特に比較回路が多数内蔵された大規模な連想メモリで有効な技術である。
101 比較機能付き記憶素子
102 記憶回路
103 比較回路
104 書込み部
105 上書き部
106 書込み回路
113 共通検出線
301 書込み補助回路
411 共通比較データ線(共通データ線)
421 共通データ線
600 連想メモリ
602 マスク情報記憶素子
700 多ビットの比較器
701 1ビット比較器
702 選択回路
703 比較回路
ND3 トランジスタ(スイッチ)
WCT 書込み制御信号
WCTC 共通書込み制御信号
MSK マスク制御信号
WBL,NWBL 被比較データ
SBL,NSBL 比較データ
SBLU,NSBLU 上書き用比較データ(比較データ)
102 記憶回路
103 比較回路
104 書込み部
105 上書き部
106 書込み回路
113 共通検出線
301 書込み補助回路
411 共通比較データ線(共通データ線)
421 共通データ線
600 連想メモリ
602 マスク情報記憶素子
700 多ビットの比較器
701 1ビット比較器
702 選択回路
703 比較回路
ND3 トランジスタ(スイッチ)
WCT 書込み制御信号
WCTC 共通書込み制御信号
MSK マスク制御信号
WBL,NWBL 被比較データ
SBL,NSBL 比較データ
SBLU,NSBLU 上書き用比較データ(比較データ)
Claims (16)
- 記憶された被比較データと比較データとを比較する比較機能付き記憶素子であって、
前記被比較データを記憶する記憶回路と、
書き込み動作において、書込み制御信号の制御を受けて前記記憶回路に前記被比較データを書き込む書込み回路と、
前記記憶回路が保持する前記被比較データと、前記比較データとを比較して、その比較結果を出力する比較回路とを備えており、
前記書込み回路は、前記比較回路によって比較動作を行う際に、マスク制御信号がマスク動作を示すとき、前記記憶回路に前記比較データを上書きする一方、前記マスク制御信号が非マスク動作を示すとき、前記記憶回路への前記比較データの上書きを行わない
ことを特徴とする比較機能付き記憶素子。 - 請求項1記載の比較機能付き記憶素子において、
前記書込み回路は、前記書き込み動作において前記被比較データを供給し、かつ前記比較動作において前記比較データを供給する共通データ線と前記記憶回路との間に接続されており、前記書込み制御信号及び前記マスク制御信号の論理和信号である共通書込み制御信号の制御を受けて、前記記憶回路に対して、前記書き込み動作における前記被比較データの書き込み、及び前記比較動作における前記比較データの上書きを行う
ことを特徴とする比較機能付き記憶素子。 - 請求項1記載の比較機能付き記憶素子において、
前記書込み回路は、
前記書込み制御信号の制御を受けて、前記書き込み動作における前記被比較データの書き込みを行う書込み部と、
前記マスク制御信号の制御を受けて、前記比較動作における前記比較データの上書きを行う上書き部とを備えている
ことを特徴とする比較機能付き記憶素子。 - 請求項3記載の比較機能付き記憶素子において、
前記書込み回路の書込み部が受ける被比較データ、前記書込み回路の上書き部が受ける比較データ、及び前記比較回路が受ける比較データのうちの少なくともいずれか2つのデータは、共通データ線から供給される
ことを特徴とする比較機能付き記憶素子。 - 請求項4記載の比較機能付き記憶素子において、
前記共通データ線は、前記上書き部及び前記比較回路に接続されており、前記比較データを供給する
ことを特徴とする比較機能付き記憶素子。 - 請求項4記載の比較機能付き記憶素子において、
前記共通データ線は、前記書込み部、前記上書き部及び前記比較回路に接続されており、前記比較データ及び前記被比較データを供給する
ことを特徴とする比較機能付き記憶素子。 - 請求項1記載の比較機能付き記憶素子において、
前記記憶回路に接続された書込み補助回路を備えており、
前記書込み補助回路は、前記比較動作において、前記マスク制御信号の制御を受けて、前記書込み回路から前記記憶回路への前記比較データの上書きを補助する
ことを特徴とする比較機能付き記憶素子。 - 請求項7記載の比較機能付き記憶素子において、
前記書込み補助回路は、前記書き込み動作において、前記書込み制御信号の制御を受けて、前記書込み回路から前記記憶回路への前記被比較データの書き込みを補助する
ことを特徴とする比較機能付き記憶素子。 - 請求項7記載の比較機能付き記憶素子において、
前記書込み補助回路は、電源と前記記憶回路との間に接続されており、
前記記憶回路への前記比較データの上書きの補助として、前記記憶回路への電源供給を遮断する
ことを特徴とする比較機能付き記憶素子。 - 請求項8記載の比較機能付き記憶素子において、
前記書込み補助回路は、電源と前記記憶回路との間に接続されており、
前記記憶回路への前記比較データの上書き及び前記被比較データの書き込みのうちの少なくともいずれか一方の補助として、前記記憶回路への電源供給を遮断する
ことを特徴とする比較機能付き記憶素子。 - 請求項1に記載された比較機能付き記憶素子を複数個、備えており、
前記複数の比較機能付き記憶素子において、複数の前記記憶回路に多ビットの被比較データが記憶され、かつ複数の前記比較回路に前記多ビットの被比較データと対応する多ビットの比較データが与えられており、
前記複数の比較機能付き記憶素子の比較回路から出力された比較結果の論理和をとり、当該論理和に基づいて、前記多ビットの被比較データと前記多ビットの比較データとの一致比較判定を行う
ことを特徴とする多ビットの連想メモリ。 - 請求項11記載の多ビットの連想メモリにおいて、
前記各比較機能付き記憶素子は、それぞれ、共通検出線とグランド電源との間に接続されたスイッチを備えており、
前記スイッチは、当該比較機能付き記憶素子の比較回路から出力された比較結果に基づいてオンオフ制御される
ことを特徴とする多ビットの連想メモリ。 - 請求項11記載の多ビットの連想メモリにおいて、
前記複数の比較機能付き記憶素子のうち、前記論理和をとる対象から除外する比較機能付き記憶素子を示すマスク情報を記憶するマスク情報記憶素子を備え、
前記マスク情報記憶素子の出力信号が、前記マスク制御信号として用いられる
ことを特徴とする多ビットの連想メモリ。 - 請求項11に記載の多ビットの連想メモリを用いたアドレス変換バッファであって、
前記多ビットの被比較データは、仮想アドレス空間における論理アドレスであり、
前記多ビットの比較データは、検索対象の論理アドレスであり、
前記マスク制御信号は、仮想メモリ空間のページサイズ情報を記憶したページサイズ記憶用メモリセルの出力信号である
ことを特徴とするアドレス変換バッファ。 - 被比較データと比較データとを比較する1ビット比較器であって、
マスク制御信号の制御を受けて、前記被比較データと前記比較データとのうちのいずれか一方を選択して出力する選択回路と、
前記選択回路の出力信号と前記比較データとを比較して、その比較結果を出力する比較回路とを備えており、
前記選択回路は、前記マスク制御信号がマスク動作を示すとき、前記比較データを選択して出力する一方、前記マスク制御信号が非マスク動作を示すとき、前記被比較データを選択して出力する
ことを特徴とする1ビット比較器。 - 請求項15に記載された1ビット比較器を複数個、備えており、
前記複数の1ビット比較器において、複数の前記選択回路に多ビットの被比較データが与えられ、かつ複数の前記比較回路に前記多ビットの被比較データと対応する多ビットの比較データが与えられており、
前記複数の1ビット比較器の比較回路から出力された比較結果の論理和をとり、当該論理和に基づいて、前記多ビットの被比較データと前記多ビットの比較データとの一致比較判定を行う
ことを特徴とする多ビット比較器。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014557420A JP6269509B2 (ja) | 2013-01-21 | 2014-01-21 | マスク動作時に比較データを上書きするcamセル |
US14/799,509 US9666277B2 (en) | 2013-01-21 | 2015-07-14 | CAM cell for overwriting comparison data during mask operation |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013-008453 | 2013-01-21 | ||
JP2013008453 | 2013-01-21 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/799,509 Continuation US9666277B2 (en) | 2013-01-21 | 2015-07-14 | CAM cell for overwriting comparison data during mask operation |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014112396A1 true WO2014112396A1 (ja) | 2014-07-24 |
Family
ID=51209490
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2014/000274 WO2014112396A1 (ja) | 2013-01-21 | 2014-01-21 | マスク動作時に比較データを上書きするcamセル |
Country Status (3)
Country | Link |
---|---|
US (1) | US9666277B2 (ja) |
JP (1) | JP6269509B2 (ja) |
WO (1) | WO2014112396A1 (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0421997A (ja) * | 1990-05-16 | 1992-01-24 | Nec Corp | 連想記憶回路 |
JPH07282587A (ja) * | 1994-04-06 | 1995-10-27 | Hitachi Ltd | 半導体集積回路 |
JP2004164395A (ja) * | 2002-11-14 | 2004-06-10 | Renesas Technology Corp | アドレス変換装置 |
US6867989B1 (en) * | 2002-07-29 | 2005-03-15 | Netlogic Microsystems, Inc. | Auto read content addressable memory cell and array |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10340589A (ja) | 1997-06-10 | 1998-12-22 | Hitachi Ltd | 半導体集積回路 |
US7050317B1 (en) * | 2002-03-15 | 2006-05-23 | Integrated Device Technology, Inc. | Content addressable memory (CAM) devices that support power saving longest prefix match operations and methods of operating same |
JP2007328900A (ja) * | 2006-05-09 | 2007-12-20 | Matsushita Electric Ind Co Ltd | スタティック型半導体記憶装置 |
JP2009020959A (ja) * | 2007-07-12 | 2009-01-29 | Panasonic Corp | 半導体記憶装置 |
JP4954954B2 (ja) * | 2008-08-07 | 2012-06-20 | パナソニック株式会社 | 半導体記憶装置 |
WO2011001560A1 (ja) * | 2009-07-02 | 2011-01-06 | パナソニック株式会社 | 半導体記憶装置 |
CN102834869B (zh) * | 2010-05-17 | 2015-11-25 | 株式会社索思未来 | 半导体存储装置 |
-
2014
- 2014-01-21 JP JP2014557420A patent/JP6269509B2/ja active Active
- 2014-01-21 WO PCT/JP2014/000274 patent/WO2014112396A1/ja active Application Filing
-
2015
- 2015-07-14 US US14/799,509 patent/US9666277B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0421997A (ja) * | 1990-05-16 | 1992-01-24 | Nec Corp | 連想記憶回路 |
JPH07282587A (ja) * | 1994-04-06 | 1995-10-27 | Hitachi Ltd | 半導体集積回路 |
US6867989B1 (en) * | 2002-07-29 | 2005-03-15 | Netlogic Microsystems, Inc. | Auto read content addressable memory cell and array |
JP2004164395A (ja) * | 2002-11-14 | 2004-06-10 | Renesas Technology Corp | アドレス変換装置 |
Also Published As
Publication number | Publication date |
---|---|
US20150318042A1 (en) | 2015-11-05 |
JPWO2014112396A1 (ja) | 2017-01-19 |
US9666277B2 (en) | 2017-05-30 |
JP6269509B2 (ja) | 2018-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10366755B2 (en) | Semiconductor device including TCAM cell arrays capable of skipping TCAM-cell search in response to control signal | |
JP6062578B2 (ja) | 3値連想メモリ(tcam)のための静的nandセル | |
TWI699651B (zh) | 記憶體裝置及其操作方法 | |
JP5856360B2 (ja) | 交差結合ビット線キーパーをもつメモリアレイ中で読取り書込み衝突中にクローバ電流を防げるダミー読取り | |
US20110088005A1 (en) | Method and apparatus for configuring a content-addressable memory (cam) design as binary cam or ternary cam | |
US8503210B2 (en) | Conditionally precharged dynamic content addressable memory | |
US10043578B2 (en) | Sense amplifier circuits | |
US20080022047A1 (en) | Storage circuit and method therefor | |
US20150348629A1 (en) | Non-Volatile Ternary Content-Addressable Memory with Resistive Memory Device | |
US20110103120A1 (en) | Binray content addressable memory | |
US10373684B2 (en) | Semiconductor device | |
US20160358654A1 (en) | Low-power ternary content addressable memory | |
JP6269509B2 (ja) | マスク動作時に比較データを上書きするcamセル | |
Hussain et al. | Efficient matchline controller for hybrid content addressable memory | |
US10613617B2 (en) | Semiconductor apparatus | |
US9088277B2 (en) | Leakage reduction in output driver circuits | |
US9536608B1 (en) | Content addressable memory device | |
US20050128831A1 (en) | Content addressable memory cell techniques | |
US7683662B2 (en) | Method and apparatus for implementing complex logic within a memory array | |
JP5337247B2 (ja) | 半導体記憶装置 | |
AU2021106221A4 (en) | An improved tcam cell design and method of operation for reduced power dissipation | |
KR20110049692A (ko) | 바이너리 내용 주소화 메모리 | |
Kameswaran et al. | High performance pre-computation based self-controlled precharge-free content-addressable memory | |
Raju et al. | A low power content addressable memory with self-control mechanism and segmented matchlines |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14741129 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2014557420 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 14741129 Country of ref document: EP Kind code of ref document: A1 |