JP3080769B2 - VLIW type computer abnormality detection method - Google Patents

VLIW type computer abnormality detection method

Info

Publication number
JP3080769B2
JP3080769B2 JP04121738A JP12173892A JP3080769B2 JP 3080769 B2 JP3080769 B2 JP 3080769B2 JP 04121738 A JP04121738 A JP 04121738A JP 12173892 A JP12173892 A JP 12173892A JP 3080769 B2 JP3080769 B2 JP 3080769B2
Authority
JP
Japan
Prior art keywords
instruction
vliw
type
test operation
embedding
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.)
Expired - Fee Related
Application number
JP04121738A
Other languages
Japanese (ja)
Other versions
JPH05313934A (en
Inventor
孝幸 矢木
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP04121738A priority Critical patent/JP3080769B2/en
Publication of JPH05313934A publication Critical patent/JPH05313934A/en
Application granted granted Critical
Publication of JP3080769B2 publication Critical patent/JP3080769B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

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

【0001】[0001]

【産業上の利用分野】この発明は、VLIW型命令を実
行するVLIW型計算機の異常検出方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an abnormality detection system for a VLIW computer which executes a VLIW instruction.

【0002】[0002]

【従来の技術】複数の命令語を並列に処理する計算機に
VLIW型計算機がある。このVLIW型計算機は、そ
れぞれ独立の命令語が設定可能な複数の命令フィールド
を持つVLIW型命令と呼ばれる命令に従って動作し、
各命令フィールドに設定されている命令語を並列に処理
する。
2. Description of the Related Art There is a VLIW type computer which processes a plurality of instruction words in parallel. The VLIW computer operates according to an instruction called a VLIW instruction having a plurality of instruction fields in which independent instruction words can be set.
Instruction words set in each instruction field are processed in parallel.

【0003】ところで、上記のVLIW型計算機を始め
とする計算機の異常を検出するのに、従来より、対象計
算機において同一計算を複数回実行させて、その演算結
果を比較するとか、予め結果が判っている演算を実行さ
せて、その演算結果を予測値と比較するなどの方法が知
られていた。
By the way, in order to detect an abnormality of a computer such as the VLIW type computer described above, conventionally, the same calculation is executed a plurality of times in a target computer, and the calculation results are compared. A method has been known in which an operation is performed and the operation result is compared with a predicted value.

【0004】この異常検出方法は、計算機での通常の演
算とは別の、テストのための演算、即ち冗長な演算を行
なうため、計算機の性能に影響を与えるという欠点があ
った。即ち、計算機異常検出のために、本当に行ないた
い計算の中にテスト演算を挿入すると、そのテスト演算
のために、本当に行ないたい演算が遅くなってしまうと
いう問題があった。
[0004] This abnormality detection method has a drawback that it performs a test operation, that is, a redundant operation, which is different from a normal operation in a computer, and thus affects the performance of the computer. That is, if a test operation is inserted into a calculation that one really wants to perform in order to detect a computer abnormality, there is a problem that the operation that one really wants to perform becomes slow because of the test operation.

【0005】[0005]

【発明が解決しようとする課題】上記したように従来
は、計算機の異常検出のために、テスト演算、即ち冗長
な演算を挿入することから、計算機の性能が低下すると
いう問題があった。
As described above, conventionally, a test operation, that is, a redundant operation is inserted in order to detect an abnormality in a computer, so that the performance of the computer is reduced.

【0006】ところが、VLIW型計算機では、コンパ
イラまたはリンカにより命令語配置がなされたVLIW
型命令群(アセンブリリストまたは実行ロードモジュー
ル)には、一般に空きの命令フィールドが散在する。こ
のような空き命令フィールドは、相互の依存関係などに
より並列に命令語が実行できない場合等に生じる。
However, in a VLIW type computer, a VLIW type computer in which instruction words are arranged by a compiler or a linker is used.
Generally, empty instruction fields are scattered in the type instruction group (assembly list or execution load module). Such an empty instruction field occurs when an instruction cannot be executed in parallel due to mutual dependency or the like.

【0007】この発明は、コンパイラまたはリンカによ
る命令語配置が行なわれたVLIW型命令群中に命令語
配置可能な空き命令フィールドが存在することに着目
し、この空き命令フィールドを利用してVLIW型計算
機の動作異常検出に必要なテスト演算命令語群を埋め込
むことにより、計算機性能を低下させることなく計算機
異常を検出することができるVLIW型計算機の異常検
出方式を提供することにある。
The present invention focuses on the fact that there is an empty instruction field in which instruction words can be arranged in a VLIW instruction group in which instruction words have been arranged by a compiler or a linker. An object of the present invention is to provide a VLIW-type computer abnormality detection method capable of detecting a computer abnormality without deteriorating computer performance by embedding a test operation instruction word group necessary for computer operation abnormality detection.

【0008】[0008]

【課題を解決するための手段】この発明は、コンパイラ
またはリンカによる命令語配置が行なわれたVLIW型
命令群中から、空き命令フィールドを少なくとも1つ持
つVLIW型命令がM個含まれているVLIW型命令列
を少なくとも1つ検出する検出手段と、この検出された
VLIW型命令列中に、計算機動作異常検出に必要な任
意のN個(但しN≦M)のテスト演算命令語を空き命令
フィールドを利用して埋め込むことが可能か否かを、V
LIW型命令列毎に判別する判別手段と、この判別手段
によってテスト演算命令語埋め込みが可能であることが
判別されたVLIW型命令列について、同VLIW型命
令列に含まれている空き命令フィールドを持つN個のV
LIW型命令中に、その空き命令フィールドを利用して
N個のテスト演算命令語を埋め込むテスト演算埋め込み
手段とを設け、テスト演算命令語が埋め込まれたVLI
W型命令群を実行することにより、計算機異常を検出す
るようにしたことを特徴とするものである。
According to the present invention, there is provided a VLIW instruction group including at least M VLIW instructions having at least one empty instruction field from a VLIW instruction group in which instruction words are arranged by a compiler or a linker. Detecting means for detecting at least one type of instruction sequence, and in the detected VLIW type instruction sequence, any N (where N ≦ M) test operation instruction words required for detecting a computer operation abnormality are provided in an empty instruction field. Whether it is possible to embed using
Discriminating means for discriminating each LIW-type instruction sequence, and for a VLIW-type instruction sequence for which it has been determined that the test operation instruction word can be embedded, the empty instruction field included in the VLIW-type instruction sequence is determined. N Vs with
Test operation embedding means for embedding N test operation instructions using the empty instruction field in the LIW type instruction, wherein the VLI in which the test operation instruction is embedded is provided.
A computer abnormality is detected by executing a W-type instruction group.

【0009】[0009]

【作用】上記の構成においては、コンパイラまたはリン
カによる命令語配置が行なわれたVLIW型命令群中か
ら、空き命令フィールドのあるVLIW型命令がM個含
まれているVLIW型命令列が検出手段により少なくと
も1つ検出される。判別手段は、この検出されたVLI
W型命令列中に、空きの命令フィールドを利用して計算
機動作異常検出に必要なN個(N≦M)のテスト演算命
令語を埋め込むことが可能か否かを、各VLIW型命令
列毎に判別する。この埋め込み可の判別条件は、例え
ば、検出されたVLIW型命令列の次のVLIW型命令
(のいずれかの命令語)で上書きされるレジスタ(デス
ティネーション指定のレジスタ)が存在し、且つそのレ
ジスタが、検出されたVLIW型命令列内では参照され
ないことである。
In the above configuration, the VLIW-type instruction string including M VLIW-type instructions having an empty instruction field is detected by the detection means from the VLIW-type instruction group in which instruction words are arranged by the compiler or the linker. At least one is detected. The determining means determines the detected VLI.
For each VLIW-type instruction sequence, it is determined whether or not N (N ≦ M) test operation instruction words necessary for detecting a computer operation abnormality can be embedded in a W-type instruction sequence using an empty instruction field. Is determined. This embedding-possible determination condition is that, for example, a register (destination-designated register) that is overwritten by (any instruction word of) the next VLIW-type instruction in the detected VLIW-type instruction string, and that register Is not referenced in the detected VLIW type instruction sequence.

【0010】判別手段によって、埋め込み可が判別され
たVLIW型命令列に対しては、その埋め込み可判別に
用いられたレジスタをテスト演算結果の上書き用とする
N個のテスト演算命令語が、埋め込み手段によって埋め
込まれる。この埋め込みは、同VLIW型命令列のうち
の空き命令フィールドを持つN個のVLIW型命令中
に、その空き命令フィールドを利用して、1つのVLI
W型命令につき1つのテスト演算命令語の単位で行なわ
れる。
[0010] For the VLIW type instruction sequence for which embedding is determined by the determining means, N test operation instruction words for overwriting the register used for the embedding determination with the test operation result are embedded. Embedded by means. This embedding is performed by using one vacant instruction field in one VLIW-type instruction among the N VLIW-type instructions having an empty instruction field in the same VLIW-type instruction sequence.
The test is performed in units of one test operation instruction word per W-type instruction.

【0011】以上の動作を繰り返すことにより、各種の
N個のテスト演算命令語を、VLIW型命令群の空き命
令フィールドを利用して、同命令群の随所に埋め込むこ
とができる。したがって、このようなテスト演算命令語
が埋め込まれたVLIW型命令群を実行することによ
り、本来の命令処理と並行して、テスト演算命令語が処
理されるため、計算機の性能を低下させることなく、計
算機異常を検出することが可能となる。しかも、テスト
演算結果の上書きに用いられるレジスタは、そのテスト
演算処理の期間に本来の命令処理で参照されることはな
く、そのテスト演算処理後の本来の命令処理で上書きさ
れる。このため、VLIW型命令群に埋め込まれたテス
ト演算命令語の処理が本来の命令処理に影響を及ぼすこ
とはない。
By repeating the above operation, various N test operation instruction words can be embedded anywhere in the VLIW instruction group using the empty instruction field of the instruction group. Therefore, by executing the VLIW type instruction group in which the test operation instruction word is embedded, the test operation instruction word is processed in parallel with the original instruction processing, so that the performance of the computer is not reduced. , It is possible to detect a computer abnormality. Moreover, the register used for overwriting the test operation result is not referred to by the original instruction processing during the test operation processing, but is overwritten by the original instruction processing after the test operation processing. Therefore, the processing of the test operation instruction word embedded in the VLIW type instruction group does not affect the original instruction processing.

【0012】なお、M>Nの場合、即ち検出されたVL
IW型命令列に含まれている空き命令フィールドのある
VLIW型命令の数がNより多い場合には、テスト演算
結果の上書き用に利用するレジスタは、検出されたVL
IW型命令列中で上書きされているものであってもよ
い。但し、そのレジスタを上書きする(命令語を持つ)
VLIW型命令から、検出されたVLIW型命令列内で
そのレジスタを最も最後に参照する(命令語を持つ)V
LIW型命令(そのレジスタを参照するVLIW型命令
がなければ、先頭のVLIW型命令)までに、空き命令
フィールドのあるVLIW型命令がN個存在する必要が
ある。
When M> N, that is, when the detected VL
If the number of VLIW-type instructions having empty instruction fields included in the IW-type instruction sequence is larger than N, the register used for overwriting the test operation result is the detected VL
It may be overwritten in the IW type instruction sequence. However, overwrite that register (has an instruction word)
From the VLIW-type instruction, the V that refers to the register last (having an instruction word) in the detected VLIW-type instruction sequence
There must be N VLIW-type instructions with empty instruction fields before the LIW-type instruction (if there is no VLIW-type instruction referring to the register, the first VLIW-type instruction).

【0013】[0013]

【実施例】図1は本発明の一実施例を示す全体構成図で
ある。
FIG. 1 is an overall configuration diagram showing an embodiment of the present invention.

【0014】図1において、1aはコンパイラまたはリ
ンカにより命令語が配置された(即ちコンパイルまたは
リンク終了後の)VLIW型命令語群からなるVLIW
型計算機による実行が可能なアセンブリリストまたは実
行ロードモジュール(以下、埋め込み実施前コードと称
する)である。1bは埋め込み実施前コード1aに対し
て次に述べるテスト演算埋め込み装置2によるテスト演
算命令語埋め込みが実施された後のコード(以下、埋め
込み実施後コードと称する)である。本実施例において
は、この埋め込み実施後コード1bが、VLIW型計算
機による実行対象となる。
In FIG. 1, reference numeral 1a denotes a VLIW composed of a VLIW type instruction word group in which an instruction word is arranged by a compiler or a linker (that is, after completion of compilation or linking).
An assembly list or an execution load module (hereinafter, referred to as a code before embedding) that can be executed by the type computer. Reference numeral 1b denotes a code (hereinafter referred to as a post-embedding code) after the test operation instruction word embedding by the test operation embedding device 2 described below is performed on the code 1a before embedding. In the present embodiment, the post-embedding code 1b is to be executed by the VLIW computer.

【0015】なお、図中の埋め込み実施前コード1a,
埋め込み実施後コード1bにおいては、横の1行が、1
VLIW型命令(クラスタ)を示し、VLIW型命令中
の縦の各列が命令フィールドを示す。また、埋め込み実
施前コード1aおよび埋め込み実施後コード1bにおい
て、斜線が施された命令フィールドは命令語が配置され
ていることを示し、空白の命令フィールドは空きの命令
語配置可能命令フィールド(空き命令フィールド)であ
ることを示す。また、埋め込み実施後コード1bにおい
て、文字列「TEST」が記入された命令フィールド
は、空き命令フィールド(以下、単に空きフィールドと
称する)にテストのための演算命令語(テスト演算命令
語)が埋め込まれていることを示す。
The code 1a before embedding execution in FIG.
In the post-embedding code 1b, one horizontal line is 1
A VLIW type instruction (cluster) is shown, and each vertical column in the VLIW type instruction shows an instruction field. In the code 1a before embedding and the code 1b after embedding, the shaded instruction fields indicate that instruction words are arranged, and blank instruction fields indicate empty instruction word allocable instruction fields (empty instruction fields). Field). In the post-embedding code 1b, the instruction field in which the character string “TEST” is written has an operation instruction (test operation instruction) for testing embedded in an empty instruction field (hereinafter simply referred to as an empty field). Indicates that

【0016】2は埋め込み実施前コード1aに対するテ
スト演算命令語埋め込みを実施して埋め込み実施後コー
ド1bを生成するテスト演算埋め込み装置である。テス
ト演算埋め込み装置2は、空きフィールド検出機構2
1、テスト演算埋め込み判別機構22、およびテスト演
算埋め込み機構23により構成される。
Reference numeral 2 denotes a test operation embedding device that executes a test operation instruction word embedding on the code 1a before embedding and generates a code 1b after embedding. The test operation embedding device 2 includes an empty field detection mechanism 2
1, a test operation embedding determination mechanism 22 and a test operation embedding mechanism 23.

【0017】空きフィールド検出機構21は、埋め込み
実施前コード1aの中から、空きフィールドを少なくと
も1つ持つVLIW型命令がM個含まれているVLIW
型命令列を少なくとも1つ検出する。テスト演算埋め込
み判別機構22は、空きフィールド検出機構21によっ
て検出されたVLIW型命令列中に、VLIW型計算機
の動作異常検出に必要な任意のN個(但しN≦M)のテ
スト演算命令語を空きフィールドを利用して埋め込むこ
とが可能か否かを判別する。テスト演算埋め込み機構2
3は、テスト演算埋め込み判別機構22によってテスト
演算命令語埋め込みが可能であることが判別されたVL
IW型命令列について、同VLIW型命令列に含まれて
いる空きフィールドを持つN個のVLIW型命令中に、
その空きフィールドを利用してN個のテスト演算命令語
を埋め込む。次に、図1の構成におけるテスト演算埋め
込み装置2の動作について、図2のフローチャートを適
宜参照して説明する。
The vacant field detection mechanism 21 is configured to execute a VLIW instruction including at least M VLIW instructions having at least one vacant field from the pre-embedding code 1a.
At least one type instruction sequence is detected. The test operation embedding determination mechanism 22 includes, in the VLIW type instruction sequence detected by the empty field detection mechanism 21, any N (where N ≦ M) test operation instructions necessary for detecting an abnormal operation of the VLIW type computer. It is determined whether it is possible to embed using an empty field. Test operation embedding mechanism 2
3 is a VL for which it has been determined by the test operation embedding determination mechanism 22 that the test operation instruction word can be embedded.
Regarding the IW-type instruction sequence, among the N VLIW-type instructions having an empty field included in the VLIW-type instruction sequence,
N test operation instructions are embedded using the empty field. Next, the operation of the test operation embedding device 2 in the configuration of FIG. 1 will be described with reference to the flowchart of FIG.

【0018】まずテスト演算埋め込み装置2内の空きフ
ィールド検出機構21は、埋め込み実施前コード1aを
先頭VLIW型命令(即ち先頭クラスタ)から順に調
べ、空きフィールドを少なくとも1つ持つVLIW型命
令がM個含まれ、且つ分岐元にも分岐先にもならない連
続するVLIW型命令の列(VLIW型命令列)を探す
(ステップS1)。
First, the empty field detection mechanism 21 in the test operation embedding device 2 checks the code 1a before embedding in order from the head VLIW type instruction (that is, the head cluster), and finds M VLIW type instructions having at least one empty field. A sequence of VLIW-type instructions (VLIW-type instruction sequences) that are included and are neither a branch source nor a branch destination are searched for (step S1).

【0019】もし、目的のVLIW型命令列が存在する
ならば、空きフィールド検出機構21は、そのVLIW
型命令列の範囲(開始クラスタ位置および終了クラスタ
位置)をテスト演算埋め込み判別機構22に通知する
(ステップS2)。そして空きフィールド検出機構21
はステップS1に戻り、先に探したVLIW型命令列の
次のVLIW型命令から順に埋め込み実施前コード1a
を調べ、後続のVLIW型命令列(空きフィールドを少
なくとも1つ持つVLIW型命令がM個含まれ、且つ分
岐元にも分岐先にもならないVLIW型命令列)を探
す。これに対し、目的のVLIW型命令列が存在しない
ならば、空きフィールド検出機構21は処理(空きフィ
ールド検出処理)を終了する。
If the target VLIW type instruction sequence exists, the empty field detecting mechanism 21
The range of the type instruction sequence (start cluster position and end cluster position) is notified to the test operation embedded discrimination mechanism 22 (step S2). And the empty field detecting mechanism 21
Returns to step S1 and sequentially executes the code 1a before embedding in order from the next VLIW-type instruction in the previously searched VLIW-type instruction sequence.
Is searched for a subsequent VLIW-type instruction sequence (a VLIW-type instruction sequence that includes M VLIW-type instructions having at least one empty field and is neither a branch source nor a branch destination). On the other hand, if the target VLIW type instruction sequence does not exist, the empty field detection mechanism 21 ends the processing (empty field detection processing).

【0020】テスト演算埋め込み判別機構22は、空き
フィールド検出機構21からVLIW型命令列の範囲が
通知されると、埋め込み実施前コード1a上において、
その通知された範囲で示されるVLIW型命令列の次の
VLIW型命令中で上書きされているレジスタ(即ちデ
スティネーション指定のレジスタ)を探す(ステップS
11)。
When notified of the range of the VLIW type instruction sequence from the empty field detecting mechanism 21, the test operation embedding determining mechanism 22
A register overwritten in the next VLIW-type instruction of the VLIW-type instruction sequence indicated in the notified range (that is, a register designated as a destination) is searched (step S).
11).

【0021】もし、目的のレジスタが存在するならば、
テスト演算埋め込み判別機構22は、そのレジスタが、
空きフィールド検出機構21によって通知された範囲の
VLIW型命令列中で参照されていないか否か(即ちソ
ース指定されていないか否か)をチェックする(ステッ
プS12)。ここで、上記のレジスタが参照されている
ならば、テスト演算埋め込み判別機構22はステップS
11に戻り、上書きされている他のレジスタを探す。
If the target register exists,
The test operation embedding determination mechanism 22 determines that the register
It is checked whether or not it is referenced in the VLIW type instruction sequence in the range notified by the empty field detection mechanism 21 (that is, whether or not the source is specified) (step S12). Here, if the above-mentioned register is referred to, the test operation embedding determination mechanism 22 proceeds to step S
Returning to step 11, search for another overwritten register.

【0022】これに対し、上記のレジスタが参照されて
いないならば、テスト演算埋め込み判別機構22は、N
個のテスト演算命令語を空きフィールド検出機構21に
より通知された範囲のVLIW型命令列中に空きフィー
ルドを利用して埋め込むことが可能であるものと判別
し、次に述べるステップS13の処理を実行する。
On the other hand, if the above register is not referred to, the test operation embedding / discriminating mechanism 22
It is determined that the test operation instruction words can be embedded in the VLIW-type instruction sequence in the range notified by the empty field detection mechanism 21 using the empty field, and the process of step S13 described below is executed. I do.

【0023】即ちテスト演算埋め込み判別機構22は、
VLIW型計算機をテストするためのN個のテスト演算
命令語であって、予め結果の予測できる演算(例えば答
えの分かっている整数型や浮動小数点型の演算や、特定
値の入っているメモリからの読み出し)を実行して、そ
の結果を上記(ステップS12で参照されていないこと
が確認された)レジスタに格納してチェックするための
N個のテスト演算命令語を決定し、そのテスト演算命令
語と埋め込み対象となるVLIW型命令列の範囲とをテ
スト演算埋め込み装置2内のテスト演算埋め込み機構2
3に通知する。そしてテスト演算埋め込み判別機構22
は、次のテスト演算埋め込み(の判別)が必要で且つ空
きフィールド検出機構21から次のVLIW型命令列の
範囲が通知されたならば、即ち終了でなければ(ステッ
プS14)、ステップS11に戻る。
That is, the test operation embedded discrimination mechanism 22
N test operation commands for testing a VLIW type computer, which are operations that can predict the result in advance (for example, an integer type or floating point type operation with a known answer, or a memory containing a specific value). Is read out), and N test operation instruction words for storing and checking the result in the register (confirmed not being referred to in step S12) are determined. The test operation embedding mechanism 2 in the test operation embedding device 2 compares the word and the range of the VLIW type instruction sequence to be embedded.
Notify 3. And a test operation embedded discrimination mechanism 22
Returns to step S11 if it is necessary to embed (determine) the next test operation and if the range of the next VLIW-type instruction sequence is notified from the empty field detection mechanism 21, that is, if it is not the end (step S14). .

【0024】一方、目的のレジスタが存在しないなら
ば、テスト演算埋め込み判別機構22は、空きフィール
ド検出機構21によって通知されたVLIW型命令列に
対するテスト演算命令語の埋め込みが不可能であること
を判別する。この場合、テスト演算埋め込み判別機構2
2は、次のテスト演算埋め込み(の判別)が必要で且つ
空きフィールド検出機構21から次のVLIW型命令列
の範囲が通知されたならば、ステップS11に戻る。な
お、VLIW型命令列の次のVLIW型命令が分岐元ま
たは分岐先となる場合にも、テスト演算命令語埋め込み
不可能が判別される。
On the other hand, if the target register does not exist, the test operation embedding determining mechanism 22 determines that the embedding of the test operation instruction into the VLIW type instruction sequence notified by the empty field detecting mechanism 21 is impossible. I do. In this case, the test operation embedded discrimination mechanism 2
If the next test operation embedding (determination) is necessary and the empty field detection mechanism 21 notifies the next VLIW type instruction sequence range, the process returns to step S11. It should be noted that also when the VLIW type instruction following the VLIW type instruction sequence is a branch source or a branch destination, it is determined that the test operation instruction word cannot be embedded.

【0025】テスト演算埋め込み機構23は、テスト演
算埋め込み判別機構22からの通知を受ける毎に、その
通知されたN個のテスト演算命令語を、埋め込み実施前
コード1a上における、通知された範囲のVLIW型命
令列中の空きフィールドに、先頭のテスト演算命令語か
ら順に、1つのVLIW型命令につき1つのテスト演算
命令語の単位で埋め込む。
Each time the test operation embedding mechanism 23 receives the notification from the test operation embedding determination mechanism 22, the test operation embedding mechanism 23 replaces the notified N test operation instructions with the notified range in the code 1a before embedding execution. Each VLIW-type instruction is buried in a free field in the VLIW-type instruction sequence in units of one test-operation instruction for each VLIW-type instruction.

【0026】このように、テスト演算埋め込み判別機構
22からの通知の都度、テスト演算埋め込み機構23に
よる埋め込み実施前コード1aへのテスト演算命令語の
埋め込みが行われることにより、各種のN個のテスト演
算命令語を、埋め込み実施前コード1aの空きフィール
ドを利用して、同コード1aの随所に埋め込むことがで
きる。この結果、埋め込み実施前コード1aは埋め込み
実施後コード1bに変化する。
As described above, the test operation embedding mechanism 23 embeds the test operation instruction word in the pre-embedding code 1a each time the notification is sent from the test operation embedding determination mechanism 22. An operation instruction word can be embedded anywhere in the code 1a using the empty field of the code 1a before embedding. As a result, the code 1a before embedding is changed to the code 1b after embedding.

【0027】したがって、このようなテスト演算命令語
が埋め込まれた埋め込み実施後コード1bをVLIW型
計算機(図示せず)で実行することにより、本来の命令
処理と並行して、テスト演算命令語が処理されるため、
計算機の性能を低下させることなく、計算機異常を検出
することが可能となる。しかも、テスト演算結果の上書
きに用いられるレジスタは、そのテスト演算処理の期間
に本来の命令処理で参照されることはなく、そのテスト
演算処理後の本来の命令処理で上書きされる。このた
め、埋め込み実施後コード1b中に埋め込まれているテ
スト演算命令語の処理が本来の命令処理に影響を及ぼす
ことはない。
Therefore, by executing the post-embedding code 1b in which such a test operation instruction is embedded by a VLIW type computer (not shown), the test operation instruction is executed in parallel with the original instruction processing. To be processed,
It is possible to detect a computer abnormality without deteriorating the performance of the computer. Moreover, the register used for overwriting the test operation result is not referred to by the original instruction processing during the test operation processing, but is overwritten by the original instruction processing after the test operation processing. Therefore, the processing of the test operation instruction word embedded in the post-embedding code 1b does not affect the original instruction processing.

【0028】以上のテスト演算命令語埋め込みの具体例
を、M=N=2の場合について、図3を参照して説明す
る。まず、図1の空きフィールド検出機構21によっ
て、埋め込み実施前コード1aから、図3(a)に示す
ように、空きフィールドを持ち分岐元にも分岐先にもな
らないM(=2)個のVLIW型命令からなるVLIW
型命令列31が検出されたものとする。
A specific example of the embedding of the test operation instruction word in the case where M = N = 2 will be described with reference to FIG. First, as shown in FIG. 3A, from the pre-embedding code 1a, M (= 2) VLIWs which have an empty field and become neither a branch source nor a branch destination are obtained by the empty field detection mechanism 21 of FIG. VLIW consisting of type instructions
It is assumed that the type instruction sequence 31 has been detected.

【0029】この場合、テスト演算埋め込み判別機構2
2は、そのVLIW型命令列31の次のVLIW型命令
32が分岐元にも分岐先にもならず、且つその命令32
中に図に示すように上書きされているレジスタ(r3)
が存在するならば、VLIW型命令列31中でそのレジ
スタ(r3)が参照されていないか否かを調べる。も
し、そのレジスタ(r3)がVLIW型命令列31中で
参照されていなければ、テスト演算埋め込み判別機構2
2は、そのレジスタ(r3)はテスト演算での結果格納
用に使用可能であり、したがってN(=2)個のテスト
演算命令語をVLIW型命令列31の空きフィールドに
埋め込むことが可能であると判別し、そのN(=2)個
のテスト演算命令語を決定する。ここでは、“1+1→
r3”(1+1の加算結果をr3に格納するための命令
語)と“r3は2か?”(r3の内容が「2」であるか
否かをチェックするための命令語)が決定されたものと
する。
In this case, the test operation embedded discriminating mechanism 2
2 indicates that the VLIW-type instruction 32 following the VLIW-type instruction sequence 31 is neither a branch source nor a branch destination, and the instruction 32
The register (r3) that is overwritten as shown in the figure
Exists, it is checked whether or not the register (r3) is referenced in the VLIW type instruction sequence 31. If the register (r3) is not referred to in the VLIW type instruction sequence 31, the test operation embedded discrimination mechanism 2
2 is that the register (r3) can be used for storing the result in the test operation, and therefore, N (= 2) test operation instruction words can be embedded in the empty field of the VLIW type instruction sequence 31. And N (= 2) test operation instructions are determined. Here, “1 + 1 →
r3 "(instruction word for storing the addition result of 1 + 1 in r3) and is" r3 2 "? "(Command for checking whether the content of r3 is" 2 ") is determined.

【0030】テスト演算埋め込み機構23は、テスト演
算埋め込み判別機構22によって決定されたテスト演算
命令語“1+1→r3”,“r3は2か?”を、図3
(b)において符号33,34で示すように、VLIW
型命令列31中の空きフィールドに、先頭のテスト演算
命令語から順に、1つのVLIW型命令につき1つのテ
スト演算命令語の単位で埋め込む。
The test operation embedding mechanism 23 receives the test operation command words “1 + 1 → r3” and “is r3 2?” Determined by the test operation embedding determination mechanism 22 in FIG.
As shown by reference numerals 33 and 34 in (b), VLIW
The VLIW-type instruction is buried in an empty field in the type instruction sequence 31 in units of one test operation instruction word in order from the first test operation instruction word.

【0031】さて、VLIW型命令列31の先頭のVL
IW型命令の空きフィールドに埋め込まれた符号33の
テスト演算命令語“1+1→r3”が実行されると、
“1+1”の加算結果がレジスタr3に格納され、続い
てVLIW型命令列31の2番目(最後)のVLIW型
命令の空きフィールドに埋め込まれた符号34のテスト
演算命令語“r3は2か?”が実行されると、レジスタ
r3の内容が「2」であるか否かがチェックされる。r
3=2ならばVLIW型計算機は正常であり、次のVL
IW型命令処理に進み、r3=2でなければVLIW型
計算機は異常であり、マシン停止などの異常処理を行
う。
Now, the first VL of the VLIW type instruction sequence 31
When the test operation instruction word “1 + 1 → r3” of code 33 embedded in the empty field of the IW type instruction is executed,
The addition result of "1 + 1" is stored in the register r3, and subsequently, is the test operation instruction word "r3 2" embedded in an empty field of the second (last) VLIW type instruction of the VLIW type instruction sequence 31? Is executed, it is checked whether or not the content of the register r3 is "2". r
If 3 = 2, the VLIW computer is normal and the next VL
The process proceeds to the IW type instruction processing. If r3 = 2, the VLIW type computer is abnormal and performs abnormal processing such as stopping the machine.

【0032】さて、VLIW型命令列31中に埋め込ま
れたテスト演算命令語“1+1→r3”,“r3は2か
?”の実行期間中は、VLIW型命令列31中の本来の
命令処理でレジスタr3が参照されることはない。しか
もレジスタr3は、VLIW型命令列31の次のVLI
W型命令32で上書きされる。このため、VLIW型命
令列31に埋め込まれたテスト演算命令語“1+1→r
3”,“r3は2か?”の処理が本来の命令処理に影響
を及ぼすことはない。
During the execution period of the test operation instruction words “1 + 1 → r3” and “is r3 2?” Embedded in the VLIW type instruction sequence 31, the original instruction processing in the VLIW type instruction sequence 31 is performed. The register r3 is not referred to. Moreover, the register r3 stores the next VLI of the VLIW type instruction sequence 31.
Overwritten by W-type instruction 32. Therefore, the test operation instruction word “1 + 1 → r” embedded in the VLIW type instruction sequence 31
3 "," r3 is 2? Does not affect the original instruction processing.

【0033】以上は、M=Nの場合について説明した
が、M>Nの場合、即ち空きフィールド検出機構21に
よって検出されたVLIW型命令列に含まれている空き
フィールドのあるVLIW型命令の数がNより多い場合
には、テスト演算結果の上書き用に利用するレジスタ
は、検出されたVLIW型命令列中で上書きされている
ものであってもよい。ここでは、対象とするVLIW型
命令を、検出されたVLIW型命令列の次のVLIW型
命令、このVLIW型命令列の最終命令、それより1つ
前の命令…の如く順に切り替えながら、上書きされてい
るレジスタを探すことが可能となる。但し、そのレジス
タを上書きする(命令語を持つ)VLIW型命令から、
検出されたVLIW型命令列内でそのレジスタを最も最
後に参照する(命令語を持つ)VLIW型命令(そのレ
ジスタを参照するVLIW型命令がなければ、先頭のV
LIW型命令)までに、空きフィールドのあるVLIW
型命令がN個存在する必要がある。
The case where M = N has been described above. However, when M> N, that is, the number of VLIW instructions having an empty field included in the VLIW instruction sequence detected by the empty field detecting mechanism 21 Is larger than N, the register used for overwriting the test operation result may be the register overwritten in the detected VLIW type instruction sequence. Here, the target VLIW-type instruction is overwritten while being switched in the order of the next VLIW-type instruction of the detected VLIW-type instruction sequence, the last instruction of this VLIW-type instruction sequence, the instruction immediately before that, and so on. It is possible to search for a register that is in use. However, from the VLIW type instruction which overwrites the register (has an instruction word),
In the detected VLIW-type instruction sequence, a VLIW-type instruction that refers to the register last (has an instruction word) (if there is no VLIW-type instruction that refers to the register, the first V
VLIW with empty fields before the LIW instruction)
There must be N type instructions.

【0034】また、前記実施例では、所定条件を満たす
VLIW型命令列が見つからなくなるまで空きフィール
ド検出機構21による空きフィールド検出処理を繰り返
すものとして説明したが、これに限るものではない。例
えば、予め定められた数またはテスト演算埋め込み判別
機構22から要求される数のVLIW型命令列を見つけ
たならば、空きフィールド検出機構21の処理を終了す
るようにしてもよい。また、テスト演算埋め込み判別機
構22から空きフィールド検出機構21に対して逐次空
きフィールド検出を要求し、この要求の都度、空きフィ
ールド検出機構21が空きフィールド検出を行うように
してもよい。
Further, in the above-described embodiment, the empty field detecting process by the empty field detecting mechanism 21 is repeated until a VLIW type instruction sequence satisfying the predetermined condition is not found. However, the present invention is not limited to this. For example, if a predetermined number of VLIW-type instruction strings are found or a number required by the test operation embedded discrimination mechanism 22, the processing of the empty field detection mechanism 21 may be terminated. Alternatively, the test operation embedding determination mechanism 22 may sequentially request the empty field detection mechanism 21 to detect the empty field, and the empty field detection mechanism 21 may detect the empty field each time this request is made.

【0035】[0035]

【発明の効果】以上詳述したようにこの発明によれば、
コンパイルまたはリンク終了後のVLIW型命令群(埋
め込み実施前コード)中に存在する空きフィールド(空
きの命令語配置可能命令フィールド)を利用してVLI
W型計算機の動作異常検出に必要なテスト演算命令語群
を埋め込み、このテスト演算命令語群埋め込み後のVL
IW型命令群を実行することにより、計算機異常を検出
するようにしたので、計算機異常検出処理(テスト演算
命令処理)がVLIW型命令群中の本来の命令処理と並
行して行なえるようになり、したがって計算機性能を低
下させることなく計算機異常を検出することができる。
As described in detail above, according to the present invention,
Utilizing a free field (a free instruction word allocable instruction field) existing in a VLIW type instruction group (code before embedding execution) after completion of compiling or linking,
A test operation instruction group necessary for detecting an abnormal operation of the W-type computer is embedded, and the VL after embedding the test operation instruction group is embedded.
Since the computer abnormality is detected by executing the IW instruction group, the computer abnormality detection processing (test operation instruction processing) can be performed in parallel with the original instruction processing in the VLIW instruction group. Therefore, a computer abnormality can be detected without lowering the computer performance.

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

【図1】本発明の一実施例の全体構成を示すブロック
図。
FIG. 1 is a block diagram showing an overall configuration of an embodiment of the present invention.

【図2】図1のテスト演算埋め込み装置2内の空きフィ
ールド検出機構21およびテスト演算埋め込み判別機構
22の処理手順を示すフローチャート。
FIG. 2 is a flowchart showing a processing procedure of an empty field detection mechanism 21 and a test operation embedding determination mechanism 22 in the test operation embedding device 2 of FIG.

【図3】同実施例における具体的な動作を説明するため
の図。
FIG. 3 is an exemplary view for explaining a specific operation in the embodiment.

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

1a…埋め込み実施前コード(VLIW型命令群)、1
b…埋め込み実施後コード、2…テスト演算埋め込み装
置、21…空きフィールド検出機構、22…テスト演算
埋め込み判別機構、23…テスト演算埋め込み機構。
1a: code before embedding execution (VLIW type instruction group), 1
b: code after execution of embedding, 2: test operation embedding device, 21: empty field detection mechanism, 22: test operation embedding determination mechanism, 23: test operation embedding mechanism.

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 それぞれ独立の命令語が設定可能な複数
の命令フィールドを持つVLIW(Very Long Instruct
ion Word)型命令を実行するVLIW型計算機におい
て、 コンパイラまたはリンカによる命令語配置が行なわれた
VLIW型命令群中に存在する空き命令フィールドを探
し、この空き命令フィールドを利用して前記VLIW型
計算機の動作異常検出に必要なテスト演算命令語群を埋
め込み、このテスト演算命令語群埋め込み後の前記VL
IW型命令群を実行することにより、計算機異常を検出
するようにしたことを特徴とするVLIW型計算機の異
常検出方式。
1. A VLIW (Very Long Instruction) having a plurality of instruction fields in which independent instruction words can be set.
In a VLIW-type computer for executing an instruction word, a free instruction field existing in a VLIW-type instruction group in which an instruction word is arranged by a compiler or a linker is searched, and the VLIW-type computer is used by using the empty instruction field. A test operation instruction group necessary for detecting an abnormal operation of the VL is embedded, and the VL after the test operation instruction group is embedded.
An abnormality detection method for a VLIW type computer, wherein a computer error is detected by executing an IW type instruction group.
【請求項2】 それぞれ独立の命令語が設定可能な複数
の命令フィールドを持つVLIW型命令を実行するVL
IW型計算機において、 コンパイラまたはリンカによる命令語配置が行なわれた
VLIW型命令群中から、空き命令フィールドを少なく
とも1つ持つVLIW型命令がM個含まれているVLI
W型命令列を少なくとも1つ検出する検出手段と、 この検出手段によって検出された前記VLIW型命令列
中に、前記VLIW型計算機の動作異常検出に必要な任
意のN個(但しN≦M)のテスト演算命令語を前記空き
命令フィールドを利用して埋め込むことが可能か否か
を、前記VLIW型命令列毎に判別する判別手段と、 この判別手段によってテスト演算命令語埋め込みが可能
であることが判別されたVLIW型命令列について、同
VLIW型命令列に含まれている空き命令フィールドを
持つN個のVLIW型命令中に、その空き命令フィール
ドを利用して前記N個のテスト演算命令語を埋め込むテ
スト演算埋め込み手段と、 を具備し、前記テスト演算命令語が埋め込まれた前記V
LIW型命令群を実行することにより、計算機異常を検
出するようにしたことを特徴とするVLIW型計算機の
異常検出方式。
2. A VL for executing a VLIW type instruction having a plurality of instruction fields in which independent instruction words can be set.
In the IW type computer, a VLIW instruction including at least M VLIW type instructions having at least one empty instruction field is selected from a group of VLIW type instructions in which instruction words are arranged by a compiler or a linker.
Detecting means for detecting at least one W-type instruction sequence; and in the VLIW-type instruction sequence detected by this detecting means, any N (where N ≦ M) necessary for detecting an abnormal operation of the VLIW-type computer Determining means for each VLIW-type instruction sequence as to whether or not the test operation instruction word can be embedded using the empty instruction field; and that the test operation instruction word can be embedded by the determination means. In the VLIW type instruction sequence for which is determined, among the N VLIW type instructions having an empty instruction field included in the VLIW type instruction sequence, the N test operation instruction words are utilized by using the empty instruction field. And a test operation embedding unit for embedding the test operation instruction word.
An abnormality detection method for a VLIW-type computer, wherein a computer abnormality is detected by executing a LIW-type instruction group.
JP04121738A 1992-05-14 1992-05-14 VLIW type computer abnormality detection method Expired - Fee Related JP3080769B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04121738A JP3080769B2 (en) 1992-05-14 1992-05-14 VLIW type computer abnormality detection method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04121738A JP3080769B2 (en) 1992-05-14 1992-05-14 VLIW type computer abnormality detection method

Publications (2)

Publication Number Publication Date
JPH05313934A JPH05313934A (en) 1993-11-26
JP3080769B2 true JP3080769B2 (en) 2000-08-28

Family

ID=14818662

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04121738A Expired - Fee Related JP3080769B2 (en) 1992-05-14 1992-05-14 VLIW type computer abnormality detection method

Country Status (1)

Country Link
JP (1) JP3080769B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014180502A (en) * 2013-03-21 2014-09-29 Masahiko Hoshino Simple self-supported pulling device

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4747028B2 (en) * 2006-05-11 2011-08-10 エヌイーシーコンピュータテクノ株式会社 Microprocessor, information processing method and program using the same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014180502A (en) * 2013-03-21 2014-09-29 Masahiko Hoshino Simple self-supported pulling device

Also Published As

Publication number Publication date
JPH05313934A (en) 1993-11-26

Similar Documents

Publication Publication Date Title
KR950006616B1 (en) System and method for preserving source instruction atomicity in translated program code
EP0155211A2 (en) System for by-pass control in pipeline operation of computer
US7152153B2 (en) Bi-directional return register stack recovery from speculative execution of call/return upon branch misprediction
US5968135A (en) Processing instructions up to load instruction after executing sync flag monitor instruction during plural processor shared memory store/load access synchronization
JP2500958B2 (en) Digital data processor operating method and branch history table
US6298479B1 (en) Method and system for compiling and linking source files
JPH0789319B2 (en) Prior control device in data processing device
JPS61109147A (en) Data processor
US6697971B1 (en) System and method for detecting attempts to access data residing outside of allocated memory
US20030120902A1 (en) Resource management using multiply pendent registers
US7269828B2 (en) Method for safely instrumenting large binary code
US7093074B2 (en) Storage control device and storage control method
JP3080769B2 (en) VLIW type computer abnormality detection method
US5530815A (en) Apparatus and method for verifying the order and operation of a data processing device when asynchronous commands are held in a command queue
US5481705A (en) Method for executing a program with branch-to modifying instructions
JP3035108B2 (en) Parallel processing unit
US5548736A (en) Method and apparatus overcoming delay introduced by instruction interlocking in pipelined instruction execution
JP3461185B2 (en) Method and apparatus for registering source code line number to load module
EP0655686B1 (en) Retry control method and device for control processor
JPS58161043A (en) Instruction controller
KR960014825B1 (en) Information processing system
JPH0578053B2 (en)
JP3428253B2 (en) Sequencer
JP3012618B1 (en) Debugging method of inspected program and its debugging method
JPH06149569A (en) Register number changing device

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees