JPS6118061A - 共有メモリ制御方式 - Google Patents

共有メモリ制御方式

Info

Publication number
JPS6118061A
JPS6118061A JP59139378A JP13937884A JPS6118061A JP S6118061 A JPS6118061 A JP S6118061A JP 59139378 A JP59139378 A JP 59139378A JP 13937884 A JP13937884 A JP 13937884A JP S6118061 A JPS6118061 A JP S6118061A
Authority
JP
Japan
Prior art keywords
data
small block
writing
reading
reset
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP59139378A
Other languages
English (en)
Inventor
Shigeru Shiotani
塩谷 滋
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.)
Fuji Facom Corp
Original Assignee
Fuji Facom 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 Fuji Facom Corp filed Critical Fuji Facom Corp
Priority to JP59139378A priority Critical patent/JPS6118061A/ja
Publication of JPS6118061A publication Critical patent/JPS6118061A/ja
Pending 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/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Multi Processors (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、複数のプロセッサ等のマスタデバイス(以下
単にマスクという)が共有メモリを介してデータの転送
を行うシステムにおける共有メモリの制御方式に関する
ものである。
〔従来の技術〕
共有メモリを介してデータの転送を行うシステムにおい
ては、一般に共有メモリとこのメモリ内のデータをアク
セスするマスクとは、バスやケーブル等のデータチャネ
ルによって結合されている。
このようなシステムにおいて、特定のマスクが共有メモ
リを占有して、1回でアクセスできるメモリの単位(以
下これを小ブロックと呼ぶ)は、データチャネルの性能
や共有メモリ、バス等の有効利用を目的とした制御手順
等により、比較的小さく定められることが多い。このた
め複数個の小ブロックが連結して意味を持つデータ(以
下これを連結データと呼ぶ)を、共有メモリを介して転
送することが必要になる。
第5図はこのよう連結データの従来の転送方法を示す図
である。同図において、1,2はマスク、3は共有メモ
リを示し、データの書込み元であるマスタ1が共有メモ
リ3の内部の小ブロック10〜13で構成された連結デ
ータを書替え、データの読出し元であるマスタ2が、小
ブロック10〜13で構成された連結データを読出すこ
とによって、データの転送が行われる。なおここでデー
タの書込み、読出しはともに、小ブロック10→11−
12→13の順で行われるものとする。
このような連結データの転送方法によった場合、データ
の書込み元の共有メモリへの書込み動作と、そのデータ
の読出し元の読出し動作とが競合した場合には、正確な
データ転送が行われなくなる場合が生じる。
第6図は第5図に示されたデータ転送方法を採用した場
合において、データの書込みと読出しとが競合する場合
の例を示したものである。同図において15は共有メモ
リにおける連結データの小ブロツク内のデータ内容を示
し、当初A(=al。
a2+  ” 3+  a4)であったものが、データ
の書込み元であるマスタ1により順次書替えられてB(
−J、b2.b3.b4)となる途中で、データの読出
し元であるマスタ2が順次読出しを行った結果、読出し
元であるマスタ2で読出したデータ16が、図示のよう
に(aI+  b2+  a3+bq)なる交錯したデ
ータとなったことが示されている。
このような連結データの転送時における、デー夕の読出
し、書込みの競合状態を制御するため、従来、連結デー
タごとにデータの使用中を示す使用中ビットを付加して
、連結データ単位で読出し。
書込みの排他制御を行う方法が知られている。
第7図は使用中ビットを付加するデータの転送方法を示
したものであって、同図において14は使用中ビットを
示している。
第7図に示されたデータ転送方法における制御手順は次
のようにして行われる。
(1)書込み元のマスタ1または読出し元のマスタ2は
、連結データの書込み、読出しを行う前に使用中ビット
14をチェックし、 (al使用中ビット14がリセットされていれば、他の
書込み元または読出し元のマスクがこのリセット状態を
検出する前にこれをセットして、以後その連結データの
書込みまたは読出しを行い、 (bl使用中ビット14がセットされていれば、連結デ
ータの書込みおよび読出しを待機させて、使用中ビット
14がリセットされたのちに、上記+81項の処理を行
う。
(2)使用中ビット14のリセットは、+11− +8
1項による連結データの書込み、または読出しが終了し
た時点で行う。
第7図に示されたような連結データごとに使用中ビット
を付加する方法では、連結データの容量が大きくなった
場合に、特定の書込み元がデータを書込み中、または特
定の読出し元がデータを読出し中に、連続して長時間使
用中の状態になるため、上述した(1)→)項の待機中
に次のような問題を生じる。
■ 使用中ビットのリセットを、データの書込みや読出
しを行うマスクで連続監視する際に、マスクとなるプロ
セッサ等の処理が長時間占有される。
■ 上記+11の問題を回避するために、適当な周期で
使用中ビットのリセ・ントを監視するようにした場合に
は、書込み動作と読出し動作とが同期した場合や、多数
の書込み元、読出し元の動作が競合した場合等に、特定
の書込み元または読出し元が使用中ビットのチェックに
おいて連続してセット状態を検出する事態を生じ、デー
タの書込みまたは読出しまでに長時間を要することにな
る。
〔発明が解決しようとする問題点〕
本発明の共有メモリ制御方式は、このような従来技術の
問題点を解決しようとするものであって、同一の連結デ
ータを複数のデータ書込み元、読出し元が同時に書込み
、読出しを行うことを可能にするとともに、書込み元、
読出し元のマスクとなるプロセッサ等の処理負荷を低減
し、データの書込み、読出しまでの時間を短縮すること
ができるようにしようとするものである。
〔問題点を解決するための手段〕
本発明の共有メモリ制御方式は、連結データの書込みま
たは読111シ中であっても、すでに書込みまたは読出
しの終了した小ブロックまでは読出しまたは書込みを行
ってもデータの交錯を生じないことに着目して、データ
の個々の小ブロックごとに使用中ビットを設け、前述の
従来方式の制御手順(1)項を、小ブロックごとの使用
中ビットのセットおよびデータの書込みに適用するとと
もに、以下の(2)〜(3)項の手順を加えて行うよう
にしたものである。
(2)使用中ビットのリセットは、前述の+Il−fa
1項による小ブロックの書込みまたは読出しが終了した
後、Ia)1&続する小ブロックがあれば、その小ブロ
ックの使用中ピッl−を前述の(1)項の手順でセラl
−したのちに行い、 (b+ 1&続する小ブロックがなければ、即座に行う
(3)連結データ内の小ブロックの書込みおよび読j1
1シの順序は、すべての書込み元、読出し元で同一とす
る。
(作 用〕 本発明の共有メモリ制御方式によれば、連結データの書
込み、読出しが競合した場合でも小ブロックの書込み、
読出しが競合しなければ、待機によるマスクを構成する
プロセッサ等の処理占有がなく、また特定の小ブロック
の書込みまたは読出しが競合した場合でも、その時点で
使用中ビットをセットしている書込み元または読出し元
が次の小ブロックの書込みまたは読出しに移行すれば、
書込みまたは読出しを終了した小ブロックを別の書込み
元または読出し元が使用できるため、待機の時間が少な
くなる。
〔実施例〕 第1図は本発明の共有メモリ制御方式の一実施例を示し
、小ブロツク単位に使用中ビットを付加して行う本発明
のデータ転送方法を説明している。
同図において、第5図におけると同じ部分は同し番号で
示されてお句、20,21.22.23は使用中ビット
を示している。
また第2図は第1図の実施例における、データの書込み
、読出し処理を示すフローチャートであって、すべての
連結データの書込み元、読出し元がこのフローチャート
に従って、連結データの書込み、読出しを行う。
第2図において、処理100,102,103゜104
および判断10】は、連結データにおける最初の小ブロ
ックの使用中ビットのチェックおよび七゛ントを行う部
分を示している。ここで処理100.103,104は
、複数の書込み元、読出し元による使用中ビットのチェ
ックおよびセットの排他制御用の処理で、特定の書込み
元または読出し元のチェックからセットまでは他の書込
み元や読出し元のチェックを不可としている。また判断
IOIによるループ構造は、使用中ビットがセットされ
ている場合の、使用中ビットの連続監視動作を表してい
る。
すなわち書込み元または読出し元はまず共有メモリの占
有権を獲得しく処理100)、次に先頭の小ブロックが
使用中であるか否かを判断する(処理101)。使用中
毎でなければ先頭の小ブロックの使用中ビットをセット
して(処理102)、共有メモリの占有権を解11する
(処理1o3)。
もしも先頭の小ブロックが使用中であったときは、共有
メモリの占有権が開放されたとき(処理104)、共有
メモリの占有権獲得の処理を行う(処理100)。
以上のようにして小ブロックの使用権を獲得しく10) た後、小ブロックの書込みまたは読出しの処理を行う(
処理105)。
次の判断10 fi &;l: Jl終の小ブロックの
処理とそれ以前の小ブロックの処理とを区別するもので
あって、最終の小ブロックの書込みまたは読出しが完了
しているか否かを判断しく処理106)、完了していれ
ば最終の小ブロックの使用中ピッl−のリセットのみを
行う(処理113)。
処理107,109,110,111および判断10B
は、2番目以後の小ブロックに対して処理100,10
2,103.104および1111折101と同様の処
理を行うものである。すなわち最終の小ブロックの書込
みまたは読出しが完了していなかったときは、書込み元
または読出し元はまず共有メモリの占有権を獲得しく処
理107)、その後火の小ブロックが使用中であるか否
かを判断する(処理10B)。使用中でなければ次の小
ブロックの使用中ビットをセットして(処理109)、
共有メモリの占有権を開放する(処理110)。もしも
次の小ブロックが使用中であったときは、J(有メモリ
の占有権が開放されたとき(処理11.1)、共有メモ
リの占有権獲得の処理を行う(処理107)。
次の処理112は本発明の制御方式の1つの特徴をなす
もので、処理109により後続する小ブロックの使用中
ビットをセットして後に、書込みまたは読出しを完了し
た小ブロックの使用中ビットをリセットして(処理11
2)、さらに次の小ブロックの書込みまたは読出しを行
う(処理105)。以下同様の処理を繰り返して最終の
小ブロックまで処理を行い、完了したとき前述のように
処理113を行って終了する。
第3図および第4図は本発明の共有メモリ制御方式の他
の実施例を示したものであって、第3図はデータの書込
み、読出しを示すフローチャート、第4図は共有メモリ
側の使用中ビットの制御回路の構成例を示している。
この実施例では、偶数番地のメモリとその次の奇数番地
のメモリとで小ブロックを構成する。第4図に示された
制御回路によって、偶数番地のメモリの書込み、読出し
動作により、その小ブロックの使用中ビットがリセット
されている場合にはこれをセットし、すでにセットされ
ている場合にはFAII、信号によってマスクを構成す
るプロセッサ等に書込み、読出し禁止状態を通知する。
使用中ビットのリセットは偶数番地のメモリの書込み、
読出し動作によって行う。従って前述の実施例と比較し
て本実施例の場合は、第4図に示された制御回路によっ
て使用中ビットのチェックおよびセットを行うため、第
2図のフローチャートにおける処理100,103,1
04,107,110.111が不要になる。
第3図において、まず共有メモリの先頭の小ブロックの
偶数番地(2N番地)に対して書込みまたは読出し動作
を行い(処理120)、次に使用中ビットをセットでき
たか否かを判断する(判断121)。失敗または成功の
判定は、第4図の制御回路からFAIL信号が出力され
たか否かによる。失敗であったときは、再び2N番地の
書込みまたは読出しを行い(処理120)、成功であつ
たときは、書込みまたは読出しの番地を決定するカウン
タの値を、0からnにする初期設定を行う(処理122
)。
判断123は最終の小ブロックの場合に、最終の小ブロ
ックの処理とそれ以前の小ブロックの処理とを区別する
ものであって、最終の小ブロックの場合はその小ブロッ
クの奇数番地への書込みまたは読出しとともに、使用中
ビットのリセットを行って(処理128)、全体の処理
を終了する。
処理124および判断125は、先頭の小ブロツク以外
の小ブロックの偶数番地への書込みまたは読出しおよび
使用中ビットのセットを行うものである。すなわち判断
123において最終の小ブロックでなかったときは、(
2N+2n+2)番地に対して書込みまたは読出し動作
を行い(処理124)、次に使用中ビットをセットでき
たか否かを判断する(判断125)。失敗または成功の
判定は判断121と同様に行い、失敗であったときは、
再び(2N+2n+2)番地の書込みまたは読出しを行
い(処理124)、成功であったときは直前の小ブに1
ツクの偶数番地である(2n+2n+1)番地の書込み
または読出しを行うとともに、使用中ビットのリセット
を行い(処理126)、次に書込みまたは読出しの番地
を決定するカウンタの値を+1して(処理127)、再
び処理123に戻って以下同様の処理を繰り返す。
このように処理127により小ブロックの書込みまたは
読出し順は、番地の順に一意的に定まる。
第4図において50はメモリ、52はナントゲート、5
3はオアゲート、54..55はインバータ、56,5
7.58はアンドゲートである。
メモリ50は使用中ビットの状態を記憶する1×2 ビ
ットの双方向メモリであって、その出力ゲートOUTの
出力がハイ (H) レベルのとき、小ブロックの使用
中を表している。またビニシアル時には、すべての小ブ
ロックの奇数アドレスを読出す等の方法で、すべての使
用中ビットがリセットされる。メモリ50に入力される
アドレス選択信号は、データ選択用のアドレス信号(i
A。
〜iAm)のうち最下位ビット(iAo)以外を、メモ
リ50のチウプ内アドレスの入カゲー1−(AO〜A 
m−1)に入力し、偶数アドレスおよび奇数アドレスか
らなる2データ(すなわち1つの小ブロック)に対して
1ビツトの使用中ビットを割り付けている。
ナントゲート52.オアゲート53およびアントゲ−1
−58はメモリ50への書込みのタイミング制御を行う
ものである。アドレス信号の最下位ビット(iAO)は
、データアドレスが奇数の場合ハイ01)レベル、偶数
の場合ロー(I、)レベルであって、奇数の場合は無条
件に、偶数のときはメモリ50の出力OUTがロー(L
 )レベルのときに、オアゲート53の出力とデータア
ドレス確立信La、oKとがアンドゲート58において
論理積をとられることによって、メモリ50の書込みパ
ルス入力ゲートWT (ハイレベルで書込み)への書込
みパルスが発生する。このパルスは同時に図示されない
データメモリへの書込み許可信号(iWTE)として出
力される。
一方、アドレス信号の最下位ビット(iAo)は、イン
バータ54を経て反転されてメモリ50の入力ゲートI
Nに加えられる。これによってメモリ50に対して書込
みパルスWTの発生時、データアドレスが偶数の場合は
ハイ (■))レベル入力(使用中ビットのセット入力
)が与えられ、データアドレスが奇数の場合はロー(L
)レベル入力(使用中ビットのリセット入力)が与えら
れる。
またインバータ55.アンドゲート56,57によって
、使用中ビットがセットされている小ブロツク内の偶数
アドレスへの書込み、読出し動作が行われたとき、F 
A T L信号を出力する。
〔発明の効果〕
以上説明したように本発明の共有メモリ制御方式におい
ては、個々の小ブロックに使用中ビットを設け、すべて
の書込み元、読出し元で小ブロックの書込み順、読出し
順を統一し、連結データの書込み、読出しに際しては、
次の小ブロックの使用中ビットをチェックして、 (1)リセットされていればこれをセットした後(また
は同時に)、書込み、@出しを終了した小プロツクの使
用中ビットをリセットし、 (2)セットされていればリセットされるまで連続監視
を行って、上記(1)項の動作を行うようにしたので、
連結データの書込み、読出しが競合した場合でも、小ブ
ロックの書込み、読出しが競合しなければ、待機による
マスクを構成するプロセッサ等の処理占有はない。また
特定の小ブロックの書込みや読出しが競合した場合でも
、その時点で使用中ビットをセットしている書込み元ま
たは読出し元が次の小ブロックの書込みまたは読出しに
移行すれば、書込み、読出しを終了した小ブロックは別
の書込み元または読出し元が使用できるため、待機の時
間が、少ない。
従って本発明の共有メモリ制御方式によれば、従来方式
に比べて連結データの容量が多くなった場合でも、待機
中のマスクを構成するプロセッサ等の処理占有時間が短
く、また使用中ビットの監視を連続監視としたことによ
って、データの書込み、読出しの時間が短くなる。これ
によってデータの書込みや読出しを行うプロセッサ等の
処理負荷の軽減およびデータ転送時間の短縮が可能にな
る。
【図面の簡単な説明】
第1図は本発明の共有メモリ制御方式の一実施例を示す
図、第2図は第1図の実施例における、データの書込み
、読出し処理を示すフローチャート、第3図は本発明の
共有メモリ制御方式の他の実施例におけるデータの書込
み、読出しを示すフローチャート、第4図は第3図の実
施例における共有メモリ側の使用中ビットの制御回路の
構成例を示す図、第5図は連結データの従来の転送方法
を示す図、第6図は第5図に示されたデータ転送方法に
おけるデータの書込みと読出しとの競合を示す図、第7
図は使用中ビットを付加するデータの転送方法を示す図
である。 ■、2・−マスタ、3−・共有メモリ、10〜13・−
小ブロック、14−使用中ビット、15−・連結データ
の小ブロツク内のデータ内容、16・・−読出されたデ
ータ、20,21,22.23−使用中ビット、50−
メモリ、52−ナントゲート、53−オアゲート、54
.55−インバータ、56゜57.58−−−アンドゲ
ート 特許出願人  冨士ファコム制御株式会社代理人  弁
理士 玉蟲久五部 (外2名〉へ 介 い− 第3図 笑5図 第7図 14  ・・・使用中ビット

Claims (1)

    【特許請求の範囲】
  1. 複数のマスタデバイスが共有メモリを介してデータの転
    送を行うシステムにおいて、該共有メモリの小ブロック
    ごとに該小ブロックの使用中を示す使用中ビットを設け
    、複数のデータが連結して意味を持つ連結データの書込
    みまたは読出しに際し、連結データ内の小ブロックの書
    込みおよび読出しの順序をすべてのマスタデバイスにつ
    いて同一とし、各マスタデバイスは先頭の小ブロックへ
    のデータの書込みまたは読出し前に使用中ビットをチェ
    ックしてリセットされていれば他のマスタデバイスが該
    リセット状態を検出する以前にこれをセットして以後該
    小ブロックの書込みまたは読出しを行い、使用中ビット
    がセットされていればリセットされるまで該使用中ビッ
    トの連続監視を行つてリセット状態を検出したときこれ
    をセットしてその小ブロックにデータの書込みまたは読
    出しを行つて書込みまたは読出し終了時使用中ビットを
    リセットし、さらに後続する小ブロックがあれば該後続
    する小ブロックの使用中ビットを先頭の小ブロックの場
    合と同様にしてリセットされていればセットしてセット
    されていればリセットを待つてセットしてデータの書込
    みまたは読出しを行つたのち使用中ビットをリセットし
    、後続する小ブロックがないときは直ちに使用中ビット
    をリセットすることによつて、各マスタデバイス間のデ
    ータ書込みおよび読出しの競合制御を行うことを特徴と
    する共有メモリ制御方式。
JP59139378A 1984-07-05 1984-07-05 共有メモリ制御方式 Pending JPS6118061A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59139378A JPS6118061A (ja) 1984-07-05 1984-07-05 共有メモリ制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59139378A JPS6118061A (ja) 1984-07-05 1984-07-05 共有メモリ制御方式

Publications (1)

Publication Number Publication Date
JPS6118061A true JPS6118061A (ja) 1986-01-25

Family

ID=15243922

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59139378A Pending JPS6118061A (ja) 1984-07-05 1984-07-05 共有メモリ制御方式

Country Status (1)

Country Link
JP (1) JPS6118061A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008310702A (ja) * 2007-06-15 2008-12-25 Nec Electronics Corp モニタ装置及びモニタ方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008310702A (ja) * 2007-06-15 2008-12-25 Nec Electronics Corp モニタ装置及びモニタ方法

Similar Documents

Publication Publication Date Title
US4187538A (en) Read request selection system for redundant storage
JPS6118061A (ja) 共有メモリ制御方式
JP2847310B2 (ja) 論理シミュレーション方法
JPH0340417B2 (ja)
JP2600376B2 (ja) メモリ制御装置
JP2943926B2 (ja) エラー回復制御装置
JPS61153770A (ja) 画像処理装置
JP3012402B2 (ja) 情報処理システム
JPS60549A (ja) メモリ試験方式
JPS58192123A (ja) 入出力デ−タ転送制御装置
JPS61125258A (ja) ステ−タス変化通知方式
JPS6136854A (ja) メモリ切換装置
JPH0523254U (ja) 記憶回路
JPH01274260A (ja) 入出力制御用アダプタ
JPS62279446A (ja) デ−タ転送装置
JPH0367346A (ja) アドレス制御回路
JPH0514293B2 (ja)
JPS63155346A (ja) Ramチエツク方式
JPH0315214B2 (ja)
JPH0480860A (ja) プログラムロード方式
JPH02103650A (ja) データ処理装置
JPS59112498A (ja) 二重化共有メモリ装置
JPS62279449A (ja) デ−タ転送装置
JPH0523258U (ja) 記憶回路
JPH0357015A (ja) 電子ディスクサブシステム