JPH03246727A - Processor - Google Patents

Processor

Info

Publication number
JPH03246727A
JPH03246727A JP4482990A JP4482990A JPH03246727A JP H03246727 A JPH03246727 A JP H03246727A JP 4482990 A JP4482990 A JP 4482990A JP 4482990 A JP4482990 A JP 4482990A JP H03246727 A JPH03246727 A JP H03246727A
Authority
JP
Japan
Prior art keywords
operands
instruction
operand
register
calculation
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
JP4482990A
Other languages
Japanese (ja)
Inventor
Eiki Kamata
釜田 栄樹
Yoichi Shintani
洋一 新谷
Toru Shonai
亨 庄内
Kiyoshi Inoue
潔 井上
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP4482990A priority Critical patent/JPH03246727A/en
Publication of JPH03246727A publication Critical patent/JPH03246727A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To accelerate processing while suppressing the increment of hardware by comprising a device in such a way that an instruction is executed when an operand is not less than a prescribed value, but executing plural instructions in parallel when the operand is less than the prescribed value. CONSTITUTION:This processor is comprised of an instruction control part 10, an arithmetic control part 20, a universal register 30, a storage 40, an operand buffer 45, and selectors 50, 55, 80, etc. It is discriminated whether or not first and second arithmetic operations requested by first and second instructions are executed in parallel based on whether the length of first and second operands are less than the prescribed value or whether the first and second operands exceeds the prescribed value. Following that, the first and second arithmetic operations are executed in parallel on supplied first and second operands based on whether or not the first and second arithmetic operations are executed in parallel. In such a way, it is possible to accelerate the processing by parallel execution while suppressing the increment of the hardware.

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、命令を順次または並列に実行する処理装置に
関し、特に、バイブライン処理方式(先行制御方式)に
よって複数の命令を並列に実行するのに好適な処理装置
に関する。
[Detailed Description of the Invention] [Industrial Application Field] The present invention relates to a processing device that executes instructions sequentially or in parallel, and particularly to a processing device that executes a plurality of instructions in parallel using a vibline processing method (advance control method). The present invention relates to a processing device suitable for.

[従来の技術] 複数の命令を並列に実行することによって処理の高速化
を図った装置として、特開昭58−176751号公報
に記載されている処理装置がある。
[Prior Art] There is a processing device described in Japanese Patent Application Laid-Open No. 176751/1983 as a device that aims to speed up processing by executing a plurality of instructions in parallel.

また、特願平1−194031号に記載されている処理
装置は、複数の演算器群と、それらの演算器群にオペラ
ンドを供給する複数のデータ経路と、所定の演算器に所
定のオペランドを供給するために前記データ経路を切り
換える交換回路とを具備して構成されている。
Further, the processing device described in Japanese Patent Application No. 1-194031 includes a plurality of arithmetic unit groups, a plurality of data paths that supply operands to these arithmetic unit groups, and a predetermined operand to a predetermined arithmetic unit. and a switching circuit for switching the data path for supplying the data.

[発明が解決しようとする課題] 上記従来の処理装置では、交換回路で複数のデータ経路
を切り換えて所定演算器群にオペランドを供給している
[Problems to be Solved by the Invention] In the conventional processing device described above, a switching circuit switches between a plurality of data paths to supply operands to a predetermined group of arithmetic units.

しかし、並列度が増すにつれてデータ経路や演算器が増
加し、また、交換回路が複雑化し、ハードウェア量が膨
大になるという問題点がある。
However, as the degree of parallelism increases, the number of data paths and arithmetic units increases, the switching circuit becomes more complex, and the amount of hardware becomes enormous.

そこで、本発明の目的は、並列度の増加に伴うハードウ
ェア量の増加を抑制可能とした処理装置を提供すること
にある。
SUMMARY OF THE INVENTION Therefore, an object of the present invention is to provide a processing device that can suppress an increase in the amount of hardware due to an increase in the degree of parallelism.

[課題を解決するための手段] 本発明の処理装置は、(a)第1.第2の命令のそれぞ
れ要求する第1.第2のオペランドの長さがともに所定
値より小さいが、又は、該第1.第2のオペランドの少
なくとも一方が該所定値より大きいかにより、該第1.
第2の命令が要求する第1.第2の演算を並列に実行す
るか否かを判別する演算判別手段と、(b)該第1.第
2の演算を並列に実行するか否かに応じて、該第1.第
2のオペランドを並列又は順次供給するオペランド供給
手段と、(c)該第1.第2の演算を並列に実行するか
否かに応じて、該第1.第2の演算を、供給された該第
1.第2のオペランドに対して、並列に実行するか又は
順次実行する演算手段と、(d)前記演算手段で並列又
は順次実行された演算結果を保存するための演算結果保
存手段とを有することを構成上の特徴とするものである
[Means for Solving the Problems] The processing device of the present invention includes (a) first. The first command requires each of the second commands. The lengths of the second operands are both smaller than the predetermined value, or the first . Depending on whether at least one of the second operands is greater than the predetermined value, the first .
The first command required by the second command. (b) operation determination means for determining whether or not to execute the second operation in parallel; Depending on whether or not the second operation is executed in parallel, the first... (c) operand supply means for supplying the second operand in parallel or sequentially; Depending on whether or not the second operation is executed in parallel, the first... A second operation is performed on the supplied first . (d) operation result storage means for storing the operation results executed in parallel or sequentially by the operation means for the second operand; This is a structural feature.

上記構成において、オペランド供給手段は、前記オペラ
ンドを前記演算手段へ順次供給するときのオペランド供
給回路を用いて、所定値より小さい前記オペランドを並
列に供給するものであるのが好ましい。
In the above configuration, it is preferable that the operand supply means supplies the operands smaller than a predetermined value in parallel using an operand supply circuit that sequentially supplies the operands to the calculation means.

また、演算保存手段は、前記演算手段で順次実行した演
算結果を保存するときの演算結果書き込み回路を用いて
、前記演算手段で並列実行した演算結果を保存するもの
であるのが好ましい。
Preferably, the calculation storage means stores the calculation results executed in parallel by the calculation means using a calculation result writing circuit for storing calculation results sequentially executed by the calculation means.

また、前記演算手段は、所定値より小さいオペランドの
演算も小さくないオペランドの演算も施すことができる
1以上の演算器から成る第1の演算器群と、所定値より
も小さいオペランドの演算だけを施すことができる1ま
たは2以上の演算器から成る第2の演算器群とを有し、
前記並列実行は前記第1の演算器群と前記第2の演算器
群とでそれぞれ行い、前記順次実行は前記第1の演算器
群によって行なうものとするが、又は、所定値よりも小
さいオペランドの演算だけを施すことかできる演算器を
2以上有し、前記並列実行は各演算器でそれぞれ行ない
、前記順次実行は前記演算器を直列に連結して行なうも
のとするのが好ましい。
Further, the arithmetic means includes a first arithmetic unit group consisting of one or more arithmetic units that can perform operations on operands that are smaller than a predetermined value as well as operands that are not smaller than a predetermined value; a second arithmetic unit group consisting of one or more arithmetic units that can perform
The parallel execution is performed by the first arithmetic unit group and the second arithmetic unit group, and the sequential execution is performed by the first arithmetic unit group. Preferably, the computer has two or more arithmetic units capable of performing only the calculation of , the parallel execution is performed by each arithmetic unit, and the sequential execution is performed by connecting the arithmetic units in series.

[作用] 本発明の処理装置では、オペランドが所定値よりも小さ
くない場合には命令を順次実行するが、オペランドが所
定値よりも小さい場合には複数の命令を並列実行する。
[Operation] In the processing device of the present invention, instructions are executed sequentially when the operand is not smaller than a predetermined value, but a plurality of instructions are executed in parallel when the operand is smaller than the predetermined value.

このため、演算器やオペランド供給回路や演算結果保存
回路等のハードウェアの増加を抑制しつつ、処理の高速
化を図れるようになる。
Therefore, it is possible to increase the processing speed while suppressing the increase in hardware such as arithmetic units, operand supply circuits, and calculation result storage circuits.

[実施例] 以下、本発明の実施例について説明する。なお、これに
より本発明が限定されるものではない。
[Examples] Examples of the present invention will be described below. Note that the present invention is not limited thereby.

第1図は、本発明の一実施例の情報処理装置1の全体構
成を表わすブロック図である。
FIG. 1 is a block diagram showing the overall configuration of an information processing device 1 according to an embodiment of the present invention.

ストレージ40は、命令列およびオペランドを保持して
いる。
Storage 40 holds instruction sequences and operands.

命令制御部10は、実行すべき命令を、ストレージ40
から線41Aを介して順に読み出し、解読し、解読情報
を生成する。そして、その解読情報を、線12Aを介し
て、演算制御部20に供給する。
The instruction control unit 10 stores the instructions to be executed in the storage 40.
The decoding information is sequentially read out and decoded via the line 41A. The decoding information is then supplied to the arithmetic control section 20 via the line 12A.

演算制御部20は、前記供給された解読情報を一時保持
する。そして、保持している解読情報に基づいて、演算
器75.76および長語長演算器70へのオペランドの
供給や、演算の実行を制御する。
The arithmetic control unit 20 temporarily holds the supplied decoding information. Based on the held decoding information, it controls the supply of operands to the arithmetic units 75 and 76 and the long word length arithmetic unit 70, and the execution of operations.

汎用レジスタ30は、ベース、インデクスと呼ばれるア
ドレス修飾子やオペランドを保持するレジスタ群である
。アドレス修飾子は、線31Aを介して、命令制御部1
0に送られる。オペランドは、線35A〜35Dを介し
て、セレクタ50゜55へ送られる。
The general-purpose registers 30 are a group of registers that hold address modifiers and operands called base and index. The address qualifier is connected to the instruction control unit 1 via line 31A.
Sent to 0. Operands are sent to selectors 50.55 via lines 35A-35D.

オペランドバッファ45は、ストレージ40から線44
A、44Bを介して送り出されてくるオペランドを一時
保持する。そして、保持しているオペランドを、線45
A〜45Dを介して、セレクタ50.55に送る。
Operand buffer 45 is connected to line 44 from storage 40.
Operands sent through A and 44B are temporarily held. Then, set the operand it is holding to line 45
It is sent to selector 50.55 via A to 45D.

セレクタ50.55は、汎用レジスタ30から送られて
くるオペランドが、オペランドバッファ45から送られ
てくるオペランドかのいずれか一方を選択し、線56A
と56B、線56Cと56Dを介して、入力レジスタ6
0.65に送る。
Selectors 50 and 55 select either the operand sent from general-purpose register 30 or the operand sent from operand buffer 45, and select one of the operands sent from general-purpose register 30 and the operand sent from operand buffer 45, and
and 56B, input register 6 via lines 56C and 56D.
Send to 0.65.

入力レジスタ60.65は、セレクタ50,55から送
られてくるオペランドを保持し、線67Aと67B、線
67Gと67Dを介して、長語長演算器70.演算器7
5および76に送る。
Input registers 60.65 hold operands sent from selectors 50, 55, and are sent to long word length calculators 70.65 via lines 67A and 67B and lines 67G and 67D. Arithmetic unit 7
5 and 76.

長語長演算器70は、入力レジスタ60.65に保持さ
れている長語長のオペランド(所定の語長よりも長いオ
ペランド、例えば8バイトのオペランド)に演算を施す
The long word length calculator 70 performs an operation on a long word length operand (operand longer than a predetermined word length, for example, an 8-byte operand) held in the input register 60.65.

演算器75は、入力レジスタ60.65の前半に保持さ
れている短語長のオペランド(所定の語長よりも短いオ
ペランド、例えば4バイトのオペランド)に演算を施す
The arithmetic unit 75 performs an operation on short word length operands (operands shorter than a predetermined word length, for example, 4-byte operands) held in the first half of the input registers 60 and 65.

演算器76は、入力レジスタ60.65の後半に保持さ
れている短語長のオペランドに演算を施す。
The arithmetic unit 76 performs arithmetic operations on the short word length operands held in the latter half of the input registers 60 and 65.

セレクタ80は、長語長演算器70から送られてくる演
算結果が、演算器75および76から送られてくる演算
結果かのいずれか一方を選択し、線89A、89Bを介
して、出力レジスタ90に送る。
The selector 80 selects either the calculation result sent from the long word length calculator 70 or the calculation results sent from the calculation units 75 and 76, and outputs the result to the output register via lines 89A and 89B. Send to 90.

出力レジスタ90は、セレクタ80から送られてくる演
算結果を一時的に保持する。そして、保持されている演
算結果は、線93A、線93Bを介して、ストレージ4
0または汎用レジスタ30に送られる。
The output register 90 temporarily holds the calculation result sent from the selector 80. Then, the held calculation results are transferred to the storage 4 via lines 93A and 93B.
0 or to general purpose register 30.

第2図は、上記情報処理装置1のストレージ40に記憶
されている命令列の一例である。
FIG. 2 is an example of a command sequence stored in the storage 40 of the information processing device 1.

命令rL  2,100(8,12)Jは、汎用レジス
タ30内の第12レジスタの内容をベースとし、第8レ
ジスタの内容をインデクスとし、ディスプレースメント
値゛100′を加算することにより求められる(ストレ
ージ40の)アドレスに保持されている内容を第2オペ
ランド(短語長)として読み出して、汎用レジスタ30
内の第2レジスタに転送する命令である。
The instruction rL 2,100(8,12)J is obtained by using the contents of the 12th register in the general-purpose register 30 as a base, using the contents of the 8th register as an index, and adding the displacement value ``100'' ( The content held at the address (of the storage 40) is read out as the second operand (short word length), and the contents are stored in the general-purpose register 30.
This is an instruction to transfer data to the second register in the memory.

命令「AR4,5Jは、汎用レジスタ30内の第4レジ
スタの内容を第1オペランド、第5レジスタの内容を第
2オペランド(短語長)として読み出して、両者を加算
し、加算結果を汎用レジスタ30内の第4レジスタへ書
き込む命令である。
Instructions “AR4, 5J read the contents of the fourth register in the general-purpose register 30 as the first operand, read the contents of the fifth register as the second operand (short word length), add the two, and store the addition result in the general-purpose register. This is an instruction to write to the fourth register in 30.

命令rD  6,300(9,12)Jは、汎用レジス
タ30内の第12レジスタの内容をベースとし、第9し
ジスタの内容をインデクスとし、ディスプレースメント
値’300’ を加算することにより求められる(スト
レージ40の)アドレスに保持されている内容を第2オ
ペランド(短語長)として読み出して、汎用レジスタ3
0内の第6レジスタの内容と第7レジスタの内容を対に
した第1オペランド(長語長)を除算し、剰余と商をそ
れぞれ汎用レジスタ30内の第6レジスタと第7レジス
タに書き込む命令である。
The instruction rD 6,300(9,12)J is obtained by using the contents of the 12th register in the general-purpose register 30 as a base, using the contents of the 9th register as an index, and adding the displacement value '300'. The content held at the address (of storage 40) is read out as the second operand (short word length), and
An instruction to divide the first operand (long word length), which is a pair of the contents of the sixth register and the contents of the seventh register in 0, and write the remainder and quotient to the sixth and seventh registers in the general-purpose register 30, respectively. It is.

命令rST  3,400(10,12)Jは、汎用レ
ジスタ30内の第3レジスタの内容を第1オペランド(
短語長)として、汎用レジスタ30内の第12レジスタ
の内容をベースとし、第10レジスタの内容をインデク
スとし、ディスプレースメント値゛400′を加算する
ことにより求められる(ストレージ40の)アドレスに
格納する命令である。
The instruction rST 3,400(10,12)J converts the contents of the third register in the general-purpose register 30 to the first operand (
(Short word length), the content of the 12th register in the general-purpose register 30 is used as the base, the content of the 10th register is used as the index, and stored at the address (in the storage 40) determined by adding the displacement value ``400''. This is an order to do so.

命令制御部10は、ストレージ40から読み出した命令
を保持する命令レジスタと、その命令レジスタに保持さ
れている命令を解読して解読情報を生成する命令デコー
ダと、命令のアドレス部からアドレスを生成するアドレ
ス生成回路とを有している。
The instruction control unit 10 includes an instruction register that holds instructions read from the storage 40, an instruction decoder that decodes the instructions held in the instruction register and generates decoding information, and generates an address from the address part of the instruction. and an address generation circuit.

命令デコーダが生成する解読情報の中には、次に示す情
報が含まれる。
The decoding information generated by the instruction decoder includes the following information.

・OPE (演算種類情報)・・長語長演算器70およ
び演算器75.76において実行すべき演算の種類を指
定する。
- OPE (operation type information): Specifies the type of operation to be executed in the long word length calculator 70 and the calculators 75 and 76.

・RRI (レジスタ番号情報)・・・第1オペランド
の読み出しおよび演算結果の書き込みを行うべき汎用レ
ジスタ30内のレジスタ番号を指定する。
- RRI (register number information): Specifies the register number in the general-purpose register 30 where the first operand is to be read and the operation result is to be written.

・RR2(レジスタ番号情報)・・・第2オペランドの
読み出しを行うべき汎用レジスタ30内のレジスタ番号
を指定する。
- RR2 (register number information): Specifies the register number in the general-purpose register 30 from which the second operand is to be read.

・0B1(エントリ番号情報)・・・第1オペランドの
読み出しを行うべきオペランドバッファ45内のエント
リを指定する。
0B1 (entry number information): Specifies the entry in the operand buffer 45 from which the first operand is to be read.

・OH2(エントリ番号情報)・・・第2オペランドの
読み出しを行うべきオペランドバッファ45内のエント
リを指定する。
- OH2 (entry number information): Specifies the entry in the operand buffer 45 from which the second operand is to be read.

(汎用レジスタ読み出し指定情報)・・汎用レジスタ3
0内のレジスタから第1オペランドの読み出しを行うこ
とを示す。
(General-purpose register read specification information)...General-purpose register 3
Indicates that the first operand is read from the register in 0.

(汎用レジスタ読み出し指定情報)・・・汎用レジスタ
30内のレジスタから第2オペランドの読み出しを行う
ことを示す。
(General-purpose register read designation information)...Indicates that the second operand is to be read from a register in the general-purpose register 30.

(ストレージ読み出し指定情報)・・ストレージ40の
指定されたアドレスから第1オペランドの読み出しを行
うことを示す。
(Storage read specification information): Indicates that the first operand is to be read from the specified address of the storage 40.

(ストレージ読み出し指定情報)・・・ストレージ40
の指定されたアドレスから第2オペランドの読み出しを
行うことを示す。
(Storage read specification information)...Storage 40
indicates that the second operand is to be read from the specified address.

・CHG (汎用レジスタ書き込み指定情報)・・・汎
用レジスタ30内のレジスタへ演算結果の書き込みを行
うことを示す。
- CHG (general-purpose register write designation information): Indicates that the calculation result is to be written to a register in the general-purpose register 30.

(ストレージ書き込み指定情報)・・・ストレージ40
の指定されたアドレスへ演算結果の書き込みを行うこと
を示す。
(Storage write specification information)...Storage 40
Indicates that the calculation result will be written to the specified address.

・ NRI ・ NR2 ・ FE2 ・ FEI ・ STO ・STA (書き込みアドレス情報)・・・演算結果の
書き込みを行うべきストレージ40のアドレスを指定す
る。
・NRI ・NR2 ・FE2 ・FEI ・STO ・STA (Write address information) Specifies the address of the storage 40 to which the calculation result is to be written.

・LNG (長語長演算指定情報)・・・長語長演算器
70において演算を施すべきことを示す。
LNG (Long word length calculation designation information): Indicates that the long word length calculation unit 70 should perform calculations.

以上の解読情報0PE−LNGは、線12Aを介して、
演算制御部2oへ送出される。
The above decoding information 0PE-LNG is transmitted via line 12A,
It is sent to the calculation control unit 2o.

・FEA (読み出しアドレス指定情報)・・・第1ま
たは第2オペランドの読み出しを行うべきストレージ4
0のアドレスを指定する。
・FEA (read address specification information)...Storage 4 from which the first or second operand should be read
Specify address 0.

・OBP (保持エントリ指定情報)・・・ストレージ
40から読み出しを行った第1または第2オペランドを
保持すべきオペランドバッファ45のエントリを指定す
る。
OBP (holding entry specification information): Specifies the entry in the operand buffer 45 that should hold the first or second operand read from the storage 40.

以上の解読情報FEA、OBPは、線14Aを介して、
ストレージ40へ送出される。
The above decoding information FEA and OBP are sent via the line 14A,
It is sent to the storage 40.

例えば命令rL  2,100(8,12)Jを解読す
ると、命令制御部10は、ペースレジスタ番号゛12゛
およびインデクスレジスタ番号゛8′を、線13Aを介
して、汎用レジスタ30に送出する。
For example, upon decoding the instruction rL 2,100(8,12)J, the instruction control unit 10 sends the pace register number "12" and the index register number "8' to the general-purpose register 30 via the line 13A.

汎用レジスタ30は、指定された第12レジスタの内容
および第8レジスタの内容を、線31Aを介して、命令
制御部10に返す。
The general-purpose register 30 returns the specified contents of the twelfth register and the contents of the eighth register to the instruction control unit 10 via the line 31A.

命令制御部10は、得られたベースおよびインデクスの
値と、ディスプレースメント値’100’とを加算して
、アドレスを生成する。そして、そのアドレスを、線1
4Aを介して、ストレージ40に送出し、オペランドの
読み出しを起動する。
The instruction control unit 10 adds the obtained base and index values and the displacement value '100' to generate an address. Then write that address to line 1
4A to the storage 40 to start reading the operand.

また、命令制御部10は、1つの命令の解読が完了する
と、線12Aを介して、解読完了信号を演算制御部20
へ送出する。
Further, when the decoding of one instruction is completed, the instruction control unit 10 transmits a decoding completion signal to the arithmetic control unit 20 via the line 12A.
Send to.

次に、第3図は、演算制御部20の内部構成を表わすブ
ロック図である。
Next, FIG. 3 is a block diagram showing the internal configuration of the calculation control section 20. As shown in FIG.

命令キュー21は、第3A図に示されるように、複数の
エントリE1〜Enを有し、命令制御部10から送られ
てくる解読情報をエントリE1〜Enのいずれかに一時
保持する。そして、セレクタSl、S2によりエントリ
E1〜Enを選択して、保持していた解読情報を出力す
る。各エントリE1〜Enは、長語長のオペランドを保
持することが出来る。
As shown in FIG. 3A, the instruction queue 21 has a plurality of entries E1 to En, and temporarily holds decoding information sent from the instruction control unit 10 in one of the entries E1 to En. Then, the entries E1 to En are selected by the selectors Sl and S2, and the held decoding information is output. Each entry E1-En can hold a long word length operand.

さて、第3図に戻り、イン・ポインタ22は、命令制御
部10から送られてくる解読完了信号を受は取るとイン
クリメントされ、次に送られてくる解読情報を保持する
命令キュー21のエントリE1〜Enを線221Aを介
して指示する。
Now, returning to FIG. 3, the in pointer 22 is incremented when it receives a decoding completion signal sent from the instruction control unit 10, and is incremented by an entry in the instruction queue 21 that holds the decoding information sent next. E1-En are indicated via line 221A.

アウト・ポインタ23は、長語長演算器70または演算
器75.76に次に送るべき解読情報を保持している命
令キュー21のエントリE1〜Enを、線231Aを介
して、命令キュー21のセレクタS1に指示する。
The out pointer 23 connects the entries E1 to En of the instruction queue 21 holding the decoding information to be sent next to the long word length calculator 70 or the calculators 75 and 76 through the line 231A. Instruct selector S1.

インクリメンタ24は、アウト・ポインタ23の内容を
インクリメントした値を出力する。すなわち、長語長演
算器70または演算器75.76に次の次に送るべき命
令の解読情報を保持している命令キュー21のエントリ
E1〜Enを、線241Aを介して、セレクタS2に指
示する。
The incrementer 24 increments the contents of the out pointer 23 and outputs a value. That is, the entries E1 to En of the instruction queue 21 holding the decoding information of the next instruction to be sent to the long word length calculator 70 or the calculators 75 and 76 are instructed to the selector S2 via the line 241A. do.

この結果、長語長演算器70または演算器75゜76で
次に演算が開始される命令の解読情報が線210A上に
出力さ′れ、次の次に演算が開始される命令の解読情報
が線210Bに出力されることになる。
As a result, the decoding information of the next instruction to be computed in the long word length arithmetic unit 70 or the arithmetic units 75, 76 is output on the line 210A, and the decoding information of the next instruction to be computed next is output. will be output on line 210B.

なお、以下において、次に演算が開始される命令の解読
情報に関する符号と1次の次に演算が開始される命令の
解読情報に関する符号とを区別する必要がある場合には
、前者には符号の最後にPを付し、後者には符号の最後
にSを付して区別する。
In addition, in the following, when it is necessary to distinguish between the code related to the decoding information of the instruction whose operation is started next and the code related to the decoding information of the instruction whose operation is started next to the primary one, the former is replaced with a code. The latter is distinguished by adding P to the end of the code, and S to the end of the code to distinguish the latter.

線21OA、210Bに出力される解読情報は、制御線
23A、23B、・・・、28Aを介して、第1図に示
された各部に分配される。
The decoding information output on lines 21OA and 210B is distributed to each section shown in FIG. 1 via control lines 23A, 23B, . . . , 28A.

すなわち、線23Aは、汎用レジスタ30に対して、読
み出しのために前記レジスタ番号情報RR1,RR2を
供給する。線24Aは、オペランドバッファ45に対し
て、前記エントリ番号情報OBI、OB2を供給する。
That is, the line 23A supplies the register number information RR1 and RR2 to the general-purpose register 30 for reading. The line 24A supplies the entry number information OBI and OB2 to the operand buffer 45.

線25Aは、セレクタ50に対して、前記汎用レジスタ
読み出し指定情報NRIまたはストレージ読み出し指定
情報FE1を供給する。線25Bは、セレクタ51に対
して、汎用レジスタ読み出し指定情報NR2またはスト
レージ読み出し指定情報FE2を供給する。
The line 25A supplies the general register read designation information NRI or the storage read designation information FE1 to the selector 50. Line 25B supplies general register read designation information NR2 or storage read designation information FE2 to selector 51.

線27A、27B、27Cは、長語長演算器70゜演算
器75.演算器76に対して、演算種類情報OPEを供
給する。線28Aは、セレクタ80に対して、長語長演
算指定情報LNGを送出する。
Lines 27A, 27B, and 27C indicate long word length calculator 70° calculator 75. The calculation type information OPE is supplied to the calculation unit 76. Line 28A sends long word length calculation designation information LNG to selector 80.

線23Bは、汎用レジスタ30に対して、書き込みのた
めに前記レジスタ番号情報RRIおよび汎用レジスタ書
き込み指定情報CHGを送出する。
The line 23B sends the register number information RRI and general register write designation information CHG to the general register 30 for writing.

線24Bは、ストレージ40に対して、書き込みアドレ
ス情報STAおよびストレージ書き込み指定情報STO
を送出する。
The line 24B provides write address information STA and storage write designation information STO to the storage 40.
Send out.

レジスタ271,272およびレジスタ281゜282
は、線21OA、210Bに出力された解読情報を、制
御線23A、23B、・・・、28Aを介して各部に分
配するタイミングを合わせるためのパイプラインレジス
タである。
Registers 271, 272 and registers 281゜282
is a pipeline register for adjusting the timing of distributing the decoding information outputted to the lines 21OA and 210B to each section via the control lines 23A, 23B, . . . , 28A.

線21OA、210B上の解読情報は、命令キュー21
の各エントリE1〜Enに有効な解読情報を保持してい
ることを示すフラグVLDを付加されている。
The decoding information on lines 21OA, 210B is sent to the instruction queue 21
A flag VLD is added to each entry E1 to En to indicate that it holds valid decoding information.

セットアツプ制御回路25は、第4図に示すように、線
21OA、210Bから、フラグVLDP、VLDSと
、長語長演算指定情報LNGP。
As shown in FIG. 4, the setup control circuit 25 outputs flags VLDP and VLDS and long word length calculation designation information LNGP from lines 21OA and 210B.

LNGSとを入力され、それらに基づいて、ホールド信
号’Ho1d’  またはインクリメント信号「+1」
またはダブルインクリメント信号「+2」を、線231
Aを介して、アウト・ポインタ25に出力する。
LNGS is input, and based on them, a hold signal 'Ho1d' or an increment signal '+1' is generated.
Or double increment signal “+2” to line 231.
It is output to the out pointer 25 via A.

すなわち、第4図において、#1は有効な解読情報がエ
ントリE1〜Enに保持されていない状態であり、アウ
ト・ポインタ23を現在の値のままホールドするため、
ホールド信号“Ho1d”を出力する。#2は次に演算
が開始される命令の解読情報がエントリに保持されてい
るが、次の次に演算か開始される命令の解読情報は未だ
エントリに保持されていない状態であり、次の次に演算
が開始される命令の解読情報を取り出すエントリを選択
するため、アウト・ポインタ23をインクリメントする
インクリメント信号「+1」を出力する。#3は次に演
算が開始される命令の解読情報および次の次に演算が開
始される命令の解読情報が共にエントリに保持されてい
る状態であり、長語長演算指定情報LNGPとLNGS
か0であるから、長語長演算器70ではなく、演算器7
5および76によって演算を実行できる。つまり、2つ
の命令の演算が並列に実行可能であるから、次の次の次
に演算が開始される命令の解読情報を取り出すエントリ
を選択するため、アウト・ポインタ23を2つ増加する
ダブルインクリメント信号「+2」を出力する。#4〜
#5は次に演算が開始される命令の解読情報および次の
次に演算が開始される命令の解読情報が共にエントリに
保持されている状態であり、長語長演算指定情報LNG
PまたはLNGSの少なくとも1つが1′であるから、
長語長演算器70によって演算を実行する必要がある。
That is, in FIG. 4, #1 is a state in which valid decoding information is not held in entries E1 to En, and the out pointer 23 is held at its current value.
A hold signal “Ho1d” is output. In #2, the entry holds the decoding information for the next instruction to start the operation, but the decoding information for the next instruction to start the next operation is not held in the entry yet. In order to select an entry for extracting the decoding information of the next instruction whose operation is to be started, an increment signal "+1" for incrementing the out pointer 23 is output. #3 is a state in which the decoding information of the next instruction to start an operation and the decoding information of the next instruction to start the next operation are both held in the entry, and the long word length operation specification information LNGP and LNGS
is 0, so instead of the long word length calculator 70, the calculator 7
5 and 76 can perform the operation. In other words, since the operations of two instructions can be executed in parallel, the out pointer 23 is incremented by two in order to select the entry for extracting the decoding information of the instruction whose operation will start next. Outputs signal "+2". #4~
#5 is a state in which the decoding information of the next instruction to start an operation and the decoding information of the next instruction to start the next operation are both held in the entry, and the long word length operation specification information LNG
Since at least one of P or LNGS is 1',
It is necessary to use the long word length calculator 70 to perform the calculation.

つまり、セレクタ50.55と、入力レジスタ60.6
5と、セレクタ80と、出力レジスタ90と、これらに
接続されるデータ経路を、1つの長語長の命令だけで占
有してしまい、2つの命令を並列に実行できないから、
次の次に演算が開始される命令の解読情報を取り出すエ
ントリを選択するため、アウト・ポインタ23をインク
リメントするインクリメント信号「+1」を出力する。
That is, selector 50.55 and input register 60.6
5, the selector 80, the output register 90, and the data path connected to these are occupied by only one long instruction, and two instructions cannot be executed in parallel.
In order to select an entry for extracting the decoding information of the instruction whose operation is to be started next, an increment signal "+1" is outputted to increment the out pointer 23.

セットアツプ抑止回路26は、線72A、72B、72
Cを介して、長語長演算器70.演算器75、演算器7
6の状態を監視しており、いずれかが演算中であること
を、線261Aにより、前記セットアツプ制御回路25
に報告する。
The set-up inhibit circuit 26 connects lines 72A, 72B, 72
C, the long word length calculator 70. Arithmetic unit 75, arithmetic unit 7
The setup control circuit 25 monitors the states of the circuits 6 and 261A and indicates that one of them is in operation.
Report to.

この報告を受は取ると、セットアツプ制御回路25は、
アウト・ポインタ23のインクリメントを抑止する。
Upon receiving this report, the setup control circuit 25
Incrementing the out pointer 23 is suppressed.

第5図は、汎用レジスタ30の動作を示している。FIG. 5 shows the operation of general-purpose register 30.

長語長演算指定情報■、NGPが0゛であるときには、
1135A、35Cに、それぞれ、次に演算か開始され
る命令についての読み出しのためのレジスタ番号情報R
RIP、RR2Pで指定されたレジスタの内容を出力し
、線35B、35Dに、それぞれ、次の次に演算が開始
される命令についての読み出しのためのレジスタ番号情
報RRISRR2Sで指定されたレジスタの内容を出力
する。
When long word length calculation specification information■ and NGP are 0゛,
1135A and 35C, respectively, register number information R for reading the instruction to be started next.
The contents of the register specified by RIP and RR2P are output, and the contents of the register specified by register number information RRISRR2S for reading for the next instruction whose operation is to be started are sent to lines 35B and 35D, respectively. Output.

一方、長語長演算指定情報LNGPが1′であるときに
は、線35A、35Cに、それぞれ、レジスタ番号情報
RRIP、RR2Pで指定されたレジスタの内容を出力
することは同様であるが、線35B、35Dに、それぞ
れ、上記レジスタ番号情報RRIP、RR2Pで指定さ
れたレジスタの次のレジスタの内容を出力する。結局、
線35Aと35B、35Cと35Dに、それぞれ、レジ
スタ番号情報RRIP、RR2Pで示される長語長のレ
ジスタ対の内容が出力される。
On the other hand, when the long word length calculation specification information LNGP is 1', the contents of the registers specified by the register number information RRIP and RR2P are output to the lines 35A and 35C, respectively, but the lines 35B and 35D, the contents of the register next to the register designated by the register number information RRIP and RR2P are output, respectively. in the end,
The contents of the long word length register pairs indicated by the register number information RRIP and RR2P are output to lines 35A and 35B, 35C and 35D, respectively.

第6図は、オペランドバッファ45の動作を示している
FIG. 6 shows the operation of the operand buffer 45.

長語長演算指定情報LNGPが0°であるときには、線
45A、45Cに、それぞれ、次に演算が開始される命
令についてのエントリ番号情報0BIP、0B2Pで指
定されたエントリの内容の前半(短語長)を出力し、線
45B、45Dに、それぞれ、次の次に演算が開始され
る命令についてのエントリ番号情報0BIS、0B2S
で指定されたエントリの内容の前半(短語長)を出力す
る。
When the long word length operation specification information LNGP is 0°, the first half of the content of the entry specified by the entry number information 0BIP and 0B2P (short word long), and entry number information 0BIS, 0B2S for the next instruction whose operation is to be started is output on lines 45B and 45D, respectively.
Outputs the first half (short word length) of the entry specified by .

一方、長語長演算指定情報LNGPが1′であるときに
は、線35Aと35B1線35Cと35Dに、それぞれ
、エントリ番号情報0BIP。
On the other hand, when the long word length calculation designation information LNGP is 1', entry number information 0BIP is provided on lines 35A and 35B1 and lines 35C and 35D, respectively.

0B2Pで指定されたエントリの内容の前半と後半(長
語長)を出力する。
Outputs the first and second half (long word length) of the contents of the entry specified by 0B2P.

第7図は、セレクタ50および55の動作を示している
FIG. 7 shows the operation of selectors 50 and 55.

長語長演算指定情報LNGPが0°であるときには、汎
用レジスタ読み出し指定情報NRIP。
When the long word length operation designation information LNGP is 0°, the general-purpose register read designation information NRIP.

ストレージ読み出し指定情報FEIPによって、線35
A、45Aの内容を選択して、線56Aに出力すると共
に、汎用レジスタ読み出し指定情報NRIS、ストレー
ジ読み出し指定情報FEISによって、線35B、45
Bの内容を選択して、線56Bに出力する。
By storage read specification information FEIP, line 35
The contents of A and 45A are selected and outputted to line 56A, and the contents of lines 35B and 45 are selected and outputted to line 56A.
The contents of B are selected and output on line 56B.

一方、長語長演算指定情報LNGPが“1°であるとき
には、汎用レジスタ読み出し指定情報NRIP、ストレ
ージ読み出し指定情報FEIPによって、線35A、4
5Aの内容を選択して、線56Aに出力すると共に、線
35B、45Bの内容も選択して、線56Bに出力する
On the other hand, when the long word length calculation specification information LNGP is "1°," the lines 35A, 4
The contents of line 5A are selected and output to line 56A, and the contents of lines 35B and 45B are also selected and output to line 56B.

セレクタ55の動作についても同様である。The same applies to the operation of the selector 55.

以上のように、長語長演算指定情報LNGPによって、
汎用レジスタ30.オペランド・バッファ45.セレク
タ50および55を制御し、長語長演算器70または演
算器75.76が演算を施すために必要な第1オペラン
ドを入力レジスタ60にセットアツプし1、第2オペラ
ンドを入力レジスタ65にセットアツプすることが出来
る。
As described above, by the long word length calculation specification information LNGP,
General purpose register 30. Operand buffer 45. Controls the selectors 50 and 55, sets up the first operand necessary for the long word length arithmetic unit 70 or the arithmetic units 75, 76 to perform the operation in the input register 60, and sets the second operand in the input register 65. It can be raised.

第8図は、入力レジスタ60.65にセットアツプされ
る内容を示している。
FIG. 8 shows the contents set up in the input registers 60 and 65.

長語長演算指定情報LNGPが0°であるときには、入
力レジスタ60.65の前半に、それぞれ、次に演算が
開始される命令の第1オペランド、第2オペランドがセ
ットアツプされ、入力レジスタ60.65の後半に、そ
れぞれ、次の次に演算が開始される命令の第1オペラン
ド、第2オペランドがセットアツプされる。
When the long word length operation designation information LNGP is 0°, the first and second operands of the instruction whose operation is to be started next are set up in the first half of the input registers 60.65, respectively, and the input registers 60. In the second half of step 65, the first and second operands of the next instruction whose operation is to be started are set up.

一方、長語長演算指定情報LNGPが“1°であるとき
には、入力レジスタ60.65全体に、それぞれ次に演
算が開始される命令の長語長の第1オペランド、第2オ
ペランドがセットアツプされる。
On the other hand, when the long word length operation specification information LNGP is "1°," the first and second operands of the long word length of the instruction whose operation is to be started next are set up in the entire input register 60.65. Ru.

その結果、長語長演算指定情報LNGPが0゜のときに
は、次に演算が開始される命令の短語長の演算を演算種
類情報0PEPに従って演算器75において施し、次の
次に演算が開始される命令の短語長の演算を演算種類情
報0PESに従って演算器76において同時に施すこと
が可能となる。
As a result, when the long word length operation specification information LNGP is 0°, the short word length operation of the next instruction to be started is performed in the calculator 75 according to the operation type information 0PEP, and the next operation is started. It becomes possible to simultaneously perform operations on the short word length of the instructions in the arithmetic unit 76 according to the operation type information 0PES.

一方、長語長演算指定情報LNGPが1°のときは、次
に演算が開始される命令の長語長の演算を演算種類情報
0PEPに従って演算器70において施すことが可能と
なる。
On the other hand, when the long word length operation designation information LNGP is 1°, it becomes possible for the arithmetic unit 70 to perform the long word length operation of the next instruction to be started in accordance with the operation type information 0PEP.

セレクタ80は、長語長演算指定情報LNGPが0°で
あるときには、演算器75.76の演算結果を選択して
線89A、89Bに出力する。
When the long word length calculation designation information LNGP is 0°, the selector 80 selects the calculation results of the calculation units 75 and 76 and outputs them to lines 89A and 89B.

一方、長語長演算指定情報LNGPが°1゛のときには
、長語長演算器70の演算結果を選択して線89A、8
9Bに出力する。
On the other hand, when the long word length calculation designation information LNGP is °1, the calculation result of the long word length calculator 70 is selected and the lines 89A, 89
Output to 9B.

出力レジスタ90は、上記演算結果を保持し、汎用レジ
スタ30またはストレージ40へ送出する。
The output register 90 holds the above calculation result and sends it to the general-purpose register 30 or the storage 40.

次に、第2図に示す命令列を用いて、各部の動作を具体
的に説明する。
Next, the operation of each part will be specifically explained using the instruction sequence shown in FIG.

第2図の4つの命令り、AR,D、STは、ストレージ
40から命令制御部10に取り出され、解読される。
The four instructions AR, D, and ST shown in FIG. 2 are retrieved from the storage 40 by the instruction control unit 10 and decoded.

その解読情報は、演算制御部20に送られ、その命令キ
ュー21の各エントリに保持される。
The decoding information is sent to the arithmetic control unit 20 and held in each entry of the instruction queue 21.

アウト・ポインタ23は、次に演算が開始される命令り
の解読情報を保持しているエントリを指示しており、イ
ンクリメンタ24は、次の次に演算が開始される命令A
Rの解読情報を保持しているエントリを指示している。
The out pointer 23 points to the entry that holds the decoding information for the next instruction to start operation, and the incrementer 24 points to the entry that holds the decoding information for the next instruction A to start the operation next.
It indicates the entry that holds the decoding information of R.

前述したように命令り以外は短語長命令だから、命令し
についての長語長演算指定情報LNGPは0゛である。
As mentioned above, since all instructions other than the instruction are short word length instructions, the long word length operation designation information LNGP for the instruction is 0.

そこで、汎用レジスタ30は、第5図に示したように、
命令りの第1オペランドとして、レジスタ番号情報RR
IPにより指定された第2レジスタの内容を線35Aに
送り出す。また、命令ARの第1オペランドとして、レ
ジスタ番号情報RRISにより指定された第4レジスタ
の内容を線35Bに送り出す。さらに、命令ARの第2
オペランドとして、レジスタ番号情報RR2Sにより指
定された第5レジスタの内容を線35Dに送り出す。な
お、命令りの第2オペランドは汎用レジスタ30に無い
から、線35Cは意味を持たない。
Therefore, the general-purpose register 30, as shown in FIG.
As the first operand of the instruction, register number information RR is
The contents of the second register specified by IP are sent out on line 35A. Further, as the first operand of the instruction AR, the contents of the fourth register designated by the register number information RRIS are sent to the line 35B. Furthermore, the second instruction AR
As an operand, the contents of the fifth register specified by register number information RR2S are sent to line 35D. Note that since the second operand of the instruction is not in general-purpose register 30, line 35C has no meaning.

オペランドバッファ45は、第6図に示したように、命
令りの第2オペランドとして、読み出しエントリ番号情
報0BIPにより指定されたエントリのデータを線45
Cに出力する。このデータは、命令りの第2オペランド
用のアドレス部から命令制御部10が生成した(ストレ
ージ40の)アドレスから読み出され、保持されていた
データである。なお、命令りの第1オペランド、命令A
Rの第1オペランド、命令ARの第2オペランドはオペ
ランドバッファ45に無いから、線45A。
As shown in FIG. 6, the operand buffer 45 stores the data of the entry specified by the read entry number information 0BIP on the line 45 as the second operand of the instruction.
Output to C. This data is data read from the address (in the storage 40) generated by the instruction control unit 10 from the address field for the second operand of the instruction and held. Note that the first operand of instruction A
Since the first operand of R and the second operand of instruction AR are not in the operand buffer 45, the line 45A.

45B、45Dは意味を持たない。45B and 45D have no meaning.

セレクタ50は、第7図に示したように、汎用レジスタ
読み出し指定情報NRIP、NRISにより線35A、
35Bを選択して線56A、56Bに出力する。
As shown in FIG. 7, the selector 50 selects the lines 35A and 35A according to the general register read designation information NRIP and NRIS.
35B is selected and output to lines 56A and 56B.

セレクタ55は、第7図に示したように、ストレージ読
み出し指定情報FE2P、汎用レジスタしみ出し指定情
報NR25により線45C,35Dを選択して線56C
,56Dに出力する。
As shown in FIG. 7, the selector 55 selects lines 45C and 35D based on storage readout designation information FE2P and general-purpose register readout designation information NR25, and selects line 56C.
, 56D.

そこで、第8図に示すように、入力レジスタ60の前半
には命令りの第1オペランドがセットアツプされ、後半
には命令ARの第1オペランドがセットアツプされる。
Therefore, as shown in FIG. 8, the first operand of the instruction is set up in the first half of the input register 60, and the first operand of the instruction AR is set up in the second half.

また、入力レジスタ65の前半には命令りの第2オペラ
ンドがセットアツプされ、後半には命令ARの第2オペ
ランドがセットアツプされる。
Further, the second operand of the instruction is set up in the first half of the input register 65, and the second operand of the instruction AR is set up in the second half.

命令しは演算器75において演算が施され、命令ARは
演算器76において演算が施される。
The command is subjected to an operation in the arithmetic unit 75, and the instruction AR is subjected to an operation in the arithmetic unit 76.

セレクタ80は、演算器75.76の演算結果か出力さ
れている線78C,78Dを選択して、その演算結果を
線89A、89Bに出力し、出力レジスタ90にセット
アツプする。
Selector 80 selects lines 78C and 78D on which the calculation results of calculation units 75 and 76 are output, outputs the calculation results to lines 89A and 89B, and sets them up in output register 90.

セットアツプ制御回路25は、第4図の#3に従って、
アウト・ポインタ23を2つ増加する。
The setup control circuit 25 operates according to #3 in FIG.
Increase the out pointer 23 by two.

この結果、アウト・ポインタ23は、次に演算が開始さ
れる命令として、命令りの解読情報を保持している命令
キュー21のエントリを指示し、インクリメンタ24は
、次の次に演算か開始される命令として、命令STの解
読情報を保持しているエントリを指示することとなる。
As a result, the out pointer 23 points to the entry in the instruction queue 21 holding the decoding information for the instruction as the next instruction to start the operation, and the incrementer 24 points to the entry in the instruction queue 21 holding the decoding information for the next instruction. As the instruction to be executed, the entry that holds the decoding information of the instruction ST is designated.

命令りと命令ARが並列に処理され終ると、次の処理が
開始されるが、次に演算が開始される命令りの長語長演
算指定情報LNGPは°1°である。
When the instruction AR and the instruction AR are processed in parallel, the next process is started, and the long word length calculation designation information LNGP of the next instruction to be started is 1°.

従って、汎用レジスタ30は、第5図に示したように、
命令りの第1オペランドとして、レジスタ番号情報RR
IPにより指定された第6レジスタの内容とその次の第
7レジスタの内容を線35A、35Bに送り出す。なお
、命令りの第2オペランドは汎用レジスタ30に無いか
ら、線35C935Dは意味を持たない。
Therefore, the general-purpose register 30, as shown in FIG.
As the first operand of the instruction, register number information RR is
The contents of the sixth register specified by IP and the contents of the next seventh register are sent to lines 35A and 35B. Note that since the second operand of the instruction is not in the general-purpose register 30, line 35C935D has no meaning.

オペランドバッファ45は、第6図に示したように、命
令りの第2オペランドとして、読み出しエントリ番号情
報0BIPにより指定されたエントリに保持されている
データを線45C,45Dの対に出力する。このデータ
は、命令りの第2オペランド用のアドレス部から命令制
御部10が生成した(ストレージ40の)アドレスから
読み出され、保持されていたデータである。なお、命令
りの第1オペランドはオペランドバッファ45に無いか
ら、線45A、45Bは意味を持たない。
As shown in FIG. 6, the operand buffer 45 outputs the data held in the entry designated by the read entry number information 0BIP to the pair of lines 45C and 45D as the second operand of the instruction. This data is data read from the address (in the storage 40) generated by the instruction control unit 10 from the address field for the second operand of the instruction and held. Note that since the first operand of the instruction is not in the operand buffer 45, lines 45A and 45B have no meaning.

セレクタ50は、第7図に示したように、汎用レジスタ
読み出し指定情報NRIPにより線35A、35Bの対
を選択して線56A、56Bに対で出力する。
As shown in FIG. 7, the selector 50 selects a pair of lines 35A and 35B based on general-purpose register read designation information NRIP and outputs the selected pair to lines 56A and 56B.

セレクタ55は、第7図に示したように、ストレージ読
み出し指定情報FE2Pにより線45C145Dの対を
選択して線56C,56Dに出力する。
As shown in FIG. 7, the selector 55 selects the pair of lines 45C and 145D based on the storage read designation information FE2P and outputs the selected pair to lines 56C and 56D.

そこで、第8図に示したように、入力レジスタ60に命
令りの第1オペランドがセットアツプされ、入力レジス
タ65に命令りの第2オペランドがセットアツプされる
Therefore, as shown in FIG. 8, the first operand of the instruction is set up in the input register 60, and the second operand of the instruction is set up in the input register 65.

命令りは、長語長演算器70において演算が施される。The command is operated on by a long word length calculator 70.

セレクタ80は、長語長演算器70の演算結果が出力さ
れている線78A、78Bを選択して、その演算結果を
線89A、89Bに出力し、出力レジスタ90にセット
アツプする。
The selector 80 selects the lines 78A and 78B to which the calculation results of the long word length calculator 70 are output, outputs the calculation results to the lines 89A and 89B, and sets them up in the output register 90.

セットアツプ制御回路25は、第4図の#5に従って、
アウト・ポインタ23を1つインクリメントする。この
結果、アウト・ポインタ23は、次に演算が開始される
命令として、再び命令STの解読情報を保持している命
令キュー21のエントリを指示する。
The setup control circuit 25 operates according to #5 in FIG.
Increment the out pointer 23 by one. As a result, the out pointer 23 again points to the entry in the instruction queue 21 holding the decoding information of the instruction ST as the instruction on which the next operation is to be started.

以下、同様にして、命令STが実行される。Thereafter, the instruction ST is executed in the same manner.

次に、第9図は、本発明の情報処理装置の他の実施例の
全体構成を表わすブロック図である。
Next, FIG. 9 is a block diagram showing the overall configuration of another embodiment of the information processing apparatus of the present invention.

この第9図の情報処理装置101は、第1図の情報処理
装置1における演算器75を長語長演算器70に統合し
、次に演算が開始される命令の演算をすべて長語長演算
器70において施すようにしている。セレクタ82は、
次に演算が開始される命令の長語長演算指定情報LNG
Pが0゛であるときには、演算器76の演算結果が出力
されている線78Dを選択して、その演算結果を線89
Bに出力する。
The information processing device 101 in FIG. 9 integrates the arithmetic unit 75 in the information processing device 1 in FIG. It is applied in a container 70. The selector 82 is
Long word length operation specification information LNG for the next instruction to start operation
When P is 0, select the line 78D on which the calculation result of the calculator 76 is output, and transfer the calculation result to the line 89.
Output to B.

一方、長語長演算指定情報LNGPが“1′であるとき
には、長語長演算器70の演算結果の後半が出力されて
いる線78Bを選択して、その演算結果の後半を線89
Bに出力する。
On the other hand, when the long word length calculation specification information LNGP is "1', the line 78B to which the second half of the calculation result of the long word length calculation unit 70 is output is selected, and the second half of the calculation result is output to the line 89B.
Output to B.

その他の動作は第1図の情報処理装置1と同様である。Other operations are similar to the information processing device 1 shown in FIG.

この情報処理装置101は、第1図の情報処理装置1に
比較して、演算器75に係るハードウェア量を削減でき
るメリットがある。
This information processing device 101 has the advantage that the amount of hardware related to the arithmetic unit 75 can be reduced compared to the information processing device 1 of FIG.

次に、第10図は、本発明の情報処理装置のさらに他の
実施例の全体構成を表わすブロック図である。
Next, FIG. 10 is a block diagram showing the overall configuration of still another embodiment of the information processing apparatus of the present invention.

この第10図の情報処理装置201は、第1図の情報処
理装置1における長語長演算器70を削除し、長語長の
演算を2つの演算器75.76を連結することによって
施すようにしたものである。
The information processing device 201 in FIG. 10 deletes the long word length calculator 70 in the information processing device 1 in FIG. 1, and performs long word length calculations by connecting two calculators 75 and 76. This is what I did.

この情報処理装置201では、演算種類情報0PEPを
供給する線27Bが、2つの演算器75゜76に接続さ
れている。また、長語長演算指定情報LNGPを同時に
供給する。
In this information processing device 201, a line 27B supplying operation type information 0PEP is connected to two arithmetic units 75 and 76. Also, long word length calculation designation information LNGP is supplied at the same time.

演算器76は、長語長演算指定情報LNGPが1°であ
るときは、線27Bにより供給される演算種類情報0P
EPによって示される演算を実行し、桁上がりなど上位
の桁の演算に必要な信号を線77Aに出力する。
When the long word length calculation designation information LNGP is 1°, the calculation unit 76 uses the calculation type information 0P supplied by the line 27B.
It executes the calculation indicated by EP, and outputs a signal necessary for calculation of upper digits such as carry to line 77A.

一方、長語長演算指定情報LNGPが°O゛のときは、
演算種類情報0PESを線27Cより得て演算を行なう
On the other hand, when the long word length calculation specification information LNGP is °O゛,
The calculation type information 0PES is obtained from the line 27C and the calculation is performed.

演算器75は、常に線27Bを介して得られる演算種類
情報0PEPにより指示される演算を実行するが、長語
長演算指定情報LNGPが“1゜のときには、下位の桁
からの桁上がりなどの信号を線77Aから入力して演算
を行う。長語長演算指定情報LNGPが°O°のときは
、桁上がりなどの信号として、演算の種類によって決定
される固定の値を用いる。
The arithmetic unit 75 always executes the arithmetic operation instructed by the arithmetic type information 0PEP obtained via the line 27B, but when the long word length operation designation information LNGP is "1 degree", the arithmetic unit 75 executes the arithmetic operation instructed by the operation type information 0PEP obtained via the line 27B. Calculations are performed by inputting a signal from the line 77A. When the long word length calculation designation information LNGP is °O°, a fixed value determined depending on the type of calculation is used as a signal such as a carry.

この情報処理装置201は、第1図の情報処理装置1に
比較して、長語長演算器70およびセレクタ80に係る
ハードウェア量を削減できるメリットがある。
This information processing device 201 has the advantage that the amount of hardware related to the long word length calculator 70 and the selector 80 can be reduced compared to the information processing device 1 of FIG.

[発明の効果] 本発明の処理装置によれば、演算器や、オペランドの供
給回路や、演算結果の保存回路等のハードウェアの増加
を抑えつつ、並列実行による処理の高速化を実現できる
[Effects of the Invention] According to the processing device of the present invention, it is possible to realize faster processing through parallel execution while suppressing the increase in hardware such as arithmetic units, operand supply circuits, and calculation result storage circuits.

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

第1図は本発明の一実施例の情報処理装置の全体構成を
示すブロック図、第2図は命令列の例示図、第3図は演
算制御部の内部構成を示すブロック図、第3A図は命令
キューの内部構成を示すブロック図、第4図はセットア
ツプ制御回路の動作を示す図表、第5図は汎用レジスタ
の動作を示す図表、第6図はオペランドバッファ45の
動作を示す図表、第7図はセレクタ50と55の動作を
示す図表、第8図は入力レジスタ60と65のセットア
ツプの内容を示す図表、第9図は本発明の他の実施例の
情報処理装置の全体構成を示すブロック図、第10図は
本発明のさらに他の実施例の情報処理装置の全体構成を
示すブロック図である。 (符号の説明) 1.101,201・・・情報処理装置10・・・命令
制御部、  20・・・演算制御部、30・・・汎用レ
ジスタ、  40・・・ストレージ、45・・・オペラ
ンド・バッファ、 50.55.82・・・セレクタ、 60.65・・・入力レジスタ、 70・・・長語長演算器、 75.76・・・(短語長)演算器、 90・・・出力レジスタ。
FIG. 1 is a block diagram showing the overall configuration of an information processing device according to an embodiment of the present invention, FIG. 2 is a diagram illustrating an instruction sequence, FIG. 3 is a block diagram showing the internal configuration of an arithmetic control section, and FIG. 3A 4 is a block diagram showing the internal structure of the instruction queue, FIG. 4 is a chart showing the operation of the setup control circuit, FIG. 5 is a chart showing the operation of the general-purpose register, and FIG. 6 is a chart showing the operation of the operand buffer 45. FIG. 7 is a diagram showing the operation of the selectors 50 and 55, FIG. 8 is a diagram showing the setup contents of the input registers 60 and 65, and FIG. 9 is the overall configuration of an information processing device according to another embodiment of the present invention. FIG. 10 is a block diagram showing the overall configuration of an information processing apparatus according to still another embodiment of the present invention. (Explanation of symbols) 1.101, 201... Information processing device 10... Instruction control unit, 20... Arithmetic control unit, 30... General purpose register, 40... Storage, 45... Operand・Buffer, 50.55.82...Selector, 60.65...Input register, 70...Long word length arithmetic unit, 75.76...(Short word length) arithmetic unit, 90... Output register.

Claims (1)

【特許請求の範囲】 1、(a)第1,第2の命令のそれぞれ要求する第1,
第2のオペランドの長さがともに所定 値より小さいか、又は、該第1,第2のオ ペランドの少なくとも一方が該所定値より 大きいかにより、該第1,第2の命令が要 求する第1,第2の演算を並列に実行する か否かを判別する演算判別手段と、 (b)該第1,第2の演算を並列に実行するか否かに応
じて、該第1,第2のオペランド を並列又は順次供給するオペランド供給手 段と、 (c)該第1,第2の演算を並列に実行するか否かに応
じて、該第1,第2の演算を、供 給された該第1,第2のオペランドに対し て、並列に実行するか又は順次実行する演 算手段と、 (d)前記演算手段で並列又は順次実行された演算結果
を保存するための演算結果保存手 段と、 を有する処理装置。 2、前記オペランド供給手段が、前記オペランドを前記
演算手段へ順次供給するときのオペランド供給回路を用
いて、所定値より小さい前記オペランドを並列に供給す
る請求項1の処理装置。 3、前記演算保存手段が、前記演算手段で順次実行した
演算結果を保存するときの演算結果書き込み回路を用い
て、前記演算手段で並列実行した演算結果を保存する請
求項1の処理装置。 4、前記演算手段が、所定値より小さいオペランドの演
算も小さくないオペランドの演算も施すことができる1
以上の演算器から成る第1の演算器群と、所定値よりも
小さいオペランドの演算だけを施すことができる1また
は2以上の演算器から成る第2の演算器群とを有し、前
記並列実行は前記第1の演算器群と前記第2の演算器群
とでそれぞれ行い、前記順次実行は前記第1の演算器群
によって行なうことを特徴とする請求項1,請求項2ま
たは請求項3の処理装置。 5、前記演算手段が、所定値よりも小さいオペランドの
演算だけを施すことができる演算器を2以上有し、前記
並列実行は各演算器でそれぞれ行ない、前記順次実行は
前記演算器を直列に連結して行なうことを特徴とする請
求項1,請求項2または請求項3の情報処理装置。
[Claims] 1. (a) The first and second commands requesting each of the first and second commands.
Depending on whether the lengths of the second operands are both smaller than the predetermined value, or whether at least one of the first and second operands is larger than the predetermined value, the first , an operation determining means for determining whether or not to execute the second operation in parallel; (b) the first and second operations depending on whether or not to execute the first and second operations in parallel (c) operand supply means for supplying the operands of the supplied operands in parallel or sequentially; (d) operation result storage means for storing the operation results executed in parallel or sequentially by the operation means; A processing device having: 2. The processing device according to claim 1, wherein the operand supply means supplies the operands smaller than a predetermined value in parallel using an operand supply circuit when sequentially supplying the operands to the calculation means. 3. The processing device according to claim 1, wherein said calculation storage means stores calculation results executed in parallel by said calculation means using a calculation result writing circuit for storing calculation results sequentially executed by said calculation means. 4. The calculation means can perform calculations on operands that are smaller than a predetermined value and on operands that are not smaller.
a first arithmetic unit group consisting of the above arithmetic units; and a second arithmetic unit group consisting of one or more arithmetic units capable of performing only operations on operands smaller than a predetermined value; Execution is performed by the first arithmetic unit group and the second arithmetic unit group, respectively, and the sequential execution is performed by the first arithmetic unit group. 3 processing device. 5. The arithmetic means has two or more arithmetic units capable of performing only operations on operands smaller than a predetermined value, the parallel execution is performed in each arithmetic unit, and the sequential execution is performed by connecting the arithmetic units in series. 4. The information processing apparatus according to claim 1, 2 or 3, wherein the information processing apparatus is operated in a connected manner.
JP4482990A 1990-02-26 1990-02-26 Processor Pending JPH03246727A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4482990A JPH03246727A (en) 1990-02-26 1990-02-26 Processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4482990A JPH03246727A (en) 1990-02-26 1990-02-26 Processor

Publications (1)

Publication Number Publication Date
JPH03246727A true JPH03246727A (en) 1991-11-05

Family

ID=12702348

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4482990A Pending JPH03246727A (en) 1990-02-26 1990-02-26 Processor

Country Status (1)

Country Link
JP (1) JPH03246727A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010176350A (en) * 2009-01-29 2010-08-12 Seiko Epson Corp Information processing apparatus, arithmetic processing method, and electronic apparatus
JP2010231321A (en) * 2009-03-26 2010-10-14 Seiko Epson Corp Information processing apparatus, arithmetic processing method and electronic apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010176350A (en) * 2009-01-29 2010-08-12 Seiko Epson Corp Information processing apparatus, arithmetic processing method, and electronic apparatus
JP2010231321A (en) * 2009-03-26 2010-10-14 Seiko Epson Corp Information processing apparatus, arithmetic processing method and electronic apparatus

Similar Documents

Publication Publication Date Title
US4399507A (en) Instruction address stack in the data memory of an instruction-pipelined processor
US20020042869A1 (en) System and method for performing table look-ups using a multiple data fetch architecture
US5881257A (en) Data processing system register control
US5075840A (en) Tightly coupled multiprocessor instruction synchronization
US5784602A (en) Method and apparatus for digital signal processing for integrated circuit architecture
US5748515A (en) Data processing condition code flags
US5881263A (en) Non-instruction base register addressing in a data processing apparatus
US20060053271A1 (en) Processor
US5881259A (en) Input operand size and hi/low word selection control in data processing systems
JPH04172533A (en) Electronic computer
US5969975A (en) Data processing apparatus registers
JP2001516916A (en) Data processing device with digital signal processing capability
EP0772819B1 (en) Apparatus and method for efficiently determining addresses for misaligned data stored in memory
US6687808B2 (en) Data processor using indirect register addressing
RU2193228C2 (en) Addressing registers in data processing device
US6039765A (en) Computer instruction which generates multiple results of different data types to improve software emulation
EP0227900B1 (en) Three address instruction data processing apparatus
JPH03246727A (en) Processor
US6779098B2 (en) Data processing device capable of reading and writing of double precision data in one cycle
US20030009652A1 (en) Data processing system and control method
EP1242903A2 (en) Surface computer and computing method using the same
JPH0528431B2 (en)
JP3278441B2 (en) Vector processing equipment
JP2861560B2 (en) Data processing device
JP2778478B2 (en) Correlation processor