JPS5835294B2 - Multiprocessor processing method - Google Patents

Multiprocessor processing method

Info

Publication number
JPS5835294B2
JPS5835294B2 JP55013281A JP1328180A JPS5835294B2 JP S5835294 B2 JPS5835294 B2 JP S5835294B2 JP 55013281 A JP55013281 A JP 55013281A JP 1328180 A JP1328180 A JP 1328180A JP S5835294 B2 JPS5835294 B2 JP S5835294B2
Authority
JP
Japan
Prior art keywords
processing
processors
bus
processing request
register
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
Application number
JP55013281A
Other languages
Japanese (ja)
Other versions
JPS56110169A (en
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.)
Fujitsu Ltd
Hitachi Ltd
NEC Corp
Nippon Telegraph and Telephone Corp
Original Assignee
Fujitsu Ltd
Hitachi Ltd
Nippon Telegraph and Telephone Corp
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 Fujitsu Ltd, Hitachi Ltd, Nippon Telegraph and Telephone Corp, Nippon Electric Co Ltd filed Critical Fujitsu Ltd
Priority to JP55013281A priority Critical patent/JPS5835294B2/en
Publication of JPS56110169A publication Critical patent/JPS56110169A/en
Publication of JPS5835294B2 publication Critical patent/JPS5835294B2/en
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/065Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2205/00Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F2205/06Indexing scheme relating to groups G06F5/06 - G06F5/16
    • G06F2205/067Bidirectional FIFO, i.e. system allowing data transfer in two directions

Description

【発明の詳細な説明】 本発明のマルチプロセッサ処理方式に関し、特に、マイ
クロコンピュータ等のプロセッサを複数個使用して1つ
の処理装置を実現するときの各プロセッサ間の情報伝達
をプログラム負荷を増大させることなく行なえるように
したマルチプロセッサ処理方式に関する。
DETAILED DESCRIPTION OF THE INVENTION Regarding the multiprocessor processing method of the present invention, in particular, when a plurality of processors such as microcomputers are used to realize one processing device, information transmission between each processor increases the program load. This paper relates to a multiprocessor processing method that allows processing to be performed without any problems.

マイクロコンピュータ等のプロセッサを使用して処理装
置を実現する場合1個のプロセッサのみでは必要とする
能力が得られず、2個以上のプロセッサをマルチ接続し
て処理の分散を行うことはしばしば行われている。
When realizing a processing device using a processor such as a microcomputer, it is not possible to obtain the required capacity with just one processor, and it is often done to distribute the processing by connecting two or more processors in multiple ways. ing.

これらのプロセッサが処理を分担し、各々独立に動作し
ている場合これらのプロセッサ間相互の処理要求が必然
的に発生する。
When these processors share processing and operate independently, mutual processing requests inevitably occur between these processors.

本発明はこのプロセッサ間相互の処理要求の伝達方式に
関するものである。
The present invention relates to a method for transmitting processing requests between processors.

ここでは説明を簡略化するため2個のプロセッサを仮定
して説明する。
Here, in order to simplify the explanation, two processors will be assumed.

第1図に2個のプロセッサを使用した処理装置における
プロセッサ間の処理要求伝達回路の1例を示す。
FIG. 1 shows an example of a processing request transmission circuit between processors in a processing device using two processors.

PA及びPBは各々マイクロコンピュータ等のプロセッ
サ、MEM−AおよびMEM−Bはプログラムを格納す
るメモリ、IR,DRI〜nはプログラム制御レジスタ
、INTCは割込制御回路である。
PA and PB are processors such as microcomputers, MEM-A and MEM-B are memories for storing programs, IR and DRI-n are program control registers, and INTC is an interrupt control circuit.

又BUS−A、BUS−BはPA又はPBとメモリ、レ
ジスタ回路を接続するためのシステムバスでありアドレ
スバス、データバス及びその他の制御信号よりなる。
BUS-A and BUS-B are system buses for connecting PA or PB with memory and register circuits, and are composed of an address bus, a data bus, and other control signals.

A□ −A nはBUS−Aにおけるレジスタアドレス
、B 6 ” B nはBUS−Bにおけるレジスタア
ドレスである。
A□-A n is a register address in BUS-A, and B 6 "B n is a register address in BUS-B.

PA及びPBはそれぞれのシステムバスを介してメモリ
よりプログラムを読出し、その命令に基いて独立に処理
を行う。
PA and PB read programs from memory via their respective system buses and independently process them based on the instructions.

このときPAよりPBに対してプロセッサ間の処理要求
が発生した場合を仮定し、第1図により従来の方式を説
明する。
The conventional system will be explained with reference to FIG. 1, assuming that the PA issues an inter-processor processing request to the PB.

PAにおいてPHに対する処理要求が発生した場合、レ
ジスタIRに処理要求要因を書込み、本要因に伴ってP
Bfこおいてその処理に必要なデータをPAはレジスタ
DR1〜nのうちいずれか1個又は複数個に書込む。
When a processing request for PH occurs in PA, the processing request factor is written to register IR, and P
At Bf, PA writes data necessary for the processing to one or more of registers DR1 to n.

又レジスタIRにPAより処理要因を書込まれたことに
より割込制御回路1NTcはPBに対し割込みIBを発
生する。
Further, the interrupt control circuit 1NTc generates an interrupt IB to PB due to the processing factor written by PA to the register IR.

一方、PBではiBを検出したことによりIRを読込み
、その処理要求を判別後、必要に応じてDRl、nのい
ずれかの読込みを行いその処理を実行する。
On the other hand, the PB reads the IR upon detecting the iB, and after determining the processing request, reads either DRl or n as necessary and executes the processing.

PBFこおいて、本処理終了後IRをクリアすれば、P
AはPBに対する次の処理要求が発生した場合、IRが
クリアされている事を確認後、再びIR及びDR1〜n
へ書込むことができる。
If you use PBF and clear IR after this process, P
When the next processing request to PB occurs, A confirms that the IR has been cleared and then returns the IR and DR1 to n.
can be written to.

上記処理はPBからPAに対して処理要求が発生した場
合も同様で、第1図に示さないが、同等の回路を必要と
する。
The above processing is the same when a processing request is issued from PB to PA, and requires an equivalent circuit, although not shown in FIG.

しかし、以上に述べた方式での欠点はiR及びDR1〜
nのように多くのレジスタを必要とし、又プログラム制
御であるため、各々のレジスタにアドレスを割当てるこ
とが必要であることである。
However, the drawbacks of the method described above are iR and DR1~
It requires as many registers as n, and since it is program controlled, it is necessary to allocate an address to each register.

従ってPA側及びPB側のハードウェアの増大を招くと
共に、例えばPAよりPBに処理要求を行うときにPA
側プログラムは多くのアドレス(A。
This results in an increase in hardware on the PA and PB sides, and, for example, when a processing request is made from the PA to the PB, the PA
The side program has many addresses (A.

〜An)を処理要求内容によってアクセスする必要があ
り、又PB側側口ログラム同様でプログラム上の負荷も
大きい。
~An) needs to be accessed depending on the processing request contents, and, like the PB side program, the load on the program is also large.

又、先に述べた如く、PAより次の処理要求をPBに発
生する場合、IRがクリアされていることの確認等の処
理を必要とし、さらにクリアされていない場合、PAは
クリアされるまで待つことになり処理能力の低下を招く
Also, as mentioned earlier, when the PA issues the next processing request to the PB, it is necessary to confirm that the IR has been cleared, and if the IR has not been cleared, the PA will wait until it is cleared. Waiting results in a decrease in processing capacity.

本発明は上記従来方式の欠点を解消することを目的とし
、そのため本発明は複数のそれぞれ独立して動作するプ
ロセッサにより構成される処理装置において、上記プロ
セッサ間にあらかじめ定義された固定長のデータ形式で
データを蓄積するファーストイン・ファーストアウト・
レジスタ群をもうけ、上記プロセッサ相互間の処理要求
を上記ファーストイン・ファーストアウト・レジスタ群
に蓄積し、一方のプロセッサから他方のプロセッサへ処
理要求を伝達することを特徴とする。
An object of the present invention is to eliminate the drawbacks of the above-mentioned conventional methods, and for this purpose, the present invention provides a processing device comprising a plurality of independently operating processors, in which a predefined fixed-length data format is established between the processors. First-in, first-out, accumulating data with
A register group is provided, processing requests between the processors are accumulated in the first-in first-out register group, and processing requests are transmitted from one processor to the other processor.

以下、本発明を図面により説明する。Hereinafter, the present invention will be explained with reference to the drawings.

第2図は本発明tこよる実施例のマルチプロセッサシス
テムのブロック図であり、図中、第1図と同一名のもの
は同一物、FiFo−1はファーストイン・ファースト
アウト形式のレジスタ群でありPAより書込みPBより
読出すもの、FIFo−2は同様(こファーストイン・
ファーストアウトのレジスタ群でありPBより書込みP
Aより読出すものである。
FIG. 2 is a block diagram of a multiprocessor system according to an embodiment of the present invention. In the figure, the same names as those in FIG. Writes from PA and reads from PB, FIFo-2 is the same (this first-in
It is a first-out register group and is written from PB to P.
It is read from A.

また、AOはBUS−Aにおけるレジスタアドレス、B
oはBUS−Bにおけるレジスタアドレスである。
Also, AO is the register address in BUS-A, B
o is a register address in BUS-B.

第1図の場合の説明と同様に、PAよりPBに対し処理
要求を行う場合について説明すると、PAのプログラム
は処理要求が発生すると、処理要求要因を示すバイトi
及びそれtこ伴うデータD1〜Dnを連続して同一のア
ドレス(Ao)に対して書込む。
Similar to the explanation in the case of Fig. 1, to explain the case where a processing request is made from PA to PB, when a processing request occurs, the PA program sends a byte i indicating the cause of the processing request.
and the accompanying data D1 to Dn are successively written to the same address (Ao).

FIFo−1は第3図に示す如くレジスタ群によって構
成されており、PAよりBUB−Aを介して書込まれた
内容を直ちにBUS−B側ヘシフトする。
FIFo-1 is composed of a group of registers as shown in FIG. 3, and immediately shifts the contents written from PA via BUB-A to BUS-B.

従って、PAよりバイトi及びそれに伴うデータD1〜
Dnが連続して書込まれるとこれらは最もBUS−B側
のレジスタR8−R,nに蓄積されることEこなる。
Therefore, from PA byte i and accompanying data D1~
When Dn are written in succession, they are stored in the register R8-R,n closest to BUS-B.

又このときレジスタR8に情報が格納されるとBUS−
Bを介してレジスタR8の内容の読込みが可能となり、
かつ本状態をINTCが検出するよう回路が構成されて
おり1NTCはPBに対して割込みIBを発生する。
Also, at this time, when information is stored in register R8, BUS-
It becomes possible to read the contents of register R8 via B,
The circuit is configured so that INTC detects this state, and 1NTC generates an interrupt IB to PB.

PBは割込みIBを検出すると、連続して同一アドレス
(BO)をn + 1回読込むこと(こより、バイトi
及びデータD1〜Dnを読込むことができる。
When PB detects interrupt IB, it reads the same address (BO) n + 1 times in succession (thereby, byte i
and data D1 to Dn can be read.

これは、FiFoは第2図においてレジスタR6がPB
fこより読込まれると、直ちにレジスタR8−Rnの内
容をBUS−B側ヘシフトするように構成されているた
めである。
This means that the FiFo register R6 is PB in Figure 2.
This is because the contents of registers R8 to Rn are immediately shifted to the BUS-B side when read from f.

以上により、次の処理要求がPAFこおいて発生してい
ない場合、PBがn + 1回FIFo−1を読込めば
蓄積された情報はなくなり割込IBは解消される。
As described above, if the next processing request is not generated in the PAF, the stored information disappears and the interrupt IB is canceled after the PB reads FIFo-1 n + 1 times.

又、PBが上述のnバイトを読込み終了以前に次の処理
要求がPAにおいて発生した場合、PAは直ちに先に述
べたと同様にしてFIFo−1に蓄積さ、札順次BUS
−B側ヘシフトされる。
In addition, if the next processing request occurs in PA before PB finishes reading the above n bytes, PA immediately stores it in FIFo-1 in the same way as described above, and sends it to BUS in card order.
- Shifted to the B side.

このようにしてFIFolにはP個の処理要求を蓄積す
ることができ、FAは第1図の方式の場合のように待た
されることはない。
In this way, P processing requests can be stored in FIFol, and the FA is not forced to wait as in the system of FIG.

第2図及び第3図(こおいて、1個の処理要求における
PAからPBへの転送を固定長(第3図ではn + 1
バイト)とすることにより、処理要求内容に拘らず、P
Bは1個の処理要求につきFIF。
Figures 2 and 3 (here, the transfer from PA to PB in one processing request is fixed length (n + 1 in Figure 3)
Byte), regardless of the processing request contents, P
B is FIF per processing request.

−1より常に同じ回数だけ読込みを行えばよく、プログ
ラムの処理はさらに簡略化される。
-1, it is sufficient to always read the same number of times, and the program processing is further simplified.

以上はPAからPBへ処理要求を行う場合について述べ
たが、逆の場合も、FIFo−2を使用する以外間等で
ある。
The above has described the case where a processing request is made from PA to PB, but the reverse case is also applicable except when FIFo-2 is used.

本発明による処理方式は、第1図で述べた従来方式と比
較し、プログラム制御レジスタのアドレスは極めて少な
くてすみ、又FiFoは市販のLSIを使用できるため
、ハードウェア量が少なくかつプログラム負荷も軽減す
る。
Compared to the conventional method described in FIG. 1, the processing method according to the present invention requires an extremely small number of program control register addresses, and because FiFo can use a commercially available LSI, the amount of hardware is small and the program load is low. Reduce.

さらに、処理要求の転送のためにPA又はPBで待ちが
生じることがなく、又転送単位を固定長にすることによ
り処理能力の向上を計ることができる。
Furthermore, there is no waiting time at PA or PB for transfer of processing requests, and by making the transfer unit a fixed length, it is possible to improve processing performance.

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

第1図はプロセッサ間処理要求伝達回路の従来例、第2
図は本発明による実施例のマルチプロセッサシステムの
ブロック図、第3図は第2図図示のファーストイン・フ
ァーストアウト・レジスタ群の構成例である。 第2図において、PAとPBはプロセッサ、BUS−A
とBUS−Bはシステムバス、MEM−AとMEM−B
はメモリ、FiFo−1とFiFo −2はファースト
イン・ファストアウト・レジスタ群、1NTCは割込制
御回路である。
Figure 1 shows a conventional example of an inter-processor processing request transmission circuit;
The figure is a block diagram of a multiprocessor system according to an embodiment of the present invention, and FIG. 3 is an example of the configuration of the first-in first-out register group shown in FIG. In Figure 2, PA and PB are processors, BUS-A
and BUS-B are system buses, MEM-A and MEM-B
is a memory, FiFo-1 and FiFo-2 are first-in/fast-out register groups, and 1NTC is an interrupt control circuit.

Claims (1)

【特許請求の範囲】[Claims] 1 複数のそれぞれ独立して動作するプロセッサにより
構成される処理装置において、上記プロセッサ間にあら
かじめ定義された固定長のデータ形式の命令を蓄積し、
上記固定長命令を命令単位に順次シフトするファースト
イン・ファーストアウト・レジスタ群をもうけ、上記プ
ロセッサ相互間の処理要求を上記ファーストイン・ファ
ーストアウト・レジスタ群に蓄積し、一方のプロセッサ
から他方のプロセッサへ処理要求を割込みにより伝達す
ることを特徴とするマルチプロセッサ処理方式。
1. In a processing device composed of a plurality of independently operating processors, instructions in a predefined fixed length data format are stored between the processors,
A first-in/first-out register group is provided to sequentially shift the fixed length instructions in instruction units, and processing requests between the processors are accumulated in the first-in/first-out register group, and one processor transfers processing requests from one processor to the other. A multiprocessor processing method characterized by transmitting processing requests to computers using interrupts.
JP55013281A 1980-02-06 1980-02-06 Multiprocessor processing method Expired JPS5835294B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP55013281A JPS5835294B2 (en) 1980-02-06 1980-02-06 Multiprocessor processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP55013281A JPS5835294B2 (en) 1980-02-06 1980-02-06 Multiprocessor processing method

Publications (2)

Publication Number Publication Date
JPS56110169A JPS56110169A (en) 1981-09-01
JPS5835294B2 true JPS5835294B2 (en) 1983-08-02

Family

ID=11828808

Family Applications (1)

Application Number Title Priority Date Filing Date
JP55013281A Expired JPS5835294B2 (en) 1980-02-06 1980-02-06 Multiprocessor processing method

Country Status (1)

Country Link
JP (1) JPS5835294B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6438798U (en) * 1987-09-03 1989-03-08
JPH0120797Y2 (en) * 1985-08-27 1989-06-22
JPH01227396A (en) * 1988-03-05 1989-09-11 Stanley Electric Co Ltd Long-sized el element
JPH0322394U (en) * 1989-07-13 1991-03-07

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4604500A (en) * 1981-12-02 1986-08-05 At&T Bell Laboratories Multiprocessing interrupt arrangement
JPS58203562A (en) * 1982-05-21 1983-11-28 Nec Corp Method for controlling memory
JPS59117619A (en) * 1982-12-24 1984-07-07 Omron Tateisi Electronics Co Data transfer processing device
JPS60229160A (en) * 1984-04-26 1985-11-14 Toshiba Corp Multiprocessor system
JPS6444571A (en) * 1987-08-12 1989-02-16 Omron Tateisi Electronics Co Inter-processor coupling system
JPH06162226A (en) * 1992-11-20 1994-06-10 Nec Corp Parallel processor controller

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54103649A (en) * 1978-02-01 1979-08-15 Matsushita Electric Ind Co Ltd Data transmission control system between arithmetic control elements

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54103649A (en) * 1978-02-01 1979-08-15 Matsushita Electric Ind Co Ltd Data transmission control system between arithmetic control elements

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0120797Y2 (en) * 1985-08-27 1989-06-22
JPS6438798U (en) * 1987-09-03 1989-03-08
JPH01227396A (en) * 1988-03-05 1989-09-11 Stanley Electric Co Ltd Long-sized el element
JPH0322394U (en) * 1989-07-13 1991-03-07

Also Published As

Publication number Publication date
JPS56110169A (en) 1981-09-01

Similar Documents

Publication Publication Date Title
JP3641675B2 (en) Split buffer architecture
GB2101374A (en) Interface circuit
JPS5835294B2 (en) Multiprocessor processing method
CA1297198C (en) Program mode access control system
CA2130064C (en) Method and apparatus for transferring data between a host processor and a subsystem processor in a data processing system
JPH0221619B2 (en)
KR930005843B1 (en) Method for controlling subprocessor in multiprocessor system
JPS6156546B2 (en)
JPS6149696B2 (en)
JP2926859B2 (en) Parallel processing system
JPS58169277A (en) Data processor
JPS6367702B2 (en)
JP2533886B2 (en) Data transfer method
JPS6198469A (en) Inter-microprocessor communications system
JP3013993B2 (en) Vector processing method
JPS599324Y2 (en) multiprocessor device
JPH02257356A (en) Data transfer method for multiprocessor system
JPS5890227A (en) Interface system of data transfer
JPS6143366A (en) Data transfer system
JPH0492952A (en) Parallel processing system
JPH04322355A (en) Information exchange device
JPS62145345A (en) Control system for direct memory access interval
JPH0715673B2 (en) Multiprocessor data processor
JPS60563A (en) Multiprocessor
JPS60256858A (en) Program loading system