JPS6217841A - Information processor - Google Patents

Information processor

Info

Publication number
JPS6217841A
JPS6217841A JP15671585A JP15671585A JPS6217841A JP S6217841 A JPS6217841 A JP S6217841A JP 15671585 A JP15671585 A JP 15671585A JP 15671585 A JP15671585 A JP 15671585A JP S6217841 A JPS6217841 A JP S6217841A
Authority
JP
Japan
Prior art keywords
instruction
address
branch
register
circuit
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
JP15671585A
Other languages
Japanese (ja)
Inventor
Shuichi Hanatani
花谷 修一
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 JP15671585A priority Critical patent/JPS6217841A/en
Publication of JPS6217841A publication Critical patent/JPS6217841A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To prevent the titled device from the generation of overhead by storing the counted value of a count branching instruction in an address developing circuit part, and reading out the counted value to decide the branch of the count branching instruction. CONSTITUTION:An instruction from an instruction fetch memory accessing circuit part 23 is set up in an instruction register 1 of the address developing circuit part 21, an address is calculated by an adder 4 on the basis of the value of the register 1, the address is stored in a branching address register 8 of the circuit part 23, and the stored contents and an instruction address for instruction prefetch which is obtained from a preceding address register 9 are inputted to a selecting circuit 10. Then, the count branching instruction set up in the register 1 is recognized by an instruction decoding circuit 6 and the recognized information and the contents of a general register 2 are inputted to a count branching instruction branch deciding circuit 5. When a register value specified by an operation register specifying part R in the register 1 is not '1', an FF7 is set up, and in case of '1', the register 8 is selected by the circuit 10 and the branching address instruction is set up in the register 1.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は情報処理装置の分岐命令の実行に関し、特に計
数分岐命令の高速化iこ関する。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to the execution of branch instructions in an information processing device, and particularly to speeding up counting branch instructions.

(従来の技術) 従来、情報処理装置は第4図ζこ示すようすこ構成され
、一般にその命令の実行過程にもとすいて処理が実行さ
れる。第4図において、21はアドレス展開回路部、2
2はオペランドメモリアクセス回路部、23は命令フェ
ッチメモリアクセス回路部、24は演算実行回路部であ
る。
(Prior Art) Conventionally, an information processing apparatus is configured as shown in FIG. In FIG. 4, 21 is an address expansion circuit section;
2 is an operand memory access circuit section, 23 is an instruction fetch memory access circuit section, and 24 is an arithmetic execution circuit section.

第4図において、命令フェッチメモリアクセス回路部2
3から取出された命令は信号線101を介してアドレス
展開回路部21に入力される。アドレス展開回路部21
においては、入力された命令をデコードすると同時にオ
ペランドのアドレス展開を行い、得られたアドレスを信
号線102を介してオペランドメモリアクセス回路部2
21こ出力する。さらに、上記アドレスでオペランドメ
モリアクセス回路■゛22からオペランドを取出し、信
号線103を介して演算実行回路部241こ入力し、命
令動作指示に従って演算を実行する。
In FIG. 4, the instruction fetch memory access circuit section 2
3 is input to the address expansion circuit unit 21 via the signal line 101. Address expansion circuit section 21
At the same time as decoding the input instruction, address expansion of the operand is performed, and the obtained address is sent to the operand memory access circuit section 2 via the signal line 102.
21 outputs. Furthermore, the operand is taken out from the operand memory access circuit 22 at the above address, inputted to the arithmetic execution circuit section 241 via the signal line 103, and the arithmetic operation is executed according to the command operation instruction.

演算実行の結果は信号線104を介してメモリIこ格納
されるに対応して信号線105を介してアドレス展開沖
1路部21の内部ζこあるレジスタに格納され、該当す
る命令の実行過程が終了する。
The result of the operation is stored in the memory via the signal line 104, and is also stored in the internal register of the address expansion section 21 via the signal line 105, during the execution process of the corresponding instruction. ends.

以上の命令の実行過程を第5図に示すように複数の命令
で逐次実行するように制御し、各命令を紀州は上、■マ
シンサイクルで実行することによって各命令実行を烏速
化することができる。これは、パイプライン制御と呼ば
れる命令実行制御方式である。
The execution process of the above instructions is controlled to be executed sequentially using multiple instructions as shown in Figure 5, and each instruction is executed in machine cycles to speed up the execution of each instruction. I can do it. This is an instruction execution control method called pipeline control.

以上のような情報処理装置において、分岐命令の実行は
一般に以下のようζこして行われる。
In the information processing apparatus described above, branch instructions are generally executed as follows.

第5図において、■4は分岐命令であると仮定したなら
ば、タイミングT、において、アドレス展開が行われ、
その分岐先アドレスが求められる。この分岐先アドレス
は第4図の信号線を介して命令フェッチメモリアクセス
回路部23に入力され、タイミングT、において分岐先
命令J1がフェッチされる。いっぽう、分岐不成立側の
命令IllはタイミングT、においでフェッチされ、タ
イミングT、においてアドレス展開される。分岐命令I
、が命令工、の演算結果によって得られた条件付き分岐
命令であると仮定したならば、タイミングTaJこおけ
る命令I。
In FIG. 5, assuming that ■4 is a branch instruction, address expansion is performed at timing T,
The branch destination address is determined. This branch destination address is input to the instruction fetch memory access circuit unit 23 via the signal line shown in FIG. 4, and the branch destination instruction J1 is fetched at timing T. On the other hand, the instruction Ill on the side where the branch is not taken is fetched at timing T, and its address is expanded at timing T. Branch instruction I
Assuming that , is a conditional branch instruction obtained by the operation result of instruction I, instruction I at timing TaJ.

の演算結果から、タイミングT、において命令I、のオ
ペランドメモリアクセス、あるいは命令■6のアドレス
展開のいずれかが選択される。
Based on the operation result, either the operand memory access of instruction I or the address expansion of instruction 6 is selected at timing T.

上記一方が選択されたならば、他方はキャンセルされる
If one of the above is selected, the other is canceled.

このようにして、分岐命令■、には分岐が成立したなら
ば、タイミング2Tが実行に必要であり、不成立ならば
タイミングITで実行することができる。k15図は、
分岐命令■、が成立した場合のタイムチャートである。
In this way, if the branch instruction (2) is taken, timing 2T is required for execution, and if the branch is not taken, it can be executed at timing IT. The k15 diagram is
This is a time chart when the branch instruction (2) is established.

次lこ、第6図に示すような計数分岐命令を実行するも
のとしよう。実行中Iこ計数分岐命令は命令語のRで示
される値(R)(レジスタに格納)から′1”だけ減算
され、その値が“0”でないならば分岐先アドレス″[
X)+fBl+D”に分岐し、′O#であるならば分岐
が成立しない命令である。
Next, let us assume that a counting branch instruction as shown in FIG. 6 is to be executed. During execution, the count branch instruction is subtracted by ``1'' from the value (R) (stored in the register) indicated by R in the instruction word, and if that value is not ``0'', the branch destination address ``[
The instruction branches to 'X)+fBl+D'', and if it is 'O#', the branch will not be taken.

従来よりパイプライン制御による情報処理装置において
は、上記計数分岐命令は(Rilの演算を含むためIC
第7図のよう(こして実行されていた。すなわち、第7
図において計数分岐命令I、はタイミングT、において
アドレス展開“(X)+(B)+D″の計算より分岐先
アドレスが求められ、タイミングT4において上記分岐
先ア[°レスで分岐先命令J、かフェッチされる。次に
、タイミングT、において計数分岐命令■、の演算(R
)−1が実行され、その結果からタイミングT・におい
て分岐先命令J1のアドレス展開が実行開始されていた
Conventionally, in information processing devices using pipeline control, the above-mentioned count branch instruction is
As shown in Figure 7 (it was executed as shown in Figure 7)
In the figure, a counting branch instruction I calculates a branch destination address by calculating the address expansion "(X)+(B)+D" at timing T, and at timing T4, the branch destination instruction J, or fetched. Next, at timing T, the operation (R
)-1 was executed, and as a result, address expansion of the branch destination instruction J1 was started at timing T.

すなわち、従来は演算実行回路部24で(J−1の演算
を行っていたため、演算結果を待つための待ち時間が存
在し、分岐が成立したときに分岐命令の実行時間として
少なくともタイミング3Tが必要であり、不成立のとき
にはマシンサイクルに2Tを必要としていた。さらにこ
の場合、(It)−1の演算結果−こよる分岐の判定が
命令フェッチメモリアクセスより稜で行われていたのに
、分岐判定以前に余分のメモリアクセスを行う恐れがあ
り、このためにオーバヘッドが生じていた。
In other words, conventionally, since the operation execution circuit unit 24 performs the operation (J-1), there is a waiting time for waiting for the operation result, and when a branch is established, at least timing 3T is required as the execution time of the branch instruction. , which required 2T machine cycles when the result was not satisfied.Furthermore, in this case, even though the branch decision based on the operation result of (It)-1 was made at the edge rather than the instruction fetch memory access, the branch decision Previously, there was a risk of extra memory accesses, which caused overhead.

いっぽう、分岐不成立側の性能を向上するためには、第
7図のタイミングT、において命令■4の命令フェッチ
メモリアクセスを発行する必要がある。しかし、分岐判
定の前に上記メモリアクセスが行われるため、アクセス
がキャンセルされる可能性があり、分岐が成立した場合
には上記無駄なメモリアクセスを発行するため上述の従
来技術では、分岐判定の前にメモリアクセスが行われる
ため、アクセスがキャンセルされる可能性があり、分岐
が成立した場合には無駄なメモリアクセスを発行するた
めのオーバヘッドが生じていた。
On the other hand, in order to improve the performance on the side where the branch is not taken, it is necessary to issue the instruction fetch memory access of instruction 4 at timing T in FIG. However, since the above memory access is performed before the branch decision, there is a possibility that the access will be canceled, and if the branch is established, the above-mentioned wasteful memory access will be issued. Since a memory access is performed before the branch, there is a possibility that the access will be canceled, and if a branch is taken, there is an overhead for issuing a wasteful memory access.

本発明の目的は、命令の実行におけるアドレス展開、メ
モリアクセス、および演算実行をそれぞれの回路部でパ
イプライン実行する情報処理装置において、上記アドレ
ス展開回路部に計数分岐命令の計数値を格納するレジス
タを備え、その内容を絖田し、計数分岐命令の分岐判定
を行うことによって上記欠点を除去し、オーバーヘッド
の生ずることがないように構成した情報処理装置を提供
することにある。
An object of the present invention is to provide an information processing apparatus in which address expansion, memory access, and arithmetic execution in the execution of an instruction are executed in a pipeline in respective circuit sections, and a register that stores the count value of a counting branch instruction in the address expansion circuit section. It is an object of the present invention to provide an information processing apparatus which eliminates the above-mentioned drawbacks and is configured so that no overhead is generated by checking the contents thereof and performing branch judgment of counting branch instructions.

(問題点を解決するための手段) 本発明による情報処理装置は少なくともアドレス展開回
路部ならびに命令フェッチメモ、リアクセス回路を備え
、命令の実行におけるアドレス展開、メモリアクセス、
ならびに演算実行をそれぞれパイプライン処理するもの
である。
(Means for Solving the Problems) An information processing device according to the present invention includes at least an address expansion circuit unit, an instruction fetch memory, and a reaccess circuit, and includes address expansion, memory access, and
and the execution of calculations is pipelined.

本発明において、アドレス展開回路部は計数分岐命令の
計数値を格納するための命令レジスタ手段と、上記針数
値を続出して計数分岐命令の分岐判定を行うための計数
分岐命令分岐判定手段と、命令レジスタ手段に含まれた
インデクス値、ベース値、ならびにディスプレースメン
ト値により分岐先アドレスのγドレス1f算を行うため
の加算手段とを具備して構成したものである。
In the present invention, the address expansion circuit section includes an instruction register means for storing the count value of the count branch instruction, a count branch instruction branch judgment means for successively outputting the above-mentioned hand value and makes a branch judgment of the count branch instruction; The instruction register means includes addition means for performing a γ address 1f calculation of a branch destination address using the index value, base value, and displacement value contained in the instruction register means.

いっぽう、命令フェッチメモリアクセス回路部は加算手
段より出力される分岐先アドレスを格納するための分岐
命令分岐判定手段と、上記分岐先アドレスから命令先取
りのための命令アドレスを先行して格納するとともに、
随時、上記命令アドレスをカウントアツプして内容を更
新するための先行アドレスレジスタ手段と、計数分岐命
令分岐判定手段の出力に対応して分岐命令分岐判定手段
の出力に対応して先行アドレスレジスタ手段の出力かを
選択するための選択手段と、選択手段から出力されるア
ドレスに従って高速にアドレス変換を実行するとともに
、アドレス変換の結果によって決定されるアドレス情報
を命令レジスタ手段へ送出するための高速メモリアクセ
ス手段とを具備して構成したものである。
On the other hand, the instruction fetch memory access circuit section includes a branch instruction branch determination means for storing the branch destination address outputted from the addition means, and an instruction address for pre-fetching an instruction from the branch destination address in advance.
A preceding address register means for updating the contents by counting up the instruction address at any time, and a preceding address register means corresponding to the output of the counting branch instruction branch judgment means and corresponding to the output of the branch instruction branch judgment means. a selection means for selecting an output, and a high-speed memory access for performing address conversion at high speed according to the address output from the selection means and sending address information determined by the result of the address conversion to the instruction register means. The device is configured to include means.

上記において、本発明は上IF計数分岐命令のパイプラ
イン処理におけるアドレス展開フェーズにおいて分岐先
アドレスを求めるとともに、分岐判定を行うことができ
るように構成したものである。
In the above, the present invention is configured so that a branch destination address can be determined and a branch determination can be made in the address expansion phase in the pipeline processing of the upper IF count branch instruction.

(実施例) 次に、本発明について図面を参照して説明する0 第1図は、本発明による情報処理装置の一部分の一実施
例を示すブロック図であり、アドレス展開回路部と命令
フェッチメモリアクセス回路部との詳細を示すブロック
図である。第1図において、1は命令レジスタ、2は汎
用レジスタ、3はベースにジスタ、4は加算回路、5は
計数分岐命令分岐判定回路、6は命令デコード回路、7
はフリップフロップ、8は分岐先アドレスレジスタ、9
は先行アドレスレジスタ、10は選択回路、11は高速
メモリアクセス回路である0 第1図において、命令フェッチメモリアクセス回路部2
3から信号線101を介して取出される命令は命令レジ
スタ1に正しく整列されてセットされる〇 それぞれ汎用レジスタ2およびペースレジスタ3には、
それぞれ演算実行回路部24から信号線105を介して
情報がセットされる。アドレス計算のためのインデクス
値は命令レジスタ1のインデクス指定部(X)から信号
線108を介して汎用レジスタ2に送出され、いっはう
、ベース値はベース指定部(B)から信号線109を介
してペースレジスタ3に送出され、これらはそれぞれ汎
用レジスタ2およびペースレジスタ3から信号線110
 、111に読出される。
(Embodiment) Next, the present invention will be described with reference to the drawings.0 FIG. 1 is a block diagram showing an embodiment of a part of an information processing apparatus according to the present invention, including an address expansion circuit section and an instruction fetch memory. FIG. 3 is a block diagram showing details of an access circuit section. In FIG. 1, 1 is an instruction register, 2 is a general-purpose register, 3 is a register at the base, 4 is an adder circuit, 5 is a counting branch instruction branch judgment circuit, 6 is an instruction decode circuit, and 7
is a flip-flop, 8 is a branch destination address register, 9
1 is a preceding address register, 10 is a selection circuit, and 11 is a high-speed memory access circuit.0 In FIG.
3 through the signal line 101 are correctly aligned and set in the instruction register 1. In the general register 2 and pace register 3 respectively,
Information is set from each arithmetic execution circuit section 24 via a signal line 105. The index value for address calculation is sent from the index specification part (X) of the instruction register 1 to the general-purpose register 2 via the signal line 108, and the base value is sent from the base specification part (B) to the signal line 109. These are sent to the pace register 3 via the signal line 110 from the general register 2 and pace register 3 respectively.
, 111.

アドレス加算回路4は、信号線110.111と、命令
レジスタ1のディスプレースメント部(I))からの信
号線112とを介して与えられた情報(こより(X)+
(B)+Dのアドレス計算を行わせるためのものである
。アドレス加算回M4の出力は信号線102、および信
号線106を介してそわそれオペランドメモリアクセス
回路部22、ならびに命令フェッチメモリアクセス回路
部23に入力される。
The address adder circuit 4 receives information (from (X) +
This is for calculating the address of (B)+D. The output of the address addition circuit M4 is input to the fidget operand memory access circuit section 22 and the instruction fetch memory access circuit section 23 via the signal line 102 and the signal line 106.

さらに、汎用レジスタ2は命令レジスタ1の演算レジス
タ指定部(R)から信号線107を介して送出された内
容を信号線113fこ読出せるように構成され、計数分
岐命令分岐判定回路5に入力される。計数分岐命令分岐
判定F】1路5は、命令レジスタlにセットされた計数
分岐命令を認識する命令デコード回路6から出力された
信号線114 、115上の情報と、信号線113を介
して送出された汎用レジスタ2の内容とを入力し、演算
レジスタ指定部()()によって指定されるレジスタ値
(R)が”1”ではないとき、フリップフロップ7をセ
ットする。
Further, the general-purpose register 2 is configured to be able to read out the contents sent from the operation register designating section (R) of the instruction register 1 via the signal line 107 to the signal line 113f, and input the contents to the counting branch instruction branch judgment circuit 5. Ru. Count branch instruction branch judgment F] 1 path 5 outputs information on signal lines 114 and 115 outputted from the instruction decoding circuit 6 that recognizes the count branch instruction set in the instruction register l, and sends it out via the signal line 113. When the register value (R) specified by the arithmetic register specifying section ( ) ( ) is not "1", the flip-flop 7 is set.

計数分岐命令分岐判定回路5は、例えば第2図で示す論
理回路で構成されている。第2図において、12は(F
t)(1を検出するための検出回路、13 、15 、
16はそれぞれNANDゲート、14はT/C出力ゲー
トである。
The counting branch instruction branch determination circuit 5 is composed of a logic circuit shown in FIG. 2, for example. In Figure 2, 12 is (F
t) (Detection circuit for detecting 1, 13, 15,
16 is a NAND gate, and 14 is a T/C output gate.

命令フェッチメモリアクセス回路部23に備えられてい
る分岐先アドレスレジスタ8は、アドレス加算回路4の
出力によって与えられる分岐先アドレスを保持するため
のものである。先行アドレスレジスタ9は、命令先取り
のため命令アドレスを先行して保持し、随時、カウント
アツプするためのものである。先行アドレスレジスタ9
の内容と分岐先アドレスレジスタ8の内容とは選択回路
10に入力される。選択回路10は、フリップフロップ
7から信号線116に出力される信月によって切替えら
れる。
A branch destination address register 8 provided in the instruction fetch memory access circuit section 23 is used to hold a branch destination address given by the output of the address adder circuit 4. The preceding address register 9 is used to hold an instruction address in advance for prefetching an instruction, and to count up as needed. Preceding address register 9
and the contents of the branch destination address register 8 are input to the selection circuit 10. The selection circuit 10 is switched by the signal output from the flip-flop 7 to the signal line 116.

高速メモリアクセス回路11は、アドレス変換を高速に
行わせるためのアドレス変換テーブルと、命令語のメモ
リの写しとしての命令キャッシュメモリとから成るもの
であり、信号線117を介して選択回路10の出力によ
ってアクセスされ、その出力は命令フェッチメモリアク
セス回路部23の出力となって信号線101に送出され
る。
The high-speed memory access circuit 11 consists of an address conversion table for performing address conversion at high speed and an instruction cache memory as a copy of the instruction word memory. The output is sent to the signal line 101 as the output of the instruction fetch memory access circuit section 23.

以上の構成において、実行される計数分岐命令のタイム
チャートの一例を第3図に示す。次に、上記タイムチャ
ートを参照して動作を説明する。
FIG. 3 shows an example of a time chart of count branch instructions executed in the above configuration. Next, the operation will be explained with reference to the above time chart.

第3図において計数分岐命令I、が実行されるものとす
るならば、タイミングT、においてアドレス展開が行わ
れ、その分岐アドレスが求められる。このとき、同時(
こ命令レジスタ1の演算レジスタ指定部(R)によって
指定されるレジスタ内容が読出され、計数分岐命令分岐
判定回路5で値が調べられる。すなわち、命令レジスタ
1の演算レジスタ指定部(R)で指定されるレジスタ値
(R1が11#ではないならば、第2図に示す論理回路
に従ってフリップフロップ7をセットするセット信号か
信号線118上に生成される。タイミングTsで求めら
れた計数分岐命令の分岐先アドレスがタイミングT4に
おいて分岐先アドレス加算回路8にセットされると、同
時(こ、先行アドレスレジスタ9において分岐不成立側
の先行命令I4のアドレスが保持される。このとき、セ
ット信号線118上でセットされたフリップフロップ7
の値が1″であるならば、アドレス展開中の後続命令■
、がキャンセルされると同時に選択回路10において分
岐先アドレスレジスタ8が選択され、選択回路10から
信号線117を介して送出される出力によって高速メモ
リアクセス回路11にアクセスが行われる。次に、タイ
ミングT5において分岐先命令J1が命令レジスタ1に
セットされ、命令のアドレス展開が開始される。
In FIG. 3, if counting branch instruction I is executed, address expansion is performed at timing T, and the branch address is determined. At this time, at the same time (
The contents of the register specified by the arithmetic register specifying section (R) of the instruction register 1 are read out, and the value is checked by the counting branch instruction branch judgment circuit 5. That is, the register value specified by the arithmetic register specifying section (R) of the instruction register 1 (if R1 is not 11#, the set signal for setting the flip-flop 7 according to the logic circuit shown in FIG. 2 or the signal line 118) When the branch destination address of the counted branch instruction obtained at timing Ts is set in the branch destination address adder circuit 8 at timing T4, at the same time At this time, the address of the flip-flop 7 set on the set signal line 118 is held.
If the value of is 1'', the subsequent instruction during address expansion ■
, is canceled, the branch destination address register 8 is selected in the selection circuit 10, and the high speed memory access circuit 11 is accessed by the output sent from the selection circuit 10 via the signal line 117. Next, at timing T5, the branch destination instruction J1 is set in the instruction register 1, and address expansion of the instruction is started.

以上のようにして、本実施例1こおける計数分岐命令の
分岐が成立したときの実行時間は、タイミング2Tの時
間内に完了する。いっぽう、分岐が不成立のときにはタ
イミングT4においてアドレス展開中の後続命令I、の
アドレス展開を有効化する。このとき、フリップフロッ
プ7がセットされていないので、選択回路10によって
先行アドレスレジスタ9が選択され、この時間に命令■
1に後続する先行命令■4が高速メモリアクセス回路1
1からフェッチされる。次に、タイミングT、において
オペランドフェッチアクセス回路s22により命令11
のオペランドがフェッチされ、命令I4の命令語が命令
レジスタ1#こセットされてアドレス展開が開始される
As described above, the execution time when the branch of the count branch instruction is established in the first embodiment is completed within the time of timing 2T. On the other hand, when the branch is not taken, the address expansion of the subsequent instruction I, whose address is being expanded, is enabled at timing T4. At this time, since the flip-flop 7 is not set, the preceding address register 9 is selected by the selection circuit 10, and at this time, the instruction
The preceding instruction following 1 ■4 is high-speed memory access circuit 1
Fetched from 1. Next, at timing T, the operand fetch access circuit s22 executes the instruction 11.
The operand of instruction I4 is fetched, the instruction word of instruction I4 is set in instruction register 1#, and address expansion is started.

以上のように、本実施例における計数分岐命令の分岐が
不成立のときには、パイプラインの乱れを生ずることな
くタイミングITの時間内に実行が完了する。
As described above, when the branch of the count branch instruction in this embodiment is not taken, execution is completed within the time of timing IT without causing any disturbance in the pipeline.

(発明の効果) 以上説明したように本発明は、計数分岐命令の実行にお
いて上記計数分岐命令のアドレス展開フェーズで分岐判
定を行わせることIこよって、計数分岐命令の高速実行
を可能にするとともに、無駄なメモリアクセスを行わな
いように制御することができるため、オーバーヘッドを
抑えることができると云う効果がある。
(Effects of the Invention) As explained above, the present invention enables high-speed execution of the counting branch instruction by making a branch judgment in the address expansion phase of the counting branch instruction in the execution of the counting branch instruction. , since it is possible to control so that unnecessary memory accesses are not performed, there is an effect that overhead can be suppressed.

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

第1図は、本発明による情報処理装置の一実施例を部分
的に示すブロック図であり、アドレス展開回路部と命令
フェッチメモリアクセス回路部との詳細を示すものであ
る。 第2図は、第1図における計数分岐命令分岐判定回路の
詳細を示すブロック図である。 第3図は、第1図の計数分岐命令の実行の一例の様子を
示すタイムチャートである。 第4図は、一般的な情報処理装置の機能を示すブロック
図である。 第5図は、第4図の情報処理装置における命令のパイプ
ライン制御の様子を示すタイムチャートである。 第6図は、計数分岐命令の命令形式の一例を示す説明図
である。 第7図は、計数分岐命令の実行の一例を示すタイムチャ
ートである。 1・・・命令レジスタ  2・・・汎用レジスタ3・・
・ペースレジスタ 4・・・アドレス加算回路5・・・
計数分岐命令分岐判定回路 6・・・命令デコード回路 7・・・フリップフロップ 8・・・分岐先アドレスレジスタ 9・・・先行アドレスレジスタ lO・・・選択回路 11・・・高速メモリアクセス囲路 12・・・検出回路 13 、15 、16・・・N A N Dゲート14
・・・T/C出力ゲート 21・・・アドレス展開回路部 22・・・オペランドメモリアクセス回路部23・・・
命令フェッチメモリアクセス回路部24・・・演算実行
回路部 特徴出願人  日本電気株式会社 代理人 弁理士 井 ノ ロ   壽 −5a ら ζ R内 邦 霜 努 ら 46 へ 9「 綺− ,4へ 444 ら ら ら
FIG. 1 is a block diagram partially showing an embodiment of an information processing apparatus according to the present invention, and shows details of an address expansion circuit section and an instruction fetch memory access circuit section. FIG. 2 is a block diagram showing details of the counting branch instruction branch determination circuit in FIG. 1. FIG. 3 is a time chart showing an example of the execution of the count branch instruction shown in FIG. FIG. 4 is a block diagram showing the functions of a general information processing device. FIG. 5 is a time chart showing the state of instruction pipeline control in the information processing apparatus of FIG. 4. FIG. FIG. 6 is an explanatory diagram showing an example of an instruction format of a counting branch instruction. FIG. 7 is a time chart showing an example of execution of a counting branch instruction. 1...Instruction register 2...General-purpose register 3...
・Pace register 4... Address addition circuit 5...
Counting branch instruction Branch determination circuit 6...Instruction decoding circuit 7...Flip-flop 8...Branch destination address register 9...Preceding address register IO...Selection circuit 11...High speed memory access circuit 12 ...Detection circuits 13, 15, 16...NAND gate 14
...T/C output gate 21...Address expansion circuit section 22...Operand memory access circuit section 23...
Instruction fetch memory access circuit section 24...Arithmetic execution circuit section Characteristics Applicant NEC Corporation Agent Patent Attorney Hisashi Inoro et al. Lala

Claims (1)

【特許請求の範囲】[Claims] 少なくともアドレス展開回路部ならびに命令フェッチメ
モリアクセス回路部を備え、命令の実行におけるアドレ
ス展開、メモリアクセス、ならびに演算実行をそれぞれ
パイプライン処理する情報処理装置において、前記アド
レス展開回路部は計数分岐命令の計数値を格納するため
の命令レジスタ手段と、前記計数値を読出して計数分岐
命令の分岐判定を行うための計数分岐命令分岐判定手段
と、前記命令レジスタ手段に含まれたインデクス値、ベ
ース値、ならびにディスプレースメント値により分岐先
アドレスのアドレス計算を行うための加算手段とを具備
して構成したものであり、且つ、前記命令フェッチメモ
リアクセス回路部は前記加算手段より出力される分岐先
アドレスを格納するための分岐先アドレスレジスタ手段
と、前記分岐先アドレスから命令先取りのための命令ア
ドレスを先行して格納するとともに、随時、前記命令ア
ドレスをカウントアップして内容を更新するための先行
アドレスレジスタ手段と、前記計数分岐命令分岐判定手
段の出力に対応して前記分岐先アドレスレジスタ手段の
出力か、あるいは前記先行アドレスレジスタ手段の出力
かを選択するための選択手段と、前記選択手段から出力
されるアドレスに従って高速にアドレス変換を実行する
とともに、前記アドレス変換の結果によって決定される
アドレス情報を前記命令レジスタ手段へ送出するための
高速メモリアクセス手段とを具備し、前記計数分岐命令
のパイプライン処理におけるアドレス展開フェーズにお
いて分岐先アドレスを求めるとともに分岐判定を行うこ
とができるように構成したことを特徴とする情報処理装
置。
In an information processing device that includes at least an address expansion circuit section and an instruction fetch memory access circuit section, and performs pipeline processing of address expansion, memory access, and arithmetic execution in instruction execution, the address expansion circuit section is configured to perform count branch instruction processing. an instruction register means for storing numerical values; a counting branch instruction branch judgment means for reading the counted value and making a branch judgment of the counting branch instruction; an index value, a base value, and The instruction fetch memory access circuit section stores the branch destination address outputted from the addition means. a branch destination address register means for pre-fetching an instruction from the branch destination address; and a preceding address register means for storing an instruction address for pre-fetching an instruction from the branch destination address and updating the contents by counting up the instruction address at any time. , selection means for selecting either the output of the branch destination address register means or the output of the preceding address register means in response to the output of the counting branch instruction branch determination means; and an address output from the selection means. and high-speed memory access means for executing address conversion at high speed according to the address conversion result and sending address information determined by the result of the address conversion to the instruction register means, An information processing device characterized in that it is configured to be able to obtain a branch destination address and make a branch determination in an expansion phase.
JP15671585A 1985-07-16 1985-07-16 Information processor Pending JPS6217841A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15671585A JPS6217841A (en) 1985-07-16 1985-07-16 Information processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15671585A JPS6217841A (en) 1985-07-16 1985-07-16 Information processor

Publications (1)

Publication Number Publication Date
JPS6217841A true JPS6217841A (en) 1987-01-26

Family

ID=15633753

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15671585A Pending JPS6217841A (en) 1985-07-16 1985-07-16 Information processor

Country Status (1)

Country Link
JP (1) JPS6217841A (en)

Similar Documents

Publication Publication Date Title
JPH0527143B2 (en)
US5689694A (en) Data processing apparatus providing bus attribute information for system debugging
EP0378415A2 (en) Multiple instruction dispatch mechanism
JPH03286332A (en) Digital data processor
JPS634208B2 (en)
JP3490005B2 (en) Instruction control apparatus and method
JPS6217841A (en) Information processor
JP2503223B2 (en) Prior control method
JPS61273637A (en) Information processor
JPH0248733A (en) Information processor
JPH02157939A (en) Instruction processing method and instruction processor
JPS6277649A (en) Information processor
JPS6411973B2 (en)
JPH0512009A (en) Digital signal processing device
JPS6020245A (en) Instruction control circuit of data processor
JPS58195255A (en) Data processing device
JPS61273638A (en) Information processor
JPH05158734A (en) Microprocessor
JPH02206836A (en) Data processor
JPH0895784A (en) Processor and method for arithmetic processing
JPH07219771A (en) Instruction processor
JPH02294829A (en) Memory operand takeout system
JPS6149695B2 (en)
JPH01263830A (en) Information processor
JPH05204638A (en) Pipeline processor