[go: up one dir, main page]

JP2012186539A - Router device and method for controlling the same - Google Patents

Router device and method for controlling the same Download PDF

Info

Publication number
JP2012186539A
JP2012186539A JP2011046463A JP2011046463A JP2012186539A JP 2012186539 A JP2012186539 A JP 2012186539A JP 2011046463 A JP2011046463 A JP 2011046463A JP 2011046463 A JP2011046463 A JP 2011046463A JP 2012186539 A JP2012186539 A JP 2012186539A
Authority
JP
Japan
Prior art keywords
output
packet
input
circuit
priority
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2011046463A
Other languages
Japanese (ja)
Inventor
Yasuyuki Ninomiya
康之 二ノ宮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2011046463A priority Critical patent/JP2012186539A/en
Publication of JP2012186539A publication Critical patent/JP2012186539A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】ルータを通過するパケットの通信経路に依存することなく、レイテンシの削減を図ること
【解決手段】バッファ4_1〜4_3は、出力待ちとなるパケットを一時的に保持する。先行出力検出回路5_1は、あるサイクルにおける出力P1への出力を要求するパケットの入力状態と、バッファ4_1〜4_3の格納状態と、に基づいて調停処理の対象とならない先行出力対象パケットを検出する。出力選択回路7_1は、先行出力対象パケットを検出した場合に当該パケットを出力P1から出力するパケットと決定し、先行出力対象パケットを検出しなかった場合に調停処理に基づいて出力P1から出力するパケットと決定する。スイッチ9は、出力選択回路7_1の決定に基づいて、出力P1への配線切替えを制御する。
【選択図】図1
[PROBLEMS] To reduce latency without depending on a communication path of a packet passing through a router. Buffers (4_1 to 4_3) temporarily hold packets waiting for output. The preceding output detection circuit 5_1 detects a preceding output target packet that is not subject to arbitration processing based on the input state of a packet that requests output to the output P1 in a certain cycle and the storage state of the buffers 4_1 to 4_3. The output selection circuit 7_1 determines the packet to be output from the output P1 when the preceding output target packet is detected, and outputs the packet from the output P1 based on the arbitration process when the preceding output target packet is not detected And decide. The switch 9 controls wiring switching to the output P1 based on the determination of the output selection circuit 7_1.
[Selection] Figure 1

Description

本発明はルータ装置及びルータ装置の制御方法に関する。   The present invention relates to a router device and a control method for the router device.

現在、単一のチップ上にプロセッサ等の設計モジュールを複数配置することが可能となっている。Newwork−on−Chip(以下、NoCと記載する)は、配置したIPコア等の設計モジュールの結合に用いられる回路である。NoCは、ルータと呼ばれるスイッチング回路を複数備える構成である。   Currently, it is possible to arrange a plurality of design modules such as processors on a single chip. New-on-Chip (hereinafter referred to as NoC) is a circuit used for coupling design modules such as arranged IP cores. The NoC is configured to include a plurality of switching circuits called routers.

図12は、半導体におけるIPコアとルータの配置例を示す図である。図示するように、複数のIPコアがルータを経由して間接的に接続されている。ルータには、隣接するルータまたはIPコアからパケット化された入力データが入力される。ルータは、受信したパケットデータの出力方向を決定し、次のルータまたは送信先のIPコアにデータを送信する。   FIG. 12 is a diagram illustrating an arrangement example of IP cores and routers in a semiconductor. As illustrated, a plurality of IP cores are indirectly connected via a router. The router receives input data packetized from an adjacent router or IP core. The router determines the output direction of the received packet data, and transmits the data to the next router or destination IP core.

ルータの機能は、主に経路計算、スイッチ調停、スイッチ転送の3つである。ルータの標準的な構造を図13に示す。ルータ装置1は、複数の入力ポート(入力P1〜入力P3)及び複数の出力ポート(出力P1〜出力P3)を備える。また、ルータ装置1は、ラッチ2_1〜2_3、経路計算回路3_1〜3_3、バッファ4_1〜4_3、調停回路6_1〜6_3、制御記憶回路8、及びスイッチ9を備える。ラッチ2_1〜2_3、経路計算回路3_1〜3_3、及びバッファ4_1〜4_3は、入力P1〜入力P3にそれぞれ対応づけられている。調停回路6_1〜6_3は、出力P1〜出力P3に対応づけられている。例えば、ラッチ2_1、経路計算回路3_1、及びバッファ4_1は入力P1に対応づけられている。調停回路6_1は、出力P1に対応づけられている。   There are mainly three functions of the router: route calculation, switch arbitration, and switch forwarding. A standard structure of the router is shown in FIG. The router device 1 includes a plurality of input ports (input P1 to input P3) and a plurality of output ports (output P1 to output P3). The router device 1 includes latches 2_1 to 2_3, path calculation circuits 3_1 to 3_3, buffers 4_1 to 4_3, arbitration circuits 6_1 to 6_3, a control storage circuit 8, and a switch 9. The latches 2_1 to 2_3, the path calculation circuits 3_1 to 3_3, and the buffers 4_1 to 4_3 are associated with the inputs P1 to P3, respectively. The arbitration circuits 6_1 to 6_3 are associated with the outputs P1 to P3. For example, the latch 2_1, the path calculation circuit 3_1, and the buffer 4_1 are associated with the input P1. The arbitration circuit 6_1 is associated with the output P1.

ラッチ2_1〜2_3は、対応する入力ポートから入力されたパケットを一時的に保持し、その後にパケットを対応する経路計算回路3_1〜3_3に出力する。   The latches 2_1 to 2_3 temporarily hold the packets input from the corresponding input ports, and then output the packets to the corresponding path calculation circuits 3_1 to 3_3.

経路計算回路3_1〜3_3は、経路計算を行う回路である。以下、経路計算回路3_1を例に説明する。経路計算回路3_1は、入力P1から入力されたパケットのヘッダに記載された送信先IPコアの情報、または送信方向の情報を基に出力ポート番号を決定する。経路計算回路3_1は、決定した出力ポート番号とともにパケットを対応するバッファ4_1に格納する。   The route calculation circuits 3_1 to 3_3 are circuits that perform route calculation. Hereinafter, the path calculation circuit 3_1 will be described as an example. The path calculation circuit 3_1 determines the output port number based on the information on the transmission destination IP core described in the header of the packet input from the input P1 or the information on the transmission direction. The route calculation circuit 3_1 stores the packet together with the determined output port number in the corresponding buffer 4_1.

バッファ4_1〜4_3は、経路計算回路が出力したパケットを出力先の出力ポート番号と対応づけて一時的に格納する。バッファ4_1〜4_3は、複数のパケットを保持可能である。バッファ4_1〜4_3は、後述の制御記憶回路8からのパケット出力の要求に応じてパケットをスイッチ9に供給する。   The buffers 4_1 to 4_3 temporarily store the packets output by the route calculation circuit in association with the output port numbers of the output destinations. The buffers 4_1 to 4_3 can hold a plurality of packets. The buffers 4_1 to 4_3 supply packets to the switch 9 in response to a packet output request from the control storage circuit 8 described later.

調停回路6_1〜6_3は、バッファ4_1〜4_3に一時的に格納されたパケットのうち、対応する出力ポートが次サイクルに出力するパケットを選択する回路である。以下、調停回路6_1を例に説明する。調停回路6_1は、バッファ4_1〜4_3に格納されたパケット及び当該パケットの出力パケット番号を基に、対応する出力ポートである出力P1から次サイクルにおいて出力するパケットを決定する。調停回路6_1は、決定した出力パケットが入力された入力ポート番号を制御記憶回路8に書き込む。   The arbitration circuits 6_1 to 6_3 are circuits that select a packet that is output from the corresponding output port to the next cycle among the packets temporarily stored in the buffers 4_1 to 4_3. Hereinafter, the arbitration circuit 6_1 will be described as an example. Based on the packet stored in the buffers 4_1 to 4_3 and the output packet number of the packet, the arbitration circuit 6_1 determines a packet to be output in the next cycle from the output P1 that is the corresponding output port. The arbitration circuit 6_1 writes the input port number, to which the determined output packet is input, in the control storage circuit 8.

制御記憶回路8は、あるサイクルにおいて、各出力ポートが出力対象とするパケットを入力した入力ポート番号を記憶する。さらに、制御記憶回路8は、パケット出力要求をバッファ4_1〜4_3にそれぞれ伝達する。   The control storage circuit 8 stores the input port number to which a packet to be output by each output port is input in a certain cycle. Further, the control storage circuit 8 transmits the packet output request to the buffers 4_1 to 4_3, respectively.

スイッチ9は、算出された調停回路6_1〜6_3の調停結果(すなわち、各出力ポートが出力すべきパケットが入力された入力ポート番号)が制御記憶回路8を介して入力され、当該調停結果に応じて入力ポートと出力ポートを接続する。詳細には、スイッチ9は、接続対象の入力ポートに対応づけられているバッファからの出力を、出力先となる出力ポートに接続する。   The switch 9 receives the calculated arbitration result of the arbitration circuits 6_1 to 6_3 (that is, the input port number to which a packet to be output from each output port is input) via the control storage circuit 8, and according to the arbitration result Connect the input and output ports. Specifically, the switch 9 connects the output from the buffer associated with the connection target input port to the output port that is the output destination.

一般に、ルータは経路計算回路による経路計算、調停回路によるスイッチ調停、スイッチによるスイッチ転送にそれぞれ1サイクルのレイテンシを必要とする。この場合、ルータの通過レイテンシは、3サイクルとなる。図13に示すルータ装置の動作を図14のタイミングチャートを参照して説明する。   Generally, a router requires one cycle of latency for route calculation by a route calculation circuit, switch arbitration by an arbitration circuit, and switch transfer by a switch. In this case, the passing latency of the router is 3 cycles. The operation of the router apparatus shown in FIG. 13 will be described with reference to the timing chart of FIG.

図14は、図13のルータ装置において、入力P1に入力されたパケットを出力P3から出力する際の動作を示すタイミングチャートである。図14では、図13の各点A〜Fを通過する信号を示している。ここで、バッファ4_1〜4_3には、パケットが格納されていないものとする。   FIG. 14 is a timing chart showing an operation when the packet input to the input P1 is output from the output P3 in the router device of FIG. FIG. 14 shows signals passing through the points A to F in FIG. Here, it is assumed that no packets are stored in the buffers 4_1 to 4_3.

ラッチ2_1は、サイクルtにおいて入力されたパケットのヘッダを保持する(図14A参照)。ラッチ2_1は、このパケットのヘッダをサイクルt+1において出力する。経路計算回路3_1は、このパケットヘッダ及び経路計算結果をバッファ4_1に格納する(図14B参照)。調停回路6_3は、サイクルt+2において、出力パケットの調停を行う。これにより、サイクルt+2において、このパケットヘッダは出力権を得る。すなわち、このパケットヘッダは、バッファ4_1からの出力対象となる。   The latch 2_1 holds the header of the packet input in cycle t (see FIG. 14A). The latch 2_1 outputs the header of this packet at cycle t + 1. The route calculation circuit 3_1 stores the packet header and the route calculation result in the buffer 4_1 (see FIG. 14B). The arbitration circuit 6_3 arbitrates the output packet in cycle t + 2. Thereby, in the cycle t + 2, this packet header obtains the output right. That is, this packet header is an output target from the buffer 4_1.

調停回路6_3は、調停結果を制御記憶回路8に書き込む。詳細には、調停回路6_3は、出力P3から出力されるパケットの入力ポートが"1"であることをサイクルt+2において書き込む(図14D参照)。サイクルt+2において、制御記憶回路8から出力されるバッファ4_1への指示信号は「停止」である(図14E参照)。そのため、サイクルt+2においては、バッファ4_1は、パケットを出力したものとみなされない。換言すると、バッファ4_1は、サイクルt+3においてもサイクルt+2と同一の出力を行い続ける(図14C参照)。   The arbitration circuit 6_3 writes the arbitration result in the control storage circuit 8. Specifically, the arbitration circuit 6_3 writes in cycle t + 2 that the input port of the packet output from the output P3 is “1” (see FIG. 14D). In cycle t + 2, the instruction signal to the buffer 4_1 output from the control storage circuit 8 is “stop” (see FIG. 14E). Therefore, in the cycle t + 2, the buffer 4_1 is not regarded as a packet output. In other words, the buffer 4_1 continues to perform the same output as the cycle t + 2 in the cycle t + 3 (see FIG. 14C).

調停回路6_3が制御記憶回路8に"1"を入力したことにより、制御記憶回路8は、バッファ4_1に出力許可("許可")の信号を通知する(図14E参照)。この許可信号を受けて、バッファ4_1は、パケットのヘッダの出力が行われたと判断し、バッファ内の更新を行う。この更新により、サイクルt+4では、バッファ4_1は、サイクルt+1にて入力されたパケットのデータを出力する。このパケットのデータは、サイクルt+4においてスイッチ9から出力される。   When the arbitration circuit 6_3 inputs “1” to the control storage circuit 8, the control storage circuit 8 notifies the buffer 4_1 of an output permission (“permission”) signal (see FIG. 14E). In response to the permission signal, the buffer 4_1 determines that the packet header has been output, and updates the buffer. By this update, in cycle t + 4, buffer 4_1 outputs the data of the packet input in cycle t + 1. The data of this packet is output from the switch 9 at cycle t + 4.

上述のように、ルータ内の通過レイテンシは、経路計算、スイッチ調停、スイッチ転送という3つの処理から構成される。ルータの通過レイテンシが大きい場合には半導体の処理能力の向上を妨げる。NoCでは複数のルータによる中継通信が前提となるため、ルータの通過レイテンシが半導体全体の通信レイテンシの大部分を占める。このため、ルータ内の通過レイテンシを削減することは、非常に重要である。   As described above, the passage latency in the router is composed of three processes: path calculation, switch arbitration, and switch transfer. When the passing latency of the router is large, improvement of the processing capacity of the semiconductor is hindered. In NoC, relay communication by a plurality of routers is premised, so the passage latency of the router occupies most of the communication latency of the entire semiconductor. For this reason, it is very important to reduce the passage latency in the router.

ルータ内の通過レイテンシを生じさせる処理のうち、経路計算処理及びスイッチ調停処理は、パケットのヘッダを処理対象とする。ヘッダは、パケットの最前方に位置している。ヘッダに後続するパケットのデータは、経路計算処理及びスイッチ調停処理の間は入力バッファにて停止する(格納され続ける)ことになる。これらの2つの処理(経路計算処理、スイッチ調停処理)の一部を省略することができれば、通信レイテンシも削減することができる。   Of the processes that cause passage latencies in the router, the route calculation process and the switch arbitration process target packet headers. The header is located at the forefront of the packet. The packet data following the header is stopped (stored) in the input buffer during the route calculation process and the switch arbitration process. If a part of these two processes (path calculation process and switch arbitration process) can be omitted, the communication latency can be reduced.

経路計算処理を省略する手法として、パケット送信元において全ての経路計算を予め行うソースルーティングという手法が挙げられる。ソースルーティングは、オフチップネットワークでも使用される手法である。ソースルーティングでは、パケット送信時に既に経路計算が行われている。そのため、各ルータは入力されたパケットの経路を計算する必要はない。ただし、パケットが複数のルータを通過する場合、パケット内には複数の経路情報が格納される。この場合、ルータの構造を簡略化するために、使用した経路情報を破棄し、新しい経路情報を更新する場合が多い。   As a method for omitting route calculation processing, there is a method called source routing in which all route calculations are performed in advance at a packet transmission source. Source routing is a technique that is also used in off-chip networks. In source routing, route calculation is already performed at the time of packet transmission. Therefore, each router need not calculate the route of the input packet. However, when a packet passes through a plurality of routers, a plurality of pieces of route information are stored in the packet. In this case, in order to simplify the structure of the router, the used route information is often discarded and new route information is updated.

経路情報の更新は、パケット内の経路情報をシフトすることにより行われる。すでに使用された経路情報は、経路更新回路によるビットシフトによって、次に使用される経路情報により上書きされる。この経路更新により生じる遅延は、経路計算によって生じる遅延よりも小さい。そのため、一般的なルータでの経路計算によって生じる1サイクルのレイテンシを削減することが可能になる。   The route information is updated by shifting the route information in the packet. The already used route information is overwritten by the next used route information by the bit shift by the route update circuit. The delay caused by this route update is smaller than the delay caused by route calculation. Therefore, it is possible to reduce the one-cycle latency caused by route calculation in a general router.

スイッチ調停のレイテンシを削減する手法として、非特許文献1に記載された予測ルータと呼ばれる手法が挙げられる。この予測ルータとは、入力されるパケットの出力方向をパケット入力前にルータ内にて予め予測し、調停を投機的に完了させておく手法である。   As a technique for reducing the latency of switch arbitration, there is a technique called a prediction router described in Non-Patent Document 1. This predictive router is a method in which the output direction of an input packet is predicted in advance in the router before the packet is input, and arbitration is speculatively completed.

松谷 宏紀、鯉渕 道紘、天野 英晴、吉永 努著、予測機構を持った低遅延オンチップルータアーキテクチャ、信学技報vol.108,no.28Hiroya Matsutani, Michiaki Tsuji, Hideharu Amano, Tsutomu Yoshinaga, Low Latency On-Chip Router Architecture with Prediction Mechanism, IEICE Tech. 108, no. 28

上述の非特許文献1に記載の予測ルータという手法は、予測した出力方向が間違っていた場合には、スイッチ調停をやり直す必要が生じる。スイッチ調停をやり直した場合、スイッチ調停が全て実行されるためレイテンシの削減がなされない。この予測の失敗は、パケットの出力方向に規則性がない等の要因により発生する。このため、この予測ルータ手法では、レイテンシ削減の効果は、ルータを通過するパケットの通信経路に依存してしまう。よって、ルータを通過するパケットの通信経路次第では、十分にレイテンシの削減をできないという問題がある。   In the method of the prediction router described in Non-Patent Document 1 described above, it is necessary to redo switch arbitration when the predicted output direction is incorrect. When switch arbitration is performed again, latency is not reduced because all switch arbitration is executed. This prediction failure occurs due to factors such as lack of regularity in the packet output direction. For this reason, in this predictive router method, the effect of latency reduction depends on the communication path of packets passing through the router. Therefore, there is a problem that the latency cannot be sufficiently reduced depending on the communication path of the packet passing through the router.

本発明にかかるルータ装置の一態様は、
複数の入力ポートと、第1の出力ポートを有し、前記第1の出力ポートの出力権限を制御する調停処理を行うルータ装置であって、
あるサイクルにおける前記第1の出力ポートへの出力を要求する入力パケットが、前記ルータ装置において前記第1の出力ポートへの出力を要求する唯一のパケットである場合に、当該パケットを前記調停処理の対象とせずに出力する先行出力対象パケットと決定する、ものである。
One aspect of the router device according to the present invention is:
A router device having a plurality of input ports and a first output port, and performing an arbitration process for controlling the output authority of the first output port,
When an input packet requesting output to the first output port in a certain cycle is the only packet requesting output to the first output port in the router device, the packet is subjected to the arbitration process. It is determined as a preceding output target packet to be output without being targeted.

本発明にかかるルーティング方法の一態様は、
複数の入力ポートと、第1の出力ポートを有し、前記第1の出力ポートの出力権限を制御する調停処理を行うルータ装置の制御方法であって、
あるサイクルにおける前記第1の出力ポートへの出力を要求する入力パケットが、前記第1の出力ポートへの出力を要求する唯一のパケットである場合に、当該パケットを前記調停処理の対象とせずに出力する先行出力対象パケットと決定する、ものである。
One aspect of the routing method according to the present invention is as follows.
A control method of a router device having a plurality of input ports and a first output port, and performing an arbitration process for controlling the output authority of the first output port,
When an input packet requesting output to the first output port in a certain cycle is the only packet requesting output to the first output port, the packet is not subjected to the arbitration process. It is determined to be the preceding output target packet to be output.

本発明においては、ルータ装置は、入力パケットが、前記第1の出力ポートへの出力を要求する唯一のパケットであるか否かを判定している。唯一のパケットである場合、調停処理の対象とすることなく即座に出力することが可能である。このように、本発明にかかるルータ装置は、パケットの入力状況とパケットの保持状況に応じて先行出力対象パケットを検出し、パケットの通信経路を用いて検出処理を行う必要がない。このため、各パケットの通信経路に依存せずに調停処理を省略することが可能となる。   In the present invention, the router device determines whether or not the input packet is the only packet requesting output to the first output port. If it is the only packet, it can be output immediately without being subject to arbitration processing. As described above, the router device according to the present invention detects the preceding output target packet according to the packet input status and the packet holding status, and does not need to perform the detection process using the packet communication path. For this reason, the arbitration process can be omitted without depending on the communication path of each packet.

本発明によれば、ルータを通過するパケットの通信経路に依存することなく、レイテンシの削減を図ることができるルータ装置、及びルータ制御方法を提供することができる。   According to the present invention, it is possible to provide a router device and a router control method capable of reducing latency without depending on a communication path of a packet passing through the router.

実施の形態1にかかるルータ装置の構成を示すブロック図である。1 is a block diagram illustrating a configuration of a router device according to a first exemplary embodiment; 実施の形態1にかかるルータ装置によるパケット出力制御を示すフローチャートである。3 is a flowchart showing packet output control by the router device according to the first exemplary embodiment; 実施の形態1にかかるルータ装置による先行出力判定処理を示すフローチャートである。3 is a flowchart showing a preceding output determination process by the router device according to the first exemplary embodiment; 実施の形態1にかかるルータ装置の動作を示すタイムチャートである。3 is a time chart illustrating an operation of the router device according to the first exemplary embodiment; 実施の形態2にかかるルータ装置の構成を示すブロック図である。FIG. 3 is a block diagram illustrating a configuration of a router device according to a second exemplary embodiment. 実施の形態2にかかるルータ装置の動作を示すタイムチャートである。7 is a time chart illustrating an operation of the router device according to the second exemplary embodiment; 実施の形態3にかかるルータ装置の構成を示すブロック図である。FIG. 6 is a block diagram illustrating a configuration of a router device according to a third exemplary embodiment. 実施の形態3にかかるルータ装置によるパケット出力制御を示すフローチャートである。10 is a flowchart illustrating packet output control by the router device according to the third exemplary embodiment; 実施の形態3にかかるルータ装置による先行出力判定処理を示すフローチャートである。10 is a flowchart illustrating a preceding output determination process by a router device according to a third embodiment; 実施の形態3にかかるルータ装置の動作を示すタイムチャートである。10 is a time chart illustrating an operation of the router device according to the third exemplary embodiment; 実施の形態4にかかるルータ装置の構成を示すブロック図である。FIG. 6 is a block diagram illustrating a configuration of a router device according to a fourth exemplary embodiment. 標準的な半導体におけるIPコアとルータの配置例の図である。It is a figure of the example of arrangement | positioning of the IP core and router in a standard semiconductor. 標準的なルータ装置の構成を示すブロック図である。It is a block diagram which shows the structure of a standard router apparatus. 標準的なルータ装置の動作を示すタイムチャートである。It is a time chart which shows operation | movement of a standard router apparatus.

<実施の形態1> <Embodiment 1>

本発明の実施の形態にかかるルータ装置は、入力パケットが、あるサイクルにおいて、所定の出力ポートへの出力を要求する唯一のパケットであるか否かを判定している。唯一のパケットである場合、ルータ装置は、調停処理の対象とすることなく即座に出力対象とする。このため、本実施の形態にかかるルータ装置は、各パケットの通信経路に依存せずに調停処理を省略することが可能となる。   The router device according to the embodiment of the present invention determines whether or not an input packet is the only packet that requests output to a predetermined output port in a certain cycle. If it is the only packet, the router device immediately outputs it without performing arbitration processing. For this reason, the router device according to the present embodiment can omit the arbitration process without depending on the communication path of each packet.

以下、図面を参照して本発明の実施の形態にかかるルータ装置の詳細について説明する。図1は、本実施の形態にかかるルータ装置の構成を示すブロック図である。ルータ装置1は、3つの入力ポート(入力P1〜入力P3)及び3つの出力ポート(出力P1〜出力P3)を持つルータ装置である。ルータ装置1は、ラッチ2_1〜2_3、経路計算回路3_1〜3_3、バッファ4_1〜4_3、先行出力検出回路5_1〜5_3、調停回路6_1〜6_3、出力選択回路7_1〜7_3、制御記憶回路8、及びスイッチ9を備える。   Details of the router device according to the embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing the configuration of the router device according to the present embodiment. The router device 1 is a router device having three input ports (input P1 to input P3) and three output ports (output P1 to output P3). The router device 1 includes latches 2_1 to 2_3, path calculation circuits 3_1 to 3_3, buffers 4_1 to 4_3, preceding output detection circuits 5_1 to 5_3, arbitration circuits 6_1 to 6_3, output selection circuits 7_1 to 7_3, a control storage circuit 8, and a switch 9 is provided.

ラッチ2_1は、入力P1から入力されたパケット(詳細には、パケットのヘッダ及びパケットのデータ)を一時的に保持して経路計算回路3_1に供給する。ラッチ2_1が一時的にパケットを保持することにより、ルータ装置1からのパケットの出力タイミングを調節することができる。ラッチ2_2、ラッチ2_3は、それぞれ入力P2、入力P3と対応するラッチであり、その動作はラッチ2_1と同様である。   The latch 2_1 temporarily holds the packet (specifically, packet header and packet data) input from the input P1, and supplies the packet to the path calculation circuit 3_1. Since the latch 2_1 temporarily holds the packet, the output timing of the packet from the router device 1 can be adjusted. The latch 2_2 and the latch 2_3 are latches corresponding to the input P2 and the input P3, respectively, and the operation is the same as that of the latch 2_1.

経路計算回路3_1は、ラッチ2_1から入力されたパケットから、当該パケットの出力対象のポートを特定する経路である。詳細には、経路計算回路3_1は、パケットのヘッダを読み込み、読み込んだ情報から出力すべき出力ポートを特定する。経路計算回路3_1は、経路計算結果である出力ポート番号と、パケットと、をバッファ4_1に書き込む。さらに経路計算回路3_1は、入力P1に対するパケット入力の有無と、パケット入力が有る場合に経路計算結果である出力ポート番号と、先行出力検出回路5_1に供給する。経路計算回路3_2、経路計算回路3_3は、それぞれラッチ2_2、ラッチ2_3と対応する経路計算回路であり、その動作は経路計算回路3_1と同様である。   The route calculation circuit 3_1 is a route for specifying the output target port of the packet from the packet input from the latch 2_1. Specifically, the route calculation circuit 3_1 reads the header of the packet and specifies an output port to be output from the read information. The route calculation circuit 3_1 writes the output port number and the packet, which are the route calculation results, into the buffer 4_1. Further, the path calculation circuit 3_1 supplies the presence / absence of a packet input to the input P1, the output port number as a path calculation result when there is a packet input, and the preceding output detection circuit 5_1. The route calculation circuit 3_2 and the route calculation circuit 3_3 are route calculation circuits corresponding to the latch 2_2 and the latch 2_3, respectively, and their operations are the same as those of the route calculation circuit 3_1.

バッファ4_1には、出力待ち状態となっているパケットが出力ポート番号と関連付けられて格納される。バッファ4_1は、FIFO(First In First Out)形式の記憶部である。バッファ4_1は、後述の調停回路6_1〜6_3にパケットの格納状況(パケットの有無であり、パケットが格納されている場合には先頭に位置するパケットの出力ポート番号を含む情報)を通知する。さらに、バッファ4_1は、後述の制御記憶回路8からの出力命令に応じて、出力対象となるパケットをスイッチ9に供給する。バッファ4_1に格納されたパケットは、スイッチ9を介してルータ装置1外に出力された際にのみ削除される。バッファ4_2、バッファ4_3はそれぞれ入力P2、入力P3に対応するバッファであり、その機能はバッファ4_1と同様である。   The buffer 4_1 stores a packet waiting for output in association with the output port number. The buffer 4_1 is a storage unit in FIFO (First In First Out) format. The buffer 4_1 notifies the arbitration circuits 6_1 to 6_3, which will be described later, of the packet storage status (information on the presence or absence of a packet, and the information including the output port number of the packet located at the head if a packet is stored). Furthermore, the buffer 4_1 supplies a packet to be output to the switch 9 in response to an output command from the control storage circuit 8 described later. The packet stored in the buffer 4_1 is deleted only when it is output to the outside of the router device 1 through the switch 9. The buffer 4_2 and the buffer 4_3 are buffers corresponding to the input P2 and the input P3, respectively, and their functions are the same as those of the buffer 4_1.

なお、本例では、入力ポート毎にバッファを持つ構成として説明するが、必ずしもこれに限られない。例えば、出力先のポート番号と関連付けてパケットを保持する1つのバッファとして構成してもよい。   In this example, the configuration is described as having a buffer for each input port, but the present invention is not necessarily limited thereto. For example, it may be configured as one buffer that holds packets in association with the output destination port number.

先行出力検出回路5_1は、先行出力対象となるパケットが有るか否かを判定する回路である。先行出力対象のパケットとは、パケット調停を実施せずにそのまま出力ポートから出力するパケットである。詳細には、先行出力検出回路5_1は、各バッファ4_1〜4_3が空き状態であるか、及び、あるサイクルに入力ポートのいずれかから入力され、出力P1への出力を要求するパケットが1つだけか否か、を判定する。条件を満たす場合、先行出力検出回路5_1は、入力ポートから入力された唯一のパケットを先行出力対象とする。   The preceding output detection circuit 5_1 is a circuit that determines whether or not there is a packet to be a preceding output target. The preceding output target packet is a packet that is directly output from the output port without performing packet arbitration. Specifically, the preceding output detection circuit 5_1 has only one packet that is input from any of the input ports in a certain cycle and requests output to the output P1, in which each of the buffers 4_1 to 4_3 is empty. Whether or not. When the condition is satisfied, the preceding output detection circuit 5_1 sets the only packet input from the input port as the subject of preceding output.

先行出力検出回路5_1には、経路計算回路3_1からサイクル毎に入力P1に対するパケット入力の有無と、パケット入力が有る場合の経路計算結果である出力ポート番号と、が入力される。同様に先行出力検出回路5_1には、経路計算回路3_2からサイクル毎に入力P2に対するパケット入力の有無と、パケット入力が有る場合の経路計算結果である出力ポート番号と、が入力される。先行出力検出回路5_1には、経路計算回路3_3からサイクル毎に入力P3に対するパケット入力の有無と、パケット入力が有る場合の経路計算結果である出力ポート番号と、が入力される。先行出力検出回路5_1は、これらの入力を基にサイクル毎に出力P1に対する先行出力対象のパケットが有るか否か判定する。詳細な判定手法については図3を用いて後述する。   Preceding output detection circuit 5_1 receives from packet calculation circuit 3_1 the presence / absence of a packet input to input P1 every cycle and the output port number that is the path calculation result when there is a packet input. Similarly, the preceding output detection circuit 5_1 receives from the path calculation circuit 3_2 the presence / absence of a packet input to the input P2 every cycle and the output port number that is the path calculation result when there is a packet input. Preceding output detection circuit 5_1 receives, from cycle calculation circuit 3_3, whether or not a packet is input to input P3 every cycle and an output port number that is a path calculation result when there is a packet input. Based on these inputs, the preceding output detection circuit 5_1 determines whether there is a preceding output target packet for the output P1 every cycle. A detailed determination method will be described later with reference to FIG.

先行出力検出回路5_1は、サイクル毎に出力P1に関する先行出力判定の結果を出力選択回路7_1に供給する。詳細には、先行出力検出回路5_1は、あるサイクルに出力P1への出力を要求するパケットが1つであり、バッファ4_1〜4_3が全て空である場合に、当該パケット(先行出力対象のパケット)が入力された入力ポートの番号を出力選択回路7_1に通知する。それ以外の場合、先行出力検出回路5_1は、先行出力対象とするパケットが無い旨を出力選択回路7_1に通知する。先行出力検出回路5_2及び先行出力検出回路5_3は、それぞれ出力P2、出力P3に対応する判定回路であり、その機能は先行出力検出回路5_1と同様である。先行出力検出回路5_2による判定結果の出力先は出力選択回路7_2である。先行出力検出回路5_3による判定結果の出力先は出力選択回路7_3である。   The preceding output detection circuit 5_1 supplies the result of the preceding output determination regarding the output P1 to the output selection circuit 7_1 every cycle. Specifically, the preceding output detection circuit 5_1 has one packet that requests output to the output P1 in a certain cycle, and when the buffers 4_1 to 4_3 are all empty, the relevant packet (preceding output target packet) Is notified to the output selection circuit 7_1. In other cases, the preceding output detection circuit 5_1 notifies the output selection circuit 7_1 that there is no packet to be preceded output. The preceding output detection circuit 5_2 and the preceding output detection circuit 5_3 are determination circuits corresponding to the outputs P2 and P3, respectively, and their functions are the same as those of the preceding output detection circuit 5_1. The output destination of the determination result by the preceding output detection circuit 5_2 is the output selection circuit 7_2. The output destination of the determination result by the preceding output detection circuit 5_3 is the output selection circuit 7_3.

調停回路6_1は、バッファ4_1〜4_3が先頭に格納しているパケットの情報から、次のサイクルにおいて出力P1が出力すべきパケットを選択する回路である。調停回路6_1は、一般のルータ装置が備える調停回路と同等の機能を持つ。調停回路6_1は、出力P1を出力先とするパケットがバッファ4_1〜4_3のいずれかの先頭位置に存在する場合に調停を行い、調停により出力権を得たパケットが入力された入力ポート番号を出力選択回路7_1に通知する。また、調停回路6_1は、出力P1を出力先とするパケットがバッファ4_1〜4_3のいずれにも存在しない場合に、出力すべきパケットが無いことを出力選択回路7_1に通知する。調停回路6_2、調停回路6_3は、それぞれ出力P2、出力P3に対応する調停回路であり、その機能は調停回路6_1と同様である。   The arbitration circuit 6_1 is a circuit that selects a packet to be output by the output P1 in the next cycle from information on the packet stored in the head of the buffers 4_1 to 4_3. The arbitration circuit 6_1 has a function equivalent to that of an arbitration circuit included in a general router device. The arbitration circuit 6_1 performs arbitration when a packet having the output P1 as an output destination exists at the head position of any of the buffers 4_1 to 4_3, and outputs the input port number to which the packet obtained the output right by the arbitration is input. This is notified to the selection circuit 7_1. The arbitration circuit 6_1 notifies the output selection circuit 7_1 that there is no packet to be output when there is no packet having the output P1 as the output destination in any of the buffers 4_1 to 4_3. The arbitration circuit 6_2 and the arbitration circuit 6_3 are arbitration circuits corresponding to the output P2 and the output P3, respectively, and their functions are the same as those of the arbitration circuit 6_1.

出力選択回路7_1は、先行出力検出回路5_1からの入力(先行出力対象のパケットの有無、先行出力対象のパケットが有る場合には当該パケットが入力された入力ポートの番号)と、調停回路6_1からの入力(次のサイクルにおいて出力P1から出力すべきパケットが入力された入力ポートの番号、または出力すべきパケットが無いこと)を基に、次のサイクルにおいて出力P1が出力するパケットを決定する回路である。出力選択回路7_1の詳細は決定処理については図2を参照して後述する。出力選択回路7_1は、次のサイクルにおいて出力P1から出力すべきパケットが入力された入力ポート番号を制御記憶回路8に書き込む。出力選択回路7_2、出力選択回路7_3は、それぞれ出力P2、出力P3に対応する選択回路であり、その機能は出力選択回路7_1と同様である。   The output selection circuit 7_1 receives input from the preceding output detection circuit 5_1 (presence / absence of a preceding output target packet or, if there is a preceding output target packet, the number of an input port to which the packet is input), and an arbitration circuit 6_1. A circuit for determining a packet output from the output P1 in the next cycle based on the input (the number of the input port to which the packet to be output from the output P1 in the next cycle is input or that there is no packet to be output) It is. Details of the output selection circuit 7_1 will be described later with reference to FIG. The output selection circuit 7_1 writes the input port number to which the packet to be output from the output P1 in the next cycle is input to the control storage circuit 8. The output selection circuit 7_2 and the output selection circuit 7_3 are selection circuits corresponding to the output P2 and the output P3, respectively, and their functions are the same as those of the output selection circuit 7_1.

制御記憶回路8は、出力ポート毎に、次のサイクルにおいて出力すべきパケットが入力された入力ポート番号を記憶する。また、制御記憶回路8は、書き込まれた入力ポート番号と対応するバッファに対して出力許可信号を供給する。さらに、制御記憶部8は、次のサイクルにおいて出力すべきパケットが入力された入力ポート番号を、出力ポート毎にスイッチ9に通知する。   The control storage circuit 8 stores the input port number to which the packet to be output in the next cycle is input for each output port. The control storage circuit 8 supplies an output permission signal to the buffer corresponding to the written input port number. Furthermore, the control storage unit 8 notifies the switch 9 of the input port number for which the packet to be output in the next cycle is input for each output port.

スイッチ9は、通知された情報を基に、各入力ポートに接続されたバッファと、各出力ポートと、の接続を変更する。これにより、各出力選択回路が選択したパケットがルータ装置1から出力される。   The switch 9 changes the connection between the buffer connected to each input port and each output port based on the notified information. Thus, the packet selected by each output selection circuit is output from the router device 1.

続いて、本実施の形態にかかるルータ装置1によるパケット出力制御を図2のフローチャートを用いて説明する。各先行出力検出回路(以下の例では、先行出力検出回路5_1を例に説明する。)には、各入力ポートと対応する経路計算回路(3_1〜3_3)からあるサイクルにおける入力パケットの有無、及び入力パケットが有る場合にはその出力先の出力ポート番号、が入力される(S1)。さらに、先行出力検出回路5_1には、バッファ4_1〜4_3から各バッファのパケット格納状況が通知される(S1)。   Next, packet output control by the router device 1 according to the present embodiment will be described with reference to the flowchart of FIG. Each preceding output detection circuit (in the following example, description will be given by using the preceding output detection circuit 5_1 as an example), the presence / absence of an input packet in a certain cycle from the path calculation circuit (3_1 to 3_3) corresponding to each input port, and If there is an input packet, the output port number of the output destination is input (S1). Further, the preceding output detection circuit 5_1 is notified of the packet storage status of each buffer from the buffers 4_1 to 4_3 (S1).

先行出力検出回路5_1は、これらの入力を基に先行出力が可能なパケットが有るか否か、すなわち先行出力検出回路5_1は、調停処理の対象としなくても出力してもよいパケットが有るか否かを判定する(S2)。当該処理(先行出力判定)の詳細は、図3を参照して後述する。先行出力が可能なパケットがある場合、先行出力検出回路5_1は、当該対象が有る旨を通知する信号を当該パケットの入力された入力ポート番号とともに出力選択回路7_1に通知する(S2)。一方、先行出力が可能なパケットがない場合、先行出力検出回路5_1は、先行出力が可能なパケットが無い旨を出力選択回路7_1に通知する(S2)。   The preceding output detection circuit 5_1 determines whether there is a packet that can be output in advance based on these inputs, that is, whether the preceding output detection circuit 5_1 has a packet that may be output without being subjected to arbitration processing. It is determined whether or not (S2). Details of the processing (preceding output determination) will be described later with reference to FIG. When there is a packet that can be output in advance, the preceding output detection circuit 5_1 notifies the output selection circuit 7_1 of a signal notifying that the target exists together with the input port number to which the packet is input (S2). On the other hand, when there is no packet that can be output in advance, the output detector 5_1 notifies the output selection circuit 7_1 that there is no packet that can be output in advance (S2).

S1及びS2と並行して、詳細にはS1及びS2を行ったサイクルと同一サイクルにて、各調停回路(以下の例では、調停回路6_1を例に説明する。)は、バッファ4_1〜4_3の先頭に格納されているパケットを読み出し、対応する出力ポートを出力先とするパケットが有るか否かを判定する(S3)。対象となるパケットが有る場合(S3:Yes)、調停回路6_1は、判定対象となるパケットから次のサイクルにて出力するパケットを選択するパケット調停処理を行う(S4)。一方、対象となるパケットが無い場合(S3:No)、調停回路6_1は、パケット調停処理を行わない。調停回路6_1は、調停処理の実施の有無、調停処理を行った場合には調停結果である入力パケット番号を出力選択回路7_1に通知する。   In parallel with S1 and S2, in detail, in the same cycle as the cycle in which S1 and S2 are performed, each arbitration circuit (in the following example, the arbitration circuit 6_1 will be described as an example) is connected to the buffers 4_1 to 4_3. The packet stored at the head is read, and it is determined whether there is a packet whose output destination is the corresponding output port (S3). When there is a target packet (S3: Yes), the arbitration circuit 6_1 performs a packet arbitration process for selecting a packet to be output in the next cycle from the determination target packet (S4). On the other hand, when there is no target packet (S3: No), the arbitration circuit 6_1 does not perform the packet arbitration process. The arbitration circuit 6_1 notifies the output selection circuit 7_1 of the presence / absence of the arbitration process and the input packet number as the arbitration result when the arbitration process is performed.

続いて、S5〜S9の処理を各出力選択回路(以下の説明では、出力選択回路7_1を例に説明する。)が行う。出力選択回路7_1には、先行出力検出回路5_1から先行出力の対象となるパケットの有無、及び当該対象が有る場合には当該パケットの入力ポート番号が入力される。さらに、出力選択回路7_1には、調停回路6_1から調停処理の実施の有無、調停処理を行った場合には調停結果である入力パケット番号、が入力される。   Subsequently, the processing of S5 to S9 is performed by each output selection circuit (in the following description, the output selection circuit 7_1 will be described as an example). The output selection circuit 7_1 receives from the preceding output detection circuit 5_1 the presence / absence of a packet that is a target of the preceding output, and if there is such a target, the input port number of the packet. Further, the output selection circuit 7_1 receives from the arbitration circuit 6_1 the presence / absence of the arbitration process, and the input packet number that is the arbitration result when the arbitration process is performed.

出力選択回路7_1は、はじめに調停回路6_1において調停処理が行われたか否かを判定する(S5)。調停処理が行われた場合(S5:Yes)、出力選択回路7_1は、調停回路6_1から入力された入力ポート番号を、出力P1の出力対象として制御記憶回路8に記憶させる(S6)。   The output selection circuit 7_1 first determines whether or not the arbitration process has been performed in the arbitration circuit 6_1 (S5). When the arbitration process is performed (S5: Yes), the output selection circuit 7_1 stores the input port number input from the arbitration circuit 6_1 in the control storage circuit 8 as an output target of the output P1 (S6).

一方、調停処理が行われなかった場合(S5:No)、出力選択回路7_1は、先行出力の対象となるパケットが有るか否かを判定する(S7)。先行出力の対象となるパケットが有る場合(S7:Yes)、出力選択回路7_1は、当該先行出力対象のパケットが入力された入力ポート番号を、出力P1の出力対象として制御記憶回路8に記憶させる(S8)。先行出力の対象となるパケットが無い場合(S7:No)、出力選択回路7_1は、次サイクルでの出力P1の出力対象がないことを制御記憶回路8に記憶させる(S9)。   On the other hand, when the arbitration process has not been performed (S5: No), the output selection circuit 7_1 determines whether or not there is a packet that is a target of the preceding output (S7). When there is a packet that is a target of the preceding output (S7: Yes), the output selection circuit 7_1 stores the input port number, to which the preceding output target packet is input, in the control storage circuit 8 as an output target of the output P1. (S8). When there is no packet that is a target of the preceding output (S7: No), the output selection circuit 7_1 stores in the control storage circuit 8 that there is no output target of the output P1 in the next cycle (S9).

続いて、先行出力検出回路5_1による先行出力判定の詳細を図3のフローチャートを参照して説明する。なお、先行出力検出回路5_2及び先行出力検出回路5_3についても同様の処理を行う。   Next, details of the preceding output determination by the preceding output detection circuit 5_1 will be described with reference to the flowchart of FIG. The same processing is performed for the preceding output detection circuit 5_2 and the preceding output detection circuit 5_3.

先行出力検出回路5_1は、入力P1に対応するバッファ4_1が空であるか否かを判定する(S11)。バッファ4_1が空ではない場合(S11:No)、先行出力検出回路5_1は、先行出力の候補となるパケットを設定しない。一方、バッファ4_1が空である場合(S11:Yes)、先行出力検出回路5_1は、入力P1に対するパケット入力状況を確認し、入力データにパケットのヘッダが含まれるか否かを確認する(S12)。   The preceding output detection circuit 5_1 determines whether or not the buffer 4_1 corresponding to the input P1 is empty (S11). When the buffer 4_1 is not empty (S11: No), the preceding output detection circuit 5_1 does not set a packet that is a candidate for preceding output. On the other hand, when the buffer 4_1 is empty (S11: Yes), the preceding output detection circuit 5_1 checks the packet input status with respect to the input P1, and checks whether or not the packet header is included in the input data (S12). .

入力データにパケットのヘッダが含まれない場合(S12:No)、先行出力検出回路5_1は、先行出力の候補となるパケットを設定しない。入力データにパケットのヘッダが含まれる場合(S12:Yes)、先行出力検出回路5_1は、経路計算回路3_1にて算出された出力ポート番号が出力P1のポート番号と等しいか否かを判定する(S13)。   When the packet header is not included in the input data (S12: No), the preceding output detection circuit 5_1 does not set a packet that is a candidate for preceding output. When the packet header is included in the input data (S12: Yes), the preceding output detection circuit 5_1 determines whether or not the output port number calculated by the path calculation circuit 3_1 is equal to the port number of the output P1 ( S13).

ポート番号が合致しない場合(S13:No)、先行出力検出回路5_1は、先行出力の候補となるパケットを設定しない。ポート番号が合致する場合(S13:Yes)、先行出力検出回路5_1は、入力P1から入力されたパケットを先行出力の候補と判定する(S14)。   If the port numbers do not match (S13: No), the preceding output detection circuit 5_1 does not set a packet that is a candidate for preceding output. When the port numbers match (S13: Yes), the preceding output detection circuit 5_1 determines that the packet input from the input P1 is a candidate for preceding output (S14).

上述のS11〜S14では、先行出力検出回路5_1は、入力P1に関する先行出力候補の判定処理を行った。この処理と並行して、先行出力検出回路5_1は、入力P2に対応する処理(S15〜S18)及び入力P3に対応する処理(S19〜S22)を行う。   In the above-described S11 to S14, the preceding output detection circuit 5_1 performed the preceding output candidate determination process regarding the input P1. In parallel with this processing, the preceding output detection circuit 5_1 performs processing (S15 to S18) corresponding to the input P2 and processing (S19 to S22) corresponding to the input P3.

先行出力検出回路5_1は、全ての入力ポートから選択した先行出力候補のパケットの合計が1つであるかを確認する(S23)。先行出力候補のパケットが1つである場合(S23:Yes)、先行出力検出回路5_1は、当該パケットを先行出力対象のパケットに決定する(S24)。先行出力候補のパケットが1つではない場合(S23:No)、先行出力検出回路5_1は、先行出力の対象となるパケットが無いと判定する(S25)。複数の先行出力候補となるパケットが有る場合、これらのパケットは次のサイクルにおいて調停回路による調停の対象となる。   The preceding output detection circuit 5_1 checks whether the sum of the preceding output candidate packets selected from all the input ports is one (S23). When there is one preceding output candidate packet (S23: Yes), the preceding output detection circuit 5_1 determines the packet as a preceding output target packet (S24). When the number of the preceding output candidate packets is not one (S23: No), the preceding output detection circuit 5_1 determines that there is no packet to be the preceding output target (S25). When there are a plurality of prior output candidate packets, these packets are subjected to arbitration by the arbitration circuit in the next cycle.

なお、上述のように先行出力検出回路5_1は、先行出力対象のパケットの判定においてバッファが空であるか否かを判定している(S11、S15、S19)。バッファが全て空である場合、調停処理は実施されない。そのため、出力選択回路7_1は、図2に示したS6の処理とS7の処理を逆の順序にて行ってもよい。すなわち、出力選択回路7_1は、先行出力対象のパケットが有るか否かを判定した後に、パケット調停結果を参照してもよい。   As described above, the preceding output detection circuit 5_1 determines whether or not the buffer is empty in the determination of the preceding output target packet (S11, S15, and S19). If all the buffers are empty, the arbitration process is not performed. Therefore, the output selection circuit 7_1 may perform the processes of S6 and S7 shown in FIG. 2 in the reverse order. That is, the output selection circuit 7_1 may refer to the packet arbitration result after determining whether there is a preceding output target packet.

続いて、図1及び図4を参照して本実施の形態にかかるルータ装置の具体的な動作例について説明する。図4は、サイクルtにおいて入力P1から出力P3へのパケットが入力され、当該パケットが転送される場合のルータ装置1の動作例を示すタイムチャートである。本例では、バッファ4_1〜4_3にはパケットが格納されていない。さらに、本例では、サイクルtにおいて、他の入力ポート(入力P2、入力P3)からの入力はない。図4におけるA〜Hは、図1における各点(A〜H)における通過信号を示している。   Next, a specific operation example of the router device according to the present embodiment will be described with reference to FIGS. 1 and 4. FIG. 4 is a time chart showing an operation example of the router device 1 when a packet from the input P1 to the output P3 is input in the cycle t and the packet is transferred. In this example, no packets are stored in the buffers 4_1 to 4_3. Furthermore, in this example, there is no input from other input ports (input P2, input P3) in cycle t. A to H in FIG. 4 indicate passing signals at points (A to H) in FIG.

はじめに、サイクルtにおいて入力P1からパケットのヘッダがラッチ2_1に入力される(図4A参照)。このパケットのヘッダは、サイクルt+1においてラッチ2_1から出力される。出力されたパケットのヘッダは、経路計算回路3_1により経路計算が行われた後にバッファ4_1に格納される(図4B参照)。   First, in a cycle t, a packet header is input to the latch 2_1 from the input P1 (see FIG. 4A). The header of this packet is output from the latch 2_1 in cycle t + 1. The header of the output packet is stored in the buffer 4_1 after the route calculation is performed by the route calculation circuit 3_1 (see FIG. 4B).

このバッファ4_1への格納と同時に、パケットのヘッダは先行出力検出回路5_3にも供給される(図4B参照)。先行出力検出回路5_3は、このパケットのヘッダを用いて出力P3の先行出力判定を行う。   Simultaneously with the storage in the buffer 4_1, the header of the packet is also supplied to the preceding output detection circuit 5_3 (see FIG. 4B). The preceding output detection circuit 5_3 determines the preceding output of the output P3 using the header of this packet.

先行出力検出回路5_3は、サイクルt+1において先行出力判定を行う。本例では、バッファ4_1〜4_3は全て空であり、サイクルtにおいて入力P2、入力P3からの入力が無いため、先行出力検出回路5_3は、入力ポート番号(1)を出力する(図4C参照)。   The preceding output detection circuit 5_3 performs the preceding output determination in cycle t + 1. In this example, the buffers 4_1 to 4_3 are all empty, and there is no input from the input P2 and the input P3 in the cycle t. Therefore, the preceding output detection circuit 5_3 outputs the input port number (1) (see FIG. 4C). .

先行出力検出回路5_3による先行出力判定と並行して、調停回路6_3は、バッファ4_1〜4_3の先頭位置に格納されているパケットを用いて調停処理を行う。本例では、バッファ4_1〜4_3にはパケットが格納されていない。そのため、信号D等によりバッファ内のパケットが無いこと("無")が通知される。よって、調停回路6_3は、サイクルt+1において、パケット調停を行わなかったことを示す信号を出力選択回路7_3に出力する。   In parallel with the preceding output determination by the preceding output detection circuit 5_3, the arbitration circuit 6_3 performs an arbitration process using the packet stored at the head position of the buffers 4_1 to 4_3. In this example, no packets are stored in the buffers 4_1 to 4_3. Therefore, it is notified by the signal D or the like that there is no packet in the buffer (“none”). Therefore, the arbitration circuit 6_3 outputs a signal indicating that packet arbitration has not been performed to the output selection circuit 7_3 in cycle t + 1.

サイクルt+1において、出力選択回路7_3には、先行出力検出回路5_3から"1"が入力され、調停回路6_3から"無"が入力される。これにより、出力選択回路7_3は、図2におけるS7及びS8を実行し、サイクルt+1において先行出力対象の入力ポート番号"1"を制御記憶回路8に入力する(図4F参照)。   In cycle t + 1, “1” is input from the preceding output detection circuit 5_3 and “none” is input from the arbitration circuit 6_3 to the output selection circuit 7_3. Thereby, the output selection circuit 7_3 executes S7 and S8 in FIG. 2, and inputs the input port number “1” of the preceding output target to the control storage circuit 8 in the cycle t + 1 (see FIG. 4F).

制御記憶回路8は、サイクルt+2において、バッファ4_1に対してパケットの出力を許可する(図4G参照)。これにより、バッファ4_1に格納されているパケットのヘッダ、すなわち先行出力対象となったパケットのヘッダは調停回路による調停の対象となることなく、スイッチに供給される(図4D参照)。スイッチを通過したパケットはルータ装置1から出力される(図4H参照)。   The control storage circuit 8 permits the buffer 4_1 to output a packet in the cycle t + 2 (see FIG. 4G). As a result, the header of the packet stored in the buffer 4_1, that is, the header of the packet that has been subject to preceding output is supplied to the switch without being subject to arbitration by the arbitration circuit (see FIG. 4D). The packet that has passed through the switch is output from the router device 1 (see FIG. 4H).

続いて、本実施の形態にかかるルータ装置1の効果について改めて説明する。前述のように、先行出力検出回路は、ある出力ポート(第1の出力ポート)を出力先とする入力パケットの入力状態(すなわち1つであるか否か)、及びバッファのパケット格納状態、から調停対象とならない先行出力対象パケットを検出している。先行出力対象パケットは、調停処理の対象となることなく出力される。この先行出力対象パケットの検出は、パケットの入力状態を使用することはない。これにより、パケットの通信経路に依存することなく、調停処理を省略することが可能になり、ルータ装置のレイテンシを削減させることができる。   Then, the effect of the router apparatus 1 concerning this Embodiment is demonstrated anew. As described above, the preceding output detection circuit determines from the input state (that is, whether or not there is one) of input packets whose output destination is a certain output port (first output port) and the packet storage state of the buffer. A prior output target packet that is not subject to arbitration is detected. The preceding output target packet is output without being subject to arbitration processing. The detection of the preceding output target packet does not use the input state of the packet. As a result, the arbitration process can be omitted without depending on the packet communication path, and the latency of the router device can be reduced.

<実施の形態2>
本発明の実施の形態2は、ソースルーティング方式に対応している点を特徴とする。より詳細には、ルータ装置に入力される各パケットには経路情報が予め埋め込まれており、ルータ装置は経路情報を更新する経路更新情報を備えている。これにより、経路計算処理を軽減できるとともに、ルータの構造を簡略化することができる。
<Embodiment 2>
Embodiment 2 of the present invention is characterized in that it corresponds to the source routing method. More specifically, route information is embedded in each packet input to the router device, and the router device includes route update information for updating the route information. Thereby, the route calculation process can be reduced and the structure of the router can be simplified.

図5を参照して本実施の形態にかかるルータ装置1の基本構成を説明する。なお、図5において、同一名及び同一符号を付した処理部、回路は実施の形態1と同様の処理を行う。そのため、重複する説明は適宜省略する。   The basic configuration of the router device 1 according to the present embodiment will be described with reference to FIG. In FIG. 5, the processing units and circuits having the same names and the same reference numerals perform the same processing as in the first embodiment. Therefore, the overlapping description is omitted as appropriate.

ルータ装置1は、バッファ4_1〜4_3と、先行出力検出回路5_1〜5_3と、調停回路6_1〜6_3と、出力選択回路7_1〜7_3と、制御記憶回路8と、スイッチ9と、経路更新回路10_1〜10_3と、を備える。ルータ装置1は、ラッチ、経路計算回路は有さない構成である。ラッチは、経路計算回路を有さない構成であることから、入力ポートからバッファまでの遅延制約が緩和されることにより不要となる。これにより、本実施の形態にかかるルータ装置1は、実施の形態1にかかるルータ装置1と比べてルータの通過に要するレイテンシが1サイクル削減できる。   The router device 1 includes buffers 4_1 to 4_3, preceding output detection circuits 5_1 to 5_3, arbitration circuits 6_1 to 6_3, output selection circuits 7_1 to 7_3, a control storage circuit 8, a switch 9, and path update circuits 10_1 to 10. 10_3. The router device 1 has a configuration that does not include a latch and a route calculation circuit. Since the latch does not have a path calculation circuit, it becomes unnecessary because the delay constraint from the input port to the buffer is relaxed. As a result, the router device 1 according to the present embodiment can reduce the latency required for passing through the router by one cycle compared to the router device 1 according to the first embodiment.

ルータ装置1に入力される各パケットには、既存のソースルーティング手法に沿った経路情報が埋め込まれている。これにより、ルータ装置1内でのパケットの経路計算処理が不要となる。経路更新回路10_1〜10_3は、それぞれ供給されたパケットから既に通過済みの経路情報を削除する回路である。経路更新回路10_1〜10_3による経路情報の削除処理は、前述のようにビットシフト等の簡易な処理により実現されるため、経路計算処理に比較して非常に短い時間で終了する。経路更新回路10_1〜10_3は、それぞれ既存の技術を適用することにより実現可能である。   In each packet input to the router device 1, route information according to an existing source routing method is embedded. This eliminates the need for packet route calculation processing in the router device 1. The route update circuits 10_1 to 10_3 are circuits that delete route information that has already passed from supplied packets. Since the route information deletion processing by the route update circuits 10_1 to 10_3 is realized by simple processing such as bit shift as described above, the processing is completed in a very short time compared to the route calculation processing. The route update circuits 10_1 to 10_3 can be realized by applying existing technologies, respectively.

続いて、本実施の形態にかかるルータ装置1の具体的な動作例を図5に加え、図6のタイムチャートを参照して説明する。図6は、サイクルtにおいて入力P1から出力P3へのパケットが入力され、当該パケットが転送される場合のルータ装置1の動作例を示すタイムチャートである。本例では、バッファ4_1〜4_3にはパケットが格納されていない。さらに、本例では、サイクルtにおいて、他の入力ポート(入力P2、入力P3)からの入力はない。図6におけるA〜Hは、図5における各点(A〜H)における通過信号を示している。   Next, a specific operation example of the router device 1 according to the present embodiment will be described with reference to the time chart of FIG. 6 in addition to FIG. FIG. 6 is a time chart showing an operation example of the router device 1 when a packet from the input P1 to the output P3 is input in the cycle t and the packet is transferred. In this example, no packets are stored in the buffers 4_1 to 4_3. Furthermore, in this example, there is no input from other input ports (input P2, input P3) in cycle t. A to H in FIG. 6 indicate passing signals at points (A to H) in FIG.

はじめに、サイクルtにおいて入力P1からパケットのヘッダがバッファ4_1に入力される(図6A参照)。これと同時に、入力されたパケットのヘッダの情報は先行出力検出回路5_3に供給される。先行出力検出回路5_3は、サイクルtにおいて先行出力対象として"1"を出力選択回路7_3に出力する(図6B参照)。これと同じタイミングにおいて、調停回路6_3は、調停対象のパケットがバッファ内に無いことを示す"無"を出力選択回路7_3に出力する(図6D参照)。この結果、出力選択回路7_3は、サイクルtに入力されたパケットをサイクルt+1における出力パケットと判定し、制御記憶回路8にこのパケットが入力された入力ポート番号"1"を出力する(図6E参照)。   First, in a cycle t, a packet header is input from the input P1 to the buffer 4_1 (see FIG. 6A). At the same time, the header information of the input packet is supplied to the preceding output detection circuit 5_3. The preceding output detection circuit 5_3 outputs “1” as the preceding output target in the cycle t to the output selection circuit 7_3 (see FIG. 6B). At the same timing, the arbitration circuit 6_3 outputs “no” indicating that the arbitration target packet is not in the buffer to the output selection circuit 7_3 (see FIG. 6D). As a result, the output selection circuit 7_3 determines that the packet input in the cycle t is an output packet in the cycle t + 1, and outputs the input port number “1” in which this packet is input to the control storage circuit 8 (see FIG. 6E). ).

制御記憶回路8は、サイクルt+1において、バッファ4_1に対してパケットの出力を許可する(図4F参照)。これにより、バッファ4_1に格納されているパケットのヘッダは、経路更新回路10_1に供給される(図6C参照)。経路更新回路10_1は入力されたパケットのヘッダの経路情報を更新する。経路更新回路10_1は、経路更新後にこのパケットのヘッダをスイッチ9に供給する(図6G参照)。スイッチを通過したパケットはルータ装置1から出力される(図6H参照)。   The control storage circuit 8 permits the buffer 4_1 to output a packet in the cycle t + 1 (see FIG. 4F). As a result, the header of the packet stored in the buffer 4_1 is supplied to the path update circuit 10_1 (see FIG. 6C). The path update circuit 10_1 updates the path information in the header of the input packet. The path update circuit 10_1 supplies the header of this packet to the switch 9 after the path update (see FIG. 6G). The packet that has passed through the switch is output from the router device 1 (see FIG. 6H).

このように、本実施の形態にかかるルータ装置1は、ソースルーティング方式を採用し、経路計算回路、ラッチを持たない構成である。経路更新回路10_1〜10_3による処理は、経路情報を上書きする処理であり、ルータの動作周波数に与える影響が極めて少ない。このため、実施の形態1にかかるルータ装置1と比べて、本実施の形態にかかるルータ装置1は、ルータ通過に要するレイテンシを削減することができる。   As described above, the router device 1 according to the present embodiment employs the source routing method and does not have a route calculation circuit and a latch. The processing by the route update circuits 10_1 to 10_3 is processing for overwriting route information and has very little influence on the operating frequency of the router. For this reason, compared with the router apparatus 1 concerning Embodiment 1, the router apparatus 1 concerning this Embodiment can reduce the latency required for a router passage.

<実施の形態3>
本発明の実施の形態3にかかるルータ装置は、通常のパケットに比べて優先的に送信されるべきパケット(以下、優先パケットと記載する。)を適切に扱うことができることを特徴とする。詳細には、本実施の形態にかかるルータ装置では、先行出力判定回路にて入力パケットが優先パケットか否かの判定を行い、出力選択回路は優先パケットを通常のパケットに優先して出力対象と判定する。これにより、すでにバッファ内に格納されている通常のパケットよりも優先して入力ポートから入力されたばかりの優先パケットを出力することができる。以下に、本実施の形態にかかるルータ装置について実施の形態1、2と異なる部分を中心に説明する。
<Embodiment 3>
The router device according to the third embodiment of the present invention is characterized in that it can appropriately handle a packet (hereinafter referred to as a priority packet) to be transmitted with priority over a normal packet. Specifically, in the router device according to the present embodiment, the preceding output determination circuit determines whether or not the input packet is a priority packet, and the output selection circuit prioritizes the normal packet as an output target. judge. As a result, it is possible to output the priority packet that has just been input from the input port in preference to the normal packet already stored in the buffer. In the following, the router device according to the present embodiment will be described focusing on the differences from the first and second embodiments.

図7は、本実施の形態にかかるルータ装置の構成を示す図である。なお、図7において、同一名及び同一符号を付した処理部、回路は実施の形態1と同様の処理を行う。そのため、重複する説明は適宜省略する。各入力ポートから入力されるバッファは、通常のパケットまたは優先パケットであり、例えばパケットヘッダを参照することによりその区別ができる。   FIG. 7 is a diagram illustrating a configuration of the router device according to the present embodiment. In FIG. 7, the processing units and circuits having the same names and the same reference numerals perform the same processing as in the first embodiment. Therefore, the overlapping description is omitted as appropriate. The buffer input from each input port is a normal packet or a priority packet, and can be distinguished by referring to a packet header, for example.

ルータ装置1は、ラッチ2_1〜2_3と、経路計算回路3_1〜3_3と、バッファ4_1〜4_3と、優先バッファ11_1〜11_3と、優先先行出力検出回路12_1〜12_3と、バッファ選択回路13_1〜13_3と、調停回路6_1〜6_3と、優先出力選択回路14_1〜14_3と、制御記憶回路8と、スイッチ9と、を備える。   The router device 1 includes latches 2_1 to 2_3, path calculation circuits 3_1 to 3_3, buffers 4_1 to 4_3, priority buffers 11_1 to 11_3, priority preceding output detection circuits 12_1 to 12_3, buffer selection circuits 13_1 to 13_3, Arbitration circuits 6_1 to 6_3, priority output selection circuits 14_1 to 14_3, a control storage circuit 8, and a switch 9 are provided.

優先バッファ11_1〜11_3は、それぞれ入力P1〜入力P3に対応する格納部であり、優先パケットをFIFO形式により格納する。また、優先バッファ11_1〜11_3は、サイクル毎に後述の優先先行出力検出回路12_1〜12_3に対して優先パケットの格納状況を通知する。優先バッファ11_1〜11_3は、スイッチ9を介してパケットを出力した場合に当該パケットをバッファから削除する。   The priority buffers 11_1 to 11_3 are storage units corresponding to the inputs P1 to P3, respectively, and store priority packets in a FIFO format. Further, the priority buffers 11_1 to 11_3 notify the storage status of priority packets to the priority advance output detection circuits 12_1 to 12_3 described later for each cycle. When the priority buffers 11_1 to 11_3 output a packet via the switch 9, the priority buffers 11_1 to 11_3 delete the packet from the buffer.

優先先行出力検出回路12_1は、出力P1に対応し、前述の先行出力検出回路5_1の処理を一部変更した回路である。優先先行出力検出回路12_1は、優先バッファ11_1〜11_3からパケット格納状況が通知されるとともに、各経路計算回路3_1〜3_3から優先パケットの入力の有無、及び優先パケットが有る場合にはその出力ポート番号が供給される。   The priority preceding output detection circuit 12_1 corresponds to the output P1, and is a circuit obtained by partially changing the processing of the preceding output detection circuit 5_1. The priority preceding output detection circuit 12_1 is notified of the packet storage status from the priority buffers 11_1 to 11_3, the presence / absence of input of the priority packet from each of the route calculation circuits 3_1 to 3_3, and the output port number when there is a priority packet. Is supplied.

優先先行出力検出回路12_1は、あるサイクルにおいて各入力ポートから出力P1を出力先とする優先パケットがただ一つ入力されたか否か、及び優先バッファ11_1〜11_3の先頭にパケットが格納されているか否か、を判定する。すなわち、優先先行出力検出回路12_1は、優先パケットを処理対象とする。優先先行出力検出回路12_1は、あるサイクルに出力P1への出力を要求するパケットが1つであり、優先バッファ11_1〜11_3が全て空である場合に当該パケットが入力された入力ポート番号を優先出力選択回路14_1に通知する。それ以外の場合、優先先行出力検出回路12_1は、先行出力の対象となるパケットが無い旨を優先出力選択回路14_1に通知する。優先先行出力検出回路12_1による処理の詳細は、図8を参照して後述する。   The priority / preceding output detection circuit 12_1 determines whether or not only one priority packet having the output P1 as an output destination is input from each input port in a certain cycle, and whether or not a packet is stored at the head of the priority buffers 11_1 to 11_3. To determine. That is, the priority preceding output detection circuit 12_1 sets the priority packet as a processing target. The priority predecessor detection circuit 12_1 has one packet requesting output to the output P1 in a certain cycle, and when all of the priority buffers 11_1 to 11_3 are empty, the priority output of the input port to which the packet is input is output. This is notified to the selection circuit 14_1. In other cases, the priority preceding output detection circuit 12_1 notifies the priority output selecting circuit 14_1 that there is no packet to be subject to preceding output. Details of the processing performed by the priority preceding output detection circuit 12_1 will be described later with reference to FIG.

優先先行出力検出回路12_2、優先先行出力検出回路12_3は、それぞれ出力P2、出力P3に対応する判定回路であり、その動作は優先先行出力検出回路12_1と同様である。   The priority preceding output detection circuit 12_2 and the priority preceding output detection circuit 12_3 are determination circuits corresponding to the output P2 and the output P3, respectively, and their operations are the same as those of the priority preceding output detection circuit 12_1.

バッファ選択回路13_1は、優先バッファ11_1及びバッファ4_1に対応づけられて設けられた回路である。バッファ選択回路13_1には、制御記憶回路8から出力許可信号が供給される。バッファ選択回路13_1は、優先バッファ11_1の先頭からパケットを取り出してスイッチ9に供給する。優先バッファ11_1が空である場合、バッファ選択回路13_1は、バッファ4_1からパケットを取り出してスイッチ9に供給する。バッファ選択回路13_2は、優先バッファ11_2及びバッファ4_2に対応づけられて設けられた回路であり、その動作はバッファ選択回路13_1と同様である。バッファ選択回路13_3は、優先バッファ11_3及びバッファ4_3に対応づけられて設けられた回路であり、その動作はバッファ選択回路13_1と同様である。   The buffer selection circuit 13_1 is a circuit provided in association with the priority buffer 11_1 and the buffer 4_1. An output permission signal is supplied from the control storage circuit 8 to the buffer selection circuit 13_1. The buffer selection circuit 13_1 takes out the packet from the head of the priority buffer 11_1 and supplies it to the switch 9. When the priority buffer 11_1 is empty, the buffer selection circuit 13_1 takes out the packet from the buffer 4_1 and supplies the packet to the switch 9. The buffer selection circuit 13_2 is a circuit provided in association with the priority buffer 11_2 and the buffer 4_2, and the operation thereof is the same as that of the buffer selection circuit 13_1. The buffer selection circuit 13_3 is a circuit provided in association with the priority buffer 11_3 and the buffer 4_3, and the operation thereof is the same as that of the buffer selection circuit 13_1.

調停回路6_1は、優先バッファ11_1〜11_3の先頭に位置するパケット、バッファ4_1〜4_3の先頭に位置するパケットを用いてパケット調停を行う。この際、調停回路6_1は、優先パケットに対して優先的に出力権を与えるように調停を行う。調停回路6_2及び調停回路6_3についても同様である。   The arbitration circuit 6_1 performs packet arbitration using a packet located at the head of the priority buffers 11_1 to 11_3 and a packet located at the head of the buffers 4_1 to 4_3. At this time, the arbitration circuit 6_1 performs arbitration so that priority is given to the priority packet. The same applies to the arbitration circuit 6_2 and the arbitration circuit 6_3.

優先出力選択回路14_1は、出力P1と対応する選択回路であり、前述の出力選択回路7_1の処理を一部変更した回路である。優先出力選択回路14_1は、調停回路6_1からの入力、及び優先先行出力検出回路12_2からの入力、を基に次のサイクルにおいて出力すべきパケットを選択し、当該パケットが入力された入力ポートの番号を制御記憶回路8に通知する。   The priority output selection circuit 14_1 is a selection circuit corresponding to the output P1, and is a circuit obtained by partially changing the processing of the output selection circuit 7_1. The priority output selection circuit 14_1 selects a packet to be output in the next cycle based on the input from the arbitration circuit 6_1 and the input from the priority preceding output detection circuit 12_2, and the number of the input port to which the packet is input Is notified to the control storage circuit 8.

制御記憶回路8及びスイッチ9の動作は、実施の形態1、2と同等のものである。制御記憶回路8は、優先出力選択回路14_1〜14_3の入力に対応するバッファ選択回路13_1〜13_3に対して出力指示信号を供給する。さらに、制御記憶部8は、記憶している次のサイクルにおいて出力すべきパケットが入力された入力ポート番号を、出力ポート毎にスイッチ9に通知する。スイッチ9は、制御記憶回路8からの入力に応じて配線を切り換え、パケットを出力ポートから出力する。   The operations of the control memory circuit 8 and the switch 9 are the same as those in the first and second embodiments. The control storage circuit 8 supplies an output instruction signal to the buffer selection circuits 13_1 to 13_3 corresponding to the inputs of the priority output selection circuits 14_1 to 14_3. Further, the control storage unit 8 notifies the switch 9 for each output port of the input port number to which the stored packet to be output in the next cycle is input. The switch 9 switches the wiring according to the input from the control storage circuit 8 and outputs the packet from the output port.

続いて、本実施の形態にかかるルータ装置1によるパケット出力制御を図8のフローチャートを用いて説明する。   Next, packet output control by the router device 1 according to the present embodiment will be described with reference to the flowchart of FIG.

各優先先行出力検出回路(以下の例では、優先先行出力検出回路12_1を例に説明する。)には、各入力ポートと対応する経路計算回路(3_1〜3_3)からあるサイクルにおける優先パケットの入力有無、及び優先パケットがされた場合にはその優先パケットの出力先の出力ポート番号、が入力される(S1)。さらに、優先先行出力検出回路12_1には、優先バッファ11_1〜11_3から各バッファのパケット格納状況が通知される(S31)。   In each priority preceding output detection circuit (in the following example, description will be given by taking the priority preceding output detection circuit 12_1 as an example), input of a priority packet in a certain cycle from the path calculation circuit (3_1 to 3_3) corresponding to each input port. Presence / absence, and if a priority packet is received, the output port number of the output destination of the priority packet is input (S1). Further, the priority preceding output detection circuit 12_1 is notified of the packet storage status of each buffer from the priority buffers 11_1 to 11_3 (S31).

優先先行出力検出回路12_1は、これらの入力を基に先行出力が可能な優先パケットが有るか否かを判定する(S32)。当該判定処理(S32)の詳細は、図9を参照して後述する。   Based on these inputs, the priority / preceding output detection circuit 12_1 determines whether there is a priority packet that can be output in advance (S32). Details of the determination process (S32) will be described later with reference to FIG.

先行出力が可能な優先パケットがある場合、優先先行出力検出回路12_1は、当該対象が有る旨を通知する信号を当該優先パケットの入力された入力ポート番号とともに優先出力選択回路14_1に通知する(S32)。一方、先行出力が可能なパケットがない場合、優先先行出力検出回路12_1は、先行出力が可能な優先パケットが無い旨を優先出力選択回路14_1に通知する(S32)。   If there is a priority packet that can be output in advance, the priority output detection circuit 12_1 notifies the priority output selection circuit 14_1 of a signal notifying that the target exists together with the input port number to which the priority packet is input (S32). ). On the other hand, when there is no packet that can be output in advance, the priority output detection circuit 12_1 notifies the priority output selection circuit 14_1 that there is no priority packet that can be output in advance (S32).

S31及びS32と並行して、詳細にはS31及びS32を行ったサイクルと同一サイクルにて、各調停回路(以下の例では、調停回路6_1を例に説明する。)は、バッファ4_1〜4_3及び優先バッファ11_1〜11_3の先頭に格納されているパケットのうち、対応する出力ポートを出力先とするパケットが有るか否か、すなわち調停対象のパケットが有るか否かを判定する(S33)。   In parallel with S31 and S32, in detail, in the same cycle as that in which S31 and S32 are performed, each arbitration circuit (in the following example, the arbitration circuit 6_1 will be described as an example) includes buffers 4_1 to 4_3 and Of the packets stored at the head of the priority buffers 11_1 to 11_3, it is determined whether there is a packet whose output destination is the corresponding output port, that is, whether there is a packet to be arbitrated (S33).

調停対象となるパケットが有る場合(S33:Yes)、調停回路6_1は、調停対象となるパケットから次のサイクルにて出力するパケットを、優先パケットを優先するようにして選択する調停処理を行う(S34)。一方、調停対象となるパケットが無い場合(S33:No)、調停回路6_1は、パケット調停処理を行わない。調停回路6_1は、調停処理の実施の有無、調停処理を行った場合には調停結果である入力パケット番号を優先出力選択回路14_1に通知する。   When there is a packet to be arbitrated (S33: Yes), the arbitration circuit 6_1 performs an arbitration process for selecting a packet to be output in the next cycle from the packet to be arbitrated in such a way as to give priority to the priority packet ( S34). On the other hand, when there is no packet to be arbitrated (S33: No), the arbitration circuit 6_1 does not perform the packet arbitration process. The arbitration circuit 6_1 notifies the priority output selection circuit 14_1 of the presence / absence of the arbitration process and the input packet number as the arbitration result when the arbitration process is performed.

続くS35〜S41の処理を各優先出力選択回路(以下の説明では、優先出力選択回路14_1を例に説明する)にて行う。優先出力選択回路14_1は、はじめに調停回路6_1において優先パケットが出力権を獲得したか否かを判定する(S35)。優先パケットが出力権を獲得した場合(S35:Yes)、優先出力選択回路14_1は、出力権を獲得した優先パケットが入力された入力ポート番号を制御記憶回路8に記憶させる(S36)。   The subsequent processes of S35 to S41 are performed by each priority output selection circuit (in the following description, the priority output selection circuit 14_1 will be described as an example). The priority output selection circuit 14_1 first determines whether or not the priority packet has acquired the output right in the arbitration circuit 6_1 (S35). When the priority packet has acquired the output right (S35: Yes), the priority output selection circuit 14_1 stores the input port number to which the priority packet for which the output right has been input is input in the control storage circuit 8 (S36).

一方、優先パケットが出力権を獲得しなかった場合(S35:No)、優先出力選択回路14_1は、優先先行出力検出回路12_1にて先行出力対象となった優先パケットが有るか否かを判定する(S37)。   On the other hand, when the priority packet has not acquired the output right (S35: No), the priority output selection circuit 14_1 determines whether or not there is a priority packet that is a target for preceding output in the priority preceding output detection circuit 12_1. (S37).

優先先行出力の対象となった優先パケットが有る場合(S37:Yes)、優先出力選択回路14_1は、先行出力対象となった優先パケットが入力された入力ポート番号を制御記憶回路8に記憶させる(S38)。   When there is a priority packet that is a target of priority output (S37: Yes), the priority output selection circuit 14_1 stores the input port number to which the priority packet that is a target of priority output is input in the control storage circuit 8 ( S38).

先行出力対象となった優先パケットが無い場合(S37:No)、優先出力選択回路14_1は、調停回路6_1において通常のパケットが出力権を獲得したか否かを判定する(S39)。   When there is no priority packet targeted for preceding output (S37: No), the priority output selection circuit 14_1 determines whether or not the normal packet has acquired the output right in the arbitration circuit 6_1 (S39).

通常のパケットが出力権を獲得した場合(S39:Yes)、優先出力選択回路14_1は、出力権を獲得した当該通常のパケットが入力された入力ポート番号を制御記憶回路8に記憶させる(S40)。   When the normal packet has acquired the output right (S39: Yes), the priority output selection circuit 14_1 stores the input port number to which the normal packet from which the output right has been input is input in the control storage circuit 8 (S40). .

一方、通常のパケットが出力権を獲得しなかった場合(S39:No)、優先出力選択回路14_1は、出力P1から次のサイクルにおいて出力すべきパケットが無いことを制御記憶回路8に書き込む(S41)。   On the other hand, when the normal packet does not acquire the output right (S39: No), the priority output selection circuit 14_1 writes in the control storage circuit 8 that there is no packet to be output in the next cycle from the output P1 (S41). ).

続いて、優先先行出力判定処理(S32)の詳細を、図9のフローチャートを参照して説明する。優先出力選択回路14_1は、入力P1に対応する優先バッファ11_1が空になっているか否かを判定する(S51)。   Next, details of the priority preceding output determination process (S32) will be described with reference to the flowchart of FIG. The priority output selection circuit 14_1 determines whether or not the priority buffer 11_1 corresponding to the input P1 is empty (S51).

優先バッファ11_1が空ではない場合(S51:No)、優先出力選択回路14_1は、先行出力対象を設定しない。一方、優先バッファ11_1が空である場合(S51:Yes)、優先先行出力検出回路12_1は、入力P1に優先パケットのヘッダが入力されたか否かを判定する(S52)。   When the priority buffer 11_1 is not empty (S51: No), the priority output selection circuit 14_1 does not set the preceding output target. On the other hand, when the priority buffer 11_1 is empty (S51: Yes), the priority preceding output detection circuit 12_1 determines whether the header of the priority packet is input to the input P1 (S52).

優先パケットのヘッダが入力されていない場合(S52:No)、優先出力選択回路14_1は、先行出力対象を設定しない。一方、優先パケットのヘッダが入力されている場合(S52:Yes)、優先出力選択回路14_1は、経路計算回路3_1にて算出された出力ポート番号が出力P1のポート番号と等しいか否かを判定する(S53)。   When the header of the priority packet is not input (S52: No), the priority output selection circuit 14_1 does not set the preceding output target. On the other hand, when the header of the priority packet is input (S52: Yes), the priority output selection circuit 14_1 determines whether or not the output port number calculated by the path calculation circuit 3_1 is equal to the port number of the output P1. (S53).

ポート番号が合致しない場合(S53:No)、優先出力選択回路14_1は、先行出力対象を設定しない。一方、ポート番号が合致する場合(S53:Yes)、優先出力選択回路14_1は、入力P1から入力された優先パケットを先行出力の候補と判定する(S54)。   When the port numbers do not match (S53: No), the priority output selection circuit 14_1 does not set the preceding output target. On the other hand, if the port numbers match (S53: Yes), the priority output selection circuit 14_1 determines that the priority packet input from the input P1 is a preceding output candidate (S54).

上述のS51〜S54では、優先出力選択回路14_1は、入力P1に関する先行出力候補の判定処理を行った。この処理と並行して、優先出力選択回路14_1は、入力P2に対応する処理(S55〜S58)及び入力P3に対応する処理(S59〜S62)を行う。   In the above-described S51 to S54, the priority output selection circuit 14_1 has performed the preceding output candidate determination process for the input P1. In parallel with this processing, the priority output selection circuit 14_1 performs processing corresponding to the input P2 (S55 to S58) and processing corresponding to the input P3 (S59 to S62).

優先出力選択回路14_1は、全ての入力ポートから選択した先行出力候補のパケットの合計が1つであるかを確認する(S63)。先行出力候補の優先パケットが1つである場合(S63:Yes)、優先出力選択回路14_1は、当該優先パケットを先行出力対象のパケットに決定する(S64)。一方、先行出力候補の優先パケットが1つではない場合(S63:No)、優先出力選択回路14_1は、先行出力対象となる優先パケットが無いと判定する(S65)。複数の先行出力候補となる優先パケットが有る場合、これらの優先パケットは次のサイクルにおいて調停回路による調停の対象となる。   The priority output selection circuit 14_1 confirms whether or not the sum of the preceding output candidate packets selected from all the input ports is one (S63). When there is one priority packet of the preceding output candidate (S63: Yes), the priority output selecting circuit 14_1 determines the priority packet as a preceding output target packet (S64). On the other hand, when there is not one priority packet of the preceding output candidate (S63: No), the priority output selection circuit 14_1 determines that there is no priority packet to be the preceding output target (S65). When there are a plurality of priority packets that are prior output candidates, these priority packets are subjected to arbitration by the arbitration circuit in the next cycle.

続いて、図7及び図10を参照して、本実施の形態にかかるルータ装置の具体的な動作例について説明する。図10は、サイクルtにおいて入力P1から出力P3を出力先とする優先パケットが入力された際の動作例を示すタイムチャートである。本例では、サイクルt−1において通常のパケットが入力P2から入力され、バッファ4_2に格納されている。さらに、本例では、サイクルtにおいて、他の入力ポート(入力P2、入力P3)からの入力はない。優先バッファ11_1〜11_3は、空である。図10におけるA〜Iは、図7における各点(A〜I)における通過信号を示している。   Next, a specific operation example of the router device according to the present embodiment will be described with reference to FIGS. 7 and 10. FIG. 10 is a time chart illustrating an operation example when a priority packet having the output P3 as the output destination is input in the cycle t. In this example, a normal packet is input from the input P2 in the cycle t-1, and stored in the buffer 4_2. Furthermore, in this example, there is no input from other input ports (input P2, input P3) in cycle t. The priority buffers 11_1 to 11_3 are empty. A to I in FIG. 10 indicate passing signals at points (A to I) in FIG.

サイクルtにおいて入力P1から優先パケットのヘッダがラッチ2_1に入力される(図10A参照)。この優先パケットのヘッダは、サイクルt+1においてラッチ2_1から出力される。出力された優先パケットのヘッダは、経路計算回路3_1により経路計算が行われた後に優先バッファ11_1に格納される(図10B参照)。   In cycle t, the header of the priority packet is input from the input P1 to the latch 2_1 (see FIG. 10A). The header of this priority packet is output from the latch 2_1 in cycle t + 1. The header of the output priority packet is stored in the priority buffer 11_1 after the route calculation is performed by the route calculation circuit 3_1 (see FIG. 10B).

この優先バッファ11_1への格納と同時に、優先パケットのヘッダは優先先行出力検出回路12_3にも供給される。優先先行出力検出回路12_3は、各経路計算回路から入力された優先パケットのヘッダ、及び優先バッファ11_1〜11_3のバッファ格納状況から先行出力対象となる優先パケットが有るかを判定する。優先バッファ11_1〜11_3が空であるため、優先先行出力検出回路12_3は、サイクルtにおいて入力された優先パケットを先行出力対象と判定し、入力ポート番号"1"をサイクルt+1に優先出力選択回路14_3に供給する(図10C参照)。   Simultaneously with the storage in the priority buffer 11_1, the header of the priority packet is also supplied to the priority preceding output detection circuit 12_3. The priority / preceding output detection circuit 12_3 determines whether there is a priority packet to be output in advance from the header of the priority packet input from each path calculation circuit and the buffer storage status of the priority buffers 11_1 to 11_3. Since the priority buffers 11_1 to 11_3 are empty, the priority / preceding output detection circuit 12_3 determines that the priority packet input in the cycle t is a preceding output target, and sets the input port number “1” to the priority output selection circuit 14_3 in the cycle t + 1. (See FIG. 10C).

サイクルt+1において、調停回路6_3は、調停処理を行う。調停回路6_3には、各優先バッファ及びバッファからパケット格納状況が通知される。例えば、調停回路6_3には、サイクルtにおいて、入力P1に対応する優先パケット11_1に格納されているパケットが無いことが通知される(図10D参照)。調停回路6_3には、サイクルtにおいて、入力P2に対応するバッファ4_2に出力P3を出力先とするパケットが有ることが通知される(図10E参照)。   In cycle t + 1, the arbitration circuit 6_3 performs an arbitration process. The arbitration circuit 6_3 is notified of the packet storage status from each priority buffer and buffer. For example, the arbitration circuit 6_3 is notified that there is no packet stored in the priority packet 11_1 corresponding to the input P1 in the cycle t (see FIG. 10D). Arbitration circuit 6_3 is notified that there is a packet whose output destination is output P3 in buffer 4_2 corresponding to input P2 in cycle t (see FIG. 10E).

調停回路6_3は、サイクルt+1における調停処理の結果として入力P2の通常パケット("2N")に出力権を与えたことを優先出力選択回路14_3に通知する(図10F参照)。   The arbitration circuit 6_3 notifies the priority output selection circuit 14_3 that the output right has been given to the normal packet (“2N”) of the input P2 as a result of the arbitration process in the cycle t + 1 (see FIG. 10F).

優先出力選択回路14_3は、サイクルt+1において、優先先行出力検出回路12_3からの入力("1")、及び調停回路6_3からの入力("2N")を基に、出力対象のパケットをサイクルtにおいて入力P1から入力された優先パケットとする。すなわち、優先出力選択回路14_3は、サイクルt+1において、"1"を制御記憶回路8に出力する(図10G参照)。   In the cycle t + 1, the priority output selection circuit 14_3 selects an output target packet in the cycle t based on the input ("1") from the priority preceding output detection circuit 12_3 and the input ("2N") from the arbitration circuit 6_3. The priority packet is input from the input P1. That is, the priority output selection circuit 14_3 outputs “1” to the control storage circuit 8 in the cycle t + 1 (see FIG. 10G).

制御記憶回路8は、サイクルt+2において、バッファ選択回路13_1に対して出力許可信号を通知する(図10H参照)。これにより、優先バッファ11_1に格納されているパケットのヘッダ、すなわち先行出力対象となった優先パケットのヘッダは調停回路による調停の対象となることなく、スイッチに供給される。スイッチを通過したパケットのヘッダは、サイクルt+2においてルータ装置1から出力される(図10I参照)。   The control storage circuit 8 notifies the buffer selection circuit 13_1 of an output permission signal in cycle t + 2 (see FIG. 10H). As a result, the header of the packet stored in the priority buffer 11_1, that is, the header of the priority packet targeted for preceding output is supplied to the switch without being subject to arbitration by the arbitration circuit. The header of the packet that has passed through the switch is output from the router device 1 in cycle t + 2 (see FIG. 10I).

続いて、本実施の形態にかかるルータ装置の効果について説明する。本実施の形態にかかるルータ装置は、図10に示したように、既に格納されている通常のパケットよりも優先して優先パケットを出力するように出力パケットを選択する。これにより、調停処理を短縮できるとともに、優先度の高いパケットを優先的に出力することが可能になる。   Next, the effect of the router device according to this embodiment will be described. As shown in FIG. 10, the router device according to the present embodiment selects an output packet so as to output a priority packet in preference to a normal packet that has already been stored. As a result, the arbitration process can be shortened and a packet having a high priority can be preferentially output.

<実施の形態4>
本実施の形態にかかるルータ装置は、優先パケットに対応し、かつソースルーティング方式に対応するものである。本実施の形態にかかるルータ装置の構成を図11に示す。なお、図11において、同一名及び同一符号を付した処理部、回路は実施の形態1、2、3と同様の処理を行う。そのため、重複する説明は適宜省略する。
<Embodiment 4>
The router device according to the present embodiment corresponds to a priority packet and corresponds to a source routing method. FIG. 11 shows the configuration of the router apparatus according to this embodiment. In FIG. 11, processing units and circuits having the same name and the same reference numerals perform the same processing as in the first, second, and third embodiments. Therefore, the overlapping description is omitted as appropriate.

ルータ装置1は、バッファ4_1〜4_3と、優先バッファ11_1〜11_3と、優先先行出力検出回路12_1〜12_3と、バッファ選択回路13_1〜13_3と、調停回路6_1〜6_3と、優先出力選択回路14_1〜14_3と、経路更新回路10_1〜10_3と、制御記憶回路8と、スイッチ9と、を備える。各回路、処理部の動作は、前述の実施の形態1〜3と同様であるため、詳細な説明は省略する。   The router device 1 includes buffers 4_1 to 4_3, priority buffers 11_1 to 11_3, priority preceding output detection circuits 12_1 to 12_3, buffer selection circuits 13_1 to 13_3, arbitration circuits 6_1 to 6_3, and priority output selection circuits 14_1 to 14_3. And path update circuits 10_1 to 10_3, a control storage circuit 8, and a switch 9. Since the operation of each circuit and processing unit is the same as in the first to third embodiments, detailed description thereof is omitted.

本実施の形態にかかるルータ装置1は、実施の形態3と同様に優先バッファ11_1〜11_3を備え、既に格納されている通常のパケットよりも優先パケットを優先的に処理することができる。さらに、本実施の形態にかかるルータ装置1は、実施の形態2と同様に経路更新回路10_1〜10_3を備える構成であるため、ルータ通過に要するレイテンシを削減することができる。   The router device 1 according to the present embodiment includes priority buffers 11_1 to 11_3 as in the third embodiment, and can preferentially process priority packets over already stored normal packets. Furthermore, since the router device 1 according to the present embodiment is configured to include the route update circuits 10_1 to 10_3 as in the second embodiment, the latency required for passing through the router can be reduced.

なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上述の例では、3つの出力ポートを持つルータ装置について説明したが、これに限られず、1以上の任意数の出力ポートを持つルータ装置に本発明を適応することが可能である。また、ルータ装置を、制御記憶回路を介さずに、出力選択回路または優先出力選択回路の判定結果をスイッチ等に通知するように構成することも可能である。   Note that the present invention is not limited to the above-described embodiment, and can be changed as appropriate without departing from the spirit of the present invention. For example, in the above-described example, the router apparatus having three output ports has been described. However, the present invention is not limited to this, and the present invention can be applied to a router apparatus having one or more arbitrary number of output ports. Further, the router device can be configured to notify the switch or the like of the determination result of the output selection circuit or the priority output selection circuit without using the control storage circuit.

1 ルータ装置
2_1〜2_3 ラッチ
3_1〜3_3 経路計算回路
4_1〜4_3 バッファ
5_1〜5_3 先行出力検出回路
6_1〜6_3 調停回路
7_1〜7_3 出力選択回路
8 制御記憶回路
9 スイッチ
10_1〜10_3 経路更新回路
11_1〜11_3 優先バッファ
12_1〜12_3 優先先行出力検出回路
13_1〜13_3 バッファ選択回路
14_1〜14_3 優先出力選択回路
DESCRIPTION OF SYMBOLS 1 Router apparatus 2_1-2_3 Latch 3_1-3_3 Path | route calculation circuit 4_1-4_3 Buffer 5_1-5_3 Precedence output detection circuit 6_1-6_3 Arbitration circuit 7_1-7_3 Output selection circuit 8 Control storage circuit 9 Switch 10_1-10_3 Path | route update circuit 11_1-11_3 Priority buffers 12_1 to 12_3 Priority preceding output detection circuits 13_1 to 13_3 Buffer selection circuits 14_1 to 14_3 Priority output selection circuits

Claims (10)

複数の入力ポートと、第1の出力ポートを有し、前記第1の出力ポートの出力権限を制御する調停処理を行うルータ装置であって、
あるサイクルにおける前記第1の出力ポートへの出力を要求する入力パケットが、前記ルータ装置において前記第1の出力ポートへの出力を要求する唯一のパケットである場合に、当該パケットを前記調停処理の対象とせずに出力する先行出力対象パケットと決定する、ルータ装置。
A router device having a plurality of input ports and a first output port, and performing an arbitration process for controlling the output authority of the first output port,
When an input packet requesting output to the first output port in a certain cycle is the only packet requesting output to the first output port in the router device, the packet is subjected to the arbitration process. A router device that determines a prior output target packet to be output without being targeted.
出力待ちとなるパケットを一時的に保持する記憶部と、
前記サイクルにおける前記第1の出力ポートへの出力を要求するパケットの入力状態と、前記記憶部の格納状態と、に基づいて前記先行出力対象パケットを検出する先行出力検出回路と、
前記先行出力対象パケットを検出した場合に当該パケットを前記第1の出力ポートから出力するパケットと決定し、前記先行出力対象パケットを検出しなかった場合に前記調停処理に基づいて前記第1の出力ポートから出力するパケットを決定する出力選択回路と、
前記出力選択部の決定に基づいて、前記第1の出力ポートへの配線切替えを制御するスイッチ部と、を備えること、
を特徴とする請求項1に記載のルータ装置。
A storage unit temporarily holding a packet waiting to be output;
A preceding output detection circuit for detecting the preceding output target packet based on an input state of a packet requesting output to the first output port in the cycle and a storage state of the storage unit;
When the preceding output target packet is detected, the packet is determined as a packet to be output from the first output port, and when the preceding output target packet is not detected, the first output is performed based on the arbitration process. An output selection circuit for determining a packet to be output from the port;
A switch unit for controlling the switching of the wiring to the first output port based on the determination of the output selection unit,
The router device according to claim 1.
前記先行出力検出回路は、前記サイクルにおいて、前記記憶部にて出力待ちとなっているパケットがなく、前記第1の出力ポートを出力先とするパケットの入力が1つである場合に、当該パケットを前記先行出力対象パケットとして検出すること、
を特徴とする請求項2に記載のルータ装置。
In the cycle, the preceding output detection circuit, when there is no packet waiting for output in the storage unit and there is one packet whose output destination is the first output port, Is detected as the preceding output target packet,
The router device according to claim 2.
前記先行出力検出回路は、前記サイクルにおいて、前記記憶部に優先的に送信されるべき優先パケットがなく、前記第1の出力ポートを出力先とする前記優先パケットの入力が1つである場合に、当該優先パケットを前記先行出力対象パケットとして検出すること、
を特徴とする請求項2に記載のルータ装置。
The preceding output detection circuit, when there is no priority packet to be preferentially transmitted to the storage unit in the cycle and there is one input of the priority packet having the first output port as an output destination Detecting the priority packet as the preceding output target packet;
The router device according to claim 2.
前記調停処理を行う調停回路を備え、
前記調停回路は、前記優先パケットに優先的に前記第1の出力ポートからの出力権限を与えること、
を特徴とする請求項4に記載のルータ装置。
Comprising an arbitration circuit for performing the arbitration process;
The arbitration circuit preferentially grants the output authority from the first output port to the priority packet;
The router device according to claim 4.
サイクル単位での前記第1の出力ポートの出力にかかるパケットの情報を記憶し、当該情報を前記スイッチ部に通知する制御記憶回路を備え、
前記出力選択部は、前記第1の出力ポートから出力するパケットの決定情報を前記制御記憶回路に書込むこと、
を特徴とする請求項2乃至請求項5のいずれか1項に記載のルータ装置。
A control storage circuit for storing information of a packet related to the output of the first output port in a cycle unit and notifying the switch unit of the information;
The output selection unit writes determination information of a packet to be output from the first output port into the control storage circuit;
The router device according to any one of claims 2 to 5, wherein:
第2の出力ポートと、
前記複数の入力パケットのいずれかに入力されたパケットのヘッダ情報から出力すべき出力ポートを決定する経路計算回路と、を備えること、
を特徴とする請求項2乃至請求項6のいずれか1項に記載のルータ装置。
A second output port;
A path calculation circuit that determines an output port to be output from header information of a packet input to any of the plurality of input packets,
The router device according to any one of claims 2 to 6, wherein:
第2の出力ポートを備え、
前記ルータ装置に入力されるパケットに通信経路情報が含まれていること、
を特徴とする請求項2乃至請求項6のいずれか1項に記載のルータ装置。
A second output port;
Communication path information is included in the packet input to the router device;
The router device according to any one of claims 2 to 6, wherein:
前記通信経路情報から既に通過した経路にかかる情報を削除する経路更新回路を備えること、
を特徴とする請求項8に記載のルータ装置。
Comprising a route update circuit for deleting information relating to a route that has already passed from the communication route information;
The router device according to claim 8.
複数の入力ポートと、第1の出力ポートを有し、前記第1の出力ポートの出力権限を制御する調停処理を行うルータ装置の制御方法であって、
あるサイクルにおける前記第1の出力ポートへの出力を要求する入力パケットが、前記ルータ装置において前記第1の出力ポートへの出力を要求する唯一のパケットである場合に、当該パケットを前記調停処理の対象とせずに出力する先行出力対象パケットと決定する、制御方法。
A control method of a router device having a plurality of input ports and a first output port, and performing an arbitration process for controlling the output authority of the first output port,
When an input packet requesting output to the first output port in a certain cycle is the only packet requesting output to the first output port in the router device, the packet is subjected to the arbitration process. A control method for determining a prior output target packet to be output without being targeted.
JP2011046463A 2011-03-03 2011-03-03 Router device and method for controlling the same Pending JP2012186539A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011046463A JP2012186539A (en) 2011-03-03 2011-03-03 Router device and method for controlling the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011046463A JP2012186539A (en) 2011-03-03 2011-03-03 Router device and method for controlling the same

Publications (1)

Publication Number Publication Date
JP2012186539A true JP2012186539A (en) 2012-09-27

Family

ID=47016243

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011046463A Pending JP2012186539A (en) 2011-03-03 2011-03-03 Router device and method for controlling the same

Country Status (1)

Country Link
JP (1) JP2012186539A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016018382A (en) * 2014-07-08 2016-02-01 富士通株式会社 Data transmission/reception system, data transmission/reception device, and method for controlling data transmission/reception system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004529541A (en) * 2001-02-28 2004-09-24 インターナショナル・ビジネス・マシーンズ・コーポレーション Switching mechanism and method having separate outputs
JP2006254450A (en) * 2005-03-08 2006-09-21 Commiss Energ Atom Communication node architecture in a global asynchronous network-on-chip system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004529541A (en) * 2001-02-28 2004-09-24 インターナショナル・ビジネス・マシーンズ・コーポレーション Switching mechanism and method having separate outputs
JP2006254450A (en) * 2005-03-08 2006-09-21 Commiss Energ Atom Communication node architecture in a global asynchronous network-on-chip system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016018382A (en) * 2014-07-08 2016-02-01 富士通株式会社 Data transmission/reception system, data transmission/reception device, and method for controlling data transmission/reception system

Similar Documents

Publication Publication Date Title
US10324509B2 (en) Automatic generation of power management sequence in a SoC or NoC
US8638665B2 (en) Router, information processing device having said router, and packet routing method
EP2523402A1 (en) Communication system, control apparatus, processing rule setting method, packet transmitting method and program
JP4519159B2 (en) Packet transfer apparatus and packet transfer method
US20120185633A1 (en) On-chip router and multi-core system using the same
JPWO2011118585A1 (en) Information system, control device, virtual network management method and program
US9282031B2 (en) Network system and routing method
US8295292B2 (en) High performance hardware linked list processors
TWI603205B (en) Traffic control on an on-chip network
US10038571B2 (en) Method for reading and writing forwarding information base, and network processor
JP2012155650A (en) Router and many-core system
JP2013201552A (en) On-chip router and multicore system using the same
JP2012186539A (en) Router device and method for controlling the same
JP5847887B2 (en) On-chip router and multi-core system using the same
JP2010109869A (en) Semiconductor device
JP5039732B2 (en) Packet transfer apparatus and packet transfer method
US7782780B1 (en) System and method for arbitration of multicast data packets using holds
JP5880169B2 (en) Bus circuit
US20160142224A1 (en) Apparatus and method for reducing the number of ports on which flooding is executed
CN108337181A (en) A kind of switching network congestion management and device
WO2020004015A1 (en) Dynamic variable capacity memory device and storage capacity dynamic variable method
JP2013005145A (en) Packet transfer device and packet transfer method
JP4669442B2 (en) Packet processing system, packet processing method, and program
JP2015069345A (en) Information processing apparatus, data transfer apparatus, and data transfer method
JP6070848B2 (en) Information processing apparatus, data transfer apparatus, data transfer method, and control apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130927

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140512

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140520

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20141007