EP2382636B1 - Power saving static-based comparator circuits and methods and content-addressable memory (cam) circuits employing same - Google Patents

Power saving static-based comparator circuits and methods and content-addressable memory (cam) circuits employing same Download PDF

Info

Publication number
EP2382636B1
EP2382636B1 EP10701423.5A EP10701423A EP2382636B1 EP 2382636 B1 EP2382636 B1 EP 2382636B1 EP 10701423 A EP10701423 A EP 10701423A EP 2382636 B1 EP2382636 B1 EP 2382636B1
Authority
EP
European Patent Office
Prior art keywords
data
comparator
cam
gate
static
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
EP10701423.5A
Other languages
German (de)
English (en)
French (fr)
Other versions
EP2382636A1 (en
Inventor
Gregory Christopher Burda
Jason Philip Martzloff
Yeshwant Nagaraj Kolla
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of EP2382636A1 publication Critical patent/EP2382636A1/en
Application granted granted Critical
Publication of EP2382636B1 publication Critical patent/EP2382636B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital 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/04Digital 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90339Query processing by using parallel associative memories or content-addressable memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the technology of the disclosure relates generally to comparator circuits and content-addressable memory (CAM) circuits and related systems and methods.
  • CAM Content-addressable memory
  • RAM random access memory
  • CAM implements a look-up table function.
  • the look-up table function determines if supplied compare data is stored in any memory locations in the CAM. If so, either the data word or a list of one or more memory locations in the CAM containing the data matching the supplied compare data is returned.
  • CAM provides high-speed access to data, because CAM employs dedicated comparator circuitry to perform the look-up function typically within a single clock cycle.
  • CAM is also known as associated memory or associative storage, because CAM provides an associative array in hardware.
  • FIG. 1 illustrates a block diagram of an exemplary CAM 10.
  • the CAM 10 is comprised of an array of multiple entries.
  • the multiple entries comprise one or more tag data fields 12 and one or more corresponding comparators 14 and RAM data fields 16.
  • Each tag data field 12 includes one (1) bit of data or multiple bits of data to form tag data.
  • the tag data field 12 is comprised of 0-M bits to form a tag data word M+1 bits in length.
  • a 0-N-sized array of N+1 physical registers, each comprising a tag data field 12 and a corresponding comparator 14 and RAM data field 16, is provided to provide multiple tag data entries in the CAM 10.
  • a separate comparator circuit is provided in the comparator 14 for each bit in the tag data field 12.
  • compare data 18 is provided and input into each comparator 14 to compare the compare data 18 against the tag data stored in each tag data field 12. For each compare data 18 that matches the tag data in any tag data field 12, the corresponding comparator 14 generates a signal indicating a match on a corresponding match line 20. Because there are typically multiple copies of the same tag data contained in different tag data fields 12 in the CAM 10, the correct tag data field 12 is marked by a valid bit (VLD) 22.
  • VLD valid bit
  • Either static logic-based comparators (“static-based”) or dynamic-based comparators can be employed in CAMs.
  • a dynamic-based comparator a dynamic comparator circuit is provided for each bit of tag data.
  • a dynamic comparator circuit employs two pairs of transistors that implement a pulldown path on a match line.
  • a mismatch between a bit of tag data and a corresponding bit of compare data in any of the dynamic comparator circuits activates a pulldown path on the match line to ground.
  • a match between all bits of tag data and all bits of corresponding compare data decouples the match line from ground.
  • Dynamic comparator circuits are generally faster than static-based comparator circuits, because they evaluate by turning on a transistor to discharge an already precharged node.
  • Static-based comparators use complementary metal oxide semiconductor (CMOS) logic where state transitions are dependent upon turning off a transistor while turning on another and are typically slower than dynamic-based comparator circuits.
  • CMOS complementary metal oxide semiconductor
  • dynamic-based comparator circuits consume more power than static-based comparator circuits.
  • Static circuits consume dynamic power when the circuit's input change causes a corresponding output change, while dynamic circuits consume dynamic power every clock cycle due to the precharge phase even when there is no input or output switching activity.
  • CAM memories including comparators can be found in WO03/052765 , US2004/0120191 , and US7382637
  • Increased power dissipation due to unnecessary switching of comparator circuits for invalid tag data may be particularly undesirable for CAMs included in battery-powered electronic devices. Increased power dissipation results in quicker battery drain and shorter battery life. It may therefore be desirable to employ static-based comparator circuits in a CAM to reduce power consumption.
  • Embodiments disclosed in the detailed description include comparators and related circuits and methods.
  • the comparator receives as input at least one validity indicator indicative of the validity of one or more bits of data to be compared against one or more bits of corresponding compare data.
  • a static-based comparator is provided and configured to selectively switch at least one comparator output coupled to a match line in response to a comparison of the data to compare data and the at least one validity indicator. If the validity indicator indicates valid data, the static-based comparator switches to drive a comparator output indicating either a match or mismatch between the data and corresponding compare data.
  • the static-based comparator provides a mismatch on a comparator output without dissipating power switching regardless of whether or not there is a match between the data and corresponding compare data. In this manner, the static-based comparator is configured to not dissipate power switching the comparator output for data marked invalid in response to a change in compare data.
  • the static-based comparators may be employed in a content-addressable memory (CAMs) for accessing tag data stored in the CAMs.
  • the CAM includes a static logic-based (“static-based") comparator for each bit of tag data in the CAM.
  • a validity indicator is also provided in the CAM indicating whether a given tag data is valid.
  • a data look-up is performed in the CAM by changing the compare data provided to the CAM.
  • Each static-based comparator in the CAM is configured to selectively switch a comparator output in response to a comparison of corresponding tag data with the compare data, and the validity indicator for the tag data.
  • the static-based comparator is comprised of a comparator circuit that includes complementary metal-oxide semiconductor (CMOS) gates comprised of a complementary pair of pass-gates having a common comparator output.
  • CMOS complementary metal-oxide semiconductor
  • the comparator circuit is configured to provide the same logical value on the inputs of both pass-gates when corresponding tag data is marked invalid to prevent switching of the comparator outputs in response to a change in compare data.
  • CMOS complementary metal-oxide semiconductor
  • a plurality of static-based comparators are provided for each bit of tag data to accommodate a plurality of either read ports, write ports, or both in a CAM.
  • Embodiments disclosed in the detailed description include comparators and related circuits and methods.
  • the comparator receives as input at least one validity indicator indicative of the validity of one or more bits of data to be compared against one or more bits of corresponding compare data.
  • a static-based comparator is provided and configured to selectively switch at least one comparator output coupled to a match line in response to a comparison of the data to compare data and the at least one validity indicator. If the validity indicator indicates valid data, the static-based comparator switches to drive a comparator output indicating either a match or mismatch between the data and corresponding compare data.
  • the static-based comparator provides a mismatch on a comparator output without dissipating power switching regardless of whether or not there is a match between the data and corresponding compare data. In this manner, the static-based comparator is configured to not dissipate power switching the comparator output for data marked invalid in response to a change in compare data.
  • the static-based comparators may be employed in a content-addressable memory (CAMs) for accessing tag data stored in the CAMs.
  • the CAM includes a static logic-based (“static-based") comparator for each bit of tag data in the CAM.
  • a validity indicator is also provided in the CAM indicating whether a given tag data is valid.
  • a data look-up is performed in the CAM by changing the compare data provided to the CAM.
  • Each static-based comparator in the CAM is configured to switch a comparator output in response to a comparison of corresponding tag data with the compare data, and the validity indicator for the tag data.
  • Figure 2 is a gate diagram of a static-based comparator 24 for one tag data field in a CAM. As illustrated in Figure 2 , each bit from a tag data field 26 comprised of M+1 bits is input into dedicated exclusive NOR (XNOR) gates 28, 30, 32, 34, 36. The other input into each XNOR gate 28, 30, 32, 34, 36 is a corresponding bit from compare data 38.
  • XNOR exclusive NOR
  • a logical high is output from the XNOR gates 28, 30, 32, 34, 36 to output lines 40, 42, 44, 46, 48.
  • Signals on the output lines 40, 42, 44, 46, 48 from the XNOR gates 28, 30, 32, 34, 36 are combined in combining logic 49.
  • the combining logic 49 comprises one or more NAND gates 52,54 receiving the output signals 40, 42, 44, 46, 48 and generating output signals which are then NOR'ed together via a NOR gate 56 to provide a match line output 58 coupled to a match line.
  • the match line output 58 will be generated as a logical high ("1") to indicate a match.
  • the match line output 58 is additionally gated by a validity indicator provided in the form of a valid data (VLD) line 60, which is input into a buffer 62 before being combined with one or more of the output signals 40, 42, 44, 46, 48. If the VLD line 60 indicates invalid data, the match line output 58 will be generated to indicate a mismatch regardless of whether the tag data in the tag data field 26 matches the compare data 38.
  • VLD valid data
  • the static-based comparator 24 in Figure 2 provides a power savings over a dynamic-based comparator
  • the power savings may be diminished by switching that occurs in the XNOR gates 28, 30, 32, 34, 36 and the NAND gate 52.
  • This is further illustrated by an exemplary CAM 74 illustrated in Figure 3 .
  • the CAM 74 in Figure 3 is illustrated as a circuit diagram.
  • the CAM 74 includes memory 76 that is coupled to static-based comparators 78.
  • a static-based comparator is a comparator employed in static logic that does not use a clock signal to evaluate the combinational logic in the comparator.
  • the memory 76 includes one or more memory cells referred to generally as element 80. Each memory cell 80 is configured to store one bit of tag data.
  • Tag data is data stored in the CAM 74 which is compared against search or compare data (CD) 98. When reading data from the memory cells 80, the read data is asserted on drive lines 92 and fed to static CMOS inverters 94 ("inverters 94").
  • the output of the inverters 94 provides tag data output 96.
  • the tag data output 96 is labeled TAG ⁇ 0-N, 0> through TAG ⁇ 0-N, M>, wherein M and N are zero or any whole number greater than zero.
  • M+1 memory cells 80 i.e., 0-M
  • N+1 array of tag data i.e., 0-N
  • an array of any number of memory cells 80 is provided up to "M+1" memory cells 80 to form either a bit or word of tag data.
  • An array of any number of memory cells 80 can be provided to provide an array of tag data.
  • compare data 98 is simply search data provided to the comparators 78 to compare against tag data as part of a look-up operation in a CAM.
  • the compare data 98 is input into and shared between all comparators 78 in the CAM 74.
  • the compare data 98 is comprised of the same number of bits as the number of bits of the tag data (i.e., M+1).
  • Each bit of the tag data output 96 and the corresponding bit of compare data 98 are input into a dedicated static-based comparator circuit 100.
  • the static-based comparator circuit 100 is comprised of CMOS gates comprising a complementary pair of first and second pass-gates 102, 104, each comprised of a P-channel MOS and N-channel MOS transistor 106, 108 that drives a common comparator output 110 to form an exclusive NOR (XNOR) gate.
  • the comparator output 110 is the output resulting from any switching of the first and second pass-gates 102, 104.
  • the tag data output 96 is input via a first signal into the first pass-gate 102.
  • An inverter 112 provides a second signal dependent on the first signal to the second pass-gate 104, which in this example is the complement of the tag data output 96.
  • the first pass-gate 102 (if logical low (“0")) or the second pass-gate 104 (if logical high (“1")) switches states and passes the tag data output 96 to drive the comparator output 110 low (“0") indicating a match.
  • the static-based comparator circuit 100 drives the comparator output 110 high (“1") to indicate a mismatch.
  • the static-based comparator circuit 100 forms an exclusive OR (XOR) gate in this example.
  • either the first or second pass-gates 102, 104 switch to drive the comparator output 110 to indicate either a match or mismatch regardless of whether the corresponding tag data is valid or not.
  • the comparator circuit 100 in the CAM 74 in Figure 3 dissipates switching power performing comparisons between the tag data output 96 and corresponding bits of compare data 98 for each change in the compare data 98, even when the tag data is marked invalid.
  • the comparator output 110 is passed through one or more additional logic gates, such as an inverter 114 to convert the XOR to an XNOR gate, to provide additional outputs 115 before finally reaching a combining gate 116.
  • the combining gate 116 is an AND gate in this example and combines the comparator outputs 110 from the static-based comparator circuits 100 for all bits of the tag data. If all the bits of tag data match the corresponding bits of compare data 98, a match line (ML) 118 is driven to indicate a match.
  • a validity indicator in the form of a valid data (VLD) line 120 is also provided to the combining gate 116 to gate the output of the ML 118.
  • the VLD line 120 is driven from a value in a valid bit corresponding to the tag data. If the tag data is not valid, the VLD line 120 will be driven to force a mismatch regardless of whether a match actually exists between the tag data outputs 96 and the corresponding bits of compare data 98.
  • FIG 4 illustrates a logic table 122 for eliminating switching in the comparator circuits 100 of the CAM 74 of Figure 3 for tag data marked invalid when the compare data 98 is changed in accordance with one embodiment.
  • the tag data output 96 (TAG ⁇ 0-N, 0-M>) and the complement of the tag data output 96 ( ⁇ TAG ⁇ 0-N, 0-M>) are the inputs to the first and second pass-gates 102, 104, respectively.
  • the operation of the CAM 74 in Figure 3 is illustrated in cases 1 and 4. In these cases, the tag data output 96 (TAG ⁇ 0-N>) and the complement of the tag data output 96 ( ⁇ TAG ⁇ 0-N>) are forced to always be opposite.
  • one of the pass-gates 102, 104 will switch and dissipate power in response to a change in the compare data 98 regardless of whether the tag data corresponding to the tag data output 96 is marked invalid.
  • the tag data output 96 TAG ⁇ 0-N>
  • the complement of the tag data output 96 ⁇ TAG ⁇ 0-N>
  • the first and second pass-gates 102, 104 would not switch in response to a change in compare data 98.
  • the comparator outputs 110 would always remain either logical low ("0") (for case 2) or logical high ("1") (for case 3).
  • the first and second pass-gates 102, 104 would not switch in response to a change in the compare data 98.
  • the logic in the logic table 122 were employed, the first and second pass-gates 102, 104 would not dissipate power switching in response to a change in the compare data 98 when corresponding tag data is marked invalid.
  • FIG. 5 illustrates an example of a CAM 130 that includes comparator circuits configured to not switch a comparator output in response to a change in the compare data 98 when corresponding tag data is marked invalid.
  • the CAM 130 is configured to behave according to case 3 in the logic table 122 of Figure 4 . In this regard, if the VLD line 120 indicates invalid tag data, corresponding comparator circuits do not switch states in response to a change in compare data and thus do not consume power performing comparisons for tag data marked invalid.
  • the CAM 130 comprises memory 132 to store one or more bits of tag data and static-based comparators 134 to compare the tag data stored in the memory 132 with compare data 98 input into the CAM 130.
  • the data stored in the CAM 130 and compared against the compare data 98 is tag data.
  • any other type of data may be provided and compared against the compare data 98 as well.
  • the memory 132 and the static-based comparators 134 contain certain common components with the CAM 74 of Figure 3 . These are noted with common element numbers between Figures 3 and 5 . The previous descriptions of these common components are generally applicable for the CAM 130 of Figure 5 unless otherwise noted, and thus will not be repeated here.
  • the tag data read from the memory cells 80 is asserted on the drive lines 92 and fed into the inverters 94 to provide the tag data output 96.
  • a control circuit comprised of an NMOS transistor 136 and a PMOS transistor 138 is provided for each inverter 94 to gate the tag data output 96. If the tag data is valid, the VLD line 120 causes the NMOS transistor 136 to couple the inverters 94 to V ss so that the stored value of the memory cell 80 is still asserted onto the tag data output 96.
  • the VLD line 120 causes the PMOS transistor 138 to pull the tag data output 96 from the inverters 94 to V DD or logical high ("1").
  • the signal input into the first pass-gate 102 will be V DD or logical high ("1") regardless of the stored value in the memory cell 80 of a tag data field.
  • a control circuit comprised of an NMOS transistor 140 and a PMOS transistor 142 are also provided to each CMOS inverter 112 providing a second signal input into the second pass-gate 104, which in this example is the complement of the tag data output 96.
  • the VLD line 120 (“1") causes the NMOS transistor 140 to couple the inverters 112 to V ss so that the value of the complement of the tag data output 96 is input into the second pass-gate 104.
  • the VLD line 120 (“0") causes the PMOS transistor 142 to pull the output of the inverter 112 to V DD or logical high (“1").
  • the VLD line 120 forces both inputs into the first and second pass-gates 102, 104 for each bit of the tag data to V DD or logical high ("1").
  • V DD logical high
  • the comparator output 110 will be driven to V DD or logical high ("1") as well.
  • the first and second pass-gates 102, 104 will not switch the state of the comparator outputs 110 and thus will not dissipate power switching states for tag data marked invalid.
  • the logical highs ("1") on the comparator outputs 110 drive the inverter 114, which inverts the comparator outputs 110 to provide additional outputs 115 which are then combined at the combining gate 116, optionally with the VLD line 120, to produce the ML 118.
  • Figure 6 illustrates an alternative embodiment of a CAM 144 that also includes static-based comparator circuits 100 configured to not switch comparator outputs when corresponding tag data is marked invalid in response to a change in the compare data 98.
  • the CAM 144 is configured to behave according to case 2 in the logic table 122 in Figure 4 , whereby logical lows ("0") are driven on both inputs to the first and second pass-gates 102, 104 to prevent switching of the comparator outputs 100 when corresponding tag data is marked invalid.
  • a validity indicator in the form of a VLD line 150 is provided that indicates that tag data is invalid when logically high ("1") and valid when logically low ("0"), opposite of the VLD line 120 in the CAM 130 of Figure 5 .
  • the CAM 144 comprises memory 146 to store tag data and static-based comparators 148 to compare the tag data output 96 from the memory 146 with corresponding compare data 98.
  • the memory 146 and the static-based comparators 148 contain certain common components with the CAM 130 of Figure 5 and the CAM 74 of Figure 3 . These are noted with common element numbers between these figures. The previous descriptions of these common components are generally applicable for the CAM 144 of Figure 6 unless otherwise noted, and thus will not be repeated here.
  • the read tag data from the memory cells 80 is asserted on the drive lines 92 and fed into the static inverters 94 to provide the tag data output 96.
  • a control circuit comprised of a PMOS transistor 152 and an NMOS transistor 154 is provided for each inverter 94 to gate the tag data output 96. If the tag data is marked valid, the ⁇ VLD line 150 will be logical low ("0") and will cause the PMOS transistor 152 to couple V DD to the inverters 94 so that the stored value of the memory cell 80 is asserted onto the tag data output 96.
  • the ⁇ VLD line 150 will be logical high (“1") and will cause the NMOS transistor 154 to pull the tag data output 96 to V ss or logical low (i.e. "0").
  • the input signal into the first pass-gate 102 will be V ss ("0") regardless of the stored value in the memory cell 80 of a tag data field.
  • a control circuit comprised of a PMOS transistor 156 and an NMOS transistor 158 are also provided in each inverter 112 providing a second signal into the second pass-gate 104, which in this example is the complement of the tag data output 96. If tag data is marked valid, the ⁇ VLD line 150 ("0") causes the PMOS transistor 156 to couple the CMOS inverters 112 to V DD ("1") so that the value of the complement of the tag data output 96 is input into the first pass-gate 102.
  • the ⁇ VLD line 150 (“1") causes the NMOS transistor 158 to pull the output of the CMOS inverters 112 to V ss or logical low (“0") to force the input into the second pass-gate 104 to logical low (“0").
  • the ⁇ VLD line 150 causes both inputs into the first and second pass-gates 102, 104 for each bit of the tag data to V ss or a logical low ("0").
  • both inputs into the first and second pass-gates 102, 104 are forced to logical low (i.e., "0"), the comparator output 110 will be driven to V ss or logical low as well.
  • the input into the first and second pass-gates 102, 104 and the comparator outputs 110 remain in the same logical state, which is logical low ("0") in this example.
  • the first and second pass-gates 102, 104 will not switch the states of the comparator outputs 110 and thus will not dissipate power switching states for tag data marked invalid when the compare data 98 changes.
  • the logical low (“0") on the comparator outputs 110 are either provided directly to the combining gate 116, or to drive the inverter 114, which will invert the comparator outputs 110 to provide additional outputs 115 which are then combined at a combining gate 160 (e.g., an AND gate), optionally with the ⁇ VLD line 150, to produce the ML 118. If the inverters 114 are not provided, the combining gate 160 will be provided of complementary logic.
  • Figure 7 illustrates yet another alternative embodiment of a CAM 162 that also includes comparator circuits configured to not switch comparator outputs when corresponding tag data is marked invalid.
  • the CAM 162 is configured to behave according to cases 3 and 4 in the logic table 122 in Figure 4 and like the CAM 130 of Figure 5 .
  • the same logical values are driven on both inputs to the first and second pass-gates 102, 104 to prevent switching for tag data marked invalid in response to a change in compare data 98.
  • the VLD line 120 in Figure 5 indicates that tag data is valid when logical high ("1") and invalid when logical low ("0"), opposite of the ⁇ VLD line 150 in the CAM 144 of Figure 6 .
  • the CAM 162 comprises memory 164 to store one or more tag data bits and static-based comparators 166 to compare corresponding tag data from the memory 164 with compare data 98.
  • the memory 164 and the static-based comparators 166 contain certain common components with the CAM 74 of Figure 3 . These are noted with common element numbers between Figures 3 and 7 . The previous descriptions of these common components are generally applicable for the CAM 162 of Figure 7 unless otherwise noted, and thus will not be repeated here.
  • the read tag data from the memory cells 80 is asserted on the drive lines 92 and fed into the inverters 94 to provide the tag data output 96 like provided in the CAM 130 of Figure 5 .
  • further gating of the tag data output 96 is not performed before the tag data output 96 is provided to the static-based comparators 166. This is like the CAM 74 of Figure 3 . No additional transistors are required in the memory cells 80.
  • the tag data output 96 (TAG ⁇ 0-N, 0>) is input directly into the first pass-gate 102.
  • the tag data output is also input into a control circuit comprised of an exclusive OR (XOR) gate 168.
  • XOR exclusive OR
  • the VLD line 150 is also input into the XOR gate 168.
  • the output of the XOR gate 168 is a second signal input into the second pass-gate 104.
  • the VLD line 120 contains a logical low (“0") indicating invalid tag data
  • the input into both the first and second pass-gates 102, 104 will be the same logical value thus preventing the first and second pass-gates 102, 104 from switching states of the comparator output 110 when the compare data 98 is changed.
  • the tag data output 96 whether logical low ("0") or logical high (“1"), will be input into both the first and second pass-gates 102, 104.
  • CAM 162 of Figure 7 no additional transistors are added to the memory cells 80 like provided in the memory cells 80 of the CAM 130 in Figure 5 and the CAM 144 in Figure 6 .
  • an XOR gate 168 is added to each of the static-based comparator circuits 100.
  • the XOR gate 168 is comprised of ten transistors.
  • a net of eight additional transistors are added to the CAM 162 of Figure 7 versus the CAM 74 of Figure 3 . This is illustrated in table 170 in Figure 8 .
  • two additional transistors are added to each the memory cell 80 and static-based comparator circuit 100 for the CAMs 130, 144 over the CAM 74 in Figure 3 to prevent the static-based comparator circuits 100 from switching when tag data is marked invalid in response to a change in compare data 98.
  • the CAM 162 of Figure 7 eight transistors are added over the CAM 74 in Figure 3 , four more than in the CAMs 130, 144 of Figures 5 and 6 , respectively. All eight additional transistors in the CAM 162 of Figure 7 are provided in the comparator circuits 100 as opposed to the CAMs 130, 144 of Figures 5 and 6 , wherein only two additional transistors are added to the static-based comparator circuits 100. If multiple input ports are provided into the CAM 162 thus requiring a static-based comparator 166 for each input port of every bit of tag data, any additional transistors provided in the static-based comparators circuits 100 will be multiplied by the number of input ports.
  • the CAMs described herein may be employed in microprocessors having microprocessor register files that contain multiple write ports. Multiple write ports accommodate writes from various pipeline stages.
  • the microprocessor register files may also contain multiple read ports. Having multiple read and write ports increases the number of comparator circuits in the CAM. Thus, employing a CAM having static-based comparators configured to not switch comparator outputs when tag data is marked invalid can realize even greater power savings for microprocessors having multiple ports.
  • Figure 9 illustrates a CAM 172 for a microprocessor employing multiple ports.
  • the multiple ports can include multiple read ports, multiple write ports, or both multiple read and write ports.
  • Multiple tag data fields 174, 176, 178 are included in the CAM 172 to form an array of tag data.
  • "N+1" tag data fields are provided each having "M+1" bits in length, wherein M and N are zero or any whole number greater than zero.
  • Each bit of the tag data stored in the tag data fields 174, 176, 178 is output over tag data output lines 180, 182, 184 and input into static-based comparators 186, 188, 190.
  • a static-based comparator 186, 188, 190 is provided for each tag bit of tag data.
  • Compare data 193 is shared across all of the static-based comparators 186, 188, 190 to compare each bit of tag data to a corresponding bit in the compare data 193.
  • Each static-based comparator 186, 188, 190 is configured to not dissipate power switching their static-based comparator outputs 192, 194, 196 when the compare data 193 changes and the corresponding tag data is marked invalid. Any of the methods and comparator circuits previously described to prevent the static-based comparators 186, 188, 190 from dissipating power switching the comparator outputs 192, 194, 196 for tag data marked invalid is employed in this regard. Because the CAM 172 is employed in a microprocessor having multiple input ports, multiple comparators are provided for each bit of tag data.
  • the CAMs, CAM circuits, and methods disclosed herein can be employed in any circuit, including but not limited to a microprocessor-based circuit or system.
  • the CAMs disclosed herein can be employed in any type of static-based memory, including without limitation, system memory or cache memory.
  • the CAMs, CAM circuits, and methods disclosed herein can be included or employed in any type of electronic device. Examples of such electronic devices include, without limitation, mobile phones, cellular phones, computers, portable computers, desktop computers, personal digital assistants (PDAs), monitors, computer monitors, televisions, tuners, radios, satellite radios, digital music players, portable music players, digital video players, digital video disc (DVD) players, and portable digital video players.
  • FIG 10 illustrates an example of processor-based system 211 that can employ a CAM like those previously described.
  • the processor-based system 211 includes a central processing unit (CPU) 212 that includes a microprocessor 214.
  • the microprocessor 214 is configured to communicate with a CAM 216 to write and read data to and from a tag data array 218.
  • the CPU 212 is coupled to the system bus 219, which intercouples the other devices included in the processor-based system 211.
  • the CPU 212 communicates with these other devices by exchanging address, control, and data information over the system bus 219.
  • These devices can include any types of devices. As illustrated in Figure 10 , these devices can include system memory 220, one or more input devices 222, one or more output devices 224, a network interface device 226, and a display controller 228, as examples.
  • the input devices 222 can include any type of input device, including but not limited to input keys, switches, voice processors, etc.
  • the output devices 224 can include any type of output device, including but not limited to audio, video, other visual indicators, etc.
  • the network interface device 226 can be any device configured to allow exchange of data to and from a network 230.
  • the network 230 can be any type of network, including but not limited to a wired or wireless network, private or public network, a local area network (LAN), a wide local area network (WLAN), and the Internet.
  • the network interface device 226 can support any type of communication protocol desired.
  • the CPU 212 can access the system memory 220 over the system bus 219.
  • the system memory 220 can include static memory 232 and/or dynamic memory 234.
  • the CPU 212 can also access the display controller 228 over the system bus 219 to control information sent to a display 236.
  • the display controller 228 can include a memory controller 237 and memory 238 to store data to be sent to the display 236 in response to communications with the CPU 212.
  • the display controller 228 sends information to the display 236 to be displayed via a video processor 240, which processes the information to be displayed into a format suitable for the display 236.
  • the display 236 can include any type of display, including but not limited to a cathode ray tube (CRT), a liquid crystal display (LCD), a plasma display, etc.
  • CTR cathode ray tube
  • LCD liquid crystal display
  • plasma display etc.
  • Logical true can be represented as a logical high ("1", V DD ) and logical false as a logical low (“0", V ss ), or vice versa.
  • DSP Digital Signal Processor
  • ASIC Application Specific Integrated Circuit
  • FPGA Field Programmable Gate Array
  • a general purpose processor can be a microprocessor, but in the alternative, the processor can be any conventional processor, controller, microcontroller, or state machine.
  • a processor can also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
  • a software module may reside in Random Access Memory (RAM), flash memory, Read Only Memory (ROM), Electrically Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
  • An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium.
  • the storage medium may be integral to the processor.
  • the processor and the storage medium may reside in an ASIC.
  • the ASIC may reside in a remote station.
  • the processor and the storage medium may reside as discrete components in a remote station, base station, or server.
EP10701423.5A 2009-01-22 2010-01-21 Power saving static-based comparator circuits and methods and content-addressable memory (cam) circuits employing same Active EP2382636B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/357,767 US8315078B2 (en) 2009-01-22 2009-01-22 Power saving static-based comparator circuits and methods and content-addressable memory (CAM) circuits employing same
PCT/US2010/021655 WO2010085562A1 (en) 2009-01-22 2010-01-21 Power saving static-based comparator circuits and methods and content-addressable memory (cam) circuits employing same

Publications (2)

Publication Number Publication Date
EP2382636A1 EP2382636A1 (en) 2011-11-02
EP2382636B1 true EP2382636B1 (en) 2016-05-25

Family

ID=41786384

Family Applications (1)

Application Number Title Priority Date Filing Date
EP10701423.5A Active EP2382636B1 (en) 2009-01-22 2010-01-21 Power saving static-based comparator circuits and methods and content-addressable memory (cam) circuits employing same

Country Status (7)

Country Link
US (1) US8315078B2 (un)
EP (1) EP2382636B1 (un)
JP (1) JP5599820B2 (un)
KR (1) KR101286120B1 (un)
CN (1) CN102272851B (un)
TW (1) TW201104687A (un)
WO (1) WO2010085562A1 (un)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8233331B2 (en) * 2010-06-02 2012-07-31 International Business Machines Corporation Single clock dynamic compare circuit
US9007799B2 (en) * 2012-04-25 2015-04-14 Intel Corporation Low power content addressable memory system
GB2529221A (en) * 2014-08-14 2016-02-17 Ibm Content addressable memory cell and array
US20160358654A1 (en) * 2015-06-02 2016-12-08 Cisco Technology, Inc. Low-power ternary content addressable memory
US9431070B1 (en) 2015-08-31 2016-08-30 National Tsing Hua University Memory apparatus
CN114079634B (zh) * 2020-08-21 2024-03-12 深圳市中兴微电子技术有限公司 一种报文转发方法、装置及计算机可读存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003052765A1 (en) * 2001-12-19 2003-06-26 Memcall L.L.C. Finding free space in a content addressable memory

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH087580A (ja) * 1994-06-23 1996-01-12 Hitachi Ltd 半導体記憶装置および情報処理装置
US5920515A (en) * 1997-09-26 1999-07-06 Advanced Micro Devices, Inc. Register-based redundancy circuit and method for built-in self-repair in a semiconductor memory device
US6405307B1 (en) * 1998-06-02 2002-06-11 Intel Corporation Apparatus and method for detecting and handling self-modifying code conflicts in an instruction fetch pipeline
US6381673B1 (en) * 1998-07-06 2002-04-30 Netlogic Microsystems, Inc. Method and apparatus for performing a read next highest priority match instruction in a content addressable memory device
JP3478749B2 (ja) * 1999-02-05 2003-12-15 インターナショナル・ビジネス・マシーンズ・コーポレーション 連想メモリ(cam)のワードマッチラインのプリチャージ回路および方法
CA2342575A1 (en) * 2001-04-03 2002-10-03 Mosaid Technologies Incorporated Content addressable memory cell
US7382637B1 (en) * 2002-02-01 2008-06-03 Netlogic Microsystems, Inc. Block-writable content addressable memory device
JP2004206242A (ja) 2002-12-24 2004-07-22 Renesas Technology Corp 半導体回路
JP3806131B2 (ja) * 2003-05-21 2006-08-09 富士通株式会社 アドレス変換バッファの電力制御方法及びその装置
US7016211B2 (en) * 2003-08-18 2006-03-21 Integrated Device Technology, Inc. DRAM-based CAM cell with shared bitlines

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003052765A1 (en) * 2001-12-19 2003-06-26 Memcall L.L.C. Finding free space in a content addressable memory

Also Published As

Publication number Publication date
EP2382636A1 (en) 2011-11-02
US8315078B2 (en) 2012-11-20
CN102272851B (zh) 2015-02-11
CN102272851A (zh) 2011-12-07
JP5599820B2 (ja) 2014-10-01
US20100182816A1 (en) 2010-07-22
WO2010085562A1 (en) 2010-07-29
JP2012514825A (ja) 2012-06-28
KR101286120B1 (ko) 2013-07-15
KR20110118691A (ko) 2011-10-31
TW201104687A (en) 2011-02-01

Similar Documents

Publication Publication Date Title
EP2382636B1 (en) Power saving static-based comparator circuits and methods and content-addressable memory (cam) circuits employing same
US20190057757A1 (en) Read-assist circuits for memory bit cells employing a p-type field-effect transistor (pfet) read port(s), and related memory systems and methods
US10224084B2 (en) Wordline negative boost write-assist circuits for memory bit cells employing a P-type field-effect transistor (PFET) write port(s), and related systems and methods
US10163490B2 (en) P-type field-effect transistor (PFET)-based sense amplifiers for reading PFET pass-gate memory bit cells, and related memory systems and methods
US10171080B2 (en) Voltage level shifter (VLS) circuits employing a pre-conditioning circuit for pre-conditioning an input signal to be voltage level shifted in response to a pre-charge phase
US9768779B2 (en) Voltage level shifters employing preconditioning circuits, and related systems and methods
EP2380174A1 (en) Self-tuning of signal path delay in circuit employing multiple voltage domains
JP6668337B2 (ja) レジスタファイル回路および最小動作供給電圧を改善するための方法
CN107533857B (zh) 用于低功率阵列的完整有效门控读取及写入
KR20130111707A (ko) 클럭 지연 도미노 로직 회로 및 이를 포함하는 장치들
US8976618B1 (en) Decoded 2N-bit bitcells in memory for storing decoded bits, and related systems and methods
WO2013162533A1 (en) Low power content addressable memory system
Chang et al. Low-power ternary content-addressable memory design based on a voltage self-controlled fin field-effect transistor segment
US9947406B2 (en) Dynamic tag compare circuits employing P-type field-effect transistor (PFET)-dominant evaluation circuits for reduced evaluation time, and related systems and methods
Hussain et al. SMS-CAM: Shared matchline scheme for content addressable memory
US6549037B1 (en) Apparatus and circuit having reduced leakage current and method therefor
US6781892B2 (en) Active leakage control in single-ended full-swing caches

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20110727

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO SE SI SK SM TR

DAX Request for extension of the european patent (deleted)
17Q First examination report despatched

Effective date: 20140213

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

INTG Intention to grant announced

Effective date: 20151208

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO SE SI SK SM TR

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

Ref country code: AT

Ref legal event code: REF

Ref document number: 802910

Country of ref document: AT

Kind code of ref document: T

Effective date: 20160615

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602010033609

Country of ref document: DE

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG4D

REG Reference to a national code

Ref country code: NL

Ref legal event code: MP

Effective date: 20160525

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

Ref country code: NO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160825

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 802910

Country of ref document: AT

Kind code of ref document: T

Effective date: 20160525

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160926

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160826

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 8

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SM

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

Ref country code: BE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602010033609

Country of ref document: DE

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed

Effective date: 20170228

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MC

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: CH

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20170131

Ref country code: LI

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20170131

REG Reference to a national code

Ref country code: IE

Ref legal event code: MM4A

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20170121

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 9

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20170121

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MT

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20170121

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO

Effective date: 20100121

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: CY

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20160525

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160525

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20160925

REG Reference to a national code

Ref country code: DE

Ref legal event code: R082

Ref document number: 602010033609

Country of ref document: DE

Representative=s name: MAUCHER JENKINS PATENTANWAELTE & RECHTSANWAELT, DE

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20221216

Year of fee payment: 14

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20221215

Year of fee payment: 14

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20231218

Year of fee payment: 15