JPH08221271A - パイプラインプロセッサ - Google Patents

パイプラインプロセッサ

Info

Publication number
JPH08221271A
JPH08221271A JP7305547A JP30554795A JPH08221271A JP H08221271 A JPH08221271 A JP H08221271A JP 7305547 A JP7305547 A JP 7305547A JP 30554795 A JP30554795 A JP 30554795A JP H08221271 A JPH08221271 A JP H08221271A
Authority
JP
Japan
Prior art keywords
location
instruction
operator
register
processor
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
JP7305547A
Other languages
English (en)
Inventor
Pierre Coulomb
ピエール・クーロム
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.)
SGS THOMSON MICROELECTRONICS
STMicroelectronics SA
Original Assignee
SGS THOMSON MICROELECTRONICS
SGS Thomson Microelectronics SA
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 SGS THOMSON MICROELECTRONICS, SGS Thomson Microelectronics SA filed Critical SGS THOMSON MICROELECTRONICS
Publication of JPH08221271A publication Critical patent/JPH08221271A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4494Execution paradigms, e.g. implementations of programming paradigms data driven

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)

Abstract

(57)【要約】 【課題】 特に簡単な構造を有する、遅延の補償を可能
にするパイプラインプロセッサを提供する。 【解決手段】 この発明は、演算子にそれぞれ割り当て
られたステップを通して初期の状態から実行可能な状態
へ、実行すべき各命令を展開させるためのいくつかの演
算子を含むパイプラインプロセッサに関する。これは、
展開の第1のステップで第1の演算子によって与えられ
る命令を受けるロケーションを有するメモリテーブルを
含み、ほかの演算子はテーブルに接続されてそのロケー
ション内でテーブルの各命令を展開させる。

Description

【発明の詳細な説明】
【0001】
【発明の分野】この発明は、実行すべき各命令を符号化
された状態から実行された状態へ展開させるためのいく
つかの演算子を含むプロセッサであって、演算子が展開
の連続した状態でそれぞれの命令を同時に処理する、パ
イプラインプロセッサに関する。
【0002】
【関連技術の検討】従来のパイプラインプロセッサは一
連の演算子を含み、その各々1つには、展開のある点で
命令を記憶するためのレジスタが先行する。通常は、各
クロックサイクルごとに、レジスタにおいて処理される
命令が次の演算子に与えられ、同時に、前の演算子は処
理されるべき次の命令をレジスタに与える。しかしなが
ら、まだ利用できない結果を演算子が必要とする場合な
どに、演算子は命令を処理するのに1サイクル以上かか
ることもある。このような状況では、パイプラインプロ
セッサはブロックされ、遅延が補償できない。
【0003】1992年1月刊行の「IEEEジャーナ
ル オブ ソリッドステートサーキット」(the IEEE J
ournal of Solid-State Circuits)第27巻第1号の記
事「試験的なシングルチップデータフローCPU」
(“An Experimental Single-Chip Data Flow CPU ”)
は、遅延の補償を可能にする試験的なパイプラインプロ
セッサを開示する。これは特に、異なった型の命令に割
り当てられ、命令を同時に実行できるいくつかの実行ユ
ニットを実行演算子である最後の演算子に設けることに
よって達成できる。各実行演算子に対して、命令はそれ
ぞれのバッファメモリで待機する。待機命令は順番が来
ていなくても可能な限り早く実行され、プロセッサに到
着したのとは異なる順序で命令が実行される。
【0004】この試験的なプロセッサは非常に効率的で
あるが、この効率を達成するのは非常に複雑であり、か
つエネルギを消費する。さらに、プロセッサの割込の管
理は難問である。実際に、命令が順に実行されないの
で、割込が起こったときにマイクロプロセッサの正確な
状態を判断するのは不可能とは言わないまでも困難であ
る。実際には、プロセッサの状態を定期的にセーブし、
割込が起こると、プロセッサの状態が前回に状態がセー
ブされたときのものとほぼ同じであると考える「不的確
な割込」機構が用いられる。
【0005】
【発明の概要】この発明の目的は、特に簡単な構造を有
する、遅延の補償を可能にするイプラインプロセッサを
提供することである。
【0006】この発明の別の目的は、正確な割込機構を
有するこのようなプロセッサを提供することである。
【0007】これらの目的および他の目的を達成するた
めに、この発明は、演算子にそれぞれ割り当てられたス
テップを通して初期の状態から実行可能な状態へ、実行
すべき各命令を展開させるためのいくつかの演算子を含
み、メモリテーブルを含み、展開の第1のステップで第
1の演算子によって与えられる命令を受けるロケーショ
ンを有し、ほかの演算子はテーブルに接続されて、その
ロケーション内でテーブルの各命令を展開させる、パイ
プラインプロセッサを提供する。
【0008】この発明の実施例に従うと、各ロケーショ
ンは、各演算子がそのロケーションの命令を処理した後
に更新して、命令を処理できることを次の演算子に示す
命令状態フィールドを含み、最後の演算子は、ボイド状
態でフィールドを更新してロケーションが新しい命令を
自由に受けられることを最初の演算子に示す。
【0009】この発明の実施例に従うと、各演算子はロ
ケーションの状態フィールドを検査し、前記フィールド
が演算子に対応する状態を示すと、ロケーションの命令
を処理し、次のロケーションの状態フィールドを検査す
る。
【0010】この発明の実施例に従うと、テーブルは各
演算子に対して別個のアクセスを有する多重アクセスメ
モリである。
【0011】この発明の実施例に従うと、演算子は、メ
モリから読出し、かつデコードするためのユニット、作
業レジスタで取出されたオペランドを割り当てるための
ユニット、および少なくとも1つの実行ユニットを連続
して含む。
【0012】この発明の実施例に従うと、各作業レジス
タはーキングフィールドを有し、あるテーブルロケーシ
ョンで見出される命令が、マレジスタに記憶されるべき
結果を与えると、オペランド割当ユニットがこのマーキ
ングフィールドにこのロケーションの番号をマークし、
実行ユニットはロケーション番号のついた結果を与え、
この番号で前記結果が記憶されるべきであるレジスタが
識別される。
【0013】この発明の実施例に従うと、レジスタはマ
ーキングフィールドの内容によってアドレスされる内容
アクセスメモリを構成する。
【0014】この発明の実施例に従うと、実行ユニット
は作業レジスタに結果を与えると作業レジスタのマーキ
ングを削除するので、マーキングがあるか否かでオペラ
ンド割当ユニットにレジスタの内容が有効であるかどう
かを伝える。
【0015】この発明の実施例に従うと、実行ユニット
はあるテーブルロケーションに見られる命令を実行する
間、そのロケーションの状態フィールドを待機状態に設
定し、実行が終わるとボイド状態に設定する。
【0016】この発明についての上述の目的、他の目
的、特徴および利点は、添付の図面と関連して非限定的
な好ましい実施例の次の説明において詳細に表わされ
る。
【0017】
【詳細な説明】図1を参照すると、この発明に従うプロ
セッサは、たとえば3つのパイプライン処理演算子を含
む。演算子10は、メモリ12内の連続した命令を取出
し、それらをデコードするユニットである。実際には、
命令はしばしば、スペースを節約するために圧縮された
形状でメモリに記憶される。ユニット10によってデコ
ードされる命令は一般に、行なわれるべきオペレーショ
ンの型を識別するオペレーションコードと、作業レジス
タ14に対応する2つのオペランド識別子と、オペレー
ションの結果のための格納先(作業レジスタ、またはメ
モリ12のアドレス)とを含む。
【0018】第2の演算子はオペランド割当ユニット1
6である。このユニット16は、作業レジスタの識別子
をこれのレジスタに含まれる値(オペランド)と置換え
るために用いられる。
【0019】第3の演算子は実行ユニット18である。
これは各命令を実行可能な形状(オペレーションコード
およびオペランド)で受け、それを直接実行するか、ま
たは、必要であればそれを、複雑な命令を処理すること
を目的とする特殊実行ユニット20での実行のために送
る。たとえば、ユニット18はメモリ12へのアクセス
命令を実行して前記メモリおよびレジスタ14の間のデ
ータを交換し、ユニット20は算術演算または論理演算
を実行する。
【0020】この発明に従うと、演算子は、処理される
一連の命令をそのロケーションに記憶するテーブル22
と接続される。テーブル22における各命令はロケーシ
ョンに割当られ、連続した演算子がそれを次々と変更し
て、最後の演算子(実行ユニット18または20)によ
って利用可能な状態へ命令を展開させる間、そのロケー
ションに留まる。
【0021】テーブル22におけるロケーションには、
図1の0からnまでそれぞれの番号(アドレス)が割り
当てられる。各ロケーションはオペレーションフィール
ドと、2つのオペランドフィールドと、格納先フィール
ドと、ロケーションにおける命令が展開のどのステップ
にあるかを示す状態フィールドとを含む。
【0022】テーブル22はあらゆる演算子が同時にア
クセスできるメモリである。多重アクセスメモリ22を
用いることは、この場合では複雑な取扱いプロセスを含
まない。これは演算子が同じデータを決して同時にはア
クセスしないからである。その上、演算子はロケーショ
ンの部分にアクセスするだけなので、これが物理アクセ
スラインの数を減少する。
【0023】最初は、あらゆる演算子が第1のボイドロ
ケーション、たとえばロケーション0に、それぞれのア
ドレスバスに番号0を与えることでアクセスするように
なっている。演算子の各々は選択されたロケーション0
の状態フィールドを受けて分析する。
【0024】ロケーションの状態は「ボイド」であり、
これがデコードユニット10を活性化する。このデコー
ドユニットはメモリ12から、命令ポインタiptrに
よって示される命令を読出す。ユニット10は命令をデ
コードし、ロケーション0の第1のフィールドにオペレ
ーションコードを与え、必要であれば、1つまたは2つ
のレジスタ識別子と格納先とを与える。演算子10はロ
ケーション0の「ボイド」状態を「デコード」状態と置
換える。
【0025】次のクロックサイクルでは、演算子10は
ロケーション1を選択して、状態フィールドを分析し、
状態が「ボイド」であるならば、上述のオペレーション
を再開する。
【0026】ロケーション0の「デコード」状態はオペ
ランド割当ユニット16を活性化する。ロケーション0
のオペランドフィールドがレジスタ識別子を含むなら
ば、この識別子は演算子16に伝送され、演算子16
は、対応するレジスタに含まれる値(オペランド)を取
り出し、それをレジスタ識別子があったロケーション0
のオペランドフィールドに書込む。演算子16はロケー
ション0の「デコード」状態を「オペランド取出し」状
態と置換える。
【0027】次のサイクルでは、演算子16はロケーシ
ョン1を選択して、その状態フィールドを分析し、フィ
ールドが「デコード」状態にあれば、上述されたオペレ
ーションを再開する。
【0028】ロケーション0の「オペランド取出し」状
態は、実行ユニット18を活性化し、実行ユニット18
はオペレーションコードおよびオペランドを読出して対
応する命令を実行するか、または、命令が複雑であれ
ば、それを特殊実行ユニット20に送る。
【0029】次の命令サイクルでは、実行ユニット18
はロケーション1を選択し、その状態フィールドを分析
する。状態が「オペランド取出し」であれば、命令は上
述されたように処理される。
【0030】ユニット18または20が命令を実行し始
めるとき、対応するロケーションの状態には「ボイド」
が割り当てられ得る。しかしながら、命令を実行するこ
とで割込が生ずるならば、命令は簡単には位置を突き止
められない。
【0031】好ましくは、割込を起こした命令のロケー
ションを割り出すために、演算子18は実行される命令
に対応するロケーションを「待機」状態に設定する。こ
の「待機」状態は、命令の実行が成功に終わるとすぐに
「ボイド」状態と置換えられる。命令を実行することで
割込が生じると、この命令は「待機」状態にあるロケー
ションによって簡単に識別される。
【0032】とにかく、割込に対処することは簡単であ
り、これは命令がプロセッサへ到着する順序で実行され
るからである。
【0033】演算子はテーブル22で循環的に作用す
る。すなわち、演算子はテーブルの最後のロケーション
を処理すると、最初のロケーションを選択する。
【0034】実施例に従うと、対応する作業レジスタ1
4に命令結果を与える特定の機構が用いられる。オペラ
ンド割当ユニット16が活性化しているときで、かつロ
ケーションの格納先フィールドがレジスタ識別子を含む
ならば、このレジスタにはロケーション番号がマークさ
れる。したがって、レジスタ14はマーキングフィール
ドを有し、このマーキングフィールドの内容を介してア
クセス可能である。ユニット18または20がレジスタ
14に命令の結果を与えるとき、このユニットは対応す
るロケーション番号をも与え、こうしてマーキングフィ
ールドがこの番号を含むレジスタを選択する。この機構
は、レジスタ14に結果を書込むのに特に簡単であるこ
とがわかる。
【0035】さらに、オペランド割当ユニット16がレ
ジスタ14の値を取出すとき、この値は更新されている
べきである。更新されていない値を取出すのを回避する
ために、演算子18または20によって結果が発生する
とすぐに、それが記憶されているレジスタは「有効」状
態でマークされる。こうして、演算子16はレジスタの
マークを点検し、値を取出す前にそれが「有効」になる
のを待つ。上述の機構で、「有効」マークはロケーショ
ン番号マークがないだけである。
【0036】この発明に従うプロセッサが遅延の補償を
いかに可能にしているかを例示するのに用いられる図2
は、一連の命令の例を処理する間にテーブル22の内容
を展開するいくつかのステップを示す。ステップはa)
からh)まで番号を付けられ、連続的なクロックサイク
ルに対応する。テーブルの内容の隣には、3つの作業レ
ジスタR1からR3までに対応する内容が示されてい
る。
【0037】サイクルa)において、ロケーション0は
デコードユニット10から、レジスタR1およびR2の
内容を乗算し、結果をレジスタR3にロードする命令を
受ける。ロケーション0は「デコード」状態にあり、ほ
かのロケーションは「ボイド」状態にある。レジスタR
1からR3はそれぞれ値A、BおよびCを含む。
【0038】サイクルb)において、オペランド割当ユ
ニット16はロケーション0で、レジスタ識別子R1お
よびR2をこれらのレジスタに含まれる値AおよびBと
置換する。ロケーション0は「オペランド取出し」状態
に設定され、ロケーションの番号0は、乗算の結果を受
ける格納先レジスタR3をマークする。
【0039】同時に、ロケーション1はデコードユニッ
ト10から、レジスタR1およびR3の内容を加算し、
結果をレジスタR1にロードする命令を受ける。ロケー
ション1は「デコード」状態に設定される。
【0040】サイクルc)において、ロケーション0の
命令(AおよびBを乗算する)はユニット18を介して
実行ユニット20へ伝送され、ロケーション0は「待
機」状態に設定される。乗算は相対的に複雑であるの
で、たとえば2サイクルかかる。したがって、サイクル
c)において、格納先レジスタR3の内容は変更されな
い。
【0041】サイクルb)においてデコードされている
ロケーション1の加算命令は、オペランドのうちの1つ
がまだ更新されていないレジスタR3の値であるために
オペランド割当ユニット16によってまだ処理できず、
これは、レジスタR3が(番号0で)マークされている
事実によって示される。
【0042】デコードユニット10はロケーション2
に、レジスタR1およびR2の内容を加算し、結果をレ
ジスタR1にロードする命令を与える。ロケーション2
は「デコード」状態に置かれる。
【0043】サイクルd)において、実行ユニット20
はロケーション0の乗算の結果をレジスタR3に与え
る。レジスタR3のマーキング0は削除され、レジスタ
R3の内容が有効であることをオペランド割当ユニット
16に示す。こうして、ロケーション1におけるレジス
タR1およびR3の識別子は、対応する値AおよびAB
によって直ちに置換えられる。ロケーション1は「オペ
ランド取出し」状態に設定され、レジスタR1は番号1
でマークされて、このレジスタがロケーション1の加算
の結果を受けることを示す。
【0044】ロケーション2の命令はサイクルc)での
状態に対して変更されないが、これは、レジスタR1に
含まれ、まだ有効ではないオペランドを必要とするから
である。
【0045】デコードユニット10はロケーション3
に、レジスタR1の内容をアドレスad1に転送する命
令を与える。ロケーション3は「デコード」状態に設定
される。
【0046】サイクルe)において、ロケーション0の
乗算が終了したので、このロケーションは実行ユニット
20によって「ボイド」状態に設定される。
【0047】テーブル22のロケーションは循環的に用
いられ、原則として、デコードユニット10はロケーシ
ョン0に新しい命令を直ちに書込む。しかしながら、次
の命令をデコードするにはさらなるサイクルがかかるこ
とがここで想定されるので、サイクルe)においてロケ
ーション0には命令が書込まれない。
【0048】ロケーション1の加算命令は実行ユニット
20に送られる。このロケーション1は「待機」状態に
設定される。結果A+ABはレジスタR1に書込まれ、
レジスタのマーキング1が削除される。
【0049】ロケーション2において、レジスタR1お
よびR2の識別子は、レジスタの有効な内容A+ABお
よびBによって置換えられる。ロケーション2は「オペ
ランド取出し」状態に設定され、レジスタR1は番号2
でマークされる。これは、このレジスタR1がロケーシ
ョン2の加算の結果を受けるからである。
【0050】ロケーション3の転送命令はサイクルd)
での状態に対して変更されないが、これは、レジスタR
1に含まれ、まだ有効ではない(これはマークされてい
るレジスタR1によって示される)オペランドを必要と
するからである。
【0051】サイクルf)において、ロケーション2の
加算は実行ユニット20に送られ、実行ユニットは結果
A+AB+BをレジスタR1に書込む。レジスタのマー
キング2は削除される。したがって、ロケーション3の
書込命令によって必要とされるオペランドは利用可能に
なり、オペランド割当ユニット16によってロケーショ
ン3に与えられる。
【0052】同時に、デコードユニット10はロケーシ
ョン0に、アドレスad2の内容をレジスタR1に転送
する命令を与える。
【0053】このサイクルf)において、サイクルc)
の乗算命令の実行遅延はロケーション0の命令のデコー
ド遅延によって補償される。このように補償されたこと
は、テーブルでのあらゆる命令が展開の異なったステッ
プにあるという事実から確かめることができる。この補
償は、テーブルが、プロセスをブロックすることなしに
同じ展開ステップでいくつかの命令を含むことができる
という事実によって明確に認められる。
【0054】サイクルg)において、ロケーション3の
転送命令は実行ユニット18に送られる。レジスタR1
は番号0でマークされ、これはロケーション0の転送命
令の結果がレジスタR1にロードされるべきだからであ
る。
【0055】サイクルh)において、ロケーション0の
転送命令は実行ユニット18に送られ、この実行ユニッ
トはメモリの値Dを取出し、それをレジスタR1に書込
む。レジスタのマーキング0は削除される。
【0056】飛越し命令はデコードユニット10によっ
て処理され、テーブル22へは入力されない。飛越し命
令の処理が含むのは、実行されるべき次の命令を示すよ
うに命令ポインタiptrを変更することだけである。
この変更は少なくとも1クロックサイクルかかる。すな
わち、これが、デコードされ、かつテーブルへ入力され
る前に命令が1サイクルだけ遅延し得る理由の1つであ
る。飛越し命令による遅延は実際、図2の例に示される
ように、オペランドを割り当てる際または実行する際に
うまく遅延を補償することを可能にする偽遅延である。
【0057】テーブル22におけるロケーションの数は
命令処理ステップの数と等しいように選択され、補償さ
れるべきである遅延サイクルの数だけ増加する。
【0058】この発明は3ステップのパイプラインプロ
セッサに関して記述されているが、ステップの数はいく
らであってもよい。
【0059】もちろん、この発明には当業者には容易に
想起されるようなさまざまな変化、変更および改良が可
能である。このような変化、変更および改良はこの開示
の一部であると意図され、この発明の精神および範囲内
にあると意図される。したがって、上述の記述は例とし
てのみなされたものであって、限定を加えるようには意
図されない。この発明は前掲の特許請求の範囲およびそ
の均等物において規定されるとおりにのみ限定される。
【図面の簡単な説明】
【図1】この発明に従うパイプラインプロセッサの実施
例を概略的および部分的に示す図である。
【図2】この発明に従うプロセッサによる、一連の命令
の処理を例によって示す図である。
【符号の説明】
10 デコードユニット 12 メモリ 14 作業レジスタ 16 オペランド割当ユニット 18 実行ユニット 20 特殊実行ユニット 22 メモリテーブル

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 演算子にそれぞれ割り当てられたステッ
    プを通して初期の状態から実行可能な状態へ、実行すべ
    き各命令を展開させるためのいくつかの演算子(10、
    16、18)を含み、展開の第1のステップで第1の演
    算子(10)によって与えられる命令を受けるロケーシ
    ョンを有するメモリテーブル(22)を含み、ほかの演
    算子は接続されて、そのロケーション内でテーブルの各
    命令を展開させる、パイプラインプロセッサ。
  2. 【請求項2】 各ロケーションは、ロケーションの命令
    を処理した後に各演算子が更新して、命令を処理できる
    ことを次の演算子に示す命令状態フィールドを含み、最
    後の演算子は、ロケーションが新しい命令を自由に受け
    られることを最初の演算子に示すボイド状態でフィール
    ドを更新する、請求項1に記載のプロセッサ。
  3. 【請求項3】 各演算子はロケーションの状態フィール
    ドを検査し、前記フィールドが演算子に対応する状態を
    示すと、ロケーションの命令を処理し、次のロケーショ
    ンの状態フィールドを検査する、請求項2に記載のプロ
    セッサ。
  4. 【請求項4】 テーブル(22)は各演算子に対して別
    個のアクセスを有する多重アクセスメモリである、請求
    項1に記載のプロセッサ。
  5. 【請求項5】 演算子は、メモリ(12)において読出
    し、かつデコードするためのユニット(10)、作業レ
    ジスタ(14)に取出されたオペランドを割り当てるた
    めのユニット(16)、および少なくとも1つの実行ユ
    ニット(18、20)を連続して含む、請求項2に記載
    のプロセッサ。
  6. 【請求項6】 各作業レジスタは、テーブルロケーショ
    ンに見出される命令が、レジスタに記憶されるべき結果
    を与えると、オペランド割当ユニットが前記ロケーショ
    ンの番号をマークするマーキングフィールドを有し、実
    行ユニット(18、20)は結果に、前記結果が記憶さ
    れるべきであるレジスタを識別するロケーション番号を
    与える、請求項5に記載のプロセッサ。
  7. 【請求項7】 レジスタはマーキングフィールドの内容
    によってアドレスされる内容アクセスメモリを形成す
    る、請求項6のに記載のプロセッサ。
  8. 【請求項8】 実行ユニット(18、20)は作業レジ
    スタに結果を与えると作業レジスタのマーキングを削除
    するので、マーキングの存在または不在がオペランド割
    当ユニット(16)にレジスタの内容が有効であるかど
    うかを示す、請求項6に記載のプロセッサ。
  9. 【請求項9】 実行ユニット(18、20)はテーブル
    ロケーションに見出される命令を実行する間、ロケーシ
    ョンの状態フィールドを待機状態に設定し、実行が終わ
    るとボイド状態に設定する、請求項6に記載のプロセッ
    サ。
JP7305547A 1994-11-28 1995-11-24 パイプラインプロセッサ Pending JPH08221271A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9414478A FR2727538A1 (fr) 1994-11-28 1994-11-28 Processeur pipeline
FR9414478 1994-11-28

Publications (1)

Publication Number Publication Date
JPH08221271A true JPH08221271A (ja) 1996-08-30

Family

ID=9469395

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7305547A Pending JPH08221271A (ja) 1994-11-28 1995-11-24 パイプラインプロセッサ

Country Status (3)

Country Link
EP (1) EP0715255A1 (ja)
JP (1) JPH08221271A (ja)
FR (1) FR2727538A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100357932C (zh) * 2006-06-05 2007-12-26 中国人民解放军国防科学技术大学 流处理器中降低数据访问延迟的方法

Also Published As

Publication number Publication date
FR2727538A1 (fr) 1996-05-31
EP0715255A1 (fr) 1996-06-05
FR2727538B1 (ja) 1997-02-14

Similar Documents

Publication Publication Date Title
EP0087978B1 (en) Information processing unit
US8230144B1 (en) High speed multi-threaded reduced instruction set computer (RISC) processor
US5404552A (en) Pipeline risc processing unit with improved efficiency when handling data dependency
JPH07281896A (ja) 情報処理装置
US7139899B2 (en) Selected register decode values for pipeline stage register addressing
US5442761A (en) Method by which packet handler inserts data load instructions in instruction sequence fetched by instruction fetch unit
US7337304B2 (en) Processor for executing instruction control in accordance with dynamic pipeline scheduling and a method thereof
JP2003058381A (ja) プログラムによる例外処理設定を可能にしたプロセッサ
JPH08221271A (ja) パイプラインプロセッサ
US5784606A (en) Method and system in a superscalar data processing system for the efficient handling of exceptions
JP2000181707A (ja) 命令制御装置及びその方法
JPH07219766A (ja) 演算処理装置
US5828861A (en) System and method for reducing the critical path in memory control unit and input/output control unit operations
JP2894438B2 (ja) パイプライン処理装置
JP2814683B2 (ja) 命令処理装置
JP3625586B2 (ja) プロセッサの命令実行制御システム
JP3147884B2 (ja) 記憶装置及び情報処理装置
JP3239042B2 (ja) マイクロコンピュータ
JP2629479B2 (ja) 情報処理装置
JPH11249907A (ja) マイクロコンピュータ
JPS6149695B2 (ja)
JPH08305564A (ja) マイクロコンピュータ
JP2000194554A (ja) 演算処理装置
JPH0659916A (ja) 命令プリフェッチ装置
JPH04167027A (ja) 並列演算処理装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19971007