JPH03185539A - データ処理装置 - Google Patents
データ処理装置Info
- Publication number
- JPH03185539A JPH03185539A JP1325669A JP32566989A JPH03185539A JP H03185539 A JPH03185539 A JP H03185539A JP 1325669 A JP1325669 A JP 1325669A JP 32566989 A JP32566989 A JP 32566989A JP H03185539 A JPH03185539 A JP H03185539A
- Authority
- JP
- Japan
- Prior art keywords
- address
- register
- identifier
- buffer
- contents
- 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.)
- Pending
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、実行中のプログラムが複数の空間のオペラン
ドを同時にアクセスすることができるデータ処理装置に
関し、特に空間アドレスと空間アドレス変換後の基点ア
ドレスの対を記憶する空間アドレス変換バッファを有す
るデータ処理装置に関する。
ドを同時にアクセスすることができるデータ処理装置に
関し、特に空間アドレスと空間アドレス変換後の基点ア
ドレスの対を記憶する空間アドレス変換バッファを有す
るデータ処理装置に関する。
従来、複数のアドレス空間制御方法については、アイ・
ビー・エム、システムジャーナル、28巻。
ビー・エム、システムジャーナル、28巻。
1 (1989年)第15頁から第38頁(IBM。
System Journal、VOL28.Nol
、1989.PP15−38)において論じられている
。
、1989.PP15−38)において論じられている
。
また、アドレス空間上のアドレスと空間アドレス変換後
の基点アドレスの対を記憶するバッファについては、ア
イ・ビー・エム、エンタブライズ・システム・アーキテ
クチャ/370.プリアンプル・オブ・オペレーション
頁5−46〜5−48゜、頁10−53 (IBM、E
nterprise。
の基点アドレスの対を記憶するバッファについては、ア
イ・ビー・エム、エンタブライズ・システム・アーキテ
クチャ/370.プリアンプル・オブ・オペレーション
頁5−46〜5−48゜、頁10−53 (IBM、E
nterprise。
System Architecture/370、
Pr1ncples of 0perti。
Pr1ncples of 0perti。
n、PP5−46〜5−48.PPl0−53)に論じ
られており、バッファのパージを指示する命令があり、
空間アドレス変換テーブルを変更した場合は、この命令
によって、バッファが無効化される。
られており、バッファのパージを指示する命令があり、
空間アドレス変換テーブルを変更した場合は、この命令
によって、バッファが無効化される。
しかしながら、上記従来技術は、前記変換バッファのア
クセスの高速化と無効化処理の高速化について考慮され
ていないという問題があった。
クセスの高速化と無効化処理の高速化について考慮され
ていないという問題があった。
本発明は、前記問題点を解決するためになされたもので
ある。
ある。
本発明の目的は、空間アドレス変換バッファの無効化処
理が高速にできるデータ処理装置を提供することにある
。
理が高速にできるデータ処理装置を提供することにある
。
前記目的を達成するために、命令によりベースレジスタ
として使用する汎用レジスタと、該汎用レジスタと対応
するアクセスレジスタとを備え、アドレス計算時、前記
アクセスレジスタの内容を仮想空間アドレスとして、複
数の仮想空間アクセスを行い、かつ、仮想空間アドレス
から空間アドレス変換を行うことにより、仮想空間の実
アドレス変換のための基点アドレスを求め、該基点アド
レスを用いて実アドレス変換を行う多重仮想空間アドレ
ス方式のデータ処理装置において、空間アドレスと空間
アドレス変換後の基点アドレスとの対を記憶する空間ア
ドレス変換バッファに識別子フィールドを設け、さらに
バッファ識別子レジスタを設け、与えられた空間アドレ
スに対し、空間アドレスの変換対が記憶されているか否
かを検出する条件に前記バッファ識別子レジスタの内容
と前記識別子フィールドの値の一致を含むようにした。
として使用する汎用レジスタと、該汎用レジスタと対応
するアクセスレジスタとを備え、アドレス計算時、前記
アクセスレジスタの内容を仮想空間アドレスとして、複
数の仮想空間アクセスを行い、かつ、仮想空間アドレス
から空間アドレス変換を行うことにより、仮想空間の実
アドレス変換のための基点アドレスを求め、該基点アド
レスを用いて実アドレス変換を行う多重仮想空間アドレ
ス方式のデータ処理装置において、空間アドレスと空間
アドレス変換後の基点アドレスとの対を記憶する空間ア
ドレス変換バッファに識別子フィールドを設け、さらに
バッファ識別子レジスタを設け、与えられた空間アドレ
スに対し、空間アドレスの変換対が記憶されているか否
かを検出する条件に前記バッファ識別子レジスタの内容
と前記識別子フィールドの値の一致を含むようにした。
また、前記識別子レジスタの内容を、それまでに使用し
ていない値にすることによって、前記変換バッファをパ
ージするようにした。
ていない値にすることによって、前記変換バッファをパ
ージするようにした。
さらに、前記識別子レジスタの内容には、仮想計算機識
別子を含むようにした。
別子を含むようにした。
前記バッファ識別子レジスタは、変換バッファ無効化命
令または無効化処理が必要とされるごとに新たな値にさ
れ、また、変換バッファ内の変換対にある基点アドレス
と識別子フィールドは、空間アドレスをアクセスした時
に対応する空間アドレス変換後の基点アドレスが、変換
バッファに存在しなかった場合に、空間アドレス変換を
おこない、その結果の基点アドレスと、その時の変換バ
ッファ識別子レジスタの内容が登録される。従って、空
間アドレスアクセス時に、前記変換バッファを検索して
、識別子レジスタの内容と、変換バッファ内の識別子フ
ィールドが不一致であれば、その変換対は、その空間ア
ドレスに対しては、無効となる。
令または無効化処理が必要とされるごとに新たな値にさ
れ、また、変換バッファ内の変換対にある基点アドレス
と識別子フィールドは、空間アドレスをアクセスした時
に対応する空間アドレス変換後の基点アドレスが、変換
バッファに存在しなかった場合に、空間アドレス変換を
おこない、その結果の基点アドレスと、その時の変換バ
ッファ識別子レジスタの内容が登録される。従って、空
間アドレスアクセス時に、前記変換バッファを検索して
、識別子レジスタの内容と、変換バッファ内の識別子フ
ィールドが不一致であれば、その変換対は、その空間ア
ドレスに対しては、無効となる。
前記バッファ識別子レジスタ内に仮想計算機識別子を含
ませることにより、仮想計算機の切替えごとに変換バッ
ファを無効化する必要がなくなる。
ませることにより、仮想計算機の切替えごとに変換バッ
ファを無効化する必要がなくなる。
以下、本発明の一実施例を図面を用いて具体的に説明す
る。
る。
第1図は、本発明の一実施例を示すブロック図であり、
一般命令のオペランドデータ読み出し時の実アドレスを
求める動作に必要なブロック図である。命令1は、RX
形式で第2オペランドがR1フィールドで示す汎用レジ
スタにロードされるような仕様となっている。
一般命令のオペランドデータ読み出し時の実アドレスを
求める動作に必要なブロック図である。命令1は、RX
形式で第2オペランドがR1フィールドで示す汎用レジ
スタにロードされるような仕様となっている。
命令1の82フイールド及びx2フィールドの内容は、
信号線5,6を介して汎用レジスタ群7に与えられ、各
々が1つの汎用レジスタを選択する。これらの選択され
た汎用レジスタの内容と信号線9を介した命令1のD2
フィールドの内容とは、アドレス計算器lOによって加
算される。アドレス計算の結果、仮想空間内部のアドレ
スとなる実行論理アドレスを求め、この実行論理アドレ
スを信号線22を介して論理アドレス変換機構23に送
出する。
信号線5,6を介して汎用レジスタ群7に与えられ、各
々が1つの汎用レジスタを選択する。これらの選択され
た汎用レジスタの内容と信号線9を介した命令1のD2
フィールドの内容とは、アドレス計算器lOによって加
算される。アドレス計算の結果、仮想空間内部のアドレ
スとなる実行論理アドレスを求め、この実行論理アドレ
スを信号線22を介して論理アドレス変換機構23に送
出する。
一方、命令のB2フィールドにより選択された汎用レジ
スタに対応するアクセスレジスタ(AR)群8内の一つ
のAR内の内容が読み出され、信号線11を介してAL
Bエントリ制御回路24へ送出され、空間アドレス変換
バッファ(ALU)1Gがアクセスされる。ALBlG
のエントリはエントリ内の情報が有効か否かを示すVフ
ィールド、ALBエントリの識別子を示すALBID、
アクセスレジスタの内容と、それに基づいて、空間アド
レス変換の結果水められた基点アドレス(STO)の内
容などからなる。信号線12を介してアクセスされたA
LBエントリのVフィールドがバリッドであり、そのと
き選択されているARの内容と、エントリ内のアクセス
レジスタの内容が等しくて、かつ、識別子レジスタ17
の値と、エントリ内のALBIDの値の一致が比較回路
18によって検出されるとエントリ内の基点アドレス(
STO)が基点アドレスレジスタ19送出される。
スタに対応するアクセスレジスタ(AR)群8内の一つ
のAR内の内容が読み出され、信号線11を介してAL
Bエントリ制御回路24へ送出され、空間アドレス変換
バッファ(ALU)1Gがアクセスされる。ALBlG
のエントリはエントリ内の情報が有効か否かを示すVフ
ィールド、ALBエントリの識別子を示すALBID、
アクセスレジスタの内容と、それに基づいて、空間アド
レス変換の結果水められた基点アドレス(STO)の内
容などからなる。信号線12を介してアクセスされたA
LBエントリのVフィールドがバリッドであり、そのと
き選択されているARの内容と、エントリ内のアクセス
レジスタの内容が等しくて、かつ、識別子レジスタ17
の値と、エントリ内のALBIDの値の一致が比較回路
18によって検出されるとエントリ内の基点アドレス(
STO)が基点アドレスレジスタ19送出される。
ALBに前記条件を満たすエントリが存在しなかった場
合5選択されたARの内容をもとに主記憶2の空間アド
レス変換テーブル3が読み出され、空間アドレス変換機
構4を介して得られた基点アドレスの値が、信号線15
を介して、A L B 1G内の該当するエントリ内の
STOフィールドに設定され、また基点アドレスレジス
タ19にも設定される。
合5選択されたARの内容をもとに主記憶2の空間アド
レス変換テーブル3が読み出され、空間アドレス変換機
構4を介して得られた基点アドレスの値が、信号線15
を介して、A L B 1G内の該当するエントリ内の
STOフィールドに設定され、また基点アドレスレジス
タ19にも設定される。
そのとき該ALBエントリのVフィールドは、バリッド
値が設定され、ALBIDフィールドには識別子レジス
タ(ID)17の内容が設定される。
値が設定され、ALBIDフィールドには識別子レジス
タ(ID)17の内容が設定される。
基点アドレスレジスタ19の内容は、信号線21を介し
て論理アドレス変換機構23へ送出され、アドレス計算
器10の結果を用いて、実アドレスに変換され、それに
よってバッファ記憶装置がアクセスされる。
て論理アドレス変換機構23へ送出され、アドレス計算
器10の結果を用いて、実アドレスに変換され、それに
よってバッファ記憶装置がアクセスされる。
次に第1図を用いて、ALBの無効化処理を説明する。
ALB無効命令は、それまでに登録したALB情報を使
用しないようにするのが目的であるので、ALB!#、
効命令が発行されたら識別子レジスタ17の内容を、そ
れまで使用していない値に設定する。識別子レジスタ1
7がとり得る全ての値を使用してしまった場合のみ、A
LBエントリのVフィールドを無効値にすることとし、
それ以外の場合は、ALB無効処理のためにALBをア
クセスしない。
用しないようにするのが目的であるので、ALB!#、
効命令が発行されたら識別子レジスタ17の内容を、そ
れまで使用していない値に設定する。識別子レジスタ1
7がとり得る全ての値を使用してしまった場合のみ、A
LBエントリのVフィールドを無効値にすることとし、
それ以外の場合は、ALB無効処理のためにALBをア
クセスしない。
次に、仮想計算機システムにおけるALB I Dの使
用方法について、第2.3.4図を用いて説明する。
用方法について、第2.3.4図を用いて説明する。
第2図は、仮想計算機システムの構成を示す。
いま、ホスト上に仮想計算機が3個存在し、各々VMI
、VM2.VM3と呼び、各々のvM識別子番号(VM
I D)を1.2.3とする。ホストのVMIDはO
とする。
、VM2.VM3と呼び、各々のvM識別子番号(VM
I D)を1.2.3とする。ホストのVMIDはO
とする。
第3図は、該仮想計算機システム実行中のVMIDの値
の切替えを示している。VMIDが異なる状態間では、
ARの内容が等しくても、同−ALBエントリ内の情報
を使用できないようにするために、VMID切替わり時
に第4図の識別子レジスタ(ID)17の内容を更新す
る。すなわち、識別子レジスタの内容は、VMIDを含
むようにし、ALB無効処理時はID内のVMID以外
の部分即ちAIDフィールドを更新する。VM終了時は
ALB ID管理テーブル25のVMIDの一致するエ
ントリに、IDの内容を設定しておき、再び、同じVM
IDのVMが走行するときに、その値をID17に設定
する。ホスト走行時も同様にVMID=Oに対応するA
LBID管理テーブル25のエントリの値をID17に
設定する。
の切替えを示している。VMIDが異なる状態間では、
ARの内容が等しくても、同−ALBエントリ内の情報
を使用できないようにするために、VMID切替わり時
に第4図の識別子レジスタ(ID)17の内容を更新す
る。すなわち、識別子レジスタの内容は、VMIDを含
むようにし、ALB無効処理時はID内のVMID以外
の部分即ちAIDフィールドを更新する。VM終了時は
ALB ID管理テーブル25のVMIDの一致するエ
ントリに、IDの内容を設定しておき、再び、同じVM
IDのVMが走行するときに、その値をID17に設定
する。ホスト走行時も同様にVMID=Oに対応するA
LBID管理テーブル25のエントリの値をID17に
設定する。
このように、識別子レジスタ(ID)17にVMID値
を含ませることにより、VM切替えごとにALBをパー
ジしなくてよい。
を含ませることにより、VM切替えごとにALBをパー
ジしなくてよい。
以上、説明したように、本発明によれば、ALB無効化
処理を、識別子レジスタを更新することにより行ってい
るので、ALB無効化処理が高速にできる。
処理を、識別子レジスタを更新することにより行ってい
るので、ALB無効化処理が高速にできる。
また、仮想計算機の切替え毎にALBを無効化する必要
がないので、ALBの使用効率が向上する。
がないので、ALBの使用効率が向上する。
第1図は、本発明の一実施例の構成を示すブロック図、
第2図は、仮想計算機のシステム構成を示す図、第3図
は、VMIDの遷移を示す図。 第4図は、仮想計算機システムにおけるALBID管理
テーブルとALB IDの比較を示す図である。 図中、1・・・命令、2・・・主記憶、3・・・空間ア
ドレス変換テーブル、4・・・空間アドレス変換機構、
7・・・汎用レジスタ群、8・・・アクセスレジスタ群
、16・・・空間アドレス変換バッファ(ALB)、1
7・・・識別子レジスタ、 19・・・基点アドレスレ
ジスタ、25・・・ALBID管理テーブル。
は、VMIDの遷移を示す図。 第4図は、仮想計算機システムにおけるALBID管理
テーブルとALB IDの比較を示す図である。 図中、1・・・命令、2・・・主記憶、3・・・空間ア
ドレス変換テーブル、4・・・空間アドレス変換機構、
7・・・汎用レジスタ群、8・・・アクセスレジスタ群
、16・・・空間アドレス変換バッファ(ALB)、1
7・・・識別子レジスタ、 19・・・基点アドレスレ
ジスタ、25・・・ALBID管理テーブル。
Claims (1)
- 【特許請求の範囲】 1、命令のベースレジスタで指定される汎用レジスタと
、該汎用レジスタに対応するアクセスレジスタと、該ア
クセスレジスタの内容と空間アドレス変換後の基点アド
レスとの対を記憶する空間アドレス変換バッファとを備
え、該バッファ内の前記基点アドレスを用いて仮想空間
アドレスを実空間アドレスに変換する多重仮想空間アド
レス方式のデータ処理装置において、前記変換バッファ
内に識別子フィールドを設け、該フィールドの値が所定
の値であるか否かを比較する手段を設け、比較の結果一
致したとき変換対を有効とすることを特徴とするデータ
処理装置。 2、前記所定の値は、識別子レジスタに設定されている
ことを特徴とする請求項1記載のデータ処理装置。 3、前記識別子レジスタに、前記バッファ内のフィール
ドで使用されていない値を設定することにより前記バッ
ファをパージすることを特徴とする請求項2記載のデー
タ処理装置。 4、前記識別子レジスタの内容には、仮想計算機識別子
が含まれていることを特徴とする請求項2記載のデータ
処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1325669A JPH03185539A (ja) | 1989-12-14 | 1989-12-14 | データ処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1325669A JPH03185539A (ja) | 1989-12-14 | 1989-12-14 | データ処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH03185539A true JPH03185539A (ja) | 1991-08-13 |
Family
ID=18179394
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1325669A Pending JPH03185539A (ja) | 1989-12-14 | 1989-12-14 | データ処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH03185539A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008508598A (ja) * | 2004-07-30 | 2008-03-21 | インテル コーポレイション | アーキテクチャイベントの間のプロセッサリソースの保持 |
-
1989
- 1989-12-14 JP JP1325669A patent/JPH03185539A/ja active Pending
Cited By (20)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008508598A (ja) * | 2004-07-30 | 2008-03-21 | インテル コーポレイション | アーキテクチャイベントの間のプロセッサリソースの保持 |
| US7899972B2 (en) | 2004-07-30 | 2011-03-01 | Intel Corporation | Maintaining processor resources during architectural events |
| US7904694B2 (en) | 2004-07-30 | 2011-03-08 | Intel Corporation | Maintaining processor resources during architectural events |
| JP2011181094A (ja) * | 2004-07-30 | 2011-09-15 | Intel Corp | アーキテクチャイベントの間のプロセッサリソースの保持 |
| JP2011181095A (ja) * | 2004-07-30 | 2011-09-15 | Intel Corp | アーキテクチャイベントの間のプロセッサリソースの保持 |
| US8543793B2 (en) | 2004-07-30 | 2013-09-24 | Intel Corporation | Maintaining processor resources during architectural events |
| JP2013257911A (ja) * | 2004-07-30 | 2013-12-26 | Intel Corp | アーキテクチャイベントの間のプロセッサリソースの保持 |
| US8788790B2 (en) | 2004-07-30 | 2014-07-22 | Intel Corporation | Maintaining processor resources during architectural events |
| US8806172B2 (en) | 2004-07-30 | 2014-08-12 | Intel Corporation | Maintaining processor resources during architectural evens |
| JP2015084260A (ja) * | 2004-07-30 | 2015-04-30 | インテル コーポレイション | プロセッサ及びシステム |
| US9086958B2 (en) | 2004-07-30 | 2015-07-21 | Intel Corporation | Maintaining processor resources during architectural events |
| US9152561B2 (en) | 2004-07-30 | 2015-10-06 | Intel Corporation | Maintaining processor resources during architectural events |
| US9164918B2 (en) | 2004-07-30 | 2015-10-20 | Intel Corporation | Maintaining processor resources during architectural events |
| US9164901B2 (en) | 2004-07-30 | 2015-10-20 | Intel Corporation | Maintaining processor resources during architectural events |
| JP2016192241A (ja) * | 2004-07-30 | 2016-11-10 | インテル コーポレイション | プロセッサ及びシステム |
| US9507730B2 (en) | 2004-07-30 | 2016-11-29 | Intel Corporation | Maintaining processor resources during architectural events |
| US9996475B2 (en) | 2004-07-30 | 2018-06-12 | Intel Corporation | Maintaining processor resources during architectural events |
| JP2019050027A (ja) * | 2004-07-30 | 2019-03-28 | インテル コーポレイション | プロセッサ |
| US10303620B2 (en) | 2004-07-30 | 2019-05-28 | Intel Corporation | Maintaining processor resources during architectural events |
| US10740249B2 (en) | 2004-07-30 | 2020-08-11 | Intel Corporation | Maintaining processor resources during architectural events |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5295251A (en) | Method of accessing multiple virtual address spaces and computer system | |
| US4347565A (en) | Address control system for software simulation | |
| US4679140A (en) | Data processor with control of the significant bit lengths of general purpose registers | |
| JPH0658650B2 (ja) | 仮想計算機システム | |
| EP0217068A2 (en) | Method of emulating the instructions of a target computer | |
| US5297281A (en) | Multiple sequence processor system | |
| JPH0364890B2 (ja) | ||
| US5129071A (en) | Address translation apparatus in virtual machine system using a space identifier field for discriminating datoff (dynamic address translation off) virtual machines | |
| 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 | |
| JPH02304650A (ja) | パイプライン方式のマイクロプロセッサ | |
| JPH0192856A (ja) | アクセス及び欠陥論理信号を用いて主メモリユニットを保護する装置及び方法 | |
| JPH03185539A (ja) | データ処理装置 | |
| JPS615357A (ja) | デ−タ処理装置 | |
| JPH0552539B2 (ja) | ||
| JPS59112479A (ja) | キヤツシユメモリの高速アクセス方式 | |
| JPH0193831A (ja) | 仮想計算機のオペランドアクセス制御方式 | |
| JPH02168332A (ja) | データ処理装置 | |
| JP2980327B2 (ja) | 命令処理装置 | |
| JPS589452B2 (ja) | フア−ムウエアホウシキ | |
| JP2917384B2 (ja) | 情報処理装置 | |
| JPH0219495B2 (ja) | ||
| GB1486900A (en) | Data processing system | |
| JPH03109656A (ja) | 多重仮想アドレス空間アクセス方法およびデータ処理装置 | |
| JPH0443445A (ja) | データ処理装置 | |
| JPS6353574B2 (ja) |