メモリセルに記憶されるように適応された第1のデータを前記メモリセルに予め記憶されている第2のデータと比較するように構成された比較ブロックを備えるメモリ回路であって、前記比較ブロックが、前記第2のデータが前記第1のデータに一致しない場合は前記第2のデータが記憶される前記メモリセルのアドレスを記憶するようにさらに構成され、前記メモリセルが次に続く書込みサイクル中に書き込まれる、メモリ回路。前記アドレスがタグメモリに記憶される、請求項1に記載のメモリ回路。メモリアレイと、前記メモリアレイと前記比較ブロックとの間に結合された書込みブロックと、前記メモリアレイと前記比較ブロックとの間に結合され、前記第2のデータを検知するように適応された読出しブロックとをさらに備える、請求項1に記載のメモリ回路。前記メモリへの外部のデバイスによる通常の書込み動作のために前記メモリセルがアクセスされていないときに前記第2のデータの逆を前記メモリセルに記憶するように構成された制御ロジックをさらに備える、請求項1に記載のメモリ回路。前記メモリセルがDRAM、SRAM、ROM、PROM、EEPROM、フラッシュ、FeRAM、PRAM、MRAMまたはSTTMRAMのセルである、請求項1に記載のメモリ回路。前記メモリアレイが複数の前記メモリセルに結合された少なくとも1つの列を備え、前記列が第1の信号線および第2の信号線を備え、前記メモリセルが、前記第1の信号線に結合された第1の電流搬送端子と、前記第2の信号線に結合された第2の電流搬送端子と、ワード線に結合された制御端子とを備える、請求項3に記載のメモリ回路。前記メモリセルが、前記メモリセルの前記第1の電流搬送端子に結合された第1の端子を有する磁気トンネル接合、および前記不揮発性メモリセルの前記第2の電流搬送端子に結合された第1の電流搬送端子と、前記不揮発性メモリセルの前記制御端子に結合されたゲート端子と、前記磁気トンネル接合の第2の端子に結合された第2の電流搬送端子とを有する第1のトランジスタをさらに備える、請求項6に記載のメモリ回路。メモリ回路における書込み動作中に書込みエラーを訂正する方法であって、書込み動作中に、メモリセルに記憶されるように適応された第1のデータを前記メモリセルに予め記憶されている第2のデータと比較するステップと、前記第2のデータが前記第1のデータに一致しない場合は前記第2のデータが記憶される前記メモリセルのアドレスを記憶するステップと、前記書込みエラーを訂正するために次に続く書込みサイクル中に前記メモリセルに書き込むステップとを備える方法。前記メモリセルの前記アドレスをラッチするステップと、前記第1のデータをラッチするステップと、前記メモリセルの前記アドレスにおいて前記第1のデータをメモリアレイに書き込むステップと、前記書込み動作中に前記第2のデータを検知するステップとをさらに備える、請求項8に記載の方法。メモリ回路において書込み動作中に書込みエラーを訂正する方法であって、書込み動作中に、メモリセルに記憶されるように適応された第1のデータを前記メモリセルに予め記憶されている第2のデータと比較するステップと、前記第2のデータが前記第1のデータに一致しない場合は前記第2のデータを反転するステップと、前記書込みエラーを訂正するために、前記反転された第2のデータを前記第2のデータが前記第1のデータに一致しない場合は前記第2のデータが記憶される前記メモリセルのアドレスに書き込むステップとを備える方法。前記メモリセルの前記アドレスをラッチするステップと、前記第1のデータをラッチするステップと、前記第1のデータを前記メモリセルの前記アドレスにおいてメモリアレイに書き込むステップと、前記書込み動作中に前記第2のデータを検知するステップとをさらに備える、請求項10に記載の方法。メモリ回路における書込み動作後に書込みエラーを訂正する方法であって、書込み動作後に前記第2のデータが第1のデータに一致しない場合は第2のデータが記憶されるメモリセルのアドレスをロードするステップと、前記第2のデータを検知するステップと、前記第2のデータを反転するステップと、前記書込みエラーを訂正するために、前記反転された第2のデータを前記第2のデータが記憶されている前記メモリセルのアドレスに書き込むステップとを備える方法。本発明の一実施形態によれば、メモリ回路は、部分的に、メモリセルに記憶されるように適応された第1のデータをメモリセルに予め記憶されている第2のデータと比較するように構成された比較ブロックを含む。比較ブロックは、第2のデータが第1のデータに一致しない場合は第2のデータが記憶されるメモリセルのアドレスを記憶するようにさらに構成される。メモリセルは、次に続く書込みサイクル中に書き込まれる。一実施形態では、アドレスはタグメモリに記憶される。いくつかの実施形態では、メモリ回路は、部分的に、メモリアレイ、書込みブロックおよび読出しブロックをさらに含む。書込みブロックは、メモリアレイと比較ブロックとの間に結合される。読出しブロックは、読出しブロックが第2のデータを検知するように適応されるようにメモリアレイと比較ブロックとの間に結合される。いくつかの実施形態では、メモリ回路は、外部のデバイスがメモリへの通常の書込み動作のためにメモリセルにアクセスしていないときにメモリセルに第2のデータの逆を記憶するように構成された制御ロジックをさらに含む。一実施形態では、メモリセルは、DRAM、SRAM、ROM、PROM、EEPROM、フラッシュ、FeRAM、PRAM、MRAM、またはSTTMRAMのセルである。一実施形態では、メモリアレイは、部分的に、複数のメモリセルに結合された少なくとも1つの列を含む。列は、部分的に、第1の信号線および第2の信号線を含む。メモリセルは、部分的に、第1の信号線に結合された第1の電流搬送端子、第2の信号線に結合された第2の電流搬送端子、およびワード線に結合された制御端子を含む。いくつかの実施形態では、メモリセルは、部分的に、磁気トンネル接合および第1のトランジスタをさらに含む。磁気トンネル接合は、メモリセルの第1の電流搬送端子に結合された第1の端子を有する。第1のトランジスタは、不揮発性メモリセルの第2の電流搬送端子に結合された第1の電流搬送端子、不揮発性メモリセルの制御端子に結合されたゲート端子、および磁気トンネル接合の第2の端子に結合された第2の電流搬送端子を有する。本発明の一実施形態によれば、メモリ回路における書込み動作中に書込みエラーを訂正する方法は、部分的に、書込み動作中に、メモリセルに記憶されるように適応された第1のデータをメモリセルに予め記憶されている第2のデータと比較するステップと、第2のデータが第1のデータに一致しない場合は第2のデータが記憶されるメモリセルのアドレスを記憶するステップと、書込みエラーを訂正するために次に続く書込みサイクル中にメモリセルに書き込むステップとを含む。いくつかの実施形態では、本方法は、部分的に、メモリセルのアドレスをラッチするステップと、第1のデータをラッチするステップと、第1のデータをメモリセルのアドレスにおいてメモリアレイに書き込むステップと、書込み動作中に第2のデータを検知するステップとをさらに含む。本発明の一実施形態によれば、メモリ回路における書込み動作中に書込みエラーを訂正する方法は、部分的に、書込み動作中に、メモリセルに記憶されるように適応された第1のデータをメモリセルに予め記憶されている第2のデータと比較するステップと、第2のデータが第1のデータに一致しない場合は第2のデータを反転するステップと、書込みエラーを訂正するために、反転された第2のデータを第2のデータが第1のデータに一致しない場合は第2のデータが記憶されるメモリセルのアドレスに書き込むステップとを含む。いくつかの実施形態では、本方法は、部分的に、メモリセルのアドレスをラッチするステップと、第1のデータをラッチするステップと、第1のデータをメモリセルのアドレスにおいてメモリアレイに書き込むステップと、書込み動作中に第2のデータを検知するステップとをさらに含む。本発明の一実施形態によれば、メモリ回路における書込み動作の後に書込みエラーを訂正する方法は、部分的に、書込み動作の後に第2のデータが第1のデータに一致しない場合は第2のデータが記憶されるメモリセルのアドレスをロードするステップと、第2のデータを検知するステップと、第2のデータを反転するステップと、書込みエラーを訂正するために、反転された第2のデータを第2のデータが記憶されるメモリセルのアドレスに書き込むステップとを含む。書込み動作中に、メモリセルは、たとえ同じ安定した状態の下ででも、それぞれ異なる場合にランダムにそれぞれ異なる書込み時間を示す可能性がある。そのような挙動は、工場試験中にふるい落とされる可能性がある摩耗機構から生じる可能性があるのではなく、メモリセルの書込み特性の確率的挙動から生じる。非確率的な理由から欠陥があると判定されたメモリセルは、冗長動作中に欠陥セルを冗長セルオンチップと取り替えることにより、不良チップを廃棄するかまたは欠陥を修理するために、工場で試験することによってセルの母集団から除去することができる。しかし、残余の母集団は、依然として確率的挙動を示す可能性がある。代替として、工場から使用現場への出荷後、チップがエンドユーザによって正規に使用されるときに、メモリシステムは、低速書込みセルに対応するアドレスロケーションにフラグを立てることができ、それらのセルを使用可能なアドレス空間からマップアウトすることができる。マップアウトされたセルは常態に復することが期待されないので、低速書込みセルのエンドユーザマッピングによって、時間の経過につれて使用可能なアドレスロケーションの数が減少していくことになる。したがって、確率的セル挙動は、結果として、限られた冗長要素を激減させるために工場での生産を低下させるか、または使用現場において時間の経過につれて使用可能なアドレス空間を激減させることになる。具体的には、書込み動作中に、メモリセルは、安定した環境状態の下でそれぞれ異なる場合にランダムにそれぞれ異なる時間を示す可能性がある。この挙動は、そうでなければ欠陥がないと判定されるべきセル母集団に関しても、任意の場合にデータをメモリシステムに書き込んでいる間にエラーを生じさせる可能性がある。この確率的セル挙動の問題を克服するために新しいメモリ回路の解決策が必要とされる。本発明の諸実施形態によれば、タグメモリは、確率的挙動のために適切に書き込を失敗したデータのアドレスロケーションを記憶する。記憶されたタグアドレスロケーションは、ユーザが正規の書込み動作を開始した後にデータを再書き込みし訂正するために使用することができる。代替として、本発明は、セルが確率的挙動のために割当て時間内に書き込を失敗したときに、ユーザが開始した正規の書込み動作中にユーザに隠して書込みを実行することができる。図6は、本発明の一実施形態による、メモリシステムおよび関連回路100の例示的ブロック図である。メモリシステム100は、メモリアレイ102、行デコーダ110、列デコーダ120、アドレス指定回路130、制御ロジック140、検知および書込みドライバ150、隠し読出し比較160、書込みエラーアドレスタグメモリ170、およびデータ入力出力180を含む。アドレス指定回路130は、アドレスバッファおよびラッチ132、ならびにプリデコード134をさらに含む。データ入力出力180は、入力バッファデータインラッチ182、およびデータアウトラッチ出力バッファ184をさらに含む。本明細書では、検知および読出しという用語は、検知するおよび読み出すという用語と同様に、互換可能に使用することができることに留意されたい。図6を参照すると、メモリアレイ102は、多くの列、ワード線、および列とワード線の交差点に配置されたメモリセルを含む。各メモリセルは、データビットを記憶することができる。メモリセルは、技術に応じて、DRAM、SRAM、ROM、PROM、EEPROM、フラッシュ、FeRAM、PRAM、MRAMまたはSTTMRAMのセルでよい。例として、以下で説明する諸実施形態のうちのいくつかは、前述のSTTMRAMセルを使用する。行デコーダ110は、プリデコード134によって駆動されるその入力バスによって判定されるワード線のうちの1つを選択し駆動する。列デコーダ120は、やはりプリデコード134によって駆動されるその入力バスによって判定される列のうちの1つを選択し駆動する。プリデコード134は、アドレスバッファおよびラッチ132からのアドレスバス信号、ならびに制御ロジックからのアドレスイネーブル信号に応答して行および列デコーダ入力バス信号を駆動する。アドレスバッファおよびラッチ132は、アドレスバスAからの信号n0に応答し、データビットのロケーションに対応するメモリシステムの外から受信されたn1のアドレス信号をラッチすることができる。アドレスバッファおよびラッチはまた、制御ロジックに応答する。制御ロジック140は、図6において参照されるように、コマンドバスCMDm0上でメモリシステムの外から信号を受信し、やはり隠し読出し比較160からのエラーフラグ165に応答する。制御ロジックは、検知および書込みドライバ150にRW制御信号、データ入力出力180にDQ制御信号、および書込みエラーアドレスタグメモリ170に制御信号を送信する。図6を参照すると、書込みエラーアドレスタグメモリ170は、以下でさらに詳細に説明するように、制御ロジック140およびエラーフラグ165に応答して双方向バスを介してアドレスバッファおよびラッチ132からアドレス信号を送受信する。書込みエラーアドレスタグメモリ170は、確率的挙動を示し、メモリシステムの書込みサイクルの下で首尾よく書き込まないメモリセルのアドレスを記憶することができる。書込みエラーアドレスタグメモリ170に記憶されているアドレスは、初めにメモリシステムに入力されたデータを適切に表すために論理的に反転される必要があるメモリに記憶されているデータビットを表す。書込みエラーアドレスタグメモリは、不揮発性メモリ、FIFO、SRAM、またはDフリップフロップレジスタでよい。書込みエラーアドレスタグメモリ170内のメモリセルは、メモリアレイ102内のメモリセルと同じ技術タイプおよびまたは設計に基づいてよく、別の技術タイプおよびまたは設計のものでもよい。書込みエラーアドレスタグメモリ170内のメモリの幅は、アドレス信号の数に対応してよい。書込みエラーアドレスタグメモリ170内のメモリの深さは、再書込み動作ごとに所望されるまたは必要とされるエラー訂正可能ビットの数に依存してよい。例えば、確率的書込みエラーレートが平均メモリセル母集団に対して高い場合は、書込みエラーアドレスタグメモリの深さは、エラーレートが小さい場合より大きいように選ぶことができる。入力バッファデータインラッチ182は、メモリシステムの外から双方向バスDQx0上でデータを受信しラッチし、そのデータを、双方向バスを介して、以下でさらに詳しく説明するように、検知および書込みドライバの間に組み込まれている隠し読出し比較160に送信する。データアウトラッチ出力バッファ184は、検知および書込みドライバ150から双方向バス上でデータを受信しラッチし、データを、双方向バスDQx0を介してメモリシステムの外に送信する。隠し読出し比較160は、以下でさらに詳しく説明するように、検知回路と書込みドライバとの間に組み込まれる。図7は、本発明の一実施形態による、メモリシステム100および関連書込みおよび読出し回路の一部の概略図200である。概略図200は、メモリアレイタイルまたはMAT102、ローカル列選択回路104、検知および書込みドライバ150、ならびに、隠し読出し比較160を含むように示されている。概略図200に示す実施形態は、STTMRAMセルを含むが、その実施形態によって限定されず、上記で説明したように他のメモリタイプを含んでよい。MAT102は、その選択トランジスタが、図6に関連して上記で説明した行デコーダ110によって駆動されるワード線WL0WLnに結合されているいくつかのSTTMRAMセル30を含む。STTMRAMセルはまた、メモリアレイ102内の列の対に対応するソース線210とビット線212の対に結合される。MATは、やはりメモリアレイ102にあるLCS104によって選択可能な複数のSLとBLの対を含む。LCSは、列選択215、プリチャージ235、分離トップ信号、および分離ボトム信号の制御の下で、MAT102内の選択されたSLとBLの対をMSL線220とMBL線230の対に結合するnチャネル選択トランジスタの対を含む選択回路を含む。LCSは、それぞれのISOT信号またはISOB信号の1つをイネーブルにすることにより、LCSの上の隣接するMAT102を結合するかまたはLCSの下の隣接するMAT102を結合するかを判定する。図7に示す例では、上のMATは、ISOTをイネーブルにし、ISOBをディセーブルにすることにより選択される。複数のSLとBLの対の1つは、選択されたSLとBLの対をそれぞれMSL線およびMBL線に結合するために、列デコーダによって駆動されるCS信号によって選択される。PREがディセーブルにされたときには、SLBLおよびそれぞれのMSLMBL線は、書込み動作モードまたは読出し動作モードの準備ができている。MSL220およびMBL230は、LCS104から検知回路255および書込みドライバ250に結合される。代替実施形態では、当技術分野では一般に知られているように、SL信号およびMSL信号は、いくつかのROM、PROM、EPROM、EEPROM、およびフラッシュなど、機能するために相補列対を必要とせずそのソースがMATの中のアースに結合されたメモリセルに、単一の線列を提供するために、列および関連回路から省かれてよい。図7に示すように、書込みドライバ250は、書込みドライバのデータ入力に結合された隠し読出し比較160から制御ロジックによって駆動されるイネーブル書込み信号260および出力に結合される。書込みモード動作中に、書込みドライバ250は、ENWの制御下で、後ほど詳しく説明するように、相補的なやり方でMSL線とMBL線を駆動する。ENWがディセーブルにされたときは、書込みドライバ250は、MSL線およびMBL線を駆動しない。図7では、検知回路255は、イネーブル読出し信号240によってイネーブルにされ、電源に結合されたトランジスタM5およびアースに結合されたトランジスタM3を含む。M5およびM3は、それぞれENR信号およびそのコンプリメントに結合される。ENR信号およびENW信号は、同時にはイネーブルにされない。ENRがハイにイネーブルにされたときは、図7に示すように、トランジスタM3はオフであり、ENRによって制御されるトランジスタM4は、MBL信号を電流ミラーM1およびM2に渡し、トランジスタM5は、MSL220を電源に結合する。電流ID1は、MBLにおいてトランジスタM4を電流ミラーのトランジスタM1に流れる。図7はまた、信号IREF、および電流ミラーのM2を流れる電流ID2に結合された検知増幅器245を示す。SAは、ID2をIREFと比較し、双方向バスを介して結合されたデータ読出し線285上でデータアウト信号をデータアウトラッチ出力バッファ184および隠し読出し比較160に送出する。ENRがローにディセーブルにされたときは、M4はMBL230を電流ミラーから分離し、M3は電流ミラー入力をアース電圧に結合する。SA245はまた、MAT102の中にローカルに配置されてもよく、グローバル検知アンプおよびグローバル書込みドライバと共に配置されてもよい。隠し読出し比較160は、図7に示すように、排他的論理和またはXOR260、インバータおよびマルチプレクサ270を含む。隠し読出し比較は、ENW260および再書込み信号290によって制御され、これらは両方とも制御ロジック140から送信される。XOR260の入力は、検知回路255からのDR285、およびENWに応答するラッチ182における入力バッファデータからのデータ書込みDW280である。マルチプレクサは、その2つの入力、反転されたDR285信号またはDW信号のどちらがその出力YからREWに応答する書込みドライバの入力Dへ通過するか選択する。隠し読出し比較160はまた、MAT102の中にローカルに配置されてもよく、グローバル検知アンプおよびグローバル書込みドライバと共に配置されてもよい。図8は、図7において前に言及された書込みドライバ250に対応する本発明の一実施形態による、メモリシステムおよび関連書込み回路の一部の概略図300である。図8に示すように、書込みドライバ250は、ENW260の制御下でそれぞれSL信号およびBL信号を駆動する2つのインバータドライバ351および352を含む。SLはMSLに結合され、一方、反転されたBLはMBLに結合される。ENがハイにイネーブルにされたときは、隠し読出し比較160からの入力Dの反転バージョンはBL信号に結合され、一方、入力Dの非反転バージョンはSL信号に結合され、BL信号およびSL信号は論理コンプリメントである。ENがローにディセーブルにされたときは、両方のインバータドライバ351および352内のトランジスタは、入力Dの状態に関係なくオフであり、MSL線およびMBL線の制御は検知回路に戻る。各書込みサイクルの後に、同じメモリロケーションの隠し読出しサイクルが続く。隠し読出し動作からのデータは、書き込まれたばかりのデータビット値と比較される。データが一致する場合は、書込みサイクルは終了する。データが一致しない場合は、ERRORフラグが生成され、XORの出力はアクティブハイになる。このロケーションのためのメモリアドレスは、後での再書込み動作のために、タグを付けられる、または書込みエラーアドレスタグメモリに記憶される。本発明の一実施形態によれば、前述のメモリアレイはまた、以下の動作を実行するための回路を含む。前記データビットの前記アドレスを前記アドレス指定回路にラッチすること、前記データビットを前記データ入力出力回路にラッチすること、前記データビットを前記データビットの前記アドレスにおいて前記メモリアレイに書き込むこと、前記データビットの前記アドレスにおいて前記メモリアレイからデータアウトビットを読み出すこと、前記データビットがデータアウトビットに等しいかどうか判定するために前記データビットを前記データアウトビットと比較すること、前記比較するステップが、前記データビットが前記データアウトビットに等しくないと判定した場合は、前記データビットの前記アドレスを前記書込みエラーアドレスタグメモリに書き込むこと、および前記比較するステップが、前記データビットが前記データアウトビットに等しいと判定した場合は、前記データビットの前記アドレスを前記書込みエラーアドレスタグメモリに書き込まないこと。図9Aは、本発明の一実施形態による、メモリシステムの書込み方法の一部を例示する例示的流れ図400である。書込み動作410の開始後、アドレスおよびデータをラッチするステップ420中に、データは、ラッチ184において入力バッファデータにラッチされ、隠し読出し比較160内のマルチプレクサ270を介して書込みドライバ250の入力Dに渡される。さらに、アドレスおよびデータをラッチするステップ420中に、データビットのアドレスは、アドレスバッファおよびラッチ132にラッチされ、次にはメモリアレイにおいてワード線および列を選択する行デコーダおよび列デコーダのための入力バスを駆動するプリデコード134に渡される。次のステップは、ENWをイネーブルにすることによりメモリアレイ内の選択されたアドレスにおけるメモリセルにデータを書き込むステップ430である。図9Aが続けて示すように、データ書込みステップに続いて、隠しデータ読出しステップ440が同じアドレスロケーション上で実行され、データアウトビットを隠し読出し比較160に渡す。読出しは、CMDバスを介してメモリシステムに命令する必要なしに書込み動作の一部として自動的に実行されるので隠される。次に、データインデータラッチデータ読出しステップ450中に、ラッチ182内の入力バッファデータからのデータビットが、データビットがデータアウトビットに等しいかどうか判定するために、SA245からのデータアウトビットと比較される。論理比較が、隠し読出し比較160内の排他的論理和またはXOR275によって行われる。データビットがデータアウトビットに等しい場合は、書込み動作は首尾よく行われ、次の動作470が進行することができる。しかし、データビットがデータアウトビットに等しくない場合は、排他的論理和またはXORは、コントローラ140に、タグを付けられたアドレスをアドレスバッファおよびラッチから、双方向バスを介して、アドレスがそこに書き込まれ、再書込み動作が以下で説明するように実行されることが可能になるまで記憶される書込みエラーアドレスタグメモリ170に渡すようにシグナリングするエラーフラグ165をセットする。動作460は、透明な動作であり、次の記憶サイクルの初めに容易に行うことができる。これは、次の記憶動作470を遅らせない。他の実施形態では、全書込みサイクルが追加の隠し書込み動作を含むように拡大されることが可能である。この場合、書込み訂正動作は、ユーザにとって透明でよい。書込みタイミング仕様は、この透明な再書込み時間を含むように作成することができる。したがって、書込みサイクル時間は、再書込みが必要とされてもされなくても同じでよい。図9Bは、本発明の一実施形態による、メモリシステムの書込み方法の一部を例示する例示的流れ図500である。図9Bは、ステップ510から550までを示し、これらのステップは図9Aに示すステップ410から450までと同じであり、再度説明はしない。ステップ560では、メモリアレイ内の現在のアドレスロケーションにおけるデータアウトがSA出力DR285に渡される。次に、反転データ読出しステップ560が、データアウトビットを反転し、反転されたデータアウトビットを制御ロジックからのREW信号に応答するマルチプレクサ270を介して書込みドライバ250の入力Dに向ける、隠し読出し比較160におけるインバータによって行われる。次に、今訂正された反転データアウトビットをメモリアレイ内の現在のアドレスに書き込むために、反転されたデータを書き込むステップ570が実行される。次いで、次の動作580を行うことができる。メモリシステムの仕様に応じて、タグを付けられたアドレスは、プロセッサまたはシステム周辺部がメモリにアクセスしていない都合のいいときに、タグを付けられたアドレスに配置されているメモリセルを再書込みするために使用することができる。再書込みサイクル中は、タグを付けられたアドレス内のデータが反転されるだけである。データを反転するためには、メモリビットは、隠し読出し特徴を使用して最初に読み出されなければならず、反対のデータがセルに書き込まれる。したがって、セルの前の確率的な長い書込み挙動によって生じた初めの書込みエラーが訂正される。代替として、データは、再書込みサイクルが進行中にメモリがアクセス停止信号をプロセッサまたはマスターシステムに送信するハンドシェーキングシステムにおいて直ちに訂正することができる。再書込み動作が完了した後は、再書込み完了信号をマスターシステムに送信することができる。本発明の一実施形態によれば、前述のメモリアレイはまた、以下の動作を実行するための回路を含む。前記データビットの前記アドレスを前記書込みエラーアドレスタグメモリから前記アドレス指定回路にロードすること、前記データビットの前記アドレスにおいて前記メモリアレイ内のデータアウトビットを読み出すこと、前記隠し読出し比較回路内の前記データアウトビットを反転すること、および前記反転されたデータアウトビットを前記データビットの前記アドレスにおいて前記メモリアレイに書き込むこと。図10は、本発明の一実施形態による、メモリシステムの再書込み方法の一部を例示する例示的流れ図600である。再書込み動作の開始610後、書込みアドレスタグメモリからアドレス指定回路にエラーアドレスをロードするステップ620中に、書込みエラーアドレスタグメモリ170からのタグを付けられたアドレスが、双方向バスを介してアドレスバッファおよびラッチ132にロードされる。次いで、前にタグを付けられたアドレスにおけるデータがデータ読出しステップ630中に読み出される。メモリアレイ内のタグを付けられたアドレスロケーションにおけるデータアウトがSA出力DR285に渡される。次に、制御ロジックからのREW信号に応答して、データアウトビットを反転し、反転されたデータアウトビットをマルチプレクサ270を介して書込みドライバ250の入力Dに向ける隠し読出し比較160内のインバータによってデータを反転するステップ640が実行される。次に、今訂正され反転されたデータアウトビットをメモリアレイ内の前にタグを付けられたアドレスに書き込むために、反転されたデータを書き込むステップ650が実行される。次いで、次の動作660を行うことができる。書込みエラーアドレスタグメモリに記憶されている前にタグを付けられたアドレスによって占められていたメモリ空間は、今や、次に続く書込みサイクル上の新しいタグを付けられたアドレスにとって利用可能にすることができる。本発明の上記の諸実施形態は、例示的であって、限定的ではない。様々な代替形態および同等形態が可能である。本発明の諸実施形態は、メモリアレイにおいて使用される磁気ランダムアクセスメモリセルのタイプまたは数によって限定されない。本発明の諸実施形態は、磁気トンネル接合を形成するために使用される層の数によって限定されない。本発明の諸実施形態は、磁気メモリセルに印加される電圧レベルによって限定されない。本発明の諸実施形態はまた、書込みまたは再書込み動作中に同じ選択されたメモリセルの記憶要素上で見つけられたデータを書込みおよび再書込みするために使用されるメモリ回路によっても限定されない。本発明の諸実施形態は、磁気トンネル接合デバイスを選択するために使用されるトランジスタのタイプ、PMOS、NMOSなどによって限定されない。本発明の諸実施形態は、本発明を配置することができる集積回路のタイプによって限定されない。本発明の諸実施形態はまた、磁気ランダムアクセスメモリを製造するために使用することができるプロセス技術、例えば、CMOS、バイポーラ、またはBICMOSのいかなる特定のタイプにも限定されない。本明細書で説明した諸実施形態は、メモリ読出しおよび書込み回路を対象としてきたが、それらに限定されない。本明細書で説明した諸実施形態は、メモリセルにデータを記憶することが長い確率的書込み挙動の影響を受けるところならどこででも使用することができ、有用であることが分かるであろう。