JPS60147861A - デ−タ処理システム - Google Patents

デ−タ処理システム

Info

Publication number
JPS60147861A
JPS60147861A JP59243556A JP24355684A JPS60147861A JP S60147861 A JPS60147861 A JP S60147861A JP 59243556 A JP59243556 A JP 59243556A JP 24355684 A JP24355684 A JP 24355684A JP S60147861 A JPS60147861 A JP S60147861A
Authority
JP
Japan
Prior art keywords
microprocessor
memory
page
data
control processor
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
JP59243556A
Other languages
English (en)
Other versions
JPH0642238B2 (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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS60147861A publication Critical patent/JPS60147861A/ja
Publication of JPH0642238B2 publication Critical patent/JPH0642238B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Multi Processors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Memory System (AREA)

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は複数の知能端末がメモリを共有するようなデー
タ処理システムに関する。
[従来技術] 共通のメモリを使用する多重プロセッサシステムでは、
通常、高速のTFIMシステム/370プロセッサ(た
とえば3081)のような単一の逐次的の制御装置が用
いられている。プロセッサはデータの要求を受け取ると
、メモリの内容を探索して要求されたデータがそこに記
憶されているかどうかを見て、もしそこにないときは、
外部記憶装置(たとえばディスク)から1次メモリへデ
ータを転送するよう要求する。異なる端末から複数の要
求を受け取ったときは、逐次式の制御装置は各要求を順
次に処理しなければならない。
[発明が解決しようとする問題点] したがってこのようなシステムは非常に高速のプロセッ
サを使用しなければならず、必然的にそのコストは極端
に増加する。あるいは代わりに安価で低速なプロセッサ
を用いれば、メモリアクセスに多大な時間を要する。
本発明はこの問題点を解決すること、すなわち安価にか
つ効率良くメモリを制御できるデータ処理システムを提
供することにある。
[問題点を解決するための手段] 本発明は、少なくとも1つの知能端末と、データを記憶
するメモリと、知能端末からの要求に基づいて少なくと
も1一つのメモリ制御機能を遂行する制御手段と、を含
むデータ処理システムであって、 この制御手段が複数の制御部を有し、各々の制御部がメ
モリの各領域に対してそれぞれにメモリ制御機能を遂行
することを特徴とするデータ処理システムである。
こうしてメモリの制御を東−の制御装置で逐次的に遂行
するのではなく、複数の制御部(実施例ではマイクロプ
ロセッサ)が同時的に遂行することにより安価にかつ効
率よくメモリを制御することができる。
[実施例] 第1図は本発明を利用できるデータ処理システムの構成
を示す図である。データ処理システムは複数の知能端末
10(′図ではqtにc p Uと記す)を有する。こ
れらの知能端末10はスイッチ12の各ボートに接続さ
れろ。各知能端末は、たとえばIBMPCのようなパー
ソナルコンピュータでもよい。知能端末10はそれぞれ
写像部14を介してスイッチ12に接続される。写像部
14は単にアドレス変換のために具備されるものである
スイッチ12のボートには様々な装置および様々な回路
を接続できる。たとえば、プリントサーバ16、ファイ
ルサーバ18、メモリ20、共有 ゛のメインフレーム
22等である。さらにスイッチ12のボートの1つにネ
ットワークゲートウェイ24を接続することもできる。
スイッチ12は好適には任意のボート間を選択的に接続
できる非閉塞型のスイッチである。こうして知能端末1
0はどれでもプリントサーバ16、ファイルサーバ18
、またはメインフレーム22(たとえばIBMシステム
/370)をアクセスできる。知能端数10はスイッチ
12を介して互いに通信することもできる。互いにおよ
び周辺装置と頻繁に通信する知能端末10が第1図のス
イッチ12に接続されている。めったに通信を行わない
別の知能端数(図示せず)はネットワークゲートウェイ
22を介して第1図に示される知能端数10と通信する
。ネットワークゲートウェイ23− 2はローカルエリアネットワークへの接続部であったり
、別の知能端末群が接続される第2のスイッチの接続部
であることもある。
本実施例に従った記憶装置20の設計および動作につい
て説明する。記憶装置20は、1次メモリセロ(たとえ
ばRAM)、2次メモリ28(たとえばディスク記憶装
置)、および制御装置3゜を含むことができる。1次丈
モリ26はページ形式またはセグメント形式のメモリヤ
もよい。本実施例によるメモリのアドレス指定の制御は
経済的で効率が良い。通常のシス宇ムでは、メモリの制
御に必要な機能を実現するには、メモリマツプおよびハ
ツシングテーブル(またはV′)ずれか一方)を用いる
、高速の逐次的な機械が使用される。つまり、従来この
機能は、共有された記憶装置の様々なページの状況が記
録された局所テーブルを用いて1つまたは全ての知能端
数10で遂行されていた。本実施例は、所望のメモリあ
制御を実現するために11+L−の高速の逐次的な機械
を用いるのではなく、複数のマイクロプロセッサを用い
る。
4− 第2図は共有記憶装置120を制御するための多重マイ
クロプロセッサシステムの1構成例を示す図である。ア
プリケーションプロセッサであるCPUll0は第1図
の知能端末10に対応し、スイッチ112は第1図のス
イッチ12に対応し、共有記憶装置(以下SO8という
)120は第1図の1次メモリ26および2次メモリ2
8に対応し、記憶装置制御機構(以下SCFという)1
30は第1図の制御装置30に対応するものである。
5CF130は、5C8120の内容に関するディレク
トリイの保持、データ転送の指令発行等の様々な記憶装
置制御機能を遂行する。
第3図は多重マイクロプロセッサメモリ制御システムの
好適な構成例を示す図である。SC8120は1次メモ
リ12dと2次メモリ128を含むことができる。通常
のメモリコントローラ132は5CF130と通信しな
がら、1次メモリ126と2次メモリ128との間のデ
ータ転送を制御できる。
S CF 1.30はマイクロプロセッサのアレイ13
4と制御プロセッサ136を含むことができる。
アレイ134のマイクロプロセッサは、たとえば、ザイ
ログ社のZ8o、またはインテル社の8086でよい。
制御プロセッサ136もインテル社の8086マイクロ
プロセツサでよい。もちろん他のマイクロプロセッサを
用いることもできる。
好適には、1次メモリ126は複数の領域に分かれてい
るページ形式のメモリである(各領域は複数ページから
成る)。アレイ134の各マイクロプロセッサは1次メ
モリ126のこれらの各領域に割り当てられている。ア
レイ134においてはマイクロプロセッサを複数個接続
することができる。一般的には、マイクロプロセッサ(
μP)は第4A図および第4B図のように配列できる。
各マイクロプロセッサは通信ボートすなわちチャネル1
33を介して4つの隣接したマイクロプロセッサに接続
される。各マイクロプロセッサは、さらに、共通のバス
135が接続されているので、制御プロセッサ136と
通信できる。各マイクロプロセッサはバスアービタを有
する2重ボート式の局所メモリ(例ばR/WポートとR
Oボートのもの、又はR/Wポートが2つのもの)を含
む。
アレイ134の各マイクロプロセッサはそれに割り当て
られた1次メモリ126の領域に関する状況を各自の局
所記憶部(すなわちディレクトリ)に保持する。したが
って、共有記憶装置の全体を制御しなければならないで
あろう逐次的な制御に比べて、さらに高速でしかも一定
の時間で応答できる。CPUll0が発するデータの要
求は全てアレイ134へ送られる。そうしてアレイ13
4は要求されたデータが記録されているところのアドレ
ス(−次メモリ126の)をみつけてそれをCPUI 
10へ返送する。こうしてCPUI 10はスイッチ1
]−2を介して1次メモリ126を直接アクセスできる
。要求されたデータが1次メモリ126にないときは、
アレイ134のマイクロプロセッサはメモリ・コントロ
ーラ132へ指令を送って、要求されたデータを2次メ
モリ128から1次メモリ126へ転送させる。この転
送が完了したことを示す信号がアレイ134のマイク7
− ロプロセツサに返ってくると、新しくデータが転送され
たところのアドレス(19次メモリ126の)がCPU
1.10へ送られる。
次に第5図ないし第7図を参照して本実施例の動作を説
明する。第5図に示すように、制御プロセッサ135は
スイッチ112、アレイ134、およびメモリコントロ
ーラ132相互間のメツセージ転送のインターフェース
として働く。メモリコントローラ132またはスイッチ
112からのメツセージはアレイ134へ送られ、アレ
イ134からのメツセージは必要に応じてスイッチ11
2またはメモリコントローラ132へ送られる。
第6A図を参照してアレイ134の動作を説明する。成
るCPU1.IOがデータを要求すると、その要求はス
イッチ112を介して制御プロセッサ136へ接続され
る。制御プロセッサ136は要求されたアドレス(仮想
アドレス)をハツシングすることによってアレイ134
のマイクロプロセッサを特定してそこへ要求を送る。こ
のマイクロプロセッサが、ステップ200で、受は取っ
た8− メツセージはCPU110からのデータ要求であると判
断し、自身のディレクトリを調べて、要求されたデータ
が、自身に割り当てられた領域(1次メモリ126の)
に記憶されているかどうかをみる。要求されたデータが
1次メモリ126に記憶されているときは、そのマイク
ロプロセッサは、ステップ202で、そのデータが記憶
されているところのアドレス(実アドレス)をもとのC
PU110へ返す(制御プロセッサ136およびスイッ
チ112を介して)。こうしてCPUll0はスイッチ
112を介して1次メモリ126を直接アクセスするこ
とができる。
ところで要求されたデータがディレクトリにリストされ
ていない時は、マイクロプロセッサは自身に割り当てら
れた領域(1次メモリ126の)に、要求されたデータ
を記憶するだけの余裕が十分にあるかどうかを判断する
。十分な余裕があれば、マイクロプロセッサはメモリコ
ントローラ132へ指令を送って、2次メモリ128か
ら1次メモリ126の所望のアドレスのところにデータ
を転送させる。ここで流れ図Aに戻る。メモリコントロ
ーラ132によってこのデータ転送が完了するとすぐに
その事実を示す信号が制御プロセッサ136を介して所
望のマイクロプロセッサに送られる。こうしてマイクロ
プロセッサは、ステップ204でデータ転送が完了した
と判断する。新しくデータが転送されたところのアドレ
ス(1次メモリ126の)がもとのCP U 1.1.
0へ送られる。
要求されたデータが1次メモリ126になく、マイクロ
プロセッサがステップ206で、自身に割り当てられた
領域に要求されたデータを記憶するだけの余裕がないと
判断したときは、マイクロプロセッサは現にある1次メ
モリ126の内容の一部を2次メモリ128に転送して
余裕を作り出すか、または別のところの領域を使う。た
いていは後者の方法が優先する。そこでマイクロプロセ
ッサは、ステツ2’207で、チャネル133を介して
隣接するマイクロプロセッサに成る要求を送る。これは
隣接するマイクロプロセッサに割り当てられている領域
(1次メモリ126の)を借りるための交渉を要求する
ものである。以下この要求のことを借用要求と呼ぶこと
にする。マイクロプロセッサが、借用要求に対する応答
を隣接したマイクロプロセッサから受け取ると、当該マ
イクロプロセッサは、応答したマイクロプロセッサがそ
こに割り当てられている領域に余裕を持っているかどう
かを判断する。当該マイクロプロセッサに割り当てられ
た領域の中で空いているところ(しかしながらこの余裕
はデータを記憶するには十分でない)と、隣接のマイク
ロプロセッサに割り当てられた領域から借りた部分とで
、要求されたデータを記憶するに十分な容量になれば、
借用要求は成功であるとみなされ、当該マイクロプロセ
ッサは、2次メモリ128から1次メモリ126へ所望
のデータを転送させるための要求を、メモリコントロー
ラ132へ送る。こうして流れ図は第6A図のAに戻っ
て、当該マイクロプロセッサは、データ転送が完了した
ことを示す信号がメモリコントローラ132から送られ
てくるのを待つ。
=11− □借用要求が不成功のときは、当該マイクロプロセッサ
は1次メモリ126で現に記憶している内容の一部分を
、2次メモリ128へ転送して、要求されたデータのた
めに新た外余裕を作り出す。
当該マイクロプロセッサはステツ゛プ208で2次メモ
リ128へ転送す末き部分を決定す乞。このような領域
の一部(ページ形式ならばページ)の追出しは、たとえ
ばL RUアルゴリズムのようなよく知られた判断規準
に基づいて実行できる(ここでiメモリの形式をたとえ
ばページ形式と仮定して、各マイクロプロセッサ1こ割
り当てられている領域において、この追出しの+ILi
である領域の一部めことを以下ページと記して説明する
ことにする)。しかしながら当該マイクロプロセッサは
ページの追出しを単純には実行できない。というのは、
追出すべきページを、別のCPUI 10がスイッチ1
12を介して現に直接アクセスしていることがあるから
である。そこで、当該マイクロプロセッサは追い出すべ
きページを決定した場合、現にそのページをアクセスし
てい4cput1゜12− へ然るべき信号を送って、そのページが1次メモリ12
6から追い出されるページであることを知らせる。こう
して流れ図は第6A図のAに戻って、当該マイクロプロ
セッサはそのCPUll0からの肯定応答を待つ。肯定
応答を受け取ればステップ210へ進み、画該マイクロ
プロセッサはメモリコントローラ132ヘデータ転送の
指令を送って、追い出すべ曇データを1次メモリ126
から2次メモリ128へ転送させ、要求された新しいデ
ータを2次メモリ128から1次メモリの適切なアドレ
スのと出ろへ転送させる。こうして流れ図はAに戻って
当該マイクロプロセッサはメモリコントローラ132か
ら、データの転送が完了したことを示す信号が送られて
くるのを待つ。この信号が送られてくれば、要求された
データが転送されたところの1欣メモリ126の新しい
アドレスが、メモリコントローラ132およびスイッチ
112を介してCPUll0に返ってくる。
メモリコントローラ132の機能は、データ転送要求を
処理することおよびそのデータ転送が完了したことを示
す信号を制御プロセッサ136(したがってアレイ13
4のマイクロプロセッサ)へ返すことだけである。第7
図にメモリコントローラ132の動作を表わす流れ図を
示す。メモリコントローラ132は通常の高速のディス
クコントローラでもよい。
前にも説明したように、アレイ134においてデータの
要求を制御すべきマイクロプロセッサを決めるのに制御
プロセッサ136は好適にはハツシングを遂行する。し
かしながらハツシングが実用的でないときは、回報通信
アルゴリズムを用いることもできる。
以下、ハツシング機能を用いる場合の動作をハツシング
オペレーション、回報通信アルゴリズムを用いる場合の
動作を回報通信オペレーションのように言う。
回報通信オペレーションの場合の流れ図はこれから説明
する追加されるステップ以外は、第5図、第6A図、第
6B図、および第7図と同じである。
以下変更部分を説明する。第1の変更点は第5図の制御
プロセッサ132の動作の流れ図において、ステップ2
12とステップ214の間に第8図に示すステップを追
加することである。第5図のステップ212では、制御
プロセッサ136はメツセージをどこから受け取ったか
を判断する。制御プロセッサ1,36がCPU110の
1つからメツセージを受け取った場合、制御プロセッサ
136は、そのメツセージをどのマイクロプロセッサ(
アレイ134の)に送ればよいのかがわからない(ハツ
シング機能があるときは要求されたアドレスをハツシン
グすることでマイクロプロセッサを特定できる)。そこ
で制御プロセッサ136は第5図のステップ212と2
14の間で第8図に示すステップを遂行する。すなわち
、制御プロセッサ136は要求されたページの番号を全
てのマイクロプロセッサに回報通信して(共通のバス1
35を介して)、そのページ番号を管理する特定のマイ
クロプロセッサからこの回報通信に対する応答が返って
くるのを待つ。この際の各マイクロプロセッサの動作は
第6A図のステップ200と15− これから説明するもう1つの変更点である第9図のステ
ップである。第6図の子テップ200で、各マイクロプ
ロセッサはどこからどんなメツセージが送られてきたか
を調べる。したがってこのステップでは、そのメツセー
ジがページ番号の回報通信であるときもそれを検知でき
る。ページ番号が回報通信されると、各マイクロプロセ
ッサはそのページが自分の管理するものであるかどうか
を検査して、もしそうであるときは、そのことを示す応
答を制御プロセッサ136へ返す。そうして流れ図は第
6A図のAに戻る。、塁上が第9図のステップである。
こうして要求されたページを管理するマイクロプロセッ
サからその管理者であることを示す応答を制御プロセッ
サ136が受け取ると、制御プロセッサ136の動作の
ステップは第8図から第5図のステップ214へ進む。
制御プ、ロセッサ136が全マイクロプロセッサにペー
ジ番号を回報通信した後(第8図のステップ)第5図の
はじめに戻りそのページの担当者(マイクロプロセッサ
)からの肯定応答を待つこ16− とは、回報通信オペレーションの場合の動作である。担
当マイクロプロセッサから肯定応答を受け取ればステッ
プ212で、マイクロプロセッサからメツセージが来た
と検知されて、ステップ213へ進む。
ところで回報還御オペレーションでは第8図のステップ
が追加されるので、データの要求の処理にはそれだけ時
間がかかる。したがって制御プロセッサ136にマイク
ロプロセッサからの即答を待たせることによって担当マ
イクロプロセッサの決定を優先させることが望ましいで
あろう。さらに、アレイ134の各マイクロプロセッサ
が制御プロセッサ136からページ番号が回報通信され
てきたと検知したとき、各マイクロプロセッサにその優
先度を認識させて、直ちに応答させるか、または他のマ
イクロプロセッサが応答するまでは別の信号を共通のバ
ス135に出すのを差し控えるようにすることが望まし
いであろう。
回報通信オペレーションの場合、要求されたページを管
理することを示す応答がどのマイクロプロセツサからも
返ってニないときは、制御プロセッサ136は新しいペ
ージが必要であるとわかる。
そうした場合、制御プロセッサ136はア1ノイ134
の全マイクロプロセッサに新しいページを要求するメツ
セージ(以下新ページ要求という)を回報通信する。使
用可能なページを有するマイクロプロセッサは全て、共
通のバス135を介してそのページの識別番号(ページ
番号)を返す。使用可能なページを有するマイクロプロ
セッサが複数ある場合は、制御ブL1セッサ136は適
切なアルゴリズムを用いて使用可能なページの1つを最
少の時間で選択する。メモリに一時に1ペ一ジ分のコピ
ーしか存在しないときは、1つのマイクロプロセッサし
か応答しないので、制御プロセッサ136はそのページ
をアクセスするための要求を回報通信できる。この手法
を用いればデータおよびコードシェアリング(シノニム
問題)ならびにページの2重コピーも処理することがで
きる。
アレイ134の特定のマイクロプロセッサにひとたびペ
ージの担当が割り当てられると、そのページを要求して
いるCPU1.10がそのページは不必要になったと示
すまでは、当該マイクロプロセッサはそのページの担当
を維持する。したがってそれまでは、そのページに対す
る要求は全て、当該マイクロプロセッサによって肯定応
答がなされる。データを要求しているもとのCPUll
0がそれは不必要になったと示す前に、当該マイクロプ
ロセッサがそのページを2次メモリ128へ追い出す必
要があるとわかったときは、当該マイクロプロセッサは
その追出しの前に、もとのCPU110にそのことを知
らせてやる。これはハツシングによる場合と全く同じで
ある。後続の同じデータ要求に応答して、同じマイクロ
プロセッサがそのページの担当であると肯定応答し、メ
モリコントローラ132へ然るべき要求を送ってそのペ
ージを2次メモリ128から1次メモリ126に転送さ
せる。これに関してもハツシングによる場合と同じであ
る。
マイクロプロセッサが成るページの担当を受諾したがそ
のページを1次メモリ126から追い出19− したときでも、当該マイクロプロセッサが自身に割り当
てられた領域(1次メモリ126の)に十分な余裕がな
いときにそのデータの要求を受け取ることができる。そ
うした場合は、当該マイクロプロセッサは隣接したマイ
クロプロセッサに割り当てられている領域の一部をイI
i用するか、または現に自身に割り当てられた領域に記
憶している内容の一部を追い出して新しく要求されたデ
ータのための余裕を作り出す。前者、後者いずれも、ハ
ツシングの場合と全く同様に遂行される。
アレイ134のマイクロプロセッサの担当を決めるのに
制御プロセッサ136が要求されたデータのアドレスを
ハツシングするという動作(はツシングオペレーション
)は、通常は回報通信オペレーションよりも効率が良い
であろう。しかしながら同報通信オペレーションには、
個々のマイクロプロセッサの負荷(ぺ−9711当の負
荷)を効率良くバランスがとれるという利点がある。以
下各オペレーションのi徴について説明する。ハツシン
グオペレーションの場合は、アレイ134の各20− マイクロプロセッサには、1次メモリ126の各領域だ
けでなく仮想アドレス空間の担当もそれぞれ割り当てら
れる。データの要求をする度毎に仮想アドレスがハツシ
ングされて担当マイクロプロセッサが決まる。特定の記
録データが要求されるときは常に同じマイクロプロセッ
サの担当とみなされる。したがって担当マイクロプロセ
ッサは直ちに決定される。以上のことからハツシングオ
ペレーションは効率が良いと言えるであろう。
同報通信オペレーションの場合は、データの要求は全て
マイクロプロセッサに回報通信されてから肯定応答がな
される。担当を受諾するマイクロプロセッサが全くない
ときは、制御プロセッサ136は新ページ要求を回報通
信して応答のあったマイクロプロセッサの1つにその担
当を割り当てねばならない。この手法は要求されたペー
ジの担当を決めるのに少し時間がかかるが、何当に対す
るマイクロプロセッサの負荷のバランスはとれる。
詳しく言えば、ハツシングオペレーションの場合は特定
のページは常に同じマイクロプロセッサが担当するのに
対し、回報通信オペレーションの場合は、もとの要求の
時点におけるマイクロプロセッサの負荷に基づいて任意
のマイクロプロセッサに担当を割り当てることができる
のである。
回報通信オペレーションに関する負荷バランスの特徴は
、新しいページの担当の割当てに有益というだけでなく
、以下に示すような利点もある。
第1のマイクロプロセッサが自身のディレクトリすなわ
ちリストは長くなり起ぎたとわかると、第1のマイクロ
プロセッサは隣接したマイクロプロセッサと通信して、
現に自身が担当しているページの1つを隣接のマイクロ
プロセッサが分担できるかどうかを調べる。隣接のマイ
クロプロセッサのリストが適当な長さであれば、そのマ
イクロプロセッサは1ページ以」二の担当を受諾して将
来その部分の要求があったときは全て肯定応答する。
こうしたページ管理の分担によって負荷のバランスをと
ることは、各マイクロプロセッサに対して仮想アドレス
空間の担当が固定されていないような同報通信オペレー
ションにおいて可能である。
これはハツシングオペレーションでは実現できない。ハ
ツシングオペレーションにおいては過負荷となったマイ
クロプロセッサは隣接のマイクロプロセッサの担当して
いる別の領域を借りることができるのみである。
回報通信オペレーションの場合は制御プロセッサ136
は共通のバス135を介して各マイクロプロセッサと通
信できるので、厳密に言えば、マイクロプロセッサを相
互接続(チャネル133)する必要はない。しかしなが
らこれまでに説明したように負荷のバランスをとること
および領域を借用することは、チャネル′133があれ
ばさらに効率良く実現できる。しかも、各マイクロプロ
セッサに2重ポート式の局所メモリを具備できて各マイ
クロプロセッサはディレクトリと隣接のマイクロプロセ
ッサを監視することができるという利点もある。
マイクロプロセッサの相互接続によってそれに障害が生
じた場合のバックアップ保護が提供できる。たとえば、
成るページ番号が全マイクロプロ23− セッサに回報通信されて、どこからも応答がなかったと
き、制御プロセッサ136は全マイクロプロセッサに各
自の隣接のマイクロプロセッサのディレクトリを調べる
よう要求して、マイクロプロセッサが故障したわけでは
なく単に応答できなかっただけであることを確認する。
第3図のところで説明したメモリコントローラ132を
介してCPU]、10が1次メモリ126と通信する構
成が幾つかあるので、メモリコントローラ132は物理
的には5C8120の中に所在させておく。第3図に示
した好適な構成例では、CPUll0がスイッチ112
を介して1次メモリ126を直接アクセスできるよう、
1次メモリ126は2重ポート式であった。次に他の構
成例を第10図および第11図を参照して説明する。
第10図では、制御プロセッサ136とメモリコントロ
ーラ132とを直接に接続するものはなく、スイッチ1
12を1次メモリ126へ直接に接続するものもない。
第10図の構成は第3図の構成と北壁て安価に実現でき
るが、制御プロセッ24− サ136とメモリコントローラ132との間の信号の受
渡しは全てスイッチ112を介さねばならないので、効
率はあまり良くない。
第11図に示す構成は、1次メモリ126と2次メモリ
128との間のデータ転送もスイッチ112を介して行
わねばならないので、第10図の構成よりもさらに動作
が遅くなる。
前にも説明したように、1次メモリ126は複数のマイ
クロプロセッサが共同で管理する。したがって1次メモ
リ126は、仮りに単一の制御(全ての要求を逐次的に
処理し、しかもそれ自身で共有された記憶装置全体を管
理しなければならないような制御)を用いたとしたとき
に生ずるであろうメモリアクセスの極端な遅延を伴わず
に、非常に大きくできる。これは、たとえば独立した6
4個のマイクロ、プロセッサを有する制御装置のシノニ
ム問題を考えてみれば理解できる。この場合、メモリシ
ステムは仮想アドレスを与えられ、共有記憶装置の中で
現に仮想アドレスに写像さ些たページがあるかどうか(
たとえそれが他の識別子に基づいてもたらされたもので
あっても)が決定される。本発明に従って共有記憶装置
の合計のページ数は、大雑把に言って、相等しい64個
のセットに分けられ、各セットはそれ専用のマイクロプ
ロセッサによって独立にかつ同時に検査される。したが
ってこれと等価な効果を逐次的な制御で得ようとすれば
、マイクロプロセッサの64倍の処理速度が必要である
ところでマイクロプロセッサ間の相互接続の主な目的は
1つのマイクロプロセッサの領域に余裕がない場合に隣
接のマイクロプロセッサの領域を借りられるようにそこ
°と交渉できることであるが、この相互接続のおかげで
各マイクロプロセッサはメモリ全体の応答性を落すこと
なく、正確さを保証するために各自の広範囲な計算を実
行することもできる。実際この手法の主な利点はメモリ
の可用性が回復、ジャーナリング、書き戻し、事前取出
し等の際必要とされる補助的な処理に、影響されないこ
とである。Cp u ]、 10からの要求を直列化す
る必要がないとさくたとえば持久性永続データのジャー
ナリング)は、制御プロセッサ136は現時点の要求を
送出した直後の別にCPU110からの付加的な要求を
自由に処理できる。各マイクロプロセッサはそこに割り
当てられたページ/セグメントに関するどんな状況をも
更新し、共通のバス135を用いて必要なデータ転送を
遂行する。こうした更新やデータ転送に係る活動は、制
御プロセッサ136、全てのCPUll01および他の
各マイクロプロセッサに対しては非同期的である。
[発明の効果] 本発明によれば大量生産で実現できる同一で安価なマイ
クロプロセッサを組み合わせることによってメモリの制
御が達成されるので、従来の逐次的な制御に比べて非常
に経済的である。これはVLS丁技術により可能となっ
た。また、たとえば64個以上のマイクロプロセッサを
本発明で示すような構成にすることができるので、各マ
イクロプロセッサの動作は比較的遅くてもよい。この結
果、高度の冷却や電力分列網が不要になるのでそ=27
− 答時間が一定であるという利点もある。
【図面の簡単な説明】
第1図は本発明を利用できるデータ処理システムの構成
を示すブロック図、′@′2図は実施例を説明するため
のブロック図、第3図は好適な実施例の1構成例を示す
ブロック図、第4A図はマイクロプロセッサの相互接続
の様子を示すブロック図、第4i図はマイクロプロセッ
サの相互接続およびマイクロプロセラ与と制御プロセッ
サとの接続の様子を示すブロック図、第5“図は制御プ
ロセッサの動作を説明する流れ図、第6A図および第6
B図は各マイクロプロセッサの動作を説明する流れ図、
第7図はメモリコントローラの動作を説明する流れ図、
第8図および第9図は回報通信オペレーションの場合に
、第5図ならびに第6A図およびiGB図のそれぞれに
追加すべきステップを示す流れ図、第10図および第1
1図は第3図に示すi成例と異なる他の構成例を示すブ
ロック図で28− ある。 出願人 インターナショナル・ビジネス・マシーンズ・
コーポレーション 代理人 弁理士 頓 宮 孝 − (外1名)

Claims (1)

    【特許請求の範囲】
  1. 少なくとも1つの知能端末と、データを記憶するメモリ
    と、前記知能端末からの要求に基づいて少なくとも1つ
    のメモリ制御機能を遂行する制御手段と、を含むデータ
    処理システムであって、前記制御手段が複数の制御部を
    有し、各々の制御部が前記メモリの各領域に対してそれ
    ぞれにメモリ制御機能を遂行することを特徴とするデー
    タ処理システム。
JP59243556A 1983-12-30 1984-11-20 デ−タ処理システム Expired - Lifetime JPH0642238B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US56730483A 1983-12-30 1983-12-30
US567304 1983-12-30

Publications (2)

Publication Number Publication Date
JPS60147861A true JPS60147861A (ja) 1985-08-03
JPH0642238B2 JPH0642238B2 (ja) 1994-06-01

Family

ID=24266622

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59243556A Expired - Lifetime JPH0642238B2 (ja) 1983-12-30 1984-11-20 デ−タ処理システム

Country Status (3)

Country Link
EP (1) EP0147656B1 (ja)
JP (1) JPH0642238B2 (ja)
DE (1) DE3481092D1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63225848A (ja) * 1987-03-16 1988-09-20 Agency Of Ind Science & Technol 計算機システム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AT395202B (de) * 1989-12-13 1992-10-27 Haider Gottfried Dipl Ing Drehkolbenverdichter
JP3057934B2 (ja) * 1992-10-30 2000-07-04 日本電気株式会社 共有バス調停機構

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57105055A (en) * 1980-12-23 1982-06-30 Fujitsu Ltd Main storage access system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4253144A (en) * 1978-12-21 1981-02-24 Burroughs Corporation Multi-processor communication network
US4365292A (en) * 1979-11-26 1982-12-21 Burroughs Corporation Array processor architecture connection network
US4528624A (en) * 1981-03-25 1985-07-09 International Business Machines Corporation Method and apparatus for allocating memory space based upon free space in diverse memory devices

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57105055A (en) * 1980-12-23 1982-06-30 Fujitsu Ltd Main storage access system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63225848A (ja) * 1987-03-16 1988-09-20 Agency Of Ind Science & Technol 計算機システム
JPH0525341B2 (ja) * 1987-03-16 1993-04-12 Kogyo Gijutsuin

Also Published As

Publication number Publication date
EP0147656A2 (en) 1985-07-10
EP0147656B1 (en) 1990-01-17
DE3481092D1 (de) 1990-02-22
JPH0642238B2 (ja) 1994-06-01
EP0147656A3 (en) 1987-12-02

Similar Documents

Publication Publication Date Title
US4881164A (en) Multi-microprocessor for controlling shared memory
EP0166268B1 (en) Shared memory access for data processing system
US5434993A (en) Methods and apparatus for creating a pending write-back controller for a cache controller on a packet switched memory bus employing dual directories
US7167949B2 (en) Multi-processor type storage control apparatus for performing access control through selector
US6751703B2 (en) Data storage systems and methods which utilize an on-board cache
EP0497600B1 (en) Memory access method and apparatus
JPH0776942B2 (ja) マルチプロセッサ・システムおよびそのデータ伝送装置
JPH02103649A (ja) 制御装置および情報処理システム
JP3776496B2 (ja) データ記憶システム
EP0817064B1 (en) Methods and apparatus for a directory less memory access protocol in a distributed shared memory computer system
US5708784A (en) Dual bus computer architecture utilizing distributed arbitrators and method of using same
JPH10187631A (ja) 拡張された対称マルチプロセッサ・アーキテクチャ
EP1224553A1 (en) Multi-processor system and method of accessing data therein
JPH07244634A (ja) 外部記憶制御装置およびバス切り替え制御方法
JPS60147861A (ja) デ−タ処理システム
EP0067519B1 (en) Telecommunications system
JPH0750466B2 (ja) 並列計算機キャッシュ・メモリ制御方式
JP2004185640A (ja) 記憶装置システム
JPS61118847A (ja) メモリの同時アクセス制御方式
JP3791463B2 (ja) 演算装置及びデータ転送システム
KR100198808B1 (ko) 저장용 미디어간의 직접 자료 복사 방법
JPH0511340B2 (ja)
JPH05274273A (ja) コンピュータ・システムに於ける素子のインターロック・スキーム
KR960003650B1 (ko) 컴퓨터 시스템의 성능향상을 위한 입출력 프로세서
JPS6158072A (ja) システム制御装置