(57)【特許請求の範囲】
【請求項１】
データを送信するデータ送信装置と、前記データ送信装置から送信されるデータを受信するデータ受信装置とを有するデータ送受信システムにおいて、
前記データ受信装置は、
前記データ送信装置から受信したデータを保持するバッファ部と、
前記バッファ部が保持するデータの保持量の減少を示す減少情報を前記データ送信装置に送信するバッファ管理部を有し、
前記データ送信装置は、
データをそれぞれ生成する複数のデータ生成部と、
前記複数のデータ生成部の各々に対応して設けられ、対応するデータ生成部からのデータまたは他のデータ生成部からのデータとのいずれかを選択し、抑止情報を受信している期間中は前記対応するデータ生成部からのデータの選択を抑止する、直列に接続された複数の調停部と、
前記減少情報に基づき、前記バッファ部が、前記複数の調停部のいずれかにより選択される前記複数のデータ生成部のいずれかからの新たなデータを保持する余裕がないことを判定した場合に前記抑止情報を出力し、前記複数の調停部により選択される前記複数のデータ生成部からの複数のデータを保持可能な状態になったことを判定した場合、前記抑止情報の出力を停止する調停管理部を有し、
前記データ送信装置は、前記複数の調停部のうち、最終段の調停部が調停により選択したデータを前記データ受信装置に送信することを特徴とするデータ送受信システム。
【請求項２】
前記データ送信装置は、
前記バッファ部が保持するデータの保持量を示す保持量情報を記憶する保持量記憶部を有し、
前記調停管理部は、前記保持量記憶部が記憶する保持量情報を前記減少情報に基づいて減少させ、前記複数の調停部の各々が前記複数のデータ生成部のいずれかからのデータを選択したことに基づいて前記保持量記憶部が記憶する保持量情報を増加させ、前記バッファ部が新たなデータを保持する余裕がないことを前記保持量情報に基づいて判定した場合に前記抑止情報を出力し、前記複数の調停部の各々が選択する前記複数のデータ生成部からの複数のデータを前記バッファ部が保持可能なことを前記保持量情報に基づいて判定した場合に前記抑止情報の出力を停止することを特徴とする請求項１記載のデータ送受信システム。
【請求項３】
前記複数の調停部の各々は、前記複数のデータ生成部から受けるデータを選択した場合、選択したデータのサイズを示す増加情報を出力し、
前記調停管理部は、前記増加情報に基づいて前記保持量記憶部が記憶する保持量情報を増加させることを特徴とする請求項２記載のデータ送受信システム。
【請求項４】
前記調停管理部は、前記バッファ部が保持するデータの保持量が第１の閾値以上の場合に前記抑止情報を出力し、前記保持量が前記第１の閾値からデータのサイズと前記複数の調停部の数との積により表される値を減じた値以下になった場合に前記抑止情報の出力を停止することを特徴とする請求項３記載のデータ送受信システム。
【請求項５】
前記データ送信装置は、前記複数のデータ生成部を含む第１チャネルと、前記他のデータ生成部を含む第２チャネルとを含み、
前記第２チャネルは、前記他のデータ生成部が生成するデータを調停する調停部を有し、
前記第１チャネルの調停部と前記第２チャネルの調停部とは、直列に接続されることを
特徴とする請求項１ないし請求項４のいずれか１記載のデータ送受信システム。
【請求項６】
前記複数のデータ生成部が生成するデータは、ヘッダ部とデータ部とを含み、複数のサイクルで伝送されるパケットであり、
前記複数の調停部の各々は、パケットのヘッダ部を調停することでパケットを選択することを特徴とする請求項１ないし請求項５のいずれか１項記載のデータ送受信システム。
【請求項７】
データを保持するバッファ部を有するデータ受信装置にデータを送信し、前記バッファ部が保持するデータの保持量の減少を示す減少情報を前記データ受信装置から受信するデータ送信装置において、
データをそれぞれ生成する複数のデータ生成部と、
前記複数のデータ生成部の各々に対応して設けられ、対応するデータ生成部からのデータまたは他のデータ生成部からのデータとのいずれかを選択し、抑止情報を受信している期間中は前記対応するデータ生成部からのデータの選択を抑止する、直列に接続された複数の調停部と、
前記減少情報に基づき、前記バッファ部が、前記複数の調停部のいずれかにより選択される前記複数のデータ生成部のいずれかからの新たなデータを保持する余裕がないことを判定した場合に前記抑止情報を出力し、前記複数の調停部により選択される前記複数のデータ生成部からの複数のデータを保持可能な状態になったことを判定した場合、前記抑止情報の出力を停止する調停管理部を有し、
前記データ送信装置は、前記複数の調停部のうち、最終段の調停部が調停により選択したデータを前記データ受信装置に送信することを特徴とするデータ送信装置。
【請求項８】
データを送信するデータ送信装置と、前記データ送信装置から送信されるデータを保持するバッファ部を含むデータ受信装置とを有するデータ送受信システムの制御方法において、
前記データ受信装置が有するバッファ管理部が、前記バッファ部が保持するデータの保持量の減少を示す減少情報を前記データ送信装置に送信し、
前記データ送信装置が有する複数のデータ生成部が、データをそれぞれ生成し、
前記データ送信装置が有する、直列に接続された複数の調停部が、前記複数のデータ生成部の各々に対応して設けられ、対応するデータ生成部からのデータまたは他のデータ生成部からのデータとのいずれかを選択し、抑止情報を受信している期間中は前記対応するデータ生成部からのデータの選択を抑止し、
前記データ送信装置が有する調停管理部が、前記減少情報に基づき、前記バッファ部が、前記複数の調停部のいずれかにより選択される前記複数のデータ生成部のいずれかからの新たなデータを保持する余裕がないことを判定した場合に前記抑止情報を出力し、前記複数の調停部により選択される前記複数のデータ生成部からの複数のデータを保持可能な状態になったことを判定した場合、前記抑止情報の出力を停止し、
前記データ送信装置が、前記複数の調停部のうち、最終段の調停部が調停により選択したデータを前記データ受信装置に送信することを特徴とするデータ送受信システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ送受信システム、データ送信装置およびデータ送受信システムの制御方法に関する。
【背景技術】
【０００２】
データを送信する送信装置とデータを受信する受信装置を有するシステムにおいて、受信装置の受信バッファに格納されたデータ量に応じて、送信装置がデータの送信を許可または停止する手法が提案されている（例えば、特許文献１、２、３参照）。この種のシステムでは、データの送信を許可する受信バッファのデータ量は、データの送信を停止する受信バッファのデータ量より少なく設定される（例えば、特許文献４参照）。
【０００３】
さらに、パケットを送受信する複数のプロセッサが、複数のスイッチを介して相互に接続される場合、競合するパケットは、スイッチ内に設けられる調停回路により順次に選択される（例えば、特許文献５参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２００８／５０３９４号
【特許文献２】特開２００４−２３５７２８号公報
【特許文献３】特開２００７−６７６３４号公報
【特許文献４】特開２００２−２２５３５４号公報
【特許文献５】特開２０１２−４３３６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
送信装置内の複数のデータ生成部が生成するデータが、複数の調停部により順次に選択されるシステムでは、各調停部は、受信装置の受信バッファに格納されたデータ量が所定の閾値以上の場合、各データ生成部からのデータの調停を抑止する。そして、各調停部は、受信バッファに格納されたデータ量が所定の閾値未満になったとき、各データ生成部からのデータの調停を再開する。調停の抑止と再開が繰り返される場合、データ生成部のいずれかが生成するデータが、調停部により選択されない状態が続くおそれがある。
【０００６】
本件開示のデータ送受信システム、データ送信装置およびデータ送受信システムの制御方法は、複数のデータ生成部が生成するデータのいずれかが、調停部により選択されない状態が続くことを回避することを目的とする。
【課題を解決するための手段】
【０００７】
一つの観点によれば、データを送信するデータ送信装置と、データ送信装置から送信されるデータを受信するデータ受信装置とを有するデータ送受信システムにおいて、データ受信装置は、データ送信装置から受信したデータを保持するバッファ部と、バッファ部が保持するデータの保持量の減少を示す減少情報をデータ送信装置に送信するバッファ管理部を有し、データ送信装置は、データをそれぞれ生成する複数のデータ生成部と、前記複数のデータ生成部の各々に対応して設けられ、対応するデータ生成部からのデータまたは他のデータ生成部からのデータとのいずれかを選択し、抑止情報を受信している期間中は前記対応するデータ生成部からのデータの選択を抑止する、直列に接続された複数の調停部と、前記減少情報に基づき、前記バッファ部が、前記複数の調停部のいずれかにより選択される前記複数のデータ生成部のいずれかからの新たなデータを保持する余裕がないことを判定した場合に前記抑止情報を出力し、前記複数の調停部により選択される前記複数のデータ生成部からの複数のデータを保持可能な状態になったことを判定した場合、前記抑止情報の出力を停止する調停管理部を有し、前記データ送信装置は、前記複数の調停部のうち、最終段の調停部が調停により選択したデータを前記データ受信装置に送信する。
【０００８】
別の観点によれば、データを保持するバッファ部を有するデータ受信装置にデータを送信し、バッファ部が保持するデータの保持量の減少を示す減少情報をデータ受信装置から受信するデータ送信装置は、データをそれぞれ生成する複数のデータ生成部と、前記複数のデータ生成部の各々に対応して設けられ、対応するデータ生成部からのデータまたは他のデータ生成部からのデータとのいずれかを選択し、抑止情報を受信している期間中は前記対応するデータ生成部からのデータの選択を抑止する、直列に接続された複数の調停部と、前記減少情報に基づき、前記バッファ部が、前記複数の調停部のいずれかにより選択される前記複数のデータ生成部のいずれかからの新たなデータを保持する余裕がないことを判定した場合に前記抑止情報を出力し、前記複数の調停部により選択される前記複数のデータ生成部からの複数のデータを保持可能な状態になったことを判定した場合、前記抑止情報の出力を停止する調停管理部を有し、前記データ送信装置は、前記複数の調停部のうち、最終段の調停部が調停により選択したデータを前記データ受信装置に送信する。
【０００９】
さらなる別の観点によれば、データを送信するデータ送信装置と、データ送信装置から送信されるデータを保持するバッファ部を含むデータ受信装置とを有するデータ送受信システムの制御方法は、データ受信装置が有するバッファ管理部が、バッファ部が保持するデータの保持量の減少を示す減少情報をデータ送信装置に送信し、データ送信装置が有する複数のデータ生成部が、データをそれぞれ生成し、前記データ送信装置が有する、直列に接続された複数の調停部が、前記複数のデータ生成部の各々に対応して設けられ、対応するデータ生成部からのデータまたは他のデータ生成部からのデータとのいずれかを選択し、抑止情報を受信している期間中は前記対応するデータ生成部からのデータの選択を抑止し、前記データ送信装置が有する調停管理部が、前記減少情報に基づき、前記バッファ部が、前記複数の調停部のいずれかにより選択される前記複数のデータ生成部のいずれかからの新たなデータを保持する余裕がないことを判定した場合に前記抑止情報を出力し、前記複数の調停部により選択される前記複数のデータ生成部からの複数のデータを保持可能な状態になったことを判定した場合、前記抑止情報の出力を停止し、前記データ送信装置が、前記複数の調停部のうち、最終段の調停部が調停により選択したデータを前記データ受信装置に送信する。
【発明の効果】
【００１０】
本件開示のデータ送受信システム、データ送信装置およびデータ送受信システムの制御方法は、複数のデータ生成部が生成するデータのいずれかが、調停部により選択されない状態が続くことを回避することができる。
【図面の簡単な説明】
【００１１】
【図１】データ送受信システム、データ送信装置およびデータ送受信システムの制御方法の一実施形態を示す図である。
【図２】データ送受信システム、データ送信装置およびデータ送受信システムの制御方法の別の実施形態を示す図である。
【図３】図２に示す送信制御部と受信制御部との動作の例を示す図である。
【図４】図２に示す送信制御部と受信制御部との動作の別の例を示す図である。
【図５】図２に示すクレジット制御部の動作の例を示す図である。
【図６】図２に示す送信制御部がパケットを送信する例を示す図である。
【図７】図６に示す動作の続きの例を示す図である。
【図８】図７に示す動作の続きの例を示す図である。
【図９】他のデータ送受信システムにおけるクレジット制御部の動作の例を示す図である。
【図１０】図９に示すクレジット制御部を有する送信制御部がパケットを送信する例を示す図である。
【図１１】図１０に示す動作の続きの例を示す図である。
【発明を実施するための形態】
【００１２】
以下、図面を用いて実施形態を説明する。
【００１３】
図１は、データ送受信システム、データ送信装置およびデータ送受信システムの制御方法の一実施形態を示す。図１に示すデータ送受信システムＳＹＳ０は、データＤＴを送信するデータ送信装置ＴＲＳと、データ送信装置ＴＲＳから送信されるデータＤＴを受信するデータ受信装置ＲＳＶとを有する。
【００１４】
データ受信装置ＲＳＶは、データ送信装置ＴＲＳから受信したデータＤＴを保持するバッファ部ＢＵＦを有する。バッファ部ＢＵＦは、データ生成部ＤＧＥＮ１、ＤＧＥＮ２がそれぞれ生成するデータを保持する。また、データ受信装置ＲＳＶは、バッファ部ＢＵＦが保持するデータＤＴの保持量の減少を示す減少情報ＤＥＣをデータ送信装置ＴＲＳに送信するバッファ管理部ＲＣＮＴを有する。
【００１５】
データ送信装置ＴＲＳは、データ生成部ＤＧＥＮ１、ＤＧＥＮ２、調停部ＡＲＢおよび調停管理部ＡＲＢＣＮＴを有する。各データ生成部ＤＧＥＮ１、ＤＧＥＮ２は、データＤＴ１、ＤＴ２をそれぞれ生成し、生成したデータＤＴ１、ＤＴ２を調停部ＡＲＢに出力する。
【００１６】
調停部ＡＲＢは、抑止情報ＳＴＯＰを受信していない期間中、データ生成部ＤＧＥＮ１、ＤＧＥＮ２からのデータＤＴ１、ＤＴ２またはデータ生成部ＤＧＥＮ０からのデータＤＴ０のいずれかを選択し、選択したデータＤＴをデータ受信装置ＲＳＶに出力する。調停部ＡＲＢは、抑止情報ＳＴＯＰを受信している期間、データ生成部ＤＧＥＮ１、ＤＧＥＮ２からのデータＤＴ１、ＤＴ２の選択を抑止し、データ生成部ＤＧＥＮ０からのデータＤＴ０を選択し、選択したデータＤＴをデータ受信装置ＲＳＶに出力する。なお、図１では、データ生成部ＤＧＥＮ０は、データ送信装置ＴＲＳの外部に設けられるが、データ送信装置ＴＲＳの内部に設けられてもよい。
【００１７】
調停管理部ＡＲＢＣＮＴは、減少情報ＤＥＣに基づき、バッファ部ＢＵＦが新たなデータＤＴを保持する余裕がない状態から、調停部ＡＲＢにより選択されるデータ生成部ＤＧＥＮ１、ＤＧＥＮ２からの複数のデータを保持可能な状態になったことを判定する。そして、調停管理部ＡＲＢＣＮＴは、データ生成部ＤＧＥＮ１、ＤＧＥＮ２からの複数のデータＤＴ１、ＤＴ２を保持可能な状態になった場合、抑止情報ＳＴＯＰの出力を停止する。抑止情報ＳＴＯＰの出力の停止により、調停部ＡＲＢは、データ生成部ＤＧＥＮ１、ＤＧＥＮ２からのデータＤＴ１、ＤＴ２とデータ生成部ＤＧＥＮ０からのデータＤＴ０とを調停する動作を再開する。
【００１８】
バッファ部ＢＵＦが複数のデータＤＴ１、ＤＴ２を保持可能な状態になったことに基づいて、抑止情報ＳＴＯＰの出力を解除することで、データＤＴ１、ＤＴ２のいずれかが調停部ＡＲＢにより選択されない状態が続くことを抑止することができる。これに対して、バッファ部ＢＵＦが１つのデータＤＴ１（またはＤＴ２）を保持可能な状態になったことに基づいて、抑止情報ＳＴＯＰの出力を解除する場合、以下の問題が発生する。すなわち、調停部ＡＲＢがデータ生成部ＤＧＥＮ１からのデータＤＴ１を順次に選択し、抑止情報ＳＴＯＰの出力と出力の停止とが繰り返される場合、データＤＴ２が選択されない状態が続くおそれがある。これにより、データ生成部ＤＧＥＮ２が生成するデータがデータ受信装置ＲＳＶに送信されない、いわゆるライブロック状態が発生する。
【００１９】
図２は、データ送受信システム、データ送信装置およびデータ送受信システムの制御方法の別の実施形態を示す。図２に示すデータ送受信システムＳＹＳは、複数のＣＰＵ（ＣＰＵ０、ＣＰＵ１；Central Processing Unit）を有する。ＣＰＵ０、ＣＰＵ１は、互いに同一または同様の構成を有し、クレジット制御部ＣＲＣＮＴは、減少情報ＤＥＣ３に基づき、パケットＰＫＴを送信する機能と、パケットＰＫＴを受信する機能を有する。なお、ＣＰＵ０、ＣＰＵ１は、互いに異なる構成を有してもよい。パケットＰＫＴは、ＣＰＵ０、ＣＰＵ１間で送受信されるデータの一例である。各ＣＰＵが他の複数のＣＰＵとの間でパケットＰＫＴを送受信する場合、各ＣＰＵは、ＣＰＵ間をつなぐネットワークであるインタコネクトを介して互いに接続されてもよい。ＣＰＵ０は、データを送信するデータ送信装置の一例であり、ＣＰＵ１は、データ送信装置から送信されるデータを受信するデータ受信装置の一例である。
【００２０】
図２では、説明を分かりやすくするために、パケットＰＫＴを送信する主要な要素がＣＰＵ０に記載され、パケットＰＫＴを受信する主要な要素がＣＰＵ１に記載される。パケットＰＫＴの伝送は、ＣＰＵ１からＣＰＵ０へも可能であり、ＣＰＵ１は、図２に示すＣＰＵ０の要素を有し、ＣＰＵ０は、図２に示すＣＰＵ１の要素を有する。
【００２１】
図２では、ＣＰＵ０とＣＰＵ１とが、パケットＰＫＴの伝送線とリリース情報ＲＬＳの伝送線とで直接接続されているが、ＣＰＵ０、ＣＰＵ１が共通の基板に搭載される場合、ＣＰＵ０とＣＰＵ１とは、基板上の配線を介して互いに接続される。また、ＣＰＵ０、ＣＰＵ１が、互いに異なる基板に搭載される場合、ＣＰＵ０とＣＰＵ１とは、基板上の配線および基板間を接続するケーブル等を介して互いに接続される。
【００２２】
ＣＰＵ０は、複数の仮想チャネルＶＣ（ＶＣ０、ＶＣ１、ＶＣ２、ＶＣ３）と、各仮想チャネルＶＣに対応する送信制御部ＴＣＮＴ（ＴＣＮＴ０、ＴＣＮＴ１、ＴＣＮＴ２、ＴＣＮＴ３）を有する。複数の仮想チャネルＶＣは、要求パケットおよび応答パケットなど、パケットＰＫＴの種別に対応して設けられてもよく、ＣＰＵ０が有する機能ブロックに対応して設けられてもよい。仮想チャネルＶＣの数は、２以上であればよく、４つに限定されない。
【００２３】
仮想チャネルＶＣ０−ＶＣ３は、互いに同一または同様の構成を有するため、図２では、仮想チャネルＶＣ３の構成が示され、仮想チャネルＶＣ０−ＶＣ２の構成は省略される。同様に、送信制御部ＴＣＮＴ０−ＴＣＮＴ３は、互いに同一または同様の構成を有するため、図２では、送信制御部ＴＣＮＴ３の構成が示され、送信制御部ＴＣＮＴ０−ＴＣＮＴ２の構成は省略される。以下で説明する仮想チャネルＶＣ３と送信制御部ＴＣＮＴ３とによる動作は、仮想チャネルＶＣ０と送信制御部ＴＣＮＴ０、仮想チャネルＶＣ１と送信制御部ＴＣＮＴ１、仮想チャネルＶＣ２と送信制御部ＴＣＮＴ２とによっても実現される。そして、仮想チャネルＶＣ０と送信制御部ＴＣＮＴ０、仮想チャネルＶＣ１と送信制御部ＴＣＮＴ１、仮想チャネルＶＣ２と送信制御部ＴＣＮＴ２とは、以下で説明する仮想チャネルＶＣ３と送信制御部ＴＣＮＴ３による効果と、同様の効果を得ることができる。
【００２４】
ＣＰＵ１は、ＣＰＵ０からのパケットＰＫＴを受信し、受信したパケットＰＫＴを処理する受信制御部ＲＣＮＴを有する。受信制御部ＲＣＮＴは、仮想チャネルＶＣ０、ＶＣ１、ＶＣ２、ＶＣ３のそれぞれに対応するバッファ部ＢＵＦ０、ＢＵＦ１、ＢＵＦ２、ＢＵＦ３を含む受信バッファＢＵＦを有する。なお、受信バッファＢＵＦは、受信制御部ＲＣＮＴの外部に配置されてもよい。
【００２５】
受信制御部ＲＣＮＴは、ＣＰＵ０から受信したパケットＰＫＴを、仮想チャネルＶＣ毎にバッファ部ＢＵＦ０−ＢＵＦ３に格納する。図２に示す例では、バッファ部ＢＵＦ０−ＢＵＦ３の記憶容量は、矩形の大きさで示されており、互いに異なる。しかし、バッファ部ＢＵＦ０−ＢＵＦ３の記憶容量は、互いに同じでもよい。各バッファＢＵＦ０−ＢＵＦ３が保持するパケットＰＫＴの容量は、クレジットとも称され、ＣＰＵ０は、各バッファＢＵＦ０−ＢＵＦ３が保持するパケットＰＫＴのクレジット量が、上限値を超えないように、パケットＰＫＴをＣＰＵ１に送信する。
【００２６】
仮想チャネルＶＣ０から出力されたパケットＰＫＴは、バッファ部ＢＵＦ０に保持され、仮想チャネルＶＣ１から出力されたパケットＰＫＴは、バッファ部ＢＵＦ１に保持される。仮想チャネルＶＣ２から出力されたパケットＰＫＴは、バッファ部ＢＵＦ２に保持され、仮想チャネルＶＣ３から出力されたパケットＰＫＴは、バッファ部ＢＵＦ３に保持される。各バッファ部ＢＵＦ０−ＢＵＦ３は、ＦＩＦＯ（First-In First-Out）バッファでもよく、他のバッファでもよい。パケットＰＫＴを保持している容量であるバッファＢＵＦの保持量は、ＣＰＵ０からのパケットＰＫＴの受信により増加する。また、各バッファ部ＢＵＦ０−ＢＵＦ３の保持量は、各バッファ部ＢＵＦ０−ＢＵＦ３の出力に接続された回路へのパケットＰＫＴの転送により減少する。
【００２７】
受信制御部ＲＣＮＴは、各バッファ部ＢＵＦ０−ＢＵＦ３に格納したパケットＰＫＴを後段の回路に転送した後、転送したパケットＰＫＴを各バッファ部ＢＵＦ０−ＢＵＦ３から削除する。なお、バッファ部ＢＵＦ０−ＢＵＦ３からのパケットＰＫＴの削除は、バッファ部ＢＵＦに接続された回路により実行されてもよい。受信制御部ＲＣＮＴは、削除したパケットＰＫＴのサイズ（削除したクレジット量）を示すリリース情報ＲＬＳをＣＰＵ０に送信する。リリース情報ＲＬＳは、バッファ部ＢＵＦ０−ＢＵＦ３毎に削除したパケットＰＫＴのサイズを示す減少情報ＤＥＣ（ＤＥＣ０、ＤＥＣ１、ＤＥＣ２、ＤＥＣ３）を含む。受信制御部ＲＣＮＴは、バッファ部ＢＵＦ０−ＢＵＦ３から削除されるパケットＰＫＴのサイズを示す減少情報ＤＥＣをＣＰＵ０に送信するバッファ管理部の一例である。
【００２８】
減少情報ＤＥＣ０は、仮想チャネルＶＣ０に対応するバッファ部ＢＵＦ０に保持されたパケットＰＫＴの減少量を示し、減少情報ＤＥＣ１は、仮想チャネルＶＣ１に対応するバッファ部ＢＵＦ１に保持されたパケットＰＫＴの減少量を示す。減少情報ＤＥＣ２は、仮想チャネルＶＣ２に対応するバッファ部ＢＵＦ２に保持されたパケットＰＫＴの減少量を示し、減少情報ＤＥＣ３は、仮想チャネルＶＣ３に対応するバッファ部ＢＵＦ３に保持されたパケットＰＫＴの減少量を示す。
【００２９】
ＣＰＵ０において、仮想チャネルＶＣ３は、ＣＰＵ１に送信するパケットＰＫＴを生成し、生成したパケットＰＫＴを調停部ＡＲＢに出力する複数のパケット送信部ＰＴ（ＰＴ１、ＰＴ２、ＰＴ３、ＰＴ４、ＰＴ５、ＰＴ６、ＰＴ７、ＰＴ８、ＰＴ９）を有する。パケット送信部ＰＴは、パケットＰＫＴを生成するデータ生成部の一例である。送信制御部ＴＣＮＴ３は、複数の調停部ＡＲＢ（ＡＲＢ１、ＡＲＢ２、ＡＲＢ３）、各調停部ＡＲＢの出力に接続されるフリップフロップＦＦ（ＦＦ１、ＦＦ２、ＦＦ３）およびクレジット制御部ＣＲＣＮＴを有する。仮想チャネルＶＣ３が有するパケット送信部ＰＴの数は、調停部ＡＲＢ毎に１以上あればよく、９個に限定されない。
【００３０】
送信制御部ＴＣＮＴ０−ＴＣＮＴ３に配置される調停部ＡＲＢは、フリップフロップＦＦを介して直列に接続される。送信制御部ＴＣＮＴ０の調停部ＡＲＢは、仮想チャネルＶＣ０から出力されるパケットＰＫＴを調停し、調停により選択したパケットＰＫＴを送信制御部ＴＣＮＴ１に出力する。送信制御部ＴＣＮＴ１の調停部ＡＲＢは、仮想チャネルＶＣ１から出力されるパケットＰＫＴと、送信制御部ＴＣＮＴ０から出力されるパケットＰＫＴとを調停し、調停により選択したパケットＰＫＴを送信制御部ＴＣＮＴ２に出力する。
【００３１】
送信制御部ＴＣＮＴ２の調停部ＡＲＢは、仮想チャネルＶＣ２から出力されるパケットＰＫＴと、送信制御部ＴＣＮＴ１から出力されるパケットＰＫＴとを調停し、調停により選択したパケットＰＫＴを送信制御部ＴＣＮＴ３に出力する。送信制御部ＴＣＮＴ３の調停部ＡＲＢ（ＡＲＢ１−ＡＲＢ３）は、仮想チャネルＶＣ３から出力されるパケットＰＫＴと、送信制御部ＴＣＮＴ２から出力されるパケットＰＫＴとを調停し、調停により選択したパケットＰＫＴをＣＰＵ１に送信する。
【００３２】
このように、仮想チャネルＶＣ０−ＶＣ３が生成したパケットＰＫＴは、各送信制御部ＴＣＮＴ０−ＴＣＮＴ３の調停部ＡＲＢにより順次に調停され、最終段である調停部ＡＲＢ３が選択したパケットＰＫＴが、伝送路を介してＣＰＵ１に送信される。これにより、１つの伝送路を用いて複数の仮想チャネルＶＣ０−ＶＣ３が生成するパケットＰＫＴをＣＰＵ０に送信することができる。換言すれば、複数の仮想チャネルＶＣ０−ＶＣ３をＣＰＵ０内に搭載することができる。
【００３３】
送信制御部ＴＣＮＴ３において、各調停部ＡＲＢ１−ＡＲＢ３は、クレジット制御部ＣＲＣＮＴからビジー情報ＢＵＳＹを受けている期間、仮想チャネルＶＣ３からのパケットＰＫＴの選択を抑止する。すなわち、各調停部ＡＲＢ１−ＡＲＢ３は、ビジー情報ＢＵＳＹを受けている期間、仮想チャネルＶＣ３からのパケットＰＫＴを調停に参加させず、送信制御部ＴＣＮＴ０−ＴＣＮＴ２からのパケットＰＫＴを選択する。調停動作の抑止により、バッファ部ＢＵＦ３の保持量がオーバーフローすることを抑止することができる。また、調停動作の抑止により、図６−図８に示すように、パケット送信部ＰＴ１−ＰＴ９が生成するパケットＰＫＴのいずれかが、調停部ＡＲＢ１−ＡＲＢ３により選択されない状態が続くことを回避することができる。ビジー情報ＢＵＳＹは、各調停部ＡＲＢ１−ＡＲＢ３による仮想チャネルＶＣ３からのパケットＰＫＴの選択を抑止する抑止情報の一例である。
【００３４】
各調停部ＡＲＢ１−ＡＲＢ３は、クレジット制御部ＣＲＣＮＴからビジー情報ＢＵＳＹを受けていない期間、仮想チャネルＶＣ３からのパケットＰＫＴと、送信制御部ＴＣＮＴ０−ＴＣＮＴ２からのパケットＰＫＴとを調停する調停動作を実行する。クレジット制御部ＣＲＣＮＴは、ビジー情報ＢＵＳＹを１ビットのビジー信号として各調停部ＡＲＢ１−ＡＲＢ３に出力してもよい。この場合、各調停部ＡＲＢ１−ＡＲＢ３は、ビジー信号が第１の論理の場合に調停動作を実行し、ビジー信号が第１の論理と反対の第２の論理の場合に仮想チャネルＶＣ３からのパケットＰＫＴの選択を抑止する。
【００３５】
調停部ＡＲＢ１は、ビジー情報ＢＵＳＹを受けていない場合、パケット送信部ＰＴ１、ＰＴ２、ＰＴ３からのパケットＰＫＴと、前段の調停部ＡＲＢ（送信制御部ＴＣＮＴ２の最終段の調停部ＡＲＢ）で選択されたパケットＰＫＴとを調停する。そして、調停部ＡＲＢ１は、調停により選択したパケットＰＫＴに含まれるヘッダ部をフリップフロップＦＦ１に出力する。また、調停部ＡＲＢ１は、調停により選択したパケットＰＫＴがパケット送信部ＰＴ１、ＰＴ２、ＰＴ３からのパケットＰＫＴである場合、パケットＰＫＴのサイズ（クレジット）を示す増加情報ＩＮＣ１をクレジット制御部ＣＲＣＮＴに出力する。調停部ＡＲＢ１は、ビジー情報ＢＵＳＹを受けている間、パケット送信部ＰＴ１、ＰＴ２、ＰＴ３からのパケットＰＫＴの調停動作を停止する。
【００３６】
パケットＰＫＴは、ヘッダ部、データ部およびエンド部を含む。調停部ＡＲＢ１は、フリップフロップＦＦ１が保持したパケットＰＫＴを次段以降の調停部ＡＲＢ２、ＡＲＢ３が選択した場合、ヘッダ部に続くデータ部およびエンド部をフリップフロップＦＦ１に順次に出力する。
【００３７】
調停部ＡＲＢ２は、ビジー情報ＢＵＳＹを受けていない場合、パケット送信部ＰＴ４、ＰＴ５、ＰＴ６からのパケットＰＫＴと、前段の調停部ＡＲＢ１で選択されたパケットＰＫＴとを調停する。調停部ＡＲＢ２は、調停により選択したパケットＰＫＴがパケット送信部ＰＴ４、ＰＴ５、ＰＴ６からのパケットＰＫＴである場合、パケットＰＫＴのサイズ（クレジット）を示す増加情報ＩＮＣ２をクレジット制御部ＣＲＣＮＴに出力する。調停部ＡＲＢ２は、ビジー情報ＢＵＳＹを受けている間、パケット送信部ＰＴ４、ＰＴ５、ＰＴ６からのパケットＰＫＴの調停動作を停止する。調停部ＡＲＢ２のその他の機能は、調停部ＡＲＢ１と同様である。
【００３８】
調停部ＡＲＢ３は、ビジー情報ＢＵＳＹを受けていない場合、パケット送信部ＰＴ７、ＰＴ８、ＰＴ９からのパケットＰＫＴと、前段の調停部ＡＲＢ２で選択されたパケットＰＫＴとを調停する。調停部ＡＲＢ３での調停により選択されたパケットＰＫＴは、フリップフロップＦＦ３を介してＣＰＵ１に送信される。調停部ＡＲＢ２は、調停により選択したパケットＰＫＴがパケット送信部ＰＴ７、ＰＴ８、ＰＴ９からのパケットＰＫＴである場合、パケットＰＫＴのサイズ（クレジット）を示す増加情報ＩＮＣ３をクレジット制御部ＣＲＣＮＴに出力する。調停部ＡＲＢ３は、ビジー情報ＢＵＳＹを受けている間、パケット送信部ＰＴ７、ＰＴ８、ＰＴ９からのパケットＰＫＴの調停動作を停止する。調停部ＡＲＢ３のその他の機能は、調停部ＡＲＢ０と同様である。
【００３９】
クレジット制御部ＣＲＣＮＴは、バッファ部ＢＵＦ３が保持するパケットＰＫＴの保持量を示すカウンタＣＯＵＮＴを有する。カウンタＣＯＵＮＴのカウンタ値は、増加情報ＩＮＣ１−ＩＮＣ３に基づいて、増加情報ＩＮＣ１−ＩＮＣ３が示すパケットＰＫＴのサイズ分増加し、減少情報ＤＥＣ３に基づいて、減少情報ＤＥＣ３が示すパケットＰＫＴのサイズ分減少する。図２において、カウンタＣＯＵＮＴ内の網掛けの領域は、カウンタ値を視覚的に表している。図２のカウンタＣＯＵＮＴは、バッファ部ＢＵＦ３に保持されたパケットＰＫＴの保持量が、バッファ部ＢＵＦ３の記憶容量の７０％であることを示している。なお、クレジット制御部ＣＲＣＮＴは、カウンタＣＯＵＮＴの代わりに、バッファ部ＢＵＦ３が保持しているパケットＰＫＴの保持量が格納されるレジスタを有してよい。
【００４０】
クレジット制御部ＣＲＣＮＴは、バッファ部ＢＵＦに新たなデータを保持する余裕がない場合、ビジー情報ＢＵＳＹを出力する調停管理部の一例である。また、クレジット制御部ＣＲＣＮＴは、調停部ＡＲＢ１−ＡＲＢ３により選択されるパケット送信部ＰＴ１−ＰＴ９からの複数のパケットＰＫＴを保持可能な状態になった場合、ビジー情報ＢＵＳＹの出力を停止する調停管理部の一例である。カウンタＣＯＵＮＴおよびレジスタは、バッファ部ＢＵＦ３が保持するパケットＰＫＴの保持量を示す保持量情報を記憶する保持量記憶部の一例である。カウンタＣＯＵＮＴのカウンタ値およびレジスタに設定される値は、バッファ部ＢＵＦ３が保持するデータの保持量を示す保持量情報の一例である。
【００４１】
クレジット制御部ＣＲＣＮＴは、カウンタＣＯＵＮＴのカウンタ値が上限値（図３に示すＣＭＡＸ）になった場合、ビジー情報ＢＵＳＹを出力する。すなわち、クレジット制御部ＣＲＣＮＴは、バッファ部ＢＵＦ３が新たなパケットＰＫＴを保持する余裕がないことをカウンタ値が示す場合、ビジー情報ＢＵＳＹを出力する。
【００４２】
一方、クレジット制御部ＣＲＣＮＴは、式（１）を満足する場合、ビジー情報ＢＵＳＹの出力を停止する。すなわち、クレジット制御部ＣＲＣＮＴは、調停部ＡＲＢ１−ＡＲＢ３のそれぞれが選択する３つのパケットＰＫＴをバッファ部ＢＵＦ３が保持可能なことをカウンタ値が示す場合、ビジー情報ＢＵＳＹの出力を停止する。
ＣＶ≦ＣＭＡＸ−（ＰＭＡＸ×ｎ）  ……  （１）
式（１）において、符号ＣＶは、カウンタＣＯＵＮＴのカウンタ値を示し、符号ＣＭＡＸは、カウンタＣＯＵＮＴの上限値（バッファ部ＢＵＦ３が保持可能な最大のクレジット量）を示す。符号ＰＭＡＸは、パケットＰＫＴの最大長を示し、符号ｎは、調停部ＡＲＢ１−ＡＲＢ３の数（図２では、ｎ＝３）を示す。カウンタＣＯＵＮＴの上限値ＣＭＡＸは、ビジー情報ＢＵＳＹの出力を決定する第１の閾値の一例である。なお、パケットＰＫＴの最大長は、図６等で説明するように、パケットＰＫＴの転送サイクルを示す。
【００４３】
式（１）に示すように、クレジット制御部ＣＲＣＮＴは、カウンタＣＯＵＮＴのカウンタ値ＣＶが、上限値ＣＭＡＸからパケットＰＫＴの最大長ＰＭＡＸと調停部ＡＲＢの数との積を減じた値以下になった場合、ビジー情報ＢＵＳＹの出力を停止する。このように、ビジー情報ＢＵＳＹが出力されるカウンタ値と、ビジー情報ＢＵＳＹの出力が停止されるカウンタ値とは、互いに異なり、カウンタ値の差は、調停部ＡＲＢの数とパケット長に応じて決まる。
【００４４】
図３は、図２に示す送信制御部ＴＣＮＴ３と受信制御部ＲＣＮＴとの動作の例を示す。カウンタＣＯＵＮＴの網掛けの領域は、増加情報ＩＮＣ１、ＩＮＣ２、ＩＮＣ３および減少情報ＤＥＣ３に基づいて増減するカウンタ値を視覚的に示す。バッファ部ＢＵＦ３の網掛けの領域は、送信制御部ＴＣＮＴ３から受信したパケットＰＫＴが保持されていることを視覚的に示す。図３において、ビジー情報ＢＵＳＹを示す破線は、クレジット制御部ＣＲＣＮＴがビジー情報ＢＵＳＹを出力せず、調停部ＡＲＢ１−ＡＲＢ３がパケット送信部ＰＴ１−ＰＴ９からのパケットＰＫＴの調停動作を実行可能な期間を示す。ビジー情報ＢＵＳＹを示す白抜きの矢印は、クレジット制御部ＣＲＣＮＴがビジー情報ＢＵＳＹを出力し、調停部ＡＲＢ１−ＡＲＢ３がパケット送信部ＰＴ１−ＰＴ９からのパケットＰＫＴの調停動作を停止する期間を示す。
【００４５】
図３は、ＣＰＵ０からＣＰＵ１に送信されるパケットＰＫＴのサイズ（すなわち、パケット長）が互いに等しい場合の動作を示す。バッファ部ＢＵＦ３は、サイズが互いに等しいパケットＰＫＴを５つまで保持可能であるとし、カウンタＣＯＵＮＴは、バッファ部ＢＵＦ３が保持可能なパケットＰＫＴの総量に対応する値をカウント可能であるとする。なお、パケットＰＫＴのサイズが可変である場合の例は、図４に示される。
【００４６】
まず、バッファ部ＢＵＦ３にパケットＰＫＴが２つ保持された状態で、調停部ＡＲＢ１は、パケット送信部ＰＴ１−ＰＴ３のいずれかから出力されたパケットＰＫＴのヘッダ部を調停により選択する。調停部ＡＲＢ１は、増加情報ＩＮＣ１をクレジット制御部ＣＲＣＮＴに出力し、選択したヘッダ部をフリップフロップＦＦ１に保持させる（図３（ａ））。カウンタＣＯＵＮＴのカウンタ値は、増加情報ＩＮＣ１に基づいて、パケットＰＫＴのサイズ分増加される（図３（ｂ））。
【００４７】
この後、調停部ＡＲＢ１が選択したパケットＰＫＴは、調停部ＡＲＢ２、ＡＲＢ３により順次に調停され、ＣＰＵ１の受信制御部ＲＣＮＴに送信される（図３（ｃ））。受信制御部ＲＣＮＴは、受信したパケットＰＫＴを、仮想チャネルＶＣ３に対応するバッファ部ＢＵＦ３に保持する（図３（ｄ））。このように、カウンタＣＯＵＮＴのカウンタ値は、バッファ部ＢＵＦ３に保持されるパケットＰＫＴの保持量が増加する前に、増加情報ＩＮＣ１（または、ＩＮＣ２、ＩＮＣ３）に基づいて増加する。
【００４８】
次に、調停部ＡＲＢ２は、パケット送信部ＰＴ４−ＰＴ６のいずれかから出力されたパケットＰＫＴのヘッダ部を調停により選択し、増加情報ＩＮＣ２をクレジット制御部ＣＲＣＮＴに出力する（図３（ｅ））。調停部ＡＲＢ２が選択したヘッダ部は、フリップフロップＦＦ２に保持される。カウンタＣＯＵＮＴのカウンタ値は、増加情報ＩＮＣ２に基づいて、パケットＰＫＴのサイズ分増加される（図３（ｆ））。
【００４９】
調停部ＡＲＢ２が選択したパケットＰＫＴは、調停部ＡＲＢ３により調停され、ＣＰＵ１の受信制御部ＲＣＮＴに送信される（図３（ｇ））。受信制御部ＲＣＮＴは、受信したパケットＰＫＴを、仮想チャネルＶＣ３に対応するバッファ部ＢＵＦ３に保持する（図３（ｈ））。
【００５０】
この後、バッファ部ＢＵＦ３に保持されたパケットＰＫＴは、受信制御部ＲＣＮＴによるパケットＰＫＴの受信処理を実行するために他の回路に転送され、転送されたパケットＰＫＴは、バッファ部ＢＵＦ３から削除される（図３（ｉ））。受信制御部ＲＣＮＴは、バッファ部ＢＵＦ３に保持するパケットＰＫＴの保持量が減少したことに基づき、減少したパケットＰＫＴの量を示す減少情報ＤＥＣ３を含むリリース情報ＲＬＳをＣＰＵ０に送信する（図３（ｊ））。
【００５１】
クレジット制御部ＣＲＣＮＴは、減少情報ＤＥＣ３に基づき、バッファ部ＢＵＦ３から削除されたパケットＰＫＴのサイズ分、カウンタＣＯＵＮＴのカウンタ値を減少させる（図３（ｋ））。このように、カウンタＣＯＵＮＴは、減少情報ＤＥＣ３に基づいて、バッファ部ＢＵＦ３の保持量の減少に追従してカウンタ値を減少する。
【００５２】
この後、上述と同様に、調停部ＡＲＢ２、ＡＲＢ３のそれぞれは、仮想チャネルＶＣ３からのパケットＰＫＴを順次に調停により選択し、増加情報ＩＮＣ２、ＩＮＣ３をクレジット制御部ＣＲＣＮＴに順次に出力する（図３（ｌ）、（ｍ））。カウンタＣＯＵＮＴのカウンタ値は、増加情報ＩＮＣ２、ＩＮＣ３に基づいて順次に増加する（図３（ｎ）、（ｏ））。増加情報ＩＮＣ３に基づくカウンタＣＯＵＮＴのカウントアップにより、カウンタ値は上限値ＣＭＡＸになる。
【００５３】
カウンタＣＯＵＮＴの上限値ＣＭＡＸは、仮想チャネルＶＣ３からのパケットＰＫＴを受信制御部ＲＣＮＴが受信することにより、バッファ部ＢＵＦ３が満杯になることを示す。換言すれば、カウンタＣＯＵＮＴの上限値ＣＭＡＸは、調停部ＡＲＢ１−ＡＲＢ３のいずれかが、仮想チャネルＶＣ３からのパケットＰＫＴをさらに選択し、ＣＰＵ１に送信する場合、バッファ部ＢＵＦ３がオーバーフローすることを示す。このため、クレジット制御部ＣＲＣＮＴは、ビジー情報ＢＵＳＹを出力し、調停部ＡＲＢ１−ＡＲＢ３による仮想チャネルＶＣ３からのパケットＰＫＴの調停を抑止する（図３（ｐ））。
【００５４】
ビジー情報ＢＵＳＹの出力期間、調停部ＡＲＢ１−ＡＲＢ３による仮想チャネルＶＣ３からのパケットＰＫＴの調停が抑止されるため、パケットＰＫＴは、ＣＰＵ０からバッファ部ＢＵＦ３に送信されない。ビジー情報ＢＵＳＹは、バッファ部ＢＵＦ３が満杯になる前に出力される。これにより、調停部ＡＲＢ１−ＡＲＢ３が調停動作を続けることを、バッファ部ＢＵＦ３が満杯になる前に予め抑止することができ、バッファ部ＢＵＦ３がオーバーフローすることを抑止することができる。
【００５５】
一方、ＣＰＵ１の受信制御部ＲＣＮＴは、ＣＰＵ０から順次に受信した仮想チャネルＶＣ３からのパケットＰＫＴをバッファ部ＢＵＦ３に順次に保持する（図３（ｑ）、（ｒ））。そして、バッファ部ＢＵＦ３は、満杯状態になる。この後、受信制御部ＲＣＮＴは、バッファ部ＢＵＦ３からのパケットＰＫＴの削除に基づき、減少情報ＤＥＣ３を含むリリース情報ＲＬＳをＣＰＵ０に順次に送信する（図３（ｓ）、（ｔ）、（ｕ））。
【００５６】
クレジット制御部ＣＲＣＮＴは、減少情報ＤＥＣ３に基づき、カウンタＣＯＵＮＴのカウンタ値を順次に減少させる（図３（ｖ）、（ｗ）、（ｘ））。この際、クレジット制御部ＣＲＣＮＴは、式（１）を満足しない間、ビジー情報ＢＵＳＹの出力状態を維持する。クレジット制御部ＣＲＣＮＴは、バッファ部ＢＵＦ３の空き容量が増加し、調停部ＡＲＢ１−ＡＲＢ３の数に対応する３つのパケットＰＫＴをバッファ部ＢＵＦ３が保持可能になったときに、ビジー情報ＢＵＳＹの出力を停止する（図３（ｙ））。
【００５７】
バッファ部ＢＵＦ３の空き容量が、３つのパケットＰＫＴを保持可能な容量まで増加し、式（１）を満足した場合、調停部ＡＲＢ１−ＡＲＢ３は、仮想チャネルＶＣ３からのパケットＰＫＴをそれぞれ調停により選択可能である。これにより、調停部ＡＲＢ１−ＡＲＢ３が動作しているにも拘わらず、調停部ＡＲＢ１−ＡＲＢ３のいずれかが仮想チャネルＶＣからのパケットＰＫＴを選択しない、いわゆるライブロック状態になることを抑止することができる。ライブロック状態に陥る動作は、図１０および図１１で説明される。
【００５８】
図４は、図２に示す送信制御部ＴＣＮＴ３と受信制御部ＲＣＮＴとの動作の別の例を示す。図３と同一または同様の動作については、同じ符号を付し、詳細な説明は省略する。図４は、送信制御部ＴＣＮＴ３から受信制御部ＲＣＮＴに送信されるパケットＰＫＴのサイズ（パケット長）が可変である例を示す。カウンタＣＯＵＮＴおよびバッファ部ＢＵＦ３において、斜線で示す枠は、最大長のパケットＰＫＴを視覚的に示す。
【００５９】
増加情報ＩＮＣ３が出力されるまでの動作は、バッファ部ＢＵＦ３に保持されるパケットＰＫＴの数およびパケット長が異なることを除き、図３と同様である。カウンタＣＯＵＮＴのカウンタ値は、増加情報ＩＮＣ３に基づき増加する（図４（ａ））。クレジット制御部ＣＲＣＮＴは、カウンタＣＯＵＮＴのカウンタ値が上限値ＣＭＡＸからパケットＰＫＴの最大長に対応する値を引いた値Ｖ１を超えた場合、ビジー情報ＢＵＳＹを出力する（図４（ｂ））。これは、カウンタ値が値Ｖ１を超えた状態で、調停部ＡＲＢ１−ＡＲＢ３が仮想チャネルＶＣ３から最大サイズのパケットＰＫＴを新たに選択した場合、バッファ部ＢＵＦ３がオーバーフローするためである。
【００６０】
この後、クレジット制御部ＣＲＣＮＴは、バッファ部ＢＵＦ３の空き容量が増加し、カウンタＣＯＵＮＴのカウンタ値が式（１）を満足した場合、ビジー情報ＢＵＳＹの出力を停止する（図４（ｃ））。すなわち、バッファ部ＢＵＦ３が、調停部ＡＲＢ１−ＡＲＢ３の個数分の最大長のパケットＰＫＴを保持可能になったときに、ビジー情報ＢＵＳＹの出力は停止される。
【００６１】
図５は、図２に示すクレジット制御部ＣＲＣＮＴの動作の例を示す。図５に示す動作は、ハードウェアにより実行されてもよく、ソフトウェアにより実行されてもよい。
【００６２】
まず、ステップＳ１０において、クレジット制御部ＣＲＣＮＴは、増加情報ＩＮＣ（ＩＮＣ１−ＩＮＣ３のいずれか）を受信したかを判定する。増加情報ＩＮＣ（ＩＮＣ１−ＩＮＣ３のいずれか）を受信した場合、動作はステップＳ１２に移行され、増加情報ＩＮＣ（ＩＮＣ１−ＩＮＣ３のいずれか）を受信しない場合、動作はステップＳ２０に移行される。すなわち、調停部ＡＲＢ１−ＡＲＢ３のいずれかが、調停動作により、仮想チャネルＶＣ３から出力されたパケットＰＫＴを選択した場合、動作はステップＳ１２に移行される。調停部ＡＲＢ１−ＡＲＢ３のいずれかが、調停動作により、仮想チャネルＶＣ０以外から出力されたパケットＰＫＴを選択した場合、または調停動作を実行しない場合、動作はステップＳ２０に移行される。
【００６３】
ステップＳ１２において、クレジット制御部ＣＲＣＮＴは、増加情報ＩＮＣに基づいて、カウンタＣＯＵＮＴのカウンタ値ＣＶを増加させる。カウンタ値ＣＶの増加量は、調停部ＡＲＢ１−ＡＲＢ３のいずれかが調停動作により選択したパケットＰＫＴのパケット長に対応する。
【００６４】
次に、ステップＳ１４において、クレジット制御部ＣＲＣＮＴは、カウンタ値ＣＶが上限値ＣＭＡＸになった場合、動作をステップＳ１６に移行し、カウンタＣＯＵＮＴのカウンタ値ＣＶが上限値ＣＭＡＸ未満の場合、動作をステップＳ１０に戻す。なお、図４で説明したように、パケットＰＫＴのサイズが可変である場合、ステップＳ１４は、”ＣＶ＝ＣＭＡＸ”の代わりに、”ＣＶ＞Ｖ１”を判定とする。
【００６５】
ステップＳ１６において、クレジット制御部ＣＲＣＮＴは、バッファ部ＢＵＦ３がオーバーフローすることを抑止するため、ビジー情報ＢＵＳＹを調停部ＡＲＢ１−ＡＲＢ３に出力する。ステップＳ１６の後、動作は、ステップＳ１０に戻る。
【００６６】
一方、ステップＳ２０において、クレジット制御部ＣＲＣＮＴは、減少情報ＤＥＣ３を受信した場合、動作をステップＳ２２に移行し、減少情報ＤＥＣ３を受信しない場合、動作をステップＳ１０に戻す。ステップＳ２２において、クレジット制御部ＣＲＣＮＴは、カウンタＣＯＵＮＴのカウンタ値ＣＶを減少する。カウンタ値ＣＶの減少量は、ＣＰＵ１の受信制御部ＲＣＮＴの受信処理により、バッファ部ＢＵＦ３から削除されたパケットＰＫＴのパケット長に対応する。
【００６７】
次に、ステップＳ２４において、クレジット制御部ＣＲＣＮＴは、カウンタＣＯＵＮＴのカウンタ値ＣＶが、式（１）を満足するかを判定する。カウンタ値ＣＶが、式（１）を満足する場合、調停部ＡＲＢ１−ＡＲＢ３は、ライブロックすることなく仮想チャネルＶＣ３からのパケットＰＫＴを選択できる。このため、クレジット制御部ＣＲＣＮＴは、ステップＳ２６において、ビジー情報ＢＵＳＹの出力を停止し、動作をステップＳ１０に戻す。ビジー情報ＢＵＳＹの出力の停止により、各調停部ＡＲＢ１−ＡＲＢ３は、仮想チャネルＶＣ０から出力されるパケットＰＫＴの調停を再開する。
【００６８】
一方、カウンタ値ＣＶが式（１）を満足しない場合、調停部ＡＲＢ１−ＡＲＢ３のいずれかがライブロックする可能性があるため、クレジット制御部ＣＲＣＮＴは、ビジー情報ＢＵＳＹの出力を解除することなく、動作をステップＳ１０に戻す。
【００６９】
図６は、図２に示す送信制御部ＴＣＮＴ３がパケットＰＫＴを送信する例を示す。図６に示す例では、各パケットＰＫＴは、ヘッダ部、データ部、エンド部を含み、転送および送信に３サイクル掛かるとする。すなわち、パケットＰＫＴのパケット長は、図３に示すように固定である。なお、図４に示すように、パケットＰＫＴのパケット長が可変である場合、送信するデータ量に応じてデータ部の数（サイクル数）が増減される。ヘッダ部は、先頭に”Ｈ”を付けた数字で示され、データ部は、先頭に”Ｄ”を付けた数字で示され、エンド部は、先頭に”Ｅ”を付けた数字で示される。なお、各パケットＰＫＴのパケット長は、”３”に限定されない。
【００７０】
各パケットＰＫＴのヘッダ部Ｈ、データ部Ｄおよびエンド部Ｅに続く数字は、パケットＰＫＴを識別する番号を示す。すなわち、後に続く数字が互いに同じヘッダ部Ｈ、データ部Ｄおよびエンド部Ｅは、１つのパケットＰＫＴを示す。ヘッダＨ０、データ部Ｄ０およびエンド部Ｅ０は、パケットＰＫＴ０とも称され、ヘッダＨ１０、データ部Ｄ１０およびエンド部Ｅ１０は、パケットＰＫＴ１０とも称される。
【００７１】
送信制御部ＴＣＮＴ３に示すカウンタＣＯＵＮＴの上側と下側は、各状態になる直前のカウンタ値と、各状態になった後のカウンタ値とをそれぞれ示す。カウンタＣＯＵＮＴに示す”ＢＵＳＹ”は、クレジット制御部ＣＲＣＮＴがビジー情報ＢＵＳＹを出力中であることを示す。
【００７２】
まず、状態（ａ）では、送信制御部ＴＣＮＴ２の最終段のフリップフロップＦＦ０がパケットＰＫＴ０のヘッダ部Ｈ０を保持し、フリップフロップＦＦ２がパケット送信部ＰＴ６からのパケットＰＫＴ６のヘッダ部Ｈ６を保持している。パケット送信部ＰＴ４、ＰＴ５、ＰＴ６は、ヘッダ部Ｈ４、Ｈ５とヘッダ部Ｈ６に続くデータ部Ｄ６を調停部ＡＲＢ２に出力している。
【００７３】
カウンタＣＯＵＮＴのカウント値は、パケット送信部ＰＴ６からのパケットＰＫＴ６のヘッダ部Ｈ６を調停部ＡＲＢ２が選択したことに基づいて増加し、上限値ＣＭＡＸになる。これにより、クレジット制御部ＣＲＣＮＴからビジー情報ＢＵＳＹが出力され、各調停部ＡＲＢ１−ＡＲＢ３は、仮想チャネルＶＣ３からのパケットＰＫＴの調停動作を停止する。状態（ａ）の次のサイクルで、調停部ＡＲＢ１は、パケットＰＫＴ０（Ｈ０）を調停により選択し、フリップフロップＦＦ１に保持する。
【００７４】
状態（ａ）から３サイクル後の状態（ｂ）では、パケットＰＫＴ０のヘッダＨ０、データ部Ｄ０およびエンド部Ｅ０が、フリップフロップＦＦ３、ＦＦ２、ＦＦ１にそれぞれ保持される。ビジー情報ＢＵＳＹが出力されているため、各調停部ＡＲＢ１、ＡＲＢ２、ＡＲＢ３は、仮想チャネルＶＣ３からのパケットＰＫＴの調停動作の停止を継続する。フリップフロップＦＦ０は、パケットＰＫＴ１０のヘッダ部Ｈ１０を保持する。状態（ｂ）の次のサイクルで、調停部ＡＲＢ１は、パケットＰＫＴ１０（Ｈ１０）を調停により選択し、フリップフロップＦＦ１に保持する。
【００７５】
状態（ｂ）から３サイクル後の状態（ｃ）では、パケットＰＫＴ１０のヘッダＨ１０、データ部Ｄ１０およびエンド部Ｅ１０が、フリップフロップＦＦ３、ＦＦ２、ＦＦ１にそれぞれ保持される。クレジット制御部ＣＲＣＮＴは、ＣＰＵ１からのリリース情報ＲＬＳ（減少情報ＤＥＣ３）に基づいて、カウンタＣＯＵＮＴのカウンタ値を１パケット分減少させる。カウンタＣＯＵＮＴのカウンタ値は、式（１）を満足しないため、クレジット制御部ＣＲＣＮＴは、ビジー情報ＢＵＳＹの出力状態を維持する。このため、各調停部ＡＲＢ１、ＡＲＢ２、ＡＲＢ３は、仮想チャネルＶＣ３からのパケットＰＫＴの調停動作の停止を継続する。状態（ｃ）の次のサイクルで、調停部ＡＲＢ１は、パケットＰＫＴ２０（Ｈ２０）を調停により選択し、フリップフロップＦＦ１に保持する。
【００７６】
状態（ｃ）から３サイクル後の状態（ｄ）では、パケットＰＫＴ２０のヘッダＨ２０、データ部Ｄ２０およびエンド部Ｅ２０が、フリップフロップＦＦ３、ＦＦ２、ＦＦ１にそれぞれ保持される。クレジット制御部ＣＲＣＮＴは、ＣＰＵ１からのリリース情報ＲＬＳ（減少情報ＤＥＣ３）に基づいて、カウンタＣＯＵＮＴのカウンタ値を１パケット分減少させる。カウンタＣＯＵＮＴのカウンタ値は、式（１）を満足しないため、クレジット制御部ＣＲＣＮＴは、ビジー情報ＢＵＳＹの出力状態を維持する。このため、各調停部ＡＲＢ１、ＡＲＢ２、ＡＲＢ３は、仮想チャネルＶＣ３からのパケットＰＫＴの調停動作の停止を継続する。状態（ｄ）の次のサイクルで、調停部ＡＲＢ１は、パケットＰＫＴ４０（Ｈ４０）を調停により選択し、フリップフロップＦＦ１に保持する。
【００７７】
図７は、図６に示す動作の続きの例を示す。状態（ｄ）から４サイクル後の状態（ｅ）では、パケットＰＫＴ３０のデータ部Ｄ３０およびエンド部Ｅ３０が、フリップフロップＦＦ３、ＦＦ２にそれぞれ保持される。また、状態（ｄ）の後、状態（ｅ）になる前に、ＣＰＵ１からリリース情報ＲＬＳ（減少情報ＤＥＣ３）が出力される。クレジット制御部ＣＲＣＮＴは、減少情報ＤＥＣ３に基づいて、カウンタＣＯＵＮＴのカウンタ値を１パケット分減少させる。カウンタＣＯＵＮＴのカウンタ値は、式（１）を満足するため、クレジット制御部ＣＲＣＮＴは、ビジー情報ＢＵＳＹの出力を停止する。
【００７８】
状態（ｅ）の１サイクル前、フリップフロップＦＦ３、ＦＦ２、ＦＦ１は、パケットＰＫＴ３０のヘッダ部Ｈ３０、データ部Ｄ３０およびエンド部Ｅ３０をそれぞれ保持している。各調停部ＡＲＢ１−ＡＲＢ３は、誤動作を抑止するために、パケットＰＫＴ３０の転送中に調停動作を停止する。このため、状態（ｅ）において、パケットＰＫＴ３０を転送中の調停部ＡＲＢ２、ＡＲＢ３は、パケット送信部ＰＴ４−ＰＴ９からのパケットＰＫＴを調停しない。
【００７９】
一方、パケットＰＫＴ３０のエンド部Ｅ３０の転送を完了した調停部ＡＲＢ１は、パケット送信部ＰＴ１−ＰＴ３からのパケットＰＫＴ１、ＰＫＴ２、ＰＫＴ３を調停可能である。そして、調停部ＡＲＢ１は、パケット送信部ＰＴ１が出力するパケットＰＫＴ１のヘッダ部Ｈ１を調停により選択し、フリップフロップＦＦ１に保持する。調停部ＡＲＢ１は、パケットＰＫＴ１の選択に基づき増加情報ＩＮＣ１を出力し、カウンタＣＯＵＮＴのカウンタ値は、１パケット分増加する。
【００８０】
状態（ｅ）から１サイクル後の状態（ｆ）では、調停部ＡＲＢ２は、パケットＰＫＴの転送が途切れたため、パケット送信部ＰＴ５からのパケットＰＫＴ５（Ｈ５）を調停により選択し、フリップフロップＦＦ２に保持する。これにより、カウンタＣＯＵＮＴのカウンタ値は、１パケット分増加する。調停部ＡＲＢ２が、パケットＰＫＴ５（Ｈ５）を選択したため、フリップフロップＦＦ１は、ヘッダ部Ｈ１を保持し続ける。
【００８１】
状態（ｆ）から１サイクル後の状態（ｇ）では、調停部ＡＲＢ３は、パケットＰＫＴの転送が途切れたため、パケット送信部ＰＴ９からのパケットＰＫＴ９（Ｈ９）を調停により選択し、フリップフロップＦＦ３に保持する。これにより、カウンタＣＯＵＮＴのカウンタ値は、１パケット分増加し、上限値ＣＭＡＸになり、クレジット制御部ＣＲＣＮＴからビジー情報ＢＵＳＹが出力される。各調停部ＡＲＢ１−ＡＲＢ３は、ビジー情報ＢＵＳＹの出力に基づき、仮想チャネルＶＣ３からのパケットＰＫＴの調停動作を停止する。調停部ＡＲＢ３が、パケットＰＫＴ９（Ｈ９）を調停により選択したため、フリップフロップＦＦ１、ＦＦ２は、ヘッダ部Ｈ１、Ｈ５をそれぞれ保持し続ける。フリップフロップＦＦ０は、パケットＰＫＴ４０のヘッダ部Ｈ４０を保持する。
【００８２】
状態（ｇ）から２サイクル後の状態（ｈ）では、フリップフロップＦＦ３は、パケットＰＫＴ９のエンド部Ｅ９を保持する。フリップフロップＦＦ１、ＦＦ２の状態は、状態（ｇ）と同じである。
【００８３】
図８は、図７に示す動作の続きの例を示す。状態（ｈ）から状態（ｉ）までの３サイクルの間に、パケットＰＫＴ５（Ｈ５、Ｄ５、Ｅ５）がフリップフロップＦＦ３に転送され、パケットＰＫＴ１（Ｈ１）がフリップフロップＦＦ２に転送される。状態（ｉ）では、ＣＰＵ１のバッファ部ＢＵＦ３に保持されたパケットＰＫＴが削除されないため、ビジー情報ＢＵＳＹの出力は維持される。
【００８４】
状態（ｉ）から３サイクル後の状態（ｊ）になる前、調停部ＡＲＢ１は、パケットＰＫＴの転送が途切れ、ビジー情報ＢＵＳＹが出力中のため、送信制御部ＴＣＮＴ２からのパケットＰＫＴ４０（Ｈ４０）を調停により選択する。そして、状態（ｊ）において、フリップフロップＦＦ２、ＦＦ１は、パケットＰＫＴ４０のヘッダ部Ｈ４０およびデータ部Ｄ４０を保持する。
【００８５】
状態（ｊ）から３サイクル後の状態（ｋ）では、クレジット制御部ＣＲＣＮＴは、減少情報ＤＥＣ３に基づいて、カウンタＣＯＵＮＴのカウンタ値を１パケット分減少させる。カウンタＣＯＵＮＴのカウンタ値は、式（１）を満足しないため、クレジット制御部ＣＲＣＮＴは、ビジー情報ＢＵＳＹの出力状態を維持する。このため、各調停部ＡＲＢ１、ＡＲＢ２、ＡＲＢ３は、仮想チャネルＶＣ３からのパケットＰＫＴの調停動作の停止を継続する。状態（ｋ）の次のサイクルで、調停部ＡＲＢ１は、パケットＰＫＴ５０（Ｈ５０）を調停により選択し、フリップフロップＦＦ１に保持する。
【００８６】
状態（ｋ）から３サイクル後の状態（ｌ）では、クレジット制御部ＣＲＣＮＴは、減少情報ＤＥＣ３に基づいて、カウンタＣＯＵＮＴのカウンタ値を１パケット分減少させる。カウンタＣＯＵＮＴのカウンタ値は、式（１）を満足しないため、クレジット制御部ＣＲＣＮＴは、ビジー情報ＢＵＳＹの出力状態を維持する。このため、各調停部ＡＲＢ１、ＡＲＢ２、ＡＲＢ３は、仮想チャネルＶＣ３からのパケットＰＫＴの調停動作の停止を継続する。
【００８７】
なお、図６から図８では、パケット長が”３”のパケットＰＫＴを送信する例について説明したが、図４に示したように、パケット長は可変でもよい。パケット長が可変の場合、カウンタＣＯＵＮＴのカウンタ値は、図４に示すように変化する。
【００８８】
図９は、他のデータ送受信システムにおけるクレジット制御部の動作の例を示す。図４と同一または同様の動作については、同じ符号を付し、詳細な説明は省略する。他のデータ送受信システムは、ビジー情報ＢＵＳＹの出力制御が異なることを除き、図２に示すデータ送受信システムＳＹＳと同様である。
【００８９】
図９に示す動作は、図４のステップＳ２４の代わりにステップＳ２５を実行する。その他の動作は、図４と同様である。ステップＳ２５では、クレジット制御部ＣＲＣＮＴは、カウンタＣＯＵＮＴのカウンタ値ＣＶが、上限値ＣＭＡＸより小さいかを判定する。カウンタ値ＣＶが上限値ＣＭＡＸより小さい場合、クレジット制御部ＣＲＣＮＴは、ステップＳ２６において、ビジー情報ＢＵＳＹの出力を停止する。カウンタ値ＣＶが上限値ＣＭＡＸ以上の場合、ビジー情報ＢＵＳＹの出力を解除することなく、動作をステップＳ１０に戻す。
【００９０】
図１０は、図９に示すクレジット制御部を有する送信制御部がパケットＰＫＴを送信する例を示す。図１０の表記は、図６の表記と同様である。状態（ａ）、（ｂ）は、図６に示す状態（ａ）、（ｂ）と同じである。
【００９１】
状態（ｂ）から１サイクル後の状態（ｃ）では、クレジット制御部ＣＲＣＮＴは、ＣＰＵ１からのリリース情報ＲＬＳ（減少情報ＤＥＣ３）に基づいて、カウンタＣＯＵＮＴのカウンタ値を１パケット分減少させる。カウンタＣＯＵＮＴのカウンタ値は、図９に示すステップＳ２５の条件（ＣＶ＜ＣＭＡＸ）を満足するため、クレジット制御部ＣＲＣＮＴは、ビジー情報ＢＵＳＹの出力を停止する。
【００９２】
調停部ＡＲＢ１は、パケットＰＫＴの転送が途切れ、ビジー情報ＢＵＳＹの出力が停止したため、パケット送信部ＰＴ３からのパケットＰＫＴ３（Ｈ３）を調停により選択し、フリップフロップＦＦ１に保持する。これにより、カウンタＣＯＵＮＴのカウンタ値は、１パケット分増加し、カウンタ値は上限値ＣＭＡＸになり、ビジー情報ＢＵＳＹが再び出力される。
【００９３】
状態（ｃ）から２サイクル後の状態（ｄ）では、パケットＰＫＴ３のヘッダＨ３、データ部Ｄ３およびエンド部Ｅ３が、フリップフロップＦＦ３、ＦＦ２、ＦＦ１にそれぞれ保持される。ビジー情報ＢＵＳＹが出力されているため、各調停部ＡＲＢ１、ＡＲＢ２、ＡＲＢ３は、仮想チャネルＶＣ３からのパケットＰＫＴの調停動作の停止を継続する。
【００９４】
図１１は、図１０に示す動作の続きの例を示す。図１０に示す状態（ｄ）から１サイクル後の状態（ｅ）では、調停部ＡＲＢ１は、パケットＰＫＴ１０（Ｈ１０）を調停により選択し、フリップフロップＦＦ１に保持する。
【００９５】
状態（ｅ）から２サイクル後の状態（ｆ）では、クレジット制御部ＣＲＣＮＴは、減少情報ＤＥＣ３に基づいて、カウンタＣＯＵＮＴのカウンタ値を１パケット分減少させる。カウンタＣＯＵＮＴのカウンタ値は、図９に示すステップＳ２５の条件（ＣＶ＜ＣＭＡＸ）を満足するため、クレジット制御部ＣＲＣＮＴは、ビジー情報ＢＵＳＹの出力を停止する。
【００９６】
調停部ＡＲＢ２は、パケットＰＫＴの転送が途切れ、ビジー情報ＢＵＳＹの出力が停止しているため、パケット送信部ＰＴ４からのパケットＰＫＴ４（Ｈ４）を調停により選択し、フリップフロップＦＦ２に保持する。これにより、カウンタＣＯＵＮＴのカウンタ値は、１パケット分増加し、ビジー情報ＢＵＳＹが再び出力される。調停部ＡＲＢ１は、送信制御部ＴＣＮＴ２からのパケットＰＫＴ２０（Ｈ２０）を調停により選択し、フリップフロップＦＦ１にヘッダ部Ｈ２０を保持する。
【００９７】
状態（ｆ）から２サイクル後の状態（ｇ）では、フリップフロップＦＦ３、ＦＦ２、ＦＦ１は、パケットＰＫＴ４のエンド部Ｅ４およびパケットＰＫＴ２０のヘッダ部Ｈ２０、データ部Ｄ２０をそれぞれ保持する。クレジット制御部ＣＲＣＮＴは、ビジー情報ＢＵＳＹの出力状態を維持するため、各調停部ＡＲＢ１、ＡＲＢ２、ＡＲＢ３は、仮想チャネルＶＣ３からのパケットＰＫＴの調停動作の停止を継続する。
【００９８】
状態（ｇ）から４サイクル後の状態（ｈ）では、クレジット制御部ＣＲＣＮＴは、減少情報ＤＥＣ３に基づいて、カウンタＣＯＵＮＴのカウンタ値を１パケット分減少させる。カウンタＣＯＵＮＴのカウンタ値は、図９に示すステップＳ２５の条件（ＣＶ＜ＣＭＡＸ）を満足するため、クレジット制御部ＣＲＣＮＴは、ビジー情報ＢＵＳＹの出力を停止する。
【００９９】
調停部ＡＲＢ１は、パケットＰＫＴの転送が途切れ、ビジー情報ＢＵＳＹの出力が停止しているため、パケット送信部ＰＴ２からのパケットＰＫＴ２（Ｈ２）を調停により選択し、フリップフロップＦＦ１に保持する。これにより、カウンタＣＯＵＮＴのカウンタ値は、１パケット分増加し、ビジー情報ＢＵＳＹが再び出力される。
【０１００】
この後、状態（ｆ）、（ｇ）、（ｈ）と同様の状態が繰り返される場合、調停部ＡＲＢ３は、ビジー情報ＢＵＳＹの出力の停止中に、パケットＰＫＴの転送が途切れないため、パケット送信部ＰＴ７−ＰＴ９からのパケットＰＫＴを調停に参加させられない。この結果、正常に動作している送信制御部ＴＣＮＴ３において、調停部ＡＲＢ３がパケット送信部ＰＴ７−ＰＴ９からのパケットＰＫＴを選択しない状態が続くライブロック状態に陥る。
【０１０１】
以上、図２から図１１に示した実施形態では、クレジット制御部ＣＲＣＮＴは、調停部ＡＲＢ１−ＡＲＢ３のそれぞれが選択するパケットＰＫＴをバッファ部ＢＵＦ３が保持可能なことをカウンタ値に基づいて判定した場合にビジー情報ＢＵＳＹの出力を停止する。すなわち、カウンタＣＯＵＮＴのカウンタ値が式（１）を満足しない間、調停部ＡＲＢ１−ＡＲＢ３による調停動作は抑止される。これにより、ビジー情報ＢＵＳＹの出力が停止された場合に、各調停部ＡＲＢ１−ＡＲＢ３は、仮想チャネルＶＣ３からのパケットを調停により選択することが可能になる。この結果、調停部ＡＲＢ１−ＡＲＢ３のいずれかが、仮想チャネルＶＣ３からのパケットを選択しない状態が続くことを回避することができる。
【０１０２】
ＣＰＵ０が複数の仮想チャネルＶＣを有し、仮想チャネルＶＣにそれぞれ対応する調停部ＡＲＢが直列に接続される場合にも、調停部ＡＲＢのいずれかが、対応する仮想チャネルＶＣからのパケットを選択しない状態が続くことを回避することができる。各調停部ＡＲＢ１−ＡＲＢ３が、パケットＰＫＴの選択に基づいて、増加情報ＩＮＣ１−ＩＮＣ３を出力することで、パケットＰＫＴがバッファ部ＢＵＦ３に保持される前に、カウンタＣＯＵＮＴのカウンタ値を増加させることができる。これにより、バッファ部ＢＵＦ３に保持されるパケットＰＫＴの保持容量が上限に達する前に、ビジー情報ＢＵＳＹを出力することができる。この結果、調停部ＡＲＢ１−ＡＲＢ３が調停動作を続けることを、バッファ部ＢＵＦ３が満杯になる前に予め抑止することができ、バッファ部ＢＵＦ３がオーバーフローすることを抑止することができる。
【０１０３】
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。
【符号の説明】
【０１０４】
ＡＲＢ、ＡＲＢ１−ＡＲＢ３…調停部；ＡＲＢＣＮＴ…調停管理部；ＢＵＦ…受信バッファ；ＢＵＳＹ…ビジー情報；ＢＵＦ０−ＢＵＦ３…バッファ部；ＣＯＵＮＴ…カウンタ；ＣＲＣＮＴ…クレジット制御部；ＤＥＣ、ＤＥＣ０−ＤＥＣ３…減少情報；ＤＧＥＮ０−ＤＧＥＮ２…データ生成部；ＦＦ１−ＦＦ３…フリップフロップ；ＩＮＣ１−ＩＮＣ３…増加情報；ＰＫＴ…パケット；ＰＴ１−ＰＴ９…パケット送信部；ＲＣＮＴ…データ管理部、受信制御部；ＲＬＳ…リリース情報；ＲＳＶ…データ受信装置；ＳＴＯＰ…抑止情報；ＳＹＳ０、ＳＹＳ…データ送受信システム；ＴＣＮＴ０−ＴＣＮＴ３…送信制御部；ＴＲＳ…データ送信装置；ＶＣ０−ＶＣ３…仮想チャネル
【図１】
0006331787.tif 000002
【図２】
0006331787.tif 000003
【図３】
0006331787.tif 000004
【図４】
0006331787.tif 000005
【図５】
0006331787.tif 000006
【図６】
0006331787.tif 000007
【図７】
0006331787.tif 000008
【図８】
0006331787.tif 000009
【図９】
0006331787.tif 000010
【図１０】
0006331787.tif 000011
【図１１】
0006331787.tif 000012