JPH06187311A - Multiprocessor system and inter-processor communication method - Google Patents

Multiprocessor system and inter-processor communication method

Info

Publication number
JPH06187311A
JPH06187311A JP21720593A JP21720593A JPH06187311A JP H06187311 A JPH06187311 A JP H06187311A JP 21720593 A JP21720593 A JP 21720593A JP 21720593 A JP21720593 A JP 21720593A JP H06187311 A JPH06187311 A JP H06187311A
Authority
JP
Japan
Prior art keywords
processor
data
cell
data block
bit
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
JP21720593A
Other languages
Japanese (ja)
Inventor
Yasuhiro Takahashi
泰弘 高橋
Toru Hoshi
徹 星
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP21720593A priority Critical patent/JPH06187311A/en
Publication of JPH06187311A publication Critical patent/JPH06187311A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Information Transfer Systems (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

PURPOSE:To provide a multiprocessor system wherein data can be transferred between processors at a high speed. CONSTITUTION:A multiprocessor system consists of the processors 1 and ATM switches 2 whose number corresponds to the bit width of the internal bus of each processor, each processor 1 has an interface 10 for connecting with the ATM switches 2. Each interface 10 divides a sent data block into plural bit data blocks and adds a header containing routing information, determined by a destination processor, to each bit data block for conversion into plural cells, and sends those cells to the ATM switches 2 in parallel. The cells are transferred in parallel to the destination processor by the ATM switches 2 and reassembled into the original data block at the interface of the destination processor.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、複数のプロセッサから
なるマルチプロセッサシステムおよびプロセッサ間通信
方法に係り、特にマルチメディアを扱う端末システムに
適したマルチプロセッサシステムおよびプロセッサ間通
信方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a multiprocessor system including a plurality of processors and an interprocessor communication method, and more particularly to a multiprocessor system and an interprocessor communication method suitable for a terminal system handling multimedia.

【0002】[0002]

【従来の技術】従来、画像等を処理するシステムにおい
ては、例えば、「映像情報(I)」1987/12 p.23〜27
「最新画像処理ワークステーション VICOM-VMEシリー
ズ」に記載されているように、1つのプロセッサにおい
て全ての画像処理を行なうのではなく、複数の専用プロ
セッサを用いることで処理の高速化を図っている。この
場合、専用プロセッサ間のデータの送受信は、一般的な
システムバスとは別に設けた専用のバスを介して行な
い、例えば、画像処理以外のデータトラフィックによる
性能低下を防ぐという方法がとられていた。
2. Description of the Related Art Conventionally, in a system for processing an image or the like, for example, "Video Information (I)" 1987/12 p. 23-27
As described in "Latest image processing workstation VICOM-VME series", not all image processing is performed by one processor, but a plurality of dedicated processors are used to speed up the processing. In this case, data transmission / reception between dedicated processors is performed via a dedicated bus provided separately from a general system bus, for example, a method of preventing performance deterioration due to data traffic other than image processing has been adopted. .

【0003】文献1の例では、画像処理専用のプロセッ
サを複数用意し、これらの専用プロセッサ間の通信は、
システムバスであるVME−BUSとは別の、画像処理
データ専用のバスIMAGE−BUSを用いることによ
って、データ転送の高速化を図っていた。
In the example of Document 1, a plurality of processors dedicated to image processing are prepared, and communication between these dedicated processors is
By using a bus IMAGE-BUS dedicated to image processing data, which is different from the system bus VME-BUS, the speed of data transfer is increased.

【0004】[0004]

【発明が解決しようとする課題】上記従来技術は、画像
処理専用の通信路がバス形式となっているため、以下に
あげる問題があった。
The above-mentioned prior art has the following problems because the communication path dedicated to image processing is a bus type.

【0005】すなわち、プロセッサ間の通信を開始する
ためには、バス使用権の獲得する必要があり、他のプロ
セッサがデータ転送を行なっている間は、その転送がお
わるまで待たねばならない。従って、リアルタイム性を
要求される情報、例えば、音声や映像のようなマルチメ
ディア情報の場合、バス使用権獲得までの待ち時間によ
る処理の遅れから、メディアのリアルタイム性が保証で
きなくなるという問題があった。
That is, in order to start communication between the processors, it is necessary to acquire the right to use the bus, and while another processor is transferring data, it is necessary to wait until the transfer is completed. Therefore, in the case of information that requires real-time property, for example, multimedia information such as audio and video, there is a problem that the real-time property of the media cannot be guaranteed due to the delay in processing due to the waiting time until the bus usage right is acquired. It was

【0006】また、上記従来技術では、同時には、一組
のプロセッサ間通信しかできないため、特定のプロセッ
サだけがバスを占有することを防ごうとすると、各プロ
セッサに許容すバスの連続使用時間を制約せざるを得
ず、プロセッサが比較的長いデータを送ろうとすると、
1つの送信データストリームが、送信途中で一旦分断さ
れてしまう。送信の途中で分断された情報は、受信側の
プロセッサにおける復元処理において、時間軸管理が行
なわれていないことから、情報の等時性は失われてしま
うという問題があった。
Further, in the above-mentioned prior art, since only one set of processor-to-processor communication can be performed at the same time, in order to prevent only a specific processor from occupying the bus, the continuous use time of the bus allowed for each processor is limited. If you have to constrain and the processor tries to send relatively long data,
One transmission data stream is once divided during transmission. The information divided in the middle of transmission has a problem that the isochronous nature of the information is lost because the time axis management is not performed in the restoration processing in the receiving side processor.

【0007】さらに、バス接続を採用した上記従来技術
では、同時には、一組のプロセッサ同士しか通信できな
いため、例えば、通信プロセッサがネットワークから受
信したデータをファイルプロセッサへ転送している間
に、画像入力プロセッサがカメラから入力された画像デ
ータを画像処理プロセッサへ転送すること、あるいは、
これらの動作と並行して、上記画像処理プロセッサによ
る処理結果を画像表示プロセッサへ転送する、と言った
複数のプロセッサによる処理動作が並行して行なえない
という問題があった。
Further, in the above-mentioned conventional technique employing the bus connection, only one set of processors can communicate with each other at the same time. Therefore, for example, while the data received from the network by the communication processor is transferred to the file processor, The input processor transfers the image data input from the camera to the image processing processor, or
In parallel with these operations, there is a problem in that the processing operations by a plurality of processors, such as transferring the processing result by the image processing processor to the image display processor, cannot be performed in parallel.

【0008】本発明の目的は、複数対のプロセッサ間通
信を同時に並行して実現できるマルチプロセッサシステ
ムを提供することにある。
An object of the present invention is to provide a multiprocessor system which can realize communication between a plurality of pairs of processors simultaneously in parallel.

【0009】本発明の他の目的は、比較的長いデータス
トリームでも、他のプロセッサによるデータ伝送の影響
を受けることなく、迅速に伝送可能にしたマルチプロセ
ッサシステム、およびプロセッサ間通信方法を提供する
ことにある。
Another object of the present invention is to provide a multiprocessor system and an interprocessor communication method capable of rapidly transmitting a relatively long data stream without being affected by data transmission by another processor. It is in.

【0010】[0010]

【課題を解決するための手段】上記目的を達成するため
に、本発明によるマルチプロセッサシステムは、入力端
子から受け取ったセルを該セルのヘッダ情報によって決
まる出力端子に転送するスイッチ手段と、上記各プロセ
ッサを上記スイッチ手段に接続するためのインターフェ
イス手段とを有し、上記インターフェイス手段が、自プ
ロセッサから他のプロセッサに送信すべき複数バイトの
データストリームを受取り、該データストリームを複数
のデータブロックに分割し、各データブロックを、宛先
プロセッサによって異なるヘッダと上記データブロック
の1部をなす部分データブロックとからなる複数のセル
に変換し、該複数のセルを並列的に上記スイッチ手段に
送出するための第1の手段と、上記スイッチ手段から複
数のセルを並列的に受信し、上記複数のセルに含まれる
部分データブロックを1つのデータブロックに変換する
ための第2の手段とからなることを特徴とする。
To achieve the above object, a multiprocessor system according to the present invention comprises a switch means for transferring a cell received from an input terminal to an output terminal determined by the header information of the cell, and each of the above means. Interface means for connecting a processor to the switch means, the interface means receiving a data stream of a plurality of bytes to be transmitted from its own processor to another processor, and dividing the data stream into a plurality of data blocks. Then, each data block is converted into a plurality of cells each of which is composed of a different header depending on the destination processor and a partial data block forming a part of the data block, and the plurality of cells are sent to the switch means in parallel. A plurality of cells are connected in parallel from the first means and the switch means. Received, characterized in that comprising a second means for converting the partial data blocks included in the plurality of cells into one data block.

【0011】本発明の1つの側面は、上記第1の手段
が、上記プロセッサから受け取った他のプロセッサに送
信すべきのデータストリームを、所定長さを持つ複数の
データブロックに分割し、各データブロックを、ヘッダ
と上記データブロックの特定ビット位置の情報を含むビ
ットデータブロックとからなる複数のセルに変換し、該
複数のセルを上記スイッチ手段と接続された第1群の信
号線に並列的に送出し、上記第2の手段が、上記スイッ
チ手段に接続された第2群の信号線から複数のセルを並
列的に受信し、該複数のセルに含まれるビットデータブ
ロックを1つのデータブロックに変換するようにしたこ
とにある。
According to one aspect of the present invention, the first means divides a data stream received from the processor to be transmitted to another processor into a plurality of data blocks having a predetermined length, and each data block is divided into a plurality of data blocks. The block is converted into a plurality of cells each consisting of a header and a bit data block containing information on a specific bit position of the data block, and the plurality of cells are arranged in parallel with the first group of signal lines connected to the switch means. And the second means receives a plurality of cells in parallel from the second group of signal lines connected to the switch means, and the bit data blocks included in the plurality of cells are one data block. It is to convert to.

【0012】上記スイッチ手段は、例えば、複数のセル
フルーティングスイッチからなり、上記第1の手段と第
2の手段が、上記複数のセルフルーティングスイッチの
それぞれと接続された構成とすることができる。本発明
の1つの実施形態によれば、上記スイッチ手段は、前記
送信データの1バイトのビット数に等しい個数のセルフ
ルーティングスイッチからなり、上記第1の手段が、デ
ータブロックをビット位置に対応した複数のビットデー
タブロックに分割し、各ビットデータブロック毎に前記
セルを形成し、各セルを送信データの各バイトのビット
位置と対応したセルフルーティングスイッチに送出する
ようにしている。
The switch means may be composed of, for example, a plurality of self-routing switches, and the first means and the second means may be connected to each of the plurality of self-routing switches. According to one embodiment of the present invention, the switch means comprises a number of self-routing switches equal to the number of bits of 1 byte of the transmission data, and the first means corresponds a data block to a bit position. It is divided into a plurality of bit data blocks, the cells are formed for each bit data block, and each cell is sent to a self-routing switch corresponding to the bit position of each byte of transmission data.

【0013】また、本発明によるプロセッサ間通信方法
は、複数のプロセッサをスイッチ手段を介して相互接続
しておき、データの送信元となる第1のプロセッサ側
で、送信すべき複数バイトからなるデータブロックをそ
れぞれが各バイトの同一ビット位置のデータからなる複
数のビットデータブロックに分割し、各ビットデータブ
ロックに宛先となる第2のプロセッサに固有のルーチン
グ情報を含むヘッダを付加することによって複数のセル
を形成し、上記複数のセルをスイッチ手段に並列的に送
信し、上記スイッチ手段によって、上記複数のセルを上
記第2のプロセッサに並列的に転送し、上記第2のプロ
セッサ側で、受信セルに含まれるビットデータブロック
を1つのデータブロックに変換することを特徴とする。
Also, in the interprocessor communication method according to the present invention, a plurality of processors are interconnected via a switch means, and the first processor, which is the source of the data, transmits data consisting of a plurality of bytes. The block is divided into a plurality of bit data blocks each consisting of data at the same bit position of each byte, and a plurality of bit data blocks are added to each bit data block by adding a header containing routing information unique to the destination second processor. Forming cells, transmitting the plurality of cells in parallel to the switch means, transferring the plurality of cells in parallel to the second processor by the switch means, and receiving at the second processor side The bit data block included in the cell is converted into one data block.

【0014】[0014]

【作用】本発明によれば、各プロセッサとスイッチ手段
とを接続する第1、第2の信号線群を、それぞれ、スイ
ッチ手段(あるいはそれを構成する複数のセルフルーテ
ィングスイッチ)の該プロセッサに固有の入力端子およ
び出力端子に接続することによって、各プロセッサと他
の任意のプロセッサとの間に専用の通信路を確保するこ
とができる。
According to the present invention, the first and second signal line groups connecting each processor and the switch means are unique to the processor of the switch means (or the plurality of self-routing switches forming the switch means). By connecting to the input terminal and the output terminal of, it is possible to secure a dedicated communication path between each processor and any other processor.

【0015】従って、本発明によれば、各プロセッサ
は、他のプロセッサによるデータ転送動作の終了を待つ
ことなく、同時並行的にデータ転送を行なうことが可能
になる。
Therefore, according to the present invention, each processor can simultaneously perform data transfer in parallel without waiting for the completion of the data transfer operation by the other processor.

【0016】このため、本発明を、例えばマルチメディ
ア端末に適用した場合、広域網からの受信データのファ
イルへの転送動作と、画像入力プロセッサから画像処理
プロセッサへの画像データの転送動作と、画像処理プロ
セッサの処理結果の表示プロセッサへの転送動作等、複
数のプロセッサ間通信を同時に行なうことが可能にな
る。
Therefore, when the present invention is applied to, for example, a multimedia terminal, an operation of transferring received data from a wide area network to a file, an operation of transferring image data from an image input processor to an image processor, and an image It becomes possible to perform communication between a plurality of processors at the same time, such as an operation of transferring the processing result of the processing processor to the display processor.

【0017】[0017]

【実施例】図1は、本発明によるマルチプロセッサシス
テムの1実施例を示す図であり、n個のプロセッサユニ
ット1(1A〜1N)が、m個のセルフルーチングスイ
ッチ2(2A〜2M)を介して、相互に接続されてい
る。なお、本明細書で言う「セルフルーチングスイッ
チ」とは、以下(1)又は(2)の条件を備えたスイッ
チであり、例えば固定長パケット(以下、セルと言う)
のスイッチングを行なうATMスイッチがこれに該当す
る。
1 is a diagram showing an embodiment of a multiprocessor system according to the present invention, in which n processor units 1 (1A to 1N) are connected to m self-routing switches 2 (2A to 2M). Are connected to each other via. The "self-routing switch" referred to in the present specification is a switch that satisfies the following condition (1) or (2), for example, a fixed-length packet (hereinafter referred to as a cell).
This corresponds to an ATM switch that performs switching.

【0018】(1)入力セルのヘッダの先頭に付与した
ルーチング情報により、各スイッチ内部の方路を選びな
がら、入力セルを出力ポートの1つにへルーチングす
る。スイッチ外部から共通制御部によるスイッチング指
令を受けることなく、各セルの情報で方路決定する。
(1) The input cell is routed to one of the output ports while selecting a route inside each switch based on the routing information added to the head of the header of the input cell. The route is determined by the information of each cell without receiving a switching command from the common control unit from outside the switch.

【0019】(2)固定長の比較的短パケットを扱う、
ハードウェア制御の高速、自己方路決定型のスイッチ。
(2) Handling relatively short packets of fixed length,
High-speed, self-routed switch controlled by hardware.

【0020】各プロセッサユニット1は、プロセッサ6
と、メモリ7と、I/O装置8と、ATMポート10と
からなり、これらは、mビット幅の内部バス9で結ばれ
ている。本発明の特徴は、各プロセッサのmビット幅の
内部バス9が、ATMスイッチのための接続ポート、す
なわちATMポート10に接続されている点である。
Each processor unit 1 includes a processor 6
A memory 7, an I / O device 8 and an ATM port 10, which are connected by an internal bus 9 having an m-bit width. A feature of the present invention is that the m-bit wide internal bus 9 of each processor is connected to a connection port for an ATM switch, that is, an ATM port 10.

【0021】ATMポート10は、それぞれ各プロセッ
サユニット1の内部バスのビット幅に相当するm本の入
力線29と、m本の出力線30とを備えており、これら
の入力線および出力線との間でmビット幅のデータをA
TMセルの形で送受信することが可能である。上記AT
Mポート10の入力線29と出力線30は、それぞれ、
プロセッサユニットの内部バス9の各ビットに対応する
m個のATMスイッチ2(2A〜2M)に、各々、接続
されている。
The ATM port 10 has m input lines 29 and m output lines 30 each corresponding to the bit width of the internal bus of each processor unit 1, and these input lines and output lines are provided. Data of m bit width between
It is possible to send and receive in the form of TM cells. Above AT
The input line 29 and the output line 30 of the M port 10 are respectively
Each of the m ATM switches 2 (2A to 2M) corresponding to each bit of the internal bus 9 of the processor unit is connected.

【0022】各ATMスイッチ2は、n個のプロセッサ
ユニット1A〜1Nと接続できるように、n本の入力端
子IN1j〜INnj(j=1〜m)とn本の出力端子
OUT1j〜OUTnj(j=1〜m)とを備えてい
る。
Each ATM switch 2 has n input terminals IN1j to INnj (j = 1 to m) and n output terminals OUT1j to OUTnj (j =) so that it can be connected to n processor units 1A to 1N. 1 to m).

【0023】例えば、第1のプロセッサユニット1Aの
mビット幅の出力データのうち、第1ビット目に位置す
る情報は、後述するサブセルの形式で、第1のATMス
イッチ(No.1)2Aの第1入力端子(IN11)に入力さ
れ、上記第1のプロセッサユニット1Aの出力データの
第mビット目に位置する情報は、第mのATMスイッチ
(No.m)2Mの第1入力端子(IN1m)に入力される。同
様に、第nのプロセッサユニット1Nのmビット幅の出
力データの第1ビット目に位置する情報は、サブセルの
形式で、第1のATMスイッチ(No.1)2Aの第n入力
端子(INn1)に入力され、上記第nのプロセッサユニッ
トの出力データの第mビット目に位置する情報は、第m
のATMスイッチ(No.m)2Mの第n入力端子(INnm)
に入力される。
For example, in the output data of the m-bit width of the first processor unit 1A, the information located at the first bit is in the form of a subcell, which will be described later, in the first ATM switch (No. 1) 2A. Information input to the first input terminal (IN11) and located at the m-th bit of the output data of the first processor unit 1A is the first input terminal (IN1m) of the m-th ATM switch (No.m) 2M. ) Is entered. Similarly, the information located at the first bit of the m-bit wide output data of the n-th processor unit 1N is in the form of a subcell and is the n-th input terminal (INn1) of the first ATM switch (No. 1) 2A. ), And the information located at the m-th bit of the output data of the n-th processor unit is
ATM switch (No.m) 2M nth input terminal (INnm)
Entered in.

【0024】上記第1のATMスイッチ2Aの第1出力
端子OUT11の情報は、第1のプロセッサユニット1Aの
ATMポート10の第1ビット目と対応する入力線に入
力され、第mのATMスイッチ2Mの第1出力端子OUT1
mの情報は、第1のプロセッサユニット1AのATMポ
ートの第mビット目と対応する入力線に入力される。同
様に、第1のATMスイッチ(No.1)2Aの第n出力端
子OUTn1の情報は、第nのプロセッサユニット1NのA
TMポートの第1ビット目と対応する入力線に入力さ
れ、第mのATMスイッチ(No.m)2Mの第m出力端子
OUTnmの情報は、第nのプロセッサユニット1NのAT
Mポートの第mビット目と対応する入力線に入力され
る。
The information of the first output terminal OUT11 of the first ATM switch 2A is input to the input line corresponding to the first bit of the ATM port 10 of the first processor unit 1A, and the mth ATM switch 2M. Output terminal OUT1 of
The information of m is input to the input line corresponding to the m-th bit of the ATM port of the first processor unit 1A. Similarly, the information of the nth output terminal OUTn1 of the first ATM switch (No. 1) 2A is the same as that of the Ath of the nth processor unit 1N.
It is input to the input line corresponding to the first bit of the TM port, and the mth output terminal of the mth ATM switch (No.m) 2M.
The OUTnm information is the AT of the nth processor unit 1N.
It is input to the input line corresponding to the m-th bit of the M port.

【0025】一方、各プロセッサから送信されたmビッ
ト幅のデータの第1ビット目に位置する情報を含むサブ
セルは、第1のATMスイッチ(No.1)2Aにおいて交
換処理されて、データの宛先となるプロセッサ2jが接
続された出力端子OUTj1に出力され、上記宛先プロ
セッサ2jのATMポートの第1ビット目と対応する入
力線に送られる。同様にして、各プロセッサからの送信
データの第mビット目に位置する情報を含むサブセル
は、第mのATMスイッチ(No.m)2Mにおいて交換処
理され、宛先のプロセッサ2jが接続された出力端子O
UTjmに出力され、上記宛先プロセッサのATMポー
トの第mビット目と対応する入力線に送られる。このよ
うにして、各プロセッサユニットは、内部バス10のビ
ット幅mに等しい個数のサブセルをビット対応に設けら
れた複数のATMスイッチを介して並列転送することに
より、他の任意のプロセッサユニットとの間で、高速に
データ送受信することが可能となる。
On the other hand, the subcell containing the information located at the first bit of the m-bit wide data transmitted from each processor is exchange-processed in the first ATM switch (No. 1) 2A and the destination of the data. Is output to the output terminal OUTj1 to which the processor 2j is connected, and is sent to the input line corresponding to the first bit of the ATM port of the destination processor 2j. Similarly, the subcell including the information located at the m-th bit of the transmission data from each processor is exchange-processed in the m-th ATM switch (No.m) 2M and the output terminal to which the destination processor 2j is connected. O
It is output to UTjm and sent to the input line corresponding to the m-th bit of the ATM port of the destination processor. In this way, each processor unit performs parallel transfer of a number of subcells equal to the bit width m of the internal bus 10 via a plurality of ATM switches provided corresponding to bits, so that each processor unit can communicate with any other processor unit. It becomes possible to transmit and receive data at high speed.

【0026】図2は、図1のATMポート10の詳細を
示す構成図である。ATMポート10は、これに内部バ
ス9を介して接続されたプロセッサ6から与えられたm
ビット幅のデータストリーム(メッセージ)をそれぞれ
所定の長さLをもつ複数のデータブロックに分割し、更
に、各データブロックをビット位置毎のm個のサブデー
タブロックに分解し、各サブデータブロックに同一のセ
ルヘッダを付加することによって形成したm個のサブセ
ルを、ATMスイッチ2A〜2Mに並列的に送信した
り、逆にこれらのATMスイッチから並列的に受信した
サブセルをもとのデータストリーム形式に変換し、内部
バスを介してプロセッサ6に渡すことを役目としてい
る。
FIG. 2 is a block diagram showing the details of the ATM port 10 shown in FIG. The ATM port 10 is provided by the processor 6 connected to the ATM port 10 via the internal bus 9.
A bit-width data stream (message) is divided into a plurality of data blocks each having a predetermined length L, and each data block is decomposed into m sub-data blocks for each bit position, and each sub-data block is divided into m sub-data blocks. The m subcells formed by adding the same cell header are transmitted in parallel to the ATM switches 2A to 2M, or conversely, the subcells received in parallel from these ATM switches are converted into the original data stream format. The purpose is to convert and pass it to the processor 6 via the internal bus.

【0027】ATMポート10は、m本の入力線29を
介してATMスイッチ2A〜2Mから、それぞれビット
位置と対応するサブデータブロック(第1ビットデータ
ブロック〜第mビットデータブロック)のサブセルを並
列的に受信するセル受信部15と、上記セル受信部15
から供給された複数のサブセルのセルヘッダを解析し、
各サブセルから抽出したサブデータブロックをmビット
のデータ幅をもつデータブロックに変換する受信セル・
ヘッダ処理部16と、上記受信セル・ヘッダ処理部16
から供給されるデータブロックをプロセッサが扱うデー
タストリーム形式にリアセンブリするための制御動作を
行なうリアセンブリ制御部17と、リアセンブリされた
データストリームを一時的に蓄積するための受信バッフ
ァ部18と、プロセッサから他のプロセッサに送出すべ
きデータストリーム(メッセージ)を一時的に蓄積する
ための送信バッファ部21と、上記送信バッファから、
転送単位となる所定長さLのデータブロックを読み出
し、これをm個のサブセルに変換するための制御動作を
行なうアセンブリ制御部22と、上記送信バッファから
読み出されたデータブロックをm個のビットデータブロ
ックに分割し、各ビットデータブロックに送信セルヘッ
ダを付加する送信セル・ヘッダ処理部20と、上記送信
セル・ヘッダ処理部20から供給されるm個のサブセル
をm本の出力線30を介してATMスイッチ2A〜2M
に並列的に送出するセル送信部19とからなる。
The ATM port 10 connects subcells of subdata blocks (first bit data block to mth bit data block) corresponding to bit positions in parallel from the ATM switches 2A to 2M via m input lines 29. Cell receiving section 15 that receives the information, and the cell receiving section 15
Parse the cell headers of multiple subcells supplied from
A receiving cell for converting a sub data block extracted from each sub cell into a data block having a data width of m bits;
Header processing unit 16 and the received cell / header processing unit 16
A reassembly control unit 17 that performs a control operation for reassembling a data block supplied from the processor into a data stream format handled by a processor; a reception buffer unit 18 that temporarily stores the reassembled data stream; From a transmission buffer unit 21 for temporarily accumulating a data stream (message) to be transmitted from a processor to another processor, and the transmission buffer,
An assembly control unit 22 that performs a control operation for reading a data block of a predetermined length L that is a transfer unit and converting the data block into m subcells, and a data block read from the transmission buffer with m bits A transmission cell header processing unit 20 that divides the data block and adds a transmission cell header to each bit data block, and m subcells supplied from the transmission cell header processing unit 20 are output through m output lines 30. ATM switch 2A-2M
And a cell transmission unit 19 for transmitting the data in parallel with each other.

【0028】23はバッファ管理部、24はDMAコン
トロール部、25はポート制御部である。コントロール
バス26、アドレスバス27、およびデータバス28
は、図1のプロセッサユニット内のプロセッサ6、メモ
リ7、I/O8に接続されている。
Reference numeral 23 is a buffer management unit, 24 is a DMA control unit, and 25 is a port control unit. Control bus 26, address bus 27, and data bus 28
Are connected to the processor 6, memory 7, and I / O 8 in the processor unit of FIG.

【0029】図3〜図5は、ATMポート10において
取り扱われるデータ構造の1例を示した図である。プロ
セッサユニット1Aから他のプロセッサユニット、例え
ば1Nへのデータ転送を行なう場合、プロセッサユニッ
ト1Aでは、図3に示すデータストリーム(メッセー
ジ)40の形式で,送信データをメモリ7内に用意す
る。
3 to 5 are diagrams showing an example of the data structure handled by the ATM port 10. As shown in FIG. When data is transferred from the processor unit 1A to another processor unit, for example, 1N, the processor unit 1A prepares transmission data in the memory 7 in the form of the data stream (message) 40 shown in FIG.

【0030】データストリーム40は、ヘッダ部41
と、データ部42とからなる。ヘッダ部41は、宛先ア
ドレスを示すフィールド43、データの種別を示すフィ
ールド44、データ部の長さを示すフィールド45及び
データストリームの番号(シーケンス番号)を示すフィ
ールド46からなる。
The data stream 40 has a header portion 41.
And a data section 42. The header section 41 includes a field 43 indicating a destination address, a field 44 indicating a data type, a field 45 indicating a length of a data section, and a field 46 indicating a data stream number (sequence number).

【0031】上記宛先アドレスフィールド43は、スト
リームの宛先となるプロセッサユニットの番号と、必要
に応じて、データ40を扱うプログラムの識別子あるい
はデータ40を格納するためのメモリアドレスが入れら
れている。
The destination address field 43 contains the number of the processor unit that is the destination of the stream and, if necessary, the identifier of the program that handles the data 40 or the memory address for storing the data 40.

【0032】ATMポート10は、プロセッサ1Aから
受け取ったこのデータストリーム40を送信バッファ2
1内に一時的に格納し、このデータストリーム40をそ
れぞれ所定のサイズLをもつ複数のデータブロックに分
割する。最後のデータブロックは、サイズLに満たない
場合、フィラー(例えば、スペース)を追加することに
よって、所定サイズLのデータブロックとする。
The ATM port 10 sends this data stream 40 received from the processor 1A to the transmission buffer 2
1 and temporarily divides the data stream 40 into a plurality of data blocks each having a predetermined size L. If the last data block is less than the size L, a filler (for example, space) is added to make the data block a predetermined size L.

【0033】ATMポートは、上記送信バッファ21に
格納されたヘッダ部41の宛先アドレスフィールド43
の内容に従って、ATMスイッチがセルのルーティング
のために必要とするルーティング情報(スイッチ情報)
32を生成し、図4に示すように、これをセル番号33
と共に、各データブロック34の先頭部に付加して、A
TMセル30を作成する。
The ATM port is a destination address field 43 of the header section 41 stored in the transmission buffer 21.
According to the contents of the above, the ATM switch needs routing information (switch information) for cell routing.
32 and generate a cell number 33 as shown in FIG.
Along with the addition to the beginning of each data block 34,
The TM cell 30 is created.

【0034】本発明では、上記ATMセル30における
mビット幅をもつデータブロック34を、各バイトの第
1ビットからなる第1ビットデータブロック〜各バイト
の第mビットからなる第mビットデータブロックに分解
し、得られた1ビット幅Lビット長の 各ビットデータ
ブロック35に、図5に示すように、スイッチ情報32
とセル番号33とを付加することによって、m個のセル
(以下、本明細書では、このようなビットデータブロッ
クを含むセルをサブセルと言う)31を形成し、これら
のサブセルを出力線30を介してATMスイッチ2に並
列的に出力することを特徴とする。
In the present invention, the data block 34 having an m-bit width in the ATM cell 30 is changed from the first bit data block consisting of the first bit of each byte to the m-th bit data block consisting of the m-th bit of each byte. As shown in FIG. 5, the switch information 32 is added to each bit data block 35 having a 1-bit width and an L-bit length obtained by the decomposition.
And the cell number 33 are added to form m cells 31 (hereinafter, cells including such bit data blocks are referred to as subcells) 31 and these subcells are connected to the output line 30. It is characterized by outputting in parallel to the ATM switch 2 via

【0035】次ぎに、図2を参照して、プロセッサ間で
行なわれるデータの送受信動作について説明する。
Next, with reference to FIG. 2, a data transmission / reception operation performed between the processors will be described.

【0036】先ず、1つのプロセッサ1Aから他の任意
のプロセッサ、例えば1Nに対するデータ送信動作につ
いて説明する。プロセッサ1Aは、メモリ7内おける送
信すべきデータの格納場所をポート制御部25に対して
知らせると共に、ライト命令を出す。ここでの「ライト
命令」とは、プロセッサ1Aから、データの宛先となる
プロセッサ1Nに対して、ATMスイッチ2経由で、デ
ータを転送することを意味する。
First, the data transmission operation from one processor 1A to another arbitrary processor such as 1N will be described. The processor 1A notifies the port controller 25 of the storage location of the data to be transmitted in the memory 7 and issues a write command. The “write instruction” here means to transfer the data from the processor 1A to the processor 1N which is the destination of the data via the ATM switch 2.

【0037】上記ライト命令に応答して、ポート制御部
25は、DMAコントロール24の機能を用いて、メモ
リ7の指定されたデータ格納場所から、送信すべきデー
タストリーム40を、送信バッファ21に転送する。次
に、ポート制御部25は、アセンブリ制御部22に対し
て、アセンブリ動作を指示する。上記指示に応答して、
アセンブリ制御部22は、送信バッファ21から所定長
さLバイト(mビット/バイト)分の送信データブロッ
クを読みだす。上記送信データブロックは、ビット位置
に対応したm個のビットデータブロックに分割され、送
信セルヘッダ処理部20で、ビットデータブロック毎の
セルヘッダ付けが行なわれる。
In response to the write command, the port controller 25 uses the function of the DMA controller 24 to transfer the data stream 40 to be transmitted from the designated data storage location of the memory 7 to the transmission buffer 21. To do. Next, the port control unit 25 instructs the assembly control unit 22 to perform an assembly operation. In response to the above instructions,
The assembly control unit 22 reads a transmission data block of a predetermined length L bytes (m bits / byte) from the transmission buffer 21. The transmission data block is divided into m bit data blocks corresponding to the bit positions, and the transmission cell header processing unit 20 attaches a cell header to each bit data block.

【0038】図6は、送信セルヘッダ処理部20の詳細
を示す。送信セルヘッダ処理部20は、ルーティング情
報32を設定するためのレジスタ201と、セル番号3
3をカウントするためのカウンタ202と、それぞれ上
記レジスタ201およびカウンタ202から出力される
並列データを直列データに変換するための並列/直列
(P/S)変換器203および204と、信号線221
〜223を介してアセンブリ制御部から与えられる制御
信号に応じて、P/S変換器203、204および送信
バッファ21の出力の何れかを選択し、セル送信部19
に出力するよう動作するセレクタからなっている。
FIG. 6 shows details of the transmission cell header processing section 20. The transmission cell header processing unit 20 includes a register 201 for setting the routing information 32 and a cell number 3
Counter 202 for counting 3; parallel / serial (P / S) converters 203 and 204 for converting parallel data output from the register 201 and counter 202 into serial data; and a signal line 221.
~ 223 to select the output of the P / S converters 203 and 204 and the transmission buffer 21 according to the control signal given from the assembly control unit, and the cell transmission unit 19
It consists of a selector that operates to output to.

【0039】アセンブリ制御部22は、ポート制御部2
5からアセンブリ動作の開始指令を受けると、送信バッ
ファ21から読み出した宛先アドレス情報に基づいて、
サブセルに付加すべきルーティング情報32を生成し、
これをレジスタ201に設定する。また、カウンタ20
2にカウント指令を与え、更新されたセル番号を生成さ
せる。
The assembly controller 22 is a port controller 2.
When the assembly operation start command is received from 5, based on the destination address information read from the transmission buffer 21,
Generate routing information 32 to be added to the subcell,
This is set in the register 201. Also, the counter 20
A count command is given to 2 to generate an updated cell number.

【0040】次に、アセンブリ制御部22は、制御信号
線221に選択信号を出力し、これによって、P/S変
換器203を動作させ、レジスタ201に設定されてい
るルーティング情報をシリアルデータに変換して、m本
の出力線205にそれぞれ出力させる。この時、セレク
タ20は、上記P/S変換器の出力線205からの入力
信号を選択し、m本の信号線211を介してセル送信部
19に転送する動作状態となっている。ルーティング情
報の転送が終わると、アセンブリ制御部22は、制御信
号線222に選択信号を出力し、P/S変換器204を
動作させ、カウンタ202のカウント値をシリアルデー
タに変換して、m本の出力線206にそれぞれ出力させ
る。この時、セレクタ20は、上記P/S変換器の出力
線206からの入力信号を選択し、信号線211を介し
てセル送信部19に転送する動作状態となっている。
Next, the assembly controller 22 outputs a selection signal to the control signal line 221, thereby operating the P / S converter 203 and converting the routing information set in the register 201 into serial data. Then, each of the m output lines 205 is made to output. At this time, the selector 20 is in an operation state of selecting an input signal from the output line 205 of the P / S converter and transferring it to the cell transmitting unit 19 via the m signal lines 211. When the transfer of the routing information is completed, the assembly control unit 22 outputs a selection signal to the control signal line 222, operates the P / S converter 204, converts the count value of the counter 202 into serial data, and outputs m data. To the output line 206 of each. At this time, the selector 20 is in an operation state of selecting an input signal from the output line 206 of the P / S converter and transferring it to the cell transmitting unit 19 via the signal line 211.

【0041】セル番号の転送が終わると、アセンブリ制
御部22は、制御信号線223に選択信号を出力し、セ
レクタ20を、送信バッファ21の出力線207から入
力される信号を信号線211を介してセル送信部19に
転送する動作状態とする。この状態で、アセンブリ制御
部22は、送信バッファ21から長さLのデータブロッ
クを順次に読み出す。上記データブロックは、ビット位
置別に分割されたm個のビットデータブロックとして出
力線207に読み出され、信号線211を介して、セル
送信部19に供給される。
When the transfer of the cell number is completed, the assembly control unit 22 outputs a selection signal to the control signal line 223, and the selector 20 outputs the signal input from the output line 207 of the transmission buffer 21 via the signal line 211. Then, the cell is transferred to the cell transmission unit 19 to be in an operating state. In this state, the assembly control unit 22 sequentially reads the data blocks of length L from the transmission buffer 21. The data block is read out to the output line 207 as m bit data blocks divided according to bit positions, and supplied to the cell transmission unit 19 via the signal line 211.

【0042】セル送信部19では、セレクタ210から
m本の信号線211を介して供給されるm本のシリアル
データを、例えば、出力線30と対応して用意されたm
個のサブセル・キューメモリに一旦蓄えておき、制御信
号線224を介してアセンブリ制御部22から与えられ
る送信指令に応答して、これらのキューメモリの内容を
出力線30に出力させる。尚、出力線30へのサブセル
の送出動作は、ヘッダ情報(ルーティング情報とセル番
号)をキューメモリに蓄積した後、これらのキューメモ
リへのビットデータブロックの入力と並行して、キュー
メモリからサブセル情報を出力するようにしてもよい。
In the cell transmission unit 19, m serial data supplied from the selector 210 via the m signal lines 211 are prepared in correspondence with, for example, the output line 30.
The subcell queue memories are temporarily stored, and the contents of these queue memories are output to the output line 30 in response to a transmission command given from the assembly control unit 22 via the control signal line 224. Note that the operation of sending subcells to the output line 30 is performed by accumulating header information (routing information and cell number) in the queue memories, and then, in parallel with the input of bit data blocks into these queue memories, Information may be output.

【0043】以上の動作を繰返すことによって、送信バ
ッファ21内のデータストリームがすべてサブセル化さ
れ、ATMスイッチ2A〜2Mに送信し終わると、アセ
ンブリ制御部22は、バッファ管理部23を通じて、ポ
ート制御部25に送信終了を伝える。ポート制御部25
は、アセンブリ制御部22から送信終了の通知を受ける
と、コントロールバス26を用いて、プロセッサ1Aに
対して割込みをかけ、送信終了を通知する。なお、プロ
セッサ1AとATMポート10の間では、後述するよう
に、各種のコマンドのやりとりも行われる。
By repeating the above operation, all the data streams in the transmission buffer 21 are made into subcells, and when transmission to the ATM switches 2A to 2M is completed, the assembly control unit 22 causes the port control unit 23 through the buffer management unit 23. Notify the end of transmission to 25. Port control unit 25
When receiving the notification of the end of transmission from the assembly controller 22, the control bus 26 interrupts the processor 1A to notify the end of the transmission. Various commands are exchanged between the processor 1A and the ATM port 10 as described later.

【0044】次に、プロセッサ1Aにおける他のプロセ
ッサからのデータ受信動作について述べる。図1に示し
たATMスイッチ2AからATMスイッチ2Mまでの各
出力は、全体として見ればmビット幅の信号となって、
図2のATMポート内のセル受信部17に入力される。
Next, the data receiving operation of the processor 1A from another processor will be described. Each output from the ATM switch 2A to the ATM switch 2M shown in FIG. 1 becomes an m-bit wide signal as a whole,
It is input to the cell receiving unit 17 in the ATM port of FIG.

【0045】セル受信部15は、ATMスイッチ2A〜
2Mから入力線29を介してm個のサブセル信号を並列
的に受信し、これらのサブセル信号を受信セルヘッダ処
理部16に渡す。
The cell receiving unit 15 includes the ATM switches 2A to 2A.
M subcell signals are received in parallel from 2M via the input line 29, and these subcell signals are passed to the reception cell header processing unit 16.

【0046】受信セルヘッダ処理部16は、図7に示す
如く、セル受信部15から信号線160を介してm個の
サブセル信号を並列的に受信するセレクタ161を有
し、上記セレクタ161は、リアセンブル制御部17か
ら制御信号線170または171を介して与えられる選
択信号に応じて、これらのサブセル信号を出力ポートA
または出力ポートBに選択的に出力する。
As shown in FIG. 7, the reception cell header processing unit 16 has a selector 161 for receiving m sub-cell signals in parallel from the cell reception unit 15 via the signal line 160. These subcell signals are output from the output port A in response to a selection signal provided from the assemble control unit 17 via the control signal line 170 or 171.
Alternatively, it selectively outputs to the output port B.

【0047】出力ポートAには、それぞれシリアルデー
タをmビットのパラレルデータに変換するためのS/P
変換器163−1〜163−mを有するm本の信号線1
62が接続され、これらのS/P変換器の出力は比較器
164に入力されている。また、出力ポートBには、m
本の信号線166を介して受信バッファ17が接続され
ている。
Each output port A has an S / P for converting serial data into m-bit parallel data.
M signal lines 1 having converters 163-1 to 163-m
62 is connected, and the outputs of these S / P converters are input to the comparator 164. In addition, the output port B has m
The reception buffer 17 is connected via the signal line 166 of the book.

【0048】リアセンブル制御部17は、セル受信部1
5の受信キュー(図示せず)にm個のサブセルが受信さ
れた時にセル受信部が制御信号線172に出力する制御
信号に応答して、先ず、制御信号線170にヘッダ処理
のための制御信号を出力する。この制御信号に応答し
て、セル受信部15から、受信されたm個のサブセルの
ヘッダ部(ルーティング情報32とセル番号33)の内
容がセレクタ161に供給され、これらがセレクタで出
力ポートAに転送され、それぞれS/P変換器163−
1〜163−mによってパラレルデータに変換された
後、比較器164に入力される。上記比較器164は、
リアセンブル制御部17が制御信号線165に出力した
制御信号に応答して、これらm個のヘッダを比較し、こ
れらが互いに一致しているか否かの判定結果を示す信号
を信号線166に出力する。
The reassembling control section 17 includes the cell receiving section 1
In response to the control signal output from the cell reception unit to the control signal line 172 when m subcells are received by the reception queue 5 (not shown), the control signal line 170 first receives control for header processing. Output a signal. In response to this control signal, the contents of the header parts (routing information 32 and cell number 33) of the received m subcells are supplied from the cell reception unit 15 to the selector 161, and these are output to the output port A by the selector. S / P converter 163-
After being converted into parallel data by 1 to 163-m, it is input to the comparator 164. The comparator 164 is
In response to the control signal output to the control signal line 165 by the reassembling control unit 17, the m headers are compared and a signal indicating the determination result as to whether they match each other is output to the signal line 166. To do.

【0049】リアセンブル制御部17は、上記判定結果
がセルヘッダ間に不一致が生じたことを示す場合は、デ
ータ受信エラーを示す制御信号をポート制御部25に送
り、もし、上記判定結果が全てのセルヘッダの一致を示
す場合は、制御信号線171にデータブロック処理のた
めの制御信号を出力する。この制御信号に応答して、セ
ル受信部15から、受信されたm個のサブセルのビット
データブロックの内容がセレクタ161に供給され、こ
れらが出力ポートBに転送され、信号線166を介して
受信バッファ18に入力される。
When the determination result indicates that the cell headers do not match, the reassembly control unit 17 sends a control signal indicating a data reception error to the port control unit 25. When the cell headers match each other, a control signal for data block processing is output to the control signal line 171. In response to this control signal, the contents of the bit data blocks of the received m subcells are supplied from the cell reception unit 15 to the selector 161, which are transferred to the output port B and received via the signal line 166. It is input to the buffer 18.

【0050】サブセルの受信の都度、上述した受信セル
ヘッダ処理部16とリアセンブリ制御部17の動作を繰
り返すことによって、受信バッファ18内にてデータス
トリームの復元が行なわれる。リアセンブリ制御部17
は、受信バッファに蓄積されたデータストリームのヘッ
ダ部に含まれるデータ長フィールド45の値から、受信
処理すべきデータブロックの個数を判断する、そして、
最後のデータブロックを受信して、受信バッファ18内
にもとのデータストリームが完成されたところで、ポー
ト制御部25に対してデータ受信完了を通知する。
The data stream is restored in the reception buffer 18 by repeating the operations of the reception cell header processing unit 16 and the reassembly control unit 17 each time a subcell is received. Reassembly controller 17
Determines the number of data blocks to be received and processed from the value of the data length field 45 included in the header part of the data stream accumulated in the reception buffer, and
When the last data block is received and the original data stream is completed in the reception buffer 18, the port controller 25 is notified of the completion of data reception.

【0051】ポート制御部25は、上記データ受信完了
の通知を受け取ると、DMAコントロール24に対し
て、データストリームのDMA転送を指示し、データス
トリームがメモリ7の受信データ領域へ転送される。こ
れが終了すると、ポート制御部25は、プロセッサに対
して、受信完了の割込みをかける。
Upon receiving the data reception completion notification, the port control unit 25 instructs the DMA control 24 to perform DMA transfer of the data stream, and the data stream is transferred to the reception data area of the memory 7. When this is completed, the port control unit 25 interrupts the reception completion interrupt to the processor.

【0052】図8は、ATMスイッチ2(2A〜2M)
の構成の1例を示す図である。ATMスイッチ2の役割
は、任意の入力端子INij(i=1〜n,j=1〜
m)から入力されたサブセル31を、ルーティング情報
(スイッチ情報)32にもとづいて、出力端子の1つに
高速に交換処理することである。 ATMスイッチは、
複数の単位スイッチS11〜S34を多段に接続しスイ
ッチ構成となっている。
FIG. 8 shows the ATM switch 2 (2A to 2M).
It is a figure which shows an example of the structure of. The role of the ATM switch 2 is to play an arbitrary input terminal INij (i = 1 to n, j = 1 to 1).
In other words, the subcell 31 input from m) is exchanged at high speed with one of the output terminals based on the routing information (switch information) 32. ATM switch
A plurality of unit switches S11 to S34 are connected in multiple stages to form a switch configuration.

【0053】図示した例では、各ATMスイッチ2は、
4行3段に配置された合計12個の単位スイッチS11
〜S34からなり、各単位スイッチは、2つの入力端子
と、2つの出力端子とを有している。1段目のスイッチ
S11〜S14においては、各入力端子から受信したサ
ブセルのルーティング情報の第1ビット目の状態に応じ
て、受信サブセルの出力方向を決定し、何れかの出力端
子にサブセルを出力する。次の段の単位スイッチS21
〜S24は、受信したサブセルのルーティング情報の第
2ビット目の状態に応じて、セルを出力すべき出力端子
を決定する。同様にして、n段目の単位スイッチでは、
送りこまれたサブセルのルーティング情報の第nビット
目をみて、出力先を決める。なお、単位スイッチ内部に
おけるこれらの一連の動作は、ハードウェア回路によっ
て、ゲート遅延程度の高速動作で行なわれる。
In the illustrated example, each ATM switch 2 is
A total of 12 unit switches S11 arranged in 4 rows and 3 stages
To S34, each unit switch has two input terminals and two output terminals. In the switches S11 to S14 of the first stage, the output direction of the reception subcell is determined according to the state of the first bit of the routing information of the subcell received from each input terminal, and the subcell is output to one of the output terminals. To do. Next unit switch S21
S24 determines the output terminal which should output a cell according to the state of the 2nd bit of the routing information of the received subcell. Similarly, in the unit switch of the nth stage,
The output destination is determined by looking at the nth bit of the routing information of the subcell sent. The series of operations inside the unit switch is performed by a hardware circuit at a high speed operation of about gate delay.

【0054】図8に示したATMスイッチの動作を、例
えば、識別子「5」を持つプロセッサユニット1Eか
ら、識別子「3」を持つプロセッサユニット1Cに対し
て送出したサブセルの交換処理を例として説明する。
The operation of the ATM switch shown in FIG. 8 will be described by taking, for example, the subcell exchange processing sent from the processor unit 1E having the identifier "5" to the processor unit 1C having the identifier "3". .

【0055】プロセッサ1EのATMポートから送出さ
れる各セルのルーティング情報フィールド32には、宛
先プロセッサユニット1Cの識別子に相当するルーティ
ング情報が2進値「010」で設定される。
In the routing information field 32 of each cell transmitted from the ATM port of the processor 1E, routing information corresponding to the identifier of the destination processor unit 1C is set with a binary value "010".

【0056】図8の例では、第1ビットに対応するサブ
セルを交換処理するためのATMスイッチ2Aが示され
ている。プロセッサユニット2からのサブセルは、入力
信号線IN51から単位スイッチS11に入力される。単位
スイッチS11は、入力サブセルのスイッチ情報の1番
目のビットの状態が「0」なので、「0」で表示された
出力端子側に接続された第2段目の単位スイッチS23
にサブセルを送出する。
In the example of FIG. 8, an ATM switch 2A for switching the subcell corresponding to the first bit is shown. The subcell from the processor unit 2 is input to the unit switch S11 from the input signal line IN51. Since the state of the first bit of the switch information of the input subcell is "0", the unit switch S11 has the second-stage unit switch S23 connected to the output terminal side indicated by "0".
Send the subcell to.

【0057】上記単位スイッチS23では、入力サブセ
ルのスイッチ情報の2番目のビットの状態が「1」なの
で、「1」で表示された出力端子側に接続された第3段
目のスイッチS32にサブセルを送出する。
In the unit switch S23, since the state of the second bit of the switch information of the input subcell is "1", the subcell is connected to the switch S32 of the third stage connected to the output terminal side indicated by "1". Is sent.

【0058】上記単位スイッチS32では、入力サブセ
ルのスイッチ情報の3番目のビットの状態が「0」なの
で、「0」で表示された出力端子側に接続された出力信
号線OUT31にサブセルを送出する。
In the unit switch S32, since the state of the third bit of the switch information of the input subcell is "0", the subcell is sent to the output signal line OUT31 connected to the output terminal side indicated by "0". .

【0059】上記出力信号線OUT31には、プロセッ
サユニット1Cが接続されている。第2ビットのデータ
ブロックを含むサブセルを交換処理するATMスイッチ
2B〜第mビットのデータブロックを含むサブセルを交
換処理するATMスイッチ2Mでも、上記と同様の動作
が行なわれるため、結果的に、プロセッサユニット1E
からプロセッサユニット1C宛に送出したデータは、ビ
ット位置に対応した複数のサブセルに分割されて、並列
配置された複数のATMスイッチ2A〜2Mを経由し
て、宛先プロセッサ1Cに届く。
The processor unit 1C is connected to the output signal line OUT31. Since the ATM switch 2B for exchanging the subcell including the second bit data block to the ATM switch 2M for exchanging the subcell including the mth bit data block also perform the same operation as described above, and as a result, the processor. Unit 1E
The data sent from the processor unit 1C to the processor unit 1C is divided into a plurality of subcells corresponding to the bit positions, and reaches the destination processor 1C via the plurality of ATM switches 2A to 2M arranged in parallel.

【0060】この場合,各ATMスイッチは、送信元を
異にする複数のサブセルを同時に転送できるため、従来
のバス結合システムにおけるアクセスの競合の問題は発
生しない。
In this case, since each ATM switch can simultaneously transfer a plurality of subcells having different transmission sources, the problem of access conflict in the conventional bus coupling system does not occur.

【0061】なお、ここに示したATMスイッチの構成
と、単位スイッチの接続形態は、ルーティング情報の内
容にもとづいて、セルの送り先を決定し、ハードウェア
によるセルの交換処理機能を実現するために示した1つ
の具体例にすぎず、本発明は、他の形態のスイッチの適
用を妨げるものではない。
The configuration of the ATM switch and the connection form of the unit switches shown here are for determining the cell destination based on the contents of the routing information and for realizing the cell exchange processing function by hardware. It is only one specific example shown and the present invention does not preclude the application of other forms of switches.

【0062】図9は、プロセッサ6とATMポート10
とによって行なわれるセルの送信動作の手順を示した図
である。プロセッサ6は、送信相手のプロセッサのアド
レスを含むヘッダ情報を持ったデータストリーム40を
メモリ7に用意し(ステップ50)、送信すべきデータ
ストリーム40のメモリ中における開始アドレスと終了
アドレスをATMポート10に指示する(ステップ5
1)。次いで、ATMポート10に対して送信要求を出
す(ステップ52)。
FIG. 9 shows the processor 6 and the ATM port 10.
It is a figure showing the procedure of the transmission operation of the cell performed by and. The processor 6 prepares the data stream 40 having the header information including the address of the processor of the transmission partner in the memory 7 (step 50), and the start address and the end address in the memory of the data stream 40 to be transmitted are set to the ATM port 10. To (Step 5
1). Then, a transmission request is issued to the ATM port 10 (step 52).

【0063】ATMポート10の制御部25は、DMA
コントロール24に、先に指定されたメモリ領域7から
データストリーム40を送信バッファ21ヘ転送させる
(ステップ53)。メモリ7から送信バッファへのデー
タ転送が終わると、データストリームをセルサイズのデ
ータブロックに分割し、送信セル処理部20で、ビット
データブロック毎のサブセルを形成し、セル送信部20
に供給する(ステップ54)。次に。セル送信部19に
セル送信を指示した後(ステップ55)、送信バッファ
21中のデータストリームを全て送信し終えたたかどう
かを調べる(ステップ56)。もし、残りのデータがあ
る場合には、ステップ54に戻り、サブセル送信の形成
と送信の動作を繰返し、データストリームのすべてを送
信し終えた場合には、プロセッサにデータストリームの
送信終了を通知する(ステップ57)。
The control unit 25 of the ATM port 10 uses the DMA
The control 24 is made to transfer the data stream 40 from the previously designated memory area 7 to the transmission buffer 21 (step 53). When the data transfer from the memory 7 to the transmission buffer is completed, the data stream is divided into cell-sized data blocks, the transmission cell processing unit 20 forms subcells for each bit data block, and the cell transmission unit 20
(Step 54). next. After instructing the cell transmission unit 19 to perform cell transmission (step 55), it is checked whether or not all the data streams in the transmission buffer 21 have been transmitted (step 56). If there is remaining data, the process returns to step 54 and the operation of forming and transmitting subcell transmission is repeated. When all the data stream has been transmitted, the processor is notified of the end of data stream transmission. (Step 57).

【0064】上記実施例では、プロセッサが、メモリ内
に送信データ42とヘッダ41とからなるデータストリ
ーム40を書き込んだ後、ATMポートに送信要求を出
すようにしているが、ヘッダ41の生成処理の1部をA
TMポートで行うようにしてもよい。
In the above embodiment, the processor writes the data stream 40 consisting of the transmission data 42 and the header 41 in the memory and then issues the transmission request to the ATM port. 1 for A
Alternatively, the TM port may be used.

【0065】図10は、ATMポート10とプロセッサ
6において行なわれるセルの受信動作の手順を示した図
である。ATMポート10は、ATMスイッチ2からの
サブセルをセル受信部15で受信すると(ステップ6
1)、受信セルヘッダ処理部16で、到着したセルのヘ
ッダ解析とヘッダ除去処理を行なった後(ステップ6
2)、バッファ管理23の指示する受信バッファ18内
のバッファエリアに、受信したデータブロックを書き込
む(ステップ63)。1つのデータストリーム構成する
全てのセルが到着したかどうかを調べ(ステップ6
4)、受信すべきセルがあればステップ61に戻り、次
のセル到着を待つ。
FIG. 10 is a diagram showing a procedure of a cell receiving operation performed in the ATM port 10 and the processor 6. The ATM port 10 receives the subcell from the ATM switch 2 by the cell receiving unit 15 (step 6).
1) After the received cell header processing unit 16 performs header analysis and header removal processing on the arrived cell (step 6).
2) Write the received data block in the buffer area in the receiving buffer 18 designated by the buffer management 23 (step 63). It is checked whether or not all cells constituting one data stream have arrived (step 6
4) If there is a cell to be received, return to step 61 and wait for the arrival of the next cell.

【0066】全てのセルの受信を完了した場合には、受
信完了を通知するための割込みをプロセッサにかける
(ステップ65)。プロセッサは、上記割込みを受け付
けると、受信データの種別を確認する(66)。受信デ
ータの種別がリアルタイムのストリームで、かつ、デー
タ長が規定値よりも長い場合は(ステップ67)、受信
バッファ18からプロセッサ6のメモリ7に、DMA機
能を用いてデータの転送を行ない(ステップ68)そう
でない場合には、プロセッサ6が、受信バッファ18か
らメモリ7にデータ転送する(ステップ69)。
When the reception of all cells is completed, an interrupt for notifying the completion of reception is issued to the processor (step 65). Upon receiving the interrupt, the processor confirms the type of received data (66). If the type of the received data is a real-time stream and the data length is longer than the specified value (step 67), the data is transferred from the reception buffer 18 to the memory 7 of the processor 6 using the DMA function (step 67). 68) Otherwise, processor 6 transfers data from receive buffer 18 to memory 7 (step 69).

【0067】なお、DMA転送するか否かの判断基準と
なるデータ長の規定値は、システム設計の段階で決定し
ておく。
The specified value of the data length, which is the criterion for determining whether or not the DMA transfer is performed, is determined at the stage of system design.

【0068】複数のプロセッサ間におけるデータの送受
信は、メモリトゥメモリが原則である。本発明のシステ
ム構成によれば、各プロセッサは、他の任意のプロセッ
サとの間のATMスイッチを介した通信パスが、システ
ムの立ち上げ時に既に設定されているため、通信を開始
するにあたっては、(1)相手プロセッサのバッファが
確保できているか、(2)受信準備ができているか、を
確認してからデータ転送することになる。
Memory-to-memory is a principle for transmitting and receiving data between a plurality of processors. According to the system configuration of the present invention, in each processor, the communication path via the ATM switch with another arbitrary processor is already set when the system is started up. Data transfer will be performed after confirming (1) whether the buffer of the partner processor has been secured or (2) whether reception is ready.

【0069】図11は、2つのプロセッサ間におけるデ
ータ転送手順の一例を示す。プロセッサ1Aは、ATM
ポート10Aに送信要求を出し(ステップ701)、メ
モリ7における送信すべきデータストリームの格納位置
をATMポートに知らせる(ステップ702)。
FIG. 11 shows an example of a data transfer procedure between two processors. Processor 1A is an ATM
A transmission request is issued to the port 10A (step 701), and the storage position of the data stream to be transmitted in the memory 7 is notified to the ATM port (step 702).

【0070】ATMポート10Aは、データストリーム
40のヘッダを解析し、宛先プロセッサに対して、デー
タの受信に必要とするメモリサイズと送信要求コマンド
を含む制御セルを、ATMスイッチ2を経由して、通知
する(ステップ703)。
The ATM port 10A analyzes the header of the data stream 40, and sends a control cell containing a memory size and a transmission request command required for data reception to the destination processor via the ATM switch 2. Notify (step 703).

【0071】上記送信要求コマンドセルを受け取った宛
先プロセッサ1BのATMポート10Bは、プロセッサ
1Bに対して、受信に必要なメモリ容量を示して、受信
要求を出す(ステップ704)。
The ATM port 10B of the destination processor 1B which has received the transmission request command cell indicates a memory capacity required for reception to the processor 1B and issues a reception request (step 704).

【0072】プロセッサ1Bは、受信データを格納する
ためのメモリ領域をATMポート10Bに指示する(ス
テップ705)。この指示を受けて、ATMポート10
Bは、ATMポート10Aに対して、ATMスイッチ2
を経由して、送信許可コマンドを含む制御セルを出す
(ステップ706)。
The processor 1B instructs the ATM port 10B as a memory area for storing the received data (step 705). In response to this instruction, ATM port 10
B is the ATM switch 2 for the ATM port 10A
The control cell including the transmission permission command is output via the (step 706).

【0073】ATMポート10Aは、上記ATMポート
10Bからの制御セルを受信すると、プロセッサ1Aに
対して、送信許可を通知する(ステップ707)。
Upon receiving the control cell from the ATM port 10B, the ATM port 10A notifies the processor 1A of the transmission permission (step 707).

【0074】プロセッサ1Aは、上記送信許可通知に応
答して、ATMポート10Aに、送信すべきデータスト
リームの転送を行う(ステップ708)。
In response to the transmission permission notification, the processor 1A transfers the data stream to be transmitted to the ATM port 10A (step 708).

【0075】ATMポート10Aは、送信すべきデータ
ストリームを複数のビットデータブロックに分割したA
TMセル31の形態で、宛先のATMポート10Bに転
送する(ステップ709)。
The ATM port 10A divides the data stream to be transmitted into a plurality of bit data blocks A
The data is transferred to the destination ATM port 10B in the form of the TM cell 31 (step 709).

【0076】ATMポート10Bは、ATMセルを次々
と受信し、1つのデータストリームを構成する全てのA
TMセルの受信を完了すると、プロセッサ1Bに、受信
データストリームの受信メモリへの転送を指示し(ステ
ップ710)、ATMポート10Aに対して、受信完了
を示す制御セルを出す(ステップ711)。
The ATM port 10B receives ATM cells one after another and receives all the A's constituting one data stream.
When the reception of the TM cell is completed, the processor 1B is instructed to transfer the received data stream to the reception memory (step 710), and the control cell indicating the reception completion is issued to the ATM port 10A (step 711).

【0077】プロセッサ1Bは、受信データストリーム
の受信メモリへの転送が終了すると、ATMポート10
Bに転送完了を知らせ、ATMポート内のバッファを解
放させる(ステップ712)。
When the processor 1B completes the transfer of the received data stream to the receiving memory, the ATM port 10
B is notified of the transfer completion, and the buffer in the ATM port is released (step 712).

【0078】受信完了を示す制御セルを受け取ったAT
Mポート10Aは、プロセッサ1Aに対して、データ送
信動作の終了を伝える(ステップ713)。
AT receiving control cell indicating reception completion
The M port 10A notifies the processor 1A of the end of the data transmission operation (step 713).

【0079】プロセッサ間でリアルタイム系のデータを
転送する場合、データ転送に先立って、例えば受信メモ
リ領域の確保などのための何らかの通信手順をプロセッ
サ間で行なうと、その分の時間遅延がデータのリアルタ
イム性を損なつてしまう。
In the case of transferring real-time data between processors, if some kind of communication procedure for securing a receiving memory area is performed between the processors prior to the data transfer, a time delay corresponding to that procedure causes real-time data transfer. It impairs sex.

【0080】本発明システムによれば、各プロセッサ
が、予めリアルタイムデータ専用に受信メモリ領域を確
保しておき、受信メモリ領域の位置をATMポートに登
録しておくことにより、データ転送開始前のプロセッサ
間の通信手順の全部、あるいはその1部を省くことがで
きる。
According to the system of the present invention, each processor reserves a reception memory area exclusively for real-time data in advance and registers the position of the reception memory area in the ATM port, so that the processor before data transfer is started. It is possible to omit all or part of the communication procedure between the two.

【0081】リアルタイム性のデータは、遅延をできる
だけ少なくするために、ストリームのサイズは、概して
短い。従って、リアルタイムデータの受信用メモリ領域
は、予めトラフィック量を考慮して決定される、複数の
領域を用意する。
For real-time data, the size of the stream is generally short in order to minimize the delay. Therefore, as the receiving memory area for real-time data, a plurality of areas are prepared which are determined in advance in consideration of the traffic volume.

【0082】リアルタイム系のデータは、データの欠落
や、受信誤りが発生した場合でも、データを再送する時
間的な余裕はないので、データ転送期間中のATMポー
ト間の確認手続きの1部を省略可能である。
Since the real-time data has no time to retransmit the data even if a data loss or a reception error occurs, part of the confirmation procedure between the ATM ports during the data transfer period is omitted. It is possible.

【0083】従って、例えば、図12に示すように、プ
ロセッサ1Aが、データ種別フィールド44にリアルタ
イムデータであることを示すコードを含むデータストリ
ームの送信要求を出すと(ステップ802)、ATMポ
ート10Aが、直ちに、送信データストリームを複数の
ブロックに分割し、各ブロックを複数のビットセルブロ
ックに分けてサブセル化し、データストリームに示され
ている宛先に、サブセル31を次々と送る(ステップ8
03)。
Therefore, for example, as shown in FIG. 12, when the processor 1A issues a data stream transmission request including a code indicating that it is real-time data in the data type field 44 (step 802), the ATM port 10A receives the request. Immediately, the transmission data stream is divided into a plurality of blocks, each block is divided into a plurality of bit cell blocks to form subcells, and the subcells 31 are successively sent to the destinations shown in the data stream (step 8).
03).

【0084】ATMポート10Bには、プロセッサ1B
により予め受信メモリの位置情報が登録されている(ス
テップ801)。従って、ATMポート10Bは、サブ
セル31を受信し、データ種別フィールドからこれがリ
アルタイムデータで有ることを認識すると、そのまま受
信動作を続け、1データストリーム分のデータを受信し
終えると、受信バッファに一時的に格納しておいたデー
タを受信メモリへ転送する(ステップ804)。
The processor 1B is connected to the ATM port 10B.
The position information of the receiving memory is registered in advance (step 801). Therefore, when the ATM port 10B receives the subcell 31 and recognizes from the data type field that this is real-time data, the ATM port 10B continues the receiving operation as it is, and when it finishes receiving one data stream of data, it temporarily stores in the reception buffer. The data stored in (1) is transferred to the receiving memory (step 804).

【0085】ATMポート10Aは、1データストリー
ムの送信を終わったところで、送信完了をプロセッサ1
Aに伝える(ステップ805)。一方、データ受信側の
プロセッサ1Bは、受信バッファから転送された受信メ
モリ内のデータの処理が終わり、受信メモリ領域があき
状態なったところで、この受信メモリを再利用できるよ
うに、ATMポート10Bに対して、空き領域として登
録する(ステップ806)。
At the end of transmission of one data stream, the ATM port 10A indicates the completion of transmission by the processor 1
Tell A (step 805). On the other hand, the processor 1B on the data receiving side is connected to the ATM port 10B so that this receiving memory can be reused when the processing of the data in the receiving memory transferred from the receiving buffer is finished and the receiving memory area becomes empty. On the other hand, it is registered as a free area (step 806).

【0086】図13は、音声、データ、映像等、異なっ
た種類のデータの処理、蓄積、通信の機能を備えたマル
チメディア・ワークステーションに、本発明のデータ転
送構造を適用した例を示すものである。
FIG. 13 shows an example in which the data transfer structure of the present invention is applied to a multimedia workstation having functions of processing, storing and communicating different types of data such as voice, data and video. Is.

【0087】このようなマルチメディア・ワークステー
ションにおいては、複雑な情報処理を高速に行なうため
に、例えば、音声および画像に関する処理、通信、蓄積
等を、一般のデータ処理を行なうプロセッサとは別に用
意された各々専用のプロセッサに分担させて行なう、マ
ルチプロセッサ構成が採用される。この場合、これらの
複数のプロセッサ間を、バスによって相互接続した構成
では、同時に複数のプロセッサが他のプロセッサと通信
し合おうとしても、一時には1つのプロセッサしかバス
を使えないため、その他のプロセッサは、待たなくては
ならない。音声や映像と言ったリアルタイム情報の場
合、処理に待ちが発生すると、等時性を保証できなくな
ってしまう。また、専用プロセッサ化することによる高
速化が、低速なプロセッサ間通信のために効果がでない
という問題があった。
In such a multimedia workstation, in order to perform complicated information processing at high speed, for example, processing relating to voice and images, communication, storage, etc. are prepared separately from a processor for performing general data processing. A multiprocessor configuration is adopted in which each dedicated processor is shared. In this case, in the configuration in which the plurality of processors are interconnected by the bus, even if the plurality of processors simultaneously communicate with the other processors, only one processor can use the bus at a time, and thus the other processors can be used at the same time. I have to wait. In the case of real-time information such as voice and video, if waiting occurs in processing, isochronism cannot be guaranteed. Further, there is a problem that the speeding up by using the dedicated processor is not effective due to the low speed communication between the processors.

【0088】図13に示すマルチメディア・ワークステ
ーションは、ワークステーションを構成する複数のプロ
セッサ、例えば、広域網90と接続された通信処理用の
プロセッサ80、ファイルサーバとして機能するファイ
リングプロセッサ81、カメラ等の画像入力装置に接続
されたプロセッサ82、画像処理を行なうためのプロセ
ッサ83、表示画面の複数のウィンドウにマルチメディ
アの画像表示を行なうための表示プロセッサ84、マイ
クから入力されるオーディオ情報を処理する音声入力プ
ロセッサ85、オーディオ情報の編集、加工等を行なう
ためのオーディオ処理プロセッサ86、オーディオ情報
をスピーカに出力するためのオーディオ出力プロセッサ
87を、ATMスイッチの群88で相互接続した構成と
なっている。
The multimedia workstation shown in FIG. 13 includes a plurality of processors forming the workstation, for example, a processor 80 for communication processing connected to the wide area network 90, a filing processor 81 functioning as a file server, a camera, etc. Processor connected to the image input device, a processor 83 for performing image processing, a display processor 84 for displaying multimedia images on a plurality of windows on the display screen, and audio information input from a microphone. A voice input processor 85, an audio processor 86 for editing and processing audio information, and an audio output processor 87 for outputting audio information to a speaker are interconnected by an ATM switch group 88. .

【0089】各プロセッサが他のプロセッサに送るデー
タストリームのヘッダ41は、図3に示したフォーマッ
トのものでもよいが、図14に示すように、ヘッダ部4
1に広域網90におけるセル転送の優先制御のための制
御情報、あるいは再生動作を制御するための時間情報な
どを設定するためのフィールド48を含むフォーマット
を採用してもよい。これにより、通信プロセッサ80に
よる広域網からの受信データのファイルプロセッサ81
への転送動作と、画像入力プロセッサ82からの画像デ
ータの画像処理プロセッサ83への転送動作と、画像処
理プロセッサ83での処理結果の画像表示プロセッサ8
4への転送動作と、オーディオ入力プロセッサ85から
のオーディオデータのオーディオ処理プロセッサ86へ
の転送と、オーディオ処理プロセッサ86での処理結果
をオーディオ出力プロセッサ87への転送動作とを、同
一のデータストリームフォーマットを用いて、同時に並
列的に行なうことが可能になる。
The header 41 of the data stream sent from each processor to another processor may have the format shown in FIG. 3, but as shown in FIG.
A format including a field 48 for setting control information for priority control of cell transfer in the wide area network 90, time information for controlling reproduction operation, etc. may be adopted as the first item. As a result, the file processor 81 for receiving data from the wide area network by the communication processor 80
To the image processing processor 83, the transfer operation of the image data from the image input processor 82 to the image processing processor 83, and the image display processor 8 of the processing result of the image processing processor 83.
4 of the same data stream format, the transfer of the audio data from the audio input processor 85 to the audio processing processor 86, and the transfer operation of the processing result of the audio processing processor 86 to the audio output processor 87. Can be used in parallel at the same time.

【0090】図15は、相互接続すべきプロセッサの数
より多い入出力端子を備えたATMスイッチによって、
プロセッサ間を接続したシステム構成の1例を示す。
FIG. 15 shows an ATM switch having more input / output terminals than the number of processors to be interconnected.
An example of a system configuration in which processors are connected is shown.

【0091】この例では、ATMポートのm本の入力線
29とm本の出力線30を、それぞれp本ずつq個のグ
ループに分割し、各グループのp本の入力線と出力線
を、それぞれ同一のATMスイッチのp本の入力端子お
よび出力端子に接続することによって、少数(q個)の
ATMスイッチでプロセッサ間のデータ転送を可能とし
ている。
In this example, m input lines 29 and m output lines 30 of the ATM port are divided into q groups of p lines each, and the p input lines and output lines of each group are divided into q groups. By connecting to p input terminals and output terminals of the same ATM switch, it is possible to transfer data between processors with a small number (q) of ATM switches.

【0092】バス幅をmビットとし、各ATMスイッチ
がプロセッサの数の整数倍Sに等しい数の入出力端子を
有しているとき、m/S個のATMスイッチが必要とな
る。例えば、図16に示すように、16ビット幅のバス
を持つプロセッサにおいて、1つのATMスイッチ2に
1プロセッサ当たり4ビットずつ接続すれば、ATMス
イッチ2は4段で足りる。すなわち、各ATMスイッチ
の入力数、出力数を各々16個とし、各プロセッサ1A
〜1Dのバスの1〜4ビット目をATMスイッチ2A、
5〜8ビット目をATMスイッチ2B、9〜12ビット
目をATMスイッチ2C、13〜16ビット目をATM
スイッチ2Dに接続することによって、4個のプロセッ
サを同時に並列接続可能となる。
When the bus width is m bits and each ATM switch has a number of input / output terminals equal to an integer multiple S of the number of processors, m / S ATM switches are required. For example, as shown in FIG. 16, in a processor having a 16-bit wide bus, if four bits are connected to one ATM switch 2 for each processor, the ATM switch 2 requires four stages. That is, each ATM switch has 16 inputs and 16 outputs, and each processor 1A
The 1st to 4th bits of the ~ 1D bus to the ATM switch 2A,
5th to 8th bits are ATM switch 2B, 9th to 12th bits are ATM switch 2C, and 13th to 16th bits are ATM.
By connecting to the switch 2D, four processors can be connected in parallel at the same time.

【0093】この場合、1つのスイッチに並列的に入力
された同一グループの複数のサブセルが、宛先プロセッ
サと接続された1つのグループを構成する複数の出力端
子に並列的に出力されるようにするためには、同一グル
ープに属したp個のサブセルが、下位ビットにおいて互
いに異なったルーティング情報をもつ必要がある。
In this case, a plurality of subcells of the same group input in parallel to one switch are output in parallel to a plurality of output terminals forming one group connected to the destination processor. For this purpose, p subcells belonging to the same group need to have different routing information in lower bits.

【0094】例えばp=4の場合、ルーティング情報の
設定は、例えば、図4において、S/P変換器203を
p個用意し、各S/P変換器毎に、レジスタ201から
与えられたルーティング情報の下位ビットに、固有のビ
ット情報「00」、「01」、「10」、「11」を付
加する手段を設けた構成によって実現できる。
For example, when p = 4, the routing information is set by, for example, preparing p S / P converters 203 in FIG. 4, and setting the routing given by the register 201 for each S / P converter. This can be realized by a configuration in which means for adding unique bit information “00”, “01”, “10”, “11” to the lower bits of information is provided.

【0095】上記構成において、1つのスイッチが備え
る入力端子および出力端子の個数に比較して、これに接
続されるプロセッサの個数が著しく少ない場合、全ての
プロセッサ間を唯1個のスイッチで相互接続し、それぞ
れのプロセッサ間通信を複数セルの並列的転送で達成で
きることになる。
In the above configuration, when the number of processors connected to one switch is significantly smaller than the number of input terminals and output terminals provided in one switch, all processors are interconnected by only one switch. However, communication between the respective processors can be achieved by parallel transfer of a plurality of cells.

【0096】[0096]

【発明の効果】本発明によれば、マルチプロセッサシス
テムを構成する各プロセッサユニットは、他のいずれの
プロセッサユニットとも、プロセッサユニットのバス幅
のままで接続可能となる。プロセッサ間の各経路は、ス
イッチ内で独立しており、各プロセッサ間の転送動作
は、他の転送動作終了を待たずして行なうことが可能に
なり、同時並行的に行なうことが可能になる。
According to the present invention, each processor unit constituting the multiprocessor system can be connected to any other processor unit with the bus width of the processor unit unchanged. Each path between the processors is independent in the switch, and the transfer operation between the processors can be performed without waiting for the completion of another transfer operation, and can be performed simultaneously in parallel. .

【0097】従って、計算機内の各プロセッサの間にお
いて、マルチメディア情報特有のリアルタイム性および
等時性を損なうことなく、転送しあうことが可能にな
る。
Therefore, it becomes possible to transfer between the processors in the computer without impairing the real-time property and isochronism peculiar to the multimedia information.

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

【図1】本発明のマルチプロセッサシステムの一実施例
を示す構成図。
FIG. 1 is a configuration diagram showing an embodiment of a multiprocessor system of the present invention.

【図2】図1におけるATMポート10の詳細構成を示
す図。
2 is a diagram showing a detailed configuration of an ATM port 10 in FIG.

【図3】プロセッサから送信されるデータストリームの
構造の1例を示す図。
FIG. 3 is a diagram showing an example of a structure of a data stream transmitted from a processor.

【図4】ATMセルの構成を示す図。FIG. 4 is a diagram showing a structure of an ATM cell.

【図5】ATMポートからATMスイッチに送信される
サブセルの構成を示す図。
FIG. 5 is a diagram showing a configuration of a subcell transmitted from an ATM port to an ATM switch.

【図6】送信セルヘッダ処理部20の詳細構成の1例を
示す図。
FIG. 6 is a diagram showing an example of a detailed configuration of a transmission cell header processing unit 20.

【図7】受信セルヘッダ処理部16の詳細構成の1例を
示す図。
FIG. 7 is a diagram showing an example of a detailed configuration of a reception cell header processing unit 16.

【図8】図1におけるATMスイッチ2の詳細構成の1
例を示す図。
FIG. 8 is a detailed configuration 1 of the ATM switch 2 in FIG.
The figure which shows an example.

【図9】図1のシステムにおいて、1つのプロセッサが
他のプロセッサへデータを送信する手順を示す流れ図。
FIG. 9 is a flowchart showing a procedure in which one processor transmits data to another processor in the system shown in FIG.

【図10】図1のシステムにおいて、1つのプロセッサ
が他のプロセッサからデータを受信する手順を示す流れ
図。
10 is a flowchart showing a procedure in which one processor receives data from another processor in the system of FIG.

【図11】図1に示したシステムにおけるプロセッサ間
のデータの転送手順の他の一実施例を示す図。
11 is a diagram showing another embodiment of a data transfer procedure between processors in the system shown in FIG.

【図12】プロセッサ間の リアルタイムデータに適し
た 転送手順の一実施例を示す図。
FIG. 12 is a diagram showing an example of a transfer procedure suitable for real-time data between processors.

【図13】本発明によるマルチプロセッサ構造を適用し
たマルチメディアシステムの1例を示す図。
FIG. 13 is a diagram showing an example of a multimedia system to which a multiprocessor structure according to the present invention is applied.

【図14】データストリームのヘッダ構造の1例を示す
図。
FIG. 14 is a diagram showing an example of a header structure of a data stream.

【図15】本発明によるマルチプロセッサシステムの他
の実施例を示す構成図。
FIG. 15 is a configuration diagram showing another embodiment of a multiprocessor system according to the present invention.

【図16】図15におけるATMポートとATMスイッ
チとの接続構造を示す斜視図。
16 is a perspective view showing a connection structure between an ATM port and an ATM switch in FIG.

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

1…プロセッサ、2…ATMスイッチ、10…ATMポ
ート、40…データストリーム、41…ヘッダ部、42
…データ部、31…サブセル、32…ルーティング情
報、33…セル番号、35…ビットデータブロック、S
11−S34…単位スイッチ。
1 ... Processor, 2 ... ATM switch, 10 ... ATM port, 40 ... Data stream, 41 ... Header section, 42
... data part, 31 ... subcell, 32 ... routing information, 33 ... cell number, 35 ... bit data block, S
11-S34 ... Unit switch.

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】複数のプロセッサを相互に接続したマルチ
プロセッサシステムにおいて、 入力端子から受け取ったセルを該セルのヘッダ情報によ
って決まる出力端子に転送するスイッチ手段(2)と、 上記各プロセッサを上記スイッチ手段に接続するための
インターフェイス手段とを有し、上記インターフェイス
手段が、 自プロセッサから他のプロセッサに送信すべき複数バイ
トのデータストリームを受取り、該データストリームを
複数のデータブロックに分割し、各データブロックを、
宛先プロセッサによって異なるヘッダと上記データブロ
ックの1部をなす部分データブロックとからなる複数の
セルに変換し、該複数のセルを並列的に上記スイッチ手
段に送出するための第1の手段(19〜22)と、 上記スイッチ手段から複数のセルを並列的に受信し、上
記複数のセルに含まれる部分データブロックを1つのデ
ータブロックに変換するための第2の手段(15〜1
8)とからなることを特徴とするマルチプロセッサシス
テム。
1. In a multiprocessor system in which a plurality of processors are connected to each other, a switch means (2) for transferring a cell received from an input terminal to an output terminal determined by header information of the cell, and each of the processors is switched by the switch. Interface means for connecting to said means, said interface means receiving a data stream of a plurality of bytes to be transmitted from its own processor to another processor, dividing said data stream into a plurality of data blocks, and Block
First means (19 to 19) for converting into a plurality of cells each of which is composed of a different header depending on the destination processor and a partial data block forming a part of the data block and transmitting the plurality of cells in parallel to the switch means. 22) and second means (15-1) for receiving a plurality of cells in parallel from the switch means and converting partial data blocks contained in the plurality of cells into one data block.
8) A multiprocessor system comprising:
【請求項2】前記スイッチ手段(2)が、複数のセルフ
ルーティングスイッチ(2A〜2M)からなり、 前記第1の手段と第2の手段が、上記複数のセルフルー
ティングスイッチのそれぞれと接続されていることを特
徴とする請求項1に記載のマルチプロセッサシステム。
2. The switch means (2) comprises a plurality of self-routing switches (2A to 2M), and the first means and the second means are connected to each of the plurality of self-routing switches. The multiprocessor system according to claim 1, wherein:
【請求項3】前記スイッチ手段(2)が、前記送信デー
タの1バイトのビット数に等しい個数のセルフルーティ
ングスイッチ(2A〜2M)からなり、 前記第1の手段が、前記データブロックを、ビット位置
に対応した複数のビットデータブロックに分割し、各ビ
ットデータブロック毎に前記セルを形成し、各セルを、
前記送信データの各バイトのビット位置と対応したセル
フルーティングスイッチに送出することを特徴とする請
求項1に記載のマルチプロセッサシステム。
3. The switch means (2) comprises a number of self-routing switches (2A to 2M) equal to the number of bits of 1 byte of the transmission data, and the first means sets the data block to bits. Divide into a plurality of bit data blocks corresponding to the position, form the cell for each bit data block, each cell,
The multiprocessor system according to claim 1, wherein the transmission data is sent to a self-routing switch corresponding to a bit position of each byte of the transmission data.
【請求項4】複数のプロセッサを相互に接続したマルチ
プロセッサシステムにおいて、 複数の入力端子のうちの1つから受け取ったセルを該セ
ルのヘッダ情報によって決まる複数の出力端子のうちの
1つに転送するためのスイッチ手段(2)と、 上記各プロセッサが接続されている内部バスと上記スイ
ッチ手段との間に設けられたセル送受信のためのインタ
ーフェイス手段(10)とを有し、 上記インターフェイス手段(10)が、 該インタフェースを上記スイッチ手段の複数の入力端子
に接続するための第1群の信号線と、 該インタフェースを上記スイッチ手段の複数の出力端子
に接続するための第2群の信号線と、 上記プロセッサから受け取った他のプロセッサに送信す
べきのデータストリームを所定長さを持つ複数のデータ
ブロックに分割し、各データブロックを、宛先プロセッ
サによって異なるヘッダと、上記データブロックの特定
のビット位置のビット情報からなるビットデータブロッ
クとを含む複数のセルに変換し、該複数のセルを上記第
1群の信号線に並列的に送出するための手段(19〜2
2)と、 上記第2群の信号線から複数のセルを並列
的に受信し、該複数のセルに含まれるビットデータブロ
ックを1つのデータブロックに変換するための手段(1
5〜18)とからなることを特徴とするマルチプロセッ
サシステム。
4. In a multiprocessor system in which a plurality of processors are connected to each other, a cell received from one of a plurality of input terminals is transferred to one of a plurality of output terminals determined by header information of the cell. A switch means (2) for operating the processor, and an interface means (10) for cell transmission / reception provided between the internal bus to which each processor is connected and the switch means. 10) a first group of signal lines for connecting the interface to a plurality of input terminals of the switch means, and a second group of signal lines for connecting the interface to a plurality of output terminals of the switch means And a data stream received from the above processor and to be transmitted to another processor, a plurality of data blocks having a predetermined length. And converting each data block into a plurality of cells including a header that differs depending on the destination processor and a bit data block consisting of bit information at a specific bit position of the data block, and the plurality of cells are converted into the first cells. Means for sending in parallel to the signal lines of the group (19-2
2) and means for receiving a plurality of cells in parallel from the second group of signal lines and converting bit data blocks included in the plurality of cells into one data block (1
5 to 18).
【請求項5】前記スイッチ手段(2)が、複数のセルフ
ルーティングスイッチ(2A〜2M)からなり、 前記第1、第2の信号線群が、それぞれ上記各セルフル
ーティングスイッチの該プロセッサに固有の入力端子お
よび出力端子に接続されていることを特徴とする請求項
4に記載のマルチプロセッサシステム。
5. The switch means (2) comprises a plurality of self-routing switches (2A-2M), and the first and second signal line groups are unique to the processor of each self-routing switch. The multiprocessor system according to claim 4, wherein the multiprocessor system is connected to an input terminal and an output terminal.
【請求項6】複数のプロセッサをスイッチ手段を介して
相互接続しておき、 データの送信元となる第1のプロセッサ側で、送信すべ
き複数バイトからなるデータブロックをそれぞれが各バ
イトの同一ビット位置のデータからなる複数のビットデ
ータブロックに分割し、各ビットデータブロックに宛先
となる第2のプロセッサに固有のルーチング情報を含む
ヘッダを付加することによって複数のセルを形成し、上
記複数のセルを上記スイッチ手段に並列的に送信し、 上記スイッチ手段によって、上記複数のセルを上記第2
のプロセッサに並列的に転送し、 上記第2のプロセッサ側で、受信セルに含まれるビット
データブロックを1つのデータブロックに変換すること
を特徴とするプロセッサ間通信方法。
6. A plurality of processors are interconnected via switch means, and a data block consisting of a plurality of bytes to be transmitted is the same bit of each byte on the side of the first processor which is a data transmission source. A plurality of cells are formed by dividing the bit data block into a plurality of bit data blocks, and adding a header containing routing information unique to the destination second processor to each bit data block. To the switch means in parallel, and the switch means causes the plurality of cells to be transmitted to the second cell.
In parallel, and the second processor converts the bit data block included in the received cell into one data block on the second processor side.
【請求項7】前記スイッチ手段が、それぞれ複数の入力
端子と複数の出力端子とをもつ複数のスイッチからな
り、前記各プロセッサが上記各スイッチと少なくとも1
対の入力線および出力線を介して接続され、 前記第1のプロセッサが、前記複数のセルを複数のスイ
ッチに送出することを特徴とする請求項5に記載の通信
方法。
7. The switch means comprises a plurality of switches each having a plurality of input terminals and a plurality of output terminals, and each processor includes at least one of the switches.
The communication method according to claim 5, wherein the first processor is connected via a pair of input lines and output lines, and the first processor sends the plurality of cells to a plurality of switches.
JP21720593A 1992-09-07 1993-09-01 Multiprocessor system and inter-processor communication method Pending JPH06187311A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21720593A JPH06187311A (en) 1992-09-07 1993-09-01 Multiprocessor system and inter-processor communication method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP23797592 1992-09-07
JP4-237975 1992-09-07
JP21720593A JPH06187311A (en) 1992-09-07 1993-09-01 Multiprocessor system and inter-processor communication method

Publications (1)

Publication Number Publication Date
JPH06187311A true JPH06187311A (en) 1994-07-08

Family

ID=26521885

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21720593A Pending JPH06187311A (en) 1992-09-07 1993-09-01 Multiprocessor system and inter-processor communication method

Country Status (1)

Country Link
JP (1) JPH06187311A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100453817B1 (en) * 2002-06-05 2004-10-20 한국전자통신연구원 A high speed router system
JP2008160570A (en) * 2006-12-25 2008-07-10 Fujitsu Ltd Packet relaying method and device
US8116305B2 (en) 2008-04-02 2012-02-14 Alaxala Networks Corporation Multi-plane cell switch fabric system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100453817B1 (en) * 2002-06-05 2004-10-20 한국전자통신연구원 A high speed router system
JP2008160570A (en) * 2006-12-25 2008-07-10 Fujitsu Ltd Packet relaying method and device
US8116305B2 (en) 2008-04-02 2012-02-14 Alaxala Networks Corporation Multi-plane cell switch fabric system

Similar Documents

Publication Publication Date Title
US5550978A (en) Multiprocessor system having switches for routing cells in parallel among processors by splitting data into blocks having numbers of cells equals to proccessor bus width
JP2842522B2 (en) ATM switch and control method thereof
EP0413899B1 (en) Packet switching system having bus matrix switch
JP4090510B2 (en) Computer interface for direct mapping of application data
JP3730471B2 (en) Packet transfer device
JPH0223109B2 (en)
JPH0771111B2 (en) Packet exchange processor
JPS63294036A (en) Header driving type packet switchboard
JPS61214694A (en) Switching unit for data transmission
JPH0720122B2 (en) Packet communication system using ring type transmission line
JPH04229748A (en) Method and circuit apparatus for route selection of message packet
US20020196745A1 (en) Method for the broadcasting of a data packet within a switched network based on an optimized calculation of the spanning tree
US7218638B2 (en) Switch operation scheduling mechanism with concurrent connection and queue scheduling
JPH06187311A (en) Multiprocessor system and inter-processor communication method
US7272151B2 (en) Centralized switching fabric scheduler supporting simultaneous updates
JPH05227211A (en) Packet switching system
JP2002344514A (en) Multi-cast method and device thereof
JP2778520B2 (en) Multicast method and switching switch
JP2989263B2 (en) High speed data packet switching circuit and method
JP3476660B2 (en) ATM switch
KR100250465B1 (en) Method of message transmission on high speed parallel computer
JP2953362B2 (en) LAN switching device
JPH0828743B2 (en) Integrated bucket exchange method
JP2962667B2 (en) Asynchronous transfer mode switching system
JP3008837B2 (en) LAN switching device