JPS6152503B2 - - Google Patents
Info
- Publication number
- JPS6152503B2 JPS6152503B2 JP55134283A JP13428380A JPS6152503B2 JP S6152503 B2 JPS6152503 B2 JP S6152503B2 JP 55134283 A JP55134283 A JP 55134283A JP 13428380 A JP13428380 A JP 13428380A JP S6152503 B2 JPS6152503 B2 JP S6152503B2
- Authority
- JP
- Japan
- Prior art keywords
- monitor
- register
- instruction
- memory
- microprogram
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Description
【発明の詳細な説明】
本発明は、データ処理装置のマイクロプログラ
ム制御方式に関する。DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a microprogram control method for a data processing device.
従来データ処理装置のモニタを行なうに当たつ
て、各命令の使用頻度、一定時間内での累計実行
時間、特定ルーチンの実行回数、実行時間などを
計る場合、その一つとして、プログラム中にモニ
タ用のプログラムを挿入する方法があつた。しか
し、この方法では、そのモニタ用プログラムがシ
ステムに影響を与える欠点があり、正確な測定が
困難であつた。又、データ処理システムの各種信
号をとり出して、データ処理システムとは独立な
測定装置によつて測定を行なう方法もある。しか
し、この方法では、正確な測定が可能である反
面、各種の条件をとるのが困難な為、システムの
複雑な動きをモニタする事は困難であつた。 Conventionally, when monitoring a data processing device, one way to measure the usage frequency of each instruction, the cumulative execution time within a certain period of time, the number of executions of a specific routine, the execution time, etc. is to monitor during the program. There is now a way to insert a program for . However, this method has the disadvantage that the monitoring program affects the system, making accurate measurement difficult. There is also a method of extracting various signals from the data processing system and measuring them using a measuring device independent of the data processing system. However, although accurate measurements are possible with this method, it is difficult to monitor the complex movements of the system because it is difficult to set various conditions.
本発明は、斯かる欠点を解決すべくなされたも
ので、各命令に対応したメモリにモニタ条件とそ
の時のモニタ動作を、命令により書き込んでおく
だけで、被モニタプログラムの特性を該プログラ
ムの実行になんら影響を与える事なく正確に測定
できるマイクロプログラム制御方式を提供するこ
とを目的とする。 The present invention has been made to solve this drawback, and by simply writing the monitor conditions and the monitor operation at that time into the memory corresponding to each instruction, the characteristics of the monitored program can be determined by the execution of the program. The purpose of the present invention is to provide a microprogram control method that allows accurate measurement without affecting the system in any way.
即ち、本発明は、データ処理装置におけるマイ
クロプログラム制御方式において、各マイクロ命
令の使用状況をモニタするための複数のモニタ回
路と、各命令に対応したマイクロプログラムアド
レス及びモニタ条件を格納する命令コード対応メ
モリとを備え、上記各モニタ回路は、時間、回数
等を計数するモニタレジスタと、該モニタレジス
タに対応してレジスタの動作モードを指定するモ
ードレジスタとを有して成り、且つ、上記命令コ
ード対応メモリは、各マイクロ命令に対応したマ
イクロプログラムの開始アドレスを格納するマツ
プメモリと、該マツプメモリの各一語に対応した
読書き可能なモニタ制御メモリとを有して成り、
上記モニタ制御メモリに命令実行時の条件を設定
しておき、これを命令実行の際、マイクロプログ
ラムをアクセスする時間を使用して読出して条件
を比較し、上記モニタレジスタを命令実行と並行
に更新するよう構成したことを特徴とするマイク
ロプログラム制御方式。 That is, the present invention provides a microprogram control method for a data processing device that includes a plurality of monitor circuits for monitoring the usage status of each microinstruction, and an instruction code corresponding to the microprogram address and monitor condition for each instruction. Each of the monitor circuits includes a monitor register for counting time, number of times, etc., and a mode register for specifying an operation mode of the register corresponding to the monitor register, The corresponding memory includes a map memory for storing a start address of a microprogram corresponding to each microinstruction, and a read/write monitor control memory corresponding to each word of the map memory,
The conditions for executing an instruction are set in the monitor control memory above, and when the instruction is executed, the time used to access the microprogram is read out and the conditions are compared, and the monitor register is updated in parallel with the execution of the instruction. A microprogram control method characterized by being configured to.
以下、本発明を図面に示す実施例に基づいて説
明する。 Hereinafter, the present invention will be explained based on embodiments shown in the drawings.
第1図は本発明マイクロプログラム制御方式の
一実施例の概要を示すブロツク図である。同図に
おいて本発明マイクロプログラム制御方式は、命
令コード対応メモリ1と、主記憶2と、演算制御
回路3と、制御回路4と、マイクロプログラムメ
モリ5と、モニタ回路6とから構成される。そし
て、上記命令コード対応メモリ1には、マツプメ
モリ(マイクロプログラムメモリ)1―1と、モ
ニタ制御メモリ1―2とが設けてあり、又、モニ
タ回路6には、モニタレジスタ6―1とモードレ
ジスタ6―2とが設けてある。 FIG. 1 is a block diagram showing an outline of an embodiment of the microprogram control system of the present invention. In the figure, the microprogram control system of the present invention includes an instruction code corresponding memory 1, a main memory 2, an arithmetic control circuit 3, a control circuit 4, a microprogram memory 5, and a monitor circuit 6. The instruction code corresponding memory 1 is provided with a map memory (microprogram memory) 1-1 and a monitor control memory 1-2, and the monitor circuit 6 is provided with a monitor register 6-1 and a mode register. 6-2 is provided.
演算制御回路3は、主記憶2からマクロ命令を
読み出し、その命令コードに対応したマイクロプ
ログラムメモリ5のアドレスをマツプメモリ
(MAP)1―1によつて求め、対応したマイクロ
プログラムを実行する。これは、従来のマイクロ
プログラム制御方式と同一である。本発明では、
更に、マツプメモリ1―1の各一語に対応して読
み書き可能なモニタ制御メモリ(MCM)1―2
を設けている。このメモリ1―2には、各マクロ
命令実行時の各種モニタ条件を、専用の書き込み
命令により設定しておく。 The arithmetic control circuit 3 reads a macro instruction from the main memory 2, finds the address of the microprogram memory 5 corresponding to the instruction code using the map memory (MAP) 1-1, and executes the corresponding microprogram. This is the same as the conventional microprogram control method. In the present invention,
Furthermore, a monitor control memory (MCM) 1-2 that can be read and written corresponding to each word of the map memory 1-1 is provided.
has been established. In this memory 1-2, various monitoring conditions at the time of execution of each macro instruction are set by a dedicated write instruction.
各マクロ命令実行時には、マイクロプログラム
アドレスを求める為、マツプメモリ1―1に対し
て演算制御回路3によりアクセスがなされるが、
同時に、モニタ制御メモリ1―2にもアクセスさ
れ、制御回路4により条件判定を行なう。条件判
定は、例えば、オペランドの値がモニタ制御メモ
リ1―2内に設定された値と一致したかどうかを
判定する。 When each macro instruction is executed, the map memory 1-1 is accessed by the arithmetic control circuit 3 in order to obtain the microprogram address.
At the same time, the monitor control memory 1-2 is also accessed, and the control circuit 4 makes a condition determination. The condition determination, for example, determines whether the value of the operand matches the value set in the monitor control memory 1-2.
判定が成立すると、モニタ制御メモリ1―2に
記求されたオペレーシヨンにより、モードレジス
タ6―2が設定される。モニタ回路6では、モニ
タレジスタ6―1は、モードレジスタ6―2の値
で決定されるモードにより、演算制御回路3にて
行なわれる通常の命令実行と並行して更新され、
特定命令の実行回数、ある条件から別の条件まで
の時間等を計数する。 If the determination is successful, the mode register 6-2 is set according to the operation recorded in the monitor control memory 1-2. In the monitor circuit 6, the monitor register 6-1 is updated according to the mode determined by the value of the mode register 6-2 in parallel with the normal instruction execution performed by the arithmetic control circuit 3.
Counts the number of executions of a specific command, the time from one condition to another, etc.
以上述べたようにして、命令実行回数、実行時
間等のモニタ条件をモニタ制御メモリ1―2にプ
ログラムしておく事により、設定の為のごくわず
かのオーバヘツドにより、あとのデータ収集は、
実際のプログラムに影響を与えることなく行なう
ことができる。 As described above, by programming monitor conditions such as the number of command executions and execution time in the monitor control memory 1-2, subsequent data collection can be performed with very little overhead for setting.
This can be done without affecting the actual program.
次に、上記実施例を更に詳細に説明する。 Next, the above embodiment will be explained in more detail.
第2図は演算制御回路3の一部とモニタ制御メ
モリ1―2を示す。該回路3は、アキユムレータ
(ACC1)3―2,(ACC2)3―3と、算術論
理演算ユニツト(ALU1)3―4と、命令レジ
スタ(IR)3―5とを有する。そして、バス3
―15〜3―17は、これらを接続する。なお、
ここでは、マクロ命令の実行に必要なプログラム
カウンタやマツプメモリの制御回路については示
していない。 FIG. 2 shows a part of the arithmetic control circuit 3 and the monitor control memory 1-2. The circuit 3 includes an accumulator (ACC1) 3-2, (ACC2) 3-3, an arithmetic and logic unit (ALU1) 3-4, and an instruction register (IR) 3-5. And bus 3
-15 to 3-17 connect these. In addition,
The program counter and map memory control circuit necessary for executing macro instructions are not shown here.
データの流れは、マイクロプログラムによつて
行なわれる。各バス3―15〜3―17のデータ
幅は、32ビツトであり、モニタ制御メモリ1―2
は1ワードが42ビツトの為、2マイクロ命令サイ
クルを使つてモニタ制御メモリ1―2に書き込
む。書き込む為のマクロ命令は、第3図7―1に
示すような形式で、第2図に示すアキユムレータ
3―2,3―3の値を、命令コードの2ワード目
で指定されるモニタ制御メモリ1―2に書き込
む。 Data flow is performed by a microprogram. The data width of each bus 3-15 to 3-17 is 32 bits, and the data width of each bus 3-15 to 3-17 is 32 bits.
Since one word is 42 bits, it is written to monitor control memory 1-2 using two microinstruction cycles. The macro instruction for writing is in the format shown in Figure 3, 7-1, and writes the values of accumulators 3-2 and 3-3 shown in Figure 2 to the monitor control memory specified by the second word of the instruction code. Write in 1-2.
この時、このマクロ命令を実行するマイクロプ
ログラムは、まずバスゲート信号3―2aを
“1”にすることによりバスゲート3―2bを開
いて、アキユムレータ3―2のデータをバス3―
17に出力する。次に、データが分岐バス3―1
7aに達すると、モニタ制御メモリ1―2に対し
て書込み信号1―2fを与える。この際、モニタ
制御メモリ1―2のアドレスは、命令レジスタ3
―5に対象コードを与えておくことにより設定さ
れる。 At this time, the microprogram that executes this macro instruction first opens the bus gate 3-2b by setting the bus gate signal 3-2a to "1", and transfers the data of the accumulator 3-2 to the bus 3-2.
Output to 17. Next, the data is transferred to branch bus 3-1.
7a, a write signal 1-2f is given to the monitor control memory 1-2. At this time, the address of the monitor control memory 1-2 is the address of the instruction register 3.
-5 is set by giving the target code.
又、マクロ命令実行時には、命令レジスタ3―
5に入つた命令コードは、一つは、信号線3―6
aを介して、マイクロプログラムの開始アドレス
を決定するマツプメモリ1―1(第1図参照)に
達する。又、他の一つは、モニタ制御メモリ1―
2に入り、該メモリ1―2の内容は、ラツチレジ
スタ1―3に読出される。ラツチ信号1―3a
は、モニタ制御メモリ1―2から読出しデータが
確定した時点で与えられる。 Also, when executing a macro instruction, instruction register 3--
One of the instruction codes that entered 5 is signal line 3-6.
A is reached via the map memory 1-1 (see FIG. 1) which determines the starting address of the microprogram. The other one is monitor control memory 1-
2, the contents of memory 1-2 are read into latch registers 1-3. Latch signal 1-3a
is given when the read data from the monitor control memory 1-2 is finalized.
第4図は上記モニタ制御メモリ1―2と制御回
路4の一例を示すブロツク図である。 FIG. 4 is a block diagram showing an example of the monitor control memory 1-2 and the control circuit 4. As shown in FIG.
上記モニタ制御メモリ1―2は、同図に示すよ
うに、チエツクビツト(CHK)1―2a、条件
選択フイールド(COND)1―2b、条件成立時
のオーダフイールド(ORD)1―2c、データ
有効表示ビツト(V)1―2d及びオペランド比
較値(OC)1―2eにて構成される。 As shown in the figure, the monitor control memory 1-2 includes check bits (CHK) 1-2a, condition selection fields (COND) 1-2b, order fields (ORD) 1-2c when conditions are met, and data valid display. It consists of bits (V) 1-2d and operand comparison values (OC) 1-2e.
チエツクビツト1―2aは、1ビツトで、モニ
タ制御メモリ1―2のチエツクが有効か無効かを
示す。このビツト1―2aが“0”なら、対応す
るマクロ命令が単に実行されるだけである。又、
“1”であれば、1―2b〜1―2eの各フイー
ルドの内容に従つて命令実行と並列にモニタ動作
が行なわれる。条件選択フイールド1―2bは、
4ビツトで、条件を示す。条件は、これにより指
定された番号の第5図で示されるモードレジスタ
6―2の値を指定された値と比較する。データ有
効表示ビツト1―2dは、1ビツトで、オペラン
ド比較値1―2eが有効かどうかを示す。このビ
ツトが“1”の時は、オペランド比較値1―2e
が命令のイペランドと比較され、一致した時条件
が成立する。 Check bit 1-2a is 1 bit and indicates whether checking of monitor control memory 1-2 is valid or invalid. If bits 1-2a are "0", the corresponding macro instruction is simply executed. or,
If it is "1", a monitor operation is performed in parallel with the instruction execution according to the contents of each field 1-2b to 1-2e. Condition selection field 1-2b is
4 bits indicate the condition. The condition compares the value of the mode register 6-2 shown in FIG. 5 with the specified number with the specified value. Data validity display bit 1-2d is 1 bit and indicates whether or not operand comparison value 1-2e is valid. When this bit is “1”, the operand comparison value 1-2e
is compared with the instruction's operand, and if they match, the condition is met.
次に、上記制御回路4は、マルチプレクサ4―
1、一致回路4―2,4―4、オペランドラツチ
レジスタ4―3、アンドゲート4―5,4―6,
4―8、オアゲート4―7及びレジスタ番号デコ
ーダ4―9にて構成される。 Next, the control circuit 4 controls the multiplexer 4-
1. Match circuit 4-2, 4-4, operand switch register 4-3, AND gate 4-5, 4-6,
4-8, an OR gate 4-7, and a register number decoder 4-9.
上記マルチプレクサ4―1は、複数のモードレ
ジスタ6―2から、上記条件選択フイールド1―
2bで表わされる条件により指定されるレジスタ
を選択する。上記一致回路4―2は、これと該フ
イールド1―2bにて示される条件との一致をチ
エツクする。又、一致回路4―4は、データ有効
表示ビツト1―2dが“1”であれば、オペラン
ドの値とオペランド比較値1―2eとが一致する
か否かチエツクする。オペラツチレジスタ4―3
は、オペランドの値が確定した時オペランドの値
がセツトされる。 The multiplexer 4-1 selects the condition selection field 1- from the plurality of mode registers 6-2.
The register specified by the condition represented by 2b is selected. The matching circuit 4-2 checks whether this matches the condition indicated in the field 1-2b. Further, if the data validity display bit 1-2d is "1", the matching circuit 4-4 checks whether the operand value and the operand comparison value 1-2e match. Operatuchi register 4-3
The value of the operand is set when the value of the operand is determined.
上記アンドゲート4―5では、一致回路4―4
の出力と、データ有効表示ビツト1―2dの出力
と、オペランド有効信号4―5aとの論理積がと
られる。又、上記アンドゲート4―6では、一致
回路4―2の出力と、データ有効表示ビツト1―
2dの出力の反転信号との論理積がとられる。そ
して、データ有効表示ビツト1―2dが“1”の
時はアンドゲート4―5の出力が、又、該ビツト
1―2dが“0”の時はアンドゲート4―6の出
力が、各々オアゲート4―7を通じてアンドゲー
ト4―8に入力する。 In the above AND gate 4-5, the matching circuit 4-4
The output of the data valid indicator bits 1-2d and the operand valid signal 4-5a are logically ANDed. Further, the AND gate 4-6 outputs the output of the matching circuit 4-2 and the data valid display bit 1-
The output of 2d is ANDed with the inverted signal. When the data valid display bits 1-2d are "1", the output of the AND gates 4-5 is output, and when the bits 1-2d are "0", the output of the AND gates 4-6 is output as an OR gate. It is input to AND gate 4-8 through 4-7.
上記アンドゲート4―8では、上記チエツクビ
ツト1―2aの出力と、上記オアゲート4―7の
出力と、ストープタイミング4―8aとの論理積
がとられる。上記チエツク条件が成立し、ストロ
ープタイミング4―8aが入力すると、該アンド
ゲート4―8の出力である条件成立信号4―8b
が“1”となり、レジスタ番号デコーダ4―9の
動作が有効になる。このレジスタ番号デコーダ4
―9の入力には、条件成立時のオーダフイールド
1―2cのうち、モードレジスタの番号指定が入
力される。レジスタ番号デコーダ4―9は、この
番号をイネーブル信号4―9aが“1”の時、番
号対応の出力線4―91〜4―9nの一つが
“1”になるように変換する。この信号によつ
て、複数あるモニタ回路61〜6nの一つを選択
する。 The AND gate 4-8 performs a logical product of the output of the check bit 1-2a, the output of the OR gate 4-7, and the stop timing 4-8a. When the above check condition is satisfied and the strobe timing 4-8a is input, the condition fulfillment signal 4-8b is output from the AND gate 4-8.
becomes "1", and the operation of the register number decoder 4-9 becomes valid. This register number decoder 4
The number designation of the mode register in the order field 1-2c when the condition is satisfied is input to the input -9. The register number decoder 4-9 converts this number so that when the enable signal 4-9a is "1", one of the output lines 4-9 1 to 4-9n corresponding to the number becomes "1". Depending on this signal, one of the plurality of monitor circuits 6 1 to 6n is selected.
第5図は複数あるモニタ回路61〜6nのうち
の一つを示すブロツク図である。同図に示すモニ
タ回路は、モニタレジスタ(MNR)6―1、モ
ードレジスタ(MR)6―2、モードデコードゲ
ート6―3〜6―8及びデータセレクタ6―9か
ら構成される。 FIG. 5 is a block diagram showing one of the plurality of monitor circuits 6 1 -6n. The monitor circuit shown in the figure is composed of a monitor register (MNR) 6-1, a mode register (MR) 6-2, mode decode gates 6-3 to 6-8, and a data selector 6-9.
上記モードレジスタ6―2は、上記レジスタ番
号デコーダ4―9から送出されるレジスタイネー
ブル信号6―10dにより、書込み可能となる。
書込みはロード信号入力6―10cに書込み信号
がくると行なわれる。書込みデータは、データ入
力6―1e、分岐パス6―9bを介して、第2図
に示すバース3―17より送られる。プログラム
で設定できるように書込み用命令語が用意されて
おり、そのフオーマツトは、第3図7―3に示
す。又、同図7―4は、その時の入力となるアキ
ユムレータ3―2の内容であり、上位3ビツトに
モードレジスタ(MR)6―2の値を、下位29ビ
ツトにモニタレジスタ(MNR)6―1の値を設
定しておく。 The mode register 6-2 becomes writable by the register enable signal 6-10d sent from the register number decoder 4-9.
Writing is performed when a write signal is applied to the load signal input 6-10c. Write data is sent from berth 3-17 shown in FIG. 2 via data input 6-1e and branch path 6-9b. A writing command word is prepared so that it can be set by a program, and its format is shown in FIG. 3, 7-3. Also, Figure 7-4 shows the contents of the accumulator 3-2 which is the input at that time, with the upper 3 bits containing the value of the mode register (MR) 6-2, and the lower 29 bits containing the value of the monitor register (MNR) 6-2. Set the value to 1.
上記モニタレジスタ6―1は、カウンタ+1モ
ード入力6―1bにパルスが1個来る毎に+1さ
れ、カウンター1モード入力6―1cにパルスが
くると−1される。又、データロード信号入力6
―1aに信号が来ると、該レジスタ6―1には、
データ入力6―1eのデータがロードされる。 The monitor register 6-1 is incremented by 1 each time a pulse arrives at the counter +1 mode input 6-1b, and is incremented by -1 each time a pulse arrives at the counter 1 mode input 6-1c. Also, data load signal input 6
When a signal comes to -1a, the register 6-1 has the following information:
The data of data input 6-1e is loaded.
モードレジスタ6―2は、モニタレジスタ6―
1の動作を決定するものであり、該モードレジス
タ6―2の上位1ビツトにある時間計数/条件成
立数指定出力6―2aが“1”の時、モニタレジ
スタ6―1は時間モードとなり、時間計数用クロ
ツク入力6―10aに入つてくる定間隔のパルス
を命令実行と並行的に計数して、時間を測定す
る。又、該出力6―2aが“0”の時、モニタレ
ジスタ6―1はカウンタモードとなり、条件成立
信号入力6―10bに入力される条件成立信号4
―8b(第4図参照)の一致信号を命令実行と並
行的に計数する。モードレジスタ6―2の+1/
−1指定出力6―2bは、このビツトによつてモ
ニタレジスタ6―1を、減算モードで使うか、加
算モードで使うかを指定する。又、0検出ラツチ
出力6―2cは、モニタレジスタ6―1が“0”
になつた時“1”となるビツトであり、該レジス
タ6―1が“0”になつたことを示す。これら三
つの信号は、条件信号6―2dとなつて、第4図
に示したマルチプレクサ4―1に入力される。 Mode register 6-2 is monitor register 6-2.
1, and when the time count/condition fulfillment number designation output 6-2a in the upper 1 bit of the mode register 6-2 is "1", the monitor register 6-1 becomes the time mode, The time is measured by counting regularly spaced pulses input to the time counting clock input 6-10a in parallel with instruction execution. Further, when the output 6-2a is "0", the monitor register 6-1 becomes the counter mode, and the condition fulfillment signal 4 inputted to the condition fulfillment signal input 6-10b.
-8b (see Figure 4) match signals are counted in parallel with instruction execution. +1/ of mode register 6-2
The -1 designation output 6-2b specifies whether the monitor register 6-1 is used in subtraction mode or addition mode, depending on this bit. Also, the 0 detection latch output 6-2c is set to “0” when the monitor register 6-1 is set to “0”.
This bit becomes "1" when the register 6-1 becomes "0". These three signals become the condition signal 6-2d and are input to the multiplexer 4-1 shown in FIG. 4.
上記データセレクタ6―9は、モードレジスタ
6―2のデータ入力を、第2図に示したパス3―
17にて行なうか、第4図に示したモニタ制御メ
モリ1―2のデータによるかを選択する。 The data selector 6-9 transfers the data input of the mode register 6-2 to the path 3-- shown in FIG.
17 or based on the data in the monitor control memory 1-2 shown in FIG.
第3図に示す7―5は、モニタレジスタ6―1
のデータを読出すための命令であり、アキユムレ
ータ3―3にレジスタ番号を設定しておいて、本
命令を実行すると、アキユムレータ3―2にモニ
タレジスタ6―1のデータが設定される。この
時、モニタレジスタイネーブル信号6―1fによ
りモニタレジスタ6―1がイネーブルされ、デー
タ出力6―1gが第2図に示したパス3―15に
出力されて、アキユムレータ3―2に読込まれ
る。 7-5 shown in FIG. 3 is the monitor register 6-1.
This is an instruction for reading the data of the monitor register 6-1, and when this instruction is executed after setting the register number in the accumulator 3-3, the data of the monitor register 6-1 is set in the accumulator 3-2. At this time, the monitor register 6-1 is enabled by the monitor register enable signal 6-1f, and the data output 6-1g is output to the path 3-15 shown in FIG. 2 and read into the accumulator 3-2.
上記実施例では、条件としてオペランド比較
値、モードレジスタを使用しているが、外に、デ
ータ処理装置内の他の条件を使用することができ
る。 In the above embodiment, the operand comparison value and the mode register are used as conditions, but other conditions within the data processing device may also be used.
次に、本発明の実際の使用例について説明す
る。 Next, an example of actual use of the present invention will be described.
第6図8―1は、マツプメモリ(MAP)とモ
ニタ制御メモリ(MCM)の状態を示す。ここ
で、8―1aは、INPUT命令に対してCHKビツ
トを立てており、条件CONDは無条件、オペラン
ド比較値OCは20にしている。又、一致した時の
処理は、MNRの3番を+1するようにしてい
る。これはINPUT20という命令の出現数を数
えている事になる。 FIG. 6 8-1 shows the states of the map memory (MAP) and monitor control memory (MCM). Here, in 8-1a, the CHK bit is set for the INPUT instruction, the condition COND is unconditional, and the operand comparison value OC is set to 20. Furthermore, when a match occurs, the number 3 of the MNR is incremented by +1. This means counting the number of occurrences of the instruction INPUT20.
又、8―1bは、CALL1000という100番
地へのサブルーチンコール命令がきた時、MNR
の1番を時間計数モードに設定し、8―1cの
RETURN命令でMNR1の計数を止めている。こ
れは、1000番地からのサブルーチンの実行時間を
求めている。 Also, when 8-1b receives a subroutine call instruction to address 100 called CALL1000, MNR
Set No. 1 to time counting mode, and set No. 1 of 8-1c to time counting mode.
Counting of MNR1 is stopped by the RETURN command. This calculates the execution time of the subroutine starting from address 1000.
又、8―1d,8―1eは、MNR2が動作中
にきた時の割込ルーチンの処理時間をMNR3で
測定するように設定している。 Further, 8-1d and 8-1e are set so that MNR3 measures the processing time of the interrupt routine when MNR2 is in operation.
このような構成により、第7図のタイムチヤー
トに示すように、各々独立したイペントの時間や
実行回数を測定している。なお、割込みは、命令
コードとしては無いが、割込みによつて疑似的に
命令コードを発生させ、マツプメモリ、モニタ制
御メモリを起動させている。 With this configuration, as shown in the time chart of FIG. 7, the time and number of executions of each independent event are measured. Note that although an interrupt does not have an instruction code, an instruction code is generated in a pseudo manner by the interrupt, and the map memory and monitor control memory are activated.
以上説明したように、本発明は、命令毎に設け
られた読書き可能なモニタ制御メモリに命令実行
時の条件を設定しておき、これを命令実行の際、
マイクロプログラムをアクセスする時間を使用し
て読出して条件を比較し、上記モニタレジスタを
命令実行と並行に更新することにより、従来のよ
うなソフトウエアによるオーバヘツドがなく、
又、ハードウエアモニタによる場合の柔軟性に欠
けるということもなく、システムの使用状況を正
確にモニタすることができる効果がある。 As explained above, the present invention sets the conditions for executing an instruction in the read/write monitor control memory provided for each instruction, and sets the conditions for executing the instruction.
By using the time to access the microprogram, reading it, comparing the conditions, and updating the monitor registers in parallel with instruction execution, there is no software overhead like in the past.
Furthermore, there is no lack of flexibility when using a hardware monitor, and the system usage status can be accurately monitored.
第1図は本発明の一実施例の概要を示すブロツ
ク図、第2図は上記実施例に使用される演算制御
回路の一部とモニタ制御メモリを示すブロツク
図、第3図は本発明を使用するための専用命令の
フオーマツト、第4図はモニタ制御メモリと制御
回路の一例を示すブロツク図、第5図は複数ある
モニタ回路のうちの一つの詳細を示すブロツク
図、第6図はマツプメモリとモニタ制御メモリの
動作状態の一例を示す説明図、第7図は上記動作
のタイムチヤートである。
1……命令コード対応メモリ、1―1……マツ
プメモリ、1―2……モニタ制御メモリ、2……
主記憶、3……演算制御回路、3―2,3―3…
…アキユムレータ、3―5……命令レジスタ、4
……制御回路、4―1……マルチプレクサ、4―
2,4―4……一致回路、4―9……レジスタ番
号デコーダ、5……マイクロプログラムメモリ、
6……モニタ回路、6―1……モニタレジスタ、
6―2……モードレジスタ、6―9……データセ
レクタ。
FIG. 1 is a block diagram showing an overview of one embodiment of the present invention, FIG. 2 is a block diagram showing a part of the arithmetic control circuit and monitor control memory used in the above embodiment, and FIG. 3 is a block diagram showing the outline of an embodiment of the present invention. 4 is a block diagram showing an example of the monitor control memory and control circuit, FIG. 5 is a block diagram showing details of one of the multiple monitor circuits, and FIG. 6 is the map memory. FIG. 7 is an explanatory diagram showing an example of the operating state of the monitor control memory, and FIG. 7 is a time chart of the above operation. 1... Instruction code corresponding memory, 1-1... Map memory, 1-2... Monitor control memory, 2...
Main memory, 3... Arithmetic control circuit, 3-2, 3-3...
...Accumulator, 3-5...Instruction register, 4
...Control circuit, 4-1...Multiplexer, 4-
2, 4-4... Matching circuit, 4-9... Register number decoder, 5... Micro program memory,
6...Monitor circuit, 6-1...Monitor register,
6-2...Mode register, 6-9...Data selector.
Claims (1)
制御方式において、各マクロ命令の使用状況をモ
ニタするための複数のモニタ回路と、各命令に対
応したマイクロプログラムアドレス及びモニタ条
件を格納する命令コード対応メモリとを備え、 上記モニタ回路は、時間、回数等を計数するモ
ニタレジスタと、該モニタレジスタに対応して該
レジスタの動作モードを指定するモードレジスタ
とを有して成り、且つ、上記命令コード対応メモ
リは、各マイクロ命令に対応したマイクロプログ
ラムの開始アドレスを格納するマツプメモリと、
該マツプメモリの各一語に対応した読書き可能な
モニタ制御メモリとを有して成り、 上記モニタ制御メモリに命令実行時の条件を設
定しておき、これを命令実行の際、マイクロプロ
グラムをアクセスする時間を使用して読出して条
件を比較し、上記モニタレジスタを命令実行と並
行に更新するよう構成したことを特徴とするマイ
クロプログラム制御方式。[Claims] 1. In a microprogram control system in a data processing device, a plurality of monitor circuits for monitoring the usage status of each macro instruction, and an instruction code that stores the microprogram address and monitor conditions corresponding to each instruction. The monitor circuit includes a monitor register that counts time, number of times, etc., and a mode register that specifies an operation mode of the register in correspondence with the monitor register, and The code corresponding memory includes a map memory that stores the start address of the microprogram corresponding to each microinstruction;
It has a read/write monitor control memory that corresponds to each word in the map memory, and the conditions for executing an instruction are set in the monitor control memory, and when the instruction is executed, the microprogram is accessed. The microprogram control system is characterized in that the monitor register is updated in parallel with instruction execution by reading and comparing conditions using the time required to read the monitor register.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP55134283A JPS5759258A (en) | 1980-09-29 | 1980-09-29 | Control system of microprogram |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP55134283A JPS5759258A (en) | 1980-09-29 | 1980-09-29 | Control system of microprogram |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS5759258A JPS5759258A (en) | 1982-04-09 |
| JPS6152503B2 true JPS6152503B2 (en) | 1986-11-13 |
Family
ID=15124654
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP55134283A Granted JPS5759258A (en) | 1980-09-29 | 1980-09-29 | Control system of microprogram |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS5759258A (en) |
-
1980
- 1980-09-29 JP JP55134283A patent/JPS5759258A/en active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS5759258A (en) | 1982-04-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0130469B1 (en) | Internally distributed monitoring system | |
| KR860000114B1 (en) | Logic tracing apparatus | |
| US3771144A (en) | Clock for computer performance measurements | |
| US5388233A (en) | Method and apparatus for counting instruction types using bit masks and a programmable bit map | |
| EP0461792A2 (en) | Master/slave checking system | |
| US4511961A (en) | Apparatus for measuring program execution | |
| FI87704C (en) | FOERFARANDE OCH ANORDNING FOER SJAELVTESTNING AV FLYTTALSACCELERATORPROCESSORER | |
| US5365526A (en) | Trace system for an I/O channel | |
| JP2806524B2 (en) | Vector operation instruction issue control method | |
| JPS6152503B2 (en) | ||
| JPH0330040A (en) | Memory circuit with self-diagnostic function | |
| JPS6113264B2 (en) | ||
| JP3100458B2 (en) | Coverage tester | |
| SU1078439A1 (en) | Device for determining reliability indexes for objects | |
| JPS59148955A (en) | Diagnosing device of timing | |
| JPH0357970A (en) | Pulse input apparatus | |
| SU1092569A1 (en) | Device for checking memory units | |
| JPH0226068Y2 (en) | ||
| SU926724A2 (en) | Storage testing device | |
| CN119935216A (en) | Meter abnormality detection method, system, device and medium | |
| JPH0619753A (en) | Program development support device | |
| JPH03266146A (en) | Performance measuring instrument | |
| JPH0296848A (en) | Method for measuring execution time of instruction | |
| JPH0330041A (en) | Memory circuit with self-diagnostic function | |
| JPH0619752A (en) | Microcomputer |