JPS5816490B2 - 複数の命令を同時に実行する方法 - Google Patents

複数の命令を同時に実行する方法

Info

Publication number
JPS5816490B2
JPS5816490B2 JP55066044A JP6604480A JPS5816490B2 JP S5816490 B2 JPS5816490 B2 JP S5816490B2 JP 55066044 A JP55066044 A JP 55066044A JP 6604480 A JP6604480 A JP 6604480A JP S5816490 B2 JPS5816490 B2 JP S5816490B2
Authority
JP
Japan
Prior art keywords
instruction
gate
register
line
address
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
Application number
JP55066044A
Other languages
English (en)
Other versions
JPS567147A (en
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.)
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 JPS567147A publication Critical patent/JPS567147A/ja
Publication of JPS5816490B2 publication Critical patent/JPS5816490B2/ja
Expired 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/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3889Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute
    • 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
    • G06F9/3853Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution of compound instructions
    • 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/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units

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)

Description

【発明の詳細な説明】 本発明は計算機の分野に関し、さらに具体的には命令実
行シーケンスに向けられる。
さらに詳細には本発明に従う計算機は各命令が異なるデ
ータ組を使用して成る型の多数の命令を単一マシン・ザ
イクルで同時に実行する事に向けられる。
多くの高速度計算機は科学型のプロゲラろを商業型のプ
ログラムよりも早く実行する。
速度の差は大部分は代表的には2種のコードに見出され
る命令のシーケンスの組立てに依存する。
科学的命令の流れはパイプライン化された機械組織によ
ってうまく処理される傾向の命令の規則的及び再起パタ
ーンを有する。
他方商業的命令の流れは極めて頻繁な分岐命令によって
不規則シーケンスに分割されるビット及びバイト処理に
よって特徴付けられる。
成るパイプライン組織はこの後者の種類のコードをおど
ろくべき程良好に処理する様に改良されているがパイプ
フィン法は最良の組織方法ではない事は明らかである。
計算機の主アーギテクチュアは命令がプログラム・シー
ケンス中に1つずつ遂行され、各命令が次の命令が開始
する前に完全に完了しているという命令の概念に固執し
ている。
パイプライン設計は出来るだけ早く命令の流れを処理す
るために、前の命令が完了する前に次の命令に対する仕
事を開始しているが、制御論理装置が同様に与えられて
正味の結果は恰もすべての前の命令が完了したかの様に
見える事が保証される。
この様なアーキテクチュアに従う設計方法は、各命令を
その順番に遂行すべき仕事の単位として処理する事にあ
る。
各型の命令はその性質及び可能な発生頻度に従い異なる
量の設計及び・・−ドウエア処理が与えられ得るが、命
令シーケンスは1つ1つ処理し、各1サイクルに対して
各々を解読し、次いで適切な経路を通して送る。
パイプラインの移動を保持するために、分岐がなされる
かについて選択がなされるが、選択された経路に沿うそ
の後の命令は結果が解決される迄条件付きで処理される
もし正しい選択がなされたのならばパイプライン移動は
中断されず、もし間違った選択がなされた場合には条件
付きの仕事は廃棄され、若干の時間が失われる。
上述の如き分岐が極めて頻繁に行われる場合にはパイプ
ライン方法は面倒なものとなる。
例えば次の命令シーケンスを考える。
MVI 、SLR,ST、CLI 、BC、CLI。
BC,CLI 、BC,CLI 、Bに こでBCは分岐命令を示す。
上述の11の命令中には、4つの条件付き分岐(BC)
が存在する。
もし分岐の3つに対し、間違った。
推測がなされた場合には、計算機は条件付き命令を開始
し、これは後刻廃棄され、計算時間の7個のサイクルが
無駄になる。
背景技法 計算機中の1サイクル当りの命令の数を増強しようと試
みているいくつかの周知の方法が存在する。
米国特許第4025771号はデータを処理するための
1つもしくはそれ以上のパイプラインおよびデータ処理
を制御する命令を処理するための1つのパイプラインの
如き多重の経路すなわちパイプラインが与えられたパイ
プライン高速信号プロセッサを開示している。
これ等のパイプラインは太いに増大された速度の命令実
行を可能としてしたがってデータ処理速度を太いに増大
する。
なんとなれば1のクロック・サイクル以上を必要とする
2以上の命令の実行が進行中であり得るからである。
これはすべての命令が1つおきのクロック・パルスによ
って1つずつステップされる、制御パイプライン中にレ
ジスタの連鎖をあたえることによって達成される。
命令解読器が各レジスタに接続され連鎖レジスタによっ
てあたえられる命令パイプラインの各段階もしくは位相
において、命令のオーバラップ実行に対して必要とされ
る制御信号が演算ユニット中のデータ処理経路の異なる
段に与えられる様になっている。
米国特許第3771138号は2つの独立した命令流か
らの命令を直列化するための装置及び方法を開示してい
る。
この装置は独立命令流の各々の命令に対するバッファを
含んでいる。
これ等のバッファは種々の資源をザンプルし、2つの独
立命令流の命令のどれが次に実行されるかを決定する選
択装置に接続されている。
米国特許第3401.376号は現在及び予想された指
令の並列処理に影響を与えつつあるが、ルック・アヘッ
ド・ステーション中の将来の指令カ分岐を有さないが、
現在の指令の処理もしくは実行をして致命的もしくは不
必要にする他の事象を□有さない事が確かになる迄最後
のステーション中において現在実行されている命令が存
在しない点で真のルックヘッド特徴を有する計算機モジ
ュールを開示している。
上述の従来技術は一般に1サイクル当り複数の命令を実
行する手段を開示しており、米国特許第34、0137
6号は実行が必要である事を決定し得る迄分岐命令の実
行を可能としない機能を開示している。
しかしながら上述の技法は与えられたマシン・サイクル
中の命令の群の実行を開示していない。
本発明に従い、全く異なる方法が命令実行に対して選択
され、この方法はパイプライン・システムより著しく早
く商業上のワークロードを運転し得る新しい計算機組織
に導へこの試みにおいて、単一命令以外の命令の成る群
が仕事の単位と考えられる。
例えば、上述の11個の命令シーケンスにおいて、仕事
の単位は次の4つの群に配列されている。
(1)MVI 、SLR,ST、CLI 、BC(2)
CLI、BC (3)CLI、BC (4)CLI、BC 即ち、仕事の単位は分岐(BC)の直後において開始し
、次の分岐(BC)迄通して継続される命令のシーケン
スである様に選択される。
この仕事の単位に対する前提は正しいプログラム実行は
もしこの様な群中の最初の命令が実行される場合には、
群のすべての命令がすべて実行されなければならない点
にある。
例えば上記の群(1)においてMVIが実行されるとS
LR,ST、CLI及びBCが実行されなげればならな
い。
勿論最終(分岐)BCは次の仕事の単位に対する2群の
間の選択をテスト命令(CLI)の結果に依存して可能
とする。
この仕事の単位の選択はシステム設計者をして群のすべ
ての命令の正味の結果を考えせしめ、どの様な単位が次
に存在しようとも、望ましくは1サイクル内で正しいシ
ステム状態を発生せしめる事にある。
換言すれば、仕事の単位の各々はシステム設計者が出来
るだけ短い時間で仕事の単位を完成する能力を有し得る
様に一体として利用可能にされる。
本発明の概念は1つの機械サイクル中で仕事の単位を成
就する事にあり、その終りに最後の分岐命令の結果が同
様に決定される事にある。
次の仕事の単位が上述の分岐に従って選択される時次の
サイクルに対する実行のための準備状態になげればなら
ない。
より記号的術語で表わすと通常の方法は順次に命令の連
系(11,■2.■3゜・・・・・・・・・・・・In
)を処理するが他方本発明に従い提案される方法はシー
ケンスG1.G2.G3・・・・・−・・・・・・Gm
中の命令の群G(I、IK)を処理する事にある。
IKは常に分岐命令で群中の唯一の分岐命令である。
次に本発明について説明する。
計算機は群に編成された命令を利用する。
1つの群は1からn個の命令より成る。
ここでnは機械の特定の具体例によって決定される。
次の説明の目的のためには整数4が使用される。
しかしながら、群の長さは4以下もしくは4以上であり
得る。
4の長さの群の場合には命令の群は次の規則に従わなけ
ればならない。
(1)群は4つの命令より成る。
(2)群は2つ以上のフェッチを要求してはならない。
従ってこの規則は群を4つ以下の命令に制限する。
(3)1つの群中では1つ以上の記憶動作は許容されな
い。
1つの記憶動作は1つの7エツチを必要とするので規則
2中のフェッチの1つは記憶動作のためのものである。
(4)分岐命令が発生する場合には、分岐命令は常に群
の終りに存在しなげればならない。
従って1つの群は3つの命令とこれに続く分岐、2つの
命令とこれに続く分岐、1つの命令とこれに続く分岐も
しくは分岐命令単独より成り得る。
これと同時に、コンパイラは命令を複数の群へコンパイ
ルし、各群を別個のメモリ語中にふりわける。
従って、もしメモリ語が完全に充満されるならば、これ
は4つの命令を含む。
しかしながら、メモリ語は3つの命令とこれに続く1つ
の空白命令スペースの群、2つの命令とこれに続く2つ
の空白命令スペースの群もしくは1つの命令とこれに続
く3つの空白命令スペースの群を含み得る。
コンパイラによって遂行されるこの命令のグループ化さ
れたものは多重命令語と呼ばれる。
この多重命令語は4つの命令のためのスペースを有し、
実際には1乃至4個の有効な命令を含む。
多重命令語中の各命令スペースには有効性ビットが関連
りする。
このビットが1にセットされているとこの事は命令が実
行されるべき事を示す。
このビットがOにセットされていると、その命令のスペ
ースが空白で無視されるべき事を示す。
多重命令語の主特徴は型1の命令と呼ばれる多1くの命
令が存在する点にある。
これ等の型の命令は1マシン・サイクルで実行され、一
般にプログラム・ステータス語の変化、汎用レジスタの
変化もしくは記憶動作を含み得る命令であり、これ等の
命令の多くは並列に実行され得る。
1 本発明に従って、型1の命令を並列に実行し、従っ
て計算機の動作速度が増大される方法及び装置が開示さ
れる。
本発明を遂行するベスト・モード 本発明に従う多重命令機械はすべてのコンポーネントを
含む単一機械であるが、以下説明される新しい機械共用
コンポーネントを有する通常の計算機より成り得る。
多重命令実行システムは第1図に一般的に示されている
例えばI BM370であり得る主計算機2は命令キャ
ッシュ(cashe )1メモリ4及びデータ・キャッ
シュ6のみならず他の標準の計算機(図示されず)を含
む。
コンパイラ(図示されず)は上述の如く命令を命令キャ
ツシュ4中n個(nは整数)の命令より成る群にコンパ
イルする。
これ等の命令は1群をなす4つの命令を受取るための4
゛つのレジスタ段12.14,16及び18を含む解読
兼アドレス発生レジスタ10へ線8を介して与えられる
弁型1命令はもし存在するならば最も左のレジスタ即ち
レジスタ段12中に常に位置付けられる。
非□型1命令がレジスタ段12中に記憶されていると仮
定して、この命令は通常の如く実行されるために線20
を介して直ちに計算機2の命令Qレジスタに転送される
レジスタ10中に記憶された型1命令は、レジスタ段1
2中の命令が実行論理ボツクスAに、レジスタ段14中
の命令が実行論理ボックスBに、レジスタ段16中の命
令が実行論理ボックスCに、レジスタ段18中の命令が
実行論理ボックスDに印加される様に並列に切換兼論理
ユニット22を介して命令実行論理ボックスA。
B、C及びDに転送される。
命令フェッチがある場合には、この要求はレジスタ10
から切換兼論理ユニット22に印加され、線24を介し
て命令アドレス発生器26に印加される。
命令アドレス発生器26は線28を介して命令キャッシ
ュ4から命令のフェッチを要求する。
次いでフェッチされた命令は線8を経て解読兼アドレス
発生レジスタ10に印加され、次の動作サイクル中に適
切な実行論理ボックスに印加される3データが要求され
、線29を経て汎用レジスタ48から戻される。
命令アドレス発生器26は同時に線30を経て、線34
を介して命令キャッシュ4に命令要求を与える命令カウ
ンタを含むプログラム・ステータス語ユニット32と情
報を変換する。
プログラム・ステータス語ユニット32は同時に実行論
理ボックスA、B、C及びDと線36を介して条件コー
ドを変換する。
データ・フェッチが存在する場合には、データ・アドレ
ス発生器38及び40は夫々線42及び44を介して切
換兼論理ユニット22からデータ・フェッチ要求を受取
る。
次いでデータは線46を介してデータ・キャッシュ6か
ら要求される。
データ・アドレス及びデータ復帰情報は汎用レジスタ4
8から夫々線50及び52を経て発生器38及び40に
与えられる。
汎用レジスタ48は同様に線54を介して主計算機2と
アドレス及びデータ情報を交換する。
データ・アドレス発生器38及び40は適切な型1命令
が同時に実行される様に線56を介して夫々の実行論理
ボックスA、B。
C及びDにアドレス兼データ情報を与える。
夫々の実行論理ボックスは線58を介して情報を汎用レ
ジスタ48と交換し、型1命令を適切に実行する。
実行論理ボックスの1つによって記憶命令が遂行される
時はいつでも、記憶さるべきデータはここから線60を
介して主計算機2中のデータ・キャッシュ6へ与えられ
る。
どの様に多重命令実行システムが機能するかの詳細な説
明は第4図を参照してまもなく説明される。
第2図は4つの命令語より成る多重命令語のうちの1つ
の命令語のための命令フォーマットを示す。
従って4命令語の各々は第2図において示された如くフ
ォーマット化される。
最古ビット62はもしこの命令が弁型1命令ならば1で
あり、0ならば型1命令である。
64で示された次の左方の2ビツトは命令もしくはデー
タ・フェッチのための夫々アドレス発生器への経路を決
定する。
これ等の発生器は上述の如く、命令アドレス発生器26
、第1のデータ・アドレス発生器38もしくは第2のデ
ータ・アドレス発生器40である。
もし命令フェッチもしくはデータ・フェッチが存在しな
いと、従ってアドレス発生がないとこの2ビツトは00
にセットされる。
もし命令フェッチが存在すると、アドレスが命令アドレ
ス発生器26へ送られ、2つのビットは01にセットさ
れる。
もしデータ・フェッチがあり、経路が第1のデータ・ア
ドレス発生器への38の場合には2ビツトは10にセッ
トされる。
もしデータ・フェッチが存在して、経路が第2のデータ
・アドレス発生器40である場合には、2ビツトは11
にセットされる。
左方の残りのビット66は命令コード及び他の必要な命
令情報を含む。
最左ビット68は妥当性ビットであり、もし1ならばこ
の命令が妥当であり、もし0ならば妥当でなく、メモリ
語中の単なる空白スペースを示す。
前もって述べられた如く、多重命令語は4つの命令のた
めのスペースを有する。
これ等のスペースは妥当な命令もしくは不妥当な命令で
充満され得る。
しかしながら各多重命令語中には少なく共1つの妥当な
命令が存在しなければならない事は明らかである。
どの様に切換論理ユニット22が4つの命令の各々に応
答するかはまもな(詳細に説明される。
第3図は多重命令語のための命令アドレスが記憶される
小さなメモリを示す。
第1のメモリ語は命令アドレスoooo乃至0011を
記憶する。
第2のメモリ語は命令アドレス0100乃至0111を
記憶する。
第3のメモリ語は命令アドレス1000乃至1011を
記憶する。
メモリ中の第1の多重命令語をアドレスするためには、
最左の2個の高ビット00のみが必要である。
なんとなれば、これ等のビットは第1の多重命令語より
成る4つの命令の各々に対し同一であるからである。
第2の多重命令語をアドレスするためには、最左の2つ
の高位ビット01のみが必要である。
なんとなればこれ等のビットは第2の多重命令品より成
る4つの命令の各々に対して同一である力゛らである。
メモリ中の第3の多重命令語をアドレスするためには最
左の高位2ビツト10のみが夕要である。
なんとなれば第3の多重命令語中の命令のすべてに対し
て同一であるからである。
命令機構が命令アドレス0000から命令アドレス10
11迄進んだと仮定し、後者の命令が矢印70で示され
た如く命令アドレス0101にプログラムを分岐して戻
す無条件分岐であると仮定する。
この分岐は解読兼アドレス発生レジスタ10(第1図)
中に第2の多重命令語を与える命令キャッシュ4に高位
のビット01のみを与える事によって達成される。
低位ビット01はこのレジスタの4段のうちどこから命
令シーケンスが開始するかを示している。
この事は第4図に述べられたシステムのブロック図に関
してより詳細に説明される。
第4図は第4A図乃至第4S図が組合される方法を示し
、第4A図乃至第4S図は組合された時本発明の多重命
令実行システムのブロック図を示す。
解読兼アドレス発生レジスタ10には4つの命令より成
る多重命令語が4段12,14,16及び18中にロー
ドされる。
レジスタ段からのOPコード及びR1及びR2フィール
ドはケーブル72,74,76及び78を介して夫々ゲ
ート80.82,84及び86に与えられる。
クロック・パルスCL−Bに応答して、これ等のゲート
は夫々の命令レジスタからの情報を保持レジスタ88.
90,92及び94に与える。
これ等のレジスタからの出力はデー)96,98,10
0及び102に与えられ、クロック・パルスCL−Aに
応答して、夫々のレジスタの内容はこれ等のゲートから
実行論理ボックスA t B 、C及びDにゲートされ
る。
保持レジスタ88の内容はゲート96を介してゲートさ
れ、妥当性ビット及びOPコード並びにR1及びR2フ
ィールドが夫々ケーブル104,106,108及び1
10を経てレジスタ112及び実行論理ボックスAの夫
々の入力に与えられる。
保持レジスタ90の内容はゲート98を介してゲートさ
れ、妥当性ビット、OPコード、R1フィールド及びR
2フィールドが夫夫ケーブル114,116,118及
び120を介してレジスタ113及び実行論理ボックス
Bに与えられる。
保持レジスタ92の内容はゲート100を経てゲートさ
れ、妥当性ビットは線120を介してレジスタ122に
、OPコードR1フィールド及びR2フィールドは線1
24゜126及び128を介して実行論理ボックスCに
与えられる。
保持レジスタ94の内容はゲート102を経てゲートさ
れ、妥当性ビットは線130を介してレジスタ段132
に、OPコードノ及びR1及びR2フィールドは線13
4,136及び138を経て実行論理ボックスDに与え
られる。
4つの命令を同時実行するためにどの様に実行論理ボッ
クスがこれ等の入力に応答するかはまもなく詳細に説明
される。
y 上述の如く、弁型1の命令が存在する場合には、こ
れ等は最左のレジスタ段12(第4D図)中に導入され
る。
この様な弁型1の命令の場合にはゲ−N42(第4D図
)の第1の入力への線140上に2進1信号が与えられ
る。
ゲートN42の第2の入力へクロック・パルスCL−B
が同時に与えられる事に応答して、入力線146上のレ
ジスタ12の内容はゲート144を介して上述の如く通
常の実行のために主計算機に与えるために出力線20に
通過される。
他方もしこれが1型1命令であり、線140が非付勢で
あれば、ゲ−N42及び144が脱勢される。
線148が付勢されるならば、この信号はケーブル72
に与えられ、ゲート150の第1の入力に与えられ、ゲ
ート150は線152上の妥当性ビットを受取1つ、線
154上に与えられるゲート150の出力はケーブル1
56に与えられ、ゲート158の第1の入力に与えられ
る。
上述の如く、命令カウンタの2つの低位ビットはレジス
タ160に与えられ、その出力は解読器162へ与えら
れる。
これ等の2つの低位ビットは解読及びアドレス発生器レ
ジスタ10の開始位置を示すために使用される。
即ちシーケンス段12,14,16もしくは18中にお
いて開始される。
解読器162は線164に第1の出力を与え、線164
がゲート158の第2の入力166、ゲート170の第
1の入力168、ゲート174の第1の入力172及び
ゲ−)178の第1の入力176に与えられる事によっ
てOカウント開始位置を示す。
もし線164が付勢されると、これはシーケンスは段階
12において開始し、段階14,16及び18を含む事
を示す。
1を示すカウントはゲート170の第2の入力182、
ゲート1γ4の第2の入力184及びゲート178の第
2の入力186への線180上に与えられる。
もし線180が付勢されると、シーケンスは段14から
開始し、段16及び18を含む。
2を示すカウントはゲート174の第3の入力及びゲー
ト178の第3の入力に至る線188上に与えられる。
もし線188が付勢されると、シーケンスは段16で開
始し、段18を含む。
3を示すカウントはゲート178の入力196への線1
94上に与えられる。
もし線194が付勢されると、シーケンスは段18で開
始し、他の段を含まない。
ベース及び変位は夫々ゲート206,208,210及
び212にケーブル156,200,202,204を
経て夫々レジスタ段12,14,16及び18から与え
られる。
これ等のゲートは夫々レジスタ212゜214.216
及び218からレジスタ10の夫夫段を示す第2の入力
を受取る。
即ちレジスタ212からの00は段12が情報を与える
事を示す。
レジスタ214からの01は段14が情報を与えつつあ
る事を示す。
レジスタ216からの10は段16は情報を与えつつあ
る事を示す。
レジスタ218からの11は段18は情報を与えつつあ
る事を示す。
これ等の表示は詳細に説明される如く、データ・フェッ
チを正しい実行論理ボックスA、B、CもしくはDに経
路付けるDl及びD2アドレス発生器38及び40によ
って使用される。
ゲート206は線230上に付勢出力を与えるANDゲ
ート158に応答してケーブル224.226及び22
8に至るケーブル220上にベース及び変位を与え、ケ
ーブル292上のレジスタ記憶装置12の表示をゲート
226及び228に与える。
ゲート208は線246上における妥当性ビット及び付
勢出力を与えるORゲート170に応答して線244上
に付勢出力を与えるANDゲート242に応答してゲー
ト236゜238及び240に至るケーブル232上に
ベース及び変位を与え、ゲート238及び240に至る
ケーブル234上にレジスタ段14の表示を与える。
ゲート210は線262上の妥当性ビット及びORゲー
ト174からの付勢出力に応答して線260上に付勢出
力を与えるANDゲート258に応答してゲート252
,254及び256に至るケーブル248上にベース及
び変位を与え、ゲート254及び256に至るゲート2
50上にレジスタ段16の表示を与える。
ゲート212は線278上の妥当性ビット及びORゲ−
N78からの付勢出力に応答して線276上に付勢出力
を与えるANDゲート274に応答してゲート268,
270及び272に至るケーブル264上にベース及び
変位を与え、デートン270及び272に至るケーブル
266上にレジスタ段18の表示を与える。
解読器280.282.284及び286は命令もしく
はデータをフェッチするために、命令の与えられた1つ
に対してアドレス発生器が取るベニきルートを決定する
ため64で示された2ビツト(第2図)を解読するため
に与えられる。
もしコードが0ならば選択されるべきアドレス・ルート
は存在しない。
各解読器のこの線はゲートに接続されない。
他方、もしアドレスはolならば、関;連解読器からの
゛1パ線は付勢状態にあり、これに関連するゲートは付
勢される。
例えば、解読器280.282,284もしくは286
の゛1パ線出力が付勢されると、夫々デー)224゜2
36.252もしくは268はイネーブルされ、ケーブ
ル296上に対し命令フェッチが要求された事を示して
命令アドレス発生器26にベース及び変位出力を与える
様に付勢される。
命令アドレス発生器26がどの様にこの要求に応答する
かについてはまもなく詳細に説明される。
2ビツトが10である事に応答して、関連解読器からの
線2が付勢され、これ等に関連するゲートが付勢される
例えば、解読器280,282゜284もしくは286
からの線3出力が付勢される時、ゲート226,238
,254もしくは27001つば線298上においてベ
ース及び変位情報を与え、D1アドレス発生器38に至
る線300上に解読する目的のためにレジスタ段情報を
与える様にイネーブル可能である。
2ビツトが11であると、解読器280゜282.28
4もしくは28601つの線3はゲート228,240
,256もしくは27201つをイネーブルするために
付勢され、線302上にべ−4及び変位情報が線304
上に、D2アドレス発生器40に対して線304上に解
読の目的のためにレジスタ段情報を与える。
どの様にDl及びD2アドレス発生器38及び40がこ
の情報を利用するかは以下説明される。
命令アドレス発生器26(第4A図、第4B図、第4F
図及び第4G図)は次の如く機能する。
唯1つの命令フェッチが与えられた1サイクル中に解読
兼アドレス発生レジスタ10中に存在する事を想起され
たい。
もしこれが生ずると、これは分岐命令が生ずべき事を示
し、この分岐命令要求はケーブル296上に与えられる
分岐命令要求の変位フィールドはケーブル306を経て
加算器308の第1の入力に与えられる。
分岐命令要求のベース・フィールドがケーブル310を
介してアドレスとして汎用レジスタに与えられる。
汎用レジスタ中のこのアドレスに記憶されるデータはケ
ーブル312を介して、ケーブル306上に与えられる
変位入力に加算されるべき加算器308の第2の入力に
与えられる。
結果の相は命令キャッシュ4中の要求された分岐命令の
アドレスである。
妥当性ビットはANDゲート316の第1の入力に対す
る妥当性分岐信号として線314上に与えられる。
前の動作サイクル中、妥当性ビットは非付勢状態にあり
、ANDゲート316をして脱勢せしめ、これによりA
NDゲーデー318をして脱勢せしめる。
ANDゲート316の脱勢状態は反転器320をしてA
NDゲート3220入力に付勢出力を与える。
クロック・パルスCL−Bに応答して、ANDゲート3
22のフリップ・フロップ324の1側に付勢入力を与
える。
フリップ・フロップ324の1側出力線325上で付勢
状態にあり、ANDゲート316を次のサイクルに付勢
されてゲート326,328,330゜332.334
及び336を付勢せしめる。
線325の付勢状態は同様に2重ゲート338の1側及
び反転器3400Å力に印加され、その出力は2重ゲー
ト338の他の側に与えられる。
線325上の付勢信号はクロック・パルス時間CL−A
と同時にゲート338(第4C図)をして、クリップ・
フロップ341の0側への付勢入力を与え、出力線34
2及び344上に付勢条件を与える。
加算器308からの和信号はイネーブルされたゲート3
28を通過してイネーブルされたゲ−)3300Å力を
通過して分岐命令アドレスを命令キャッシュ4に与える
ゲート328から分岐命令アドレスは同様にゲート34
6の1人力として与えられる。
線344は上述の如くこの時間には付勢され、ANDゲ
ート348の第1人力に対して与えられる。
クロック・パルスCL−Bに応答してANDゲート34
8の出力はアクティブとなり、ゲート346をイネーブ
ルして分岐命令アドレスを通過され、分岐アドレス・レ
ジスタ350はこのアドレスを記憶する。
線314の妥当性ビットはアクティブである時、分岐命
令アドレスを通過させる様にゲート346をイネーブル
する。
分岐命令が生ずべき事を示して線314上の妥当性ビッ
トが付勢されると、ANDゲート316はアクティブ出
力を与える。
なんとなれば線325がアクティブであり、これはAN
Dゲーデー322をインアクティブ反転器320を介し
てディセーブルする。
同時にANDゲート318はクロッキング・パルスCL
−Bに応答してアクティブとなり、フリップ・フロップ
324をゼロ状態にセットし、線325をインアクティ
ブになし、前もってイネーブルされたゲートをディセー
ブルする。
分岐命令アドレスがゲート330を介して命令キャッシ
ュ4に利用され得る様になると同時に、命令カウンタ3
52(第4C図)中のアドレスはインクレメント装置3
54によって4だけインクレメントされ、この新しい命
令アドレスはケーブル356を介してゲート3320入
力に与えられる。
線325のアクティブ状態はデー)322をイネーブル
し、新しい命令アドレスを命令キャッシュ4に通過し、
ここで次の命令は分岐が選択されない場合において実行
される新しい命令として定義される。
この様に分岐ターゲット及び次の命令が発生され、次の
アドレス発生サイクル中クロック・パルスCL−Bが与
えられる侍医の命令は命令キャッシュ4からゲート35
8に与えられ、これはクロック・パルス時間CL−Bに
次の命令を次の命令レジスタ360に与える。
命令キャッシュ4からの分岐ターゲット命令はゲート3
62に与えられ、クロック・パルス時間CL−Bの時・
に分岐ターゲット・レジスタ364に与えられる。
従って2つの可能な命令が、分岐がなされるべきかどう
かについで実行論理ボックスA、B、CもしくはDの1
つによって決定が下されるのを待つために記憶される。
命令フェッチに関する限りアイドル・サイクツしが続く
命令フェッチ・アドレス発生サイクルら終り近く、フリ
ップ・フロップ341は上述の〃[くそのO状態にあり
、線342及び344がアクティブで、ANDゲート3
48がイネーブルされ従ってクロック・パルスCL−B
が生ずる時、グー)346が付勢され、分岐アドレスが
レジスタ350へ与えられる。
この様にして、分岐アドレスは分岐が選択された場合に
保存される。
フリップ・フロップ324が0状態にセットされる時、
ゲート326がイネーブルされ、多重命令語が紐くクロ
ック・パルス時間CL−Aにゲート365を介してレジ
スタ10に転送されるのが防止される。
レジスタ364中の分岐ターゲットもしくはレジスタ3
60中の次の命令のいずれが解読兼アドレス発生装置1
0に与えられるべき決定は実行論理ボックスA、B、C
もしくはDの1つによってアイドル命令サイクル中に形
成される。
この決定は次の如く達成される。
もし分岐が選択されるのならば、線366はアイドル命
令サイクル中にアクティブにされる。
線366のアクティブ状態は2重ゲート368の1人力
(第4G図)に与えられ反転器370によって反転され
、2重ゲート368の他の入力に与えられる。
クロッキング・パルス時間CL−Bにおいて線366の
アクティブ状態はフリップ・フロップ372の1の側に
与えられ、インアクティブ状態が同一フリップ・フロッ
プのO側に印加される。
これに応答して、線374上のフリップ・フロッグの1
出力はアクティブとなり、線376上のフリップ・フロ
ップの0側がインアクティブとなる。
線374のアクティブ状態はゲート377及びゲート3
78をイネーブルする。
ゲート377の付勢は分岐ターゲット命令をしてターゲ
ット365に通過せしめ、ケーブル8ヘクロツク・パル
ス時間CL−Aに通過され、アドレス発生器レジスタ1
0に与えられる1分岐がなされる場合には同様にゲート
378がイネーブルされ、命令カウンタは分岐アドレス
によって更新される。
レジスタ350中の分岐アドレスはゲート378を経て
ケーブル379に与えられ、ゲート3800Å力を与え
る。
クロック・パルス時間CL−Aゲート380において分
岐アドレスを通過させて命令カウンタ352を更新する
3上述の如(。
命令カウンタ352の出力は次いでインクレメント装置
354によって4だけインクレメントされ、その出力は
ケーブル356を介してゲート332及びゲート382
に与えられる。
もし分岐が選択されないと、フリップ・フロップ372
はその1出力がインアクティブとなり、その0出力はイ
ンアクティブである線366に応答してアクティブとな
る。
線376のアクティブ状態はゲート384のゲート入力
に与えられ、レジスタ386の内容をゲート3800Å
力に通過して命令カウンタ362をクロック・パルス時
刻CL−Aにおいて更新する。
2つの低位ビットが160にある。
線376のアクティブ状態は同時にゲート390を付勢
し、レジスタ360中に記憶された次の命令をイネーブ
ルされたゲート326及び364を経てケーブル8及び
解読兼アドレス発生レジスタ10に通過する。
データ・フェッチの動作がD2アドレス発生器40に関
連して説明される。
アドレス発生器40に関連するデータ・フェッチは所与
のサイクル中1つのデータ・フェッチに制限される。
同様にDIアドレス発生器38に関係しても与えられた
サイクルに対して1データ・フェッチの制御が存在する
従ってゲート228,240,256及び27201つ
且つ唯1つが命令の変位フィールド及びベース・フィー
ルドをケーブル302に印加してデータ・フェッチを開
始するために与えられたサイクル中にイネーブルされる
次いで命令の変位フィールドはケーブル302に与えら
れ、命令のベース・フィールドがケーブル392に与え
られる。
ケーブル392上の命令のベース・フィールドがアドレ
スとして汎用レジスタ(図示されず)に印加され、この
アドレスにおける汎用レジスタ中に記憶されたデータが
ケーブル394を経て加算器396に印加され、ケーブ
ル390上の命令の変位フィールドと加算するためにケ
ーブル394を介して加算器396に印加される。
加算器396中の結果の和はアドレス・レジスタ398
に印加され、これらのアドレスはケーブル400及び4
02に印加される。
ケーブル402上のアドレスはケーブル336を介して
データ・キャッシュ6に印加される。
上述の如く、ゲート336はフリップ・フロップ324
(第4A図)が1状態にある時はいつでもイネーブルさ
れる。
ケーブル402上に示されたアドレスにおいてデータ・
キャッシュ6に記憶されたデータはケーブル404を経
てデータ・レジスタ406に印加される。
ケーブル400上のアドレス及びケーブル408上に現
われるレジスタ406中のデータは各々ケーブル410
を介して夫々ゲート412.414,416及び418
の夫々の入力に与えられる。
解読器420はゲート412゜414.416もしくは
418のどれがイネーブルされるかを、レジスタ段12
,14,16もしくは18のどれが発生40にデータを
与えるかを表示するケーブル304上の2ビツト・コー
ドに応答して決定する。
例えば、もしデータ・フェッチがレジスタ12から開始
されると、ゲート228は解読器280によってイネー
ブルされ、レジスタ212からの2ビット信号00は解
読器420に通過され、これ等に応答してO線はアクテ
ィブとなりANDゲート422をイネーブルし、クロッ
ク・パルス時刻CL−Bにゲート422の出力はアクテ
ィブとなりゲート412をイネーブルしてケーブル41
0上のアドレス及びデータを保持レジスタ424に通過
する。
もしデータ・フェッチがアドレス・レジスタ段14から
開始される時は、解読器282はゲート240をイネー
ブルしレジスタ214からの2ビツト・コード01を解
読器420に通過させ、線1を付勢し、ANDゲート4
26がイネーブルされ、クロック・パルス時Mc L−
Bにおいてその出力はアクティブとなり、ゲート414
をイネーブルし、ケーブル410上のアドレス及びデー
タ情報を保持レジスタ428に通過される。
データ・フェッチがレジスタ段16によって開始される
時は、解読器284はゲート256をイネーブルされ、
レジスタ段16からの2ビツト・コードを解読器420
に通過させ、出力線2を付勢し、ANDゲート430を
イネーブルし、クロック・パルス時刻CL−Bにおいて
、その出力はゲート416をイネーブルする様にアクテ
ィブとなり、ケーブル410上のアドレス及びデータ情
報は保持レジスタ432に通過される。
もしアドレス・レジスタ段18がデータ・フェッチを開
始するのであれば、解読器286はゲート272をイネ
ーブルし2ビツト・コードをレジスタ218から解読器
420に通過させ出力線3を付勢し、ANDゲート43
4をイネーブルしてクロック・パルス時刻CL−Bにお
いて、その出力線はゲート418をイネーブルする様に
アクティブになり、ゲート418をイネーブルしてケー
ブル410上のアドレス及びデータ情報を保持レジスタ
436に通過させる。
レジスタ424,428,432及び436からの出力
は夫々ゲート438,440゜442及び444に印加
され、クロック・パルス時刻CL−Aに夫々レジスタの
内容がゲート・アウトされる。
ゲート438からアドレス及びデータ情報はケーブル4
46に印加され、ここからケーブル450及び452に
印加される様にケーブル448に印加され、ケーブル4
50及び452上から夫々データ及びアドレス情報は実
行論理ボックスAに与えられる。
ゲート440からアドレス及びデータ情報はケーブル4
54に印加され、次いでケーブル456、ケーブル46
6及び468に印加され、データ及びアドレス情報を夫
夫実行論理ボックスCに与えられる。
アドレス及びデータ情報はゲート444からケーブル4
70に与えられ、次いでケーブル472からケーブル4
74及び478に印加され、次いで実行論理ボックスD
に夫々データ及びアドレス情報を与える。
DIアドレス発生器38はアドレス発生器40と同一で
あり、詳細に説明されない。
命令の変位フィールド及びベース・フィールドより成る
データはケーブル298から夫々ケーブル480及び4
82に与えられる。
ケーブル482上の命令のベース・フィールドはアドレ
スとして汎用レジスタ(図示されず)に与えられ、この
アドレスに記憶されたデータはケーブル480上の変位
と合計されるためにアドレス発生器38中に加算器への
入力としてケーブル484上に与えられる。
この加算の結果はケーブル4・86上のアドレスとして
使用され、ゲート334を介してゲートされ、データ・
キャッシュ6からデータをフェッチし、データは次いで
ケーブル488を介してアドレス発生器38に与えられ
る。
ケーブル300上の2ビツト・コード語に応答してアド
レス及びデータ情報はアドレス発生器40で述べるもの
と同一のものである保存レジスタにゲートされ、これ等
のレジスタの内容はアドレス発生器38からの出カケー
プル492,494,496及び498上に与えられる
ケーブル492上のアドレス及びデータ情報はケーブル
448に結合され、実行論理ボツクスAに与えられる。
ケーブル494上のアドレス及びデータ情報はケーブル
456に結合されて実行論理ボックスBに印加される。
ケーブル496上のアドレス及びデータ情報はケーブル
464に結合され、実行論理ボックスCに印加される。
ケーブル498上のアドレス及びデータ情報はケーブル
472に結合され、実行論理ボックスDに印加されろ。
どの様にして夫々の実行論理ボックスがアドレス発生器
38及び40からのアドレス及びデータ情報並びに解読
兼アドレス発生レジスタ10からのオペランド情報に応
答するかについてはまもなく説明する。
実行論理ボックスA、B、C及びD中の命令の実行のた
めの開始点は解読及びアドレス発生レジスタ10から命
令の開始点を決定するのと同一である。
即ち、レジスタ160からの2低位ビットは開始点を誘
導するために使用される。
レジスタ160からの2低位ビットはケーブル500を
介してゲート502に与えられ、クロック・パルス時刻
CL−Bにおいて2ビツト・コードを保持レジスタ50
4にゲートする。
保持レジスタ504は保持レジスタ88,90,92及
び94が解読兼アドレス発生レジスタ10の夫々の段か
らの命令コードを保持しているのと同一時間枠に2つの
低位ビットを保持している。
クロック・パルス時刻CL−Aにおいて、ゲート506
はイネーブルされ保持レジスタ504の内容をレジスタ
508に転送する。
解読器510は2ビツト・コードを解読してその2ビツ
ト・コードを示す4本の出力線に解読された結果を与え
る。
夫々の命令コードを含む保持レジスタの内容が実行論理
ボックスに与えられるのと同時に保持レジスタ504の
内容は解読の目的のために転送された。
解読器510の線512上の0出力がアクティブである
ならば、命令シーケンスは実行論理ボックスAを使用し
て開始される。
もし線513上の1出力はアクティブならば、これは命
令シーケンスが実行論理ボックスBで開始する事を意味
する。
線515上の11211出力がアクティブならば、これ
は命令シーケンスは実行論理ボックスCで開始する事を
意味する。
もし線517の3“出力がアクティブならば、命令シー
ケンスは実行論理ボックスDで開始する事を意味する。
実行論理ボックスAを参照するに、線512上のアクテ
ィブ信号は反転器5140入力、ANDゲート516の
第1の入力、ORゲート518の第1の入力、ORゲー
ト520の第1の入力及びORゲート522の第1の入
力に与えられる。
線512がアクティブであるから、反転器514の出力
はインアクティブであり、ORゲート524からのアク
ティブ入力に貢献せず、従ってゲート526をイネーブ
ルしない。
線512のアクティブ状態は反転器528(ボックスB
)のアクティブ出力に貢献せず、従ってこれに応答して
ORゲート530がインアクティブ出力を与えてゲート
532をイネーブルしない。
同様に線512のアクティブ状態はインバータ532(
ボックスC)からのインアクティブ出力を与え、これは
ゲート534のイネーブルに貢献しない。
線512のアクティブ状態は反転器536にアクティブ
入力を与え、これらのインアクティブ出力はゲート53
8のイネーブルに貢献しない。
ゲート526,532,534及び538は与えられた
条件コードに応答する。
この条件コードはこの技術分野で周知の如く完了した動
作を示すコードである。
この条件コードはプログラム状態語ユニットからゲート
542(第4N図)にもたらされ、ゲート542はクロ
ック・パルス時刻CL−Aにおいて、イネーブルされ、
レジスタ544に条件コードを記憶するために与えられ
る。
記憶された条件コードは次いでケーブル546に対して
与えられ、これからケーブル548及び550に、そし
て実行論理ボックスA1ゲート526の入力に夫々印加
される。
もしゲート526がイネーブルされると、条件コードは
次の如く実行論理ボックスBに通過される。
ゲート526は次の条件の下にイネーブルされる。
先ず妥当性ビットはレジスタ112の0出力において線
552上に示された如く0である。
妥当性ビットは上述の如く非妥当性命令の場合には0で
ある。
これ等の有効性ビットはORゲート524の第2人力に
与えられ、これによって出力線554上にアクティブ出
力を与えられる。
これ等はゲート526をイネーブルして線556上に条
件コードを与える。
第2の方法ではもし実行論理ボックスAは群の開始命令
を含まなければゲート526がイネーブルされる。
この事は線512がインアクティブならば生ずる。
この事は次いで反転器514からアクティブ出力を与え
、次いで線554上のORゲート524からのアクティ
ブ出力を与える。
従って、これ等の2条件の下に、プログラム・ステータ
ス語からの条件コードはゲート526によって通過され
る。
これは実行論理ボックスAをバイパスする。
もし他方実行論理ボックスAに与えられる命令は妥当性
命令ならば、これ等は1である妥当性ビットによって示
され、線148はアクティブであり、型1命令を示す。
これ等の2信号はANDゲ−)553に与えられ線55
5上のアクティブ出力は実行論理ボックスAに対するイ
ネーブル信号となる。
この信号の機能は第5図に関連してより詳細に説明され
る。
これは線512がアクティブである事と結合させ、条件
コードは実行論理ボックスAによって発生される。
線512のアクティブ状態は反転器514によって反転
され、ORゲ−)524への線552上にインアクティ
ブ入力を与え、第5図に関連して述べられる新しいコー
ドの発生を示す実行論理ボックスAからの線560は線
554上のORゲート525からの出力はゲート526
をテ′スイネーブルするためにインアクティブである如
く反転器562からインアクティブ出力を与える様にア
クティブである。
線512上のアクティブ状態は線558及び560のア
クティブ状態である如(、ANDゲート516に印加さ
れ、ANDゲートはゲート564をイネーブルするアク
ティブ出力を与え、ケーブル563上の新しい条件コー
ドをケーブル556に通過し、実行論理ボックスB及び
ゲート532の入力を与える。
上述の如く論理網は実行論理ボックスB、C及びDに関
連し、夫々実行論理ボックスに与えられる条件コードを
通過させるか、続く回路網に与えられる新しい条件コー
ドを発生する。
事実、最後の条件コードはケーブル568上に与えられ
、次いでブロック・パルス時刻CL−Bにおいてイネー
ブルされるゲート570に対して、次いでケーブル57
2に対して与えられ、プログラム・ステータス・ワード
・ユニットに対して条件コードを更新する。
データをフェッチするための汎用レジスタへのアドレス
及び夫々実行論理ボックスに対してフェッチされるデー
タは574で示されたケーブルの群上に与えられる。
実行論理ボックスAから及びこれへの並びに汎用レジス
タへ及びこれからのアドレス及びデータは夫々ケーブル
5740群からケーブル576及び578上に夫々与え
られる。
同様にアドレス及びデータ・ケーブル入力及び出力が残
りの実行論理ボックスB、C及びDに対して与えられる
アドレス及びデータ情報は同様に実行論理ボックスAか
らクロック・パルスRJIJCL−Bにおいてイネーブ
ルされるデー1−584、ケーブル580及び582を
経て実行論理ボックスAから汎用レジスタに与えられゲ
ートからの出・力はケーブル586上に与える。
実行論理ボックスB、C及びDからの同様なアドレス及
びデータ情報が同様にゲート584に与えられる。
実行論理ボックスAによる記憶動作の場合には、アドレ
ス及びデータ情報はゲート592に与えられるためケー
ブル590に至るケーブル588上に与えられる。
クロッキング・パルス時刻CL−Bに、ゲート592は
記憶のためのアドレス及びデータ情報を記憶データ兼ア
ドレス・レジスタ(SDA−z )594に与える様に
イネーブルされる。
このレジスタの出力は情報を第2の記憶データ兼アドレ
ス・レジスタ(SDA−2)598に与えるためにクロ
ッキング・パルス時刻CL−Aにおいてイネーブルされ
るゲート5960入力に与えられ、このレジスタの出力
はケーブル600上のデータ・キャッシュ6に与えられ
る。
次に実行論理ボックスAを詳細なブロック図である第5
図を参照されたい。
実行論理ボックスB。C及びDも同様であり、同様に動
作する。
実行論理ボックスは同様に型1命令を実行する事によっ
て演算兼論理ユニット型の機能を遂行する。
ケーブル106上のOPコード並びにケーブル108及
び110上のR1及びR2フィールドは夫々レジスタ6
06,608及び610に印加される。
D1アドレス発生器38もしくはD2アドレス発生器4
001つからのデータ及びアドレス情報は夫々レジスタ
612及び614に印加される。
ゲート602は上記のレジスタの各々の夫々の出力に接
続される。
イネーブル信号は線555を介してゲート602に与え
られる。
上述の如(、線555はレジスタ段12中の命令が妥当
な型Iの命令である時にアクティブである。
もし命令が弁型1命令もしくは非妥当命令であるならば
、線555はインアクティブであり、ゲートがディセー
ブルされる。
レジスタ606中のOPコードは解読器618に与えら
れ、これは夫々レジスタ608,610,612及び6
14中に記憶された情報で動作を遂行するために命令を
解読する。
複数個の命令は解読器618によって解読され、この様
な命令の例示的群の実行は実行論理ボックスAの動作に
関連して説明される。
他のこの様な命令が同様に遂行され得、実行論理ボック
スB。
C及びDも与えられたOPコード、R1及びR2フィー
ルド並びにデータ及び夫々アドレス発生器からのアドレ
スに応答して同様に動作する。
第1のこの様な命令は条件付き分岐である。
この命令はOPコードによって呼出される時、線620
(第5A図)はアクティブとなり、これによってゲート
622及びANDゲート624(第5E図)がイネーブ
ルされる。
レジスタ608の内容、R1フィールドはゲート622
を介してケーブル548上の条件コードと比較するため
にレジスタ626に与えられる。
解読器628は条件コードを解読し、解読器の4本の線
の出力はANDゲーデー30,632,634及び63
6の夫々の入力に与えられ、これ等のゲートの第2の入
力はレジスタ626の4個の段の夫々の1出力に接続さ
れている。
上記のゲートの各々の出力はORゲート638の夫々の
入力に接続され、これからの出力線640はORゲート
638に接続されたANDゲートの1つからアクティブ
出力が存在する時にはいつでもアクティブとなる。
線640はゲート624の第2の入力に接続され、入力
線の各々のアクティブ状態に応答してこれからの出力線
366は入力線は分岐がなさるべき事を示してアクティ
ブとなる。
第4図に関して上述された如く、この分岐選択信号はレ
ジスタ364(第4B図)中に記憶された分岐ターゲッ
ト命令をして出カケープル8に与える様にし、次いで次
のサイクルに分岐命令を実行するために解読兼アドレス
発生レジスタ10に与える。
次に説明さるべき第2の命令は゛半語を記憶せよパであ
り、この命令は解読器618からの線642がアクティ
ブとなる時に呼出される。
線642はORゲート644の第1の入力及びゲート6
48のイネーブル入力に接続された線646に対して接
続される。
ORゲート644からの出力線650はゲート660の
イネーブル入力に接続される。
レジスタ608のR1フィールドはイネーブルされたゲ
ート660を介してケーブル576及び580に延びる
ケーブル662に通過される。
これはR1フィールドを第1のアドレスとして汎用レジ
スタに与える。
このアドレスにおけるデータは次いでゲート648の入
力に接続されケーブル578を介して実行論理ボックス
に戻される。
イネーブルされたゲート648によるデータは出カケー
プル664に与えられる。
このケーブルはゲート670及び672への入力である
ケーブル666及び668に延びている。
アドレス・レジスタ614からの2ビツトは解読器61
4への線674上に与えられ、これからの出力線678
及び680はケーブル670及び672へのイネーブル
入力並びにゲート682及び684へのイネーブル入力
に与えられる。
ゲート682及び684への入力はケーブル686及び
688を介してレジスタ612からのデータである。
イネーブルされたデー)670,672゜682及び6
84は次いでケーブル690及び692を介してデータ
情報をケーブル588に与えられ、データ・キャッシュ
6にアドレス及びデータをレジスタ594及び598(
第4S図)に与える。
第3の命令は解読器618からの線694がアクティブ
となる時に実行される加算である。
線694は線696にのびゲート698.700 。
702及びORゲート704の第1の入力をイネーブル
する。
ORゲート704は第4図に関して説明された如く次の
実行論理ボックスに対して新しい条件付はコードの設定
を要求する。
線694のアクティブ状態は同様に線706に延びて、
ゲート708をイネーブルし、レジスタ612からのデ
ータを出カケープル710に、次いでゲート698の入
力に通過され、ゲート698はこの時イネーブルされて
いるので、次に加算器7140入カケ−プル712に印
加される。
ORゲート644は線694のアクティブ状態に応答し
て出力線650にアクティブ信号を与え、レジスタ60
8からR1フィールドをケーブル662上に、次いで汎
用レジスタのアドレスとしてケーブル576及び580
上に与えられる。
このアドレスにおけるデータはケーブル712上のレジ
スタ612からのデータと加算するために加算器714
に第2の入力としてケーブル716に至るケーブル57
8に入力として与えられる。
加算器γ14からの和はレジスタ716に与えられ、0
テスト回路網718及びゲート720に与える。
和はイネーブルされたゲート700を通して出カケープ
ル582に通過される。
この和は汎用レジスタに対して与えられるデータである
Oテストユニットは線720上にアクティブ信号を与え
、和がOである時は条件コードがOOにセットされるべ
き事を示す。
この信号はORゲート722及び724の第1の入力に
対して与えられる。
0テスト信号は同時に反転器726に対して与えられ、
これからの出力はANDゲーデー28の第1の入力とし
て与えられる。
ANDゲーデー28の第2の入力は和がOよりも大きい
事を示すレジスタ716中のレジスタ段730から与え
られる。
ANDゲーデー28から出力はORゲート732の第1
の入力に与えられる。
もし和の符号が負ならば、これはレジスタ段734によ
って示されている。
アクティブ出力がORゲート722の第2の入力に与え
られ、ORゲート736の第1の入力に対して与えられ
る。
加算器714からのオーバーフローはこのアクティブで
ある線738によって示されている。
このアクティブ信号はORゲート736に第2の入力及
びORゲート732に第2の入力として与えられる。
ORゲデー 722゜732.724及び736の出力
はレジスタ740に与えられ、レジスタγ40の出力は
ケーブル742を介してこの時間においてゲート702
に与えられる。
新しい条件コードはゲート702を介してケーブル56
3に通過され、実行論理ボックスBに与えられる。
以下説明されるべき第4及び最後の命令は線746がア
クティブとなる時に実行される比較論理即値命令である
線746はORゲート704の第2人力に接続された線
748に延びている。
線560上のアクティブ・セット条件コード信号は再び
次の実行論理ボックスに対して新しい条件コードを与え
る。
線748上のアクティブ信号はデー1−750をイネー
ブルするために与えられる。
線746のアクティブ状態は同様に線γ52に延び、ゲ
ート754及び756をイネーブルされレジスタ608
及び610の内容をレジスタ758に通過させる。
レジスタ758はケーブル760からの出力を比較回路
網762の第1の入力に与える。
線752の能動状態は同様にANDゲーデー64.76
6.768及び770に延び、これ等はその第2の入力
が解読器676からの夫々の出力に接続されている。
ANDゲーデー64 。766.768及び770から
の出力はゲート772.774.776及び778のイ
ネーブル入力として与えられ、これ等のデータ・レジス
タ612の選択された内容を比較器762の第2人力に
通過させる。
もしレジスタ758からのオペランドが下方レベルにあ
ると、比較器762からの出力線780はORゲート7
82の第1の入力及びレジスタ7860段784に与え
られる。
ケーブル781上の比較回路網762の第2の入力に与
えられるオペランドが下方レベルならば、線788がア
クティブになり、この信号はORゲート790に第1の
入力及びレジスタ786のレジスタ段792に与えられ
る。
比較器762の第1及び第2の入力上のオペランドが等
しければ、線794はアクティブとなり、この線はOR
ゲート782及び790の第2の入力に印加され、これ
等のORゲートからの出力は夫々レジスタ段794及び
796に与えられる。
レジスタγ86からの出力はケーブル198を経て、こ
の時間においてイネーブルされたゲート750に与えら
れ、次いで実行論理ボックスに対する出カケープル56
3の新しい条件材はコードとして与えられる。
第6図は3つの多重命令語A、B及びCに対するタイミ
ング図である。
語Bは分岐及び語Cは記憶命令を含んでいる。
タイミング図は動作の6サイクルに対するもので、クロ
ック・パルス時刻CL−A及びCL−B中の動作シーケ
ンスを述べている。
工業上の応用 本発明の目的は計算機に対する改良された多重命令実行
システムを与える事にある。
本発明の他の目的は多重命令が同時に実行される計算機
のための改良多重命令実行システムを与える事にある。
本発明の依然他の目的は4つの命令が同時に実行され、
1つの命令フェッチ、2つのデータ・フェッチ及び1つ
の記憶動作が存在する多重命令実行システムを与える事
にある。
【図面の簡単な説明】
第1図は第1A図及び第1B図より成る図面の配列を示
した図である。 第1A図及び第1B図は本発明に従う多重命令実行機械
のブロック図表示である。 2・・・・・・主計算機、4・・・・・・命令キャッシ
ュ、6・・・・・・データ・キャッシュ、10・・−・
・・命令レジスタ、26・・・・・・アドレス発生器、
32・・・・・・プログラム°スデータス語、38・・
・・・・アドレス発生器、40・・・・・・アドレス発
生器、48・・・・・・汎用レジスタ。 第2図は多重命令語の部分の1つの命令語の命令フォー
マットを示した図である。 第3図はどの様にして命令カウンタが1つの多重命令語
から次の多重命令語に命令カウンタがインクレメントさ
れるかを示す3つの多重命令語の表示である。 第4図は第4A図乃至第4S図を構成する図面の配列図
である。 第4A図乃至第4S図は第1図に一般的に図示された多
重命令実行機械のより詳細なブロック図である。 第5図は第5A図乃至第5F図を構成する多重命令実行
機械のより詳細なブロック図表示である。 第5A図乃至第5F図は第40図乃至第4R図に一般的
に示された実行論理回路網のブロック図である。 第6図は第6A図乃至第6C図を構成する図面の配列体
図であり、第6A図乃至第6C図は本発明中に使用され
た多重命令語のタイミング図である。

Claims (1)

  1. 【特許請求の範囲】 1 nを2以上の整数として、命令シーケンスからn個
    の命令を含む群を作成して第1記憶手段に記憶し、その
    際群毎のフェッチ動作及び記憶動作の回数を一定数以下
    に制限すると共に分岐命令を含む群においては該分岐命
    令を常に該群の最後の命令とし、前記第1記憶手段から
    1つの群を読出して第2記憶手段ヘロードし、該第2記
    憶手段ヘロードされた群に含まれるn個の命令をn個の
    実行手段で同時に実行するようにしたことを特徴とする
    、複数の命令を同時に実行する方法。 2 前記n個の命令は1個以上n個までの有効な命令と
    n−i個以下の無効な命令とより成り、前記n個の実行
    手段の各々は対応する命令が有効な場合にのみ該命令を
    特徴とる特許請求の範囲第1項に記載の方法。
JP55066044A 1979-06-29 1980-05-20 複数の命令を同時に実行する方法 Expired JPS5816490B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US06/053,567 US4295193A (en) 1979-06-29 1979-06-29 Machine for multiple instruction execution

Publications (2)

Publication Number Publication Date
JPS567147A JPS567147A (en) 1981-01-24
JPS5816490B2 true JPS5816490B2 (ja) 1983-03-31

Family

ID=21985149

Family Applications (1)

Application Number Title Priority Date Filing Date
JP55066044A Expired JPS5816490B2 (ja) 1979-06-29 1980-05-20 複数の命令を同時に実行する方法

Country Status (5)

Country Link
US (1) US4295193A (ja)
EP (1) EP0021399B1 (ja)
JP (1) JPS5816490B2 (ja)
DE (1) DE3071119D1 (ja)
IT (1) IT1149931B (ja)

Families Citing this family (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4439828A (en) * 1981-07-27 1984-03-27 International Business Machines Corp. Instruction substitution mechanism in an instruction handling unit of a data processing system
US4521851A (en) * 1982-10-13 1985-06-04 Honeywell Information Systems Inc. Central processor
US4680701A (en) * 1984-04-11 1987-07-14 Texas Instruments Incorporated Asynchronous high speed processor having high speed memories with domino circuits contained therein
US4899275A (en) * 1985-02-22 1990-02-06 Intergraph Corporation Cache-MMU system
US5255384A (en) * 1985-02-22 1993-10-19 Intergraph Corporation Memory address translation system having modifiable and non-modifiable translation mechanisms
US4860192A (en) * 1985-02-22 1989-08-22 Intergraph Corporation Quadword boundary cache system
US4884197A (en) * 1985-02-22 1989-11-28 Intergraph Corporation Method and apparatus for addressing a cache memory
US4933835A (en) * 1985-02-22 1990-06-12 Intergraph Corporation Apparatus for maintaining consistency of a cache memory with a primary memory
JP2539357B2 (ja) * 1985-03-15 1996-10-02 株式会社日立製作所 デ−タ処理装置
JPH0752390B2 (ja) * 1985-05-07 1995-06-05 株式会社日立製作所 命令処理装置
EP0205193B1 (en) * 1985-06-17 1996-10-23 Nec Corporation Information processing system comprising a register renewal waiting control circuit with renewal register number registering means
US4847755A (en) * 1985-10-31 1989-07-11 Mcc Development, Ltd. Parallel processing method and apparatus for increasing processing throughout by parallel processing low level instructions having natural concurrencies
JPH0743648B2 (ja) * 1985-11-15 1995-05-15 株式会社日立製作所 情報処理装置
US5349672A (en) * 1986-03-17 1994-09-20 Hitachi, Ltd. Data processor having logical address memories and purge capabilities
EP0239081B1 (en) * 1986-03-26 1995-09-06 Hitachi, Ltd. Pipelined data processor capable of decoding and executing plural instructions in parallel
US5091846A (en) * 1986-10-03 1992-02-25 Intergraph Corporation Cache providing caching/non-caching write-through and copyback modes for virtual addresses and including bus snooping to maintain coherency
GB8630720D0 (en) * 1986-12-23 1987-02-04 Unilever Plc Cosmetic compositions
US5214770A (en) * 1988-04-01 1993-05-25 Digital Equipment Corporation System for flushing instruction-cache only when instruction-cache address and data-cache address are matched and the execution of a return-from-exception-or-interrupt command
EP0353819B1 (en) * 1988-08-02 1997-04-09 Koninklijke Philips Electronics N.V. Method and apparatus for synchronizing parallel processors using a fuzzy barrier
US5202967A (en) * 1988-08-09 1993-04-13 Matsushita Electric Industrial Co., Ltd. Data processing apparatus for performing parallel decoding and parallel execution of a variable word length instruction
DE69030931T2 (de) * 1989-04-24 1998-01-15 Ibm Mehrfachsequenzprozessorsystem
CA2016068C (en) * 1989-05-24 2000-04-04 Robert W. Horst Multiple instruction issue computer architecture
US5136697A (en) * 1989-06-06 1992-08-04 Advanced Micro Devices, Inc. System for reducing delay for execution subsequent to correctly predicted branch instruction using fetch information stored with each block of instructions in cache
US5129067A (en) * 1989-06-06 1992-07-07 Advanced Micro Devices, Inc. Multiple instruction decoder for minimizing register port requirements
US5197137A (en) * 1989-07-28 1993-03-23 International Business Machines Corporation Computer architecture for the concurrent execution of sequential programs
JP2507638B2 (ja) * 1989-12-01 1996-06-12 三菱電機株式会社 デ―タ処理装置
US5119495A (en) * 1989-12-21 1992-06-02 Bull Hn Information Systems Inc. Minimizing hardware pipeline breaks using software scheduling techniques during compilation
US5203002A (en) * 1989-12-27 1993-04-13 Wetzel Glen F System with a multiport memory and N processing units for concurrently/individually executing 2N-multi-instruction-words at first/second transitions of a single clock cycle
US5230068A (en) * 1990-02-26 1993-07-20 Nexgen Microsystems Cache memory system for dynamically altering single cache memory line as either branch target entry or pre-fetch instruction queue based upon instruction sequence
US5163140A (en) * 1990-02-26 1992-11-10 Nexgen Microsystems Two-level branch prediction cache
US5226130A (en) * 1990-02-26 1993-07-06 Nexgen Microsystems Method and apparatus for store-into-instruction-stream detection and maintaining branch prediction cache consistency
EP0450658B1 (en) * 1990-04-06 2001-08-01 Nec Corporation Parallel pipelined instruction processing system for very long instruction word
CA2037708C (en) * 1990-05-04 1998-01-20 Richard J. Eickemeyer General purpose compound apparatus for instruction-level parallel processors
US5214763A (en) * 1990-05-10 1993-05-25 International Business Machines Corporation Digital computer system capable of processing two or more instructions in parallel and having a coche and instruction compounding mechanism
US5504932A (en) * 1990-05-04 1996-04-02 International Business Machines Corporation System for executing scalar instructions in parallel based on control bits appended by compounding decoder
EP0545927B1 (en) * 1990-05-04 2000-06-28 International Business Machines Corporation System for preparing instructions for instruction parallel processor and system with mechanism for branching in the middle of a compound instruction
US5303356A (en) * 1990-05-04 1994-04-12 International Business Machines Corporation System for issuing instructions for parallel execution subsequent to branch into a group of member instructions with compoundability in dictation tag
ATE146611T1 (de) * 1990-05-04 1997-01-15 Ibm Maschinenarchitektur für skalaren verbundbefehlssatz
US5448746A (en) * 1990-05-04 1995-09-05 International Business Machines Corporation System for comounding instructions in a byte stream prior to fetching and identifying the instructions for execution
US5295249A (en) * 1990-05-04 1994-03-15 International Business Machines Corporation Compounding preprocessor for cache for identifying multiple instructions which may be executed in parallel
US5197135A (en) * 1990-06-26 1993-03-23 International Business Machines Corporation Memory management for scalable compound instruction set machines with in-memory compounding
EP0825529A3 (en) * 1990-05-04 1998-04-29 International Business Machines Corporation System for preparing instructions for instruction parallel processor and system with mechanism for branching in the middle of a compound instruction
CA2038264C (en) * 1990-06-26 1995-06-27 Richard James Eickemeyer In-memory preprocessor for a scalable compound instruction set machine processor
JP2532300B2 (ja) * 1990-10-17 1996-09-11 三菱電機株式会社 並列処理装置における命令供給装置
EP0498067A2 (en) * 1991-02-08 1992-08-12 International Business Machines Corporation Microcode generation for a scalable compound instruction set machine
US5287467A (en) * 1991-04-18 1994-02-15 International Business Machines Corporation Pipeline for removing and concurrently executing two or more branch instructions in synchronization with other instructions executing in the execution unit
JP2779557B2 (ja) * 1991-07-09 1998-07-23 三菱電機株式会社 並列演算処理装置
EP0544083A3 (en) * 1991-11-26 1994-09-14 Ibm Interleaved risc-type parallel processor and processing methods
US5590359A (en) * 1992-08-05 1996-12-31 Intel Corporation Method and apparatus for generating a status word in a pipelined processor
US5737561A (en) * 1993-01-22 1998-04-07 Intel Corporation Method and apparatus for executing an instruction with multiple brancing options in one cycle
US5717908A (en) * 1993-02-25 1998-02-10 Intel Corporation Pattern recognition system using a four address arithmetic logic unit
US5825921A (en) * 1993-03-19 1998-10-20 Intel Corporation Memory transfer apparatus and method useful within a pattern recognition system
US5941986A (en) * 1993-04-30 1999-08-24 Intel Corporation Micro-code sequencer with branch-taken and branch-not-taken micro-code vectors sharing common address to eliminate taken branch penalties
US5752013A (en) * 1993-06-30 1998-05-12 Intel Corporation Method and apparatus for providing precise fault tracing in a superscalar microprocessor
US5721854A (en) * 1993-11-02 1998-02-24 International Business Machines Corporation Method and apparatus for dynamic conversion of computer instructions
DE69430018T2 (de) * 1993-11-05 2002-11-21 Intergraph Corp Befehlscachespeicher mit assoziativem Kreuzschienenschalter
EP1102166B1 (en) * 1993-11-05 2003-05-21 Intergraph Corporation Software scheduled superscalar computer architecture
US5974534A (en) * 1994-02-14 1999-10-26 Hewlett-Packard Company Predecoding and steering mechanism for instructions in a superscalar processor
US5699536A (en) * 1995-04-13 1997-12-16 International Business Machines Corporation Computer processing system employing dynamic instruction formatting
JP3790607B2 (ja) * 1997-06-16 2006-06-28 松下電器産業株式会社 Vliwプロセッサ
US6112299A (en) * 1997-12-31 2000-08-29 International Business Machines Corporation Method and apparatus to select the next instruction in a superscalar or a very long instruction word computer having N-way branching
US6560775B1 (en) * 1998-01-15 2003-05-06 Elbrus International Limited Branch preparation
US6304954B1 (en) * 1998-04-20 2001-10-16 Rise Technology Company Executing multiple instructions in multi-pipelined processor by dynamically switching memory ports of fewer number than the pipeline
US6272609B1 (en) * 1998-07-31 2001-08-07 Micron Electronics, Inc. Pipelined memory controller
US6295592B1 (en) * 1998-07-31 2001-09-25 Micron Technology, Inc. Method of processing memory requests in a pipelined memory controller
US7149878B1 (en) * 2000-10-30 2006-12-12 Mips Technologies, Inc. Changing instruction set architecture mode by comparison of current instruction execution address with boundary address register values
US7711926B2 (en) * 2001-04-18 2010-05-04 Mips Technologies, Inc. Mapping system and method for instruction set processing
US6826681B2 (en) * 2001-06-18 2004-11-30 Mips Technologies, Inc. Instruction specified register value saving in allocated caller stack or not yet allocated callee stack
US7107439B2 (en) * 2001-08-10 2006-09-12 Mips Technologies, Inc. System and method of controlling software decompression through exceptions
US7589738B2 (en) * 2004-07-14 2009-09-15 Integrated Device Technology, Inc. Cache memory management system and method
US7913069B2 (en) * 2006-02-16 2011-03-22 Vns Portfolio Llc Processor and method for executing a program loop within an instruction word
US7895560B2 (en) * 2006-10-02 2011-02-22 William Stuart Lovell Continuous flow instant logic binary circuitry actively structured by code-generated pass transistor interconnects
US8892958B2 (en) 2012-06-15 2014-11-18 International Business Machines Corporation Dynamic hardware trace supporting multiphase operations
US9430369B2 (en) * 2013-05-24 2016-08-30 Coherent Logix, Incorporated Memory-network processor with programmable optimizations

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5110746A (ja) * 1974-07-17 1976-01-28 Hitachi Ltd
JPS5168749A (ja) * 1974-12-11 1976-06-14 Fujitsu Ltd
JPS5367328A (en) * 1976-11-29 1978-06-15 Nec Corp Order process system

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3346851A (en) * 1964-07-08 1967-10-10 Control Data Corp Simultaneous multiprocessing computer system
US3544973A (en) * 1968-03-13 1970-12-01 Westinghouse Electric Corp Variable structure computer
US3704448A (en) * 1971-08-02 1972-11-28 Hewlett Packard Co Data processing control system
US3771138A (en) * 1971-08-31 1973-11-06 Ibm Apparatus and method for serializing instructions from two independent instruction streams
US3771141A (en) * 1971-11-08 1973-11-06 Culler Harrison Inc Data processor with parallel operations per instruction
US3815095A (en) * 1972-08-29 1974-06-04 Texas Instruments Inc General-purpose array processor
FR2215877A5 (ja) * 1973-01-26 1974-08-23 Thomson Csf
US3893084A (en) * 1973-05-01 1975-07-01 Digital Equipment Corp Memory access control system
GB1426749A (en) * 1973-06-05 1976-03-03 Burroughs Corp Micro programme data processor having parallel instruction flow streams for plural level of subinstruction sets
US4025771A (en) * 1974-03-25 1977-05-24 Hughes Aircraft Company Pipe line high speed signal processor
GB1506972A (en) * 1976-02-06 1978-04-12 Int Computers Ltd Data processing systems
US4128880A (en) * 1976-06-30 1978-12-05 Cray Research, Inc. Computer vector register processing

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5110746A (ja) * 1974-07-17 1976-01-28 Hitachi Ltd
JPS5168749A (ja) * 1974-12-11 1976-06-14 Fujitsu Ltd
JPS5367328A (en) * 1976-11-29 1978-06-15 Nec Corp Order process system

Also Published As

Publication number Publication date
JPS567147A (en) 1981-01-24
IT1149931B (it) 1986-12-10
EP0021399A1 (en) 1981-01-07
EP0021399B1 (en) 1985-09-25
IT8022511A0 (it) 1980-06-03
US4295193A (en) 1981-10-13
DE3071119D1 (en) 1985-10-31

Similar Documents

Publication Publication Date Title
JPS5816490B2 (ja) 複数の命令を同時に実行する方法
US4740893A (en) Method for reducing the time for switching between programs
KR100208889B1 (ko) 병렬처리장치 및 병렬처리방법
US4200927A (en) Multi-instruction stream branch processing mechanism
US3728692A (en) Instruction selection in a two-program counter instruction unit
KR100346515B1 (ko) 수퍼파이프라인된수퍼스칼라프로세서를위한임시파이프라인레지스터파일
WO2001016715A9 (en) Branch instructions in a multithreaded parallel processing system
US4541045A (en) Microprocessor architecture employing efficient operand and instruction addressing
JP3670043B2 (ja) スーパースカラ・プロセッサにおける命令の前復号および操向機構
US20230359385A1 (en) Quick clearing of registers
KR100431975B1 (ko) 분기에의한중단이없는파이프라인방식의마이크로프로세서를위한다중명령디스패치시스템
JPS60178580A (ja) 命令制御方式
CN111984313A (zh) 矢量位转置
JPH11119998A (ja) 情報処理装置
JP2636821B2 (ja) 並列処理装置
US7779233B2 (en) System and method for implementing a software-supported thread assist mechanism for a microprocessor
JPH02157939A (ja) 命令処理方法及び命令処理装置
JP2689914B2 (ja) 情報処理装置
JP2785820B2 (ja) 並列処理装置
JP2545594B2 (ja) オペランドデータ先取り方式
JP3668643B2 (ja) 情報処理装置
Robbins et al. The control section
JP2927281B2 (ja) 並列処理装置
JPH01147722A (ja) 情報処理装置のパイプライン処理方式
JPH01271842A (ja) 情報処理装置