JPH07191845A - 即値データ転送装置 - Google Patents

即値データ転送装置

Info

Publication number
JPH07191845A
JPH07191845A JP5330107A JP33010793A JPH07191845A JP H07191845 A JPH07191845 A JP H07191845A JP 5330107 A JP5330107 A JP 5330107A JP 33010793 A JP33010793 A JP 33010793A JP H07191845 A JPH07191845 A JP H07191845A
Authority
JP
Japan
Prior art keywords
immediate data
instruction
data transfer
address
immediate
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.)
Withdrawn
Application number
JP5330107A
Other languages
English (en)
Inventor
Shunsuke Kamijo
俊介 上條
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
Original Assignee
Fujitsu 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 filed Critical Fujitsu Ltd
Priority to JP5330107A priority Critical patent/JPH07191845A/ja
Publication of JPH07191845A publication Critical patent/JPH07191845A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 本発明はパイプライン計算機における即値
データの転送に関し、パイプラインを乱すことなく即値
データ転送命令を処理する即値データ転送装置を提供す
ることを目的とする。 【構成】 本発明の即値データ転送装置10は、デコ
ード手段11、命令アドレス生成手段12、即値データ
アドレス生成手段13、格納手段14を有する。デコー
ド手段11は即値データ転送命令をデコードして、分岐
のためのプログラムカウンタ更新の相対値を命令アドレ
ス生成手段12に出力し、即値データアドレスの相対値
を即値データアドレス生成手段13に出力する。命令ア
ドレス生成手段12は即値データ転送命令から分岐する
分岐先の命令アドレスを生成し、即値データアドレス生
成手段13は即値データのアドレスを生成する。即値デ
ータ転送命令の実行により分岐先命令へ分岐すると共
に、即値データを格納手段14から実行手段15に転送
する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はパイプライン方式で命令
を解釈、実行する計算機に係り、さらに詳しくは即値デ
ータ転送命令を実行する即値データ転送装置に関する。
【0002】
【従来の技術】今日の情報処理装置には、パイプライン
方式でメモリに格納された命令コードをフェッチし、解
釈、実行するパイプライン計算機が多く採用されてい
る。理想的なパイプライン計算機の中央処理装置(CP
U)は、1命令あたり1CPUサイクルで処理すること
ができ、パイプライン方式は処理の高速化に大きな効果
を持つ。
【0003】ところが実際には、種々の要因により、1
命令あたり1CPUサイクルで実行処理することができ
ず、パイプラインの動作が乱れることがある。例えばメ
モリから中央処理装置に転送する命令バス幅より長い命
令長を持つ命令をフェッチする場合は、2サイクル以上
を要する。この間、後続命令のフェッチが待たされ、パ
イプラインの乱れを生ずる。
【0004】またある命令がメモリからのデータ転送を
指示し、これに後続する命令が転送されたそのデータを
用いて実行される場合、中央処理装置は先行するある命
令のメモリアクセスが終了するまで、後続命令を実行で
きない。つまり先行命令のメモリアクセスステージの
間、後続命令の実行が待たされ、パイプラインの乱れを
生ずる。このような現象はデータハザードと呼ばれる。
【0005】こうしたパイプラインの乱れの要因を取り
除き、1命令あたりのサイクル数(CPI)を限りなく
1に近づけて、パイプライン計算機単体の性能を向上さ
せることが大きな課題である。その際に少ないハードウ
ェアと単純な制御により、パイプラインの乱れの要因を
取り除くことが要望される。
【0006】命令コード内に含まれているデータは即値
データと呼ばれ、即値データをレジスタ等に転送する操
作を指示する命令は即値データ転送命令と呼ばれる。こ
の即値データ転送命令を実行するには、命令以外に即値
データを中央処理装置に読み込まなければならないた
め、1サイクルで処理することが難しく、パイプライン
計算機の性能低下を招いている。
【0007】この即値データ転送命令を扱う従来の方法
には、可変長命令の方法とプログラムカウンタ相対アド
レッシング法の2つがある。可変長命令の方法は、即値
データを即値データ転送命令の中に含めてメモリ内に格
納し、1命令として命令バスから中央処理装置に読み込
む方法である。デコーダが読み込んだ即値データ転送命
令をデコードする時に、即値データが含まれていること
を認識し、バイパス回路を介してこの即値データ部分を
データパス系に転送する。
【0008】プログラムカウンタ相対アドレッシング法
は、即値データ転送命令と即値データを分離してメモリ
内に格納し、即値データ転送命令のプログラムカウンタ
値に相対アドレスを加算して、即値データの格納場所を
求める方法である。この方法では、まず即値データ転送
命令を命令バスを介してフェッチし、そのデコードサイ
クルで即値データの格納場所を示す相対アドレスを得
る。次にプログラムカウンタ値に得られた相対アドレス
を加算して即値データのアドレスを求め、メモリアクセ
スステージで、そのアドレスからデータバスを介して即
値データをロードし、データパス系に転送する。
【0009】
【発明が解決しようとする課題】しかしながら上述のよ
うな従来の即値データ転送方法には次のような問題があ
る。
【0010】可変長命令の方法の場合、即値データ転送
命令が即値データそのものを直接含むため、その命令長
がしばしば命令バスの転送幅を越えることがある。この
ときには即値データ転送命令を1回でフェッチすること
ができず、2回以上のフェッチ動作が必要である。この
ため即値データ転送命令のフェッチステージは複数サイ
クルとなり、この間、後続命令のフェッチが待たされ、
パイプライン動作が乱れる。
【0011】実際には計算機のハードウェア上の制限か
ら、命令バスの最大転送幅は制約を受けるため、1回で
フェッチできる命令の長さは限られ、即値データ転送命
令は複数サイクル命令となることがほとんどである。
【0012】またこの方法では、命令バスから取り込ん
だ即値データを、デコーダから実行回路へ転送する必要
があり、そのためのバイパス回路がハードウェアを増大
させる。
【0013】これに対して、プログラムカウンタ相対ア
ドレッシング法の場合は、即値データを命令としてでは
なく、データとしてメモリからデータバスを介して直接
中央処理装置の実行回路にロードするので、バイパス用
のハードウェアを付加する必要がない。
【0014】しかしこの方法ではメモリアクセスにより
即値データをロードするので、即値データ転送命令の実
行ステージの後のメモリアクセスステージが終了しない
と、実行回路は即値データを得ることが出来ない。した
がって、これに後続する命令がその即値データを計算な
どに使用する場合は、即値データ転送命令のメモリアク
セスの間、後続命令の実行が遅延し、データハザードが
生じる。つまりプログラムカウンタ相対アドレッシング
法の即値データ転送命令もまた複数サイクル命令とな
る。
【0015】また相対アドレスを指定するビット数には
限りがあるため、即値データは即値データ転送命令から
限られた相対アドレス値だけ離れた場所に格納され、そ
の格納場所は一般にプログラム内になる。例えば相対ア
ドレスが8ビットで指定される場合は、最大相対アドレ
ス値は256である。プログラム内に格納された即値デ
ータが命令として認識されないようにするためには、即
値データはプログラム内に存在する分岐命令の直後に置
く必要がある。
【0016】ところが分岐命令の出現頻度が小さく、最
大相対アドレス値内で指定できる範囲に分岐命令が存在
しないときは、即値データの直前に新たに分岐命令を挿
入して、即値データをジャンプさせなければならない。
このように新たな命令を付加することは、パイプライン
動作の速度とコード効率を低下させる。
【0017】本発明は、パイプライン方式の計算機にお
いて、パイプラインの乱れを生じることなく、即値デー
タを実行回路に転送する即値データ転送装置を提供する
ことを目的とする。
【0018】本発明はまた、ハードウェア量を増大させ
ることなく、即値データを実行回路に転送する即値デー
タ転送装置を提供することを目的とする。
【0019】
【課題を解決するための手段】図1は本発明の原理図で
ある。本発明は、即値データを使用する実行手段15を
有し、即値データと即値データの転送を指示する即値デ
ータ転送命令とから成る命令をパイプライン方式で処理
する情報処理装置(不図示)における即値データ転送装
置である。
【0020】本発明の即値データ転送装置10は、デコ
ード手段11、命令アドレス生成手段12、即値データ
アドレス生成手段13、格納手段14を備える。格納手
段14は命令を格納し、デコード手段11は格納手段1
4からフェッチした命令をデコードする。
【0021】格納手段14は即値データを有する上記命
令を格納する時、即値データ転送命令に対して予め決め
られた相対位置に即値データを配置しておく。デコード
手段11は、即値データ転送命令をデコードした時に、
即値データ転送命令から分岐する分岐先命令の命令アド
レスを指定する第1の相対値を、命令アドレス生成手段
12に出力し、即値データアドレスを指定する第2の相
対値を即値データアドレス生成手段13に出力する。即
値データアドレスは、格納手段14内において即値デー
タの格納位置を示すアドレスである。
【0022】命令アドレス生成手段12は、格納手段1
4からフェッチする命令の命令アドレスを生成し、格納
手段14と即値データアドレス生成手段13に出力す
る。また命令アドレス生成手段12は、既に生成した命
令アドレスと第1の相対値とを用いて分岐先命令の命令
アドレスを生成し、生成した分岐先命令の命令アドレス
を格納手段14に出力する。これに基づき情報処理装置
は分岐先命令を格納手段14からフェッチする。
【0023】即値データアドレス生成手段13は、命令
アドレス生成手段12から与えられる上記既に生成され
た命令アドレスと第2の相対値とを用いて即値データア
ドレスを生成し、生成した即値データアドレスをパイプ
ラインのメモリアクセス段で格納手段14に出力する。
これに基づき即値データ転送装置10は格納手段14に
格納された即値データを実行手段15に転送する。
【0024】
【作用】格納手段14が即値データ転送命令に対して予
め決められた相対位置に即値データを格納するため、即
値データを格納する場所を探す必要がない。
【0025】デコード手段11が即値データ転送命令を
デコードした時に、第1の相対値を出力して即値データ
転送命令の分岐先の命令を指定し、命令アドレス生成手
段12が第1の相対値を用いて分岐先命令の命令アドレ
スを生成するため、即値データ転送命令が分岐命令を兼
ねることになる。このため即値データを即値データ転送
命令の後に格納することができる。
【0026】デコード手段11が即値データ転送命令を
デコードした時に、第2の相対値を出力して即値データ
の格納位置を指定し、即値データはメモリアクセスによ
り転送されるため、即値データ転送命令と即値データと
を互いに離れた位置に格納することができる。
【0027】命令アドレス生成手段12が、命令アドレ
スを即値データアドレス生成手段13に出力するため、
即値データアドレス生成手段13は与えられた命令アド
レスと第2の相対値を用いて、即値データアドレスを生
成することができる。
【0028】即値データアドレス生成手段13から出力
される即値データアドレスに基づき、格納手段14から
直接実行手段15に即値データを転送できる。
【0029】
【実施例】以下、図面を参照しながら、本発明の実施例
を説明する。図2は本発明の一実施例の即値データ転送
装置の構成図である。
【0030】図2の即値データ転送装置はパイプライン
方式の情報処理装置内に設けられ、命令デコーダ21、
加算器22、24、プログラムカウンタ23、メモリ2
5を備える。命令デコーダ21は図1のデコード手段1
1に相当し、加算器22とプログラムカウンタ23は命
令アドレス生成手段12に相当する。加算器24は即値
データアドレス生成手段13に相当し、メモリ25は格
納手段14に相当する。また実行回路26は実行手段1
5に相当する。
【0031】プログラムカウンタ23が命令アドレスを
出力すると、これに基づいてメモリ25から命令バス2
7を介して命令コードがフェッチされる。命令デコーダ
21は、フェッチされた命令コードをデコードし、その
結果得られるプログラムカウンタ更新の相対値を加算器
22に与える。
【0032】加算器22はプログラムカウンタ23の命
令アドレスに、プログラムカウンタ更新の相対値を加え
て、加算した結果をプログラムカウンタ23に入力す
る。入力された値は次の命令の命令アドレスとして、プ
ログラムカウンタ23から出力される。
【0033】デコードされた命令は実行回路26で実行
されるが、メモリアクセスがある場合は、メモリ25か
らデータバス28を介してデータをロードし、実行回路
26内のレジスタに格納する。
【0034】命令デコーダ21は、フェッチされた命令
が即値データ転送命令であることを認識すると、対応す
るプログラムカウンタ更新の相対値を加算器22に与え
ると共に、即値データアドレスの相対値を加算器24に
与える。プログラムカウンタ更新の相対値は分岐先の命
令アドレスを指定する相対アドレスであり、第1の相対
値に相当する。即値データアドレスの相対値は即値デー
タの格納場所を指定する相対アドレスであり、第2の相
対値に相当する。これらの相対値は即値データの長さや
遅延分岐の有無により異なる。
【0035】加算器22は、即値データ転送命令の命令
アドレスにプログラムカウンタ更新の相対値を加え、分
岐先の命令アドレスとしてプログラムカウンタ23に出
力する。プログラムカウンタ23はこの分岐先アドレス
を命令アドレスとして出力するので、即値データ転送命
令から分岐先の後続命令へ無条件に分岐する。
【0036】加算器24は、即値データ転送命令の命令
アドレスに即値データアドレスの相対値を加え、メモリ
アクセスステージで即値データアドレスとしてメモリ2
5に出力する。このとき出力された即値データアドレス
に格納されている即値データがデータバス28を介して
読み出され、実行回路26に転送される。
【0037】命令デコーダ21としては、即値データ転
送命令に特有の処理を行うため専用のものを用いるが、
加算器、プログラムカウンタ等は既存のハードウェアを
使用する。
【0038】図3は図2の実施例で用いられる、即値デ
ータを含むプログラム文の一例を示す。図3のLOAD
は即値データの転送操作を表しており、Riは転送先レ
ジスタの識別子、333は転送される即値データを表
す。転送先レジスタの識別子としてはレジスタアドレス
等が用いられる。この即値データ転送命令を翻訳する
際、即値データの長さに応じて、プログラムカウンタ更
新の相対値と即値データアドレスの相対値が設定され
る。
【0039】以下図4〜6を参照しながら、図2の即値
データ転送装置の具体的な適用例として、第1の実施例
を説明する。図4はメモリ25内における第1の実施例
のプログラムの命令配置を示す。
【0040】図4のプログラムは図3のようなプログラ
ム文を有するソースプログラムを翻訳して得られるプロ
グラムの一部であり、即値データ転送命令31と即値デ
ータ32を含んでいる。第1の実施例では即値データ3
2を即値データ転送命令31の直後に置く。分岐先命令
33は即値データ転送命令31から分岐する先の命令で
あり、命令Bは分岐先命令33の後続命令である。
【0041】また第1の実施例では、1命令長、即値デ
ータ長、命令バスおよびデータバスの転送幅が共に基本
命令長に等しく、1ワードの半分とする。また命令コー
ドとデータの中央処理装置への転送はハーフワード毎に
1クロックサイクルで行うものとする。
【0042】図5は即値データ転送装置による図4のプ
ログラムの処理を示す図である。即値データ転送装置
は、命令フェッチ(IF)、デコード(ID)、実行
(EX)、メモリアクセス(MA)、レジスタ書き込み
(WB)の5段階パイプライン方式で処理を行い、即値
データ転送命令31による分岐時に遅延分岐を行うもの
とする。
【0043】図6は図5のパイプライン処理を詳細に示
す信号タイミングチャートである。ここではKBクロッ
クとKAクロックの2相クロック方式により、C1、C
2等のCPUサイクルが定義されるものとする。各CP
Uサイクルの前半はKBクロックの立ち上がりで始ま
り、後半はKAクロックの立ち上がりで始まる。KAク
ロックは次命令アドレスの計算に用いられる。
【0044】まずサイクルC1では命令アドレス、すな
わちプログラムカウンタ値PCはN−1であり、対応す
る命令A(図4では不図示)をフェッチする。サイクル
C1の後半で加算器22は命令アドレスN−1に1を加
算して、次にフェッチする命令のアドレスとしてNを出
力し、PCをインクリメントする。
【0045】次にサイクルC2で命令Aをデコードし、
次の即値データ転送命令31をフェッチする。またPC
=N+1とする。サイクルC3で命令Aを実行し、即値
データ転送命令31をデコードする。また、遅延分岐の
ため、即値データ32を命令としてフェッチする。この
とき、命令デコーダ21はプログラムカウンタ更新の相
対値として1を、即値データアドレスの相対値として0
を、それぞれ加算器22、24に出力する。この結果サ
イクルC3の前半で即値データアドレスとしてN+1を
得、後半で分岐先アドレスとしてPC=N+2を得る。
【0046】サイクルC4は、命令Aのメモリアクセス
ステージ、即値データ転送命令31の実行ステージに対
応する。ここでは即値データ転送命令31は分岐命令の
役割を果たし、分岐先命令33がフェッチされる。また
命令デコーダ21は即値データ32を命令として認識せ
ず、デコードをキャンセルする。PC=N+3となる。
【0047】サイクルC5は、命令Aの書き込みステー
ジ、即値データ転送命令31のメモリアクセスステージ
に対応する。サイクルC5で、加算器24は即値データ
アドレスN+1をメモリ25に出力し、データバス28
を介して即値データ32を実行回路26のレジスタにロ
ードする。また命令デコーダ21は分岐先命令33をデ
コードし、PC=N+3に対応する命令Bがフェッチさ
れる。サイクルC4で即値データ32のデコードがキャ
ンセルされたので、命令実行ステージはウェイト状態と
なる。
【0048】サイクルC6は、即値データ転送命令31
の書き込みステージ、分岐先命令33の実行ステージに
対応する。分岐先命令33の実行において、即値データ
32が演算等に必要な場合は、ロードしたレジスタから
取り出して用いる。命令デコーダ21は命令Bをデコー
ドする。メモリアクセスステージはウェイト状態とな
る。
【0049】サイクルC7は、分岐先命令33のメモリ
アクセスステージ、命令Bの実行ステージに対応する。
サイクルC8は、分岐先命令33の書き込みステージ、
命令Bのメモリアクセスステージに対応する。
【0050】サイクルC9は、命令Bの書き込みステー
ジに対応する。図5に示されるように、即値データ転送
命令31は即値データ32をメモリ25から実行回路2
6に転送する命令であると共に、分岐先命令33へ分岐
する分岐命令も兼ねている。
【0051】図4のように即値データ転送命令31と即
値データ32を別々にメモリに格納すれば、即値データ
転送命令31を1サイクルでフェッチできる。また即値
データ32はデータバス28を介してロードされるの
で、デコーダから実行回路へのバイパス用回路が不要で
ある。
【0052】また即値データ転送命令の後続命令である
分岐先命令は、余分な待ち時間なしで、即値データを実
行に用いることができる。次に図7〜9を参照しながら
第2の実施例を説明する。
【0053】図7はメモリ25内における第2の実施例
のプログラムの命令配置を示す。第2の実施例の命令配
置では、図4と異なり、即値データ転送命令34と即値
データ36の間に遅延スロット35を設けている。プロ
グラマまたはコンパイラが遅延スロットの最適化を行
い、即値データ36を実行時に必要としない命令を、こ
の遅延スロット35に挿入しておく。分岐先命令37は
即値データ転送命令34から分岐する先の命令である。
【0054】第2の実施例における命令長、即値データ
長、命令バスおよびデータバスの転送幅、基本命令長の
関係は第1の実施例と同様である。また命令コードとデ
ータの中央処理装置への転送はハーフワード毎に1クロ
ックサイクルで行うものとする。
【0055】図8は即値データ転送装置による図7のプ
ログラムの処理を示す図であり、図9は図8のパイプラ
イン処理を詳細に示す信号タイミングチャートである。
図8、9のパイプラインは、第1の実施例と同様の5段
階から成り、2相クロック方式により処理されるものと
する。また即値データ転送命令34による分岐時に遅延
分岐を行う。
【0056】まずサイクルC1ではPCはN−1であ
り、対応する命令C(図7では不図示)をフェッチし、
PC=Nとする。次にサイクルC2で命令Cをデコード
し、次の即値データ転送命令34をフェッチする。また
PC=N+1とする。
【0057】サイクルC3で命令Cを実行し、即値デー
タ転送命令34をデコードする。また、遅延分岐のた
め、遅延スロット35をフェッチする。このとき、命令
デコーダ21はプログラムカウンタ更新の相対値として
2を、即値データアドレスの相対値として1を、それぞ
れ加算器22、24に出力する。この結果サイクルC3
の前半で即値データアドレスとしてN+2を得、後半で
分岐先アドレスとしてPC=N+3を得る。
【0058】サイクルC4は、命令Cのメモリアクセス
ステージ、即値データ転送命令34の実行ステージに対
応する。ここで即値データ転送命令34は分岐命令の役
割を果たし、分岐先命令37がフェッチされる。また命
令デコーダ21は遅延スロット35をデコードし、PC
=N+4となる。
【0059】サイクルC5は、命令Cの書き込みステー
ジ、即値データ転送命令34のメモリアクセスステー
ジ、遅延スロット35の実行ステージに対応する。サイ
クルC5で、加算器24は即値データアドレスN+2を
メモリ25に出力し、データバス28を介して即値デー
タ36を実行回路26のレジスタにロードする。また命
令デコーダ21は分岐先命令37をデコードし、PC=
N+4に対応する命令D(図7では不図示)がフェッチ
される。
【0060】サイクルC6は、即値データ転送命令34
の書き込みステージ、遅延スロット35のメモリアクセ
スステージ、分岐先命令37の実行ステージに対応す
る。分岐先命令37の実行において、即値データ36が
演算等に必要な場合は、ロードしたレジスタから取り出
して用いる。命令デコーダ21は命令Dをデコードす
る。
【0061】サイクルC7は、遅延スロット35の書き
込みステージ、分岐先命令37のメモリアクセスステー
ジ、命令Dの実行ステージに対応する。サイクルC8
は、分岐先命令37の書き込みステージ、命令Dのメモ
リアクセスステージに対応する。
【0062】サイクルC9は、命令Dの書き込みステー
ジに対応する。図6と図7を比較すると、図7では命令
のデコード、実行、メモリアクセス等の各ステージに、
図6のようなウェイト状態がないことがわかる。例え
ば、図6のサイクルC4ではデコードステージがウェイ
ト状態となっているが、図7のサイクルC4では遅延ス
ロット35がデコードされている。また図6のサイクル
C5の実行ステージおよびサイクルC6のメモリアクセ
スステージもウェイト状態となっているが、図7のサイ
クルC5、C6は遅延スロット35のそれぞれ実行ステ
ージ、メモリアクセスステージに対応している。
【0063】このように第2の実施例においては、遅延
スロットの最適化により、第1の実施例で十分に活用さ
れていなかった各ステージを最大限に利用し、即値デー
タ転送命令を事実上1サイクルで処理している。
【0064】また即値データ転送命令が分岐命令を兼ね
ているため、遅延スロットをフェッチした後には分岐先
命令をフェッチし、即値データが命令としてフェッチさ
れることはない。
【0065】さらに即値データがフェッチされないよう
にするため、既存の分岐命令を探したり、新たに分岐命
令を生成して、その直後に即値データを格納するといっ
た手間を必要としない。
【0066】次に図10〜12を参照しながら第3の実
施例を説明する。図10はメモリ25内における第3の
実施例のプログラムの命令配置を示す。第3の実施例で
は、即値データが基本命令長の2倍の場合を扱う。この
即値データは上位ビット40と下位ビット41とに分け
てメモリ25に格納される。図10では上位ビット40
と下位ビット41が前後する2ワードに股がって格納さ
れているので、これらをメモリ25からロードするに
は、2サイクルのメモリアクセスを要する。即値データ
の上位ビットは第1の部分に相当し、即値データの下位
ビットは第2の部分に相当する。
【0067】即値データ転送命令38と遅延スロット3
9は第2の実施例と同様である。第3の実施例において
も遅延スロットの最適化を行い、即値データ40、41
を実行時に必要としない命令を、この遅延スロット39
に挿入しておく。分岐先命令42は即値データ転送命令
38から分岐する先の命令である。
【0068】第3の実施例における命令バスおよびデー
タバスの転送幅は、第1、第2の実施例と異なり、基本
命令長の2倍で、命令コードとデータの中央処理装置へ
の転送は1ワード毎に1クロックサイクルで行うものと
する。
【0069】図11は即値データ転送装置による図10
のプログラムの処理を示す図であり、図12は図11の
パイプライン処理を詳細に示す信号タイミングチャート
である。
【0070】図11、12のパイプラインは、第2の実
施例と同様の5段階から成り、2相クロック方式により
処理されるものとする。また偶数と奇数の命令アドレス
に対応する2つの命令を同時にフェッチし、即値データ
転送命令38による分岐時には遅延分岐を行うものとす
る。
【0071】まずサイクルC1ではPCは2Nであり、
対応する命令E(図10では不図示)と即値データ転送
命令38をフェッチし、PCを更新してPC=2N+2
とする。
【0072】次にサイクルC2で命令Eをデコードす
る。この間即値データ転送命令38の処理は保留され
る。サイクルC3で命令Eを実行し、即値データ転送命
令38をデコードする。また、遅延分岐のため、遅延ス
ロット39と即値データの上位ビット40をフェッチす
る。このとき、命令デコーダ21はPC=2N+3とP
C=2N+4に即値データが格納されていることを認識
するが、メモリ25からのデータロードは偶数アドレス
に基づいて行うので、即値データアドレスの相対値とし
て0を加算器24に出力する。またプログラムカウンタ
更新の相対値として2を加算器22に出力する。この結
果サイクルC3の前半で即値データアドレスとして2N
+2を得、後半で分岐先アドレスとしてPC=2N+4
を得る。
【0073】サイクルC4は、命令Eのメモリアクセス
ステージ、即値データ転送命令38の実行ステージに対
応する。ここで即値データ転送命令38は分岐命令の役
割を果たし、即値データの下位ビット41と分岐先命令
42がフェッチされる。また命令デコーダ21は遅延ス
ロット39をデコードし、即値データ40の処理をキャ
ンセルする。PC=2N+6となる。
【0074】サイクルC5は、命令Eの書き込みステー
ジ、即値データ転送命令38のメモリアクセスステー
ジ、遅延スロット39の実行ステージに対応する。サイ
クルC5で、加算器24は即値データアドレス2N+2
をメモリ25に出力し、データバス28を介して遅延ス
ロット39と即値データ40を実行回路26のレジスタ
にロードする。遅延スロット39はデータとして用いら
れることはない。また命令デコーダ21は即値データ4
1の処理をキャンセルし、分岐先命令42をデコードす
る。
【0075】第3の実施例では、サイクルC6は依然と
して即値データ転送命令38のメモリアクセスステージ
なので、命令のフェッチ、デコード、実行の各ステージ
はウェイト状態となる。また遅延スロット39のメモリ
アクセスもこの間ウェイト状態となる。加算器24は即
値データアドレスを2N+4に更新してメモリ25に出
力し、データバス28を介して即値データ41と分岐先
命令42を実行回路26のレジスタにロードする。分岐
先命令42はデータとして用いられることはない。
【0076】サイクルC7は、即値データ転送命令38
の書き込みステージ、遅延スロット39のメモリアクセ
スステージ、分岐先命令42の実行ステージに対応す
る。分岐先命令42の実行において、即値データ40、
41が演算等に必要な場合は、ロードしたレジスタから
取り出して用いる。
【0077】サイクルC8は、遅延スロット39の書き
込みステージ、分岐先命令42のメモリアクセスステー
ジに対応する。サイクルC9は、分岐先命令42の書き
込みステージに対応する。
【0078】このように即値データが基本命令長の2倍
である場合でも、遅延スロットを有効に用いることがで
きる。尚、図10はミスアラインした即値データ、つま
り即値データが2ワードに分散して格納された場合を示
しているが、即値データの上位ビットと下位ビットが1
ワードに格納される場合もあり得る。例えばソースプロ
グラムの翻訳の結果、即値データの上位ビットが偶数ア
ドレス2Mに、下位ビットが次の奇数アドレス2M+1
に配置されたとすると、即値データ転送命令のメモリア
クセスステージは1サイクルとなる。この場合は即値デ
ータアドレスを2Mとして、1回で上位ビットと下位ビ
ットをロードすることができる。
【0079】次に図13〜18を参照しながら第4の実
施例を説明する。第4の実施例においても、第3の実施
例と同様に、即値データが基本命令長の2倍の長さを持
ち、命令バスおよびデータバスの転送幅は基本命令長の
2倍で、命令コードとデータの中央処理装置への転送は
1ワード毎に1クロックサイクルで行うものとする。ま
た遅延スロットの最適化を行い、即値データを実行時に
必要としない命令を、遅延スロットに挿入しておく。
【0080】また第4の実施例では、即値データのミス
アラインを防ぐために、ソースプログラムの翻訳時に、
即値データの第1の部分である上位ビットを補充データ
として挿入する。
【0081】図13はメモリ25内における第4の実施
例の第1の命令配置を示す。即値データ転送命令43、
遅延スロット44、即値データの上位ビット45、即値
データの下位ビット46の配置は第3の実施例図と同様
である。第4の実施例ではさらに即値データの上位ビッ
ト47が補充データとして挿入されている。図13では
即値データ45と即値データ46はミスアラインしてい
るが、即値データ46と即値データ47が1ワードに収
まっているので、1回のメモリアクセスでこれらをメモ
リ25からロードすることができる。
【0082】分岐先命令48は即値データ転送命令43
から分岐する先の命令である。図14は即値データ転送
装置による図13のプログラムの処理を示す図であり、
図15は図14のパイプライン処理を詳細に示す信号タ
イミングチャートである。
【0083】図14、15のパイプラインは、第3の実
施例と同様の5段階から成り、2相クロック方式により
処理されるものとする。また偶数と奇数の命令アドレス
に対応する2つの命令を同時にフェッチし、即値データ
転送命令43による分岐時には遅延分岐を行うものとす
る。
【0084】まずサイクルC1ではPCは2Nであり、
対応する命令Fと即値データ転送命令43をフェッチ
し、PCを更新してPC=2N+2とする。次にサイク
ルC2で命令Fをデコードする。この間即値データ転送
命令43の処理は保留される。
【0085】サイクルC3で命令Fを実行し、即値デー
タ転送命令43をデコードする。また、遅延分岐のた
め、遅延スロット44と即値データ45をフェッチす
る。このとき、命令デコーダ21はPC=2N+3、2
N+4、2N+5に即値データが格納されていることを
認識する。命令デコーダ21は即値データ45を無効デ
ータ、即値データ46、47を有効データと解釈し、即
値データアドレスの相対値として2を加算器24に出力
する。またプログラムカウンタ更新の相対値として4を
加算器22に出力する。この結果サイクルC3の前半で
即値データアドレスとして2N+4を得、後半で分岐先
アドレスとしてPC=2N+6を得る。
【0086】サイクルC4は、命令Fのメモリアクセス
ステージ、即値データ転送命令43の実行ステージに対
応する。ここで即値データ転送命令43は分岐命令の役
割を果たし、分岐先命令48と命令Gがフェッチされ
る。また命令デコーダ21は遅延スロット44をデコー
ドし、即値データ45の処理をキャンセルする。PC=
2N+8となる。
【0087】サイクルC5は、命令Fの書き込みステー
ジ、即値データ転送命令43のメモリアクセスステー
ジ、遅延スロット44の実行ステージに対応する。サイ
クルC5で、加算器24は即値データアドレス2N+4
をメモリ25に出力し、データバス28を介して即値デ
ータ46、47を実行回路26のレジスタにロードす
る。また命令デコーダ21は分岐先命令48をデコード
し、命令Gの処理を保留する。
【0088】サイクルC6は、即値データ転送命令43
の書き込みステージ、遅延スロット44のメモリアクセ
スステージ、分岐先命令48の実行ステージに対応す
る。分岐先命令48の実行において、即値データが演算
等に必要な場合は、ロードした即値データ46、47を
レジスタから取り出して用いる。また命令デコーダ21
は命令Gをデコードする。
【0089】サイクルC7は、遅延スロット44の書き
込みステージ、分岐先命令48のメモリアクセスステー
ジ、命令Gの実行ステージに対応する。サイクルC8
は、分岐先命令48の書き込みステージ、命令Gのメモ
リアクセスステージに対応する。
【0090】サイクルC9は、命令Gの書き込みステー
ジに対応する。図13は翻訳時に即値データ46と即値
データ47が1ワードとして格納された場合を示してい
るが、逆に即値データ45と即値データ46が1ワード
として格納され、即値データ47がミスアラインする場
合もあり得る。後者の場合の命令配置を第2の命令配置
と呼ぶことにする。
【0091】図16はメモリ25内における第4の実施
例の第2の命令配置を示す。図16では、図13と異な
り、即値データ転送命令43と遅延スロット44の次
の、即値データ45、46が1ワードに収まり、即値デ
ータ46と即値データ47はミスアラインしている。こ
の場合は即値データ45、46を有効データとしてメモ
リ25からロードする。
【0092】分岐先命令48は、図13と同様に即値デ
ータ転送命令43から分岐する先の命令である。図17
は即値データ転送装置による図16のプログラムの処理
を示す図であり、図18は図16のパイプライン処理を
詳細に示す信号タイミングチャートである。
【0093】図17、18のパイプラインは、図11、
12と同様の5段階から成り、2相クロック方式により
処理されるものとする。また偶数と奇数の命令アドレス
に対応する2つの命令を同時にフェッチし、即値データ
転送命令43の分岐時には遅延分岐を行うものとする。
【0094】まずサイクルC1ではPCは2Nであり、
対応する即値データ転送命令43と遅延スロット44を
フェッチし、PCを更新してPC=2N+2とする。次
にサイクルC2で即値データ転送命令43をデコードす
る。このとき、命令デコーダ21はPC=2N+2、2
N+3、2N+4に即値データが格納されていることを
認識する。命令デコーダ21は即値データ45、46を
有効データ、即値データ47を無効データと解釈し、即
値データアドレスの相対値として0を加算器24に出力
する。またプログラムカウンタ更新の相対値として2を
加算器22に出力する。この結果サイクルC2の前半で
即値データアドレスとして2N+2を得、後半で分岐先
アドレスとしてPC=2N+4を得る。この間遅延スロ
ット44の処理は保留される。
【0095】サイクルC3で即値データ転送命令43を
実行し、遅延スロット44をデコードする。ここで即値
データ転送命令43は分岐命令の役割を果たし、即値デ
ータ47と分岐先命令48がフェッチされる。またPC
=2N+6となる。
【0096】サイクルC4は、即値データ転送命令43
のメモリアクセスステージ、遅延スロット44の実行ス
テージに対応する。サイクルC4で、加算器24は即値
データアドレス2N+2をメモリ25に出力し、データ
バス28を介して即値データ45、46を実行回路26
のレジスタにロードする。また命令デコーダ21は即値
データ47の処理をキャンセルし、分岐先命令48をデ
コードする。
【0097】サイクルC5は、即値データ転送命令43
の書き込みステージ、遅延スロット44のメモリアクセ
スステージ、分岐先命令48の実行ステージに対応す
る。分岐先命令48の実行において、即値データが演算
等に必要な場合は、ロードした即値データ45、46を
レジスタから取り出して用いる。
【0098】サイクルC6は、遅延スロット44の書き
込みステージ、分岐先命令48のメモリアクセスステー
ジに対応する。サイクルC7は、分岐先命令48の書き
込みステージに対応する。
【0099】第4の実施例のように即値データの一部を
プログラムに補充すれば、即値データが基本命令長より
長い場合でも、即値データ転送命令のメモリアクセスス
テージは1サイクルとなり、即値データ転送命令を事実
上1サイクルで処理することができる。
【0100】第4の実施例では、即値データの上位ビッ
トを補充データとして即値データの下位ビットの後に挿
入したが、これに限らず、即値データの下位ビットを補
充データとして即値データの上位ビットの前に挿入する
ことも可能である。この場合も第4の実施例と同様の効
果が得られる。
【0101】また即値データが基本命令長の2倍に留ま
らず、より長いときは、これを3つ以上の部分データに
分けてメモリ25に格納し、即値データの最初の部分デ
ータあるいは最後の部分データを補充することにより、
最小限のメモリアクセスで即値データをロードできる。
あるいは即値データ長に対応する転送幅のデータバスを
用いれば、1回のメモリアクセスでロードできる。原理
的にはデータバスの転送幅を広げることにより、どんな
に長い即値データにも対応可能である。
【0102】以上の実施例では、即値データの転送先を
実行回路内のレジスタとしたが、これを中央演算処理装
置外部の周辺リソースの制御レジスタまたはデータレジ
スタとすることも可能である。この場合、即値データは
メモリからデータ転送パスを介して直接周辺リソースへ
転送される。
【0103】周辺リソースへ即値データを転送するとき
は、図3の転送先レジスタの識別子Riとしては、転送
先制御レジスタまたはデータレジスタの識別子を指定す
る。例えばメモリ・マップドI/O方式の場合であれ
ば、メモリアドレスを周辺リソースのレジスタに割り当
て、これを転送先レジスタの識別子として用いる。
【0104】一般に、制御レジスタへ転送する即値デー
タは周辺リソースにとっての命令であり、データレジス
タへ転送する即値データは周辺リソースにとってのオペ
ランドである。周辺リソースとしては例えば浮動小数点
演算器等がある。
【0105】図19は、即値データの転送先を浮動小数
点演算器とする第5の実施例の概要を示す図である。図
19では、メモリ52に格納された即値データは、即値
データ転送命令のメモリアクセスステージで、データバ
スを介してCPU51外部に設けられた浮動小数点演算
器53に直接転送される。このとき、浮動小数点演算器
53内のデータレジスタに対応するメモリアドレスがC
PU51からデータアドレスバスを介して浮動小数点演
算器53に出力される。
【0106】一般に浮動小数点演算器が扱う演算データ
は長いデータ長を必要とするが、これに対応してデータ
バスの転送幅を広げることにより、即値データをメモリ
52から1回で転送することが可能である。この場合も
本発明の即値データ転送装置を用いれば、即値データ転
送命令を1CPUサイクルで処理することができる。
【0107】
【発明の効果】本発明の即値データ転送装置を用いれ
ば、即値データを命令としてフェッチせずにメモリアク
セスによりロードするので、即値データ転送命令を1C
PUサイクルでフェッチすることができ、パイプライン
の乱れを軽減できる。
【0108】また即値データを命令パス系からデータパ
ス系へ転送する制御とバイパスを必要とせず、既存のハ
ードウェアで実現可能である。また遅延スロットの最適
化を行えば、データハザードによる命令処理の遅れを遅
延分岐で吸収することができ、即値データ転送命令を1
CPUサイクルで処理することができる。従って即値デ
ータ転送命令に伴うパイプラインの乱れを解消し、パイ
プライン計算機の高速化に貢献する。
【0109】さらに即値データ転送命令が分岐命令を兼
ねているため、1命令で完結しており、即値データを格
納するための新たな分岐命令を生成する必要がない。特
にメモリ内での即値データ転送命令と、遅延スロット、
即値データの配置が決まっているため、即値データの格
納場所を考慮する必要がなく、プログラマやコンパイラ
の負担が軽減される。
【図面の簡単な説明】
【図1】本発明の原理図である。
【図2】本発明の一実施例の構成図である。
【図3】一実施例のプログラム文を示す図である。
【図4】第1の実施例の命令配置図である。
【図5】第1の実施例のパイプライン処理を示す図であ
る。
【図6】第1の実施例のタイミングチャートである。
【図7】第2の実施例の命令配置図である。
【図8】第2の実施例のパイプライン処理を示す図であ
る。
【図9】第2の実施例のタイミングチャートである。
【図10】第3の実施例の命令配置図である。
【図11】第3の実施例のパイプライン処理を示す図で
ある。
【図12】第3の実施例のタイミングチャートである。
【図13】第4の実施例における第1の命令配置図であ
る。
【図14】第1の命令配置のパイプライン処理を示す図
である。
【図15】第1の命令配置の場合のタイミングチャート
である。
【図16】第4の実施例における第2の命令配置図であ
る。
【図17】第2の命令配置のパイプライン処理を示す図
である。
【図18】第2の命令配置の場合のタイミングチャート
である。
【図19】第5の実施例の概略図である。
【符号の説明】 10 即値データ転送装置 11 デコード手段 12 命令アドレス生成手段 13 即値データアドレス生成手段 14 格納手段 15 実行手段 21 命令デコーダ 22、24 加算器 23 プログラムカウンタ 25 メモリ 26 実行回路 31、34、38、43 即値データ転送命令 32、36、40、41、45、46、47 即値デー
タ 35、39、44 遅延スロット

Claims (22)

    【特許請求の範囲】
  1. 【請求項1】 即値データを用いて動作する実行手段
    (15)を有し、前記即値データと前記即値データの転
    送を指示する即値データ転送命令とから成る命令をパイ
    プライン方式で処理する情報処理装置において、 前記命令を格納する格納手段(14)と、 前記格納手段(14)からフェッチした前記即値データ
    転送命令をデコードするデコード手段(11)とを備
    え、 即値データ転送命令をデコードして実行することによ
    り、前記格納手段(14)から前記実行手段(15)へ
    前記即値データを転送し、前記即値データ転送命令によ
    り指定される分岐先命令へ分岐することを特徴とする即
    値データ転送装置(10)。
  2. 【請求項2】 前記情報処理装置のパイプラインはメモ
    リアクセス段を有し、 前記即値データ転送命令をパイプライン方式で処理する
    際に、前記メモリアクセス段で、前記即値データを前記
    実行手段(15)へ転送することを特徴とする請求項1
    記載の即値データ転送装置(10)。
  3. 【請求項3】 前記分岐先命令は、前記即値データを用
    いて前記実行手段(15)により実行されることを特徴
    とする請求項1記載の即値データ転送装置(10)。
  4. 【請求項4】 前記実行手段(15)は、前記情報処理
    装置の中央処理装置内にあって、前記即値データを用い
    て演算を行う実行回路(26)であることを特徴とする
    請求項1記載の即値データ転送装置(10)。
  5. 【請求項5】 前記実行手段(15)は、前記情報処理
    装置の中央処理装置に対する周辺リソースであることを
    特徴とする請求項1記載の即値データ転送装置(1
    0)。
  6. 【請求項6】 前記即値データは前記周辺リソースに対
    する命令であって、前記即値データは前記周辺リソース
    の制御レジスタに転送され、前記周辺リソースは転送さ
    れた前記即値データを用いて動作することを特徴とする
    請求項5記載の即値データ転送装置(10)。
  7. 【請求項7】 前記格納手段(14)からフェッチする
    命令の命令アドレスを生成する命令アドレス生成手段
    (12)を備え、 前記デコード手段(11)は、前記即値データ転送命令
    をデコードした時に、前記分岐先命令の命令アドレスを
    指定する第1の相対値を前記命令アドレス生成手段(1
    2)に出力し、 前記命令アドレス生成手段(12)は、既に生成された
    命令アドレスと前記第1の相対値とを用いて前記分岐先
    命令の命令アドレスを生成し、生成した前記分岐先命令
    の命令アドレスを前記格納手段(14)に出力し、 前記情報処理装置は、前記分岐先命令を前記格納手段
    (14)からフェッチすることを特徴とする請求項1記
    載の即値データ転送装置(10)。
  8. 【請求項8】 前記格納手段(14)内の前記即値デー
    タの位置を示す即値データアドレスを生成する即値デー
    タアドレス生成手段(13)を備え、 前記格納手段(14)は、前記即値データ転送命令に対
    して予め決められた相対位置に前記即値データを格納
    し、 前記命令アドレス生成手段(12)は、前記既に生成さ
    れた命令アドレスを前記即値データアドレス生成手段
    (13)に出力し、 前記デコード手段(11)は、前記即値データ転送命令
    をデコードした時に、前記即値データアドレスを指定す
    る第2の相対値を前記即値データアドレス生成手段(1
    3)に出力し、 前記即値データアドレス生成手段(13)は、前記既に
    生成された命令アドレスと前記第2の相対値とを用いて
    前記即値データアドレスを生成し、生成した前記即値デ
    ータアドレスを前記格納手段(14)に出力し、 前記即値データアドレスに格納された前記即値データを
    前記実行手段(15)に転送することを特徴とする請求
    項7記載の即値データ転送装置(10)。
  9. 【請求項9】 前記格納手段(14)は、前記即値デー
    タ転送命令に対して予め決められた相対位置に前記即値
    データを格納することを特徴とする請求項1記載の即値
    データ転送装置(10)。
  10. 【請求項10】 前記格納手段(14)からフェッチす
    る命令の命令アドレスを生成する命令アドレス生成手段
    (12)と、 前記格納手段(14)内の前記即値データの位置を示す
    即値データアドレスを生成する即値データアドレス生成
    手段(13)とを備え、 前記命令アドレス生成手段(12)は、既に生成された
    命令アドレスを前記即値データアドレス生成手段(1
    3)に出力し、 前記デコード手段(11)は、前記即値データ転送命令
    をデコードした時に、前記即値データアドレスを指定す
    る第2の相対値を前記即値データアドレス生成手段(1
    3)に出力し、 前記即値データアドレス生成手段(13)は、前記既に
    生成された命令アドレスと前記第2の相対値とを用いて
    前記即値データアドレスを生成し、生成した前記即値デ
    ータアドレスを前記格納手段(14)に出力し、 前記即値データアドレスに格納された前記即値データを
    前記実行手段(15)に転送することを特徴とする請求
    項9記載の即値データ転送装置(10)。
  11. 【請求項11】 前記即値データ転送命令による分岐時
    に遅延分岐を行い、前記即値データ転送命令を前記格納
    手段(14)からフェッチした後、前記即値データ転送
    命令の次に配置された命令をフェッチし、その後前記分
    岐先命令をフェッチすることを特徴とする請求項1記載
    の即値データ転送装置(10)。
  12. 【請求項12】 前記即値データ転送命令を前記格納手
    段(14)からフェッチした後、前記即値データ転送命
    令の次に配置された前記即値データをフェッチし、その
    後前記分岐先命令をフェッチすることを特徴とする請求
    項11記載の即値データ転送装置(10)。
  13. 【請求項13】 前記格納手段(14)内において、前
    記即値データ転送命令の次に遅延スロットを配置し、前
    記即値データ転送命令を前記格納手段(14)からフェ
    ッチした後、前記遅延スロットをフェッチし、その後前
    記分岐先命令をフェッチすることを特徴とする請求項1
    1記載の即値データ転送装置(10)。
  14. 【請求項14】 前記遅延スロットに、実行可能な命令
    を置くことを特徴とする請求項13記載の即値データ転
    送装置(10)。
  15. 【請求項15】 前記格納手段(14)内において、前
    記即値データが2ワード以上に分散して格納された時、
    複数回のメモリアクセスにより前記即値データを前記実
    行手段(15)に転送することを特徴とする請求項2ま
    たは13記載の即値データ転送装置(10)。
  16. 【請求項16】 前記格納手段(14)内において、前
    記即値データの一部を補充データとして前記即値データ
    に隣接する位置に配置することを特徴とする請求項1記
    載の即値データ転送装置(10)。
  17. 【請求項17】 前記格納手段(14)内において、前
    記即値データが2ワード以上に分散して格納された時、
    前記補充データを前記即値データの一部として前記実行
    手段(15)に転送することを特徴とする請求項16記
    載の即値データ転送装置(10)。
  18. 【請求項18】 前記即値データは第1の部分と第2の
    部分とから成り、前記第1の部分を前記補充データとし
    て前記即値データに隣接する位置に配置し、前記第1の
    部分と前記第2の部分が2ワードに分散して格納された
    時、前記補充データと前記第2の部分とを前記即値デー
    タとして、1回のメモリアクセスで前記実行手段(1
    5)に転送することを特徴とする請求項16記載の即値
    データ転送装置(10)。
  19. 【請求項19】 即値データと該即値データの転送を指
    示する即値データ転送命令とから成る命令をパイプライ
    ン方式で処理する情報処理装置において、 前記即値データ転送命令をフェッチし、 フェッチした前記即値データ転送命令をデコードし、 デコードした前記即値データ転送命令を実行して、前記
    即値データを転送し、前記即値データ転送命令により指
    定される分岐先命令へ分岐することを特徴とする即値デ
    ータ転送方法。
  20. 【請求項20】 前記即値データ転送命令をデコードし
    た時に、前記分岐先命令の命令アドレスを指定する第1
    の相対値を生成し、 前記第1の相対値を用いて前記分岐先命令の命令アドレ
    スを生成し、 生成した前記分岐先命令の命令アドレスを用いて前記分
    岐先命令をフェッチすることを特徴とする請求項19記
    載の即値データ転送方法。
  21. 【請求項21】 前記即値データ転送命令に対して予め
    決められた相対位置に前記即値データを格納することを
    特徴とする請求項19記載の即値データ転送方法。
  22. 【請求項22】 前記即値データ転送命令をデコードし
    た時に、前記即値データの格納位置を指定する第2の相
    対値を生成し、 前記第2の相対値を用いて前記即値データの格納位置に
    対応する即値データアドレスを生成し、 前記即値データアドレスに格納された前記即値データを
    転送することを特徴とする請求項21記載の即値データ
    転送方法。
JP5330107A 1993-12-27 1993-12-27 即値データ転送装置 Withdrawn JPH07191845A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5330107A JPH07191845A (ja) 1993-12-27 1993-12-27 即値データ転送装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5330107A JPH07191845A (ja) 1993-12-27 1993-12-27 即値データ転送装置

Publications (1)

Publication Number Publication Date
JPH07191845A true JPH07191845A (ja) 1995-07-28

Family

ID=18228878

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5330107A Withdrawn JPH07191845A (ja) 1993-12-27 1993-12-27 即値データ転送装置

Country Status (1)

Country Link
JP (1) JPH07191845A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012120179A (ja) * 2011-12-15 2012-06-21 Canon Inc 画像処理装置及び方法
CN113703832A (zh) * 2021-09-10 2021-11-26 中国人民解放军国防科技大学 一种立即数转移指令的执行方法、装置及介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012120179A (ja) * 2011-12-15 2012-06-21 Canon Inc 画像処理装置及び方法
CN113703832A (zh) * 2021-09-10 2021-11-26 中国人民解放军国防科技大学 一种立即数转移指令的执行方法、装置及介质

Similar Documents

Publication Publication Date Title
JP3120152B2 (ja) コンピューターシステム
US5404552A (en) Pipeline risc processing unit with improved efficiency when handling data dependency
KR102413832B1 (ko) 벡터 곱셈 덧셈 명령
US20190034204A1 (en) Reducing data hazards in pipelined processors to provide high processor utilization
US4454578A (en) Data processing unit with pipelined operands
US20010010072A1 (en) Instruction translator translating non-native instructions for a processor into native instructions therefor, instruction memory with such translator, and data processing apparatus using them
JPH03218523A (ja) データプロセッサ
JP2002333978A (ja) Vliw型プロセッサ
JPS6217252B2 (ja)
US4539635A (en) Pipelined digital processor arranged for conditional operation
JPH1091443A (ja) 情報処理回路、マイクロコンピュータ及び電子機器
US10303399B2 (en) Data processing apparatus and method for controlling vector memory accesses
US20230084523A1 (en) Data Processing Method and Device, and Storage Medium
JPH0496825A (ja) データ・プロセッサ
EP0094535A2 (en) Pipe-line data processing system
US6012138A (en) Dynamically variable length CPU pipeline for efficiently executing two instruction sets
US5390306A (en) Pipeline processing system and microprocessor using the system
US5590293A (en) Dynamic microbranching with programmable hold on condition, to programmable dynamic microbranching delay minimization
JP2004516571A (ja) 資源を効率的に用いるハードウェア・ループ
JP2620505B2 (ja) スーパースカラ・プロセッサ・システムの同期化効率を向上させる方法およびシステム
JPH07191845A (ja) 即値データ転送装置
JPH11242599A (ja) コンピュータプログラム製品
US5155818A (en) Unconditional wide branch instruction acceleration
JP3504355B2 (ja) プロセッサ
JPH10124312A (ja) 中央処理装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20010306