JP3473506B2 - パイプライン処理装置 - Google Patents

パイプライン処理装置

Info

Publication number
JP3473506B2
JP3473506B2 JP19004199A JP19004199A JP3473506B2 JP 3473506 B2 JP3473506 B2 JP 3473506B2 JP 19004199 A JP19004199 A JP 19004199A JP 19004199 A JP19004199 A JP 19004199A JP 3473506 B2 JP3473506 B2 JP 3473506B2
Authority
JP
Japan
Prior art keywords
instruction
entry
operand
flag
issued
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.)
Expired - Fee Related
Application number
JP19004199A
Other languages
English (en)
Other versions
JP2001022579A (ja
Inventor
明寛 澤村
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 JP19004199A priority Critical patent/JP3473506B2/ja
Publication of JP2001022579A publication Critical patent/JP2001022579A/ja
Application granted granted Critical
Publication of JP3473506B2 publication Critical patent/JP3473506B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、命令追い越しバッ
ファを備えており、複数の演算器がレジスタファイルへ
のライトポートを当該演算器間で共有しており、差し替
えパス(データ差し替えパス)が存在するパイプライン
処理装置に関する。
【0002】
【従来の技術】パイプライン処理装置を実現するプロセ
ッサには、複数の演算器がレジスタファイルへのライト
ポートを当該演算器間で共有している場合がある。この
ような場合には、従来であれば、同時に発行可能な演算
命令数よりも多数の演算器が搭載されていることになっ
ていた。
【0003】図7は、本発明が適用されるプロセッサ
(パイプライン処理装置)の構成の一例の概略を示すブ
ロック図である。
【0004】図7に示すパイプライン処理装置におい
て、レジスタファイルからのオペランド読み出しは同時
に最大4個分である。うち2個のオペランドはメモリア
クセス系の命令で使用されるアドレス加算器に供給さ
れ、他の2個のオペランドは算術演算や論理演算を実行
する演算器に供給される。
【0005】図7に示すパイプライン処理装置における
データパス構造では、2個の演算器はレジスタファイル
からのリードポートおよびレジスタファイルへのライト
ポートを当該演算器間で共有している。このような共有
が行われるのは、全ての演算器に同時にデータを供給で
きるだけのリードポートや全ての演算器からのデータを
同時にライトバックできるだけのライトポートを備える
RAM(RandomAccess Memory)ハ
ードマクロは面積や遅延の面で現実的には使用が困難で
あるからである。このため、このようなパイプライン処
理装置では、演算器を2個備えているものの、同時に発
行可能な演算命令は1個に限定される。
【0006】ここで、図7のような構成のパイプライン
処理装置(プロセッサ)における、図11に示す命令列
の実行過程を説明する(図12のタイムチャートも参照
する)。
【0007】図12で、時刻T0以前に、図11の全て
の命令が図7中の命令追い越しバッファ内に登録されて
いるものとする。
【0008】時刻T0において第1の命令のLOAD命
令が発行され、時刻T1において第6の命令のSUB命
令が発行され、時刻T2において第2の命令のADD命
令が発行されるものとする。さらに、その後、時刻T3
において第1の命令の演算結果を参照する第3の命令の
OR命令が発行され、時刻T4において第2の命令の演
算結果を参照する第4の命令のADD命令が発行され、
時刻T5において第4の命令の演算結果を参照する第5
の命令のADD命令が発行されるものとする。
【0009】ところで、時刻T3においては、第3の命
令のOR命令と第4の命令のADD命令とはいずれもオ
ペランドの依存関係が解消していて発行可能な状態であ
る。また、第3の命令のOR命令と第4の命令のADD
命令とでは使用する演算器の種類が異なる。さらに、第
4の命令のADD命令は後続の第6の命令のSUB命令
によって演算結果のS07が上書きされることが判明し
ているので、第4の命令の演算結果を参照する第5の命
令のADD命令に演算器周辺の差し替えパスを使用して
オペランドを供給しつつ発行することを保証できれば、
必ずしも第4の命令の演算結果をレジスタファイルに書
き戻す必要はない。加えて、第3の命令と第4の命令と
は時刻T3ではそれぞれ片方のオペランドが差し替えパ
スで供給されるので、レジスタファイルのリードポート
が余っていることになる。
【0010】このように、時刻T3においては、第3の
命令のOR命令と第4の命令のAND命令とを同時に発
行しても、演算器リソースの競合は発生しない。それに
もかかわらず、従来技術によると、実際には、時刻T3
においては第3の命令しか発行されていない。
【0011】
【発明が解決しようとする課題】上述した従来のパイプ
ライン処理装置では、パイプライン処理の一定の時刻に
おいて複数の演算命令を同時に発行しても演算器リソー
スの競合が発生しないにもかかわらず、実際には1個の
演算命令しか発行されていないので、投入された演算器
リソースに見合うだけの性能を引き出していないことに
なるという問題点があった。例えば、上述の図12中の
時刻T3においては、第3の命令(OR命令)と第4の
命令(AND命令)とを同時に発行することが可能であ
るにもかかわらず、そのような発行は行われていなかっ
た。
【0012】本発明の目的は、上述の点に鑑み、命令発
行の効率を高めることができ、投資された演算器ハード
ウェア資源(リソース)の性能をより多く引き出すこと
を可能とし、プロセッサ(パイプライン処理装置を実現
するプロセッサ)の実効性能の向上を達成できるパイプ
ライン処理装置を提供することにある。
【0013】
【課題を解決するための手段】本発明のパイプライン処
理装置は、複数の演算器がレジスタファイルへのライト
ポートを当該演算器間で共有しており差し替えパスが存
在するパイプライン処理装置において、複数のエントリ
からなり、各入力オペランドに対する差し替えフラグ,
レディフラグ,および後続参照エントリ情報とエントリ
バリッドフラグ,ディスティネーションフィールド,お
よびLフラグとを各エントリに保持する命令追い越しバ
ッファと、Dステージデータ保持回路内の命令に関する
各種の情報を前記命令追い越しバッファ内のエントリに
登録し、当該エントリの命令とオペランドの依存関係を
有する命令が登録されている前記命令追い越しバッファ
内のエントリにその依存関係を示す情報を登録するエン
トリ登録手段と、前記エントリ登録手段による命令の登
録時に前記命令追い越しバッファ内の当該命令の登録エ
ントリ中のLフラグをセットし、当該命令と同一のレジ
スタに演算結果を書き込む先行命令の登録エントリ中の
Lフラグをリセットするレイテストセット手段と、前記
命令追い越しバッファ内の命令が発行された場合に当該
発行命令と依存関係にある命令に対する前記命令追い越
しバッファ内のエントリ中のオペランドレディフラグを
セットするオペランドレディセット手段と、前記命令追
い越しバッファに登録されている「入力オペランドがレ
ディになっている命令群」からの発行命令の候補の選
択,前記命令追い越しバッファに登録されている「後続
命令により演算結果が上書きされることが判明している
命令群」からの発行命令の候補の選択,およびリソース
の競合のチェックに基づいて発行命令を選択し、当該選
択の際に、リソースの競合が生じない範囲で複数命令の
同時発行を行い、「後続命令により演算結果が上書きさ
れることが判明している命令群」の中から選択された命
令を実際に発行した場合に当該命令の演算結果を参照す
る後続命令を強制的に遅滞なく(次のサイクルの時刻
に)発行する発行命令選択手段とを有する。
【0014】ここで、上述の本発明のパイプライン処理
装置内の発行命令選択手段は、前記命令追い越しバッフ
ァ内の各エントリ中の設定情報(各入力オペランドに対
するオペランドレディフラグ等)の参照に基づき、入力
オペランドがレディになっている命令群の中から発行命
令の候補となる命令を選択する第1の命令選択手段と、
前記命令追い越しバッファ内の各エントリ中の設定情報
(Lフラグ等)の参照に基づき、後続命令により演算結
果が上書きされることが判明している命令群の中から発
行命令の候補となる命令を選択する第2の命令選択手段
と、前記第1の命令選択手段により選択された命令と前
記第2の命令選択手段により選択された命令とのリソー
ス競合チェックを行い、リソースの競合が発生しない場
合には当該両命令を同時に発行し、リソースの競合が発
生する場合には前記第1の命令選択手段よって選択され
た命令のみを発行し、前記第2の命令発行選択手段によ
り選択された命令を実際に発行した場合には当該命令の
演算結果を参照する後続命令を遅滞なく強制的に発行す
る発行命令調停手段とを備えている。
【0015】さらに、上述の本発明のパイプライン処理
装置内の発行命令選択手段中の発行命令調停手段は、前
記命令追い越しバッファ内の各エントリ中の各入力オペ
ランドに対する後続参照エントリ情報の対応するビット
毎の論理和を生成することにより、当該各エントリに登
録されている命令の演算結果を参照する命令が登録され
ているエントリを示す信号を生成する当該各エントリに
対するORゲートと、前記第2の命令選択手段によって
選択された命令が登録されているエントリに対する前記
ORゲートの出力信号を選択するセレクタと、前記セレ
クタにより選択された「エントリを示す信号」に基づく
情報を格納するエントリ情報レジスタ(図2中のレジス
タB)と、前記第2の命令選択手段により選択された命
令が実際に発行されたことを点灯状態で示す命令発行情
報レジスタ(図2中のレジスタA)と、前記第1の命令
選択手段,前記第2の命令選択手段,前記エントリ情報
レジスタ,および前記命令発行情報レジスタからの情報
に基づいて発行命令の選択を行う発行命令調停回路とを
有する構成にすることができる。
【0016】
【発明の実施の形態】次に、本発明について図面を参照
して詳細に説明する。
【0017】図1は、本発明の一実施の形態に係るパイ
プライン処理装置の構成を示すブロック図である。本発
明の要点は、パイプライン処理装置の中でも命令追い越
しバッファに関する制御内容にある。したがって図1に
は、主として、命令追い越しバッファ(命令追い越しバ
ッファ10)に関連する構成要素を記載している。な
お、このパイプライン処理装置の全体構成は、図7に示
している。
【0018】図1を参照すると、本実施の形態に係るパ
イプライン処理装置は、複数(n個。nは2以上の正整
数)のエントリを備える命令追い越しバッファ10と、
エントリ登録手段20と、発行命令選択手段30と、D
ステージデータ保持回路40と、オペランドレディセッ
ト手段50と、レイテスト(Latest)セット手段
60と、Iステージデータ保持回路70とを含んで構成
されている。なお、図1には示されていないが、エント
リ登録手段20,発行命令選択手段30,オペランドレ
ディセット手段50,およびレイテストセット手段60
は、命令追い越しバッファ10内の構成要素を含んでい
る場合がある。また、当該各手段間で同じ構成要素が共
有される場合もある。
【0019】図2は、発行命令選択手段30の詳細な構
成(周辺の構成を含む)および動作を説明するための図
である。
【0020】発行命令選択手段30は、ANDゲート3
01,302,304,305,および306と、エク
スクルーシブORゲート303と、組合せ論理回路30
7と、ORゲート308と、命令選択手段A309と、
命令選択手段B310と、セレクタ311と、発行命令
調停回路312と、レジスタA313と、レジスタB3
14とを含んで構成されている。ここで、上記の301
〜308の符号で示される構成要素は、命令追い越しバ
ッファ10内の各エントリに対応して存在する。また、
各エントリ内のORゲート308,セレクタ311,発
行命令調停回路312,レジスタA313,およびレジ
スタB314を含んで、発行命令調停手段が構成されて
いる。
【0021】図3は、レイテストセット手段60の詳細
な構成および動作を説明するための図である。
【0022】レイテストセット手段60は、コンパレー
タ601と、ANDゲート602とを含んで構成されて
いる。ここで、上記の構成要素は、命令追い越しバッフ
ァ10内の各エントリに対応して存在する。なお、エン
トリ登録手段20の構成要素である新規エントリ管理部
201およびデコーダ202も、レイテストセット手段
60の構成要素に該当する。
【0023】図4は、オペランドレディセット手段50
の詳細な構成および動作を説明するための図である。
【0024】オペランドレディセット手段50は、命令
追い越しバッファ10内の各エントリのYオペランド後
続参照エントリ情報105を選択対象とするセレクタ5
01と、当該各エントリのZオペランド後続参照エント
リ情報106を選択対象とするセレクタ502とを含ん
で構成されている。
【0025】図5は、エントリ登録手段20の詳細な構
成および動作を説明するための図である。
【0026】エントリ登録手段20は、新規エントリ管
理部201と、デコーダ202と、命令追い越しバッフ
ァ10内の各エントリに対応して存在するコンパレータ
203およびANDゲート群(ANDゲート213,2
14,および218等)とを含んで構成されている。な
お、図5にはYオペランドに関する構成要素のみを示し
たが、Zオペランドに関しても同様な構成要素(Zオペ
ランド用のコンパレータ等)が存在していることはいう
までもない。
【0027】図6は、命令追い越しバッファ10内の各
エントリの構成要素を詳細に示す図である。
【0028】命令追い越しバッファ10は、各エントリ
に、当該エントリが有効であることを点灯状態で示すエ
ントリバリッドフラグ(図6においては「Vフラグ」で
示す)101と、ディスティネーションフィールド(図
6においては「DESTINATION」で示す)10
2と、Yオペランドレディフラグ(図6においては「Y
−rdy」で示す)103と、Zオペランドレディフラ
グ(図6においては「Z−rdy」で示す)104と、
当該エントリに登録された命令の結果をYオペランド
(第1の入力オペランド)として参照する後続命令が登
録されているエントリ(命令追い越しバッファ10内の
エントリ)を示す情報であるYオペランド後続参照エン
トリ情報(図6においては「Y−op後続参照エントリ
情報」で示す)105と、当該エントリに登録された命
令の結果をZオペランド(第2の入力オペランド)とし
て参照する後続命令が登録されているエントリ(命令追
い越しバッファ10内のエントリ)を示す情報であるZ
オペランド後続参照エントリ情報(図6においては「Z
−op後続参照エントリ情報」で示す)106と、L
(Latest)フラグ130と、Yオペランド差し替
えフラグ(図6においては「Y−差替」で示す)131
と、Zオペランド差し替えフラグ(図6においては「Z
−差替」で示す)132とを保持している。
【0029】ここで、Yオペランド差し替えフラグ13
1およびZオペランド差し替えフラグ132は、それぞ
れYオペランドレディフラグ103およびZオペランド
レディフラグ104のセット信号を1サイクル間のみ保
持する。ある命令に対応するエントリ中のYオペランド
差し替えフラグ131またはZオペランド差し替えフラ
グ132が点灯しているタイミングで当該命令の発行が
選択された場合には、当該命令の入力オペランドはレジ
スタファイルからの読み出しデータとして供給されるの
ではなく差し替えパスを利用して供給される(供給され
るデータは先行命令の演算結果である)ことを意味して
いる。
【0030】図7は、先に述べたように、本実施の形態
に係るパイプライン処理装置の全体構成を示すブロック
図である。ただし、図1に示すエントリ登録手段20,
発行命令選択手段30,オペランドレディセット手段5
0,レイテストセット手段60,および本パイプライン
処理装置を統合的に管理するパイプライン管理ブロック
については、図全体が繁雑となるので図7には記載して
いない。また、本発明のパイプライン処理装置における
データパス構造は図7に示すものに限定されず、例えば
以下のaおよびbに示すようなデータパス構造も考えら
れる。 a.レジスタファイルが複数のライトポートを持ち、第
1のライトポートが第1の演算器と第2の演算器とで共
用(共有)され、第2のライトポートが第3の演算器と
第4の演算器とで共用され、以下、他の各ライトポート
が他の演算器群で共用されるというデータパス構造 b.レジスタファイルが複数のライトポートを持ち、第
1のライトポートが第1の演算器と第2の演算器とで共
用され、第2のライトポートが第2の演算器と第3の演
算器とで共用され、以下、他の各ライトポートが演算器
群で共用されるというデータパス構造
【0031】ここで、図7に示すパイプライン処理装置
(すなわち、図1に示す本実施の形態に係るパイプライ
ン処理装置)の全体像について簡単な説明を行う。
【0032】命令バッファから読み出された命令は、い
ったんDステージデータ保持回路40に保持され、その
後命令追い越しバッファ10に登録される。
【0033】命令追い越しバッファ10に登録された命
令は、実行条件の整ったものから、その実行が開始され
る。このとき、実行条件の整っていない命令は、後続命
令に追い越されることもある。
【0034】また、命令追い越しバッファ10からの命
令の削除は、該当する命令の実行が開始されたときに行
われる。
【0035】実行が開始された命令は、Iステージデー
タ保持回路70に送られ、さらにIステージデータ保持
回路70によって示されるレジスタファイルのエントリ
の内容が読み出されて、その読み出しに基づいてXステ
ージデ ータ保持回路に送られる。
【0036】Xステージの命令は演算命令であれば演算
器(図7中の演算器FIXまたは演算器LOG)に投入
され、ロード命令等のメモリアクセス系の命令であれば
アドレス加算器に投入される。ここで、図7中の「演算
器FIX」は固定小数点(Fixed Point)演
算用の算術演算器を意味しており、「演算器LOG」は
論理演算用の演算器を意味している。なお、本発明のパ
イプライン処理装置における演算器群の内容が図7に示
すものに限定されないことはいうまでもない(例えば、
通常のプロセッサでは、算術演算用の演算器は固定小数
点加算系/浮動小数点加算系/乗算系/除算系等に分割
して実装される)。
【0037】さらに、Xステージの命令がロード命令等
のメモリアクセス系の命令であればキャッシュメモリの
読み出しデータがレジスタファイルに書き込まれ、演算
命令であれば演算器の演算結果がレジスタファイルに書
き込まれる。
【0038】本実施の形態に係るパイプライン処理装置
では、キャッシュメモリの読み出しデータや演算器の演
算結果はレジスタファイルに書き込まれるだけではな
く、Xステージデータ保持回路やアドレス加算器や演算
器の入力に直接投入される。この直接投入のためのパス
として、差し替えパス(データ差し替えパス)が備えら
れている。この差し替えパスにより、本パイプライン処
理装置は、先行命令の演算結果を参照する後続命令への
データの受け渡しに要するサイクル数を短縮し、性能向
上を図っている。
【0039】例えば、後に言及する図9の命令列では、
ADD命令の演算結果S7を後続のSUB命令がYオペ
ランドとして参照している。演算器TAT(Turn
Around Time)を1サイクル(T)とする
と、SUB命令はADD命令の1サイクル後れで発行す
ることができる。先行ADD命令がWステージに到達す
るとき、後続SUB命令はXステージ上に存在する。W
ステージ上の先行ADD命令の結果を演算器に直接投入
することで、後続SUB命令は先行ADD命令の演算結
果がレジスタファイルに書き込まれるのを待たずに実行
を開始することができる。
【0040】なお、図7においては、上記の「差し替え
パス」は、以下のa〜cのパスが該当する。 a.演算器FIXおよび演算器LOGの出力側のデータ
保持回路から演算器FIXおよび演算器LOGの入力側
のセレクタに至るパス b.演算器FIXおよび演算器LOGの出力側のデータ
保持回路から2入力セレクタを経由してXステージデー
タ保持回路に至るパス c.キャッシュメモリの出力側のデータ保持回路からX
ステージデータ保持回路に至るパス
【0041】図8は、本実施の形態に係るパイプライン
処理装置で取り扱われる命令のフォーマットを示す図で
ある。
【0042】この命令は、命令コードを示すOPフィー
ルドと、Xオペランド(演算結果の格納先のオペラン
ド)を示すXフィールドと、Yオペランド(演算の第1
の入力オペランド)を示すYフィールドと、Zオペラン
ド(演算の第2の入力オペランド)を示すZフィールド
とからなる。
【0043】図9および図10は、本実施の形態に係る
パイプライン処理装置の具体的な動作を説明するための
図である。すなわち、図9は命令列の具体例を示す図で
あり、図10は図9の命令列に対応するタイムチャート
を示す図である。
【0044】次に、上述のように構成された本実施の形
態に係るパイプライン処理装置の動作(命令追い越しバ
ッファ10の制御に関する動作を中心とした動作)につ
いて詳細に説明する。なお、命令追い越しバッファ10
内のエントリに「命令に関する各種の情報を登録する」
ことを、単に「命令を登録する」と表現する場合があ
る。
【0045】以下では、適宜、図9に示す命令列を例に
とり、本実施の形態に係るパイプライン処理装置の具体
的な動作を説明する。
【0046】図9の命令列において、命令2(SUB命
令)のYオペランドは命令1(ADD命令)の演算結果
を参照している。命令1は命令追い越しバッファ10の
エントリ#3に登録され、命令2は命令追い越しバッフ
ァ10のエントリ#8に登録されるものとする。また、
命令1のADDおよび命令2のSUBは、ともに、その
演算TATが1サイクル(T)であるものとする。
【0047】(1) 命令追い越しバッファ10への命
令登録時の動作 第1に、命令追い越しバッファ10への命令登録時の動
作について、図3,図5,図6,図9,および図10を
参照して説明する。
【0048】(1−1) 命令登録時の全般的な動作 エントリ登録手段20は、Dステージデータ保持回路4
0内の命令(図8に示すフォーマットの命令)に関する
各種情報を命令追い越しバッファ10内の所定のエント
リに登録する(Lフラグ130のセットについてはレイ
テストセット手段60により行われる)。
【0049】また、この登録時に、エントリ登録手段2
0は、先に他のエントリに登録されている命令との間の
オペランドに関する依存関係を示すために、当該他のエ
ントリ中のYオペランド後続参照エントリ情報105お
よびZオペランド後続参照エントリ情報106に当該依
存関係を示す情報を設定する。なお、この動作について
は、後述の(1−2)で詳述する。
【0050】さらに、この登録時に、レイテストセット
手段60は、登録対象の命令のエントリ中のLフラグ1
30のセットと、必要な場合には先に他のエントリに登
録されている命令に関するLフラグ130のリセットと
を行う。なお、このリセット動作については、後述の
(1−3)で詳述する。
【0051】例えば、図9および図10に示す命令に関
しては、以下のように命令追い越しバッファ10への登
録が行われる。
【0052】命令1(ADD命令)は、図10中の時刻
T0でフェッチ(fetch)され、時刻T1でDステ
ージを通過して、時刻T2で命令追い越しバッファ10
のエントリ#3に登録されるものとする。なお、図10
のタイムチャート中の「R3」という表記は、命令1が
命令追い越しバッファ10のエントリ#3に登録されて
いることを示している。
【0053】上記のような命令1の登録時には、新規登
録エントリ管理部201は、デコーダ202を介して、
エントリ#3への命令1の登録を指示する。この指示に
基づき、命令追い越しバッファ10内のエントリ#3に
対して、Dステージデータ保持回路40のXオペランド
データがディスティネーションフィールド102に登録
されるとともに、エントリバリッドフラグ101がセッ
トされる。なお、以上の処理が、エントリ登録手段20
の処理に該当する。
【0054】また、上記の新規登録エントリ管理部20
1の指示に基づいて、エントリ#3のLフラグ130が
セットされる。この処理は、レイテストセット手段60
の処理に該当する。ここで、あるエントリのLフラグ1
30が「点灯(セット)状態」であるということは、
「当該エントリに登録された命令が当該エントリ中のデ
ィスティネーションフィールド102で示されるレジス
タファイルのエントリを更新する最新(最後)の命令で
あること」を示すものである。すなわち、命令1に対す
る上記のようなLフラグ130のセットによって、時刻
T2においては、命令1と同一のレジスタ(命令1の演
算結果が格納されるレジスタファイル中のエントリ)を
更新する命令追い越しバッファ10内の命令群の中で、
命令1が命令シーケンスの上で最後に当該レジスタを更
新する命令であることが示されることになる。
【0055】命令2(SUB命令)は、命令1(ADD
命令)よりも1サイクル遅れて、時刻T1でフェッチさ
れ、時刻T2でDステージに到達し、時刻T3で命令追
い越しバッファ10のエントリ#8に登録されるものと
する。なお、図10のタイムチャート中の「R8」とい
う表記は、命令2が命令追い越しバッファ10のエント
リ#8に登録されていることを示している。
【0056】上記のような命令2の登録時には、時刻T
2において、新規登録エントリ管理部201は、デコー
ダ202を介して、命令追い越しバッファ10内のエン
トリ#8への命令2の登録を指示する。この指示に基づ
き、Dステージデータ保持回路40のXオペランドデー
タがエントリ#8のディスティネーションフィールド1
02に登録されるとともに、エントリ#8のエントリバ
リッドフラグ101がセットされる。なお、以上の処理
が、エントリ登録手段20の処理に該当する。
【0057】さらに、エントリ登録手段20の処理(後
述する(1−2)の処理)により、命令1と命令2との
オペランドの依存関係を示すために、エントリ#3内の
Yオペランド後続参照エントリ情報105中のエントリ
#8に対応するビットがセットされる。
【0058】また、上記の新規登録エントリ管理部20
1の指示に基づいて、エントリ#8のLフラグ130が
セットされる。この処理は、レイテストセット手段60
の処理に該当する。
【0059】
【0060】(1−2) 命令間の依存関係を示す情報
の設定のためのエントリ登録手段20による動作 ここで、図5を参照して、命令2の登録時における命令
1と命令2との間のオペランドの依存関係を示す情報
(ここでは、命令2に対するYオペランド後続参照エン
トリ情報105)の設定に関する動作について説明す
る。
【0061】命令追い越しバッファ10内の各エントリ
に対応する各コンパレータ203(エントリ登録手段2
0の構成要素の1つ)は、Dステージデータ保持回路4
0の命令中のYオペランドデータと、当該各エントリの
ディスティネーションフィールド102の内容とを比較
し、両者が同一であればTRUEを出力する。
【0062】図10中の時刻T2においては、エントリ
#3のディスティネーションフィールド102にS7が
登録されているので、このディスティネーションフィー
ルド102の内容(S7)とDステージデータ保持回路
40のYオペランドデータのS7との比較で、エントリ
#3のコンパレータ203の出力がTRUEになる。
【0063】また、時刻T2においては、命令2の登録
エントリとして、新規登録エントリ管理部21によりエ
ントリ#8が指示されており、エントリ#8のディステ
ィネーションフィールド102の入力信号がTRUEに
なっている。
【0064】エントリ#3のANDゲート218は、エ
ントリ#3のコンパレータ203の出力信号と、エント
リ#8中のディスティネーションフィールド102の入
力信号とを入力しており、これら両信号の論理積である
TRUEを出力信号として出力する。
【0065】時刻T3において、命令2のエントリ#8
への登録と同時に、上記のエントリ#3のANDゲート
218の出力により、エントリ#3内のYオペランド後
続参照エントリ情報105のエントリ#8に対応するビ
ットがセットされる。
【0066】以上により、命令2の命令追い越しバッフ
ァ10への登録と同時に、命令1と命令2との間の依存
関係が検出され、検出された両者の依存関係が命令1の
エントリ(エントリ#3)中のYオペランド後続参照エ
ントリ情報105に登録されることになる。
【0067】(1−3) レイテストセット手段60に
よるLフラグ130のリセット動作 次に、図3を参照して、命令登録時におけるレイテスト
セット手段60によるLフラグ130のリセットに関す
る動作について説明する。
【0068】あるエントリ中のLフラグ130は、前述
のように、「当該エントリに登録された命令が当該エン
トリ中のディスティネーションフィールド102で示さ
れるレジスタファイルのエントリを更新する最新(最
後)の命令であること」を「点灯(セット)状態」で示
すフラグである。
【0069】新規にデコードされて命令追い越しバッフ
ァ10に登録される命令がある場合に、すでに命令追い
越しバッファ10に登録されている先行命令のエントリ
中のディスティネーションフィールド102の内容と後
続命令のXフィールドの内容とが一致するとき、当該先
行命令の演算結果を登録するレジスタファイルのエント
リは後続命令によって上書きされることを意味する。こ
のようなときには、当該先行命令のエントリのLフラグ
130をリセットしておき、後述する発行命令の選択の
際に、当該上書きの態様を認識することができるように
しておく。
【0070】以上のようなLフラグ130のリセットを
実現するために、レイテストセット手段60は、Dステ
ージデータ保持回路40の命令中のXオペランドデータ
と命令追い越しバッファ10内の各エントリのディステ
ィネーションフィールド102の内容とを、当該各エン
トリに対する各コンパレータ601により比較する。そ
して、その比較結果と当該各エントリ中のエントリバリ
ッドフラグ101との論理積を当該各エントリのAND
ゲート602で生成して、当該各ANDゲート602の
出力信号を当該各エントリ中のLフラグ130へのリセ
ット信号(ANDゲート602の出力がTRUEである
場合にLフラグ130のリセットを指示する信号。図3
中の「R」参照)とする。
【0071】
【0072】(2) 命令発行時の動作 第2に、命令追い越しバッファ10に登録された命令の
発行時の動作について、図2,図4,図9,および図1
0を参照して説明する。
【0073】(2−1) オペランドレディセット手段
50の動作 まず、ある命令の発行時におけるオペランドレディセッ
ト手段50の動作について説明する。ここでは、命令1
の発行時における命令2のYオペランドレディフラグ1
03のセットの際における動作について、図4を参照し
て説明する。
【0074】図10中の時刻T7において、後述するよ
うな発行命令選択手段30の制御により、命令1が発行
命令として選択されると、図4に示すように発行エント
リ選択信号でエントリ#3(命令1の登録エントリ)が
指示される。
【0075】オペランドレディセット手段50の構成要
素であるセレクタ501は、命令追い越しバッファ10
内の各エントリのYオペランド後続参照エントリ情報1
05の内容を入力している。ここで、時刻T7において
は、セレクタ501は、発行エントリ選択信号がエント
リ#3を示しているので、エントリ#3のYオペランド
後続参照エントリ情報105を出力として選択する。
【0076】各エントリ中のYオペランド後続参照エン
トリ情報105の各ビットは、前述のように、自エント
リの登録命令の演算結果を参照する後続命令が登録され
ているエントリに対応している。したがって、セレクタ
501は、自己の出力の各ビットを、命令追い越しバッ
ファ10内の対応する各エントリのYオペランドレディ
フラグ103のセット信号とする。
【0077】時刻T7においてセレクタ501の出力信
号中の「エントリ#8に対応するビット」がTRUEと
なるので、時刻T8でエントリ#8のYオペランドレデ
ィフラグ103が点灯(セット)状態になる。これによ
り、後述するように、時刻T8でエントリ#8の登録命
令である命令2を発行命令の候補として選択することが
可能となる。
【0078】(2−2) 発行命令選択手段30の動作 次に、図2を参照して、発行命令選択手段30の動作に
ついて説明する。この発行命令選択手段30の動作が、
本実施の形態、ひいては本発明の中心的な動作に該当す
る。
【0079】命令選択手段A309は、以下のように、
発行命令の候補となる命令を選択する。なお、この選択
は、従来技術による発行命令の選択と同様のものであ
る。
【0080】命令追い越しバッファ10内の各エントリ
に対応するANDゲート302は、当該各エントリのエ
ントリバリッドフラグ101,Yオペランドレディフラ
グ103,およびZオペランドレディフラグ104の論
理積を生成し出力する。各エントリのANDゲート30
2の出力がTRUEであることは、当該各エントリに対
する命令の発行条件が整い、当該命令が発行選択の対象
(発行命令の候補)になりうることを示している。
【0081】命令選択手段A309は、上記の各エント
リのANDゲート302の出力を入力し、発行条件の整
った命令の中から1つの命令を発行命令の候補として選
択する。この選択の態様(基準)としては、命令追い越
しバッファ10への登録順に基づく選択や、命令追い越
しバッファ10内のエントリ順に基づく選択等が考えら
れる。
【0082】一方、命令選択手段B310は、以下のよ
うに、発行命令の候補となる命令を選択する。なお、こ
の選択は、本発明に特有のものである。
【0083】命令選択手段B310によって選択されう
る命令は、当該命令に対するエントリにおいて、次のa
〜eに示す条件を満たすものである。
【0084】a.Yオペランドレディフラグ103およ
びZオペランドレディフラグ104が両方とも点灯して
いること。この条件は、ANDゲート304によってチ
ェックされる。
【0085】b.Yオペランド差し替えフラグ131お
よびZオペランド差し替えフラグ132のいずれか片方
のみが点灯していること。この条件は、エクスクルーシ
ブORゲート303によってチェックされる。
【0086】c.Lフラグ130が点灯していないこ
と。なお、Lフラグ130が点灯していないということ
は、後続命令によりレジスタファイルにおいて上書きが
なされることを示している。この条件は、ANDゲート
301によってチェックされる。
【0087】d.エントリバリッドフラグ101が点灯
していること。この条件も、ANDゲート301によっ
てチェックされる。
【0088】e.Yオペランド後続参照エントリ情報1
05およびZオペランド後続参照エントリ情報106の
うち点灯しているビットが高々1ビットであること。こ
れは、当該エントリの命令の演算結果を参照する命令が
高々1命令しかないことを意味する。この条件は、組合
せ論理回路307によってチェックされる。
【0089】ANDゲート306は、ANDゲート30
1の出力,ANDゲート305の出力(エクスクルーシ
ブORゲート303の出力とANDゲート304の出力
との論理積),および組合せ論理回路307の出力の論
理積を出力する。この出力がTRUEである信号は、上
記のa〜eの条件を満たすことを意味する信号(当該エ
ントリに登録されている命令の発行条件が整っているこ
とを示す信号)である。
【0090】命令選択手段B310は、上記のような各
エントリのANDゲート306の出力を入力し、発行条
件の整った命令の中から1つの命令を発行命令の候補と
して選択する。この選択の態様(基準)としては、命令
追い越しバッファ10への登録順に基づく選択や、命令
追い越しバッファ10内のエントリ順に基づく選択等が
考えられる。
【0091】また、各エントリに対応するORゲート3
08は、当該各エントリ内のYオペランド後続参照エン
トリ情報105およびZオペランド後続参照エントリ情
報106の対応するビット毎の論理和を生成する。すな
わち、当該各エントリの登録命令の演算結果を参照する
命令が登録されているエントリを示す信号を生成する。
【0092】セレクタ311は、全てのエントリのOR
ゲート308の出力信号を入力し、命令選択手段B31
0によって選択された命令に対するエントリのORゲー
ト308の出力信号を選択してレジスタB314に格納
する。
【0093】発行命令調停回路312は、次のような選
択基準により、命令選択手段A309によって選択され
た命令(発行命令の候補)と、命令選択手段B310に
よって選択された命令(発行命令の候補)と、レジスタ
A313が点灯している場合におけるレジスタB314
によって指示されるエントリに登録されている命令との
調停を行い、これらの命令の中から演算器に実際に発行
する命令を決定して当該命令を発行する。なお、レジス
タA313のセットについては、後述する。
【0094】レジスタA313が点灯している(セット
されている)場合には、レジスタB314によって指示
されるエントリの命令が第1の発行命令として強制的に
発行される。このとき、命令選択手段A309によって
選択された命令はキャンセルされる。命令選択手段B3
10によって選択された命令は、第1の発行命令とリソ
ースの競合を起こさなければ、第2の発行命令として第
1の発行命令と同時に発行される。このとき、レジスタ
A313がセットされる。命令選択手段B310によっ
て選択された命令が第1の発行命令とリソースの競合を
起こす場合には、当該命令(命令選択手段B310によ
って選択された命令)はキャンセルされ発行されない。
このとき、レジスタA313がリセットされる。
【0095】一方、レジスタA313が点灯していない
場合には、命令選択手段A309によって選択された命
令が第1の発行命令として発行される。命令選択手段B
310によって選択された命令は、第1の発行命令とリ
ソースの競合を起こさなければ、第2の発行命令として
第1の発行命令と同時に発行される。このとき、レジス
タA313がセットされる。命令選択手段B310によ
って選択された命令が第1の発行命令とリソースの競合
を起こす場合には、当該命令(命令選択手段B310に
よって選択された命令)はキャンセルされ発行されな
い。このとき、レジスタA313がリセットされる。
【0096】上記の動作において分かるように、レジス
タA313は、命令選択手段B310によって選択され
た命令が実際に発行されたことを「点灯(セット)状
態」で示している。
【0097】ここで、命令選択手段B310によって選
択された命令については、その登録エントリ中のLビッ
ト130が点灯していない(リセットされている)こと
に基づいて、レジスタファイルへの演算結果のライトバ
ックが行われない。これは、同タイミングで発行された
第1の発行命令の演算結果の書き戻しのためにレジスタ
ファイルのライトポートが使用されるためである。
【0098】したがって、命令選択手段B310によっ
て選択された命令が第2の発行命令として実際に発行さ
れた場合には、第2の発行命令の演算結果を参照する後
続命令は、第2の発行命令の演算結果が入力オペランド
として差し替えパスを使用して供給されつつ、第2の発
行命令の1サイクル遅れで必ず発行されることになる。
このような発行が行われるのは、第2の発行命令(命令
選択手段B310によって選択された命令)の演算結果
がレジスタファイルに書き込まれないので、このような
発行をしないと二度と後続命令が入力オペランドを得る
ことができなくなってしまうからである。
【0099】以上により、本実施の形態に係るパイプラ
イン処理装置(当該パイプライン処理装置を実現するプ
ロセッサ)の動作を一通り説明した。ここで、上記の動
作を具体的に確認するために、図11の命令列に関する
本実施の形態による動作を図13のタイムチャートを参
照しながら説明する。
【0100】図13においては、時刻T0以前に、図1
1の全ての命令が命令追い越しバッファ10内に登録さ
れているものとする。
【0101】時刻T0において第1の命令のLOAD命
令が発行され、時刻T1において第6の命令のSUB命
令が発行され、時刻T2において第2の命令のADD命
令が発行されるものとする。
【0102】時刻T3で第3の命令のOR命令と第4の
命令のADD命令とはいずれもオペランドの依存関係が
解消していて発行可能な状態である。また、第3の命令
のOR命令と第4の命令のADD命令とでは使用する演
算器の種類が異なる。さらに、第4の命令のADD命令
は後続の第6の命令のSUB命令によって演算結果のS
07が命令シーケンスの上で上書きされることが判明し
ているので、第4の命令の演算結果を参照する第5の命
令のADD命令に演算器周辺の差し替えパスを使用して
オペランドを供給しつつ発行することを保証できれば、
必ずしも第4の命令の演算結果をレジスタファイルに書
き戻す必要はない。加えて、第3の命令と第4の命令と
は時刻T3ではそれぞれ片方のオペランドが差し替えパ
スで供給されるので、レジスタファイルのリードポート
が余っていることになる。
【0103】以上の諸点に基づき、発行命令選択手段3
0の制御により、時刻T3において、第3の命令のOR
命令が第1の発行命令として実際に発行され、同時に第
4の命令のADD命令が第2の発行命令として実際に発
行される。さらに、時刻T4では、時刻T3における第
2の発行命令である第4の命令(ADD命令)のXオペ
ランドを参照する第5の命令のADD命令が強制的に発
行される。
【0104】従来技術が適用された場合のタイムチャー
トである図12と本実施の形態(本発明)を適用した場
合のタイムチャートである図13とを比較してみれば、
本実施の形態を適用した場合には全処理が1サイクル分
はやく終了することが分かる。すなわち、本実施の形
態、ひいては本発明のパイプライン処理装置の性能向上
を確認することができる。
【0105】
【発明の効果】以上説明したように、本発明によると、
発行命令選択手段等を設ける上記のような構成をとるこ
とにより、従来技術によるよりも命令発行の効率を高め
ることができ、投資された演算器ハードウェア資源の性
能をより多く引き出すことが可能となり、パイプライン
処理装置を実現するプロセッサの実効性能の向上を達成
できるという効果が生じる。
【図面の簡単な説明】
【図1】本発明の一実施の形態に係るパイプライン処理
装置の構成を示すブロック図である。
【図2】図1中の発行命令選択手段の詳細な構成および
動作を説明するための図である。
【図3】図1中のレイテストセット手段の詳細な構成お
よび動作を説明するための図である。
【図4】図1中のオペランドレディセット手段の詳細な
構成および動作を説明するための図である。
【図5】図1中のエントリ登録手段の詳細な構成および
動作を説明するための図である。
【図6】図1中の命令追い越しバッファ内の各エントリ
の構成要素を詳細に示す図である。
【図7】図1に示すパイプライン処理装置および従来の
パイプライン処理装置の一例の全体構成を示すブロック
図である。
【図8】図1に示すパイプライン処理装置で取り扱われ
る命令のフォーマットを示す図である。
【図9】図1に示す本実施の形態に係るパイプライン処
理装置の具体的な動作を説明するための図(命令列の具
体例を示す図)である。
【図10】図1に示す本実施の形態に係るパイプライン
処理装置の具体的な動作を説明するための図(図9の命
令列に対応するタイムチャートを示す図)である。
【図11】図1に示す本実施の形態に係るパイプライン
処理装置および従来のパイプライン処理装置の具体的な
動作を説明するための命令列を示す図である。
【図12】従来のパイプライン処理装置の具体的な動作
を説明するためのタイムチャートを示す図である。
【図13】図1に示す本実施の形態に係るパイプライン
処理装置の具体的な動作を説明するためのタイムチャー
トを示す図である。
【符号の説明】
10 命令追い越しバッファ 20 エントリ登録手段 30 発行命令選択手段 40 Dステージデータ保持回路 50 オペランドレディセット手段 60 レイテストセット手段 70 Iステージデータ保持回路 101 エントリバリッドフラグ(Vフラグ) 102 ディスティネーションフィールド(DESTI
NATION) 103 Yオペランドレディフラグ(Y−rdy) 104 Zオペランドレディフラグ(Z−rdy) 105 Yオペランド後続参照エントリ情報(Y−op
後続参照エントリ情報) 106 Zオペランド後続参照エントリ情報(Z−op
後続参照エントリ情報) 130 Lフラグ 131 Yオペランド差し替えフラグ(Y−差替) 132 Zオペランド差し替えフラグ(Z−差替) 201 新規登録エントリ管理部 202 デコーダ 203,601 コンパレータ 213,214,218,301,302,304,3
05,306,602ANDゲート 303 エクスクルーシブORゲート 307 組合せ論理回路 308 ORゲート 309 命令選択手段A 310 命令選択手段B 311,501,502 セレクタ 312 発行命令調停回路 313 レジスタA 314 レジスタB

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】複数の演算器がレジスタファイルへのライ
    トポートを当該演算器間で共有しており差し替えパスが
    存在するパイプライン処理装置において、 複数のエントリからなり、各入力オペランドに対する差
    し替えフラグ,レディフラグ,および後続参照エントリ
    情報とエントリバリッドフラグ,ディスティネーション
    フィールド,およびLフラグとを各エントリに保持する
    命令追い越しバッファと、 Dステージデータ保持回路内の命令に関する各種の情報
    を前記命令追い越しバッファ内のエントリに登録し、当
    該エントリの命令とオペランドの依存関係を有する命令
    が登録されている前記命令追い越しバッファ内のエント
    リにその依存関係を示す情報を登録するエントリ登録手
    段と、 前記エントリ登録手段による命令の登録時に前記命令追
    い越しバッファ内の当該命令の登録エントリ中のLフラ
    グをセットし、当該命令と同一のレジスタに演算結果を
    書き込む先行命令の登録エントリ中のLフラグをリセッ
    トするレイテストセット手段と、 前記命令追い越しバッファ内の命令が発行された場合に
    当該発行命令と依存関係にある命令に対する前記命令追
    い越しバッファ内のエントリ中のオペランドレディフラ
    グをセットするオペランドレディセット手段と、 前記命令追い越しバッファに登録されている「入力オペ
    ランドがレディになっている命令群」からの発行命令の
    候補の選択,前記命令追い越しバッファに登録されてい
    る「後続命令により演算結果が上書きされることが判明
    している命令群」からの発行命令の候補の選択,および
    リソースの競合のチェックに基づいて発行命令を選択
    し、当該選択の際に、リソースの競合が生じない範囲で
    複数命令の同時発行を行い、「後続命令により演算結果
    が上書きされることが判明している命令群」の中から選
    択された命令を実際に発行した場合に当該命令の演算結
    果を参照する後続命令を強制的に遅滞なく発行する発行
    命令選択手段とを有し、 前記発行命令選択手段が、 前記命令追い越しバッファ内の各エントリ中の設定情報
    の参照に基づき、入力オペランドがレディになっている
    命令群の中から発行命令の候補となる命令を選択する第
    1の命令選択手段と、 前記命令追い越しバッファ内の各エントリ中の設定情報
    の参照に基づき、後続命令により演算結果が上書きされ
    ることが判明している命令群の中から発行命令の候補と
    なる命令を選択する第2の命令選択手段と、 前記第1の命令選択手段により選択された命令と前記第
    2の命令選択手段により選択された命令とのリソース競
    合チェックを行い、リソースの競合が発生しない場合に
    は当該両命令を同時に発行し、リソースの競合が発生す
    る場合には前記第1の命令選択手段よって選択された命
    令のみを発行し、前記第2の命令発行選択手段により選
    択された命令を実際に発行した場合には当該命令の演算
    結果を参照する後続命令を遅滞なく強制的に発行する発
    行命令調停手段とを備えること を特徴とするパイプライ
    ン処理装置。
  2. 【請求項2】前記命令追い越しバッファ内の各エントリ
    中の各入力オペランドに対する後続参照エントリ情報の
    対応するビット毎の論理和を生成することにより、当該
    各エントリに登録されている命令の演算結果を参照する
    命令が登録されているエントリを示す信号を生成する当
    該各エントリに対するORゲートと、前記第2の命令選
    択手段によって選択された命令が登録されているエント
    リに対する前記ORゲートの出力信号を選択するセレク
    タと、前記セレクタにより選択された「エントリを示す
    信号」に基づく情報を格納するエントリ情報レジスタ
    と、前記第2の命令選択手段により選択された命令が実
    際に発行されたことを点灯状態で示す命令発行情報レジ
    スタと、前記第1の命令選択手段,前記第2の命令選択
    手段,前記エントリ情報レジスタ,および前記命令発行
    情報レジスタからの情報に基づいて発行命令の選択を行
    う発行命令調停回路とを備える前記発行命令調停手段を
    有することを特徴とする請求項記載のパイプライン処
    理装置。
  3. 【請求項3】YオペランドおよびZオペランドの2つの
    入力オペランドを持つフォーマットの命令が取り扱わ
    れ、各エントリにエントリバリッドフラグ,ディスティ
    ネーションフィールド,Lフラグ,Yオペランド差し替
    えフラグ,Yオペランドレディフラグ,Zオペランド差
    し替えフラグ,Zオペランドレディフラグ,Yオペラン
    ド後続参照エントリ情報,およびZオペランド後続参照
    エントリ情報を保持する前記命令追い越しバッファを有
    することを特徴とする請求項1または請求項記載のパ
    イプライン処理装置。
  4. 【請求項4】YオペランドおよびZオペランドの2つの
    入力オペランドを持つフォーマットの命令が取り扱わ
    れ、各エントリにエントリバリッドフラグ,ディスティ
    ネーションフィールド,Lフラグ,Yオペランド差し替
    えフラグ,Yオペランドレディフラグ,Zオペランド差
    し替えフラグ,Zオペランドレディフラグ,Yオペラン
    ド後続参照エントリ情報,およびZオペランド後続参照
    エントリ情報を保持する前記命令追い越しバッファと、
    「YオペランドレディフラグおよびZオペランドレディ
    フラグが両方とも点灯していること」,「Yオペランド
    差し替えフラグおよびZオペランド差し替えフラグのい
    ずれか片方のみが点灯していること」,「Lフラグが点
    灯していないこと」,「エントリバリッドフラグが点灯
    していること」,および「Yオペランド後続参照エント
    リ情報およびZオペランド後続参照エントリ情報のうち
    点灯しているビットが高々1ビットであること」の条件
    を満たす前記命令追い越しバッファ内のエントリの命令
    の中から発行命令の候補となる命令を選択する前記第2
    の命令選択手段を備える前記発行命令選択手段とを有す
    ることを特徴とする請求項または請求項記載のパイ
    プライン処理装置。
  5. 【請求項5】Dステージデータ保持回路内のXオペラン
    ドデータの内容と前記命令追い越しバッファ内の各エン
    トリ中のディスティネーションフィールドの内容とが等
    しいか否かを判定する当該各エントリに対するコンパレ
    ータと、前記命令追い越しバッファ内のあるエントリへ
    の命令登録時に前記命令追い越しバッファ内の各エント
    リに対する前記コンパレータの出力と当該各エントリ中
    のエントリバリッドフラグの内容との論理積をLフラグ
    のリセット信号として出力する当該各エントリに対する
    ANDゲートとを含むレイテストセット手段を有するこ
    とを特徴とする請求項1,請求項2,請求項3,または
    請求項記載のパイプライン処理装置。
JP19004199A 1999-07-05 1999-07-05 パイプライン処理装置 Expired - Fee Related JP3473506B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19004199A JP3473506B2 (ja) 1999-07-05 1999-07-05 パイプライン処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19004199A JP3473506B2 (ja) 1999-07-05 1999-07-05 パイプライン処理装置

Publications (2)

Publication Number Publication Date
JP2001022579A JP2001022579A (ja) 2001-01-26
JP3473506B2 true JP3473506B2 (ja) 2003-12-08

Family

ID=16251384

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19004199A Expired - Fee Related JP3473506B2 (ja) 1999-07-05 1999-07-05 パイプライン処理装置

Country Status (1)

Country Link
JP (1) JP3473506B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4985452B2 (ja) * 2008-02-14 2012-07-25 エヌイーシーコンピュータテクノ株式会社 ベクトル処理装置

Also Published As

Publication number Publication date
JP2001022579A (ja) 2001-01-26

Similar Documents

Publication Publication Date Title
US6330661B1 (en) Reducing inherited logical to physical register mapping information between tasks in multithread system using register group identifier
US10700968B2 (en) Optimized function assignment in a multi-core processor
EP1320031A2 (en) Apparatus for branch prediction
EP1236092A1 (en) Branch instruction for processor
JP2000148489A (ja) コンピュ―タシステム
US20050076189A1 (en) Method and apparatus for pipeline processing a chain of processing instructions
KR102524565B1 (ko) 로드 스토어 유닛들을 바이패싱하여 스토어 및 로드 추적
JP2004158018A (ja) レジスタ・リネーム回路の半導体フロアプランのレイアウト・システム
JP2000259412A (ja) ストア命令転送方法およびプロセッサ
KR20160031503A (ko) 마이크로프로세서에서의 선택적 리네이밍을 위한 방법 및 장치
JPH06259253A (ja) データプロセッサおよびその動作方法
JP3919802B2 (ja) プロセッサ、およびプロセッサにおいて命令演算をスケジューリングするための方法
US6862676B1 (en) Superscalar processor having content addressable memory structures for determining dependencies
GB2540940A (en) An apparatus and method for transferring a plurality of data structures between memory and one or more vectors of data elements stored in a register bank
US7203821B2 (en) Method and apparatus to handle window management instructions without post serialization in an out of order multi-issue processor supporting multiple strands
US11507379B2 (en) Managing load and store instructions for memory barrier handling
JPH0673105B2 (ja) 命令パイプライン方式のマイクロプロセッサ
US7600102B2 (en) Condition bits for controlling branch processing
JP3473506B2 (ja) パイプライン処理装置
JP2000163265A (ja) 命令発行回路
JP3497087B2 (ja) 命令制御装置及びその方法
US6922760B2 (en) Distributed result system for high-performance wide-issue superscalar processor
US6266761B1 (en) Method and system in an information processing system for efficient maintenance of copies of values stored within registers
US20040006686A1 (en) Processor and instruction control method
JP5392810B2 (ja) 命令発行制御装置及び命令発行制御方法

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080919

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080919

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090919

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090919

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100919

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees