New! View global litigation for patent families

JPH0713956A - Simd type parallel computer data transfer device - Google Patents

Simd type parallel computer data transfer device

Info

Publication number
JPH0713956A
JPH0713956A JP15715293A JP15715293A JPH0713956A JP H0713956 A JPH0713956 A JP H0713956A JP 15715293 A JP15715293 A JP 15715293A JP 15715293 A JP15715293 A JP 15715293A JP H0713956 A JPH0713956 A JP H0713956A
Authority
JP
Grant status
Application
Patent type
Prior art keywords
data
holding
register
number
board
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
JP15715293A
Other languages
Japanese (ja)
Inventor
Takashi Yoshida
尊 吉田
Original Assignee
Toshiba Corp
株式会社東芝
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date

Links

Abstract

PURPOSE:To provide a data transfer device whereby adjacent communication is executed at a higher speed in an SIMD type parallel computer at the time when an inter-board latency exists. CONSTITUTION:Respective element processors are provided with a data holding register with the depth of the same number as latency increase by an inter-board data transfer part, a BRD flag indicating whether or not data held by the respective data holding registers is BRD and a data selecting F/F holding information indicating whether or not BRD reaches the most end of the data holding registers. Moreover, a selector selecting data from the data holding register by the value of the data selecting F/F, a counter capable of counting the number obtained by adding the number of the element processor where data in the board passes through and the number of an inter-board register stage and a communication register, are provided.

Description

【発明の詳細な説明】 DETAILED DESCRIPTION OF THE INVENTION

【0001】 [0001]

【産業上の利用分野】本発明は、並列計算機の要素プロセッサ間通信回路に関する。 The present invention relates to a inter-element processors communication circuit of a parallel computer.

【0002】 [0002]

【従来の技術】SIMD型並列マシンは、同期的に動作するため、一斉に同一方向にデータを転送するといった事が容易に行える。 BACKGROUND ART SIMD type parallel machine to operate synchronously, easily able such transfers data to the same direction in unison. 例えばリング状の隣接結合路を、シフト転送して数個先のPEにデータを転送するといった処理が良く行われる。 For example a ring-shaped adjacent coupling path, processing such that transfer data shifted transferred to several destination PE is performed well.

【0003】図3に要素プロセッサの1次元隣接接合の図を示す。 [0003] FIG. 3 shows a diagram of a one-dimensional neighbor joining element processor. 隣接通信は以下のような動作で転送を行う。 Adjacent communication transfers in the following operation.
まず各要素プロセッサ内で、データを転送レジスタにセットする。 First in each element processor, it is set to transfer register data. 転送レジスタは隣の要素プロセッサの転送レジスタとパイプラインレジスタ状に連結されている。 Transfer register is coupled to the transfer register and the pipeline registers like adjacent element processors. 次に、転送命令で隣の要素プロセッサの転送レジスタにデータを転送する。 Then forwards the data to the transfer register next to the element processors in transfer instructions. SIMDであるため、このデータ転送は各転送レジスタで一斉に行われる。 Since a SIMD, this data transfer is performed simultaneously at each transfer register. 隣の要素プロセッサにデータを送る場合は転送命令を1回、離れた要素プロセッサに送る場合は同転送命令を複数回繰り返す。 Once transfer instruction when sending data next to the element processor, if sent to distant element processors repeated a plurality of times the transfer instruction. その後、各要素プロセッサで転送レジスタからデータを取り込む。 Thereafter, it fetches data from the transfer registers in each element processor. これらの動作により、1個あるいは複数個先の要素プロセッサにデータを転送することが出来る。 By these operations, it is possible to transfer data to one or a plurality destination element processor.

【0004】また、これらSIMD型並列計算機においては、全ての要素プロセッサが等価に扱われる必要があるため、ボード内部での要素プロセッサ間の接続と、ボード間にまたがる要素はプロセッサの接合部分は同じものを使用している。 Further, in these SIMD type parallel computer, it is necessary that all the element processors are handled equivalently, the connection between element processors inside the board, elements spanning between the board connecting portion processors same We are using things.

【0005】 [0005]

【発明が解決しようとする課題】通常、並列計算機ではプロセッサの動作周波数が低いため、隣接通信での動作周波数は余り時間にならない。 [0007] Normally, due to the low operating frequency of the processor in the parallel computer, the operating frequency of the adjacent communications does not become less time. すなわちプロセッサの動作周波数に対して、隣接通信のハード的な速度が十分早いことになる。 That against operating frequency of the processor, hardware speed of the adjacent communication is sufficiently fast. しかしながら、近年はプロセッサの動作周波数が向上しており、SIMD型並列計算機では色々な問題が出てくる。 However, in recent years has improved the operating frequency of the processor, it comes out various problems in the SIMD type parallel computer. そのひとつとしては上記に挙げた、 As one listed above,
一斉のPE間シフト転送である。 A simultaneous of PE between shift transfer. 同一ボード内では、現在の技術力でも200〜300MHzで転送は出来そうである。 Within the same board, which is the current likely to be transferred in 200~300MHz it is made of technology. しかし、並列度の規模が大きくなり、複数ボードでシステムを構成した場合、ボード間の隣接通信は、 However, scale of parallelism is increased, in the case of constituting the system with multiple boards, neighboring communication between boards,
同一ボード内での隣接通信よりははるかに負荷が大きく、ボード内部での転送速度とのアンバランスが出てくる。 Large much load than the adjacent communications within the same board, imbalance between the transfer velocity inside the board emerges.

【0006】そのため、ボード間の隣接通信の部分に、 [0006] Therefore, a portion of the adjacent communication between the board,
レジスタを挿入し、転送をECL等の高速バッファで行い、転送速度の差を縮める事が考えられる。 Register insert the transfer was carried out at a high speed buffer of the ECL like, it is conceivable to reduce the difference in transfer rate. この場合、 in this case,
レジスタが挿入されるため、ボード内の隣接通信のレーテンシよりも、1あるいは2レーテンシが増える。 Since registers are inserted, than latency adjacent communication within the board, 1 or 2 latency increases. この場合、普通にシフト転送を行うと、ボード間のレジスタのに最初に入っている意味のない値(以下BRD)が間に挿入される形になる。 In this case, when the normal shift forward, the free form meanings initially entered to register between boards value (hereinafter BRD) is inserted between. また、隣接通信をボード内部の高速にデータ転送出来るところもボード間転送のレートに合わせてしまい、間になにもない場合に対して、ボード間1回隔てるごとに1ステージあるいは2ステージの到達遅れが生じ、とくに連続したシフト動作による長距離のデータ転送では、転送時間が2倍、3倍にもなってしまう。 Also, will in accordance with the rate also between boards transfer where possible data transfer adjacent communication speed of the internal board, for the case there is nothing between the arrival of one stage or two stages each separating one between the boards delay occurs, the long-distance data transfer by particular continuous shift operation, the transfer time twice, becomes even tripled.

【0007】そこで、本発明はこのような事情に鑑みてなされたものであり、その目的とするところは、ボード間のデータ転送部分が低速であっても、隣接通信動作のレートを落とすことなくデータ転送を行うことが出来るデータ転送装置の実現を目的とする。 [0007] The present invention has been made in view of such circumstances, and an object, the data transfer portion between the board is a low speed, without reducing the rate of the adjacent communication operation for the purpose of the realization of a data transfer apparatus that can perform data transfer.

【0008】 [0008]

【課題を解決するための手段】上記問題を解決するために、本発明では、各要素プロセッサには、ボード間のデータ転送部分によるレーテンシの増加と同数の深さのパイプライン状のレジスタ(以下データ保持レジスタと呼ぶ)と、各データ保持レジスタには保持しているデータがBRDかどうかを示すBRDフラグと、BRDがデータ保持レジスタの一番端に到達したかどうかの情報を保持するF/F(以下データ選択用F/Fと呼ぶ)と、データ選択用F/Fの値により、データ保持レジスタからデータを選択するセレクタと、ボード上のデータの通過する要素プロセッサ数とボード間のレジスタ段数を合計した数をカウントする事が可能なカウンタと、通信レジスタから構成される。 In order to solve the above problems SUMMARY OF THE INVENTION In the present invention, each element processor, the data transfer portion by the same number as the increase in the latency of the depth pipelined registers between boards (hereinafter and referred) data holding register, data held in the data holding register holds the BRD flag indicating whether BRD, whether information BRD has reached the extreme end of the data holding register F / and F (hereinafter referred to as data selecting F / F), the value of the data selection for F / F, a selector for selecting data from the data holding register, the number of element processors through the data on the board and board-to-board registers and counter can count the number of the total number of stages, a communication register.

【0009】さらに、ボード間接合部に置いて、ボード内の要素プロセッサ間の通信にかかる時間をp、ボード間の転送にかかる時間をtとしたとき、送り手側の出力レジスタと受け手側の入力レジスタの組をt/p組と、 Furthermore, at the junction between the boards, when p the time for communication between element processors in the board, the time required for transfer between the board and the t, of the sender output register and receiver side and t / p of sets of input registers,
送り手順には周期tでt/p個のp時間ずつずれたクロックを発生するクロック発生回路と、受け手側には前記クロック発生回路の出力を受けて入力レジスタから取り出すデータを選択するデータ選択回路から構成される。 A clock generation circuit for feeding instructions for generating a clock shifted by t / p number of p time period t, the data selection circuit to the receiver side to select the data to be extracted from the input register receiving the output of the clock generator circuit It consists of.

【0010】さらに、1つのボード上の要素プロセッサ数がa、ボード間の転送レーテンシがb、データの転送先がn個隣の要素プロセッサであるとき、転送命令をn Furthermore, one number element processors on the board are a, the transfer latency between boards b, when the transfer destination of the data is n adjacent element processors of the transfer instruction n
+b×(1+n mod a)個の隣接通信命令を排出するコンパイラにより、動作する。 + By b × (1 + n mod a) number of discharging the adjacent communication instruction compiler operates.

【0011】また、各ボード間転送レジスタと、通信レジスタと、データ保持手段には、転送処理開始時に前記ボード間転送レジスタに入っていたデータかどうかを識別する手段と、該識別手段により前記ボード間転送レジスタのデータが前記データ保持手段の一番端に到達したかどうかを認識し、到達したことを保持する状態保持手段により、前記通信レジスタのデータか、データ保持手段の最後段のデータかを選択する選択手段をもっている。 Further, the board and the board between the transfer registers, and the communication register, the data holding means, means for identifying whether the data the was in the board between the transfer registers during the transfer process starts, the identification means data between the transfer registers to recognize whether reached endmost of said data holding means, the state holding means for holding the arrival, whether the data of the communication register, or data in the last stages of data holding means it has a selection means for selecting.

【0012】また、各ボード間転送レジスタの前記識別手段をセットし、通信レジスタとデータ保持手段の識別手段の一部と前記状態保持手段をリセットする機能を持つ状態設定命令を、上記コンパイラの出力による転送命令列に挿入する、あるいは前記状態設定命令が転送命令をかねる場合は、前記転送命令列の一部を前記状態設定命令におきかえる事により、n>aの場合でも、転送処理を正常に制御し得る命令列により上記データの選択手段をソフト的に制御する。 Further, to set the identification means of each board between transfer registers, the state setting instruction having the function of resetting a portion between the state holding means of the identification means of the communication registers and data holding means, the compiler output to insert the transfer instruction sequence by, or when said condition setting instruction serving as a transfer instruction, by replacing a portion of the transfer instruction sequence in the state setting instruction, even if the n> a, normally a transfer process the instruction sequence capable of controlling soft controls the selection means of said data.

【0013】また、ボード上のデータの通過する要素プロセッサ数とボード間のレジスタ段数を合計した数をカウントする事が可能なカウント手段により、同カウント手段がゼロに戻るときあるいは設定された値になったときに前記状態保持手段と、データ保持手段の識別手段の一部をリセットすることにより、n>aの場合でも、データ選択手段をハード的に制御する制御部をもっている。 Further, the total number can be counted count means the passage register stages between element processors count and board that the data on the board or in the value set when the counting means returns to zero and said state holding means when it becomes, by resetting the part of the identification means of the data holding means, even in the case of n> a, has a control unit for controlling the data selection means by hardware.

【0014】さらに、上記ボード内データ転送に使用する素子とボード間データ転送に使用する素子において、 Furthermore, in the element used in the device and the board between the data transfer using the data transfer the board,
駆動力がボード内部の通信用素子<ボード間の通信用素子となるような、別々の素子を使用する。 Driving force such that the communication device between the boards inside the communication device <board, using separate elements.

【0015】 [0015]

【作用】本発明では、送られてきたデータをボード間のレーテンシの数と同数の深さのパイプラインレジスタであるデータ保持レジスタに保持し、1bitデータ選択用F/Fの値により、最終的に送られてきたデータを、 According to the present invention holds the data sent to the data holding register is the number of pipeline registers the same number of depth of latency between boards, the value of 1bit data selecting F / F, the final the data that has been sent to,
転送レジスタの値か、データ保持レジスタ最終段の値かを選択しする。 If the value of the transfer register, to select whether the value of the data holding register final stage. データ選択用F/Fの動作は、BRDフラグを見て、データ保持レジスタ最終段に入るデータがBRDならば、データ選択用F/Fをセットする。 The operation of the data selection F / F are watches BRD flag, data entering the data holding register final stage if BRD, sets the data selection F / F are. また、1枚のボード上で転送径路上につらなるPEの台数+ボード間の転送レーテンシ分だけカウントできるカウンタを設け、隣接通信を1回実行する毎にカウントアップするし、1枚のボード上で転送径路上につらなるPE Also, the counter can count only transfer latency amount between one on the board contiguous on the transfer path of PE number + board provided to count up the adjacent communication each time to run once, on one board PE continuing on the transfer path
の台数+ボード間の転送レーテンシだけカウントアップしたら、カウンタ自信とデータ選択用F/Fおよび通信レジスタとデータ保持レジスタのBRDフラグをリセットする。 After counting up by the transfer latency between the number + board, it resets the BRD flag counter confidence and data selecting F / F are and communication registers and data holding register. データ選択用F/Fおよび各BRDフラグのリセットは、カウンタがある設定値に達した時にリセットするようにしても良い。 Data Reset Selection F / F are and each BRD flag may be reset when it reaches the set value in the counter. あるいは、カウンタを使用せず、リセットを行う命令により、ソフトの制御で適時リセットを行っても良い。 Alternatively, without using the counter, the instruction resetting may be performed timely reset the control software. 同リセット命令は、転送命令を兼ねる事により、カウンタを使用したハードによる制御と同等の転送性能を出す個とが出来る。 The reset command, the transfer by also serving as a command, put out the equivalent of transfer performance and control by hardware using the counter number and can be. 一連の転送命令終了の後、データの選択はF/Fの内容により、データ保持レジスタ最終段のデータか、転送レジスタのデータかを選択して自PEに取り込む。 After a series of the transfer command completion, selection of data by the content of F / F, or data in the data holding register final stage selects whether the data transfer register incorporated into the self PE.

【0016】また、ボード間データ転送では、クロック生成回路からの立ち上がり時間のずれた低周波数のクロックが各出力レジスタにつながれており、各レジスタはPEの動作クロックでのp時間毎に順次送られてくるデータをラッチし、データが受け手側レジスタに届くまでの時間nだけ保持する。 [0016] In the board between the data transfer, the low frequency deviation of the rise time from the clock generation circuit clock are connected to respective output registers, each register is sequentially transmitted every p time in the operation clock of the PE latches come data, data held by the time n to reach the receiver side register. クロック生成回路の出力は受け手側の入力データ選択回路にも送られる。 The output of the clock generating circuit is fed to input data selection circuit of the receiver side. 同信号を見て、入力データ選択回路は、受け手側ボードの通信レジスタに転送するデータを、入力レジスタから選択する。 Look at the same signal, the input data selection circuit, data to be transferred to the communication registers of the receiver-side board, selects from the input register.
すなわち、動作周波数の低い入力/出力レジスタの複数の組を、位相ずらして使用する事により、高いスループットを実現する。 That is, a plurality of pairs of low input / output registers operating frequency, by using shifted phases, to achieve high throughput.

【0017】 [0017]

【実施例】以下に本発明の一実施例を述べる。 EXAMPLES describe an embodiment of the present invention are described below.

【0018】まず要素プロセッサ(以下PEと呼ぶ)内部の構成について述べる。 [0018] First (hereinafter referred to as PE) element processors described internal structure. ボード間のデータ転送では、 In the data transfer between the board,
レーテンシはあるものの、スループットは同一ボード上での隣接通信のスループットと同等であることを仮定する。 Although latency is, the throughput is assumed to be equivalent to the adjacent communication on the same board throughput. 本実施例では、ボード間の通信機構は、送り手ボード側に転送レジスタを1つ、受け手側に転送レジスタを1つもち、同レジスタ間は同一ボード上の隣接通信と同等の転送速度でデータ転送が行えるものとする。 In this embodiment, the communication mechanism between the boards, one transfer registers to the sender board side, 1 Tsumochi the transfer register to the receiver side, between the register data in the same transfer speed with the adjacent communication on the same board it is assumed that enables transfer. 例えば、要素プロセッサ間はGTL等の小振幅のバッファを用いて高速転送を行うが、ボード間の配線をGTLでドライブするのは苦しいため、ボード間はECLのバッファを用いる。 For example, between the elements the processor performs the high-speed transfer using small-amplitude buffer such as GTL, have a painful to drive the wiring between boards in GTL, between boards using a buffer of ECL. そうしたとき、ボード間の回路での動作は、あるクロックで、送り手側PEの通信レジスタから、送り手側のボードの通信レジスタにデータを転送する。 When it does, the operation of the circuit between boards, in a certain clock, the communication registers of the sender PE, and transfers the data to the communication register of the sender board. 次のクロックで、送り手側のボードの通信レジスタから受け手側のボードの通信レジスタにデータを転送する。 In the next clock, and transfers the data to the communication registers of the receiver side of the board from the communication registers of the sender board. 次のクロックで受け手側のボードの通信レジスタから受け手側PEの通信レジスタにデータを転送する。 It transfers the data to the communication register of receiver side PE from the communication registers of the receiver side of the board at the next clock. この場合、ボード間でのデータの転送のレーテンシは2となる。 In this case, latency of data transfer between boards is 2. ただし、ボード間のデータ転送はパイプライン動作を行うので、スループットは同一ボード内でのPE通信と同じである。 However, the data transfer between the boards since the pipeline operation, the throughput is the same as PE communications within the same board.

【0019】本実施例では、32PEをリング状に1次元結合した場合を想定する。 [0019] In this embodiment, a case bound 1-dimensional 32PE in a ring shape. ボードは4枚からなり、各ボードには8台のPEが載っているものとする。 Board consists of four, each board shall resting the eight PE. このとき、通信のためのレジスタは、各PEの通信レジスタとボード間の転送レジスタをあわせて計40個のレジスタがリング状に結合されている事になる(図4)。 At this time, the register for communication, a total of 40 registers together transfer register between communication registers and board of each PE is that is coupled in a ring shape (Fig. 4).

【0020】例えば、ボード間のレーテンシを考えないで良い場合、4つ右隣のPEにデータを転送したい時、 [0020] For example, if it is not considered the latency between boards, if you want to transfer the data to the PE of the four right adjacent,
各PEで通信レジスタにデータをセットした後、4回の右方向転送命令を行うと、通常では図5のように全てのPEで4つ隣に送られるが、ボード間の転送にレーテンシがある場合、図6のように、PE4〜7の通信レジスタにはそれぞれPE0〜3のデータが届いているが、P After setting the data to the communication register in each PE, when performing four right transfer instruction, in the normal are sent to four neighbor at all PE as shown in Fig. 5, there is a latency in the transfer between the boards If, as in FIG. 6, although each arrived data PE0~3 the communication register PE4~7, P
E2,3の通信レジスタには、ボード間の転送レジスタに入っていた意味のないデータ(BRD)が届いている。 The communication register of E2,3 is, there is no meaning was in the transfer register of board-to-board data (BRD) has arrived. また、PE0,1の通信レジスタにはそれぞれPE Further, each of the communication register of PE0,1 PE
30,31のデータが届いており、このデータは2つ左隣のPRからのデータである。 30 and 31 are received data, but this data is the data from the PR of two immediate left.

【0021】ボード上の通信径路上につらなるPEの数をa、ボード間のレーテンシをb、通常の場合の転送数をnとすると、n+b×(1+n mod a)回、転送すれば、全てのPEに必要なデータ転送ができる。 [0021] The number of PE leading to the communication path on the board a, latency and b between boards, if the number of transfers in the normal and n, n + b × (1 + n mod a) times, be transferred, all It can transfer data needed for PE. 本実施例では、a=8、b=2である。 In this embodiment, it is a = 8, b = 2. 上記例であるn= Is the above example n =
4の場合、ボード間のレーテンシが2の場合は4+2× For 4, 4 + 2 × If latency between boards is 2
(1+4 mod 8)=6で、6回の転送命令を行えば、全てのPEに、4つのデータがとどく。 In (1 + 4 mod 8) = 6, by performing the six transfer instruction, to all PE, reaching four data. n=12では、16回の転送命令で届く。 In n = 12, arrive in 16 times of transfer instructions.

【0022】しかしながら、n=4の場合、単純に6回転送命令を実行すると、命令を終了した時点で、PE0 [0022] However, when n = 4, when executing a simple six transfer instruction, after completing the instruction, PE0
〜3の通信レジスタには4つの隣の正しいデータが入っているが、PE4,5の通信レジスタにはBRDが入っており、PE6,7の転送レジスタには、それぞれPE Although contains to 3 of the communication register in the four neighboring correct data, the communication registers of PE4,5 is contains BRD, the transfer register PE6,7, respectively PE
0,1のデータが入っている。 0 and 1 of data is entered. これは6左隣のPEの値であり、本来PE6,7が受け取るべきデータではない(図7)。 This is the value of the PE of 6 left neighbor, not the data to the original PE6,7 receive (Figure 7).

【0023】そのため、本特許では、各PEに複数段のデータ保持レジスタを設置し、数クロック前に転送レジスタに入ってきたデータを保持し、転送命令が終了し、 [0023] Therefore, in this patent has established a data holding register in a plurality of stages in each PE, it holds data coming into the transfer register before several clocks, transfer instruction is completed,
常時転送レジスタから値を読み出すときに、転送レジスタおよびデータ保持レジスタの中から、読み出すデータを選択することにより、正常なデータ転送処理を行う回路を提案する。 When reading from the constant transfer register value, from among the transfer register and the data holding register, by selecting the read data, we propose a circuit which performs normal data transfer process.

【0024】本実施例のPE内部の転送部の構成を述べる。 [0024] describe the structure of PE inside the transfer unit of the present embodiment. 図1に本実施例のPE内部の転送部のブロック図を示す。 It shows a block diagram of a PE internal transfer portion of the embodiment in FIG. PE内部には、通信レジスタの他に、2クロック前までの通信レジスタに入ってきたデータを保持するためのデータ保持レジスタ2個(データ保持レジスタ0, PE inside, in addition to the communication registers, second data holding register two for holding data that has entered the communication registers to clock before (data holding register 0,
1)を設ける。 1) providing a. データ保持レジスタは図1に示す通り、 Data holding registers as shown in FIG. 1,
通信レジスタからデータをシフトするパイプライン状に接続されている。 It is connected to a pipeline to shift data from the communication registers. この他、同保持レジスタとともに、保持しているデータがBRDかどうかを示すBRDフラグ、取り出すデータを選択するセレクタ、セレクタの選択信号となる値を保持する1bitのフリップフロップ(データ選択用F/F)からなる。 In addition, with the holding register, the holding to BRD flag indicating whether the data BRD has a selector for selecting the retrieve data, the flip-flop (data selecting F / F are the 1bit holding a value that is a selector selection signal ) it consists of. さらに、必要な場合は、同選択F/FおよびBRDフラグをリセットするためのカウンタを設ける。 Further, if necessary, provided with a counter for resetting said selected F / F and BRD flag. カウンタはボード上のPEの数+ボード間のレーテンシだけカウントできるもので、本実施例では9までカウントすると0に戻るカウンタである。 Counter as it can count only latency between number + boards PE on board, in the present embodiment is a counter back to 0 when it counts up to 9.

【0025】まずn<aの場合を考える。 [0025] First, consider the case of n <a. これは、どのPEも、BRDの組が最大1回しか通らない場合である。 This is how PE also the case when the set of BRD does not pass only once up. BRDの組とは、1つのボード間のレジスタのBR The set of BRD, the register between one board BR
Dのことで、本実施例では、BRD1組は連続した2つのBRDからなる。 By and D, in the present embodiment, BRD1 set consists of two BRD continuous. 図8に転送命令6回を終了した時点での各レジスタの内容を示す。 It shows the contents of the registers at the time of completion of the transfer instruction 6 times in FIG. 図から分かるとおり、P As it can be seen from the Figure, P
E0〜PE3は通信レジスタの値を読み込み、PE4〜 E0~PE3 reads the value of the communication register, PE4~
7はデータ保持レジスタ1の値を読み込めば良い。 7 may read the value of the data holding register 1. これは他のボードでも同様で、ボード内8PEのうち、番号の若い4個のPEは通信レジスタからデータを読み込み、番号の大きい4個は保持レジスタ1のデータを読み込む。 This also applies to other boards, among the board in 8PE, the four PE younger number reads data from the communication registers, four large numbers read data holding register 1.

【0026】例えば転送回数が1多い場合、すなわちn [0026] For example, if the number of transfers is one more, ie n
=5であって、転送命令回数が7である場合は、図9に示すように図8の状態が1右にシフトした状態となる。 = A 5, a transfer instruction count is 7, a state in which the state is shifted to 1 right in FIG. 8 as shown in FIG.
この場合、PE0〜4が通信レジスタから値を読みだし、PE5〜7がデータ保持レジスタ1からデータを読み出す。 In this case, read the value from PE0~4 communication register reads data PE5~7 from the data holding register 1.

【0027】ここで、セレクタに入れる選択信号であるが、図8,9を見ると、BRDがデータ保持レジスタ1 [0027] Here, although a selection signal Add to the selector, referring to FIG. 8, 9, BRD data hold register 1
に達する以前はデータ保持レジスタ1を選択し、BRD Previously selects the data holding register 1 to reach, BRD
がデータ保持レジスタ1に達した後は、転送レジスタを選択すれば良い事になる。 There after reaching the data holding register 1, it is sufficient to select a transfer register. このため選択信号の機構は1 The mechanism of this for selection signal is 1
bitのF/F(データセレクト用F/F)でよく、F Well in the bit of F / F (for data select F / F), F
/Fの値をセットするタイミングは、BRDが保持レジスタ1にラッチされたと同時にセットされれば良い。 / Timing for setting the value of F is only to be set at the same time as the BRD is latched in the holding register 1. これは、データがBRDであるかどうかを示すフラグ(以下BRDフラグ)をデータにつけて各転送レジスタおよびデータ保持レジスタに保持しておけば良い。 This data may if holding a is whether each transfer register and a data holding register wearing flag (hereinafter BRD flag) to the data indicating the BRD. 各PE Each PE
で、通信レジスタにデータをセットする際、BRDフラグをリセットし、ボード間の転送レジスタのBRDフラグをセットする。 In, when loading data to the communication register, resets the BRD flag, sets the BRD flag of transfer registers between boards. データセレクト用F/Fのセットはセットが非同期の場合は保持レジスタ1のBRDフラグを、同期の場合は保持レジスタ0のBRDフラグを見る。 Set of data selector F / F are the case set is asynchronously BRD flag holding register 1, if the synchronization view BRD flag holding register 0.

【0028】新たな転送処理を行う場合は、通信レジスタへのデータのセットと同時にデータセレクト用F/F [0028] When performing a new transfer process, at the same time the data selection for the F / F with a set of data to the communication register
をリセットする。 The reset. 保持レジスタ0,1は、データは何でもよいが、BRDフラグがセットされた状態ではよくないので、通信レジスタへのデータのセットと同時にBR Holding register 0 and 1, the data can be anything, but since not good in a state where the BRD flag is set, the set of data to the communication register simultaneously with BR
Dフラグをリセットする。 To reset the D flag. 同時に、ボード間の転送レジスタのBRDフラグをセットする。 At the same time, it sets the BRD flag of transfer registers between boards.

【0029】これらの機構により、n<aの場合は正常動作する。 [0029] By these mechanisms, in the case of n <a normal operation.

【0030】次にn≧aの場合を考える。 [0030] Next, consider the case of n ≧ a.

【0031】n=7の時、転送命令が終了した時点、すなわち転送命令を9回行った時点では、全てのPEは読み出すレジスタの選択を通信レジスタにしているはずである。 [0031] When n = 7, the time the transfer command is completed, i.e. at the time when the transfer instruction was 9 times, should have the communication register the selection of all of the PE reads register. ここでnが1増えると、転送回数は3増える事になる。 Now n is increased by one, the number of transfers is three more things. n=8で転送命令を終了した場合、すなわち転送命令を12回行った時点での各PEのレジスタの状態を図10に示す。 If you exit the transfer instruction n = 8, i.e. FIG. 10 the state of the register of each PE at the time of performing 12 times the transfer instruction. 図10からも分かるとおり、PE0は通信レジスタを選択し、PE1〜7は保持レジスタ1を選択しなければならない。 As can be seen from FIG. 10, PE0 selects a communication register, PE1~7 must select the holding register 1. このため、どこかでデータセレクト用F/Fをリセットする必要がある。 For this reason, somewhere there is a need to reset the data selection for the F / F in. また、9回の転送命令を終了した時点から、さらに転送を行う場合は、9回の転送命令が終了の時点がちょうど転送を始める初期状態、すなわち、転送レジスタにデータをセットした状態と同じであるから、9回の転送命令を終了した時点がさらに転送命令を実行する場合は、各PEの保持レジスタのBRDもフラグもリセットする必要がある。 Moreover, from the point of completion of the nine transfer instruction further when transferring the initial state in which nine transfer instruction begins just transfer time of termination, i.e., the same as the state in which data is set in the transfer register because there, 9 times if the time when the transfer instruction has been completed for further executing the transfer instruction, BRD holding register of each PE also flag must also be reset.

【0032】上記セット&リセットを行う方法として、 [0032] As a method of performing the above-described set and reset,
命令を新たに設ける事が考えられる。 It is conceivable to provide the instruction to new. 例えば、BRDフラグのセットおよびデータセレクト用F/Fのリセットを行う命令を設けるか、同処理+転送を同時に行う命令を設ける。 For example, providing a command for resetting the set and the data select F / F are the BRD flags provided instructions for performing the treatment + transfer simultaneously. コンパイラにより、転送命令9回を実行した後にセット/リセットの命令を挿入するか、10回目の転送命令をセット/リセット+転送命令に置き換えることにより、BRDフラグおよびデータセレクト用F/F By the compiler, to insert the transfer instruction 9 times After executing the set / reset instruction, by replacing 10 th transfer instruction to set / reset + transfer instruction, BRD flag and data select F / F are
のリセットを行う。 Perform a reset. この方法によれば、1枚のボード上に載せるPEの数が変わっても、容易に対応する事が可能となる。 According to this method, even changes in the number of PE to put on a single board, it is possible to easily correspond.

【0033】リセットするタイミングは、ボード上のP [0033] reset the timing, P on the board
E数をa、ボード間のレーテンシをbとした時、a+b When you have a, the latency between the board and b the E number, a + b
の整数倍の転送命令を実行する時である。 It is time to perform transfer instruction integer multiple of the. ただし、一連の転送処理で実行される隣接転送命令の回数は、 (a+b)×i+b≦転送命令回数<(a+b)×(i However, the number of adjacent transfer instruction to be executed in a series of transfer processes, (a + b) × i + b ≦ transfer instruction count <(a + b) × (i
+1) i:整数 となる。 +1) i: an integer. 上記例では、7PE隣ならば、転送命令9回で、8PE隣ならば12回の転送命令を行う。 In the above example, if 7PE next, the transfer instruction 9 times, and transfers instruction 12 times if 8PE next. つまり、 That is,
10回目,11回目の転送を終了した時点で、データを読み出すことはない。 10 th, at the time of the completion of the transfer of the 11 th, it is not possible to read the data. そのため、データ選択用F/Fのリセットは、(a+b)×iから、(a+b)×i+b Therefore, resetting the data selecting F / F are from (a + b) × i, (a + b) × i + b
−1番目のどの転送命令の実行時にリセットすればよい。 -1st which transfer may be reset at runtime instructions. ただし、どの命令でリセットを行うかの決定は、どのBRDフラグをリセットするかに注意を払う必要がある。 However, if a reset at any instruction decision, it is necessary to pay attention to either reset which BRD flag.

【0034】(a+b)×iから、(a+b)×i+b [0034] from (a + b) × i, (a + b) × i + b
−1番目の各PEのデータ保持レジスタ内のBRD保持レジスタ内のBRDを考えると、(a+b)×i番目の時には、有効なBRDはPE0の通信レジスタにしかなく、データ保持レジスタ内のBRDは全て無効でなければならない。 Given the -1st BRD in BRD holding register in the data holding register for each PE, when (a + b) × i th is valid BRD is only the communication registers of the PE0, BRD in data hold register all must be invalid. (a+b)×i+1番目の時は、PE0のデータ保持レジスタの1段目に有効なBRDか現れる。 (A + b) × i + 1 th time, it appears a valid BRD to the first-stage PE0 data holding register.
そのため、もし(a+b)×i+1番目でセット/リセット処理を行う場合は、データ保持レジスタの2段目以降のBRDフラグをセットする必要がある。 Therefore, if if (a + b) performing × i + 1 th in the set / reset processing, it is necessary to set the BRD flag of the second and subsequent stages of data holding register. (a+b) (A + b)
×i+2番目では、データ保持レジスタの3段目以降をセットする。 In × i + 2-th, and it sets the third stage after the data holding register. (a+b)×i+b−2番目では、データ保持レジスタの最終段のBRDフラグのみをセットすれば良く、(a+b)×i+b−1番目では、BRDフラグをリセットする必要はない。 The (a + b) × i + b-2 th, may be set only BRD flag of the last stage of the data holding register, the (a + b) × i + b-1 th, it is not necessary to reset the BRD flag.

【0035】リセット処理を行うためだけに命令数を増やしたくない場合は、ハード的に転送命令数をカウントし、自動的にセット/リセット動作を行うことを考える。 [0035] If you do not want to increase the number of instructions only in order to perform the reset process is hard to count the number of transfer instructions, automatically think that you do a set / reset operation. そのために、ハード的にセット/リセット処理を行うために、各PEにカウンタを設ける。 Therefore, hard-to perform a set / reset processing, providing a counter to each PE.

【0036】本実施例での具体的な構成を示す。 [0036] A specific configuration of the present embodiment. 本実施例では、1ボード上のPEが8、ボード間のレーテンシが2であるので、9までカウント出来るカウンタが有れば良い。 In this embodiment, PE is 8 on one board, the latency between boards is 2, it is sufficient counts be counter to 9. 9までカウントアップした後は0に戻る。 After the count up to 9 returns to zero. 0に戻るときが10の整数倍の転送命令であるので、この時データ選択F/Fをリセットし、データ保持レジスタのBRDフラグをリセットすればよい。 Since when returning to 0 is an integer multiple transfer instructions of 10, this time to reset the data selection F / F, may be reset BRD flag data holding register.

【0037】具体例としては、9回目の転送命令が終了した時点で、BRDはPR6のデータ保持レジスタ1とPE7のデータ保持レジスタ0,1に存在する。 [0037] As specific examples, when the transfer instruction 9th is finished, BRD is present in the data holding register 0 and 1 of the data holding register 1 and PE7 of PR6. 10回目の転送命令処理時に、データ選択F/Fをリセットすると同時にPE7のデータ保持レジスタのBRDのフラグをセットすればよい。 During the 10 th transfer instruction processing may be sets a flag BRD data holding registers at the same time resetting the data selection F / F PE7. 11回目の転送命令処理時にデータ選択フラグをリセットする場合は、リセットするB To reset the 11 th data selection flag during transfer instruction processing is reset to B
RDフラグがないため、効率的となる。 Since RD flag is not present, an efficient.

【0038】以上の回路を用いる事により、n>aの転送も可能となる。 [0038] By using the circuit described above, it is possible transfer of n> a.

【0039】上記実施例では、転送方向を右方向を例としたが、逆方向への転送も同一の回路で処理できる。 [0039] In the above embodiment, the transfer direction and the right direction as an example, be transferred in the reverse direction can be processed by the same circuit.

【0040】上記実施例で述べた回路での柔軟性を考える。 [0040] Given the flexibility of the circuit described in the above examples. 具体的には、1ボード内のPEの台数の変化と、ボード間の転送レーテンシの変化への対応である。 Specifically, the change in the number of PE in one board, a response to changes in the transfer latency between boards.

【0041】まず、1ボード内いのPEの台数の変化に関して考える。 [0041] First of all, think about the change in the number of 1 board within the physician of PE. PEの台数が変化した場合に変更が必要となるのは、カウンタのカウント数と、データ選択F/ The PE of number is required to change when changed, the count of the counter, the data selection F /
Fのリセットタイミングである。 F, which is a reset timing. これはボード間の転送レーテンシが変化した場合にも対応が必要なところである。 This is where the necessary support even if the transfer latency is changed between the boards.

【0042】カウンタのカウント数、およびデータ選択F/Fのリセットタイミングを自由に変更できるようにするために、以下の構成で実現する。 The counter counts, and the reset timing of the data selected F / F in order to be able to freely change is realized by the following configuration. ある程度の余裕を持った数までカウントできるリセット付きカウンタと、 And reset with a counter that can count up to a number with a certain degree of margin,
カウント数の最大値を保持するカウント数保持レジスタと、同カウント数保持レジスタの値とカウンタの値から、カウンタへのリセット信号を生成するカウンタリセット回路と、データ選択F/Fをリセットするタイミングを保持するレジスタと、同レジスタとカウンタの値から、データ選択F/Fへのリセット信号を生成するデータ選択F/Fリセット信号生成回路で構成する。 And the count number holding register for holding the maximum value of the count, the values ​​of the counters of the count holding register, a counter reset circuit for generating a reset signal to the counter, the timing for resetting the data selection F / F a register for holding, the value of the register and counter, which consists of data selected F / F reset signal generating circuit for generating a reset signal to the data selection F / F. 図11 Figure 11
に構成図を示す。 It shows a configuration diagram. 上記2つのレジスタは、プロセッサの状態レジスタの1つとして扱えば、余分な命令を増やすことはない。 The two registers, be handled as one of the status register of the processor, it is not to increase the extra instructions.

【0043】リセットのタイミングをソフトで制御する場合は、上記カウンタ及びカウンタ制御回路は必要なくなる。 [0043] When controlling the timing of the reset in software, the counter and the counter control circuit is not required.

【0044】次に、ボード間のデータ転送レーテンシの変化への対応考える。 Next, consider responding to changes in the data transfer latency between the boards. カウンタ、データ選択F/Fのリセットタイミングに関する対応は、上記1ボード上のP Counter, measures relating reset timing of the data selected F / F is, P on the one board
E数の変化に対する対応と同じ構成で対処できる。 It can be addressed with the same configuration as the corresponding relative change in E number. この他問題となるのは、データ保持レジスタの段数である。 At its other problem is the number of stages of data holding register.
データ保持レジスタの段数は、ボード間データ転送レーテンシ数に等しい。 The number of stages of data holding register is equal to the number of data transfer latency between the boards. そのため、レーテンシが変化すれば、それにあわせて段数も変化する必要がある。 Therefore, if latency is changed, the number of stages must also be changed accordingly.

【0045】そこで、上記レーテンシの変化に対応するために、予想される最大のレーテンシの数と同じ段数のデータ保持レジスタと、レーテンシの値を保持するレーテンシ保持レジスタと、同レーテンシ保持レジスタの値により、前記データ保持レジスタの各出力から1つのデータを選択する保持データセレクタで構成し、データ選択F/Fで選択されるデータは、保持データセレクタにより選択されたデータと、転送レジスタのデータのどちらかを選択するように構成する。 [0045] Therefore, in order to respond to changes in the latency, the data holding register of the same number as the number of maximum latency expected, the latency holding register for holding the value of the latency, the value of the latency holding register , composed of held data selector for selecting one data from each output of the data holding register, data selected by the data selection F / F is the data selected by the held data selector, which of the data in the transfer register or a configured to select. 図12に構成図を示す。 Figure 12 shows the block diagram.

【0046】レーテンシ数保持レジスタに入っている値により、複数あるデータ保持レジスタから1つのデータ及びBRDフラグを選択する。 [0046] The values ​​are in the latency number holding register, selects one of data and BRD flag from the plurality of data holding register. 選択されたデータ保持レジスタがそのレーテンシでの最下段のレジスタということになり、同レジスタの値を転送レジスタのデータとの選択データとし、BRDフラグはセット信号としてデータ選択F/Fに送られる。 Selected data holding register is the fact that the bottom of the register in the latency, the value of the register and the selection data with the data transfer register, BRD flag is sent to the data selection F / F as a set signal.

【0047】制御をソフトで行う場合は、上記例から、 [0047] In the case of performing control with software, from the above example,
カウンタを省くことが出来る。 Counter can be dispensed with. ソフトによる制御を行うための制御ソフト生成フロー図を示すと図14の様になる。 When showing a control software product flow diagram for performing control by software becomes as in FIG. 14.

【0048】次に、ボード間のデータ転送機構の実施例を述べる。 Next, describing the embodiment of the data transfer mechanism between the boards. 図2に本発明の一実施例を示す。 It shows an embodiment of the present invention in FIG. 上記PE内部の転送回路の実施例では、ボード間のデータ転送速度がボード上のPE間の転送速度と同じとした。 In the embodiment of the PE internal transfer circuit, the data transfer rate between the board is the same as the transfer speed between PE on the board. そのため、図2でいえば送り手側は出力レジスタ0と受け手側入力レジスタ0の一組だけで構成されていた事になる。 Therefore, the hand-side feed speaking in Figure 2 will be was composed of only one set of output register 0 and receiver-side input register 0.
本実施例では、ボード間のデータ転送速度がボード上のPEの転送速度の3倍かかる場合を考える。 In this embodiment, a case where data transfer rate between the board take 3 times the transfer rate of PE on the board. ボード上のPE間の転送速度が5nsであり、ボード間が15ns Transfer rate between PE on the board is 5 ns, between the boards is 15ns
かかるとする。 Take that.

【0049】送り手側ボードに出力レジスタ0,1,2 [0049] output to the sender board registers 0, 1, 2
の3つのレジスタを設け、送り手側ボードのPEからくるデータを格納するレジスタを、200MHz動作で5 Three registers provided in the register for storing the PE coming from data of the sender board, 5 at 200MHz operation
ns毎に出力レジスタ選択回路で選択して、データをセットする。 Select the output register selection circuit for each ns, it sets the data. 各出力レジスタには1対1対応で受け手側ボード上に入力レジスタ0,1,2が接続されており、レジスタ間の転送は66.67MHz動作の15nsで行う。 Each output register is connected to the input register 0,1,2 on receiver side board in a one-to-one correspondence, transfers between registers is performed at 15ns of 66.67MHz operation. クロック生成回路では、5nsずつ位相のずれた3 In the clock generation circuit, phase shifted by 5 ns 3
種類の66.67MHzクロックを生成し、各出力レジスタに与えられる。 To produce different kinds of 66.67MHz clock given to each of the output register. また、同3クロックはそれぞれの出力レジスタに対応したデータ信号とともに、受け手側ボードに送られ、入力レジスタに与えられる。 Further, the data signals corresponding to the three clocks each output register is sent to the receiver side board, applied to the input register. また、同3 In addition, the same 3
クロック信号は受け手側ボードの入力データ選択回路に入り、3相のクロックから、どの入力レジスタからデータを読み出すかを選択する。 The clock signal enters the input data selection circuit on the receiver side board, a three-phase clock, selects whether read data from which the input register. 図13に、クロック生成回路からの3つの出力と、3つの出力レジスタの内容と、 13, and three output from the clock generation circuit, and the contents of the three output registers,
受け手側ボードのセレクタからの出力を示す。 It shows the output from the selector of the receiver-side board.

【0050】以上のようにして、ボード間の、転送に時間がかかる場合でも、スループットを高くすることが出来る。 [0050] As described above, between the board, even if it takes time to transfer, it is possible to increase the throughput.

【0051】 [0051]

【発明の効果】以上のように、本発明によれば、ボード上の通信経路上につらなるPEの数をa、ボード間のレーテンシをb、通常の場合の転送数をnとすると、n+ As is evident from the foregoing description, according to the present invention, the number of PE leading to the communication path on the board a, the latency between boards b, and the number of transfers in the normal and n, n +
b×(1+n mod a)回転送すれば、全てのPE If b × (1 + n mod a) times the transfer, all the PE
に必要なデータが1ボードでシステムを構築した場合と同様のスループットで転送できる。 Data necessary to forward the same throughput and if you build a system with 1 board.

【図面の簡単な説明】 BRIEF DESCRIPTION OF THE DRAWINGS

【図1】ボード間レーテンシ2の場合のPE内の通信部のブロック図。 Block diagram of a communication unit in the PE in the case of FIG. 1 between the board latency 2.

【図2】ボード間の転送時間がPEの動クロックの3倍遅い場合のボード間データ転送部。 [Figure 2] Board-to-unit data forwarding section when 3 times slower dynamic clock transfer time PE between boards.

【図3】PEの1次元結合例。 [3] 1-dimensional binding example of PE.

【図4】4ボード32PEの1次元リング結合。 [Figure 4] 4 one-dimensional ring binding board 32PE.

【図5】32PEの1次元リング結合理想モデルでデータを4PE右隣に送った例。 FIG. 5 is an example of sending the data to 4PE right next to a one-dimensional ring binding ideal model of 32PE.

【図6】32PEの1次元リング結合ボード間2レーテンシでデータを4PE右隣に送った例。 [6] example that sent the data to 4PE right next to a two-latency between the one-dimensional ring binding board of 32PE.

【図7】32PEの1次元リング結合ボード間2レーテンシでデータを6PE右隣に送った例。 [7] Examples that sent the data to the 6PE right next to a two-latency between the one-dimensional ring binding board of 32PE.

【図8】図1のモデルで6PE右に転送した時のレジスタの状態図。 [8] state diagram of the register at the time of the transfer to the 6PE right in the model of Figure 1.

【図9】図1のモデルで7PE右に転送した時のレジスタの状態図。 [9] state diagram of the register when the transfer 7PE right model in FIG.

【図10】図1のモデルで12PE右に転送した時のレジスタの状態図。 [10] state diagram of the register when the transfer 12PE right model in FIG.

【図11】ボード間レーテンシに柔軟性をもたせたPE [11] PE remembering flexible board between latency
内通信部のカウンタ部のブロック図。 Block diagram of the counter unit of the internal communication unit.

【図12】ボード間レーテンシ最大3までに柔軟性をもたせたPE内通信部のブロック図。 Figure 12 is a block diagram of a PE in the communication unit remembering flexibility to between boards latency up to 3.

【図13】図2でのクロック生成回路からの出力タイミングチャート。 [13] The output timing chart of the clock generation circuit in FIG.

【図14】ソフトによる制御を行うための制御ソフト生成フロー図。 [14] control software generation flow diagram for control by the software.

Claims (2)

    【特許請求の範囲】 [The claims]
  1. 【請求項1】 ボード間を跨ぐ通信路等でレーテンシ0 1. A latency in a communication path such as to cross the inter-board 0
    での転送が不可能であり、ボード間の通信を行うためのボード間転送レジスタをもつ並列計算機の隣接通信路に備えられるデータ転送装置において、 各要素プロセッサには、隣接通信を行うための通信レジスタと、同通信レジスタのもつデータを保持する、ボード間のデータ転送に必要なレーテンシと同等の深さのパイプラインレジスタ状のデータ保持手段と、複数回のデータ転送命令の後、最終的に受け取るべきデータを、通信レジスタと、データ保持手段から選択する選択手段とからなることを特徴とするSIMD型並列計算機データ転送装置。 It is impossible to transfer in the data transfer device provided in the adjacent channel of a parallel computer having a board-to-board transfer registers for communicating between boards, to each element processor, communication for performing adjacent communication a register to hold the data that has the same communication registers, the latency equivalent depth of the pipeline register like data holding means necessary for data transfer between the boards, after multiple data transfer instruction, finally the data to be received, a communication register, SIMD type parallel computer data transfer apparatus characterized by comprising a selection means for selecting from the data holding means. さらに、1つのボード上の要素プロセッサ数がa、ボード間の転送レーテンシがb、データの転送先がn個隣の要素プロセッサであるとき、転送命令をn+ Furthermore, one number element processors on the board are a, the transfer latency between boards b, when the transfer destination of the data is n adjacent element processors of the transfer instruction n +
    b×(1+n mod a)個の隣接通信命令を排出するコンパイラにより、動作する。 The b × (1 + n mod a) pieces compiler for discharging neighboring communication instructions operate. また、各ボード間転送レジスタと、通信レジスタと、データ保持手段には、転送処理開始時に前記ボード間転送レジスタに入っていたデータかどうかを識別する手段と、該識別手段により前記ボード間転送レジスタのデータが前記データ保持手段の一番端に到達したかどうかを認識し、到達したことを保持する状態保持手段により、前記通信レジスタのデータか、データ保持手段の最後段のデータかを選択する選択手段をもっている。 Also, the between-board transfer registers, and the communication register, the data holding means, means for identifying whether the data the was in the board between the transfer registers during the transfer process starts, the inter-board transfer registers by identification means recognizing whether data has reached the extreme end of the data holding means, the state holding means for holding the arrival, whether the data of the communication register, selects whether data in the last stages of data holding means it has a selection means. また、各ボード間転送レジスタの前記識別手段をセットし、通信レジスタとデータ保持手段の識別手段の一部と前記状態保持手段をリセットする機能を持つ状態設定命令を、上記コンパイラの出力による転送命令列に挿入する、あるいは前記状態設定命令が転送命令をかねる場合は、前記転送命令列の一部を前記状態設定命令におきかえる事により、n>aの場合でも、転送処理を正常に制御し得る命令列により上記データの選択手段をソフト的に制御する。 Also, sets the identification means of each board between transfer registers, the state setting instruction having the function of resetting a portion between the state holding means of the identification means of the communication registers and data holding means, the transfer instruction by the output of the compiler inserted into the column, or the case where the state setting instruction serving as a transfer instruction, by replacing a portion of the transfer instruction sequence in the state setting instruction, even if the n> a, may successfully control the transfer process the instruction sequence for controlling the selecting means of the data by software. また、ボード上のデータの通過する要素プロセッサ数とボード間のレジスタ段数を合計した数をカウントする事が可能なカウント手段により、同カウント手段がゼロに戻るときあるいは設定された値になったときに前記状態保持手段と、データ保持手段の識別手段の一部をリセットすることにより、n>aの場合でも、データ選択手段をハード的に制御する制御部をもっている。 Also, the total number can be counted count means the passage register stages between element processors count and board that the data on board, when the counting means becomes or the value set when returning to zero wherein the state holding means, by resetting the part of the identification means of the data holding means, even in the case of n> a, has a control unit for controlling the data selection means by hardware on.
  2. 【請求項2】 ボード間を跨ぐ通信路等でレーテンシ0 Wherein latency in the communication channel or the like to cross the inter-board 0
    での転送が不可能であり、ボード間の通信を行うためのボード間転送レジスタをもつ並列計算機の隣接通信路に備えられるデータ転送装置において、 ボード内の要素プロセッサ間の通信にかかる時間をp、 It is impossible to transfer in the data transfer device provided in the adjacent channel of a parallel computer having a board-to-board transfer registers for communicating between boards, the time required for communication between element processors in the board p ,
    ボード間の転送にかかる時間をtとしたときに、送り手側の出力レジスタと受け手側の入力レジスタの組をt/ The time it takes to transfer between board when a t, a set of output registers and receiver side of the input register of the sender t /
    p組と、送り手側には周期tでt/p個のp時間ずつずれたクロックを発生する発生回路と、受け手側には前記クロック発生回路の出力を受けて入力レジスタから取り出すデータを選択するデータ選択回路から構成され、動作時間の入力出力レジスタt/p組をp時間ずつずらして動作させることにより、転送レートのtボード間転送で、スループットがpとなることを特徴とするSIMD Selection and p group, a generating circuit for generating a clock shifted by t / p number of p time period t to the sender, the data on the receiver side to retrieve from the input register receiving the output of the clock generator circuit and a data selection circuit for, an input output register t / p sets of operation time by operating with shifted by p times, with t between boards transfer the transfer rate, SIMD, characterized in that the throughput becomes p
    型並列計算機データ転送装置。 Type parallel computer data transfer device. さらに、上記ボード内データ転送に使用する素子とボード間データ転送に使用する素子において、駆動力がボード内部の通信用素子<ボード間の通信用素子となるような、別々の素子を使用する。 Furthermore, the element used in the device and the board between the data transfer using the data transfer the board, the driving force such that the communication device between the boards inside the communication device <board, using separate elements.
JP15715293A 1993-06-28 1993-06-28 Simd type parallel computer data transfer device Pending JPH0713956A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15715293A JPH0713956A (en) 1993-06-28 1993-06-28 Simd type parallel computer data transfer device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15715293A JPH0713956A (en) 1993-06-28 1993-06-28 Simd type parallel computer data transfer device

Publications (1)

Publication Number Publication Date
JPH0713956A true true JPH0713956A (en) 1995-01-17

Family

ID=15643320

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15715293A Pending JPH0713956A (en) 1993-06-28 1993-06-28 Simd type parallel computer data transfer device

Country Status (1)

Country Link
JP (1) JPH0713956A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2348983A (en) * 1999-04-09 2000-10-18 Pixelfusion Ltd Parallel data processing system
JP2008512762A (en) * 2004-09-09 2008-04-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Interconnects in Simd processor architecture
US7506136B2 (en) 1999-04-09 2009-03-17 Clearspeed Technology Plc Parallel data processing apparatus
US7526630B2 (en) 1999-04-09 2009-04-28 Clearspeed Technology, Plc Parallel data processing apparatus
WO2009131007A1 (en) * 2008-04-22 2009-10-29 日本電気株式会社 Simd parallel computer system, simd parallel computing method, and control program
US7627736B2 (en) 1999-04-09 2009-12-01 Clearspeed Technology Plc Thread manager to control an array of processing elements

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2348983A (en) * 1999-04-09 2000-10-18 Pixelfusion Ltd Parallel data processing system
US7506136B2 (en) 1999-04-09 2009-03-17 Clearspeed Technology Plc Parallel data processing apparatus
US7526630B2 (en) 1999-04-09 2009-04-28 Clearspeed Technology, Plc Parallel data processing apparatus
US7627736B2 (en) 1999-04-09 2009-12-01 Clearspeed Technology Plc Thread manager to control an array of processing elements
JP2008512762A (en) * 2004-09-09 2008-04-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Interconnects in Simd processor architecture
WO2009131007A1 (en) * 2008-04-22 2009-10-29 日本電気株式会社 Simd parallel computer system, simd parallel computing method, and control program

Similar Documents

Publication Publication Date Title
US5418970A (en) Parallel processing system with processor array with processing elements addressing associated memories using host supplied address value and base register content
US4858107A (en) Computer device display system using conditionally asynchronous memory accessing by video display controller
US5041971A (en) Memory accessing switch network
US4873626A (en) Parallel processing system with processor array having memory system included in system memory
US4920480A (en) Digital signal processor
US5165023A (en) Parallel processing system with processor array and network communications system for transmitting messages of variable length
US6879596B1 (en) System and method for systolic array sorting of information segments
US5105424A (en) Inter-computer message routing system with each computer having separate routinng automata for each dimension of the network
US5258752A (en) Broad band digital exchange
US5761522A (en) Program control system programmable to selectively execute a plurality of programs
US5896380A (en) Multi-core ATM switch with cells in the core from an inlet for an outlet being aligned
US6119215A (en) Synchronization and control system for an arrayed processing engine
US5369635A (en) High bit rate cell switching element in CMOS technology
US4031512A (en) Communications network for general purpose data communications in a heterogeneous environment
US6101599A (en) System for context switching between processing elements in a pipeline of processing elements
US5448715A (en) Dual clock domain interface between CPU and memory bus
US4630258A (en) Packet switched multiport memory NXM switch node and processing method
US4891787A (en) Parallel processing system with processor array having SIMD/MIMD instruction processing
US4837676A (en) MIMD instruction flow computer architecture
US5214769A (en) Multiprocessor control system
US5534796A (en) Self-clocking pipeline register
US4649512A (en) Interface circuit having a shift register inserted between a data transmission unit and a data reception unit
US5838985A (en) Parallel processor with memory/ALU inhibiting feature
US6195739B1 (en) Method and apparatus for passing data among processor complex stages of a pipelined processing engine
US7006021B1 (en) Low power serializer circuit and method