JP2000250785A - Device and method for monitoring system - Google Patents

Device and method for monitoring system

Info

Publication number
JP2000250785A
JP2000250785A JP11049608A JP4960899A JP2000250785A JP 2000250785 A JP2000250785 A JP 2000250785A JP 11049608 A JP11049608 A JP 11049608A JP 4960899 A JP4960899 A JP 4960899A JP 2000250785 A JP2000250785 A JP 2000250785A
Authority
JP
Japan
Prior art keywords
instruction
branch
instruction word
address
loop
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.)
Granted
Application number
JP11049608A
Other languages
Japanese (ja)
Other versions
JP3185780B2 (en
Inventor
Hironari Togawa
裕也 外川
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 JP04960899A priority Critical patent/JP3185780B2/en
Publication of JP2000250785A publication Critical patent/JP2000250785A/en
Application granted granted Critical
Publication of JP3185780B2 publication Critical patent/JP3185780B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

PROBLEM TO BE SOLVED: To prevent the efficiency of fault analysis from being lowered by suppressing the write-out of effective data for analysis in a processor by deciding whether it is an infinite self-loop instruction or not from the decided result of a branch destination address. SOLUTION: A non-conditional branch deciding circuit 3 decides whether an instruction word is a branching instruction or not from the OP code of that instruction word, discriminates whether all the bits of CF bits are '1' or not and discriminates whether the branching condition is non-conditional or not. Addresses held in the AS field of the instruction word and an address register 2 are outputted to a branch destination address deciding circuit 4. These two values are compared an decided and it is decided whether the branch destination address of the branching instruction is branch to that instruction word itself or not. While inputting discriminate signals from the non-conditional blanch deciding circuit 3 and the branch destination address deciding circuit 4, an infinite self-loop deciding circuit 5 decides whether the instruction word accompanied with processing is branched without conditions or not and whether it is the infinite self-loop instruction to be branched to the instruction word itself or not.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、システムの障害監
視装置に関し、特にプログラムの不具合およびハードウ
ェア故障による無限ループ発生時に、速やかかつ的確な
障害情報の収集を可能とするシステム監視装置に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a system fault monitoring apparatus, and more particularly to a system monitoring apparatus capable of quickly and accurately collecting fault information when an infinite loop occurs due to a program failure or hardware failure.

【0002】[0002]

【従来の技術】従来、この種のシステム監視方法として
は、特開平6−236299号公報および特許第277
6765号公報に述べられているように、タイマを用い
て一定時間内までにプロセスが終了するか否かを確認し
ている。これは、正常に動作しているプロセスが予め設
定している時間内に終了することを前提として、特定の
プロセスが一定時間内に終了しないことをタイムアウト
により検出する。このタイムアウトが検出された場合に
は、該プロセスがプロセッサシステム障害などにより無
限ループに移入したと判断することで異常検出を行って
いる。
2. Description of the Related Art Conventionally, this type of system monitoring method is disclosed in Japanese Patent Laid-Open No. 6-236299 and Japanese Patent No. 277.
As described in Japanese Patent No. 6765, a timer is used to confirm whether or not the process is completed within a predetermined time. This is based on the premise that a normally operating process ends within a preset time, and detects that a specific process does not end within a predetermined time by timeout. When this timeout is detected, abnormality detection is performed by determining that the process has entered an infinite loop due to a processor system failure or the like.

【0003】また、特開平9−62520号公報には、
複数のタスクをそれぞれの優先度に応じて実行するシス
テムにおいて、周期的に実行中のタスクを認識し、所定
回数同じタスクの実行中が検出されると無限ループに陥
ったものと判断してシステムをリスタートさせる技術が
記載されている。
[0003] Japanese Patent Application Laid-Open No. 9-62520 discloses that
In a system that executes a plurality of tasks according to their respective priorities, the system periodically recognizes a task that is being executed, and determines that an infinite loop has occurred when the same task is being executed a predetermined number of times. Is described.

【0004】このようにして検出される無限ループには
一般に以下の2通りが存在する。まず第1は、プログラ
ムの不具合や予期せぬハードウェア故障により分岐すべ
き条件がいつまでも満たされない偶発的な場合である。
そして第2は、プログラムが正常に動いている時には辿
り着かないフローに無限セルフループを故意に埋め込
み、プログラムの実行において不具合が発生した際には
該フローを実行させて上述の監視方法により障害発生の
検出を行わせる意図的な場合である。
In general, the following two types of infinite loops are detected. The first is an accidental case in which the condition for branching is not satisfied forever due to a program failure or an unexpected hardware failure.
Second, an infinite self-loop is intentionally embedded in a flow that cannot be reached when the program is operating normally, and when a problem occurs in the execution of the program, the flow is executed and a failure is generated by the monitoring method described above. Is intentional.

【0005】[0005]

【発明が解決しようとする課題】ところが、上述のよう
な従来技術では、その無限ループの種類に関わらずシス
テム障害であると判定される一定時間までは無限ループ
による同一動作が延々と行われていた。このため、プロ
セッサ内部に保持しているトレースデータ等の解析用デ
ータ群が書き潰されるという不具合があった。これは、
解析用データが有限なハードウェア(レジスタなど)に
より保持されているため、保持先が一巡した場合には保
持内容を古い順に上書することで、より最近の情報を残
す形態を採っているためである。このため、障害解析時
に内部データを引き抜いても所望のデータが得られず、
デバッグ時の解析に時間が掛かるという問題があった。
However, in the above-mentioned prior art, the same operation by the infinite loop is performed endlessly until a certain time when it is determined that a system failure has occurred regardless of the type of the infinite loop. Was. For this reason, there is a problem that the analysis data group such as trace data held in the processor is overwritten. this is,
Because the data for analysis is held by finite hardware (registers, etc.), when the storage destination goes round, the held contents are overwritten in chronological order, leaving more recent information It is. For this reason, desired data cannot be obtained even if internal data is extracted during failure analysis.
There was a problem that it took time to analyze at the time of debugging.

【0006】また、従来のシステム監視方法では、プロ
セスの実行時間を基準とした監視を行っていたために、
特定時間の動作をさせた後でしか異常検出を行うことが
できず、システム障害と判定されるまでの一定時間は、
無駄にプロセッサが占有されてしまうという問題もあっ
た。
In the conventional system monitoring method, monitoring is performed based on the execution time of a process.
Anomaly detection can be performed only after operation for a specific time, and a certain time until it is determined that a system failure has occurred,
There is also a problem that the processor is wasted unnecessarily.

【0007】本発明の目的は、無限ループによるシステ
ム障害時、特に自己アドレスへの無条件分岐による意図
的な無限セルフループによるシステム障害の発生時にお
いて、無限セルフループの発生を早期に検出すること
で、無限セルフループの実行によるプロセッサ内の有効
な解析用データの書き潰しを抑止して障害解析の効率低
下を防止し、さらには、無限セルフループの実行による
リソースの無駄な占有を最小限に防ぐことで効率のよい
リソース提供を可能とする装置を提供することにある。
An object of the present invention is to detect the occurrence of an infinite self-loop at an early stage when a system failure occurs due to an infinite loop, particularly when a system failure occurs due to an intentional infinite self-loop due to an unconditional branch to its own address. In this way, the execution of an infinite self-loop prevents the data for valid analysis in the processor from being overwritten, thereby preventing the efficiency of failure analysis from deteriorating, and further minimizing the wasteful occupation of resources by executing the infinite self-loop. It is an object of the present invention to provide a device that can provide efficient resources by preventing such a situation.

【0008】[0008]

【課題を解決するための手段】上記課題を解決するため
に、本発明のシステム監視装置は、実行される命令語が
無条件に分岐を行う命令であるか否かを判定する無条件
分岐判定手段と、前記実行される命令語の分岐先が前記
実行される命令語の自身であるか否かを判定する分岐先
アドレス判定手段と、前記無条件分岐命令判定手段およ
び前記分岐先アドレス判定手段の判定結果から前記実行
される命令語が無限セルフループ命令であるか否かを判
定する無限セルフループ判定手段とを有する。
In order to solve the above-mentioned problems, a system monitoring apparatus according to the present invention provides an unconditional branch determination for determining whether an instruction to be executed is an instruction for unconditionally branching. Means, a branch destination address determining means for determining whether a branch destination of the executed instruction word is the instruction word itself, the unconditional branch instruction determining means, and the branch destination address determining means And infinite self-loop determining means for determining whether or not the instruction to be executed is an infinite self-loop instruction from the result of the determination.

【0009】また、前記命令語は、オペレーションコー
ドと、分岐判定に参照される分岐判定参照ビットと、オ
ペランドデータのアドレスまたは分岐命令に対する分岐
先アドレスを指し示すアドレス指示語とを含み、前記無
条件分岐判定手段は、前記オペレーションコードおよび
前記分岐判定参照ビットを入力して当該命令語が無条件
に分岐を行う命令であるか否かを判定し、前記分岐先ア
ドレス判定手段は、前記アドレス指示語および前記実行
される命令語の記憶装置上のアドレスを入力して当該命
令語が自己の命令語へ分岐するセルフループ命令か否か
を判定する。
The instruction word includes an operation code, a branch determination reference bit referred to for branch determination, and an address designator indicating an address of operand data or a branch destination address for a branch instruction. Determining means for inputting the operation code and the branch determination reference bit to determine whether or not the instruction word is an instruction for unconditionally branching; the branch destination address determining means includes: The address of the instruction to be executed on the storage device is input to determine whether the instruction is a self-loop instruction that branches to its own instruction.

【0010】さらに、前記無条件分岐判定手段は、前記
オペレーションコードが分岐命令を示し、かつ、前記分
岐判定参照ビットが全て分岐を示していることを検出す
ることにより、前記実行される命令語が無条件で分岐す
る命令であると判定する。
Further, the unconditional branch determination means detects that the operation code indicates a branch instruction and that all the branch determination reference bits indicate a branch, so that the instruction word to be executed is determined. It is determined that the instruction branches unconditionally.

【0011】さらに、前記分岐先アドレス判定手段は、
前記アドレス指示語が示すアドレスと前記実行される命
令語の記憶装置上のアドレスとを比較して、一致する場
合には前記実行される命令語がセルフループ命令である
と判断する。
Further, the branch destination address judging means includes:
The address indicated by the address instruction word is compared with the address of the executed instruction word on the storage device, and if they match, it is determined that the executed instruction word is a self-loop instruction.

【0012】また、前記セルフループ判定手段は、前記
実行される命令語が無条件セルフループ命令であると判
断した場合、ソフトウェア管理プログラムに通知する。
When the self-loop determining means determines that the command to be executed is an unconditional self-loop command, it notifies the software management program.

【0013】前記セルフループ判定手段は、前記実行さ
れる命令語が無条件セルフループ命令であると判断した
場合、診断プログラムに通知して障害処理プロセスを実
行させる。
When the self-loop determining means determines that the command to be executed is an unconditional self-loop command, the self-loop determining means notifies the diagnostic program to execute a fault handling process.

【0014】さらに、上記課題を解決するための本発明
のシステム監視方法は、前記命令語のオペレーションコ
ードから前記命令語が分岐命令であるか否かを判定し、
前記命令語の分岐判定に参照される分岐判定参照ビット
から前記命令語が無条件での分岐を示しているか否かを
判定し、前記命令語のオペランドデータのアドレスまた
は分岐命令に対する分岐先アドレスを指し示すアドレス
指示語が前記命令語自身の記憶装置上のアドレスを示し
ているか否かを判定し、前記命令語が、分岐命令であっ
て、無条件で分岐を行い、かつ、分岐先が前記命令語自
身であると判定された場合には、所定の装置に対して通
知を行う。
Further, a system monitoring method according to the present invention for solving the above-mentioned problem determines whether or not the instruction word is a branch instruction from an operation code of the instruction word,
It is determined whether or not the instruction word indicates an unconditional branch from a branch determination reference bit referred to in branch determination of the instruction word, and an address of operand data of the instruction word or a branch destination address for a branch instruction is determined. It is determined whether or not the indicated address denoting indicates the address on the storage device of the instruction word itself, the instruction word is a branch instruction, the branch is unconditionally performed, and the branch destination is the instruction. When it is determined that the word is the word itself, a notification is sent to a predetermined device.

【0015】また、前記所定装置に対する通知は、診断
部に対して障害処理プロセスの起動を促す信号である。
The notification to the predetermined device is a signal for prompting the diagnostic unit to start a failure processing process.

【0016】さらに、前記所定装置に対する通知は、命
令の処理履歴を格納しているトレーサメモリへの新規書
き込みの抑止信号である。
Further, the notification to the predetermined device is a signal for inhibiting the new writing into the tracer memory storing the processing history of the instruction.

【0017】[0017]

【発明の実施の形態】次に本発明の実施の形態について
図面を参照して説明する。
Embodiments of the present invention will now be described with reference to the drawings.

【0018】図1を参照すると、本発明のシステム監視
装置は、処理すべき命令の命令語を受けとる命令レジス
タ1と、命令レジスタ1に保持されている命令語の主記
憶上の所在を示すアドレスを保持するアドレスレジスタ
2と、処理を行う命令が無条件で分岐を行う分岐命令で
あるか否かを判別する無条件分岐判定回路3と、分岐命
令の分岐先アドレスが処理される当該命令語自身のアド
レスであるか否かを判別する分岐先アドレス判定回路4
と、当該命令語が無条件分岐でかつ自己分岐を行う無限
セルフループ命令であるか否かを判断する無限セルフル
ープ判定回路5とを含んで構成される。
Referring to FIG. 1, a system monitoring apparatus according to the present invention includes an instruction register 1 for receiving an instruction word of an instruction to be processed, and an address indicating the location of the instruction word held in the instruction register 1 in main memory. An address register 2 for holding a branch instruction, an unconditional branch determination circuit 3 for determining whether an instruction to be processed is a branch instruction to branch unconditionally, and an instruction word for processing a branch destination address of the branch instruction Branch destination address determination circuit 4 for determining whether or not the address is its own
And an infinite self-loop determining circuit 5 that determines whether the instruction word is an infinite self-loop instruction that is an unconditional branch and performs a self-branch.

【0019】図2を参照すると、命令語10は、オペレ
ーションコード11(以下、OPコードという。)、分
岐判定参照ビット12(以下、CF(Condition Flag)ビ
ットという。)およびアドレス指示語13(以下、AS
(Address Sillable)フィールドという。)の3つを有し
て構成されている。OPコード11は、命令語10が何
れの命令であるかを表すオペレーションコードである。
CFビット12は、複数のビットから構成されて分岐命
令の際に分岐を行うか否かを判定を行うために参照され
るフラグである。ASフィールド13は、演算命令など
におけるオペランドデータのアドレスまたは分岐命令に
対する分岐先アドレスを指し示す指示語である。
Referring to FIG. 2, an instruction word 10 includes an operation code 11 (hereinafter referred to as an OP code), a branch determination reference bit 12 (hereinafter referred to as a CF (Condition Flag) bit), and an address instruction word 13 (hereinafter referred to as an CF code). , AS
(Address Sillable) field. ). The OP code 11 is an operation code indicating which instruction the instruction word 10 is.
The CF bit 12 is a flag composed of a plurality of bits and referred to to determine whether or not to branch at the time of a branch instruction. The AS field 13 is an instruction word indicating an address of operand data in an operation instruction or the like or a branch destination address for a branch instruction.

【0020】通常、命令語10が分岐命令である場合、
命令語10のCFビット12と先行命令により設定され
たコンディションコード(以下、CCという。)との値
に基づき分岐判定が行われる。CCとは、先行命令によ
り設定される分岐判定を行うための値であり、命令語1
0のCFビット12のいずれのビットを分岐判定に用い
るかを指し示すものである。
Normally, when the instruction word 10 is a branch instruction,
A branch is determined based on the value of the CF bit 12 of the instruction word 10 and the condition code (hereinafter, referred to as CC) set by the preceding instruction. CC is a value for making a branch determination set by a preceding instruction,
This indicates which bit of the CF bit 12 of 0 is used for branch determination.

【0021】CFビット12が4ビットで構成されてい
る場合、CCの取り得る値は、“0”,“1”,
“2”,“3”の4つの値であり、これらの値はそれぞ
れCFビット12の1ビット目、2ビット目、3ビット
目、4ビット目に対応する。例えばCCが”0”であっ
たとすると、CFビット12中の0ビット目が分岐判定
のためのフラグとして参照されることになる。ここで、
この0ビット目が”1”であれば、分岐実行と判断され
てASフィールド13によって求められる分岐先アドレ
スに分岐が行われる。これに対し、0ビット目が”0”
であれば、分岐実行せずと判断されて分岐は行われずに
後続命令の処理が行われることになる。
When the CF bit 12 is composed of 4 bits, the possible values of CC are "0", "1",
There are four values “2” and “3”, which correspond to the first, second, third and fourth bits of the CF bit 12, respectively. For example, if the CC is “0”, the 0th bit of the CF bit 12 is referred to as a flag for branch determination. here,
If the 0th bit is “1”, it is determined that the branch is to be executed, and the branch is performed to the branch destination address obtained by the AS field 13. On the other hand, the 0th bit is “0”
In this case, it is determined that the branch is not to be executed, and the processing of the subsequent instruction is performed without performing the branch.

【0022】したがって、CFビットの値が全て“1”
の場合、CCの値に関わらず分岐判定で参照されるフラ
グは常に“1”となるため、該命令は無条件に分岐が行
われることを意味する。逆に、CFビットの値に1つで
も“0”が含まれていれば、該命令は参照するビットに
よっては分岐を行わない可能性があることを意味する。
Therefore, the values of the CF bits are all "1".
In this case, the flag referred to in the branch determination is always "1" regardless of the value of CC, which means that the instruction is unconditionally branched. Conversely, if at least one “0” is included in the value of the CF bit, it means that the instruction may not branch depending on the bit to be referred to.

【0023】命令レジスタ1に保持された命令語10の
OPコード11およびCFビット12は、無条件分岐判
定回路3に出力されて当該命令語10が無条件に分岐を
行う命令か否かの判定が行われる。
The OP code 11 and the CF bit 12 of the instruction word 10 held in the instruction register 1 are output to the unconditional branch determination circuit 3 to determine whether the instruction word 10 is an instruction that unconditionally branches. Is performed.

【0024】無条件判定回路3は、まず、命令語10の
OPコード11から当該命令語が分岐命令であるか否か
を判定する。それとともに、CFビット12の全ビット
が“1”であるか否かを判定して分岐条件が無条件で行
われるか否かの判定を行う。これにより、命令語10
が、分岐命令でかつ無条件に分岐を行う命令であるか否
かの判定が行われる。
The unconditional determination circuit 3 first determines from the OP code 11 of the instruction word 10 whether the instruction word is a branch instruction. At the same time, it is determined whether or not all the bits of the CF bit 12 are “1” to determine whether or not the branch condition is unconditionally performed. Thereby, the instruction word 10
Is a branch instruction and an instruction for unconditionally branching.

【0025】また、分岐先アドレス判定回路4には、命
令語10のASフィールド13およびアドレスレジスタ
2に保持されるアドレスが出力される。ここで、ASフ
ィールド13は分岐命令における分岐先アドレスを示し
ており、アドレスレジスタ2に保持されたアドレスは命
令レジスタ1に保持されている命令語10の主記憶上の
アドレスを示している。分岐先アドレス判定回路4で
は、この2つの値の比較判定を行うことで、分岐命令に
おける分岐先アドレスが当該命令語自身への分岐である
か否かの判定を行う。
The branch destination address judging circuit 4 outputs the AS field 13 of the instruction word 10 and the address held in the address register 2. Here, the AS field 13 indicates the branch destination address in the branch instruction, and the address held in the address register 2 indicates the address of the instruction word 10 held in the instruction register 1 on the main memory. The branch destination address determination circuit 4 compares these two values to determine whether the branch destination address in the branch instruction is a branch to the instruction word itself.

【0026】無限セルフループ判定回路5は、無条件分
岐判定回路3および分岐先アドレス判定回路4からの判
定信号を入力として、処理を行う命令語10が無条件に
分岐し、かつ、自己の命令語へ分岐を行う無限セルフル
ープ命令であるか否かの判定を行う。例えば、無条件分
岐判定回路3が無条件分岐命令と判断した際には”1”
を出力し、分岐先アドレス判定回路4が分岐先アドレス
が自己の命令語のアドレスと同一と判断した際には”
1”を出力するとした場合、これら信号の論理積をとっ
て“1”を出力するようにすることで、与えられた命令
が無限セルフループ命令であることを判定、検出するこ
とができる。
The infinite self-loop judgment circuit 5 receives the judgment signals from the unconditional branch judgment circuit 3 and the branch destination address judgment circuit 4 and unconditionally branches the instruction word 10 to be processed. It is determined whether the instruction is an infinite self-loop instruction that branches to a word. For example, when the unconditional branch determination circuit 3 determines that the instruction is an unconditional branch instruction, "1"
When the branch destination address determination circuit 4 determines that the branch destination address is the same as the address of its own instruction word,
If "1" is to be output, a logical AND of these signals is output to output "1", whereby it can be determined and detected that the given instruction is an infinite self-loop instruction.

【0027】次に、本発明の実施の形態の動作について
図面を参照して詳細に説明する。図3を参照すると、
(図示せぬ)プロセッサは、命令語10を処理状況に応
じて命令レジスタ1に対して供給を行う(S1)。命令
レジスタ1において受け取られた命令語10は、(図示
せぬ)命令実行処理回路に送出され、逐次処理が行われ
る。
Next, the operation of the embodiment of the present invention will be described in detail with reference to the drawings. Referring to FIG.
The processor (not shown) supplies the instruction word 10 to the instruction register 1 according to the processing status (S1). The instruction word 10 received in the instruction register 1 is sent to an instruction execution processing circuit (not shown), and is sequentially processed.

【0028】ここで、本発明においては、命令レジスタ
1へ命令語10が供給された際に、命令レジスタ1に保
持された命令語10のOPコード11とCFビット12
の値を無条件分岐判定回路3に、ASフィールド13と
アドレスレジスタ2に保持される当該命令語の主記憶上
のアドレスとを分岐先アドレス判定回路4にそれぞれ出
力する(S2)。
Here, in the present invention, when the instruction word 10 is supplied to the instruction register 1, the OP code 11 and the CF bit 12 of the instruction word 10 held in the instruction register 1 are stored.
Is output to the unconditional branch determination circuit 3, and the AS field 13 and the address in the main memory of the instruction word held in the address register 2 are output to the branch destination address determination circuit 4 (S2).

【0029】無条件分岐判定回路3では、まず、入力さ
れた命令語10のOPコード11から当該命令語10が
分岐命令か否かを判定する。また、CFビット12の各
ビットの値を判読し、全てのビットが“1”であるか否
かを判定する(S3)。
The unconditional branch determination circuit 3 first determines from the OP code 11 of the input instruction word 10 whether or not the instruction word 10 is a branch instruction. Further, the value of each bit of the CF bit 12 is read, and it is determined whether or not all bits are "1" (S3).

【0030】一方、分岐先アドレス判定回路4は、AS
フィールド13で示される分岐先のアドレスとアドレス
レジスタ2に保持された当該命令語10の主記憶上のア
ドレスが一致するか否かの判定が行われる(S4)。
On the other hand, the branch destination address determination circuit 4
It is determined whether or not the address of the branch destination indicated by the field 13 matches the address on the main memory of the instruction word 10 held in the address register 2 (S4).

【0031】無限セルフループ判定回路5は、無条件分
岐判定回路3および分岐先アドレス判定回路4の判定結
果から実行処理される命令語10が無限セルフループ命
令であるか否かの判定を行う(S5)。命令語10が無
限セルフループ回路であると判定されると、無限セルフ
ループ判定回路5はマイクロプロセッサ、診断部などに
対して通知を行う(S6)。
The infinite self-loop determination circuit 5 determines whether or not the instruction word 10 to be executed is an infinite self-loop instruction based on the determination results of the unconditional branch determination circuit 3 and the branch destination address determination circuit 4 ( S5). When it is determined that the instruction word 10 is an infinite self-loop circuit, the infinite self-loop determination circuit 5 notifies the microprocessor, the diagnosis unit, and the like (S6).

【0032】以上のように、命令レジスタ1に命令語1
0が保持されると、保持された命令語10の各パラメー
タ(OPコード11,CFビット12およびASフィー
ルド13)により、無条件に分岐する命令で、かつ、自
己の命令語への分岐を行う命令である無限セルフループ
命令であるか否かの判定が行われる。
As described above, the instruction word 1 is stored in the instruction register 1.
When 0 is held, the instruction unconditionally branches according to each parameter (OP code 11, CF bit 12, and AS field 13) of the held instruction word 10, and branches to its own instruction word. It is determined whether or not the instruction is an infinite self-loop instruction.

【0033】無限セルフループ判定回路5において命令
語が無限セルフループ命令であると判定された場合は、
この結果をトリガとして診断部へシステム異常検出を通
知し、診断部による障害処理プロセスへ移入させてもよ
い。また、マイクロプログラムへの割り込み信号として
OSへのシステム異常通知フローを起動させるトリガと
してもよい。同様に、各命令の実行に伴う処理履歴を格
納しているトレーサメモリへの新規書き込みの抑止信号
としても有効である。
When the infinite self-loop determining circuit 5 determines that the instruction word is an infinite self-loop instruction,
Using this result as a trigger, the diagnosis unit may be notified of the detection of a system abnormality, and the diagnosis unit may be moved to a failure processing process. Alternatively, a trigger for activating a system abnormality notification flow to the OS may be used as an interrupt signal to the microprogram. Similarly, it is also effective as a signal for inhibiting new writing to the tracer memory storing the processing history associated with the execution of each instruction.

【0034】なお、本発明が上記各実施例に限定され
ず、本発明の技術思想の範囲内において、各実施例は適
宜変更され得ることは明らかである。
It should be noted that the present invention is not limited to the above embodiments, and each embodiment can be appropriately modified within the scope of the technical idea of the present invention.

【0035】このように、本発明の実施の形態によれ
ば、従来のような意図的な無限セルフループの実行とタ
イマを用いたシステム監視手段によるシステム異常検出
に比べ、タイムオーバを待たずに早期にシステム異常を
検出することが可能となる。これにより、システム異常
によって一定時間セルフループが行われることによるプ
ロセッサの無駄な占有がなくなり、効率の良いリソース
提供が可能となる。さらに、無限セルフループによって
プロセッサ内のトレース情報が書き潰されることもなく
なり、デバッグの効率化も図ることが可能となる。
As described above, according to the embodiment of the present invention, as compared with the conventional intentional execution of an infinite self-loop and the detection of a system abnormality by the system monitoring means using a timer, a time-out does not occur. It is possible to detect a system abnormality at an early stage. This eliminates wasteful occupation of the processor due to the self-loop being performed for a certain period of time due to a system abnormality, thereby enabling efficient resource provision. Further, the trace information in the processor is not overwritten by the infinite self-loop, and the efficiency of debugging can be improved.

【0036】[0036]

【発明の効果】以上の説明で明らかなように、本発明に
よると、無限ループのうち無条件に分岐する命令でかつ
自己の命令語が分岐先となる命令である無限セルフルー
プ命令を早期に検出して、システム異常を速やかにソフ
トウェア管理プログラムや診断部へ通知することができ
る。
As is apparent from the above description, according to the present invention, an infinite self-loop instruction which is an instruction which branches unconditionally in an infinite loop and whose own instruction word is a branch destination can be quickly executed. Upon detection, the system abnormality can be promptly notified to the software management program or the diagnosis unit.

【0037】これにより、効率良くリソースを活用する
ことができ、さらに、プロセッサ内部に存在するトレー
スデータなどの障害解析データを書き潰すことも無くな
り効率の良いデバッグを行うことも可能となる。
As a result, resources can be efficiently used, and failure analysis data such as trace data existing inside the processor is not overwritten, so that efficient debugging can be performed.

【0038】さらに別の効果として、従来のタイマ監視
によるシステム異常検出に比べてシステム異常を早期に
検出できるため、一定時間無限ループで占有されてしま
うプロセッサを早期に開放することが可能となり、リソ
ースの効率良い提供が可能となる。
As another effect, the system abnormality can be detected earlier than the conventional system abnormality detection by timer monitoring, so that the processor occupied by the infinite loop for a certain time can be released earlier. Can be provided efficiently.

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

【図1】本発明の実施の形態の構成を示すブロック図で
ある。
FIG. 1 is a block diagram showing a configuration of an embodiment of the present invention.

【図2】命令語のフォーマットを示した図である。FIG. 2 is a diagram showing a format of a command word.

【図3】本発明の実施の形態の動作を説明するフローチ
ャートである。
FIG. 3 is a flowchart illustrating an operation of the exemplary embodiment of the present invention.

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

1 命令レジスタ 2 アドレスレジスタ 3 無条件分岐判定回路 4 分岐先アドレス判定回路 5 無限セルフループ判定回路 10 命令語 11 OPコード(オペレーションコード) 12 CFビット(分岐判定参照ビット) 13 ASフィールド(アドレス指示語) Reference Signs List 1 instruction register 2 address register 3 unconditional branch determination circuit 4 branch destination address determination circuit 5 infinite self-loop determination circuit 10 instruction word 11 OP code (operation code) 12 CF bit (branch determination reference bit) 13 AS field (address instruction word) )

Claims (9)

【特許請求の範囲】[Claims] 【請求項1】 命令語を逐次処理するシステムの監視装
置において、 実行される命令語が無条件に分岐を行う命令であるか否
かを判定する無条件分岐判定手段と、 前記実行される命令語の分岐先が前記実行される命令語
の自身であるか否かを判定する分岐先アドレス判定手段
と、 前記無条件分岐命令判定手段および前記分岐先アドレス
判定手段の判定結果から前記実行される命令語が無限セ
ルフループ命令であるか否かを判定する無限セルフルー
プ判定手段とを有することを特徴とするシステム監視装
置。
1. A monitoring apparatus for a system for sequentially processing instruction words, wherein an unconditional branch determination unit that determines whether an instruction word to be executed is an instruction to branch unconditionally, and the executed instruction Branch destination address determining means for determining whether or not the branch destination of the word is the instruction word itself to be executed; and performing the execution from the determination results of the unconditional branch instruction determining means and the branch destination address determining means. A system monitoring apparatus comprising: an infinite self-loop determining means for determining whether an instruction word is an infinite self-loop instruction.
【請求項2】 前記命令語は、オペレーションコード
と、分岐判定に参照される分岐判定参照ビットと、オペ
ランドデータのアドレスまたは分岐命令に対する分岐先
アドレスを指し示すアドレス指示語とを含み、 前記無条件分岐判定手段は、前記オペレーションコード
および前記分岐判定参照ビットを入力して当該命令語が
無条件に分岐を行う命令であるか否かを判定し、 前記分岐先アドレス判定手段は、前記アドレス指示語お
よび前記実行される命令語の記憶装置上のアドレスを入
力して当該命令語が自己の命令語へ分岐するセルフルー
プ命令か否かを判定することを特徴とする請求項1記載
のシステム監視装置。
2. The instruction word includes an operation code, a branch determination reference bit referred to in branch determination, and an address designator indicating an address of operand data or a branch destination address for a branch instruction. Determining means for inputting the operation code and the branch determination reference bit to determine whether the instruction word is an instruction for unconditionally branching; the branch destination address determining means includes: 2. The system monitoring apparatus according to claim 1, wherein an address of the executed instruction word on the storage device is input to determine whether the instruction word is a self-loop instruction that branches to its own instruction word.
【請求項3】 前記無条件分岐判定手段は、前記オペレ
ーションコードが分岐命令を示し、かつ、前記分岐判定
参照ビットが全て分岐を示していることを検出すること
により、前記実行される命令語が無条件で分岐する命令
であると判定することを特徴とする請求項2記載のシス
テム監視装置。
3. The unconditional branch determination means detects that the operation code indicates a branch instruction and that all of the branch determination reference bits indicate a branch. 3. The system monitoring apparatus according to claim 2, wherein the instruction is determined to be an instruction that branches unconditionally.
【請求項4】 前記分岐先アドレス判定手段は、前記ア
ドレス指示語が示すアドレスと前記実行される命令語の
記憶装置上のアドレスとを比較して、一致する場合には
前記実行される命令語がセルフループ命令であると判断
することを特徴とする請求項2記載のシステム監視装
置。
4. The branch destination address judging means compares the address indicated by the address designator with the address of the instruction to be executed on a storage device. 3. The system monitoring device according to claim 2, wherein it is determined that the instruction is a self-loop instruction.
【請求項5】 前記セルフループ判定手段は、前記実行
される命令語が無条件セルフループ命令であると判断し
た場合、ソフトウェア管理プログラムに通知することを
特徴とする請求項3および4記載のシステム監視装置。
5. The system according to claim 3, wherein said self-loop determining means notifies a software management program when determining that the executed instruction word is an unconditional self-loop instruction. Monitoring device.
【請求項6】 前記セルフループ判定手段は、前記実行
される命令語が無条件セルフループ命令であると判断し
た場合、診断プログラムに通知して障害処理プロセスを
実行させることを特徴とする請求項3および4記載のシ
ステム監視装置。
6. The self-loop determining means, when determining that the command to be executed is an unconditional self-loop command, notifies the diagnostic program to execute a fault handling process. 5. The system monitoring device according to 3 or 4.
【請求項7】 命令語を逐次処理するシステムのシステ
ム監視方法であって、 前記命令語のオペレーションコードから前記命令語が分
岐命令であるか否かを判定し、 前記命令語の分岐判定に参照される分岐判定参照ビット
から前記命令語が無条件での分岐を示しているか否かを
判定し、 前記命令語のオペランドデータのアドレスまたは分岐命
令に対する分岐先アドレスを指し示すアドレス指示語が
前記命令語自身の記憶装置上のアドレスを示しているか
否かを判定し、 前記命令語が、分岐命令であって、無条件で分岐を行
い、かつ、分岐先が前記命令語自身であると判定された
場合には、所定の装置に対して通知を行うことを特徴と
するシステム監視方法。
7. A system monitoring method for a system for sequentially processing instruction words, comprising determining whether or not the instruction word is a branch instruction from an operation code of the instruction word, and referring to the branch determination of the instruction word. It is determined whether the instruction word indicates an unconditional branch from the determined branch determination reference bit, and the address word indicating the address of the operand data of the instruction word or the branch destination address for the branch instruction is the instruction word. It is determined whether or not an address on its own storage device is indicated, the instruction word is a branch instruction, a branch is unconditionally performed, and it is determined that the branch destination is the instruction word itself. In a case, a system monitoring method includes notifying a predetermined device.
【請求項8】 前記所定装置に対する通知は、診断部に
対して障害処理プロセスの起動を促す信号であることを
特徴とする請求項7記載のシステム監視方法。
8. The system monitoring method according to claim 7, wherein the notification to the predetermined device is a signal for prompting a diagnosis unit to start a failure processing process.
【請求項9】 前記所定装置に対する通知は、命令の処
理履歴を格納しているトレーサメモリへの新規書き込み
の抑止信号であることを特徴とする請求項7記載のシス
テム監視方法。
9. The system monitoring method according to claim 7, wherein the notification to the predetermined device is a signal for inhibiting new writing to a tracer memory storing a processing history of the instruction.
JP04960899A 1999-02-26 1999-02-26 System monitoring apparatus and method Expired - Fee Related JP3185780B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04960899A JP3185780B2 (en) 1999-02-26 1999-02-26 System monitoring apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04960899A JP3185780B2 (en) 1999-02-26 1999-02-26 System monitoring apparatus and method

Publications (2)

Publication Number Publication Date
JP2000250785A true JP2000250785A (en) 2000-09-14
JP3185780B2 JP3185780B2 (en) 2001-07-11

Family

ID=12835961

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04960899A Expired - Fee Related JP3185780B2 (en) 1999-02-26 1999-02-26 System monitoring apparatus and method

Country Status (1)

Country Link
JP (1) JP3185780B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010092178A (en) * 2008-10-06 2010-04-22 Nippon Telegr & Teleph Corp <Ntt> Analysis device, analysis method, and analysis program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010092178A (en) * 2008-10-06 2010-04-22 Nippon Telegr & Teleph Corp <Ntt> Analysis device, analysis method, and analysis program

Also Published As

Publication number Publication date
JP3185780B2 (en) 2001-07-11

Similar Documents

Publication Publication Date Title
JP6185487B2 (en) Keeping secure data isolated from non-secure access when switching between domains
EP2431876A1 (en) Method and device for exception handling in embedded system
US7783865B2 (en) Conditional data watchpoint management
JP2008513900A (en) Method for processing a computer program on a computer system
JP2008513899A (en) Method for processing a computer program on a computer system
CN111752877A (en) Processor and interrupt controller therein
CN104391754A (en) Method and device for processing task exception
US9092333B2 (en) Fault isolation with abstracted objects
JP3185780B2 (en) System monitoring apparatus and method
CN109034668B (en) ETL task scheduling method, ETL task scheduling device, computer equipment and storage medium
JPH02294739A (en) Fault detecting system
US10802901B2 (en) Obtaining state information of threads of a device
US20130117732A1 (en) Technique to improve performance of software breakpoint handling
EP2645258B1 (en) Multiprocessor system, apparatus and methods
JPH1153225A (en) Fault processor
EP4045923A1 (en) Method, arrangement, and computer program product for organizing the excitation of processing paths for testing a microelectric circuit
US11152076B2 (en) Apparatus and method for executing debug instructions
US9606850B2 (en) Apparatus and method for tracing exceptions
US20040103414A1 (en) Method and apparatus for interprocess communications
CN110955507B (en) Method for multitask access to same IIC bus based on vxWorks system
CN113810936A (en) SDR-based system exception management method, device, storage medium and system
JPH11119992A (en) Trace controller for firmware
WO2012137321A1 (en) Information processing device and method
JPH0642207B2 (en) Multi-level programming method
JP2002251299A (en) Program tracing device

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010403

LAPS Cancellation because of no payment of annual fees