JPS626261B2 - - Google Patents
Info
- Publication number
- JPS626261B2 JPS626261B2 JP57001076A JP107682A JPS626261B2 JP S626261 B2 JPS626261 B2 JP S626261B2 JP 57001076 A JP57001076 A JP 57001076A JP 107682 A JP107682 A JP 107682A JP S626261 B2 JPS626261 B2 JP S626261B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- register
- pointer
- instruction
- gpr
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
- G06F9/30138—Extension of register space, e.g. register cache
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3838—Dependency mechanisms, e.g. register scoreboarding
- G06F9/384—Register renaming
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)
- Executing Machine-Instructions (AREA)
Description
【発明の詳細な説明】
本発明の分野
本発明はデータ処理システムに関し、更に具体
的にはプログラム命令によつてアドレスされるこ
とのできるレジスタの数よりも多いアクセス可能
な汎用ハードウエア・レジスタを中央処理ユニツ
トで利用可能とする装置に関する。
的にはプログラム命令によつてアドレスされるこ
とのできるレジスタの数よりも多いアクセス可能
な汎用ハードウエア・レジスタを中央処理ユニツ
トで利用可能とする装置に関する。
本発明の背景
本発明は米国特許4200927(以下、参照文献
という)に説明されるような高能率データ処理シ
ステムで使用され、IBM社から出版されている
「システム/370操作解説書」(System/
370Principles of Operation、Form No.GA22−
7000)で定義されるようなIBMシステム/370デ
ータ処理システムの要件に従つて機能する。
という)に説明されるような高能率データ処理シ
ステムで使用され、IBM社から出版されている
「システム/370操作解説書」(System/
370Principles of Operation、Form No.GA22−
7000)で定義されるようなIBMシステム/370デ
ータ処理システムの要件に従つて機能する。
IBMシステム/370データ処理システムのため
に定義される命令形式には多くのものが存在し、
それらの多くは1つ又はそれ以上の4ビツト2進
フイールドを含む。これら2進フイールドの各々
は、中央処理ユニツト(CPU)のハードウエア
中に設けられた16個の汎用レジスタ(GPR)の
うち特定の汎用レジスタを指定する。
に定義される命令形式には多くのものが存在し、
それらの多くは1つ又はそれ以上の4ビツト2進
フイールドを含む。これら2進フイールドの各々
は、中央処理ユニツト(CPU)のハードウエア
中に設けられた16個の汎用レジスタ(GPR)の
うち特定の汎用レジスタを指定する。
GPRの各種の使用法は、ロード命令として定
義されるシステム/370命令を参照して説明する
ことができる。ロード命令を指定する8ビツトの
動作フイールドの外に、GPRを指定する3個の
4ビツト・フイールドが存在する。更に、この命
令は、アドレス変位値である12ビツト・フイール
ド(D2)を含む。4ビツト・フイールドの1つ
(R1)は、アドレス可能な主記憶装置からアクセ
スされたデータを受取りかつ記憶するGPRを指
定する。第2の4ビツト・フイールド(B2)
は、ベース・アドレス値を記憶したGPRを指定
する。第3の4ビツト・フイールド(X2)は、
アドレス・インデツクス値を含むGPRを指定す
る。アクセスされるべき主記憶装置の特定のアド
レス可能ロケーシヨンは、D2アドレス変位値
を、B2によつて指定されたGPRに記憶されたベ
ース・アドレス値へ加え、更にその値へX2によ
つて指定されたGPRの内容を加えることによつ
て決定される。主記憶装置の特定のアドレスがア
クセスされた時、データはR1フイールドによつ
て指定されたGPRへ転送される。
義されるシステム/370命令を参照して説明する
ことができる。ロード命令を指定する8ビツトの
動作フイールドの外に、GPRを指定する3個の
4ビツト・フイールドが存在する。更に、この命
令は、アドレス変位値である12ビツト・フイール
ド(D2)を含む。4ビツト・フイールドの1つ
(R1)は、アドレス可能な主記憶装置からアクセ
スされたデータを受取りかつ記憶するGPRを指
定する。第2の4ビツト・フイールド(B2)
は、ベース・アドレス値を記憶したGPRを指定
する。第3の4ビツト・フイールド(X2)は、
アドレス・インデツクス値を含むGPRを指定す
る。アクセスされるべき主記憶装置の特定のアド
レス可能ロケーシヨンは、D2アドレス変位値
を、B2によつて指定されたGPRに記憶されたベ
ース・アドレス値へ加え、更にその値へX2によ
つて指定されたGPRの内容を加えることによつ
て決定される。主記憶装置の特定のアドレスがア
クセスされた時、データはR1フイールドによつ
て指定されたGPRへ転送される。
上記のロード命令と同様の形式を有する他のプ
ログラム命令もあるが、そのプログラム命令で
は、主記憶装置の特定のアドレスからアクセスさ
れたデータは、例えばR1によつて指定された
GPRの内容へ加えられ、その結果がR1によつて
指定されたGPRへ戻される。その場合、ロード
命令の場合と同じように、アドレス発生ステツプ
が必要とされる。即ち、B2及びX2によつて指定
されたGPRの内容がアドレス変位フイールドD2
へ加えられるが、それは、R1によつて指定され
たレジスタの内容へ加えられるべきデータの主記
憶装置における特定のアドレスを発生するためで
ある。
ログラム命令もあるが、そのプログラム命令で
は、主記憶装置の特定のアドレスからアクセスさ
れたデータは、例えばR1によつて指定された
GPRの内容へ加えられ、その結果がR1によつて
指定されたGPRへ戻される。その場合、ロード
命令の場合と同じように、アドレス発生ステツプ
が必要とされる。即ち、B2及びX2によつて指定
されたGPRの内容がアドレス変位フイールドD2
へ加えられるが、それは、R1によつて指定され
たレジスタの内容へ加えられるべきデータの主記
憶装置における特定のアドレスを発生するためで
ある。
多くのデータ処理システムは、順次のプログラ
ム命令の各々を処理するため、少なくとも3つの
段階を必要とする。これらの段階とは、(1)記憶装
置から命令レジスタへ命令をフエツチする(即ち
アクセスする)段階、(2)動作コードを解読し、も
し必要ならば主記憶装置のアドレスを発生する段
階、(3)命令を実行する段階の3つである。或る種
のデータ処理システムでは、或る段階が重複され
る場合がある。即ち、命令のフエツチ及び/又は
解読及びアドレス発生が、前に解読された命令の
実行と同時に実行される。
ム命令の各々を処理するため、少なくとも3つの
段階を必要とする。これらの段階とは、(1)記憶装
置から命令レジスタへ命令をフエツチする(即ち
アクセスする)段階、(2)動作コードを解読し、も
し必要ならば主記憶装置のアドレスを発生する段
階、(3)命令を実行する段階の3つである。或る種
のデータ処理システムでは、或る段階が重複され
る場合がある。即ち、命令のフエツチ及び/又は
解読及びアドレス発生が、前に解読された命令の
実行と同時に実行される。
更に、或る種のデータ処理システムは、主記憶
装置とCPUとの間に高速バツフア又は高速キヤ
ツシユを含む。高速キヤツシユにおいては、近時
に主記憶装置からアクセスされたデータへ早くア
クセスすることができる。或るシステムにおいて
は、高速キヤツシユからデータをアクセスするた
めに2つのCPUサイクルが必要とされ、主記憶
装置からデータをアクセスするためにはもつと多
くのCPUサイクルが必要とされる。
装置とCPUとの間に高速バツフア又は高速キヤ
ツシユを含む。高速キヤツシユにおいては、近時
に主記憶装置からアクセスされたデータへ早くア
クセスすることができる。或るシステムにおいて
は、高速キヤツシユからデータをアクセスするた
めに2つのCPUサイクルが必要とされ、主記憶
装置からデータをアクセスするためにはもつと多
くのCPUサイクルが必要とされる。
1979年6月29日に米国で出願され(一連番号
053658)、1980年12月15日に特許された「暗黙的
アドレス構造及び連想メモリ装置へアクセスする
方法」(発明者H.Schorrその他)と題する米国特
許(以下、参照文献という)は、情報を結合し
てアドレスを形成し次いでそのアドレスを探索に
使用するのではなく、主記憶装置アドレスを形成
するように結合された情報を使用してキヤツシユ
中のデータを連想的に探索することによつて、キ
ヤツシユ中のデータへアクセスする改善された手
法を開示している。
053658)、1980年12月15日に特許された「暗黙的
アドレス構造及び連想メモリ装置へアクセスする
方法」(発明者H.Schorrその他)と題する米国特
許(以下、参照文献という)は、情報を結合し
てアドレスを形成し次いでそのアドレスを探索に
使用するのではなく、主記憶装置アドレスを形成
するように結合された情報を使用してキヤツシユ
中のデータを連想的に探索することによつて、キ
ヤツシユ中のデータへアクセスする改善された手
法を開示している。
1979年7月30日に米国で出願され(一連番号
062200)、1981年2月12日に特許された「アドレ
ス形成インターロツク機構」(発明者J.S.
Liptay)と題する米国特許(以下、参照文献と
いう)は、「アドレス発生インターロツク」を生
じるプログラム命令実行のシーケンスを検出する
ため、命令のフエツチ/解読及び命令実行を或る
程度重複させるハードウエア論理を、高能率デー
タ処理システムに設けることに関する。「アドレ
ス発生インターロツク」を生じるプログラム実行
シーケンスが検出されるのは、解読されつつある
命令が、B2フイールドによつて指定されたGPR
の内容をベース・アドレス値として使用する必要
があるアドレス発生段階を伴い、かつ解読されつ
つある命令のB2フイールドによつて指定された
GPRが、前のロード命令のR1フイールドによつ
て指定された同じGPRである時である。インタ
ーロツクが生じるのは、GPRがロード命令に応
答して主記憶装置からまだ情報を受取つていない
時である。アドレス発生インターロツクは、前の
ロード命令が実行されてしまうまで、命令の解読
及びアドレス発生段階を禁止する。高速キヤツシ
ユ及び主記憶装置に関する上記の説明から分るよ
うに、解読実行前のデータの待機時間は、2CPU
サイクルだけでよいか、又は相当数のCPUサイ
クルを必要とするかも知れない。
062200)、1981年2月12日に特許された「アドレ
ス形成インターロツク機構」(発明者J.S.
Liptay)と題する米国特許(以下、参照文献と
いう)は、「アドレス発生インターロツク」を生
じるプログラム命令実行のシーケンスを検出する
ため、命令のフエツチ/解読及び命令実行を或る
程度重複させるハードウエア論理を、高能率デー
タ処理システムに設けることに関する。「アドレ
ス発生インターロツク」を生じるプログラム実行
シーケンスが検出されるのは、解読されつつある
命令が、B2フイールドによつて指定されたGPR
の内容をベース・アドレス値として使用する必要
があるアドレス発生段階を伴い、かつ解読されつ
つある命令のB2フイールドによつて指定された
GPRが、前のロード命令のR1フイールドによつ
て指定された同じGPRである時である。インタ
ーロツクが生じるのは、GPRがロード命令に応
答して主記憶装置からまだ情報を受取つていない
時である。アドレス発生インターロツクは、前の
ロード命令が実行されてしまうまで、命令の解読
及びアドレス発生段階を禁止する。高速キヤツシ
ユ及び主記憶装置に関する上記の説明から分るよ
うに、解読実行前のデータの待機時間は、2CPU
サイクルだけでよいか、又は相当数のCPUサイ
クルを必要とするかも知れない。
マルチプログラミング手法、タスク切換え、サ
ブルーチン・ブランチ、及びプログラム・シーケ
ンス中の多くのプログラム・ループは、新しいプ
ログラム・シーケンスのために、頻繁にGPRの
現在の内容を主記憶装置に記憶したり、新しい情
報をGPRへロードしたりする必要がある。新し
いプログラム・シーケンスがデータ処理システム
で開始される度に、1つ又はそれ以上のGPR
が、ベース・アドレス情報及びプログラム・シー
ケンスで利用される他のアドレス情報をロードさ
れる必要が生じ、これは多くのアドレス発生イン
ターロツク状態を作る。
ブルーチン・ブランチ、及びプログラム・シーケ
ンス中の多くのプログラム・ループは、新しいプ
ログラム・シーケンスのために、頻繁にGPRの
現在の内容を主記憶装置に記憶したり、新しい情
報をGPRへロードしたりする必要がある。新し
いプログラム・シーケンスがデータ処理システム
で開始される度に、1つ又はそれ以上のGPR
が、ベース・アドレス情報及びプログラム・シー
ケンスで利用される他のアドレス情報をロードさ
れる必要が生じ、これは多くのアドレス発生イン
ターロツク状態を作る。
もし従来よりも多くの「命令によつてアドレス
可能な」GPRが設けられていれば、プログラ
ム・シーケンスを変更する場合に従来よりも効率
的になろう。「命令によつてアドレス可能な」
GPRの数を増加させる場合、先行技術の手法に
よれば、全ての命令のレジスタ・アドレス・フイ
ールドに追加的な2進ビツトを設けることが考え
られる。しかしその場合、IBMシステム/370の
命令形式に従つて既に書かれている多くのプログ
ラムを実質的に変更しなければならなくなる。
可能な」GPRが設けられていれば、プログラ
ム・シーケンスを変更する場合に従来よりも効率
的になろう。「命令によつてアドレス可能な」
GPRの数を増加させる場合、先行技術の手法に
よれば、全ての命令のレジスタ・アドレス・フイ
ールドに追加的な2進ビツトを設けることが考え
られる。しかしその場合、IBMシステム/370の
命令形式に従つて既に書かれている多くのプログ
ラムを実質的に変更しなければならなくなる。
本発明の要約
本発明の目的は、プログラム命令のレジスタ・
アドレス・フイールドによつて指定されることの
できるレジスタの数以上のハードウエア・レジス
タを中央処理ユニツト(CPU)中に設けること
である。
アドレス・フイールドによつて指定されることの
できるレジスタの数以上のハードウエア・レジス
タを中央処理ユニツト(CPU)中に設けること
である。
本発明の他の目的は、限られた数の「命令によ
つてアドレス可能な」GPRの各々に関連しかつ
それらに対応した複数のアクセス可能なハードウ
エア・レジスタをCPUに設けることである。
つてアドレス可能な」GPRの各々に関連しかつ
それらに対応した複数のアクセス可能なハードウ
エア・レジスタをCPUに設けることである。
本発明の他の目的は、限られた数の「プログラ
ム命令によつてアドレス可能な」レジスタの各々
に関連しかつそれらに対応した複数のアクセス可
能なハードウエア・レジスタをCPUに設けるこ
とであり、その場合、複数のアクセス可能ハード
ウエア・レジスタの各々は、前のロード命令が
「命令によつてアドレス可能な」レジスタを指定
したことに従つて主記憶装置の特定のアドレス可
能ロケーシヨンから指定されたレジスタへ転送さ
れたデータ値を保持する。
ム命令によつてアドレス可能な」レジスタの各々
に関連しかつそれらに対応した複数のアクセス可
能なハードウエア・レジスタをCPUに設けるこ
とであり、その場合、複数のアクセス可能ハード
ウエア・レジスタの各々は、前のロード命令が
「命令によつてアドレス可能な」レジスタを指定
したことに従つて主記憶装置の特定のアドレス可
能ロケーシヨンから指定されたレジスタへ転送さ
れたデータ値を保持する。
本発明の上記の目的は、命令によつてアドレス
可能な16個のGPRの各々のために、アクセス可
能な16個のハードウエア・レジスタをCPUに設
けることによつて達成される。GPRを指定する
命令の4ビツト・フイールドによつてアクセス可
能な16個のGPRの各々に対応して、ポインタ・
レジスタが設けられる。このポインタ・レジスタ
は、CPUにある256個のハードウエア・レジスタ
の1つを指定しかつアクセスするためのものであ
る。
可能な16個のGPRの各々のために、アクセス可
能な16個のハードウエア・レジスタをCPUに設
けることによつて達成される。GPRを指定する
命令の4ビツト・フイールドによつてアクセス可
能な16個のGPRの各々に対応して、ポインタ・
レジスタが設けられる。このポインタ・レジスタ
は、CPUにある256個のハードウエア・レジスタ
の1つを指定しかつアクセスするためのものであ
る。
更に、命令によつてアドレス可能なGPRの
各々に関連して、ポインタ割当機構が設けられて
いる。この機構は命令によつてアドレス可能な
GPRの各々のために16個の独特のポインタ値を
与える。特定のGPRに関連したポインタ割当機
構は、先ずロード命令が、12ビツトのD2フイー
ルド及びロード命令のB2フイールドによつて指
定されたGPRの内容によつて指定された主記憶
装置のロケーシヨンから、R1フイールドによつ
て指定されたGPRへデータ転送を開始した時に
実効化される。ポインタ値は、R1によつて指定
されたGPRに関連したポインタ・レジスタに記
憶される。更にポインタ値は指定されたハードウ
エア・レジスタへのアクセスを生じさせ、主記憶
装置のロケーシヨンからのデータは、ハードウエ
ア・レジスタへ転送されかつそこに記憶される。
ポインタ割当機構は他の独特の値へ歩進される
が、それは同一のGPRを指定する異つた後続の
ロード命令によつてポインタ割当機構を使用する
ためである。
各々に関連して、ポインタ割当機構が設けられて
いる。この機構は命令によつてアドレス可能な
GPRの各々のために16個の独特のポインタ値を
与える。特定のGPRに関連したポインタ割当機
構は、先ずロード命令が、12ビツトのD2フイー
ルド及びロード命令のB2フイールドによつて指
定されたGPRの内容によつて指定された主記憶
装置のロケーシヨンから、R1フイールドによつ
て指定されたGPRへデータ転送を開始した時に
実効化される。ポインタ値は、R1によつて指定
されたGPRに関連したポインタ・レジスタに記
憶される。更にポインタ値は指定されたハードウ
エア・レジスタへのアクセスを生じさせ、主記憶
装置のロケーシヨンからのデータは、ハードウエ
ア・レジスタへ転送されかつそこに記憶される。
ポインタ割当機構は他の独特の値へ歩進される
が、それは同一のGPRを指定する異つた後続の
ロード命令によつてポインタ割当機構を使用する
ためである。
実施例における独特の構成要素は、連想アクセ
ス方式を有するポインタ記憶機構である。ポイン
タ記憶機構に記憶された256個のエントリイの
各々は、主記憶装置の特定のロケーシヨンへアク
セスするためロード命令の実行中に利用され、
B2フイールド及び12ビツトのD2フイールドに対
応するポインタ値を含む。更に、上記エントリイ
の各々は、4ビツトのR1フイールドによつて指
定されたGPRに対応するポインタ値を含む。こ
のポインタ値は、主記憶装置の特定のロケーシヨ
ンからデータを受取つたハードウエア・レジスタ
にアクセスするために使用される。
ス方式を有するポインタ記憶機構である。ポイン
タ記憶機構に記憶された256個のエントリイの
各々は、主記憶装置の特定のロケーシヨンへアク
セスするためロード命令の実行中に利用され、
B2フイールド及び12ビツトのD2フイールドに対
応するポインタ値を含む。更に、上記エントリイ
の各々は、4ビツトのR1フイールドによつて指
定されたGPRに対応するポインタ値を含む。こ
のポインタ値は、主記憶装置の特定のロケーシヨ
ンからデータを受取つたハードウエア・レジスタ
にアクセスするために使用される。
ロード命令が実行される度に、前記の機構は、
主記憶装置の特定のロケーシヨンが前のロード命
令によつてアクセスされたかどうかを決定するた
め、ポインタ記憶機構の連想探索動作で使用さ
れ、関連するデータを含む256個のハードウエ
ア・レジスタの1個を決定する。もし新しいロー
ド命令のR1フイールドが、前のロード命令とは
異つたGPRを指定するならば、ポインタ記憶機
構は、適当なポインタ値を新しいGPRに関連し
たポインタ・レジスタへ入れる。これは、新しい
ロード命令のB2フイールド及びD2フイールドに
関連したポインタを使用してポインタ記憶機構を
連想的に探索し、そこに対応するエントリイがあ
るかどうかを調べることによつて達成される。も
しエントリイがあれば、関連するデータを含むハ
ードウエア・レジスタのポインタ値が読出され、
かつこのポインタ値は新しいロード命令のR1フ
イールドによつて指定されたGPRに対応するポ
インタ・レジスタに記憶される。
主記憶装置の特定のロケーシヨンが前のロード命
令によつてアクセスされたかどうかを決定するた
め、ポインタ記憶機構の連想探索動作で使用さ
れ、関連するデータを含む256個のハードウエ
ア・レジスタの1個を決定する。もし新しいロー
ド命令のR1フイールドが、前のロード命令とは
異つたGPRを指定するならば、ポインタ記憶機
構は、適当なポインタ値を新しいGPRに関連し
たポインタ・レジスタへ入れる。これは、新しい
ロード命令のB2フイールド及びD2フイールドに
関連したポインタを使用してポインタ記憶機構を
連想的に探索し、そこに対応するエントリイがあ
るかどうかを調べることによつて達成される。も
しエントリイがあれば、関連するデータを含むハ
ードウエア・レジスタのポインタ値が読出され、
かつこのポインタ値は新しいロード命令のR1フ
イールドによつて指定されたGPRに対応するポ
インタ・レジスタに記憶される。
前のロード命令によつて主記憶装置から転送さ
れたデータを含むハードウエア・レジスタは、
CPUにとつて直ちに利用可能にされる。これは
主記憶装置へアクセスし、データをCPUへ転送
するための時間を不要にする。もし主記憶装置の
特定のロケーシヨンが、後続の命令によつて使用
されるベース・アドレス値を記憶していれば、ア
ドレス発生インターロツクの必要はなく、後続の
命令は、主記憶装置からCPUへデータが転送さ
れるのを待つことなく、直ちに解読されることが
できる。
れたデータを含むハードウエア・レジスタは、
CPUにとつて直ちに利用可能にされる。これは
主記憶装置へアクセスし、データをCPUへ転送
するための時間を不要にする。もし主記憶装置の
特定のロケーシヨンが、後続の命令によつて使用
されるベース・アドレス値を記憶していれば、ア
ドレス発生インターロツクの必要はなく、後続の
命令は、主記憶装置からCPUへデータが転送さ
れるのを待つことなく、直ちに解読されることが
できる。
ポインタ記憶機構の中で連想的一致を見出さな
かつた新しいロード命令は、R1フイールドによ
つて指定されたGPRに対応するポインタ割当ユ
ニツトの動作を開始する。新しいエントリイがポ
インタ記憶機構へ記憶され、B2フイールド、D2
フイールドのポインタ、及び割当てられた新しい
ポインタ値を指定する。
かつた新しいロード命令は、R1フイールドによ
つて指定されたGPRに対応するポインタ割当ユ
ニツトの動作を開始する。新しいエントリイがポ
インタ記憶機構へ記憶され、B2フイールド、D2
フイールドのポインタ、及び割当てられた新しい
ポインタ値を指定する。
実施例の説明
参照文献は、命令のフエツチ、命令の解読及
びアドレス発生、及び命令の実行を含む命令処理
の各種の段階を有するデータ処理システムを開示
している。前記の「システム/370操作解説書」
は、システム/370データ処理システムの各種の
命令形式及び各種の命令によるGPRの使用法を
説明している。参照文献はシステム/370にお
けるGPRの各種の使用法を説明するとともに、
「アドレス発生インターロツク」の概念を明らか
にしている。本発明はアドレス発生インターロツ
クの悪影響を軽減するものである。
びアドレス発生、及び命令の実行を含む命令処理
の各種の段階を有するデータ処理システムを開示
している。前記の「システム/370操作解説書」
は、システム/370データ処理システムの各種の
命令形式及び各種の命令によるGPRの使用法を
説明している。参照文献はシステム/370にお
けるGPRの各種の使用法を説明するとともに、
「アドレス発生インターロツク」の概念を明らか
にしている。本発明はアドレス発生インターロツ
クの悪影響を軽減するものである。
第1図は本発明を理解するために必要なシステ
ム/370データ処理システムの部分を示す。本発
明は、命令レジスタ10中のシステム/370命令
に応答する中央処理ユニツトに対する追加機構と
しての特徴を有する。図示された命令は、命令に
よつてアドレス可能なGPR11へのアクセスを
必要とする1つの命令形式を有する。個々の
GPRはダツシ線のブロツクに含まれる。GPR改
名兼拡張制御機構12は、命令レジスタ10にあ
る命令によつてアドレス可能な16個のGPRの別
個の組を設ける必要性を除去する。第1図に含ま
れるCPUの他の主たる機構ユニツトは、アドレ
ス加算器13である。
ム/370データ処理システムの部分を示す。本発
明は、命令レジスタ10中のシステム/370命令
に応答する中央処理ユニツトに対する追加機構と
しての特徴を有する。図示された命令は、命令に
よつてアドレス可能なGPR11へのアクセスを
必要とする1つの命令形式を有する。個々の
GPRはダツシ線のブロツクに含まれる。GPR改
名兼拡張制御機構12は、命令レジスタ10にあ
る命令によつてアドレス可能な16個のGPRの別
個の組を設ける必要性を除去する。第1図に含ま
れるCPUの他の主たる機構ユニツトは、アドレ
ス加算器13である。
本発明に特に関連を有するシステム/370命令
が命令レジスタ10に示される。8ビツト動作フ
イールド14の解読は、同一形式を有する他の命
令とは異つたものとしてロード命令を表示する。
D2のラベルを有しかつ12ビツトを含む第1のフ
イールド15は、主記憶装置の特定のアドレス可
能ロケーシヨンを指定するため、プログラマによ
つて使用される。第2のフイールド16,17,
18の各々は4ビツトを含み、これらは命令の実
行中に使用されるGPRを指定しかつそこへアク
セスするために使用される。B2フイールドで指
定されたGPRはベース・アドレス値を記憶す
る。X2フイールド17はアドレス・インデツク
ス値を記憶するGPRを指定する。R1フイールド
18は、発生された記憶アドレスによつて主記憶
装置からアクセスされたデータを受取りかつ記憶
するGPRを指定する。
が命令レジスタ10に示される。8ビツト動作フ
イールド14の解読は、同一形式を有する他の命
令とは異つたものとしてロード命令を表示する。
D2のラベルを有しかつ12ビツトを含む第1のフ
イールド15は、主記憶装置の特定のアドレス可
能ロケーシヨンを指定するため、プログラマによ
つて使用される。第2のフイールド16,17,
18の各々は4ビツトを含み、これらは命令の実
行中に使用されるGPRを指定しかつそこへアク
セスするために使用される。B2フイールドで指
定されたGPRはベース・アドレス値を記憶す
る。X2フイールド17はアドレス・インデツク
ス値を記憶するGPRを指定する。R1フイールド
18は、発生された記憶アドレスによつて主記憶
装置からアクセスされたデータを受取りかつ記憶
するGPRを指定する。
ロード命令の実行は、先ず命令解読兼アドレス
発生段階で、B2及びX2フイールドによつて指定
されたGPRのデータ内容をアクセスすることで
ある。上記のデータ内容は、ベース・アドレス値
へ加算されるべきアドレス変位値を表わすD2フ
イールドと共に、線19及び20上をアドレス加
算器13へ転送される。D2フイールドは線21
によつてアドレス加算器13へ与えられる。アド
レス加算器によつて加算されたこれら値の加算結
果は、主記憶装置の特定のロケーシヨンへアクセ
スするため、線22を介して主記憶装置へ転送さ
れる。
発生段階で、B2及びX2フイールドによつて指定
されたGPRのデータ内容をアクセスすることで
ある。上記のデータ内容は、ベース・アドレス値
へ加算されるべきアドレス変位値を表わすD2フ
イールドと共に、線19及び20上をアドレス加
算器13へ転送される。D2フイールドは線21
によつてアドレス加算器13へ与えられる。アド
レス加算器によつて加算されたこれら値の加算結
果は、主記憶装置の特定のロケーシヨンへアクセ
スするため、線22を介して主記憶装置へ転送さ
れる。
記憶装置のアクセスが完了した時、記憶データ
は線23上を戻され、R1フイールド18によつ
てアクセスされたGPRへ記憶される。
は線23上を戻され、R1フイールド18によつ
てアクセスされたGPRへ記憶される。
他の各種のシステム/370命令フオーマツト
が、GPRへアクセスして線24上にデータを読
出すため、GPR指定情報を与える。このデータ
はCPUの算術論理ユニツト中で使用される。算
術動作の結果は各種のGPRへ記憶されてよい。
が、GPRへアクセスして線24上にデータを読
出すため、GPR指定情報を与える。このデータ
はCPUの算術論理ユニツト中で使用される。算
術動作の結果は各種のGPRへ記憶されてよい。
システム/370データ処理システム中に、命令
によつてアドレス可能なハードウエア・レジスタ
が16個だけしか設けられていないことは、これま
で効率を制限する要因であつた。従つて、GPR
11は本発明に従つてGPR改名兼拡張制御機構
12と置換されねばならない。この機構の1部と
して、読出し又は読込みのアクセスを行うため、
多数のハードウエア・レジスタが設けられる。追
加されるハードウエア・レジスタの数は、システ
ム/370の定義によつて設けられる16個よりも非
常に大きい。フイールド16,17,18によつ
て指定されたGPRを改名して、新しく設けられ
た複数のハードウエア・レジスタの特定の1つに
対応させる論理を説明する。
によつてアドレス可能なハードウエア・レジスタ
が16個だけしか設けられていないことは、これま
で効率を制限する要因であつた。従つて、GPR
11は本発明に従つてGPR改名兼拡張制御機構
12と置換されねばならない。この機構の1部と
して、読出し又は読込みのアクセスを行うため、
多数のハードウエア・レジスタが設けられる。追
加されるハードウエア・レジスタの数は、システ
ム/370の定義によつて設けられる16個よりも非
常に大きい。フイールド16,17,18によつ
て指定されたGPRを改名して、新しく設けられ
た複数のハードウエア・レジスタの特定の1つに
対応させる論理を説明する。
命令によつて指定された特定のGPRと複数の
ハードウエア・レジスタの1つとの間で首尾一貫
した割当てを行ないかつそれらの間で対応関係を
作り出すレジスタ改名機能は、D2フイールド1
5及びB2フイールド16をそれぞれ入力25及
び26として使用することによつて実効化され
る。GPR改名兼拡張制御機構12は、上記入力
の他にX2フイールド17及びR1フイールド18
に対応する入力27及び28を受取る。
ハードウエア・レジスタの1つとの間で首尾一貫
した割当てを行ないかつそれらの間で対応関係を
作り出すレジスタ改名機能は、D2フイールド1
5及びB2フイールド16をそれぞれ入力25及
び26として使用することによつて実効化され
る。GPR改名兼拡張制御機構12は、上記入力
の他にX2フイールド17及びR1フイールド18
に対応する入力27及び28を受取る。
ロード命令が解読される時のアドレス発生段階
の1部として、入力26及び27は複数のハード
ウエア・レジスタの適当な1つへアクセスし、ア
ドレス加算器13に対する線19上にベース・ア
ドレス値を与え、線20上に適当なインデツクス
値を与えるように働く。これらの入力は、アドレ
ス変位値D2を表わす入力21と共に、アドレス
加算器13の中で働いて、線22上に記憶アドレ
スを与える。記憶装置から戻された記憶データ2
3は、GPR改名兼拡張制御機構12に対する入
力29へ与えられ、複数のハードウエア・レジス
タの適当な1つへ入れられる。他の命令に応答し
てなされたハードウエア・レジスタのアクセス
は、線30上にデータ出力を生じ、この出力は
CPU内で処理される。
の1部として、入力26及び27は複数のハード
ウエア・レジスタの適当な1つへアクセスし、ア
ドレス加算器13に対する線19上にベース・ア
ドレス値を与え、線20上に適当なインデツクス
値を与えるように働く。これらの入力は、アドレ
ス変位値D2を表わす入力21と共に、アドレス
加算器13の中で働いて、線22上に記憶アドレ
スを与える。記憶装置から戻された記憶データ2
3は、GPR改名兼拡張制御機構12に対する入
力29へ与えられ、複数のハードウエア・レジス
タの適当な1つへ入れられる。他の命令に応答し
てなされたハードウエア・レジスタのアクセス
は、線30上にデータ出力を生じ、この出力は
CPU内で処理される。
GPR改名兼拡張制御機構12を設けることに
よつて、GPR11はデータ・プロセツサによる
使用から除かれる。その場合にも、プロセツサは
依然としてシステム/370操作解説書及びそれに
基くプログラムに従つて機能する。
よつて、GPR11はデータ・プロセツサによる
使用から除かれる。その場合にも、プロセツサは
依然としてシステム/370操作解説書及びそれに
基くプログラムに従つて機能する。
第2図は本発明を組込むことによつて達成され
る所望の結果を示す。複数のアドレス可能ロケー
シヨンより成る主記憶装置は31で表わされ、本
発明によつて置換される16個のGPRは11で表
わされる。GPRの代りに設けられるハードウエ
ア・レジスタの数は可変であるが、本実施例では
256個が設けられ、32で表示されている。
る所望の結果を示す。複数のアドレス可能ロケー
シヨンより成る主記憶装置は31で表わされ、本
発明によつて置換される16個のGPRは11で表
わされる。GPRの代りに設けられるハードウエ
ア・レジスタの数は可変であるが、本実施例では
256個が設けられ、32で表示されている。
本発明は、システム/370のために定義された
GPRの各々について、16個のハードウエア・レ
ジスタの改名を制御することができる。例えば、
256個のハードウエア・レジスタのうち、レジス
タ0からレジスタ15まではGPR0に関連させ
られ、レジスタ240からレジスタ255までは
GPR15に関連させられる。
GPRの各々について、16個のハードウエア・レ
ジスタの改名を制御することができる。例えば、
256個のハードウエア・レジスタのうち、レジス
タ0からレジスタ15まではGPR0に関連させ
られ、レジスタ240からレジスタ255までは
GPR15に関連させられる。
3種の異つたロード命令が第2図の33,3
4,35に示されている。33にある命令は、ア
ドレス変位値D2を、B2フイールドによつて指定
されたGPRの内容へ加えることによつて、主記
憶装置の特定のロケーシヨン36を指定する。3
3で表わされた事実は、ロード命令のX2フイー
ルドが値「0」を有すれば、アドレス・インデク
シングが要求されないということである。34に
ある命令は、「0」以外のGPRがX2フイールドに
よつて指定され、それがB2によつて指定された
GPRの内容及びアドレス変位値D2と組合せられ
た時、主記憶装置の特定のロケーシヨン37をア
ドレスすることを示す。35にある命令は、主記
憶装置の特定のロケーシヨン38をアドレスする
ことを示す。
4,35に示されている。33にある命令は、ア
ドレス変位値D2を、B2フイールドによつて指定
されたGPRの内容へ加えることによつて、主記
憶装置の特定のロケーシヨン36を指定する。3
3で表わされた事実は、ロード命令のX2フイー
ルドが値「0」を有すれば、アドレス・インデク
シングが要求されないということである。34に
ある命令は、「0」以外のGPRがX2フイールドに
よつて指定され、それがB2によつて指定された
GPRの内容及びアドレス変位値D2と組合せられ
た時、主記憶装置の特定のロケーシヨン37をア
ドレスすることを示す。35にある命令は、主記
憶装置の特定のロケーシヨン38をアドレスする
ことを示す。
第2図において、ロード命令33及び34の双
方はGPR0を指定するR1フイールド18を有す
る。従来まで、主記憶装置の2つの異つたロケー
シヨンを指定している2つの異つたロード命令
が、GPR0への情報のロードを要求した場合、
最初のロード命令によつてロードされたデータ
は、第2のロード命令によつて破壊された。本発
明の場合、16度の異つたロード命令の全てがR1
フイールド18でGPR0を指定し、各々のロー
ド命令が16個の異つた主記憶装置ロケーシヨンを
指定するものとすれば、本発明の装置は、16個の
異つたロード命令からのデータをハードウエア・
レジスタ0からハードウエア・レジスタ15まで
に保持するように働く。
方はGPR0を指定するR1フイールド18を有す
る。従来まで、主記憶装置の2つの異つたロケー
シヨンを指定している2つの異つたロード命令
が、GPR0への情報のロードを要求した場合、
最初のロード命令によつてロードされたデータ
は、第2のロード命令によつて破壊された。本発
明の場合、16度の異つたロード命令の全てがR1
フイールド18でGPR0を指定し、各々のロー
ド命令が16個の異つた主記憶装置ロケーシヨンを
指定するものとすれば、本発明の装置は、16個の
異つたロード命令からのデータをハードウエア・
レジスタ0からハードウエア・レジスタ15まで
に保持するように働く。
第2図に示されるように、主記憶装置のロケー
シヨン36からGPR0に対応するハードウエ
ア・レジスタへデータを転送する場合、そのデー
タは線39上をハードウエア・レジスタ0へ転送
される。ロード命令34がGPR0へのデータの
ロードを要求する16番目のロード命令であれば、
ロケーシヨン37からのデータは線40を介して
ハードウエア・レジスタ15へ転送される。もし
ロード命令35がロケーシヨン38にあるデータ
をGPR15へロードすることを要求し、そのロ
ード命令がGPR15を指定する最初のロード命
令であれば、データは線41を介してハードウエ
ア・レジスタ240へ転送される。
シヨン36からGPR0に対応するハードウエ
ア・レジスタへデータを転送する場合、そのデー
タは線39上をハードウエア・レジスタ0へ転送
される。ロード命令34がGPR0へのデータの
ロードを要求する16番目のロード命令であれば、
ロケーシヨン37からのデータは線40を介して
ハードウエア・レジスタ15へ転送される。もし
ロード命令35がロケーシヨン38にあるデータ
をGPR15へロードすることを要求し、そのロ
ード命令がGPR15を指定する最初のロード命
令であれば、データは線41を介してハードウエ
ア・レジスタ240へ転送される。
もしロード命令33がプログラム命令の全体的
な実行中に第2回目として実行された時、本発明
の装置は、ロケーシヨン36から線39上を転送
されたデータが依然としてハードウエア・レジス
タ0に有効に存在していることを認識し、そのレ
ジスタに記憶されているデータはCPUへ転送さ
れて、主記憶装置31がサイクルを完了して要求
されたデータがロケーシヨン36から転送される
のを待機する必要なしに、その後のデータ処理を
許すことになる。
な実行中に第2回目として実行された時、本発明
の装置は、ロケーシヨン36から線39上を転送
されたデータが依然としてハードウエア・レジス
タ0に有効に存在していることを認識し、そのレ
ジスタに記憶されているデータはCPUへ転送さ
れて、主記憶装置31がサイクルを完了して要求
されたデータがロケーシヨン36から転送される
のを待機する必要なしに、その後のデータ処理を
許すことになる。
点線42及び43は、ロード命令33がロケー
シヨン36へのアクセスを要求し、データが
GPR15へ転送されるべきことを示すプログラ
ム・シーケンスを表わす。本発明の装置は、線4
2上のデータを受取るためハードウエア・レジス
タ32を割当てる必要がないことを認識する。更
に、点線43で表わされるように、本発明の装置
は、ロケーシヨン36にあるデータが前に線39
上をハードウエア・レジスタ0へ転送されたこと
を認識し、以後のデータ処理の間に、ハードウエ
ア・レジスタ0へアクセスするため、GPR15
への参照を生じさせる。ここで再びCPUは、主
記憶装置31からCPUへ転送されるべきデータ
が既に利用可能であることを通知されることがで
き、ハードウエア・レジスタ0に記憶されたデー
タを使用して、以後の処理が直ちに進行されるこ
とができる。もしGPR15へ記憶されようとし
ているデータが後続する命令中でベース・アドレ
スとして使用される場合、それは直ちにハードウ
エア・レジスタ0から利用可能である。アドレス
発生インターロツクは生じない。
シヨン36へのアクセスを要求し、データが
GPR15へ転送されるべきことを示すプログラ
ム・シーケンスを表わす。本発明の装置は、線4
2上のデータを受取るためハードウエア・レジス
タ32を割当てる必要がないことを認識する。更
に、点線43で表わされるように、本発明の装置
は、ロケーシヨン36にあるデータが前に線39
上をハードウエア・レジスタ0へ転送されたこと
を認識し、以後のデータ処理の間に、ハードウエ
ア・レジスタ0へアクセスするため、GPR15
への参照を生じさせる。ここで再びCPUは、主
記憶装置31からCPUへ転送されるべきデータ
が既に利用可能であることを通知されることがで
き、ハードウエア・レジスタ0に記憶されたデー
タを使用して、以後の処理が直ちに進行されるこ
とができる。もしGPR15へ記憶されようとし
ているデータが後続する命令中でベース・アドレ
スとして使用される場合、それは直ちにハードウ
エア・レジスタ0から利用可能である。アドレス
発生インターロツクは生じない。
GPR指定フイールドを含む他のシステム/370
命令は、ハードウエア・レジスタ32の適当な1
つに対するアクセスを許される。上記ハードウエ
ア・レジスタの1つはその時点で指定された
GPRに関連すると共にそれに対応している。
命令は、ハードウエア・レジスタ32の適当な1
つに対するアクセスを許される。上記ハードウエ
ア・レジスタの1つはその時点で指定された
GPRに関連すると共にそれに対応している。
第3図以降の図面において、第1図及び第2図
で参照された機能ユニツト又は線は、同じ番号を
与えられる。例えば、第2図に示される256個の
ハードウエア・レジスタ32が第3図に示され、
GPR拡張レジスタの名称を与えられる。更に、
各種の機能ユニツトを各互連続する線の全ては、
1つのユニツトから他のユニツトへ並列に複数の
2進ビツトを転送するケーブル又はバスである。
線25に関連して示される44の表示は、命令レ
ジスタ10から他の機能ユニツトの入力へ、12ビ
ツトのD2フイールド15が並列に転送されるバ
ス又はケーブルであることを示す。
で参照された機能ユニツト又は線は、同じ番号を
与えられる。例えば、第2図に示される256個の
ハードウエア・レジスタ32が第3図に示され、
GPR拡張レジスタの名称を与えられる。更に、
各種の機能ユニツトを各互連続する線の全ては、
1つのユニツトから他のユニツトへ並列に複数の
2進ビツトを転送するケーブル又はバスである。
線25に関連して示される44の表示は、命令レ
ジスタ10から他の機能ユニツトの入力へ、12ビ
ツトのD2フイールド15が並列に転送されるバ
ス又はケーブルであることを示す。
既に説明したように、命令によつてアドレス可
能な16個のGPRの各々は、各種の用途を有する
ことができる。GPRが供される用途は、命令中
の4ビツト・フイールド位置によつて指定された
特定のGPRは256個のハードウエア・レジスタ3
2の適当な1つにアクセスするように働かねばな
らない。線45上で指定された特定のGPRとハ
ードウエア・レジスタ32の特定の1つとの間の
関連ずけは、複数のポインタ・レジスタ46によ
つて実効化される。それぞれのGPRに関連して
8ビツトのポインタ・レジスタが設けられる。線
45上のGPRを表す4ビツトは、関連したポイ
ンタ・レジスタ46にアクセスして、線47へポ
インタの現在値を読出すために使用される。ポイ
ンタの現在値はハードウエア・レジスタ32と関
連したアクセス手段48へ印加され、読込み又は
読出しのために対応するハードウエア・レジスタ
へアクセスさせる。
能な16個のGPRの各々は、各種の用途を有する
ことができる。GPRが供される用途は、命令中
の4ビツト・フイールド位置によつて指定された
特定のGPRは256個のハードウエア・レジスタ3
2の適当な1つにアクセスするように働かねばな
らない。線45上で指定された特定のGPRとハ
ードウエア・レジスタ32の特定の1つとの間の
関連ずけは、複数のポインタ・レジスタ46によ
つて実効化される。それぞれのGPRに関連して
8ビツトのポインタ・レジスタが設けられる。線
45上のGPRを表す4ビツトは、関連したポイ
ンタ・レジスタ46にアクセスして、線47へポ
インタの現在値を読出すために使用される。ポイ
ンタの現在値はハードウエア・レジスタ32と関
連したアクセス手段48へ印加され、読込み又は
読出しのために対応するハードウエア・レジスタ
へアクセスさせる。
さしあたつて、実行されているシステム/370
命令が2つの指定されたGPRを含む場合、対応
するハードウエア・レジスタ32から読出された
データは、処理のために線30上を適当なCPU
データ・フロー・レジスタへ転送される。CPU
におけるデータ処理の結果がGPR中に記憶され
るべきであれば、本発明の装置は、線49を介し
てそのデータをCPUデータ・フローから受取
り、ハードウエア・レジスタ32の適当な1つへ
記憶するように働く。R1フイールドを含む命令
実行の間、データ処理の結果は、R1フイールド
によつて指定されたGPRへ記憶されるべきであ
る。R1フイールドによつて指定されたGPRに対
応するポインタ・レジスタ46からアクセスされ
たポインタは、線50を介してCPUデータ・フ
ローへ送られる。処理完了の結果及びデータが、
ハードウエア・レジスタ32に記憶されるべく線
49上を戻された時、特定のハードウエア・レジ
スタ32を指定するポインタ値が線51上を戻さ
れ、解読器52を介して適当なハードウエア・レ
ジスタ32へアクセスせしめる。
命令が2つの指定されたGPRを含む場合、対応
するハードウエア・レジスタ32から読出された
データは、処理のために線30上を適当なCPU
データ・フロー・レジスタへ転送される。CPU
におけるデータ処理の結果がGPR中に記憶され
るべきであれば、本発明の装置は、線49を介し
てそのデータをCPUデータ・フローから受取
り、ハードウエア・レジスタ32の適当な1つへ
記憶するように働く。R1フイールドを含む命令
実行の間、データ処理の結果は、R1フイールド
によつて指定されたGPRへ記憶されるべきであ
る。R1フイールドによつて指定されたGPRに対
応するポインタ・レジスタ46からアクセスされ
たポインタは、線50を介してCPUデータ・フ
ローへ送られる。処理完了の結果及びデータが、
ハードウエア・レジスタ32に記憶されるべく線
49上を戻された時、特定のハードウエア・レジ
スタ32を指定するポインタ値が線51上を戻さ
れ、解読器52を介して適当なハードウエア・レ
ジスタ32へアクセスせしめる。
第2図を説明した時に言及したように、主記憶
装置の16個の異つたロケーシヨンを指定する16個
の異つたロード命令によつて、主記憶装置から特
定のGPRへ転送されたデータは、ハードウエ
ア・レジスタ32の中に保持される。ポインタ割
当ユニツト53は、ロード命令のR1フイールド
(線54上の)によつて指定されたGPRに応答
し、16個のポインタ割当ユニツトの適当な1つを
実効化する。例えば、線54上のR1フイールド
を解読することによつて、GPR0を宛先レジス
タとして指定する新しいロード命令が実行される
時、16個のロード命令の中で実行されているロー
ド命令に関連した8ビツトのポインタ値が線55
へ読出され、線56,57,58を介して各種の
ユニツトへ転送される。
装置の16個の異つたロケーシヨンを指定する16個
の異つたロード命令によつて、主記憶装置から特
定のGPRへ転送されたデータは、ハードウエ
ア・レジスタ32の中に保持される。ポインタ割
当ユニツト53は、ロード命令のR1フイールド
(線54上の)によつて指定されたGPRに応答
し、16個のポインタ割当ユニツトの適当な1つを
実効化する。例えば、線54上のR1フイールド
を解読することによつて、GPR0を宛先レジス
タとして指定する新しいロード命令が実行される
時、16個のロード命令の中で実行されているロー
ド命令に関連した8ビツトのポインタ値が線55
へ読出され、線56,57,58を介して各種の
ユニツトへ転送される。
線57上の新しく割当てられたポインタ値は、
線54上のロード命令のR1フイールドによつて
指定されたGPRに関連したポインタ・レジスタ
46へ記憶される。線58上の新しいポインタ値
は、CPUデータ・フローへ転送され、主記憶装
置からアクセスされたデータが線49上を戻され
てハードウエア・レジスタ32へ記憶される時、
線51上で利用される。ハードウエア・レジスタ
は、ポインタ割当ユニツト53によつて、R1フ
イールドによつて指定されたGPRに関連させら
れており、かつポインタ値はポインタ・レジスタ
46の適当な1つに記憶されている。
線54上のロード命令のR1フイールドによつて
指定されたGPRに関連したポインタ・レジスタ
46へ記憶される。線58上の新しいポインタ値
は、CPUデータ・フローへ転送され、主記憶装
置からアクセスされたデータが線49上を戻され
てハードウエア・レジスタ32へ記憶される時、
線51上で利用される。ハードウエア・レジスタ
は、ポインタ割当ユニツト53によつて、R1フ
イールドによつて指定されたGPRに関連させら
れており、かつポインタ値はポインタ・レジスタ
46の適当な1つに記憶されている。
更に第2図を説明した時に言及したことだが、
ロード命令のシーケンスが実行され、主記憶装置
の特定のロケーシヨン36を指定する命令33が
2度目に実行され、データの宛先として異つた
GPRを指定する場合が考えられる。本発明は、
ロケーシヨン36からのデータが既にハードウエ
ア・レジスタ0に記憶されていることを決定する
ことができ、かつポインタ値0をGPR15に関
連したポインタ・レジスタ46の中に記憶させ
る。この能力は改名ポインタ記憶機構59によつ
て達成される。改名ポインタ記憶機構59は、前
記の参照文献に詳細に説明されている連想メモ
リと同じように機能する連想メモリである。改名
ポインタ記憶機構は256個のエントリイを有し、
これらのエントリイはロード命令が実行される順
序で作られる。256個のエントリイが改名記憶機
構59の中に作られた時、機構59はリセツトさ
れ、他の256個のエントリイがロード命令に応答
して作られる。
ロード命令のシーケンスが実行され、主記憶装置
の特定のロケーシヨン36を指定する命令33が
2度目に実行され、データの宛先として異つた
GPRを指定する場合が考えられる。本発明は、
ロケーシヨン36からのデータが既にハードウエ
ア・レジスタ0に記憶されていることを決定する
ことができ、かつポインタ値0をGPR15に関
連したポインタ・レジスタ46の中に記憶させ
る。この能力は改名ポインタ記憶機構59によつ
て達成される。改名ポインタ記憶機構59は、前
記の参照文献に詳細に説明されている連想メモ
リと同じように機能する連想メモリである。改名
ポインタ記憶機構は256個のエントリイを有し、
これらのエントリイはロード命令が実行される順
序で作られる。256個のエントリイが改名記憶機
構59の中に作られた時、機構59はリセツトさ
れ、他の256個のエントリイがロード命令に応答
して作られる。
ロード命令が第1回目に実行される時、各
GPRのために独特のポインタ値がポインタ割当
ユニツト53によつて割当てられるとともにポイ
ンタ・レジスタ46の中に記憶され、改名ポイン
タ機構59の中にエントリイが作られる。各ロー
ド命令のために作られるエントリイは、R1フイ
ールドによつて指定されたGPRに対して新しく
割当てられたポインタ値を含み、これは線60に
よつてエントリイ中に記憶される。改名ポインタ
記憶機構59の中に新しいエントリイを作つてい
るロード命令によつてアドレスされる主記憶装置
の特定のロケーシヨンは、線61を介してエント
リイへ記憶されるD2フイールドと、B2フイール
ドによつて指定されたGPRと関連したポイン
タ・レジスタ46からアクセスされかつ線62を
介してエントリイへ記憶される8ビツト・ポイン
タ値とによつて指定される。
GPRのために独特のポインタ値がポインタ割当
ユニツト53によつて割当てられるとともにポイ
ンタ・レジスタ46の中に記憶され、改名ポイン
タ機構59の中にエントリイが作られる。各ロー
ド命令のために作られるエントリイは、R1フイ
ールドによつて指定されたGPRに対して新しく
割当てられたポインタ値を含み、これは線60に
よつてエントリイ中に記憶される。改名ポインタ
記憶機構59の中に新しいエントリイを作つてい
るロード命令によつてアドレスされる主記憶装置
の特定のロケーシヨンは、線61を介してエント
リイへ記憶されるD2フイールドと、B2フイール
ドによつて指定されたGPRと関連したポイン
タ・レジスタ46からアクセスされかつ線62を
介してエントリイへ記憶される8ビツト・ポイン
タ値とによつて指定される。
各ロード命令が実行のために解読される時、改
名ポインタ記憶機構59の中で連想探索が実行さ
れる。この連想探索は、探索引数として、線61
上のD2フイールドと、線45上のB2フイールド
によつて指定されたGPRに対応するポインタ・
レジスタ46から得られたポインタ値を使用す
る。ベース・アドレスを記憶するハードウエア・
レジスタ32を指定するこのポインタ値は、線6
2上で探索フイールドとして使用される。もし改
名ポインタ記憶機構59で一致が発見されると、
これは同一のB2フイールド及びD2フイールドを
使用する前のロード命令が実行されたことを示
す。一致条件に応答して、既にデータを含んでい
るハードウエア・レジスタ32のポインタ値が線
63及び線57を介して転送され、実行されつつ
あるロード命令のR1フイールド(線45上にあ
る)によつて指定されたポインタ・レジスタ46
へ記憶される。線63へ読出されたポインタ値
は、線64を介してハードウエア・レジスタ64
へ転送され、そこへアクセスして線30を介して
CPUデータ・フローへデータを与えるために使
用される。
名ポインタ記憶機構59の中で連想探索が実行さ
れる。この連想探索は、探索引数として、線61
上のD2フイールドと、線45上のB2フイールド
によつて指定されたGPRに対応するポインタ・
レジスタ46から得られたポインタ値を使用す
る。ベース・アドレスを記憶するハードウエア・
レジスタ32を指定するこのポインタ値は、線6
2上で探索フイールドとして使用される。もし改
名ポインタ記憶機構59で一致が発見されると、
これは同一のB2フイールド及びD2フイールドを
使用する前のロード命令が実行されたことを示
す。一致条件に応答して、既にデータを含んでい
るハードウエア・レジスタ32のポインタ値が線
63及び線57を介して転送され、実行されつつ
あるロード命令のR1フイールド(線45上にあ
る)によつて指定されたポインタ・レジスタ46
へ記憶される。線63へ読出されたポインタ値
は、線64を介してハードウエア・レジスタ64
へ転送され、そこへアクセスして線30を介して
CPUデータ・フローへデータを与えるために使
用される。
もし改名ポインタ記憶機構59の連想探索が一
致を発見しなければ、ポインタ割当ユニツト53
が実効化されて、他のポインタ値をR1フイール
ドによつて指定されたGPRへ割当てる。このポ
インタ値は記憶するため線56及び57を介して
ポインタ・レジスタ46へ転送され、線60,6
1,62によつて新しいエントリイが改名ポイン
タ記憶機構59の中に作られる。
致を発見しなければ、ポインタ割当ユニツト53
が実効化されて、他のポインタ値をR1フイール
ドによつて指定されたGPRへ割当てる。このポ
インタ値は記憶するため線56及び57を介して
ポインタ・レジスタ46へ転送され、線60,6
1,62によつて新しいエントリイが改名ポイン
タ記憶機構59の中に作られる。
この時点で「有効化」の概念を説明しておく。
本発明の目的の1つは、できるだけ早くCPUデ
ータ・フローへデータを利用可能にすることであ
る。これは、特にGPR中のデータが、後続する
命令解読アドレス発生段階でベース・アドレス情
報として使用されるべき場合に望ましいことであ
る。前に、プログラム・シーケンスは、マルチプ
ログラミング、マルチタスキング、ブランチなど
の結果によつて、変更されることを述べた。従つ
て、特定のロード命令が、前に実行されたロード
命令と同じB2フイールド及びD2フイールドを有
する場合であつても(改名ポインタ記憶機構59
の中には、前のロード命令についてエントリイが
存在している)、新しいロード命令は、事実とし
て、前に実行されたロード命令とは異つた主記憶
装置ロケーシヨンへのアクセスを生じるかも知れ
ない。これは、特にB2フイールドによつて指定
されたGPRにあるベース・アドレス値が異つて
いる場合に起る。更に、ベース・アドレス値及び
D2フイールドにあるアドレス変位値が同じであ
つても、X2フイールドによつて指定されたGPR
にあるアドレス・インデツクス値が、主記憶装置
でアドレスされる特定のロケーシヨンを変更する
場合もある。
本発明の目的の1つは、できるだけ早くCPUデ
ータ・フローへデータを利用可能にすることであ
る。これは、特にGPR中のデータが、後続する
命令解読アドレス発生段階でベース・アドレス情
報として使用されるべき場合に望ましいことであ
る。前に、プログラム・シーケンスは、マルチプ
ログラミング、マルチタスキング、ブランチなど
の結果によつて、変更されることを述べた。従つ
て、特定のロード命令が、前に実行されたロード
命令と同じB2フイールド及びD2フイールドを有
する場合であつても(改名ポインタ記憶機構59
の中には、前のロード命令についてエントリイが
存在している)、新しいロード命令は、事実とし
て、前に実行されたロード命令とは異つた主記憶
装置ロケーシヨンへのアクセスを生じるかも知れ
ない。これは、特にB2フイールドによつて指定
されたGPRにあるベース・アドレス値が異つて
いる場合に起る。更に、ベース・アドレス値及び
D2フイールドにあるアドレス変位値が同じであ
つても、X2フイールドによつて指定されたGPR
にあるアドレス・インデツクス値が、主記憶装置
でアドレスされる特定のロケーシヨンを変更する
場合もある。
改名ポインタ記憶機構59の中で一致が発見さ
れると、ハードウエア・レジスタ32からのデー
タが線30を介してCPUへ利用可能とされる。
その場合でも、線22上のアドレス情報は主記憶
装置へ送られ、記憶装置のデータへアクセスして
それをCPUへ転送させる。特定の主記憶装置ロ
ケーシヨンからCPUへデータが戻された時、そ
のデータは、改名ポインタ記憶機構59の中で一
致が発見された結果として線30上をCPUへ送
られたデータと比較される。もし主記憶装置から
戻されたデータが、線30上を転送されたデータ
と等しければ、CPU中の処理は継続する。もし
主記憶装置から戻されたデータが、線30上を
CPUへ転送されたデータと同じでなければ、一
致の結果として継続されていた処理は無効にされ
る。その時点で、CPUデータ・フローは、線4
9へデータを与えることによつて、主記憶装置か
ら戻されたデータを、ハードウエア・レジスタ3
2に記憶せしめる。前にCPUによつて線58上
で受取られたポインタ値を、解続器52への線5
1に戻すことによつて、適当なレジスタへのアク
セスが実効化される。主記憶装置からアクセスさ
れたデータとハードウエア・レジスタ中のデータ
との一致を発見することによつて、大きな利点が
得られるが、正しい動作を保証するため、「有効
化」シーケンスが必要である。
れると、ハードウエア・レジスタ32からのデー
タが線30を介してCPUへ利用可能とされる。
その場合でも、線22上のアドレス情報は主記憶
装置へ送られ、記憶装置のデータへアクセスして
それをCPUへ転送させる。特定の主記憶装置ロ
ケーシヨンからCPUへデータが戻された時、そ
のデータは、改名ポインタ記憶機構59の中で一
致が発見された結果として線30上をCPUへ送
られたデータと比較される。もし主記憶装置から
戻されたデータが、線30上を転送されたデータ
と等しければ、CPU中の処理は継続する。もし
主記憶装置から戻されたデータが、線30上を
CPUへ転送されたデータと同じでなければ、一
致の結果として継続されていた処理は無効にされ
る。その時点で、CPUデータ・フローは、線4
9へデータを与えることによつて、主記憶装置か
ら戻されたデータを、ハードウエア・レジスタ3
2に記憶せしめる。前にCPUによつて線58上
で受取られたポインタ値を、解続器52への線5
1に戻すことによつて、適当なレジスタへのアク
セスが実効化される。主記憶装置からアクセスさ
れたデータとハードウエア・レジスタ中のデータ
との一致を発見することによつて、大きな利点が
得られるが、正しい動作を保証するため、「有効
化」シーケンスが必要である。
第4図は、本発明の論理動作を、具体的な数値
を使用して説明するための図である。命令シーケ
ンスにおいて、前に命令が実行された結果とし
て、GPR1への参照は、ハードウエア・レジス
タ30へのアクセスを生じるものとする。更に、
前に或る命令が実行された結果として、GPR1
4を指定するプログラム命令が、ベース・アドレ
ス情報をハードウエア・レジスタ42に記憶させ
たものとする。前の命令の実行は、主記憶装置ロ
ケーシヨンからのデータをハードウエア・レジス
タ25に記憶した。改名ポインタ記憶機構59に
示される1つのエントリイは、データを主記憶装
置ロケーシヨンから戻してハードウエア・レジス
タ25へ記憶させた前のロード命令で使用された
情報を示す。この情報は、主記憶装置ロケーシヨ
ンへアクセスしてデータをハードウエア・レジス
タ25へ転送するためアドレス加算器13によつ
て発生された記憶装置アドレスが、ベース・アド
レス値としてハードウエア・レジスタ42を使用
したことを示す。上記ベース・アドレス値へ
「100」のアドレス変位値が加算された。
を使用して説明するための図である。命令シーケ
ンスにおいて、前に命令が実行された結果とし
て、GPR1への参照は、ハードウエア・レジス
タ30へのアクセスを生じるものとする。更に、
前に或る命令が実行された結果として、GPR1
4を指定するプログラム命令が、ベース・アドレ
ス情報をハードウエア・レジスタ42に記憶させ
たものとする。前の命令の実行は、主記憶装置ロ
ケーシヨンからのデータをハードウエア・レジス
タ25に記憶した。改名ポインタ記憶機構59に
示される1つのエントリイは、データを主記憶装
置ロケーシヨンから戻してハードウエア・レジス
タ25へ記憶させた前のロード命令で使用された
情報を示す。この情報は、主記憶装置ロケーシヨ
ンへアクセスしてデータをハードウエア・レジス
タ25へ転送するためアドレス加算器13によつ
て発生された記憶装置アドレスが、ベース・アド
レス値としてハードウエア・レジスタ42を使用
したことを示す。上記ベース・アドレス値へ
「100」のアドレス変位値が加算された。
命令レジスタ10に示されるロード命令が実行
された時、GPR1はB2フイールド及びD2フイー
ルドによつて指定された主記憶装置ロケーシヨン
から情報をロードされねばならない。B2フイー
ルドは、GPR14をベース・アドレス情報の源
として指定する。線26上の4ビツト・フイール
ドはポインタ・レジスタ14へアクセスしてポイ
ンタ値「42」を読出す。それはハードウエア・レ
ジスタ42へアクセスして線19上にレジスタの
内容をアドレス加算器13へ与えるためである。
更に、D2フイールド値「100」がアドレス加算器
13への線21上に印加され、記憶装置アドレス
22を発生する。
された時、GPR1はB2フイールド及びD2フイー
ルドによつて指定された主記憶装置ロケーシヨン
から情報をロードされねばならない。B2フイー
ルドは、GPR14をベース・アドレス情報の源
として指定する。線26上の4ビツト・フイール
ドはポインタ・レジスタ14へアクセスしてポイ
ンタ値「42」を読出す。それはハードウエア・レ
ジスタ42へアクセスして線19上にレジスタの
内容をアドレス加算器13へ与えるためである。
更に、D2フイールド値「100」がアドレス加算器
13への線21上に印加され、記憶装置アドレス
22を発生する。
ベース・アドレスを指定するB2フイールドに
対応するポインタ値「42」は、D2フイールド値
「100」と共にそれぞれ線62及び61を介して改
名ポインタ記憶機構59へ印加され、そこにある
全てのエントリイについて連想探索が実行され
る。第4図に示される情報に従えば、一致が検出
され、ポインタ値「25」が読出される。線63上
に読出されたポインタ値25は、線64を介して
ハードウエア・レジスタのアクセス手段へ転送さ
れ、レジスタ25がアクセスされて、線30へデ
ータが読出され、このデータはCPUデータ・フ
ローへ転送される。更にポインタ値「25」は、実
行されつつあるロード命令のR1フイールドを表
わす線28上の4ビツト・フイールドに対応しか
つそれによつてアクセスされるポインタ・レジス
タ1の中に記憶される。更に、GPR1の命令表
示は、ハードウエア・レジスタ30ではなくハー
ドウエア・レジスタ25へ導かれる。レジスタ3
0にあるデータは、後の使用のために保持される
か、後の再割当てによつて置換されるまで保持さ
れる。
対応するポインタ値「42」は、D2フイールド値
「100」と共にそれぞれ線62及び61を介して改
名ポインタ記憶機構59へ印加され、そこにある
全てのエントリイについて連想探索が実行され
る。第4図に示される情報に従えば、一致が検出
され、ポインタ値「25」が読出される。線63上
に読出されたポインタ値25は、線64を介して
ハードウエア・レジスタのアクセス手段へ転送さ
れ、レジスタ25がアクセスされて、線30へデ
ータが読出され、このデータはCPUデータ・フ
ローへ転送される。更にポインタ値「25」は、実
行されつつあるロード命令のR1フイールドを表
わす線28上の4ビツト・フイールドに対応しか
つそれによつてアクセスされるポインタ・レジス
タ1の中に記憶される。更に、GPR1の命令表
示は、ハードウエア・レジスタ30ではなくハー
ドウエア・レジスタ25へ導かれる。レジスタ3
0にあるデータは、後の使用のために保持される
か、後の再割当てによつて置換されるまで保持さ
れる。
改名ポインタ記憶機構59で一致が発見される
と、ポインタ値「25」が線58を介してCPUデ
ータ・フローへ転送される。これは、CPUデー
タ・フローへ、それ以上の命令処理が進行してよ
いことを示す「ロード完了」を知らせる。線30
上をCPUデータ・フローへ送られたデータは、
アドレスされた主記憶装置ロケーシヨンから戻さ
れたデータと比較される。もしデータが同じでな
ければ、ポインタ値「25」がCPUデータ・フロ
ーによつて戻され、主記憶装置ロケーシヨンから
の適当なデータがハードウエア・レジスタ25へ
記憶される。
と、ポインタ値「25」が線58を介してCPUデ
ータ・フローへ転送される。これは、CPUデー
タ・フローへ、それ以上の命令処理が進行してよ
いことを示す「ロード完了」を知らせる。線30
上をCPUデータ・フローへ送られたデータは、
アドレスされた主記憶装置ロケーシヨンから戻さ
れたデータと比較される。もしデータが同じでな
ければ、ポインタ値「25」がCPUデータ・フロ
ーによつて戻され、主記憶装置ロケーシヨンから
の適当なデータがハードウエア・レジスタ25へ
記憶される。
命令レジスタ10に示されるロード命令の直後
に実行されるべき命令が、GPR1を指定するB2
フイールドを含むならば、ハードウエア・レジス
タ25のデータ内容は、主記憶装置からのデータ
内容を待機することなく、直ちに線30を介して
CPUデータ・フローへ転送され得ることは明ら
かである。これは、GPR1へロードされるべき
データが、後の命令解読及びアドレス発生段階で
使用されるべきベース・アドレス情報であること
を意味し、アドレス発生インターロツクの必要性
は除かれる。
に実行されるべき命令が、GPR1を指定するB2
フイールドを含むならば、ハードウエア・レジス
タ25のデータ内容は、主記憶装置からのデータ
内容を待機することなく、直ちに線30を介して
CPUデータ・フローへ転送され得ることは明ら
かである。これは、GPR1へロードされるべき
データが、後の命令解読及びアドレス発生段階で
使用されるべきベース・アドレス情報であること
を意味し、アドレス発生インターロツクの必要性
は除かれる。
第5A図及び第5B図は本発明の詳細を示す。
これらの図においても、前に説明したケーブル及
びユニツトに対しては同じ番号が付されている。
第5A図及び第5B図には新しい要素が示されて
いるが、その1つとして、ポインタ・レジスタ4
6をCPUへ接続するケーブル50の上に示され
た65がある。データ処理システムの命令解読又
は実行段階において、各種の論理出力信号又は制
御信号が発生される。これらの信号は、もしデー
タ処理システムがマイクロプログラム化制御シス
テムであれば、マイクロ命令に応答して発生さ
れ、ある種のデータ処理システムでは、ハードウ
エア・シーケンサに応答して発生される。第5A
図の65は、線66上の制御信号(非ロード命
令)が発生された時、ケーブル67の8本の個別
的な線の各々に関連したゲート回路が能動化さ
れ、ケーブル50上のデータが並列にCPUへ転
送されることを示す。
これらの図においても、前に説明したケーブル及
びユニツトに対しては同じ番号が付されている。
第5A図及び第5B図には新しい要素が示されて
いるが、その1つとして、ポインタ・レジスタ4
6をCPUへ接続するケーブル50の上に示され
た65がある。データ処理システムの命令解読又
は実行段階において、各種の論理出力信号又は制
御信号が発生される。これらの信号は、もしデー
タ処理システムがマイクロプログラム化制御シス
テムであれば、マイクロ命令に応答して発生さ
れ、ある種のデータ処理システムでは、ハードウ
エア・シーケンサに応答して発生される。第5A
図の65は、線66上の制御信号(非ロード命
令)が発生された時、ケーブル67の8本の個別
的な線の各々に関連したゲート回路が能動化さ
れ、ケーブル50上のデータが並列にCPUへ転
送されることを示す。
ポインタ・レジスタ46及びハードウエア・レ
ジスタ32は双安定記憶装置から構成されてい
る。双安定位置の各々は1つの2進ビツト位置を
表わし、出力ゲートのいくつかの組を有してよ
い。レジスタに関連したゲートの組の各々は、解
読器からの能動信号に応答して、レジスタ中のデ
ータを並列に出力バスへ転送させる。ポインタ・
レジスタ46の場合、3つの異つた出力バス6
7,68,69が設けられている。これらのバス
は、対応する解読器70,71,72から来る能
動信号に応答して、同時に出力を与えることがで
きる。レジスタのそれぞれの2進ビツト位置は、
1つ又はそれ以上のゲートの入力の組を有する。
例えば、ケーブル57上のデータは、解読器73
から来る能動信号に応答して、特定のレジスタへ
入れられてよい。
ジスタ32は双安定記憶装置から構成されてい
る。双安定位置の各々は1つの2進ビツト位置を
表わし、出力ゲートのいくつかの組を有してよ
い。レジスタに関連したゲートの組の各々は、解
読器からの能動信号に応答して、レジスタ中のデ
ータを並列に出力バスへ転送させる。ポインタ・
レジスタ46の場合、3つの異つた出力バス6
7,68,69が設けられている。これらのバス
は、対応する解読器70,71,72から来る能
動信号に応答して、同時に出力を与えることがで
きる。レジスタのそれぞれの2進ビツト位置は、
1つ又はそれ以上のゲートの入力の組を有する。
例えば、ケーブル57上のデータは、解読器73
から来る能動信号に応答して、特定のレジスタへ
入れられてよい。
D2フイールド15、B2フイールド16、X2フ
イールド17を使用するアドレス発生段階を含む
システム/370命令を例として、ポインタ・レジ
スタ46及びハードウエア・レジスタ32が並列
的かつ同時的に機能する様子を説明する。上記ア
ドレス発生段階は、ロード命令の場合のみなら
ず、主記憶装置からCPUへ処理のためにデータ
を転送する他の命令の場合にも、必要となるもの
である。
イールド17を使用するアドレス発生段階を含む
システム/370命令を例として、ポインタ・レジ
スタ46及びハードウエア・レジスタ32が並列
的かつ同時的に機能する様子を説明する。上記ア
ドレス発生段階は、ロード命令の場合のみなら
ず、主記憶装置からCPUへ処理のためにデータ
を転送する他の命令の場合にも、必要となるもの
である。
アドレス発生段階の間に、X2フイールド17
及びB2フイールド16によつて指定されたGPR
の2進コードが解読器70及び71へ印加され、
命令によつて指定されたGPRに対応するポイン
タ・レジスタ46に関連した出力ゲートを能動化
し、バス68及び69の上に同期的かつ並列的な
出力を与える。X2で指定されたGPR、及びB2で
指定されたGPRに関連した8ビツト・ポインタ
値は、それぞれバス68及び69の上を、解読器
74及び75へ転送される。解読器74及び75
へ入力として与えられた8ビツト・ポインタが解
読されると、アクセスされたハードウエア・レジ
スタ32の適当な出力ゲートが選択され、それに
よつてバス19及び20上に、ベース・アドレス
及びアドレス・インデツクスの記憶された値がア
ドレス加算器13へ与えられる。同時に、アドレ
ス変位値D2が線21上をアドレス加算器13へ
印加され、バス22上に記憶アドレスが発生す
る。この記憶アドレスは主記憶装置へ与えられ、
アクセスが開始される。
及びB2フイールド16によつて指定されたGPR
の2進コードが解読器70及び71へ印加され、
命令によつて指定されたGPRに対応するポイン
タ・レジスタ46に関連した出力ゲートを能動化
し、バス68及び69の上に同期的かつ並列的な
出力を与える。X2で指定されたGPR、及びB2で
指定されたGPRに関連した8ビツト・ポインタ
値は、それぞれバス68及び69の上を、解読器
74及び75へ転送される。解読器74及び75
へ入力として与えられた8ビツト・ポインタが解
読されると、アクセスされたハードウエア・レジ
スタ32の適当な出力ゲートが選択され、それに
よつてバス19及び20上に、ベース・アドレス
及びアドレス・インデツクスの記憶された値がア
ドレス加算器13へ与えられる。同時に、アドレ
ス変位値D2が線21上をアドレス加算器13へ
印加され、バス22上に記憶アドレスが発生す
る。この記憶アドレスは主記憶装置へ与えられ、
アクセスが開始される。
前に指摘したように、或る種のシステム/370
命令は前述したアドレス発生段階を必要とする
が、主記憶装置からCPUへ転送されたデータを
CPU中の他のデータと結合される。結合された
データは、R1フイールド18によつて指定され
たGPRに記憶されねばならない。信号線66は
「非ロード命令」を表わし、ゲート65は、R1フ
イールド18によつて指定されたGPRと関連し
たポインタ値を、ケーブル50を介してCPUへ
転送するために能動化される。命令の処理が完了
し、処理されたデータがR1フイールド18によ
つて指定されたGPRへ記憶されるべき時、ケー
ブル50上をCPUへ転送されたポインタは、ケ
ーブル51を介して解読器76へ戻される(第5
A図)。CPUからケーブル49を介して受取られ
た処理済みのデータを記憶するため、適当なハー
ドウエア・レジスタ32がアクセスされる。
命令は前述したアドレス発生段階を必要とする
が、主記憶装置からCPUへ転送されたデータを
CPU中の他のデータと結合される。結合された
データは、R1フイールド18によつて指定され
たGPRに記憶されねばならない。信号線66は
「非ロード命令」を表わし、ゲート65は、R1フ
イールド18によつて指定されたGPRと関連し
たポインタ値を、ケーブル50を介してCPUへ
転送するために能動化される。命令の処理が完了
し、処理されたデータがR1フイールド18によ
つて指定されたGPRへ記憶されるべき時、ケー
ブル50上をCPUへ転送されたポインタは、ケ
ーブル51を介して解読器76へ戻される(第5
A図)。CPUからケーブル49を介して受取られ
た処理済みのデータを記憶するため、適当なハー
ドウエア・レジスタ32がアクセスされる。
或る種のシステム/370命令は、R1フイールド
18によつて指定されたGPRと、フイールドR
2によつて指定されたGPRとに記憶されたデー
タの処理を必要とする。命令中のR2フイールド
の位置は、アドレス発生段階が必要とされる時、
X2フイールドの位置と一致する。従つて、解読
器70はR2フイールドのGPRを示す2進コード
を受取つて関連したポインタ値をケーブル68上
に読出させる。このポインタ値は解読器74へ印
加され、適当なハードウエア・レジスタ32がバ
ス30へ読出され、読出された内容がCPUへ与
えられる。データ処理の結果は、R1フイールド
18によつて指定されたGPRへ戻されねばなら
ない。関連したポインタ値は前にケーブル50上
をCPUへ転送されており、その値はケーブル5
1を介して、ケーブル49上の処理済みデータと
ともに戻される。ポインタ・レジスタ46の出力
にあるケーブル68は、任意の命令について信号
線77によつてゲートされる。即ち、その命令が
アドレス発生型の命令であろうと、R2フイール
ドによつて指定されたGPRを含む命令であろう
と、ケーブル68上の情報は解読器74へ転送さ
れ、適当なハードウエア・レジスタがケーブル3
0又はケーブル20へ読出される。
18によつて指定されたGPRと、フイールドR
2によつて指定されたGPRとに記憶されたデー
タの処理を必要とする。命令中のR2フイールド
の位置は、アドレス発生段階が必要とされる時、
X2フイールドの位置と一致する。従つて、解読
器70はR2フイールドのGPRを示す2進コード
を受取つて関連したポインタ値をケーブル68上
に読出させる。このポインタ値は解読器74へ印
加され、適当なハードウエア・レジスタ32がバ
ス30へ読出され、読出された内容がCPUへ与
えられる。データ処理の結果は、R1フイールド
18によつて指定されたGPRへ戻されねばなら
ない。関連したポインタ値は前にケーブル50上
をCPUへ転送されており、その値はケーブル5
1を介して、ケーブル49上の処理済みデータと
ともに戻される。ポインタ・レジスタ46の出力
にあるケーブル68は、任意の命令について信号
線77によつてゲートされる。即ち、その命令が
アドレス発生型の命令であろうと、R2フイール
ドによつて指定されたGPRを含む命令であろう
と、ケーブル68上の情報は解読器74へ転送さ
れ、適当なハードウエア・レジスタがケーブル3
0又はケーブル20へ読出される。
これまで説明したように、命令解読及び/又は
アドレス発生段階の間、また命令実行が完了した
時に処理されたデータを記憶するため、第5A図
に示した機能ユニツト及び相互接続線の殆んど全
てが使用される。第5B図は、命令解読段階で、
ロード命令が命令レジスタ中に存在していること
が検出された時に使用されるユニツト及びケーブ
ルを示す。ロード命令の存在は線78によつて示
される。B2フイールド16によつて指定された
GPRからベース・アドレスを取出すようなアド
レス発生段階が必要とされる時、ポインタ・レジ
スタ46から得られたB2ポインタがレジスタ7
9に記憶される。線78上に「ロード命令」信号
が発生したことに応答して、ゲート80及び81
が働き、B2ポインタ及びD2フイールド15が改
名ポインタ記憶機構59(第5B図)へ転送され
る。
アドレス発生段階の間、また命令実行が完了した
時に処理されたデータを記憶するため、第5A図
に示した機能ユニツト及び相互接続線の殆んど全
てが使用される。第5B図は、命令解読段階で、
ロード命令が命令レジスタ中に存在していること
が検出された時に使用されるユニツト及びケーブ
ルを示す。ロード命令の存在は線78によつて示
される。B2フイールド16によつて指定された
GPRからベース・アドレスを取出すようなアド
レス発生段階が必要とされる時、ポインタ・レジ
スタ46から得られたB2ポインタがレジスタ7
9に記憶される。線78上に「ロード命令」信号
が発生したことに応答して、ゲート80及び81
が働き、B2ポインタ及びD2フイールド15が改
名ポインタ記憶機構59(第5B図)へ転送され
る。
「ロード命令」信号78を検出したことに応答
して、本発明の目的を達成する第1のステツプ
は、改名ポインタ記憶機構59を使用してエント
リイの連想探索を実行することである。これはゲ
ート82及び83を付勢することによつて開始さ
れる。
して、本発明の目的を達成する第1のステツプ
は、改名ポインタ記憶機構59を使用してエント
リイの連想探索を実行することである。これはゲ
ート82及び83を付勢することによつて開始さ
れる。
改名ポインタ記憶機構59にある連想制御機構
84の詳細は、前記の参照文献に見出される。
連想制御機構84は、ゲート82及び83によつ
て起動された探索結果を分析して、B2ポインタ
及びD2フイールドが現在改名ポインタ記憶機構
59の中に記憶されている256個のエントリイの
いずれかと一致するか否かを決定するように働
く。この比較動作の結果は、一致信号(線85)
又は不一致信号(線86)を与える。不一致信号
は、線87及び88上に、改名ポインタ記憶機構
59において新しいエントリイを受取るべき25
6個のロケーシヨンの1つを指定する信号を発生
する。新しいエントリイの記憶は線88によつて
実効化される。線88はゲート89,90,91
を能動化して、ケーブル62上の適当なB2ポイ
ンタ、ケーブル61上のD2フイールド、及びケ
ーブル60上のポインタを含む新しいエントリイ
を作らせる。ケーブル60上のポインタはR1フ
イールドによつて指定されたGPRと関連させら
れるべきものである。
84の詳細は、前記の参照文献に見出される。
連想制御機構84は、ゲート82及び83によつ
て起動された探索結果を分析して、B2ポインタ
及びD2フイールドが現在改名ポインタ記憶機構
59の中に記憶されている256個のエントリイの
いずれかと一致するか否かを決定するように働
く。この比較動作の結果は、一致信号(線85)
又は不一致信号(線86)を与える。不一致信号
は、線87及び88上に、改名ポインタ記憶機構
59において新しいエントリイを受取るべき25
6個のロケーシヨンの1つを指定する信号を発生
する。新しいエントリイの記憶は線88によつて
実効化される。線88はゲート89,90,91
を能動化して、ケーブル62上の適当なB2ポイ
ンタ、ケーブル61上のD2フイールド、及びケ
ーブル60上のポインタを含む新しいエントリイ
を作らせる。ケーブル60上のポインタはR1フ
イールドによつて指定されたGPRと関連させら
れるべきものである。
改名ポインタ記憶機構59の中で一致が発見さ
れたものと仮定すると、一致信号(線85)はゲ
ート92で働いて、R1ポインタがケーブル63
上を改名ポインタ・レジスタ93へ読出される。
これは、主記憶装置から要求されているデータが
現在ハードウエア・レジスタ32の1つに記憶さ
れていることを示す。改名ポインタ・レジスタ9
3に含まれるポインタ値はゲート94を能動化す
ることによつて、ポインタ・レジスタ46へ至る
ケーブル57へ転送される。ケーブル57上のポ
インタ値を受取るべきポインタ・レジスタ46
は、R1フイールド18から入力を受取る解読器
73によつて指定される。
れたものと仮定すると、一致信号(線85)はゲ
ート92で働いて、R1ポインタがケーブル63
上を改名ポインタ・レジスタ93へ読出される。
これは、主記憶装置から要求されているデータが
現在ハードウエア・レジスタ32の1つに記憶さ
れていることを示す。改名ポインタ・レジスタ9
3に含まれるポインタ値はゲート94を能動化す
ることによつて、ポインタ・レジスタ46へ至る
ケーブル57へ転送される。ケーブル57上のポ
インタ値を受取るべきポインタ・レジスタ46
は、R1フイールド18から入力を受取る解読器
73によつて指定される。
更に、線85上の一致信号はゲート95を能動
化する。それは、ポインタ値を解読器96へ転送
するためである。解読器96は指定されたハード
ウエア・レジスタ32へアクセスさせて、CPU
へ至るケーブル30へデータを転送させる。この
データは前述の有効化手順で使用される。更に、
ケーブル57上のポインタ値は、有効化手順の1
部としてケーブル58によつてCPUへ転送され
る。主記憶装置から戻されたデータがケーブル3
0を転送されたデータと同じでないことが決定さ
れると、ポインタ値は解読器76へ至るケーブル
51へ戻される。それはハードウエア・レジスタ
32へアクセスして、そこにケーブル49上のデ
ータを記憶するためである。
化する。それは、ポインタ値を解読器96へ転送
するためである。解読器96は指定されたハード
ウエア・レジスタ32へアクセスさせて、CPU
へ至るケーブル30へデータを転送させる。この
データは前述の有効化手順で使用される。更に、
ケーブル57上のポインタ値は、有効化手順の1
部としてケーブル58によつてCPUへ転送され
る。主記憶装置から戻されたデータがケーブル3
0を転送されたデータと同じでないことが決定さ
れると、ポインタ値は解読器76へ至るケーブル
51へ戻される。それはハードウエア・レジスタ
32へアクセスして、そこにケーブル49上のデ
ータを記憶するためである。
改名ポインタ記憶機構59の中にエントリイが
発見されない時(線86上の不一致信号によつて
示される)、R1フイールド18によつて指定され
たGPRはポインタ値を割当てられねばならな
い。これはゲート97を付勢することによつて実
効化される。ゲート97はケーブル28上のR1
フイールドを解読器98へ転送させ、ポインタ割
当ユニツトをして指定されたGPRと関連ずけ
る。特定のGPRへ独特のポインタを割当てる多
くの方法が知られている。第5B図に示される方
法では、GPRと各々が関連させられた多数のテ
ーブルを使用する。GPR0と関連したテーブル
について詳細に説明する。ポインタ割当制御機構
99は、解読器98から線100を介して付勢さ
れたことに応答して、8ビツトのポインタ値を含
むテーブル・ロケーシヨンを読出させる。各
GPRのために、モジユロ16を有するポインタ
値が設けられる。GPR0のための最初のエント
リイは、オール0の2進値を含む。GPR0のた
めに第2のポインタを与える第2のエントリイ
は、「16」のコード値を有する。第3のエントリ
イは「32」のコード値であつてよい。同様に、
GPR1に関連したテーブルは、「1」の値を含む
第1のポインタを有し、また「17」の値を含む第
2のポインタを有する。テーブルの各々と関連し
たポインタ割当制御機構99が、線100を介し
て解読器98により付勢されると、上記機構99
はバス55及び56へポインタ値を読出すように
働く。このポインタ値は改名ポインタ・レジスタ
93へ入れられる。次に、もし必要ならば、ポイ
ンタ割当制御機構99は、次のテーブル・エント
リイへアクセスするため歩進する。
発見されない時(線86上の不一致信号によつて
示される)、R1フイールド18によつて指定され
たGPRはポインタ値を割当てられねばならな
い。これはゲート97を付勢することによつて実
効化される。ゲート97はケーブル28上のR1
フイールドを解読器98へ転送させ、ポインタ割
当ユニツトをして指定されたGPRと関連ずけ
る。特定のGPRへ独特のポインタを割当てる多
くの方法が知られている。第5B図に示される方
法では、GPRと各々が関連させられた多数のテ
ーブルを使用する。GPR0と関連したテーブル
について詳細に説明する。ポインタ割当制御機構
99は、解読器98から線100を介して付勢さ
れたことに応答して、8ビツトのポインタ値を含
むテーブル・ロケーシヨンを読出させる。各
GPRのために、モジユロ16を有するポインタ
値が設けられる。GPR0のための最初のエント
リイは、オール0の2進値を含む。GPR0のた
めに第2のポインタを与える第2のエントリイ
は、「16」のコード値を有する。第3のエントリ
イは「32」のコード値であつてよい。同様に、
GPR1に関連したテーブルは、「1」の値を含む
第1のポインタを有し、また「17」の値を含む第
2のポインタを有する。テーブルの各々と関連し
たポインタ割当制御機構99が、線100を介し
て解読器98により付勢されると、上記機構99
はバス55及び56へポインタ値を読出すように
働く。このポインタ値は改名ポインタ・レジスタ
93へ入れられる。次に、もし必要ならば、ポイ
ンタ割当制御機構99は、次のテーブル・エント
リイへアクセスするため歩進する。
今や新しいエントリイが線88によつて改名ポ
インタ記憶機構59で作られる。即ち、線88は
ゲート89,90,91を能動化して、ケーブル
62上のB2ポインタ、ケーブル61上のD2フイ
ールド、改名ポインタ・レジスタ93の中へ新し
く割当てられたケーブル60上のポインタを記憶
させる。
インタ記憶機構59で作られる。即ち、線88は
ゲート89,90,91を能動化して、ケーブル
62上のB2ポインタ、ケーブル61上のD2フイ
ールド、改名ポインタ・レジスタ93の中へ新し
く割当てられたケーブル60上のポインタを記憶
させる。
線86上に不一致信号が存在する結果、R1フ
イールド18によつて指定されたGPRに対して
新しく割当てられたポインタ値が、ポインタ・レ
ジスタ46へ転送されねばならない。不一致信号
はゲート101で働き、新しく割当てられたポイ
ンタ値を改名ポインタ・レジスタ93からケーブ
ル57を介してポインタ・レジスタ46の入力へ
転送させる。そのポインタ値は、解読器72の出
力に従つて、適当なポインタ・レジスタ46へ入
れられる。
イールド18によつて指定されたGPRに対して
新しく割当てられたポインタ値が、ポインタ・レ
ジスタ46へ転送されねばならない。不一致信号
はゲート101で働き、新しく割当てられたポイ
ンタ値を改名ポインタ・レジスタ93からケーブ
ル57を介してポインタ・レジスタ46の入力へ
転送させる。そのポインタ値は、解読器72の出
力に従つて、適当なポインタ・レジスタ46へ入
れられる。
更に、改名ポインタ・レジスタ93にある新し
く割当てられたポインタ値は、ケーブル58を介
してCPUへ転送される。不一致信号は、主記憶
装置がケーブル22を介して与えられたアドレス
でアクセスされねばならないこと、またデータが
記憶のためにCPUへ転送されねばならないこと
を指示する。データを受取るためハードウエア・
レジスタ32を指示するポインタ値は、データが
主記憶装置から受取られCPUデータ・フローに
よつてハードウエア・レジスタ32へ至るケーブ
ル49上へ与えられる時、ケーブル51を介して
解読器76へ戻される。
く割当てられたポインタ値は、ケーブル58を介
してCPUへ転送される。不一致信号は、主記憶
装置がケーブル22を介して与えられたアドレス
でアクセスされねばならないこと、またデータが
記憶のためにCPUへ転送されねばならないこと
を指示する。データを受取るためハードウエア・
レジスタ32を指示するポインタ値は、データが
主記憶装置から受取られCPUデータ・フローに
よつてハードウエア・レジスタ32へ至るケーブ
ル49上へ与えられる時、ケーブル51を介して
解読器76へ戻される。
これまで説明した本発明の実施例によつて分る
ように、現存する命令フオーマツトの能力に従つ
て使用されることができる以上の多数のハードウ
エア・レジスタを、システム/370データ処理シ
ステムのCPUに設けることが可能である。現存
するシステム/370命令フオーマツトは、命令に
よるアドレス可能性として、16個のGPRを指定
できるに過ぎないが、本発明はその数をCPUに
おける256個のハードウエア・レジスタへ拡大
し、即時のかつ迅速なアクセスを可能ならしめ
る。或る場合には、アドレス発生インターロツク
を除くことによつて、データ処理の効率が改善さ
れる。これは、前段階の処理によつて得られたデ
ータを高速ハードウエア・レジスタに連続的に記
憶させることによつて達成される。過去におい
て、上記のデータは破壊されてしまつていた。
ように、現存する命令フオーマツトの能力に従つ
て使用されることができる以上の多数のハードウ
エア・レジスタを、システム/370データ処理シ
ステムのCPUに設けることが可能である。現存
するシステム/370命令フオーマツトは、命令に
よるアドレス可能性として、16個のGPRを指定
できるに過ぎないが、本発明はその数をCPUに
おける256個のハードウエア・レジスタへ拡大
し、即時のかつ迅速なアクセスを可能ならしめ
る。或る場合には、アドレス発生インターロツク
を除くことによつて、データ処理の効率が改善さ
れる。これは、前段階の処理によつて得られたデ
ータを高速ハードウエア・レジスタに連続的に記
憶させることによつて達成される。過去におい
て、上記のデータは破壊されてしまつていた。
第1図はCPUの命令レジスタにあるロード命
令の2進フイールド(これによつて汎用レジスタ
が指定される)と、汎用レジスタを複数の拡張ハ
ードウエア・レジスタの1つへ改名する本発明の
装置の入力及び出力との間の関連を示す論理ブロ
ツク図、第2図はCPUに設けられた複数のハー
ドウエア・レジスタに対する汎用レジスタの関係
及びアドレス可能な主記憶装置ロケーシヨンを示
す図、第3図は相互接続通路と共に本発明の主た
るユニツトの全てを示すブロツク図、第4図は主
記憶装置から前にデータをロードされた複数のハ
ードウエア・レジスタの1つを指定するためどの
ようにして汎用レジスタの改名がなされるかを相
互接続線とともに示した論理ブロツク図、第5図
は第5A図と第5B図の配列関係を示す図、第5
A図及び第5B図は本発明の全ての機能ユニツト
を相互接続通路と共に詳細に示した論理ブロツク
図である。 10……命令レジスタ、11……汎用レジスタ
(GPR)、12……GPR改名兼拡張制御機構、1
3……アドレス加算器、31……主記憶装置、3
2……ハードウエア・レジスタ、46……ポイン
タ・レジスタ、53……ポインタ割当ユニツト、
59……改名ポインタ記憶機構、93……改名ポ
インタ・レジスタ、99……ポインタ割当制御機
構。
令の2進フイールド(これによつて汎用レジスタ
が指定される)と、汎用レジスタを複数の拡張ハ
ードウエア・レジスタの1つへ改名する本発明の
装置の入力及び出力との間の関連を示す論理ブロ
ツク図、第2図はCPUに設けられた複数のハー
ドウエア・レジスタに対する汎用レジスタの関係
及びアドレス可能な主記憶装置ロケーシヨンを示
す図、第3図は相互接続通路と共に本発明の主た
るユニツトの全てを示すブロツク図、第4図は主
記憶装置から前にデータをロードされた複数のハ
ードウエア・レジスタの1つを指定するためどの
ようにして汎用レジスタの改名がなされるかを相
互接続線とともに示した論理ブロツク図、第5図
は第5A図と第5B図の配列関係を示す図、第5
A図及び第5B図は本発明の全ての機能ユニツト
を相互接続通路と共に詳細に示した論理ブロツク
図である。 10……命令レジスタ、11……汎用レジスタ
(GPR)、12……GPR改名兼拡張制御機構、1
3……アドレス加算器、31……主記憶装置、3
2……ハードウエア・レジスタ、46……ポイン
タ・レジスタ、53……ポインタ割当ユニツト、
59……改名ポインタ記憶機構、93……改名ポ
インタ・レジスタ、99……ポインタ割当制御機
構。
Claims (1)
- 【特許請求の範囲】 1 データ及び命令を記憶した主記憶装置と、上
記命令を実行するため該命令を受取りかつそれを
記憶する命令レジスタを含む中央プロセツサと、
上記命令によつて直接に指定される第1群のレジ
スタと、上記主記憶装置の記憶位置を指定する第
1の2進フイールド及び上記第1群のレジスタを
指定する第2の2進フイールド及び該第2の2進
フイールドによつて指定されたレジスタへデータ
転送を起させる動作フイールドを含むロード命令
を上記命令レジスタへ設定する手段と、上記中央
プロセツサによつて発生された上記主記憶装置の
記憶位置アドレスに応答して上記主記憶装置から
データ及び命令をフエツチしてそれらを上記中央
プロセツサへ転送する第1のアクセス手段とを有
するデータ処理システムにおいて、 上記中央プロセツサの中のデータを記憶するた
め該中央プロセツサと関連させて設けられ、かつ
上記第1群のレジスタよりも数の多い第2群のハ
ードウエア・レジスタと、 上記第2の2進フイールドの値の各々を上記ハ
ードウエア・レジスタの1つに動的に対応付け、
上記ハードウエア・レジスタを書込み又はそこか
らデータを読み出す第2のアクセス手段と、 すでに実行された上記ロード命令の上記第1の
2進フイールドの値、およびこのロード命令に関
連してデータが転送された上記ハードウエア・レ
ジスタの識別子を保持する記憶手段と、 現在実行しようとしている上記ロード命令の上
記第1の2進フイールドが上記記憶手段に保持さ
れているかどうかを判別し、保持されているとき
には、その第1の2進フイールドの値とこれに対
応して保持されている上記ハードウエア・レジス
タの識別子とが上記第2のアクセス手段において
対応付けられるように上記第2のアクセス手段に
変更を加え、かつ当該ロード命令の終了させるア
クセス変更ロード命令終了手段とを有することを
特徴とするデータ処理システム。
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US24927081A | 1981-03-30 | 1981-03-30 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS57166649A JPS57166649A (en) | 1982-10-14 |
| JPS626261B2 true JPS626261B2 (ja) | 1987-02-09 |
Family
ID=22942744
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP107682A Granted JPS57166649A (en) | 1981-03-30 | 1982-01-08 | Data processing system |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP0061586B1 (ja) |
| JP (1) | JPS57166649A (ja) |
| DE (1) | DE3261575D1 (ja) |
Families Citing this family (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0619710B2 (ja) * | 1983-12-20 | 1994-03-16 | 日本電気株式会社 | レジスタ制御方式 |
| JPH081601B2 (ja) * | 1984-12-07 | 1996-01-10 | 株式会社日立製作所 | 情報処理装置 |
| JPS61241870A (ja) * | 1985-04-19 | 1986-10-28 | Hitachi Ltd | ベクトルプロセツサ |
| JPH0816455B2 (ja) * | 1986-09-02 | 1996-02-21 | 三井造船株式会社 | ガスタ−ビン用燃焼器の冷却方法 |
| EP0348030B1 (en) * | 1988-06-23 | 1996-04-10 | International Business Machines Corporation | Computing sequence result availability |
| GB9112754D0 (en) * | 1991-06-13 | 1991-07-31 | Int Computers Ltd | Data processing apparatus |
| US5438669A (en) | 1991-11-20 | 1995-08-01 | Hitachi, Ltd. | Data processor with improved loop handling utilizing improved register allocation |
| JP2725546B2 (ja) * | 1992-12-07 | 1998-03-11 | 株式会社日立製作所 | デ−タ処理装置 |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS515934A (ja) * | 1974-07-03 | 1976-01-19 | Hitachi Ltd | |
| JPS5440538A (en) * | 1977-09-06 | 1979-03-30 | Mitsubishi Electric Corp | Multiple data processor |
| US4236205A (en) * | 1978-10-23 | 1980-11-25 | International Business Machines Corporation | Access-time reduction control circuit and process for digital storage devices |
| JPS5569855A (en) * | 1978-11-20 | 1980-05-26 | Panafacom Ltd | Data processing system |
-
1982
- 1982-01-08 JP JP107682A patent/JPS57166649A/ja active Granted
- 1982-02-25 DE DE8282101422T patent/DE3261575D1/de not_active Expired
- 1982-02-25 EP EP19820101422 patent/EP0061586B1/en not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| JPS57166649A (en) | 1982-10-14 |
| EP0061586B1 (en) | 1984-12-19 |
| EP0061586A2 (en) | 1982-10-06 |
| DE3261575D1 (en) | 1985-01-31 |
| EP0061586A3 (en) | 1983-01-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4574349A (en) | Apparatus for addressing a larger number of instruction addressable central processor registers than can be identified by a program instruction | |
| KR0122529B1 (ko) | 슈퍼스칼라 프로세서 시스템에서 복수의 명령어를 단일 사이클 동안 디스패치하기 위한 방법 및 장치 | |
| 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 | |
| US4524416A (en) | Stack mechanism with the ability to dynamically alter the size of a stack in a data processing system | |
| US5991757A (en) | Method and system for searching an array for an array value | |
| US4468736A (en) | Mechanism for creating dependency free code for multiple processing elements | |
| US4395758A (en) | Accelerator processor for a data processing system | |
| US4466061A (en) | Concurrent processing elements for using dependency free code | |
| US4903196A (en) | Method and apparatus for guaranteeing the logical integrity of data in the general purpose registers of a complex multi-execution unit uniprocessor | |
| US4734852A (en) | Mechanism for performing data references to storage in parallel with instruction execution on a reduced instruction-set processor | |
| US5404476A (en) | Multiprocessing system having a single translation lookaside buffer with reduced processor overhead | |
| KR0124812B1 (ko) | 독립적으로 액세스되는 중간 기억 장치를 이용하는 슈퍼스칼라 프로세서 시스템의 명령어 디스패치를 향상시키기 위한 시스템 및 그 방법 | |
| US5491829A (en) | Method and system for indexing the assignment of intermediate storage buffers in a superscalar processor system | |
| WO1990014629A2 (en) | Parallel multithreaded data processing system | |
| US5805930A (en) | System for FIFO informing the availability of stages to store commands which include data and virtual address sent directly from application programs | |
| US3470540A (en) | Multiprocessing computer system with special instruction sequencing | |
| JPH0760380B2 (ja) | プログラム呼び出し装置 | |
| US5339417A (en) | Computer system with two levels of guests | |
| US4876646A (en) | Data processor having multilevel address translation tables | |
| US5226132A (en) | Multiple virtual addressing using/comparing translation pairs of addresses comprising a space address and an origin address (sto) while using space registers as storage devices for a data processing system | |
| JPS626261B2 (ja) | ||
| US3731283A (en) | Digital computer incorporating base relative addressing of instructions | |
| US4456958A (en) | System and method of renaming data items for dependency free code | |
| JPH0552539B2 (ja) | ||
| JPS59112479A (ja) | キヤツシユメモリの高速アクセス方式 |