Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPS6232502B2 - - Google Patents
[go: Go Back, main page]

JPS6232502B2 - - Google Patents

Info

Publication number
JPS6232502B2
JPS6232502B2 JP57114423A JP11442382A JPS6232502B2 JP S6232502 B2 JPS6232502 B2 JP S6232502B2 JP 57114423 A JP57114423 A JP 57114423A JP 11442382 A JP11442382 A JP 11442382A JP S6232502 B2 JPS6232502 B2 JP S6232502B2
Authority
JP
Japan
Prior art keywords
instruction
machine language
dummy time
dummy
micro
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
Application number
JP57114423A
Other languages
Japanese (ja)
Other versions
JPS595354A (en
Inventor
Hideyuki Saso
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP57114423A priority Critical patent/JPS595354A/en
Publication of JPS595354A publication Critical patent/JPS595354A/en
Publication of JPS6232502B2 publication Critical patent/JPS6232502B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/223Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明は、マイクロプログラム制御方式のデー
タ処理装置において、機械語命令あるいは入出力
指令などの実行に要する時間を可変とすることが
出来るようにしたものである。
[Detailed Description of the Invention] [Technical Field of the Invention] The present invention is a data processing device using a microprogram control method, in which the time required to execute machine language instructions or input/output commands can be made variable. It is something.

〔従来技術と問題点〕[Prior art and problems]

プログラムを作成した場合、このプログラムを
計算機で実行させることにより、プログラムを検
証することは従来より行われている。しかし、プ
ログラムは検証の際に使用された計算機と同種の
計算機によつてのみ実行されるとは限らず、異種
の計算機にそのプログラムを実行させることも行
われているが、このような場合には内部の動作が
異なる場合がある。第1図および第2図は、異な
る中央処理装置、同一のチヤネル/入出力装置で
同一ソフトウエアを走行させた場合の動作例を示
すものである。第1図および第2図において
CPU1とCPU2は中央処理装置、CHはチヤネルI
は入出力装置、AとBは機械語命令をそれぞれ
示している。SI命令を発行すると、入出力装置
側は入出力オペレーシヨンを実行する。中央処理
装置側ではSI命令を発行した後、次の機械語命
令A,B……の実行を行う。入出力オペレーシヨ
ンが終了すると、入出力装置側は入出力オペレー
シヨンの終了を割込みで以つて中央処理装置に通
知する。第1図においては入出力割込みが機械語
命令Bの終了時点で行われており、第2図におい
ては機械語命令Aの終了時に入出力割込みが行わ
れている。なお、CPU2の機械語命令の実行速度
はCPU1より遅いものとしている。したがつて、
同一のプログラムを機械語命令実行速度の異なる
計算機で実行させる場合には、そのプログラムが
異なる動作環境においても正常に動作するか否か
をチエツクする必要がある。しかし、プログラム
を異なる種々の実ハードウエアで実行させてプロ
グラムの正常性のテストを行うことは、テストの
負担を著しく増大させるという欠点がある。
When a program is created, it has conventionally been done to verify the program by running the program on a computer. However, a program is not necessarily executed only by a computer of the same type as the one used during verification; it is also possible to have a computer of a different type execute the program. may have different internal operations. FIGS. 1 and 2 show an example of operation when the same software is run on different central processing units and the same channel/input/output device. In Figures 1 and 2
CPU 1 and CPU 2 are central processing units, CH is channel I
indicates an input/output device, and A and B indicate machine language instructions, respectively. When the SI instruction is issued, the input/output device side executes the input/output operation. After issuing the SI instruction, the central processing unit executes the next machine language instructions A, B, and so on. When the input/output operation is completed, the input/output device side notifies the central processing unit of the completion of the input/output operation using an interrupt. In FIG. 1, an input/output interrupt is performed at the end of machine language instruction B, and in FIG. 2, an input/output interrupt is performed at the end of machine language instruction A. Note that the execution speed of machine language instructions of CPU 2 is slower than that of CPU 1 . Therefore,
When the same program is executed on computers with different machine language instruction execution speeds, it is necessary to check whether the program operates normally in different operating environments. However, testing the normality of a program by executing it on a variety of different actual hardware has the drawback of significantly increasing the burden of testing.

〔発明の目的〕[Purpose of the invention]

本発明は、上記の考察に基づくものであつて、
同一のハードウエアを用いて機械語命令の見掛け
上の実行速度を可変にできるようにしたデータ処
理装置を提供することを目的としている。
The present invention is based on the above considerations, and includes:
The object of the present invention is to provide a data processing device that can vary the apparent execution speed of machine language instructions using the same hardware.

〔発明の構成〕[Structure of the invention]

そしてそのため、本発明のデータ処理装置は、
機械語命令をマイクロプログラムによつて実行す
るマイクロプログラム制御方式のデータ処理装置
において、 複数の機械語命令を格納する主記憶9と 制御記憶1と、 ダミー・タイム設定部6と を具備し、 且つ制御記憶1の中に、機械語命令の種類によ
つて定まる固有の処理を行うための命令固有のマ
イクロ命令列と、全ての機械語命令を実行する際
に共通に使用される共通マイクロ命令列とを格納
すると共に、ダミー・タイム挿入用マイクロ命令
列を命令固有のマイクロ命令列又は共通マイクロ
命令列に付加された形で格納し、 ダミー・タイム挿入用マイクロ命令列の実行に
より、ダミー・タイム設定部6がダミー・タイム
の挿入を指定しているか否かを調べ、指定してい
る場合にはダミー・タイムを挿入する ことを特徴とするものである。
Therefore, the data processing device of the present invention
A microprogram control data processing device that executes machine language instructions using a microprogram, comprising: a main memory 9 for storing a plurality of machine language instructions; a control memory 1; and a dummy time setting section 6; In the control memory 1, there are instruction-specific microinstruction sequences for performing specific processing determined by the type of machine language instructions, and common microinstruction sequences that are commonly used when executing all machine language instructions. At the same time, a dummy time insertion microinstruction string is stored as an addition to an instruction-specific microinstruction string or a common microinstruction string, and by executing the dummy time insertion microinstruction string, the dummy time insertion microinstruction string is stored. This is characterized in that the setting unit 6 checks whether or not insertion of dummy time is designated, and if so, inserts the dummy time.

〔発明の実施例〕[Embodiments of the invention]

以下、本発明を図面を参照しつつ説明する。第
3図は本発明の原理を説明する図、第4図は本発
明を実施するための中央処理装置のハードウエア
の1実施例を示す図、第5図はLH(Load
Halfword)命令およびSH(Store Halfword)命
令を説明する図第6図は本発明を実施するための
マイクロ命令列の1例を示すものである。
Hereinafter, the present invention will be explained with reference to the drawings. Fig. 3 is a diagram explaining the principle of the present invention, Fig. 4 is a diagram showing an embodiment of the hardware of the central processing unit for carrying out the invention, and Fig. 5 is a diagram explaining the principle of the present invention.
FIG. 6 is a diagram illustrating an SH (Store Halfword) instruction and an SH (Store Halfword) instruction. FIG. 6 shows an example of a microinstruction sequence for carrying out the present invention.

第1図は本発明の概要を示す図である。第1図
において、CPU1′は中央処理装置を示してい
る。第1図の実施例は1つの機械語命令の実行後
にダミー時間を挿入し、ダミー時間経過後に次の
機械語命令Bの実行を開始できるようにしたもの
である。ダミー時間を挿入したり、挿入しなかつ
たりすることにより、機械語命令の見掛け上の実
行速度を可変にすることが出来る。
FIG. 1 is a diagram showing an overview of the present invention. In FIG. 1, CPU1' indicates a central processing unit. In the embodiment shown in FIG. 1, a dummy time is inserted after the execution of one machine language instruction, and execution of the next machine language instruction B can be started after the dummy time has elapsed. By inserting or not inserting dummy time, the apparent execution speed of machine language instructions can be made variable.

第4図は本発明の中央処理装置のハードウエア
構成の1例を示す図である。第4図において、1
は制御記憶(以下、CSという)、2はCS制御
部、3はプロセツサ制御部、4は演算部、5はワ
ーク・レジスタ、6はダミー・タイム設定部、7
はPSWレジスタ、8は汎用レジスタ群、9は主
記憶10は機械語命令、11はμ(マイクロ)命
令群をそれぞれ示している。
FIG. 4 is a diagram showing an example of the hardware configuration of the central processing unit of the present invention. In Figure 4, 1
is a control memory (hereinafter referred to as CS), 2 is a CS control section, 3 is a processor control section, 4 is an arithmetic section, 5 is a work register, 6 is a dummy time setting section, 7
8 is a PSW register, 8 is a general-purpose register group, 9 is a main memory 10, which is a machine language instruction, and 11 is a μ (micro) instruction group.

CS1には複数のμ命令群が格納されている。
CS制御部2は、CSアドレスの更新や読出しの制
御などを行うものである。プロセツサ制御部3
は、CS1から読出されたマイクロ命令に基づい
て計算機の各部を制御するものである。演算部4
はプロセツサ制御部3からの指令にしたがつて、
ワーク・レジスタ5内の演算数を演算するもので
ある。ワーク・レジスタ5には、ダミー・タイム
設定部6、PSWレジスタ7、汎用レジスタ8お
よび主記憶9のデータがセツトされる。ダミー・
タイム設定部6には、ダミー・タイム挿入の有無
を示す情報が格納される。この格納動作は、初期
マイクロプログラム・ローデイング時に行われ
る。PSWレジスタ7には、次の命令実行番地情
報を含む種々の制御情報が格納されている。
CS1 stores a plurality of μ instruction groups.
The CS control unit 2 controls updating and reading of CS addresses. Processor control section 3
controls each part of the computer based on microinstructions read from CS1. Arithmetic unit 4
In accordance with the command from the processor control section 3,
It is used to calculate the number of operations in the work register 5. In the work register 5, data of the dummy time setting unit 6, PSW register 7, general register 8, and main memory 9 are set. dummy·
The time setting section 6 stores information indicating whether or not dummy time is inserted. This storage operation is performed during initial microprogram loading. The PSW register 7 stores various control information including next instruction execution address information.

第5図はLH命令およびSH命令を説明するもの
である。これらの命令は機械語命令である。LH
命令は、第2オペランド部の内容で指定された主
記憶9上のデータを第1オペランド部の内容で指
定される汎用レジスタにセツトするためのもので
ある。この場合、汎用レジスタの上位側の16ビツ
トはオール「0」とされる。SH命令は、第1オ
ペランド部の内容で指定される汎用レジスタの下
位16ビツトを第2オペランド部の内容で指定され
る主記憶9の記憶場所に格納するためのものであ
る。
FIG. 5 explains the LH and SH instructions. These instructions are machine language instructions. LH
The instruction is for setting the data in the main memory 9 specified by the contents of the second operand section into the general-purpose register specified by the contents of the first operand section. In this case, the upper 16 bits of the general-purpose register are all set to "0". The SH instruction is for storing the lower 16 bits of the general-purpose register specified by the contents of the first operand section in the storage location of the main memory 9 specified by the contents of the second operand section.

第6図は本発明を実施するためのマイクロ命令
列の1例を示すものである。なお、この例はLH
命令を実行する場合を例としている。
FIG. 6 shows an example of a microinstruction sequence for implementing the present invention. Note that this example is for LH
The example is when executing a command.

MS READμ命令を実行し、OPコードを主
記憶9からフエツチし、ワーク・レジスタ5に
セツトする。
Execute the MS READμ instruction to fetch the OP code from main memory 9 and set it in work register 5.

OPコード分岐μ命令を実行し、ワーク・レ
ジスタ5の内容に従つて分岐する。
Executes the OP code branch μ instruction and branches according to the contents of work register 5.

MS READμ命令を実行し、LH命令の第2
オペランド部の内容を主記憶9から読出してワ
ーク・レジスタ5にセツトする。
Execute the MS READμ instruction and read the second
The contents of the operand section are read from the main memory 9 and set in the work register 5.

アドレス計算μ命令を実行し、第2オペラン
ド・アドレスの計算を行う。
Execute the address calculation μ instruction to calculate the second operand address.

MS READμ命令を実行し、主記憶9から第
2オペランド・データを読出し、ワーク・レジ
スタ5にセツトする。
Execute the MS READ μ instruction to read the second operand data from the main memory 9 and set it in the work register 5.

MS READμ命令を実行し、LH命令の第1
オペランド部の内容(汎用レジスタのアドレ
ス)を読出し、これをワーク・レジスタ5にセ
ツトする。
Execute the MS READμ instruction and read the first LH instruction.
The contents of the operand section (general-purpose register address) are read and set in the work register 5.

GR WRITEμ命令を実行し、ワーク・レジ
スタ5内の第2オペランド・データを汎用レジ
スタにセツトする。
Execute the GR WRITEμ instruction and set the second operand data in work register 5 to the general-purpose register.

DUMMY REG READμ命令を実行し、ダミ
ー・タイム設定部6からデータを読出す。
Execute the DUMMY REG READμ instruction to read data from the dummy time setting section 6.

ダミー・タイム挿入の有無を調べ、Yesの場
合にはの処理を行い、No.の場合にはの処理
を行う。
Check whether dummy time is inserted or not, and if Yes, perform the process, and if No, perform the process.

命令フエツチ部に分岐する。 Branch to instruction fetch section.

無操作μ命令を行う。 Executes a no-operation μ command.

〓 無操作μ命令を行い、次にの処理を行う。
なお、、の処理は、全ての機械語命令を実
行する際に共通に実行される処理であり、な
いしの処理はLH命令に固有の処理である。
〓 Execute the no-operation μ command and perform the next process.
Note that the processing in is a process that is commonly executed when all machine language instructions are executed, and the processing in . to . is a process that is unique to the LH instruction.

第6図の実施例では機械語命令の終了時にダミ
ー・タイム挿入の指示があるか、否かをμ命令で
読取り、挿入指示がある場合には無操作命令を実
行しているが、この代りに専用のμ命令を実行
し、ダミー設定がある場合には一定時間の遅延を
取つたのち次のμ命令をフエツチするようにハー
ドウエアを構成してもよい。第6図のようにダミ
ー・タイムのチエツクを挿入すれば各機械語命令
ごとの実行時間を変えることが出来るし、また、
の処理の直前に、、、の処理を挿入すれ
ば全体的に実行時間を代えることが出来る。、
、の処理のうちダミー判断部分を毎回実行す
ると通常時に性能が低下するので、初期マイクロ
プログラムの格納時にダミー挿入の必要性がある
か否かを調べ、必要性ありの場合には、の処理
を行うためのマイクロ命令を格納し、必要性なし
の場合にはの処理を行うためのマイクロ命令を
格納せず、CS1上でのマイクロ命令の次のの
処理を行うためのマイクロ命令が位置するように
しても良い。
In the embodiment shown in FIG. 6, the μ instruction reads whether or not there is a dummy time insertion instruction at the end of a machine language instruction, and if there is an insertion instruction, a no-operation instruction is executed. The hardware may be configured so that a dedicated μ instruction is executed in the first step, and if there is a dummy setting, the next μ instruction is fetched after a certain time delay. By inserting a dummy time check as shown in Figure 6, you can change the execution time for each machine language instruction, and also,
By inserting the processes of , , and immediately before the process of , the overall execution time can be changed. ,
If the dummy judgment part of the process of , is executed every time, the performance will deteriorate under normal conditions, so check whether there is a need to insert a dummy when storing the initial microprogram, and if there is a need, perform the process of Stores the microinstruction to perform the process, and does not store the microinstruction to perform the process if there is no need, and the microinstruction to process the next microinstruction on CS 1 is located. You can do it like this.

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

以上の説明から明らかなように、本発明によれ
ば、機械語命令の見掛上の実行速度を可変とする
ことが出来る。
As is clear from the above description, according to the present invention, the apparent execution speed of machine language instructions can be made variable.

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

第1図および第2図は異なる中央処理装置、同
一のチヤネル/入出力装置で同一のソフトウエア
を走行させた場合の動作例を示す図、第3図は本
発明の原理を説明する図、第4図は本発明を実施
するための中央処理装置のハードウエアの1実施
例を示す図、第5図はLH(Load Halfword)命
令およびSH(Store Halfword)命令を説明する
図、第6図は本発明を実施するためのマイクロ命
令列の1例を示すものである。 1……制御記憶(以下、CSという)、2……
CS制御部、3……プロセツサ制御部、4……演
算部、5……ワーク・レジスタ、6……ダミー・
タイム設定部、7……PSWレジスタ、8……汎
用レジスタ群、9……主記憶、10……機械語命
令、11……μ(マイクロ)命令群。
1 and 2 are diagrams showing an example of operation when the same software is run on different central processing units and the same channel/input/output device, and FIG. 3 is a diagram illustrating the principle of the present invention. FIG. 4 is a diagram showing one embodiment of the hardware of a central processing unit for implementing the present invention, FIG. 5 is a diagram explaining LH (Load Halfword) instruction and SH (Store Halfword) instruction, and FIG. 6 1 shows an example of a microinstruction sequence for implementing the present invention. 1... Control memory (hereinafter referred to as CS), 2...
CS control unit, 3...Processor control unit, 4...Arithmetic unit, 5...Work register, 6...Dummy register
Time setting section, 7... PSW register, 8... General purpose register group, 9... Main memory, 10... Machine language instructions, 11... μ (micro) instruction group.

Claims (1)

【特許請求の範囲】 1 機械語命令をマイクロプログラムによつて実
行するマイクロプロラム制御方式のデータ処理装
置において、 複数の機械語命令を格納する主記憶9と 制御記憶1と、 ダミー・タイム設定部6と を具備し、 且つ制御記憶1の中に、機械語命令の種類によ
つて定まる固有の処理を行うための命令固有のマ
イクロ命令列と、全ての機械語命令を実行する際
に共通に使用される共通マイクロ命令列とを格納
すると共に、ダミー・タイム挿入用マイクロ命令
列を命令固有のマイクロ命令列又は共通マイクロ
命令列に付加された形で格納し、 ダミー・タイム挿入用マイクロ命令列の実行に
より、ダミー・タイム設定部6がダミー・タイム
の挿入を指定しているか否かを調べ、指定してい
る場合にはダミー・タイムを挿入する ことを特徴とするデータ処理装置。
[Claims] 1. A microprogram control data processing device that executes machine language instructions using a microprogram, comprising: a main memory 9 that stores a plurality of machine language instructions; a control memory 1; and a dummy time setting section. 6, and the control memory 1 includes an instruction-specific microinstruction sequence for performing specific processing determined by the type of machine language instruction, and a common microinstruction sequence when executing all machine language instructions. In addition to storing the common micro-instruction sequences used, the micro-instruction sequence for dummy time insertion is stored in a form added to the instruction-specific micro-instruction sequence or the common micro-instruction sequence, and the micro-instruction sequence for dummy time insertion is stored. The data processing device is characterized in that the dummy time setting unit 6 checks whether or not the insertion of dummy time is specified by executing the above, and inserts the dummy time if the dummy time is specified.
JP57114423A 1982-06-30 1982-06-30 Data processing device Granted JPS595354A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57114423A JPS595354A (en) 1982-06-30 1982-06-30 Data processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57114423A JPS595354A (en) 1982-06-30 1982-06-30 Data processing device

Publications (2)

Publication Number Publication Date
JPS595354A JPS595354A (en) 1984-01-12
JPS6232502B2 true JPS6232502B2 (en) 1987-07-15

Family

ID=14637338

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57114423A Granted JPS595354A (en) 1982-06-30 1982-06-30 Data processing device

Country Status (1)

Country Link
JP (1) JPS595354A (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11207034A (en) * 1997-11-20 1999-08-03 Nintendo Co Ltd A game system that can be played between different types of game machines using backup data
US7426629B2 (en) 2002-12-12 2008-09-16 Arm Limited Processing activity masking in a data processing system
JP2015135538A (en) * 2014-01-16 2015-07-27 三菱電機株式会社 processor

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5631141A (en) * 1979-08-22 1981-03-28 Nec Corp Information processor

Also Published As

Publication number Publication date
JPS595354A (en) 1984-01-12

Similar Documents

Publication Publication Date Title
EP0297893A2 (en) Apparatus and method for recovering from page faults in vector data processing operations
JPS6217252B2 (en)
JPH0228173B2 (en)
JPH0348537B2 (en)
JPH0348536B2 (en)
JPS6232502B2 (en)
JPS62226231A (en) Processor
CA1302580C (en) Apparatus and method for using lockout for synchronization of access to main memory signal groups in a multiprocessor data processing system
JPH0754467B2 (en) Data processing device
EP0307448A1 (en) Apparatus and method for synchronization of arithmetic exceptions in parallel pipelined execution units.
JPH0377137A (en) Information processor
JPH01297727A (en) System for controlling normalization of floating point arithmetic operation
JPS59123936A (en) Movement control system
JPH06324861A (en) System and method for controlling cpu
JPH0754470B2 (en) Control method for virtual computer system
JP2883489B2 (en) Instruction processing unit
JPS6116111B2 (en)
JPS6042983B2 (en) Command control method
JPS6116114B2 (en)
JPS62147545A (en) Transfer command processing method in information processing equipment
JPH0281129A (en) Control method for information processing device
JPH0234058B2 (en)
JPS6028014B2 (en) microprocessor
JPS60179844A (en) Instruction rereading control system
JPH05241828A (en) Instruction processor