(57)【要約】  類似度を演算する連想メモリにおいて、連想メモリセルの面積を小さくするとともに、リーク電流を抑える技術を提供するため、本発明の連想メモリセルは、複数の電流パスと、入力データに応答して電流パスを選択する論理回路と、複数の電流パスのうち少なくとも一つに設けられ、記憶データを記憶する抵抗変化型不揮発性記憶素子と、を有し、入力データと記憶データとの論理演算結果によって抵抗値が変化する抵抗ネットワークと、抵抗ネットワーク及びマッチ線に接続され、入力データと記憶データとの論理演算結果によって、マッチ線から入力された信号を出力するまでの遅延時間が変化する充放電回路とを備える。
2014208051.tif 000002
【特許請求の範囲】
【請求項１】
複数の電流パスと、前記複数の電流パス及びサーチ線対に接続され、前記サーチ線対から入力する入力データに応答して前記電流パスを選択する論理回路と、前記複数の電流パスのうち少なくとも一つに設けられ、記憶データを記憶する抵抗変化型不揮発性記憶素子とを有し、前記入力データと前記記憶データとの論理演算結果によって抵抗値が変化する抵抗ネットワークと、
前記抵抗ネットワーク及びマッチ線に接続され、前記入力データと前記記憶データとの論理演算結果によって、前記マッチ線から入力された信号を出力するまでの遅延時間が変化する充放電回路とを備える連想メモリセル。
【請求項２】
前記充放電回路は、
ソースが電極端に接続されたＰＭＯＳトランジスタと、ドレインが前記ＰＭＯＳトランジスタのドレインと接続され、ソースが前記抵抗変化型不揮発性記憶素子の一端に接続されたＮＭＯＳトランジスタとを含むＣＭＯＳインバータと、
入力端子が前記ＰＭＯＳトランジスタ及び前記ＮＭＯＳトランジスタのドレインに接続されたインバータとを含み、
前記ＣＭＯＳインバータは、
前記ＰＭＯＳトランジスタのゲートに信号が入力されると、入力された信号に応じてリセット又はプリセットされ、
前記ＮＭＯＳトランジスタのゲートに入力された信号を後段の前記インバータに出力することを特徴とする請求項１に記載の連想メモリセル。
【請求項３】
前記論理回路は、
第１及び第２のＮＭＯＳトランジスタを含み、
前記抵抗変化型不揮発性記憶素子は、
第１及び第２の抵抗変化型不揮発性記憶素子を含み、
前記第１及び第２の抵抗変化型不揮発性記憶素子の一端は、前記充放電回路に含まれる前記ＮＭＯＳトランジスタのソースに接続され、
前記第１及び第２の抵抗変化型不揮発性記憶素子の他端は、それぞれ前記第１及び第２のＮＭＯＳトランジスタのドレインに接続され、
前記第１及び第２のＮＭＯＳトランジスタのソースは接地されることを特徴とする請求項２に記載の連想メモリセル。
【請求項４】
前記論理回路は、
第１及び第２のＮＭＯＳトランジスタを含み、
前記抵抗変化型不揮発性記憶素子の一端は、前記充放電回路に含まれる前記ＮＭＯＳトランジスタのソース及び前記第２のＮＭＯＳトランジスタのドレインに接続され、
前記抵抗変化型不揮発性記憶素子の他端は、前記第１のＮＭＯＳトランジスタのドレインに接続され、
前記第１及び第２のＮＭＯＳトランジスタのソースは接地されることを特徴とする請求項２に記載の連想メモリセル。
【請求項５】
前記抵抗変化型不揮発性記憶素子と磁気的に相互作用できる位置に配置された磁性素子と、
ソース又はドレインの一端子が前記磁性素子の一端に接続されるとともに、ソース又はドレインの他端子が書き込みビット線に接続され、ゲートがワード線に接続された第３のＮＭＯＳトランジスタと、
ソース又はドレインの一端子が前記磁性素子の他端に接続されるとともに、ソース又はドレインの他端子が書き込みビット線に接続され、ゲートがワード線に接続された第４のＮＭＯＳトランジスタとを含む磁性素子部を備える請求項４に記載の連想メモリセル。
【請求項６】
異なる前記連想メモリセル間で共有させるように前記磁性素子を配置する請求項５に記載の連想メモリセル。
【請求項７】
格子状に配置された複数の連想メモリセルと、
第１方向に配置された複数の前記連想メモリセルに接続された複数のサーチ線対と、
第２方向に配置された複数の前記連想メモリセルを直列に接続する複数のマッチ線と、
複数の前記サーチ線対と接続され、演算時に入力データに応じて前記サーチ線対を駆動するカラム側回路と、
複数の前記マッチ線と接続され、複数の前記マッチ線を駆動するロウ側回路と、
複数の前記マッチ線と接続され、複数の前記マッチ線の電位をセンスするセンス回路とを含み、
前記連想メモリセルは、
複数の電流パスと、前記複数の電流パス及び前記サーチ線対に接続され、前記サーチ線対から入力する前記入力データに応答して前記電流パスを選択する論理回路と、前記複数の電流パスのうち少なくとも一つに設けられ、記憶データを記憶する抵抗変化型不揮発性記憶素子とを有し、前記入力データと前記記憶データとの論理演算結果によって抵抗値が変化する抵抗ネットワークと、
前記抵抗ネットワーク及び前記マッチ線に接続され、前記入力データと前記記憶データとの論理演算結果によって、前記マッチ線から入力された信号を出力するまでの遅延時間が変化する充放電回路とを備えることを特徴とする連想メモリ。
【請求項８】
前記ロウ側回路に入力される演算開始信号を入力とし、前記センス側回路に入力されるクロック信号を発生するレプリカ回路を備え、
前記センス回路は、
前記センス回路に入力される前記クロック信号に応じて前記マッチ線の電位をラッチすることを特徴とする請求項７に記載の連想メモリ。
【請求項９】
前記センス回路は、
異なる２つの前記マッチ線の遅延時間を比較し、
一方の前記マッチ線の遅延時間と他方の前記マッチ線の遅延時間との大小関係を検出する比較回路を含むことを特徴とする請求項７に記載の連想メモリ。
【請求項１０】
前記連想メモリは、
前記入力データを入力して前記カラム側回路へ出力するデータ入力用回路と、
複数の前記センス回路から出力された前記入力データのうち少なくとも一部を出力するデータ出力用回路とを有し、
前段の前記連想メモリが備える前記データ出力回路の長手方向と、後段の前記連想メモリが備える前記データ入力回路の長手方向とが互いに向かい合うように配置されることを特徴とする請求項７に記載の連想メモリ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、連想メモリセル及びその連想メモリセルを備えた連想メモリに関する。特に、抵抗変化型不揮発性記憶素子を用いた連想メモリセル及び連想メモリに関する。
【背景技術】
【０００２】
データ間の類似度を演算することは、パターン認識において基本的な演算である。一般的な連想メモリとして、コンテントアドレッサブルメモリ（以下、ＣＡＭと呼ぶ）が広く知られている（ＣＡＭ：Ｃｏｎｔｅｎｔ  Ａｄｄｒｅｓｓａｂｌｅ  Ｍｅｍｏｒｙ）。一般的なＣＡＭでは、入力データと記憶データとが完全に一致しているデータを検索できるものの、似ているデータを検索する用途には利用できない。【０００３】
特許文献１には、データ間の類似度をハードウェアで並列に計算し、最も似ているデータを検索する連想メモリが開示されている。【０００４】
特許文献１の連想メモリは、参照データを保存する保存回路と、参照データと入力データとを比較する比較回路と、比較回路による比較結果に応じたパルスを発生するパルス生成回路とを有する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−７６６８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１の連想メモリでは、保存回路及び比較回路のみを有するＣＡＭセルと比較して、連想メモリセルの面積を小さくすることが困難であるという課題がある。【０００７】
また、特許文献１の連想メモリセルは、ＣＭＯＳ回路で構成されているため、電源を切ってしまうとデータが消失する（ＣＭＯＳ：Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）。そのため、常に電源を投入する必要があり、リーク電流が抑えるのが困難であるという課題がある。【０００８】
本発明の目的は、類似度を演算する連想メモリにおいて、連想メモリセルの面積を小さくするとともに、リーク電流を抑える技術を提供することである。
【課題を解決するための手段】
【０００９】
本発明の連想メモリセルは、複数の電流パスと、複数の電流パス及びサーチ線対に接続され、サーチ線対から入力する入力データに応答して電流パスを選択する論理回路と、複数の電流パスのうち少なくとも一つに設けられ、記憶データを記憶する抵抗変化型不揮発性記憶素子とを有し、入力データと記憶データとの論理演算結果によって抵抗値が変化する抵抗ネットワークと、抵抗ネットワーク及びマッチ線に接続され、入力データと記憶データとの論理演算結果によって、マッチ線から入力された信号を出力するまでの遅延時間が変化する充放電回路とを備える。【００１０】
本発明の連想メモリは、格子状に配置された複数の連想メモリセルと、第１方向に配置された複数の連想メモリセルに接続された複数のサーチ線対と、第２方向に配置された複数の連想メモリセルを直列に接続する複数のマッチ線と、第２方向に配置された複数の連想メモリセルとマッチ線とによって構成されるワード回路と、複数のサーチ線と接続され、演算時に入力データに応じてサーチ線対を駆動するカラム側回路と、複数のマッチ線と接続され、複数のマッチ線を駆動するロウ側回路と、複数のマッチ線と接続され、複数のマッチ線の電位をセンスするセンス回路とを含み、連想メモリセルは、複数の電流パスと、複数の電流パス及びサーチ線対に接続され、サーチ線対から入力する入力データに応答して電流パスを選択する論理回路と、複数の電流パスのうち少なくとも一つに設けられ、記憶データを記憶する抵抗変化型不揮発性記憶素子とを有し、入力データと記憶データとの論理演算結果によって抵抗値が変化する抵抗ネットワークと、抵抗ネットワーク及びマッチ線に接続され、入力データと記憶データとの論理演算結果によって、マッチ線から入力された信号を出力するまでの遅延時間が変化する充放電回路とを備える。
【発明の効果】
【００１１】
本発明によれば、類似度を演算する連想メモリにおいて、連想メモリセルの面積を小さくするとともに、リーク電流を抑えることが可能になる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１の実施形態に係る連想メモリの構成を概略的に示すブロック図である。
【図２】本発明の第１の実施形態に係る連想メモリセルの構成を示すブロック図である。
【図３】本発明の第１の実施形態に係る連想メモリセルの具体的な回路図である。
【図４】本発明の第１の実施形態に係る連想メモリセルの論理演算を示す論理演算テーブルである。
【図５】本発明の第１の実施形態に係る１つのワード回路の演算動作を示す概念図である。
【図６】本発明の第１の実施形態に係る連想メモリの構成を概略的に示すブロック図である。
【図７】本発明の第１の実施形態に係る連想メモリの動作を示す図である。
【図８】本発明の第１の実施形態に係るマッチ線がＨｉｇｈになるタイミング分布を示す図である。
【図９】本発明の第１の実施形態に係る変形例１の充放電回路である。
【図１０】本発明の第１の実施形態に係る変形例２の連想メモリセルの構成を示すブロック図である。
【図１１】本発明の第１の実施形態に係る変形例２のレプリカ回路のブロック図である。
【図１２】本発明の第１の実施形態に係る変形例２のレプリカセル回路１の回路図である。
【図１３】本発明の第１の実施形態に係る変形例２のレプリカセル回路２の回路図である。
【図１４】本発明の第１の実施形態に係る変形例２のレプリカ回路の遅延時間を模式的に示す概念図である。
【図１５】本発明の第２の実施形態に係る連想メモリの構成を概略的に示すブロック図である。
【図１６】本発明の第２の実施形態に係る連想メモリセルの回路図である。
【図１７】本発明の第２の実施形態に係る連想メモリセルの論理演算を示す論理演算テーブルである。
【図１８】本発明の第２の実施形態に係る１つのワード回路の演算動作例を示す概念図である。
【図１９】本発明の第２の実施形態に係る連想メモリの構成を概略的に示すブロック図である。
【図２０】本発明の第２の実施形態に係る連想メモリの動作を示す図である。
【図２１】本発明の第２の実施形態に係るマッチ線がＨｉｇｈになるタイミング分布を示す図である。
【図２２】本発明の第２の実施形態に係る変形例１における連想メモリの構成を概略的に示すブロック図である。
【図２３】本発明の第２の実施形態に係る変形例１における比較回路の回路図である。
【図２４】本発明の第２の実施形態に係る３値の連想メモリセルの論理値と、抵抗変化型不揮発性記憶素子の抵抗値の対応を示す論理演算テーブルである。
【図２５】本発明の第３の実施形態に係る連想メモリの構成を概略的に示すブロック図である。
【図２６】本発明の第３の実施形態に係る連想メモリセルの回路図である。
【図２７】本発明の第４の実施形態に係る連想メモリの構成を概略的に示すブロック図である。
【図２８】本発明の第４の実施形態に係る連想メモリセルの回路図である。
【図２９】本発明の第４の実施形態に係る磁性素子及び抵抗変化型不揮発性記憶素子Ｒ０の概略平面図である。
【図３０】本発明の第４の実施形態に係る磁性素子及び抵抗変化型不揮発性記憶素子Ｒ０の概略断面図である。
【図３１】本発明の第４の実施形態に係る磁壁移動素子のデータ「１」の磁化状態を示す図である。
【図３２】本発明の第４の実施形態に係る磁壁移動素子のデータ「０」の磁化状態を示す図である。
【図３３】本発明の第４の実施形態に係る変形例の連想メモリセルの回路図である。
【図３４】本発明の第５の実施形態に係る連想メモリの構成を概略的に示すブロック図である。
【図３５】本発明の第５の実施形態に係る複数の連想メモリから構成される論理回路である。
【図３６】本発明の第５の実施形態に係る変形例における、複数の連想メモリから構成される論理回路である。
【図３７】本発明の第６の実施形態に係る連想メモリの構成を概略的に示すブロック図である。
【図３８】本発明の第６の実施形態に係る３値セル回路の回路図である。
【図３９】本発明の第６実施形態の磁性素子及び抵抗変化型不揮発性記憶素子の概略平面図である。
【図４０】本発明の第６実施形態の磁性素子及び抵抗変化型不揮発性記憶素子の概略断面図である。
【図４１】本発明の第６実施形態に係る磁壁移動素子のデータ「−１」の磁化状態を示す図である。
【図４２】本発明の第６実施形態に係る磁壁移動素子のデータ「０」の磁化状態を示す図である。
【図４３】本発明の第６実施形態に係る磁壁移動素子のデータ「１」の磁化状態を示す図である。
【図４４】本発明の第６の実施形態に係る３値セル回路の論理値と抵抗変化型不揮発性記憶素子の抵抗値との対応を示す論理演算テーブルである。
【発明を実施するための形態】
【００１３】
以下に、本発明を実施するための形態について図面を用いて説明する。ただし、以下に述べる実施形態には、本発明を実施するために技術的に好ましい限定がされているが、発明の範囲を以下に限定するものではない。
【００１４】
（第１の実施形態）
まず、本発明の第１の実施形態について、図面を参照しながら詳細に説明する。なお、以下の説明において、図中で記号及び符号を付した構成要素に関しては、初出ではない限り、その構成要素の名称の末尾に記号又は符号のいずれかを付す。
【００１５】
（構成）
図１は、本発明の第１の実施形態に係る連想メモリ１の構成を概略的に示すブロック図である。なお、本実施形態の説明においては、連想メモリセルなどの形態が異なる変形例についても連想メモリ１と表記する。なお、図１において、ロウ側回路１２からセンス回路１３に向かう方向を第２方向、第２方向と直交するようにカラム側回路１１から各連想メモリセル１０に向かう方向を第１方向と定義する。第１方向および第２方向の定義は、他の図面においても同様である。
【００１６】
第１の実施形態に係る連想メモリ１は、２次元のマトリックス状（格子状）に配置された複数の連想メモリセル１０を備え、第２方向に配列された複数の連想メモリセル１０は、ワード回路１４を構成する。なお、図１においては、複数の連想メモリセル１０及びワード回路１４を区別するために、それぞれの構成要素について符号の末尾に列番号及び行番号を付しているが、特に区別しない場合は末尾の番号を省略する。
【００１７】
また、連想メモリ１は、第１方向に配置された連想メモリセル１０に共通に接続された複数のサーチ線対ＳＬ、／ＳＬと、第２方向に配置された連想メモリセル１０を直列に接続する複数のマッチ線ＭＬと、を含む。なお、図１においては、複数の配線を区別するために、それぞれの配線について符号の末尾に列番号又は行番号を付しているが、特に区別しない場合は末尾の番号を省略する。
【００１８】
さらに、連想メモリ１は、カラム側回路１１と、ロウ側回路１２と、センス回路１３と、を備える。カラム側回路１１は、複数のサーチ線対ＳＬ、／ＳＬと接続され、演算時、入力データに応じて、サーチ線対ＳＬ、／ＳＬを駆動する。ロウ側回路１２は、複数のマッチ線ＭＬと接続され、マッチ線ＭＬを駆動する。センス回路１３は、複数のマッチ線ＭＬと接続され、マッチ線ＭＬの電位をセンスする。
【００１９】
（連想メモリセル）
図２は、本発明の第１の実施形態に係る連想メモリセル１０の構成を概略的に示すブロック図である。
【００２０】
連想メモリセル１０は、充放電回路１５と、抵抗ネットワーク１６と、を有する。
【００２１】
サーチ線対ＳＬ、／ＳＬは、抵抗ネットワーク１６へ接続される。
【００２２】
第２方向に配置された隣接の連想メモリセル１０の一方と接続されたマッチ線ＭＬは、充放電回路１５のマッチ線入力端子ＭＬｉｎに接続される。第２方向に配置された隣接の連想メモリセル１０の他方と接続されたマッチ線ＭＬは、充放電回路１５のマッチ線出力端子ＭＬｏｕｔに接続される。すなわち、マッチ線入力端子ＭＬｉｎは、ロウ側回路１２又はロウ側回路１２方向において隣接する連想メモリ１０のＭＬｏｕｔに接続される。また、マッチ線出力端子ＭＬｏｕｔは、センス側回路１３又はセンス側回路１３において隣接する連想メモリセル１０のＭＬｉｎに接続される。
【００２３】
図３は、本発明の第１実施の形態に係る連想メモリセル１００の具体的な回路図である。連想メモリセル１００は、充放電回路１５０と、抵抗ネットワーク１６０と、を有する。
【００２４】
本回路構成の連想メモリセル１００から構成されるワード回路１４は、記憶データと入力データのハミング距離を、ワード回路１４の遅延時間に反映させることができる。
【００２５】
充放電回路１５０は、ＮＭＯＳトランジスタ１５１と、ＰＭＯＳトランジスタ１５２と、インバータ１５３と、を備える。ＮＭＯＳトランジスタ１５１及びＰＭＯＳトランジスタ１５２は、ＣＭＯＳインバータ１５４を形成する。
【００２６】
マッチ線入力端子ＭＬｉｎは、ＮＭＯＳトランジスタ１５１のゲートとＰＭＯＳトランジスタ１５２のゲートに接続される。インバータ１５３の入力端子は、ＰＭＯＳトランジスタ１５２のドレインと、ＮＭＯＳトランジスタ１５１のドレインに接続される。インバータ１５３の出力端子は、マッチ線出力端子ＭＬｏｕｔに接続される。ＰＭＯＳトランジスタ１５２のソースは、電源電圧Ｖｄｄに接続される。ＮＭＯＳトランジスタ１５１のソースは抵抗ネットワーク１６０の抵抗変化型不揮発性記憶素子Ｒ０の一端に接続される。
【００２７】
抵抗ネットワーク１６０は、抵抗変化型不揮発性記憶素子Ｒ０及び抵抗変化型不揮発性記憶素子Ｒ１と、ＮＭＯＳ論理回路１６５（論理回路）と、を有する。なお、図３において、抵抗変化型不揮発性記憶素子Ｒ０は抵抗変化型不揮発性記憶素子１６１、抵抗変化型不揮発性記憶素子Ｒは抵抗変化型不揮発性記憶素子１６２である。ＮＭＯＳ論理回路１６５は、第１のＮＭＯＳトランジスタであるＮＭＯＳトランジスタＮ０と、第２のＮＭＯＳトランジスタであるＮＭＯＳトランジスタＮ１と、を含む。なお、ＮＭＯＳトランジスタＮ０はＮＭＯＳトランジスタ１６６、ＮＭＯＳトランジスタＮ１はＮＭＯＳトランジスタ１６７である。
【００２８】
抵抗変化型不揮発性記憶素子Ｒ０の一端は充放電回路１５０のＮＭＯＳトランジスタ１５１のソースに接続され、他端はＮＭＯＳトランジスタＮ０のドレインに接続される。抵抗変化型不揮発性記憶素子Ｒ１の一端は充放電回路１５０のＮＭＯＳトランジスタ１５１のソースに接続され、他端はＮＭＯＳトランジスタＮ１のドレインに接続される。なお、抵抗変化型不揮発性記憶素子Ｒ０及びＲ１の一端同士は、互いに接続される。
【００２９】
ＮＭＯＳトランジスタＮ０において、ゲートはサーチ線ＳＬに接続され、ドレインは抵抗変化型不揮発性記憶素子Ｒ０の他端に接続され、ソースは接地される。ＮＭＯＳトランジスタＮ１において、ゲートはサーチ線対の他方／ＳＬに接続され、ドレインは抵抗変化型不揮発性記憶素子Ｒ１の他端に接続され、ソースは接地される。
【００３０】
本実施形態で用いる抵抗変化型不揮発性記憶素子は、磁気抵抗変化型ランダムアクセスメモリ、相変化型ランダムアクセスメモリ、抵抗変化型ランダムアクセスメモリ、コンダクタンスブリッジ型ランダムアクセスメモリなどで利用されているメモリ素子である。一般に、抵抗変化型不揮発性記憶素子は、高抵抗状態ＲＨと低抵抗状態ＲＬの２つの状態を取ることができる。
【００３１】
演算時、本連想メモリセル１００の抵抗ネットワーク１６０のセンス電流は、充放電回路１５０から流れ込む。
【００３２】
抵抗ネットワーク１６０は、サーチ線上の入力データによって、抵抗ネットワーク１６０の電流パスが切り替わる。抵抗ネットワーク１６０の電流パスの抵抗値は、入力データと、抵抗変化型不揮発性記憶素子Ｒ０及び抵抗変化型不揮発性記憶素子Ｒ１のデータに応じて変化する。
【００３３】
連想メモリセル１００の回路において、入力データと、抵抗変化型不揮発性記憶素子Ｒ０及び抵抗変化型不揮発性記憶素子Ｒ１の記憶データの演算結果は、遅延時間を用いて表現する。すなわち、連想メモリセル１００の回路では、センス電流の充放電の時間情報に応じて、マッチ線入力端子ＭＬｉｎへの入力のタイミングから、マッチ線出力端子ＭＬｏｕｔの出力のタイミングまでの遅延時間を用いて記憶データの演算結果を表現する。
【００３４】
図４に示した論理演算テーブル１９は、本発明の第１実施形態における連想メモリセル１０の論理演算を示す。
【００３５】
論理演算テーブル１９の第１列は、抵抗変化型不揮発性記憶素子Ｒ０の抵抗値を示す。高抵抗状態をＲＨ、低抵抗状態をＲＬとして表記している。第２列は、抵抗変化型不揮発性記憶素子Ｒ１の抵抗値を示す。第３列は、連想メモリセル１０に記憶しているデータＡを示す。第４列は、サーチ線ＳＬ上の入力データＢを示す。第５列は、データＡとデータＢとの否定排他的論理和（ＸＮＯＲ）の論理値に応じたマッチ線ＭＬの入力から出力までの遅延時間を示す。
【００３６】
次に、図３を用いて、図４の論理演算テーブル１９における各行の動作について説明する。なお、以下の説明においては、項目を除いて行数を起算しており、２行目を第１行とする。
【００３７】
（第１行）
図４の論理演算テーブル１９の第１行において、記憶データＡは０である。このとき、Ｒ０は高抵抗状態ＲＨ、Ｒ１は低抵抗状態ＲＬである。
【００３８】
演算前、マッチ線入力端子ＭＬｉｎはＬｏｗレベル、マッチ線出力端子ＭＬｏｕｔはＬｏｗレベルである。サーチ線対ＳＬ、／ＳＬはＬｏｗレベルである。
【００３９】
演算開始直後、入力データＢ＝０に応じて、サーチ線ＳＬはＬｏｗレベル、／ＳＬはＨｉｇｈレベルに駆動される。
【００４０】
前段の連想メモリセル１０からの信号の伝播により、マッチ線入力端子ＭＬｉｎがＨｉｇｈレベルに遷移すると、センス電流は充放電回路１５から、抵抗変化型不揮発性記憶素子Ｒ１、ＮＭＯＳトランジスタＮ１を介してＧｎｄへ流れ込む。
【００４１】
その結果、マッチ線出力端子ＭＬｏｕｔは、低抵抗状態ＲＬに応じた遅延時間ｔ（１）でＨｉｇｈレベルに遷移する。
【００４２】
（第２行）
図４の論理演算テーブル１９の第２行において、記憶データＡは０である。このとき、Ｒ０は高抵抗状態ＲＨ、Ｒ１は低抵抗状態ＲＬである。
【００４３】
演算前、マッチ線入力端子ＭＬｉｎはＬｏｗレベル、マッチ線出力端子ＭＬｏｕｔはＬｏｗレベルである。サーチ線対はＬｏｗレベルである。
【００４４】
演算開始直後、入力データＢ＝１に応じて、サーチ線ＳＬはＨｉｇｈレベル、／ＳＬはＬｏｗレベルに駆動される。
【００４５】
前段の連想メモリセル１０からの信号の伝播により、マッチ線入力端子ＭＬｉｎがＨｉｇｈレベルに遷移すると、センス電流は充放電回路１５から、抵抗変化型不揮発性記憶素子Ｒ０、ＮＭＯＳトランジスタＮ０を介してＧｎｄへ流れ込む。
【００４６】
その結果、マッチ線出力端子ＭＬｏｕｔは、高抵抗状態ＲＨに応じた遅延時間ｔ（０）でＨｉｇｈレベルに遷移する。
【００４７】
（第３行）
図４の論理演算テーブル１９の第３行において、記憶データＡは１である。このとき、Ｒ０は低抵抗状態ＲＬ、Ｒ１は高抵抗状態ＲＨである。
【００４８】
演算前、マッチ線入力端子ＭＬｉｎはＬｏｗレベル、マッチ線出力端子ＭＬｏｕｔはＬｏｗレベルである。サーチ線対ＳＬ、／ＳＬはＬｏｗレベルである。
【００４９】
演算開始直後、入力データＢ＝０に応じて、サーチ線ＳＬはＬｏｗレベル、／ＳＬはＨｉｇｈレベルに駆動される。
【００５０】
前段の連想メモリセル１０からの信号の伝播により、マッチ線入力端子ＭＬｉｎがＨｉｇｈレベルに遷移すると、センス電流は、充放電回路１５から、抵抗変化型不揮発性記憶素子Ｒ１、ＮＭＯＳトランジスタＮ１を介してＧｎｄへ流れ込む。
【００５１】
その結果、マッチ線出力端子ＭＬｏｕｔは、高抵抗状態ＲＨに応じた遅延時間ｔ（０）でＨｉｇｈレベルに遷移する。
【００５２】
（第４行）
図４の論理演算テーブル１９の第４行において、記憶データＡは１である。このとき、Ｒ０は低抵抗状態ＲＬ、Ｒ１は高抵抗状態ＲＨである。
【００５３】
演算前、マッチ線入力端子ＭＬｉｎはＬｏｗレベル、マッチ線出力端子ＭＬｏｕｔはＬｏｗレベルである。サーチ線対ＳＬ、／ＳＬはＬｏｗレベルである。
【００５４】
演算開始直後、入力データＢ＝１に応じて、サーチ線ＳＬはＨｉｇｈレベル、／ＳＬはＬｏｗレベルに駆動される。
【００５５】
前段の連想メモリセル１０からの信号の伝播により、マッチ線入力端子ＭＬｉｎがＨｉｇｈレベルに遷移すると、センス電流は充放電回路１５から、抵抗変化型不揮発性記憶素子Ｒ０、ＮＭＯＳトランジスタＮ０を介してＧｎｄへ流れ込む。
【００５６】
その結果、マッチ線出力端子ＭＬｏｕｔは、低抵抗状態ＲＬに応じた遅延時間ｔ（１）でＨｉｇｈレベルに遷移する。
【００５７】
遅延時間ｔ（１）は、遅延時間ｔ（０）より小さいため、記憶データＡと入力データＢが一致した場合は、一致しなかった場合に比べ、遅延時間は短い。
【００５８】
特許文献１に記載の連想メモリセルは、データを記憶する機能と遅延を発生させる機能が別々の回路で実現されている。それに対し、本実施形態に係る連想メモリセル１０では、データを記憶する機能と遅延を発生させる機能の両方を抵抗変化型不揮発性記憶素子で実現することができるため、セル面積が小さくなる。
【００５９】
また、特許文献１に記載の連想メモリセルは、待機時に電源を遮断すると記憶データが消失してしまうために電源を容易に遮断できない。それに対し、本実施形態の連想メモリセル１０では、待機時に電源を遮断しても記憶データは抵抗変化型不揮発性記憶素子Ｒ０及び抵抗変化型不揮発性記憶素子Ｒ１に保持される。そのため、一般的な連想メモリではリーク電流が大きくなる懸念があるのに対し、本実施形態の連想メモリ１では電源を遮断してリーク電流を抑えることができる。
【００６０】
図５は、第１の実施形態に係る連想メモリ１における、１つのワード回路の演算動作例を示す概念図である。なお、図５のワード回路は、６つの連想メモリセル１０から構成され、ビット数Ｎは６である。
【００６１】
図５の例のワード回路において、記憶データＡが「０１１０１０」であり、入力データＢが「１０１００１」の場合、ＡｘｎｏｒＢは「００１１００」である。
【００６２】
ここで、ＡｘｎｏｒＢ（００１１００）において、１の数Ｃは２となる。また、以下の式１で定義されるハミング距離Ｈは４である。
Ｈ＝Ｎ−Ｃ・・・（１）
図５のワード回路の遅延時間Ｄ１は式２で表される。すなわち、記憶データと入力データのハミング距離が近いほど、遅延時間が短い。
Ｄ１＝（Ｎ−Ｃ）・ｔ（０）＋Ｃ・ｔ（１）・・・（２）
図６は、本発明の第１実施形態に係る連想メモリ１の構成を概略的に示すブロック図である。ただし、図６においては、簡単のため、図１に示したカラム側回路１１とサーチ線対ＳＬ、／ＳＬは省略している。
【００６３】
演算開始信号ＳＴＡＲＴは、ロウ側回路１２のバッファ１２０の入力端子に接続され、バッファ１２０の出力端子はマッチ線ＭＬに接続される。センス回路１３は、各ワード回路１４に対応してデータフリップフロップ（以下、ＤＦＦ１３１）を備える（ＤＦＦ：Ｄａｔａ  Ｆｌｉｐ−Ｆｌｏｐ）。
【００６４】
クロック信号ＣＬＫは、センス回路１３のバッファ１３０の入力端子に接続され、バッファ１３０の出力端子はＤＦＦ１３１のクロック端子に接続される。各行のマッチ線ＭＬはＤＦＦ１３１のデータ入力端子に接続される。ＤＦＦ１３１の出力端子は、センスアンプ出力信号ＳＡＯＵＴを出力する。
【００６５】
図７は、本発明の第１実施形態に係る連想メモリ１の動作例を示す図である。
【００６６】
図６及び図７を参照して、本発明の第１実施形態に係る連想メモリ１の演算時の動作を説明する。
【００６７】
演算開始前、サーチ線対ＳＬ、／ＳＬはＬｏｗレベル、演算開始信号ＳＴＡＲＴはＬｏｗレベル、クロック信号ＣＬＫ信号はＬｏｗレベルである。
【００６８】
演算開始信号ＳＴＡＲＴがＨｉｇｈレベルになると演算が開始する。この時刻ｔを０とする。
【００６９】
ロウ側回路１２は演算開始信号ＳＴＡＲＴを受け、マッチ線ＭＬをＨｉｇｈレベルに駆動する。サーチ線ＳＬも入力データに応じてＨｉｇｈ又はＬｏｗレベルに駆動する。
【００７０】
各ワード回路１４は、前述のように記憶データと入力データのハミング距離に応じた遅延時間で、出力信号を各マッチ線ＭＬに出力する。
【００７１】
時刻ｔ＿ｃｌｋにおいて、クロック信号ＣＬＫがＨｉｇｈになると、センス回路１３は、センス回路１３におけるマッチ線ＭＬのデータをラッチし、センスアンプ出力信号ＳＡＯＵＴにそのデータを出力する。
【００７２】
図８は、マッチ線ＭＬがＨｉｇｈになるタイミングのヒストグラムである。なお、ワード回路１４のビット数はＮとする。
【００７３】
記憶データと入力データのハミング距離が０の場合、マッチ線ＭＬがＨｉｇｈになるタイミングは、式３で示した時刻Ｔ０を中心に分布する。
Ｔ０＝Ｎ・ｔ（１）・・・（３）
同様に、記憶データと入力データのハミング距離が１の場合、マッチ線ＭＬがＨｉｇｈになるタイミングは、式４で示した時刻Ｔ１を中心に分布する。
Ｔ１＝（Ｎ−１）・ｔ（１）＋ｔ（０）・・・（４）
同様に、記憶データと入力データのハミング距離が２の場合、マッチ線ＭＬがＨｉｇｈになるタイミングは、式５で示した時刻Ｔ２を中心に分布する。
Ｔ２＝（Ｎ−２）・ｔ（１）＋２・ｔ（０）・・・（５）
ハミング距離が３以上の場合についても同様であるが、説明は省略する。
【００７４】
各分布の間隔は、ｔ（０）−ｔ（１）である。
【００７５】
ここで、各分布のばらつきをσｔとする。例えば、ハミング距離が０のワード回路を検索したい場合、クロック信号ＣＬＫは、Ｔ０＋σｔからＴ１−σｔの間のウィンドウＷ１においてＨｉｇｈレベルに遷移すればよい。なお、ウィンドウＷ１は、式６で表される。
Ｗ１＝ｔ（０）−ｔ（１）−２・σｔ・・・（６）
すると、記憶データと入力データのハミング距離が０のワード回路１４に対応したセンスアンプ出力信号ＳＡＯＵＴはＨｉｇｈレベル、それ以外はＬｏｗレベルになる。すなわち、ハミング距離０のワード回路１４のみ検出することができる。
【００７６】
同様に、ハミング距離が１以下のワード回路を検索したい場合には、クロック信号ＣＬＫは、Ｔ１＋σｔからＴ２−σｔの間のウィンドウＷ２においてＨｉｇｈレベルに遷移すればよい。
【００７７】
すると、記憶データと入力データのハミング距離が１以下のワード回路に対応したセンスアンプ出力信号ＳＡＯＵＴはＨｉｇｈレベル、それ以外はＬｏｗレベルになる。つまり、ハミング距離１以下のワード回路のみ検出することができる。
【００７８】
同様に、第１の実施形態に係る連想メモリ１は、ハミング距離がｄビット以下のワード回路１４を検出することができる（ｄは０以上Ｎ以下の整数）。
【００７９】
以上のように、本発明の第１の実施形態によれば、入力データと複数の記憶データの演算結果がｄビット以下であるワード回路を検出することができる。ただし、本実施形態においては、具体的な類似度の演算としてハミング距離の演算の場合を示した。
【００８０】
また、本発明の第１の実施形態によれば、データを記憶する機能と、遅延を発生する機能の両方を抵抗変化型不揮発性記憶素子で実現することによって、連想メモリセルの面積をさらに小さくすることができる。
【００８１】
さらに、本発明の第１の実施形態に係る連想メモリセルを用いた連想メモリを構成すれば、容易に電源を遮断できるため、リーク電流を抑えることができる。
【００８２】
なお、本実施形態の抵抗変化型不揮発性記憶素子としては、低抵抗状態と、高抵抗状態の２値（デジタル値）を取った場合を示したが、必ずしも２値に限らない。抵抗変化型不揮発性記憶素子は、低抵抗状態と、高抵抗状態の間の任意のアナログ値を取っても良い。アナログ値を取る抵抗変化型不揮発性記憶素子としては、例えば、国際公開第２００９／１０１８２７号公報などに公開されている抵抗変化型不揮発性記憶素子を利用しても良い。本実施形態に係る連想メモリは、アナログ値を有する抵抗変化型不揮発性記憶素子を利用した場合、連想メモリセルの遅延時間もアナログ値になる点が変更になるが、遅延時間は加算できるため、容易に適用できる。
【００８３】
（変形例１）
次に、第１の実施形態に係る連想メモリ１の変形例１について説明する。
【００８４】
変形例１の連想メモリ１は、図９に示した連想メモリセル１０１を備える。変形例１の連想メモリ１は、連想メモリセル１００の充放電回路１５０を充放電回路１５５に置換した構成を取る。なお、重複する構成についての説明は省略する。
【００８５】
変形例１の充放電回路１５５は、ＮＭＯＳトランジスタ１５６と、ＰＭＯＳトランジスタ１５７と、インバータ１５８と、を備える。ＮＭＯＳトランジスタ１５６及びＰＭＯＳトランジスタ１５７は、ＣＭＯＳインバータ１５９を形成する。
【００８６】
マッチ線入力端子ＭＬｉｎは、ＮＭＯＳトランジスタ１５６のゲートに接続される。プリチャージ信号の反転信号／ＰＲＣは、ＰＭＯＳトランジスタ１５７のゲートに接続される。インバータ１５８の入力端子は、ＰＭＯＳトランジスタ１５７のドレインと、ＮＭＯＳトランジスタ１５６のドレインに接続される。インバータ１５８の出力端子は、マッチ線出力端子ＭＬｏｕｔに接続される。ＰＭＯＳトランジスタ１５７のソースは電源電圧Ｖｄｄに接続される。ＮＭＯＳトランジスタ１５６のソースは抵抗ネットワーク１６０の抵抗変化型不揮発性記憶素子１６１及び１６２の一端に接続される。
【００８７】
変形例１によれば、演算時、プリチャージ信号の反転信号／ＰＲＣは、演算開始信号ＳＴＡＲＴと同様の波形である。
【００８８】
連想メモリ１におけるワード回路１４では、演算終了後、全ての連想メモリセル１０のマッチ線入力端子ＭＬｉｎとマッチ線出力端子ＭＬｏｕｔをＬｏｗレベルにリセットする。連想メモリセル１００を適用した場合、直列に接続されている連想メモリセル１０を順番にリセットさせていく時間が必要である。一方、変形例１の連想メモリセル１０１を適用した場合、プリチャージ信号の反転信号／ＰＲＣをＬｏｗレベルにすれば、全ての連想メモリセル１０１のマッチ線入力端子ＭＬｉｎとマッチ線出力端子ＭＬｏｕｔを同時にＬｏｗレベルにリセットできる。
【００８９】
そのため、本実施形態の変形例１に係る連想メモリセル１０１を適用した連想メモリ１においては、プリチャージ信号の反転信号／ＰＲＣを設けることにより、ワード回路１４のリセット時間が短くなる。
【００９０】
以上のように、本実施形態の変形例１に係る連想メモリセル１０１を適用すると、ワード回路１４のリセット時間を短くすることができ、演算のスループットを向上することができる。
【００９１】
（変形例２）
次に、第１の実施形態に係る連想メモリ１の変形例２について説明する。
【００９２】
変形例２の連想メモリ１は、図１０に示した回路構成を取る。図６に示した回路構成とは、ＣＬＫ信号をレプリカ回路１７で生成している点のみが異なる。なお、重複する構成についての説明は省略する。
【００９３】
図１０は、本実施形態の変形例２に係る連想メモリ１の構成を概略的に示すブロック図である。ただし、図１０においては、図１に示したカラム側回路１１とサーチ線対ＳＬ、／ＳＬは省略している。また、図６と同様の構成要素については、図６で用いた同じ符号を付した。
【００９４】
演算開始信号ＳＴＡＲＴは、ロウ側回路１２のバッファ１２０の入力端子に接続され、バッファ１２０の出力端子はマッチ線ＭＬに接続される。さらに、演算開始信号ＳＴＡＲＴはレプリカ回路１７に接続される。レプリカ回路１７は、ＳＴＡＲＴ信号から所定の遅延時間後にクロック信号ＣＬＫを生成する。センス回路１３は、ワード回路１４に対応したデータフリップフロップ（ＤＦＦ１３１）を備える。クロック信号ＣＬＫは、センス回路１３のバッファ１３０の入力端子に接続される。バッファ１３０の出力端子はＤＦＦ１３１のクロック端子に接続される。各行のマッチ線ＭＬはＤＦＦ１３１のデータ入力端子に接続される。ＤＦＦ１３１の出力端子は、センスアンプ出力信号ＳＡＯＵＴを出力する。
【００９５】
（レプリカ回路）
図１１は、本実施形態の変形例２の連想メモリ１におけるレプリカ回路１７の一例を示すブロック図である。図１１は、ビット数Ｎが６、ハミング距離が３以下のワードを検出するためにレプリカ回路１７を使用する例である。なお、レプリカ回路１７のビット数はワード回路１４のビット数と同じ値にする。
【００９６】
レプリカ回路１７は、１つのレプリカセル回路Ａ１７１と、Ｎ−１個のレプリカセル回路Ｂ１７２から構成される。レプリカセル回路Ａ１７１とＮ−１個のレプリカセル回路Ｂ１７２は、マッチ線ＭＬを介して直列に接続される。レプリカセル回路Ａ１７１は、マッチ線ＭＬ上のＳＴＡＲＴ信号を受ける。最終段のレプリカセル回路Ｂ１７２（１７２−５）は、ＣＬＫ信号をマッチ線ＭＬ上に出力する。レプリカ用サーチ線ＳＬＲ０は、レプリカセル回路１７１に接続される。レプリカ用サーチ線対ＳＬＲｎ、／ＳＬＲｎは、各々のレプリカセル回路Ｂ１７２に接続される（ｎは自然数）。
【００９７】
ハミング距離がｄ以下のワードを検出するためにレプリカ回路１７を使用する場合、ｄ個のレプリカセル回路Ｂ１７２に接続するＳＬＲはＬｏｗレベル、／ＳＬＲはＨｉｇｈレベルに設定される。図１１では、Ｈｉｇｈレベルは電源電圧Ｖｄｄ、Ｌｏｗレベルはグラウンド電圧Ｇｎｄとしている。Ｎ−１−ｄ個のレプリカ回路１７２に接続するＳＲＬはＨｉｇｈレベル、／ＳＲＬはＬｏｗレベルに設定される。レプリカセル回路Ａ１７１に接続するＳＲＬ０はＨｉｇｈレベルが設定される。
【００９８】
（レプリカセル回路Ａ）
図１２は、本実施形態の変形例２の連想メモリ１におけるレプリカセル回路Ａ１７１である。レプリカセル回路Ａ１７１は、充放電回路１７５と、抵抗ネットワーク１８０と、を有する。
【００９９】
充放電回路１７５は、ＮＭＯＳトランジスタ１７６と、ＰＭＯＳトランジスタ１７７と、インバータ１７８と、を備える。ＮＭＯＳトランジスタ１７６及びＰＭＯＳトランジスタ１７７は、ＣＭＯＳインバータ１７９を形成する。
【０１００】
マッチ線入力端子ＭＬｉｎは、ＮＭＯＳトランジスタ１７６のゲートとＰＭＯＳトランジスタ１７７のゲートに接続される。インバータ１７８の入力端子は、ＰＭＯＳトランジスタ１７７のドレインと、ＮＭＯＳトランジスタ１７６のドレインに接続される。インバータ１７８の出力端子は、マッチ線出力端子ＭＬｏｕｔに接続される。ＰＭＯＳトランジスタ１７７のソースは、電源電圧Ｖｄｄに接続される。ＮＭＯＳトランジスタ１７６のソースは抵抗ネットワーク１８０の抵抗変化型不揮発性記憶素子Ｒ０の一端に接続される。
【０１０１】
レプリカセル回路Ａ１７１の抵抗ネットワーク１８０は、４つの抵抗変化型不揮発性記憶素子１８１〜１８４と、１つのＮＭＯＳトランジスタ１９１を含むＮＭＯＳ論理回路１９０と、を有する。
【０１０２】
抵抗変化型不揮発性記憶素子１８１及び抵抗変化型不揮発性記憶素子１８３の一端は、充放電回路１７５のＮＭＯＳトランジスタ１７６のソースに接続される。抵抗変化型不揮発性記憶素子１８１及び抵抗変化型不揮発性記憶素子１８３の他端は、それぞれ抵抗変化型不揮発性記憶素子１８２及び抵抗変化型不揮発性記憶素子１８４の一端に接続される。また、抵抗変化型不揮発性記憶素子１８２及び抵抗変化型不揮発性記憶素子１８４の他端は、ＮＭＯＳトランジスタＮ０のドレインに接続される。４つの抵抗変化型不揮発性記憶素子１８１〜１８４は図１２のように直並列に接続され、抵抗変化型不揮発性記憶素子１８１〜１８４の合成抵抗は（ＲＨ＋ＲＬ）／２になる。
【０１０３】
レプリカ用サーチ線ＳＬＲはＮＭＯＳトランジスタＮ０（１９１）のゲートに接続される。ＮＭＯＳトランジスタＮ０のドレインは抵抗変化型不揮発性記憶素子１８２に、ソースは接地される。レプリカセル回路Ａ１７１の遅延時間は、直並列に接続された抵抗変化型不揮発性記憶素子１８１〜１８４を介して流れるセンス電流の放電時間に対応した（ｔ（０）＋ｔ（１））／２である。
【０１０４】
（レプリカセル回路Ｂ）
図１３は、本実施形態の変形例２の連想メモリ１におけるレプリカセル回路Ｂ１７２である。レプリカセル回路Ｂ１７２は、充放電回路１７５と、抵抗ネットワーク１８５と、を有する。なお、レプリカセル回路Ａ１７１とレプリカセル回路Ｂ１７２の充放電回路１７５は同一であるため、詳細な説明は省略する。
【０１０５】
レプリカセル回路Ｂ１７２の抵抗ネットワーク１８５は、抵抗変化型不揮発性記憶素子１８６及び抵抗変化型不揮発性記憶素子１８７と、ＮＭＯＳトランジスタＮ０及びＮＭＯＳトランジスタＮ１を含むＮＭＯＳ論理回路１９５と、を有する。なお、図１３において、ＮＭＯＳトランジスタＮ０はＮＭＯＳトランジスタ１９６であり、ＮＭＯＳトランジスタＮ１はＮＭＯＳトランジスタ１９７である。
【０１０６】
抵抗変化型不揮発性記憶素子１８６及び１８７の一端は充放電回路１７５のＮＭＯＳトランジスタ１７６に接続される。低抵抗状態ＲＬの抵抗変化型不揮発性記憶素子１８６の他端はＮＭＯＳトランジスタＮ０のドレインに接続され、高抵抗状態ＲＨの抵抗変化型不揮発性記憶素子１８７の他端はＮＭＯＳトランジスタＮ１のドレインに接続される。ＮＭＯＳトランジスタＮ０において、ゲートはレプリカ用サーチ線ＳＬＲに接続され、ドレインは低抵抗状態ＲＬの抵抗変化型不揮発性記憶素子１８６の他端に接続され、ソースは接地される。ＮＭＯＳトランジスタＮ１において、ゲートはレプリカ用サーチ線対の他方／ＳＬＲに接続され、ドレインは高抵抗状態ＲＨの抵抗変化型不揮発性記憶素子１８７に接続され、ソースは接地される。
【０１０７】
ＳＬＲがＨｉｇｈレベル、／ＳＬＲがＬｏｗレベルの場合、レプリカセル回路Ｂ１７２の遅延時間は、低抵抗状態ＲＬの抵抗変化型不揮発性記憶素子１８６を介して流れるセンス電流の放電電流に対応したｔ（１）である。ＳＬＲがＬｏｗレベル、／ＳＬＲがＨｉｇｈレベルの場合、レプリカセル回路Ｂ１７２の遅延時間は、高抵抗状態ＲＨの抵抗変化型不揮発性記憶素子１８７を介して流れるセンス電流の放電時間に対応したｔ（０）である。
【０１０８】
図１４は、本実施形態の変形例２の連想メモリ１における遅延時間を模式的に示す概念図である。なお、図１４は図１０に対応する図である。
【０１０９】
レプリカセル回路Ａ１７１での遅延時間ｔ１は、式７で表される。
ｔ１＝（ｔ（０）＋ｔ（１））／２・・・（７）
ｄ個のレプリカセル回路Ｂ１７２の遅延時間は、それぞれｔ（０）である。そのため、ｄ個のレプリカセル回路Ｂ１７２の合計遅延時間ｔ２は、式８のように表される。
ｔ２＝ｄ・ｔ（０）・・・（８）
Ｎ−１−ｄ個のレプリカセル回路Ｂ１７２の遅延時間は、それぞれｔ（１）である。そのため、Ｎ−１−ｄ個のレプリカセル回路の合計遅延時間ｔ３は、式９のように表される。
ｔ３＝（Ｎ−１−ｄ）・ｔ（１）・・・（９）
従って、レプリカ回路１７の遅延、すなわち、ＳＴＡＲＴ信号の立ち上がりからＣＬＫ信号の立ち上がりまでの遅延時間ｔ＿ｃｌｋは、式１０で表される。
ｔ＿ｃｌｋ＝ｔ１＋ｔ２＋ｔ３・・・（１０）
ｔ＿ｃｌｋは、（Ｎ−ｄ）・ｔ（１）＋ｄ・ｔ（０）と、（Ｎ−ｄ−１）・ｔ（１）＋（ｄ＋１）・ｔ（０）と、の間であり、ハミング距離がｄ以下のワード回路を検出することができる。
【０１１０】
以上のように、本実施形態の変形例２におけるレプリカ回路１７は、ワード回路１４と同じ環境温度・同じ電源電圧で動作するため、環境温度や電源電圧が変化しても、適切なタイミングでクロックを発生することができる。また、変形例２におけるレプリカ回路１７では、レプリカ回路１７とワード回路１４の距離が近いため、トランジスタの特性やＭＴＪの抵抗値のグローバルなばらつきは含まれずにローカルなばらつきのみとなる。そのため、変形例２におけるレプリカ回路１７によれば、入力データと比較データとを精度良く比較することができ、誤読み出しを抑制できる（ＭＴＪ：Ｍａｇｎｅｔｉｃ  Ｔｕｎｎｅｌ  Ｊｕｎｃｔｉｏｎ）。
【０１１１】
（第２の実施形態）
図１５は、本発明の第２の実施形態に係る連想メモリ２の構成を概略的に示すブロック図である。
【０１１２】
第２の実施形態に係る連想メモリ２は、２次元のマトリックス状に配置された複数の連想メモリセル２０を備え、第２方向に配列された複数の連想メモリセル２０は、ワード回路２４を構成する。なお、図１５においては、複数の連想メモリセル２０及びワード回路２４を区別するために、それぞれの構成要素について符号の末尾に列番号及び行番号を付しているが、特に区別しない場合は末尾の番号を省略する。
【０１１３】
また、連想メモリ２は、第１方向に配置された連想メモリセル２０に共通に接続された複数のサーチ線対ＳＬ、／ＳＬと、第２方向に配置された連想メモリセル２０を直列に接続する複数のマッチ線ＭＬと、を含む。なお、図１５においては、複数の線対を区別するために、それぞれの線対について符号の末尾に列番号又は行番号を付しているが、特に区別しない場合はそれらの番号を省略する。
【０１１４】
さらに、連想メモリ２は、カラム側回路２１と、ロウ側回路２２と、センス回路２３と、を備える。カラム側回路２１は、複数のサーチ線対ＳＬ、／ＳＬと接続され、演算時、入力データに応じて、サーチ線対を駆動する。ロウ側回路２２は、複数のマッチ線ＭＬと接続され、マッチ線ＭＬを駆動する。センス回路２３は、複数のマッチ線ＭＬと接続され、マッチ線ＭＬの電位をセンスする。
【０１１５】
（連想メモリセル）
図１６は、本発明の第２の実施形態における連想メモリセル２０の具体的な回路図（連想メモリセル２００）である。
【０１１６】
本回路構成の連想メモリセル２００を含むワード回路２４は、記憶データと入力データの内積を、ワード回路２４の遅延時間に反映させることができる。
【０１１７】
充放電回路２５０は、ＮＭＯＳトランジスタ２５１と、ＰＭＯＳトランジスタ２５２と、インバータ２５３と、を有する。ＮＭＯＳトランジスタ２５１及びＰＭＯＳトランジスタ２５２は、ＣＭＯＳインバータ２５４を形成する。
【０１１８】
マッチ線入力端子ＭＬｉｎは、ＮＭＯＳトランジスタ２５１のゲートとＰＭＯＳトランジスタ２５２のゲートに接続される。インバータ２５３の入力端子は、ＰＭＯＳトランジスタ２５２のドレインと、ＮＭＯＳトランジスタ２５１のドレインに接続される。インバータ２５３の出力端子は、マッチ線出力端子ＭＬｏｕｔに接続される。ＰＭＯＳトランジスタ２５１のソースは電源電圧Ｖｄｄに接続され、ＮＭＯＳトランジスタ２５２のソースは抵抗ネットワーク２６０の抵抗変化型不揮発性記憶素子Ｒ０に接続される。
【０１１９】
抵抗ネットワーク２６０は、抵抗変化型不揮発性記憶素子Ｒ０（２６１）と、ＮＭＯＳ論理回路２６５（論理回路）と、を有する。ＮＭＯＳ論理回路２６５は、第１のＮＭＯＳトランジスタであるＮＭＯＳトランジスタＮ０と、第２のＮＭＯＳトランジスタであるＮＭＯＳトランジスタＮ１と、を含む。なお、図１６において、ＮＭＯＳトランジスタＮ０はＮＭＯＳトランジスタ２６６であり、ＮＭＯＳトランジスタＮ１はＮＭＯＳトランジスタ２６７である。
【０１２０】
抵抗変化型不揮発性記憶素子Ｒ０の一端は充放電回路２５０のＮＭＯＳトランジスタ２５１のソース及びＮＭＯＳトランジスタＮ１のドレインに接続され、他端はＮＭＯＳトランジスタＮ０のドレインに接続される。
【０１２１】
ＮＭＯＳトランジスタＮ０において、ゲートはサーチ線ＳＬに接続され、ドレインは抵抗変化型不揮発性記憶素子Ｒ０の他端に接続され、ソースは接地される。ＮＭＯＳトランジスタＮ１において、ドレインは充放電回路２５０のＮＭＯＳトランジスタ２５１のソース及び抵抗変化型不揮発性記憶素子Ｒ０の一端に接続され、ゲートはサーチ線対の他方／ＳＬに接続され、ソースは接地される。
【０１２２】
演算時、本連想メモリセル２００の抵抗ネットワーク２６０のセンス電流は、充放電回路２５０から流れ込む。
【０１２３】
抵抗ネットワーク２６０は、サーチ線上の入力データによって、抵抗ネットワーク２６０の電流パスが切り替わる。抵抗ネットワーク２６０の電流パスの抵抗値は、入力データと、抵抗変化型不揮発性記憶素子Ｒ０のデータ（記憶データ）に応じて変化する。
【０１２４】
連想メモリセル２００の回路において、抵抗変化型不揮発性記憶素子の記憶データと入力データとの演算結果は、遅延時間を用いて表現する。すなわち、センス電流の充放電の時間情報に応じて、マッチ線入力端子ＭＬｉｎへの入力のタイミングから、マッチ線出力端子ＭＬｏｕｔの出力のタイミングまでの遅延時間を用いて表現する。
【０１２５】
図１７に示した論理演算テーブル２８は、本発明の第２の実施形態における連想メモリセル２０の論理演算を示す。
【０１２６】
論理演算テーブル２８の第１列は、抵抗変化型不揮発性記憶素子Ｒ０の抵抗値を示す。高抵抗状態をＲＨ、低抵抗状態をＲＬとして表記している。論理演算テーブル２８の第２列は、連想メモリセルに記憶しているデータＡを示す。論理演算テーブル２８の第３列は、サーチ線ＳＬ上の入力データを示す。論理演算テーブル２８の第４列は、データＡとデータＢのＡＮＤの論理値に応じたマッチ線ＭＬの入力から出力までの遅延時間を示す。
【０１２７】
次に、図１６を用いて、図１７の論理演算テーブル２８における各行の動作について説明する。
【０１２８】
（第１行）
図１７の論理演算テーブル２８の第１行において、記憶データＡは０である。このとき、Ｒ０は高抵抗状態ＲＨである。
【０１２９】
演算前、マッチ線入力端子ＭＬｉｎはＬｏｗレベル、マッチ線出力端子ＭＬｏｕｔはＬｏｗレベルである。サーチ線対ＳＬ、／ＳＬはＬｏｗレベルである。
【０１３０】
演算開始直後、入力データＢ＝０に応じて、サーチ線ＳＬはＬｏｗレベル、／ＳＬはＨｉｇｈレベルに駆動される。
【０１３１】
前段の連想メモリセル２００からの信号の伝播により、マッチ線入力端子ＭＬｉｎがＨｉｇｈレベルに遷移すると、センス電流は充放電回路２５０から、ＮＭＯＳトランジスタＮ１を介してＧｎｄへ流れ込む。
【０１３２】
その結果、マッチ線ＭＬの出力端子ＭＬｏｕｔは、トランジスタＮ１に応じた遅延時間ｔ（０，ｔｒ）でＨｉｇｈレベルに遷移する。
【０１３３】
（第２行）
図１７の論理演算テーブル２８の第２行において、記憶データＡは０である。このとき、Ｒ０は高抵抗状態ＲＨである。
【０１３４】
演算前、マッチ線入力端子ＭＬｉｎはＬｏｗレベル、マッチ線出力端子ＭＬｏｕｔはＬｏｗレベルである。サーチ線対ＳＬ、／ＳＬはＬｏｗレベルである。
【０１３５】
演算開始直後、入力データＢ＝１に応じて、サーチ線ＳＬはＨｉｇｈレベル、／ＳＬはＬｏｗレベルに駆動される。
【０１３６】
前段の連想メモリセルからの信号の伝播により、マッチ線入力端子ＭＬｉｎがＨｉｇｈレベルに遷移すると、センス電流は充放電回路２５０から、抵抗変化型不揮発性記憶素子Ｒ０、ＮＭＯＳトランジスタＮ０を介してＧｎｄへ流れ込む。
【０１３７】
その結果、マッチ線ＭＬの出力端子ＭＬｏｕｔは、高抵抗状態ＲＨに応じた遅延時間ｔ（０）でＨｉｇｈレベルに遷移する。
【０１３８】
（第３行）
図１７の論理演算テーブル２８の第３行において、記憶データＡは１である。このとき、Ｒ０は低抵抗状態ＲＬである。
【０１３９】
演算前、マッチ線入力端子ＭＬｉｎはＬｏｗレベル、マッチ線出力端子ＭＬｏｕｔはＬｏｗレベルである。サーチ線対ＳＬ、／ＳＬはＬｏｗレベルである。
【０１４０】
演算開始直後、入力データＢ＝０に応じて、サーチ線ＳＬはＬｏｗレベル、／ＳＬはＨｉｇｈレベルに駆動される。
【０１４１】
前段の連想メモリセル２００からの信号の伝播により、マッチ線入力端子ＭＬｉｎがＨｉｇｈレベルに遷移すると、センス電流は充放電回路２５０から、ＮＭＯＳトランジスタＮ１を介してＧｎｄへ流れ込む。
【０１４２】
その結果、マッチ線ＭＬの出力端子ＭＬｏｕｔは、トランジスタＮ１に応じた遅延時間ｔ（０，ｔｒ）でＨｉｇｈレベルに遷移する。
【０１４３】
（第４行）
図１７の論理演算テーブル２８の第４行において、記憶データＡは１である。このとき、Ｒ０は低抵抗状態ＲＬである。
【０１４４】
演算前、マッチ線入力端子ＭＬｉｎはＬｏｗレベル、マッチ線出力端子ＭＬｏｕｔはＬｏｗレベルである。サーチ線対ＳＬ、／ＳＬはＬｏｗレベルである。
【０１４５】
演算開始直後、入力データＢ＝１に応じて、サーチ線ＳＬはＨｉｇｈレベル、／ＳＬはＬｏｗレベルに駆動される。
【０１４６】
前段の連想メモリセル２０からの信号の伝播により、マッチ線入力端子ＭＬｉｎがＨｉｇｈレベルに遷移すると、センス電流は充放電回路２５０から、抵抗変化型不揮発性記憶素子Ｒ０、ＮＭＯＳトランジスタＮ０を介してＧｎｄへ流れ込む。
【０１４７】
その結果、マッチ線ＭＬの出力端子ＭＬｏｕｔは、低抵抗状態ＲＬに応じた遅延時間ｔ（１）でＨｉｇｈレベルに遷移する。
【０１４８】
図１８は、第２の実施形態に係る連想メモリ２における、１つのワード回路２４の演算動作例を示す概念図である。なお、図１８のワード回路２４は、６つの連想メモリセルから構成され、ビット数Ｎは６である。
【０１４９】
図１８の例のワード回路２４において、記憶データＡが「０１１０１１」であり、入力データＢが「１０１００１」の場合、ＡａｎｄＢは「００１００１」である。
【０１５０】
ここで、ＡａｎｄＢ（００１００１）において、１の数Ｃは２となる。また、入力データＢの１の数Ｍは３である。このとき、ワード回路の遅延時間Ｄ２は式１１で表される。
【０１５１】
Ｄ２＝（Ｎ−Ｍ）・ｔ（０、ｔｒ）＋（Ｍ−Ｃ）・ｔ（０）＋Ｃ・ｔ（１）・・・（１１）
図１９は、本発明の第２の実施形態に係る連想メモリ２の構成を概略的に示すブロック図である。ただし、図１９においては、簡単のため、カラム側回路２１とサーチ線対ＳＬ、／ＳＬは省略している。
【０１５２】
演算開始信号ＳＴＡＲＴは、ロウ側回路２２のバッファ２２０の入力端子に接続され、バッファ２２０の出力端子はマッチ線ＭＬに接続される。センス回路２３は、各ワード回路２４に対応してデータフリップフロップ（ＤＦＦ２３１）を備える。
【０１５３】
クロック信号ＣＬＫは、センス回路２３のバッファ２３０の入力端子に接続され、バッファ２３０の出力端子はＤＦＦ２３１のクロック端子に接続される。各行のマッチ線ＭＬはＤＦＦ２３１のデータ入力端子に接続される。ＤＦＦ２３１の出力端子は、センスアンプ出力信号ＳＡＯＵＴを出力する。
【０１５４】
図２０は、本発明の第２の実施形態に係る連想メモリ２の動作例を示す図である。
【０１５５】
図１９及び図２０を参照して、本発明の第２の実施形態における連想メモリの演算時の動作を説明する。
【０１５６】
演算開始前、サーチ線対ＳＬ、／ＳＬはＬｏｗレベル、演算開始信号ＳＴＡＲＴはＬｏｗレベル、クロック信号ＣＬＫ信号はＬｏｗレベルである。
【０１５７】
演算開始信号ＳＴＡＲＴがＨｉｇｈレベルになると演算が開始する。この時刻ｔを０とする。
【０１５８】
ロウ側回路２２は演算開始信号ＳＴＡＲＴを受け、マッチ線ＭＬをＨｉｇｈレベルに駆動する。サーチ線ＳＬも入力データに応じてＨｉｇｈ又はＬｏｗレベルに駆動する。
【０１５９】
各ワード回路２４は、前述のように記憶データと入力データの内積に応じた遅延時間で、出力信号を各マッチ線ＭＬに出力する。
【０１６０】
時刻ｔ＿ｃｌｋにおいて、クロック信号ＣＬＫがＨｉｇｈになると、センス回路２３は、センス回路２３におけるマッチ線ＭＬのデータをラッチし、センスアンプ出力信号ＳＡＯＵＴにそのデータを出力する。
【０１６１】
図２１は、マッチ線ＭＬがＨｉｇｈになるタイミングのヒストグラムを示す。なお、ワード回路のビット数はＮとする。
【０１６２】
記憶データと入力データの内積がＭの場合、マッチ線ＭＬがＨｉｇｈになるタイミングは、式１２に示した時刻ＴＭ０を中心に分布する。
ＴＭ０＝（Ｎ―Ｍ）・ｔ（０，ｔｒ）＋Ｍ・ｔ（１）・・・（１２）
同様に、記憶データと入力データの内積がＭ−１の場合、マッチ線ＭＬがＨｉｇｈになるタイミングは、式１３に示した時刻ＴＭ１を中心に分布する。
ＴＭ１＝（Ｎ―Ｍ）・ｔ（０，ｔｒ）＋（Ｍ−１）・ｔ（１）＋ｔ（０）・・・（１３）
同様に、記憶データと入力データの内積がＭ−２の場合、マッチ線ＭＬがＨｉｇｈになるタイミングは、式１４で示した時刻ＴＭ２を中心に分布する。
ＴＭ２＝（Ｎ―Ｍ）・ｔ（０，ｔｒ）＋（Ｍ−２）・ｔ（１）＋２・ｔ（０）・・・（１４）
内積がＭ−３以下の場合については、図２１には示していない。
【０１６３】
各分布の間隔は、ｔ（０）−ｔ（１）である。
【０１６４】
ここで、各分布のばらつきがσｔとする。このとき、図２１において、（Ｎ―Ｍ）・ｔ（０，ｔｒ）＋Ｍ・ｔ（１）＋σｔから（Ｎ―Ｍ）・ｔ（０，ｔｒ）＋（Ｍ−１）・ｔ（１）＋ｔ（０）−σｔの間がウィンドウＷ３となる。例えば、内積がＭのワード回路２４を検索したい場合、図２１のウィンドウＷ３において、クロック信号ＣＬＫをＨｉｇｈレベルに遷移すればよい。なお、ウィンドウＷ３は、式１５で表される。
Ｗ３＝ｔ（０）−ｔ（１）−２・σｔ・・・（１５）
すると、記憶データと入力データの内積がＭのワード回路２４に対応したセンスアンプ出力信号ＳＡＯＵＴはＨｉｇｈレベル、それ以外はＬｏｗレベルになる。すなわち、内積がＭのワード回路２４のみ検出することができる。
【０１６５】
同様に、第２の実施形態の連想メモリは、内積がｄビット以上のワード回路２４を検出することができる（ｄは０以上Ｎ以下の整数）。
【０１６６】
以上のように、本発明の第２の実施形態によれば、入力データと複数の記憶データの演算結果がｄビット以上であるワード回路を検出することができる。ただし、本実施形態によれば、類似度の具体的な演算として内積の演算の場合を示した。
【０１６７】
また、本発明の第２の実施形態によれば、データを記憶する機能と、遅延を発生する機能の両方を抵抗変化型不揮発性記憶素子で実現することで、連想メモリセルの面積を小さくすることができる。
【０１６８】
さらに、本発明の第２の実施形態に係る連想メモリセルを用いた連想メモリを構成すれば、電源を容易に遮断できるため、リーク電流を抑えることができる。
（変形例１）
次に、第２の実施形態に係る連想メモリ２の変形例１について説明する。
【０１６９】
変形例２の連想メモリ２は、図２２に示した回路構成を取る。図１９に示した回路構成とは、センス回路２７に比較回路２７０を備えている点のみが異なる。なお、重複する構成についての説明は適宜省略される。
【０１７０】
第２の実施形態の変形例１では、式１６に示した内積の差に対する階段関数の演算を実行する。
2014208051.tif 000003
【０１７１】
ここで、Ａ２ｎは、ｎを０以上の整数として、２ｎ行目のワード回路２４に記憶されているデータである。Ａ２ｎ＋１は、２ｎ＋１行目のワード回路２４に記憶されているデータである。Ｂは入力データである。ＳＡＯＵＴｎはｎ番目の比較回路２７０の出力である。
【０１７２】
第２の実施形態の変形例１は、式１６の演算を隣接するワード回路２４間の遅延時間の比較で行う。以下、遅延時間の比較で式１６を実行できることを示す。
【０１７３】
変形例１のセンスアンプは、２ｎ行目のワード回路２４の遅延時間と２ｎ＋１行目のワード回路２４との遅延時間の比較の結果、式１７のように出力する。
2014208051.tif 000004
【０１７４】
ここで、式１７のそれぞれの不等式において、第１項（一つ目の角括弧内）は２ｎ＋１行目の遅延時間であり、第２項（二つ目の角括弧内）は２ｎ行目の遅延時間である。なお、Ｎはワード回路２４のビット数、Ｍは入力データＢにおける１の数、Ｃ２ｎは２ｎ行目のワード回路２４の記憶データと入力データとの内積Ａ２ｎ・Ｂ、Ｃ２ｎ＋１は２ｎ＋１行目のワード回路の記憶データと入力データとの内積Ａ２ｎ＋１・Ｂである。ｔ（０、ｔｒ）、ｔ（０）、ｔ（１）は、図１７の論理演算テーブル２８中の遅延時間（４列目）である。ただし、遅延のばらつきがないと仮定している。式１７を書き換えると、式１８になる。
2014208051.tif 000005
【０１７５】
式１８において、ｔ（０）−ｔ（１）は正であるため、式１８は式１６と等価である。
【０１７６】
図２２を参照して、本発明の第２の実施形態に係る変形例１の連想メモリ１について説明する。なお、これ以降、隣接するワード回路２４間の処理を説明するため、隣接する奇数行のワード回路２４をワード回路２４−２ｎ＋１、偶数行のワード回路２４をワード回路２４−２ｎと表記し、その他の構成要素についても対応するように表記する（ｎ：整数）。
【０１７７】
演算開始信号ＳＴＡＲＴは、ロウ側回路２２のバッファ２２０の入力端子に接続され、バッファ２２０の出力端子はマッチ線ＭＬに接続される。センス回路２７は、比較回路２７０を備える。比較回路２７０−ｎは、ワード回路２４−２ｎとワード回路２４−２ｎ＋１のマッチ線ＭＬの出力を受ける。比較回路２７０−ｎは、マッチ線ＭＬ２ｎとマッチ線ＭＬ２ｎ＋１のどちらが先にＨｉｇｈレベルに遷移したかを検出する。マッチ線２ｎが先にＨｉｇｈレベルに遷移した場合、比較回路２７０−ｎの出力信号ＳＡＯＵＴｎはＬｏｗレベルである。マッチ線ＭＬ２ｎ＋１が先にＨｉｇｈレベルに遷移した場合、比較回路２７０ｎの出力信号ＳＡＯＵＴｎはＨｉｇｈレベルである。
【０１７８】
図２３は、本実施形態の変形例１の連想メモリ１における比較回路２７０の回路図である。
【０１７９】
比較回路２７０は、マッチ線ＭＬｏｕｔ０とＭＬｏｕｔ１のどちらが先にＨｉｇｈレベルに遷移するかを検出する回路である。
【０１８０】
比較回路２７０は、４つのＰＭＯＳトランジスタＰ０〜Ｐ３（２７１〜２７４）と、５つのＮＭＯＳトランジスタＮ０〜Ｎ４（２７５〜２７９）と、インバータＩＮＶ０（インバータ２８０）及びインバータＩＮＶ１（インバータ２８２）と、バッファＢＵＦ０（バッファ２８３）と、を有する。なお、図２３において、ＰＭＯＳトランジスタＰ０〜Ｐ３はＰＭＯＳトランジスタ２７１〜２７４であり、ＮＭＯＳトランジスタＮ０〜Ｎ４はＮＭＯＳトランジスタ２７５〜２７９である。また、図２３において、インバータＩＮＶ０はインバータ２８０であり、インバータＩＮＶ１はインバータ２８２であり、バッファＢＵＦ０はバッファ２８３である。
【０１８１】
ＰＭＯＳトランジスタＰ０とＮＭＯＳトランジスタＮ０とはインバータＩＮＶ２（インバータ２９１）を形成しＰＭＯＳトランジスタＰ１とＮＭＯＳトランジスタＮ１とはインバータＩＮＶ３（インバータ２９３）を形成する。インバータＩＮＶ２とインバータＩＮＶ３は、１ビットのデータを保持するようにクロスカップルされる。
【０１８２】
インバータＩＮＶ２において、電源端子はセンスアンプの電源電圧Ｖｄｄｓａに接続され、Ｇｎｄ端子はＮＭＯＳトランジスタＮ２のドレインに接続される。インバータＩＮＶ３において、電源端子はセンスアンプの電源電圧Ｖｄｄｓａに接続され、Ｇｎｄ端子はＮＭＯＳトランジスタＮ３のドレインに接続される。インバータＩＮＶ２の出力端子は、インバータＩＮＶ０の入力端子及びＰＭＯＳトランジスタＰ２に接続される。インバータＩＮＶ３の出力端子は、インバータＩＮＶ１の入力端子及びＰＭＯＳトランジスタＰ３に接続される。インバータＩＮＶ１の出力端子は、センスアンプ出力信号ＳＡＯＵＴを出力する。
【０１８３】
ＮＭＯＳトランジスタＮ２において、ゲートはマッチ線ＭＬｏｕｔ０に接続され、ソースはＧｎｄに接地される。ＮＭＯＳトランジスタＮ３において、ゲートはマッチ線ＭＬｏｕｔ１に接続され、ソースはＧｎｄに接地される。ＰＭＯＳトランジスタＰ２において、ゲートはプリチャージ信号の反転信号／ＰＲＣに接続され、ソースはセンサアンプの電源電圧Ｖｄｄｓａに接続される。ＰＭＯＳトランジスタＰ３において、ゲートはプリチャージ信号の反転信号／ＰＲＣに接続される。バッファＢＵＦ０において、入力端子はＭＬｏｕｔ０に接続され、出力端子はトランジスタＮ４のゲートに接続される。ＮＭＯＳトランジスタＮ４において、ドレインはインバータＮ２のＧｎｄ端子に接続され、ソースは接地される。なお、センスアンプの電源電圧Ｖｄｄｓａは連想メモリセルの電源電圧Ｖｄｄと一致していなくても、正常に動作する。
【０１８４】
比較回路２７０は、プリチャージ時、プリチャージ信号の反転信号／ＰＲＣがＬｏｗレベル、マッチ線ＭＬｏｕｔ０、ＭＬｏｕｔ１がＬｏｗレベルであり、ＰＭＯＳトランジスタＰ２とＰ３がノードＤ、／ＤをＨｉｇｈレベルにする。その後、比較時、プリチャージ信号の反転信号／ＰＲＣがＨｉｇｈレベルになる。
【０１８５】
マッチ線ＭＬｏｕｔ０がＭＬｏｕｔ１より先にＨｉｇｈレベルに遷移すると、ノードＤの電荷が放電し、Ｌｏｗレベルになる。一方、ノード／ＤはＨｉｇｈレベルであり、出力信号ＳＡＯＵＴはＬｏｗレベルである。
【０１８６】
マッチ線ＭＬｏｕｔ１がＭＬｏｕｔ０より先にＨｉｇｈレベルに遷移すると、ノード／Ｄの電荷が放電し、Ｌｏｗレベルになる。一方、ノードＤはＨｉｇｈレベルであり、出力信号ＳＡＯＵＴはＨｉｇｈレベルになる。
【０１８７】
マッチ線ＭＬｏｕｔ０とＭＬｏｕｔ１がある時間ばらつき２σｔ以内のほぼ同時にＨｉｇｈレベルに遷移した場合、ＮＭＯＳトランジスタＮ２及びＮＭＯＳトランジスタＮ３がＯＮし、ノードＤ及び／Ｄの電荷が放電し始める。その後、ＢＵＦ０の伝播遅延後にＮＭＯＳトランジスタＮ４がＯＮし、ノードＤはＬｏｗレベル、ノード／ＤはＨｉｇｈレベルになり、出力信号ＳＡＯＵＴはＬｏｗレベルになる。
【０１８８】
以上のように、本実施形態の変形例１における連想メモリ２は、内積の差に対する階段関数の演算を実行することができる。本実施形態の変形例１における連想メモリ２は、比較される２つのワード回路２４が、同じ環境温度・同じ電源電圧で動作するため、環境温度や電源電圧が変化しても適切に動作することができる。また、変形例１における連想メモリ２では、比較される２つのワード回路２４の距離が近いため、トランジスタの特性やＭＴＪの抵抗値ばらつきはグローバルなばらつきは含まれず、ローカルばらつきのみである。そのため、変形例１における連想メモリ２では、入力データと記憶データとを精度良く比較することができ、誤読み出しを抑制できる。
【０１８９】
なお、第２の実施形態に係る連想メモリ２は、３値の連想メモリセル２０のデータと、入力データの内積を演算するとみなすこともできる。具体的には、３値の連想メモリセル２０は、２ｎ行ｐ列目と２ｎ＋１行目ｐ列目の連想メモリセルから構成され、図２４に示した論理演算テーブル２９に示したように３つの状態を取る。
【０１９０】
論理演算テーブル２９の第１列目のＲ１は、２ｎ＋１行目ｐ列目の連想メモリセルの抵抗である。論理演算テーブル２９の第２列目のＲ２は、２ｎ行目ｐ列目の連想メモリセルの抵抗である。論理演算テーブル２９の第３列目は、記憶データＡである。すると、式１６は式１９に書き換えられる。
2014208051.tif 000006
【０１９１】
ここでＡｎは、ｎを０以上の整数として、ｎ行目の３値の連想メモリセル２０に記憶されているデータである。Ｂは入力データである。ＳＡＯＵＴｎはｎ番目の比較回路２７０の出力である。従って、第２の実施形態の連想メモリ２は、３値の記憶データと入力データの内積に対する階段関数の演算を実行できる。
【０１９２】
（第３の実施形態）
図２５は、本発明の第３の実施形態に係る連想メモリ３の構成を概略的に示すブロック図である。なお、第１及び第２の実施形態と重複する説明は適宜省略する。
【０１９３】
本発明の第３の実施形態に係る連想メモリ３は、２次元のマトリックス状に配置された複数の連想メモリセル３０を備え、第２方向に配置された複数の連想メモリセル３０は、ワード回路３４を構成する。なお、図２５においては、複数の連想メモリセル３０及びワード回路３４を区別するために、それぞれの構成要素について符号の末尾に列番号及び行番号を付しているが、特に区別しない場合はそれらの番号を省略する。
【０１９４】
また、連想メモリ３は、複数のサーチ線対ＳＬ、／ＳＬと、複数のマッチ線ＭＬと、複数のワード線対ＷＬ、／ＷＬと、を含む。複数のサーチ線対ＳＬ、／ＳＬは、第１方向に配置された連想メモリセル３０に共通に接続される。
【０１９５】
複数のマッチ線ＭＬは、第２方向に配置された連想メモリセル３０を直列に接続する。複数のワード線対ＷＬ、／ＷＬは、第２方向に配置された連想メモリセル３０に共通に接続される。なお、図２５においては、複数の配線を区別するために、それぞれの配線について符号の末尾に列番号又は行番号を付しているが、特に区別しない場合は末尾の番号を省略する。
【０１９６】
さらに、連想メモリ３は、カラム側回路３１と、ロウ側回路３２と、センス回路３３と、を含む。カラム側回路３１は、複数のサーチ線対ＳＬ、／ＳＬと接続され、演算時、入力データに応じて、サーチ線対ＳＬ、／ＳＬを駆動する。ロウ側回路３２は、複数のマッチ線ＭＬ、ワード線ＷＬと接続され、マッチ線ＭＬ、ワード線ＷＬを駆動する。センス回路３３は、複数のマッチ線ＭＬと接続され、マッチ線ＭＬの電位をセンスする。
【０１９７】
（連想メモリセル）
図２６は、本発明の第３の実施形態における連想メモリセル３０の具体的な回路図（連想メモリセル３００）である。
【０１９８】
本回路構成の連想メモリセル３００を含むワード回路３４は、第２の実施形態と同様、記憶データと入力データの内積を、ワード回路３４の遅延時間に反映させることができる。
【０１９９】
充放電回路３５０は、ＮＭＯＳトランジスタ３５１と、ＰＭＯＳトランジスタ３５２と、インバータ３５３と、を有する。ＮＭＯＳトランジスタ３５１及びＰＭＯＳトランジスタ３５２は、ＣＭＯＳインバータ３５４を形成する。
【０２００】
マッチ線入力端子ＭＬｉｎは、ＮＭＯＳトランジスタ３５１のゲートとＰＭＯＳトランジスタ３５２のゲートに接続される。インバータ３５３の入力端子は、ＰＭＯＳトランジスタ３５２のドレインと、ＮＭＯＳトランジスタ３５１のドレインに接続される。インバータ３５３の出力端子は、マッチ線出力端子ＭＬｏｕｔに接続される。ＰＭＯＳトランジスタ３５２のソースは電源電圧Ｖｄｄに接続され、ＮＭＯＳトランジスタ３５１のソースは抵抗ネットワーク３６０の抵抗変化型不揮発性記憶素子Ｒ０の一端に接続される。
【０２０１】
抵抗ネットワーク３６０は、抵抗変化型不揮発性記憶素子Ｒ０（３６１）と、ＮＭＯＳ論理回路３７０（論理回路）と、を有する。ＮＭＯＳ論理回路３７０（論理回路）は、第１のＮＭＯＳトランジスタであるＮＭＯＳトランジスタＮ０（ＮＭＯＳトランジスタ３７１）と、第２のＮＭＯＳトランジスタであるＮＭＯＳトランジスタＮ１（ＮＭＯＳトランジスタ３７２）と、を含む
抵抗変化型不揮発性記憶素子Ｒ０の一端は充放電回路３５０のＮＭＯＳトランジスタ３５１のソース及びＮＭＯＳトランジスタＮ１のドレインに接続され、他端はＮＭＯＳトランジスタＮ０のドレインに接続される。ＮＭＯＳトランジスタＮ０において、ゲートはサーチ線ＳＬに接続され、ドレインは抵抗変化型不揮発性記憶素子Ｒ０の他端に接続され、ソースはワード線ＷＬに接続される。ＮＭＯＳトランジスタＮ１において、ドレインは充放電回路３５０のＮＭＯＳトランジスタ３５１のソース及び抵抗変化型不揮発性記憶素子Ｒ０の一端に接続され、ゲートはサーチ線対の他方／ＳＬに接続され、ソースはワード線対の他方／ＷＬに接続される。
【０２０２】
本発明の第３実施形態における連想メモリセル３００の論理演算は、論理演算時にワード線対ＷＬと／ＷＬが接地される点を除いて第２の実施形態と同様であるため、説明を省略する。
【０２０３】
（書き込み）
本発明の第３の実施形態における連想メモリセル３０の抵抗変化素子へのデータの書き込みについて、図２５及び図２６を参照して説明する。
【０２０４】
図２６の抵抗変化型不揮発性記憶素子Ｒ０は、ある書き込み電流の閾値以上の電流が流れる方向に依存して抵抗値が変化する。具体的には、トランジスタＮ０から抵抗変化型不揮発性記憶素子Ｒ０を介してトランジスタＮ１へ書き込み電流が流れた場合、抵抗変化型不揮発性記憶素子Ｒ０は低抵抗状態ＲＬに変化する。逆に、トランジスタＮ１から抵抗変化型不揮発性記憶素子Ｒ０を介してトランジスタＮ０へ書き込み電流が流れた場合、抵抗変化型不揮発性記憶素子Ｒ０は高抵抗状態ＲＨへ変化する。本実施形態では、低抵抗状態ＲＬをデータ「１」に対応付け、高抵抗状態ＲＨをデータ「０」に対応付ける。
【０２０５】
本実施形態における連想メモリ３０のデータの書き込み時、まず全てのマッチ線ＭＬｉｎ、ＭＬｏｕｔ、サーチ線対ＳＬ、／ＳＬ、ワード線対ＷＬ、／ＷＬはＬｏｗレベルに設定される。次に、データを書き込む選択セルに接続されたサーチ線対ＳＬ、／ＳＬはＨｉｇｈレベルに設定される。さらに、書き込むデータに応じて、選択セルに接続されたワード線対ＷＬ、／ＷＬを駆動する。
【０２０６】
データ「１」を書き込むには、ワード線ＷＬをＨｉｇｈレベル、ワード線対の他方／ＷＬをＬｏｗレベルに設定する。書き込み電流はＷＬから、選択セルのトランジスタＮ０と抵抗変化型不揮発性記憶素子Ｒ０とトランジスタＮ１を介して、／ＷＬへ流れる。このとき、選択セルの抵抗変化型不揮発性記憶素子Ｒ０は低抵抗状態ＲＬになる。
【０２０７】
データ「０」を書き込むには、ワード線ＷＬをＬｏｗレベル、ワード線対の他方／ＷＬをＨｉｇｈレベルに設定する。書き込み電流は／ＷＬから選択セルのトランジスタＮ１と抵抗変化型不揮発性記憶素子Ｒ０とトランジスタＮ０を介してＷＬへ流れる。このとき、選択セルの抵抗変化型不揮発性記憶素子Ｒ０は高抵抗状態ＲＨになる。
【０２０８】
（読み出し）
本発明の第３の実施形態における連想メモリセル３００の抵抗変化素子におけるデータの読み出しについて、図２６を参照して説明する。
【０２０９】
読み出し時、まず全てのＭＬｉｎ、ＭＬｏｕｔ、サーチ線対ＳＬ、／ＳＬ、ワード線対ＷＬ、／ＷＬはＬｏｗレベルに設定される。次に、データを読み出す選択セルに接続されたサーチ線対ＳＬ、／ＳＬはＨｉｇｈレベルに設定される。さらに、ワード線ＷＬは読み出し電圧Ｖｒに設定される。ワード線対の他方／ＷＬはＬｏｗレベルに設定される。読み出し電流は、ワード線ＷＬから、トランジスタＮ０、抵抗変化型不揮発性記憶素子Ｒ０、トランジスタＮ１を介して、ワード線対ＷＬ、／ＷＬの他方に流れる。読み出し電流は、抵抗変化型不揮発性記憶素子Ｒ０の抵抗状態に応じて変化し、ロウ側回路３２でデータを判別する。
【０２１０】
以上のように、本発明の第３の実施形態によれば、データの演算で利用するトランジスタは、データの書き込み時には書き込み電流を流すことに利用され、データの読み出し時には読み出し電流を流すことに利用することができる。そのため、セルサイズを小さくすることができる。
【０２１１】
（第４の実施形態）
図２７は、本発明の第４の実施形態に係る連想メモリ４の構成を概略的に示すブロック図である。なお、第１〜第３の実施形態と重複する説明は適宜省略する。
【０２１２】
連想メモリ４は、２次元のマトリックス状に配置された複数の連想メモリセル４０を備え、第２方向に配置された複数の連想メモリセル４０はワード回路４４を構成する。なお、図２７においては、複数の連想メモリセル４０及びワード回路４４を区別するために、それぞれの構成要素について符号の末尾に列番号及び行番号を付しているが、特に区別しない場合はそれらの番号を省略する。
【０２１３】
また、連想メモリ４は、複数のサーチ線対ＳＬ、／ＳＬと、複数の書き込みビット線ＷＢＬ、／ＷＢＬと、複数のマッチ線ＭＬと、複数のワード線ＷＬと、を含む。
【０２１４】
複数のサーチ線対ＳＬ、／ＳＬ及び複数の書き込みビット線ＷＢＬ、／ＷＢＬは、第１方向に配置された連想メモリセル４０に共通に接続される。複数のマッチ線ＭＬは、第２方向に配置された連想メモリセル４０を直列に接続する。複数のワード線ＷＬは、第２方向に配置された連想メモリセルに共通に接続される。なお、図２７においては、複数の配線を区別するために、それぞれの配線について符号の末尾に列番号又は行番号を付しているが、特に区別しない場合は末尾の番号を省略する。
【０２１５】
さらに、連想メモリ４は、カラム側回路４１と、ロウ側回路４２と、センス回路４３と、を含む。カラム側回路４１は、複数のサーチ線対ＳＬ、／ＳＬと接続され、演算時、入力データに応じて、サーチ線対ＳＬ、／ＳＬを駆動する。さらに、カラム側回路４１は、複数の書き込みビット線対ＷＢＬ、／ＷＢＬに接続され、データ書き込み時、書き込みデータに応じて、書き込みビット線対を駆動する。ロウ側回路４２は、複数のマッチ線ＭＬと、複数のワード線ＷＬに接続され、マッチ線ＭＬとワード線ＷＬを駆動する。センス回路４３は、複数のマッチ線ＭＬと接続され、マッチ線ＭＬの電位をセンスする。
【０２１６】
（連想メモリセル）
図２８は、本発明の第４の実施形態における連想メモリセル４０の具体的な回路図（連想メモリセル４００）である。
【０２１７】
本発明の第４の実施形態に係る連想メモリセル４００は、充放電回路４５０と、抵抗ネットワーク４６０と、磁性素子部と、を備える。本回路構成の連想メモリセル４００から構成されるワード回路４４は、第２の実施形態と同様、記憶データと入力データの内積をワード回路の遅延時間に反映させることができる。
【０２１８】
充放電回路４５０は、ＮＭＯＳトランジスタ４５１と、ＰＭＯＳトランジスタ４５２と、インバータ４５３と、を有する。ＮＭＯＳトランジスタ４５１及びＰＭＯＳトランジスタ４５２は、ＣＭＯＳインバータ４５４を形成する。
【０２１９】
マッチ線入力端子ＭＬｉｎは、ＮＭＯＳトランジスタ４５１のゲートとＰＭＯＳトランジスタ４５２のゲートに接続される。インバータ４５３の入力端子は、ＰＭＯＳトランジスタ４５２のドレインと、ＮＭＯＳトランジスタ４５１のドレインに接続される。インバータ４５３の出力端子は、マッチ線出力端子ＭＬｏｕｔに接続される。ＰＭＯＳトランジスタ４５２のソースは電源電圧Ｖｄｄに接続され、ＮＭＯＳトランジスタ４５１のソースは抵抗ネットワーク４６０の抵抗変化型不揮発性記憶素子Ｒ０の一端に接続される。
【０２２０】
抵抗ネットワーク４６０は、抵抗変化型不揮発性記憶素子Ｒ０と、ＮＭＯＳトランジスタＮ０及びＮＭＯＳトランジスタＮ１を含むＮＭＯＳ論理回路４６５（論理回路）と、を有する。なお、図２８において、抵抗変化型不揮発性記憶素子Ｒ０は抵抗変化型不揮発性記憶素子４７０、ＮＭＯＳトランジスタＮ０はＮＭＯＳトランジスタ４６６、ＮＭＯＳトランジスタＮ１はＮＭＯＳトランジスタ４６７である。
【０２２１】
抵抗変化型不揮発性記憶素子Ｒ０の一端は充放電回路４５０のＮＭＯＳトランジスタ４５１のソースに接続され、他端はＮＭＯＳトランジスタＮ０のドレインに接続される。ＮＭＯＳトランジスタＮ０において、ゲートはサーチ線ＳＬに接続され、ソースは接地される。ＮＭＯＳトランジスタＮ１において、ドレインは充放電回路４５０のＮＭＯＳトランジスタ４５１のソース及び抵抗変化型不揮発性記憶素子Ｒ０の一端に接続され、ゲートはサーチ線対の他方／ＳＬに接続され、ソースは接地される。
【０２２２】
（磁性素子部）
磁性素子部は、ＮＭＯＳトランジスタＮ２（ＮＭＯＳトランジスタ４９２）及びＮＭＯＳトランジスタＮ３（ＮＭＯＳトランジスタ４９３）と磁性素子４８０を備える。
【０２２３】
ＮＭＯＳトランジスタＮ２において、ゲートはワード線ＷＬに接続され、ドレイン／ソースの一方は書き込みビット線ＷＢＬに、他端は磁性素子４８０に接続される。ＮＭＯＳトランジスタＮ３において、ゲートはワード線ＷＬに接続され、ドレイン／ソースの一方は書き込みビット線の他方／ＷＢＬに、他端は磁性素子４８０に接続される。
【０２２４】
図２９及び図３０は、本発明の第４の実施形態に係る磁性素子４８０及び抵抗変化型不揮発性記憶素子Ｒ０（抵抗変化型不揮発性記憶素子４７０）の概略平面図及び断面図である。
【０２２５】
本実施形態に係る磁性素子４８０は、記録層４８１と、第１固定層４８２と、第２固定層４８３と、第１端子Ｔ１と、第２端子Ｔ２と、を備えた磁壁移動素子である。
【０２２６】
抵抗変化型不揮発性記憶素子Ｒ０は、センス層４７１と、トンネルバリア層４７２と、リファレンス層４７３と、第３端子Ｔ３と、第４端子Ｔ４と、を備えた磁気トンネル接合（ＭＴＪ）素子である。なお、図２９及び図３０において、抵抗変化型不揮発性記憶素子Ｒ０は抵抗変化型不揮発性記憶素子４７０である。
【０２２７】
なお、図２９において、＋Ｚ方向は、紙面に対して垂直に紙面の裏面から表面に向かう方向で定義され、Ｘ方向及びＹ方向は、Ｚ方向に直交する。さらに、Ｘ方向は、素子の長手方向であり、Ｙ方向は、Ｘ方向及びＺ方向に垂直な方向として定義される。また、図中矢印は各磁性層の磁化方向を示している。
【０２２８】
記録層４８１は、強磁性体である。より詳細には、垂直磁気異方性を有する垂直磁化膜で形成される。記録層４８１の材料は、鉄（Ｆｅ）、コバルト（Ｃｏ）、ニッケル（Ｎｉ）のうちから選択される少なくとも１つ以上を含むことが望ましい。記録層４８１には、Ｃｏ／Ｎｉ積層膜、Ｃｏ／Ｐｄ積層膜、Ｃｏ／Ｐｔ積層膜、Ｃｏ−Ｃｒ−Ｐｔ合金、Ｃｏ−Ｆｅ−Ｂ合金などが例示される垂直磁気異方性を有する薄膜を用いる（Ｐｄ：パラジウム、Ｃｒ：クロム、Ｐｔ：白金、Ｂ：ホウ素）。
【０２２９】
第１固定層４８２及び第２固定層４８３は、強磁性体で形成される。より詳細には、垂直磁気異方性を有する垂直磁化膜で形成される。第１固定層４８２及び第２固定層４８３の材料は、記録層４８１と同様である。なお、第１固定層４８２及び第２固定層４８３の磁化は固定されており、書き込み及び読み出し動作によって変化しない。
【０２３０】
センス層４７１は、強磁性体で形成される。より詳細には、面内磁気異方性を有する面内磁化膜で形成される。センス層４７１の材料は、Ｆｅ、Ｃｏ、Ｎｉのうちから選択される少なくとも１つ以上を含むことが望ましい。センス層４７１は、Ｎｉ−Ｆｅ合金、Ｃｏ−Ｆｅ−Ｂ合金、Ｃｏ−Ｆｅ合金などが例示される面内磁気異方性を有する薄膜を用いる。センス４７１層は、磁化方向が＋Ｙ方向及び−Ｙ方向のいずれか一方に変更可能である。
【０２３１】
リファレンス層４７３は、強磁性体で形成される。より詳細には、面内磁気異方性を有する面内磁化膜で形成される。リファレンス層４７３の材料は、センス層４７１の場合と同様である。なお、リファレンス層４７３の磁化は固定されており、書き込み、及び、読み出し動作によって変化しない。そのために、例えば、リファレンス層４７３に反強磁性層（図示しない）が積層されてもよい。また、リファレンス層４７３は、強磁性層、非磁性層、強磁性層からなる積層膜であってもよい。その積層膜の２つの強磁性層の磁化は、反強磁性結合によって互いに反平行に向くように設定してもよい。
【０２３２】
トンネルバリア層４７２は、非磁性層である。トンネルバリア層４７２は絶縁膜で形成され、その材料としてはＭｇ−Ｏ、Ａｌ−Ｏ、Ｎｉ−Ｏ、Ｈｆ−Ｏが好適である。トンネルバリア層４７２は、センス層４７１とリファレンス層４７３に挟まれている。センス層４７１と、トンネルバリア層４７２と、リファレンス層４７３と、によって磁気トンネル接合（ＭＴＪ）が形成されている。なお、トンネルバリア層４７２の材料として、非磁性の半導体や金属材料が形成されている。
【０２３３】
記録層４８１は、内部を磁壁が移動可能である。図３０に示したように、記録層４８１は、第１固定領域４８４、第２固定領域４８５、反転領域４８６を含む。
【０２３４】
第１固定領域４８４は、第１固定層４８２により＋Ｚ方向に磁化が保持され、書き込み及び読み出し動作によって変化しない。第２固定領域４８５は、第２固定層４８３により−Ｚ方向に磁化が保持され、書き込み及び読み出し動作によって変化しない。反転領域４８６は、第１固定領域４８４と第２固定領域４８５との間に設けられ、磁化方向が＋Ｚ方向及び−Ｚ方向のいずれか一方に変更可能である。
【０２３５】
第１端子Ｔ１は、第１固定領域４８４（第１固定層４８２）に接続された電流端子であり、ＮＭＯＳトランジスタＮ３に接続される。第２端子Ｔ２は、第２固定領域４８５（第２固定層４８３）に接続された電流端子であり、ＮＭＯＳトランジスタＮ２に接続される。第３端子Ｔ３は、センス層４７１に接続された電流端子であり、充放電回路４５０に接続される。第４端子Ｔ４は、リファレンス層４７３に接続された電流端子であり、ＮＭＯＳトランジスタＮ０に接続される。
【０２３６】
（データ「０」及び「１」の磁化状態）
図３１及び図３２は、本実施形態に係る磁壁移動素子が取り得る２つの磁化状態を示している。
【０２３７】
それぞれの磁化状態は、記憶データ「０」と「１」のいずれかに対応付けられる。例として、第１固定領域４８４の磁化方向は＋Ｚ方向に保持されている。第２固定領域４８５の磁化方向は、−Ｚ方向に保持されている。リファレンス層４７３の磁化は＋Ｙ方向に固定されている。
【０２３８】
図３１に示されるように、反転領域４８６の磁化が＋Ｚ方向の場合、反転領域４８６と第２固定領域４８５の境の近傍位置に磁壁４９０が形成される。反転領域４８６からの漏洩磁界は、センス層４７１の位置において、＋Ｙ方向の成分を有し、センス層４７１の磁化は、漏洩磁界の方向に従って、＋Ｙ方向に向く。この場合、センス層４７１とリファレンス層４７３の磁化は平行であり、抵抗変化型不揮発性記憶素子Ｒ０の抵抗値は低くなる（低抵抗状態）。なお、抵抗変化型不揮発性記憶素子Ｒ０の低抵抗状態は、データ「１」に対応付けられる。
【０２３９】
図３２に示されるように、反転領域４８６の磁化が−Ｚ方向の場合、反転領域４８６と第１固定領域４８４の境の近傍位置に磁壁４９０が形成される。反転領域４８６からの漏洩磁界は、センス層４７１位置において、−Ｙ方向の成分を有し、センス層４７１の磁化は、漏洩磁界の方向に従って、−Ｙ方向に向く。この場合、センス層４７１とリファレンス層４７３の磁化は反平行であり、抵抗変化型不揮発性記憶素子Ｒ０の抵抗値は高くなる（高抵抗状態）。なお、抵抗変化型不揮発性記憶素子Ｒ０の高抵抗状態は、データ「０」に対応付けられる。
【０２４０】
（書き込み）
次に、本実施形態に係る磁壁移動素子の書き込み動作について説明する。
【０２４１】
記憶データの書き換えは、磁壁４９０を移動させて反転領域４８６の磁化方向を反転させることにより行われる。その磁壁移動のために、記録層４８１において、書き込み電流が面内方向に供給される。その書き込み電流を担う伝導電子の方向に従って、磁壁４９０が記録層中を移動する。
【０２４２】
例として、第１固定領域４８４の磁化方向は＋Ｚ方向に保持されている。第２固定領域４８５の磁化方向は、−Ｚ方向に保持されている。書き込み時、「電流駆動磁壁移動」によって、磁壁４９０が反転領域４８６を移動するのに必要な閾値電流値より大きな書き込み電流が供給される。
【０２４３】
データ「０」からデータ「１」への書き換え時、書き込み電流は第２端子Ｔ２から、記録層４８１を通り、第１端子Ｔ１へ流れる。この場合、反転領域４８６には、第１固定領域４８４からスピン偏極した電子が注入される。注入された電子のスピンは、第１固定領域４８４と反転領域４８６の境にある磁壁４９０を第２固定領域４８５の方向へ駆動する。その結果、意図したデータ「１」を書き込める。
【０２４４】
データ「１」からデータ「０」への書き換え時、書き込み電流は第１端子Ｔ１から、記録層４８１を通り、第２端子Ｔ２へ流れる。この場合、反転領域４８６には、第２固定領域４８５からスピン偏極した電子が注入される。注入された電子のスピンは、第２固定領域４８５と反転領域４８６の境にある磁壁４９０を第１固定領域４８４の方向へ駆動する。その結果、意図したデータ「０」を書き込める。
【０２４５】
本発明の第４の実施形態における連想メモリセル４０の論理演算は、第２実施形態と同様のため、説明を省略する。
【０２４６】
本発明の第４の実施形態における連想メモリセル４００の抵抗変化素子におけるデータの書き込みについて、図２７、図２８を参照して説明する。
【０２４７】
本実施形態における連想メモリ４のデータの書き込み時、まず全てのマッチ線ＭＬｉｎ、ＭＬｏｕｔ、サーチ線対ＳＬ、／ＳＬ、書き込みビット線対ＷＢＬ、／ＷＢＬ、ワード線ＷＬはＬｏｗレベルに設定される。
【０２４８】
次に、データを書き込む選択セルに接続されたワード線ＷＬはＨｉｇｈレベルに設定される。
【０２４９】
さらに、書き込むデータに応じて、選択セルに接続された書き込みビット線対ＷＢＬ、／ＷＢＬを駆動する。
【０２５０】
データ「１」を書き込むには、書き込みビット線ＷＢＬをＨｉｇｈレベル、書き込みビット線対の他方／ＷＢＬをＬｏｗレベルに設定する。書き込み電流はＷＢＬから、選択セルのトランジスタＮ２と磁性素子４８０とトランジスタＮ３を介して、／ＷＢＬへ流れる。このとき、選択セルの抵抗変化型不揮発性記憶素子Ｒ０は低抵抗状態ＲＬになる。
【０２５１】
データ「０」を書き込むには、書き込みビット線ＷＢＬをＬｏｗレベル、書き込みビット線対の他方／ＷＢＬをＨｉｇｈレベルに設定する。書き込み電流は、／ＷＢＬから選択セルのトランジスタＮ３と磁性素子４８０とトランジスタＮ２を介してＷＢＬへ流れる。このとき、選択セルの抵抗変化型不揮発性記憶素子Ｒ０は高抵抗状態ＲＨになる。
【０２５２】
本実施形態の連想メモリセル４００は、データの演算時にセンス電流が流れるパスと、データの書き込み時に書き込み電流が流れるパスを物理的に分離することができる。従って、データの演算に適した抵抗値を抵抗変化型不揮発性記憶素子Ｒ０の抵抗値に設定し、データの書き込みに適した抵抗値を磁性素子４８０の抵抗値に設定することができる。抵抗変化型不揮発性記憶素子Ｒ０の抵抗値が大きいほど、図２７に示したマッチ線ＭＬがＨｉｇｈになるタイミングの隣接する分布間の時間間隔が大きくなり、センス回路４３の誤検出を低減できる。一方、磁性素子４８０の抵抗値は低いほど、必要な書き込み電圧が低くでき、消費電力の観点で望ましい。
【０２５３】
以上のように、本発明の第４の実施形態によれば、データの演算時にセンス電流が流れるパスと、データの書き込み時に書き込み電流が流れるパスを物理的に分離することができる。そのため、センス回路の誤検出の低減や、消費電力の低減を実現することができる。
【０２５４】
（変形例）
次に、第４の実施形態に係る連想メモリ４の変形例について説明する。
【０２５５】
変形例の連想メモリセル４０１は、図３３に示した回路構成を取る。図２８に示した連想メモリセル４００とは、トランジスタＮ２及び磁性素子４８０の一端が充放電回路４５０に接続している点のみが異なる。そのため、図２８と同じ符号を用いる。なお、重複する説明は適宜省略する。
【０２５６】
変形例の連想メモリセル４０１は、連想メモリセル４０の構造に加え、トランジスタＮ２と磁性素子４８０が接続されたノードが、充放電回路４５０のＰＭＯＳトランジスタ４５２のドレインと、ＮＭＯＳトランジスタ４５１のドレインに接続される。変形例によれば、充放電回路４５０は、トランジスタＮ２とトランジスタＮ３の寄生容量を、電荷が充電される容量として利用することができる。
【０２５７】
遅延時間は、抵抗変化型不揮発性記憶素子Ｒ０の抵抗値だけでなく、電荷を蓄積する容量に依存する。そのため、遅延時間を設定する際の設計パラメータとして、書き込みトランジスタの寄生容量を利用できると、面積オーバーヘッドなしに、設計の自由度を広げることができる。例えば、容量が大きいほど、図２７に示したマッチ線ＭＬがＨｉｇｈになるタイミングの隣接する分布間の時間間隔が大きくなり、センス回路４３の誤検出を低減できる。
【０２５８】
以上のように、本発明の第４の実施形態によれば、充放電回路が電荷を蓄積する容量として書き込み用のトランジスタを利用することができ、センス回路の誤検出を低減できる。
【０２５９】
（第５の実施形態）
図３４は、本発明の第５の実施形態に係る連想メモリ５の構成を概略的に示すブロック図である。なお、第１の実施形態と重複する説明は適宜省略する。
【０２６０】
連想メモリ５は、２次元のマトリックス状に配置された複数の連想メモリセル５０を備え、第２方向に配置された複数の連想メモリセル５０はワード回路５４を構成する。なお、図３４においては、複数の連想メモリセル５０及びワード回路５４を区別するために、それぞれの構成要素について符号の末尾に列番号及び行番号を付しているが、特に区別しない場合はそれらの番号を省略する。
【０２６１】
また、連想メモリ５は、第１方向に配置された連想メモリセル５０に共通に接続された複数のサーチ線対ＳＬ、／ＳＬと、第２方向に配置された連想メモリセル５０を直列に接続する複数のマッチ線ＭＬと、を含む。
【０２６２】
さらに、連想メモリ５は、カラム側回路５１と、ロウ側回路５２と、センス回路５３と、データ入力用回路５４と、データ出力用回路５６と、を含む。カラム側回路５１は、複数のサーチ線対ＳＬ、／ＳＬと接続され、演算時、入力データに応じて、サーチ線対ＳＬ、／ＳＬを駆動する。ロウ側回路５２は、複数のマッチ線ＭＬと接続され、マッチ線ＭＬを駆動する。センス回路５３は、複数のマッチ線ＭＬと接続され、マッチ線ＭＬの電位をセンスする。
【０２６３】
さらに、データ入力用回路５４は第２方向に延伸され、データ出力用回路５６は第１方向に延伸され、データ入力用回路５４とデータ出力用回路５６とは互いに実質的に垂直の関係にある。データ入力用回路５４には、複数の入力データＤＩＮがパラレル又はシリアルに入力される。
【０２６４】
データ入力用回路５４は、入力データＤＩＮを保持する。データ入力用回路５４は、複数の入力データＤＩＮ＿ＲＥＧをカラム側回路５１へ出力する。
【０２６５】
データ出力用回路５６には、センス回路５３のセンス結果ＳＡＯＵＴがパラレルに入力される。データ出力用回路５６は、ＳＡＯＵＴデータを基に、連想メモリ５の外部へデータ出力ＤＯＵＴをパラレル又はシリアルに出力する。
【０２６６】
図３５は、本発明の第５の実施形態における複数の連想メモリ５を備える論理回路である。図３５では、４つの連想メモリ５（５−１〜５−４）が直列に接続されている。具体的には、前段の連想メモリのデータ出力用回路５６と、後段の連想メモリのデータ入力用回路５４とが平行するように配置され、前段の連想メモリ５のデータ出力用回路５６からの出力を、後段の連想メモリ５のデータ入力用回路５４へ入力する構成をとる。すなわち、隣接する連想メモリ５間において、前段の連想メモリ５のデータ入力用回路５４の長手方向と、後段の連想メモリ５のデータ出力用回路５６の長手方向とが、互いに向かい合うように近接して配置される。
【０２６７】
従って、隣接する連想メモリ５への入出力データの全て又は一部を、連想メモリ５間で容易に接続でき、広いバス幅を実現できる。また、１つの連想メモリ５を１ステージとした、パイプライン処理を容易に実現できる。
【０２６８】
以上のように、本発明の第５の実施形態によれば、連想メモリを直列に接続することができ、広いバス幅を実現することができる。また、１つの連想メモリを１ステージとした、パイプライン処理を容易に実現できる。
【０２６９】
（変形例）
次に、第５の実施形態に係る連想メモリ５を備えた論理回路の変形例について説明する。
【０２７０】
図３６は、本発明の第５の実施の形態における複数の連想メモリ５から構成される論理回路である。図３６では、４つの連想メモリ５が、プログラマブルスイッチ５７を介して配線５８に接続されている。なお、図３６の論理回路は複数のプログラマブルスイッチ５７を含むが、符号の上では区別しないで表記する。
【０２７１】
プログラマブルスイッチ５７は、フィールドプログラマブルゲートアレイで利用されているＳＲＡＭベースのスイッチを利用しても良い。もしくは、抵抗変化型不揮発性記憶素子であるＣＢＲＡＭ素子などを利用しても良い（ＣＢＲＡＭ：Ｃｏｎｄｕｃｔｉｖｅ  Ｂｒｉｄｇｉｎｇ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）。
【０２７２】
図３６に示した複数の連想メモリ５を備える論理回路は、図３５に示した論理回路とは異なり、プログラマブルスイッチ５７と配線５８を介してデータをやり取りする。そのため、データビット幅は制限されるものの、隣接する連想メモリ５間以外の連想メモリ５とデータをやり取りすることができ、より汎用性を向上できる。
【０２７３】
以上のように、本発明の第５の実施形態に係る変形例の論理回路によれば、隣接する連想メモリ間以外の連想メモリとデータをやり取りすることができ、より汎用性を向上できる。
【０２７４】
（第６の実施形態）
図３７は、本発明の第６の実施形態に係る連想メモリ６の構成を概略的に示すブロック図である。なお、第１〜５の実施の形態と重複する説明は適宜省略する。
【０２７５】
連想メモリ６は、２次元のマトリックス状に配置された複数の連想メモリセル６０を備え、第２方向に配置された複数の連想メモリセル６０はワード回路６４を構成する。また、第１方向に隣接した２つのセル回路は３値セル回路を構成する。３値セルは−１、０、１の３つの状態を取ることができる。ただし、図３７については、後述する図３８で説明する。なお、図３７においては、複数の連想メモリセル６０及びワード回路６４を区別するために、それぞれの構成要素について符号の末尾に列番号及び行番号を付しているが、特に区別しない場合はそれらの番号を省略する。
【０２７６】
また、連想メモリ６は、複数のサーチ線対ＳＬ、／ＳＬと、複数の書き込みビット線ＷＢＬ、／ＷＢＬと、複数のマッチ線ＭＬと、複数のワード線ＷＬと、を含む。
【０２７７】
複数のサーチ線対ＳＬ、／ＳＬ及び複数の書き込みビット線ＷＢＬ、／ＷＢＬは、第１方向に配置された連想メモリセル６０に共通に接続される。複数のマッチ線ＭＬは、第２方向に配置された連想メモリセル６０を直列に接続する。複数のワード線ＷＬは、第２方向に配置された連想メモリセルに共通に接続される。それぞれのワード線ＷＬは、２行の連想メモリセル６０に共通に接続される。なお、図３７においては、複数の配線を区別するために、それぞれの配線について符号の末尾に列番号又は行番号を付しているが、特に区別しない場合は末尾の番号を省略する。
【０２７８】
さらに、連想メモリ６は、カラム側回路６１と、ロウ側回路６２と、センス回路６３と、を含む。カラム側回路６１は、複数のサーチ線対ＳＬ、／ＳＬと接続され、演算時、入力データに応じて、サーチ線対ＳＬ、／ＳＬを駆動する。さらに、カラム側回路６１は、複数の書き込みビット線対ＷＢＬ、／ＷＢＬに接続され、データ書き込み時、書き込みデータに応じて、書き込みビット線対ＷＢＬ、／ＷＢＬを駆動する。ロウ側回路６２は、複数のマッチ線ＭＬ及び複数のワード線ＷＬに接続され、マッチ線ＭＬ及びワード線ＷＬを駆動する。センス回路６３は、複数のマッチ線ＭＬと接続され、マッチ線ＭＬの電位をセンスする。
【０２７９】
（連想メモリセル）
本発明の第６の実施形態における連想メモリ６は、図２２に示した第２の実施形態に係る連想メモリ１と同様の構成を取る。図２２に示したように、本実施形態のセンス回路２７は、比較回路２７０を備えている。なお、詳細については、第２の実施形態に係る変形例１の説明を参照する。
【０２８０】
図３８は、第６の実施形態における３値セル回路の回路図である。本回路構成の３値セル回路は、記憶データと入力データの内積をワード回路６４の遅延時間に反映させることができる。３値セル回路は、連想メモリセル６００及び連想メモリセル６０１から構成される。
【０２８１】
連想メモリセル６００は、充放電回路６１０と、抵抗ネットワーク６２０と、磁性素子部と、を備える。
【０２８２】
連想メモリセル６００の充放電回路６１０は、ＮＭＯＳトランジスタ６１１と、ＰＭＯＳトランジスタ６１２と、インバータ６１３と、を有する。ＮＭＯＳトランジスタ６１１及びＰＭＯＳトランジスタ６１２は、ＣＭＯＳインバータ６１４を形成する。
【０２８３】
マッチ線入力端ＭＬｉｎ０は、ＮＭＯＳトランジスタ６１１とＰＭＯＳトランジスタ６１２のゲートに接続され、インバータ６１３の入力端子はＰＭＯＳトランジスタ６１２のドレインと、ＮＭＯＳトランジスタのドレインに接続される。インバータ６１３の出力端子はマッチ線出力端子ＭＬｏｕｔ０に接続される。ＰＭＯＳトランジスタ６１２のソースは電源電圧Ｖｄｄに接続され、ＮＭＯＳトランジスタ６１１のソースは抵抗ネットワーク６２０の抵抗変化型不揮発性記憶素子Ｒ０の一端に接続される。
【０２８４】
連想メモリセル６００の抵抗ネットワーク６２０は、抵抗変化型不揮発性記憶素子Ｒ０と、ＮＭＯＳトランジスタＮ０及びＮ１を含むＮＭＯＳ論理回路６２９と、を有する。なお、図３８において、抵抗変化型不揮発性記憶素子Ｒ０は抵抗変化型不揮発性記憶素子６３０、ＮＭＯＳトランジスタＮ０はＮＭＯＳトランジスタ６２８、Ｎ１はＮＭＯＳトランジスタ６２９である。
【０２８５】
抵抗変化型不揮発性記憶素子Ｒ０の一端は充放電回路６１０のＮＭＯＳトランジスタ６１１のソース及びＮＭＯＳトランジスタＮ１のドレインに接続され、他端はＮＭＯＳトランジスタＮ０のドレインに接続される。ＮＭＯＳトランジスタＮ０において、ゲートはサーチ線ＳＬに接続され、ドレインは抵抗変化型不揮発性記憶素子Ｒ０の他端に接続され、ソースは接地される。ＮＭＯＳトランジスタＮ１において、ドレインは充放電回路６１０のＮＭＯＳトランジスタ６１１のソース及び抵抗変化型不揮発性記憶素子Ｒ０の一端に接続され、ゲートはサーチ線対の他方／ＳＬに接続され、ソースは接地される。
【０２８６】
また、本実施形態の連想メモリセル６０１は、充放電回路６５０と、抵抗ネットワーク６６０と、磁性素子部と、を備える。なお、磁性素子部は、連想メモリ６００及び連想メモリ６０１に共有される。
【０２８７】
連想メモリセル６０１の充放電回路６５０は、ＮＭＯＳトランジスタ６５１と、ＰＭＯＳトランジスタ６５２と、インバータ６５３と、を備える。ＮＭＯＳトランジスタ６５１及びＰＭＯＳトランジスタ６５２は、ＣＭＯＳインバータ６５４を形成する。
【０２８８】
マッチ線入力端ＭＬｉｎ１は、ＮＭＯＳトランジスタ６５１とＰＭＯＳトランジスタ６５２のゲートに接続され、インバータ６５３の入力端子はＰＭＯＳトランジスタ６５２のドレインと、ＮＭＯＳトランジスタ６５１のドレインに接続される。インバータ６５３の出力端子はマッチ線出力端子ＭＬｏｕｔ１に接続される。ＰＭＯＳトランジスタ６５２のソースは電源電圧Ｖｄｄに接続され、ＮＭＯＳトランジスタ６５１のソースは抵抗ネットワーク６６０の抵抗変化型不揮発性記憶素子Ｒ１の一端に接続される。
【０２８９】
連想メモリセル６０１の抵抗ネットワーク６４０は、抵抗変化型不揮発性記憶素子Ｒ１と、ＮＭＯＳトランジスタＮ１０及びＮ１１を含むＮＭＯＳ論理回路６４７と、を有する。なお、図３８において、抵抗変化型不揮発性記憶素子Ｒ１は抵抗変化型不揮発性記憶素子６６０、ＮＭＯＳトランジスタＮ１０はＮＭＯＳトランジスタ６４８、ＮＭＯＳトランジスタＮ１１はＮＭＯＳトランジスタ６４９である。
【０２９０】
抵抗変化型不揮発性記憶素子Ｒ１の一端は充放電回路６５０のＮＭＯＳトランジスタ６５１のソース及びＮＭＯＳトランジスタＮ１１のドレインに接続され、他端はＮＭＯＳトランジスタＮ１０のドレインに接続される。ＮＭＯＳトランジスタＮ１０において、ゲートはサーチ線ＳＬに接続され、ドレインは抵抗変化型不揮発性記憶素子Ｒ１の他端に接続され、ソースは接地される。ＮＭＯＳトランジスタＮ１１において、ドレインは充放電回路６５０のＮＭＯＳトランジスタ６５１のソース及び抵抗変化型不揮発性記憶素子Ｒ１の一端に接続され、ゲートはサーチ線対の他方／ＳＬに接続され、ソースは接地される。
【０２９１】
また、磁性素子部は、ＮＭＯＳトランジスタＮ２（ＮＭＯＳトランジスタ６９２）及びＮＭＯＳトランジスタＮ３（ＮＭＯＳトランジスタ６９３）と磁性素子６８０を備える。
【０２９２】
ＮＭＯＳトランジスタＮ２において、ゲートはワード線ＷＬに接続され、ドレイン／ソースの一方は書き込みビット線ＷＢＬに、他端は磁性素子６８０に接続される。ＮＭＯＳトランジスタＮ３において、ゲートはワード線ＷＬに接続され、ドレイン／ソースの一方は書き込みビット線の他方／ＷＢＬに、他端は磁性素子６８０に接続される。
【０２９３】
図３９及び図４０は、本発明の第６の実施形態に係る磁性素子６８０と抵抗変化型記憶素子Ｒ０及び抵抗変化型記憶素子Ｒ１の概略平面図及び断面図である。なお、図３９及び図４０において、抵抗変化型記憶素子Ｒ０は抵抗変化型記憶素子６３０、抵抗変化型記憶素子Ｒ１は抵抗変化型記憶素子６６０である。
【０２９４】
本実施の形態に係る磁性素子６８０は、記録層６８１と、第１固定層６８２と、第２固定層６８３と、第１端子Ｔ１、第２端子Ｔ２と、を備えた磁壁移動素子である。
【０２９５】
抵抗変化型不揮発性記憶素子Ｒ０は、センス層６３１と、トンネルバリア層６３２と、リファレンス層６３３と、第３端子Ｔ３と、第４端子Ｔ４と、を備えた磁気トンネル接合（ＭＴＪ）素子である。抵抗変化型不揮発性記憶素子Ｒ１は、センス層６６１と、トンネルバリア層６６２と、リファレンス層６６３と、第５端子Ｔ５、第６端子Ｔ６と、を備えた磁気トンネル接合（ＭＴＪ）素子である。
【０２９６】
なお、＋Ｚ方向は、基板の裏面から表面への基板に垂直な方向であり、Ｘ方向及びＹ方向は、Ｚ方向に垂直な水平方向として定義される。さらに、Ｘ方向は素子の長手方向であり、Ｙ方向は、Ｘ方向及びＺ方向に垂直な方向として定義される。また、図中矢印は各磁性層の磁化方向を示している。
【０２９７】
記録層６８１は、強磁性体である。より詳細には、垂直磁気異方性を有する垂直磁化膜で形成される。記録層６８１の材料は、Ｆｅ、Ｃｏ、Ｎｉのうちから選択される少なくとも１つ以上を含むことが望ましい。記録層６８１は、Ｃｏ／Ｎｉ積層膜、Ｃｏ／Ｐｄ積層膜、Ｃｏ／Ｐｔ積層膜、Ｃｏ−Ｃｒ−Ｐｔ合金、Ｃｏ−Ｆｅ−Ｂ合金などが例示される垂直磁気異方性を有する薄膜を用いる。
【０２９８】
第１固定層６８２及び第２固定層６８３は、強磁性体で形成される。より詳細には、垂直磁気異方性を有する垂直磁化膜で形成される。第１固定層６８２及び第２固定層６８３の材料は、記録層６８１と同様である。なお、第１固定層６８２及び第２固定層６８３の磁化は固定されており、書き込み及び読み出し動作によって変化しない。
【０２９９】
センス層６３１及びセンス層６６１は、強磁性体で形成される。より詳細には、面内磁気異方性を有する面内磁化膜で形成される。センス層の材料６３１及びセンス層６６１は、Ｆｅ、Ｃｏ、Ｎｉのうちから選択される少なくとも１つ以上を含むことが望ましい。センス層６３１及びセンス層６６１は、Ｎｉ−Ｆｅ合金、Ｃｏ−Ｆｅ−Ｂ合金、Ｃｏ−Ｆｅ合金などが例示される面内磁気異方性を有する薄膜を用いる。センス層６３１及びセンス層６６１は、磁化方向が＋Ｙ方向及び−Ｙ方向のいずれか一方に変更可能である。
【０３００】
リファレンス層６３３及びリファレンス層６６３は、強磁性体で形成される。より詳細には、面内磁気異方性を有する面内磁化膜で形成される。リファレンス層６３３及びリファレンス層６６３の材料は、センス層６３１及びリファレンス層６６１の場合と同様である。なお、リファレンス層６３３及びリファレンス層６６３の磁化は固定されており、書き込み及び読み出し動作によって変化しない。そのために、例えばリファレンス層６３３及びリファレンス層６６３に反強磁性層（図示しない）が積層されてもよい。また、リファレンス層６３３及びリファレンス層６６３は、強磁性層、非磁性層、強磁性層からなる積層膜であってもよい。その積層膜の２つの強磁性層の磁化は、反強磁性結合によって互いに反平行に向くように設定してもよい。
【０３０１】
トンネルバリア層６３２及びトンネルバリア層６６２は、非磁性層である。トンネルバリア層６３２及びトンネルバリア層６６２は、絶縁膜で形成され、その材料としてはＭｇ−Ｏ、Ａｌ−Ｏ、Ｎｉ−Ｏ、Ｈｆ−Ｏなどが好適である。トンネルバリア層６３２及びトンネルバリア層６６２は、センス層６３１及びセンス層６６１とリファレンス層６３３及びリファレンス層６６３に挟まれている。センス層６３１及びセンス層６６１と、トンネルバリア層６３２及びトンネルバリア層６６２と、リファレンス層６３３及びリファレンス層６６３と、によって磁気トンネル接合（ＭＴＪ）が形成されている。なお、トンネルバリア層６３２及びトンネルバリア層６６２の材料として、非磁性の半導体や金属材料が形成されている。
【０３０２】
記録層６８１は、内部を磁壁が移動可能である。図４０に示したように、記録層６８１は、第１固定領域６８４、第２固定領域６８５、反転領域６８６を含む。
【０３０３】
第１固定領域６８４は、第１固定層６８２により＋Ｚ方向に磁化が保持され、書き込み及び読み出し動作によって変化しない。第２固定領域６８５は、第２固定層６８３により−Ｚ方向に磁化が保持され、書き込み及び読み出し動作によって変化しない。反転領域６８６は、第１固定領域６８４と第２固定領域６８５の間に設けられ、磁化方向が＋Ｚ方向及び−Ｚ方向のいずれか一方に変更可能である。
【０３０４】
第１端子Ｔ１は、第１固定領域６８４（第１固定層６８２）に接続された電流端子であり、ＮＭＯＳトランジスタＮ２に接続される。第２端子Ｔ２は、第２固定領域６８５（第２固定層６８３）に接続された電流端子であり、ＮＭＯＳトランジスタＮ３に接続される。第３端子Ｔ３は、センス層６３１に接続された電流端子であり、連想メモリセル６００の充放電回路６１０に接続される。第４端子Ｔ４は、リファレンス層６３３に接続された電流端子であり、ＮＭＯＳトランジスタＮ０に接続される。第５端子Ｔ５は、センス層６３１に接続された電流端子であり、連想メモリセル６０１の充放電回路６５０に接続される。第６端子Ｔ６は、リファレンス層６６３に接続された電流端子であり、ＮＭＯＳトランジスタＮ１０に接続される。
【０３０５】
（データ「−１」、「０」及び「１」の磁化状態）
図４１、図４２及び図４３は、本実施形態に係る磁壁移動素子が取りうる３つの状態を示している。それぞれの磁化状態は、記憶データ「−１」と「０」と「１」に対応付けられる。例として、第１固定領域６８４の磁化方向は＋Ｚ方向に保持されており、第２固定領域６８５の磁化方向は−Ｚ方向に保持されており、リファレンス層６３３及びリファレンス層６６３の磁化は＋Ｙ方向に固定されている。また、図４４には、抵抗変化型記憶素子Ｒ０及び抵抗変化型記憶素子Ｒ１と、記憶データとの関係を示す。
【０３０６】
図４１に示されるように、反転領域６８６の磁化が＋Ｚ方向の場合、反転領域６８６と第２固定領域６８５の境の近傍位置に磁壁６９０が形成される。反転領域６８６からの漏洩磁界は、Ｒ０のセンス層６３１の位置において、＋Ｙ方向の成分を有し、センス層６３１の磁化は、漏洩磁界の方向に従って、＋Ｙ方向に向く。この場合、抵抗変化型不揮発性記憶素子Ｒ０のセンス層６３１とリファレンス層６３３の磁化は平行であり、ＭＴＪの抵抗値は低くなる（低抵抗状態）。一方、反転領域６８６からの漏洩磁界は、抵抗変化型不揮発性記憶素子Ｒ１のセンス層位置において、−Ｙ方向の成分を有し、センス層の磁化は、漏洩磁界の方向に従って、−Ｙ方向に向く。この場合、抵抗変化型不揮発性記憶素子Ｒ１のセンス層６６１とリファレンス層６６３の磁化は反平行であり、ＭＴＪの抵抗値は高くなる（高抵抗状態）。この状態は、データ「−１」に対応付けられる。
【０３０７】
図４２に示されるように、第１固定領域６８４側の反転領域６８６の磁化が＋Ｚ方向であり、第２固定領域６８５側の反転領域６８６の磁化が−Ｚ方向の場合、反転領域６８６の中央付近に磁壁６９０が形成される。反転領域６８６からの漏洩磁界は、抵抗変化型不揮発性記憶素子Ｒ０のセンス層６３１の位置において、−Ｙ方向の成分を有し、センス層６３１の磁化は、漏洩磁界の方向に従って、−Ｙ方向に向く。この場合、抵抗変化型不揮発性記憶素子Ｒ０のセンス層６３１とリファレンス層６３３の磁化は反平行であり、ＭＴＪの抵抗値は高くなる（高抵抗状態）。一方、反転領域６８６からの漏洩磁界は、抵抗変化型不揮発性記憶素子Ｒ１のセンス層６６１の位置において、−Ｙ方向の成分を有し、センス層６６１の磁化は、漏洩磁界の方向に従って、−Ｙ方向に向く。この場合、抵抗変化型不揮発性記憶素子Ｒ１のセンス層６６１とリファレンス層６６３の磁化は反平行であり、ＭＴＪの抵抗値は高くなる（高抵抗状態）。この状態は、データ「０」に対応付けられる。
【０３０８】
図４３に示されるように、反転領域６８６の磁化が−Ｚ方向の場合、反転領域６８６と第１固定領域６８４の境の近傍位置に磁壁６９０が形成される。反転領域６８６からの漏洩磁界は、Ｒ０のセンス層６３１の位置において、−Ｙ方向の成分を有し、センス層６３１の磁化は、漏洩磁界の方向に従って、−Ｙ方向に向く。この場合、抵抗変化型不揮発性記憶素子Ｒ０のセンス層６３１とリファレンス層６３３の磁化は反平行であり、ＭＴＪの抵抗値は高くなる（高抵抗状態）。一方、反転領域６８６からの漏洩磁界は、抵抗変化型不揮発性記憶素子Ｒ１のセンス層６６１の位置において、＋Ｙ方向の成分を有し、センス層６６１の磁化は、漏洩磁界の方向に従って、＋Ｙ方向に向く。この場合、抵抗変化型不揮発性記憶素子Ｒ１のセンス層６６１とリファレンス層６６３の磁化は平行であり、ＭＴＪの抵抗値は低くなる（低抵抗状態）。この状態は、データ「１」に対応付けられる。
【０３０９】
（書き込み）
次に、本実施形態に係る磁壁移動素子の書き込み動作について説明する。
【０３１０】
記憶データの書き換えは、磁壁６９０を移動させて反転領域６８６の磁化方向を反転させることにより行われる。その磁壁移動のために、記録層６８１において、書き込み電流が面内方向に供給される。その書き込み電流を担う伝導電子の方向に従って、磁壁６９０が記録層中を移動する。
【０３１１】
例として、第１固定領域６８４の磁化方向は＋Ｚ方向に保持されており、第２固定領域６８５の磁化方向は、−Ｚ方向に保持されている。記憶領域６８１の中央付近にはノッチなどを形成し、磁壁６９０のトラップサイトとして機能させる。書き込み時、「電流駆動磁壁移動」によって、磁壁６９０が反転領域６８６を移動するのに必要な閾値電流値より大きな書き込み電流が供給される。なお、反転領域６８６の磁壁６９０のトラップサイトから、磁壁６９０が脱出するには時間が掛かるため、電流を印加する時間によって、磁壁６９０の位置を制御できる。
【０３１２】
データ「−１」からデータ「０」への書き換え時、書き込み電流は端子Ｔ１から、記録層６８１を通り、第２端子Ｔ２へ流れる。この場合、反転領域６８６には、第２固定領域６８５からスピン偏極した電子が注入される。注入された電子のスピンは、第２固定領域６８５と反転領域６８６の境にある磁壁６９０を反転領域６８６の中央部へ駆動する。磁壁６９０が反転領域６８６の中央のトラップサイトに留まっている間に書き込み電流を停止する。その結果、意図したデータ「０」を書き込める。
【０３１３】
データ「０」からデータ「１」への書き換え時、書き込み電流は第１端子Ｔ１から、記録層６８１を通り、第２端子Ｔ２へ流れる。この場合、反転領域６８６には、第２固定領域６８５からスピン偏極した電子が注入される。注入された電子のスピンは、反転領域６８６の中央にある磁壁６９０を第１固定領域６８４の方向へ駆動する。その結果、意図したデータ「１」を書き込める。
【０３１４】
データ「１」からデータ「０」への書き換え時、書き込み電流は第２端子Ｔ２から、記録層６８１を通り、第１端子Ｔ１へ流れる。この場合、反転領域６８６には、第１固定領域６８４からスピン偏極した電子が注入される。注入された電子のスピンは、第１固定領域６８４と反転領域６８６の境にある磁壁６９０を反転領域６８６の中央付近へ駆動する。磁壁６９０が反転領域６８６の中央のトラップサイトに留まっている間に書き込み電流を停止する。その結果、意図したデータ「０」を書き込める。
【０３１５】
データ「０」からデータ「−１」への書き換え時、書き込み電流は第２端子Ｔ２から、記録層６８１を通り、第１端子Ｔ１へ流れる。この場合、反転領域６８６には、第１固定領域６８４からスピン偏極した電子が注入される。注入された電子のスピンは、反転領域６８６の中央付近にある磁壁６９０を反転領域６８６と第２固定領域６８５の方向へ駆動する。その結果、意図したデータ「−１」を書き込める。
【０３１６】
以上のように、本発明の第６の実施形態に係る連想メモリを備える論理回路によれば、磁性素子を隣接する連想メモリセルで共通に利用した３値セル回路を構成することにより、書き込み電流を流すトランジスタを半減することができる。そのため、チップのコストを安価にできる。
【０３１７】
なお、本実施形態における連想メモリは、３値セル回路を例にとって説明したが、必ずしも３値である必要はなく、ｎを３以上の奇数として、ｎ値セル回路を構成してもよい。
【０３１８】
本発明の実施形態においては、センス回路として、データフリップフロップや、比較回路を例示したが、最も遅延時間が小さいワード回路のみを検出するウィナー・テイク・オール型のセンス回路を利用しても良い。
【０３１９】
また、本発明の実施形態に係る連想メモリセル回路を利用して、周波数が抵抗変化型不揮発性記憶素子の抵抗値に依存したリングオシレータ等を構成してもよい。
【０３２０】
以上、実施形態を参照して本発明を説明してきたが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０３２１】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
（付記１）
複数の電流パスと、前記複数の電流パス及びサーチ線対に接続され、前記サーチ線対から入力する入力データに応答して前記電流パスを選択する論理回路と、前記複数の電流パスのうち少なくとも一つに設けられ、記憶データを記憶する抵抗変化型不揮発性記憶素子とを有し、前記入力データと前記記憶データとの論理演算結果によって抵抗値が変化する抵抗ネットワークと、
前記抵抗ネットワーク及びマッチ線に接続され、前記入力データと前記記憶データとの論理演算結果によって、前記マッチ線から入力された信号を出力するまでの遅延時間が変化する充放電回路とを備える連想メモリセル。
（付記２）
前記充放電回路は、
ソースが電極端に接続されたＰＭＯＳトランジスタと、ドレインが前記ＰＭＯＳトランジスタのドレインと接続され、ソースが前記抵抗変化型不揮発性記憶素子の一端に接続されたＮＭＯＳトランジスタとを含むＣＭＯＳインバータと、
入力端子が前記ＰＭＯＳトランジスタ及び前記ＮＭＯＳトランジスタのドレインに接続されたインバータとを含み、
前記ＣＭＯＳインバータは、
前記ＰＭＯＳトランジスタのゲートに信号が入力されると、入力された信号に応じてリセット又はプリセットされ、
前記ＮＭＯＳトランジスタのゲートに入力された信号を後段の前記インバータに出力することを特徴とする付記１に記載の連想メモリセル。
（付記３）
前記充放電回路は、
ソースが電極端に接続されたＰＭＯＳトランジスタと、ドレインが前記ＰＭＯＳトランジスタのドレインと接続され、ソースが前記抵抗変化型不揮発性記憶素子の一端に接続されたＮＭＯＳトランジスタとを含むＣＭＯＳインバータと、
入力端子が前記ＰＭＯＳトランジスタ及び前記ＮＭＯＳトランジスタのドレインに接続されたインバータとを含み、
前記ＣＭＯＳインバータは、
前記ＰＭＯＳトランジスタのゲートに反転されたプリチャージ信号が入力されると、
入力された前記プリチャージ信号に応じてリセット又はプリセットされ、
前記ＮＭＯＳトランジスタのゲートに入力された信号を後段の前記インバータに出力することを特徴とする付記１に記載の連想メモリセル。
（付記４）
前記論理回路は、
第１及び第２のＮＭＯＳトランジスタを含み、
前記抵抗変化型不揮発性記憶素子は、
第１及び第２の抵抗変化型不揮発性記憶素子を含み、
前記第１及び第２の抵抗変化型不揮発性記憶素子の一端は、前記充放電回路に含まれる前記ＮＭＯＳトランジスタのソースに接続され、
前記第１及び第２の抵抗変化型不揮発性記憶素子の他端は、それぞれ前記第１及び第２のＮＭＯＳトランジスタのドレインに接続され、
前記第１及び第２のＮＭＯＳトランジスタのソースは接地されることを特徴とする付記２又は３に記載の連想メモリセル。
（付記５）
前記論理回路は、
第１及び第２のＮＭＯＳトランジスタを含み、
前記抵抗変化型不揮発性記憶素子の一端は、前記充放電回路に含まれる前記ＮＭＯＳトランジスタのソース及び前記第２のＮＭＯＳトランジスタのドレインに接続され、
前記抵抗変化型不揮発性記憶素子の他端は、前記第１のＮＭＯＳトランジスタのドレインに接続され、
前記第１及び第２のＮＭＯＳトランジスタのソースは接地されることを特徴とする付記２又は３に記載の連想メモリセル。
（付記６）
前記論理回路は、
第１及び第２のＮＭＯＳトランジスタを含み、
前記抵抗変化型不揮発性記憶素子の一端は、前記充放電回路に含まれる前記ＮＭＯＳトランジスタのソース及び前記第２のＮＭＯＳトランジスタのドレインに接続され、
前記抵抗変化型不揮発性記憶素子の他端は、前記第１のＮＭＯＳトランジスタのドレインに接続され、
前記第１及び第２のＮＭＯＳトランジスタのソースは、それぞれ一対のワード線対の一方に接続され、
前記ワード線対の状態変化によって前記記憶データを読み書きすることを特徴とする付記２又は３に記載の連想メモリセル。
（付記７）
前記抵抗変化型不揮発性記憶素子と磁気的に相互作用できる位置に配置された磁性素子と、
ソース又はドレインの一端子が前記磁性素子の一端に接続されるとともに、ソース又はドレインの他端子が書き込みビット線に接続され、ゲートがワード線に接続された第３のＮＭＯＳトランジスタと、
ソース又はドレインの一端子が前記磁性素子の他端に接続されるとともに、ソース又はドレインの他端子が書き込みビット線に接続され、ゲートがワード線に接続された第４のＮＭＯＳトランジスタとを含む磁性素子部を備える付記５に記載の連想メモリセル。
（付記８）
前記磁性素子の一端が前記充放電回路に含まれる前記ＰＭＯＳトランジスタ及び前記ＮＭＯＳトランジスタのドレインに接続される付記７に記載の連想メモリセル。
（付記９）
異なる前記連想メモリセル間で共有させるように前記磁性素子を配置する付記７に記載の連想メモリセル。
（付記１０）
前記抵抗変化型不揮発性記憶素子は、
複数の抵抗状態を有すること特徴とする付記１乃至９のいずれか一項に記載の連想メモリセル。
（付記１１）
前記抵抗変化型不揮発性記憶素子は、
２つの抵抗状態を有すること特徴とする付記１乃至９のいずれか一項に記載の連想メモリセル。
（付記１２）
複数の電流パスと、前記複数の電流パス及びサーチ線対に接続され、前記サーチ線対から入力する入力データに応答して前記電流パスを選択する論理回路と、前記複数の電流パスのうち少なくとも一つに設けられ、記憶データを記憶する抵抗変化型不揮発性記憶素子とを有し、前記入力データと前記記憶データとの論理演算結果によって抵抗値が変化する抵抗ネットワークと、前記抵抗ネットワーク及びマッチ線に接続され、前記入力データと前記記憶データとの論理演算結果によって、前記マッチ線から入力された信号を出力するまでの遅延時間が変化する充放電回路とを備える連想メモリセルが格子状に配置される連想メモリ。
（付記１３）
前記充放電回路は、
ソースが電極端に接続されたＰＭＯＳトランジスタと、ドレインが前記ＰＭＯＳトランジスタのドレインと接続され、ソースが前記抵抗変化型不揮発性記憶素子の一端に接続されたＮＭＯＳトランジスタとを含むＣＭＯＳインバータと、
入力端子が前記ＰＭＯＳトランジスタ及び前記ＮＭＯＳトランジスタのドレインに接続されたインバータと、を含み、
前記ＣＭＯＳインバータは、
前記ＰＭＯＳトランジスタのゲートに信号が入力されると、入力された信号に応じてリセット又はプリセットされ、
前記ＮＭＯＳトランジスタのゲートに入力された信号を後段の前記インバータに出力することを特徴とする付記１２に記載の連想メモリ。
（付記１４）
前記充放電回路は、
ソースが電極端に接続されたＰＭＯＳトランジスタと、
ドレインが前記ＰＭＯＳトランジスタのドレインと接続され、ソースが前記抵抗変化型不揮発性記憶素子の一端に接続されたＮＭＯＳトランジスタとを含むＣＭＯＳインバータと、
入力端子が前記ＰＭＯＳトランジスタ及び前記ＮＭＯＳトランジスタのドレインに接続されたインバータとを含み、
前記ＣＭＯＳインバータは、
前記ＰＭＯＳトランジスタのゲートに反転されたプリチャージ信号が入力されると、
入力された前記プリチャージ信号に応じて、リセット又はプリセットされ、
前記ＮＭＯＳトランジスタのゲートに入力された信号を後段の前記インバータに出力することを特徴とする付記１２に記載の連想メモリ。
（付記１５）
前記論理回路は、
第１及び第２のＮＭＯＳトランジスタを含み、
前記抵抗変化型不揮発性記憶素子は、
第１及び第２の抵抗変化型不揮発性記憶素子を含み、
前記第１及び第２の抵抗変化型不揮発性記憶素子の一端は、前記充放電回路に含まれる前記ＮＭＯＳトランジスタのソースに接続され、
前記第１及び第２の抵抗変化型不揮発性記憶素子の他端は、それぞれ第１及び第２のＮＭＯＳトランジスタのドレインに接続され、
前記第１及び第２のＮＭＯＳトランジスタのソースは接地されることを特徴とする付記１３又は１４に記載の連想メモリ。
（付記１６）
前記論理回路は、
第１及び第２のＮＭＯＳトランジスタを含み、
前記抵抗変化型不揮発性記憶素子の一端は、前記充放電回路に含まれる前記ＮＭＯＳトランジスタのソース及び前記第２のＮＭＯＳトランジスタのドレインに接続され、
前記抵抗変化型不揮発性記憶素子の他端は、前記第１のＮＭＯＳトランジスタのドレインに接続されることを特徴とする付記１３又は１４に記載の連想メモリ。
（付記１７）
前記第１及び第２のＮＭＯＳトランジスタのソースは接地されることを特徴とする付記１６に記載の連想メモリ。
（付記１８）
前記第１及び第２のＮＭＯＳトランジスタのソースは、それぞれ一対のワード線対の一方に接続され、
前記ワード線対の状態変化によって前記記憶データを読み書きすることを特徴とする付記１６に記載の連想メモリ。
（付記１９）
前記抵抗変化型不揮発性記憶素子と磁気的に相互作用できる位置に配置された磁性素子と、
ソース又はドレインの一端子が前記磁性素子の一端に接続されるとともに、ソース又はドレインの他端子が書き込みビット線に接続され、ゲートがワード線に接続された第３のＮＭＯＳトランジスタと、
ソース又はドレインの一端子が前記磁性素子の他端に接続されるとともに、ソース又はドレインの他端子が書き込みビット線に接続され、ゲートがワード線に接続された第４のＮＭＯＳトランジスタとを含む磁性素子部を備える付記１６又は１７に記載の連想メモリ。
（付記２０）
前記磁性素子の一端が前記充放電回路に含まれる前記ＰＭＯＳトランジスタ及び前記ＮＭＯＳトランジスタのドレインに接続される付記１９に記載の連想メモリ。
（付記２１）
異なる前記連想メモリセル間で共有させるように前記磁性素子を配置する付記１９に記載の連想メモリ。
（付記２２）
第１方向に配置された複数の前記連想メモリセルに接続された複数のサーチ線対と、
第２方向に配置された複数の前記連想メモリセルを直列に接続する複数のマッチ線と、
複数の前記サーチ線対と接続され、演算時に前記入力データに応じて前記サーチ線対を駆動するカラム側回路と、
複数の前記マッチ線と接続され、複数の前記マッチ線を駆動するロウ側回路と、
複数の前記マッチ線と接続され、複数の前記マッチ線の電位をセンスするセンス回路とを含み、
前記第２方向に配置された複数の前記連想メモリセルと前記マッチ線とによってワード回路を構成し、
前記入力データと前記記憶データとの論理演算をする際に、
前記ワード回路は、
前記サーチ線対上の前記入力データ及び前記ワード回路の記憶データに応じて前記マッチ線の遅延時間を変化させ、
前記センス回路は、
前記センス回路に入力されたクロック信号に応じて前記マッチ線の電位をラッチすることを特徴とする付記１２乃至２１のいずれか一項に記載の連想メモリ。
（付記２３）
格子状に配置された複数の連想メモリセルと、
第１方向に配置された複数の前記連想メモリセルに接続された複数のサーチ線対と、
第２方向に配置された複数の前記連想メモリセルを直列に接続する複数のマッチ線と、
前記第２方向に配置された複数の前記連想メモリセルと前記マッチ線とによって構成されるワード回路と、
複数の前記サーチ線と接続され、演算時に前記入力データに応じて前記サーチ線対を駆動するカラム側回路と、
複数の前記マッチ線と接続され、複数の前記マッチ線を駆動するロウ側回路と、
複数の前記マッチ線と接続され、複数の前記マッチ線の電位をセンスするセンス回路とを含み、
複数の電流パスと、前記複数の電流パス及び前記サーチ線対に接続され、前記サーチ線対から入力する前記入力データに応答して前記電流パスを選択する論理回路と、前記複数の電流パスのうち少なくとも一つに設けられ、記憶データを記憶する抵抗変化型不揮発性記憶素子とを有し、前記入力データと前記記憶データとの論理演算結果によって抵抗値が変化する抵抗ネットワークと、
前記抵抗ネットワーク及び前記マッチ線に接続され、前記入力データと前記記憶データとの論理演算結果によって、前記マッチ線から入力された信号を出力するまでの遅延時間が変化する充放電回路とを備えることを特徴とする連想メモリ。
（付記２４）
前記ロウ側回路に入力される演算開始信号を入力とし、前記センス側回路に入力される前記クロック信号を発生するレプリカ回路を備え、
前記センス回路は、
前記センス回路に入力される前記クロック信号に応じて前記マッチ線の電位をラッチすることを特徴とすることを特徴とする付記２２又は２３に記載の連想メモリ。
（付記２５）
前記センス回路は、
異なる２つの前記マッチ線の遅延時間を比較し、
一方の前記マッチ線の遅延時間と、他方の前記マッチ線の遅延時間と、の大小関係を検出する比較回路を含むことを特徴とする付記２２又は２３に記載の連想メモリ。
（付記２６）
前記連想メモリは、
前記入力データを入力して前記カラム側回路へ出力するデータ入力用回路と、
複数の前記センス回路から出力された前記入力データのうち少なくとも一部を出力するデータ出力用回路と、を有することを特徴とする付記２２又は２３に記載の連想メモリ。
（付記２７）
前段の前記連想メモリが備える前記データ出力回路の長手方向と、後段の前記連想メモリが備える前記データ入力回路の長手方向とが互いに向かい合うように配置されることを特徴とする付記２６に記載の連想メモリ。
（付記２８）
前記連想メモリは、
前記入力データを入力して前記カラム側回路へ出力するデータ入力用回路と、
複数の前記センス回路から出力された前記入力データのうち少なくとも一部を出力するデータ出力用回路とを有し、
前段の前記連想メモリが備える前記データ出力回路の長手方向と、後段の前記連想メモリが備える前記データ入力回路の長手方向とが互いに向かい合うように配置されることを特徴とする付記２２又は２３に記載の連想メモリ。
（付記２９）
複数の連想メモリに備えられた前記データ入力用回路と前記データ出力用回路とが複数の配線上に設けられたプログラマブルスイッチに接続され、異なる前記連想メモリ間でデータの授受をすることを特徴とする付記２６乃至２８のいずれか一項に記載の連想メモリ。
（付記３０）
前記抵抗変化型不揮発性記憶素子は、
複数の抵抗状態を有することを特徴とする付記１２乃至２９のいずれか一項に記載の連想メモリ。
（付記３１）
前記抵抗変化型不揮発性記憶素子は、
２つの抵抗状態を有すること特徴とする付記１２乃至３０のいずれか一項に記載の連想メモリ。
【０３２２】
この出願は、２０１３年６月２６日に出願された日本出願特願２０１３−１３３４８３を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【０３２３】
１、２、３、４、５、６    連想メモリ
１０、２０、３０、４０、５０、６０    連想メモリセル
１１、２１、３１、４１、５１、６１    カラム側回路
１２、２２、３２、４２、５２、６２    ロウ側回路
１３、２３、２７、３３、４３、５３、６３    センス回路
１４、２４、３４、４４、５４、６４    ワード回路
１５    充放電回路
１６    抵抗ネットワーク
１７    レプリカ回路
５４    データ入力用回路
５６    データ出力用回路
５７    プログラマブルスイッチ
５８    配線
１００、１０１、１２１、１２２、２００、３００、４００、４０１、６００、６０１    連想メモリセル
１２０、１３０、２２０、２３０、２８３    バッファ
１５０、１５５、１７５、２５０、３５０、４５０、６１０、６５０    充放電回路
１５１、１５６、１６６、１６７、１９１、１９６、２５１、２６６、２６７、２７５、２７６、２７７、２７８、２７９、３５１、３７１、３７２、４５１、４６６、４６７、４９１、４９２、６１１、６２８、６２９、６４８、６４９、６５１    ＮＭＯＳトランジスタ
１５２、１５７、１７７、２５２、２７１、２７２、２７３、２７４、３５２、４５２、６１２、６５２    ＰＭＯＳトランジスタ
１５３、１５８、１７８、２５３、２８０、２８２、３５３、４５３、６１３、６５３    インバータ
１６０、１８０、１８５、２６０、３６０、４６０、６２０、６４０    抵抗ネットワーク
１６５、１９０、１９５、２６５、３７０、４６５、６２７、６４７    ＮＭＯＳ論理回路
１７１    レプリカセル回路Ａ
１７２    レプリカセル回路Ｂ
２７０    比較回路
４７１、６３１、６６１    センス層
４７２、６３２、６６２    トンネルバリア層
４７３、６３３、６６３    リファレンス層
４８０、６８０    磁性素子
４８１、６８１    記録層
４８２、６８２    第１固定層
４８３、６８３    第２固定層
４８４、６８４    第１固定領域
４８５、６８５    第２固定領域
４８６、６８６    反転領域
４９０、６９０    磁壁
【図１】
2014208051.tif 000007
【図２】
2014208051.tif 000008
【図３】
2014208051.tif 000009
【図４】
2014208051.tif 000010
【図５】
2014208051.tif 000011
【図６】
2014208051.tif 000012
【図７】
2014208051.tif 000013
【図８】
2014208051.tif 000014
【図９】
2014208051.tif 000015
【図１０】
2014208051.tif 000016
【図１１】
2014208051.tif 000017
【図１２】
2014208051.tif 000018
【図１３】
2014208051.tif 000019
【図１４】
2014208051.tif 000020
【図１５】
2014208051.tif 000021
【図１６】
2014208051.tif 000022
【図１７】
2014208051.tif 000023
【図１８】
2014208051.tif 000024
【図１９】
2014208051.tif 000025
【図２０】
2014208051.tif 000026
【図２１】
2014208051.tif 000027
【図２２】
2014208051.tif 000028
【図２３】
2014208051.tif 000029
【図２４】
2014208051.tif 000030
【図２５】
2014208051.tif 000031
【図２６】
2014208051.tif 000032
【図２７】
2014208051.tif 000033
【図２８】
2014208051.tif 000034
【図２９】
2014208051.tif 000035
【図３０】
2014208051.tif 000036
【図３１】
2014208051.tif 000037
【図３２】
2014208051.tif 000038
【図３３】
2014208051.tif 000039
【図３４】
2014208051.tif 000040
【図３５】
2014208051.tif 000041
【図３６】
2014208051.tif 000042
【図３７】
2014208051.tif 000043
【図３８】
2014208051.tif 000044
【図３９】
2014208051.tif 000045
【図４０】
2014208051.tif 000046
【図４１】
2014208051.tif 000047
【図４２】
2014208051.tif 000048
【図４３】
2014208051.tif 000049
【図４４】
2014208051.tif 000050
【手続補正書】
【提出日】平成27年12月3日(2015.12.3)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
抵抗ネットワーク１６０は、抵抗変化型不揮発性記憶素子Ｒ０及び抵抗変化型不揮発性記憶素子Ｒ１と、ＮＭＯＳ論理回路１６５（論理回路）と、を有する。なお、図３において、抵抗変化型不揮発性記憶素子Ｒ０は抵抗変化型不揮発性記憶素子１６１、抵抗変化型不揮発性記憶素子Ｒ１は抵抗変化型不揮発性記憶素子１６２である。ＮＭＯＳ論理回路１６５は、第１のＮＭＯＳトランジスタであるＮＭＯＳトランジスタＮ０と、第２のＮＭＯＳトランジスタであるＮＭＯＳトランジスタＮ１と、を含む。なお、ＮＭＯＳトランジスタＮ０はＮＭＯＳトランジスタ１６６、ＮＭＯＳトランジスタＮ１はＮＭＯＳトランジスタ１６７である。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００９７
【補正方法】変更
【補正の内容】
【００９７】
ハミング距離がｄ以下のワードを検出するためにレプリカ回路１７を使用する場合、ｄ個のレプリカセル回路Ｂ１７２に接続するＳＬＲはＬｏｗレベル、／ＳＬＲはＨｉｇｈレベルに設定される。図１１では、Ｈｉｇｈレベルは電源電圧Ｖｄｄ、Ｌｏｗレベルはグラウンド電圧Ｇｎｄとしている。Ｎ−１−ｄ個のレプリカ回路１７２に接続するＳＬＲはＨｉｇｈレベル、／ＳＬＲはＬｏｗレベルに設定される。レプリカセル回路Ａ１７１に接続するＳＬＲ０はＨｉｇｈレベルが設定される。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０１００
【補正方法】変更
【補正の内容】
【０１００】
マッチ線入力端子ＭＬｉｎは、ＮＭＯＳトランジスタ１７６のゲートとＰＭＯＳトランジスタ１７７のゲートに接続される。インバータ１７８の入力端子は、ＰＭＯＳトランジスタ１７７のドレインと、ＮＭＯＳトランジスタ１７６のドレインに接続される。インバータ１７８の出力端子は、マッチ線出力端子ＭＬｏｕｔに接続される。ＰＭＯＳトランジスタ１７７のソースは、電源電圧Ｖｄｄに接続される。ＮＭＯＳトランジスタ１７６のソースは抵抗ネットワーク１８０の抵抗変化型不揮発性記憶素子ＲＨの一端に接続される。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０１１８
【補正方法】変更
【補正の内容】
【０１１８】
マッチ線入力端子ＭＬｉｎは、ＮＭＯＳトランジスタ２５１のゲートとＰＭＯＳトランジスタ２５２のゲートに接続される。インバータ２５３の入力端子は、ＰＭＯＳトランジスタ２５２のドレインと、ＮＭＯＳトランジスタ２５１のドレインに接続される。インバータ２５３の出力端子は、マッチ線出力端子ＭＬｏｕｔに接続される。ＮＭＯＳトランジスタ２５１のソースは抵抗ネットワーク２６０の抵抗変化型不揮発性記憶素子Ｒ０の一端に接続され、ＰＭＯＳトランジスタ２５２のソースは電源電圧Ｖｄｄに接続される。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０１４６
【補正方法】変更
【補正の内容】
【０１４６】
前段の連想メモリセル２００からの信号の伝播により、マッチ線入力端子ＭＬｉｎがＨｉｇｈレベルに遷移すると、センス電流は充放電回路２５０から、抵抗変化型不揮発性記憶素子Ｒ０、ＮＭＯＳトランジスタＮ０を介してＧｎｄへ流れ込む。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】０１６９
【補正方法】変更
【補正の内容】
【０１６９】
変形例１の連想メモリ２は、図２２に示した回路構成を取る。図１９に示した回路構成とは、センス回路２７に比較回路２７０を備えている点のみが異なる。なお、重複する構成についての説明は適宜省略される。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】０１８３
【補正方法】変更
【補正の内容】
【０１８３】
ＮＭＯＳトランジスタＮ２において、ゲートはマッチ線ＭＬｏｕｔ０に接続され、ソースはＧｎｄに接地される。ＮＭＯＳトランジスタＮ３において、ゲートはマッチ線ＭＬｏｕｔ１に接続され、ソースはＧｎｄに接地される。ＰＭＯＳトランジスタＰ２において、ゲートはプリチャージ信号の反転信号／ＰＲＣに接続され、ソースはセンスアンプの電源電圧Ｖｄｄｓａに接続される。ＰＭＯＳトランジスタＰ３において、ゲートはプリチャージ信号の反転信号／ＰＲＣに接続される。バッファＢＵＦ０において、入力端子はＭＬｏｕｔ０に接続され、出力端子はトランジスタＮ４のゲートに接続される。ＮＭＯＳトランジスタＮ４において、ドレインはインバータＮ２のＧｎｄ端子に接続され、ソースは接地される。なお、センスアンプの電源電圧Ｖｄｄｓａは連想メモリセルの電源電圧Ｖｄｄと一致していなくても、正常に動作する。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】０１９０
【補正方法】変更
【補正の内容】
【０１９０】
論理演算テーブル２９の第１列目のＲ１は、２ｎ＋１行目ｐ列目の連想メモリセルの抵抗である。論理演算テーブル２９の第２列目のＲ０は、２ｎ行目ｐ列目の連想メモリセルの抵抗である。論理演算テーブル２９の第３列目は、記憶データＡである。すると、式１６は式１９に書き換えられる。
2014208051.tif 000051
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】０２６２
【補正方法】変更
【補正の内容】
【０２６２】
さらに、連想メモリ５は、カラム側回路５１と、ロウ側回路５２と、センス回路５３と、データ入力用回路５５と、データ出力用回路５６と、を含む。カラム側回路５１は、複数のサーチ線対ＳＬ、／ＳＬと接続され、演算時、入力データに応じて、サーチ線対ＳＬ、／ＳＬを駆動する。ロウ側回路５２は、複数のマッチ線ＭＬと接続され、マッチ線ＭＬを駆動する。センス回路５３は、複数のマッチ線ＭＬと接続され、マッチ線ＭＬの電位をセンスする。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】０２６３
【補正方法】変更
【補正の内容】
【０２６３】
さらに、データ入力用回路５５は第２方向に延伸され、データ出力用回路５６は第１方向に延伸され、データ入力用回路５５とデータ出力用回路５６とは互いに実質的に垂直の関係にある。データ入力用回路５５には、複数の入力データＤＩＮがパラレル又はシリアルに入力される。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】０２６４
【補正方法】変更
【補正の内容】
【０２６４】
データ入力用回路５５は、入力データＤＩＮを保持する。データ入力用回路５５は、複数の入力データＤＩＮ＿ＲＥＧをカラム側回路５１へ出力する。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】０２６６
【補正方法】変更
【補正の内容】
【０２６６】
図３５は、本発明の第５の実施形態における複数の連想メモリ５を備える論理回路である。図３５では、４つの連想メモリ５（５−１〜５−４）が直列に接続されている。具体的には、前段の連想メモリのデータ出力用回路５６と、後段の連想メモリのデータ入力用回路５４とが平行するように配置され、前段の連想メモリ５のデータ出力用回路５６からの出力を、後段の連想メモリ５のデータ入力用回路５４へ入力する構成をとる。すなわち、隣接する連想メモリ５間において、前段の連想メモリ５のデータ出力用回路５６の長手方向と、後段の連想メモリ５のデータ入力用回路５５の長手方向とが、互いに向かい合うように近接して配置される。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】０２８４
【補正方法】変更
【補正の内容】
【０２８４】
連想メモリセル６００の抵抗ネットワーク６２０は、抵抗変化型不揮発性記憶素子Ｒ０と、ＮＭＯＳトランジスタＮ０及びＮ１を含むＮＭＯＳ論理回路６２７と、を有する。なお、図３８において、抵抗変化型不揮発性記憶素子Ｒ０は抵抗変化型不揮発性記憶素子６３０、ＮＭＯＳトランジスタＮ０はＮＭＯＳトランジスタ６２８、Ｎ１はＮＭＯＳトランジスタ６２９である。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】０２８８
【補正方法】変更
【補正の内容】
【０２８８】
マッチ線入力端ＭＬｉｎ１は、ＮＭＯＳトランジスタ６５１とＰＭＯＳトランジスタ６５２のゲートに接続され、インバータ６５３の入力端子はＰＭＯＳトランジスタ６５２のドレインと、ＮＭＯＳトランジスタ６５１のドレインに接続される。インバータ６５３の出力端子はマッチ線出力端子ＭＬｏｕｔ１に接続される。ＰＭＯＳトランジスタ６５２のソースは電源電圧Ｖｄｄに接続され、ＮＭＯＳトランジスタ６５１のソースは抵抗ネットワーク６４０の抵抗変化型不揮発性記憶素子Ｒ１の一端に接続される。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】０３００
【補正方法】変更
【補正の内容】
【０３００】
リファレンス層６３３及びリファレンス層６６３は、強磁性体で形成される。より詳細には、面内磁気異方性を有する面内磁化膜で形成される。リファレンス層６３３及びリファレンス層６６３の材料は、センス層６３１及びセンス層６６１の場合と同様である。なお、リファレンス層６３３及びリファレンス層６６３の磁化は固定されており、書き込み及び読み出し動作によって変化しない。そのために、例えばリファレンス層６３３及びリファレンス層６６３に反強磁性層（図示しない）が積層されてもよい。また、リファレンス層６３３及びリファレンス層６６３は、強磁性層、非磁性層、強磁性層からなる積層膜であってもよい。その積層膜の２つの強磁性層の磁化は、反強磁性結合によって互いに反平行に向くように設定してもよい。
【手続補正１６】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項８
【補正方法】変更
【補正の内容】
【請求項８】
前記ロウ側回路に入力される演算開始信号を入力とし、前記センス回路に入力されるクロック信号を発生するレプリカ回路を備え、
前記センス回路は、
前記センス回路に入力される前記クロック信号に応じて前記マッチ線の電位をラッチすることを特徴とする請求項７に記載の連想メモリ。
【手続補正１７】
【補正対象書類名】図面
【補正対象項目名】図２３
【補正方法】変更
【補正の内容】
【図２３】
2014208051.tif 000052
【手続補正１８】
【補正対象書類名】図面
【補正対象項目名】図３４
【補正方法】変更
【補正の内容】
【図３４】
2014208051.tif 000053
【手続補正１９】
【補正対象書類名】図面
【補正対象項目名】図３７
【補正方法】変更
【補正の内容】
【図３７】
2014208051.tif 000054
【国際調査報告】
2014208051.tif 000055
2014208051.tif 000056