JPH06161804A - Information processor - Google Patents

Information processor

Info

Publication number
JPH06161804A
JPH06161804A JP4318165A JP31816592A JPH06161804A JP H06161804 A JPH06161804 A JP H06161804A JP 4318165 A JP4318165 A JP 4318165A JP 31816592 A JP31816592 A JP 31816592A JP H06161804 A JPH06161804 A JP H06161804A
Authority
JP
Japan
Prior art keywords
failure
fault
diagnostic register
software
register
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
JP4318165A
Other languages
Japanese (ja)
Inventor
Toshibumi Akiyama
俊文 穐山
Kenji Matsubara
健二 松原
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 Computer Electronics Co Ltd
Hitachi Ltd
Original Assignee
Hitachi Computer Electronics Co Ltd
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 Computer Electronics Co Ltd, Hitachi Ltd filed Critical Hitachi Computer Electronics Co Ltd
Priority to JP4318165A priority Critical patent/JPH06161804A/en
Publication of JPH06161804A publication Critical patent/JPH06161804A/en
Pending legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

PURPOSE:To reduce the burden of a software by preventing the contents of a RAM from being destroyed when performing the test of fault processing. CONSTITUTION:When any fault such as a parity error is generated, the generation of the fault is detected by a fault detecting circuit 2, and the generating part and cause of the fault are remained in a diagnostic register 3 readable/ writable from the software. Interruption is generated by setting a bit showing the fault generating part and cause in the diagnostic register 3 to '1'. Thus, since the interruption can be generated only by turning the bit showing the fault generating part and cause in the diagnostic register to '1' even without reloading the contents of the RAM, the burden of the software can be lightened.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、情報処理装置、特に情
報処理装置における障害検出、障害報告の方式に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an information processing apparatus, and more particularly to a failure detection and failure reporting method in the information processing apparatus.

【0002】[0002]

【従来の技術】図2は、この方式における従来方式の一
例を示すブロック図である。障害検出回路2で障害の発
生が検出されると、障害検出回路2は、命令ユニット4
に障害が発生したことを報告すると同時に、診断用レジ
スタ3にその発生部位と要因を書き込む。
2. Description of the Related Art FIG. 2 is a block diagram showing an example of a conventional method in this method. When the failure detection circuit 2 detects the occurrence of a failure, the failure detection circuit 2 causes the instruction unit 4 to
At the same time as reporting that a failure has occurred, the location and cause of the failure are written in the diagnostic register 3.

【0003】この方式において、ソフトウェア障害処理
ルーチンのテストをする場合、例えば、キャッシュのパ
リティエラーという障害のテストをする場合、予めキャ
ッシュデータにパリティエラーとなるデータを書き込ん
でおき、そのデータをアクセスすることにより障害を発
生させるという方法があった。
In this method, when testing a software fault handling routine, for example, when testing a fault called a cache parity error, data that causes a parity error is written in the cache data in advance and that data is accessed. There was a method of causing a failure by doing so.

【0004】この方法による障害処理ルーチンのテスト
は、以下の手順で行う。まず、キャッシュ5のあるアド
レスに、キャッシュ書き込み命令によってパリティエラ
ーとなるようなデータを書き込む。次に、その同じアド
レスからキャッシュデータを読み出す。この読み出され
たデータは、パリティチェッカ6でパリティエラーと判
定され、すなわち、障害検出回路2でキャッシュのパリ
ティエラーという障害を検出することになる。障害検出
回路2がこれを命令ユニット4に報告すると、命令ユニ
ット4は障害割込みを起こし、その結果、障害処理のテ
ストを行うことができる。
The test of the fault handling routine by this method is performed in the following procedure. First, data that causes a parity error is written to a certain address in the cache 5 by a cache write command. Then, the cache data is read from the same address. The read data is judged to be a parity error by the parity checker 6, that is, the failure detection circuit 2 detects a failure called a cache parity error. When the fault detection circuit 2 reports this to the instruction unit 4, the instruction unit 4 causes a fault interrupt, so that the fault handling test can be performed.

【0005】[0005]

【発明が解決しようとする課題】この従来技術では、障
害処理ルーチンのテストを行う際にはキャッシュ,ある
いはTLBといったRAMの内容を一部破壊してしま
う。このため、これらの内容の一部が破壊されることを
考慮に入れてプログラムを作成する必要がある。例え
ば、命令キャッシュのあるアドレスにパリティエラーと
なるデータを埋め込んだ場合、ソフトウェアは通常の命
令がこのアドレスをアクセスするのを避けなければいけ
ない。したがってソフトウェアは、命令アドレスのどの
部分がキャッシュのインデックスとして用いられるか
等、キャッシュの構造を意識し、RAMの障害がテスト
プログラムの他の動作に影響しないようにしなければな
らず、障害テストのソフトウェアに対する負担が大きか
った。
In this prior art, the contents of the RAM such as the cache or TLB are destroyed when the failure handling routine is tested. Therefore, it is necessary to write a program in consideration that some of these contents will be destroyed. For example, if an address in the instruction cache is filled with data that causes a parity error, software must avoid accessing ordinary addresses at this address. Therefore, the software must be aware of the structure of the cache, such as which part of the instruction address is used as the index of the cache, so that the RAM failure does not affect other operations of the test program. The burden was heavy.

【0006】[0006]

【課題を解決するための手段】本発明では、診断用レジ
スタにある障害発生部位および障害要因を示すビットに
障害報告の機能を持たせており、このビットを“1”に
セットすることにより、実際に障害が起きていなくても
障害が起きているように見せ、割込みを発生させること
ができる。
According to the present invention, a bit indicating a fault occurrence site and a fault factor in a diagnostic register has a fault reporting function. By setting this bit to "1", You can make it appear to be faulty and generate an interrupt even if it is not.

【0007】[0007]

【作用】本発明の方式を用いることにより、RAMの内
容を破壊することなく、障害処理ルーチンのテストを行
うことができる。すなわち、障害処理ルーチンのテスト
をするには、従来例のようなキャッシュデータにパリテ
ィエラーとなるデータを書き、そこにアクセスすること
により障害を起こさなくても、診断用レジスタの障害発
生部位,要因を示すビットを“1”にセットするだけで
良く、ソフトウェアの負担を軽減できる。
By using the method of the present invention, the failure handling routine can be tested without destroying the contents of the RAM. That is, in order to test the failure handling routine, even if the data causing the parity error is written in the cache data as in the conventional example and the failure is not caused by accessing the cache data, the failure location and cause of the diagnostic register It suffices to set the bit indicating "1" to "1", and the load on the software can be reduced.

【0008】[0008]

【実施例】次に本発明について図面を参照して説明す
る。
The present invention will be described below with reference to the drawings.

【0009】図3は本発明の全体システム構成図であ
る。この図全体が1チップ内に内蔵される。この図にお
いて、命令ユニット101はパス201を通して命令キ
ャッシュ106から読み出された命令を解析,実行す
る。メモリ制御ユニット102は、命令キャッシュ/T
LB106,データキャッシュ/TLB107等の内蔵
RAMを制御する。整数演算ユニット103,浮動小数
演算ユニット104は、それぞれ、汎用レジスタ10
8,浮動小数レジスタ109を参照し演算を行う。
FIG. 3 is an overall system configuration diagram of the present invention. The entire figure is built in one chip. In this figure, the instruction unit 101 analyzes and executes the instruction read from the instruction cache 106 through the path 201. The memory control unit 102 has an instruction cache / T
It controls built-in RAM such as LB 106 and data cache / TLB 107. The integer arithmetic unit 103 and the floating point arithmetic unit 104 respectively include a general-purpose register 10
8. The floating point register 109 is referenced to perform the operation.

【0010】本システムで障害が発生した場合、その障
害情報はすべて診断用レジスタ110に集められる。具
体的には、内蔵するRAMで発生した障害に関する情報
は、一旦メモリ制御ユニット102に集められ、ここで
まとめて診断用レジスタ110に送られる。チップ外部
のRAMで発生した障害情報は、バス・インタフェース
・ユニット105を通して送られる。その他のユニット
で発生した障害情報は直接診断用レジスタ110に送ら
れる。診断用レジスタ110は、これらRAM,バスや
演算ユニットなどで発生・検出した障害情報を信号30
1〜305で受けて格納し、命令ユニットに障害の発生
を報告する。また、この診断用レジスタ110はパス2
02により、汎用レジスタ108とのデータのやり取り
が可能であるので、ソフトウエアから自由に値を設定す
ることができる。
When a fault occurs in this system, all the fault information is collected in the diagnostic register 110. Specifically, the information on the failure that has occurred in the built-in RAM is once collected in the memory control unit 102, and is collectively sent to the diagnostic register 110 here. Fault information generated in the RAM outside the chip is sent through the bus interface unit 105. Fault information generated in other units is directly sent to the diagnostic register 110. The diagnostic register 110 uses the RAM 30 as a signal to indicate failure information generated / detected in the RAM, bus, arithmetic unit, or the like.
1 to 305 receive and store, and report occurrence of failure to instruction unit. In addition, this diagnostic register 110 has a path 2
02, data can be exchanged with the general-purpose register 108, so that the value can be freely set by software.

【0011】図1に本発明の一実施例のブロック図を示
す。通常、障害が発生した場合には、障害検出回路2で
障害が発生したことが検出される。障害検出回路2は、
障害発生部位,要因書き込み信号12によって、診断用
レジスタ3に障害の発生部位および要因をセットする。
例えばキャッシュでパリティエラーが起きた場合、診断
用レジスタ3の中の、キャッシュでパリティエラーが起
きたことを示すビットが“1”にセットされる。部位,
要因がセットされると、障害検出信号13によって障害
の発生が命令ユニット4に報告され、割込みが発生す
る。
FIG. 1 shows a block diagram of an embodiment of the present invention. Normally, when a failure occurs, the failure detection circuit 2 detects that a failure has occurred. The fault detection circuit 2 is
The failure occurrence part and factor are set in the diagnostic register 3 by the failure occurrence part and factor write signal 12.
For example, when a parity error occurs in the cache, the bit in the diagnostic register 3 indicating that the parity error has occurred in the cache is set to "1". Part,
When the factor is set, the fault detection signal 13 reports the occurrence of a fault to the instruction unit 4, and an interrupt occurs.

【0012】障害処理のテストをするときは、ソフトウ
ェアは診断用レジスタ書き込み命令を実行する。診断用
レジスタ書き込み命令を実行すると、汎用レジスタ1の
内容が、ソフトウェアによる書き込み信号11によって
診断用レジスタ3に書き込まれる。以下に、その具体例
を示す。
When testing fault handling, software executes a diagnostic register write instruction. When the diagnostic register write command is executed, the contents of the general-purpose register 1 are written to the diagnostic register 3 by the write signal 11 by software. The specific example is shown below.

【0013】図4は、診断用レジスタ中の障害発生部
位,要因を示すビットの構成例を示す。診断用レジスタ
は4バイト,32ビットで構成し、レジスタの0バイ
ト,1バイト目に障害発生部位、2バイト,3バイト目
に障害発生要因を格納している。この構成例において、
内蔵命令キャッシュでパリティエラーが発生したという
障害をテストするときには、汎用レジスタに“2000
4000”(0バイト,2ビット目と、2バイト,1ビ
ット目が“1”)をセットした後、診断用レジスタ書き
込み命令を実行する。このように、汎用レジスタ1に、
診断用レジスタ3の中のテストを行いたい障害発生部位
および障害要因を示すビットが“1”にセットされるよ
うに値を与えておいてから、診断用レジスタ書き込み命
令を実行すると、障害発生部位および障害要因を示すビ
ットが“1”にセットされる。この結果、実際に障害が
発生したときと同様に、障害検出信号13によって障害
の発生(実際には障害が発生していなくても)が命令ユ
ニット4に報告され、障害による割込みを起こすことが
できる。
FIG. 4 shows an example of the configuration of bits in the diagnostic register that indicate the location of failure and the cause. The diagnostic register is composed of 4 bytes and 32 bits, and the failure occurrence portion is stored in the 0th byte and the 1st byte of the register, and the failure occurrence factor is stored in the 2nd and 3rd bytes. In this configuration example,
When testing a failure that a parity error has occurred in the internal instruction cache, set the general-purpose register to "2000
After setting 4000 "(0 byte, 2nd bit, 2nd byte, 1st bit is" 1 "), the diagnostic register write instruction is executed.
When the diagnostic register write command is executed after giving a value so that the bit indicating the fault occurrence site and the fault factor in the diagnostic register 3 to be tested are set to "1", the fault occurrence site And the bit indicating the failure factor is set to "1". As a result, similarly to the case where the failure actually occurs, the failure detection signal 13 reports the occurrence of the failure (even if the failure does not actually occur) to the instruction unit 4 and causes an interrupt due to the failure. it can.

【0014】ただし、診断用レジスタ書き込み命令を実
行中に障害割込みを起こすと、割込み処理終了後にその
診断用レジスタ書き込み命令を再実行するので、再び割
込みが発生し無限ループとなってしまう。このため、診
断用レジスタ書き込み命令を実行しているとき(このと
き、ソフトウェアによる書き込みを選択する信号14は
“1”になっている)は、診断用レジスタ3には障害部
位と要因をセットするが、命令ユニット4への障害報告
はANDゲート7によって抑止する。障害報告は診断用
レジスタ書き込み命令終了後、ソフトウェアによる書き
込みを選択する信号14が“0”になってから行う。
However, if a fault interrupt is generated during execution of the diagnostic register write instruction, the diagnostic register write instruction is re-executed after the interrupt processing is completed, so that an interrupt occurs again and an infinite loop occurs. Therefore, when the diagnostic register write instruction is being executed (at this time, the signal 14 for selecting the write by software is "1"), the failure part and the factor are set in the diagnostic register 3. However, the failure report to the instruction unit 4 is suppressed by the AND gate 7. The fault is reported after the signal 14 for selecting writing by software becomes "0" after the completion of the diagnostic register write command.

【0015】[0015]

【発明の効果】以上説明したように本発明では、診断用
レジスタの中の障害発生部位および要因を示すビットの
状態(例えば、キャッシュでパリティエラーが起きたこ
とを示すビットの状態)により障害報告を行うため、障
害発生部位,要因を示すビットを“1”にセットするだ
けで、ハードウェア量を増加させることなく障害処理の
テストができ、キャッシュ等の内容を破壊することがな
いので、ソフトウェアの負担を減らすことができる。
As described above, according to the present invention, a failure report is made according to the status of a failure occurrence site in the diagnostic register and the status of the bit (for example, the status of the bit indicating that a parity error has occurred in the cache). In order to do so, the failure processing can be tested without increasing the amount of hardware and the contents of the cache, etc. can be tested by simply setting the bit indicating the failure occurrence part and factor to "1". Can reduce the burden.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の一実施例のブロック図である。FIG. 1 is a block diagram of an embodiment of the present invention.

【図2】従来例を示すブロック図である。FIG. 2 is a block diagram showing a conventional example.

【図3】システムの全体構成図を示す。FIG. 3 shows an overall configuration diagram of a system.

【図4】診断用レジスタ中での障害発生部位,要因のビ
ット割当て例を示す。
FIG. 4 shows an example of bit allocation of a failure occurrence site and a cause in a diagnostic register.

【符号の説明】[Explanation of symbols]

1…汎用レジスタ、 2…障害検出回路、 3…診断用レジスタ、 4…命令ユニット、 5…キャッシュ、 6…パリティチェッカ、 7…障害報告を抑止するANDゲート、 11…ソフトウェアによる書き込み信号、 12…障害部位および要因書き込み信号、 13…障害検出信号、 14…ソフトウェアによる書き込みを選択する信号、 101…命令ユニット、 102…メモリ制御ユニット、 103…整数演算ユニット、 104…浮動小数演算ユニット、 105…バス・インタフェース・ユニット、 106…命令キャッシュ/TLB、 107…データキャッシュ/TLB、 108…汎用レジスタ、 109…浮動小数レジスタ、 110…診断用レジスタ。 DESCRIPTION OF SYMBOLS 1 ... General-purpose register, 2 ... Fault detection circuit, 3 ... Diagnostic register, 4 ... Instruction unit, 5 ... Cache, 6 ... Parity checker, 7 ... AND gate for suppressing fault report, 11 ... Software write signal, 12 ... Fault part and factor write signal, 13 ... Fault detection signal, 14 ... Signal for selecting writing by software, 101 ... Instruction unit, 102 ... Memory control unit, 103 ... Integer arithmetic unit, 104 ... Floating point arithmetic unit, 105 ... Bus Interface unit, 106 ... Instruction cache / TLB, 107 ... Data cache / TLB, 108 ... General-purpose register, 109 ... Floating point register, 110 ... Diagnostic register.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】RAMのパリティエラー等の障害が発生し
たとき、該障害の発生を検出し、割込みを発生させると
同時に、障害発生部位と障害要因の履歴を残す手段を有
する情報処理装置であって、ソフトウェアから明に読み
書きできる診断用レジスタと、障害発生時、該診断用レ
ジスタ中のビットを“1”にする手段と、該ビットが障
害発生部位と障害要因を示すとともに、“1”になった
ことにより、割込みを発生させる手段とを有することを
特徴とする情報処理装置。
1. An information processing apparatus comprising means for detecting the occurrence of a failure such as a RAM parity error and generating an interrupt and at the same time leaving a history of the failure occurrence site and failure factor. , A diagnostic register that can be read and written clearly by software, a means for setting a bit in the diagnostic register to "1" when a failure occurs, and the bit indicates a failure occurrence site and a failure factor and is set to "1". An information processing device, characterized in that it has a means for generating an interrupt.
JP4318165A 1992-11-27 1992-11-27 Information processor Pending JPH06161804A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4318165A JPH06161804A (en) 1992-11-27 1992-11-27 Information processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4318165A JPH06161804A (en) 1992-11-27 1992-11-27 Information processor

Publications (1)

Publication Number Publication Date
JPH06161804A true JPH06161804A (en) 1994-06-10

Family

ID=18096201

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4318165A Pending JPH06161804A (en) 1992-11-27 1992-11-27 Information processor

Country Status (1)

Country Link
JP (1) JPH06161804A (en)

Similar Documents

Publication Publication Date Title
US5784625A (en) Method and apparatus for effecting a soft reset in a processor device without requiring a dedicated external pin
US9984766B1 (en) Memory protection circuitry testing and memory scrubbing using memory built-in self-test
KR940001146B1 (en) System for checking comparision check function of information processing apparatus
JPH06161804A (en) Information processor
JPH01171047A (en) Chip alternation controller for memory element
JPS59163653A (en) Debug device
JPS60233743A (en) Fault detecting circuit of computer system
JPH01156834A (en) Diagnosing system for check circuit
JPS58213349A (en) Information processor
JPS603769A (en) Error recovery
JPH03105630A (en) Error correcting system
JPS60225941A (en) Microprogram control device
JPS6223336B2 (en)
JPS6325380B2 (en)
JPH0481953A (en) Memory device
JP2002091795A (en) Cache controller
JPS6282438A (en) Control system for interruption of debug in information processor
JPH08123734A (en) Methods for checking occurrence of data destruction in data storing area and program runaway and methods for searching causes of data destruction occurrence and program runaway
JPS6039249A (en) Operation device
JPH05289946A (en) Memory control system
JPS59217298A (en) Memory error relieve system
JPS5971185A (en) Page hysteresis memory processing system
Surmacz et al. Bad Memory Blocks Exclusion in Linux Operating System
JPH0235547A (en) Test system for static ram block
JPH05233467A (en) Scratch pad memory control system