(57)【要約】【課題】  動作速度の向上及び信頼性の向上を図る。【解決手段】実施形態の計算機システムは、プロセッサと、第１及び第２の読み出し動作Ｘ１，Ｘ２を実行するメモリデバイスと、を含む。メモリデバイスは、第１の読み出し動作Ｘ１によってメモリセルアレイの選択領域から第１のデータＤＯＵＴ１を読み出し、第２の読み出し動作Ｘ２によって選択領域から第２のデータＤＯＵＴ２を読み出す。プロセッサは、第２の読み出し動作Ｘ２の実行時に、第１のデータＤＯＵＴ１を用いた計算処理Ｐ１を実行する。第１及び第２のデータＤＯＵＴ１，ＤＯＵＴ２の比較結果に基づいて、第１及び第２のデータＤＯＵＴ１，ＤＯＵＴ２が一致していると判定された場合において、第１のデータＤＯＵＴ１が有効であることを示す信号ＳＶＬＤが出力される。プロセッサは、信号ＳＶＬＤに基づいて計算処理Ｐ１の結果を取得する。【選択図】  図１５
2018156556.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサと、
メモリセルアレイを含み、第１の読み出し方式の第１の読み出し動作及び第２の読み出し方式の第２の読み出し動作を前記メモリセルアレイに対して実行するメモリデバイスと、
を具備し、
前記メモリデバイスは、前記第１の読み出し動作によって、前記メモリセルアレイ内の選択領域から第１のデータを読み出し、
前記メモリデバイスは、前記第２の読み出し動作によって、前記選択領域から第２のデータを読み出し、
前記第２の読み出し動作の実行時において、前記プロセッサは、前記メモリデバイスからの前記第１のデータを用いた第１の計算処理を実行し、
前記第１のデータ及び前記第２のデータの比較結果に基づいて、前記第１のデータと前記第２のデータとが一致していると判定された場合において、前記第１のデータが有効であることを示す第１の信号が出力され、
前記プロセッサは、前記第１の信号に基づいて、前記第１の計算処理の結果を取得する、
計算機システム。
【請求項２】
前記第１のデータ及び前記第２のデータの比較結果に基づいて、前記第１のデータと前記第２のデータとが一致しないと判定された場合において、前記第１のデータが誤りであることを示す第２の信号が出力され、
前記プロセッサは、前記第２の信号と前記第２のデータとに基づいて、前記第２のデータを用いた第２の計算処理を実行し、前記第２の計算処理の結果を取得する、
請求項１に記載の計算機システム。
【請求項３】
前記第１のデータは、複数の第１のデータユニットを含み、前記第２のデータは、複数の第２のデータユニットを含み、
前記メモリデバイスは、前記複数の第２のデータユニットのうち、エラーを含む少なくとも１つの第１のデータユニットに対応する少なくとも１つの第２のデータユニットを、前記プロセッサに送信し、
前記プロセッサは、送信された前記少なくとも１つの第２のデータユニットを用いて、前記第２の計算処理を実行する、
請求項２に記載の計算機システム。
【請求項４】
前記メモリデバイスは、前記第１のデータと前記第２のデータとを比較する比較回路を含む、
請求項１乃至３のいずれか１項に記載の計算機システム。
【請求項５】
前記プロセッサは、前記第１のデータ、及び、前記第１のデータの状態を示すフラグを保持するバッファ回路を含み、
前記フラグは、前記第１の信号に基づいて、前記第１のデータが有効状態であることを示す値に設定される、
請求項１乃至４のいずれか１項に記載の計算機システム。
【請求項６】
前記メモリデバイスは、前記第１及び第２の読み出し動作を実行するための読み出し回路を含み、
前記読み出し回路は、
第１及び第２の入力端子を有するセンスアンプ回路と、
前記第１の入力端子及び前記メモリセルアレイに接続された第１の配線と、
前記第１の入力端子及び前記メモリセルアレイに接続された第２の配線と、
前記第２の入力端子に接続された第３の配線と、
前記第２の入力端子及び前記メモリセルアレイに接続された第４の配線と、
前記第３の配線に接続された参照セルと、
を含み、
第１の期間において、前記第１及び第２の配線は、前記選択領域からの第１の出力信号に応じた電位を保持し、前記第３の配線は、前記参照セルからの第２の出力信号に応じた電位を保持し、
前記第１の期間の後の第２の期間において、前記第２の配線は、前記第１の出力信号に応じた前記電位を保持し、前記第４の配線は、前記選択領域からの第３の出力信号に応じた電位を保持する、
請求項１乃至５のうちいずれか１項に記載の計算機システム。
【請求項７】
前記第１の期間と前記第２の期間との間の第３の期間において、書き込み電流が、前記選択領域に、供給される、
請求項６に記載の計算機システム。
【請求項８】
前記選択領域は、メモリ素子としての磁気抵抗効果素子を含み、
前記選択領域からの前記第１の出力信号の出力時において、第１の電圧が、前記磁気抵抗効果素子に印加され、
前記選択領域からの前記第２の出力信号の出力時において、前記第１の電圧より高い第２の電圧が、前記磁気抵抗効果素子に印加される、
請求項６に記載の計算機システム。
【請求項９】
前記メモリデバイスは、前記第１及び第２の読み出し動作を実行するための読み出し回路を含み、
前記読み出し回路は、
第１及び第２の入力端子と、第１の出力端子とを含む第１のセンスアンプ回路と、
第３及び第４の入力端子と、第２の出力端子とを含む第２のセンスアンプ回路と、
前記第１の出力端子に接続された第５の入力端子と、前記第２の出力端子に接続された第６の入力端子と、第３の出力端子と、制御信号が供給される制御端子とを含む選択回路と、
前記第１の入力端子及び前記メモリセルアレイに接続された第１の配線と、
前記第２の入力端子に接続された第２の配線と、
前記第３の入力端子及び前記メモリセルアレイに接続された第３の配線と、
前記第４の入力端子及び前記メモリセルアレイに接続された第４の配線と、
前記第２の配線に接続された参照セルと、
を含み、
前記選択回路は、前記制御信号に基づいて、前記第１のセンスアンプ回路の出力信号及び前記第２のセンスアンプ回路の出力信号のうちいずれか一方を、前記第３の出力端子から出力する、
請求項１乃至５のうちいずれか１項に記載の計算機システム。
【請求項１０】
前記第１の読み出し方式は、参照セル方式であり、前記第２の読み出し方式は、自己参照方式である、
請求項１乃至９のうちいずれか１項に記載の計算機システム。
【請求項１１】
メモリセルアレイと、
読み出しコマンドに基づいて、前記メモリセルアレイの選択領域に対する第１の読み出し方式の第１の読み出し動作によって第１のデータを読み出し、前記選択領域に対する第２の読み出し方式の第２の読み出し動作によって第２のデータを読み出す、読み出し回路と、
前記第１のデータを出力し、前記第１のデータと前記第２のデータとを比較し、前記第１のデータと前記第２のデータとが一致する場合に、前記第１のデータが有効であることを示す第１の信号を出力する出力制御回路と、
を具備するメモリデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、計算機システム及びメモリデバイスに関する。
【背景技術】
【０００２】
近年、ＭＲＡＭのような抵抗変化型メモリを用いた計算機システムの開発が、推進されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２１７８４２号公報
【特許文献２】特許第３８２１０６６号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００４】
動作速度の向上及び信頼性の向上を図る。
【課題を解決するための手段】
【０００５】
本実施形態の計算機システムは、プロセッサと、メモリセルアレイを含み、第１の読み出し方式の第１の読み出し動作及び第２の読み出し方式の第２の読み出し動作を前記メモリセルアレイに対して実行するメモリデバイスと、を含み、前記メモリデバイスは、前記第１の読み出し動作によって、前記メモリセルアレイ内の選択領域から第１のデータを読み出し、前記メモリデバイスは、前記第２の読み出し動作によって、前記選択領域から第２のデータを読み出し、前記第２の読み出し動作の実行時において、前記プロセッサは、前記メモリデバイスからの前記第１のデータを用いた第１の計算処理を実行し、前記第１のデータ及び前記第２のデータの比較結果に基づいて、前記第１のデータと前記第２のデータとが一致していると判定された場合において、前記第１のデータが有効であることを示す第１の信号が出力され、前記プロセッサは、前記第１の信号に基づいて、前記第１の計算処理の結果を取得する。
【図面の簡単な説明】
【０００６】
【図１】実施形態の計算機システムの基本例を説明するための図。
【図２】実施形態の計算機システムの基本例を説明するための図。
【図３】実施形態の計算機システムの基本例を説明するための図。
【図４】実施形態の計算機システムの基本例を説明するための図。
【図５】実施形態の計算機システムの基本例を説明するための図。
【図６】第１の実施形態の計算機システムの構成例を説明するための図。
【図７】第１の実施形態の計算機システムの構成例を説明するための図。
【図８】第１の実施形態の計算機システムの構成例を説明するための図。
【図９】第１の実施形態の計算機システムの構成例を説明するための図。
【図１０】第１の実施形態の計算機システムの構成例を説明するための図。
【図１１】第１の実施形態の計算機システムの構成例を説明するための図。
【図１２】第１の実施形態の計算機システムの構成例を説明するための図。
【図１３】第１の実施形態の計算機システムの構成例を説明するための図。
【図１４】第１の実施形態の計算機システムの構成例を説明するための図。
【図１５】第１の実施形態の計算機システムの動作例を説明するための図。
【図１６】第１の実施形態の計算機システムの動作例を説明するための図。
【図１７】第１の実施形態の計算機システムの動作例を説明するための図。
【図１８】第２の実施形態の計算機システムの構成例を説明するための図。
【図１９】第２の実施形態の計算機システムの動作例を説明するための図。
【図２０】第３の実施形態の計算機システムの動作例を説明するための図。
【図２１】第３の実施形態の計算機システムの動作例を説明するための図。
【図２２】第３の実施形態の計算機システムの動作例を説明するための図。
【図２３】第４の実施形態の計算機システムの構成例を説明するための図。
【図２４】第４の実施形態の計算機システムの動作例を説明するための図。
【図２５】第４の実施形態の計算機システムの動作例を説明するための図。
【図２６】第５の実施形態の計算機システムの構成例を説明するための図。
【図２７】第５の実施形態の計算機システムの構成例を説明するための図。
【図２８】第６の実施形態の計算機システムの構成例を説明するための図。
【図２９】第６の実施形態の計算機システムの構成例を説明するための図。
【図３０】第６の実施形態の計算機システムの動作例を説明するための図。
【図３１】第６の実施形態の計算機システムの動作例を説明するための図。
【発明を実施するための形態】
【０００７】
［実施形態］  
図１乃至図３１を参照して、実施形態の計算機システム及び実施形態のメモリデバイスについて、説明する。
【０００８】
以下の説明において、同一の機能及び構成を有する要素については、同一符号を付す。また、以下の実施形態において、区別化のために数字／英字が参照符号の末尾に付された構成要素（例えば、ワード線ＷＬやビット線ＢＬ、各種の電圧及び信号など）が相互に区別されない場合、末尾の数字／英字が省略された表記が用いられる。
［Ａ］基本形態  
図１乃至図５を参照して、実施形態の計算機システムの基本形態について、説明する。
【０００９】
（Ａ１）  構成  
図１は、本実施形態の計算機システムの構成例を説明するための模式図である。
【００１０】
図１に示されるように、本実施形態の計算機システムは、メモリデバイス１とプロセッサ９とを含む。
【００１１】
プロセッサ９は、計算処理を実行する。  
プロセッサ９は、メモリデバイス１に対して、各種の命令（要求）を実行させる。
【００１２】
例えば、プロセッサ９は、メモリデバイス１に対して、データの書き込みを命令する。
【００１３】
プロセッサ９は、計算処理の実行時に、メモリデバイス１内の所望のアドレス（選択アドレス）からのデータの読み出しを、メモリデバイス１に命令する。プロセッサ９は、読み出されたデータを、計算処理に用いる。
【００１４】
メモリデバイス１は、データを保持するメモリ領域を含む。メモリ領域は、メモリセルアレイを含む。複数のメモリセルＭＣが、メモリセルアレイ内に設けられている。
【００１５】
メモリデバイス１は、プロセッサ９からの命令に基づいて、データの書き込み及びデータの読み出しなどの各種の動作を、実行する。
【００１６】
メモリデバイス１は、プロセッサ９からの命令に基づいて、データを読み出す。
【００１７】
メモリデバイス１は、メモリセルアレイ１００内の選択アドレス内のデータの読み出し時において、第１の読み出し動作及び第２の読み出し動作を用いて、１つの選択アドレスに対するデータの読み出しを行う。第１の読み出し動作に用いられるデータの読み出し方式は、第２の読み出し動作に用いられるデータの読み出し方式とは異なる。メモリデバイス１は、１つのコマンドに基づいて、１つの選択アドレスに対して２回の読み出し動作を連続して実行する。
【００１８】
本実施形態のメモリデバイス１は、例えば、抵抗変化型メモリである。抵抗変化型メモリにおいて、可変抵抗素子が、メモリセル内のメモリ素子に用いられている。
【００１９】
可変抵抗素子の抵抗状態は、ある大きさの電圧又は電流が可変抵抗素子に供給されることによって、変化する。これによって、可変抵抗素子は、複数の抵抗状態（抵抗値）を取り得る。可変抵抗素子の取り得る複数の抵抗状態に対して、１ビット以上のデータが関連付けられる。このように、可変抵抗素子が、メモリ素子として利用される。
【００２０】
可変抵抗素子の抵抗状態が電圧の供給によって変化するか又は電流の供給によって変化するかは、可変抵抗素子の種類に応じる。
【００２１】
本実施形態において、抵抗変化型メモリは、例えば、ＭＲＡＭ（Magnetoresistive random access memory）である。ＭＲＡＭ１において、磁気抵抗効果素子が、メモリ素子に用いられている。
【００２２】
＜メモリ素子の基本動作＞  
図２を用いて、メモリ素子としての磁気抵抗効果素子の動作原理について、説明する。
【００２３】
図２に示されるように、磁気抵抗効果素子４００は、２つの磁性層４０１，４０２と、非磁性層４０３とを少なくとも含む。
【００２４】
２つの磁性層４０１，４０２のそれぞれは、磁化を有する。磁性層４０１の磁化の向きは、可変である。磁性層４０２の磁化の向きは、不変（固定状態）である。  
本実施形態において、磁化の向きが可変な磁性層４０１は、記憶層４０１とよばれ、磁化の向きが不変な磁性層４０２は、参照層４０２とよばれる。
【００２５】
非磁性層４０３は、２つの磁性層４０１，４０２間に設けられている。非磁性層４０３は、トンネルバリア層４０３として機能する。例えば、トンネルバリア層４０３は、酸化マグネシウムを含む絶縁層である。
【００２６】
例えば、２つの磁性層４０１，４０２及びトンネルバリア層４０３によって、磁気トンネル接合が、形成される。本実施形態において、磁気トンネル接合を有する磁気抵抗効果素子４００は、ＭＴＪ素子４００とよばれる。
【００２７】
例えば、磁性層４０１，４０２は、垂直磁気異方性を有している。磁性層４０１，４０２の磁化方向（磁化容易軸方向）は、磁性層の層面に対して、実質的に垂直である。磁性層４０１，４０２の磁化方向は、複数の層４０１，４０２，４０３の積層方向に対して、実質的に平行である。磁性層４０１，４０２の垂直磁気異方性は、磁性層の界面磁気異方性などを利用して生じる。磁性層の垂直磁気異方性を利用したＭＴＪ素子は、垂直磁化型ＭＴＪ素子とよばれる。
【００２８】
ＭＴＪ素子（磁気抵抗効果素子）４００の抵抗状態は、記憶層４０１の磁化の向きと参照層４０２の磁化の向きとの相対的な関係（磁化配列）に応じて、変わる。
【００２９】
記憶層４０１の磁化の向きが、参照層４０２の磁化の向きと同じである場合、ＭＴＪ素子４００は、第１の抵抗状態（第１の磁化配列状態）を有する。
【００３０】
記憶層４０１の磁化の向きが、参照層４０２の磁化の向きと反対である場合、ＭＴＪ素子４００は、第２の抵抗状態（第２の磁化配列状態）を有する。第２の抵抗状態を有するＭＴＪ素子４００の抵抗値は、第１の抵抗状態を有するＭＴＪ素子４００の抵抗値より高い。  
このように、ＭＴＪ素子４００は、２つの磁性層４０１，４０２の磁化配列に応じて、低抵抗状態及び高抵抗状態のうちいずれか１つの状態を取り得る。
【００３１】
例えば、ＭＴＪ素子４００は、１ビットのデータ（“０”データ及び“１”データ）を保持する。この場合において、ＭＴＪ素子４００の抵抗状態が、第１の抵抗状態に設定されることによって、メモリセルＭＣは、第１のデータ保持状態（例えば、“０”データ保持状態）に設定される。ＭＴＪ素子４００の抵抗状態が第２の抵抗状態に設定されることによって、メモリセルＭＣは、第２のデータ保持状態（例えば、“１”データ保持状態）に設定される。
【００３２】
本実施形態において、ＭＴＪ素子４００における記憶層４０１の磁化の向きと参照層４０２の磁化の向きとが同じである磁化配列状態は、平行状態（又はＰ状態）とよばれる。ＭＴＪ素子４００における記憶層４０１の磁化の向きと参照層４０２の磁化の向きとが反対である磁化配列状態は、反平行状態（又はＡＰ状態）ともよばれる。
【００３３】
例えば、ＭＴＪ素子４００に対するデータの書き込みは、スピン注入磁化反転方式が用いられる。スピン注入磁化反転方式は、書き込み電流ＩＷＲ１，ＩＷＲ２がＭＴＪ素子４００内に流れた際に生じるスピントルクによって、記憶層４０１の磁化の向きを制御する書き込み方式である。
【００３４】
ＭＴＪ素子４００の磁化配列状態が、ＡＰ状態からＰ状態へ変化される場合、記憶層４０１から参照層４０２に流れる書き込み電流ＩＷＲ１が、ＭＴＪ素子４００に供給される。
【００３５】
この場合において、参照層４０２の磁化の向きと同じ向きのスピンを有する電子のスピントルクが、記憶層４０１の磁化に、印加される。
【００３６】
記憶層４０１の磁化の向きが参照層４０２の磁化の向きに対して反対である場合、記憶層４０１の磁化の向きは、印加されたスピントルクによって、参照層４０２の磁化の向きと同じ向きに設定される。
【００３７】
この結果として、ＭＴＪ素子４００は、Ｐ状態に設定される。このように、メモリセルＭＣに、“０”データが書き込まれる。
【００３８】
尚、Ｐ状態のＭＴＪ素子４００に、書き込み電流ＩＷＲ１が供給された場合、記憶層４０１の磁化の向きは、変化しない。それゆえ、ＭＴＪ素子４００は、Ｐ状態を維持する。
【００３９】
ＭＴＪ素子４００の磁化配列状態が、Ｐ状態からＡＰ状態へ変化される場合、参照層４０２から記憶層４０１に流れる書き込み電流ＩＷＲ２が、ＭＴＪ素子４００に供給される。
【００４０】
この場合において、参照層４０２の磁化の向きに対して反対の向きのスピンを有する電子のスピントルクが、記憶層４０１の磁化に、印加される。
【００４１】
記憶層４０１の磁化の向きが参照層４０２の磁化の向きと同じである場合、記憶層４０１の磁化の向きは、印加されたスピントルクによって、参照層４０２の磁化の向きに対して反対の向きに設定される。
【００４２】
この結果として、ＭＴＪ素子４００は、ＡＰ状態に設定される。このように、メモリセルＭＣに、“１”データが書き込まれる。
【００４３】
尚、ＡＰ状態のＭＴＪ素子４００に、書き込み電流ＩＷＲ２が供給された場合、スピントルクが記憶層４０１の磁化に印加されても、記憶層４０１の磁化の向きは、変化しない。それゆえ、ＭＴＪ素子４００は、ＡＰ状態を維持する。
【００４４】
ＭＴＪ素子４００からのデータの読み出し（ＭＴＪ素子４００の抵抗状態の判別）時において、読み出し電流ＩＲＤが、ＭＴＪ素子４００内を流れる。読み出し電流のＩＲＤの電流値は、記憶層４０１の磁化反転しきい値より小さい。
【００４５】
データの読み出しは、読み出し電流ＩＲＤの電流値、読み出し電流ＩＲＤに起因するあるノードの電位の変動、又は、読み出し電流ＩＲＤによる電荷の蓄積量などのセンス結果に基づいて、実行される。
【００４６】
例えば、高抵抗状態（ＡＰ状態）のＭＴＪ素子４００から出力される読み出し電流ＩＲＤの電流値は、低抵抗状態（Ｐ状態）のＭＴＪ素子４００から出力される読み出し電流ＩＲＤの電流値より小さい。
【００４７】
このような、ＭＴＪ素子４００の抵抗状態の違いに伴った電流ＩＲＤの変動に基づいて、ＭＴＪ素子４００が保持しているデータが、判別される。
【００４８】
上述のように、本実施形態の計算機システムにおいて、メモリデバイス（ＭＲＡＭ）からのデータの読み出し時において、互いに異なる２つの読み出し方式が用いられる。  
例えば、第１の読み出し方式の読み出し動作のための期間（実行期間）は、第２の読み出し方式の読み出し動作のための期間より、短い。第１の読み出し方式の読み出し動作の速度は、第２の読み出し方式の読み出し動作の速度より高い。  
例えば、第２の読み出し方式の読み出し動作によって得られるデータの信頼性は、第１の読み出し方式の読み出し動作によって得られるデータの信頼性より、高い。
【００４９】
本実施形態において、選択アドレスからのデータの読み出しのために、参照セル方式の読み出し動作と、自己参照方式の読み出し動作とが、実行される。
【００５０】
図３は、本実施形態の計算機システムにおける、ＭＲＡＭの参照セル方式の読み出し動作の基本的な原理を説明するための模式図である。
【００５１】
図３に示されるように、ＭＲＡＭの参照セル方式の読み出し動作において、参照セルＲＣが用いられる。
【００５２】
参照セルＲＣは、参照抵抗素子ＲＲを含む。参照抵抗素子ＲＲは、ＭＴＪ素子でもよいし、金属又は半導体を用いた固定抵抗素子でもよい。
【００５３】
参照抵抗素子ＲＲの抵抗値は、低抵抗状態のＭＴＪ素子４００の抵抗値（Ｒ１）と高抵抗状態のＭＴＪ素子４００の抵抗値（Ｒ２）との間の抵抗値を有する。
【００５４】
ＭＴＪ素子４００を含むメモリセルＭＣは、センスアンプ回路５２０の一方の入力端子に接続されている。参照セルＲＣは、センスアンプ回路５２０の他方の入力端子に接続されている。
【００５５】
データの読み出し時において、読み出し電流（セル電流）ＩＲＤが、データの読み出し対象のメモリセル（以下では、選択セルとよばれる）内のＭＴＪ素子４００内を、流れる。  
電流（以下では、参照電流とよばれる）ＩＲｅｆが、参照抵抗素子ＲＲ内を流れる。
【００５６】
センスアンプ回路５２０は、ある時刻における参照電流ＩＲｅｆに基づいた値（電気量）及び読み出し電流ＩＲＤに基づいた値をセンスする。
【００５７】
センスアンプ回路５２０は、センスした参照電流ＩＲｅｆに基づいた値と読み出し電流ＩＲＤに基づいた値とを比較する。この比較結果に基づいて、メモリセルＭＣに保持されるデータが、読み出される。
【００５８】
ある時刻において、参照電流ＩＲｅｆの電流値は、Ｐ状態のＭＴＪ素子４００の読み出し電流ＩＲＤの電流値より低く、且つ、ＡＰ状態のＭＴＪ素子４００の読み出し電流ＩＲＤの電流値より高い。このように、参照電流ＩＲｅｆは、Ｐ状態のＭＴＪ素子４００の読み出し電流ＩＲＤの電流値とＡＰ状態のＭＴＪ素子４００の読み出し電流ＩＲＤの電流値とを判別するための基準値となる。
【００５９】
それゆえ、参照電流ＩＲｅｆと読み出し電流ＩＲＤとの比較によって、ＭＴＪ素子４００の抵抗状態が、判別できる。  
これによって、メモリセルＭＣ内に保持されるデータが、判別される。
【００６０】
以上のように、ＭＲＡＭ１における参照セル方式の読み出し動作が、実行される。
【００６１】
それゆえ、参照セル方式の読み出し動作は、比較的早い速度（短い時間）で、データの読み出しを実行できる。
【００６２】
図４は、本実施形態の計算機システムにおける、ＭＲＡＭの自己参照方式の読み出し動作の基本的な原理を説明するための模式図である。
【００６３】
図４において、自己参照方式の読み出し動作として、データ破壊型自己参照方式の読み出し動作が例示されている。
【００６４】
自己参照方式の読み出し動作において、参照セルＲＣは用いられない。  
図４に示されるように、自己参照方式の読み出し動作において、選択セルＭＣに対して、２回のデータの読み出し（２回の読み出し電流の供給）が、実行される。本実施形態において、説明の区別化のために、自己参照方式におけるデータを判別するための２回のデータの読み出しのことを、内部読み出しともよぶ場合もある。
【００６５】
自己参照方式の読み出し動作において、選択セルＭＣに対する１回目のデータ読み出しにおける読み出し電流ＩＲＤａに起因する電気量が、センスアンプ回路（図示せず）によって、選択セルＭＣに対する２回目のデータ読み出しにおける読み出し電流ＩＲＤｂに起因する電気量と比較される。
【００６６】
例えば、データ破壊型の自己参照方式の読み出し動作において、１回目のデータ読み出しと２回目のデータ読み出しとの間において、書き込み電流ＩＷＲが、ＭＴＪ素子４００に供給される。
【００６７】
自己参照方式の読み出し動作時に供給される書き込み電流ＩＷＲは、予め設定されたデータをＭＴＪ素子４００に書き込むための電流である。ここで、予め設定されたデータは、ＭＴＪ素子が記憶しているデータ（書き込み電流ＩＷＲの供給前のデータ）を判定するための基準となるデータである。本実施形態において、説明の区別化のために、自己参照方式の読み出し動作における１回目のデータ読み出しと２回目のデータ読み出しとの間における書き込み電流の供給を、基準データ書き込みともよぶ。
【００６８】
例えば、１回目のデータ読み出し後、“０”データを書きこむための書き込み電流が、データの読み出し対象のＭＴＪ素子４００に供給される。
【００６９】
ＭＴＪ素子４００の磁化配列状態がＡＰ状態である場合、書き込み電流ＩＷＲの供給によって、ＭＴＪ素子４００の磁化配列状態は、ＡＰ状態からＰ状態に変わる。  
ＭＴＪ素子４００の磁化配列状態がＰ状態である場合、書き込み電流ＩＷＲが供給されたとしても、ＭＴＪ素子４００は、Ｐ状態を維持する。
【００７０】
このように、２回目の読み出し電流の供給時（図４の（ｃ））、ＭＴＪ素子４００は、Ｐ状態に設定されている。１回目の読み出し電流の供給時（図４の（ａ））において、ＭＴＪ素子４００は、記憶すべきデータに応じて、ＡＰ状態又はＰ状態に設定されている。
【００７１】
例えば、読み出し電流ＩＲＤａ，ＩＲＤｂは、ＭＴＪ素子の磁化配列状態がＡＰ状態からＰ状態に変わる向きに流れる書き込み電流ＩＷＲと同じ向きに、流れる。但し、読み出し電流ＩＲＤａ，ＩＲＤｂの電流値は、書き込み電流ＩＷＲの電流値より小さい。
【００７２】
書き込み電流ＩＷＲの供給によってＭＴＪ素子４００の磁化配列状態が変化した場合、１回目の読み出し電流の大きさは、２回目の読み出し電流と異なる。  
上述のように、ＭＴＪ素子４００の磁化配列状態がＡＰ状態からＰ状態に変化した場合、２回目の読み出し電流ＩＲＤｂの大きさは、１回目の読み出し電流の大きさより大きい。
【００７３】
この結果として、選択セルＭＣ内に保持されていたデータは、“１”データであると、判別される。
【００７４】
ＭＴＪ素子４００の磁化配列状態が変化しない場合、２回目の読み出し電流ＩＲＤｂの大きさは、１回目の読み出し電流ＩＲＤａの大きさと実質的に同じである。この場合において、２回目の読み出し電流ＩＲＤｂと１回目の読み出し電流ＩＲＤａとの差は、非常に小さい。
【００７５】
この結果として、選択セルＭＣ内に保持されていたデータは、“０”データであると、判別される。
【００７６】
尚、“０”データが、自己参照読み出し動作における基準データに設定されてもよい。この場合において、“０”データを書き込むための書き込み電流が、データの読み出し対象のＭＴＪ素子４００に供給される。
【００７７】
このように、自己参照方式の読み出し動作は、選択セル自体からの２つの出力の対比によって、実行される。
【００７８】
自己参照方式の読み出し動作によって読み出されたデータの信頼性は、参照セル方式の読み出し動作によって読み出されたデータの信頼性より高い。但し、自己参照方式の読み出し動作の期間は、参照セル方式の読み出し動作の期間に比較して長い。
【００７９】
以下では、自己参照方式による読み出しデータのことを、訂正データ又は置換データともよぶ。
【００８０】
本実施形態の計算機システムは、メモリデバイス１からデータを読み出す際に、異なる２つの読み出し方式を連続して実行し、データを読み出す。  
以下のように、本実施形態の計算機システムは、異なる２つの読み出し方式によってメモリデバイスから読み出されたデータを用いて、プロセッサの計算処理を実行する。
【００８１】
（Ａ２）  動作  
図５を用いて、本実施形態の計算機システムの基本的な動作の一例について、説明する。
【００８２】
図５は、本実施形態の計算機システムの基本動作を説明するためのフローチャートである。
【００８３】
図５に示されるように、計算機システムが計算処理を実行する際に、プロセッサ９が、計算処理に用いるデータの読み出しを、メモリデバイスに命令する（ステップＳＴ０）。
【００８４】
プロセッサ９は、読み出しコマンド、読み出し対象のデータの格納場所を示すアドレス（選択アドレス）、及び、各種の制御信号を、ＭＲＡＭ１に送信する。
【００８５】
ＭＲＡＭ１は、読み出しコマンド、選択アドレス及び制御信号を、受信する。  
ＭＲＡＭ１は、読み出しコマンド及び制御信号に基づいて、選択アドレスに対するデータの読み出しを開始する（ステップＳＴ１）。
【００８６】
ＭＲＡＭ１は、データの読み出しを実行するにあたって、参照セル方式の読み出し動作によって、選択アドレスからデータを読み出す（ステップＳＴ２）。これによって、ＭＲＡＭ１は、参照セル方式に基づくデータ（第１のデータ）を得る。
【００８７】
ＭＲＡＭ１は、参照セル方式に基づくデータを、プロセッサ９に送信する（ステップＳＴ３）。
【００８８】
ＭＲＡＭ１は、参照セル方式の読み出し動作の後、自己参照方式の読み出し動作によって、選択アドレスからデータを読み出す（ステップＳＴ４Ａ）。尚、本実施形態において、自己参照方式の読み出し動作は、ＭＲＡＭ１からプロセッサ９への参照セル方式に基づくデータの送信に並行して実行されてもよい。本実施形態において、自己参照方式の読み出し動作は、参照セル方式に基づくデータの送信のための期間の一部分とオーバーラップしていてもよい。また、本実施形態において、自己参照方式の読み出し動作の開始のタイミングは、参照セル方式に基づくデータの送信の開始のタイミングより前でもよい。
【００８９】
プロセッサ９は、ＭＲＡＭ１からの第１のデータを受信する。プロセッサ９は、ＭＲＡＭ１における自己参照方式の読み出し動作と並行して、参照セル方式に基づくデータを用いた計算処理を実行する（ステップＳＴ４Ｂ）。
【００９０】
本実施形態において、自己参照方式の読み出し動作に並行して参照セル方式の読み出し動作の結果のデータを用いて実行される計算処理のことを、投機的計算処理（又は投機的な計算処理）とよぶ。例えば、投機的計算処理は、自己参照方式の読み出し動作の終了前、又は、参照セル方式に基づくデータと自己参照方式に基づくデータの比較の開始前に、開始される。
【００９１】
尚、投機的計算処理の期間は、自己参照方式の読み出し動作の期間に完全に並行せずともよい。投機的計算処理の期間の一部が、自己参照方式の読み出し動作の期間に並行していればよい。
【００９２】
ＭＲＡＭ１は、参照セル方式に基づくデータの読み出しの後、自己参照方式に基づくデータ（第２のデータ）を得る。  
ＭＲＡＭ１は、参照セル方式に基づくデータと自己参照方式に基づくデータとの比較処理を実行する（ステップＳＴ５）。例えば、データの比較処理は、投機的計算処理に並行して行われている。
【００９３】
ＭＲＡＭ１は、データの比較処理に基づいて、参照セル方式に基づくデータが自己参照方式に基づくデータに一致しているか否か判定する（ステップＳＴ６）。  
ＭＲＡＭ１は、２つのデータの比較処理の結果に基づくフラグを、プロセッサ９に送信する。フラグによって、ＭＲＡＭ１は、参照セル方式のデータが有効であるかエラーであるかを、プロセッサ９に通知する。本実施形態において、参照セル方式のデータの有効／エラーを通知するためのフラグを、エラー通知フラグともよぶ。
【００９４】
参照セル方式に基づくデータが自己参照方式に基づくデータに一致している場合、参照セル方式に基づくデータが、有効（正常又はエラー無し）であると判定される。  
この場合において、ＭＲＡＭ１は、参照セル方式のデータが有効であることを示す有効信号を含む第１のフラグを、プロセッサ９に送信する（ステップＳＴ７Ａ）。
【００９５】
この場合において、
プロセッサ９は、フラグを受信する。受信されたフラグが有効信号を含む場合、プロセッサ９は、投機的計算処理の結果（計算値）をコミットする（ステップＳＴ７Ｂ）。コミットとは、計算処理によって得られた演算値を有効とみなして、データ保持領域（例えば、レジスタ）に書き込むことである。
【００９６】
これによって、参照セル方式のデータが有効である場合、プロセッサ９は、投機的計算処理の結果の取得によって、計算処理を終了する。
【００９７】
参照セル方式に基づくデータが自己参照方式に基づくデータに一致していない場合、ＭＲＡＭ１は、参照セル方式のデータが有効でないこと（参照セル方式のデータがエラーを含むこと）を示すエラー信号を含む第２のフラグを、プロセッサ９に送信する（ステップＳＴ８Ａ）。
【００９８】
ＭＲＡＭ１は、エラー信号（無効信号ともよばれる）を含むフラグと共に、自己参照方式に基づくデータを、訂正データとして、プロセッサ９に送信する。尚、エラー信号と共に転送されるデータは、自己参照方式に基づくデータの全体でなくともよい。例えば、自己参照方式に基づくデータのうち、参照セル方式のデータにおけるエラーを含む部分に対応するデータ部が、エラー信号と共に送信されてもよい。
【００９９】
プロセッサ９は、フラグ及びデータを受信する。受信されたフラグがエラー信号を含む場合、プロセッサ９は、自己参照方式に基づくデータを用いて、計算処理（以下では、再計算処理とよばれる）を実行する（ステップＳＴ８Ｂ）。例えば、プロセッサ９は、投機的計算処理の結果を、破棄する。
【０１００】
再計算処理の結果が得られると、プロセッサ９は、再計算処理の結果をコミットする（ステップＳＴ９）。
【０１０１】
このように、参照セル方式のデータがエラーである場合、プロセッサ９は、自己参照方式のデータを用いた計算処理の結果の取得によって、計算処理を終了する。
【０１０２】
以上のように、本実施形態の計算機システムの動作は、完了する。
【０１０３】
（Ａ３）  まとめ  
本実施形態の計算機システムにおいて、メモリデバイスは、比較的速度の高い第１の読み出し動作と比較的信頼性の高い第２の読み出し動作とを連続して実行する。
【０１０４】
メモリデバイスは、第１の読み出し動作によって読み出された第１のデータを、プロセッサに送信する。
【０１０５】
プロセッサは、メモリデバイスにおける第２の読み出し動作の実行と並行して、第１のデータを用いた計算処理（投機的計算処理）を実行する。
【０１０６】
メモリデバイスは、第２の読み出し動作によって、第２のデータを読み出す。  
メモリデバイスは、第１のデータと第２のデータとを比較することによって、第１のデータが有効であるか否か判定する。
【０１０７】
比較結果に基づいて第１のデータが有効であると判定された場合、第１のデータを用いた計算処理の結果が、有効であると判定される。
【０１０８】
比較結果に基づいて第１のデータが有効でないと判定された場合、プロセッサは、第２のデータを用いた第２の計算処理を実行する。
【０１０９】
このように、実施形態の計算機システムは、第１の読み出し動作及び第１の読み出し動作に基づくデータを用いた計算処理によって、システムの動作（計算処理）を高速化できる。
【０１１０】
本実施形態の計算機システムは、第２の読み出し動作に基づく第２のデータ及び第２のデータを用いた計算結果によって、データ及び計算結果の信頼性を確保できる。
【０１１１】
したがって、本実施形態の計算機システムは、動作の速度を向上でき、動作の信頼性の向上できる。
［Ｂ］  第１の実施形態  
図６乃至図１７を参照して、第１の実施形態の計算機システム及びその制御方法（動作例）について、説明する。
【０１１２】
（Ｂ１）  構成例  
図６乃至図１４を用いて、第１の実施形態の計算機システムの構成例について、説明する。
＜計算機システムの構成＞  
図６は、本実施形態の計算機システムの構成例を示すブロック図である。
【０１１３】
図６に示されるように、計算機システム１０００は、メモリデバイス１とプロセッサ９とを含む。メモリデバイス１は、バス８を介して、プロセッサ９に接続されている。バス８は、ある規格に基づいたデータ転送網である。例えば、バス８は、ケーブル、コネクタ、無線通信、インターネット及びイントラネットなどのうち少なくとも１つを含む。
【０１１４】
メモリデバイス１は、メモリ回路１０と、インターフェイス回路２０とを含む。
【０１１５】
メモリ回路１０は、データを保存するメモリセルアレイ、書き込み回路、読み出し回路などを含む。
【０１１６】
インターフェイス回路２０は、出力制御回路２００及び入力制御回路２９０を含む。
【０１１７】
出力制御回路２００は、データの出力を制御できる。
【０１１８】
例えば、出力制御回路２００は、２つのデータ保持回路２１０，２２０と、制御回路２３０とを含む。  
データ保持回路２１０，２２０は、異なる２つの読み出し方式で読み出された２つのデータを、それぞれ保持する。制御回路２３０は、データ保持回路２１０，２２０内のデータに対する各種の制御を行う。
【０１１９】
出力制御回路２００は、参照セル方式によって読み出されたデータ（データの値）と自己参照方式によって読み出されたデータ（データの値）とを比較できる。
【０１２０】
入力制御回路２９０は、メモリ回路１０に対するプロセッサ９からのデータ、アドレス、コマンド及び各種の制御信号の入力を、制御できる。
【０１２１】
プロセッサ９は、メモリコントローラ９０、及び、コア回路９９などを含む。
【０１２２】
メモリコントローラ９０は、メモリデバイス１とプロセッサ９との間におけるデータ及び各種の信号の入出力を、制御する。
【０１２３】
コア回路９９は、各種の計算処理を実行する。  
コア回路９９は、計算回路（演算ユニット）、データ保持回路などを含む。例えば、コア回路９９は、投機的計算処理を制御するためのリオーダーバッファ６０６を、含む。
【０１２４】
以下において、メモリデバイス１及びプロセッサ９の内部構成について、より具体的に説明する。
【０１２５】
＜メモリデバイスの構成＞  
図７乃至図１１を用いて、本実施形態の計算機システムのメモリデバイスにおけるメモリ回路の内部構成について、説明する。
【０１２６】
メモリ回路１０は、プロセッサ９からのコマンドＣＭＤ、アドレスＡＤＲ、入力データＤｉｎ及び各種の制御信号ＣＮＴを、入力制御回路２９９を介して、受ける。  
メモリ回路１０は、出力データＤＯＵＴを、出力制御回路２００に送る。
【０１２７】
ＭＲＡＭ１において、メモリ回路１０は、メモリセルアレイ１００、ロウデコーダ１２０、ワード線ドライバ（ロウ線制御回路）１２１、カラムデコーダ１２２、ビット線ドライバ（カラム線制御回路）１２３、スイッチ回路１２４、書き込み回路（書き込み制御回路）１２５、読み出し回路（読み出し制御回路）１２６、及び、シーケンサ１９０を、少なくとも含む。
【０１２８】
メモリセルアレイ１００は、複数のメモリセルＭＣを含む。
【０１２９】
ロウデコーダ１２０は、アドレスＡＤＲに含まれるロウアドレスを、デコードする。  
ワード線ドライバ１２１は、ロウアドレスのデコード結果に基づいて、メモリセルアレイ１００のロウ（例えば、ワード線）を選択する。
【０１３０】
カラムデコーダ１２２は、アドレスＡＤＲに含まれるカラムアドレスを、デコードする。  
ビット線ドライバ１２３は、カラムアドレスのデコード結果に基づいて、メモリセルアレイ１００のカラム（例えば、ビット線）を選択する。ビット線ドライバ１２３は、スイッチ回路１２４を介して、メモリセルアレイ１００に接続されている。
【０１３１】
スイッチ回路１２４は、書き込み回路１２５及び読み出し回路１２６のいずれか一方を、メモリセルアレイ１００及びビット線ドライバ１２３に接続する。これによって、ＭＲＡＭ１は、コマンドに対応した動作を実行する。
【０１３２】
書き込み回路１２５は、書き込み動作時に、アドレスＡＤＲに基づいた選択セルに、データの書き込みのための各種の電圧及び電流を、供給する。データＤＩＮは、メモリセルアレイ１００に書き込まれるべきデータとして、書き込み回路１２４に供給される。これによって、書き込み回路１２５は、データＤＩＮをメモリセルＭＣ内に書き込む。書き込み回路１２５は、例えば、書き込みドライバ／シンカなどを含む。
【０１３３】
読み出し回路１２６は、読み出し動作時に、アドレスＡＤＲに基づいて選択されたメモリセル（選択セル）に、データの読み出しのための各種の電圧又は電流を供給する。これによって、メモリセルＭＣ内に格納されているデータが、読み出される。
【０１３４】
読み出し回路１２６は、メモリセルアレイ１００から読み出されたデータを、出力データＤＯＵＴとして、出力制御回路２００内のデータ保持回路２１０，２２０に供給する。
【０１３５】
読み出し回路１２６は、例えば、読み出しドライバ及びセンスアンプ回路などを含む。
【０１３６】
本実施形態のＭＲＡＭにおいて、読み出し回路１２６は、参照セル方式の読み出し動作を実行するための機能（回路部）と、自己参照方式の読み出し動作のための機能と、を含む。
【０１３７】
シーケンサ１９０は、コマンドＣＭＤ及び各種の制御信号ＣＮＴを受ける。シーケンサ１９０は、コマンドＣＭＤ及び制御信号ＣＮＴに基づいて、メモリ回路１０内部の各回路１２０〜１２６の動作を制御する。シーケンサ１９０は、メモリ回路１０内の動作状況に応じて、制御信号ＣＮＴを、インターフェイス回路２０を介してメモリコントローラ５に送信できる。  
例えば、シーケンサ１９０は、書き込み動作及び読み出し動作に関する各種の情報を、設定情報として保持している。
【０１３８】
図８は、ＭＲＡＭのメモリセルアレイの内部構成の一例を示す等価回路図である。
【０１３９】
図８に示されるように、複数（ｎ本）のワード線ＷＬ（ＷＬ＜０＞，ＷＬ＜１＞，・・・，ＷＬ＜ｎ−１＞）が、メモリセルアレイ１００内に、設けられている。複数（ｍ本）のビット線ＢＬ（ＢＬ＜０＞，ＢＬ＜１＞，・・・，ＢＬ＜ｍ−１＞）及び、複数（ｍ本）のビット線ｂＢＬ（ｂＢＬ＜０＞，ｂＢＬ＜１＞，・・・，ｂＢＬ＜ｍ−１＞）が、メモリセルアレイ１００内に、設けられている。１本のビット線ＢＬと１本のビット線ｂＢＬとが、１組のビット線対を形成する。以下において、説明の明確化のため、ビット線ｂＢＬは、ソース線とよばれる場合もある。
【０１４０】
複数のメモリセルＭＣは、メモリセルアレイ１００内に、マトリクス状に配置されている。
【０１４１】
ｘ方向（ロウ方向）に配列された複数のメモリセルＭＣは、共通のワード線ＷＬに接続されている。ワード線ＷＬは、ワード線ドライバ１２１に接続されている。ワード線ドライバ１２１は、ロウアドレスに基づいて、ワード線ＷＬの電位を制御する。これによって、ロウアドレスに示されるワード線ＷＬ（ロウ）が、選択され、活性化される。
【０１４２】
ｙ方向（カラム方向）に配列された複数のメモリセルＭＣは、１つのビット線対に属する２本のビット線ＢＬ，ｂＢＬに、共通に接続されている。
【０１４３】
例えば、メモリセルＭＣは、１つの可変抵抗素子（ＭＴＪ素子）４００と、１つのセルトランジスタ４１０と、を含む。セルトランジスタ４１０は、メモリセルＭＣの選択素子として機能する。尚、メモリセルＭＣは、２以上のＭＴＪ素子４００を含んでもよいし、２以上のセルトランジスタ４１０を含んでもよい。
【０１４４】
ＭＴＪ素子４００の一端は、ビット線ｂＢＬに接続されている。ＭＴＪ素子４００の他端は、セルトランジスタ４１０の一端（ソース／ドレインの一方）に接続されている。セルトランジスタ４１０の他端（ソース／ドレインの他方）は、ビット線ＢＬに接続されている。セルトランジスタ４１０のゲートに、ワード線ＷＬが接続されている。
【０１４５】
尚、メモリセルアレイ１００は、階層ビット線方式の構造を有してもよい。この場合において、２本のグローバルビット線が、メモリセルアレイ１００内に設けられている。各ビット線ＢＬが、対応するスイッチ素子を介して一方のグローバルビット線に接続される。
各ソース線ｂＢＬが、対応するスイッチ素子を介して他方のグローバルビット線に接続される。グローバルビット線が、スイッチ回路１２４を介して、書き込み回路１２５及び読み出し回路１２６に接続されている。
【０１４６】
図９及び図１０は、本実施形態のＭＲＡＭにおける読み出し回路の構成例の一例を示す等価回路である。
【０１４７】
図９は、メモリセルアレイに対する読み出し回路の構成の一例を説明するための模式図である。
【０１４８】
例えば、読み出し回路１２６は、複数のセンスアンプユニット２６１を含む。
【０１４９】
メモリセルアレイ１００内に、複数の読み出し単位ＲＵが設定されている。
【０１５０】
１つのセンスアンプユニット２６１が、読み出し単位ＲＵに対して設けられている。１つのセンスアンプユニット２６１が、スイッチ回路１２４を介して、対応する読み出し単位ＲＵに接続される。
【０１５１】
例えば、データの読み出し動作時において、複数のセンスアンプユニット２６１が、並列に駆動される。各読み出し単位ＲＵの読み出し対象のメモリセルＭＣに対して、読み出し動作が、並列に実行される。
【０１５２】
これによって、読み出し回路１２６は、１つの読み出しコマンドに対して、あるデータサイズのデータ（２ビット以上のデータ）を、読み出すことができる。
【０１５３】
尚、センスアンプユニット２６１が、１つずつ駆動されてもよい。複数のセンスアンプユニット２６１が、順次駆動されることによって、あるデータサイズのデータが、メモリセルアレイ１００から読み出されてもよい。
【０１５４】
１つのセンスアンプユニット２６１が、１つのメモリセルアレイ１００に設けられてもよい。この場合、１つのセンスアンプユニット２６１が、メモリセルアレイ１００から１ビットのデータを読み出す。又は、１つのセンスアンプユニット２６１が、複数の選択セルに対して順次アクセスすることによって、あるデータサイズのデータが読み出される。
【０１５５】
図１０は、本実施形態のＭＲＡＭのセンスアンプユニットの内部構成の一例を示す等価回路図である。
【０１５６】
図１０において、ＭＲＡＭの読み出し動作時における各回路の接続関係が示されている。尚、図１０において、１つのセンスアンプユニット及び読み出し単位に対応する各回路が、抽出されている。
【０１５７】
図１０に示されるように、読み出しドライバ５００は、カラム選択スイッチ素子ＣＳＷを介してビット線ＢＬに接続されている。読み出し動作時において、カラム選択スイッチ素子ＣＳＷがオンすることによって、読み出しドライバ５００が、ビット線ＢＬに、電流（又は電圧）を供給する。
【０１５８】
カラム選択スイッチ素子ＣＳＷのオン／オフは、デコードされたカラムアドレスに基づいて、制御される。
【０１５９】
例えば、読み出しドライバ５００は、ビット線ドライバ１２３の構成要素である。但し、読み出しドライバ５００は、読み出し回路１２６の構成要素であってもよい。例えば、カラム選択スイッチ素子ＣＳＷは、スイッチ回路１２４内の構成要素である。但し、カラム選択スイッチ素子ＣＳＷは、読み出し回路１２６、又は、ビット線ドライバ１２３の構成要素であってもよい。
【０１６０】
複数のビット線（ソース線）ｂＢＬは、スイッチ回路１２４内のマルチプレクサ２４１を介して、センスアンプユニット２６１に接続されている。
【０１６１】
読み出し動作時において、デコードされたカラムアドレスに基づいて、１つのソース線ｂＢＬが、マルチプレクサ２４１を介して、センスアンプユニット２６１に接続される。例えば、スイッチ回路１２４は、複数のマルチプレクサ２４１を含む。１つのマルチプレクサ２４１が、１つの読み出し単位ＲＵに対応するように、設けられている。
【０１６２】
センスアンプユニット２６１は、センスアンプ回路５２０、複数のキャパシタＣ１，Ｃ２、参照セルＲＣ、参照セルドライバ５９０、複数のスイッチ素子ＳＷ１，ＳＷ２，ＳＷ３，ＳＷＡ，ＳＷＢを含む。
【０１６３】
スイッチ素子ＳＷ１，ＳＷ２，ＳＷ３，ＳＷＡ，ＳＷＢは、例えば、ＭＯＳスイッチである。
【０１６４】
スイッチ素子ＳＷ１及びスイッチ素子ＳＷ３の一端は、マルチプレクサ２４１に接続されている。スイッチ素子ＳＷ１の他端は、スイッチ素子ＳＷＡを介して、センスアンプ回路５２０の一方の入力端子に接続されている。スイッチ素子ＳＷ３の他端は、スイッチ素子ＳＷＢを介して、センスアンプ回路５２０の他方の入力端子に接続されている。
【０１６５】
スイッチ素子ＳＷ１とスイッチ素子ＳＷＡとの接続ノードに、キャパシタＣ１の一端が接続されている。キャパシタＣ１の他端は、接地されている。  
スイッチ素子ＳＷ３とスイッチ素子ＳＷＢとの接続ノードに、キャパシタＣ２の一端が接続されている。キャパシタＣ２の他端は、接地されている。
【０１６６】
尚、キャパシタＣ１，Ｃ２は、センスアンプ回路５２０の入力端子に接続された容量素子でもよい。キャパシタＣ１は、センスアンプ回路５２０の入力端子とメモリセアレイ１０（選択セルＭＣ）とを接続する配線（及び素子）に含まれる容量成分（寄生容量）でもよい。キャパシタＣ２は、センスアンプ回路５２０の入力端子と参照セルＲＣとを接続する配線（及び素子）に含まれる容量成分（寄生容量）でもよい。
【０１６７】
制御信号Ｓ１が、スイッチ素子ＳＷ１の制御端子（ゲート）に供給される。スイッチ素子ＳＷ１は、制御信号Ｓ１に基づいて、キャパシタＣ１とマルチプレクサ２４１との間の接続を制御する。スイッチ素子ＳＷ１がオンした場合に、キャパシタＣ１は、マルチプレクサ５１０を介して、選択セルＭＣに接続される。
【０１６８】
制御信号Ｓ３が、スイッチ素子ＳＷ３の制御端子に供給される。スイッチ素子ＳＷ３は、制御信号Ｓ３に基づいて、キャパシタＣ２とマルチプレクサ５１０との間の接続を制御する。スイッチ素子ＳＷ３がオンした場合に、キャパシタＣ２は、マルチプレクサ５１０を介して、選択セルＭＣに接続される。
【０１６９】
センスアンプユニット２６１（読み出し回路１２６）は、参照セル方式の読み出し動作を実行するために、参照セルＲＣを含む。
【０１７０】
参照セルＲＣの一端は、読み出しドライバ５９０に接続されている。参照セルＲＣの他端は、スイッチ素子ＳＷ２に接続されている。参照セルＲＣは、スイッチ素子ＳＷ２を介して、キャパシタＣ２の一端に接続されている。参照セルＲＣは、スイッチ素子ＳＷ２，ＳＷＢを介して、センスアンプ回路５２０の他方の入力端子に接続されている。
【０１７１】
参照セルＲＣは、複数の可変抵抗素子４９０Ａ，４９０Ｂとセルトランジスタ４９９とを含む。  
セルトランジスタ４９９の一端（ソース／ドレインの一方）は、ドライバ５９０の出力端子に接続されている。セルトランジスタ４９９の他端（ソース／ドレインの他方）は、可変抵抗素子４９０Ａ，４９０Ｂの一端に接続されている。可変抵抗素子４９０Ａ，４９０Ｂの他端は、スイッチ素子ＳＷ２を介して、キャパシタＣ２に接続されている。
【０１７２】
２つの可変抵抗素子４９０Ａ，４９０Ｂは、並列接続されている。これによって、低抵抗状態（Ｐ状態）のＭＴＪ素子４００の抵抗値Ｒ１と高抵抗状態（ＡＰ状態）のＭＴＪ素子４００の抵抗値Ｒ２との間の抵抗値が、形成される。
【０１７３】
参照セル方式の読み出し動作時に、セルトランジスタ４９９のゲートに、トランジスタ４９９のオン電圧が、印加される。これによって、参照セルＲＣは、活性化され、参照電流ＩＲｅｆが生成される。
【０１７４】
スイッチ素子ＳＷ２は、参照セルＲＣとキャパシタＣ２との接続を制御する。  
制御信号Ｓ２が、スイッチ素子ＳＷ２の制御端子に供給される。スイッチ素子ＳＷ２のオン／オフは、制御信号Ｓ２に基づいて、制御される。
【０１７５】
スイッチ素子ＳＷＡは、キャパシタＣ１とセンスアンプ回路５２０の一方の入力端子との接続を制御する。スイッチ素子ＳＷＢは、キャパシタＣ２とセンスアンプ回路５２０の一方の入力端子との接続を制御する。例えば、共通の制御信号ＳＣが、２つのスイッチ素子ＳＷＡ，ＳＷＢの制御端子に供給される。
【０１７６】
センスアンプ回路５２０は、スイッチ素子ＳＷＡ，ＳＷＢを介して、キャパシタＣ１，Ｃ２に接続されている。センスアンプ回路５２０の一方の入力端子に、キャパシタＣ１からの信号が、スイッチ素子ＳＷＡ１を介して供給される。センスアンプ回路５２０の他方の入力端子に、キャパシタＣ２からの信号が、スイッチ素子ＳＷＡ１を介して供給される。
【０１７７】
センスアンプ回路５２０に、制御信号（センスイネーブル信号）ＳＥＮが、供給される。センスアンプ回路５２０は、センスイネーブル信号ＳＥＮの信号レベルの変化に基づいたタイミングで、活性化又は非活性化される。
【０１７８】
センスアンプ回路５２０は、入力端子に供給されたキャパシタＣ１，Ｃ２からの信号をセンスし、センスした信号を増幅する。センスアンプ回路５２０は、センスした２つの信号を比較する。センスアンプ回路５２０は、比較結果に基づく値を、データＤｏｕｔとして、出力する。
【０１７９】
キャパシタＣ１，Ｃ２は、読み出し動作時において、データの読み出しのための電気量を保持する。  
本実施形態において、センスアンプユニット２６１は、電荷積算方式の差動型センスアンプである。
【０１８０】
参照セル方式の読み出し動作時において、キャパシタＣ１は、選択セルＭＣからの読み出し電流よって生じる信号電荷を、蓄積する。キャパシタＣ２は、参照セルＲＣからの参照電流によって生じる信号電荷を、蓄積する。
【０１８１】
自己参照方式の読み出し動作時において、キャパシタＣ１は、１回目の内部読み出しにおける選択セルＭＣからの読み出し電流によって生じる信号電荷を、蓄積する。また、キャパシタＣ２は、２回目の内部読み出しにおける選択セルＭＣからの読み出し電流によって生じる信号電荷を、蓄積する。
【０１８２】
各読み出し動作時において、２つのキャパシタＣ１，Ｃ２内の信号電荷（電位）に応じた信号が、センスアンプ回路５２０に比較されることによって、選択セルＭＣ内のデータが、判別される。  
これによって、選択セルＭＣ内のデータが、読み出される。
【０１８３】
尚、センスアンプユニット２６１は、ビット線ＢＬに接続されてもよい。この場合、センスアンプユニット２６１は、ビット線ＢＬの放電に起因する電荷を、保持する。
【０１８４】
＜出力制御回路＞  
図１１は、本実施形態におけるＭＲＡＭの出力制御回路の構成例を示している。
【０１８５】
図１１に示されるように、出力制御回路２００は、２つの読み出しバッファ回路（データ保持回路）２１０，２２０及び制御回路２３０を含む。
【０１８６】
制御回路２３０は、比較回路２３１、選択回路２３２、データバッファ回路２３３、及び、入出力回路（Ｉ／Ｏ回路）２３４などを含む。
【０１８７】
読み出しバッファ回路２１０，２２０は、メモリ回路１０に接続されている。読み出しバッファ回路２１０，２２０に、メモリ回路１０からの読み出しデータが、供給される。  
読み出しバッファ回路２１０は、参照セルセル方式で読み出されたデータＤＯＵＴ１を、一時的に保持する。読み出しバッファ回路２２０は、自己参照方式で読み出されたデータＤＯＵＴ２を、一時的に保持する。
【０１８８】
比較回路２３１は、読み出しバッファ回路２１０，２２０内の読み出しデータの値を比較する。
【０１８９】
比較回路２３１は、２つの読み出しデータの比較結果に基づいて、信号ＥＲ（フラグＦＬＧ）の信号レベルを制御する。比較回路２３１は、信号ＥＲを、選択回路２３２及びデータバッファ回路２３３に供給する。
【０１９０】
選択回路２３２は、信号ＥＲに基づいて、参照セル方式に基づくデータＤＯＵＴ１及び自己参照方式に基づくデータＤＯＵＴ２のうち、いずれか一方を選択する。選択回路２３２は、選択されたデータを、データバッファ回路２３３に出力する。
【０１９１】
データバッファ回路２３３は、選択回路２３２からのデータを一時的に保持する。  
Ｉ／Ｏ回路２３４は、プロセッサ９に対するデータの出力のタイミングを制御する。
【０１９２】
図１２は、本実施形態のＭＲＡＭにおける、出力制御回路内の比較回路の構成例を示す図である。
【０１９３】
図１２に示されるように、比較回路２３１に、参照セル方式で読み出されたデータＤＯＵＴ１と自己参照方式で読み出されたデータＤＯＵＴ２とが、読み出しバッファ回路２１０，２２０から供給される。
【０１９４】
例えば、データＤＯＵＴ１及びデータＤＯＵＴ２は、あるデータ長（データサイズ又はビット数）を有する。
【０１９５】
比較回路２３１は、各データＤＯＵＴ１，ＤＯＵＴ２を、Ｎ個のデータユニットに分割する。例えば、データＤＯＵＴ１は、Ｎ個のデータユニットＤＵ（ＤＵ１Ａ，ＤＵ２Ａ，・・・，ＤＵＮＡ）を含み、データＤＯＵＴ２は、Ｎ個のデータユニットＤＵ（ＤＵ１Ｂ，ＤＵ２Ｂ，・・・，ＤＵＮＢ）を含む。
【０１９６】
例えば、比較回路２３１は、ラッチ回路３１０，３２０を含む。ラッチ回路３１０，３２０は、データユニットＤＵを一時的に保持する。
【０１９７】
比較回路２３１は、判定回路３５０を含む。判定回路３５０は、２つのデータＤＯＵＴ１，ＤＯＵＴ２における互いに対応するデータユニットＤＵが一致するか否か判定する。
【０１９８】
判定回路３５０は、例えば、Ｎ個のＸＯＲゲート３５１（３５１−１，３５１−１，・・・３５１−Ｎ）を含む。
【０１９９】
ＸＯＲゲート３５１の一方の入力端子は、ラッチ回路３１０に接続され、ＸＯＲゲート３５１の他方の入力端子は、ラッチ回路３２０に接続されている。各ＸＯＲゲート３５１の入力端子に、対応するデータユニットＤＵが、供給される。
【０２００】
ＸＯＲゲート３５１は、２つのデータユニットＤＵに対するＸＯＲ演算（排他的論理和）の結果を示す信号ＥＲ（ＥＲ１，ＥＲ２，・・・，ＥＲＮ）を出力する。
【０２０１】
ＸＯＲゲート３５１は、対応する２つのデータユニットＤＵ１，ＤＵ２のデータ値（“０”又は“１”）が一致する場合において、“０”を出力する。ＸＯＲゲート３５１は、対応するデータユニットＤＵ１，ＤＵ２のデータ値が一致しない場合において、“１”を出力する。
【０２０２】
複数のＸＯＲゲート３５１からの出力結果ＥＲに基づいて、“１”を出力したＸＯＲゲート３５１に対応するデータユニットＤＵにエラーが存在することが、検知される。  
このように、データＤＯＵＴ１内に存在するエラーの位置が、特定される。
【０２０３】
例えば、エラー通知フラグＦＬＧは、信号ＥＲの集合である。信号ＥＲは、フラグＦＬＧとして、プロセッサ９に送信される。  
全ての信号ＥＲ１，ＥＲ２，・・・ＥＲＮの値が、“０”である場合、フラグＦＬＧは、有効信号を示す。  
複数の信号ＥＲ１，ＥＲ２，・・・ＥＲＮのうち少なくとも１つの値が、“１”である場合、フラグＦＬＧは、エラー信号ＸＸを示す。エラー信号ＸＸを含むフラグＦＬＧ内の“１”の位置（桁）に応じて、データＤＯＵＴ１のエラーを含む位置（データユニットＤＵ）が示される。
【０２０４】
信号ＥＲは、例えば、制御信号として、選択回路２３２及びデータバッファ回路２３３に、供給される。
【０２０５】
選択回路２３２は、信号ＥＲの“１”の位置に基づいて、データＤＯＵＴ２内の複数のデータユニットＤＵのうち、データＤＯＵＴ１内のエラーのデータユニットＤＵ１に対応するデータユニットＤＵを、選択できる。選択回路２３２は、選択されたデータユニットＤＵを、データバッファ回路２３３に出力できる。
【０２０６】
例えば、データバッファ回路２３３は、信号ＥＲをフラグＦＬＧとして、保持できる。データバッファ回路２３３は、Ｉ／Ｏ回路２３４を介して、信号ＥＲを含むフラグＦＬＧをプロセッサ９に送信する。
【０２０７】
尚、データバッファ回路２３３が、データＤＯＵＴ２内の複数のデータユニットの中から、“１”の信号ＥＲに対応したデータユニットＤＵを選択的に出力してもよい。
【０２０８】
＜プロセッサの構成例＞  
図１３及び図１４を用いて、本実施形態の計算機システムにおけるプロセッサの内部構成の一例について、説明する。  
図１３は、プロセッサ内のコア回路の内部構成の一例を示すブロック図である。
【０２０９】
図１３に示されるように、コア回路９９は、データキャッシュ６００、データキャッシュコントローラ６０１、命令キャッシュ６０２、命令キャッシュコントローラ６０３、命令発行ユニット６０４、命令キュー６０５、拡張リオーダーバッファ（リオーダーバッファ回路）６０６、レジスタ６０７、リザベーションステーション６０８及び計算回路６０９を含む。
【０２１０】
データキャッシュ６００は、プロセッサ９の要求によってＭＲＡＭ１から読み出されたデータを、記憶する。
【０２１１】
データキャッシュコントローラ６０１は、データキャッシュ６００の制御及び管理を行う。例えば、データキャッシュコントローラ６０１は、データキャッシュ６００に対するアクセス制御を行う。データキャッシュコントローラ６０１は、プロセッサ９の要求に基づくデータが、データキャッシュ６００内に格納されている否かを判定する。データキャッシュコントローラ６０１は、キャッシュ６００内にデータが格納されていない場合におけるＭＲＡＭ１に対する各種のアクセス制御を行う。
【０２１２】
データキャッシュコントローラ６０１は、ＭＲＡＭ１からのデータを、拡張リオーダ―バッファ６０６に転送できる。
【０２１３】
命令キャッシュ６０２は、命令に対応するプログラムを、記憶する。
【０２１４】
命令キャッシュコントローラ６０３は、命令キャッシュ６０２の制御及び管理を行う。  
例えば、命令キャッシュコントローラ６０３は、命令キャッシュ６０２に対するアクセス制御を行う。命令キャッシュコントローラ６０３は、命令キャッシュ６０２からプログラムを読み出せる。
【０２１５】
命令発行ユニット６０４は、命令キャッシュコントローラ６０３を制御して、命令キュー６０５に、命令（又はデータ）を供給できる。
【０２１６】
命令キュー（例えば、ＦＩＦＯ）６０５は、複数のデータ保持領域６５０を有する。命令キュー６０５は、命令（又はデータ）、及び、命令に対応するフラグを、データ保持領域６５０内に保持する。命令キュー６０５内において、命令又はデータに対して、有効(“Ｖ”で表記)又はチェック待ち(“Ｗ”で表記)などの状態を示すフラグ（以下では、ステートフラグともよばれる）ＺＺが付されている。
【０２１７】
レジスタ６０７は、計算処理のための１以上のオペランド（数値、データ）を保持する。レジスタ６０７は、複数のデータ保持領域６７０を有する。
【０２１８】
計算回路６０９は、加算器６９０及び乗算器６９１などの１以上の演算ユニットを含む。各演算ユニット６９０，６９１によって、命令に対応した計算処理が実行される。
【０２１９】
リザベーションステーション６０８は、計算回路６９０による計算処理が待ち状態である命令及びデータの少なくとも一方を、保持する。
【０２２０】
各演算ユニット６９０，６９１に対応するように、リザベーションステーション６０８内に、記憶領域が、設けられている。例えば、リザベーションステーション６０８において、加算器６９０に対して、第１のステーション６８０Ａが設けられ、乗算器６９１に対して、第２のステーション６８０Ｂが設けられている。リザベーションステーション６０８は、各ステーション６８０Ａ，６８０Ｂ内に複数のデータ保持領域（命令保持領域）６８１を有する。
【０２２１】
リザベーションステーション６０８は、拡張リオーダ―バッファ６０６に対して、バッファ６０６内のデータの転送を要求できる。例えば、拡張リオーダーバッファ６０６内のデータは、レジスタ６０７を介して、リザベーションステーション６０８に供給される。
【０２２２】
拡張リオーダーバッファ６０６は、エントリを保持することが可能な複数のデータ保持領域６６０を有する。エントリは、データに対して実行すべき計算処理の各種の情報を含んでいる。
【０２２３】
拡張リオーダーバッファ６０６は、命令キュー６０５からの命令を保持できる。
【０２２４】
拡張リオーダーバッファ６０６は、レジスタ６０７に、オペランドを転送できる。
【０２２５】
拡張リオーダーバッファ６０６は、計算回路６０９からの計算結果を保持できる。
【０２２６】
拡張リオーダーバッファ６０６は、ＭＲＡＭ１、データキャッシュコントローラ６０１、又は、命令キュー６０５から、データ（参照セル方式に基づくデータ）ＤＯＵＴ１、データ（自己参照方式に基づくデータ）ＤＯＵＴ２及びフラグＦＬＧを、受ける。
【０２２７】
拡張リオーダ―バッファ６０６及びリザベーションステーション６０８は、投機的計算処理の実行を制御するための記憶領域として、機能する。
【０２２８】
尚、計算回路６０９内の演算ユニットの個数及び種類、及び、リザベーションステーション６０８のエントリ数及びレジスタ（データ保持領域）数など、コア回路９９内の構成要素の個数は、プロセッサ９に要求される処理能力に応じて、適宜に設計される。
【０２２９】
図１４を用いて、本実施形態の計算機システムにおけるプロセッサの拡張リオーダーバッファの一例について、説明する。
【０２３０】
図１４に示されるように、拡張リオーダーバッファ６０６において、現在コミット待ちの計算処理（エントリ）に関して、各計算処理のエントリ番号、計算処理が実行中か否かを示すビジーフラグ、命令（Instruction）、オペランド（Operand1, Operand2）、レジスタ６０７内の書き込み先アドレス（Destination）、計算結果、及び、コミットが可能かどうかを示すステートフラグを、保持する。
【０２３１】
命令、オペランド、書き込み先アドレスの各項目に関するデータ保持フィールド６６１，６６２，６６３，６６４において、データ（値）及び命令に対して、フラグＦＸが設定されている。
【０２３２】
フラグＦＸは、各項目に対応するデータ／命令が有効（Ｖ：Valid）であるか、チェック待ち（Ｗ：Wait）であるかを示す。
【０２３３】
例えば、拡張リオーダーバッファ６０６が、ＭＲＡＭ１からのデータＤＯＵＴ１を受信した直後において、受信したデータＤＯＵＴ１は、チェック前のデータである。それゆえ、拡張リオーダーバッファ６０６は、受信した直後のデータＤＯＵＴ１に、待機フラグ（“Ｗ”）を付与する。
【０２３４】
リザベーションステーション６０８から拡張リオーダーバッファ６０６にデータの転送要求があった場合において、拡張リオーダーバッファ６０６は、データＤＯＵＴ１とともに待機フラグ“Ｗ”を、リザベーションステーション６０８に転送する。
【０２３５】
拡張リオーダーバッファ６０６は、計算回路６０９の計算結果を、バリューフィールド６６５に保存する。
【０２３６】
拡張リオーダーバッファ６０６に保持されるデータで、待機フラグ“Ｗ”が付与されたものに対して、ＭＲＡＭ１からエラー通知フラグ（及び訂正データ）が、転送される。
【０２３７】
フラグＦＬＧが有効を示す場合、拡張リオーダ―バッファ６０６は、有効のデータに対応する命令フィールド６６１及びオペランドフィールド６６２，６６３内のフラグＦＸを、有効状態（“Ｖ”）に設定する。
【０２３８】
例えば、フラグＦＬＧがエラーを示す場合において、拡張リオーダ―バッファ６０６は、フラグＦＬＧと共に受信した訂正データＤＯＵＴ２に対応するエントリ以後のすべてのエントリをフラッシュ（消去）する。拡張リオーダ―バッファ６０６は、エラー信号ＸＸと共に受信したデータ（データユニット）ＤＯＵＴ２を、データ保持領域６６０内に書き込む。
【０２３９】
エントリがフラッシュされた後、命令発行ユニット６０４が新しい命令をフェッチすることによって、計算処理が継続されてもよい。拡張リオーダーバッファ６０６のエントリが、命令キュー６０５に書き戻されて、計算処理が継続されてもよい。
【０２４０】
各エントリについて、計算処理が終了し、且つ、すべてのエントリ内のフラグＦＬＧが有効になった場合、拡張リオーダ―バッファ６０６は、ステートフラグフィールド６６６内における対応するステートフラグを、コミット（Commit）に設定する。
【０２４１】
このような、拡張リオーダーバッファ６０６の制御により、誤り判定前のデータＤＯＵＴ１を用いた投機的計算処理による計算の高速化、及び、誤り判定後に受信した正しいデータをレジスタに書き込むことが可能であることによるデータの信頼性の両立を実現することができる。
【０２４２】
（Ｂ２）  動作例  
図１５乃至図１７を用いて、本実施形態の計算機システム及びメモリデバイスの動作例（制御方法）について、説明する。
【０２４３】
尚、ここでは、本実施形態のシステム及びデバイスの動作の説明のために、図１５乃至図１７に加えて、図９乃至図１４も適宜用いられる。
【０２４４】
図１５は、本実施形態の計算機システムにおける、参照セル方式に基づくデータと自己参照方式に基づくデータとが一致した場合における動作例を示すタイミングチャートである。
【０２４５】
プロセッサ９は、計算処理の実行時、計算処理のためのデータの読み出しを、ＭＲＡＭ１に命令（要求）する。プロセッサ９は、読み出しコマンド、選択アドレス及び各種の制御信号を、ＭＲＡＭ１に送信する。
【０２４６】
ＭＲＡＭ１は、プロセッサ９からの命令を受信する。ＭＲＡＭ１は、コマンドに基づいて、選択アドレスに対するデータの読み出しを開始する。
【０２４７】
シーケンサ１９０は、入力制御回路２９９からのコマンドＣＭＤ及び制御信号ＣＮＴに基づいて、メモリ回路１０内の各回路の動作を制御する。
【０２４８】
ワード線ドライバ１２１は、ロウデコーダ１２０による選択アドレスＡＤＲのデコード結果に基づいて、ワード線ＷＬの活性化及び非活性化を制御する。ビット線ドライバ１２３は、カラムデコーダ１２２による選択アドレスＡＤＲのデコード結果に基づいて、ビット線ＢＬの活性化及び非活性化を制御する。スイッチ回路１２４は、メモリセル（選択セル）ＭＣと各回路１２３，１２６との接続を、制御する。
【０２４９】
読み出し回路１２６は、シーケンサ１９０の制御によって、活性化される。読み出し回路１２６は、参照セル方式の読み出し動作Ｘ１及び自己参照方式の読み出し動作Ｘ２を順次実行する。
【０２５０】
図１６は、本実施形態のＭＲＡＭにおける読み出し回路の動作例を説明するためのタイミングチャートである。
【０２５１】
図１６に示されるように、時刻ｔ０において、ＭＲＡＭ１は、コマンド及び制御信号に基づいて、選択アドレスＡＤＲに対するデータの読み出しを開始する。
【０２５２】
図１０の読み出し回路において、選択アドレスに対応するカラムスイッチ素子ＣＳＷがオン状態に設定される。読み出しドライバ５００は、オン状態のカラムスイッチ素子ＣＳＷを介して、ビット線ＢＬに、データの読み出しのための電流又は電圧を、供給する。  
マルチプレクサ２４１は、選択アドレスに基づいて、複数のソース線ｂＢＬのうち１つのソース線を選択する。
【０２５３】
セルトランジスタ４９９がオン状態に設定され、参照セルＲＣが活性化される。  
読み出しドライバ５９０は、参照セルＲＣに、参照電流ＩＲｅｆを生成するための電流又は電圧を供給する。
【０２５４】
時刻ｔ１ａにおいて、信号Ｓ１，Ｓ２の信号レベルが、“Ｈ”レベルに設定される。
【０２５５】
キャパシタＣ１は、オン状態のスイッチ素子ＳＷ１を介して、選択セルＭＣの読み出し電流ＩＲＤに起因する電荷によって、充電される。
【０２５６】
キャパシタＣ２は、オン状態のスイッチ素子ＳＷ２を介して、参照セルＲＣの参照電流ＩＲｅｆに起因する電荷によって、充電される。  
時刻ｔ２ａにおいて、信号Ｓ１，Ｓ２の信号レベルは、“Ｌ”レベルに設定される。これによって、キャパシタＣ１，Ｃ２は、オフ状態のスイッチ素子ＳＷ１，ＳＷ２によって、選択セルＭＣ及び参照セルＲＣから電気的に分離される。
【０２５７】
時刻ｔ３ａにおいて、信号ＳＣの信号レベルが、“Ｈ”レベルに設定される。これによって、センスアンプ回路５２０の２つの入力端子に対して、キャパシタＣ１，Ｃ２の電荷が、それぞれ供給される。
【０２５８】
時刻ｔ５ａにおいて、センスイネーブル信号ＳＥＮの信号レベルが、“Ｈ”レベルに設定される。これによって、差動増幅型のセンスアンプ回路５２０が、活性化される。
【０２５９】
尚、図１６において、信号ＳＣは、信号ＳＥＮの信号レベルが“Ｈ”レベルに設定される前（例えば、時刻ｔ４ａ）に、“Ｌ”レベルに設定されている。但し、信号ＳＣの信号レベルは、信号ＳＥＮの“Ｈ”レベルの設定時に、“Ｌ”レベルでも、“Ｈ”レベルでもよい。“Ｌ”レベルの信号ＳＣによって、キャパシタＣ１，Ｃ２は、センスアンプ回路５２０から電気的に分離される。
【０２６０】
センスアンプ回路５２０は、キャパシタＣ１からの信号とキャパシタＣ２からの信号をセンスする。センスアンプ回路５２０は、センスされた２つの信号の大きさを比較し、比較結果を示す信号を増幅する。
【０２６１】
時刻ｔ６ａにおいて、制御信号ＳＥＮの信号レベルが、“Ｌ”レベルに設定される。これによって、センスアンプ回路５２０は、非活性化される。センスアンプ回路５２０の比較結果は、センスアンプ回路５２０内にラッチされている。
【０２６２】
時刻ｔ７ａから時刻ｔ８ａまでの期間において、センスアンプ回路５２０の信号処理の結果が、参照セル方式によって読み出されたデータＤＯＵＴ１として、メモリ回路１０から出力される。
【０２６３】
ＭＲＡＭ１は、参照セル方式の読み出し動作によって得られたデータＤＯＵＴ１を、バス８を介してプロセッサ９に転送する。
【０２６４】
参照セル方式で読み出されたデータＤＯＵＴ１は、出力制御回路２００内の読み出しバッファ回路２１０に保存される。
【０２６５】
出力制御回路２００は、読み出しバッファ回路２１０内のデータＤＯＵＴ１の値を、選択回路２３２、データバッファ回路２３３及びＩ／Ｏ回路２３４を介して、プロセッサ９に転送する。
【０２６６】
プロセッサ９において、コア回路９９は、ＭＲＡＭ１からのデータＤＯＵＴ１を受信すると、データＤＯＵＴ１の値を、拡張リオーダーバッファ６０６に転送する。
【０２６７】
その際、拡張リオーダーバッファ６０６は、拡張リオーダーバッファ６０６内におけるデータＤＯＵＴ１に関連する項目及びデータＤＯＵＴ１に対応するデータの各項目に“Ｗ”（チェック待ち）のフラグＦＸを、付与する。
【０２６８】
図１５に示されるように、プロセッサ９は、データＤＯＵＴ１を用いた投機的計算処理Ｐ１を実行する。コア回路９９は、投機的計算処理Ｐ１を実行した状態で、ＭＲＡＭ１からのフラグＦＬＧの転送を、待つ。
【０２６９】
コア回路９９内における投機的計算処理Ｐ１の実行時において、命令キャッシュコントローラ６０３は、命令キャッシュ６０２又はＭＲＡＭ１から命令データを受け取ると、命令発行ユニット６０４を介して、命令キュー６０５内に、命令（例えば、データＤＯＵＴ１の処理に関連する命令）を追加する。
【０２７０】
その際に、命令キュー６０５は、追加された命令を保持するデータ保持領域６５０において、命令に対応するデータが訂正前の状態であることを示す待機フラグ“Ｗ”を、追加した命令に付与する。
【０２７１】
命令は、命令キュー６０５のデータ保持領域６５０の順番に従って、リザベーションステーション６０８の命令保存領域６８０Ａ，６８０Ｂに転送される。  
命令キュー６０５から転送された命令に対応するエントリが、拡張リオーダーバッファ６０６内に作成され、データ保持領域６６０内に格納される。
【０２７２】
命令キュー６０５からの命令に基づいて、リザベーションステーション６０８は、計算処理に用いるオペランドを、レジスタ６０７から読み出す。
【０２７３】
計算回路６０９は、命令とオペランドとが揃ったものから順に、投機的計算処理を実行する。計算回路６０９は、投機的計算処理Ｐ１の結果を、拡張リオーダーバッファ６０６に返す。
【０２７４】
命令キャッシュコントローラ６０３、データキャッシュコントローラ６０１及びリオーダーバッファ６０６は、ＭＲＡＭ１からのフラグを待つ。
【０２７５】
リオーダーバッファ６０６は、リザベーションステーション６０８からデータの転送を要求された場合、要求されたデータと待機フラグ（“Ｗ”）とを、リザベーションステーション６０８に転送する
このように、本実施形態の計算機システムにおいて、自己参照方式の読み出し動作と並行して、投機的計算処理が、実行される。
【０２７６】
尚、図１５において、データＤＯＵＴ１が４つに分割されて転送される例が、示されている。データの分割数（データユニットＤＵの数）は、計算機システム１０００及びプロセッサ９の仕様に応じて、設計される。
【０２７７】
ＭＲＡＭ１は、参照セル方式の読み出し動作に続いて、自己参照方式の読み出し動作Ｐ２を実行する。
【０２７８】
図１４に示されるように、時刻ｔ８ａにおいて、信号Ｓ１の信号レベルが、“Ｈ”レベルに設定される。自己参照方式の読み出し動作時において、信号Ｓ２の信号レベルは、“Ｌ”レベルに設定される。これによって、参照セルＲＣは、キャパシタＣ２から電気的に分離されている。
【０２７９】
キャパシタＣ１は、オン状態のスイッチ素子ＳＷ１を介して、１回目のデータ読み出しにおける選択セルＭＣの読み出し電流ＩＲＥＡＤ１に起因する電荷によって、充電される。
【０２８０】
時刻ｔ９ａにおいて、信号Ｓ１の信号レベルは、“Ｌ”レベルに設定される。これによって、キャパシタＣ１は、オフ状態のスイッチ素子ＳＷ１によって、選択セルＭＣから電気的に分離される。
【０２８１】
時刻ｔ９ａから時刻ｔ１０ａまでの期間において、選択セルＭＣに対するあらかじめ設定されたデータ（基準データ）の書き込みのために、制御信号ＭＴＪ−ＷＲが“Ｈ”レベルに設定され、書き込み回路１２５が活性化される。これによって、書き込み電流が、選択セルＭＣ内のＭＴＪ素子４００に供給される。  
この時、センスアンプユニット２６１は、選択セルから電気的に分離されている。
【０２８２】
図４を用いて説明したように、“０”データの書き込みの書き込み電流の供給によって、ＡＰ状態のＭＴＪ素子において、ＭＴＪ素子の磁化配列状態が、ＡＰ状態からＰ状態に変わる。この一方、Ｐ状態のＭＴＪ素子において、ＭＴＪ素子の磁化配列状態は、Ｐ状態に維持される。
【０２８３】
時刻ｔ１０ａにおいて、信号ＭＴＪ−ＷＲが“Ｌ”レベルに設定される。信号Ｓ３の信号レベルが、“Ｈ”レベルに設定される。  
基準データの書き込み後において、キャパシタＣ２は、オン状態のスイッチ素子ＳＷ３を介して、２回目のデータ読み出しにおける選択セルＭＣの読み出し電流ＩＲＤｂに起因する電荷によって、充電される。
【０２８４】
時刻ｔ１１ａにおいて、信号Ｓ３の信号レベルが、“Ｌ”レベルに設定される。キャパシタＣ２は、オフ状態のスイッチ素子ＳＷ３によって、選択セルから電気的に分離される。
【０２８５】
時刻ｔ１２ａにおいて、信号ＳＣの信号レベルが、“Ｈ”レベルに設定される。  
これによって、センスアンプ回路５２０の２つの入力端子に対して、キャパシタＣ１，Ｃ２の電荷が、それぞれ供給される。
【０２８６】
時刻ｔ１４ａにおいて、センスイネーブル信号ＳＥＮの信号レベルが、センスアンプ回路５２０の活性化のために、“Ｈ”レベルに設定される。  
これによって、活性化されたセンスアンプ回路５２０は、差動増幅によって、キャパシタＣ１からの信号とキャパシタＣ２からの信号とを比較し、比較結果を示す信号を増幅する。
【０２８７】
上述のように、信号ＳＣの信号レベルは、信号ＳＥＮの信号レベルが“Ｈ”レベルに設定される前のタイミング（例えば、時刻ｔ１３ａ）で、“Ｌ”レベルに設定されてもよいし、信号ＳＥＮの信号レベルが“Ｈ”レベルに設定されるより後のタイミングで、“Ｌ”レベルに設定されてもよい。
【０２８８】
時刻ｔ１５ａにおいて、制御信号ＳＥＮの信号レベルが、“Ｌ”レベルに設定される。これによって、センスアンプ回路５２０は、非活性化される。センスアンプ回路５２０の比較結果は、センスアンプ回路５２０内にラッチされている。
【０２８９】
時刻ｔ１６ａから時刻ｔ１７ａまでの期間において、センスアンプ回路５２０の信号処理の結果が、自己参照方式によって読み出されたデータＤＯＵＴ２として、メモリ回路１０から出力される。
【０２９０】
データＤＯＵＴの出力の後、メモリ回路１０は、ライトバック処理を実行する。
【０２９１】
時刻ｔ１８ａから時刻ｔ１９ａまでの期間において、ライトバック処理によって選択セルＭＣに読み出した値（データＤＯＵＴ２）を書き戻すために、制御信号ＭＴＪＷＲの信号レベルが、“Ｈ”レベルに設定される。これによって、データＤＯＵＴ２に対応した書き込み電流が、選択セルＭＣに供給される。選択セルＭＣに、保持すべきデータが書き込まれる。
【０２９２】
自己参照方式で読み出されたデータＤＯＵＴ２は、読み出しバッファ回路２２０に保存される。  
出力制御回路２００において、比較回路２３１は、参照セル方式に基づくデータＤＯＵＴ１と自己参照方式に基づくデータＤＯＵＴ２とがバッファ回路２１０，２２０に揃うと、読み出しバッファ回路２１０のデータの値と読み出しバッファ回路２２０のデータの値とを比較する。
【０２９３】
比較回路２３１は、２つのデータＤＯＵＴ１，ＤＯＵＴ２におけるデータユニットＤＵの比較結果に対応した判定信号ＥＲを出力する。
【０２９４】
比較結果に基づいて、２つのデータＤＯＵＴ１，ＤＯＵＴ２が一致していた場合、参照セル方式のデータＤＯＵＴ１の値が有効であると、みなされる。
【０２９５】
この結果として、出力制御回路２００は、有効信号ＳＶＬＤを含むフラグＦＬＧをプロセッサ９に送信する。
【０２９６】
図１４に示されるように、プロセッサ９は、有効信号ＳＶＬＤを含むフラグＦＬＧを受信すると、参照セル方式に基づくデータを用いた計算処理Ｐ１が終了した後、その計算処理の結果をコミットする。
【０２９７】
この場合（参照セル方式のデータが有効である場合）において、拡張リオーダーバッファ６０６は、データＤＯＵＴ１に対応する各項目のフラグＦＸを、有効フラグ（“Ｖ”）に設定する。拡張リオーダーバッファ６０６は、ステートフラグを、コミットに設定する。
【０２９８】
例えば、キャッシュコントローラ６０１は、ＭＲＡＭ１からの有効信号ＳＶＬＤに基づいて、データキャッシュ６００に、データＤＯＵＴ１の値又はデータＤＯＵＴ１を用いた計算処理に対応する値を書き込む。
【０２９９】
例えば、有効信号ＳＶＬＤに基づいて、命令キャッシュコントローラ６０３は、命令キャッシュ６０２に、データＤＯＵＴ１の値又はデータＤＯＵＴ１を用いた計算処理に対応する値を書き込む。
【０３００】
命令キュー６０５は、キュー６０５内の対応する命令に、有効フラグ（“Ｖ”）を、付与する。また、命令キュー６０５は、命令に誤りが無い場合、フラグＦＸに、有効フラグ（“Ｖ”）をセットする。
【０３０１】
以上のように、実施形態の計算機システムにおける参照セル方式に基づくデータと自己参照方式に基づくデータとが一致した場合において、参照セル方式のデータを用いた投機的計算処理Ｐ１によって、所望の計算結果が、得られる。
【０３０２】
図１７は、本実施形態の計算機システムにおける参照セル方式に基づくデータと自己参照方式に基づくデータとが一致しない場合のタイミングチャートである。
【０３０３】
図１４及び図１５の例と同様に、ＭＲＡＭ１は、参照セル方式の読み出し動作及び自己参照方式の読み出し動作を連続して実行する。
【０３０４】
コア回路９９は、参照セル方式に基づくデータを用いて、投機的計算処理Ｐ１を実行する。投機的計算処理Ｐ１は、ＭＲＡＭ１における自己参照方式の読み出し動作と並行して実行されている。
【０３０５】
ＭＲＡＭ１において、異なる方式で読み出された２つのデータＤＯＵＴ１，ＤＯＵＴ２が、比較回路２３１によって比較される。
【０３０６】
２つのデータＤＯＵＴ１，ＤＯＵＴ２が一致しない場合、ＭＲＡＭ１において、出力制御回路２００は、エラー信号ＸＸを含むフラグＦＬＧを、プロセッサ９に転送する。エラー信号ＸＸは、一致しなかったデータユニットＤＵの位置を示す。
【０３０７】
さらに、２つのデータＤＯＵＴ１，ＤＯＵＴ２が一致しない場合、出力制御回路２００は、自己参照方式で読み出したデータＤＯＵＴ２を訂正データとして、プロセッサ９に、送信する。
【０３０８】
例えば、２つのデータの比較が互いに対応するデータユニットＤＵによって実行される場合、出力制御回路２００は、データの値が一致しないデータユニットＤＵを、選択的に転送する。出力制御回路２００は、データの値が一致したデータユニットＤＵを、ＭＲＡＭ１からプロセッサ９に転送しない。
【０３０９】
図１７の例では、自己参照方式のデータにおける２番目のデータユニットＤＵ２Ｂと４番目のデータユニットＤＵ４Ｂが、訂正データとして、ＭＲＡＭ１からプロセッサ９に転送される。１番目及び３番目のデータユニットＤＵ１Ｂ，ＤＵ３Ｂは、転送されない。
【０３１０】
この場合において、データＤＯＵＴ１の２番目及び４番目のデータユニットがエラーで洗うことを示すエラー信号（例えば、“０１０１”の信号）ＸＸが、フラグＦＬＧとして転送される。
【０３１１】
プロセッサ９は、ＭＲＡＭ１からのフラグＦＬＧ及び訂正データＤＯＵＴ２に基づいて、データＤＯＵＴ２を用いた計算処理Ｐ２を実行する。
【０３１２】
本実施形態のように、訂正データがデータユニットＤＵとして、ＭＲＡＭ１からプロセッサ９に転送される場合、データユニットでのデータ転送及び計算処理となる。この結果として、本実施形態の計算システムは、データ転送の期間及び計算処理の期間を、短縮できる。
【０３１３】
ＭＲＡＭ１のフラグＦＬＧに基づいて、計算処理に用いられるデータに訂正がある場合（参照セル方式のデータが無効である場合）、プロセッサ９は、エラー信号ＸＸの訂正位置で示されたデータＤＵ２Ａ，ＤＵ４Ａを、自己参照方式に基づく訂正データＤＵ２Ｂ，ＤＵ４Ｂに置き換える。プロセッサ９は、データＤＵ２Ｂ，ＤＵ４Ｂを用いて、再計算処理Ｐ２を実行する。
【０３１４】
例えば、コア回路９９は、訂正データ（自己参照方式のデータ）ＤＯＵＴ２を、データキャッシュコントローラ６０１を介して、データキャッシュ６００に書き込む。
【０３１５】
これによって、データキャッシュ６００内に、誤りが無いデータが保存される。データユニットＤＵが訂正データＤＯＵＴ２として転送される場合、データユニットＤＵ２Ｂ，ＤＵ４Ｂが、参照セル方式のデータＤＯＵＴ１内の対応するデータユニットＤＵ１Ａ，ＤＵ４Ａに、それぞれ置換される。
【０３１６】
例えば、命令キャッシュコントローラ６０３は、エラー信号ＸＸに基づいて、エラー信号ＸＸと共に転送された訂正データ（自己参照方式のデータ）ＤＯＵＴ２のデータユニットＤＵ２Ｂ，ＤＵ４Ｂを、命令キャッシュ６０２に書き込む。これによって、命令キャッシュ６０２内のデータが、エラーの無いデータに置換され、保存される。
【０３１７】
命令キャッシュコントローラ６０３は、命令キャッシュ６０２に対するデータの書き込みと並行して、エラー信号及び訂正データＤＯＵＴ２を、命令キュー６０５に転送する。
【０３１８】
データ内に誤りが有った場合、命令キュー６０５は、訂正データＤＯＵＴ２に基づいて、キュー６０５内の命令（又はデータ）を正しい値に書き換える。命令キュー６０５は、正しい値に書き換えられた命令のフラグＺＺに対して、有効フラグ（“Ｖ”）を付与する。
【０３１９】
尚、命令キュー６０５において、命令が発行されると、キュー６０５内から命令が消失する。そのため、命令キュー６０５内に、データに対応する命令が存在しない場合がある。
【０３２０】
この場合において、拡張リオーダーバッファ６０６内に、消失した命令に対応するエントリが、形成されている。命令に誤りが有った場合、正しい命令が、命令キュー６０５に書き込まれ、さらに拡張リオーダーバッファ６０６内の後続のエントリが削除（フラッシュ）される。このように、誤りを含む命令の後続のエントリの値が削除されるのは、誤りを含む命令以降の演算結果の正しさが、保障されないためである。
【０３２１】
エラー信号ＸＸに基づいて、拡張リオーダ―バッファ６０６は、フラグＦＬＧと共に受信した訂正データＤＯＵＴ２に対応するエントリ以後のすべてのエントリをフラッシュする。拡張リオーダ―バッファ６０６は、訂正データ（データユニット）ＤＯＵＴ２を、データ保持領域６６０内に書き込む。
【０３２２】
例えば、エントリがフラッシュされた後、命令発行ユニット６０４からの新しい命令、又は、が、命令キュー６０５に書き戻された拡張リオーダーバッファ６０６のエントリによって、計算処理が継続される。
【０３２３】
各エントリについて、訂正データを用いた計算処理が終了し、フラグＦＬＧが有効になった場合、拡張リオーダ―バッファ６０６は、ステートフラグを、コミット（Commit）に設定する。
【０３２４】
このように、プロセッサ９は、訂正データＤＯＵＴ２を用いた再計算処理Ｐ２を実行する。再計算処理の結果が、コミットされる。再計算処理の結果が、各キャッシュ６００，６０２及びレジスタ６０７に、書き込まれる。
【０３２５】
以上のように、実施形態の計算機システムにおける参照セル方式に基づくデータと自己参照方式に基づくデータとが一致しない場合において、参照セル方式のデータが自己参照方式のデータに置換される。そして、本実施形態の計算機システムにおいて、自己参照方式のデータを用いた計算処理Ｐ２によって、所望の計算結果が、得られる。
【０３２６】
以上のように、本実施形態の計算機システムの動作が完了する。
【０３２７】
（３）まとめ  
以上のように、本実施形態の計算機システム及び本実施形態のメモリデバイスは、２つの異なる読み出し方式を用いてデータを読み出し、読み出されたデータに基づいて計算処理を実行する。
【０３２８】
本実施形態の計算機システムにおいて、ＭＲＡＭは、比較的高速な参照セル方式の読み出し動作によって、データを読み出す。
【０３２９】
本実施形態の計算機システムにおいて、プロセッサが参照セル方式の読み出し動作に基づくデータを用いた計算処理（投機的計算処理）を実行するのに並行して、ＭＲＡＭは自己参照方式の読み出し動作を実行する。
【０３３０】
本実施形態において、参照セル方式の読み出し動作に基づくデータと自己参照方式の読み出し動作に基づくデータとが、比較される。
【０３３１】
本実施形態の計算機システムにおいて、２つのデータが一致しない場合において、プロセッサは、比較的信頼性の高い自己参照方式の読み出し動作に基づくデータを用いて、計算処理を再実行する。
【０３３２】
これによって、上述のように、本実施形態の計算機システムは、動作の高速化と動作の信頼性の向上を、図ることができる。
【０３３３】
本実施形態において、読み出しデータに関するエラー情報は、データの比較結果に基づいたフラグによって通知される。また、本実施形態において、プロセッサ内におけるＭＲＡＭからのデータ（及びデータに基づく計算結果）の適否は、フラグの設定によって、判定される。
【０３３４】
それゆえ、本実施形態の計算機システムは、システム及びプロセッサの構成の大幅な変更及び処理の複雑を、回避できる。
【０３３５】
これによって、本実施形態の計算機システム及びメモリデバイスは、動作の高速化及び計算処理の信頼性の向上を図ることができる。
【０３３６】
［Ｃ］  第２の実施形態  
図１８及び図１９を参照して、第２の実施形態の計算機システム及びメモリデバイスについて、説明する。
【０３３７】
（Ｃ１）構成例  
図１８は、本実施形態の計算機システム内のメモリデバイス（例えば、ＭＲＡＭ）における、読み出し回路の一例を示している。
【０３３８】
図１８に示されるように、本実施形態のＭＲＡＭにおける読み出し回路１２６において、センスアンプユニット２６１Ａは、４つのキャパシタＣ１Ａ，Ｃ２Ａ，Ｃ３Ａ，Ｃ４Ａを含む。
【０３３９】
キャパシタＣ１Ａ，Ｃ２Ａは、参照セル方式の読み出し動作のために、用いられる。  
キャパシタＣ１Ａの一端は、スイッチ素子ＳＷ１Ａとスイッチ素子ＳＷＸ１との接続ノードに接続されている。キャパシタＣ１Ａの他端は、接地されている。  
キャパシタＣ１Ａは、スイッチＳＷ１Ａを介して、マルチプレクサ２４１によって選択された１本のビット線ｂＢＬに接続される。キャパシタＣ１Ａは、スイッチ素子ＳＷＸ１を介して、センスアンプ回路５２０の一方の入力端子に接続される。
【０３４０】
キャパシタＣ２Ａの一端は、スイッチ素子ＳＷ２Ａとスイッチ素子ＳＷＸ２との接続ノードに接続されている。キャパシタＣ２Ａの他端は、接地されている。  
キャパシタＣ２Ａは、スイッチＳＷ２Ａを介して、参照セルＲＣに接続される。キャパシタＣ２Ａは、スイッチ素子ＳＷＸ２を介して、センスアンプ回路５２０の他方の入力端子に接続されている。
【０３４１】
尚、キャパシタＣ１Ａ，Ｃ２Ａは、センスアンプ回路５２０の入力端子に接続された容量素子でもよい。キャパシタＣ１Ａは、センスアンプ回路５２０の入力端子とメモリセアレイ（選択セル）とを接続する配線（及び素子）に含まれる容量成分（寄生容量）でもよい。キャパシタＣ２Ａは、センスアンプ回路５２０の入力端子と参照セルとを接続する配線（及び素子）に含まれる容量成分（寄生容量）でもよい。
【０３４２】
キャパシタＣ３Ａ，Ｃ４Ａは、自己参照方式の読み出し動作のために、用いられる。
【０３４３】
キャパシタＣ３Ａの一端は、スイッチ素子ＳＷ３Ａとスイッチ素子ＳＷＺ１との接続ノードに接続されている。キャパシタＣ１Ａの他端は、接地されている。  
キャパシタＣ３Ａは、スイッチＳＷ３Ａを介して、マルチプレクサ２４１によって選択された１本のビット線ｂＢＬに接続される。キャパシタＣ３Ａは、スイッチ素子ＳＷＺ１を介して、センスアンプ回路５２０の一方の入力端子に接続される。
【０３４４】
キャパシタＣ４Ａの一端は、スイッチ素子ＳＷ４Ａとスイッチ素子ＳＷＺ２との接続ノードに接続されている。キャパシタＣ４Ａの他端は、接地されている。  
キャパシタＣ４Ａは、スイッチＳＷ４Ａを介して、マルチプレクサ２４１によって選択された１本のビット線ｂＢＬに接続される。キャパシタＣ４Ａは、スイッチ素子ＳＷＺ２を介して、センスアンプ回路５２０の他方の入力端子に接続される。
【０３４５】
尚、キャパシタＣ３Ａ，Ｃ４Ａは、センスアンプ回路５２０の入力端子に接続された容量素子でもよい。キャパシタＣ３Ａ，Ｃ４Ａは、センスアンプ回路５２０の入力端子とメモリセアレイ（選択セル）１０とを接続する各配線（及び素子）に含まれる容量成分（寄生容量）でもよい。
【０３４６】
スイッチ素子ＳＷ１Ａは、選択セルＭＣとキャパシタＣ１Ａとの接続を制御する。  
スイッチ素子ＳＷ１Ａの一端は、マルチプレクサ２４１の端子に接続されている。スイッチ素子ＳＷ１Ａの他端は、キャパシタＣ１Ａ及びスイッチ素子ＳＷＸ１の一端に接続されている。
【０３４７】
スイッチ素子ＳＷ２Ａは、参照セルＲＣとキャパシタＣ２Ａとの接続を制御する。  
スイッチ素子ＳＷ２Ａの一端は、参照セルＲＣに接続されている。スイッチ素子ＳＷ２Ａの他端は、キャパシタＣ２及びスイッチ素子ＳＷＸ２の一端に接続されている。
【０３４８】
スイッチ素子ＳＷ３Ａは、選択セルＭＣとキャパシタＣ３Ａとの接続を制御する。  
スイッチ素子ＳＷ３Ａの一端は、マルチプレクサ２４１の端子に接続されている。スイッチ素子ＳＷ３Ａの他端は、キャパシタＣ３Ａ及びスイッチ素子ＳＷＺ１の一端に接続されている。
【０３４９】
スイッチ素子ＳＷ４Ａは、選択セルＭＣとキャパシタＣ４Ａとの接続を制御する。  
スイッチ素子ＳＷ４Ａの一端は、マルチプレクサ２４１の端子に接続されている。スイッチ素子ＳＷ４Ａの他端は、キャパシタＣ４Ａ及びスイッチ素子ＳＷＺ２の一端に接続されている。
【０３５０】
スイッチ素子ＳＷ１Ａ，ＳＷ２Ａ，ＳＷ３Ａ，ＳＷ４Ａのゲートに、互いに異なる制御信号Ｓ１，Ｓ２，Ｓ３，Ｓ４が、供給される。これによって、スイッチ素子ＳＷ１，ＳＷ２，ＳＷ３，ＳＷ４のオン／オフは、互いに独立に制御される。
【０３５１】
スイッチ素子ＳＷＸ１は、キャパシタＣ１Ａとセンスアンプ回路５２０との接続を制御する。スイッチ素子ＳＷＸ１の一端は、キャパシタＣ１Ａ及びスイッチ素子ＳＷ１Ａに接続されている。スイッチ素子ＳＷＸ１の他端は、センスアンプ回路５２０の一方の入力端子に接続されている。
【０３５２】
スイッチ素子ＳＷＸ２は、キャパシタＣ２Ａとセンスアンプ回路５２０との接続を制御する。スイッチ素子ＳＷＸ２の一端は、キャパシタＣ２Ａ及びスイッチ素子ＳＷ２Ａに接続されている。スイッチ素子ＳＷＸ２の他端は、センスアンプ回路５２０の他方の入力端子に接続されている。
【０３５３】
スイッチ素子ＳＷＺ１は、キャパシタＣ３Ａとセンスアンプ回路５２０との接続を制御する。スイッチ素子ＳＷＺ１の一端は、キャパシタＣ３Ａ及びスイッチ素子ＳＷ３Ａに接続されている。スイッチ素子ＳＷＺ１の他端は、センスアンプ回路５２０の一方の入力端子に接続されている。
【０３５４】
スイッチ素子ＳＷＺ２は、キャパシタＣ４Ａとセンスアンプ回路５２０との接続を制御する。スイッチ素子ＳＷＺ２の一端は、キャパシタＣ４Ａ及びスイッチ素子ＳＷ４Ａに接続されている。スイッチ素子ＳＷＺ２の他端は、センスアンプ回路５２０の他方の入力端子に接続されている。
【０３５５】
スイッチ素子ＳＷＸ１，ＳＷＸ２のゲートに、共通の制御信号ＳＣ１が、供給される。これによって、スイッチ素子ＳＷＸ１，ＳＷＸ２のオン／オフは、共通に制御される。スイッチ素子ＳＷＺ１，ＳＷＺ２のゲートに、共通の制御信号ＳＣ２が、供給される。これによって、スイッチ素子ＳＷＺ１，ＳＷＺ２のオン／オフは、共通に制御される。  
制御信号ＳＣ１Ａの信号レベルは、制御信号ＳＣ２Ａの信号レベルから独立に制御できる。
【０３５６】
尚、センスアンプユニット２６１Ａは、ビット線ＢＬに接続されてもよい。この場合、センスアンプユニット２６１Ａは、ビット線ＢＬの放電に起因する電荷を、保持する。
【０３５７】
図１８の読み出し回路は、以下の図１９に示される動作によって、比較的高速な動作を実現できる。
【０３５８】
（Ｃ２）動作例  
図１９は、本実施形態のＭＲＡＭの読み出し動作を説明するためのタイミングチャートである。
【０３５９】
図１９に示されるように、時刻ｔ０において、読み出し動作が開始される。ドライバ５００，５９０が、各セルＭＣ，ＲＣに対して、オン状態のスイッチ素子ＣＳＷ，４９９を介して、電圧又は電流を供給する。
【０３６０】
時刻ｔ１ｂにおいて、信号Ｓ１，Ｓ２，Ｓ３の信号レベルが、“Ｈ”レベルに設定される。
【０３６１】
オン状態のスイッチ素子ＳＷ１Ａ（及びマルチプレクサ２４１）を介して、選択セルＭＣの読み出し電流ＩＲＤに起因する電荷によって、キャパシタＣ１Ａは充電される。
【０３６２】
オン状態のスイッチ素子ＳＷ３Ａ（及びマルチプレクサ２４１）を介して、選択セルＭＣの読み出し電流ＩＲＤに起因する電荷によって、キャパシタＣ３Ａは充電される。  
また、オン状態のスイッチ素子ＳＷ２Ａを介して、参照セルからの電流ＩＲｅｆが、キャパシタＣ２Ａに供給される。電流ＩＲｅｆに起因する電荷によって、キャパシタＣ２Ａは、充電される。
【０３６３】
スイッチ素子Ｓ４Ａの信号レベルは、“Ｌ”レベルに設定されている。オフ状態のスイッチ素子Ｓ４Ａによって、キャパシタＣ４は、選択セルから電気的に分離される。
【０３６４】
本実施形態において、自己参照方式の１回目のデータの読み出しのためのキャパシタＣ３Ａの充電が、参照セル方式の読み出し動作のためのキャパシタＣ１Ａ，Ｃ２Ａの充電と同時に実行される。
【０３６５】
時刻ｔ２ｂにおいて、信号Ｓ１，Ｓ２，Ｓ３の信号レベルは、“Ｌ”レベルに設定される。これによって、キャパシタＣ１Ａ，Ｃ３Ａは、オフ状態のスイッチ素子ＳＷ１Ａ，ＳＷ３Ａによって、選択セルＭＣから電気的に分離される。キャパシタＣ２Ａは、オフ状態のスイッチ素子ＳＷ２Ａによって、参照セルＲＣから電気的に分離される。
【０３６６】
時刻ｔ１ｂから時刻ｔ２ｂまでの期間において、自己参照方式の読み出し動作の第１の読み出しのためのキャパシタの充電期間が、参照セル方式の読み出し動作のためのキャパシタの充電期間に、重複している。
【０３６７】
時刻ｔ３ｂにおいて、信号ＳＣ１の信号レベルが、“Ｈ”レベルに設定される。
【０３６８】
これによって、センスアンプ回路５２０の２つの入力端子に対して、キャパシタＣ１Ａ，Ｃ２Ａの充電電荷に対応する信号が、それぞれ供給される。
【０３６９】
この時、信号ＳＣ２は、“Ｌ”レベルに設定されている。それゆえ、充電状態のキャパシタＣ３Ａは、オフ状態のスイッチ素子ＳＷＺ１によって、センスアンプ回路５２０から電気的に分離されている。
【０３７０】
時刻ｔ５ｂにおいて、センスイネーブル信号ＳＥＮの信号レベルが、“Ｈ”レベルに設定される。これによって、センスアンプ回路５２０が、活性化される。
【０３７１】
尚、時刻ｔ４ｂにおいて、キャパシタＣ１Ａ，Ｃ２Ａとセンスアンプ回路５２０とを電気的に分離するために、信号ＳＣ１の信号レベルが、“Ｌ”レベルに設定されている。  
但し、時刻ｔ５ｂの後（例えば、時刻ｔ５ｂと時刻ｔ６ｂとの間のタイミング）において、信号ＳＣ１の信号レベルが、“Ｌ”レベルに設定されてもよい。
【０３７２】
センスアンプ回路５２０は、キャパシタＣ１Ａからの信号とキャパシタＣ２Ａからの信号とをセンスする。センスアンプ回路５２０は、差動増幅によって、センスされた２つの信号の大きさを比較し、比較結果を増幅する。
【０３７３】
時刻ｔ６ｂにおいて、センスイネーブル信号ＳＥＮの信号レベルが、“Ｌ”レベルに設定される。これによって、センスアンプ回路５２０は、非活性化される。比較結果は、センスアンプ回路５２０内にラッチされている。  
キャパシタＣ１Ａ，Ｃ２Ａの信号の比較結果は、参照セル方式の読み出し動作によるデータに対応する。このように、参照セル方式の読み出し動作が、実行される。
【０３７４】
時刻ｔ７ｂから時刻ｔ８ｂまでの期間において、センスアンプ回路５２０の信号処理の結果が、参照セル方式によって読み出されたデータＤＯＵＴ１として、出力される。
【０３７５】
本実施形態において、自己参照方式の読み出し動作における１回目のデータ読み出し（内部リード）は、参照セル方式の読み出し動作時に実行されている。
【０３７６】
キャパシタＣ３Ａ内に蓄積された信号電荷が、自己参照方式の読み出し動作における１回目のデータ読み出しの結果である。
【０３７７】
それゆえ、本実施形態において、参照セル方式のデータの出力の完了の後、選択セルに対する所定のデータ（例えば、“１”データ）の書き込みが行われる。
【０３７８】
時刻ｔ９ｂから時刻ｔ１０ｂの期間において、制御信号ＭＴＪ−ＷＲが“Ｈ”レベルに設定される。これによって、書き込み回路１２５が活性化される。基準データに対応する書き込み電流が、選択セルＭＣ内のＭＴＪ素子４００に供給される。
【０３７９】
制御信号ＭＴＪ−ＷＲが“Ｌレベルに設定された後、時刻ｔ１１ｂにおいて、信号Ｓ４の信号レベルが、“Ｈ”レベルに設定される。  
これによって、自己参照方式の読み出し動作の２回目のデータ読み出しが実行される。選択セルＭＣの読み出し電流ＩＲＤに起因する電荷によって、キャパシタＣ４Ａは、オン状態のスイッチ素子ＳＷ４Ａ（及びマルチプレクサ２４１）を介して、充電される。
【０３８０】
時刻ｔ１２ｂにおいて、信号Ｓ４の信号レベルが、“Ｌ”レベルに設定される。これによって、キャパシタＣ４Ａは、オフ状態のスイッチ素子ＳＷ４によって、選択セルから電気的に分離される。
【０３８１】
時刻ｔ１３ｂにおいて、制御信号ＳＣ２の信号レベルが、“Ｈ”レベルに設定される。これによって、キャパシタＣ３Ａ，Ｃ４Ａは、オン状態のスイッチ素子ＳＷＺ１，ＳＷＺ２を介して、センスアンプ回路５２０に電気的に接続される。キャパシタＣ３Ａ，Ｃ４Ａの電荷が、センスアンプ回路５２０の２つの入力端子に、それぞれ供給される。
【０３８２】
時刻ｔ１５ｂにおいて、センスイネーブル信号ＳＥＮの信号レベルが、“Ｈ”レベルに設定される。これによって、センスアンプ回路５２０Ｂが、活性化される。
【０３８３】
尚、時刻ｔ１４ｂにおいて、キャパシタＣ３Ａ，Ｃ４Ａとセンスアンプ回路５２０とを電気的に分離するために、信号ＳＣ２の信号レベルが、“Ｌ”レベルに設定されている。  
但し、時刻ｔ１５ｂの後（例えば、時刻ｔ１５ｂと時刻ｔ１６ｂとの間のタイミング）において、信号ＳＣ２の信号レベルが、“Ｌ”レベルに設定されてもよい。
【０３８４】
センスアンプ回路５２０は、キャパシタＣ３Ａからの信号とキャパシタＣ４Ａからの信号とセンスする。センスアンプ回路５２０は、センスした信号を比較し、比較結果を増幅する。
【０３８５】
時刻ｔ１６ｂにおいて、センスイネーブル信号ＳＥＮの信号レベルが、“Ｌ”レベルに設定される。これによって、センスアンプ回路５２０は、非活性化される。比較結果は、センスアンプ回路５２０内にラッチされている。  
キャパシタＣ１Ａ，Ｃ２Ａの信号の比較結果は、自己参照方式の読み出し動作によるデータに対応する。このように、自己参照方式の読み出し動作が、実行される。
【０３８６】
時刻ｔ１７ｂから時刻ｔ１８ｂまでの期間において、センスアンプ回路５２０の信号処理の結果が、自己参照方式によって読み出されたデータＤＯＵＴ２として、出力される。
【０３８７】
時刻１９ｂから時刻ｔ２０ｂまでの期間において、選択セルに対する読み出したデータＤＯＵＴ２の値を書き戻すために、制御信号ＭＴＪ−ＷＲが“Ｈ”レベルに設定される。活性化された書き込み回路１２５によって、データＤＯＵＴ２に対応する書き込み電流が、選択セルＭＣ内のＭＴＪ素子４００に供給される。
【０３８８】
このように、自己参照方式の読み出しによってデータが破壊された選択セルに対して、ライトバック処理が実行される。
【０３８９】
以上のように、本実施形態のＭＲＡＭの参照セル方式の読み出し動作と自己参照方式の読み出し動作とが連続したデータ読み出し動作が、完了する。
【０３９０】
（Ｃ３）まとめ  
上述の第１の実施形態のＭＲＡＭにおいて、参照セル方式の読み出しのデータが出力されてから、自己参照方式の読み出しにおける１回目の読み出し（キャパシタの充電）が、実行される。
【０３９１】
一方、本実施形態のように、図１８のセンスアンプユニットが用いられた場合、自己参照方式の読み出しのためのキャパシタＣ３Ａの充電を、参照セル方式の読み出しためのキャパシタＣ１Ａ，Ｃ２Ａの充電と同時に実行される。
【０３９２】
それゆえ、参照セル方式に基づくデータＤＯＵＴ１の出力が終わった直後に、ＭＴＪ素子に対する基準データの書き込みを、実行できる。
【０３９３】
したがって、本実施形態のＭＲＡＭは、読み出し動作を高速化できる。
【０３９４】
この結果として、本実施形態のＭＲＡＭを含む計算機システムは、計算処理のための期間を、短縮できる。
【０３９５】
以上のように、本実施形態の計算機システム及びメモリデバイスは、動作の高速化を図ることができる。
【０３９６】
［Ｄ］第３の実施形態  
図２０を参照して、第３の実施形態の計算機システム及びメモリデバイスについて、説明する。
【０３９７】
図４を用いて説明したように、ＭＲＡＭにおける破壊型自己参照方式の読み出し動作は、２回の読み出し（２回のキャパシタの充電）の間に、所定のデータ（基準データ）に対応する書き込み電流をＭＴＪ素子に供給するためのステップが実行される。
【０３９８】
また、自己参照形式の読み出し動作時において、２つの読み出し間の基準データの書き込みによって破壊されたデータを元に戻すために、２回目の読み出しの後に、読み出したデータを書き戻すステップ（ライトバック処理）が、実行される。
【０３９９】
それゆえ、破壊型自己参照方式の読み出し動作の実行期間は、参照セル方式の読み出し方式の読み出し動作の実行期間に比較して、長くなる。
【０４００】
本実施形態のＭＲＡＭにおいて、ＭＴＪ素子の抵抗値の電圧依存性を利用して読み出し動作を実行することによって、２つの読み出し間における書き込み電流の供給（データの破壊）無しに、自己参照方式によるメモリセルからデータを読み出すことができる。
【０４０１】
（Ｄ１）  原理  
図２０及び図２１を用いて、本実施形態のＭＲＡＭにおける非破壊型の自己参照方式の読み出し動作の原理について、説明する。  
図２０は、磁気抵抗効果素子（ＭＴＪ素子）の抵抗値の電圧依存性を示すグラフである。
【０４０２】
図５において、グラフの横軸は、ＭＴＪ素子に対する印加電圧に対応し、グラフの縦軸は、ＭＴＪ素子の抵抗値に対応する。図５において、平行状態（Ｐ状態）のＭＴＪ素子の特性ＰＬ１、及び、反平行状態（ＡＰ状態）のＭＴＪ素子の特性ＰＬ２が、それぞれ示されている。
【０４０３】
図２０に示されるように、ＭＴＪ素子の抵抗値と印加電圧との関係の傾向として、印加電圧が増加すると、ＭＴＪ素子の抵抗値は低下する。尚、ＭＴＪ素子に書き込み電圧（書き込み電流）又は絶縁破壊電圧が印加されなければ、印加電圧の増加によってＭＴＪ素子の抵抗値が低下しても、ＭＴＪ素子の磁化配列は維持される。  
Ｐ状態のＭＴＪ素子の抵抗値の電圧依存特性ＰＬ１は、ＡＰ状態のＭＴＪ素子の抵抗値の電圧依存特性ＰＬ２と異なる。
【０４０４】
特性ＰＬ１に示されるように、印加電圧が電圧値ＶＲ１から電圧値ＶＲ２に増大しても、Ｐ状態のＭＴＪ素子の抵抗値の変化量（低下量）Ｚ１は、小さい。  
これに対して、特性ＰＬ２に示されるように、電圧値ＶＲ１から電圧値ＶＲ２までの印加電圧の範囲において、ＡＰ状態のＭＴＪ素子の抵抗値の変化量Ｚ２は、Ｐ状態のＭＴＪ素子の抵抗値の変化量Ｚ１より大きい。
【０４０５】
例えば、ＭＴＪ素子に電圧ＶＲ２が印加された場合、ＡＰ状態のＭＴＪ素子の抵抗値は、Ｐ状態のＭＴＪ素子の抵抗値に近い値を有する。
【０４０６】
このように、ＭＴＪ素子の磁化配列状態に応じて、ある電圧がＭＴＪ素子に印加された場合におけるＭＴＪ素子の抵抗値、及び、印加電圧に対するＭＴＪ素子の抵抗値の変化量Ｚ１，Ｚ２が異なる。  
本実施形態のＭＲＡＭ１において、電圧依存性によるＭＴＪ素子の抵抗値の変化量Ｚ１，Ｚ２の違いを利用して、電圧の印加状態の異なる選択セルから得られる２つの値（出力）から、ＭＴＪ素子４００の抵抗状態に対応したデータが判別される。
【０４０７】
本実施形態のＭＲＡＭは、このようなＭＴＪ素子の抵抗値の電圧依存性を用いて、ＭＴＪ素子のデータを破壊すること無しに、自己参照方式の読み出し動作を実行する。
【０４０８】
図２１は、本実施形態のＭＲＡＭの読み出し動作を説明するための図である。
【０４０９】
図２１の（ａ）は、電圧ＶＲ１の印加時におけるＭＴＪ素子からの出力電流に起因するあるノード（配線）の充電電位と時間との関係を示す模式図である。図２１の（ａ）において、グラフの横軸は時間に対応し、グラフの縦軸は充電電位に対応する。  
図２１は、電圧ＶＲ２（ＶＲ２＞ＶＲ１）の印加時におけるＭＴＪ素子からの出力電流に起因するあるノード（配線）の充電電位と時間との関係を示す模式図である。図２１の（ｂ）において、グラフの横軸は時間に対応し、グラフの縦軸は充電電位に対応する。
【０４１０】
図２１の（ａ）及び（ｂ）のそれぞれにおいて、ＡＰ状態のＭＴＪ素子における時間と充電電位との関係を示す特性線Ｐ２ａ，Ｐ２ｂ、及び、Ｐ状態のＭＴＪ素子における時間と充電電位との関係を示す特性線Ｐ３ａ，Ｐ３ｂが、示されている。  
尚、図２１の（ａ）及び（ｂ）において、特性線Ｐ１ａ，Ｐ１ｂは、Ｐ状態のＭＴＪ素子の抵抗値とＡＰ状態のＭＴＪ素子の抵抗値との間の抵抗値を有するＭＴＪ素子における時間と充電電圧との関係を、示している。特性線Ｐ１ａ，Ｐ１ｂは、Ｐ状態のＭＴＪ素子による充電電位とＡＰ状態のＭＴＪ素子の充電電位との間の充電電位の変化に、対応する。
【０４１１】
図２１の（ａ）に示されるように、電圧ＶＲ１の印加の開始から時刻ｔａまでの期間（充電期間）Ｔ１において、ＭＴＪ素子の出力電流（メモリセルの読み出し電流）によって、あるノードが、充電される。  
これによって、時刻ｔａにおいて、あるノードの充電電位が、ＭＴＪ素子の抵抗状態に応じて、ある電位Ｖａｐ１，Ｖｐ１に達する。
【０４１２】
特性線Ｐ２ａに示されるように、ＡＰ状態のＭＴＪ素子に関して、あるノードは、時刻ｔａにおいて、電位Ｖａｐ１に充電される。  
特性線Ｐ３ａに示されるように、Ｐ状態のＭＴＪ素子に関して、あるノードは、時刻ｔａにおいて、電位Ｖｐ１に充電される。
【０４１３】
図２０を用いて説明したように、電圧ＶＲ１の印加時、Ｐ状態のＭＴＪ素子の抵抗値は、ＡＰ状態のＭＴＪ素子の抵抗値より大きい。このため、期間Ｔ１において、Ｐ状態のＭＴＪ素子から出力される電流量（電荷量）は、ＡＰ状態のＭＴＪ素子から出力される電流量より多い。  
そのため、時刻ｔａにおいて、Ｐ状態のＭＴＪ素子に接続されたノードの充電電位Ｖｐ１は、ＡＰ状態のＭＴＪ素子に接続されたノードの充電電位Ｖａｐ１より高い。
【０４１４】
特性線Ｐ１ａに示されるように、Ｐ状態のＭＴＪ素子の抵抗値とＡＰ状態のＭＴＪ素子の抵抗値との間の抵抗値を有するＭＴＪ素子において、時刻ｔａにおける電位は、電位Ｖｒｅｆである。電位Ｖｒｅｆは、充電電位Ｖｐａと充電電位Ｖａｐａとの間の値である。
【０４１５】
例えば、期間Ｔ１が、読み出し電圧ＶＲ１のパルス幅（読み出し電圧の印加期間）Ｗ１に対応する。
【０４１６】
図２１の（ｂ）に示されるように、電圧ＶＲ２（＞ＶＲ１）が印加されたＭＴＪ素子（メモリセル）の出力電流によって、あるノードが充電される。Ｐ状態のＭＴＪ素子における充電電位とＡＰ状態のＭＴＪ素子における充電電位との間の関係において、図２１の（ａ）の例と同様に、図２１の（ｂ）のある時刻において、Ｐ状態のＭＴＪ素子における充電電位は、ＡＰ状態のＭＴＪ素子における充電電位より高い。
【０４１７】
図２０を用いて説明したように、ＭＴＪ素子に印加される電圧ＶＲ２が増加するにしたがって、ＭＴＪ素子の抵抗値は低下するため、メモリセルから出力される電流は、増加する。それゆえ、電圧ＶＲ１より高い電圧ＶＲ２がＭＴＪ素子を含むメモリセルに印加された場合、電圧ＶＲ２の印加時におけるあるノードの充電速度は、電圧ＶＲ１の印加時におけるノードの充電速度より速い。
【０４１８】
電圧ＶＲ２の印加の開始から時刻ｔｂまでの期間Ｔ２において、図２１の（ｂ）の特性線Ｐ２ｂ，Ｐ３ｂに示されるように、電圧ＶＲ２の印加時のＭＴＪ素子におけるノードの充電電位の変化は、電圧ＶＲ１の印加時のＭＴＪ素子におけるノードの充電電位の変化より急峻である。
【０４１９】
ＭＴＪ素子に電圧ＶＲ２が印加されている場合、Ｐ状態のＭＴＪ素子に関するノードの充電電位とＡＰ状態のＭＴＪ素子に関するノードの充電電位との間の電圧値は、期間Ｔ１より短い期間Ｔ２で、電圧値Ｖｒｅｆに達する。  
電圧ＶＲ２の印加時における時刻ｔｂでの電圧値Ｖｒｅｆは、電圧ＶＲ１の印加時における時刻ｔａでの電圧値Ｖｒｅｆと同じ値である。
【０４２０】
時刻ｔｂにおいて、Ｐ状態のＭＴＪ素子におけるノードの充電電位は、電圧値Ｖｒｅｆより高い電圧値Ｖｐ２を有する。時刻ｔｂにおいて、ＡＰ状態のＭＴＪ素子におけるノードの充電電位は、電圧値Ｖｒｅｆより低い電圧値Ｖａｐ２を有する。
【０４２１】
但し、Ｐ状態のＭＴＪ素子に関して、時刻ｔｂにおける電圧値Ｖｐ２は、時刻ｔａにおける電圧値Ｖｐ１より低い。  
これとは反対に、ＡＰ状態のＭＴＪ素子に関して、時刻ｔｂにおける電圧値Ｖａｐ２は、時刻ｔａにおける電圧値Ｖａｐ１より高い。
【０４２２】
ＡＰ状態のＭＴＪ素子とＰ状態のＭＴＪ素子との間で、電圧ＶＲ１の印加時の時刻ｔａにおける充電電位と電圧ＶＲ２の印加時の時刻ｔｂにおける充電電位の大小関係が反対になるのは、図２０を用いて説明したように、ＭＴＪ素子の抵抗値の電圧依存性により、ＡＰ状態のＭＴＪ素子の抵抗値の低下量が、Ｐ状態のＭＴＪ素子の抵抗値の低下量よりも大きいためである。
【０４２３】
このように、本実施形態のＭＲＡＭにおいて、２つの異なる電圧ＶＲ１，ＶＲ２が用いられた場合において、あるノードが共通の電圧値Ｖｒｅｆに到達する時刻ｔａ，ｔｂでのこのノードの充電電位の大小関係は、Ｐ状態のＭＴＪ素子とＡＰ状態のＭＴＪ素子とで、反対になる。
【０４２４】
本実施形態のＭＲＡＭは、ＭＴＪ素子の抵抗値の電圧依存性に基づいて充電電位の比較が可能となるように設定された読み出し電圧ＶＲ１，ＶＲ２を用いて、読み出し電圧ＶＲ１の印加時におけるあるノードの充電電位と読み出し電圧ＶＲ２の印加時におけるあるノードの充電電位とをそれぞれ比較する。
【０４２５】
電圧ＶＲ１の印加の開始から時刻ｔａまでの期間Ｔ１が、読み出し電圧ＶＲ１のパルス幅Ｗ１に対応する。電圧ＶＲ２の印加の開始から時刻ｔｂまでの期間Ｔ２が、読み出し電圧ＶＲ２のパルス幅Ｗ２に対応する。尚、期間Ｔ２は、ＭＴＪ素子１００の出力による充電電位が飽和状態に達するまでの期間より短い。第１の読み出しの期間Ｔ１（第１の読み出し電圧ＶＲ１のパルス幅Ｗ１）が、第２の読み出しの期間Ｔ２（第２の読み出し電圧ＶＲ２のパルス幅Ｗ２）と同じになる場合もある。
【０４２６】
本実施形態のＭＲＡＭにおいて、ノードの充電電位がある共通の電位に到達する期間を考慮して、Ｐ状態のＭＴＪ素子に関して、電圧ＶＲ２の印加時におけるノードの充電電位が電圧ＶＲ１の印加時におけるノードの充電電位より低くなり、且つ、ＡＰ状態のＭＴＪ素子に関して、電圧ＶＲ２の印加時におけるノードの充電電位が電圧ＶＲ１の印加時におけるノードの充電電位より高くなるように、電圧ＶＲ１，ＶＲ２のパルス幅Ｗ１，Ｗ２が制御される。
【０４２７】
これによって、本実施形態のＭＲＡＭにおいて、選択セル内のデータの判別のために、電圧値の異なる読み出し電圧ＶＲ１，ＶＲ２の印加が選択セルに対して実行されたとしても、２つの読み出し電圧ＶＲ１，ＶＲ２の印加に基づいたＰ状態のＭＴＪ素子に関する２つの充電電位の比較、及び、２つの読み出し電圧ＶＲ１，ＶＲ２の印加に基づいたＡＰ状態のＭＴＪ素子に関する２つの充電電位の比較を、それぞれ実行できる。
【０４２８】
読み出し電圧ＶＲ１，ＶＲ２の電圧値及びパルス幅Ｗ１，Ｗ２は、ＭＲＡＭの実験結果、シミュレーション結果、及び、ＭＲＡＭのチップのテスト工程に基づいて、設定できる。これらの実験及びテスト工程の結果が、読み出し電圧（及び書き込み電圧）に関する設定情報として、ＭＲＡＭ１のチップ内に保持される。
【０４２９】
尚、本実施形態のＭＲＡＭの読み出し回路の構成は、図１８の読み出し回路を用いることができる。
【０４３０】
（Ｄ２）  動作例  
図２２を用いて、本実施形態のＭＲＡＭの動作例について、説明する。  
図２２は、本実施形態のＭＲＡＭの読み出し動作を説明するためのタイミングチャートである。
【０４３１】
図２２に示されるように、時刻ｔ１ｃから時刻ｔ２ｃまでの期間において、スイッチ素子ＳＷ１Ａ，ＳＷ２Ａ，ＳＷ３Ａがオン状態に設定され、キャパシタＣ１Ａ，Ｃ２Ａ，Ｃ３Ａが、それぞれ充電される。キャパシタＣ１Ａ，Ｃ２Ａ，Ｃ３Ａの充電時において、電圧ＶＲ１が、読み出しドライバ５００，５９０からビット線ＢＬに印加される。
【０４３２】
これによって、参照セル方式の読み出しのためのキャパシタの充電と共に、自己参照方式の読み出し動作の１回目の読み出しが、実行される。
【０４３３】
信号Ｓ１，Ｓ２，Ｓ３の信号レベルが“Ｌ”レベルに設定された後（時刻ｔ２ｃ）、時刻ｔ３ｃにおいて、信号ＳＣ１の信号レベルが、“Ｈ”レベルに設定される。これによって、キャパシタＣ１Ａ，Ｃ２Ａの信号が、センスアンプ回路５２０に供給される。
【０４３４】
続いて、信号Ｓ４の信号レベルが“Ｈ”レベルに設定され（例えば、時刻ｔ４ｃ）、自己参照方式の読み出し動作の２回目の読み出しにおいて、オン状態のスイッチ素子ＳＷ４Ａを介して、選択セルＭＣの読み出し電流ＩＲＤｂに起因する電荷によって、キャパシタＣ４Ａは充電される。
【０４３５】
本実施形態において、キャパシタＣ３Ａの充電とキャパシタＣ４Ａの充電との間に、基準データの書き込みための書き込み電流の供給は、実行されない。
【０４３６】
本実施形態の非破壊型の自己方式の参照読み出し動作において、キャパシタＣ４Ａの充電時において、電圧ＶＲ２が、読み出しドライバ５００からビット線ＢＬに印加される。電圧ＶＲ２は、電圧ＶＲ１より高い電圧である。例えば、電圧ＶＲ２のパルス幅は、電圧ＶＲ１のパルス幅より小さい。
【０４３７】
本実施形態において、自己参照方式の読み出し動作における２回目の読み出しは、参照セル方式の読み出し動作におけるセンスアンプ回路５２０に対するキャパシタＣ１Ａ，Ｃ２Ａの充電電荷の供給と並行して、実行される。
【０４３８】
時刻ｔ５ｃにおいて、信号ＳＣ１の信号レベルが、“Ｌ”レベルに設定される。これによって、キャパシタＣ１Ａ，Ｃ２Ａは、センスアンプ回路５２０から電気的に分離される。
【０４３９】
時刻ｔ６ｃにおいて、信号Ｓ４の信号レベルが、“Ｌ”レベルに設定される。オフ状態のスイッチ素子ＳＷ４Ａによって、キャパシタＣ４Ａは、選択セルＭＣから電気的に分離される。尚、電圧ＶＲ２のパルス幅は、スイッチ素子ＳＷ４Ａのオン／オフの期間（信号Ｓ４の“Ｈ”レベルの期間）によって制御されてもよい。
【０４４０】
時刻ｔ７ｃにおいて、センスイネーブル信号ＳＥＮの信号レベルが、“Ｈ”レベルに設定される。これによって、センスアンプ回路５２０が、活性化される。センスアンプ回路５２０は、キャパシタＣ１Ａからの信号とキャパシタＣ２Ａからの信号とを比較（差動増幅）する。
【０４４１】
時刻ｔ８ｃにおいて、制御信号ＳＥＮの信号レベルが、“Ｌ”レベルに設定される。これによって、センスアンプ回路５２０は、非活性化される。
【０４４２】
時刻ｔ９ｃから時刻ｔ１０ｃまでの期間において、センスアンプ回路５２０の信号処理の結果が、参照セル方式によって読み出されたデータＤＯＵＴ１として、出力される。
【０４４３】
時刻ｔ１１ｃにおいて、制御信号ＳＣ２の信号レベルが、“Ｈ”レベルに設定される。これによって、センスアンプ回路５２０の２つの入力端子に対して、キャパシタＣ３Ａ，Ｃ４Ａの充電電荷が、それぞれ供給される。
【０４４４】
尚、スイッチ素子ＳＷ４Ａの活性化のタイミングは、制御信号ＳＣ２が“Ｈ”レベルに設定される時刻より前のタイミングであれば、時刻ｔ４ｃから時刻ｔ６ｃのタイミングに限定されない。
【０４４５】
時刻ｔ１２ｃにおいて、制御信号ＳＣ２の信号レベルが、“Ｌ”レベルに設定される。これによって、キャパシタＣ４Ａは、オフ状態のスイッチ素子ＳＷ４によって、選択セルＭＣから電気的に分離される。
【０４４６】
時刻ｔ１３ｃにおいて、制御信号ＳＥＮの信号レベルが、“Ｈ”レベルに設定される。これによって、センスアンプ回路５２０Ｂが、活性化される。センスアンプ回路５２０は、供給されたキャパシタＣ３Ａ，Ｃ４Ａからの信号を、比較する。
【０４４７】
時刻ｔ１４ｃにおいて、センスイネーブル信号ＳＥＮの信号レベルが、“Ｌ”レベルに設定される。
【０４４８】
時刻ｔ１５ｃから時刻ｔ１６ｃまでの期間において、センスアンプ回路５２０の信号処理の結果が、自己参照方式によって読み出されたデータＤＯＵＴ２として、出力される。
【０４４９】
尚、メモリセル内のデータの信頼性の確保のために、データＤＯＵＴ２の出力後に、ライトバック処理が実行されてもよい。
【０４５０】
以上のように、本実施形態のＭＲＡＭは、参照セル方式の読み出し動作と非破壊型の自己参照方式の読み出し動作を、連続して実行する。
【０４５１】
（Ｄ３）  まとめ  
本実施形態のＭＲＡＭにおいて、自己参照方式の読み出し動作時において、２回の読み出し間における書き込み電流の供給及びデータの書き戻し無しに、自己参照方式の読み出し動作を実行できる。そのため、本実施形態のＭＲＡＭは、読み出し動作を高速化できる。
【０４５２】
この結果として、本実施形態のＭＲＡＭを含む計算機システムは、計算処理のための期間を、短縮できる。
【０４５３】
以上のように、本実施形態の計算機システム及びメモリデバイスは、動作の高速化を図ることができる。
【０４５４】
［Ｅ］第４の実施形態  
図２３乃至図２５を参照して、第４の実施形態の計算機システム及びメモリデバイスについて、説明する。  
（Ｅ１）構成例  
図２３を用いて、本実施形態の計算機システムの構成例について説明する。  
図２３は、本実施形態の計算機システム内のメモリデバイス（例えば、ＭＲＡＭ）における、読み出し回路の一例を示している。
【０４５５】
図２３に示されるように、本実施形態のＭＲＡＭの読み出し回路１２６において、センスアンプユニット２６１Ｂは、４つのキャパシタＣ１Ａ，Ｃ２Ａ，Ｃ３Ａ，Ｃ４Ａ、２つのセンスアンプ回路５２０Ａ、５２０Ｂ及び選択回路５５０を含む。
【０４５６】
キャパシタＣ１Ａ，Ｃ２Ａ及びセンスアンプ回路５２０Ａは、参照セル方式の読み出し動作に用いられる。
【０４５７】
キャパシタＣ１Ａは、スイッチ素子ＳＷＸ１を介して、センスアンプ回路５２０Ａの一方の入力端子に接続されている。キャパシタＣ２Ａは、スイッチ素子ＳＷＸ２を介して、センスアンプ回路５２０Ａの他方の入力端子に接続されている。
【０４５８】
センスアンプ回路５２０Ａに、制御信号ＳＥＮ１が、供給される。制御信号ＳＥＮ１によって、センスアンプ回路５２０Ａの活性化／非活性化が、制御される。
【０４５９】
尚、キャパシタＣ１Ａ，Ｃ２Ａは、センスアンプ回路５２０Ａの入力端子に接続された容量素子でもよい。キャパシタＣ１Ａは、センスアンプ回路５２０Ａの入力端子とメモリセアレイ（選択セル）１０とを接続する配線（及び素子）に含まれる容量成分（寄生容量）でもよい。キャパシタＣ２Ａは、センスアンプ回路５２０Ａの入力端子と参照セルＲＣとを接続する配線（及び素子）に含まれる容量成分（寄生容量）でもよい。
【０４６０】
キャパシタＣ３Ａ，Ｃ４Ａ及びセンスアンプ回路５２０Ｂは、自己参照方式の読み出し動作に用いられる。  
キャパシタＣ３Ａは、スイッチ素子ＳＷＺ１を介して、センスアンプ回路５２０Ｂの一方の入力端子に接続されている。キャパシタＣ４Ａは、スイッチ素子ＳＷＺ２を介して、センスアンプ回路５２０Ｂの他方の入力端子に接続されている。
【０４６１】
センスアンプ回路５２０Ｂに、制御信号ＳＥＮ２が、供給される。制御信号ＳＥＮ２によって、センスアンプ回路５２０Ｂの活性化／非活性化が、制御される。制御信号ＳＥＮ２の信号レベルは、制御信号ＳＥＮ１の信号レベルから独立に制御される。これによって、センスアンプ回路５２０Ｂを、センスアンプ回路５２０Ａから独立に駆動できる。
【０４６２】
尚、キャパシタＣ３Ａ，Ｃ４Ａは、センスアンプ回路５２０Ｂの入力端子に接続された容量素子でもよい。キャパシタＣ３Ａ，Ｃ４Ａは、センスアンプ回路５２０Ｂの入力端子とメモリセアレイ（選択セル）１０とを接続する各配線（及び素子）に含まれる容量成分（寄生容量）でもよい。
【０４６３】
選択回路５５０の一方の入力端子は、センスアンプ回路５２０Ａの出力端子に接続されている。選択回路５５０の他方の入力端子は、センスアンプ回路５２０Ｂの出力端子に接続されている。
【０４６４】
選択回路５５０に、選択信号（制御信号）ＳＥＬが、供給される。  
選択回路５５０は、選択信号ＳＥＬに基づいて、センスアンプ回路５２０Ａの出力信号及びセンスアンプ回路５２０Ｂの出力信号のうち、いずれか一方を選択する。  
選択回路５５０は、選択した信号を、読み出しデータＤＯＵＴとして、出力する。
【０４６５】
尚、センスアンプユニット２６１Ｂは、ビット線ＢＬに接続されてもよい。この場合、センスアンプユニット２６１Ｂは、ビット線ＢＬの放電に起因する電荷を、保持する。
【０４６６】
（Ｅ２）動作例  
図２４及び図２５を用いて、本実施形態の計算機システムの動作例について説明する。  
＜動作例１＞  
図２４を用いて、本実施形態のＭＲＡＭの動作例１について、説明する。  
図２４は、本実施形態のメモリデバイスにおける、図２３に示される読み出し回路の動作例を説明するためのタイミングチャートである。図２４のタイミングチャートは、図２３の読み出し回路が、破壊型の自己参照形式の読み出し動作を実行する例を示している。
【０４６７】
時刻ｔ１ｄにおいて、信号Ｓ１，Ｓ２，Ｓ３の信号レベルが、“Ｈ”レベルに設定される。
【０４６８】
オン状態のスイッチ素子ＳＷ１Ａ，ＳＷ３Ａを介して、キャパシタＣ１Ａ，Ｃ３Ａは選択セルの電流によって充電される。オン状態のスイッチ素子ＳＷ２Ａを介して、キャパシタＣ２Ａは、参照セルＲＣの電流によって、充電される。
【０４６９】
時刻ｔ２ｄにおいて、信号Ｓ１，Ｓ２，Ｓ３の信号レベルは、“Ｌ”レベルに設定される。これによって、キャパシタＣ１Ａ，Ｃ３Ａは、オフ状態のスイッチ素子ＳＷ１Ａ，ＳＷ３Ａによって、選択セルＭＣから電気的に分離される。キャパシタＣ２Ａは、オフ状態のスイッチ素子ＳＷ２Ａによって、参照セルＲＣから電気的に分離される。
【０４７０】
時刻ｔ３ｄにおいて、信号ＳＣ１の信号レベルが、“Ｈ”レベルに設定される。これによって、センスアンプ回路５２０Ａの２つの入力端子に対して、キャパシタＣ１Ａ，Ｃ２Ａの充電電荷が、それぞれ供給される。
【０４７１】
例えば、時刻ｔ４ｄにおいて、信号ＳＣ１の信号レベルが、“Ｌ”レベルに設定される。これによって、キャパシタＣ１Ａ，Ｃ２Ａは、オフ状態のスイッチ素子ＳＷＸ１，ＳＷＸ２によって、センスアンプ回路５２０Ａの入力端子から電気的に分離される。
【０４７２】
時刻ｔ５ｄにおいて、センスイネーブル信号ＳＥＮ１の信号レベルが、“Ｈ”レベルに設定される。これによって、センスアンプ回路５２０Ａが、活性化される。  
尚、時刻ｔ５ｄの後（例えば、時刻ｔ５ｄと時刻ｔ６ｄとの間のタイミング）において、信号ＳＣ１の信号レベルが、“Ｌ”レベルに設定されてもよい。
【０４７３】
センスアンプ回路５２０Ａは、差動増幅によって、キャパシタＣ１Ａからの信号とキャパシタＣ２Ａからの信号とを比較し、比較結果を増幅する。
【０４７４】
この際、選択信号ＳＥＬの信号レベルは、センスアンプ回路５２０Ａの出力信号が、選択回路５５０から出力されるように、制御されている。例えば、選択信号ＳＥＬの信号レベルは、“Ｌ”レベルに設定されている。
【０４７５】
時刻ｔ６ｄにおいて、制御信号ＳＥＮ１の信号レベルが、“Ｌ”レベルに設定される。これによって、センスアンプ回路５２０Ａは、非活性化される。比較結果は、センスアンプ回路５２０Ａ（又は、選択回路５５０）内にラッチされている。
【０４７６】
時刻ｔ７ｄから時刻ｔ８ｄまでの期間において、“Ｌ”レベルの選択信号ＳＥＬによって、センスアンプ回路５２０Ａの信号処理の結果が、参照セル方式によって読み出されたデータＤＯＵＴ１として、選択回路５５０の出力端子ＤＯＵＴから、出力される。
【０４７７】
時刻ｔ９ｄから時刻ｔ１０ｄまでの期間において、制御信号ＭＴＪ−ＷＲの信号レベルが、“Ｈ”レベルに設定される。活性化された書き込み回路１２５によって、選択セルＭＣ内のＭＴＪ素子４００に、基準データ書き込みのための書き込み電流が、供給される。
【０４７８】
時刻ｔｘにおいて、選択信号ＳＥＬの信号レベルが、“Ｈ”レベルに設定される。これによって、選択回路５５０は、センスアンプ回路５２０Ｂの出力信号を選択するように、設定される。
【０４７９】
時刻ｔ１１ｄにおいて、信号Ｓ４の信号レベルが、“Ｈ”レベルに設定される。  
自己参照方式の読み出し動作の２回目の読み出しにおいて、キャパシタＣ４Ａは、選択セルＭＣの読み出し電流ＩＲＤｂに起因する電荷によって、オン状態のスイッチ素子ＳＷ４Ａを介して充電される。
【０４８０】
時刻ｔ１２ｄにおいて、信号Ｓ４の信号レベルが、“Ｌ”レベルに設定される。これによって、キャパシタＣ４Ａは、オフ状態のスイッチ素子ＳＷ４Ａによって、選択セルＭＣから電気的に分離される。
【０４８１】
時刻ｔ１３ｄにおいて、制御信号ＳＣ２の信号レベルが、“Ｈ”レベルに設定される。これによって、センスアンプ回路５２０Ｂの２つの入力端子に対して、キャパシタＣ３Ａ，Ｃ４Ａの電荷が、それぞれ供給される。
【０４８２】
例えば、時刻ｔ１４ｄにおいて、制御信号ＳＣ２の信号レベルが“Ｌ”レベルに設定される。これによって、キャパシタＣ３Ａ，Ｃ４Ａは、オフ状態のスイッチ素子ＳＷＺ１，ＳＷＺ２によって、センスアンプ回路５２０Ｂの入力端子から電気的に分離される。
【０４８３】
時刻ｔ１５ｄにおいて、センスイネーブル信号ＳＥＮ２の信号レベルが、“Ｈ”レベルに設定される。これによって、センスアンプ回路５２０Ｂが、活性化される。  
尚、時刻ｔ１５ｄの後に、制御信号ＳＣ２の信号レベルが“Ｌ”レベルに設定され手もよい。
【０４８４】
センスアンプ回路５２０Ｂは、キャパシタＣ３Ａからの信号とキャパシタＣ４Ａからの信号とを比較し、比較結果を示す信号を増幅する。
【０４８５】
時刻ｔ１６ｄにおいて、センスイネーブル信号ＳＥＮ２の信号レベルが、“Ｌ”レベルに設定される。これによって、センスアンプ回路５２０Ｂが、非活性化される。
【０４８６】
時刻ｔ１７ｄから時刻ｔ１８ｄまでの期間において、“Ｈ”レベルの選択信号ＳＥＬによって、センスアンプ回路５２０Ａの信号処理の結果が、自己参照方式によって読み出されたデータＤＯＵＴ２として、選択回路５５０の出力端子ＤＯＵＴから、出力される。
【０４８７】
時刻１９ｄから時刻ｔ２０ｄまでの期間において、“Ｈ”レベルの制御信号ＭＴＪ−ＷＲによって、書き込み回路１２５が活性化される。これによって、ライトバック処理において、データＤＯＵＴ２が、選択セルに書き込まれる。
【０４８８】
例えば、時刻ｔ１９ｄと時刻ｔ２０ｄの間の時刻ｔｚにおいて、選択信号ＳＥＬの信号レベルは、“Ｌ”レベルに設定される。
【０４８９】
以上のように、本実施形態のＭＲＡＭにおいて、図２３の読み出し回路によって、参照方式の読み出し動作に基づくデータの出力と、破壊型自己参照方式の読み出し動作に基づくデータの出力とが、連続して実行される。
【０４９０】
＜動作例２＞  
図２５を用いて、本実施形態のメモリデバイスの動作例２について、説明する。
【０４９１】
図２５は、本実施形態のメモリデバイスにおける、図２３に示される読み出し回路の動作例を説明するためのタイミングチャートである。
【０４９２】
図２５のタイミングチャートは、図２３の読み出し回路が、非破壊型の自己参照形式の読み出し動作を実行する例を示している。
【０４９３】
図２５に示されるように、時刻ｔ１ｅにおいて、信号Ｓ１，Ｓ２，Ｓ３の信号レベルが、“Ｈ”レベルに設定される。
【０４９４】
キャパシタＣ１Ａ，Ｃ３Ａは、オン状態のスイッチ素子ＳＷ１Ａ，ＳＷ３Ａを介して、選択セルＭＣの読み出し電流ＩＲＤａに起因する電荷によって、それぞれ充電される。
【０４９５】
キャパシタＣ２Ａは、オン状態のスイッチ素子ＳＷ２Ａを介して、参照セルＲＣからの電流ＩＲｅｆに起因する電荷によって、充電される。読み出し電流ＩＲＤｂ及び参照電流ＩＲｅｆは、選択セルＭＣ及び参照セルＭＣに対する電圧ＶＲ１の印加によって、生じる。
【０４９６】
時刻ｔ２ｅにおいて、信号Ｓ１，Ｓ２，Ｓ３の信号レベルは、“Ｌ”レベルに設定される。これによって、キャパシタＣ１Ａ，Ｃ３Ａは、オフ状態のスイッチ素子ＳＷ１Ａ，ＳＷ３Ａによって、選択セルＭＣから電気的に分離される。キャパシタＣ２Ａは、オフ状態のスイッチ素子ＳＷ２Ａによって、参照セルＲＣから電気的に分離される。
【０４９７】
時刻ｔ３ｅにおいて、信号ＳＣ１の信号レベルが、“Ｈ”レベルに設定される。
【０４９８】
これによって、センスアンプ回路５２０Ａの２つの入力端子に対して、キャパシタＣ１Ａ，Ｃ２Ａの電荷が、それぞれ供給される。
【０４９９】
時刻ｔ４ｅにおいて、信号Ｓ４の信号レベルが、“Ｈ”レベルに設定される。  
自己参照方式の読み出し動作の２回目の読み出しにおいて、キャパシタＣ４Ａは、オン状態のスイッチ素子ＳＷ４Ａを介して、選択セルＭＣの読み出し電流ＩＲＤｂに起因する電荷によって、充電される。例えば、読み出し電流ＩＲＤｂは、選択セルＭＣに対する電圧ＶＲ２の印加によって、生じる。
【０５００】
このように、選択セルに対する基準データの書き込み無しに、キャパシタＣ４Ａの充電が、実行される。また、キャパシタＣ４Ａは、センスアンプ回路５２０Ａに対するキャパシタＣ１Ａ，Ｃ２Ａの信号の供給されている期間において、充電される。
【０５０１】
時刻ｔ５ｅにおいて、信号ＳＣ１の信号レベルが、“Ｌ”レベルに設定される。これによって、キャパシタＣ１Ａ，Ｃ２Ａは、オフ状態のスイッチ素子ＳＷＸ１，ＳＷＸ２によって、センスアンプ回路５２０Ａの入力端子から電気的に分離される。
【０５０２】
時刻ｔ６ｅにおいて、信号Ｓ４の信号レベルが、“Ｌ”レベルに設定される。これによって、キャパシタＣ４Ａは、オフ状態のスイッチ素子ＳＷ４Ａによって、選択セルから電気的に分離される。
【０５０３】
時刻ｔ７ｅにおいて、センスイネーブル信号ＳＥＮ１の信号レベルが、“Ｈ”レベルに設定される。これによって、センスアンプ回路５２０Ａが、活性化される。  
尚、信号ＳＣ１の信号レベルは、時刻ｔ７ｅの後（例えば、時刻ｔ７ｅと時刻ｔ８ｅとの間のタイミング）で、“Ｌ”レベルに設定される。
【０５０４】
センスアンプ回路５２０Ａは、差動増幅によって、キャパシタＣ１Ａからの信号とキャパシタＣ２Ａからの信号とを比較し、比較結果を示す信号を増幅する。
【０５０５】
この際、選択信号ＳＥＬの信号レベルは、センスアンプ回路５２０Ａの出力信号が、選択回路５５０から出力されるように、制御される。例えば、選択信号ＳＥＬの信号レベルは、“Ｌ”レベルに設定されている。
【０５０６】
時刻ｔ８ｅにおいて、制御信号ＳＥＮ１の信号レベルが、“Ｌ”レベルに設定される。これによって、センスアンプ回路５２０Ａは、非活性化される。
【０５０７】
時刻ｔ９ｅから時刻ｔ１０ｅまでの期間において、“Ｌ”レベルの選択信号ＳＥＬによって、センスアンプ回路５２０Ａの信号処理の結果が、参照セル方式によって読み出されたデータＤＯＵＴ１として、選択回路５５０の出力端子ＤＯＵＴから、出力される。
【０５０８】
時刻ｔ１１ｅにおいて、制御信号ＳＣ２の信号レベルが、“Ｈ”レベルに設定される。これによって、センスアンプ回路５２０Ｂの２つの入力端子に対して、キャパシタＣ３Ａ，Ｃ４Ａの電荷が、それぞれ供給される。
【０５０９】
尚、スイッチ素子ＳＷ４Ａの活性化のタイミングは、制御信号ＳＣ２が“Ｈ”レベルに設定される時刻より前のタイミングであれば、時刻ｔ４ｅから時刻ｔ６ｅのタイミングに限定されない。
【０５１０】
例えば、時刻ｔ１１ｅと時刻ｔ１２ｅとの間の時刻ｔｘにおいて、例えば、選択信号ＳＥＬの信号レベルは、“Ｈ”レベルに設定される。これによって、センスアンプ回路５２０Ｂの出力信号が、選択回路５５０から出力されるように、制御される。
【０５１１】
時刻ｔ１２ｅにおいて、制御信号ＳＣ２の信号レベルが“Ｌ”レベルに設定される。これによって、キャパシタＣ３Ａ，Ｃ４Ａは、オフ状態のスイッチ素子ＳＷＺ１，ＳＷＺ２によって、センスアンプ回路５２０Ｂの入力端子から電気的に分離される。
【０５１２】
時刻ｔ１３ｅにおいて、センスイネーブル信号ＳＥＮ２の信号レベルが、“Ｈ”レベルに設定される。これによって、センスアンプ回路５２０Ｂが、活性化される。  
尚、信号ＳＣ１の信号レベルは、時刻ｔ１３ｅの後（例えば、時刻ｔ１３ｅと時刻ｔ１４ｅとの間のタイミング）で、“Ｌ”レベルに設定される。
【０５１３】
センスアンプ回路５２０Ｂは、差動増幅によって、キャパシタＣ３Ａからの信号とキャパシタＣ４Ａからの信号とを比較し、比較結果を示す信号を増幅する。
【０５１４】
この際、選択信号ＳＥＬの信号レベルが、センスアンプ回路５２０Ｂの出力信号が選択回路５５０から出力されるように、設定される。例えば、選択信号ＳＥＬの信号レベルは、時刻ｔｘにおいて、“Ｈ”レベルに設定される。
【０５１５】
時刻ｔ１４ｅにおいて、制御信号ＳＥＮ２の信号レベルは、“Ｌ”レベルに設定される。これによって、センスアンプ回路５２０Ｂは、非活性化される。
【０５１６】
時刻ｔ１５ｅから時刻ｔ１６ｅまでの期間において、“Ｈ”レベルの選択信号ＳＥＬによって、センスアンプ回路５２０Ｂの信号処理の結果が、自己参照方式によって読み出されたデータＤＯＵＴ１として、選択回路５５０の出力端子ＤＯＵＴから、出力される。
【０５１７】
以上のように、本実施形態のＭＲＡＭにおいて、図２３の読み出し回路によって、参照セル方式のデータの出力と非破壊型自己参照方式のデータの出力とが、連続して実行される。
【０５１８】
（Ｅ３）まとめ  
図２３乃至図２５に示されるように、本実施形態のＭＲＡＭにおいて、図２３の読み出し回路は、参照セル方式の読み出し動作と自己参照方式の読み出し動作とを、連続して実行できる。
【０５１９】
本実施形態のＭＲＡＭの読み出し回路において、参照セル方式の読み出し動作のためのセンスアンプ回路５２０Ａと、自己参照方式の読み出し動作のためのセンスアンプ回路５２０Ｂとが設けられている。２つのセンスアンプ回路５２０Ａ，５２０Ｂは、互いに独立に、対応するキャパシタＣ１Ａ，Ｃ２Ａ，Ｃ３Ａ，Ｃ４Ａの信号処理を実行する。
【０５２０】
本実施形態のＭＲＡＭの読み出し回路において、選択回路５５０によって、２つのデータのうちいずれか一方が出力されるように、制御される。
【０５２１】
この構成によって、本実施形態のＭＲＡＭは、１つのセンスアンプ回路が、参照セル方式における信号の比較及び自己参照方式における信号の比較の両方を実行する場合に比較して、参照セル方式のデータ及び自己参照セル方式のデータをＭＲＡＭからプロセッサへ転送するための期間を、短縮できる。
【０５２２】
したがって、本実施形態の計算機システム及びメモリデバイスは、動作を高速化できる。
【０５２３】
［Ｆ］  第５の実施形態  
図２６及び図２７を参照して、第５の実施形態の計算機システム及びメモリデバイスについて、説明する。
【０５２４】
（Ｆ１）  構成例  
図２６及び図２７を用いて、本実施形態の計算機システム及びメモリデバイスの構成例について、説明する。
【０５２５】
図２６は、本実施形態の計算機システムの構成例を説明するためのブロック図である。
図２６の計算機システムにおいて、ＭＲＡＭ１は、誤り検出・訂正回路（以下、ＥＣＣ回路とも表記する）２５０を、含む。
【０５２６】
ＥＣＣ回路２５０は、例えば、Ｉ／Ｆ回路２０の出力制御回路２００内に設けられている。
【０５２７】
ＥＣＣ回路２５０は、参照セル方式によって読み出されたデータ及び自己参照方式によって読み出されたデータに対して、データ内の誤りの検出処理及び検出された誤りの訂正処理を、実行する。
【０５２８】
メモリ回路殻のデータは、ＥＣＣ回路２５０を介して、各読み出しバッファ回路２１０，２２０に格納される。
【０５２９】
本実施形態のようなＥＣＣ回路２５０を含むＭＲＡＭ１は、メモリ回路１０から読み出されたデータのリードエラーレートが高い場合に、有効である。
【０５３０】
図２７は、本実施形態のＭＲＡＭにおける出力制御回路の内部構成を示すブロック図である。
【０５３１】
図２７に示されるように、ＥＣＣ回路２５０は、メモリ回路１０からの読み出しデータを受ける。
【０５３２】
ＥＣＣ回路２５０は、読み出しデータに対して、誤りの検出処理を実行する。
【０５３３】
データ内の誤りが検出された場合、ＥＣＣ回路２５０は、検出された誤りに対して訂正処理を実行する。これによって、データ内の誤りが、訂正される。
【０５３４】
誤りの検出及び訂正処理されたデータが、参照セル方式に基づくデータである場合、ＥＣＣ回路２５０は、訂正されたデータを読み出しバッファ回路２１０に送る。  
誤りの検出及び訂正処理されたデータが、自己参照方式に基づくデータである場合、ＥＣＣ回路２５０は、訂正されたデータを読み出しバッファ回路２２０に送る。
【０５３５】
尚、データ内の誤りが検出されない場合、ＥＣＣ回路２５０は、訂正処理無しに、データを、対応する読み出しバッファ回路２１０，２２０に供給する。
【０５３６】
（Ｆ２）  動作例  
本実施形態のＭＲＡＭ及び計算機システムの動作例について、説明する。
【０５３７】
本実施形態のＭＲＡＭの動作例において、上述の各実施形態における動作例と同様に、参照セル方式の読み出し動作及び自己参照方式の読み出し動作が連続して実行される。
【０５３８】
参照セル方式に基づくデータＤＯＵＴ１は、出力制御回路２００内のＥＣＣ回路２５０に供給される。ＥＣＣ回路２５０は、データＤＯＵＴ１に対してＥＣＣ処理を行う。
【０５３９】
ＥＣＣ処理されたデータＤＯＵＴ１は、読み出しバッファ回路２１０内に保持される。読み出しバッファ回路２１０内のデータＤＯＵＴ１は、先行して、プロセッサ９に転送される。
【０５４０】
プロセッサ９は、参照セル方式に基づくデータＤＯＵＴ１を用いて、投機的計算処理Ｐ１を実行する。
【０５４１】
メモリ回路１０は、参照セル方式の読み出し動作の後において、自己参照方式の読み出し動作に基づくデータＤＯＵＴ２が、ＥＣＣ回路２５０に供給される。
【０５４２】
ＥＣＣ回路２５０は、データＤＯＵＴ２に対してＥＣＣ処理を行う。  
ＥＣＣ処理されたデータＤＯＵＴ２は、読み出しバッファ回路２２０内に保持される。
【０５４３】
２つのデータＤＯＵＴ１，ＤＯＵＴ２が、読み出しバッファ回路２１０，２２０内に揃うと、比較回路２３１は、ＥＣＣ処理された２つのデータＤＯＵＴ１，ＤＯＵＴ２を比較する。
【０５４４】
上述の各実施形態と同様に、２つのデータＤＯＵＴ１，ＤＯＵＴ２が一致していた場合、ＭＲＡＭ１は、有効信号を含むフラグを、プロセッサ９に送信する。  
有効信号に基づいて、プロセッサ９は、投機的計算処理の結果を、コミットする。
【０５４５】
２つのデータＤＯＵＴ１，ＤＯＵＴ２が一致していない場合、ＭＲＡＭ１は、エラー信号を含むフラグと自己参照方式のデータＤＯＵＴ２（エラー位置に対応するデータユニットＤＵ）を、プロセッサ９に送信する。  
エラー信号に基づいて、プロセッサ９は、データＤＯＵＴ２を用いた再計算処理を実行する。プロセッサ９は、再計算処理の結果を、コミットする。
【０５４６】
以上のように、本実施形態の計算機システムによる計算処理が、完了する。
【０５４７】
（Ｆ３）まとめ  
以上のように、本実施形態の計算機システムにおいて、ＭＲＡＭは、誤り検出・訂正回路を含む。
【０５４８】
誤り検出・訂正回路がＭＲＡＭ内に設けられた場合においても、上述の各実施形態と実質的に同じ動作で、ＭＲＡＭの読み出し動作及びプロセッサの計算処理が、実行される。
【０５４９】
本実施形態のように、ＭＲＡＭが誤り検出訂正回路を含むことによって、読み出されたデータの信頼性は、さらに向上する。  
この結果として、本実施形態において、プロセッサにおける計算処理の信頼性が、向上する。
【０５５０】
したがって、本実施形態の計算機システム及びメモリデバイスは、高い信頼性を得ることができる。
【０５５１】
［Ｇ］  第６の実施形態  
図２８乃至図３１を参照して、第６の実施形態の計算機システム及びメモリデバイスについて、説明する。
【０５５２】
（Ｇ１）構成例  
図２８及び図２９を用いて、本実施形態の計算機システム及びメモリデバイスの構成例について説明する。
【０５５３】
参照セル方式に基づく読み出しデータ及び自己参照方式に基づく読み出しデータに対する各種の処理は、プロセッサ９によって実行されてもよい。
【０５５４】
図２８は、本実施形態の計算機システムの構成例を示すブロック図である。
【０５５５】
図２８に示されるように、プロセッサ９は、メモリコントローラ９０内に、メモリ処理回路９１０を含む。
【０５５６】
メモリ処理回路９１０が、ＭＲＡＭ１から送られた参照セル方式のデータ及び自己参照方式のデータの比較、及び、フラグの生成などを行う。
【０５５７】
データ処理回路９１０がプロセッサ９側に設けられる場合において、ＭＲＡＭ１のインターフェイス回路２０内において、読み出しバッファ回路２１０，２２０は、制御回路を介すること無しに、Ｉ／Ｏ回路２３４に接続されている。
【０５５８】
図２９は、本実施形態の計算機システムにおける、データ処理回路９１０の内部構成を説明するためのブロック図である。
【０５５９】
図２９に示されるように、プロセッサ９側のメモリコントローラ９０内において、データ処理回路９１０は、２つの読み出しバッファ回路９１１，９１２、比較回路９１３及び制御回路９１４を、少なくとも含む。
【０５６０】
読み出しバッファ回路９１１は、ＭＲＡＭ１からの参照セル方式に基づくデータを、一時的に保持する。  
読み出しバッファ回路９１２は、ＭＲＡＭ１からの自己参照方式に基づくデータを、一時的に保持する。
【０５６１】
比較回路９１３は、読み出しバッファ回路９１１内のデータＤＯＵＴ１と読み出しバッファ回路９１１内のデータＤＯＵＴ２とを比較する。
【０５６２】
比較回路９１３は、２つのデータＤＯＵＴ１，ＤＯＵＴ２が一致した場合、有効信号を含むフラグを出力する。比較回路９１３は、２つのデータＤＯＵＴ１，ＤＯＵＴ２が一致しない場合、エラー信号を含むフラグを出力する。
【０５６３】
制御回路９１４は、データ処理回路９１０内の各回路の制御を行う。
【０５６４】
（Ｇ２）動作例  
図３０及び図３１を用いて、本実施形態の計算機システムの動作例について、説明する。
【０５６５】
図３０及び図３１は、本実施形態の計算機システムの動作例を説明するためのタイミングチャートである。  
図３０は、本実施形態の計算機システムにおける参照セル方式に基づくデータと自己参照方式に基づくデータとが一致する場合のタイミングチャートである。
【０５６６】
図３０に示されるように、ＭＲＡＭ１は、参照セル方式の読み出し動作Ｘ１を実行する。ＭＲＡＭ１において、Ｉ／Ｏ回路２３４は、参照セル方式に基づくデータＤＯＵＴ１を、バス８を介して、メモリコントローラ９０に転送する。
【０５６７】
ＭＲＡＭ１は、参照セル方式の読み出し動作に連続して、自己参照方式の読み出し動作を実行する。ＭＲＡＭ１において、Ｉ／Ｏ回路２３４は、データのＤＯＵＴ１の転送の後、自己参照方式に基づくデータＤＯＵＴ２を、バス８を介して、メモリコントローラ９０に転送する。
【０５６８】
データＤＯＵＴ１，ＤＯＵＴ２は、メモリコントローラ９０のデータ処理回路９０１に供給される。
【０５６９】
参照セル方式のデータＤＯＵＴ１は、バッファ回路９１１内に格納される。  
データ処理回路９１０は、データＤＯＵＴ１を、コア回路９９に送る。
【０５７０】
コア回路９９は、データＤＯＵＴ１に対して、投機的計算処理Ｐ１を実行する。投機的計算処理Ｐ１は、自己参照方式の読み出し動作Ｘ２と並行して実行されている。
【０５７１】
例えば、投機的計算処理Ｐ１の実行中に、自己参照方式のデータＤＯＵＴ２が、バッファ回路９１２内に格納される。
【０５７２】
データ処理回路９１０内において、比較回路９１３は、データＤＯＵＴ１とデータＤＯＵＴ２との比較処理ＣＭを実行する。
【０５７３】
各データＤＯＵＴ１，ＤＯＵＴ２が複数のデータユニットＤＵを含む場合、図１２を用いて説明したように、比較回路９１３は、対応するデータユニットＤＵ１，ＤＵ２毎に比較処理を行う。
【０５７４】
２つのデータＤＯＵＴ１，ＤＯＵＴ２が一致している場合、データ処理回路９１０は、有効信号ＳＶＬＤを含むフラグＦＬＧを、コア回路９９に送る。
【０５７５】
コア回路９９は、有効信号ＳＶＬＤに基づいて、投機的計算処理Ｐ１の結果をコミットする。
【０５７６】
このように、本実施形態の計算機システムにおいて、参照セル方式に基づくデータＤＯＵＴ１と自己参照方式に基づくデータＤＯＵＴ２とが一致した場合における計算処理が、終了する。
【０５７７】
図３１は、本実施形態の計算機システムにおける参照セル方式に基づくデータと自己参照方式に基づくデータとが一致しない場合のタイミングチャートである。
【０５７８】
図３０の例と同様に、ＭＲＡＭ１は、参照セル方式の読み出し動作Ｘ１及び自己参照方式の読み出し動作Ｘ２を連続して実行する。
【０５７９】
コア回路９９は、参照セル方式に基づくデータＤＯＵＴ１を用いて、投機的計算処理Ｐ１を実行する。
【０５８０】
データ処理回路９１０は、投機的計算処理Ｐ１の実行中に、自己参照方式のデータを受ける。  
比較回路９１３は、比較処理ＣＭによって、バッファ回路９１１，９１２内の２つのデータＤＯＵＴ１，ＤＯＵＴ２を、データユニットＤＵ１，ＤＵ２毎に比較する。
【０５８１】
２つのデータＤＯＵＴ１，ＤＯＵＴ２が一致していない場合、データ処理回路９１０は、フラグ、誤りの位置及び訂正データ（データユニット）を、コア回路９９に送る。
【０５８２】
コア回路９９は、自己参照方式のデータ（データユニット）ＤＯＵＴ２を訂正データにとして用いて、再計算処理Ｐ２を実行する。  
コア回路９９は、再計算処理Ｐ２の結果を、コミットする。
【０５８３】
このように、本実施形態の計算機システムにおいて、参照セル方式に基づくデータと自己参照方式に基づくデータとが一致しない場合における計算処理が、終了する。
【０５８４】
尚、ＥＣＣ回路が、プロセッサ側に設けられた図２９のデータ処理回路９１０内に設けられてもよい。データ処理回路９１０内のＥＣＣ回路は、ＭＲＡＭ１からのデータＤＯＵＴ１，ＤＯＵＴ２に対してＥＣＣ処理を実行する。ＥＣＣ処理されたデータが、データ処理回路バッファ回路９１１，９１２内に格納される。
【０５８５】
（Ｇ３）まとめ  
以上のように、本実施形態の計算機システムは、ＭＲＡＭ１からの参照セル方式のデータと自己参照方式のデータとに対して、プロセッサ９内の回路によって、比較処理する。
【０５８６】
本実施形態の計算機システムは、プロセッサ９内における２つのデータの比較結果に基づいて、計算処理の結果の適否の判定、及び、再計算処理を、実行する。
【０５８７】
この場合であっても、本実施形態の計算機システムは、上述の他の実施形態に類似する処理を実行できる。  
それゆえ、本実施形態の計算機システムは、上述の各実施形態と実質的に同じ効果を得ることができる。
【０５８８】
したがって、本実施形態の計算機システムは、処理の高速化及び信頼性の向上を図ることができる。
【０５８９】
［Ｈ］  その他  
本実施形態のメモリデバイスにおいて、読み出し回路内のキャパシタの充電によって、メモリセル内のデータを読み出す例が示されている。本実施形態のメモリデバイスは、読み出し回路内の各読み出し方式における選択セルの出力信号を保持する複数のキャパシタにおいて、選択セル（及び参照セル）からの出力信号に応じて放電されたキャパシタが保持する電位（キャパシタ内に残存した電荷量に応じた電位）を、センスアンプ回路がセンス及び増幅することによって、メモリセルのデータを、読み出してもよい。
【０５９０】
本実施形態のメモリデバイスとしてのＭＲＡＭは、プロセッサ９内に搭載されてもよい。本実施形態のＭＲＡＭは、メモリコントローラ９０内のメモリ、又は、コア回路９９内のメモリに、用いられてもよい。
【０５９１】
実施形態の計算機システムにおいて、メモリデバイスに、ＭＲＡＭが用いられた例が示されている。但し、本実施形態に用いられるメモリデバイスは、ＭＲＡＭ以外の磁気抵抗効果素子（例えば、ＭＴＪ素子）を用いた磁気メモリでもよい。
【０５９２】
また、本実施形態におけるメモリデバイスは、２つの異なる読み出し方式が適用可能なメモリデバイスであれば、ＭＲＡＭ（磁気メモリ）以外のメモリでもよい。
【０５９３】
例えば、ＲｅＲＡＭ、ＰＣＲＡＭ、イオンメモリ、ＤＲＡＭ、ＳＲＡＭ及びフラッシュメモリの中から選択される１つのメモリデバイスが、本実施形態の計算機システム及びメモリデバイスに適用されてもよい。
【０５９４】
本実施形態において、ＭＴＪ素子４００に、平行磁化型のＭＴＪ素子が用いられてもよい。平行磁化型のＭＴＪ素子において、磁性層４０１，４０２の磁化方向は、磁性層の層面に対して、実質的に平行である。平行磁化型のＭＴＪ素子において、磁性層４０１，４０２の磁気異方性は、磁性層の形状磁気異方性などを利用して、磁性層４０１，４０２の磁化方向が、磁性層の層面に対して、実質的に平行にされる。
【０５９５】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０５９６】
１０００：計算機システム、１：メモリデバイス、１００：メモリセルアレイ、４００：磁気抵抗効果素子、１２６：読み出し回路、２６１，２６１Ａ，２６１Ｂ：センスアンプユニット、９０：メモリコントローラ、９９：コア回路、６０６：リオーダーバッファ。
【図１】
2018156556.tif 000003
【図２】
2018156556.tif 000004
【図３】
2018156556.tif 000005
【図４】
2018156556.tif 000006
【図５】
2018156556.tif 000007
【図６】
2018156556.tif 000008
【図７】
2018156556.tif 000009
【図８】
2018156556.tif 000010
【図９】
2018156556.tif 000011
【図１０】
2018156556.tif 000012
【図１１】
2018156556.tif 000013
【図１２】
2018156556.tif 000014
【図１３】
2018156556.tif 000015
【図１４】
2018156556.tif 000016
【図１５】
2018156556.tif 000017
【図１６】
2018156556.tif 000018
【図１７】
2018156556.tif 000019
【図１８】
2018156556.tif 000020
【図１９】
2018156556.tif 000021
【図２０】
2018156556.tif 000022
【図２１】
2018156556.tif 000023
【図２２】
2018156556.tif 000024
【図２３】
2018156556.tif 000025
【図２４】
2018156556.tif 000026
【図２５】
2018156556.tif 000027
【図２６】
2018156556.tif 000028
【図２７】
2018156556.tif 000029
【図２８】
2018156556.tif 000030
【図２９】
2018156556.tif 000031
【図３０】
2018156556.tif 000032
【図３１】
2018156556.tif 000033