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

JPH0820948B2 - Advance control device - Google Patents

Advance control device

Info

Publication number
JPH0820948B2
JPH0820948B2 JP4319486A JP31948692A JPH0820948B2 JP H0820948 B2 JPH0820948 B2 JP H0820948B2 JP 4319486 A JP4319486 A JP 4319486A JP 31948692 A JP31948692 A JP 31948692A JP H0820948 B2 JPH0820948 B2 JP H0820948B2
Authority
JP
Japan
Prior art keywords
processing
stage
operand
instruction
register
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP4319486A
Other languages
Japanese (ja)
Other versions
JPH06149567A (en
Inventor
真一 名児耶
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP4319486A priority Critical patent/JPH0820948B2/en
Publication of JPH06149567A publication Critical patent/JPH06149567A/en
Publication of JPH0820948B2 publication Critical patent/JPH0820948B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Description

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

【0001】[0001]

【産業上の利用分野】本発明は先行制御装置に関し、特
に情報処理装置で用いられるパイプライン構成の先行制
御装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a prior control device, and more particularly to a pipeline control prior control device used in an information processing device.

【0002】[0002]

【従来の技術】従来、この種の先行制御装置において
は、パイプライン処理の効率化を図るために様々な対策
が講じられている。
2. Description of the Related Art Conventionally, various measures have been taken in this type of advanced control device in order to improve the efficiency of pipeline processing.

【0003】例えば、主記憶に対するオペランドフェッ
チとレジスタに対するオペランドフェッチとの間に時間
差のあるオペランドフェッチを行う命令を実行する際
に、前命令の処理中の空き時間に該アドレス演算器を用
いて当該命令の主記憶オペランドのアドレス計算や主記
憶に対するフェッチ要求の送出を行う方法が特開平2−
27429号公報に開示されている。
For example, when executing an instruction for performing an operand fetch with a time difference between the operand fetch for the main memory and the operand fetch for the register, the address arithmetic unit is used during the idle time during the processing of the previous instruction. A method for calculating the address of the main memory operand of an instruction and sending a fetch request to the main memory
It is disclosed in Japanese Patent Publication No. 27429.

【0004】また、複数命令を同時にデコードし、この
デコードした複数命令が並列に実行可能と識別されたと
きにそれらの複数命令を結合して複数のパイプライン処
理で常に同期させて実行することで、パイプライン処理
の効率化を図る技術が特開平2−130635号公報に
開示されている。
Further, by decoding a plurality of instructions at the same time, and when the decoded plurality of instructions are identified as executable in parallel, the plurality of instructions are combined and executed in synchronization with a plurality of pipeline processes at all times. A technique for improving the efficiency of pipeline processing is disclosed in Japanese Patent Application Laid-Open No. 2-130635.

【0005】上記の技術以外にも、パイプライン処理の
効率化を図る技術としては、特開平2−89133号公
報に開示された技術や特開平2−268329号公報に
開示された技術などが知られている。
In addition to the above-mentioned techniques, as a technique for improving the efficiency of pipeline processing, the technique disclosed in Japanese Patent Laid-Open No. 2-89133 and the technique disclosed in Japanese Patent Laid-Open No. 2-268329 are known. Has been.

【0006】しかしながら、この種の先行制御装置での
オペランドの先取り処理においては、パイプラインの各
ステージで待ち要因が発生した場合、すなわちパイプラ
インの乱れが発生した場合、その待ち要因が解消するま
での間、待ち要因の発生したステージとその上位ステー
ジとにおける処理を停止させている。
However, in the operand prefetching process in this type of advance control device, when a wait factor occurs in each stage of the pipeline, that is, when the pipeline is disturbed, the wait factor is eliminated. During this period, the processing in the stage in which the wait factor has occurred and its upper stage is stopped.

【0007】[0007]

【発明が解決しようとする課題】上述した従来の先行制
御装置では、パイプラインの各ステージで待ち要因が発
生した場合にその待ち要因が解消するまでの間、待ち要
因の発生したステージとその上位ステージとにおける処
理を停止させているので、パイプラインが乱れる要因が
多いプログラムを実行する場合に性能が著しく低下して
しまうという問題がある。
In the above-described prior art control apparatus, when a wait factor is generated in each stage of the pipeline, the stage in which the wait factor is generated and its upper layer are waited until the wait factor is resolved. Since the processing in the stage is stopped, there is a problem that the performance is remarkably deteriorated when executing a program in which the pipeline is often disturbed.

【0008】したがって、本発明の目的はパイプライン
の各ステージで待ち要因が発生した場合にその待ち時間
を有効利用することができ、パイプライン処理の性能を
大幅に向上させることができる先行制御装置の提供にあ
る。
Therefore, an object of the present invention is to make effective use of the waiting time when a waiting factor occurs in each stage of the pipeline, and to significantly improve the performance of pipeline processing. Is provided.

【0009】[0009]

【課題を解決するための手段】本発明による先行制御装
置は、パイプライン処理によってオペランドの先取りを
行う情報処理装置の先行制御装置であって、順次送られ
てくる前記オペランドの先取り処理要求各々に連続する
処理番号を付与する手段と、前記パイプライン処理の各
ステージに設けられかつ前記オペランドの先取り処理要
求各々に付与された前記処理番号を前記オペランドの先
取り処理要求及びその処理要求に対する各ステージにお
ける処理結果に対応して持ち回る手段と、前記パイプラ
イン処理の各ステージにおける前記オペランドの先取り
処理要求に対する処理の待ち要因の発生を検出する検出
手段と、前記パイプライン処理の各ステージに設けられ
かつ前記検出手段によって前記待ち要因の発生が検出さ
れたときに当該ステージの上位ステージから後続のオペ
ランドの先取り処理要求及びその処理結果を受け取って
処理する手段と、前記パイプライン処理によって取り出
されたオペランドを該オペランドの先取り処理要求に付
与された前記処理番号に対応付けて格納する格納手段
と、前記格納手段から前記処理番号の順序で前記オペラ
ンドを読出す手段とを備えている。
A preceding control device according to the present invention is a preceding control device of an information processing device for prefetching operands by pipeline processing, which is sequentially sent.
Means for imparting <br/> processing consecutive numbers to prefetch processing request each of the operands come, the process number assigned to prefetch processing request each provided and said operand to each stage of the pipeline process Beyond the operand
At each stage for the processing request and the processing request
Means for around have to correspond to the kicking process result, and detecting means for detecting the occurrence of the waiting factor of the processing for the prefetch processing request for the operand at each stage of the pipeline process, provided in each stage of the pipeline process
And a means for receiving and processing a prefetch processing request of the subsequent operand and its processing result from the upper stage of the stage when the occurrence of the wait factor is detected by the detection means, and an operand extracted by the pipeline processing Is stored in association with the processing number given to the prefetch processing request of the operand, and means for reading the operand in the order of the processing number from the storage means.

【0010】[0010]

【実施例】次に、本発明の一実施例について図面を参照
して説明する。
Next, an embodiment of the present invention will be described with reference to the drawings.

【0011】図1は本発明の一実施例の構成を示すブロ
ック図である。図において、Iステージは上位ステージ
である命令取出しステージから送られてくる命令を命令
レジスタ(IR)1,2に受けて、命令のデコードと命
令語中のアドレスシラブルで指定されるオペランドの論
理アドレスを生成するステージである。
FIG. 1 is a block diagram showing the configuration of an embodiment of the present invention. In the figure, the I stage receives an instruction sent from the instruction fetch stage, which is an upper stage, in the instruction registers (IR) 1 and 2, and decodes the instruction and the logical address of the operand specified by the address syllable in the instruction word. Is a stage for generating.

【0012】すなわち、命令レジスタ1,2に保持さ
れ、セレクタ3で選択された命令語中のアドレスシラブ
ルよりベースレジスタ(BR)4及びインデックスレジ
スタ(XR)5各々のレジスタ番号とディスプレースメ
ント(変位)とが抽出される。このレジスタ番号とディ
スプレースメントとによるベースレジスタ4及びインデ
ックスレジスタ5の索引結果とデイプレースメントとを
加算器(AD)6で加算することによってオペランドの
論理アドレスが求められ、そのオペランドの論理アドレ
スが次のLステージへの入力となる。
That is, the register number and displacement (displacement) of each of the base register (BR) 4 and the index register (XR) 5 are held in the instruction registers 1 and 2 and based on the address syllable in the instruction word selected by the selector 3. And are extracted. The adder (AD) 6 adds the index result of the base register 4 and the index register 5 based on the register number and the displacement and the displacement to obtain the logical address of the operand. Input to the L stage.

【0013】LステージはIステージから送られてくる
オペランドの論理アドレスを論理アドレスレジスタ(L
AR)7,8に受けて、絶対アドレス変換バッファ(T
LB)10を索引することによってオペランドの絶対ア
ドレスを求めるステージである。
The L stage stores the logical address of the operand sent from the I stage in the logical address register (L
AR) 7, 8 to receive the absolute address translation buffer (T
LB) 10 is the stage for obtaining the absolute address of the operand by indexing.

【0014】すなわち、論理アドレスレジスタ7,8に
保持され、セレクタ9で選択されたオペランドの論理ア
ドレスによって絶対アドレス変換バッファ10を索引す
ることによってオペランドの絶対アドレスが求められ、
そのオペランドの絶対アドレスが次のPステージへの入
力となる。
That is, the absolute address of the operand is obtained by indexing the absolute address translation buffer 10 with the logical address of the operand held in the logical address registers 7 and 8 and selected by the selector 9.
The absolute address of that operand becomes the input to the next P stage.

【0015】PステージはLステージで求められたオペ
ランドの絶対アドレスを絶対アドレスレジスタ(PA
R)11,12に受けて、オペランドキャッシュ(O
C)14を索引することによってオペランドを求めるス
テージである。
The P stage stores the absolute address of the operand obtained in the L stage in the absolute address register (PA
R) 11, 12, receive the operand cache (O
C) The stage where the operand is obtained by indexing 14.

【0016】すなわち、絶対アドレスレジスタ17,1
2に保持され、セレクタ13で選択されたオペランドの
絶対アドレスによってオペランドキャッシュ14を索引
することによってオペランドが求められ、そのオペラン
ドが次のOステージへの入力となる。
That is, the absolute address registers 17, 1
The operand is obtained by indexing the operand cache 14 with the absolute address of the operand held in 2 and selected by the selector 13, and that operand becomes the input to the next O stage.

【0017】OステージはPステージで求められたオペ
ランドをオペランドバッファ(OB)15にバッファす
るステージであり、オペランドバッファ15の出力は下
位ステージである演算ステージに送出される。尚、Oス
テージではオペランドがワード境界を跨がっている場
合、オペランドバッファ15から出力されるデータの整
列を行う。
The O stage is a stage for buffering the operand obtained in the P stage in the operand buffer (OB) 15, and the output of the operand buffer 15 is sent to the operation stage which is a lower stage. In the O stage, when the operands cross word boundaries, the data output from the operand buffer 15 is aligned.

【0018】本実施例においては、上述したパイプライ
ンの各ステージからその下位ステージへの処理要求に処
理番号を付与している。Iステージの処理番号は処理番
号レジスタ(IN)21(初期値“0”)からLステー
ジに与えられ、1つの処理要求がLステージに送出され
る毎にカウンタ22によってインクリメントされる。
In this embodiment, a processing number is given to a processing request from each stage of the above-mentioned pipeline to its lower stage. The processing number of the I stage is given to the L stage from the processing number register (IN) 21 (initial value “0”), and is incremented by the counter 22 every time one processing request is sent to the L stage.

【0019】Iステージで発生される処理番号はLステ
ージ及びPステージで各々処理番号レジスタ(LN)2
5,26と処理番号レジスタ(PN)28,29とに持
ち回られ、Oステージでオペランドバッファ15に対す
るライトアドレスとして用いられる。
The processing numbers generated in the I stage are processing number registers (LN) 2 in the L stage and the P stage, respectively.
5, 26 and process number registers (PN) 28, 29, and are used as write addresses for the operand buffer 15 in the O stage.

【0020】尚、IステージからLステージへ、Lステ
ージからPステージへ、PステージからOステージへは
夫々セレクタ24,27,30,33を経由して送出さ
れる。但し、Oステージのセレクタ33においてはPス
テージのセレクタ30からの処理番号と、アドレスレジ
スタ31及びカウンタ32によって生成されるリードア
ドレスとのうち一方が選択されてオペランドバッファ1
5に供給される。
The I stage is sent to the L stage, the L stage is sent to the P stage, and the P stage is sent to the O stage via selectors 24, 27, 30, and 33, respectively. However, in the O stage selector 33, one of the processing number from the P stage selector 30 and the read address generated by the address register 31 and the counter 32 is selected, and the operand buffer 1
5 is supplied.

【0021】上記のパイプラインの各ステージにおいて
待ち要因が発生した場合、それら待ち要因の発生は検出
回路16で検出される。検出回路16は各ステージにお
ける待ち要因の発生を検出すると、各ステージのレジス
タおよび処理番号レジスタに夫々ホールド信号を出力す
るとともに、各ステージのセレクタにセレクト信号を出
力し、待ち要因の発生による待ち時間に各ステージにお
いて後続する命令を先に処理するよう制御する。
When a wait factor is generated in each stage of the above pipeline, the detection circuit 16 detects the occurrence of the wait factor. When the detection circuit 16 detects the occurrence of a wait factor in each stage, it outputs a hold signal to the register of each stage and a process number register, and outputs a select signal to the selector of each stage, thereby waiting time due to the occurrence of the wait factor. Then, control is performed so that the subsequent instruction in each stage is processed first.

【0022】図2〜図4は本発明の一実施例の処理動作
を示す図である。図2はIステージに待ち要因が発生し
たときの処理動作を示し、図3はLステージに待ち要因
が発生したときの処理動作を示し、図4はPステージに
待ち要因が発生したときの処理動作を示している。これ
ら図1〜図4を用いてパイプラインの各ステージで待ち
要因が発生した場合の処理動作について説明する。
2 to 4 are diagrams showing the processing operation of an embodiment of the present invention. 2 shows a processing operation when a wait factor occurs in the I stage, FIG. 3 shows a processing operation when a wait factor occurs in the L stage, and FIG. 4 shows a process when a wait factor occurs in the P stage. It shows the operation. A processing operation when a wait factor occurs in each stage of the pipeline will be described with reference to FIGS.

【0023】Iステージにおいて、上位ステージである
命令取出しステージから命令A〜Eが順次送られてくる
場合、命令A〜Eには夫々処理番号レジスタ21及びカ
ウンタ22によって処理番号「0」〜「4」が付与され
る。図2に示すように、Iステージにおいて命令Bが命
令レジスタ1に保持されたときに検出回路16が待ち要
因の発生を検出すると、検出回路16からのホールド信
号に応答して命令Bが命令レジスタ1にホールドされ
る。尚、命令Bは待ち要因が解消されるまで命令レジス
タ1にホールドされる。
In the I stage, when the instructions A to E are sequentially sent from the instruction fetching stage which is the upper stage, the processing numbers "0" to "4" are given to the instructions A to E by the processing number register 21 and the counter 22, respectively. Is added. As shown in FIG. 2, when the detection circuit 16 detects the occurrence of a wait factor when the instruction B is held in the instruction register 1 at the I stage, the instruction B is returned in response to the hold signal from the detection circuit 16. Holds to 1. The instruction B is held in the instruction register 1 until the wait factor is resolved.

【0024】このとき、処理番号レジスタ21およびカ
ウンタ22によって命令Bに付与された処理番号「1」
は処理番号レジスタ23に格納され、検出回路16から
のホールド信号(図示せず)に応答してホールドされ
る。命令Bの処理番号「1」も命令レジスタ1に格納さ
れた命令Bと同様に、待ち要因が解消されるまで処理番
号レジスタ23にホールドされる。
At this time, the processing number "1" given to the instruction B by the processing number register 21 and the counter 22.
Is stored in the process number register 23 and held in response to a hold signal (not shown) from the detection circuit 16. Similarly to the instruction B stored in the instruction register 1, the processing number “1” of the instruction B is also held in the processing number register 23 until the wait factor is resolved.

【0025】Iステージにおける待ち要因としては、例
えば命令レジスタ1の命令語のアドレスシラブルで指定
されたベースレジスタ4及びインデックスレジスタ5が
先行する命令によって更新されるまで命令レジスタ1の
命令語の処理が待たされるような待ち要因、つまりレジ
スタハザードがある。
As the wait factor in the I stage, for example, the processing of the instruction word of the instruction register 1 is performed until the base register 4 and the index register 5 designated by the address syllable of the instruction word of the instruction register 1 are updated by the preceding instruction. There is a waiting factor that is kept waiting, that is, a register hazard.

【0026】命令Bが命令レジスタ1にホールドされる
と、命令Bの次の命令Cは命令レジスタ2に格納され
る。この命令レジスタ2に格納された命令Cに新たな待
ち要因が発生しなければ、命令Bの処理の待ち時間を利
用して命令Cの処理が命令Bの処理に先行して行われる
ことになる。すなわち、命令レジスタ2に格納された命
令Cが検出回路16からのセレクト信号に応じてセレク
タ3で選択され、加算器6で命令Cのオペランドの論理
アドレスC1 が生成されてLステージに送出される。
When the instruction B is held in the instruction register 1, the instruction C following the instruction B is stored in the instruction register 2. Unless a new wait factor occurs in the instruction C stored in the instruction register 2, the processing of the instruction C is performed prior to the processing of the instruction B by using the waiting time of the processing of the instruction B. . That is, the instruction C stored in the instruction register 2 is selected by the selector 3 according to the select signal from the detection circuit 16, and the adder 6 generates the logical address C1 of the operand of the instruction C and sends it to the L stage. .

【0027】このとき、処理番号レジスタ21の処理番
号「1」をカウンタ22でインクリメントして生成され
た命令Cの処理番号「2」が検出回路16からのセレク
ト信号(図示せず)に応じてセレクタ24で選択され、
Lステージに送出される。
At this time, the processing number "2" of the instruction C generated by incrementing the processing number "1" of the processing number register 21 by the counter 22 is generated according to the select signal (not shown) from the detection circuit 16. Selected by the selector 24,
It is sent to the L stage.

【0028】命令Cのオペランドの論理アドレスC1 が
生成されてLステージに送出されても命令Bの待ち要因
が解消されなければ、命令Cの処理と同様に、命令Cの
次の命令Dが命令レジスタ2に格納されてセレクタ3で
選択され、加算器6で命令Dのオペランドの論理アドレ
スD1 が生成されてLステージに送出される。
Even if the logical address C1 of the operand of the instruction C is generated and sent to the L stage, if the wait factor of the instruction B is not resolved, the instruction D next to the instruction C is the same as the processing of the instruction C. It is stored in the register 2 and selected by the selector 3. The adder 6 generates the logical address D1 of the operand of the instruction D and sends it to the L stage.

【0029】この場合も、命令Cの処理番号と同様に、
処理番号レジスタ21の処理番号「2」をカウンタ22
でインクリメントして生成された命令Dの処理番号
「3」がセレクタ24を介してLステージに送出され
る。
In this case as well, like the processing number of the instruction C,
The processing number “2” of the processing number register 21 is counted by the counter 22.
The processing number "3" of the instruction D generated by incrementing by is sent to the L stage via the selector 24.

【0030】Iステージにおいて命令Dの処理が終了し
たときに命令Bの待ち要因が解消されると、検出回路1
6から命令レジスタ1及び処理番号レジスタ23へのホ
ールド信号およびセレクタ3,24へのセレクト信号が
解除される。よって、セレクタ3,24では命令レジス
タ1の命令B及び処理番号レジスタ23の命令Bの処理
番号「1」を選択するので、命令Bのオペランドの論理
アドレスB1 及び処理番号「1」がLステージに送出さ
れる。
When the wait factor for the instruction B is eliminated when the processing of the instruction D is completed in the I stage, the detection circuit 1
The hold signal from 6 to the instruction register 1 and the processing number register 23 and the select signal to the selectors 3 and 24 are released. Therefore, since the selectors 3 and 24 select the processing number “1” of the instruction B of the instruction register 1 and the processing number B of the processing number register 23, the logical address B1 and the processing number “1” of the operand of the instruction B are transferred to the L stage. Sent out.

【0031】上述の如く、Iステージで命令Bに待ち要
因が発生すると、Iステージでは命令Bの待ち要因が解
消されるまでその待ち時間を利用して後続する命令C,
Dを先行して処理するので、Iステージ以下の各ステー
ジでは命令A,C,D,B,Eの順序で処理が行われ
る。このとき、命令A,C,D,B,E各々の処理番号
は処理番号レジスタ25,28によって持ち回られる。
As described above, when a waiting factor occurs in the instruction B at the I stage, the waiting time is used in the I stage until the waiting factor of the instruction B is eliminated, and the subsequent instruction C,
Since D is processed in advance, the processing is performed in the order of instructions A, C, D, B, and E in each stage after the I stage. At this time, the processing numbers of the instructions A, C, D, B and E are carried around by the processing number registers 25 and 28.

【0032】すなわち、Iステージでは命令A,C,
D,B,Eのオペランドの論理アドレスA1 ,C1 ,D
1 ,B1 ,E1 を順次生成してLステージに送出する。
Lステージでは命令A,C,D,B,Eのオペランドの
絶対アドレスA2 ,C2 ,D2,B2 ,E2 を順次求め
てPステージに送出する。Pステージでは命令A,C,
D,B,EのオペランドA3 ,C3 ,D3 ,B3 ,E3
を順次求めてOステージに送出する。
That is, in the I stage, instructions A, C,
Logical addresses A1, C1, D of operands D, B, E
1, B1, E1 are sequentially generated and sent to the L stage.
In the L stage, the absolute addresses A2, C2, D2, B2, E2 of the operands of the instructions A, C, D, B, E are sequentially obtained and sent to the P stage. In the P stage, instructions A, C,
Operands A3, C3, D3, B3, E3 of D, B, E
Are sequentially obtained and sent to the O stage.

【0033】Oステージでは命令A,C,D,B,Eの
オペランドA3 ,C3 ,D3 ,B3,E3 が夫々、命令
A,C,D,B,Eの処理番号「0」,「2」,
「3」,「1」,「4」をライトアドレスとしてオペラ
ンドバッファ15に順次バッファされる。但し、命令A
〜EのオペランドA3 〜E3 がオペランドバッファ15
から読出されるときにはアドレスレジスタ31及びカウ
ンタ32で生成されるリードアドレス「0」〜「4」の
順序である。
At the O stage, the operands A3, C3, D3, B3, and E3 of the instructions A, C, D, B, and E are the processing numbers "0" and "2" of the instructions A, C, D, B, and E, respectively. ,
"3", "1", and "4" are sequentially buffered in the operand buffer 15 as write addresses. However, instruction A
Operands A3 to E3 of ~ E are operand buffers 15
When read from, the order is read addresses "0" to "4" generated by the address register 31 and the counter 32.

【0034】図3に示すように、Lステージにおいて命
令Bのオペランドの論理アドレスB1 が論理アドレスレ
ジスタ7に保持されたときに検出回路16が待ち要因の
発生を検出すると、検出回路16からのホールド信号に
応答して論理アドレスB1 が論理アドレスレジスタ7に
ホールドされる。尚、論理アドレスB1 は待ち要因が解
消されるまで論理アドレスレジスタ7にホールドされ
る。
As shown in FIG. 3, when the detection circuit 16 detects the occurrence of the wait factor when the logical address B1 of the operand of the instruction B is held in the logical address register 7 in the L stage, the detection circuit 16 holds it. The logical address B1 is held in the logical address register 7 in response to the signal. The logical address B1 is held in the logical address register 7 until the wait factor is resolved.

【0035】このとき、論理アドレスB1 とともにLス
テージに送出されてきた処理番号「1」は処理番号レジ
スタ25に格納され、検出回路16からのホールド信号
(図示せず)に応答してホールドされる。命令Bの処理
番号「1」も論理アドレスレジスタ7に格納された論理
アドレスB1 と同様に、待ち要因が解消されるまで処理
番号レジスタ25にホールドされる。
At this time, the processing number "1" sent to the L stage together with the logical address B1 is stored in the processing number register 25 and held in response to a hold signal (not shown) from the detection circuit 16. . Similarly to the logical address B1 stored in the logical address register 7, the processing number "1" of the instruction B is also held in the processing number register 25 until the wait factor is resolved.

【0036】Lステージにおける待ち要因としては、例
えば絶対アドレス変換バッファ10のミスヒットによっ
て論理アドレスレジスタ7に格納された論理アドレスの
処理が待たされるような待ち要因がある。
As the wait factor in the L stage, there is, for example, a wait factor such that the processing of the logical address stored in the logical address register 7 is delayed due to a miss hit of the absolute address translation buffer 10.

【0037】論理アドレスB1 が論理アドレスレジスタ
7にホールドされると、命令Bの次の命令Cのオペラン
ドの論理アドレスC1 が論理アドレスレジスタ8に格納
される。この論理アドレスレジスタ8に格納された論理
アドレスC1 に新たな待ち要因が発生しなければ、論理
アドレスB1 の処理の待ち時間を利用して論理アドレス
C1 の処理が論理アドレスB1 の処理に先行して行われ
ることになる。すなわち、論理アドレスレジスタ8に格
納された論理アドレスC1 が検出回路16からのセレク
ト信号に応じてセレクタ9で選択され、絶対アドレス変
換バッファ10の索引によって命令Cのオペランドの絶
対アドレスC2 が求められてPステージに送出される。
When the logical address B1 is held in the logical address register 7, the logical address C1 of the operand of the instruction C next to the instruction B is stored in the logical address register 8. If a new wait factor does not occur at the logical address C1 stored in the logical address register 8, the processing of the logical address C1 precedes the processing of the logical address B1 by using the waiting time of the processing of the logical address B1. Will be done. That is, the logical address C1 stored in the logical address register 8 is selected by the selector 9 according to the select signal from the detection circuit 16, and the absolute address C2 of the operand of the instruction C is obtained by the index of the absolute address translation buffer 10. It is sent to the P stage.

【0038】このとき、Iステージから送出されてきて
処理番号レジスタ26に保持された命令Cの処理番号
「2」が検出回路16からのセレクト信号(図示せず)
に応じてセレクタ27で選択され、Pステージに送出さ
れる。
At this time, the processing number "2" of the instruction C sent from the I stage and held in the processing number register 26 is the select signal (not shown) from the detection circuit 16.
Is selected by the selector 27 in accordance with the above, and is sent to the P stage.

【0039】命令Cのオペランドの絶対アドレスC2 が
生成されてPステージに送出されても論理アドレスB1
の待ち要因が解消されなければ、論理アドレスC1 の処
理と同様に、命令Cの次の命令Dのオペランドの論理ア
ドレスD1 が論理アドレスレジスタ8に格納されてセレ
クタ9で選択され、絶対アドレス変換バッファ10の索
引によって命令Dのオペランドの絶対アドレスD2 が求
められてPステージに送出される。
Even if the absolute address C2 of the operand of the instruction C is generated and sent to the P stage, the logical address B1
If the wait factor of is not eliminated, the logical address D1 of the operand of the instruction D next to the instruction C is stored in the logical address register 8 and selected by the selector 9 as in the processing of the logical address C1. The absolute address D2 of the operand of the instruction D is obtained by the index of 10 and is sent to the P stage.

【0040】この場合も、命令Cの処理番号と同様に、
Iステージから送出されてきて処理番号レジスタ26に
保持された命令Dの処理番号「3」がセレクタ27を介
してPステージに送出される。
Also in this case, like the processing number of the instruction C,
The processing number “3” of the instruction D sent from the I stage and held in the processing number register 26 is sent to the P stage via the selector 27.

【0041】Lステージにおいて論理アドレスD1 の処
理が終了したときに論理アドレスB1 の待ち要因が解消
されると、検出回路16から論理アドレスレジスタ7及
び処理番号レジスタ25へのホールド信号およびセレク
タ9,27へのセレクト信号が解除される。よって、セ
レクタ9,27では論理アドレスレジスタ7の論理アド
レスB1 及び処理番号レジスタ25の命令Bの処理番号
「1」を選択するので、命令Bのオペランドの絶対アド
レスB2 及び処理番号「1」がPステージに送出され
る。
When the waiting factor for the logical address B1 is eliminated when the processing of the logical address D1 is completed in the L stage, the hold signal from the detection circuit 16 to the logical address register 7 and the processing number register 25 and the selectors 9, 27. The select signal to is released. Therefore, since the selectors 9 and 27 select the logical address B1 of the logical address register 7 and the processing number "1" of the instruction B of the processing number register 25, the absolute address B2 and the processing number "1" of the operand of the instruction B become P. It is sent to the stage.

【0042】このとき、Iステージにおいては、論理ア
ドレスB1 の待ち要因の解消によって下位ステージのL
ステージで論理アドレスB1 の処理が行われているの
で、命令レジスタ1に保持された命令Eの処理が検出回
路16からのホールド信号によってホールドされる。L
ステージでの論理アドレスB1 の処理が終了すると、I
ステージにおける命令Eの処理のホールド状態が解除さ
れ、命令Eのオペランドの論理アドレスE1 が生成され
て命令Eの処理番号「4」とともにLステージに送出さ
れる。
At this time, in the I stage, the wait factor of the logical address B1 is eliminated, so that the L stage of the lower stage is cleared.
Since the processing of the logical address B1 is performed in the stage, the processing of the instruction E held in the instruction register 1 is held by the hold signal from the detection circuit 16. L
When the processing of the logical address B1 in the stage is completed, I
The hold state of the processing of the instruction E in the stage is released, the logical address E1 of the operand of the instruction E is generated and sent to the L stage together with the processing number "4" of the instruction E.

【0043】上述の如く、Lステージで命令Bのオペラ
ンドの論理アドレスB1 に待ち要因が発生すると、Lス
テージでは論理アドレスB1 の待ち要因が解消されるま
でその待ち時間を利用して後続する命令C,Dのオペラ
ンドの論理アドレスC1 ,D1 を先行して処理するの
で、Lステージ以下の各ステージでは命令A,C,D,
B,Eの順序で処理が行われる。このとき、命令A,
C,D,B,E各々の処理番号は処理番号レジスタ28
によって持ち回られる。
As described above, when a wait factor occurs in the logical address B1 of the operand of the instruction B in the L stage, the subsequent instruction C is used in the L stage by using the waiting time until the wait factor of the logical address B1 is resolved. , D, the logical addresses C1 and D1 of the operands are processed in advance, so that the instructions A, C, D, and
The processing is performed in the order of B and E. At this time, command A,
The processing number of each of C, D, B, and E is the processing number register 28.
Carried around by.

【0044】すなわち、Iステージでは命令A〜Eのオ
ペランドの論理アドレスA1 〜E1を順次生成してLス
テージに送出する。Lステージでは命令A,C,D,
B,Eのオペランドの絶対アドレスA2 ,C2 ,D2 ,
B2 ,E2 を順次求めてPステージに送出する。Pステ
ージでは命令A,C,D,B,EのオペランドA3 ,C
3 ,D3 ,B3 ,E3 を順次求めてOステージに送出す
る。
That is, in the I stage, the logical addresses A1 to E1 of the operands of the instructions A to E are sequentially generated and sent to the L stage. In the L stage, instructions A, C, D,
Absolute addresses A2, C2, D2 of B and E operands,
B2 and E2 are sequentially obtained and sent to the P stage. In the P stage, the operands A3, C of the instructions A, C, D, B, E
3, D3, B3, E3 are sequentially obtained and sent to the O stage.

【0045】Oステージでは命令A,C,D,B,Eの
オペランドA3 ,C3 ,D3 ,B3,E3 が夫々、命令
A,C,D,B,Eの処理番号「0」,「2」,
「3」,「1」,「4」をライトアドレスとしてオペラ
ンドバッファ15に順次バッファされる。但し、命令A
〜EのオペランドA3 〜E3 がオペランドバッファ15
から読出されるときにはアドレスレジスタ31及びカウ
ンタ32で生成されるリードアドレス「0」〜「4」の
順序である。
At the O stage, the operands A3, C3, D3, B3, and E3 of the instructions A, C, D, B, and E are the processing numbers "0" and "2" of the instructions A, C, D, B, and E, respectively. ,
"3", "1", and "4" are sequentially buffered in the operand buffer 15 as write addresses. However, instruction A
Operands A3 to E3 of ~ E are operand buffers 15
When read from, the order is read addresses "0" to "4" generated by the address register 31 and the counter 32.

【0046】図4に示すように、Pステージにおいて命
令Bのオペランドの絶対アドレスB2 が絶対アドレスレ
ジスタ11に保持されたときに検出回路16が待ち要因
の発生を検出すると、検出回路16からのホールド信号
に応答して絶対アドレスB2が絶対アドレスレジスタ1
1にホールドされる。尚、絶対アドレスB2 は待ち要因
が解消されるまで絶対アドレスレジスタ11にホールド
される。
As shown in FIG. 4, when the detection circuit 16 detects the occurrence of a wait factor when the absolute address B2 of the operand of the instruction B is held in the absolute address register 11 in the P stage, the detection circuit 16 holds it. In response to the signal, absolute address B2 is absolute address register 1
Holds to 1. The absolute address B2 is held in the absolute address register 11 until the wait factor is resolved.

【0047】このとき、絶対アドレスB2 とともにPス
テージに送出されてきた処理番号「1」は処理番号レジ
スタ28に格納され、検出回路16からのホールド信号
(図示せず)に応答してホールドされる。命令Bの処理
番号「1」も絶対アドレスレジスタ11に格納された絶
対アドレスB2 と同様に、待ち要因が解消されるまで処
理番号レジスタ28にホールドされる。
At this time, the processing number "1" sent to the P stage together with the absolute address B2 is stored in the processing number register 28 and held in response to a hold signal (not shown) from the detection circuit 16. . Similarly to the absolute address B2 stored in the absolute address register 11, the processing number "1" of the instruction B is also held in the processing number register 28 until the wait factor is resolved.

【0048】Pステージにおける待ち要因としては、例
えばオペランドキャッシュ14のミスヒットによって絶
対アドレスレジスタ11に格納された絶対アドレスの処
理が待たされるような待ち要因がある。
The wait factor in the P stage is, for example, a wait factor such that the processing of the absolute address stored in the absolute address register 11 is delayed due to a miss hit of the operand cache 14.

【0049】絶対アドレスB2 が絶対アドレスレジスタ
11にホールドされると、命令Bの次の命令Cのオペラ
ンドの絶対アドレスC2 が絶対アドレスレジスタ12に
格納される。この絶対アドレスレジスタ12に格納され
た絶対アドレスC2 に新たな待ち要因が発生しなけれ
ば、絶対アドレスB2 の処理の待ち時間を利用して絶対
アドレスC2 の処理が絶対アドレスB2 の処理に先行し
て行われることになる。すなわち、絶対アドレスレジス
タ12に格納された絶対アドレスC2 が検出回路16か
らのセレクト信号に応じてセレクタ13で選択され、オ
ペランドキャッシュ14の索引によって命令Cのオペラ
ンドC3 が求められてOステージに送出される。
When the absolute address B2 is held in the absolute address register 11, the absolute address C2 of the operand of the instruction C next to the instruction B is stored in the absolute address register 12. If no new wait factor occurs in the absolute address C2 stored in the absolute address register 12, the processing of the absolute address C2 precedes the processing of the absolute address B2 by using the waiting time of the processing of the absolute address B2. Will be done. That is, the absolute address C2 stored in the absolute address register 12 is selected by the selector 13 in response to the select signal from the detection circuit 16, the operand C3 of the instruction C is obtained by the index of the operand cache 14, and is sent to the O stage. It

【0050】このとき、Lステージから送出されてきて
処理番号レジスタ29に保持された命令Cの処理番号
「2」が検出回路16からのセレクト信号(図示せず)
に応じてセレクタ30で選択され、Oステージに送出さ
れる。
At this time, the processing number "2" of the instruction C sent from the L stage and held in the processing number register 29 is the select signal (not shown) from the detection circuit 16.
Is selected by the selector 30 according to the above, and is sent to the O stage.

【0051】命令CのオペランドC3 が生成されてOス
テージに送出されても絶対アドレスB2 の待ち要因が解
消されなければ、絶対アドレスC2 の処理と同様に、命
令Cの次の命令Dのオペランドの絶対アドレスD2 が絶
対アドレスレジスタ12に格納されてセレクタ13で選
択され、オペランドキャッシュ14の索引によって命令
DのオペランドD3 が求められてOステージに送出され
る。
Even if the operand C3 of the instruction C is generated and sent to the O stage, if the wait factor of the absolute address B2 is not resolved, the operand D of the instruction D next to the instruction C is processed as in the processing of the absolute address C2. The absolute address D2 is stored in the absolute address register 12 and selected by the selector 13, and the operand D3 of the instruction D is obtained by the index of the operand cache 14 and sent to the O stage.

【0052】この場合も、命令Cの処理番号と同様に、
Lステージから送出されてきて処理番号レジスタ29に
保持された命令Dの処理番号「3」がセレクタ30を介
してOステージに送出される。
Also in this case, like the processing number of the instruction C,
The processing number “3” of the instruction D sent from the L stage and held in the processing number register 29 is sent to the O stage via the selector 30.

【0053】Pステージにおいて絶対アドレスD2 の処
理が終了したときに絶対アドレスB2 の待ち要因が解消
されると、検出回路16から絶対アドレスレジスタ11
及び処理番号レジスタ28へのホールド信号およびセレ
クタ13,30へのセレクト信号が解除される。よっ
て、セレクタ13,30では絶対アドレスレジスタ11
の絶対アドレスB2 及び処理番号レジスタ28の命令B
の処理番号「1」を選択するので、命令Bのオペランド
B3 及び処理番号「1」がOステージに送出される。
If the wait factor for the absolute address B2 is eliminated when the processing of the absolute address D2 is completed in the P stage, the detection circuit 16 causes the absolute address register 11
Also, the hold signal to the process number register 28 and the select signal to the selectors 13 and 30 are released. Therefore, in the selectors 13 and 30, the absolute address register 11
Absolute address B2 and instruction B of the processing number register 28
Since the processing number "1" is selected, the operand B3 of the instruction B and the processing number "1" are sent to the O stage.

【0054】このとき、Lステージにおいては、絶対ア
ドレスB2 の待ち要因の解消によって下位ステージのP
ステージで絶対アドレスB2 の処理が行われているの
で、論理アドレスレジスタ7に保持された命令Eのオペ
ランドの論理アドレスE1 の処理が検出回路16からの
ホールド信号によってホールドされる。Pステージでの
絶対アドレスB2 の処理が終了すると、Lステージにお
ける論理アドレスE1 の処理のホールド状態が解除さ
れ、命令Eのオペランドの絶対アドレスE2 が求められ
て命令Eの処理番号「4」とともにPステージに送出さ
れる。
At this time, in the L stage, the wait factor of the absolute address B2 is eliminated, so that the P of the lower stage is removed.
Since the processing of the absolute address B2 is performed in the stage, the processing of the logical address E1 of the operand of the instruction E held in the logical address register 7 is held by the hold signal from the detection circuit 16. When the processing of the absolute address B2 in the P stage is completed, the hold state of the processing of the logical address E1 in the L stage is released, the absolute address E2 of the operand of the instruction E is obtained, and the processing number "4" of the instruction E and P It is sent to the stage.

【0055】また、Iステージにおいては、絶対アドレ
スB2 の待ち要因の解消によって下位ステージのLステ
ージで論理アドレスE1 の処理がホールドされているの
で、命令レジスタ1に保持された命令Fの処理が検出回
路16からのホールド信号によってホールドされる。P
ステージでの絶対アドレスB2 の処理が終了すると、L
ステージにおける論理アドレスE1 の処理のホールド状
態が解除されるので、Iステージにおける命令Fの処理
のホールド状態が解除される。これによって、命令Fの
オペランドの論理アドレスF1 が生成されて命令Fの処
理番号「5」とともにLステージに送出される。
In the I stage, the processing of the logical address E1 is held in the L stage of the lower stage due to the elimination of the wait factor of the absolute address B2. Therefore, the processing of the instruction F held in the instruction register 1 is detected. It is held by the hold signal from the circuit 16. P
When processing of absolute address B2 on the stage is completed, L
Since the hold state for processing the logical address E1 in the stage is released, the hold state for processing the instruction F in the I stage is released. As a result, the logical address F1 of the operand of the instruction F is generated and sent to the L stage together with the processing number "5" of the instruction F.

【0056】上述の如く、Pステージで命令Bのオペラ
ンドの絶対アドレスB2 に待ち要因が発生すると、Pス
テージでは絶対アドレスB2 の待ち要因が解消されるま
でその待ち時間を利用して後続する命令C,Dのオペラ
ンドの絶対アドレスC2 ,D2 を先行して処理するの
で、Pステージ以下の各ステージでは命令A,C,D,
B,E,Fの順序で処理が行われる。
As described above, when a wait factor occurs in the absolute address B2 of the operand of the instruction B in the P stage, the subsequent instruction C is used in the P stage by using the waiting time until the wait factor of the absolute address B2 is resolved. , D, the absolute addresses C2 and D2 of the operands are processed in advance, so that in each stage after the P stage, instructions A, C, D,
Processing is performed in the order of B, E, and F.

【0057】すなわち、Iステージでは命令A〜Fのオ
ペランドの論理アドレスA1 〜F1を順次生成してLス
テージに送出する。Lステージでは命令A〜Fのオペラ
ンドの絶対アドレスA2 〜F2 を順次求めてPステージ
に送出する。Pステージでは命令A,C,D,B,E,
FのオペランドA3 ,C3 ,D3 ,B3 ,E3 ,F3を
順次求めてOステージに送出する。
That is, in the I stage, the logical addresses A1 to F1 of the operands of the instructions A to F are sequentially generated and sent to the L stage. In the L stage, the absolute addresses A2 to F2 of the operands of the instructions A to F are sequentially obtained and sent to the P stage. In the P stage, instructions A, C, D, B, E,
The operands A3, C3, D3, B3, E3, and F3 of F are sequentially obtained and sent to the O stage.

【0058】Oステージでは命令A,C,D,B,E,
FのオペランドA3 ,C3 ,D3 ,B3 ,E3 ,F3 が
夫々、命令A,C,D,B,E,Fの処理番号「0」,
「2」,「3」,「1」,「4」,「5」をライトアド
レスとしてオペランドバッファ15に順次バッファされ
る。但し、命令A〜FのオペランドA3 〜F3 がオペラ
ンドバッファ15から読出されるときにはアドレスレジ
スタ31及びカウンタ32で生成されるリードアドレス
「0」〜「5」の順序である。
At the O stage, instructions A, C, D, B, E,
Operands A3, C3, D3, B3, E3, and F3 of F are processing numbers "0" of instructions A, C, D, B, E, and F, respectively.
"2", "3", "1", "4", and "5" are sequentially buffered in the operand buffer 15 as write addresses. However, when the operands A3 to F3 of the instructions A to F are read from the operand buffer 15, the read addresses "0" to "5" generated by the address register 31 and the counter 32 are in order.

【0059】尚、命令レジスタ2と論理アドレスレジス
タ8と絶対アドレスレジスタ12とに各々格納される上
位ステージからの後続の処理要求に新たな待ち要因が発
生した場合、それらの処理要求は命令レジスタ2と論理
アドレスレジスタ8と絶対アドレスレジスタ12とにそ
の待ち要因が解消されるまでホールドされる。この場
合、処理番号レジスタ21,26,29の処理番号も同
様にホールドされる。
When a new wait factor occurs in a subsequent processing request from the upper stage stored in the instruction register 2, the logical address register 8, and the absolute address register 12, the processing request is issued to the instruction register 2 Is held in the logical address register 8 and the absolute address register 12 until the wait factor is resolved. In this case, the process numbers in the process number registers 21, 26, 29 are also held.

【0060】また、それらの処理要求は命令レジスタ1
と論理アドレスレジスタ7と絶対アドレスレジスタ11
とに夫々格納された先行する処理要求の処理が終了する
のを待って処理される。
Further, those processing requests are sent to the instruction register 1
And logical address register 7 and absolute address register 11
The processing is performed after waiting for the processing of the preceding processing requests stored in and respectively.

【0061】上述の如き制御を行うことによって、本発
明の一実施例ではパイプラインの各ステージにおいて待
ち要因が発生した場合に、その待ち時間を有効に利用す
ることができる。
By performing the control as described above, in the embodiment of the present invention, when a waiting factor occurs in each stage of the pipeline, the waiting time can be effectively used.

【0062】このように、上位ステージの命令取出しス
テージからの命令A〜Fに夫々処理番号レジスタ21及
びカウンタ22によって処理番号「0」〜「5」を付与
し、命令A〜Fに付与した処理番号をパイプラインの各
ステージにおいて持ち回るようにするとともに、パイプ
ライン処理の各ステージにおけるオペランドの先取り処
理要求に対する待ち要因の発生が検出されたときに当該
ステージの上位ステージから後続のオペランドの先取り
処理要求を受け取って処理し、パイプラインのPステー
ジで取り出された各命令A〜FのオペランドA3 〜F3
を命令A〜Fに付与された処理番号に対応してオペラン
ドバッファ15に格納し、オペランドバッファ15から
各命令A〜FのオペランドA3 〜F3 を処理番号「0」
〜「5」順に読出すことによって、パイプラインの各ス
テージで待ち要因が発生した場合にその待ち時間を有効
利用することができ、パイプライン処理の性能を大幅に
向上させることができる。
In this way, the processing numbers "0" to "5" are given to the instructions A to F from the instruction fetch stage of the upper stage by the processing number register 21 and the counter 22, respectively, and the processing given to the instructions A to F is performed. Numbers are carried around in each stage of the pipeline, and when the occurrence of a wait factor for the prefetch processing request of an operand in each stage of pipeline processing is detected, the prefetch processing of the subsequent operand from the upper stage of the stage is detected. Operands A3 to F3 of each instruction A to F fetched and processed in the P stage of the pipeline
Are stored in the operand buffer 15 in correspondence with the processing numbers assigned to the instructions A to F, and the operands A3 to F3 of the respective instructions A to F are processed from the operand buffer 15 by the processing number "0".
By reading in the order of "5", it is possible to effectively use the waiting time when a waiting factor occurs in each stage of the pipeline, and it is possible to greatly improve the performance of the pipeline processing.

【0063】[0063]

【発明の効果】以上説明したように本発明によれば、オ
ペランドの先取り処理要求各々に処理番号を付与してパ
イプライン処理の各ステージに夫々持ち回るようにする
とともに、パイプライン処理の各ステージにおけるオペ
ランドの先取り処理要求に対する待ち要因の発生が検出
されたときに当該ステージの上位ステージから後続のオ
ペランドの先取り処理要求を受け取って処理し、この処
理によって取り出されたオペランドを該オペランドの先
取り処理要求に付与された処理番号に対応づけて格納
し、処理番号順に読出すことによって、パイプラインの
各ステージで待ち要因が発生した場合にその待ち時間を
有効利用することができ、パイプライン処理の性能を大
幅に向上させることができるという効果がある。
As described above, according to the present invention, a process number is given to each of the operand prefetching processing requests so as to be carried around to each stage of the pipeline processing and each stage of the pipeline processing. When the occurrence of a wait factor for the prefetch processing request of the operand is detected, the prefetch processing request of the subsequent operand is received from the upper stage of the stage and processed, and the operand fetched by this processing is prefetched for the operand. If the wait factor occurs in each stage of the pipeline, the waiting time can be effectively used by storing the data in association with the process number assigned to the process and reading it in order of the process number. There is an effect that can be greatly improved.

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

【図1】本発明の一実施例の構成を示すブロック図であ
る。
FIG. 1 is a block diagram showing the configuration of an embodiment of the present invention.

【図2】本発明の一実施例の処理動作を示す図である。FIG. 2 is a diagram showing a processing operation of an embodiment of the present invention.

【図3】本発明の一実施例の処理動作を示す図である。FIG. 3 is a diagram showing a processing operation of an embodiment of the present invention.

【図4】本発明の一実施例の処理動作を示す図である。FIG. 4 is a diagram showing a processing operation of an embodiment of the present invention.

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

1,2 命令レジスタ 3,9,13,27,30,33 セレクタ 4 ベースレジスタ 5 インデックスレジスタ 6 加算器 7,8 論理アドレスレジスタ 10 絶対アドレス変換バッファ 11,12 絶対アドレスレジスタ 14 オペランドキャッシュ 15 オペランドバッファ 16 検出回路 21,23,25,26,28,29 処理番号レジス
タ 22,32 カウンタ 31 アドレスレジスタ
1, 2 Instruction register 3, 9, 13, 27, 30, 33 Selector 4 Base register 5 Index register 6 Adder 7, 8 Logical address register 10 Absolute address translation buffer 11, 12 Absolute address register 14 Operand cache 15 Operand buffer 16 Detection circuit 21,23,25,26,28,29 Processing number register 22,32 Counter 31 Address register

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 パイプライン処理によってオペランドの
先取りを行う情報処理装置の先行制御装置であって、
次送られてくる前記オペランドの先取り処理要求各々に
連続する処理番号を付与する手段と、前記パイプライン
処理の各ステージに設けられかつ前記オペランドの先取
り処理要求各々に付与された前記処理番号を前記オペラ
ンドの先取り処理要求及びその処理要求に対する各ステ
ージにおける処理結果に対応して持ち回る手段と、前記
パイプライン処理の各ステージにおける前記オペランド
の先取り処理要求に対する処理の待ち要因の発生を検出
する検出手段と、前記パイプライン処理の各ステージに
設けられかつ前記検出手段によって前記待ち要因の発生
が検出されたときに当該ステージの上位ステージから後
続のオペランドの先取り処理要求及びその処理結果を受
け取って処理する手段と、前記パイプライン処理によっ
て取り出されたオペランドを該オペランドの先取り処理
要求に付与された前記処理番号に対応付けて格納する格
納手段と、前記格納手段から前記処理番号の順序で前記
オペランドを読出す手段とを有することを特徴とする先
行制御装置。
1. A preceding control device of an information processing device for prefetching operands by pipeline processing, comprising :
For each prefetch request for the operand sent next
Said means for imparting a continuous process number, the process number assigned to prefetch processing request each provided and said operand to each stage of the pipeline processing opera
Pre-processing request of the command and each step for the processing request.
Means for carrying around the processing result in the pipeline processing, detecting means for detecting the occurrence of a processing wait factor for the prefetch processing request of the operand in each stage of the pipeline processing, and each stage of the pipeline processing. means for the provided and said detecting means for processing receiving a prefetch processing request and the processing result of the subsequent operand from the upper stage of the stage when the occurrence of the waiting factor is detected, picked up by the pipeline processing Storage means for storing the operand in association with the processing number given to the prefetch processing request of the operand, and means for reading the operand from the storage means in the order of the processing number. Advance control device.
【請求項2】 当該ステージにおける処理前に当該ステ
ージの上位ステージにおける前記オペランドの先取り処
理要求の処理結果を保持する第1の保持手段と、前記第
1の保持手段に保持された前記処理結果に対応する前記
オペランドの先取り処理要求に後続するオペランドの先
取り処理要求の処理結果を保持する第2の保持手段と、
前記検出手段の検出結果に応じて前記第1及び第2の保
持手段各々に保持された内容のうち一方を選択する選択
手段とを前記パイプライン処理の各ステージに含み、前
記選択手段が前記検出手段によって前記待ち要因の発生
が検出されたときに前記第2の保持手段に保持された内
容を選択するようにしたことを特徴とする請求項1記載
の先行制御装置。
2. A first holding means for holding a processing result of a prefetch processing request of the operand in a higher stage of the stage before processing in the stage, and the processing result held in the first holding means. Second holding means for holding the processing result of the prefetch processing request of the operand subsequent to the prefetch processing request of the corresponding operand;
Each stage of the pipeline processing includes selection means for selecting one of the contents held in each of the first and second holding means according to the detection result of the detection means ,
The selection means causes the detection means to generate the waiting factor.
Is held by the second holding means when is detected.
The advance control apparatus according to claim 1 , wherein the volume is selected .
【請求項3】 前記オペランドの先取り処理要求各々に
付与された前記処理番号を保持する第1の処理番号保持
手段と、当該ステージの上位ステージからの後続のオペ
ランドの先取り処理要求に付与された前記処理番号を保
持する第2の処理番号保持手段と、前記検出手段の検出
結果に応じて前記第1の処理番号保持手段に保持された
処理番号と前記第2の処理番号保持手段に保持された処
理番号 とのうち一方を選択して下位ステージに送出する
選択手段とを前記パイプライン処理の各ステージに含
み、前記選択手段が前記検出手段によって前記待ち要因
の発生が検出されたときに前記第2の処理番号保持手段
に保持された処理番号を選択するようにしたことを特徴
とする請求項1または請求項2記載の先行制御装置。
3. A prefetch processing request for each of the operands
First processing number holding that holds the given processing number
Means and subsequent operations from the stage above it.
Keep the processing number given to the land advance processing request.
Second processing number holding means held and detection by the detecting means
It is held in the first processing number holding means according to the result.
The processing number and the processing stored in the second processing number storage means.
Select one of the physical number and send it to the lower stage
A selection means is included in each stage of the pipeline processing.
The selection means causes the detection means to cause the waiting factor.
Second processing number holding means when the occurrence of
The advance control device according to claim 1 or 2 , wherein the process number held in (3) is selected .
JP4319486A 1992-11-04 1992-11-04 Advance control device Expired - Fee Related JPH0820948B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4319486A JPH0820948B2 (en) 1992-11-04 1992-11-04 Advance control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4319486A JPH0820948B2 (en) 1992-11-04 1992-11-04 Advance control device

Publications (2)

Publication Number Publication Date
JPH06149567A JPH06149567A (en) 1994-05-27
JPH0820948B2 true JPH0820948B2 (en) 1996-03-04

Family

ID=18110750

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4319486A Expired - Fee Related JPH0820948B2 (en) 1992-11-04 1992-11-04 Advance control device

Country Status (1)

Country Link
JP (1) JPH0820948B2 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS581246A (en) * 1981-06-26 1983-01-06 Fujitsu Ltd Controlling system for order of instruction processing
JPH0668722B2 (en) * 1986-10-09 1994-08-31 日本電気株式会社 Instruction processing order controller

Also Published As

Publication number Publication date
JPH06149567A (en) 1994-05-27

Similar Documents

Publication Publication Date Title
JPH0557616B2 (en)
US5642500A (en) Method and apparatus for controlling instruction in pipeline processor
US4933841A (en) Microcode reading control system
JPH0682320B2 (en) Data processing device
US5386521A (en) Instruction prefetching circuit with a next physical address precalculating circuit
JPH0820948B2 (en) Advance control device
JP2783285B2 (en) Information processing device
JPH05298097A (en) Information processing equipment
JPS6125166B2 (en)
JP2535593B2 (en) Information processing device
JP3493110B2 (en) High-speed branch processing unit
JPS6047618B2 (en) information processing equipment
JP3431503B2 (en) Information processing apparatus and program control method
JPH01126732A (en) information processing equipment
JPH06124206A (en) Branching instruction estimation processor and processing method therefor
JPH08212068A (en) Information processing device
JPH06314196A (en) Information processing method and device
JPS6047615B2 (en) Serialized instruction execution control method
JPH04213727A (en) Information processor
JPH02207328A (en) Pipe line control system
JPS586972B2 (en) information processing equipment
JPH0769816B2 (en) Data processing device
JPH05265751A (en) Data processor
JPH0619705A (en) Pipeline control method
JPH01296345A (en) Information processor

Legal Events

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