(57)【要約】【課題】一過性の異常時には動作を継続させ、冗長性を維持したまま固定故障を検出できるようにしたハードウェア異常監視装置を得る。【解決手段】メモリ１より読み出したデータのビット化けをチェック回路２で、ＥＣＣやパリティチェックにより検出し、データのビット化けが検出されるつど、異常監視部４がカウントアップし、故障判定部５が、異常監視部４のカウント値が予め定められた閾値に達した場合にハードウェアの故障と判定するようにした。【選択図】図１
2015153125.tif 000002
【特許請求の範囲】
【請求項１】
メモリより読み出したデータのビット化けを検出するチェック回路、
このチェック回路により上記データのビット化けが検出された場合に、カウントアップする計数部、
及びこの計数部によるカウント値と予め定められた閾値とを比較し、上記カウント値が上記閾値に達した場合に、ハードウェアの故障と判定する故障判定部を備えたことを特徴とするハードウェア異常監視装置。
【請求項２】
上記データの最初のビット化けの検出によって起動され、所定期間の計時を行うタイマ部を備え、
上記故障判定部による上記ハードウェアの故障の判定は、上記所定期間中に上記カウント値が上記閾値に達した場合であることを特徴とする請求項１記載のハードウェア異常監視装置。
【請求項３】
所定期間の計時を行い、上記所定期間経過した場合に、上記故障判定部に知らせて、上記カウント値と閾値との比較を行わせるタイマ部を備えたことを特徴とする請求項１記載のハードウェア異常監視装置。
【請求項４】
上記チェック回路によりビット化けが発生したアドレスを保持するアドレス保持部を備え、
上記故障判定部は、上記アドレスごとにビット化けの発生回数を記憶することを特徴とする請求項１から請求項３のいずれか一項記載のハードウェア異常監視装置。
【請求項５】
上記メモリは複数設けられるとともに、上記チェック回路が上記メモリに対応して複数設けられていることを特徴とする請求項１から請求項４のいずれか一項記載のハードウェア異常監視装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、メモリからリードしたデータの異常（ビット化け）発生を監視し、その異常が固定故障（ハードウェアが原因のハードエラー）か一過性の異常（他の原因のソフトエラー）かを検出するハードウェア異常監視装置に関するものである。
【背景技術】
【０００２】
従来の装置では、メモリリード時にパリティで１ビット化けを検出、またはＥＣＣで１ビット化けを検出・訂正し、２ビット化けを検出した際は、訂正データを使用したり、ビット化けしたデータを廃棄したりして動作継続、または異常検出で故障処理を行なっていた。
ビット化けは、固定故障以外にノイズや放射線の影響を受け、ＳＥＵ（Ｓｉｎｇｌｅ  Ｅｖｅｎｔ  Ｕｐｓｅｔ）が発生することで、ソフトエラーが引き起こされることがあるため、１度の異常検出で障害発生として故障処理を行なうより、ビット化けしたデータを廃棄、またはビット訂正を行なって動作継続する方が、冗長性があると言える。
しかし、一方で、動作継続のために故障処理を行なわなければ、異常な状態が継続したまま正常動作し、障害として検出されないため、固定故障の把握が遅れてしまうことがある。
このような課題に対し、ビット化けの発生回数を計数して、ビットごとのエラー発生回数より固定故障と判断する方式（特許文献１など）が考案されてきた。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平６−５９９２０号公報（第２〜３頁、第１図）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述したように、ビット化けしたデータを廃棄、またはビット訂正を行なって動作継続すると、固定故障か一過性の異常かを判断できないため、固定故障の発生時にその把握が遅れてしまうという問題を有している。
また、固定故障の早期把握のために、１度のビット化け検出で、故障処理を行なっていると、冗長性が失われるという問題もある。
【０００５】
この発明は、上述のような課題を解決するためになされたものであり、一過性の異常時には動作を継続させ、冗長性を維持したまま固定故障を検出できるようにしたハードウェア異常監視装置を得ることを目的とする。
【課題を解決するための手段】
【０００６】
この発明に係わるハードウェア異常監視装置においては、メモリより読み出したデータのビット化けを検出するチェック回路、このチェック回路によりデータのビット化けが検出された場合に、カウントアップする計数部、及びこの計数部によるカウント値と予め定められた閾値とを比較し、カウント値が閾値に達した場合に、ハードウェアの故障と判定する故障判定部を備えたものである。
【発明の効果】
【０００７】
この発明によれば、メモリより読み出したデータのビット化けを検出するチェック回路、このチェック回路によりデータのビット化けが検出された場合に、カウントアップする
計数部、及びこの計数部によるカウント値と予め定められた閾値とを比較し、カウント値が閾値に達した場合に、ハードウェアの故障と判定する故障判定部を備えたので、一過性の異常時には動作継続できるとともに、ハードウェアの故障も検出することができる。
【図面の簡単な説明】
【０００８】
【図１】この発明の実施の形態１によるハードウェア異常監視装置を示す構成図である。
【図２】この発明の実施の形態１によるハードウェア異常監視装置の処理シーケンスを示すフローチャートである。
【図３】この発明の実施の形態２によるハードウェア異常監視装置を示す構成図である。
【図４】この発明の実施の形態２によるハードウェア異常監視装置の処理シーケンスを示すフローチャートである。
【図５】この発明の実施の形態２によるハードウェア異常監視装置のソフトエラーの判定時の動作例を示す図である。
【図６】この発明の実施の形態２によるハードウェア異常監視装置の固定故障の判定時の動作例を示す図である。
【図７】この発明の実施の形態３によるハードウェア異常監視装置を示す構成図である。
【図８】この発明の実施の形態３によるハードウェア異常監視装置のソフトエラーの判定時の動作例を示す図である。
【図９】この発明の実施の形態３によるハードウェア異常監視装置の固定故障の判定時の動作例を示す図である。
【図１０】この発明の実施の形態４によるハードウェア異常監視装置を示す構成図である。
【図１１】この発明の実施の形態５によるハードウェア異常監視装置を示す構成図である。
【発明を実施するための形態】
【０００９】
実施の形態１．
以下、この発明の実施の形態１を図に基づいて説明する。
図１は、この発明の実施の形態１によるハードウェア異常監視装置を示す構成図である。
図１において、メモリ１は、データを格納する。チェック回路２は、メモリ１からリードしたデータのビット化けをＥＣＣやパリティチェックにて検出または訂正する。後段の回路３は、チェック回路２でチェック後のリードデータを使用する。
異常監視部４（計数部）は、チェック回路２で検出されたビット化けの発生をカウントアップする。故障判定部５は、異常監視部４のカウント値と、予め設定された固定故障と判断する任意の閾値とを比較し、固定故障の有無を判断する。
なお、ハードウェア異常監視装置は、計算機であってもよいし、計算機に組み込まれて使用される装置であってもよい。この場合、メモリ１やチェック回路２は、計算機のものであってもよい。
【００１０】
次に、動作について説明する。
図２を用いて、固定故障の判断シーケンスについて説明する。
ＳＴ１は、ハードウェア異常監視装置の動作開始である。ＳＴ２は、チェック回路２がリードデータのビット化け（異常発生）を検出する。ビット化けがなければ、そのまま動作継続し、ビット化けがあれば、ＳＴ３の処理を行なう。
ＳＴ３は、異常監視部４が、ビット化け発生回数をカウントアップする。ＳＴ４は、故障判定部５が、ＳＴ３でのカウンタ値と、予め設定している固定故障と判断する任意の閾
値とを比較する。
カウンタ値が閾値よりも小さければ、そのまま動作継続し、カウンタ値が閾値以上であれば、ＳＴ５で、固定故障と判断する。
【００１１】
実施の形態１によれば、ビット化け発生回数によりビット化けが固定故障か一過性の異常かを検出することができ、一過性の異常発生時の不要な故障処理を減らし、また固定故障発生時の故障処理を円滑に行なうことができる。
また、一過性の異常は動作継続するとともに、固定故障の可能性がある異常の検出ができるため、固定故障の把握が遅れ、システムに重大な影響を及ぼす可能性を未然に防止することができる。
【００１２】
実施の形態２．
以下、実施の形態２を図に基づいて説明する。
図３は、この発明の実施の形態２によるハードウェア異常監視装置を示す構成図である。
図３において、１〜５は図１におけるものと同一のものである。図３では、ビット化けが発生したとき起動するタイマ部６を設けている。タイマ部６のタイマ動作の時間内で、異常監視部４のカウンタ値に基づいて、故障判定部５が故障判定を行なう。
【００１３】
実施の形態１では、図１の異常監視部４からの情報により故障判定部５が故障判定を行なっていたが、実施の形態２は、タイマ部６を設けて、異常監視部４とタイマ部６の情報により故障判定を行なうことで、より精度のよい固定故障の判定ができるようにした。
【００１４】
次に、図４を用いて、実施の形態２の固定故障の判断シーケンスについて説明する。
ＳＴ２で、チェック回路２によるチェックで、ビット化けの異常があれば、ＳＴ９で、タイマ起動中かどうかを確認する。起動中でなければ、ＳＴ６で、タイマを起動する。ここでタイマ値は、メモリ１のリードアクセス頻度やライトの頻度などを基に予め設定している任意の値である。
次いで、ＳＴ３で、異常監視部４がビット化け発生回数をカウントアップ後、ＳＴ４で、故障判定部５が、ＳＴ３のカウンタ値と予め設定している固定故障と判断する任意の閾値とを比較する。カウンタ値が閾値よりも小さければ、そのまま動作継続し、カウンタ値が閾値以上であれば、ＳＴ５で、固定故障と判断する。
ＳＴ２で、異常発生がない状態で、タイマ満了しているかどうかをＳＴ１０で確認し、タイマ満了していれば、ＳＴ８で、ＳＴ３のカウンタをクリアするとともに、タイマをクリアして、ＳＴ２に行く。
【００１５】
図５は、ビット化けは発生しているが、ある期間内に閾値以上のビット化けが発生せず、ソフトエラーと判断するタイミング例を示している。
図５では、横軸に時間経過を示す。ビット化け検出により、ビット化け発生回数をカウントアップすると同時に、タイマを起動する。２回目のビット化け発生時は、タイマ満了していないため、タイマは動作させたまま、ビット化け発生回数をカウントアップする。
図５の例では、予め設定している固定故障と判断する閾値よりも、タイマが満了するまでのビット化け発生回数が少ないため、固定故障とは判断しない。固定故障と判断する頻度でビット化けが発生しなかった（ソフトエラーだった）と判断する。
予め設定しているタイマ値でタイマ満了と同時に、ビット化け発生回数のカウンタをクリアする。
【００１６】
図６は、ビット化けが固定故障によるものと判断するタイミング例を示している。横軸に時間経過を示す。ビット化け検出により、ビット化け発生回数をカウントアップすると同時にタイマを起動する。２回目のビット化け発生時は、タイマ満了していないため、タイマは動作させたまま、ビット化け発生回数をカウントアップする。ここでは、予め設定している固定故障と判断する閾値よりも発生回数が少ないため、固定故障とは判断しない。
３回目のビット化け発生時もタイマ満了していないため、タイマは動作させたまま、ビット化け発生回数をカウントアップする。今度は、予め設定している固定故障と判断する閾値が３回だったとすると、タイマ満了前にビット化け発生回数が閾値に達したため、固定故障と判断する。
【００１７】
実施の形態２によれば、タイマ満了までに異常監視部によるビット化け発生回数をカウントし、ビット化け発生を判断するので、より精度のよい固定故障の判定を行なうことができる。
【００１８】
実施の形態３．
以下、実施の形態３を図に基づいて説明する。
図７は、この発明の実施の形態３によるハードウェア異常監視装置を示す構成図である。
図７において、１〜５は図１におけるものと同一のものである。図７では、タイマ部１４は、独立して動作し、判定タイミングを故障判定部５に与える。
【００１９】
実施の形態２では、ビット化けの発生有無を異常監視部４とタイマ部６に通知し、故障判定を行なっていたが、実施の形態３は、タイマ部１４は独立して動作し、故障判定部５へ故障判定を行なうタイミングを通知することにより、処理を簡略化するようにした。
【００２０】
図８は、ビット化けは発生しているが、ある期間内に閾値以上のビット化けが発生せず、ソフトエラーと判断するタイミング例を示している。横軸に時間経過を示す。
タイマ部１４は、メモリ１のリードアクセス頻度やライトの頻度など基に、予め設定している任意のタイマ値により、固定故障の判定タイミングを生成する。
図８では、判定タイミングで、ビット化け発生回数が閾値に達していなかったため、固定故障とは判断せず、ビット化け発生回数のカウンタをクリアする。固定故障と判断する頻度でビット化けが発生しなかった（ソフトエラーだった）と判断する。
【００２１】
図９は、ビット化けが固定故障によるものと判断するタイミング例を示している。横軸に時間経過を示す。
タイマ部１４は、予め設定しているタイマ値により、固定故障の判定タイミングを生成する。図９では、判定タイミングで、ビット化け発生回数が閾値に達していたため、固定故障と判断する。
【００２２】
実施の形態３によれば、独立して動作するタイマ部により故障判定部５の判定タイミングを与えることにより、より精度のよい固定故障の判定を行なうことができる。
【００２３】
実施の形態４．
以下、実施の形態４を図に基づいて説明する。
図１０は、この発明の実施の形態４によるハードウェア異常監視装置を示す構成図である。
図１０において、１〜５は図１におけるものと同一のものである。図１０では、異常発生アドレスを保持するアドレス保持部７を設け、故障判定部５により、アドレスごとの発生回数をカウントする管理テーブル１５を作成するようにした。
【００２４】
実施の形態１では、図１に示すように、ビット化けの発生有無のみを異常監視部４に通知して、故障判定を行なっていたが、実施の形態４は、ＥＣＣやパリティチェックを行なうチェック回路２は、ビット化けが発生したアドレスをアドレス保持部７に通知する。
故障判定部５は、ビット化け発生回数とビット化け発生アドレス情報を管理し、管理テーブル１５に残し、その情報を提供できるようにすることで、固定故障の判断時に障害処理を円滑に行なえるようにしている。
また、故障判定部５は、アドレスごとにビット化け発生回数を監視し、故障判定することも可能である。
【００２５】
実施の形態４によれば、ビット化け発生アドレスごとにビット化け発生回数を管理するので、固定故障の判断時に障害処理を円滑に行なうことができる。
【００２６】
実施の形態５．
以下、実施の形態５を図に基づいて説明する。
図１１は、この発明の実施の形態５によるハードウェア異常監視装置を示す構成図である。
図１１において、１〜５、７は図１０におけるものと、１４は図７におけるものとそれぞれ同一のものである。図１１では、メモリ１、チェック回路２、後段の回路３を３系列もち、いずれかの異常発生を異常監視部４、故障判定部５、アドレス保持部７、タイマ部１４で検出するようにした。
すなわち、メモリＡ１、チェック回路Ａ２、後段の回路Ａ３と、メモリＢ８、チェック回路Ｂ９、後段の回路Ｂ１０と、メモリＣ１１、チェック回路Ｃ１２、後段の回路Ｃ１３との３系列である。このため、故障判定部５により作成される管理テーブル１６は、メモリごとに異常発生アドレス及び発生回数を管理している。
【００２７】
実施の形態１〜４では、ある１つのメモリで発生したビット化けに関して、固定故障かどうかの判断を行なっていた。しかし、何らかの共通した要因により、複数のメモリでビット化けが発生することも考えられる。
実施の形態５は、複数のメモリのビット化け発生情報とビット化け発生アドレスを１つの異常監視部４でカウントし、故障判定部５で管理することにより、装置全体での異常を監視し、装置の固定故障を早期に発見するようにした。
【００２８】
図１１では、メモリＡ１、チェック回路Ａ２、後段の回路Ａ３と、メモリＢ８、チェック回路Ｂ９、後段の回路Ｂ１０と、メモリＣ１１、チェック回路Ｃ１２、後段の回路Ｃ１３は、それぞれ独立して動作している。
チェック回路Ａ２、チェック回路Ｂ９、チェック回路Ｃ１２は、ビット化け検出時に異常監視部４へビット化け発生を通知するとともに、アドレス保持部７へビット化け発生アドレスを通知する。
【００２９】
故障判定部５は、異常監視部４、アドレス保持部７からの情報を管理テーブル１６で、メモリごとに管理する。タイマ部１４からの予め設定している任意のタイマ値から生成される故障判断の判定タイミングにより、故障判定部５は、装置全体としてのビット化け発生回数またはアドレスごとのビット化け発生回数、またはメモリごとのビット化け発生回数を予め設定している固定故障と判断する任意の閾値と比較し、固定故障かどうかを判断する。
【００３０】
実施の形態５によれば、複数のメモリのビット化け発生情報とビット化け発生アドレスを１つの故障判定部で管理することにより、装置全体での異常を監視し、装置の固定故障を早期に発見することができる。
【００３１】
なお、本発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略することが可能である。
【符号の説明】
【００３２】
１  メモリ、２  チェック回路、３  後段の回路、４  異常監視部、５  故障判定部、
６  タイマ部、７  アドレス保持部、８  メモリＢ、９  チェック回路Ｂ、
１０  後段の回路Ｂ、１１  メモリＣ、１２  チェック回路Ｃ、１３  後段の回路Ｃ、
１４  タイマ部、１５  管理テーブル、１６  管理テーブル。
【図１】
2015153125.tif 000003
【図２】
2015153125.tif 000004
【図３】
2015153125.tif 000005
【図４】
2015153125.tif 000006
【図５】
2015153125.tif 000007
【図６】
2015153125.tif 000008
【図７】
2015153125.tif 000009
【図８】
2015153125.tif 000010
【図９】
2015153125.tif 000011
【図１０】
2015153125.tif 000012
【図１１】
2015153125.tif 000013