JPH11283378A - 内容アドレス・メモリ - Google Patents

内容アドレス・メモリ

Info

Publication number
JPH11283378A
JPH11283378A JP10334683A JP33468398A JPH11283378A JP H11283378 A JPH11283378 A JP H11283378A JP 10334683 A JP10334683 A JP 10334683A JP 33468398 A JP33468398 A JP 33468398A JP H11283378 A JPH11283378 A JP H11283378A
Authority
JP
Japan
Prior art keywords
tag
bit
memory
cell
cells
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.)
Pending
Application number
JP10334683A
Other languages
English (en)
Inventor
Pak Kuen Fung
クエン フング パク
Hiep Van Tran
バン トラン ヒエプ
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.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of JPH11283378A publication Critical patent/JPH11283378A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

(57)【要約】 (修正有) 【課題】 タグ・セルの内容比較方法の低コスト化。 【解決手段】 内容によってアドレスし得るメモリ(C
AM)30が、タグ・セル10、10aで構成されたタ
グ・メモリ20を持つと共に、データ・キャッシュを持
っている。各々のタグ・セルは、データ・ビットを記憶
する為に普通のRAMセルと同じように構成されている
が、その出力に多重化スイッチ16を持ち、これ、がタ
グ・セルの内容を表す信号を読取線15に印加する。各
々の読取線で、タグ比較回路25が選択された列にある
各々のセルからのビットを目標アドレスのビットと比較
する。ある列内のすべてのセルに対する符合無しによっ
て終了しない限り、このサイクルが目標アドレスの全部
のビット及びタグ・メモリの相次ぐ列に対して繰返され
る。タグ比較回路は「ヒット」出力信号を保持する論理
回路を有する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は全般的にコンピュ
ータ・メモリ、更に具体的に言えば、メモリ・キャッシ
ュ形式及び符合を求めてキャッシュを探索する方法に関
する。
【0002】
【従来の技術及び課題】「内容アドレス・メモリ」(内
容によってアドレスし得るメモリ、略称CAM)がメモ
リ・キャッシュ・システムで使われている。これは、キ
ャッシュが、プロセッサによって要請されたデータのよ
うな、システム内のどこか他の場所で必要なデータを持
っているかどうかを判断する符合検査過程を実行する。
【0003】CAMを用いる汎用コンピュータでは、全
てのキャッシュ・システムがそうであるが、プロセッサ
がそれが必要とするデータを同定する時、CAMは同定
されたデータがCAM内にあるかどうかを判断する為に
自分のメモリを検査しなければならない。言い換えれ
ば、CAMは、データがキャッシュ項目であるかあるい
はそれが主(非キャッシュ)メモリにだけに記憶されて
いるかどうかを判断する。CAM方式では、この検査過
程が、「タグ」をCAMに記憶することによって実施さ
れる。各々のタグは各々のキャッシュ項目のアドレスの
一部分であって良い。CAMが各々のタグを、プロセッ
サによって発せられた「目標タグ」と比較する。符合す
れば、データがCAM内にある。符合しなければ、デー
タを主メモリから持ってくる。
【0004】普通のCAMは、目標タグを全てのタグの
ことごとくのビットと同時に比較する。普通のCAM
は、特別のタグ・メモリ・セル(「タグ・セル」)を使
うことによって、この比較を行う。各々のタグ・セルは
普通のRAMセルのようなもので、関連するビット線及
びワード線とデータ記憶部品とを持っているが、比較器
をも持っている。比較器がビット線の信号をセルの内容
と比較し、その結果を読取線に出す。CAM内にあるす
べてのセルの比較器が一度にターンオンされ、この為、
各々のセルはその比較を他の全てのセルと同時に実施す
る。
【0005】図1は、各々のタグ・セル102に対する
比較器(スイッチ107及び108)を持つ従来のCA
M 100を示す。ビット線101が目標タグの相次ぐ
ビット(並びに補数ビット)を同時にセル102に伝え
る。目標タグの各ビットが、1対のインバータ104の
状態によって表されるセル102の内容と比較される。
セル102の各行は関連する符合線103を持ち、これ
がVccにプリチャージされる。スイッチ105がワー
ド線106によって作動される。1対の直列接続のスイ
ッチング・トランジスタ107、108が各々のインバ
ータ104の出力によって制御される。スイッチング・
トランジスタ107、108が符合線103をアースに
接続し、符合線103を放電する為には両方とも作動さ
れなければならない。この放電が起こるのは、セルの内
容がビット線の目標タグ・ビットと符合しない時だけで
ある。従って、各々の行で、符合せずの時、符合線10
3が低になる。何れかの行の符合線がVccにとどまる
場合、その行の符合が表示される。オア・ゲート(図に
示してない)を使って、CAM 100からの大域ヒッ
ト信号を発生することができる。
【0006】このように構成し、CAMのタグ・セルの
内容を同時に比較するこの従来の方法は、ダイ面積及び
電源に生ずる電流スパイクの点でコスト高である。パケ
ット通信システムに使われるもののように多数の項目を
記憶するCAMでは、電流スパイクが問題を招くことが
ある。
【0007】
【課題を解決する為の手段及び作用】この発明の一面
は、タグ並びに各々のタグに関連するデータを記憶し、
タグを目標タグと逐次的に比較する内容アドレス・メモ
リ(CAM)である。CAMは、タグ・セルのアレイ及
びデータ・セルのアレイで構成される。各々のタグ・セ
ルが、データ・ビットを記憶する為の適当なメモリ記憶
部品を持つと共に、その出力がそのセルに記憶されたビ
ットの状態を表す信号であるような多重化スイッチをも
持っている。ビット選択線がタグ・セルの各列を接続
し、読取線がタグ・セルの各行を接続する。タグ比較回
路がタグ・セルの外部にある。任意のビット選択線を作
動して、アレイのある列にある多重化スイッチをターン
オンすることができる。その時、タグ比較回路がその列
のセルにあるビットを目標タグのビットと比較する。目
標タグの各ビットがタグ・セル出力の相次ぐ列と比較さ
れる時、タグ比較回路は、夫々、ある行にあるセルに対
する比較がそれまで符合又は符合せずの何れを表示して
いるかを示す読取線出力を保つ。これらの読取線出力を
互いに結合して、「ヒット」信号を発生することができ
る。この発明の利点は、各々のタグ・セルの面積、従っ
てCAMの寸法が縮小することである。これは、各々の
タグ・セルがその出力に、比較器ではなく多重化スイッ
チ(1つ又は2つのトランジスタ)しか持たないことに
由る。このようなセルのアレイを考えると、面積の節約
はかなりになる。
【0008】CAMは電流スパイクをも小さくする。任
意の一時に、目標アドレスの1つのビットだけがタグ・
セルの列からのビットと比較される。
【0009】別の利点は、長さが変化する目標タグに対
処するようにCAMを容易にプログラムすることができ
ることである。この為、短い目標タグに対しては、符合
があるかどうかを判断するのに必要な時間が短くなるよ
うな形で、CAMをプログラムすることができる。
【0010】上に述べた特徴は、非同期転送モード(A
TM)スイッチのようなパケット交換に使われるCAM
にとって特に魅力がある。こういうスイッチは、典型的
には1K又はそれ以上の多数のアドレスを持つCAMを
用いて、アドレス置換を行う。このようなCAMでは、
普通のCAMに伴うアレイの寸法及び電流スパイクは、
一層小さなCAMよりも、なおさら大きな問題になる。
【0011】この発明のプログラム能力の面は、タグの
符合検査の際に不作動にされ又は付能される部分にCA
Mを仕切ることに拡張することができる。これによって
ユーザが、実際に使われているCAMの部分によって要
求される通りに、更に電力を減らし、速度を高めること
ができる。
【0012】
【実施例】図2はこの発明に従って構成されたCAM
(内容によってアドレス可能なメモリ)のタグ・メモリ
・セル(「タグ・セル」)10を示す。後で図6につい
て説明するが、この発明によるCAMは、タグ・セル1
0のようなセルのアレイを持っている。この明細書でい
う「タグ」は、タグに関連するデータに対する任意のデ
ィジタル識別子(1つ又は更に多くのビット)であって
良い。目標タグがCAM内にあるタグと符合する時、C
AMがそのタグに関連するデータを供給する。
【0013】RAM(ランダムアクセス・メモリ)のセ
ルのように、タグ・セル10は、典型的にはここに示す
静止メモリ・セルに1個のビットを記憶する。セル10
に書込む為に、ワード線(WL)11及び相補的なビッ
ト線(BL及びBL(バー))12が使われる。1対の
インバータ13及び関連する入力スイッチング・トラン
ジスタ14が、セル10に記憶されるビットの2進状態
を決定する。図示例では、トランジスタ14がNMOS
トランジスタであるが、他のものを用いても良く、上側
インバータ13の出力電圧を記憶されているビットを決
定するものとして取出すことができる。タグの符合検査
では、読取線15がセル10に記憶されたビットの状態
を示す信号を受取る。この為、普通のタグ・セルと異な
り、セル10は読取線に出力を発生する為に比較を行わ
ない。その代りに、セル10は多重化トランジスタ16
を持っていて、これは、オンの時、セルに記憶された内
容を読取線15に結合する。こうしてセル10は、セル
の記憶されている“0”又は“1”状態を示す「タグ・
ビット出力」を多重化トランジスタ16の出力端子
(「試験端子」)に発生する。各セル10の試験端子が
そのセルの行の読取線15に結合される。多重化トラン
ジスタ16は、ビット選択線17が作動された時、試験
端子をセル10のタグ・ビット出力に結合するビット選
択入力を持っている。
【0014】ビット選択線(BIT_SEL)17がセ
ル10に接続され、ビット線12と平行に伸びている。
タグ符合検査の動作では、プリチャージ・トランジスタ
19を使って、読取線15を論理1(Vccボルト)及
び0(0ボルト)の中間の電圧、例えばVcc/2まで
プリチャージする。ビット選択線17が“1”(Vcc
ボルト)によって作動されると、トランジスタ16が導
電し、プリチャージされた読取線15の電圧を、記憶さ
れているビットが“0”又は“1”の何れであるかに応
じて、0又はVccに駆動する。後で図6について説明
するが、読取線15に出るこのビットを表す信号が、目
標タグのビットを表す信号と比較される。
【0015】図3は、CAMセル10の別の実施例であ
るCAMセル10aを示す。セル10aはセル10と似
ているが、その読取線15がVccにプリチャージされ
ている。Vccへのプリチャージ動作をよくする為に、
プリチャージ・トランジスタ19aはNMOSトランジ
スタではなく、PMOSトランジスタにすることができ
る。
【0016】セル10aの多重化スイッチは2つのトラ
ンジスタ16、18で構成されている。トランジスタ1
8はセル出力に対して高入力インピーダンスを呈し、ト
ランジスタ16と協働して、記憶されているビットが
“0”又は“1”の何れであるかに応じて、読取線15
を0又はVccの電圧に駆動する。追加のトランジスタ
18は、読取線15に一層強固な信号を発生し、読取線
15のセンスアンプの必要を無くすことができる(図6
の素子25a参照)。
【0017】図2及び3の両方について説明すると、セ
ル10及びセル10aの両方のタグ・セルの実施例は、
多重化スイッチを使って、記憶されているビットを表す
信号(タグ・ビット出力)を読取線15に印加する。セ
ル10の場合、このスイッチは1個のトランジスタ16
であるが、セル10aの場合、このスイッチは2つのト
ランジスタ16、18である。何れの場合も、トランジ
スタの数は、比較器を持つ従来のCAMのタグ・セルに
必要な数よりも少ない。
【0018】図4及び5は夫々CAMセル10及び10
aの時間線図である。何れの場合も、時刻t0 に、セル
が最初にプリチャージされ、読取線の電圧が、セル10
の場合はVcc/2、そしてセル10aの場合はVcc
になるようにする。ビット選択電圧は低(V=0)であ
る。時刻ts にセルが切替えられると、ビット選択電圧
が高(Vcc)になる。セル10(図4)の場合、読取
線電圧がそのプリチャージ・レベルからVcc又は0に
なり、夫々論理“1”又は“0”を示す。セル10a
(図5)の場合、読取線電圧はVccのままであるか又
は0になり、夫々論理“1”又は“0”を示す。時刻t
d に、セルが読取られ、読取線15のセル10(図4)
は、読出しを助けるセンスアンプ(図6の素子25a参
照)を持ち、セル10a(図5)は、より強固な出力信
号を発生するトランジスタ18を持っている。
【0019】図6は、データ・キャッシュ29(典型的
にはSRAM)とデータが連絡するタグ・メモリ20を
持つCAM 30を示している。タグ・メモリ20はタ
グ・セル10(又は10a)の多数の行及び列を有す
る。L個の行があり、各行がM列を有する。図2(又は
図3)について前に述べたように、各々のタグ・セル1
0(又は10a)が関連した多重化スイッチ16(又は
16及び18)によってその行に対する対応する読取線
15に結合されている。
【0020】図6の実施例では、各々のタグが、このタ
グに関連するキャッシュ・データと同じワード線のタグ
・セル10に記憶される。特定のワード線にあるタグと
符合すると、このワード線にある要請されたデータをデ
ータ・キャッシュ29から検索する。この為、図示のよ
うに、CAM 30のワード線(WL0、WL1、WL
2…)がタグ・メモリ20からデータ・キャッシュ29
に直接的に接続されている。データ・キャッシュ29の
L行があり、各行がN個のデータ・メモリ・セルを持っ
ている。
【0021】一般的に、タグ・メモリ20は比較しよう
とする目標タグ内のビット数と少なくとも同じ数の列
と、少なくとも、キャッシュにあるデータ項目に対する
タグに対処するのに必要な数の行を持っている。簡単の
為、図6のタグ・メモリ20では、タグ・セル10の4
行及び3列がある。ワード線11及び読取線15がセル
10の行を接続する。ビット線12及びビット選択線1
7がセル10の列を選択する。
【0022】制御装置21は、任意の所定の時刻に、ど
のビット線12又はビット選択線17が作用するかを決
定する回路で構成される。制御装置は、夫々図10及び
11に関連して後で説明するATMスイッチのスイッチ
制御装置又はコンピュータのプロセッサのような外部の
源から、制御線21aを介して制御入力(「制御」)を
受取る。制御装置21が、比較線21bを介して「比
較」信号をタグ・ビット選択器22に送出すと共に、読
出し線21cを介して「読出し」信号をデータ・キャッ
シュ29に送出す。
【0023】タグ・ビット選択器22が「目標」タグを
記憶している。この目標タグは、図10及び11に関連
して後で説明するように、データ通信ネットワークの一
部分である遠隔の源、又はコンピュータのプロセッサの
何れかから発することができる。目標タグをタグ入力線
22aを介してタグ・ビット選択器22が受取る。制御
装置21からの「比較」信号に応答して、タグ・ビット
選択器22が、記憶されているタグからの対応するビッ
トと比較する為、一度に目標タグの1つのビットを逐次
的に選択する。タグ・ビット選択器22はタグ・ビット
出力端子を持っていて、目標タグのビットを目標タグ・
ビット線22bを介してタグ比較回路25へ送出す。
【0024】タグ比較回路25(25a、25b、25
c、25d、25e)はタグ・メモリ20の周辺にあ
る。一般的に、タグ比較回路25は目標タグの選択され
たビットを、ビット選択線17を作動することによって
決定されたタグ・メモリ20の列にあるタグ・セル10
の出力とを比較する。この為、全てのタグ・ビットを一
度に目標タグと比較するのではなく、各々のタグの1個
のビットだけが、目標タグの選択されたビットと比較さ
れる。例えば、最初のクロックの間、各々のタグのビッ
ト0が目標タグのビット0と比較される。ビット0で符
合があれば、次のクロックの間、各々のタグのビット1
が目標タグのビット1と比較される。目標タグの特定の
ビットで符合せずが表示されるまで、又は目標タグの最
後のビットが比較されるまで、これが続けられる。
【0025】タグ比較回路25は、センスアンプ25
a、XNORゲート25b、アンド・ゲート25c、フ
リップフロップ25d及びスイッチ25eで構成され、
その各々の1つずつがタグ・メモリ20の各行に関連し
ている。タグ符合検査過程の最初のサイクルの間、タグ
・メモリ20の第1列の多重化トランジスタ16が、そ
れに関連するビット選択線17によってターンオンされ
る。対応する記憶ビットを示す各々の読取線15の信号
がセンスアンプ25aによって増幅されて対応する論理
1又は0になる。各々の行で、XNORゲート25b
は、タグ・メモリ20から読取線15に出る行入力信号
に対する入力と、タグ・ビット選択器22からのタグ・
ビット出力に対する別の入力とを持っている。それがこ
れら2つの信号を比較し、最初のサイクルでは、比較は
タグ・メモリ20の第1列にあるビットとタグの最初の
ビットとの比較になる。この時、各々の行で、アンド・
ゲート25cがフリップフロップ25dに記憶する為、
比較結果を入力する。フリップフロップ25dが夫々
“1”に初期設定されて、アンド・ゲート25cを付能
するが、一旦“0”(符合せず)がフリップフロップ2
5dに記憶されると、対応するアンド・ゲート25cが
不作動にされ、“0”(符合せず)を出力する。その
後、次のサイクルでは、同じように、目標タグの次のビ
ットが次の列のビットと比較される。フリップフロップ
25dが依然として“1”である(符合せずがまだ出て
いない)各々の行では、この次の比較の結果がその行の
フリップフロップ25dに記憶される。
【0026】各々の行で、目標タグのビットとセル10
の出力との間で符合せずがXNORゲート15bで発生
すると、XNOR25bがアンド・ゲート25cに対し
て論理“0”を出力し、この時、アンド・ゲートもフリ
ッププロップ25dに対して“0”を出力しなければな
らない。一旦フリップフロップ25dが“0”を受取る
と、それはアンド・ゲート25cを“0”だけを出力す
る状態にロックする。従って、何れかの行で1個のビッ
トの符合せずが発生したことだけにより、その行での目
標タグの符合せずが決定される。目標タグのビットは逐
次的に比較されるが、各行のアンド・ゲート25cの出
力が、それまでのその行に対する累積的な比較結果(0
=符合せず、1=未だ符合せずなし)を示す。
【0027】比較サイクルが目標タグの相次ぐビット及
びタグ・メモリ20の相次ぐ列に対して繰返される。あ
る列の全てのアンド・ゲート25cが符合せずを表示す
る場合、比較過程を打切ることができるが、そうでなけ
れば、目標タグの全てのビットに対して続けられる。プ
リチャージ線25fがPMOSトランジスタ25gを介
してVccボルトにプリチャージされる。線25fが電
荷を保持する場合、即ち、ある列の全部のアンド・ゲー
ト25cが符合せずを表示する場合、スイッチ25eが
その時オフになり、インバータ25hが“0”の「ヒッ
トなし」信号を発生する。しかし、何れかのスイッチ2
5eが、符合がある、即ち、アンド・ゲート25cの出
力が“1”(Vccボルト)である行にある場合、線2
5fがアースされる。線25fがある行の符合によって
アースされる場合、インバータ25hが“1”の「ヒッ
ト」信号を発生する。
【0028】前に述べたように、図6の実施例では、タ
グ・メモリ20のワード線11がデータ・キャッシュ2
9のそれに対して共通である。各々の行で、ワード線付
能アンド・ゲート27aを使って、その行に対するタグ
に関連したキャッシュ・データをアクセスすることがで
きる。具体的に言うと、タグ比較過程によって、或るタ
グが符合になった場合、そのタグの行のアンド・ゲート
25cが、その行にあるアンド・ゲート27aの一方の
入力に“1”を出力する。全てのアンド・ゲート27a
の他方の入力にある「付能」信号を“1”にセットする
ことにより、符合を持つ行にあるアンド・ゲート27a
だけが“1”(ワード線付能信号)を発生することがで
きる。この信号が対応するバッファ増幅器27bを介し
てデータ・キャッシュ29に伝達され、正しいアドレス
にあるデータをデータ・キャッシュ29から読み出すこ
とができる。読出し線21cを介して制御装置21から
送出された「読出し」信号が、データ・キャッシュ29
からデータを検索するタイミングを決定する。
【0029】この発明のタグ比較過程の各サイクルは、
目標タグの1つのビットをタグ・メモリ20に記憶され
ている各タグの1つのビットと同時に比較する。この比
較が、目標タグの相次ぐビットに対して繰返される。こ
の為、目標タグについて言うと、この過程は「逐次タグ
比較過程」であり、従来のCAMの並列タグ比較過程と
対照的である。従来のCAMに比べて、同時比較の数が
減り、電流スパイクが平滑される。
【0030】ヒット又はミスを検出するのに必要な時間
は、精々、目標タグの各ビットを比較する時間に等し
い。しかし、各行がそれ自身のタグ比較回路25を持っ
ている為、キャッシュ項目の数に関係なく、この時間は
同じままである。この特徴は、図10について後で説明
するATM(非同期転送モード)スイッチにCAM 3
0を用いる場合に重要である。
【0031】図6の実施例では、ワード線11及びビッ
ト線12は随意選択であり、セル10の1ビットの内容
を書込む為に普通のように使われる。これによって、タ
グ・メモリ20にあるタグを変更することができる。セ
ル10に書込むには、そのビット選択線17を不作動に
する(低にする)。こうするとその多重化トランジスタ
16が書込みの妨げをしない。他の実施例では、セル内
容を永久的に記憶することができ、ワード線11及びビ
ット線12の必要が無くなる。同様に、図6にははっき
りと示してないが、データ・キャッシュ29は、ワード
線及びビット線によって読取可能又は書込み可能であっ
ても無くても良い。
【0032】図6の実施例では、タグ・メモリ20が、
図2及び3のセル10、10aと同じく、ビット選択線
17を持っている。多重化トランジスタ16がこれらの
ビット選択線17によって制御される。しかし、他の実
施例では、多重化トランジスタ16をビット線12によ
って制御することができ、その場合これは普通のメモリ
書込みに使われるビット線であるばかりでなくタグ比較
に使われるビット選択線でもある。この場合、読取線1
5は書込みの間、「高」にプリチャージする。
【0033】標準的な数の列に構成したタグ・メモリ2
0は、「短い」目標タグに対処するように容易にプログ
ラムすることができる。例えば、タグ・メモリが16ビ
ットの目標タグ用に構成されているが、実際の目標タグ
が僅か8ビットである場合、これらの列に対するビット
選択線17だけを作動する必要があり、8回の比較サイ
クルしか実施する必要が無い。これは、制御装置21に
適当なマスク又はその他の回路を用いることによって実
現することができる。このプログラム能力は、工場で用
いる又は現場で(ユーザが)用いるプログラム能力とし
て実施することができる。タグ長についてのこのプログ
ラム能力を利用して、短いタグに対して、電力及び符合
検査時間を節約することができる。
【0034】キャッシュの空の行に関連するタグ比較回
路25の部品を不作動にすることにより、使用電力及び
符合検査時間を更に節約することができる。例えば、タ
グ・メモリ20はキャッシュの1Kの行に対するタグを
記憶することができるとする。しかし、タグ・メモリ2
0がいっぱいでなければ、使われていない行に関連する
センスアンプ25a及び論理素子25b‐25eを不作
動にすることができる。
【0035】実際に記憶されているタグに対してだけタ
グ比較をできるようにする具体的な構成として、タグ・
メモリを部分に仕切ることができる。図7は、この発明
に従って仕切ったタグ・メモリ40を示す。各々の仕切
りはタグ・セル10(又は10a)で構成される。図7
の実施例では、タグメモリ40はビット選択線を使わな
い。その代り、前に述べたようにこのメモリはビット線
12を使って、自分のセルの多重化スイッチを制御す
る。タグ・メモリ20のようにビット選択線を使うタグ
・メモリは、タグ・メモリ40と同じように仕切ること
ができる。
【0036】図7の例では、タグ・メモリ40が4つの
部分S1、S2、S3及びS4に仕切られている。1つ
の部分が常に使われ、今の場合は、それが一番上側の部
分S1と仮定する。
【0037】タグ・メモリ40のビット線12がビット
線制御装置31によって制御される。タグ・メモリ40
が、タグ・メモリ20と同じようなビット選択線を持つ
場合、ビット線制御装置31は図3の制御装置21のよ
うにすることができる。しかし、ビット選択線を使わな
いタグ・メモリ40では、ビット線制御装置31がビッ
ト線12だけを制御する。
【0038】タグ・メモリ40の他の部分(S2、S3
及びS4)は、部分選択線35のSEC_SELによっ
て作動された場合にだけ使われる。各々の部分に関連す
るレジスタ34が、SEC_SEL線35の高又は低状
態を決定する。これらの各々の部分は関連したビット線
スイッチ・ブロック32を持ち、これがその部分に対す
るビット線12を付能するかどうかを決定する。
【0039】図8及び9は、ビット線スイッチ・ブロッ
ク32に使うのに適した通過ゲート80及び中継器90
を夫々示す。通過ゲート80を使う利点は、その使い方
が簡単であることである。中継器90を使うと、ビット
線12の抵抗負荷が一層小さくなると共に、書込み動作
に対する悪影響の惧れが小さくなる。中継器90を用い
ると、ビット線信号が部分毎に再生され、書込みが実施
できるように保証する。
【0040】通過ゲート80は2つのNMOSトランジ
スタ41及び2つのPMOSトランジスタ42を有す
る。各々のトランジスタ41、42のゲートが図7のS
EC_SEL線35のような選択線43に対して直列に
接続されている。NMOSトランジスタ41のドレイン
及びソースが夫々BL及びBL(バー)に接続される。
BL及びBL(バー)は図7のビット線17である。P
MOSトランジスタ42のドレインがVccに接続さ
れ、そのソースがNMOSトランジスタ41のソース出
力に接続される。選択線43が「高」である時、NMO
Sトランジスタ41はBL及びBL(バー)に電流が流
れることを許す。選択線が「低」である時、BL及びB
L(バー)のドレイン節がVccに引張られ、ビット線
12は不作動である。
【0041】中継器90は2つのインバータ51及び2
つのナンド・ゲート52を有する。選択線53が各々の
ナンド・ゲート52の入力に接続される。BL及びBL
(バー)線(ビット線12)が夫々異なるインバータ5
1の入力に接続される。各々のインバータ51の出力が
ナンド・ゲート52に対する入力になる。選択線53が
高である時、ナンド・ゲート52がインバータとして作
用し、インバータ51に対する信号はナンド・ゲート5
2の信号出力と同じである。選択線53が低である時、
ナンド・ゲート52の出力が高であり、BL及びBL
(バー)線はVccになる。
【0042】図7に戻って言うと、仕切られたタグ・メ
モリ40の各々の部分に対し、SEC_SEL信号がナ
ンド・ゲート36にも送出され、そこでその部分の出力
とナンドされ、SEC_MATCH(バー)信号を形成
する。ある部分が作動されていない場合、SEC_MA
TCH(バー)信号は高にセットされる。SEC_MA
TCH(バー)信号がアンド・ゲート37に送出され、
大域符合信号GMATCH(バー)を形成する。
【0043】図10は、各々がこの発明によるCAM
65を持つ多数のポート・プロセッサ61を持つATM
(非同期転送モード)スイッチ60を示す。ATMスイ
ッチ60はデータ通信システムの一部分であり、このシ
ステムでコンピュータ又は他の送信局及び受信局(この
明細書ではネットワークの「節」と呼ぶ)がデータを交
換する。後で説明するが、スイッチ60の全般的な動作
は、ソース節からATMセルを受取り、それを適正な着
信節に配送する。
【0044】各々のATMセルは53バイトのデータ・
ブロックで、5バイトのヘッダ及び48バイトの情報の
ペイロードで構成される。種々の節からのATMセルが
1つの流れとして多重化される。この多重化は非同期転
送を介して行われる。即ち、セルは、送信するデータが
有る時にだけ送信され、時分割多重化に於けるようにダ
ミーバイトの必要が無い。更に、ATM交換はコネクシ
ョン・オリエンテッドであり、データ転送を行う前に、
任意の2つの節の間の接続を設定しなければならない。
この接続過程により、伝送通路及び着信節が定められ、
これによってATMセルのヘッダを使って、セルを必要
な通路で配送することができる。
【0045】各々のATMセルが入力ポート・プロセッ
サ61で受信され、スイッチ60によって適正な出力ポ
ート・プロセッサ61に配送される。各々のセルの長さ
が一定であり、各々のセルのヘッダに於ける情報の位置
が分かっているので、ハードウェアを使うことによって
交換を行うことができる。この為、スイッチ60は論理
回路を用いて実現することができる。この回路は、物理
レイヤ及びATMレイヤのプロトコルに従って成され
る。物理レイヤ・プロトコルは、ATM交換では具体的
に定義されていないが、ATMは他のネットワーク・プ
ロトコルで定義された物理レイヤに頼っている。これに
よってATMを広い範囲の物理メディアによって支援す
ることができる。ATMレイヤは、物理レイヤと「トッ
プ」ATMレイヤ、即ちATM適応レイヤとの間のイン
ターフェースである。一般的に、スイッチ60は、入来
セルをどこに配送するかを決定し、個々の接続からのそ
れらを単一セル・ストリームに配置することによりセル
を多重化する。
【0046】ATM交換では、CAM 65に記憶され
ているタグは、ATM基準に従ってVPI(バーチャル
・パス識別子)及びVCI(バーチャル・チャンネル識
別子)に割当てられた完全なバイト数に対応する寸法を
持つことができる。この代りに、タグは、特定のスイッ
チ60に対して、どのくらい多くのパス及びパスのチャ
ンネルが作用しているかに応じて、その一部分である寸
法を持つことができる。
【0047】ポート・プロセッサ61の他に、スイッチ
60はスイッチング・ファブリック62及びスイッチ制
御装置63を有する。ATMセルは任意の1つのポート
・プロセッサ61からスイッチ60に入り、同じ又は別
のポート・プロセッサ61でスイッチ60から出ていく
ことができる。スイッチング・ファブリック62が、入
力ポートと出力ポートのマッピングにより、ポート・プ
ロセッサ61の間の交換を取扱う。この交換過程はスイ
ッチ制御装置63の制御の下に実施される。
【0048】各々のポート・プロセッサ61はポート制
御装置64を持ち、これは状態管理機構又はその他の論
理回路であって良い。ポート制御装置64が入来セルか
らセル・ヘッダ情報(目標タグ)を抽出し、目標タグを
CAM 65に送出す。CAM 65はタグ・メモリ6
5a及びデータ・キャッシュ65bで構成され、前に図
6について説明したCAM 30に相当する構成及び動
作を有する。図6の制御装置21の作用をポート制御装
置64で扱うことができる。
【0049】ポート制御装置64が目標タグをタグ・メ
モリ65aへ送出す。この目標タグは前に述べたように
して、タグ・メモリ65aに記憶されているタグと逐次
的に比較される。「ヒット」がある時、データ・キャッ
シュ65bからの新しいアドレスがポート制御装置64
へ送出される。この新しいアドレスは、セルがスイッチ
60から出ていく時の正しいポート・プロセッサ61を
示す。ポート制御装置64はセルにある古いアドレスを
新しいアドレスに置換え、セルをスイッチング・ファブ
リック62に送出す。この時、スイッチング・ファブリ
ック62はセルを適正な出力ポート・プロセッサ61へ
配送する。「ヒット」が無い時、スイッチ60はATM
プロトコルに従って動作する。このプロトコルにより、
セルを単に捨てることができる。
【0050】図11はこの発明の別の用途としての、こ
の発明によるCAM 83を持つ汎用コンピュータ80
を示す。CAM 83を別として、コンピュータ80は
普通の汎用パーソナル・コンピュータ又はワークステー
ションと同様に構成することができる。プロセッサ82
が機械で実行し得る命令に従って、命令及びデータの為
に主メモリ81(典型的にはランダム・アクセスメモ
リ)をアクセスするようにプログラムされる。このアク
セスは普通のアドレス、データ及び制御バスを介する。
【0051】データを持ってくる動作を更に促進する
為、CAM 83は、プロセッサ82が発した目標タグ
とCAM 83に記憶されているタグとの符合検査を試
みる。CAM 83は図6のCAM 30と同じように
構成されていて、同じように動作して、目標タグをタグ
・メモリ83bに記憶されているタグと逐次的に符合検
査する。CAM 83は制御装置83aを持ち、これは
状態管理機構又はその他の論理回路であって良く、それ
が、制御線81aを介して送出される制御信号により、
プロセッサ81の指示の下に動作する。目標タグは、ア
ドレス・バス83dを介してタグ・メモリ83bが受信
する。
【0052】タグ符合検査過程により、ヒット線83f
に2進「ヒット」信号が出るが、その論理レベルはヒッ
ト又はヒット無しの何れかを示す。ヒットが示された場
合、CAM 83が符合したタグに対応するデータをデ
ータ・バス83eを介してプロセッサ81へ送出す。コ
ンピュータ80に使う場合、CAM 83は目標タグに
符合するタグを1つより多く記憶していることがあり、
その為、1つの目標タグ当り、1つより多くのヒットが
あることがある。ヒット無しであれば、プロセッサ81
は、どんなプログラミングであっても、現在実行されて
いるものに対してメッセージを送出すというような、何
らかの適切な動作をとるようにプログラムすることがで
きる。
【0053】ATMスイッチ60及びコンピュータ80
の両方に対し、前に図6について説明したように、タグ
・メモリ65a(又は83b)にある各々のタグは、デ
ータ・キャッシュ(65b)(又は83c)にある関連
するキャッシュ・データと同じワード線に記憶して、ヒ
ット後のキャッシュ・データのアクセスを容易にするこ
とができる。
【0054】この為、この発明には、タグ及び各々のタ
グに関連するデータを記憶していて、タグを目標タグと
逐次的に比較する内容アドレス・メモリ(CAM)とし
て、各々のタグに関連するデータを記憶するように作用
し得るデータ・キャッシュと、タグ・セルの行及び列を
持ち、各々のタグ・セルがタグのビットを記憶するよう
に作用し得ると共に、ビットが表すセル出力信号を受取
る多重化スイッチを持つタグ・メモリと、各々のビット
選択線が1つの列のセルを接続すると共に、これらのセ
ルの多重化スイッチを作動するように作用し得る多数の
ビット選択線と、各々の読取線が1行のセルを接続する
と共にそのセルに関連した多重化スイッチを介してその
行のセルからのセル出力信号を受取るように作用し得る
多数の読取線と、各々の読取線を介してセル出力信号を
受取ると共に、各々の読取線のセル出力信号を目標タグ
のビットを表す信号と比較するように作用し得るタグ比
較回路と、目標タグのビットを逐次的にタグ比較回路に
送出すように作用し得る目標タグ線と、タグ比較回路に
よって行われた比較の結果を表示するように作用し得る
ヒット線と、タグが目標タグと符合した時、データ・キ
ャッシュからデータを出力するように作用し得るデータ
・バスと、制御信号を受取る制御入力を持っていて、ビ
ット選択線を作動して、符合したタグに関連するデータ
を検索することができるように、データ・キャッシュを
作動する為の読出し信号を発生するように作用し得る制
御装置とを有する内容アドレス・メモリ(CAM)が含
まれる。
【0055】更に、各々の多重化スイッチが1個のトラ
ンジスタで構成されている、上に述べたようなCAMが
含まれる。
【0056】更に、各々の多重化スイッチが2つのトラ
ンジスタで構成され、第1のトランジスタが第2のトラ
ンジスタに対して高入力インピーダンスを呈するよう
な、上に述べたCAMが含まれる。
【0057】更に、目標タグを記憶し、目標タグのビッ
トを逐次的に選択し、これらのビットをタグ比較回路へ
送出すように作用し得るタグ・ビット選択器を有する、
上に述べたCAMが含まれる。
【0058】更に、ビット選択線に関連していて、プロ
グラムされた数のビット選択線を作動するように作用し
得る論理回路を有する、上に述べたCAMが含まれる。
【0059】更に、タグ比較回路が、各々の読取線の出
力にある直列接続されたXNORゲート、アンド・ゲー
ト及びフリップフロップで構成されるような、上に述べ
たCAMが含まれる。
【0060】更に、タグ・メモリが多数のワード線を持
ち、各々のワード線が1行のセルを接続し、更にタグ・
メモリが多数のビット線を持ち、各々のビット線が1列
のセルを接続して、ワード線及びビット線はセルに書込
む為のセルを選択するように作用し得る、上に述べたC
AMが含まれる。
【0061】更に、ビット選択線が、セルに書込む為の
セルを選択するように更に作用し得るビット線である、
上に述べたCAMが含まれる。
【0062】更に、データ・キャッシュがデータの行を
記憶し、各々の行に関連したワード線を持っていて、タ
グ・メモリのワード線が夫々、そのメモリ・セルがその
行にあるタグに対するデータを記憶しているデータ・キ
ャッシュのワード線に接続される、上に述べたCAMが
含まれる。
【0063】更に、論理“0”又は論理“1”信号を夫
々表す低及び高電圧と共に使うCAMディジタル・メモ
リとして、L行及び(M+N)列に配置されていて、各
行がM個のタグ・セル及びL個のデータ・メモリ・セル
を持ち、各々のタグ・セルが 記憶された“0”又は“1”信号を示すタグ・ビット
出力を持つメモリ・セル、試験端子、及びビット選
択線が“1”信号を受取った時だけ、試験端子をタグ・
ビット出力に結合するビット選択入力を持つ常開多重化
スイッチを持つメモリ・アレイと、その行にある各々の
タグ・セルの試験端子に結合された、各行に対する読取
線と、その列にある各々のタグ・セルのビット選択端子
に結合されて、ビット選択線の“1”信号を介してその
列の多重化スイッチを閉じる、各列に対するビット選択
線と、制御信号を受取る制御入力を持っていて、メモリ
・アレイ及びビット選択線に結合され、「比較」及び
「読出し」信号を発生する制御装置と、Mビット目標
タグ信号を受取るタグ入力、及び制御装置に結合さ
れ、「比較」信号に応答して、目標タグ信号のビットを
直列にタグ・ビット出力に出力するタグ・ビット出力を
持つタグ・ビット選択器と、タグ・ビット選択器の出
力に結合されたタグ・ビット入力、何れも夫々の読取
線に結合されたL個の行入力、及び制御装置に結合さ
れ、「比較」信号に応答して、タグ・ビット入力に受取
った各々のタグ・ビットを相次いで、読取線から受取っ
た同じ列の全てのビットと同時に比較し、或る行のM個
のタグ・セル全部が目標タグと符合する場合に、ヒット
出力に“1”を発生するヒット出力を有するタグ比較回
路と、メモリ・アレイ、行比較器及び制御装置に結合さ
れていて、「読出し」信号に応答して、そのタグが目標
タグと符合した行の対応するN個のデータ・メモリ・セ
ルに記憶されたビットを出力するNビットデータ出力と
を有するCAMディジタル・メモリが含まれる。
【0064】更に、各々の多重化スイッチが1個のトラ
ンジスタで構成されている、上に述べたCAMが含まれ
る。
【0065】更に、各々の多重化スイッチが2つのトラ
ンジスタで構成され、第1のトランジスタが第2のトラ
ンジスタに対して高入力インピーダンスを呈する、上に
述べたCAMが含まれる。
【0066】更に、ビット選択線に関連していて、プロ
グラムされた数のビット選択線を作動するように作用し
得る論理回路を有する、上に述べたCAMが含まれる。
【0067】更に、タグ比較回路が各々の読取線の出力
に直列接続されたXNORゲート、アンド・ゲート及び
フリップフロップで構成される、上に述べたCAMが含
まれる。
【0068】更に、メモリ・アレイが更に多数のワード
線を持ち、各々のワード線が1行のセルを接続し、更に
多数のビット線を持ち、各々のビット線が1列のセルを
接続して、ワード線及びビット線がセルに書込む為のセ
ルを選択するように作用し得る、上に述べたCAMが含
まれる。
【0069】更に、ビット選択線が、セルに書込む為の
セルを選択するように更に作用し得るビット線である、
上に述べたCAMが含まれる。
【0070】更に、目標タグを内容アドレス・メモリ
(CAM)のタグ・メモリ部分に記憶されているタグと
逐次的に比較する方法として、目標アドレスのビットを
選択し、タグ・メモリの列を選択して、選択された列を
定め、選択された列にある各々のセルに対し、その列に
ある各セルの内容を表す信号をセルに関連した読取線に
印加し、読取線の各々の信号を目標アドレスから選択さ
れたビットを表す信号と比較し、比較する工程の結果を
各々の読取線の出力として供給し、タグの各ビット及び
タグ・メモリの相次ぐ列に対して、上に述べた工程を繰
返し、比較する工程の結果を示すヒット信号を発生する
工程を含む方法が含まれる。
【0071】更に、選択する工程が、各列に関連するビ
ット選択線を作動することによって行われる、上に述べ
た方法が含まれる。
【0072】更に、選択する工程が各列に関連するビッ
ト線を作動することによって行われる、上に述べた方法
が含まれる。
【0073】更に、比較する工程に応答して、CAMの
データ・メモリ部分をアクセスして、符合したタグと同
じ行にあるデータ・メモリの行をアクセスする工程を含
む、上に述べた方法が含まれる。
【0074】更に、タグ・メモリを仕切って、印加する
工程が選択された仕切りの行に対してだけ行われる工程
を含む、上に述べた方法が含まれる。
【0075】更に、タグ及び各々のタグに関連するデー
タを記憶し、タグを目標タグと比較する内容アドレス・
メモリ(CAM)を用いる方法として、CAMのタグ・
メモリ部分を部分に仕切り、タグ・メモリはタグのビッ
トを夫々記憶するタグ・セルを持ち、タグ・メモリはタ
グ・セルの行及び列の形に配置されており、目標アドレ
スを受取り、タグを記憶していない任意の部分を不作動
にし、こうしてタグ・メモリの1つ又は更に多くの付能
された部分を定め、目標タグのビットを、タグ・メモリ
のメモリ・セルの外部にあるタグ比較回路を使って、付
能された部分の列に記憶されたタグのビットと逐次的に
比較する工程を含む方法が含まれる。
【0076】更に、比較する工程が、各列に関連するビ
ット選択線を作動することによって実施され、その列に
ある各セルに対する出力が読取線に発生されるようにす
る、上に述べた方法が含まれる。
【0077】更に、比較する工程が、各列に関連するビ
ット線を作動することによって実施され、その列にある
各セルに対する出力が読取線に発生されるようにする、
上に述べた方法が含まれる。
【0078】更に、比較する工程に応答して、CAMの
データ・メモリ部分をアクセスする工程を含んでいて、
符合したタグと同じ行にあるデータ・メモリの行がアク
セスされる、上に述べた方法が含まれる。
【0079】更に、各セルがヘッダ・データ及びペイロ
ード・データを持つようなATMセルを配送する非同期
転送モード(ATM)スイッチとして、各々のポート・
プロセッサがポート制御装置、入力ポート、出力ポー
ト、及び内容アドレス・メモリ(CAM)を持ち、ポー
ト・プロセッサがヘッダ・データから目標タグを抽出す
るように作用し得ると共に、CAMがタグ・セルの行及
び列を持つタグ・メモリ及びデータ・キャッシュを持
ち、タグ・セルの外部にあるタグ比較回路を用いて、C
AMが目標タグのビットをタグ・セルに記憶されたタグ
のビットと逐次的に比較するように作用し得る多数のポ
ート・プロセッサと、入力ポート・プロセッサからのセ
ルを出力ポート・プロセッサに切替えるように作用し得
るスイッチング・ファブリックと、ポート・プロセッサ
に対する制御信号を送出すスイッチ制御装置とを有する
非同期転送モード(ATM)スイッチが含まれる。
【0080】更に、各々のタグ・セルが、ビットを表す
セル出力信号を受取る多重化スイッチを持ち、タグ・メ
モリが各々のビット選択線が1列のセルを接続すると
共にこれらのセルの多重化スイッチを作動するように作
用し得る多数のビット選択線、各々の読取線が1行の
セルを接続し、その行のセルから、このセルに関連した
多重化スイッチを介してセル出力信号を受取るように作
用し得る多数の読取線、各々の読取線を介してセル出
力信号を受取り、各々の読取線のセル出力信号を目標タ
グのビットを表す信号と比較するように作用し得るタグ
比較回路、目標タグのビットをタグ比較回路に逐次的
に送出すように作用し得る目標タグ線、タグ比較回路
によって行われた比較の結果を示すように作用し得るヒ
ット線、及びタグが目標タグと符合した時にデータ・
キャッシュからデータを出力するように作用し得るデー
タ・バスを有する、上に述べたATMスイッチが含まれ
る。
【0081】更に、データ・アクセスを容易にする為に
キャッシュ動作を用いるコンピュータとして、コンピュ
ータ・プログラムを表す命令を実行するように作用し得
るプロセッサと、前記プロセッサと連絡していて、プロ
セッサによってアクセスされた命令及びデータを記憶す
るように作用し得る主メモリと、前記プロセッサと連絡
していて、プロセッサから目標タグを受取るように作用
し得る内容アドレス・メモリ(CAM)とを有し、CA
Mは、タグ・セルの行及び列を持つタグ・メモリ及びデ
ータ・キャッシュを持ち、CAMは、メモリ・セルの外
部にあるタグ比較回路を用いて、目標タグのビットをメ
モリ・セルに記憶されたタグのビットと逐次的に比較す
るように作用し得ると共に、比較結果が符合であれば、
データ・キャッシュからデータを送出すように作用し得
るコンピュータが含まれる。
【0082】更に、各々のタグ・セルがビットを表すセ
ル出力信号を受取る多重化スイッチを持ち、タグ・メモ
リが各々のビット選択線が1列のセルを接続すると共
に、これらのセルの多重化スイッチを作動するように作
用し得る多数のビット選択線、各々の読取線が1行の
セルを接続すると共に、その行のセルから、そのセルに
関連した多重化スイッチを介してセル出力信号を受取る
ように作用し得る多数の読取線、各々の読取線のセル
出力信号を受取り、各々の読取線のセル出力信号を目標
タグのビットを表す信号と比較するように作用し得るタ
グ比較回路、目標タグのビットを逐次的にタグ比較回
路へ送出すように作用し得る目標タグ線、タグ比較回
路によって行われた比較の結果を示すように作用し得る
ヒット線、タグが目標タグと符合した時、データ・キ
ャッシュからデータを出力するように作用し得るデータ
・バス、及び制御信号を受取る制御入力を持っていて
ビット選択線を作動して、符合したタグに関連するデー
タをアクセスすることができるように、データ・キャッ
シュを作動する読出し信号を発生するように作用し得る
制御装置を有する、上に述べたコンピュータが含まれ
る。
【0083】
【他の実施例】この発明を特定の実施例について説明し
たが、この説明はこの発明を制約する意味に解してはな
らない。当業者には、ここに開示した実施例の種々の変
更並びにその他の実施例が容易に考えられよう。従っ
て、この発明の真の範囲内に含まれる全ての変更が、特
許請求の範囲によって包括されることを承知されたい。
【0084】以上の説明に関し、更に以下の項目を開示
する。 (1) タグ及び各々のタグに関連したデータを記憶
し、逐次的にタグを目標タグと比較する内容アドレス・
メモリ(CAM)に於いて、各々のタグに関連するデー
タを記憶するように作用し得るデータ・キャッシュと、
タグ・セルの行及び列を持っていて、各々のタグ・セル
がタグのビットを記憶するように作用し得ると共に、ビ
ットを表すセル出力信号を受取る多重化スイッチを持つ
タグ・メモリと、各々のビット選択線が1 つの列のセル
を接続していて、これらのセルの多重化スイッチを作動
するように作用し得る多数のビット選択線と、各々の読
取線が1 行のセルを接続していて、その行のセルからの
セル出力信号をこのセルに関連した多重化スイッチを介
して受取るように作用し得る多数の読取線と、各々の読
取線を介してセル出力信号を受取り、各々の読取線のセ
ル出力信号を目標タグのビットを表す信号と比較するよ
うに作用し得るタグ比較回路と、目標タグのビットを逐
次的にタグ比較回路に送出すように作用し得る目標タグ
線と、タグ比較回路によって行われた比較の結果を表示
するように作用し得るヒット線と、タグが目標タグと符
合した時に、データ・キャッシュからのデータを出力す
るように作用し得るデータ・バスと、制御信号を受取る
制御入力を持っていて、ビット選択線を作動すると共
に、符合したタグに関連するデータを検索することがで
きるように、データ・キャッシュを作動する読出し信号
を発生するように作用し得る制御装置とを有する内容ア
ドレス・メモリ。
【0085】(2) 第1項に記載の内容アドレス・メ
モリに於いて、各々の多重化スイッチが単一トランジス
タで構成されている内容アドレス・メモリ。 (3) 第1項に記載の内容アドレス・メモリに於い
て、各々の多重化スイッチが2つのトランジスタで構成
され、第1のトランジスタが第2のトランジスタに対し
て高入力インピーダンスを呈する内容アドレス・メモ
リ。 (4) 第1 項に記載の内容アドレス・メモリに於い
て、目標タグを記憶し、前記目標タグのビットを逐次的
に選択し、これらのビットをタグ比較回路に送出すよう
に作用し得るタグ・ビット選択器を有する内容アドレス
・メモリ。 (5) 第1 項に記載の内容アドレス・メモリに於い
て、ビット選択線に関連していて、プログラムされた数
のビット選択線を作動するように作用し得る論理回路を
有する内容アドレス・メモリ。
【0086】(6) 論理“0”又は“1”信号を夫々
表す低及び高電圧と共に用いるCAMディジタル・メモ
リに於いて、L行及び(M+N)列に配置されていて、
各行がM個のタグ・セル及びN個のデータ・メモリセル
を持ち、各々のタグ・セルが記憶されている“0”又
は“1”信号として表されるタグ・ビット出力を持つメ
モリ・セル、試験端子、及びビット選択信号が
“1”信号を受取る時だけ、試験端子をタグ・ビット出
力に結合するビット選択入力を持つ常開多重化スイッチ
を持つメモリ・アレイと、その行にある各々のタグ・セ
ルの試験端子に結合されている、各行に対する読取線
と、その列にある各々のタグ・セルのビット選択端子に
結合されていて、前記ビット選択線の“1”信号を通じ
て、その列の多重化スイッチを閉じる、各列に対するビ
ット選択線と、制御信号を受取る制御入力を持ってい
て、前記メモリ・アレイ及びビット選択線に結合され、
「比較」及び「読出し」信号を発生する制御装置と、 Mビット目標タグ信号を受取るタグ入力、及び前記
制御装置に結合されたタグ・ビット出力で、前記「比
較」信号に応答して、目標タグ信号のビットを前記タグ
・ビット出力に直列出力する前記タグ・ビット出力を持
つタグ・ビット選択器と、 タグ・ビット選択器の出力に結合されたタグ・ビット
入力、各々夫々の読取線に結合されたL行入力、及び
制御装置に結合されたヒット出力で、「比較」信号に
応答して、前記タグ・ビット入力に受取った各々のタグ
・ビットを相次いで、前記読取線から受取った同じ列の
全てのビットと同時に比較し、ある行のM個のタグ・セ
ルの全部が目標タグに符合する場合に、前記ヒット出力
に“1”を発生する前記ヒット出力を持つタグ比較回路
と、前記メモリ・アレイ、行比較器及び制御装置に結合
されていて、「読出し」信号に応答して、そのタグが目
標タグと符合する行の対応するN個のデータ・メモリ・
セルに記憶されているビットを出力するNビット・デー
タ出力とを有するCAMディジタル・メモリ。 (7) 目標タグを内容アドレス・メモリ(CAM)の
タグ・メモリ部分に記憶されているタグと逐次的に比較
する方法に於いて、目標アドレスのビットを選択し、タ
グ・メモリの列を選択して、選択された列を定め、選択
された列にある各セルに対し、その列の各セルの内容を
表す信号を前記セルに関連する読取線に印加し、読取線
の各信号を目標アドレスから選択されたビットを表す信
号と比較し、比較する工程の結果を各々の読取線の出力
として与え、タグの各ビット並びにタグ・メモリの相次
ぐ列に対して上に述べた工程を繰返し、比較する工程の
結果を示すヒット信号を発生する工程を含む方法。
【0087】(8) タグ及び各々のタグに関連するデ
ータを記憶し、タグを目標タグと比較する内容アドレス
・メモリ(CAM)を用いる方法に於いて、CAMのタ
グ・メモリ部分を仕切り、前記タグ・メモリは夫々タグ
のビットを記憶するタグ・セルを持ち、前記タグ・メモ
リはタグ・セルの行及び列の形に配置されており、目標
アドレスを受取り、タグを記憶していない任意の部分を
不作動にして、こうしてタグ・メモリの1つ又は更に多
くの付能された部分を定め、タグ・メモリのメモリ・セ
ルの外部にあるタグ比較回路を用いて、目標タグのビッ
トを逐次的に付能された部分の列に記憶されているタグ
のビットと比較する工程を含む方法。
【0088】(9) 各セルがヘッダ・データ及びペイ
ロード・データを持っているようなATMセルのルート
を定める非同期転送モード(ATM)スイッチに於い
て、幾つかのポート・プロセッサを有し、各々のポート
・プロセッサはポート制御装置、入力ポート、出力ポー
ト及び内容アドレス・メモリ(CAM)を持ち、前記ポ
ート・プロセッサはヘッダ・データから目標タグを抽出
するように作用可能であり、前記CAMはタグ・セルの
行及び列を持つタグ・メモリ及びデータ・キャッシュを
持っており、前記CAMは、タグ・セルの外部にあるタ
グ比較回路を用いて、目標タグのビットを逐次的にタグ
・セルに記憶されているタグのビットと比較するように
作用可能であり、更に、入力ポート・プロセッサから出
力ポート・プロセッサへセルを切替えるように作用し得
るスイッチング・ファブリックと、前記ポート・プロセ
ッサに制御信号を送出すスイッチ制御装置とを有する非
同期転送モード・スイッチ。
【0089】(10) キャッシュ動作を用いてデータ
・アクセスを容易にするコンピュータに於いて、コンピ
ュータ・プログラムを表す命令を実行するように作用し
得るプロセッサと、前記プロセッサと連絡していて、命
令並びに前記プロセッサによってアクセスされたデータ
を記憶するように作用し得る主メモリと、前記プロセッ
サと連絡していて、前記プロセッサから目標タグを受取
るように作用し得る内容アドレス・メモリ(CAM)と
を有し、前記CAMはタグ・セルの行及び列を持つタグ
・メモリ、及びデータ・キャッシュを持ち、前記CAM
は、メモリ・セルの外部にあるタグ比較回路を用いて、
目標タグのビットを逐次的にメモリ・セルに記憶されて
いるタグのビットと比較するように作用し得ると共に、
比較結果が符合する場合、データ・キャッシュからデー
タを送出すように作用し得るコンピュータ。
【0090】(11) 内容によってアドレスし得るメ
モリ(CAM)30及びCAMに記憶されたタグを目標
タグと逐次的に符合を検査する為にそれを使う方法。C
AM30が、タグ・セル10、10aで構成されたタグ
・メモリ20を持つと共に、データ・キャッシュを持っ
ている。各々のタグ・セル10、10aは、データ・ビ
ットを記憶する為に普通のRAMセルと同じように構成
されているが、その出力に多重化スイッチ16をも持っ
ている。多重化スイッチ16がタグ・セルの内容を表す
信号を読取線15に印加する。タグ・メモリ20の外部
にタグ比較回路25がある。各々の読取線で、タグ比較
回路25が選択された列にある各々のセル10、10a
からのビットを目標アドレスのビットと比較する。ある
列内のすべてのセル10、10aに対する符合無しによ
って終了しない限り、このサイクルが目標アドレスの全
部のビット及びタグ・メモリの相次ぐ列に対して繰返さ
れる。タグ比較回路25は「ヒット」出力信号を保持す
る論理回路を有する。
【図面の簡単な説明】
【図1】従来のCAM(内容によってアドレス可能なメ
モリ)を示す。
【図2】この発明によるCAMのタグ・セルを示す。
【図3】この発明によるタグ・セルの別の実施例を示
す。
【図4】夫々図2及び3のタグ・セルに対する時間線
図。
【図5】夫々図2及び3のタグ・セルに対する時間線
図。
【図6】この発明によるCAMを示す。
【図7】この発明に従って仕切ったCAMを示す。
【図8】図7のビット線スイッチを構成する為に使うこ
とができる通過ゲートを示す。
【図9】図7のビット線スイッチを構成する為に使うこ
とのできる中継器を示す。
【図10】この発明によるCAMを非同期転送モード
(ATM)スイッチに使うことができる様子を示す。
【図11】この発明によるCAMを汎用コンピュータに
使うことができる様子を示す。
【符号の説明】
10 タグ・セル 15 読取線 16 多重化スイッチ 20 タグ・メモリ 25 タグ比較回路 30 CAM

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 タグ及び各々のタグに関連したデータを
    記憶し、逐次的にタグを目標タグと比較する内容アドレ
    ス・メモリ(CAM)に於いて、 各々のタグに関連するデータを記憶するように作用し得
    るデータ・キャッシュと、 タグ・セルの行及び列を持っていて、各々のタグ・セル
    がタグのビットを記憶するように作用し得ると共に、ビ
    ットを表すセル出力信号を受取る多重化スイッチを持つ
    タグ・メモリと、 各々のビット選択線が1つの列のセルを接続していて、
    これらのセルの多重化スイッチを作動するように作用し
    得る多数のビット選択線と、 各々の読取線が1行のセルを接続していて、その行のセ
    ルからのセル出力信号をこのセルに関連した多重化スイ
    ッチを介して受取るように作用し得る多数の読取線と、 各々の読取線を介してセル出力信号を受取り、各々の読
    取線のセル出力信号を目標タグのビットを表す信号と比
    較するように作用し得るタグ比較回路と、 目標タグのビットを逐次的にタグ比較回路に送出すよう
    に作用し得る目標タグ線と、 タグ比較回路によって行われた比較の結果を表示するよ
    うに作用し得るヒット線と、 タグが目標タグと符合した時に、データ・キャッシュか
    らのデータを出力するように作用し得るデータ・バス
    と、 制御信号を受取る制御入力を持っていて、ビット選択線
    を作動すると共に、符合したタグに関連するデータを検
    索することができるように、データ・キャッシュを作動
    する読出し信号を発生するように作用し得る制御装置と
    を有する内容アドレス・メモリ。
  2. 【請求項2】 目標タグを内容アドレス・メモリ(CA
    M)のタグ・メモリ部分に記憶されているタグと逐次的
    に比較する方法に於いて、 目標アドレスのビットを選択し、 タグ・メモリの列を選択して、選択された列を定め、 選択された列にある各セルに対し、その列の各セルの内
    容を表す信号を前記セルに関連する読取線に印加し、 読取線の各信号を目標アドレスから選択されたビットを
    表す信号と比較し、 比較する工程の結果を各々の読取線の出力として与え、 タグの各ビット並びにタグ・メモリの相次ぐ列に対して
    上に述べた工程を繰返し、 比較する工程の結果を示すヒット信号を発生する工程を
    含む方法。
  3. 【請求項3】 キャッシュ動作を用いてデータ・アクセ
    スを容易にするコンピュータに於いて、 コンピュータ・プログラムを表す命令を実行するように
    作用し得るプロセッサと、 前記プロセッサと連絡していて、命令並びに前記プロセ
    ッサによってアクセスされたデータを記憶するように作
    用し得る主メモリと、前記プロセッサと連絡していて、
    前記プロセッサから目標タグを受取るように作用し得る
    内容アドレス・メモリ(CAM)とを有し、前記CAM
    はタグ・セルの行及び列を持つタグ・メモリ、及びデー
    タ・キャッシュを持ち、前記CAMは、メモリ・セルの
    外部にあるタグ比較回路を用いて、目標タグのビットを
    逐次的にメモリ・セルに記憶されているタグのビットと
    比較するように作用し得ると共に、比較結果が符合する
    場合、データ・キャッシュからデータを送出すように作
    用し得るコンピュータ。
JP10334683A 1997-11-26 1998-11-25 内容アドレス・メモリ Pending JPH11283378A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US6729397P 1997-11-26 1997-11-26
US067293 1997-11-26

Publications (1)

Publication Number Publication Date
JPH11283378A true JPH11283378A (ja) 1999-10-15

Family

ID=22075028

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10334683A Pending JPH11283378A (ja) 1997-11-26 1998-11-25 内容アドレス・メモリ

Country Status (4)

Country Link
US (1) US6215685B1 (ja)
EP (1) EP0920030B1 (ja)
JP (1) JPH11283378A (ja)
DE (1) DE69829539T2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003525512A (ja) * 2000-03-03 2003-08-26 モサイド・テクノロジーズ・インコーポレイテッド 改良された高密度メモリセル
US7174418B2 (en) 2003-04-30 2007-02-06 Hynix Semiconductor Inc. Semiconductor memory device for enhancing refresh operation in high speed data access
US7363460B2 (en) 2003-04-30 2008-04-22 Hynix Semiconductor Inc. Semiconductor memory device having tag block for reducing initialization time
CN100409203C (zh) * 2005-10-14 2008-08-06 杭州中天微系统有限公司 一种低功耗高速缓存的实现方法及其高速缓存器

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6639915B1 (en) * 1999-04-07 2003-10-28 Utstarcom, Inc. Method and apparatus for transmission of voice data in a network structure
AU2004201912B2 (en) * 1999-06-30 2006-12-07 Apptitude Acquisition Corporation A packet processor
US6421758B1 (en) * 1999-07-26 2002-07-16 International Business Machines Corporation Method and system for super-fast updating and reading of content addressable memory with a bypass circuit
US6493792B1 (en) * 2000-01-31 2002-12-10 Hewlett-Packard Company Mechanism for broadside reads of CAM structures
US6354547B1 (en) * 2000-04-05 2002-03-12 Avance Technologies, Inc. Attachment device
US6622204B1 (en) * 2000-09-14 2003-09-16 Cypress Semiconductor Corp. Content-addressable memory with cascaded match, read and write logic in a programmable logic device
US6510069B2 (en) * 2001-01-19 2003-01-21 Pien Chien Content addressable memory apparatus and method of operating the same
US7002979B1 (en) 2001-08-10 2006-02-21 Utstarcom, Inc. Voice data packet processing system
US7035250B2 (en) * 2001-08-13 2006-04-25 Utstarcom, Inc. System for organizing voice channel data for network transmission and/or reception
US6977948B1 (en) 2001-08-13 2005-12-20 Utstarcom, Inc. Jitter buffer state management system for data transmitted between synchronous and asynchronous data networks
US7142554B1 (en) 2001-08-13 2006-11-28 Utstarcom, Inc. Voice over network lookup method and apparatus
US7126957B1 (en) 2002-03-07 2006-10-24 Utstarcom, Inc. Media flow method for transferring real-time data between asynchronous and synchronous networks
US7073099B1 (en) * 2002-05-30 2006-07-04 Marvell International Ltd. Method and apparatus for improving memory operation and yield
US6820170B1 (en) * 2002-06-24 2004-11-16 Applied Micro Circuits Corporation Context based cache indexing
DE10261919A1 (de) * 2002-11-26 2004-06-17 Infineon Technologies Ag CAM (Content Adressable Memory) - Vorrichtung
US7019998B2 (en) * 2003-09-09 2006-03-28 Silicon Storage Technology, Inc. Unified multilevel cell memory
JP6315484B2 (ja) * 2013-09-20 2018-04-25 国立大学法人東北大学 メモリセル及び記憶装置
US10474597B2 (en) * 2015-08-03 2019-11-12 Marvell World Trade Ltd. Systems and methods for performing unknown address discovery in a MoChi space
JP7049338B2 (ja) * 2016-11-29 2022-04-06 アーム・リミテッド タグマッチングコマンドに応答する記憶回路

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4622653A (en) * 1984-10-29 1986-11-11 Texas Instruments Incorporated Block associative memory
JPH04182993A (ja) * 1990-11-19 1992-06-30 Toshiba Corp 連想メモリセル
JPH04276388A (ja) * 1991-03-01 1992-10-01 Nippon Telegr & Teleph Corp <Ntt> 連想メモリ回路および連想メモリセルアレイ
FR2685973B1 (fr) * 1992-01-03 1994-02-25 France Telecom Point memoire pour memoire associative.
JP3175291B2 (ja) * 1992-04-27 2001-06-11 カシオ計算機株式会社 連想メモリ
US5351208A (en) * 1992-04-27 1994-09-27 Integrated Information Technology, Inc. Content addressable memory
US5359564A (en) * 1993-05-04 1994-10-25 Motorola, Inc. Content addressable memory system and method of operation
US5467349A (en) * 1993-12-21 1995-11-14 Trw Inc. Address handler for an asynchronous transfer mode switch
US5517441A (en) * 1994-12-14 1996-05-14 International Business Machines Corporation Content addressable memory circuitry and method of operation
US5513134A (en) * 1995-02-21 1996-04-30 Gte Laboratories Incorporated ATM shared memory switch with content addressing
JPH09326807A (ja) * 1996-06-06 1997-12-16 Nec Corp 共有セルメモリ型atm交換制御方法及び共有セルメモリ型atm交換スイッチ

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003525512A (ja) * 2000-03-03 2003-08-26 モサイド・テクノロジーズ・インコーポレイテッド 改良された高密度メモリセル
JP4903338B2 (ja) * 2000-03-03 2012-03-28 トレイス・ステップ・ホールディングス・リミテッド・ライアビリティ・カンパニー 改良された高密度メモリセル
US7174418B2 (en) 2003-04-30 2007-02-06 Hynix Semiconductor Inc. Semiconductor memory device for enhancing refresh operation in high speed data access
US7363460B2 (en) 2003-04-30 2008-04-22 Hynix Semiconductor Inc. Semiconductor memory device having tag block for reducing initialization time
CN100409203C (zh) * 2005-10-14 2008-08-06 杭州中天微系统有限公司 一种低功耗高速缓存的实现方法及其高速缓存器

Also Published As

Publication number Publication date
DE69829539T2 (de) 2005-09-01
EP0920030B1 (en) 2005-03-30
DE69829539D1 (de) 2005-05-04
US6215685B1 (en) 2001-04-10
EP0920030A3 (en) 1999-08-11
EP0920030A2 (en) 1999-06-02

Similar Documents

Publication Publication Date Title
JPH11283378A (ja) 内容アドレス・メモリ
US6097724A (en) Ram-based associative content-addressable memory device, method of operation thereof and ATM communication switching system employing the same
US6081440A (en) Ternary content addressable memory (CAM) having fast insertion and deletion of data values
US5111386A (en) Cache contained type semiconductor memory device and operating method therefor
US5841874A (en) Ternary CAM memory architecture and methodology
US6731526B2 (en) CAM cell array, TCAM cell, TCAM cell array, address search memory, and network address search apparatus
US5422838A (en) Content-addressable memory with programmable field masking
CN100401425C (zh) 用于在按内容寻址的存储器中执行可变宽度搜索的电路和方法
US6101115A (en) CAM match line precharge
US6538911B1 (en) Content addressable memory with block select for power management
JP3850669B2 (ja) キャッシュメモリ
US5309395A (en) Synchronous static random access memory
JPH03286495A (ja) 半導体記憶装置
US10672445B2 (en) Memory device including local support for target data searching and methods of operating the same
JPH11273365A (ja) 内容呼出し可能メモリ(cam)
US6181612B1 (en) Semiconductor memory capable of burst operation
JPH07312085A (ja) メモリ装置
JPH0620476A (ja) 電子的コンピュータ・メモリのためのビット・ライン・スイッチ配列
US20030005210A1 (en) Intelligent CAM cell for CIDR processor
JP2000353388A (ja) 内容参照可能メモリの改良
US6766317B2 (en) Range check cell and a method for the use thereof
US6396764B1 (en) Segmented memory architecture and systems and methods using the same
JPH10208493A (ja) 冗長アレイを備えるメモリ及び管理方法
US6839258B2 (en) Folded DRAM CAM cell
US5130947A (en) Memory system for reliably writing addresses with reduced power consumption

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080328

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080630

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080703

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080728

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080731

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080828

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080902

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081121