JPH0412860B2 - - Google Patents
Info
- Publication number
- JPH0412860B2 JPH0412860B2 JP60174922A JP17492285A JPH0412860B2 JP H0412860 B2 JPH0412860 B2 JP H0412860B2 JP 60174922 A JP60174922 A JP 60174922A JP 17492285 A JP17492285 A JP 17492285A JP H0412860 B2 JPH0412860 B2 JP H0412860B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- ring level
- branch
- ring
- cycle
- 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 - Lifetime
Links
Landscapes
- Advance Control (AREA)
- Storage Device Security (AREA)
Description
【発明の詳細な説明】
〔概要〕
論理空間単位にアクセスの保護レベルを規定す
るリングレベルについて、読み出した命令と共
に、その命令が属するリングレベルを、命令バツ
フアレジスタ上に記憶し、同時にパイプラインに
流すことにより、連続する分岐命令に関して分岐
先の先取りを可能とし、分岐命令の前の命令のオ
ペランドアクセスの待ち時間および演算時間に並
行して分岐先命令の先取りを行うことによる命令
実行の高速化を可能にしている。
るリングレベルについて、読み出した命令と共
に、その命令が属するリングレベルを、命令バツ
フアレジスタ上に記憶し、同時にパイプラインに
流すことにより、連続する分岐命令に関して分岐
先の先取りを可能とし、分岐命令の前の命令のオ
ペランドアクセスの待ち時間および演算時間に並
行して分岐先命令の先取りを行うことによる命令
実行の高速化を可能にしている。
本発明はリングレベル制御方式、特に、いわゆ
るリングレベルによつて、論理空間単位にアクセ
ス保護を行う装置であつて、パイプライン処理に
よつて命令を実行する情報処理装置におけるリン
グレベル制御方式に関するものである。
るリングレベルによつて、論理空間単位にアクセ
ス保護を行う装置であつて、パイプライン処理に
よつて命令を実行する情報処理装置におけるリン
グレベル制御方式に関するものである。
例えば、情報処理装置において実行される応用
処理プログラムが、命令の実行によつて、オペレ
ーテイング・システム等を破壊したりすることの
ないように、主記憶装置のデータを保護する方式
として、いわゆるリングレベルによるアクセス保
護の方式が用いられている。リングレベルによる
アクセス保護では、例えば論理空間のセグメント
に対応して、3ビツトにより、保護レベルが規定
され、実行リングレベルが、参照リングレベルよ
り、大きい数値であるときに、命令読み出しや、
データ書き込みが禁止されるようになつている。
実行リングレベルは、プログラム状態語(PSW)
に格納され、参照される側のリングレベルは、セ
グメント・テーブルの各エントリ毎に予め規定さ
れる。
処理プログラムが、命令の実行によつて、オペレ
ーテイング・システム等を破壊したりすることの
ないように、主記憶装置のデータを保護する方式
として、いわゆるリングレベルによるアクセス保
護の方式が用いられている。リングレベルによる
アクセス保護では、例えば論理空間のセグメント
に対応して、3ビツトにより、保護レベルが規定
され、実行リングレベルが、参照リングレベルよ
り、大きい数値であるときに、命令読み出しや、
データ書き込みが禁止されるようになつている。
実行リングレベルは、プログラム状態語(PSW)
に格納され、参照される側のリングレベルは、セ
グメント・テーブルの各エントリ毎に予め規定さ
れる。
例えば、あるセグメントから他のセグメントへ
分岐するような場合には、命令読み出しに関し
て、現在、PSWに設定されているリングレベル
が、分岐先への制御移行が許されているリングレ
ベルであるか否かをチエツクし、チエツクに合格
しない場合に、プログラム割込みが生じるように
なつている。
分岐するような場合には、命令読み出しに関し
て、現在、PSWに設定されているリングレベル
が、分岐先への制御移行が許されているリングレ
ベルであるか否かをチエツクし、チエツクに合格
しない場合に、プログラム割込みが生じるように
なつている。
第3図は従来方式の問題点を説明するための図
である。
である。
命令1と、それに続く分岐命令B1と、さら
に後続する分岐命令B2とが、パイプライン処理
によつて処理されているとする。各命令は、命令
の解読を行うDサイクル、アドレス計算を行うA
サイクルと、メモリアクセスを行うTサイクルお
よびBサイクルと、演算を同うEサイクルと、演
算結果の書き込みを行うWサイクルとによつて処
理される。なお、これらのサイクルに先立つて、
命令をフエツチするサイクル、Tサイクル、B
サイクルおよび命令を命令バツフアにセツトする
Rサイクルがある。
に後続する分岐命令B2とが、パイプライン処理
によつて処理されているとする。各命令は、命令
の解読を行うDサイクル、アドレス計算を行うA
サイクルと、メモリアクセスを行うTサイクルお
よびBサイクルと、演算を同うEサイクルと、演
算結果の書き込みを行うWサイクルとによつて処
理される。なお、これらのサイクルに先立つて、
命令をフエツチするサイクル、Tサイクル、B
サイクルおよび命令を命令バツフアにセツトする
Rサイクルがある。
命令が分岐命令である場合等に、分岐条件が満
足し、分岐が成功したときにおける分岐命令の先
取り用命令バツフアが用意される。しかし、従来
方式では、命令読み出しと共に、その命令が属す
るリングレベルを記憶するバツフアが用意されて
いない。そのため、リングレベルの記憶に関する
ハードウエア量は少量で済む利点はあるが、命令
の先取りが制限され、命令実行性能が低下すると
いう問題があつた。
足し、分岐が成功したときにおける分岐命令の先
取り用命令バツフアが用意される。しかし、従来
方式では、命令読み出しと共に、その命令が属す
るリングレベルを記憶するバツフアが用意されて
いない。そのため、リングレベルの記憶に関する
ハードウエア量は少量で済む利点はあるが、命令
の先取りが制限され、命令実行性能が低下すると
いう問題があつた。
即ち、例えば第3図に示すように、命令1の
Eサイクルに数サイクルの繰り返しが必要である
とする。この場合、分岐命令B1は、命令I1の
実行終了(EU END)が通知されるまで、Bサ
イクルで待つ。分岐命令B1のDサイクルの後で
は、例えば分岐が成功した場合における命令の先
読みが行われるが、このとき、その命令が属する
リングレベルも読み出され、リングレベル用に1
つしかないバツフアにセツトされる。
Eサイクルに数サイクルの繰り返しが必要である
とする。この場合、分岐命令B1は、命令I1の
実行終了(EU END)が通知されるまで、Bサ
イクルで待つ。分岐命令B1のDサイクルの後で
は、例えば分岐が成功した場合における命令の先
読みが行われるが、このとき、その命令が属する
リングレベルも読み出され、リングレベル用に1
つしかないバツフアにセツトされる。
このリングレベル用のバツフアは、分岐命令B
1の結果が確定されるまで、解放されない。従つ
て、分岐命令B1の後に、分岐命令B2があり、
分岐が連続すると、後続する分岐命令B2に関す
る分岐先の命令については、リングレベルのバツ
フアがないため、先読みのアクセスができないこ
ととなり、待ち時間が生じることとなる。
1の結果が確定されるまで、解放されない。従つ
て、分岐命令B1の後に、分岐命令B2があり、
分岐が連続すると、後続する分岐命令B2に関す
る分岐先の命令については、リングレベルのバツ
フアがないため、先読みのアクセスができないこ
ととなり、待ち時間が生じることとなる。
この待ち時間の長さは、オペランドアクセスの
時間および演算の待ち時間の長さに比例して増大
する。さらに、いわゆるキヤツシユメモリである
ローカル・バツフア・ストレジ(LBS)に先読
み対象の命令がない場合には、アクセス時間が増
大することとなる。
時間および演算の待ち時間の長さに比例して増大
する。さらに、いわゆるキヤツシユメモリである
ローカル・バツフア・ストレジ(LBS)に先読
み対象の命令がない場合には、アクセス時間が増
大することとなる。
本発明は上記問題点の解決を図り、リングレベ
ル情報をパイプライン化して処理し、分岐命令の
先取り効果を高める手段を提供する。
ル情報をパイプライン化して処理し、分岐命令の
先取り効果を高める手段を提供する。
第1図は本発明の基本構成図を示す。
第1図において、10A,10B,10Cはフ
エツチした命令が格納される命令作業レジスタ
(IWR)、12は先読みした命令が退避される命
令バツフアレジスタ、13は各サイクルに対応し
て命令およびリングレベルのタグを持つパイプラ
イン、14ないし18はセレクタ、20ないし2
4はOPコードやオペランド情報を保持するタグ、
30ないし34は各サイクルに対応してリングレ
ベル情報を保持するタグ、RLはリングレベルを
表す。
エツチした命令が格納される命令作業レジスタ
(IWR)、12は先読みした命令が退避される命
令バツフアレジスタ、13は各サイクルに対応し
て命令およびリングレベルのタグを持つパイプラ
イン、14ないし18はセレクタ、20ないし2
4はOPコードやオペランド情報を保持するタグ、
30ないし34は各サイクルに対応してリングレ
ベル情報を保持するタグ、RLはリングレベルを
表す。
ローカル・バツフア・ストレジLBSから読み
出された命令は、リングレベルRLと共に、命令
作業レジスタ10A〜10Cの空いている1つに
セツトされる。この命令およびリングレベルRL
は、セレクタ15を経由して、パイプライン13
のタグ20〜24およびタグ30〜34に順次送
られ、命令の処理およびリングレベルRLのチエ
ツクに用いられる。
出された命令は、リングレベルRLと共に、命令
作業レジスタ10A〜10Cの空いている1つに
セツトされる。この命令およびリングレベルRL
は、セレクタ15を経由して、パイプライン13
のタグ20〜24およびタグ30〜34に順次送
られ、命令の処理およびリングレベルRLのチエ
ツクに用いられる。
先行命令の処理に待ち時間があると、先読みし
た命令は、セレクタ14を通して、命令バツフア
レジスタ12の1つにセツトされる。分岐成功に
おける分岐先の命令についても、この命令バツフ
アレジスタ12へ用意される。本発明の場合、こ
の各命令バツフアレジスタ12に、その記憶され
る命令が属するリングレベルRL情報が、その命
令に併せて記憶されるようになつている。
た命令は、セレクタ14を通して、命令バツフア
レジスタ12の1つにセツトされる。分岐成功に
おける分岐先の命令についても、この命令バツフ
アレジスタ12へ用意される。本発明の場合、こ
の各命令バツフアレジスタ12に、その記憶され
る命令が属するリングレベルRL情報が、その命
令に併せて記憶されるようになつている。
セレクタ15を介して、パイプライン13に流
されるリングレベルRL情報は、タグ30ないし
タグ34に順次送られ、セレクタ17により、そ
のリングレベルRLまたは演算結果(ARC12)
によるリングレベルRLの一方が選択される。セ
レクタ16は、ロードPSW命令または割込み等
があつた場合に、その結果のリングレベルRLを
選択する回路である。セレクタ18は、空間にま
たがる転送を指定する命令の実行にあたつて、そ
の指定リングレベルRL(TLR)を選択し、記憶
装置SUのアクセスに用いるための回路である。
されるリングレベルRL情報は、タグ30ないし
タグ34に順次送られ、セレクタ17により、そ
のリングレベルRLまたは演算結果(ARC12)
によるリングレベルRLの一方が選択される。セ
レクタ16は、ロードPSW命令または割込み等
があつた場合に、その結果のリングレベルRLを
選択する回路である。セレクタ18は、空間にま
たがる転送を指定する命令の実行にあたつて、そ
の指定リングレベルRL(TLR)を選択し、記憶
装置SUのアクセスに用いるための回路である。
本発明によれば、各命令が属するリングレベル
RLを、先読みされたそれらの各命令と共に記憶
し、パイプライン13にそれらの各命令と共に流
す。従つて、リングレベルのバツフアが塞がつて
いるために、命令の先読みができないというよう
なことはなく、命令実行における全体の待ち時間
を短縮することが可能となる。
RLを、先読みされたそれらの各命令と共に記憶
し、パイプライン13にそれらの各命令と共に流
す。従つて、リングレベルのバツフアが塞がつて
いるために、命令の先読みができないというよう
なことはなく、命令実行における全体の待ち時間
を短縮することが可能となる。
第2図は本発明の一実施例における動作を説明
するための図である。
するための図である。
第2図における命令の実行環境は、第3図に示
した従来例と同様である。即ち、命令I1の後
に、分岐命令B1および分岐命令B2が続いてい
る。命令I1のEサイクルに数サイクルかかると
き、後続する分岐命令B1は、Bサイクルで待た
される。分岐命令B1について、分岐条件が満足
し、分岐成功となつた場合における分岐先の命令
は、分岐命令B1のDサイクルの後に、先読みが
開始され、命令バツフアレジスタの1つであるレ
ジスタ12−1に格納される。この命令が属する
リングレベルRL情報も、同じバツフアレジスタ
12−1に格納される。
した従来例と同様である。即ち、命令I1の後
に、分岐命令B1および分岐命令B2が続いてい
る。命令I1のEサイクルに数サイクルかかると
き、後続する分岐命令B1は、Bサイクルで待た
される。分岐命令B1について、分岐条件が満足
し、分岐成功となつた場合における分岐先の命令
は、分岐命令B1のDサイクルの後に、先読みが
開始され、命令バツフアレジスタの1つであるレ
ジスタ12−1に格納される。この命令が属する
リングレベルRL情報も、同じバツフアレジスタ
12−1に格納される。
一方、分岐命令B1に後続する分岐命令B2に
ついても、パイプラインで処理が行われ、分岐命
令B1がBサイクルで処理待ちになつている間、
1つ前のTサイクルで待つ。分岐命令B2につい
ての分岐先命令の先読みは、分岐命令B2のDサ
イクルの後に開始することができ、先行命令につ
いてのオペランドアクセスの待ち時間および演算
時間に並行して行われる。この分岐先にある命令
のリングレベルRL情報は、上記バツフアレジス
タ12−1とは別のバツフアレジスタ12−2
に、その分岐先命令と共にセツトされるようにな
つており、先行する命令の分岐先命令が属するリ
ングレベルRL情報と、バツフア上で競合するこ
とがないので、命令先読みに関連する待ち時間は
不要となる。
ついても、パイプラインで処理が行われ、分岐命
令B1がBサイクルで処理待ちになつている間、
1つ前のTサイクルで待つ。分岐命令B2につい
ての分岐先命令の先読みは、分岐命令B2のDサ
イクルの後に開始することができ、先行命令につ
いてのオペランドアクセスの待ち時間および演算
時間に並行して行われる。この分岐先にある命令
のリングレベルRL情報は、上記バツフアレジス
タ12−1とは別のバツフアレジスタ12−2
に、その分岐先命令と共にセツトされるようにな
つており、先行する命令の分岐先命令が属するリ
ングレベルRL情報と、バツフア上で競合するこ
とがないので、命令先読みに関連する待ち時間は
不要となる。
なお、先読みする命令がローカル・バツフア・
ストレジLBSにない場合には、演算時間に並行
して処理可能である。
ストレジLBSにない場合には、演算時間に並行
して処理可能である。
以上説明したように、本発明によれば、先読み
する命令が属するリングレベルRL情報について
の競合が生じないので、分岐命令における分岐先
の先取りが可能になり、命令の実行性能が向上す
る。
する命令が属するリングレベルRL情報について
の競合が生じないので、分岐命令における分岐先
の先取りが可能になり、命令の実行性能が向上す
る。
第1図は本発明の基本構成図、第2図は本発明
の一実施例における動作を説明するための図、第
3図は従来方式の説明図を示す。 図中、10A,10B,10Cは命令作業レジ
スタ、12は命令バツフアレジスタ、13はパイ
プライン、14ないし18はセレクタ、20ない
し24はタグ、30ないし34はリングレベル情
報を保持するタグ、RLはリングレベルをそれぞ
れ表す。
の一実施例における動作を説明するための図、第
3図は従来方式の説明図を示す。 図中、10A,10B,10Cは命令作業レジ
スタ、12は命令バツフアレジスタ、13はパイ
プライン、14ないし18はセレクタ、20ない
し24はタグ、30ないし34はリングレベル情
報を保持するタグ、RLはリングレベルをそれぞ
れ表す。
Claims (1)
- 【特許請求の範囲】 1 オペランドおよび命令のアクセスを独立に行
い、論理空間単位にアクセス保護用のリングレベ
ルを持ち、パイプライン処理を行う情報処理装置
において、 分岐先命令を含む命令読み出しに関して、読み
出した命令と共に、その命令の属する上記リング
レベルを命令バツフアレジスタに記憶する手段1
2と、 選択された命令に対応して、同時にその命令の
属する上記リングレベルをパイプライン13に流
す手段30〜34とを備え、 分岐命令に先行する命令のオペランドアクセス
の待ち時間および演算時間に並行して分岐先命令
の先取りを行うようにしたことを特徴とするリン
グレベル制御方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60174922A JPS6234259A (ja) | 1985-08-08 | 1985-08-08 | リングレベル制御方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60174922A JPS6234259A (ja) | 1985-08-08 | 1985-08-08 | リングレベル制御方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6234259A JPS6234259A (ja) | 1987-02-14 |
| JPH0412860B2 true JPH0412860B2 (ja) | 1992-03-05 |
Family
ID=15987058
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60174922A Granted JPS6234259A (ja) | 1985-08-08 | 1985-08-08 | リングレベル制御方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6234259A (ja) |
-
1985
- 1985-08-08 JP JP60174922A patent/JPS6234259A/ja active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS6234259A (ja) | 1987-02-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4729094A (en) | Method and apparatus for coordinating execution of an instruction by a coprocessor | |
| JP3151444B2 (ja) | ロード命令を処理する方法及びスーパースカラ・プロセッサ | |
| US4715013A (en) | Coprocessor instruction format | |
| US20050055536A1 (en) | Compiler instructions for vector transfer unit | |
| US4731736A (en) | Method and apparatus for coordinating execution of an instruction by a selected coprocessor | |
| US6687808B2 (en) | Data processor using indirect register addressing | |
| JPH0496825A (ja) | データ・プロセッサ | |
| CN101201736B (zh) | 数学运算处理装置 | |
| US4821231A (en) | Method and apparatus for selectively evaluating an effective address for a coprocessor | |
| US4914578A (en) | Method and apparatus for interrupting a coprocessor | |
| EP0240606B1 (en) | Pipe-line processing system and microprocessor using the system | |
| JPH03233630A (ja) | 情報処理装置 | |
| EP0385136B1 (en) | Microprocessor cooperating with a coprocessor | |
| US4758978A (en) | Method and apparatus for selectively evaluating an effective address for a coprocessor | |
| JPH0412860B2 (ja) | ||
| JP2861560B2 (ja) | データ処理装置 | |
| US6321319B2 (en) | Computer system for allowing a two word jump instruction to be executed in the same number of cycles as a single word jump instruction | |
| JPS63163929A (ja) | マイクロプロセツサ | |
| JP2636821B2 (ja) | 並列処理装置 | |
| JPH0524537B2 (ja) | ||
| KR100300875B1 (ko) | 캐쉬 미스 시 처리 방법 | |
| JP3102399B2 (ja) | データ処理装置及び方法 | |
| US4811274A (en) | Method and apparatus for selectively evaluating an effective address for a coprocessor | |
| JP3147884B2 (ja) | 記憶装置及び情報処理装置 | |
| JP2806690B2 (ja) | マイクロプロセッサ |