JPH0460836A - 先行制御装置 - Google Patents

先行制御装置

Info

Publication number
JPH0460836A
JPH0460836A JP2171440A JP17144090A JPH0460836A JP H0460836 A JPH0460836 A JP H0460836A JP 2171440 A JP2171440 A JP 2171440A JP 17144090 A JP17144090 A JP 17144090A JP H0460836 A JPH0460836 A JP H0460836A
Authority
JP
Japan
Prior art keywords
instruction
address
relative
branch
page
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.)
Granted
Application number
JP2171440A
Other languages
English (en)
Other versions
JP2560520B2 (ja
Inventor
Shinichi Nagoya
名児耶 真一
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 JP2171440A priority Critical patent/JP2560520B2/ja
Publication of JPH0460836A publication Critical patent/JPH0460836A/ja
Application granted granted Critical
Publication of JP2560520B2 publication Critical patent/JP2560520B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は仮想記憶空間を有し、命令の先取りを行なうパ
イプライン構成の情報処理装置に関し、特に、相対分岐
命令の分岐先の命令を高速に先取りすることができる先
行制御装置に関する。
〔従来の技術〕
従来、この種の先行制御装置は相対分岐命令の分岐先の
命令を取出す場合、相対分岐命令を取出した論理アドレ
スに上記命令、の分岐ディスプレースメントを加算して
分岐先の論理アドレスを求めた後、絶対アドレス変換を
行ない、絶対アドレス変換によって求めた絶対アドレス
に基づいて分岐先の命令を取出すようにしている。また
、この他にも、前回相対分岐命令を実行した時に求まっ
た分岐先の絶対アドレスをテーブル等の記憶手段に記憶
させておき、再び上記命令を実行する場合は上記の記憶
手段に記憶されている絶対アドレスを分岐先の命令の絶
対アドレスとする装置も提案されている。
〔発明が解決しようとする課題〕
上述した従来技術の内、前者は分岐先の論理アドレスを
求めた後、絶対アドレス変換を行なうものであるので、
絶対アドレスを求めるまでに数サイクルを要し、次命令
を取出すまでに時間がかかるという問題があった。また
、後者は、次のサイクルで分岐先の絶対アドレスを求め
ることができるため、前者に比べて処理を高速化するこ
とはできるが、分岐先の絶対アドレスを記憶しておくた
めのテーブル等の記憶手段が必要となるため、ハードウ
ェア量が嵩むという問題があった。
本発明は少ないハードウェア量で、相対分岐命令の分岐
先の命令を高速に取り出せるようにすることにある。
〔課題を解決するための手段〕
本発明は上記目的を達成するため、 仮想記憶空間を有し、命令の先取りを行なうパイプライ
ン構成の情報処理装置に使用される先行制御装置に於い
て、 先取りした命令が相対分岐命令であるか否かを判定する
第1の判定手段と、 該第1の判定手段で前記先取りした命令が相対分岐命令
であると判定されることにより、前記先取りした相対分
岐命令自身の絶対アドレスのベージ内要素と前記先取り
した相対分岐命令の分岐ディスプレースメントとを加算
する加算手段と、該加算手段の加算結果に基づいて前記
先取りした相対分岐命令の分岐先の命令が前記先取りし
た相対分岐命令と同一ページ内にあるか否かを判定する
第2の判定手段と、 該第2の判定手段で同一ページ内にあると判定されるこ
とにより、前記先取りした相対分岐命令自身の絶対アド
レスのページ先頭アドレスと前記加算手段の加算結果と
を連結したアドレスに基づいて次命令の取出しを行なう
命令取出し手段とを設けたものである。
〔作 用〕
先取りされた命令は第1の判定手段により相対分岐命令
であるか否かが判定される。第1の判定手段で先取りさ
れた命令が相対分岐命令であると判定されると、加算手
段により先取りされた相対分岐命令自身の絶対アドレス
のページ内要素と相対分岐命令の分岐ディスプレースメ
ントとが加算される。第2の判定手段は加算手段の加算
結果に基づいて相対分岐命令の分岐先が相対分岐命令と
同一ページにあるか否かを判定し、第2の判定手段で分
岐先と相対分岐命令とが同一ページ内に存在すると判定
されることにより、命令取出し手段は相対分岐命令自身
の絶対アドレスのページ先頭アドレスと加算手段の加算
結果とを連結したアドレスに基づいて次命令を取出す。
〔実施例〕
次に本発明の実施例について図面を参照して詳細に説明
する。
第1図は本発明の実施例のブロック図である。
この実施例の先行制御装置が適用される情報処理装置は
、説明の便宜上、命令取出しに於ける絶対アドレスが3
2ビツト、1ページの大きさが一律4にバイト、命令語
長が一律32ビット(4バイト)であり、命令は主記憶
装置中に4バイト単位で整列されているものとする。ま
た、分岐命令を取出した場合の次命令の取出し、は−律
に分岐成功側を取出し、上記分岐命令を実行した結果、
分岐不成功であった場合には先行制御をキャンセルし、
命令を取出し直す方式を採用しているとする。
さて、本実施例の先行制御装置は、第1図に示すように
、命令が格納されている主記憶装置(図示せず)の写し
が格納されている命令キャッシュ(IC)1と、命令取
出しにかかる絶対アドレスが設定される命令アドレスレ
ジスタ(IAR)2とを有している。ここで、最も単純
化された構成では命令キャッシュ1は1コンパートメン
ト構成であり、命令アドレスレジスタ2に格納されたア
ドレスにより索引される。また、命令が設定される命令
レジスタ(IR)3と、外部ユニット(図示せず)から
の命令取出しアドレス5.命令アドレスレジスタ2内の
アドレスに命令語長に対応する[4」を加えたアドレス
6、命令アドレスレジスタ2の上位20ビツトと加算器
9の加算結果とを連結したアドレス7の内の1つを選択
するセレクタ4と、命令レジスタ3に設定された命令が
分岐命令であるか否かを判定し、分岐命令である場合は
更に相対分岐命令であるが否かを判定するデコーダ8と
、加算器9と、デコーダ8の判定結果と符号ビット14
と加算器9のキャリー信号11とに基づいてセレクタ4
を制御するセレクト信号を生成するセレクト信号生成回
路10と、命令アドレスレジスタ2の下位12ビツトが
セットされるページ内アドレスレジスク(PAR)12
とを有している。
次に本実施例の動作を説明する。
命令アドレスレジスタ2には初期設定時、外部からセレ
クタ4を介して命令取出しアドレス5として命令開始ア
ドレスが設定される。以後、命令の取出しはこの命令ア
ドレスレジスタ2に設定されたアドレスによって命令キ
ャッシュ1を索引することにより行なわれ、読出された
命令は命令レジスタ3に設定される。命令レジスタ3に
命令が設定されると、デコーダ8は設定された命令が分
岐命令であるか否かを判定し、分岐命令であると判定し
た場合は更に相対分岐命令であるか否かを判定し、判定
結果をセレクト信号生成回路10に加える。
デコーダ8で分岐命令でないと判定された場合は、セレ
クト信号生成回路10はアドレス6を選択さ廿るセレク
ト信号をセレクタ4に加える。これにより、命令アドレ
スレジスタ2には現在設定されているアドレスに「4」
を加算したアドレスが設定され、次の命令が取り出され
る。以降、取出した命令がデコーダ8により分岐命令で
あると判定されるまで、上記動作が繰返される。
また、デコーダ8で分岐命令ではあるが、相対分岐命令
ではないことが判定された場合は、セレクト信号生成回
路10は命令取出しアドレス5を選択させるセレクト信
号をセレクタ4に加える。
これにより、外部ユニット(図示せず)で生成された分
岐先の絶対アドレスが命令アドレスレジスタ2に設定さ
れ、命令キャッシュ1から分岐先の命令が取出される。
次に、命令レジスタ3に設定された命令がデコーダ8で
相対分岐命令であると判定された場合の動作を説明する
相対分岐命令の分岐先の論理アドレスは相対分岐命令が
格納されていた論理アドレスに対して命令中のディスブ
レースメン1一部(本実施例では下位12ビツトとする
)により相対的に示される。
ここで、周知のように、論理アドレスの下位]2ビット
、即ち4にハイドのページ内のアドレスは絶対アドレス
のそれに等しい。従って、分岐先のアドレスが相対分岐
命令を取出したページと同一ページに存在する場合は、
分岐先の絶対アドレスの内、上位の20ビツト、即ちペ
ージの先頭アドレスは上記相対分岐命令を取出したペー
ジの先頭アドレスより求められ、下位12ビツト、即ち
ページ内アドレスは上記相対分岐命令を取出したページ
内アドレスと命令中のディスブレースメント部とを加算
することにより求めることができる。
本発明はこの点に着目したものである。
命令レジスタ3に相対分岐命令が設定されると、デコー
ダ8は設定された命令が相対分岐命令であることを示す
判定結果をセレクト信号生成回路lOに加える。
また、命令レジスタ3に相対分岐命令がセットされるご
とにより、加算器9により分岐先のぺ■ ジ内アドレスが求められる。加算器9はページ内アドレ
スレジスタ12の内容と命令レジスタ3の下位12ビツ
ト13の内容と符号ビット14とを入力とし、符号ビッ
ト14が“0”の場合、即ち分岐ディスプレースメント
が正の場合はページ内アドレスレジスタ12の内容と命
令レジスタ3の下位12ビツト13の内容とを加算し、
桁上げが生じることによりキャリー信号11を“1”と
し、符号ビット14が“1”の場合、即ち分岐ディスプ
レースメントが負の場合はページ内アドレスレジスタ1
2の内容から命令レジスタ3の下位12ビツト13の内
容を減算し、桁借りが生じることによりキャリー信号1
1を0″とするものである。ここで、命令レジスタ3に
相対分岐命令が設定された場合、ページ内アドレスレジ
スタ12の内容は上記相対分岐命令を取出したページ内
アドレスを、命令レジスタ3の下位12ビツト13は分
岐ディスプレースメントを、符号ビット14は分岐ディ
スプレースメントが正か負かを示しているので、加算器
9の加算結果は分岐先のページ内アドレスを示すことに
なる。
セレクト信号生成回路10は命令レジスタ3に設定され
た命令が相対分岐命令であるとデコーダ8で判定される
と、加算器9のキャリー信号11及び符号ビット14に
基づいて以下の処理を行なう。
ここで、キャリー信号11と符号ビット14との組み合
わせは下記(a)〜(d)の4通りがある。
(al  符号ビア)14及びキャリー信号11が共に
0” (bl  符号ビット14が“0”で、キャリー信号1
1が1” (C1符号ビット14及びキャリー信号11が共に″ 
1 ″ !d)  符号ビット14が“1”で、キャリー信号1
1がO″ 上記4つの組み合わせの内、(al、 (d)は相対分
岐命令と分岐先とが同一ページ内に存在する場合、(b
l、 (C)は同一ページにない場合の符号ビット14
とキャリー信号11との組み合わせである。
そこで、符号ビット14とキャリー信号11との組み合
わせが(b)、 (e)の場合、即ち、相対分岐命令と
分岐先とが同一ページにない場合は、外部ユニットによ
る絶対アドレス変換結果を命令アドレスレジスタ2に設
定することが必要になるため、セレクト信号生成回路I
Oは命令取出しアドレス5を選択させるセレクト信号を
セレクタ4に加える。これにより、外部ユニットによる
絶対アドレス変換結果が命令アドレスレジスタ2に設定
され、次命令の取出しが行なわれる。
また、符号ビット14とキャリー信号11との組み合わ
せがTa+、 (dlの場合、即ち、相対分岐命令と分
岐先とが同一ページに存在する場合は、分岐先の先頭ア
ドレスは相対分岐命令を取出したページの先頭アドレス
、即ち命令レジスタの上位20ビツトであり、ページ内
アドレスは加算器9の加算結果であるので、両者を連結
した相対分岐先アドレス7を選択させるセレクト信号を
セレクタ4に加える。これにより、ページの先頭アドレ
スとページ内アドレスとを連結した相対分岐先アドレス
フが命令アドレスレジスタ2に設定され、次命令の取出
しが行なわれる。
〔発明の効果〕
以上説明したように、本発明は、相対分岐命令とその分
岐先とが同一ページに存在する場合、相対分岐命令のデ
ィスプレースメントと相対分岐命令自身の絶対アドレス
のページ内要素との加算結果と、相対分岐命令自身の絶
対アドレスのページ先頭アドレスとを連結したアドレス
に基づいて次命令を取出すようにしたものであり、相対
分岐命令とその分岐先とが異なるページになる確率は一
般のプログラム構造からして稀少であるため、絶対アド
レスの変換結果を常に待ち合わせる従来装置に比べて相
対分岐命令の先取りを高速に行なうことが可能になる効
果がある。また、相対分岐命令の分岐先アドレスを動的
に計算して求めるので、前回相対分岐命令が実行された
ときの分岐先の絶対アドレスを記憶する従来装置に比べ
て記憶の為のハードウェア量を大幅に削減することがで
きる効果もある。
 q
【図面の簡単な説明】
第1図は本発明の実施例のブロック図である。 図に於いて、1・・・命令キャッシュ、2・・・命令ア
ドレスレジスタ、3・・・命令レジスタ、4・・・セレ
クタ、8・・・デコーダ、9・・・加算器、10・・・
セレクト信号生成回路、12・・・ページ内アドレスレ
ジスタ。

Claims (3)

    【特許請求の範囲】
  1. (1)仮想記憶空間を有し、命令の先取りを行なうパイ
    プライン構成の情報処理装置に使用される先行制御装置
    に於いて、 先取りした命令が相対分岐命令であるか否かを判定する
    第1の判定手段と、 該第1の判定手段で前記先取りした命令が相対分岐命令
    であると判定されることにより、前記先取りした相対分
    岐命令自身の絶対アドレスのページ内要素と前記先取り
    した相対分岐命令の分岐ディスプレースメントとを加算
    する加算手段と、該加算手段の加算結果に基づいて前記
    先取りした相対分岐命令の分岐先の命令が前記先取りし
    た相対分岐命令と同一ページ内にあるか否かを判定する
    第2の判定手段と、 該第2の判定手段で同一ページ内にあると判定されるこ
    とにより、前記先取りした相対分岐命令自身の絶対アド
    レスのページ先頭アドレスと前記加算手段の加算結果と
    を連結したアドレスに基づいて次命令の取出しを行なう
    命令取出し手段とを含むことを特徴とする先行制御装置
  2. (2)前記第2の判定手段は前記分岐ディスプレースメ
    ントが正の値の時、前記加算手段の加算結果に桁上げが
    生じることにより、前記先取りした相対分岐命令と該相
    対分岐命令の分岐先の命令とが同一ページ内に存在しな
    いと判定することを特徴とする請求項1記載の先行制御
    装置。
  3. (3)前記第2の判定手段は前記分岐ディスプレースメ
    ントが負の値の時、前記加算手段の加算結果に桁借りが
    生じることにより、前記先取りした相対分岐命令と該相
    対分岐命令の分岐先の命令とが同一ページ内に存在しな
    いと判定することを特徴とする請求項1記載の先行制御
    装置。
JP2171440A 1990-06-29 1990-06-29 先行制御装置 Expired - Fee Related JP2560520B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2171440A JP2560520B2 (ja) 1990-06-29 1990-06-29 先行制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2171440A JP2560520B2 (ja) 1990-06-29 1990-06-29 先行制御装置

Publications (2)

Publication Number Publication Date
JPH0460836A true JPH0460836A (ja) 1992-02-26
JP2560520B2 JP2560520B2 (ja) 1996-12-04

Family

ID=15923164

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2171440A Expired - Fee Related JP2560520B2 (ja) 1990-06-29 1990-06-29 先行制御装置

Country Status (1)

Country Link
JP (1) JP2560520B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5282035A (en) * 1975-12-27 1977-07-08 Yokogawa Hokushin Electric Corp Data processing unit
JPS59105148A (ja) * 1982-12-06 1984-06-18 Sanyo Electric Co Ltd マイクロプログラム制御方式の中央処理装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5282035A (en) * 1975-12-27 1977-07-08 Yokogawa Hokushin Electric Corp Data processing unit
JPS59105148A (ja) * 1982-12-06 1984-06-18 Sanyo Electric Co Ltd マイクロプログラム制御方式の中央処理装置

Also Published As

Publication number Publication date
JP2560520B2 (ja) 1996-12-04

Similar Documents

Publication Publication Date Title
KR920004962A (ko) 디지탈신호처리장치용 가상의 긴명령어 메모리장치 및 그 명령어 발생방법
JPS61148551A (ja) アドレス変換方式
JPH0650465B2 (ja) 分岐制御回路
US5386521A (en) Instruction prefetching circuit with a next physical address precalculating circuit
JPH0460836A (ja) 先行制御装置
JPS601655B2 (ja) デ−タプリフェツチ方式
JPH01177145A (ja) 情報処理装置
US5524221A (en) Next instruction pointer calculation system for a microcomputer
JP2771373B2 (ja) 命令先取り装置
JP2687765B2 (ja) 分岐予測方式
JPH0573424A (ja) 高速アドレス変換方式
JP3013996B2 (ja) 情報処理装置
JP2805786B2 (ja) 情報処理装置
JP2867798B2 (ja) 先行制御装置
JPH0235525A (ja) 命令フェッチ制御方法
JPH01255933A (ja) 掃出し制御方式
JPH0385636A (ja) 命令先行制御装置
JPH024011B2 (ja)
JPS6126089B2 (ja)
JPS5975483A (ja) バツフア・ストレ−ジ制御方式
JPH0481929A (ja) 情報処理装置
JPS61100836A (ja) 移動命令論理比較命令処理方式
JPS59180635A (ja) 命令先取制御方式
JPH02234228A (ja) リクエスト回数算出方式
JPS61136145A (ja) キヤツシユメモリ制御回路

Legal Events

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