JP4463097B2 - Data transfer system, data transfer method, and crossbar LSI - Google Patents
Data transfer system, data transfer method, and crossbar LSI Download PDFInfo
- Publication number
- JP4463097B2 JP4463097B2 JP2004373618A JP2004373618A JP4463097B2 JP 4463097 B2 JP4463097 B2 JP 4463097B2 JP 2004373618 A JP2004373618 A JP 2004373618A JP 2004373618 A JP2004373618 A JP 2004373618A JP 4463097 B2 JP4463097 B2 JP 4463097B2
- Authority
- JP
- Japan
- Prior art keywords
- link
- error
- data
- adjustment
- data transfer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012546 transfer Methods 0.000 title claims description 87
- 238000000034 method Methods 0.000 title claims description 15
- 238000001514 detection method Methods 0.000 claims description 37
- 238000004891 communication Methods 0.000 claims description 32
- 230000002776 aggregation Effects 0.000 claims description 4
- 238000004220 aggregation Methods 0.000 claims description 4
- 230000007423 decrease Effects 0.000 claims description 2
- 238000004904 shortening Methods 0.000 claims description 2
- 230000005540 biological transmission Effects 0.000 description 18
- 238000012545 processing Methods 0.000 description 13
- 238000005070 sampling Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 230000001629 suppression Effects 0.000 description 6
- 238000003745 diagnosis Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 239000000470 constituent Substances 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 230000005764 inhibitory process Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
Images
Landscapes
- Bus Control (AREA)
- Maintenance And Management Of Digital Transmission (AREA)
- Multi Processors (AREA)
Description
本発明は、複数の通信ノード間に複数のリンクが存在するネットワークシステムにおいてリンクを介して通信ノード間でデータ転送が行われるデータ転送システムおよびデータ転送方法、ならびに通信ノードの間のデータ転送を中継するクロスバLSIに関する。 The present invention relates to a data transfer system and a data transfer method in which data transfer is performed between communication nodes via a link in a network system in which a plurality of links exist between a plurality of communication nodes, and data transfer between the communication nodes is relayed The present invention relates to a crossbar LSI.
サーバ装置等において、複数のプロセッサを搭載する場合に、各プロセッサをクロスバLSIで接続する手法が用いられることがある。クロスバLSIには、例えば、送信元の通信ノードであるプロセッサから送信先の通信ノードであるプロセッサへのデータの転送経路を設定する交換処理を行う交換処理部とリンク調整の制御を行うリンク調整部とを有するクロスバ部が搭載される(例えば、特許文献1参照。)。また、クロスバLSIには、プロセッサから受信したデータをクロスバ部に出力するとともに、クロスバ部から入力するデータを送信するポート部が搭載される。クロスバ部は、ポート部における入力ポートが受信して出力したデータを、他のプロセッサまたはクロスバLSIに送信するために、他のポート部における出力ポートに出力する。 In a server device or the like, when a plurality of processors are mounted, a technique of connecting each processor with a crossbar LSI may be used. In the crossbar LSI, for example, an exchange processing unit that performs exchange processing for setting a data transfer path from a processor that is a transmission source communication node to a processor that is a transmission destination communication node, and a link adjustment unit that controls link adjustment The crossbar part which has is mounted (for example, refer patent document 1). In addition, the crossbar LSI includes a port unit that outputs data received from the processor to the crossbar unit and transmits data input from the crossbar unit. The crossbar unit outputs the data received and output by the input port in the port unit to the output port in the other port unit in order to transmit to the other processor or the crossbar LSI.
図6は、特許文献1に記載されたクロスバLSIの構成を示すブロック図である。図6に示す構成では、入力ポート91Aと出力ポート91Bとを含むポート部、入力ポート92Aと出力ポート92Bとを含むポート部、入力ポート93Aと出力ポート93Bとを含むポート部、入力ポート94Aと出力ポート94Bとを含むポート部、およびクロスバ部90で、1つのクロスバLSIが構成されている。
FIG. 6 is a block diagram showing the configuration of the crossbar LSI described in
プロセッサ間のデータ転送を高速化するために、データ転送速度は高速であることが望ましい。データ転送速度を高速化した場合には、温度変化やスキューの影響を考慮して、一般に、ポート部において、定期的に調整信号を用いたリンク調整を実行して、各リンクを同調させる。 In order to increase the speed of data transfer between processors, it is desirable that the data transfer speed be high. When the data transfer rate is increased, in consideration of the influence of temperature change and skew, generally, link adjustment using an adjustment signal is periodically performed in the port unit to tune each link.
例えば、特許文献2には、リンクを同調させる場合に、テストパターンを生成して、テストパターンを送受信することによって、出力AC電流レベルや出力DCレベル等を調整する技術が記載されている。すなわち、テストパターンを送受信することによってリンクの自動調整が実行される。
For example,
リンク調整が実行されているときには、ポート部を介するプロセッサ間のデータ転送を行うことができないので、スループット(データ転送効率)を低下させないようにするために、調整動作の実行時間は短いことが好ましい。 When link adjustment is being performed, data transfer between the processors cannot be performed via the port unit, so that the execution time of the adjustment operation is preferably short so as not to reduce the throughput (data transfer efficiency). .
複数の通信ノードを接続するネットワークシステムでは、通信ノード間がケーブルで接続されているのかパッケージ(基板)上の配線で接続されているのかの違いなどに起因して、また、データ転送を中継するLSIを構成する素材の違い等に起因して各リンクの特性が異なってくる。すなわち、集積回路(IC)、ICがさらに集積化されたLSI、LSIを搭載するパッケージ、パッケージ上の配線パターン、LSI間を接続するケーブルの材質、ケーブル長、ドライバ、レシーバ、その他の種々の要因に影響によって、各リンクの特性が異なってくる。 In a network system that connects multiple communication nodes, data transfer is relayed due to differences in whether communication nodes are connected by cables or wiring on a package (board). The characteristics of each link differ due to differences in materials constituting the LSI. That is, an integrated circuit (IC), an LSI on which an IC is further integrated, a package on which the LSI is mounted, a wiring pattern on the package, a cable material connecting the LSIs, a cable length, a driver, a receiver, and various other factors Depending on the effect, the characteristics of each link will be different.
しかし、従来のリンク調整方法では、リンク調整は一定の時間間隔で実施されている。そのために、調整が不要であるリンクについてもリンク調整がなされる。リンク調整がなされているときには、そのリンクでは本来のデータ転送を行うことができないので、データ転送効率(スループット)の低下を招く。また、一度エラーが検出されると、エラーを検出したリンクでのデータ転送を中断し、そのリンクの調整処理、初期化処理および診断処理等が完了するまでネットワークシステムにおいてデータ転送を停止するように構成されることもあるが、そのような構成では、複数のリンクで同時に調整処理、初期化処理および診断処理がなされている訳ではなく、それらの処理がなされていないリンクがあるにも関わらずネットワークシステムにおいてデータ転送が停止されることになり、さらにデータ転送効率の低下を招く。 However, in the conventional link adjustment method, link adjustment is performed at regular time intervals. Therefore, link adjustment is also performed for links that do not require adjustment. When the link is adjusted, the original data transfer cannot be performed on the link, so that the data transfer efficiency (throughput) is reduced. In addition, once an error is detected, the data transfer on the link where the error is detected is interrupted, and the data transfer is stopped in the network system until the adjustment processing, initialization process, diagnosis process, etc. of the link are completed. In such a configuration, adjustment processing, initialization processing, and diagnosis processing are not performed simultaneously on a plurality of links, but there are links that have not been processed. In the network system, data transfer is stopped, and data transfer efficiency is further reduced.
そこで、本発明は、リンク調整に起因するデータ転送効率の低下を抑制することができるデータ転送システム、データ転送方法およびクロスバLSIを提供することを目的とする。 Therefore, an object of the present invention is to provide a data transfer system, a data transfer method, and a crossbar LSI that can suppress a decrease in data transfer efficiency caused by link adjustment.
本発明によるデータ転送システムは、通信ノードが、他の通信ノードから受信したデータのエラーを検出するエラー検出手段(例えば、エラー検出回路58で実現される。)と、エラー検出手段が検出したエラーの発生数を集計するエラー集計手段(例えば、加算器59、加算結果格納部60、エラーサンプリング回路61で実現される。)と、エラー集計手段が集計したエラーの発生数にもとづいて、リンク調整の実行間隔を決定するリンク調整間隔設定手段(例えば、タイマ設定値選択回路50、−1減算回路51、タイマカウンタ52、リンク調整検出回路54で実現される。)と、リンク調整の実行時に、転送されていたフレームデータが、順序保証が不要であることを示すフィールドを含むフレームデータである場合には、そのフレームデータを他のリンクを介して転送するように転送経路を切り換える調整時リンク再設定制御回路(例えば、クロスバ部18,28内のリンク再設定制御回路で実現される。)とを備えたことを特徴とする。
In the data transfer system according to the present invention, the communication node detects an error in data received from another communication node (for example, realized by the error detection circuit 58), and the error detected by the error detection unit. Link adjustment based on an error totaling means (for example, realized by an
リンク調整間隔設定手段は、所定時間におけるリンクを転送されたデータのエラーの発生数が少ないほどリンク調整の実行間隔を長くし、エラーの発生数が多いほどリンク調整の実行間隔を短くすることが好ましい。 The link adjustment interval setting means may increase the link adjustment execution interval as the error occurrence number of the data transferred through the link in a predetermined time is smaller, and shorten the link adjustment execution interval as the error occurrence amount increases. preferable.
所定の一定時間におけるリンクを転送されたデータのエラーの発生数が規定数を越えた場合に、そのリンクでのデータ転送を止め、そのデータを他のリンクを介して転送するように転送経路を切り換えるエラー時リンク再設定制御回路(例えば、リンク制御部5内の転送抑止回路63およびクロスバ部18,28内のリンク再設定制御回路で実現される。)を備えていてもよい。
When the number of error occurrences of data transferred over a link for a certain fixed time exceeds the specified number, the data transfer on that link is stopped and the transfer path is set so that the data is transferred via another link. An error switching link reset control circuit (for example, realized by a transfer suppression circuit 63 in the
本発明によるデータ転送方法は、エラーを検出するエラー検出手段と、エラーの発生数を集計するエラー集計手段と、リンク調整の実行間隔を決定するリンク調整間隔設定手段と、転送経路を切り換える調整時リンク再設定制御回路とを含む複数の通信ノード間に複数のリンクが存在し、リンクを介して通信ノード間でデータ転送を行うデータ転送方法であり、所定の時期にリンク調整を行うデータ転送方法であって、エラー検出手段が、他の通信ノードから受信したデータのエラーを検出し、エラー集計手段が、所定時間毎に検出されたエラーの発生数を集計し、リンク調整間隔設定手段が、集計されたエラーの発生数が少ないほどリンク調整の実行間隔を長くし、エラーの発生数が多いほどリンク調整の実行間隔を短くし、調整時リンク再設定制御回路が、リンク調整の実行時に、転送されていたフレームデータが、順序保証が不要であることを示すフィールドを含むフレームデータである場合には、そのフレームデータを他のリンクを介して転送するように転送経路を切り換えることを特徴とする。 The data transfer method according to the present invention includes an error detection means for detecting errors, an error count means for counting the number of error occurrences, a link adjustment interval setting means for determining a link adjustment execution interval, and an adjustment time for switching transfer paths. A data transfer method in which a plurality of links exist between a plurality of communication nodes including a link resetting control circuit, and data is transferred between the communication nodes via the links, and the data transfer method performs link adjustment at a predetermined time a is an error detection means detects an error in data received from another communication node, an error aggregation means aggregates the number of occurrences of errors detected every predetermined time, the link adjustment interval setting means, higher incidence of aggregated failure that a longer execution interval of the link adjustment, shortening the interval of the link adjustment greater the number of generated errors, adjustment link Setting control circuit, when the link adjustment execution, the frame data that has been transferred, when the frame data includes a field indicating that the order guarantee is not required, the frame data via the other link transfer The transfer path is switched as described above.
あらかじめ所定時間あたりのエラー発生数を複数段階に区分して、それぞれに対応したリンク調整の実行間隔を定義し、リンク調整間隔設定手段が、複数段階のうちで、集計されたエラーの発生数が属する段階に対応した実行間隔でリンク調整を実行するようにしてもよい。 Advance the number of generated errors per predetermined time is divided into a plurality of stages, to define the interval of link adjustment corresponding to the respective links adjusting interval setting means, among the plurality of stages, the number of occurrences of the aggregated error The link adjustment may be executed at an execution interval corresponding to the stage to which it belongs.
本発明によるクロスバLSIは、他のクロスバLSIまたはプロセッサから受信したデータのエラーを検出するエラー検出手段と、エラー検出手段が検出したエラーの発生数を集計するエラー集計手段と、エラー集計手段が集計したエラーの発生数にもとづいて、リンク調整の実行間隔を決定するリンク調整間隔設定手段と、リンク調整の実行時に、転送されていたフレームデータが、順序保証が不要であることを示すフィールドを含むフレームデータである場合には、そのフレームデータを他のリンクを介して転送するように転送経路を切り換える調整時リンク再設定制御回路とを備えたことを特徴とする。 The crossbar LSI according to the present invention includes error detection means for detecting errors in data received from other crossbar LSIs or processors, error counting means for counting the number of occurrences of errors detected by the error detection means, and error counting means A link adjustment interval setting means for determining a link adjustment execution interval based on the number of errors generated, and a field indicating that the frame data transferred at the time of link adjustment does not require an order guarantee. In the case of frame data, an adjustment-time link reset control circuit that switches a transfer path so as to transfer the frame data via another link is provided.
所定の一定時間におけるリンクを転送されたデータのエラーの発生数が規定数を越えた場合に、そのリンクでのデータ転送を止め、そのデータを他のリンクを介して転送するように転送経路を切り換えるエラー時リンク再設定制御回路を備えていてもよい。 When the number of error occurrences of data transferred over a link for a certain fixed time exceeds the specified number, the data transfer on that link is stopped and the transfer path is set so that the data is transferred via another link. An error link re-setting control circuit for switching may be provided.
本発明によれば、エラー発生頻度をもとにそれぞれのリンクに最適なリンク調整間隔を自動的に設定することができ、データ転送システムのスループットを向上させることができる上に、順序保証が不要なデータフレームを、リンク調整(初期化および再送処理中を含む。)でも空きリンクを使用して転送可能にすることによって、調整対象のリンク以外で使用可能なリンクがある場合に他の空きリンクを介してデータフレームが転送可能になり、高効率なデータ転送が可能になる。 According to the present invention, the optimum link adjustment interval can be automatically set for each link based on the frequency of error occurrence, the throughput of the data transfer system can be improved , and no order guarantee is required. Data link can be transferred using a free link even in link adjustment (including initialization and retransmission processing), so that if there is a link that can be used other than the link to be adjusted, another free link is available. The data frame can be transferred via the network, so that highly efficient data transfer is possible.
さらに、エラー発生頻度に応じて自動的にリンク切断およびリンク切替を行うことによって、エラー発生頻度に応じてリンクを切断し他のリンクを使用してフレームデータの転送を行うことができ、あるリンクの状態が悪いことに起因してシステム性能全体を低下させてしまうことを防止できる。 Furthermore, by automatically performing link disconnection and link switching according to the error occurrence frequency, the link can be disconnected according to the error occurrence frequency and frame data can be transferred using another link. It is possible to prevent the overall system performance from being deteriorated due to the poor state.
以下、本発明の実施の形態を図面を参照して説明する。
図1は、本発明によるデータ転送システムの一構成例を示すブロック図である。図1に示すシステムでは、信号線100,101,102,103が、通信ノードとしての装置1と他の通信ノード(図示せず)との間に接続されている。信号線104,105,106,107が、装置1と通信ノードとしての装置2との間に接続されている。信号線108,109,110,111が、装置2と他の通信ノード(図示せず)との間に接続されている。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram showing a configuration example of a data transfer system according to the present invention. In the system shown in FIG. 1,
通信ノードとしての装置1,2は、他の通信ノードが送信したデータを、送信先である通信ノードに宛てて中継する交換機能を有する。ここでは、装置1,2はクロスバLSIであり、他の通信ノードがプロセッサである場合を例にする。すなわち、並列処理を行うマルチプロセッサ間のデータ転送を行うデータ転送システムを例にする。なお、ここでは、装置1の先に通信ノードとしてのプロセッサが接続され、装置2の先に通信ノードとしてのプロセッサが接続されている場合を例にするが、装置1,2の先には、通信ノードとして、装置1,2と同様の構成の装置が接続されていてもよい。以下、装置1の先に接続されている通信ノードおよび装置2の先に接続されている通信ノードを、それぞれ、接続先装置ということがある。
The
装置1において、データ交換処理を行うクロスバ部18とそれぞれの信号線100,101,102,103との間に、リンク制御部10,11,12,13が設けられている。また、クロスバ部18とそれぞれの信号線104,105,106,107との間に、リンク制御部14,15,16,17が設けられている。装置2において、データ交換処理を行うクロスバ部28とそれぞれの信号線104,105,106,107との間に、リンク制御部20,21,22,23が設けられている。また、クロスバ部28とそれぞれの信号線108,109,110,111との間に、リンク制御部24,25,26,27が設けられている。なお、クロスバ部18の構成とクロスバ部28の構成は同じである。
In the
この実施の形態では、2つのリンク制御部とそれらの間に接続されている信号線とでリンクが形成されているとする。例えば、リンク制御部14、信号線104およびリンク制御部20で、1つのリンクが形成されている。
In this embodiment, it is assumed that a link is formed by two link control units and a signal line connected between them. For example, one link is formed by the
図1に示す各リンク制御部10〜17,20〜27の構成は同じである。図2は、図1に示すリンク制御部10〜17,20〜27の構成例を示すブロック図である。図2では、リンク制御部10〜17,20〜27を、リンク制御部5として示す。リンク制御部5は、信号線205にデータ(シリアルデータ)を出力するとともに、信号線206からデータ(シリアルデータ)を入力する送受信制御ユニット(ポート部)70を有する。信号線205,206は、図1における信号線100〜111のいずれかに相当する。例えば、リンク制御部5を図1に示すリンク制御部10と見なすと、信号線205,206は、信号線100に相当する。
The configurations of the
図2に示す例では、送受信制御ユニット70は、データをクロック信号に同期させる同期化回路71、PLL調整を行うとともに並列データ間のばらつきを吸収するPLL調整/デスキュー回路72、およびパラレルデータをシリアルデータに変換して出力し、入力されたシリアルデータをパラレルデータに変換するシリアルパラレル変換回路73を有する。送受信制御ユニット70は、装置内部(図2に示す例では具体的には選択回路57)から入力されたデータを信号線205を介して接続先装置に送信し、接続先装置から信号線206を介して受信したデータを装置内部(図2に示す例では具体的には転送抑止回路63)に出力する。
In the example shown in FIG. 2, the transmission /
また、リンク制御部5は、リンク調整間隔を規定する時間を選択するタイマ設定値選択回路50、タイマ設定値選択回路50が選択した時間に応じた値(タイマ設定値)を初期値として計時を行うタイマカウンタ52、およびタイマカウンタ52に設定されている値をクロック信号に同期して1ずつ減算する−1減算回路51を含む。タイマカウンタ52は、エラー検出回路58がエラー検出したとき、またはリンク調整検出回路54がリンク調整を行うことに決定したときに、タイマ設定値選択回路50が選択したタイマ設定値を初期値としてロードする。
In addition, the
図3には、タイマ設定値選択回路50が選択するタイマ設定値の例が示されている。タイマ設定値選択回路50は、リンク調整を実行する時間の間隔(リンク調整間隔)を選択する。具体的には、タイマ設定値選択回路50は、一定時間あたりに発生したエラー数をサンプリングしているエラーサンプリング回路61によるエラー数にもとづいてリンク切断判定回路62が出力するエラー数に応じてタイマ設定値を選択する。例えば、エラー数が規定値(リンクの性能に見合った初期値)より多い場合にはリンク調整間隔を一定の割合(例えば、−10%、−20%、−30%、−n%)で短縮し、規定値よりエラー数が少ない場合には、リンク調整間隔を一定の割合(例えば、+10%、+20%、+30%、+n%)で延長する。
FIG. 3 shows an example of timer setting values selected by the timer setting
また、リンク制御部5は、リンク調整を行うか否かを検出するリンク調整検出回路54を含む。リンク調整検出回路54は、タイマカウンタ52がタイムアップしたこと、すなわちタイマカウンタ52に設定されている値が”1”から”0”になったこと、または、エラー検出回路58がエラー検出したことをもって、リンク調整を行うことに決定し、リンク調整中フラグレジスタ55に、リンク調整中フラグとしての”1”をセットする。リンク調整中フラグの状態は、信号線200を介してクロスバ部18にも出力される。なお、以下の説明では、リンク制御部5は、図1に示す装置1に設けられているものとする。なお、リンク制御部5が図1に示す装置2に設けられているものである場合には、リンク調整中フラグの状態はクロスバ部28に出力されることになる。
The
また、リンク制御部5は、信号線201を介してクロスバ部18側から入力したフレームデータと、調整パータン出力回路56が出力するデータとのうちのいずれかを選択して送受信制御ユニット70に出力する選択回路57を含む。調整パータン出力回路56は、リンク切断判定回路62から切断指示が出力されているときにはリンク切断メッセージを出力し、リンク調整中フラグレジスタ55に”1”がセットされているときには、リンク調整パターンを出力する。選択回路57は、リンク調整中フラグレジスタ55に”1”がセットされているとき、またはリンク切断判定回路62から切断指示が出力されているときには、調整パータン出力回路56が出力するデータを選択する。なお、リンク切断判定回路62からの切断指示は、信号線202を介してクロスバ部18にも出力される。
Further, the
さらに、リンク制御部5は、信号線206を介して接続先装置から受信し送受信制御ユニット70を経由したフレームデータのエラー検出を行うエラー検出回路58、エラー検出回路58がエラーを検出したときに検出されたエラーの数と加算結果格納部60に格納されているエラー数(累積数)とを加算して加算結果を加算結果格納部60に格納する加算器59、および信号線204を介してクロスバ部18から入力されたセットパルスによって加算結果格納部60に格納されているエラー数(エラー発生数)をサンプリングするエラーサンプリング回路61を含む。リンク切断判定回路62は、エラーサンプリング回路61のサンプリング結果であるエラー数を、リンクを切断するか否か判定するためのしきい値と比較し、エラー数がしきい値を越えていれば、切断指示を出力する。なお、リンク切断判定回路62には、あらかじめ、診断プロセッサ等から、リンクを切断するか否か判定するためのしきい値が設定されている。
Further, the
また、接続先装置から信号線206を介して受信し送受信制御ユニット70を経由したフレームデータは、さらに転送抑止回路63を経由して、信号線203を介してクロスバ部18側に出力される。転送抑止回路63は、エラー検出回路58がエラーを検出したときに、送受信制御ユニット70からのフレームデータをクロスバ部18側に出力しないようにする。
The frame data received from the connection destination device via the
なお、クロスバ部18,28には、交換機能を実行する回路の他に、少なくとも、信号線を204介して定期的にセットパルスを出力する回路と、リンク切断メッセージを他の装置から受信したときに、リンクの切断を認識して、切断されたリンクで転送されていたフレームデータを、他のリンクを介して転送するように転送経路を切り換えるリンク再設定制御回路(エラー時リンク再設定制御回路)とが含まれている。また、リンク調整が開始されたときに、転送されていたフレームデータが順序保証が不要であるフレームデータである場合には、そのフレームデータを、他のリンクを介して転送するように転送経路を切り換えるリンク再設定制御回路(調整時リンク再設定制御回路)が含まれている。
In addition to the circuit that executes the switching function, the
次に、図4のフローチャートおよび図5の説明図を参照して動作について説明する。図5には、この実施の形態において用いられるフレームデータのフレーム構成例が示されている。 Next, the operation will be described with reference to the flowchart of FIG. 4 and the explanatory diagram of FIG. FIG. 5 shows a frame configuration example of the frame data used in this embodiment.
装置1と装置2との間のデータ転送が可能な状態になると、例えば、装置1と装置2とを含むシステムが立ち上がると、リンク制御部10〜17、20〜27において、まず、タイマ設定値選択回路50は、リンク調整間隔を規定する値であるタイマ設定値(一例として図3に示すデフォルト値である5000(1388h))を選択する。そして、そのタイマ設定値がタイマカウンタ52にセットされる(ステップS1)。−1減算回路51は、タイマカウンタ52に設定されている値をクロック信号に同期して1ずつ減算する。すなわち、タイマカウンタ52の設定値は、クロック信号に同期して1ずつ減算される。
When data transfer between the
エラー検出回路58は、接続先装置から信号線206を介して受信されたフレームデータのエラーの有無をチェックする(ステップS2)。エラー検出回路58がエラーを検出しなければ、転送抑止回路63は、フレームデータを信号線203を介してクロスバ部18に出力する。クロスバ部18は、フレームデータを、接続先装置(送信先装置)に至る信号線に接続されているタイマ制御部を介して接続先装置に転送する。
The
タイマカウンタ52には、論理和回路(OR回路)53の出力が”0”で、かつ、タイマカウンタ52の値が”0”でない限り、クロック信号に同期して−1減算回路51で減算された値が格納される。
The
タイマカウンタ52の値が”0”になっていない場合には、フレームデータの転送が継続される(ステップS3,S14)。タイマカウンタ52の値が”0”になった場合、すなわちタイマ設定値に相当する時間が経過した場合には(ステップS3)、タイマカウンタ52は、タイマ設定値選択回路50が出力する値を再びセットする。同時に、リンク調整検出回路54は、タイマカウンタ52の値が”0”になったことを検出して、リンク調整中フラグレジスタ55に”1”をセットする。すなわち、リンク調整を指示する。調整パターン出力回路56は、リンク調整中フラグレジスタ55に”1”がセットされているときには、リンク調整パターンを生成して出力する(ステップS4)。リンク調整検出回路54は、リンク調整を指示する回路でありタイマカウンタ52の値が”1”から”0”になった場合、またはエラー検出回路58がエラー検出したときにリンク調整中フラグを”1”にする。
If the value of the
リンク調整中フラグレジスタ55に設定されるリンク調整中フラグは、リンク調整検出回路54によって”1”にセットされるが、リンク調整パターンを用いたリンク調整が実行完了するまでセットされ続け、調整パターン出力回路56が最終調整パターンを送信したときに”0”にリセットされる(ステップS5)。選択回路57は、リンク調整フラグが”0”である場合には、信号線201を介して受信したデータフレームを送受信ユニット70を介して接続先装置に送信し、リンク調整フラグが”1”である場合には、調整パターン出力回路56が出力するリンク調整パターンを選択する。
The link adjustment flag set in the link
なお、リンク調整パターンは、送受信制御ユニット70を介して接続先装置に送信される。接続先装置におけるリンク制御部の送受信制御ユニット70は、リンク調整パターンを受信すると、例えば特開2004−110507号公報に記載されているようにリンク調整を実行する。調整パターン出力回路56は、リンク調整時に、リンク調整パターンとして、例えば、00000000〜0Z、01010101〜1Z、00110011〜1Z等の固定パターンを送信する。
The link adjustment pattern is transmitted to the connection destination device via the transmission /
また、調整パターン出力回路56は、リンク切断判定回路62からリンクの切断の実行を意味する切断指示を入力した場合には、リンク切断メッセージを出力する。リンク切断メッセージは、送受信制御ユニット70を介して接続先装置に送信されるが、接続先装置において、クロスバ部28は、リンク切断メッセージの受信を検出すると、そのリンクを切断する。
The adjustment
また、ステップS4,S5でリンク調整が実行されているときに、クロスバ部18は、後続フレームデータのアウト・オブ・オーダトランザクションフィールドをチェックする(ステップS6)。
Further, when the link adjustment is performed in steps S4 and S5, the
図5は、この実施の形態で使用されるフレームデータの一例を示す。第1フレームにおいてOOTFがアウト・オブ・オーダトランザクションフィールドを示し、このフィールドが”0”の場合は順序保証を必要とするフレームデータであることを示し、”1”の場合は順序保証が不要である(後に発生したフレームデータを先に転送してもよい)ことを示す。フレームデータは、第1フレームからデータ長に応じた第nフレームまでを1つの命令(またはパケット)として定義される。 FIG. 5 shows an example of frame data used in this embodiment. In the first frame, OOTF indicates an out-of-order transaction field. When this field is “0”, it indicates that the frame data requires an order guarantee. When the field is “1”, no order guarantee is required. Indicates that there is a frame data (frame data generated later may be transferred first). The frame data is defined as one instruction (or packet) from the first frame to the nth frame corresponding to the data length.
クロスバ部18は、アウト・オブ・オーダトランザクションフィールドが”0”である場合には、順序保証が必要であるフレームデータであると判断し、追い越し禁止対象の命令になることから、リンク調整中(初期化、診断、再送処理中を含む)に信号線201を介するフレームデータの転送を抑止する。アウト・オブ・オーダトランザクションフィールドが”1”である場合には、命令の順序保証は不要であることから、クロスバ部18は、他の複数のリンクからデータ転送可能なリンクを判定して、OOTF=1のフレームデータの転送経路をデータ転送可能なリンクに切り替え、データ転送を継続する(ステップS7)。
When the out-of-order transaction field is “0”, the
ステップS2においてエラー検出回路58がエラーを検出した場合には、転送抑止回路63は、エラー検出されたデータを無効化する。すなわち、データ転送させないようにする。エラー検出回路58は、信号線206を介して接続先装置から受信したデータについてECCチェックまたはCRCチェック等を実施する。そして、チェックにもとづいてエラーを検出した場合には、エラー数を加算する加算器59と、エラー検出されたデータの転送を中断する転送抑止回路63と、エラー検出に起因してリンク調整を指示するリンク調整検出回路54とに、エラー検出の通知を示す”1”を出力する。リンク調整検出回路54は、エラー検出回路58からエラー検出した旨の通知を受けたら、ステップS4,S5の場合と同様に、リンクの初期化/調整を実行させる。その後、再送シーケンスが実行される。
If the
加算器59は、加算結果格納部60とエラー検出回路58の出力とを加算し、加算値を、加算結果格納部60に格納する。エラーサンプリング回路61は、信号線204を介してクロスバ部18が出力するセットパルスを入力すると、加算結果格納部60に格納されているエラー数をサンプリングしておく(ステップ9)。なお、クロスバ部18は、例えば、1時間毎に1回セットパルスを出力する。従って、エラーサンプリング回路61は、一定時間内に発生したエラー数を定期的にサンプリングすることになる。この一定時間は、例えば診断プロセッサ等によって任意に設定可能である。
The
リンク切断判定回路62は、エラーサンプリング回路61が出力する信号すなわち一定時間内に発生したエラー数を示す信号によって、一定時間内におけるエラー発生数があらかじめ規定されているエラー発生数を越えたと判断した場合に、リンク切断の決定を行って切断指示を出力する回路である。なお、診断プロセッサ等から、あらかじめ規定されているエラー発生数として、システム構成等にもとづいた任意の値を設定可能である。リンク切断判定回路62がリンク切断の決定を行った場合に、リンク切断判定回路62は、切断指示を、信号線202を介してクロスバ部18にも出力する。
The link
クロスバ部18は、切断指示に応じて、他のリンクを使用してデータ転送をするように切り替える。また、調整パターン出力回路56に切断指示が出力され、調整パターン出力回路56は、リンク切断メッセージを生成して出力する(ステップS11)。選択回路57は、リンク切断判定回路62から切断指示が出力されているときには、調整パータン出力回路56が出力するデータを選択する。従って、リンク切断メッセージは、選択回路57を介して送受信制御部70に出力され、さらに、信号線205を介して接続先装置に送信され、接続先装置においてもリンク切断処理がなされる(ステップS12)。
In response to the disconnection instruction, the
ステップS10で、リンク切断判定回路62が、エラー発生数があらかじめ規定されているエラー発生数を越えていないと判断した場合には、エラー発生数に応じて、タイマ設定値選択回路50が扱うタイマ設定値を調整するための信号を生成して(図3参照)、タイマ設定値選択回路50に出力する。以後、タイマ設定値選択回路50は、リンク切断判定回路62が出力した信号が示すタイマ設定値を選択する(ステップS13)。
In step S10, when the link
図3に示す例では、一定時間あたりのエラー発生数を0から6以上までに区分して、それぞれに対応してリンク調整間隔を選択するコード(図3ではSelect)が定義されている。すなわち、あらかじめ所定時間あたりのエラー発生数を複数段階に区分して、それぞれに対応したリンク調整の実行間隔が定義されている。そして。エラー発生数に応じたコードに対応したタイマ設定値を調整するための信号が、タイマ設定値選択回路50に出力される。エラー発生数に応じて適切なリンク調整間隔の時間がタイマカウンタ52にセットされることになる。すなわち、複数段階のうちで、集計したエラーの発生数が属する段階に対応した実行間隔でリンク調整が実行される。なお、それぞれのリンク制御部10〜17、20〜27において、それぞれ異なる区分を設定可能であるようにしてもよい。
In the example shown in FIG. 3, a code (Select in FIG. 3) that defines the number of error occurrences per fixed time from 0 to 6 or more and selects the link adjustment interval corresponding to each is defined. That is, the number of error occurrences per predetermined time is divided into a plurality of stages, and the link adjustment execution interval corresponding to each is defined. And then. A signal for adjusting the timer set value corresponding to the code corresponding to the number of error occurrences is output to the timer set
以上に説明したように、この実施の形態では、それぞれのリンク特性(エラー発生頻度)に応じてリンク調整間隔を自動的に設定する手段を設けたので、エラー発生頻度をもとにそれぞれのリンクに最適なリンク調整間隔を自動的に設定することができ、クロスバLSIのスループットを向上させることができる。 As described above, in this embodiment, since the means for automatically setting the link adjustment interval according to each link characteristic (error occurrence frequency) is provided, each link based on the error occurrence frequency is provided. The optimal link adjustment interval can be automatically set, and the throughput of the crossbar LSI can be improved.
また、データフレームにOOTF(アウト・オブ・オーダトランザクションフィールド)を設け、順序保証が不要なデータフレームを、リンク調整、初期化、再送処理中でも空きリンクを使用して転送可能な手段を設けたので、調整対象のリンク以外で使用可能なリンクがある場合に他の空きリンクを介してデータフレームが転送可能になり、高効率なデータ転送が可能になる。 In addition, OOTF (out-of-order transaction field) is provided in the data frame, and means for transferring data frames that do not require an order guarantee using a free link even during link adjustment, initialization, and retransmission processing is provided. When there is a link that can be used other than the link to be adjusted, the data frame can be transferred via another free link, and highly efficient data transfer is possible.
さらに、エラー発生頻度に応じて自動的にリンク切断およびリンク切り替えを行う手段を設けたので、エラー発生頻度に応じてリンクを切断し他のリンクを使用してフレームデータの転送を行うことができ、あるリンクの状態が悪いことに起因してシステム性能全体を低下させてしまうことを防止できる。また、従来、エラーが多発する場合には、オペレータに通知を出し、リンクの切断をオペレータが操作していたが、この実施の形態では、自動的にリンクの切断を行うことができる。 In addition, since a means for automatically disconnecting and switching the link according to the error occurrence frequency is provided, the link can be disconnected according to the error occurrence frequency and frame data can be transferred using other links. Therefore, it is possible to prevent the overall system performance from being deteriorated due to the bad state of a certain link. Conventionally, when errors frequently occur, the operator is notified and the link is cut by the operator. In this embodiment, the link can be automatically cut.
なお、上記の実施の形態では、装置1,2としてクロスバLSIを例示したが、本発明は、クロスバLSIに適用される場合に限られず、本発明を、データ転送機能を有するプロセッサ、情報処理装置、ルータ装置など、データ転送機能を有するLSIや装置などに広く適用することができる。
In the above embodiment, the crossbar LSI is exemplified as the
本発明は、ネットワークシステムにおけるリンク調整を制御する用途に適用できる。特に、複数のリンクのリンク特性が、構成素材、設置環境、使用状況に応じて異なる場合にも、好適に適用できる。 The present invention can be applied to an application for controlling link adjustment in a network system. In particular, the present invention can be suitably applied even when the link characteristics of a plurality of links differ depending on the constituent material, the installation environment, and the usage situation.
1,2 装置
100〜111 信号線
5,10〜17,20〜27 リンク制御部
18,28 クロスバ部
50 タイマ設定値選択回路
51 −1減算回路
52 タイマカウンタ
53 OR回路
54 リンク調整検出回路
55 リンク調整中フラグレジスタ
56 調整パターン出力回路
57 選択回路
58 エラー検出回路
59 加算器
60 加算結果格納部
61 エラーサンプリング回路
62 リンク切断判定回路
63 転送抑止回路
70 送受信制御ユニット
71 同期化回路
72 PLL調整/デスキュー回路
73 シリアルパラレル変換回路
DESCRIPTION OF
Claims (7)
通信ノードは、
他の通信ノードから受信したデータのエラーを検出するエラー検出手段と、
前記エラー検出手段が検出したエラーの発生数を集計するエラー集計手段と、
前記エラー集計手段が集計したエラーの発生数にもとづいて、リンク調整の実行間隔を決定するリンク調整間隔設定手段と、
リンク調整の実行時に、転送されていたフレームデータが、順序保証が不要であることを示すフィールドを含むフレームデータである場合には、そのフレームデータを他のリンクを介して転送するように転送経路を切り換える調整時リンク再設定制御回路と
を備えたことを特徴とするデータ転送システム。 In a data transfer system in which a plurality of links exist between a plurality of communication nodes and data is transferred between the communication nodes via the links, and the data transfer system performs link adjustment at a predetermined time.
The communication node is
An error detection means for detecting an error in data received from another communication node;
Error counting means for counting the number of occurrences of errors detected by the error detection means;
A link adjustment interval setting means for determining a link adjustment execution interval based on the number of errors generated by the error aggregation means;
When the frame data that has been transferred at the time of link adjustment is frame data that includes a field indicating that the order guarantee is not required, the transfer path is configured to transfer the frame data via another link. A data transfer system comprising: an adjustment link resetting control circuit for switching between the two.
請求項1記載のデータ転送システム。 The link adjustment interval setting means lengthens the link adjustment execution interval as the error occurrence number of the data transferred through the link in a predetermined time decreases, and shortens the link adjustment execution interval as the error occurrence amount increases. 1. The data transfer system according to 1.
請求項1または請求項2記載のデータ転送システム。 When the number of error occurrences of data transferred over a link for a certain fixed time exceeds the specified number, the data transfer on that link is stopped and the transfer path is set so that the data is transferred via another link. claim 1 or claim 2 data transfer system according with error during link reconfiguration control circuit for switching.
前記エラー検出手段が、他の通信ノードから受信したデータのエラーを検出し、
前記エラー集計手段が、所定時間毎に検出されたエラーの発生数を集計し、
前記リンク調整間隔設定手段が、集計されたエラーの発生数が少ないほどリンク調整の実行間隔を長くし、エラーの発生数が多いほどリンク調整の実行間隔を短くし、
前記調整時リンク再設定制御回路が、リンク調整の実行時に、転送されていたフレームデータが、順序保証が不要であることを示すフィールドを含むフレームデータである場合には、そのフレームデータを他のリンクを介して転送するように転送経路を切り換える
ことを特徴とするデータ転送方法。 An error detecting means for detecting an error; an error counting means for counting the number of error occurrences; a link adjustment interval setting means for determining a link adjustment execution interval; and an adjustment link reset control circuit for switching a transfer path. In a data transfer method in which a plurality of links exist between a plurality of communication nodes and data is transferred between the communication nodes via the link, and the data transfer method performs link adjustment at a predetermined time.
The error detection means detects an error in data received from another communication node;
It said error aggregation means aggregates the number of occurrences of errors detected every predetermined time,
Wherein the link adjusting interval setting means, as the number of occurrence of aggregated failure that a longer execution interval of the link adjustment, shortening the interval of the link adjustment greater the number of generated errors,
When the link reconfiguration control circuit at the time of adjustment performs frame adjustment, if the frame data transferred is frame data including a field indicating that the order guarantee is not required, the frame data is transferred to another frame data. A data transfer method comprising switching a transfer path so as to transfer via a link.
リンク調整間隔設定手段が、前記複数段階のうちで、集計されたエラーの発生数が属する段階に対応した実行間隔でリンク調整を実行する
請求項4記載のデータ転送方法。 Divide the number of error occurrences per predetermined time into multiple stages in advance, define the link adjustment execution interval corresponding to each,
Links adjusting interval setting means, said among the plurality of stages, aggregated data transfer method according to claim 4, wherein the number of occurrences of errors to perform a link adjustment execution interval corresponding to belong step.
他のクロスバLSIまたはプロセッサから受信したデータのエラーを検出するエラー検出手段と、
前記エラー検出手段が検出したエラーの発生数を集計するエラー集計手段と、
前記エラー集計手段が集計したエラーの発生数にもとづいて、リンク調整の実行間隔を決定するリンク調整間隔設定手段と、
リンク調整の実行時に、転送されていたフレームデータが、順序保証が不要であることを示すフィールドを含むフレームデータである場合には、そのフレームデータを他のリンクを介して転送するように転送経路を切り換える調整時リンク再設定制御回路と
を備えたことを特徴とするクロスバLSI。 In crossbar LSIs that transfer data to or from other crossbar LSIs or processors,
Error detection means for detecting errors in data received from other crossbar LSIs or processors;
Error counting means for counting the number of occurrences of errors detected by the error detection means;
A link adjustment interval setting means for determining a link adjustment execution interval based on the number of errors generated by the error aggregation means;
When the frame data that has been transferred at the time of link adjustment is frame data that includes a field indicating that the order guarantee is not required, the transfer path is configured to transfer the frame data via another link. A crossbar LSI, comprising: an adjustment link resetting control circuit for switching between.
請求項6記載のクロスバLSI。 When the number of error occurrences of data transferred over a link for a certain fixed time exceeds the specified number, the data transfer on that link is stopped and the transfer path is set so that the data is transferred via another link. The crossbar LSI according to claim 6, further comprising a switching error reset control circuit for switching.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004373618A JP4463097B2 (en) | 2004-12-24 | 2004-12-24 | Data transfer system, data transfer method, and crossbar LSI |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004373618A JP4463097B2 (en) | 2004-12-24 | 2004-12-24 | Data transfer system, data transfer method, and crossbar LSI |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006178866A JP2006178866A (en) | 2006-07-06 |
JP4463097B2 true JP4463097B2 (en) | 2010-05-12 |
Family
ID=36732920
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004373618A Expired - Fee Related JP4463097B2 (en) | 2004-12-24 | 2004-12-24 | Data transfer system, data transfer method, and crossbar LSI |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4463097B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010058693A1 (en) * | 2008-11-21 | 2010-05-27 | 日本電気株式会社 | Packet transmission device, inter-processor communication system, parallel processor system, and packet transmission method |
GB2474446A (en) | 2009-10-13 | 2011-04-20 | Advanced Risc Mach Ltd | Barrier requests to maintain transaction order in an interconnect with multiple paths |
JP5672932B2 (en) | 2010-10-13 | 2015-02-18 | 富士ゼロックス株式会社 | COMMUNICATION DEVICE, COMMUNICATION SYSTEM, AND PROGRAM |
JP5314056B2 (en) * | 2011-01-07 | 2013-10-16 | エヌイーシーコンピュータテクノ株式会社 | Data transfer control device, data transfer control method, and program therefor |
-
2004
- 2004-12-24 JP JP2004373618A patent/JP4463097B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2006178866A (en) | 2006-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7821919B2 (en) | Data processing apparatus and data processing method | |
JP4308297B2 (en) | Communication device and switch processing device | |
EP2131514A2 (en) | Data transferring apparatus | |
EP3166246A1 (en) | Method to detect and to handle failures in the communication in a computer network | |
JP2010187244A (en) | System for detecting/recovering token abnormality between terminal apparatuses | |
JP4463097B2 (en) | Data transfer system, data transfer method, and crossbar LSI | |
CA2434899C (en) | Fault tolerance | |
JP4849270B2 (en) | Computer equipment | |
JPS61200735A (en) | Fault processing method in digital transmission system | |
EP1988469B1 (en) | Error control device | |
CN212084134U (en) | Computing device and computing system | |
EP1894337A1 (en) | Methods and receives of data transmission using clock domains | |
WO2018078747A1 (en) | Transfer device and frame transfer method | |
US7290163B2 (en) | Method and circuit for deciding data transfer rate | |
CN101729349A (en) | RRPP-based detection method and device for connectivity of main ring access | |
JP6558167B2 (en) | Communication device and control method | |
JPS6232668B2 (en) | ||
JP2001297016A (en) | Instruction execution system | |
JP4204885B2 (en) | Data communication system | |
JP3027890B2 (en) | Parity error monitor circuit | |
JP4220430B2 (en) | Redundant network control system | |
JP3908637B2 (en) | Crossbar LSI, link adjustment method thereof, and crossbar network | |
US7133946B2 (en) | Mechanism to repeat signals across an unrelated link | |
JP4985156B2 (en) | Transfer device and frame endless relay method used therefor | |
JP2000259526A (en) | Serial interface circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20071119 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080829 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080916 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081113 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091117 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100107 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100202 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100216 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130226 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4463097 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130226 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140226 Year of fee payment: 4 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |