JPS5991547A - 収集装置 - Google Patents

収集装置

Info

Publication number
JPS5991547A
JPS5991547A JP58190001A JP19000183A JPS5991547A JP S5991547 A JPS5991547 A JP S5991547A JP 58190001 A JP58190001 A JP 58190001A JP 19000183 A JP19000183 A JP 19000183A JP S5991547 A JPS5991547 A JP S5991547A
Authority
JP
Japan
Prior art keywords
execution
stack
storage
instruction
processing unit
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
JP58190001A
Other languages
English (en)
Other versions
JPS6353571B2 (ja
Inventor
ラツセル・ダブリユ−・ゲンスナ−
ジヨセフ・シ−・サ−チエロ
レオナルド・ジ−・トウルビスキ−
グレゴリ−・シ−・エジングトン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bull HN Information Systems Italia SpA
Bull HN Information Systems Inc
Original Assignee
Honeywell Information Systems Italia SpA
Honeywell Information Systems Inc
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 Honeywell Information Systems Italia SpA, Honeywell Information Systems Inc filed Critical Honeywell Information Systems Italia SpA
Publication of JPS5991547A publication Critical patent/JPS5991547A/ja
Publication of JPS6353571B2 publication Critical patent/JPS6353571B2/ja
Granted 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
    • 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/3861Recovery, e.g. branch miss-prediction, exception handling
    • G06F9/3863Recovery, e.g. branch miss-prediction, exception handling using multiple copies of the architectural state, e.g. shadow registers

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)
  • Memory System Of A Hierarchy Structure (AREA)
  • Complex Calculations (AREA)

Abstract

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

Description

【発明の詳細な説明】 発明の技術分野 この発明は、デソ乏ル情報処理システムの分野に属し、
このシステムの中央処理装置は複数の演X:′−=ット
を有している。各実行ユニットは、処理装置が実行でき
る命令の相異なるサブセットを演算できる。各実行ユニ
ットは互に独立しており、平行して動作する。もっと詳
しく言うと、この発明は収集装置−に関するものでロシ
、この収集装置は、実行ユニットで実行された実行結果
を受取91ン°ログシムの順序で記憶し、中火処理装置
のノ°ログラムでアドレス可能なレジスタの現在のコピ
ーを保持する。そのコピーは障害回復に使用される。
従来技術の説明 通常、従来の中央処理装置においては、処理装置は、命
令ワードのアドレスを作成する回路、メモリから命令を
フェッテする回路、オペランドのアトレスヲ準備する回
路、メモリからオペランドを7エツチする回路、指定し
たレジスタにデータをロードする回路、命令を実行する
回路及び実行結果が形成されたとき、実行結果をメモリ
やプログラムでアドレス可能なレジスタに書込む回路で
構成される。
情報処理システムの性能即ちスループットを向上するた
めに、様々彦改良が中央処理ユニットにイ」加されて来
た。オペランドと命令を得るのに要する時間を減少する
ために、処理装置内に位置する高速のヤヤノシュが備え
られた。システムを高速化するために、システムを同期
化している、即わち、クロック回路が中央処理ユニット
の動作の各ステップを制御するクロック・パルスを生成
する。ノEイフ0ライン処理装置においては、命令をオ
ペランドを準備し、フェッテするステップは性能を高め
るためオーバーラツプしている。
・同期式情報処理システム内のいくつかの命令が1他の
命令よシ多数のクロック同期(沢山の時間)がラムかる
ため、様々な命令を実行するのに要する時間にアンバラ
ンスがある。この問題に対する一つの解決案として、処
理装置をいくつかの実行ユニットに分割し、各実行ユニ
ットは処理装置が実行できる命令のサブセットを実行す
ることが行われている。複数の実行ユニットが平行して
動作すること(、でより複数の命令を実行すれば、処理
装置のスループットは増大する。しかし、処理装置が複
数の条令を平行して実行する複数の実行ユニット上漏え
ていると、命令が実行された実行結果がプログラムの順
序に集められ、メモリや)0ログラムでアドレス可能な
レジスタに書込まれるべきデ−クが適切な順序で書込ま
れることを確実にすることが必要であシ、要求される。
又、障害や割込の正確な処理ができ、ハードウェア・エ
ラーからの回復できるノこめには、70ログラム刀)ら
アドレス可能々レノスタの内容の現在の正確なコピーが
手近に得られる必要がある。
発明の概要 この発明は、デジタル情報処理システムの中央処理装置
のための収集装置に関するものである。
処理装置は、与えられた処理可能な1組の命令と、複数
の実行ユニットを備えている。各実行ユニットは、処理
可能な命令の相異なる命令の組を実行する能力を有して
いる。処理装置の中央パイプライン・ユニットは、必要
な命令とオペランドを命令を実行できる実行ユニットへ
供給する。命令とオペランドはプログラムの順序で供給
される。命令が、その命令を実行できる実行ユニットに
プログラムの順序で供給されると、命令ワードのオペレ
ーション・コードと他の関連する情報は、命令実行キー
−にプログラムの順序で送られる。一つを除いて全ての
実行ユニットは入力スタックを備えテオシ、入力した命
令を受取った順序でスタックすることかできる。各実行
ユニットは実行結果スタックを備えておシ、命令の実行
結果を格納しテイル。各実行ユニットは1、パイプライ
ン・ユコッへによシ入力された命令を受取った1顛序で
演算する。収集装置の主保全記憶装置と格納スタックは
、全ての命令の実行結果として、実行ユニットの実行結
果スタックからプログラムの順序で取出した実行結果を
供給する。収集装置の制御部は、帛令貝行キューのファ
ーストイン・ファーストアウトのニントリの最初、又は
最後に格納されている8今コードを使用し、その命令の
演算結果を対応する実行ユニットの実行結果スタックか
ら主保全記憶装置又は格納スタックへ転送している。
CPUのプログラムでアl−ゞレス可能なし、クスタの
有効なニビーを主保全記憶装置内に保持し、メモリへ書
込むガータは、メモ1.1又はキャラ/−・メモリへ書
込む前に格納スタックに格納される。
発明の目的 この発明の目的は、中央処理装置のスループットを向上
することのできる収集装置を提供することである。
この発明の他の目的は、複数の実行ユニットを有する中
央処理装置に対して、命令の実行結果を70ログラムの
順序で受取り、格納する収集装置をJ>%供することで
ある。
又、この発明の他の目的は、プログラムでアドレス可能
なレノスタに格納でれているデータの有効なコピーを格
納する主保全記憶装置を有する収実装置を提供すること
である。
その」ハこの発明の他の目的は、パイン0ラモ処理装置
内の割込処理や障害処理や回復に対する改良された装置
を提供することである。
又、この発明の他の目的は、ノ・−ドウエア命令再試行
の改良さ′I′また性能を有する装置を提供することで
ある。
この発明のその他の目的は、演算二ニットが互いに干渉
せず、独立に平行して動作することができる様にし、正
確な障害処理、割込処理、エラー回復を、個々の実行ユ
ニットの性能に悪影響を与えず、演算ユニットにおける
命令の実行間の遅延を要せずに、要行できる様にした収
集装置を提供することである。
この発明の他の目的や利点は、次の望丑しい実施例の説
明を添附した図面を参考すれば、明らかである。開示さ
れた新しい概念の範囲と精神を逸脱することなく改良や
変更することは可能である。
望丑しい実施例の説明 第1図において、中央処理ユニット10の主要な構成(
ブグ7ステムシを図示している。中央ユニット・パイン
0ライン構造12は、処理装置10全体の動作を刺I御
している。命令フェッチ・ユニッl−14(は命令ワー
ドのアドレスを命令キャッジ−16へ供給(転送)する
。命令フェッチ・ユニット14〃・ら命令キャッジ−1
6へ入力した8合7)”lzスの応答として、命令ワー
ドがキャツ/−16から命令フェッチ・ユニット14へ
送られる。
命令フェッチ・ユニ、1・は、次に、命令ワードを中央
パイシライン・ユニット構造12へ送る。中央・やイノ
0ライン・ユニット12は各命令ワードの命令コード(
オペレーション・コート+)’にデコードし、オペレー
ション・コード及び命令フードから得られた付加的1青
報を命令実行キ−−18に格納するために送る。大部分
の第2レー/ヨン・コードはオペランドが必要であるの
で、中央・やイノ0ライン・ユニット12はデータ・ワ
ード(オペランド)のアドレスを生成し、オペランド・
キャッシュ20ヘオペランド・アドレノを送る。オペラ
ンドがオペランド・キャッシュから受取られてから、第
4ランドとオペレーション・コードは分配装置22に転
送される。分配装置は、オペレー ノヨン・コードを、
通常、テーブル・ルックアップ技法を用いて分析し、命
令とオペランドが送られる(分配される)べき実行ユニ
ットを決定する。
CPU 10の4つの実行ユニットは、中央実行ユニッ
ト(CEV ) 24 、、仮想メモリ・ンステム及び
マルチクス記述子処理実行ユニッ) (VMSM) 2
6.2進算術実行ユニット(BINAU ) 28 、
そして10進文字実行ユニッ) (DECCU ) 3
0である。
各実行ユニット24,26,28及び30は、命令とオ
ペランドを受取Q1それを他の実行ユニットと独立に処
理することができる。各実行ユニット(は、割当てられ
た命令のセットを最適に処理できる論理回路で構成され
ている。実施例においては、中央実行ユニット24は、
単純なロード、加算2.減算等や他の雑多な命令の様な
基本的コンビーータ動作を処理する。CEU 24は、
各命令を受取るとすぐに、即ち1クロ、・り周期以内で
実行する点において、4つの実行ユニットの中でユニー
クでちる。その結果、中央実行ユニット24は、M1図
7c図示されている他の実行ユニットの様に入力スタッ
クを備えていない。VMSM実行ユニットは、仮想メモ
リや保護に関する命令、保護されたオペレーシング・ン
ステムに特有な特別の命令を実行する。BIANAU−
実行ユニット28(l−i、乗算、除算及び浮動小数点
命令の様な2進算術命令を実行する・10進文字実行ユ
ニッ)30は、アルファニー−、ノリツク、10進算術
及びビット・ストリング命令を実行する。実行ユニット
26は入力スタック32を備えており、実行ユニット2
8は入力スタック34を備えておシ、そして実行ユニッ
ト30fd人カスタツク36を備えている。入カスタン
ク32,34,36の機能は、要求されると、備えられ
た演算ユニットによる実行を待っている命令コードのオ
ペレーション・コートゝとオペランドを格納することで
ある。
各人カスタ、り32,34,36は、16レベル有する
通常の7アーストイン・ファーストアウトスタックであ
り、各レベルには倍長ワード(2つのオペランド)を格
納できる。実施例においては、各ワードは36ビツトを
有してお9、それ故、倍長ワードは72ピクトを有して
いる。その上、オペランドと命令コードが格納されてい
る入力スタックを備えた実行ユニットで実行(演算)さ
れルヘキ命令ワードゝのオペレーション・コートモ又、
入力スタックに格納されている。実行ユニット26.2
8,30の入力スタック32,34゜36は、、 FI
F○(ファーストイン・ファーストアウト)スタックで
あり、それ故、ある実行ユニットへ与えられるために各
オペレーション・コードとして要求された最初のオペレ
ーション・コード及び1つ又は2つのオペランドは、そ
のユニットで実行さユるために入力スタックから読出さ
れる最初Oものである。各実行ユニッi・には、又、実
行結果スタックが備えられている。実行結果スタック3
8は制御実行ユニット24に付属しておシ、実行結果ス
タック40は実行ユニット26に付属してと9、実行結
果スタック44は実行ユニット3す;て付属している。
実施例では、実行結果スタック(・1通常のファースト
イン・ンアーストアウトスタックであり、各スタックは
16レベル有している。命令の実行の結果は、それが実
行された順序でスタック中に格納される。実行結果スタ
ックの谷ノベルは、下記に詳しく述べられている様に、
倍長ワード及びその倍長ワードに関する情報を格納する
ことができる。
興行結果スタック38 、40 、42 、4−4は、
命令実行キー−18及び収集装置の制御部47と同様に
、収集装置46の一部である。実行甲の各命令ワードの
オペレーション・コードは、他の情報と共に、第5図に
図示されている命令実行キー−の一部であシ、命令実行
キュー18に格納されている。実施例では、命令実行キ
ー−は通常の16レベル(習)のファーストイン・ファ
ーストアウト・スタックである。
中央ユニット・・ゼイン0ライン構造12は各命令のオ
ペレーション・コードをプログラム順序で命令実行キー
−18に格納するために送る。16寸での命令実行キュ
ー(IEQ )ワードをキュー18に格納でさる。収集
装置の制御部47は各HEQワードを、各実行ユニット
24,26,28.30の実行結果スタック中に格納さ
れている実行結果の読出しを制御するために使用してい
る。それによシ、適切な順序で実行結果を主保全記憶装
置(MSS ) 48か又は格納スタック50へ格納す
る・格納スタック50に格納されている実行結果は、オ
ペランドをメモリへの書込み用でアル。CPUl0のプ
ログラムからアドレス可能なレソスタをf化させる命令
においては、実行結果が主保全記憶装置48中に生じ、
そのため、割込、障害1ハードウエア・エラーが生じた
時、CPUのプログラムでアドレス可能なレノスタの内
容は主保全記憶装置48中に得られる。プログラムでア
ドレス可能な全てのレノスタの現在の有効な内容が得ら
れることは、障害回復、割込処理及び命令の再試行を適
切て行うのに大変便利である。
サブ7ステムとしてCPU 10を持つ情報処理システ
ムの主メモリ51は、命令キャッシュ16に@音を1、
オペランド・キャッシュ20にオペランドを供給するサ
ブ7ステムである。主メモリ51に格納する(書込む)
全てのデータは、オペランド・キャソンー20に格納さ
れているデータである。命令の実行結果としてデータを
メモリへ書込むときは、常に必要なデータ(オペランド
)は格納スタック50にプログラム順序、に格納されて
おり2.70ログラム順序でオペランド・キャッシュ2
つに加えられる(書込まれる)。オペランド・キヤノン
ユ20のブロックがM放され、新しいデータがそのブロ
ック中へ書込むことができる様になるときに、オペラン
ド・キャッシュ制御部はキャッシュのそのブロック中の
主メモリへ書込むデータを保持し、それから新しいデー
タがそのブロック中に書込まれることは、従来よりよく
知られていた。
第2図には、収集装置46の一部、詳しく言えば、命令
実行キー−]8と収集装置46の収集装置ff Mi:
I御論理回路47が図示されている。収集装置制御部4
7の収集装置シーケンス制御部52には、中央処理装置
10の障害検出回路54、エラー検出回路56そして割
込検出回路58からの障害検出フラグ、エラー検出フラ
グ、割込フラグが印加されている。収集装置シーケンス
制師部52は、キー−18に入力されてまだ残っている
命令の一番最初の命令の命令コードを比較し、通常のテ
ーブル°ルックアップ技法を用いて、命令コードにより
その命令の実行結果がどの実行結果スタックに格納され
ているかを決定する。収集装置シーケンス制師部52は
、収集装置の制御部47で発生している適切1 i11
制御信号によシ、残っている命令の時間的に最初の演算
結果を演算ユニットのEIFO実行結果スタックに格納
して、それが読出されて主保全記憶装置48か又は格納
スタック50に書込てれる様にする。実行件来が主メモ
リ20に書込乏しるべきものであるとき、オペランドは
格納スフツクへ書込捷れる。格納スタックは、上記の様
に、通常の16のエントリ・レベルを有するファースト
イン・ファーストアウト・スタックであす、各レベルは
2つのオにランド、実施例の場合は72ビツトのデータ
を格納することができる。
プログラムの順序で実行ユニットから読出されるヘキ次
の実行結果が、CPU 10のプログラムでアドレス可
能なし・ジスタ円の変化である場合、そのプログラムで
アドレス可能なレソスタ内の変化は、命令の実行結果と
共に実行結果スタックに格納されているレソスタを示す
付加的な情報ビットと一緒に、主保全記憶装置に格納さ
れる。
収集装置の制御部47は、実行結果スタック3814、
0 + 42 、44からの読出しと、主保全記憶装置
48が格納スタックかのどちらに格納すべきかとをMi
制御する。収集装置の7−ケンス制御部52への入力信
号には、実行ユニットの一つから70ログラム順序で読
出されるべき次の8令の、実行キー−18に格納されて
いるオペレーション・コードが含まれている。収集装置
のシーケンス制御部52への付加的な入力として’、 
CPU 10の通常有する発生源52からの障害検出フ
ラグ及び発生源54からのエラー検出フラグと、■殉シ
ステムである発生源58からの割込がaる。収集装置の
fl制御部は、実行キー−18から読出され、収集装置
の7−ケンス制御部52へ転送された次の命令のオペレ
ーション・コードを比a f ’−)。オペレーション
・コードから、収集装置のソーフンスミ制御部は、どの
実行ユニッ(・がその特定の命令を実行するのかを決定
する。命令が実行ユニット及び命令実行キー−に印加さ
れる1順序関係のため、上記特定の命令を実行できる実
行ユニットのFIFO演算結果スタックから読出ずべき
実行結果は、その特定命令の実行結果である。その実行
結果スタックの最下位レベル中にオペランドが存在する
場合、収集装置ソーケンス制御部52は適切な制御信号
を発生し、対応する実行結果スタックからオペランドを
グートシ、そのオ被ランドを主保全記憶装置48又は格
納スタック5Gに格納する。命令がメモリへの書込を伴
う場合、選択された実行結果スタックからの実行結果は
格納スタック50へ書込壕れる。選択された命令の実行
結果が70I:Iグラムからアドレス可能なレノスタの
変化である場合、選択された命令の実行結果は、その命
令によシ変化するレノスタの内容を格納する様に指定き
れている保全記憶装置の一部分に格納される。プログラ
ムでアドレス可能なレソスタ内の変化が書込捷れる・果
合記憶装置58の部分は、実行結果スタック日にオペラ
ンドと共に格納されている付加的な2進データによ)決
定される。
第3図では、収集装置46の付加的な詳細、特に、実行
結果スタック38,40,42,44と主保全記憶装置
48及び格納スタック50との間の回路結合を図示して
いる。中央実行ユニット24の様な実行ユニットで実行
されたオペレーション・コードの実行結果は、CEU実
行結果スタック38に転送され、そこから、収集装置制
御部47カ・らの制御信号によ、j9 CEU実行結果
スタック38を起動したとき、1組のスイッチ70へ送
られる。実行結果は、主保全記憶装置48か収集装置制
御gBからの制御信号によシ起動されると主保全記憶装
置48に、又は格納スタックが起動されると格納スタッ
クに格納される。このことは、各実行結果スタック−4
0、4,2、44も同様である。実行スタック38 、
40 、4.2 、44と主保全3己1意装置48及び
格納スタック500間に、1対4選択スイッチ70が位
置している。選択スイッチ70は、どの実行結果スタッ
クから主保全3己1意装置・18又は格納スタック50
へ送られる力・選択(決定)する0 第4図には、CPU 10に対する命令ワード72のフ
ォーマットが図示されている。rと表示されている最初
の18ビット(ビット位置O力)ら17ンは、演算が行
われる対象であるオペランドc1アドレスでちる。ビッ
ト18から27は、実行される命令を唯一つに識別する
オペレー・ンヨン・コードを溝成している。ビット28
は割込禁止ビットであシ、論理1となったとき、このオ
ペレーション。
コード(命令)が実行ユニットで実行されている間、割
込が処理(認識)されるのを禁止する。ビット29は現
在の命令セグメント外のセグメントを参照することを明
示する。タグ・フィールドゞ(ビット位置30から35
)はアドレス修飾をI制御するために通常用られる。
第5図Uz 命令実行キュー(IEQ )ワードゝ74
のフォーマ・yトであり、このワードの一つ力51PI
F’0スタックである命令実行キュー18の16L’ベ
ルのそれぞれに格納することができる。IEQワード7
4において、ビット位置Oから9は、第4図で図示され
ている命令ワード77のメ−ペレー7ヨン・コードであ
る。ビット10は倍長ソー+p 内のオペランドの位置
、即ち、オペランド″カニ2ワードの内の最初か2番か
を示している。ビット11カラ13 if: 、yrベ
レー、/ヨン・コードの演算結果全書込むべきレジスタ
・アドレスを示している。
ピノ1゛14は、命令ワードのピッ1.2B(割込禁止
ビット)に対応している。ビット15は命令ワードのビ
ット29と同じである。ビット16から21は命令ワー
ドのビット30から35(タグ)全構成している。ビッ
ト22は命令ワードのピッ) 9 (+−ランケーショ
ン・フォールト可能ビット)であり、ビット23は文字
修飾と共にA/Qの格納全指示している。その上、命令
ワード・アドレス(CPU I Oの命令カウンタの内
容)は、IEQ7−ド)4の一部(18ビツトの2進数
)であQ1書込み命令に必要なメモリ・アドレス(実施
例でトゴ28ビットの2進数)もその一部でるる。
第6図は主保全記憶装置・18内の付置を図示しておシ
、その中には様々のプログラムからアドレス可能なレジ
スタの内容が格納される。識別したレジスタの中で、X
はインデックス・レジスタを示し、Aはアキュムレーシ
ョン・レジスタ、Qは商レジスタ、AROから7はアド
レス・レジスタ、BERfa、ベース拡張レジスタ、B
ARはベース・アドレス・レジスタ、MBA 、!: 
MBB uマスター・ベース。
V)スタAとBを各々示している。命令カウンタ)即ち
、主保全記憶装置に格納された最後の命令のアドレスは
76の部分に格納され、CPU識別レジスタの現在の内
容は主保全記憶装置48の78の部分に格納される。
処理装置10の実行できる命令は、オペレーション・コ
ードC命令)のいくつかのクラスで構成されている。こ
れらのオペレーション・コードのうちいくつかは、基本
的動作、即ち、演算するのKlクロック周期しかかから
ない単純なロード、加算、減算等に割当てられている。
他のクラスとして、浮動小数点演算、乗算と除算(浮動
小数点と困定小数点の双方)、アドレス・レジスタ修飾
、ノットとローティト、10進演算、文字処理、ビート
・ストリング処理、仮想メモリと保護関連の処理、スト
ア及びその他の命令がある。処理装置は、物理的にも機
能的にも、これらの線に沿っていてつかの実行ユニット
に分割されており、各実行ユニットはそれに割当てられ
ているクラスの命令を実行するのに高度に最適化された
論理回路を有している。
中火ユニット・・ぐイノライン構造12は処理装置io
の全般的な動作の制御をし2て29、オペ7−シヨン・
コード(コマンド)と関連スるオペラン” k 、% 
際に各オペレーション・ニートゞカ実行される様々な実
行ユニット24 r 26’ + 28130に送る機
能を有している。命令フェッチ・ユこノド14ば、中央
ユニット・・9イノライン構造12の制御のもとに、命
令を命令キャッジ−16#刀・らフェッチし、その命令
ワードを中央ユニット・パイン0ライン構造12に送る
。中央パイプライン・ユニット構造12r/′i、命令
をデニー゛゛シ、オペランドをオペランド・キャッシュ
20からフェッチし、オ投し−ンヨン・コードとオペラ
ンドラ実行ユニット24,26,28,30の一つへ送
る。
中央ユニット・・やイブライン構造12の内部では、a
今のhII処337 、命令のデコード、ペーゾングと
連想メモリを含むオペランド・アドレス生成が行われる
。構造12けキャッンー20も制御する。
実行ユニット24,26.28530は、コマン=+’
f中央・やイブライン・ユニット12から、オペランド
をキャッジ−20から受取1) 、命令コードを実行(
演算)する。命令の実行は通常、レジスタの現在の内容
と入力オペランドを基としていくつう・の演算結果を生
成を含んでおシ、その実行結果はプログラムからアドレ
ス可能なレジスタ、又はメモ′りに変化をもたらす。
処理装置10は4つの主要な実行ユニットに分割されて
おシ、各演算ユニットは一つ又(dそれ以上Oサブユニ
ットで構成されている。これらの実行ユニットは、 (ジ) 中央実行ユニット(CEU ) 24(2)浮
動小数点演算と乗算及び除算を実行する2進算術実行ユ
ニット(B丁NAU ) 28(3)10進文字実行ユ
ニットCDBCCU ) 30(4)仮想メモリ、保護
その他の実行ユニット(VMSAI ) 26 である。各実行ユニット24,26,28.30は命令
とオペランドを受取シ、これを他の実行ユニットが行っ
ていることを独立に処理している。
実行ユニット26.28.30は各入力スタック32,
34.36を有しておシ、入力スタックは16レベルの
F、IFOスタックで、各スタックは2つのデータワー
ド+(オペランド)を保持す、ることかできる。実施例
では、倍長ワードは72ビツトとパリティピットで構成
されている。さらに、各レベルは付随するオペランド・
コードを保持スる。
この様に、入力スタックは、スタックが付属している実
行ユニットで実行を待っている16個寸でのコマンドと
オペランドを保持することができる。
ある命令とそれに例随するオペランドを受取る(割当て
られる)実行ユニットの決定は、命令のオRレーション
・コードを調べることによシ分配装置22が決定する。
実施例において用いている特定の方法は、テーブル・ル
ックアック技法である。入力スタック32,3.4.3
6により、中央パイプライン構造が、例えば先行する複
数の実行サイクルを必要とする命令の演算の終了を待つ
こと々く、オペランドとその関連のオペレー7ヨンコー
ドを実行ユニットへ、クロック、周期ごとに一つづつの
割合で送ることを可能にしている。この様な構成により
、それぞれ別の実行ユニットがオーバラップすることが
可能となった。しかし’1一つの実行ユニット内では、
オーベラツブしていない。各命令コードは、常にパイプ
ライン・ユニット12から受取った順序で実行され、分
配装置22に送る。処理装置1oのンステム・アーキテ
クチャ、即ち、いぐっがの実行ユニットを有しているこ
とにより、主要なレジスタ、例えばAレジスタとQレジ
スタを保持しておくことが必要であるっ処理の進行中、
特定のレジスタの有効なコピーハ、実行ユニットの一つ
にあるが、処理装置10内のいくつかの異なるレノスフ
パンクの一つにある。中央ユニット・パイプライン構造
12は、各レジスタに対する現在の有効なコピーの記録
を保持しておシ、次の命令の実行が、レジスタの内容、
つコピーを1つの演算ユニットから他の実行ユニットへ
移転することを必要していることを認識してのる・しか
し、特定のレジスタの内容の有効なコピーを保持するこ
とは、パイプラインの長さく5命令の深き)により複雑
さを増す。
障害の発生の即ぐ前のプログラムでアドレス可能なレジ
スタの内容を決定することができることは、すばやい1
章害回復に必要なことである。全てのノやイブライン方
式のコンピュータにおいテ、トの命令の処理も、異なっ
た実行段階にあるいくつかの他の命令の処理とオーバラ
ップしている。その上、CPU]Oにおいては、いくつ
かの命令の実行が、異なる実行ユニットで同時に行われ
る。その結果、どの瞬間をとっても、パイプライン12
内や実行ユニット24.26.28130内のレジスタ
には、複数の異なる命令コードの演算や実行によるレジ
スタへの変化が入っている。命令障害や割込が生じたと
き、パイプライン12は、障害や割込が生じた直前の最
後の命令の終って停止する。ノログラムの順序で障害や
割込の前の命令ノ実行の結果としての全てのレジスタへ
の変化は終了させなければならず、プログラムの順序で
その後の命令の実行の結果としてのプログラムでアドレ
ス可能なレジスタの変化やメモリの変化は取消(削除)
しなければならない。収集装置46は有効な現在のノロ
グラムでアドレス可能な各レジスタのコピーを、障害回
復や割込処理を可能jこするために供給している。
収集装置46は、実行結果7タノク38・4o・42.
44X命令実行キーー18、CPTJ 10のプログラ
ムアドレス可能な全てのレジスタの内容が格珀すれる主
保全記憶装置48、オペランドをメモリに書込み、オペ
ランドのアドレスを格納のためオペランド・キャラ/−
に送る格納スタック5つ、そして収集装置制御部47で
構成されているC@実行ユニット24,26,28.3
0は、自分自身用の実行結果スタック38,40,42
゜44を持っている。各実行ユニットが命令の実行を終
了すると、演算ユニットは付属の実行スタック3)S、
40,42.44に、その命令で変化したプログラムで
アト8レス可能なレジスタの新しいコピーやメモリへの
変化を送る。これらのレジスタへのF化は、16レベル
のFIFOスタックで構成されで(/Xる実行結果スタ
ック38,40,42.44に、実行結果スタックが受
取った順序で格納される。同様に、中央実行ユニット2
4で実行されたストア命令の結果も’I CEUの実行
結果スタック38に70ログラムの順序で格納される。
こうして、各実行結果スタックは、16までのプログラ
ムでアドレス可能なレジスタへの変化や、メモリへの変
化の記録をプログラムの順序で入れている。プログラム
の順序とは、最初に入ったものは最初に出て行く、即ち
、一番長く実行結果スタックに格納されてい/辷ものは
、一番最初にスタックから読出されるということである
全てのプログラムでアドレス可能々レノスタのマスター
・コピーは、主保全記憶装置48中に保持されている。
主保全記憶装・!48はレジスタ・バンクであシ、その
中にプログラムでアドレス可能なレジスタの内容の有効
なコピーを格納している。
この様な各レジスタの内容がMSS内に格納されている
位置は第6図に図示されている。収集装置ノーケンス制
御部52、ストア処理論理回路60゜実行結果7タソク
・アンロード制御部62で構成されている収集装置の制
御部47を介して、収集装置46は実行結果、即ち、レ
ジスタへの変化又Id、Jモリへのストアを実行結果ス
タックかう、1度、て1つづつ取出し、それらを主保全
記憶装置48ヘコピーするか又は、オペランド・キャッ
シュ2Q(て70ログラムの順序で書込むために格納ス
タツク50へ送る。収集装置4Gの重要な特徴は、全て
のプログラムでアドレス可能なレジスタへの変化(は収
集装置によって受取られ、メモ’J 20へ格納すべき
全てのものは収集装置を介して行われるということであ
る。
障害を適切に処理するためには、オにレーノミン・コー
ド(命令)の処理を停止して、障害の起きた余令に続く
宿合が実行されていない様にコンビーータ・プログラム
から見えることが必要である。障害又は割込が発生した
とき、障害を示すフラグが、障害が発生した命令の実行
結果が格納されてハる実行ユニットの実行結果スタック
中のレベルにセットされる。プログラムの順序で次に主
保全記憶装置48か又は格納スタック50へ格納される
べき命令の実行結果と共に、障害フラグが格納されてい
たことを収集装置シークンス韻[#部が識別した場合、
そのレベルの実行結果とプログラムの順序でそれに続く
命令の全ての実行結果は一 廃棄でれる。障害が起きた実行結果がプログラムの順序
(命令ストリーム)で出現するまで、収集装置は、実行
ユニットの実行結果スタックを読出して、プログラムで
アドレス可能なレジスタへの変化を主記憶装置48へ、
又は格納スタック50からオペランド・キャッ/ユ20
へ転送している。
この様に、収集装置46が障害を検出(認識)したとき
は、第4ランド・キャッジ−20と生保全記憶装置48
両方とも正しい状態にあり、主保全記憶装置はプログラ
ムからアドレス可能なレジスタの有効なコピーを持ち、
オペランrゞ・キャッジ−には、メモリ51に書込む準
備として有効なデータのみしか書込まれていない。MS
848中のデータは、障害から回復する/?cめに引続
き行われる障害処理に用いられる。主保全記憶装置中の
レジスタのマスター・コピーは、唯一のそれらのレジス
タの有効なコピーであり、障害の起きた命令及び引続く
8令を含む未決のキャッジ−へ格納すべきものは廃棄さ
れる。CPU 10ば、それらから、通常の障害回復処
理を開始する。
CPU 10によシ実行中(処理中)の全ての命令の王
しいプログラム順序の記録は、収集装置の命令実行キュ
ー18に保持されている。命令実行キー−18は、処理
中の各命令に対して一つのエンド・ノを有している。主
保全記憶装置48への、及び格納スタック50へのエン
トリは、プログラムのJX序で、即ち、中央パイプライ
ン構造12が命令を命令実行スタック18に格納したの
と同じ順序で読出される様に、順序づけられている。命
令実行キュー・ワードは、命令のオペレーション・コー
ドを含んでおシ、テーブル・ルックアップ技法を用いて
、宿合が実行されたとき実行結果か入るべき実行結果ス
タックを識別する。実行された命令の実行結果は、それ
から、適切な実行結果スタ、・りから主保全記憶装置4
8又は格納スタックに、7°ログラムの順序で転送され
る。この様に、収集装置46内で、命令は完了する、即
ち、各命令の実行結果は、適切な(fログラムの)順序
で受取られて、正しい順序となる。
障害回復及び割込を処理することに加えて、収集装置4
6は、全てのメモリ書込(ストア)命令の実際の処理を
も行う。主保全記憶装置48は全てのフ0ログラムでア
ドレス可能なレジスタのコピーを有しており、メモリー
書込むべきフ0oグラムでアドレス可能なレジスタの内
容を得るのに都合がJ:い。主保全記憶装置48又は格
納スタックを介して実行ユニットの実行結果スタックか
らくる、メモリ51へ層−込むべきデータの収集装置内
の処:f!l! iは、70ログラム順序を守って行わ
れ、ストア命令の処理に実行ユニット24+26.28
.30が関与する必要を避けている。この意味で5.収
集装置46は実行ユニ、トの一つであるともいえる。
その結果、単純なストア命令の処理を、他の2以上のク
ロック周期を必要とする命令とオーバラップして行うこ
とかできる。主保全記憶装置内に格納されている情報に
よ、9、’CPTJIOはハードウェア命令の再試行を
容易に行うことができる。
命令実行キー−18は、中央処理装置1oの全てD未処
理の命令に対するエントリを有するファーストイン・フ
ァーストアウト・スタックである。
@令実行キュー18中の各IEQワード74のエントリ
の順序で、実行結果スタック38 、4.0 。
42.44からの各命令の実行結果の読出しの順序を制
御し、命令の処理終了を制御している。命令実行キー−
18は、又、各オペレーション・コード罠対応した命令
カウンタの内容及び格納スタック50がら格納されるメ
モリの71・゛レスモ含ンでいる。
演算ユニッI・の実行結果スタック38,40゜42.
44はファーストイン・ンアーストアウ(・スタックで
あり、その中に、実行ユニットで実行された各オペレー
ション・コードの演算結果か格納される。命令(オペレ
ーションつコードの処理は、実行結果であるレジスタの
変化が主保全記憶装置に記憶されるか、メモリへの変化
が格納スタック50に転送きれたときに、終了する。障
害フラグと関連する演算ユニットのレジスタ変イヒ指示
は、各実行ユニットに対する実行結果スタックの各エン
トリに含まれている。
主保全記憶装置48は、CPU 10中の全てのプログ
ラムでアドレス可能なレジスタ及び〕0ログラムで認識
可能で様々なレジスタ、例えば第6図に示した様な命令
カウンタと指示レジスタ、の最終的(正確な)コピーを
入れている。CPIJ 10のプログラムでアドレス可
能なレジスタ中の全ての変化は、主保全記憶装置48に
格納されている情報に反映されている。主保全記憶装置
への変化は、各IEQワード74が命令実行キー−18
から取除かれ、そのIEQワードのオペレーション・コ
ートゞの実行結果が対応の実行結果スタックから取除か
れるときに、7°ログラムの順序で完了する。CPU]
Oの通常の動作では、実行結果か実行結果スタック中に
十分長く保持されているので、その命令の実行中には、
障害が起らない確率が高い。収集装置制御部48で障害
が検出されない場合1・寸、実行結果は主保全記憶装置
48又は格納スタック50に転送される。
メモ1,151へ書込むべきデータは、単純なストア命
令の場合、主保全記憶装置48がらこのデータllスタ
ック50へ移転することにより、他の全てのストア命令
の場合は実行結果スタックより得られる。主保全記憶装
置から得られたデータに対してなされるストア命令はど
の実行ユニットも全ぐ時間がかからず、単にストア命令
が命令実行キー−中に入るのKlパイプライン・サイク
ルが必要なだけである。
凍害を実行結果スタック取出制御部62に知らせるのに
2つの方法がある。命令の実行結果を7ラグすることの
できる障害は、障害の発生した又は検出された実行ユニ
ットの実行結果スタック中の実行結果と同じエンドl)
中に入力される。このことjは、対応する演算結果スタ
ックの入力上の実行障害フラグを上げ、実行ユニットの
障害タイツ0・レジスタに障害タイツ0を入力し、実行
ユニットの障害コード・レジスタに障害コードを入力す
るととにより行われる。このタイプの障害の報知fd、
命令の通當の実行と関連するデータ中又はデータと共(
で障害報知情報を実行結果フタツクに入れることのでき
る全ての障害に対して、実行ユニットにより使用されて
いる。
割込処理に関しては、データ処理システムのrlo g
l1分からの割込存在信号線により、割込を処理すべき
CPU 10に知らされる。論理回路62は最後に取出
きれた命令の割込禁止ビットをチェックする。割込禁止
ビットが1、即ちONの場合、収集装置46は実行スタ
ックから取出し続ける。
割込禁止ビットがOFFの場合、収集装置は割、込を認
識し、実行結果スタック中の全ての演算結果のその後の
取出しを停止し、割込処理を開始させる。
実行結果は、プロゲラlでアドレス可能なレジスターの
変化の場合は主保全記憶装置へ、メモリへの書込の場合
は格納スタックへ格納されるが、その1ljl制御ハ、
ファーストイン・ファーストアウト・スタックで構成さ
れている命令実行上−−中に格納されている命令実行キ
ー−・ワー+゛74 t□てよって行われる。
主保全記憶装置内に格納されている情報がメモリ中へ書
込壕れる場合、データは主保全記憶装置48を構成して
いるレジスタから格納スタック50へ転送され、その後
、JEQスタックからのアドレスとストアすべきデータ
は、オペランド・キャツ/−20へ送うれる。オペラン
ド・キャッゾ=20は、データの書込まれ77ニキヤツ
/−のブロックをキャツノー20か解放するときの直前
に、そDプロ、7り中のデータをメモリ51へ書込む。
実行結果スタック中にある情報、特に主保全記憶装置4
8に格納する情報(は、命令によシ変化したレジスタの
内容に加えて、IEQ18から読出された最後7:)命
令の命令カウンタの内容も含んでいる。
上述の様に、この発明は、平行して命令を実行する複数
の実行ユニットから命令の実行結果を適切1プログラム
の順序で収集する機構を提供してイル。収集装置は、ノ
°ログラムでアドレス可能ナレノスタのコピーを保持し
ておシ、又、ストア命令(つ処理を行っている。収集装
置は’I MSS 48の内容を供納することにより、
割込、障害、エラーの処理及びCPUの回復処理を援助
している。それは、MSS 4−8が、、 CPU 1
0のプログラムでアドレス可能なj/ノスタの、割込、
障害、ニラ−の直前に存在したその壕まの有効なコピー
を保持しているからである。
この発明の範囲を逸脱することなく、上述した実施例の
様々な修正が可能であることは明白である。
【図面の簡単な説明】
第1図は、本発明の収集装置を備えた汎用情報処理7ス
テムの中央処理ユニットのブロック図である。 第2図はこの発明の収集装置の一部分のブロック図であ
る。 第3図はこの発明の収集装置の他の一部分のブロック図
である。 第4図は命令ワードのフォーマットである。 第5図はG全実行キー−・ワードのファーマットである
。 第6図は、主保全記憶装置のレジスタの概略図で、プロ
グラムでアドレス可能なレジスタの内容が格納されるレ
ジスタの位置を図示している。 12・・・ワ央パイプラインユニット、14・・・命令
フェッチユニット、16・・・命令キャッシュ、18・
・・品令実行キー−120・・・オペランドキャッシュ
A22・・分配装置、24・・中央実行ユニット、26
・・・VMSMユニット、28 ・BINAUユニット
、30・・・DECCUユニット、47・・・収集装置
制御部、48・・主保全記憶装置、50・・・格納スタ
ック。 特許出願人  ハネウェル・インフォメーション・第1
頁の続き (η)発 明 者 グレゴリ−・シー・エジングトン アメリカ合衆国85308アリシナ 州グレンデイル・トリー・パイ ンス・サークル4916

Claims (1)

  1. 【特許請求の範囲】 (1)中央処理ユニッ) (CPU )が1組の実行可
    能な命令、複数の実行ユニットを有しておシ、各実行ユ
    ニットはCPUが実行可能な命令の別々のサブセットを
    受取った順序で実行するのに適合しており、前記CPU
    は命令を実行ユニットにプログラムの順序で発する機能
    を有している、メモリを有するデータ処理システムの中
    央処理ユニットにおいて、 CPUがプログラム順序で発する命令を格納する格納手
    段;各実行ユニットに付属しており、各命令の実行結果
    を付属している実行ユニットが実行した順序で格納する
    実行結果手段;実行ユニットが実行した各綿令の実行結
    果全格納する格−納手段;CPUが発した命令を格納す
    る手段が詰合を受取った順序に応答し、各実行ユニット
    に付属している実行結果手段中の実行結果を7°ログラ
    ム順序で出し、その実行結果を前記格納手段に格納する
    ことを制御する制御手段、 を有することを特徴とする中央処理ユニット。 r2)  各実行ユニットに付属している実行結果手段
    がFTFQスタックである特許請求の範囲第(1)項の
    中央処理ユニット。 (3)  CPUがプログラム順序で発する命令を格納
    する格納手段がFIFOスタックである特許請求の範囲
    第(2)項の中央処理ユニット。 ・′4)  実行ユニットによシ実行される各命令の実
    行結果を格納する格納手段が、主保全記憶装置と格納ス
    タックである特許請求の範囲第(3)項の中央処理ユニ
    ット。 5) 格納スタックがFIFOスタックである特許請求
    の範囲第(4)項の中央処理ユニット。 ′6)  中央処理ユニット(CPU )が、プログラ
    ムでアドレス可能なレジスタ、実行可能な1Miの命令
    、複数の実行ユニットを有しておち、各実行ユニットは
    CPUが実行可能な命令の別々のサブセットを受取った
    順序で実行するのに適合しておシ、前記実行ユニットの
    少なくても一つが1クロック周期で実行できる命令のサ
    ブセットを実行し、前記CPUは命令を実行ユニットに
    プログラム順序で発する手段を有している、メモリを有
    する同期式デジタル・データ処理システムの中央処理ユ
    ニットにおいて、 CPUがノログラムの順序で発する各命令のオペレーシ
    ョン・コードを格納する命令実行キー−;CPUが実行
    できる命令のサブセットを1タロツク周期で実行する実
    行ユニット以外の各実行ユニットに付属する入カスタツ
    ク;各実行ユニットに付属し、付属する実行ユニットに
    よシ実行された順序で各命令の実行結果を格納する実行
    結果7タツク;実行ユニットにより実行された各命令の
    実行結果を格納する主保全記憶装置及び格納スタック;
    命令実行キー−で受取った命令の順序に応答し、実行ユ
    ニットに例属する実行結果スタ、りに格納されている実
    行結果をプログラム順序で取出し、この実行結果を、ノ
    ログラムでアト/ス町納なレジスタの変化の場合(r:
    r、主保全記憶装置に、メモリーの書込の場合は格納ス
    タックに格納する収集装置制御部、 を有することを特徴とする中央処理ユニット。 (7)命令実行キー−がFIFOスタックである特許請
    求の範囲第(6)項の中央処理ユニット。 (8)  各人力スタックがFIFOスタックである特
    許請求の範囲第(7)項の中央処理ユニット。 (9)  各実行結果スタックがFIFOスタックであ
    る特許請求の範囲第(8)項の中央処理ユニット。 ・10  格納ヌクックがFIFOスタックである特許
    請求の範囲第(9)項の中央処理ユニット。 α℃ 各FIFOスタックが16レベルである特許請求
    の範囲第叫項の中央処理ユニット。 ・聯 中央処理装置が複数の実行ユニットを有し、各実
    行ユニットは処理装置が可能な命令内、予め定められた
    1組のオペレーション・コードを実行するのに適合して
    おり、前記処理装置はオペレーション・コードをプログ
    ラム順序で実行している、1組の実行可納な命令を有す
    る中央処理装置の収集装置において、 前記収集装置が、 オペレーション・コードを含むIEQワードをノログラ
    ムの順序で受取るのに適した命令実行キ=−;各実行ユ
    ニットに1つづつ付属してお)、付属している実行ユニ
    ットで実行された各オペレーション・コードの実行結果
    を受取るのに適した実行結果スタック;実行ユニットで
    実行した命令の実行結果を受取って格納し、記憶手段に
    格納すべき実行結果を送出す手段;実行ユニットによシ
    実行されたオペレーション・コードの実行結果を70ロ
    グラム順序で実行結果を受取って格納する手段に送出す
    のを制御する制御手段、 で構成されておシ、 障害、割込又はノ・−ドウエア・エラーが発生したとき
    、その発生の直前にノログラムでアドレス可能なレジス
    タに存在していたそのま捷の正確なコピーが主保全記憶
    装置内に格納されていることを特徴とする中央処理装置
    の収集装置。 03  命令実行キー−がFIFOスタ、7りである特
    許請求の範囲第α功項の中央処理装置の収集装置。 α→ 複数の実行ユニットの各々がF’IFOスタック
    である特許請求の範囲第α′3項の中央処理装置の収集
    装置。 烏 実行結果を受取シ、格納する手段に、ノ°ログラム
    でアドレス可能なレジスタの内容を格納する主保全記憶
    装置(レジスタ)及び格納スタックが含まれる特許請求
    の範囲第0ゆ項の収集装置。 1・ 制御手段が、格納処理論理回路、収集装置シーケ
    ンス制御部、実行結果取出制御部で構成されている特許
    請求の範囲第00項の中央処理装置の収集装置。 q71  中央処理装置が、アドレス可能なメモリ位置
    を有するプログラムアドレス可能な複数のレジスタ、シ
    ステム・メモリ、実行可能な一組の命令、を有し、前記
    中央処理装置(d複数の実行ユニットを有しておシ、各
    実行ユニットは実行可能な命令の予め定められたオペレ
    ーション・コードのセットを受取った順序で実行するの
    に適しておシ;前記中夫処汀装置は命令を各実行ユニッ
    トにプログラム順序で発する手段を有している、中央処
    理装置の収集装置において、 収集装置が、 命令ワードのオペレーション・コードヲ含ムIEQワー
    ドをノ°ログラム順序で受取るのに適した命令実行キー
    −(IEQ);実行ユニットに一つづつ付属してお91
    角属している実行ユニットで実行したオペレーション・
    コードの実行結果を受取るのに適した複数の実行結果ス
    タック;プログラムでアドレス可能なレジスタの内容へ
    の変化を格納する生保全記憶装置;システノ・・メモリ
    の一つのメモリ位置に格納されているデータへの変化で
    あるオペレーション・コードの実行結果の格納する格納
    スタック; IEQで受取ったオペレーション・コード
    の順序に応答し、オペレーション・コードを実行可能な
    実行ユニットに付属している実行結果スタック内に格納
    されている実行結果を、実行結果がプログラムでアドレ
    ス可能なレジスタの内容を変化させるものの場合は主保
    全記憶装置に1実行結果がシステム・メモリの一つのメ
    モリ位置に格納されているデータを変化させるものの場
    合格納スタックに、格納させる制御手段、 で構成されている中央処理装置の収集装置。 α汁 命令実行キー−がFIFOスタックである特許請
    求の範囲第αつ項の収集装置。 09:  各実行結果スタック・がFIFOスタックで
    ある特許請求の範囲第叫項の収集装置。 00  格納スタックかFIFOスタックである特許請
    求の範囲第(1り項の収集装置。 (2i3  収集装置制御手段が、格納処理論理回路、
    収集装置シークンス1liiJ御部、格納スタック取出
    制御部で構成きれている特許請求の範囲第(社)項の収
    集装置。
JP58190001A 1982-10-13 1983-10-13 収集装置 Granted JPS5991547A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/434,129 US4594660A (en) 1982-10-13 1982-10-13 Collector
US434129 1982-10-13

Publications (2)

Publication Number Publication Date
JPS5991547A true JPS5991547A (ja) 1984-05-26
JPS6353571B2 JPS6353571B2 (ja) 1988-10-24

Family

ID=23722927

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58190001A Granted JPS5991547A (ja) 1982-10-13 1983-10-13 収集装置

Country Status (6)

Country Link
US (1) US4594660A (ja)
EP (1) EP0106670B1 (ja)
JP (1) JPS5991547A (ja)
AU (1) AU571461B2 (ja)
CA (1) CA1205565A (ja)
DE (1) DE3377027D1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61220071A (ja) * 1985-03-25 1986-09-30 Mitsubishi Electric Corp 並列演算処理装置
WO2023188905A1 (ja) * 2022-03-31 2023-10-05 ソニーグループ株式会社 情報処理装置、及び情報処理装置の動作制御方法

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4947316A (en) * 1983-12-29 1990-08-07 International Business Machines Corporation Internal bus architecture employing a simplified rapidly executable instruction set
US4766564A (en) * 1984-08-13 1988-08-23 International Business Machines Corporation Dual putaway/bypass busses for multiple arithmetic units
JPS61276032A (ja) * 1985-05-31 1986-12-06 Matsushita Electric Ind Co Ltd 情報処理装置
JPS6297036A (ja) * 1985-07-31 1987-05-06 テキサス インスツルメンツ インコ−ポレイテツド 計算機システム
AU587714B2 (en) * 1986-08-27 1989-08-24 Amdahl Corporation Cache storage queue
US5123093A (en) * 1987-01-16 1992-06-16 Hitachi, Ltd. Operational processor for performing a memory access and an operational process in parallel
GB2200483B (en) * 1987-01-22 1991-10-16 Nat Semiconductor Corp Memory referencing in a high performance microprocessor
US4991090A (en) * 1987-05-18 1991-02-05 International Business Machines Corporation Posting out-of-sequence fetches
US4901233A (en) * 1987-07-20 1990-02-13 International Business Machines Corporation Computer system with logic for writing instruction identifying data into array control lists for precise post-branch recoveries
US5134561A (en) * 1987-07-20 1992-07-28 International Business Machines Corporation Computer system with logic for writing instruction identifying data into array control lists for precise post-branch recoveries
EP0306891A3 (en) * 1987-09-11 1992-04-01 National Semiconductor Corporation Pipelined slave protocol for high performance cpu-fpu cluster
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
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
US4876644A (en) * 1987-10-30 1989-10-24 International Business Machines Corp. Parallel pipelined processor
US5117499A (en) * 1988-01-22 1992-05-26 Sharp Kabushiki Kaisha Data flow type processing apparatus having external and cache memories for fetching paired executing instruction when mishit occurs
US5291615A (en) * 1988-08-11 1994-03-01 Kabushiki Kaisha Toshiba Instruction pipeline microprocessor
JPH0673105B2 (ja) * 1988-08-11 1994-09-14 株式会社東芝 命令パイプライン方式のマイクロプロセッサ
JP2858140B2 (ja) * 1988-10-19 1999-02-17 アポロ・コンピューター・インコーポレーテッド パイプラインプロセッサ装置および方法
US5067069A (en) * 1989-02-03 1991-11-19 Digital Equipment Corporation Control of multiple functional units with parallel operation in a microcoded execution unit
US5226126A (en) * 1989-02-24 1993-07-06 Nexgen Microsystems Processor having plurality of functional units for orderly retiring outstanding operations based upon its associated tags
US5781753A (en) * 1989-02-24 1998-07-14 Advanced Micro Devices, Inc. Semi-autonomous RISC pipelines for overlapped execution of RISC-like instructions within the multiple superscalar execution units of a processor having distributed pipeline control for speculative and out-of-order execution of complex instructions
US5768575A (en) * 1989-02-24 1998-06-16 Advanced Micro Devices, Inc. Semi-Autonomous RISC pipelines for overlapped execution of RISC-like instructions within the multiple superscalar execution units of a processor having distributed pipeline control for sepculative and out-of-order execution of complex instructions
US5555384A (en) * 1989-12-01 1996-09-10 Silicon Graphics, Inc. Rescheduling conflicting issued instructions by delaying one conflicting instruction into the same pipeline stage as a third non-conflicting instruction
US5471593A (en) * 1989-12-11 1995-11-28 Branigin; Michael H. Computer processor with an efficient means of executing many instructions simultaneously
US5517626A (en) * 1990-05-07 1996-05-14 S3, Incorporated Open high speed bus for microcomputer system
US5655096A (en) * 1990-10-12 1997-08-05 Branigin; Michael H. Method and apparatus for dynamic scheduling of instructions to ensure sequentially coherent data in a processor employing out-of-order execution
US5226138A (en) * 1990-11-27 1993-07-06 Sun Microsystems, Inc. Method for selectively transferring data instructions to a cache memory
JP2842958B2 (ja) * 1991-04-01 1999-01-06 松下電器産業株式会社 パイプライン計算機の同期方法及びそれを実現したパイプライン計算機
FR2678402A1 (fr) * 1991-06-28 1992-12-31 Philips Electronique Lab Dispositif de traitement d'informations.
US5398330A (en) * 1992-03-05 1995-03-14 Seiko Epson Corporation Register file backup queue
US5898882A (en) * 1993-01-08 1999-04-27 International Business Machines Corporation Method and system for enhanced instruction dispatch in a superscalar processor system utilizing independently accessed intermediate storage
KR0122528B1 (ko) * 1993-01-08 1997-11-20 윌리엄 티.엘리스 슈퍼스칼라 프로세서 시스템에서 중간 기억 버퍼의 할당을 인덱스하기 위한 방법 및 시스템
US5465373A (en) * 1993-01-08 1995-11-07 International Business Machines Corporation Method and system for single cycle dispatch of multiple instructions in a superscalar processor system
CA2107305A1 (en) * 1993-01-08 1994-07-09 James Allen Kahle Method and system for nonsequential instruction dispatch and execution in a superscalar processor system
US5592679A (en) * 1994-11-14 1997-01-07 Sun Microsystems, Inc. Apparatus and method for distributed control in a processor architecture
EP0724215A1 (en) * 1995-01-26 1996-07-31 Sun Microsystems, Inc. Method and apparatus for recovering from mispredicted branches in a pipelined processor
JP2933027B2 (ja) * 1996-08-30 1999-08-09 日本電気株式会社 複数命令並列発行/実行管理装置
US6343309B1 (en) 1996-09-30 2002-01-29 International Business Machines Corporaton Method and apparatus for parallelizing a graphics pipeline
US5901299A (en) * 1997-09-19 1999-05-04 International Business Machines Corporation Method and apparatus for transferring data between buses having differing ordering policies
US6016526A (en) * 1997-09-19 2000-01-18 International Business Machines Corporation Method and apparatus for transferring data between buses having differing ordering policies via the use of autonomous units
US6192461B1 (en) * 1998-01-30 2001-02-20 International Business Machines Corporation Method and apparatus for facilitating multiple storage instruction completions in a superscalar processor during a single clock cycle
US6408325B1 (en) * 1998-05-06 2002-06-18 Sun Microsystems, Inc. Context switching technique for processors with large register files
US6212623B1 (en) 1998-08-24 2001-04-03 Advanced Micro Devices, Inc. Universal dependency vector/queue entry
US6212622B1 (en) * 1998-08-24 2001-04-03 Advanced Micro Devices, Inc. Mechanism for load block on store address generation
US6622235B1 (en) 2000-01-03 2003-09-16 Advanced Micro Devices, Inc. Scheduler which retries load/store hit situations
US6651161B1 (en) 2000-01-03 2003-11-18 Advanced Micro Devices, Inc. Store load forward predictor untraining
US6542984B1 (en) 2000-01-03 2003-04-01 Advanced Micro Devices, Inc. Scheduler capable of issuing and reissuing dependency chains
US6694424B1 (en) 2000-01-03 2004-02-17 Advanced Micro Devices, Inc. Store load forward predictor training
US6564315B1 (en) 2000-01-03 2003-05-13 Advanced Micro Devices, Inc. Scheduler which discovers non-speculative nature of an instruction after issuing and reissues the instruction
US6622237B1 (en) 2000-01-03 2003-09-16 Advanced Micro Devices, Inc. Store to load forward predictor training using delta tag
US7240347B1 (en) * 2001-10-02 2007-07-03 Juniper Networks, Inc. Systems and methods for preserving the order of data
US8762694B1 (en) * 2003-02-19 2014-06-24 Intel Corporation Programmable event-driven yield mechanism
US7487502B2 (en) * 2003-02-19 2009-02-03 Intel Corporation Programmable event driven yield mechanism which may activate other threads
US7849465B2 (en) * 2003-02-19 2010-12-07 Intel Corporation Programmable event driven yield mechanism which may activate service threads
US7321964B2 (en) * 2003-07-08 2008-01-22 Advanced Micro Devices, Inc. Store-to-load forwarding buffer using indexed lookup
US7376817B2 (en) * 2005-08-10 2008-05-20 P.A. Semi, Inc. Partial load/store forward prediction
US8171270B2 (en) * 2006-12-29 2012-05-01 Intel Corporation Asynchronous control transfer
US9128725B2 (en) 2012-05-04 2015-09-08 Apple Inc. Load-store dependency predictor content management
US9600289B2 (en) 2012-05-30 2017-03-21 Apple Inc. Load-store dependency predictor PC hashing
US9710268B2 (en) 2014-04-29 2017-07-18 Apple Inc. Reducing latency for pointer chasing loads
US10514925B1 (en) 2016-01-28 2019-12-24 Apple Inc. Load speculation recovery
US10437595B1 (en) 2016-03-15 2019-10-08 Apple Inc. Load/store dependency predictor optimization for replayed loads
US10671497B2 (en) 2018-01-19 2020-06-02 International Business Machines Corporation Efficient and selective sparing of bits in memory systems
US11093246B2 (en) * 2019-09-06 2021-08-17 International Business Machines Corporation Banked slice-target register file for wide dataflow execution in a microprocessor
US11157276B2 (en) 2019-09-06 2021-10-26 International Business Machines Corporation Thread-based organization of slice target register file entry in a microprocessor to permit writing scalar or vector data to portions of a single register file entry
US11119774B2 (en) 2019-09-06 2021-09-14 International Business Machines Corporation Slice-target register file for microprocessor
US11685039B1 (en) 2022-01-25 2023-06-27 Woodpeckers, Llc Router bit rack, system and method thereof
USD974139S1 (en) 2022-01-25 2023-01-03 Woodpeckers, Llc Base for supporting router bits
USD972399S1 (en) 2022-01-25 2022-12-13 Woodpeckers, Llc Rack for supporting router bits
US11752616B2 (en) 2022-01-25 2023-09-12 Woodpeckers, Llc Router bit rack, system and method thereof

Citations (4)

* 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
JPS55102064A (en) * 1979-01-31 1980-08-04 Toshiba Corp Backup system in composite computer system
JPS5730042A (en) * 1980-07-30 1982-02-18 Nippon Telegr & Teleph Corp <Ntt> Control system for instruction executing sequence
JPS57109084A (en) * 1980-12-26 1982-07-07 Fujitsu Ltd Schedule system for instruction in parallel computer having plural operating devices

Family Cites Families (7)

* 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
US3449722A (en) * 1966-05-02 1969-06-10 Honeywell Inc Electronic multiprocessing apparatus including common queueing technique
JPS6055848B2 (ja) * 1975-10-15 1985-12-06 株式会社東芝 情報処理装置
JPS5440537A (en) * 1977-09-07 1979-03-30 Hitachi Ltd Pipeline control system
US4393465A (en) * 1981-04-13 1983-07-12 Burroughs Corporation Digital device for time-multiplexing multiple tasks
US4521851A (en) * 1982-10-13 1985-06-04 Honeywell Information Systems Inc. Central processor
US4594659A (en) * 1982-10-13 1986-06-10 Honeywell Information Systems Inc. Method and apparatus for prefetching instructions for a central execution pipeline unit

Patent Citations (4)

* 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
JPS55102064A (en) * 1979-01-31 1980-08-04 Toshiba Corp Backup system in composite computer system
JPS5730042A (en) * 1980-07-30 1982-02-18 Nippon Telegr & Teleph Corp <Ntt> Control system for instruction executing sequence
JPS57109084A (en) * 1980-12-26 1982-07-07 Fujitsu Ltd Schedule system for instruction in parallel computer having plural operating devices

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61220071A (ja) * 1985-03-25 1986-09-30 Mitsubishi Electric Corp 並列演算処理装置
WO2023188905A1 (ja) * 2022-03-31 2023-10-05 ソニーグループ株式会社 情報処理装置、及び情報処理装置の動作制御方法

Also Published As

Publication number Publication date
US4594660A (en) 1986-06-10
EP0106670B1 (en) 1988-06-08
EP0106670A2 (en) 1984-04-25
JPS6353571B2 (ja) 1988-10-24
AU571461B2 (en) 1988-04-21
AU2007983A (en) 1984-04-19
DE3377027D1 (en) 1988-07-14
EP0106670A3 (en) 1986-04-16
CA1205565A (en) 1986-06-03

Similar Documents

Publication Publication Date Title
JPS5991547A (ja) 収集装置
US5590309A (en) Storage protection cache and backing storage having system control element data cache pipeline and storage protection bits in a stack array with a stack directory for the stack array
US4530052A (en) Apparatus and method for a data processing unit sharing a plurality of operating systems
JP2597811B2 (ja) データ処理システム
JP2675928B2 (ja) 速度差が大きい協同プロセッサ間のメッセージ・キュー処理
US4982402A (en) Method and apparatus for detecting and correcting errors in a pipelined computer system
US4521851A (en) Central processor
US7865769B2 (en) In situ register state error recovery and restart mechanism
US5812810A (en) Instruction coding to support parallel execution of programs
JPH0227440A (ja) 記憶システム
JPH0652506B2 (ja) チエツクポイント再試行機構
JPH0227441A (ja) コンピュータ・システム
US5548735A (en) System and method for asynchronously processing store instructions to I/O space
JPH0812619B2 (ja) リカバリ制御システム及びエラー回復方法
JPH0785222B2 (ja) データ処理装置
EP0131277B1 (en) Computer hierarchy control
US7640450B1 (en) Method and apparatus for handling nested faults
US5276862A (en) Safestore frame implementation in a central processor
US5557737A (en) Automated safestore stack generation and recovery in a fault tolerant central processor
US5408651A (en) Store &#34;undo&#34; for cache store error recovery
JP3170472B2 (ja) レジスタ・リマップ構造を有する情報処理システム及び方法
US5673391A (en) Hardware retry trap for millicoded processor
EP0476262B1 (en) Error handling in a VLSI central processor unit employing a pipelined address and execution module
JPH05250157A (ja) 記憶域オペランドの管理方法及びコンピュータ・システム
USRE27485E (en) Ls ec sdr