JPH02226458A - Pipe line processing system for parallel processing computer - Google Patents

Pipe line processing system for parallel processing computer

Info

Publication number
JPH02226458A
JPH02226458A JP4765489A JP4765489A JPH02226458A JP H02226458 A JPH02226458 A JP H02226458A JP 4765489 A JP4765489 A JP 4765489A JP 4765489 A JP4765489 A JP 4765489A JP H02226458 A JPH02226458 A JP H02226458A
Authority
JP
Japan
Prior art keywords
instruction
processing
processes
pipeline
pipe line
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
JP4765489A
Other languages
Japanese (ja)
Inventor
Michihide Kimura
木村 通秀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP4765489A priority Critical patent/JPH02226458A/en
Publication of JPH02226458A publication Critical patent/JPH02226458A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Multi Processors (AREA)

Abstract

PURPOSE:To attain a high speed processing and to efficiently deal with a frequent interrupting processing from the other processor by alternately receiving plural processes for a pipe line processing. CONSTITUTION:Respective instructions are set in instruction buffers 2-1 and 2-2 from two processes. An instruction switch circuit 3 alternately receives the instructions of two processes. A result decoded in a stage by a decoding circuit 4 is set in a pipe line register 5. At that time, it is indicated by a process flag 5-1 that to which process in two processes the instruction decoded by the stage belongs. Check means 11 and 12 decide to which stage the instruction affected by the occurrence of the situation is positioned when the situation that the flow of the pipe line processing is not in a normal state has occurred. Thus, efficient correspondence to the frequent interrupting processing from the other processor is attained.

Description

【発明の詳細な説明】 〔概要〕 並列処理計算機における各プロセッサ内部の処理をパイ
プライン処理によって実行する・lff1列処理計算機
パイプライン処理方式に関し。
DETAILED DESCRIPTION OF THE INVENTION [Summary] This invention relates to an lff single-column processing computer pipeline processing method in which processing inside each processor in a parallel processing computer is executed by pipeline processing.

パイプライン処理によっ′ζ高速化を図ると共に他プロ
セツサからの頻繁な割り込み処理にも効−暫よく対処で
きるようにすることを目的としており。
The purpose is to speed up 'ζ through pipeline processing and to be able to effectively handle frequent interrupt processing from other processors.

n段のステージに区分させて構成されるパイプライン処
理の入力側に、互に異なる複数個のブロセスを交替で受
入れる命令スイッチ回路を設けると共に、上記ステージ
に対応してプロセスフラグをもうけるようにし1例えば
分岐命令の実行などに当って非所望にキャンセルされる
ステージ処理結果を少なくした構成をもっている。
An instruction switch circuit is provided on the input side of a pipeline process that is divided into n stages to alternately accept a plurality of different processes, and process flags are provided corresponding to the stages. For example, it has a configuration that reduces the number of stage processing results that are undesirably canceled when executing a branch instruction.

〔産業上の利用分野〕[Industrial application field]

本発明は、並列処理計算機における各プロセッサ内部の
処理をパイプライン処理によって実行する並列処理計算
機パイプライン処理方式に関する。
The present invention relates to a parallel processing computer pipeline processing method for executing processing inside each processor in a parallel processing computer by pipeline processing.

従来、並列処理計算機は数値計算などの比較的単調な演
算を高速化するためのものとして実現されてきた。しか
し、近年1人工知能の分野などのデータに依存した処理
方法が考府され、上記並列処理計算機を用いることが考
慮されつつある。この場合、パイプライン処理を導入し
ようとすると。
Conventionally, parallel processing computers have been realized to speed up relatively monotonous operations such as numerical calculations. However, in recent years, data-dependent processing methods such as those in the field of artificial intelligence have been developed, and the use of the above-mentioned parallel processing computers is being considered. In this case, if you try to introduce pipelining.

他プロセツサからの非同期な割り込みなどのためにパイ
プラインの流れが乱れ、効率が上らないことが生じる。
Due to asynchronous interrupts from other processors, the flow of the pipeline is disrupted and efficiency cannot be improved.

〔従来の技術〕[Conventional technology]

パイプライン処理は、従来から処理の高速化の手法とし
て広く用いられているが2分岐処理が必要となった場合
やレジスタの使用状況からの制約などが生じた場合に、
パイプラインの正常な流れが乱される。
Pipeline processing has been widely used as a method to speed up processing, but it can be used when two-branch processing is required or when restrictions arise from register usage.
The normal flow of the pipeline is disrupted.

第5図は分岐処理の態様を示し、第6図は代入順序の制
約時の態様を示している。
FIG. 5 shows an aspect of branch processing, and FIG. 6 shows an aspect when the assignment order is restricted.

第5図においては、n=4のステージからなるパイプラ
イン処理の場合が示されており1図示の命令lotが分
岐命令であって分岐が生じたことが時刻T、において判
明したとする場合が示されている。この場合には1図示
のり【】<、命令102゜命令103.命令104がキ
ャンセルされ、これら各命令に関して時刻T0以前に行
われた処理が無駄となる。なお命令105は分岐先の命
令である。
In FIG. 5, the case of pipeline processing consisting of n=4 stages is shown, and it is assumed that the instruction lot shown in the first diagram is a branch instruction and it is found at time T that a branch has occurred. It is shown. In this case, the number shown in the figure is []<, command 102, command 103. Instruction 104 is canceled, and the processing performed before time T0 with respect to each of these instructions is wasted. Note that instruction 105 is a branch destination instruction.

第6図はインターロックが生している状態が示されてお
り1図示命令107において命令106の第4フエーズ
で計算した結果の値を使用することになっているために
待たされた場合を示している。
FIG. 6 shows a state in which an interlock occurs, and shows a case where the instruction 107 in the first diagram is forced to wait because it is supposed to use the value calculated in the fourth phase of the instruction 106. ing.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

第5図図示の如く、パイプラインが一般にn段のとき2
分岐が起ると、すでにパイプラインに入って実行が開始
されているn−1段の命令は実行が直ちに中断され1分
岐先の命令に飛び、そこから実行が開始される。その時
無駄になったn−1段の命令はパイプラインの効率を落
とす原因となる。また第6図図示の如く、第1フエーズ
が一つ前の第4フエーズで計算した値を使うために、計
算終了まで待たされる例である。この場合もパイプライ
ンの流れが詰まり2効率を落とす原因となる。
As shown in Figure 5, when the pipeline has n stages, generally 2
When a branch occurs, the execution of the (n-1) stage instructions that have already entered the pipeline and started execution is immediately interrupted, jumps to the one branch destination instruction, and execution starts from there. The n-1 stage instructions that are wasted at that time cause a reduction in the efficiency of the pipeline. Further, as shown in FIG. 6, this is an example in which the first phase uses the value calculated in the previous fourth phase, so that the calculation is waited until the end of the calculation. In this case as well, the flow of the pipeline becomes clogged, causing a drop in efficiency.

このように、パイプライン処理は、パイプライン中の命
令が独立である場合には、非常に効率がよいが1分岐命
令やインターロックなど、パイプラインの流れが乱れる
場合は処理効率が低下する。
As described above, pipeline processing is very efficient when the instructions in the pipeline are independent, but the processing efficiency decreases when the flow of the pipeline is disturbed, such as by a one-branch instruction or an interlock.

これは1人工知能をはじめとした1条件判断や分岐処理
が多い応用に対して、パイプライン処理が理論上の効率
を上げられない原因となっている。
This is the reason why pipeline processing cannot theoretically increase efficiency for applications such as artificial intelligence that often involve single-condition judgments and branch processing.

一方、近年盛んな並列処理技術と組み合わせると、他の
プロセッサからの非同期の割り込みなどのために、頻繁
に割り込み処理を実行する必要がある。これもまた2分
岐と同様パイプラインの流れを乱すため、効率が上がら
ない理由となる。
On the other hand, when combined with parallel processing technology that has become popular in recent years, it is necessary to frequently execute interrupt processing due to asynchronous interrupts from other processors. This also disturbs the flow of the pipeline, similar to two-branching, and is the reason why efficiency is not improved.

本発明は、パイプライン処理によって高速化を図ると共
に5他プロセツサからの頻繁な削り込み処理にも効率よ
く対処できるようにすることを目的としている。
SUMMARY OF THE INVENTION The present invention aims to speed up processing through pipeline processing and to efficiently deal with frequent shaving processing from five other processors.

〔課題を解決するための手段〕[Means to solve the problem]

第1図は本発明の原理構成図を示す。図中の符号1は命
令バス、2−1.2−2は夫々命令バッファであって夫
々異なるプロセスに対応する命令がセットされるものを
表わしている。3は命令スイッチ回路であって、パイプ
ライン処理50の入力側にもうけられ、逐次互に異なっ
たプロセスの命令を受入れる。4はデコード回路、6は
メモリアドレス回路、8はキャッシュ読み出し回路10
は実行回路であって5夫々パイプライン処理50のステ
ージ処理に対応するものである。5゜7.9は夫々ステ
ージ間を区分するパイプラインレジスタ、5−1 7−
1.9−1は人々ステージに対応してもうけられるプロ
セスフラグを表わしている。プロセスフラグ5−1.7
−1.91は夫々対応するステージがいずれのプロセス
に対応する処理を行ったかを指示している。11はプロ
セスの同一性をチェックする第1のチェック手段、12
はレジスタの重複使用をチェックする第2のチェック手
段を表わしている。
FIG. 1 shows a basic configuration diagram of the present invention. Reference numeral 1 in the figure represents an instruction bus, and 2-1, 2-2 represent instruction buffers in which instructions corresponding to different processes are set. Reference numeral 3 denotes an instruction switch circuit, which is provided on the input side of the pipeline processing 50 and successively receives instructions from different processes. 4 is a decoding circuit, 6 is a memory address circuit, 8 is a cache read circuit 10
5 are execution circuits, each corresponding to a stage process of the pipeline process 50. 5゜7.9 are pipeline registers that partition between stages, 5-1 7-
1.9-1 represents a process flag that is set corresponding to the people stage. Process flag 5-1.7
-1.91 indicates which process the corresponding stage has performed processing for. 11 is a first checking means for checking the identity of processes; 12
represents a second checking means for checking duplicate use of registers.

〔作用〕[Effect]

第1図図示の場合には、2つのプロセスから夫々の命令
が命令バッファ2−1と2−2とにセットされる。命令
スイッチ回路3は、2つのプロセスの命令を交互に受入
れる。そして1例えば図示デコード回路4によるステー
ジにてデコードされた結果はパイプラインレジスタ5に
セットされるが、このとき当該ステージによってデコー
ドされた命令が2つのプロセスの中のいずれのプロセス
に属するものであるかについてプロセスフラグ51にて
指示される。
In the case shown in FIG. 1, instructions from two processes are set in instruction buffers 2-1 and 2-2. The instruction switch circuit 3 alternately accepts instructions of two processes. 1. For example, the result decoded at the stage by the illustrated decoding circuit 4 is set in the pipeline register 5, and at this time, it is determined to which of the two processes the instruction decoded at the stage belongs. This is indicated by the process flag 51.

パイプライン処理の流れが正常な状態でない事態が生じ
た際に、チェック手段11と12とが上記事態の発生に
よって影響を受けるものが、いずれのステージに位置し
ているかを判定する。
When a situation occurs in which the flow of pipeline processing is not in a normal state, check means 11 and 12 determine in which stage those affected by the occurrence of the situation are located.

〔実施例〕〔Example〕

実施例の説明に先立って1本発明の場合にどのような利
点があるかを説明しておく。
Before explaining the embodiments, the advantages of the present invention will be explained.

第7図は本発明の場合の分岐処理の態様を示しており、
第8図は本発明の場合の代入順序の制約時のa様を示し
ている。
FIG. 7 shows an aspect of branch processing in the case of the present invention,
FIG. 8 shows the case a when the assignment order is restricted in the case of the present invention.

第7図は、第5図図示の場合と対応しているが第1のプ
ロセスPiの命令101が時刻T0において分岐した場
合を表わしている。この場合に。
FIG. 7 corresponds to the case shown in FIG. 5, but shows a case where the instruction 101 of the first process Pi branches at time T0. In this case.

4段のステージよりなるパイプライン処理上に入力され
ている命令は、第1のプロセスに属する命令101と命
令102と共に、第OのプロセスPOに属する命令10
1’と命令102′とである。このために1分岐処理が
発生したことによって無駄となる命令は命令102のみ
であり、第5図図示の従来の場合にくらべて効率がよい
The instructions input into the pipeline process consisting of four stages are instruction 101 and instruction 102 belonging to the first process, and instruction 10 belonging to the O-th process PO.
1' and instruction 102'. Therefore, the only instruction that is wasted due to the occurrence of one branch processing is instruction 102, which is more efficient than the conventional case shown in FIG.

また第8図は、第6図図示の場合と対応しているが、第
1のプロセスに属する命令106と命令107との間に
1第Oのプロセスに属する命令106′が存在している
。この結果、命令+06と命令+07との間で生じたイ
ンターロックに伴なう無駄は1つになり効率が向−ヒす
る。
Further, FIG. 8 corresponds to the case shown in FIG. 6, but an instruction 106' belonging to the first O-th process exists between the instruction 106 and the instruction 107 belonging to the first process. As a result, the waste caused by the interlock between instructions +06 and +07 is reduced to one, improving efficiency.

第2図は本発明の実施例の構成、第3図は分岐処理時の
対策を説明する図、第4図は実施例要部の構成を示して
いる。
FIG. 2 shows the configuration of an embodiment of the present invention, FIG. 3 is a diagram for explaining countermeasures during branch processing, and FIG. 4 shows the configuration of the main part of the embodiment.

第2図図示の符号1,2.5.5−1.7.7=1. 
9. 9−1は夫々第1図に対応しており。
Reference numeral 1 shown in FIG. 2, 2.5.5-1.7.7=1.
9. 9-1 correspond to FIG. 1, respectively.

4’、  6’、  8’、  l O’は夫々第1図
図示の4. 6. 8゜IOと同等部分であり、13は
パイプラインレジスタ、14はプロセスフラグ、15は
第1のプロセスに対応するプログラムカウンタ、16は
第Oのプロセスに対応するプログラムカウンタ、17は
命令実行に当って使用されるレジスタ変換部を示してい
る。なお、第1図に示される命令スイッチ回路3は、第
2図においては、プログラムカウンタ15と16との内
容を交互に用いてパイプライン処理に取入れることを示
すことによって、省略されている。
4', 6', 8', and lO' are respectively 4. shown in FIG. 6. 8゜Equivalent to IO, 13 is a pipeline register, 14 is a process flag, 15 is a program counter corresponding to the first process, 16 is a program counter corresponding to the Oth process, and 17 is a part for executing instructions. The figure shows the register converter used in the figure. Note that the instruction switch circuit 3 shown in FIG. 1 is omitted in FIG. 2 to show that the contents of the program counters 15 and 16 are used alternately and incorporated into pipeline processing.

第2図図示の場合には、パイプライン処理は+11  
デコードならびにアドレスレジスタ読み出しく2)  
メモリアドレス計算ならびにアドレス出力(3)  キ
ャッシュタグ引きならびに演算用レジスタ読み出し く4)  命令実行 の4フエーズの場合をとっている。また、デコードの前
にある命令バッファは命令のフェッチサイクル(先読み
)に使われる。
In the case shown in Figure 2, the pipeline processing is +11
Decode and read address register 2)
Memory address calculation and address output (3) Cache tag pull and operation register reading 4) The case of four phases of instruction execution is taken. Additionally, the instruction buffer before decoding is used for instruction fetch cycles (read ahead).

第2図図示の場合には、第1のプロセスに属する命令が
、命令実行10′と、アドレス計算と出力6′とにあり
、第0のプロセスに属する命令がキャッシュ読み出しと
レジスタ読み出し8′とデコードとアドレスレジスタ読
み出し4′とに位置している。
In the case shown in FIG. 2, the instructions belonging to the first process are in instruction execution 10', address calculation and output 6', and the instructions belonging to the 0th process are in cache read and register read 8'. It is located at decode and address register read 4'.

そして2次に第1のプロセスに属する命令がパイプライ
ンレジスタ13にセットされる状況にある。
Then, an instruction belonging to the first process is set in the pipeline register 13 in a secondary manner.

なお、メモリアドレスの計算に当っては、夫々のプロセ
スに対応するプログラムカウンタ1516の内容を用い
るようにされる。
Note that when calculating the memory address, the contents of the program counter 1516 corresponding to each process are used.

第2図図示の場合には、第1のプロセスに属する命令が
命令実行10’において実行される際のレジスタR3と
レジスタR2として、第4図(B)を参照して後述され
る如く、レジスタR1とレジスタR11とを用いるよう
にされる。また第0のプロセスに属する命令が実行され
る際のレジスタRとレジスタR2として、レジスタRO
IとレジスタR。オとを用いるようにされる。このよう
にするために、第1のプロセスに属する命令が命令実行
10′において処理される際に2図示レジスタ変換部1
7によって。
In the case shown in FIG. 2, as will be described later with reference to FIG. 4(B), registers R3 and R2 are used when the instruction belonging to the first process is executed in instruction execution 10'. R1 and register R11 are used. Also, register R and register R2 are used when the instruction belonging to the 0th process is executed.
I and register R. It is made to use O. In order to do this, when an instruction belonging to the first process is processed in the instruction execution 10', the register converter 1 shown in FIG.
By 7.

Copy  R,1to  R目 が生じ2次の第0のプロセスに属する命令に対して copyRo+toRot が生じるようにされる。Copy R, 1 to R eye occurs for instructions belonging to the second-order 0th process. copyRo+toRot is caused to occur.

このために、2つのプロセスに属する命令が同一の命令
に該当する場合であっても異なるレジスタが使用される
こととなり、互に非所望な影響を受けることがない。
Therefore, even if instructions belonging to two processes correspond to the same instruction, different registers will be used, and there will be no undesirable influence on each other.

また第2図図示の構成の場合には、同じプ1コセスの命
令が、パイプライン処理−ヒの連続したステージに位置
することがないために、インターロックが発生する顧度
が少なくなる。
Further, in the case of the configuration shown in FIG. 2, since instructions of the same process are not located in consecutive stages of pipeline processing, the probability of occurrence of interlock is reduced.

第3図における符号は第2図に対応している。The symbols in FIG. 3 correspond to those in FIG.

図示の場合には、命令実行10′において実行された命
令が、第1のプロセスに属するものであって分岐が生し
た場合を表わしている。当該分岐が生したことに対応し
て、第1のプロセスに属する命令がアドレス計算と出力
6′に存在することが判り。
In the illustrated case, the instruction executed in instruction execution 10' belongs to the first process and a branch occurs. Corresponding to the fact that the branch has taken place, it is found that an instruction belonging to the first process exists at address calculation and output 6'.

キャンセルされる。そして1分岐先アドレスは第1のプ
ロセスの側に対して与えられる。したがって、パイプラ
イン処理における無駄が減少する。
Canceled. Then, one branch destination address is given to the first process side. Therefore, waste in pipeline processing is reduced.

第4図は実施例要部構成を示す。第41D(A)は第1
図図示のパイプラインレジスタ5とプロセスフラグ5−
1とに対応する部分を示しておりプロセスを識別するた
めの例えば1ビツトがプロセスフラグ5−1にセントさ
れる。
FIG. 4 shows the main part configuration of the embodiment. 41D(A) is the 1st
The illustrated pipeline register 5 and process flag 5-
For example, 1 bit for identifying the process is sent to the process flag 5-1.

第4図(B)は第2図図示のレジスタ変換部17に対応
する部分を示している。例えば第2図図示のレジスタR
2を示すレジスタ番号+7−1とその際のプロセスフラ
グ17−2とがレジスタ番号変換器17−3にてマージ
され、実際に使用するレジスタ番号17−4を得る。
FIG. 4(B) shows a portion corresponding to the register conversion section 17 shown in FIG. For example, the register R shown in FIG.
The register number +7-1 indicating 2 and the process flag 17-2 at that time are merged by the register number converter 17-3 to obtain the register number 17-4 that is actually used.

第4図(C)は命令をキャンセルする処理の構成例を示
す。図示の場合7命令実行10’のフェーズにある命令
のプロセスフラグ21と、夫々のステージにおいて実行
している命令のプロセスフラグ22とが比較器24にお
いて比較されている。
FIG. 4(C) shows a configuration example of a process for canceling an instruction. In the illustrated case, the comparator 24 compares the process flag 21 of the instruction in the 7-instruction execution phase 10' with the process flag 22 of the instruction being executed in each stage.

そして、第1図図示の第1のチェック手段11などから
キャンセル信号23が供給されたとき、比較器24の出
力が一致を出力したとき、当該ステージに位置した命令
はキャンセルされる。この場合、パイプラインレジスタ
25 (第3図図示のパイプラインレジスタ7に相当す
る如きもの)におけるキャンセルビット26に論理「1
」をセットし、当該処理結果のものがキャンセルされる
べきもので命令実行フェーズにおいて実行すべきでない
ことが指示される。
Then, when a cancel signal 23 is supplied from the first checking means 11 shown in FIG. 1, etc., and the output of the comparator 24 outputs a match, the instruction located at the relevant stage is canceled. In this case, the cancel bit 26 in the pipeline register 25 (corresponding to the pipeline register 7 shown in FIG. 3) is set to logic "1".
” is set to indicate that the processing result should be canceled and should not be executed in the instruction execution phase.

上述した本発明の構成の場合には、並列処理計算機にお
いて、速度カ月/pのプロセッサがp台動いているよう
に見える。もし、2つのプロセスがキャッシュメモリに
おける共通のキャッシュブロックを多数持つ場合には、
キャッシュのミスヒントが少なくなり、実際に速度がl
/pのプロセッサを9台用意した場合よりも効率が向上
する。
In the case of the configuration of the present invention described above, in the parallel processing computer, it appears that p processors with a speed of months/p are running. If two processes have many common cache blocks in cache memory,
Cache miss hints are reduced and speed is actually increased.
Efficiency is improved compared to the case where nine /p processors are prepared.

このため、並列処理を前提とした応用に大きなコストパ
フォーマンスの向上をもたらす。
Therefore, it brings about a significant improvement in cost performance for applications that assume parallel processing.

更に並列処理における最も11ft要な要件に通イδと
同期がある。もしも、2つのプロセスが通イ3を行う場
合には次のようなメリットがある。
Furthermore, the requirements that require the most 11 feet in parallel processing include δ and synchronization. If two processes perform the same process, there are the following advantages.

並列キャッシュシステムなどのように複数のキャッシュ
間で矛盾を起こさないような制御をしている場合では5
並列に動作するキャッシュ間での転送が入るので、キャ
ッシュのヒント率が下ってしまう。しかし1本発明の場
合には、同しブ11セッサで実行している訳であるから
キャッシュを共有しているので、メモリ上のデータ通信
手法を用いてもキャッシュのヒント率は落ちない。
5 when controlling to prevent conflicts between multiple caches, such as in a parallel cache system.
Since there is a transfer between caches operating in parallel, the cache hint rate decreases. However, in the case of the present invention, since the cache is shared because the execution is performed using the same processor, the cache hint rate does not decrease even if the data communication method on the memory is used.

ただしこれは、共有レジスタを用いたプL1センサ内部
の通信が行われることを排除するものではない。
However, this does not exclude communication within the PL1 sensor using a shared register.

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

以上説明した如く1本発明によれば2人工知能等の、プ
ロセス間で密接な関係を持つ場合が多いと思われる応用
に対し、並列化をパイプライン中に持ち込むことによっ
て9分岐時等のパイプライン中の無駄を軽減することが
可能となる。また。
As explained above, 1. According to the present invention, 2. For applications such as artificial intelligence, where there is often a close relationship between processes, by bringing parallelism into the pipeline, the pipework, such as at the time of 9 branches, can be improved. It becomes possible to reduce waste in the line. Also.

キャンシュシステムの共有などから1通信を生体とする
応用に対してヒント率の向上が期待できる。
It is expected that the hint rate will improve for applications where one communication is a living body due to the sharing of the cache system.

また、インターロックが発生しにくいので、バイパスな
どの配線が最小となる。
Furthermore, since interlocks are less likely to occur, wiring such as bypass is minimized.

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

第1図は本発明の原理構成図、第2図は本発明の実施例
構成、第3図は分岐処理時の対策を説明する図、第4図
は実施例要部の構成、第5図は従来の場合の分岐処理の
a様、第6図は従来の場合の代入順序の制約時の態様、
第7図は本発明の場合の分岐処理のa様、′fIB図は
本発明の場合の代入順序の制約時の態様を示している。 図中、2は命令バッファ、3は命令スイッチ回路、50
はパイプライン処理、5−1.7−1゜9−1.27は
夫々プロセスフラグ、11.12は夫々チェック手段を
表わしている。
Figure 1 is a diagram showing the principle configuration of the present invention, Figure 2 is the configuration of an embodiment of the invention, Figure 3 is a diagram explaining countermeasures during branch processing, Figure 4 is the configuration of the main parts of the embodiment, and Figure 5. Figure 6 shows the conventional case of branch processing in a form, and Fig. 6 shows the conventional case in which assignment order is constrained.
FIG. 7 shows a mode of branch processing in the case of the present invention, and a 'fIB figure shows a mode when the assignment order is restricted in the case of the present invention. In the figure, 2 is an instruction buffer, 3 is an instruction switch circuit, and 50
5-1.7-1, 9-1.27 are process flags, and 11.12 are check means.

Claims (1)

【特許請求の範囲】 複数個の互に異なるプロセスがプロセス・プールに貯え
られ、当該プロセス・プールに保持される上記プロセス
を複数個のプロセッサが受取り、かつ各プロセッサがパ
イプライン処理によって上記プロセスを実行する並列処
理計算機において、上記パイプライン処理(50)がn
段のステージに区分されて構成されると共に、 上記パイプライン処理(50)の入力側に、互に異なる
複数個のプロセスを交替で受入れる命令スイッチ回路(
3)と、 上記パイプライン処理(50)の上記夫々のステージに
対応して、当該自己ステージにおいて処理が行われてい
るプロセスがいずれのプロセスであるかを指示するプロ
セスフラグ(5−1、7−1、9−1)と、 上記パイプライン処理の正常な進行を妨げる状態の発生
に対応して、上記ステージにおけるプロセスフラグ(5
−1、7−1、9−1)をチェックするチェック手段(
11or12)とをそなえ、上記パイプライン処理に対
して、複数個のプロセスを交替で受入れさせるようにし
た ことを特徴とする並列処理計算機パイプライン処理方式
[Claims] A plurality of mutually different processes are stored in a process pool, a plurality of processors receive the processes held in the process pool, and each processor receives the processes through pipeline processing. In the parallel processing computer that executes the above pipeline processing (50), n
The instruction switch circuit (50) is configured to be divided into stages, and is configured to alternately accept a plurality of different processes on the input side of the pipeline processing (50).
3) and process flags (5-1, 7 -1, 9-1), and the process flag (5
-1, 7-1, 9-1)
11 or 12), and a plurality of processes are accepted in turn for the pipeline processing.
JP4765489A 1989-02-28 1989-02-28 Pipe line processing system for parallel processing computer Pending JPH02226458A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4765489A JPH02226458A (en) 1989-02-28 1989-02-28 Pipe line processing system for parallel processing computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4765489A JPH02226458A (en) 1989-02-28 1989-02-28 Pipe line processing system for parallel processing computer

Publications (1)

Publication Number Publication Date
JPH02226458A true JPH02226458A (en) 1990-09-10

Family

ID=12781241

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4765489A Pending JPH02226458A (en) 1989-02-28 1989-02-28 Pipe line processing system for parallel processing computer

Country Status (1)

Country Link
JP (1) JPH02226458A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6529887B1 (en) * 1998-07-17 2003-03-04 Agency Of Industrial Science And Technology Agent learning machine
US7853954B2 (en) 2004-07-07 2010-12-14 Kabushiki Kaisha Toshiba Method and apparatus for preserving the context of tasks during task switching in a pipeline architecture
US8195922B2 (en) 2005-03-18 2012-06-05 Marvell World Trade, Ltd. System for dynamically allocating processing time to multiple threads

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6529887B1 (en) * 1998-07-17 2003-03-04 Agency Of Industrial Science And Technology Agent learning machine
US7853954B2 (en) 2004-07-07 2010-12-14 Kabushiki Kaisha Toshiba Method and apparatus for preserving the context of tasks during task switching in a pipeline architecture
US8499306B2 (en) 2004-07-07 2013-07-30 Kabushiki Kaisha Toshiba Microprocessor configured to control a process in accordance with a request based on task identification information and the register information identifier
US8195922B2 (en) 2005-03-18 2012-06-05 Marvell World Trade, Ltd. System for dynamically allocating processing time to multiple threads
US8468324B2 (en) 2005-03-18 2013-06-18 Marvell World Trade Ltd. Dual thread processor

Similar Documents

Publication Publication Date Title
EP0782071B1 (en) Data processor
KR100254007B1 (en) Data processor simultaneously executable two instruction
JPS6312029A (en) Information processor
JP3543181B2 (en) Data processing device
JPH0728761A (en) Asymmetrical vector multiprocessor
US5832258A (en) Digital signal processor and associated method for conditional data operation with no condition code update
JP3400458B2 (en) Information processing device
JP3578883B2 (en) Data processing device
US20030188143A1 (en) 2N- way MAX/MIN instructions using N-stage 2- way MAX/MIN blocks
US20020116599A1 (en) Data processing apparatus
JPH02226458A (en) Pipe line processing system for parallel processing computer
JP3182591B2 (en) Microprocessor
JP3640855B2 (en) Processor
JPS63245525A (en) Microprogram processor
JPH05274143A (en) Composite condition processing system
JP3568737B2 (en) Microprocessor with conditional execution instruction
JP5185478B2 (en) Pipeline processing method and pipeline processing apparatus using the method
JP3547562B2 (en) Microprocessor
JP2636821B2 (en) Parallel processing unit
JP3102399B2 (en) Data processing apparatus and method
AU628534B2 (en) Pipeline processing of register and register modifying specifiers within the same instruction
JP2785820B2 (en) Parallel processing unit
JPH0419575B2 (en)
JPH0784783A (en) Central processing unit
JP2002123389A (en) Data processor