JPS595354A - Data processing device - Google Patents
Data processing deviceInfo
- Publication number
- JPS595354A JPS595354A JP57114423A JP11442382A JPS595354A JP S595354 A JPS595354 A JP S595354A JP 57114423 A JP57114423 A JP 57114423A JP 11442382 A JP11442382 A JP 11442382A JP S595354 A JPS595354 A JP S595354A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- dummy
- register
- machine language
- dummy time
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/22—Microcontrol or microprogram arrangements
- G06F9/223—Execution 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)
- Executing Machine-Instructions (AREA)
- Debugging And Monitoring (AREA)
Abstract
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.
プログラムを作成した場合、このプログラムを計算機で
実行させることにより、プログラムを検証することは従
来より行われている。しかし、プログラムは検証の際に
使用された計算機と同種の計算機によってのみ実行され
るとは限らず、異種の計算機にそのプログラムを実行さ
せることも行われているが、このよ5な場合には内部の
動作が異なる場合がある。第1図および第2図は、異な
る中央処理装置、同一のチャネル/入出力装置で同一ソ
フトウェアを走行させた場合の動作例を示すものである
。第1図および第2図においてCPU。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 computer used during verification, but the program is also executed by a computer of a different type, but in such cases, Internal operation may differ. 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. CPU in FIG. 1 and FIG.
とOPU、は中央処理装置、OHはチャネルエ6は入出
力装置、AとBは機械語命令をそれぞれ示している。S
IC+命令を発行すると、入出力装置側は入出カオベレ
ーシ1ンを実行する。中央処理装置側ではSIろ命令を
発行した後、次の機械語命令A、 B・・・の実行を行
う。入出力オペレーン1ンが終了すると、入出力装置側
は入出力オベレーシ璽yの終了を割込みで以って中央処
理装置に通知する。第1図においては入出力割込みが機
械語命令Bの終了時点で行われており、第2図において
は機械語命令Aの終了時に入出力割込みが行われている
。and OPU indicate a central processing unit, OH indicates a channel 6, an input/output device, and A and B indicate machine language instructions, respectively. S
When the IC+ command is issued, the input/output device side executes input/output chaos. After issuing the SI command, the central processing unit executes the next machine language commands A, B, and so on. When the input/output operation lane 1 is completed, the input/output device side notifies the central processing unit of the completion of the input/output operation lane y 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.
なお、opu、の機械語命令の実行速度はCPU、
より遅いものとしている。したがって、同一のプログラ
ムを機械語命令実行速度の異なる計算機で実行させる場
合には、そのプログラムが異なる動作環境においても正
常に動作するか否かをチェックする必要がある。しかし
、プログラムを異なる種々の実ハードウェアで実行させ
てプログラムの正常性のテストを行うことは、テストの
負担を著しく増大させるとい5内点がある。Note that the execution speed of the machine language instructions of opu is the same as that of CPU,
It is assumed to be slower. 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 significantly increases the burden of testing.
本発明は、上記の考察に基づくものであって、同一のハ
ードウェアを用いて機械語命令の見掛は上の実行速度を
可変にできるよ5Kしたデータ処理装置を提供すること
を目的としている。The present invention is based on the above considerations, and aims to provide a 5K data processing device that can vary the apparent execution speed of machine language instructions using the same hardware. .
〔発明の構成〕
そしてそのため、本発明のデータ処理装置は、マイクロ
プログラム制御方式のデータ処理装置において、複数の
マイクロ命令から成るマイクロ命令群を一つの処理単位
とし、核処理単位毎に設定条件を参照し、ダミ一時間設
定がある場合にはダミ一時間を挿入し、ダミ一時間を挿
入した該処理終了した後に次の処理単位の実行を開始す
るように構成したことを特徴とするものである。[Structure of the Invention] Therefore, the data processing device of the present invention is a data processing device using a microprogram control method, in which a microinstruction group consisting of a plurality of microinstructions is treated as one processing unit, and setting conditions are set for each core processing unit. If there is a dummy hour setting, the dummy hour is inserted, and the execution of the next processing unit is started after the processing for which the dummy hour has been inserted is completed. be.
以下、本発明を図面を参照しつつ説明する。第3図は本
発明の詳細な説明する図、第4図は本発明を実施するた
めの中央処理装置のハードウェアの1実施例を示す図、
第5図はLH(Load Ha1fwora命令および
SH(日torθHalfword)命令を説明する図
第6図は本発明を実施するためのマイクロ命令列の1例
を示すものである。Hereinafter, the present invention will be explained with reference to the drawings. FIG. 3 is a diagram explaining the present invention in detail, FIG. 4 is a diagram showing one embodiment of the hardware of the central processing unit for implementing the present invention,
FIG. 5 is a diagram illustrating the LH (Load Halfwora instruction) and the SH (Torθ Halfword) instruction. FIG. 6 shows an example of a microinstruction sequence for carrying out the present invention.
第1図は本発明の概要を示す図である。第1図において
、CPU1′は中央処理装置を示している。FIG. 1 is a diagram showing an overview of the present invention. In FIG. 1, CPU1' indicates a central processing unit.
第1図の実施例は1つの機械語命令の実行後にダミ一時
間を挿入し、ダミ一時間経過後に次の機械語命令Bの実
行を開始できるようにしたものである。ダミ一時間を挿
入したり、挿入しなかつたりすることにより、機械語命
令の見掛は上の実行速度を可変にすることが出来る。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 one hour has elapsed. By inserting or not inserting a dummy time, the apparent execution speed of machine language instructions can be varied.
第4図は本発明の中央処理装置のハードウェア構成の1
例を示す図である。第4図において、1は制御記憶(以
下、C8という)、2)亀O8制御部λ′に°ロセッサ
制御部、4は演算部、5はワーク・レジスタ、6はダミ
ー・タイム設定部、7はPSWレジスタ、8は汎用レジ
スタ群、9は主記憶10は機械語命令、11はμ(マイ
クロ)命令群をそれぞれ示している。FIG. 4 shows one of the hardware configurations of the central processing unit of the present invention.
It is a figure which shows an example. In FIG. 4, 1 is a control memory (hereinafter referred to as C8), 2) the turtle O8 control section λ' 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.
CB1には複数のμ命令群が格納されている。A plurality of μ instruction groups are stored in CB1.
aS制御部2は、CSアドレスの更新や読出しの制御な
どを行うものである。プロセッサ制御部3は、0日1か
ら読出されたマイクロ命令に基づいて引算機の各部を制
御するものである。演算部4はプロセッサ制御部3から
の指令にしたがって、ワーク・レジスタ5内の演算数を
演算するものである。ワーク・レジスタ5には、ダミー
・タイム設 −走部6、PSWレジスタ7、汎用レジス
タ8および主記憶9のデータがセットされる。ダミー・
タイム設定部6には、ダミー・タイム挿入の有無を示す
情報が格納される。この格納動作は、初期マイクロプロ
グラム・ローディング時に行われる。pswレジスタ7
には、次の命令実行番地情報を含む種々の制御情報が格
納されている。The aS control unit 2 controls updating and reading of CS addresses. The processor control section 3 controls each section of the subtraction machine based on microinstructions read from day 0 to day 1. The calculation unit 4 calculates the calculation number in the work register 5 according to instructions from the processor control unit 3. In the work register 5, data of a dummy time setting section 6, a PSW register 7, a general-purpose register 8, and a main memory 9 are set. dummy·
The time setting section 6 stores information indicating whether or not dummy time is inserted. This storage operation occurs during initial microprogram loading. psw register 7
Various types of control information including next instruction execution address information are stored in .
第5図はLH命令およびSR命令を説明するものである
。これらの命令は機械語命令である。LH命令は、第2
オペランド部の内容で指定された主記憶9上のデータを
第1オペランド部の内容で指定される汎用レジスタにセ
ットするためのものである。この場合、汎用レジスタの
上位側の16ビツトはオール「o」とされる。8H命令
は、第1オペランド部の内容で指定される汎用レジスタ
の下位16ピツトを第2オペランド部の内容で指定され
る主記憶9の記憶場所に格納するためのものである。FIG. 5 explains the LH instruction and the SR instruction. These instructions are machine language instructions. The LH command is the second
This is for setting the data on the main memory 9 specified by the contents of the 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 "o". The 8H instruction is for storing the lower 16 pits 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 based on a case where an LH instruction is executed.
■ MS READ /J命令を実行し、opコードを
主記憶9かもフェッチし、ワーク・レジスタ5にセット
する。■ Execute the MS READ /J instruction, fetch the opcode from the main memory 9, and set it in the work register 5.
■ OPコード分分岐分命令実行し、ワーク・レジスタ
5の内容に従って分岐する。■ Execute branch instructions for each OP code and branch according to the contents of work register 5.
■ MS READμ命令を実行し、LH命令の第2オ
ペランド部の内容を主記憶9から読出してワーク・レジ
スタ5にセットする。(2) Execute the MS READμ instruction, read the contents of the second operand part of the LH instruction from the main memory 9, and set it in the work register 5.
■ アドレス計算μ命令を実行し、第2オペランド・ア
ドレスの計算を行う。■ Execute the address calculation μ instruction and calculate the second operand address.
■ MSIAD 11命令を実行し、主記憶9から第2
オペランド・データを読出し、ワーク・レジスタ5にセ
ットする。■ Executes the MSIAD 11 instruction and transfers data from main memory 9 to the second
Read the operand data and set it in the work register 5.
■ Me RFiAD X4命令を実行し、I、H命令
の第1オペランド部の内容(汎用レジスタのアドレス)
を読出し、これをワーク・レジスタ5にセットする。■ Execute the Me RFiAD X4 instruction and read the contents of the first operand part of the I and H instructions (general-purpose register address)
is read and set in the work register 5.
■ GRWR工TKμ命令を実行し、ワーク・レジスタ
5内の第2オベラyド・データを汎用レジスタにセット
する。■ Execute the GRWR TKμ instruction and set the second override data in the work register 5 to the general-purpose register.
■ DUMMY R1!!G RBAD II 命令を
実行し、ダミー・タイム設定部6かもデータを読出す。■ DUMMY R1! ! The G RBAD II instruction is executed, and the dummy time setting section 6 also reads data.
■ ダミー・タイム挿入の有無を調べ、YO2の場合に
はOの処理を行い、NOの場合には◎の処理を行う。■ Check whether dummy time is inserted or not, and if YO2, perform O processing, and if NO, perform ◎ processing.
0 命令フェッチ部に分岐する。0 Branch to instruction fetch section.
■ 無操作μ命令を行う。■ Execute the no-operation μ command.
O無操作μ命令を行い、次に0の処理を行5゜なお、■
、■の処理は、全ての機械語命令を実行する際に共通に
実行される処理であり、■ないしOの処理はLH命令に
固有の処理である。Execute the O no-operation μ command, then process 0 at 5゜ Note that ■
, ■ are processes commonly executed when all machine language instructions are executed, and processes ■ to O are processes specific to LH instructions.
第6図の実施例では機械語命令の終了時にダミー・タイ
ム挿入の指示があるか、否かをμ命令で読取り、挿入指
示がある場合には無操作命令を実行しているが、この代
りに専用のμ命令を実行し、ダミー設定がある場合には
一定時間の遅延を取ったのち次のμ命令をフェッチする
ようにハードウェアを構成してもよい。第6図のよ5に
ダミー・タイムのチェックを挿入すれば各機械語命令ご
との実行時間を変えることが出来るし、また、■の処理
の直前に■、@、Oの処理を挿入すれば全体的に実行時
間を代えることが出来る。■、■、Oの処理のうちダミ
ー判断部分を毎回実行すると通常時に性能が低下するの
で、初期マイクロプログラムの格納時にダミー挿入の必
要性があるか否かを調べ、必要性ありの場合には、■の
処理を行うためのマイクロ命令を格納し、必要性なしの
場合には■の処理を行うためのマイクロ命令を格納せず
、08.上で■のマイクロ命令の次の00処理を行うた
めのマイクロ命令が位置するようにしても良い。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, and if there is a dummy setting, the next μ instruction is fetched after a certain time delay. If you insert a dummy time check at 5 in Figure 6, you can change the execution time for each machine language instruction, and if you insert the processing of ■, @, and O immediately before the processing of ■, The overall execution time can be changed. Executing the dummy determination part of the processing in ■, ■, and O every time will degrade performance during normal operation, so check whether there is a need to insert a dummy when storing the initial microprogram, and if there is a need, , 08. Stores the microinstructions for performing the processing in ■, and does not store the microinstructions for performing the processing in ■ if there is no need. A microinstruction for performing the 00 processing next to the microinstruction (2) above may be located.
以上の説明から明らかなように、本発明によれば、機械
語命令の見掛上の実行速度を可変とすることが出来る。As is clear from the above description, according to the present invention, the apparent execution speed of machine language instructions can be made variable.
第1図および第2図は異なる中央処理装置、同一のチャ
ネル/入出力装置で同一のソフトウェアを走行させた場
合の動作例を示す図、第3図は本 −発明の詳細な説明
する図、第4図は本発明を実施するための中央処理装置
のハードウェアの1実施例を示す図、第5図はL H(
Load Halfwor+i) 命令およびBH(
日tore Halfword) 命令を説明する図
、第6図は本発明を実施するためのマイクロ命令列の1
例を示すものである。
−り・レジスタ、6・・・ダξ−・タイム設定部、7・
・・PSWレジスタ、8・・・汎用レジスタ群、9・・
・主記憶、10・・・機械語命令、11・・・μ(マイ
クロ)命令群。
特許出願人 富士通株式会社
代理人弁理士 京 谷 四 部
CPLJ I CH/io C
pL12 CM/i。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 present invention in detail. FIG. 4 is a diagram showing one embodiment of the hardware of the central processing unit for implementing the present invention, and FIG.
Load Halfwor+i) command and BH (
Figure 6 is a diagram explaining the instructions (Japanese tore Halfword), one of the microinstruction sequences for implementing the present invention
This is an example. -Register, 6... Daξ- Time setting section, 7.
...PSW register, 8...General-purpose register group, 9...
- Main memory, 10...machine language instructions, 11...μ (micro) instruction group. Patent applicant: Fujitsu Ltd. Representative patent attorney: Yobu Kyotani CPLJ I CH/io C
pL12 CM/i.
Claims (1)
、複数のマイクロ命令から成るマイクロ命令群を一つの
処理単位とし、該処理単位毎に設定条件を参照し、ダミ
一時間設定がある場合にはダミ一時間を挿入し、ダミ一
時間を挿入した該処理単位が終了した後に次の処理単位
の実行を開始するように構成したことを特徴とするデー
タ処理装置。In a microprogram control type data processing device, a microinstruction group consisting of multiple microinstructions is treated as one processing unit, and setting conditions are referred to for each processing unit, and if there is a dummy time setting, the dummy one hour is set. A data processing apparatus characterized in that the data processing apparatus is configured to start execution of the next processing unit after the processing unit in which the dummy time has been inserted is completed.
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 true JPS595354A (en) | 1984-01-12 |
JPS6232502B2 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) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11207034A (en) * | 1997-11-20 | 1999-08-03 | Nintendo Co Ltd | Game system capable of playing between different kinds of game machines through use of backup data |
US7134003B2 (en) | 2002-12-12 | 2006-11-07 | Arm Limited | Variable cycle instruction execution in variable or maximum fixed cycle mode to disguise execution path |
JP2015135538A (en) * | 2014-01-16 | 2015-07-27 | 三菱電機株式会社 | processor |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5631141A (en) * | 1979-08-22 | 1981-03-28 | Nec Corp | Information processor |
-
1982
- 1982-06-30 JP JP57114423A patent/JPS595354A/en active Granted
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5631141A (en) * | 1979-08-22 | 1981-03-28 | Nec Corp | Information processor |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11207034A (en) * | 1997-11-20 | 1999-08-03 | Nintendo Co Ltd | Game system capable of playing between different kinds of game machines through use of backup data |
US7134003B2 (en) | 2002-12-12 | 2006-11-07 | Arm Limited | Variable cycle instruction execution in variable or maximum fixed cycle mode to disguise execution path |
JP2015135538A (en) * | 2014-01-16 | 2015-07-27 | 三菱電機株式会社 | processor |
Also Published As
Publication number | Publication date |
---|---|
JPS6232502B2 (en) | 1987-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100208889B1 (en) | Parallel processing device amd parallel processing method | |
JPH0348537B2 (en) | ||
JPH0348536B2 (en) | ||
US4821231A (en) | Method and apparatus for selectively evaluating an effective address for a coprocessor | |
EP0240606A2 (en) | Pipe-line processing system and microprocessor using the system | |
JPS595354A (en) | Data processing device | |
JPH0512751B2 (en) | ||
JPS6134188B2 (en) | ||
JPS59123936A (en) | Movement control system | |
JP2758624B2 (en) | Speed control method of micro program | |
JP2000029696A (en) | Processor, and pipeline process control method | |
JPS5829051A (en) | Operation processing device | |
JP3743155B2 (en) | Pipeline controlled computer | |
JPS5925264B2 (en) | Vector instruction processing method | |
JPS6116114B2 (en) | ||
JPS6116111B2 (en) | ||
JPS6028014B2 (en) | microprocessor | |
JPH0317135B2 (en) | ||
JPS6221130B2 (en) | ||
JPH0623953B2 (en) | Arithmetic control method | |
JPS6047617B2 (en) | information processing equipment | |
JPS6042983B2 (en) | Command control method | |
JPS5896346A (en) | Hierarchical arithmetic system | |
JPS6210736A (en) | Prefetching control system for micro instruction | |
JPS63153637A (en) | Data processor |