JP4391554B2 - Associative memory - Google Patents
Associative memory Download PDFInfo
- 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
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
さらに、このネットワーク1601には、中継点ルータ1606を介してネットワークアクセスポイント(NAP)1607が接続されている。NAP1607には、インターネットサービスプロバイダ(ISP2)が管理しているネットワーク1608と、インターネットサービスプロバイダ(ISP3)が管理しているネットワーク1609とが接続されている。
Further, a network access point (NAP) 1607 is connected to the
以上の構成において、中継点ルータ1602,1604,1606では、受け取ったパケットのヘッダに記載されたルールをルックアップしてパケットの分類(Packet Classification)が行われる。例えば、中継点ルータ1606では、NAP1607から受け取ったパケットについて、「このパケットは企業内ネットワーク(E1)に行け」とか、「このパケットは企業内ネットワーク(E1)ではない、企業内ネットワーク(E2)にホップせよ」、あるいは「このパケットはどこでもない」というように分類する。
In the above configuration, the
パケットのヘッダには、このような様々の情報がルールという形で記載されており、中継点ルータ内で分類のための検索キーとなっている。中継点ルータ内では、送られてくる様々なパケットが持つルール全てについて、それぞれどのようなアクションかをルックアップし、どのルータに引き渡すか(ホップするか)などを瞬時に判断する必要がある。 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
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
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,
優先制御部1702では、TCAM1701の検索結果が複数あるとき、優先度の高いエントリとして番号の一番若いエントリをアクションメモリ1703に与える。アクションメモリ1703では、優先制御部1702から入力されたエントリについて次に行うべきアクションを探し出す。その結果、次のルータが指定され、パケットが転送される、など次にホップする。
When there are a plurality of TCAM 1701 search results, the
ここで、例えばルールが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
次に、図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
検索動作時には、サーチコマンドが図示しない入力ピンに与えられると、サーチポート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
検索出力線1804は、検索動作開始前に“H”レベルにプリチャージされている。そして、通常、一致したTCAMセル1802が接続される検索出力線1804では、その“H”レベルがそのまま保持される。一方、不一致のTCAMセル1802が接続される検索出力線1804では、セル内のトランジスタを介して放電し、“L”レベルに引き下げされる。つまり、図16に示すアドレス検索装置としてのTCAM1701では、“H”レベルを保持する検索出力線1804のエントリ番号を調べて、そのエントリ番号を優先制御部1702に出力することが行われる。以上が、TCAM1701の役割である。
The
次に、図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 /
命令制御ピン1902には、命令解読器1921が接続されている。命令制御ピン1902に与えられた命令が命令解読器1921にて解読され、その解読結果による動作指示が各部に通知されるようになっている。
An
アドレス入力ピン1903には、デコーダ1931が接続されている。デコーダ1931の出力端には、行デコーダ1932が接続されている。また、検索結果出力ピン1904には、検索エンコーダ1941の出力端が接続されている。
A
行デコーダ1932の各行出力端と検索エンコーダ1941の各行入力端との間に、複数のTCAMセル1910が横一列に配置されている。行デコーダ1932の各行出力端には、マスクデータ用ワード線1933と有効データ用ワード線1943とが設けられている。横一列に配置されている複数のTCAMセル1910は、それぞれマスクデータ用ワード線1933と有効データ用ワード線1934とに並列に接続されている。
A plurality of
そして、検索エンコーダ1941の各行入力端には、検索出力線(マッチ線)1942が設けられ、各検索出力線1942には、横一列に配置されている複数のTCAMセル1910が並列に接続されている。
A search output line (match line) 1942 is provided at each row input end of the
データ入出力ピン1901には、複数のセンスアンプ1911と複数のサーチドライバ1912,1913とが接続されている。複数のセンスアンプ1911と複数のサーチドライバ1912,1913は、横一列に配置されている複数のTCAMセル1910の各列の一端側に1対1対応で設けられている。
A plurality of
複数のセンスアンプ1911のそれぞれには、書き込み、読み出し、およびリフレッシュの各動作を行うためのビット線1914,1915が設けられている。この2本のビット線1914,1915には、横一列に配置されている複数のTCAMセル1910の各列における複数のTCAMセル1910が並列に接続されている。
Each of the plurality of
複数のサーチドライバ1912,1913のそれぞれには、検索動作用ビット線(サーチ線)1916,1917が設けられている。この2本の検索動作用ビット線1916,1917には、横一列に配置されている複数のTCAMセル1910の各列における複数のTCAMセル1910が並列に接続されている。
Each of the
以上の構成において、まず、TCAMセル1910にデータを書き込むときは、書き込みという命令が命令制御ピン1902に与えられる。そして、書き込みたいデータをデータ入出力ピン1901に与え、書き込みたいアドレス、エントリ番号をアドレス入力ピン1903に与える。
In the above configuration, first, when data is written to the
なお、書き込み命令に関してアドレス入力はあまり必要ではない。最終的に必要なものは、各ルール(入力データ)に対応する次のアクションであるから、データが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
次に、書き込みデータは、センスアンプ1911に内蔵の書き込みバッファ回路によって2本のビット線1914,1915に伝達される。同時に、書き込みアドレスは、デコーダ1931を介して行デコーダ1932に入力され、所望のエントリにおけるTCAMセル1910に書き込みが行われる。
Next, write data is transmitted to the two
次に、検索動作についても説明する。サーチコマンド(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
TCAMセル1910では、保持データと検索動作用ビット線1916,1917の一致比較が行われる。そして、全てのデータ列が一致したエントリだけに接続される検索出力線1942が“H”レベルを保持する。1ビットでも不一致があれば、その検索出力線1942が接続されるエントリでは、その検索出力線1942のレベルをセル内のトランジスタを介して放電し“L”レベルに引き下げる。これは、ワイヤードオア処理によって行われる。
In the
検索エンコーダ1941では、このようにしてデータ列が全て一致して“H”レベルを保持している検索出力線1942が見つけ出され、その“H”レベルを保持している検索出力線1942の属するエントリの番号が検索結果出力ピン1904から出力される。
In this manner, the
次に、図18に示す従来のTCAMセル1910は、例えば図19に示すように構成されている。図19において、従来のTCAMセル1910は、有効データ記憶セル2001とマスクデータ記憶セル2002とによる物理的に2つのセルの組み合わせによって、“1”“0”“X”の3値(ターナリ値)を保持するように構成されている。
Next, the
有効データ記憶セル2001とマスクデータ記憶セル2002は、それぞれ、フリップフロップを構成するように逆並列接続された2つのインバータによって構成されている。
Each of the valid
有効データ記憶セル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
また、マスクデータ記憶セル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
このように、従来のネットワークアドレス検索装置(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
しかしながら、従来の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
図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
このアドレスの再配置(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,
この構成によれば、TCAM2201,2202のそれぞれに同じデータの書き込みが行われる。そして、優先順位の書き換えが発生すれば、例えばTCAM2201に対してのみ書き換えを実行する。その期間中TCAM2202に対して検索を許容することができ、検索結果が出力される。勿論、検索は書き換え以前の古いデータに対してのみの実行となる。次いで、TCAM2201に対しての書き換えが完了した時点で、今度は検索ポートをTCAM2202からTCAM2201に移して実行する。書き換えが必要なときには、書き換えをTCAM2202に対して実行することができる。検索命令は、書き換え命令と関係なく連続して実行できる。
According to this configuration, the same data is written to each of the
しかしながら、図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
この発明は、上記に鑑みてなされたものであり、検索動作を低消費電力のもとで実行できる方策を講じて高速化を可能にする連想メモリを得ることを目的とする。 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は、書き込み動作、読み出し動作およびリフレッシュ動作を行うビット線である。
FIG. 1 is a circuit diagram showing a configuration of a TCAM cell as an associative memory cell according to
一方のビット線(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
また、電位レベルが相補的に変化するサーチ線(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
この構成によれば、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
ここに、サーチ線(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
以上の構成において、読み出し動作では、まず、行デコーダ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
次に、図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
検索動作においては、前準備として、サーチ線とマッチ線が共に“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
一方、第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
ここで、マッチ線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
ところが、この実施の形態では、マッチ線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
図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に関わる部分を中心に説明する。
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 (
電流制限回路501は、MOSトランジスタ103とマッチ線(ML)141との間に設けられるMOSトランジスタ511と、MOSトランジスタ104とマッチ線(ML)141との間に設けられるMOSトランジスタ512とで構成されている。MOSトランジスタ511,512のゲート電極は、共通に、マッチ線(ML)141に接続されている。
The current limiting
この構成によれば、検索動作時に、一致比較回路(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 (
実施の形態3.
図6は、この発明の実施の形態3による低電力消費型検索動作を実現する連想メモリセルアレイとして、TCAMセルアレイの構成を示すブロック図である。この実施の形態3では、実施の形態1(図1)または実施の形態2(図5)にて示したTCAMセルによるTCAMセルアレイ全体を例えば4つのサブアレイに分割し、検索動作をサブアレイ毎に実行するが、その際にマッチ線を順々に間引く、つまり階層的に間引くことで、低電力消費型検索動作を実現する構成例が示されている。
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
図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
ステージ1では、プリチャージ線601と電源線とにANDゲート611の入力端が接続され、ANDゲート611の出力端がMOSトランジスタ612のゲート電極に接続されている。MOSトランジスタ612のソース電極は電源に接続され、ドレイン電極はマッチ線MLに接続されている。これによって、マッチ線MLは、検索動作開始前にVcc−Vthのレベルにプリチャージされる。マッチ線MLは、増幅器613の正相入力端(+)に接続され、増幅器613の逆相入力端(−)には、基準電圧refが与えられている。
In
このステージ1では、[287:216]の全ビット群のエントリについて検索動作が行われる。一致したマッチ線MLは、Vcc−Vthのレベルを保持しているので、そのマッチ線MLが接続される増幅器613は出力をMOSレベルの“H”レベルにする。一方、不一致となったマッチ線MLではレベル降下が生じ、Vcc−Vthのレベルから例えば(1/2)Vccのレベルに低下すると、そのマッチ線MLが接続される増幅器613は出力をMOSレベルの“L”レベルにする。
In this
ステージ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
ステージ2では、MOSトランジスタ624と増幅器625とが設けられている。MOSトランジスタ624のゲート電極はANDゲート623の出力端に接続され、ソース電極は電源に接続され、ドレイン電極はマッチ線MLに接続されている。マッチ線MLは、増幅器625の正相入力端(+)に接続され、増幅器625の逆相入力端(−)には、基準電圧refが与えられている。そして、パイプラインレジスタ622の出力端が増幅器625の制御信号入力端に接続されている。
In
つまり、このステージ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
ステージ2と次のステージ3と連結するプリチャージステージでは、増幅器625の出力を受けるパイプラインレジスタ632と、パイプラインレジスタ632の出力端とプリチャージ線631とが接続されるANDゲート633とが設けられている。ステージ3以降は、図示省略したが、同様の構成になっている。
In the precharge stage connected to the
次に、図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
図7において、ステージ1では、[287:216]の全ビット群のエントリについて、全サーチ線および全マッチ線を対象として検索動作が行われる。そして、ステージ1において一致判定のなされたマッチ線MLが検出され、それがプリチャージステージを介してステージ2に伝達される。
In FIG. 7, in
ステージ2では、[215:144]の全ビット群のうち、ステージ1にて一致判定のなされたマッチ線に関わるエントリについて検索動作が行われ、一致するマッチ線の絞り込みが行われ、その絞り込みが行われたマッチ線がステージ3に伝達される。
In
このように、ステージ2では、[215:144]の全ビット群を検索対象とはしないので、消費電力の低減が図られる。ステージ3では、さらに対象となるマッチ線の絞り込みが行われるので、ステージ3,4においても同様に消費電力の低減が図られる。このように、階層的に消費電力の低減が図られる。
Thus, in
ここで、検索動作において消費する電力の内訳は、大きく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
この場合の消費電力は、次のようになる。ステージ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
同様の内訳で従来例における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
このように、実施の形態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つのサブアレイに分割し、検索動作をサブアレイ毎に実行するが、その際にマッチ線に加えサーチ線も間引くことで、低電力消費型検索動作を実現する構成例が示されている。
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
図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
ステージ1では、実施の形態3と同様に、マッチ線MLの電位状態(検索結果)が増幅器801にてMOSの振幅レベルに増幅される。ステージ2では、増幅器801の出力を取り込むパイプラインレジスタ802と、パイプラインレジスタ802の出力がゲート電極に入力されるMOSトランジスタ803とを備えている。複数のMOSトランジスタ803のドレイン電極は、それぞれ接地(GND)され、ソース電極は共通にMOSトランジスタ804のドレイン電極にワイヤードオア接続されている。
In
MOSトランジスタ804のドレイン電極は、ステージ3においてパイプラインレジスタ805の入力端に接続され、パイプラインレジスタ805の出力端には、サーチ線SLの駆動回路806が並列に接続されている。
The drain electrode of the
要するに、ステージ1では、マッチ線MLの電位状態(検索結果)が増幅され、検索結果がステージ2に伝達される。ステージ2では、検索結果がワイヤードオアされて全てのエントリに対して一致がなかったことが判断される。そして、ワイヤードオアされた信号がパイプラインレジスタ805を介してサーチ線の駆動回路806に与えられ、サーチ線SLの一部駆動・全休止の制御が行われる。
In short, in
次に、図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
ステージ1では、全サーチ線SL並び全マッチ線MLが検索動作の対象となる。ステージ2では、全サーチ線SLと部分的マッチ線MLが検索動作の対象となる。ここで、ステージ3では、マッチ線MLがひとつもなかったとする。つまり、検索データと一致するデータ列がステージ3にきたときにすでにこのサブアレイ内にないことが解ったとする。
In
この場合には、ステージ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
実施の形態5.
図10は、この発明の実施の形態5による低電力消費型検索動作を実現する連想メモリセルアレイとして、TCAMセルアレイの構成を示すブロック図である。この実施の形態5では、実施の形態1(図1)または実施の形態2(図5)にて示したTCAMセルによるTCAMセルアレイ全体をサブアレイに分割し、検索動作をサブアレイ毎に実行する場合に、マッチ線とサーチ線とのタイミングを合わせる構成例が示されている。
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
[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
[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
この構成によれば、複数のサブアレイをパイプラインで連結する場合のタイミングの問題が解消される。 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には、書き込み駆動回路とサーチ線駆動回路とが含まれている。
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セルアレイ1101,1102に対して、行デコーダ1105,1106と検索エンコーダ1107,1108が、それぞれ独立して設けられ、検索エンコーダ1107,1108の出力は、セレクタ1109を介して外部に出力される。
In addition,
図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セル1201とTCAMセル1202の間は、書き込み、読み出し、およびリフレッシュの各動作を実施するため相補的なビット線1210,1211と、検索動作を行うための相補的なサーチ線1221,1222とで接続されている。
Between the
ビット線1210,1211には、途中にMOSトランジスタで構成されるバッファ回路1213,1214がそれぞれ設けられている。バッファ回路1213,1214のMOSトランジスタは、制御線1215,1216によってそれぞれON/OFF制御できるようになっている。バッファ回路1213,1214間には、センスアンプ1203と書き込み駆動回路1204が配置されている。センスアンプ1203と書き込み駆動回路1204は、それぞれビット線1210,1211に接続されている。
The
また、サーチ線1221,1222には、途中にMOSトランジスタで構成されるバッファ回路1223,1224がそれぞれ設けられている。バッファ回路1223,1224のMOSトランジスタは、制御線1225,1226によってそれぞれON/OFF制御できるようになっている。バッファ回路1223,1224の間には、サーチ線駆動回路1205が配置されている。サーチ線駆動回路1205は、サーチ線1221,1222に接続されている。
In addition, the
次に、図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
図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
一方、検索動作時は、上記とは逆に、バッファ回路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
また、第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
図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
そして、書き換えが必要になった場合には、例えばTCAMセルアレイ1101について書き換えを実行する場合には、制御線1215によってバッファ回路1213のみをON動作させる。TCAMセルアレイ1102については、バッファ回路1224を制御線1226によってON動作させることによって検索が行える。
When rewriting is necessary, for example, when rewriting is performed on the
これによって、アドレスの再配置(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
これによれば、メモリ領域は半分になるが、検索動作速度は、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
実施の形態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
つまり、この発明によれば、特殊な検索動作を行う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の示すエントリ番号ではなく次にホップするためのアクションであるので、この発明によれば、使い勝手の優れたネットワークアドレス検索装置として機能するシステム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
なお、以上説明した実施の形態では、連想メモリセルとして、ダイナミック型記憶セルを示したが、この発明は、ダイナミック型記憶セルに限定されるものではなく、例えば、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.
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
203, 1103, 1203
1107, 1108
1204
1403, 1504 Action memory
Claims (4)
サーチ線に供給される検索データと前記記憶ノードの保持データとの一致比較を行い、比較結果に応じて出力線の論理レベルを変化させる一致比較回路と、を備える連想メモリセルと、
複数の前記連想メモリセルアレイによって構成される連想メモリセルアレイとを有し、
前記連想メモリセルアレイは、
第1のサブアレイと、
前記第1のサブアレイの一致比較結果に応じて一致比較を実行する第2のサブアレイと、
前記第2のサブアレイの一致比較結果に応じて一致比較を実行する第3のサブアレイと、
前記第1のサブアレイにおける出力線の検出結果に応じて前記第3のサブアレイに属する前記サーチ線の全部または一部について検索データを与えないようにする検索制御手段と、
を含むことを特徴とする連想メモリ。 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のサブアレイに属するそれぞれの出力線の電位と基準電位とを比較する複数の比較回路と、
一致比較時に所定の電位にプリチャージされ、前記複数の比較回路の比較結果に応じて論理レベルが変化するプリチャージ線と、
前記プリチャージ線の論理レベルに応じて前記第3のサブアレイに属するサーチ線の全部または一部について検索データを与えないようにする制御回路と、を含むことを特徴とする請求項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.
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)
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 |
-
2007
- 2007-08-20 JP JP2007213895A patent/JP4391554B2/en not_active Expired - Fee Related
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 |