JPH06236272A - スーパースカラ・プロセッサ・システムの同期化効率を向上させる方法およびシステム - Google Patents

スーパースカラ・プロセッサ・システムの同期化効率を向上させる方法およびシステム

Info

Publication number
JPH06236272A
JPH06236272A JP5319296A JP31929693A JPH06236272A JP H06236272 A JPH06236272 A JP H06236272A JP 5319296 A JP5319296 A JP 5319296A JP 31929693 A JP31929693 A JP 31929693A JP H06236272 A JPH06236272 A JP H06236272A
Authority
JP
Japan
Prior art keywords
source
instruction
operands
destination
instructions
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
JP5319296A
Other languages
English (en)
Other versions
JP2620505B2 (ja
Inventor
A Curley James
ジェームズ・エイ・カーレ
Chin-Cheng Kau
カウ・チン・チェン
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH06236272A publication Critical patent/JPH06236272A/ja
Application granted granted Critical
Publication of JP2620505B2 publication Critical patent/JP2620505B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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, look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3838Dependency mechanisms, e.g. register scoreboarding

Abstract

(57)【要約】 【目的】 複数のソース・オペランド及び宛先オペラン
ドをもつ命令を含むスーパースカラ・プロセッサ・シス
テムの命令同期の効率を上げる方法およびシステムを提
供すること。 【構成】 各命令用の2個の宛先オペランドによって2
個のソース・オペランドをインタロックすることのでき
る、データ依存性インタロック回路を使用する。3個以
上のソース・オペランドを有する命令は、最初の2個の
ソース・オペランドについて、既存のデータ依存性イン
タロック回路を使用してディスパッチ段階でインタロッ
クされる。その後はデータ依存性インタロック回路を使
用して最初の2個のソース・オペランドについてデータ
依存性ハザードが解消され、その命令に先行するすべて
の命令が完了しそのために第3のソース・オペランドに
ついてのデータ依存性ハザードがなくなった後に始め
て、その命令がディスパッチされる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、全般的に、改良された
データ処理システムに関し、詳しくは、スーパースカラ
・プロセッサ・システムの命令同期化効率の向上に関す
る。さらに詳細には、本発明は、データ依存性インタロ
ック回路を使用してインタロックできるよりも多くのソ
ース・オペランドを有する命令を含むスーパースカラ・
プロセッサ・システムのデータ依存性ハザードを解消す
るための改良された方法およびシステムに関する。
【0002】
【従来の技術】現代の最新データ処理システムの設計者
は、絶えずそのようなシステムの性能面の向上に努めて
いる。データ処理システム効率を向上させる1つの技法
は、サイクル・タイムを短くし、1命令当たりサイクル
(CPI)率を下げることである。このような技法を拡
張データ処理システムに巧みに応用した例に、インター
ナショナル・ビジネス・マシーンズ・コーポレーション
(IBM)のRISCシステム/6000(RS/60
00)コンピュータがある。RS/6000システム
は、数値中心の科学技術の応用分野およびマルチユーザ
商業環境でうまく機能するように設計されている。RS
/6000プロセッサは、スーパースカラ実施態様を使
用する。すなわち、複数の命令が同時に発行され実行さ
れる。
【0003】複数の命令を同時に発行して実行するに
は、高命令帯域幅で同時に実行できる独立した機能ユニ
ットが必要である。RS/6000システムは、本来的
にパイプライン式の別々のブランチ処理ユニット、固定
小数点処理ユニット、および浮動小数点処理ユニットを
使ってこれを実現している。そのようなシステムにおけ
るプロセッサのパイプライン式という性質にかんがみ、
後続命令をディスパッチする前に、後続命令の実行に必
要な特定の命令の結果が得られるように配慮しなければ
ならない。そのようないわゆる「データ依存性ハザー
ド」が発生しないようにするための1つの技法は、特定
の命令のディスパッチを、たとえば、すべての先行命令
がディスパッチされるまで制限することである。この技
法によってデータ依存性ハザードは発生しなくなるが、
この技法を用いて発生する性能上の不利益は大きい。
【0004】そのため、現代のスーパースカラ・データ
処理システムは、しばしばいわゆる「データ依存性イン
タロック回路」を使用している。そのような回路は、命
令ディスパッチ回路と協調して動作し、たとえばその命
令の正しい実行に必要な、先行命令の結果が得られる時
まで命令をディスパッチしないようにする論理機構を含
む。データ依存性インタロック回路を実現するのに必要
な論理の量は、各命令内のソース・オペランドの数に正
比例する。ソース・オペランドとは、命令の実行に使用
するために、レジスタ・ファイル内のオペランドにアク
セスするのに使用される、命令内のフィールドである。
【0005】データ依存性インタロック回路を用いる
と、上述の大きな性能上の不利益を発生させずにデータ
依存性ハザードを回避することができるが、多数のソー
ス・オペランドおよび宛先オペランドを含む命令用のデ
ータ依存性インタロック回路の設計および実施は極めて
複雑になる。既存のスーパースカラ・データ処理システ
ムは、2個のソース・オペランドを含む命令をしばしば
使用する。しかし、これらのシステムの複雑さが増大す
るにつれて、3個のソース・オペランド命令を使用する
方法がより一般的になりつつある。3N個のソース・オ
ペランドと2N個の宛先オペランドを含むことが可能な
N個の命令を処理することのできるデータ依存性インタ
ロック回路は、きわめて扱いにくい。
【0006】したがって、既存のデータ依存性インタロ
ック回路を使用してインタロックできるよりも多くのソ
ース・オペランドが含まれる命令を、効率的に同期化で
きるようにする方法およびシステムが必要なことは明白
である。
【0007】
【発明が解決しようとする課題】本発明の一目的は、改
良されたデータ処理システムを提供することである。
【0008】本発明の他の目的は、スーパースカラ・プ
ロセッサ・システムの命令同期化効率を上げるための改
良された方法およびシステムを提供することである。
【0009】本発明の他の目的は、データ依存性インタ
ロック回路を使用してインタロックできるよりも多くの
ソース・オペランドを有する命令を含むスーパースカラ
・プロセッサ・システムのデータ依存性ハザードを解消
するための改良された方法およびシステムを提供するこ
とである。
【0010】
【課題を解決するための手段】前述の目的は、以下に述
べるようにして達成される。複数の命令を同時にディス
パッチすると、ある命令の結果が第2の命令を実行する
ために必要になるので、ソース宛先間のデータ依存性の
問題が発生する。データ依存性ハザードは、各命令のデ
ィスパッチを、先行する命令が完了することによって可
能なすべてのデータ依存性が解決されるまで、禁止する
ことによって解消することができる。しかし、この技法
を使用すると、命令ディスパッチ効率が大幅に下がる。
データ依存性インタロック回路を使用して、データ依存
性ハザードを解消することができる。しかし、インタロ
ックされるソースおよび宛先の数が増すにつれて、その
ような回路の複雑さが劇的に増大する。本発明の方法お
よびシステムは、各命令用の2個の宛先オペランドによ
って2個のソース・オペランドをインタロックすること
のできる、データ依存性インタロック回路を使用する。
3個以上のソース・オペランドを有する命令は、最初の
2個のソース・オペランドについて、既存のデータ依存
性インタロック回路を使用してディスパッチ段階でイン
タロックされる。その後は、データ依存性インタロック
回路を使用して最初の2個のソース・オペランドについ
てデータ依存性ハザードが解消され、その命令に先行す
るすべての命令が完了しそのため第3のソース・オペラ
ンドについてのデータ依存性ハザードがなくなった後に
始めて、命令がディスパッチされる。このようにして、
3個のソース・オペランドを含む命令を、データ依存性
インタロック回路を大幅に増加する必要もなく、システ
ム効率がわずかに低下するだけで、同期化することがで
きる。
【0011】本発明の前記その他の目的、特徴、および
利点は、以下の詳細な説明において明らかになろう。
【0012】
【実施例】図面、特に図1を参照すると、本発明の方法
およびシステムを実施するために利用できるスーパース
カラ・データ処理システム10の高水準ブロック図が示
されている。図のように、スーパースカラ・データ処理
システム10は、データ、命令などを記憶するために利
用されるメモリ18を含む。メモリ18内に記憶される
データまたは命令には、当業者に周知の方法でキャッシ
ュ/メモリ・インタフェース20を使用してアクセスす
ることが好ましい。キャッシュ・メモリ・システムのサ
イズ設定および利用法は、データ処理技術分野内の周知
の一部門であり、本発明では取り上げない。しかし、現
代の連想式キャッシュ技術を使用することにより、キャ
ッシュ/メモリ・インタフェース20内に一時的に記憶
されたデータを利用して高率のメモリ・アクセスを達成
できることが、当業者には理解されよう。
【0013】キャッシュ/メモリ・インタフェース20
からの命令は通常、好ましくは複数の待ち行列位置を含
む命令待ち行列22にロードされる。スーパースカラ・
データ処理システムの典型的な実施例では、命令待ち行
列内の各位置が、4個ないし6個の命令を含むことがで
きるので、所与のサイクル中に、キャッシュ/メモリ・
インタフェース20によって渡される有効な命令の数
と、命令待ち行列22内で利用可能な空間の量に応じ
て、命令待ち行列22に最高で6個の命令をロードする
ことができる。
【0014】そのようなスーパースカラ・データ処理シ
ステムでは普通であるが、命令待ち行列22が、複数の
実行ユニット24に命令をディスパッチするために使用
される。図1に示すように、スーパースカラ・データ処
理システム10は、浮動小数点処理ユニット24、固定
小数点処理ユニット26、およびブランチ処理ユニット
28を含む。したがって、命令待ち行列22は、単一の
サイクル中に、複数の命令を各実行ユニットに1個ずつ
ディスパッチすることができる。
【0015】次に図2を参照すると、本発明の方法およ
びシステムを実施するために使用できる図1のスーパー
スカラ・データ処理システムの命令ディスパッチ回路の
さらに詳細なブロック図が示されている。この図には、
命令を命令待ち行列22(図1を参照)からスーパース
カラ・データ処理システム10内の複数の実行ユニット
にディスパッチするために使用される命令ディスパッチ
機構40が示されている。これらの実行ユニットは、図
2では実行ユニット48として集合的に示されている。
命令ディスパッチ機構40からの命令のディスパッチ
は、制御ユニット42を使用して制御される。制御ユニ
ット42は、ハードウェアまたはソフトウェア要素を使
用して実施することができ、命令ディスパッチ機構40
による実行ユニット48への命令のディスパッチを制御
する働きをする。この図では、命令ディスパッチ機構4
0内に、3個のソース・オペランド、すなわちS1、S
2、S3を含む単一の命令が詳細に示してある。
【0016】既存のスーパースカラ・データ処理システ
ムでは普通のことであるが、2個のソース・オペランド
を2個の宛先オペランドでインタロックすることのでき
るソース宛先間インタロック回路44を提供して、これ
らのオペランドを含む命令をディスパッチする前にその
ようなデータ依存性ハザードを解消しておくことが可能
である。当業者には明らかなように、各ソース・オペラ
ンドは、レジスタ・ファイル46内のオペランドにアク
セスするために使用される。
【0017】本発明の重要な特徴によれば、ソース・オ
ペランドS1およびS2はソース宛先間インタロック回
路44を使用してインタロックされ、ソース・オペラン
ドS3は実行ユニット48に直接結合される。こうすれ
ば、実行ユニット48は、ソース・オペランドS3をレ
ジスタ・ファイル46に結合し、ソース・オペランドS
3に関連するオペランドを見つけてそれにアクセスする
ことができる。
【0018】本発明の重要な特徴によれば、ソース宛先
インタロック回路44が、ソース・オペランドS1およ
びS2についてのデータ依存性ハザードが解消されたと
判定し、これらのソース・オペランドに関連するレジス
タ・ファイル46からのデータが実行ユニット48に返
された後、ソース・オペランドS3に先行するすべての
命令が完了したか否かを判定する。すべての先行する命
令が完了した後、ソース・オペランドS3に関連するデ
ータが、レジスタ・ファイル46から実行ユニット48
に返され、3個のソース命令が実行ユニットにディスパ
ッチされる。
【0019】このようにして、ソース・オペランドおよ
び宛先オペランドをインタロックするために必要なイン
タロック回路の複雑さが33%削減され、スーパースカ
ラ・データ処理システム10の全体的な性能はわずかだ
け低下する。なぜなら、3個のソース・オペランドが頻
繁に使用されることはないからである。したがって、本
発明の方法およびシステムは、そのような命令のディス
パッチを、すべての先行する命令が完了するまで遅延さ
せておくことによって、3個のソース・オペランドを処
理し、データ依存性ハザードを解消する。3個以上のソ
ース・オペランドを含む命令だけのディスパッチを遅延
させることによって、システムの全体的な性能は、すべ
ての命令のディスパッチをたとえば先行命令が完了する
時まで遅延させるシステムに比べて、大幅に向上する。
【0020】次に図3を参照すると、本発明の方法およ
びシステムによる命令ディスパッチ・プロセスを示す論
理フローチャートが示されている。図のように、プロセ
スはブロック60から開始し、次にブロック62に進
む。ブロック62で、現命令が3ソース・オペランド命
令であるか否か判定する。3ソース・オペランド命令で
ない場合は、たとえば3ソース・オペランド命令が発生
する時まで、このプロセスが単に繰り返される。さらに
ブロック62を参照すると、現命令が3ソース・オペラ
ンド命令である場合、ブロック64に進む。ブロック6
4で、従来技術で周知の方法でソース宛先間インタロッ
ク回路ユニット44を使用して最初の2個のソース・オ
ペランドをインタロックする。
【0021】次にブロック66に進む。ブロック66
で、現命令中の最初の2個のソース・オペランドがデー
タ依存性を解消しているか否か判定する。解消していな
い場合は、たとえばソース宛先インタロック回路44が
最初の2個のソース・オペランドがデータ依存性を解消
したと判定する時まで、そのプロセスが単に繰り返され
る。その後ブロック68に進む。ブロック68で、現命
令の最初の2個のオペランドに関連するデータをレジス
タ・ファイル46(図2を参照)から実行ユニットに戻
す。このデータは次に、ブロック70で、実行ユニット
内に置かれる。
【0022】次にブロック72に進む。ブロック72
で、3個のソース・オペランドを含む現命令に先行する
すべての命令が解消されたか否か判定する。解消されて
いない場合は、すべての先行する命令が解消される時ま
で、そのプロセスが単に繰り返される。第3のソース・
オペランドを含む命令に先行するすべての命令が解消さ
れた後、ブロック74に進む。ブロック74で、第3の
ソース・オペランド用のデータをレジスタ・ファイルか
ら戻す。次に、ブロック76で、データが実行ユニット
内に置かれる。最後に、ブロック78で、プロセスがリ
ターンする。
【0023】前述の内容を参照すれば、3個以上のソー
ス・オペランドを含む命令を、通常最初の2個のソース
・オペランドについてインタロックできるようにし、そ
の後すべての先行する命令についてデータ依存性を想定
することによって、そのようなオペランドを含む命令を
処理する際の命令ディスパッチ効率を上げる方法が本発
明者等によって提供されたことが、当業者には理解され
よう。したがって、第3のソース・オペランドを含む命
令は、すべての先行する命令が完了するまで、ディスパ
ッチされない。このようにして、ソース宛先間インタロ
ック回路ユニットの複雑さを増大する必要をなくするこ
とにより、3個のソース・オペランドを含む命令の発生
時にシステムの性能がごくわずかしか低下せずに、シス
テムの効率が大幅に向上する。
【図面の簡単な説明】
【図1】本発明の方法およびシステムを実施するために
使用できるスーパースカラ・データ処理システムの高水
準ブロック図である。
【図2】本発明の方法およびシステムを実施するために
使用できる図1のスーパースカラ・データ処理システム
の命令ディスパッチ回路のさらに詳細なブロック図であ
る。
【図3】本発明の方法およびシステムによる命令ディス
パッチ・プロセスを示す論理フローチャートである。
【符号の説明】
10 スーパースカラ・データ処理システム 18 メモリ 20 キャッシュ/メモリ・インタフェース 22 命令待ち行列 24 浮動小数点処理ユニット 26 固定小数点処理ユニット 28 ブランチ処理ユニット 40 命令ディスパッチ機構 42 制御ユニット 44 ソース宛先間インタロック回路 46 レジスタ・ファイル
───────────────────────────────────────────────────── フロントページの続き (72)発明者 カウ・チン・チェン アメリカ合衆国78749、テキサス州オース チン、ホイスルストップ・コーヴ 6000

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】複数のソース・オペランドおよび宛先オペ
    ランドを有する複数のスカラ命令を同時にディスパッチ
    することができ、N個のソース・オペランドおよびM個
    の宛先オペランドをインタロックしてデータ依存性ハザ
    ードを防止することのできるソース宛先間依存性インタ
    ロック回路を有する、スーパースカラ・プロセッサ・シ
    ステムの命令同期化効率を向上させる方法であって、 前記ソース宛先間依存性インタロック回路が、データ依
    存性ハザードが解消されたことを示したときに、せいぜ
    いN個のソース・オペランドを含む前記スーパースカラ
    ・プロセッサ・システム内の各スカラ命令をディスパッ
    チするステップと、 すべての先行する命令が完了した時に限って、N個より
    多くのソース・オペランドを含む各スカラ命令をディス
    パッチするステップとを含み、 追加の依存性インタロック回路を必要とせずに、3つ以
    上のソース・オペランドを含むスカラ命令についてデー
    タ依存性が解消されることを特徴とする方法。
  2. 【請求項2】すべての先行する命令が完了した時に限っ
    て、N個より多くのソース・オペランドを含む各スカラ
    命令をディスパッチする前記ステップが、前記ソース宛
    先間インタロック回路を使用して前記ソース・オペラン
    ドのうちの最初のN個をインタロックするステップと、
    前記ソース宛先間依存性インタロック回路が、前記ソー
    ス・オペランドのうちの前記最初の2つについてデータ
    依存性ハザードが解消されたことを示し、すべての先行
    するスカラ命令が完了したときに限って、N個より多く
    のソース・オペランドを含む前記スカラ命令をディスパ
    ッチするステップとをさらに含む請求項1に記載のスー
    パースカラ・プロセッサ・システムの命令同期化効率を
    向上させる方法。
  3. 【請求項3】前記スーパースカラ・プロセッサ・システ
    ムがレジスタ・ファイルを含み、各スカラ命令内の各ソ
    ース・オペランドに応じて、前記レジスタ・ファイルか
    ら指定されたオペランドを読み取るステップをさらに含
    む請求項1に記載のスーパースカラ・プロセッサ・シス
    テムの命令同期化効率を向上させる方法。
  4. 【請求項4】複数のソース・オペランドおよび宛先オペ
    ランドを有する複数のスカラ命令を同時にディスパッチ
    することができ、N個のソース・オペランドおよびM個
    の宛先オペランドをインタロックしてデータ依存性ハザ
    ードを防止することのできるソース宛先間依存性インタ
    ロック回路を有する、スーパースカラ・プロセッサ・シ
    ステムの命令同期化効率を向上させるシステムであっ
    て、 前記ソース宛先間依存性インタロック回路が、データ依
    存性ハザードが解消されたことを示したときに、せいぜ
    いN個のソース・オペランドを含む前記スーパースカラ
    ・プロセッサ・システム内の各スカラ命令をディスパッ
    チする手段と、 すべての先行する命令が完了した時に限って、N個より
    多くのソース・オペランドを含む各スカラ命令をディス
    パッチする手段とを備え、 追加の依存性インタロック回路を必要とせずに、3つ以
    上のソース・オペランドを含むスカラ命令についてデー
    タ依存性が解消されることを特徴とするシステム。
  5. 【請求項5】すべての先行する命令が完了した時に限っ
    て、N個より多くのソース・オペランドを含む各スカラ
    命令をディスパッチする前記手段が、前記ソース宛先間
    インタロック回路を使用して前記ソース・オペランドの
    うちの最初のN個をインタロックし、前記ソース宛先間
    依存性インタロック回路が、前記ソース・オペランドの
    うちの前記最初の2個についてデータ依存性ハザードが
    解消されたことを示し、すべての先行するスカラ命令が
    完了したときに限って、N個より多くのソース・オペラ
    ンドを含む前記スカラ命令をディスパッチする手段をさ
    らに備える請求項4に記載のスーパースカラ・プロセッ
    サ・システムの命令同期化効率を向上させるシステム。
  6. 【請求項6】前記スーパースカラ・プロセッサ・システ
    ムがレジスタ・ファイルを含み、各スカラ命令内の各ソ
    ース・オペランドに応じて、前記レジスタ・ファイルか
    ら指定されたオペランドを読み取る手段をさらに含む請
    求項4に記載のスーパースカラ・プロセッサ・システム
    の命令同期化効率を向上させるシステム。
JP5319296A 1993-01-08 1993-12-20 スーパースカラ・プロセッサ・システムの同期化効率を向上させる方法およびシステム Expired - Lifetime JP2620505B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US001863 1993-01-08
US08/001,863 US5761473A (en) 1993-01-08 1993-01-08 Method and system for increased instruction synchronization efficiency in a superscalar processsor system utilizing partial data dependency interlocking
US1863 2001-11-19

Publications (2)

Publication Number Publication Date
JPH06236272A true JPH06236272A (ja) 1994-08-23
JP2620505B2 JP2620505B2 (ja) 1997-06-18

Family

ID=21698171

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5319296A Expired - Lifetime JP2620505B2 (ja) 1993-01-08 1993-12-20 スーパースカラ・プロセッサ・システムの同期化効率を向上させる方法およびシステム

Country Status (4)

Country Link
US (1) US5761473A (ja)
EP (1) EP0605870A1 (ja)
JP (1) JP2620505B2 (ja)
CA (1) CA2107045A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5870616A (en) * 1996-10-04 1999-02-09 International Business Machines Corporation System and method for reducing power consumption in an electronic circuit

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5974538A (en) * 1997-02-21 1999-10-26 Wilmot, Ii; Richard Byron Method and apparatus for annotating operands in a computer system with source instruction identifiers
US6564298B2 (en) 2000-12-22 2003-05-13 Intel Corporation Front end system having multiple decoding modes
US7000095B2 (en) * 2002-09-06 2006-02-14 Mips Technologies, Inc. Method and apparatus for clearing hazards using jump instructions
AU2014352888B2 (en) 2013-11-22 2019-05-09 Sabre Therapeutics Llc Autotaxin inhibitor compounds
US9051320B1 (en) 2014-08-18 2015-06-09 Pharmakea, Inc. Methods for the treatment of metabolic disorders by a selective small molecule autotaxin inhibitor
CN116059203A (zh) 2015-05-27 2023-05-05 赛博治疗有限责任公司 自分泌运动因子抑制剂及其用途

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3651482A (en) * 1968-04-03 1972-03-21 Honeywell Inc Interlocking data subprocessors
US3718912A (en) * 1970-12-22 1973-02-27 Ibm Instruction execution unit
US4287561A (en) * 1978-03-16 1981-09-01 International Business Machines Corporation Address formulation interlock mechanism
US5051940A (en) * 1990-04-04 1991-09-24 International Business Machines Corporation Data dependency collapsing hardware apparatus
US4855947A (en) * 1987-05-27 1989-08-08 Amdahl Corporation Microprogrammable pipeline interlocks based on the validity of pipeline states
US4916652A (en) * 1987-09-30 1990-04-10 International Business Machines Corporation Dynamic multiple instruction stream multiple data multiple pipeline apparatus for floating-point single instruction stream single data architectures
US5131086A (en) * 1988-08-25 1992-07-14 Edgcore Technology, Inc. Method and system for executing pipelined three operand construct
US5150470A (en) * 1989-12-20 1992-09-22 International Business Machines Corporation Data processing system with instruction queue having tags indicating outstanding data status
US5163139A (en) * 1990-08-29 1992-11-10 Hitachi America, Ltd. Instruction preprocessor for conditionally combining short memory instructions into virtual long instructions
US5253349A (en) * 1991-01-30 1993-10-12 International Business Machines Corporation Decreasing processing time for type 1 dyadic instructions

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5870616A (en) * 1996-10-04 1999-02-09 International Business Machines Corporation System and method for reducing power consumption in an electronic circuit

Also Published As

Publication number Publication date
JP2620505B2 (ja) 1997-06-18
CA2107045A1 (en) 1994-07-09
US5761473A (en) 1998-06-02
EP0605870A1 (en) 1994-07-13

Similar Documents

Publication Publication Date Title
US5655096A (en) Method and apparatus for dynamic scheduling of instructions to ensure sequentially coherent data in a processor employing out-of-order execution
US6687810B2 (en) Method and apparatus for staggering execution of a single packed data instruction using the same circuit
US6134653A (en) RISC processor architecture with high performance context switching in which one context can be loaded by a co-processor while another context is being accessed by an arithmetic logic unit
JP3120152B2 (ja) コンピューターシステム
US6782521B2 (en) Integrated structure layout and layout of interconnections for an instruction execution unit of an integrated circuit chip
EP0644482B1 (en) Dispatch of instructions to multiple execution units
US6108766A (en) Structure of processor having a plurality of main processors and sub processors, and a method for sharing the sub processors
JPH06236273A (ja) スーパースカラ・プロセッサ・システムにおいて複数命令を単一サイクルでディスパッチするための方法およびシステム
JPH02227769A (ja) データ処理システム
US20040139299A1 (en) Operand forwarding in a superscalar processor
CN110908716B (zh) 一种向量聚合装载指令的实现方法
JPH06242954A (ja) 独立にアクセスされる中間記憶域を利用してスーパースカラ・プロセッサ・システムにおける命令ディスパッチを改善する方法およびシステム
JP2742374B2 (ja) スーパースカラ・プロセッサ・システムにおける命令ディスパッチ効率を向上させる方法およびシステム
US6862676B1 (en) Superscalar processor having content addressable memory structures for determining dependencies
US20040199749A1 (en) Method and apparatus to limit register file read ports in an out-of-order, multi-stranded processor
JP2620505B2 (ja) スーパースカラ・プロセッサ・システムの同期化効率を向上させる方法およびシステム
Kawano et al. Fine-grain multi-thread processor architecture for massively parallel processing
US20080215859A1 (en) Computer with high-speed context switching
JPH08241213A (ja) マイクロプロセッサにおける分散型制御システム
JPH06202868A (ja) マルチスカラー・プロセッサ・システムにおける高速浮動小数点例外起動式操作の方法およびシステム
JP3045964B2 (ja) スーパスカラ・プロセッサのリネーム・バッファを効率よく使用する方法及び装置
US6918028B1 (en) Pipelined processor including a loosely coupled side pipe
EP0933696A2 (en) Single cycle direct execution of serializing instructions
US20020129229A1 (en) Microinstruction sequencer stack
Arvind et al. A fully asynchronous superscalar architecture

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040922

A131 Notification of reasons for refusal

Effective date: 20041102

Free format text: JAPANESE INTERMEDIATE CODE: A131

A02 Decision of refusal

Effective date: 20050329

Free format text: JAPANESE INTERMEDIATE CODE: A02