JPS63191233A - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPS63191233A
JPS63191233A JP62259415A JP25941587A JPS63191233A JP S63191233 A JPS63191233 A JP S63191233A JP 62259415 A JP62259415 A JP 62259415A JP 25941587 A JP25941587 A JP 25941587A JP S63191233 A JPS63191233 A JP S63191233A
Authority
JP
Japan
Prior art keywords
domain
state
instruction
signal
program
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
JP62259415A
Other languages
English (en)
Other versions
JP2730896B2 (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.)
Fujitsu IT Holdings Inc
Original Assignee
Amdahl Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Amdahl Corp filed Critical Amdahl Corp
Publication of JPS63191233A publication Critical patent/JPS63191233A/ja
Application granted granted Critical
Publication of JP2730896B2 publication Critical patent/JP2730896B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)
  • Monitoring And Testing Of Nuclear Reactors (AREA)
  • Vehicle Body Suspensions (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 本発明は、システム制御プログラムを履行する論理プロ
セッサと共に起るデータ処理装置に関する。各論理プロ
セッサは記憶スペースを含むドメインを割当てられ、ま
たデータ処理装置内の機器に関係づけられる。本発明は
、特定滴にはドメイン記憶スペースへのアクセスに関す
る。
近代的な高速データ処理装置は複数のユーザー環境に適
応される。単一の装置を複数のユーザー環境に適応させ
る1つの方策は、各ユーザーに1台の論理プロセッサを
割当てることを含む。論理プロセッサはあたかもデータ
処理装置の全機器にアクセスするかの如く挙動するが、
システム制御が特定された記憶スペースのドメイン及び
関連ハードウェアへの論理プロセッサのアクセスを制限
する。このようにすると単一装置内の種々の論理プロセ
ッサが記憶装置内において重複することはない。しかし
、ユーザーインターフェイスを簡略化するために、論理
プロセッサの制限されたアクセスはそのプロセッサに対
して透明である。従って、装置内を走る命令及びアドレ
スはそれらが実行される或はデータにアクセスするのに
用いられる特定のドメインを特定することはない。
ドメインは、主記憶装置、チャンネル、操作員機器及び
命令を実行する論理プロセッサからなる処理環境である
。好ましい実施例においては、ドメインは付活されると
、IBMシステム/370動作原理、或はIBMシステ
ム/370拡張アーキテクチャ動作原理に述べられてい
る機器を有する。これらのリソースはシステム制御プロ
グラムによって制御され、一括してプログラムのドメイ
ンと呼ばれる。
システム制御プログラムが装置内を引次ぐと、そのドメ
インは必要な記憶の量、チャンネル及び論理プロセッサ
の数を割当てるマクロコードによって付活される。シス
テム制御プログラム及びドメインを割当てるマクロコー
ドは、制御ステートと呼ばれるマシンステートで動作す
る。制御ステートは、システムアドレスを用いてアドレ
スされるシステム記憶装置と呼ばれる主記憶装置専用で
ある。
論理プロセッサ内を走るドメインプログラムとして知ら
れるプログラムは、ユーザーステートと呼ばれるマシン
ステートで動作する。あるドメインに割当てられた主記
憶装置はドメイン記憶装置と呼ばれ、ドメイン記憶装置
アクセスはドメインアドレスを使用する。
時には、制御ステートで走っているプログラムに関して
ドメイン記憶装置内に記憶されているデータにアクセス
する必要がある。これは、例えば後述するエミュレーシ
ョン中に発生する。
データ処理装置はマシン命令として知られる1組の命令
を履行するように設計されている。マシンのアーキテク
チャが定義された後、マシンセット内の命令以外の命令
を履行させたいことが屡々ある。これは、システム記憶
装置内に、新らしい命令をエミュレートするように制御
ステートで起ることができる命令のエミュレーションプ
ログラムを記憶させることによって達成される。
エミュレートされる命令が論理プロセッサによって検出
されると、制御ステートへの分岐が行われ命令はエミュ
レートされる。
制御ステートへ分岐すると、制御ステートで走らされる
エミュレーションルーチンに適用するプログラム例外に
関する試験を行う必要がある。これらの試験にはエミュ
レーションプログラム内に敷線のコードを必要とするの
で、エミュレートされた命令の性能を減することになる
また、若干の命令をエミュレートするためには、制御ス
テートで走っているシステム記憶装置内のエミュレーシ
ョンプログラムがドメイン記憶装置内に記憶されている
オペランド或は他のデータにアクセスする必要がある。
上述のように、論理プロセッサが発生する命令及びアド
レスは、特定のアドレスをトメ°インアドレスとして処
理するのか、或はシステムアドレスとして処理するのか
を特定しない。
エミュレーション中にこのドメインクロスを得るために
、先行技術においては制御ステートで動作してドメイン
記憶装置へのアクセスを行わせるエミユレーション用の
特別命令を特定していた。
しかし特別命令の履行は、ドメインクロッシングアクセ
スを履行できる限られた数の命令にしか過ぎず、履行は
コスト高であった。
本発明は、現存する命令フォーマットを用いてドメイン
記憶装置アクセスとシステム記憶装置アクセスとを区別
する黙示的ドメインアドレス法と呼ぶ新らしい技術を提
供する。
一面において、本発明によるデータ処理装置は、ドメイ
ン記憶スペースを有するユーザードメインとエミュレー
ション記憶スペースを有するエミュレーションドメイン
とを有し、命令のシーケンスを処理する。命令のシーケ
ンスは、ユーザードメイン内の1つの命令を含み、この
命令はエミュレーションドメイン内の命令のエミュレー
ションプログラムを呼出す。装置は、命令のシーケンス
を受けるように接続された複数のフィールドを含む命令
レジスタを具えている。命令レジスタの少なくとも1フ
イールドは、命令の実行に使用されるオペランドに関す
るアドレス情報の位置を識別する。エミュレートされる
命令を受けるように接続されているデコード手段は命令
をデコードして制御コードを発生する。制御コードは、
エミュレーションドメイン内の命令のプログラムを呼出
す分岐信号、及びエミュレーションドメイン内の命令の
プログラムの実行に際してユーザードメイン記憶スペー
スにアクセスする必要があるか否かを指示するドメイン
アクセス制御信号を含む。
分岐信号に応答して、エミュレーションドメインからの
命令のプログラムは順次に命令レジスタへ供給される。
ドメインアクセス制御信号及び命令レジスタ内の1フイ
ールドによって識別された位置に応答して、このシーケ
ンス内の各命令毎に、ユーザードメインへのアクセスが
必要であるか否かを指示するユーザードメインアクセス
信号が発生される。
命令レジスタと通信しているデータ処理装置内のアドレ
ス手段は、記憶手段内に記憶されているオペランドに関
するアドレスを供給する。ユーザードメインアクセス制
御信号及びオペランドアドレスを受けるように接続され
ている記憶手段は、ユーザードメイン及びエミュレーシ
ョンドメインからのオペランドをアドレスによって識別
された位置に記憶する。これらのアドレスは、制御ステ
ート中は通常は記憶手段においてエミュレーションドメ
インアドレスとして解釈される。しかし、本発明によれ
ば、ユーザードメインアクセス信号に応答して、アドレ
スをユーザードメインアドレスと解釈する手段が含まれ
ている。
以上に概要を説明した本発明によるデータ処理語・置ハ
、別の面において、エミュレーションプログラムへエン
トリーした時のプログラム例外に関する試験を、制御ス
テートへの分岐時に迅速に遂行する。デコード手段はエ
ミュレートされる命令に応答して、分岐信号及び分岐試
験信号を含む制御コードを発生する。分岐信号に応答す
る手段は装置のプログラム制御を第2のステート即ちエ
ミュレーションステートへ分岐させ、命令をエミュレー
トする高速プログラムへ進ませる。分岐試験信号を受け
る手段は、エミュレーションステートへ分岐した時に進
んだ高速プログラムは別として、エミュレーションステ
ートへ分岐した時にプログラム例外のための試験を行う
。プログラム例外が検出されると、プログラム例外を処
理する別の命令のプログラムへ更に分岐し、特別な処理
が行われる。以上のようにして、エミュレーションプロ
グラムへのエントリが迅速に発生し、エミュレーション
は効率的に進行する。プログラム例外を検出した時だけ
エミュレーションプログラムへはより厄介なエントリが
必要となる。
黙示的ドメインアドレス法を用いると、制御ステートに
おいて命令のエミュレーション中にドメイン記憶装置へ
のアクセスを使用することが可能な命令セットは、本質
的に、システム記憶装置へアクセス可能な全ての命令を
含むように拡張される。プログラム例外に関する高速試
験を付加したことによって、エミュレーション性能は極
めて高められる。
以下に添付図面を参照して好ましい実施例を詳述する。
先ず、第1図を参照して本発明のデータ処理システム環
境を説明する。次で第2図を参照して本発明の装置の、
エミュレーションプログラムヘエントリ中に動作する部
分を説明する。第3図においてはエミュレーションプロ
グラムの動作中に動作する本発明の詳細な説明し、最後
に第4図乃至第7図に基いて本発明の要素の詳細動作を
説明する。
■、之ム文人免量! 第1図は本発明を実施するデータ処理装置を示す。この
データ処理装置は、命令及びオペランドを処理する命令
ユニット/実行ユニット10、命令及びオペランドを命
令ユニット/実行ユニット10へ供給しまた命令及びオ
ペランドを主記憶装置12から引出すキャッシュ記憶ユ
ニット11を含む。
命令ユニット/実行ユニット10はライン17を通して
制御信号及びアドレスをキャッシュ記憶ユニット11へ
供給する。制御信号の1つは、ドメインアクセス或はシ
ステムアクセスが必要か否かを指示する。データはバス
18を通して命令ユニット/実行ユニット10に戻され
る。
同様に、キャッシュ記憶ユニット11はアドレス及び制
御情報をシステムアドレスに移行されている主記憶装置
12ヘライン19を通して送る。
データはバス20を介して主記憶装置12とキャッシュ
記憶ユニット11との間に供給される。
命令ユニット/実行ユニットlOの各ユーザーには、ド
メイン記憶装置を含むデータ処理装置内のドメインが割
当てられる。即ち、第1図の主記憶装置12は、ドメイ
ン1記憶装置13、ドメイン2記憶装置14、及びドメ
イン3記憶装置15を有するように示されている。更に
、データ処理装置は、マシンリソース及びシステム記憶
装置16として知られる主記憶装置の一部へのアクセス
を有する制御ステートで動作する。ドメイン記憶装置と
システム記憶装置とは、個々のドメインへ割当てられた
アドレススペースによって区別される。しかし、あるド
メイン内で動作している論理プロセッサは、処理中にそ
のプロセッサが使用可能なアドレスに拘束されることは
ない。そうではなく、論理プロセッサがイニシャライズ
された時、キャッシュ記憶ユニットはドメイン記憶装置
に対する要求を認知するように、且つ命令ユニット/実
行ユニット10から供給されるアドレスをドメインアド
レススペース内へ移行するように設定される。
第1図には、装置の特定ユーザーが使用するための入力
/出力機器、チャンネル、ダイレクトアクセス記憶装置
、及び個々のドメインに割当てられている他のリソース
は示されていない。これらの機器は総合的なデータ処理
装置環境内に含まれているものであるが、本発明にとっ
て重要ではない。
本発明は、前述の本発明の詳細な説明したように、命令
のエミュレーションに特定の応用を有する。マシンセッ
ト内に含まれない命令は、システム記憶装置内のエミュ
レーションプログラムへ分岐することによって実行され
、これはユーザーステートを一時的に離れて制御ステー
トに入ることによって実行される。制御ステートにおい
ては、制御ステートにおいて利用可能なマシンリソース
はシステムドメインとして考えることができる。
システムドメインはシステム記憶装置を含む、しかし、
実システムアドレスが制御ステートで走るプログラムに
よって使用されるので、キャッシュ記憶ユニット11は
、ユーザーステートにおいて行われるように、アドレス
が移行されることはない。
エミュレーション中、装置が制御ステートで動作してい
る場合、履行される命令のオペランドを記憶しているド
メイン記憶装置へのアクセスが屡々必要である。従って
、記憶ユニット11は、ドメイン記憶装置アクセスが行
われドメインアドレススペースへのアドレスの適切な移
行を行い得る時点を告知しなければならない。更に、デ
ータアクセスに必要な他の記憶ユニットパラメータはド
メイン記憶装置へのアクセスを容易ならしめるように処
理される。
A、エミュレーションノ′ステートへのエントリ第2図
は、エミュレーションプログラムへのエントリ中に動作
する本発明による命令ユニットの一部を示す。命令のシ
ーケンスは、Dサイクル命令レジスタ201、命令の実
行に際して使用されるオペランドのアドレスを発生する
手段202、Aサイクル実効アドレスレジスタ203、
Bサイクルオペランドアドレスレジスタ204、Xサイ
クルレジスタ205、Wサイクルレジスタ206、及び
複数の制御レジスタ207を含むパイプライン2(14
)を通して供給される。
ライン20Bに印加される命令に応答して制御ストアア
ドレスが手段2(15)内で発生し、ライン210を通
して制御ストア211に供給される。
制御ストア211は命令をデユードして制御コードを発
生する手段である。エミュレートすべき命令を受けると
制御コード212がアドレスされる。
制御コード212の一部はライン213に供給されて、
エミュレーションが遂行されることを指示する。ライン
213上のコードは制御ストアアドレス発生手段2(1
5)へ供給される分岐アドレスを発生する手段214に
印加される。続くサイクル中に分岐アドレスがライン2
10を通して制御ストア211に供給され、高速援助モ
ードFAMとして知られるエミュレーションモードへエ
ントリするための制御コードが発生される。
次に、エミュレーションプログラム中に使用ささるべき
データアクセス制御を識別するコードがライン215に
供給される。データアクセス制御コードDACはライン
215を通してレジスタ216へ供給される。命令ユニ
ットバイブライン2(14)の流れの中で、DACレジ
スタ216の内容はセレクタ217で選択され、加算器
218を通してAサイクル実効アドレスレジスタ203
へ送られる。DACはパイプライン2(14)を下って
オペランドアドレスレジスタ204、オペランド語レジ
スタ205、結果レジスタ206を通り、DACfiJ
JifBレジスタ219 (DACR)内に記憶され、
エミュレーションプログラム中に利用される。DACコ
ードの特性の詳細に関しては後述する。
制御レジスタ207は、ドメインCPUステータスレジ
スタ220  (DCPUS)及びプログラムステータ
ス語レジスタ221(PSW)をも含む。ドメインCP
Uステータスレジスタ220はライン222を通してプ
ログラムステータス語(この好ましい実施例においては
高位部分)をXサイクルオペランド語レジスタ内へ読込
むことによってロードされる。プログラムステータス語
はオペランド語レジスタ205からWサイクル結果レジ
スタ206に供給され、更にそこからドメインCPUス
テータスレジスタ220へ印加される。
レジスタ220内のこのドメインCPUステータスコー
ドは、後述するようにエミュレーションプログラムの実
行中にも利用される。プログラムステータス語レジスタ
221の内容は、ロードPsWの如き若干のマシン命令
の実行中にロードされる。
本発明によれば、エミュレーションプログラムの高速エ
ントリを容易ならしめるために、若干の高速エントリ試
験223が実行される。高速エントリ試験は、ライン2
24を通して制御コード212の一部を高速エントリ試
験回路223へ供給することによって識別される。もし
高速エントリ試験223に失敗すれば、ライン225を
通して手段214に信号が供給され、分岐アドレスを発
生させて制御ストアアドレス発生手段2(15)を新ら
しい制御ストア位置に分岐させ、「通常エントリ」と呼
ばれる実行モード内のエミュレーションルーチンを処理
する。高速エントリ試験回路223に関しては第6図及
び第7図を参照して後述する。
命令の実行に使用されるオペランドのアドレスを発生す
る手段202は、複数の汎用レジスタ226、加算器2
18、セレクタ217及び命令プラットホーム201を
含む。命令プラントホームは、Dφ、Di、D2、D3
及びD4で図示されているように複数のフィールドに分
割されている。少なくとも1つの命令フィールドは、後
述の命令のフォーマットに依存して、ライン227を通
して供給され、複数の汎用レジスタ226から1つの汎
用レジスタ内に位置しているアドレス情報を選択させ、
加算器218へのベースアドレスとして供給させる。従
って、命令プラットホーム201内の少なくとも1つの
命令フィールドは、その命令の実行に使用されるオペラ
ンドのベースアドレスの位置を識別する情報を含む。
更に、命令の第2フイールドがライン228に供給され
、セレクタ217を通して加算器218への第2の入力
として印加される。ライン228を通して供給される命
令の第2フイールドと汎用レジスタ226から供給され
るベースアドレスとを加算すると、Aサイクル実効アド
レスレジスタ203へ供給されるオペランドのアドレス
が得られる。
実効アドレスレジスタ203から、アドレスは記憶ユニ
ットへ供給されてデータが引出され、このデータは記憶
ユニットからXサイクルオペランド語レジスタへ供給さ
れる。
第2図は制御レジスタ207のローディング及びエミュ
レーションプログラムへ分岐させるイベントのシーケン
スを示している。制御レジスタ207は、レジスタ20
3から供給されるアドレスの解釈のために記憶ユニット
へ供給されるインターフェイス信号の発生に使用される
(後述)。
B、エミュレーション のΦ乍 第3図は、エミュレーションプログラムの走行中に本発
明によって影響される命令ユニット及び記憶ユニットの
一部を示す。第3図並びに第2図に示す命令ユニットの
部分は、命令プラントホーム301 (第2図の201
)、データアクセス制御コードレジスタ319 (第2
図の219)、ドメインCPUステータスレジスタ32
0(第2図の220)、及びプログラムステータス語レ
ジスタ321 (第2図の221)を含む。命令の実行
に用いられるアドレスを発生する手段302は、汎用レ
ジスタ326、加算器318、及び命令ブラ・ノドホー
ム301を含む。少なくとも1つの命令フィールドがラ
イン327に供給されて汎用レジスタ326の選択を制
御し、加算器318ヘベースアドレスを供給させる。命
令プラットホーム301の少なくとも1つの他のフィー
ルドがライン328から加算器318に供給され、ベー
スアドレスに加算されてオペランドアドレスが発生し、
実効アドレスレジスタ303へ供給される。実効アドレ
スレジスタ303内のアドレスはライン330を通して
全体を331で示す記憶ユニットへ供給される。更にこ
のアドレスは命令ユニットパイプラインを通してBサイ
クルオペランドアドレスレジスタ304へも供給される
。命令ユニットパイプラインの残余部分に関しての説明
は省略する。
命令プラットホーム301内のある命令は、ライン38
1を通して複数の命令フィールドを命令デコード手段3
32へ供給する。更に、制御ストア211 (第2図)
からの制御ストアタグがライン329を通して命令デコ
ード手段332へ供給される。手段332における命令
のデコードに応答してライン333に制御信号が発生し
、これらの信号は命令ユニット/記憶ユニットインター
フェイス論理回路334へ供給される。命令ユニット/
記憶ユニットインターフェイス論理回路334の詳細は
第5図を参照して後述する。
マf、−1あるオペランドのベースアドレスを保持して
いる汎用レジスタを識別する命令フィールドは、ドメイ
ン記憶装置アクセス検出論理回路335へも供給される
。このドメイン記憶装置アクセス検出回路335の詳細
は第4図を参照して後述する。この回路335はライン
338上にドメイン記憶装置アクセス信号を発生して命
令ユニット/記憶ユニットインターフェイス論理回路3
34へ供給する。
命令ユニット/記憶ユニットインターフェイス論理回路
334は、更に、ライン339を通してドメインアクセ
ス制御レジスタ319から他の制御信号も受けている。
またドメインCPUステータスレジスタ320はライン
340を通してインターフェイス論理回路334へ制御
信号を供給し、プログラムステータス語レジスタ321
はライン341を通してインターフェイス論理回路33
4へ制御信号を供給している。
インターフェイス論理回路334は制御信号を発生して
記憶ユニッ)331へ供給する。これらの制御信号は、
実効アドレスレジスタ303からライン330を通して
供給されるアドレスに応答してデータを取出すのに用い
られる。これらの制御信号はライン342上のアドレス
モード信号、ライン343上のシステムアクセス信号、
ライン344上の仮想アドレス信号、ライン345上の
二次アドレススペース信号、ライン346上のキーチェ
ック禁止信号、及びライン347上の低アドレス保護禁
止信号を含む。
ライン342上のアドレスモード信号は、24ビツト或
は31ビツトの何れのアドレスが供給されているのかを
決定することによって、ライン330上に供給されるア
ドレスのモードを制御する。
ライン343上のシステムアクセス信号は、記憶ユニッ
トがライン330上のアドレスをシステムアドレス、或
はドメインアドレスの何れかとして応答する態様を制御
する。システム制御プログラムがセットアツプされると
、記憶ユニットのレジスタ348内にシステム記憶装置
内のドメイン限界を限定するパラメータがロードされる
。システム制御ステートに割当てられているアドレスも
レジスタ349内にシステム限界として記憶される。シ
ステム限界及びドメイン限界は、ライン343上のシス
テムアクセス信号によって制御されているセレクタ35
0に供給され、システム限界或はドメイン限界の何れか
が選択される。ライン330上のアドレスはコンパレー
タ351において、選択されたシステム限界或はドメイ
ン限界と比較され、アクセスのための有効アドレスが供
給されたか否かが決定される。もしこのアドレスが有効
アドレスでなければ、アドレス例外信号がライン352
上に発生する。
システムアクセス信号は、キャッシュ内のアドレスに対
して遂行される移行の種類を決定するのにも用いられる
。ドメインアドレスは仮想アドレス或は実アドレスの何
れであってもよい。もし仮想アドレスであれば、移行に
は移行ルックアサイドバッファ353が使用される。ま
たもし実アドレスであればドメインベース調整機構35
4が用いられてドメイン内のシステムアドレスへのアド
レスが調整される。もしそれがドメインアクセスでなけ
れば移行或はドメインベース調整は不要である。
従って355に示すように移行のモードを制御するため
に、ライン344上の仮想アドレス信号とライン343
上のシステムアクセス信号の組合せが使用されるのであ
る。
IBM/370アーキテクチャに特定されているような
デユアルアドレススペース命令に対しては、ライン34
5上の二次アドレススペース信号が一次及び二次記憶装
置へのアクセスを制御する。
−次及び二次アドレススペースの位置はそれぞれ制御レ
ジスタ1356及び制御レジスタ7357内に特定され
ている。ライン345上の二次アドレススペース信号は
セレクタ358を制御してダイナミックアドレス移行回
路359へ適切な識別名を供給させる。
ライン346上のキーチェック禁止信号は、タグアクセ
スキー及びユーザー記憶装置キーがそれぞれレジスタ3
61及び362内に記憶されている値によって指示され
るものと整合しない時の、ライン360上の保護例外信
号の発生を、禁止する。
ライン347上の低アドレス保護信号は、低アドレス保
護検出回路364が低アドレス領域内にライン330か
らのアドレスを検出した時ライン363上に保護例外信
号を発生するのを、禁止する。
図から明白なように、記憶ユニットはライン330から
アドレスを受け、複数の制御信号に応答してそれを処理
する。オペランドを取出すために記憶ユニットにアドレ
スを供給する各命令毎に、ライン343上のシステムア
クセス信号はシステムアドレスが供給されているのか、
或はドメインアドレスが供給されているのかを特定する
。しかし、上述のように、命令プラットホーム301は
システム或はドメインアクセスが行われていることを特
定するフィールド或はビットを含んでいない。本発明に
よれば、ドメインアクセス制御レジスタ319内に記憶
されているエミュレーションプログラムへエントリする
と制御コードを発生して黙示的ドメインアドレッシング
を可能ならしめる手段が設けられている。ドメイン記憶
装置アクセス検出論理回路335は、オペランドアドレ
スの発生に使用される汎用レジスタを特定する命令から
のフィールドの内容と、汎用レジスタの予め選択された
範囲とを比較して、ある命令のためにドメインアクセス
が必要か否かを決定する。ドメイン記憶装置アクセス検
出論理回路335もライン336を通して命令デコード
手段332から、詳細を後述する命令フォーマットを識
別する若干の制御信号を受ける。ドメインアクセス制御
信号はライン338を通して命令ユニット/記憶ユニッ
トインターフェイス論理回路334に供給され、ライン
343上にシステムアクセス信号を発生させる。
更に、本発明によれば、ドメインアクセス制御レジスタ
319は他の信号をも記憶しており、これらの信号はド
メインCPUステータスレジスタ320内に記憶されて
いる制御信号と組合ってプログラムステータス語レジス
タ321からインターフェイス論理回路334へ供給さ
れる信号を無効ならしめる。これらの制御信号は、制御
ステートで動作中のエミュレーションプログラムからド
メインアドレスにアクセス中に、ライン342上にアド
レスモード信号、ライン345上に二次アドレス信号、
ライン346上にキーチェック禁止信号、及びライン3
47上に低アドレス保護禁止信号を発生させる。本明細
書に記載されている特色を以下に説明する。
C9!、六 ドメインアドレッシング 「黙示的ドメインアドレッシング」を用いると、「制御
ステート」からドメイン記憶装置にアクセスするのに使
用できる命令セットは、システム記憶装置にアクセス可
能な本質的に全ての命令を含むまでに拡張される。シス
テム汎用レジスタGPR326の特定範囲は(それらを
ベースアドレスを捉供するように用いた場合には)、随
意的に、暗黙のドメインアドレッシングを住しさせるこ
とができる。これらのレジスタを「ドメインアドレッシ
ングペースレジスタ」、略としてDABRと名付ける。
「黙示的ドメインアドレッシング」はDACR319内
のrDABR付活制御」ビットを介して付活される。「
黙示的ドメインアドレッシング」が付活され、「ドメイ
ンアドレッシングベースレジスタ」がオペランドのアド
レスに用いられている場合には、常に「システムアドレ
ッシング」を使用する或は常に「ドメインアドレッシン
グ」を使用すると明確に特定されている基準を除いて、
「システムアドレッシング」に代って「ドメインアドレ
ッシング」が用いられる。
D、ドメインアドレッシングベースレジスタ(DABR
) システムGPR2−7は「ドメインアドレッシングベー
スレジスタJ  (DABR)と名付けられている。こ
れらは、「黙示的ドメインアドレッシング」が付活され
且つこれらがある命令の特定レジスタフィールド(単数
或は複数)に特定されている場合を除いて、他のシステ
ムGPRと同じように動作する。この場合、以下のケー
スにおける関連オペランドに対して「ドメインアドレッ
シング」ルールが適用される(実効アドレス計算及び主
記憶装置へのアドレスの両方或は何れか一方を遂行する
際に)ニ ー仮想アドレスである命令オペランド。
−論理アドレスである命令オペランド。
−実アドレスである命令オペランド。
以下のケースに対しては「黙示的ドメインアドレッシン
グ」は決して適用されない。
−命令アドレス。
−pswのアドレス、割込みコード、及び割込み中に使
用される関連情報。
一ベースアドレスにオフセットとしてハードウェアによ
って加算されるアドレス。この場合ペースアドレスはア
ドレッシングの型を決定する。
−アドレスとして使用されないオペランドアドレスのフ
ォーメーション。
次表は、関連するシステムGPRがDABRとして活動
時に、「制御ステート」における各命令フォーマット毎
のレジスタフィールド(各オペランドによってアドレス
するDABRを指定する)を示す。
DABRとして使用されるペースレジスタ:χ セ くu目ト(l)1五− E、ドメインアクセス1″′ 「ドメインアクセス制御」は各記憶装置オペランド毎に
黙示的ドメインアドレッシングを付活する。DABRの
2範囲を付与するために2ビツトが限定される。しかし
、これは各DABR毎に1制御ビツトを付与するように
一般化できる。
各制御ビットは、DABRの特定のセットに対して黙示
的ドメインアドレッシングが使用されるか否かに依存し
て、独立的にセット可能である。
ドメインアクセス制御ビットはエミュレートされる命令
の制御語内に限定され、制御ステートマシン命令によっ
て扱うことができる。
高速援助モードFAMにおいては、現行PSWのフィー
ルドは無効にされる。プログラム実行は実効PSWによ
って制御される。動作はECモード及び多くの割込みが
不能化されたスーパーバイザステートにある。システム
記憶装置アクセスに対して31ビツトの実アドレッシン
グが使用され、プログラムイベント記録(PER)は不
能化される。システム記憶装置アクセス用PSWキー(
システムキー)は、ドメインが付活されるとマクロコー
ドによってセットされる。
FAM中のドメイン記憶装置アクセスを制御する実効P
SWは、「ドメインcPUステータス」(DCPUS)
と呼ばれる。FAM中のDCPUSは、エミュレートさ
れる命令に対して有効であったPSWである。このPs
wはFAMエントリルーチンの一部として捕捉され、シ
ステムレジスフ内に配置される。これはユーザー制御モ
ードを特定し; 一制御レジスタ9.10及び11によって制御されるド
メイン基準に対するPER −oダイナミックアドレス移行 0アドレツシングモード 0ドメインキー 0アドレススペース制御 に関係づけられたドメインアドレッシングを制御する。
FAMにおいては、DCPUSは制御ステートに限定さ
れた命令を用いて変更することができる。これは新しい
PSWをロードするのと同等である。
「ドメインアクセス制御」は、ドメイン記憶装置アクセ
スに伴うPSW内の種々のビットを扱うことができる。
この便益を「ドメインアクセス制御」と呼ぶ。「ドメイ
ンアクセス制御」は、DCPUS及び制御レジスタ(こ
の制御がなければドメインアドレッシングを制御する)
の両方或は何れか一方の若干のフィールド、並びに黙示
的ドメインアドレッシングに用いられる「ドメインアク
セスペースレジスタJ  (DABR)の付活を制御す
るために供給されるビットに対する無効作用を特定する
。これによって、エミュレーションルーチンはドメイン
PSWを変更することなくこれらの機能を処理する能力
を持つ。これは、エミュレーションに必要な多数の命令
を減少させることになり、エミュレーションルーチンの
効率を改善する。「ドメインアクセス制御」は「ドメイ
ンアクセス制御レジスタJ  (DACR)内に収容さ
れている。DACRはFAMエントリ中にエミュレート
された命令の制御語からロードされ、制御ステートマシ
ン命令によってエミュレーションルーチン内において変
更可能である。・ ドメインアクセス制御フォーマット l=保留 S=二次アドレッシング無効;移行を受けるドメインア
ドレッシング記憶装置基準のために二次仮想アドレッシ
ングを使用せよ(実効DCPUSのSビットを無効さと
する・・(14).・、lとして処理する)。
もし実効DCPUSがECモードを特定していれば、こ
の制御のセツティングは無視される。
P=ニドメイン次アドレッシング無効:移行を受けるド
メインアドレッシング記憶装置基準のために一次仮想ア
ドレッシングを使用せよ(実効DCPUSのSビットを
無効とする・・・、・・0として処理する)。
もし実効DCPUSがECモードを特定していれば、こ
の制御のセツティングは無視される。
R=ニドメインPE記憶装置変更無効ニドメインアドレ
ッシング記憶装置基準のためにPER記憶装置・変更・
イベント試験を抑圧せよ(CR9ビット2を無効とする
・・・・・・0として処理する)。
T=ニドメイン行無効:論理的ドメインアドレッシング
記憶装置基準のために移行を抑圧せよ(実効DCPUS
のTビットを無効とする・・・・・・0として処理する
)。
A=ニドメインアドレッシングモード効ニドメインアド
レスのために31ビツト実効アドレ・ノシング発生ルー
ルを使用せよ。(実効DCPUSの(A)を無効とする
・・・・・・1として処理する)。
この制御は実効DCPUSがECモード或はECモード
を特定しているか否かに拘わらず効果を生ずる。
C=DABR付活制御1ニジステムGPR4−7をDA
BRとする暗黙ドメインアドレッシングを付活せよ。
D=DABR付活制御2ニジステムGPR2−3をDA
BRとするため暗黙ドメインアドレ・ノシングを付活せ
よ。
注:ビットC及びDが共に1であってよい。この場合指
定されたシステムGPRの両組はDABRとして活動す
る。
L=ニドメインアドレス保護無効ニドメインアドレッシ
ング記憶装置基準のために低アドレス保護を抑圧せよ(
CROビット3を無効とする・・・。
0として処理する)。
K=ニドメインキー護無効ニドメインアドレッシング記
憶装置基準のためにキー保護を抑圧せよ(実効DCPU
Sキーフィールドを無効とする、ビット8−11・・・
・・・・・0として処理する)。
次表は「ドメインアクセス制御」の作用を要約したもの
である。
亨 【 マ マ 【 m ロ Y マ (イ)0−匡←くQローX 1、無効制御は以下の如く動作する。
あるビットがオンの時、FAM中のCPUによる全ての
ドメインアドレッシングの対応部分が無効になる。なる
ビットがオフの時、それに対応する無効作用は破棄され
、ドメインアドレッシングは通常の如く進行する(D 
CP U S、制御レジスタ等の制御の下に)。
2、  DABR付活制御は、ドメインアドレッシング
ルールを適用するか否かを決定する際のDABRの使用
を制御する。
もしあるビットがオフであれば、システムGPRの関連
セットは他のシステムGPRと同等に動作する。もしあ
るビットがオンであれば、システムGPHの関連セント
はDABRとして活動する。これらのシステムGPHの
1つを論理アドレッシング或は実アドレッシングのため
のベースとして使用する時には、ドメインアドレッシン
グルールを適用させられる。
■、黙黙約的ドメインアドレッシングkMドメイン記憶
装置アクセス論理回路335の論理図を第4図に示す。
この論理回路は、現行の記憶装置アクセスが「ドメイン
記憶装置アクセス」(DSA)であるか否かを確定する
命令0PCODEフイールドDφ(2バイト0PCOD
EにおいてはDφ、Dl、B2)は論理回路432にお
いて命令フォーマットの型にデコードされる。ライン4
40.441及び442上の信号によってそれぞれ示さ
れているように、RR,RRE及びSSフォーマットだ
けがデコードされる。他の全てのフォーマットは同一位
置にそれらのDABRを有している。命令デコーディン
グによって、記憶装置アクセスが第1記憶装置オペラン
ドを含むか否かの確立も行われる。これは、SSフォー
マット命令(記憶装置オペランドが2つ存在し、各オペ
ランドがそれ自体の独特なりABRを有する)のような
場合に重要である。
若干のRRフォーマット命令も2つの記憶装置オペラン
ドを有している。ライン444上のrOAR1アクセス
」なる語は、第1記憶装置オペランドがアクセスされつ
つあることを示す。即ち、SSフォーマットに対するB
1と、RRフォーマントに対するR1である。他の全て
のフォーマットは1つの記憶装置オペランドしか有して
いないから、rOAR1アクセス」はB1或はB2オペ
ランドの何れかに適用される。
他の3つの機能信号が命令デコード手段432から供給
される。即ち、 ■) ライン443上のDFIST信号。これは命令ア
ルゴリズムの第1の流れ即ちシーケンスを表わす。
2) ライン445上のユーザー信号。これはプロセッ
サがユーザーステートにある(即ちFAX或は制御ステ
ートではない)ことを表わす。
3) ライン446上のDSA不能化信号。これは、例
えばシステムアドレスを必要とする分岐命令のような若
干の命令の型に対してドメイン記憶装置アクセスを禁止
するデコードである。
ライン447上のドメインアクセス制御レジスタビット
28及びライン448上の同じくビット29はそれぞれ
システムGPR4−1及び2−3をDABRとする暗黙
のドメインアドレッシングを付活する。
第4図は、第3図に番号335で示したドメイン記憶装
置アクセス論理回路の実施例の論理図である。命令プラ
ットホームは、前述のように複数のプロセッサDφ−D
4に細分されている。命令のフォーマ・ントに依存して
、特定フィールドが汎用レジスタからのペースアドレス
へのアクセスに使用される。即ち、DI、B2或はB3
フィールドの何れかを汎用レジスタの特定に使用できる
従ってドメイン記憶装置アクセス論理回路は、D1フィ
ールドを比較してそれが4乃至7の範囲内にあるレジス
タを特定しているか否かを決定する手段449、及びD
1フィールドが2乃至3の範囲内にあるかを決定する手
段450を含む。これらの手段はライン451を通して
D1フィールドの内容を受けるように接続されている。
B2フィールドの内容はライン452を通して手段45
3に供給されてB2が4乃至7の範囲内にあるか否かが
検出され、また手段454に供給されてB2乃至3の範
囲内にあるか否かが検出される。
B3フィールドはライン455を通して手段456に供
給されてB3が4乃至7の範囲内にあるか否かが決定さ
れ、また手段457に供給されてB3が2乃至3の範囲
内にあるか否かが決定される。明らかに、ドメインアク
セスペースレジスタのために用いられる汎用レジスタの
範囲は随意であり、ユーザーに適合する任意の範囲から
選択可能である。
ドメインアクセス制御レジスタ419からのビット2B
及び29の値に依存して、範囲4乃至7、成は2乃至3
の何れか、或は両者がドメインアドレスペースレジスタ
範囲として特定される。即ち、ANDゲート458はラ
イン447からのビット28及び手段449、の出力を
入力として受け、範囲4乃至7内のドメインアクセスペ
ースレジスタがフィールドD1によって特定されている
時に真出力を発生する。
ANDゲート459は入力として手段450の出力とラ
イン448上のドメインアクセス制御レジスタからのビ
ット29とを受け、範囲2乃至3内のドメインアドレス
ペースレジスタがフィールドDiによって特定されてい
る時に真出力を発生する。同様に、ANDゲート460
は手段453の出力とライン447からのビット28と
を入力として受け、ANDゲート462は手段456の
出力とライン447を通してドメインアクセス制御レジ
スタからのビット28とを受ける。ANDゲ−)460
及び462の出力は範囲4乃至7内のドメインアドレス
ペースレジスタがそれぞれフィールドD2或はD3によ
って特定されている時に真となる。
ANDゲート461及び463はそれぞれ手段454及
び456の出力と、ライン448を通してドメインアク
セス制御レジスタからのビット29とを入力して受けて
いる。ANDゲート461及び463の出力は、範囲2
乃至3内のドメインアドレスペースレジスタがそれぞれ
フィールドD2或はD3内に特定されている時に真とな
る。
ANDゲート458及び459の出力はうイン471に
供給され、フィールドDIにおいてドメインアドレスペ
ースレジスタを特定する命令フォーマットからのドメイ
ンアクセスを指示する。
ANDゲート461及び460の出力はライン472に
供給され、フィールドD2に関してドメインアドレスペ
ースレジスタを特定する命令フォーマットによるドメイ
ンアクセスを指示する。
ANDゲート462及び463の出力はうイン473に
供給され、フィールドD3に対してドメインアドレスペ
ースレジスタを特定する命令フォーマットからのドメイ
ン記憶装置アクセスを指示する。
ANDゲート464は入力としてライン440上のRR
フォーマット信号、ライン471上のD1フィールドド
メインアクセス信号、及びライン444上の0AR17
クセス信号(OARI)を受け、ライン474上のRR
フォーマットの第1オペランドへのドメインアクセスに
対して真出力を発生する。
ANDゲート465は入力としてライン440上のRR
フォーマット信号、ライン444上のOAR1アクセス
信号の否定、及びライン472上のD2フィールドドメ
インアクセス信号を受ける。ゲート465はライン47
4上に、D2フィールドからのドメインアクセスを特定
するRRフォーマット命令に対して、且つライン444
上の信号によって表わされる第1オペランドアクセスが
否定された時に真の出力を発生する。
ANDゲート466は、PREフォーマット内の命令が
、フィールドD2からのドメインアドレスに関するオペ
ランドアドレスレジスタからの第1のアクセスに対して
且つ命令の第1の流れが否定された時にライン474上
に真の出力を発生する。
ANDゲート467は、フィールドD3からドメインア
クセスが要求された時に命令の第1の流れの中のSSフ
ォーマットの命令に対して真の出力を発生する。この出
力はライン475に供給される。
ANDゲート468は、SSフォーマントの命令が供給
された時に、且つそれが第1のアドレスではなく、また
フィールドD3から特定されたドメインアドレスレジス
タに関する第1の流れではないと真の出力を発生する。
ANDゲート469は、SSフォーマットの命令が第1
の流れではなく且つライン476との信号が真である時
にSSフォーマットの命令に対してライン474上に出
力を発生する。
ANDゲート470は、あるドメインアドレスペースレ
ジスタがフィールドD3から特定された時、第1の0A
RIアクセス中に、RR,RRE及びSS以外の全ての
命令フォーマットに対してライン474上に真の信号を
発生する。
ANDゲート467の出力はライン475を通してドメ
イントリガラッチ477に供給され、ラッチ477はラ
イン476上に信号を供給してANDゲート469の出
力を制御する。
ライン474及び475上の信号はORゲート478に
供給され、ORゲート478はライン479上に出力を
発生する。ANDゲート480はライン479上の信号
、ライン445上のユーザー信号の否定、及びライン4
46上のDSA不能化信号の否定に応答して、ライン4
99上にドメイン記憶装置アクセス制御信号を発生する
ドメイン記憶装置アクセス制御信号(DSA)の設計式
は以下の通りである。
RRフォーマット&−1DSA不能化&]ユーザー&(
OARIアクセス&((D1=4ニア)&DACR<2
8>+ (D1=2 : 3)&DACR<29>)+
10AR1アクセス&CD2=4 : 7)&DACR
<28>+(D2=2 : 3)&D’ACR<29>
))+RREフォーマット&−IDSA不能化&]ユー
ザー&]DP I ST&0AR1アクセス[(D2=
4 : 7)&DACR<28>+(D2=2 : 3
)&DACR<29>)+SSフォーマット&−1DS
A不能化&]ユーザー& (DF I ST&0AR1
アクセス&((D3=4 : 7)&DACR<28>
+(D3=2 : 3)&DACR<29>+]DF 
I ST&]0AR1アクセス&((D3=4 : 7
)&DACR<28>+(D3二2 : 3)&DAC
R<29>+]DF I ST&0AR1アクセス&ド
メイントリガ)+−1RRフオーマツト&−IPREフ
ォーマント&−13Sフォーマット&−1DSA不能化
&]ユーザー&0AR1アクセス&((D3=4 : 
7)&DACR<28>+(D3=2 : 3)&DA
CR<29>)“]ユーザー”項は制御ステート、特に
FAMに対してドメインアドレッシングを許容するもの
である。
RRフォーマットに関して、第1記憶装置オペランド(
OARIアクセス)は命令のR1フィールドをDABR
として使用する。このフィールドはDi命令プラットホ
ームフィールド内に含まれる。項’D1=4 : 7″
はR1フィールドが4と7との間の値を有していること
を表わし、DACRビット28と論理積されてドメイン
記憶装置アクセスを付活する。同様に、“D1=2:3
”項はR1フィールドが2或は3の値を有していること
を表わし、DACRビット29と論理積されてDSAを
付活する。
RRフォーマット命令の第2記憶装置オペランド(]0
ARIアクセス)に関する「ドメイン記憶装置アクセス
」を付活するためにR2アドレス(D2命令プラットホ
ームフィールド内)はD2=4ニア項とDACRビット
28との論理積或はD2’=2:3項とDACRビット
29との論理積を有するDABRとして使用される。
PREフォーマット命令に対しては、R2フィールドは
第1命令サイクル(DF I ST)内のD2命令プラ
ットホームフィールドへ移動される。
従ってこのサイクルにおいてはPREフォーマットに関
する記憶装置要求は供給することができない。第1サイ
クル(]DFIST)の後、OAR1アクセス”で表わ
される記憶装置オペランドアクセスはD2フィールドを
DABRとして使用する。従ってD2=4 : 7及び
DACRビット28或はD2=2 : 3及びDACR
ビット29が[ドメイン記憶装置アクセス」を生じさせ
る。
SSフォーマット命令に関し;第1記憶装置オペランド
(OARLアクセス)は第1命令流(DFIST)内に
アクセスすることができる。
Blフィールドは命令プラットホームのD3フィールド
内に含まれる。従ってD3=4 : 7がDACRビッ
ト28と論理積されるか、或はD3=2:3がDACR
ビット29と論理積されて[ドメイン記憶装置アクセス
」を付活する。
第1命令流が終了すると、D3フィールドはB2データ
で更新され、B1データフィールドは失われる。「ドメ
イントリガ」と呼ばれるトリガは、もし「ドメイン記憶
装置アクセス」状態が活動であれば、このサイクルにお
いてセットされる。
「ドメイントリガ」は DFIST&−1ユーザー&SSフオーマツト&((D
3=4 : 7)&DACR<28>+ (D3=2 
: 3)&DACR<29>) によってセットされる。次で、第1記憶装置アクセス(
OARIアクセス)が発生すると、「ドメイントリガ」
がオンであれば「ドメイン記憶装置アクセス」が得られ
る。第2オペランド(−10ARIアクセス)に関して
は、B2フィールドが命令プラットホームのD3フィー
ルド内へ移動させられる。従って、第1命令流 (−1DFIST)の後は、「ドメイン記憶装置アクセ
ス」は、D3=4 : 7とDACRビット28との論
理積か、或はD3=2 : 3とDACRビ・ノド29
との論理積が活動の時に指示されることになる。
他の全ての命令フォーマットに対しては、1つの記憶装
置オペランドだけしか存在せず、これは命令のBl或は
B2フィールドの何れかであってよい。これは命令プラ
ットホームのD3フィールド内に存在している。従って
、これらのフォーマント(−1RRフォーマット&−1
PREフオーマツ141SSフオーマント)に対しては
、記憶装置アクセス(OARIアクセス)が活動の時に
B3−4ニアとDACRビット28との論理積、或はD
3=2 : 3とDACRビット29との論理積によっ
てイ1活される。
■、ドメインアクセスIIJ路例 「ドメインアクセス制御」は記憶ユニットへの種々の制
御信号を取扱う。制御ビットは、FAMエントリルーチ
ンの開始時にエミュレートされる命令の制御語から「ド
メインアクセス制御レジスタJ  (DACR)内へロ
ードされる。このレジスタはFAM中に「ロードDAC
RJによって変更することができる。これらの制御は基
本的には、FAMエントリの開始時に効力を有している
ドメイン或はユーザーPSWである「ドメインCPUス
テータスJ  (DCPUS)を無効にする。
DCPUSはシステムレジスタ16内にロードされる。
「ドメインアクセス制御」によって影舌を受けるアクセ
ス信号は以下の通りである。
−システム (ドメイン) 一仮想(実) 一アドレスモード 一アドレススペース 一キーチェック禁止 一部アドレス保護禁止 −PER記憶 各信号を用いて表わされる論理式は完全論理式の部分集
合であ、す、論理のドメイン記憶装置アクセス部分にの
み関係する。若干の式には特別例外のケースが存在し、
「−強制1項で示される。
この項は、実質的にDAC無効を無効にすることができ
る。「ドメインアクセス制御」論理回路を第5図に示す
第5図に示すように、命令プラットホーム501はライ
ン527を通して命令の一部を命令デコード手段532
(第3図の命令デコード手段332に対応する)に供給
する。命令デコード手段532はライン533上にシス
テム強制信号、ユーザー強制信号、実強制信号及び−次
強制信号を発生し、これらの信号は命令ユニット/記憶
ユニットインターフェイス論理回路534 (第3図の
ブロック334に対応)に供給される。
更に、ドメインCPUステータスレジスタ520はライ
ン540を通して制御信号をインターフェイス論理回路
534に供給する。ドメインアクセス制御レジスタ51
9はライン541を通してインターフェイス論理回路5
34に制御信号を供給する。ドメイン記憶装置アクセス
検出論理回路535はライン538上にドメイン記憶装
置アクセス信号DSAを発生してインターフェイス論理
回路534へ供給する。
インターフェイス論理回路534の出力は、ライン54
3上のシステムアクセス信号、ライン544上の仮想信
号、ライン542上のアドレスモード信号、ライン54
5上の二次アドレススペース信号、ライン546上のキ
ーチェック禁止信号、ライン547上の低アドレス保護
禁止信号、及びライン548上のプログラムイベント記
録信号(PER)を含む。
ANDゲート510及び511はライン543上にシス
テムアクセス信号を発生する論理回路を形成している。
ANDゲート510は、入力としてユーザー信号の否定
、DSA信号の否定、及びユーザー強制信号の否定を受
ける。
ANDゲート511はユーザー強制信号の否定、とシス
テム強制信号とを受けている。従ってライン543上の
システムアクセス信号は、システム強制信号が真で、ユ
ーザー強制信号が真でない場合に真となる。更に、もし
ドメイン記憶装置アクセス信号が真ではなく且つユーザ
ー信号が真でなければ、ユーザー強制信号が真でない時
にシステムアクセス信号が発生する。
ライン544上の仮想信号はANDゲート512の出力
から供給される。ANDゲート512の入力は、ユーザ
ー信号の否定、ドメイン記憶装置アクセス信号、ドメイ
ンCPUステータスビットT1 ドメインアクセス制御
レジスタのピッl−Tの否定、及び実強制信号の否定を
含む。
ライン542上のアドレスモード信号は、ANDゲート
513或はANDゲート514の出力が真の時に31ビ
ツトアクセスを表わす。
ANDゲート513への入力は、DSA信号、ドメイン
CPUステータス信号からのビットA、及びユーザー信
号の否定を含む。ANDゲート514の入力はDSA信
号、ドメインアクセス制御レジスタのピッ)A、及びユ
ーザー信号の否定を含む。
ライン545上の二次アドレススペース信号は、AND
ゲート515或はANDゲート516の出力が真の時に
真となる。ANDゲート515への入力は、ドメインC
PUステータスレジスタのビットE、ドメインアクセス
制御レジスタのビットS、ドメイン記憶装置アクセス信
号、−次強制信号の否定、及びユーザー信号の否定を含
む。
ANDゲート516への入力は、ユーザー信号の否定、
−次強制信号の否定及びドメイン記憶装置アクセス信号
を含む。更に、ドメインCPUステータス信号のビット
Pの否定及びANDゲート521の出力の否定も含まれ
る。ANDゲート521への入力はドメインCPUステ
ータスレジスタのビットE及びドメインアクセス制御レ
ジスタのビットPを含む。
ライン546上のキーチェック禁止信号はANDゲート
517の出力である。ANDゲート517の入力は、ユ
ーザー信号の否定、ドメイン記憶装置アクセス信号、及
びドメインアクセス制御レジスタのビットKを含む。
ライン547上の低アドレス保護禁止信号はANDゲー
ト518の出力から供給される。
ANDゲート518への入力は、ユーザー信号の否定、
ドメイン記憶装置アクセス信号、及びドメインアクセス
制御レジスタのビットLを含む。
ライン548上のプログラムイベント記録信号はAND
ゲート549の出力から供給される。
ANDゲート549への入力は、ユーザー信号の否定、
ドメイン記憶装置アクセス信号、ドメインCPUステー
タスレジスタのビットR1及びドメインアクセス制御レ
ジスタのビットRの否定を含む。
ドメインアクセス制御信号(DACR)及びドメインC
PUステータスレジスタ(DCPUS)によって影響を
受ける記憶ユニットからの制御信号を以下に要約説明す
る。
A、システムアクセス言 ライン543上のこの信号は、システムアドレスを有す
るシステムアドレススペースへのアクセスを表わす。こ
の信号はドメイン記憶装置アクセスに対して不能化され
なければならない。
システム=〔]]ユーザー&−IDsA+システム強制
〕&]ユーザー強 FAMにおいては、DSA信号はシステムアクセスを不
能化する。必要なシステムアクセスを特定する「システ
ム強制」項はDSA項を無効ならしめ、「ユーザー強制
」項はシステムアクセスを不能化する0強制項は相互に
排他的である。
B、仮置ヱ久鬼入量号 ライン544上のこの信号は現行の記憶装置アクセスが
グイナミソクアドレス移行を必要とするであろうことを
表わす。
仮想=]ユーザー&DSA&DCPUS−T&−IDA
CR&]実強制 FAMにおけるドメイン記憶装置アクセスに対しては、
仮想信号はDCPUSのTビットの制御下にある。しか
し、DACRのTピントはDCPUSのTビットを無効
ならしめて仮想アクセスを不能化する。実強制項も、実
記憶装置にアクセスするのに必要な特定オペランドに対
して仮想アクセスを不能化する。
C,アドレ女モードアクセス1号 ライン542上のこのビットは、活動すると31ビツト
記憶装置アクセスを表わし、そうでない場合には24ビ
ツトのアドレスを黙示する。
アドレスモード=]ユーザー&DSA&CDCPU5−
A+DACR−A) FAMにおけるドメイン記憶装置アクセスに関し:もし
DCPUSのAビット或はDACRのAビットが活動で
あれば、31ビツトのアドレッシングが活動となる。
D、二次アドレススペース言会 ライン545のこの信号は、活動した時に二次アドレス
スペースを指示し、それ以外は一次アドレススペースが
黙示される。
アドレススペース−]]ユーザー&DS/1−1−次強 制−1(DACR&DCPUS−EC)&IDCPU5
  P+DACRS&DCPUS−EC) FA、Mにおけるドメイン記憶装置アクセスに関し:こ
のアクセススペース信号は、オペランド記憶装置アクセ
スが与えられた命令に対して一次スペースアクセスを要
求(−次強制)しない限り、ドメインがECモード(D
CPUS−EC)であり且つDACRのSピッ!・が活
動である時に活動となる。また、オペランド記憶装置ア
クセスが一次スペースアクセスを要求しない限り、DC
PUSのPビットがオフで且つDACRのPビットか或
はDCPU、SのECビットの何れかがオフであっても
、アドレススペースは活動となる。
E、キーチェ・・り  君 ライン546上のこの信号が付活されると、記憶ユニッ
ト内の保護キーチェックを禁止する。
キーチェック禁止=]ユーザー&DSA&ACR−K FAMにおけるドメイン記憶装置アクセスに関し: D
ACRのにビットが活動である時、保護キーチェックが
禁止される。
F、LLLK入呆l漿止俣豆 ライン547上の、二の信号が活動であると、記憶装置
ユニット内の低アドレス保護(LAP)が禁止される。
LAP禁止=]ユーザー&DSA&DACR−FAMに
おけるドメイン記憶装置アクセスに関し: DACRの
Lビットが活動の時には低アドレス保護が禁止される。
G、記憶装置プログラムイベント記録(PER)信 ライン548上のこの信号は記憶ユニットへのインター
フェイス信号ではないが、FAM中のドメイン記憶装置
アクセスによって影響を受ける。
実際には、PERはシステムアドレスに対して禁止され
るから、FAM中に発生し得る記憶装置PERイベント
のみがドメイン記憶装置アクセスのためのものとなる。
記憶装置PER可能化=]ユーザー&DSA&DCPU
S−R&−10ACR−R FAM中のドメイン記憶装置アクセスに関し:記憶装置
PERはDCPUSのPビットの制御の下にある。しか
し、DACRのRビットがDCPUSのRビットを無効
ならしめて記憶装置PERを不能化する。
IV、FAMエントリラ  回 第6図及び第7図は、第2図のブロック223によって
示されているFAMエントリ試験回路の実施例を示す。
命令エミュレーションルーチンは(プログラム例外は殆
んど発生しないけれども)通常の命令実行の一部として
プログラム例外に対して試験しなければならない。これ
らのルーチンの効率を改善するために、本明細書ではエ
ミュレーションエントリルーチンの一部としてプログラ
ム例外試験を行うハードウェア技術を説明する。これら
の試験は −スーパーバイザステートが、エミュレーションされた
命令に対してFAMへのエントリ中にPSWによって特
定されているか否か、−エミュレートされた命令のオペ
ランドが必要な整列試験に合致するか否か、 −FAMエントリ命令が実行命令の標的であったか否か を指示する手段を提供する。
各試験は他の何れの試験の結果にも無関係に遂行される
。遂行される試験はエミュレートされる命令の制御語内
に特定される。もしFAMエントリ試験に失敗すれば、
特定システム汎用レジスタ(システムGPR3)内の関
連ビットがセットされ、FAMへのエントリモードは高
速エントリから通常エントリへ変更される。この場合、
エミュレーションルーチンのスタートへの分岐の代りに
、FAMエントリルーチンは代替としての共通ルーチン
(プログラム例外及び特別なケースに便益がある)へ分
岐する。
第6図に示すように、FAMエントリ試験論理回路62
3は、ライン624を通して制御ストアからFAMエン
トリ試験を指示するコードを受ける。スーパーバイザス
テート試験信号はスーパーバイザ試験制御回路630へ
供給される。スーパーバイザ試験制御回路は、エミュレ
ートされる命令に関するプログラムステータス語のビッ
ト15(プログラムステートがオンであるか否かを決定
する)を読む。もしオンであれば、試験の失敗がライン
631上の信号によって示される。ライン631上の信
号は制御ストア分岐論理回路214に供給されて、通常
エントリへの分岐に例外状態を処理させる。
更に、FAMエントリ試験は整列試験も遂行する。第1
オペランドを含む命令に対して、第1オペランドの整列
のための制御論理回路632が可能化される。命令パイ
プラインの流れの中で、オペランドのアドレスがBサイ
クルオペランドアドレスレジスタ(第2図の204)に
到達すると、ビット29乃至31が読出され、ブロック
633内において整列試験が遂行される。もし第1オペ
ランドの整列試験が失敗すれば、ライン631に信号が
供給されて制御ストアを通常エントリに強制する。同様
に、第2オペランドの整列は制御634への整列を通し
て可能化される。第2オペランドのアドレスがBサイク
ルオペランドアドレスレジスタに到達すると、ビット2
9乃至31が読取られ論理回路635において試験が遂
行される。もし試験が失敗すれば、ライン631上に信
号が発生する。
最後に、実行試験の標的は、高速エミュレーションへの
エントリ時に、命令がIBM/370動作原理によって
特定されているような実行命令に服している通常動作中
にセットされる実行モードトリガをチェックすることに
よって遂行される。
もしエントリ中に実行モードトリガがオンであればライ
ン631上に信号が供給されて制御ストアを通常エント
リへ強制する。
第7図は、第6図に示す高速エントリ試験のための試験
論理回路例の詳細を示す図である。
制御ストアからの命令制御語は、スーパーバイザ試験付
活ビット701.4ビット整列試験コード(整列l、ビ
ットl;整列1、ビットl;整列2、ビットφ;及び整
列2、ビット1を含む)を含む、更に、OPコードが命
令ユニット内のデコーダ704においてデコードされる
と、実行命令が供給された時に実行モードトリガ705
がセットされる。
スーパーバイザ試験論理回路は、制御語701からのス
ーパーバイザ試験付活ビットとプログラムステータス語
からのビット15とを入力として受けているANDゲー
ト706を含む。もし両ビットが印加されれば、スーパ
ーバイザ試験が失敗したことを表す信号がライン707
に発生する。
整列試験は人力として、制御ストアのブロック702か
ら整列1、ビットφ及びビット1を受け、また制御スト
アのブロック703から整列2、ビットφ及びビットl
を受け、これらはセレクタ708へ供給される。セレク
タは、第1オペランドアドレスの流れの間は整列1制御
語を、また第2オペランドアドレスの流れの間は整列2
制御語を選択する整列制御論理回路によって制御される
制御ストアからの整列試験制御信号は、後掲の表に特定
されているようにデコーダ7(15)においてデコード
される。
もし値がφφであればライン710を通して信号がAN
Dゲート711に供給される。ANDゲー)711の出
力は、遂行すべき整列試験が存在せず、従って試験が通
過したことを表わす。
もし選択されたコードがφ1であれば、ライン712を
通して信号がANDゲート713の一方の入力に供給さ
れる。ANDゲート713の他方の入力はオペランドア
ドレスレジスタのビット31の否定であり、半語整列に
関するチェックが遂行される。
もしデコーダ7(15)への選択された値が1ψであれ
ば、ライン714へ信号が供給されてANDゲート71
5への1人力として印加される。
ANDゲート715の他の入力はオペランドアドレスレ
ジスタからのビット30及び31を含む。
従ってANDゲート715の出力は全語整列チェックの
結果である。
もし選択されたコードの値が11であれば、ライン71
6上に信号が発生し、ANDゲート717への1人力と
して供給される。ANDゲート717の他の入力は、オ
ペランドアドレスレジスタのビット29.30及び31
が含まれる。従って二重の語整列チェックが遂行される
もし、ゲート711.713.715.717の何れか
の出力によって示されるように整列試験を通過すれば、
信号が発生する。
ANDゲート719.720及び721は整列試験失敗
トリガ722をセットするように組合わされている。整
列試験失敗トリガの値はライン707に供給されて整列
試験が失敗したことを表わす。ANDゲート719への
入力は、整列試験制御回路からの第1オペランドの試験
を表わすオペランド1試験制御信号と、ライン718か
らの整列試験通過信号の否定とを含む。
ANDゲート720への入力は、ライン718上の整列
試験通過信号の否定と、整列試験制御回路からのオペラ
ンド2試験制御信号とを含む。
ANDゲート?21への入力は、整列試験制御回路から
のオペランド2試験制御信号と整列試験失敗トリガ72
2の出力とを含む、ANDゲート719乃至721の何
れかの出力が真になると、整列試験失敗トリガ722が
セットされる。ライン707上の信号はORゲート72
3に供給されるので、もし何れかの試験に失敗すれば高
速エントリ論理回路(第2図の214へ信号が供給され
て高速エミュレーションへのエントリが不能化され、通
常のエントリが要求される。
更に、各試験の失敗は、ビットをシステム汎用レジスタ
724内に記憶させることによって表示される。
A、スーパーバイザ量゛ ある命令に対してこの機能が選択され、その命令がユー
ザーステートで実行されている時、もし現行のPSW(
プログラムステータス語)がオンであればニ ーFAMへの高速エントリの代りに通常エントリが発生
し、 一システムG P R3(1)が「1」にセットされる
スーパーバイザ試験は、エミュレートされる命令の制御
語内のあるビットによって付活される。
このビットは、プログラムステート中にエミュレートさ
れつつある特権命令を表わすPSWビ・ント15と論理
積され、スーパーバイザ試験を失敗せしめる。高速エン
トリは不能化され、通常エントリが可能化される。マク
ロコードは、エミュレートされた命令を実行するのでは
なく、通常エントリルーチンを通る環境に従って命令を
エミュレートする。マクロコードは、ハードウェア/マ
クロコードがスーパーバイザ試験の結果をシステムGr
’R3のビット1内に記憶しているので、スーパーバイ
ザ試験に失敗したことを知る。
B、整剋拭貌 特定の命令の特定のオペランドに関する整列試験に対し
であるモデルを設けることができる。もしこの機能があ
る命令オペランドに対して利用可能であり、また選択さ
れたものとすれば、制御ストアフィールドによって特定
される2ビツトのコードが整列試験の型を決定して命令
オペランドに対して実行される。考え得るコードの値と
試験の型は以下の通りである。
値     試    験 φφ   無チェック φ1   半語整列チェック lφ   全語整列チェック 11   二重の語整列チェック もし高速エントリ命令が整列試験に失敗すれば、−FA
Mへの高速エントリの代りに通常エントリが発生し、 一システムGPR3(φ)は1にセットされる。
l或は2命令オペランドに対する整列試験は、エミュレ
ートされる命令の制御語内のオペランド当り2ビツトに
よって付活される。記憶装置オペランドアドレスの関連
低位3ビツトが利用可能である場合には、適切な付活ビ
ットが選択される。
オペランドl整列試験は、RR及びssフォーマットを
除く全ての命令に使用される。オペランド2整列試験は
、エミュレートされるRR或はssフォーマット命令の
第2記憶装置オペランドに対して使用される。選択され
た2ビツトの付活コードはデコードされ、試験される関
連オペランドアドレスレジスタ(OAR)のビット(S
)と共にゲートされる。φφコードは整列試験を行わな
いことを表す。φ1コードはオペランドアドレスビット
31  (OPR31)を試験する。もしそれが1であ
れば試験は失敗である。値1φはオペランドアドレスビ
ット30及び31を試験する。もし何れかのビットが1
であれば整列試験は失敗である。最後に、11コードは
オペランドアドレスビット29.30及び31を試験す
る。もし何れかのビットが1であれば整列試験は失敗で
ある。
エミュレートされる記憶装置オペランドを2つ存する命
令の場合には、第2オペランドアドレスが試験されてい
る間(もし付活されていれば)、第1の試験の結果は「
整列試験失敗」トリガ内に保持される。もし何れかのオ
ペランドが整列試験に失敗すれば、高速エントリは不能
化され、通常エントリが行われる。マクロコードは、命
令を実行するのではなく、通常エントリルーチンを通る
環境に従って命令をエミュレートする。整列試験が失敗
するとシステムGPR3のビットφがセットされる。
C6天竹13(列(眞 G P R3(21は、もしFAMエントリ命令が「実
行」命令の標的であった場合には、1にセットされる。
もし1にセットされていなければFAMエントリ命令が
FAMへの高速エントリを生じさせていても、セットさ
れるとエントリモードは通常に切替えられる。
マクロコードは、命令をエミュレートする時、その命令
が実行命令の標的であるか否かを知らなければならない
。実行命令の通常処理中に、ハードウェアは「実行モー
ド」トリガをセットして当該命令が実行の標的であるこ
とを表示する。もしこのトリガがFAMエントリ中にオ
ンであれば、高速エントリは不能化され、通常エントリ
が行われ、そしてシステムGPR3のビット2はセット
される。
■、ま とめ 既存のマシン命令を用いる新規な命令のファームウェア
エミュレーションは、現存するマシンハードウェアを変
形することなく新らしい機能或は特色を導入する効果的
方策を提供する。これらの機能或は特色は、マクロコー
ド或はハードウェア制御点よりも高いレベルで実現され
、より大きい融通性を与える。このクラスのファームウ
ェアはマクロコードと呼ばれ、命令エミュレーシジンは
高速援助と呼ばれる。
本発明は、 1)多くエミュレーションルーチン試験を遂行するハー
ドウェア援助機構を提供し、それによって各エミュレー
ションルーチンにおける実行のサイクル数を減少させる
、 2) プログラム記憶装置へのアクセスを取扱うことが
可能な制御技術を限定し、それによって各エミュレーシ
ョンルーチンに必要な命令の数を減少させる、 3) プログラム記憶装置並びにエミュレーション記憶
装置への記憶装置アクセス中ドう能力を有する任意のマ
シン命令を作成するための機構を提供し、それによって
各エミュレーションルーチンに必要な命令の数を減少さ
せる ことによって、命令エミュレーションルーチンを改善す
る。
以上に特定の実施例に基いて本発明を説明した。
当業者ならば、上述の実施例には多くの変化及び変形を
施し得ること、及びこれらは本発明の思想の中に入るも
のであることが理解されよう。本発明の範囲は特許請求
の範囲のみによって限定される。
【図面の簡単な説明】
第1図は、本発明を実施するデータ処理装置の概要ブロ
ックダイヤグラムであり、 第2図は、エミュレーションプログラムへのエントリ中
のデータの流れを示す概要ブロックダイヤグラムであり
、 第3図は、記憶装置アクセス中のデータの流れを示す概
要ブロックダイヤグラムであり、第4図は、黙示的ドメ
イン記憶装置アクセスの論理回路例のより詳細な図であ
り、 第5図は、ドメイン記憶装置アクセス中の命令ユニット
・記憶ユニットインターフェイスの論理図であり、 第6図は、エミュレーションプログラムへツエントリ中
に遂行される試験を示す概要図であり、第7図は、エミ
ュレーションプログラムへのエントリ中に遂行される試
験回路例の論理図である。 10・・・命令ユニット/実行ユニソl−111・・・
キャッシュ記憶ユニット、12・・・主記憶装置、13
.14.15・・・ドメイン記憶装置、16・・・シス
テム記憶装置、18.2o・・ ・バス、2(14)・
・・パイプライン、20f。 301.401.501・・・Dサイクル命令レジスタ
(プラットホーム)、202・・・オペランド発生手段
、203.303・・・Aサイクル実効アドレスレジス
タ、204.304・・・Bサイクルオペランドアドレ
スレジスタ、205・・・Xサイクルレジスタ(オペラ
ンド語レジスタ)、206・・・Wサイクルレジスタ(
結果レジスタ)、207・・・制御レジスタ群、2(1
5)・・・制御ストアアドレス発生手段、211・・・
制御ストア、212・・・制御コード、214・・・分
岐アドレス発生手段、216・・・レジスタ、217・
・・セレクタ、218.318・・・加算器、219.
319.419.519・・・DACレジスタ(DAC
R) 、220.320.520・・・ドメインCPυ
ステータスレジスタ(DCPUS) 、221.321
・・・プログラムステータス語レジスタ(PSW) 、
223・・・高速エントリ試験回路、226.326・
・・汎用レジスタ、331・・・記憶ユニット、332
.432.532・・・命令デコード手段、334.5
34・・・命令ユニット/記憶ユニットインターフェイ
ス論理回路、335.535・・・ドメイン記憶装置ア
クセス検出論理回路、348.349・・・レジスタ、
350・・・セレクタ、351・・・コンパレータ、3
53・・・移行ルックアサイドバッファ、354・・・
ドメインベース調整機構、356.357・・・制御レ
ジスタ、358・・・セレクタ、361.362・・・
レジスタ、364・・・低アドレス保護検出回路、44
9.450.453.454.456.457・・・範
囲検出手段、630・・・スーパーバイザ制御回路、6
32・・・整列1制御回路、633・・・整列l試験回
路、634・・・整列2制御回路、635・・・整列2
試験回路、701・・・スーパーバイザ試験付活ビット
、702.703・・・制御ストアのブロック、704
・・・デコーダ、705・・・実行モードトリガ、70
8・・・セレクタ、7(15)・・・デコーダ、722
・・・整列試験失敗トリガ、724・・・汎用レジスタ

Claims (15)

    【特許請求の範囲】
  1. (1)プログラム制御の下に、第1のドメイン記憶スペ
    ースを含む装置内の機器のドメインを有する第1のステ
    ート、或は第2のドメイン記憶スペースを含む装置内の
    機器の第2のドメインを有する第2のステートの何れか
    のステートにおいて動作可能であって、通常は第1のス
    テートにおいて、第2のドメイン内の命令のプログラム
    を実行する第2のステートへの分岐をもたらす命令を含
    む命令のシーケンスを処理しているデータ処理装置であ
    って: 第1及び第2のステートにおいて命令を受けるように接
    続され、複数のフィールドの中の少なくとも1つのフィ
    ールドが1つのオペランドのアドレス情報の位置を識別
    する命令レジスタ;第1のステートにおいて命令に応答
    してその命令をデコードし、分岐信号及びドメインアク
    セス付活信号を含む制御コードを発生するデコード手段
    ; 分岐信号を受けるように接続され、該信号に応答して装
    置のプログラム制御を第2のステートへ分岐せしめ、第
    2のドメイン内の命令のプログラムへ進入せしめる手段
    ; ドメインアクセス付活信号及び命令のプログラム内の各
    命令内の1つのフィールドに応答して第1のドメインア
    クセス信号を発生するインターフェイス手段; 命令レジスタと通信してオペランドのアドレスを供給す
    るアドレッシング手段;及び 第1のドメインアクセス信号及びアドレスを受けるよう
    に接続され、オペランドを第1及び第2のドメイン記憶
    スペースからのアドレスによって識別される位置に記憶
    し、第1のドメインアクセス信号に応答して第2のステ
    ート内の命令の処理中にアドレスを第1のドメイン記憶
    スペースへ移行させる手段を含む記憶装置手段を具備す
    る装置。
  2. (2)1つのフィールドによって識別される位置はシス
    テム汎用レジスタであり;第1のドメインアクセス信号
    を発生する手段は、 この1つのフィールドによって識別される汎用レジスタ
    が予め選択された汎用レジスタの範囲内に入るか否かを
    決定する手段 を含む特許請求の範囲(1)項記載の装置。
  3. (3)第1のステートはユーザードメイン記憶スペース
    へのアクセスを有するユーザーステートであり、第2の
    ステートはシステム記憶スペースへのアクセスを有する
    制御ステートである特許請求の範囲(1)項記載の装置
  4. (4)第2のドメイン内の命令のプログラムは、第1の
    ステートにおける命令の実行をエミュレートする特許請
    求の範囲(1)項記載の装置。
  5. (5)記憶装置手段へのアクセスを制御するためのプロ
    グラムステータス語を発生する手段を含み;制御コード
    はドメインアクセス制御信号をも含み;装置は 第2のステートへ分岐した時にドメインアクセス制御信
    号を受けるように接続され、第2のステートにおける命
    令のプログラムの実行中ドメインアクセス付活信号及び
    ドメインアクセス制御信号を保持するドメインアクセス
    制御レジスタ手段; 第2のステートへの分岐を生じさせる第1のステートに
    おける命令に対するプログラムステート語からのステー
    タス表示を受けるように接続され、第2のステートにお
    ける命令のプログラムの実行中そのステータスを保持す
    るドメインステータスレジスタ手段 をも含み;また インターフェイス手段はドメインアクセス制御レジスタ
    手段、ドメインステータスレジスタ手段、及び記憶装置
    手段とも通信し、ステータス表示及びドメインアクセス
    制御信号に応答して第2のステートにおける命令のプロ
    グラムの実行中記憶装置アクセス制御信号を発生する特
    許請求の範囲(1)項記載の装置。
  6. (6)制御コードは分岐試験信号をも含み;装置は分岐
    試験信号を受けるように接続され、第2のステートへ分
    岐した時にプログラム例外に関する試験を遂行する手段
    ;及び プログラム例外に応答して命令の代替プログラムへ分岐
    せしめる手段 をも含む特許請求の範囲(1)項記載の装置。
  7. (7)プログラム制御の下に、第1のドメイン記憶スペ
    ースを含む装置内の機器の第1のドメインを有する第1
    のステート、或は第2のドメイン記憶スペースを含む装
    置内の機器の第2のドメインを有する第2のステートの
    何れかのステートにおいて動作可能であって、通常は第
    1のステートにおいて、第2のドメイン内の命令のプロ
    グラムを実行する第2のステートへの分岐をもたらす命
    令を含む命令のシーケンスを処理しているデータ処理装
    置であって: 第1及び第2のステートにおいて命令を受けるように接
    続され、複数のフィールドの中の少なくとも1つのフィ
    ールドが1つのオペランドのアドレス情報の位置を識別
    する命令レジスタ;第1のステートにおいて命令に応答
    してその命令をデコードし、分岐信号及びドメインアク
    セス制御信号を含む制御コードを発生するデコード手段
    ; 分岐信号を受けるように接続され、該信号に応答して装
    置のプログラム制御を第2のステートへ分岐せしめ、エ
    ミュレーションプログラムへ進入せしめる手段; 第2のステートへ分岐した時にドメインアクセス制御信
    号を受けるように接続され、第2のステートにおける命
    令のプログラムの実行中ドメインアクセス制御信号を保
    持するドメインアクセス制御レジスタ手段; 命令レジスタと通信してオペランドのアドレスを供給す
    るアドレッシング手段; アドレスを受けるように接続され、オペランドを第1及
    び第2のドメイン記憶スペースからのアドレスによって
    識別される位置に記憶し、アクセス制御信号に応答して
    アドレスを移行させる手段を含む記憶装置手段;及び ドメインアクセス制御レジスタ手段、命令レジスタ、及
    び記憶装置手段と通信し、ドメインアクセス制御信号及
    び命令の1つのフィールドに応答して命令のプログラム
    の実行中アクセス制御信号を発生するインターフェイス
    手段 を具備する装置。
  8. (8)1つのフィールドによって識別される位置はシス
    テム汎用レジスタであり;インターフェイス手段は、 この1つのフィールドによって識別される汎用レジスタ
    が予め選択された汎用レジスタの範囲内に入るか否かを
    決定する手段 を含む特許請求の範囲(7)項記載の装置。
  9. (9)第1のステートはユーザードメイン記憶スペース
    へのアクセスを有するユーザーステートであり、第2の
    ステートはシステム記憶スペースへのアクセスを有する
    制御ステートである特許請求の範囲(7)項記載の装置
  10. (10)第2のドメイン内の命令のプログラムは、第1
    のステートにおける命令の実行をエミュレートする特許
    請求の範囲(7)項記載の装置。
  11. (11)記憶装置手段へのアクセスを制御するためのプ
    ログラムステータス語を発生する手段を含み;更に 第2のステートへの分岐を生じさせる第1のステートに
    おける命令に対するプログラムステータス語からのステ
    ータス表示を受けるように接続され、第2のステートに
    おける命令のプログラムの実行中そのステータス表示を
    記憶するドメインステータスレジスタ手段 をも含み;また更に インターフェイス手段はドメインステータスレジスタ手
    段とも通信し、ステータス表示に応答して記憶装置アク
    セス制御信号を発生する特許請求の範囲(7)項記載の
    装置。
  12. (12)制御コードは分岐試験信号をも含み;装置は分
    岐試験信号を受けるように接続され、第2のステートへ
    分岐した時にプログラム例外に関する試験を遂行する手
    段;及び プログラム例外に応答して命令の代替プログラムへ分岐
    せしめる手段 をも含む特許請求の範囲(7)項記載の装置。
  13. (13)プログラム制御の下に、ドメイン記憶スペース
    を含む装置内の機器のユーザードメインを有するユーザ
    ーステート、或はシステム記憶スペースを有する制御ス
    テートの何れかのステートにおいて動作可能であり;こ
    れらの記憶スペースへのアクセスを制御するための命令
    の実行に応答してプログラムステータス語を発生する手
    段を有し;通常はユーザーステートにおいて、システム
    記憶スペース内の命令のエミュレーションプログラムを
    実行する制御ステートへの分岐をもたらす命令を含む命
    令のシーケンスを処理しているデータ処理装置であって
    : ユーザーステート及び制御ステートにおいて命令を受け
    るように接続され、複数のフィールドの中の少なくとも
    1つのフィールドが1つのオペランドのアドレス情報の
    位置を識別する命令レジスタ; ユーザーステートにおいて命令に応答してその命令をデ
    コードし、分岐信号及びドメインアクセス制御信号を含
    む制御コードを発生するデコード手段; 分岐信号を受けるように接続されていて該信号に応答し
    て装置のプログラム制御を制御ステートへ分岐せしめ、
    エミュレーションプログラムへ進入せしめる手段; 制御ステートへ分岐した時にドメインアクセス制御信号
    を受けるように接続され、エミュレーションプログラム
    の実行中ドメインアクセス制御信号を保持するドメイン
    アクセス制御レジスタ手段; 制御ステートにおいてエミュレートされつつあるユーザ
    ーステートにおける命令に対するプログラムステータス
    語からのステータス表示を受けるように接続され、エミ
    ュレーションプログラムの実行中ステータス表示を保持
    するドメインステータスレジスタ手段; 命令レジスタと通信してオペランドのアドレスを供給す
    るアドレッシング手段; アクセス制御信号及びアドレスを受けるように接続され
    、オペランドをユーザードメイン記憶スペース及びシス
    テム記憶スペースからのアドレスによって識別される位
    置に記憶し、アクセス制御信号に応答してアドレスを移
    行させる手段を含む記憶装置手段;及び ドメインアクセス制御レジスタ手段、ドメインステータ
    スレジスタ手段、及び記憶装置手段と通信し、ステータ
    ス表示及びドメインアクセス制御信号に応答して命令の
    エミュレーションプログラムの実行中アクセス制御信号
    を発生するインターフェイス手段 を具備する装置。
  14. (14)インターフェイス手段は、 命令レジスタの1つのフィールド及びドメインアクセス
    制御信号の少なくとも一部分に応答してユーザードメイ
    ンアクセス信号を発生する手段;及び アドレスを移行させる手段と通信し、ユーザードメイン
    アクセス信号に応答してアドレスをユーザードメインア
    ドレスとして解釈する手段をも含む特許請求の範囲(1
    3)項記載の装置。
  15. (15)1つのフィールドによって識別される位置はシ
    ステム汎用レジスタであり、ユーザードメインアクセス
    信号を発生する手段は、 この1つのフィールドによって識別される汎用レジスタ
    が予め選択された汎用レジスタの範囲内に入るか否かを
    決定する手段 を含む特許請求の範囲(14)項記載の装置。
JP62259415A 1986-10-14 1987-10-14 データ処理装置 Expired - Lifetime JP2730896B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/918,491 US4785392A (en) 1986-10-14 1986-10-14 Addressing multiple storage spaces
US918491 1986-10-14

Publications (2)

Publication Number Publication Date
JPS63191233A true JPS63191233A (ja) 1988-08-08
JP2730896B2 JP2730896B2 (ja) 1998-03-25

Family

ID=25440469

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62259415A Expired - Lifetime JP2730896B2 (ja) 1986-10-14 1987-10-14 データ処理装置

Country Status (10)

Country Link
US (1) US4785392A (ja)
EP (1) EP0264216B1 (ja)
JP (1) JP2730896B2 (ja)
KR (1) KR940009097B1 (ja)
AU (1) AU600040B2 (ja)
CA (1) CA1271262A (ja)
DE (1) DE3750806T2 (ja)
DK (1) DK171728B1 (ja)
NO (1) NO174943C (ja)
NZ (1) NZ221667A (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5210832A (en) * 1986-10-14 1993-05-11 Amdahl Corporation Multiple domain emulation system with separate domain facilities which tests for emulated instruction exceptions before completion of operand fetch cycle
US5123101A (en) * 1986-11-12 1992-06-16 Xerox Corporation Multiple address space mapping technique for shared memory wherein a processor operates a fault handling routine upon a translator miss
JPS6488844A (en) * 1987-09-30 1989-04-03 Takeshi Sakamura Data processor
US5008811A (en) * 1988-02-10 1991-04-16 International Business Machines Corp. Control mechanism for zero-origin data spaces
US5187793A (en) * 1989-01-09 1993-02-16 Intel Corporation Processor with hierarchal memory and using meta-instructions for software control of loading, unloading and execution of machine instructions stored in the cache
EP0510429A3 (en) * 1991-04-24 1993-12-01 Ibm Millicode register management system
US5226164A (en) * 1991-04-24 1993-07-06 International Business Machines Corporation Millicode register management and pipeline reset
FR2678401A1 (fr) * 1991-06-28 1992-12-31 Philips Electronique Lab Dispositif de traitement de l'information plus particulierement adapte a un langage chaine, du type forth notamment.
US5584042A (en) * 1993-06-01 1996-12-10 International Business Machines Corporation Dynamic I/O data address relocation facility
JPH06348584A (ja) * 1993-06-01 1994-12-22 Internatl Business Mach Corp <Ibm> データ処理システム
US5574887A (en) * 1993-09-20 1996-11-12 Apple Computer, Inc. Apparatus and method for emulation routine pointer prefetch
US5408622A (en) * 1993-09-23 1995-04-18 Apple Computer, Inc. Apparatus and method for emulation routine control transfer via host jump instruction creation and insertion
US5577231A (en) * 1994-12-06 1996-11-19 International Business Machines Corporation Storage access authorization controls in a computer system using dynamic translation of large addresses
US6093213A (en) * 1995-10-06 2000-07-25 Advanced Micro Devices, Inc. Flexible implementation of a system management mode (SMM) in a processor
US6385712B1 (en) * 1999-10-25 2002-05-07 Ati International Srl Method and apparatus for segregation of virtual address space
US7694302B1 (en) 2001-04-05 2010-04-06 Network Appliance, Inc. Symmetric multiprocessor synchronization using migrating scheduling domains
US7373640B1 (en) 2003-07-31 2008-05-13 Network Appliance, Inc. Technique for dynamically restricting thread concurrency without rewriting thread code
US8171480B2 (en) * 2004-01-27 2012-05-01 Network Appliance, Inc. Method and apparatus for allocating shared resources to process domains according to current processor utilization in a shared resource processor
US8347293B2 (en) * 2005-10-20 2013-01-01 Network Appliance, Inc. Mutual exclusion domains to perform file system processes on stripes
US8055886B2 (en) * 2007-07-12 2011-11-08 Texas Instruments Incorporated Processor micro-architecture for compute, save or restore multiple registers and responsive to first instruction for repeated issue of second instruction

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5576447A (en) * 1978-12-01 1980-06-09 Fujitsu Ltd Address control system for software simulation
JPS5633736A (en) * 1979-08-25 1981-04-04 Fujitsu Ltd Simulation system for virtual computer

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4503501A (en) * 1981-11-27 1985-03-05 Storage Technology Corporation Adaptive domain partitioning of cache memory space
JPS6057438A (ja) * 1983-09-08 1985-04-03 Hitachi Ltd 仮想計算機システム制御装置
AU571377B2 (en) * 1985-11-13 1988-04-14 Fujitsu Limited Main storage access control system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5576447A (en) * 1978-12-01 1980-06-09 Fujitsu Ltd Address control system for software simulation
JPS5633736A (en) * 1979-08-25 1981-04-04 Fujitsu Ltd Simulation system for virtual computer

Also Published As

Publication number Publication date
NO174943C (no) 1994-08-03
DK537987A (da) 1988-04-15
EP0264216A2 (en) 1988-04-20
AU600040B2 (en) 1990-08-02
CA1271262A (en) 1990-07-03
KR880005517A (ko) 1988-06-29
DK537987D0 (da) 1987-10-14
JP2730896B2 (ja) 1998-03-25
DK171728B1 (da) 1997-04-14
AU7971387A (en) 1988-04-21
DE3750806T2 (de) 1995-06-22
NO174943B (no) 1994-04-25
NZ221667A (en) 1989-05-29
DE3750806D1 (de) 1995-01-12
NO874135D0 (no) 1987-10-01
US4785392A (en) 1988-11-15
KR940009097B1 (ko) 1994-09-29
EP0264216B1 (en) 1994-11-30
EP0264216A3 (en) 1991-10-23
NO874135L (no) 1988-04-15

Similar Documents

Publication Publication Date Title
JPS63191233A (ja) データ処理装置
US5210832A (en) Multiple domain emulation system with separate domain facilities which tests for emulated instruction exceptions before completion of operand fetch cycle
US4177510A (en) Protection of data in an information multiprocessing system by implementing a concept of rings to represent the different levels of privileges among processes
US4945480A (en) Data domain switching on program address space switching and return
US4347565A (en) Address control system for software simulation
US4521846A (en) Mechanism for accessing multiple virtual address spaces
US7793286B2 (en) Methods and systems to manage machine state in virtual machine operations
US7631196B2 (en) Method and apparatus for loading a trustable operating system
JPS6022377B2 (ja) アドレス制御方式
JP4295111B2 (ja) メモリ管理システム及び線形アドレスに基づいたメモリアクセスセキュリティ付与方法
US3825903A (en) Automatic switching of storage protect keys
TW200403586A (en) Control register access virtualization performance improvement in the virtual-machine architecture
JPH0242569A (ja) ベクター処理システムに用いる文脈スイッチング方法及び装置
US5339417A (en) Computer system with two levels of guests
JP2005521941A (ja) コンパートメント化されたセキュリティのための入出力許可ビットマップ
JPS60171552A (ja) アドレス変換処理方法
US5280592A (en) Domain interlock
US5179691A (en) N-byte stack-oriented CPU using a byte-selecting control for enhancing a dual-operation with an M-byte instruction word user program where M&lt;N&lt;2M
JPS63191232A (ja) エミュレーションへの高速エントリ
EP1901171A1 (en) Apparatus and method for handling interrupt disabled section and page pinning apparatus and method
JPS61160160A (ja) 仮想計算機システムにおけるアドレツシング制御装置
JP2535086B2 (ja) リング削減ロジック装置
US6289439B1 (en) Method, device and microprocessor for performing an XOR clear without executing an XOR instruction
JPH0412861B2 (ja)
EP0550285A2 (en) Machine with two units of operation