JPH0642232B2 - Parallel processor - Google Patents
Parallel processorInfo
- Publication number
- JPH0642232B2 JPH0642232B2 JP9065087A JP9065087A JPH0642232B2 JP H0642232 B2 JPH0642232 B2 JP H0642232B2 JP 9065087 A JP9065087 A JP 9065087A JP 9065087 A JP9065087 A JP 9065087A JP H0642232 B2 JPH0642232 B2 JP H0642232B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- data transfer
- processing unit
- processing
- transfer 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/163—Interprocessor communication
- G06F15/167—Interprocessor 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)
Description
【発明の詳細な説明】 (発明の属する技術分野) 本発明は、複数の処理ユニットを並列に接続して構成さ
れる並列処理装置において、各処理ユニットの処理デー
タを、共通の記憶領域や他の処理ユニットに高速で転送
するためのデータ転送方式に関するものである。Description: TECHNICAL FIELD The present invention relates to a parallel processing apparatus configured by connecting a plurality of processing units in parallel, and processing data of each processing unit is stored in a common storage area or another storage area. The present invention relates to a data transfer method for high-speed transfer to the processing unit.
(従来の技術) 近年の半導体技術の発達に伴い、マイクロコンピュータ
に代表される小型で処理能力の優れた演算装置が容易に
実現されるようになってきた。その一方で、多くの応
用、例えば、コンピュータ・グラフィックスなどの分野
では、処理すべき演算量がますます増大しており、コス
トパフォーマンスの優れた強力な処理装置が要求されつ
つある。(Prior Art) With the development of semiconductor technology in recent years, it has become easy to realize a small-sized arithmetic unit represented by a microcomputer and having excellent processing capability. On the other hand, in many applications, for example, in the field of computer graphics, the amount of calculations to be processed is increasing more and more, and a powerful processing device with excellent cost performance is being demanded.
最近、高性能なマイクロコンピュータや、高速数値演算
LSIからなる処理ユニットを単位とし、これを多数並
列に接続した構成をとる並列処理装置が多く開発されて
いる。Recently, many parallel processing devices have been developed which have a configuration in which a high-performance microcomputer and a processing unit composed of a high-speed numerical operation LSI are used as a unit and a large number of them are connected in parallel.
このような並列処理装置は、処理ユニットの処理能力が
小さくても、目的に応じて処理ユニットの数を増減する
ことにより、望みの処理能力をもつ処理装置を構成する
ことができるという利点がある。しかし、この種の並列
処理装置で処理を行う場合、各処理ユニットの処理に必
要なデータや処理結果をユニット間または共通の記憶領
域との間で、相互に転送することが必要になる。Such a parallel processing device has an advantage that even if the processing capacity of the processing unit is small, a processing device having a desired processing capacity can be configured by increasing or decreasing the number of processing units according to the purpose. . However, when processing is performed by this type of parallel processing device, it is necessary to transfer data necessary for processing of each processing unit and processing results to each other or to a common storage area.
従来より、複数の処理ユニット間の通信機能を実現する
ために幾つかの構成がとられてきた。Conventionally, some configurations have been adopted to realize a communication function between a plurality of processing units.
例えば、各処理ユニットに外部入出力端子を設け、これ
を介して他の処理ユニットと接続し、他の処理ユニット
に対して割り込み等によりデータの送受信を要求する方
法がある。しかし、この方法では、データを授受するに
際して、常に各処理ユニットの動作を必要とするため
に、オーバーヘッドが大きくなるという問題がある。For example, there is a method in which each processing unit is provided with an external input / output terminal, is connected to another processing unit via this terminal, and requests the other processing unit for data transmission / reception by an interrupt or the like. However, this method has a problem that the overhead becomes large because the operation of each processing unit is always required when data is transferred.
また、各処理ユニットの処理結果を共通の記憶領域に収
集するような場合には、各処理ユニットからの出力デー
タとこれを格納すべきアドレスとを、一旦バッファメモ
リに格納しておき、これらのバッファメモリの内容を順
次読み出して、共通の記憶領域の該当するアドレスにデ
ータを転送する機構が実現されている。しかし、この機
構では、データを転送すべき記憶領域のアクセス時間が
遅いと、当該記憶領域にデータを格納するのに時間がか
かってしまうという問題がある。これは、高速のデータ
転送が要求されるような装置、例えば、陰影画像を生成
してこれを画像メモリに転送・表示するような場合に、
大きな問題となっていた。When collecting the processing results of each processing unit in a common storage area, the output data from each processing unit and the address where it should be stored are temporarily stored in a buffer memory, and A mechanism for sequentially reading the contents of the buffer memory and transferring the data to the corresponding address in the common storage area has been realized. However, this mechanism has a problem that if the access time of the storage area to which the data is to be transferred is slow, it takes time to store the data in the storage area. This is for devices that require high-speed data transfer, such as when generating a shadow image and transferring / displaying it in an image memory.
It was a big problem.
(発明の目的) 本発明は、多数の処理ユニットを並列に接続して構成さ
れる並列処理装置において、各々の処理ユニット間のデ
ータ転送、もしくは各処理ユニットから画像メモリ等の
共通のデータ記憶領域へのデータ転送を行う際に、上記
各処理ユニットをそれぞれバッファメモリを持つインタ
フェースを介して高速データ転送が可能なデータバスで
結合し、当該データバスを介して各処理ユニットからデ
ータ転送を行った場合に、当該データ転送終了後に次に
データ転送を許可する処理ユニット番号をも同時に転送
するようにし、各処理ユニットにおいては転送すべきデ
ータを上記バッファメモリに一時記憶すると共に、上記
データバス上の処理ユニット番号を常に監視して、これ
が自分のユニット番号に等しければ、現データ転送シー
ケンスが終了した後に上記バッファメモリに記憶したデ
ータを纏めて転送するようにしたもので、その目的は、
多数の処理ユニットのデータ転送を競合を生ずることな
く他の処理ユニットにまたは共通記憶領域に高速で転送
する機能を実現することにある。(Object of the Invention) In a parallel processing device configured by connecting a large number of processing units in parallel, data transfer between the processing units or a common data storage area such as an image memory from each processing unit. When performing data transfer to and from the processing units, the processing units were coupled by a data bus capable of high-speed data transfer via an interface having a buffer memory, and data was transferred from each processing unit via the data bus. In this case, after the end of the data transfer, the processing unit number that permits the next data transfer is also transferred at the same time. In each processing unit, the data to be transferred is temporarily stored in the buffer memory, and the data on the data bus is transferred. Always monitor the processing unit number and if it is equal to your unit number, the current data transfer sequence. The data stored in the buffer memory is collectively transferred after the end of the connection.
It is to realize a function of transferring data of a large number of processing units to another processing unit or a common storage area at high speed without causing contention.
(発明の構成及び作用) 第1図は、複数の処理ユニットを並列に接続して構成さ
れる並列処理装置の一例であり、本発明による高速デー
タ転送バスを有する装置の構成例である。(Structure and Operation of the Invention) FIG. 1 is an example of a parallel processing device configured by connecting a plurality of processing units in parallel, and is a structural example of a device having a high-speed data transfer bus according to the present invention.
この種の装置構成自体は、処理能力の限られたプロセッ
サを用いて膨大な演算を高速に行う機能を実現する構成
法として大略既知であって、例えば、コンピュータグラ
フィックスにおける3次元陰影画像生成用処理装置等に
も同様な構成がとられている。This type of device configuration itself is generally known as a configuration method for realizing a function of performing a huge amount of calculation at high speed by using a processor with a limited processing capability, and for example, for generating a three-dimensional shadow image in computer graphics. The processing device and the like have the same configuration.
第1図において、MPは装置全体を制御する主制御部、
PU#1,PU#2,…,PU#Nはそれぞれ独立に処理を実
行する処理ユニット、CMは処理データを共通に格納す
るための共通メモリであって、例えば、処理画像を記憶
し、これを表示するための画像メモリ等である。In FIG. 1, MP is a main control unit that controls the entire apparatus,
PU # 1, PU # 2, ..., PU # N are processing units that execute processing independently, and CM is a common memory for commonly storing processing data. For example, processing images are stored in the CM. Is an image memory or the like for displaying.
また、HBは各処理ユニットや共通メモリCMの間でデ
ータ転送を行うための高速データ転送バス、IFP#1,
IFP#2,…,IFP#Nはそれぞれ処理ユニットPU#
1,PU#2,…,PU#Nと上記高速データ転送バスHB
の間のインタフェース部であって、転送すべき処理デー
タを一時記憶するためのバッファメモリを持つ。The HB is a high-speed data transfer bus for transferring data between each processing unit and the common memory CM, IFP # 1,
IFP # 2, ..., IFP # N are processing units PU #
1, PU # 2, ..., PU # N and the high-speed data transfer bus HB
And an interface unit having a buffer memory for temporarily storing processing data to be transferred.
同様に、IFMは共通メモリと上記高速データ転送バス
HBの間のインタフェース部である。Similarly, the IFM is an interface unit between the common memory and the high speed data transfer bus HB.
このように構成された装置を動作するには、例えば、最
初に主制御部MPから各処理ユニットに対して処理に必
要なプログラムとデータをロードする。To operate the apparatus configured as described above, for example, first, the main control unit MP loads a program and data required for processing to each processing unit.
次いで、各処理ユニットではロードされたプログラムと
データに基づいてそれぞれ独立に処理を実行し、処理さ
れたデータを他の処理ユニットまたは共通メモリに転送
する必要があれば、転送すべきデータをインタフェース
部IFPおよび高速データ転送バスを介して、他の処理
ユニットまたは共通メモリに転送する。この際、高速デ
ータ転送バスは、多数の処理ユニットからのデータ転送
要求を競合を生ずることなく実行する。Next, in each processing unit, processing is executed independently based on the loaded program and data, and if it is necessary to transfer the processed data to another processing unit or common memory, the data to be transferred is transferred to the interface unit. Transfer to other processing units or common memory via the IFP and high speed data transfer bus. At this time, the high-speed data transfer bus executes data transfer requests from a large number of processing units without causing contention.
第2図は、第1図の高速データ転送バス上を各処理ユニ
ットから共通メモリ(例えば、画像メモリ)、にデータ
を転送する際のデータ転送形式の一例を示す図であっ
て、共通メモリへの書き込みアドレスやデータをパケッ
ト形式で転送する場合の例である。FIG. 2 is a diagram showing an example of a data transfer format when data is transferred from each processing unit to a common memory (for example, an image memory) on the high-speed data transfer bus shown in FIG. This is an example of the case where the write address and the data are transferred in a packet format.
図に示すようなパケット形式による転送は、高速データ
転送バスを実現するに必要な信号線数を削減することが
できるという利点がある。The transfer in the packet format as shown in the figure has an advantage that the number of signal lines required to realize a high speed data transfer bus can be reduced.
第2図において、メモリアドレスAはデータを書き込む
べき共通メモリのアドレスデータを、転送データ数Nは
当該データシーケンスで転送するデータの総数を、バス
マスタ番号PNは当該データシーケンスの終了後にデー
タ転送を許可する処理ユニット番号を、データ1,デー
タ2,…,データN(D1,D2,…,DN)は共通メ
モリに書き込むべきデータをそれぞれ示す。In FIG. 2, the memory address A is the address data of the common memory in which the data should be written, the transfer data number N is the total number of data to be transferred in the data sequence, and the bus master number PN is the data transfer after the end of the data sequence. Data 1, data 2, ..., Data N (D1, D2, ..., DN) indicate data to be written in the common memory.
図のように、1つのアドレスデータに続いて複数のデー
タが共通メモリに転送されると、当該複数のデータを連
続したアドレスに格納するデータとみなして、上記共通
メモリに格納するものとする。As shown in the figure, when a plurality of data are transferred to a common memory following one address data, the plurality of data are regarded as data to be stored at consecutive addresses and are stored in the common memory.
また、表は、第1図における高速データ転送バスの実際
の信号線の種別の一例を示したものであり、第3図およ
び第4図は、同じく高速データ転送バス上の信号の状態
を示す例である。 Further, the table shows an example of the types of actual signal lines of the high speed data transfer bus in FIG. 1, and FIGS. 3 and 4 also show the states of signals on the high speed data transfer bus. Here is an example.
表に示す如く、高速データ転送を表現するために、バス
全体は基本クロックに同期して動作する同期バスとす
る。また、処理ユニットから共通メモリに制御信号を転
送する6本の制御ラインは、第2図のデータパケット内
のデータ種別を識別するためのものであり、インタフェ
ース回路の実現を容易にするためのものである。As shown in the table, in order to express high-speed data transfer, the entire bus is a synchronous bus that operates in synchronization with the basic clock. Further, the six control lines for transferring the control signal from the processing unit to the common memory are for identifying the data type in the data packet of FIG. 2 and for facilitating the implementation of the interface circuit. Is.
第3図は、高速データ転送バスの基本動作を示す例であ
って、データ転送と制御信号の状態(負論理で示す)を
示している。FIG. 3 is an example showing the basic operation of the high-speed data transfer bus and shows the states of data transfer and control signals (indicated by negative logic).
データ転送シーケンスにおいて、ある処理ユニットがバ
スマスタ番号PNで指定されたとき、第1図における処
理ユニットと高速データバスとのインタフェース部IF
Pは、以下のシーケンスでデータを共通メモリに転送す
る。In the data transfer sequence, when a processing unit is designated by the bus master number PN, the interface unit IF between the processing unit and the high speed data bus in FIG.
P transfers data to the common memory in the following sequence.
1)基本クロックに同期してデータクロックの出力を開
始すると共に、転送フラグをアクティブ(負)にする。1) The output of the data clock is started in synchronization with the basic clock, and the transfer flag is activated (negative).
2)第1、第2のデータクロックに合わせて、アドレス
データAをデータラインに出力すると同時に、アドレス
有効をアクティブにする。2) The address data A is output to the data line in synchronization with the first and second data clocks, and at the same time, the address validity is activated.
3)次のデータクロックに合わせて、転送すべきデータ
数Nをデータラインに出力すると共に、データ数有効を
アクティブにする。3) In synchronization with the next data clock, the number N of data to be transferred is output to the data line and the data number valid is activated.
4)次のデータクロックに合わせて、予め決められた処
理ユニット番号をバスマスタ番号PNとしてデータライ
ンに出力する。同時に、バスマスタ有効をアクティブに
する。4) The predetermined processing unit number is output to the data line as the bus master number PN in synchronization with the next data clock. At the same time, the bus master valid is activated.
5)以後のデータクロックに合わせて、データ数N分の
データD1,D2,…,DNをデータラインに出力す
る。また、最初のデータ送出から最終データ送出までの
間、データ有効ラインをアクティブにする。5) The data D1, D2, ..., DN for the number of data N is output to the data line in synchronization with the subsequent data clock. Also, the data valid line is activated from the first data transmission to the last data transmission.
以上述べたようなシーケンスによって、各処理ユニット
から共通メモリにデータを転送すると共に、第1図にお
ける共通メモリ側の高速データ転送バスとのインタフェ
ースIFMにおいて、上記シーケンス中のアドレスデー
タAに該当するメモリアドレスから順次データD1,D
2,…,DNを共通メモリ内に格納して行く。According to the sequence as described above, data is transferred from each processing unit to the common memory, and at the interface IFM with the high-speed data transfer bus on the common memory side in FIG. 1, the memory corresponding to the address data A in the above sequence. Data sequentially from address D1, D
2, ..., DN are stored in the common memory.
上述の如く、第2図におけるデータ転送シーケンス中の
バスマスタ番号PNによって、当該データ転送シーケン
スが終了した後にデータ転送を許可する処理ユニットを
指定することにより、多数のプロセッサユニットが同一
のデータ転送バスを使用する際のアクセス競合を調停す
ることができる。As described above, the bus master number PN in the data transfer sequence in FIG. 2 designates the processing unit that permits the data transfer after the data transfer sequence is completed, so that a large number of processor units share the same data transfer bus. It is possible to arbitrate access contention when using.
第4図は、複数の処理ユニットによるデータ転送の例を
示したものであり、アクセス競合の調停は次のように行
われる。FIG. 4 shows an example of data transfer by a plurality of processing units, and arbitration of access competition is performed as follows.
1)各処理ユニットは、それぞれの識別子としての独自
の処理ユニット番号を持つ。1) Each processing unit has its own processing unit number as an identifier.
2)各処理ユニットから高速データ転送バスに対するア
クセスは、次の手法により行う。2) Access from each processing unit to the high-speed data transfer bus is performed by the following method.
a)アクセス権を持つユニット(高速データ転送バスに
データ転送を許可されている処理ユニット)は、データ
転送シーケンスにおいて、次にアクセス権を与える処理
ユニットの番号をバスマスタ番号PNとして出力する。a) A unit having an access right (a processing unit permitted to transfer data to the high-speed data transfer bus) outputs the number of the processing unit to which the access right is given next as the bus master number PN in the data transfer sequence.
b)各処理ユニットは、データライン上のバスマスタ番
号PNと自分のユニット番号を比較して、これが一致し
たときのみ、現在のデータ転送シーケンス終了後にバス
アクセスを開始する。これが一致しない場合には、何も
しない。b) Each processing unit compares the bus master number PN on the data line with its own unit number, and only when they match, starts bus access after the end of the current data transfer sequence. If this does not match, do nothing.
c)アクセス権が与えられたユニットが転送すべきデー
タを持っていない場合には、第4図に示すように、デー
タ数Nが0のシーケンスにより、次のユニットにアクセ
ス権を引き渡す。c) When the unit to which the access right is given does not have the data to be transferred, the access right is handed over to the next unit in the sequence in which the data number N is 0 as shown in FIG.
以上、第1図に示した並列処理装置における高速データ
転送バスの構成および基本的な動作について説明した。
このような高速データ転送バスの動作は、第1図におけ
る当該バスと各処理ユニットPU#1,…,PU#Nとのイ
ンタフェース部IFP#1,…,IFP#N、および共通メ
モリMCとのインタフェース部IFMによって実現され
る。The configuration and basic operation of the high-speed data transfer bus in the parallel processing device shown in FIG. 1 have been described above.
The operation of such a high-speed data transfer bus is performed by the interface section IFP # 1, ..., IFP # N between the bus and each processing unit PU # 1, ..., PU # N in FIG. 1 and the common memory MC. It is realized by the interface unit IFM.
第5図は、高速データ転送バスと処理ユニットとのイン
タフェース部IFPの概略構成図であって、処理ユニッ
トを構成している処理プロセッサのデータバス(プロセ
ッサバス)から出力されるデータを、上述の動作をする
高速データ転送バスに転送するようにしたものである。FIG. 5 is a schematic configuration diagram of the interface unit IFP between the high-speed data transfer bus and the processing unit, wherein the data output from the data bus (processor bus) of the processing processor constituting the processing unit is described above. The data is transferred to an operating high-speed data transfer bus.
図中、1はプロセッサバス、2はプロセッサバスインタ
フェース、3は第1のデータバッファ、 4は第2のデータバッファ、5はデータカウンタ、6は
バスマスタ番号レジスタ、7はデータマルチプレクサ、
8は高速データ転送バス制御回路、 9はユニット番号レジスタ、10はアクセス権検出回路、
HBは高速データ転送バスを示す。In the figure, 1 is a processor bus, 2 is a processor bus interface, 3 is a first data buffer, 4 is a second data buffer, 5 is a data counter, 6 is a bus master number register, 7 is a data multiplexer,
8 is a high-speed data transfer bus control circuit, 9 is a unit number register, 10 is an access right detection circuit,
HB indicates a high speed data transfer bus.
第5図により、インタフェース部IFPの動作の概略を
説明する。An outline of the operation of the interface unit IFP will be described with reference to FIG.
処理ユニットから共通メモリのアドレスとデータがプロ
セッサバスインタフェース2を介して、第1のデータバ
ッファ3または第2のデータバッファ4に格納され、同
時にデータカウンタ5にて格納されたデータがカウント
される。The address and data of the common memory are stored in the first data buffer 3 or the second data buffer 4 from the processing unit via the processor bus interface 2, and at the same time, the data stored in the data counter 5 is counted.
また、アクセス権検出回路10にて常に高速データ転送バ
スHB上の転送データシーケンス中のバスマスタ番号
と、予め設定されたユニット番号レジスタ9の内容を比
較して、これらが一致すれば、高速データ転送バス制御
回路8の動作を許可し、当該バス制御回路はデータバッ
ファ、データカウンタ5、バスマスタ番号レジスタ6の
内容を第2図および第3図で説明した手順に従って、高
速データ転送バスHBに出力する動作を行う。In addition, the access right detection circuit 10 always compares the bus master number in the transfer data sequence on the high-speed data transfer bus HB with the contents of the preset unit number register 9, and if they match, the high-speed data transfer is performed. The operation of the bus control circuit 8 is permitted, and the bus control circuit outputs the contents of the data buffer, the data counter 5, and the bus master number register 6 to the high-speed data transfer bus HB according to the procedure described in FIGS. 2 and 3. Take action.
第6図は、高速データ転送バスと共通メモリとのインタ
フェース部IFMの概略構成図である。FIG. 6 is a schematic configuration diagram of an interface unit IFM between the high speed data transfer bus and the common memory.
図において、高速データ転送バスHB上の転送データお
よび各種制御信号は、高速データ転送バス受信回路11に
よって解読され、転送データとメモリアドレスをそれぞ
れ出力する。In the figure, the transfer data and various control signals on the high-speed data transfer bus HB are decoded by the high-speed data transfer bus receiving circuit 11, and the transfer data and the memory address are output respectively.
メモリアドレスはアドレスレジスタ12に格納された後、
アドレスデコーダ13によって共通メモリCM15の物理ア
ドレスに変換され、書き込み制御回路14により該当する
アドレスのメモリセルを書き込み可能にする。After the memory address is stored in the address register 12,
The address decoder 13 converts the physical address of the common memory CM15, and the write control circuit 14 makes the memory cell of the corresponding address writable.
一方、転送されたデータは順次シリアル−パラレル変換
回路16に送られ、時系列のデータを集めてメモリに並列
に転送する。なお、17は基本クロック発生回路である。On the other hand, the transferred data are sequentially sent to the serial-parallel conversion circuit 16, and time-series data are collected and transferred in parallel to the memory. Reference numeral 17 is a basic clock generation circuit.
これは、通常のアクセス速度で動作する半導体メモリ素
子で構成されるメモリに、高速でデータを書き込むため
であり、例えば、32個のデータを並列かつ同時に書き込
むことにより、書き込み速度を上記メモリ素子のアクセ
ス速度の32倍にすることができる。This is for writing data at high speed in a memory composed of semiconductor memory devices that operate at a normal access speed. For example, by writing 32 pieces of data in parallel at the same time, the write speed of the memory device can be increased. It can be 32 times faster than the access speed.
従って、高速データ転送バスのデータ転送速度を上げる
ことができ、画像メモリに動画像の如き大量の画像デー
タを高速で転送することも可能となる。ただし、第2図
のデータ転送シーケンスで、一度に転送するデータ数が
上記メモリへの並列同時書き込み数の整数倍となるよ
う、各処理ユニットのインタフェース部IFPで制御す
る必要がある。Therefore, the data transfer speed of the high-speed data transfer bus can be increased, and a large amount of image data such as a moving image can be transferred to the image memory at high speed. However, in the data transfer sequence of FIG. 2, it is necessary to control the interface unit IFP of each processing unit so that the number of data transferred at one time becomes an integral multiple of the number of parallel simultaneous writes to the memory.
以上は、第1図の並列処理装置において、処理ユニット
から共通メモリに処理データを高速で転送する場合の高
速データ転送バスの構成と動作の実施例に関する説明で
あった。The above is the description of the embodiment of the configuration and operation of the high-speed data transfer bus when the processing data is transferred from the processing unit to the common memory at high speed in the parallel processing device of FIG.
一方、各処理ユニットから他の処理ユニットに対してデ
ータを転送するには、例えば、第2図のメモリアドレス
の代わりに、転送先処理ユニットの番号を転送するよう
にしたデータ転送形式により行えばよい。On the other hand, in order to transfer data from each processing unit to another processing unit, for example, a data transfer format in which the number of the transfer destination processing unit is transferred instead of the memory address in FIG. 2 is used. Good.
第7図は各処理ユニット間でデータ転送を行うための高
速データ転送バスと処理ユニットとのインタフェース回
路の概略構成例である。FIG. 7 is a schematic configuration example of an interface circuit between a high-speed data transfer bus and a processing unit for transferring data between the processing units.
処理ユニットと高速データ転送バスHBとのインタフェ
ース部IFPに、上記転送先処理ユニットと当該処理ユ
ニットとの一致を検出する転送先検出回路18と、データ
受信用の受信用バッファメモリ19、第6図の高速データ
転送バス受信回路11およびシリアル−パラレル変換回路
16を設け、当該処理ユニットに対して転送されるデータ
を上記データ受信メモリに格納するようにすれば、処理
ユニット間のデータ転送をも高速で行うことができる。In the interface unit IFP between the processing unit and the high-speed data transfer bus HB, a transfer destination detection circuit 18 for detecting a match between the transfer destination processing unit and the processing unit, a receiving buffer memory 19 for receiving data, FIG. High-speed data transfer bus receiver circuit 11 and serial-parallel converter circuit
By providing 16 and storing the data transferred to the processing unit in the data receiving memory, the data transfer between the processing units can be performed at high speed.
以上説明したような動作をする高速データ転送バスと、
処理ユニットや共通メモリとのインタフェース部を設け
ることにより、アクセス競合を生ずることなく、高速に
各処理ユニットから処理データを画像メモリなどの共通
メモリに転送したり、処理ユニット相互でデータを転送
することができる。A high-speed data transfer bus that operates as described above,
By providing an interface with the processing unit and the common memory, it is possible to transfer processing data from each processing unit to a common memory such as image memory at high speed and to transfer data between processing units without causing access conflict. You can
勿論、各処理ユニットからデータを転送する相手は、共
通メモリや他の処理ユニットに限られたものではなく、
外部の出力装置や他の処理装置であってもよいし、ある
いはこれらの複数組を転送先にすることもできることは
明らかである。Of course, the parties to which data is transferred from each processing unit are not limited to the common memory and other processing units,
Obviously, it may be an external output device or another processing device, or a plurality of sets of these may be the transfer destination.
また、上記の実施例で説明した高速データ転送バスのデ
ータ転送形式や信号形式以外にも、同様な効果を得るよ
うな種々のデータ転送形式、信号形式をとることができ
よう。Further, in addition to the data transfer format and signal format of the high speed data transfer bus described in the above embodiment, various data transfer formats and signal formats capable of obtaining the same effect may be adopted.
(発明の効果) 以上説明したように、本発明によれば、多数の処理ユニ
ットを並列に接続して構成される並列処理装置におい
て、各処理ユニットの演算結果等のデータを、アクセス
競合を生ずることなく、高速で他の処理ユニットや画像
メモリ等の共通メモリ、あるいはまた、他の処理装置な
どに転送することができる。(Effects of the Invention) As described above, according to the present invention, in a parallel processing device configured by connecting a large number of processing units in parallel, data such as a calculation result of each processing unit causes access competition. Without this, the data can be transferred at high speed to another processing unit, a common memory such as an image memory, or another processing device.
従って、例えば、3次元物体形状データをもとに3次元
的な陰影画像を生成する並列処理装置において、それぞ
れの処理ユニットで上記画像を分担して生成し、生成し
た画像データを本発明による高速データ転送バスによ
り、ディスプレイへの画像表示機能をもつ画像メモリに
転送することにより、高速に画像を生成,表示する機能
を実現することができる。Therefore, for example, in a parallel processing device that generates a three-dimensional shadow image based on three-dimensional object shape data, each processing unit shares and generates the above-described image, and the generated image data is generated at high speed according to the present invention. By transferring the image to the image memory having the function of displaying the image on the display by the data transfer bus, the function of generating and displaying the image at high speed can be realized.
即ち、画像データの画像メモリへの転送が、多数の処理
ユニットにおける画像生成処理を妨害することなく行え
るために、装置全体としての処理能力の優れた陰影画像
生成装置とすることができる。That is, since the transfer of the image data to the image memory can be performed without interfering with the image generation processing in a large number of processing units, it is possible to provide a shadow image generation apparatus having excellent processing capability as the entire apparatus.
この場合、より多数の処理ユニットを使用したり、より
高性能の素子を使用して処理ユニットの処理能力を向上
させれば、動画像の実時間生成とその表示も可能となろ
う。In this case, if a larger number of processing units are used or the processing capability of the processing units is improved by using higher performance elements, real-time generation and display of moving images will be possible.
また、本発明ではデータをパケット形式でデータメモリ
に転送し、当該データパケットをパラレルデータに変換
して並列にデータメモリに書き込む方式をとっているた
めに、一般的な高速の半導体メモリ素子を使用して構成
したデータメモリを用いても、高速にデータ転送が行え
るという利点もある。Further, since the present invention adopts a method of transferring data to the data memory in a packet format, converting the data packet into parallel data, and writing in parallel to the data memory, a general high-speed semiconductor memory device is used. Even if the data memory configured as described above is used, there is also an advantage that data can be transferred at high speed.
第1図は高速データ転送バスを有する並列処理装置の構
成図、 第2図は第1図の高速データ転送バス上のデータ転送形
式の一例を示す図、 第3図は高速データ転送バスの基本動作例を示す説明
図、 第4図は同じく高速データ転送バスにおける複数の処理
ユニットによるデータ転送動作の例、 第5図は高速データ転送バスと各処理ユニットとのイン
タフェース回路の概略構成例、 第6図は同様に高速データ転送バスと共通メモリとのイ
ンタフェース回路の概略構成例、 第7図は各処理ユニット間でデータ転送を行うための高
速データ転送バスと処理ユニットとのインタフェース回
路の概略構成例である。 PU……主制御部、 PU#1〜PU#N……処理ユニット、 IFP#1〜IPF#N……インタフェース部、 IFM……インタフェース部、 HB……高速データ転送バス、 CM……共通メモリ、 1……プロセッサバス、 2……プロセッサバスインタフェース、 3……第1のデータバッファ、 4……第2のデータバッファ、 5……データカウンタ、 6……バスマスタ番号レジスタ、 7……データマルチプレクサ、 8……高速データ転送バス制御回路、 9……ユニット番号レジスタ、 10……アクセス権検出回路、 11……高速データ転送バス受信回路、 12……アドレスレジスタ、 13……アドレスデコーダ、 14……書き込み制御回路、 15……共通メモリ(CM)、 16……シリアル−パラレル変換回路、 17……基本クロック発生回路、 18……転送先検出回路、 19……受信用バッファメモリ。FIG. 1 is a block diagram of a parallel processing device having a high-speed data transfer bus, FIG. 2 is a diagram showing an example of a data transfer format on the high-speed data transfer bus of FIG. 1, and FIG. FIG. 4 is an explanatory diagram showing an operation example, FIG. 4 is an example of a data transfer operation by a plurality of processing units in the high speed data transfer bus, and FIG. 5 is a schematic configuration example of an interface circuit between the high speed data transfer bus and each processing unit. Similarly, FIG. 6 is a schematic configuration example of an interface circuit between the high-speed data transfer bus and the common memory, and FIG. 7 is a schematic configuration of an interface circuit between the high-speed data transfer bus and the processing unit for performing data transfer between the processing units. Here is an example. PU: main control unit, PU # 1 to PU # N ... processing unit, IFP # 1 to IPF # N ... interface unit, IFM ... interface unit, HB ... high-speed data transfer bus, CM ... common memory , 1 ... Processor bus, 2 ... Processor bus interface, 3 ... First data buffer, 4 ... Second data buffer, 5 ... Data counter, 6 ... Bus master number register, 7 ... Data multiplexer , 8 ... High-speed data transfer bus control circuit, 9 ... Unit number register, 10 ... Access right detection circuit, 11 ... High-speed data transfer bus receiving circuit, 12 ... Address register, 13 ... Address decoder, 14 ... … Write control circuit, 15 …… Common memory (CM), 16 …… Serial-parallel conversion circuit, 17 …… Basic clock generation circuit, 18 …… Transfer destination detection times Road, 19 ... Receive buffer memory.
Claims (2)
処理ユニットと、データ転送バスと、前記処理ユニット
毎にデータ転送バスに接続するインタフェース部を含む
並列処理装置であって、 前記インタフェース部は、前記データ転送バスへデータ
を送出するデータ転送バス制御回路と、前記データ転送
バス上のデータを監視し、次にアクセス権を与えられる
処理ユニットの番号と自処理ユニット番号が一致すれば
前記データ転送バス制御回路の動作を許可するアクセス
権検出回路と、前記データ転送バス上の自処理ユニット
あてのデータを検出する転送先検出回路を含むことを特
徴とする並列処理装置。1. A parallel processing apparatus comprising: two or more sets of processing units each independently performing a processing; a data transfer bus; and an interface unit connected to the data transfer bus for each processing unit. Is a data transfer bus control circuit for sending data to the data transfer bus, and monitors the data on the data transfer bus. If the number of the processing unit to which the access right is given next matches the self processing unit number, A parallel processing device comprising: an access right detection circuit that permits the operation of a data transfer bus control circuit; and a transfer destination detection circuit that detects data destined for its own processing unit on the data transfer bus.
処理ユニットと、処理結果のデータを格納するための共
通メモリと、データ転送バスと、前記処理ユニット毎に
データ転送バスに接続する第一のインタフェース部と、
前記共通メモリをデータ転送バスに接続する第二のイン
タフェース部を含む並列処理装置であって、 前記第一のインタフェース部は、前記データ転送バスへ
データを送出するデータ転送バス制御回路と、データ転
送バス上のデータを監視し、次にアクセス権を与えられ
る処理ユニットの番号と自処理ユニット番号が一致すれ
ば前記データ転送バス制御回路の動作を許可するアクセ
ス権検出回路を含むことを特徴とする並列処理装置。2. Two or more sets of processing units for independently executing processing, a common memory for storing data of processing results, a data transfer bus, and each processing unit connected to the data transfer bus. One interface part,
A parallel processing device including a second interface unit that connects the common memory to a data transfer bus, wherein the first interface unit includes a data transfer bus control circuit that sends data to the data transfer bus, and a data transfer unit. An access right detection circuit for monitoring the data on the bus and permitting the operation of the data transfer bus control circuit when the number of the processing unit to which the access right is given next and the self processing unit number match are included. Parallel processing unit.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9065087A JPH0642232B2 (en) | 1987-04-15 | 1987-04-15 | Parallel processor |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9065087A JPH0642232B2 (en) | 1987-04-15 | 1987-04-15 | Parallel processor |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS63257048A JPS63257048A (en) | 1988-10-24 |
| JPH0642232B2 true JPH0642232B2 (en) | 1994-06-01 |
Family
ID=14004390
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP9065087A Expired - Lifetime JPH0642232B2 (en) | 1987-04-15 | 1987-04-15 | Parallel processor |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0642232B2 (en) |
-
1987
- 1987-04-15 JP JP9065087A patent/JPH0642232B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPS63257048A (en) | 1988-10-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH09325947A5 (en) | ||
| CN111382855B (en) | Data processing device, method, chip and electronic equipment | |
| CN112231261A (en) | ID number compression device for AXI bus | |
| CN115328832B (en) | Data scheduling system and method based on PCIE DMA | |
| JPH0520284A (en) | Parallel processor system | |
| JPH0642232B2 (en) | Parallel processor | |
| CN114661345B (en) | Accelerated computing devices, methods, integrated circuit chips, computing devices and boards | |
| JP2781550B2 (en) | Parallel processing computer | |
| JPS6027976A (en) | First-in first-out memory device | |
| JPS6240565A (en) | Memory control system | |
| JPS6217879Y2 (en) | ||
| JP2713204B2 (en) | Information processing system | |
| JPS6130300B2 (en) | ||
| JPS61153770A (en) | Image processor | |
| JPH07319823A (en) | Inter-processor communication method | |
| JP2000285087A (en) | Method for data communication between nodes | |
| CN120476362A (en) | A cross-clock domain data processing circuit, method, chip and device | |
| JPH04225458A (en) | Computer | |
| RU2002104633A (en) | DEVICE FOR DATA COLLECTION AND PROCESSING | |
| JP2856709B2 (en) | Bus coupling system | |
| JPS5834519Y2 (en) | Signal exchange device | |
| JPS62297961A (en) | Access system for common memory | |
| JP2001022710A (en) | System with multiple bus controllers | |
| JPS63146148A (en) | Bus system | |
| JPS6037933B2 (en) | Computer memory access method |