JP4443966B2 - Crossbar switch, operation control method thereof, and operation control program - Google Patents
Crossbar switch, operation control method thereof, and operation control program Download PDFInfo
- Publication number
- JP4443966B2 JP4443966B2 JP2004086613A JP2004086613A JP4443966B2 JP 4443966 B2 JP4443966 B2 JP 4443966B2 JP 2004086613 A JP2004086613 A JP 2004086613A JP 2004086613 A JP2004086613 A JP 2004086613A JP 4443966 B2 JP4443966 B2 JP 4443966B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- line
- data
- input
- address information
- 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 38
- 239000011159 matrix material Substances 0.000 claims description 18
- 230000008859 change Effects 0.000 claims description 5
- 230000003247 decreasing effect Effects 0.000 claims description 4
- 238000012546 transfer Methods 0.000 description 27
- 238000010586 diagram Methods 0.000 description 25
- 230000008569 process Effects 0.000 description 17
- 238000012545 processing Methods 0.000 description 16
- 238000004364 calculation method Methods 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 6
- 125000004122 cyclic group Chemical group 0.000 description 5
- 239000003086 colorant Substances 0.000 description 4
- 238000013507 mapping Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000001902 propagating effect Effects 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000002156 mixing Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Landscapes
- Multi Processors (AREA)
Description
本発明は、例えば画像処理用のコンピュータに搭載されるクロスバースイッチ及びその関連製品に関する。 The present invention relates to a crossbar switch mounted on, for example, a computer for image processing and related products.
マルチプロセッサにおけるノード結合を、少ない制約のもとで実現するシステム部品の一つとしてクロスバースイッチがある。
クロスバースイッチは、通常、データ経路が交わる複数の交点(「クロスポイント」と称する)の各々にスイッチ機構が配置された2次元格子状のパラレルバス配線により構成される。
動作時には、スイッチ機構で、複数のクロスポイントの接続/非接続を制御することにより、入力ノードライン(複数のクロスポイントが存在する入力用ノードのバス配線、以下同じ)と出力ノードライン(複数のクロスポイントが存在する出力用ノードのバス配線、以下同じ)のクロスポイントの組合せにより形成される複数のデータ経路を選択的に切り換えることが可能になっている。
クロスバースイッチは、データ同士の衝突を防ぐノンブロッキング性に優れ、また、その構造や制御が比較的単純である等の利点を有することから、多くのデータ処理装置において利用されている。
There is a crossbar switch as one of system components that realizes node coupling in a multiprocessor with few restrictions.
The crossbar switch is generally configured by a two-dimensional grid-like parallel bus wiring in which a switch mechanism is arranged at each of a plurality of intersections (referred to as “cross points”) at which data paths intersect.
During operation, the switch mechanism controls the connection / disconnection of a plurality of crosspoints, whereby an input node line (bus wiring of an input node having a plurality of crosspoints, the same applies hereinafter) and an output node line (a plurality of crosspoints It is possible to selectively switch a plurality of data paths formed by a combination of cross points of output node bus wirings where cross points exist (hereinafter the same).
The crossbar switch is excellent in non-blocking property for preventing collision between data and has advantages such as relatively simple structure and control, and is used in many data processing apparatuses.
従来のクロスバースイッチは、その構造上、スイッチ機構がノード数の2乗倍必要となることは良く知られている。
また、パラレルバスの配線に際しては、出線の競合等の問題を避けるために、各バスにアービタ(調停器)や入力バッファ等の付加的な回路要素を設けなければならないために、小型化することが難しい。
例えば、256〜1024のノードをスイッチさせる構成のクロスバースイッチにおいては、クロスポイント数は64キロポイント〜1メガポイント、パラレルバスのバス幅が32ビット幅であるとすると、スイッチ数は最大で32メガ個にも及び、このような大規模のものを小型に構成して実装することは、現状のプロセスルールでは非常に困難である。
また、従来のクロスバースイッチの構成では、スイッチ数の増大に伴ってデータ経路の交換処理を行う際のスイッチ制御が複雑となるばかりでなく、スイッチ制御のための配線数が飛躍的に増加してしまう。
It is well known that a conventional crossbar switch requires a switch mechanism that is square times the number of nodes because of its structure.
In parallel bus wiring, additional circuit elements such as an arbiter (arbiter) and input buffer must be provided on each bus in order to avoid problems such as output line competition. It is difficult.
For example, in a crossbar switch configured to switch 256 to 1024 nodes, assuming that the number of cross points is 64 kilopoints to 1 megapoint and the bus width of the parallel bus is 32 bits wide, the maximum number of switches is 32. It is very difficult to configure and mount such a large-scale one in a small size with the current process rules.
In addition, the conventional crossbar switch configuration not only complicates the switch control when data path exchange processing is performed as the number of switches increases, but also dramatically increases the number of wires for switch control. End up.
本発明は、上記のような問題を解決するべくなされたもので、スイッチ数が増大した場合であっても、配線数を増加させることがなく、データ経路の交換処理を行う際のスイッチ制御を複雑にすることもないクロスバースイッチ及びその関連製品を提供することを、その課題とする。 The present invention has been made to solve the above-described problems. Even when the number of switches is increased, the number of wires is not increased, and the switch control when performing the data path exchange process is performed. It is an object of the present invention to provide a crossbar switch and related products that are not complicated.
本発明が提供するクロスバースイッチは、カスケード接続された複数段のノードの各々にノードコントローラが配備されており、各ノードコントローラが、前段ノードから目的のノードコントローラが存在する相対位置を直接又は間接に特定するためのアドレス情報を入力する入力インタフェースと、入力されたアドレス情報が特定値を表しているかどうかを判別し、特定値を表すと判別したときに所定のデータ出力ラインへのデータ出力を可能にするとともに、前記入力されたアドレス情報を所定の規則に従って変化させた新たなアドレス情報を生成するスイッチと、この新たなアドレス情報を後段ノードへ出力する出力インタフェースとを有するものである。
「所定の規則」とは、例えば、ノード通過の度にアドレス情報が表す値を一定範囲ずつ特定値に近づけていき、特定値になった時点で当該ノードライン上では意味をなさない値に変化させること等が挙げられる。
このように構成されるクロスバースイッチによれば、アドレス情報を入力するだけで、該当するノードコントローラが、自律的にデータ出力ラインへのデータ出力を行う。
In the crossbar switch provided by the present invention, a node controller is provided in each of a plurality of cascade-connected nodes, and each node controller directly or indirectly indicates a relative position where the target node controller exists from the previous node. To determine whether the input address information represents a specific value, and to output data to a predetermined data output line when it is determined that the address information represents a specific value. And a switch for generating new address information obtained by changing the input address information in accordance with a predetermined rule, and an output interface for outputting the new address information to a subsequent node.
The “predetermined rule” means, for example, that the value represented by the address information is approximated to a specific value by a certain range each time a node passes, and changes to a value that does not make sense on the node line when the specific value is reached. For example.
According to the crossbar switch configured as described above, only by inputting address information, the corresponding node controller autonomously outputs data to the data output line.
前記アドレス情報には、例えば、循環性の数値データを用いることができる。
この場合、前記出力インタフェースは、この数値データを所定値分だけ同一変化方向に増加又は減少させることにより前記新たなアドレス情報を生成する。
数値データとすることにより、アドレス情報が特定値を表しているかどうかの判別が容易になる。
また、前記アドレス情報を、開始ビットと終了ビットとを含むシリアルデータとすることもできる。
シリアルデータとすることによりデータラインの節約が図れ、開始ビットと終了ビットとを含むことにより、数値データの特定が容易になる利点がある。
For the address information, for example, circular numerical data can be used.
In this case, the output interface generates the new address information by increasing or decreasing the numerical data in the same change direction by a predetermined value.
By using numerical data, it becomes easy to determine whether the address information represents a specific value.
The address information may be serial data including a start bit and an end bit.
By using serial data, data lines can be saved, and by including a start bit and an end bit, there is an advantage that it is easy to specify numerical data.
それぞれ前記複数段のノードを含む複数のノードラインを有するクロスバースイッチとすることもできる。
この場合、各ノードライン上のノードコントローラは、他のノードライン上のノードコントローラと非同期に動作するようにしてもよく、少なくとも並行動作する他のノードライン上のノードコントローラと同一のクロックタイミングで動作するようにしてもよい。
前者の場合はスイッチ制御が簡略化される利点があり、後者はノード間のデータ伝搬の遅延差がなくなる利点がある。
A crossbar switch having a plurality of node lines each including a plurality of stages of nodes can also be used.
In this case, the node controller on each node line may operate asynchronously with the node controllers on other node lines, and at least operates at the same clock timing as the node controllers on other node lines operating in parallel. You may make it do.
In the former case, there is an advantage that the switch control is simplified, and in the latter case, there is an advantage that there is no difference in delay of data propagation between nodes.
前記複数段のノードの各々が所定のデータメモリの出力アドレスと1対1に対応付けられており、各ノードコントローラのスイッチは、作動時に、当該ノードに対応付けられている前記出力アドレスを通じて前記データメモリから出力されるデータを前記データ出力ラインへ出力するようにしてもよい。
このようにすれば、アドレス情報を入力するだけで、データメモリから所望のデータが出力されるようになる。
Each of the plurality of nodes has a one-to-one correspondence with an output address of a predetermined data memory, and the switch of each node controller operates the data through the output address associated with the node when operating. Data output from the memory may be output to the data output line.
In this way, the desired data can be output from the data memory simply by inputting the address information.
それぞれ前記複数段のノードを含む複数のノードラインを有し、各ノードライン上のノードコントローラが、少なくとも並行動作する他のノードライン上のノードコントローラと同一のクロックタイミングで動作するクロスバースイッチにおいて、各ノードライン上のノードコントローラに、それぞれ、前段ノードからデータを入力するとともに、このデータを他のノードラインの後段ノードへ出力する第1パスと、前段ノードから前記アドレス情報を入力するとともに前記新たなアドレス情報を同一ノードラインの後段ノードへ出力する第2パスとを設定するようにしてもよい。
このような構成のクロスバースイッチでは、切替可能なデータ経路をより多くすることができる。
In a crossbar switch having a plurality of node lines each including a plurality of nodes, and a node controller on each node line operating at least at the same clock timing as a node controller on another node line operating in parallel, Each node controller on each node line receives data from the previous node and outputs the data to the subsequent node of another node line, and the address information from the previous node and the new node. And a second path for outputting correct address information to a subsequent node of the same node line.
In the crossbar switch having such a configuration, the number of switchable data paths can be increased.
第1パスと第2パスとが設定された上記のクロスバースイッチにおいて、各ノードコントローラを、複数のノードライン上で行列マトリクス状に配列し、前記第2パスは、各ノードラインの列方向に設定し、前記第1パスは、前段のノードコントローラの出力端と、そのノードコントローラの次段の行であって異なる列に存在するノードコントローラの入力端との間に設定するようにしてもよい。
このように各ノードコントローラを行列マトリクス状に配列することで、クロスバースイッチの構造を定型化することができ、多段接続が容易になる。
In the crossbar switch in which the first path and the second path are set, each node controller is arranged in a matrix matrix on a plurality of node lines, and the second path is arranged in the column direction of each node line. The first path may be set between the output end of the previous node controller and the input end of the node controller existing in a different column in the next row of the node controller. .
Thus, by arranging the node controllers in a matrix matrix, the structure of the crossbar switch can be standardized and multi-stage connection is facilitated.
各ノードコントローラが行列マトリクス状に配列された上記のクロスバースイッチにおいて、各ノードコントローラにおける前記第1パスと前記第2パスとが同一又は略同一のノード長となるようにすることで、多段接続の際のデータ遅延量を小さくすることができる。 In the above crossbar switch in which each node controller is arranged in a matrix matrix, the first path and the second path in each node controller are set to have the same or substantially the same node length, thereby providing a multistage connection. In this case, the data delay amount can be reduced.
少なくとも同一の行方向に配列されるすべての前記ノードコントローラが、同一の動作タイミングを定めるクロック信号にしたがって動作するようにしてもよい。
このようにすれば、各列のノードラインを非同期に動作させた場合であっても、それぞれの出力端から同時にデータが出力させることが可能になる。
All the node controllers arranged at least in the same row direction may operate according to clock signals that define the same operation timing.
In this way, even when the node lines of each column are operated asynchronously, data can be output simultaneously from the respective output terminals.
前記第1パスは、例えば、前段のノードコントローラの出力端と、そのノードコントローラの次段の行であって隣合う列に存在するノードコントローラの入力端との間に設定される。
あるいは、例えば、前記第1パスの一部又は全部が、前段のノードコントローラの出力端と、そのノードコントローラの次段の行であってそのノードコントローラからは複数列離れた位置に存在するノードコントローラの入力端との間に設定される。
この場合、列方向の最端部に位置するノードコントローラについての前記第1パスは、当該ノードコントローラの出力端と、次段の行の隣合う位置に存在するノードコントローラの入力端との間に設定される。
The first path is set, for example, between the output end of the previous node controller and the input end of the node controller existing in the next row of the node controller and in the adjacent column.
Alternatively, for example, a part or all of the first path is a node controller that exists at the output end of the previous node controller and the next row of the node controller and at a position separated by a plurality of columns from the node controller. Is set between the input terminal and the input terminal.
In this case, the first path for the node controller located at the extreme end in the column direction is between the output end of the node controller and the input end of the node controller present at the adjacent position in the next row. Is set.
他の形態においては、クロスバースイッチは、前記複数のノードラインの各々の入力端にアドレス情報生成手段が設けられ、このアドレス情報生成手段は、アドレス情報生成手段自体が設けられたラインを識別するための第1のライン識別データと、当該アドレス情報生成手段が設けられたラインの最後段のノードに設けられたスイッチから出力されるデータが入力されるノードラインを識別するための第2のライン識別データとに基づいて前記アドレス情報を生成する。
このアドレス情報生成手段により、任意のノードラインを指定してデータ出力を行わせることが可能になる。
In another form, the crossbar switch is provided with address information generating means at each input end of the plurality of node lines, and the address information generating means identifies the line on which the address information generating means itself is provided. And a second line for identifying a node line to which data output from a switch provided at the last node of the line provided with the address information generating means is input. The address information is generated based on the identification data.
By this address information generating means, it becomes possible to designate an arbitrary node line and output data.
本発明のクロスバースイッチは、コンピュータに搭載可能なパッケージに収容することができる。
その際、前記複数のノードラインの入力端に、当該入力端に入力されるデータを保有する第1デバイスを接続するためのインタフェース部品を設け、前記複数のノードラインの出力端に、各々のノードラインと1対1に対応する演算パイプラインを有する第2デバイスを接続するためのインタフェース部品を設けることで、これらのデバイスとの接続が容易になる。
また、前記複数のノードラインの入力端及び/又は出力端に、同一構成の他のクロスバースイッチの複数のノードラインを接続するためのインタフェース部品を設けることで、事後的な規模の拡張が容易になる。
The crossbar switch of the present invention can be housed in a package that can be mounted on a computer.
At this time, an interface component for connecting a first device holding data input to the input terminals is provided at the input terminals of the plurality of node lines, and each node is provided at an output terminal of the plurality of node lines. By providing an interface component for connecting the second device having the operation pipeline corresponding to the line one-to-one, the connection with these devices is facilitated.
Further, by providing interface parts for connecting a plurality of node lines of other crossbar switches having the same configuration at the input ends and / or output ends of the plurality of node lines, it is easy to expand the scale after the fact. become.
本発明は、また、クロスバースイッチの動作制御方法を提供する。
この方法は、それぞれカスケード接続された複数段のノードを含み、入力されたデータが流れる複数のノードラインを有し、ノードの各々にノードコントローラが配備されたクロスバースイッチの動作制御方法であって、前記クロスバースイッチを制御する装置が、データを出力させるノードラインの識別情報と、作動させるノードコントローラの相対位置を表す情報とによりアドレス情報を生成し、このアドレス情報を目的のノードラインの初段ノードに入力する段階と、前記アドレス情報が入力されたノードラインの各ノードに存在するノードコントローラが、それぞれ入力されたアドレス情報が特定値を表しているかどうかを判別し、特定値を表すと判別したときは当該ノードライン上のデータを出力するとともに、前記入力されたアドレス情報を所定値分だけ変化させた新たなアドレス情報を生成し、この新たなアドレス情報を後段ノードへ出力する段階とを有するクロスバースイッチの動作制御方法である。
この方法によれば、アドレス情報を入力するだけで、該当するノードコントローラが、自律的にデータ出力を行うので、クロスバースイッチの制御をノードライン毎に簡易に行うことができる。
The present invention also provides a method for controlling the operation of the crossbar switch.
This method is a method of controlling the operation of a crossbar switch including a plurality of nodes connected in cascade, a plurality of node lines through which input data flows, and a node controller arranged in each node. The device for controlling the crossbar switch generates address information from identification information of a node line for outputting data and information indicating a relative position of a node controller to be operated, and this address information is used as the first stage of the target node line. A step of inputting to the node, and a node controller existing in each node of the node line to which the address information is input determines whether the input address information represents a specific value, and determines that the specific value represents the specific value When this happens, the data on the node line is output and the input Les information generates new address information has been changed by a predetermined value amount, an operation control method of the crossbar switch and a step of outputting the new address information to the subsequent node.
According to this method, only by inputting address information, the corresponding node controller autonomously outputs data, so that the control of the crossbar switch can be easily performed for each node line.
本発明は、さらに、コンピュータのハードウエア資源との協働によって、クロスバースイッチの動作制御を行うコンピュータプログラムを提供する。
このプログラムは、それぞれカスケード接続された複数段のノードを含み、入力されたデータが流れる複数のノードラインを有し、ノードの各々にノードコントローラが配備されたクロスバースイッチを搭載して成るコンピュータが、各ノードコントローラを、以下のように動作させるためのクロスバースイッチの動作制御用プログラムである。
(1)目的のノードコントローラが存在する相対位置を直接又は間接に特定するためのアドレス情報を入力し、
(2)入力されたアドレス情報が特定値を表しているかどうかを判別し、特定値を表すと判別したときは、当該ノードライン上のデータを出力するとともに、
(3)前記入力されたアドレス情報を所定値分だけ変化させた新たなアドレス情報を生成し、この新たなアドレス情報を後段ノードへ出力する。
The present invention further provides a computer program for controlling the operation of the crossbar switch in cooperation with computer hardware resources.
This program includes a computer comprising a plurality of nodes connected in cascade, a plurality of node lines through which input data flows, and a crossbar switch in which a node controller is provided in each node. A crossbar switch operation control program for operating each node controller as follows.
(1) Input address information for directly or indirectly specifying the relative position where the target node controller exists,
(2) It is determined whether or not the input address information represents a specific value. When it is determined that the input address information represents a specific value, the data on the node line is output,
(3) New address information is generated by changing the input address information by a predetermined value, and the new address information is output to a subsequent node.
以上の説明から明らかなように、本発明によれば、スイッチ数が増大した場合であっても、配線数を増加させることがなく、データ経路の交換処理を行う際のスイッチ制御を複雑にすることもない、小型化且つ低コストのクロスバースイッチを提供することができる。また、本発明によれば、多段パイプラインにも適応可能なクロスバースイッチを提供することができる。 As is apparent from the above description, according to the present invention, even when the number of switches is increased, the number of wires is not increased, and the switch control when performing data path exchange processing is complicated. In addition, a small and low cost crossbar switch can be provided. Further, according to the present invention, it is possible to provide a crossbar switch that can be applied to a multistage pipeline.
<第1実施形態>
本発明のクロスバースイッチは、例えば大量の描画用データを処理する描画装置におけるメモリとプロセッサとの間のデータ転送制御に適用することができる。
以下、この場合の実施の形態を説明する。
まず、本発明が適用される描画装置について説明する。
図1は、この描画装置の要部構成図である。
描画装置は、描画処理に必要となるデータを確保するために、半導体デバイスの一例となるバッファ(メモリバッファ)1と、シリアル演算パイプラインを有するピクセルパイプラインプロセッサ2と、バッファ1とピクセルパイプラインプロセッサ2との間にインタフェース部品を介して接続されたクロスバースイッチ3とを有している。
バッファ1は、クロスバースイッチに入力される上記のデータが記憶されているデータメモリである。この実施形態では、一例として、マッピングにより、ポリゴン上の全体的な色及び模様を生成するためのテクステャおよびCLUT(Color Look Up Table、カラールックアップテーブル)等のデータを記憶する。
CLUTは、R(赤),G(緑),B(青)の3原色テーブルと、α値のテーブルとを含む。R,G,Bの3原色テーブルは、テクステャの各ピクセルの色を決定するために使用され、α値は、テクスチャをマッピングする際の画像のブレンド(αブレンディング)の割合をピクセル毎に決定するための係数値、つまり半透明度を表す係数値である。CLUTからR,G,B3原色の値を取り出すためのインデックス(CLUTのテーブル番号を指定するための値)は、テクステャのXY座標で表されるピクセル毎に設定される。
<First Embodiment>
The crossbar switch of the present invention can be applied to data transfer control between a memory and a processor in a drawing apparatus that processes a large amount of drawing data, for example.
Hereinafter, an embodiment in this case will be described.
First, a drawing apparatus to which the present invention is applied will be described.
FIG. 1 is a block diagram of the main part of the drawing apparatus.
The drawing apparatus includes a buffer (memory buffer) 1 as an example of a semiconductor device, a
The
The CLUT includes three primary color tables of R (red), G (green), and B (blue), and a table of α values. The R, G, and B primary color tables are used to determine the color of each pixel in the texture, and the α value determines the proportion of image blending (α blending) for mapping the texture for each pixel. This is a coefficient value for representing translucency. An index for extracting R, G, B3 primary color values from the CLUT (a value for designating the table number of the CLUT) is set for each pixel represented by the XY coordinates of the texturer.
ピクセルパイプラインプロセッサ2は、バッファ1からのデータの読み出しを行うと共に、テクステャマッピング、Z座標の比較、画素値計算等をパイプライン方式により行う。
ピクセルパイプラインプロセッサ2は、また、画像の輝度のエッジを抽出する処理、テクステャのインデックスに応じてCLUTからR,G,B3原色データを取り出して各ピクセルの色を設定する処理、Gプレーンの各ピクセルのバイト値をインデックスとしてCLUTから取り出したα値(階調化されたα値)を用いたαブレンド処理等をも行う。さらに、シザリング、ディザリング、カラークランプ等の処理を行う。
シザリングは、画面からはみ出したデータを取り除く処理であり、ディザリングは、少ない色数で多くの色を表現するための色の配置を入り組ませる処理であり、カラークランプは、色の計算時にその値が255を越えたり0より小さくなったりしないように制限する処理である。
The
The
Scissoring is a process that removes data that protrudes from the screen, dithering is a process that involves intricately arranging colors to represent many colors with a small number of colors, and color clamp is a process that calculates color when calculating colors. This is a process of limiting the value so that it does not exceed 255 or become smaller than 0.
ピクセルパイプラインプロセッサ2で上述した各処理を行うことにより得られたデータは、図示しないフレームバッファに記憶され、2次元モニタ画面に描画されるフレームデータ(2次元画像データ)にされた後、そのフレームデータがフレームバッファから読み出され出力端子から出力されて、2次元モニタ装置へ送られる。
The data obtained by performing the above-described processes in the
[クロスバースイッチ]
次に、図2〜図5を参照して、クロスバースイッチ3の構成及びその動作を説明する。
クロスバースイッチ3は、描画装置を実現するためのコンピュータに搭載可能なパッケージに収容されるもので、図2に示すように、格子状に配列されたシリアルバス配線4を含んで構成される。このクロスバースイッチ3は、描画装置における描画処理の際に、その描画装置が有するコントローラ(図示省略)によって、その動作が制御される。このコントローラは、プロセッサが所定のプログラムを実行することにより、描画処理及びクロスバースイッチ3の動作制御のための機能を有することになるものである。
シリアルバス配線4が交わるノードであるクロスポイントには、それぞれ、ノードの入力側のシリアルバス配線(以下、この実施形態において「入力ノードライン」と称する)とノードの出力側のシリアルバス配線(以下、この実施形態において「出力ノードライン」と称する)の接続/非接続を切り換えるためのノードコントローラ、例えばスイッチ回路5が設けられている。
入力ノードラインの各々は、インタフェース部品を介してバッファ1の出力アドレスと1対1に対応付けられて接続されており、出力ノードラインは、インタフェース部品を介してピクセルパイプラインプロセッサ2に接続されている。
[Crossbar switch]
Next, the configuration and operation of the
The
At the cross points that are nodes where the
Each of the input node lines is connected to the output address of the
スイッチ回路5は、予めアービトレーションで調整されることによって、その出力ノードライン上の相対位置が他のスイッチ回路と区別できるようになっている。
この個々のスイッチ回路5の相対位置を表す情報を、この明細書では、便宜上、そのスイッチ回路5の「アドレス」と呼ぶ。また、入力ノードラインと出力ノードラインとを接続させるための1つスイッチ回路5のアドレスを直接又は間接に特定するために指定するアドレス情報を「指定アドレス」と呼ぶ。
この実施形態で用いるアドレスは、出力ノードライン上のノード数、すなわちクロスポイント数分の数値を表すビット(数値データ)であって、出力ノードラインのアドレス入力端からデータ出力端の方向に、クロスポイントを経るたびに、例えば1ビットずつ減少し、特定値、例えばゼロ値になった時点で最大値、例えばクロスポイントの数が8つであった場合は、3,2,1,0,7,6,5,4となる循環性のものとする。
なお、数値を表すビットに代えて、A,B,C,・・・Z,A,・・・のような循環性の文字列データをアドレスとして用いることもできる。
この文字列データは、クロスポイントを経るたびに、1文字ずつ変化し、特定値(文字が表す値)になった時点で初期値に戻るものである。
The
In this specification, information representing the relative position of each
The address used in this embodiment is a bit (numerical data) representing the number of nodes on the output node line, that is, a numerical value corresponding to the number of cross points, and crosses in the direction from the address input end of the output node line to the data output end. Each time a point is passed, the value is decreased by, for example, 1 bit, and when a specific value, for example, zero value is reached, the maximum value, for example, the number of cross points is 8, 3, 2, 1, 0, 7 , 6,5,4.
Note that, instead of bits representing numerical values, cyclic character string data such as A, B, C,... Z, A,.
This character string data changes by one character each time a cross point is passed, and returns to the initial value when it reaches a specific value (value represented by the character).
アドレスの一例を図5を参照して説明する。
図5に示すように、256ビットのデータを出力ノードラインの出力端に到達させるために256本の入力ノードラインが設けられる場合、アドレスは、”255”〜”0”の256種類の循環性の数値データとなる。すなわち、1ビットずつ減少していき、”0”の次段のアドレスは、”255”、さらにその次段のアドレスは、”254”・・・となる。
An example of the address will be described with reference to FIG.
As shown in FIG. 5, when 256 input node lines are provided in order to reach 256-bit data to the output end of the output node line, the address has 256 kinds of circularity from “255” to “0”. It becomes the numerical data. That is, the address is decreased bit by bit, the address of the next stage of “0” is “255”, and the address of the next stage is “254”.
出力ノードラインのアドレス入力端には、アドレス選択回路6が接続されている。
このアドレス選択回路6は、指定アドレスを入力するものである。
各ノードラインには、コントローラのクロック信号源(図示省略)から出力された共通のクロック信号を伝送するためのクロック線7aが並列に配備されている。
このクロック線7a上のクロック信号は、各ノードラインと同様、リピータ8を通過するように構成されている。従って、各スイッチ回路5が、このクロック線7aのクロック信号を参照して、他のスイッチ回路と同じタイミングで動作を開始することにより、ノード(スイッチ回路)間を伝搬するデータの遅延差を低減させることができる。
また、ノード間での伝搬遅延(スキュー)を考慮する必要が無くなり、リピータ8等の挿入制限を緩和することができる。
An
The
Each node line is provided in parallel with a
The clock signal on the
Further, it is not necessary to consider the propagation delay (skew) between nodes, and the insertion restriction of the repeater 8 and the like can be relaxed.
クロスバースイッチ3の入力端とインタフェース部品との間には、バッファ1から読み出されるパラレルデータをシリアル変換するパラレル/シリアル変換回路9が接続されており、出力端とインタフェース部品との間には、シリアルデータをパラレル変換するシリアル/パラレル変換回路10が配設されている。パラレル/シリアル変換回路9は、クロック線7bのクロック信号を参照して動作のタイミングを調整できるように構成されている。
このクロック線7bは、好ましくはクロック線7aと共通のクロック信号を伝送するようにするが、異なるクロック信号を伝送するようにしてもよい。
A parallel /
The clock line 7b preferably transmits a common clock signal with the
なお、バッファ1及びピクセルパイプラインプロセッサ2がそれぞれ、シリアルデータを入出力可能な構成である場合、パラレル/シリアル変換回路9及びシリアル/パラレル変換回路10は不要となる。特に、ピクセルパイプラインプロセッサ2がシリアル演算パイプラインを含む場合には、そのシリアル演算パイプラインの入力端とクロスバースイッチ3の個々のシリアルバスの出力端とを1対1に対応させるだけで、両者を配線させることができるので、配線作業がより容易になる。
If the
スイッチ回路5は、出力ノードラインの前段ノード(スイッチ回路)から送られた指定アドレスを受け付ける入力インタフェースと、受け付けた指定アドレスが特定値(例えば”0”)を表すときに入力ノードラインと出力ノードラインとを接続してデータ経路を切り替えることにより、入力ノードラインのデータを出力ノードラインに出力可能にするとともに、受け付けた指定アドレスを所定規則、例えば循環性の順序性を維持しつつ、1つのクロスポイント通過分だけ減数して新たな指定アドレスを生成する機能と、この新たな指定アドレスを後段ノードへ送出する出力インタフェースとを有するものである。上記のデータ経路の切替と新たな指定アドレスの生成は、いずれも当該スイッチ回路5において自律的に行われる。
なお、上記の指定アドレスの受付、データ経路の切替及び新たな指定アドレスの生成、及び、新たな指定アドレスの出力は、論理回路とソフトウエアとの協働によって行うこともできるが、より単純には、図3のような論理回路のみで行うことができる。
The
In addition, the reception of the specified address, the switching of the data path, the generation of a new specified address, and the output of the new specified address can be performed by the cooperation of the logic circuit and the software, but more simply Can be performed only by a logic circuit as shown in FIG.
図3に例示するスイッチ回路5は、出力ノードラインのように、カスケード接続された複数段のノードを通じて入力されたシリアルのキャリービットを1ビットずつデクリメントするデクリメント回路11、すべてのアドレスビットを保持する論理和回路12、アドレスビットが”0”のときにセレクト信号を出力する論理積回路13、セレクト信号の出力レベルに応じて入力ノードラインと出力ノードラインの接続/非接続を切り換える接続切換回路14を備えている。
入力されたアドレスビットが”0”であることを検知するだけで、スイッチ回路5は、自己が指定されたことを認識できるので、目的のスイッチ回路5の指定の形態が非常に簡略化される利点がある。
The
Only by detecting that the input address bit is “0”, the
この実施形態のクロスバースイッチ3において、入力ノードライン及び出力ノードラインにクロック線7aを並行に配線し、各スイッチ回路5がクロック線7aを伝搬する共通のクロック信号を参照してノード(スイッチ回路)間を伝搬するデータの遅延差を低減させているのは、以上の問題を簡易に解決するための一手段である。
このような構成により、ノード単位でのデータの同期を確立することが容易になり、また、ノード間での伝搬遅延(スキュー)を考慮する必要が無くなり、リピータ8等の挿入制限を緩和することができる。
In the
Such a configuration makes it easy to establish data synchronization in units of nodes, eliminates the need to consider propagation delay (skew) between nodes, and relaxes insertion restrictions of the repeater 8 and the like. Can do.
[クロスバースイッチの動作制御方法]
次に、バッファ1からピクセルパイプラインプロセッサ2へのデータ転送を行う場合のクロスバースイッチ3の動作制御方法について説明する。
この方法は、基本的には、上述した描画装置のコントローラが主導的になって行うが、例えばコントローラの制御によってピクセルパイプラインプロセッサ2が行うようにしてもよい。
この動作制御方法の概要は、以下のとおりである。
すなわち、コントローラが、いずれかの出力ノードラインの入力端から指定アドレスをシリアルデータとして入力する。
この指定アドレスは、目的のスイッチ回路5が出力ノードラインの入力端から何個目のスイッチ回路かを表す数値データである。指定アドレスの入力により、その出力ノードラインの各スイッチ回路5に、自律的に、入力された指定アドレスが”0”かどうかを判別させ、ゼロ値を表すときは入力ノードライン上のデータを受け取って、その出力ノードラインの後段ノードへ転送させる。また、入力した指定アドレスを”1”だけ減数させて新たな指定アドレスを生成し、この新たな指定アドレスを後段ノードへシリアルデータとして出力させる。
[Crossbar switch operation control method]
Next, an operation control method of the
This method is basically performed by the controller of the drawing apparatus described above, but may be performed by the
The outline of this operation control method is as follows.
That is, the controller inputs the specified address as serial data from the input end of any output node line.
This designated address is numerical data representing the number of the switch circuit from the input end of the output node line of the
図4は、コントローラによって上記の動作制御が行われるときのスイッチ回路5の処理手順図である。
<ステップS1>
コントローラは、目的のスイッチ回路5を有する出力ノードラインのアドレス選択回路6に指定アドレスを入力し、そのアドレス選択回路6がその指定アドレスを初期化して1ビットずつ当該出力ノードラインに入力する。
FIG. 4 is a processing procedure diagram of the
<Step S1>
The controller inputs the designated address to the
<ステップS2>
デクリメント回路11は、前段ノードより受け付けたアドレスビットの最下位ビット(最初に受け付けたアドレスビット)をデクリメントして次段ノードに出力すべき新たな指定アドレス(アドレスビット)の値を決定する。
デクリメントの際に、そのアドレスビットが”0”の場合には位下げ(繰り下げ)が生じるので、次のアドレスビットもデクリメントする。
なお、この処理の際、論理和回路12は、前段ノードからのアドレスビットを所定のメモリ領域に保持する。
<Step S2>
The
At the time of decrementing, if the address bit is “0”, lowering (carrying down) occurs, so the next address bit is also decremented.
In this process, the
<ステップS3>
論理積回路13は、アドレスビットの出力が終了したか否かを判別する。
終了した場合には、ステップS4の処理へと移り、終了していない場合には、ステップS1の処理に戻る。
<Step S3>
The
If completed, the process proceeds to step S4. If not completed, the process returns to step S1.
<ステップS4>
論理積回路13は、アドレスビットの和が”0”であるか否かを判別する。
アドレスビットの和が”0”であった場合は、ステップS5の処理へ移る。
<ステップS5>
スイッチ回路5の論理積回路13は、セレクト信号をアサートする。
そして、接続切換回路14がセレクト信号にしたがって入力ノードラインと出力ノードラインを接続する。
図5は、この様子を示すものである。
これにより、入力ノードラインから出力ノードラインへのデータ転送が行われる。
データ転送が終了した時点で一連の制御処理を終える。
<Step S4>
The
If the sum of the address bits is “0”, the process proceeds to step S5.
<Step S5>
The AND
Then, the
FIG. 5 shows this state.
Thereby, data transfer from the input node line to the output node line is performed.
When the data transfer is completed, a series of control processing is completed.
上記のような制御処理をすべてのスイッチ回路5が自律的に実行することにより、バッファ1からピクセルパイプラインプロセッサ2へのデータ転送が適切に行われる。
このような動作制御方法を採用することにより、クロスポイント切替(データ転送)のための制御線とデータ投入線とを共有化することができ、バス配線数を大幅に減らすことが可能となる。
Data control from the
By adopting such an operation control method, it is possible to share a control line for crosspoint switching (data transfer) and a data input line, and the number of bus lines can be greatly reduced.
このように、本実施形態のクロスバースイッチ3は、入力ノードラインと出力ノードラインをシリアルバスで構成し、指定アドレスを出力ノードラインに入力するだけで、その指定アドレスが”0”になったスイッチ回路5が自律的にクロスポイント切替(データ転送)を行うようにしたので、パラレル型のクロスバースイッチに比べて、配線数を格段に少なくすることができ、小型化を実現することができる。
さらに、バスをシリアル化したことによるパフォーマンスの低下を抑制することができる。
As described above, in the
Furthermore, it is possible to suppress a decrease in performance due to serialization of the bus.
また、各々の入力ノードラインが他の入力ノードラインと独立にシリアルデータを伝送し、出力ノードラインも他の出力ノードラインとは独立に指定アドレスを伝送するようにしたので、ノードライン間の非同期伝送が可能になり、ノードライン、ノード、クロスポイントの数が多い場合であっても、その制御が複雑になることがない。
各スイッチ回路5が、少なくとも並行動作する他のノードライン上のスイッチ回路5の動作タイミングを定めるクロック信号と同一のクロック信号にしたがって動作することができるので、データのノード間の伝搬遅延差を小さくすることができる。
In addition, each input node line transmits serial data independently of other input node lines, and the output node line also transmits a specified address independently of other output node lines. Transmission is possible, and control is not complicated even when the number of node lines, nodes, and cross points is large.
Since each
また、本実施形態のクロスバースイッチ3では、所望の出力ノードラインに指定アドレスを入力するだけで、クロスポイント切替が行われるので、データ経路の切替に関する外部動作制御が不要になり、しかも、制御動作自体が単純化される利点がある。
In the
なお、以上の説明は、描画装置のコントローラが主導的にクロスバースイッチ3の動作制御を行う場合の例であるが、クロスバースイッチの動作制御は、クロスバースイッチを搭載するが描画装置とは独立して存在するコンピュータと、コンピュータ読み取り可能な記録媒体に記録された制御処理プログラムとの協働によって実現することもできる。
すなわち、動作制御用プログラムを記録した記録媒体をコンピュータに装着して、そのコンピュータの記憶部に動作制御用プログラムをロードし、コンピュータのプロセッサが、この動作制御用プログラムを読み込んで実行することで、図4に示した手順で動作制御を行うようにする。記録媒体は、例えば、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テ一プ等のプログラムを記録することができるようなコンピュータ読み取り可能な記録媒体等が含まれる。
Although the above description is an example in which the controller of the drawing apparatus performs the operation control of the
That is, by mounting a recording medium on which an operation control program is recorded in a computer, loading the operation control program into the storage unit of the computer, and the computer processor reads and executes the operation control program, Operation control is performed according to the procedure shown in FIG. Examples of the recording medium include a computer-readable recording medium that can record a program such as a semiconductor memory, a magnetic disk, an optical disk, a magneto-optical disk, and a magnetic tape.
<第2実施形態>
次に、多段パイプラインにも適応可能なクロスバースイッチの実施形態を説明する。
この実施形態のクロスバースイッチは、それぞれ入力端から出力端の方向にシリアルデータを伝送させるための複数のノードラインを有し、これらのノードラインの各々に、複数のノードコントローラが所定のノード間隔で1つずつ挿入接続されているものである。
なお、この実施形態にいうノードラインは、第1実施形態との間の説明の整合を図るために便宜上設けた観念的なものである。
また、この実施形態においても、第1実施形態の場合と同様、ノードコントローラを「スイッチ回路」と称する。
<Second Embodiment>
Next, an embodiment of a crossbar switch applicable to a multistage pipeline will be described.
The crossbar switch of this embodiment has a plurality of node lines for transmitting serial data in the direction from the input end to the output end, and a plurality of node controllers are arranged at predetermined node intervals on each of these node lines. Are inserted and connected one by one.
Note that the node lines referred to in this embodiment are conceptual ones provided for the sake of convenience in order to match the description with the first embodiment.
Also in this embodiment, as in the case of the first embodiment, the node controller is referred to as a “switch circuit”.
図6は、この実施形態によるクロスバースイッチの特徴的な構成部分及びその動作概要を説明するための図である。
この実施形態のクロスバースイッチは、アドレス情報生成手段の一例となるアドレス初期化部20と、データ経路の切替を行う経路切替部21とを含んで構成される。
ここでは、経路切替部21におけるスイッチ回路(図6において矩形で示されているもの)が、8×8の行列マトリクス状に配されているクロスバースイッチの例を挙げる。
FIG. 6 is a view for explaining characteristic components of the crossbar switch according to this embodiment and an outline of the operation thereof.
The crossbar switch according to this embodiment includes an
Here, an example of a crossbar switch in which switch circuits (shown by rectangles in FIG. 6) in the
この実施形態のクロスバースイッチが第1実施形態のクロスバースイッチ3と異なるのは、カスケード接続されたノード間に第1パスと第2パスとを設定し、第1パスを第2パスに対して斜めに配線したこと、及び、出力されるデータが経るノード数である。
なお、ここでいう斜めとは、スイッチ回路が行列マトリクス状に配されたクロスバースイッチにおいて、第1スイッチ回路が次段の第2スイッチ回路に第2パスによって接続される場合、第1パスは、第1スイッチ回路を、第2スイッチ回路と同じ段に設けられてかつ第2スイッチ回路とは異なる第2スイッチ回路に接続することを意味する。
スイッチ回路が行列マトリクス状に配置されていることから、第1パスは第2パスに対して斜めとなる。また、図6等に示されるように、第1パスは、必ずしも第2パスと斜め、即ち平行でも垂直でもない角度になるわけではなく、第2パスと垂直な配線と第2パスに平行な配線とによって第1パスを構成してもよい。スイッチ回路自体は、第1実施形態のクロスバースイッチ3のものを使用することもできるが、後述するように異なる構成にすることもできる。
The crossbar switch of this embodiment is different from the
Note that the diagonal here means that in a crossbar switch in which switch circuits are arranged in a matrix matrix, when the first switch circuit is connected to the second switch circuit of the next stage by the second path, the first path is This means that the first switch circuit is connected to a second switch circuit provided in the same stage as the second switch circuit and different from the second switch circuit.
Since the switch circuits are arranged in a matrix matrix, the first path is inclined with respect to the second path. In addition, as shown in FIG. 6 and the like, the first path is not necessarily oblique to the second path, that is, not at an angle that is neither parallel nor perpendicular, but is parallel to the wiring and the second path perpendicular to the second path. You may comprise a 1st path | pass with wiring. As the switch circuit itself, the one of the
斜めに配線される第1パスは、第1実施形態の場合と同様、各入力端からのデータが全ての出力端に送出可能なように最後まで流されるパスである。
この第1パスは、前段のスイッチ回路の出力端と、そのスイッチ回路の次段の行で異なる列に存在するスイッチ回路の入力端との間に設定される。
図6の例では、次段の行で1つおきに離れた列に存在し、列の最端部のノードについては次段の行で隣合う位置に存在するスイッチ回路の入力端との間に設定されている。
このように設定することで、データの伝送遅延差を低減させることができる。
一方、第2パスは、前段ノードから指定アドレスが流されるパスであり、ノードラインに沿って配線される。
As in the case of the first embodiment, the first path wired obliquely is a path that flows to the end so that data from each input end can be sent to all output ends.
This first path is set between the output end of the previous switch circuit and the input end of the switch circuit existing in a different column in the next row of the switch circuit.
In the example of FIG. 6, it exists in every other column in the next row, and the node at the extreme end of the column is between the input ends of the switch circuits existing in adjacent positions in the next row. Is set to
By setting in this way, the difference in data transmission delay can be reduced.
On the other hand, the second path is a path through which a designated address flows from the previous node, and is wired along the node line.
コンピュータ搭載可能なパッケージに収容可能な点、各スイッチ回路がそれぞれ指定アドレスによって直接又は間接に特定することができる点、例えば描画装置のコントローラによってその動作が制御される点については、第1実施形態のクロスバースイッチ3と同じである。
この実施形態では、各ノードラインは、2値の識別データであるライン番号によって他のノードラインと識別され、指定アドレスは、2値のアドレスビットで表現されるものとする。
説明を簡略化するため、以後の説明では、ライン番号及び指定アドレスがそれぞれ3ビットで表されるものとするが、この数値は例示であって、この例に限定させる趣旨ではない。
A point that can be accommodated in a computer-mountable package, a point that each switch circuit can be directly or indirectly specified by a designated address, for example, a point that its operation is controlled by a controller of a drawing apparatus, is described in the first embodiment. This is the same as the
In this embodiment, each node line is identified from other node lines by a line number that is binary identification data, and the designated address is expressed by binary address bits.
In order to simplify the description, in the following description, it is assumed that the line number and the designated address are each represented by 3 bits, but this numerical value is an example and is not intended to be limited to this example.
図6に示されるアドレス初期化部20は、目的のスイッチ回路を指定するための初段のスイッチ回路用の指定アドレスを設定する。
指定アドレスは、第1実施形態の場合と同様、例えば目的のスイッチ回路が上述の初段のスイッチ回路から何番目のスイッチ回路かを表す数値データであり、ノードを通過する度に“1”だけデクリメント(減数)されて新たな指定アドレスとなる。
従って、目的のスイッチ回路に対しては、前段のスイッチ回路から指定アドレスとして“0”が入力される。この指定アドレスにより、各スイッチ回路に、自律的に、入力された指定アドレスが“0”かどうかを判別させ、“0”を表すときはそのスイッチ回路(指定アドレスによって識別されるスイッチ回路)に接続されている第1パス上のデータが後段側のノードラインから出力されるようにする。
図6の例では、ライン6の出力端からライン7に入力されるデータを出力する場合の指定アドレスが“001”に設定されることを示しており、これが第2パスを通じて最初のスイッチ回路へ送られる。
The
As in the case of the first embodiment, the designated address is numerical data indicating, for example, which switch circuit the target switch circuit is from the first-stage switch circuit described above, and is decremented by “1” every time it passes through the node. (Decremented) to become a new designated address.
Therefore, “0” is input as the designated address to the target switch circuit from the previous-stage switch circuit. Based on this designated address, each switch circuit autonomously determines whether or not the inputted designated address is “0”. When “0” is represented, the switch circuit (a switch circuit identified by the designated address) is designated. The data on the connected first path is output from the node line on the subsequent stage side.
In the example of FIG. 6, it is shown that the designated address when data input to the
この実施形態で用いるスイッチ回路は、具体的には図7のように構成される。
すなわち、スイッチ回路50は、入力インタフェースの一例となる第1パス入力端INaから入力されたシリアルデータaと、同じく入力インタフェースの一例となる第2パス入力端INbから入力されたシリアルデータbと、このシリアルデータbをデクリメント回路502でデクリメントしたデータcとをセレクタ501で選択的に、出力インタフェースの一例となる第1パス出力端OUTa及び第2パス出力端OUTbとから出力する。
デクリメント回路502には、キャリー回路503が設けられており、キャリービットの論理レベル(“0”/“1”)が、デクリメント回路502の入力側とセレクタ501に供給されるように構成されている。
キャリー回路503は、後述する制御スタートビットによりリセットされる。
The switch circuit used in this embodiment is specifically configured as shown in FIG.
That is, the
The
セレクタ501及びキャリー回路503には、外部のコントローラから出力されるフェーズデータも入力される。
フェーズデータは、クロスポイント制御フェーズとデータ転送フェーズとを形成するためのもので“0”と“1”のいずれかが入力される。
フェーズデータが“0”のときが、アドレス投入となるクロスポイント制御フェーズ、フェーズデータが“1”のときが、データ投入となるデータ転送フェーズである。
フェーズデータは、各行のすべてのスイッチ回路のセレクタ501及びキャリー回路503に同じデータが入力される。フェーズデータ“0”からフェーズデータ“1”への移行は、すべてのアドレスビットが流れたことを契機として行われる。
一方、フェーズデータ“1”からフェーズデータ“0”への移行は、コントローラの指示に基づいて行われる。例えば、あるノードラインの入力端と他のノードラインの出力端とを第1パスを通じて接続した状態で他の出力端と入力端との接続関係を変える必要がある場合も、このフェーズデータをコントローラから該当するスイッチ回路のセレクタ501及びキャリー回路503に入力することで実現が可能となる。
Phase data output from an external controller is also input to the
The phase data is used to form a crosspoint control phase and a data transfer phase, and either “0” or “1” is input.
When the phase data is “0”, the cross-point control phase when the address is input is the data transfer phase when the phase data is “1”.
As phase data, the same data is input to the
On the other hand, the transition from the phase data “1” to the phase data “0” is performed based on an instruction from the controller. For example, if it is necessary to change the connection relationship between the other output terminal and the input terminal while the input terminal of one node line and the output terminal of the other node line are connected through the first path, this phase data is used as the controller. To the
キャリー回路503は、フェーズデータが“0”のときはキャリービット伝搬、フェーズデータが“1”のときはキャリービット保持を行う。
このキャリービットは、後述するように、フェーズ切替の際の重要なデータとなるものである。すなわち、フェーズデータが“1”でキャリービットも“1”の場合は、クロスポイント制御フェーズにおいて投入された指定アドレスが“0”であった、すなわち、このスイッチ回路が指定されていたことを表す。
セレクタ501は、所定規則にしたがって、シリアルデータの選別を行う。
例えば、フェーズデータが“0”のときはデクリメント回路502から出力されたデータcを第2パス出力端OUTbから出力する。
フェーズデータが“1”でキャリービットが“0”のときは第1パス入力端INaと第1パス出力端OUTa、第2パス入力端INbと第2パス出力端OUTbをそれぞれ繋ぎ、フェーズデータが“1”でキャリービットが“1”のときは第1パス入力端INaと第1パス出力端OUTa、第1パス入力端INaと第2パス出力端OUTbをそれぞれ繋ぐ。
つまり、フェーズデータが“1”の場合、スイッチ回路の第1パスの出力端OUTaからは、キャリービットの値に拘わらず、常に、当該スイッチ回路の前段のスイッチ回路(又はアドレス初期化部)から当該スイッチ回路の第1パスの入力端INaに入力されたビット値がそのまま出力される。
一方、第2パスの出力端OUTbからは、キャリービットが“0”のときには、当該スイッチ回路がその第2パスの入力端INbで受信したビット値が、キャリービットが“1”であるときは、当該スイッチ回路がその第1パスの入力端INaで受信したビット値がそのまま出力される。
As will be described later, the carry bit becomes important data at the time of phase switching. That is, when the phase data is “1” and the carry bit is “1”, it indicates that the designated address input in the crosspoint control phase is “0”, that is, this switch circuit is designated. .
The
For example, when the phase data is “0”, the data c output from the
When the phase data is “1” and the carry bit is “0”, the first path input terminal INa and the first path output terminal OUTa, the second path input terminal INb and the second path output terminal OUTb are respectively connected, and the phase data is When “1” and the carry bit is “1”, the first path input terminal INa and the first path output terminal OUTa, and the first path input terminal INa and the second path output terminal OUTb are connected to each other.
That is, when the phase data is “1”, from the output terminal OUTa of the first path of the switch circuit, always from the switch circuit (or address initialization unit) in the previous stage of the switch circuit, regardless of the value of the carry bit. The bit value input to the input terminal INa of the first path of the switch circuit is output as it is.
On the other hand, from the output terminal OUTb of the second path, when the carry bit is “0”, the bit value received by the switch circuit at the input terminal INb of the second path is when the carry bit is “1”. The bit value received by the switch circuit at the input terminal INa of the first path is output as it is.
上述したように、あるノードラインの入力端と他のノードラインの出力端とを第1パスを通じて接続した状態で他の出力端と入力端との接続関係を変える必要がある場合、つまり、あるノードラインだけ出力データを変える(アドレスを再度流す)必要がある場合は、フェーズデータが“0”のときに第1パス入力端INaと第1パス出力端OUTaとを繋ぎ、デクリメント回路502の出力(第2パス入力端1Nb)と第2パス出力端OUTbとを繋ぐようにする。
As described above, there is a case where it is necessary to change the connection relationship between the other output end and the input end in a state where the input end of one node line and the output end of another node line are connected through the first path. When it is necessary to change the output data only for the node line (flow the address again), when the phase data is “0”, the first path input terminal INa and the first path output terminal OUTa are connected, and the output of the
なお、上述したリセットのための制御スタートビット及びフェーズデータは、コントローラから命令列である「インストラクションアレイ」として供給される。
また、以後の説明では、第1実施形態に合わせて、図7のように構成されるノードコントローラをスイッチ回路50と表現する。
Note that the control start bit and phase data for reset described above are supplied from the controller as an “instruction array” which is an instruction sequence.
In the following description, the node controller configured as shown in FIG. 7 is expressed as a
<クロスバースイッチの動作制御方法>
次に、この実施形態におけるクロスバースイッチの動作制御方法を図6、図8〜図25を参照して説明する。
この方法もまた、描画装置のコントローラが主導的になって行われるが、上述したように、描画装置とは独立に存在するコンピュータとプログラムとの協働によって行うこともできる。
ここでは、前提として、図6の最上段に示されるように、それぞれ8種類のデータ(データ0〜データ7)があり、これらのデータを、図6最下段に示されるライン番号(ライン0〜ライン7)によって識別されるいずれかのノードラインから出力させるものとする。また、この実施形態では、各ライン0〜7にはデータ0〜7がそれぞれ入力され、ライン0の経路切換部21の最終段のスイッチ回路からはデータ4を出力させる。
同様に、ライン1からはデータ6,ライン2からはデータ1、ライン3からはデータ3、ライン4からはデータ4,ライン5からはデータ5、ライン6からはデータ7、ライン7からはデータ4が、それぞれ最終段のスイッチ回路から出力される。
以下の説明では、ライン番号をn(0≦n≦7)として、各データ0〜データ7に対して、当該データがアドレス初期化部を通じて入力されたラインを「入力元ライン」と記載する。アドレス初期化部(AINI−1〜AINI−7)が属するライン番号と当該アドレス初期化部に入力されるデータの番号とは一致しているので、ライン番号nがそのままデータ番号となる。
例えば、データ5の入力元ラインは、データ番号の「5」をそのまま用いてライン5として表される。
また、データnが出力されるラインをデータnの「出力先ライン」と記載する。
上述のように、ライン4に入力されたデータ4は、ライン4,ライン7,ライン0のそれぞれから出力される。
従って、データ4の出力先ラインはライン4,ライン7,ライン0となる。
一方、データ2はどこからも出力されないので、出力先ラインは存在しないことになる。更に、ラインnにおける経路切換部21の最終段のスイッチ回路から出力されるデータをラインn出力データとする。
例えば、後に説明する図22に示されるように、ライン0におけるライン出力データ、即ちライン0出力データはデータ4であり、ライン1出力データはデータ6である。
各ノードラインのスイッチ回路50には、それぞれ7、6、5、4、3、2、1、0の循環性のアドレス(数値データ)が降順に割り当てられているものとする。
<Crossbar switch operation control method>
Next, a method for controlling the operation of the crossbar switch in this embodiment will be described with reference to FIGS. 6 and 8 to 25.
This method is also performed under the initiative of the controller of the drawing apparatus, but as described above, it can also be performed by the cooperation of a computer and a program that exist independently of the drawing apparatus.
Here, as a premise, there are 8 types of data (
Similarly, data from
In the following description, the line number is n (0 ≦ n ≦ 7), and for each
For example, the input source line of
Further, a line from which data n is output is referred to as “output destination line” of data n.
As described above, the
Therefore, the output destination lines of
On the other hand, since the
For example, as shown in FIG. 22 described later, the line output data in
It is assumed that cyclic addresses (numerical data) of 7, 6, 5, 4, 3, 2, 1, 0 are assigned to the
コントローラは、目的のスイッチ回路50を指定するために、ラインnのアドレス初期化部20に対して、ラインn出力データの入力元ラインのライン番号を表す3ビットのアドレスビットをシリアルに入力する。なお、この例では、データ番号を、当該データが入力されるアドレス初期化部が属するラインの番号と一致させているので、ラインn出力データのデータ番号は、ラインn出力データの入力元ラインのライン番号と一致する。
具体的には、ライン0において、ライン0出力データはデータ4であり、このデータ4の入力元ラインはライン4であるので、ライン0のアドレスビットは4となる。
また、ライン1においては、ライン1出力データはデータ6であり、を出力させるので、ライン1のアドレスビットは6となる。
同様に、ライン2、3,4,5,6,7におけるアドレスビットは、それぞれ1、3、4、5、7、4となる。
本実施形態では、ラインnのアドレス初期化部にデータnを入力する前に、上述のように定められたラインnアドレスビットがシリアルに入力される。
図6の例では、最右列のライン0には、ライン0出力データであるデータ4の入力元ラインであるライン4を識別するためのアドレスビット“100”が入力され、その後にデータ0が入力される。なお、図6では、このアドレスビットを「アドレス4」と記載している。“ライン1には、ライン1出力データであるデータ6の入力元ラインを識別するためのアドレスビット“110”がシリアルに入力される。
同様に、ライン7にはライン4を識別するためのアドレスビット“100”、ライン2にはライン1を識別するためのアドレスビット“001”、ライン6にはライン7をを識別するためのアドレスビット“111”、ライン3にはライン3を識別するためのアドレスビット“011”、ライン5にはライン5を識別するためのアドレスビット“101”、ライン4にはライン4を識別するためのアドレスビット“100”がそれぞれシリアルに入力されることが図6に示される。アドレス初期化部20(AINI-0〜AINI-7)では、当該アドレス初期化部が属するラインのライン番号と、入力されたアドレスビットから、指定アドレスを算出する。図6では、このアドレスビットが「アドレス1」〜「アドレス6」として表されている。また、アドレス初期化部AINI-0〜AINI-7の数値部分は、アドレス初期化部が設けられたノードラインのライン番号を表している。
In order to designate the
Specifically, in
In
Similarly, the address bits on
In the present embodiment, the line n address bits determined as described above are serially input before data n is input to the address initialization unit of line n.
In the example of FIG. 6, the address bit “100” for identifying the
Similarly,
各アドレスビットのうち最初のビットSは制御開始ビットであり、LSB(Least Significant Bit)に同期して入力される。
この制御開始ビットが各スイッチ回路50に入力されることにより、キャリー回路503を初期化し、セレクタ501がアドレスビットを一つ通過させる。
各アドレスビットのうち2番目のビットCは制御ビットであり、中データに同期して入力される。
各アドレスビットのうち3番目のビットは終了ビットであり、MSB(Most Significant Bit)に同期して入力される。この終了ビットが入力されたときにキャリービットが“1”になるスイッチ回路50が、データ転送を行う目的のスイッチ回路となる。
The first bit S of each address bit is a control start bit, and is input in synchronization with an LSB (Least Significant Bit).
When this control start bit is input to each
The second bit C of each address bit is a control bit and is input in synchronization with the middle data.
The third bit of each address bit is an end bit and is input in synchronization with MSB (Most Significant Bit). The
図6のクロスバースイッチの経路切換部21の各スイッチ回路は、第1パスと第2パスとで接続されている。第1パスはラインnのm段目のスイッチ回路を、ライン(n−1)の(m+1)段目のスイッチ回路と接続する(1≦m≦8)。
例えば、図6において、ライン4の1段目のスイッチ回路は、第1パスを通じてライン3の2段目のスイッチ回路に接続されている。また、ライン0においては、(n−1)の値は−1となるが、0≦n≦7であるので、この値を7とする。従って、ライン0は第1パスを通じてライン7に接続される。このように、nの値を0〜7の範囲で、…2,1,0,7,6…と循環させるようにする。mに関しては、1≦m≦8であるが、8+1=9段目は、最終段におけるスイッチ回路からデータが出力されることを意味するので、nとは異なり、mは循環性の値とはならない。
また、後述するように、第1パスと第2パスの接続形式が、ライン0の第2パスの入力側からみて、ライン0の第1パス、ライン1の第1パス、・・・ライン7の第1パスという順番で繋がるようになっているので、例えば、ラインn出力データが入力されるノードラインのライン番号と、ラインn出力データが出力されるノードラインのライン番号との演算によって指定アドレスを生成することができる。
但し、この例の場合、指定アドレスは0〜7の循環性をもつ数値データなので、アドレス初期化部20では、・・・1→0→7→6・・・のような循環性を考慮した演算を行う。
Each switch circuit of the
For example, in FIG. 6, the first-stage switch circuit of
As will be described later, the connection form of the first path and the second path is the first path of
However, in this example, since the designated address is numerical data having a cyclicity of 0 to 7, the
上述したように、フェーズデータ“0”からフェーズデータ“1”への移行は、すべてのアドレスビットが流れたことを契機として行われる。
従って、図6、図8〜22において、経路切換部21の各スイッチ回路においては、アドレスビット(本実施形態では3ビット)が流れている間はフェーズデータは“0”である。
また、データは、アドレスビットがすべて流れた後に流れるので、データが流れているときは、フェーズデータは“1“となっている。
ここで、上述のように、フェーズデータが“1”の場合、キャリービットの値に拘わらず、第1パスの出力端OUTaからは、常に第1パスの入力端INaからの入力が出力される。
従って、ラインnのZ段目のスイッチ回路に第1パスから(1段目のスイッチ回路に関してはアドレス初期化部から入力される)入力されたデータは、少なくとも第1パスの入力端INaから第1パスの出力端OUTaへと流れて次のラインであるライン(n−1)の次の段である(m+1)段目のスイッチ回路へと流れることが保証されている(ただし、0≦n≦7、1≦m≦8)。
As described above, the transition from the phase data “0” to the phase data “1” is performed when all the address bits flow.
Therefore, in FIGS. 6 and 8 to 22, in each switch circuit of the
Further, since the data flows after all the address bits have flowed, the phase data is “1” when the data is flowing.
Here, as described above, when the phase data is “1”, the input from the input terminal INa of the first path is always output from the output terminal OUTa of the first path regardless of the value of the carry bit. .
Therefore, data input from the first path (input from the address initialization unit for the first-stage switch circuit) to the Z-stage switch circuit of the line n is at least from the input terminal INa of the first path. It is guaranteed that the current flows to the output terminal OUTa of one path and flows to the switch circuit of the (m + 1) th stage that is the next stage of the line (n−1) that is the next line (where 0 ≦ n ≦ 7, 1 ≦ m ≦ 8).
例えば、図6において、データ4は、アドレス初期化部AINI−4を通じてライン4の初段のスイッチ回路に入力される。
このライン4の初段のスイッチ回路では、第1パスを通じてライン3の2段目のスイッチ回路へとデータ4を流す。ライン3の2段目のスイッチ回路では、第1パスを通じてライン2の3段目のスイッチ回路へとデータ4を流す。同様にして、データ4は、ライン1の4段目のスイッチ回路、ライン0の5段目のスイッチ回路、ライン7の6段目のスイッチ回路、ライン6の7段目のスイッチ回路、ライン7の8段目のスイッチ回路へと流される。このように、データ4は、第1パスを通じて各ラインごとに1つのスイッチ回路を流れることが保証されている。
同様に、データ0〜3,5〜7のいずれも各ライン毎に1つのスイッチ回路を流れる。
クロスバースイッチの第1パスを通じたデータの流れは以上のとおりである。
次に、クロスバースイッチの第2パスについて説明する。クロスバースイッチの第2パスは、常に同一ラインのスイッチ回路を接続する。図6のライン4を例にとると、図中に示した矢線方向に伸びてAINI−4から図中下部の「ライン4」との記載に向かう太線が第2パスとなる。従って、第2パスを通じてデータが流れる場合には、同一ラインの初段、2段目、3段目、…8段目の各スイッチ回路をデータが流れることになる。
For example, in FIG. 6,
In the first stage switch circuit of
Similarly, all of data 0-3, 5-7 flow through one switch circuit for each line.
The data flow through the first path of the crossbar switch is as described above.
Next, the second path of the crossbar switch will be described. The second path of the crossbar switch always connects switch circuits on the same line. Taking the
本実施形態では、ラインn出力データとしてデータxをラインnの経路切換部21の8段目のスイッチ回路から出力させたい場合、このデータxが実際にラインnから出力されるようにするために、以下のような処理を行う。まず、ラインnの経路切換部21の1段目〜8段目のスイッチ回路のうち、第1パスからデータxを受けとるスイッチ回路を指定する。指定する手法は後述する。指定されたスイッチ回路では、第1パスから受けとったデータxを第2パスを通じて同一ラインの次の段のスイッチ回路に流す。指定されたスイッチ回路以降の段のスイッチ回路では、第2パスを通じて受けとったデータxを第2パスを通じて次の段のスイッチ回路に流す。
これを繰り返し、8段目のスイッチ回路では、データxを第2パスを通じて受けとり、受けとったデータxを出力する。
これにより、データxが実際にラインn出力データとして8段目のスイッチ回路から出力される。
なお、図7に示されるように、スイッチ回路には第1パス出力端OUTaと第2パス出力端OUTbとの二つの出力が設けられており、本実施形態では、8段目のスイッチ回路からは第2パス出力端OUTbのみからデータxを出力するものとした。
しかし、8段目のスイッチ回路にの出力端OUTa、OUTbのうちどちらからデータxを出力するかは任意に定めることができ、例えば第1パス出力端OUTaのみ、あるいは両方の出力端からデータxを出力してもよい。
In the present embodiment, when it is desired to output the data x as the line n output data from the switch circuit at the eighth stage of the
This is repeated, and the switch circuit in the eighth stage receives the data x through the second path and outputs the received data x.
As a result, data x is actually output from the eighth-stage switch circuit as line n output data.
As shown in FIG. 7, the switch circuit is provided with two outputs, ie, a first path output terminal OUTa and a second path output terminal OUTb. Output data x only from the second path output terminal OUTb.
However, it is possible to arbitrarily determine which of the output terminals OUTa and OUTb outputs the data x to the eighth-stage switch circuit. For example, only the first path output terminal OUTa or both of the output terminals can output the data x. May be output.
次に、個々のラインに注目してクロスバースイッチの動作説明を行う。
各ラインにおいては、1つのラインあたり8つのスイッチ回路が配置されている。各ラインの経路切換部21の1段目のスイッチ回路は、それぞれの第1パスを通じてそれぞれ異なるデータを受ける。
以下、図6のライン4の各段について、データ0〜7のうちどのデータが第1パスを通じて入力されるかを説明する。
ライン4の初段のスイッチ回路にはAINI−4を通じてデータ4が入力される。
この実施形態では、初段の回路の第1パス入力端Inaは、データ4を受けとる。
2段目のスイッチ回路は、第1パスを通じてライン5の初段に接続されている。
従って、ライン5のアドレス初期化部からライン5の初段のスイッチ回路に入力されたデータ5が、この第1パスを通じてライン5の初段からライン4の2段目のスイッチ回路に入力される。
つまり、ライン4の2段目の第1パス入力端INaは、データ5を受けとる。
同様に、ライン4の3段目のスイッチ回路の入力端INaは、データ6を受けとる。
同様に、ライン4の4段目、5段目、6段目、7段目、8段目の各スイッチ回路の第1パス入力端Inaは、それぞれデータ7,データ0,データ1,データ2,データ3を受けとる。
このように各ラインに注目すると、ラインnの各段のスイッチ回路の第1パス入力端Inaが受けとるデータは、初段即ち1段目ではデータn、2段目ではデータ(n+1)、3段目はデータ(n+2)、4段目はデータ(n+3)…m段目にはデータ{n+(m−1)}、…8段目はデータ(n+7)となる。ただし、上述のように0≦n≦7,1≦m≦8であるので、{(n+m−1)}の値は、…7,8,1,2,3,4,5,6,7,8,1,2,…のように、1〜8の間で循環する。
Next, focusing on individual lines, the operation of the crossbar switch will be described.
In each line, eight switch circuits are arranged per line. The first-stage switch circuit of the
Hereinafter, for each stage of the
In this embodiment, the first path input terminal Ina of the first stage circuit receives
The second-stage switch circuit is connected to the first stage of the
Therefore, the
That is, the first pass input terminal INa in the second stage of the
Similarly, the input terminal INa of the third-stage switch circuit on the
Similarly, the first path input terminals Ina of the fourth, fifth, sixth, seventh, and eighth switch circuits of
When attention is paid to each line in this way, the data received by the first path input terminal Ina of the switch circuit at each stage of the line n is data n at the first stage, that is, data n at the first stage, data (n + 1) at the second stage, and data at the third stage. Is the data (n + 2), the fourth row is the data (n + 3)... The mth row is the data {n + (m−1)}, the eighth row is the data (n + 7). However, since 0 ≦ n ≦ 7 and 1 ≦ m ≦ 8 as described above, the value of {(n + m−1)} is 7, 8, 1, 2, 3, 4, 5, 6, 7 , 8, 1, 2,...
このように、いずれのラインnにおいても、そのm段目のスイッチ回路にはデータ{n+(m−1)}が入力される。
逆に、データxをラインnのラインn出力データとする場合には、x={n+(m−1)}の関係が成立することから、データxが入力される段数mは、m=x−n+1として表される。
例えばライン6(即ちn=6)のスイッチ回路において、データ7をライン6出力データとする(即ちx=7)のであれば、データ7が入力される段の番号m=(7−6+1)=2であるので、データ7は2段目に入力されることがわかる。ライン6出力データがデータ5(即ちx=5)であれば、(5−6+1)=0であるが、上述のように段数は1〜8で循環しているので、0段目=8段目となり、その結果、データ7は8段目に入力されることになる。実際に、図6においても、すべてのライン及びすべての段でこの関係が成立している。
Thus, in any line n, the data {n + (m−1)} is input to the m-th switch circuit.
On the contrary, when the data x is the line n output data of the line n, the relationship x = {n + (m−1)} is established, and therefore the number of stages m to which the data x is input is m = x Expressed as -
For example, in the switch circuit of line 6 (ie, n = 6), if
このような前提のもとに、本実施形態では、フェーズデータが“1”のときは、ラインn(例えば図6のライン6)の各段のスイッチ回路のうち、ラインn出力データとなるべきデータであるデータx(図6のライン6においては、図22に示されるようにデータ7がライン6出力データに該当し、x=7となる)が第1パスの入力端INaから入力されているスイッチ回路においては必ずキャリービットが1となり、かつ、第2パスの入力端からデータxが入力されているスイッチ回路においてはキャリービットが必ず“0”になるようにクロスバースイッチを構成している。
原理的には、これらに該当しないスイッチ回路におけるキャリービットは“0”でも“1”でも構わない。本実施形態では、これらに該当しないスイッチ回路におけるキャリービットの値は“0”となる。
Based on such a premise, in the present embodiment, when the phase data is “1”, line n output data should be output from the switch circuits at each stage of line n (for example,
In principle, the carry bit in the switch circuit not corresponding to these may be “0” or “1”. In the present embodiment, the value of the carry bit in the switch circuit not corresponding to these is “0”.
後述するように、本実施形態では、図7に示されるスイッチ回路を用いて指定アドレス、フェーズデータ、リセット入力を適切に定めることで上述の構成が達成される。
このような構成とすることで、ラインnの各スイッチ回路においては、データxが第1パスの入力端INaから入力された場合、当該スイッチ回路の第2パスの入力端INbが受けとったデータとは無関係に、第2パスの出力端OUTbからデータxが出力されて同じラインにおける次の段のスイッチ回路の第2パスの入力端INbに入力される。
この第2パスを通じてデータxを受けとったスイッチ回路では、上述のようにキャリービットの値は“0”であるので、データxを第2パスの出力端OUTbに出力し、同じラインの更に次の段のスイッチ回路の第2パスの入力端INbに入力する。
このように、以降の段のスイッチ回路では、第2パスから入力されたデータをそのまま同じラインの次段のスイッチ回路に出力する。
従って、ラインnの8段目のスイッチ回路からは、ラインn出力データとしてデータxが出力される。
As will be described later, in the present embodiment, the above-described configuration is achieved by appropriately setting the designated address, phase data, and reset input using the switch circuit shown in FIG.
With this configuration, in each switch circuit of line n, when data x is input from the input end INa of the first path, the data received by the input end INb of the second path of the switch circuit Regardless, the data x is output from the output terminal OUTb of the second path and input to the input terminal INb of the second path of the switch circuit of the next stage on the same line.
In the switch circuit that has received the data x through the second path, the value of the carry bit is “0” as described above. Therefore, the data x is output to the output terminal OUTb of the second path, and the next line on the same line is further output. The signal is input to the input terminal INb of the second path of the stage switch circuit.
In this way, in the subsequent stage switch circuits, the data input from the second path is output as it is to the next stage switch circuit on the same line.
Therefore, data x is output as line n output data from the switch circuit in the eighth stage of line n.
以上のことから、任意のラインのアドレス初期化部に入力されるデータを、ラインnにおけるラインn出力データとすることができる。
また、ラインとデータとを一対一に対応させるだけでなく、複数のラインから同じデータを出力することもできる。
例えば図22に示されるように、ライン4とライン7とライン0とにおいては、いずれもライン出力データとしてデータ4が出力されている。
以下、上述のようにキャリービットを設定するための構成を説明する。
本実施形態においては、上記構成を実現するために、図7に示されるスイッチ回路を用い、かつ、上述のような構成となるように、指定アドレスの設定、フェーズデータの指定、キャリービットの値の変更、リセット信号の入力タイミングを定めている。
From the above, the data input to the address initialization unit for any line can be the line n output data for line n.
Further, not only the line and the data are made to correspond one-to-one, but the same data can be output from a plurality of lines.
For example, as shown in FIG. 22,
Hereinafter, a configuration for setting the carry bit as described above will be described.
In the present embodiment, in order to realize the above configuration, the switch circuit shown in FIG. 7 is used, and the configuration of the specified address, the specification of phase data, the value of the carry bit are set as described above. And the input timing of the reset signal.
本実施形態では、アドレス投入となるクロスポイント制御フェーズではフェーズデータを0として、各ラインのそれぞれのアドレス初期化部で指定アドレスをスイッチ回路に流している。
また、上述のように、ノード(スイッチ回路)を通過する度に、指定アドレスが“1”だけデクリメント(減数)されて新たな指定アドレスとして後段のスイッチ回路に出力される。
アドレス初期化部では、指定アドレスを初段のスイッチ回路の第2パスの入力端INbに、データを初段のスイッチ回路の第1パスの入力端INaにそれぞれ入力する。フェーズデータが“0”のときは、デクリメント回路502から出力されたデータcを第2パス出力端OUTbから出力する。上述のように、フェーズデータが“0”のときは、スイッチ回路においては、キャリービット伝搬を行う。
In this embodiment, phase data is set to 0 in the cross-point control phase where an address is input, and a specified address is sent to the switch circuit in each address initialization unit of each line.
Further, as described above, every time a node (switch circuit) is passed, the designated address is decremented (decremented) by “1” and output to the succeeding switch circuit as a new designated address.
In the address initialization unit, the designated address is input to the input terminal INb of the second path of the first-stage switch circuit, and the data is input to the input terminal INa of the first path of the first-stage switch circuit. When the phase data is “0”, the data c output from the
このように指定アドレスが1ビットずつ入力されるキャリービット伝搬におけるスイッチ回路の動作を説明する。
キャリービットが0の場合、第2パス入力端INbからの入力が0のときは、第2パス出力OUTbの出力は0、キャリーは0のまま維持される。
キャリービットが0で第2パス入力端INbからの入力が1のときは、第2パス出力OUTbの出力は1、キャリーは0のまま維持される。
キャリービットが1の場合、第2パス入力端INbからの入力が0のときは、第2パス出力OUTbの出力は1、キャリーは1のままとなる。
キャリービットが1で第2パス入力端INbからの入力が1のときは、第2パス出力OUTbの出力は0、キャリーは0となる。
即ち、各スイッチ回路では、1ビットずつシリアルに入力される指定アドレスの各ビットに対して、キャリーが1のときは減算を行った出力を行い、キャリーが0のときは減算を行わない。その結果、各スイッチ回路においては、1ビットずつシリアルに入力される指定アドレスを1だけ小さくするという動作が(1デクリメント)がシリアルに行われる。このような構成により、後段のスイッチ回路には、減算によりその値が1だけ小さくなった指定アドレスをシリアルに入力することが達成される。
The operation of the switch circuit in carry bit propagation in which the designated address is input bit by bit will be described.
When the carry bit is 0, when the input from the second path input terminal INb is 0, the output of the second path output OUTb is maintained at 0 and the carry is maintained at 0.
When the carry bit is 0 and the input from the second path input terminal INb is 1, the output of the second path output OUTb is 1 and the carry is maintained at 0.
When the carry bit is 1, when the input from the second path input terminal INb is 0, the output of the second path output OUTb remains 1, and the carry remains 1.
When the carry bit is 1 and the input from the second path input terminal INb is 1, the output of the second path output OUTb is 0 and the carry is 0.
That is, in each switch circuit, for each bit of the designated address that is serially input bit by bit, when the carry is 1, the subtracted output is performed, and when the carry is 0, the subtraction is not performed. As a result, in each switch circuit, an operation of reducing the designated address serially input by 1 bit by 1 (1 decrement) is performed serially. With such a configuration, it is possible to serially input a designated address whose value is reduced by 1 by subtraction to the switch circuit at the subsequent stage.
ここで、上述のスイッチ回路の動作において、スイッチ回路のキャリービットが0のときは、第2パス入力端INbから0,1のいずれが入力されても、キャリービットの値は0に維持される。
一方、スイッチ回路のキャリービットが1のときには、第2パス入力端INbからの入力が0であったときのみキャリービットが1のまま維持され、第2パス入力端INbからの入力が1であると、キャリービットは0に変更される。
キャリービットの初期値は1であるので、スイッチ回路に1ビットずつ入力される指定アドレスの各ビット(本実施形態では3つのビット)のうち、1つでもそのビットの値が1であれば、キャリービットの値は0となり、その後キャリービットの値が1になることはない。
Here, in the operation of the switch circuit described above, when the carry bit of the switch circuit is 0, the value of the carry bit is maintained at 0 regardless of whether 0 or 1 is input from the second path input terminal INb. .
On the other hand, when the carry bit of the switch circuit is 1, the carry bit remains 1 only when the input from the second pass input terminal INb is 0, and the input from the second pass input terminal INb is 1. Then, the carry bit is changed to 0.
Since the initial value of the carry bit is 1, if at least one of the bits (three bits in the present embodiment) of the designated address input bit by bit to the switch circuit is 1, The value of the carry bit is 0, and the value of the carry bit is never 1 after that.
スイッチ回路に入力される指定アドレスの値が「0」であれば、指定アドレスを構成するすべてのビットが0であるので、そのスイッチ回路のキャリービットは1のままとなる。従って、指定アドレスが0、つまり“000”が入力されたスイッチ回路では、キャリービットは1のままに維持される。
一方、スイッチ回路に入力される指定アドレスが「0」以外であれば、指定アドレスを構成するビットのうち少なくとも1つはその値が「0」となる。従って、入力された指定アドレスが0ではないスイッチ回路では、3ビットのアドレスが入力された後のキャリービットの値は、必ず「0」となっている。
このようにして、順次入力される指定アドレスのすべてのビットが“0”であったスイッチ回路においてのみ、キャリービットの値が“1”となることが達成される。
その他のスイッチ回路においては、指定アドレスの3ビットすべてが通過してデータの入力が行われても(即ちフェーズデータが“1”になっても)キャリービットの値は0のままとなる。
この構成により、「データ転送フェーズ(フェーズデータ=“1”)において、第1パスからデータxが入力されるスイッチ回路を指定し、指定したスイッチ回路のキャリービットの値を1とし、その他のスイッチ回路のキャリービットの値を0とする」ことが実現される。
If the value of the designated address input to the switch circuit is “0”, since all bits constituting the designated address are 0, the carry bit of the switch circuit remains at 1. Accordingly, the carry bit is maintained at 1 in the switch circuit to which the designated address is 0, that is, “000” is input.
On the other hand, if the designated address input to the switch circuit is other than “0”, the value of at least one of the bits constituting the designated address is “0”. Accordingly, in the switch circuit in which the input designated address is not 0, the value of the carry bit after the input of the 3-bit address is always “0”.
In this way, it is achieved that the value of the carry bit becomes “1” only in the switch circuit in which all the bits of the designated address sequentially input are “0”.
In other switch circuits, even if all three bits of the designated address pass and data is input (that is, even if the phase data becomes “1”), the value of the carry bit remains 0.
With this configuration, “in the data transfer phase (phase data =“ 1 ”), the switch circuit to which the data x is input from the first path is designated, the carry bit value of the designated switch circuit is set to 1, and the other switches The value of the carry bit of the circuit is set to “0”.
一方、「データ転送フェーズにおいて、ラインnの1段目〜8段目に配置されたスイッチ回路のうち、ラインn出力データとなるべきデータであるデータxが第1パス(またはアドレス初期化部)から入力されるスイッチ回路を指定」するための構成を以下に示す。
ラインnのアドレス初期化部では、このような指定を行うために、ラインn出力データであるデータxが第1パス(1段目においてはアドレス初期化部)からどの段のスイッチ回路に対して入力されるかを演算する。
上述のように、ラインnのスイッチ回路においては、データxは、(x−n+1)段目に入力される。
また、上述のように、指定アドレスは図7のデクリメント回路502でデクリメントされた後に次段のスイッチ回路に入力されるので、(x−n+1)段目においては、指定アドレスが(x−n)回デクリメントされたうえで入力されることになる。
以上のことから、ラインnのアドレス初期化部では、指定アドレスを(x−n)として算出する。
On the other hand, “in the data transfer phase, the data x that is the data to be the output data of line n among the switch circuits arranged in the first to eighth stages of line n is the first path (or address initialization unit). A configuration for designating a switch circuit input from is shown below.
In order to make such designation, the address initialization unit for line n receives the data x as the output data for line n from the first pass (address initialization unit in the first stage) to which stage of the switch circuit. Calculate whether it is input.
As described above, in the switch circuit of line n, the data x is input to the (x−n + 1) th stage.
Further, as described above, since the designated address is decremented by the
From the above, the address initialization unit for line n calculates the designated address as (x−n).
例えば、ライン6に注目すると、ライン6に入力されるデータ6がライン1出力データである場合、n=1、x=6であるので、アドレス初期化部1では、指定アドレスの値を(6−1)=5として算出する。
指定アドレスは、ライン1の1段目、2段目、3段目、4段目、5段目の各経路切換部21の行のスイッチ回路でそれぞれ「1」ずつデクリメントされる。
従って、6段目の行のスイッチ回路では、指定アドレスは、5回デクリメントされて「0」となっており、これにより、ライン1の6段目の行のスイッチ回路が、「ライン1出力データであるデータ6が第1パスから入力されるスイッチ回路」として認識される。
なお、ライン7(n=7)では、ライン4に入力されるデータ4(x=4)がライン7出力データとなるので、(x−n)の値は4−7=−3となる。
しかし、アドレス初期化部7では、上述の循環性から、減算結果である「−3」に循環サイクルである8を加算した「5(“101”)」を出力する。このように、8を法としたモジュロ演算を行うことで、循環サイクルを考慮した演算結果が得られる。
For example, when attention is paid to the
The designated address is decremented by “1” by the switch circuits in the first, second, third, fourth, fifth, and fifth
Therefore, in the switch circuit in the sixth row, the designated address is decremented five times to “0”, so that the switch circuit in the sixth row of
In line 7 (n = 7), data 4 (x = 4) input to
However, the
シリアル減算器等を用いて2進法の減算をシリアルに行うことで、上述のような循環性を反映させた指定アドレスを出力するようアドレス初期化部を構成することができる。
なお、アドレス初期化部は、当該アドレス初期化部自体が設けられたライン番号を参照できるようにしておく。例えば、アドレス初期化部に設けられたメモリに上記ライン番号を記録してく。また、アドレス初期化部にも上述のフェーズデータが供給される。アドレス初期化部nにおいて、フェーズデータが0のときには上述の減算が行われる。フェーズデータが1のときには、入力されるデータnをそのままスルーして初段のスイッチ回路へとデータを流す。
次に、上記減算の原理を説明する。フェーズデータが0のときの演算は、1ビットずつシリアルに行われる。例えば、上述アドレス初期化部で、ライン7出力データのデータ番号である4(“100”)からライン7のライン番号である7(“111”)を減算する場合、以下のように処理がなされる。
まず、ラインn出力データのデータ番号(上述のアドレス初期化部7の例では“100”)の最初のビットがアドレス初期化部nに入力される(この入力をPとする)。
一方、ラインnに設けられたアドレス初期化部nでは、ラインnのライン番号n(上述の例では“111”)の最初のビットを読み出す(この読み出したビットをQとする)。アドレス初期化部nでは、キャリービットをRとして、P−Q−Rを演算し、その演算結果を初段のスイッチ回路に出力する。
ただし、この演算において、キャリービットのデフォルト値は0である。また、演算結果が負の場合には、キャリービットは、演算前の状態に拘わらず1に設定される。また、出力結果は、演算結果に「2」を足した結果を出力する。これにより、1ビットずつのシリアル入力による減算が行われる。
By serially performing binary subtraction using a serial subtractor or the like, the address initialization unit can be configured to output a designated address reflecting the above-described circularity.
Note that the address initialization unit can refer to the line number provided with the address initialization unit itself. For example, record the line number in a memory provided in the address initialization unit. The above-described phase data is also supplied to the address initialization unit. In the address initialization unit n, when the phase data is 0, the above-described subtraction is performed. When the phase data is 1, the input data n is directly passed through and the data flows to the first-stage switch circuit.
Next, the principle of the subtraction will be described. The operation when the phase data is 0 is serially performed bit by bit. For example, when the address initialization unit subtracts 7 (“111”), which is the line number of
First, the first bit of the data number of the line n output data (“100” in the above example of the address initialization unit 7) is input to the address initialization unit n (this input is P).
On the other hand, the address initialization unit n provided in the line n reads the first bit of the line number n (“111” in the above example) of the line n (this read bit is set as Q). The address initialization unit n calculates PQR with R as the carry bit, and outputs the calculation result to the first-stage switch circuit.
However, in this calculation, the default value of the carry bit is 0. If the calculation result is negative, the carry bit is set to 1 regardless of the state before the calculation. As the output result, a result obtained by adding “2” to the operation result is output. Thereby, subtraction by serial input of 1 bit is performed.
図8は、クロスポイント制御フェーズを開始するために、最下位ビットのシリアルデータ(アドレス)である制御開始ビットSがアドレス初期化部20に入力された状態、図9は最下位ビットに続き、2番目のビットのシリアルデータ(アドレス)である制御ビットCがアドレス初期化部20に入力され、最下位ビットは初段の行のスイッチ回路50に入力された状態、図10は3ビット目のシリアルデータ(アドレス)である制御終了ビットEがアドレス初期化部20に入力され、1ビット目は2段目の行のスイッチ回路50、2ビット目が初段の行のスイッチ回路50に入力された状態を示している。
これらの3ビットのすべてがアドレス初期化部20を通過した時点の数値は、上述した減算結果を表すものとなる。
FIG. 8 shows a state in which a control start bit S which is serial data (address) of the least significant bit is input to the
The numerical value at the time when all of these three bits have passed through the
図8において、ライン7を例にとって説明すると、ライン7出力データはデータ4であるのでx=4、ライン番号が7なのでn=7となる。
アドレス初期化部7には、x=4(“100”)の最下位ビット「0」が入力される。
アドレス初期化部7では、n=7(“111”)の最下位ビット「1」を上述のメモリから読み出して0から1を減算し、更にキャリービットのデフォルト値“0”を減算する。
減算結果は0−1−0=−1となるが、上述のようにこの値に2を足した値である“1”が指定アドレスの最下位ビットとして初段のスイッチ回路に供給される(図8のAINI−7における「0→1」に対応)。この際、図示されていないが、演算結果が負であるので、上述の原理からキャリービットは“1”となる。
図9において、x=“100”の2番目のビット“0”がアドレス初期化部7に入力され、n=“111”の2番目のビット“1”がメモリから読み出されて減算される。
この際、キャリービットが“1”であるので、このビットの減算結果は0−1−1=−2となる。上述の原理から演算結果の値に2を足した“0”が初段のスイッチ回路に供給される(図9のAINI−7における「0→0」に対応)。また、演算結果が負であるので、キャリービットは“1”となる。
図10において、x=“100”の最上位ビット“1”がAINI−7に入力され、n=“111”の最上位ビット“1”が減算され、更にキャリービットの値“1”が減算される。
この減算結果は、1−1−1=−1となるが、上述の原理から2を加えて“1”を出力する。これにより指定アドレスの3番目のビットは“1"となる(図10のAINI−7における「1→1」に対応)。
これらの処理を行うことで、指定アドレスとして、「101」、つまり5が得られる。このようにキャリービットを用いることで、ラインn出力データのデータ番号であるxからライン番号nを減算した結果を得ることができる。
In FIG. 8, taking
The least significant bit “0” of x = 4 (“100”) is input to the
The
The subtraction result is 0-1−0 = −1. As described above, “1”, which is a value obtained by adding 2 to this value, is supplied to the first-stage switch circuit as the least significant bit of the designated address (see FIG. 8 corresponds to “0 → 1” in AINI-7). At this time, although not shown, since the calculation result is negative, the carry bit is “1” based on the above-described principle.
In FIG. 9, the second bit “0” of x = “100” is input to the
At this time, since the carry bit is “1”, the subtraction result of this bit is 0−1-1 = −2. Based on the above principle, “0” obtained by adding 2 to the value of the operation result is supplied to the first stage switch circuit (corresponding to “0 → 0” in AINI-7 in FIG. 9). Further, since the calculation result is negative, the carry bit is “1”.
In FIG. 10, the most significant bit “1” with x = “100” is input to AINI-7, the most significant bit “1” with n = “111” is subtracted, and the carry bit value “1” is further subtracted. Is done.
The subtraction result is 1-1-1 = -1, but 2 is added from the above principle to output "1". As a result, the third bit of the designated address becomes “1” (corresponding to “1 → 1” in AINI-7 in FIG. 10).
By performing these processes, “101”, that is, 5 is obtained as the designated address. By using the carry bit in this way, a result obtained by subtracting the line number n from the data number x of the line n output data can be obtained.
引き続き、4ビット目のシリアルデータ(伝送対象データ)がアドレス初期化部20に入力されると、指定アドレスは、制御終了ビットEが、経路切替部21の初段の行のスイッチ回路50に入力される。
このときの状態を示したのが図11である。
図11では、ライン4、ライン5、ライン3の先頭行のスイッチ回路50のキャリービットが”1”になっている。したがって、上述したように、これらのライン4,5,3では、初段の行のスイッチ回路50がデータ転送を行うスイッチ回路として指定されたことになるので、これらのスイッチ回路50では、第1パス上を流れるシリアルデータが第2パス上に転送され、それぞれデータが出力端に至るまで、同一ノードライン(第2パス)の後段のスイッチ回路50をそのままスルーしていく。
Subsequently, when the fourth bit serial data (data to be transmitted) is input to the
FIG. 11 shows the state at this time.
In FIG. 11, the carry bit of the
図12は、ライン6の2段目のスイッチ回路50がデータ転送を行うスイッチ回路として選定された状態を示している。
その後、図13及び図14のように1段ずつシリアルデータが伝送していき、図15の状態でライン0の5段目の行のスイッチ回路50がデータ転送を行うスイッチ回路として選定される。図16の状態では、さらに、ライン1、ライン7の6段目の行のスイッチ回路50がデータ転送を行うスイッチ回路として指定される。
さらに図17の状態を経て、図18の状態で、ライン2の最下段のスイッチ回路がデータ転送を行うスイッチ回路50として指定される。
FIG. 12 shows a state where the second-
Thereafter, serial data is transmitted step by step as shown in FIGS. 13 and 14, and the
Further, after the state of FIG. 17, in the state of FIG. 18, the lowermost switch circuit of
このようにして、各ノードラインにおけるそれぞれのスイッチ回路50において指定アドレスのすべてのアドレスビットの入力が終わると、次の動作タイミングからデータ転送フェーズに入る。やがて、図19〜図21の順にデータが各スイッチ回路50を通過していき、各ノードラインの出力端から、それぞれ1ビットずつ出力される。
これらのシリアルデータがどの経路をセレクトされて通過していき、最終的にどのような状態で出力端から出力されたかを示したのが、図22である。
In this way, when the input of all the address bits of the designated address is finished in each
FIG. 22 shows which path the serial data has been selected and passed through, and in what state it is finally output from the output terminal.
このように、第2実施形態のクロスバースイッチでは、データ転送フェーズとクロスポイント制御フェーズとが分離されているので、クロスポイント制御を行うための制御線とデータ出力線とを共有化することが可能となり、クロスバースイッチ内の配線数を大幅に減らすことができ、クロスバースイッチの小型化を実現することができる。
また、例えば、ノード間の距離が同一又は略同一になるように配線することにより、これをインタフェース部品を介して多段接続してクロスバースイッチの規模を事後的に拡大することが容易になる。さらに、インストラクションアレイによって、データ転送とほぼ同じ時間でクロスポイント制御を行うことができるので、クロスポイント制御フェーズの割合が少ない処理の場合には、より高速なデータ転送処理を実現することができる。
As described above, in the crossbar switch of the second embodiment, the data transfer phase and the crosspoint control phase are separated, and therefore, it is possible to share the control line and the data output line for performing the crosspoint control. Thus, the number of wires in the crossbar switch can be greatly reduced, and the crossbar switch can be downsized.
Further, for example, by wiring the nodes so that the distances between them are the same or substantially the same, it is easy to connect them in multiple stages via interface components and subsequently increase the scale of the crossbar switch. Furthermore, since the instruction array can perform the cross point control in almost the same time as the data transfer, it is possible to realize a higher speed data transfer process in the case of a process with a small ratio of the cross point control phase.
第2実施形態のクロスバースイッチの利用形態は、実に様々である。
例えば、図23のような、一般的なクロスバースイッチの利用形態のほか、図24のようなマルチキャスト方式、図25のようなブロードキャスト方式も、このクロスバースイッチによれば、容易に実現することができる。
これらの図において、符号22で示される領域の数値は、そのノードラインから出力させたいデータが入力されるノードラインのライン番号であり、経路切替部21における数値は、各ノードラインのスイッチ回路50のアドレスである。
各スイッチ回路50上に記述されている数値は、そこでデクリメントされたアドレスである。アドレス初期化部20における数値は、指定アドレスであり、前述のように、出力させたいノードラインのライン番号からデータが流れるノードラインのライン番号を減算することにより導かれる。
There are various ways of using the crossbar switch of the second embodiment.
For example, in addition to the general usage form of the crossbar switch as shown in FIG. 23, the multicast system as shown in FIG. 24 and the broadcast system as shown in FIG. 25 can be easily realized by this crossbar switch. Can do.
In these drawings, the numerical value of the area indicated by
The numerical value described on each
図24の例では、ライン2,ライン3、ライン5、ライン6からそれぞれライン番号0により識別されるノードラインの入力端から入力されるデータを同時に出力するとともに、ライン4とライン7からライン番号2により識別されるノードラインの入力端から入力されるデータを出力させる場合の例が示されている。図25は、ライン0〜ライン7のすべてから同時にライン番号3により識別されるノードラインの入力端から入力されるデータを出力させる場合の例が示されている。
In the example of FIG. 24, data input from the input ends of the node lines identified by
このように、入力N(Nは自然数)種類対出力N種類のデータ経路の切替パターンだけでなく、入力N種類対出力M(N<M)種類のデータ経路の切替パターンを実現することができる。しかも、ライン番号を特定するだけで指定アドレスが生成され、その指定アドレスに対応する各ノードラインのスイッチ回路50が自律的にデータ転送を行うので、第1実施形態の場合と同様、クロスポイント制御の形態が極めて簡略化される。
In this manner, not only the switching pattern of the data path of the input N types (N is a natural number) versus the output N types but also the switching pattern of the data path of the input N types versus the output M (N <M) types can be realized. . In addition, a designated address is generated simply by specifying a line number, and the
変形例として、経路切替部21における第1パスと第2パスは、図26に示される経路切替部23のように設定することもできる。
図26は、第1パスが、前段のスイッチ回路50の出力端と、そのスイッチ回路50の次段の行であって隣合う列に存在するスイッチ回路50の入力端との間に設定されている場合の例を示すものである。また、上述した第2実施形態のクロスバースイッチは、1行毎にパイプライン化する場合の例であるが、図26に示したクロスバースイッチでは、複数行をまとめてパイプライン化している。つまり、各ノードラインの動作フェーズを、複数行単位で、フェーズ0〜フェーズ4のように切り替えるようにしたものである。
As a modification, the first path and the second path in the
In FIG. 26, the first path is set between the output terminal of the
なお、図26では、セレクトパスが最左端列に到達したときは次段の行の最右端列のスイッチ回路50の入力端に戻るようになっているが、直下の行の右隣のスイッチ回路50の入力端に戻るようにしてもよい。
In FIG. 26, when the select path reaches the leftmost column, it returns to the input end of the
以上、本発明を2つの実施形態を例に挙げて説明したが、これらの実施形態は、本発明の範囲を限定するものではない。
例えば、第1及び第2実施形態では、アドレス及び指定アドレスが降順の数値データであり、指定アドレスがノードを経過する度にデクリメントされて”0”になったときにデータ転送を行う場合の例、すなわち、ノードのアドレスが表す特定値を間接的に特定する場合の例を説明したが、アドレス及び指定アドレスを昇順の数値データとし、ノードを通過した結果、アドレスが表す値が増加することにより予めそのノードに割り当てられた固有の値に達したことを特定したとき、つまりノードのアドレスが表す特定値を直接特定したときにそのノード上のスイッチ回路50が動作してデータ転送を行うようにすることもできる。
特定値が間接的に特定される場合のアドレスを相対アドレス、特定値が直接的に特定される場合のアドレスを絶対アドレスとすると、上述したクロスバースイッチの例、特に第2実施形態のクロスバースイッチの例では、アドレス初期化部20以降のアドレスは、どのラインからデータをとってくるかという値を自分のアドレスとの相対値入力しなければならないため、動作の整合性をとるため、アドレス初期化部20で相対アドレスから絶対アドレスに変換する必要がある。このとき、アドレスの変換に際して双方のアドレス関係を予め規定したアドレス変換テーブルを用意しておくことが、処理の迅速化の観点からは望ましい。
Although the present invention has been described by taking two embodiments as examples, these embodiments do not limit the scope of the present invention.
For example, in the first and second embodiments, the address and the designated address are numerical data in descending order, and data transfer is performed when the designated address is decremented to “0” every time a node passes. That is, the example in which the specific value represented by the node address is indirectly specified has been described, but the address and the designated address are numerical data in ascending order, and the value represented by the address increases as a result of passing through the node. When it is specified that the unique value assigned to the node has been reached in advance, that is, when the specific value represented by the node address is directly specified, the
If the address when the specific value is indirectly specified is a relative address, and the address when the specific value is directly specified is an absolute address, the crossbar switch example described above, particularly the crossbar of the second embodiment. In the example of the switch, the address after the
また、本発明に係るクロスバースイッチは、バッファ1とピクセルパイプラインプロセッサ2との間に介在してデータ経路の選択を行う場合のほか、並列計算機、ATM(非同期転送モード:Asynchronous Transfer Mode)、イーサーネット(登録商標)等におけるデータ転送、データ通信処理におけるデータ経路の選択の場合、その他同様の用途にも応用することもできる。
The crossbar switch according to the present invention includes a parallel computer, ATM (Asynchronous Transfer Mode), a case where a data path is selected between the
1・・・バッファ、
2…ピクセルパイプラインプロセッサ、
3・・・クロスバースイッチ、
4・・・シリアルバス配線、
5,50・・・スイッチ回路、
6…アドレス選択回路、
7a ,7b・・・クロック線、
8・・・リピータ、
9・・・パラレル/シリアル変換回路、
10・・・シリアル/パラレル変換回路、
11・・・デクリメント回路、
12・・・論理和回路、
13・・・論理積回路、
14・・・接続切換回路、
20・・・アドレス初期化部、
21,23・・・経路切替部、
22・・・指定されたライン番号
1 ... buffer,
2 ... Pixel pipeline processor,
3 ... Crossbar switch
4 ... Serial bus wiring,
5, 50 ... switch circuit,
6 ... Address selection circuit,
7a, 7b ... clock lines,
8 ... repeater,
9: Parallel / serial conversion circuit,
10: Serial / parallel conversion circuit,
11: Decrement circuit,
12: OR circuit,
13 ... AND circuit,
14: Connection switching circuit,
20: Address initialization unit,
21, 23... Route switching unit,
22 ... Specified line number
Claims (15)
各ノードコントローラが、
目的のノードコントローラが存在する相対位置を直接又は間接に特定するためのアドレス情報を前段ノードより入力する入力インタフェースと、
入力されたアドレス情報が特定値を表しているかどうかを判別し、特定値を表すと判別したときに所定のデータ出力ラインへのデータ出力を可能にするとともに、前記入力されたアドレス情報を所定の規則に従って変化させた新たなアドレス情報を生成するスイッチと、
この新たなアドレス情報を後段ノードへ出力する出力インタフェースとを有し、
それぞれ前記複数段のノードを含む複数のノードラインを有し、
各ノードライン上のノードコントローラが、少なくとも並行動作する他のノードライン上のノードコントローラと同一のクロックタイミングで動作し、
各ノードライン上のノードコントローラに、それぞれ、前段ノードからデータを入力するとともに、このデータを他のノードラインの後段ノードへ出力する第1パスと、前段ノードから前記アドレス情報を入力するとともに前記新たなアドレス情報を同一ノードラインの後段ノードへ出力する第2パスとが設定されており、更に、
各ノードコントローラは、複数のノードライン上で行列マトリクス状に配列されており、
前記第2パスは、各ノードラインの列方向に設定されており、
前記第1パスは、前段のノードコントローラの出力端と、そのノードコントローラの次段の行であって異なる列に存在するノードコントローラの入力端との間に設定されている、
クロスバースイッチ。 A node controller is deployed in each of the cascaded nodes.
Each node controller
An input interface for inputting address information for directly or indirectly specifying the relative position where the target node controller exists, from the previous node;
It is determined whether or not the input address information represents a specific value. When it is determined that the input address information represents a specific value, data can be output to a predetermined data output line. A switch for generating new address information changed according to the rules;
An output interface for outputting the new address information to a subsequent node;
A plurality of node lines each including the plurality of nodes;
Node controllers on each node line operate at least at the same clock timing as node controllers on other node lines operating in parallel,
Each node controller on each node line receives data from the previous node and outputs the data to the subsequent node of another node line, and the address information from the previous node and the new node. A second path for outputting correct address information to a subsequent node of the same node line, and
Each node controller is arranged in a matrix matrix on a plurality of node lines,
The second path is set in the column direction of each node line,
The first path is set between the output end of the previous node controller and the input end of the node controller that is in the next row and in a different column of the node controller.
Crossbar switch.
前記出力インタフェースは、この数値データを所定値分だけ同一変化方向に増加又は減少させることにより前記新たなアドレス情報を生成する、
請求項1記載のクロスバースイッチ。 The address information is circular numerical data,
The output interface generates the new address information by increasing or decreasing the numerical data in the same change direction by a predetermined value.
The crossbar switch according to claim 1.
請求項2記載のクロスバースイッチ。 The address information is serial data including a start bit and an end bit.
The crossbar switch according to claim 2.
各ノードライン上のノードコントローラが、他のノードライン上のノードコントローラと非同期に動作する、
請求項1記載のクロスバースイッチ。 A plurality of node lines each including the plurality of nodes;
Node controllers on each node line operate asynchronously with node controllers on other node lines,
The crossbar switch according to claim 1.
各ノードコントローラのスイッチが、作動時に、当該ノードに対応付けられている前記出力アドレスを通じて前記データメモリから出力されるデータを前記データ出力ラインへ出力する、
請求項1記載のクロスバースイッチ。 Each of the plurality of nodes is associated with an output address of a predetermined data memory in a one-to-one relationship,
When the switch of each node controller is activated, it outputs the data output from the data memory through the output address associated with the node to the data output line.
The crossbar switch according to claim 1.
請求項1記載のクロスバースイッチ。 The first path and the second path in each node controller have the same or substantially the same node length.
The crossbar switch according to claim 1 .
請求項1記載のクロスバースイッチ。 All the node controllers arranged in at least the same row direction operate according to a clock signal that defines the same operation timing.
The crossbar switch according to claim 1 .
請求項1記載のクロスバースイッチ。 The first path is set between the output end of the previous node controller and the input end of the node controller that is in the next row and adjacent column of the node controller.
The crossbar switch according to claim 1 .
請求項1記載のクロスバースイッチ。 A part or all of the first path includes an output end of a previous node controller and an input end of a node controller that is a row of the next stage of the node controller and is located at a position separated from the node controller by a plurality of columns. Set between
The crossbar switch according to claim 1 .
請求項9記載のクロスバースイッチ。 The first path for the node controller located at the extreme end in the column direction is set between the output end of the node controller and the input end of the node controller existing in the adjacent position in the next row. Yes,
The crossbar switch according to claim 9 .
請求項1記載のクロスバースイッチ。 Address information generating means is provided at each input end of the plurality of node lines. The address information generating means includes first line identification data for identifying a line on which the address information generating means itself is provided, The address information is generated based on the second line identification data for identifying the node line to which the data output from the switch provided in the last node of the line provided with the address information generating means is input. To
The crossbar switch according to claim 1 .
前記複数のノードラインの入力端には、当該入力端に入力されるデータを保有する第1デバイスを接続するためのインタフェース部品が存在し、
前記複数のノードラインの出力端には、各々のノードラインと1対1に対応する演算パイプラインを有する第2デバイスを接続するためのインタフェース部品が存在する、
請求項1記載のクロスバースイッチ。 It is housed in a package that can be mounted on a computer.
At the input ends of the plurality of node lines, there is an interface component for connecting a first device that holds data input to the input ends,
At the output ends of the plurality of node lines, there are interface components for connecting a second device having an operation pipeline corresponding to each node line in a one-to-one relationship.
The crossbar switch according to claim 1 .
前記複数のノードラインの入力端及び/又は出力端に、同一構成の他のクロスバースイッチの複数のノードラインを接続するためのインタフェース部品が存在する、
請求項1記載のクロスバースイッチ。 It is housed in a package that can be mounted on a computer.
An interface component for connecting a plurality of node lines of another crossbar switch having the same configuration exists at the input end and / or the output end of the plurality of node lines.
The crossbar switch according to claim 1 .
各ノードライン上のノードコントローラに、それぞれ、前段ノードからデータを入力するとともに、このデータを他のノードラインの後段ノードへ出力する第1パスと、前段ノードから前記アドレス情報を入力するとともに前記新たなアドレス情報を同一ノードラインの後段ノードへ出力する第2パスとが設定されており、
更に、各ノードコントローラは、複数のノードライン上で行列マトリクス状に配列されており、
前記第2パスは、各ノードラインの列方向に設定されており、
前記第1パスは、前段のノードコントローラの出力端と、そのノードコントローラの次段の行であって異なる列に存在するノードコントローラの入力端との間に設定されているものであって、
前記クロスバースイッチを制御する装置が、データを出力させるノードラインの識別情報と、作動させるノードコントローラの相対位置を表す情報とによりアドレス情報を生成し、このアドレス情報を目的のノードラインの初段ノードに入力する段階と、
前記アドレス情報が入力されたノードラインの各ノードに存在するノードコントローラが、それぞれ入力されたアドレス情報が特定値を表しているかどうかを判別し、特定値を表すと判別したときは当該ノードライン上のデータを出力するとともに、前記入力されたアドレス情報を所定値分だけ変化させた新たなアドレス情報を生成し、この新たなアドレス情報を後段ノードへ出力する段階とを有し、
更に、前記アドレス情報は、当該アドレス情報が入力された列の最終段から出力されるデータを指定するためのものである、
クロスバースイッチの動作制御方法。 A method for controlling the operation of a crossbar switch, comprising a plurality of nodes connected in cascade, each having a plurality of node lines through which input data flows, and a node controller arranged in each node, Has a plurality of node lines each including the plurality of nodes, and a node controller on each node line operates at least at the same clock timing as a node controller on another node line operating in parallel. ,
Each node controller on each node line receives data from the previous node and outputs the data to the subsequent node of another node line, and the address information from the previous node and the new node. A second path for outputting correct address information to a subsequent node of the same node line, and
Furthermore, each node controller is arranged in a matrix matrix on a plurality of node lines,
The second path is set in the column direction of each node line,
The first path is set between the output end of the previous node controller and the input end of the node controller that is in the next row and in a different column of the node controller,
The device for controlling the crossbar switch generates address information based on identification information of a node line for outputting data and information indicating a relative position of a node controller to be operated, and this address information is used as the first node of the target node line. To enter
When the node controller existing in each node of the node line to which the address information is input determines whether the input address information represents a specific value, Generating new address information obtained by changing the input address information by a predetermined value, and outputting the new address information to a subsequent node,
Furthermore, the address information is for designating data output from the last stage of the column in which the address information is input.
Crossbar switch operation control method.
前記ノードコントローラは、それぞれ前記複数段のノードを含む複数のノードラインを有し、各ノードライン上のノードコントローラが、少なくとも並行動作する他のノードライン上のノードコントローラと同一のクロックタイミングで動作するものであり、
各ノードライン上のノードコントローラに、それぞれ、前段ノードからデータを入力するとともに、このデータを他のノードラインの後段ノードへ出力する第1パスと、前段ノードから前記アドレス情報を入力するとともに前記新たなアドレス情報を同一ノードラインの後段ノードへ出力する第2パスとが設定されており、
更に、各ノードコントローラは、複数のノードライン上で行列マトリクス状に配列されており、
前記第2パスは、各ノードラインの列方向に設定されており、
前記第1パスは、前段のノードコントローラの出力端と、そのノードコントローラの次段の行であって異なる列に存在するノードコントローラの入力端との間に設定されており、
各ノードコントローラを、以下の(1)〜(3)のように動作させるためのクロスバースイッチの動作制御用プログラム。
(1)目的のノードコントローラが存在する相対位置を直接又は間接に特定するためのアドレス情報を入力するとともに、このアドレス情報は、当該アドレス情報が入力された列の最終段から出力されるデータを指定するものであり、
(2)入力されたアドレス情報が特定値を表しているかどうかを判別し、特定値を表すと判別したときは、当該ノードライン上のデータを出力するとともに、
(3)前記入力されたアドレス情報を所定値分だけ変化させた新たなアドレス情報を生成し、この新たなアドレス情報を後段ノードへ出力する。 A program to be executed by a computer comprising a plurality of nodes connected in cascade, a plurality of node lines through which input data flows, and a crossbar switch in which each node is provided with a node controller Because
The node controller has a plurality of node lines each including the plurality of nodes, and the node controllers on each node line operate at least at the same clock timing as node controllers on other node lines operating in parallel. Is,
Each node controller on each node line receives data from the previous node and outputs the data to the subsequent node of another node line, and the address information from the previous node and the new node. A second path for outputting correct address information to a subsequent node of the same node line, and
Furthermore, each node controller is arranged in a matrix matrix on a plurality of node lines,
The second path is set in the column direction of each node line,
The first path is set between the output end of the previous node controller and the input end of the node controller that is in the next row and in a different column of the node controller,
A crossbar switch operation control program for operating each node controller as in the following (1) to (3) .
(1) The address information for directly or indirectly specifying the relative position where the target node controller exists is input, and this address information is the data output from the last stage of the column in which the address information is input. It is what you specify,
(2) It is determined whether or not the input address information represents a specific value. When it is determined that the input address information represents a specific value, the data on the node line is output,
(3) New address information is generated by changing the input address information by a predetermined value, and the new address information is output to a subsequent node.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004086613A JP4443966B2 (en) | 2003-03-24 | 2004-03-24 | Crossbar switch, operation control method thereof, and operation control program |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003081258 | 2003-03-24 | ||
| JP2004086613A JP4443966B2 (en) | 2003-03-24 | 2004-03-24 | Crossbar switch, operation control method thereof, and operation control program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2004310759A JP2004310759A (en) | 2004-11-04 |
| JP4443966B2 true JP4443966B2 (en) | 2010-03-31 |
Family
ID=33478138
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2004086613A Expired - Fee Related JP4443966B2 (en) | 2003-03-24 | 2004-03-24 | Crossbar switch, operation control method thereof, and operation control program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4443966B2 (en) |
-
2004
- 2004-03-24 JP JP2004086613A patent/JP4443966B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2004310759A (en) | 2004-11-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0018755B1 (en) | Digital communication networks employing speed independent switches | |
| US11307827B2 (en) | Tiled switch matrix data permutation circuit | |
| JPH11243415A (en) | Data encoding method, communication device, message transmission method, and routing switch | |
| JPH03132130A (en) | Message routing | |
| JP3445416B2 (en) | Shift circuit and method for shifting and rearranging a plurality of data bytes | |
| JP2005516508A5 (en) | ||
| KR100639869B1 (en) | Crossbar switch, method and program for controlling operation thereof | |
| US6888841B1 (en) | Pipelined scheduling technique | |
| JP2552784B2 (en) | Parallel data processing control method | |
| US6801978B2 (en) | Crossbar system with increased throughput | |
| JP2007058571A (en) | Circuit and circuit connection method | |
| JP4443966B2 (en) | Crossbar switch, operation control method thereof, and operation control program | |
| US4714922A (en) | Interconnection networks | |
| US6701404B1 (en) | Method and system for transferring variable sized loop words between elements connected within serial loop through serial interconnect | |
| JP3119130B2 (en) | Network configuration | |
| JPH09160893A (en) | Cluster connection structure using crossbar switch in parallel processing computer system. | |
| JPH01158891A (en) | Space division switch | |
| JPH11212927A (en) | Conflict arbitration method | |
| JP2788250B2 (en) | Digital signal switch and digital signal switch selection module | |
| JP3130343B2 (en) | Data phase conversion method | |
| JP2000148660A (en) | DMA data transfer method and apparatus | |
| JPH05130130A (en) | Method and device for interconnecting highway between srms | |
| JPH08223612A (en) | Communication line switching system | |
| JPH06178340A (en) | Space switch device | |
| JPH04274547A (en) | Data transfer system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061221 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081225 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090106 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090306 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091020 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091210 |
|
| 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: 20100112 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100113 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4443966 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130122 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130122 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140122 Year of fee payment: 4 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |