JPH02309423A - Effective address calculation control system in pipeline processor - Google Patents

Effective address calculation control system in pipeline processor

Info

Publication number
JPH02309423A
JPH02309423A JP13091389A JP13091389A JPH02309423A JP H02309423 A JPH02309423 A JP H02309423A JP 13091389 A JP13091389 A JP 13091389A JP 13091389 A JP13091389 A JP 13091389A JP H02309423 A JPH02309423 A JP H02309423A
Authority
JP
Japan
Prior art keywords
effective address
carry
module
calculation
pipeline
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
JP13091389A
Other languages
Japanese (ja)
Inventor
Yoshimasa Takebe
好正 竹部
Akikata Nakayama
中山 陽象
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
PFU Ltd
Original Assignee
Fujitsu Ltd
PFU Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd, PFU Ltd filed Critical Fujitsu Ltd
Priority to JP13091389A priority Critical patent/JPH02309423A/en
Publication of JPH02309423A publication Critical patent/JPH02309423A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Complex Calculations (AREA)

Abstract

PURPOSE:To rapidly execute effective address calculation and to prevent the execution cycle time of a pipeline stage from being prolonged by executing effective address calculation shorter than the whole address length in respective divided modules in parallel. CONSTITUTION:The subject system is constituted of divided effective address calculation modules 1, input registers 11, 12, an effective address adder 13, an effective address register 15, etc. For instance, effective address calculation is divided into upper and lower modules, the effective address is calculated by respective divided modules 1 in parallel, and when a carry is detected in the calculation process or the carry is predicted, a pipeline is interlocked. The carry is added to the calculated result of the upper side and the added result is connected to the interlocked lower side calculation result to form a real effective address. Consequently, the effective address calculation can rapidly be executed and the execution cycle time of the pipeline stage can be prevented from being prolonged.

Description

【発明の詳細な説明】 〔目 次〕 概要 産業上の利用分野 従来の技術と発明が解決しようとする課題課題を解決す
るための手段 作用 実施例 発明の効果 (概要〕 パイプライン方式で動作するプロセッサにおける実効ア
ドレス計算方式に関し、 実効アドレス計算を高速に行い、パイプラインステージ
の実行サイクル時間が長くならないようにすることを目
的とし、 実効アドレス計算モジュールを、実効アドレスの複数ビ
ットを単位として、複数個、例えば、2個のモジュール
に分割し、該分割した各モジュールで独立に、実効アド
レスの計算を行い、下位アドレスを分担しているモジュ
ールからの桁上げの有無を検出するか、或いは、該下位
のモジュールの上位数ビットで該桁上げを予測して、該
桁上げがない場合は、通常のパイプライン動作を続けて
、それぞれのモジュールの計算結果を結合し、下位のモ
ジュールからの桁上げが検出されるか、或いは、桁上げ
があると予測された場合には、パイプラインをインター
ロックし、上位のモジュールでの計算結果に該桁上げを
加算した後に、その結果と、該インターロックされてい
る下位の計算結果を結合して実効アドレスとするように
構成する。
[Detailed Description of the Invention] [Table of Contents] Overview Industrial Application Fields Conventional Technology and Problems to be Solved by the Invention Means for Solving the Problems Actions Examples Effects of the Invention (Overview) Operates in a pipeline system Regarding the effective address calculation method in processors, the aim is to perform effective address calculations at high speed and to prevent the execution cycle time of pipeline stages from becoming long. For example, divide the divided module into two modules, calculate the effective address independently in each divided module, and detect the presence or absence of a carry from the module sharing the lower address, or The carry is predicted using the upper few bits of the lower module, and if there is no carry, the normal pipeline operation continues, the calculation results of each module are combined, and the carry from the lower module is predicted. is detected or a carry is predicted, the pipeline is interlocked, the carry is added to the calculation result in the upper module, and then the result and the interlock are added. The lower calculation results are combined to form an effective address.

〔産業上の利用分野] 本発明は、パイプライン方式で動作するプロセッサにお
ける実効アドレス計算方式に関する。
[Field of Industrial Application] The present invention relates to an effective address calculation method in a processor operating in a pipelined manner.

従来から、計算機システムの処理能力を向上させる手段
の一つとして、1つの命令で実行される処理を複数のス
テージに分割し、各ステージでの処理機構を従続接続し
たパイプラインを構築して、命令が入ってくるごとに、
該パイプラインに命令を投入することで、複数個の命令
をステージ単位で並列に処理するパイプライン方式があ
る。
Traditionally, one way to improve the processing power of computer systems is to divide the processing executed by one instruction into multiple stages and construct a pipeline in which the processing mechanisms at each stage are connected in series. , each time an instruction comes in,
There is a pipeline method in which a plurality of instructions are processed in parallel on a stage-by-stage basis by inputting instructions into the pipeline.

計算機でのデータ処理を該パイプライン方式で処理する
場合、各ステージでの実行サイクルをなるべく短くする
必要があるが、最近、計算機によるデータ処理の多様化
、処理量の増大化により、例えば、マイクロプロセッサ
のアプリケーシゴンが、益々多岐にわたり、処理の高速
化、アドレス空間の拡大化、或いは、処理語長の増加等
の、様々な要求がでてきており、これらの要求を効率よ
く処理することが必要になってきている。
When processing data on a computer using the pipeline method, it is necessary to shorten the execution cycle at each stage as much as possible. The applications of processors are becoming more and more diverse, and there are various demands such as faster processing, expansion of address space, and increase in processing word length, and it is difficult to efficiently process these demands. It's becoming necessary.

上記の、例えば、アドレス空間の拡大化により、該パイ
プラインの実効アドレス計算ステージでの実行時間が長
くなる問題があり、パイプラインでの実行速度の高速化
を妨げる要因になってきたことから、該実効アドレス計
算に必要な実行時間を短縮できる実効アドレス計算制御
方式が必要とされるようになってきた。
For example, as mentioned above, due to the expansion of the address space, there is a problem that the execution time in the effective address calculation stage of the pipeline becomes longer, and this has become a factor that hinders the increase in the execution speed of the pipeline. There is now a need for an effective address calculation control method that can shorten the execution time required for effective address calculation.

〔従来の技術と発明が解決しようとする課題〕第3図は
従来のパイプラインプロセッサにおける実効アドレス計
算制御方式を説明する図であり(al)はアドレス長ガ
(Xビットの場合の構成例を示し、(a2)は該アドレ
ス長が2Xビツトの場合の構成例を示し、(bl) 、
 (b2)は、それぞれの場合での動作タイムチャート
を示している。
[Prior art and problems to be solved by the invention] Fig. 3 is a diagram explaining an effective address calculation control method in a conventional pipeline processor. , (a2) shows a configuration example when the address length is 2X bits, (bl),
(b2) shows an operation time chart in each case.

従来、パイプライン方式で動作するプロセッサ内の実効
アドレス計算部は、本図に示すように、処理する全アド
レスビット (例えば、Xビット或いは、2Xビツト)
を、1演算サイクルで加算している。
Conventionally, an effective address calculation unit in a processor that operates in a pipeline system processes all address bits (for example, X bits or 2X bits), as shown in this figure.
are added in one calculation cycle.

即ち、(bl) 、 (b2)図に示したパイプライン
の実効アドレス計算ステージでは、下位ビットからの桁
上げ伝播時間を含む十分なサイクル時間をもつように設
計されている。
That is, the effective address calculation stage of the pipeline shown in FIGS. (bl) and (b2) is designed to have a sufficient cycle time including the carry propagation time from the lower bits.

従って、加算するアドレスの下位ビットからの桁上げ伝
播時間を加味したパイプラインサイクル時間とする必要
があり、若し、全パイプラインステージの中で、該実効
アドレス計算ステージが時間的なボトルネックとなるよ
うな場合には、アドレス長が増加(例えば、本図(al
)図→(a2)図)するに従って、実効アドレス計算時
間が長くなり((bl)図→(b2)図参照)、パイプ
ライン方式で動作するプロセッサの性能を低下させる要
因となる問題があった。
Therefore, it is necessary to set the pipeline cycle time to take into account the carry propagation time from the lower bits of the address to be added, and if the effective address calculation stage is the time bottleneck among all pipeline stages. In this case, the address length is increased (for example, in this figure (al
) Figure → (a2) Figure) The effective address calculation time becomes longer (see (bl) figure → (b2) figure), which causes a problem that reduces the performance of processors that operate in a pipeline system. .

該桁上げ伝播を高速化する為に、キャリールックアヘッ
ド(先見桁上げ)の手法が知られているが、アドレス長
に比例して伝播時間が増加することには変わりはない。
In order to speed up the carry propagation, a carry look ahead technique is known, but the propagation time still increases in proportion to the address length.

本発明は上記従来の欠点に鑑み、パイプライン方式で動
作するプロセッサにおいて、実効アドレス計算を高速に
行い、パイプラインステージの実行サイクル時間が長く
ならないようにすることができる実効アドレス計算制御
方式を提供することを目的とするものである。
In view of the above-mentioned conventional drawbacks, the present invention provides an effective address calculation control method that can perform effective address calculation at high speed and prevent the execution cycle time of the pipeline stage from increasing in a processor that operates in a pipeline system. The purpose is to

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

第1図は本発明の詳細な説明する図である。 FIG. 1 is a diagram explaining the present invention in detail.

上記の問題点は下記の如くに構成したパイプラインプロ
セッサにおける実効アドレス計算制御方式によって解決
される。
The above problem is solved by an effective address calculation control method in a pipeline processor configured as follows.

(1)パイプライン方式で動作するプロセッサにおいて
、 実効アドレス計算モジュールを、実効アドレスの複数ビ
ットを単位として、複数個のモジュールに分割し、 該分割した各モジュールで独立に、実効アドレスの計算
を行い、下位アドレスを分担している各モジエールから
の桁上げの有無を検出して、該桁上げがない場合は、通
常のパイプライン動作を続けて、それぞれのモジュール
の計算結果を結合し、 該桁上げがある場合には、パイプラインをインターロッ
クし、各上位のモジュールでの計算結果に該桁上げを加
算することを、各モジュールでの桁上げがなくなる迄繰
り返した後に、その結果と、該インターロックされてい
る各下位の計算結果を結合して実効アドレスとするよう
に構成する。
(1) In a processor that operates in a pipeline system, the effective address calculation module is divided into multiple modules with multiple bits of the effective address as a unit, and each divided module calculates the effective address independently. , detect the presence or absence of a carry from each module sharing the lower address, and if there is no carry, continue normal pipeline operation, combine the calculation results of each module, and calculate the corresponding digit. If there is a carry, interlock the pipeline and add the carry to the calculation result in each upper module until there is no carry in each module, and then add the result and the carry. The calculation results of each interlocked lower order are combined to form an effective address.

(2)パイプライン方式で動作するプロセッサにおいて
、 実効アドレス計算モジュールを、実効アドレスの複数ビ
ットを単位として、複数個のモジュールに分割し、 該分割した各モジュールで独立に、実効アドレスの計算
を行い、下位アドレスを分担している各モジュールの上
位数ビットで桁上げを予測して、該桁上げがないと予測
された場合は、通常のパイプライン動作を続けて、それ
ぞれのモジュールの計算結果を結合し、 該桁上げがあると予測された場合には、パイプラインを
インターロックし、各上位のモジュールでの計算結果に
該桁上げを加算することを、各モジュールでの桁上げが
なくなる迄繰り返した後に、その結果と、該インターロ
ックされている各下位の計算結果を結合して実効アドレ
スとするように構成する。
(2) In a processor that operates in a pipeline system, the effective address calculation module is divided into multiple modules with multiple bits of the effective address as a unit, and each divided module calculates the effective address independently. , predict a carry using the upper few bits of each module that shares the lower address, and if it is predicted that there will be no carry, continue normal pipeline operation and calculate the calculation results of each module. When the carry is predicted to occur, the pipeline is interlocked and the carry is added to the calculation result in each upper module until there is no carry in each module. After repeating, the result is combined with the interlocked lower-order calculation results to form an effective address.

〔作用〕[Effect]

即ち、本発明によれば、パイプライン方式で動作するプ
ロセッサの実効アドレス計算モジュール    −を、
実効アドレスビットに関してn分割、例えば、2分割し
、それぞれ分割されたモジュールにおいて、独立に実効
アドレスの計算を行わせるようにし、 ■該分割した下位アドレスからの桁上げのを無を検出し
て、或いは、 ■該分割した下位アドレスの上位数ビットで構成されて
いる先見桁上げ回路を用いて、該下位ビットからの桁上
げの予測をして、 該下位ビットからの桁上げがない場合には、通常のパイ
プライン動作を行い、上位アドレス/下位アドレスの計
算結果を結合して実効アドレスとするが、下位アドレス
からの桁上げが検出された場合、或いは、桁上げがある
と予測された場合には、該検出信号、或いは、予測信号
でパイプラインをインターロックし、上位側での実効ア
ドレス計算結果に桁上げを加算した後、その結果と、イ
ンターロックされている下位側の計算結果とを結合して
実効アドレスとする。
That is, according to the present invention, an effective address calculation module of a processor that operates in a pipelined manner -
The effective address bits are divided into n divisions, for example, into two, and the effective address is calculated independently in each divided module. Or, ■Use a look-ahead carry circuit made up of the upper few bits of the divided lower address to predict a carry from the lower bit, and if there is no carry from the lower bit, , the normal pipeline operation is performed and the calculation results of the upper address/lower address are combined to form the effective address, but if a carry from the lower address is detected, or if a carry is predicted to occur. To do this, interlock the pipeline with the detection signal or prediction signal, add a carry to the effective address calculation result on the upper side, and then combine that result with the interlocked calculation result on the lower side. are combined to form the effective address.

本発明を実施した場合、下位側から桁上げがある場合、
或いは、該桁上げがあると予測された場合には、実効ア
ドレス計算が、通常の実効アドレス計算サイクルと、イ
ンターロックサイクルの、少なくとも2サイクルを必要
とすることになるが、例えば、該分割した各モジュール
でのアドレスが32ビツトであるとすると、上記桁上げ
が発生するケースは、4ギガバイトバウンダリを跨ぐア
クセスが起こる場合であり、このようなことが起こる頻
度は、実際のデータ処理では極めて少ないことであるの
で、本発明を妨げる要因とはならない。
When implementing the present invention, if there is a carry from the lower side,
Alternatively, if the carry is predicted to occur, effective address calculation will require at least two cycles, a normal effective address calculation cycle and an interlock cycle. Assuming that the address in each module is 32 bits, the case in which the above carry occurs is when an access that crosses the 4 gigabyte boundary occurs, and this kind of occurrence is extremely rare in actual data processing. Therefore, it does not become a factor that hinders the present invention.

又、該実効アドレス計算モジュールをn分割した場合に
は、各モジュールで桁上げを検出、或いは、該桁上げを
予測することになる他、下位からの桁上げで、上位での
実効アドレス計算結果に該桁上げを加算した時、再度桁
上げが発生することが起こり得る為、インターロックサ
イクルを複数サイクルとする制御を必要とするが、この
ようなことが起こる頻度も、実際のデータ処理では少な
いと考えられるので、本発明を妨げる要因とはならない
Furthermore, if the effective address calculation module is divided into n parts, each module will detect the carry or predict the carry. When the carry is added to , the carry may occur again, so control is required to make the interlock cycle multiple cycles, but the frequency with which this happens also depends on actual data processing. Since it is considered to be small, it does not become a factor that hinders the present invention.

このように、本発明においては、分割された各モジュー
ルにおいて、それぞれ、全アドレス長より短い実効アド
レス計算を並列に行う為、該実効アドレス計算を短縮す
ることができ、全パイプラインステージの中で該実効ア
ドレス計算ステージが時間的なボトルネックとなるのを
回避でき、プロセッサの性能低下の要因を無くすること
ができる効果がある。
In this way, in the present invention, each divided module performs the effective address calculation shorter than the total address length in parallel, so the effective address calculation can be shortened and This has the effect of preventing the effective address calculation stage from becoming a time bottleneck, and eliminating the cause of processor performance deterioration.

〔実施例〕〔Example〕

以下本発明の実施例を図面によって詳述する。 Embodiments of the present invention will be described in detail below with reference to the drawings.

前述の第1図が本発明の詳細な説明する図であり、第2
図は本発明の一実施例を示した図であり、(a)は構成
例を示し、(bl)〜(b3)は動作タイムチャートを
示しており、パイプラインで動作するプロセッサ中の実
効アドレス計算モジュールを、実効アドレスに関して、
例えば、上位/下位に2分割して、それぞれの分割され
たモジュールで、並列に実効アドレスを計算し、該計算
過程において、下位側で桁上げが検出された場合、或い
は、該桁上げがあると予測された場合に、パイプライン
をインターロックし、上位側の計算結果に該桁上げを加
算した後、その結果と、インターロックされている下位
側での計算結果とを結合して、真の実効アドレスとする
手段が本発明を実施するのに必要な手段である。尚、企
図を通して同じ符号は同じ対象物を示している。
The above-mentioned FIG. 1 is a diagram explaining the present invention in detail, and FIG.
The figure shows an embodiment of the present invention, (a) shows a configuration example, (bl) to (b3) show operation time charts, and the effective address in a processor operating in a pipeline is shown. The calculation module, with respect to the effective address,
For example, if the module is divided into upper and lower parts and the effective address is calculated in parallel in each divided module, and a carry is detected on the lower side during the calculation process, or If it is predicted that A means for making the effective address of the address is a necessary means for carrying out the present invention. Note that the same reference numerals refer to the same objects throughout the plan.

以下、第1図を参照しながら、第2図によって本発明の
実効アドレス計算方式を説明する。
Hereinafter, the effective address calculation method of the present invention will be explained with reference to FIG. 2 while referring to FIG.

本実施例においては、全実効アドレスビット長を64 
ビットとし、バイブラインの実効アドレス計算モジュー
ルを、該実効アドレスに関して、上位/下位、それぞれ
、32ビツトに分割して、それぞれ、独立に、実効アド
レス計算ができる構成とする。又、該実効アドレス計算
は、例えば、「ベースアドレス士変位」を実行するもの
として説明する。
In this embodiment, the total effective address bit length is 64
The effective address calculation module of the vibe line is divided into upper and lower 32 bits, respectively, with respect to the effective address, so that effective address calculation can be performed independently for each bit. Further, the effective address calculation will be explained as executing "base addresser displacement", for example.

先ず、パイプライン動作は、(bl)図に示した、例え
ば、5ステージで実行されるものとすると、実効アドレ
ス計算ステージ(AC)において、それぞれのモジュー
ル1で、入力レジスタ(A−REG−U/L)11に命
令のペースレジスタの内容が設定され、入力レジスタ(
D−REG−’U/L) 12に変位の内容が設定され
、公知のキャリー保持加算器(C5A) 、キャリー伝
播加算器(CPA)からなる実効アドレス加算器(EA
G−U/L) 13で実効アドレスの計算が行われる。
First, assuming that the pipeline operation is executed in five stages, for example, as shown in the figure (bl), in the effective address calculation stage (AC), each module 1 inputs the input register (A-REG-U). /L) The contents of the pace register of the instruction are set in 11, and the input register (
The contents of the displacement are set in D-REG-'U/L) 12, and an effective address adder (EA) consisting of a known carry-hold adder (C5A) and a carry-propagate adder (CPA) is set.
GU/L) 13, the effective address is calculated.

実効アドレス加算器(EAG−U/L) 13がこのよ
うに構成されていると、前述の先見桁上げ手段からの信
号で、下位アドレスからの桁上げを監視することができ
る。又、該桁上げの監視を、例えば、上位の数ビットで
構成されている前述の先見桁上げ手段からの信号で行う
ことで、該下位アドレスからの桁上げの予測を行うこと
ができる。
When the effective address adder (EAG-U/L) 13 is configured in this way, a carry from a lower address can be monitored using a signal from the aforementioned look-ahead carry means. Further, by monitoring the carry using, for example, a signal from the above-mentioned look-ahead carry means made up of several upper bits, it is possible to predict the carry from the lower address.

このようにして、下位アドレスの実効アドレス計算モジ
ュールlにおいて、桁上げ(キャリー)が発生、或いは
、桁上げ予測信号が発生すると、上位の実効アドレス計
算モジュール1のキャリー保持レジスタ(CR) 14
にセットされる。
In this way, when a carry occurs or a carry prediction signal occurs in the effective address calculation module 1 of the lower address, the carry holding register (CR) 14 of the upper effective address calculation module 1
is set to

(1)桁上げなし 下位の実効アドレス計算モジュール1からの桁上げがな
いと認識された場合には、それぞれのモジュール1での
実効アドレスの計算結果は、実効アドレス計算ステージ
(AC)→オペランドフェッチステージ(OF)移行時
に、それぞれ、実効アドレスレジスタ(EA−REG−
U/L) 15にセットされ、そのセット結果が結合さ
れて、次のオペランドフェッチステージ(OF)でオペ
ランドフェッチアドレスとして使用される。このとき、
パイプラインの乱れはなく、通常のパイプライン動作が
行われる。((b2)図参照) (2)桁上げあり7桁上げありと予測 下位の実効アドレス計算モジュール1からの桁上げ(或
いは、桁上げの予測)信号を検出すると、パイプライン
制御部にも送出され、即、上位の実効アドレス計算モジ
ュール1を含めた各機能モジュールにインターロック信
号■が送出され、桁上げ用の加算器(CEAG−[1)
 16において、該桁上げ加算が終了する迄、各機能モ
ジュール等をインターロックする。
(1) No carry If it is recognized that there is no carry from the lower effective address calculation module 1, the effective address calculation result in each module 1 is transferred from the effective address calculation stage (AC) to the operand fetch. At the time of stage (OF) transition, the effective address register (EA-REG-
U/L) is set to 15 and the set result is combined and used as the operand fetch address in the next operand fetch stage (OF). At this time,
There is no pipeline disturbance and normal pipeline operation occurs. (Refer to figure (b2)) (2) Carry 7 Carry predicted When a carry (or carry prediction) signal from the lower effective address calculation module 1 is detected, it is also sent to the pipeline control unit. Immediately, the interlock signal ■ is sent to each functional module including the upper effective address calculation module 1, and the carry adder (CEAG-[1)
At step 16, each functional module etc. is interlocked until the carry addition is completed.

このインターロックサイクル(本図(b3)のIAC)
では、下位側の実効アドレスレジスタ(EA−REG−
L) 15はロックされ、下位の実効アドレスは保持さ
れる。
This interlock cycle (IAC in this figure (b3))
Now, the lower effective address register (EA-REG-
L) 15 is locked and the lower effective address is held.

この間に、上位の実効アドレス計算モジュール1におい
て、上位の実効アドレスの計算結果に該桁上げを加算す
る処理、即ち、上位の実効アドレスの再計算が行われ、
その結果はマルチプレクサ(MPX) 51を介して、
上位側の実効アドレスレジスタ(EA−REG−11)
 15に再セットされる。
During this time, the upper effective address calculation module 1 performs a process of adding the carry to the calculation result of the upper effective address, that is, recalculates the upper effective address,
The result is passed through a multiplexer (MPX) 51 to
Upper effective address register (EA-REG-11)
It is reset to 15.

以上で、該インターロックサイクルは解除され、通常の
パイプライン動作に復帰する。((b3)図参照) 上記、本発明による実効アドレス計算において、該桁上
げ予測信号による場合には、「桁上げなし」となること
があり、この時には、上記インターロックサイクルは無
駄な処理となるが、上位アドレスの再計算は゛O゛加算
(即ち、桁上げ一〇)となり、結果は正常に求められる
With this, the interlock cycle is released and normal pipeline operation is resumed. (See figure (b3)) In the above effective address calculation according to the present invention, if the carry prediction signal is used, there may be a case where "no carry" occurs, and in this case, the above interlock cycle is considered to be a wasteful process. However, the recalculation of the upper address is an addition of ``O'' (that is, a carry of 10), and the result is obtained normally.

又、上記の実施例においては、実効アドレス計算モジュ
ールを上位と下位アドレスの実効アドレス計算モジュー
ル1に2分割した例で説明したが、これに限定されるも
のではなく、一般には、複数個のアドレスビットを単位
として、複数個に分割してもよいことはいう迄もないこ
とである。
In addition, in the above embodiment, an example was explained in which the effective address calculation module is divided into two effective address calculation modules 1 for upper and lower addresses, but the invention is not limited to this, and in general, multiple addresses It goes without saying that the bit may be divided into a plurality of units.

但し、この場合、該分割された複数個の実効アドレス計
算モジュール1で、並列に、それぞれの実効アドレス計
算が行われ、あるモジュール1で桁上げが発生すると、
即、各機能モジュールにインターロックがかけられ、上
位のモジュール1で、該上位側の計算結果に該下位モジ
ュール1からの桁上げを加算する処理は上記と同じ態様
であるが、該上位のモジュール1において、再度、桁上
げが発生することがあり、この場合には、再度、インタ
ーロック■をかけて、更に、上位のモジュール1に送出
し、該上位のモジュール1での実効アドレス計算を行う
ことが必要となる。そして、何れのモジュール1でも、
桁上げが発生しなかった場合に、該インターロックを解
除して、通常のパイプライン動作に復帰するとうい制御
が必要になるが、このようなケースは極めて希であり、
本発明の効果である並列計算による実効アドレス計算の
高速化を妨げる要因となることはない。
However, in this case, the effective address calculations are performed in parallel in the plurality of divided effective address calculation modules 1, and when a carry occurs in a certain module 1,
That is, each functional module is interlocked, and the process of adding the carry from the lower module 1 to the calculation result of the upper module in the upper module 1 is the same as above, but 1, a carry may occur again. In this case, the interlock ■ is applied again, the data is sent to the upper module 1, and the effective address is calculated in the upper module 1. This is necessary. And in any module 1,
If a carry does not occur, an additional control is required to release the interlock and return to normal pipeline operation, but such cases are extremely rare.
This does not become a factor that hinders the speeding up of effective address calculation by parallel calculation, which is an effect of the present invention.

このように、本発明は、パイプライン方式で動作するプ
ロセッサにおける実効アドレス計算制御方式において、
パイプラインで動作するプロセッサ中の実効アドレス計
算モジュールを、実効アドレスに関して、例えば、上位
/下位に2分割して、それぞれの分割されたモジュール
で、並列に実効アドレスを計算し、該計算過程において
、桁上げが検出された場合、或いは、該桁上げがあると
予測された場合に、パイプラインをインターロックし、
上位側の計算結果に該桁上げを加算した後、その結果と
、インターロックされている下位の計算結果とを結合し
て、真の実効アドレスとするようにした所に特徴がある
As described above, the present invention provides an effective address calculation control method for a processor operating in a pipelined manner.
An effective address calculation module in a processor operating in a pipeline is divided into two, for example, upper/lower, with respect to the effective address, and each divided module calculates the effective address in parallel, and in the calculation process, interlocking the pipeline when a carry is detected or predicted;
The feature is that after adding the carry to the higher-order calculation result, the result is combined with the interlocked lower-order calculation result to form a true effective address.

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

以上、詳細に説明したように、本発明のパイプラインプ
ロセッサにおける実効アドレス計算制御方式は、実効ア
ドレス計算モジュールを、実効アドレスの複数ビットを
単位として、複数個、例えば、2個のモジュールに分割
し、該分割した各モジュールで独立に、実効アドレスの
計算を行い、下位アドレスを分担しているモジュールか
らの桁上げの有無を検出するか、或いは、該下位のモジ
ュールの上位数ビットで該桁上げを予測して、該桁上げ
がない場合は、通常のパイプライン動作を続けて、それ
ぞれのモジュールの計算結果を結合し、下位のモジュー
ルからの桁上げが検出されるか、或いは、桁上げがある
と予測された場合には、パイプラインをインターロック
し、上位のモジュールでの計算結果に該桁上げを加算し
た後に、その結果と、該インターロックされている下位
の計算結果を結合して実効アドレスとするようにしたも
のであるので、分割された各モジュールにおいて、それ
ぞれ、全アドレス長より短い実効アドレス計算を並列に
行う為、該実効アドレス計算を短縮することができ、全
パイプラインステージの中で該実効アドレス計算ステー
ジが時間的なボトルネックとなるのを回避でき、プロセ
ッサの性能低下の要因を無くすることができる効果があ
る。
As described above in detail, the effective address calculation control method in the pipeline processor of the present invention divides the effective address calculation module into a plurality of modules, for example, two modules, with multiple bits of the effective address as a unit. , calculate the effective address independently in each divided module and detect the presence or absence of a carry from the module sharing the lower address, or calculate the carry using the upper few bits of the lower module. If there is no such carry, continue the normal pipeline operation and combine the calculation results of each module until a carry from a lower module is detected or a carry is detected. If it is predicted that there is a carry, interlock the pipeline, add the carry to the calculation result of the upper module, and then combine that result with the calculation result of the interlocked lower module. Since the effective address is calculated in parallel in each divided module, the effective address calculation, which is shorter than the total address length, can be shortened, and all pipeline stages can be This has the effect of preventing the effective address calculation stage from becoming a time bottleneck in the process, and eliminating the cause of processor performance deterioration.

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

第1図は本発明の詳細な説明する図。 第2図は本発明の一実施例を示した図。 第3図は従来のパイプラインプロセッサにおける実効ア
ドレス計算制御方式を説明する図。 である。 図面において、 1は分割された実効アドレス計算モジュール。 11は入力レジスタ(^−REc−U/L) 。 12は入力レジスタ(D−REG−U/L) 。 13は実効アドレス加算器(EAG−U/L) 。 14はキャリー保持レジスタ(CR) 。 15は実効アドレスレジスタ(EA−REG−U/L)
 。 16は桁上げ用加算器(CEAG−U) 。 ■はインターロック信号。 をそれぞれ示す。 第1図 (al)                     
(a2)第 3 図 (その1) ミ ← Xピットアドレス時に129なサイクルタイム
→ 1(bl) 1 → 2Xビフト7トレスI寺にd9なサイケルクイ
L ÷ 7(b2) 第 3 図 (その2)
FIG. 1 is a diagram explaining the present invention in detail. FIG. 2 is a diagram showing an embodiment of the present invention. FIG. 3 is a diagram explaining an effective address calculation control method in a conventional pipeline processor. It is. In the drawing, 1 is a divided effective address calculation module. 11 is an input register (^-REc-U/L). 12 is an input register (D-REG-U/L). 13 is an effective address adder (EAG-U/L). 14 is a carry hold register (CR). 15 is effective address register (EA-REG-U/L)
. 16 is a carry adder (CEAG-U). ■ is an interlock signal. are shown respectively. Figure 1 (al)
(a2) Fig. 3 (Part 1) Mi ← 129 cycle time at X pit address → 1 (bl) 1 → 2X Bift 7 Tres I Temple d9 cycle time L ÷ 7 (b2) Fig. 3 (Part 2)

Claims (2)

【特許請求の範囲】[Claims] (1)パイプライン方式で動作するプロセッサにおいて
、 実効アドレス計算モジュールを、実効アドレスの複数ビ
ットを単位として、複数個のモジュール(1)に分割し
、 該分割した各モジュール(1)で独立に、実効アドレス
の計算を行い、下位アドレスを分担している各モジュー
ル(1)からの桁上げの有無を検出して、 該桁上げがない場合は、通常のパイプライン動作を続け
て、それぞれのモジュール(1)の計算結果を結合し、 該桁上げがある場合には、パイプラインをインターロッ
クし、各上位のモジュール(1)での計算結果に該桁上
げを加算することを、各モジュール(1)での桁上げが
なくなる迄繰り返した後に、その結果と、該インターロ
ックされている各下位の計算結果を結合して実効アドレ
スとすることを特徴とするパイプラインプロセッサにお
ける実効アドレス計算制御方式。
(1) In a processor that operates in a pipeline system, the effective address calculation module is divided into a plurality of modules (1) using multiple bits of the effective address as a unit, and each divided module (1) independently performs the following steps: The effective address is calculated and the presence or absence of a carry from each module (1) sharing the lower address is detected. If there is no carry, normal pipeline operation continues and each module The calculation results of (1) are combined, and if there is a carry, the pipeline is interlocked and each module ( An effective address calculation control method in a pipeline processor, characterized in that after repeating step 1) until there is no more carry, the result is combined with the interlocked lower calculation results to obtain an effective address. .
(2)パイプライン方式で動作するプロセッサにおいて
、 実効アドレス計算モジュールを、実効アドレスの複数ビ
ットを単位として、複数個のモジュール(1)に分割し
、 該分割した各モジュール(1)で独立に、実効アドレス
の計算を行い、下位アドレスを分担している各モジュー
ル(1)の上位数ビットで桁上げを予測して、 該桁上げがないと予測された場合は、通常のパイプライ
ン動作を続けて、それぞれのモジュール(1)の計算結
果を結合し、 該桁上げがあると予測された場合には、パイプラインを
インターロックし、各上位のモジュール(1)での計算
結果に該桁上げを加算することを、各モジュール(1)
での桁上げがなくなる迄繰り返した後に、その結果と、
該インターロックされている各下位の計算結果を結合し
て実効アドレスとすることを特徴とするパイプラインプ
ロセッサにおける実効アドレス計算制御方式。
(2) In a processor that operates in a pipeline system, the effective address calculation module is divided into a plurality of modules (1) using multiple bits of the effective address as a unit, and each divided module (1) independently performs the following steps: Calculate the effective address and predict a carry using the upper few bits of each module (1) that shares the lower address. If it is predicted that there will be no carry, continue normal pipeline operation. Then, the calculation results of each module (1) are combined, and if it is predicted that there will be a carry, the pipeline is interlocked and the calculation results of each upper module (1) are combined with the carry. Each module (1)
After repeating until there are no more carries, the result and
An effective address calculation control method in a pipeline processor, characterized in that the interlocked lower order calculation results are combined to form an effective address.
JP13091389A 1989-05-24 1989-05-24 Effective address calculation control system in pipeline processor Pending JPH02309423A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13091389A JPH02309423A (en) 1989-05-24 1989-05-24 Effective address calculation control system in pipeline processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13091389A JPH02309423A (en) 1989-05-24 1989-05-24 Effective address calculation control system in pipeline processor

Publications (1)

Publication Number Publication Date
JPH02309423A true JPH02309423A (en) 1990-12-25

Family

ID=15045667

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13091389A Pending JPH02309423A (en) 1989-05-24 1989-05-24 Effective address calculation control system in pipeline processor

Country Status (1)

Country Link
JP (1) JPH02309423A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0816364A (en) * 1994-04-26 1996-01-19 Nec Corp Counter circuit and microprocessor using the same

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0816364A (en) * 1994-04-26 1996-01-19 Nec Corp Counter circuit and microprocessor using the same
US5682342A (en) * 1994-04-26 1997-10-28 Nec Corporation High-speed counter

Similar Documents

Publication Publication Date Title
US9760373B2 (en) Functional unit having tree structure to support vector sorting algorithm and other algorithms
KR100909510B1 (en) Matrix Multiplication with Reduced Bandwidth Requirements
US5995992A (en) Conditional truncation indicator control for a decimal numeric processor employing result truncation
EP0142912B1 (en) Code determination using half-adder based operand comparator
US5517440A (en) Optimized binary adders and comparators for inputs having different widths
JPH02227769A (en) Data processing system
JPH06195322A (en) Information processor used as general purpose neurocomputer
US5704052A (en) Bit processing unit for performing complex logical operations within a single clock cycle
US5590351A (en) Superscalar execution unit for sequential instruction pointer updates and segment limit checks
US5583806A (en) Optimized binary adder for concurrently generating effective and intermediate addresses
JPH06242953A (en) Data processor
JPH03286332A (en) Digital data processor
KR100735944B1 (en) Method and computer program for single instruction multiple data management
US6499046B1 (en) Saturation detection apparatus and method therefor
JPH02309423A (en) Effective address calculation control system in pipeline processor
KR102286101B1 (en) Data processing apparatus and method for performing a narrowing-and-rounding arithmetic operation
JPS6165336A (en) High-speed arithmetic system
JPS6310263A (en) Vector processor
JPH04184535A (en) Parallel arithmetic units
JPH0434191B2 (en)
RU2101759C1 (en) Computing unit with alternating processing of several instruction flows
JPH09212363A (en) Information processor
JPS59158441A (en) Pipeline control system
JPS62160529A (en) Data processor
JPH0378832A (en) Data processor