(57)【特許請求の範囲】
【請求項１】
所定の許容電圧の範囲で電圧を印加されて動作するメモリと、
このメモリの動作中の出力をチェックすることで予め定めた修正可能なエラーの発生を検出するエラー検出手段と、
このエラー検出手段が前記予め定めた修正可能なエラーを検出したとき前記メモリに供給される電圧を前記許容電圧の範囲で前記エラーの発生確率との間で設定した時間を最大時間として変動させる電圧変動手段と、
前記エラーの発生確率との間で設定した時間内に前記予め定めた修正可能なエラーを更に検出したとき、前記メモリの固定障害が発生したと判定し、前記エラーの発生確率との間で設定した時間内に前記予め定めた修正可能なエラーが検出されなかったときにはソフトウェアを原因とするエラーが発生したと判定することを特徴とする障害原因特定手段
とを具備することを特徴とするメモリ判定システム。
【請求項２】
前記電圧変動手段は時間の経過に伴う電圧の値とその変動状態を規定したレジスタの登録内容に応じて電圧の制御を行うことを特徴とする請求項１記載のメモリ判定システム。
【請求項３】
前記レジスタの登録内容が判定の対象となるメモリに対応して選択可能であることを特徴とする請求項２記載のメモリ判定システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子部品としてのメモリの障害の有無を判定するメモリ判定システム、メモリ判定方法およびメモリ判定プログラムに係わり、特にデータの誤りを訂正するための冗長な付加データをメモリに書き込むようにした場合に有効なメモリ判定システム、メモリ判定方法およびメモリ判定プログラムに関する。
【背景技術】
【０００２】
各種の情報処理装置が扱うデータの大容量化やデータ処理の高速化に伴って、メモリも大規模化している。このようなメモリに格納されたデータを使用する場合、ＥＣＣ（Error Correcting Code）をデータに付加してメモリに対する書き込みを行うことで読み出したデータの誤りを訂正する技術が存在している。メモリから読み出したデータにエラーが発生した場合、これがＥＣＣによって修正可能なエラー（コレクタブルＥＣＣエラー）の場合がある。たとえば、エラーが１回発生しただけでメモリ自体に障害があるとしてこれを交換すると、実際にはハードウェアに障害があったのではなくソフトウェアに障害があったと判断されることがある。このような場合には、ハードウェアの修理交換作業が無駄になり、メモリの戻入率が高くなって、保守性が悪くなる。
【０００３】
そこで、メモリの同一の場所でデータのエラーが２回発生したらハードウェアの障害と判断してメモリの交換を行うようにすることが本発明の第１の関連技術として提案されている（たとえば特許文献１参照）。この第１の関連技術では、メモリの同一の場所で１回だけエラーが発生した場合にはソフトウェアのエラーであるとして、メモリの交換の対象としない。
【０００４】
このように第１の関連技術では、メモリの同一の場所でデータのエラーが１回発生するか２回以上発生するかを調べて、これによって障害がソフトウェアに起因するものかハードウェアに起因するものかの切り分けを行っている。ところが、ハードウェアに起因するエラーでも、同じアドレスで２回目のエラー発生までの時間間隔が長くなるようなものがあり得る。このような場合には、限られた時間の範囲内でエラーをチェックしても２回目のエラーが発生しない場合がある。このような場合に、エラーの発生をソフトウェアに基づくものと判別してしまうと、潜在的に故障しているメモリを使用し続けることになる。そして、たとえば数か月の運用の後にエラーが再度発生することになる。
【０００５】
このように１回目のエラーの発生から２回目のエラーの発生までの期間が長いような場合には、メモリがその間に劣化を進行させる場合がある。このような場合には、１回目のエラーがコレクタブルＥＣＣエラーであっても、２回目のエラーが修正不可能なエラーとしてのアンコレクタブルエラーとなってしまう場合もある。
【０００６】
そこで、１回目のエラーが発生したような場合にエージングを実行するようにして、メモリの有する問題点を早期に顕在化させることが、本発明の第２の関連技術として提案されている（たとえば特許文献２参照）。
【０００７】
この第２の関連技術では、１回目のエラーが発生したような所定の場合にメモリの電源電圧を基準電圧以上に変更することで、エージングモードに設定するようにしている。そして、これ以後はメモリに対するデータの書き込みと読み出し、並びに読み出したデータを前に書き込んだデータと比較する動作の以上を繰り返し実行することにして、エージングモードを自動的に実行するようにしていた。
【０００８】
この結果、第２の関連技術では、エージング専用の装置を用いることなく、所望のタイミングでエージングを実行することでメモリの故障を早期に判別できるようにしていた。
【０００９】
同様にメモリの電源電圧の上下限許容値としての２つの電圧を組み合わせて、メモリへのパターンの書き込みと読み取りを繰り返すことで効率的なテストを実行することが、本発明の第３の関連技術として提案されている（たとえば特許文献３参照）。この第３の関連技術では、このような効率的な組み合わせを実行することでエージングに要する時間の短縮化を図っている。
【特許文献１】特開平０１−０３６３５２号公報（第４ページ左上欄第５行目〜第１０行目、図１）。
【特許文献２】特開平０５−２５０８６８号公報（第００３２段落、図２）
【特許文献３】特開昭６１−７１５００号公報（第２ページ右上欄第７行目〜同ページ左下欄第１６行目、第１図）
【発明の開示】
【発明が解決しようとする課題】
【００１０】
このように第２および第３の関連技術では、運用中に１回目のエラーが発生したような場合にメモリの運用モードからエージングを実行するモードに切り替えることで、効率的にメモリの故障の判別が可能になる。
【００１１】
しかしながら、このような第２および第３の関連技術を使用すると、エージングの期間はメモリの運用を一時的に中断する必要がある。このため、結果的にメモリのエラーがハードウェアに起因しないと判断されるような場合には、運用が中断した分だけ時間的な無駄が発生することになった。
【００１２】
そこで本発明の目的は、メモリの運用を中断することなく、ハードウェアに起因する障害であるかの判別を行うことのできるメモリ判定システム、メモリ判定方法およびメモリ判定プログラムを提供することにある。
【課題を解決するための手段】
【００１３】
本発明では、（イ）所定の許容電圧の範囲で電圧を印加されて動作するメモリと、（ロ）このメモリの動作中の出力をチェックすることで予め定めた修正可能なエラーの発生を検出するエラー検出手段と、（ハ）このエラー検出手段が前記した予め定めた修正可能なエラーを検出したとき前記したメモリに供給される電圧を前記した許容電圧の範囲で前記したエラーの発生確率との間で設定した時間を最大時間として変動させる電圧変動手段と、（ニ）前記したエラーの発生確率との間で設定した時間内に前記したエラー検出手段が前記した予め定めた修正可能なエラーを更に検出するか否かにより、前記したメモリの障害の原因を特定する障害原因特定手段とをメモリ判定システムに具備させる
【００１４】
また、本発明では、（イ）所定の許容電圧の範囲で電圧を印加されて動作するメモリについてその出力をチェックすることで予め定めた修正可能なエラーの発生を検出するエラー検出ステップと、（ロ）このエラー検出ステップで前記した予め定めた修正可能なエラーを検出したとき前記したメモリに供給する電圧をその許容電圧の範囲で前記エラーの発生確率との間で設定した時間を最大時間として変動させる電圧変動ステップと、（ハ）前記したエラーの発生確率との間で設定した時間内に前記したエラー検出ステップで前記した予め定めた修正可能なエラーを更に検出するか否かにより、前記したメモリの障害の原因を特定する障害原因特定ステップとをメモリ判定方法に具備させる。
【００１５】
更に本発明では、所定の許容電圧の範囲で電圧を印加されて動作するメモリを備えたコンピュータに、メモリ判定プログラムとして、（イ）前記したメモリの出力をチェックすることで予め定めた修正可能なエラーの発生を検出するエラー検出処理と、（ロ）このエラー検出処理で前記した予め定めた修正可能なエラーを検出したとき前記したメモリに供給する電圧をその許容電圧の範囲で前記エラーの発生確率との間で設定した時間を最大時間として変動させる電圧変動処理と、（ハ）前記したエラーの発生確率との間で設定した時間内に前記したエラー判別処理で前記した予め定めた修正可能なエラーを更に検出するか否かにより、前記したメモリの障害の原因を特定する障害原因特定処理とを実行させる。
【発明の効果】
【００１６】
以上説明したように本発明によれば、所定の許容電圧の範囲で電圧を印加されて動作するメモリについてその動作中にメモリに供給する電圧をその許容電圧の範囲で前記エラーの発生確率との間で設定した時間を最大時間として変動させるようにしたので、メモリシステムの運用中にエージングを行うことができる。したがって、メモリの運用を中断して障害原因を特定する必要がない。また、メモリに所定の許容電圧の範囲で電圧を印加するので、その寿命を短縮化することもない。
【発明を実施するための最良の形態】
【００１７】
次に、本発明を一実施の形態に基づいて説明する。
【００１８】
図１は本発明の一実施の形態によるメモリ判定システムの構成の概要を表わしたものである。このメモリ判定システムは、図示しないマザーボード等の所定のボード上に、障害の判定の対象となるメモリ１０１の他に、ＣＰＵ（Central Processing Unit）チップ１０２、メモリコントローラ１０３、電圧制御回路１０４およびオンボード電源（ＯＢＰ）１０５を配置した構造となっている。ここで、メモリ１０１は、メモリバス１０６によってメモリコントローラ１０３と接続されている。メモリコントローラ１０３は、障害の検出と障害発生時の制御を行う。また、メモリ１０１はオンボード電源１０５と供給電圧線１０７によって接続されており、電圧制御回路１０４から電圧制御線１０８によって制御された電圧がオンボード電源１０５から印加されるようになっている。ＣＰＵチップ１０２は前記したボード全体を制御する役割を持っており、メモリコントローラ１０３との間にはこの制御を行うためのＣＰＵバス１０９が接続されている。メモリコントローラ１０３はメモリ１０１の障害が検出されたとき、電圧制御回路１０４にエラー報告線１１１を介してエラーを報告するようになっている。これによって電圧制御回路１０４はコレクタブルＥＣＣエラーが発生したときに電圧制御線１０８によってメモリ１０１への供給電圧を変化させるようになっている。
【００１９】
このようなメモリコントローラ１０３は、メモリ判定システムを動作させるためのメモリ判定プログラムを内蔵している。このメモリ判定プログラムは、ＣＰＵチップ１０２を構成するＣＰＵが実行するようになっている。また、本実施の形態で使用するオンボード電源１０５は、電圧制御線１０８の接続される図示しない入力端子に印加する電圧を変動させると、供給電圧線１０７の接続される図示しない電圧出力端子側の出力電圧をこれに応じて制御できるようになっている。
【００２０】
図２は、メモリ判定プログラムによるメモリ判定システムの制御の様子を表わしたものである。図１と共に説明する。電圧制御回路１０４が電圧制御線１０８によってオンボード電源１０５を動作させ、供給電圧線１０７によってメモリ１０１への電源の供給を開始すると、メモリコントローラ１０３はメモリバス１０６を通じてコレクタブルＥＣＣエラーが発生するかを監視する（ステップＳ２０１）。
【００２１】
メモリ１０１の出力にコレクタブルＥＣＣエラーが発生したら（Ｙ）、メモリコントローラ１０３はエラー報告線１１１をアサート（assert）することで電圧制御回路１０４に対してエラーを検出した旨を報告する（ステップＳ２０２）。電圧制御回路１０４はこの報告を受けると、電圧制御線１０８の制御を開始する（ステップＳ２０３）。電圧制御線１０８の制御は、電圧制御回路１０４内に設けられたレジスタの内容に基づいて行われる。
【００２２】
図３は、本実施の形態におけるレジスタに登録された電圧制御内容を表わしたものである。レジスタ１２１には、図１に示したメモリ１０１に印加する電圧および印加時間の具体的な値が登録されている。これによると、まずメモリ１０１に対する印加許容最大電圧と等しいかこれよりも低い印加上限電圧ＶHが規定されている。また、この印加上限電圧ＶHが連続的にメモリ１０１に印加される上限印加時間ｔHが規定されている。次に、上限印加時間ｔHの終了した時点から印加許容最低電圧と等しいかこれよりも高い印加下限電圧ＶLに移行するまでに必要な移行時間ｔHLが規定されている。この次に、印加許容最低電圧と等しいかこれよりも高い印加下限電圧ＶLが規定されている。なお、印加下限電圧ＶLは、印加上限電圧ＶHよりも電圧が低くなっている。また、印加上限電圧ＶHおよび印加下限電圧ＶLは、メモリ１０１に対応して適宜変更可能である。
【００２３】
印加下限電圧ＶLの次には、この印加下限電圧ＶLを保持する下限印加時間ｔLが規定されている。最後に、この印加下限電圧ＶLから印加上限電圧ＶHへの移行時間ｔLHが規定されている。印加上限電圧ＶHへ移行した後は、再びその印加上限電圧ＶHで上限印加時間ｔHだけメモリ１０１へ電圧が印加される。以下、同様にして印加上限電圧ＶHと印加下限電圧ＶLの間でメモリ１０１に対する印加電圧の周期的な変化が繰り返されることになる。
【００２４】
このようにメモリ１０１に対する印加電圧が所定の周期で上下に繰り返し変動している間、メモリコントローラ１０３は所定のタイムオーバが到来する前に、メモリバス１０６を通じてコレクタブルＥＣＣエラーが再度発生するかを監視する（ステップＳ２０４、ステップＳ２０５）。そして、図示しないタイマがタイムオーバを検出する前に、コレクタブルＥＣＣエラーが再度発生した場合には（ステップＳ２０４：Ｙ）、ステップＳ２０１におけるコレクタブルＥＣＣエラーと合わせて２回のエラーが発生したので、ソフトウェアのエラーとは異なったメモリ１０１の固定障害であると判定して（ステップＳ２０６）、メモリ判定処理を終了する（エンド）。この場合には、メモリ１０１の交換が行われることになる。
【００２５】
これに対して、２回目のコレクタブルＥＣＣエラーが発生する前に、タイムオーバが発生したとする（ステップＳ２０４：Ｎ、ステップＳ２０５：Ｙ）。ここで、タイムオーバの設定時間は、メモリ１０１のハードウェアに障害が発生していると仮定したときに、かなりの高い確率で２回目あるいはこれ以上のコレクタブルＥＣＣエラーが発生するものと統計上で算出された時間長に設定されている。
【００２６】
したがって、２回目のコレクタブルＥＣＣエラーが発生する前にタイムオーバが発生した場合には（ステップＳ２０５：Ｙ）、ステップＳ２０３で処理を開始した電圧制御線１０８による電圧制御を終了させ（ステップＳ２０７）、ソフトウェアによるエラーであると判定して（ステップＳ２０８）、メモリ判定処理を終了する（エンド）。この場合には、メモリ１０１の交換は行われない。
【００２７】
以上説明したように本実施の形態によれば、メモリ１０１に供給する電圧を許容電圧の範囲内としたので、このメモリ１０１自体の運用を中断することなく障害の原因を判定することができる。しかも、メモリ１０１に印加する電圧を変動させることにしたので、個々に印加電圧を設定して障害の判定を行う必要がなく、手間を省くことができる。また、このような電圧の変動をレジスタ１２１に登録したデータに基づいて行うことによって、メモリ１０１の種類に応じた適切なエージング処理が可能になる。
【００２８】
以上説明した実施の形態では、レジスタ１２１を用いてメモリ１０１に対する印加電圧や印加時間を決定することにしたが、このようなレジスタ１２１を使用せず、抵抗やコンデンサといった回路の定数を工夫することで印加電圧や印加時間を固定的に設定し、スイッチで適宜これらを切り替えるようにすることも可能である。また、レジスタ１２１に幾通りかの値を登録しておいて、メモリ１０１の種類に応じてこれらを使い分けるようにしてもよいことは当然である。これにより、１つのメモリシステムではなく多様なメモリシステムに対応可能になる。
【００２９】
しかも本発明によれば、メモリを通常通り動作させその運用を行いながらエージングを行うので、ソフトウェアによるエラーなのかハードウェア障害なのかの判別の精度が向上する。したがって、装置からメモリ１０１を取り外すことなく障害の原因を判別することができるので、メモリの無駄な取り外しを避けることができ、戻入率の削減と戻入後の試験工数の削減、ならびに保守性の向上が可能になる。また、戻入率の削減によって、納入先における装置の交換に関する工数や戻入後の試験工数を削減することができる。
【００３０】
このような本発明は、実施の形態で説明した場合に限らず、メモリを搭載するあらゆる情報処理装置や通信機器全般で適用することができることは当然である。
【図面の簡単な説明】
【００３１】
【図１】本発明の一実施の形態によるメモリ判定システムの構成の概要を表わしたブロック図である。
【図２】メモリ判定プログラムによるメモリ判定システムの制御の様子を表わした流れ図である。
【図３】本実施の形態におけるレジスタに登録された電圧制御内容を表わした説明図である。
【００３２】
１０１  メモリ
１０２  ＣＰＵチップ
１０３  メモリコントローラ
１０４  電圧制御回路
１０５  オンボード電源
１０７  供給電圧線
１０８  電圧制御線
１１１  エラー報告線
１２１  レジスタ
【図１】
0005233290.tif 000002
【図２】
0005233290.tif 000003
【図３】
0005233290.tif 000004