説明

Exclusive−OR型機能メモリ

【課題】機能メモリのメモリセルに書き込まれたデータと一致検索用のデータとのExclusive-ORを少ない構成素子で演算する。
【解決手段】Exclusive-OR型機能メモリのメモリセル2のデータ蓄積部7に書き込まれたデータと一致検索用のデータとの排他的論理和を演算するに当たり、一致検索用のデータが真の値である場合、データ蓄積部7に書き込まれたデータを、正論理と負論理のうちの一方のデータとして読み出し、一致検索用のデータが偽の値である場合、データ蓄積部7に書き込まれたデータを、その他方のデータとして読み出す。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データベース、人工知能、画像処理、文字列処理等で重要な検索や一致/不一致の問題を解くExclusive-OR型機能メモリ及びその読出し方法に関するものである。なお、本明細書中、Exclusive-OR型機能メモリとは、Exclusive-OR(排他的論理和)の演算を行う機能メモリを意味するものとする。
【背景技術】
【0002】
機能メモリ(Functional Memory)は、記憶素子に演算回路を付加して、単なる記憶だけでなく各種の演算を並列に行うことができるようにしたものである。この種のメモリに関連する分類としては、前記の他に、連想記憶(Associative Memory)、論理付き記憶(Logic in Memory)、分布論理記憶(Distributed Logic Memory)等がある。また、機能メモリの一種に連想記憶があり、これには、内容アドレスメモリ(Content Addressable Memory)、データアドレスメモリ(Data Address Memory)、探索メモリ(Search Memory)等と呼ばれ、これらの分類には諸説がある。
【0003】
この種のメモリのハードウェアの歴史は大変古く、1956年に発表されたShade とMcMahon の"The Cryotron Catalog Memory System"に始まるとされている。しかしながら、これらの研究や開発に関する歴史にも諸説があることを付け加えておく。
【0004】
次いで、磁気コア(1961年)などの磁気を利用したものや半導体のフリップフロップ回路(E.S.Lee;1963年)と一致検出回路の組合せによるものが試みられた。しかしながら、磁気コアを用いたものは、主記憶と同じ電流一致方式による選択制御を行うので、破壊読出しと非破壊読出しの制御が困難であり、結果的には速度の遅い破壊読出しを行う必要があったので検索速度が遅く、量産化されていない。その外には、磁気を用いたものに磁気バブルを用いたものが研究された時期もあった。
【0005】
現在では、半導体集積回路のSRAM(Static Random Access Memory) やDRAM(Dynamic Random Access Memory)と一致検出回路を組み合わせたものが実用化されている。しかしながら、SRAMやDRAM自体に比べてトランジスタ数が増加することやそれに伴う記憶容量の減少が問題で小容量のものに留まっている。例えば、(1)仮想記憶システムのアドレス変換(2)キャッシュメモリのメモリマッピングの高速化(3)記号アドレスの変換が実用化されている。
【0006】
近年、フラッシュメモリの技術を用いた構成素子が少なく大容量なものが実用化されつつあるが、データの書込み速度が十分でなく、DRAMやSRAMと同様の高速かつ大容量のものが実現されるには至っていない。
【0007】
また、機能メモリ素子の配列からWPBP(Word Parallel Bit Parallel)方式とWPBS(Word Parallel Bit Serial)方式のものがある。WPBP方式は、1回の命令で全てが演算できるが、集積度が増大するに従ってその構成、演算結果の読出し方式、消費電力等から適切に分割して演算するのが現実的である。
【発明の開示】
【発明が解決しようとする課題】
【0008】
機能メモリは、仮想記憶システムのアドレス変換、キャッシュメモリのメモリマッピングの高速化、記号アドレスの変換等の小規模の用途に加えて、データベース、人工知能、画像処理、大規模のリスト処理、ソーティング、テーブルの処理、データ構造の処理及びパターンの処理等で最も重要な検索や一致/不一致の問題を高速に解くことができる。しかしながら、既に説明したような長い歴史を持つとともにその重要性が指摘されてきたにもかかわらず、特定用途の小規模メモリからの発展がない。
【0009】
一方、主記憶は計算機の発展にとって最も重要な素子であることから半導体ランダムアクセスメモリの研究開発が進み、DRAMの出現によって劇的な進歩を遂げ、既に1個の記憶素子(電荷を蓄積するコンデンサ)と1個のトランジスタで構成されるまでになっている。また、その占有面積も極限まで小さくなってきている。
【0010】
しかしながら、一般に、機能メモリは記憶素子及び演算素子から構成されている。すなわち、記憶素子が、主記憶で用いられるSRAMやDRAMから構成されていることから、素子とそれに伴う占有面積も広くなるので、機能メモリの素子数が常にSRAMやDRAMより多くなり、その占有面積も増大する。また、専用の機能メモリを構成するよりは、大量に生産されるDRAMやSRAMから構成された主記憶と計算機で演算処理した方が汎用性があり、速度を犠牲にしても経済的に処理することができる。これらの事情から、既に説明したような長い歴史を持っているにもかかわらず、機能メモリは主記憶のように発展しなかった。
【0011】
近年、フラッシュメモリの技術を用いた構成素子数が少なく大容量化が可能なものも実用化されつつあるが、この場合でも、構成素子数がDRAMの2倍必要となり、データの書込み速度が十分でなく、DRAMやSRAMと同様の高速かつ大容量のものが実現されるには至っていない。また、フラッシュメモリと同様の記憶素子で複数のしきい値を用いたものも考えられている。
【0012】
これまで説明したように、基本的なものから高機能の演算ができるものまで様々な機能メモリが提案されてきたが、集積化が進行するに従って、機能メモリに要求されることは、
(1)半導体メモリに極力近い構造(1個のトランジスタと1個の記憶素子)
(2)WPBPに近いWPBS動作(データ転送速度や消費電力が許す範囲の並列演算)
(3)単純な演算ができる機能に限定(一致/不一致:排他的論理和演算(すなわち、modulo-2を法とする加法演算))
等に集約されてきつつある。
【0013】
本発明の目的は、機能メモリのメモリセルに書き込まれたデータと一致検索用のデータとのExclusive-ORを少ない構成素子で演算することができるExclusive-OR型機能メモリ及びその読出し方法を提供することである。
【課題を解決するための手段】
【0014】
本発明のうち請求項1記載のExclusive-OR型機能メモリは、
真の値又は偽の値のデータを記憶する複数のメモリセルを有する記憶手段と、
前記メモリセルに記憶すべきデータ及び一致検索用のデータが外部から入力されるデータ入力手段と、
前記メモリセルに記憶すべきデータを、前記メモリセルに個々に又は複数まとめて正論理又は負論理で書き込むデータ書込み手段と、
前記メモリセルから、記憶されたデータを個々に又は複数まとめて読み出すデータ読出し手段と、
記憶されたデータを読み出すべきメモリセル及び記憶すべきデータを書き込むべきメモリセルを選択する読出し及び書き込み選択手段と、
前記データ読出し手段によって読み出されたデータを外部に出力するデータ出力手段とを具え、
前記メモリセルの各々が、記憶すべきデータが書き込まれるデータ蓄積部を有し、
前記データ読出し手段が、
前記一致検索用のデータが1であるとともに前記データ蓄積部に書き込まれたデータが0である場合には、前記メモリセルからの読出しデータを1とし、前記一致検索用のデータが1であるとともに前記データ蓄積部に書き込まれたデータが1である場合には、前記メモリセルからの読出しデータを0とし、
前記一致検索用のデータが0であるとともに前記データ蓄積部に書き込まれたデータが0である場合には、前記メモリセルからの読出しデータを0とし、前記一致検索用のデータが0であるとともに前記データ蓄積部に書き込まれたデータが1である場合には、前記メモリセルからの読出しデータを1とし、
前記データ蓄積部を、分極方向に応じた真の値又は偽の値のデータを保持する強誘電体又は誘電体としたことを特徴とするものである。
【0015】
本発明のうち請求項1記載のExclusive-OR型機能メモリによれば、図1に示すように、記憶手段1のメモリセル2に記憶すべきデータ及び一致検索用のデータが外部からデータ入力手段3に入力されると、読出し及び書込み選択手段4は、このデータを書き込むべきメモリセル2のうちの少なくとも一つを選択する。その後、データ書込み手段5は、個々に又は複数まとめて選択されたメモリセル2に、記憶すべきデータを正論理又は負論理で書き込む。
【0016】
また、一致検索用のデータ及び部分検索のためのフラグが与えられた読出し及び書込み選択手段4によって読み出すべきメモリセル2が選択されると、データ読出し手段6は、真の値の一致検索用のデータを読み出した場合、その一致検索用のデータに対応するメモリセル2のデータ蓄積部7に書き込まれたデータを、正論理と負論理のうちの一方のデータとして読み出し、偽の値の一致検索用のデータを読み出した場合、その一致検索用のデータに対応するデータ蓄積部7に書き込まれたデータを、その他方のデータとして読み出す。読み出されたデータは、データ出力手段8によって外部に出力される。
【0017】
このように一致検索用のデータの真又は偽の値に応じてデータ蓄積部7に書き込まれたデータを正論理又は負論理のデータとして読み出すことによって、メモリセル2が別の排他的論理和演算回路を有することなく、データ蓄積部7に書き込まれたデータと一致検索用のデータとの排他的論理和を演算することができるようになる。
【0018】
また、データ蓄積部7(図1)を、分極方向に応じた真の値又は偽の値のデータを保持する強誘電体又は誘電体とすることによって、分極方向に応じて真及び偽の値のデータを決定して1ビットの記憶を行うことができる。
【0019】
更に詳しく説明すると、一致検索用のデータが真の値である場合、データ蓄積部に書き込まれたデータを正論理と負論理のうちの一方のデータとして読み出す。例えば、データの真の値を1とするとともに偽の値を0とした正論理で表現する。すなわち、データ蓄積部に正論理で書き込まれたデータを正論理で読み出すと、一致検索用のデータが1であるとともにデータ蓄積部に書き込まれたデータが0である場合には、メモリセルからの読出しデータ(すなわち、演算結果)を1とし、一致検索用のデータが1であるとともにデータ蓄積部に書き込まれたデータが1である場合には、メモリセルからの読出しデータを0とする。
【0020】
それに対して、一致検索用のデータが偽の値である場合、データ蓄積部に書き込まれたデータをその他方のデータとして読み出す。同様にデータの真の値を0とするとともに偽の値を1とした負論理で表現すると、一致検索用のデータが0であるとともにデータ蓄積部に書き込まれたデータが0である場合には、メモリセルからの読出しデータを0とし、一致検索用のデータが0であるとともにデータ蓄積部に書き込まれたデータが1である場合には、メモリセルからの読出しデータを1とする。
【0021】
このように一致検索用のデータの真又は偽の値に応じてデータ蓄積部に書き込まれたデータを正論理又は負論理のデータとして読み出すことによって、メモリセルが別の排他的論理和演算回路を有することなく、Exclusive-OR型機能メモリのメモリセルのデータ蓄積部に書き込まれたデータと一致検索用のデータとの排他的論理和を演算することができるようになる。なお、一方、データの真の値を0とするとともに偽の値を1とした負論理で表現すると、すなわち、データ蓄積部に負論理で書き込まれたデータを負論理で読み出しても、同様の結果が得られる。また、本明細書中、データ蓄積部に正論理で書き込まれたデータを正論理で読み出すこと及びデータ蓄積部に負論理で書き込まれたデータを負論理で読みだすことを「肯定的に読み出す」と定義し、データ蓄積部に正論理で書き込まれたデータを負論理で読み出すこと及びデータ蓄積部に負論理で書き込まれたデータを正論理で読みだすことを「否定的に読み出す」と定義する。
【0022】
本発明のうち請求項2記載のExclusive-OR型機能メモリは、
真の値又は偽の値のデータを記憶する複数のメモリセルを有する記憶手段と、
前記メモリセルに記憶すべきデータ及び一致検索用のデータが外部から入力されるデータ入力手段と、
前記メモリセルに記憶すべきデータを、前記メモリセルに個々に又は複数まとめて正論理又は負論理で書き込むデータ書込み手段と、
前記メモリセルから、記憶されたデータを個々に又は複数まとめて読み出すデータ読出し手段と、
記憶されたデータを読み出すべきメモリセル及び記憶すべきデータを書き込むべきメモリセルを選択する読出し及び書き込み選択手段と、
前記データ読出し手段によって読み出されたデータを外部に出力するデータ出力手段とを具え、
前記メモリセルの各々が、記憶すべきデータが書き込まれるデータ蓄積部を有し、
前記データ読出し手段が、
前記一致検索用のデータが1であるとともに前記データ蓄積部に書き込まれたデータが0である場合には、前記メモリセルからの読出しデータを0とし、前記一致検索用のデータが1であるとともに前記データ蓄積部に書き込まれたデータが1である場合には、前記メモリセルからの読出しデータを1とし、
前記一致検索用のデータが0であるとともに前記データ蓄積部に書き込まれたデータが0である場合には、前記メモリセルからの読出しデータを1とし、前記一致検索用のデータが0であるとともに前記データ蓄積部に書き込まれたデータが1である場合には、前記メモリセルからの読出しデータを0とし、
前記データ蓄積部を、分極方向に応じた真の値又は偽の値のデータを保持する強誘電体又は誘電体としたことを特徴とするものである。
【0023】
この場合も、メモリセルが別の排他的論理和演算回路を有することなく、Exclusive-OR型機能メモリのメモリセルのデータ蓄積部に書き込まれたデータと一致検索用のデータとの排他的論理和を演算することができるようになり、データ蓄積部7(図1)を、分極方向に応じた真の値又は偽の値のデータを保持する強誘電体又は誘電体とすることによって、分極方向に応じて真及び偽の値のデータを決定して1ビットの記憶を行うことができる。
【発明を実施するための最良の形態】
【0024】
本発明によるExclusive-OR型機能メモリ及びその読出し方法の実施の形態を、図面を参照して詳細に説明する。図2は、本発明によるExclusive-OR型機能メモリを示す図である。このExclusive-OR型機能メモリは、真の値又は偽の値のデータを記憶する行列配置された複数のメモリセル及びその周辺部(いずれも図示せず)を有する記憶部9と、制御部10、ワード処理部11及びデータ処理部12を有する一致/不一致検出可能な処理部13とを具える。
【0025】
制御部10は、外部の計算機及び/又は各種の機器(いずれも図示せず)に接続した制御線14を通じた制御命令によって、記憶部9、ワード処理部11及びデータ処理部12の動作を制御する。
【0026】
ワード処理部11は、アドレスデコーダ部11a、演算結果処理部11b及び演算結果レジスタ11cを有する。アドレスデコーダ部11aは、外部の計算機及び/又は各種の機器(いずれも図示せず)に接続したアドレス線15を通じてアドレスを受け取り、これを復号化して記憶部9のメモリセル(図示せず)のアドレスが選択できるようにする。演算結果レジスタ11cは、記憶部9のメモリセルのアドレス方向から一度に、又は複数に分けて、又は単数でワード単位で得られた排他的論理和の演算結果(この演算については後に説明する。)を保持し、演算結果処理部11bから参照できるようにする。演算結果処理部11bは、演算結果の読出しの変化を検出し又はカウントして、演算結果レジスタ11cに得られた一致/不一致の演算結果を、一致検出回路(図示せず)を用いて全体の一致/不一致の答えを得る。その答えは、演算結果線16を通じてデータ処理部12に伝送され、データ線17を通じて外部に答えを送る。
【0027】
データ処理部12は、データレジスタ12a及びマスクレジスタ12bを有し、データ線17から入力されたデータ及びマスクをデータレジスタ12a及びマスクレジスタ12bにそれぞれセットし、書込みの際にはデータ選択線(図示せず)の対をデータに対応させてワード処理部11からのアドレス選択信号に従って書込み動作を行う。
【0028】
図3は、本発明による他のExclusive-OR型機能メモリを示す図である。このExclusive-OR型機能メモリは、一致/不一致検出可能であり、排他的論理和(Exclusive-OR)、すなわち、modulo-2を法とする加法の演算結果を処理し、一致/不一致の箇所の特定やそのアドレスや参照ポインタを答えるなどの複雑な動作が可能である。
【0029】
このExclusive-OR型機能メモリも、真の値又は偽の値のデータを記憶する行列配置された複数のメモリセル及びその周辺部(いずれも図示せず)を有する記憶部18と、制御部19、ワード処理部20及びデータ処理部21を有する一致/不一致検出可能な処理部22とを具える。なお、記憶部18及び制御部19は、図2の記憶部9及び制御部10と同様な構成及び動作を有する。
【0030】
ワード処理部20は、アドレスデコーダ/アドレスエンコーダ部20a、演算結果処理部20b及び演算結果レジスタ20cを有する。アドレスデコーダ/アドレスエンコーダ部20aは、外部の計算機及び/又は各種の機器(いずれも図示せず)に接続したアドレス線23を通じてアドレスを受け取り、これを復号化して記憶部18のメモリセルのアドレスが選択できるようにするとともに、アドレスに対応した参照ポインタを得てそれを符号化して、アドレス線23又は演算結果線24を通じたデータ線25から答えを送り出す。また、演算結果処理部20bは、演算結果レジスタ20cの演算結果を分離して、一致/不一致のアドレスを特定する。
【0031】
データ処理部21は、データレジスタ21a及びマスクレジスタ21bを有する。データレジスタ部21aはn個のデータレジスタ21a−1〜21a−nを有し、記憶部18の被演算データを読み出し、それを交換し又は変更する。
【0032】
図4は、本発明によるExclusive-OR型機能メモリの第1の記憶部を示す図である。この記憶部は、図2及び3の記憶部9及び18に対応するものであり、行列配置された複数のメモリセル26と、ワード処理部11(図2)又は20(図3)から受け取ったアドレス選択信号に応じてアドレスを選択するアドレス選択部27と、このアドレス選択部27の選択に応じてメモリセル26に書き込むべきデータを書き込むデータ書込み部28と、後に説明するような演算結果及びアドレスを読み出す演算結果/アドレス読出し部29とを有する。なお、メモリセル26に書き込むべきデータはデータ処理部12(図2)又は21(図3)から供給され、演算結果/アドレス読出し部29は、メモリセル26を1ワード単位として後に説明するようにして演算することによって変化を一度に、又は複数に分けて、又は単数で検出し又はカウントして演算結果をアドレスの集合として集め、それをワード処理部11(図2)又は20(図3)に供給する。
【0033】
図5は、本発明によるExclusive-OR型機能メモリの第2の記憶部を示す図である。図2及び3の記憶部9及び18に対応するこの記憶部は、行列配置された複数のメモリセル30と、ワード処理部11(図2)又は20(図3)から受け取ったアドレス選択信号に応じてアドレスを選択するアドレス選択部31と、このアドレス選択部31の選択に応じてメモリセル30に書き込むべきデータを書き込むデータ書込み部32と、後に説明するような演算結果及びデータを読み出す演算結果/データ読出し部33とを有する。なお、メモリセル30に書き込むべきデータもデータ処理部12(図2)又は21(図3)から供給され、演算結果/データ読出し部33は、メモリセル26を各1ワードを構成するビット単位の集合として変化を一度に、又は複数に分けて、又は単数で検出し又はカウントして演算結果を集め、それをデータ処理部12(図2)又は21(図3)に供給する。
【0034】
図6は、本発明によるExclusive-OR型機能メモリの第3の記憶部を示す図である。図2及び3の記憶部9及び18に対応するこの記憶部は、行列配置された複数のメモリセル34と、ワード処理部11(図2)又は20(図3)から受け取ったアドレス選択信号に応じてアドレスを選択するアドレス選択部35と、このアドレス選択部35の選択に応じてメモリセル34に書き込むべきデータを書き込むデータ書込み部36と、後に説明するような演算結果及びアドレスを読み出す演算結果/データ読出し部37と、後に説明するような演算結果及びデータを読み出す演算結果/データ読出し部38とを有する。なお、メモリセル34に書き込むべきデータもデータ処理部12(図2)又は21(図3)から供給され、演算結果/アドレス読出し部37は、メモリセル26を1ワード単位として後に説明するようにして演算することによって変化を一度に、又は複数に分けて、又は単数で検出し又はカウントして演算結果をアドレスの集合として集め、それをワード処理部11(図2)又は20(図3)に供給し、演算結果/データ読出し部38は、メモリセル26を各1ワードを構成するビット単位の集合として変化を一度に、複数に分けて又は単数で検出し又はカウントして演算結果を集め、それをデータ処理部12(図2)又は21(図3)に供給する。この場合、演算結果/アドレス読出し部37及び演算結果/データ読出し部38を設けることによって、複雑な演算結果の高速処理を可能にする。
【0035】
図7は、図5の記憶部の一例を示す図であり、これを用いて本発明によるExclusive-OR型機能メモリ及びその読出し方法の動作の一例を説明する。なお、図7において、図5と同様の符号を用いるが、簡単のためにメモリセル30を一つのみ示した。
【0036】
本例では、メモリセル30は、NMOSトランジスタ39と、それに接続した導線を巻回することによって磁気回路を構成する(例えば、集積化するには環状に磁化できる構造を有する)強磁性体40(例えば、パーマロイ)とを有する。
【0037】
データ書込み部32は、単数又は複数のメモリセル30からなる行又は列をワードと呼ばれる単位としてこれに付けられた番地に書込みを行うに当たり、単数又は複数のビットからなるデータを準備し、記憶すべきメモリセル30をアドレス選択部31によって選択し、そのデータを、NMOSトランジスタ39のソース及びドレインが接続されたデータ線41a及び41bを通じて強磁性体40に書き込む。また、読出し動作の際には、データ書込み部32をデータ読出しの電源として、電流をデータ線41a及び41bに供給し、読み出す対象となる単数又は複数のメモリセル30を選択し、読出し動作に備える。
【0038】
演算結果/データ読出し部33は、強磁性体40に巻回した導線を非反転入力部及び反転入力部に接続するとともに出力部をワード処理部11(図2)又は20(図3)に接続したセンスアンプ42を有する。
【0039】
メモリセル30を使用するに先立って、次の表のように初期化する。
【0040】
【表1】

【0041】
なお、この場合、データの真の値を1とするとともに偽の値を0とした正論理で表現する。また、通常、メモリセル30の動作は、強磁性体40に書き込んだデータの論理と読み出したときのデータの論理が同一になるものとして説明する。この正論理で表現されたデータを、次の表に示すような書込み動作で強磁性体40に記憶する。
【0042】
【表2】

【0043】
なお、読出し動作については、メモリセル30に記憶されたデータが読み出せるように書込み動作の逆に強磁性体40を駆動し、次の表のようにして行う。
【0044】
【表3】

【0045】
また、データの読出しには破壊読出しと非破壊読出しとがあるが、破壊読出しを行うと読出しと同時に記憶内容が破壊されるので、読出し後には再書込みを行って記憶内容を復元する必要がある。このような再書込みは次の表のようにして行う。
【0046】
【表4】

【0047】
次に、Exclusive-OR演算動作について説明する。先ず、強磁性体40に書き込まれたデータを肯定的に読み出す場合、すなわち、強磁性体40に正論理で書き込まれたデータを正論理のデータとして読み出す場合、次の表のようになる。
【0048】
【表5】

【0049】
なお、破壊読出し動作の場合、次の表のような再書込み動作が必要となる。
【0050】
【表6】

【0051】
次に、強磁性体40に書き込まれたデータを否定的に読み出す場合、すなわち、強磁性体40に正論理で書き込まれたデータを負論理のデータとして読み出す場合、次の表のようになる。
【0052】
【表7】

【0053】
なお、破壊読出し動作の場合、次の表のような再書込み動作が必要となる。
【0054】
【表8】

【0055】
一方、強磁性体40に記憶された内容を肯定的に読み出す方法と否定的に読み出す方法とを組み合わせた動作は、次の表に示したExclusive-OR演算と同一である。
【0056】
【表9】

【0057】
したがって、これら肯定的に読み出す方法と否定的に読み出す方法を組み合わせることによって、Exclusive-OR演算を行うことができる。その結果、読出しデータ(演算データ)の真偽に応じて肯定的に読み出す方法又は否定的に読み出す方法が行われ、結果的にExclusive-OR演算がデータ処理部(図示せず)に出力される。
【0058】
次に、強磁性体を用いた場合の肯定的な読出し及び否定的な読出しについて、図8を用いて更に具体的に説明する。読出しデータが真の場合、参照電源43aを有するデータ読出し部44a(図8B)を選択し、端子a(図8A)を端子a’(図8B)に接続するとともに端子b(図8A)を端子b’(図8B)に接続する。強磁性体40’(図8A)が矢印A方向に磁化されている場合、その逆方向の矢印B方向に駆動することによって磁束変化が生じ、それに対して、強磁性体40’(図8A)が矢印B方向に磁化されている場合、その磁化方向と同一の矢印B方向に駆動することによって磁束変化が生じることなく、これによって、誘導される起電力を肯定的に検出器45(図8A)によって“1”,“0”の値を検出する。
【0059】
それに対して、読出しデータが偽の場合、参照電源43b(図8C)を有するデータ読出し部44b(図8C)を選択し、端子a(図8A)を端子a”(図8C)に接続するとともに端子b(図8A)を端子b”(図8C)に接続する。強磁性体40’(図8A)が矢印A方向に磁化されている場合、その磁化方向と同一の矢印A方向に駆動することによって磁束変化が生じることなく、それに対して、強磁性体40’(図8A)が矢印B方向に磁化されている場合、その逆方向の矢印A方向に駆動することによって磁束変化が生じ、これによって、誘導される起電力を否定的に検出器45(図8A)によって“0”,“1”の値を検出する。
【0060】
このようにして、磁化方向A,Bを肯定的読出し方法又は否定的読出し方法によって読み出すことによって、Exclusive-OR演算と同一結果が得られる。
【0061】
次に、図7の記憶部の動作を更に具体的に説明する。ここでは、データの真の値を“1"、例えば5Vとし、偽の値を“0”、例えば0Vとした正論理で表現する。最初に記憶動作について説明すると、強磁性体40、すなわち、メモリセル30にデータを記憶するに当たり、データ書込み部32に理論値1、例えば、5Vが与えられ、これによってデータ書込み部32は、データ線41a及び41bにそれぞれ5V及び0Vの電圧を付与し、アドレス選択部31がメモリセル30を選択する前に又はメモリセル30を選択するのと同時に、データ線41a及び41bにデータとなる電圧又は電荷を加える。
【0062】
アドレス選択部31によってアドレスを選択するために、NMOSトランジスタ39のゲートに、例えば5Vの電圧が印加されると、NMOSトランジスタ39がオンになり、そのソース−ドレイン間に電流が流れ、データ線41a及び41bを通して強磁性体40に供給された電圧又は電流の方向に応じた磁気が、例えば論理値1に対応する矢印C方向に発生する。
【0063】
それに対して、NMOSトランジスタ39をオフにすると、強磁性体40のヒステリシス特性によって強磁性体40には矢印C方向の残留磁束が残り、結果的には論理値1のデータが記憶される。
【0064】
同様に、論理値0の記憶は、データ書込み部32によってデータ線41a及び41bにそれぞれ0V及び5Vの電圧を付与し、論理値1の書込みと逆の論理値0に対応したB方向に強磁性体40が磁化されるように電圧又は電荷を加える。これによって、強磁性体40には論理値0に対応した矢印D方向の残留磁束によるデータが記憶される。
【0065】
次に、読出し動作について説明する。データを肯定的に読み出す場合、記憶したデータと同一の値が読み出せるようにするために、書込みを行ったデータの電圧又は電流の方向と逆に駆動する。例えば、データ線41a及び41bに0V及び5Vをそれぞれ付与し、読出しと同時にアドレス選択してNMOSトランジスタ39をオンにし、強磁性体40を駆動する。これによって、センスアンプ42によって記憶内容を検出することができる。
【0066】
例えば、論理値1が残留磁束として矢印C方向に記憶されている場合には、この磁束を変化させることができるように矢印D方向に磁化させると、その変化が電磁誘導によって起電力として誘起される。その変化をセンスアンプ42で検出することによって記憶内容の論理値1が読み出される。
【0067】
同様に、論理値0が記憶されている場合には、例えば、残留磁束が矢印D方向に記憶されているので、読出しのために矢印D方向に磁束を変化させても残留磁束の変化がなく、したがって、誘起される起電力もなく、センスアンプ42からは論理値0が得られる。ここでは、強磁性体40の残留磁束が破壊されてしまうまで磁束を変化させて読み出す方法を破壊読出し方法といい、残留磁束が破壊されない程度、例えば、破壊読出しに必要な電流又は電圧の約1/2で駆動して読み出した後、磁束をなくすと元の記憶状態に復元する読出し方法を非破壊読出し方法という。
【0068】
なお、データを否定的に読み出す場合、書込み方向と同一方向に、例えば、論理値1を記憶した矢印C方向に強磁性体40を駆動すると磁束の変化がなく、センスアンプ42は、記憶データの否定の論理値0を出力する。それに対して、記憶データの論理値0に相当する残留磁束が例えば矢印D方向に記憶されている場合、磁束の変化が生じ、センスアンプ42からは記憶データの否定の論理値1が得られる。
【0069】
図9は、図4の記憶部の一例を示す図である。なお、図9において、図4と同様の符号を用いるが、メモリセル26を一つのみ示した。本例では、メモリセル26は、NMOSトランジスタ46と、それに接続した導線を巻回することによって磁気回路を構成する強磁性体47とを有する。データ書込み部28は、データ書込み部32(図7)と同様の構成及び動作を有する。演算結果/アドレス読出し部29は、強磁性体47に巻回した導線を非反転入力部及び反転入力部に接続したセンスアンプ48を有し、その非反転入力部をデータ書込み部28に接続し、その反転出力部を参照電源49に接続し、その出力部をワード処理部11(図2)又は20(図3)に接続する。
【0070】
図10は、図6の記憶部の一例を示す図である。なお、図10において、図6と同様の符号を用いるが、メモリセル34を一つのみ示した。本例では、メモリセル34は、NMOSトランジスタ47(図9)に対応するNMOSトランジスタ50と、強磁性体48(図9)に対応する強磁性体51とを有する。演算結果/アドレス読出し部37は、センスアンプ42(図7)に対応するセンスアンプ52と、参照電源43(図7)に対応する参照電源53とを有する。また、演算結果/データ読出し部38は、センスアンプ49(図9)に対応するセンスアンプ54を有する。
【0071】
図11は、図5の記憶部の一例を示す図である。なお、図11において、図5及び9と同様の符号を用いるが、メモリセル30を一つのみ示した。本例では、メモリセル30は、NMOSトランジスタ47(図9)に対応するNMOSトランジスタ55と、強磁性体薄膜56(例えば、パーマロイ)とを有する。
【0072】
この場合、磁化ベクトルの回転によって磁束を反転させるようにしている。したがって、第1の値(例えば、1)を、第1の磁化ベクトルEに対応させるとともに、第2の値(例えば、0)を、第1の磁化ベクトルEの向きと正反対の向きを有する第2の磁化ベクトルFに対応させて、1ビットの記憶を行う。
【0073】
図12は、図4の記憶部の他の例を示す図である。なお、図12において、図4及び7と同様の符号を用いるが、メモリセル26を一つのみ示した。本例では、メモリセル26は、NMOSトランジスタ47(図9)に対応するNMOSトランジスタ57と、不揮発性の強磁性体58と、その記憶を読み出す磁気抵抗素子59とを有する。
【0074】
このような記憶部は、不揮発性の磁気ヒステリシスを利用するものであり、駆動電流又は電圧を制御することによって破壊読出し、非破壊読出し又はその両方を選択できるようにして実現する。なお、破壊読出しを行った場合には再書込みを行う。なお、読出し及び書込み動作については、図7〜12で説明した記憶部と同様にして行われる。
【0075】
図13は、図4の記憶部の他の例を示す図である。なお、図12において、図4及び7と同様の符号を用いるが、メモリセル26を一つのみ示した。本例では、メモリセル26は、NMOSトランジスタ47(図9)に対応するNMOSトランジスタ60と、不揮発性でヒステリシス特性を有する強誘電体61とを有する。
【0076】
次に、強誘電体を用いた場合の肯定的な読出し及び否定的な読出しについて、図14を用いて更に具体的に説明する。読出しデータが真の場合、参照電源62a(図14B)を有するデータ読出し部63a(図14B)を選択し、端子c(図14A)を端子c’(図14B)に接続するとともに端子d(図14A)を端子d’(図14B)に接続し、強誘電体61’(図14A)の電位と参照電源62a(図14B)の電位とを比較し、その差又は等価性を検出器64a(図14B)によって肯定的に検出する。
【0077】
それに対して、読出しデータが偽の場合、参照電源62b(図14C)を有するデータ読出し部63b(図14C)を選択し、端子c(図14A)を端子c”(図14C)に接続するとともに端子d(図14A)を端子d”(図14C)に接続し、強誘電体61’(図14A)の電位と参照電源62b(図14C)の電位とを比較し、その差又は等価性を検出器64b(図14C)によって否定的に検出する。
【0078】
このようにして、強誘電体61’を肯定的読出し方法又は否定的読出し方法によって読み出すことによって、Exclusive-OR演算と同一結果が得られる。なお、図13の記憶部の読出し及び書込み動作は、図7で説明したものと同様にして行われる。すなわち、読出し動作の際には、演算結果/アドレス読出し部29に演算データを設定する。例えば、“0”(肯定的読出し)を設定すると、一方のデータ線がセンスアンプ42の第1のノードに結合され、他方のデータ線がセンスアンプ42の第2のノードに結合される。
【0079】
次いで、参照電源43のスイッチをオンにして比較電位Vrefを発生させるとともに、一方のデータ線と他方のデータ線との平衡をとることによって、読出し経路の平衡をとる。次いで、メモリセル26のワードライン及び参照電源43のスイッチをオンにして、演算を行う。次いで、センスアンプ42のスイッチをオンにして演算結果を読み出し、センスアンプの第1及び第2のノードの状態を確定した後、演算結果を出力する。同様にして、演算データを“1”に設定して否定的に読み出す。また、書込み動作も読出し動作と同様にして行われる。
【0080】
図15は、図5の記憶部の別の例を示す図である。なお、図15において、図5と同様の符号を用いるが、メモリセル30を一つのみ示した。本例では、メモリセル30は、NMOSトランジスタ65a及び65bと、揮発性でヒステリシス特性を有する半導体のFlip/Flop からなるデータ蓄積部66とを具える。なお、図15の記憶部の読出し及び書込み動作は、図7で説明したものと同様にして行われる。
【0081】
本実施の形態によれば、一致検索用のデータの真又は偽の値に応じてデータ蓄積部に書き込まれたデータを正論理又は負論理のデータとして読み出すことによって、メモリセルが別の排他的論理和演算回路を有することなく、Exclusive-OR型機能メモリのメモリセルのデータ蓄積部に書き込まれたデータと一致検索用のデータとの排他的論理和を演算することができるようになる。
【0082】
本発明は、上記実施の形態に限定されるものではなく、幾多の変更及び変形が可能である。例えば、上記実施の形態では、肯定的に読み出すに当たり、強磁性体、強誘電体等に正論理で書き込まれたデータを正論理で読み出した場合についてのみ説明したが、強磁性体、強誘電体等に負論理で書き込まれたデータを負論理で読み出すこともできる。また、否定的に読み出すに当たり、強磁性体、強誘電体等に正論理で書き込まれたデータを負論理で読み出した場合についてのみ説明したが、強磁性体、強誘電体等に正論理で書き込まれたデータを負論理で読み出すこともできる。
【図面の簡単な説明】
【0083】
【図1】本発明によるExclusive-OR型機能メモリの態様を示す図である。
【図2】本発明によるExclusive-OR型機能メモリの実施の形態を示す図である。
【図3】本発明によるExclusive-OR型機能メモリの他の実施の形態を示す図である。
【図4】本発明によるExclusive-OR型機能メモリの第1の記憶部を示す図である。
【図5】本発明によるExclusive-OR型機能メモリの第2の記憶部を示す図である。
【図6】本発明によるExclusive-OR型機能メモリの第3の記憶部を示す図である。
【図7】図5の記憶部の一例を示す図である。
【図8】強磁性体を用いた場合の肯定的な読出し及び否定的な読出しについて説明するための図である。
【図9】図4の記憶部の一例を示す図である。
【図10】図6の記憶部の一例を示す図である。
【図11】図5の記憶部の他の例を示す図である。
【図12】図4の記憶部の他の例を示す図である。
【図13】図4の記憶部の他の例を示す図である。
【図14】強誘電体を用いた場合の肯定的な読出し及び否定的な読出しについて説明するための図である。
【図15】図5の記憶部の別の例を示す図である。
【符号の説明】
【0084】
1 記憶手段
2,26,30,34 メモリセル
3 データ入力手段
4 読出し及び書込み選択手段
5 データ書込み手段
6 データ読出し手段
7 データ蓄積部
8 データ出力手段
9,18 記憶部
10,19 制御部
11,20 ワード処理部
11a アドレスデコーダ部
11b,20b 演算結果処理部
11c,20c 演算結果レジスタ
12,21 データ処理部
12a,21a−1,21−2,...,21a−n データレジスタ
12b,21b マスクレジスタ
13,22 処理部
14 制御線
15,23 アドレス線
16,24 演算結果線
17,25,41a,41b データ線
20a アドレスデコーダ/アドレスエンコーダ部
27,31,35 アドレス選択部
28,32,36 データ書込み部
29,37 演算結果/アドレス読出し部
33,38 演算結果/データ読出し部
39,46,50,55,57,60 NMOSトランジスタ
40,40’,47,51,58 強磁性体
42,48,52,54 センスアンプ
43a,43b,49,53,62a,62b 参照電源
44a,44b,63a,63b データ読出し部
45,64a,64b 検出器
56 強磁性体薄膜
59 磁気抵抗素子
61,61’ 強誘電体
a,b,c,d,a’,b’,c’,d’,a”,b”,c”,d” 端子

【特許請求の範囲】
【請求項1】
真の値又は偽の値のデータを記憶する複数のメモリセルを有する記憶手段と、
前記メモリセルに記憶すべきデータ及び一致検索用のデータが外部から入力されるデータ入力手段と、
前記メモリセルに記憶すべきデータを、前記メモリセルに個々に又は複数まとめて正論理又は負論理で書き込むデータ書込み手段と、
前記メモリセルから、記憶されたデータを個々に又は複数まとめて読み出すデータ読出し手段と、
記憶されたデータを読み出すべきメモリセル及び記憶すべきデータを書き込むべきメモリセルを選択する読出し及び書き込み選択手段と、
前記データ読出し手段によって読み出されたデータを外部に出力するデータ出力手段とを具え、
前記メモリセルの各々が、記憶すべきデータが書き込まれるデータ蓄積部を有し、
前記データ読出し手段が、
前記一致検索用のデータが1であるとともに前記データ蓄積部に書き込まれたデータが0である場合には、前記メモリセルからの読出しデータを1とし、前記一致検索用のデータが1であるとともに前記データ蓄積部に書き込まれたデータが1である場合には、前記メモリセルからの読出しデータを0とし、
前記一致検索用のデータが0であるとともに前記データ蓄積部に書き込まれたデータが0である場合には、前記メモリセルからの読出しデータを0とし、前記一致検索用のデータが0であるとともに前記データ蓄積部に書き込まれたデータが1である場合には、前記メモリセルからの読出しデータを1とし、
前記データ蓄積部を、分極方向に応じた真の値又は偽の値のデータを保持する強誘電体又は誘電体としたことを特徴とするExclusive-OR型機能メモリ。
【請求項2】
真の値又は偽の値のデータを記憶する複数のメモリセルを有する記憶手段と、
前記メモリセルに記憶すべきデータ及び一致検索用のデータが外部から入力されるデータ入力手段と、
前記メモリセルに記憶すべきデータを、前記メモリセルに個々に又は複数まとめて正論理又は負論理で書き込むデータ書込み手段と、
前記メモリセルから、記憶されたデータを個々に又は複数まとめて読み出すデータ読出し手段と、
記憶されたデータを読み出すべきメモリセル及び記憶すべきデータを書き込むべきメモリセルを選択する読出し及び書き込み選択手段と、
前記データ読出し手段によって読み出されたデータを外部に出力するデータ出力手段とを具え、
前記メモリセルの各々が、記憶すべきデータが書き込まれるデータ蓄積部を有し、
前記データ読出し手段が、
前記一致検索用のデータが1であるとともに前記データ蓄積部に書き込まれたデータが0である場合には、前記メモリセルからの読出しデータを0とし、前記一致検索用のデータが1であるとともに前記データ蓄積部に書き込まれたデータが1である場合には、前記メモリセルからの読出しデータを1とし、
前記一致検索用のデータが0であるとともに前記データ蓄積部に書き込まれたデータが0である場合には、前記メモリセルからの読出しデータを1とし、前記一致検索用のデータが0であるとともに前記データ蓄積部に書き込まれたデータが1である場合には、前記メモリセルからの読出しデータを0とし、
前記データ蓄積部を、分極方向に応じた真の値又は偽の値のデータを保持する強誘電体又は誘電体としたことを特徴とするExclusive-OR型機能メモリ。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2006−120321(P2006−120321A)
【公開日】平成18年5月11日(2006.5.11)
【国際特許分類】
【出願番号】特願2006−20835(P2006−20835)
【出願日】平成18年1月30日(2006.1.30)
【分割の表示】特願平10−225649の分割
【原出願日】平成10年8月10日(1998.8.10)
【出願人】(504132272)国立大学法人京都大学 (1,269)