JPS621059A - Shared memory access method for multi-microprocessor system - Google Patents

Shared memory access method for multi-microprocessor system

Info

Publication number
JPS621059A
JPS621059A JP60139740A JP13974085A JPS621059A JP S621059 A JPS621059 A JP S621059A JP 60139740 A JP60139740 A JP 60139740A JP 13974085 A JP13974085 A JP 13974085A JP S621059 A JPS621059 A JP S621059A
Authority
JP
Japan
Prior art keywords
write
microprocessor
data
random access
memory
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
JP60139740A
Other languages
Japanese (ja)
Inventor
Takashi Shinozaki
隆 篠崎
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.)
Nippon Signal Co Ltd
Original Assignee
Nippon Signal 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 Signal Co Ltd filed Critical Nippon Signal Co Ltd
Priority to JP60139740A priority Critical patent/JPS621059A/en
Publication of JPS621059A publication Critical patent/JPS621059A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

PURPOSE:To minimize the deterioration of throughput in case an access has the conflict by providing the random access memories of the same address constitution to the microprocessors respectively. CONSTITUTION:In a data reading mode each microprocessor gives an access individually to a random access memory corresponded respectively and reads out data independently of other microprocessors. When a data writing request is given from a certain microprocessor, the same data are written simultaneously to the same address position of all random access memories respectively. If the writing requests have conflicts, the writing processes are carried out according to the prescribed priority. Thus the physical plural memories function as a single logic shared memory consisting of the same data.

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、複数のマイクロプロセッサからなるマルチ・
マイクロプロセッサシステムにおける共有メモリアクセ
ス法に関するものである。
DETAILED DESCRIPTION OF THE INVENTION Field of Industrial Application The present invention is directed to a multiprocessor system consisting of a plurality of microprocessors.
This paper concerns shared memory access methods in microprocessor systems.

従来の技術 従来、複数のマイクロプロセッサから共有メモリに対し
てアクセスする方法として、例えば下記の如き種々の方
式が知られている。
2. Description of the Related Art Conventionally, various methods such as those described below are known as methods for accessing a shared memory from a plurality of microprocessors.

(1)  マイクロプロセッサ(CPU)の待機(WA
IT)信号を用いて、共有メモリへのアクセスが競合し
たとき一方のマイクロプロセッサを待機させる方式 (2)  各マイクロプロセッサの位相をずらし、同時
にアクセス信号が出力されるのを回避する方式 (3)  フエツチザイクルと実行サイクルが対称なマ
イクロプロセッサを用い、メモリアクセスの競合を避け
る方式 (4)各プロセッサからのアクセス要求を専用の回路を
設けて調停する方式 (5)  ホールド(HOLD)信号を持つ汎用プロセ
ッサとワンチップマイコンで構成し、通常はワンチップ
マイコンはそのチップ内のメモリで動作せしめ、ワンチ
ップマイコンからの共有メモリに対するアクセス時だけ
ホールド要求を行なう方式 (6)  一方のマイクロプロセッサがメモリアクセス
中は他方のマイクロプロセッサのアクセスを・・−ドウ
エアにより禁止する方式 発明が解決しようとする問題点 上記したように従来においても種々のメモリアクセス方
式が開発されているが、いずれの方式も、共有メモリを
物理的にただ1つのメモリで構成すると共に、それを制
御するラインが1つであることを前提として構成されて
いる。このため、各マイクロプロセッサからのアクセス
が重なった場合、共有メモリに対する同時アクセスが不
可能なため、アクセスを許可したマイクロプロセッサ以
外のプロセッサは待機させねばならず、アクセス競合に
よってスループットが低下するという問題があった。な
お、現在では2ボ一トRAMと呼ばれるメモリもあるが
、そのメモリ容量は小さく、しかも拡張性がなく、3つ
以上のボートをもつものはい壕だ知られていない。
(1) Microprocessor (CPU) standby (WA)
A method of using IT) signals to make one microprocessor standby when there is contention for access to the shared memory (2) A method of shifting the phase of each microprocessor to avoid outputting access signals at the same time (3) A method that uses a microprocessor with a symmetrical fetch cycle and an execution cycle to avoid conflicts in memory access. (4) A method that arbitrates access requests from each processor by providing a dedicated circuit. (5) Has a HOLD signal. It consists of a general-purpose processor and a one-chip microcontroller. Normally, the one-chip microcontroller operates on the memory within its chip, and a hold request is made only when the one-chip microcontroller accesses the shared memory. (6) One microprocessor uses the memory During the access, the access of the other microprocessor is prohibited by software.Problems to be Solved by the InventionAs mentioned above, various memory access methods have been developed in the past. It is configured on the premise that the shared memory is physically composed of only one memory, and that there is only one line to control it. Therefore, when accesses from each microprocessor overlap, simultaneous access to the shared memory is impossible, and processors other than the microprocessor that granted access must wait, resulting in a problem in which throughput decreases due to access contention. was there. Currently, there is memory called 2-bottom RAM, but its memory capacity is small and it is not expandable, and it is not known that it has three or more ports.

本発明は、上記問題を解決するためになされたもので、
複数のマイクロプロセッサからのアクセスが競合した場
合のスループットの低下を最少限にくい止めうる共有メ
モリアクセス法を提供するものでちる。
The present invention was made to solve the above problems, and
The object of the present invention is to provide a shared memory access method that can minimize reduction in throughput when accesses from multiple microprocessors compete.

問題点を解決するための手段 本発明は、上記問題を解決するために、複数のマイクロ
プロセッサからなるマルチプロセッサ/ステムにおいて
、同一アドレス構成になるランダムアクセスメモリを各
マイクロプロセッサごとに設け、各ランダムアクセスメ
モリからのデータの読み出しは、それぞれ対応するラン
ダムアクセスメモリに対して各マイクロプロセッサから
個別にアクセスすると共に、各マイクロプロセッサから
のデータの書き込みは、予め定めたマイクロプロセッサ
の優先順位に従い、書き込み要求のあったマイクロプロ
セッサの書き込みアドレスを全てのランダムアクセスメ
モリ同時に選択し、当該書き込み要求のあったマイクロ
プロセッサの出力する書き込みデータを全メモリ同時に
書き込むようにしたものである。
Means for Solving the Problems In order to solve the above problems, the present invention provides a random access memory with the same address configuration for each microprocessor in a multiprocessor/system consisting of a plurality of microprocessors. To read data from the access memory, each microprocessor individually accesses the corresponding random access memory, and to write data from each microprocessor, write requests are made according to predetermined priorities of the microprocessors. The write address of the microprocessor that received the write request is simultaneously selected in all the random access memories, and the write data output from the microprocessor that made the write request is written to all the memories at the same time.

作用 各マイクロプロセッサがデータを読み出す場合、各マイ
クロプロセッサはそれぞれ対応して設けたランダムアク
セスメモリに対して個別にアクセスし、他のマイクロプ
ロセッサとは無関係に独立にデータを読み出す。
Operation When each microprocessor reads data, each microprocessor individually accesses its corresponding random access memory and reads the data independently of the other microprocessors.

一方、いずれかのマイクロプロセッサからデータの書き
込み要求があった場合、書き込み要求のあったマイクロ
プロセッサの出力する書き込みアドレスがすべてのラン
ダムアクセスメモリに送られ、全メモリ同時に同一のア
ドレスが選択される。そして、全てのランダムアクセス
メモリの同一アドレス位置に同一のデータが同時に書き
込まれる。複数のマイクロプロセッサから書き込み要求
が競合した場合には、予め定められた優先順位に従って
、書き込み処理が実行される。従って、本発明によると
きは、物理的には複数のメモリを有しながら論理的には
同一データからなる1個の共有メモリとして機能するこ
ととなる。このため、本発明においては読み出し要求が
競合しても何らスループットの低下を生ずることがなく
、また書き込み動作においても書き込み要求が競合した
場合にのみ待期状態が生ずるだけであるから、システム
全体としてのスループットの低下を最少限にくい止めう
るものである。
On the other hand, when a data write request is received from any microprocessor, the write address output by the microprocessor making the write request is sent to all random access memories, and the same address is selected simultaneously in all memories. Then, the same data is simultaneously written to the same address location in all random access memories. When write requests from multiple microprocessors compete, write processing is executed according to predetermined priorities. Therefore, according to the present invention, although it physically has a plurality of memories, it functions logically as one shared memory consisting of the same data. Therefore, in the present invention, there is no reduction in throughput even if read requests compete, and a wait state only occurs in write operations when write requests compete, so the system as a whole The reduction in throughput can be minimized.

実施例 以下、図面を参照して本発明を説明する。Example The present invention will be described below with reference to the drawings.

第1図は、本発明方法を適用して構成した4個のマイク
ロプロセッサを用いたマルチ・マイクロプロセッサシス
テムにおける共有メモリの1実施例を示し、la〜1d
はマイクロプロセッサ(CPU)、 28〜2dは各マ
イクロプロセッサ1a〜1dにそれぞれ対応して設けた
同一のアドレス構成になるランダムアクセスメモリ(以
下「メモリ」と略称)、3a〜3dはマイクロプロセッ
サ1a〜1dからの書き込みアドレスをラッチする3ス
テート・アドレスラッチ回路、4a〜4dは各メモリ2
a〜2dの指定アドレスを選択するアドレスセレクタt
5a〜5dは各マイクロプロセッサ1a〜1dの出力す
る書き込みデータをラッチする3ステート・データラッ
チ回路、5a〜6dは各メモリ28〜2dに対する書き
込み・読み出しデータの送受を行なう双方向性のバスド
ライバである。
FIG. 1 shows an embodiment of a shared memory in a multi-microprocessor system using four microprocessors constructed by applying the method of the present invention.
is a microprocessor (CPU); 28 to 2d are random access memories (hereinafter abbreviated as "memory") having the same address configuration provided corresponding to each of the microprocessors 1a to 1d; 3a to 3d are microprocessors 1a to 1d; 3-state address latch circuit that latches the write address from 1d, 4a to 4d are each memory 2
Address selector t for selecting designated addresses a to 2d
5a to 5d are three-state data latch circuits that latch write data output from each of the microprocessors 1a to 1d, and 5a to 6d are bidirectional bus drivers that send and receive write and read data to and from each memory 28 to 2d. be.

上記回路において本発明方法は以下の、ようにして実現
される。即ち、メモリからのデータの読み出し動作の場
合、例えばい1−、マイクロプロセッサ1aから読み出
し要求があると、マイクロプロセッサ1aの出力する読
み出しアドレスがアドレスセレクタ4aに与えられる。
In the above circuit, the method of the present invention is implemented as follows. That is, in the case of a data read operation from the memory, for example, when a read request is received from the microprocessor 1a, the read address output from the microprocessor 1a is given to the address selector 4a.

アドレスセレクタ4aはメモリ2aの当該アドレス位置
を選択し、当該アドレス位置のデータをバスドライバ6
aを通じてマイクロプロセッサ1aに読み出す。同様に
して、他のマイクロプロセッサ1b、1c、1dもそれ
ぞれ対応するメモリ2b、2c、2dから目的のデータ
を独立に読み出す。このようにして、データ読み出し動
作の場合には各マイクロプロセッサは他のマイクロプロ
セッサとまったく無関係に読み出し動作を実行すること
ができる。
The address selector 4a selects the address location in the memory 2a, and transfers the data at the address location to the bus driver 6.
a to the microprocessor 1a. Similarly, the other microprocessors 1b, 1c, and 1d independently read out target data from the corresponding memories 2b, 2c, and 2d, respectively. In this way, in the case of a data read operation, each microprocessor can perform the read operation completely independently of the other microprocessors.

他方、データの書き込み動作は次のようにして実行され
る。即ち、例えばマイクロプロセッサ1aから書き込み
要求があった場合、マイクロプロセッサ1aから出力さ
れた書き込みアドレス及び書き込みデータは、アドレス
ストローブ信号(ASa) 、データストローブ信号(
DSa) 。
On the other hand, the data write operation is executed as follows. That is, for example, when a write request is received from the microprocessor 1a, the write address and write data output from the microprocessor 1a are sent to the address strobe signal (ASa) and the data strobe signal (
DSa).

書き込み信号(WRa)により3ステート・アドレスラ
ッチ回路3a13ステート−データラッチ回路5aにそ
れぞれ−Hラッチされる。同時に、マイクロプロセッサ
1aの書き込み要求信号(WREQa)が後述する書き
込み/読み出し制御回路に送られ、該書き込み/読み出
し制御回路は他のマイクロプロセッサの書き込み要求の
競合がないこと、又は書き込み要求の競合がある場合に
は後述する処理優先回路の決定した優先順位に従って、
前記3ステート・アドレスラッチ回路3a及び3ステー
ト・データラッチ回路5aの3ステート端子に書き込み
アクノリッジ信号(WACKa )を送り、各ラッチ回
路の出力ゲートを用いてラッチ回路3a、5aにそれぞ
れラッチされていた書き込みアドレス及び書き込みデー
タをメモリ側へ向けて送出する。このとき、他の3ステ
ート・アドレスラッチ回路3b。
-H is latched by the write signal (WRa) into the 3-state address latch circuit 3a and 3-state data latch circuit 5a, respectively. At the same time, a write request signal (WREQa) from the microprocessor 1a is sent to a write/read control circuit (described later), and the write/read control circuit checks whether there is no conflict between write requests from other microprocessors or whether there is a conflict between write requests. In some cases, according to the priority determined by the processing priority circuit described later,
A write acknowledge signal (WACKa) is sent to the 3-state terminals of the 3-state address latch circuit 3a and 3-state data latch circuit 5a, and the data is latched into the latch circuits 3a and 5a using the output gates of each latch circuit. Sends the write address and write data towards the memory side. At this time, the other 3-state address latch circuit 3b.

3c、3d及び3ステート・データラッチ回路5b、5
c、5dの3ステート端子には書き込みアクノリッジ信
号が与えられていないので出力ゲートは閉じており、ハ
イ・インピーダンスの状態にある。従って、書き込みア
クノリッジ信号(WACKa )の与えられた3ステー
ト・アドレスラッチ回路3aから出力される書き込みア
ドレスはすべてのアドレスセレクタ4a〜4cに与えら
れ、また同じく3ステート・データラッチ回路5aから
出力される書き込みデータはすべてのバスドライバ6a
〜6dに与えられる。
3c, 3d and 3-state data latch circuits 5b, 5
Since no write acknowledge signal is applied to the three-state terminals c and 5d, the output gates are closed and in a high impedance state. Therefore, the write address output from the 3-state address latch circuit 3a to which the write acknowledge signal (WACKa) is applied is given to all address selectors 4a to 4c, and is also output from the 3-state data latch circuit 5a. Write data is written to all bus drivers 6a.
~6d.

この結果、各メモリ2a〜2dは各アドレスセレクタ4
a〜4d及び各バスドライバ6a〜6dにより同一のア
ドレス位置が選択され、同一のデータが同一のアドレス
位置に書き込まれる。
As a result, each memory 2a to 2d is connected to each address selector 4.
The same address position is selected by bus drivers a to 4d and each bus driver 6a to 6d, and the same data is written to the same address position.

書き込みを行なったマイクロプロセッサは、データ出力
後直ちにメインの処理を続行できるが、全てのメモリへ
の書き込みが完了するまでは同じマイクロプロセッサか
らの次のデータの書き込みは待機(WIT)される。
The microprocessor that has written can continue main processing immediately after outputting the data, but the writing of the next data from the same microprocessor is on standby (WIT) until writing to all memories is completed.

上記のようにして、データの書き込み要求があった場合
には書き込み要求のあったマイクロプロセッサからの書
き込みデータが、全メモリの同一アドレス位置に同時に
書き込まれる。従って、各メモリ2a〜2dは物理的に
は複数であシなシながら、論理的には同一データからな
る1つの共有メモリとして機能する。
As described above, when there is a data write request, the write data from the microprocessor that requested the write is written to the same address location in all memories at the same time. Therefore, although the memories 2a to 2d are physically plural, they logically function as one shared memory consisting of the same data.

第2図は、書き込み要求が競合した場合の処理優先回路
の回路例を示し、各マイクロプロセッサ1a〜1dから
の書き込み要求が競合した場合、該回路によって各マイ
クロプロセッサに予め定められた優先順位が与えられ、
該優先順位に従って前述メモリへの書き込み動作が実行
される。
FIG. 2 shows an example of a processing priority circuit when write requests conflict. When write requests from each of the microprocessors 1a to 1d conflict, the circuit gives a predetermined priority to each microprocessor. given,
The write operation to the memory is executed according to the priority order.

即ち、第2図において、2ta〜21dは各マイクロプ
ロセッサに対応する書き込み要求フリップフロップ、2
2はプライオリティ・エンコーダ%23はデーコーダ、
24a〜24dはゲート回路であって、各マイクロプロ
セッサ1a〜ld(第1図)から書き込み要求信号(W
REQa) 〜(WREQd)が与えられると、対応す
る書き込み要求フリップフロップ21a〜21dは各マ
イクロプロセッサから書き込み要求があったことを記憶
する。この書き込み要求は、プライオリティ・エンコー
ダ22及びデコーダ23により競合時の処理優先順位が
決定され、優先度の高いマイクロプロセッサ、例エバマ
イクロプロセッサ1aに対してデコーダ23から書き込
みアクノリッジ信号(WACKa )が返信される。こ
れによって第1図の3ステート・アドレスラッチ回路3
a及びデータラッチ回路5aから前述したように全メモ
リ2a〜2dに対して書き込みアドレスと書き込みデー
タが送られ、全メモリ同時に同一データが書き込まれる
ものである。このようにして、デコーダ23は優先順位
に従って書き込みアクノリッジ信号(WACKa ) 
〜(WACKd )を順次送シ、各マイクロプロセッサ
は書き込み動作を優先順位に従って順次実行する。また
、プライオリティ・エンコーダ22はいずれかのマイク
ロプロセッサから書き込み要求が有ると書き込み要求有
信号を発生し、後述の書き込み/読み出し制御回路へ与
える。
That is, in FIG. 2, 2ta to 21d are write request flip-flops corresponding to each microprocessor;
2 is a priority encoder% 23 is a decoder,
24a to 24d are gate circuits that receive write request signals (W) from each microprocessor 1a to ld (FIG. 1).
When REQa) to (WREQd) are given, the corresponding write request flip-flops 21a to 21d memorize that there is a write request from each microprocessor. For this write request, the priority encoder 22 and decoder 23 determine the processing priority in the event of a conflict, and the decoder 23 returns a write acknowledge signal (WACKa) to the microprocessor with a higher priority, for example, the Eva microprocessor 1a. Ru. As a result, the 3-state address latch circuit 3 in FIG.
As described above, the write address and write data are sent from the data latch circuit 5a and the data latch circuit 5a to all the memories 2a to 2d, and the same data is written to all the memories at the same time. In this way, the decoder 23 outputs the write acknowledge signal (WACKa) according to the priority order.
.about.(WACKd) are sent sequentially, and each microprocessor executes write operations sequentially in accordance with priority. Furthermore, when there is a write request from any of the microprocessors, the priority encoder 22 generates a write request presence signal and supplies it to a write/read control circuit to be described later.

第3図は、メモリへの書き込み動作及び読み出し動作を
制御するための書き込み/読み出し制御回路の構成例を
示す。なお、簡単のためマイクロフロセッサ1aに対応
する回路部分のみを示しである。図中、31aは書き込
み開始フリップフロップ、32aはシフトレジスタ(8
bit)、33a〜35aは書き込み制御フリップ70
ツブ、36aは読み出し開始フリップフロップ、37a
〜40aはアクノリッジ返信フリップフロップ、41a
は書き込み制御フリノア”70ツ7’、42a〜42d
は書き込み完了フリップ70ツブ、43.44は書き込
み完了リセットフリップフロップである。
FIG. 3 shows a configuration example of a write/read control circuit for controlling write operations and read operations to the memory. For simplicity, only the circuit portion corresponding to the microprocessor 1a is shown. In the figure, 31a is a write start flip-flop, 32a is a shift register (8
bit), 33a to 35a are write control flips 70
The knob, 36a, is a readout start flip-flop, 37a.
~40a is an acknowledge reply flip-flop, 41a
is write control flinoa "70tsu7', 42a~42d
is a write completion flip-flop 70, and 43.44 is a write completion reset flip-flop.

書き込み要求時は、書き込み開始フリップ70ツブ31
aは書き込み要求信号(WREQa)を受けておシ、対
応するマイクロプロセッサ1aが読み出しアクセスにな
いことを条件として、シフトレジスタ32a、書き込み
制御フリップ70ツブ33a、34a、35a等がクロ
ック信号(CLKa)に従ってメモリのアクセス/サイ
クルタイムを考慮した所定のタイミングでアドレススト
ローブ信号(ASa ) 、チータストローブ信号(D
Sa) 、書き込み信号(WRa)を出力し、第1図に
おいて説明した如くにしてデータの書き込みを実行する
When writing is requested, write start flip 70 knob 31
In response to the write request signal (WREQa), the shift register 32a, write control flip 70 knobs 33a, 34a, 35a, etc. receive the clock signal (CLKa), provided that the corresponding microprocessor 1a is not in read access. Accordingly, the address strobe signal (ASa) and cheetah strobe signal (D
Sa), outputs a write signal (WRa), and executes data writing as explained in FIG.

読み出し要求時は、読み出し開始フリップフロップ36
aに読み出し信号(RDa)が与えられており、書き込
み開始フリップフロップ31aがセットされていないこ
と、即ち書き込み中でないこと、又は書き込み中のとき
はその書き込み処理が終了したことを条件として、使用
するメモリのアクセス/サイクルタイムを考慮してアク
ノリッジ返信フリップフロップ38aよりアクノリッジ
信号が返信され、第1図において説明した如くにして対
応するメモリ2a・からのデータの読み出しが実行され
る。
At the time of a read request, the read start flip-flop 36
It is used on the condition that the read signal (RDa) is given to a, and the write start flip-flop 31a is not set, that is, the writing is not in progress, or if the write process is completed, the write process is completed. An acknowledge signal is returned from the acknowledge return flip-flop 38a in consideration of the memory access/cycle time, and reading of data from the corresponding memory 2a is executed as explained in FIG.

なお、各マイクロプロセッサからの出力は、第1図の3
ステー1・・アドレスラッチ回路3a〜3d及び3ステ
ー1・・データラッチ回路5a〜5dにおいて−Hラッ
チされるため、動作を待機することなく直ちに応答する
ことができる。
Note that the output from each microprocessor is 3 in Figure 1.
Since -H is latched in the stay 1 address latch circuits 3a to 3d and the 3 stay 1 data latch circuits 5a to 5d, a response can be made immediately without waiting for operation.

しかし、同じマイクロプロセッサからの次の書き込み要
求に対しては、書き込み制御フリップフロップ41aに
よシ前データが客メモリに書き込み完了するまではアク
ノリッジ信号の出力が待機される。
However, in response to the next write request from the same microprocessor, the output of the acknowledge signal is awaited until the write control flip-flop 41a completes writing the previous data into the customer memory.

書き込み完了は、各マイクロプロセッサ1a〜1dに対
応する書き込み制御フリップフロップ35a〜35d(
35aのみ図示−)よシ書き込み完了信号(WENDa
 ) 〜(WENDd )が出力され、各書き込み完了
フリップフロップ42a〜42dがセットされることに
よシ検知される。
The writing is completed by writing control flip-flops 35a to 35d (corresponding to each microprocessor 1a to 1d).
Only 35a is shown in the figure), write completion signal (WENDa)
) to (WENDd) are output, and each write completion flip-flop 42a to 42d is set, thereby detecting the write completion.

そして、書き込み完了リセットフリップ70ツブ43.
44からのリセット信号が書き込み制御フリップフロッ
プ41a、全ての書き込み完了フリップ70ツグ42a
〜42dをリセットし、書き込み動作が終了する。
Then, write completion reset flip 70 tab 43.
A reset signal from 44 is sent to the write control flip-flop 41a and all write completion flips 70 and 42a.
~42d is reset and the write operation is completed.

第4図は、メモIJ 2 a〜2dの各アドレスのデー
タ内容の一致・不一致を検知するだめの一致診断回路の
回路例を示す。図中、45は一定周期割り込み発生回路
、46は一致診断制御回路、47はアドレス・データ一
致検出回路、48a〜48dはそれぞれマイクロプロセ
ッサ1a〜1dに対応して設けた第3図に示す書き込み
/読み出し制御回路である。
FIG. 4 shows an example of a matching diagnostic circuit for detecting matching/mismatching of the data contents of each address of the memo IJ2a to 2d. In the figure, 45 is a fixed period interrupt generation circuit, 46 is a coincidence diagnosis control circuit, 47 is an address/data coincidence detection circuit, and 48a to 48d are write/write/write/write/controllers shown in FIG. 3 provided corresponding to the microprocessors 1a to 1d, respectively. This is a read control circuit.

図示回路は、パワーオンリセットにより回路が立ち上が
ると、一定周期割り込み発生回路45より一定周期で各
マイクロプロセッサ1a〜1dに対して各メモリの読み
出し要求を意味する同期側シ込みをかけ、各マイクロプ
ロセッサはそれに応じて順次メモリアドレスを更新する
。この同期割り込みにより、各マイクロプロセッサ1a
〜1dはそれぞれ各メモリ2a〜2dの同一アドレス位
置のデータの読み出しを実行する。そしてこの時、全て
のマイクロプロセッサ1a〜1dを同期させ(同期する
まではWAITをかける)、各アドレス及び各データが
一致していることをアドレス・データ一致検出回路47
で確認し、各メモリの内容をチェックするものである。
In the illustrated circuit, when the circuit starts up due to a power-on reset, a synchronous side interrupt, meaning a read request for each memory, is sent to each microprocessor 1a to 1d at a constant period from a constant cycle interrupt generation circuit 45, and each microprocessor updates memory addresses sequentially accordingly. This synchronous interrupt causes each microprocessor 1a to
.about.1d execute reading of data at the same address position in each of the memories 2a to 2d, respectively. At this time, all the microprocessors 1a to 1d are synchronized (WAIT is applied until they are synchronized), and the address/data coincidence detection circuit 47 checks that each address and each data match.
This is to check the contents of each memory.

即ち、一定周期割り込み発生回路45の同期側シ込みに
応答したことにより、一致診断制御回路46から診断開
始信号が出される。これにより、各メモリ2a〜2dか
ら読み出されたアドレス及びデータは、それぞれ対応す
るアドレス用シフトレジスタ49a〜49d 、データ
用シフトレジスタ50a〜50dに格絡され、クロック
信号(CLK)に従って排他的OR回路51〜54で各
ピットの一致・不一致をチェックし、一致したビット回
数をバイナリカウンタ55゜56で計数し、全ビット一
致するか否かをチェツクする。それ迄は各書き込み/読
み出し制御回路48a〜48dに対して待機(WAIT
)をかける。AND回路57から一致信号が出力される
ことによ)各メモリ内容のチェックが完了し、前記待機
(WAIT)が解除され、次のアドレスの一致・不一致
チェック動作に移行する。また、データネ一致が発生し
た場合には、不一致信号ヲ各マイクロプロセッサに対し
て送出することもできる。以後のデータアプリケーショ
ンについては、目的に応じてソフトウェアによシ自由に
設計すればよい。
That is, in response to the synchronization-side interrupt from the constant cycle interrupt generation circuit 45, the coincidence diagnosis control circuit 46 outputs a diagnosis start signal. As a result, the addresses and data read from each of the memories 2a to 2d are routed to the corresponding address shift registers 49a to 49d and data shift registers 50a to 50d, and are exclusively ORed according to the clock signal (CLK). Circuits 51 to 54 check whether each pit matches or does not match, and binary counters 55 and 56 count the number of matched bits to check whether all bits match. Until then, each write/read control circuit 48a to 48d is on standby (WAIT).
)multiply. By outputting a match signal from the AND circuit 57), the check of the contents of each memory is completed, the wait (WAIT) is released, and the operation shifts to the match/mismatch check operation for the next address. Furthermore, when a data match occurs, a mismatch signal can be sent to each microprocessor. Subsequent data applications can be designed freely using software depending on the purpose.

なお、上記した一致診断回路はシステムによっては必要
としない場合も考えられる。この場合には、システムの
回路が大幅に削減されるものである。
Note that the above-described coincidence diagnosis circuit may not be necessary depending on the system. In this case, the circuitry of the system is significantly reduced.

発明の効果 本発明は以上述べた如き構成、作用になるもので、各マ
イクロプロセッサごとに同一アドレス構成になるランダ
ムアクセスメモリを設け、読み出し動作時は各マイクロ
プロセッサはそれぞれ対応するランダムアクセスメモリ
から個別にデータを読み出すと共に、データ書き込み時
は、書き込み要求のあったマイクロプロセッサからのデ
ータを、予め定めた優先順位に従って、全てのランダム
アクセスメモリの同一アドレス位置に同時に書き込むよ
う構成したので、物理的には複数のメモリを有しながら
論理的には同一データ内容からなる1つの共有メモリと
して機能し、しかも、各マイクロプロセッサからの読み
出し要求が競合しても何らスルーブツトの低下を生ぜず
、更に書き込み要求時においても書き込み要求が競合し
た場合にのみ優先順位に従って待機が生ずるのみである
から、マルチマイクロプロセッサシステム全体としての
スループットの低下を最少限にくい止め得るという優れ
た効果を奏する。
Effects of the Invention The present invention has the configuration and operation as described above. A random access memory with the same address configuration is provided for each microprocessor, and during read operation, each microprocessor reads data individually from its corresponding random access memory. At the same time, when writing data, the data from the microprocessor that requested the write is simultaneously written to the same address location in all random access memories according to a predetermined priority order. Although it has multiple memories, it logically functions as one shared memory consisting of the same data content, and even if read requests from each microprocessor compete, there is no reduction in throughput, and write requests Even at times, the wait occurs only in accordance with the priority order when write requests conflict with each other, which has the excellent effect of minimizing the reduction in throughput of the multi-microprocessor system as a whole.

また、本発明によるときは、共有メモリに対するアクセ
スタイムの高速化、容易にローカルメモリと同等の扱い
ができる、複数ワードデータをひとかたまりとするデー
タ収録性が向上する等の種々の効果も奏する。
In addition, the present invention provides various effects such as faster access time to the shared memory, ease of handling it in the same way as a local memory, and improved data recording performance in which multiple word data are grouped together.

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

図面は本発明方法を適用して構成したマルチ・マイクロ
プロセッサシステムの共有メモリ装置の1実施例を示し
、第1図は共有メモリ部分の回路構成図、第2図は処理
優先回路部分の回路構成図、第3図は書き込み/読み出
し制御回路部分の回路構成図、第4図は一致診断回路部
分の回路構成図である。 1a〜td・・・マイクロプロセッサ(CPU)、2a
〜2d・・・ランダムアクセスメモリ(共有メモリ)、
3a〜3d・・・3ステート・アドレスラッチ回路、4
a〜4d・・・アドレスセレクタ、5a〜5d・・・3
ステート・データラッチ回路、6a〜6d・・・バスド
ライバ(双方向性)。
The drawings show an embodiment of a shared memory device of a multi-microprocessor system configured by applying the method of the present invention, FIG. 1 is a circuit configuration diagram of a shared memory portion, and FIG. 2 is a circuit configuration diagram of a processing priority circuit portion. 3 is a circuit configuration diagram of the write/read control circuit portion, and FIG. 4 is a circuit configuration diagram of the coincidence diagnosis circuit portion. 1a to td...Microprocessor (CPU), 2a
~2d...Random access memory (shared memory),
3a to 3d... 3-state address latch circuit, 4
a to 4d...address selector, 5a to 5d...3
State data latch circuit, 6a to 6d... bus driver (bidirectional).

Claims (1)

【特許請求の範囲】[Claims] 同一アドレス構成になるランダムアクセスメモリを各マ
イクロプロセッサごとに設け、各ランダムアクセスメモ
リからのデータの読み出しは、それぞれ対応するランダ
ムアクセスメモリに対して各マイクロプロセッサから個
別にアクセスすると共に、各マイクロプロセッサからの
データの書き込みは、予め定めたマイクロプロセッサの
優先順位に従い、書き込み要求のあったマイクロプロセ
ッサの書き込みアドレスを全てのランダムアクセスメモ
リ同時に選択し、当該書き込み要求のあったマイクロプ
ロセッサの出力する書き込みデータを全メモリ同時に書
き込むことを特徴とするマルチ・マイクロプロセッサシ
ステムにおける共用メモリアクセス法。
A random access memory with the same address configuration is provided for each microprocessor, and data can be read from each random access memory by accessing the corresponding random access memory individually from each microprocessor, and by individually accessing the corresponding random access memory from each microprocessor. To write data, all random access memories simultaneously select the write address of the microprocessor that made the write request, according to the predetermined priority of the microprocessors, and write data output from the microprocessor that made the write request. A shared memory access method in a multi-microprocessor system characterized by simultaneous writing to all memories.
JP60139740A 1985-06-26 1985-06-26 Shared memory access method for multi-microprocessor system Pending JPS621059A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60139740A JPS621059A (en) 1985-06-26 1985-06-26 Shared memory access method for multi-microprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60139740A JPS621059A (en) 1985-06-26 1985-06-26 Shared memory access method for multi-microprocessor system

Publications (1)

Publication Number Publication Date
JPS621059A true JPS621059A (en) 1987-01-07

Family

ID=15252271

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60139740A Pending JPS621059A (en) 1985-06-26 1985-06-26 Shared memory access method for multi-microprocessor system

Country Status (1)

Country Link
JP (1) JPS621059A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9176891B2 (en) 2008-03-19 2015-11-03 Panasonic Intellectual Property Management Co., Ltd. Processor, processing system, data sharing processing method, and integrated circuit for data sharing processing

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9176891B2 (en) 2008-03-19 2015-11-03 Panasonic Intellectual Property Management Co., Ltd. Processor, processing system, data sharing processing method, and integrated circuit for data sharing processing

Similar Documents

Publication Publication Date Title
US4112490A (en) Data transfer control apparatus and method
KR940001273B1 (en) Micro-system and method controlling bus-cycle
US4594657A (en) Semaphore for memory shared by two asynchronous microcomputers
US4407016A (en) Microprocessor providing an interface between a peripheral subsystem and an object-oriented data processor
US5239642A (en) Data processor with shared control and drive circuitry for both breakpoint and content addressable storage devices
US4835733A (en) Programmable access memory
KR100286962B1 (en) Cache controller
US5119480A (en) Bus master interface circuit with transparent preemption of a data transfer operation
US6463529B1 (en) Processor based system with system wide reset and partial system reset capabilities
JP2821534B2 (en) Dual port random access memory device
JPH10134008A (en) Semiconductor device and computer system
US5163143A (en) Enhanced locked bus cycle control in a cache memory computer system
JPS6112288B2 (en)
US5627968A (en) Data transfer apparatus which allows data to be transferred between data devices without accessing a shared memory
US3480917A (en) Arrangement for transferring between program sequences in a data processor
US5218688A (en) Data processing system with memory-access priority control
EP0550976B1 (en) Memory accessing device using address pipeline
JPS621059A (en) Shared memory access method for multi-microprocessor system
JPH0330175B2 (en)
JPH09311812A (en) Microcomputer
JPH05127974A (en) Semaphore bit circuit
JPH05108476A (en) Main storage controller
JPH0528104A (en) Multiprocessor system
JPS59123063A (en) Access system of shared resource of multi-processor system
JPH07113914B2 (en) Memory controller