JPH0816420A - 小型情報処理装置のエラー処理方法 - Google Patents

小型情報処理装置のエラー処理方法

Info

Publication number
JPH0816420A
JPH0816420A JP6145855A JP14585594A JPH0816420A JP H0816420 A JPH0816420 A JP H0816420A JP 6145855 A JP6145855 A JP 6145855A JP 14585594 A JP14585594 A JP 14585594A JP H0816420 A JPH0816420 A JP H0816420A
Authority
JP
Japan
Prior art keywords
error
system management
signal
cpu
nmi
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
JP6145855A
Other languages
English (en)
Inventor
Yukihiro Seki
行宏 関
Akito Oshimura
明人 押村
Masayuki Tosaka
雅之 登坂
Ryuichi Hattori
隆一 服部
Yasuhiro Hida
庸博 飛田
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP6145855A priority Critical patent/JPH0816420A/ja
Publication of JPH0816420A publication Critical patent/JPH0816420A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 【目的】OSなどの既存のソフトウェアに対して影響せ
ずに、開発、保守が容易なエラー処理方法を提供する。
RAS機能の向上などを目的として追加したハードウェ
アを、OSなどの既存のソフトウェア環境のままで活用
し、保守性を向上させる。 【構成】 マスク処理割り込みでトラップされる回復不
可能エラーを、CPUにシステム管理割り込みで通知
し、マスク処理割り込みによるエラー処理とは別に、シ
ステム管理割り込みで起動されるエラー処理ルーチンに
て、エラー要因やエラー発生アドレスのロギング処理な
どをおこなう。また、このシステム管理割り込みの通知
を切替る手段として、レジスタなどを設ける。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ワークステーション、
パーソナルコンピュータなどの小型情報処理装置のエラ
ー処理方法に係り、特に、汎用OS(オペレーティング
システム)との互換性を保ちつつ、エラー処理機能を強
化し保守性を向上させるのに好適なエラー処理方法に関
する。
【0002】
【従来の技術】パーソナルコンピュータにおいては、主
メモリのパリティエラーまたはバスの致命的エラーが発
生すると、CPUにNMI(Non Maskable Interrupt:
マスク不可能割り込み)を引き起こすことが標準的であ
る。
【0003】CPUは、NMI割り込みが発生するとエ
ラー処理ルーチンを起動する。このエラー処理ルーチン
は、多くの場合、アドレス0F0000H(あるいは0E0000H)
から始まるBIOS内におかれていて、エラーが発生し
たことを画面に表示してユーザに通知するとともに、H
LT(Halt)命令を実行してCPUの動作を停止させ
る。というのも、NMIの要因であるメモリのパリティ
エラーやバスのエラーは、基本的にソフトウェアでは回
復ができないため、それ以降の処理を停止せざるを得な
いからである。そして、一般に、ユーザは、エラーが発
生したなら、電源を再投入するなどしてハードウェア的
な回復を試みる。
【0004】このような標準的なNMIに関する機能に
対して、保守性を向上させる目的から、それぞれのメー
カにおいていくつかの機能を追加するようになってきて
いる。
【0005】例えば、NMIの発生原因がメモリである
かバスであるかなど要因の識別がつけば、保守作業は容
易になる。さらにメモリであれば、どのアドレスで起こ
ったかという情報があれば、どのメモリ基板を交換すべ
きかが即座に分かる。このような機能を「エラーロギン
グ」と呼び、例えば、特開平1−243153号公報な
どにこのような技術が開示されている。
【0006】このエラーロギング機能を適用したときの
NMI処理の一例を示せば、エラーで起動されるNMI
処理ルーチンでは、エラーに関する情報を保持している
I/Oレジスタを読み出して不揮発性メモリに格納す
る。そして、後日保守員がこの不揮発性メモリの内容を
読み出せば、どのエラーがどのようにおきたかの解析が
容易となるというものである。
【0007】
【発明が解決しようとする課題】ところで、パソコンに
使用される最近のOSは、OSの内部でNMIの処理を
おこなうようになってきた。このように、OSがNMI
処理をおこなうに際しては、ベクタフックという技法が
用いられる。これはパソコンで使用されているCPUを
活用する上でのよく知られたテクニックであり、割り込
みベクタテーブルの内容を、元のルーチンのエントリア
ドレスから、新しいルーチンのエントリアドレスに書き
換えるだけで、割り込み処理をさせるものある。NMI
の場合は、例えば、Intel x86プロセッサのリアルモー
ド動作ときは、メモリアドレス00008Hに書かれているア
ドレスがNMI処理の先頭を示しているので、そこを新
しいルーチンのエントリアドレスに書き換える。
【0008】このようにすることで、本来はNMIでB
IOS内のルーチンが起動されていたものを、OS内の
NMI処理ルーチンを起動するように、容易に変更する
ことができる。
【0009】ところで、市販のOSのエラー処理ルーチ
ンはあくまでパソコンに備わっている標準ハードウェア
リソースのみを対象としている。すなわち、先ほど説明
したようなRAS向上のためのエラーロギング機能を追
加したとしても、標準ハードウェアに対応したOS側は
関知し得ないため、OSのエラー処理ルーチンで、それ
を活用することはできない。したがって、エラーロギン
グ機能を追加したにもかかわらず、市販のOSのエラー
処理ルーチンにエラー時の処理を任せた場合には、保守
性に関しては、通常のパソコンと同等であり向上を見な
い。
【0010】これを解決するには、OSのNMI処理ル
ーチンを変更すればよいが、いくつかの問題があって難
しい。一つ目は、そのようにすると、流通する標準のO
S以外に、機種に依存した別のOSを提供しなければな
らなくなる。流通OSは、ユーザには、入手しやすく、
広くコンピュータショップで購入できるが、機種依存O
Sは、入手しにくく、提供されていないこともありう
る。
【0011】機種に依存した別のOSを提供せずに、N
MI処理ルーチンを変更するための対応としては、NM
I処理ルーチンをハードウェア本体に付加し、一般的な
デバイスドライバの様にしてOSにインストールするこ
とが考えられる。しかし現在入手可能なOSの種類は非
常に多く、それらすべてに対応したNMI処理ルーチン
を開発することは困難である。また、流通OSはOSベ
ンダーがバグの修正や機能アップなどに伴って頻繁にバ
ージョンアップをおこなう。NMI処理ルーチンもそれ
に併せてバージョンアップを行なわねばならず、これも
保守、開発上の困難をともなう。
【0012】二つ目は、最近のOSは規模が大きく複雑
であり、中にはソースプログラムを一切提供しないOS
ベンダーもあって、エラー処理ルーチンの変更ができな
い場合がある。あるいは、NMI処理ルーチンをハード
ウェアメーカの望む形で組み込めない場合もあり得る。
【0013】本発明は、上記従来技術の問題点を解決す
るためになされたもので、その目的は、OSなどの既存
のソフトウェアに対して影響せずに、開発、保守が容易
なエラー処理方法を提供することである。
【0014】また本発明の他の目的は、RAS機能の向
上などを目的として追加したハードウェアを、OSなど
の既存のソフトウェア環境のままで活用し、保守性を向
上させることにある。
【0015】また本発明の他の目的は、NMIより優先
度の高い上位の割り込みに対するエラー処理をイネーブ
ルに選択できるようにすることで、柔軟に、それぞれの
エラーの単独のテストができるエラー処理方法を提供す
ることである。
【0016】
【課題を解決する手段】上記目的を達成するために本発
明の小型情報処理装置のエラー処理方法に係る発明の構
成は、マスク不可能割り込みとそれより優先度の高いシ
ステム管理割り込みとを受け付けるCPUを有し、少な
くともメモリエラーを含む回復不可能なエラーを検出す
るエラー検出手段と、前記エラーを前記CPUのマスク
不可能割り込み入力に通知する手段と、前記マスク不可
能割り込みによって起動されるエラー処理ルーチンとを
備えた小型情報処理装置において、前記エラーを前記C
PUの前記システム管理割り込み入力に通知する手段
と、前記システム管理割り込みで起動されるシステム管
理エラー処理ルーチンを備え、前記エラーがおこったと
きに、マスク不可能割り込みによって起動されるエラー
処理ルーチンを起動して、タイミングとしては、その起
動の起動前、起動中、起動後に、前記システム管理割り
込みで起動されるシステム管理エラー処理ルーチンを実
行せしめるようにしたものである。
【0017】またより詳しくは、前記少なくともメモリ
エラーを含む回復不可能なエラーの発生時のエラー要因
を記憶する手段と他の記憶手段とを備えた小型情報処理
装置において、前記システム管理エラー処理ルーチンに
おいては、前記エラー要因記憶手段から前記エラー要因
を読み出し、これを前記他の記憶手段に書き込む処理を
おこなうようにしたものである。
【0018】また別に詳しくは、前記少なくともメモリ
エラーを含む回復不可能なエラーの発生時のバス値を記
憶する手段と他の記憶手段とを備えた小型情報処理装置
において、前記システム管理エラー処理ルーチンにおい
ては、前記バス値記憶手段からバス値を読み出し、これ
を前記他の記憶手段に書き込む処理をおこなうようにし
たものである。
【0019】また、本発明の小型情報処理装置のエラー
処理方法に係る発明の別の構成は、前記エラーによる前
記CPUへの前記システム管理割り込み入力の通知を活
性化、不活性化する切り替え手段を設けたようにしたも
のである。
【0020】
【作用】本発明は、NMIがおこったときに、より優先
度が高いシステム管理割り込みを引き起こし、そこにエ
ラー処理を既述することができる。システム管理割り込
みは、NMIを含む通常の動作からはまったく切り離さ
れているため、どのようなOS環境下でも、互換性上の
問題もなく動作し、OSを書き替えたり、OSに依存す
ることなくエラー処理を既述することができるという作
用がある。
【0021】また、このエラー処理で、エラーロギング
をおこなうことにより、、メモリエラーやバスエラーな
どの回復不可能なエラーが発生したとき、そのエラー要
因やエラーアドレスを記憶することができる。よって、
後ほどその情報から不良部分の特定や基板などの交換の
判断を行なうことができ、ハードウェアの保守性が向上
する。
【0022】また、システム管理割り込みをイネーブル
/ディスエーブルすることで、エラー系のハードウェア
とエラー処理ルーチンが正しく起動することを、個別に
テスト可能であるという作用もある。
【0023】
【実施例】以下、本発明に係る実施例を図1ないし図5
を用いて説明する。最初に本発明の考え方について概説
する。
【0024】OSに依存しないエラー処理を提供するた
めには、OS側には一切手をいれず、ハードウェアとハ
ードウェアに付属するソフトウェア(「ファームウェ
ア」と呼ばれることもある)によって処理をおこなうよ
うにすればよい。
【0025】そこで、NMIよりも優先度の高いシステ
ム管理割り込み(System Management Interrupt)を持
つCPUを利用し、エラーを一旦システム管理割り込み
にてCPUに通知し、システム管理割り込み内のルーチ
ンでエラー処理をおこなうようにする。
【0026】また、RAS機能の向上などを目的として
ハードウェアを追加した場合は、システム管理割り込み
のエラー処理ルーチンで、このハードウェアを用いたの
エラーロギングなどの処理をおこなうことができる。
【0027】システム管理割り込みは、NMIを含む通
常の動作からはまったく切り離されているため、どのよ
うなOS環境下でも、互換性上の問題もなく動作する。
すなわち、エラー発生から本来のNMI処理ルーチンの
起動までの間を、システム管理割り込みが横取りするイ
メージである。
【0028】また、電源投入時などでは、エラー系のテ
ストを行なう必要がある。そこで、割り込みのイネーブ
ルを設定するレジスタを設け、システム管理割り込みと
NMIとを、個別にマスクできるようにしておけばよ
い。
【0029】上で述べたことを、より具体的に説明しよ
う。例えば、近年パソコンによく使用されている米国In
tel CorporationのSL Enhanced i486SX/DX CPUは、
NMI割り込みよりも優先度の高いシステム管理割り込
み機能を持っている。システム管理割り込み入力信号S
MI(System Management Interrupt)#がアクティブに
なると、システム管理モード(System Management Mode)
に内部動作が切り替わる。これは出力信号SMIACT
(System Management Interrupt ACTive)#によって、外
部に通知される。
【0030】外部におかれたメモリコントローラは、S
MIACT#信号を用いてメモリマップを切り替えるよ
うにする。これによって、システム管理モードで動作す
るプログラムは、通常動作しているプログラムに影響を
与えることはない。すなわち、メモリマップ的に「絶
縁」(isolate)することができる。そして、システム管
理モード時は、この切り替わったメモリマップ上でエラ
ー処理をおこなう。
【0031】また、RAS機能の向上などを目的とし
て、不揮発性メモリなどのハードウェアを追加した場合
は、エラーロギング処理をおこなうことができる。すな
わち、エラー要因やエラー発生アドレス情報をラッチし
たレジスタを読み出し、その内容を不揮発性メモリなど
他のメモリへ書き込んでおく。
【0032】なお、これらエラー処理ルーチンは、あら
かじめ電源投入時の初期化処理で該当するメモリ上に転
送しておくか、あるいはROM化しておけばよい。
【0033】エラー処理終了後に、RSM(Return from
System management Mode)命令を実行すれば、SL Enhan
ced i486 CPUはシステム管理モードから通常モードに復
帰する。通常モードからすれば、いわば、システム管理
モードでの処理はまったく「透明」(transparent)であ
って、通常動作になんら影響を与えることはない。
【0034】NMI処理の起動に際しては、SMI#入
力の方がNMI入力より優先度が高いことを利用して、
同時タイミングでCPUに入力するか、システム管理モ
ードになってから遅れて入力する。そして、システム管
理モードから通常動作モードへ復帰した直後、NMI入
力のエッジ(NMI信号の立上り部分)がCPU内部で
記憶されているため、速やかにNMIが認識されて本来
のNMIルーチンへと処理が移る。
【0035】ここで、本来のNMI処理とは、OSがN
MIにフックをかけている(すなわち、既述のベクタフ
ックによりNMI処理をおこなわせようとしている)な
ら、OS内のNMI処理ルーチンであり、OSがNMI
にフックをかけていないときは、元々のBIOS内のN
MI処理ルーチンである。
【0036】また、システム管理割り込みのイネーブル
を設定するレジスタを設け、エラーが発生したときに、
NMIに入力するかシステム管理割り込みとして入力す
るか、あるいは双方とするかを任意に設定できるように
しておく。
【0037】さて次に、上述の発明の概要をふまえて、
図1を用いて本発明に係るエラー処理方法を実現するた
めの回路とその動作について説明しよう。
【0038】図1は、本発明に係るエラー処理方法を実
現するための回路のブロック図である。なお、この図1
において、パソコンなどの情報機器を構成するのに必要
な他の周辺装置等は、本発明の説明ではとくに関連しな
いので省略している。
【0039】本実施例では、回路の構成要素間でやり取
りされる信号が特に重要である。以下の説明では、図1
に登場するPCHK#信号10、NMI信号11、SM
I#信号12、SMIACT#信号13を詳しく記述す
るものとする。
【0040】PCHK(Parity Check)#信号10は、メ
モリ5のパリティエラーをCPU1からとエラー制御部
9に知らせる信号である。すなわち、メモリ5は、パリ
ティビットを持っているものとし、CPU1は、メモリ
5読み出し時にパリティチェックをおこなう。もし、メ
モリ5のパリティエラーが検出されると、パリティエラ
ーを示すPCHK#信号10を介してエラー制御部9に
通知する。PCHK#信号10による通知を受けたエラ
ー制御部9では、逆に、CPU1にNMI(NonMaskable
Interrupt)#信号11を出力して、CPU1へ割り込
みをかける。なお、このエラー制御部9の内部構成例に
ついては、図2を用いて後に詳しく説明する。
【0041】NMI信号11は、マスク不可能割込みを
知らせる信号であったが、システム管理割り込みをおこ
すため、これと同時に、極性を合うようにこの信号を反
転し、SMI#信号12としてCPU1へ入力する。
【0042】このSMI#信号12を受けて、CPU1
は、SMI#信号12がアクティブになった次の命令境
界でシステム管理モードへと動作を切り替える。同時
に、外部に対し、SMIACT#信号13を出力して、
モードがシステム管理モードに切り替わったことを知ら
せる。メモリコントローラ3は、SMIACT#信号1
3をメモリマップ切り替えの制御に利用する。
【0043】次に、図2を用いてエラー制御部9の回路
構成とその動作について説明する。
【0044】図2は、エラー制御部9の回路構成図であ
る。プロセッサバス2のアドレス情報は、メモリ5のア
クセスタイミング信号の一つであるCAS(Column Addr
ess Strobe)#信号15で、毎アクセス時にラッチ回路
16にラッチする。このCAS#信号15は、本来、D
RAMコントロール信号であるが、これをアドレス取り
込みに流用しようとするものである。
【0045】パリティエラーPCHK#信号10がFF
17に入力されると、FF17は、1にセットされる。
そして、OR回路を介して、負論理AND回路でAND
することにより、CAS#はマスクされ、ラッチ回路1
6に供給されるクロックは、”H”に固定される。この
ようにするのは、こうしないと、パリティエラー発生後
もラッチ回路16で、アドレスラッチが更新され続け、
エラーが発生したアドレスを保持できないためであり、
これによって、ラッチ回路16は、パリティエラーが検
出されたメモリアドレスを保持したままとなる。
【0046】次に、このメモリアドレスを読みだす場合
について説明する。システムバス6のアドレスをアドレ
スデコード回路19でデコードし、これとシステムバス
6上のI/O読み出しコマンドであるIORC(I/O Rea
d Command)#信号61とアンドして、レジスタ読み出し
信号20を作成する。ここでは、メモリアドレスを読み
だす場合に、デコードした結果であるアドレスオフセッ
トが、0となるようアドレスデコード回路19を構成す
る。なお、ここでいうレジスタとは、ラッチ回路16、
FF17、18で構成されるレジスタのことである。そ
して、このレジスタ読み出し信号20により、ラッチ回
路16、FF17、18で構成されるレジスタの保持す
るメモリアドレスを読み出す。
【0047】図には示していないが、エラー処理ルーチ
ンは、SMIで起動され、上述したようにして、ラッチ
回路16、FF17、18で構成されるレジスタを読み
出し、図1に示した不揮発性メモリ8に書き込む。
【0048】逆に、アドレスデコード回路19において
は、アドレスオフセット1がクリア信号となるように構
成しておく。アドレスデコード回路19から、アドレス
オフセット1が読み出されると、クリア信号21によっ
てFF17、18がクリアされ、ラッチ回路16は、再
びアドレスラッチを開始する。
【0049】なお、パリティエラーPCHK#信号をラ
ッチ回路のラッチ信号として利用することも考えられる
のであるが、一般にパリティエラーが検出されるのは検
出回路の遅延などを考慮するとメモリサイクルが終了し
てからである。そうすると、プロセッサバス2上にはも
はや有効なアドレスはなく、あるいは次のアドレスとな
っており、正確なラッチができなくなる。よって、通常
はラッチを行なっておいて、エラー後は、ラッチを停止
するような動作を本例では示した。
【0050】なお、最近ではメモリアクセス性能を向上
させるため、ライトバッファやプリフェッチバッファな
どを内蔵するメモリコントローラ3が増えているが、こ
のような高速化手段を採用するとメモリ5に実際に与え
るアドレスとプロセッサバス2のアドレスとが同一であ
る保証はない。図2では、これを同一とした場合である
が、もし異なる場合は、メモリ5に与えるメモリアドレ
スをラッチするようにラッチ回路16の入力を変更する
のみでよい。
【0051】上述したのは、PCHK#信号が、FF1
7に入力されて、メモリアドレスを読み出す場合につい
て説明したものであるが、IOCHK(I/O Check)#信
号14が、FF18に入力されても、同様の動作をおこ
なう。ここで、IOCHK#信号14は、システムバス
6で発生した回復不可能エラーを示す信号であり、上で
述べたFF18の動作は、FF18が、このIOCHK
#信号14に対応した要因ロギングレジスタとして動作
することを意味している。
【0052】次に、図3を用いてシステム管理割り込み
を介してのエラー通知機能のイネーブル/ディスエーブ
ルを切り替えられる機能について説明する。図3は、シ
ステム管理割り込みを介してのエラー通知機能のイネー
ブル/ディスエーブルを切り替える機構を説明するブロ
ック図である。
【0053】エラー制御部9にレジスタ回路22を設け
る。そして、このレジスタ回路22には、システム管理
割り込みによるエラー通知をイネーブルにするかどうか
をシステムバス6を介して設定する。ここで、62はI
/O書き込みコマンドIOWC(I/O Write Command)#
信号である。図3の論理回路から明らかなように、レジ
スタ回路22に1が設定されていれば、システム管理割
り込みによるエラー通知は、イネーブルとなり、CPU
1にSMI#信号がアクティブになり、逆に、0を設定
すればディスエーブルとなり、CPU1にSMI#信号
は、インアクティブになる。これは、先ほど述べたOS
によるエラー処理サポートだけでなく、例えば、電源投
入時の自己診断処理において、SMIの処理を起動せず
に、NMI部分のみに関する機能の診断を行なうときな
どに利用できる。
【0054】なお、本図ではソフトウェアで制御できる
例としてレジスタで説明したが、他の手段、すなわちハ
ードウェアによるジャンパー設定、ディップスイップ、
ショートピンなどでも構わない。
【0055】なお、NMIをイネーブル/ディスエーブ
ルする機能はパソコンの標準仕様に含まれているのが一
般的であるが、本発明の特徴は、エラーに伴うシステム
管理割り込みを任意に制御できるようにしたことであ
る。
【0056】以上、本発明の一実施例をハードウェアの
実現方法という面から説明したが、次に、図4および図
5を用いてソフトウェア上での実現方法という面から説
明する。図4は、本発明の一実施例に係るメモリマップ
である。
【0057】30は、CPU1のメモリ空間、31はベ
クターテーブルであって、アドレス00000H〜003FFHにあ
る。NMIベクタ32は、アドレス00008Hに置かれてい
る。33はシステム管理メモリ空間であり、アドレス03
0000H〜03FFFFHであるとしている。この空間は、CPU
1がSMIACT#13を出力しているときに、メモリ
コントローラ3がこの領域を切り替える。なおCPU1
は、システム管理モードに動作モードが切り替わると、
アドレス038000Hから動作を開始するので、ここにエラ
ー処理ルーチン34を置いておく。35はアドレス0F00
00H〜0FFFFFHにあるBIOS7である。
【0058】次に、図5を用いてエラー発生時の処理の
流れを説明する。図5は、エラー発生時の処理の流れを
モードごとに示した模式図である。
【0059】OSないしアプリケーションソフト42が
通常動作しているモードを通常動作モード40とする。
【0060】ここで回復不可能エラーが発生し、ある時
刻42でSMI#信号10およびNMI信号11が、C
PU1に入力されたとする。CPU1はSMI#10信
号を認識し(処理44)、内部動作モードを通常モード
40からシステム管理モード41に切り替え、SMIA
CT#信号13を時刻45において出力する。この段階
で、SMIACT#信号13を受けたメモリコントロー
ラ3は、メモリマッピングを変更してシステム管理メモ
リ33に切り替える。
【0061】エラー処理ルーチン33においては、まず
エラー情報としてラッチ回路16とFF17、FF18
からロギング情報を読み出す(処理46)。続いて、そ
のデータを不揮発性メモリ8に書き込む(処理47)。
最後に、システム管理モード41から通常モード40へ
戻るためのRSM命令を実行する(処理48)。
【0062】通常モード40に戻ると、即座にCPU1
内部で保留されていたNMI11が認識されてNMIベ
クタ32を読んでNMI処理ルーチンへと移る(処理5
0)。ここで、本来のNMI処理をおこなう(処理5
1)。
【0063】最後に、NMI処理から元のOSなどへ戻
るのであれば、割り込みからの復帰命令であるIRET
(Interrupt Return)命令を実行するか、回復動作は不可
能であるならHLT命令を実行する(処理52)。この
図から分かるように、システム管理モード41の動作
は、通常モード40での動作に一切影響しないので、O
Sやアプリケーションソフトウェアなどの互換性を損ね
ることはない。
【0064】以上はエラーロギングを中心として説明し
たが、より一般的なエラー処理でも構わない。たとえて
説明すれば、エラー処理ルーチンにおいて、メモリエラ
ーがα線障害による一時的なものかメモリ素子故障で永
続的なものかをメモリテストによって切り分けることも
できる。あるいは冗長系を持つメモリであれば代替処理
を行なうことも可能である。あるいは、エラーの発生
を、パソコン本体のパネルのLEDなどを使用して、よ
り細かくユーザに示すこともできる。
【0065】電源投入時などでの自己診断では、図3に
示したように、システム管理割り込みをイネーブル/デ
ィスエーブルすることで、個別のハードウェアをテスト
し得る。
【0066】なお、このテストのために、エラーを強制
的に発生する機構については、エラー制御部においてP
CHK#信号10を強制的にアクティブにする、データ
パスコントローラ4においてメモリ5への書き込み時に
パリティを反転しておき、読み出しでパリティエラーを
発生させる、あるいはデータパスコントローラ4でメモ
リ5の読み出し時にパリティを反転してプロセッサバス
2へ伝達したりするなどの方法がある。
【0067】以上の説明では、インテル社のSL Enhance
d i486 CPUによる信号名、命令名およびシステム管理割
り込みに関する動作を用いて説明したが、同様のシステ
ム管理モード、ないしは同様にNMIより優先度の高い
割り込みを有する他のCPUでも、本発明を適用しうる
ことはもちろんである。
【0068】また、図4におけるメモリマップも、これ
に限定されるものではない。要は、NMIよりも優先度
の高い割り込みを用いて、エラー処理を拡張することが
本発明の要旨であるであるから、この思想内において様
々な応用への適用が考えられる。
【0069】
【発明の効果】本発明によれば、OSなどの既存のソフ
トウェアに対して影響せずに、開発、保守が容易なエラ
ー処理方法を提供することができる。
【0070】また本発明によれば、RAS機能の向上な
どを目的として追加したハードウェアを、OSなどの既
存のソフトウェア環境のままで活用し、保守性を向上さ
せることができる。
【0071】また本発明によれば、NMIより優先度の
高い上位の割り込みに対するエラー処理をイネーブルに
選択できるようにすることで、柔軟に、それぞれのエラ
ーの単独のテストができるエラー処理方法を提供するこ
とができる。
【図面の簡単な説明】
【図1】本発明に係るエラー処理方法を実現するための
回路のブロック図である。
【図2】エラー制御部9の回路構成図である。
【図3】システム管理割り込みを介してのエラー通知機
能のイネーブル/ディスエーブルを切り替える機構を説
明するブロック図である。
【図4】本発明の一実施例に係るメモリマップである。
【図5】エラー発生時の処理の流れをモードごとに示し
た模式図である。
【符号の説明】
1…CPU、2…プロセッサバス、3…メモリコントロ
ーラ、4…データパスコントローラ、5…メモリ、6…
システムバス、7…BIOS、8…不揮発性メモリ、9
…エラー制御部、10…PCHK#信号、11…NMI
信号、12…SMI#信号、13…SMIACT#信
号、16…ラッチ回路、17…FF、18…FF、19
…アドレスデコーダ回路、20…レジスタ読み出し信
号、22…レジスタ回路、30…メモリマップ、32…
システム管理メモリ、33…エラー処理ルーチン、40
…通常モード、41…システム管理モード、62…IO
WC#信号。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 服部 隆一 神奈川県川崎市麻生区王禅寺1099 株式会 社日立製作所システム開発研究所内 (72)発明者 飛田 庸博 神奈川県川崎市麻生区王禅寺1099 株式会 社日立製作所システム開発研究所内

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 マスク不可能割り込みとそれより優先度
    の高いシステム管理割り込みとを受け付けるCPUを有
    し、 少なくともメモリエラーを含む回復不可能なエラーを検
    出するエラー検出手段と、 前記エラーを前記CPUのマスク不可能割り込み入力に
    通知する手段と、 前記マスク不可能割り込みによって起動されるエラー処
    理ルーチンとを備えた小型情報処理装置において、 前記エラーを前記CPUの前記システム管理割り込み入
    力に通知する手段と、 前記システム管理割り込みで起動されるシステム管理エ
    ラー処理ルーチンを備え、 前記エラーがおこったときに、 マスク不可能割り込みによって起動されるエラー処理ル
    ーチンを起動して、 タイミングとしては、その起動の起動前、起動中、起動
    後に、前記システム管理割り込みで起動されるシステム
    管理エラー処理ルーチンを実行せしめることを特徴とす
    る小型情報処理装置のエラー処理方法。
  2. 【請求項2】 前記少なくともメモリエラーを含む回復
    不可能なエラーの発生時のエラー要因を記憶する手段と
    他の記憶手段とを備えた小型情報処理装置において、 前記システム管理エラー処理ルーチンにおいては、前記
    エラー要因記憶手段から前記エラー要因を読み出し、こ
    れを前記他の記憶手段に書き込む処理をおこなうことを
    特徴とする請求項1記載の小型情報処理装置のエラー処
    理方法。
  3. 【請求項3】 前記少なくともメモリエラーを含む回復
    不可能なエラーの発生時のバス値を記憶する手段と他の
    記憶手段とを備えた小型情報処理装置において、 前記システム管理エラー処理ルーチンにおいては、前記
    バス値記憶手段からバス値を読み出し、これを前記他の
    記憶手段に書き込む処理をおこなうことを特徴とする請
    求項1記載の小型情報処理装置のエラー処理方法。
  4. 【請求項4】 前記エラーによる前記CPUへの前記シ
    ステム管理割り込み入力の通知を活性化、不活性化する
    切り替え手段を設けたことを特徴とする請求項1記載の
    小型情報処理装置のエラー処理方法。
JP6145855A 1994-06-28 1994-06-28 小型情報処理装置のエラー処理方法 Pending JPH0816420A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6145855A JPH0816420A (ja) 1994-06-28 1994-06-28 小型情報処理装置のエラー処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6145855A JPH0816420A (ja) 1994-06-28 1994-06-28 小型情報処理装置のエラー処理方法

Publications (1)

Publication Number Publication Date
JPH0816420A true JPH0816420A (ja) 1996-01-19

Family

ID=15394649

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6145855A Pending JPH0816420A (ja) 1994-06-28 1994-06-28 小型情報処理装置のエラー処理方法

Country Status (1)

Country Link
JP (1) JPH0816420A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000276631A (ja) * 1999-03-26 2000-10-06 Fujitsu Ltd 自動取引装置
JP2007141240A (ja) * 2005-11-14 2007-06-07 Fujitsu Ltd コンピュータシステム及びコンピュータシステムにおけるインタラプトを処理するための方法
JP2009093257A (ja) * 2007-10-04 2009-04-30 Sony Corp 電子機器およびログ出力方法
US7594144B2 (en) 2006-08-14 2009-09-22 International Business Machines Corporation Handling fatal computer hardware errors
WO2014118940A1 (ja) * 2013-01-31 2014-08-07 三菱電機株式会社 計算機装置及び計算機装置の制御方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000276631A (ja) * 1999-03-26 2000-10-06 Fujitsu Ltd 自動取引装置
JP2007141240A (ja) * 2005-11-14 2007-06-07 Fujitsu Ltd コンピュータシステム及びコンピュータシステムにおけるインタラプトを処理するための方法
JP4709728B2 (ja) * 2005-11-14 2011-06-22 富士通株式会社 コンピュータシステム及びコンピュータシステムにおけるインタラプトを処理するための方法
US7594144B2 (en) 2006-08-14 2009-09-22 International Business Machines Corporation Handling fatal computer hardware errors
JP2009093257A (ja) * 2007-10-04 2009-04-30 Sony Corp 電子機器およびログ出力方法
US8463754B2 (en) 2007-10-04 2013-06-11 Sony Corporation Electronic equipment and log output method
WO2014118940A1 (ja) * 2013-01-31 2014-08-07 三菱電機株式会社 計算機装置及び計算機装置の制御方法
JP5877533B2 (ja) * 2013-01-31 2016-03-08 三菱電機株式会社 計算機装置及び計算機装置の制御方法
US9959225B2 (en) 2013-01-31 2018-05-01 Mitsubishi Electric Corporation Computer apparatus and control method of computer apparatus

Similar Documents

Publication Publication Date Title
US6158000A (en) Shared memory initialization method for system having multiple processor capability
US5819087A (en) Flash ROM sharing between processor and microcontroller during booting and handling warm-booting events
US5596759A (en) Method for initializing a multiple processor computer system using a common ROM
US9081734B2 (en) Restoring from a legacy OS environment to a UEFI pre-boot environment
US5357628A (en) Computer system having integrated source level debugging functions that provide hardware information using transparent system interrupt
KR100444537B1 (ko) 데이타처리장치
US8595552B2 (en) Reset method and monitoring apparatus
US7984219B2 (en) Enhanced CPU RASUM feature in ISS servers
US6775734B2 (en) Memory access using system management interrupt and associated computer system
EP0437550B1 (en) Information processing system emulation apparatus and method
US7120788B2 (en) Method and system for shutting down and restarting a computer system
US5307482A (en) Computer, non-maskable interrupt trace routine override
US6907521B2 (en) Enabling video BIOS and display drivers to leverage system BIOS platform abstract
US6106565A (en) System and method for hardware emulation of a digital circuit
US7536694B2 (en) Exception handling in a multiprocessor system
US5867658A (en) Method and apparatus for implementing a stop state for a processor in a multiprocessor system
JPH0816420A (ja) 小型情報処理装置のエラー処理方法
US6216225B1 (en) PC system having flash-ROM controlling device and method for protecting BIOS stored in flash-ROM
US20100169584A1 (en) System and method for erasing and writing desktop management interface data under a linux system
US4814977A (en) Apparatus and method for direct memory to peripheral and peripheral to memory data transfers
US7475212B2 (en) Method for reallocation of a memory of a subsystem, and subsystem
JP2006221606A (ja) データプロセッサ
KR20210080398A (ko) 메모리 내장 자체 테스트 컨트롤러를 이용한 판독 전용 메모리 테스트
JPH0934795A (ja) Cpuプログラムのコピープロテクト法
Zlatanov Booting an Intel System Architecture