JP5403380B2 - Crossbar switch, vector processing apparatus, and crossbar control method - Google Patents
Crossbar switch, vector processing apparatus, and crossbar control method Download PDFInfo
- Publication number
- JP5403380B2 JP5403380B2 JP2012041415A JP2012041415A JP5403380B2 JP 5403380 B2 JP5403380 B2 JP 5403380B2 JP 2012041415 A JP2012041415 A JP 2012041415A JP 2012041415 A JP2012041415 A JP 2012041415A JP 5403380 B2 JP5403380 B2 JP 5403380B2
- Authority
- JP
- Japan
- Prior art keywords
- buffer
- word
- crossbar
- crosspoint
- elements
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 36
- 238000012545 processing Methods 0.000 title claims description 13
- 239000000872 buffer Substances 0.000 claims description 229
- 230000001174 ascending effect Effects 0.000 claims 3
- 230000000694 effects Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 4
- 239000007853 buffer solution Substances 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
Images
Landscapes
- Complex Calculations (AREA)
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Description
本発明は、クロスバスイッチに関し、特に、クロスポイントバッファの利用効率向上に関する。 The present invention relates to a crossbar switch, and more particularly to improvement in utilization efficiency of a crosspoint buffer.
ベクトル型コンピュータでは、クロスバを通過する通過順序を保証しつつ、クロスバで要素を調停しなければならないときがある。また、性能も必要とされるため、ハードウェア量をかけて、クロスポイントバッファを使う技術も存在する。 In a vector type computer, it is sometimes necessary to arbitrate elements with a crossbar while guaranteeing a passing order through the crossbar. In addition, since performance is also required, there is a technology that uses a crosspoint buffer with a large amount of hardware.
背景技術によるベクトル処理装置の例を、図9〜図14を用いて説明する。図9、図11、図13は、クロスバの構成を示し、図10、図12、図14はそれぞれに対応する動作例を示している。 An example of a vector processing apparatus according to the background art will be described with reference to FIGS. 9, FIG. 11, and FIG. 13 show the configuration of the crossbar, and FIG. 10, FIG. 12, and FIG.
図9は一般的なクロスバスイッチの構成を示している。ここでは、クロスバスイッチの一例として、入力バッファが16バッファあり(I00〜I15)、出力バッファが16バッファある(O00〜O15 先頭文字はアルファベットの”オー”)、16x16のクロスバを想定している。 FIG. 9 shows a configuration of a general crossbar switch. Here, as an example of the crossbar switch, a 16 × 16 crossbar is assumed in which there are 16 input buffers (I00 to I15), 16 output buffers (O00 to O15, the first character is “O” in alphabets).
図10が、図9に対応する動作例である。今、最初にS00〜S15の要素、次にL0〜L1の要素、さらに次にM0の要素、さらに次にN0の要素が入力バッファから流れるものとする。 FIG. 10 shows an operation example corresponding to FIG. Assume that the elements of S00 to S15 first, the elements of L0 to L1, then the element of M0, and then the element of N0 flow from the input buffer first.
各要素が1サイクルをかけてクロスバを抜け、順次出力バッファに出力されている。S00で見ると時間0サイクルに入力バッファから発行され、時間1サイクルに出力バッファから出力されている。
Each element exits the crossbar in one cycle and is sequentially output to the output buffer. In S00, it is issued from the input buffer at
ここで、クロスバを通過する要素は、入力バッファへ到着順を、出力バッファにおいても守らなければならないアーキテクチャを想定している。これは後述する本発明に置いても同様とする。すなわち、図10の例においては、L0、L1は、S00〜S15を追い越して、出力バッファO01に出力されてはならず、同様にM0がL0、L1を追い越して、出力バッファO01に出力されてはならないアーキテクチャを想定している。 Here, an element that passes through the crossbar is assumed to be an architecture in which the order of arrival in the input buffer must be maintained in the output buffer. The same applies to the present invention described later. In other words, in the example of FIG. 10, L0 and L1 must not be output to the output buffer O01 overtaking S00 to S15, and similarly M0 can be output to the output buffer O01 overtaking L0 and L1. An architecture that should not be assumed.
本例では、全要素が出力バッファO01に集中しているため、クロスバの調停部は、各要素を調停して、順次要素を出力しなければならない。つまり、調停の結果S00からS15が順次発行されているが、16番目の要素であるS15は、15T待たされてから発行されている。 In this example, since all the elements are concentrated in the output buffer O01, the arbitrating unit of the crossbar must arbitrate each element and sequentially output the elements. That is, the arbitration results S00 to S15 are sequentially issued, but the 16th element S15 is issued after waiting for 15T.
本例では、すべての出力先がO01であるため、すべての順序を保証しているように見えるが、たとえば、S00〜S07がO01、S08〜S15がO09、L0がO01、L1がO09を出力バッファとする場合、O01を出力先とするS07より、O09を行き先とするL1が出力バッファ全体のタイミングをみたときに、先に発行されるケースは問題とならないアーキテクチャを想定している。すなわち、各出力バッファで見た場合、その出力バッファ内で見た要素の順序が入力バッファでの到着順序を保証していればよいものとする。 In this example, since all output destinations are O01, it seems that all orders are guaranteed, but for example, S00 to S07 output O01, S08 to S15 output O09, L0 outputs O01, and L1 outputs O09. When the buffer is used, an architecture is assumed in which the case where L1 having O09 as the destination is issued first when the timing of the entire output buffer is viewed from S07 having O01 as the output destination is not a problem. That is, when viewed in each output buffer, it is only necessary that the order of elements viewed in the output buffer guarantees the arrival order in the input buffer.
具体的には、ベクトル型コンピュータがこれに当てはまり、複数要素を発行するベクトルロード命令/ストア命令を後続の複数要素を発行するベクトルロード・ストア命令が追い越してはならないため、このアーキテクチャに該当する。 Specifically, this applies to a vector type computer, and the vector load / store instruction that issues a plurality of elements must not be overtaken by the vector load / store instruction that issues a plurality of elements.
なお、より厳しい制約として、同時に入力バッファに到着した要素は、入力バッファI00側を先行到着要素として扱うものとする。本例でいうと、O01バッファにS00、S01、…S15の順で出力されるのは良いが、同時に入力バッファに到着したとはいえ、S15、S14…S00の順で出力されるのは、認められないのものとする。 Note that, as a more severe restriction, elements that arrive at the input buffer at the same time are treated as preceding arrival elements on the input buffer I00 side. In this example, it is good to output to the O01 buffer in the order of S00, S01,... S15, but at the same time, although it arrives at the input buffer, it is output in the order of S15, S14. It shall not be allowed.
優先順位をまとめると、入力バッファに先に到着したものに優先権があり、同時到着の中では、入力バッファ若番(I00側)に優先権があるものとする。 Summarizing the priorities, it is assumed that the one that arrives first in the input buffer has priority, and that the input buffer younger (I00 side) has priority in simultaneous arrival.
これらの制約を守るためには、後続のL0、L1の要素は、先行のS00〜S15までの要素が全て掃けるまで、調停に参加できない。よって、順序を保証するためにL0、L1の入力バッファへの参加開始(=調停参加)は、16サイクルになっており、同様にM0はL0、L1が調停の結果すべて掃けるまで調停に参加できないため、入力バッファへの参加開始(=調停参加)は、18サイクルになっている。 In order to observe these restrictions, the subsequent L0 and L1 elements cannot participate in the arbitration until all the preceding S00 to S15 elements have been swept. Therefore, in order to guarantee the order, participation of L0 and L1 to the input buffer (= arbitration participation) is 16 cycles. Similarly, M0 participates in arbitration until L0 and L1 have all swept as a result of the arbitration. Since this is not possible, the start of participation in the input buffer (= arbitration participation) is 18 cycles.
図9、図10の例では、要素の到着順を守らなければならないアーキテクチャにおいて、単純なクロスバ構成を用いた場合の問題点を示している。すなわち、順序を保証するために、L0、L1がS00〜S15を待ち、M0がL0、L1を待っており、その結果、出力バッファをO01以外のO00にするN0までも調停に参加できず、待っている状態になっている。結果として、クロスバの利用効率は低いものになってしまっている。 The examples of FIGS. 9 and 10 show problems when a simple crossbar configuration is used in an architecture in which the arrival order of elements must be observed. That is, in order to guarantee the order, L0 and L1 are waiting for S00 to S15, M0 is waiting for L0 and L1, and as a result, N0 that makes the output buffer O00 other than O01 cannot participate in the arbitration, Waiting. As a result, the utilization efficiency of the crossbar has become low.
図11、図12に、単純なクロスバ構成での問題点を回避する性能向上施策であるクロスポイントバッファを備えるクロスバスイッチの例を示す。入力バッファと出力バッファの交差するポイントにバッファを設ける方式であり、図11ではX00〜X15と示されている。このX00〜X15は、各出力バッファあたり1セットもたれるものである。 FIGS. 11 and 12 show an example of a crossbar switch including a crosspoint buffer, which is a performance improvement measure for avoiding problems with a simple crossbar configuration. In this system, buffers are provided at points where the input buffer and the output buffer intersect, and are indicated as X00 to X15 in FIG. This X00 to X15 is one set per output buffer.
図12にクロスポイントバッファでの動作例を示す。図10と違い、クロスポイントバッファを保持しているため、入力バッファに並んだ要素S00〜S15の要素が1サイクル後にすべてクロスポイントバッファに保持されている。クロスポイントバッファに保持されたS00〜S15までの要素は、出力バッファに対して16to1のセレクタを通り、一つずつ発行される。 FIG. 12 shows an operation example in the crosspoint buffer. Unlike FIG. 10, since the cross-point buffer is held, all the elements S00 to S15 arranged in the input buffer are held in the cross-point buffer after one cycle. The elements from S00 to S15 held in the crosspoint buffer are issued one by one through the 16 to 1 selector to the output buffer.
図10のとの違いは、後続のL0、L1の調停開始時間が、早まっている点である。すまわち、クロスポイントバッファなしでは、L0、L1の調停開始がサイクル16だったのに対し、クロスポイントバッファありでは、サイクル1になっている。すなわち、L0、L1の行き先バッファが、O01以外であれば、L0、L1はクロスポイントバッファに対して即発行できるため、性能上効果のある方式である。
The difference from FIG. 10 is that the arbitration start time of subsequent L0 and L1 is advanced. In other words, the start of arbitration of L0 and L1 was
ただし、本例では、後続のL0、L1の行き先バッファもS00〜S15と同じO01であるため、その後、クロスポイントバッファが空くまで待たされてしまうので全体としての性能向上はまり見られていない。 However, in this example, since the destination buffers of the subsequent L0 and L1 are also the same O01 as S00 to S15, the entire performance is not improved because the crosspoint buffer is waited thereafter.
クロスポイントバッファの性能をさらに向上させる施策として、クロスポイントバッファのワード数を増やす方式がある。図13、図14にクロスポイントバッファのワード数を2ワードにしたクロスバスイッチの例を示す。 As a measure for further improving the performance of the crosspoint buffer, there is a method of increasing the number of words of the crosspoint buffer. FIGS. 13 and 14 show examples of crossbar switches in which the number of words in the crosspoint buffer is two words.
図13では、クロスバッファバッファ1 X00〜X15に加え、その下にクロスポイントバッファ2 Y00〜Y15を備えている。
In FIG. 13, in addition to the
図14にワード数を2にしたクロスポイントバッファでの動作例を示す。図12と違いクロスポイントバッファを深さ方向に2ワードもっているため、先ほど、入力バッファで待たされていたL0、L1の発行が早くなっている。図12ではL0、L1の発行が16サイクルまで待たされているのに対し、図14では、待ちなしの1サイクルでの発行となっている。 FIG. 14 shows an example of operation in a crosspoint buffer with the number of words set to two. Unlike FIG. 12, since the crosspoint buffer has two words in the depth direction, the issuance of L0 and L1 that have been waiting in the input buffer earlier is earlier. In FIG. 12, issuance of L0 and L1 is waited until 16 cycles, whereas in FIG. 14, issuance is in one cycle without waiting.
このようにクロスポイントバッファの深さ方向にワード数を持つことは、性能の上で一定の効果をもたらす。 Thus, having the number of words in the depth direction of the crosspoint buffer has a certain effect on performance.
ここで、関連技術として、クロスバの利用効率をあげる技術が特許文献1に開示されている。特許文献1に開示の技術は、入力バッファ、および、クロスポイントバッファからの出力要素の選択アルゴリズムを改良して、クロスバの利用効率をあげるものである。
Here, as a related technique,
図13、図14に示す例では、後続のM0の行き先バッファもL0、L1と同じO01であるため、その後、クロスポイントバッファが空くまで待たされてしまうので全体としての性能向上はまり見られていない。さらに深さ方向を増やし、クロスポイントバッファを3ワードにすれば、さらに後続の行き先バッファの違うN0は待たされることはなくなるので、性能を向上させることはできるが、この場合、多くのハードウェア量を費やすことになり、また、ワード数の増加に伴い、レイテンシが悪化するという問題もある。 In the example shown in FIG. 13 and FIG. 14, since the destination buffer of the subsequent M0 is also the same O01 as L0 and L1, the overall performance is not improved since the system waits until the crosspoint buffer becomes empty. . If the depth direction is further increased and the crosspoint buffer is set to 3 words, N0 with a different destination buffer is not waited for, so that the performance can be improved. In this case, however, a large amount of hardware is required. In addition, there is a problem that the latency deteriorates as the number of words increases.
ここまでの例から、背景技術では以下の問題があったといえる。 From the examples so far, it can be said that the background art has the following problems.
クロスポイントバッファの性能を向上させる施策として、バッファの深さ方向にワード数を持たせる方法がある。しかしながら、クロスバを通過させる要素に対して、通過順序を保証しなければならないアーキテクチャにおいては、単純に、深さ方向にワード数を持っても、特定のパターンや、ランダムアクセスにおいて性能が得られないケースが存在する。また、単純にワード数を増やした場合の解決方法には、ハードウェア量の増大と、レイテンシの悪化という問題ももっている。 As a measure for improving the performance of the cross-point buffer, there is a method of increasing the number of words in the buffer depth direction. However, in an architecture that must guarantee the passage order for elements that pass through the crossbar, performance cannot be obtained in a specific pattern or random access even if the number of words is simply in the depth direction. Case exists. In addition, the solution in the case of simply increasing the number of words also has the problem of increasing the amount of hardware and worsening the latency.
また、特許文献1に開示技術は、出力要素順序を保証する必要のないクロスバにおいて利用できる手段であるため、出力要素順を保証する必要のある構成においては利用できないという問題がある。
Further, since the technique disclosed in
(発明の目的)
本発明の目的は、上述の課題を解決し、深さ方向に2ワード以上を持つクロスポイントバッファ方式において、クロスバの利用効率を向上させるクロスバスイッチ、ベクトル処理装置、及びクロスバ制御方法を提供することである。
(Object of invention)
An object of the present invention is to provide a crossbar switch, a vector processing device, and a crossbar control method for solving the above-described problems and improving the crossbar utilization efficiency in a crosspoint buffer system having two or more words in the depth direction. It is.
本発明の第1のクロスバスイッチは、クロスバ入力バッファとクロスバ出力バッファの間に深さ方向に2ワード以上のクロスポイントバッファを備え、クロスポイントバッファの2ワード目にシフト機能を実装し、クロスポイントバッファの1ワード目の要素数がクロスポイントバッファの2ワード目の要素数より多い場合、シフト機能を利用しないことを選択する選択手段を含む。 The first crossbar switch of the present invention includes a crosspoint buffer of 2 words or more in the depth direction between the crossbar input buffer and the crossbar output buffer, and implements a shift function in the second word of the crosspoint buffer. When the number of elements in the first word of the buffer is larger than the number of elements in the second word of the crosspoint buffer, selection means for selecting not to use the shift function is included.
本発明の第1のベクトル処理装置は、クロスバ入力バッファとクロスバ出力バッファの間に深さ方向に2ワード以上のクロスポイントバッファを含むクロスバスイッチを備え、クロスバスイッチのクロスポイントバッファの2ワード目にシフト機能を実装し、クロスバスイッチが、クロスポイントバッファの1ワード目の要素数がクロスポイントバッファの2ワード目の要素数より多い場合、シフト機能を利用しないことを選択する選択手段を含む。 A first vector processing apparatus of the present invention includes a crossbar switch including a crosspoint buffer of two words or more in the depth direction between a crossbar input buffer and a crossbar output buffer, and a second word of the crosspoint buffer of the crossbar switch. A shift function is implemented, and the crossbar switch includes selection means for selecting not to use the shift function when the number of elements in the first word of the crosspoint buffer is larger than the number of elements in the second word of the crosspoint buffer.
本発明の第1のクロスバ制御方法は、クロスバ入力バッファとクロスバ出力バッファの間に深さ方向に2ワード以上のクロスポイントバッファを備えるクロスバスイッチによるクロスバ制御方法であって、クロスポイントバッファの2ワード目にシフト機能を実装し、クロスポイントバッファの1ワード目の要素数がクロスポイントバッファの2ワード目の要素数より多い場合、シフト機能を利用しないことを選択する選択ステップを、選択手段が実行する。 A first crossbar control method according to the present invention is a crossbar control method using a crossbar switch including a crosspoint buffer of two words or more in the depth direction between a crossbar input buffer and a crossbar output buffer, and includes two words of the crosspoint buffer. When the shift function is implemented in the eyes and the number of elements in the first word of the crosspoint buffer is larger than the number of elements in the second word of the crosspoint buffer, the selection means executes a selection step for selecting not to use the shift function. To do.
本発明の第2のクロスバ制御方法は、クロスバ入力バッファとクロスバ出力バッファの間に深さ方向に2ワード以上のクロスポイントバッファを含むクロスバスイッチを備えるベクトル処理装置によるクロスバ制御方法であって、クロスポイントバッファの1ワード目の要素数がクロスポイントバッファの2ワード目の要素数より多い場合、クロスバスイッチのクロスポイントバッファの2ワード目に実装されたシフト機能を利用しないことを選択する選択ステップを、クロスバスイッチの選択手段が実行する。 A second crossbar control method according to the present invention is a crossbar control method by a vector processing device including a crossbar switch including a crosspoint buffer of two words or more in the depth direction between a crossbar input buffer and a crossbar output buffer. If the number of elements in the first word of the point buffer is greater than the number of elements in the second word of the crosspoint buffer, a selection step for selecting not to use the shift function implemented in the second word of the crosspoint buffer of the crossbar switch The crossbar switch selection means executes.
本発明によれば、深さ方向に2ワード以上を持つクロスポイントバッファ方式において、クロスバの利用効率を向上させることができる。 According to the present invention, it is possible to improve the utilization efficiency of the crossbar in the cross point buffer system having two words or more in the depth direction.
本発明の上記及び他の目的、特徴及び利点を明確にすべく、添付した図面を参照しながら、本発明の実施形態を以下に詳述する。なお、上述の本願発明の目的のほか、他の技術的課題、その技術的課題を解決する手段及びその作用効果についても、以下の実施形態による開示によって明らかとなるものである。 In order to clarify the above and other objects, features and advantages of the present invention, embodiments of the present invention will be described in detail below with reference to the accompanying drawings. In addition to the above-described object of the present invention, other technical problems, means for solving the technical problems, and operational effects thereof will become apparent from the disclosure of the following embodiments.
なお、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。 In all the drawings, the same reference numerals are given to the same components, and the description will be omitted as appropriate.
(第1の実施の形態)
本発明の第1の実施の形態について図面を参照して詳細に説明する。
(First embodiment)
A first embodiment of the present invention will be described in detail with reference to the drawings.
本実施の形態によるクロスバスイッチ100は、深さ方向に2ワードを持つクロスポイントバッファを備える(図1参照)。
The
図15は、図14で示されている2ワードのクロスポイントバッファの1出力バッファに対応する部分である。クロスポイントバッファ1ワード目のX00〜X15(3−1)が、クロスポイントバッファ2ワード目のY00〜Y15(3−3)にそれぞれ対応している。 FIG. 15 shows a portion corresponding to one output buffer of the two-word crosspoint buffer shown in FIG. X00 to X15 (3-1) in the first word of the crosspoint buffer correspond to Y00 to Y15 (3-3) in the second word of the crosspoint buffer.
前述の通り、要素の順序を保証しなければならないことを想定しているため、図15に示す構成では、クロスポイントバッファ2ワード目のY00〜Y15(3−3)から要素がすべて発行されてからでないと、クロスポイントバッファ1ワード目のX00〜X15(3−1)からのクロスポイントバッファ2ワード目のY00〜Y15(3−3)への移動はできない。図14では、この例を示した。 As described above, since it is assumed that the order of elements must be guaranteed, in the configuration shown in FIG. 15, all elements are issued from Y00 to Y15 (3-3) in the second word of the crosspoint buffer. Otherwise, it is not possible to move from X00 to X15 (3-1) of the first word of the crosspoint buffer to Y00 to Y15 (3-3) of the second word of the crosspoint buffer. FIG. 14 shows this example.
こうした動作をするため、1出力バッファあたりのクロスポイントバッファを16x2ワードの32要素のバッファを持っているにもかかわらず、性能がでないケースが存在する。 In order to perform such an operation, there is a case where the cross-point buffer per output buffer has a 32-element buffer of 16 × 2 words, but the performance is not good.
例えば、Y14、Y15で2要素、X00で1要素と全部で3要素しか埋まっていなかったとしても、1ワード目の要素は、バッファ2ワード目が空いていないので待たされるしかない。また、さらに後続の要素が同出力バッファをめがけていたとしても、X00〜X15に入れず、結果として性能低下をもたらしていた。これは、クロスバッファを有効活用できないことに起因している。 For example, even if only 2 elements in Y14 and Y15 and 1 element in X00 are filled, the first word element has to wait because the second word in the buffer is not empty. Further, even if a subsequent element is directed to the same output buffer, it cannot enter X00 to X15, resulting in performance degradation. This is because the cross buffer cannot be effectively used.
そこで、この問題を解決するために、本発明では、図1に示すように、クロスポイントバッファの2ワード目にシフト機能を実装する。 In order to solve this problem, the present invention implements a shift function at the second word of the crosspoint buffer as shown in FIG.
2ワード目のシフト機能は、次のように動作する。 The shift function of the second word operates as follows.
第1に、2ワード目から、発行すべき要素を選択させる。選択優先順位をY00>Y01…>Y15とする。 First, the element to be issued is selected from the second word. The selection priority order is Y00> Y01...> Y15.
第2に、2ワード目から、要素が発行されると、空エントリに対して、左シフトする(Y00側が高優先順位のため。) Second, when an element is issued from the second word, the left entry is shifted to the left (because the Y00 side has a high priority).
第3に、1ワード目ワード数 < 2ワード目ワード数の場合、1ワード目の最優先エントリを2ワード目のY15に入れる。 Third, if the number of words in the first word is smaller than the number of words in the second word, the highest priority entry for the first word is placed in Y15 for the second word.
第4に、1ワード目ワード数>=2ワード目ワード数の場合、2ワード目のエントリがすべて発行された後に、X00−>Y00、X01−>Y01、…X15−>Y15にそれぞれ入れる(1ワード目と2ワード目のエントリ数に応じて、性能のでる適切な選択を実施。)。 Fourth, if the number of words in the first word> = the number of words in the second word, after all the entries in the second word are issued, they are put into X00-> Y00, X01-> Y01,... X15-> Y15, respectively ( Depending on the number of entries in the first word and the second word, an appropriate selection is made based on performance.)
第5に、1ワード目の全エントリが空くときに後続の入力を受付。 Fifth, the subsequent input is accepted when all entries in the first word are empty.
図2に、シフト機能を実装したときの効果を示す。 FIG. 2 shows the effect when the shift function is implemented.
最初の要素S00〜S15はクロスポイントバッファ1(X00〜X15)を通過し、クロスポイントバッファ2(Y00〜Y15)に到達する。ここで、本発明では、シフト機能があるため、先行の要素が発行される毎に、Y00側にシフトされていく。後続のL0、L1もS00〜S15のあとにクロスポイントバッファ1(X00〜X01)に挿入される。 The first elements S00 to S15 pass through the crosspoint buffer 1 (X00 to X15) and reach the crosspoint buffer 2 (Y00 to Y15). Here, in the present invention, since there is a shift function, every time a preceding element is issued, it is shifted to the Y00 side. Subsequent L0 and L1 are also inserted into the crosspoint buffer 1 (X00 to X01) after S00 to S15.
改良前の図14では、クロスポイントバッファ2(Y00〜Y15)の要素が掃けるまでL0、L1はクロスポイントバッファ1(X00〜X01)でホールドされるしかなかったが、改良後はシフト機能によりクロスポイントバッファ2(Y00〜Y15)のうちのY15が空いているため、L0要素をY15に挿入できる。同様に1サイクル後にはL1をY15に挿入できるため、後続のM0は入力バッファで1サイクル待たされるのみで通過している。 In FIG. 14 before the improvement, L0 and L1 can only be held in the crosspoint buffer 1 (X00 to X01) until the elements of the crosspoint buffer 2 (Y00 to Y15) are swept. Since Y15 of the crosspoint buffer 2 (Y00 to Y15) is free, the L0 element can be inserted into Y15. Similarly, L1 can be inserted into Y15 after one cycle, so that the following M0 passes only after waiting for one cycle in the input buffer.
効果の差分としてわかりやすいのは、M0のさらに後ろのN0要素である。シフト機能を持たない図14では、N0要素は先行のM0がクロスポイントバッファ1に入るまで発行されることはないため、結果として、出力バッファでみたときに通過するのは、21サイクルとなっている。これに対し、先行要素M0が早々にクロスポイントバッファ1に挿入される図2では、出力バッファでN0が通過するのは、7サイクルとなっている。
The N0 element further behind M0 is easy to understand as the effect difference. In FIG. 14, which does not have the shift function, the N0 element is not issued until the preceding M0 enters the
以上のように、クロスポイントバッファ2にシフト機能を追加することの性能的な効果は大きい。
As described above, the performance effect of adding the shift function to the
しかしながら、本シフト機能を利用しないほうが性能のでるケースが存在する。一般的にいって、シフト機能が有効に働くのは、クロスポイントバッファ2(Y00〜Y15)にある要素数とクロスポイントバッファ1(X00〜X15)の要素数を比較して、クロスポイントバッファ2の要素数の方が多いときにシフト機能は有効に働く。反対にクロスポイントバッファ1の要素数の方が多いときには、シフト機能を利用しない方式の方が性能がよい。
However, there are cases where performance is better when this shift function is not used. Generally speaking, the shift function works effectively when the number of elements in the crosspoint buffer 2 (Y00 to Y15) is compared with the number of elements in the crosspoint buffer 1 (X00 to X15), and the
クロスポイントバッファ1の要素数の方が多いときにシフト機能を使って、反対に性能を落としてしまうケースを図3に示す。図3の例では、クロスポイントバッファ1からクロスポイントバッファ2への移動に16サイクル要しており、性能が悪化している。
FIG. 3 shows a case where the shift function is used to reduce the performance when the number of elements of the
同命令列に対してシフト機能を使わなかったときのケースを図4に示す。クロスポイントバッファ1からクロスポイントバッファ2への移動を1サイクルの待ち合わせと1サイクルの移動の計2サイクルで済ませている。
FIG. 4 shows a case where the shift function is not used for the same instruction sequence. The movement from the
以上から、本シフト機能が有効に働くのは、(クロスポイントバッファ1の要素数)<(クロスポイントバッファ2の要素数)のときとなる。このため、本発明では、(クロスポイントバッファ1の要素数)<(クロスポイントバッファ2の要素数)を判定する選択回路も追加する。前述の第3、第4の動作がこの選択回路の部分になるが、以降の実施例で詳しく説明する。 From the above, this shift function works effectively when (number of elements of crosspoint buffer 1) <(number of elements of crosspoint buffer 2). Therefore, in the present invention, a selection circuit for determining (number of elements of the crosspoint buffer 1) <(number of elements of the crosspoint buffer 2) is also added. The third and fourth operations described above are part of this selection circuit, which will be described in detail in the following embodiments.
(第1の実施の形態の動作の説明)
次に、本実施の形態によるクロスバスイッチ100の動作について、図面を参照して詳細に説明する。
(Description of the operation of the first embodiment)
Next, the operation of the
次に、具体的な実施例を用いて本実施の形態の動作を説明する。 Next, the operation of this embodiment will be described using specific examples.
(構成の説明)
図1に、1出力バッファに対するクロスポイントバッファと、シフト機能を示す。この回路は1出力バッファあたりに存在するため、論理的に16x16のクロスバの場合には、この回路が16個存在することになる。
(Description of configuration)
FIG. 1 shows a crosspoint buffer for one output buffer and a shift function. Since this circuit exists per output buffer, in the case of a logical 16 × 16 crossbar, there are 16 such circuits.
符号41のX00〜X15は、クロスポイントバッファの1ワード目である。要素順序の保証のために、新規の挿入は、X00〜X15がすべて空くタイミングからとなる。
X00 to X15 of
符号42は、3ウェイのセレクタである。ひとつは、後述のY00〜Y15自身のホールド、ひとつが、X00…X15とY00…Y15がそれぞれに対応したパスで、これら、ふたつは従来のクロスポイントバッファにも存在するウェイである。最後の3ウェイ目がシフト機能を実現するパスであり、Y00はY01、Y01はY02からのパスがつながれている。ただし、Y15は、X00〜X15のうちの最優先のものが選ばれた結果がシフトパスとしてつながっている。
符号43のY00〜Y15はクロスポイントバッファの2ワード目である。要素順序の保証のために、クロスポイントバッファ2から要素が発行される毎にクロスポイントバッファ2の中でシフトが実行される。
Y00 to Y15 of
符号44は16ウェイのセレクタである。先頭要素から発行していく必要があるため、Y00〜Y15までの要素の有無をチェックし、最優先の要素を選択(Leading0回路)したのちに、クロスポイントバッファ2のうちの最初の要素を発行する。
符号45は2ウェイのセレクタである。出力バッファOUT(出力レジスタ46)からは、さらに先の回路の混雑具合によって、発行できるケースとできないケースが存在する。この2ウェイセレクタは、発行できなかったときのホールドを実現する。
符号47は、シフト機能を利用したときに、クロスポイントバッファ1からクロスポイントバッファ2へ要素を挿入するときに使われる16ウェイのセレクタである。最優先の要素を選択(Leading0回路)したのちに、クロスポイントバッファ1のうちの最初の要素を発行できる機能をもつ、また、その発行は常に実施するわけではなくクロスポイントバッファ1、クロスポイントバッファ2の要素数の関係によって、発行するか否かを判断する機能も持つ。
以上が本発明の構成要素である。 The above is the component of the present invention.
(動作の説明)
図1に示した構成要素の動作を図5、図6、図7、図8のフローチャートを用いて説明する。
(Description of operation)
The operation of the constituent elements shown in FIG. 1 will be described with reference to the flowcharts of FIGS.
図5は、出力レジスタ46を中心に、2ウェイセレクタ45の動作を示している。
FIG. 5 shows the operation of the 2-
図6は、クロスポイントバッファ2(クロスポイントバッファ44)を中心に、3ウェイセレクタ42、16ウェイセレクタ44、16ウェイセレクタ47の動作を示している。
FIG. 6 shows operations of the 3-
図7は、クロスポイントバッファ1(クロスポイントバッファ41)を中心に、3ウェイのセレクタ42、16ウェイのセレクタ47の動作を示している。
FIG. 7 shows the operation of the 3-
図8は、入力バッファ(図9、図11、図13のI00〜I15)の動作を示している。 FIG. 8 shows the operation of the input buffer (I00 to I15 in FIGS. 9, 11, and 13).
図5は、出力バッファ46を中心に示したフローチャートである。最初に電源On、リセットがあり(ステップSO−1)、要素がない状態に移行する(ステップSO−2)。
FIG. 5 is a flowchart mainly showing the
上位のレジスタにあたるクロスポイントバッファ2に要素があるか否かを判別し(ステップSO−3)、なければ、要素なしのまま、あれば要素ありの状態になる(ステップSO−4)。
It is determined whether or not there is an element in the
出力バッファOUTから、さらに先のステージへの発行可否を判断し(ステップSO−5)、不可能であれば何もしないが、可能であれば要素を発行する(ステップSO−6)。以降システムが停止するまで繰り返される(ステップSO−7) From the output buffer OUT, it is determined whether or not it can be issued to a further stage (step SO-5). If it is not possible, nothing is done, but if possible, the element is issued (step SO-6). Thereafter, the process is repeated until the system stops (step SO-7).
図6は、クロスポイントバッファ2を中心に示したフローチャートである。最初に電源On、リセットがあり(ステップSY−1)、要素がない状態に移行する(ステップSY−2)。
FIG. 6 is a flowchart mainly showing the
上位のレジスタにあたるクロスポイントバッファ1に要素があるか否かを判別し(ステップSY−3)、なければ、要素なしのまま、あれば要素ありの状態になる(ステップSY−4)。
It is determined whether or not there is an element in the
次のタイミングで出力バッファが空くか否かの判断を行い(ステップSY−5)、空かなければそのまま、空くのであれば次のステップにすすむ。 It is determined whether or not the output buffer is empty at the next timing (step SY-5). If it is not empty, the process proceeds to the next step.
2ワード目から要素が発行可能な場合には、2ワード目中の要素数が2個以上が否かを判定する(ステップSY−6)。1要素のみの場合には、当該要素を発行し(ステップSY−7)、ステップSY−3に戻り、システムが停止するまで繰り返される(ステップSY−8)。 If elements can be issued from the second word, it is determined whether or not the number of elements in the second word is two or more (step SY-6). If there is only one element, the element is issued (step SY-7), the process returns to step SY-3, and is repeated until the system stops (step SY-8).
2要素以上ある場合には、クロスポイントバッファ1とクロスポイントバッファ2の要素数を比較する(ステップSY−9)。クロスポイントバッファ1>=クロスポイントバッファ2の場合には、クロスポイントバッファ2から1要素を発行し、他の要素をシフトするのみで、ステップSY−4に進む(ステップSY−10)。クロスポイントバッファ1<クロスポイントバッファ2の場合には、クロスポイントバッファ2から1要素を発行し、他の要素をシフトし、さらに、クロスポイントバッファ1の最優先要素をクロスポイントバッファ2の最老番Y15に挿入する(ステップSY−11)。
If there are two or more elements, the number of elements in the
図7は、クロスポイントバッファ1を中心に示したフローチャートである。最初に電源On、リセットがあり(ステップSX−1)、要素がない状態に移行する(ステップSX−2)。
FIG. 7 is a flowchart mainly showing the
上位のレジスタにあたる入力バッファに要素があるか否かを判別し(ステップSX−3)、なければ、要素なしのまま、あれば要素ありの状態になる(ステップSX−4)。 It is determined whether or not there is an element in the input buffer corresponding to the upper register (step SX-3). If there is no element, if there is no element, the element is present if there is no element (step SX-4).
次のタイミングでクロスポイントバッファ2がすべて空くか否かの判断を行い(ステップSX−5)、空くのであれば、1ワード目の全要素を2ワード目に挿入する(ステップSX−6)。反対に空かないのであれば、ステップSX−8に進み、クロスポイントバッファ2から要素の発行があるか否かを確認する(ステップSX−8)。
At the next timing, it is determined whether or not the
1要素も発行がない場合には、ステップSX−4に戻る。発行ある場合には、クロスポイントバッファ1の要素数とクロスポイントバッファ2の要素数の比較を行なう。
If no element is issued, the process returns to step SX-4. If issued, the number of elements in the
(バッファ1の数)>=(バッファ2の数)の場合には、何もせずにステップSX−4に戻る。(バッファ1の数)<(バッファ2の数)の場合には、クロスポイントバッファ1の最優先の要素をクロスポイントバッファ2の最優先ではないY15に挿入する(ステップSX−10)。
If (the number of buffers 1)> = (the number of buffers 2), nothing is done and the process returns to step SX-4. If (the number of buffers 1) <(the number of buffers 2), the highest priority element of the
ステップSX−10で最優先の要素をY15に挿入した結果、クロスポイントバッファ1の全エントリが空になるか否かをチェックする(ステップSX−11)。空になる場合には、要素なしから状態ステップSX−3に進み、まだ要素があるならば、要素のある状態ステップSX−4に進む。
As a result of inserting the highest priority element in Y15 in step SX-10, it is checked whether or not all entries in the
図8は入力バッファ(図9、図11、図13のI00〜I15)のを中心に示したフローチャートである。 FIG. 8 is a flowchart mainly showing the input buffer (I00 to I15 in FIGS. 9, 11, and 13).
最初に電源On、リセットがあり(ステップSI−1)、要素がない状態に移行する(ステップSI−2)。 First, there is a power supply On, a reset (step SI-1), and a transition is made to a state where there are no elements (step SI-2).
入力バッファよりさらに上位の回路(バッファorレジスタ)に入力バッファに登録すべき要素があるか否かを判別し(ステップSI−3)、なければ、要素なしのまま、あれば要素ありの状態になる(ステップSI−4)。 It is determined whether or not there is an element to be registered in the input buffer in a circuit (buffer or register) higher than the input buffer (step SI-3). (Step SI-4).
次に入力バッファの要素が行くべき先のクロスポイントバッファ1が次のタイミングで全て空になるか否かを確認する(ステップSI−5)。空にならなければ何もせずにSI−4に戻り、空になるのであれば、入力バッファから要素を発行する。発行した後には、新規要素があるか否かのステップに戻る。
Next, it is confirmed whether or not all the
以上が、各バッファで見た動作のタイミングである。 The above is the operation timing seen in each buffer.
(第1の実施の形態による効果)
本実施の形態によれば、クロスポイントバッファにシフト機能を実装することにより、クロスバの利用効率を向上させることができる。
(Effects of the first embodiment)
According to the present embodiment, it is possible to improve the utilization efficiency of the crossbar by mounting the shift function in the crosspoint buffer.
本実施の形態では、ランダム性能(調停する出力バッファがランダム)については、シフト機能なし実効性能が57.1%であるのに対し、シフト機能あり実効性能は65.1%となり、性能が改善する。また、ベクトル型コンピュータを考慮した場合、特定の命令パターンにおいても18〜45%の性能向上が見られる。 In this embodiment, for random performance (the output buffer to be arbitrated is random), the effective performance without the shift function is 57.1%, while the effective performance with the shift function is 65.1%, which improves the performance. To do. Further, when a vector type computer is considered, a performance improvement of 18 to 45% can be seen even in a specific instruction pattern.
以上、好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。 The present invention has been described above with reference to preferred embodiments. However, the present invention is not necessarily limited to the above embodiments, and various modifications can be made within the scope of the technical idea. it can.
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。 It should be noted that any combination of the above-described constituent elements and a conversion of the expression of the present invention between a method, an apparatus, a system, a recording medium, a computer program, etc. are also effective as an aspect of the present invention.
また、本発明の各種の構成要素は、必ずしも個々に独立した存在である必要はなく、複数の構成要素が一個の部材として形成されていること、一つの構成要素が複数の部材で形成されていること、ある構成要素が他の構成要素の一部であること、ある構成要素の一部と他の構成要素の一部とが重複していること、等でもよい。 The various components of the present invention do not necessarily have to be independent of each other. A plurality of components are formed as a single member, and a single component is formed of a plurality of members. It may be that a certain component is a part of another component, a part of a certain component overlaps with a part of another component, or the like.
また、本発明の方法およびコンピュータプログラムには複数の手順を順番に記載してあるが、その記載の順番は複数の手順を実行する順番を限定するものではない。このため、本発明の方法およびコンピュータプログラムを実施する時には、その複数の手順の順番は内容的に支障しない範囲で変更することができる。 Moreover, although the several procedure is described in order in the method and computer program of this invention, the order of the description does not limit the order which performs a several procedure. For this reason, when implementing the method and computer program of this invention, the order of the several procedure can be changed in the range which does not interfere in content.
また、本発明の方法およびコンピュータプログラムの複数の手順は個々に相違するタイミングで実行されることに限定されない。このため、ある手順の実行中に他の手順が発生すること、ある手順の実行タイミングと他の手順の実行タイミングとの一部ないし全部が重複していること、等でもよい。 The plurality of procedures of the method and the computer program of the present invention are not limited to being executed at different timings. For this reason, another procedure may occur during the execution of a certain procedure, or some or all of the execution timing of a certain procedure and the execution timing of another procedure may overlap.
本発明によれば、クロスバのような多入力対多出力の通信網を持ち、かつ、通信網を通るパケット(命令列、もしくは、データ列)間で到着順序の保証を必要とするようなコンピュータシステム、もしくは、ネットワークスイッチにおける利用の可能性が考えられる。 According to the present invention, a computer having a multi-input to multi-output communication network such as a crossbar and requiring an arrival order guarantee between packets (command sequence or data sequence) passing through the communication network. Possible use in system or network switch.
100:クロスバスイッチ
41:クロスポイントバッファ
42:セレクタ
43:クロスポイントバッファ
44:セレクタ
45:セレクタ
46:出力レジスタ
47:セレクタ
100: Crossbar switch 41: Crosspoint buffer 42: Selector 43: Crosspoint buffer 44: Selector 45: Selector 46: Output register 47: Selector
Claims (4)
クロスポイントバッファの2ワード目以降の各クロスポイントバッファにシフト機能を実装し、
前記クロスバ入力バッファの要素が入力されるクロスポイントバッファの1ワード目のエントリに格納されている要素数が、前記1ワード目の要素が入力されるクロスポイントバッファの2ワード目のエントリに格納されている要素数より多い場合、シフト機能を利用しないことを選択する選択手段を含み、
前記シフト機能は、
クロスポイントバッファの2ワード目から、予め定められた優先順位に基づいて、発行すべき要素を選択し、
当該要素が発行されると、当該発行により空となったエントリに対して高優先順位側へ前記2ワード目の各要素をシフトし、1ワード目の最優先エントリを、前記シフトにより空となった前記2ワード目のエントリに入れ、
前記優先順位は、前記クロスバ入力バッファに到着した順に決定され、同時到着の要素については、入力バッファの若番順に決定される
ことを特徴とするクロスバスイッチ。 A crosspoint buffer of 2 words or more in the depth direction is provided between the crossbar input buffer and the crossbar output buffer,
A shift function is implemented in each crosspoint buffer after the second word of the crosspoint buffer .
The number of elements the elements of the crossbar input buffer is stored in the first word of the entry of the crosspoint buffer to be entered, stored in the second word of the entry cross-point buffer the first word of the element is inputted If and are greater than the number of elements, look at including a selection means you choose not to use the shift function,
The shift function is
From the second word of the crosspoint buffer, select an element to be issued based on a predetermined priority,
When the element is issued, each element of the second word is shifted to the higher priority side with respect to the entry that is empty by the issue, and the highest priority entry of the first word is emptied by the shift. Into the second word entry,
The priority order is determined in the order of arrival in the crossbar input buffer, and the elements of simultaneous arrival are determined in the order of the youngest number in the input buffer .
前記クロスバスイッチの前記クロスポイントバッファの2ワード目以降の各クロスポイントバッファにシフト機能を実装し、
前記クロスバスイッチが、
前記クロスバ入力バッファの要素が入力されるクロスポイントバッファの1ワード目のエントリに格納されている要素数が、前記1ワード目の要素が入力されるクロスポイントバッファの2ワード目のエントリに格納されている要素数より多い場合、シフト機能を利用しないことを選択する選択手段を含み、
前記シフト機能は、
クロスポイントバッファの2ワード目から、予め定められた優先順位に基づいて、発行すべき要素を選択し、
当該要素が発行されると、当該発行により空となったエントリに対して高優先順位側へ前記2ワード目の各要素をシフトし、1ワード目の最優先エントリを、前記シフトにより空となった前記2ワード目のエントリに入れ、
前記優先順位は、前記クロスバ入力バッファにに到着した順に決定され、同時到着の要素については、入力バッファの若番順に決定される
ことを特徴とするベクトル処理装置。 A crossbar switch including a crosspoint buffer of 2 words or more in the depth direction is provided between the crossbar input buffer and the crossbar output buffer.
A shift function is implemented in each crosspoint buffer after the second word of the crosspoint buffer of the crossbar switch,
The crossbar switch is
The number of elements stored in the first word entry of the crosspoint buffer to which the crossbar input buffer element is input is stored in the second word entry of the crosspoint buffer to which the first word element is input. Including a selection means for selecting not to use the shift function when there are more elements than
The shift function is
From the second word of the crosspoint buffer, select an element to be issued based on a predetermined priority,
When the element is issued, each element of the second word is shifted to the higher priority side with respect to the entry that is empty by the issue, and the highest priority entry of the first word is emptied by the shift. Into the second word entry,
The priority order is determined in the order of arrival at the crossbar input buffer, and elements of simultaneous arrival are determined in ascending order of the input buffer.
A vector processing device characterized by that .
クロスポイントバッファの2ワード目以降の各クロスポイントバッファにシフト機能を実装し、
前記クロスバ入力バッファの要素が入力されるクロスポイントバッファの1ワード目のエントリに格納されている要素数が、前記1ワード目の要素が入力されるクロスポイントバッファの2ワード目のエントリに格納されている要素数より多い場合、シフト機能を利用しないことを選択する選択ステップを、選択手段が実行し、
前記シフト機能は、
クロスポイントバッファの2ワード目から、予め定められた優先順位に基づいて、発行すべき要素を選択し、
当該要素が発行されると、当該発行により空となったエントリに対して高優先順位側へ前記2ワード目の各要素をシフトし、1ワード目の最優先エントリを、前記シフトにより空となった前記2ワード目のエントリに入れ、
前記優先順位は、前記クロスバ入力バッファにに到着した順に決定され、同時到着の要素については、入力バッファの若番順に決定される
ことを特徴とするクロスバ制御方法。 A crossbar control method using a crossbar switch having a crosspoint buffer of two words or more in the depth direction between a crossbar input buffer and a crossbar output buffer,
A shift function is implemented in each crosspoint buffer after the second word of the crosspoint buffer.
The number of elements stored in the first word entry of the crosspoint buffer to which the crossbar input buffer element is input is stored in the second word entry of the crosspoint buffer to which the first word element is input. When the number of elements is larger than the number of elements, the selection means executes a selection step for selecting not to use the shift function,
The shift function is
From the second word of the crosspoint buffer, select an element to be issued based on a predetermined priority,
When the element is issued, each element of the second word is shifted to the higher priority side with respect to the entry that is empty by the issue, and the highest priority entry of the first word is emptied by the shift. Into the second word entry,
The priority order is determined in the order of arrival at the crossbar input buffer, and elements of simultaneous arrival are determined in ascending order of the input buffer.
A crossbar control method characterized by the above .
前記クロスバ入力バッファの要素が入力されるクロスポイントバッファの1ワード目のエントリに格納されている要素数が、前記1ワード目の要素が入力されるクロスポイントバッファの2ワード目のエントリに格納されている要素数より多い場合、シフト機能を利用しないことを選択する選択ステップを、前記クロスバスイッチの選択手段が実行し、
前記シフト機能は、
クロスポイントバッファの2ワード目から、予め定められた優先順位に基づいて、発行すべき要素を選択し、
当該要素が発行されると、当該発行により空となったエントリに対して高優先順位側へ前記2ワード目の各要素をシフトし、1ワード目の最優先エントリを、前記シフトにより空となった前記2ワード目のエントリに入れ、
前記優先順位は、前記クロスバ入力バッファにに到着した順に決定され、同時到着の要素については、入力バッファの若番順に決定される
ことを特徴とするクロスバ制御方法。 A vector processing device having a crossbar switch including a crosspoint buffer of 2 words or more in the depth direction between a crossbar input buffer and a crossbar output buffer, and implementing a shift function in each of the crosspoint buffers after the second word of the crosspoint buffer A crossbar control method according to
The number of elements stored in the first word entry of the crosspoint buffer to which the crossbar input buffer element is input is stored in the second word entry of the crosspoint buffer to which the first word element is input. When the number of elements is larger than the number of elements, the selection unit of the crossbar switch executes a selection step of selecting not to use the shift function,
The shift function is
From the second word of the crosspoint buffer, select an element to be issued based on a predetermined priority,
When the element is issued, each element of the second word is shifted to the higher priority side with respect to the entry that is empty by the issue, and the highest priority entry of the first word is emptied by the shift. Into the second word entry,
The priority order is determined in the order of arrival at the crossbar input buffer, and elements of simultaneous arrival are determined in ascending order of the input buffer.
A crossbar control method characterized by the above .
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012041415A JP5403380B2 (en) | 2012-02-28 | 2012-02-28 | Crossbar switch, vector processing apparatus, and crossbar control method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012041415A JP5403380B2 (en) | 2012-02-28 | 2012-02-28 | Crossbar switch, vector processing apparatus, and crossbar control method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2013178626A JP2013178626A (en) | 2013-09-09 |
| JP5403380B2 true JP5403380B2 (en) | 2014-01-29 |
Family
ID=49270209
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2012041415A Expired - Fee Related JP5403380B2 (en) | 2012-02-28 | 2012-02-28 | Crossbar switch, vector processing apparatus, and crossbar control method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5403380B2 (en) |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2853652B2 (en) * | 1996-03-30 | 1999-02-03 | 日本電気株式会社 | Packet transmitting method and apparatus in inter-processor communication |
| JP2000332778A (en) * | 1999-05-18 | 2000-11-30 | Nippon Telegr & Teleph Corp <Ntt> | ATM switch |
| JP4002210B2 (en) * | 2003-05-13 | 2007-10-31 | 日本電信電話株式会社 | Input / crosspoint buffer type switch and scheduling method thereof |
-
2012
- 2012-02-28 JP JP2012041415A patent/JP5403380B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2013178626A (en) | 2013-09-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CA3125707C (en) | Virtualization of a reconfigurable data processor | |
| CN100557594C (en) | State Engine for Data Processors | |
| KR900006793B1 (en) | Packet switched multiple queue nxm switch mode and processing method | |
| US6647449B1 (en) | System, method and circuit for performing round robin arbitration | |
| US8050256B1 (en) | Configuring routing in mesh networks | |
| US8151088B1 (en) | Configuring routing in mesh networks | |
| EP1839166B1 (en) | Shared-memory switch fabric architecture | |
| US9384165B1 (en) | Configuring routing in mesh networks | |
| JP3674515B2 (en) | Array type processor | |
| US20200159692A1 (en) | Configuration unload of a reconfigurable data processor | |
| KR900006791B1 (en) | Packet Switched Multiport Memory N × M Switch Nodes and Processing Methods | |
| CN113811859A (en) | Control flow barrier and reconfigurable data processor | |
| JP2011503710A (en) | Shared memory system for tightly coupled multiprocessors | |
| WO2012169032A1 (en) | Buffer apparatus, buffer control apparatus and buffer control method | |
| US4521874A (en) | Random access memory device | |
| US10740269B2 (en) | Arbitration circuitry | |
| US11730325B2 (en) | Dual mode interconnect | |
| JP5403380B2 (en) | Crossbar switch, vector processing apparatus, and crossbar control method | |
| CN108541365B (en) | Apparatus and method for distribution of congestion information in switches | |
| Pérez et al. | Efficient bypass in mesh and torus NoCs | |
| JP6432348B2 (en) | Arithmetic apparatus and arithmetic method | |
| JP4314528B2 (en) | Multiprocessor system and memory access method | |
| US12267256B1 (en) | Dynamic destination id in an array level network of a reconfigurable dataflow processor | |
| Effiong et al. | Roundabout: a network-on-chip router with adaptive buffer sharing | |
| US20140082215A1 (en) | Arbitrating between data paths in a bufferless free flowing interconnect |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130805 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20131003 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131016 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5403380 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |