JP2913930B2 - 拡張記憶データ転送方法 - Google Patents

拡張記憶データ転送方法

Info

Publication number
JP2913930B2
JP2913930B2 JP25614391A JP25614391A JP2913930B2 JP 2913930 B2 JP2913930 B2 JP 2913930B2 JP 25614391 A JP25614391 A JP 25614391A JP 25614391 A JP25614391 A JP 25614391A JP 2913930 B2 JP2913930 B2 JP 2913930B2
Authority
JP
Japan
Prior art keywords
request
token
data transfer
data
information
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 - Fee Related
Application number
JP25614391A
Other languages
English (en)
Other versions
JPH0594403A (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.)
NEC Corp
Original Assignee
Nippon Electric Co Ltd
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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP25614391A priority Critical patent/JP2913930B2/ja
Publication of JPH0594403A publication Critical patent/JPH0594403A/ja
Application granted granted Critical
Publication of JP2913930B2 publication Critical patent/JP2913930B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は拡張記憶データ転送方法
に関し、特にディスク装置より高速で、主記憶装置と比
較して十分に大容量の高性能補助記憶装置のデータ転送
方法に関するものであり、特にスーパーコンピュータの
主記憶装置に対する副記憶装置又は二次記憶装置、汎用
大型コンピュータの高性能ファイル装置等に用いられ、
一般には拡張記憶装置と呼ばれる記憶装置を複数のユニ
ットにより構成した場合の拡張記憶データ転送方法に関
する。
【0002】
【従来の技術】 従来この種の拡張記憶システムにおい
ては、複数の拡張記憶ユニットにより構成されたものの
事例を見ず、又万が一その様な構成をとるものが在った
としても、従来からの方法を踏襲すれば、アクセスの為
のデータ転送パスをユニット別に専用に張る形式(図
2)をとるか、共用パス方法(図3)を用いるなら、ア
クセスする主体が各ユニットに対し遂一アクセス動作を
することにより競合を回避する、即ち調停管理をアクセ
スする側にて実施する形式、の何れかをとることにな
る。
【0003】以下、図2及び図3について若干の説明を
加えておく。
【0004】まず、図2の例であるが、210,22
0,230は拡張記憶システムをアクセスするマスタ
で、240,250,260は全体で一つの拡張記憶シ
ステムを構成する拡張記憶ユニットである。ここでマス
タ210に着目すると、前拡張記憶ユニットに対し、1
対1で信号線241,242,243が張られている
が、これはアクセスの為のデータ転送パスであり、他の
マスタについても同様であり、データ転送の生じ得る全
てのマスタ,拡張記憶ユニット間に専用のデータ転送パ
スを張り、全マスタからの拡張記憶システムの提供する
記憶領域全体に対するアクセスを確保している。
【0005】次に図3の例であるが、310,320,
330は拡張記憶システムをアクセスするマスタで34
0,350,360,370,380,390は全体で
一つの拡張記憶システムを構成する拡張記憶ユニットで
あり、300は各マスタが拡張記憶システムをアクセス
する際データ転送に用いるバス形式のデータ転送パスで
ある。ここで各マスタ310,320,330は、それ
ぞれ信号線311,321,331を介してデータ転送
パス300に接続されており、一方各拡張記憶ユニット
は信号線341,351,361,371,381,3
91を介してデータ転送パス300に接続されており、
データ転送を行うマスタ,拡張記憶ユニット間で、この
データ転送パス300を転送期間中占有してデータ転送
を行うことにより、前マスタからの、拡張記憶システム
の提供する記憶領域全体に対するアクセスを確保してい
る。
【0006】
【発明が解決しようとする課題】拡張記憶装置は、スー
パーコンピュータ用の高速大容量補助記憶装置として考
えられ、その後、汎用大型コンピュータ等でも用いられ
るようになったが、何れの場合においても、従来の補助
記憶装置では、容量,高速性、或はそれらのバランスの
点に置いて十分な効果が期待できないようなケースで
の、一つの解として選択された結果とみることができ、
拡張記憶装置はこの様なニーズに応えるものとして位置
付けられてきた。しかしながら、昨今のデータ処理の大
規模化傾向は著しく、拡張記憶装置は尚いっそうの大容
量化を要求されつつあるが、メモリ技術,電源,実装,
或はその筺体の大きさ等による制約や、構成可能な容量
の自由度、といった観点から、単体ユニットによりこれ
を実現することはもはや妥当性を欠き、複数個のユニッ
トにより実現することが、前述の制約条件下での、又自
由度を確保する上での現実的な手段であると言えよう。
さて、ここで、問題となるのがデータ転送スループット
の確保とこれを実現する為のハードウェアの肥大化の抑
止である。即ち、複数個のユニットに分割したことに伴
い、何らかの手段で各ユニットを自由にアクセスする必
要が生じるが、これをデータ転送スループットの低下を
最小限に抑えた上で、できるだけ簡便な構成により実現
しなくてはならないということである。ここで前述した
従来の手法によるデータ転送を実施したとすると、例え
ば前者の、転送スループットを確保すべくユニット対応
に専用のデータ転送パスを設ける手法をとるなら、その
インタフェース数のユニット数に比例して増大し、実装
(ケーブル本数),アクセス制御(ロジック,ハードウ
エア)の肥大化を招き、コスト,故障率等に悪影響を及
ぼす結果となり、又後者の、共用パス方式にして各ユニ
ットを個別にアクセスする方式をとれば、アクセス動作
が遂次的となり、平均データ転送スループットを悪化さ
せる結果を招く、という欠点が指摘される。又従来方式
の延長線上で構成しようとする限り非常に困難であろう
とは推定されるが、何らかの手段によって、図3の様な
構成をとりつつ各ユニットでのアクセス動作の並列化に
成功した場合に問題となるのが、リクエストに対するリ
プライの順序性の保障である。若しこれを従来手法によ
り解決するなら、各ユニット間に通信路を設定し、各ユ
ニットにおいて、順序情報の通信及び共用パス優先制御
を実施するか(図4)、或は各ユニットのアクセス動作
を監視するハードウエアを設け、各ユニットからアクセ
ス動作に関する情報を得て、各ユニットがリプライを返
すべきか否かを判定し、各ユニット個別に指示する(図
5)、等の方法が考えられるが、何れにしてもそのハー
ドウエアの規模,制御の複雑さは相当なものとなること
を覚悟しなくてはなりない。
【0007】以下、図4及び図5について若干の説明を
加えておく。前にも延べた様に、図3の様な構成をとり
つつ各ユニットでのアクセス動作の並立化に成功するこ
と自体既に非常に困難と推定され、何らかの手段によっ
て実現し得たと仮定した例であり、さらにこの上図3の
構成においてリプライの順序性を保障出来る様にする為
の従来手法の説明は一見無意味であるが、本発明の効果
を明確化する上で仮想的な比較が必要であると判断し、
説明を加えることにした。従って、図4及び図5の構成
は純粋な従来例というより、完全に想定的なものである
ことを断っておく。
【0008】まず図4の例であるが、これは図3の構成
にユニット間通信ネットワーク400を付加し、各拡張
記憶ユニット間でリプライの順序性に関する情報のやり
とりを行い、それぞれの拡張記憶ユニットが独自にリプ
ライのタイミングを判定する方法を表している。ここで
ユニット間通信ネットワーク400は、通信の迅速性を
重視するなら前拡張記憶ユニット間に通信パスを張る形
式に近いものとなり、ハードウエアの簡素化を重視する
ならバス形式に近いものとなる。しかしながらいずれに
しても、この様な手法は拡張記憶ユニット数の増加に対
して極めて不利で、リプライのタイミングを判定するの
に必要な情報通信量は拡張記憶ユニット数に対し、組み
合わせ数のオーダ即ち指数オーダで増加することが避け
られず、結果として通信回数(性能低下)又は通信の為
のハードウエア量を指数オーダで増加させることを余儀
なくされ、事実上拡張記憶システムの規模がほんの少し
大きくなったとたんに適用不可能となってしまうと考え
られる。
【0009】次に図5の例であるが、これは図3の構成
にリプライ指示制御論理500を付加し、前拡張記憶ユ
ニットからリクエストの受け付け状態に関する情報を収
集し、ここで集中的にそれぞれの拡張記憶ユニットにつ
いてのリプライタイミングを判定する処理を行い、各拡
張記憶ユニットに個別にリプライタイミングを通知する
方法を表している。この方法によれば、図4の方法のよ
うに通信回数(性能低下)又は通信の為のハードウエア
量が拡張記憶ユニット数に対し、指数オーダで増加する
ことは無いにしても、比例即ち多項式オーダでの増加は
避けられず、又前拡張記憶ユニットからリクエストの受
け付け状態に関する情報を収集する為の通信を先ず行
い、前記拡張記憶ユニットからの情報が揃ってところで
リプライタイミングを判定する処理を行い、最後に各拡
張記憶ユニットに個別にリプライタイミングを通知する
為の通信を行う、といった往復の処理が必要で元々性能
に問題がある。従って、図5の例も図4の例に比べれ
ば、通信回数(性能低下)又は通信の為のハードウエア
量が増加する問題は軽減されてはいるが、性能の問題等
も考え合わせると、実用性は殆んど見いだすことができ
ない。
【0010】
【課題を解決するための手段】本発明の拡張記憶データ
転送方法は、少くとも読出に用いるデータ転送パスを共
有する複数の拡張記憶ユニットより成り、該複数のユニ
ット間にパスの使用権を代表すると共に、少くともリク
エスト処理経過情報が付与されたトークンを持ち回らせ
る為のトークンパスを設けておき、前記複数の拡張記憶
ユニットに対し前記データ転送パスの確保を為すことな
く読出リクエストを発行し、該リクエストを受けた前記
拡張記憶ユニットのそれぞれは読出データの送出の必要
に応じてトークンを獲得し、該トークンを持っているユ
ニットが前記データ転送パスへ読出データを送出する一
方該トークンのリクエスト処理経過情報を必要に応じて
更新し、前記トークンパスが少くとも前記複数のユニッ
トをパス上に含む閉ループを形成する形式を備え、前記
複数のユニットのそれぞれは、読み出したデータを共用
している前記データ転送パスに送出する前に一旦蓄えて
おくバッファを具備しており、該複数のユニットが並行
して該バッファへのデータ読み出し動作を行い、該バッ
ファから前記共用パスへのデータ送出はトークンを持っ
ているユニットが行う拡張記憶システムにおいて、前記
読出リクエストは処理のタイミングを指定するタイミン
グ情報を含み、又前記リクエスト処理経過情報は複数個
のリクエスト処理状態により定義される状態情報であ
り、前記各ユニットは、受けたリクエストを持つ前記タ
イミング情報と、持ち回られたトークンの持つ前記リク
エスト処理状態との関係から、該トークンの獲得から前
記データ転送パスへ読出データを送出する一連の動作を
起動するか否かを決定し、該動作が起動され終了する毎
に、前記リクエスト処理経過情報の状態を更新して構成
される。
【0011】
【実施例】次に、本発明について図面を参照して説明す
る。図1は本発明の拡張記憶データ転送方法を実現し
た、拡張記憶システムとそれに接続されたマスタ、及び
マスタから拡張記憶システムへのリクエストを調停する
リクエスト制御部140である。但し、データの書込動
作に関しては通常用いられる各種方法に何れかにて行っ
ているものとし、本発明の特徴的動作を説明する上で特
に必要とはしない為、省略してある。
【0012】本例に於いては、#0〜2が付された三つ
のマスタが存在し、その三つのマスタからのリクエスト
を調停し、拡張記憶システムに送出するのがリクエスト
制御部140である。但し、マスタが発行したリクエス
トを如何にして拡張記憶システムに到達させるかは本発
明とは何ら係わりがなく、ここに具体的にリクエスト制
御部なるものを設定したのは、只単に全体の動作を説明
する上で、リクエストを正しく拡張記憶システムに到達
させる手段が必要であった為であるに過ぎず、無数に存
在する他の方法の一つでこの機能を代替したとしても、
本発明の請求範囲を逸脱したことにはならないことは請
求範囲本文の規定する所により明らかである。一方、拡
張記憶システムA〜Fの6個のユニットより成り、各ユ
ニットは往復的にループしたトークンパスで接続されて
いる。
【0013】本システムではトークン及びリクエストは
図6に示すフォーマットによる各フィールドを持ってい
る。#0〜2の3個のTCUNTはそれぞれマスタ0〜
2に対応する3ビットのフィールドで、0から5までの
カウント値を巡回的にとる。又RCUNTも3ビットの
フィールドで、リクエストの処理順を指定する0から5
迄のカウント値を巡回的にとるものとする。アクセスパ
ラメタに関しては、通常のリクエストに含まれアクセス
次に使用される、アドレス等のパラメタが格納されるも
のとする。110,120,130はそれぞれマスタ
0,1,2を示し、それぞれ信号線111,121,1
31より拡張記憶システムへ向けてリクエストを発行
し、これに応答して読み出されたリプライデータを、そ
れぞれ信号線112,122,132より受け取るとい
った動作をする。140はリクエスト制御部で、三つの
マスタから発行されるリクエストを一旦受け取りこれを
調停した後、線141より各拡張記憶ユニットへリクエ
ストを送出する役割を担っている。
【0014】信号線150及び180〜184は拡張記
憶システムを構成する6個のユニットA及びB〜Fであ
るが、以下ユニットAに注目してより詳細を説明する。
【0015】先ず構成要素について説明すれば、ユニッ
トAは内部に、記憶部151,リードテーダ・バッファ
152,リクエスト・バッファ153,読出制御部15
4,転送制御部155を有している。次に、これらの機
能を説明する。記憶部151はデータの記憶を担当する
シーケンシャル・アクセス形の記憶機構であり、読出制
御部154からのデータ読出指示により、信号線160
へ所定のデータを送出する。一般にこの種の大容量記憶
機構は、読出指示から読出開始迄の頭出期間は一定でな
いので、本例も同様であるものとする。リードデータ・
バッファ152は、読出制御部154からの制御によ
り、記憶部151からのデータを一旦バッファリング
し、転送制御部155からの制御により、バッファリン
グしたデータを、データバス190へ通じる信号線16
1へ送出する書き込みと読み出しが同時に出来るFIF
Oバッファであるが、ここでリードデータ・バッファ1
52のデータ取込みのスループットとデータ送出のスル
ープットとはバッファの使用効率が最大となる様に等し
い値に設定されているものとする。リクエスト・バッフ
ァ153は、信号線141の共用リクエストパスより信
号線142を経てリクエストを受け付けてこれを一旦蓄
え、ユニット内のリクエスト処理状態が終了状態であれ
ば、受け付けた順に蓄えたリクエストを信号線162上
に読み出す3個のマスタ対応に3エントリの容量を持つ
バッファである。
【0016】読出制御部154は、信号線162から供
給されるリクエストを受けて信号線163から記憶部1
51を制御し、リクエストされたデータを読み出させ、
リードデータ・バッファ152には信号線164を介し
て読み出したデータを取り込ませる制御を行う一方、デ
ータ取り込みが開始されると、これを信号線165へ報
告する。転送制御部155は、トークン受け渡しの為の
ポートを、往路用と復路用に二系統持ち、通常状態では
信号線169から信号線167へ、或は信号線167か
ら信号線168へとトークンを単純通過させている。し
かし、一旦リードデータ・バッファ152へデータが入
り始めたことが報告されると、データ転送処理が起動さ
れ、処理中のリクエストのRCUNTのカウント値と到
着するトークンの処理中のリクエストを発行したマスタ
に対応するTCUNTのカウント値とを比較し、等しけ
ればトークンを捕捉する。トークンを捕捉した転送制御
部155はデータバス190の使用権が自ユニットに在
ると認識し、リードデータ・バッファ152からデータ
を読み出させデータバス190上へこれを送出する一
方、この間捕捉したトークンのTCUNTのカウント値
をカウント(巡回的)しておく。読み出しが完了すると
これに同期して捕捉していたトークンを開放し、この時
点でデータ転送処理が終了し、通常状態へ復帰する。以
上、ユニットAについて説明したが、B〜Fについても
その構成,動作は同じであるものとする。 以下、例を
用いて動作を順に説明する。
【0017】先ず、初期値としてトークンの各TCUN
Tの値は何れも0が設定されており、又各マスタはRC
UNTの値を0からスタートさせるものとする。ここで
は各マスタが、図7の用にリクエストを発行した場合を
例に取り上げることにする。先ず図1を見るに、マスタ
0〜2がそれぞれ信号線111,121,131より図
7に示したタイミングでリクエストを送出する。この
時、各ユニットから返却されるデータによる、データバ
ス190上の競合は全く意識する必要の無いことは前述
の通りである。リクエストを受けたリクエスト制御部1
40はそれらを調停し、図8の「動作箇所」がリクエス
ト制御部の欄に示すようなタイミングで、共用リクエス
トパス141を介して、各拡張記憶ユニットにリクエス
トを中継する。この時も又、各ユニットから返却される
データによる、データバス190上の競合を意識する必
要は無い。これらリクエストを受けた各拡張記憶ユニッ
トではそれぞれリクエスト処理が開始されるが、ユニッ
トA,B及びDでは重複してリクエストされている為、
2番目以降に到着したリクエストは、若し先着のリクエ
ストの処理が未終了なら、その処理の終了を前述のリク
エスト・バッファで持ち合わせることになる。以下マス
タ0の発行するリクエストの処理に着目して説明を進め
る。
【0018】先ず第1番目のユニットAに対するリクエ
ストの処理を説明する。ユニットAではマスタ0よりリ
クエストを受ると、前述の様にこれを一旦リクエスト・
バッファ153に蓄えるが、直ちにこれを信号線162
に読み出して処理を開始する。この時のRCUNTの値
は0である。次にリクエストを受けたユニットAの読み
出し制御部154は、指定されたデータの記憶部151
からリードデータ・バッファ152への読み出しを行う
一方、データがバッファに入り始めるとこれを転送制御
部155へ報告する。前述の通り、転送制御部155
は、この時点迄はまだ通常状態であり、自ユニットを通
過するトークンパス上のトークンを単純通過させている
だけだが、報告を受けると、データ転送処理が起動さ
れ、トークンの到着を持ち合わせる。トークンが到着す
ると、処理中のリクエストがマスタ0によるものなの
で、TCUNT0とRCUNTのそれぞれの値を比較す
る。ここでは両者とも0であり、一致するので、データ
バス190の使用権が自ユニットに有ると認識し、リー
ドデータ・バッファ152からデータを読み出させデー
タバス190上へこれを送出し、マスタ0に転送する一
方、この間捕捉したトークンのTCUNTのカウント値
を1にする(カウント)。その後読み出しが完了する
と、捕捉していたトークンを開放し、通常状態へ復帰す
る。これ以降本ユニットに対するマスタ1からのリクエ
ストが到着するが、同様に動作する。
【0019】次に第2番目のユニットBに対するリクエ
ストの処理を説明する。
【0020】ユニットBではマスタ0,1より次々とリ
クエストを受け、前述のようにこれを一旦リクエスト・
バッファに蓄えるが、先ず先着のマスタ0によるリクエ
ストを読み出して処理を開始する。この時のRCUNT
の値は、マスタ0が第1番目のユニットAへのリクエス
ト(RCUNTに0を設定)に続くリクエストである本
リクエストに対して1を設定している。次にリクエスト
を受けたユニットBの読みだし制御部は、指定されたデ
ータの記憶部からリード・バッファへの読み出しを行う
一方、データがバッファに入り始めるとこれを転送制御
部へ報告する。前述の通り、転送制御部は、この時点迄
はまだ通常状態であり、自ユニットを通過するトークン
パス上のトークンを単純通過させているだけだが、報告
を受けると、データ転送処理が起動され、トークンの到
着を待ち合わせる。トークンが到着すると、処理中のリ
クエストがマスタ0によるものなので、TCUNT0と
RCUNTのそれぞれの値を比較する。
【0021】ここで若し一致したならマスタ0の発行し
た本リクエストに先行するリクエストの処理が全て完了
していることを意味し、本処理によるデータバス190
へのデータ読出が可能であると判定され、一致しなけれ
ば、未だ完了していない先行リクエストの処理が存在す
ることを意味し、データ読出は不能と判定されるが、こ
の場合、当然トークン捕捉以降の処理は起動されず、ト
ークンは次のユニットに受け渡さなくてはならない。本
例に於いては両者とも1であり、一致するので、データ
バス190の使用権が自ユニットに在ると認識し、リー
ドデータ・バッファからデータを読み出させデータバス
190上へこれを送出し、マスタ0に転送する一方、こ
の間捕捉したトークンのTCUNTのカウント値を2に
する(カウント)。
【0022】その後、読み出しが完了すると、捕捉して
いたトークンを開放し、通常状態へ復帰する。但し、こ
こではリクエスト・バッファには処理開始が保留されて
いるユニットBへの2番目のリクエストが存在するの
で、引き続いてこれを読み出し、以後同様に動作する。
以上マスタ0の発行するリクエスト処理に着目して説明
したが、他のマスタ及びユニットも、これに並行して同
様な処理が行られており、結局全体としては、データバ
ス190上に、ユニット間で競合することなくリクエス
トしたデータが、マスタの指示する順に次々と読み出さ
れてくる様に動作することになる。ここで、一連の処理
の様子を図8に、又捕捉したトークンのTCUNTの更
新の様子を図9に示しておく(ここで(イ)〜(リ)は
図8,図9の各図で共通)。なお、見易さの為、図8に
はマスタ0のみについて動作手順を説明する矢印を付し
たが、他のユニットも同様である。
【0023】以上、本発明の一実施例を示したが、通常
はマスタと呼ばれる、共用パスをアクティブに使用しよ
うとする主体の間で持ち回るトークンを、ここでは、リ
クエストされることにより初めて共用パスを使用するス
レーブの間で持ち回らせ、パスの使用をスレーブ側で調
停する様にしているて、及びこれとは別に、通常パスの
使用権に関する制御情報以外の情報を持たせることの無
いトークンにリプライ順に関する制御情報を持たせ、通
常なら別の方法による筈のこの制御情報の通信を持ち回
られるトークンに媒介させ、通信制御もトークン持ち回
りの制御と共用している点が特徴である。又、ここで注
意点として、各ユニット間で共用されたデータ転送パス
は、必ずしも本実施例で示した様なバスである必要は無
く、光ループの様にミクロ的にはディジー・チェイン接
続されている様な場合でも、本発明を用いれば柔軟な対
応が可能であり、又アクセス毎のデータサイズが不定の
場合などでも本発明を用いれば何らこれを意識すること
なく対応可能である。
【0024】ここで比較の為、説明の順序が逆になるが
従来技術の項で説明した図3のシステムにより、処理を
遂次的に行った場合の動作例を図10に示しておく(但
し、後部の処理は削除されている)。
【0025】尚、本発明による拡張記憶データ転送方法
は極めて柔軟性に富んでおり、上記実施例で示した方法
の他、トークンの持つリクエスト処理状態の値が受けた
リクエストのタイミング指定状態の値より1小さい場合
にトークン獲得以降の処理を起動し、トークンのリクエ
スト処理状態の値をその時処理したリクエストのタイミ
ング指定状態の値に更新する方法(図11)や、リクエ
ストにさらに、次リクエストタイミング指定状態を指定
するフィールドを追加し、トークンの持つリクエスト処
理状態の値が受けたリクエストのタイミング指定状態の
値と等しい場合にトークン獲得以降の処理を起動し、ト
ークンのリクエスト処理状態の値をその時処理したリク
エストの次リクエストタイミング指定状態の値に更新す
る方法(図12)等の、様々なアプリケーションが考え
られる。
【0026】以下、図11及び図12について若干の説
明を加えておく。
【0027】まず図11であるが、800,810,8
20はそれぞれの拡張記憶ユニット内の処理を表してい
る。とりあえずここでは拡張記憶ユニット内の処理81
0について説明する。801は受け取ったトークンの持
つリクエスト処理状態の値が4であることを示し、80
3は受けているリクエストのタイミング指定状態の値が
5であることを示し、802は前者の値が後者の値より
1小さいことを検出し、データ転送処理に起動をかける
処理を表し、804はデータ転送処理を表し、806は
データ転送処理が終了した後、次の拡張記憶ユニットに
受け渡すトークンのリクエスト処理状態の値を、処理を
終了したリクエストのタイミング指定状態の値である5
に更新する処理を表している。以上の処理を各拡張記憶
ユニットで行うことにより全体としてのアクセスを管理
するようにしている。
【0028】次に図12であるが、ここでもとりあえず
拡張記憶ユニット内の処理910について説明する。9
01,903,904,905については図11の80
1,803,804,805と同様である。但し901
の値及び903の値は共に8である。907はリクエス
トの持つ次リクエストタイミング指定状態を指定するフ
ィールドの値を表し、ここでは5となっている。902
は901の他が903の値に等しいことを検出し、デー
タ転送処理に起動をかける処理を表しており、906は
データ転送処理が終了した後、次の拡張記憶ユニットに
受け渡すトークンのリクエスト処理状態の値を処理を終
了したリクエストの次リクエストタイミング指定状態の
値である5に更新する処理を表している。以上の処理を
各拡張記憶ユニットで行うことにより全体としてのアク
セスを管理するようにしている。
【0029】
【発明の効果】以上説明したように本発明によれば、ア
クセスされるユニット間にトークンパスを設けてリクエ
スト処理経過情報が付与された(複数のマスタが共用デ
ータ転送パス上に存在し、それぞれのマスタが独立に各
ユニットをアクセスするシステムにあっては、マスタ対
応に持つ。)トークンを持ち回らせ、一方これらユニッ
トに対するリクエストにタイミング情報を含ませ(複数
のマスタが共用データ転送パス上に存在し、それぞれの
マスタが独立に各ユニットをアクセスするシステムにあ
っては、さらにリクエストソースマスタID情報を加え
る。)、これら情報からトークン獲得以降の処理の起動
条件を検出すると共にこれら情報を更新する、という動
作を繰り返すことにより、通常手段では論理的にもハー
ドウエア的にも困難視される指定されたリプライの返却
順序を守りながら共用データパスの調停管理を行う、と
いう非常に複雑な制御が、各ユニットに分散された極単
純な論理と極少のハードウエアにより実現できる。
【0030】ここで、念のため付け加えておくが、実施
例でも示したように、本方法によればリプライの順序は
マスタが任意に設定でき、必ずしもリクエスト順でなく
ても良いので、うまく利用すれば様々なアプリケーショ
ンが考えられよう。例えば図12の方法によればキュー
制御も容易であり、I/O制御プログラムのパラメタを
そのままリクエストのタイミング形パラメタに持ち込む
ことなどが考えられる。
【0031】即ち一般に、メモリ空間上で複数の不連続
の領域に対する複数のI/Oを、一連の処理として順序
を守りながら次々と実行するといった処理は至る所で見
受けられるが、ここで図13の様に、複数の拡張記憶ユ
ニットにまたがって連続したアドレスを割り当てて大き
なメモリ空間を構成し、この空間上で同様の処理を実行
する必要が生じた場合には、各I/Oリクエストに一義
的に対応するID情報を付与し、各I/Oリクエスト発
行時に、自リクエストのID情報及び次リクエストのI
D情報をそれぞれリクエストタイミング指定及び次リク
エストタイミング指定に持ち込み、トークンの持つリク
エスト処理状態を先頭のI/OのリスエストのID情報
に設定したやれば、あとは自動的に処理順が守られるこ
とになる。
【0032】更に各ユニットにリードデータ・バッファ
を設置してユニット内のアクセスの並列化を行えば、本
発明のように、多数のユニットを共用データ転送パスに
接続する構成をとる場合にも行スループットの維持が可
能となる。又本方法は、各ユニットに小規模な同一制御
論理を分散することを可能とするが、これは、別の場所
で集中制御する場合に比べ、情報の受け渡しから制御の
指示といった通信によるオーバヘッドが無く、又ユニッ
トを設計する際に前述の小規模な論理を設計しさえすれ
ば良いので、特に全ユニットを制御する大規模な論理を
設計する必要が無い。以上示した様に本方法は、機能性
能の向上といった直接的な効果から、構成レベルの有利
さ,或は設計計額上の有利さ(分散された小規模の同一
論理の繰り返し)、というような、種々のレベルでの種
々の効果が期待できる。
【図面の簡単な説明】
【図1】本発明の拡張記憶データ転送方法を実現した拡
張記憶システムと、リクエスト制御部、及びこれに接続
された三つのマスタの構成を示すブロック図。
【図2】従来からの方法を踏襲するものの内、アクセス
の為のデータ転送バスをユニット別に専用に張る形式を
とった拡張記憶システムの構成を示すブロック図。
【図3】従来からの方法を踏襲するものの内、共用バス
方式を用い、アクセスする主体が各ユニットに対し逐一
アクセス動作をすることにより競合を回避する、即ち調
停管理をアクセスする側にて実施する形式をとった拡張
記憶システムの構成を示すブロック図。
【図4】図3の拡張記憶システムに於いて、各ユニット
でのアクセス動作の並列化を行った場合に問題となるリ
クエストに対するリプライの順序性を各ユニット間に通
信路を設定し、順序情報の通信及び共用パス優先制御を
実施することにより保証する形式をとった場合の構成を
示すブロック図。
【図5】図3の拡張記憶システムにおいて、各ユニット
でのアクセス動作の並列化を行った場合に問題となるリ
クエストに対するリプライの順序性を、各ユニットのア
クセス動作を監視するハードウエアを設け、各ユニット
からアクセス動作に関する情報を得て、各ユニットがリ
プライを返すべきか否かを判定し、各ユニット個別に指
示することにより保証する形式をとった場合の構成を示
すブロック図。
【図6】図1の拡張記憶システムに於けるトークンとリ
クエストのフォーマットを示した説明図。
【図7】図1の拡張記憶システムの動作説明をする際と
りあげた動作例において、各マスタがリクエストを発行
する様子を表したタイムチャート。
【図8】図1の拡張記憶システムの動作説明をする際と
りあげた動作例において、リクエスト制御部と各ユニッ
トの動作を表したタイムチャート。
【図9】図8で各ユニットでのトークン捕捉時と開放時
のトークンの持つ三つのTCUNTのそれぞれの値を示
した説明図。
【図10】従来の技術に基く図3の構成による拡張記憶
システムにより、実施例と同様の処理を遂次的に行った
場合の動作を表したタイムチャート。
【図11】トークン獲得の基準、及び更新の方法に関す
る本発明のバリエーションで、トークンの持つリクエス
ト処理状態の値が、受けたリクエストのタイミング指定
状態の値より1小さい場合にトークン獲得以降の処理を
起動し、トークンのリクエスト処理状態の値をその時処
理したリクエストのタイミング指定状態の値に更新す
る。
【図12】トークン獲得の基準、及び更新の方法に関す
る本発明のバリエーションで、リクエストにさらに、次
リクエストタイミング指定状態を指定するフィールドを
追加し、トークンの持つリクエスト処理状態の値が受け
たリクエストのタイミング指定状態の値と等しい場合に
トークン獲得以降の処理を起動し、トークンのリクエス
ト処理状態の値をその時処理したリクエストの次リクエ
ストタイミング指定状態の値に更新する方法を示す説明
図。
【図13】複数の拡張記憶ユニットにまたがって連続し
たアドレスを割り当てて大きなメモリ空間を構成し、こ
の空間上で、複数の不連続の領域に対する複数のI/O
を、一連の処理として、順序を守りながら次々と実行す
る処理を表した説明図。
【符号の説明】 110 マスタ0 120 マスタ1 130 マスタ2 140 リクエスト制御部 150,180〜184 拡張記憶ユニット 151 記憶部 152 リードデータ・バッファ 153 リクエスト・バッファ 154 読出制御部 155 転送制御部 210,220,230 マスタ 240,250,260 拡張記憶ユニット 310,320,330 マスタ 340,350,360,370,380,390
拡張記憶ユニット 400 ユニット間通信ネットワーク 500 リプライ指示制御論理 800,810,820 拡張記憶ユニット内の処理 801,901 受け取ったトークンの持つリクエス
ト処理状態の値 802 データ転送処理に起動をかける処理 803,903 受けているリクエストのタイミング
指定状態の値 804,904 データ転送処理 805,905 次の拡張記憶ユニットに受け渡すト
ークンの持つリクエスト処理状態の値 806 次の拡張記憶ユニットに受け渡すトークンの
持つリクエスト処理状態の値を更新する処理 900,910,920 拡張記憶ユニット内の処理 902 データ転送処理に起動をかける処理 906 次の拡張記憶ユニットに受け渡すトークンの
持つリクエスト処理状態の値を更新する処理 907 リクエストの持つ次リクエストタイミング指
定状態を指定するフィールドの値。
フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 13/18 510 G06F 12/00 599 G06F 13/368 G06F 15/163 650 G06F 15/167

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 少くとも読出に用いるデータ転送パスを
    共有する複数の拡張記憶ユニットより成、該複数のユ
    ニット間にパスの使用権を代表すると共に、少くともリ
    クエスト処理経過情報が付与されたトークンを持ち回ら
    せる為のトークンパスを設けておき、前記複数の拡張記
    憶ユニットに対し前記データ転送パスの確保を為すこと
    なく読出リクエストを発行し、該リクエストを受けた前
    記拡張記憶ユニットのそれぞれは読出データの送出の必
    要に応じてトークンを獲得し、該トークンを持っている
    ユニットが前記データ転送パスへ読出データを送出する
    一方該トークンのリクエスト処理経過情報を必要に応じ
    て更新し、前記トークンパスが少くとも前記複数のユニ
    ットをパス上に含む閉ループを形成する形式を備え、前
    記複数のユニットのそれぞれは、読み出したデータを共
    用している前記データ転送パスに送出する前に一旦蓄え
    ておくバッファを具備しており、該複数のユニットが並
    行して該バッファへのデータ読み出し動作を行い、該バ
    ッファから前記共用パスへのデータ送出はトークンを持
    っているユニットが行う拡張記憶システムにおいて、前
    記読出リクエストは処理のタイミングを指定するタイミ
    ング情報を含み、又前記リクエスト処理経過情報は複数
    個のリクエスト処理状態により定義される状態情報であ
    り、前記各ユニットは、受けたリクエストを持つ前記タ
    イミング情報と、持ち回られたトークンの持つ前記リク
    エスト処理状態との関係から、該トークンの獲得から前
    記データ転送パスへ読出データを送出する一連の動作を
    起動するか否かを決定し、該動作が起動され終了する毎
    に、前記リクエスト処理経過情報の状態を更新して成る
    ことを特徴とする拡張記憶データ転送方法。
  2. 【請求項2】 トークンに付与された前記リクエスト処
    理経過情報は、順序付けられた複数個のリクエスト処理
    状態により定義される状態情報であり、前記各ユニット
    が前記トークンの獲得から前記データ転送パスへ読出デ
    ータを送出する一連の動作が終了する毎に、前記リクエ
    スト処理経過情報の状態を前記順序に従って遷移させて
    成ることを特徴とする請求項1記載の拡張記憶データ転
    送方法。
  3. 【請求項3】 前記タイミング情報は複数個のタイミン
    グ指定状態によ り定義される状態情報であり、該指定状
    態とトークンの持つ前記リクエスト処理状態との間に対
    応関係を持っており、前記ユニットは受けたリクエスト
    の持つタイミング指定状態と持ち回られたトークンの持
    つリクエスト処理状態に対応関係が成立した場合に、該
    トークンの獲得から前記データ転送パスへ読出データを
    送出する一連の動作を起動して成ることを特徴とする請
    求項1または2記載の拡張記憶データ転送方法。
  4. 【請求項4】 読出リクエストの持つ前記タイミング指
    定情報は該リクエストの処理順を指定するカウント値で
    あり、前記リクエスト処理状態は処理の終了したリクエ
    ストの順に対応したカウント値であり、前記各ユニット
    が二つの該カウント値の対応関係から該トークンの獲得
    から前記データ転送パスへ読出データを送出する一連の
    動作を起動して成ることを特徴とする請求項3記載の拡
    張記憶データ転送方法。
  5. 【請求項5】 読出データを受け取るのに前記データ転
    送パスを共用するマスタが複数個存在し、前記読出リク
    エストは処理のタイミングを指定するタイミング情報並
    びに該リクエスト発行元のマスタを特定する為のリクエ
    ストソースマスタID情報を含み、前記トークンは該マ
    スタ対応にリクエスト処理経過情報を持っており、前記
    各ユニットは、持ち回られた前記トークンのマスタ対応
    に持っているリクエスト処理経過情報の内、受けたリク
    エストの持つリクエストソースマスタIDにより特定さ
    れるマスタに対応するものに関し、前記複数のマスタの
    それぞれに対し、個別に受けたリクエストの持つ前記タ
    イミング情報と持ち回られたトークンの持つ前記リクエ
    スト処理状態との関係を管理し、該トークンの獲得から
    前記データ転送パスへ読出データを送出する一連の動作
    を起動するか否かを決定して成ることを特徴とする請求
    項1,2,3または4記載の拡張記憶データ転送方法。
JP25614391A 1991-10-03 1991-10-03 拡張記憶データ転送方法 Expired - Fee Related JP2913930B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25614391A JP2913930B2 (ja) 1991-10-03 1991-10-03 拡張記憶データ転送方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25614391A JP2913930B2 (ja) 1991-10-03 1991-10-03 拡張記憶データ転送方法

Publications (2)

Publication Number Publication Date
JPH0594403A JPH0594403A (ja) 1993-04-16
JP2913930B2 true JP2913930B2 (ja) 1999-06-28

Family

ID=17288501

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25614391A Expired - Fee Related JP2913930B2 (ja) 1991-10-03 1991-10-03 拡張記憶データ転送方法

Country Status (1)

Country Link
JP (1) JP2913930B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6039407B2 (ja) * 2012-12-27 2016-12-07 株式会社東芝 画像処理装置

Also Published As

Publication number Publication date
JPH0594403A (ja) 1993-04-16

Similar Documents

Publication Publication Date Title
US5418913A (en) System of two-way communication between processors using a single queue partitioned with pointers and limited overwrite privileges
US5940612A (en) System and method for queuing of tasks in a multiprocessing system
JP3074636B2 (ja) 並列計算機システム
EP1021764B1 (en) I/o forwarding in a cache coherent shared disk computer system
JP2000267815A (ja) ディスクアレイ制御装置
JPS5838818B2 (ja) 装置共用システム
JPH0642236B2 (ja) コマンダノードからのインターロック読み取りコマンドメッセージをレスポンダノードで実行する装置
US5515537A (en) Real-time distributed data base locking manager
JPH11212939A (ja) 共通バスによって相互接続されたプロセッサを有するデータプロセッサユニット間でデータを交換するためのシステム
US5978879A (en) Bus bridge apparatus
JP2001216279A (ja) リアルタイム・システム用時分割多重メモリーを用いた、複数のプロセッサーのインターフェース及び、同期化及びアービトレーション方法
JP2913930B2 (ja) 拡張記憶データ転送方法
JP3080552B2 (ja) 複合計算機システムのメモリ装置
JP2734246B2 (ja) パイプラインバス
JP2780662B2 (ja) マルチプロセッサシステム
JP3719976B2 (ja) 二重化コントローラ構成ディスク記憶システム向けコントローラ、及び同コントローラが二重化されたディスク記憶システム
JP3644158B2 (ja) 並列計算機におけるデータ送受信方法
JPH064401A (ja) メモリアクセス回路
JPH0619855A (ja) メッセージのキューイング方法とその装置
JP3312361B2 (ja) 分散共有メモリシステム
JP2536260B2 (ja) 拡張記憶デ―タ転送方式
JP2007241922A (ja) 共有資源利用のための調停方法及びその調停装置
JPH0619857A (ja) コンピュータ間のデータ一致装置
KR20060009292A (ko) 분할 프로토콜 전송 방법 및 프로세싱 시스템
CN117355823A (zh) 一种数据存取方法、互联系统及装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19990316

LAPS Cancellation because of no payment of annual fees