JPH07282588A - カナーバメモリを作る装置、システム、方法 - Google Patents

カナーバメモリを作る装置、システム、方法

Info

Publication number
JPH07282588A
JPH07282588A JP6151411A JP15141194A JPH07282588A JP H07282588 A JPH07282588 A JP H07282588A JP 6151411 A JP6151411 A JP 6151411A JP 15141194 A JP15141194 A JP 15141194A JP H07282588 A JPH07282588 A JP H07282588A
Authority
JP
Japan
Prior art keywords
memory
address
data
active
circuit
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
JP6151411A
Other languages
English (en)
Inventor
Derek Smith
スミス デレック
Shivaling Mahant-Shetti
マハント − シェッティ シバリング
Pawate Basabaraji
パワテ バサバラジ
George R Doddington
アール.ドッディントン ジョージ
Warren L Bean
エル.ビーン ウオーレン
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 JPH07282588A publication Critical patent/JPH07282588A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90339Query processing by using parallel associative memories or content-addressable memories

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Dram (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 (修正有) 【目的】連想メモリとして優れており、かつ高速で簡単
で安価なカナーバメモリを作る。 【構成】プロセッサ12に結合する活動メモリ装置14
は、複数の可能アドレスを記憶する第1メモリ20、及
びプロセッサ12から受ける実際のアドレスを記憶する
第2メモリ22を備える。第1メモリ20に記憶する可
能アドレスから少なくとも一つの活動アドレスを、第2
メモリ22に記憶する実際のアドレスの関数として識別
する回路を備える。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は一般にディジタルメモ
リに関し、より詳しくはカナーバメモリを作る装置、シ
ステム、方法に関する。
【0002】
【従来の技術】カナーバメモリ・システムはランダムア
クセスメモリ・システムであって、一般に100から1
0,000ビットの範囲の長いアドレスを用いて、情報
を記憶し検索する。最も重要なことは、カナーバメモリ
は連想的であって記憶位置を正確にアドレスする必要が
ないことである。アドレス空間は多数のキーアドレスに
分割される。キーアドレスのハンミング距離(ハミング
距離とは、二つのNビットの二進ベクトルの間のビット
位置の数)内にある1組のアドレスはそのキーアドレス
を「活動状態」にするので、そのキーアドレスに関連す
る記憶要素にアクセスすることができる。ハミング距離
(すなわち捕捉半径)はキーアドレス毎に違ってよい。
各記憶要素は一連の多ビットカウンタすなわちレジスタ
を備え、それぞれは代表的に2−8二進ビットで表す符
号付き整数としてデータを記憶する。記憶/検索するデ
ータ語内の各ビット位置に対して、各要素にカウンタす
なわちレジスタを1個設ける。
【0003】アクセスを要求する実際のアドレスをカナ
ーバメモリが受けると、どのキーアドレスが活動状態か
を決定する検査を行う。読み出し操作中は多数のキーア
ドレスが活動状態になってよく、アクセスした対応する
記憶要素から検索したデータについて最もよい平均値が
決まる。アクセスした記憶要素に書き込み中は、要素に
書き込み中のデータ語の所定のビット位置で論理1であ
れば対応するカウンタを増分し、所定のビット位置で論
理0であれば対応するカウンタを減分する。
【0004】
【発明が解決しようとする課題】カナーバメモリ・シス
テムは、パターン認識やパターン分類などの連想メモリ
を必要とする多くのデータ処理の応用において有用であ
る。従って高速で簡単で安価なカナーバメモリを作る必
要が生じた。
【0005】
【課題を解決するための手段】この発明の実施態様は、
プロセッサと、このプロセッサに結合する活動メモリ
(active memory)を備えるメモリシステ
ムである。活動メモリは、複数の可能アドレスを記憶す
る第1メモリと、プロセッサから受ける実際のアドレス
を記憶する第2メモリを備える。第1メモリに記憶する
可能アドレスから少なくとも一つの活動アドレスを、第
2メモリに記憶する実際のアドレスの関数として識別す
る識別回路を備える。
【0006】この発明の別の実施態様は、プロセッサ
と、このプロセッサに結合する活動メモリを備えるメモ
リシステムである。活動メモリは複数の可能アドレス
と、各アドレスに関連するデータとを記憶するデータメ
モリを備える。また、プロセッサから受ける実際のアド
レスを記憶する同報(broadcasting)メモ
リを備える。活動メモリは、データメモリに記憶するア
ドレスから、同報メモリに記憶する実際のアドレス語の
ハミング距離内にある活動アドレスを識別する回路を備
える。更に活動メモリは、活動アドレスおよび制御器に
関連し、かつデータメモリ内に記憶するデータにアクセ
スする回路を備える。制御器は、識別のためにアドレス
語をデータメモリから回路に移す動作と、識別のために
実際のアドレスを同報メモリから回路に移す動作を制御
する。
【0007】この発明の実施態様は、多くのデータ処理
の応用において有用である。詳しくいうと、この発明の
実施態様は、高速で簡単で安価なカナーバメモリを作る
のに有用である。
【0008】
【実施例】この発明の望ましい実施態様とその利点は、
図1から図4を参照すれば最もよく理解できる。各図の
同じまたは対応する部分には同じ数字を用いる。
【0009】図1は、この発明の概念を表すカナーバメ
モリシステム10のブロック図である。カナーバメモリ
システム10は、主プロセッサ12と活動メモリ14と
システムデータメモリ15を備える。主プロセッサ12
は、データバス16を通して活動メモリ装置14と、ま
たバス17を通してシステムデータメモリ15とデータ
を交換する。以下に説明するように、バス16で交換す
る「データ」は、主としてシステムデータメモリ15へ
のアドレスである。読み出し/書き込みアドレスは、ア
ドレスバス18を通して活動メモリ14に送る。活動メ
モリ14から検索したアドレスは、アドレスバス19を
通してシステムデータメモリ15に送る。システム10
内の各活動メモリ14は、選択した従来の(「不活
動」)メモリユニット(例えば28ピンのピン出力)の
ピン構成と互換性のあるピン構成を持つことが望まし
い。こうすれば、活動メモリ14と従来の不活動メモリ
は、所定のボードまたはその他の支持構造体上で交換す
ることができる。
【0010】一般に主プロセッサ12は、データメモリ
15への多数の可能アドレスを活動メモリ装置14に記
憶する。可能アドレスはランダムに選択してよく、また
メモリ装置14で形成するメモリの大きさに従って、そ
の数は1,000から1,000,000アドレスであ
ってよい。システムデータメモリ15内の位置へのアク
セス要求が来ると、主プロセッサ12は実際のアドレス
を活動メモリ14に送る。活動メモリ14は記憶したア
ドレスを循環して、システム10が受けたアドレスの中
でハミング距離内にあるのはどれかを識別し、記憶して
いる可能アドレスの中でどれが活動アドレスかを決定す
る。次に、主プロセッサ12は識別した活動アドレスを
用いて、データメモリ15のアドレスにアクセスする。
【0011】読み出し要求中は、データメモリ15内の
各活動アドレスのアクセスした位置から検索したデータ
を主プロセッサ12に送り、主プロセッサ12はデータ
を蓄積し、しきい値と比べ、実際のアドレスに対応する
結果を出す。書き込み中は、プロセッサ12はデータバ
ス17にデータを送って、データバス17の各ビットに
対応するシステムデータメモリ15内のカウンタ(すな
わちレジスタ)を増分しまたは減分することにより、ア
ドレス位置にある現在の記憶したデータを変更する。
【0012】図2は、この発明の概念を表す活動メモリ
14の機能ブロック図である。活動メモリ14は一つの
チップまたはモジュール(「装置」)として作ってよ
く、データ・ランダムアクセスメモリ20(RAM)、
同報RAM22、制御器24、データ路26を備える。
一つのチップにしたときは、データRAM20と同報R
AM22は所定の装置において標準的な構成で作ってよ
く、制御器24とデータ路26は所定の装置または装置
の一部において動作の要求を満たすように特別に作って
よい。
【0013】データRAM20は、スタティック・ラン
ダムアクセスメモリ(SRAM)またはダイナミック・
ランダムアクセスメモリ(DRAM)配列でよい。図2
では、RAM20は128行128列に配置した2kx
8メモリのRAMセルとして表している。図2に示す構
成の他に、この技術でよく知られているように、多数あ
る別の任意のRAM構成を用いてもよい。データRAM
20に関連して、配列内の選択したセルとデータを授受
して読み出しおよび書き込みを行う読み出し/書き込み
回路があり、行アドレス復号回路28、行アドレスマル
チプレクサ30、第1段復号(列アドレス)回路32、
列アドレスマルチプレクサ34、入力/出力回路36を
備える。
【0014】マルチプレクサ30は、システムアドレス
バス18または制御器24から行アドレス回路28にア
ドレスビットを通す。この選択は、離散信号に応答する
かまたはアドレス自身の値に応答して行われる。同様
に、マルチプレクサ34は、アドレスバス18からまた
は制御器24からのアドレスビットを通す。マルチプレ
クサ30と34と入力/出力回路36により、データR
AMのセルはデータバス16とアドレスバス18を用い
てCPU12との間で、または内部バス38を用いてデ
ータ路26との間で、データのビットを移動する。
【0015】図2の実施態様において、第1段復号器3
2はマルチプレクサ33を用いて4隣接ビット線の各組
を多重通信して、32ビット幅の内部バス38を形成す
る。I/O回路36は4対1マルチプレクサを備え、こ
のマルチプレクサはアドレスバス18からのアドレスビ
ットに応答して、32ビットの内部バス38上の4組の
8隣接ビットから1組を選択して、システムデータバス
16で送る。別の実施態様の第1段復号器32と入力/
出力回路36の構成は、内部バス38の幅、データRA
M20の構成、システムデータバス16と通信する線
(ビット)の数などの要因により変わることに注意され
たい。
【0016】同報RAM22もスタティックかダイナミ
ックでよく、同様にメモリセル配列とデータを授受して
書き込みおよび読み出しを行う読み出し/書き込み回路
と関連し、行アドレス回路40、行アドレスマルチプレ
クサ42、第1段(列)復号回路44、マルチプレクサ
46、入力/出力回路48を備える。図2では、同報R
AM22は2行128列の構成にしているが、別の実施
態様では別の行/列構成を用いてよい。同報RAM22
に関連する読み出し/書き込み回路は、データRAM2
0に関連する読み出し/書き込み回路と同様に動作す
る。
【0017】第1段復号回路44は、同報RAM22内
の128列メモリセルの各4隣接列を4対1で多重通信
を行うマルチプレクサ45を備え、選択した32ビット
で第2内部バス50を通してデータ路26に結合する。
マルチプレクサ42と46は、システムアドレスバス1
8または制御器24からのアドレスビットを選択的に通
す。従って、マルチプレクサ42と46と入力/出力回
路48により、同報RAM22のセルはCPU12との
間で、またはデータ路26を通して制御器24との間
で、データを移動する。
【0018】データRAM20に関連する対応する読み
出し/書き込み回路と同様に、行アドレス復号回路4
0、マルチプレクサ42と46、第1段復号回路44、
入力/出力回路48の構成は、同報RAM22のセル配
列内の行と列の数、内部バス50の幅、システムアドレ
スバス18から受けるビットの数、システムデータバス
16と通信するビット(線)の数などの要因により変わ
る。
【0019】更に、データバス16と、データRAM2
0に関連する入力/出力回路36および同報RAM22
に関連する入力/出力回路48との結合は、従来のメモ
リピン出力と互換性のある1組のピン(D0−D7)に
よって行うことが望ましい。同様に、データRAM20
と同報RAM22に関連する読み出し/書き込み回路の
結合は、1組のピン(図示せず)によって行ってよい。
活動メモリ14はシステムメモリの一部なので、メモリ
14はメモリチップの特性を持つことが望ましい。言い
換えると、メモリ14はメモリチップのように効率的
で、寸法が小さく、従来の(「不活動の」)メモリチッ
プのピン構成と互換性のある最小数のデータおよびアド
レスピンを用いなければならない。
【0020】データ路26はランダム論理、プログラム
可能ゲート配列回路、プログラム可能論理配列回路を用
い、所望の計算機能を実行するようにチップまたはユニ
ットを必要に応じて特別に作ってよい。更に制御器24
とデータ路26は、共にディジタル信号処理回路で作っ
てよい。一例として、テキサスインスツルメント社TI
−320ファミリのディジタル信号プロセッサがある。
【0021】望ましい実施態様のシステム10におい
て、活動メモリ14がシステムアドレスバス18から受
ける対応する数のアドレスビットに対して、各同報RA
M22は利用可能な最高のアドレス空間に置く。これに
より、各同報RAM22はチップ選択信号なしに書き込
みまたは読み出しができる。更にシステム10内の活動
メモリ14の全ての同報RAM22に同時にアクセスす
ることができる。
【0022】例示のカナーバメモリの実施態様では、主
プロセッサはデータバス16とアドレスバス18を用い
て、多数のランダムに選択したアドレスをデータRAM
20にロードする。これらのアドレスの長さは100か
ら10,000ビットの範囲でよい。図示の32ビット
構成では、内部バス38とマルチプレクサ33を通して
32ビット語として循環する。システムデータメモリ1
5へのアクセス要求があると、主プロセッサ12は実際
のアドレスを同報RAM22に書き込む。同報RAM2
2がプロセッサ12から受けて保持している制御命令に
より、制御器24はデータRAM20に保持するアドレ
スを循環的に検索する。
【0023】アドレスをデータRAM20から検索する
際に、どのデータが同報RAM22に保持する実際のア
ドレスのハミング距離内(すなわち活動状態)にあるか
をデータ路26は決定する。次に主プロセッサ12は識
別した活動アドレスをデータRAM20から検索して、
システムメモリ15内の要素にアクセスする。プロセッ
サ12が活動メモリ14をポーリング(poll)して
活動アドレスを周期的に検索してもよいし、または活動
メモリ14がプロセッサ12に割り込んでもよい。
【0024】図3は、データ路26の回路の一つの可能
な実施態様を示す。データ路26はデータRAM20の
どのアドレスが活動アドレスかを決定する。この実施態
様のハミング距離は、複数の排他的ORゲート52と計
数/比較回路を用いて決定する。32ビットの内部バス
38と50とを備える活動メモリ装置14には、32ビ
ットの排他的ORゲート52を用いる。
【0025】内部バス38と内部バス50から来る対応
する1対の線AとBは、各ゲート52の入力に接続
する。言い換えると、内部バス38からの第1線
(A)と内部バス50からの第1線(B)をゲート
する。以下同じである。データRAM20から検索した
各アドレスについてゲート52からの論理1出力の数を
計数/比較回路54で数えてしきい値と比較し、RAM
20からのアドレスが実際のアドレスのハミング距離内
にあるかどうかを決定する。
【0026】図4は、カナーバメモリ10の別の実施態
様を示す。この実施態様では、活動メモリ14はシステ
ムメモリとしても動作する。各可能アドレスは、関連す
るデータと共にデータRAMに記憶する。活動アドレス
を識別すると、主プロセッサ12は関連するデータを活
動メモリ14からそのまま検索する。所定の読み出し要
求に対して制御器24がデータRAM20内のアドレス
を循環してその結果多数の活動アドレスが活動状態にな
ると、多数の関連するデータ語が使用可能になる。次に
各活動アドレスからの関連するデータをデータ路26か
プロセッサ12に蓄積する。
【0027】図4の実施態様では活動アドレスを用いて
書き込みを行うため、データ路26によって増分/減分
を行うことができる。活動アドレスに書き込み中に、そ
の活動アドレスに関連するデータを読み出して上に述べ
たように増分し、新しいデータをデータRAM10内の
同じ位置に再び書き込む。
【0028】この発明とその利点について詳細に説明し
たが、特許請求の範囲に定義したこの発明の精神と範囲
から逸れることなく、各種の変更、代替、変形を行うこ
とができるものである。
【0029】以上の説明に関して更に以下の項を開示す
る。 (1) メモリシステムであって、プロセッサと、前記
プロセッサに結合する活動メモリであって、複数の可能
アドレスを記憶する第1メモリと、前記プロセッサから
受ける実際のアドレスを記憶する第2メモリと、前記第
1メモリに記憶する前記可能アドレスの少なくとも一つ
の活動アドレスを、前記第2メモリに記憶する前記実際
のアドレスの関数として識別する回路と、を備える活動
メモリと、を備えるメモリシステム。
【0030】(2) 前記活動メモリは前記少なくとも
一つの活動アドレスを前記プロセッサに与える回路を含
み、前記プロセッサは前記少なくとも一つの活動アドレ
スを持つ関連するシステムメモリをアドレスする、第1
項記載のメモリシステム。 (3) 識別のために前記可能アドレスの前記一つを前
記第1メモリから前記回路に移し、識別のために前記実
際のアドレスを前記第2メモリから前記回路に移す動作
を制御する制御回路を更に含む、第1項記載のメモリシ
ステム。 (4) 識別のための前記回路は、前記実際のアドレス
のハミング距離内の少なくとも一つの前記可能アドレス
を識別することによって前記少なくとも一つの活動アド
レスを識別する、第1項記載のメモリシステム。
【0031】(5) 前記制御回路は、識別のために前
記可能アドレスの前記一つを前記第1メモリから前記回
路に移す第1メモリ読み出し/書き込み回路と、識別の
ために前記実際のアドレスを前記第2メモリから前記回
路に移す第2メモリ読み出し/書き込み回路と、識別の
ために前記可能アドレスの前記一つを前記回路に順次移
す動作と、識別のために前記実際のアドレスを前記回路
に移す動作を制御する、前記第1および第2読み出し/
書き込み回路に結合する制御器と、を備える、第3項記
載のメモリシステム。
【0032】(6) 前記制御器は前記第2メモリに記
憶する制御命令に従って動作する、第5項記載のメモリ
システム。 (7) 前記第1読み出し/書き込み回路に結合して前
記可能アドレスを前記プロセッサから前記第1メモリに
選択的に移す第1入力/出力回路と、前記第2読み出し
/書き込み回路に結合して前記実際のアドレスを前記プ
ロセッサから前記第2メモリに選択的に移す第2入力/
出力回路を更に備える、第5項記載のメモリシステム。 (8) 前記活動メモリを単一装置として作り、前記単
一装置は選択した不活動メモリ装置のピン構成と互換性
のあるピン構成を持つ、第1項記載のメモリシステム。
【0033】(9) カナーバメモリシステムであっ
て、プロセッサと、前記プロセッサから受ける活動アド
レスでそれぞれアクセスすることのできる複数のデータ
記憶要素を備えるシステムデータメモリと、単一装置と
して作る活動メモリであって、前記プロセッサから移す
複数のアドレス語を記憶するデータメモリと、前記アド
レス語を前記データメモリと第1内部バスとの間に選択
的に移すデータメモリ制御回路と、前記プロセッサから
移す制御語と実際のアドレス語を記憶する同報メモリ
と、前記制御語と前記実際のアドレス語を前記同報メモ
リと第2内部バスとの間で選択的に移す同報メモリ制御
回路と、前記データメモリに記憶する前記アドレス語の
一つから、前記同報メモリに記憶する前記実際のアドレ
ス語のハミング距離内にある少なくとも一つの前記活動
アドレスを選択するデータ路と、前記少なくとも一つの
活動アドレス語を前記プロセッサに結合する回路と、前
記同報メモリから検索した前記制御語の一つに応答し
て、前記アドレス語を前記データメモリから前記第1バ
スを通して前記データ路に順次移す動作と、前記実際の
アドレスを前記第2バスを通してデータ路に移す動作を
制御する制御器と、を備える活動メモリと、を備えるカ
ナーバメモリ。
【0034】(10) 前記アドレス語を前記プロセッ
サから前記第1内部バスを通して前記データメモリに移
す動作を制御するデータメモリ入力/出力回路を更に備
える、第9項記載のカナーバメモリシステム。 (11) 前記実際のアドレス語を前記プロセッサから
前記第2内部バスを通して前記同報メモリに移す動作を
制御する同報メモリ入力/出力回路を更に備える、第9
項記載のカナーバメモリシステム。
【0035】(12) 結合するための前記回路は前記
データメモリ入力/出力回路を備える、第10項記載の
カナーバメモリ。 (13) 結合するための前記回路は前記同報メモリ入
力/出力回路を備える、第11項記載のカナーバメモ
リ。
【0036】(14) メモリシステムであって、プロ
セッサと、前記プロセッサに結合する活動メモリであっ
て、各前記アドレスに関連する複数の可能アドレスとデ
ータを記憶するデータメモリと、前記プロセッサから受
ける実際のアドレスを記憶する同報メモリと、前記デー
タメモリに記憶する前記アドレスから、前記同報メモリ
に記憶する前記実際のアドレス語のハミング距離内にあ
る実際のアドレスを識別する回路と、前記活動アドレス
に関連する前記データメモリに記憶する前記データにア
クセスする回路と、識別のために前記アドレス語を前記
データメモリから前記回路に移す動作と、識別のために
前記実際のアドレスを前記同報メモリから前記回路に移
す動作を制御する制御器と、を備える活動メモリと、を
備えるメモリシステム。
【0037】(15) 前記データメモリから前記活動
アドレスに関連する前記データを検索する回路を更に備
える、第14項記載のメモリシステム。 (16) 前記プロセッサから受けるデータ語に従って
前記活動アドレスに関連する前記データを書き込み中に
修正する回路を更に備える、第14項記載のメモリシス
テム。
【0038】(17) 書き込み中に修正する前記回路
は、前記プロセッサから受ける対応する論理1に従って
前記活動アドレスに関連するデータの少なくとも1ビッ
トを増分し、前記プロセッサから受ける対応する論理0
に従って前記ビットを減分する、第16項記載のメモリ
システム。 (18) 書き込み中に修正する前記回路は、実際のア
ドレスに関連する前記データの前記ビットを検索し、前
記少なくとも1ビットを増分または減分し、修正した前
記ビットを前記データメモリに書き込む、第17項記載
のメモリシステム。
【0039】(19) カナーバメモリを作る方法であ
って、活動メモリ装置内の第1組の記憶位置に複数の可
能アドレスを記憶し、前記活動メモリ装置内の第2組の
記憶位置に実際のアドレスを記憶し、活動メモリ装置の
回路を用いて、第1組の記憶位置に記憶する複数の可能
アドレスからの活動アドレスを第2組の記憶位置に記憶
する実際のアドレスの関数として識別し、前記活動メモ
リ装置で識別した活動アドレスを用いてシステムデータ
記憶メモリをアドレスする、段階を含む方法。 (20) 活動アドレスを識別する前記段階は、前記実
際のアドレスのハミング距離内にある可能アドレスの一
つを識別する段階を含む、第19項記載の方法。
【0040】(21) プロセッサ12とプロセッサ1
2に結合する活動メモリ装置14を備えるメモリシステ
ム10を提示する。活動メモリ14は、複数の可能アド
レスを記憶する第1メモリ20と、プロセッサ12から
受ける実際のアドレスを記憶する第2メモリ22を備え
る。第1メモリ20に記憶する可能アドレスから少なく
とも一つの活動アドレスを、第2メモリ22に記憶する
実際のアドレスの関数として識別する回路26を提示す
る。
【0041】注意 (C) 版権、*M*テキサスインスツルメント社、1
993年。この発明の資料の開示の一部は、版権保護に
従う材料を含む。この版権およびマスクワークの所有者
は、米国特許および商標局で見ることのできる特許資料
または特許開示、特許ファイルまたは記録を、いかなる
人でも複写することに異議はないが、その他の場合はそ
の版権とマスクワークの全ての権利を保留する。
【0042】関連出願の相互参照 次の共同譲渡の特許と出願を参考文献としてここに示
す。 米国特許出願番号071 、代理人明細
番号32350−714、(TI−13438)、「分
散処理の装置、システム、方法」、申請、 米国特許出願番号071 、代理人明細
番号32350−715、(TI−13439)、「分
散処理の装置、システム、方法」、申請、 米国特許出願番号071 、代理人明細
番号32350−717、(TI−13441)、「分
散信号処理の装置、システム、方法」、申請
【図面の簡単な説明】
この発明とその利点を完全に理解するために、以下の図
面と共に説明を参照していただきたい。
【図1】この発明の概念を表すメモリシステムの基本的
ブロック図。
【図2】図1に示す活動メモリの詳細な機能ブロック
図。
【図3】図2に示すデータ路内で実現する回路の一部の
略図。
【図4】この発明の概念を表す第2メモリシステムの機
能ブロック図。
【符号の説明】
10 カナーバメモリシステム 12 主プロセッサ 14 活動メモリ装置 15 システムデータメモリ 16,17 データバス 18,19 アドレスバス 20 データRAM 22 同報RAM 24 制御器 26 データ路 28 行アドレス復号回路 30 行アドレスマルチプレクサ 32 第1段復号(列アドレス)回路 33 マルチプレクサ 34 列アドレスマルチプレクサ 36 入力/出力回路 38 内部バス 40 行アドレス復号回路 42 行アドレスマルチプレクサ 44 第1段(列)復号回路 45 マルチプレクサ 46 行アドレスマルチプレクサ 48 入力/出力回路 50 内部バス 52 排他的ORゲート 54 計数/比較回路
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成6年8月19日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正内容】
【書類名】 明細書
【発明の名称】 カナーバメモリを作る装置、システ
ム、方法
【特許請求の範囲】
【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は一般にディジタルメモ
リに関し、より詳しくはカナーバメモリを作る装置、シ
ステム、方法に関する。
【0002】
【従来の技術】カナーバメモリ・システムはランダムア
クセスメモリ・システムであって、一般に100から1
0,000ビットの範囲の長いアドレスを用いて、情報
を記憶し検索する。最も重要なことは、カナーバメモリ
は連想的であって記憶位置を正確にアドレスする必要が
ないことである。アドレス空間は多数のキーアドレスに
分割される。キーアドレスのハンミング距離(ハミング
距離とは、二つのNビットの二進ベクトルの間のビット
位置の数)内にある1組のアドレスはそのキーアドレス
を「活動状態」にするので、そのキーアドレスに関連す
る記憶要素にアクセスすることができる。ハミング距離
(すなわち捕捉半径)はキーアドレス毎に違ってよい。
各記憶要素は一連の多ビットカウンタすなわちレジスタ
を備え、それぞれは代表的に2−8二進ビットで表す符
号付き整数としてデータを記憶する。記憶/検索するデ
ータ語内の各ビット位置に対して、各要素にカウンタす
なわちレジスタを1個設ける。
【0003】アクセスを要求する実際のアドレスをカナ
ーバメモリが受けると、どのキーアドレスが活動状態か
を決定する検査を行う。読み出し操作中は多数のキーア
ドレスが活動状態になってよく、アクセスした対応する
記憶要素から検索したデータについて最もよい平均値が
決まる。アクセスした記憶要素に書き込み中は、要素に
書き込み中のデータ語の所定のビット位置で論理1であ
れば対応するカウンタを増分し、所定のビット位置で論
理0であれば対応するカウンタを減分する。
【0004】
【発明が解決しようとする課題】カナーバメモリ・シス
テムは、パターン認識やパターン分類などの連想メモリ
を必要とする多くのデータ処理の応用において有用であ
る。従って高速で簡単で安価なカナーバメモリを作る必
要が生じた。
【0005】
【課題を解決するための手段】この発明の実施態様は、
プロセッサと、このプロセッサに結合する活動メモリ
(active memory)を備えるメモリシステ
ムである。活動メモリは、複数の可能アドレスを記憶す
る第1メモリと、プロセッサから受ける実際のアドレス
を記憶する第2メモリを備える。第1メモリに記憶する
可能アドレスから少なくとも一つの活動アドレスを、第
2メモリに記憶する実際のアドレスの関数として識別す
る識別回路を備える。
【0006】この発明の別の実施態様は、プロセッサ
と、このプロセッサに結合する活動メモリを備えるメモ
リシステムである。活動メモリは複数の可能アドレス
と、各アドレスに関連するデータとを記憶するデータメ
モリを備える。また、プロセッサから受ける実際のアド
レスを記憶する同報(broadcasting)メモ
リを備える。活動メモリは、データメモリに記憶するア
ドレスから、同報メモリに記憶する実際のアドレス語の
ハミング距離内にある活動アドレスを識別する回路を備
える。更に活動メモリは、活動アドレスおよび制御器に
関連し、かつデータメモリ内に記憶するデータにアクセ
スする回路を備える。制御器は、識別のためにアドレス
語をデータメモリから回路に移す動作と、識別のために
実際のアドレスを同報メモリから回路に移す動作を制御
する。
【0007】この発明の実施態様は、多くのデータ処理
の応用において有用である。詳しくいうと、この発明の
実施態様は、高速で簡単で安価なカナーバメモリを作る
のに有用である。
【0008】
【実施例】この発明の望ましい実施態様とその利点は、
図1から図4を参照すれば最もよく理解できる。各図の
同じまたは対応する部分には同じ数字を用いる。
【0009】図1は、この発明の概念を表すカナーバメ
モリシステム10のブロック図である。カナーバメモリ
システム10は、主プロセッサ12と活動メモリ14と
システムデータメモリ15を備える。主プロセッサ12
は、データバス16を通して活動メモリ装置14と、ま
たバス17を通してシステムデータメモリ15とデータ
を交換する。以下に説明するように、バス16で交換す
る「データ」は、主としてシステムデータメモリ15へ
のアドレスである。読み出し/書き込みアドレスは、ア
ドレスバス18を通して活動メモリ14に送る。活動メ
モリ14から検索したアドレスは、アドレスバス19を
通してシステムデータメモリ15に送る。システム10
内の各活動メモリ14は、選択した従来の(「不活
動」)メモリユニット(例えば28ピンのピン出力)の
ピン構成と互換性のあるピン構成を持つことが望まし
い。こうすれば、活動メモリ14と従来の不活動メモリ
は、所定のボードまたはその他の支持構造体上で交換す
ることができる。
【0010】一般に主プロセッサ12は、データメモリ
15への多数の可能アドレスを活動メモリ装置14に記
憶する。可能アドレスはランダムに選択してよく、また
メモリ装置14で形成するメモリの大きさに従って、そ
の数は1,000から1,000,000アドレスであ
ってよい。システムデータメモリ15内の位置へのアク
セス要求が来ると、主プロセッサ12は実際のアドレス
を活動メモリ14に送る。活動メモリ14は記憶したア
ドレスを循環して、システム10が受けたアドレスの中
でハミング距離内にあるのはどれかを識別し、記憶して
いる可能アドレスの中でどれが活動アドレスかを決定す
る。次に、主プロセッサ12は識別した活動アドレスを
用いて、データメモリ15のアドレスにアクセスする。
【0011】読み出し要求中は、データメモリ15内の
各活動アドレスのアクセスした位置から検索したデータ
を主プロセッサ12に送り、主プロセッサ12はデータ
を蓄積し、しきい値と比べ、実際のアドレスに対応する
結果を出す。書き込み中は、プロセッサ12はデータバ
ス17にデータを送って、データバス17の各ビットに
対応するシステムデータメモリ15内のカウンタ(すな
わちレジスタ)を増分しまたは減分することにより、ア
ドレス位置にある現在の記憶したデータを変更する。
【0012】図2は、この発明の概念を表す活動メモリ
14の機能ブロック図である。活動メモリ14は一つの
チップまたはモジュール(「装置」)として作ってよ
く、データ・ランダムアクセスメモリ20(RAM)、
同報RAM22、制御器24、データ路26を備える。
一つのチップにしたときは、データRAM20と同報R
AM22は所定の装置において標準的な構成で作ってよ
く、制御器24とデータ路26は所定の装置または装置
の一部において動作の要求を満たすように特別に作って
よい。
【0013】データRAM20は、スタティック・ラン
ダムアクセスメモリ(SRAM)またはダイナミック・
ランダムアクセスメモリ(DRAM)配列でよい。図2
では、RAM20は128行128列に配置した2kx
8メモリのRAMセルとして表している。図2に示す構
成の他に、この技術でよく知られているように、多数あ
る別の任意のRAM構成を用いてもよい。データRAM
20に関連して、配列内の選択したセルとデータを授受
して読み出しおよび書き込みを行う読み出し/書き込み
回路があり、行アドレス復号回路28、行アドレスマル
チプレクサ30、第1段復号(列アドレス)回路32、
列アドレスマルチプレクサ34、入力/出力回路36を
備える。
【0014】マルチプレクサ30は、システムアドレス
バス18または制御器24から行アドレス回路28にア
ドレスビットを通す。この選択は、離散信号に応答する
かまたはアドレス自身の値に応答して行われる。同様
に、マルチプレクサ34は、アドレスバス18からまた
は制御器24からのアドレスビットを通す。マルチプレ
クサ30と34と入力/出力回路36により、データR
AMのセルはデータバス16とアドレスバス18を用い
てCPU12との間で、または内部バス38を用いてデ
ータ路26との間で、データのビットを移動する。
【0015】図2の実施態様において、第1段復号器3
2はマルチプレクサ33を用いて4隣接ビット線の各組
を多重通信して、32ビット幅の内部バス38を形成す
る。I/O回路36は4対1マルチプレクサを備え、こ
のマルチプレクサはアドレスバス18からのアドレスビ
ットに応答して、32ビットの内部バス38上の4組の
8隣接ビットから1組を選択して、システムデータバス
16で送る。別の実施態様の第1段復号器32と入力/
出力回路36の構成は、内部バス38の幅、データRA
M20の構成、システムデータバス16と通信する線
(ビット)の数などの要因により変わることに注意され
たい。
【0016】同報RAM22もスタティックかダイナミ
ックでよく、同様にメモリセル配列とデータを授受して
書き込みおよび読み出しを行う読み出し/書き込み回路
と関連し、行アドレス回路40、行アドレスマルチプレ
クサ42、第1段(列)復号回路44、マルチプレクサ
46、入力/出力回路48を備える。図2では、同報R
AM22は2行128列の構成にしているが、別の実施
態様では別の行/列構成を用いてよい。同報RAM22
に関連する読み出し/書き込み回路は、データRAM2
0に関連する読み出し/書き込み回路と同様に動作す
る。
【0017】第1段復号回路44は、同報RAM22内
の128列メモリセルの各4隣接列を4対1で多重通信
を行うマルチプレクサ45を備え、選択した32ビット
で第2内部バス50を通してデータ路26に結合する。
マルチプレクサ42と46は、システムアドレスバス1
8または制御器24からのアドレスビットを選択的に通
す。従って、マルチプレクサ42と46と入力/出力回
路48により、同報RAM22のセルはCPU12との
間で、またはデータ路26を通して制御器24との間
で、データを移動する。
【0018】データRAM20に関連する対応する読み
出し/書き込み回路と同様に、行アドレス復号回路4
0、マルチプレクサ42と46、第1段復号回路44、
入力/出力回路48の構成は、同報RAM22のセル配
列内の行と列の数、内部バス50の幅、システムアドレ
スバス18から受けるビットの数、システムデータバス
16と通信するビット(線)の数などの要因により変わ
る。
【0019】更に、データバス16と、データRAM2
0に関連する入力/出力回路36および同報RAM22
に関連する入力/出力回路48との結合は、従来のメモ
リピン出力と互換性のある1組のピン(D0−D7)に
よって行うことが望ましい。同様に、データRAM20
と同報RAM22に関連する読み出し/書き込み回路の
結合は、1組のピン(図示せず)によって行ってよい。
活動メモリ14はシステムメモリの一部なので、メモリ
14はメモリチップの特性を持つことが望ましい。言い
換えると、メモリ14はメモリチップのように効率的
で、寸法が小さく、従来の(「不活動の」)メモリチッ
プのピン構成と互換性のある最小数のデータおよびアド
レスピンを用いなければならない。
【0020】データ路26はランダム論理、プログラム
可能ゲート配列回路、プログラム可能論理配列回路を用
い、所望の計算機能を実行するようにチップまたはユニ
ットを必要に応じて特別に作ってよい。更に制御器24
とデータ路26は、共にディジタル信号処理回路で作っ
てよい。一例として、テキサスインスツルメント社TI
−320ファミリのディジタル信号プロセッサがある。
【0021】望ましい実施態様のシステム10におい
て、活動メモリ14がシステムアドレスバス18から受
ける対応する数のアドレスビットに対して、各同報RA
M22は利用可能な最高のアドレス空間に置く。これに
より、各同報RAM22はチップ選択信号なしに書き込
みまたは読み出しができる。更にシステム10内の活動
メモリ14の全ての同報RAM22に同時にアクセスす
ることができる。
【0022】例示のカナーバメモリの実施態様では、主
プロセッサはデータバス16とアドレスバス18を用い
て、多数のランダムに選択したアドレスをデータRAM
20にロードする。これらのアドレスの長さは100か
ら10,000ビットの範囲でよい。図示の32ビット
構成では、内部バス38とマルチプレクサ33を通して
32ビット語として循環する。システムデータメモリ1
5へのアクセス要求があると、主プロセッサ12は実際
のアドレスを同報RAM22に書き込む。同報RAM2
2がプロセッサ12から受けて保持している制御命令に
より、制御器24はデータRAM20に保持するアドレ
スを循環的に検索する。
【0023】アドレスをデータRAM20から検索する
際に、どのデータが同報RAM22に保持する実際のア
ドレスのハミング距離内(すなわち活動状態)にあるか
をデータ路26は決定する。次に主プロセッサ12は識
別した活動アドレスをデータRAM20から検索して、
システムメモリ15内の要素にアクセスする。プロセッ
サ12が活動メモリ14をポーリング(poll)して
活動アドレスを周期的に検索してもよいし、または活動
メモリ14がプロセッサ12に割り込んでもよい。
【0024】図3は、データ路26の回路の一つの可能
な実施態様を示す。データ路26はデータRAM20の
どのアドレスが活動アドレスかを決定する。この実施態
様のハミング距離は、複数の排他的ORゲート52と計
数/比較回路を用いて決定する。32ビットの内部バス
38と50とを備える活動メモリ装置14には、32ビ
ットの排他的ORゲート52を用いる。
【0025】内部バス38と内部バス50から来る対応
する1対の線AとBは、各ゲート52の入力に接続
する。言い換えると、内部バス38からの第1線(A
1)と内部バス50からの第1線(B1)をゲートす
る。以下同じである。データRAM20から検索した各
アドレスについてゲート52からの論理1出力の数を計
数/比較回路54で数えてしきい値と比較し、RAM2
0からのアドレスが実際のアドレスのハミング距離内に
あるかどうかを決定する。
【0026】図4は、カナーバメモリ10の別の実施態
様を示す。この実施態様では、活動メモリ14はシステ
ムメモリとしても動作する。各可能アドレスは、関連す
るデータと共にデータRAMに記憶する。活動アドレス
を識別すると、主プロセッサ12は関連するデータを活
動メモリ14からそのまま検索する。所定の読み出し要
求に対して制御器24がデータRAM20内のアドレス
を循環してその結果多数の活動アドレスが活動状態にな
ると、多数の関連するデータ語が使用可能になる。次に
各活動アドレスからの関連するデータをデータ路26か
プロセッサ12に蓄積する。
【0027】図4の実施態様では活動アドレスを用いて
書き込みを行うため、データ路26によって増分/減分
を行うことができる。活動アドレスに書き込み中に、そ
の活動アドレスに関連するデータを読み出して上に述べ
たように増分し、新しいデータをデータRAM10内の
同じ位置に再び書き込む。
【0028】この発明とその利点について詳細に説明し
たが、特許請求の範囲に定義したこの発明の精神と範囲
から逸れることなく、各種の変更、代替、変形を行うこ
とができるものである。
【0029】以上の説明に関して更に以下の項を開示す
る。 (1) メモリシステムであって、プロセッサと、前記
プロセッサに結合する活動メモリであって、複数の可能
アドレスを記憶する第1メモリと、前記プロセッサから
受ける実際のアドレスを記憶する第2メモリと、前記第
1メモリに記憶する前記可能アドレスの少なくとも一つ
の活動アドレスを、前記第2メモリに記憶する前記実際
のアドレスの関数として識別する回路と、を備える活動
メモリと、を備えるメモリシステム。
【0030】(2) 前記活動メモリは前記少なくとも
一つの活動アドレスを前記プロセッサに与える回路を含
み、前記プロセッサは前記少なくとも一つの活動アドレ
スを持つ関連するシステムメモリをアドレスする、第1
項記載のメモリシステム。 (3) 識別のために前記可能アドレスの前記一つを前
記第1メモリから前記回路に移し、識別のために前記実
際のアドレスを前記第2メモリから前記回路に移す動作
を制御する制御回路を更に含む、第1項記載のメモリシ
ステム。 (4) 識別のための前記回路は、前記実際のアドレス
のハミング距離内の少なくとも一つの前記可能アドレス
を識別することによって前記少なくとも一つの活動アド
レスを識別する、第1項記載のメモリシステム。
【0031】(5) 前記制御回路は、識別のために前
記可能アドレスの前記一つを前記第1メモリから前記回
路に移す第1メモリ読み出し/書き込み回路と、識別の
ために前記実際のアドレスを前記第2メモリから前記回
路に移す第2メモリ読み出し/書き込み回路と、識別の
ために前記可能アドレスの前記一つを前記回路に順次移
す動作と、識別のために前記実際のアドレスを前記回路
に移す動作を制御する、前記第1および第2読み出し/
書き込み回路に結合する制御器と、を備える、第3項記
載のメモリシステム。
【0032】(6) 前記制御器は前記第2メモリに記
憶する制御命令に従って動作する、第5項記載のメモリ
システム。 (7) 前記第1読み出し/書き込み回路に結合して前
記可能アドレスを前記プロセッサから前記第1メモリに
選択的に移す第1入力/出力回路と、前記第2読み出し
/書き込み回路に結合して前記実際のアドレスを前記プ
ロセッサから前記第2メモリに選択的に移す第2入力/
出力回路を更に備える、第5項記載のメモリシステム。 (8) 前記活動メモリを単一装置として作り、前記単
一装置は選択した不活動メモリ装置のピン構成と互換性
のあるピン構成を持つ、第1項記載のメモリシステム。
【0033】(9) カナーバメモリシステムであっ
て、プロセッサと、前記プロセッサから受ける活動アド
レスでそれぞれアクセスすることのできる複数のデータ
記憶要素を備えるシステムデータメモリと、単一装置と
して作る活動メモリであって、前記プロセッサから移す
複数のアドレス語を記憶するデータメモリと、前記アド
レス語を前記データメモリと第1内部バスとの間に選択
的に移すデータメモリ制御回路と、前記プロセッサから
移す制御語と実際のアドレス語を記憶する同報メモリ
と、前記制御語と前記実際のアドレス語を前記同報メモ
リと第2内部バスとの間で選択的に移す同報メモリ制御
回路と、前記データメモリに記憶する前記アドレス語の
一つから、前記同報メモリに記憶する前記実際のアドレ
ス語のハミング距離内にある少なくとも一つの前記活動
アドレスを選択するデータ路と、前記少なくとも一つの
活動アドレス語を前記プロセッサに結合する回路と、前
記同報メモリから検索した前記制御語の一つに応答し
て、前記アドレス語を前記データメモリから前記第1バ
スを通して前記データ路に順次移す動作と、 前記実際
のアドレスを前記第2バスを通してデータ路に移す動作
を制御する制御器と、を備える活動メモリと、を備える
カナーバメモリ。
【0034】(10) 前記アドレス語を前記プロセッ
サから前記第1内部バスを通して前記データメモリに移
す動作を制御するデータメモリ入力/出力回路を更に備
える、第9項記載のカナーバメモリシステム。 (11) 前記実際のアドレス語を前記プロセッサから
前記第2内部バスを通して前記同報メモリに移す動作を
制御する同報メモリ入力/出力回路を更に備える、第9
項記載のカナーバメモリシステム。
【0035】(12) 結合するための前記回路は前記
データメモリ入力/出力回路を備える、第10項記載の
カナーバメモリ。 (13) 結合するための前記回路は前記同報メモリ入
力/出力回路を備える、第11項記載のカナーバメモ
リ。
【0036】(14) メモリシステムであって、プロ
セッサと、前記プロセッナに結合する活動メモリであっ
て、各前記アドレスに関連する複数の可能アドレスとデ
ータを記憶するデータメモリと、前記プロセッサから受
ける実際のアドレスを記憶する同報メモリと、前記デー
タメモリに記憶する前記アドレスから、前記同報メモリ
に記憶する前記実際のアドレス語のハミング距離内にあ
る実際のアドレスを識別する回路と、前記活動アドレス
に関連する前記データメモリに記憶する前記データにア
クセスする回路と、識別のために前記アドレス語を前記
データメモリから前記回路に移す動作と、 識別のため
に前記実際のアドレスを前記同報メモリから前記回路に
移す動作を 制御する制御器と、を備える活動メモリ
と、を備えるメモリシステム。
【0037】(15) 前記データメモリから前記活動
アドレスに関連する前記データを検索する回路を更に備
える、第14項記載のメモリシステム。 (16) 前記プロセッサから受けるデータ語に従って
前記活動アドレスに関連する前記データを書き込み中に
修正する回路を更に備える、第14項記載のメモリシス
テム。
【0038】(17) 書き込み中に修正する前記回路
は、前記プロセッサから受ける対応する論理1に従って
前記活動アドレスに関連するデータの少なくとも1ビッ
トを増分し、前記プロセッサから受ける対応する論理0
に従って前記ビットを減分する、第16項記載のメモリ
システム。 (18) 書き込み中に修正する前記回路は、実際のア
ドレスに関連する前記データの前記ビットを検索し、前
記少なくとも1ビットを増分または減分し、修正した前
記ビットを前記データメモリに書き込む、第17項記載
のメモリシステム。
【0039】(19) カナーバメモリを作る方法であ
って、活動メモリ装置内の第1組の記憶位置に複数の可
能アドレスを記憶し、前記活動メモリ装置内の第2組の
記憶位置に実際のアドレスを記憶し、活動メモリ装置の
回路を用いて、第1組の記憶位置に記憶する複数の可能
アドレスからの活動アドレスを第2組の記憶位置に記憶
する実際のアドレスの関数として識別し、前記活動メモ
リ装置で識別した活動アドレスを用いてシステムデータ
記憶メモリをアドレスする、段階を含む方法。 (20) 活動アドレスを識別する前記段階は、前記実
際のアドレスのハミング距離内にある可能アドレスの一
つを識別する段階を含む、第19項記載の方法。
【0040】(21) プロセッサ12とプロセッサ1
2に結合する活動メモリ装置14を備えるメモリシステ
ム10を提示する。活動メモリ14は、複数の可能アド
レスを記憶する第1メモリ20と、プロセッサ12から
受ける実際のアドレスを記憶する第2メモリ22を備え
る。第1メモリ20に記憶する可能アドレスから少なく
とも一つの活動アドレスを、第2メモリ22に記憶する
実際のアドレスの関数として識別する回路26を提示す
る。
【0041】注意 (C) 版権、*M*テキサスインスツルメント社、1
993年。この発明の資料の開示の一部は、版権保護に
従う材料を含む。この版権およびマスクワークの所有者
は、米国特許および商標局で見ることのできる特許資料
または特許開示、特許ファイルまたは記録を、いかなる
人でも複写することに異議はないが、その他の場合はそ
の版権とマスクワークの全ての権利を保留する。
【0042】関連出願の相互参照 次の共同譲渡の特許と出願を参考文献としてここに示
す。 米国特許出願番号071 、代理
人明細番号32350−714、(TI−1343
8)、「分散処理の装置、システム、方法」、申請、 米国特許出願番号071 、代理
人明細番号32350−715、(TI−1343
9)、「分散処理の装置、システム、方法」、申請、 米国特許出願番号071 、代理
人明細番号32350−717、(TI−1344
1)、「分散信号処理の装置、システム、方法」、申請
【図面の簡単な説明】 この発明とその利点を完全に理解するために、以下の図
面と共に説明を参照していただきたい。
【図1】この発明の概念を表すメモリシステムの基本的
ブロック図。
【図2】図1に示す活動メモリの詳細な機能ブロック
図。
【図3】図2に示すデータ路内で実現する回路の一部の
略図。
【図4】この発明の概念を表す第2メモリシステムの機
能ブロック図。
【符号の説明】 10 カナーバメモリシステム 12 主プロセッサ 14 活動メモリ装置 15 システムデータメモリ 16,17 データバス 18,19 アドレスバス 20 データRAM 22 同報RAM 24 制御器 26 データ路 28 行アドレス復号回路 30 行アドレスマルチプレクサ 32 第1段復号(列アドレス)回路 33 マルチプレクサ 34 列アドレスマルチプレクサ 36 入力/出力回路 38 内部バス 40 行アドレス復号回路 42 行アドレスマルチプレクサ 44 第1段(列)復号回路 45 マルチプレクサ 46 行アドレスマルチプレクサ 48 入力/出力回路 50 内部バス 52 排他的ORゲート 54 計数/比較回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 バサバラジ パワテ アメリカ合衆国テキサス州ダラス,ブレン トリッジ コート 10108 (72)発明者 ジョージ アール.ドッディントン アメリカ合衆国バージニア州マックリー ン,フォレスト ビラ レーン 1566 (72)発明者 ウオーレン エル.ビーン アメリカ合衆国テキサス州オースチン,ジ ョー セイヤーズ アベニュー 5310,ア パートメント 118

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】メモリシステムであって、 プロセッサと、 前記プロセッサに結合する活動メモリであって、 複数の可能アドレスを記憶する第1メモリと、 前記プロセッサから受ける実際のアドレスを記憶する第
    2メモリと、 前記第1メモリに記憶する前記可能アドレスの少なくと
    も一つの活動アドレスを、前記第2メモリに記憶する前
    記実際のアドレスの関数として識別する回路と、を備え
    る活動メモリと、を備えるメモリシステム。
  2. 【請求項2】カナーバメモリを作る方法であって、 活動メモリ装置内の第1組の記憶位置に複数の可能アド
    レスを記憶し、 前記活動メモリ装置内の第2組の記憶位置に実際のアド
    レスを記憶し、 活動メモリ装置の回路を用いて、第1組の記憶位置に記
    憶する複数の可能アドレスからの活動アドレスを第2組
    の記憶位置に記憶する実際のアドレスの関数として識別
    し、 前記活動メモリ装置で識別した活動アドレスを用いてシ
    ステムデータ記憶メモリをアドレスする、段階を含む方
    法。
JP6151411A 1993-05-28 1994-05-30 カナーバメモリを作る装置、システム、方法 Pending JPH07282588A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US069048 1993-05-28
US08/069,048 US5390139A (en) 1993-05-28 1993-05-28 Devices, systems and methods for implementing a Kanerva memory

Publications (1)

Publication Number Publication Date
JPH07282588A true JPH07282588A (ja) 1995-10-27

Family

ID=22086396

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6151411A Pending JPH07282588A (ja) 1993-05-28 1994-05-30 カナーバメモリを作る装置、システム、方法

Country Status (5)

Country Link
US (1) US5390139A (ja)
EP (1) EP0626650A1 (ja)
JP (1) JPH07282588A (ja)
KR (1) KR940026949A (ja)
TW (1) TW256892B (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5528550A (en) * 1993-05-28 1996-06-18 Texas Instruments Incorporated Apparatus, systems and methods for implementing memory embedded search arithmetic logic unit
US5506810A (en) * 1994-08-16 1996-04-09 Cirrus Logic, Inc. Dual bank memory and systems using the same
US5687132A (en) * 1995-10-26 1997-11-11 Cirrus Logic, Inc. Multiple-bank memory architecture and systems and methods using the same
US5844856A (en) * 1996-06-19 1998-12-01 Cirrus Logic, Inc. Dual port memories and systems and methods using the same
US5815456A (en) * 1996-06-19 1998-09-29 Cirrus Logic, Inc. Multibank -- multiport memories and systems and methods using the same
US5787041A (en) * 1996-10-01 1998-07-28 Hewlett-Packard Co. System and method for improving a random access memory (RAM)
US5854761A (en) * 1997-06-26 1998-12-29 Sun Microsystems, Inc. Cache memory array which stores two-way set associative data
US6256709B1 (en) 1997-06-26 2001-07-03 Sun Microsystems, Inc. Method for storing data in two-way set associative odd and even banks of a cache memory
GB0207372D0 (en) * 2002-03-28 2002-05-08 Cogniscience Ltd Digital memory
US20150089127A1 (en) * 2013-09-23 2015-03-26 Kuljit S. Bains Memory broadcast command

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5113507A (en) * 1988-10-20 1992-05-12 Universities Space Research Association Method and apparatus for a sparse distributed memory system
US5208782A (en) * 1989-02-09 1993-05-04 Hitachi, Ltd. Semiconductor integrated circuit device having a plurality of memory blocks and a lead on chip (LOC) arrangement
JPH07109703B2 (ja) * 1989-11-15 1995-11-22 株式会社東芝 半導体メモリ装置

Also Published As

Publication number Publication date
TW256892B (ja) 1995-09-11
US5390139A (en) 1995-02-14
KR940026949A (ko) 1994-12-10
EP0626650A1 (en) 1994-11-30

Similar Documents

Publication Publication Date Title
EP0263924B1 (en) On-chip bit reordering structure
US6892273B1 (en) Method and apparatus for storing mask values in a content addressable memory (CAM) device
US5394541A (en) Programmable memory timing method and apparatus for programmably generating generic and then type specific memory timing signals
US4928260A (en) Content addressable memory array with priority encoder
US20010010057A1 (en) Semiconductor integrated circuit, computer system, data processor and data processing method
US20030076702A1 (en) Semiconductor memory device having first and second memory architecture and memory system using the same
US5848258A (en) Memory bank addressing scheme
US8341328B2 (en) Method and system for local memory addressing in single instruction, multiple data computer system
US20030204674A1 (en) Synchronous dram with selectable internal prefetch size
US5640527A (en) Apparatus and method for address pipelining of dynamic random access memory utilizing transparent page address latches to reduce wait states
JPH03218555A (ja) マルチプロセッサコンピュータシステムおよびデータ通信方法
JPH07282588A (ja) カナーバメモリを作る装置、システム、方法
EP0549218B1 (en) A memory apparatus and method for use in a data processing system
US4764896A (en) Microprocessor assisted memory to memory move apparatus
US6408356B1 (en) Apparatus and method for modifying signals from a CPU to a memory card
US5446859A (en) Register addressing control circuit including a decoder and an index register
US5895496A (en) System for an method of efficiently controlling memory accesses in a multiprocessor computer system
US5708839A (en) Method and apparatus for providing bus protocol simulation
US4163288A (en) Associative memory
EP0324535A2 (en) Semiconductor memory
US5873126A (en) Memory array based data reorganizer
US6862654B1 (en) Method and system for using dynamic random access memory as cache memory
US4831625A (en) Easily cascadable and testable cache memory
US7363460B2 (en) Semiconductor memory device having tag block for reducing initialization time
EP0503375B1 (en) Memory device with one-cycle read-modify-write