JPS61153737A - Data processor - Google Patents

Data processor

Info

Publication number
JPS61153737A
JPS61153737A JP59273559A JP27355984A JPS61153737A JP S61153737 A JPS61153737 A JP S61153737A JP 59273559 A JP59273559 A JP 59273559A JP 27355984 A JP27355984 A JP 27355984A JP S61153737 A JPS61153737 A JP S61153737A
Authority
JP
Japan
Prior art keywords
memory
branch
address
trace memory
microinstruction
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
JP59273559A
Other languages
Japanese (ja)
Inventor
Takashi Nishizawa
隆 西澤
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 JP59273559A priority Critical patent/JPS61153737A/en
Publication of JPS61153737A publication Critical patent/JPS61153737A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/264Microinstruction selection based on results of processing

Abstract

PURPOSE:To evaluate completely the execution of a micro-instruction by inputting an address data and a signal for indicating a branch direction to a specified trace memory after initializing, and displaying them effectively at a prescribed bit position in accordance with a non-condition branch and a condition branch. CONSTITUTION:The micro-instruction indicated by an address register 2 which is brought to an updating control by a sequence controlling circuit 4 is read out of a control storage 1 and executed by an operating circuit 3, the width of the number of bits of a trace memory 5 is equalized to the maximum number of branch directions which is held by a condition branch function of the circuit 4, and its capacity becomes the capacity of the same number of words as that of the storage 1. Also, '0' clear can be executed to all the words of the memory 5 by a trace memory write controlling circuit 6, and also '1' can be written to the bit corresponding to the signal for indicating the branch direction from the circuit 4. In this state, when the micro-instruction is a non-condition branch, '1' is written to the bit '0' of the memory 5, and when said instruction is a condition branch, '1' is written to the prescribed bit position for indicating the branch direction of the memory 5.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、データ処理装置に於げるマイクロプログラム
制御装置のデータトレース方式に関するものである。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a data tracing method for a microprogram control device in a data processing device.

〔従来の技術〕[Conventional technology]

従来、マイクロプログラム制御装置において。 Conventionally, in a microprogram control device.

マイクロ命令が運転状態でどの範囲まで実際に使われて
いるか、あるいは評価用のテストプログラムを実行した
場合、全マイクロ命令が実際に実行されているか否かを
知るために1次の様な方式が採用されていた。
In order to know to what extent microinstructions are actually used in the operating state, or whether all microinstructions are actually executed when running an evaluation test program, a first-order method is used. He had been hired.

すなわち、マイクロ命令を蓄える制御記憶に。That is, in the control memory that stores microinstructions.

各ワード毎にそのアドレスで1度でもアクセスされたか
否を示す手段を設け、評価!ログラムを実行した後、制
御記憶の各ワードを調査し、アクセスされないで残った
アドレスのマイクロ命令が未実行のまま残ったことを知
るものである。
Provide a means for each word to indicate whether or not that address has been accessed even once, and evaluate! After executing the program, each word of control memory is examined to find that microinstructions at addresses that were not accessed remained unexecuted.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

しかしながら、この方式では、アクセスされたマイクロ
命令に関して評価が終ったとは言えない。
However, with this method, it cannot be said that the evaluation of the accessed microinstruction has been completed.

例えば、第4図に示す様なマイクロ命令シーケンスを考
えた場合、A→B−+CおよびD−+E−)Fの・2ヌ
を通れば、AからFまでのマイクロ命令は全て実行され
たことになる。しかし、実際にはA→E−+Cあるいは
A −+ BE −+ p’またはD 4 E −+ 
Cといった・ぐスが存在し、これらのパスを通る場合も
評価されなければならない。従って、従来の方式では評
価が不十分であった。
For example, if we consider a microinstruction sequence as shown in Figure 4, if we pass through A→B-+C and D-+E-)F, then all microinstructions from A to F have been executed. become. However, in reality A→E−+C or A −+ BE −+ p′ or D 4 E −+
There are classes such as C, and these paths must also be evaluated. Therefore, the evaluation using the conventional method was insufficient.

pl下余日 〔問題点を解決するだめの手段〕 本発明によれば、マイクロ命令を蓄える制御記憶と、該
制御記憶にアドレスを与えるアドレスレジスタと、該ア
ドレスレジスタにより指示された前記制御記憶の記憶位
置から読出されたマイクロ命令により制御される演算部
と、前記アドレスレジスタのアドレス更新を制御するシ
ーケンス制御部とから成るデータ処理装置において、前
記シーケンス制御部が有する条件分岐機能の持つ最大の
分岐方向数に等しいビット数の巾を持ち、かつ前記制御
記憶と同一のワード数の容量を持つトレースメモリと、
該トレースメモリの全ワードの0クリア手段と、前記ト
レースメモリの読出しおよび表示手段と、前記トレース
メモリに対し、あらかじめ全ワードを前記0297手段
でOクリアした後、前記アドレスレジスタから与えられ
るアドレスデータと前記シーケンス制御部から与えられ
る分岐方向を示す信号を入力し、該アドレスデータに対
応するマイクロ命令が無条件分岐の−ときはあらかじめ
定められたビット位置にのみ°1”を書込み2条件分岐
のときは該マイクロ命令実行時の条 ′件により決定さ
れた分岐方向を示す信号により指示されたビット位置に
のみ′1″を書込む手段とを設けたことを特徴とするデ
ータ処理装置が得られる。
[Means to Solve the Problem] According to the present invention, a control memory for storing microinstructions, an address register for giving an address to the control memory, and a memory for controlling the control memory specified by the address register are provided. In a data processing device consisting of an arithmetic unit controlled by a microinstruction read from a storage location and a sequence control unit that controls address updating of the address register, the maximum branch of the conditional branch function of the sequence control unit is a trace memory having a width of a number of bits equal to the number of directions and a capacity of the same number of words as the control memory;
means for clearing all words of the trace memory to 0; means for reading and displaying the trace memory; and address data given from the address register after all words of the trace memory are cleared to zero by the 0297 means in advance. A signal indicating the branch direction given from the sequence control unit is input, and when the microinstruction corresponding to the address data is an unconditional branch, °1" is written only to a predetermined bit position, and when it is a 2-conditional branch. There is obtained a data processing device characterized in that it is provided with means for writing ``1'' only in a bit position designated by a signal indicating a branch direction determined by the conditions at the time of execution of the microinstruction.

〔作用〕[Effect]

このような構成によると、マイクロ命令の有する条件分
岐をも考慮に入れて、トレースメモリに分岐方向を示す
情報を蓄えるので、より完全なマイクロ命令実行の評価
を行うことができる。
According to such a configuration, information indicating the branch direction is stored in the trace memory, taking into account the conditional branch of the microinstruction, so that a more complete evaluation of the execution of the microinstruction can be performed.

〔実施例〕〔Example〕

次に2本発明の実施例について2図面を参照して詳細に
説明する。
Next, two embodiments of the present invention will be described in detail with reference to two drawings.

第1図は本発明による情報処理装置の一実施例の構成を
示したブロック図である。図において。
FIG. 1 is a block diagram showing the configuration of an embodiment of an information processing apparatus according to the present invention. In fig.

1はマイクロ命令を蓄える制御記憶、2は制御記憶1の
実行すべきマイクロ命令アドレスを示すアドレスレジス
タである。3は制御記憶1より読出されたマイクロ命令
により制御され目的とするデータ処理を行う演算回路、
4はアドレスレジスタ2に対しマイクロ命令の実行シー
ケンスを制御するため、アドレス値の更新制御を行うシ
ーケンス制御回路である。5はシーケンス制御回路4の
有する条件分岐機能の持つ最大の分岐方向数に等しいビ
ット数の巾を持ち制御記憶1と同一のワード数の容量を
持つトレースメモリ、6はトレースメモリ5の全ワード
に対しOクリアする機能およびシーケンス制御回路4か
ら送られる分岐方向を示す信号に対応するビットに“1
”を書込む機能を持つトレースメモリ書込制御回路、7
はトレースメモリ5の各アドレスの内容を読出し表示す
る機能を持つ読出し表示回路である。まだ、8はアドレ
スレジスタ2.トレースメモリ書込み制御回路6および
読出し表示回路7から送られるトレースメモリ5のアド
レスデータのうちいづれか1つを選択スるアドレスセレ
クタである。
1 is a control memory for storing microinstructions; 2 is an address register indicating the address of the microinstruction to be executed in the control memory 1; 3 is an arithmetic circuit that is controlled by microinstructions read from the control memory 1 and performs targeted data processing;
Reference numeral 4 denotes a sequence control circuit that controls updating of address values in order to control the execution sequence of microinstructions for the address register 2. 5 is a trace memory having a width of bits equal to the maximum number of branch directions of the conditional branch function of the sequence control circuit 4 and a capacity of the same number of words as the control memory 1; 6 is a trace memory for all words of the trace memory 5; The bit corresponding to the function to clear O and the signal indicating the branch direction sent from the sequence control circuit 4 is set to “1”.
Trace memory write control circuit with a function to write “
is a read/display circuit having a function of reading and displaying the contents of each address of the trace memory 5. 8 is still address register 2. This is an address selector that selects one of the address data of the trace memory 5 sent from the trace memory write control circuit 6 and the read display circuit 7.

次に本発明の実施例の動作について順を追って説明する
。但し、以下の説明において、シーケンス制御回路4は
、最大4方向の条件分岐機能を持つものとする。従って
、トレースメモリ5のビツト巾は4ビツトとなり、順に
ビット0,1,2゜3と呼ぶことにする。
Next, the operation of the embodiment of the present invention will be explained in order. However, in the following description, it is assumed that the sequence control circuit 4 has a conditional branching function in a maximum of four directions. Therefore, the bit width of the trace memory 5 is 4 bits, which will be referred to as bits 0, 1, 2, and 3 in that order.

現在実行中のマイクロ命令が無条件分岐の場合は次の様
になる。シーケンス制御回路4はパス11を介してアド
レスレジスタ2に次のアドレスを格納する指示を出すと
共ニ、ノクス12全通して無条件分岐を示す信号をトレ
ースメモリ書込み制御回路6に送る。トレースメモリ書
込み制御部6では。
If the microinstruction currently being executed is an unconditional branch, the process will be as follows. When the sequence control circuit 4 issues an instruction to store the next address in the address register 2 via a path 11, it also sends a signal indicating an unconditional branch to the trace memory write control circuit 6 through all nodes 12. In the trace memory write control section 6.

このとき、ノクス10およびアドレスセレクタ8および
パス24全通して送られたアドレスデータで指示される
トレースメモリ5の記憶位置のビットOK”l”を書込
むため、パス15および16を介して書込み指示および
1”のデータを送る。
At this time, in order to write the bit OK "l" in the storage location of the trace memory 5 specified by the address data sent through the node 10, the address selector 8, and the path 24, a write instruction is sent via the paths 15 and 16. and send 1” data.

次に現在実行中のマイクロ命令が条件分岐の場合を説明
する。条件分岐が2方向の場合は条件により2種類の分
岐方向を示す信号が、4方向の場合は条件により4種類
の分岐方向を示す信号が。
Next, the case where the microinstruction currently being executed is a conditional branch will be explained. If the conditional branch is in two directions, there will be signals indicating two types of branching directions depending on the conditions, and if there are four directions, there will be signals indicating four types of branching directions depending on the conditions.

パス12を介してトレースメモリ書込み制御回路6に送
られる。ここで、2方向分岐の場合は、それぞれビット
O,ビット1のいづれか1つが条件により選択され、パ
ス15および16あるいは/Jス17および18を介し
て、書込み指示および°1”のデータが送られ、トレー
スメモリ5の該当するアドレスのビット位置に書込まれ
る。まだ。
It is sent to the trace memory write control circuit 6 via path 12. In the case of two-way branching, either bit O or bit 1 is selected depending on the condition, and the write instruction and data of °1'' are sent via paths 15 and 16 or /J paths 17 and 18. and written to the bit position of the corresponding address in trace memory 5. Not yet.

4方向分岐の場合は、ピッ)0,1.−2.3のいづれ
か1つが条件により選択され、同様に・ぐス15〜パス
22の中から1組の・ぐスを介して、書込み指示および
1″のデータが送られ、トレースメモリ5の該当するア
ドレスのビット位置に書込まれる。
In the case of 4-way branching, beep) 0, 1. -2.3 is selected depending on the condition, and similarly, a write instruction and data 1'' are sent through a set of paths 15 to 22, and the trace memory 5 is Written to the bit position of the corresponding address.

この様な手順で、順次マイクロ命令が実行される毎にト
レースメモリ5の該当するビット位置に1”のデータが
書込まれてゆく。
With this procedure, data of 1'' is written into the corresponding bit position of the trace memory 5 every time the microinstructions are executed sequentially.

次に、具体的な例として、第2図の様なフローを考え、
そのトレース結果が第3図の如くなったとした場合を説
明する。これらの図において、 a。
Next, as a concrete example, consider the flow shown in Figure 2,
A case where the trace result is as shown in FIG. 3 will be explained. In these figures, a.

〜a7はアドレスを示し、第3図はトレースメモリ5の
内容である。
~a7 indicates an address, and FIG. 3 shows the contents of the trace memory 5.

ビット0の列を見ると、アドレスa。−a7は全て′1
″が書込まれており、従って制御記憶1のアドレスao
〜a7で指示される記憶位置のマイクロ命令は全て実行
されていることが解る。しかし。
Looking at the bit 0 column, address a. -a7 are all '1
” has been written, so the address ao of control memory 1 is
It can be seen that all microinstructions at the storage location indicated by ~a7 are executed. but.

アドレスa1の行を見ると、ビット2に当る所が′0”
のままである。これは、アドレスalのマイクロ命令実
行時に、4方向分岐の内、アドレスa1からアドレスa
4へ分岐する様な条件が無く、そのパスを通らなかった
ことを示している。このことからこの例の場合+ ao
−+a1−+ a4→a7  というパスを実行する場
合の動作確認がもれていることが解る。
Looking at the line of address a1, bit 2 is '0'
It remains as it is. This is when the microinstruction at address al is executed, from address a1 to address a among four-way branches.
This indicates that there is no condition that would cause the path to branch to 4, and that path was not taken. Therefore, in this example + ao
It can be seen that the operation confirmation when executing the path -+a1-+a4→a7 has been omitted.

この様に、トレースメモリ5の内容を調査することによ
り、評価されていないパスを検出することが出来る。
In this way, by examining the contents of the trace memory 5, unevaluated paths can be detected.

なお2本実施例においては、トレースメモリ5の内容は
読出し表示回路7に表示する様になっているが、マイク
ロプログラムのファイルを処理することにより、トレー
スメモリの内容の期待値を算出することは容易であるの
で、読出し表示回路7の代りに上記期待値とトレースメ
モリの内容とを比較する比較手段を設けて、自動的に比
較チェックするようにしても良い。
2. In this embodiment, the contents of the trace memory 5 are displayed on the readout display circuit 7, but it is not possible to calculate the expected value of the contents of the trace memory by processing the microprogram file. Since it is easy, a comparison means for comparing the expected value and the contents of the trace memory may be provided in place of the readout display circuit 7 to automatically perform the comparison check.

〔発明の効果〕〔Effect of the invention〕

本発明は2以上説明したように、マイクロ命令の分岐方
向を示す情報を収集することにより、より完全なマイク
ロ命令実行の評価を行うことができるという効果がある
As described above, the present invention has the advantage that by collecting information indicating the branch direction of microinstructions, microinstruction execution can be evaluated more completely.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明によるデータ処理装置の一実施例の構成
を示したブロック図、第2図は本発明を説明するための
具体的なフロー例を示した図、第3図は第2図のフロー
に対するトレースメモリの内容の一例を示した図、第4
図は従来の欠点を説明するだめのマイクロ命令シーケン
スを示した図である。 1・・・制御記憶、2・・・アドレスレジスタ、3・・
・演算回路、4・・・シーケンス制御回路、5・・・ト
レースメモリ、6・・・トレースメモリ書込み制御回路
。 7・・・読出し表示回路、8・・・アドレスセレクタ。 第3図
FIG. 1 is a block diagram showing the configuration of an embodiment of a data processing device according to the present invention, FIG. 2 is a diagram showing a specific flow example for explaining the present invention, and FIG. Figure 4 shows an example of the contents of the trace memory for the flow of
The figure is a diagram showing a microinstruction sequence to explain the conventional drawbacks. 1...Control memory, 2...Address register, 3...
- Arithmetic circuit, 4... Sequence control circuit, 5... Trace memory, 6... Trace memory write control circuit. 7...Readout display circuit, 8...Address selector. Figure 3

Claims (1)

【特許請求の範囲】[Claims] 1、マイクロ命令を蓄える制御記憶と、該制御記憶にア
ドレスを与えるアドレスレジスタと、該アドレスレジス
タにより指示された前記制御記憶の記憶位置から読出さ
れたマイクロ命令により制御される演算部と、前記アド
レスレジスタのアドレス更新を制御するシーケンス制御
部とから成るデータ処理装置において、前記シーケンス
制御部が有する条件分岐機能の持つ最大の分岐方向数に
等しいビット数の巾を持ち、かつ前記制御記憶と同一の
ワード数の容量を持つトレースメモリと、該トレースメ
モリの初期設定手段と、前記トレースメモリの内容を読
出し表示する手段と、前記トレースメモリに対し、前記
初期設定手段であらかじめ初期設定を行った後、前記ア
ドレスレジスタから与えられるアドレスデータと前記シ
ーケンス制御部から与えられる分岐方向を示す信号を入
力し、該アドレスデータに対応するマイクロ命令が無条
件分岐のときはあらかじめ定められたビット位置に有効
表示を行い、条件分岐のときは該マイクロ命令実行時の
条件により決定された分岐方向を示す信号により指示さ
れたビット位置に有効表示を行う手段とを設けたことを
特徴とするデータ処理装置。
1. A control memory that stores microinstructions, an address register that provides an address to the control memory, an arithmetic unit that is controlled by the microinstruction that is read from a storage location in the control memory specified by the address register, and the address In a data processing device comprising a sequence control unit that controls address updating of registers, the sequence control unit has a width of a number of bits equal to the maximum number of branch directions of a conditional branch function possessed by the sequence control unit, and the same number of bits as the control memory. A trace memory having a capacity of the number of words, an initial setting means for the trace memory, a means for reading and displaying the contents of the trace memory, and after initializing the trace memory in advance by the initial setting means, Address data given from the address register and a signal indicating a branch direction given from the sequence control section are input, and when the microinstruction corresponding to the address data is an unconditional branch, a valid indication is displayed in a predetermined bit position. 1. A data processing device comprising means for executing a conditional branch and displaying validity at a bit position indicated by a signal indicating a branch direction determined by the conditions at the time of execution of the microinstruction.
JP59273559A 1984-12-27 1984-12-27 Data processor Pending JPS61153737A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59273559A JPS61153737A (en) 1984-12-27 1984-12-27 Data processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59273559A JPS61153737A (en) 1984-12-27 1984-12-27 Data processor

Publications (1)

Publication Number Publication Date
JPS61153737A true JPS61153737A (en) 1986-07-12

Family

ID=17529493

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59273559A Pending JPS61153737A (en) 1984-12-27 1984-12-27 Data processor

Country Status (1)

Country Link
JP (1) JPS61153737A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01274251A (en) * 1988-04-26 1989-11-02 Nec Corp Activity history memory
JPH04215145A (en) * 1990-12-13 1992-08-05 Koufu Nippon Denki Kk Software coverage measuring instrument

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01274251A (en) * 1988-04-26 1989-11-02 Nec Corp Activity history memory
JPH04215145A (en) * 1990-12-13 1992-08-05 Koufu Nippon Denki Kk Software coverage measuring instrument

Similar Documents

Publication Publication Date Title
JPS61153737A (en) Data processor
JPS60159951A (en) Tracing system in information processing device
JPS6177943A (en) Program pass address tracing device
JP3123758B2 (en) Software coverage measurement device
JPS5829056A (en) Control storage device
JPS6198451A (en) Test device
JPH03119436A (en) Microinstruction address tracer
JPH05158735A (en) Microprogram debugging system
JPS6042968B2 (en) information processing equipment
JPH01274251A (en) Activity history memory
JPH01175646A (en) Storage device with history function
JPH01274252A (en) Activity history memory
JPH02155052A (en) Tracing device
JP3428253B2 (en) Sequencer
JPH02143337A (en) Microprogram controller for data processor
JPS6129022B2 (en)
JPH0128965B2 (en)
JPS6198452A (en) Test device
JPS63228237A (en) Program debugging system
JPS6222153A (en) Method and apparatus for analyzing operation of microprocessor
JPS61246841A (en) Information processor
JPS6310453B2 (en)
JPS6198453A (en) Test device
JPS58186856A (en) Program execution history collection system
JPH0272440A (en) Observation system for program executing step