JPS6120893B2 - - Google Patents
Info
- Publication number
- JPS6120893B2 JPS6120893B2 JP55068986A JP6898680A JPS6120893B2 JP S6120893 B2 JPS6120893 B2 JP S6120893B2 JP 55068986 A JP55068986 A JP 55068986A JP 6898680 A JP6898680 A JP 6898680A JP S6120893 B2 JPS6120893 B2 JP S6120893B2
- Authority
- JP
- Japan
- Prior art keywords
- register
- instruction
- transfer
- inter
- transfer instruction
- 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
Links
- 238000012546 transfer Methods 0.000 claims description 51
- 238000001514 detection method Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 13
- 238000012790 confirmation Methods 0.000 claims description 11
- 230000010365 information processing Effects 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005764 inhibitory process Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
Description
【発明の詳細な説明】
本発明は、アドレス展開用ベースレジスタおよ
びインデツクスレジスタを先行制御部に備えて、
命令のパイプライン処理を行なうことのできる情
報処理装置に関する。DETAILED DESCRIPTION OF THE INVENTION The present invention provides an advance control unit with a base register and an index register for address expansion,
The present invention relates to an information processing device capable of pipeline processing of instructions.
従来、この種の情報処理装置においては、レジ
スタ間移送命令を一般の演算制御部同様演算制御
部で行なつていたため、その演算結果のベースレ
ジスタ、又はインデツクスレジスタに確定する時
期が加算、又は減算等の命令と同等のタイミング
まで遅れざるを得なかつた。従つて、先行する命
令のアドレス展開に使用すべきベースレジスタお
よびインデツクスレジスタに対する移送がある
と、前記先行命令のアドレス展開は常にその移送
が終了するまで待合せをせねばならぬという欠点
があつた。 Conventionally, in this type of information processing device, inter-register transfer instructions have been executed in the arithmetic control unit like a general arithmetic control unit, so the timing at which the result of the operation is finalized in the base register or index register depends on the addition or This had to be delayed to the same timing as instructions such as subtraction. Therefore, if there is a transfer to the base register and index register that should be used for the address expansion of the preceding instruction, there is a drawback that the address expansion of the preceding instruction always has to wait until the transfer is completed. .
本発明の目的は、レジスタ間移送命令の実行を
先行制御部において演算制御部に先行して行な
い、上記先行制御部内レジスタの確定を早めるこ
とによつて従来の欠点を解消し、レジスタ間移送
命令に続く命令のアドレス展開に対して待合せを
不要にすることのできる情報処理装置を提供する
ことにある。 It is an object of the present invention to eliminate the drawbacks of the prior art by executing an inter-register transfer instruction in a pre-control unit in advance of an arithmetic control unit and to accelerate the determination of registers in the pre-control unit. An object of the present invention is to provide an information processing device that can eliminate the need for queuing for address expansion of a command following a command.
本発明によれば、アドレス展開用ベースレジス
タ群およびインデツクスレジスタ群を備えた命令
のパイプライン処理を行なう形の情報処理装置に
おいて、レジスタ間移送命令検出回路と、該レジ
スタ間移送命令の移送元レジスタ番号と移送命令
以前のレジスタ確定待ちレジスタ番号との一致検
出回路と、前記両検出回路の指示によりレジスタ
間移送の先行処理の可否を判断し、レジスタ確定
待ちへの登録の抑止とレジスタ間の移送を指示す
る制御手段とを設け、これによつて、演算制御部
での実行に先行してレジスタ間移送命令の際の前
記アドレス展開用ベースレジスタ群および前記イ
ンデツクスレジスタ群の確定を早めるようにした
ことを特徴とする先行制御機能を有する情報処理
装置が得られる。 According to the present invention, in an information processing apparatus that performs pipeline processing of instructions and includes a base register group for address expansion and an index register group, an inter-register transfer instruction detection circuit and a transfer source of the inter-register transfer instruction are provided. A match detection circuit between the register number and the register number waiting for register confirmation before the transfer instruction, and instructions from both detection circuits, determine whether advance processing of inter-register transfer can be performed. control means for instructing the transfer, thereby speeding up the determination of the address development base register group and the index register group in the case of an inter-register transfer instruction prior to execution in the arithmetic control unit. An information processing device having a proactive control function is obtained.
次に、本発明の実施例について図面を参照して
詳細に説明する。 Next, embodiments of the present invention will be described in detail with reference to the drawings.
第1図は本発明の実施例を構成する先行制御部
のブロツク図である。この先行制御部において、
先取りされた命令を保持する命令レジスタ1の命
令コード部分が線2を介してレジスタ間移送命令
検出回路3に渡され、該検出回路3によりレジス
タ間移送命令であることが判別されると、線4か
らレジスタ間移送制御回路5に通知される。ま
た、前記命令レジスタ1の移送元レジスタ番号を
表示する部分が、線6を介して、移送元レジスタ
番号と確定待レジスタ番号との一致検出回路7
と、レジスタ確定待ち制御回路8と、ベースレジ
スタ群9の読出しアドレス部と、インデツクスレ
ジスタ群10の読出しアドレス部とに送られる。
また前記命令レジスタ1の移送元レジスタ番号を
表示する部分が、線11を通して、前記レジスタ
確定待ち制御回路8とベースレジスタ群9の書込
アドレス部と、インデツクスレジスタ群10の書
込アドレス部とへ送られる。さらに、上記確定待
制御回路8から確定待を要するレジスタ番号が線
12を通して一致検出回路7へ通知され、また、
線13からアドレス展開制御回路14に対してア
ドレス展開の起動を行なう。レジスタ移送制御回
路5からは、線15を介して確定待制御回路8へ
の登録抑止指示と、線16を介してベースレジス
タ群9またはインデツクスレジスタ群10のレジ
スタ間の移送を指示する。このレジスタ間の移送
は、線17および18からのレジスタ読出しデー
タを選択回路19がうけると、移送元のレジスタ
側が選択され、線20を介してベースレジスタ群
9(以下BRと略す)、又はインデツクスレジスタ
群10(以下IRと略す)に該当するデータが書
込まれることによつて達せられる。なお、第1図
におけるベースレジスタ群9およびインデツクス
レジスタ群10は、後述するように先行制御部お
よび演算制御部において共用的に役立てられる。 FIG. 1 is a block diagram of an advance control section constituting an embodiment of the present invention. In this advance control section,
The instruction code portion of the instruction register 1 that holds the prefetched instruction is passed to the inter-register transfer instruction detection circuit 3 via the line 2, and when the detection circuit 3 determines that it is an inter-register transfer instruction, the instruction code portion is passed to the inter-register transfer instruction detection circuit 3 via the line 2. 4, the inter-register transfer control circuit 5 is notified. Further, the portion displaying the transfer source register number of the instruction register 1 is connected to a match detection circuit 7 between the transfer source register number and the finalized register number via the line 6.
and is sent to the register confirmation wait control circuit 8, the read address section of the base register group 9, and the read address section of the index register group 10.
Further, the portion of the instruction register 1 that displays the transfer source register number is connected to the register confirmation wait control circuit 8, the write address portion of the base register group 9, and the write address portion of the index register group 10 through a line 11. sent to. Further, the register number that requires a definite wait is notified from the definite wait control circuit 8 to the coincidence detection circuit 7 through the line 12, and
Address expansion is activated from line 13 to address expansion control circuit 14 . The register transfer control circuit 5 issues a registration inhibition instruction to the confirmation waiting control circuit 8 via a line 15, and an instruction to transfer between registers in the base register group 9 or index register group 10 via a line 16. In this transfer between registers, when the selection circuit 19 receives register read data from lines 17 and 18, the transfer source register side is selected, and the data is transferred to the base register group 9 (hereinafter abbreviated as BR) or the index via line 20. This is achieved by writing the corresponding data to the Tx register group 10 (hereinafter abbreviated as IR). Note that the base register group 9 and index register group 10 in FIG. 1 are commonly used in the advance control section and the arithmetic control section, as will be described later.
以下、第2図に示すような命令プログラムの実
行について、基本命令(加減算命令、移送命令
等)が2マシンサイクルで実現される場合を例に
挙げ、第3図のタイムチヤートを参照して説明す
る。第2図において、プログラム例1はレジスタ
間移送命令直前に該移送命令の移送元レジスタ
番号IR3の確定待ちがないケースを示し、プロ
グラム例2はレジスタ間移送命令直前に該移送
命令の移送元レジスタ番号IR1の確定待がある
場合を示している。 The execution of an instruction program as shown in Fig. 2 will be explained below with reference to the time chart shown in Fig. 3, taking as an example the case where basic instructions (addition/subtraction instructions, transfer instructions, etc.) are realized in two machine cycles. do. In FIG. 2, program example 1 shows a case where there is no confirmation of the transfer source register number IR3 of the transfer instruction immediately before the inter-register transfer instruction, and program example 2 shows the case where the transfer source register number IR3 of the transfer instruction is not waited for immediately before the inter-register transfer instruction. This shows the case where there is a waiting list for number IR1.
まず、プログラム例1の場合には、第1図にお
いて、の命令が命令レジスタ1にタイミングA
で確定すると、パイプライン処理が開始され、演
算制御部に対して演算動作の開始指示がなされ、
命令レジスタ1内のレジスタ番号が送出される。
タイミングBでは演算制御部におけるIR1およ
びIR2の読出しが行われ、タイミングCで各々
の読出しデータが演算レジスタR1およびR2
(図に見られない)に確定される。それから、タ
イミングDで演算の結果が演算結果レジスタに保
持され、タイミングEでIR1が確定して命令
が終了する。これと並行して、先行制御部では、
タイミングBで命令によるIR1の更新がすむ
まで、IR1を使用する先行処理は行なえないこ
とをレジスタ確定待制御回路8へ報告する。報告
をうけた確定待制御回路8はタイミングCで確定
待レジスタ番号IR1を登録し、タイミングDで
IR1の更新がなされるまで保持する。 First, in the case of program example 1, the instruction shown in FIG. 1 is stored in instruction register 1 at timing A.
When confirmed, pipeline processing is started, and an instruction to start the calculation operation is given to the calculation control unit.
The register number in instruction register 1 is sent out.
At timing B, reading of IR1 and IR2 is performed in the arithmetic control section, and at timing C, each read data is read out from the arithmetic registers R1 and R2.
(not shown in the figure). Then, at timing D, the result of the operation is held in the operation result register, and at timing E, IR1 is determined and the instruction ends. In parallel, in the advance control section,
At timing B, a report is sent to the register confirmation wait control circuit 8 that advance processing using IR1 cannot be performed until IR1 is updated by the instruction. After receiving the report, the fixed waiting control circuit 8 registers the fixed waiting register number IR1 at timing C, and at timing D.
Retained until IR1 is updated.
しかし、命令に続く命令の先行処理にIR1
は不必要なので、先行処理は次の様に進行する。
先行制御部では、命令がレジスタ間移送命令で
あることをタイミングCで検出回路3の出力によ
り知り、その出力と同タイミングで得られた確定
待レジスタ番号一致検出回路7の不一致出力
(IR1≠IR3)とによつてレジスタ間移送制御回
路5が動作する。この制御出力によつて、IR群
10から(読出しアドレスは線6により既に与え
られている)IR3が読出される。選択回路19
で線18側を選択した結果は、線20を通して
BR群9の(書込みアドレスは線11により既に
与えられている)BR1に対して書込指示を与
え、タイミングEでのBR1確定待ちの登録を抑
止する。従つて、のレジスタ間移送命令による
先行制御部内BR1はタイミングDで確定する。
演算制御部における命令結果のBR1確定は、
命令と同様のパイプライン処理によりタイミン
グGでなされるが、命令がレジスタ間移送命令
なのでタイミングEでのBR1確定待登録は不要
である。そして、命令のアドレス展開用BR1
の必要タイミングEでは、既にBR1は先行制御
部内BR群に確定済であり、そのために、命令
のパイプライン処理は待合せなしに進行すること
が可能となり、これによつてアドレス展開制御回
路14が起動する。 However, IR1 is required for preprocessing of the instruction following the instruction.
is unnecessary, so the preceding processing proceeds as follows.
The advance control unit learns from the output of the detection circuit 3 at timing C that the instruction is an inter-register transfer instruction, and detects the mismatch output (IR1≠IR3 ), the inter-register transfer control circuit 5 operates. This control output reads IR3 from IR group 10 (the read address has already been given by line 6). Selection circuit 19
The result of selecting the line 18 side is that through line 20
A write instruction is given to BR1 of BR group 9 (the write address has already been given through line 11), and registration of waiting for BR1 confirmation at timing E is suppressed. Therefore, BR1 in the advance control unit is determined at timing D by the inter-register transfer instruction.
BR1 confirmation of the instruction result in the arithmetic control section is as follows:
This is done at timing G by pipeline processing similar to the instruction, but since the instruction is an inter-register transfer instruction, there is no need to register BR1 to be confirmed at timing E. And BR1 for instruction address expansion
At the required timing E, BR1 has already been determined to be in the BR group in the advance control unit, and therefore, the pipeline processing of the instruction can proceed without waiting, and the address expansion control circuit 14 is activated. do.
プログラム例2の場合は、タイミングCでの確
定待レジスタ番号一致検出回路7が一致(IR1
=IR1)出力となり、タイミングEで不一致出
力となるまで命令の先行処理が遅れることを除
いて、プログラム例1の場合と同様である。 In the case of program example 2, the waiting register number match detection circuit 7 at timing C matches (IR1
=IR1) output, and the process is the same as in program example 1, except that the preceding processing of the instruction is delayed until a mismatch output occurs at timing E.
上記のプログラム例によれば、従来のレジスタ
間移送命令に続く命令のアドレス展開用レジスタ
確定待時間が2マシンサイクル減少することが理
解できよう。 According to the above program example, it can be seen that the waiting time for establishing a register for address expansion of an instruction following a conventional register-to-register transfer instruction is reduced by two machine cycles.
以上の説明によつて明らかなように、本発明に
よれば、演算制御部での実行に先行してレジスタ
間移送命令におけるアドレス展開用ベースレジス
タ群およびインデツクスレジスタ群の確定を早め
ることができるから、レジスタ間移送命令直後の
アドレス展開処理の待合せが無くなる点において
処理能力を向上すべく得られる効果は大である。 As is clear from the above description, according to the present invention, it is possible to quickly determine the address expansion base register group and index register group in an inter-register transfer instruction prior to execution in the arithmetic control unit. Therefore, the effect of improving processing performance is significant in that there is no need to wait for address expansion processing immediately after an inter-register transfer instruction.
第1図は本発明の実施例を構成する先行制御部
のブロツク図、第2図は、第1図における実施例
の動作を説明するための2つのプログラム例、第
3図は、第2図のプログラムを実行するための動
作を説明するタイムチヤートである。
図において、1は命令レジスタ、3はレジスタ
間移送命令検出回路、5はレジスタ間移送制御回
路、7は一致検出回路、8はレジスタ確定待ち制
御回路、9はベースレジスタ群、10はインデツ
クスレジスタ群、14はアドレス展開制御回路、
19は選択回路である。
FIG. 1 is a block diagram of a preceding control unit constituting an embodiment of the present invention, FIG. 2 is a block diagram of two program examples for explaining the operation of the embodiment in FIG. 1, and FIG. This is a time chart explaining the operation for executing the program. In the figure, 1 is an instruction register, 3 is an inter-register transfer instruction detection circuit, 5 is an inter-register transfer control circuit, 7 is a coincidence detection circuit, 8 is a register confirmation wait control circuit, 9 is a base register group, and 10 is an index register. group 14 is an address expansion control circuit;
19 is a selection circuit.
Claims (1)
共用されるアドレス展開用ベースレジスタ群およ
びインデツクスレジスタ群とを備えた命令のパイ
プライン処理を行なう形の情報処理装置におい
て、 前記レジスタ間のデータの移送を前記演算制御
部を介さずに高速に行なう転送手段と; レジスタ間移送命令検出回路と、該レジスタ間
移送命令の移送元レジスタ番号と移送命令以前の
レジスタ確定待ちレジスタ番号との一致検出回路
と、前記両検出回路の指示により前記レジスタ間
移送命令の先行処理の可否を判断し該レジスタ間
移送命令の先行実行が可能ならば該移送命令の移
送先レジスタ番号のレジスタ確定待ちへの登録を
抑止するとともに前記転送手段にデータの移送を
行なわせる制御手段とを有する前記先行制御部と
を備え、 前記演算制御部での前記移送命令の実行に先行
して前記先行制御部で該移送命令を実行すること
により該移送命令に後続する命令の実行時期を早
められることを特徴とする先行制御機能を有する
情報処理装置。[Scope of Claims] 1. An information processing device that performs instruction pipeline processing and includes a preceding control section, an arithmetic control section, and a base register group for address expansion and an index register group shared by these control sections. Transfer means for transferring data between the registers at high speed without going through the arithmetic control unit; an inter-register transfer instruction detection circuit; and a transfer source register number of the inter-register transfer instruction and confirmation of the register before the transfer instruction. A matching detection circuit with the waiting register number and instructions from both of the detection circuits determine whether advance processing of the inter-register transfer instruction is possible, and if advance execution of the inter-register transfer instruction is possible, the transfer destination register number of the transfer instruction is determined. the preceding control section having a control means for suppressing the registration of the data into a register waiting for confirmation and for causing the transfer means to transfer data, An information processing device having a advance control function, characterized in that by executing the transfer instruction in a advance control unit, the execution timing of an instruction subsequent to the transfer instruction can be brought forward.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6898680A JPS56166553A (en) | 1980-05-26 | 1980-05-26 | Information process having advanced control function |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6898680A JPS56166553A (en) | 1980-05-26 | 1980-05-26 | Information process having advanced control function |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS56166553A JPS56166553A (en) | 1981-12-21 |
JPS6120893B2 true JPS6120893B2 (en) | 1986-05-24 |
Family
ID=13389487
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6898680A Granted JPS56166553A (en) | 1980-05-26 | 1980-05-26 | Information process having advanced control function |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS56166553A (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58189739A (en) * | 1982-04-30 | 1983-11-05 | Hitachi Ltd | Data processing system |
JPS58189738A (en) * | 1982-04-30 | 1983-11-05 | Hitachi Ltd | Data processing system |
JPS6174031A (en) * | 1984-09-19 | 1986-04-16 | Hitachi Ltd | Advanced control system |
JPS61143850A (en) * | 1984-12-18 | 1986-07-01 | Nec Corp | Processor |
GB9112754D0 (en) * | 1991-06-13 | 1991-07-31 | Int Computers Ltd | Data processing apparatus |
-
1980
- 1980-05-26 JP JP6898680A patent/JPS56166553A/en active Granted
Also Published As
Publication number | Publication date |
---|---|
JPS56166553A (en) | 1981-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5043868A (en) | System for by-pass control in pipeline operation of computer | |
JPS6028015B2 (en) | information processing equipment | |
JPS63317828A (en) | Reading control system for microcode | |
JPS6142308B2 (en) | ||
JPS62115542A (en) | Information processor | |
JPS6120893B2 (en) | ||
EP0150506B1 (en) | Instruction processor | |
KR100241970B1 (en) | Data processing apparatus for performing pipeline processing | |
US5819081A (en) | Method of executing a branch instruction of jumping to a subroutine in a pipeline control system | |
JPS5890247A (en) | Pipeline controlling system of information processor | |
JP2814683B2 (en) | Instruction processing unit | |
JPS60118977A (en) | Pipeline control system | |
JPS5896345A (en) | Hierarchical arithmetic system | |
JP2894438B2 (en) | Pipeline processing equipment | |
CN116841614B (en) | Sequential vector scheduling method under disordered access mechanism | |
JP2845578B2 (en) | Instruction control method | |
JPH0452488B2 (en) | ||
JPH0238966B2 (en) | ||
JP3084953B2 (en) | Information processing device | |
JP2806690B2 (en) | Microprocessor | |
JPS6116111B2 (en) | ||
JPS5896346A (en) | Hierarchical arithmetic system | |
JPS6149695B2 (en) | ||
JPH0792902A (en) | Programmable controller | |
JPS6057603B2 (en) | arithmetic processing unit |