JPS63247859A - Shared memory device - Google Patents

Shared memory device

Info

Publication number
JPS63247859A
JPS63247859A JP7965287A JP7965287A JPS63247859A JP S63247859 A JPS63247859 A JP S63247859A JP 7965287 A JP7965287 A JP 7965287A JP 7965287 A JP7965287 A JP 7965287A JP S63247859 A JPS63247859 A JP S63247859A
Authority
JP
Japan
Prior art keywords
shared memory
writing
write
cpu
bus
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
JP7965287A
Other languages
Japanese (ja)
Inventor
Manabu Araoka
荒岡 学
Ryoichi Takamatsu
良一 高松
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP7965287A priority Critical patent/JPS63247859A/en
Publication of JPS63247859A publication Critical patent/JPS63247859A/en
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)
  • Multi Processors (AREA)

Abstract

PURPOSE:To improve the processing speed of a shared memory device by performing a writing process to a store buffer against a common bus of a shared memory when a write request is produced and also to a shared memory part against a CPU to report the end of the writing process and securing the coincidence of information on the contents of all shared memory part. CONSTITUTION:The relevant address and data are set at store buffers 110 and 111 when a write request is given to a shared memory part 1a from a CPU 5a. Then the bus acquisition start is applied to a bus acquisition control circuit 13 and at the same time an instruction is given to a memory control circuit 16 to perform a write process to a memory device 14. Receiving a write end signal, the CPU 5a carries out the next process. While the part 1a acquires a common bus 6 of a shared memory to deliver the information stored in both buffers 110 and 111 and sends write signals to all parts 1a to write the relevant data to the device 14.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、共有メモリ装置、特に自律分散型情報処理装
置システムに使用するに好適な共有メモリ装置に関する
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a shared memory device, and particularly to a shared memory device suitable for use in an autonomous distributed information processing device system.

〔従来の技術〕[Conventional technology]

従来の共有メモリ装置の構成を第3図に示す。 FIG. 3 shows the configuration of a conventional shared memory device.

共有メモリ部(GM)1は4台の情報処理装置(CPU
)5a、5b、5c、から共通にアクセスできる。この
アクセスはq、 CP U内部バス4a。
The shared memory unit (GM) 1 includes four information processing devices (CPUs).
) 5a, 5b, and 5c. This access is to q, the CPU internal bus 4a.

4b、4c、4d、GM用インターフェース(GM  
I/F)2a、2b、2c、2dを介して行う。
4b, 4c, 4d, GM interface (GM
I/F) 2a, 2b, 2c, and 2d.

他の従来例(特開昭57−189257号)を第4図に
示す。共有メモリ部は、4台のメモリ部1a。
Another conventional example (Japanese Unexamined Patent Publication No. 57-189257) is shown in FIG. The shared memory section includes four memory sections 1a.

lb、lc、ldに分散設置させ、且つ4台のメモリ部
1a、lb、lc、ldは同一内容となるようにさせて
おく。同一内容とするための手段としてゲート(バッフ
ァ)3a、3b、3c、3dを設け、例えばCP U 
5 aからGMlaへデータ書込みに際しては、ゲート
3aを介してGMlaへ行うと共に、他のGMlb、l
c、ldへもバス6を介して同時に書込ませる。
The memory units 1a, lb, lc, and ld are installed in a distributed manner, and the four memory units 1a, lb, lc, and ld have the same contents. Gates (buffers) 3a, 3b, 3c, and 3d are provided as means for making the contents the same.
5 When writing data from a to GMla, write data to GMla via gate 3a, and write data to other GMlb, l
The data is also written to c and ld via the bus 6 at the same time.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

複数の情報処理装置と共有メモリからなるシステムにお
いて、自律分散形システムが採用されることがある。自
動分散形システムとは、情報処理装置間で直接又は間接
(メモリを介して)に通信を行うシステムであって、各
処理装置は自己以外の処理装置が故障しても自己のある
定った作業については他の処理装置の影響を受けること
なく、その作業を続行できる機能を持つシステムである
An autonomous distributed system is sometimes adopted in a system consisting of multiple information processing devices and shared memory. An automatic distributed system is a system that communicates directly or indirectly (via memory) between information processing devices, in which each processing device maintains its own certain state even if a processing device other than itself fails. The system has the ability to continue its work without being affected by other processing devices.

かかる自律分散形システムを第3図の従来例に採用する
場合を考える。各CPUで自律分散化を図ろうとすると
、CP U 5 a 、 5 b 、 5 c 、 5
 dは、どの1台がたとえ停止しても、他の3治は正常
に運転することができるが、共有メモリ部1が停止する
と、各CPUは全くデータ交換を行うことができなくな
り、正常な運転範囲が限られてしまうという欠点があっ
た。
Consider the case where such an autonomous decentralized system is applied to the conventional example shown in FIG. When trying to achieve autonomous decentralization with each CPU, CPUs 5 a , 5 b , 5 c , 5
d, even if any one CPU stops, the other three CPUs can operate normally, but if shared memory section 1 stops, each CPU will be unable to exchange data at all, and normal operation will not be possible. The drawback was that the operating range was limited.

第4図の従来技術では、どの部分が停止しても残りのC
PU間でデータ交換が可能となり、上記問題は解決でき
る。しかし、データ処理速度の面での配慮がなされてお
らず、それぞれに対応する共有メモリ部1a、lb、l
c、ldからCPU5a、5b、5c、5dへの読み出
しは、共有メモリ共通バス6を使わず、直接読み出しが
行えるので処理速度は早いが、書き込み時においては、
複数台のCPU、例えば、1aと1bから書き込み要求
が重なり、CPU1aが優先順位が高いとすると、共有
メモリバス6をCP U 1 aが獲得し、書き込み終
了までC:PUlbは待たされ、処理が遅くなるとの欠
点があった。
In the conventional technology shown in Fig. 4, no matter which part stops, the remaining C
It becomes possible to exchange data between PUs, and the above problem can be solved. However, no consideration was given to the data processing speed, and the corresponding shared memory units 1a, lb, l
Reading from c and ld to the CPUs 5a, 5b, 5c, and 5d can be done directly without using the shared memory common bus 6, so the processing speed is fast, but when writing,
If write requests overlap from multiple CPUs, for example 1a and 1b, and CPU 1a has a higher priority, CPU 1a acquires the shared memory bus 6, and C:PUlb is forced to wait until the writing is completed, and processing is delayed. The downside was that it was slow.

本発明の目的は、共有メモリからの読み出し、書込みの
処理時間を早くした共有メモリ装置を提供するにある。
SUMMARY OF THE INVENTION An object of the present invention is to provide a shared memory device with faster processing times for reading and writing from a shared memory.

〔問題点を解決するための手段〕[Means for solving problems]

本発明は、共有メモリ部に書込む際に使用するストアバ
ッファを設けておき、CPUからの書込みに対し、共有
メモリ共通バスに対するストアバッファへ書込むと同時
に該CPUに対応する共有メモリ部にデータを書込むこ
とで、該CPUへ書込み終了を報告させることとした。
In the present invention, a store buffer is provided for use when writing to a shared memory section, and in response to a write from a CPU, data is written to the store buffer for the shared memory common bus and simultaneously stored in the shared memory section corresponding to the CPU. By writing , the CPU is made to report the completion of writing.

〔作用〕[Effect]

CPUから対応する共有メモリ部への書き込みは、スト
アバッファと、メモリ部とへ書き込んだ時点で、共有メ
モリ共通バスの獲得ができていなくても書き込み終了を
報告する。ストアバッファは、有効データが存在してい
れば、共有メモリ共通バスに対し、バス獲得要求を行い
、バスに接続されているすべての共有メモリ部に対し書
き込み動作を行う。
When writing from the CPU to the corresponding shared memory section, the end of the write is reported even if the shared memory common bus has not been acquired at the time of writing to the store buffer and the memory section. If valid data exists, the store buffer issues a bus acquisition request to the shared memory common bus and performs a write operation to all shared memory units connected to the bus.

それによって、すべての共有メモリ部の内容情報一致が
図られる。
As a result, the content information of all shared memory sections can be made consistent.

〔実施例〕〔Example〕

以下、本発明の一実施例を第1図、第2図により説明す
る。第2図は、4台のCPUでシステムを構成した時の
例である。第1図は、そのうちの1台の共有メモリ部1
aの内部詳細である。他の共有メモリ部1b、lc、l
dも同一構成より成る。
An embodiment of the present invention will be described below with reference to FIGS. 1 and 2. FIG. 2 shows an example of a system configured with four CPUs. Figure 1 shows the shared memory section 1 of one of them.
This is the internal details of a. Other shared memory units 1b, lc, l
d also has the same configuration.

まず、CP U 5 aから共有メモリ部へのデータ書
き込み時の動作について説明する。
First, the operation when writing data from the CPU 5a to the shared memory section will be described.

先ず要求発生元のプロセッサ5aに隣接する共有メモリ
1aのアクセスを述べる。CP U 5 aから共有メ
モリ部1aへの書き込み要求が発生すると、アドレスf
liとデータQ2は、それぞれアドレスストアバッファ
110.デーラス1〜アバツフア111にセットされ、
バス獲得制御回路13に対し、バス獲得の起動Qδがか
かる。又この動作と並行して、メモリ制御回路16に対
しメモリ装置14への書き込みを指示Q4する。メモリ
優先選択回路17は、共有メモリ共通バス6からの書き
込み要求と優先判定し、CPU5aからの要求を選択す
ると、メモリ制御回路16に報告し、セレフタ−150
,151に対しCPU側を選択させ。
First, the access to the shared memory 1a adjacent to the processor 5a that has generated the request will be described. When a write request from the CPU 5a to the shared memory unit 1a occurs, the address f
li and data Q2 are respectively stored in address store buffer 110. It is set to Delus 1 to Abatsuhua 111,
A bus acquisition activation Qδ is applied to the bus acquisition control circuit 13. Also, in parallel with this operation, an instruction Q4 is given to the memory control circuit 16 to write into the memory device 14. The memory priority selection circuit 17 prioritizes the write request from the shared memory common bus 6, selects the request from the CPU 5a, reports it to the memory control circuit 16, and selects the request from the selector 150.
, 151 to select the CPU side.

メモリ装置14へCP U 5 aからのデータを書き
込む・ 書き込みが終了すると、CPU5aへ終る報告を信号1
61にて行う。終了報告を受は取ったC P U 5 
aは、共有メモリ部1aへ書き込み終了したものとして
即ち、CPU5aは共有メモリ1aとのインターフェー
スはなくなったものとして、次の処理実行に移る。
Write data from the CPU 5a to the memory device 14. When the writing is completed, send a signal 1 to report the completion to the CPU 5a.
It will be held on 61st. CPU 5 received the completion report.
A assumes that the writing to the shared memory section 1a has been completed, that is, the CPU 5a assumes that there is no longer an interface with the shared memory 1a, and moves on to the next process execution.

一方、切離された共有メモリ5aは、CPU5aと無関
係に以下の動作を行う。起動を受けたバス獲得制御回路
13は、共有メモリ共通バス6に対し、バス獲得要求信
号を出力する。バス獲得優先選択回路12は、共有メモ
リ共通バス6上のバス獲得要求信号を入力として、初め
定めた優先順位選択手順に従い優先選択し、バス獲得制
御回路13に報告する。報告を受けたバス獲得制御回路
13は、自分の共有メモリ部がバスを獲得すると、共有
メモリ共通バス上に、アドレスストアバッファ110.
データストアバッファ111内に貯えている情報を出力
し、全ての共有メモリ部la、lb、lc、ldに対し
書き込み信号を送出するにの書き込み信号は、全ての共
有メモリ部内のメモリ優先選択回路17に入力され、各
々のCPUからのアクセス要求を優先判定し、共有メモ
リ共通バス6側を選択すると、各共有メモリ部内にあっ
ては、自己のメモリ制御回路16へ報告し、自己のセレ
クター150,151に対し、共有メモリ共通バス側を
選択させ、自己のメモリ部14ヘバス上のデータを書き
込む。
On the other hand, the separated shared memory 5a performs the following operations independently of the CPU 5a. The activated bus acquisition control circuit 13 outputs a bus acquisition request signal to the shared memory common bus 6. The bus acquisition priority selection circuit 12 receives the bus acquisition request signal on the shared memory common bus 6 as input, performs priority selection according to an initially determined priority order selection procedure, and reports the result to the bus acquisition control circuit 13. Upon receiving the report, the bus acquisition control circuit 13 stores the address store buffer 110 .
The write signal for outputting the information stored in the data store buffer 111 and sending the write signal to all the shared memory sections la, lb, lc, and ld is sent to the memory priority selection circuit 17 in all the shared memory sections. When the shared memory common bus 6 side is selected by prioritizing the access requests from each CPU, each shared memory section reports to its own memory control circuit 16, and its own selector 150, 151 selects the shared memory common bus side and writes data on the bus to its own memory unit 14.

尚、要求元プロセッサ5aに隣接する共有メモリ部1a
にあっては、CP U 5 aからの書込み起動時のセ
レクタ150,151を介して書込みと、共通バス6を
介しての書込みとの同一アドレスへの2重書き込みがさ
れる。
Note that the shared memory unit 1a adjacent to the requesting processor 5a
In this case, double writing to the same address is performed: writing via the selectors 150, 151 when starting writing from the CPU 5a, and writing via the common bus 6.

尚、2重書き込みをやめる場合もある。この場合、共通
バス6を介しての2回目の書き込みをロックさせればよ
い。又、第1回目をロックし、共通バス6からの2回目
のみを生かすやり方も考えられるが、CP U 5 a
にとってはメモリ14への書き込み完了の確認が2回目
まで待つことになり実用的でない。特に書き込み起動後
すぐにそのデータを欲することがあり、この場合、第1
回目の書き込みで完了させることが望ましい。
Note that double writing may be stopped. In this case, the second write via the common bus 6 may be locked. It is also possible to lock the first call and use only the second call from the common bus 6, but the CPU 5 a
Therefore, it is not practical to confirm the completion of writing to the memory 14 until the second time. In particular, you may want the data immediately after writing starts, and in this case, the first
It is desirable to complete the process on the first writing.

次にCPU5aから共有メモリ部1aへの読み出し要求
に対し動作を説明する。読み出し要求Q4は、メモリ優
先選択回路17に入力され、書き込み時と同様に読み出
し要求が選択されると、メモリ制御回路16に報告され
、セレクター150゜151に対し、CPU側を選択さ
せ、メモリ装置14からデータを出力させ、CPU5a
へ終了報告信号161を出力する。この読出しは、非破
壊形である。この読出し動作では、共通バス6の占有は
不要である。
Next, the operation in response to a read request from the CPU 5a to the shared memory section 1a will be explained. The read request Q4 is input to the memory priority selection circuit 17, and when the read request is selected in the same way as when writing, it is reported to the memory control circuit 16, which causes the selectors 150 and 151 to select the CPU side and select the memory device. 14 to output data, and the CPU 5a
A completion report signal 161 is output to. This readout is non-destructive. In this read operation, it is not necessary to occupy the common bus 6.

複数台のCPUから共有メモリ部へ書き込みが同時に発
生すると、ストアバッファ内のデータを転送終了しない
うちに次の書き込み要求がCPUから発生することがあ
る。このような場合に対応するため、ストアバッファを
複数段設け、ファーストインファーストアウト方式にす
ることにより書き込み要求の紛失をさけることができる
When writing to the shared memory section occurs simultaneously from multiple CPUs, the next write request may be issued from the CPUs before the data in the store buffer has been transferred. In order to cope with such a case, a plurality of stages of store buffers are provided and a first-in-first-out method is used to avoid loss of write requests.

尚、自律分散形システム以外の一般のシステムにも本発
明は適用できる。
Note that the present invention can also be applied to general systems other than autonomous decentralized systems.

〔発明の効果〕〔Effect of the invention〕

本発明によれば、複数のCPUにより共有された共有メ
モリ部を持つ共有メモリ装置において、読み出し時同様
に、書き込み時もCPUの処理時間が短くでき、書き込
み時間が、バス獲得してから全ての共有メモリ部に書き
込み終了するまでCPUを待たせる方式における最低3
マイクロ秒必要な処理が、本実施例によれば、約1マイ
クロ秒程度と、3分の1の処理速度向上の効果がある。
According to the present invention, in a shared memory device having a shared memory section shared by a plurality of CPUs, the processing time of the CPU can be shortened when writing as well as when reading, and the writing time can be reduced by all At least 3 in the method of making the CPU wait until the writing to the shared memory section is completed
According to this embodiment, processing that requires microseconds takes about 1 microsecond, which is an effect of improving the processing speed by one-third.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の実施例である。共有メモリ装置内部詳
細図、第2図は本発明のシステム構成図、第3図は共有
メモリ装置が1台である従来のシステム構成図、第4図
は共有メモリ装置を各CPUに分配したシステム構成図
である。 1・・・共有メモリ部、12・・・バス獲得優先選択回
路。 13・・・バス獲得制御回路、14・・・メモリ装置、
16・・・メモリ制御回路、17・・・メモリ優先選択
回路、110・・・アドレスストアバッファ、111・
・・データストアバッファ、161・・・終了報告信号
FIG. 1 shows an embodiment of the invention. A detailed diagram of the inside of a shared memory device, FIG. 2 is a system configuration diagram of the present invention, FIG. 3 is a conventional system configuration diagram with one shared memory device, and FIG. 4 is a system in which the shared memory device is distributed to each CPU. FIG. 1... Shared memory section, 12... Bus acquisition priority selection circuit. 13... Bus acquisition control circuit, 14... Memory device,
16...Memory control circuit, 17...Memory priority selection circuit, 110...Address store buffer, 111.
...Data store buffer, 161...Completion report signal.

Claims (1)

【特許請求の範囲】 1、複数の情報処理装置と、各処理装置対応の複数の共
有メモリ部と、該共有メモリに共通に接続された共通バ
スとより成ると共に、該共有メモリ部は、 情報処理装置から該共有メモリ部に対する書込み要求に
対し書込み情報を一時保持するストアバッファと、該ス
トアバッファに書込み要求情報をセットすると同時に、
該情報処理装置に対応するメモリ部に書き込む手段と、
前記ストアバッファと該メモリ部とに書き込みを行うと
、書き込み要求元である情報処理装置に対し、書き込み
終了を報告する手段と、前記ストアバッファに有効デー
タが存在していると、前記メモリ部が接続された共通バ
スに対しバス獲得要求信号を出力する手段と、共通バス
上のバス獲得要求信号を入力し、初め定めた優先順位に
従いバスを獲得する優先選択手段と、この優先選択手段
において選択された書込み要求に対応し、上記各共有メ
モリ部の全てに対し、同一データを並列に書き込む手段
とを備えた共有メモリ装置。
[Claims] 1. Consisting of a plurality of information processing devices, a plurality of shared memory units corresponding to each processing unit, and a common bus commonly connected to the shared memory, the shared memory unit stores information. a store buffer that temporarily holds write information in response to a write request from a processing device to the shared memory unit; and at the same time, setting the write request information in the store buffer;
means for writing into a memory section corresponding to the information processing device;
When writing is performed in the store buffer and the memory section, there is a means for reporting completion of writing to the information processing device that is the source of the write request, and if valid data exists in the store buffer, the memory section means for outputting a bus acquisition request signal to a connected common bus; priority selection means for inputting a bus acquisition request signal on the common bus and acquiring a bus according to an initially determined priority order; A shared memory device comprising means for writing the same data in parallel to all of the shared memory units in response to a write request made.
JP7965287A 1987-04-02 1987-04-02 Shared memory device Pending JPS63247859A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7965287A JPS63247859A (en) 1987-04-02 1987-04-02 Shared memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7965287A JPS63247859A (en) 1987-04-02 1987-04-02 Shared memory device

Publications (1)

Publication Number Publication Date
JPS63247859A true JPS63247859A (en) 1988-10-14

Family

ID=13696059

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7965287A Pending JPS63247859A (en) 1987-04-02 1987-04-02 Shared memory device

Country Status (1)

Country Link
JP (1) JPS63247859A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04230527A (en) * 1990-10-31 1992-08-19 Internatl Business Mach Corp <Ibm> Parallel computer system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60178572A (en) * 1984-02-27 1985-09-12 Toshiba Corp Multiprocessor device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60178572A (en) * 1984-02-27 1985-09-12 Toshiba Corp Multiprocessor device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04230527A (en) * 1990-10-31 1992-08-19 Internatl Business Mach Corp <Ibm> Parallel computer system

Similar Documents

Publication Publication Date Title
KR920008448B1 (en) Data process
US5761728A (en) Asynchronous access system controlling processing modules making requests to a shared system memory
JPS6145272B2 (en)
JPS63247859A (en) Shared memory device
JPH0238968B2 (en)
JPH0340417B2 (en)
JPS592058B2 (en) Storage device
JP2522412B2 (en) Communication method between programmable controller and input / output device
JP3266610B2 (en) DMA transfer method
JPS598845B2 (en) Channel control method
JPS6125178B2 (en)
JP3057754B2 (en) Memory circuit and distributed processing system
KR100294639B1 (en) A cache apparatus for multi-access
SU1529241A1 (en) Twin-processor computing system
JPS6029139B2 (en) Connection method between processing units
JPH053018B2 (en)
JPH07160655A (en) Memory access system
JPH02211571A (en) Information processor
JPS58220542A (en) Data communication interface circuit
JPS61117651A (en) Interface device
EP0284094A2 (en) Tandem priority resolver
JPH0650494B2 (en) Data transfer method in I / O controller
JPS6367665A (en) Data processor
JPS62272339A (en) Memory control system
JPS63305448A (en) Memory interface control system