(57)【要約】【課題】メモリの寿命を検出する技術を提供する。【解決手段】メモリにデータが保持されてからの経過時間を計り、前記経過時間が所定値に達した場合に前記データを前記メモリから読み出し、前記データをエラー無しで読み出せた場合の前記経過時間をデータ保持時間として求め、前記メモリについて求めた第１のデータ保持時間を記憶部に記憶させておき、前記メモリについて前記第１のデータ保持時間以降に求めた第２のデータ保持時間を前記第１のデータ保持時間と比較して前記メモリの寿命を検出する。【選択図】図７
2010157276.tif 000002
【特許請求の範囲】
【請求項１】
メモリにデータが保持されてからの経過時間を計るタイマー部と、
前記経過時間が所定値に達した場合に前記データを前記メモリから読み出す読出制御部と、
読み出した前記データのエラーの有無及び前記経過時間に基づいて前記メモリの寿命を検出する検出部と、
を備えた寿命検出装置。
【請求項２】
前記検出部が、前記データをエラー無しで読み出すことができた場合の前記経過時間をデータ保持時間として求め、該データ保持時間に基づいて前記メモリの寿命を検出する請求項１に記載の寿命検出装置。
【請求項３】
前記検出部で寿命を検出した場合に警告メッセージを出力する警告部を備えた請求項２に記載の寿命検出装置。
【請求項４】
前記検出部が、前記第1のデータ保持時間の測定から前記第二のデータ保持時間の測定
までの測定期間を求め、該測定期間に低下した前記第1のデータ保持時間と前記第２のデ
ータ保持時間との差及び前記測定期間からデータ保持時間の低下率を求め、該低下率から前記寿命を検出する請求項２又は３に記載の寿命検出装置。
【請求項５】
前記検出部が、前記寿命の検出を所定のタイミングで行い、検出した寿命に基づいて前記所定のタイミングを変更する請求項４に記載の寿命検出装置。
【請求項６】
メモリにデータが保持されてからの経過時間を計るステップと、
前記経過時間が所定値に達した場合に前記データを前記メモリから読み出すステップと、
読み出した前記データのエラーの有無及び前記経過時間に基づいて前記メモリの寿命を検出するステップと、
をコンピュータが実行する寿命検出方法。
【請求項７】
メモリにデータが保持されてからの経過時間を計るステップと、
前記経過時間が所定値に達した場合に前記データを前記メモリから読み出すステップと、
読み出した前記データのエラーの有無及び前記経過時間に基づいて前記メモリの寿命を検出するステップと、
をコンピュータに実行させる寿命検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
メモリの寿命を検出する技術に関する。
【背景技術】
【０００２】
ＤＲＡＭ(Dynamic Random Access Memory)は揮発性メモリであり、メモリセルのコンデンサに情報を蓄える構造になっているため、一度セルにデータを書き込んだ後、時間が経つと、電荷がリークして情報が失われてしまう。そこで、一定の時間内に、書き込んだデータのリフレッシュを行っている。
【０００３】
例えば、一般的に５１２Ｍｂｉｔ ＤＤＲ ＳＤＲＡＭが保証するデータ保持時間は６４ｍｓであり、データを保持し続けるには３２７６８本のＲＯＷラインに対して６４ｍｓ以内にリフレッシュ動作を行う必要がある。
【０００４】
その一方でＤＲＡＭなど半導体素子には通電寿命があり、通電時間の増加に随って機能特性が劣化し、いずれは保証規格値を満たせない状態となり、寿命となる。
【０００５】
ＤＲＡＭにおいては劣化する特性のひとつにデータ保持時間がある。ＤＲＡＭの通電開始直後では、データ保持時間の保証規格値に対し十分なマージンがあるが、通電時間の増加に伴ってマージンが減少し、保証規格値を割った時点で寿命となる。
【０００６】
また、本願発明に関連する先行技術として、例えば、下記の特許文献に開示される技術がある。
【特許文献１】特開平０６−３３３３８７号公報
【特許文献２】特開２００２−２６９９７９号公報
【特許文献３】特開２００７−４８３４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ＤＲＡＭが寿命となった際には交換作業が必要となるが、コンピュータシステム上でデータ不整合のエラーを検出してはじめて交換が必要であることが発覚するため、コンピュータシステムの信頼度が一時的に低下する。
【０００８】
そのため、コンピュータシステム上でデータ不整合エラーが発生する前に、ＤＲＡＭの寿命が近づいたことを検出し、コンピュータシステム管理者に通知を行う手段が望まれている。
【０００９】
そこで、メモリの寿命を検出する技術を提供する。
【課題を解決するための手段】
【００１０】
上記課題を解決するため、本件の一形態であるメモリの寿命検出装置は、
メモリにデータが保持されてからの経過時間を計るタイマー部と、
前記経過時間が所定値に達した場合に前記データを前記メモリから読み出す読出制御部と、
読み出した前記データのエラーの有無及び前記経過時間に基づいて前記メモリの寿命を検出する検出部と、を備えた。
【００１１】
また、上記課題を解決するため、本件の一形態であるメモリの寿命検出方法は、
メモリにデータが保持されてからの経過時間を計るステップと、
前記経過時間が所定値に達した場合に前記データを前記メモリから読み出すステップと、
読み出した前記データのエラーの有無及び前記経過時間に基づいて前記メモリの寿命を検出するステップと、をコンピュータが実行する。
【００１２】
更に、上記課題を解決するため、本件の一形態であるメモリの寿命検出プログラムは、
メモリにデータが保持されてからの経過時間を計るステップと、
前記経過時間が所定値に達した場合に前記データを前記メモリから読み出すステップと、
読み出した前記データのエラーの有無及び前記経過時間に基づいて前記メモリの寿命を検出するステップと、
をコンピュータに実行させる。
【発明の効果】
【００１３】
本件によれば、メモリの寿命を検出する技術を提供できる。
【発明を実施するための最良の形態】
【００１４】
〈実施形態１〉
以下、本発明の実施の形態について図面を参照しつつ説明する。
【００１５】
図１は、本実施形態に係るメモリの寿命検出装置を示す図、図２は寿命検出装置の機能ブロック図である。
【００１６】
図１に示すように、寿命検出装置１は、主記憶部であるメモリモジュール１４、中央演算装置であるＣＰＵ１３を備えた情報処理装置（コンピュータ）である。本実施形態のメモリモジュール１４は、ＤＲＡＭ１４１とＳＰＤ（Ｓｅｒｉａｌ  Ｐｒｅｓｅｎｃｅ  Ｄｅｔｅｃｔ）  ＲＯＭ１４２を備えている。なお、メモリモジュール１４における揮発性メモリはＤＲＡＭに限らず、通電時間に伴ってデータ保持時間が短くなる揮発性メモリであれば良い。
また、寿命検出装置１は、ＣＰＵ１３、メモリモジュール１４等との間で高速に情報通信および制御を行うチップセット（Ｎｏｒｔｈ Ｂｒｉｄｇｅ）１１や、当該チップセッ
ト１１と接続するチップセット（Ｓｏｕｔｈ Ｂｒｉｄｇｅ）１２を備える。チップセッ
ト１１は、グラフィック回路を有し、当該グラフィック回路と接続した表示装置１５にＣＰＵ１３の処理結果等を表示させる。
【００１７】
更に、寿命検出装置１は、リアルタイムクロックから取得した時刻に基づいて現在日時をカウントするシステムタイマー１７や、ＵＳＢ対応機器またはＰＣＩバス対応機器との接続を行うＵＳＢ／ＰＣＩインターフェイス１８を備える。また、寿命検出装置１は、ネットワークボードとの接続を行い外部との通信を可能にする通信制御部、例えばＬＡＮインターフェイス１６を備える。また、寿命検出装置１は、補助記憶装置１０や、周辺機器に係る基本的な入出力を制御するプログラム群（ＢＩＯＳ）及び寿命検出プログラムを格納したＢＩＯＳ ＲＯＭ１９を備える。
【００１８】
本実施形態の補助記憶装置１０は、チップセット１２と接続した磁気記憶装置であり、オペレーティングシステム（ＯＳ）やアプリケーションソフトがインストールされている。
【００１９】
ＣＰＵ１３は、ＢＩＯＳやＯＳ、寿命検出プログラム等のプログラムをＢＩＯＳ ＲＯ
Ｍ１９又は記憶部１０から適宜読み出して実行し、ＵＳＢ／ＰＣＩインターフェイス１８
や制御部（本実施形態ではＬＡＮインターフェイス１６）等から入力された情報や、補助記憶装置１０から読み出した情報を演算処理する。これにより、ＣＰＵ１３は、タイマー部２１や、読出制御部２２、寿命検出部２３、警告部２４、リフレッシュ指示部２５、書込部２６としても機能する。
【００２０】
タイマー部２１としてＣＰＵ１３は、メモリモジュール１４にデータが保持されてからの経過時間を計る。なお、本実施形態のメモリモジュール１４は、ＤＲＡＭであるため、メモリモジュール１４にデータを書き込んだのち、周期的にデータをリフレッシュしている。また、データの読み取り時にも各セルの電荷を既定のレベルに戻している。このため、データが保持されてからの経過時間とは、最後にデータの書き込み、読み取り、或いはリフレッシュをしてからの経過時間である。
【００２１】
読出制御部２２としてＣＰＵ１３は、読みだすアドレスと共に読み出しコマンドをメモリモジュール１４に送り、メモリモジュール１４の当該アドレスからデータを読み出す。また、読出制御部２２は、メモリモジュール１４の寿命を測定する場合、タイマー部２１を参照して所定の経過時間にデータを読み出すように制御する。
【００２２】
寿命検出部２３としてＣＰＵ１３は、読み出したデータのエラーの有無及び経過時間に基づいてメモリモジュール１４の寿命を検出する。なお、本実施形態においてエラーの有無は、書き込んだデータと読み出したデータとを比較し、一致すればエラー無し、一致しなければエラー有りとしている。また、エラーの有無は、これに限らず、測定するメモリセルの行に、データをチェックビットと共に書き込み、データとチェックビットとが整合すればエラー無し、整合しなければエラー有りとしても良い。
【００２３】
警告部２４としてＣＰＵ１３は、寿命が近づいた場合や寿命に達した場合に警告メッセージを所定の出力先に警告メッセージを出力する。本実施形態において、所定の出力先とは、例えば表示装置１５、所定のＩＰアドレス、所定のメールアドレス又は補助記憶装置１０である。
【００２４】
リフレッシュ指示部２５としてＣＰＵ１３は、周期的にメモリモジュール１４へリフレッシュ指示を送り、リフレッシュ動作を行わせる。
【００２５】
書込部２６としてＣＰＵ１３は、メモリモジュール１４へデータと共に書き込みコマンドを送り、データの書き込みを行う。
【００２６】
本実施形態の寿命検出装置１は、ＣＰＵ１３が寿命検出プログラムを実行して上記各部２１〜２６の機能をソフトウェア的に実現する装置であるが、これに限らず寿命検出装置１は、タイマー部２１や、読出制御部２２、寿命検出部２３、警告部２４、リフレッシュ指示部２５、書込部２６として設計された電子回路（ハードウェア）から構成された電子機器であっても良い。
【００２７】
図３は、メモリモジュール１４の概略図である。メモリモジュール１４は、データを記憶するＤＲＡＭ１４１と、メモリモジュール固有の情報を記憶したＳＰＤ ＲＯＭ１４２
を備えている。ＤＲＡＭ１４１はセルをマトリクス状に配列したセルアレイ１４１Ａや、データの読み書きを制御するメモリ制御部１４１Ｂを備えている。ＳＰＤ  ＲＯＭ１４２はセルをマトリクス状に配列したセルアレイ１４２Ａや、データの読み書きを制御するメモリ制御部１４２Ｂを備えている。
【００２８】
書込部２６からデータ及びデータを書き込むコマンドがメモリモジュール１４へ送られると、ＤＲＡＭ１４１のメモリ制御部１４１Ｂがコマンドに含まれるアドレスに応じ、セ
ルアレイ１４１Ａのセルを選択してデータを記憶させる。
【００２９】
また、読出制御部２２からデータを読み出すコマンドがメモリモジュール１４へ送られると、ＤＲＡＭ１４１のメモリ制御部１４１Ｂがコマンドに含まれるアドレスに応じてセルアレイ１４１Ａのセルを選択し、読み出したデータをＣＰＵ１３へ送る。
【００３０】
更に、リフレッシュ指示部２５からリフレッシュ指示がメモリモジュール１４へ送られると、ＤＲＡＭ１４１のメモリ制御部１４１Ｂのリフレッシュ回路１０４がリフレッシュ動作を行う。
【００３１】
次に本実施形態の寿命検出装置１が寿命検出プログラムに従って行う寿命検出方法について説明する。
【００３２】
図４は、本実施形態の寿命検出装置が寿命検出プログラムに従って実行する寿命検出方法の説明図である。
【００３３】
寿命検出装置１の電源が投入されると、ＣＰＵ１３はＢＩＯＳ ＲＯＭ１９からＢＩＯ
Ｓを読み出し（Ｓ１）、メモリモジュール１４を初期化する（Ｓ２）。
【００３４】
次にＣＰＵ１３は、所定の記憶部から初期のデータ保持時間（Initial Retention Time）を読み出す（Ｓ３）。なお、当該記憶部は、ＢＩＯＳ ＲＯＭ１９、ＳＰＤ ＲＯＭ１４２、磁気記憶装置１０、ＵＳＢメモリやメモリカード等のフラッシュメモリ（不図示）などであっても良い。本実施形態では、ＢＩＯＳ ＲＯＭ１９に記憶している。
【００３５】
そしてＣＰＵ１３は、初期のデータ保持時間を変数Ｍに代入し（Ｓ４）、変数Ｍが０か否かによって、初期のデータ保持時間が登録済みか否かを判断する（Ｓ５）。即ち、変数Ｍが０であれば（Ｓ５，Ｙｅｓ）、Ｓ６へ移行して初期のデータ保持時間の登録処理を行い、変数Ｍが０でなければ（Ｓ５，Ｎｏ）、Ｓ７へ移行して寿命の検出処理を行う。
そして、初期のデータ保持時間の登録処理（Ｓ６）や寿命の測定処理（Ｓ７）が完了すると、ＣＰＵ１３はＯＳを起動する。
【００３６】
図５は初期のデータ保持時間の登録処理（Ｓ６）を示す図である。
Ｓ５で変数Ｍが０であった場合、カウンタ部２１は、リフレッシュ間隔ｔＲを計るリフレッシュタイマーを開始する。また、リフレッシュ指示部２５は、メモリモジュール１４中のリフレッシュするセルの行を示す値（RR: Refresh Row）をリセットして初期値に戻
す（Ｓ６０１）。
【００３７】
そして、リフレッシュ指示部２５は、リフレッシュ間隔ｔＲに達した行のリフレッシュを行う（Ｓ６０２）。本実施形態において、メモリモジュール１４は主記憶装置であるため、測定する行以外にもＣＰＵ１３が使用するデータが記憶されているので、リフレッシュ指示部２５は、メモリモジュール１４の測定行ＭＲ以外の行を周期的にリフレッシュする。なお、リフレッシュ動作の詳細については後述する。
【００３８】
次に、書込部２６は、データＤをメモリモジュール１４に書き込む。また、タイマー部２１は、経過時間ｔＭを計るメジャーメントタイマーを開始する（Ｓ６０３）。
【００３９】
また、リフレッシュ指示部２５は、リフレッシュ間隔ｔＲに達した行のリフレッシュを行う（Ｓ６０４）。
【００４０】
読出制御部２２は、経過時間ｔＭが所定時間Ｗに達したか否かを判定し（Ｓ６０５）、
所定時間Ｗに達していなければ（Ｓ６０５，Ｎｏ）Ｓ６０４に戻り、所定時間Ｗに達していれば（Ｓ６０５，Ｙｅｓ）データＤの読み取りを行う（Ｓ６０６）。
【００４１】
そして、寿命検出部２３は、Ｓ６０３で書き込んだ値とＳ６０６で読み取った値を比較し（Ｓ６０７）、一致した場合には（Ｓ６０７，ｐａｓｓ）所定の経過時間Ｗを増加させてＳ６３に戻る。即ち、本実施形態では、所定の経過時間Ｗとして最低限必要な時間を設定しておき、この時間が経過しても正しく読み取れるのならば、所定の増分Ｘを加えて比較を繰り返す。
【００４２】
そして、Ｓ６０７で値が一致しなかった場合、リフレッシュ（Ｓ６０８）の後、寿命検出部２３は経過時間Ｗから増分Ｘを減じて初期のデータ保持時間を求める（Ｓ６０９）。また、リフレッシュ（Ｓ６１０）の後、寿命検出部２３は、初期のデータ保持時間と測定日をＢＩＯＳ ＲＯＭ１９に記憶させ（Ｓ６１１）、図４のＳ８へ戻る。
【００４３】
図６は寿命の検出処理（Ｓ７）を示す図である。
Ｓ５で変数Ｍが０でなかった場合、カウンタ部２１は、リフレッシュ間隔ｔＲを計るリフレッシュタイマーを開始する。また、リフレッシュ指示部２５は、メモリモジュール１４中のリフレッシュするセルの行を示す値（RR: Refresh Row）をリセットして初期値に
戻す（Ｓ７０１）。
【００４４】
リフレッシュ（Ｓ７０２）の後、書込部２６は、データＤをメモリモジュール１４に書き込む。また、タイマー部２１は、経過時間ｔＭを計るメジャーメントタイマーを開始する（Ｓ７０３）。
【００４５】
そして、リフレッシュ（Ｓ７０４）の後、読出制御部２２は、経過時間ｔＭが、初期のデータ保持時間Ｍから閾値（時間）Ｚを減じた基準時間Ｍ−Ｚに達したか否かを判定し（Ｓ７０５）、基準時間Ｍ−Ｚに達していなければ（Ｓ７０５，Ｎｏ）Ｓ７０４に戻り、基準時間Ｍ−Ｚに達していれば（Ｓ７０５，Ｙｅｓ）データＤの読み取りを行う（Ｓ７０６）。
【００４６】
そして、寿命検出部２３は、Ｓ７０３で書き込んだ値とＳ７０６で読み取った値を比較し（Ｓ７０７）、一致した場合には（Ｓ７０７，ｐａｓｓ）寿命に達していないことを検出し、Ｓ８へ移行する。
【００４７】
一方、Ｓ７０７で値が一致しなかった場合、寿命検出部２３が寿命に達したことを検出し、これに応じて警告部２４が警告メッセージを出力する（７０８）。
【００４８】
図７はＳ６０２，６０４，６０８，６１０，７０２，７０４のリフレッシュ処理を示す説明図である。
【００４９】
リフレッシュ指示部２５は、リフレッシュ間隔ｔＲが所定の値ｔＲＩに達したか否かを判定し（Ｓ２１）、達していなければリフレッシュの必要がないので図７のリフレッシュ処理を抜けて図５又は図６の処理に戻る。
【００５０】
一方、リフレッシュ間隔ｔＲが所定の値ｔＲＩに達した場合、リフレッシュ指示部２５は、リフレッシュ対象の行が測定対象の行と同じか否かを判定し（Ｓ２２）、同じでなければ（Ｓ２２，Ｎｏ）、リフレッシュ指示を行う（Ｓ２３）。
【００５１】
リフレッシュ指示後、リフレッシュ指示部２５は、リフレッシュ対象の行を示す値ＲＲを１増加させ（Ｓ２４）、リフレッシュ対象の行が最終行に達したか否かを判定する（Ｓ
２５）。
【００５２】
リフレッシュ指示部２５は、リフレッシュ対象の行が最終行に達したと判定した場合（Ｓ２５，Ｙｅｓ）、リフレッシュタイマーのリフレッシュ間隔ｔＲとリフレッシュ対象の行ＲＲをリセットして初期値に戻す（Ｓ２６）。また、リフレッシュ対象の行が最終行に達していないと判定した場合（Ｓ２５，Ｎｏ）、リフレッシュ指示部２５はリセットせずに図７のリフレッシュ処理を抜けて図５又は図６の処理に戻る。
【００５３】
また、Ｓ２２において、リフレッシュ対象の行が測定対象の行と同じ場合、リフレッシュ指示部２５は、リフレッシュを禁止し、リフレッシュ処理を抜ける（Ｓ２２，Ｙｅｓ）。即ち、寿命検出部２３が所定の経過時間に達するのを待っている測定対象の行まで、周期的にリフレッシュしてはデータ保持時間が測定できないので、測定対象の行を避けてリフレッシュを行っている。
【００５４】
図８は、リフレッシュ指示を受けたメモリモジュール１４のＤＲＡＭ１４１のメモリ制御部１４１Ｂによるリフレッシュ動作の説明図である。
【００５５】
メモリ制御部１４１Ｂは、リフレッシュ対象の行ＲＲをアクティベイトし、時間ｔの計測を開始する（Ｓ３１）。
【００５６】
メモリ制御部１４１Ｂは、アクティベイトから読み取りが可能になるまでの規定時間ｔＲＣＤを待って（Ｓ３２）、リフレッシュ対象の行ＲＲのデータを読み取る（Ｓ３３）。
【００５７】
そしてメモリ制御部１４１Ｂは、アクティベイトからプリチャージが可能になるまでの規定時間ｔＲＡＳを待って（Ｓ３４）プリチャージを行う（Ｓ３５）。
【００５８】
また、メモリ制御部１４１Ｂは、プリチャージから次の動作が可能になるまでの規定時間ｔＲＰを待って（Ｓ３６）リフレッシュ動作を終える。
【００５９】
図９は、リフレッシュ動作の他の例を示す説明図である。メモリ制御部１４１Ｂによるリフレッシュ動作は、図８に代えて図９に示す処理でもよい。
【００６０】
メモリ制御部１４１Ｂは、リフレッシュ対象の行ＲＲをアクティベイトし、時間ｔの計測を開始する（Ｓ４１）。
【００６１】
メモリ制御部１４１Ｂは、アクティベイトから読み取りが可能になるまでの規定時間ｔＲＣＤを待って（Ｓ４２）、リフレッシュ対象の行ＲＲのデータを読み取りとオートプリチャージを行う（Ｓ４３）。
【００６２】
そして、メモリ制御部１４１Ｂは、アクティベイトから次の行のアクティベイトが可能になるまでの規定時間ｔＲＣを待って（Ｓ４４）リフレッシュ動作を終える。
【００６３】
更に図１０は、リフレッシュ動作の他の例を示す説明図である。メモリ制御部１４１Ｂによるリフレッシュ動作は、図８に代えて図１０に示す処理でもよい。
【００６４】
メモリ制御部１４１Ｂは、リフレッシュ対象の行ＲＲをアクティベイトする（Ｓ５１）。
【００６５】
メモリ制御部１４１Ｂは、アクティベイトからプリチャージが可能になるまでの規定時間ｔＲＡＳを待って（Ｓ５２）プリチャージを行う（Ｓ５３）。
【００６６】
そして、メモリ制御部１４１Ｂは、プリチャージから次の動作が可能になるまでの規定時間ｔＲＰを待って（Ｓ５４）リフレッシュ動作を終える。
【００６７】
図１１は、警告部２４が警告メッセージを表示装置１５に出力する場合の説明図である。
【００６８】
図６のＳ７０８で寿命検出部２３から寿命に達した旨の通知を受けると、警告部２４は、「このコンピュータのメインメモリが寿命に達しました、交換してから起動してください。」のように警告メッセージをＢＩＯＳ ＲＯＭ１９から読み出し、表示命令を生成す
る（Ｓ６１）。
【００６９】
そして、警告部２４は、チップセット１１に送り、表示装置１５に表示させる（Ｓ６２）。
【００７０】
図１２は、警告部２４が警告メッセージを所定のＩＰアドレス宛てに出力する場合の説明図である。
【００７１】
図６のＳ７０８で寿命検出部２３から寿命に達した旨の通知を受けると、警告部２４は、「このコンピュータのメインメモリが寿命に達しました、交換してから起動してください。」のように警告メッセージをＢＩＯＳ ＲＯＭ１９から読み出し、送信命令を生成す
る（Ｓ７１）。
【００７２】
そして、警告部２４は、所定のＩＰアドレスをＢＩＯＳ ＲＯＭ１９から読み取り（Ｓ
７１）、チップセット１２に送り、ＬＡＮインターフェイス１６を介して所定のＩＰアドレス宛てに警告メッセージを送信する（Ｓ７２）。
【００７３】
図１３は、警告部２４が警告メッセージを所定のメールアドレス宛てに出力する場合の説明図である。
【００７４】
図６のＳ７０８で寿命検出部２３から寿命に達した旨の通知を受けると、警告部２４は、「このコンピュータのメインメモリが寿命に達しました、交換してから起動してください。」のように警告メッセージをＢＩＯＳ ＲＯＭ１９から読み出し、送信命令を生成す
る（Ｓ８１）。
【００７５】
そして、警告部２４は、所定の送信先メールアドレスや送信サーバの情報、送信者の情報をＢＩＯＳ ＲＯＭ１９から読み取り（Ｓ８２）、送信を開始するためのコマンドを送
信サーバに送る（Ｓ８３）。また、警告部２４は、サーバの準備が完了した場合（Ｓ８４，Ｙｅｓ）、ＨＥＬＯコマンドをサーバに送信し（Ｓ８５）、正常に処理された場合（Ｓ８６）、送信者情報をサーバに送信する（Ｓ８７）。
【００７６】
送信者情報が正常に処理された場合（Ｓ８８，Ｙｅｓ）、警告部２４は、送信先アドレスをサーバに送信し（Ｓ８９）、正常に処理された場合（Ｓ９０，Ｙｅｓ）、データ送信を開始する旨のコマンドをサーバに送信する（Ｓ９１）。サーバからデータの送信開始を指示された場合（Ｓ９２，Ｙｅｓ）、警告部２４は、警告メッセージを送信し（Ｓ９３）、正常に処理された場合（Ｓ９４，Ｙｅｓ）、終了する旨のコマンドを送信して終了する（Ｓ９５）。
【００７７】
なお、上記図４−図１３に示した寿命検出方法は、起動時に実行するように示したが、これに限らず、終了時や、ユーザによる測定の指示が入力された場合など、起動時以外に
実行しても良い。
【００７８】
また、初期のデータ保持時間を予め測定して設定しておき、図４のＳ５，Ｓ６を省略してＳ４の後、Ｓ７の寿命測定を行っても良い。
【００７９】
更に、図５，図６では、メモリモジュール１４の測定対象の行に対する処理の合間に、測定対象以外の行のリフレッシュ処理Ｓ６０２，６０４，６０８，６１０，７０２，７０４を行ったが、これに限らず、測定対象の行に対する処理とは別のループでリフレッシュ間隔を計時し、所定の周期で割り込みを発生させて図７のリフレッシュ処理を行っても良い。
【００８０】
上述のように本実施形態１では、図６に示したように、ＤＲＡＭであるメモリモジュール１４の寿命を検出できる。なお、寿命に達した場合、図６に示すように、ＯＳを起動しないので情報処理装置（寿命検出装置）１の信頼性が保たれる。
【００８１】
また、本実施形態１では、データ保持時間を求め、当該データ保持時間に基づいて寿命を検出するので、メモリモジュール１４の通電時間の増加に伴うデータ保持時間の低下に基づいて寿命に達したことを検出できる。
【００８２】
更に、本実施形態１では、図１１−１３に示すように警告部２４が警告メッセージを出力するので、任意の手法でユーザに警告できる。
【００８３】
〈実施形態２〉
図１４，図１５は、実施形態２の寿命を予測する方法の説明図である。実施形態１では寿命に達したか否かを検出したが、本実施形態２は、あとどれくらいで寿命に達するかを検出した点が異なっている。なお、他の構成は実施形態１とほぼ同じであるので、同じ要素に同符号を付すなどして再度の説明を省略している。
【００８４】
本実施形態２では、寿命検出装置１の起動時や終了時等、所定の測定タイミングに達した場合や、ユーザによる測定の指示が入力された場合、寿命検出部２３は、図１４に示す処理を開始する。まず、寿命検出部２３は、ＢＩＯＳＲＯＭ１９から初期のデータ保持時間（第１のデータ保持時間）Ｍと当該データ保持時間の測定日を読み出すと共に、現在の日付をシステムタイマー１７から取得する（Ｓ１０１）。
【００８５】
寿命検出部２３は、初期のデータ保持時間を変数Ｍに、測定日を変数Ｎに、現在の日付を変数Ｙにそれぞれ代入する。また、経過時間Ｐの初期値を初期のデータ保持時間Ｍを同じにする（Ｓ１０２）。
【００８６】
次に書込部２６は、メモリモジュール１４にデータを書き込む（Ｓ１０３）。
そして、読取制御部２２は、経過時間Ｐを待ってメモリモジュール１４からデータを読み出す（Ｓ１０４，１０５）。
【００８７】
寿命検出部２３は、Ｓ１０３で書き込んだデータとＳ１０５で読み出したデータとを比較し（Ｓ１０６）、一致しなければ経過時間Ｐから所定の短縮分Ｘを減じてＳ１０３へ戻る。
【００８８】
寿命検出部２３は、Ｓ１０３でデータが一致するまでＳ１０３−Ｓ１０７を繰り返し、一致した場合、経過時間Ｐを現在のデータ保持時間（第２のデータ保持時間）とし、初期のデータ保持時間Ｍから現在のデータ保持時間Ｐを減算して差分ｄＲを求める。また、寿命検出部２３は、現在の日付Ｙから測定日Ｎを減算して測定期間ｄＴを求める（Ｓ１０８
）。
【００８９】
そして、寿命検出部２３は、差分ｄＲと測定期間ｄＴとに基づいてデータ保持時間の低下率ＤＲを求め、当該低下率ＤＲから寿命を算出する。具体的には、寿命検出部２３が、差分ｄＲを測定期間ｄＴで除して、経過日数に対するデータ保持時間の低下率ＤＲ、即ち、図１５に示すグラフの傾斜を求める。そして寿命検出部２３は、データの保持が可能な下限となるデータ保持時間を現在のデータ保持時間Ｐから減じて差分を求め、当該差分を低下率ＤＲで除して寿命に達するまでの日数Ｅを予測する（Ｓ１０９）。
【００９０】
警告部２４は、Ｓ１０９で予測した日数Ｅを含めた警告メッセージを出力する。例えば警告部２４は、「このコンピュータのメインメモリが、あとＥ日で寿命に達するかもしれません。」「このコンピュータのメインメモリの寿命は、およそＹ＋Ｅです。」のように警告メッセージを生成し、図１１−図１３と同様に表示装置１５や、所定のＩＰアドレス、所定のメールアドレスに対して出力する（Ｓ１１０）。
【００９１】
なお、図１４では測定対象の行以外のリフレッシュ処理を省略して示したが、図６と同様にメモリモジュール１４の測定対象の行に対するステップの間で図７に示すリフレッシュ処理を行っても良いし、周期的にリフレッシュ処理を行っても良い。
【００９２】
以上のように本実施形態２によれば、第1のデータ保持時間と前記第２のデータ保持時
間との差及び測定期間からデータ保持時間の低下率を求め、該低下率に基づいて寿命までの日数を求めることができる。
【００９３】
〈実施形態３〉
図１６は、実施形態３の寿命を予測して測定間隔を変更する方法の説明図である。本実施形態３では、所定のタイミングで周期的に前記実施形態２の寿命検出を行い、検出した寿命に基づいて近づくにつれて検出するタイミングを変更する。なお、他の構成は実施形態２とほぼ同じであるので、同じ要素に同符号を付すなどして再度の説明を省略している。
【００９４】
寿命検出装置１の電源が投入されると、ＣＰＵ１３はＢＩＯＳ ＲＯＭ１９からＢＩＯ
Ｓを読み出し（Ｓ１２１）、メモリモジュール１４を初期化する（Ｓ１２２）。
【００９５】
次にＣＰＵ１３は、所定の記憶部から最新の測定日、現在日付、所定の測定間隔を読み出す（Ｓ１２３）。なお、当該記憶部は、ＢＩＯＳ ＲＯＭ１９、ＳＰＤ ＲＯＭ１４２、磁気記憶装置１０、ＵＳＢメモリやメモリカード等のフラッシュメモリ（不図示）などであっても良い。本実施形態では、ＢＩＯＳ ＲＯＭ１９に記憶している。
【００９６】
そしてＣＰＵ１３は、最新の測定日を変数Ｑに、現在日付を変数Ｙに、測定間隔を変数Ｉに代入し（Ｓ１２４）、最新の測定日Ｑから現在日付Ｙまでの経過日数Ｙ−Ｑが、所定の測定間隔Ｉに達したか否かを判定する（Ｓ１２５）。
【００９７】
ＣＰＵ１３は、経過日数Ｙ−Ｑが所定の測定間隔Ｉに達していない場合、寿命検出処理を行わずに処理を終了し（Ｓ１２５，Ｎｏ）、経過日数Ｙ−Ｑが所定の測定間隔Ｉに達した場合（Ｓ１２５，Ｙｅｓ）、寿命検出処理を行う（Ｓ１２６）。寿命検出処理Ｓ１２６は、図１４に示した処理と同じであり、寿命に達するまでの日数Ｅを求める。
【００９８】
そして、ＣＰＵ１３は検出した寿命に基づき寿命が近ければ測定間隔Ｉを短く変更する。例えば、ＣＰＵ１３は、寿命に達するまでの日付Ｅが閾値Ｒ未満か否かを判定し（Ｓ１２７）、閾値Ｒ未満でない場合（Ｓ１２７，Ｎｏ）処理を終了し、閾値Ｒ未満の場合（Ｓ
１２７，Ｙｅｓ）測定間隔Ｉを変更する（Ｓ１２８）。本実施形態３では、測定間隔Ｉを半分に変更している。なお、変更量は半分に限らず任意に設定して良い。また、Ｓ１２８において、測定間隔Ｉと共に閾値Ｒを変更しても良い。例えば、閾値Ｒが２００のときに経過日数Ｙ−Ｑが閾値Ｒを上回った場合、ＣＰＵ１３は、測定間隔Ｉを変更すると共に閾値Ｒを半分にする。
【００９９】
本実施形態３によれば、所定の測定間隔Ｉで周期的に寿命の検出を行い、寿命に近づくに伴って短い間隔で寿命の検出を行うので、寿命の警告を適切に出力できる。
【０１００】
〈その他〉
本発明は、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
例えば、以下に付記した構成であっても良い。これらの構成要素は可能な限り組み合わせることができる。
【０１０１】
（付記１）
メモリにデータが保持されてからの経過時間を計るタイマー部と、
前記経過時間が所定値に達した場合に前記データを前記メモリから読み出す読出制御部と、
読み出した前記データのエラーの有無及び前記経過時間に基づいて前記メモリの寿命を検出する検出部と、
を備えた寿命検出装置。
【０１０２】
（付記２）
前記検出部が、前記データをエラー無しで読み出すことができた場合の前記経過時間をデータ保持時間として求め、該データ保持時間に基づいて前記メモリの寿命を検出する付記１に記載の寿命検出装置。
【０１０３】
（付記３）
前記メモリについて求めたデータ保持時間を記憶部に記憶させ、前記読出制御部が、前記記憶部に記憶させたデータ保持時間から所定の閾値を減じた時間を前記所定値として、前記経過時間が当該所定値に達した場合にデータの読み出しを行い、当該データにエラーがあった場合に前記検出部が寿命に達したことを検出する付記２に記載の寿命検出装置。
【０１０４】
（付記４）
前記記憶部が、ＢＩＯＳを記憶したＢＩＯＳ ＲＯＭ、メモリモジュール上のＳＰＤ ＲＯＭ、磁気記憶装置、又はフラッシュメモリである付記３に記載の寿命検出装置。
【０１０５】
（付記５）
前記検出部が寿命を検出した場合に警告メッセージを出力する警告部を備えた付記２から４の何れか１項に記載の寿命検出装置。
【０１０６】
（付記６）
前記警告部による警告メッセージの出力先が、表示装置、所定のＩＰアドレス、所定のメールアドレス又は記憶部である付記５に記載の寿命検出装置。
【０１０７】
（付記７）
前記検出部が、第１のデータ保持時間を求め、該第１のデータ保持時間を求めてから測定期間を隔てて第２のデータ保持時間を求め、前記測定期間に低下した前記第１のデータ保持時間と前記第２のデータ保持時間との差及び前記測定期間に基づきデータ保持時間の
低下率を求め、該低下率から前記寿命を検出する付記２から６の何れか１項に記載の寿命検出装置。
【０１０８】
（付記８）
前記検出部が、前記寿命の検出を所定のタイミングで行い、検出した寿命に基づいて前記所定のタイミングを変更する付記７に記載の寿命検出装置。
【０１０９】
（付記９）
前記メモリのデータをリフレッシュするリフレッシュ部を更に備え、
前記読出制御部が、前記寿命の検出のために前記データの読み出しを所定の経過時間まで待っている場合、前記リフレッシュ部によるリフレッシュを禁止する付記１から８の何れか１項に記載の寿命検出装置。
【０１１０】
（付記１０）
メモリにデータが保持されてからの経過時間を計るステップと、
前記経過時間が所定値に達した場合に前記データを前記メモリから読み出すステップと、
読み出した前記データのエラーの有無及び前記経過時間に基づいて前記メモリの寿命を検出するステップと、
をコンピュータが実行する寿命検出方法。
【０１１１】
（付記１１）
前記データをエラー無しで読み出すことができた場合の前記経過時間をデータ保持時間として求め、該データ保持時間に基づいて前記メモリの寿命を検出する付記１０に記載の寿命検出方法。
【０１１２】
（付記１２）
前記メモリについて求めたデータ保持時間を記憶部に記憶させ、前記記憶部に記憶させたデータ保持時間から所定の閾値を減じた時間を前記所定値とし、前記経過時間が当該所定値に達した場合にデータの読み出しを行い、当該データにエラーがあった場合に寿命に達したことを検出する付記１１に記載の寿命検出方法。
【０１１３】
（付記１３）
前記記憶部が、ＢＩＯＳを記憶したＢＩＯＳ ＲＯＭ、メモリモジュール上のＳＰＤ ＲＯＭ、磁気記憶装置、又はフラッシュメモリである付記１２に記載の寿命検出方法。
【０１１４】
（付記１４）
前記寿命を検出した場合に警告メッセージを出力するステップを備えた付記１１から１３の何れか１項に記載の寿命検出方法。
【０１１５】
（付記１５）
前記警告メッセージの出力先が、表示装置、所定のＩＰアドレス、所定のメールアドレス又は記憶媒体である付記１４に記載の寿命検出方法。
【０１１６】
（付記１６）
第１のデータ保持時間を求め、該第１のデータ保持時間を求めてから測定期間を隔てて第２のデータ保持時間を求め、前記測定期間に低下した前記第１のデータ保持時間と前記第２のデータ保持時間との差及び前記測定期間に基づきデータ保持時間の低下率を求め、該低下率から前記寿命を検出する付記１１から１５の何れか１項に記載の寿命検出方法。
【０１１７】
（付記１７）
前記寿命の検出を所定のタイミングで行い、検出した寿命に基づいて前記所定のタイミングを変更する付記１６に記載の寿命検出方法。
【０１１８】
（付記１８）
前記メモリのデータをリフレッシュするステップを更に備え、
前記寿命の検出のために前記データの読み出しを所定の経過時間まで待っている場合、前記リフレッシュ部によるリフレッシュを禁止する付記１０から１７の何れか１項に記載の寿命検出方法。
【０１１９】
（付記１９）
メモリにデータが保持されてからの経過時間を計るステップと、
前記経過時間が所定値に達した場合に前記データを前記メモリから読み出すステップと、
読み出した前記データのエラーの有無及び前記経過時間に基づいて前記メモリの寿命を検出するステップと、
をコンピュータに実行させる寿命検出プログラム。
【０１２０】
（付記２０）
前記データをエラー無しで読み出すことができた場合の前記経過時間をデータ保持時間として求め、該データ保持時間に基づいて前記メモリの寿命を検出する付記１９に記載の寿命検出プログラム。
【０１２１】
（付記２１）
前記メモリについて求めたデータ保持時間を記憶部に記憶させ、前記記憶部に記憶させたデータ保持時間から所定の閾値を減じた時間を前記所定値とし、前記経過時間が当該所定値に達した場合にデータの読み出しを行い、当該データにエラーがあった場合に寿命に達したことを検出する付記２０に記載の寿命検出プログラム。
【０１２２】
（付記２２）
前記記憶部が、ＢＩＯＳを記憶したＢＩＯＳ ＲＯＭ、メモリモジュール上のＳＰＤ ＲＯＭ、磁気記憶装置、又はフラッシュメモリである付記２１に記載の寿命検出プログラム。
【０１２３】
（付記２３）
前記寿命を検出した場合に警告メッセージを出力するステップを備えた付記１９から２２の何れか１項に記載の寿命検出プログラム。
【０１２４】
（付記２４）
前記警告メッセージの出力先が、表示装置、所定のＩＰアドレス、所定のメールアドレス又は記憶媒体である付記２３に記載の寿命検出プログラム。
【０１２５】
（付記２５）
第１のデータ保持時間を求め、該第１のデータ保持時間を求めてから測定期間を隔てて第２のデータ保持時間を求め、前記測定期間に低下した前記第１のデータ保持時間と前記第２のデータ保持時間との差及び前記測定期間に基づきデータ保持時間の低下率を求め、該低下率から前記寿命を検出する付記２０から２４の何れか１項に記載の寿命検出プログラム。
【０１２６】
（付記２６）
前記寿命の検出を所定のタイミングで行い、検出した寿命に基づいて前記所定のタイミングを変更する付記２５に記載の寿命検出プログラム。
【０１２７】
（付記２７）
前記メモリのデータをリフレッシュするステップを更に備え、
前記寿命の検出のために前記データの読み出しを所定の経過時間まで待っている場合、前記リフレッシュ部によるリフレッシュを禁止する付記１９から２６の何れか１項に記載の寿命検出プログラム。
【０１２８】
また、上記プログラムをコンピュータが読み取り可能な記録媒体に記録しても良い。コンピュータに、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
【０１２９】
ここで、コンピュータが読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータから読み取ることができる記録媒体をいう。このような記録媒体の内コンピュータから取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、CD-ROM、CD-R/W、DVD、DAT、８mmテープ、メモリカード等がある。
【図面の簡単な説明】
【０１３０】
【図１】寿命検出装置の概略図
【図２】寿命検出装置の機能ブロック図
【図３】メモリモジュールの概略図
【図４】寿命検出方法の説明図
【図５】初期のデータ保持時間の登録処理を示す図
【図６】寿命の検出処理を示す図
【図７】リフレッシュ処理の説明図
【図８】メモリ制御部におけるリフレッシュ動作の説明図
【図９】リフレッシュ動作の他の例を示す説明図
【図１０】リフレッシュ動作の他の例を示す説明図
【図１１】警告メッセージを表示装置に出力する場合の説明図
【図１２】警告メッセージを所定のＩＰアドレス宛てに出力する場合の説明図
【図１３】警告メッセージを所定のメールアドレス宛てに出力する場合の説明図
【図１４】実施形態２の寿命検出方法の説明図
【図１５】実施形態２の寿命を予測する方法の説明図
【図１６】実施形態３の測定間隔を変更する方法の説明図
【符号の説明】
【０１３１】
１  寿命検出装置
１４  メモリモジュール
１３  ＣＰＵ
１１，１２  チップセット
１５  表示装置
２１  タイマー部
２２  読出制御部
２３  寿命検出部
２４  警告部
２５  リフレッシュ指示部
２６  書込部
【図１】
2010157276.tif 000003
【図２】
2010157276.tif 000004
【図３】
2010157276.tif 000005
【図４】
2010157276.tif 000006
【図５】
2010157276.tif 000007
【図６】
2010157276.tif 000008
【図７】
2010157276.tif 000009
【図８】
2010157276.tif 000010
【図９】
2010157276.tif 000011
【図１０】
2010157276.tif 000012
【図１１】
2010157276.tif 000013
【図１２】
2010157276.tif 000014
【図１３】
2010157276.tif 000015
【図１４】
2010157276.tif 000016
【図１５】
2010157276.tif 000017
【図１６】
2010157276.tif 000018