(57)【要約】【課題】処理能力を向上できる。【解決手段】  実施形態によれば、半導体記憶装置は、複数のメモリセルＭＣを含むメモリセルアレイ１０と、書き込みデータの誤り訂正符号を生成するエンコーダ３２及び誤り訂正符号に基づいて読み出しデータの訂正処理を行うデコーダ３１を含むＥＣＣ回路２４と、書き込みデータ、訂正データ、及び訂正処理に使用された誤り訂正符号を記憶可能なページバッファ２５と、第１入力端子がエンコーダ３２に接続され、第２入力端子がページバッファ２５に接続され、出力端子がメモリセルアレイ１０に接続され、複数のメモリセルＭＣに書き込みデータを書き込む場合に第１入力端子が選択され、複数のメモリセルに訂正データを書き込む場合に第２入力端子が選択されるマルチプレクサ２６とを含む。【選択図】      図１
2018152146.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリセルを含むメモリセルアレイと、
前記複数のメモリセルに外部から入力された書き込みデータを書き込む場合に誤り訂正符号を生成するエンコーダ及び前記複数のメモリセルからデータを読み出す場合に前記誤り訂正符号に基づいて前記複数のメモリセルから読み出された前記データの訂正処理を行うデコーダを含むＥＣＣ(Error checking and correcting)回路と、
前記書き込みデータ、前記訂正処理により訂正された訂正データ、及び前記訂正処理に使用された前記誤り訂正符号を記憶可能なページバッファと、
第１入力端子が前記エンコーダに接続され、第２入力端子が前記ページバッファに接続され、出力端子が前記メモリセルアレイに接続され、前記複数のメモリセルに前記書き込みデータを書き込む場合に第１入力端子が選択され、前記複数のメモリセルに前記訂正データを書き込む場合に第２入力端子が選択されるマルチプレクサと
を備える半導体記憶装置。
【請求項２】
読み出し動作は、前記複数のメモリセルから前記データを読み出す第１動作と、前記複数のメモリセルに前記訂正データ及び前記訂正処理に使用された前記誤り訂正符号を書き込む第２動作とを含み、前記第１動作と前記第２動作とが連続して実行される請求項１記載の半導体記憶装置。
【請求項３】
前記第１動作は、前記複数のメモリセルから読み出された前記データの前記訂正処理を行う動作と、前記ページバッファに前記訂正データ及び前記訂正処理に使用された前記誤り訂正符号を格納する動作とを含む請求項２記載の半導体記憶装置。
【請求項４】
前記第１及び第２動作は、前記メモリセルアレイの同じアドレスに対して行われる請求項２記載の半導体記憶装置。
【請求項５】
前記第２動作は、前記第１動作において、前記訂正処理により前記複数のメモリセルから読み出された前記データが訂正された場合に行われる請求項２記載の半導体記憶装置。
【請求項６】
書き込み動作は、前記複数のメモリセルから前記データを読み出す第１動作と、前記複数のメモリセルに前記訂正データ及び前記訂正処理に使用された前記誤り訂正符号を書き込む第２動作と、前記複数のメモリセルに前記書き込みデータ及び前記書き込みデータに基づいて生成された誤り訂正符号を書き込む第３動作とを含み、前記第１動作と前記第２動作とが連続して実行される請求項１記載の半導体記憶装置。
【請求項７】
前記第１動作は、前記複数のメモリセルから読み出された前記データの前記訂正処理を行う動作と、前記ページバッファに前記訂正データ及び前記訂正処理に使用された前記誤り訂正符号を格納する動作とを含む請求項６記載の半導体記憶装置。
【請求項８】
前記第1乃至第３動作は、前記メモリセルアレイの同じアドレスに対して行われる請求項６記載の半導体記憶装置。
【請求項９】
前記第１入力端子は、前記エンコーダを介して前記ページバッファに接続され、前記第２入力端子は、前記エンコーダを介さずに前記ページバッファに接続される請求項１記載の半導体記憶装置。
【請求項１０】
前記書き込みデータの書き込み及び前記訂正データの書き込みに応じてマルチプレクサを制御する制御信号を生成する信号生成回路を更に備える請求項１記載の半導体記憶装置。
【請求項１１】
前記複数のメモリセルに接続された複数のビット線及び複数のソース線を選択する選択回路と、
前記複数のメモリセルから前記データを読み出すセンスアンプと、
前記複数のメモリセルに書き込み電圧を印加するライトドライバと
を更に備え、
前記デコーダの入力端子は、前記選択回路及び前記センスアンプを介して、前記複数のメモリセルに接続され、
前記マルチプレクサの出力端子は、前記ライトドライバ及び前記選択回路を介して、前記複数のメモリセルに接続される請求項１記載の半導体記憶装置。
【請求項１２】
前記メモリセルは、磁気抵抗効果素子（ＭＴＪ（Magnetic Tunnel Junction）素子）を含む請求項１記載の半導体記憶装置。
【請求項１３】
前記半導体記憶装置は、ＭＲＡＭ（magnetoresistive random access memory）である請求項１記載の半導体記憶装置。
【請求項１４】
メモリセルアレイに含まれる複数のメモリセルからデータ及び誤り訂正符号を読み出す工程と、
前記誤り訂正符号を用いて前記データの誤り検出及び訂正する工程と、
ページバッファに訂正データ及び前記誤り訂正符号を格納する工程と、
前記ページバッファに格納された前記訂正データ及び前記誤り訂正符号を前記複数のメモリセルに書き戻す工程と
を備える半導体記憶装置のデータ読み出し方法。  
【請求項１５】
前記格納する工程と、前記書き戻す工程とを連続して処理する請求項１４記載の半導体記憶装置のデータ読み出し方法。
【請求項１６】
前記読み出す工程と書き戻す工程とは、前記メモリセルアレイの同じアドレスに対して行われる請求項１４記載の半導体記憶装置のデータ読み出し方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、半導体記憶装置及びデータ読み出し方法に関する。
【背景技術】
【０００２】
半導体記憶装置の一種として抵抗変化型メモリを有する半導体記憶装置が知られている。また、抵抗変化型メモリの一種としてＭＲＡＭ（magnetoresistive random access memory）が知られている。ＭＲＡＭは、情報を記憶するメモリセルに磁気抵抗効果（magnetoresistive effect）を持つ磁気素子を用いたメモリデバイスであり、高速動作、大容量、不揮発性を特徴とする次世代メモリデバイスとして注目されている。また、ＭＲＡＭは、ＤＲＡＭやＳＲＡＭなどの揮発性メモリの置き換えとして研究及び開発が進められている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４９０８０８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
処理能力が向上できる半導体記憶装置及びデータ読み出し方法を提供する。
【課題を解決するための手段】
【０００５】
実施形態に係る半導体記憶装置は、複数のメモリセルを含むメモリセルアレイと、複数のメモリセルに外部からの書き込みデータを書き込む場合に誤り訂正符号を生成するエンコーダ及び複数のメモリセルからデータを読み出す場合に誤り訂正符号に基づいて複数のメモリセルから読み出されたデータの訂正処理を行うデコーダを含むＥＣＣ(Error checking and correcting)回路と、書き込みデータ、訂正処理により訂正された訂正データ、及び訂正処理に使用された誤り訂正符号を記憶可能なページバッファと、第１入力端子がエンコーダに接続され、第２入力端子がページバッファに接続され、出力端子がメモリセルアレイに接続され、複数のメモリセルに書き込みデータを書き込む場合に第１入力端子が選択され、複数のメモリセルに訂正データを書き込む場合に第２入力端子が選択されるマルチプレクサとを含む。
【図面の簡単な説明】
【０００６】
【図１】図１は、第１実施形態に係る半導体記憶装置のブロック図である。
【図２】図２は、第１実施形態に係る半導体記憶装置におけるメモリセルアレイの回路図である。
【図３】図３は、第１実施形態に係る半導体記憶装置における読み出し動作のフローチャートである。
【図４】図４は、第１実施形態に係る半導体記憶装置における読み出し動作のタイミングチャートである。
【図５】図５は、第１実施形態に係る半導体記憶装置における書き込み動作のフローチャートである。
【図６】図６は、第１実施形態に係る半導体記憶装置におけるデータとパリティの流れを示すフローチャートである。
【図７】図７は、第２実施形態に係る半導体記憶装置における書き込みシーケンスと書き戻しシーケンスの違いを示すフローチャートである。
【図８】図８は、第２実施形態に係る半導体記憶装置におけるライトイネーブル信号の送受信を示すブロック図である。
【図９】図９は、第２実施形態に係る半導体記憶装置の備えるＳＷＢ生成回路である。
【図１０】図１０は、第２実施形態に係る半導体記憶装置の備えるＳＷＢ生成回路の真理値表である。
【発明を実施するための形態】
【０００７】
以下、実施形態につき図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
【０００８】
１．第１実施形態
第１実施形態に係る半導体記憶装置について説明する。以下では、半導体記憶装置が、Spin transfer torque型Magnetoresistive Random Access Memory（ＳＴＴ−ＭＲＡＭ）である場合を例に挙げて説明する。
【０００９】
１．１  半導体記憶装置の全体構成
まず、半導体記憶装置の全体構成について、図１を用いて説明する。なお、図１の例では、説明を簡略化するため、各ブロック間を接続する配線（バス）の一部を示している。
【００１０】
図１に示すように、半導体記憶装置１は、メモリセルアレイ１０、ロウデコーダ１１、カラム制御回路１２、カラムデコーダ１３、制御回路１４、ＣＡ入力回路１５、アドレスレジスタ１６、コマンド回路１７、及びＤＱ回路１８を備える。
【００１１】
メモリセルアレイ１０は、データを記憶する複数のメモリセルを含む複数のバンクＢＮＫ（ＢＮＫ０、ＢＮＫ１、…）を備える。例えば、複数のバンクＢＮＫは、独立にデータの書き込みあるいは読み出し動作を行うことができる。なお、バンクＢＮＫの個数は任意に設定できる。
【００１２】
ロウデコーダ１１は、例えば、１つのバンクＢＮＫを選択するバンクアドレスＢ＿ＡＤ、及び選択されたバンクＢＮＫ内のロウアドレスＲ＿ＡＤをデコードする。ロウデコーダ１１は、デコード結果に応じて、メモリセルアレイ１０に接続されたワード線を選択する。
【００１３】
カラムデコーダ１３は、例えば、メモリセルアレイ１０内のカラム、より具体的にはビット線とソース線を選択するためのカラムアドレスＣ＿ＡＤをデコードする。カラムデコーダ１３は、デコード結果をカラム制御回路１２に送信する。
【００１４】
カラム制御回路１２は、選択されたカラムに対して、データの読み出し及び書き込みを制御する。カラム制御回路１２は、カラム選択回路２１、センスアンプ２２、ライトドライバ２３、ＥＣＣ（Error checking and correcting）回路２４、ページバッファ２５、マルチプレクサ２６を含む。
【００１５】
カラム選択回路２１は、複数のビット線、複数のソース線、センスアンプ２２、及びライトドライバ２３に接続される。カラム選択回路２１は、カラムデコーダ１３のデコード結果に基づいて、カラム、すなわち対応する複数のビット線及び複数のソース線を選択し、センスアンプ２２あるいはライトドライバ２３と接続する。本実施形態におけるカラム選択回路２１は、後述する第１及び第２カラム選択回路を含む。第１カラム選択回路は複数のソース線に対応し、第２カラム選択回路は、複数のビット線に対応する。
【００１６】
センスアンプ２２は、カラム選択回路２１により選択された複数のビット線及び複数のソース線に接続される。センスアンプ２２は、読み出し対象となる複数の選択メモリセルに流れる電流をそれぞれ検知することによって、複数の選択メモリセルに記憶されたデータを一括して読み出す（以下、一括して読み出されるメモリセルの単位を「ページ」と呼ぶ）。
【００１７】
ライトドライバ２３は、カラム選択回路２１により選択された複数のビット線及び複数のソース線に接続される。ライトドライバ２３は、書き込み対象となる複数の選択メモリセルに書き込み電圧（ライトパルス）を印加する。選択メモリセルに書き込み電流が流れることにより、選択メモリセルにデータが書き込まれる。データの書き込みは、複数のメモリセルに対して一括して行われる。
【００１８】
ＥＣＣ回路２４は、データの誤り訂正処理を実行する。より具体的には、ＥＣＣ回路２４は、書き込み動作時に、ホスト１００（例えばメモリコントローラ）より入力された書き込みデータ（以下、「ライトデータ」と呼ぶ）を用いてエラー訂正符号（以下、「パリティビット」と呼ぶ）を生成する。また、ＥＣＣ回路２４は、読み出し動作時に、パリティビットに基づいて選択メモリセルから読み出されたデータ（以下、「リードデータ」と呼ぶ）内に誤りがあるか否かチェックする。ＥＣＣ回路２４は、データの誤りが検出された場合、検出された誤りを訂正する。以下では、説明を簡略するため、ページ単位で読み出されたデータが一括してＥＣＣ処理される場合について説明する。なお、ＥＣＣ回路２４が一括してＥＣＣ処理を実施するデータ長は、ページと同じデータ長で無くても良い。カラム制御回路１２は、誤りが訂正されたデータ（以下、「訂正データ」と呼ぶ）を、メモリセルアレイ１０内の同じアドレスに書き戻す。以下、訂正データをメモリセルアレイ１０内に書き戻す動作を、「書き戻し」と呼ぶ。例えば、リードデータに誤りが検出されなかった場合、書き戻し動作は、実行されなくても良い。ＥＣＣ回路２４は、ＥＣＣデコーダ３１及びＥＣＣエンコーダ３２を含む。
【００１９】
ＥＣＣデコーダ３１は、センスアンプ２２及びページバッファ２５に接続される。ＥＣＣデコーダ３１は、リードデータに含まれるパリティビットを用いて、リードデータの誤りを訂正する。訂正データ及びパリティビットは、ページバッファ２５に一時的に記憶される。
【００２０】
ＥＣＣエンコーダ３２は、ページバッファ２５及びマルチプレクサ２６に接続される。ＥＣＣエンコーダ３２は、ページバッファ２５を介してホスト１００から入力されたライトデータをエンコードして、パリティビットを生成する。生成されたパリティビットは、ライトデータに付与されて、メモリセルアレイ１０に書き込まれる。
【００２１】
ページバッファ２５には、ライトデータ及びリードデータ（パリティビット含む）が一時的に記憶される。より具体的には、ページバッファ２５には、書き込み動作時、ＤＱ回路１８から転送されたライトデータが一時的に記憶される。そして、ライトデータはＥＣＣエンコーダ３２に転送される。また、ページバッファ２５には、読み出し動作時、リードデータ（訂正データ）及びパリティビットが一時的に記憶される。リードデータ（訂正データ）は、ＤＱ回路１８に転送される。
【００２２】
マルチプレクサ２６は、第１入力端子がＥＣＣエンコーダ３２に接続され、第２入力端子がページバッファ２５に接続され、出力端子がライトドライバ２３に接続される。マルチプレクサ２６は、制御回路１４より送信される制御信号ＳＷＢに基づいてＥＣＣエンコーダ３２及びページバッファのいずれか一方とライトドライバとを接続する。より具体的には、マルチプレクサ２６は、ページバッファ２５が訂正データ及びパリティビットを保持している場合、第２入力端子と出力端子とを接続し、ページバッファ２５がライトデータを保持している場合、第１入力端子と出力端子とを接続する。
【００２３】
ＣＡ入力回路１５は、例えば１０本のコマンド・アドレス線ＣＡ０〜ＣＡ９を介してホスト１００と接続される。コマンド・アドレス線ＣＡ０〜ＣＡ９は、単方向バスである。ＣＡ入力回路１５は、ホスト１００からコマンド・アドレス線ＣＡ０〜ＣＡ９を介して、コマンド及びアドレス信号を受信する。ＣＡ入力回路１５が受信するコマンドは、バンクＢＮＫの動作を制御するための命令であり、例えばアクティブコマンド、プリチャージコマンド、ライトコマンド、リードコマンド、及びリセットコマンドを含む。プリチャージコマンドは、選択されたバンクＢＮＫを読み出し動作あるいは書込み動作のために初期状態（プリチャージ状態）にさせるためのコマンドである。より具体的には、プリチャージ動作の際は、全ワード線、全ビット線、及び全ソース線が非活性化（非選択状態）される。アクティブコマンドは、１つのバンクＢＮＫを活性化（選択）し、選択バンクＢＮＫ内の複数のワード線のうちの１本を活性化（選択）させるためのコマンドである。また、ＣＡ入力回路１５は、アドレスレジスタ１６及びコマンド回路１７に接続される。ＣＡ入力回路１５は、受信したアドレス信号をアドレスレジスタ１６に送信し、受信したコマンドをコマンド回路１７に送信する。
【００２４】
アドレスレジスタ１６は、ロウデコーダ１１及びカラムデコーダ１３に接続される。アドレスレジスタ１６は、バンクアドレスＢ＿ＡＤ及びバンクアドレスＢ＿ＡＤにより選択されたバンクＢＮＫ内のロウ（すなわちワード線）を指定するロウアドレスＲ＿ＡＤをロウデコーダ１１に送信し、選択バンクＢＮＫ内のカラム（すなわちビット線及びソース線）を指定するカラムアドレスＣ＿ＡＤをカラムデコーダ１３に送信する。
【００２５】
コマンド回路１７は、コマンドをデコードし、デコード結果を制御回路１４に送信する。
【００２６】
ＤＱ回路１８は、例えば１６本のデータ線ＤＱ＜１５：０＞を介してホスト１００と接続される。データ線ＤＱ＜１５：０＞は、双方向のデータパスである。また、ＤＱ回路１８は、ページバッファ２５に接続される。ＤＱ回路１８は、ホスト１００からデータ線ＤＱ＜１５：０＞を介して、入力データ（ライトデータ）を受信し、受信したライトデータをカラム制御回路１２（具体的には、ページバッファ２５）に送信する。また、ＤＱ回路１８は、ページバッファ２５に格納されている出力データ（リードデータ）を、データ線ＤＱ＜１５：０＞を介して、ホスト１００に出力する。なお、データ線ＤＱの本数は任意である。
【００２７】
制御回路１４は、半導体記憶装置１の全体動作を制御する。より具体的には、制御回路１４は、例えばロウデコーダ１１、カラムデコーダ１３、カラム制御回路１２（カラム選択回路２１、センスアンプ２２、ライトドライバ２３、ＥＣＣ回路２４、ページバッファ２５、及びマルチプレクサ２６）、及びＤＱ回路１８を制御する。制御回路１４は、各種制御信号、例えば、クロック信号ＣＫ、クロックイネーブル信号ＣＫＥ、及びチップセレクト信号ＣＳ等をホスト１００から受信する。制御回路１４は、コマンド回路１７から送信されるコマンドに従って、例えば書き込み動作及び読み出し動作を制御する。
【００２８】
１．２  メモリセルアレイの構成
次に、メモリセルアレイ１０の構成について、図２を用いて説明する。図２の例は、メモリセルアレイ１０のバンクＢＮＫ０を示しているが、他のバンクＢＮＫも同じ構成である。
【００２９】
図２に示すように、バンクＢＮＫ０は、複数のメモリセルＭＣがマトリクス状に配列されて構成される。バンクＢＮＫ０には、ロウ方向に沿って複数のワード線ＷＬ（ＷＬ０〜ＷＬｎ、ｎは１以上の整数）が設けれ、カラム方向に沿って複数のビット線ＢＬ（ＢＬ０〜ＢＬｍ、ｍは１以上の整数）及び複数のソース線ＳＬ（ＳＬ０〜ＳＬｍ）が設けられる。１本のワード線ＷＬには、ロウ方向に配置された複数のメモリセルＭＣが接続され、１本のビット線ＢＬ及び１本のソース線ＳＬからなる１対には、カラム方向に配置された複数のメモリセルＭＣが接続される。１本のワード線ＷＬと一対のビット線ＢＬ及びソース線ＳＬとが選択されることにより、１つのメモリセルＭＣが選択される。
【００３０】
メモリセルＭＣは、磁気抵抗効果素子（ＭＴＪ（Magnetic Tunnel Junction）素子）４０及び選択トランジスタ４１を含む。選択トランジスタ４１は、例えばＮチャネルＭＯＳＦＥＴであっても良い。
【００３１】
ＭＴＪ素子４０の一端は、ビット線ＢＬに接続され、他端は選択トランジスタ４１のドレイン（ソース）に接続される。選択トランジスタ４１のゲートは、ワード線ＷＬに接続され、ソース（ドレイン）はソース線ＳＬに接続される。
【００３２】
なお、上述したバンクＢＮＫの構成は一例であり、バンクＢＮＫはこれ以外の構成であっても良い。
【００３３】
カラム選択回路２１は、複数のソース線ＳＬに接続された第１カラム選択回路２１ａ及び複数のビット線ＢＬに接続された第２カラム選択回路２１ｂを含む。第１カラム選択回路２１ａは、カラムデコーダ１３のデコード結果に基づいて、複数のソース線ＳＬを選択する。第１カラム選択回路２１ａは、書き込み動作時、ライトドライバ２３の印加電圧を複数の選択ソース線ＳＬに転送する。第２カラム選択回路２１ｂは、カラムデコーダ１３のデコード結果に基づいて、複数のビット線ＢＬを選択する。第２カラム選択回路２１ｂは、書き込み動作時、ライトドライバ２３の印加電圧を複数の選択ビット線ＢＬに転送する。また、第２カラム選択回路２１ｂは、読み出し動作時、複数の選択ビット線ＢＬの電圧をセンスアンプ２２に転送する。
【００３４】
ロウデコーダ１１には、バンクＢＮＫ内に設けられた複数のワード線ＷＬが接続される。
【００３５】
１．３  読み出し動作
１．３．１  読み出し動作の概要  
次に、本実施形態に係る読み出し動作の概要について、図３を用いて説明する。本実施形態における読み出し動作は、選択メモリセルからデータを読み出す動作（以下、「セル読み出し」と呼ぶ）と訂正データの書き戻し動作とを含む。より具体的には、セル読み出しは、リードデータの読み出し、ＥＣＣ処理、及びページバッファ２５への格納（記憶）を含む。本実施形態では、セル読み出しと書き戻し動作とが連続して行われる。
【００３６】
図３に示すように、まずロウデコーダ１１は、ホスト１００からアクティブコマンド及びアドレス信号を受信すると、選択バンクＢＮＫの選択ワード線ＷＬを活性化する（ステップＳ１０）。より具体的には、ＣＡ入力回路１５は、コマンド・アドレス線ＣＡ０〜ＣＡ９を介して、アクティブコマンド、バンクアドレスＢ＿ＡＤ、及びロウアドレスＲ＿ＡＤを受信する。そしてＣＡ入力回路１５は、アドレスレジスタ１６を介して、ロウデコーダ１１にバンクアドレスＢ＿ＡＤ及びロウアドレスＲ＿ＡＤを送信する。また、ＣＡ入力回路１５は、コマンド回路１７を介して、デコードされたアクティブコマンドを制御回路１４に送信する。制御回路１４は、アクティブコマンドを受信すると、ロウデコーダ１１に活性化を指示する。ロウデコーダ１１は、バンクアドレスＢ＿ＡＤ及びロウアドレスＲ＿ＡＤをデコードする。そして、ロウデコーダ１１は、デコード結果に応じて、１つのバンクＢＮＫを活性化し、更に活性化したバンクＢＮＫ内の選択ワード線ＷＬを活性化する。
【００３７】
次に、制御回路１４は、リードコマンドを受信する（ステップＳ１１）。より具体的には、ＣＡ入力回路１５は、コマンド・アドレス線ＣＡ０〜ＣＡ９を介して、リードコマンドとカラムアドレスＣ＿ＡＤを受信する。ＣＡ入力回路１５は、コマンド回路１７を介して、デコードされたリードコマンドを制御回路１４に送信する。また、ＣＡ入力回路１５は、カラムアドレスＣ＿ＡＤをカラムデコーダ１３に送信する。カラムデコーダ１３は、カラムアドレスＣ＿ＡＤをデコードした結果をカラム制御回路１２に送信する。
【００３８】
次に、カラム制御回路１２は、選択バンクＢＮＫの選択メモリセルＭＣのデータを読み出す（ステップＳ１２）。より具体的には、制御回路１４は、リードコマンドを受信するとカラム制御回路１２にデータの読み出しを指示する。カラム制御回路１２内のカラム選択回路２１は、デコード結果に応じて複数のビット線ＢＬ及び複数のソース線ＳＬを選択する。センスアンプ２２は、選択ビット線ＢＬを介して読み出されたリードデータ及びパリティビットをＥＣＣデコーダ３１に送信する。
【００３９】
次に、ＥＣＣデコーダ３１は、パリティビットを用いてリードデータのＥＣＣ処理を行う（ステップＳ１３）。
【００４０】
次に、カラム制御回路１２は、ページバッファ２５にリードデータを格納する（ステップＳ１４）。より具体的には、リードデータに訂正が無い場合には、ページバッファ２５にリードデータ及びパリティビットが格納される。リードデータに訂正が有る場合には、ページバッファ２５に訂正データ及びパリティビットが格納される。
【００４１】
図３におけるステップＳ１２〜Ｓ１４がセル読み出しに相当する。
【００４２】
ＥＣＣデコーダ３１によりデータが訂正された場合（ステップＳ１５＿Ｙｅｓ）、カラム制御回路１２は書き戻し動作を行う（ステップＳ１６）。より具体的には、ページバッファ２５に格納された訂正データ及びパリティビットが選択メモリセルＭＣに書き戻される。この時、マルチプレクサ２６では、制御信号ＳＷＢに応じて第２入力端子が選択され、ライトドライバ２３とページバッファ２５とが接続される。また、カラム制御回路１２は、ページバッファ２５に格納された訂正データを、ＤＱ回路１８及びデータ線ＤＱ＜１５：０＞を介して、ホスト１００に出力する。
【００４３】
ＥＣＣデコーダ３１によりデータが訂正されていない場合（ステップＳ１５＿Ｎｏ）、カラム制御回路１２は書き戻し動作を行わず、ページバッファ２５に格納されたリードデータをホスト１００に出力する。
【００４４】
次に、ロウデコーダ１１及びカラム制御回路１２は、ホスト１００からプリチャージコマンド及びアドレス信号を受信すると、選択バンクＢＮＫのプリチャージ（非活性化）を行う（ステップＳ１７）。これにより、読み出し動作は終了する。なお、選択バンクＢＮＫの選択ワード線ＷＬにおいて、書き込みあるいは読み出し動作が続けて行われる場合には、プリチャージ動作が省略されても良い。
【００４５】
１．３．２  読み出し動作時のコマンドシーケンス
次に、読み出し動作時のコマンドシーケンスについて、図４を用いて説明する。図４の例は、バンクＢＮＫ０からデータを読み出す場合を示しており、他のバンクＢＮＫが選択される場合も同様である。本実施形態に係る半導体記憶装置１は、内部クロックＣＬＫ（クロックＣＫ＿ｔ、及び相補クロックＣＫ＿ｃ）のタイミングに合わせて動作する。そして、半導体記憶装置１は、クロックＣＫ＿ｔ、及び相補クロックＣＫ＿ｃが交差するタイミングで、ホスト１００からコマンド・アドレス等を受信する。
【００４６】
図４に示すように、時刻Ｔ０において、半導体記憶装置１は、ホスト１００からバンクＢＮＫ０に係るアクティブコマンド（参照符号“Activate”）を受信する。なお、アクティブコマンドが入力されるときのクロックＣＫ＿ｔの立ち上がりエッジ及び立下りエッジのタイミングで、ホスト１００からバンクアドレスＢ＿ＡＤ及びロウアドレスＲ＿ＡＤが入力される。そして、アドレスレジスタ１６にバンクアドレスＢ＿ＡＤ、及びロウアドレスＲ＿ＡＤがセットされる。これにより、選択ワード線ＷＬの活性化が行われる。
【００４７】
時刻Ｔ０から期間“ｔＲＣＤ（RAS to CAS delay）”経過後の時刻Ｔ１において、半導体記憶装置１は、ホスト１００からアクティブコマンドに続いて選択バンクＢＮＫ０に係るリードコマンド（参照符号“Read”）を受信する。また、リードコマンドが入力されるときのクロックＣＫ＿ｔの立ち上がりエッジ及び立下りエッジのタイミングで、ホスト１００からバンクアドレスＢ＿ＡＤ及びカラムアドレスＣ＿ＡＤが入力される。そして、アドレスレジスタ１６にバンクアドレスＢ＿ＡＤ、及びカラムアドレスＣ＿ＡＤがセットされる。これにより、読み出し動作が開始される。なお、期間“ｔＲＣＤ”（RAS to CAS delay）は、アクティブコマンドを受け付けてからリードコマンド（書き込み動作の場合はライトコマンド）を受け付けるまでの期間である。また、“ＲＡＳ”はrow address strobe、“ＣＡＳ”はcolumn address strobeである。また、ロウアドレスＲ＿ＡＤ及びカラムアドレスＣ＿ＡＤはそれぞれ２回に分けて、半導体記憶装置１に入力されているが、入力回数は任意に設定可能である。
【００４８】
時刻Ｔ０から期間“ｔＲＡＳ（Row Active time）”経過後の時刻Ｔｋ（ｋは３以上の整数）において、すなわち、読み出し動作終了後、半導体記憶装置１は、ホスト１００からプリチャージコマンド（参照符号“Pre-charge”）を受信する。また、プリチャージコマンドが入力されるときのクロックＣＫ＿ｔの立ち上がりエッジのタイミングで、ホスト１００からバンクアドレスＢ＿ＡＤが入力される。これにより、選択バンクＢＮＫ０の非活性化が行われる。なお、期間“ｔＲＡＳ（Row Active time）”は、アクティブコマンドを受け付けてからプリチャージコマンドを受け付けるまでの期間、すなわち選択バンクＢＮＫ（ワード線ＷＬ）が活性化されている期間である。
【００４９】
時刻Ｔｋから期間“ｔＲＰ（Row Pre-charge time）”経過後の時刻Ｔｋ＋２において、すなわち、プリチャージ動作終了後、次の動作のためのアクティブコマンドを受信する。このとき受信するバンクアドレスＢ＿ＡＤは、バンクＢＮＫ０を示していても良く、他のバンクＢＮＫを示していても良い。なお、期間“ｔＲＰ（Row Pre-charge time）”は、プリチャージコマンドを受け付けてからアクティブコマンドを受け付けるまでの期間である。
【００５０】
期間ｔＲＡＳと期間ｔＲＰを足し合わせた期間ｔＲＣ（Active to Active command period）が、１回の読み出し動作（あるいは書き込み動作）の期間を示す。
【００５１】
１．４  書込み動作
１．４．１  書き込み動作の概要  
次に、本実施形態に係る書き込み動作について、図５を用いて説明する。本実施形態における書き込み動作は、書き込み対象となるカラムアドレスＣ＿ＡＤを含むページに対応するセル読み出しと、書き戻し動作と、ライトデータを書き込む動作（以下、「セル書き込み」と呼ぶ）とを含む。そして読み出し動作と同様に、セル読み出しと書き戻し動作とが連続して行われる。
【００５２】
図５に示すように、まず、ロウデコーダ１１は、読み出し動作のステップＳ１０と同様に、ホスト１００からアクティブコマンド及びアドレス信号を受信すると、選択バンクＢＮＫの選択ワード線ＷＬを活性化する（ステップＳ１０）。
【００５３】
次に、制御回路１４は、ライトコマンドを受信する（ステップＳ２０）。より具体的には、ＣＡ入力回路１５は、コマンド・アドレス線ＣＡ０〜ＣＡ９を介して、ライトコマンドとカラムアドレスＣ＿ＡＤを受信する。ＣＡ入力回路１５は、コマンド回路１７を介して、デコードされたライトコマンドを制御回路１４に送信する。また、ＣＡ入力回路１５は、カラムアドレスＣ＿ＡＤをカラムデコーダ１３に送信する。カラムデコーダ１３は、カラムアドレスＣ＿ＡＤをデコードした結果をカラム制御回路１２に送信する。
【００５４】
次に、カラム制御回路１２は、図３の読み出し動作におけるセル読み出し（ステップＳ１２乃至Ｓ１４）と同様に、リードデータをＥＣＣ処理し、リードデータ（訂正データ）及びパリティビットをページバッファ２５に格納する。
【００５５】
カラム制御回路１２は、ページバッファ２５にリードデータ（訂正データ）及びパリティビットを格納した後、書き戻し動作と並行してライトデータの書き込み動作を開始する。
【００５６】
より具体的には、ステップＳ１４終了後、読み出し動作と同様に、ＥＣＣデコーダ３１によりデータが訂正された場合（ステップＳ１５＿Ｙｅｓ）、カラム制御回路１２は書き戻し動作を行う（ステップＳ１６）。他方で、ＥＣＣデコーダ３１によりデータが訂正されていない場合（ステップＳ１５＿Ｎｏ）、書き戻し動作は省略される。
【００５７】
また、ステップＳ１４終了後、ページバッファ２５にライトデータが格納され、リードデータがライトデータに書き換えられる（ステップＳ２１）。
【００５８】
次に、ＥＣＣエンコーダ３２は、ページバッファ２５から転送されたライトデータのエンコードを行い、パリティビットを生成する（ステップＳ２２）。
【００５９】
次に、ステップＳ１６及びステップＳ２２終了後、マルチプレクサ２６においてデータパスが切り替えらえる（ステップＳ２３）。より具体的には、マルチプレクサ２６において、制御信号ＳＷＢに応じて第１入力端子が選択され、ＥＣＣエンコーダ３２とライトドライバ２３とが接続される。
【００６０】
次に、選択メモリセルＭＣにライトデータが書き込まれる（ステップＳ２４）。より具体的には、カラム選択回路２１は、カラムアドレスのデコード結果に応じて複数のビット線ＢＬ及び複数のソース線ＳＬを選択する。ライトドライバ２３は、ライトデータに応じて、１対のビット線ＢＬ及びソース線ＳＬのいずれか一方にライトパルスを送信し、メモリセルＭＣに書き込み電流を流す。これによりメモリセルＭＣにデータが書き込まれる。
【００６１】
図５におけるステップＳ２１〜Ｓ２４がセル読み書き込みに相当する。
【００６２】
次に、読み出し動作のステップＳ１７と同様に、選択バンクＢＮＫのプリチャージ（非活性化）が行われる。これにより、書き込み動作は終了する。なお、選択バンクＢＮＫの選択ワード線ＷＬにおいて、書き込みあるいは読み出し動作が続けて行われる場合には、プリチャージ動作が省略されても良い。
【００６３】
なお、リードデータ（ページ）のデータ長とライトデータのデータ長とが異なっていても良い。すなわち、ライトデータのデータ長がページのデータ長よりも短くても良い。
【００６４】
更に、図５の例では、ステップＳ１６の書き戻し動作と、ステップＳ２１のライトデータの格納及びステップＳ２２のエンコードとが並列に処理される場合について説明したが、ステップＳ１６の書き戻し終了後、ステップＳ２１のライトデータの格納が実行されても良い。
【００６５】
１．４．２  書き込み動作時のデータの流れ
次に、書き込み動作時のデータの流れについて、図６を用いて説明する。図６の例では、説明を簡略化するため、カラム選択回路２１が省略されている。また、リードデータに対して誤り訂正が行われた場合を示している。図６において、白塗りの矢印は、第１動作、すなわちリードデータ（または訂正データ）を示しており、黒塗りの矢印は、第２動作、すなわちライトデータを示しており、斜線塗りの矢印は、訂正データあるいはライトデータのいずれかを示している。
【００６６】
図６に示すように、第１動作では、まずセンスアンプ２２がメモリセルアレイ１０からリードデータ及びパリティビットを読み出し（参照符号ａ１）、ＥＣＣデコーダ３１に送信する（参照符号ａ２）。ＥＣＣデコーダ３１は、ＥＣＣ処理を実行し、訂正データ及びパリティビットをページバッファ２５に送信する（参照符号ａ３）。ページバッファ２５に保持されている訂正データ及びパリティビットは、マルチプレクサ２６を介して（参照符号ａ４）、ライトドライバ２３に送信され（参照符号ａ５）、メモリセルアレイ１０に書き戻される（参照符号ａ６）。このとき、マルチプレクサ２６は制御信号ＳＷＢに応じて、ページバッファ２５とライトドライバ２３とを接続する。
【００６７】
次に、第２動作について説明する。第２動作では、ＤＱ回路１８からページバッファにライトデータが送信される（参照符号ｂ１）。ページバッファ２５に格納されたライトデータはＥＣＣエンコーダに送信され（参照符号ｂ２）、パリティビットが付与される。ライトデータ及びパリティビットは、マルチプレクサ２６を介して（参照符号ｂ３）、ライトドライバ２３に送信され（ｂ４）、メモリセルアレイ１０に書き込まれる（参照符号ｂ５）。このとき、マルチプレクサ２６は制御信号ＳＷＢに応じて、ライトドライバ２３とＥＣＣエンコーダ３２とを接続する。
【００６８】
１．５  本実施形態に係る効果
本実施形態に係る構成であれば、処理能力を向上できる。本効果につき、具体的に説明する。
【００６９】
書き戻し動作において、ページバッファに格納された訂正データを書き戻す場合、ＥＣＣエンコーダで訂正データに対するパリティビットを生成した後、メモリセルアレイに書き戻す方法が知られている。この場合、訂正データをエンコードするための処理時間が必要となる。
【００７０】
これに対し、本実施形態に係る構成では、読み出し動作と書き戻し動作とを連続で行うことにより、訂正データを書き戻す際に、訂正データのエンコード、すなわちパリティビットの生成を省略できる。より具体的には、データ読み出しの際、ページバッファ２５に誤り訂正に用いたパリティビットを訂正データとともに格納する。そして、書き戻しの際、ページバッファ２５に格納された訂正データとパリティビットとを書き戻すことにより、訂正データに対するパリティビットの生成を省略できる。これにより訂正データのエンコード時間を省略できる。すなわち、ｔＲＣの期間を短縮できる。従って、半導体記憶装置の処理能力を向上できる。
【００７１】
更に本実施形態に係る構成では、ページバッファ２５あるいはＥＣＣエンコーダ３２の１つを選択して、ライトドライバ２３と接続させるマルチプレクサ２６を備える。これにより、ページバッファ２５に格納された訂正データ及びパリティビットを、ＥＣＣエンコーダ３２を介すことなく、ライトドライバ２３に送信できる。
【００７２】
２．第２実施形態
次に、第２実施形態について説明する。第２実施形態では、制御信号ＳＷＢの生成について説明する。以下、第１実施形態と異なる点についてのみ説明する。
【００７３】
２．１  書き込み動作時の制御回路のシーケンス
まず、書き込み動作時の制御回路１４のシーケンスについて図７を用いて説明する。
【００７４】
図７に示すように、制御回路１４では、ライトデータを書き込む場合（以下、「書き込みシーケンス」と呼ぶ）、おおまかに分けて３段階のシーケンス、すなわち３つの制御信号のアサート処理が行われる。より具体的には、制御回路１４は、まずライトコマンド、カラムアドレスＣ＿ＡＤ、及びライトデータを受信すると、ライトイネーブル信号ＢＷＥＮ１をアサートする。次に、制御回路１４は、第１期間経過後、ライトイネーブル信号ＢＷＥＮ２をアサートする。すなわち、ライトイネーブル信号ＢＷＥＮ２は、ライトイネーブル信号ＢＷＥＮ１を第１期間遅延させた信号である。ページバッファ２５では、ライトイネーブル信号ＢＷＥＮ２とカラムアドレスＣ＿ＡＤとに基づいて、ＤＱ回路１８からライトデータが取り込まれる。そして、ＥＣＣ回路２４は、ページバッファ２５に取り込まれたライトデータのエンコードを行う。更に、制御回路１４は、ライトイネーブル信号ＢＷＥＮ２をアサートしてから第２期間経過後、ライトイネーブル信号ＢＷＥＮＳをアサートする。すなわち、ライトイネーブル信号ＢＷＥＮＳは、ライトイネーブル信号ＢＷＥＮ２を第２期間遅延させた信号である。ライトドライバ２３は、ライトイネーブル信号ＢＷＥＮＳに基づいて、ライトパルスの印加を開始する。
【００７５】
一方、制御回路１４では、書き戻しの場合（以下、「書き戻しシーケンス」と呼ぶ）、ライトイネーブル信号ＢＷＥＮ１及びＢＷＥＮ２のアサート処理は省略され、ライトイネーブル信号ＢＷＥＮＳのアサート処理が行われる。
【００７６】
２．２  ライトイネーブル信号の送受信
次に、ライトイネーブル信号ＢＷＥＮ１、ＢＷＥＮ２、及びＢＷＥＮＳの送受信について、図８を用いてより詳細に説明する。図８の例は、１つのカラムに対応するライトパルスの生成を示している。
【００７７】
図８に示すように、ライトイネーブル信号ＢＷＥＮ１は、例えば制御回路１４内に設けられた遅延回路５０に送信される。遅延回路５０は、ライトイネーブル信号ＢＷＥＮ１を第１期間遅延させたライトイネーブル信号ＢＷＥＮ２を、例えば制御回路１４内に設けられた遅延回路５１及びＢＷＥＮ２＿ＣＡＤ生成回路５３に送信する。遅延回路５０は、例えば、ページバッファ２５にライトデータを取り込むタイミングを調整するために、ライトイネーブル信号ＢＷＥＮ１を第１期間遅延させる。なお、遅延回路５０及び５１、並びに、ＢＷＥＮ２＿ＣＡＤ生成回路５３は、制御回路１４外に設けられても良い。
【００７８】
ＢＷＥＮ２＿ＣＡＤ生成回路５３は、カラムアドレスＣ＿ＡＤ及びライトイネーブル信号ＢＷＥＮ２を受信すると、カラムに対応する制御信号ＢＷＥＮ２＿＜Ｃ＿ＡＤ＞を生成し（アサートし）、ページバッファ２５に送信する。ページバッファ２５は、制御信号ＢＷＥＮ２＿＜Ｃ＿ＡＤ＞に基づいて、ページバッファ２５内の指定された領域にライトデータを格納する。その後、ライトデータは、ＥＣＣエンコーダ３２に送信され、パリティビットが付与される。
【００７９】
遅延回路５１は、ライトイネーブル信号ＢＷＥＮ２を第２期間遅延させたライトイネーブル信号ＢＷＥＮＳを、例えばライトドライバ２３内に設けられたライトパルス生成回路５４に送信する。遅延回路５１は、例えばＥＣＣエンコーダ３２によるパリティビット生成が終了した後に、ライトドライバ２３がライトパルスの印加を開始するように、ライトイネーブル信号ＢＷＥＮ２を第２期間遅延させる。
【００８０】
例えばカラムデコーダ１３内に設けられた遅延回路５２は、ライトパルス生成回路５４がライトイネーブル信号ＢＷＥＮＳを受信するタイミングに合わせるため、カラムアドレスＣ＿ＡＤを、第３期間遅延させた後、ライトパルス生成回路５４に送信する。ライトパルス生成回路５４は、ライトイネーブル信号ＢＷＥＮＳとカラムアドレスＣ＿ＡＤとに基づいてライトパルス（参照符号“WP”）を生成する。
【００８１】
２．３  ＳＷＢ生成回路
次に、ＳＷＢ生成回路について、図９を用いて説明する。本実施形態におけるＳＷＢ生成回路は、ライトデータ書き込みの場合に生成される（アサートされる）制御信号ＢＷＥＮ２＿＜Ｃ＿ＡＤ＞に着目して、制御信号ＳＷＢを生成する。ＳＷＢ生成回路は、例えば制御回路１４内に設けれ、マルチプレクサ２６を制御するための制御信号ＳＷＢを生成する。図９の例では、制御信号ＳＷＢがＬｏｗ（“Ｌ”）レベルの場合、マルチプレクサ２６は、第１入力端子を選択して、ライトドライバ２３とＥＣＣエンコーダ３２とを接続する。また、制御信号ＳＷＢがＨｉｇｈ（“Ｈ”）レベルの場合、マルチプレクサ２６は、第２入力端子を選択して、ライトドライバ２３とページバッファ２５とを接続する。
【００８２】
図９に示すように、ＳＷＢ生成回路６０は、３つのＮＡＮＤ回路６１〜６３、ＮＯＲ回路６４、及びインバータ６５を含む。
【００８３】
ＮＡＮＤ回路６１の第１入力端子には、制御信号ＢＷＥＮ２＿＜Ｃ＿ＡＤ＞が入力され、第２入力端子は、ＮＯＲ回路６４の出力端子に接続される。ＮＡＮＤ回路６１の出力端子は、ＮＡＮＤ回路６２の第１入力端子に接続される。
【００８４】
ＮＡＮＤ回路６２の第２入力端子は、ＮＡＮＤ回路６３の出力端子に接続される。ＮＡＮＤ回路６２の出力端子は、ＮＡＮＤ回路６３の第１入力端子及びインバータ６５の入力端子に接続される。
【００８５】
ＮＯＲ回路６４の第１入力端子には、リセット信号ＲＥＳＥＴが入力され、第２入力端子には、制御信号ＡＣＴ＿ＰＵＬＳＥが入力される。リセット信号ＲＥＳＥＴは、ＳＷＢ生成回路６０をリセット状態にするための信号であり、“Ｈ”レベルでアサートされる。制御信号ＡＣＴ＿ＰＵＬＳＥは、制御回路１４がアクティブコマンドを受信した際、一定期間、“Ｈ”レベルにされる信号である。ＮＯＲ回路６４の出力端子は、ＮＡＮＤ回路６３の第２入力端子に接続される。
【００８６】
インバータ６５から出力される信号が、制御信号ＳＷＢとして、マルチプレクサ２６に送信される。
【００８７】
なお、図９は、ＳＷＢ生成回路を構成するラッチ回路の一例を示しているが、これに限定されない。制御信号ＢＷＥＮ２＿＜Ｃ＿ＡＤ＞及び制御信号ＡＣＴ＿ＰＵＬＳＥに応じて、セットとリセットとが実行されるＳＲラッチ回路であれば良い。
【００８８】
次に、ＳＷＢ生成回路６０の真理値表を図１０に示す。なお、図１０の例では、リセット信号ＲＥＳＥＴは、“Ｌ”レベルとされている。
【００８９】
図１０に示すように、制御信号ＡＣＴ＿ＰＵＬＳＥ及び制御信号ＢＷＥＮ２＿＜Ｃ＿ＡＤ＞がともに“Ｌ”レベルの場合、制御信号ＳＷＢは前の状態を保持する。そして、制御信号ＢＷＥＮ２＿＜Ｃ＿ＡＤ＞が“Ｈ”レベルの場合、制御信号ＳＷＢは“Ｌ”レベルとされ、制御信号ＡＣＴ＿ＰＵＬＳＥが“Ｈ”レベルの場合、制御信号ＳＷＢは“Ｈ”レベルとされる。本実施形態では、制御信号ＡＣＴ＿ＰＵＬＳＥ及び制御信号ＢＷＥＮ２＿＜Ｃ＿ＡＤ＞がともに“Ｈ”レベルにされる状態は生じない。
【００９０】
例えば、制御回路１４は、アクティブコマンドを受信すると、制御信号ＡＣＴ＿ＰＵＬＳＥを一旦“Ｈ”レベルにする。このとき、ＳＷＢ生成回路６０は、制御信号ＳＷＢを“Ｈ”レベルにする。その後、制御回路１４は、制御信号ＡＣＴ＿ＰＵＬＳＥを“Ｌ”レベルにし、ＳＷＢ生成回路６０は制御信号ＳＷＢを“Ｈ”レベルに保持する。この状態で、例えば書き戻し動作が実行される。そして、ライトデータを書き込む場合、制御信号ＢＷＥＮ２＿＜Ｃ＿ＡＤ＞が“Ｈ”レベルにされるため、ＳＷＢ生成回路６０は、制御信号ＳＷＢを“Ｌ”レベルにする。この状態で、ライトデータの書き込みが実行される。
【００９１】
２．４  本実施形態に係る効果
本実施形態に係る構成を、第１実施形態に適用できる。これにより、第１実施形態と同様の効果を得ることができる。
【００９２】
３．変形例
上記実施形態に係る半導体記憶装置は、複数のメモリセル（ＭＣ＠図２）を含むメモリセルアレイ（１０＠図１）と、複数のメモリセル（ＭＣ＠図２）に外部から入力された書き込みデータ（ライトデータ）を書き込む場合に誤り訂正符号を生成するエンコーダ（３２＠図１）、及び複数のメモリセル（ＭＣ＠図２）からデータを読み出す場合に誤り訂正符号（パリティビット）に基づいて複数のメモリセル（ＭＣ＠図２）から読み出されたデータの訂正処理を行うデコーダ（３１＠図１）を含むＥＣＣ(Error checking and correcting)回路（２４＠図１）と、書き込みデータ、訂正処理により訂正された訂正データ、及び訂正処理に使用された誤り訂正符号を記憶可能なページバッファ（２５＠図１）と、第１入力端子がエンコーダに接続され、第２入力端子がページバッファに接続され、出力端子がメモリセルアレイに接続され、複数のメモリセルに書き込みデータを書き込む場合に第１入力端子が選択され、複数のメモリセルに訂正データを書き込む場合に第２入力端子が選択されるマルチプレクサ（２６＠図１）と、を含む。
【００９３】
上記実施形態を適用することにより、処理能力を向上できる半導体記憶装置を提供できる。なお、実施形態は上記説明した形態に限定されるものではなく、種々の変形が可能である。
【００９４】
上記各実施形態では、半導体記憶装置として、ＳＴＴ−ＭＲＡＭを例に挙げて説明したが、これに限定されない。例えば、ＭＲＡＭと同様の抵抗変化型メモリ、例えばＲｅＲＡＭ（resistive random access memory）、ＰＣＲＡＭ（phase-change random access memory）等のように抵抗変化を使用してデータを記憶する素子を有する半導体記憶装置全般に適用可能である。また、揮発性メモリ、不揮発性メモリを問わず、ＥＣＣ回路を搭載し、読み出し時にエラーがあった場合、その情報に基づき直ちにメモリセルへの書き戻し動作が行われる半導体記憶装置に適用可能である。
【００９５】
更に、上記実施形態における「接続」とは、間に例えばトランジスタあるいは抵抗等、他の何かを介在させて間接的に接続されている状態も含む。
【００９６】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００９７】
１…半導体記憶装置、１０…メモリセルアレイ、１１…ロウデコーダ、１２…カラム制御回路、１３…カラムデコーダ、１４…制御回路、１５…ＣＡ入力回路、１６…アドレスレジスタ、１７…コマンド回路、１８…ＤＱ回路、２１、２１ａ、２１ｂ…カラム選択回路、２２…センスアンプ、２３…ライトドライバ、２４…ＥＣＣ回路、２５…バッファ、２６…マルチプレクサ、３１…ＥＣＣデコーダ、３２…ＥＣＣエンコーダ、４０…ＭＴＪ素子、４１…選択トランジスタ、５０〜５２…遅延回路、５３…ＢＷＥＮ２＿ＣＡＤ生成回路、５４…ライトパルス生成回路、６０…ＳＷＢ生成回路、６１〜６３…ＮＡＮＤ回路、６４…ＮＯＲ回路、６５…インバータ、１００…ホスト。
【図１】
2018152146.tif 000003
【図２】
2018152146.tif 000004
【図３】
2018152146.tif 000005
【図４】
2018152146.tif 000006
【図５】
2018152146.tif 000007
【図６】
2018152146.tif 000008
【図７】
2018152146.tif 000009
【図８】
2018152146.tif 000010
【図９】
2018152146.tif 000011
【図１０】
2018152146.tif 000012