JPH05342172A - Multiprocessor system - Google Patents

Multiprocessor system

Info

Publication number
JPH05342172A
JPH05342172A JP4147629A JP14762992A JPH05342172A JP H05342172 A JPH05342172 A JP H05342172A JP 4147629 A JP4147629 A JP 4147629A JP 14762992 A JP14762992 A JP 14762992A JP H05342172 A JPH05342172 A JP H05342172A
Authority
JP
Japan
Prior art keywords
processor
communication
state
processors
output
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
JP4147629A
Other languages
Japanese (ja)
Inventor
Ichiro Nagashima
一郎 長嶋
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP4147629A priority Critical patent/JPH05342172A/en
Publication of JPH05342172A publication Critical patent/JPH05342172A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

PURPOSE:To efficiently execute the two kinds of the communication modes of broadcast communication and adjacent parallel communication. CONSTITUTION:This multiprocessor system is provided with the even number of three-state buffers 331-336, plural first buses 341-346 to connect these three- state buffers 331-336 in the shape of a ring, plural second buses connected to the buses between the respective adjacent three-state buffers in the state of wired OR, plural processors 311-316 to exchange data through the second buses to the first buses, and host computer to exchange data while selectively controlling the processors 311-316 and the three-state buffers 331-336 according to either broadcast communication or shift communication.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明はマルチプロセッサシステ
ムにおけるプロセッサ間通信に関するもので、特にバス
接続によるブロードキャスト通信とリング接続による隣
接プロセッサ間での並列シフト通信の2種類のモードを
持つものに使用されるマルチプロセッサシステムに関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to interprocessor communication in a multiprocessor system, and is particularly used for those having two modes of broadcast communication by bus connection and parallel shift communication between adjacent processors by ring connection. Multiprocessor system.

【0002】[0002]

【従来の技術】従来のマルチプロセッサシステムには、
バス接続型(図4)やリング接続型(図5)がある。バ
ス接続型の場合、1つの送信プロセッサからその他の受
信プロセッサへデータを転送するブロードキャスト通信
を、1サイクルで行ない得る。
2. Description of the Related Art Conventional multiprocessor systems include
There are a bus connection type (Fig. 4) and a ring connection type (Fig. 5). In the case of the bus connection type, broadcast communication for transferring data from one transmitting processor to another receiving processor can be performed in one cycle.

【0003】[0003]

【発明が解決しようとする課題】しかし、上記従来のマ
ルチプロセッサシステムにおいては、シストリックアレ
イのように隣接するプロセッサ間で通信データを並列に
シフトする場合は、送受信プロセッサ1組ごとにバスを
時分割して使用せねばならず効率が悪い。一方、リング
接続型の場合は、隣接プロセッサ間のシフト通信(隣接
並列通信)は、1サイクルで可能で適している。しか
し、ブロードキャスト通信では、1つの送信プロセッサ
から最後の受信プロセッサへデータが転送されるまでに
(プロセッサ数−1)回のサイクルが必要となり、効率
が悪い。このため、ブロードキャスト通信と隣接並列通
信の2種類のモードを使うようなマルチプロセッサシス
テムを構成する場合、バス接続またはリング接続を選択
すると、いずれか一方の通信モードの効率が悪かった。
However, in the above-mentioned conventional multiprocessor system, when the communication data is shifted in parallel between the adjacent processors like the systolic array, the bus for each set of the transmission / reception processors is changed. It has to be divided and used inefficiently. On the other hand, in the case of the ring connection type, shift communication between adjacent processors (adjacent parallel communication) is possible in one cycle, which is suitable. However, the broadcast communication is inefficient because it takes (number of processors-1) cycles until data is transferred from one transmitting processor to the last receiving processor. For this reason, when a bus connection or ring connection is selected when configuring a multiprocessor system that uses two types of modes, that is, broadcast communication and adjacent parallel communication, the efficiency of either one of the communication modes is poor.

【0004】本発明の目的は、前記問題に鑑み、ブロー
ドキャスト通信と隣接並列通信の2種類の通信モードを
効率良く実行できるマルチプロセッサシステム、およ
び、前記マルチプロセッサシステムを構成するのに適し
たプロセッサを提供することである。
In view of the above problems, an object of the present invention is to provide a multiprocessor system capable of efficiently executing two types of communication modes of broadcast communication and adjacent parallel communication, and a processor suitable for constituting the multiprocessor system. Is to provide.

【0005】[0005]

【課題を解決するための手段】上記目的を達成するため
に、本発明の特徴は、マルチプロセッサシステムにおい
て、偶数個のスリーステイトバッファと、このスリース
テイトバッファをリング状に接続する複数の第1のバス
と、隣接する各々のスリーステイトバッファ間の前記バ
スにワイヤードオアで接続した複数の第2のバスと、夫
々前記第2のバスを介して前記第1のバスとデータの交
換を行う複数のプロセッサと、ブロードキャスト通信又
はシフト通信のいずれかに従って選択的に前記プロセッ
サと前記スリーステイトバッファを制御して前記データ
交換を行うホストコンピュータとを具備したことであ
る。
In order to achieve the above object, a feature of the present invention is that in a multiprocessor system, an even number of three-state buffers and a plurality of first three-state buffers that connect the three-state buffers in a ring shape. Bus, a plurality of second buses connected to the bus between adjacent three-state buffers by wired OR, and a plurality of data exchanges with the first bus via the second bus, respectively. And a host computer that selectively controls the processor and the three-state buffer to perform the data exchange according to either broadcast communication or shift communication.

【0006】[0006]

【作用】上述の如き構成によれば、前記ホストコンピュ
ータは、前記プロセッサの夫々に内蔵されたゲート制御
機能を介して、前記スリーステイトバッファを制御する
様に構成されているので、ブロードキャスト通信と隣接
並列通信の2種類の通信モードを効率良く実行できるも
のである。
According to the above-mentioned configuration, the host computer is configured to control the three-state buffer via the gate control function built in each of the processors. It is possible to efficiently execute two types of communication modes of parallel communication.

【0007】[0007]

【実施例】本発明の実施例によるマルチプロセッサシス
テムを第1図に示す。図中311,312,313,3
14,315,316はプロセッサ、321,322,
323,324,325,326はプロセッサの入出力
バス、331,332,333,334,335,33
6はスリーステイトバッファ、341,342,34
3,344,345,346はスリーステイトバッファ
間のバスである。32nのプロセッサの入出力と34n
のスリーステイトバッファの出力は、ワイアードオアさ
れて次段のスリーステイトバッファへ入出力されてい
る。又、プロセッサの数は偶数である。
1 shows a multiprocessor system according to an embodiment of the present invention. 311, 312, 313, 3 in the figure
14, 315, 316 are processors, 321, 322,
Reference numerals 323, 324, 325, and 326 denote processor input / output buses, and 331, 332, 333, 334, 335, and 33.
6 is a three-state buffer, 341, 342, 34
3, 344, 345 and 346 are buses between the three-state buffers. 32n processor input / output and 34n
The output of the three-state buffer is wired-ORed and input / output to / from the three-state buffer of the next stage. Also, the number of processors is even.

【0008】システム全体の動作は、これらプロセッサ
及びバッファに制御線361,362を介して接続した
ホストコンピュータ35によって制御される。このマル
チプロセッサシステムの動作を以下に説明する。
The operation of the entire system is controlled by a host computer 35 connected to these processors and buffers via control lines 361 and 362. The operation of this multiprocessor system will be described below.

【0009】初めにブロードキャスト通信の為の動作を
説明する。まず、送信を行なうプロセッサの前段のスリ
ーステイトバッファをオープンし、他のスリーステイト
バッファをクローズさせる。つぎに、送信プロセッサは
入出力から通信データを出力し、受信プロセッサは入出
力を入出力状態とする。すると、送信プロセッサの前段
のスリーステイトバッファはオープンしているので、送
信プロセッサの入出力がワイアードオアされているスリ
ーステイトバッファ間のバスは、送信プロセッサにより
通信データにドライブされる。また、送信プロセッサの
前段以外のスリーステイトバッファはクローズされてお
り、受信プロセッサの入出力は入力状態であるので、ス
リーステイトバッファ間のバスは、前段のスリーステイ
トバッファによって順次通信データにドライブされる。
これにより、受信プロセッサは通信データを取り込むこ
とができる。
First, the operation for broadcast communication will be described. First, the three-state buffer in the preceding stage of the processor that performs transmission is opened, and the other three-state buffers are closed. Next, the transmitting processor outputs communication data from the input / output, and the receiving processor puts the input / output in the input / output state. Then, since the three-state buffer in the preceding stage of the transmitting processor is open, the bus between the three-state buffers to which the input / output of the transmitting processor is wired-OR is driven by the transmitting processor to communication data. Further, since the three-state buffers other than the preceding stage of the transmitting processor are closed and the input / output of the receiving processor is in the input state, the bus between the three-state buffers is sequentially driven to communication data by the preceding three-state buffers. ..
This allows the receiving processor to capture the communication data.

【0010】例えば、プロセッサ314が送信/他のプ
ロセッサが受信する場合、スリーステイトバッファ33
4をオープン/他のスリーステイトバッファをクローズ
とし、送信プロセッサ314が通信データをスリーステ
イトバッファ間のバス344へ出力する。通信データは
クローズしているスリーステイトバッファ335,33
6,331,332,333を経由して、スリーステイ
トバッファ間のバス345,346,341,342,
343へ達し、それぞれ受信プロセッサ315,31
6,311,312,313へ入力される。スリーステ
イトバッファ334はオープンしているので、通信デー
タはそれ以上伝搬されず、ループバックによる発振は防
止される。各プロセッサ及びスリーステイトバッファの
動作の整合性はホストコンピュータによって管理されて
おり、例えば同時に2つ以上のプロセッサが出力状態に
なる様なことはない。
For example, when the processor 314 is transmitting / receiving by another processor, the three-state buffer 33 is used.
4 is opened / other three state buffers are closed, and the transmission processor 314 outputs the communication data to the bus 344 between the three state buffers. Communication data is closed Three-state buffers 335, 33
Buses 345, 346, 341, 342 between the three-state buffers via 6, 331, 332, 333.
343, and receive processors 315, 31 respectively
6, 311, 312, 313. Since the three-state buffer 334 is open, communication data is not propagated anymore, and oscillation due to loopback is prevented. The consistency of the operation of each processor and the three-state buffer is managed by the host computer, and, for example, no two or more processors are in the output state at the same time.

【0011】即ち、ホストコンピュータは、1つのプロ
セッサが、他のプロセッサ等の状態を把持することな
く、通信モードの切り替えを行うことがないように各プ
ロセッサのモードの管理を行っている。モードの整合性
については、この様にホストコンピュータによる管理の
外に、後に応用例で述べる様にトークンを用いる方法が
ある。しかしホストコンピュータによる方法の場合は、
バッファ331,334をオープンとし、その外のバッ
ファをクローズすることによって、プロセッサ331か
らプロセッサ313へのデータ転送と、プロセッサ31
4からプロセッサ316へのデータ転送を、同時に行う
ことも可能になる。
That is, the host computer manages the mode of each processor so that one processor does not switch the communication mode without grasping the states of the other processors and the like. Regarding the consistency of the modes, there is a method of using a token as described later in an application example, in addition to the management by the host computer. However, in the case of the host computer method,
By opening the buffers 331 and 334 and closing the other buffers, the data transfer from the processor 331 to the processor 313 and the processor 31 are performed.
It is also possible to perform data transfer from 4 to the processor 316 at the same time.

【0012】次にシフト通信の為の動作を説明する。ま
ず、スリーステイトバッファを交互にオープン/クロー
ズする。さらに、前段のスリーステイトバッファがオー
プンしているプロセッサは入出力から通信データを出力
し、前段のスリーステイトバッファがクローズしている
プロセッサは入出力を入力状態とする。すると、送信プ
ロセッサの入出力がワイアードオアされているスリース
テイトバッファ間のバスは、送信プロセッサにより通信
データにドライブされ、受信プロセッサの入出力がワイ
アードオアされているスリーステイトバッファ間のバス
は、前段のスリーステイトバッファによって前段の送信
プロセッサの出力した通信データにドライブされる。こ
れにより、受信プロセッサは前段の送信プロセッサの出
力した通信データを取り込むことができる。つぎに、ス
リーステイトバッファのオープン/クローズを逆転さ
せ、プロセッサの送/受信も切替えると、前に送信を行
なったプロセッサは前段のプロセッサの出力する通信デ
ータを取り込むことができ、以上の2サイクルで1開の
シフト通信が行なわれる。ここでも各プロセッサ及び、
バッファの動作の整合性は、ホストコンピュータ35に
よって保障され、正しく同期してシフト通信が実行され
る。
Next, the operation for shift communication will be described. First, the three-state buffer is alternately opened / closed. Further, the processor in which the preceding three-state buffer is open outputs communication data from the input / output, and the processor in which the preceding three-state buffer is closed sets the input / output to the input state. Then, the bus between the three-state buffers in which the input / output of the transmitting processor is wired-OR is driven by the transmitting processor to communication data, and the bus between the three-state buffers in which the input / output of the receiving processor is wired-OR is the previous stage. It is driven by the communication data output from the transmission processor in the previous stage by the three-state buffer. As a result, the receiving processor can capture the communication data output from the preceding transmitting processor. Next, if the open / close of the three-state buffer is reversed and the transmission / reception of the processor is also switched, the processor transmitting previously can capture the communication data output from the processor in the preceding stage, and in the above two cycles. Shift communication of one open is performed. Again, each processor and
The consistency of the operation of the buffer is ensured by the host computer 35, and the shift communication is executed in correct synchronization.

【0013】例えば、まず、スリーステイトバッファ3
31,333,335をオープン、332,334,3
36をクローズさせ、プロセッサ311,313,31
5を送信、312,314,316を受信とする。送信
プロセッサ311,313,315は、通信データをそ
れぞれスリーステイトバッファ間のバス341,34
3,345へ出力する。通信データは、それぞれクロー
ズしているスリーステイトバッファ、32,334,3
36を経由して、スリーステイトバッファ間のバス34
2,334,346へ達し、受信プロセッサ312,3
14,316へ入力される。つぎに、スリーステイトバ
ッファ331,333,335をクローズ、332,3
34,336をオープンさせ、プロセッサ311,31
3,315を受信、312,314,316を送信とす
る。送信プロセッサ312,314,316は、通信デ
ータをそれぞれスリーステイトバッファ間のバス34
2,344,346へ出力する。通信データは、それぞ
れクローズしているスリーステイトバッファ333,3
35,331を経由して、スリーステイトバッファ34
3,345,341へ達し、受信プロセッサ333,3
35,331へ入力される。以上により、プロセッサ3
11から312,312から313,313から31
4,314から315,315から316,316から
311への通信が行なわれる。
For example, first, the three-state buffer 3
Open 31,333,335, 332,334,3
36 is closed, and processors 311, 313, 31
5 is transmitted and 312, 314, and 316 are received. The transmission processors 311, 313, 315 send the communication data to the buses 341, 34 between the three-state buffers, respectively.
Output to 3,345. The communication data includes three-state buffers 32, 334, and 3 that are closed.
Bus 34 between three-state buffers via 36
2,334,346 and receive processors 312,3
It is input to 14,316. Next, the three-state buffers 331, 333, 335 are closed, 332, 3
34,336 are opened and the processors 311 and 31
3, 315 is received and 312, 314, 316 are transmitted. The transmission processors 312, 314, and 316 send the communication data to the bus 34 between the three-state buffers, respectively.
2, 344, 346. The communication data is the three-state buffers 333 and 3 which are closed.
Three-state buffer 34 via 35,331
3, 345, 341 and receive processor 333, 3
35,331. From the above, the processor 3
11 to 312, 312 to 313, 313 to 31
Communication is made from 4, 314 to 315, 315 to 316, 316 to 311.

【0014】以上の実施例では、スリーステイトバッフ
ァの制御はホストコンピュータ35によって行なわれて
いたが、制御線361を省略しプロセッサ311がバッ
ファ331を、プロセッサ312がバッファ332をと
いった様に夫々のプロセッサが対応するバッファを制御
する様にしても良い。
In the above embodiment, the control of the three-state buffer is performed by the host computer 35. However, the control line 361 is omitted and the processor 311 controls the buffer 331 and the processor 312 controls the buffer 332. May control the corresponding buffer.

【0015】この様なプロセッサの例を第2図に示す。
図中、41,42はプロセッサで、第1図の各プロセッ
サ311〜316に交互に配される。すなわち、例えば
プロセッサ311,313,315は41のタイプを用
いプロセッサ312,314,316には43のタイプ
を用いる。但し、これらのプロセッサを用いた場合、制
御線361は使用しない。411,421は通信機能を
除くプロセッサのコア部で通常のプロセッサ機能を持
つ。4131,4231は通信状態レジスタで、413
2,4232のブロードキャスト/シフト通信状態信号
および4133,4233のブロードキャスト通信送/
受信状態信号をゲート制御論理回路へ出力する制御線で
ある。412,421はプロセッサの入出力バスで、内
部スリーステイトバッファ4121,4221によって
入出力が切替えられる。前記内部スリーステイトバッフ
ァは、前記ゲート制御論理回路の出力でオープン/クロ
ーズされる。また、前記ゲート制御論理回路の出力は反
転して413,423の対応するスリーステイトバッフ
ァ(例えば第1図のバッファ331)のゲート制御信号
(正論理)として出力され、この信号はプロセッサの前
段のスリーステイトバッファを制御する。414,42
4はホストコンピュータ35より与えられるプロセッサ
への入出力制御入力で、すべてのプロセッサで共通とす
る。但し、プロセッサ42では、インバータ425が設
けられている為、この制御入力は反転される。以下に、
これらのプロセッサ41,42を用いたマルチプロセッ
サシステムの動作を説明する。
An example of such a processor is shown in FIG.
In the figure, 41 and 42 are processors which are alternately arranged in the processors 311 to 316 of FIG. That is, for example, the processors 311, 313, 315 use the type 41 and the processors 312, 314, 316 use the type 43. However, when these processors are used, the control line 361 is not used. Reference numerals 411 and 421 denote core parts of the processor excluding the communication function and have normal processor functions. Reference numerals 4131 and 4231 denote communication status registers.
2, 4232 broadcast / shift communication status signals and 4133, 4233 broadcast communication transmission /
It is a control line that outputs a reception status signal to the gate control logic circuit. Input / output buses 412 and 421 of the processor are switched between input and output by the internal three-state buffers 4121 and 4221. The internal three-state buffer is opened / closed at the output of the gate control logic circuit. The output of the gate control logic circuit is inverted and output as a gate control signal (positive logic) of the corresponding three-state buffers 413 and 423 (for example, the buffer 331 of FIG. 1), and this signal of the preceding stage of the processor. Controls the three-state buffer. 414, 42
Reference numeral 4 denotes an input / output control input to the processor provided from the host computer 35, which is common to all the processors. However, in the processor 42, since the inverter 425 is provided, this control input is inverted. less than,
The operation of the multiprocessor system using these processors 41 and 42 will be described.

【0016】先ず、ブロードキャスト通信の場合を説明
する。送信を行なうプロセッサでは、4131または4
231の通信状態レジスタが、ブロードキャスト通信,
送信状態となり、4132または4232のブロードキ
ャスト/シフト通信状態信号は“L”レベル、4133
または4233のブロードキャスト通信送/受信状態信
号は“L”レベルとなる。よって、4134または42
34のゲート制御論理回路の出力は“H”レベルとな
り、4121または4221の内部スリーステイトバッ
ファはクローズ、413または423の外部スリーステ
イトバッファのゲート制御信号出力は“L”レベルとな
る。これにより、送信プロセッサの入出力は出力状態、
その前段のスリーステイトバッファはハイインピース状
態となる。
First, the case of broadcast communication will be described. In the transmitting processor, 4131 or 4
231, the communication status register is broadcast communication,
The transmission state is set, and the broadcast / shift communication state signal of 4132 or 4232 is the “L” level, 4133.
Alternatively, the broadcast communication transmission / reception status signal of 4233 becomes "L" level. Therefore, 4134 or 42
The output of the gate control logic circuit 34 is "H" level, the internal three-state buffer 4121 or 4221 is closed, and the gate control signal output of the external three-state buffer 413 or 423 is "L" level. As a result, the input / output of the transmitting processor is in the output state,
The three-state buffer in the preceding stage is in the high in-piece state.

【0017】受信を行なうブロードキャストでは、41
31および4231の通信状態レジスタが、ブロードキ
ャスト通信,受信状態となり、4132および4232
のブロードキャスト/シフト通信状態信号は“L”レベ
ル、4133および4233のブロードキャスト通信送
/受信状態信号は“H”レベルとなる。よって、413
4および4234のゲート制御論理回路の出力は“L”
レベルとなり、4121および4221の内部スリース
テイトバッファバッファはオーブン、413および42
3の外部スリーステイトバッファのゲート制御信号出力
は“H”レベルとなる。これにより、受信プロセッサの
入出力は入力状態、その前段のスリーステイトバッファ
は転送状態となる。
In the case of receiving broadcast, 41
The communication status registers of 31 and 4231 are set to the broadcast communication and reception statuses, 4132 and 4232.
The broadcast / shift communication status signal of 1 is "L" level, and the broadcast communication transmission / reception status signals of 4133 and 4233 are "H" level. Therefore, 413
4 and 4234 gate control logic output is "L"
Level 4121 and 4221 internal three-state buffer buffer is oven 413 and 42
The output of the gate control signal of the external three-state buffer No. 3 becomes "H" level. As a result, the input / output of the receiving processor is in the input state, and the three-state buffer in the preceding stage is in the transfer state.

【0018】以上により、送信プロセッサから、すべて
の受信プロセッサへの通進路が確保される。
As described above, a communication path from the transmitting processor to all the receiving processors is secured.

【0019】次にシフト通信を説明する。すべてのプロ
セッサで4131または4231の通信状態レジスタ
が、シフト通信状態となり、4132および4232の
ブロードキャスト/シフト通信状態信号は“H”レベル
となる。
Next, shift communication will be described. In all the processors, the communication status register of 4131 or 4231 becomes the shift communication status, and the broadcast / shift communication status signals of 4132 and 4232 become the “H” level.

【0020】414および424の各プロセッサへの入
出力制御入力が“H”レベルの時、4134のゲート制
御論理回路の出力は“H”レベル、4234のゲート制
御論理回路の出力は“L”レベルとなり、4121の内
部スリーステイトバッファはクローズ、4221の内部
スリーステイトバッファはオープン、413の外部スリ
ーステイトバッファのゲート制御信号出力は“L”レベ
ル、423の外部スリーステイトバッファのゲート制御
信号出力は“H”レベルとなる。よって、41のプロセ
ッサの入出力は出力状態、42のブロードキャストの入
出力は入力状態、41のプロセッサの前段のスリーステ
イトバッファはハイインピース状態、42のプロセッサ
の前段のスリーステイトバッファは転送状態となる。こ
れにより、リング上のすべての41のプロセッサから、
その後段の42のプロセッサへの通進路が同時に確保さ
れる。
When the input / output control input to each processor of 414 and 424 is at "H" level, the output of the gate control logic circuit of 4134 is "H" level, and the output of the gate control logic circuit of 4234 is "L" level. Then, the internal three-state buffer 4121 is closed, the internal three-state buffer 4221 is open, the gate control signal output of the external three-state buffer 413 is "L" level, and the gate control signal output of the external three-state buffer 423 is " H "level. Therefore, the input / output of the processor of 41 is in the output state, the input / output of the broadcast of 42 is in the input state, the three-state buffer in the preceding stage of the processor of 41 is in the high-in-piece state, and the three-state buffer in the stage of 42 processor is in the transfer state. Become. This will allow all 41 processors on the ring to
At the same time, a communication path to the processor at the subsequent stage 42 is secured.

【0021】414および424の各プロセッサへの入
出力制御入力が“L”レベルの時、4134のゲート制
御論理回路の出力は“L”レベル、4234のゲート制
御論理回路の出力はをH”レベルとなり、4121の内
部スリーステイトバッファはオープン、4221の内部
スリーステイトバッファはクローズ、413の外部スリ
ーステイトバッファのゲート制御信号出力は“H”レベ
ル、423の外部スリーステートバッファのゲート制御
信号出力は“L”レベルとなる。よって、41のプロセ
ッサの入出力は入力状態、42のプロセッサの入出力は
出力状態、41のプロセッサの前段のスリーステイトバ
ッファは転送状態、42のプロセッサの前段のスリース
テイトバッファはハイインピース状態となる。これによ
り、すべての42のプロセッサから、その後段の41の
プロセッサへの通信路が同時に確保される。
When the input / output control input to each processor of 414 and 424 is at "L" level, the output of the gate control logic circuit of 4134 is at "L" level, and the output of the gate control logic circuit of 4234 is at "H" level. Then, the internal three-state buffer 4121 is open, the internal three-state buffer 4221 is closed, the gate control signal output of the external three-state buffer 413 is "H" level, and the gate control signal output of the external three-state buffer 423 is " Therefore, the input / output of the processor 41 is in the input state, the input / output of the processor 42 is in the output state, the three-state buffer before the processor 41 is in the transfer state, and the three-state buffer before the processor 42 is Is in high in-peace state, so all 42 From the processor, the communication path to 41 processors in its subsequent stage is ensured at the same time.

【0022】以上により、プロセッサへの入出力制御の
H/Lサイクルごとに、シフト通信のための1サイクル
分の通信路が確保される。
As described above, one cycle communication path for shift communication is secured for each H / L cycle of input / output control to the processor.

【0023】以下に本発明によるマルチプロセッサシス
テムの応用例を示す。図3に本発明によるグラフックシ
ステムを示す。図3中、511,512,513,51
4は本発明によるマルチチップ対応グラフィックスプロ
セッサで図形描画機能を持つ。521,522,52
3,524はプロセッサ間通信用の入出力バスで、スリ
ーステイトバッファ531,532,533,534を
リング状に繋げたスリーステイトバッファ間のバス54
1,542,543,544にワイヤードオアされて接
続されている。551,552,553,554はスリ
ーステイトバッファのゲート制御信号出力である。56
1,562,563,564はフレームメモリでインタ
ーリーブバンク構成である。57はCPUバスで、各プ
ロセッサはこのバスを経由してホストシステムからのコ
マンドやデータを受けとる。581,582,583,
584はプロセッサへの入出力制御入力であり、シフト
通信の際の入出力が交互になるよう共通信号を一つ置き
に反転して入出力する。59はCRTである。
An application example of the multiprocessor system according to the present invention will be shown below. FIG. 3 shows a graphic system according to the present invention. In FIG. 3, 511, 512, 513, 51
A multi-chip compatible graphics processor 4 according to the present invention has a graphic drawing function. 521, 522, 52
Reference numeral 3,524 denotes an input / output bus for inter-processor communication, which is a bus 54 between three-state buffers in which three-state buffers 531,532,533,534 are connected in a ring shape.
1,542,543,544 are wired-ORed and connected. Reference numerals 551, 552, 553 and 554 are gate control signal outputs of the three-state buffer. 56
Reference numerals 1, 562, 563 and 564 denote frame memories having an interleave bank structure. 57 is a CPU bus, and each processor receives commands and data from the host system via this bus. 581, 582, 583
Reference numeral 584 denotes an input / output control input to the processor, which inverts every other common signal so that input / output during shift communication alternates and inputs / outputs. 59 is a CRT.

【0024】本システムでは、ホストシステムからの図
形描画コマンドを1つのグラフィックスプロセッサが受
けとり、前処理を行なう。前処理を行なったグラフィッ
クスプロセッサは、結果のパラメータを他のグラフィッ
クスプロセッサへ送り、各グラフィックスプロセッサは
自分の接続されているフレームメモリのバンクに対し書
き込みを行なう。以上により、各バンクに並列に描画が
行なわれる。
In this system, one graphics processor receives a graphic drawing command from the host system and performs preprocessing. The preprocessed graphics processor sends the resulting parameters to the other graphics processors, and each graphics processor writes to the bank of frame memory to which it is connected. As described above, drawing is performed in parallel in each bank.

【0025】本システムでは、前処理を行なうグラフィ
ックスプロセッサは、複数有り得る。そこで、前処理の
送信を調停する必要があるが、これは1つの論理的な送
信権のトークンを授受することによって実現できる。例
えば、幾つかのプロセッサが前処理を完了した場合、送
信権トークンを持っているプロセッサがパラメータの送
信を行ない、送信およびそれに起因する処理が終了した
後、送信権トークンを次のプロセッサに転送する。送信
権トークンを持っていないプロセッサは、送信権トーク
ンが回ってくるまで送信を保留する。送信権トークンを
持っているが、前処理を完了していないプロセッサは、
速みやかに次のプロセッサに転送信権トークンを転送す
る。転送信権トークンの転送は、通常システムをブロー
ドキャスト通信状態にしておき、送信権トークンを持っ
ているプロセッサがブロードキャスト通信の送信プロセ
ッサになるように規定して、アドレス指定のブロードキ
ャスト通信で行なうことで実現できる。
In this system, there can be a plurality of graphics processors for performing preprocessing. Therefore, it is necessary to arbitrate the transmission of the pre-processing, but this can be realized by exchanging one logical transmission right token. For example, when some processors have completed preprocessing, the processor having the transmission right token transmits the parameter, and after the transmission and the processing resulting therefrom are completed, the transmission right token is transferred to the next processor. .. A processor that does not have the transmission right token holds the transmission until the transmission right token comes around. A processor that has a transmittal token but has not completed preprocessing,
Transfer the transfer right token to the next processor promptly. Transfer of the transfer right token is realized by setting the system to be in the broadcast communication state, stipulating that the processor having the transmission right token becomes the transmitting processor of the broadcast communication, and performing the broadcast communication with address specification. it can.

【0026】ところで、前処理により算出されたパラメ
ータは、すべてのバンクのグラフィックスプロセッサで
共通なものと、バンクのズレに応じて補正が必要なもの
がある。例えば、直線描画の場合、水平/垂直方向の変
位の比率やグローシェーディングでピクセルごとの輝度
値の変化量などはすべてのバンクで共通な情報であり、
最初に描画するビクセル位置やそこでの輝度値の絶対値
などはバンクごとに異なってくる情報である。
By the way, some parameters calculated by the preprocessing are common to the graphics processors of all banks, and some parameters need to be corrected according to the deviation of the banks. For example, in the case of straight line drawing, the ratio of horizontal / vertical displacement and the amount of change in the brightness value for each pixel in glow shading are information common to all banks,
The position of the first Vixel to be drawn and the absolute value of the brightness value there are information that differs from bank to bank.

【0027】ただし、後者の場合、バンクの水平位置に
対する線形な差であるものが大半であるため、隣接する
バンクの滋養法に定数を加算することで算出することが
できる。たとえば、グローシェーディングでは、ピクセ
ル値Iは、 I=Is +(dI/dX)×(X−Xs ) のように表される。ただし、Is は開始ピクセルの輝度
値、dI/dXはピクセルごとの輝度値の変化量、Xは
ピクセルの水平位置、Xs は開始ピクセルの水平位置で
ある。乗算はDDAにより加算によって実現される。こ
れをバンクごとにDDAで処理できるようにするには、
各プロセッサに以下のパラメータとして与えれば良い。
However, in the latter case, since most of them are linear differences with respect to the horizontal position of the bank, it can be calculated by adding a constant to the nutrition method of the adjacent bank. For example, in glow shading, the pixel value I is expressed as I = Is + (dI / dX) * (X-Xs). Here, Is is the brightness value of the start pixel, dI / dX is the change amount of the brightness value for each pixel, X is the horizontal position of the pixel, and Xs is the horizontal position of the start pixel. The multiplication is realized by addition by the DDA. To enable this to be processed by DDA for each bank,
The following parameters may be given to each processor.

【0028】 I=(Is +(dI/dX)×バンクのずれ) +((dI/dX)×バンク数) ×(X−Xs )
/バンク数) “(dI/dX)×バンク数”は、すべてのプロセッサ
で共通な値であり、“(Is +(dI/dX)×バンク
のズレ)”はバンクのズレに応じて補正する値である。
ただし、後者は前段のプロセッサの値に“(dI/d
X)”を加えることで求められる。
I = (Is + (dI / dX) × shift of bank) + ((dI / dX) × number of banks) × (X−Xs)
/ Bank number) "(dI / dX) x bank number" is a value common to all processors, and "(Is + (dI / dX) x bank deviation)" is corrected according to the bank deviation. It is a value.
However, in the latter case, the value of the processor in the previous stage is "(dI / d
X) ”is added.

【0029】そこで、本システムでは、前物をブロード
キャスト通信で、後者をシフト通信で伝達することによ
って、グラフィックスプロセッサ間の通信を行なう。こ
の際、本発明によるマルチプロセッサシステムに準拠す
ることによって、両方の通信モードを効率良く実行可能
となる。
Therefore, in this system, communication between the graphics processors is performed by transmitting the former by broadcast communication and the latter by shift communication. At this time, by complying with the multiprocessor system according to the present invention, both communication modes can be efficiently executed.

【0030】[0030]

【発明の効果】本発明の実施例で示したグラフィックシ
ステムでのプロセッサ間通信速度を見積る。
The inter-processor communication speed in the graphic system shown in the embodiment of the present invention is estimated.

【0031】・ブロードキャスト通信 論理的には、送信プロセッサからその他のすべての受信
プロセッサに対し1サイクルで通信可能である。タイミ
ング的には、(プロセッサ数−1)段のスリーステイト
バッファを通過するため、このゲート遅延分時間が掛か
る。ゲート遅延には、そのスリーステイトバッファをド
ライブするバスの負荷が関係するが、本発明によるマル
チプロセッサシステムでは、各スリーステイトバッファ
のドライブするバスには1つのプロセッサの入出力と次
段のスリーステイトバッファしか接続されないため、プ
ロセッサの数によらずバスの負荷は一定である。したが
って、スリーステイトバッファ1つ当りのゲート遅延を
Td とすると、 T=To +Td ×(プロセッサ数−1)+Ts の時間を要する。ただし、Tは挿通信サイクル、To は
送信プロセッサの出力ディレイ、Ts は受信プロセッサ
の入力セットアップ時間である。実際、スリーステイト
バッファにTTLロジックなどを用いた場合、Td =2
0ns程度であるため、実施例にあるような4プロセッサ
のシステムでは80ns+αで通信が可能である。
Broadcast Communication Logically, it is possible to communicate from the transmitting processor to all other receiving processors in one cycle. In terms of timing, since it passes through the three-state buffer of (the number of processors-1), it takes time for this gate delay. Although the gate delay is related to the load of the bus that drives the three-state buffer, in the multiprocessor system according to the present invention, the bus driven by each three-state buffer has one processor input / output and the next-stage three-state buffer. Since only buffers are connected, the bus load is constant regardless of the number of processors. Therefore, assuming that the gate delay per one three-state buffer is Td, the time T = To + Td * (number of processors-1) + Ts is required. Where T is the insertion communication cycle, To is the output delay of the transmitting processor, and Ts is the input setup time of the receiving processor. Actually, when TTL logic or the like is used for the three-state buffer, Td = 2
Since it is about 0 ns, a 4-processor system as in the embodiment can communicate at 80 ns + α.

【0032】これに対し、本発明によらず、隣接するプ
ロセッサで入出力を直結させてリング状に接続すると、
論理的に(プロセッサ数−1)サイクルが必要となる。
タイミング的には、直結されたプロセッサ間の通信なの
で高速だが、プロセッサの基本サイクル分は必要で、こ
れをTc とすると、 T=Tc ×(プロセッサ数−1) の時間を要する。ただし、Tは総通信サイクルである。
33MHz で動作するプロセッサの基本サイクルは、3
0nsであるので、4プロセッサのシステムでは240ns
掛かることになる。また、この場合、通信用の入出力は
分離されているため、プロセッサをMPU化する場合ピ
ン数が多くなる。
On the other hand, according to the present invention, when the input and output are directly connected by the adjacent processors and connected in the ring shape,
Logically, (number of processors-1) cycles are required.
In terms of timing, it is high-speed because it is communication between processors directly connected, but a basic cycle of the processor is required, and when this is Tc, T = Tc * (number of processors-1) is required. However, T is a total communication cycle.
The basic cycle of a processor operating at 33 MHz is 3
0ns, so 240ns in a 4-processor system
It will hang. Further, in this case, since the input and output for communication are separated, the number of pins becomes large when the processor is made into an MPU.

【0033】・シフト通信 論理的には、すべてのプロセッサで送受信を行なうのに
2サイクルで可能である。タイミング的にも、1段のス
リーステイトバッファを通過するだけなので、高速であ
る。スリーステイトバッファ1つ当りのゲート遅延をT
d とすると、 T=(To +Td +Ts )×2 となる。ただし、Tは総通信サイクル、To は送信プロ
セッサの出力ディレイ、Ts は受信プロセッサの入力セ
ットアップ時間である。Td =20ns程度であれば、プ
ロセッサ数によらず40ns+αで通信が可能である。
Shift communication Logically, transmission / reception can be performed by all the processors in two cycles. Also in terms of timing, the speed is high because it only passes through the one-stage three-state buffer. The gate delay per three-state buffer is T
If d, then T = (To + Td + Ts) × 2. Where T is the total communication cycle, To is the output delay of the transmitting processor, and Ts is the input setup time of the receiving processor. If Td = about 20 ns, communication is possible at 40 ns + α regardless of the number of processors.

【0034】これに対し、本発明によらず、すべてのプ
ロセッサを1本のバスに接続させると、論理的に、プロ
セッサ数分のサイクルが必要となる。また、タイミング
的にも、プロセッサ数が増えるとバスの負荷が大きくな
り、プロセッサの基本サイクル内で終了させることが困
難になる。1サイクル当たりに必要な時間をTc とする
と、 T=Tc ×プロセッサ数 の時間を要する。ただし、Tは総通信サイクルである。
Tc はプロセッサ数に依存するため、Tはプロセッサ数
の二乗のオーダーとなり、Tc =30nsとして、4プロ
セッサのシステムであれば、120nsの時間が必要とな
る。
On the other hand, if all the processors are connected to one bus without using the present invention, logically, cycles corresponding to the number of processors are required. Also in terms of timing, as the number of processors increases, the load on the bus increases, making it difficult to complete the processing within the basic cycle of the processor. Assuming that the time required for one cycle is Tc, T = Tc × number of processors is required. However, T is a total communication cycle.
Since Tc depends on the number of processors, T is on the order of the square of the number of processors, and if Tc = 30 ns, a system of 4 processors requires 120 ns.

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

【図1】本発明を実施したマルチプロセッサシステム装
置を示す。
FIG. 1 shows a multiprocessor system apparatus embodying the present invention.

【図2】本発明によるシステムで用いられるプロセッサ
を示す。
FIG. 2 shows a processor used in the system according to the invention.

【図3】本発明によるマルチプロセッサシステムの応用
例を示す。
FIG. 3 shows an application example of a multiprocessor system according to the present invention.

【図4】従来のバス接続型マルチプロセッサシステムを
示す。
FIG. 4 shows a conventional bus-connected multiprocessor system.

【図5】従来のリング接続型マルチプロセッサシステム
を示す。
FIG. 5 shows a conventional ring-connected multiprocessor system.

【符号の説明】[Explanation of symbols]

111,112,113,114,115,116 プ
ロセッサ 121,122,123,124,125,126 プ
ロセッサの入出力 13 バス 211,212,213,214,215,216 プ
ロセッサ 221,222,223,224,225,226 プ
ロセッサの出力 311,312,313,314,315,316 プ
ロセッサ 321,322,323,324,325,326 プ
ロセッサの入出力 331,332,333,334,335,336 ス
リーステイトバッファ 341,342,343,344,345,346 ス
リーステイトバッファ間のバス 41,42 プロセッサ 411,421 プロセッサコア 412,421 プロセッサの入出力 4121,4221 内部スリーステイトバッファ 413,423 外部スリーステイトバッファのゲート
制御信号出力 4131,4231 通信状態レジスタ 4132,4232 ブロードキャスト/シフト通信状
態信号 4133,4233 ブロードキャスト通信送/受信状
態信号 4134,4234 ゲート制御論理回路 414,424 プロセッサへの入出力制御入力 511,512,513,514 本発明によるマルチ
チップ対応グラフィックスプロセッサ 521,522,523,524 プロセッサ間通信用
の入出力 531,532,533,534 スリーステイトバッ
ファ 541,542,543,544 スリーステイトバッ
ファ間のバス 551,552,553,554 スリーステイトバッ
ファのゲート制御信号出力 561,562,563,564 フレームメモリ 57 CPUバス 581,582,583,584 プロセッサへの入出
力制御入力 59 CRT
111,112,113,114,115,116 Processor 121,122,123,124,125,126 Processor input / output 13 Bus 211,212,213,214,215,216 Processor 221,222,223,224,225 , 226 Output of processor 311, 312, 313, 314, 315, 316 Processor 321, 322, 323, 324, 325, 326 Processor input / output 331, 332, 333, 334, 335, 336 Three-state buffer 341, 342 343, 344, 345, 346 Buses between three-state buffers 41,42 Processors 411,421 Processor cores 412,421 Processor inputs / outputs 4121,4221 Internal three-state buffers 413,423 Part Three-state buffer gate control signal output 4131, 4231 Communication status register 4132, 4232 Broadcast / shift communication status signal 4133, 4233 Broadcast communication send / receive status signal 4134, 4234 Gate control logic circuit 414, 424 Input / output control to processor Input 511, 512, 513, 514 Multi-chip compatible graphics processor according to the present invention 521, 522, 523, 524 Input / output for inter-processor communication 531, 532, 533, 534 Three-state buffer 541, 542, 543, 544 Three-state Bus between buffers 551,552,553,554 Gate control signal output of three-state buffer 561,562,563,564 Frame memory 57 CPU bus 58 , Input and output control input 59 CRT to 582,583,584 processor

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 偶数個のスリーステイトバッファと、こ
のスリーステイトバッファをリング状に接続する複数の
第1のバスと、隣接する各々のスリーステイトバッファ
間の前記バスにワイヤードオアで接続した複数の第2の
バスと、夫々前記第2のバスを介して前記第1のバスと
データの交換を行う複数のプロセッサと、ブロードキャ
スト通信又はシフト通信のいずれかに従って選択的に前
記プロセッサと前記スリーステイトバッファを制御して
前記データ交換を行うホストコンピュータとから成るこ
とを特徴とするマルチプロセッサシステム。
1. An even number of three-state buffers, a plurality of first buses connecting the three-state buffers in a ring shape, and a plurality of wired-OR connected to the buses between adjacent three-state buffers. A second bus, a plurality of processors each exchanging data with the first bus via the second bus, and the processor and the three-state buffer selectively according to either broadcast communication or shift communication A multiprocessor system comprising: a host computer for controlling the data exchange to exchange the data.
【請求項2】 前記ホストコンピュータは、前記プロセ
ッサの夫々に内蔵されたゲート制御機能を介して、前記
スリーステイトバッファを制御することを特徴とする請
求項1に記載のマルチプロセッサシステム。
2. The multiprocessor system according to claim 1, wherein the host computer controls the three-state buffer via a gate control function built in each of the processors.
JP4147629A 1992-06-08 1992-06-08 Multiprocessor system Pending JPH05342172A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4147629A JPH05342172A (en) 1992-06-08 1992-06-08 Multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4147629A JPH05342172A (en) 1992-06-08 1992-06-08 Multiprocessor system

Publications (1)

Publication Number Publication Date
JPH05342172A true JPH05342172A (en) 1993-12-24

Family

ID=15434654

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4147629A Pending JPH05342172A (en) 1992-06-08 1992-06-08 Multiprocessor system

Country Status (1)

Country Link
JP (1) JPH05342172A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4823608A (en) * 1987-03-20 1989-04-25 Fuji Jukogyo Kabushiki Kaisha Method of measuring residual stress in a carrier produced in manufacturing of a belt for continuously variable transmission
US4832671A (en) * 1987-02-18 1989-05-23 Fuji Jukogyo Kabushiki Kaisha Belt for a continuously variable transmission
JPH07282026A (en) * 1994-04-05 1995-10-27 Internatl Business Mach Corp <Ibm> System and method for multinode computer
JPH07306845A (en) * 1994-05-12 1995-11-21 Chubu Denki Kk Parallel processor for neural system learning device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4832671A (en) * 1987-02-18 1989-05-23 Fuji Jukogyo Kabushiki Kaisha Belt for a continuously variable transmission
US4823608A (en) * 1987-03-20 1989-04-25 Fuji Jukogyo Kabushiki Kaisha Method of measuring residual stress in a carrier produced in manufacturing of a belt for continuously variable transmission
JPH07282026A (en) * 1994-04-05 1995-10-27 Internatl Business Mach Corp <Ibm> System and method for multinode computer
JPH07306845A (en) * 1994-05-12 1995-11-21 Chubu Denki Kk Parallel processor for neural system learning device

Similar Documents

Publication Publication Date Title
US5581767A (en) Bus structure for multiprocessor system having separated processor section and control/memory section
US3959775A (en) Multiprocessing system implemented with microprocessors
US5062059A (en) Apparatus and method for communication between host CPU and remote terminal
US5119480A (en) Bus master interface circuit with transparent preemption of a data transfer operation
JPS62208158A (en) Multiprocessor system
JPH0630087B2 (en) Interface circuit
KR0133236B1 (en) Shared memory system and arbitration method and system
US6662256B1 (en) Sequential bus architecture
JPH05342172A (en) Multiprocessor system
JPH06214945A (en) Computer system and high-speed transfer method of information
JP4123660B2 (en) Programmable controller
EP1821217B1 (en) Asynchronous computer communication
CA1309503C (en) Selective receiver for each processor in a multiple processor system
JP2504535B2 (en) Bus unit configuration method
JPH09106385A (en) Data transfer control circuit
JP2000035939A (en) Intelligent type pc add-in board
JP2001034588A (en) Data processor
JPH05128279A (en) One-chip microcomputer
JPS63184153A (en) Synchronization control system
JPH03132841A (en) Data transfer system
JPS62134748A (en) Multiple data transferring method
JPS63271635A (en) High-speed arithmetic processor
JPH10289196A (en) Computer and transfer method for peripheral device control data in computer
JPH03196247A (en) Data processing system
JPS63163949A (en) Multi processor system