JPH0566940A - Cpu executing instruction analysis system - Google Patents

Cpu executing instruction analysis system

Info

Publication number
JPH0566940A
JPH0566940A JP3226809A JP22680991A JPH0566940A JP H0566940 A JPH0566940 A JP H0566940A JP 3226809 A JP3226809 A JP 3226809A JP 22680991 A JP22680991 A JP 22680991A JP H0566940 A JPH0566940 A JP H0566940A
Authority
JP
Japan
Prior art keywords
instruction
cpu
buffer
data
execution
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
JP3226809A
Other languages
Japanese (ja)
Inventor
Yasumasa Nakada
恭正 中田
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 JP3226809A priority Critical patent/JPH0566940A/en
Publication of JPH0566940A publication Critical patent/JPH0566940A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Abstract

PURPOSE:To facilitate the analysis of the cause of a fault which unable to continue the due processing and to improve the system reliability by storing the instruction carried out by a CPU in a memory together with the data which analyze the execution of the instruction. CONSTITUTION:A CPU 1 is provided to carry out an instruction together with an instruction writing buffer 7 which stores the instruction, an unexecuted data writing buffer 9 which stores the unexecuted data on the instruction carried out by the CPU 1, a memory 13 which stores the instructions stored in both buffers 7 and 9, and a means 11 which stores the instruction stored in the buffer 7 and the data stored in the buffer 9 into the memory 13 when the bit of a status register showing the state of the CPU 1 changes or one of both buffers 7 and 9 is filled.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、CPUにより実行され
た命令を解析するための当該命令および解析に必要なデ
ータをメモリに記憶することにより、CPUにより実行
された命令の解析を容易にするCPU実行命令解析方式
に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention facilitates the analysis of instructions executed by a CPU by storing in the memory the instruction executed by the CPU and the data necessary for the analysis. The present invention relates to a CPU execution instruction analysis method.

【0002】[0002]

【従来の技術】コンピュータシステムの入出力装置、演
算装置および記憶装置を制御するCPU(中央処理装
置)は操作指令である命令を実行することによりコンピ
ュータシステムの制御を実行する。
2. Description of the Related Art A CPU (Central Processing Unit) for controlling an input / output device, an arithmetic unit, and a storage device of a computer system executes a command which is an operation command to control the computer system.

【0003】従来、コンピュータシステムにおいて、C
PUにより実行された命令および当該命令を解析するデ
ータは、記憶装置等に記憶されていなかった。従って、
例えば、処理の継続が不可能なトラップが発生するとC
PUにより実行された命令を解析するのが困難であり、
特に、パイプライン制御等の複雑な制御を実行するCP
Uではシステムの効率の低下を防止するのが容易ではな
かった。
Conventionally, in a computer system, C
The instruction executed by the PU and the data for analyzing the instruction have not been stored in the storage device or the like. Therefore,
For example, if a trap that cannot continue processing occurs, C
Difficult to parse the instructions executed by the PU,
In particular, CP that executes complicated control such as pipeline control
At U, it was not easy to prevent the efficiency of the system from decreasing.

【0004】[0004]

【発明が解決しようとする課題】ところで、従来のCP
U実行命令解析方式は、CPUにより実行された命令お
よび当該命令を解析するデータを記憶装置に記憶してい
ないので、処理の継続が不可能なトラップ等が発生して
も当該トラップの原因を解析するのが困難であり、特
に、パイプライン制御等の複雑な制御を実行するシステ
ムにおいては、原因不明によるシステムの信頼性の低下
を招来する問題があった。
By the way, the conventional CP
In the U execution instruction analysis method, since the instruction executed by the CPU and the data for analyzing the instruction are not stored in the storage device, the cause of the trap is analyzed even if a trap or the like which cannot continue the processing occurs. However, in a system that executes complicated control such as pipeline control, there is a problem that system reliability is deteriorated due to unknown cause.

【0005】本発明は、このような従来の課題を解決す
るためになされたもので、その目的は、CPUにより実
行された命令および当該命令の実行を解析するデータを
メモリに記憶することにより、処理の継続が不可能な障
害の原因の解析を容易にして、システムの信頼性を向上
するCPU実行命令解析方式を提供することにある。
The present invention has been made in order to solve such a conventional problem, and an object thereof is to store an instruction executed by a CPU and data for analyzing the execution of the instruction in a memory. It is to provide a CPU execution instruction analysis method that facilitates analysis of the cause of a failure in which processing cannot be continued and improves system reliability.

【0006】[0006]

【課題を解決するための手段】上記目的を達成するた
め、本発明は、命令を実行するCPUと、このCPUに
より実行される命令を記憶する命令書込み用バッファ
と、前記CPUにより実行される命令の実行前のデータ
を記憶する実行前データ書込み用バッファと、この実行
前データ書込み用バッファに記憶されているデータおよ
び前記命令書込み用バッファに記憶されている命令を記
憶するメモリと、前記CPUの状態を示すステータスレ
ジスタのビットが変化した場合または前記命令書込み用
バッファおよび実行前データ書込み用バッファのいずれ
かがバッファフル状態の場合、当該命令書込み用バッフ
ァに記憶されている命令および実行前データ書込み用バ
ッファに記憶されているデータを前記メモリに記憶する
手段と、を備えたことを要旨とする。
In order to achieve the above object, the present invention provides a CPU for executing an instruction, an instruction writing buffer for storing an instruction executed by the CPU, and an instruction executed by the CPU. Of the pre-execution data write buffer for storing the data before execution of, the memory for storing the data stored in the pre-execution data write buffer and the instruction stored in the instruction write buffer, and the CPU If the status register bit indicating the status has changed or if one of the instruction write buffer and pre-execution data write buffer is in the buffer full state, the instruction and pre-execution data write stored in the instruction write buffer Means for storing the data stored in the data buffer in the memory, The gist.

【0007】[0007]

【作用】上述の如く構成すれば、CPUの状態を示すス
テータスレジスタと命令書込み用バッファおよび実行前
データ書込み用バッファのバッファフル用フラグとを監
視する。前記CPUの状態を示すステータスレジスタの
ビットが変化した場合または前記命令書込み用バッファ
および実行前データ書込み用バッファのいずれかがバッ
ファフル状態の場合、当該命令書込み用バッファに記憶
されている命令および実行前データ書込み用バッファに
記憶されているデータを前記メモリに記憶するので、処
理の継続が不可能な障害の原因の解析を容易にできる。
With the above arrangement, the status register indicating the state of the CPU and the buffer full flag of the instruction write buffer and the pre-execution data write buffer are monitored. When the bit of the status register indicating the state of the CPU is changed or when either the instruction writing buffer or the pre-execution data writing buffer is in the buffer full state, the instruction and execution stored in the instruction writing buffer are executed. Since the data stored in the previous data writing buffer is stored in the memory, it is possible to easily analyze the cause of the failure in which the processing cannot be continued.

【0008】[0008]

【実施例】以下、本発明の一実施例を図面に基づいて説
明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings.

【0009】図1は本発明のCPU実行命令解析方式に
係る一実施例を示すブロック図である。
FIG. 1 is a block diagram showing an embodiment of a CPU execution instruction analysis system of the present invention.

【0010】同図において、CPU1は、実行命令書込
み部3および実行前データ書込み部5を有して、コンピ
ュータシステムの入出力装置、演算装置および記憶装置
に操作指令である命令を実行する。上記実行命令書込み
部3は、CPU1がフェッチした命令のうち、実行され
ることが確定した命令を後述する命令書込み用バッファ
7の所定アドレスに書込む。実行前データ書込み部5
は、CPU1が命令を実行する際、後述する命令書込み
用バッファ7に記憶される命令が後述する汎用レジスタ
17への書込みを実行する命令であるとき、既に、汎用
レジスタ17に記憶されているデータを後述する実行前
データ書込み用バッファ9の所定アドレスに書込む。
In FIG. 1, the CPU 1 has an execution instruction writing unit 3 and a pre-execution data writing unit 5 to execute an instruction which is an operation command to an input / output device, a computing device and a storage device of a computer system. The execution instruction writing unit 3 writes, among the instructions fetched by the CPU 1, an instruction which is determined to be executed, to a predetermined address of an instruction writing buffer 7 described later. Pre-execution data writing unit 5
When the CPU 1 executes an instruction, the data already stored in the general-purpose register 17 when the instruction stored in the instruction-writing buffer 7 to be described later is an instruction to execute writing to the general-purpose register 17 to be described later. Is written in a predetermined address of the pre-execution data write buffer 9 described later.

【0011】命令書込み用バッファ7は、実行命令書込
み部3によりCPU1が実行する命令を所定アドレスに
書込む。実行前データ書込み用バッファ9は、実行前デ
ータ書込み部5によりCPU1の汎用レジスタ17への
書込みを実行する命令のとき、既に、当該汎用レジスタ
17に記憶されているデータが所定アドレスに書込まれ
る。
The instruction writing buffer 7 writes an instruction to be executed by the CPU 1 by the execution instruction writing unit 3 at a predetermined address. In the pre-execution data writing buffer 9, when the pre-execution data writing unit 5 issues an instruction to execute writing to the general-purpose register 17 of the CPU 1, the data already stored in the general-purpose register 17 is written to a predetermined address. ..

【0012】なお、上記命令書込み用バッファ7および
実行前データ書込み用バッファ9は、バッファフル用フ
ラグを備えており、バッファがフル状態になるとバッフ
ァフル用フラグが、例えば「1」になる。
The instruction writing buffer 7 and the pre-execution data writing buffer 9 are provided with a buffer full flag. When the buffer becomes full, the buffer full flag becomes "1", for example.

【0013】データ保存部11は、命令書込み用バッフ
ァ7および実行前データ書込み用バッファ9のバッファ
フル用フラグと後述するCPU1に備えられているステ
ータスレジスタ23とを監視する。上記バッファフル用
フラグがバッファフル状態を示す「1」またはステータ
スレジスタ23の特定ビットが変化するとデータ保存部
11は、命令書込み用バッファ7の所定アドレスに書込
まれているCPU1により実行される命令および実行前
データ書込み用バッファ9の所定アドレスに書込まれて
いる既に、汎用レジスタ17に記憶されているデータを
磁気ディスク13の所定のセクタに記憶する。
The data storage unit 11 monitors a buffer full flag of the instruction writing buffer 7 and the pre-execution data writing buffer 9 and a status register 23 provided in the CPU 1 which will be described later. When the buffer full flag is "1" indicating the buffer full state or the specific bit of the status register 23 is changed, the data storage unit 11 causes the instruction executed by the CPU 1 written in a predetermined address of the instruction write buffer 7 to be executed. And the data already written in the predetermined address of the pre-execution data writing buffer 9 and already stored in the general-purpose register 17 is stored in the predetermined sector of the magnetic disk 13.

【0014】磁気ディスク13は、データ保存部11に
よりCPU1により実行される命令および既に汎用レジ
スタ17に記憶されているデータである当該命令の解析
に必要なデータを所定のセクタに記憶される。磁気ディ
スク13の所定のセクタレコードの示すアドレスに記憶
される命令およびデータにより、処理の継続が不可能な
トラップ等の原因究明が容易になる。
The magnetic disk 13 stores, in a predetermined sector, an instruction executed by the CPU 1 by the data storage unit 11 and data which is data already stored in the general-purpose register 17 and which is necessary to analyze the instruction. The instruction and data stored at the address indicated by the predetermined sector record on the magnetic disk 13 facilitates the investigation of the cause of a trap or the like which makes it impossible to continue processing.

【0015】上記CPU1の制御を図2のブロック図を
用いて説明する。
The control of the CPU 1 will be described with reference to the block diagram of FIG.

【0016】CPU1は、前述した実行命令書込み部3
および実行前データ書込み部5の他にデコーダ15,汎
用レジスタ17,フェッチャ19およびステータスレジ
スタ23を備えている。
The CPU 1 has the execution instruction writing unit 3 described above.
In addition to the pre-execution data writing unit 5, a decoder 15, a general-purpose register 17, a fetcher 19 and a status register 23 are provided.

【0017】上記デコーダ15は、実行命令書込み部3
にCPU1により実行される命令(コード)を出力する
とともに、実行前データ書込み部5にディスティネーシ
ョンレジスタの選択信号を出力する。
The decoder 15 includes an execution instruction writing unit 3
The CPU 1 outputs an instruction (code) to be executed by the CPU 1 and outputs a destination register selection signal to the pre-execution data writing unit 5.

【0018】汎用レジスタ17は、例えば、32個のレ
ジスタGRO〜GR31を有してCPU1が、既に当該
レジスタに書込まれたデータを記憶するものであり、当
該データがCPUにより実行された命令を解析するため
に必要なデータになる。
The general-purpose register 17 has, for example, 32 registers GRO to GR31 and is used by the CPU 1 to store the data already written in the register. The general data register 17 stores the instruction executed by the CPU. It becomes the data necessary for analysis.

【0019】上記デコーダ15から命令が入力されると
実行命令書込み部3は、入力された命令を命令書込み用
バッファ7の所定アドレスに記憶する。実行前データ書
込み部5は、デコーダ15から入力されるディスティネ
ーションレジスタの選択信号を読み当該選択信号が有効
の場合、選択信号を用いて汎用レジスタ17のレジスタ
を選択する。選択後、実行前データ書込み部5は、選択
したレジスタのデータを読込んで実行前データ書込み用
バッファ9の所定アドレスに書込む。なお、上記選択信
号が有効でない場合にはハイインピーダンスの状態であ
る。
When an instruction is input from the decoder 15, the execution instruction writing section 3 stores the input instruction at a predetermined address of the instruction writing buffer 7. The pre-execution data writing unit 5 reads the selection signal of the destination register input from the decoder 15, and when the selection signal is valid, selects the register of the general-purpose register 17 using the selection signal. After the selection, the pre-execution data writing unit 5 reads the data in the selected register and writes the data in a predetermined address of the pre-execution data writing buffer 9. When the selection signal is not valid, it is in a high impedance state.

【0020】フェッチャ19は、デコーダ15から命令
を取込んで、バス21に出力するものである。
The fetcher 19 fetches an instruction from the decoder 15 and outputs it to the bus 21.

【0021】ステータスレジスタ23は、CPU1の状
態を示す特定のビットを有して、CPU1の状態が変化
すると当該特定のビットの値が例えば、「1」に変化す
る。
The status register 23 has a specific bit indicating the state of the CPU 1, and when the state of the CPU 1 changes, the value of the specific bit changes to, for example, "1".

【0022】次に本実施例の作用を図3のフローチャー
トを用いて説明する。
Next, the operation of this embodiment will be described with reference to the flowchart of FIG.

【0023】まず、システムの起動後、実行命令書込み
部3は、デコーダ15からCPU1により実行される命
令(コード)が入力されると命令書込み用バッファ7の
所定アドレスに記憶する。また、実行前データ書込み部
5は、デコーダ15から出力されるディスティネーショ
ンレジスタの選択信号を読込み、当該選択信号が有効な
場合、選択信号の示す汎用レジスタ17のレジスタに記
憶されているデータを取込み、実行前データ書込み用バ
ッファ9の所定アドレスに書込む。一方、上記選択信号
が有効でなければ待ち状態になる(ステップ100〜1
60)。
First, after the system is started up, when the instruction (code) to be executed by the CPU 1 is input from the decoder 15 to the execution instruction writing unit 3, the execution instruction writing unit 3 stores it in a predetermined address of the instruction writing buffer 7. Further, the pre-execution data writing unit 5 reads the selection signal of the destination register output from the decoder 15, and when the selection signal is valid, takes in the data stored in the register of the general-purpose register 17 indicated by the selection signal. , Write to a predetermined address of the pre-execution data write buffer 9. On the other hand, if the selection signal is not valid, the system enters a waiting state (steps 100-1).
60).

【0024】書込み後、データ保存部11は、ステータ
スレジスタ23の特定のビットと命令書込み用バッファ
7および実行前データ書込み用バッファ9のバッファフ
ル用フラグとを監視する。上記特定のビットが変化また
はバッファフル用フラグがバッファのフル状態を示す
「1」のときデータ保存部11は、命令書込み用バッフ
ァ7の所定アドレスに記憶されているCPU1により実
行される命令および実行前データ書込み用バッファ9の
所定アドレスに書込まれているCPU1の命令の解析に
必要なデータを磁気ディスク13に記憶する(ステップ
170〜190)。
After writing, the data storage unit 11 monitors specific bits of the status register 23 and the buffer full flag of the instruction writing buffer 7 and the pre-execution data writing buffer 9. When the specific bit is changed or the buffer full flag is "1" indicating the buffer full state, the data storage unit 11 executes the instruction executed by the CPU 1 stored in the instruction writing buffer 7 at a predetermined address and the execution. Data necessary for analysis of the instruction of the CPU 1 written in a predetermined address of the previous data writing buffer 9 is stored in the magnetic disk 13 (steps 170 to 190).

【0025】上記磁気ディスク13にCPU1により実
行される命令および当該命令の解釈に必要なデータが記
憶されるので、CPU1により実行される命令およびデ
ータを解析することにより、処理の実行が不可能なトラ
ップ等の原因を確実に解析できる。
Since the command executed by the CPU 1 and the data necessary for interpreting the command are stored in the magnetic disk 13, it is impossible to execute the process by analyzing the command and the data executed by the CPU 1. The cause of traps, etc. can be reliably analyzed.

【0026】本実施例は、例えば、2つのCPUのう
ち、1のCPUで異常が生じても、他方のCPUにより
OS(オペレーティングシステム)の制御を継続するフ
ォールトトレラント機能を重視するコンピュータシステ
ム等の有するCPUにおいてトラップ等の障害の解析を
容易にする。
In the present embodiment, for example, a computer system which emphasizes a fault tolerant function of continuing the control of the OS (operating system) by the other CPU even if one of the two CPUs has an abnormality occurs. It facilitates analysis of a failure such as a trap in the CPU included therein.

【0027】[0027]

【発明の効果】以上説明したように、本発明では、CP
Uにより実行される命令および当該命令の解析に必要な
データをメモリに記憶するので、CPUにより実行され
た命令および当該命令の実行を解析するデータをメモリ
に記憶することにより、処理の継続が不可能な障害の原
因の解析を容易にして、システムの信頼性の向上を実現
できる。
As described above, according to the present invention, CP
Since the instruction executed by U and the data necessary for analysis of the instruction are stored in the memory, the continuation of the process cannot be continued by storing the instruction executed by the CPU and the data analyzing the execution of the instruction in the memory. The analysis of possible causes of failure can be facilitated and the system reliability can be improved.

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

【図1】本発明のCPU実行命令解析方式FIG. 1 is a CPU execution instruction analysis method of the present invention.

【図2】CPUの制御を示すブロック図である。FIG. 2 is a block diagram showing control of a CPU.

【図3】本発明の動作を示すフローチャートである。FIG. 3 is a flowchart showing the operation of the present invention.

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

1 CPU 3 実行命令書込み部 5 実行前データ書込み部 7 命令書込み用バッファ 9 実行前データ書込み用バッファ 11 データ保存部 13 磁気ディスク 15 デコーダ 17 汎用レジスタ 23 ステータスレジスタ 1 CPU 3 Execution command writing unit 5 Pre-execution data writing unit 7 Command writing buffer 9 Pre-execution data writing buffer 11 Data storage unit 13 Magnetic disk 15 Decoder 17 General-purpose register 23 Status register

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 命令を実行するCPUと、 このCPUにより実行される命令を記憶する命令書込み
用バッファと、 前記CPUにより実行される命令の実行前のデータを記
憶する実行前データ書込み用バッファと、 この実行前データ書込み用バッファに記憶されているデ
ータおよび前記命令書込み用バッファに記憶されている
命令を記憶するメモリと、 前記CPUの状態を示すステータスレジスタのビットが
変化した場合または前記命令書込み用バッファおよび実
行前データ書込み用バッファのいずれかがバッファフル
状態の場合、当該命令書込み用バッファに記憶されてい
る命令および実行前データ書込み用バッファに記憶され
ているデータを前記メモリに記憶する手段と、 を備えたことを特徴とするCPU実行命令解析方式。
1. A CPU for executing an instruction, an instruction writing buffer for storing an instruction executed by the CPU, and a pre-execution data writing buffer for storing data before execution of the instruction executed by the CPU. A memory for storing the data stored in the pre-execution data write buffer and the instruction stored in the instruction write buffer, and a case where a bit of a status register indicating the state of the CPU has changed or the instruction write Means for storing the instruction stored in the instruction write buffer and the data stored in the pre-execution data write buffer in the memory when either the write buffer or the pre-execution data write buffer is in a buffer full state And a CPU execution instruction analysis method.
JP3226809A 1991-09-06 1991-09-06 Cpu executing instruction analysis system Pending JPH0566940A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3226809A JPH0566940A (en) 1991-09-06 1991-09-06 Cpu executing instruction analysis system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3226809A JPH0566940A (en) 1991-09-06 1991-09-06 Cpu executing instruction analysis system

Publications (1)

Publication Number Publication Date
JPH0566940A true JPH0566940A (en) 1993-03-19

Family

ID=16850946

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3226809A Pending JPH0566940A (en) 1991-09-06 1991-09-06 Cpu executing instruction analysis system

Country Status (1)

Country Link
JP (1) JPH0566940A (en)

Similar Documents

Publication Publication Date Title
US5751942A (en) Trace event detection during trace enable transitions
JP2539199B2 (en) Digital processor controller
US7836430B2 (en) Reversing execution of instructions in a debugger
US4794522A (en) Method for detecting modified object code in an emulator
US9201749B2 (en) Diagnosing code using single step execution
JP2001519956A (en) A memory controller that detects the failure of thinking of the addressed component
JPH0682320B2 (en) Data processing device
JP3808314B2 (en) Processing system and method for indicating instruction attributes and status information for long latency instructions
JP2007094986A (en) Simulation apparatus and simulation method
US6243806B1 (en) Program execution method and apparatus employing data flags for branching determination
US5421026A (en) Data processor for processing instruction after conditional branch instruction at high speed
JPH0566940A (en) Cpu executing instruction analysis system
JP2001306334A (en) Emulation device
JPH1049373A (en) Method and device for operating multiplex and highly accurate event for pipeline digital processor
US6954848B2 (en) Marking in history table instructions slowable/delayable for subsequent executions when result is not used immediately
JP3349911B2 (en) Microprocessor and development support device thereof
JP2000029690A (en) Method and device for data processing
JP2793386B2 (en) Computer error information storage device for computer
JP2793396B2 (en) Computer status holding device
JP2666737B2 (en) Microprocessor with built-in trace memory and trace method
US6289439B1 (en) Method, device and microprocessor for performing an XOR clear without executing an XOR instruction
JP2856703B2 (en) Processor
JPS5875256A (en) Monitoring system for execution instruction processing state
JPS61123942A (en) Debug device for microprocessor
JPH0287237A (en) Execute instruction control system