JP2558821B2 - 連想メモリ装置 - Google Patents

連想メモリ装置

Info

Publication number
JP2558821B2
JP2558821B2 JP63185955A JP18595588A JP2558821B2 JP 2558821 B2 JP2558821 B2 JP 2558821B2 JP 63185955 A JP63185955 A JP 63185955A JP 18595588 A JP18595588 A JP 18595588A JP 2558821 B2 JP2558821 B2 JP 2558821B2
Authority
JP
Japan
Prior art keywords
associative memory
memory element
word
data
address
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 - Lifetime
Application number
JP63185955A
Other languages
English (en)
Other versions
JPH0235689A (ja
Inventor
浩 廉田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP63185955A priority Critical patent/JP2558821B2/ja
Publication of JPH0235689A publication Critical patent/JPH0235689A/ja
Application granted granted Critical
Publication of JP2558821B2 publication Critical patent/JP2558821B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、データ高速検索等に非常に有効な記憶素
子、連想メモリに関するものである。
従来の技術 連想メモリは、通常のメモリ(例えばランダムアクセ
スメモリ)のような「アドレス信号を入力しその場所に
格納してあるデータを読み出す」のではなく、逆に「デ
ータ(記憶内容)を入力し、これと一致するデータが内
部に格納されている場合は、一致信号を出力、格納され
ていない場合には不一致信号を出力する」という基本機
能を有する。更に応用分野に応じて、上記基本機能の他
に入力データと格納データとの一致がある場合にその箇
所のアドレスを出力したり、入力データを一種のタグと
し、データの拡張部分(エクステンション)を出力した
りするものもある。
何れにせよ連想メモリにおける特徴的な機能は並列的
な一致検出機能である。従来より、この機能を実現する
ためには大別して2種類の方法が知られている。
第1は各メモリセルごとに一致検出機能、即ち排他的
論理和の機能を持たせることで、セルの寸法は当然大き
くなる。通常この形態はフルアソシアティブ形の連想メ
モリ(Full Associative Content−Addressable Memor
y;以後FA−CAMと記述する)と呼ばれている。参考文献
1:T.Kohonen“コンテント アドレッサブル メモリー
ズ”(“Content−Addressable Memories")Berlin,Hei
delberg;1980 Springer−Verlag.参考文献2:H.Kadota e
t.al.“An 8Kbit Content−Addressable and Reentrant
Memory"アイイイイ ジャーナル オブ ソリッド−ス
テイト サーキッツ(IEEE Journal of solid−State C
ircuits),volSC−20 No.5 PP.951〜957 October 198
5) 第2のものは、通常のランダムアクセスメモリ24(以
後RAMと略述する)とその周辺に排他的論理和回路4を
付加した第2図に示す構成のもので、検索用の入力ワー
ドデータの一部のビットフィールド(以後この部分をア
ドレスフィールドと呼ぶ)をアドレスと考え、連想メモ
リのアドレスデコーダ21に入力し選ばれたワードに格納
されている内容フィールド22のデータが読み出され、こ
れが前述の検索用入力ワードデータの残りのビットフィ
ールド(アドレスフィールドを除いたデータ)と同一で
あるかどうかが前述の排他的論理和回路4で判定され、
同一であればこの検索用入力ワードデータは格納されて
いることを示し、不一致であれば検索用入力データは格
納されていないことを示している。(この形の連想メモ
リをDirect−Mapping CAM,と呼び以後DM−CAMと略述す
る)。
しかし、このDM−CAM方法の欠点は、ランダムアクセ
スメモリ全体の中で未使用の格納場所(未使用ワード)
がまた残っている状態でも、アドレスフィールドが同一
で残りのビットフィールドが異なるデータは2個以上格
納できないことである。(通常データの衝突と呼ばれ
る) この衝突を回避するための色々の方法が提案されてい
るが何れの方法を用いても素子全体の連想処理特性はか
なり劣化する。
発明が解決しようとする課題 連想メモリは多くのデータに対して高速の検索を行っ
たりする場合非常に有効な素子であるが、従来技術の部
分で述べたように、FA−CAMではセル面積が大きいの
で、通常のRAM程大容量のものが得られない。他方、DM
−CAMでは衝突を回避するための回路などにより性能が
劣化する(処理速度が遅くなる)。従って本発明の目的
は、充分大容量でしかも素子全体の連想処理速度も速い
連想メモリを提供することである。
課題を解決するための手段 本発明は、FA−CAM,DM−CAMおよびこの両者にデータ
の供給することができる配線、DM−CAMで衝突が起こっ
た場合選択的FA−CAMのバリッドビットのフラグをたて
る論理回路網から構成される。
作用 本発明は上記構成により、連想メモリへの書き込みを
DM−CAMとFA−CAMに並行して行い、DM−CAM衝突が発生
した場合にFA−CAMの書き込んだワードアドレスのバリ
ッドビットフラグをたててその書き込まれたデータを有
効にし、衝突が発生したい場合はこのフラグをたてずDM
−CAM側のバリッドビットをたて、FA−CAM側のバリッド
をたてずにおくため実質的にFA−CAMには書き込みがな
されていないことにより書き込み動作時の性能劣化を防
止し、装置全体として高速性を失うことなく大容量の連
想メモリ装置が実現できる。
実 施 例 第1図に本発明の実施例を示す。連想メモリ要素1は
FA−CAMである。FA−CAMの主要な動作は「書き込み」と
「検索」である。書き込み動作では、空きアドレス(バ
リッドビットに有効フラグがたっていないアドレス)に
優先順位がついており、もっとも優先順位が高いアドレ
スのワードに新しいデータが書き込まれる(書き込まれ
ると同時にバリッドビットには有効フラグがたつ)。一
方、検索動作では、検査用の入力ワードデータがメモリ
の全ワードに同時に供給され、各ワードに配置された一
致検出回路(具体的には排他的論理和回路)により、入
力ワードデータと格納されているデータとの一致、不一
致がしらべられ、もし一致しているワードがあればその
ワードの一致検出部から一致検出信号が(場合によって
はそのアドレス情報も同時に)外部へ出力される。
次に、第1図の連想メモリ要素2はDM−CAMである。D
M−CAMは実質的に複数I/Oのランダムアクセスメモリと
一致検出回路4(具体的には排他的論理和回路)から構
成されている。従って単位面積当りの記憶容量(メモリ
の集積度)はFA−CAMに比べてかなり大きいものが得ら
れる。第2図にこのDM−CAMの構成とデータ入力の方法
を示す。
入力ワードデータの各ビットはアドレスフィールドの
ビットと残りのフィールド(内容フィールドと以後略述
する)に分けられる。アドレスフィールドの各ビット情
報はRAMのアドレス入力としてアドレスデコーダに印加
され対応したRAMの内容記憶部分のワードの読みだし動
作を行う。読み出された各ビットは、前述の内容フィー
ルドの各ビットとの一致検出回路で行われ、全ビットが
同一の場合は一致しており、1ビットでも異なればデー
タは不一致で検索データは格納されていないことにな
る。
本実施例では、データの書き込み時(Wt)、検索時
(Rv)何れも、連想メモリ要素1、要素2の両方に同時
に処理を開始することを特徴としている。
まず、書き込みの時(Wt)には、連想メモリ要素1の
FA−CAMに対しては、書き込みの優先度がもっとも高い
ワードに対して一応入力ワードデータの書き込みが行わ
れるが、そのワードのバリッドフラグはまた1にしな
い。連想メモリ要素2のDM−CAMに対してはまずバリッ
ドビットの読み出し(Rd)が行なわれ、読み出されたバ
リッドフラグが1の場合即ち、既にそのアドレスのワー
ドが使用中の場合に先程保留状態にしておいた要素1の
バリッドフラグを1(即ち使用中または有効)に設定す
る。逆に連想メモリ要素2のバリッドフラグが0の場合
はそのアドレスは未使用なのでRAMのそのワードに対し
て書き込み(Wt)動作を行い同時にそのアドレスのバリ
ッドフラグも1に設定する。これら一連の動作は制御回
路部3で制御される。
次に検査の場合(Rv)は連想メモリ要素1に対して検
索動作、連想メモリ要素2対して内容フィールドの読み
出し動作が同時に実行され、各々のバリッドビットを読
みだしも同時に実行され、各々の検出信号とバリッド信
号の論理積信号の何れかが1であれば装置全体として検
索データを格納していることを示し、何れも0であれば
装置全体として検査データを格納していないことを示し
ている。
また、事前に、複数のデータを同一アドレスに指定し
なければならないことが分っている場合(即ち特定のア
ドレスで衝突が頻繁に発生する可能性がある場合)連想
メモリ要素2のアドレス入力として、単純にアドレスフ
ィールドの各ビットを直接印加するのではなく、種々の
ビットからある種の変換を行なって(通常この動作をハ
ッシュ変換またはハッシングと呼ぶ)衝突の確立を下げ
ることができる。
第3図はこの変換回路即ちハッシュコード発生回路5
を設けた構成の連想メモリ装置を示している。衝突の確
立が、アドレスによって非常に偏っている場合はハッシ
ング等を行なわなければ、本発明においてもFA−CAMの
ワードが短時間で「フル」状態となり、しかもDM−CAM
側は未使用アドレスがあるという不都合が発生する可能
性がある。
発明の効果 実施例の動作説明より明らかなとうり、従来の連想メ
モリの二種類の問題点が解消できる。即ち、純粋のFA−
CAMの場合問題となったメモリセルが大きいために充分
大容量の連想メモリが得られないという欠点に対して
は、大容量のDM−CAMを用いることで改善している。ま
た、従来のDM−CAMでは、衝突が起こった場合の処理に
時間を要し性能が低下していたが本発明の連想メモリ装
置では、衝突が起こってもFA−CAMに即刻退避できほと
んど、無駄時間なしで処理できるので高速性は失われな
い。つまり、大容量で高性能の連想メモリを実現でき
る。
【図面の簡単な説明】
第1図は、本発明の基本構成例を示すブロック図、第2
図は、ダイレクトマップ形の連想メモリの構成例を示す
ブロック図、第3図は、本発明の基本構成にハッシュコ
ード生成回路を加えた別の構成例を示すブロック図であ
る。 1,2……連想メモリ要素、3……制御回路、4……一致
検出回路、5……ハッシュコード発生回路。

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】入力ワードと各記憶ワードの全ビットに対
    して一括して一致検出する連想処理機能をもつ第1の連
    想メモリ要素と、前記入力ワードの一部ビットフィール
    ドをアドレス情報とし、このアドレスの格納されている
    ワードデータと前記入力ワードの残りのビットフィール
    ドとを比較することで連想処理を行うランダムアクセス
    メモリと比較回路列からなる第2の連想メモリ要素と、
    制御論理回路網が同一半導体基板上に形成され、 前記制御論理回路網は、 (i)データの書き込み時は、入力ワードの一部のビッ
    トフィールドに対応する前記第2の連想メモリ要素のア
    ドレスが未使用の場合、そのアドレスに前記入力ワード
    の残りのビットフィールドデータを書き込み、もしその
    アドレスに既に別のデータが書き込まれている場合は、
    前記入力ワードを前記第1の連想メモリ要素に未使用ア
    ドレスに書き込むよう各連想メモリ要素を制御し、 (ii)データ検索時は入力ワードを第1および第2の連
    想メモリ要素に同時に供給し並列検索処理をするよう各
    連想メモリ要素を制御する構成を特徴とする連想メモリ
    装置。
  2. 【請求項2】第2の連想メモリ要素に直接入力ワードを
    供給せずハッシュコード発生回路を設け、これを介して
    前記入力ワードをハッシュ変換して供給することを特徴
    とする特許請求の範囲第1項記載の連想メモリ装置。
  3. 【請求項3】第1の連想メモリ要素は、各記憶ワードご
    とに、ワードデータを記憶し一致検出機能を持つ内容ビ
    ットフィールドと、入力ワードデータと記憶されている
    ワードデータとの一致がある場合にそれを示す一致検出
    ビットと、記憶されているワードが有効かどうかを示す
    バリッドビットからなり、第2の連想メモリ要素のラン
    ダムアクセスメモリは入力ワードの一部またはこれをハ
    ッシュ変換したビットフィールドが供給されるアドレス
    デコーダと、各記憶ワードごとに残りのビットフィール
    ドに対応する箇所を記憶する内容フィールドと、この内
    容フィールドに記憶が有効かどうかを示すバリッドビッ
    トからなり、 前記制御論理回路網は、 (i)書き込み動作時には、第2の連想メモリ要素に対
    応するアドレスのバリッドビットを読みだし、これが無
    効の場合には、第2の連想メモリ要素の内容フィールド
    に入力ワードデータの残りのビットフィールドを書き込
    むと同時にそのアドレスのバリッドビットに有効フラグ
    を書き込み、前記バリッドビットが有効な場合は、第1
    の連想メモリ要素の未使用ワードの一つに書き込むと同
    時にそのワードのバリッドビットに有効フラグを書き込
    むよう各連想メモリ要素を制御し、 (ii)データ検索動作時には、前記第1、第2の連想メ
    モリ要素の各バリッドビットを同時に読みだして有効の
    記憶ワードのみ一致検出出力候補とする動作をするよう
    各連想メモリ要素を制御する構成を特徴とする特許請求
    の範囲第1項または第2項記載の連想メモリ装置。
JP63185955A 1988-07-26 1988-07-26 連想メモリ装置 Expired - Lifetime JP2558821B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63185955A JP2558821B2 (ja) 1988-07-26 1988-07-26 連想メモリ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63185955A JP2558821B2 (ja) 1988-07-26 1988-07-26 連想メモリ装置

Publications (2)

Publication Number Publication Date
JPH0235689A JPH0235689A (ja) 1990-02-06
JP2558821B2 true JP2558821B2 (ja) 1996-11-27

Family

ID=16179801

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63185955A Expired - Lifetime JP2558821B2 (ja) 1988-07-26 1988-07-26 連想メモリ装置

Country Status (1)

Country Link
JP (1) JP2558821B2 (ja)

Also Published As

Publication number Publication date
JPH0235689A (ja) 1990-02-06

Similar Documents

Publication Publication Date Title
US5111386A (en) Cache contained type semiconductor memory device and operating method therefor
US6389507B1 (en) Memory device search system and method
US5619676A (en) High speed semiconductor memory including a cache-prefetch prediction controller including a register for storing previous cycle requested addresses
JP3065736B2 (ja) 半導体記憶装置
US5485418A (en) Associative memory
JP2714944B2 (ja) 半導体記憶装置
US6275406B1 (en) Content address memory circuit with redundant array and method for implementing the same
US7139182B2 (en) Cutting CAM peak power by clock regioning
US7831765B2 (en) Distributed programmable priority encoder capable of finding the longest match in a single operation
US3949369A (en) Memory access technique
JPH0245277B2 (ja)
US5329489A (en) DRAM having exclusively enabled column buffer blocks
JPH11273365A (ja) 内容呼出し可能メモリ(cam)
JP3599273B2 (ja) 内容参照可能メモリの改良
US7386660B2 (en) CAM with automatic writing to the next free address
US6304482B1 (en) Apparatus of reducing power consumption of single-ended SRAM
US20050152166A1 (en) Folded DRAM CAM cell
JPH10340226A (ja) 連想記憶方式のキャッシュメモリ
US20050044307A1 (en) Content addressable memory (CAM) device employing a recirculating shift register for data storage
JP2558821B2 (ja) 連想メモリ装置
JP2810269B2 (ja) 連想メモリシステム
US11886746B1 (en) Algorithmic TCAM with storage activity-based read
US20040221100A1 (en) Semiconductor memory device for enhancing refresh operation in high speed data access
JPH03212896A (ja) 連想記憶装置
US20140160825A1 (en) Search system searching for data word matching search key