JPH03265931A - 命令取出し方式 - Google Patents

命令取出し方式

Info

Publication number
JPH03265931A
JPH03265931A JP6484390A JP6484390A JPH03265931A JP H03265931 A JPH03265931 A JP H03265931A JP 6484390 A JP6484390 A JP 6484390A JP 6484390 A JP6484390 A JP 6484390A JP H03265931 A JPH03265931 A JP H03265931A
Authority
JP
Japan
Prior art keywords
instruction
address
memory
cue
retrieval
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
JP6484390A
Other languages
English (en)
Inventor
Shingo Koyama
小山 晋護
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP6484390A priority Critical patent/JPH03265931A/ja
Publication of JPH03265931A publication Critical patent/JPH03265931A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明はデータ処理装置において命令キャッシュメモ
リから分岐先命令を取り出すための命令取り出し方式に
関するものである。
〔従来の技術〕
第3図は従来の命令取り出し方式を用いたデータ処理装
置に備えられる命令取り出し装置の構成を示すブロック
図である。第3図において、1は命令を格納し命令を高
速に読み出すことができる命令キャッシェメモリ、2は
命令キャッシュメモIJ 1から取り出した命令を一時
的に格納する命令先取りキュメモリ、4は命令先取りキ
ュメモリ2に格納されている命令ストリームの任意の場
所から命令を取り出す命令先取りキュ選択取り出し手段
、9は命令先取りキュ選択取り出し手段4を制御する命
令先取りキュ選択取り出し制御手段である。上記命令先
取りキュ選択取り出し手段4は命令先取りキュメモリ2
の中から下記に示すパイプライン・レジスタに流す命令
を取り出す。このパイプライン・レジスタは、アドレス
計算ステージレジスタ5、アドレス参照ステージレジス
タ6、キャッシュデータ読、み出しステージレジスタ7
、実行ステージレジスタ8とから構成される。アドレス
計算ステージレジスタ5は、命令先取りキュ選択取り出
し手段4の出力を入力としアドレス計算を行なうための
実行中の命令を格納する。アドレス参照ステージレジス
タ6は、アドレス計算ステージレジスタ5の出力を入力
としキャッシュアドレス参照中の命令を格納する。キャ
ッシュデータ読み出しステージレジスタ7はアドレス参
照ステージレジスタ6の出力を入力としキャッシュデー
タ読み出し中の命令を格納する。実行ステージレジスタ
8はキャッシュデータ読み出しステージレジスタ7の出
力を入力とし実行中の命令を格納する。10はアドレス
計算ステージレジスタ5の内容からアドレスを計算する
アドレス計算手段である。即ち、アドレス計算手段10
は命令先取りキュ選択取り出し手段4から取り出された
命令分岐先のアドレスを計算する。
次にこの従来例の動作について説明する。
ここで想定しているパイプラインの構成は次の通りであ
る。第1ステージである命令フェッチ・ステージでは、
命令キャッシュメモリ1命令先取りキュメモリ2ヘデー
タを取り出す。第2ステージである命令デコードステー
ジでは、命令先取りキュメモリ2から命令先取りキュ選
択取り出し手段4を介して命令を取り出し、その命令の
デコードまでを行なう。第3ステージであるアドレス計
算ステージでは、オペランドアドレス計算を行なう。第
4ステージであるキャッシュ・アドレス参照ステージで
は、アドレス変換および、キャッシュデータのアドレス
・タグを参照する。第5ステージであるキャッシュ・デ
ータ・アクセスサイクル・ステージでは、オペランド・
データのメモリ・アクセスを行なう。第6ステージであ
る実行ステージでは、マイクロプログラムの実行を行な
う。
上記の構成のパイプラインにおいて、分岐命令が検出さ
れると次の様に動作する。
最初、命令キャッシュメモリ1からフェッチされた分岐
命令は命令先取りキュメモリ2に取り込まれる。命令先
取りキュメモリ2に取り込まれた分岐命令は、通常、命
令先取りキュ選択取り出し制御手段9により順番に1つ
ずつ取り出され、命令デコードを実行するとともに、ア
ドレス計算ステージレジスタ5に取り込まれる。アドレ
ス計算ステージレジスタ5に取り込まれた分岐命令は、
アドレス計算手段10で、分岐先のアドレスが計算され
る。アドレス計算後、この分岐命令は、アドレス参照ス
テージレジスタ6に取り込まれ、アドレス計算結果の分
岐先アドレスが、命令キャッシュメモリ1内にあるかが
参照される。その後この命令はキャッシュデータ読み出
しステージレジスタ7に取り込まれ、分岐先命令が命令
キャッシュメモリ1から読み出され、分岐命令が実行ス
テージレジスタ8に取り込まれるのと同時に、分岐先命
令が命令先取りキュメモリ2に取りこまれる。
分岐先命令はその後、順次各ステージを流れる。
第4図は、上記の分岐命令と分岐先命令の流れを示した
もので、図中のraJは、分岐先命令を示している。第
4図の横軸は時間を示し、各1マスが1マシンサイクル
となっている。一方線軸は、各々の命令がどのステージ
の処理をしているかを示したものである。この第4図か
らも分る様、上記の構成であると、分岐命令と分岐先命
令の間に3ステツプのペナルティが発生してしまう。
上記の様に分岐命令が発生すると分岐先命令がすでに命
令先取りキュメモリ2に入っていても分岐先命令の命令
フェッチを行なう必要があり、命令の流れは第4図の様
になる。
〔発明が解決しようとする課題〕
従来の命令取り出し方式は、以上のように構成されてい
るので、分岐命令が検出されると命令フェッチを必ずや
り直す必要があり、たとえ分岐先の命令が、すでに命令
先取りキュメモリに入っている場合でも、再度フェッチ
しなおす必要があった。
この発明は、上記のような問題点を解消するためになさ
れたもので、すでに分岐先の命令が、命令先取りキュメ
モリに入っている場合、命令フェッチをやり直さずに命
令分岐時のパイプラインの流れの滞りを減少させ、処理
速度の向上を図れる命令取り出し方式を得ることを目的
とする。
〔課題を解決するための手段〕
この発明に係る命令取り出し方式においては、命令先取
りキュメモリ2に格納されている命令のアドレスを格納
する命令先取りキュアドレスメモリ3と、このキュアド
レスメモリ3に格納されたアドレスとアドレス計算手段
10で計算された分岐先アドレスとを比較する比較手段
11とを備え、この比較手段11で比較された結果が上
記両者の一致を示している場合、該比較結果により命令
先取りキュ選択取り出し制御手段9は命令先取りキュ選
択取り出し手段4を制御し、命令先取りキュメモリ2か
ら分岐先命令を取り出すように制御することを特徴とす
るものである。
〔作用〕
命令先取りキュアドレスメモリ3は命令先取りキュメモ
リ2に格納されている命令のアドレスを格納する。比較
手段11は命令先取りキュアドレスメモリ3に格納され
たアドレスとアドレス計算手段10で計算された分岐先
アドレスとを比較する。命令先取りキュ選択取り出し制
御手段9は、比較手段11が上記両者の一致を示す比較
結果を出力すると該比較結果により命令先取りキュ選択
取り出し手段4を制御し、命令先取りキュメモリ2から
分岐先命令を取り出すように制御する。
〔実施例〕
第1図はこの発明の一実施例に係る命令取り出し方式を
用いたデータ処理装置に備えられる命令取り出し装置の
構成を示すブロック図である。第1図において、第3図
に示す構成要素に対応するものには同一の符号を付し、
その説明を省略する。
第1図において、3は命令先取りキュメモリ2に格納さ
れている命令のアドレスを格納する命令先取リキュアド
レスメモリ、11は命令先取りキュアドレスメモリ3に
格納されたアドレスとアドレス計算手段10で計算され
た分岐先アドレスとを比較する比較手段である。
次にこの実施例の動作について説明する。
最初、命令キャッシュメモリ1から、分岐命令およびそ
れに前後して分岐先となる命令が、命令先取りキュメモ
リ2に取り込まれる。このとき、同時にこれらの命令の
格納されているアドレスが、命令先取りキュメモリ2に
1対1で対応している命令先取りアドレスメモリ3に取
り込まれる。分岐命令はその後、命令先取りキュ選択取
り出し手段4により取り出され、アドレス計算ステージ
レジスタ5に取り込まれる。その後この分岐命令は、ア
ドレス計算手段10にて分岐先のアドレスが計算される
。このアドレス計算の結果は、比較手段11において次
のサイクルで命令先取りキュアドレスメモリ3の内容と
比較される。今、分岐先命令が、この時点で命令先取り
キュメモリ2に取り込まれている場合を想定しているの
で、この比較結果は一致していることを示す。これによ
り、命令先取りキュ選択取り出し制御手段9は命令先取
りキュメモリ2から分岐先命令を取り出す様に制御され
る。したがって、この次のサイクルで命令デコードステ
ージを開始することが出来る。
第2図は、上記の分岐命令と分岐先命令の流れを示した
ものである。第2図中のraJは、分岐先命令を示して
いる。第2図の横軸は時間を示し、各1マスが1マシン
サイクルとなっている。一方線軸は各々の命令が、どの
ステージの処理をしているかを示している。第2図では
第4図と比較して、分岐先命令が1サイクル早く実行さ
れていることが分る。
〔発明の効果〕
以上のように本発明によれば、命令先取りキュメモリに
格納されている命令のアドレスを格納する命令先取りキ
ュアドレスメモリと、このキュアドレスメモリに格納さ
れたアドレスとアドレス計算手段で計算された分岐先ア
ドレスとを比較する比較手段とを設け、この比較手段で
比較された比較結果が両者の一致を示している場合、該
比較結果により命令先取りキュメモリから分岐先命令を
取り出すようにしたので、すでに分岐先の命令が命令先
取りキュメモリに入っている場合、命令フェッチをやり
直す必要がなく、これにより命令分岐時のバイブライン
の流れの滞りが減少し、したがって処理速度が向上する
という効果が得られる。
【図面の簡単な説明】
第1図はこの発明の一実施例に係る命令取り出し方式を
用いたデータ処理装置に備えられる命令取り出し装置の
構成を示すブロック図、第2図はこの実施例による命令
の流れを説明するための図、第3図は従来の命令取り出
し方式を用いたデータ処理装置に備えられる命令取り出
し装置の構成を示すブロック図、第4図はこの従来例に
よる命令の流れを説明するための図である。 1・・・・・・命令キャッシュメモリ、2・・・・・・
命令先取りキュメモリ、3・・・・・・命令先取りキュ
アドレスメモリ、4・・・・・・命令先取りキ二選択取
り出し手段、5・・・・・・アドレス計算ステージレジ
スタ、9・・・・・・命令先取りキ二選択取り出し制御
手段、10・・・・・・アドレス計算手段、11・・・
・・・比較手段。

Claims (1)

    【特許請求の範囲】
  1. 命令を格納する命令キャッシュメモリと、この命令キャ
    ッシュメモリから取り出した命令を一時的に格納する命
    令先取りキュメモリと、この命令先取りキュメモリに格
    納されている命令ストリームの任意の場所から命令を取
    り出す命令先取りキュ選択取り出し手段と、この命令先
    取りキュ選択取り出し手段を制御する命令先取りキュ選
    択取り出し制御手段と、上記命令先取りキュ選択取り出
    し手段から取り出された命令の分岐先アドレスを計算す
    るアドレス計算手段とを備えたデータ処理装置において
    、上記命令先取りキュメモリに格納されている命令のア
    ドレスを格納する命令先取りキュアドレスメモリと、こ
    のキュアドレスメモリに格納されたアドレスと上記アド
    レス計算手段で計算された分岐先アドレスとを比較する
    比較手段とを設け、この比較手段で比較された比較結果
    が上記両者の一致を示している場合、上記命令先取りキ
    ュ選択取り出し制御手段は上記命令先取りキュ選択取り
    出し手段を制御し、上記命令先取りキュメモリから分岐
    先命令を取り出すように制御することを特徴とする命令
    取出し方式。
JP6484390A 1990-03-15 1990-03-15 命令取出し方式 Pending JPH03265931A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6484390A JPH03265931A (ja) 1990-03-15 1990-03-15 命令取出し方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6484390A JPH03265931A (ja) 1990-03-15 1990-03-15 命令取出し方式

Publications (1)

Publication Number Publication Date
JPH03265931A true JPH03265931A (ja) 1991-11-27

Family

ID=13269913

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6484390A Pending JPH03265931A (ja) 1990-03-15 1990-03-15 命令取出し方式

Country Status (1)

Country Link
JP (1) JPH03265931A (ja)

Similar Documents

Publication Publication Date Title
JPH02287626A (ja) パイプライン方式の分岐命令制御装置
JPH04321130A (ja) 分岐予測装置
JPH03265931A (ja) 命令取出し方式
JPS5991551A (ja) 分岐先アドレス予測を行なう命令先取り装置
JP2508021B2 (ja) デ−タ処理装置
JP2591325B2 (ja) 分岐制御装置
JP2545594B2 (ja) オペランドデータ先取り方式
JPH04213727A (ja) 情報処理装置
JPH0774992B2 (ja) データ処理装置
JPH0991139A (ja) 情報処理装置
JPH0248733A (ja) 情報処理装置
JPS63195736A (ja) パイプライン制御のための分岐命令処理装置
JPH01271842A (ja) 情報処理装置
JPH06314196A (ja) 情報処理方法および装置
JPH0769800B2 (ja) データ処理装置
JPS6047618B2 (ja) 情報処理装置
JPH05127897A (ja) 分岐予測制御装置及び制御方法
JPS6395539A (ja) パイプライン処理方式
JPS6344244A (ja) 情報処理装置
JPH06168120A (ja) 命令先取り装置
JPS6295636A (ja) 先取り制御処理装置
JPS63221428A (ja) デ−タ処理装置
JPH05233284A (ja) 命令先取り方式
JPH0342721A (ja) 情報処理装置
JPH027128A (ja) 情報処理装置