JP4391554B2 - Associative memory - Google Patents

Associative memory Download PDF

Info

Publication number
JP4391554B2
JP4391554B2 JP2007213895A JP2007213895A JP4391554B2 JP 4391554 B2 JP4391554 B2 JP 4391554B2 JP 2007213895 A JP2007213895 A JP 2007213895A JP 2007213895 A JP2007213895 A JP 2007213895A JP 4391554 B2 JP4391554 B2 JP 4391554B2
Authority
JP
Japan
Prior art keywords
search
line
tcam
match
array
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.)
Expired - Fee Related
Application number
JP2007213895A
Other languages
Japanese (ja)
Other versions
JP2008010144A (en
Inventor
一成 井上
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.)
Renesas Technology Corp
Original Assignee
Renesas Technology Corp
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 Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP2007213895A priority Critical patent/JP4391554B2/en
Publication of JP2008010144A publication Critical patent/JP2008010144A/en
Application granted granted Critical
Publication of JP4391554B2 publication Critical patent/JP4391554B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Logic Circuits (AREA)

Description

この発明は、連想メモリに関するものである。 The present invention relates to the associative memory.

近年、インターネット利用者の増加、企業内LAN構築の増加等に応えるために、ネットワークの中継点ルータでは、処理能力の向上を図るために、連想メモリ(Content Addressable Memory:CAM)の一種であるTCAM(Ternary CAM)がアドレス検索装置として頻繁に使用されるようになってきている。以下に、図15〜図20を参照してTCAMについて説明する。なお、図15は、アドレス検索用装置としてのTCAMが使用されるネットワークシステムの構成例を示す図である。図16は、ハードウェア処理によるパケットの分類アルゴリズムを説明する図である。図17は、TCAMの基本構成および検索動作を説明する概念図である。図18は、TCAMの詳細構成を示すブロック図である。図19は、図18に示す従来のTCAMセルの構成を示す概念図である。   In order to respond to the increase in the number of Internet users and the increase in the construction of corporate LANs in recent years, a relay node router in a network is a TCAM that is a kind of content addressable memory (CAM) in order to improve the processing capability. (Ternary CAM) is frequently used as an address search device. Below, TCAM is demonstrated with reference to FIGS. FIG. 15 is a diagram illustrating a configuration example of a network system in which TCAM as an address search device is used. FIG. 16 is a diagram for explaining a packet classification algorithm by hardware processing. FIG. 17 is a conceptual diagram illustrating the basic configuration and search operation of TCAM. FIG. 18 is a block diagram showing a detailed configuration of TCAM. FIG. 19 is a conceptual diagram showing a configuration of the conventional TCAM cell shown in FIG.

図15は、非特許文献1に示されているシステム例である。図15において、ネットワーク1601は、インターネットサービスプロバイダ(ISP1)が管理している。このネットワーク1601には、中継点ルータ1602を介して企業内ネットワーク(E1)1603が接続され、また中継点ルータ1604を介して企業内ネットワーク(E2)1605が接続されている。   FIG. 15 shows a system example shown in Non-Patent Document 1. In FIG. 15, the network 1601 is managed by the Internet service provider (ISP1). An internal network (E1) 1603 is connected to the network 1601 via a relay point router 1602, and an internal network (E2) 1605 is connected via a relay point router 1604.

さらに、このネットワーク1601には、中継点ルータ1606を介してネットワークアクセスポイント(NAP)1607が接続されている。NAP1607には、インターネットサービスプロバイダ(ISP2)が管理しているネットワーク1608と、インターネットサービスプロバイダ(ISP3)が管理しているネットワーク1609とが接続されている。   Further, a network access point (NAP) 1607 is connected to the network 1601 via a relay point router 1606. A network 1608 managed by the Internet service provider (ISP2) and a network 1609 managed by the Internet service provider (ISP3) are connected to the NAP 1607.

以上の構成において、中継点ルータ1602,1604,1606では、受け取ったパケットのヘッダに記載されたルールをルックアップしてパケットの分類(Packet Classification)が行われる。例えば、中継点ルータ1606では、NAP1607から受け取ったパケットについて、「このパケットは企業内ネットワーク(E1)に行け」とか、「このパケットは企業内ネットワーク(E1)ではない、企業内ネットワーク(E2)にホップせよ」、あるいは「このパケットはどこでもない」というように分類する。   In the above configuration, the relay point routers 1602, 1604, and 1606 perform packet classification by looking up the rules described in the header of the received packet. For example, in the relay router 1606, the packet received from the NAP 1607 may be “This packet should go to the corporate network (E1)” or “This packet is not the corporate network (E1), but the corporate network (E2). Classify them as “hop” or “this packet is nowhere”.

パケットのヘッダには、このような様々の情報がルールという形で記載されており、中継点ルータ内で分類のための検索キーとなっている。中継点ルータ内では、送られてくる様々なパケットが持つルール全てについて、それぞれどのようなアクションかをルックアップし、どのルータに引き渡すか(ホップするか)などを瞬時に判断する必要がある。   Such a variety of information is described in the form of rules in the header of the packet, and serves as a search key for classification within the relay router. In the relay point router, it is necessary to look up what action each of the various rules of various packets sent has and look up to which router (hop) or the like.

パケットの分類(Packet Classification)にはいろいろな手法がある(非特許文献1参照)。今日、最も頻繁に使用されるのが、図16に示すようなハードウェア処理によるパケットの分類アルゴリズムである。これには、TCAM(Ternary Content Addressable Memory)とよばれる特殊なハードウェアが使用される。   There are various methods for packet classification (see Non-Patent Document 1). The packet classification algorithm by hardware processing as shown in FIG. 16 is most frequently used today. For this, special hardware called TCAM (Ternary Content Addressable Memory) is used.

図16において、ハードウェア処理によるパケットの分類アルゴリズムでは、TCAM1701と優先制御部(プライオリティエンコーダ)1702とアクションメモリ1703とが用いられる。   In FIG. 16, a packet classification algorithm by hardware processing uses a TCAM 1701, a priority control unit (priority encoder) 1702, and an action memory 1703.

TCAM1701には、エントリ(entry)毎にルール(rule)が保持されている。今日のTCAMは、あまりに高価であるため、このように、各エントリにはルール名、つまりラベルだけを保持しているのが通常である。次に実施すべきアクションは、比較的安価なDRAMやSRAMなどで構成されるアクションメモリ1703に記憶されている。   The TCAM 1701 holds a rule for each entry. Today's TCAMs are so expensive that each entry typically holds only a rule name, ie a label. The action to be performed next is stored in an action memory 1703 constituted by a relatively inexpensive DRAM or SRAM.

TCAM1701では、入力ピンにパケットから行き先アドレスとしてあるルールが与えられると、その入力ピンに与えられたルールを内部で保持しているルールと一斉に並列に一致比較を開始する。そして、一致、あるいは最も近いもののエントリ番号(単数または複数)を出力する。例えば、ルール{rule:R4,R5,R6}が与えられると、エントリ番号#3を出力する。   In the TCAM 1701, when a rule is given as a destination address from a packet to an input pin, coincidence comparison is started simultaneously in parallel with a rule that internally holds the rule given to the input pin. Then, the entry number (single or plural) that matches or is closest is output. For example, when a rule {rule: R4, R5, R6} is given, entry number # 3 is output.

優先制御部1702では、TCAM1701の検索結果が複数あるとき、優先度の高いエントリとして番号の一番若いエントリをアクションメモリ1703に与える。アクションメモリ1703では、優先制御部1702から入力されたエントリについて次に行うべきアクションを探し出す。その結果、次のルータが指定され、パケットが転送される、など次にホップする。   When there are a plurality of TCAM 1701 search results, the priority control unit 1702 gives the action memory 1703 the entry with the lowest number as a high priority entry. The action memory 1703 searches for an action to be performed next for the entry input from the priority control unit 1702. As a result, the next router is designated, the packet is forwarded, and so on.

ここで、例えばルールがIPアドレスである場合、“X”値(don't care)が用いられることがしばしばある。これは、一致比較の検索対象から外すという意味である。TCAM1701では、記憶値が“X”であれば無条件一致という判断をする。よって、TCAM1701の内部セルが記憶すべき情報も“0”“1”の他“X”も含めた3値となる。これがTernary型CAMなる名前の由来である。   Here, for example, when the rule is an IP address, an “X” value (don't care) is often used. This means that it is excluded from the search target for matching comparison. In the TCAM 1701, if the stored value is “X”, it is determined that the condition is unconditional. Therefore, the information to be stored in the internal cell of the TCAM 1701 is also three values including “X” in addition to “0” and “1”. This is the origin of the name Ternary type CAM.

次に、図17を参照して、TCAMのハードウェア基本構成と検索の基本動作について説明する。図17において、TCAMでは、検索命令(サーチコマンド)のデータ列が配置されるサーチポート1801が設けられている。また、各エントリ(entry#0〜#n)には、複数のTCAMセル1802が設けられている。そして、複数のTCAMセル1802は、サーチポート1801のデータ列と1対1対応に検索動作用ビット線(サーチ線)1803で接続されている。さらに、エントリ(entry#0〜#n)毎に設けられる複数のTCAMセル1802は、共通に検索出力線(マッチ線)1804に接続されている。TCAMセル1802は、上記したように、“0”“1”あるいは“X”の3値を記憶している。   Next, a basic hardware configuration of TCAM and a basic operation of search will be described with reference to FIG. In FIG. 17, TCAM is provided with a search port 1801 in which a data string of search commands (search commands) is arranged. Each entry (entries # 0 to #n) is provided with a plurality of TCAM cells 1802. The plurality of TCAM cells 1802 are connected to the data string of the search port 1801 by a search operation bit line (search line) 1803 in a one-to-one correspondence. Further, a plurality of TCAM cells 1802 provided for each entry (entries # 0 to #n) are connected to a search output line (match line) 1804 in common. As described above, the TCAM cell 1802 stores three values of “0”, “1”, or “X”.

検索動作時には、サーチコマンドが図示しない入力ピンに与えられると、サーチポート1801に転送され、サーチコマンドのデータ列が検索動作用ビット線1803上に配置され、各エントリの全てのTCAMセル1802に伝達される。これによって、全てのエントリにおいてデータ列とTCAMセル1802の保持データとの一致不一致の比較が一斉に開始される。   During a search operation, when a search command is applied to an input pin (not shown), the search command is transferred to the search port 1801, and a data string of the search command is arranged on the search operation bit line 1803 and transmitted to all TCAM cells 1802 of each entry. Is done. As a result, in all entries, comparison of coincidence / mismatch between the data string and the data held in the TCAM cell 1802 is started simultaneously.

検索出力線1804は、検索動作開始前に“H”レベルにプリチャージされている。そして、通常、一致したTCAMセル1802が接続される検索出力線1804では、その“H”レベルがそのまま保持される。一方、不一致のTCAMセル1802が接続される検索出力線1804では、セル内のトランジスタを介して放電し、“L”レベルに引き下げされる。つまり、図16に示すアドレス検索装置としてのTCAM1701では、“H”レベルを保持する検索出力線1804のエントリ番号を調べて、そのエントリ番号を優先制御部1702に出力することが行われる。以上が、TCAM1701の役割である。   The search output line 1804 is precharged to “H” level before the search operation is started. Normally, the search output line 1804 to which the matched TCAM cell 1802 is connected maintains the “H” level as it is. On the other hand, the search output line 1804 to which the mismatching TCAM cell 1802 is connected is discharged through the transistor in the cell and pulled down to the “L” level. That is, in the TCAM 1701 as the address search device shown in FIG. 16, the entry number of the search output line 1804 holding the “H” level is checked and the entry number is output to the priority control unit 1702. The above is the role of the TCAM 1701.

次に、図18を参照してTCAMの詳細構成と検索動作等の概要とについて説明する。図18に示すように、外部との接続ピンとして、データ入出力ピン1901と、命令制御ピン1902と、アドレス入力ピン1903と、検索結果出力ピン1904とを備えている。   Next, the detailed configuration of the TCAM and the outline of the search operation and the like will be described with reference to FIG. As shown in FIG. 18, data input / output pins 1901, instruction control pins 1902, address input pins 1903, and search result output pins 1904 are provided as connection pins to the outside.

命令制御ピン1902には、命令解読器1921が接続されている。命令制御ピン1902に与えられた命令が命令解読器1921にて解読され、その解読結果による動作指示が各部に通知されるようになっている。   An instruction decoder 1921 is connected to the instruction control pin 1902. The instruction given to the instruction control pin 1902 is decoded by the instruction decoder 1921 and an operation instruction based on the decoding result is notified to each unit.

アドレス入力ピン1903には、デコーダ1931が接続されている。デコーダ1931の出力端には、行デコーダ1932が接続されている。また、検索結果出力ピン1904には、検索エンコーダ1941の出力端が接続されている。   A decoder 1931 is connected to the address input pin 1903. A row decoder 1932 is connected to the output terminal of the decoder 1931. The search result output pin 1904 is connected to the output terminal of the search encoder 1941.

行デコーダ1932の各行出力端と検索エンコーダ1941の各行入力端との間に、複数のTCAMセル1910が横一列に配置されている。行デコーダ1932の各行出力端には、マスクデータ用ワード線1933と有効データ用ワード線1943とが設けられている。横一列に配置されている複数のTCAMセル1910は、それぞれマスクデータ用ワード線1933と有効データ用ワード線1934とに並列に接続されている。   A plurality of TCAM cells 1910 are arranged in a horizontal row between each row output end of the row decoder 1932 and each row input end of the search encoder 1941. Each row output end of the row decoder 1932 is provided with a mask data word line 1933 and an effective data word line 1943. A plurality of TCAM cells 1910 arranged in a horizontal row are connected in parallel to a mask data word line 1933 and a valid data word line 1934, respectively.

そして、検索エンコーダ1941の各行入力端には、検索出力線(マッチ線)1942が設けられ、各検索出力線1942には、横一列に配置されている複数のTCAMセル1910が並列に接続されている。   A search output line (match line) 1942 is provided at each row input end of the search encoder 1941, and a plurality of TCAM cells 1910 arranged in a horizontal row are connected in parallel to each search output line 1942. Yes.

データ入出力ピン1901には、複数のセンスアンプ1911と複数のサーチドライバ1912,1913とが接続されている。複数のセンスアンプ1911と複数のサーチドライバ1912,1913は、横一列に配置されている複数のTCAMセル1910の各列の一端側に1対1対応で設けられている。   A plurality of sense amplifiers 1911 and a plurality of search drivers 1912 and 1913 are connected to the data input / output pin 1901. The plurality of sense amplifiers 1911 and the plurality of search drivers 1912 and 1913 are provided in one-to-one correspondence on one end side of each column of the plurality of TCAM cells 1910 arranged in a horizontal row.

複数のセンスアンプ1911のそれぞれには、書き込み、読み出し、およびリフレッシュの各動作を行うためのビット線1914,1915が設けられている。この2本のビット線1914,1915には、横一列に配置されている複数のTCAMセル1910の各列における複数のTCAMセル1910が並列に接続されている。   Each of the plurality of sense amplifiers 1911 is provided with bit lines 1914 and 1915 for performing write, read, and refresh operations. The two bit lines 1914 and 1915 are connected in parallel to a plurality of TCAM cells 1910 in each column of the plurality of TCAM cells 1910 arranged in a horizontal row.

複数のサーチドライバ1912,1913のそれぞれには、検索動作用ビット線(サーチ線)1916,1917が設けられている。この2本の検索動作用ビット線1916,1917には、横一列に配置されている複数のTCAMセル1910の各列における複数のTCAMセル1910が並列に接続されている。   Each of the search drivers 1912 and 1913 is provided with search operation bit lines (search lines) 1916 and 1917. A plurality of TCAM cells 1910 in each column of the plurality of TCAM cells 1910 arranged in a horizontal row are connected in parallel to the two search operation bit lines 1916 and 1917.

以上の構成において、まず、TCAMセル1910にデータを書き込むときは、書き込みという命令が命令制御ピン1902に与えられる。そして、書き込みたいデータをデータ入出力ピン1901に与え、書き込みたいアドレス、エントリ番号をアドレス入力ピン1903に与える。   In the above configuration, first, when data is written to the TCAM cell 1910, a command to write is given to the command control pin 1902. Then, the data to be written is given to the data input / output pin 1901, and the address and entry number to be written are given to the address input pin 1903.

なお、書き込み命令に関してアドレス入力はあまり必要ではない。最終的に必要なものは、各ルール(入力データ)に対応する次のアクションであるから、データがTCAMのエントリに入力されるかよりも、TCAMのエントリと次のアクションメモリへのルックアップさえ管理すればよいからである。したがって、空いているエントリに順にデータを入力し、どこのエントリにデータが書き込まれたかは、データ書き込み時に検索結果出力ピン1904にアドレス情報を出力すればよいことになる。   Note that it is not necessary to input an address for the write command. What is ultimately needed is the next action corresponding to each rule (input data), so even if the data is entered into the TCAM entry, even a lookup into the TCAM entry and the next action memory This is because it only has to be managed. Therefore, the data is sequentially input to the vacant entries, and to which entry the data is written may be output to the search result output pin 1904 at the time of data writing.

次に、書き込みデータは、センスアンプ1911に内蔵の書き込みバッファ回路によって2本のビット線1914,1915に伝達される。同時に、書き込みアドレスは、デコーダ1931を介して行デコーダ1932に入力され、所望のエントリにおけるTCAMセル1910に書き込みが行われる。   Next, write data is transmitted to the two bit lines 1914 and 1915 by a write buffer circuit built in the sense amplifier 1911. At the same time, the write address is input to the row decoder 1932 via the decoder 1931, and writing is performed to the TCAM cell 1910 in the desired entry.

次に、検索動作についても説明する。サーチコマンド(sertch)は、同じく命令制御ピン1902に与えられ、検索すべきデータ列もデータ入出力ピン1901に与えられる。検索時には、データ列はサーチドライバ1912,1913を経て検索動作用ビット線1916,1917に伝達される。このとき、検索出力線1942は、検索動作開始前に予め“H”レベルにプリチャージされている。   Next, the search operation will also be described. A search command (search) is also applied to the instruction control pin 1902, and a data string to be searched is also applied to the data input / output pin 1901. During a search, the data string is transmitted to search operation bit lines 1916 and 1917 through search drivers 1912 and 1913. At this time, the search output line 1942 is precharged to “H” level in advance before the search operation is started.

TCAMセル1910では、保持データと検索動作用ビット線1916,1917の一致比較が行われる。そして、全てのデータ列が一致したエントリだけに接続される検索出力線1942が“H”レベルを保持する。1ビットでも不一致があれば、その検索出力線1942が接続されるエントリでは、その検索出力線1942のレベルをセル内のトランジスタを介して放電し“L”レベルに引き下げる。これは、ワイヤードオア処理によって行われる。   In the TCAM cell 1910, the comparison between the retained data and the search operation bit lines 1916 and 1917 is performed. Then, the search output line 1942 connected only to the entry in which all the data strings match holds the “H” level. If even one bit does not match, in the entry to which the search output line 1942 is connected, the level of the search output line 1942 is discharged through the transistor in the cell and lowered to the “L” level. This is done by wired OR processing.

検索エンコーダ1941では、このようにしてデータ列が全て一致して“H”レベルを保持している検索出力線1942が見つけ出され、その“H”レベルを保持している検索出力線1942の属するエントリの番号が検索結果出力ピン1904から出力される。   In this manner, the search encoder 1941 finds the search output line 1942 holding all the data strings and holding the “H” level, and belongs to the search output line 1942 holding the “H” level. The entry number is output from the search result output pin 1904.

次に、図18に示す従来のTCAMセル1910は、例えば図19に示すように構成されている。図19において、従来のTCAMセル1910は、有効データ記憶セル2001とマスクデータ記憶セル2002とによる物理的に2つのセルの組み合わせによって、“1”“0”“X”の3値(ターナリ値)を保持するように構成されている。   Next, the conventional TCAM cell 1910 shown in FIG. 18 is configured as shown in FIG. 19, for example. In FIG. 19, a conventional TCAM cell 1910 has three values (ternary values) “1”, “0”, and “X” by physically combining two cells of an effective data storage cell 2001 and a mask data storage cell 2002. Is configured to hold.

有効データ記憶セル2001とマスクデータ記憶セル2002は、それぞれ、フリップフロップを構成するように逆並列接続された2つのインバータによって構成されている。   Each of the valid data storage cell 2001 and the mask data storage cell 2002 is configured by two inverters connected in reverse parallel so as to form a flip-flop.

有効データ記憶セル2001の一方の記憶端は、MOSトランジスタ2011のソース電極とMOSトランジスタ2012のゲート電極とに接続され、他方の記憶端は、MOSトランジスタ2013のソース電極とMOSトランジスタ2014のゲート電極とに接続されている。MOSトランジスタ2011のドレイン電極は、ビット線2015に接続されている。MOSトランジスタ2013のドレイン電極は、ビット線2016に接続されている。そして、MOSトランジスタ2011,2013のゲート電極は共通に有効データ用ワード線2017に接続されている。また、MOSトランジスタ2012,2014は、直列に接続され、一端は検索動作用ビット線2018に接続され、他端は検索動作用ビット線2019に接続されている。   One storage end of the effective data storage cell 2001 is connected to the source electrode of the MOS transistor 2011 and the gate electrode of the MOS transistor 2012, and the other storage end is connected to the source electrode of the MOS transistor 2013 and the gate electrode of the MOS transistor 2014. It is connected to the. The drain electrode of the MOS transistor 2011 is connected to the bit line 2015. The drain electrode of the MOS transistor 2013 is connected to the bit line 2016. The gate electrodes of the MOS transistors 2011 and 2013 are commonly connected to the effective data word line 2017. The MOS transistors 2012 and 2014 are connected in series, one end is connected to the search operation bit line 2018 and the other end is connected to the search operation bit line 2019.

また、マスクデータ記憶セル2002の一方の記憶端は、MOSトランジスタ2021のソース電極に接続され、他方の記憶端は、MOSトランジスタ2022のソース電極とMOSトランジスタ2023のゲート電極とに接続されている。MOSトランジスタ2021のドレイン電極は、ビット線2024に接続され、MOSトランジスタ2023のドレイン電極は、ビット線2025に接続されている。そして、MOSトランジスタ2021,2022のゲート電極は共通にマスクデータ用ワード線2026に接続されている。MOSトランジスタ2023のソース電極は接地され、ドレイン電極は、MOSトランジスタ2027のソース電極に接続されている。MOSトランジスタ2027のゲート電極は、直列接続されたMOSトランジスタ2012,2014の接続端に接続され、ドレイン電極は、検索出力線2030に接続されている。   One storage end of the mask data storage cell 2002 is connected to the source electrode of the MOS transistor 2021, and the other storage end is connected to the source electrode of the MOS transistor 2022 and the gate electrode of the MOS transistor 2023. The drain electrode of the MOS transistor 2021 is connected to the bit line 2024, and the drain electrode of the MOS transistor 2023 is connected to the bit line 2025. The gate electrodes of the MOS transistors 2021 and 2022 are connected to the mask data word line 2026 in common. The source electrode of the MOS transistor 2023 is grounded, and the drain electrode is connected to the source electrode of the MOS transistor 2027. The gate electrode of the MOS transistor 2027 is connected to the connection end of the MOS transistors 2012 and 2014 connected in series, and the drain electrode is connected to the search output line 2030.

このように、従来のネットワークアドレス検索装置(LSI)で用いるTCAMセルは、図19に示すように、“1”“0”“X”の3値を表現するために、例えば16個のMOSトランジスタを用いて物理的に2つのSRAM(スタティックランダムアクセスメモリ)セルと検索(一致比較)するセルとを構成するようにしている。   In this way, the TCAM cell used in the conventional network address search device (LSI) has, for example, 16 MOS transistors to express the three values “1”, “0”, and “X” as shown in FIG. Are used to physically configure two SRAM (Static Random Access Memory) cells and a cell to be searched (matched comparison).

このTCAMセルでの検索動作は、次式で表現される。
If ([val=1'b0]&&[mas=1'b1]) then WORD<=1'b0;
If ([val=1'b1]&&[mas=1'b1]) then WORD<=1'b1;
If ([val=1'bx]&&[mas=1'b0]) then WORD<=1'bx;
すなわち、マスクデータ記憶セル2002に保持されるマスクビット(Maskビット)が“1”であれば、有効データ記憶セル2001に保持される有効ビット(validビット)と検索動作用ビット線2018,2019との一致不一致が比較され、検索結果が検索出力線2030に出力される。マスクデータ記憶セル2002に保持されるマスクビット(Maskビット)が“0”のときは、MOSトランジスタ2023,2027がON動作をしないので、検索出力線2030は絶対に接地(GND)レベルに接続されることはない。
The search operation in this TCAM cell is expressed by the following equation.
If ([val = 1'b0] && [mas = 1'b1]) then WORD <= 1'b0;
If ([val = 1'b1] && [mas = 1'b1]) then WORD <= 1'b1;
If ([val = 1'bx] && [mas = 1'b0]) then WORD <= 1'bx;
That is, if the mask bit (Mask bit) held in the mask data storage cell 2002 is “1”, the valid bit (valid bit) held in the valid data storage cell 2001 and the search operation bit lines 2018 and 2019 Are compared, and the search result is output to the search output line 2030. When the mask bit (Mask bit) held in the mask data storage cell 2002 is “0”, the MOS transistors 2023 and 2027 are not turned on, so that the search output line 2030 is absolutely connected to the ground (GND) level. Never happen.

IEEE Network Mar/Apr2001 Algorithms for Packet ClassificationIEEE Network Mar / Apr2001 Algorithms for Packet Classification

しかしながら、従来のTCAMセルには、次のような問題がある。まず、従来のTCAMセルは、図19に示すように、例えば、16個のMOSトランジスタを用いて物理的に2つのSRAMセルと検索(一致比較)するセルとを構成するようにしているので、1セルあたりの占有面積が大きく、LSIシリコン上に大容量搭載ができないという問題がある。高々9Mビットの容量しか確保できないのが実状である。このことは、今日のSRAMが6個のMOSトランジスタで構成され、DRAM(ダイナッミクランダムアクセスメモリ)が1個のMOSトランジスタと1個のキャパシタ素子とで構成されていることと比較すると明らかである。   However, the conventional TCAM cell has the following problems. First, as shown in FIG. 19, the conventional TCAM cell uses, for example, 16 MOS transistors to physically configure two SRAM cells and a cell to be searched (matched comparison). There is a problem that the occupied area per cell is large and a large capacity cannot be mounted on the LSI silicon. The reality is that only 9 Mbit capacity can be secured. This is apparent when compared to the fact that today's SRAM is composed of six MOS transistors, and DRAM (dynamic random access memory) is composed of one MOS transistor and one capacitor element.

また、図20は、上述した検索動作を理解し易いように図示したものである。図20に示すTCAMセルアレイ2101は、図18に示した各行に横一列に配置される複数のTCAMセル1910の全行数分で構成される。サーチドライバ2102は、図18に示したサーチドライバ1912,1913をまとめて示したものである。サーチドライバ2102には、各列に配置される複数のTCAMセル毎に、検索動作用ビット線たるサーチ線SLが設けられている。また、各行に横一列に配置される複数のTCAMセル毎に、検索出力線たるマッチ線MLが設けられている。   FIG. 20 shows the above-described search operation for easy understanding. The TCAM cell array 2101 shown in FIG. 20 is configured by the total number of rows of a plurality of TCAM cells 1910 arranged in one horizontal row in each row shown in FIG. A search driver 2102 collectively represents the search drivers 1912 and 1913 shown in FIG. The search driver 2102 is provided with a search line SL serving as a search operation bit line for each of the plurality of TCAM cells arranged in each column. In addition, a match line ML serving as a search output line is provided for each of a plurality of TCAM cells arranged in a row in each row.

図20において、従来の検索動作では、検索データをサーチ線SLによって全てのTCAMセルに対して一斉に並列に与える。その結果、全てのTCAMセルは、全てのマッチ線MLを駆動する。すなわち、読み出し、書き込みというメモリの基本動作は、通常メモリ全体のうちの限られた1部分について行われるが、それとは違って検索動作は、全てのTCAMセルについて、垂直方向、水平方向が動作対象となる。このため消費電力が例えば4Mビット容量のものでは6W、9Mビット容量のものでは10Wに達する場合があるなど極めて大きくなる。この点も大容量搭載を困難にする原因となっている。加えて、消費電力が大きいことは、検索動作の高速化を図ったネットワークアドレス検索装置としてのシステムLSIの実現を困難にしているという問題がある。   In FIG. 20, in the conventional search operation, search data is given to all TCAM cells simultaneously in parallel by a search line SL. As a result, all TCAM cells drive all match lines ML. That is, the basic operations of the memory such as reading and writing are usually performed for a limited part of the entire memory, but unlike the search operation, the vertical direction and the horizontal direction are the object of operation for all TCAM cells. It becomes. For this reason, the power consumption becomes extremely large, for example, it may reach 6 W for a 4 Mbit capacity and 10 W for a 9 Mbit capacity. This point also makes it difficult to install a large capacity. In addition, the large power consumption has a problem that it is difficult to realize a system LSI as a network address search device that speeds up the search operation.

さらに、従来のTCAMは、一般に、図16に示したTCAM1701と優先制御部(プライオリティエンコーダ)1702とを含み、TCAM内部で、優先順位の高いものほどエントリ番号の小さいほうに書き並べ得るようになっている。したがって、従来のTCAMでは、検索動作において複数のエントリでヒットが生じた場合には、優先順位の高いもの、すなわちエントリ番号の小さいものを出力する。また、例えば誰もアクセスしなくなったIPアドレスなどは随時消去され(エージング(Ageing)という)、再度優先順位の高いものから順に並び替えが行われる。   Further, the conventional TCAM generally includes the TCAM 1701 and the priority control unit (priority encoder) 1702 shown in FIG. 16, and within the TCAM, the higher the priority, the smaller the entry number can be arranged. ing. Therefore, in the conventional TCAM, when a hit occurs in a plurality of entries in the search operation, the one having a high priority, that is, the one having a small entry number is output. Also, for example, IP addresses that no longer accessed by anyone are erased at any time (referred to as aging), and are rearranged in descending order of priority.

このアドレスの再配置(re-addressing)は、実は非常にオーバヘッドの大きい作業である。全てのエントリに対してデータの書き換えを実行しなければならないからである。また、この期間中、検索動作は受け付けられない。これらの問題点を解消するため、例えば図21に示すように構成することが考えられる。図21は、従来のTCAMを用いてアドレス再配置時の問題を解決する場合の構成例を示すブロック図である。   This re-addressing is actually a very high overhead task. This is because data rewriting must be executed for all entries. During this period, the search operation is not accepted. In order to solve these problems, for example, a configuration as shown in FIG. 21 can be considered. FIG. 21 is a block diagram showing a configuration example in the case of solving a problem at the time of address relocation using a conventional TCAM.

図21において、TCAM2201,2202は、上記したように図16に示したTCAM1701と優先制御部(プライオリティエンコーダ)1702とを含むものである。TCAM2201は、アドレスデコーダ2203を介して書き込み線(Write)2204と検索線(Search)2205に接続されている。同様に、TCAM2202は、アドレスデコーダ2206を介して書き込み線(Write)2204と検索線(Search)2205に接続されている。   21, TCAMs 2201 and 2202 include the TCAM 1701 and the priority control unit (priority encoder) 1702 shown in FIG. 16 as described above. The TCAM 2201 is connected to a write line (Write) 2204 and a search line (Search) 2205 via an address decoder 2203. Similarly, the TCAM 2202 is connected to a write line (Write) 2204 and a search line (Search) 2205 via an address decoder 2206.

この構成によれば、TCAM2201,2202のそれぞれに同じデータの書き込みが行われる。そして、優先順位の書き換えが発生すれば、例えばTCAM2201に対してのみ書き換えを実行する。その期間中TCAM2202に対して検索を許容することができ、検索結果が出力される。勿論、検索は書き換え以前の古いデータに対してのみの実行となる。次いで、TCAM2201に対しての書き換えが完了した時点で、今度は検索ポートをTCAM2202からTCAM2201に移して実行する。書き換えが必要なときには、書き換えをTCAM2202に対して実行することができる。検索命令は、書き換え命令と関係なく連続して実行できる。   According to this configuration, the same data is written to each of the TCAMs 2201 and 2202. If priority order rewriting occurs, for example, rewriting is performed only on the TCAM 2201. During this period, the search can be permitted for the TCAM 2202 and the search result is output. Of course, the search is performed only on old data before rewriting. Next, when rewriting to the TCAM 2201 is completed, the search port is moved from the TCAM 2202 to the TCAM 2201 and executed. When rewriting is necessary, rewriting can be performed on the TCAM 2202. The search command can be executed continuously regardless of the rewrite command.

しかしながら、図21に示す構成では、TCAM自体が非常に高価なハードウェアであるにもかかわらず複数必要とするので、一層高価なものになる。また、近年のネットワークシステムの要求に対して検索スピードが追いついていないが、上記の消費電力が大きいので、改善が非常に困難であるという問題がある。   However, the configuration shown in FIG. 21 is more expensive because it requires a plurality of TCAMs even though they are very expensive hardware. Further, although the search speed has not kept up with the demands of recent network systems, there is a problem that improvement is very difficult because of the large power consumption.

すなわち、今日のTCAMハードウェアで実現できる検索スピードは、せいぜい100Mpps(100メガパケット毎秒)程度であるが、市場要求として例えば40GLANでは、(40Gビット/20バイト)=250MHz、すなわち、250Mpps(250メガパケット毎秒)であり、現行性能の25倍は必要である。   That is, the search speed that can be realized with today's TCAM hardware is at most about 100 Mpps (100 megapackets per second). However, as a market requirement, for example, in 40GLAN, (40 Gbit / 20 bytes) = 250 MHz, that is, 250 Mpps (250 megabits). Packet per second), and 25 times the current performance is required.

さらに加えて、従来のTCAMは、一般に、図16に示したTCAM1701と優先制御部(プライオリティエンコーダ)1702とを含めてLSI化した構成であり、アクションメモリ1703までを含めたシステムLSIとはなっていない。したがって、従来では、システムボード上に、TCAM1701と優先制御部(プライオリティエンコーダ)1702とを含めたTCMALSIと、アクションメモリ1703のみからなるアクションメモリLSIとを配置し、TCMALSIでの検索結果をエンコードし、それをアクションメモリLSIに入力する構成となるので、アプリケーション上、使い勝手の悪いものになっているという問題もある。   In addition, the conventional TCAM is generally configured as an LSI including the TCAM 1701 and the priority control unit (priority encoder) 1702 shown in FIG. 16, and is not a system LSI including the action memory 1703. Absent. Therefore, conventionally, a TCMMA LSI including a TCAM 1701 and a priority control unit (priority encoder) 1702 and an action memory LSI including only an action memory 1703 are arranged on a system board, and a search result in the TCMA LSI is encoded. Since it is configured to input it to the action memory LSI, there is also a problem that it is inconvenient in terms of application.

この発明は、上記に鑑みてなされたものであり、検索動作を低消費電力のもとで実行できる方策を講じて高速化を可能にする連想メモリを得ることを目的とする。 The present invention has been made in view of the above, an object of the present invention to provide an associative memory which take measures that can perform a search operation under low power to permit faster.

上記目的を達成するため、この発明にかかる連想メモリは、データ入出力を行うビット線に接続され、書き込まれたデータを保持する記憶ノードを有するメモリセルと、サーチ線に供給される検索データと前記記憶ノードの保持データとの一致比較を行い、比較結果に応じて出力線の論理レベルを変化させる一致比較回路と、を備える連想メモリセルと、複数の前記連想メモリセルアレイによって構成される連想メモリセルアレイとを有し、前記連想メモリセルアレイは、第1のサブアレイと、前記第1のサブアレイの一致比較結果に応じて一致比較を実行する第2のサブアレイと、前記第2のサブアレイの一致比較結果に応じて一致比較を実行する第3のサブアレイと、前記第1のサブアレイにおける出力線の検出結果に応じて前記第3のサブアレイに属する前記サーチ線の全部または一部について検索データを与えないようにする検索制御手段とを含むことを特徴とする。 To achieve the above object, an associative memory according to the present invention is connected to the data input and output lines Ubi Tsu preparative lines, a memory cell having that Symbol憶node to hold the written data, service over Ji for matching comparison with data held in the search data and the previous Kiki憶node supplied to the line, the content addressable memory cell and a coincidence comparison circuit for changing the logic level of the output line in accordance with the comparison result, a plurality of An associative memory cell array configured by the associative memory cell array , wherein the associative memory cell array includes a first sub-array and a second sub-array that performs a coincidence comparison according to a coincidence comparison result of the first sub-array; the third sub-array to perform coincidence comparison according to the matching comparison result of the second sub-array, the detection result the third according to the output line in said first subarray Characterized in that all or part of the search line belonging to Buarei and a search control means which are not subjected to the search data.

この発明によれば、検索動作を低消費電力のもとで実行でき、かつ高速化を可能にする連想メモリが得られるという効果を奏する。 According to the present invention, an effect that an associative memory which allows the search operation to be executed under a low power consumption, and high speed is obtained.

以下に図面を参照して、この発明にかかる連想メモリセル、連想メモリセルアレイ、アドレス検索メモリおよびネットワークアドレス検索装置の好適な実施の形態を詳細に説明する。   Exemplary embodiments of an associative memory cell, an associative memory cell array, an address search memory, and a network address search device according to the present invention will be described below in detail with reference to the drawings.

実施の形態1.
図1は、この発明の実施の形態1による連想メモリセルとして、TCAMセルの構成を示す回路図である。図1において、連想メモリセルであるTCAMセルは、4つのMOSトランジスタ101,102,103,104と、2つのキャパシタ素子105,106とを備えている。このうち、MOSトランジスタ101とキャパシタ素子105、およびMOSトランジスタ102とキャパシタ素子106は、それぞれダイナミック型メモリセルを構成し、MOSトランジスタ103,104は一致比較回路を構成している。ビット線(BL)111とビット線(ZBL)112は、書き込み動作、読み出し動作およびリフレッシュ動作を行うビット線である。
Embodiment 1 FIG.
FIG. 1 is a circuit diagram showing a configuration of a TCAM cell as an associative memory cell according to Embodiment 1 of the present invention. In FIG. 1, a TCAM cell that is an associative memory cell includes four MOS transistors 101, 102, 103, and 104 and two capacitor elements 105 and 106. Among these, the MOS transistor 101 and the capacitor element 105, and the MOS transistor 102 and the capacitor element 106 constitute a dynamic memory cell, and the MOS transistors 103 and 104 constitute a coincidence comparison circuit. The bit line (BL) 111 and the bit line (ZBL) 112 are bit lines that perform a write operation, a read operation, and a refresh operation.

一方のビット線(BL)111には、MOSトランジスタ101のドレイン電極が接続され、MOSトランジスタ101のソース電極には、キャパシタ素子105の蓄積ノードが接続されている。また、他方のビット線(ZBL)112には、MOSトランジスタ102のドレイン電極が接続され、MOSトランジスタ102のソース電極には、キャパシタ素子106の蓄積ノードが接続されている。そして、MOSトランジスタ101,102のゲート電極は、それぞれ、書き込み動作、読み出し動作およびリフレッシュ動作を行うワード線(WL)121に接続されている。   One bit line (BL) 111 is connected to the drain electrode of the MOS transistor 101 and the source electrode of the MOS transistor 101 is connected to the storage node of the capacitor element 105. Further, the drain electrode of the MOS transistor 102 is connected to the other bit line (ZBL) 112, and the storage node of the capacitor element 106 is connected to the source electrode of the MOS transistor 102. The gate electrodes of the MOS transistors 101 and 102 are connected to a word line (WL) 121 that performs a write operation, a read operation, and a refresh operation, respectively.

また、電位レベルが相補的に変化するサーチ線(SL)131とサーチ線(ZSL)132は、検索動作用のビット線である。マッチ線(ML)141は、検索結果を出力するための出力線である。MOSトランジスタ103のゲート電極は、キャパシタ素子105の蓄積ノードに接続され、ドレイン電極は、サーチ線(SL)131に接続されている。また、MOSトランジスタ104のゲート電極は、キャパシタ素子106の蓄積ノードに接続され、ドレイン電極は、サーチ線(ZSL)132に接続されている。そして、MOSトランジスタ102,103のソース電極は、それぞれマッチ線(ML)141に接続されている。   The search line (SL) 131 and the search line (ZSL) 132 whose potential levels change complementarily are bit lines for search operation. A match line (ML) 141 is an output line for outputting a search result. The gate electrode of the MOS transistor 103 is connected to the storage node of the capacitor element 105, and the drain electrode is connected to the search line (SL) 131. The gate electrode of the MOS transistor 104 is connected to the storage node of the capacitor element 106, and the drain electrode is connected to the search line (ZSL) 132. The source electrodes of the MOS transistors 102 and 103 are connected to a match line (ML) 141, respectively.

この構成によれば、2つのダイナミック型セルメモリにて、“1”“0”“X”の3値が保持できる。すなわち、
If ([1a=1'b0]&&[1b=1'b1]) then WORD<=1'b0;
If ([1a=1'b1]&&[1b=1'b0]) then WORD<=1'b1;
If ([1a=1'b0]&&[1b=1'b0]) then WORD<=1'bx;
と表現することができる。
According to this configuration, ternary values “1”, “0”, and “X” can be held in two dynamic cell memories. That is,
If ([1a = 1'b0] && [1b = 1'b1]) then WORD <= 1'b0;
If ([1a = 1'b1] && [1b = 1'b0]) then WORD <= 1'b1;
If ([1a = 1'b0] && [1b = 1'b0]) then WORD <= 1'bx;
It can be expressed as

3値データの書き込みは、ワード線(WL)121を高レベル(以下「“H”レベル」という)にし、ビット線(BL)111とビット線(ZBL)112とを、“H”レベルと低レベル(以下「“L”レベル」という)とに変化させることによって行う。例えば、“1”の書き込みは、ビット線(BL)111を“H”レベル、ビット線(ZBL)112を“L”レベルにして行う。“0”の書き込みは、ビット線(BL)111を“L”レベル、ビット線(ZBL)112を“H”レベルにして行う。“X”の書き込みは、ビット線(BL)111を“L”レベル、ビット線(ZBL)112を“L”レベルにして行う。   In writing of ternary data, the word line (WL) 121 is set to a high level (hereinafter referred to as “H” level), and the bit line (BL) 111 and the bit line (ZBL) 112 are set to “H” level and low. This is performed by changing to a level (hereinafter referred to as “L” level). For example, “1” is written by setting the bit line (BL) 111 to the “H” level and the bit line (ZBL) 112 to the “L” level. Writing “0” is performed by setting the bit line (BL) 111 to the “L” level and the bit line (ZBL) 112 to the “H” level. “X” is written by setting the bit line (BL) 111 to the “L” level and the bit line (ZBL) 112 to the “L” level.

検索データは、“H”レベルと“L”とからなり、サーチ線(SL)131とサーチ線(ZSL)132から入力する。MOSトランジスタ103,104による一致比較回路にて、セルの保持データとの一致比較が行われる。その比較結果(検索結果)がマッチ線(ML)141に出力される。   The search data consists of “H” level and “L”, and is input from the search line (SL) 131 and the search line (ZSL) 132. The coincidence comparison circuit using the MOS transistors 103 and 104 performs coincidence comparison with the data held in the cell. The comparison result (search result) is output to the match line (ML) 141.

ここに、サーチ線(SL)131、サーチ線(ZSL)132およびマッチ線(ML)141は、それぞれ検索動作の開始前にプリチャージされるが、この実施の形態でのプリチャージレベルは、Vccレベルではなく、閾値Vthだけ下がったVcc−Vthのレベルになっている。   Here, search line (SL) 131, search line (ZSL) 132, and match line (ML) 141 are each precharged before the start of the search operation. In this embodiment, the precharge level is Vcc. It is not a level but a level of Vcc−Vth that is lowered by the threshold value Vth.

そして、一致比較の結果(検索結果)、一致した場合には、一致比較回路では、そのマッチ線(ML)141のレベルをプリチャージレベルであるVcc−Vthのレベルに保持する。一方、不一致となったときは、一致比較回路では、そのマッチ線(ML)141の電荷を引き抜き、接地(GND)レベルに引き下げる動作が行われる。このとき、この実施の形態では、マッチ線(ML)141にクランプ回路151が設けられ、不一致となったマッチ線(ML)141が完全に接地(GND)レベルまで落ち込まないようにしている。   As a result of the match comparison (search result), if a match is found, the match comparison circuit holds the level of the match line (ML) 141 at the precharge level Vcc−Vth. On the other hand, when there is a mismatch, the match comparator circuit performs an operation of extracting the charge of the match line (ML) 141 and reducing it to the ground (GND) level. At this time, in this embodiment, the match line (ML) 141 is provided with a clamp circuit 151 so that the mismatch match line (ML) 141 does not completely drop to the ground (GND) level.

クランプ回路151は、MOSトランジスタQによって構成されている。すなわち、MOSトランジスタQのソース電極とゲート電極は、それぞれ電源に接続され、ドレイン電極は、マッチ線(ML)141に接続されている。これによって、例えば、(1/2)Vccのレベルで止まるようになっている。   The clamp circuit 151 is configured by a MOS transistor Q. That is, the source electrode and the gate electrode of the MOS transistor Q are respectively connected to the power source, and the drain electrode is connected to the match line (ML) 141. Thereby, for example, it stops at the level of (1/2) Vcc.

次に、図1〜図4を参照して、実施の形態1による連想メモリセルであるTCAMセルの動作について説明する。なお、図2は、図1に示すTCAMセルにて行われる読み出し動作、書き込み動作の説明図である。図3は、図1に示すTCAMセルにて行われる検索動作の説明図である。図4は、図1に示すTCAMセルの動作タイムチャートである。   Next, the operation of the TCAM cell which is the content addressable memory cell according to the first embodiment will be described with reference to FIGS. FIG. 2 is an explanatory diagram of a read operation and a write operation performed in the TCAM cell shown in FIG. FIG. 3 is an explanatory diagram of a search operation performed in the TCAM cell shown in FIG. FIG. 4 is an operation time chart of the TCAM cell shown in FIG.

まず、図2を参照して読み出し動作、書き込み動作の説明を行う。図2では、M×NビットのTCAMセルアレイ201に対し、ワード線WLを制御する行デコーダ202と、ビット線BLを制御するセンスアンプ203と、選択する列の指示をセンスアンプ203に与える列デコーダ204とが設けられている。センスアンプ203には、I/Oバス205が接続されている。なお、ビット線BLは、図1に示した一対のビット線(BL,ZBL)をまとめて示している。   First, a read operation and a write operation will be described with reference to FIG. In FIG. 2, for a M × N-bit TCAM cell array 201, a row decoder 202 that controls the word line WL, a sense amplifier 203 that controls the bit line BL, and a column decoder that gives the sense amplifier 203 an indication of the column to be selected. 204 is provided. An I / O bus 205 is connected to the sense amplifier 203. The bit line BL collectively represents the pair of bit lines (BL, ZBL) shown in FIG.

以上の構成において、読み出し動作では、まず、行デコーダ202によってM本のワード線WLのうちの1つを操作して行選択が行われる。ワード線WLの活性化によって、それに接続されるTCAMセルでは、それぞれの保持データによってビット線BLが“H”レベルまたは“L”レベルに僅かながら駆動される。センスアンプ203は、列デコーダ204が選択した列におけるビット線BLの電位レベルを高速に増幅する。その結果、センスアンプ203からI/Oバス205に、N対のビット線BL中の一対のビット線BLのデータが送り出される。書き込み動作では、I/Oバス205から送られてきたデータが、以上説明したのと同様の手順でTCAMセルアレイ201に書き込まれる。   In the above configuration, in the read operation, first, row selection is performed by operating one of the M word lines WL by the row decoder 202. By activation of the word line WL, in the TCAM cell connected to the word line WL, the bit line BL is slightly driven to the “H” level or the “L” level by the held data. The sense amplifier 203 amplifies the potential level of the bit line BL in the column selected by the column decoder 204 at high speed. As a result, the data of the pair of bit lines BL in the N pairs of bit lines BL is sent from the sense amplifier 203 to the I / O bus 205. In the write operation, data sent from the I / O bus 205 is written into the TCAM cell array 201 in the same procedure as described above.

次に、図3を参照して検索動作を説明する。図3では、2ビット長の2エントリ分の4個のTCAMセル301,302,303,304が示されている。行方向のTCAMセル301,302は、第1エントリのワード線WL_0とマッチ線ML_0に接続されている。また、行方向のTCAMセル303,304は、第2エントリのワード線WL_1とマッチ線ML_1に接続されている。列方向のTCAMセル301,303は、ビット線BL_0,ZBL_0,サーチ線SL_0,ZSL_0に接続されている。また、列方向のTCAMセル302,304は、ビット線BL_1,ZBL_1,サーチ線SL_1,ZSL_1に接続されている。なお、マッチ線ML_0,ML_1には、図示してないが、図1に示したクランプ回路151が設けられている。ここで、TCAMセル301,303に上位ビットが保持され、TCAMセル302,304に下位ビットが保持されているとする。   Next, the search operation will be described with reference to FIG. In FIG. 3, four TCAM cells 301, 302, 303, and 304 for two entries having a 2-bit length are shown. The TCAM cells 301 and 302 in the row direction are connected to the word line WL_0 and the match line ML_0 of the first entry. The TCAM cells 303 and 304 in the row direction are connected to the word line WL_1 and the match line ML_1 of the second entry. The column-direction TCAM cells 301 and 303 are connected to the bit lines BL_0 and ZBL_0 and the search lines SL_0 and ZSL_0. Further, the TCAM cells 302 and 304 in the column direction are connected to the bit lines BL_1 and ZBL_1 and the search lines SL_1 and ZSL_1. Although not shown, the match lines ML_0 and ML_1 are provided with the clamp circuit 151 shown in FIG. Here, it is assumed that the upper bits are held in the TCAM cells 301 and 303 and the lower bits are held in the TCAM cells 302 and 304.

検索動作においては、前準備として、サーチ線とマッチ線が共に“H”レベルにプリチャージされる。前述したように、プリチャージレベルは、サーチ線とマッチ線が共にVcc−Vthのレベルである。これは、“H”レベルと“L”レベルの充放電を繰り返した場合の消費電力低減を図るための措置である。   In the search operation, as a preparation, both the search line and the match line are precharged to the “H” level. As described above, the precharge level is the level of Vcc−Vth for both the search line and the match line. This is a measure for reducing power consumption when charging and discharging at “H” level and “L” level are repeated.

この状態で検索を開始する。つまり、検索データをSL_0,ZSL_0と、SL_1,ZSL_1とにそれぞれ与える。今、SL_0=“H”,ZSL_0=“L”,SL_1=“L”,ZSL_1=“H”なるデータを与える。第1エントリにおいては、TCAMセル301では、“H”“L”が保持され、TCAMセル302では、“L”“H”が保持されているとすると、比較の結果は一致する(図3では、pass,passと表示されている)。したがって、マッチ線ML_0は、プリチャージレベルVcc−Vthを保持する。   Search is started in this state. That is, search data is given to SL_0, ZSL_0, and SL_1, ZSL_1, respectively. Now, the data SL_0 = “H”, ZSL_0 = “L”, SL_1 = “L”, and ZSL_1 = “H” are given. In the first entry, assuming that “H” and “L” are held in the TCAM cell 301 and “L” and “H” are held in the TCAM cell 302, the comparison results match (in FIG. 3). , Pass and pass). Therefore, match line ML_0 holds precharge level Vcc-Vth.

一方、第1エントリにおいては、TCAMセル303では,“H”“L”が保持され、TCAMセル304では、“H”“L”が保持されているとすると、比較の結果、TCAMセル303では、一致する(passと表示)が、下位ビットのTCAMセル304では、一致しない(failと表示)。その結果、マッチ線ML_1にプリチャージされていた電荷がTCAMセル304の一致比較回路を介してサーチ線SL_1,ZSL_1側に放電されることが開始され、マッチ線ML_1の電位は、プリチャージレベルVcc−Vthから接地(GND)レベルに向けて降下を始める。   On the other hand, in the first entry, assuming that “H” and “L” are held in the TCAM cell 303 and “H” and “L” are held in the TCAM cell 304, the comparison results in the TCAM cell 303. However, in the TCAM cell 304 of the lower bit, they do not match (displayed as “fail”). As a result, the charge precharged in the match line ML_1 is started to be discharged to the search lines SL_1 and ZSL_1 via the match comparison circuit of the TCAM cell 304, and the potential of the match line ML_1 is set to the precharge level Vcc. Start descent from −Vth to ground (GND) level.

ここで、マッチ線ML_1の電荷が完全に放電され、電位が接地(GND)レベルになってしまうと、マッチ線ML_1に接続される上位ビット、つまりTCAMセル303においては、セル判定が一致(pass)であるとしてOFF動作をしている一致比較回路のMOSトランジスタがON動作を行い、当該MOSトランジスタを介してマッチ線ML_1とサーチ線SL_0またはサーチ線ZSL_0との間に電流パスが生じてしまう。   Here, when the charge of the match line ML_1 is completely discharged and the potential becomes the ground (GND) level, the cell determination is the same in the upper bits connected to the match line ML_1, that is, the TCAM cell 303. ), The MOS transistor of the coincidence comparison circuit performing the OFF operation performs the ON operation, and a current path is generated between the match line ML_1 and the search line SL_0 or the search line ZSL_0 via the MOS transistor.

ところが、この実施の形態では、マッチ線ML_1に設けたクランプ回路151(図1参照)によってマッチ線ML_1は、接地(GND)レベルにはならず、例えば(1/2)Vccまで降下してそのレベルを維持するようになっている。その結果、今の例で言えば、TCAMセル303では、一致比較回路のMOSトランジスタのソース電位が(1/2)Vccとなる。そして、そのMOSトランジスタの動作閾値は、トランジスタの基板効果によって上昇するので、ON動作を行わず、誤動作は生じないことになる。   However, in this embodiment, the match line ML_1 is not brought to the ground (GND) level by the clamp circuit 151 (see FIG. 1) provided on the match line ML_1, and drops to (1/2) Vcc, for example. The level is to be maintained. As a result, in the present example, in the TCAM cell 303, the source potential of the MOS transistor of the coincidence comparison circuit is (1/2) Vcc. Since the operation threshold value of the MOS transistor increases due to the substrate effect of the transistor, the ON operation is not performed and no malfunction occurs.

図4は、以上説明した書き込み動作、読み出し動作および検索動作をまとめて示したタイムチャートである。図4において、(1):各動作は、クロックCKに従って順々に実行される。(2):命令OPとして、書き込み命令Wが4つ連続し、その後サーチ(検索)命令Sが4つ連続している場合が示されている。(3):ワード線WLは、書き込み命令Wに応答してMOSレベルである“H”レベルと“L”になる。つまり、MOSレベルの振幅である。(4):同時に、ビット線BL(ZBL)は、“H”レベルと“L”レベルとに相補的に変化する。これも、MOSレベルの振幅である。(5)サーチ線SL(ZSL)は、プリチャージレベルがVcc−Vthのレベルにあり、サーチ(検索)命令Sに応答して、Vcc−Vthレベルと接地(GND)レベルの間で相補的に変化する。つまり、MOSレベルの振幅よりも遙かに小さい振幅で変化する。(6):マッチ線MLも同様に、プリチャージレベルがVcc−Vthのレベルにあり、比較結果に応じて、Vcc−Vthレベルと接地(GND)レベルの間で変化する。つまり、MOSレベルの振幅よりも遙かに小さい振幅で変化する。(7):次段には、マッチ線MLのレベルを本来のMOSレベルに増幅してから伝達される。   FIG. 4 is a time chart collectively showing the above-described write operation, read operation, and search operation. In FIG. 4, (1): each operation is sequentially executed according to the clock CK. (2): As the instruction OP, there are shown a case where four write instructions W are continued and four search (search) instructions S are subsequently continued. (3): The word line WL becomes “H” level and “L” which are MOS levels in response to the write command W. That is, it is the amplitude of the MOS level. (4): At the same time, the bit line BL (ZBL) changes complementarily between the “H” level and the “L” level. This is also the amplitude of the MOS level. (5) The search line SL (ZSL) has a precharge level of Vcc-Vth, and is complementary between the Vcc-Vth level and the ground (GND) level in response to the search (search) instruction S. Change. That is, it changes with an amplitude much smaller than the amplitude of the MOS level. (6): Similarly, the match line ML has a precharge level of Vcc−Vth, and changes between the Vcc−Vth level and the ground (GND) level according to the comparison result. That is, it changes with an amplitude much smaller than the amplitude of the MOS level. (7): The signal is transmitted to the next stage after the level of the match line ML is amplified to the original MOS level.

このように、実施の形態1によれば、TCAMセルを、4個のMOSトランジスタと2個のキャパシタ素子とによって構成したので、セルの占有面積を小さくすることができ、LSI化したときにTCAMセルの大容量搭載が可能となる。具体的には、従来例(図18)と同じデザインテクノロジーであれば、約4倍の容量搭載が可能である。例えば、0.13μmテクノロジーであれば、従来例ではおおよそ9Mビットまでであるが、実施の形態1によれば、おおよそ27Mビットまで容量搭載が可能である。   As described above, according to the first embodiment, since the TCAM cell is configured by the four MOS transistors and the two capacitor elements, the area occupied by the cell can be reduced. A large capacity cell can be installed. Specifically, with the same design technology as the conventional example (FIG. 18), about four times the capacity can be mounted. For example, in the case of 0.13 μm technology, the conventional example has a capacity of up to about 9 Mbit, but according to the first embodiment, a capacity can be mounted up to about 27 Mbit.

そして、レベル維持手段であるクランプ回路151を設けたので、次のような作用・効果が得られる。まず、サーチ線とマッチ線は、動作電圧値範囲を制限し低電圧振幅で動作するので、検索動作時の消費電力低減を図ることができる。また、マッチ線は、比較の結果が不一致のときに接地電位レベルにならないので、比較の結果、一致しているMOSトランジスタの動作閾値を高めることができ、誤動作を生じないようにすることができる。   And since the clamp circuit 151 which is a level maintenance means is provided, the following operations and effects can be obtained. First, since the search line and the match line operate with a low voltage amplitude by limiting the operating voltage value range, it is possible to reduce power consumption during the search operation. In addition, since the match line does not reach the ground potential level when the comparison result does not match, the operation threshold value of the matching MOS transistor can be increased as a result of the comparison, and malfunction can be prevented. .

実施の形態2.
図5は、この発明の実施の形態2による連想メモリセルとして、TCAMセルの構成を示す回路図である。なお、図5では、図1に示したTCAMセルと同一構成ないしは同等である構成部分には同一符号が付されている。ここでは、実施の形態2に関わる部分を中心に説明する。
Embodiment 2. FIG.
FIG. 5 is a circuit diagram showing a configuration of a TCAM cell as an associative memory cell according to the second embodiment of the present invention. In FIG. 5, the same reference numerals are given to components that are the same as or equivalent to those of the TCAM cell shown in FIG. 1. Here, the description will focus on the parts related to the second embodiment.

図5に示すように、この実施の形態2による連想メモリセルであるTCAMセルは、図1に示したクランプ回路151に代えて、一致比較回路(MOSトランジスタ103,104)とマッチ線(ML)141との間に、電流制限回路501が設けられている。その他は、図1に示した構成と同様である。   As shown in FIG. 5, a TCAM cell, which is an associative memory cell according to the second embodiment, is replaced with a match comparison circuit (MOS transistors 103 and 104) and a match line (ML) in place of the clamp circuit 151 shown in FIG. 141, a current limiting circuit 501 is provided. The rest is the same as the configuration shown in FIG.

電流制限回路501は、MOSトランジスタ103とマッチ線(ML)141との間に設けられるMOSトランジスタ511と、MOSトランジスタ104とマッチ線(ML)141との間に設けられるMOSトランジスタ512とで構成されている。MOSトランジスタ511,512のゲート電極は、共通に、マッチ線(ML)141に接続されている。   The current limiting circuit 501 includes a MOS transistor 511 provided between the MOS transistor 103 and the match line (ML) 141, and a MOS transistor 512 provided between the MOS transistor 104 and the match line (ML) 141. ing. The gate electrodes of the MOS transistors 511 and 512 are commonly connected to the match line (ML) 141.

この構成によれば、検索動作時に、一致比較回路(MOSトランジスタ103,104)にて不一致と判定され、マッチ線(ML)141の電荷引き抜きが開始され、マッチ線(ML)141の電位が下がると、電流制限回路501によって一致比較回路(MOSトランジスタ103,104)を流れる電流が制限されるので、実施の形態1で説明したように、マッチ線(ML)141の電位を接地(GND)レベルではなく、例えば(1/2)Vccのレベルで保持することができる。したがって、実施の形態1と同様に、検索動作時の消費電力低減および誤動作防止の作用・効果が得られる。   According to this configuration, at the time of the search operation, the match comparison circuit (MOS transistors 103 and 104) determines that there is a mismatch, the charge extraction of the match line (ML) 141 is started, and the potential of the match line (ML) 141 decreases. Since the current flowing through the coincidence comparison circuit (MOS transistors 103 and 104) is limited by the current limiting circuit 501, the potential of the match line (ML) 141 is set to the ground (GND) level as described in the first embodiment. Instead, it can be held at a level of (1/2) Vcc, for example. Therefore, as in the first embodiment, it is possible to obtain the action and effect of reducing the power consumption and preventing the malfunction during the search operation.

実施の形態3.
図6は、この発明の実施の形態3による低電力消費型検索動作を実現する連想メモリセルアレイとして、TCAMセルアレイの構成を示すブロック図である。この実施の形態3では、実施の形態1(図1)または実施の形態2(図5)にて示したTCAMセルによるTCAMセルアレイ全体を例えば4つのサブアレイに分割し、検索動作をサブアレイ毎に実行するが、その際にマッチ線を順々に間引く、つまり階層的に間引くことで、低電力消費型検索動作を実現する構成例が示されている。
Embodiment 3 FIG.
FIG. 6 is a block diagram showing a configuration of a TCAM cell array as an associative memory cell array that realizes a low power consumption type search operation according to Embodiment 3 of the present invention. In the third embodiment, the entire TCAM cell array by the TCAM cell shown in the first embodiment (FIG. 1) or the second embodiment (FIG. 5) is divided into, for example, four subarrays, and the search operation is executed for each subarray. However, a configuration example is shown in which the low power consumption type search operation is realized by thinning out the match lines one after another, that is, by thinning out hierarchically.

図6において、TCAMセルアレイ全体が、例えば288ビットで構成される場合に、[287:216][215:144][143:72][71:0]の4つのサブアレイに分割されている。図6では、サブアレイ[287:216]をステージ1、サブレイ[215:144]をステージ2、サブアレイ[143:72]をステージ3、サブアレイ[71:0]をステージ4と称している。そして、各ステージはいわゆるパイプライン方式で連結されている。   In FIG. 6, when the entire TCAM cell array is composed of, for example, 288 bits, it is divided into four subarrays of [287: 216] [215: 144] [143: 72] [71: 0]. In FIG. 6, subarray [287: 216] is referred to as stage 1, sublay [215: 144] as stage 2, subarray [143: 72] as stage 3, and subarray [71: 0] as stage 4. Each stage is connected by a so-called pipeline system.

ステージ1では、プリチャージ線601と電源線とにANDゲート611の入力端が接続され、ANDゲート611の出力端がMOSトランジスタ612のゲート電極に接続されている。MOSトランジスタ612のソース電極は電源に接続され、ドレイン電極はマッチ線MLに接続されている。これによって、マッチ線MLは、検索動作開始前にVcc−Vthのレベルにプリチャージされる。マッチ線MLは、増幅器613の正相入力端(+)に接続され、増幅器613の逆相入力端(−)には、基準電圧refが与えられている。   In stage 1, the input terminal of the AND gate 611 is connected to the precharge line 601 and the power supply line, and the output terminal of the AND gate 611 is connected to the gate electrode of the MOS transistor 612. The source electrode of the MOS transistor 612 is connected to the power supply, and the drain electrode is connected to the match line ML. As a result, the match line ML is precharged to the level of Vcc-Vth before the search operation starts. The match line ML is connected to the positive phase input terminal (+) of the amplifier 613, and the reference voltage ref is applied to the negative phase input terminal (−) of the amplifier 613.

このステージ1では、[287:216]の全ビット群のエントリについて検索動作が行われる。一致したマッチ線MLは、Vcc−Vthのレベルを保持しているので、そのマッチ線MLが接続される増幅器613は出力をMOSレベルの“H”レベルにする。一方、不一致となったマッチ線MLではレベル降下が生じ、Vcc−Vthのレベルから例えば(1/2)Vccのレベルに低下すると、そのマッチ線MLが接続される増幅器613は出力をMOSレベルの“L”レベルにする。   In this stage 1, a search operation is performed on the entries of all bit groups [287: 216]. Since the matched match line ML holds the level of Vcc−Vth, the amplifier 613 connected to the match line ML sets the output to the “H” level of the MOS level. On the other hand, a level drop occurs in the mismatched match line ML. When the level drops from the level of Vcc-Vth to, for example, (1/2) Vcc, the amplifier 613 to which the match line ML is connected outputs its output to the MOS level. Set to “L” level.

ステージ1と次のステージ2とを連結するプリチャージステージでは、増幅器613の出力を受けるパイプラインレジスタ622と、パイプラインレジスタ622の出力端とプリチャージ線621とが接続されるANDゲート623とが設けられている。パイプラインレジスタ622は、対応する増幅器613の出力が“H”レベルのときは、出力を“H”レベルにし、対応する増幅器613の出力が“L”レベルのときは、出力を“L”レベルにする。したがって、複数のANDゲート623のうち、“H”レベルを出力しているパイプラインレジスタ622に対応しているANDゲート623のみが出力を“H”レベルにする。   In the precharge stage that connects the stage 1 and the next stage 2, a pipeline register 622 that receives the output of the amplifier 613, and an AND gate 623 to which the output terminal of the pipeline register 622 and the precharge line 621 are connected are provided. Is provided. The pipeline register 622 sets the output to “H” level when the output of the corresponding amplifier 613 is “H” level, and sets the output to “L” level when the output of the corresponding amplifier 613 is “L” level. To. Accordingly, only the AND gate 623 corresponding to the pipeline register 622 outputting the “H” level among the plurality of AND gates 623 sets the output to the “H” level.

ステージ2では、MOSトランジスタ624と増幅器625とが設けられている。MOSトランジスタ624のゲート電極はANDゲート623の出力端に接続され、ソース電極は電源に接続され、ドレイン電極はマッチ線MLに接続されている。マッチ線MLは、増幅器625の正相入力端(+)に接続され、増幅器625の逆相入力端(−)には、基準電圧refが与えられている。そして、パイプラインレジスタ622の出力端が増幅器625の制御信号入力端に接続されている。   In stage 2, a MOS transistor 624 and an amplifier 625 are provided. The gate electrode of the MOS transistor 624 is connected to the output terminal of the AND gate 623, the source electrode is connected to the power supply, and the drain electrode is connected to the match line ML. The match line ML is connected to the positive phase input terminal (+) of the amplifier 625, and the reference voltage ref is applied to the negative phase input terminal (−) of the amplifier 625. The output terminal of the pipeline register 622 is connected to the control signal input terminal of the amplifier 625.

つまり、このステージ2では、複数のパイプラインレジスタ622のうち、出力を“H”レベルにしているパイプラインレジスタ622の出力を受けたANDゲート623に関わるマッチ線MLのみがプリチャージされる。そして、そのマッチ線MLが接続される増幅器625のみが増幅動作を行い、検索結果を次段のステージ3に伝達する。したがって、ステージ2では、[215:144]の全ビット群のエントリについて検索動作が実行されるのではなく、前段のステージ1において一致判定が行われたマッチ線MLについてのみ、検索動作が実行されることになる。このとき、前段のステージ1において不一致判定が行われたマッチ線MLは、(1/2)Vccレベルを維持し、サーチ線(SL,ZSL)の電位変化に影響されないので、誤動作が生ずることはない。   That is, in this stage 2, only the match line ML related to the AND gate 623 that has received the output of the pipeline register 622 whose output is set to the “H” level among the plurality of pipeline registers 622 is precharged. Only the amplifier 625 to which the match line ML is connected performs an amplification operation and transmits the search result to the next stage 3. Therefore, in the stage 2, the search operation is not executed for the entries of all the bit groups [215: 144], but the search operation is executed only for the match line ML for which the match determination is performed in the preceding stage 1. Will be. At this time, the match line ML that has been subjected to the mismatch determination in the preceding stage 1 maintains the (1/2) Vcc level and is not affected by the potential change of the search lines (SL, ZSL), so that a malfunction may occur. Absent.

ステージ2と次のステージ3と連結するプリチャージステージでは、増幅器625の出力を受けるパイプラインレジスタ632と、パイプラインレジスタ632の出力端とプリチャージ線631とが接続されるANDゲート633とが設けられている。ステージ3以降は、図示省略したが、同様の構成になっている。   In the precharge stage connected to the stage 2 and the next stage 3, a pipeline register 632 that receives the output of the amplifier 625, and an AND gate 633 that connects the output terminal of the pipeline register 632 and the precharge line 631 are provided. It has been. Although not shown in the drawings after stage 3, the configuration is the same.

次に、図7を参照して実施の形態3による低消費電力型検索動作について説明する。図7では、図6と同様に、TCAMセルアレイ全体が、例えば288ビットで構成される場合に、[287:216][215:144][143:72][71:0]の4つのサブアレイに分割され、サブアレイ[287:216]をステージ1、サブアレイ[215:144]をステージ2、サブアレイ[143:72]をステージ3、サブアレイ[71:0]をステージ4と称している。そして、各ステージはいわゆるパイプライン方式で連結されている。   Next, a low power consumption type search operation according to the third embodiment will be described with reference to FIG. In FIG. 7, as in FIG. 6, when the entire TCAM cell array is composed of, for example, 288 bits, four subarrays of [287: 216] [215: 144] [143: 72] [71: 0] The subarray [287: 216] is referred to as stage 1, the subarray [215: 144] is referred to as stage 2, the subarray [143: 72] is referred to as stage 3, and the subarray [71: 0] is referred to as stage 4. Each stage is connected by a so-called pipeline system.

図7において、ステージ1では、[287:216]の全ビット群のエントリについて、全サーチ線および全マッチ線を対象として検索動作が行われる。そして、ステージ1において一致判定のなされたマッチ線MLが検出され、それがプリチャージステージを介してステージ2に伝達される。   In FIG. 7, in stage 1, a search operation is performed on all search lines and all match lines for entries in all bit groups [287: 216]. Then, the match line ML for which the match is determined in the stage 1 is detected, and is transmitted to the stage 2 through the precharge stage.

ステージ2では、[215:144]の全ビット群のうち、ステージ1にて一致判定のなされたマッチ線に関わるエントリについて検索動作が行われ、一致するマッチ線の絞り込みが行われ、その絞り込みが行われたマッチ線がステージ3に伝達される。   In stage 2, a search operation is performed on the entries related to the match line determined to be a match in stage 1 among all the bit groups of [215: 144], and the match lines are narrowed down. The performed match line is transmitted to the stage 3.

このように、ステージ2では、[215:144]の全ビット群を検索対象とはしないので、消費電力の低減が図られる。ステージ3では、さらに対象となるマッチ線の絞り込みが行われるので、ステージ3,4においても同様に消費電力の低減が図られる。このように、階層的に消費電力の低減が図られる。   Thus, in stage 2, since all the bit groups [215: 144] are not targeted for search, power consumption can be reduced. In stage 3, since the target match line is further narrowed down, power consumption is similarly reduced in stages 3 and 4. In this way, power consumption can be reduced hierarchically.

ここで、検索動作において消費する電力の内訳は、大きく3つの成分からなる。第1はサーチ線の充放電(a)である。第2はマッチ線の充放電(b)である。第3はアンプの活性化(c)である。この内訳で区分して消費電力を示すと次のようになる。   Here, the breakdown of the power consumed in the search operation is mainly composed of three components. The first is charge / discharge (a) of the search line. The second is charge / discharge (b) of the match line. The third is amplifier activation (c). The power consumption is shown in the following breakdown.

今、TCAMセルアレイがビット[287:0]のNエントリからなるとして、例えばステージ1の検索においてNエントリのうち、20エントリがヒット(一致)し、ステージ2では10エントリがヒットし、ステージ3では3エントリがヒットし、ステージ4で1エントリが最終的に検索データ288ビットと一致したとする。   Now, assuming that the TCAM cell array is composed of N entries of bits [287: 0], for example, in the search of stage 1, 20 entries hit (match), in stage 2 10 entries hit, in stage 3 Assume that three entries are hit and one entry finally matches the search data 288 bits in stage 4.

この場合の消費電力は、次のようになる。ステージ1では[Nエントリ×288ビット]a+[Nエントリ×288ビット]b+[Nエントリ×288ビット]cとなる。ステージ2では[Nエントリ×288ビット]a+[20エントリ×288ビット]b+[20エントリ×288ビット]cとなる。ステージ3では[Nエントリ×288ビット]a+[10エントリ×288ビット]b+[10エントリ×288ビット]cとなる。ステージ4では[Nエントリ×288ビット]a+[3エントリ×288ビット]b+[3エントリ×288ビット]cとなる。   The power consumption in this case is as follows. In stage 1, [N entries × 288 bits] a + [N entries × 288 bits] b + [N entries × 288 bits] c. In stage 2, [N entries × 288 bits] a + [20 entries × 288 bits] b + [20 entries × 288 bits] c. In stage 3, [N entries × 288 bits] a + [10 entries × 288 bits] b + [10 entries × 288 bits] c. In stage 4, [N entries × 288 bits] a + [3 entries × 288 bits] b + [3 entries × 288 bits] c.

同様の内訳で従来例におけるTCAMセルアレイでの消費電力を示す。全てのステージで全てのエントリを対象にするので、ステージ1〜ステージ4では、等しく、[Nエントリ×288ビット]a+[Nエントリ×288ビット]b+[Nエントリ×288ビット]cとなる。このことからも、この実施の形態3では、大幅な消費電力の低減が行われていることが理解できる。   The same breakdown shows the power consumption in the TCAM cell array in the conventional example. Since all entries are targeted in all stages, in stage 1 to stage 4, they are equal to [N entries × 288 bits] a + [N entries × 288 bits] b + [N entries × 288 bits] c. From this, it can be understood that the power consumption is greatly reduced in the third embodiment.

このように、実施の形態3によれば、TCAM特有の検索動作においては、検索動作をメモリアレイ全体に及ぼすのではなく、例えば、Nビット長、Mエントリのデータであれば、まず全てのエントリの上位N/2ビットについて検索を行い、一致したエントリだけの次の下位N/2ビットについて検索の対象とするという階層型検索方法を採用した。   As described above, according to the third embodiment, in the search operation peculiar to TCAM, the search operation is not applied to the entire memory array. A hierarchical search method is adopted in which the upper N / 2 bits are searched and the next lower N / 2 bits of only the matching entries are searched.

したがって、検索動作時の消費電力低減を図ることができる。このとき、検索に要する時間が長くなると性能が低下するので、性能の低下を防ぐため、各ビット間の動作をいわゆるパイプライン接続し、スループットレートを確保するようにしている。   Therefore, power consumption can be reduced during the search operation. At this time, as the time required for the search becomes longer, the performance deteriorates. Therefore, in order to prevent the performance from being deteriorated, the operations between the bits are connected by so-called pipelines to ensure the throughput rate.

実施の形態4.
図8は、この発明の実施の形態4による低電力消費型検索動作を実現する連想メモリセルアレイとして、TCAMセルアレイの構成を示すブロック図である。この実施の形態4では、実施の形態1(図1)または実施の形態2(図5)にて示したTCAMセルによるTCAMセルアレイ全体を例えば4つのサブアレイに分割し、検索動作をサブアレイ毎に実行するが、その際にマッチ線に加えサーチ線も間引くことで、低電力消費型検索動作を実現する構成例が示されている。
Embodiment 4 FIG.
FIG. 8 is a block diagram showing a configuration of a TCAM cell array as an associative memory cell array that realizes a low power consumption type search operation according to Embodiment 4 of the present invention. In the fourth embodiment, the entire TCAM cell array by the TCAM cell shown in the first embodiment (FIG. 1) or the second embodiment (FIG. 5) is divided into, for example, four subarrays, and the search operation is executed for each subarray. However, a configuration example is shown that realizes a low power consumption type search operation by thinning out search lines in addition to match lines.

図8において、実施の形態3と同様に、TCAMセルアレイ全体が、例えば288ビットで構成される場合に、[287:216][215:144][143:72][71:0]の4つのサブアレイに分割されている。図8では、サブアレイ[287:216]をステージ1、サブアレイ[215:144]をステージ2、サブアレイ[143:72]をステージ3、サブアレイ[71:0]をステージ4と称している。そして、各ステージはいわゆるパイプライン方式で連結されている。   In FIG. 8, as in the third embodiment, when the entire TCAM cell array is composed of, for example, 288 bits, there are four [287: 216] [215: 144] [143: 72] [71: 0] It is divided into subarrays. In FIG. 8, the subarray [287: 216] is referred to as stage 1, the subarray [215: 144] is referred to as stage 2, the subarray [143: 72] is referred to as stage 3, and the subarray [71: 0] is referred to as stage 4. Each stage is connected by a so-called pipeline system.

ステージ1では、実施の形態3と同様に、マッチ線MLの電位状態(検索結果)が増幅器801にてMOSの振幅レベルに増幅される。ステージ2では、増幅器801の出力を取り込むパイプラインレジスタ802と、パイプラインレジスタ802の出力がゲート電極に入力されるMOSトランジスタ803とを備えている。複数のMOSトランジスタ803のドレイン電極は、それぞれ接地(GND)され、ソース電極は共通にMOSトランジスタ804のドレイン電極にワイヤードオア接続されている。   In stage 1, as in the third embodiment, the potential state (search result) of match line ML is amplified to the MOS amplitude level by amplifier 801. The stage 2 includes a pipeline register 802 that takes in the output of the amplifier 801, and a MOS transistor 803 in which the output of the pipeline register 802 is input to the gate electrode. The drain electrodes of the plurality of MOS transistors 803 are grounded (GND), respectively, and the source electrodes are commonly wired or connected to the drain electrode of the MOS transistor 804.

MOSトランジスタ804のドレイン電極は、ステージ3においてパイプラインレジスタ805の入力端に接続され、パイプラインレジスタ805の出力端には、サーチ線SLの駆動回路806が並列に接続されている。   The drain electrode of the MOS transistor 804 is connected to the input terminal of the pipeline register 805 in the stage 3, and the drive circuit 806 of the search line SL is connected in parallel to the output terminal of the pipeline register 805.

要するに、ステージ1では、マッチ線MLの電位状態(検索結果)が増幅され、検索結果がステージ2に伝達される。ステージ2では、検索結果がワイヤードオアされて全てのエントリに対して一致がなかったことが判断される。そして、ワイヤードオアされた信号がパイプラインレジスタ805を介してサーチ線の駆動回路806に与えられ、サーチ線SLの一部駆動・全休止の制御が行われる。   In short, in stage 1, the potential state (search result) of match line ML is amplified, and the search result is transmitted to stage 2. In stage 2, it is determined that the search result is wired-or and there is no match for all entries. Then, the wired-or signal is supplied to the search line drive circuit 806 via the pipeline register 805, and the partial drive / all pause control of the search line SL is performed.

次に、図9を参照して実施の形態4による低電力消費型検索動作について説明する。図9では、図8と同様に、TCAMセルアレイ全体が、例えば288ビットで構成される場合に、[287:216][215:144][143:72][71:0]の4つのサブアレイに分割され、サブアレイ[287:216]をステージ1、サブアレイ[215:144]をステージ2、サブアレイ[143:72]をステージ3、サブアレイ[71:0]をステージ4と称している。そして、各ステージはいわゆるパイプライン方式で連結されている。各サブアレイには、サーチ線SLの駆動回路たるサーチドライバ901,902,903,904が設けられている。   Next, a low power consumption type search operation according to the fourth embodiment will be described with reference to FIG. In FIG. 9, as in FIG. 8, when the entire TCAM cell array is composed of, for example, 288 bits, four subarrays of [287: 216] [215: 144] [143: 72] [71: 0] The subarray [287: 216] is referred to as stage 1, the subarray [215: 144] is referred to as stage 2, the subarray [143: 72] is referred to as stage 3, and the subarray [71: 0] is referred to as stage 4. Each stage is connected by a so-called pipeline system. Each subarray is provided with search drivers 901, 902, 903, and 904, which are drive circuits for the search lines SL.

ステージ1では、全サーチ線SL並び全マッチ線MLが検索動作の対象となる。ステージ2では、全サーチ線SLと部分的マッチ線MLが検索動作の対象となる。ここで、ステージ3では、マッチ線MLがひとつもなかったとする。つまり、検索データと一致するデータ列がステージ3にきたときにすでにこのサブアレイ内にないことが解ったとする。   In stage 1, all search lines SL and all match lines ML are subjected to a search operation. In stage 2, all search lines SL and partial match lines ML are subjected to a search operation. Here, in stage 3, it is assumed that there is no match line ML. That is, it is understood that the data string that matches the search data is not already in the subarray when it comes to stage 3.

この場合には、ステージ4におけるマッチ線MLだけでなくサーチ線SLの発生源であるサーチドライバ904に対してディスエイブル信号(disable)を送り、動作を止めるようにしている。したがって、この実施の形態4によれば、実施の形態3と同様の作用効果が得られる。   In this case, a disable signal (disable) is sent not only to the match line ML in the stage 4 but also to the search driver 904 that is the source of the search line SL, and the operation is stopped. Therefore, according to the fourth embodiment, the same effect as that of the third embodiment can be obtained.

実施の形態5.
図10は、この発明の実施の形態5による低電力消費型検索動作を実現する連想メモリセルアレイとして、TCAMセルアレイの構成を示すブロック図である。この実施の形態5では、実施の形態1(図1)または実施の形態2(図5)にて示したTCAMセルによるTCAMセルアレイ全体をサブアレイに分割し、検索動作をサブアレイ毎に実行する場合に、マッチ線とサーチ線とのタイミングを合わせる構成例が示されている。
Embodiment 5 FIG.
FIG. 10 is a block diagram showing a configuration of a TCAM cell array as an associative memory cell array that realizes a low power consumption type search operation according to the fifth embodiment of the present invention. In the fifth embodiment, when the entire TCAM cell array by the TCAM cells shown in the first embodiment (FIG. 1) or the second embodiment (FIG. 5) is divided into subarrays, and the search operation is executed for each subarray. A configuration example of matching the timings of the match line and the search line is shown.

図10において、TCAMセルアレイ全体が、例えば、143ビットで構成される場合に、[143:108][107:72][71:36]・・のサブアレイに分割されている。   In FIG. 10, when the entire TCAM cell array is composed of, for example, 143 bits, it is divided into sub-arrays of [143: 108] [107: 72] [71:36].

[143:108]のサブアレイでは、マッチ線MLに関しては、入力端がプリチャージラインと電源ラインとに接続されるANDゲート1001とANDゲート1001の出力を受けてマッチ線MLのプリチャージを実行するMOSトランジスタ1002が設けられ、マッチ線MLの電位状態(検索結果)は、パイプラインレジスタ1011に取り込まれる。これに対し、サーチ線SLに関しては、タイミング調整用の1つのレジスタ1003が設けられている。   In the sub-array of [143: 108], the match line ML is precharged by receiving the outputs of the AND gate 1001 and the AND gate 1001 whose input ends are connected to the precharge line and the power supply line. A MOS transistor 1002 is provided, and the potential state (search result) of the match line ML is taken into the pipeline register 1011. On the other hand, for the search line SL, one register 1003 for timing adjustment is provided.

[107:72]のサブアレイでは、マッチ線MLに関しては、入力端がプリチャージラインとパイプラインレジスタ1011の出力端とに接続されるANDゲート1012とANDゲート1012の出力を受けてマッチ線MLのプリチャージを実行するMOSトランジスタ1013が設けられ、マッチ線MLの電位状態(検索結果)は、パイプラインレジスタ1021に取り込まれる。これに対し、サーチ線SLに関しては、タイミング調整用の2つのレジスタ1014,1015が設けられている。   In the subarray of [107: 72], with respect to the match line ML, the outputs of the AND gate 1012 and the AND gate 1012 whose input ends are connected to the precharge line and the output end of the pipeline register 1011 are received. A MOS transistor 1013 for performing precharge is provided, and the potential state (search result) of the match line ML is taken into the pipeline register 1021. On the other hand, for the search line SL, two registers 1014 and 1015 for timing adjustment are provided.

[71:36]のサブアレイでは、マッチ線MLに関しては、入力端がプリチャージラインとパイプラインレジスタ1021の出力端とに接続されるANDゲート1022とANDゲート1022の出力を受けてマッチ線MLのプリチャージを実行するMOSトランジスタ1023が設けられ、マッチ線MLの電位状態(検索結果)は、同様に図示しない次段のパイプラインレジスタに取り込まれる。これに対し、サーチ線SLに関しては、タイミング調整用の3つのレジスタ1024,1025,1026が設けられている。   In the sub-array of [71:36], regarding the match line ML, the outputs of the AND gate 1022 and the AND gate 1022 whose input terminals are connected to the precharge line and the output terminal of the pipeline register 1021 are received. A MOS transistor 1023 for performing precharge is provided, and the potential state (search result) of the match line ML is similarly taken into a pipeline register at the next stage (not shown). On the other hand, for the search line SL, three registers 1024, 1025 and 1026 for timing adjustment are provided.

この構成によれば、複数のサブアレイをパイプラインで連結する場合のタイミングの問題が解消される。   According to this configuration, the problem of timing when a plurality of subarrays are connected by a pipeline is solved.

実施の形態6.
図11は、この発明の実施の形態6によるアドレス検索メモリの構成を示す回路図である。図11において、並列に配置される連想メモリセルアレイであるTCAMセルアレイ1101,1102は、実施の形態1(図1)または実施の形態2(図5)にて示したTCAMセルによって構成されている。TCAMセルアレイ1101,1102の間には、駆動回路1104とセンスアンプ1103とが設けられている。駆動回路1104には、書き込み駆動回路とサーチ線駆動回路とが含まれている。
Embodiment 6 FIG.
FIG. 11 is a circuit diagram showing a structure of an address search memory according to the sixth embodiment of the present invention. In FIG. 11, TCAM cell arrays 1101 and 1102 which are associative memory cell arrays arranged in parallel are configured by the TCAM cells shown in the first embodiment (FIG. 1) or the second embodiment (FIG. 5). A drive circuit 1104 and a sense amplifier 1103 are provided between the TCAM cell arrays 1101 and 1102. The drive circuit 1104 includes a write drive circuit and a search line drive circuit.

また、TCAMセルアレイ1101,1102に対して、行デコーダ1105,1106と検索エンコーダ1107,1108が、それぞれ独立して設けられ、検索エンコーダ1107,1108の出力は、セレクタ1109を介して外部に出力される。   In addition, row decoders 1105 and 1106 and search encoders 1107 and 1108 are provided independently for the TCAM cell arrays 1101 and 1102, and outputs of the search encoders 1107 and 1108 are output to the outside via the selector 1109. .

図12は、並列に配置される2つのTCAMセルアレイの各TCAMセルとその間に配置されるセンスアンプおよび駆動回路の関係を示す回路図である。図12において、TCAMセル1201,1201は、図11におけるTCAMセルアレイ1101における隣接した2つのTCAMセルを示している。同様に、TCAMセル1202,1202は、図11におけるTCAMセルアレイ1102における隣接した2つのTCAMセルを示している。   FIG. 12 is a circuit diagram showing a relationship between each TCAM cell of two TCAM cell arrays arranged in parallel and a sense amplifier and a drive circuit arranged therebetween. 12, TCAM cells 1201 and 1201 indicate two adjacent TCAM cells in the TCAM cell array 1101 in FIG. Similarly, TCAM cells 1202 and 1202 indicate two adjacent TCAM cells in the TCAM cell array 1102 in FIG.

TCAMセル1201とTCAMセル1202の間は、書き込み、読み出し、およびリフレッシュの各動作を実施するため相補的なビット線1210,1211と、検索動作を行うための相補的なサーチ線1221,1222とで接続されている。   Between the TCAM cell 1201 and the TCAM cell 1202, complementary bit lines 1210 and 1211 for performing write, read, and refresh operations and complementary search lines 1221 and 1222 for performing a search operation are provided. It is connected.

ビット線1210,1211には、途中にMOSトランジスタで構成されるバッファ回路1213,1214がそれぞれ設けられている。バッファ回路1213,1214のMOSトランジスタは、制御線1215,1216によってそれぞれON/OFF制御できるようになっている。バッファ回路1213,1214間には、センスアンプ1203と書き込み駆動回路1204が配置されている。センスアンプ1203と書き込み駆動回路1204は、それぞれビット線1210,1211に接続されている。   The bit lines 1210 and 1211 are provided with buffer circuits 1213 and 1214 formed of MOS transistors in the middle. The MOS transistors of the buffer circuits 1213 and 1214 can be controlled ON / OFF by control lines 1215 and 1216, respectively. A sense amplifier 1203 and a write drive circuit 1204 are arranged between the buffer circuits 1213 and 1214. The sense amplifier 1203 and the write drive circuit 1204 are connected to bit lines 1210 and 1211, respectively.

また、サーチ線1221,1222には、途中にMOSトランジスタで構成されるバッファ回路1223,1224がそれぞれ設けられている。バッファ回路1223,1224のMOSトランジスタは、制御線1225,1226によってそれぞれON/OFF制御できるようになっている。バッファ回路1223,1224の間には、サーチ線駆動回路1205が配置されている。サーチ線駆動回路1205は、サーチ線1221,1222に接続されている。   In addition, the search lines 1221 and 1222 are provided with buffer circuits 1223 and 1224 formed of MOS transistors on the way. The MOS transistors of the buffer circuits 1223 and 1224 can be ON / OFF controlled by control lines 1225 and 1226, respectively. A search line driving circuit 1205 is disposed between the buffer circuits 1223 and 1224. The search line driving circuit 1205 is connected to the search lines 1221 and 1222.

次に、図11と図12とを参照して実施の形態6によるアドレス検索メモリの動作について説明する。この実施の形態6によるアドレス検索メモリでは、次の3つの動作モードが可能である。まず、第1の動作モードは、TCAMセルアレイ1101,1102を1つのメモリ空間として使用する動作モードである。すなわち、書き込み命令と検索命令の一方をTCAMセルアレイ1101,1102の双方に与える。これによれば、書き込みと検索が一方に限られるが、メモリ空間が大きく使用できる低速大容量の動作モードが実現できる。   Next, the operation of the address search memory according to the sixth embodiment will be described with reference to FIG. 11 and FIG. In the address search memory according to the sixth embodiment, the following three operation modes are possible. First, the first operation mode is an operation mode in which the TCAM cell arrays 1101 and 1102 are used as one memory space. That is, one of the write command and the search command is given to both the TCAM cell arrays 1101 and 1102. According to this, although writing and searching are limited to one, a low-speed and large-capacity operation mode that can use a large memory space can be realized.

図12で説明すれば、書き込み、読み出し、およびリフレッシュを行うときには、制御線1215、1216の一方によってバッファ回路1213,1214の一方をON状態にする。このときは、バッファ回路1223,1224は、いずれも制御線1225,1226によってOFF状態にする。これによって、TCAMセルアレイ1101,1102は、連続した1つのメモリ領域として使用することができる。   Referring to FIG. 12, when writing, reading, and refreshing, one of the control lines 1215 and 1216 turns one of the buffer circuits 1213 and 1214 on. At this time, the buffer circuits 1223 and 1224 are all turned off by the control lines 1225 and 1226. As a result, the TCAM cell arrays 1101 and 1102 can be used as one continuous memory area.

一方、検索動作時は、上記とは逆に、バッファ回路1223,1224は、双方を制御線1225,1226によってON状態にする。バッファ回路1213,1214は、いずれも制御線1215,1216によってOFF状態にする。   On the other hand, at the time of the search operation, on the contrary, the buffer circuits 1223 and 1224 are both turned ON by the control lines 1225 and 1226. The buffer circuits 1213 and 1214 are all turned off by the control lines 1215 and 1216.

また、第2の動作モードは、TCAMセルアレイ1101,1102をそれぞれ独立したメモリ空間として使用する動作モードである。すなわち、TCAMセルアレイ1101,1102に同じデータを書き込み、書き換えが必要になった場合には、TCAMセルアレイ1101,1102の間に設けた共通のセンスアンプ1103内の書き込みバッファを用いて片側のアレイに対してのみ実行するモードである。もう一方のアレイに対しては、TCAMセルアレイ1101,1102の間に設けた共通のサーチ線駆動回路1104を用いて検索動作を中断することなく実行することができる。   The second operation mode is an operation mode in which the TCAM cell arrays 1101 and 1102 are used as independent memory spaces. That is, when the same data is written into the TCAM cell arrays 1101 and 1102 and rewriting becomes necessary, the write buffer in the common sense amplifier 1103 provided between the TCAM cell arrays 1101 and 1102 is used to write the array on one side. This is a mode that only executes. For the other array, the search operation can be executed without interruption using the common search line driving circuit 1104 provided between the TCAM cell arrays 1101 and 1102.

図12で説明すれば、書き込み、読み出し、およびリフレッシュを行うときは、制御線1215,1216によってバッファ回路1213,1214の双方をON状態にする。このときは、バッファ回路1223,1224は、いずれも制御線1225,1226によってOFF状態にする。これによって、TCAMセルアレイ1101,1102には、同じデータが格納される。メモリ領域としては、1/2となる。   Referring to FIG. 12, when writing, reading, and refreshing, both the buffer circuits 1213 and 1214 are turned on by the control lines 1215 and 1216. At this time, the buffer circuits 1223 and 1224 are all turned off by the control lines 1225 and 1226. As a result, the same data is stored in the TCAM cell arrays 1101 and 1102. The memory area is 1/2.

そして、書き換えが必要になった場合には、例えばTCAMセルアレイ1101について書き換えを実行する場合には、制御線1215によってバッファ回路1213のみをON動作させる。TCAMセルアレイ1102については、バッファ回路1224を制御線1226によってON動作させることによって検索が行える。   When rewriting is necessary, for example, when rewriting is performed on the TCAM cell array 1101, only the buffer circuit 1213 is turned on by the control line 1215. The TCAM cell array 1102 can be searched by turning on the buffer circuit 1224 with the control line 1226.

これによって、アドレスの再配置(re-addressing)の必要が生じた場合、検索命令は、書き換え命令と関係なく連続して実行できる。したがって、両アレイが共用するセンスアンプは、安価に構成できるので、近年のネットワークシステムが要求する検索スピードに応え得るアドレス検索装置を安価に提供することが可能となる。   As a result, when there is a need for relocation of addresses (re-addressing), the search instruction can be executed continuously regardless of the rewrite instruction. Therefore, since the sense amplifier shared by both arrays can be configured at low cost, it is possible to provide an address search device that can meet the search speed required by the recent network system at low cost.

第3の動作モードは、第2の動作モードで両アレイに同一データを書き込んだ状態で、両アレイに対する検索動作を高速に実行するモードである。すなわち、図12で言えば、システムクロックの“H”エッジでは、バッファ回路1223を制御線1225によってON動作させ、バッファ回路1224を制御線1226によってOFF動作させ、TCAMセルアレイ1101を検索する。また、システムクロックの“L”エッジでは、バッファ回路1223を制御線1225によってOFF動作させ、バッファ回路1224を制御線1226によってON動作させ、TCAMセルアレイ1102を検索する。   The third operation mode is a mode in which the search operation for both arrays is executed at high speed while the same data is written to both arrays in the second operation mode. That is, in FIG. 12, at the “H” edge of the system clock, the buffer circuit 1223 is turned on by the control line 1225 and the buffer circuit 1224 is turned off by the control line 1226 to search the TCAM cell array 1101. At the “L” edge of the system clock, the buffer circuit 1223 is turned off by the control line 1225, the buffer circuit 1224 is turned on by the control line 1226, and the TCAM cell array 1102 is searched.

これによれば、メモリ領域は半分になるが、検索動作速度は、2倍になる。例えば、システムクロックが125MHzで走っている場合に、全体では250MHzの高速検索動作が可能となる。   According to this, the memory area is halved, but the search operation speed is doubled. For example, when the system clock is running at 125 MHz, a high-speed search operation of 250 MHz is possible as a whole.

そして、以上の各動作におけるTCAMセルアレイ1101,1102の出力は、それぞれ独立に検索エンコーダ1107,1108から並列データとして、または直列データとして出力され、セレクタ1109を介して外部に出力される。   The outputs of the TCAM cell arrays 1101 and 1102 in each of the above operations are independently output as parallel data or serial data from the search encoders 1107 and 1108, and are output to the outside via the selector 1109.

実施の形態7.
図13は、この発明の実施の形態7によるネットワークアドレス検索装置として機能するシステムLSIの構成を示すブロック図である。
Embodiment 7 FIG.
FIG. 13 is a block diagram showing a configuration of a system LSI that functions as a network address search device according to Embodiment 7 of the present invention.

以上のように、実施の形態1(図1)による連想メモリセルであるTCAMセルは、4個のMOSトランジスタと2個のキャパシタ素子とで構成され、実施の形態2(図5)による連想メモリセルであるTCAMセルは、6個のMOSトランジスタと2個のキャパシタ素子とで構成されるので、占有面積が著しく減少し、大容量搭載が可能となる。また、実施の形態3〜5(図6〜図10)によれば、階層型部分検索が行えるので、消費電力を著しく減少させることが可能となる。   As described above, the TCAM cell, which is the associative memory cell according to the first embodiment (FIG. 1), includes four MOS transistors and two capacitor elements, and the associative memory according to the second embodiment (FIG. 5). Since the TCAM cell, which is a cell, is composed of six MOS transistors and two capacitor elements, the occupied area is remarkably reduced and a large capacity can be mounted. Further, according to Embodiments 3 to 5 (FIGS. 6 to 10), hierarchical partial search can be performed, so that power consumption can be significantly reduced.

つまり、この発明によれば、特殊な検索動作を行うTCAMの集積度を一段と向上させることができる。したがって、図13に示すように、従来のTCAMは、TCAMセルアレイ1401に優先制御部(プライオリティエンコーダ)を含めたLSIであり、アクションメモリ1403までは含めることができなかったが、この発明によれば、アクションメモリ1403まで含めたシステムLSIとすることができる。   In other words, according to the present invention, the degree of integration of TCAM that performs a special search operation can be further improved. Therefore, as shown in FIG. 13, the conventional TCAM is an LSI in which a priority control unit (priority encoder) is included in the TCAM cell array 1401, and the action memory 1403 cannot be included. A system LSI including the action memory 1403 can be obtained.

前述したように、アプリケーションの立場から実際に必要なものは、TCAMの示すエントリ番号ではなく次にホップするためのアクションであるので、この発明によれば、使い勝手の優れたネットワークアドレス検索装置として機能するシステムLSIを構成することが可能となる。   As described above, what is actually required from the standpoint of the application is not the entry number indicated by the TCAM but an action for next hopping. Therefore, according to the present invention, it functions as a network address search device with excellent usability. It is possible to configure a system LSI that performs this.

図14は、図13に示すネットワークアドレス検索装置として機能するシステムLSIの具体的構成を示すブロック図である。図14に示すように、TCAMセルアレイ1501のマッチ線MLを増幅器1502にて増幅して、パイプラインレジスタ1503に保持させ、パイプラインレジスタ1503の出力をダイナミックRAM(DRAM)からなるアクションメモリ1504のワード線WLとして直接用いるように構成する。このようにすれば、ヒットしたエントリのアクションが自動的にセンスアンプ1505によって増幅され、所望の出力が得られるようになる。すなわち、アプリケーション上、使い勝手の優れたネットワークアドレス検索装置として機能するシステムLSIを構成することができる。   FIG. 14 is a block diagram showing a specific configuration of a system LSI that functions as the network address search device shown in FIG. As shown in FIG. 14, the match line ML of the TCAM cell array 1501 is amplified by an amplifier 1502 and held in a pipeline register 1503, and the output of the pipeline register 1503 is a word of an action memory 1504 composed of dynamic RAM (DRAM). It is configured to be used directly as the line WL. In this way, the action of the hit entry is automatically amplified by the sense amplifier 1505, and a desired output can be obtained. That is, it is possible to configure a system LSI that functions as an easy-to-use network address search device in terms of application.

なお、以上説明した実施の形態では、連想メモリセルとして、ダイナミック型記憶セルを示したが、この発明は、ダイナミック型記憶セルに限定されるものではなく、例えば、SRAM型記憶セルなど、その他の記憶セルにも同様に適用できるものである。   In the embodiment described above, the dynamic memory cell is shown as the associative memory cell. However, the present invention is not limited to the dynamic memory cell. The same applies to the memory cell.

以上のように、この発明にかかる連想メモリセルは、検索動作時の低消費電力化を図るのに有用である。   As described above, the content addressable memory cell according to the present invention is useful for reducing the power consumption during the search operation.

この発明にかかる連想メモリセルアレイは、検索動作を低消費電力のもとで実行できるようにして高速化を図るのに有用である。   The content addressable memory cell array according to the present invention is useful for increasing the speed by enabling the search operation to be performed with low power consumption.

この発明にかかるアドレス検索メモリは、近年のネットワークシステムが要求する検索スピードに応え得るアドレス検索装置を安価に実現するのに有用である。   The address search memory according to the present invention is useful for realizing an address search device that can meet the search speed required by a recent network system at low cost.

この発明にかかるネットワークアドレス検索装置は、使い勝手の優れたシステムLSIとして実現するのに有用である。   The network address search device according to the present invention is useful for realizing a system LSI with excellent usability.

この発明の実施の形態1による連想メモリセルとして、TCAMセルの構成を示す回路図である。It is a circuit diagram which shows the structure of a TCAM cell as an associative memory cell by Embodiment 1 of this invention. 図1に示すTCAMセルにて行われる読み出し動作、書き込み動作の説明図である。FIG. 3 is an explanatory diagram of a read operation and a write operation performed in the TCAM cell shown in FIG. 図1に示すTCAMセルにて行われる検索動作の説明図である。It is explanatory drawing of the search operation performed in the TCAM cell shown in FIG. 図1に示すTCAMセルの動作タイムチャートである。2 is an operation time chart of the TCAM cell shown in FIG. 1. この発明の実施の形態2による連想メモリセルとして、TCAMセルの構成を示す回路図である。It is a circuit diagram which shows the structure of a TCAM cell as an associative memory cell by Embodiment 2 of this invention. この発明の実施の形態3による低電力消費型検索動作を実現する連想メモリセルアレイとして、TCAMセルアレイの構成を示すブロック図である。It is a block diagram which shows the structure of a TCAM cell array as an associative memory cell array which implement | achieves the low power consumption type search operation by Embodiment 3 of this invention. 図6に示すTCAMセルアレイにて行われる低電力消費型検索動作の説明図である。FIG. 7 is an explanatory diagram of a low power consumption type search operation performed in the TCAM cell array shown in FIG. 6. この発明の実施の形態4による低電力消費型検索動作を実現する連想メモリセルアレイとして、TCAMセルアレイの構成を示すブロック図である。It is a block diagram which shows the structure of a TCAM cell array as an associative memory cell array which implement | achieves the low power consumption type search operation by Embodiment 4 of this invention. 図8に示すTCAMセルアレイにて行われる低電力消費型検索動作の説明図である。FIG. 9 is an explanatory diagram of a low power consumption type search operation performed in the TCAM cell array shown in FIG. 8. この発明の実施の形態5による低電力消費型検索動作を実現する連想メモリセルアレイとして、TCAMセルアレイの構成を示すブロック図である。It is a block diagram which shows the structure of a TCAM cell array as an associative memory cell array which implement | achieves the low power consumption type search operation by Embodiment 5 of this invention. この発明の実施の形態6によるアドレス検索メモリの構成を示すブロック図である。It is a block diagram which shows the structure of the address search memory by Embodiment 6 of this invention. 図11に示す並列に配置される2つのTCAMセルアレイの各TCAMセルとその間に配置されるセンスアンプおよび駆動回路の関係を示す回路図である。FIG. 12 is a circuit diagram showing a relationship between each TCAM cell of the two TCAM cell arrays arranged in parallel shown in FIG. 11 and a sense amplifier and a drive circuit arranged therebetween. この発明の実施の形態7であるネットワークアドレス検索装置として機能するシステムLSIの構成を示すブロック図である。It is a block diagram which shows the structure of the system LSI which functions as a network address search device which is Embodiment 7 of this invention. 図13に示すネットワークアドレス検索装置として機能するシステムLSIの具体的構成を示すブロック図である。It is a block diagram which shows the specific structure of the system LSI which functions as a network address search apparatus shown in FIG. アドレス検索用装置としてのTCAMが使用されるネットワークシステムの構成例を示す図である。It is a figure which shows the structural example of the network system in which TCAM as an address search apparatus is used. ハードウェア処理によるパケットの分類アルゴリズムを説明する図である。It is a figure explaining the packet classification algorithm by hardware processing. TCAMの基本構成および検索動作を説明する概念図である。It is a conceptual diagram explaining the basic composition and search operation | movement of TCAM. TCAMの詳細構成を示すブロック図である。It is a block diagram which shows the detailed structure of TCAM. 図18に示す従来のTCAMセルの構成を示す概念図である。It is a conceptual diagram which shows the structure of the conventional TCAM cell shown in FIG. 図18に示す従来のTCAMにて行われる検索動作の説明図である。It is explanatory drawing of the search operation performed by the conventional TCAM shown in FIG. 従来のTCAMを用いてアドレス再配置時の問題を解決する場合の構成例を示すブロック図である。It is a block diagram which shows the structural example in the case of solving the problem at the time of address rearrangement using the conventional TCAM.

符号の説明Explanation of symbols

101,102,103,104 MOSトランジスタ
105,106 キャパシタ素子
151 クランプ回路
201,1101,1102,1401,1501 連想メモリセルアレイ(TCAMセルアレイ)
203,1103,1203 センスアンプ
501 電流制限回路
1104 駆動回路(書き込み駆動回路、サーチ線駆動回路)
1107,1108 検索エンコーダ
1201,1202 TCAMセル(連想メモリセル)
1204 書き込み駆動回路
1205 サーチ線駆動回路
1402 優先制御部(プライオリティエンコーダ)
1403,1504 アクションメモリ
101, 102, 103, 104 MOS transistor 105, 106 Capacitor element 151 Clamp circuit 201, 1101, 1102, 1401, 1501 Content addressable memory cell array (TCAM cell array)
203, 1103, 1203 Sense amplifier 501 Current limit circuit 1104 Drive circuit (write drive circuit, search line drive circuit)
1107, 1108 Search encoder 1201, 1202 TCAM cell (associative memory cell)
1204 Write drive circuit 1205 Search line drive circuit 1402 Priority control unit (priority encoder)
1403, 1504 Action memory

Claims (4)

データ入出力を行うビット線に接続され、書き込まれたデータを保持する記憶ノードを有するメモリセルと、
ーチ線に供給される検索データと前記記憶ノードの保持データとの一致比較を行い、比較結果に応じて出力線の論理レベルを変化させる一致比較回路と、を備える連想メモリセルと、
複数の前記連想メモリセルアレイによって構成される連想メモリセルアレイとを有し、
前記連想メモリセルアレイは、
第1のサブアレイと、
前記第1のサブアレイの一致比較結果に応じて一致比較を実行する第2のサブアレイと、
前記第2のサブアレイの一致比較結果に応じて一致比較を実行する第3のサブアレイと、
記第1のサブアレイにおける出力線の検出結果に応じて前記第のサブアレイに属する前記サーチ線の全部または一部について検索データを与えないようにする検索制御手段と、
含むことを特徴とする連想メモリ。
Is connected to data input and output lines Ubi Tsu preparative lines, a memory cell having that Symbol憶node to hold the written data,
For matching comparison with data held in the search data and the previous Kiki憶node supplied to the service over switch line, a content addressable memory cell and a coincidence comparison circuit for changing the logic level of the output line in accordance with the comparison result ,
An associative memory cell array configured by a plurality of the associative memory cell arrays ,
The associative memory cell array includes:
A first subarray;
A second subarray that performs a match comparison in response to a match comparison result of the first subarray;
A third subarray that performs a match comparison in response to a match comparison result of the second subarray;
And search control means so as not to give the search data for all or a portion of the search line belonging to the third sub-array according to the detection result of the output lines before Symbol first subarray,
Associative memory, characterized in that it comprises a.
前記検索制御手段は、前記第1のサブアレイの一致比較結果に応じて前記第2のサブアレイに属する出力線を選択してプリチャージさせ、前記第2のサブアレイの一致比較結果に応じて前記第3のサブアレイに属する出力線を選択してプリチャージさせる、ことを特徴とする請求項1に記載の連想メモリ。The search control unit selects and precharges an output line belonging to the second sub-array according to the match comparison result of the first sub-array, and the third control unit according to the match comparison result of the second sub-array. 2. The associative memory according to claim 1, wherein an output line belonging to the sub-array is selected and precharged. 前記検索制御手段は、
前記第1のサブアレイに属するそれぞれの出力線の電位と基準電位とを比較する複数の比較回路と、
致比較時に所定の電位にプリチャージされ、前記複数の比較回路の比較結果に応じて論理レベルが変化するプリチャージ線と、
前記プリチャージ線の論理レベルに応じて前記第のサブアレイに属するサーチ線の全部または一部について検索データを与えないようにする制御回路と、を含むことを特徴とする請求項1または2に記載の連想メモリ。
The search control means includes
A plurality of comparison circuits for comparing a potential of each output line belonging to the first sub-array and a reference potential;
Are precharged to a predetermined potential during a match comparison, a precharge line logic level changes in response to the comparison result of the plurality of comparison circuits,
Claim 1 or 2, characterized in that it comprises a control circuit to avoid giving the search data for all or a portion of the search line belonging to the third sub-array in accordance with the logic level of the precharge line associative memory as claimed in.
前記各サブアレイでは、前記出力線と前記サーチ線とのタイミングを調整する調整手段、を備えたことを特徴とする請求項1〜のいずれか一つに記載の連想メモリ。 In each of sub-arrays, associative memory according to any one of claims 1-3, characterized in that it comprises a regulating means for adjusting the timing of the output lines before and hexa over switch line.
JP2007213895A 2007-08-20 2007-08-20 Associative memory Expired - Fee Related JP4391554B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007213895A JP4391554B2 (en) 2007-08-20 2007-08-20 Associative memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007213895A JP4391554B2 (en) 2007-08-20 2007-08-20 Associative memory

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2002079457A Division JP2003272386A (en) 2002-03-20 2002-03-20 Tcam cell, tcam cell array, address retrieving memory, retrieving device for network address

Publications (2)

Publication Number Publication Date
JP2008010144A JP2008010144A (en) 2008-01-17
JP4391554B2 true JP4391554B2 (en) 2009-12-24

Family

ID=39068175

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007213895A Expired - Fee Related JP4391554B2 (en) 2007-08-20 2007-08-20 Associative memory

Country Status (1)

Country Link
JP (1) JP4391554B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102134315B1 (en) 2018-12-11 2020-07-16 조선대학교산학협력단 A Non-Blocking Updateable Ternary Content-Addressable Memory on FPGA
US10922020B2 (en) * 2019-04-12 2021-02-16 Micron Technology, Inc. Writing and querying operations in content addressable memory systems with content addressable memory buffers

Also Published As

Publication number Publication date
JP2008010144A (en) 2008-01-17

Similar Documents

Publication Publication Date Title
US6731526B2 (en) CAM cell array, TCAM cell, TCAM cell array, address search memory, and network address search apparatus
US10366754B2 (en) Semiconductor integrated circuit device with reduced power consumption
JP4343859B2 (en) Semiconductor device
JP3095064B2 (en) Associative memory
US6856527B1 (en) Multi-compare content addressable memory cell
JP2013191255A (en) Contents reference memory system
US7286381B2 (en) Non-volatile and-type content addressable memory
US8659926B1 (en) PMC-based non-volatile CAM
JP2000228090A (en) Pre-charge circuit of word match line of associated memory (cam) and method
JP2003141879A (en) Associative memory device
US20070229525A1 (en) Parity-scanning and refresh in dynamic memory devices
US11107531B2 (en) Search circuits, hammer address management circuits, and memory systems including the same
US7280379B2 (en) CAM device and method for repairing the same
US7113415B1 (en) Match line pre-charging in a content addressable memory having configurable rows
US20080112234A1 (en) Methods And Apparatus For Low Power SRAM Using Evaluation Circuit
US8023301B1 (en) Content addressable memory device having state information processing circuitry
JP4298104B2 (en) Associative memory
US10373684B2 (en) Semiconductor device
US7020000B2 (en) Reducing power dissipation in a match detection circuit
JP4391554B2 (en) Associative memory
JP2585227B2 (en) Semiconductor memory device
US10910055B2 (en) System and method for reducing power consumption of memory device
US20140160825A1 (en) Search system searching for data word matching search key
JPH11273364A (en) Associative memory
GB2312769A (en) Contents addressable memory

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090113

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090316

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090623

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090811

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091006

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091007

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121016

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121016

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121016

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121016

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131016

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees