JPS60204036A - Data processing device - Google Patents

Data processing device

Info

Publication number
JPS60204036A
JPS60204036A JP5823984A JP5823984A JPS60204036A JP S60204036 A JPS60204036 A JP S60204036A JP 5823984 A JP5823984 A JP 5823984A JP 5823984 A JP5823984 A JP 5823984A JP S60204036 A JPS60204036 A JP S60204036A
Authority
JP
Japan
Prior art keywords
instruction
register
address
result
index
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
JP5823984A
Other languages
Japanese (ja)
Inventor
Hidenori Takeuchi
秀紀 竹内
Kazunori Kuriyama
和則 栗山
Kenichi Wada
健一 和田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP5823984A priority Critical patent/JPS60204036A/en
Publication of JPS60204036A publication Critical patent/JPS60204036A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To execute a processing without disturbing an advance control by bypassing the result of an address calculation and delivering it to the succeeding instruction, when it is detected that the result of an address generating instruction is requested by its succeeding instruction. CONSTITUTION:Register number comparing circuits 20, 21, 30 and 31 are connected to instruction registers 10-14, also the instruction of the register 10 is decoded by an instruction decoder 1, its result is set to each index and base register 70, 71, and its contents and a displacement D of the register 10 are added by a three-input adder 72 and set to a register DAR73. In such a state, it is detected by a comparator 21 or 20 that a store register of an instruction of a load address system is the same as the base or index register of the next instruction, the output line 73l of the DAR73 is selected by a selector 61 or 60, and set to the register 71 or 70.

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、先行制御にて命令処理を行なうデータ処理装
置に関するもので、特にアドレス生成命令の処理方式に
関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Application of the Invention] The present invention relates to a data processing device that processes instructions using advance control, and particularly to a processing method for address generation instructions.

〔発明の背景〕[Background of the invention]

アドレス生成命令であるロードアドレス系の命令(以下
、LA命令と略す)は、アドレス計算によりメモリアド
レスをめ、結果を汎用レジスタ(以下、GRという)に
格納する。一般に、LA命令にてめたアドレスは、ベー
ス値、あるいはインデックス値として、後続命令で使用
される。
A load address type instruction (hereinafter referred to as LA instruction), which is an address generation instruction, determines a memory address by calculating an address and stores the result in a general-purpose register (hereinafter referred to as GR). Generally, the address set by the LA instruction is used as a base value or index value in subsequent instructions.

従って他の命令に比べて、LA命令の結果は灰命令のア
ドレス計算に使う頻度が高い。
Therefore, compared to other instructions, the result of the LA instruction is used more frequently for calculating the address of the gray instruction.

従来、先行制御を行なうデータ処理装置においては、現
在実行中の命令の結果を後続命令が使用する場合、後続
命令の先行動作を禁止する方法が採られている。
BACKGROUND ART Conventionally, in a data processing apparatus that performs advance control, a method has been adopted in which when a subsequent instruction uses the result of an instruction currently being executed, the advance operation of the subsequent instruction is prohibited.

この方法では、前記LA命令の後続命令は、比較的高い
頻度で待たされることになり、性能低下を招いていた。
In this method, instructions subsequent to the LA instruction are forced to wait relatively frequently, resulting in a decrease in performance.

この解決法として、従来は、LA命令を含めてGRを更
新する命令の直後の命令が、同じGRO内各を必要とし
ているとき、GRに格納する前のデータをバイパスさせ
る方式として、特公昭56−46170号、特公昭57
−9088号等がある。これらに示されている方法は、
いずれもオペランドがメモリ上にあり、メモリからオペ
ランド読出しを行ない、そのデータをそのまま、後続命
令のアドレス計算に使用するか、あるいは本来の演算実
行に先立って、専用の先行演算器を使用して先行演゛算
を行ない、その結果を後続命令のアドレス計算に使用す
る。
As a solution to this problem, conventionally, when the instruction immediately following the instruction that updates the GR, including the LA instruction, requires each of the same GRO, a method was proposed in which the data before being stored in the GR was bypassed. -46170, Special Publication No. 1987
-9088 etc. The methods shown in these
In both cases, the operand is in memory, and either the operand is read from memory and the data is used as is to calculate the address of the subsequent instruction, or a dedicated pre-operation unit is used to advance the operation before the actual operation is executed. Performs an operation and uses the result to calculate the address of the subsequent instruction.

しかし、これらの方法では、LA命令のようにメモリ読
出しが必要でなく、アドレス計算の結果がそのまま後続
命令のアドレス計算に使用されるケースについても同様
の処理となり、高度の先行制御を行なう場合には、やは
り後続命令が侍たせられる。
However, with these methods, the same processing occurs even in cases where memory read is not required like the LA instruction, and the result of address calculation is used as is for the address calculation of the subsequent instruction. , the subsequent commands are still served.

〔発明の目的〕[Purpose of the invention]

本発明の目的は、前記欠点を除去するものであす、 L
A命令の後続命令にて、I、A命令の結果を使用する場
合に、先行制御を乱すことなく処理するデータ処理装置
を提供することにある。
The object of the present invention is to eliminate the above-mentioned drawbacks, L
It is an object of the present invention to provide a data processing device that processes the results of the I and A instructions without disturbing the preceding control when the results of the I and A instructions are used in instructions subsequent to the A instruction.

〔発明の概要〕[Summary of the invention]

本発明は、LA命令にてアドレス計算した結果をバイパ
スさせて、後続命令に渡すことにより先行制御を乱すこ
となく、命令処理を行なう。
The present invention performs instruction processing without disturbing advance control by bypassing the result of address calculation using the LA instruction and passing it to the subsequent instruction.

〔発明の実施例〕[Embodiments of the invention]

以下、本発明の一実施例を第1図〜第3図により説明す
る。
An embodiment of the present invention will be described below with reference to FIGS. 1 to 3.

第1図は、命令形式を示す。OPは命令コード、Rは第
1オペランドを示すGR番号、X、B、Dは第2オペラ
ンドアドレスをめるだめのインデックスレジスタ番号、
ペースレジスタ番号。
FIG. 1 shows the instruction format. OP is the instruction code, R is the GR number indicating the first operand, X, B, D are the index register numbers for storing the second operand address,
Pace register number.

及びディスプレスメントを示す。第2オペランドアドレ
スは、GR(X)+Gl−L(B)+Dによりめる(G
R(i)はGEL番号番号内容を意味する)。
and displacement. The second operand address is determined by GR(X)+Gl-L(B)+D(G
R(i) means GEL number number content).

LA命令は、第2オペランドアドレスを番号孔のGRに
格納する。
The LA instruction stores the second operand address in the number hole GR.

第2図は本発明の一実施例を示すブロック図である。FIG. 2 is a block diagram showing one embodiment of the present invention.

命令レジスタ10〜14.命令デコーダ1.LA命令保
持フリップフロップ2〜5.レジスタ番号比較回路20
,21.50,51. ANDゲート20G、 21G
Instruction registers 10-14. Instruction decoder 1. LA instruction holding flip-flops 2-5. Register number comparison circuit 20
, 21.50, 51. AND gate 20G, 21G
.

30G、31G、GRを構成するレジスタメモリ6、任
意のORを独立に選択するマルチプレクサ50,51゜
アドレス計算データを選択するセレクタ60,61゜イ
ンデックス値を保持するインデックスレジスタ70.ベ
ース値を保持するペースレジスタ71゜アドレス計算を
行なう3人力加算器72.アドレス計算結果を保持する
DAR73,主演算器82.主演算器人力レジスタ80
,81.及びその結果レジスタ86より構成されている
30G, 31G, and register memory 6 that constitutes GR; multiplexers 50 and 51° that independently select arbitrary OR; selectors 60 and 61° that select address calculation data; and index register 70 that holds index values. Pace register 71 which holds the base value; Three-man power adder 72 which performs address calculation. DAR 73 that holds address calculation results, main processing unit 82. Main computing unit manual register 80
,81. and a result register 86.

命令処理の基本ステージは、D 、 M 、 A 、L
The basic stages of instruction processing are D, M, A, and L.
.

B、Wの6ステージからなる。命令レジスタ10〜14
はこのステージD−Hにそれぞれ対応している。Dステ
ージはデコーダ1による命令の解読トイ−スレジスタフ
1.インデツクスレジスタ70の設定2Mステージは3
人力加算器72によるアドレス計算、A、Lステージは
、オペランド読出しが必要なときのメモリ読出し、Eス
テージは演算実行ステージ、Wステージは結果の格納を
行なう。
It consists of 6 stages: B and W. Instruction registers 10-14
correspond to stages DH, respectively. In the D stage, the decoder 1 decodes the instruction and the tooth register 1. The setting 2M stage of index register 70 is 3
Address calculation by the manual adder 72, A and L stages perform memory reading when operand reading is required, E stage performs arithmetic execution, and W stage stores results.

LA命令の処理を、第3図(a)のタイムチ一−トに示
す。ステージaでDステージが起動され以下、b−fK
M−Wが対応する。Dステージでは命令レジスタ10の
デコードを行なう。並行してX、Bをセレクタ50.5
1 に送りインデックス値とベース値を選択し、セレク
タ60 、61経由でインデックスレジスタ70.ベー
スレ゛ジスタフ1に設定する。Mステージでは、インデ
ックスレジスタ70トペースレジスタ71及び命令レジ
スタ10のDf5人力加算器72でIJO算し結果をD
 A R7!1に設定する。LA命令はメモリ読出しし
ないだめ、A、Lステージでメモリ読出しは行なわない
The processing of the LA command is shown in the time chart of FIG. 3(a). D stage is activated at stage a, and below, b-fK
M-W corresponds. In the D stage, the instruction register 10 is decoded. Selector 50.5 for X and B in parallel
1 and selects the index value and base value sent to index register 70.1 via selectors 60 and 61. Set to base register staff 1. In the M stage, the index register 70, topace register 71, and Df5 manual adder 72 of the instruction register 10 perform IJO calculation, and the result is D.
Set to AR7!1. Since the LA instruction does not read the memory, it does not read the memory in the A and L stages.

しかし、アドレス計算結果がオペランドであるためDA
lt73をLステージで演算器人力レジスタ80に設定
する。Eステージでは、主演算器人力レジスタ80の内
容を、主演算器82を通過させ結果レジスタ86に設定
する。Wステージでは、結果レジスタ83の内容をレジ
スタメモリ4に格納する。
However, since the address calculation result is an operand, DA
lt73 is set in the arithmetic unit manual register 80 at the L stage. In the E stage, the contents of the main processor manual register 80 are passed through the main processor 82 and set in the result register 86. In the W stage, the contents of the result register 83 are stored in the register memory 4.

LA命令のとき、Dステーでデコーダ1によりLA命令
を検出すると、線LAがオンとなり、以下M。
When the LA instruction is detected by the decoder 1 in the D stay, the line LA is turned on, and the line is then M.

A、L、Hステージに対応してLA命令医持フリッグ7
0ツブ2〜5をセットする。
LA ordering doctor's frig 7 corresponding to A, L, H stage
Set 0 knobs 2 to 5.

LA命令の結果を次命令のベース値として使用する場合
の動作タイムチャートを第3図(b)に示す。
FIG. 3(b) shows an operation time chart when the result of the LA instruction is used as the base value of the next instruction.

LA命令の格納レジスタと次命令のペースレジスタが同
一であることの検出は、ステージC1dの命令レジスタ
10(次命令)のBと命令レジスタ12(LA命令)の
Rを比較器21で比較し、一致していれば、LAA令保
持フリップフロップ3とに山をとり、信号211をオン
にすることにより行う。
To detect that the storage register of the LA instruction and the pace register of the next instruction are the same, a comparator 21 compares B of the instruction register 10 (next instruction) and R of the instruction register 12 (LA instruction) of stage C1d. If they match, the peak is removed from the LAA order holding flip-flop 3 and the signal 211 is turned on.

信号21Jl−がオンのときは、LA命令のアドレス計
算結果を保持しているDAAl2O出力線7すをセレク
タ61で選択し、ペースレジスタ71にステージCの後
で設定する。
When the signal 21Jl- is on, the selector 61 selects the DAAl2O output line 7 that holds the address calculation result of the LA instruction, and sets it in the pace register 71 after stage C.

同様に1.A命令の格納レジスタと次命令のインデック
スレジスタが同一であるとき憚、比較器20で検出し、
一致信号線20J−によりセレクタ70でDAR73の
出力線731を選択し、インデックスレジスタ70に設
定する。
Similarly 1. When the storage register of the A instruction and the index register of the next instruction are the same, it is detected by the comparator 20,
The selector 70 selects the output line 731 of the DAR 73 based on the match signal line 20J-, and sets it in the index register 70.

LA命令の結果を次々命令のベース値として使用する場
合の動作タイムチャートを第3図(C)に示す。
FIG. 3C shows an operation time chart when the results of LA instructions are used as base values for successive instructions.

LA命令の格納レジスタと次々命令のペースレジスタが
同一であることの検出は、ステージe。
Detection that the storage register of the LA instruction and the pace register of the next instruction are the same is performed in stage e.

fの命令レジスタ10(次々命令)のBと命令レジスタ
14(LA命令)のRを、比較器61で比較し、一致し
ていればLA命命令保持フリップフッツブ5、ANDを
とり、信号51Lをオンにすることにより行なう。信号
51J−がオンのときは、LA命令のアドレス演算結果
を保持している演算器入力レジスタ80の出力線80L
をセレクタ61で選択し、ペースレジスタ71にステー
ジeの後で設定する。
A comparator 61 compares B in the instruction register 10 (one instruction after another) and R in the instruction register 14 (LA instruction) of f, and if they match, the LA instruction holding flip foot 5 takes an AND and outputs a signal 51L. This is done by turning on. When the signal 51J- is on, the output line 80L of the arithmetic unit input register 80 holding the address operation result of the LA instruction
is selected by the selector 61 and set in the pace register 71 after stage e.

同様にLA命令の格納レジスタと次々命令のインデック
スレジスタが同一であるときは、比較器60で検出し、
一致信号線30J−によりセレクタ70で演算器人力レ
ジスタ80の出力線80iを選択し、インデックスレジ
スタ70に設定する。
Similarly, when the storage register of the LA instruction and the index register of the next instruction are the same, it is detected by the comparator 60,
The selector 70 selects the output line 80i of the arithmetic unit manual register 80 using the match signal line 30J-, and sets it in the index register 70.

本実施例ではLA命令の直後の命令は2サイクル遅れて
実行されるが、1サイクル遅れで実行する装置において
も、アドレス計算結果を直接アドレス計算の入力とする
本発明を実施すれば後続命令が待たされることがないこ
とは明らかである。
In this embodiment, the instruction immediately after the LA instruction is executed with a two-cycle delay, but even in a device that executes with a one-cycle delay, if the present invention is implemented in which the address calculation result is directly input to the address calculation, the subsequent instruction can be executed. It is clear that there is no need to wait.

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

本発明によれば、先行制御により命令処理を行なうデー
タ処理装置において、ロードアドレス系の命令を実行す
る場合、直後の命令でロードアドレス系の命令の結果を
使用する場合に、ロードアドレス系命令の結果をバイパ
スさせてセットアツプするため、先行制御を乱すことな
く処理でき、性能低下にならないという効果がある。
According to the present invention, in a data processing device that performs instruction processing using advance control, when executing a load address type instruction, when the result of the load address type instruction is used in the immediately following instruction, the load address type instruction is Since the results are bypassed and set up, processing can be performed without disturbing the advance control, and there is an effect that performance does not deteriorate.

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

第1図は命令形式を示す図、第2図は本発明の一実施例
を示すブロック図、第6図は(a)、(b)は第2図を
説明するタイムチャートである。 10〜14・・・・・・命令レジスタ、20.21.5
0,31・・・・・・比較器、6・・・・・・レジスタ
メモリ、50.51.60,61・・・・・・セレクタ
。 70.71.75,80,81.85・・・・・・レジ
スタ。 72・・・・・・3人力加算器、 82・・・・・・主演算器。 代理人弁理士 高 橋 明 夫 箋 1 図 員2図 (C) 手続補正書(方式) 事件の表示 昭和、9 年特許願第 58259号 発明の名称 データ処理装置 補正をする者 1屯トノ1lll+4 特許出願人 \とi +h: 
(511)l 1,4式会ン1 1J 立 製 作 所
代 理 人 補正の対象 明細書の図面の簡単な説明の欄 1、 明細書第9頁第18行、[第6図は(cL)、t
h)」とあるを、「第6図(cL) 、 1b) 、 
1G)Jと訂正する。 以上
FIG. 1 is a diagram showing an instruction format, FIG. 2 is a block diagram showing an embodiment of the present invention, and FIGS. 6(a) and 6(b) are time charts explaining FIG. 2. 10-14...Instruction register, 20.21.5
0, 31...Comparator, 6...Register memory, 50.51.60,61...Selector. 70.71.75, 80, 81.85...Register. 72...3 manual adder, 82...main computing unit. Representative Patent Attorney Akira Takahashi Paperback 1 Figure 2 (C) Procedural amendment (method) Indication of the case Showa, 9th year patent application No. 58259 Name of the invention Data processing device Person making the amendment 1 ton 1 lll + 4 Patent Applicant \ and i +h:
(511) l 1,4 Certification Meeting 1 1J Standing Manufacturing Agent Column 1 for a brief explanation of the drawings of the specification subject to personal amendment, page 9, line 18 of the specification, [Figure 6 is (cL ), t
h)” and “Fig. 6 (cL), 1b),”
1G) Correct it as J. that's all

Claims (1)

【特許請求の範囲】[Claims] 先行制御にて命令処理を行なうデータ処理装置において
、アドレス生成命令の後続命令が、アドレス生成命令の
結果を、ベース値、あるいはインデックス値として要求
していることをアドレス生成命令の結果格納レジスタ番
号と、後続命令のペースレジスタ番号、あるいはインデ
ックスレジスタ番号の比較により検出する手段と、上記
アドレス生成命令完了前に後続命令のアドレス計算が必
快なとき、アドレス生成命令のアドレス計算結果を保持
しているレジスタかラハイハスさせて後続命令のアドレ
ス計算の人7]7’−夕とするバイパス手段を具備する
データ処理装置。
In a data processing device that processes instructions using advance control, the result storage register number of the address generation instruction indicates that the instruction subsequent to the address generation instruction requests the result of the address generation instruction as a base value or index value. , a means for detecting by comparing the pace register number or index register number of the subsequent instruction, and holding the address calculation result of the address generation instruction when it is necessary to calculate the address of the subsequent instruction before the completion of the above address generation instruction. A data processing device comprising a bypass means for calculating an address of a subsequent instruction by using a register.
JP5823984A 1984-03-28 1984-03-28 Data processing device Pending JPS60204036A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5823984A JPS60204036A (en) 1984-03-28 1984-03-28 Data processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5823984A JPS60204036A (en) 1984-03-28 1984-03-28 Data processing device

Publications (1)

Publication Number Publication Date
JPS60204036A true JPS60204036A (en) 1985-10-15

Family

ID=13078548

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5823984A Pending JPS60204036A (en) 1984-03-28 1984-03-28 Data processing device

Country Status (1)

Country Link
JP (1) JPS60204036A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6297037A (en) * 1985-10-23 1987-05-06 Fujitsu Ltd Check processing system for address overlap
JPS6417121A (en) * 1987-07-10 1989-01-20 Hitachi Ltd Information processor
JPH01224870A (en) * 1988-03-04 1989-09-07 Nec Corp Main memory access instruction execution control system for information processor
US4954947A (en) * 1985-05-07 1990-09-04 Hitachi, Ltd. Instruction processor for processing branch instruction at high speed

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS49114338A (en) * 1973-02-28 1974-10-31
JPS5041442A (en) * 1973-08-16 1975-04-15
JPS57114948A (en) * 1980-12-31 1982-07-17 Fujitsu Ltd Register advanced control system
JPS5814942A (en) * 1981-07-17 1983-01-28 Jujo Paper Co Ltd Preparation of fine capsule

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS49114338A (en) * 1973-02-28 1974-10-31
JPS5041442A (en) * 1973-08-16 1975-04-15
JPS57114948A (en) * 1980-12-31 1982-07-17 Fujitsu Ltd Register advanced control system
JPS5814942A (en) * 1981-07-17 1983-01-28 Jujo Paper Co Ltd Preparation of fine capsule

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4954947A (en) * 1985-05-07 1990-09-04 Hitachi, Ltd. Instruction processor for processing branch instruction at high speed
JPS6297037A (en) * 1985-10-23 1987-05-06 Fujitsu Ltd Check processing system for address overlap
JPS6417121A (en) * 1987-07-10 1989-01-20 Hitachi Ltd Information processor
JPH01224870A (en) * 1988-03-04 1989-09-07 Nec Corp Main memory access instruction execution control system for information processor

Similar Documents

Publication Publication Date Title
US5204953A (en) One clock address pipelining in segmentation unit
JP2679363B2 (en) Microprocessor
US5212662A (en) Floating point arithmetic two cycle data flow
US4954947A (en) Instruction processor for processing branch instruction at high speed
JPS60204036A (en) Data processing device
US5390306A (en) Pipeline processing system and microprocessor using the system
JPS6160459B2 (en)
US6393452B1 (en) Method and apparatus for performing load bypasses in a floating-point unit
JPS623338A (en) Direct value processing system
JPH0218729B2 (en)
JPH07110769A (en) Vliw type computer
JP3155056B2 (en) Information processing device
JP2819733B2 (en) Information processing device
JPS5995646A (en) Arithmetic control system
JP3523407B2 (en) Information processing equipment
JP2912067B2 (en) Speed control device and debug device
JPS63111534A (en) Semiconductor integrated circuit
JPS59223846A (en) Arithmetic processor
JP3392413B2 (en) Two-level micro control system and method
JPH01189727A (en) Information processor
JPS58142446A (en) Data processor
JP3088956B2 (en) Arithmetic unit
JPH0221331A (en) Program control system for microcomputer
JPS63245526A (en) Information processor
JPS6155731A (en) Processor provided with condition code discriminating function