JPS6313223B2 - - Google Patents
Info
- Publication number
- JPS6313223B2 JPS6313223B2 JP59078786A JP7878684A JPS6313223B2 JP S6313223 B2 JPS6313223 B2 JP S6313223B2 JP 59078786 A JP59078786 A JP 59078786A JP 7878684 A JP7878684 A JP 7878684A JP S6313223 B2 JPS6313223 B2 JP S6313223B2
- Authority
- JP
- Japan
- Prior art keywords
- microprocessor
- control
- memory
- storage module
- instruction
- 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/3017—Runtime instruction translation, e.g. macros
-
- 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/22—Microcontrol or microprogram arrangements
- G06F9/26—Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
-
- 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/3802—Instruction prefetching
-
- 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/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a secondary processor, e.g. coprocessor
-
- 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/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a secondary processor, e.g. coprocessor
- G06F9/3879—Concurrent instruction execution, e.g. pipeline or look ahead using a secondary processor, e.g. coprocessor for non-native instruction execution, e.g. executing a command; for Java instruction set
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)
- Multi Processors (AREA)
- Advance Control (AREA)
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、メイン・フレーム(汎用計算機)を
エミユレートするマルチ・マイクロプロセツサ式
データ処理システムの、記憶装置選択機構に係
り、更に詳細に説明すれば、このようなシステム
における制御記憶と主記憶の間の選択方式を改善
することに係る。
エミユレートするマルチ・マイクロプロセツサ式
データ処理システムの、記憶装置選択機構に係
り、更に詳細に説明すれば、このようなシステム
における制御記憶と主記憶の間の選択方式を改善
することに係る。
マイクロプロセツサを使用してメインフレーム
のエミユレーシヨンを行うことは現実のものとな
つている。代表的なメインフレームとして、
IBMシステム/370(S/370)のいずれかのモデ
ルを使用することができる。IBM社のPC/
XT370(デイスクトツプ・システム/370)も、
このような、マイクロプロセツサで実現したメイ
ンフレームの一例である。この特定のデイスクト
ツプ・システムはハードウエア及びソフトウエア
のパツケージであつて、単一ユーザ環境でシステ
ム/370アプリケーシヨン・プログラムを実行し
たり、このシステムをメインフレームのホストに
接続されたターミナルとして動作させたり、また
特定のアプリケーシヨンによる要請に応じて独立
モードで動作させることができる。もちろん、他
の製造業者の類似のシステムもあるが、それらの
システムの全てには程度の差はあれPC/XT370
と同じ多くの機能が含まれている。
のエミユレーシヨンを行うことは現実のものとな
つている。代表的なメインフレームとして、
IBMシステム/370(S/370)のいずれかのモデ
ルを使用することができる。IBM社のPC/
XT370(デイスクトツプ・システム/370)も、
このような、マイクロプロセツサで実現したメイ
ンフレームの一例である。この特定のデイスクト
ツプ・システムはハードウエア及びソフトウエア
のパツケージであつて、単一ユーザ環境でシステ
ム/370アプリケーシヨン・プログラムを実行し
たり、このシステムをメインフレームのホストに
接続されたターミナルとして動作させたり、また
特定のアプリケーシヨンによる要請に応じて独立
モードで動作させることができる。もちろん、他
の製造業者の類似のシステムもあるが、それらの
システムの全てには程度の差はあれPC/XT370
と同じ多くの機能が含まれている。
チツプ密度及び実装技術の革命的な進歩、及び
それに伴なう価格の大幅な低減により、現在では
多くのメインフレームの機能をデイスクトツプ・
システムで直接実現できるが、他の機能を利用す
るためには、ハードウエア及び/またはソフトウ
エアの何らかの支援が必要である。例えば、
Intel社の8086及び8088やMotorola社の68000の
ような、より強力なマイクロプロセツサを使用す
ればデイスクトツプ・メインフレームで実現可能
な機能のリストを更に拡張することができる。こ
の新しい系統のマイクロプロセツサは、システ
ム/370の命令セツトのような、豊富な命令セツ
トを完全に実行することができるが、それらのマ
イクロプロセツサの幾つかは、許容し得る期間内
に、命令を実行するために追加されたハードウエ
ア及び/またはソフトウエアの支援を必要とす
る。これらのマイクロプロセツサが提供する機能
は著しいものがあるが、これらは何らかの妥協な
しにはメインフレームの全ての能力を提供するこ
とはできない。
それに伴なう価格の大幅な低減により、現在では
多くのメインフレームの機能をデイスクトツプ・
システムで直接実現できるが、他の機能を利用す
るためには、ハードウエア及び/またはソフトウ
エアの何らかの支援が必要である。例えば、
Intel社の8086及び8088やMotorola社の68000の
ような、より強力なマイクロプロセツサを使用す
ればデイスクトツプ・メインフレームで実現可能
な機能のリストを更に拡張することができる。こ
の新しい系統のマイクロプロセツサは、システ
ム/370の命令セツトのような、豊富な命令セツ
トを完全に実行することができるが、それらのマ
イクロプロセツサの幾つかは、許容し得る期間内
に、命令を実行するために追加されたハードウエ
ア及び/またはソフトウエアの支援を必要とす
る。これらのマイクロプロセツサが提供する機能
は著しいものがあるが、これらは何らかの妥協な
しにはメインフレームの全ての能力を提供するこ
とはできない。
従つて、全てのデータ処理システムの設計がそ
うであるように、これらのマイクロプロセツサに
よつて実現されるデイスクトツプ・メインフレー
ムの価格とパフオーマンスを最適化するための
種々のトレード・オフが行なわれる。トレード・
オフ上の1つの問題は、この種のデイスクトツ
プ・メインフレームで提供するのが特に困難な、
メインフレームの或る機能を利用する要請が強
い、ということである。トレード・オフ上のもう
1つの問題は、ユーザ・プログラムをそのまま実
行しうるように、エミユレートされるメインフレ
ームの全てのアーキテクチヤ上の制約を固守しな
ければならない、ということである。前記のよう
なトレード・オフに起因する実現上の1つの問題
は、マイクロプロセツシング・ユニツト(MPU)
の相対的に小さい制御記憶の中に、メインフレー
ム中央処理ユニツト(CPU)の相対的に大きい
制御記憶の能力及び融通性を収容しなければなら
ない、ということである。システム/370の世界
では、例えば、モデル138の制御記憶は、代表的
なMPUチツプの使用可能な制御記憶よりも約50
倍大きい。このように制御記憶容量の不均衡があ
る場合、MPUの制御記憶に書込まれるマイクロ
コードの量びタイプが重要となる。
うであるように、これらのマイクロプロセツサに
よつて実現されるデイスクトツプ・メインフレー
ムの価格とパフオーマンスを最適化するための
種々のトレード・オフが行なわれる。トレード・
オフ上の1つの問題は、この種のデイスクトツ
プ・メインフレームで提供するのが特に困難な、
メインフレームの或る機能を利用する要請が強
い、ということである。トレード・オフ上のもう
1つの問題は、ユーザ・プログラムをそのまま実
行しうるように、エミユレートされるメインフレ
ームの全てのアーキテクチヤ上の制約を固守しな
ければならない、ということである。前記のよう
なトレード・オフに起因する実現上の1つの問題
は、マイクロプロセツシング・ユニツト(MPU)
の相対的に小さい制御記憶の中に、メインフレー
ム中央処理ユニツト(CPU)の相対的に大きい
制御記憶の能力及び融通性を収容しなければなら
ない、ということである。システム/370の世界
では、例えば、モデル138の制御記憶は、代表的
なMPUチツプの使用可能な制御記憶よりも約50
倍大きい。このように制御記憶容量の不均衡があ
る場合、MPUの制御記憶に書込まれるマイクロ
コードの量びタイプが重要となる。
このメインフレームとMPUの制御記憶容量の
差異は、MPUによつて実現されたメインフレー
ムのパフオーマンスに悪影響を与えることを意味
する。というのは、(1)命令を処理するために
MPUのオンチツプ制御記憶の外部を参照するこ
とが応々にして必要になるからであり、また(2)マ
ルチMPUによつて実現されたシステムでは、命
令を実行するため、または制御記憶や命令取出用
MPUのレジスタに存在するアーキテクチヤ情報
を得るため命令取出用MPUから他のMPUに制御
を渡すことが必要となる場合があるからである。
差異は、MPUによつて実現されたメインフレー
ムのパフオーマンスに悪影響を与えることを意味
する。というのは、(1)命令を処理するために
MPUのオンチツプ制御記憶の外部を参照するこ
とが応々にして必要になるからであり、また(2)マ
ルチMPUによつて実現されたシステムでは、命
令を実行するため、または制御記憶や命令取出用
MPUのレジスタに存在するアーキテクチヤ情報
を得るため命令取出用MPUから他のMPUに制御
を渡すことが必要となる場合があるからである。
システム/370や他の多くのメインフレームで
は、主記憶は、アーキテクチヤ上ユーザに専属す
るものと定義されている。このことは、システム
制御プログラム自体又はプロセツサ間のインタフ
エースにより変更されることはなく、従つて主記
憶を制御またはスクラツチパツド機能のために使
用することはできない。更に、現在のMPUでは
アドレス・バスが制限されているために、メイン
フレームの仮想及び制御記憶モジユールに等価な
独立実体を定義するに十分なビツトがない。従つ
て、主記憶と制御記憶の間のアクセスを指向
(steering)する目的にだけ、1つまたはそれ以
上のアドレス線を割当てるのは実際的ではない。
もちろん、メインフレームは、十分なアドレツシ
ンク能力を有し、かつそのマイクロコードの全て
を収容するとともに必要とするスクラツチパツド
領域を設けるのに十分な大きさの制御記憶モジユ
ールを持つているので、これらの問題には対処し
なくてもよい。
は、主記憶は、アーキテクチヤ上ユーザに専属す
るものと定義されている。このことは、システム
制御プログラム自体又はプロセツサ間のインタフ
エースにより変更されることはなく、従つて主記
憶を制御またはスクラツチパツド機能のために使
用することはできない。更に、現在のMPUでは
アドレス・バスが制限されているために、メイン
フレームの仮想及び制御記憶モジユールに等価な
独立実体を定義するに十分なビツトがない。従つ
て、主記憶と制御記憶の間のアクセスを指向
(steering)する目的にだけ、1つまたはそれ以
上のアドレス線を割当てるのは実際的ではない。
もちろん、メインフレームは、十分なアドレツシ
ンク能力を有し、かつそのマイクロコードの全て
を収容するとともに必要とするスクラツチパツド
領域を設けるのに十分な大きさの制御記憶モジユ
ールを持つているので、これらの問題には対処し
なくてもよい。
マルチMPUによつて実現されたメインフレー
ム・システムでは、大きな制御記憶空間の不足を
解決するために、ハードウエアの支援またはその
幾つかの組合せにより、マイクロプロセツサ間の
インターフエースを取扱うように特別に作成され
たマイクロコードを用いることができる。更に、
オフチツプ制御記憶を設けることも容易である。
この解決方法は、増強されたプロセツサ間インタ
フエースまたはハードウエア支援をサポートする
ための特別の追加マイクロコードを必要とする。
しかしながら、この追加マイクロコードはオンチ
ツプ制御記憶に常駐することが必要であり、この
ため命令取出用マイクロプロセツサの制御記憶に
置かれる命令応答マイクロコードの数が減少し、
その結果、システム・パフオーマンス全体に悪影
響を及ぼす。従つて、MPUにより小さい制御記
憶を搭載し、それに関連する問題を補償すること
は可能であるが、その問題に対する直截的な解決
方法に関連する性能及び/又は費用の犠牲は余り
に大きく、受入れ難いものである。
ム・システムでは、大きな制御記憶空間の不足を
解決するために、ハードウエアの支援またはその
幾つかの組合せにより、マイクロプロセツサ間の
インターフエースを取扱うように特別に作成され
たマイクロコードを用いることができる。更に、
オフチツプ制御記憶を設けることも容易である。
この解決方法は、増強されたプロセツサ間インタ
フエースまたはハードウエア支援をサポートする
ための特別の追加マイクロコードを必要とする。
しかしながら、この追加マイクロコードはオンチ
ツプ制御記憶に常駐することが必要であり、この
ため命令取出用マイクロプロセツサの制御記憶に
置かれる命令応答マイクロコードの数が減少し、
その結果、システム・パフオーマンス全体に悪影
響を及ぼす。従つて、MPUにより小さい制御記
憶を搭載し、それに関連する問題を補償すること
は可能であるが、その問題に対する直截的な解決
方法に関連する性能及び/又は費用の犠牲は余り
に大きく、受入れ難いものである。
従つて、本発明の目的は、限られた制御記憶を
有するマルチ・マイクロプロセツサによつて実現
されたメインフレーム・データ処理システムにお
いて、相対的に大きい制御記憶を有するメインフ
レーム・システムを最適にエミユレートすること
である。
有するマルチ・マイクロプロセツサによつて実現
されたメインフレーム・データ処理システムにお
いて、相対的に大きい制御記憶を有するメインフ
レーム・システムを最適にエミユレートすること
である。
本発明の他の目的は、前記のようなシステムに
おいて、プロセツサ・インターフエース・マイク
ロコードを最小限にし且つシステム・パフオーマ
ンスを高めるため、主記憶または制御記憶に対す
るマイクロプロセツサのアクセスをオーバライド
(指定変更)ラツチにより、他の記憶タイプへ経
路変更することである。
おいて、プロセツサ・インターフエース・マイク
ロコードを最小限にし且つシステム・パフオーマ
ンスを高めるため、主記憶または制御記憶に対す
るマイクロプロセツサのアクセスをオーバライド
(指定変更)ラツチにより、他の記憶タイプへ経
路変更することである。
本発明の他の目的は、前記記憶アクセスを要求
しているマイクロプロセツサに対して透明な様式
でシステム・パフオーマンスを最適化するよう
に、記憶アクセスを制御し且つ切替えることであ
る。
しているマイクロプロセツサに対して透明な様式
でシステム・パフオーマンスを最適化するよう
に、記憶アクセスを制御し且つ切替えることであ
る。
本発明の他の目的は、マルチ・マイクロプロセ
ツサによつて実現されたメインフレーム・データ
処理システムにおいて、メインフレームの記憶ア
クセスに関するアーキテクチヤ保護規則を侵害し
ない方法で、記憶アクセスを制御し且つ指向する
ことである。
ツサによつて実現されたメインフレーム・データ
処理システムにおいて、メインフレームの記憶ア
クセスに関するアーキテクチヤ保護規則を侵害し
ない方法で、記憶アクセスを制御し且つ指向する
ことである。
本発明の前記目的を達成するため、マルチ・マ
イクロプロセツサで実現されたメインフレーム・
データ処理システムに命令及びオペランド・オー
バライド・ラツチを設け、該ラツチを一次マイク
ロプロセツセ、2次マイクロプロセツサ、該2次
マイクロプロセツサに属するオフチツプ制御記憶
及び主記憶の間に接続する。これらのオーバライ
ド・ラツチは、プロセツサ・インタフエース・マ
イクロコード及びプロセツサ制御論理手段を介し
て、各メモリ・アクセスのタイプ及び原因に応答
するようにされる。これらのオーバライド・ラツ
チは、2次制御記憶中の予定アドレスに対する記
憶写像書込み(memory mapped write)によつ
て、セツト及びリセツトされる。命令オーバライ
ド・ラツチがセツトされると、これは1次マイク
ロプロセツサによる全ての予想される主記憶命令
取出を、2次マイクロプロセツサの制御記憶中に
ある予定領域へ指向させる。オペランド・オーバ
ライド・ラツチがセツトされると、これは予想さ
れる全ての主記憶オペランド・アクセスを、2次
マイクロプロセツサの制御記憶中にある予定領域
へ指向させる。こうすることにより、1次マイク
ロプロセツサ及び2次マイクロプロセツサの一方
または両方が、主記憶または制御記憶をアクセス
するように透明な様式でラツチすることができる
ので、実行パフオーマンスを最適化することがで
きる。
イクロプロセツサで実現されたメインフレーム・
データ処理システムに命令及びオペランド・オー
バライド・ラツチを設け、該ラツチを一次マイク
ロプロセツセ、2次マイクロプロセツサ、該2次
マイクロプロセツサに属するオフチツプ制御記憶
及び主記憶の間に接続する。これらのオーバライ
ド・ラツチは、プロセツサ・インタフエース・マ
イクロコード及びプロセツサ制御論理手段を介し
て、各メモリ・アクセスのタイプ及び原因に応答
するようにされる。これらのオーバライド・ラツ
チは、2次制御記憶中の予定アドレスに対する記
憶写像書込み(memory mapped write)によつ
て、セツト及びリセツトされる。命令オーバライ
ド・ラツチがセツトされると、これは1次マイク
ロプロセツサによる全ての予想される主記憶命令
取出を、2次マイクロプロセツサの制御記憶中に
ある予定領域へ指向させる。オペランド・オーバ
ライド・ラツチがセツトされると、これは予想さ
れる全ての主記憶オペランド・アクセスを、2次
マイクロプロセツサの制御記憶中にある予定領域
へ指向させる。こうすることにより、1次マイク
ロプロセツサ及び2次マイクロプロセツサの一方
または両方が、主記憶または制御記憶をアクセス
するように透明な様式でラツチすることができる
ので、実行パフオーマンスを最適化することがで
きる。
以下では、少なくとも2つのマイクロプロセツ
サによつて実現されたメインフレーム・デスクト
ツプ・システムに関連して、本発明の説明を行な
う。このシステムはシステム/370メインフレー
ムをエミユレートするように適応されているもの
とする。このメインフレームの命令セツトならび
にシステム/370の記能の詳細については、刊行
物であるIBM System/370 Principles of
Operation(Form No.GA22−7000)を参照され
たい。また本明細書に引用されたデスクトツプ・
メインフレームの詳細については、Technical
Reference Manual For The IBM PC XT/
370を参照されたい。
サによつて実現されたメインフレーム・デスクト
ツプ・システムに関連して、本発明の説明を行な
う。このシステムはシステム/370メインフレー
ムをエミユレートするように適応されているもの
とする。このメインフレームの命令セツトならび
にシステム/370の記能の詳細については、刊行
物であるIBM System/370 Principles of
Operation(Form No.GA22−7000)を参照され
たい。また本明細書に引用されたデスクトツプ・
メインフレームの詳細については、Technical
Reference Manual For The IBM PC XT/
370を参照されたい。
当業者によれば、単一のマイクロプロセツサを
使用するだけでメインフレームを実現しうること
が理解されるであろう。その代りに、複数のマイ
クロプロセツサを用いてメインフレーム・システ
ムをエミユレートすることもできる。この数は本
明細書の実施例で用いた数に等しくても、異なつ
ていてもよい。更に、命令セツトの区分構成なら
びにそのサブセツトをエミユレートする方法の相
違によつて、システム構成が異なることもある。
この複数のマイクロプロセツサによる実現方法の
例は、米国特許出願第371634号(1982年4月26
日)において、より完全に説明されている。この
出願では、システム/370の命令セツトは幾つか
の基準に従つて区分され、そのサブセツサの各々
は1つまたは複数のマイクロプロセツサでそれぞ
れ実現されているが、必ずしも全部が同じ方法で
実現されている訳ではない。
使用するだけでメインフレームを実現しうること
が理解されるであろう。その代りに、複数のマイ
クロプロセツサを用いてメインフレーム・システ
ムをエミユレートすることもできる。この数は本
明細書の実施例で用いた数に等しくても、異なつ
ていてもよい。更に、命令セツトの区分構成なら
びにそのサブセツトをエミユレートする方法の相
違によつて、システム構成が異なることもある。
この複数のマイクロプロセツサによる実現方法の
例は、米国特許出願第371634号(1982年4月26
日)において、より完全に説明されている。この
出願では、システム/370の命令セツトは幾つか
の基準に従つて区分され、そのサブセツサの各々
は1つまたは複数のマイクロプロセツサでそれぞ
れ実現されているが、必ずしも全部が同じ方法で
実現されている訳ではない。
デスクトツプ・メインフレーム・データ処理シ
ステム10は第2図に示されている。図示の如
く、1次マイクロプロセツサ12、ならびに関連
する2次マイクロプロセツサ14及び16は、プ
ロセツサ・ローカル・バス18に接続されてい
る。プロセツサ・ローカル・バス18はバス間ア
ダプタ20によつてシステム・バス22に接続さ
れている。主記憶モジユール24及び2次制御記
憶モジユール26はどちらもシステム・バス22
に接続されている。また、1次マイクロプロセツ
サ12ならびに2次マイクロプロセツサ14及び
16はプロセツサ制御ロジツク装置28にそれぞ
れ接続されており、該装置にはプロセツサ・イン
タフエース、制御ロジツク及びそのための専用記
憶30が組込まれている。プロセツサ制御ロジツ
ク装置28に関しては、後に詳細に説明する。
ステム10は第2図に示されている。図示の如
く、1次マイクロプロセツサ12、ならびに関連
する2次マイクロプロセツサ14及び16は、プ
ロセツサ・ローカル・バス18に接続されてい
る。プロセツサ・ローカル・バス18はバス間ア
ダプタ20によつてシステム・バス22に接続さ
れている。主記憶モジユール24及び2次制御記
憶モジユール26はどちらもシステム・バス22
に接続されている。また、1次マイクロプロセツ
サ12ならびに2次マイクロプロセツサ14及び
16はプロセツサ制御ロジツク装置28にそれぞ
れ接続されており、該装置にはプロセツサ・イン
タフエース、制御ロジツク及びそのための専用記
憶30が組込まれている。プロセツサ制御ロジツ
ク装置28に関しては、後に詳細に説明する。
本明細書において説明する特定の実施例では、
1次マイクロプロセツサ12は、システム中の全
てのマイクロプロセツサの、全ての命令取出及び
オペランド・アドレス計算を実行する役割を割当
てられる。また、1次マイクロプロセツサ12
は、全ての固定小数点命令の実行を行ない、汎用
レジスタ、命令長コード、条件コード及び命令ア
ドレスを保有・維持し、システム割込を識別する
とともに、主記憶命令取出または主記憶オペラン
ド・アクセスが要求されているという指示をシス
テムに与える。更に、1次マイクロプロセツサ1
2は、プロセツサ制御の変更が必要であるという
指示をシステムに与えることができる。
1次マイクロプロセツサ12は、システム中の全
てのマイクロプロセツサの、全ての命令取出及び
オペランド・アドレス計算を実行する役割を割当
てられる。また、1次マイクロプロセツサ12
は、全ての固定小数点命令の実行を行ない、汎用
レジスタ、命令長コード、条件コード及び命令ア
ドレスを保有・維持し、システム割込を識別する
とともに、主記憶命令取出または主記憶オペラン
ド・アクセスが要求されているという指示をシス
テムに与える。更に、1次マイクロプロセツサ1
2は、プロセツサ制御の変更が必要であるという
指示をシステムに与えることができる。
2次マイクロプロセツサ14は、全てのシステ
ム制御命令の実行を行ない、全ての制御レジスタ
を保有・維持し、必要に応じてサービス・プロセ
ツサ機能を実行するとともに、主記憶オペラン
ド・アクセス及び専用記憶マイクロコード・アク
セスの指示をシステムに与える。更に、2次マイ
クロプロセツサ14は、プロセツサ制御の変更が
必要であるという指示をシステムに与えることも
できる。
ム制御命令の実行を行ない、全ての制御レジスタ
を保有・維持し、必要に応じてサービス・プロセ
ツサ機能を実行するとともに、主記憶オペラン
ド・アクセス及び専用記憶マイクロコード・アク
セスの指示をシステムに与える。更に、2次マイ
クロプロセツサ14は、プロセツサ制御の変更が
必要であるという指示をシステムに与えることも
できる。
2次マイクロプロセツサ16は、全ての浮動小
数点命令の実行を行ない、浮動小数点レジスタの
全てを保有・維持する。また、2次マイクロプロ
セツサ16は、主記憶オペランド・アクセスの指
示ならびにマイクロプロセツサ制御を変更する必
要があるという指示をシステムに与える。こうす
る代りに、これらの浮動小数点機能を、マイクロ
プロセツサではなく、周辺装置によつて与えるこ
ともできる。
数点命令の実行を行ない、浮動小数点レジスタの
全てを保有・維持する。また、2次マイクロプロ
セツサ16は、主記憶オペランド・アクセスの指
示ならびにマイクロプロセツサ制御を変更する必
要があるという指示をシステムに与える。こうす
る代りに、これらの浮動小数点機能を、マイクロ
プロセツサではなく、周辺装置によつて与えるこ
ともできる。
このように、メインフレームの命令セツトは複
数のマイクロプロセツサで実行を分担するように
割当てられる。1次マイクロプロセツサ12には
限られたオンチツプ制御記憶が設けられ、この制
御記憶はメインフレームの命令に応答するマイク
ロコード及び/またはマイクロプロセツサ・イン
タフエース及び制御マイクロコードを記憶するの
に利用することができる。一定量のオンチツプ制
御記憶が使用可能であると仮定すると、命令応答
マイクロコード及びインタフエース・マイクロコ
ードは、ほかのものを犠牲にして制御記憶に駐在
することがわかる。これは、オンチツプ制御記憶
に駐在する或るタイプのマイクロコードの量が多
ければ多いほど、それに収容しうる他のタイプの
マイクロコードの量は少なくなることを意味す
る。もし一層強力な機能を有するマイクロプロセ
ツサ・インタフエースが要請され、そしてこれに
伴ないマイクロコードを支持するのに追加の空間
を要するとすれば、命令に応答するマイクロコー
ドのための制御記憶空間は一層小さくなる。パフ
オーマンスの観点からは、インタフエースを簡単
なものにしておき、制御記憶をできるだけ命令コ
ード用として残しておくことが最良である。本発
明はこれを可能にするものである。本実施例で
は、例えば、1次マイクロプロセツサ12の制御
記憶に、最も頻繁に使用されるメインフレーム命
令のマイクロコードを書込み、そして最小限のマ
イクロコードを必要とする比較的簡単なマイクロ
プロセツサ間インタフエースを使用するようにし
ている。
数のマイクロプロセツサで実行を分担するように
割当てられる。1次マイクロプロセツサ12には
限られたオンチツプ制御記憶が設けられ、この制
御記憶はメインフレームの命令に応答するマイク
ロコード及び/またはマイクロプロセツサ・イン
タフエース及び制御マイクロコードを記憶するの
に利用することができる。一定量のオンチツプ制
御記憶が使用可能であると仮定すると、命令応答
マイクロコード及びインタフエース・マイクロコ
ードは、ほかのものを犠牲にして制御記憶に駐在
することがわかる。これは、オンチツプ制御記憶
に駐在する或るタイプのマイクロコードの量が多
ければ多いほど、それに収容しうる他のタイプの
マイクロコードの量は少なくなることを意味す
る。もし一層強力な機能を有するマイクロプロセ
ツサ・インタフエースが要請され、そしてこれに
伴ないマイクロコードを支持するのに追加の空間
を要するとすれば、命令に応答するマイクロコー
ドのための制御記憶空間は一層小さくなる。パフ
オーマンスの観点からは、インタフエースを簡単
なものにしておき、制御記憶をできるだけ命令コ
ード用として残しておくことが最良である。本発
明はこれを可能にするものである。本実施例で
は、例えば、1次マイクロプロセツサ12の制御
記憶に、最も頻繁に使用されるメインフレーム命
令のマイクロコードを書込み、そして最小限のマ
イクロコードを必要とする比較的簡単なマイクロ
プロセツサ間インタフエースを使用するようにし
ている。
主記憶モジユール24はシステム・バス22に
接続され、マイクロプロセツサ12,14及び1
6により、必要に応じて使用される。システム・
バス22及びマイクロプロセツサ12,14,1
6は24アドレス・ビツトを含み、実現されるメイ
ンフレームのアドレツシング構造に適応されるも
のとする。このアドレツシング能力を得るには、
現在使用可能なマイクロプロセツサを若干変更す
る必要があるかもしれない。2次マイクロプロセ
ツサ14は、それ自身のマイクロコード及びスク
ラツチパツド機能のためにオフチツプ制御記憶モ
ジユール26を使用する。本実施例では、2次マ
イクロプロセツサ16はオフチツプ制御記憶モジ
ユール26を使用する必要はないが、該マイクロ
プロセツサはそのマイクロコード及びスクラツチ
パツドの必要性を満たすものとして、該モジユー
ルをアクセスすることができる。マイクロプロセ
ツサ12,14,16及びプロセツサ制御ロジツ
ク装置28は、プロセツサ・ローカル・バス18
により相互接続され、互いに情報を交換する。2
次マイクロプロセツサ14が必要とするマイクロ
コードには、後述するような複数のマイクロプロ
セツサをインタフエースするためのコードが含ま
れている。
接続され、マイクロプロセツサ12,14及び1
6により、必要に応じて使用される。システム・
バス22及びマイクロプロセツサ12,14,1
6は24アドレス・ビツトを含み、実現されるメイ
ンフレームのアドレツシング構造に適応されるも
のとする。このアドレツシング能力を得るには、
現在使用可能なマイクロプロセツサを若干変更す
る必要があるかもしれない。2次マイクロプロセ
ツサ14は、それ自身のマイクロコード及びスク
ラツチパツド機能のためにオフチツプ制御記憶モ
ジユール26を使用する。本実施例では、2次マ
イクロプロセツサ16はオフチツプ制御記憶モジ
ユール26を使用する必要はないが、該マイクロ
プロセツサはそのマイクロコード及びスクラツチ
パツドの必要性を満たすものとして、該モジユー
ルをアクセスすることができる。マイクロプロセ
ツサ12,14,16及びプロセツサ制御ロジツ
ク装置28は、プロセツサ・ローカル・バス18
により相互接続され、互いに情報を交換する。2
次マイクロプロセツサ14が必要とするマイクロ
コードには、後述するような複数のマイクロプロ
セツサをインタフエースするためのコードが含ま
れている。
マイクロプロセツサによつて実現されたメイン
フレームで使用可能なアドレス・ビツトまたはラ
インの全ては、メインフレームの仮想記憶を定義
し且つエミユレートするのに必要であるから、使
用可能なアドレス・ビツトによつて定義された全
ての可能な記憶を、仮想主記憶と制御記憶に分割
するのは有効ではないであろう。関連する実アド
レスを計算する前に、使用可能なアドレス線の全
てが、仮想記憶を定義するのに必要であるから、
これらの同じアドレス線を、特定の制御記憶アド
レスを識別するのにも直接使用することはできな
い。
フレームで使用可能なアドレス・ビツトまたはラ
インの全ては、メインフレームの仮想記憶を定義
し且つエミユレートするのに必要であるから、使
用可能なアドレス・ビツトによつて定義された全
ての可能な記憶を、仮想主記憶と制御記憶に分割
するのは有効ではないであろう。関連する実アド
レスを計算する前に、使用可能なアドレス線の全
てが、仮想記憶を定義するのに必要であるから、
これらの同じアドレス線を、特定の制御記憶アド
レスを識別するのにも直接使用することはできな
い。
主記憶モジユール24と制御記憶モジユール2
6は、論理的な観点から、2つの別個のモジユー
ルとして示されているが、以下で説明する点を除
いて、これらはランダム・アクセス・メモリ
(RAM)の物理的に連続するブロツクである。
本明細書で説明するような、記憶モジユール間の
区分線は実主記憶と制御記憶の間の区分線であ
る。本実施例では、主記憶モジユール24は、ア
ドレス00000〜7FFFF(16進数)の範囲にわたる。
制御記憶モジユール26は、アドレス80000〜
9FFFF(16進数)の範囲にわたる。システム・バ
ス22に乗せられたメモリ・アドレス(ビツト23
が最上位ビツト)のビツト19は、どの記憶モジ
ユールがアクセスされるかを決定する。もしある
アドレスのビツト19がセツトされていれば、当
該アドレスは80000(16進数)またはそれより高
く、従つて制御記憶モジユール26で見つけられ
る。もしビツト19がオフであれば、当該アドレ
スは7FFFF(16進数)またはそれよりも低く、従
つて主記憶モジユール24で見つけられる。本明
細書で用いられたアドレスは説明を簡略にし、容
易にするように選択されている。当業者には、各
記憶モジユールのアドレス範囲は設計上の選択で
あり、主記憶と制御記憶のどちらかを指向するの
に、1アドレス・ビツト以上の操作を必要とする
ことが理解されよう。
6は、論理的な観点から、2つの別個のモジユー
ルとして示されているが、以下で説明する点を除
いて、これらはランダム・アクセス・メモリ
(RAM)の物理的に連続するブロツクである。
本明細書で説明するような、記憶モジユール間の
区分線は実主記憶と制御記憶の間の区分線であ
る。本実施例では、主記憶モジユール24は、ア
ドレス00000〜7FFFF(16進数)の範囲にわたる。
制御記憶モジユール26は、アドレス80000〜
9FFFF(16進数)の範囲にわたる。システム・バ
ス22に乗せられたメモリ・アドレス(ビツト23
が最上位ビツト)のビツト19は、どの記憶モジ
ユールがアクセスされるかを決定する。もしある
アドレスのビツト19がセツトされていれば、当
該アドレスは80000(16進数)またはそれより高
く、従つて制御記憶モジユール26で見つけられ
る。もしビツト19がオフであれば、当該アドレ
スは7FFFF(16進数)またはそれよりも低く、従
つて主記憶モジユール24で見つけられる。本明
細書で用いられたアドレスは説明を簡略にし、容
易にするように選択されている。当業者には、各
記憶モジユールのアドレス範囲は設計上の選択で
あり、主記憶と制御記憶のどちらかを指向するの
に、1アドレス・ビツト以上の操作を必要とする
ことが理解されよう。
前述の専用記憶30は、論理的には、制御記憶
モジユール26の一部分であるが、物理的には、
プロセツサ制御ロジツク装置28の中に位置し、
制御記憶モジユール26の予約セグメント30に
写像される。代表的な予約セグメント30は約
256バイト長であるが、もつと長いこともある。
後に第1図に関連して説明するように、プロセツ
サ制御ロジツク装置28は、出力線18aを介し
てバス間アダプタ20に接続される。また、プロ
セツサ制御ロジツク装置28には、一対のオーバ
ライド・ラツチ32及び34が設けられており、
これらのラツチは後に詳細に説明するように、マ
イクロプロセツサ12及び14からのメモリ・ア
クセスを、主記憶モジユール24または制御記憶
モジユール26のどちらかに指向するように作用
する。
モジユール26の一部分であるが、物理的には、
プロセツサ制御ロジツク装置28の中に位置し、
制御記憶モジユール26の予約セグメント30に
写像される。代表的な予約セグメント30は約
256バイト長であるが、もつと長いこともある。
後に第1図に関連して説明するように、プロセツ
サ制御ロジツク装置28は、出力線18aを介し
てバス間アダプタ20に接続される。また、プロ
セツサ制御ロジツク装置28には、一対のオーバ
ライド・ラツチ32及び34が設けられており、
これらのラツチは後に詳細に説明するように、マ
イクロプロセツサ12及び14からのメモリ・ア
クセスを、主記憶モジユール24または制御記憶
モジユール26のどちらかに指向するように作用
する。
オーバライド・ラツチ32及び34の機能は、
第1図に一層明瞭に示されている。但し、第1図
には、説明を簡潔にするために本発明の要旨に関
係ないシステム素子は示されていない。これらの
ラツチは、幾つかの販売業者から直ぐに入手でき
るようなものである。例えば、モトローラ社で製
造されたタイプMC74LS175Nのラツチは、TI社
のタイプSN74LS175Jのラツチと同様に、ラツチ
32及び34として使用するのに適している。各
チツプには4個のラツチがあるが、その中の2つ
だけがオーバライド用に用いられる。命令オーバ
ライド・ラツチ32は、専用記憶30に対する記
憶写像書込によつてセツト及びリセツトされる。
命令オーバライド・ラツチ32がセツトされる
と、1次マイクロプロセツサ12による全ての主
記憶命令取出しは主記憶モジユール24の代りに
制御記憶モジユール26の指定された領域に指向
される。オペランド・オーバライド・ラツチ34
は、専用記憶30に対する記憶写像書込によつて
セツト及びリセツトされる。オペランド・オーバ
ライド・ラツチ34がセツトされると、1次マイ
クロプロセツサ12または2次マイクロプロセツ
サ14による全ての主記憶オペランド・アクセス
は、主記憶モジユール24または制御記憶モジユ
ール26の指定された領域にそれぞれ指向され
る。オーバライド・ラツチすなわち記憶選択ラツ
チを設けることにより、システムの他の部分(特
に1次マイクロプロセツサ12のオンチツプ・マ
イクロコード)を変更せずに、多くの有用な機能
を実現することが可能になる。また、オーバライ
ド・ラツチを使用すれば、システムのマイクロプ
ロセツサによる全てのメモリ・アクセスを必要に
応じて変更することもできるようになる。
第1図に一層明瞭に示されている。但し、第1図
には、説明を簡潔にするために本発明の要旨に関
係ないシステム素子は示されていない。これらの
ラツチは、幾つかの販売業者から直ぐに入手でき
るようなものである。例えば、モトローラ社で製
造されたタイプMC74LS175Nのラツチは、TI社
のタイプSN74LS175Jのラツチと同様に、ラツチ
32及び34として使用するのに適している。各
チツプには4個のラツチがあるが、その中の2つ
だけがオーバライド用に用いられる。命令オーバ
ライド・ラツチ32は、専用記憶30に対する記
憶写像書込によつてセツト及びリセツトされる。
命令オーバライド・ラツチ32がセツトされる
と、1次マイクロプロセツサ12による全ての主
記憶命令取出しは主記憶モジユール24の代りに
制御記憶モジユール26の指定された領域に指向
される。オペランド・オーバライド・ラツチ34
は、専用記憶30に対する記憶写像書込によつて
セツト及びリセツトされる。オペランド・オーバ
ライド・ラツチ34がセツトされると、1次マイ
クロプロセツサ12または2次マイクロプロセツ
サ14による全ての主記憶オペランド・アクセス
は、主記憶モジユール24または制御記憶モジユ
ール26の指定された領域にそれぞれ指向され
る。オーバライド・ラツチすなわち記憶選択ラツ
チを設けることにより、システムの他の部分(特
に1次マイクロプロセツサ12のオンチツプ・マ
イクロコード)を変更せずに、多くの有用な機能
を実現することが可能になる。また、オーバライ
ド・ラツチを使用すれば、システムのマイクロプ
ロセツサによる全てのメモリ・アクセスを必要に
応じて変更することもできるようになる。
次に第1図を参照して、オーバライド・ラツチ
の役割及び有用性を説明する。1次マイクロプロ
セツサ12と2次マイクロプロセツサ14の間の
インタフエースは、制御記憶モジユール26に記
憶された適切なマイクロコードによつて定義され
る。電源投入時、このマイクロコードは特有の方
法でアクセスされ、それによつて2次マイクロプ
ロセツサ14が制御を与えられる。この初期化プ
ロセスの一部分として、2次マイクロプロセツサ
14は、1次マイクロプロセツサ12の起動情報
を、制御記憶モジユール26の予定アドレスに入
れ、オーバライド・ラツチ32及び34をリセツ
トする。この場合、これらのラツチは論理0に強
制される。段取りの仕事が完了した後、プロセツ
サ・インタフエース・コードにより、1次マイク
ロプロセツサ12に制御が移される。
の役割及び有用性を説明する。1次マイクロプロ
セツサ12と2次マイクロプロセツサ14の間の
インタフエースは、制御記憶モジユール26に記
憶された適切なマイクロコードによつて定義され
る。電源投入時、このマイクロコードは特有の方
法でアクセスされ、それによつて2次マイクロプ
ロセツサ14が制御を与えられる。この初期化プ
ロセスの一部分として、2次マイクロプロセツサ
14は、1次マイクロプロセツサ12の起動情報
を、制御記憶モジユール26の予定アドレスに入
れ、オーバライド・ラツチ32及び34をリセツ
トする。この場合、これらのラツチは論理0に強
制される。段取りの仕事が完了した後、プロセツ
サ・インタフエース・コードにより、1次マイク
ロプロセツサ12に制御が移される。
これらのラツチは2次マイクロプロセツサ14
によつてだけセツト又はリセツトされるが、この
機能をその様に制限しなくてもよい。この動作
は、2次マイクロプロセツサ14が、専用記憶3
0の予定アドレスへラツチ・データの「書込」動
作を試みるごとに、生じる。それが生じると、デ
コーダ36は、プロセツサ・ローカル・バス18
上のアドレスを複写し、それに応答して、ラツチ
32及び34へのラツチ・イネーブル線38を高
レベルにする。ラツチ・イネーブル線38が高レ
ベルにされると、各ラツチへのデータ・バス入力
40上で使用可能な1ビツトのデータ・ラツチ情
報――ビツトの値は同一であるかもしれないが、
ラツチごとに異なるビツトである――は、それぞ
れのラツチ32及び34に入力ゲートされる。も
しゲートされたデータ・ビツトが論理0であれ
ば、そのラツチはリセツトされ、このデータ・ビ
ツトが論理1であれば、そのラツチはセツトされ
る。
によつてだけセツト又はリセツトされるが、この
機能をその様に制限しなくてもよい。この動作
は、2次マイクロプロセツサ14が、専用記憶3
0の予定アドレスへラツチ・データの「書込」動
作を試みるごとに、生じる。それが生じると、デ
コーダ36は、プロセツサ・ローカル・バス18
上のアドレスを複写し、それに応答して、ラツチ
32及び34へのラツチ・イネーブル線38を高
レベルにする。ラツチ・イネーブル線38が高レ
ベルにされると、各ラツチへのデータ・バス入力
40上で使用可能な1ビツトのデータ・ラツチ情
報――ビツトの値は同一であるかもしれないが、
ラツチごとに異なるビツトである――は、それぞ
れのラツチ32及び34に入力ゲートされる。も
しゲートされたデータ・ビツトが論理0であれ
ば、そのラツチはリセツトされ、このデータ・ビ
ツトが論理1であれば、そのラツチはセツトされ
る。
マイクロプロセツサ12及び14の各々は、製
造業者によつて指定された複数の入出力(I/
O)ピン及び制御ピンを有する。それらの中に
は、命令取出ピン42、オペランド・アクセス・
ピン44及びバス許可応答(BGACK)ピン46
がある。これらのピン及びそれに接続された制御
線上の信号は、関連する特定のマイクロプロセツ
サが命令取出を行なつていること、オペランド・
アクセスを試みようとしていること、または別の
装置がバス・アクセスを許可されているためにア
イドル状態へ移行しつつあることを、それぞれ表
わす。従つて、命令取出線48が論理的に高レベ
ルにセツトされると、関連するマイクロプロセツ
サは、それが命令取出を実行しようとしているこ
とを表示している。同様に、オペランド・アクセ
ス線50が高いレベルになると、それは、マイク
ロプロセツサが記憶をアクセスしてオペランドを
検索しようとしていることを意味する。後に説明
するように、バス許可応答ピン46を論理1すな
わち高レベルにセツトする信号の受信は、別の装
置がプロセツサ・ローカル・バス18のアクセス
を許可されていることを表示し、かくて受信中の
マイクロプロセツサをアイドル状態に強制する。
造業者によつて指定された複数の入出力(I/
O)ピン及び制御ピンを有する。それらの中に
は、命令取出ピン42、オペランド・アクセス・
ピン44及びバス許可応答(BGACK)ピン46
がある。これらのピン及びそれに接続された制御
線上の信号は、関連する特定のマイクロプロセツ
サが命令取出を行なつていること、オペランド・
アクセスを試みようとしていること、または別の
装置がバス・アクセスを許可されているためにア
イドル状態へ移行しつつあることを、それぞれ表
わす。従つて、命令取出線48が論理的に高レベ
ルにセツトされると、関連するマイクロプロセツ
サは、それが命令取出を実行しようとしているこ
とを表示している。同様に、オペランド・アクセ
ス線50が高いレベルになると、それは、マイク
ロプロセツサが記憶をアクセスしてオペランドを
検索しようとしていることを意味する。後に説明
するように、バス許可応答ピン46を論理1すな
わち高レベルにセツトする信号の受信は、別の装
置がプロセツサ・ローカル・バス18のアクセス
を許可されていることを表示し、かくて受信中の
マイクロプロセツサをアイドル状態に強制する。
命令取出及びオペランド・アクセス動作は排他
的であつて、同時には起こらないので、線48及
び50を同時にセツトすることはできず、どちら
か一方だけがセツトされる。ラツチ・イネーブル
線38が高レベルになると、ラツチ32及び34
にデータが読込まれる。ラツチ32及び34の出
力は、ANDゲート52及び54にそれぞれ供給
される。ANDゲート52に対する他の入力は命
令取出線48である。ANDゲート54への他の
入力はオペランド・アクセス線50である。
ANDゲート52及び54の出力はORゲート56
に送られる。従つて、もしオーバライド・ラツチ
32または34のどちらかが論理1の出力を有
し、かつその関連する制御線が同様にセツトされ
ているならば、ORゲート56の出力は論理1に
セツトされる。ORゲート56の出力はアドレス
ORゲート58の入力に接続される。アドレス
ORゲート58への他の入力は記憶アドレスのビ
ツト19でもある。もしANDゲート52または
54のどちらかの出力がセツトされているなら
ば、記憶アドレスのビツト19がセツトされ、そ
れによつて制御記憶モジユール26に対する読取
または書込が強制される。これは、制御中のマイ
クロプロセツサに対し透明に行なわれ、制御記憶
モジユール26の予期されなかつたアクセスを生
じさせる。
的であつて、同時には起こらないので、線48及
び50を同時にセツトすることはできず、どちら
か一方だけがセツトされる。ラツチ・イネーブル
線38が高レベルになると、ラツチ32及び34
にデータが読込まれる。ラツチ32及び34の出
力は、ANDゲート52及び54にそれぞれ供給
される。ANDゲート52に対する他の入力は命
令取出線48である。ANDゲート54への他の
入力はオペランド・アクセス線50である。
ANDゲート52及び54の出力はORゲート56
に送られる。従つて、もしオーバライド・ラツチ
32または34のどちらかが論理1の出力を有
し、かつその関連する制御線が同様にセツトされ
ているならば、ORゲート56の出力は論理1に
セツトされる。ORゲート56の出力はアドレス
ORゲート58の入力に接続される。アドレス
ORゲート58への他の入力は記憶アドレスのビ
ツト19でもある。もしANDゲート52または
54のどちらかの出力がセツトされているなら
ば、記憶アドレスのビツト19がセツトされ、そ
れによつて制御記憶モジユール26に対する読取
または書込が強制される。これは、制御中のマイ
クロプロセツサに対し透明に行なわれ、制御記憶
モジユール26の予期されなかつたアクセスを生
じさせる。
前述のように、1次マイクロプロセツサ12
は、全てのシステム命令取出を実行するのに適応
させられている。また、1次マイクロプロセツサ
12は、それ自身のオンチツプ・マイクロコード
が与えられているので、幾つかの最も頻繁に使用
されるメインフレーム命令を直接実行することが
できる。2次マイクロプロセツサ14の援助また
は介入ないに、前記動作が可能である限り、1次
マイクロプロセツサ12はそれ自身の命令を実行
し続ける。しかしながら、割込が生じたとき、ま
たは、1次マイクロプロセツサ12が、取扱うよ
うにマイクロプログラムされていないOPコード
に出会つたとき、1次マイクロプロセツサ12
は、2次マイクロプロセツサ呼出ルーチンを開始
して2次マイクロプロセツサ14をオンにする。
は、全てのシステム命令取出を実行するのに適応
させられている。また、1次マイクロプロセツサ
12は、それ自身のオンチツプ・マイクロコード
が与えられているので、幾つかの最も頻繁に使用
されるメインフレーム命令を直接実行することが
できる。2次マイクロプロセツサ14の援助また
は介入ないに、前記動作が可能である限り、1次
マイクロプロセツサ12はそれ自身の命令を実行
し続ける。しかしながら、割込が生じたとき、ま
たは、1次マイクロプロセツサ12が、取扱うよ
うにマイクロプログラムされていないOPコード
に出会つたとき、1次マイクロプロセツサ12
は、2次マイクロプロセツサ呼出ルーチンを開始
して2次マイクロプロセツサ14をオンにする。
1次マイクロプロセツサ12と2次マイクロプ
ロセツサ14の間の制御の移動は、そのために与
えられたマイクロコードに従つて処理される。1
次マイクロプロセツサ12の場合、このマイクロ
コードはチツプ上に常駐する。2次マイクロプロ
セツサ14の制御転送ルーチンは制御記憶モジユ
ール26に存在する。ここで、1次マイクロプロ
セツサ12が制御を有しており、そして該マイク
ロプロセツサが処理できないOPコードに出会う
か、または割込信号を受取りものと仮定する。ど
ちらの場合も、1次マイクロプロセツサ12は、
手がかりとなるキー情報を専用記憶30に書込む
ことにより応答する。このキー情報には、制御を
移すマイクロプロセツサのプログラム・カウンタ
及びプログラム・ステータス・レジスタの内容、
ならびにマイクロプロセツサの制御移動が開始さ
れた理由を表わす呼出コードが含まれる。もし、
制御を受取るマイクロプロセツサによる使用が必
要ならば、制御を移すマイクロプロセツサは、オ
ペランド、現在の命令、バス・エラー情報または
その他の必要なパラメータも記憶する。これらの
不可欠なステータス情報が記憶された後、マイク
ロプロセツサ制御転送ルーチンは、専用記憶30
中の予定アドレス(マイクロプロセツサ・スイツ
チ・ラツチ60のアドレス)への書込みを試みる
ことにより終了し、続いて専用記憶30中の他の
予定アドレスの読取が行なわれる。書込アドレス
を受取ると、デコーダ36は、マイクロプロセツ
サ・スイツチ・ラツチ60がアドレス指定されて
いると判定し、制御を手放すマイクロプロセツサ
のBGACK線62をセツトするとともに、制御を
受取るマイクロプロセツサのBGACK線62をリ
セツトすることを可能にする。従つて、次の読取
コマンドは、決して実行されないが、いま制御を
手放したマイクロプロセツサの入力パイプライン
に残る。
ロセツサ14の間の制御の移動は、そのために与
えられたマイクロコードに従つて処理される。1
次マイクロプロセツサ12の場合、このマイクロ
コードはチツプ上に常駐する。2次マイクロプロ
セツサ14の制御転送ルーチンは制御記憶モジユ
ール26に存在する。ここで、1次マイクロプロ
セツサ12が制御を有しており、そして該マイク
ロプロセツサが処理できないOPコードに出会う
か、または割込信号を受取りものと仮定する。ど
ちらの場合も、1次マイクロプロセツサ12は、
手がかりとなるキー情報を専用記憶30に書込む
ことにより応答する。このキー情報には、制御を
移すマイクロプロセツサのプログラム・カウンタ
及びプログラム・ステータス・レジスタの内容、
ならびにマイクロプロセツサの制御移動が開始さ
れた理由を表わす呼出コードが含まれる。もし、
制御を受取るマイクロプロセツサによる使用が必
要ならば、制御を移すマイクロプロセツサは、オ
ペランド、現在の命令、バス・エラー情報または
その他の必要なパラメータも記憶する。これらの
不可欠なステータス情報が記憶された後、マイク
ロプロセツサ制御転送ルーチンは、専用記憶30
中の予定アドレス(マイクロプロセツサ・スイツ
チ・ラツチ60のアドレス)への書込みを試みる
ことにより終了し、続いて専用記憶30中の他の
予定アドレスの読取が行なわれる。書込アドレス
を受取ると、デコーダ36は、マイクロプロセツ
サ・スイツチ・ラツチ60がアドレス指定されて
いると判定し、制御を手放すマイクロプロセツサ
のBGACK線62をセツトするとともに、制御を
受取るマイクロプロセツサのBGACK線62をリ
セツトすることを可能にする。従つて、次の読取
コマンドは、決して実行されないが、いま制御を
手放したマイクロプロセツサの入力パイプライン
に残る。
この制御シーケンスが再び呼出されると、遊休
マイクロプロセツサのBGACKピン46はリセツ
トされ、該マイクロプロセツサはアクテイブにな
つて制御を取戻す。このマイクロプロセツサが行
なう第1のことは、前に実行するように要求され
た読取動作を完了することである。制御を取戻す
特定のマイクロプロセツサと、前に制御移動がト
リガされた事実とに応じて、読取アドレスは、1
次マイクロプロセツサ12によつて書込まれた情
報の再ロードを開始するか、または呼出コードの
読取を行なつて、それに応答する活動を開始する
ことができる。
マイクロプロセツサのBGACKピン46はリセツ
トされ、該マイクロプロセツサはアクテイブにな
つて制御を取戻す。このマイクロプロセツサが行
なう第1のことは、前に実行するように要求され
た読取動作を完了することである。制御を取戻す
特定のマイクロプロセツサと、前に制御移動がト
リガされた事実とに応じて、読取アドレスは、1
次マイクロプロセツサ12によつて書込まれた情
報の再ロードを開始するか、または呼出コードの
読取を行なつて、それに応答する活動を開始する
ことができる。
1次マイクロプロセツサ12によつて制御が手
放される期間は、1命令の間だけかもしれない。
これは、制御を移すマイクロプロセツサのプログ
ラム・ステータス・レジスタ(PSR)の内容が
専用記憶30に入れられる前に該レジスタのトレ
ース・ビツトをセツトし、続いて制御を受取るマ
イクロプロセツサにその情報をそれ自身のPSR
に読込ませることにより、行なわれる。こうする
代りに、無効なOPコードを有する1つまたは任
意の数の予定命令を実行して割込みを生ぜしめた
後に、1次マイクロプロセツサ12から2次マイ
クロプロセツサ14へ制御を移すことも可能であ
る。もちろん、この割込はシステム定義によつて
2次マイクロプロセツサの制御を呼出す。
放される期間は、1命令の間だけかもしれない。
これは、制御を移すマイクロプロセツサのプログ
ラム・ステータス・レジスタ(PSR)の内容が
専用記憶30に入れられる前に該レジスタのトレ
ース・ビツトをセツトし、続いて制御を受取るマ
イクロプロセツサにその情報をそれ自身のPSR
に読込ませることにより、行なわれる。こうする
代りに、無効なOPコードを有する1つまたは任
意の数の予定命令を実行して割込みを生ぜしめた
後に、1次マイクロプロセツサ12から2次マイ
クロプロセツサ14へ制御を移すことも可能であ
る。もちろん、この割込はシステム定義によつて
2次マイクロプロセツサの制御を呼出す。
オーバライド・ラツチ32及び34によつて容
易にされた、制御転送の全プロセス及び1次マイ
クロプロセツサ12による制御記憶モジユール2
6の利用は、1次マイクロプロセツサ12が受取
つたシステム/370の「EXECUTE(実行)」命令
を実行する場合には、次のように動作する。シス
テム/370「EXECUTE」命令は、その第2オペ
ランドによつて指定されたアドレスに存在する目
的命令を、「EXECUTE」命令のレジスタ・フイ
ールドで指定された汎用レジスタ(GPR)の内
容によつて変更し、その変更された結果の、目的
命令を実行するようなものである。当業者には、
システム/370のアーキテクチヤ上の制約下では、
システム要求により主記憶を使用または破損でき
ないことが理解されるであろう。従つて、中間結
果または命令(この場合は目的命令)のコピーを
記憶するという要求は、制御記憶の利用によつて
だけ満たすことができる。
易にされた、制御転送の全プロセス及び1次マイ
クロプロセツサ12による制御記憶モジユール2
6の利用は、1次マイクロプロセツサ12が受取
つたシステム/370の「EXECUTE(実行)」命令
を実行する場合には、次のように動作する。シス
テム/370「EXECUTE」命令は、その第2オペ
ランドによつて指定されたアドレスに存在する目
的命令を、「EXECUTE」命令のレジスタ・フイ
ールドで指定された汎用レジスタ(GPR)の内
容によつて変更し、その変更された結果の、目的
命令を実行するようなものである。当業者には、
システム/370のアーキテクチヤ上の制約下では、
システム要求により主記憶を使用または破損でき
ないことが理解されるであろう。従つて、中間結
果または命令(この場合は目的命令)のコピーを
記憶するという要求は、制御記憶の利用によつて
だけ満たすことができる。
1次マイクロプロセツサ12は、システムを管
理し、次の命令を取出すが、これが
「EXECUTE」命令であることがある。これは1
次マイクロプロセツサ12が処理するようにマイ
クロプログラムされていない命令の1つである。
1次マイクロプロセツサ12は、主記憶モジユー
ル24で目的命令を見つけることができるアドレ
スを計算し、それより先に進むことができないこ
とを、そのマイクロコードから知り、そのアドレ
スと、制御を移す理由を説明する適切な呼出コー
ド及び他の関連するレジスタ情報とを専用記憶3
0に書込んでから、2次マイクロプロセツサ14
に制御を移す。2次マイクロプロセツサ14は、
呼出コードを検査し、「EXECUTE」命令に対す
るマイクロコード化された応答に基づき、1次マ
イクロプロセツサ12によつて専用記憶30に残
された情報を用いて、従属命令のコピーを制御記
憶モジユール26に書込む。次に、コピーされた
命令の第2バイトは、1次マイクロプロセツサ1
2から渡されたGPRの値の下位バイトとORさ
れ、従属命令すなわち目的命令の、制御記憶のコ
ピーの第2バイトに戻される。
理し、次の命令を取出すが、これが
「EXECUTE」命令であることがある。これは1
次マイクロプロセツサ12が処理するようにマイ
クロプログラムされていない命令の1つである。
1次マイクロプロセツサ12は、主記憶モジユー
ル24で目的命令を見つけることができるアドレ
スを計算し、それより先に進むことができないこ
とを、そのマイクロコードから知り、そのアドレ
スと、制御を移す理由を説明する適切な呼出コー
ド及び他の関連するレジスタ情報とを専用記憶3
0に書込んでから、2次マイクロプロセツサ14
に制御を移す。2次マイクロプロセツサ14は、
呼出コードを検査し、「EXECUTE」命令に対す
るマイクロコード化された応答に基づき、1次マ
イクロプロセツサ12によつて専用記憶30に残
された情報を用いて、従属命令のコピーを制御記
憶モジユール26に書込む。次に、コピーされた
命令の第2バイトは、1次マイクロプロセツサ1
2から渡されたGPRの値の下位バイトとORさ
れ、従属命令すなわち目的命令の、制御記憶のコ
ピーの第2バイトに戻される。
この例では、更に、従属命令が、元の
「EXECUTE」命令の目的命令である「キヤラク
タ移動」命令であると仮定する。キヤラクタ移動
命令は、1次マイクロプロセツサ12によつて実
行可能と定義されている命令である。その事実
が、目的命令のOPコードから2次マイクロプロ
セツサ14によつて認められると、2次マイクロ
プロセツサ14は、1次マイクロプロセツサ12
から渡されたプログラム・カウンタの元の内容を
保管し、1次マイクロプロセツサ12が、制御移
動がなかつたら、取出したであろう次の命令のア
ドレスを、今変更されたキヤラクタ移動命令のア
ドレスに置換える。この変更された命令は制御記
憶モジユール26に駐在するけど、そのアドレス
のアドレス・ビツト19は0にリセツトされる。
従つて、1次マイクロプロセツサ12は、制御記
憶モジユール26においてではなく、主記憶モジ
ユール24においてキヤラクタ移動命令を探すこ
とになる。本発明により、1次マイクロプロセツ
サ12は、特別の、かつ追加のオンチツプ・マイ
クロコードまたは多大のハードウエアを必要とせ
ずに、直接実行可能な命令の1つを、システム/
370「EXECUTE」命令の目的命令として実行す
ることができる。
「EXECUTE」命令の目的命令である「キヤラク
タ移動」命令であると仮定する。キヤラクタ移動
命令は、1次マイクロプロセツサ12によつて実
行可能と定義されている命令である。その事実
が、目的命令のOPコードから2次マイクロプロ
セツサ14によつて認められると、2次マイクロ
プロセツサ14は、1次マイクロプロセツサ12
から渡されたプログラム・カウンタの元の内容を
保管し、1次マイクロプロセツサ12が、制御移
動がなかつたら、取出したであろう次の命令のア
ドレスを、今変更されたキヤラクタ移動命令のア
ドレスに置換える。この変更された命令は制御記
憶モジユール26に駐在するけど、そのアドレス
のアドレス・ビツト19は0にリセツトされる。
従つて、1次マイクロプロセツサ12は、制御記
憶モジユール26においてではなく、主記憶モジ
ユール24においてキヤラクタ移動命令を探すこ
とになる。本発明により、1次マイクロプロセツ
サ12は、特別の、かつ追加のオンチツプ・マイ
クロコードまたは多大のハードウエアを必要とせ
ずに、直接実行可能な命令の1つを、システム/
370「EXECUTE」命令の目的命令として実行す
ることができる。
次に、2次マイクロプロセツサ14は、プログ
ラム・ステータス・レジスタの位置にあるトレー
ス・ビツトをオンにし、命令オーバライド・ラツ
チ32をオンに切換える。オペランド・オーバラ
イド・ラツチ34はオフのままであるか、または
リセツトされる。ここで、2次マイクロプロセツ
サ14は、マイクロプロセツサ・スイツチ・ラツ
チ60のアドレスへの書込みを行ない、それによ
つて1次マイクロプロセツサ12に制御を戻す。
1次マイクロプロセツサ12は、そのBGACKピ
ン46が低いレベルにセツトされると、動作状態
になり、その入力パイプラインに残された読取コ
マンドを直ちに完了する。定義されたアドレス
を、1次マイクロプロセツサ12の、残されたま
まの他の専用記憶情報と一緒に、2次マイクロプ
ロセツサ14が読取ると、1次マイクロプロセツ
サ12は、それ以上の段取りなしに直ちに動作を
開始することができる。1次マイクロプロセツサ
12は、キヤラクタ移動命令が駐在していると誤
りを伝えられた主記憶モジユール24に向かう
際、命令取出線48をセツトする。しかしなが
ら、ここでORゲート56の出力線18aは、命
令オーバライド・ラツチ32及び命令取出線48
によつてセツトされている。これは、1次マイク
ロプロセツサ12によりプロセツサ・ローカル・
バス18に乗せられた主記憶アドレスのビツト1
9がアドレスORゲート58によつてセツトされ
ることを意味する。この結果、1次マイクロプロ
セツサ12により開始された記憶アクセスは、1
次マイクロプロセツサ12の部分でいかなる動作
を行なうこともなく、しかもこれに対し透明な様
式で制御記憶モジユール26に指向される。
ラム・ステータス・レジスタの位置にあるトレー
ス・ビツトをオンにし、命令オーバライド・ラツ
チ32をオンに切換える。オペランド・オーバラ
イド・ラツチ34はオフのままであるか、または
リセツトされる。ここで、2次マイクロプロセツ
サ14は、マイクロプロセツサ・スイツチ・ラツ
チ60のアドレスへの書込みを行ない、それによ
つて1次マイクロプロセツサ12に制御を戻す。
1次マイクロプロセツサ12は、そのBGACKピ
ン46が低いレベルにセツトされると、動作状態
になり、その入力パイプラインに残された読取コ
マンドを直ちに完了する。定義されたアドレス
を、1次マイクロプロセツサ12の、残されたま
まの他の専用記憶情報と一緒に、2次マイクロプ
ロセツサ14が読取ると、1次マイクロプロセツ
サ12は、それ以上の段取りなしに直ちに動作を
開始することができる。1次マイクロプロセツサ
12は、キヤラクタ移動命令が駐在していると誤
りを伝えられた主記憶モジユール24に向かう
際、命令取出線48をセツトする。しかしなが
ら、ここでORゲート56の出力線18aは、命
令オーバライド・ラツチ32及び命令取出線48
によつてセツトされている。これは、1次マイク
ロプロセツサ12によりプロセツサ・ローカル・
バス18に乗せられた主記憶アドレスのビツト1
9がアドレスORゲート58によつてセツトされ
ることを意味する。この結果、1次マイクロプロ
セツサ12により開始された記憶アクセスは、1
次マイクロプロセツサ12の部分でいかなる動作
を行なうこともなく、しかもこれに対し透明な様
式で制御記憶モジユール26に指向される。
変更されたキヤラクタ移動命令が取出される
と、オペランド・オーバライド・ラツチ34がリ
セツトされており且つ命令取出線48が論理0で
あるので、その命令に従つて実際にデータを移動
するためになされるメモリ・アクセスは主記憶モ
ジユール24に指向され、そこで行なわれる。キ
ヤラクタ移動命令が実行された後、1次マイクロ
プロセツサ12に戻されるようなプログラム・ス
テータス・レジスタのトレース・ビツトはセツト
されていたので、再び2次マイクロプロセツサ1
4に制御が戻される。1次マイクロプロセツサ1
2は、リターン・コードを検査し、トレース・ビ
ツトを調べて制御移動の完全な理由を作成する。
それに対し、2次マイクロプロセツサ14は、命
令オーバライド・ラツチ32をオフにし、
「EXECUTE」に出会つたとき最初に受取つた元
のプログラム・カウンタの内容を専用記憶30に
復元する。制御は再び1次マイクロプロセツサ1
2に戻され、かくて該マイクロプロセツサは、そ
の復元された元のプログラム・カウンタの内容及
びその他の必要な全てのパラメータ及びレジスタ
情報を入手するとともに、「EXECUTE」命令に
続く命令を取出す。1次マイクロプロセツサ12
が制御を受取つたとき該マイクロプロセツサが実
行すべき命令いかんで、後続するメモリ・アクセ
スは、オーバライド・ラツチ32及び34の出力
状態に従つて、命令取出及びオペランド・アクセ
スの両方、またはオペランド・アクセスだけにつ
いて制御記憶に指向することがある。
と、オペランド・オーバライド・ラツチ34がリ
セツトされており且つ命令取出線48が論理0で
あるので、その命令に従つて実際にデータを移動
するためになされるメモリ・アクセスは主記憶モ
ジユール24に指向され、そこで行なわれる。キ
ヤラクタ移動命令が実行された後、1次マイクロ
プロセツサ12に戻されるようなプログラム・ス
テータス・レジスタのトレース・ビツトはセツト
されていたので、再び2次マイクロプロセツサ1
4に制御が戻される。1次マイクロプロセツサ1
2は、リターン・コードを検査し、トレース・ビ
ツトを調べて制御移動の完全な理由を作成する。
それに対し、2次マイクロプロセツサ14は、命
令オーバライド・ラツチ32をオフにし、
「EXECUTE」に出会つたとき最初に受取つた元
のプログラム・カウンタの内容を専用記憶30に
復元する。制御は再び1次マイクロプロセツサ1
2に戻され、かくて該マイクロプロセツサは、そ
の復元された元のプログラム・カウンタの内容及
びその他の必要な全てのパラメータ及びレジスタ
情報を入手するとともに、「EXECUTE」命令に
続く命令を取出す。1次マイクロプロセツサ12
が制御を受取つたとき該マイクロプロセツサが実
行すべき命令いかんで、後続するメモリ・アクセ
スは、オーバライド・ラツチ32及び34の出力
状態に従つて、命令取出及びオペランド・アクセ
スの両方、またはオペランド・アクセスだけにつ
いて制御記憶に指向することがある。
本発明によつて、限られた制御記憶を有するマ
ルチマイクロプロセツサによつて実現されたメイ
ンフレーム・データ処理システムにおいて、相対
的に大きい制御記憶を有するメインフレーム・シ
ステムを最適にエミユレートすることができる。
ルチマイクロプロセツサによつて実現されたメイ
ンフレーム・データ処理システムにおいて、相対
的に大きい制御記憶を有するメインフレーム・シ
ステムを最適にエミユレートすることができる。
更に本発明によつて、前記のようなシステムに
おいて、プロセツサ・インタフエース・マイクロ
コードを最小限にし且つシステム・パフオーマン
スを高めるように、主記憶または制御記憶に対す
るマイクロプロセツサのアクセスをオーバライ
ド・ラツチによつて他の記憶タイプへ経路変更す
ることができる。
おいて、プロセツサ・インタフエース・マイクロ
コードを最小限にし且つシステム・パフオーマン
スを高めるように、主記憶または制御記憶に対す
るマイクロプロセツサのアクセスをオーバライ
ド・ラツチによつて他の記憶タイプへ経路変更す
ることができる。
更に本発明によつて、前記記憶アクセスを要求
しているマイクロプロセツサに対して透明な様式
でシステム・パフオーマンスを最適化するよう
に、記憶アクセスを制御・指向することができ
る。
しているマイクロプロセツサに対して透明な様式
でシステム・パフオーマンスを最適化するよう
に、記憶アクセスを制御・指向することができ
る。
更に本発明によつて、マルチマイクロプロセツ
サによつて実現されたメインフレーム・データ処
理システムにおいて、メインフレーム記憶アクセ
スに関するアーキテクチヤ保護規則を侵害しない
方法で、記憶アクセスを制御及び指向することが
できる。
サによつて実現されたメインフレーム・データ処
理システムにおいて、メインフレーム記憶アクセ
スに関するアーキテクチヤ保護規則を侵害しない
方法で、記憶アクセスを制御及び指向することが
できる。
第1図は主記憶、制御記憶及び幾つかの関連す
るロジツクの間で記憶アクセスを指向するための
本発明に従つたラツチ装置の詳細を示す図、第2
図はマルチマイクロプロセツサによつて実現され
た、制御記憶及び主記憶を含むメインフレーム・
データ処理システムの簡略ブロツク図である。 10……デスクトツプ・メインフレーム・デー
タ処理システム、12……1次マイクロプロセツ
サ、14,16……2次マイクロプロセツサ、1
8……プロセツサ・ローカル・バス、20……バ
ス間アダプタ、22……システム・バス、24…
…主記憶モジユール、26……制御記憶モジユー
ル、28……プロセツサ制御ロジツク装置、30
……専用記憶、32……命令オーバライド・ラツ
チ、34……オペランド・オーバライド・ラツ
チ、36……デコーダ、60……マイクロプロセ
ツサ・スイツチ・ラツチ。
るロジツクの間で記憶アクセスを指向するための
本発明に従つたラツチ装置の詳細を示す図、第2
図はマルチマイクロプロセツサによつて実現され
た、制御記憶及び主記憶を含むメインフレーム・
データ処理システムの簡略ブロツク図である。 10……デスクトツプ・メインフレーム・デー
タ処理システム、12……1次マイクロプロセツ
サ、14,16……2次マイクロプロセツサ、1
8……プロセツサ・ローカル・バス、20……バ
ス間アダプタ、22……システム・バス、24…
…主記憶モジユール、26……制御記憶モジユー
ル、28……プロセツサ制御ロジツク装置、30
……専用記憶、32……命令オーバライド・ラツ
チ、34……オペランド・オーバライド・ラツ
チ、36……デコーダ、60……マイクロプロセ
ツサ・スイツチ・ラツチ。
Claims (1)
- 【特許請求の範囲】 1 下記構成要件(a)乃至(h)を有する、マルチ・マ
イクロプロセツサによつて実現されたメイン・フ
レーム・エミユレーシヨン用データ処理システ
ム。 (a) 1次マイクロプロセツサおよび少なくとも1
つの2次マイクロプロセツサ。該マイクロプロ
セツサの各々は該マイクロプロセツサが行なつ
ている動作を表わす制御信号を与えるための出
力ピンを有する。 (b) 主記憶モジユール。 (c) 制御記憶モジユール。 (d) 前記メインフレームの命令セツトをエミユレ
ートするためのマイクロコード。該マイクロコ
ードは前記マイクロプロセツサが利用しうるよ
うに該マイクロプロセツサ又は前記制御記憶モ
ジユールに置かれている。 (e) 前記マイクロプロセツサおよび前記記憶モジ
ユールがアドレスおよびデータを相互に授受す
るように該マイクロプロセツサおよび該記憶モ
ジユールへ接続されたシステム・バス。 (f) 前記マイクロプロセツサおよび前記システ
ム・バスへ接続され、前記制御記憶モジユール
の1区分としてアドレスしうるように該制御記
憶モジユールへ論理的に組込まれた記憶写像式
専用記憶装置。該専用記憶装置はハードウエア
およびソフトウエアの対話を容易にするように
少なくとも1つの前記マイクロプロセツサに関
連するラツチ装置を含んでおり、該ラツチ装置
はそれ自体に関連する特定のアドレスを有す
る。 (j) 前記マイクロプロセツサの制御信号出力ピン
と前記ラツチ装置の入力の間に接続され、予期
されなかつた記憶アクセスが要求されるたびに
前記ラツチ装置の出力をセツトおよびリセツト
するための第1の論理回路。 (h) 前記ラツチ装置の出力と前記システム・バス
の間に接続され、前記ラツチ装置の出力が予定
の論理値を有するとき、アクセスすべき記憶モ
ジユールを識別する前記システム・バス上のア
ドレスを予定の基準に従つて変更することによ
り、当該記憶アクセスを他方の前記記憶モジユ
ールへ指向させるための第2の論理回路。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US06/527,053 US4591982A (en) | 1983-08-29 | 1983-08-29 | Storage selection override apparatus for a multimicroprocessor implemented data processing system |
| US527053 | 1983-08-29 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6055467A JPS6055467A (ja) | 1985-03-30 |
| JPS6313223B2 true JPS6313223B2 (ja) | 1988-03-24 |
Family
ID=24099911
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP59078786A Granted JPS6055467A (ja) | 1983-08-29 | 1984-04-20 | マルチ・マイクロプロセツサによつて実現されたメインフレ−ム・エミユレ−シヨン用デ−タ処理システム |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US4591982A (ja) |
| EP (1) | EP0135753B1 (ja) |
| JP (1) | JPS6055467A (ja) |
| DE (1) | DE3485205D1 (ja) |
Families Citing this family (24)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4814977A (en) * | 1983-10-18 | 1989-03-21 | S&C Electric Company | Apparatus and method for direct memory to peripheral and peripheral to memory data transfers |
| US4729091A (en) * | 1984-11-13 | 1988-03-01 | International Business Machines Corporation | Directing storage requests prior to address comparator initialization with a reference address range |
| JPS61182160A (ja) * | 1985-02-06 | 1986-08-14 | Toshiba Corp | デ−タ処理装置 |
| US4868738A (en) * | 1985-08-15 | 1989-09-19 | Lanier Business Products, Inc. | Operating system independent virtual memory computer system |
| US4972317A (en) * | 1986-10-06 | 1990-11-20 | International Business Machines Corp. | Microprocessor implemented data processing system capable of emulating execution of special instructions not within the established microprocessor instruction set by switching access from a main store portion of a memory |
| JPS6398038A (ja) * | 1986-10-06 | 1988-04-28 | インタ−ナショナル・ビジネス・マシ−ンズ・コ−ポレ−ション | デ−タ処理システム |
| JP2602240B2 (ja) * | 1987-08-28 | 1997-04-23 | 株式会社日立製作所 | マルチプロセツサシステム |
| US5109515A (en) * | 1987-09-28 | 1992-04-28 | At&T Bell Laboratories | User and application program transparent resource sharing multiple computer interface architecture with kernel process level transfer of user requested services |
| US4953078A (en) * | 1987-10-28 | 1990-08-28 | Digital Equipment Corporation | Apparatus and method for multi-threaded program execution in a microcoded data processing system |
| JPH01297764A (ja) * | 1988-05-25 | 1989-11-30 | Nec Corp | プロセッサ |
| US4979106A (en) * | 1988-08-29 | 1990-12-18 | Amdahl Corporation | Customization of a system control program in response to initialization of a computer system |
| US5126944A (en) * | 1988-11-17 | 1992-06-30 | Nec Corporation | Data processing apparatus for producing in sequence pulses having variable width at output ports |
| US5077657A (en) * | 1989-06-15 | 1991-12-31 | Unisys | Emulator Assist unit which forms addresses of user instruction operands in response to emulator assist unit commands from host processor |
| US5307468A (en) * | 1989-08-23 | 1994-04-26 | Digital Equipment Corporation | Data processing system and method for controlling the latter as well as a CPU board |
| US5123094A (en) * | 1990-01-26 | 1992-06-16 | Apple Computer, Inc. | Interprocessor communications includes second CPU designating memory locations assigned to first CPU and writing their addresses into registers |
| CA2045705A1 (en) * | 1990-06-29 | 1991-12-30 | Richard Lee Sites | In-register data manipulation in reduced instruction set processor |
| US5408627A (en) * | 1990-07-30 | 1995-04-18 | Building Technology Associates | Configurable multiport memory interface |
| US5455909A (en) * | 1991-07-05 | 1995-10-03 | Chips And Technologies Inc. | Microprocessor with operation capture facility |
| US5274791A (en) * | 1991-07-05 | 1993-12-28 | Chips And Technologies, Inc. | Microprocessor with OEM mode for power management with input/output intiated selection of special address space |
| EP0752666A3 (en) * | 1995-07-06 | 2004-04-28 | Sun Microsystems, Inc. | Method and apparatus for fast-forwarding slave requests in a packet-switched computer system |
| US5812823A (en) * | 1996-01-02 | 1998-09-22 | International Business Machines Corporation | Method and system for performing an emulation context save and restore that is transparent to the operating system |
| FR2765361B1 (fr) * | 1997-06-26 | 2001-09-21 | Bull Cp8 | Microprocesseur ou microcalculateur imprevisible |
| US7882336B2 (en) * | 2007-02-01 | 2011-02-01 | International Business Machines Corporation | Employing a buffer to facilitate instruction execution |
| US11335376B1 (en) * | 2021-01-28 | 2022-05-17 | Seagate Technology Llc | Drive controller-override mechanism |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3631405A (en) * | 1969-11-12 | 1971-12-28 | Honeywell Inc | Sharing of microprograms between processors |
| US4079454A (en) * | 1976-01-02 | 1978-03-14 | Data General Corporation | Data processing system using read-only-memory arrays to provide operation in a plurality of operating states |
| US4231087A (en) * | 1978-10-18 | 1980-10-28 | Bell Telephone Laboratories, Incorporated | Microprocessor support system |
| DE2846054C2 (de) * | 1978-10-23 | 1985-08-14 | Siemens AG, 1000 Berlin und 8000 München | Schaltungsanordnung zur Erweiterung des Adressierungsvolumens einer Zentraleinheit, insbesondere eines Mikroprozessors |
| US4308615A (en) * | 1979-09-17 | 1981-12-29 | Honeywell Information Systems Inc. | Microprocessor based maintenance system |
| US4365294A (en) * | 1980-04-10 | 1982-12-21 | Nizdorf Computer Corporation | Modular terminal system using a common bus |
| US4476522A (en) * | 1981-03-09 | 1984-10-09 | International Business Machines Corporation | Programmable peripheral processing controller with mode-selectable address register sequencing |
| US4368515A (en) * | 1981-05-07 | 1983-01-11 | Atari, Inc. | Bank switchable memory system |
| US4503491A (en) * | 1981-06-29 | 1985-03-05 | Matsushita Electric Industrial Co., Ltd. | Computer with expanded addressing capability |
| US4485457A (en) * | 1983-05-31 | 1984-11-27 | Cbs Inc. | Memory system including RAM and page switchable ROM |
-
1983
- 1983-08-29 US US06/527,053 patent/US4591982A/en not_active Expired - Fee Related
-
1984
- 1984-04-20 JP JP59078786A patent/JPS6055467A/ja active Granted
- 1984-08-08 EP EP84109396A patent/EP0135753B1/en not_active Expired
- 1984-08-08 DE DE8484109396T patent/DE3485205D1/de not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| EP0135753B1 (en) | 1991-10-23 |
| DE3485205D1 (de) | 1991-11-28 |
| US4591982A (en) | 1986-05-27 |
| EP0135753A2 (en) | 1985-04-03 |
| EP0135753A3 (en) | 1988-03-02 |
| JPS6055467A (ja) | 1985-03-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS6313223B2 (ja) | ||
| US7158927B2 (en) | System and method for the logical substitution of processor control in an emulated computing environment | |
| TWI407366B (zh) | 具有微代碼之微處理器、在微處理器中儲存資料的方法、以及使用於計算裝置之電腦程式產品 | |
| US4926322A (en) | Software emulation of bank-switched memory using a virtual DOS monitor and paged memory management | |
| JP2610812B2 (ja) | データ処理システムのエミユレーシヨン | |
| US5867703A (en) | Common reset ROM | |
| JPH0430053B2 (ja) | ||
| JPH05250183A (ja) | マイクロプロセッサ装置及びcpu割込方法 | |
| US5802359A (en) | Mapping processor state into a millicode addressable processor state register array | |
| JP2974577B2 (ja) | コンピュータシステム | |
| JPH0316660B2 (ja) | ||
| JPH07120338B2 (ja) | 共同プロセッサによる命令の実行をデータプロセッサが調整する方法および該データプロセッサ | |
| JP4316882B2 (ja) | エミュレートされるコンピューティング環境におけるプロセッサ制御の論理的置換のためのシステムおよび方法 | |
| EP0575171B1 (en) | Enhanced system management method and apparatus | |
| US4814977A (en) | Apparatus and method for direct memory to peripheral and peripheral to memory data transfers | |
| US5918056A (en) | Segmentation suspend mode for real-time interrupt support | |
| JPH05233325A (ja) | マイクロプロセッサ装置及び割込みと自動化入出力トラップ再始動を行う方法 | |
| JP2535086B2 (ja) | リング削減ロジック装置 | |
| JP2731618B2 (ja) | エミュレータ | |
| JPS62120542A (ja) | 情報処理装置 | |
| JP2654105B2 (ja) | マイクロプロセッサ | |
| JPS6097459A (ja) | デ−タ処理システム同期方法 | |
| JPS61204743A (ja) | マイクロ・プロセツサの割込み制御方式 | |
| JPH0740224B2 (ja) | マイクロプログラム制御方式 | |
| Nourse | Microsoft Windows network virtual device drivers in PATHWORKS for DOS |