JP2008242592A - メモリ監視回路、情報処理装置、及びメモリ監視方法 - Google Patents

メモリ監視回路、情報処理装置、及びメモリ監視方法 Download PDF

Info

Publication number
JP2008242592A
JP2008242592A JP2007079159A JP2007079159A JP2008242592A JP 2008242592 A JP2008242592 A JP 2008242592A JP 2007079159 A JP2007079159 A JP 2007079159A JP 2007079159 A JP2007079159 A JP 2007079159A JP 2008242592 A JP2008242592 A JP 2008242592A
Authority
JP
Japan
Prior art keywords
memory
monitoring
main memory
unit
target area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007079159A
Other languages
English (en)
Inventor
Yoshikazu Nishioka
善和 西岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2007079159A priority Critical patent/JP2008242592A/ja
Publication of JP2008242592A publication Critical patent/JP2008242592A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

【課題】監視能力が高いメモリ監視回路、情報処理装置、及びメモリ監視方法を提供すること。
【解決手段】情報処理装置10は、監視対象となるメインメモリ2と、メインメモリ2に格納されたプログラムを実行するCPU1と、メインメモリ2の異常を監視するメモリ監視回路4と、メインメモリ2に格納されたデータを一時的に退避するための一時メモリ5と、メインメモリ2の監視中に、CPU1のメインメモリ2へのアクセスを禁止し、メモリ監視回路4のメインメモリ2へのアクセスを許可するバス調停部3とを有する。メモリ監視部4は、メインメモリ2のデータの一部又は全部を監視対象領域とし、当該監視対象領域のデータを一時メモリ5に退避し、監視対象領域のテストを実行する。
【選択図】図1

Description

本発明は、メインメモリ及び中央処理装置(CPU)を有する情報処理装置自身が運行中であってもメインメモリの監視動作を実行することができるメモリ監視回路、情報処理装置及びメモリ監視方法に関する。
従来のメモリ監視に「パリティチェック方式」及び「プログラムによるWRITE/READ方式」がある。「パリティチェック方式」ではデータ書き込み時にパリティビットが付加され、読出し時にデータとパリティビットのパリティチェックを実施し、正常か異常を判断する。しかし、この方式では読出しが行われる領域以外の監視ができないという課題がある。
また、「プログラムによるWRITE/READ方式」では、ある領域に試験データ(例えば0xAAや0x55)を書き込み、読出したデータが試験データと一致しているかを確認する。この方式ではすでにOS、又はアプリケーションなど、データが書き込まれた領域、つまり使用中の領域の監視ができないという課題がある。
これに対し、特許文献1には、診断の実行に先立ち、診断対象メモリのデータをバッファレジスタに退避させて診断を行なうメモリのオンライン診断方式が開示されている。この特許文献1に記載の方法においては、診断実行に先立ち、診断対象メモリ素子のデータをバッファレジスタに退避させ、診断実行中の上位装置から診断対象メモリ素子へのアクセス要求に対しては、当該バッファレジスタにそのアクセスの実行を行い、診断実行の終了語、バッファレジスタのデータをメモリ素子に復元して診断モードをリセットし、診断対象メモリ素子のデータをアクセス要求に応じて書き換え可能としている。
また、特許文献2には、大きな退避バッファを用意する必要がないよう、メモリのアクセス幅に応じたバッファを退避用に設け、メモリアクセス幅単位でテストを実行することにより、少ないバードウェア資源の投入によりメモリアクセス性能に影響することがなく稼動中におけるメモリのテストを実行するRAMテスト回路が開示されている。
特開平4−125753号公報 特開2006−39843号公報
しかしながら、特許文献1、2のいずれもメモリ監視中であっても、退避バッファにアクセスさせ、可動状態に近い環境でのテストを実現している。このように、メモリ監視中であってもデータにアクセス可能とするため、監視対象メモリにデータ誤りがある場合であっても、CPUのアクセスを回避することができないという問題点がある。
本発明に係るメモリ監視回路は、監視対象となるメインメモリの異常を監視するメモリ監視部と、前記メインメモリに格納されたデータを一時的に退避するための一時メモリと、前記メインメモリの監視中に、前記メインメモリに格納されたプログラムを実行する中央処理装置の前記メインメモリへのアクセスを禁止し、前記メモリ監視部の前記メインメモリへのアクセスを許可するバス調停部とを有し、前記メモリ監視部は、前記メインメモリのデータの一部又は全部を監視対象領域とし、当該監視対象領域のデータを前記一時メモリに退避し、前記監視対象領域のテストを実行するものである。
本発明においては、メインメモリの監視中に、メインメモリに格納されたプログラムを実行する中央処理装置のメインメモリへのアクセスを禁止し、メモリ監視部のメインメモリへのアクセスを許可するバス調停部を備えることにより、監視中には、メインメモリの監視対象領域には中央処理装置をメインメモリ又は一時メモリにアクセスさせないようにすることができる。
本発明によれば、監視中の監視対象領域のデータにはアクセスさせないようにすることにより、より監視能力が高いメモリ監視回路、情報処理装置、及びメモリ監視方法を提供することができる。
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。本実施の形態においては、CPU及びメインメモリを有するシステムにおいて、メモリ監視回路、バス調停回路、一時メモリを備え、バス調停回路によりメモリ監視回路のみがバスを使用できる状態、すなわちCPUがメインメモリにアクセスしない状態とし、その間にメモリ監視回路がメインメモリの一部領域のデータを一時メモリに退避しながらWRITE/READテストすること、及びこれらの動作を、定期的にメインメモリの領域を変更しながら行うことにより、システムが運用中でもメインメモリ全体(OS/アプリケーション/データ領域及び未使用領域)の正常/異常を監視することを実現する。
図1は、本実施の形態にかかる情報処理装置を示すブロック図である。本実施の形態にかかる情報処理装置10は、CPU1及びメインメモリ2に加え、バス調停回路3、メモリ監視回路4、及び一時メモリ5を備える。CPU1は通常は、メインメモリ2を使ってOS、やアプリケーションを実行する。メインメモリ2にはOS、アプリケーション及びそれらに必要なデータが格納されている。
バス調停回路3は、CPU1及びメモリ監視回路4からのバス使用要求に応じて、CPU1又はメモリ監視回路4のいずれかにバス使用許可を送信する機能を有する。例えば、通常はCPU1にバス使用許可を送信し、メモリ監視回路4からバス使用要求があれば、CPU1へのバス使用許可を停止し、メモリ監視回路にバス使用許可を送信する。すなわち、メインメモリ2の監視中は、CPUのメインメモリ2へのアクセスを禁止し、メモリ監視回路4のメインメモリ2へのアクセスを許可する。
一時メモリ5は、メモリ監視回路4がメインメモリ2のWRITE/READチェックをする前にメインメモリ2のデータを一時退避するために使用される。
メモリ監視回路4は、図2に示すように、メインメモリ2のデータの一部又は全部を監視対象領域20(20〜20)とし、当該監視対象領域20のデータを一時メモリ5に退避し、監視対象領域20のテストを実行する。ここでは、メインメモリ2の一部領域を監視対象領域20としているが、全部を監視対象領域としてもよい。
このメモリ監視回路4は、バス調停回路3にバス使用要求する機能、バス6を占有している間にメインメモリ2の一の監視対象領域を一時メモリ5に退避させる機能、メインメモリ2の監視対象領域のWRITE/READテストを実行する機能、一時メモリ5のデータを前記メインメモリ2の監視対象領域に書き戻す機能、バス調停回路3へのバス使用要求を停止する機能、これらの機能を定期的に、メインメモリ2の監視対象領域20を変更しながら実行する機能を有する。
本実施の形態においては、メモリ監視回路4は定期的にメインメモリ2の複数の監視対象領域20のいずれか一に対して以下のメモリ監視動作を実行する。先ず、バス調停回路3にバス使用要求を送信する。このとき、使用要求が許可されれば、バスの使用許可がCPU1からメモリ監視回路4に移る。次に、メインメモリ2の監視対象領域を一時メモリに退避する。そして、監視対象領域をWRITE/READテストする。この場合、書き込んだデータと読み出したデータに不一致があればメインメモリ2の異常と判断する。次に、一時メモリ5に退避したデータをメインメモリ2の監視対象領域に戻す。最後に、バス使用要求の送信を停止する。これにより、バスの使用許可がCPU1に移る。
このようなメモリ監視動作はメインメモリ2の監視対象領域20を変更しながら定期的に実行することにより、メインメモリ2全体の監視をする。この方式により、システムが運用中でも、現在使用されている領域か使用されていない領域かに関係なく、メインメモリ2全体の監視が可能となる。
次に、図3乃至図9を参照してメモリ監視動作について更に詳細に説明する。図3乃至図8は、バス6の使用状況を説明する図、図9は、メモリ監視動作を示すフローチャートである。通常は、図3に示すように、メモリ監視回路4からのバス使用要求は「OFF」、バス調停回路3からCPU1へのバス使用許可は「ON」、バス調停回路3からメモリメモリ監視回路4へのバス使用許可は「OFF」となっている。CPU1がバスを使用できる状態となっており、CPU1はメインメモリ2を使って、OSやアプリケーションを実行する。そして、メモリ監視回路4は定期的に図4〜図8に示すメモリ監視動作を実行する。
先ず、図4に示すように、メモリ監視動作を実行する場合、メモリ監視回路4は、先ず、バス調停回路3に対するバス使用要求を「ON」にする(ステップS1)。バス調停回路3はCPU1のバス使用要求が「OFF」になったら、CPU1へのバス使用許可を「OFF」、メモリ監視回路4へのバス使用要求を「ON」にする。
メモリ監視回路4へのバス使用要求が「ON」になったら、メモリ監視回路4は図5に示すように、メインメモリ2の一部領域である一の監視対象領域20のデータを一時メモリ5に退避する(ステップS2)。データの退避が終わったら、メモリ監視回路は図6に示すように、メインメモリ2のデータを退避させた監視対象領域20のWRITE/READテストを実行する。WRITE/READテスト動作例は次の通りである。すなわち、
ステップS3:監視対象領域の先頭アドレスに対して0xAAAAを書き込む。
ステップS4:上記アドレスからデータを読み出す。
読み出したデータが0xAAAAであれば正常、違えば異常と判断する(ステップS5、6)。
ステップS7:上記アドレスに対して0x5555を書き込む。
ステップS8:上記アドレスからデータを読み出す。
読み出したデータが0x5555であれば正常、違えば異常と判断する(ステップS9、S6)。
ステップS10:監視対象領域の全アドレスに対して実行する。
監視対象領域20のWRITE/READテストが完了したら、図7に示すように、一時メモリ5に退避させていた監視対象領域20のデータをメインメモリ2に書き戻す(ステップS11)。メインメモリ2のデータ復帰が完了したら、図8に示すように、メモリ監視回路4からバス調停回路3へのバス使用要求を「OFF」にする(ステップS12)。バス調停回路3はメモリ監視回路4へのバス使用許可を「OFF」にする。バス調停回路3はCPU1からのバス使用要求が「ON」であれば、CPU1へのバス使用許可を「ON」にする。この動作により図3に示す通常動作に戻る。ここで、ステップS5において、書き込んだデータと読み出したデータとが一致しない場合は、その異常を検出した旨を外部に通知又は表示することができる(ステップS6)。または、当該アドレスを使用禁止にすることができる。
次にメモリ監視回路4がメモリ監視動作をするときは、図2に示すように監視対象領域20を隣の領域に変更する。これらの動作を繰り返すことで、運用中のシステムでメインメモリ2全体の監視が可能となる。
本実施の形態においては、メインメモリ2の監視対象領域20を監視する際、メモリ監視回路4のみがメインメモリ2にアクセスできる状態にする。そして、メインメモリ2の監視対象領域20のデータを一時メモリ5に退避した上で、WRITE/READテスト実施し、終わったら退避したデータをメインメモリ2の当該監視対象領域20に書き戻しているので、システムが運用中でも、使用領域・未使用領域に関わらずメインメモリ2全体の監視ができる。また、メインメモリ2の監視中には、CPU1は、バスの使用が許可されないため、メインメモリ2や一時メモリ5にアクセスすることがない。すなわち監視中のメインメモリのデータにアクセスすることがないため、監視中のメインメモリにデータ誤りがあってもそのアクセスを回避することができ、CPU1が誤ったデータを読み出すことを防止することができる。
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
本発明の実施の形態にかかる情報処理装置を示すブロック図である。 メインメモリにおける各監視対象領域を示す図である。 本発明の実施の形態にかかるメモリ監視動作中のバスの使用状態を示す図である。 同じく、本発明の実施の形態にかかるメモリ監視動作中のバスの使用状態を示す図である。 同じく、本発明の実施の形態にかかるメモリ監視動作中のバスの使用状態を示す図である。 同じく、本発明の実施の形態にかかるメモリ監視動作中のバスの使用状態を示す図である。 同じく、本発明の実施の形態にかかるメモリ監視動作中のバスの使用状態を示す図である。 同じく、本発明の実施の形態にかかるメモリ監視動作中のバスの使用状態を示す図である。 本発明の実施の形態にかかるメモリ監視動作を示すフローチャートである。
符号の説明
2 メインメモリ
3 バス調停回路
4 メモリ監視回路
5 一時メモリ
6 バス
10 情報処理装置
20 監視対象領域

Claims (11)

  1. 監視対象となるメインメモリの異常を監視するメモリ監視部と、
    前記メインメモリに格納されたデータを一時的に退避するための一時メモリと、
    前記メインメモリの監視中に、前記メインメモリに格納されたプログラムを実行する中央処理装置の前記メインメモリへのアクセスを禁止し、前記メモリ監視部の前記メインメモリへのアクセスを許可するバス調停部とを有し、
    前記メモリ監視部は、前記メインメモリのデータの一部又は全部を監視対象領域とし、当該監視対象領域のデータを前記一時メモリに退避し、前記監視対象領域のテストを実行する、メモリ監視回路。
  2. 前記メモリ監視部は、前記メインメモリの監視を開始する際、前記バス調停部にバス使用要求を送信し、
    前記バス調停部は、前記メモリ監視部のバスの使用を許可する場合は、前記中央演算装置の前記メインメモリへのアクセスを禁止する
    ことを特徴とする請求項1記載のメモリ監視回路。
  3. 前記メモリ監視部は、前記監視対象領域を前記メインメモリの一部とし、前記メインメモリの監視中には、当該メインメモリの一部のデータを前記一時メモリに退避させる
    ことを特徴とする請求項1又は2記載のメモリ監視回路。
  4. 前記メモリ監視部は、前記監視対象領域に試験データを書き込み、当該書き込んだデータを読み出し、当該読み出した値と書き込んだ値の一致判定を行なう
    ことを特徴とする請求項1乃至3のいずれか1項記載のメモリ監視回路。
  5. 前記メモリ監視部は、前記一致判定の結果、不一致を発見した場合はそれを外部に表示又は通知させる機能を有する
    ことを特徴とする請求項4項記載のメモリ監視回路。
  6. 前記メモリ監視部は、前記一致判定の結果、異常がない場合は、前記一時メモリに書き込んだデータを前記監視対象領域に書き戻す
    ことを特徴とする請求項5項記載のメモリ監視回路。
  7. 前記メモリ監視部は、前記一時メモリに書き込んだデータを前記監視対象領域に書き戻した後、前記バス調停部へのバス使用要求を停止し、
    前記バス調停部は、前記中央処理装置の前記メインメモリへのアクセスを許可する
    ことを特徴とする請求項5項記載のメモリ監視回路。
  8. 前記メモリ監視部は、前記メインメモリの監視動作を定期的に実行する
    ことを特徴とする請求項1乃至7のいずれか1項記載のメモリ監視回路。
  9. 前記メモリ監視部は、前記メインメモリの監視対象領域を変更する
    ことを特徴とする請求項8記載のメモリ監視回路。
  10. 監視対象となるメインメモリと、
    前記メインメモリに格納されたプログラムを実行する中央処理装置と、
    前記メインメモリの異常を監視するメモリ監視部と、
    前記メインメモリに格納されたデータを一時的に退避するための一時メモリと、
    前記メインメモリの監視中に、前記中央処理装置の前記メインメモリへのアクセスを禁止し、前記メモリ監視部の前記メインメモリへのアクセスを許可するバス調停部とを有し、
    前記メモリ監視部は、前記メインメモリのデータの一部又は全部を監視対象領域とし、当該監視対象領域のデータを前記一時メモリに退避し、前記監視対象領域のテストを実行する、情報処理装置。
  11. メインメモリを監視するメモリ監視部と、当該メインメモリに格納されたプログラムを実行する、前記メインメモリ及びメモリ監視部と相互にバスで接続された中央処理装置との当該バスの使用許否を決定するバス調停部に対し、前記メモリ監視部がバス使用要求を送信し、
    前記バス使用要求を受信した前記バス調停部が、前記メモリ監視部のみが前記バスを使用できるようにし、
    前記メインメモリの一部又は全部を監視対象領域とし、前記メモリ監視部が当該監視対象領域のデータを前記メインメモリに退避し、
    前記メモリ監視部が前記監視対象領域のテストをするメモリ監視方法。
JP2007079159A 2007-03-26 2007-03-26 メモリ監視回路、情報処理装置、及びメモリ監視方法 Pending JP2008242592A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007079159A JP2008242592A (ja) 2007-03-26 2007-03-26 メモリ監視回路、情報処理装置、及びメモリ監視方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007079159A JP2008242592A (ja) 2007-03-26 2007-03-26 メモリ監視回路、情報処理装置、及びメモリ監視方法

Publications (1)

Publication Number Publication Date
JP2008242592A true JP2008242592A (ja) 2008-10-09

Family

ID=39913902

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007079159A Pending JP2008242592A (ja) 2007-03-26 2007-03-26 メモリ監視回路、情報処理装置、及びメモリ監視方法

Country Status (1)

Country Link
JP (1) JP2008242592A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014137734A (ja) * 2013-01-17 2014-07-28 Toyota Motor Corp 情報処理装置、プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014137734A (ja) * 2013-01-17 2014-07-28 Toyota Motor Corp 情報処理装置、プログラム

Similar Documents

Publication Publication Date Title
JP2008287319A (ja) 半導体デバイス、電子装置及びアクセスログ取得方法
JP2007257441A (ja) プロセッサおよびプロセッサ制御方法
JP2005149501A (ja) Dmaを使用して拡張カードでメモリをテストするためのシステムおよび方法
WO2010032330A1 (ja) 情報処理装置及びそのメモリ保護方法
US7350109B2 (en) System and method for testing a memory using DMA
JP2008242592A (ja) メモリ監視回路、情報処理装置、及びメモリ監視方法
US20080147894A1 (en) Method for reading input/output port data
JP2007058450A (ja) 半導体集積回路
US7689864B2 (en) Processor comprising an integrated debugging interface controlled by the processing unit of the processor
JP2006079485A (ja) 電子計算機における障害解析用情報収集方式
CN109358903A (zh) 数据访问设备和访问错误通知方法
JP2002229811A (ja) 論理分割システムの制御方法
JP5053002B2 (ja) ハードウェア監視ユニット
EP3907614A1 (en) Semiconductor device
US7765383B2 (en) Data processing unit and data processing apparatus using data processing unit
JP4853620B2 (ja) マルチプロセッサシステムと初期立ち上げ方法およびプログラム
JP4527419B2 (ja) プログラムトレース方法およびトレース処理システム
JP3341738B2 (ja) メモリのエラー検出方式
JP5818831B2 (ja) 情報処理装置
JP3340284B2 (ja) 冗長システム
JP5447841B2 (ja) 情報処理装置、デバッグ情報取得方法、およびデバッグ情報取得プログラム
JPH01279346A (ja) オンラインメモリチェック方式
JP2006171962A (ja) コンピュータシステムの試験診断方法
JPH0215353A (ja) 特定アドレス時異常設定方式
JP2007041887A (ja) デバッグ装置、そのメモリアクセス方法およびメモリアクセス方法を実現するプログラム