JPH04262452A - プログラムの命令の並列処理のための方法およびプロセッサ - Google Patents

プログラムの命令の並列処理のための方法およびプロセッサ

Info

Publication number
JPH04262452A
JPH04262452A JP3268785A JP26878591A JPH04262452A JP H04262452 A JPH04262452 A JP H04262452A JP 3268785 A JP3268785 A JP 3268785A JP 26878591 A JP26878591 A JP 26878591A JP H04262452 A JPH04262452 A JP H04262452A
Authority
JP
Japan
Prior art keywords
processor
instruction
instructions
processor element
elements
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
JP3268785A
Other languages
English (en)
Inventor
Alfons-Josef Wahr
アルフオンス‐ヨーゼフ ワール
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Publication of JPH04262452A publication Critical patent/JPH04262452A/ja
Withdrawn 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/3885Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Multi Processors (AREA)
  • Advance Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はプログラムの命令を並列
処理するための方法およびこの方法を実施するためのプ
ロセッサに関する。
【0002】
【従来の技術】計算機アーキテクチュアでSIMD(単
一命令‐多重データ)計算機、ベクトル計算機およびM
IMD(多重命令‐多重データ)計算機は知られている
。これらは、多重プロセッサシステムまたは並列計算機
として構成されていてよく、従ってまた小さいプロセス
区間または大きいプロセス区間または全プロセスで並列
に処理し得る点で優れている。同期化点の間にしばしば
数百または数百万の機械命令が処理される。
【0003】このような計算機システムでは、たとえば
命令の処理が先行の命令の予めの処理を必要とするとき
に生ずるコンフリクトが認識されなければならない。こ
のようなコンフリクトはたとえばコンパイラにより認識
され、またその場合にプログラムが並列進行可能なコン
フリクトなしのプログラム部分に分割される。プログラ
ムの並列処理はこうしてたとえばコンパイラ、コード発
生器またはその他のプログラムによる特別な選別を必要
とする。
【0004】
【発明が解決しようとする課題】本発明の課題は、付加
の選別プログラムを必要とせずにプログラムを並列に処
理し得る方法およびプロセッサを提供することである。
【0005】
【課題を解決するための手段】この課題を解決するため
、本発明においては、プログラムのそれぞれk(k≦n
)個の命令が並列にプロセッサのn個のプロセッサ要素
にその優先順位に関係してプロセッサあたり1つの命令
が処理のために供給され、各プロセッサ要素が独自にそ
の命令を処理し、プロセッサによる命令の処理の際に資
源がアクセスされるならば、このことが後続の低い優先
順位のプロセッサ要素にコンフリクト信号により報知さ
れ、低い優先順位のプロセッサ要素がこの資源にアクセ
スしなければならないならば、そのプロセッサ要素は、
より高い優先順位のプロセッサ要素がそのアクセスを終
了するまで待たなければならないようになっている。ま
たこの方法を実施するためのプロセッサにおいては、プ
ログラムの命令を並列に処理するための、処理優先順位
が相異なるn個(nは整数)のプロセッサ要素と、プロ
セッサ要素に命令を供給する少なくとも1つの命令機構
と、各プロセッサ要素とデータバスを介して接続されて
いるキャッシュメモリ装置と、プロセッサ要素により実
行すべき命令と予めプロセッサ要素により実行すべき命
令との関係を認識し、関係が存在するときにコンフリク
ト信号を発するための手段とを含んでいる。
【0006】プログラムを並列処理するためのプロセッ
サはこうしてCPUまたは計算機構として構成されてい
てよい多数のプロセッサ要素から成っている。たとえば
n個(nは整数)のプロセッサ要素がプロセッサのなか
に実現されていれば、最大n個の命令が並列に処理され
得る。
【0007】プロセッサ要素の処理時間が相異なってい
るときには、処理を既に完了しているプロセッサ要素に
、残りのプロセッサ要素がなお動作している間に、新し
い命令を供給することは目的にかなっている。こうして
命令割当てがダイナミックに行われ得る。
【0008】共通の資源へのアクセス、たとえば先行の
命令により最初に値を書込まれるべきメモリまたはレジ
スタへのアクセスのようなコンフリクトは、このような
命令が認識され、また相応のコンフリクト信号がプロセ
ッサ要素に供給されることにより解消され得る。そのた
めに、個々のプロセッサ要素に優先順位が対応付けられ
ることは目的にかなっている。このようなコンフリクト
が生ずると、プロセッサ要素がたとえば、その内容が後
続の命令により利用されるレジスタまたはメモリへの書
込みアクセスを行う1つの命令を処理し、次いでこのコ
ンフリクト信号が発生され、また低い優先順位のプロセ
ッサ要素に与えられる。当該のプロセッサ要素はその命
令処理を、書込みアクセスが実行され終わるまで待つ。
【0009】コンフリクトはもちろん命令デコードの際
にも認識され得る。たとえば、このような命令コンフリ
クト状況を確認するために、プリデコードが行われ得る
【0010】複数のプロセッサ要素を有するプロセッサ
はさらに、どの命令枝路が通過されるかが確認される以
前に既に命令処理を開始し得るために、分岐命令の際に
命令を相異なるプロセッサ要素の分岐に割当てることが
可能であるという利点を有する。こうしてプログラムの
処理が加速される。
【0011】プロセッサのクロックステップあたりアク
ティブなプロセッサ要素はたとえば並列に処理すべき命
令に関係して変化し得る。その場合、アクティブでない
プロセッサ要素はたとえばNOOP命令により待ち状態
に移される。
【0012】本方法を実施するためのプロセッサはn個
のプロセッサ要素を有していなければならない。プロセ
ッサ要素はすべて命令機構、キャッシュを有するキャッ
シュメモリ装置、レジスタバンクおよび場合によっては
制御メモリと接続されている。コンフリクト信号は個々
のプロセッサ要素から発生され、またアクティブなプロ
セッサ要素の数に関係してより高い優先順位のプロセッ
サ要素から低い優先順位のプロセッサ要素へ伝達される
。いくつかのプロセッサ要素がアクティブでないならば
、これらのプロセッサ要素にはコンフリクト信号は供給
されてはならない。コンフリクト信号に対する導線中に
マルチプレクサを相応に挿入することにより、個々のプ
ロセッサ要素を迂回することが可能である。
【0013】本発明の他の構成は従属請求項にあげられ
ている。
【0014】
【実施例】以下、図面に示されている実施例により本発
明を一層詳細に説明する。
【0015】図1には現在通常の双命令プロセッサのア
ーキテクチュアが示されている。たとえば、バスP1‐
MMおよびP0‐MM(一般にPI‐MM)を介して主
メモリMMと接続されている2つのプロセッサP0およ
びP1が設けられている。外界(周辺)との通信は周辺
ユニットIOSへの入力/出力バスP0‐IOSまたは
P1‐IOSを介して実行される。周辺ユニットIOS
は同じくたとえばIOS‐MMバスを介して主メモリと
接続されていてよい。このような計算機アーキテクチュ
アは公知であり、従ってこれ以上に説明する必要はない
【0016】プログラムの並列処理のために、いまプロ
セッサP0、P1の通常のアーキテクチュアが図2のよ
うに変更される。プロセッサはいまただ1つのプロセッ
サ要素、すなわちCPU、ではなくn個(nは整数)の
プロセッサ要素を含んでいる。図2の実施例では4つの
プロセッサ要素PE0ないしPE3が設けられている。 各プロセッサ要素PEは命令を独立に処理することがで
き、それ故命令処理に必要な通常のユニットを有してい
る。各プロセッサ要素PEは命令機構IUと命令バスI
B0ないしIB3を介して接続されている。さらに、デ
ータバスDB0ないしDB3がキャッシュメモリ装置C
Aと接続されており、キャッシュメモリ装置CAは通常
の仕方でバスPI‐MMを介して主メモリMMと接続さ
れている。キャッシュメモリ装置はマルチポート‐キャ
ッシュメモリを含んでいてよいが、プロセッサ要素PE
あたり固有のキャッシュメモリを設けることも可能であ
る。
【0017】プロセッサがマイクロプログラムされてい
るならば、制御メモリCSがプロセッサ要素PEのマイ
クロプログラムに対して設けられていなければならない
。ここでも各プロセッサ要素PEは別々のバスMI0な
いしMI3を介して制御メモリCSと接続されている。 制御メモリCSは再びマルチポート‐制御メモリとして
実現されていてよく、またはプロセッサ要素PEあたり
別々の制御メモリが設けられていてよい。最後に、プロ
セッサ要素PE0ないしPE3は別々のバスRB0ない
しRB3を介して、マルチポート‐レジスタバンクとし
て実現されていてよいレジスタバンクRGと接続されて
いてよい。
【0018】命令機構IUはデータバスDBIを介して
キャッシュメモリ装置CAと接続されていてよく、また
バスRBIを介してレジスタバンクRGと接続されてい
てよい。
【0019】プログラムの処理すべき命令はキャッシュ
メモリ装置CAから通常の仕方でバスDBIを介して命
令機構IUに伝達される。そのために命令機構IUのな
かに公知の仕方で命令カウンタICが存在している。命
令はそこでデコードされ、また次いで命令バスIB0な
いしIB3を介して別々に個々のプロセッサ要素PE0
ないしPE3に分配される。プロセッサ要素PEは互い
に独立的に動作し得るので、並列に実施例では4つの命
令が同時に処理されることが可能である。命令の処理の
ために必要なデータはプロセッサ要素PE0ないしPE
3からデータバスDB0ないしDB3を介してキャッシ
ュメモリ装置CAから通常の仕方で取り出され、または
処理されたデータがデータバスDBを介してキャッシュ
メモリ装置CAに伝達される。命令実行の際に必要なレ
ジスタアクセスはレジスタバンクRGへのレジスタバス
RB0ないしRB3を介して行われる。プロセッサ要素
PEがマイクロプログラムされているならば、命令の処
理のために、プロセッサ要素あたり固有の制御メモリが
設けられていないならば、制御メモリCSのなかに記憶
されており、そこからマイクロ命令バスMI0ないしM
I3を介して対応付けられているプロセッサ要素に伝達
されるマイクロプログラムが必要である。
【0020】プロセッサにより特に良好に、一定の命令
長さを有するプログラムが並列に処理され得る。その際
に、命令幅が語幅と等しく、またはそれよりも小さいこ
とは望ましい。ダイナミックに可変な命令長さの際には
プロセッサは同じく目的にかなっているが、命令機構I
Uから命令シーケンスが常にダイナミックに正しく選択
され、またプロセッサ要素PEに向けて伝達されなけれ
ばならない。
【0021】プロセッサ要素PEは常に並列に命令のセ
ットを供給される。これらの命令は、コンフリクト状況
により阻止されないかぎりは、並列に実行される。コン
フリクト状況での命令の処理に対する順序、従ってまた
優先順位は実施例では左から右へ、すなわち最も高い優
先順位を有するPE0から最も低い優先順位を有するP
E3へ示されている。もちろん優先順位の分配は他の仕
方でも行われ得る。それはしかし常に命令シーケンスの
順序で行なわれる必要がある。
【0022】プロセッサ要素PEはダイナミックに、す
なわち、もし1つの新しい命令を供給されるときには常
に、命令処理の優先順位を命令完了により回転すること
も可能である。すなわちたとえばプロセッサ要素PE1
が、その他のプロセッサ要素PE0、PE2、PE3が
なおアクティブである間に、その命令処理を既に完了し
ているならば、プロセッサ要素PE2が最も高い命令処
理優先順位を受け、またPE1が既に1つの新しい命令
を供給され得る(以下同様)。
【0023】すべてのプロセッサ要素が命令の処理に対
して必要とされないならば、必要とされないプロセッサ
要素に対する命令機構IUはディスエーブル信号を発生
し、またこれを待ち状態に移し得る。このことはたとえ
ばいわゆるNOOP命令を介しても行われ得る。
【0024】コンフリクト状況が命令の間に生ずるなら
ば、それらが取り扱われなければならない。このような
コンフリクト状況は、命令の処理がプログラム中の先行
の命令の予めの処理を必要とするときには常に与えられ
ている。このようなコンフリクト状況はレジスタ結果計
算の際にその結果使用に対して並列に、またはオペラン
ドの処理の際にオペランド処理の結果の使用に対して並
列に認識され得る。このようなコンフリクト状況は命令
機構のなかで命令プリデコードにより認識され得るが、
個々のプロセッサ要素PEがこのようなコンフリクト状
況を認識し、またこれらの場合に1つのコンフリクト信
号Ki(i+1)(i=0、1…)を発生し、このコン
フリクト信号が優先順位の低いプロセッサ要素に供給さ
れることも可能である。優先順位の低いプロセッサ要素
へのコンフリクト信号Kの伝達は図2中にシンボル的に
示されている。プロセッサ要素PE、たとえばプロセッ
サ要素PE0が、たとえばキャッシュメモリ装置または
レジスタへの書込みアクセスを必要とし、従ってまた1
つのコンフリクト状況を発生し得る1つの命令を処理す
ることを確認するときには常に、プロセッサ要素PE0
がコンフリクト信号K01を優先順位の低いプロセッサ
要素PE1およびすべての優先順位の低いプロセッサ要
素PE2、PE3に発する。これらのプロセッサ要素は
その場合に、それらがPE0と同一の資源を使用するな
らば、より高い優先順位のプロセッサ要素がその処理を
終了し、従ってまたコンフリクト示されているKO1が
消滅するまで、その命令の処理を待つ。プロセッサ要素
へのコンフリクト信号の伝達はたとえばバスを介して行
われ得る。
【0025】図3ではプロセッサがマルチプレクサKM
0の追加により拡張されている。このマルチプレクサK
M0により、より高い優先順位のプロセッサ要素のどの
コンフリクト信号Kがプロセッサ要素PE0に伝達され
るべきかが決定され得る。そのためにマルチプレクサK
M0にたとえば命令機構IUから1つの切換信号S‐E
Nが供給される。こうして、プロセッサのクロックステ
ップあたりアクティブなプロセッサ要素の数を変更する
ことが可能である。すなわちたとえば命令機構IUのな
かにnよりも少ない命令、たとえばj(j≦n)個の命
令が存在しているならば、1つのクロックステップのな
かでプロセッサ要素PE0ないしPEj−1のみがたと
えば命令機構IUからのイネーブル信号S‐ENにより
イネーブルされる。いま、第1のプロセッサ要素PE0
に正しいコンフリクト信号が供給されることが必要であ
る。マルチプレクサKM0により相応のコンフリクト信
号Kが選択され得る。
【0026】プロセッサの別の実施例が図4に示されて
いる。ここではマルチプレクサKM0に追加して、プロ
セッサ要素PE0およびPE1にマルチプレクサにより
選択可能な他のプロセッサ要素のコンフリクト信号を供
給することを許すマルチプレクサKM1およびKM2が
設けられている。図4のアーキテクチュアは、条件付き
命令を実行すべきときに目的にかなっている。条件付き
飛越し命令の際、ループ命令の際の条件付き手順呼出し
および条件付き復帰飛越しの際にはプログラム継続とし
て2つの代替が考えられる。条件付き命令の条件に関係
して、第1の枝路の命令もしくは第2の枝路の命令が続
く。この場合に両枝路の命令は並列に後続のプロセッサ
要素に与えられ得る。それによってプログラムの実行が
加速され得る。たとえばこのような条件付き命令がプロ
セッサ要素PE0のなかで実行されるならば、2つの後
続のプロセッサ要素PE1およびPE2はそれぞれ1つ
の枝路の1つの命令をロードされ得よう。それに応じて
プロセッサ要素PE0のコンフリクト信号がプロセッサ
要素PE1およびPE2に直接に供給される。同じこと
が、他のプロセッサ要素PEが条件付き命令を実行する
ときにも当てはまる。図4からわかるように、各プロセ
ッサ要素のコンフリクト信号Kはそれぞれ2つの優先順
位の低いプロセッサ要素に供給され、その際にコンフリ
クト信号を供給されるプロセッサ要素PEがマルチプレ
クサMを介して選択可能である。
【0027】1つの望ましい解決策では、これらの状況
に対して付加のプロセッサ要素が追加され、または、使
用されるプロセッサ要素のダイナミックな数の際にも、
その代わりに優先順位の最も低いプロセッサ要素が使用
される。なぜならば、これはより大きい確率で使用され
ないからである。この場合が図5に示されており、ここ
ではプロセッサ要素PE3のなかに条件付き命令の際に
第2の枝路の第1の命令がロードされる。それに応じて
プロセッサ要素PE3にマルチプレクサKM1を介して
その他のプロセッサ要素のコンフリクト信号が供給され
る。
【0028】図面に示されているプロセッサ要素はたと
えば命令機構IU、キャッシュメモリ装置CA、制御メ
モリCSおよびレジスタバンクRGおよびプロセッサ要
素PEのような公知の構成のユニットを含んでいる。こ
れらのユニットの構成および機能について詳細に説明す
る必要はない。
【図面の簡単な説明】
【図1】マイクロプロセッサ計算機の原理回路図である
【図2】4つのプロセッサ要素を有する本発明のプロセ
ッサの内部アーキテクチュアである。
【図3】ダイナミックに可変な数のアクティブプロセッ
サの際の4つのプロセッサ要素を有する本発明のプロセ
ッサの内部アーキテクチュアである。
【図4】条件付き命令の際の両代替の処理に対する本発
明のプロセッサのアーキテクチュアである。
【図5】付加のプロセッサ要素が設けられている条件付
き命令の際の両代替の処理に対する本発明のプロセッサ
のアーキテクチュアである。
【符号の説明】
CA    キャッシュメモリ装置 CS    制御メモリ DB    データバス IB    命令バス IC    命令カウンタ IOC  周辺ユニット IU    命令機構 K      コンフリクト信号 KM    マルチプレクサ P0、P1      プロセッサ PE    プロセッサ要素 RG    レジスタバンク S‐EN  制御信号

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】  プロセッサによりプログラムの命令を
    並列処理するための方法において、プログラムのそれぞ
    れk(k≦n)個の命令が並列にプロセッサのn個のプ
    ロセッサ要素(PE)にその優先順位に関係してプロセ
    ッサあたり1つの命令の処理のために供給され、各プロ
    セッサ要素(PE)が独自にその命令を処理し、プロセ
    ッサによる命令の処理の際に資源がアクセスされるなら
    ば、このことが後続の低い優先順位のプロセッサ要素に
    コンフリクト信号(K)により報知され、低い優先順位
    のプロセッサ要素がこの資源にアクセスしなければなら
    ないならば、そのプロセッサ要素は、より高い優先順位
    のプロセッサ要素がそのアクセスを終了するまで待たな
    ければならないことを特徴とするプログラムの命令の並
    列処理のための方法。
  2. 【請求項2】  すべてのn個のプロセッサ要素(PE
    )に同時に並列にそれぞれn個の命令が供給されること
    を特徴とする請求項1記載の方法。
  3. 【請求項3】  プロセッサ要素(PE)がそれ以前の
    命令を処理し終わっているならば、そのプロセッサ要素
    に他のプロセッサ要素に無関係に新しい命令が供給され
    ることを特徴とする請求項2記載の命令機構。
  4. 【請求項4】  プロセッサ要素の優先順位が命令処理
    に関係して常に、命令の列のなかで最も早い命令を処理
    するプロセッサ要素に与えられていることを特徴とする
    請求項3記載の方法。
  5. 【請求項5】  クロックステップあたりアクティブプ
    ロセッサ要素の数が可変であり、また非アクティブプロ
    セッサ要素が待ち条件に入ることを特徴とする請求項1
    ないし4の1つに記載の方法。
  6. 【請求項6】  中央の命令機構(IU)においてこれ
    が命令を選択し、またプロセッサ要素(PE)に向けて
    与えることを特徴とする請求項1ないし5の1つに記載
    の方法。
  7. 【請求項7】  コンフリクト信号が命令機構(IU)
    のなかで部分的な命令プリデコードの後に発生されるこ
    とを特徴とする請求項1ないし6の1つに記載の命令機
    構。
  8. 【請求項8】  コンフリクト信号(K)がプロセッサ
    要素(PE)のなかで発生され、低い優先順位のプロセ
    ッサ要素に供給されることを特徴とする請求項1ないし
    6の1つに記載の方法。
  9. 【請求項9】  分岐命令の際に分岐条件に続く一方の
    枝路の第1の命令が第1のプロセッサ要素のなかに、他
    方の枝路の第1の命令が第2のプロセッサ要素のなかに
    並列にロードされ、そこで並列に処理されることを特徴
    とする請求項1ないし8の1つに記載の方法。
  10. 【請求項10】  分岐命令の際に条件付き命令に続く
    第2の枝路の命令が最も低い優先順位のプロセッサ要素
    のなかにロードされることを特徴とする請求項1ないし
    8の1つに記載の方法。
  11. 【請求項11】  プログラムの命令を高速処理するた
    めのプロセッサにおいて、プログラムの命令を並列に処
    理するための、処理優先順位が相異なるn個(nは整数
    )のプロセッサ要素(PE)と、プロセッサ要素に命令
    を供給する少なくとも命令機構(IU)と、各プロセッ
    サ要素とデータバスを介して接続されているキャッシュ
    メモリ装置と、プロセッサ要素により実行すべき命令と
    予めプロセッサ要素により実行すべき命令との関係を認
    識し、関係が存在するときにコンフリクト信号を発する
    ための手段とを含んでいることを特徴とするプロセッサ
  12. 【請求項12】  各プロセッサ要素(PE)が、プロ
    セッサ要素の作動のために必要なマイクロプログラムを
    含んでいる少なくとも1つの制御メモリ(CS)と接続
    されていることを特徴とする請求項11記載のプロセッ
    サ。
  13. 【請求項13】  各プロセッサ要素(PE)がレジス
    タバンク(RG)と接続されていることを特徴とする請
    求項11または12記載のプロセッサ。
  14. 【請求項14】  プロセッサ要素のコンフリクト信号
    に対する入力端に、他のプロセッサ要素のコンフリクト
    信号が与えられているマルチプレクサの出力端が接続さ
    れていることを特徴とする請求項11ないし13の1つ
    に記載のプロセッサ。
  15. 【請求項15】  プロセッサ要素のコンフリクト信号
    が少なくともすぐ次の2つの低い優先順位のプロセッサ
    要素に直接に供給されることを特徴とする請求項11な
    いし14の1つに記載のプロセッサ。
JP3268785A 1990-09-26 1991-09-20 プログラムの命令の並列処理のための方法およびプロセッサ Withdrawn JPH04262452A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE4030439.6 1990-09-26
DE4030439 1990-09-26

Publications (1)

Publication Number Publication Date
JPH04262452A true JPH04262452A (ja) 1992-09-17

Family

ID=6415012

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3268785A Withdrawn JPH04262452A (ja) 1990-09-26 1991-09-20 プログラムの命令の並列処理のための方法およびプロセッサ

Country Status (2)

Country Link
EP (1) EP0477597A3 (ja)
JP (1) JPH04262452A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5689673A (en) * 1995-02-14 1997-11-18 Hal Computer Systems, Inc. Apparatus and method for controlling instruction flow by using a matrix of transmission gates in super-scaler microprocessor and selectively delaying microprocessor instruction execution based on resource availability

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4809171A (en) * 1984-06-20 1989-02-28 Convex Computer Corporation Concurrent processing of data operands
US4789925A (en) * 1985-07-31 1988-12-06 Unisys Corporation Vector data logical usage conflict detection
US4903196A (en) * 1986-05-02 1990-02-20 International Business Machines Corporation Method and apparatus for guaranteeing the logical integrity of data in the general purpose registers of a complex multi-execution unit uniprocessor
EP0312764A3 (en) * 1987-10-19 1991-04-10 International Business Machines Corporation A data processor having multiple execution units for processing plural classes of instructions in parallel
US4969117A (en) * 1988-05-16 1990-11-06 Ardent Computer Corporation Chaining and hazard apparatus and method

Also Published As

Publication number Publication date
EP0477597A2 (de) 1992-04-01
EP0477597A3 (en) 1995-09-27

Similar Documents

Publication Publication Date Title
US4295193A (en) Machine for multiple instruction execution
US5293500A (en) Parallel processing method and apparatus
US5353418A (en) System storing thread descriptor identifying one of plural threads of computation in storage only when all data for operating on thread is ready and independently of resultant imperative processing of thread
US5499349A (en) Pipelined processor with fork, join, and start instructions using tokens to indicate the next instruction for each of multiple threads of execution
US6671827B2 (en) Journaling for parallel hardware threads in multithreaded processor
US7546444B1 (en) Register set used in multithreaded parallel processor architecture
US5640524A (en) Method and apparatus for chaining vector instructions
US6219775B1 (en) Massively parallel computer including auxiliary vector processor
EP1282862B1 (en) Distributed memory control and bandwidth optimization
EP0782071A2 (en) Data processor
US20040205747A1 (en) Breakpoint for parallel hardware threads in multithreaded processor
US3943495A (en) Microprocessor with immediate and indirect addressing
US4305124A (en) Pipelined computer
US4967338A (en) Loosely coupled pipeline processor
NZ201809A (en) Microprocessor
US5696939A (en) Apparatus and method using a semaphore buffer for semaphore instructions
US6101596A (en) Information processor for performing processing without register conflicts
US5226166A (en) Parallel operation processor with second command unit
US6862676B1 (en) Superscalar processor having content addressable memory structures for determining dependencies
US4722046A (en) Cache storage priority
KR100431975B1 (ko) 분기에의한중단이없는파이프라인방식의마이크로프로세서를위한다중명령디스패치시스템
EP0496407A2 (en) Parallel pipelined instruction processing system for very long instruction word
US5623685A (en) Vector register validity indication to handle out-of-order element arrival for a vector computer with variable memory latency
JPH04262452A (ja) プログラムの命令の並列処理のための方法およびプロセッサ
US7191309B1 (en) Double shift instruction for micro engine used in multithreaded parallel processor architecture

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19981203