(57)【要約】      （修正有）【課題】膜のチャージアップによるメモリセルの読み出しエラーレート上昇を回復させる。【解決手段】半導体記憶装置は、複数のメモリセルを備え、読み出し動作でエラーが検出されるとフェイル情報を蓄積し、メモリが不活性のタイミングにおいてメモリセルのエラーレートを算出し、エラーレートが第１値よりも低く且つ第２値よりも高い場合に膜のチャージアップによるエラーと判断し、エラーが検出されたメモリセルに対してランダムな書き込みを複数回実施することで、回復処理をおこなう。【選択図】図５
2020087491.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリセルを備えるメモリ領域と、
エラーが検出されたメモリセルのエラーレートを算出し、
前記エラーレートが第１値よりも低く、且つ第２値よりも高い場合、
前記メモリセルに対して回復処理を行う、
第１回路と、
を備える
半導体記憶装置。
【請求項２】
前記第１回路は、
前記エラーが検出されたメモリセルに対する書き込み、及び前記書き込みされたメモリセルに対する読み出しを第１回繰り返すことで、前記エラーレートを算出する
請求項１記載の半導体記憶装置。
【請求項３】
前記第１回路は、
前記エラーレートが前記第１値よりも高い場合、
または前記エラーレートが前記第２値よりも低い場合、
前記メモリセルに対して回復処理を行わない
請求項１または２に記載の半導体記憶装置。
【請求項４】
前記第１回路は、
前記エラーレートが第１値よりも低く、且つ第２値よりも高い場合において、
前記エラーが検出されたメモリセルに対して行われた前記回復処理の回数が、第２回以上の場合、
前記メモリセルに対して前記回復処理を行わない
請求項１乃至３の何れか一項に記載の半導体記憶装置。
【請求項５】
前記第１回路は、
外部から前記メモリ領域にアクセスがない場合、前記メモリセルに対して前記回復処理を行い、
外部から前記メモリ領域にアクセスがある場合、前記メモリセルに対して前記回復処理を行わない
請求項１乃至４の何れか一項に記載の半導体記憶装置。
【請求項６】
前記第１回路は、
前記回復処理として、書き込みを複数回行う、
請求項１乃至５の何れか一項に記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
実施形態は、半導体記憶装置に関する。
【背景技術】
【０００２】
ＭＲＡＭ（Magnetic Random Access Memory）は、情報を記憶するメモリセルに磁気抵抗効果（magnetoresistive effect）を持つ磁気素子を用いたメモリデバイスであり、高速動作、大容量、不揮発性を特徴とする次世代メモリデバイスとして注目されている。また、ＭＲＡＭは、ＤＲＡＭやＳＲＡＭなどの揮発性メモリの置き換えとして研究及び開発が進められている。この場合、ＤＲＡＭ及びＳＲＡＭと同じ仕様によりＭＲＡＭを動作させることが、開発コストを抑え、かつ、置き換えをスムーズに行うに当たって望ましい。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−２２７２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
高品質な半導体記憶装置を提供する。
【課題を解決するための手段】
【０００５】
実施形態の半導体記憶装置は、複数のメモリセルを備えるメモリ領域と、エラーが検出されたメモリセルのエラーレートを算出し、前記エラーレートが第１値よりも低く、且つ第２値よりも高い場合、前記メモリセルに対して回復処理を行う、第１回路と、を備える。
【図面の簡単な説明】
【０００６】
【図１】図１は、実施形態に係るメモリシステムを示す図である。
【図２】図２は、実施形態に係るメモリシステムのバンクを示す図である。
【図３】図３は、サイクル（書き込み動作の回数）と、ＢＥＲと、の関係を示した図である。
【図４】図４は、膜のチャージアップに関するサイクル（書き込み動作の回数）と、ＢＥＲと、の関係を示した図である。
【図５】図５は、実施形態に係るメモリシステムの回復処理を示すフローチャートである。
【発明を実施するための形態】
【０００７】
以下、実施形態について図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
【０００８】
＜１＞実施形態  
＜１−１＞メモリシステム  
まず、実施形態に係るメモリシステムについて説明する。図１に示すように、メモリシステムは、半導体記憶装置１と、ホスト（またはメモリコントローラ）２と、を備えている。本実施形態の半導体記憶装置１は、例えば、Spin transfer torque型Magnetoresistive Random Access Memory（ＳＴＴ−ＭＲＡＭ）である。
【０００９】
図１に示すように、半導体記憶装置１は、メモリコア１１、周辺回路１２を備える。
【００１０】
メモリコア１１は、データの記憶を行う複数のメモリセルを備える。
【００１１】
周辺回路１２は、メモリコア１１に対してデータの書込み、及びデータの読み出しなどを行う。周辺回路１２は、コマンド、アドレス、及びデータなどを受けるためのパッド部を備える。パッド部は、複数のパッドを備える。周辺回路１２は、パッド部及び制御信号線ＣＮＴを介して、ホスト２に接続される。また、周辺回路１２は、パッド部及びコマンド／アドレス線ＣＡ＜ｎ：０＞を介して、ホスト２に接続される。また、周辺回路１２は、パッド部及びデータ線ＤＱ＜ｍ：０＞を介して、ホスト２に接続される。ｎ及びｍは、自然数である。
【００１２】
制御信号線ＣＮＴは、制御信号の送受信に使用される。制御信号は、クロック信号ＣＫ／ＣＫｂ、クロックイネーブル信号ＣＫＥ及びチップセレクト信号ＣＳを含む。コマンド／アドレス線ＣＡ＜ｎ：０＞は、コマンド及びアドレスの送受信に使用される。ＤＱ＜ｍ：０＞は、半導体記憶装置１と、ホスト１５との間のデータの送受信に使用される。
【００１３】
尚、制御信号線ＣＮＴ、コマンド／アドレス線ＣＡ＜ｎ：０＞、及びデータ線ＤＱ＜ｍ：０＞は、それぞれピンを含む配線でも良いし、ピンそのものであっても良い。
【００１４】
＜１−２＞半導体記憶装置
図１を用いて、半導体記憶装置１について説明する。
【００１５】
＜１−２−１＞メモリコア  
半導体記憶装置１のメモリコア１１について説明する。メモリコア１１は、メモリ領域２０、ロウデコーダ２１、及びカラムデコーダ２２を備える。メモリ領域２０は、（j＋１）個のバンクＢＫ０〜ＢＫjを備える。jは、自然数である。例えば、これらバンクＢＫ０〜ＢＫjは、独立に活性化することが可能である。尚、バンクＢＫ０〜ＢＫjをそれぞれ区別しない場合には、単にバンクＢＫと呼ぶ。
【００１６】
ロウデコーダ２１は、例えば、バンクＢＫ０〜ＢＫjのうち１つを選択するバンクアドレスＢＡ＜ｘ：０＞、及び選択されたバンク内のロウを選択するためのロウアドレスＲ＜ｙ：０＞をデコードする。
【００１７】
カラムデコーダ２２は、例えば、メモリ領域２０内のカラムを選択するためのカラムアドレスＣ＜ｚ：０＞をデコードする。
【００１８】
＜１−２−２＞周辺回路  
半導体記憶装置１の周辺回路１２について説明する。図１に示すように、周辺回路１２は、第１データラッチ回路２３、制御回路２４、コマンドラッチ回路２５、アドレスラッチ回路２６、ＥＣＣ（Error correcting code）回路２７、ＭＵＸ（マルチプレクサ）２８、遅延回路２９、ゲート回路３０、第２データラッチ回路３１、及びコンパレータ３２を備える。
【００１９】
第１データラッチ回路２３は、データ線ＤＱ＜ｍ：０＞を介してホスト２から入力された入力データ、又は選択されたバンクから読み出された出力データを一時的に格納する。入力データは、選択されたバンクのメモリセル内に書き込まれる。
【００２０】
制御回路２４は、ホスト２からのクロックイネーブル信号ＣＫＥ、チップセレクト信号ＣＳ、及びコマンドＣＭＤに基づいて、半導体記憶装置１の動作を制御する。
【００２１】
コマンドラッチ回路２５は、コマンド／アドレス線ＣＡ＜ｎ：０＞を介してホスト２からコマンドＣＭＤを受け、これらを一時的に格納する。コマンドＣＭＤは、制御回路２４及びＥＣＣ回路２７に送られる。
【００２２】
アドレスラッチ回路２６は、アドレスＡＤＤを受信する。アドレスラッチ回路２６は、アドレスＡＤＤのうち、バンクアドレス、及びロウアドレスＲ＜ｙ：０＞をロウデコーダ２１に送り、カラムアドレスＣ＜ｚ：０＞をカラムデコーダ２２に送る。
【００２３】
ＥＣＣ回路２７は、データの書込み時、第１データラッチ回路２３内の書き込まれるべきデータに対するパリティビット（誤り訂正符号）を生成し、パリティビットを書き込まれるべきデータに付加する。パリティビットが付加されたデータが、メモリセルアレイ内に書き込まれる。
【００２４】
また、ＥＣＣ回路２７は、データのリード動作時に、メモリセルアレイから第１データラッチ回路２３に出力されたデータに対してエラー訂正処理を施す。ＥＣＣ回路２７は、パリティビットを用いたエラー訂正処理によって、メモリセルアレイからのデータ内に誤りがあるか否かチェックする。ＥＣＣ回路２７は、データの誤りが検出された場合、検出された誤りを訂正する。尚、ＥＣＣ回路２７は、メモリ領域２０（バンクＢＫ）内に設けられても良い。
【００２５】
また、ＥＣＣ回路２７は、エラーが存在すると判定するときに、“Ｈ（High）”レベルのエラー検出信号ＤＥＴを出力する。また、ＥＣＣ回路２７は、エラーが存在しないと判定するときに、“Ｌ（Low）”レベルのエラー検出信号ＤＥＴを出力する。
【００２６】
遅延回路２９は、データ読み出し時に使われたアドレスを遅延させ、タイミング調整する。
【００２７】
ＭＵＸ回路２８は、ＥＣＣ回路２７からのデータと、遅延回路２９を介して得られたアドレスと、をマージする。このアドレスは、データの読み出しに対応するアドレスである。
【００２８】
ゲート回路３０は、ＥＣＣ回路から、“Ｈ”レベルのエラー検出信号ＤＥＴを受信すると、ＭＵＸ回路２８にて、マージされたデータと、アドレスを第２データダッチ回路に転送する。
【００２９】
第２データラッチ回路３１は、フェイルビットのアドレスとデータを記憶する。また、第２データラッチ回路３１は、回復処理の回数Ｎ、エラーレート（ＢＥＲ：Ｂｉｔ  Ｅｒｒｏｒ  Ｒａｔｅとも記載する）Ｐを、カウント値として記憶する。なお、回復処理とは、メモリセルにランダムな値を書き込む動作である。また、エラーレートとは、メモリセルあたりのエラーの発生率を意味する。
【００３０】
コンパレータ３２は、回復処理の回数Ｎ、またはエラーレートＰに関する閾値を記憶しており、第２データラッチ回路３１に記憶された回復処理の回数、またはエラーレートと比較する。
【００３１】
＜１−２−３＞バンクＢＫ  
次に、図２を用いて、メモリ領域２０のバンクＢＫについて説明する。バンクＢＫは、センスアンプ／ライトドライバ（ＳＡ／ＷＤ）２０ｂと、ページバッファ２０ｃと、メモリセルアレイ２０ａを備えている。
【００３２】
センスアンプ／ライトドライバ２０ｂは、メモリセルアレイ２０ａのビット線方向に配置されている。センスアンプ／ライトドライバ２０ｂは、センスアンプと、ライトドライバとを備えている。センスアンプは、ビット線ＢＬに接続され、選択ワード線ＷＬに接続されたメモリセルＭＣに流れる電流を検知することによって、メモリセルＭＣに格納されたデータを読み出す。ライトドライバは、ビット線ＢＬに接続され、選択ワード線ＷＬに接続されたメモリセルＭＣに電流を流すことによってデータを書き込む。そして、センスアンプ／ライトドライバ２０ｂは、制御回路２４からの制御信号に基づいて、ビット線ＢＬ及びソース線ＳＬを制御する。センスアンプ／ライトドライバ２０ｂとデータ線ＤＱとの間のデータの授受は、データラッチ回路２３を介して行われる。
【００３３】
ページバッファ２０ｃは、メモリセルアレイ２０ａからリードしたデータまたはホスト１５から受信した書き込みデータを一時的に保持する。メモリセルアレイ２０ａへのデータの書込みは、複数のメモリセルトランジスタ単位（ページ単位）で行われる。このように、一括してメモリセルアレイ２０ａに書込まれる単位を「ページ」と呼ぶ。また、本実施形態に係るページバッファ２０ｃは、バンクＢＫ毎に設けられ、バンクＢＫの全ページのデータを一時的に格納することができる程度の記憶容量を有している。
【００３４】
メモリセルアレイ２０ａへデータの書込みを行う場合、ホスト２は、書込みコマンドとともに、書込み先を示すページアドレスと書込みデータとを半導体記憶装置１に送信する。制御回路２４は、ホスト２から受信した書込みデータをページバッファ２０ｃに格納し、ページバッファ２０ｃ内の書込みデータをページアドレスで指定されたメモリセルＭＣへと書き込む。
【００３５】
また、メモリセルアレイ２０ａからデータの読み出しを行う場合、ホスト２は、読み出しコマンドとともに、読み出し先を示すページアドレスを半導体記憶装置１に送信する。制御回路２４は、ページアドレスで指定されたメモリセルＭＣからページバッファ２０ｃにデータを読み出す。
【００３６】
メモリセルアレイ２０ａは、複数のメモリセルＭＣがマトリクス状に配列されて構成される。メモリセルアレイ２０ａには、複数のワード線ＷＬ０〜ＷＬｉ−１、複数のビット線ＢＬ０〜ＢＬｊ−１、及び複数のソース線ＳＬ０〜ＳＬｊ−１が配設される。１本のワード線ＷＬには、メモリセルアレイ２０ａの一行が接続され、１本のビット線ＢＬ及び１本のソース線ＳＬからなる１対には、メモリセルアレイ２０ａの一列が接続される。
【００３７】
メモリセルＭＣは、磁気抵抗効果素子（ＭＴＪ（Magnetic Tunnel Junction）素子）４０、及び選択トランジスタ４１から構成される。選択トランジスタ４１は、例えばＮチャネルＭＯＳＦＥＴから構成される。
【００３８】
ＭＴＪ素子４０の一端は、ビット線ＢＬに接続され、他端は選択トランジスタ４１のドレイン（ソース）に接続される。選択トランジスタ４１のゲートは、ワード線ＷＬに接続され、ソース（ドレイン）はソース線ＳＬに接続される。
【００３９】
尚、上述したバンクＢＫの構成は一例であり、バンクＢＫはこれ以外の構成であっても良い。
【００４０】
＜１−３＞ビット不良
ＭＲＡＭのビット不良は、Ｅｎｄｕｒａｎｃｅ（書換寿命）観点から、図３のように主に「ハードブレークダウン」、「ソフトエラー」、及び「膜のチャージアップ」の３種類に分けられる。図３では、サイクル（書き込み動作の回数）と、ＢＥＲと、の関係を示している。
【００４１】
「ハードブレークダウン」とは、あるサイクル（例えば１ｅ７回）を超えるとメモリセル内の膜が破壊され、エラーレートが１となる回復することのない不可逆なビット不良である。
【００４２】
「ソフトエラー」とは、サイクルに対してエラーレートが一定（例えば０．０１）であるビット不良である。
【００４３】
「膜のチャージアップ」とは、図４に示すように、エラーレートが高くなった場合でも、メモリセルに対して追加ストレス（Ｙ回のサイクル）を与えたり、放置したりすることで、エラーレートが回復する（低くなる）可逆なビット不良である。「膜のチャージアップ」のエラーレートは、例えば０．０１よりも高く、１よりも低い。
【００４４】
膜のチャージアップは、ハードブレークダウンよりも早い段階（例えばＸ（＜１ｅ７）回）で発生する傾向がある。そのため、チップのＥｎｄｕｒａｎｃｅは、この膜のチャージアップ現象に律速される。
【００４５】
そこで、本実施形態では、膜のチャージアップを引き起こしたメモリセルに対して、積極的に回復を促す処理を実施する。
【００４６】
＜１−４＞動作
次に、図５を用いて、本実施形態に係るメモリシステムの回復処理について説明する。
【００４７】
［Ｓ１０１］
ホスト２から、半導体記憶装置１に対して、読み出し要求がくると、アドレスラッチ回路２６に、読み出し対象のアドレスが記憶される。例えばこの読み出しは、ページ単位で行われる。
【００４８】
［Ｓ１０２］
アドレスラッチ回路２６に記憶されたアドレスは、ロウデコーダ２１，カラムデコーダ２２、及び遅延回路２９に転送され、制御回路２４は、アドレスラッチ回路２６に記憶されたアドレスに基づき、メモリ領域２０からのデータの読み出し動作を行う。
【００４９】
［Ｓ１０３］
メモリ領域２０から読み出されたデータ（読み出しデータ）はＥＣＣ回路２７に転送される。ＥＣＣ回路２７は、読み出しデータに、エラーの有無を判定する。
【００５０】
ＥＣＣ回路２７は、読み出しデータにエラーが無いと判定する場合（Ｓ１０３、ＮＯ）、“Ｌ”レベルのエラー検出信号ＤＥＴと、読み出しデータを出力する。ゲート回路３０は、“Ｌ”レベルのエラー検出信号ＤＥＴを受信することで、ＭＵＸ回路２８からのデータを第２データラッチ回路３１に転送しない。また、読み出しデータは、第１データラッチ回路２３に記憶される。
【００５１】
［Ｓ１０４］
ＥＣＣ回路２７は、読み出しデータにエラーが有ると判定する場合（Ｓ１０３、ＹＥＳ）、“Ｈ”レベルのエラー検出信号ＤＥＴを出力し、読み出しデータのエラーを訂正する。ＥＣＣ回路２７は、読み出しデータのエラーを訂正すると、第１データラッチ回路２３及びＭＵＸ回路２８に訂正後の読み出しデータを転送する。
【００５２】
［Ｓ１０５］
ＭＵＸ回路２８は、訂正後の読み出しデータと、遅延回路２９を介して供給される読み出しデータの読み出しに用いられたアドレスと、をマージする。そして、ＭＵＸ回路２８は、訂正後の読み出しデータと、アドレスと、をゲート回路３０に供給する。
【００５３】
ゲート回路３０は、“Ｈ”レベルのエラー検出信号ＤＥＴを受信することで、訂正後の読み出しデータと、アドレスと、を第２データラッチ回路３１に供給する。
【００５４】
これにより、互いに関連付けられた訂正後の読み出しデータと、アドレスと、が第２データラッチ回路３１に記憶される。
【００５５】
［Ｓ１０６］
制御回路２４は、半導体記憶装置１が、メモリ領域２０に対して読み書き命令がない不活性のタイミングであるか否かを判定する。
【００５６】
［Ｓ１０７］
制御回路２４は、半導体記憶装置１が、不活性のタイミングであると判定すると（Ｓ１０６、ＹＥＳ）、第２データラッチ回路３１に記憶されたアドレスに対して、複数回（例えば１００回）の書き込み及び読み出し動作を行う。
【００５７】
具体的には、エラーを有しているアドレスに対して書き込みを行い、書き込みを行ったアドレスに対して読み出しを行って、ＥＣＣ回路２７にてエラーの有無を判定する。制御回路２４は、この動作を複数回繰り返すことによって、当該アドレスに関するエラーレートＰを算出する。なお、エラーレートＰ算出後、制御回路２４は、エラーレートＰを第２データラッチ回路３１に記憶する。
【００５８】
［Ｓ１０８］
コンパレータ３２は、第２データラッチ回路３１に記憶されたエラーレートＰが、コンパレータ３２に記憶された第１閾値未満か否かを判定する。具体的には、コンパレータ３２は、エラーレートＰが１未満か否かを判定する。コンパレータ３２は、エラーレートＰが１であると判定する場合（Ｓ１０８、ＮＯ）、対応するメモリセルは「ハードブレークダウン」が発生していると判定し、本動作を終了する。上述したように、「ハードブレークダウン」が発生すると、そのメモリセルは回復しないからである。
【００５９】
［Ｓ１０９］
コンパレータ３２は、エラーレートＰが１未満であると判定する場合（Ｓ１０８、ＹＥＳ）、第２データラッチ回路３１に記憶されたエラーレートＰが、コンパレータ３２に記憶された第２閾値より大きいか否かを判定する。具体的には、コンパレータ３２は、エラーレートＰが０．０１より高いか否かを判定する。コンパレータ３２は、エラーレートＰが０．０１以下であると判定する場合（Ｓ１０９、ＮＯ）、対応するメモリセルは回復していると判定し、本動作を終了する。
【００６０】
［Ｓ１１０］
制御回路２４は、エラーレートＰが０．０１より高いと判定する場合（Ｓ１０９、ＹＥＳ）、回復処理用のアドレスが、第２データラッチ回路３１からアドレスラッチ回路２６に転送される。このアドレスをもとに、エラーのメモリセルに対して、ランダムな書き込み処理（回復処理）が実施される。この回復処理としては、例えば、１ｅ３〜１ｅ６回程度の書き込み処理である。この回数については適宜変更することが可能である。また、回復処理の対象となるのは、読み出しアドレス、つまりエラーを起こしたメモリセルを含む複数のメモリセルである。
【００６１】
なお、回復処理後、制御回路２４は、回復処理回数Ｎを第２データラッチ回路３１に記憶する。
【００６２】
［Ｓ１１１］
コンパレータ３２は、回復処理後、回復処理回数Ｎが、コンパレータ３２に記憶された第３閾値未満であるか否かを判定する。コンパレータ３２は、回復処理回数Ｎが第３閾値を超える場合（Ｓ１１０、ＮＯ）、動作を終了する。コンパレータ３２は、回復処理回数Ｎが第３閾値以下である場合（Ｓ１１０、ＹＥＳ）、ＳＵ轍鮒Ｓ１０６を繰り返す。
【００６３】
＜１−５＞効果
上述した実施形態によれば、フェイル情報（アドレス、データ）を蓄積する記憶領域（第２データラッチ回路）を設け、この情報を参照して、メモリが不活性のタイミングにおいて、不良ビットに対して積極的に書き込み処理を行い、不良を回復させる。膜のチャージアップは、ソフトエラーに比べてエラーレートが高く、ハードブレークダウンに比べてエラーレートが低い、という特徴がある。このため、読み出し時に不良したメモリセルをＥＣＣ等で検出し、書込み及び読み出しを繰り返し、たとえば、エラーレートＰが０．０１＜Ｐ＜１であるときに膜のチャージアップとみなし、このＰがＰ＜０．０１まで下がるまで、ビットに対してくりかえし回復処理（１ｅ３〜１ｅ６サイクル程度の追加の書き込み）を行う。そして、回復したと判定された場合（Ｐ＜０．０１）、処理中に壊れてしまった場合（Ｐ＝１）、合計の回復処理回数Ｎが上限を超えてしまった場合（Ｎ＞１０＾７サイクル）に終了する。
【００６４】
＜２＞変形例等  
尚、上述した実施形態では、回復処理の対象となるのは、読み出し単位、つまりエラーを起こしたメモリセルを含む複数のメモリセルである。換言すると、エラーを起こしていないメモリセルにも回復処理が行われることとなる。しかし、エラーを起こしたメモリセルのみに対して回復処理を行っても良い。
【００６５】
具体的には、ＥＣＣ回路２７は、エラーを検出すると、エラー訂正単位のメモリセルのうち、エラーが発生したメモリセルのみ書き込みを許可するビットマスク信号を生成する。このビットマスク信号とは、対象のメモリセルに対して書き込み動作を行わないための信号である。メモリセルに対して書き込みを行わないことを「マスク」する等と表現する。
【００６６】
ＥＣＣ回路２７は、エラー訂正後、訂正後のデータと共に、ビットマスク信号をＭＵＸ回路２８に供給する。
【００６７】
ＭＵＸ回路２８は、上述した実施形態と同様に、訂正後のデータと、訂正後のデータに関するアドレスと、をマージし、更にビットマスク信号もマージする。そして、ＭＵＸ回路２８は、訂正後の読み出しデータと、アドレスと、ビットマスク信号と、をゲート回路３０に供給する。
【００６８】
ゲート回路３０は、“Ｈ”レベルのエラー検出信号ＤＥＴを受信することで、訂正後の読み出しデータと、アドレスと、ビットマスク信号と、を第２データラッチ回路３１に供給する。
【００６９】
これにより、互いに関連付けられた訂正後の読み出しデータと、アドレスと、ビットマスク信号と、が第２データラッチ回路３１に記憶される。
【００７０】
そして、回復処理の際、制御回路２４はビットマスク信号を用いることで、エラーが検出されていないメモリセルに対する回復処理を禁止することができる。
【００７１】
そのため、エラーが検出されていないメモリセルに対する余分な書込みストレスを抑制することができる。
【００７２】
上述した各実施形態に示すバンクの構成は一例であり、種々変更可能である。
【００７３】
実施形態の半導体記憶装置に適用される規格は、ＬＰＤＤＲ及びＤＤＲ等のＪＥＤＥＣメモリ規格でも良いし、特定の規格に基づかないメモリでもよい。
【００７４】
上記各実施形態では、半導体記憶装置として、磁気抵抗効果素子を用いたＭＲＡＭを例に挙げて説明したが、これに限定されるものではなく、揮発性メモリ、不揮発性メモリを問わず、様々な種類の半導体記憶装置に適用可能である。また、ＭＲＡＭと同種の抵抗変化メモリ、例えばＲｅＲＡＭ（Resistive Random Access Memory）、ＰＣＲＡＭ（Phase-Change Random Access Memory）などにも適用可能である。
【００７５】
以上、本発明の実施形態を説明したが、本発明は上記実施形態に限定されるものではなく、その趣旨を逸脱しない範囲内において種々変形して実施することが可能である。さらに、上記実施形態には種々の段階の発明が含まれており、開示された構成要件を適宜組み合わせることによって種々の発明が抽出される。例えば、開示された構成要件からいくつかの構成要件が削除されても、所定の効果が得られるものであれば、発明として抽出され得る。
【符号の説明】
【００７６】
１…半導体記憶装置
２…ホスト
１１…メモリコア
１２…周辺回路
１５…ホスト
２０…メモリ領域
２０ａ…メモリセルアレイ
２０ｂ…センスアンプ／ライトドライバ
２０ｃ…バッファ
２１…ロウデコーダ
２２…カラムデコーダ
２３…データラッチ回路
２４…制御回路
２５…コマンドラッチ回路
２６…アドレスラッチ回路
２７…ＥＣＣ回路
２８…ＭＵＸ回路
２９…遅延回路
３０…ゲート回路
３１…データラッチ回路
３２…コンパレータ
４０…ＭＴＪ素子
４１…選択トランジスタ
【図１】
2020087491.tif 000003
【図２】
2020087491.tif 000004
【図３】
2020087491.tif 000005
【図４】
2020087491.tif 000006
【図５】
2020087491.tif 000007