(57)【要約】【課題】信頼性の高いメモリモジュールを提供する。【解決手段】基盤上に配置され、外部のメモリコントローラによって制御される複数のメモリデバイスを有するメモリモジュールにおいて、エラーを検出し訂正する機能を有するバッファと、エラーの内容を記憶する不揮発記憶領域とを備えた。【選択図】図１
2009181425.tif 000002
【特許請求の範囲】
【請求項１】
基盤上に配置され、外部のメモリコントローラによって制御される複数のメモリデバイスを有するメモリモジュールにおいて、
エラーを検出し訂正する機能を有するバッファと、
前記エラーの内容を記憶する不揮発記憶領域とを備えたことを特徴とするメモリモジュール。
【請求項２】
基盤上に配置され、外部のメモリコントローラによって制御される複数のメモリデバイスを有するメモリモジュールにおいて、
エラーを検出し訂正する機能を有するバッファと、
前記エラーの内容を記憶する不揮発記憶領域と、
一対のメモリデバイス、及び前記一対のメモリデバイスに接続され、前記一対のメモリデバイスに同時に同じデータを伝送し、該データを読み出す際にエラーが発生していない時は一方のメモリデバイスからのデータを前記バッファに伝送し、エラーが発生した時は他方のメモリデバイスからのデータに切り替えるメモリデバイス選択回路からなるＬ（Ｌは２以上の自然数）組のメモリバンクと、
を備えたことを特徴とするメモリモジュール。
【請求項３】
基盤上に配置され、外部のメモリコントローラによって制御される複数のメモリデバイスを有するメモリモジュールにおいて、
Ｎ（Ｎは３以上の自然数）個のメモリデバイス、及び外部のメモリコントローラに接続され、前記Ｎ個のメモリデバイスに同時に同じデータを伝送し、該データを読み出す際にｂｉｔ毎に多数決を行い多い値を前記メモリコントローラに伝送するＮ重化バッファからなるＭ（Ｍは２以上の自然数）組のメモリバンクと、
前記メモリバンクにデータに差分があった場合に前記メモリバンクからエラー箇所情報が伝送されるエラー取り込みバッファと、
前記エラー取り込みバッファに接続され、前記エラーの内容を記憶する不揮発記憶領域と、
を備えたことを特徴とするメモリモジュール。
【請求項４】
前記バッファは、前記メモリコントローラとの間の信号を授受するメモリコントローラ側ドライバレシーバ回路、前記メモリデバイスとの間の信号を授受するメモリデバイス側ドライバレシーバ回路、前記メモリコントローラ側ドライバレシーバ回路及び前記メモリデバイス側ドライバレシーバ回路に接続されエラーを検出訂正するエラー検出訂正回路と、前記エラー検出訂正回路にエラー訂正を指示するエラー訂正指示回路とを備えたことを特徴とする請求項１から３のいずれか１項記載のメモリモジュール。
【請求項５】
前記エラー検出訂正回路は、エラー検出回路と、入力端子が前記エラー検出回路の出力端子に接続されたエラー訂正スイッチと、入力端子が前記エラー訂正スイッチの出力端子に接続され、複数の２入力イクスクルーシブオアゲートからなる前記エラー訂正回路とを備えたことを特徴とする請求項４記載のメモリモジュール。
【請求項６】
前記エラー訂正スイッチは、一方の入力端子が共通端子に接続され、他方の入力端子が第１の入力端子に接続され、出力端子が第１の出力端子に接続された複数の２入力アンドゲート、及び第２の入力端子と第２の出力端子とを接続するジャンパ線からなるセルを複数組備えたことを特徴とする請求項５記載のメモリモジュール。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリモジュールに関する。
【背景技術】
【０００２】
サーバ、パーソナルコンピュータ、ワークステーション等の情報処理機器のメインメモリ（主記憶）等で使用されるメモリモジュール上のメモリデバイスには、半導体が用いられているが、非常に微細な回路で形成されているので、製造時に微細な欠陥を作ってしまう場合がある。このような欠陥を持つメモリデバイスが搭載されているメモリモジュールを情報処理機器で使用した場合、メモリエラーが発生してしまう。
【０００３】
メモリエラーは、このメモリデバイスのハード的な欠陥の他に、ハード的な問題が無いのに起きるソフトエラー、インターフェースの問題、相性問題、ソケットの接触不良、メモリコントローラ側の誤動作等が考えられる。
【０００４】
サーバ等の信頼性が求められる情報処理機器では、あるデータbit数までのエラーを検出し訂正する機能を持っている事が多い。訂正できるデータbit数はメモリコントローラの性能による。
【０００５】
このエラー検出や、訂正はメモリコントローラ側が行っており、発生したエラーが、メモリモジュール側の問題か、その他の部分の問題か、の切り分けは容易ではなく、複数のメモリモジュールを使用しているシステムでは、どのメモリモジュールの不具合かの切り分けも容易ではない。また、再現性が悪いという問題や再現できないという問題もあり、不具合箇所の特定が難航する場合が多々ある。
そのため、メモリモジュール側でエラーを検出、訂正、記録する方式が望まれている。
【０００６】
図９は、本発明に関連するメモリシステムの概略図である。
同図において、1がメモリデバイス、2が基盤であり、基盤2にメモリデバイス1が実装されて、メモリモジュールを形成している。
3がメモリコントローラであり、矢印はデータ信号の伝送を意味している。ここでは、メモリデバイスとメモリコントローラとの間のデータ信号の伝送は直接行われる場合を図にしている。データ信号数や、データ信号以外の信号や、データ信号以外の信号に関係するデバイスや、コネクタ等の部品は省略している。
同図に示すメモリシステムでは、メモリモジュール上には、エラーを検出、修正、記録する機能は無い。
【０００７】
メモリモジュールに関連する技術の一例が特許文献１〜４に記載されている。
特許文献１のマイクロコンピュータは、機器組み込み制御用の制御プログラムおよび制御データが外部からワード単位で入力され書き込まれるエラー検出訂正機能付きフラッシュメモリと、このエラー検出訂正機能付きフラッシュメモリから記制御プログラムおよび制御データを読み出して実行または出力するＣＰＵとを備えるマイクロコンピュータにおいて、エラー検出訂正機能付きフラッシュメモリが、外部の制御により外部入力のワードから複数バイトを選択して書き込みＣＰＵの制御により複数バイトを読み出しバイト単位でエラー検出訂正をそれぞれ行い出力するものである。
【０００８】
このマイクロコンピュータによれば、制御データのデータ長が１バイトで充分な場合、バイト単位の制御データに対するデータ領域の確保およびアクセスが、１ワード当たり複数バイトずつバイト単位で行われるため、データ領域が従来のマイクロコンピュータに対して複数分の１に縮小し、データ領域内の不使用領域が著しく縮小し、エラー検出訂正機能付きフラッシュメモリが有効利用されるとしている。
【０００９】
特許文献２のメモリデバイスは、コマンド信号に応答するメモリデバイスであって、バンクのそれぞれが複数の主記憶セル及びスペア記憶セルのスペアユニットを含むように構成されたメモリアレイからなる複数のバンクと、第１のバンクにおける第１の主記憶セルのユニットのエラーを検出するための検出器と、主記憶セルの第１のユニットをスペア記憶セルのスペアユニットに自動的に再マッピングするためのコマンド信号に応答するコントローラと、からなるものである。
【００１０】
このメモリデバイスによれば、コマンド信号に応答するメモリデバイスは、メモリアレイの複数バンクを有する。バンクのそれぞれは、複数の主記憶セル及びスペア記憶セルのスペアユニットを有する。検出器は第１のバンクの第１の主記憶セルのユニットにおけるエラーを検出する。コントローラは、メモリデータへのアクセスを中断することなく、コマンド信号に応答して第１の主記憶セルのユニットを自動的に第２の記憶セルのユニットへ再マッピングする。この結果、ハードエラーの訂正ができない等の既存のメモリ方式に見られる欠点がなく、かつスペアメモリのために追加のメモリモジュールを必要としない自己回復メモリを提供することができるとしている。
【００１１】
特許文献３の電気的書換可能型不揮発メモリは、書換頻度の高い高書換頻度データと書換頻度の低い低書換頻度データとを混在して記憶する電気的書換可能型不揮発メモリにおいて、書込対象データが高書換頻度データか低書換頻度データかを識別するデータ識別手段と、このデータ識別手段の識別の結果、書込対象データが高書換頻度データであったときは書込対象データを高信頼性の所定の方法でメモリセルに書込む一方、書込対象データが低書換頻度データであったときは通常の方法でメモリセルに書き込むデータ書込制御手段とを設けたものである。
【００１２】
この電気的書換可能型不揮発メモリによれば、高書換頻度データと低書換頻度データとを電気的書換可能型不揮発メモリに混在して記憶させる場合に、そのデータの書換頻度に応じた方法でデータ書込を行うこととしたので、ごく一部の高書換頻度データの存在を理由に低書換頻度データについて必要以上の信頼性をもった書込・読出処理を行う必要がなく、また、メモリ容量も少なくて済むという効果があるとしている。
【００１３】
特許文献４の主記憶装置は、ＥＣＣ回路を内蔵した主記憶制御装置に制御され、ＥＣＣ回路を使用してデータの誤り検出および訂正を行う主記憶装置において、メモリセルを二重系にし、メモリセルに接続されデータの誤りを検査する誤り検査手段と、メモリセルからの出力データを選択する選択手段とを付加して、誤り検査手段の検査結果により、データを選択するものである。
【００１４】
この主記憶装置によれば、既存のＥＣＣ回路を内蔵した主記憶制御装置を変更することなく流用し、二重化したメモリセルを等価に扱うことにより、一方のメモリセルで２ビット以上のエラーが検出されても他方のメモリセルを用いて処理が継続できる安価で信頼性の高い主記憶装置を提供することができるとしている。
【特許文献１】特開２００２−１６３２４３号公報
【特許文献２】特開２００２−２７９７９５号公報
【特許文献３】特開平６−８３７１６号公報
【特許文献４】特開平９−２８８６１９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
しかしながら、上述した特許文献１〜４に記載の技術では、メモリモジュール側でエラーを検出することは行っておらず、エラー検出精度に改善の余地がある。
そこで、本発明の目的は、信頼性の高いメモリモジュールを提供することにある。
【課題を解決するための手段】
【００１６】
本発明の第１の装置は、基盤上に配置され、外部のメモリコントローラによって制御される複数のメモリデバイスを有するメモリモジュールにおいて、エラーを検出し訂正する機能を有するバッファと、エラーの内容を記憶する不揮発記憶領域とを備えたことを特徴とする。
【００１７】
本発明の第２の装置は、基盤上に配置され、外部のメモリコントローラによって制御される複数のメモリデバイスを有するメモリモジュールにおいて、エラーを検出し訂正する機能を有するバッファと、エラーの内容を記憶する不揮発記憶領域と、一対のメモリデバイス、及び一対のメモリデバイスに接続され、一対のメモリデバイスに同時に同じデータを伝送し、データを読み出す際にエラーが発生していない時は一方のメモリデバイスからのデータをバッファに伝送し、エラーが発生した時は他方のメモリデバイスからのデータに切り替えるメモリデバイス選択回路からなるＬ（Ｌは２以上の自然数）組のメモリバンクと、を備えたことを特徴とする。
【００１８】
本発明の第３の装置は、基盤上に配置され、外部のメモリコントローラによって制御される複数のメモリデバイスを有するメモリモジュールにおいて、Ｎ（Ｎは３以上の自然数）個のメモリデバイス、及び外部のメモリコントローラに接続され、Ｎ個のメモリデバイスに同時に同じデータを伝送し、データを読み出す際にｂｉｔ毎に多数決を行い多い値をメモリコントローラに伝送するＮ重化バッファからなるＭ（Ｍは２以上の自然数）組のメモリバンクと、メモリバンクにデータに差分があった場合にメモリバンクからエラー箇所情報が伝送されるエラー取り込みバッファと、エラー取り込みバッファに接続され、エラーの内容を記憶する不揮発記憶領域と、を備えたことを特徴とする。
【発明の効果】
【００１９】
本発明によれば、メモリモジュール側でエラーを検出し、訂正し、エラーの内容を記憶することにより、発生したエラーがメモリモジュール側か否かの切り分けができ、複数のメモリモジュールを使用しているシステムではどのメモリモジュールの不具合かの切り分けができ、信頼性の高いメモリモジュールの提供を実現することができる。
【発明を実施するための最良の形態】
【００２０】
通常、メモリのエラー検出と訂正とはメモリコントローラによって行われるが、メモリモジュール上にバッファを載せ、そのバッファにエラー検出訂正機能を持たせる。検出したエラー内容はメモリモジュール上に搭載した不揮発記憶領域に記録する様にする。この不揮発記憶領域の内容によりメモリモジュール側の不具合であるかどうかを判断出来る様になる。システム側にエラーを通知する必要がある場合は、故意にエラーを訂正しないでデータをメモリコントローラに伝送したり、データ伝送用とは別のバスを利用してエラー通知を行ったりする。これらの方法により、メモリモジュール上で発生したメモリエラーはメモリモジュール上に記録する事が可能になり、メモリエラー発生時の切り分け作業や解析が容易になる。
【００２１】
本発明に係るメモリモジュールの一実施の形態は、基盤上に配置され、外部のメモリコントローラによって制御される複数のメモリデバイスを有するメモリモジュールにおいて、エラーを検出し訂正する機能を有するバッファと、エラーの内容を記憶する不揮発記憶領域とを備えたことを特徴とする。
【００２２】
上記構成によれば、エラーを検出し訂正する機能を有するバッファと、エラーの内容を記憶する不揮発記憶領域とを備えたことにより、メモリモジュール側でエラーを検出し、訂正し、エラーの内容を記憶することにより、発生したエラーがメモリモジュール側か否かの切り分けができ、複数のメモリモジュールを使用しているシステムではどのメモリモジュールの不具合かの切り分けができ、信頼性の高いメモリモジュールの提供を実現することができる。
【００２３】
本発明に係るメモリモジュールの他の実施の形態は、基盤上に配置され、外部のメモリコントローラによって制御される複数のメモリデバイスを有するメモリモジュールにおいて、エラーを検出し訂正する機能を有するバッファと、エラーの内容を記憶する不揮発記憶領域と、一対のメモリデバイス、及び一対のメモリデバイスに接続され、一対のメモリデバイスに同時に同じデータを伝送し、データを読み出す際にエラーが発生していない時は一方のメモリデバイスからのデータをバッファに伝送し、エラーが発生した時は他方のメモリデバイスからのデータに切り替えるメモリデバイス選択回路からなるＬ（Ｌは２以上の自然数）組のメモリバンクと、を備えたことを特徴とする。
【００２４】
上記構成によれば、メモリモジュール側でエラーを検出し、訂正し、エラーの内容を記憶することにより、発生したエラーがメモリモジュール側か否かの切り分けができ、複数のメモリモジュールを使用しているシステムではどのメモリモジュールの不具合かの切り分けができ、信頼性の高いメモリモジュールの提供を実現することができる。
【００２５】
本発明に係るメモリモジュールの他の実施の形態は、基盤上に配置され、外部のメモリコントローラによって制御される複数のメモリデバイスを有するメモリモジュールにおいて、Ｎ（Ｎは３以上の自然数）個のメモリデバイス、及び外部のメモリコントローラに接続され、Ｎ個のメモリデバイスに同時に同じデータを伝送し、データを読み出す際にｂｉｔ毎に多数決を行い多い値をメモリコントローラに伝送するＮ重化バッファからなるＭ（Ｍは２以上の自然数）組のメモリバンクと、メモリバンクにデータに差分があった場合にメモリバンクからエラー箇所情報が伝送されるエラー取り込みバッファと、エラー取り込みバッファに接続され、エラーの内容を記憶する不揮発記憶領域と、を備えたことを特徴とする。
【００２６】
上記構成によれば、メモリモジュール側でエラーを検出し、訂正し、エラーの内容を記憶することにより、発生したエラーがメモリモジュール側か否かの切り分けができ、複数のメモリモジュールを使用しているシステムではどのメモリモジュールの不具合かの切り分けができ、信頼性の高いメモリモジュールの提供を実現することができる。
【００２７】
本発明に係るメモリモジュールの他の実施の形態は、上記構成に加え、バッファは、メモリコントローラとの間の信号を授受するメモリコントローラ側ドライバレシーバ回路、メモリデバイスとの間の信号を授受するメモリデバイス側ドライバレシーバ回路、メモリコントローラ側ドライバレシーバ回路及びメモリデバイス側ドライバレシーバ回路に接続されエラーを検出訂正するエラー検出訂正回路と、エラー検出訂正回路にエラー訂正を指示するエラー訂正指示回路とを備えたことを特徴とする。
【００２８】
本発明に係るメモリモジュールの他の実施の形態は、上記構成に加え、エラー検出訂正回路は、エラー検出回路と、入力端子がエラー検出回路の出力端子に接続されたエラー訂正スイッチと、入力端子がエラー訂正スイッチの出力端子に接続され、複数の２入力イクスクルーシブオアゲートからなるエラー訂正回路とを備えたことを特徴とする。
【００２９】
本発明に係るメモリモジュールの他の実施の形態は、上記構成に加え、エラー訂正スイッチは、一方の入力端子が共通端子に接続され、他方の入力端子が第１の入力端子に接続され、出力端子が第１の出力端子に接続された複数の２入力アンドゲート、及び第２の入力端子と第２の出力端子とを接続するジャンパ線からなるセルを複数組備えたことを特徴とする。
【００３０】
なお、上述した実施の形態は、本発明の好適な実施の形態の一例を示すものであり、本発明はそれに限定されることなく、その要旨を逸脱しない範囲内において、種々変形実施が可能である。
以下、本発明に係るメモリモジュールの実施例について図面を参照して説明する。
【実施例１】
【００３１】
図１は、本発明に係るメモリモジュールを用いたメモリシステムの実施例１を示すブロック図である。
同図に示すメモリシステムは、エラー検出およびエラー訂正機能付きメモリモジュールを使用したメモリシステムであり、1がメモリデバイス、2が基盤、3がメモリコントローラ、4がメモリエラーを検出し訂正するバッファ、5がメモリエラーを記録するための不揮発記憶領域をそれぞれ示す。
【００３２】
基盤2にメモリデバイス1、バッファ4、及び不揮発記憶領域5が実装されて、エラー検出およびエラー訂正機能付きメモリモジュールを形成している。ここでは、データ信号数や、データ信号およびエラー記録用信号以外の信号に関係ない信号とデバイスや、コネクタ等の部品は、省略している。矢印は信号の伝送を意味している。
【００３３】
メモリデバイス1がドライブする信号は、バッファ4に一旦入力し、エラーをチェックする。エラーが検出されなかった場合はそのままメモリコントローラ3へデータを伝送する。バッファ4がエラーを検出した場合は、エラー内容を不揮発記憶領域5に記録する。また、エラー訂正が必要な場合はエラーを訂正してメモリコントローラ3へデータを伝送する。バッファ4でのエラー検出と訂正は、ECC（Error Correcting Code）等の伝送したいデータbit数より多いbit幅を持つ事によって可能になる方法を使用する。メモリコントローラ3がドライブする信号は、バッファ4を通り、そのまま、メモリデバイス1に伝送される。
【００３４】
［実施例１の構成］
図２は、図１に示したメモリエラーを検出し訂正するバッファの内部の回路例である。
図２において、ドライブレシーバ6がメモリデバイス1側のドライバレシーバ回路、7がエラー検出訂正回路、8がメモリコントローラ3（図１参照）側のドライバレシーバ回路、9がエラー情報を受け取り不揮発記憶領域5（図１参照）に伝送する伝送回路、10がエラー訂正を指示するエラー訂正指示回路である。ここでは、データ信号数や、外部からの制御用の信号は省略している。矢印は信号の伝送を意味している。
【００３５】
すなわち、本メモリモジュールは、基盤2上に配置され、外部のメモリコントローラ3によって制御される複数のメモリデバイス1を有するメモリモジュールであって、エラーを検出し訂正する機能を有するバッファ4と、エラーの内容を記憶する不揮発記憶領域5とを備えたことを特徴とする。
【００３６】
図３は、図２に示したエラー検出訂正回路7の内部の回路の一例である。
図３において、11がエラー検出回路、12がエラー訂正スイッチ、13がエラー訂正回路（XOR：イクスクルーシブオア：排他的論理和）である。ここでは、データ信号数は省略している。
A0〜A8はメモリデバイス側のドライバレシーバ回路6（図２参照）から伝送されてくる信号であり、エラー検出回路11に入力されてエラーの有無が確認される。エラー検出回路11でエラーが検出された場合、エラーが発生したbitに対応したC0〜C8の信号がHighになる。例えばA2の信号がエラーだった場合、C2の信号がHighになる。C0〜C8はエラーが無い場合はLowである。図３のB0〜B8にはA0〜A8の信号がそのまま出力される。
エラー検出回路11から出力されるC0〜C8の信号はH0〜H8の信号として、エラー情報を受け取り不揮発記憶領域6に伝送する伝送回路9（図２参照）へ伝送される。また、B0〜B8の信号とC0〜C8の信号とはエラー訂正スイッチ12に入力される。B0〜B8の信号はそのままD0〜D8へ出力され、C0〜C8の信号はFがHighの時のみそのままE0〜E8に出力される。FがLowの時、E0〜E8の信号はLowになる。Fはエラー訂正を指示するエラー訂正指示回路10（図２参照）からの信号である。DとEとはそれぞれエラー訂正回路13のXORに入力され、出力G0〜G8はメモリコントローラ側のドライバレシーバ回路8（図２参照）へ伝送される。
【００３７】
図４は、図３に示したエラー訂正回路の各XOR13の真理値表である。
同図において、EがLowの時はDの値がそのままGに出力され、EがHighの時はDの反転信号がGに出力される。例えば図３で、E1がLowならば、D1の値がそのままG1になる。E1がHighでD1がHighならば、G1はLowになる。E1がHighでD1がLowならばG1はHighになる。
【００３８】
図５は、図３に示したエラー訂正スイッチ12の回路の一例である。
B0〜B8、C0〜C8、D0〜D8、E0〜E8、Fは、それぞれ図２の符号に対応している。B0〜B8の信号はそのままD0〜D8に出力される。14はAND回路（２入力アンドゲート）である。
【００３９】
図６は、図５に示したAND回路14の真理値表である。
図６において、FがHighの時はCがそのままEになり、FがLowの時はCに関係なくEはLowになる。例えば図５で、FがHighでC1がHighならば、E1はHighになる。FがHighでC1がLowならば、E1はLowになる。FがLowの場合、C1の値によらずE1はLowになる。
【００４０】
［実施例２の動作の説明］
図１のエラー検出機能およびエラー訂正機能付きのメモリモジュールを使用したメモリシステムでは、図９に示した、本発明に関連するメモリシステム同様にメモリへのデータの書き込みや読み出しが行われるが、メモリエラーを検出し訂正するバッファ4によってメモリモジュール側でエラー検出とエラー訂正とが可能になる。
【００４１】
図２において、メモリデバイス1からドライブされた信号は、ドライブレシーバ回路6が受け取りエラー検出訂正回路7へ伝送する。エラー検出訂正回路7ではエラーの有無を検出する。エラー検出訂正回路7はエラーを検出した場合はエラーの情報を伝送回路9へ伝送する。伝送回路9はエラー情報を不揮発記憶領域5（図１参照）へ伝送する。
【００４２】
また、エラー検出訂正回路7は、エラー訂正指示回路10からHigh信号が送られてきている時のみエラー発生時データを訂正して、ドライブレシーバ回路8へ伝送する。エラー訂正指示回路10からの信号がLowの場合はデータを訂正せずにドライブレシーバ回路8へ伝送する。ドライブレシーバ回路8はエラー検出訂正回路7から受け取ったデータをメモリコントローラへ伝送する。
【００４３】
エラー訂正指示回路10は、エラー訂正が必要な時にHigh信号をエラー検出訂正回路7に伝送する。エラー訂正指示回路10がエラー訂正を指示するか否かはエラー訂正指示回路10の外部からの情報や指示が必要になるが、ここでは説明を省略する。
【００４４】
メモリコントローラ3（図１参照）からドライブされた信号は、ドライブレシーバ回路8が受け取りそのままドライブレシーバ回路6へ伝送する。ドライブレシーバ回路6は、ドライブレシーバ回路8から受け取ったデータをメモリデバイス1へ伝送する。
【実施例２】
【００４５】
次に本発明に係るメモリモジュールの実施例２について図面を参照して説明する。
図７は、本発明に係るメモリモジュールの実施例２を示すブロック図の一例である。
同図に示すメモリモジュールは、メモリデバイスを二重化したエラー検出およびエラー訂正機能付きメモリモジュールの例である。
15はメモリデバイスA、16はメモリデバイスB、17はメモリデバイス選択回路、18はメモリエラーを検出し訂正するバッファ、19はメモリエラーを記録するための不揮発記憶領域である。Iはエラー検出時に17にエラーを伝えるための信号である。
【００４６】
すなわち、本メモリモジュールは、基盤2上に配置され、外部のメモリコントローラ3によって制御される複数のメモリデバイスＡ15、メモリデバイスＢ16を有するメモリモジュールであって、エラーを検出し訂正する機能を有するバッファ18と、エラーの内容を記憶する不揮発記憶領域19と、一対のメモリデバイスＡ15、メモリデバイスＢ16、及び一対のメモリデバイスＡ15、メモリデバイスＢ16に接続され、一対のメモリデバイスＡ15、メモリデバイスＢ16に同時に同じデータを伝送し、データを読み出す際にエラーが発生していない時は一方のメモリデバイス（例えば、メモリデバイスＡ15）からのデータをバッファ18に伝送し、エラーが発生した時は他方のメモリデバイス（この場合、メモリデバイスＢ16）からのデータに切り替えるメモリデバイス選択回路17からなるＬ（Ｌは２以上の自然数である）組のメモリバンクMB1と、を備えたことを特徴とする。
【００４７】
本メモリモジュールにおいて、メモリコントローラ側から伝送されてきた信号はバッファ18に入り、そのままメモリデバイス選択回路17に伝送される。メモリデバイス選択回路17はメモリデバイス15、16に同じデータを伝送する。
【００４８】
メモリデバイス15、16がドライブした信号はメモリデバイス選択回路17に伝送される。エラーが発生していない時、メモリデバイス選択回路17は、メモリデバイスＡ15からのデータをバッファ18に伝送する。バッファ18は図１に示したバッファ4と同様にエラー検出とエラー訂正とを行い、メモリコントローラ1（図１参照）へデータを伝送する。バッファ18がエラーを検出した場合、信号IがHighになり、メモリデバイス選択回路17が信号Ｉの変化によりバッファ18に伝送するデータをメモリデバイスＢ16からのデータに切り替える。また、バッファ18はエラー検出時、不揮発記憶領域19にエラー情報を書き込む。この方式によりメモリデバイスＡ15、メモリデバイスＢ16を二重化したエラー検出およびエラー訂正機能付きメモリモジュールが可能になり、信頼性の高いシステムが実現する。
【００４９】
図ではIの信号は一本になっているが、複数bitを持つ事等によりメモリデバイス毎でなく、bit毎の切り替えも可能になる。
【００５０】
なお、システム側にエラーを通知する必要がある場合は、誤ったデータをメモリコントローラ3（図１参照）に伝送したり、データ伝送用とは別のバスを利用してエラー通知を行ったりしてもよい。
【実施例３】
【００５１】
次に本発明に係るメモリモジュールの実施例３について図面を参照して説明する。
図８は、本発明に係るメモリモジュールの実施例３を示すブロック図である。
同図に示すメモリモジュールは、メモリデバイスを三重化したエラー検出およびエラー訂正機能付きメモリモジュールの一例である。
20はメモリデバイスA、21はメモリデバイスB、22はメモリデバイスC、23はエラー取り込みバッファ、24は三重化用バッファ、25はメモリエラーを記録するための不揮発記憶領域である。
【００５２】
すなわち、本メモリモジュールは、基盤2上に配置され、外部のメモリコントローラ1（図１参照）によって制御される複数のメモリデバイスＡ20、メモリデバイスＢ21、メモリデバイスＣ22を有するメモリモジュールであって、Ｎ（Ｎは３以上の自然数であるが、本実施例ではＮを３とする。）個のメモリデバイスＡ20、メモリデバイスＢ21、メモリデバイスＣ22、及び外部のメモリコントローラ1（図１参照）に接続され、Ｎ（この場合、Ｎ＝３）個のメモリデバイスＡ20、メモリデバイスＢ21、メモリデバイスＣ22に同時に同じデータを伝送し、データを読み出す際にｂｉｔ毎に多数決を行い多い値をメモリコントローラ1（図１参照）に伝送するＮ重化（この場合、三重化）バッファからなるＭ（Ｍは２以上の自然数）組のメモリバンクMB2と、メモリバンクMB2にデータに差分があった場合にメモリバンクMB2からエラー箇所情報が伝送されるエラー取り込みバッファ23と、エラー取り込みバッファ23に接続され、エラーの内容を記憶する不揮発記憶領域25と、を備えたことを特徴とする。
【００５３】
本メモリモジュールは、メモリコントローラ側から伝送されてきた信号は三重化バッファ24に入り、三重化バッファ24はメモリデバイスＡ20、メモリデバイスＢ21、メモリデバイスＣ22の全てに同じデータを伝送する。メモリデバイス側からデータを伝送する時、三重化バッファ24はメモリデバイスＡ20、メモリデバイスＢ21、メモリデバイスＣ22のデータを受け取り、bit毎に多数決を行い多い値をメモリコントローラ側に伝送する。また、三重化バッファ24は、メモリデバイスＡ20、メモリデバイスＢ21、メモリデバイスＣ22の値に差分があった場合にエラー取り込みバッファ23へエラー箇所の情報を伝送する。エラー取り込みバッファ23は不揮発記憶領域25にエラー情報を伝送し、不揮発記憶領域25はエラー情報を記憶する。この方式によりメモリデバイスを三重化したエラー検出およびエラー訂正機能付きメモリモジュールが可能になり、メモリデバイスを二重化したエラー検出およびエラー訂正機能付きメモリモジュールよりさらに信頼性の高いシステムが実現する。
【００５４】
なお、システム側にエラーを通知する必要がある場合は、誤ったデータをメモリコントローラに伝送したり、データ伝送用とは別のバスを利用してエラー通知を行ったりしてもよい。
【００５５】
ここで、上述した各実施例における説明のための図は、簡略化しており、インターフェース数や接続内容は図面通りでなくても良い。例えば、メモリコントローラとメモリモジュールとが1対１になっているが、本発明はこれに限定されるものではなく、1対複数でも良い。
さらに、図２、図４、図６に示した回路は一例であって、本発明はこれに限定されるものではなく、同一の機能を実現することが出来れば他の回路でも良い。
また、実施例の図では、メモリコントローラとメモリモジュールとの間の信号はパラレル伝送であるが、本発明はこれに限定されるものではなくシリアル伝送でも良い。
【００５６】
[効果の説明]
メモリモジュールを使用する情報処理機器において、そのメモリモジュールでのエラーをメモリモジュール自体が検出し記録する事が可能になる。また、エラー訂正もメモリモジュールが行う事が可能になる。その結果、エラー発生時にエラーが発生した箇所の切り分けが容易になる。エラー訂正機能をメモリモジュール側に持たせる事により、メモリコントローラ側のエラー訂正機能によらず、メモリモジュール側でエラー訂正機能の強化や信頼性向上が可能になる。
【００５７】
［本願と特許文献１〜４との比較］
＜特許文献１＞
特許文献１に記載の発明は、エラー検出訂正機能付きのフラッシュメモリを使用したマイクロコンピュータに関するものであり、本願とは構成及び作用効果が全く異なる。
＜特許文献２＞
特許文献２に記載の発明は、エラー訂正時に別のアドレスを使用するメモリデバイスに関するものであり、エラー訂正の方法が本願とは異なる。
＜特許文献３＞
特許文献３に記載の発明は、EEPROMにおけるメモリ容量を低減するための発明であり、本願とは構成及び作用効果が全く異なる。
＜特許文献４＞
特許文献４に記載の発明は、メモリを二重化する点については、一見すると本願と同一であるが、メモリチップ内にエラー検出回路を設けるものであり、本願とは異なる。
【００５８】
従って、本願は特許文献１〜４に記載の発明とは構成、及び作用効果が全く異なる。
【産業上の利用可能性】
【００５９】
本発明は、メモリモジュールを使用しているシステムの全てに利用することができる。特に、サーバ等のメモリエラーが問題になるシステムに有効である。
【図面の簡単な説明】
【００６０】
【図１】本発明に係るメモリモジュールを用いたメモリシステムの実施例１を示すブロック図である。
【図２】図１に示したメモリエラーを検出し訂正するバッファの内部の回路例である。
【図３】図２に示したエラー検出訂正回路7の内部の回路の一例である。
【図４】図３に示したエラー訂正回路の各XOR13の真理値表である。
【図５】図３に示したエラー訂正スイッチ12の回路の一例である。
【図６】図５に示したAND回路14の真理値表である。
【図７】本発明に係るメモリモジュールの実施例２を示すブロック図の一例である。
【図８】本発明に係るメモリモジュールの実施例３を示すブロック図である。
【図９】本発明に関連するメモリシステムの概略図である。
【符号の説明】
【００６１】
１    メモリデバイス
２    基盤
３    メモリコントローラ
４、１８    バッファ
５、１９、２５    不揮発記憶領域
６、８    ドライブレシーバ回路
７    エラー検出訂正回路
９    伝送回路
１０    エラー訂正指示回路
１１    エラー検出回路
１２    エラー訂正スイッチ
１３    エラー訂正回路
１４    アンド回路（２入力アンドゲート）
１５、２０    メモリデバイスＡ
１６、２１    メモリデバイスＢ
１７    メモリデバイス選択回路
２２    メモリデバイスＣ
２３    エラー取り込みバッファ
２４    三重化バッファ
【図１】
2009181425.tif 000003
【図２】
2009181425.tif 000004
【図３】
2009181425.tif 000005
【図４】
2009181425.tif 000006
【図５】
2009181425.tif 000007
【図６】
2009181425.tif 000008
【図７】
2009181425.tif 000009
【図８】
2009181425.tif 000010
【図９】
2009181425.tif 000011