US20040213027A1 - Integrated content addressable memory architecture - Google Patents

Integrated content addressable memory architecture Download PDF

Info

Publication number
US20040213027A1
US20040213027A1 US10/249,588 US24958803A US2004213027A1 US 20040213027 A1 US20040213027 A1 US 20040213027A1 US 24958803 A US24958803 A US 24958803A US 2004213027 A1 US2004213027 A1 US 2004213027A1
Authority
US
United States
Prior art keywords
cell
cam
bit
row
line
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.)
Granted
Application number
US10/249,588
Other versions
US6819579B1 (en
Inventor
Kwo-Jen Liu
Hsin-Shih Wang
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.)
Faraday Technology Corp
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to US10/249,588 priority Critical patent/US6819579B1/en
Assigned to FARADAY TECHNOLOGY GROP. reassignment FARADAY TECHNOLOGY GROP. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: WANG, HSIN-SHIH, LIU, KWO-JEN
Publication of US20040213027A1 publication Critical patent/US20040213027A1/en
Application granted granted Critical
Publication of US6819579B1 publication Critical patent/US6819579B1/en
Assigned to FARADAY TECHNOLOGY CORP. reassignment FARADAY TECHNOLOGY CORP. CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME PREVIOUSLY RECORDED ON REEL 013566, FRAME 0940. ASSIGNOR HEREBY CONFIRMS THE ASSIGNMENT OF THE ENTIRE INTEREST. Assignors: LIU, KWO-JEN, WANG, HSIN-SHIH
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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

Definitions

  • the invention relates to an integrated content addressable memory (CAM) architecture, and more particularly, to an integrated CAM architecture based on a plurality of novel ten-transistor (10-T) CAM cells combined with a valid bit cell, a protect bit cell, and at least a mask cell coupled to a plurality of associated 10-T CAM cells.
  • CAM integrated content addressable memory
  • CAM content-addressable memory
  • the CAM can be used to accelerate any application requiring fast searches of database, lists, or patterns, such as in image, voice recognition, or computer and communication designs.
  • the CAM is also ideally suited for several functions, including data process of the computer's central processing unit (CPU), Ethernet address lookup, data compression, search engines, pattern recognition for encryption/decryption and compression/decompression applications, and so on.
  • CAM content addressable memory
  • SRAM static random access memory
  • the SRAM-based CAM cells have received widespread use due to the high access speed of SRAM memory cells and the static nature of the cells.
  • search data compared data
  • each row ( 10 A to 10 K) is coupled to a corresponding match line 12 ( 12 A to 12 K) for indicating whether the compared data match the data stored in the row.
  • the compared data and the previously stored data are all N-bit digital data in the present embodiment. Take row 10 A as instance, when the N-bit compared data are totally the same as the N-bit data stored in the row 10 A of the CAM architecture 10 , the corresponding match line outputs a logic high. On the contrary, when any data bit of the N-bit compared data is opposite to a corresponding data bit of the N-bit data stored in the row of the CAM architecture 10 , the corresponding match line changes to output a logic low.
  • Previous approaches regarding data-comparing operation in a row of the CAM architecture 10 include a mask cell 15 ( 15 A to 15 K) being coupled to a plurality of associated CAM cells. The comparing operations of the associated CAM cells are then either enabled or disabled by the mask cell 15 ( 15 A to 15 K) content. For instance, the mask cell 15 A in the row 10 A are connected to the associated CAM cells 10 A( 2 ) and 10 A( 3 ), and the associated CAM cells 10 A( 2 ) and 10 A( 3 ) can be masked out by the mask cell 15 A. Examples of such implementation are also illustrated in U.S. Pat. No.
  • Each row ( 10 A to 10 K) comprises a plurality of (binary) CAM cells.
  • the row 10 A comprises N CAM cells 10 A( 1 ) to 10 A(N).
  • Each CAM cell is able to store a digital data value having two states of information: a logic one state and a logic zero state.
  • the N-bit data stored in each row ( 10 A to 10 K) consist of N digital data value stored in corresponding N (binary) CAM cells.
  • FIG. 2 is a schematic diagram of a (binary SRAM-based) prior-art CAM cell 20 in a row of the CAM architecture 10 as shown in FIG. 1. Taking the row 10 A shown in FIG.
  • the CAM cell 20 as shown in FIG. 2 can correspond to each of the CAM cells 10 A( 1 ) to 10 A(N) in the row 10 A.
  • the CAM cell 20 includes a SRAM cell 26 , a comparator module 24 , and a match line 22 .
  • the comparator module 24 compares the digital data value stored in the SRAM cell 26 with an input data value. When the input data value is the same as the digital data value stored in the SRAM cell 26 , the match line 22 will stay at the pre-charged high level. When the input data value is opposite to the digital data value stored in the SRAM cell 26 , the match line 22 will be pulled to a low potential.
  • the CAM cell 20 further includes a word line 28 , a first bit line 30 , and a second bit line 32 , wherein the SRAM cell 26 and the comparator module 24 both share the first and the second bit line 30 , 32 .
  • the CAM cell 20 if the CAM cell 20 is in the row 10 A and connected to the mask cell 15 A as shown in FIG. 1, the CAM cell 20 becomes a mask-able CAM cell 20 that effectively store three states of information, namely: a logic one state, a logic zero state, and a don't care state for comparing operations.
  • the design of mask-able CAM cells offer more flexibility for users to determine on a row-per-row (entry-per-entry) basis whose partial bits will be masked out during a comparing operation.
  • FIG. 3 is a schematic diagram of a detailed embodiment of the CAM cell 20 .
  • the CAM cell 20 is a ten-transistor (10-T) CAM cell 20 , which indicates that the SRAM cell 26 is a six-transistor (6-T) SRAM cell 26 and the comparator module 24 is a four-transistor (4-T) comparator module 24 .
  • the match line 22 will be pre-charged to a predetermined high potential before any comparison between the input data value and the digital data value stored in the 6-T SRAM cell 26 .
  • the pre-charged potential of the match line 22 may be disturbed by the initial state of any other node in the 6-T SRAM cell 26 or the 4-T comparator module 24 as a node NI.
  • the pre-charged potential of the match line 22 could be pulled down by the charge sharing between the match line 22 and the internal nodes as the node NI, and the voltage drop at the match line 22 depends on the capacitance related to the match line 22 and the internal nodes. All the above-mentioned effects of the prior art will be disadvantageous to the widely applied low-power operations.
  • a novel ten-transistor (10-T) content addressable memory (CAM) cell and an integrated CAM architecture are proposed.
  • 10-T CAM cell of the claimed invention a pre-charged potential of a match line associated with the 10-T CAM cell will not be disturbed by the initial state of any other node in the 10-T CAM cell.
  • a valid bit cell and a protect bit cell with a global resetting function in each row ( 10 A to 10 K) of the integrated CAM architecture to sufficiently ensure the correction during comparing operations.
  • the integrated CAM architecture based on the 10-T CAM cells can provide integral and multiple functions to bring the characteristics of CAM into full play.
  • a ten-transistor (10-T) content addressable memory (CAM) cell comprises a word line; a first bit line; a second bit line; a six-transistor (6-T) static random access memory (SRAM) cell coupled to the word line, the first bit line, and the second bit line for storing a digital data value; a match line for providing a match signal; a third bit line; a fourth bit line; and a four-transistor (4-T) comparator module coupled to the match line, the third bit line, the fourth bit line, and the 6-T SRAM cell for comparing the digital data value stored in the 6-T SRAM cell with an input data value provided on the third bit line or the fourth bit line.
  • an integrated content addressable memory comprises a plurality of match lines for providing a plurality of corresponding match signals; and a plurality of rows 10 A to 10 K, each row coupled to a corresponding match line comprising a plurality of CAM cells coupled to the match line; a valid bit cell coupled to the match line for storing a valid bit indicating whether the row of the integrated CAM contains valid data; and a protect bit cell coupled to the valid bit cell for setting the valid bit to zero when the protect bit cell is de-asserted, and for setting the valid bit intact when the protect bit cell is asserted.
  • an integrated content addressable memory (CAM) architecture comprises a plurality of match lines for providing a plurality of corresponding match signals; and a plurality of rows, each row coupled to a corresponding match line comprising a plurality of ten-transistor (10-T) CAM cells coupled to the corresponding match line, each 10-T CAM cell comprising a word line; a first bit line; a second bit line, wherein the first bit line and the second bit line are a pair of complementary bit lines; a six-transistor (6-T) static random access memory (SRAM) cell coupled to the word line, the first bit line, and the second bit line for storing a digital data value; a first input line; a second input line, wherein the first input line and the second input line are a pair of complementary input lines; and a four-transistor (4-T) comparator module coupled to the match line, the first input line, the second input line, and the 6-T SRAM cell for comparing the digital data value stored in
  • FIG. 1 is schematic diagram of a typical CAM architecture
  • FIG. 2 is a schematic diagram of a prior-art CAM cell in a row of the CAM architecture as shown in FIG. 1.
  • FIG. 3 is a schematic diagram of a detailed embodiment of the CAM cell as shown in FIG. 2 according to the prior art.
  • FIG. 4 is a schematic diagram of a ten-transistor (10-T) CAM cell according to the present invention.
  • FIG. 5 is a schematic diagram of the first embodiment of an integrated CAM row according to the present invention.
  • FIG. 6 is a schematic diagram of an embodiment of a valid bit cell combined with a protect bit cell according to the present invention, wherein the global valid reset signal (GS 1 ) is active high.
  • FIG. 7 is a schematic diagram of another embodiment of a valid bit cell combined with a protect bit cell according to the present invention, wherein the global valid reset signal (GS 1 ) is active low.
  • FIG. 8 is a schematic diagram of the second embodiment of an integrated CAM row according to the present invention.
  • FIG. 9 is a schematic diagram of an embodiment of the mask cell as shown in FIG. 8 and an associated CAM cell connected to the mask cell.
  • FIG. 10 is a schematic diagram of the third embodiment of an integrated CAM row according to the present invention.
  • FIG. 11 is a schematic diagram of an embodiment of an integrated CAM architecture according to the present invention.
  • FIG. 4 is a schematic diagram of a ten-transistor (10-T) content addressable memory (CAM) cell 40 according to the present invention.
  • the 10-T CAM 40 includes a word line 48 , a first bit line 50 , a second bit line 52 , and a six-transistor (6-T) static random access memory (SRAM) cell 46 coupled to the word line 48 , the first bit line 50 , and the second bit line 52 for storing a digital data value.
  • the first bit line 50 and the second bit line 52 are a first pair of complementary bit lines.
  • the 6-T SRAM cell 46 comprises two PMOS-type load transistors P 1 , P 2 respectively functioning as a load element, two NMOS-type driver transistors N 1 , N 2 respectively functioning as a driver, and two NMOS-type access transistors N 3 , N 4 for data access in the 6-T SRAM cell 46 .
  • a digital data value “1” storage as an example, during a data storage process, a higher voltage is inputted to the first bit line 50 and a lower voltage is inputted to the second bit line 52 . Therefore, the load transistor P 1 and the driver transistor N 2 are turned on, and the load transistor P 2 and the driver transistor N 1 are turned off.
  • node BF runs to a power supply terminal VSS via the turned-on driver transistor N 2 , but the current flow in the node BT will be rejected flowing to the power supply terminal VSS by the turned-off driver transistor N 1 . Consequently, node BT is in a higher voltage state and node BF is in a lower voltage state. Finally, the word line 48 is turned off so that the nodes BT, BF are maintained in the same states, and the digital data value will be stored at the nodes BT, BF respectively (the node BT and the node BF can be treated as a pair of complementary nodes).
  • the 10-T CAM 40 further includes a match line 42 for providing a match signal, a third bit line 54 , a fourth bit line 56 , and a four-transistor (4-T) comparator module.
  • the third bit line 54 (with a node DB) and the fourth bit line 56 (with a node D) are a second pair of complementary bit lines.
  • the 4-T comparator module 44 which forms an exclusive NOR (XNOR) circuit for executing comparing operations, comprises a first pair of NMOS-type transistors N 5 , N 6 , and a second pair of NMOS-type transistors N 7 , N 8 , and each pair of NMOS-type transistors is coupled between the match line 42 and a ground terminal GND.
  • XNOR exclusive NOR
  • the 4-T comparator module 44 is coupled to the match line 42 , the third bit line 54 , the fourth bit line 56 , and the 6-T SRAM cell 46 for comparing the digital data value stored in the 6-T SRAM cell 46 with an input data value provided on the third bit line 54 or the fourth bit line 56 , and the match signal provided by the match line 42 indicates whether the digital data value stored in the 6-T SRAM cell 46 matches the input data value.
  • the match line 42 will be initially pre-charged to a predetermined high potential Vcc. As shown in FIG.
  • the match signal stays at the predetermined high potential Vcc.
  • the input data value is opposite to the digital data value stored in the 6-T SRAM cell 46 , namely the voltage state of the node BT is not equal to the voltage state of the node D, the match signal will be pulled down form the predetermined high potential Vcc to a low potential.
  • the second pair of complementary bit lines (the third bit line 54 and the fourth bit line 56 ) coupled to 4-T comparator module 44 are separated from the first pair of complementary bit lines (the first bit line 50 and the second bit line 52 ) coupled to the 6-T SRAM cell 46 , and the NMOS-type transistors N 7 and N 8 respectively associated with the third bit line 54 and the fourth bit line 56 are tied to the ground terminal GND, the pre-charged potential of the match line 42 then will not be disturbed by the initial state of any other node in the 6-T SRAM cell 46 or the 4-T comparator module 44 .
  • the voltage drop at the match line 42 and any possible false match signal can also be avoided in that regard.
  • the separation of bit lines can decrease the bit-line loading of the 10-T CAM 40 to achieve a better high-speed performance.
  • FIG. 5 is a schematic diagram of the first embodiment of an integrated CAM row 60 according to the present invention.
  • the integrated CAM row 60 includes a match line 62 for providing a corresponding match signal, a plurality of CAM cells 70 ( 70 ( 1 ) to 70 (N)), a valid bit cell 64 , and a protect bit cell 68 .
  • Each CAM cell 70 as shown in FIG. 5 can be accomplished by a 10-T CAM 40 cell as shown in FIG. 4 or other type of CAM cell. If we apply the 10-T CAM 40 cell as shown in FIG. 4 into Each CAM cell 70 as shown in FIG. 5, the integrated CAM row 60 as shown in FIG.
  • the main characteristic of the present embodiment according to the present invention is the installation of the valid bit cell 64 combined with the protect bit cell 68 .
  • the valid bit cell 64 is used for storing a valid bit for indicating whether the integrated CAM row 60 contains valid data, and the protect bit cell 68 is coupled to the valid bit cell 64 for setting the valid bit to zero when the protect bit cell 68 is de-asserted and for setting the valid bit intact when the protect bit cell 68 is asserted.
  • the valid bit is logic “0”, the row is indicated to contain invalid data.
  • the row is indicated to contain valid data.
  • a comparing operation between compared data and data stored in the row of the integrated CAM is allowed to proceed. Similar to the prior art described in FIG. 1, the compared data and the previously stored data are both N-bit digital data in the present embodiment.
  • the match signal of the match line 62 will be pre-charged to a predetermined high potential before the comparing operation. When the (N-bit) compared data are totally the same as the (N-bit) data stored in the integrated CAM row 60 , the corresponding match signal stays at the predetermined high potential.
  • FIG. 6 is a schematic diagram of an embodiment of the valid bit cell 64 combined with the protect bit cell 68 as shown in FIG. 5.
  • the valid bit cell 64 is composed of a typical 6 -T SRAM cell 66 (as shown in FIG. 3) and a valid-reset module 70 coupled to the protect bit cell 68 .
  • the protect bit cell 68 is also made of the 6-T SRAM cell 76 and a protect-reset input module 72 for receiving a global signal GS 2 , so that the protect bit cell 68 can be de-asserted by the global signal GS 2 .
  • a stored bit at a node PT of the protect bit cell 68 can be globally reset to logic “0” by applying a high potential global signal GS 2 to the protect-reset input module 72 .
  • the valid bit stored at a node VT of the valid bit cell 64 can be globally reset to logic “0” by applying a high-potential global signal GS 1 to the valid-reset module 70 when the protect bit cell 68 is de-asserted (the stored bit at the node PT is “0”, and a stored bit at the node PF is “1”). If the protect bit cell 68 is stored with a “1” (the stored bit at the node PF is “0”), an NMOS-type transistor N 9 of the valid-reset module 70 will be turned off and thus the valid bit cell 64 maintains its previous state after the global resetting.
  • the above-mentioned double-protection design by the valid bit cell 64 combined with the protect bit cell 68 ) and global resetting mechanism ensures sufficient error-avoidance and comparing flexibility.
  • FIG. 7 is a schematic diagram of another embodiment of the valid bit cell 64 combined with the protect bit cell 68 according to the present invention. All of the apparatuses shown in FIG. 7 with the same attached numbers as the embodiment shown in FIG. 6 execute exactly the same operations.
  • the valid bit cell 64 is also composed of a 6-T SRAM cell 66 and a valid-reset module 70 coupled to the protect bit cell 68 .
  • the protect bit cell 68 is made of the 6-T SRAM cell 76 and a protect-reset input module 72 for receiving a global signal GS 2 , so that the protect bit cell 68 can be de-asserted by the global signal GS 2 as the former embodiment shown in FIG. 6.
  • a stored bit at a node PT of the protect bit cell 68 can be globally reset to logic “0” by applying a high-potential global signal GS 2 to the protect-reset input module 72
  • the valid bit stored at a node VT of the valid bit cell 64 can also be globally reset to logic “0” by applying a low-potential global signal GS 1 to the valid-reset module 70 when the protect bit cell 68 is de-asserted (the stored bit at the node PT is “0”).
  • FIG. 8 is a schematic diagram of the second embodiment of an integrated CAM row 80 according to the present invention.
  • the major difference between the present embodiment and the former embodiment shown in FIG. 5 is the installation of a mask cell 85 .
  • the integrated CAM row 80 includes a match line 82 for providing a corresponding match signal, a plurality of (N) CAM cells 90 ( 90 ( 1 ) to 90 (N)), a valid bit cell 84 , a protect bit cell 88 , and a mask cell 85 coupled to a few CAM cells for masking out those associated CAM cells when the mask cell 85 is asserted and for not masking out those associated CAM cells when the mask cell 85 is de-asserted.
  • Two CAM cells 90 ( 1 ) and 90 ( 2 ) are coupled to the mask cell 85 in the present embodiment.
  • the quantity of associated CAM cells connected to the mask cell 85 should not be constrained.
  • Those associated CAM cells 90 ( 1 ) and 90 ( 2 ) in the present embodiment become mask-able CAM cells and effectively store three states of information, namely: a logic one state, a logic zero state, and a don't care state for comparing operations.
  • FIG. 9, shows an embodiment of the mask cell 85 as shown in FIG. 8 and an associated CAM cell 90 ( 90 ( 1 ) or 90 ( 2 )) connected to the mask cell 85 .
  • the mask cell 85 is composed of a 6-T SRAM cell 86 combined with an NMOS-type transistor N 11 coupled to a 4-T comparator module 94 of the associated CAM cell 90 , while the associated CAM cell 90 is a 10-T CAM cell of the present invention (as shown in FIG. 3) composed of a 6-T SRAM cell 96 and the 4-T comparator module 94 .
  • the mask cell 85 is loaded with a logic “1” (namely, the mask cell 85 is asserted, a stored bit at a node MT is logic “1”, and a stored bit at a node MF is logic “0”), the NMOS-type transistor N 11 is turned off.
  • the match line 82 of the associated CAM cell 90 (mask-able CAM cell) is always at a predetermined high potential. That is so-called don't care state for the comparing operation, and the associated CAM cell 90 is always masked out.
  • the mask cell 85 is loaded with logic “0” (namely, the mask cell 85 is de-asserted, the stored bit at a node MT is logic “0”, and the stored bit at a node MF is logic “1”), the NMOS-type transistor N 11 behaves as a virtual ground. Normal CAM-related functions of the associated CAM cell 90 as shown in FIG. 8 and FIG. 9 can be implemented.
  • FIG. 10 is a schematic diagram of the third embodiment of an integrated CAM row 80 , which inherits the characteristics of the embodiment as shown in FIG. 8.
  • the quantity of the mask cells 85 is set as 2 in the present embodiment. Therefore the integrated CAM row 80 comprises 2 mask cells 85 ( 1 ) and 85 ( 2 ), and each mask cell 85 is coupled to 2 CAM cells for masking out those 2 CAM cells (The mask cells 85 ( 1 ) is coupled to 2 CAM cells 90 ( 1 ) and 90 ( 2 ), while the mask cells 85 ( 2 ) is coupled to 2 CAM cells 90 ( 3 ) and 90 ( 4 )).
  • these 2 mask cells 85 ( 1 ) and 85 ( 2 ) can be globally de-asserted by a global signal GS.
  • a valid bit cell, a protect bit cell, and at least a mask cell in an integrated CAM row can improve and expand the security and flexibility during comparing operations.
  • the following embodiment describes a novel integrated CAM architecture 100 , which inherits the characteristics of the above-mentioned embodiments as shown in FIG. 4 to FIG. 10, based on a plurality of novel ten-transistor (10-T) CAM cells combined with a valid bit cell, a protect bit cell, and at least a mask cell coupled to a plurality of associated 10-T CAM cells in each row.
  • FIG. 11 is a schematic diagram of an integrated CAM architecture 100 according to the present invention.
  • the integrated CAM architecture 100 comprises a plurality of rows 100 A to 100 K and a plurality of match lines 102 ( 102 A to 102 K) corresponding to the plurality of rows 100 A to 100 K for providing a plurality of corresponding match signals.
  • Each row which is coupled to a corresponding match line 102 , includes a plurality of ten-transistor (10-T) CAM cells 110 described in FIG. 4 coupled to the corresponding match line 102 , a valid bit cell 104 ( 104 A to 104 K), a protect bit cell 108 ( 108 A to 108 K), and at least a mask cell 105 ( 105 A to 105 K).
  • the mask cell 105 A is coupled to two associated 10-T CAM cells 110 A( 2 ) and 110 A( 3 ) in the row 100 A for masking out the associated 10-T CAM cells 110 A( 2 ) and 110 A( 3 ) when the mask cell 105 A is asserted.
  • the mask cell 105 A of the row 100 A can be connected to a plurality of associated 10-T CAM cells in the other rows (as the 10-T CAM cells 110 B( 2 ) and 110 B( 3 ) shown in FIG. 11).
  • the valid bit cell 104 ( 104 A to 104 K) of each row is for storing a valid bit indicating whether data stored in the row of the integrated CAM architecture 100 is valid, wherein the data stored in the row of the integrated CAM architecture 100 are composed of the digital data values stored in the 6-T SRAM cells 106 of the 10-T CAM cells 110 .
  • the protect bit cell 108 ( 108 A to 108 K) is coupled to the valid bit cell 104 ( 104 A to 104 K) for setting the valid bit to zero when the protect bit cell 108 ( 108 A to 108 K) is de-asserted, and for setting the valid bit intact when the protect bit cell 108 ( 108 A to 108 K) is asserted.
  • the plurality of mask cells 105 ( 105 A to 105 K), the plurality of valid bit cells 104 ( 104 A to 104 K), and the plurality of protect bit cells 108 ( 108 A to 108 K) can be globally reset by a plurality of global signals GS.
  • a novel ten-transistor (10-T) content addressable memory (CAM) cell and an integrated CAM architecture are proposed.
  • the novel 10-T CAM cell of the present invention can prevent the disturbance and charge sharing at a match line and provide low bit-line loading to improve high-speed and low-power performance.

Abstract

A novel ten-transistor (10-T) content addressable memory (CAM) cell and an integrated CAM architecture. A six-transistor (6-T) static random access memory (SRAM) cell and a four-transistor (4-T) comparator module of the 10-T CAM cell are respectively coupled to different bit lines for preventing any disturbance at a match line associated with the 10-T CAM. Each row of the integrated CAM architecture includes a valid bit cell combined with a protect bit cell and at least a mask cell with global resetting function to sufficiently ensure the correction and flexibility during comparing operations.

Description

    BACKGROUND OF INVENTION
  • 1. Field of the Invention [0001]
  • The invention relates to an integrated content addressable memory (CAM) architecture, and more particularly, to an integrated CAM architecture based on a plurality of novel ten-transistor (10-T) CAM cells combined with a valid bit cell, a protect bit cell, and at least a mask cell coupled to a plurality of associated 10-T CAM cells. [0002]
  • 2. Description of the Prior Art [0003]
  • Most memory devices store and retrieve data by addressing specific memory locations. As a result, this path often becomes the limiting factor for systems that rely on fast memory accesses. The time required to find an item stored in memory can be reduced significantly if the item can be identified for access by its content rather than by its address. A memory that is accessed in this way is called content-addressable memory (CAM). Briefly speaking, the basic feature of the CAM can be treated as a standard storage system, as a random access memory (RAM) device, combined with a comparison apparatus. Therefore, the CAM is an outgrowth of RAM technology and provides a performance advantage over other memory search structures. The CAM can be used to accelerate any application requiring fast searches of database, lists, or patterns, such as in image, voice recognition, or computer and communication designs. The CAM is also ideally suited for several functions, including data process of the computer's central processing unit (CPU), Ethernet address lookup, data compression, search engines, pattern recognition for encryption/decryption and compression/decompression applications, and so on. [0004]
  • Conventional content addressable memory (CAM) cells have been implemented primarily with static random access memory (SRAM) cells and arranged in rows and columns. The SRAM-based CAM cells have received widespread use due to the high access speed of SRAM memory cells and the static nature of the cells. With the above-mentioned characteristics of the CAM, in addition to SRAM functions of writing and storing data, the CAM also searches and compares the stored data to determine if the data match a set of compared data (search data) applied to the memory. When the newly applied compared data (search data) match the data already stored in the memory, a match result is indicated, whereas if the search and stored data do not match, a mismatch result is indicated. Please refer to FIG. 1, which is schematic diagram of a [0005] typical CAM architecture 10 arranged with a plurality of rows 10A to 10K. As shown in FIG. 1, each row (10A to 10K) is coupled to a corresponding match line 12 (12A to 12K) for indicating whether the compared data match the data stored in the row. The compared data and the previously stored data are all N-bit digital data in the present embodiment. Take row 10A as instance, when the N-bit compared data are totally the same as the N-bit data stored in the row 10A of the CAM architecture 10, the corresponding match line outputs a logic high. On the contrary, when any data bit of the N-bit compared data is opposite to a corresponding data bit of the N-bit data stored in the row of the CAM architecture 10, the corresponding match line changes to output a logic low.
  • Please go on referring to FIG. 1. Previous approaches regarding data-comparing operation in a row of the [0006] CAM architecture 10 include a mask cell 15 (15A to 15K) being coupled to a plurality of associated CAM cells. The comparing operations of the associated CAM cells are then either enabled or disabled by the mask cell 15 (15A to 15K) content. For instance, the mask cell 15A in the row 10A are connected to the associated CAM cells 10A(2) and 10A(3), and the associated CAM cells 10A(2) and 10A(3) can be masked out by the mask cell 15A. Examples of such implementation are also illustrated in U.S. Pat. No. 6,154,384, “Ternary content addressable memory cell” issued to Nataraj et al. and U.S. Pat. No. 6,108,227, “Content addressable memory having binary and ternary modes of operation” issued to Voelkel. Usually the associated CAM cells will be masked out from the comparing operations when the mask cell is asserted, and not be masked out from the comparing operations when the mask cell is de-asserted.
  • Each row ([0007] 10A to 10K) comprises a plurality of (binary) CAM cells. For instance, the row 10A comprises N CAM cells 10A(1) to 10A(N). Each CAM cell is able to store a digital data value having two states of information: a logic one state and a logic zero state. As shown in FIG. 1, the N-bit data stored in each row (10A to 10K) consist of N digital data value stored in corresponding N (binary) CAM cells. Please refer to FIG. 2, which is a schematic diagram of a (binary SRAM-based) prior-art CAM cell 20 in a row of the CAM architecture 10 as shown in FIG. 1. Taking the row 10A shown in FIG. 1 for instance, the CAM cell 20 as shown in FIG. 2 can correspond to each of the CAM cells 10A(1) to 10A(N) in the row 10A. The CAM cell 20 includes a SRAM cell 26, a comparator module 24, and a match line 22. The comparator module 24 compares the digital data value stored in the SRAM cell 26 with an input data value. When the input data value is the same as the digital data value stored in the SRAM cell 26, the match line 22 will stay at the pre-charged high level. When the input data value is opposite to the digital data value stored in the SRAM cell 26, the match line 22 will be pulled to a low potential. The CAM cell 20 further includes a word line 28, a first bit line 30, and a second bit line 32, wherein the SRAM cell 26 and the comparator module 24 both share the first and the second bit line 30, 32. Moreover, please refer to both FIG. 1 and FIG. 2, if the CAM cell 20 is in the row 10A and connected to the mask cell 15A as shown in FIG. 1, the CAM cell 20 becomes a mask-able CAM cell 20 that effectively store three states of information, namely: a logic one state, a logic zero state, and a don't care state for comparing operations. The design of mask-able CAM cells offer more flexibility for users to determine on a row-per-row (entry-per-entry) basis whose partial bits will be masked out during a comparing operation.
  • For detailing the prior-art embodiment as shown in FIG. 2, please refer to FIG. 3, which is a schematic diagram of a detailed embodiment of the [0008] CAM cell 20. The CAM cell 20 is a ten-transistor (10-T) CAM cell 20, which indicates that the SRAM cell 26 is a six-transistor (6-T) SRAM cell 26 and the comparator module 24 is a four-transistor (4-T) comparator module 24. During the practical implementation, the match line 22 will be pre-charged to a predetermined high potential before any comparison between the input data value and the digital data value stored in the 6-T SRAM cell 26. However, due to that the 6-T SRAM cell 26 and the 4-T comparator module 24 share the same first and the second bit line 10 and 32, the pre-charged potential of the match line 22 may be disturbed by the initial state of any other node in the 6-T SRAM cell 26 or the 4-T comparator module 24 as a node NI. In addition, the pre-charged potential of the match line 22 could be pulled down by the charge sharing between the match line 22 and the internal nodes as the node NI, and the voltage drop at the match line 22 depends on the capacitance related to the match line 22 and the internal nodes. All the above-mentioned effects of the prior art will be disadvantageous to the widely applied low-power operations.
  • In addition, for complying with the trend of integration of multiple functions in one electronic apparatus, it is desirable to keep CAM architecture as powerful as possible without increasing in each cell size that can translate into substantial increases in overall CAM architecture. Therefore, there is a need for developing a novel SRAM-based CAM cell and an integrated CAM architecture that achieve more efficient and sufficient alternatives, including better protection mechanism, larger comparing flexibility, and higher operating speed, than the prior art, while maintaining the characteristics of the SRAM-based CAM cell. [0009]
  • SUMMARY OF INVENTION
  • It is therefore a primary objective of the claimed invention to provide a ten-transistor (10-T) content addressable memory (CAM) cell and an integrated CAM architecture for preventing signal disturbance and for providing integral functions to solve the above-mentioned problems. [0010]
  • In the claimed invention, a novel ten-transistor (10-T) content addressable memory (CAM) cell and an integrated CAM architecture are proposed. During implementation, according to the design of 10-T CAM cell of the claimed invention, a pre-charged potential of a match line associated with the 10-T CAM cell will not be disturbed by the initial state of any other node in the 10-T CAM cell. In addition, we provide a valid bit cell and a protect bit cell with a global resetting function in each row ([0011] 10A to 10K) of the integrated CAM architecture to sufficiently ensure the correction during comparing operations. Combined with the conventional masking operation, the integrated CAM architecture based on the 10-T CAM cells can provide integral and multiple functions to bring the characteristics of CAM into full play.
  • According to the claimed invention, a ten-transistor (10-T) content addressable memory (CAM) cell comprises a word line; a first bit line; a second bit line; a six-transistor (6-T) static random access memory (SRAM) cell coupled to the word line, the first bit line, and the second bit line for storing a digital data value; a match line for providing a match signal; a third bit line; a fourth bit line; and a four-transistor (4-T) comparator module coupled to the match line, the third bit line, the fourth bit line, and the 6-T SRAM cell for comparing the digital data value stored in the 6-T SRAM cell with an input data value provided on the third bit line or the fourth bit line. [0012]
  • According to the claimed invention, an integrated content addressable memory (CAM) comprises a plurality of match lines for providing a plurality of corresponding match signals; and a plurality of [0013] rows 10A to 10K, each row coupled to a corresponding match line comprising a plurality of CAM cells coupled to the match line; a valid bit cell coupled to the match line for storing a valid bit indicating whether the row of the integrated CAM contains valid data; and a protect bit cell coupled to the valid bit cell for setting the valid bit to zero when the protect bit cell is de-asserted, and for setting the valid bit intact when the protect bit cell is asserted.
  • According to the claimed invention, an integrated content addressable memory (CAM) architecture comprises a plurality of match lines for providing a plurality of corresponding match signals; and a plurality of rows, each row coupled to a corresponding match line comprising a plurality of ten-transistor (10-T) CAM cells coupled to the corresponding match line, each 10-T CAM cell comprising a word line; a first bit line; a second bit line, wherein the first bit line and the second bit line are a pair of complementary bit lines; a six-transistor (6-T) static random access memory (SRAM) cell coupled to the word line, the first bit line, and the second bit line for storing a digital data value; a first input line; a second input line, wherein the first input line and the second input line are a pair of complementary input lines; and a four-transistor (4-T) comparator module coupled to the match line, the first input line, the second input line, and the 6-T SRAM cell for comparing the digital data value stored in the 6-T SRAM cell with an input data value provided on the first input line or the second input line; a valid bit cell for storing a valid bit indicating whether data stored in the row of the integrated CAM architecture is valid, wherein the data stored in the row of the integrated CAM architecture are composed of the digital data values stored in the 6-T SRAM cells; a protect bit cell coupled to the valid bit cell for setting the valid bit to zero when the protect bit cell is de-asserted, and for setting the valid bit intact when the protect bit cell is asserted; and at least a mask cell coupled to a plurality of associated 10-T CAM cells for masking out the associated 10-T CAM cells when the mask cell is asserted and for not masking out the associated 10-T CAM cells when the mask cell is de-asserted. [0014]
  • These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment, which is illustrated in the various figures and drawings.[0015]
  • BRIEF DESCRIPTION OF DRAWINGS
  • FIG. 1 is schematic diagram of a typical CAM architecture FIG. 2 is a schematic diagram of a prior-art CAM cell in a row of the CAM architecture as shown in FIG. 1. [0016]
  • FIG. 3 is a schematic diagram of a detailed embodiment of the CAM cell as shown in FIG. 2 according to the prior art. [0017]
  • FIG. 4 is a schematic diagram of a ten-transistor (10-T) CAM cell according to the present invention. [0018]
  • FIG. 5 is a schematic diagram of the first embodiment of an integrated CAM row according to the present invention. [0019]
  • FIG. 6 is a schematic diagram of an embodiment of a valid bit cell combined with a protect bit cell according to the present invention, wherein the global valid reset signal (GS[0020] 1) is active high.
  • FIG. 7 is a schematic diagram of another embodiment of a valid bit cell combined with a protect bit cell according to the present invention, wherein the global valid reset signal (GS[0021] 1) is active low.
  • FIG. 8 is a schematic diagram of the second embodiment of an integrated CAM row according to the present invention. [0022]
  • FIG. 9 is a schematic diagram of an embodiment of the mask cell as shown in FIG. 8 and an associated CAM cell connected to the mask cell. [0023]
  • FIG. 10 is a schematic diagram of the third embodiment of an integrated CAM row according to the present invention. [0024]
  • FIG. 11 is a schematic diagram of an embodiment of an integrated CAM architecture according to the present invention.[0025]
  • DETAILED DESCRIPTION
  • Please refer to FIG. 4, which is a schematic diagram of a ten-transistor (10-T) content addressable memory (CAM) [0026] cell 40 according to the present invention. The 10-T CAM 40 includes a word line 48, a first bit line 50, a second bit line 52, and a six-transistor (6-T) static random access memory (SRAM) cell 46 coupled to the word line 48, the first bit line 50, and the second bit line 52 for storing a digital data value. The first bit line 50 and the second bit line 52 are a first pair of complementary bit lines. The 6-T SRAM cell 46 comprises two PMOS-type load transistors P1, P2 respectively functioning as a load element, two NMOS-type driver transistors N1, N2 respectively functioning as a driver, and two NMOS-type access transistors N3, N4 for data access in the 6-T SRAM cell 46. Taking a digital data value “1” storage as an example, during a data storage process, a higher voltage is inputted to the first bit line 50 and a lower voltage is inputted to the second bit line 52. Therefore, the load transistor P1 and the driver transistor N2 are turned on, and the load transistor P2 and the driver transistor N1 are turned off. Therefore, a portion of the current flow in node BF runs to a power supply terminal VSS via the turned-on driver transistor N2, but the current flow in the node BT will be rejected flowing to the power supply terminal VSS by the turned-off driver transistor N1. Consequently, node BT is in a higher voltage state and node BF is in a lower voltage state. Finally, the word line 48 is turned off so that the nodes BT, BF are maintained in the same states, and the digital data value will be stored at the nodes BT, BF respectively (the node BT and the node BF can be treated as a pair of complementary nodes).
  • The 10-[0027] T CAM 40 further includes a match line 42 for providing a match signal, a third bit line 54, a fourth bit line 56, and a four-transistor (4-T) comparator module. The third bit line 54 (with a node DB) and the fourth bit line 56 (with a node D) are a second pair of complementary bit lines. In the present embodiment, the 4-T comparator module 44, which forms an exclusive NOR (XNOR) circuit for executing comparing operations, comprises a first pair of NMOS-type transistors N5, N6, and a second pair of NMOS-type transistors N7, N8, and each pair of NMOS-type transistors is coupled between the match line 42 and a ground terminal GND. The 4-T comparator module 44 is coupled to the match line 42, the third bit line 54, the fourth bit line 56, and the 6-T SRAM cell 46 for comparing the digital data value stored in the 6-T SRAM cell 46 with an input data value provided on the third bit line 54 or the fourth bit line 56, and the match signal provided by the match line 42 indicates whether the digital data value stored in the 6-T SRAM cell 46 matches the input data value. Before any comparison between the input data value and the digital data value stored in the 6-T SRAM cell 46, the match line 42 will be initially pre-charged to a predetermined high potential Vcc. As shown in FIG. 3, when the comparing operation is implemented, if the input data value is the same as the digital data value stored in the 6-T SRAM cell 46, as the node BT and the node D are both determined to be in a low voltage state (BT=D=0), the match signal stays at the predetermined high potential Vcc. On the contrary, if the input data value is opposite to the digital data value stored in the 6-T SRAM cell 46, namely the voltage state of the node BT is not equal to the voltage state of the node D, the match signal will be pulled down form the predetermined high potential Vcc to a low potential.
  • Due to that the second pair of complementary bit lines (the [0028] third bit line 54 and the fourth bit line 56) coupled to 4-T comparator module 44 are separated from the first pair of complementary bit lines (the first bit line 50 and the second bit line 52) coupled to the 6-T SRAM cell 46, and the NMOS-type transistors N7 and N8 respectively associated with the third bit line 54 and the fourth bit line 56 are tied to the ground terminal GND, the pre-charged potential of the match line 42 then will not be disturbed by the initial state of any other node in the 6-T SRAM cell 46 or the 4-T comparator module 44. The voltage drop at the match line 42 and any possible false match signal can also be avoided in that regard. In addition, after software simulation identification, the separation of bit lines can decrease the bit-line loading of the 10-T CAM 40 to achieve a better high-speed performance.
  • Please refer to FIG. 5, which is a schematic diagram of the first embodiment of an [0029] integrated CAM row 60 according to the present invention. The integrated CAM row 60 includes a match line 62 for providing a corresponding match signal, a plurality of CAM cells 70 (70(1) to 70(N)), a valid bit cell 64, and a protect bit cell 68. Each CAM cell 70 as shown in FIG. 5 can be accomplished by a 10-T CAM 40 cell as shown in FIG. 4 or other type of CAM cell. If we apply the 10-T CAM 40 cell as shown in FIG. 4 into Each CAM cell 70 as shown in FIG. 5, the integrated CAM row 60 as shown in FIG. 5 will inherit all the above-mentioned advantages of the novel 10-T CAM 40 cell of the present invention such as low bit-line loading and disturbance prevention. The main characteristic of the present embodiment according to the present invention is the installation of the valid bit cell 64 combined with the protect bit cell 68. The valid bit cell 64 is used for storing a valid bit for indicating whether the integrated CAM row 60 contains valid data, and the protect bit cell 68 is coupled to the valid bit cell 64 for setting the valid bit to zero when the protect bit cell 68 is de-asserted and for setting the valid bit intact when the protect bit cell 68 is asserted. In the integrated CAM row 60, when the valid bit is logic “0”, the row is indicated to contain invalid data. Conversely, when the valid bit is logic “1”, the row is indicated to contain valid data. Moreover, when the valid bit is logic “1”, a comparing operation between compared data and data stored in the row of the integrated CAM is allowed to proceed. Similar to the prior art described in FIG. 1, the compared data and the previously stored data are both N-bit digital data in the present embodiment. The match signal of the match line 62 will be pre-charged to a predetermined high potential before the comparing operation. When the (N-bit) compared data are totally the same as the (N-bit) data stored in the integrated CAM row 60, the corresponding match signal stays at the predetermined high potential. When any data bit of the (N-bit) compared data is opposite to a corresponding data bit of the (N-bit) data stored in the integrated CAM row 60, the corresponding match signal changes to a low potential from the predetermined high level. Please refer to FIG. 6, which is a schematic diagram of an embodiment of the valid bit cell 64 combined with the protect bit cell 68 as shown in FIG. 5. The valid bit cell 64 is composed of a typical 6-T SRAM cell 66 (as shown in FIG. 3) and a valid-reset module 70 coupled to the protect bit cell 68. The protect bit cell 68 is also made of the 6-T SRAM cell 76 and a protect-reset input module 72 for receiving a global signal GS2, so that the protect bit cell 68 can be de-asserted by the global signal GS2. As shown in FIG. 5, A stored bit at a node PT of the protect bit cell 68 can be globally reset to logic “0” by applying a high potential global signal GS2 to the protect-reset input module 72. Similarly, the valid bit stored at a node VT of the valid bit cell 64 can be globally reset to logic “0” by applying a high-potential global signal GS1 to the valid-reset module 70 when the protect bit cell 68 is de-asserted (the stored bit at the node PT is “0”, and a stored bit at the node PF is “1”). If the protect bit cell 68 is stored with a “1” (the stored bit at the node PF is “0”), an NMOS-type transistor N9 of the valid-reset module 70 will be turned off and thus the valid bit cell 64 maintains its previous state after the global resetting. The above-mentioned double-protection design (by the valid bit cell 64 combined with the protect bit cell 68) and global resetting mechanism ensures sufficient error-avoidance and comparing flexibility.
  • Please refer to FIG. 7, which is a schematic diagram of another embodiment of the [0030] valid bit cell 64 combined with the protect bit cell 68 according to the present invention. All of the apparatuses shown in FIG. 7 with the same attached numbers as the embodiment shown in FIG. 6 execute exactly the same operations. The valid bit cell 64 is also composed of a 6-T SRAM cell 66 and a valid-reset module 70 coupled to the protect bit cell 68. The protect bit cell 68 is made of the 6-T SRAM cell 76 and a protect-reset input module 72 for receiving a global signal GS2, so that the protect bit cell 68 can be de-asserted by the global signal GS2 as the former embodiment shown in FIG. 6. According to the unique circuit design of the present embodiment, a stored bit at a node PT of the protect bit cell 68 can be globally reset to logic “0” by applying a high-potential global signal GS2 to the protect-reset input module 72, and the valid bit stored at a node VT of the valid bit cell 64 can also be globally reset to logic “0” by applying a low-potential global signal GS1 to the valid-reset module 70 when the protect bit cell 68 is de-asserted (the stored bit at the node PT is “0”). As the former embodiment shown in FIG. 6, if the protect bit cell 68 is stored with a logic “1” (the stored bit at the node PT is “1”), an NMOS-type transistor N10 of the valid-reset module 70 will be turned off and thus the valid bit cell 64 maintains its previous state after the global resetting.
  • Please refer to FIG. 8, which is a schematic diagram of the second embodiment of an [0031] integrated CAM row 80 according to the present invention. The major difference between the present embodiment and the former embodiment shown in FIG. 5 is the installation of a mask cell 85. The integrated CAM row 80 includes a match line 82 for providing a corresponding match signal, a plurality of (N) CAM cells 90 (90(1) to 90(N)), a valid bit cell 84, a protect bit cell 88, and a mask cell 85 coupled to a few CAM cells for masking out those associated CAM cells when the mask cell 85 is asserted and for not masking out those associated CAM cells when the mask cell 85 is de-asserted. Two CAM cells 90(1) and 90(2) are coupled to the mask cell 85 in the present embodiment. However, the quantity of associated CAM cells connected to the mask cell 85 should not be constrained. Those associated CAM cells 90(1) and 90(2) in the present embodiment become mask-able CAM cells and effectively store three states of information, namely: a logic one state, a logic zero state, and a don't care state for comparing operations. Please refer to FIG. 9, which shows an embodiment of the mask cell 85 as shown in FIG. 8 and an associated CAM cell 90 (90(1) or 90(2)) connected to the mask cell 85. The mask cell 85 is composed of a 6-T SRAM cell 86 combined with an NMOS-type transistor N11 coupled to a 4-T comparator module 94 of the associated CAM cell 90, while the associated CAM cell 90 is a 10-T CAM cell of the present invention (as shown in FIG. 3) composed of a 6-T SRAM cell 96 and the 4-T comparator module 94. When the mask cell 85 is loaded with a logic “1” (namely, the mask cell 85 is asserted, a stored bit at a node MT is logic “1”, and a stored bit at a node MF is logic “0”), the NMOS-type transistor N11 is turned off. The match line 82 of the associated CAM cell 90 (mask-able CAM cell) is always at a predetermined high potential. That is so-called don't care state for the comparing operation, and the associated CAM cell 90 is always masked out. When the mask cell 85 is loaded with logic “0” (namely, the mask cell 85 is de-asserted, the stored bit at a node MT is logic “0”, and the stored bit at a node MF is logic “1”), the NMOS-type transistor N11 behaves as a virtual ground. Normal CAM-related functions of the associated CAM cell 90 as shown in FIG. 8 and FIG. 9 can be implemented. It is emphasized again that the quantity of the mask cell 85 and the quantity of the associated CAM cells 90 (connected to the mask cell 85) should not be limited. Please refer to FIG. 10, which is a schematic diagram of the third embodiment of an integrated CAM row 80, which inherits the characteristics of the embodiment as shown in FIG. 8. The quantity of the mask cells 85 is set as 2 in the present embodiment. Therefore the integrated CAM row 80 comprises 2 mask cells 85(1) and 85(2), and each mask cell 85 is coupled to 2 CAM cells for masking out those 2 CAM cells (The mask cells 85(1) is coupled to 2 CAM cells 90(1) and 90(2), while the mask cells 85(2) is coupled to 2 CAM cells 90(3) and 90(4)). Moreover, these 2 mask cells 85(1) and 85(2) can be globally de-asserted by a global signal GS. In preliminary summary, regarding those embodiments as shown in FIG. 5 to FIG. 10, the combination of a valid bit cell, a protect bit cell, and at least a mask cell in an integrated CAM row can improve and expand the security and flexibility during comparing operations.
  • The following embodiment describes a novel [0032] integrated CAM architecture 100, which inherits the characteristics of the above-mentioned embodiments as shown in FIG. 4 to FIG. 10, based on a plurality of novel ten-transistor (10-T) CAM cells combined with a valid bit cell, a protect bit cell, and at least a mask cell coupled to a plurality of associated 10-T CAM cells in each row. Please refer to FIG. 11, which is a schematic diagram of an integrated CAM architecture 100 according to the present invention. The integrated CAM architecture 100 comprises a plurality of rows 100A to 100K and a plurality of match lines 102 (102A to 102K) corresponding to the plurality of rows 100A to 100K for providing a plurality of corresponding match signals. Each row, which is coupled to a corresponding match line 102, includes a plurality of ten-transistor (10-T) CAM cells 110 described in FIG. 4 coupled to the corresponding match line 102, a valid bit cell 104 (104A to 104K), a protect bit cell 108 (108A to 108K), and at least a mask cell 105 (105A to 105K). Please notice that, taking row 100A as example, the mask cell 105A is coupled to two associated 10-T CAM cells 110A(2) and 110A(3) in the row 100A for masking out the associated 10-T CAM cells 110A(2) and 110A(3) when the mask cell 105A is asserted. In addition, the mask cell 105A of the row 100A can be connected to a plurality of associated 10-T CAM cells in the other rows (as the 10-T CAM cells 110B(2) and 110B(3) shown in FIG. 11). The valid bit cell 104 (104A to 104K) of each row is for storing a valid bit indicating whether data stored in the row of the integrated CAM architecture 100 is valid, wherein the data stored in the row of the integrated CAM architecture 100 are composed of the digital data values stored in the 6-T SRAM cells 106 of the 10-T CAM cells 110. In each row of the integrated CAM architecture 100, the protect bit cell 108 (108A to 108K) is coupled to the valid bit cell 104 (104A to 104K) for setting the valid bit to zero when the protect bit cell 108 (108A to 108K) is de-asserted, and for setting the valid bit intact when the protect bit cell 108 (108A to 108K) is asserted. Finally, please notice that in the integrated CAM architecture 100 of the present invention, the plurality of mask cells 105 (105A to 105K), the plurality of valid bit cells 104 (104A to 104K), and the plurality of protect bit cells 108 (108A to 108K) can be globally reset by a plurality of global signals GS.
  • According to the present invention, a novel ten-transistor (10-T) content addressable memory (CAM) cell and an integrated CAM architecture are proposed. The novel 10-T CAM cell of the present invention can prevent the disturbance and charge sharing at a match line and provide low bit-line loading to improve high-speed and low-power performance. In addition, we provide valid bit cells, protect bit cells, and mask cells with global resetting functions in the integrated CAM architecture to sufficiently improve the correction and flexibility during comparing operations. [0033]
  • Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims. [0034]

Claims (25)

1. A ten-transistor (10-T) content addressable memory (CAM) cell comprising:
a word line;
a first pair of complementary bit lines comprising a first bit line and a second bit line;
a six-transistor (6-T) static random access memory (SRAM) cell coupled to the word line, the first bit live, and the second bit line for storing a digital data value;
a match line for providing a match signal;
a second pair of complementary bit lines comprising a third bit line and a fourth bit line; and
a four-transistor (4-T) comparator module coupled to the match line, the third bit line, the fourth bit line, and the 6-T SRAM cell for comparing the digital data value stored in the 6-T SRAM cell with an input data value provided on the third bit line or the fourth bit line.
2. The 10-T CAM cell of claim 1, wherein when the input data value is the same as the digital data value stored in the 6-T SR cell, the match signal stays at a predetermined high potential; when the input data value is opposite to the digital data value stored in the 6-T SRAM cell, the match signal changes to a low potential.
3. The 10-T CAM cell of claim 2 further comprising a pre-charge circuit coupled to the match line for pre-charging the match signal of the match line to the predetermined high potential before the comparison between the input data value and the digital data value stored in the 6-T SRAM cell.
4. (Cancelled)
5. The 10-T CAM cell of claim 1, wherein the 4-T comparator module is an exclusive NOR circuit, which comprises a first and a second pairs of transistors, wherein each pair of transistors is coupled between the match line and a ground terminal.
6. The 10-T CAM cell of claim 1 further comprising a mask cell coupled to the 4-T comparator module, wherein when the mask cell is asserted, the match signal stays at a high potential and the 10-T CAM is masked out.
7. An integrated content addressable memory (CAM comprising:
a plurality of match lines for providing a plurality of corresponding match signals; and
a plurality of rows, each row coupled to a corresponding match line comprising:
a plurality of CAM cells coupled to the match line;
a valid bit cell for storing a valid bit indicating whether the row of the integrated CAM contains valid data; and
a protect bit cell coupled to the valid bit cell for setting the valid bit to zero when the protect bit cell is de-asserted, and for setting the valid bit intact when the protect bit cell is asserted.
8. The integrated CAM of claim 7, wherein in each row of the integrated CAM, when the valid bit is zero, the row is indicated to contain invalid data; when the valid bit is one, the row is indicated to contain valid data.
9. The integrated CAM of claim 8, wherein in each row of the integrated CAM, when the valid bit is one, a comparing operation between compared data and data stored in the row of the integrated CAM is allowed to proceed.
10. The integrated CAM of claim 9, wherein in each row of the integrated CAM, when the compared data are the same as the data stored in the row of the integrated CAM, the corresponding match signal stays at a predetermined high potential.
11. The integrated CAM of claim 9, wherein in each row of the integrated CAM, when any data bit of the compared data is opposite to a corresponding data bit of the data stored in the row of the integrated CAM, the corresponding match signal changes to a low potential from the predetermined high level.
12. The integrated CAM of claim 9, wherein in each row of the integrated CAM, each CAM cell comprises a six-transistor (6-T) static random access memory (SRAM) cell and a four-transistor (4-T) comparator module.
13. The integrated CAM of claim 12, wherein in each row of the integrated CAM, each data bit of the data stored in the row of the integrated CAM is stored in each of the 6-T SRAM cells.
14. The integrated CAM of claim 12, wherein the comparing operation in each row of the integrated CAM is executed by utilizing the 4-T comparator modules.
15. The integrated CAM of claim 7, wherein in each row of the integrated CAM, the protect cell can be de-asserted by a global signal.
16. The integrated CAM of claim 15, wherein in each row of the integrated CAM, the valid bit of the valid cell can be reset to zero by the global signal when the associated protect cell is de-asserted, and the valid bit of the valid cell will keep intact after a global reset process when the associated protect cell is asserted.
17. The integrated CAM of claim 7, wherein each row of the integrated CAM further comprises at least a mask cell coupled to a plurality of selected CAM cells for masking out the plurality of selected CAM cells when the mask cell is asserted and for not masking out the plurality of selected CAM cells when the mask cell is de-asserted.
18. The integrated CAM of claim 17, wherein in each row of the integrated CAM, the mask cell can be de-asserted by a global signal.
19. An integrated content addressable memory (CAM) architecture comprising:
a plurality of match lines for providing a plurality of corresponding match signals; and
a plurality of rows, each row coupled to a corresponding match line comprising:
a plurality of ten-transistor (10-T) CAM cells coupled to the corresponding match line, each 10-T CAM cell comprising:
a word line;
a first bit line;
a second bit line, wherein the first bit line and the second bit line are a pair of complementary bit lines;
a six-transistor (6-T) static random access memory (SRAM) cell coupled to the word line, the first bit line, and the second bit line for storing a digital data value;
a first input line;
a second input line, wherein the first input line and the second input line are a pair of complementary input lines; and
a four-transistor (4-T) comparator module coupled to the match line, the first input line, the second input line, and the 6-T SRAM cell for comparing the digital data value stored in the 6-T SRAM cell with an input data value provided on the first input line or the second input line;
a valid bit cell for storing a valid bit indicating whether data stored in the row of the integrated CAM architecture is valid, wherein the data stored in the row of the integrated CAM architecture are composed of the digital data values stored in the 6-T SRAM cells;
a protect bit cell coupled to the valid bit cell for setting the valid bit to zero after a global valid bit reset process if the protect bit cell is de-asserted, and for setting the valid bit intact after the global valid bit reset process if the protect bit cell is asserted; and
at least a mask cell coupled to a plurality of selected 10-T CAM cells for masking out the selected 10-T CAM cells when the mask cell is asserted and for not masking out the selected 10-T CAM cells when the mask cell is de-asserted.
20. The integrated CAM architecture of claim 19, wherein in each row of the integrated CAM architecture, when the valid bit is zero, the data stored in the row of the integrated CAM architecture are invalid; when the valid bit is one, the data stored in the row of the integrated CAM architecture are valid.
21. The integrated CAM architecture of claim 20, wherein in each row of the integrated CAM architecture, when the valid bit is one, a comparing operation, which is executed by utilizing the 4-T comparator modules, between compared data and the data stored in the row of the integrated CAM architecture is allowed to proceed.
22. The integrated CAM architecture of claim 21, wherein the compared data are composed of the input data values provided on the first input lines or the second input lines.
23. The integrated CAM architecture of claim 21, wherein in each row of the integrated CAM architecture, when the compared data are the same as the data stored in the row of the integrated CAM architecture, the corresponding match signal stays at a predetermined high potential; when any data bit of the compared data is opposite to a corresponding data bit of the data stored in the row of the integrated CAM architecture, the corresponding match signal changes to a predetermined low potential.
24. The integrated CAM architecture of claim 19, wherein each row of the integrated CAM architecture further comprises a plurality of mask cells, each coupled to a plurality of selected CAM cells for masking out the plurality of selected CAM cells of the same row when the mask cell is asserted and for not masking out the plurality of selected CAM cells when the mask cell is de-asserted.
25. The integrated CAM architecture of claim 24, wherein in each row of the integrated CAM architecture, the plurality of mask cells can be globally de-asserted by a global signal.
US10/249,588 2003-04-22 2003-04-22 Integrated content addressable memory architecture Expired - Fee Related US6819579B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/249,588 US6819579B1 (en) 2003-04-22 2003-04-22 Integrated content addressable memory architecture

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/249,588 US6819579B1 (en) 2003-04-22 2003-04-22 Integrated content addressable memory architecture

Publications (2)

Publication Number Publication Date
US20040213027A1 true US20040213027A1 (en) 2004-10-28
US6819579B1 US6819579B1 (en) 2004-11-16

Family

ID=33298099

Family Applications (1)

Application Number Title Priority Date Filing Date
US10/249,588 Expired - Fee Related US6819579B1 (en) 2003-04-22 2003-04-22 Integrated content addressable memory architecture

Country Status (1)

Country Link
US (1) US6819579B1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040044508A1 (en) * 2002-08-29 2004-03-04 Hoffman Robert R. Method for generating commands for testing hardware device models
US20040162937A1 (en) * 2002-11-26 2004-08-19 Infineon Technologies Ag CAM (content addressable memory) apparatus
US20050024976A1 (en) * 2003-04-25 2005-02-03 Samsung Electronics Co., Ltd. Content addressable memory device
US20060156269A1 (en) * 2005-01-07 2006-07-13 Micron Technology, Inc. Selecting data to verify in hardware device model simulation test generation
US20100299440A1 (en) * 2003-10-17 2010-11-25 Meyer James W Method and apparatus for sending data from multiple sources over a communications bus
US8576641B1 (en) * 2010-02-26 2013-11-05 Xilinx, Inc. Method of and circuit for providing non-volatile memory in an integrated circuit
RU2680870C1 (en) * 2018-01-23 2019-02-28 Федеральное государственное учреждение "Федеральный научный центр Научно-исследовательский институт системных исследований Российской академии наук" (ФГУ ФНЦ НИИСИ РАН) Method for comparing data in the cell of the associative memory device, and module for comparing data in the cell of the associative memory device

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100532508B1 (en) * 2004-03-12 2005-11-30 삼성전자주식회사 Content Addressable Memory having high speed operation
US7224594B2 (en) * 2005-07-19 2007-05-29 International Business Machines Glitch protect valid cell and method for maintaining a desired state value
US8400802B2 (en) * 2009-11-04 2013-03-19 University-Industry Cooperation Group Of Kyunghee University Binary content addressable memory
US9306596B2 (en) * 2014-06-27 2016-04-05 Intel Corporation Hybrid CAM assisted deflate decompression accelerator
US9679636B2 (en) * 2014-11-26 2017-06-13 Taiwan Semiconductor Manufacturing Company, Ltd. Memory architecture

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5999435A (en) * 1999-01-15 1999-12-07 Fast-Chip, Inc. Content addressable memory device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5999435A (en) * 1999-01-15 1999-12-07 Fast-Chip, Inc. Content addressable memory device

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060271347A1 (en) * 2002-08-29 2006-11-30 Micron Technology, Inc. Method for generating commands for testing hardware device models
US20040044508A1 (en) * 2002-08-29 2004-03-04 Hoffman Robert R. Method for generating commands for testing hardware device models
US20040162937A1 (en) * 2002-11-26 2004-08-19 Infineon Technologies Ag CAM (content addressable memory) apparatus
US7158396B2 (en) * 2002-11-26 2007-01-02 Infineon Technologies Ag CAM (content addressable memory) apparatus
US7002822B2 (en) * 2003-04-25 2006-02-21 Samsung Electronics Co., Ltd. Content addressable memory device
US20050024976A1 (en) * 2003-04-25 2005-02-03 Samsung Electronics Co., Ltd. Content addressable memory device
US20100299440A1 (en) * 2003-10-17 2010-11-25 Meyer James W Method and apparatus for sending data from multiple sources over a communications bus
US8095748B2 (en) 2003-10-17 2012-01-10 Micron Technology, Inc. Method and apparatus for sending data from multiple sources over a communications bus
US8327089B2 (en) 2003-10-17 2012-12-04 Micron Technology, Inc. Method and apparatus for sending data from multiple sources over a communications bus
US8806152B2 (en) 2003-10-17 2014-08-12 Micron Technology, Inc. Method and apparatus for sending data from multiple sources over a communications bus
US9652412B2 (en) 2003-10-17 2017-05-16 Micron Technology, Inc. Method and apparatus for sending data from multiple sources over a communications bus
US20060156269A1 (en) * 2005-01-07 2006-07-13 Micron Technology, Inc. Selecting data to verify in hardware device model simulation test generation
US7778812B2 (en) * 2005-01-07 2010-08-17 Micron Technology, Inc. Selecting data to verify in hardware device model simulation test generation
US8576641B1 (en) * 2010-02-26 2013-11-05 Xilinx, Inc. Method of and circuit for providing non-volatile memory in an integrated circuit
RU2680870C1 (en) * 2018-01-23 2019-02-28 Федеральное государственное учреждение "Федеральный научный центр Научно-исследовательский институт системных исследований Российской академии наук" (ФГУ ФНЦ НИИСИ РАН) Method for comparing data in the cell of the associative memory device, and module for comparing data in the cell of the associative memory device

Also Published As

Publication number Publication date
US6819579B1 (en) 2004-11-16

Similar Documents

Publication Publication Date Title
US7307860B2 (en) Static content addressable memory cell
US6154384A (en) Ternary content addressable memory cell
US6731526B2 (en) CAM cell array, TCAM cell, TCAM cell array, address search memory, and network address search apparatus
US6421265B1 (en) DRAM-based CAM cell using 3T or 4T DRAM cells
US6760249B2 (en) Content addressable memory device capable of comparing data bit with storage data bit
US20030161209A1 (en) Searchline control circuit and power reduction method
US20050169030A1 (en) Cutting CAM peak power by clock regioning
US6836419B2 (en) Split word line ternary CAM architecture
US6400593B1 (en) Ternary CAM cell with DRAM mask circuit
US6819579B1 (en) Integrated content addressable memory architecture
US6744654B2 (en) High density dynamic ternary-CAM memory architecture
US7068527B2 (en) Match line sensing amplifier for content addressable memory
US6266263B1 (en) CAM array with minimum cell size
US11557328B2 (en) Simultaneous write and search operation in a content addressable memory
US6839258B2 (en) Folded DRAM CAM cell
US5220526A (en) Method and apparatus for indicating a duplication of entries in a content addressable storage device
US7107390B2 (en) Parity-scanning and refresh in dynamic memory devices
US7586772B2 (en) Method and apparatus for aborting content addressable memory search operations
EP1526546B1 (en) Magnitude (relational) content addressable memory
US20050254277A1 (en) Noise reduction in a cam memory cell
US7185170B2 (en) Data processing system having translation lookaside buffer valid bits with lock and method therefor
US7254753B2 (en) Circuit and method for configuring CAM array margin test and operation
JPH10269785A (en) Associative memory

Legal Events

Date Code Title Description
AS Assignment

Owner name: FARADAY TECHNOLOGY GROP., TAIWAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LIU, KWO-JEN;WANG, HSIN-SHIH;REEL/FRAME:013586/0940;SIGNING DATES FROM 20030401 TO 20030402

AS Assignment

Owner name: FARADAY TECHNOLOGY CORP., TAIWAN

Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S NAME PREVIOUSLY RECORDED ON REEL 013566, FRAME 0940;ASSIGNORS:LIU, KWO-JEN;WANG, HSIN-SHIH;REEL/FRAME:015949/0280

Effective date: 20030401

FPAY Fee payment

Year of fee payment: 4

REMI Maintenance fee reminder mailed
LAPS Lapse for failure to pay maintenance fees
STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Expired due to failure to pay maintenance fee

Effective date: 20121116