JPH05274143A - Composite condition processing system - Google Patents

Composite condition processing system

Info

Publication number
JPH05274143A
JPH05274143A JP4071980A JP7198092A JPH05274143A JP H05274143 A JPH05274143 A JP H05274143A JP 4071980 A JP4071980 A JP 4071980A JP 7198092 A JP7198092 A JP 7198092A JP H05274143 A JPH05274143 A JP H05274143A
Authority
JP
Japan
Prior art keywords
instruction
comparison
instructions
address
designated
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
Application number
JP4071980A
Other languages
Japanese (ja)
Other versions
JP2928680B2 (en
Inventor
Yoichiro Takeuchi
陽一郎 竹内
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP7198092A priority Critical patent/JP2928680B2/en
Publication of JPH05274143A publication Critical patent/JPH05274143A/en
Application granted granted Critical
Publication of JP2928680B2 publication Critical patent/JP2928680B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

PURPOSE:To curtail the use of a condition branching instruction that affects the parallel processings carried out at an instruction word level and to improve the effect of the high speed processing attained with the parallel execution of instructions. CONSTITUTION:The comparison operations are carried out by the comparison computing elements 2-1-2-3 to designate the independent comparison instructions. Then the genuineness value of these computing results are selected by a selector corresponding to the bit position in a flag register 6 that is designated by (an operand C of) a comparison instruction among those selectors 4-0-4-3. The selected genuineness value is set to a flip-flop F/F forming the bit position. The output of the register 6 is supplied to an instruction fetching address generating circuit 8 together with the mask value M designated by the condition branch instruction to be carried out after the comparison instruction. Thus an AND circuit of the circuit 8 secures an AND of each bit between the output value of the register 6 and the mask value M. Then a branching destination address or the next instruction address is selected and outputted as the address of the instruction to be carried out next in accordance with a fact whether the AND results are all equal to zero or not.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、複数の命令を並列に処
理する並列処理装置に係り、特に複合条件を構成する各
条件の判定を並列に実行する場合に好適な複合条件処理
方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a parallel processing apparatus for processing a plurality of instructions in parallel, and more particularly to a composite condition processing method suitable for executing judgments of respective conditions constituting a composite condition in parallel.

【0002】[0002]

【従来の技術】一般に、ソースプログラム上に記述され
た複合条件は、比較命令(条件判定命令)および条件分
岐命令を組合せて、図5に示すように翻訳される。例え
ば、図6(a)に示す if (X>1 && X<10 && X!=5) { } というC言語のソースプログラム(“&&”は論理積を
示し、“!=”は等しくないことを示す)は、図6
(b)に示すような機械語に翻訳される。
2. Description of the Related Art Generally, a compound condition described in a source program is translated as shown in FIG. 5 by combining a comparison instruction (condition determination instruction) and a conditional branch instruction. For example, the C language source program if (X> 1 && X <10 && X! = 5) {} shown in FIG. 6A (“&&” indicates a logical product, and “! =” Must not be equal). Is shown in FIG.
It is translated into a machine language as shown in (b).

【0003】図6(b)において、“CMP A,B,
C”の形式で表現されている命令は、AとBを比較し、
その大小比較結果(≦,≧,または=)をレジスタCに
格納するための比較命令を示す。
In FIG. 6B, "CMP A, B,
Instructions expressed in the form of C "compare A and B,
A comparison instruction for storing the magnitude comparison result (≦, ≧, or =) in the register C is shown.

【0004】また、“BLE C,L”,“BGE
C,L”,“BEQ C,L”の形式で表現されている
命令は、レジスタCに格納されている比較結果を調べ、
それぞれ≦,≧,=の場合にL(アドレスLの命令)に
分岐するための条件分岐命令を示す。
In addition, "BLE C, L", "BGE"
Instructions expressed in the form of C, L ”,“ BEQ C, L ”check the comparison result stored in the register C,
Conditional branch instructions for branching to L (instruction at address L) when ≤, ≥, and = are shown.

【0005】上記の例は、命令を1つずつ逐次実行する
処理装置の場合である。もし、命令を複数並列に実行で
きる並列処理装置であれば、翻訳時あるいは実行時に命
令を再配置して、比較命令を条件分岐命令に先行して並
列処理することにより命令実行サイクルを短縮すること
が可能となる。
The above example is for a processor that sequentially executes instructions one by one. If the parallel processing device can execute a plurality of instructions in parallel, the instruction execution cycle can be shortened by rearranging the instructions at the time of translation or at the time of execution and processing the comparison instruction in parallel prior to the conditional branch instruction. Is possible.

【0006】このような命令再配置の例を、図6(a)
に示されているC言語のソースプログラムの場合につい
て、図6(c)に示す。この図6(c)の例では、3つ
の比較命令が並列実行され、この命令実行後に、3つの
条件分岐命令が1命令ずつ逐次実行される。
An example of such instruction relocation is shown in FIG.
FIG. 6C shows the case of the C language source program shown in FIG. In the example of FIG. 6C, three comparison instructions are executed in parallel, and after execution of these instructions, three conditional branch instructions are sequentially executed one by one.

【0007】[0007]

【発明が解決しようとする課題】上記したように従来の
並列処理装置では、比較命令および条件分岐命令の組合
せによる複合条件処理において、比較命令は並列実行可
能であるが、条件分岐命令の部分は逐次実行しなければ
ならなかった。このため従来は、複合条件処理に対して
は、並列処理による高速化があまり期待できないという
問題があった。
As described above, in the conventional parallel processing device, the comparison instruction can be executed in parallel in the complex conditional processing by the combination of the comparison instruction and the conditional branch instruction. I had to do it serially. For this reason, conventionally, there has been a problem that the compound condition processing cannot expect much speedup by parallel processing.

【0008】しかも、条件分岐命令処理は、命令の先取
りパイプライン処理に障害となるなど通常の演算命令に
比べて処理サイクル数が多いため、処理の高速化はなお
さら期待できなかった。
Moreover, since the conditional branch instruction processing has a larger number of processing cycles than an ordinary arithmetic instruction such as an obstacle to the instruction prefetch pipeline processing, the processing speed cannot be expected further.

【0009】本発明は上記事情に鑑みてなされたもので
その目的は、複数の命令を並列に処理可能な並列処理装
置における複合条件処理において、命令語レベルでの並
列処理の障害となる条件分岐命令の使用を削減でき、命
令の並列実行による高速化の効果を向上することができ
る複合条件処理方式を提供することにある。
The present invention has been made in view of the above circumstances, and an object of the present invention is to provide conditional branching which is an obstacle to parallel processing at an instruction word level in complex conditional processing in a parallel processing device capable of processing a plurality of instructions in parallel. An object of the present invention is to provide a compound condition processing method capable of reducing the use of instructions and improving the effect of speeding up by parallel execution of instructions.

【0010】[0010]

【課題を解決するための手段】本発明は、複数の命令を
並列に処理可能な並列処理装置において、個々のビット
値が、複数の比較命令(条件判定命令)の実行結果の真
偽値に従って独立に且つ並列にセット/リセット可能な
フラグレジスタ手段と、このフラグレジスタ手段の保持
内容と条件分岐命令によって指定されたマスク値とのビ
ット毎の論理積をとる論理積手段と、この論理積手段の
出力値がゼロであるか否かに応じて上記条件分岐命令の
指定する分岐先アドレスまたは同命令の次の命令のアド
レスを次に実行すべき命令アドレスとして選択する命令
フェッチアドレス選択手段を備え、上記のマスク値で指
定されたフラグレジスタ手段の各ビット位置のビット状
態を複合条件として分岐を実行するか否かを決定するよ
うにしたことを特徴とするものである。
According to the present invention, in a parallel processing device capable of processing a plurality of instructions in parallel, each bit value depends on the true / false value of the execution result of a plurality of comparison instructions (condition determination instructions). A flag register means that can be set / reset independently and in parallel, a logical product means for taking a bitwise logical product of the content held in the flag register means and the mask value designated by the conditional branch instruction, and this logical product means An instruction fetch address selecting means for selecting the branch destination address specified by the conditional branch instruction or the address of the instruction next to the same instruction as the instruction address to be executed next, depending on whether or not the output value of It is characterized in that whether or not to execute a branch is determined by using the bit state of each bit position of the flag register means specified by the mask value as a composite condition. It is an.

【0011】[0011]

【作用】上記の構成においては、複数の比較命令の実行
結果の真偽値に従って、その比較命令の指定するフラグ
レジスタ手段内ビット位置の各ビットが、独立に且つ並
列にセット/リセットされる。次に条件分岐命令が実行
されると、同命令によって指定されたマスク値とフラグ
レジスタ手段の保持内容とのビット毎の論理積がとら
れ、その論理積結果がオールゼロであるか否かにより、
マスク値で指定されたフラグレジスタ手段の各ビット位
置のビット状態が論理積または論理和で結合された複合
条件の成立/不成立が判定される。そして、この判定結
果により、分岐を実行するか否かが決定され、分岐先ア
ドレスまたは次命令アドレスが次に実行すべき命令アド
レスとして選択される。
In the above structure, each bit of the bit position in the flag register means designated by the comparison instruction is set / reset independently and in parallel according to the true / false value of the execution result of the plurality of comparison instructions. When the conditional branch instruction is executed next, a bit-wise logical product of the mask value designated by the instruction and the content held in the flag register means is obtained. Depending on whether or not the result of the logical product is all zero,
It is determined whether or not a compound condition in which the bit states of each bit position of the flag register means designated by the mask value are combined by a logical product or a logical sum is satisfied. Then, based on this determination result, whether or not to execute the branch is determined, and the branch destination address or the next instruction address is selected as the instruction address to be executed next.

【0012】以上の結果、複合条件のうち、論理積のみ
または論理和のみで結合された部分は、条件分岐命令が
1つで済み、複数の条件分岐命令を必要とした従来方式
に比べて、分岐処理によるオーバヘッドが大幅に削減で
きる。
As a result of the above, the part of the compound condition which is connected only by the logical product or only by the logical sum requires only one conditional branch instruction, and compared with the conventional method which requires a plurality of conditional branch instructions, The overhead due to branch processing can be greatly reduced.

【0013】[0013]

【実施例】図1は本発明を適用する並列処理装置の一実
施例を示すブロック構成図であり、演算器やメモリ等、
本発明に関係しない部分は省略されている。なお、本実
施例は、3つの比較命令(条件判定命令)が並列に実行
可能な並列処理装置に実施した場合である。
FIG. 1 is a block diagram showing an embodiment of a parallel processing apparatus to which the present invention is applied.
Portions not related to the present invention are omitted. The present embodiment is a case where three comparison instructions (condition determination instructions) are implemented in a parallel processing device that can be executed in parallel.

【0014】図1において、1-1,1-2,1-3は並列に
実行される3つの比較命令の指定するオペランドを各命
令毎に格納するための比較命令デコードバッファであ
る。このバッファ1-i(i=1〜3)に格納されるオペ
ランドは、比較対象となるオペランドA,Bと、この
A,Bの比較結果の格納先となる後述するフラグレジス
タ6内ビット位置(ここでは、ビット0〜3のいずれ
か)を示すオペランドCの3つである。
In FIG. 1, reference numerals 1-1, 1-2, and 1-3 are comparison instruction decode buffers for storing operands designated by three comparison instructions executed in parallel for each instruction. The operands stored in the buffers 1-i (i = 1 to 3) are the operands A and B to be compared, and the bit position (described later) in the flag register 6 as the storage destination of the comparison result of the A and B. Here, there are three operands C indicating any one of bits 0 to 3).

【0015】本実施例で適用される比較命令は、SLE
比較命令、SGE比較命令およびSEQ比較命令の3種
ある。SLE比較命令は“SLE A,B,C”の形式
で表現されるもので、AとBを比較し、A≦Bのときフ
ラグレジスタ6のビットCに“1”を、そうでないとき
は“0”を設定することを指示する。
The comparison instruction applied in this embodiment is SLE.
There are three types of comparison instructions: SGE comparison instructions and SEQ comparison instructions. The SLE comparison instruction is expressed in the form of "SLE A, B, C". A and B are compared, and when A≤B, "1" is set to the bit C of the flag register 6, and otherwise, "1" is set. Instruct to set "0".

【0016】SGE比較命令は“SGE A,B,C”
の形式で表現されるもので、AとBを比較し、A≧Bの
ときフラグレジスタ6のビットCに“1”を、そうでな
いときは“0”を設定することを指示する。
The SGE comparison instruction is "SGE A, B, C".
It is instructed to compare A and B, and to set bit C of the flag register 6 to “1” when A ≧ B and to set “0” otherwise.

【0017】SEQ比較命令は“SEQ A,B,C”
の形式で表現されるもので、AとBを比較し、A=Bの
ときフラグレジスタ6のビットCに“1”を、そうでな
いときは“0”を設定することを指示する。
The SEQ comparison instruction is "SEQ A, B, C".
It is expressed in the form of, and A and B are compared, and when A = B, it is instructed to set the bit C of the flag register 6 to "1", and otherwise to "0".

【0018】2-1,2-2,2-3はそれぞれ比較命令デコ
ードバッファ1-1,1-2,1-3内のオペランドAおよび
Bの比較演算を行う比較演算器、3-1,3-2,3-3はそ
れぞれビット0〜3に対応した4つの出力線X0 〜X3
,Y0 〜Y3 ,Z0 〜Z3 を有するデコード回路であ
る。デコード回路3-1,3-2,3-3は、比較命令デコー
ドバッファ1-1,1-2,1-3内のオペランドCをデコー
ドし、それぞれ出力線X0 〜X3 ,Y0 〜Y3 ,Z0 〜
Z3 のうちのオペランドCで指定されたビット位置に対
応する出力線をオンする。
Reference numerals 2-1, 2-2 and 2-3 denote comparison operators 3-1 and 3-1, respectively, which perform a comparison operation on the operands A and B in the comparison instruction decode buffers 1-1, 1-2 and 1-3, respectively. 3-2 and 3-3 are four output lines X0 to X3 corresponding to bits 0 to 3, respectively.
, Y0 to Y3, Z0 to Z3. The decode circuits 3-1, 3-2, 3-3 decode the operand C in the comparison instruction decode buffers 1-1, 1-2, 1-3, and output lines X0-X3, Y0-Y3, Z0, respectively. ~
The output line corresponding to the bit position designated by the operand C of Z3 is turned on.

【0019】4-0,4-1,4-2,4-3はセレクタ(SE
L)である。セレクタ4-i(i=0〜3)は、比較演算
器2-1,2-2,2-3の比較結果P,Q,Rのいずれか1
つを、デコード回路3-1,3-2,3-3の出力線Xi ,Y
i ,Zi の状態に応じて選択する。ここでセレクタ4-i
は、図2に示すように、Zi =1(オン)の場合には、
Xi ,Yi の状態に無関係にRを選択し、Yi =1,Z
i =0の場合には、Xi の状態に無関係にQを選択し、
Xi =1,Yi =Zi =0の場合にはPを選択するよう
に構成されている。
4-0, 4-1, 4-2 and 4-3 are selectors (SE
L). The selector 4-i (i = 0 to 3) is one of the comparison results P, Q and R of the comparison calculators 2-1, 2-2 and 2-3.
The output lines Xi, Y of the decoding circuits 3-1, 3-2, 3-3.
Select according to the state of i and Zi. Here selector 4-i
As shown in FIG. 2, when Zi = 1 (on),
R is selected regardless of the states of Xi and Yi, and Yi = 1 and Z
If i = 0, select Q regardless of the state of Xi,
P is selected when Xi = 1 and Yi = Zi = 0.

【0020】このように本実施例では、異なる比較命令
のオペランドCにより同時に同一のビット位置が指定さ
れた場合には、比較演算器2-3の比較結果(比較命令デ
コードバッファ1-3に格納されたオペランドA,Bに対
する比較結果)が最も優先され、その次に比較演算器2
-2の比較結果(比較命令デコードバッファ1-2に格納さ
れたオペランドA,Bに対する比較結果)が優先される
ようになっている。
As described above, in the present embodiment, when the same bit position is simultaneously designated by the operands C of different comparison instructions, the comparison result of the comparison operator 2-3 (stored in the comparison instruction decode buffer 1-3). The comparison result of the operands A and B that have been selected is given the highest priority, and then the comparison operator 2
The comparison result of -2 (the comparison result for the operands A and B stored in the comparison instruction decode buffer 1-2) is prioritized.

【0021】5-0,5-1,5-2,5-3は論理和回路、6
はセレクタ4-0,4-1,4-2,4−3の出力を保持する
ための4つのフリップフロップ(F/F)6−0,6-
1,6-2,6-3からなる4ビットのフラグレジスタであ
る。論理和回路5-i(i=0〜3)は、デコード回路3
-1,3-2,3-3の出力線Xi ,Yi ,Zi の状態の論理
和をとる。フリップフロップ6-iは、フラグレジスタ6
のビットiを構成するもので、論理和回路5-iの出力が
“1”の場合に、セレクタ4-iの出力の状態をラッチす
る。論理和回路5-iの出力が“0”の場合は、フリップ
フロップ6-iの状態は変化しない。
5-0, 5-1, 5-2, 5-3 are OR circuits, 6
Are four flip-flops (F / F) 6-0, 6- for holding the outputs of the selectors 4-0, 4-1, 4-2, 4-3.
It is a 4-bit flag register consisting of 1, 6-2 and 6-3. The OR circuit 5-i (i = 0 to 3) is the decoding circuit 3
The logical sum of the states of the output lines Xi, Yi and Zi of -1, 3-2 and 3-3 is calculated. The flip-flop 6-i is a flag register 6
The bit i of the selector 4-i is configured to latch the state of the output of the selector 4-i when the output of the OR circuit 5-i is "1". When the output of the OR circuit 5-i is "0", the state of the flip-flop 6-i does not change.

【0022】7は条件分岐命令の指定するオペランドを
格納するための分岐命令デコードバッファである。この
オペランドは、フラグレジスタ6の4ビット出力に対す
る4ビットのマスク値Mである。
Reference numeral 7 is a branch instruction decode buffer for storing the operand designated by the conditional branch instruction. This operand is a 4-bit mask value M for the 4-bit output of the flag register 6.

【0023】本実施例で適用される条件分岐命令は、B
NZ条件分岐命令および、BEZ条件分岐命令の2種あ
る。BNZ条件分岐命令は“BNZ M,L”の形式で
表現されるもので、M(マスク値)とフラグレジスタ6
の出力の対応ビット毎の論理積の結果(4ビット)がゼ
ロでない場合に、L(の指定するアドレス)に分岐する
ことを指示する。
The conditional branch instruction applied in this embodiment is B
There are two types, NZ conditional branch instructions and BEZ conditional branch instructions. The BNZ conditional branch instruction is expressed in the format of "BNZ M, L", and has M (mask value) and flag register 6
When the result (4 bits) of the logical product for each corresponding bit of the output of is not zero, it is instructed to branch to L (the address specified by).

【0024】BEZ条件分岐命令は“BEZ M,L”
の形式で表現されるもので、M(マスク値)とフラグレ
ジスタ6の出力の対応ビット毎の論理積の結果(4ビッ
ト)がゼロの場合に、L(分岐先アドレス)に分岐する
ことを指示する。
The BEZ conditional branch instruction is "BEZ M, L".
When the result (4 bits) of the logical product of each corresponding bit of M (mask value) and the output of the flag register 6 is zero, branching to L (branch destination address) is performed. Give instructions.

【0025】8は命令フェッチアドレス生成回路であ
る。この命令フェッチアドレス生成回8は、条件分岐命
令デコードバッファ7内のマスク値Mとフラグレジスタ
6の出力の対応ビット毎の論理積をとり、その結果がゼ
ロであるか否かと、条件分岐命令がBNZまたはBEZ
のいずれであるかによって状態が決まる分岐成立条件指
定信号BTC(BNZの場合はBTC=1,BEZの場
合はBTC=0)とに応じて次に実行すべき命令のアド
レスを生成するように構成されている。
Reference numeral 8 is an instruction fetch address generation circuit. This instruction fetch address generation time 8 takes a logical product of the mask value M in the conditional branch instruction decode buffer 7 and the output of the flag register 6 for each corresponding bit, and whether or not the result is zero and the conditional branch instruction BNZ or BEZ
Of the branch taken condition designating signal BTC (BTC = 1 in the case of BNZ and BTC = 0 in the case of BEZ) whose state is determined depending on which of the two is to be generated. Has been done.

【0026】図3は命令フェッチアドレス生成回路8の
構成を示す。図3において、81は図1に示す分岐命令
デコードバッファ7内のマスク値Mとフラグレジスタ6
の出力の対応ビット毎の論理積をとる論理積回路、82
は論理積回路81の論理積結果である4ビット出力値が
ゼロ(オールゼロ)であるか否かを判定するゼロ判定回
路である。ゼロ判定回路82は、論理積回路81の出力
値がゼロの場合に“1”の信号を、そうでない場合に
“0”の信号を出力する。
FIG. 3 shows the configuration of the instruction fetch address generation circuit 8. 3, 81 is a mask value M and a flag register 6 in the branch instruction decode buffer 7 shown in FIG.
AND circuit for taking the logical product of the outputs of
Is a zero determination circuit that determines whether or not the 4-bit output value that is the logical product result of the logical product circuit 81 is zero (all zeros). The zero determination circuit 82 outputs a signal of "1" when the output value of the AND circuit 81 is zero, and outputs a signal of "0" otherwise.

【0027】83はゼロ判定回路82の出力信号と分岐
成立条件指定信号BTCとの排他的論理和をとり、その
結果を分岐成立/不成立信号T/Fとして出力する排他
的論理和回路、84は次命令アドレスを生成/保持する
プログラムカウンタ、85はセレクタ(SEL)であ
る。セレクタ85は、分岐先アドレスLまたはプログラ
ムカウンタ84の示す次命令アドレス(条件分岐命令の
次の命令アドレス)のいずれか一方を、次に実行すべき
命令のアドレスとして、排他的論理和回路83からの分
岐成立/不成立信号T/Fに応じて選択する。
An exclusive OR circuit 83 takes the exclusive OR of the output signal of the zero decision circuit 82 and the branch taken condition designating signal BTC, and outputs the result as a branch taken / not taken signal T / F. A program counter 85 generates / holds the next instruction address, and 85 is a selector (SEL). The selector 85 uses the branch destination address L or the next instruction address indicated by the program counter 84 (the instruction address next to the conditional branch instruction) as the address of the instruction to be executed next, from the exclusive OR circuit 83. Is selected according to the branch taken / not taken signal T / F.

【0028】次に、本発明の一実施例の動作を、図4
(a)に示す、図6(a)と同一のC言語のソースプロ
グラムに対応して、図4(b)のように配置された機械
語命令を実行する場合を例に説明する。なお、図4
(b)において、同一行に配置されているSLE比較命
令、SGE比較命令およびSEQ比較命令の3つの比較
命令は、並列に処理されることを示す。
Next, the operation of one embodiment of the present invention will be described with reference to FIG.
An example will be described in which the machine language instruction arranged as shown in FIG. 4B is executed corresponding to the same C language source program shown in FIG. 6A as shown in FIG. Note that FIG.
In (b), it is indicated that the three comparison instructions, that is, the SLE comparison instruction, the SGE comparison instruction, and the SEQ comparison instruction, which are arranged in the same row, are processed in parallel.

【0029】まず、上記した3つの比較命令が図示せぬ
デコード回路により並列にデコードされ、その命令の指
定する3つのオペランドA,B,Cがそれぞれ汎用レジ
スタ等(図示せず)から読出される。なお、命令長に余
裕があるならば、オペランドA〜Cを比較命令中に持た
せるようにしても構わない。
First, the three comparison instructions described above are decoded in parallel by a decoding circuit (not shown), and the three operands A, B, and C designated by the instructions are read from a general-purpose register or the like (not shown). .. If the instruction length has a margin, operands A to C may be included in the comparison instruction.

【0030】そして、図4(b)において左側に位置す
る1番目の比較命令(SLE比較命令)の指定するオペ
ランドA,B,C(ここでは、図4(b)から明らかな
ように、A=X,B=1,C=0)は、比較命令デコー
ドバッファ1-1に格納される。また、図4(b)におい
て中央に位置する2番目の比較命令(SGE比較命令)
の指定するオペランドA,B,C(ここでは、図4
(b)から明らかなように、A=X,B=10,C=
1)は、比較命令デコードバッファ1-2に格納される。
また、図4(b)において右側に位置する3番目の比較
命令(SEQ比較命令)の指定するオペランドA,B,
C(ここでは、図4(b)から明らかなように、A=
X,B=5,C=2)は、比較命令デコードバッファ1
-3に格納される。
Then, the operands A, B and C designated by the first comparison instruction (SLE comparison instruction) located on the left side in FIG. 4B (here, as is clear from FIG. 4B, A = X, B = 1, C = 0) is stored in the comparison instruction decode buffer 1-1. In addition, the second comparison instruction (SGE comparison instruction) located at the center in FIG.
Operands A, B, and C designated by
As is clear from (b), A = X, B = 10, C =
1) is stored in the comparison instruction decode buffer 1-2.
Further, the operands A, B, designated by the third comparison instruction (SEQ comparison instruction) located on the right side in FIG.
C (here, as is clear from FIG. 4B, A =
X, B = 5, C = 2) is the comparison instruction decode buffer 1
Stored in -3.

【0031】デコードバッファ1-1〜1-3に格納された
オペランドA,B,Cのうち、A,Bは対応する比較演
算器2-1〜2-3に供給され、Cは対応するデコード回路
3-1〜3-3に供給される。
Of the operands A, B and C stored in the decode buffers 1-1 to 1-3, A and B are supplied to the corresponding comparators 2-1 to 2-3 and C is the corresponding decode. It is supplied to the circuits 3-1 to 3-3.

【0032】比較演算器2-1,2-2,2-3は、自身に供
給されたそれぞれ固有のオペランドA,Bの大小を比較
し、その結果をブール値P,Q,Rとして出力する。こ
の比較演算器2-1,2-2,2-3の出力P,Q,Rは、そ
れぞれセレクタ(SEL)4-0〜4-3に供給される。
The comparison operators 2-1, 2-2, 2-3 compare the magnitudes of the respective unique operands A, B supplied to themselves, and output the results as Boolean values P, Q, R. .. The outputs P, Q and R of the comparison calculators 2-1, 2-2 and 2-3 are supplied to selectors (SEL) 4-0 to 4-3, respectively.

【0033】一方、デコード回路3-1,3-2,3-3は、
自身に供給されたそれぞれ固有のオペランドCをデコー
ドし、それぞれ出力線X0 〜X3 ,Y0 〜Y3 ,Z0 〜
Z3のうちのオペランドCで指定されたビット位置に対
応する出力線をオンする。ここでは、デコード回路3-
1,3-2,3-3に供給されるCの値は、上記したように
それぞれ0,1,2であり、したがってデコード回路3
-1の出力線X0 ,デコード回路3-2の出力線Y1 ,デコ
ード回路3-3の出力線Z2 がオンされる。
On the other hand, the decoding circuits 3-1, 3-2 and 3-3 are
Each unique operand C supplied to itself is decoded and output lines X0-X3, Y0-Y3, Z0-
The output line corresponding to the bit position designated by the operand C of Z3 is turned on. Here, the decoding circuit 3-
The values of C supplied to 1, 3-2 and 3-3 are 0, 1 and 2, respectively, as described above, and therefore the decoding circuit 3
The output line X0 of -1, the output line Y1 of the decoding circuit 3-2, and the output line Z2 of the decoding circuit 3-3 are turned on.

【0034】セレクタ4-0,4-1,4-2,4-3は、デコ
ード回路3-1〜3-3の出力線X0 〜Z0 ,X1 〜Z1 ,
X2 〜Z2 ,X3 〜Z3 の状態に応じ、図2に示す論理
に従う選択動作を行う。これにより、出力線X0 ,Y1
,Z2 がオンされた本実施例では、セレクタ4-0から
は比較演算器2-1の出力Pが、セレクタ4-1からは比較
演算器2-2の出力Qが、そしてセレクタ4-2からは比較
演算器2-3の出力Rが、それぞれ選択出力される。
The selectors 4-0, 4-1, 4-2 and 4-3 output the output lines X0 to Z0, X1 to Z1 of the decoding circuits 3-1 to 3-3.
According to the states of X2 to Z2 and X3 to Z3, the selecting operation according to the logic shown in FIG. 2 is performed. As a result, the output lines X0, Y1
, Z2 are turned on in this embodiment, the output P of the comparison operator 2-1 is output from the selector 4-0, the output Q of the comparison operator 2-2 is output from the selector 4-1 and the selector 4-2. From, the output R of the comparison calculator 2-3 is selectively output.

【0035】論理和回路5-0,5-1,5-2,5-3は、出
力線X0 〜Z0 ,X1 〜Z1 ,X2〜Z2 ,X3 〜Z3
の論理状態の論理和をとる。ここでは、出力線X0 ,Y
1 ,Z2 がオン(“1”)であり、したがって論理和回
路5-0,5-1,5-2の出力は“1”、論理和回路5-3の
出力は“0”となる。
The OR circuits 5-0, 5-1, 5-2 and 5-3 output lines X0 to Z0, X1 to Z1, X2 to Z2 and X3 to Z3.
The logical sum of the logical states of. Here, the output lines X0, Y
Since 1 and Z2 are on ("1"), the outputs of the OR circuits 5-0, 5-1 and 5-2 are "1" and the outputs of the OR circuit 5-3 are "0".

【0036】セレクタ4-0〜4-3の出力は4ビットのフ
ラグレジスタ6を構成するフリップフロップ(F/F)
6-0〜6-3にデータ信号として供給される。このフリッ
プフロップ6-0〜6-3には、論理和回路5-0〜5-3の出
力もラッチ信号として供給される。
The outputs of the selectors 4-0 to 4-3 are flip-flops (F / F) forming a 4-bit flag register 6.
6-0 to 6-3 are supplied as data signals. The outputs of the OR circuits 5-0 to 5-3 are also supplied to the flip-flops 6-0 to 6-3 as latch signals.

【0037】これにより、フリップフロップ6-0,6-
1,6-2には、論理和回路5-0,5-1,5-2の論理
“1”出力に応じて、セレクタ4-0,4-1,4-2の出
力、即ち図4(b)に示すように並列に処理される3つ
の比較命令(SLE比較命令,SGE比較命令,SEQ
比較命令)でそれぞれ指定された比較演算の結果がラッ
チされる。フリップフロップ6-0,6-1,6-2は、この
3つの比較命令(のオペランドC)で指定されるフラグ
レジスタ6内のビット位置(ビット0,1,2)に対応
している。したがって本実施例では、並列に処理される
SLE比較命令,SGE比較命令,SEQ比較命令でそ
れぞれ指定されたオペランドA,Bに対する比較演算の
結果が、その命令のオペランドCで指定されたフラグレ
ジスタ6のビット位置(ビット0,1,2)に並列に格
納されることになる。なお、フラグレジスタ6のビット
3(フリップフロップ6-3)の内容は変化せず、前の状
態が保持される(ここでは、“0”であるものとす
る)。
As a result, the flip-flops 6-0, 6-
Outputs of the selectors 4-0, 4-1 and 4-2, that is, FIG. 4 are provided to 1, 6-2 in accordance with the logical "1" outputs of the OR circuits 5-0, 5-1 and 5-2. As shown in (b), three comparison instructions processed in parallel (SLE comparison instruction, SGE comparison instruction, SEQ
The result of the comparison operation designated by the comparison instruction) is latched. The flip-flops 6-0, 6-1 and 6-2 correspond to the bit positions (bits 0, 1, 2) in the flag register 6 designated by (the operand C of) these three comparison instructions. Therefore, in this embodiment, the result of the comparison operation performed on the operands A and B respectively designated by the SLE comparison instruction, the SGE comparison instruction, and the SEQ comparison instruction processed in parallel is the flag register 6 designated by the operand C of the instruction. Will be stored in parallel at the bit positions (bits 0, 1, 2). Note that the content of bit 3 (flip-flop 6-3) of the flag register 6 does not change and the previous state is held (here, it is assumed to be "0").

【0038】上記の3つの比較命令の並列処理が終了す
ると、図4(b)から明らかなように条件分岐命令(こ
こでは、BNZ条件分岐命令)の処理が開始される。す
ると、BNZ条件分岐命令が図示せぬデコード回路によ
りデコードされ、その命令の指定する4ビットのマスク
値Mが汎用レジスタ等(図示せず)から読出される。本
実施例におけるマスク値Mは“1110”(16進表現
で7)であり、フラグレジスタ6のビット0〜3のう
ち、ビット0〜2の値に応じた条件分岐を行うことを指
定する。このマスク値Mを条件分岐命令中に持たせるこ
とも可能である。また、上記のBNZ条件分岐命令デコ
ードにより、同命令の指定する分岐先アドレスL(ここ
では、$1)が求められ、更に分岐成立条件指定信号B
TC(ここでは“1”)が生成される。
When the parallel processing of the above three comparison instructions is completed, the processing of the conditional branch instruction (here, the BNZ conditional branch instruction) is started, as is apparent from FIG. Then, the BNZ conditional branch instruction is decoded by a decode circuit (not shown), and the 4-bit mask value M designated by the instruction is read from a general-purpose register or the like (not shown). The mask value M in this embodiment is "1110" (7 in hexadecimal notation), and specifies that the conditional branching according to the value of bits 0-2 of bits 0-3 of the flag register 6 is performed. It is also possible to have this mask value M in the conditional branch instruction. Further, by the above-mentioned BNZ conditional branch instruction decoding, the branch destination address L (here, $ 1) designated by the instruction is obtained, and the branch taken condition designation signal B is further obtained.
TC (here, "1") is generated.

【0039】さて、BNZ条件分岐命令の指定する4ビ
ットマスク値Mは、分岐命令デコードバッファ7に格納
される。このバッファ7に格納されたマスク値Mは、4
ビットフラグレジスタ6の出力と共に、命令フェッチア
ドレス生成回路8に読出される。
The 4-bit mask value M designated by the BNZ conditional branch instruction is stored in the branch instruction decode buffer 7. The mask value M stored in this buffer 7 is 4
It is read out to the instruction fetch address generation circuit 8 together with the output of the bit flag register 6.

【0040】命令フェッチアドレス生成回路8内の論理
積回路81は、フラグレジスタ6の4ビット出力値と4
ビットマスク値Mとの対応するビット毎の論理積をと
る。この論理積回路81の論理積結果はゼロ判定回路8
2に供給される。ゼロ判定回路82は、論理積回路81
の4ビットの論理積結果が全て“0”であるか否かを判
定し、全て“0”であれば“1”の、そうでなければ
“0”の信号を出力する。
The logical product circuit 81 in the instruction fetch address generation circuit 8 and the 4-bit output value of the flag register 6 and 4
The logical product of each bit corresponding to the bit mask value M is calculated. The logical product result of the logical product circuit 81 is the zero determination circuit 8
2 is supplied. The zero determination circuit 82 is an AND circuit 81.
It is determined whether or not the 4-bit logical product results of all are "0", and if all are "0", a signal of "1" is output, and if not, a signal of "0" is output.

【0041】ゼロ判定回路82の出力信号は前記分岐成
立条件指定信号BTCと共に排他的論理和回路83に供
給される。排他的論理和回路83は、BTC=0の場合
にはゼロ判定回路82の出力信号(ゼロ/非ゼロ判定結
果)をそのまま分岐成立/不成立信号T/Fとして出力
する。一方、本実施例のようにBTC=1の場合には、
排他的論理和回路83は、ゼロ判定回路82の出力信号
(ゼロ/非ゼロ判定結果)のレベルを反転して分岐成立
/不成立信号T/Fとして出力する。この排他的論理和
回路83から出力される分岐成立/不成立信号T/Fは
セレクタ85の選択信号として用いられる。
The output signal of the zero decision circuit 82 is supplied to the exclusive OR circuit 83 together with the branch taken condition designating signal BTC. When BTC = 0, the exclusive OR circuit 83 outputs the output signal (zero / non-zero determination result) of the zero determination circuit 82 as it is as the branch taken / not taken signal T / F. On the other hand, when BTC = 1 as in this embodiment,
The exclusive OR circuit 83 inverts the level of the output signal (zero / non-zero determination result) of the zero determination circuit 82 and outputs it as a branch taken / not taken signal T / F. The branch taken / not taken signal T / F output from the exclusive OR circuit 83 is used as a selection signal of the selector 85.

【0042】セレクタ85は、T/F=1の場合には、
条件分岐命令(ここでは、BNZ条件分岐命令)で指定
された分岐先アドレスL(ここでは、$1)を次に実行
すべき命令のアドレスとして選択し、T/F=0の場合
には、プログラムカウンタ84の示す次命令アドレス、
即ちこの条件分岐命令(BNZ条件分岐命令)の次の命
令アドレスを次に実行すべき命令のアドレスとして選択
する。
The selector 85, when T / F = 1,
The branch destination address L (here, $ 1) designated by the conditional branch instruction (here, the BNZ conditional branch instruction) is selected as the address of the instruction to be executed next, and when T / F = 0, The next instruction address indicated by the program counter 84,
That is, the instruction address next to this conditional branch instruction (BNZ conditional branch instruction) is selected as the address of the instruction to be executed next.

【0043】このように、図4(b)に示すBNZ条件
分岐命令が実行されると、同命令の次に実行すべき命令
のアドレス(分岐先アドレスまたは次命令アドレス)
が、同命令に先行して並列に実行された3つの比較命令
(SLE比較命令,SGE比較命令,SEQ比較命令)
の実行結果(からなる複合条件)に従って、命令フェッ
チアドレス生成回路8により生成される。
As described above, when the BNZ conditional branch instruction shown in FIG. 4B is executed, the address of the instruction to be executed next to the same instruction (branch destination address or next instruction address)
, But three comparison instructions executed in parallel prior to the same instruction (SLE comparison instruction, SGE comparison instruction, SEQ comparison instruction)
Is generated by the instruction fetch address generation circuit 8 according to the execution result of (compound condition consisting of).

【0044】ここでは、上記3つの比較命令の実行結果
の1つでも条件成立となっていれば、即ち図4(a)に
示す複合条件が不成立であれば、ゼロ判定回路82の出
力は非ゼロを示す“0”となり、論理“1”の分岐成立
条件指定信号BTCに応じて分岐成立/不成立信号T/
Fが“1”となることから、BNZ条件分岐命令の指定
する分岐先アドレス$1が生成(選択)される。これに
対して、上記3つの比較命令の実行結果の全てが条件不
成立となっていれば、即ち図4(a)に示す複合条件が
成立していれば、ゼロ判定回路82の出力はゼロを示す
“1”となり、論理“1”の分岐成立条件指定信号BT
Cに応じて分岐成立/不成立信号T/Fが“0”となる
ことから、プログラムカウンタ84からの次命令アドレ
スが生成(選択)される。そして、生成されたアドレス
の命令がフェッチされる。
Here, if even one of the execution results of the above three comparison instructions is satisfied, that is, if the composite condition shown in FIG. It becomes “0” indicating zero, and the branch taken / not taken signal T / according to the branch taken condition designating signal BTC of logic “1”.
Since F becomes "1", the branch destination address $ 1 designated by the BNZ conditional branch instruction is generated (selected). On the other hand, if all the execution results of the above three comparison instructions are not satisfied, that is, if the composite condition shown in FIG. 4A is satisfied, the output of the zero determination circuit 82 is zero. It becomes "1" as shown, and a branch taken condition designation signal BT of logic "1"
Since the branch taken / not taken signal T / F becomes "0" according to C, the next instruction address from the program counter 84 is generated (selected). Then, the instruction of the generated address is fetched.

【0045】さて、各命令が1サイクルで実行できるも
のとすると、図4(b)に示す本実施例のプログラム処
理では、条件成立時の処理に入るまでに、3つの比較命
令を並列に処理するための1サイクルと、次の条件分岐
命令を処理するための1サイクルの計2サイクルを要す
る。これに対し、図6(b),(c)に示す従来技術の
例では、それぞれ6サイクル,4サイクルを要し、本実
施例と比較して多くのサイクルを必要とする。
Now, assuming that each instruction can be executed in one cycle, in the program processing of this embodiment shown in FIG. 4B, three comparison instructions are processed in parallel before the processing when the condition is satisfied. 2 cycles of 1 cycle for executing the next conditional branch instruction and 1 cycle for processing the next conditional branch instruction. On the other hand, in the example of the prior art shown in FIGS. 6B and 6C, 6 cycles and 4 cycles are required, respectively, and many cycles are required as compared with the present embodiment.

【0046】なお、フラグレジスタ6に保持された比較
結果は、その後に実行される他の比較命令で同一のビッ
ト位置が指定されないならば、そのまま保持されるた
め、その比較結果を再度利用することができる。この場
合、再度同一の比較命令を実行しなくても済むようにな
る。
The comparison result held in the flag register 6 is held as it is, unless the same bit position is designated by another comparison instruction executed thereafter. Therefore, the comparison result should be reused. You can In this case, it is not necessary to execute the same comparison instruction again.

【0047】以上は、論理積で結合された複合条件に対
する複合条件処理について説明したが、論理和で結合さ
れた複合条件に対する複合条件処理にも適用できる。但
し、フラグレジスタ6に対する設定値は、前記実施例と
は逆に、比較命令の比較判定が不成立の場合に“1”と
する必要がある。
Although the composite condition processing for the composite condition combined by the logical product has been described above, it can be applied to the composite condition processing for the composite condition combined by the logical sum. However, the setting value for the flag register 6 needs to be "1" when the comparison judgment of the comparison instruction is not established contrary to the above-mentioned embodiment.

【0048】また、以上は3つの比較命令が並列に処理
可能な並列処理装置に実施した場合について説明した
が、これに限るものではなく、本発明は、複数の比較命
令が並列に処理可能な並列処理装置全般に応用可能であ
る。また、並列に処理される命令は独立している必要は
なく、1命令中に、複数の命令語フィールドを持つ命令
(いわゆるVLIW命令)を適用する並列処理装置にも
応用可能である。
Further, although the case where the three comparison instructions are processed in parallel has been described above, the present invention is not limited to this, and the present invention can process a plurality of comparison instructions in parallel. It is applicable to all parallel processors. Further, the instructions to be processed in parallel do not have to be independent, and can be applied to a parallel processing device that applies an instruction having a plurality of instruction word fields (so-called VLIW instruction) in one instruction.

【0049】[0049]

【発明の効果】以上詳述したように本発明によれば、複
数の比較命令の実行結果の真偽値に従って、その比較命
令の指定するフラグレジスタ手段内ビット位置の各ビッ
トを、独立に且つ並列にセット/リセットし、次に条件
分岐命令が実行されると、同命令によって指定されたマ
スク値の示すフラグレジスタ手段の各ビット位置のビッ
ト状態を複合条件として分岐を実行するか否かを決定す
る構成としたので、論理積のみまたは論理和のみで結合
された部分は、条件分岐命令が1つで済む。このため、
複数の条件分岐命令を必要とした従来方式に比べて、分
岐処理によるオーバヘッドが大幅に削減でき、命令の並
列処理による高速化の効果を向上させることができる。
As described in detail above, according to the present invention, each bit of the bit position in the flag register means designated by the comparison instruction is independently and independently according to the truth value of the execution result of the plurality of comparison instructions. When set / reset in parallel and then a conditional branch instruction is executed, it is determined whether or not branch is executed with the bit state of each bit position of the flag register means indicated by the mask value designated by the instruction as a composite condition. Since the configuration is such that it is determined, only one conditional branch instruction is required for the portions that are connected only by the logical product or only the logical sum. For this reason,
Compared to the conventional method that requires a plurality of conditional branch instructions, the overhead of branch processing can be significantly reduced, and the effect of speeding up by parallel processing of instructions can be improved.

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

【図1】本発明の複合条件処理方式を適用する並列処理
装置の一実施例を示すブロック構成図。
FIG. 1 is a block configuration diagram showing an embodiment of a parallel processing device to which a compound condition processing method of the present invention is applied.

【図2】同実施例におけるデコード回路3-1〜3-3の出
力線Xi 〜Zi の論理状態とセレクタ(SEL)4-i
(i=0〜3)の選択内容との対応関係を示す図。
FIG. 2 is a view showing the logical states of output lines Xi to Zi of the decoding circuits 3-1 to 3-3 and the selector (SEL) 4-i in the embodiment.
The figure which shows the correspondence with the selection content of (i = 0-3).

【図3】同実施例における命令フェッチアドレス生成回
路8の構成を示すブロック図。
FIG. 3 is a block diagram showing a configuration of an instruction fetch address generation circuit 8 in the same embodiment.

【図4】同実施例における複合条件処理を伴うソースプ
ログラムと対応する機械語命令列の例を示す図。
FIG. 4 is a diagram showing an example of a machine language instruction sequence corresponding to a source program accompanied by complex condition processing in the embodiment.

【図5】ソースプログラム上に記述された複合条件を比
較命令と条件分岐命令の組合せで表現した基本形を示す
図。
FIG. 5 is a diagram showing a basic form in which a compound condition described in a source program is expressed by a combination of a comparison instruction and a conditional branch instruction.

【図6】従来の複合条件処理を説明するための、ソース
プログラムと対応する機械語命令列の例を示す図。
FIG. 6 is a diagram showing an example of a machine language instruction sequence corresponding to a source program for explaining a conventional compound condition process.

【符号の説明】[Explanation of symbols]

2-1〜2-3…比較演算器、3-1〜3-3…デコード回路、
4-0〜4-3…セレクタ(SEL)、5-0〜5-3…論理和
回路、6…フラグレジスタ、6-0〜6-3…フリップフロ
ップ(F/F)、8…命令フェッチアドレス生成回路、
81…論理積回路、82…ゼロ判定回路、83…排他的
論理和回路、84…プログラムカウンタ、85…セレク
タ(SEL、命令フェッチアドレス選択手段)。
2-1 to 2-3 ... Comparison arithmetic unit, 3-1 to 3-3 ... Decoding circuit,
4-0 to 4-3 ... selector (SEL), 5-0 to 5-3 ... logical sum circuit, 6 ... flag register, 6-0 to 6-3 ... flip-flop (F / F), 8 ... instruction fetch Address generation circuit,
81 ... AND circuit, 82 ... Zero determination circuit, 83 ... Exclusive OR circuit, 84 ... Program counter, 85 ... Selector (SEL, instruction fetch address selecting means).

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 複数の命令を並列に処理可能な並列処理
装置において、 複数の比較命令の実行結果の真偽値に従って独立に且つ
並列にビットをセット/リセット可能なフラグレジスタ
手段と、 このフラグレジスタ手段の保持内容と条件分岐命令によ
って指定されたマスク値とのビット毎の論理積をとる論
理積手段と、 この論理積手段の出力値がゼロであるか否かに応じて前
記条件分岐命令の指定する分岐先アドレスまたは同命令
の次の命令のアドレスを次に実行すべき命令アドレスと
して選択する命令フェッチアドレス選択手段と、 を具備し、前記マスク値で指定されたフラグレジスタ手
段の各ビット位置のビット状態を複合条件として分岐を
実行するか否かを決定するようにしたことを特徴とする
複合条件処理方式。
1. A parallel processing device capable of processing a plurality of instructions in parallel, and flag register means capable of setting / resetting bits independently and in parallel according to the true / false value of the execution result of a plurality of comparison instructions, and this flag. A logical product means for taking a bitwise logical product of the contents held in the register means and the mask value designated by the conditional branch instruction, and the conditional branch instruction depending on whether the output value of the logical product means is zero or not. Each of the bits of the flag register means designated by the mask value, comprising: an instruction fetch address selecting means for selecting a branch destination address designated by or the address of an instruction next to the same instruction as an instruction address to be executed next. A composite condition processing method characterized in that whether or not to execute a branch is determined by using a bit state of a position as a composite condition.
【請求項2】 前記比較命令の実行結果に従ってセット
/リセットされる前記フラグレジスタ手段のビットの位
置は、同比較命令によって指定されることを特徴とする
請求項1記載の複合条件処理方式。
2. The composite condition processing method according to claim 1, wherein the bit position of the flag register means set / reset according to the execution result of the comparison instruction is designated by the comparison instruction.
JP7198092A 1992-03-30 1992-03-30 Compound condition processing method Expired - Fee Related JP2928680B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7198092A JP2928680B2 (en) 1992-03-30 1992-03-30 Compound condition processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7198092A JP2928680B2 (en) 1992-03-30 1992-03-30 Compound condition processing method

Publications (2)

Publication Number Publication Date
JPH05274143A true JPH05274143A (en) 1993-10-22
JP2928680B2 JP2928680B2 (en) 1999-08-03

Family

ID=13476124

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7198092A Expired - Fee Related JP2928680B2 (en) 1992-03-30 1992-03-30 Compound condition processing method

Country Status (1)

Country Link
JP (1) JP2928680B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100385495B1 (en) * 1994-09-16 2003-08-14 코닌클리케 필립스 일렉트로닉스 엔.브이. Processing system with word alignment branch target
US7797519B2 (en) 2007-06-07 2010-09-14 Nec Electronics Corporation Processor apparatus with instruction set for storing comparison conditions and for evaluating branch condition values against results of identified complex comparison conditions
JP2012252670A (en) * 2011-06-07 2012-12-20 Toshiba Corp Arithmetic device and program
JP2013152477A (en) * 2007-03-22 2013-08-08 Qualcomm Inc Electric musical instrument digital interface hardware instruction set
US8635434B2 (en) 2006-12-13 2014-01-21 Sony Corporation Mathematical operation processing apparatus for performing high speed mathematical operations
CN103718157A (en) * 2011-04-01 2014-04-09 英特尔公司 Systems, apparatuses, and methods for jumps using a mask register

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100385495B1 (en) * 1994-09-16 2003-08-14 코닌클리케 필립스 일렉트로닉스 엔.브이. Processing system with word alignment branch target
US8635434B2 (en) 2006-12-13 2014-01-21 Sony Corporation Mathematical operation processing apparatus for performing high speed mathematical operations
JP2013152477A (en) * 2007-03-22 2013-08-08 Qualcomm Inc Electric musical instrument digital interface hardware instruction set
US7797519B2 (en) 2007-06-07 2010-09-14 Nec Electronics Corporation Processor apparatus with instruction set for storing comparison conditions and for evaluating branch condition values against results of identified complex comparison conditions
CN103718157A (en) * 2011-04-01 2014-04-09 英特尔公司 Systems, apparatuses, and methods for jumps using a mask register
JP2014510351A (en) * 2011-04-01 2014-04-24 インテル・コーポレーション System, apparatus, and method for performing jump using mask register
JP2012252670A (en) * 2011-06-07 2012-12-20 Toshiba Corp Arithmetic device and program

Also Published As

Publication number Publication date
JP2928680B2 (en) 1999-08-03

Similar Documents

Publication Publication Date Title
EP0426393B1 (en) Instructing method and execution system
US4399507A (en) Instruction address stack in the data memory of an instruction-pipelined processor
US4578750A (en) Code determination using half-adder based operand comparator
AU618142B2 (en) Tightly coupled multiprocessor instruction synchronization
EP0378830B1 (en) Method and apparatus for handling multiple condition codes as for a parallel pipeline computer
US4541045A (en) Microprocessor architecture employing efficient operand and instruction addressing
US4739470A (en) Data processing system
US4954947A (en) Instruction processor for processing branch instruction at high speed
JP3004108B2 (en) Information processing device
JPH03286332A (en) Digital data processor
JPH02227730A (en) Data processing system
JPS6061864A (en) Parallel vector processor
US4677549A (en) Pipelined data processor system having increased processing speed
US5349671A (en) Microprocessor system generating instruction fetch addresses at high speed
JP2928680B2 (en) Compound condition processing method
EP0497579B1 (en) Circuit for executing conditional branch instructions in a pipelined processor
JPH05108345A (en) Branch instruction processor
US4914581A (en) Method and apparatus for explicitly evaluating conditions in a data processor
JPH11119998A (en) Information processor
JP2000231488A (en) Processor
US11269651B2 (en) Reusing adjacent SIMD unit for fast wide result generation
US9250898B2 (en) VLIW processor, instruction structure, and instruction execution method
JP2812610B2 (en) Pipeline control method
JP2919184B2 (en) Information processing device that performs pipeline processing
EP1041720B1 (en) Binary zero determination signal generating circuit

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees