(57)【要約】【課題】複数のデータ転送チャネルを有し、アイソクロナス転送を行うデータ転送装置において、ピークレートに応じたデータ転送帯域を確保することはネットワーク帯域の利用効率が低い。【解決手段】各チャネルに対し、優先度を設定し、フロー制御部により、優先度の高いチャネルから順に転送帯域を割り当てる。これを毎サイクル実施することにより、帯域の利用効率を向上させるとともに、優先度の高いチャネルについて、データ転送の抜けを防止することが可能となる。【選択図】図２
2011217258.tif 000002
【特許請求の範囲】
【請求項１】
複数のデータをアイソクロナス転送により共通バスに転送するデータ転送装置であって、
前記データを保持するデータ保持部と、
前記共通バスへのデータ転送に先立ち前記データごとに転送帯域を割り当てる際、前記データに係る処理順序を決定する処理データ決定部と、
前記共通バスに確保されている許容帯域の範囲内で、前記処理データ部により決定された順に前記転送帯域を割り当てるフロー制御部と、を有することを特徴とするデータ転送装置。
【請求項２】
前記処理データ決定部は、前記データのうち優先度の高い順に転送帯域を割り当てることを特徴とする請求項１に記載のデータ転送装置。
【請求項３】
前記フロー制御部により前記データに前記転送帯域が割り当てられる際、前記許容帯域から前記転送帯域を減じて更新する帯域更新部を有する事を特徴とする請求項１又は２に記載のデータ転送装置。
【請求項４】
前記データ保持部の保持するデータ量と前記データ保持部の保持可能な最大のデータ量との比を前記データ保持部の使用率として計算するデータ保持部使用率演算器と、
前記使用率が高いほど前記優先度を高く設定する処理データ決定部と、を備えることを特徴とする請求項１乃至３の何れかに記載のデータ転送装置。
【請求項５】
前記転送帯域の割り当てが行われないデータについて優先フラグをセットする優先フラグ管理部を備え、
該優先フラグがセットされたデータについて優先度を高く設定することを特徴とする請求項１乃至４の何れかに記載のデータ転送装置。
【請求項６】
複数のデータをアイソクロナス転送により共通バスに転送するデータ転送方法であって、
前記データを保持するステップと、
前記共通バスへのデータ転送に先立ち前記データごとに前記転送帯域を割り当てる際、前記データのうち優先度の高い順に、前記共通バスに確保されている許容帯域の範囲内で、前記転送帯域を割り当てるステップと、
前記転送帯域を割り当てるステップにより割り当てられた前記転送帯域を減じて前記許容帯域を更新するステップと、を有することを特徴とするデータ転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は複数種類のデータをアイソクロナス転送により共通バスに転送する際に、共通バスのデータ転送帯域を有効利用するデータ転送装置およびデータ転送方法に関するものである。
【背景技術】
【０００２】
複数のチャネルから伝送されたデータをアイソクロナス転送によりネットワークへマルチキャストするデータ転送装置では、各チャネルから伝送されたデータのネットワークへの円滑な転送を確保する必要がある。これは、データごとの転送帯域のピーク値を加算した値を、データ転送装置の使用帯域として確保することで実現できる。しかし、全チャネルのデータ転送のピークが重なり合うことはまれであるため、該使用帯域の確保の方法を用いると、過剰な帯域を確保することとなり、ネットワークに接続されている他の装置の帯域確保を阻害する要因となる。
【０００３】
かかる問題を解消するため、変動レートデータを扱う場合に発生する未使用帯域を他のチャネルに貸し出す方式がある。また、映像データなどの間歇バースト型データの転送に用いられるチャネルを、該データ転送のブランキング期間において、音声データなどの転送に用いる方法がある（特許文献１、２）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−９４５７５
【特許文献２】特開２００３−８５７８
【発明の概要】
【発明が解決しようとする課題】
【０００５】
変動レートデータを扱う場合に発生する未使用帯域を他のチャネルに貸し出す方式においては、二つのチャネル間の調停を前提としている。多数のチャネルを有するデータ転送装置に対して該方式を適用した場合、多数のチャネル間での調停を行わなければならない場合があり、調停等の処理が複雑になるおそれがある。
【０００６】
また、間歇的バースト型データ転送を行うチャネルについて、転送帯域を割り当てる方法では、固定長のデータの転送を前提としている。よって、符号化データのような可変長のデータを転送するチャネルに対して適切に転送帯域の割り当てを行うことが出来ない。
【課題を解決するための手段】
【０００７】
複数のデータをアイソクロナス転送により共通バスに転送するデータ転送装置であって、データを保持するデータ保持部と、共通バスへのデータ転送に先立ちデータごとに転送帯域を割り当てる際、データのうち優先度の高い順に、共通バスに確保されている許容帯域の範囲内で、転送帯域を割り当てるフロー制御部と、共通バスにおいて予め確保された使用帯域から、フロー制御部により割り当てられた転送帯域を減じて許容帯域を更新する帯域更新部とを有するものである。
【発明の効果】
【０００８】
本発明によれば、データ転送を行うチャネルを複数備えるデータ転送装置において、データ転送装置が確保した帯域の範囲内で、各チャネルへ転送帯域を割り当てることが可能となる。これにより余分な帯域を確保する必要が無くなり、有限である共通バスの転送帯域を有効に活用する事が可能になる。また、一つのデータ転送装置に割り当てる許容帯域を低減した場合であっても、優先度の高いデータを確実に転送することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】従来の回路構成図
【図２】本実施例に係る回路構成図
【図３】データサイズ制御部の回路図
【図４】データサイズ制御部の動作フロー
【図５】音声データのデータ量の時間変動
【図６】映像データのデータ量の時間変動
【図７】符号化データのデータ量の時間変動
【図８】音声データ、映像データ、符号化データのデータ量
【図９】従来回路によるパケット構成
【図１０】本実施例に係る回路によるパケット構成
【発明を実施するための形態】
【００１０】
図１に、複数のチャネルから伝送されたデータをアイソクロナス転送によりネットワークへマルチキャストするデータ転送装置について、一般的な構成を示す。チャネルＣｈＡ乃至ＣｈＤに対応するＦＩＦＯメモリＦＡ乃至ＦＤに、データが入力される。ＦＩＦＯメモリＦＡ乃至ＦＤは、バッファとして機能する。ＦＩＦＯメモリＦＡ乃至ＦＤは、格納済みのデータ量をパケット生成部ＰＧに通知する。パケット生成部ＰＧは、通知されたデータ量に応じて転送量を決定したうえでパケットを生成する。そして、パケット生成部ＰＧは、ＦＩＦＯメモリＦＡ乃至ＦＤからデータを取り出しパケットを生成した上で送信部ＳＰへ出力する。
【００１１】
図２に、本実施例における構成図を示す。本実施例における構成は、図１に示す構成に加えて、データサイズ制御部ＤＳＣを備える。データサイズ制御部ＤＳＣは、ＦＩＦＯメモリＦＡ乃至ＦＤから、各ＦＩＦＯメモリに蓄積されているデータ量が入力される。また、データサイズ制御部ＤＳＣには、あらかじめ、データ転送装置について確保されている使用帯域、各チャネルの１サイクルあたりの最大転送量等、各種の制御用信号が後述するレジスタ等に格納されている。そして、データサイズ制御部はこれらの制御用信号をもとに、各チャネルに割り当てられる転送量を計算し、パケット生成部ＰＧへと通知する。パケット生成部ＰＧは、データサイズ制御部ＤＳＣにより通知された各チャネルに割り当てられる転送量に基づき、ＦＩＦＯメモリＦＡ乃至ＦＤからデータを取り出し、送信部ＳＰへパケットを出力する。
【００１２】
次に、本実施例に係るデータサイズ制御部ＤＳＣの回路図を図３に示す。図３は、ＩＥＥＥ１３９４規格により定められるデータ転送について例示するものである。
データサイズ制御部ＤＳＣは、チャネルＣｈＡ乃至ＣｈＤ毎に、サイズ設定レジスタＣＬＲ（Ａ）乃至ＣＬＲ（Ｄ）を備える。サイズ設定レジスタＣＬＲ（Ａ）乃至ＣＬＲ（Ｄ）は、Ｃｈａｎｎｅｌ＿ＬＩＭＩＴ（Ａ）乃至Ｃｈａｎｎｅｌ＿ＬＩＭＩＴ（Ｄ）を管理する。Ｃｈａｎｎｅｌ＿ＬＩＭＩＴ（Ａ）乃至Ｃｈａｎｎｅｌ＿ＬＩＭＩＴ（Ｄ）は、各チャネルについて一回のサイクルで送ることの出来る最大のデータ量を示す値である。
【００１３】
ＦＩＦＯ使用率演算器ＦＵＡは、ＦＩＦＯメモリＦＡ乃至ＦＤに蓄積されているデータの量とＦＩＦＯメモリＦＡ乃至ＦＤに蓄積することの出来る最大のデータ量との比、すなわち各ＦＩＦＯメモリの使用率を計算する。なお、ＦＩＦＯ使用率演算器ＦＵＡは、チャネルＣｈＡ乃至ＣｈＤに応じたＦＩＦＯ使用率演算器ＦＵＡ（Ａ）乃至ＦＵＡ（Ｄ）を備える。
データサイズ制御部ＤＳＣの外部に存在するＦＩＦＯメモリより各ＦＩＦＯメモリに蓄積されたデータ量を示す信号ＦＩＦＯ＿ＤＡＴＡ＿ＳＩＺＥ  Ａ乃至ＦＩＦＯ＿ＤＡＴＡ＿ＳＩＺＥ  ＤがＦＩＦＯ使用率演算器ＦＵＡ（Ａ）乃至ＦＵＡ（Ｄ）に入力される。ＦＩＦＯ使用率演算器ＦＵＡ（Ａ）乃至ＦＵＡ（Ｄ）は、ＦＩＦＯメモリに蓄積されたデータ量を示す信号ＦＩＦＯ＿ＤＡＴＡ＿ＳＩＺＥ  Ａ乃至ＦＩＦＯ＿ＤＡＴＡ＿ＳＩＺＥ  Ｄに基づき、各ＦＩＦＯメモリの使用率を計算し、結果をフロー制御シーケンサＦＣＳに出力する。
【００１４】
フロー制御シーケンサＦＣＳは、ＩＥＥＥ１３９４規格によって定められるＣｙｃｌｅＳｔａｒｔイベントを検出することで、動作を開始する。
【００１５】
また、フロー制御シーケンサＦＣＳは、処理チャネル決定ルールを定める設定レジスタＣＲより従うべき処理チャネル決定ルールを示す信号が入力される。本実施例では、処理チャネル決定ルールは以下の３種類を用いるとする。なお、処理チャネル決定ルールは組み合わせて使用することも可能である。
【００１６】
処理チャネル決定ルール１は、ＦＩＦＯ使用率演算器ＦＵＡ（Ａ）乃至ＦＵＡ（Ｄ）により得られた各チャネルＣｈＡ乃至ＣｈＤに係るＦＩＦＯメモリＦＡ乃至ＦＤの使用率を相互に比較する。比較した結果、最もＦＩＦＯ使用率が高いチャネルからデータ転送を行うとするルールである。ＦＩＦＯ使用率が最も高いチャネルからデータ転送を行うことで、全てのチャネルについて均等に、ＦＩＦＯメモリが溢れることによるデータ転送の抜けを防止することができる。
【００１７】
処理チャネル決定ルール２は、ユーザが設定した優先度の順にチャネルを処理するとするルールである。ユーザが優先度を高く設定するほど、そのチャネルのＦＩＦＯメモリが溢れる可能性は低くなる。よって、ユーザは重要なデータを送信するチャネルについて優先度を高くすることで、該チャネルについて、ＦＩＦＯメモリからデータが溢れることによるデータ転送の抜けを防止することができる。ユーザによる優先度の設定は、一のチャネルについてのみ行うことも、全チャネルについて行うことも可能である。処理チャネル決定ルール２により優先度の設定の行われていないチャネルは、同等の優先度として取り扱ってもよいし、処理チャネル決定ルール１又は後述する処理チャネル決定ルール３に従って優先度を設定してもよい。
【００１８】
処理チャネル決定ルール３は、処理チャネル決定ルール１に加えて、フラグを用いて、優先制御を行うとするルールである。転送タイミングにおいて転送の割り当てが行われていないチャネルに対してフラグＺＥＲＯ＿ＦＬＡＧをセットする。次回の転送タイミングにおいて、フラグＺＥＲＯ＿ＦＬＡＧがセットされているチャネルから優先的に転送が行われるようにすることで、チャネル間の公平性を担保する。
【００１９】
また、処理チャネル決定ルールとして処理チャネル決定ルール２が選択されている場合は、各チャネルの優先度についての情報が設定レジスタＣＲに保持され、フロー制御シーケンサＦＣＳへ入力される。
【００２０】
フロー制御シーケンサＦＣＳには、ＦＩＦＯ使用率演算器ＦＵＡ（Ａ）乃至ＦＵＡ（Ｄ）より各ＦＩＦＯメモリの使用率が入力され、該使用率に基づき処理するチャネルを選択する。また、フロー制御シーケンサＦＣＳは、内部にフラグＺＥＲＯ＿ＦＬＡＧを管理するレジスタを有し、処理チャネル決定ルールとして処理チャネル決定ルール３が選択されているときに該レジスタを用いる。
【００２１】
また、フロー制御シーケンサＦＣＳには、外部に存在するＦＩＦＯメモリから、各ＦＩＦＯメモリに蓄積されたデータ量を示す値であるＦＩＦＯ＿ＤＡＴＡ＿ＳＩＺＥ  Ａ乃至ＦＩＦＯ＿ＤＡＴＡ＿ＳＩＺＥ  Ｄが入力される。また、フロー制御シーケンサＦＣＳには、チャネルＣｈＡ乃至ＣｈＤ各々において定められる一回の転送タイミングで転送可能な最大帯域Ｃｈａｎｎｅｌ＿ＬＩＭＩＴ（Ａ）乃至Ｃｈａｎｎｅｌ＿ＬＩＭＩＴ（Ｄ）がサイズ設定レジスタＣＬＲから入力される。フロー制御シーケンサＦＣＳは、これら入力されたＦＩＦＯ＿ＤＡＴＡ＿ＳＩＺＥ  Ａ乃至ＦＩＦＯ＿ＤＡＴＡ＿ＳＩＺＥ  ＤならびにＣｈａｎｎｅｌ＿ＬＩＭＩＴ（Ａ）乃至（Ｄ）に基づいて、各チャネルのデータ転送量を決定する。
【００２２】
また、フロー制御シーケンサＦＣＳは、外部に存在するＩＥＥＥ１３９４規格により定められるアイソクロナス・マネジャー配下のＢＡＮＤＷＩＤＴＨ＿ＡＶＡＩＬＡＢＬＥレジスタから、データ転送装置について確保した使用帯域を示す値を読み込む。フロー制御シーケンサＦＣＳは、残りの転送量を保持するレジスタＬＳＲに該確保した帯域を示す値を残りの転送量ＬＩＭＩＴ＿ＳＩＺＥとして書き込む。そして、各チャネルについて転送量を割り当てる度、割り当てた量だけＬＩＭＩＴ＿ＳＩＺＥを減算する。
【００２３】
フロー制御シーケンサＦＣＳは、前記入力された信号群に基づき、図４として後記するフローに従い、各チャネルの転送量を計算し、計算結果を転送量保持レジスタＴＳＲ（Ａ）乃至ＴＳＲ（Ｄ）に出力する。転送量保持レジスタＴＳＲ（Ａ）乃至ＴＳＲ（Ｄ）は入力された転送量をＴＲＡＮＳ＿ＳＩＺＥ（Ａ）乃至（Ｄ）として保持する。転送量保持レジスタＴＳＲ（Ａ）乃至ＴＳＲ（Ｄ）は、外部に存在するパケット生成部ＰＧへ各チャネルに割り当てられた転送量を通知する。
【００２４】
本実施例にかかるデータサイズ制御部ＤＳＣが、各チャネルの転送量を決定するフローについて図４に示す。ＣｙｃｌｅＳｔａｒｔ信号がフロー制御シーケンサＦＣＳへ入力され、ＣｙｃｌｅＳｔａｒｔイベントを検出することをトリガとしてデータサイズ制御部ＤＳＣは処理を開始する（Ｓ０）。ユーザは、装置の外部に存在するレジスタを設定することでデータ転送装置の占有する使用帯域値ＬＩＭＩＴ＿ＳＩＺＥを決定する（Ｓ２）。
ＩＥＥＥ１３９４規格においては、アイソクロナス・リソース・マネジャー配下のＢＡＮＤＷＩＤＴＨ＿ＡＶＡＩＬＡＢＬＥレジスタが共通バスで割り当て可能なデータ量を示しており、この値の範囲内でＬＩＭＩＴ＿ＳＩＺＥを決定する。
データサイズ制御部ＤＳＣは、設定レジスタＣＲより値を読み込み、いずれの処理チャネル決定ルールに従うか判断を行う（Ｓ４）。データサイズ制御部ＤＣＳは、処理チャネル決定ルールに従い、処理チャネルを決定する（Ｓ６）。予め、ユーザは、処理チャネル決定ルール１乃至３のうちの何れかを選択する。
【００２５】
処理チャネル毎に設定される一回の転送タイミングで転送が許される最大のサイズを規定するサイズ設定レジスタＣＬＲに格納される値Ｃｈａｎｎｅｌ＿ＬＩＭＩＴと、処理チャネルのＦＩＦＯメモリに格納されているデータサイズＦＩＦＯ＿ＤＡＴＡ＿ＳＩＺＥを比較する（Ｓ８）。
【００２６】
Ｃｈａｎｎｅｌ＿ＬＩＭＩＴがＦＩＦＯ＿ＤＡＴＡ＿ＳＩＺＥより大きい場合（Ｓ８：ＹＥＳ）は、次の送信タイミングにおいて転送するデータ量を保持する転送量レジスタＴＳＲにＦＩＦＯ＿ＤＡＴＡ＿ＳＩＺＥをＴＲＡＮＳ＿ＳＩＺＥとして格納する（Ｓ１０）。これにより、処理チャネルのＦＩＦＯメモリに蓄積されている全データを転送することが出来る。
【００２７】
また、ＦＩＦＯ＿ＤＡＴＡ＿ＳＩＺＥがＣｈａｎｎｅｌ＿ＬＩＭＩＴ以上の場合（Ｓ８：Ｎｏ）は、転送量レジスタＴＳＲにＣｈａｎｎｅｌ＿ＬＩＭＩＴをＴＲＡＮＳ＿ＳＩＺＥとして格納する（Ｓ１２）。これにより、一つのチャネルから転送される転送量をＣｈａｎｎｅｌ＿ＬＩＭＩＴ以下に制限することができ、特定のチャネルによって使用帯域が独占されることを防ぐことが出来る。
【００２８】
次の転送タイミングで送ることの出来る最大の転送量であるＬＩＭＩＴ＿ＳＩＺＥとＴＲＡＮＳ＿ＳＩＺＥの比較を行う（Ｓ１４）。
ＬＩＭＩＴ＿ＳＩＺＥがＴＲＡＮＳ＿ＳＩＺＥ以上の場合（Ｓ１４：Ｙｅｓ）は、ＬＩＭＩＴ＿ＳＩＺＥに格納されている値からＴＲＡＮＳ＿ＳＩＺＥに格納されている値を減算した値をＬＩＭＩＴ＿ＳＩＺＥに格納する（Ｓ１６）。更に、処理チャネル決定ルールが処理チャネル決定ルール３である場合は、処理チャネルのフラグＺＥＲＯ＿ＦＲＡＧをクリアする（Ｓ１８）。尚、処理チャネル決定ルールが決定ルール３ではない場合には処理（Ｓ１８）はスキップする。そして、全チャネルのＦＩＦＯメモリにデータが残っているか否かをチェック（Ｓ２０）し、残っていない場合は（Ｓ２０：ＮＯ）、処理を終了する（Ｓ２８）。ＴＲＡＮＳ＿ＳＩＺＥの割り当てが終わっていないチャネルが存在する場合は（Ｓ２０：ＹＥＳ）、処理チャネル決定ルールに従って再度処理チャネルを決定する（Ｓ６）。このとき割り当てが済んでいるチャネルは選択の対象にならない。
【００２９】
処理チャネルについて、ＴＲＡＮＳ＿ＳＩＺＥがＬＩＭＩＴ＿ＳＩＺＥ以上の場合（Ｓ１４：Ｎｏ）は、ＴＲＡＮＳ＿ＳＩＺＥにＬＩＭＩＴ＿ＳＩＺＥを代入する（Ｓ２２）。ＬＩＭＩＴ＿ＳＩＺＥは、初期状態（Ｓ２）ではネットワーク上の使用帯域の転送量の最大値を示す。その後処理が進み、チャネルのデータが割り当てられるたびに割り当てられた転送量を示すＴＲＡＮＳ＿ＳＩＺＥの分だけ減算される（Ｓ１６）。従って、この時点では、未だ割り当て可能な転送量の最大サイズを示すこととなる。ＴＲＡＮＳ＿ＳＩＺＥにＬＩＭＩＴ＿ＳＩＺＥを代入することにより、今回の転送タイミングで該当するチャネルにおける転送可能な転送量を示すこととなる、ＬＩＭＩＴ＿ＳＩＺＥ以上のデータ転送は、不可能だからである。
そして、処理が為されていないチャネルのＴＲＡＮＳ＿ＳＩＺＥをゼロとする（Ｓ２４）。次に、処理チャネル決定ルールが、決定ルール３の場合は、該ＴＲＡＮＳ＿ＳＩＺＥがゼロとされたチャネルのフラグＺＥＲＯ＿ＦＬＡＧをセットする（Ｓ２６）。尚、処理チャネル決定ルールが処理チャネル決定ルール３ではない場合には処理（Ｓ２６）はスキップする。以上で、処理を終了する（Ｓ２８）。
以上のように全てのチャネルのＴＲＡＮＳ＿ＳＩＺＥが決定されると、各チャネルでは割り当てられた転送量ＴＲＡＮＳ＿ＳＩＺＥに従ってＦＩＦＯメモリからデータを読出し、パケットを生成する。そして各パケットは送信部ＳＰを経由してネットワークへと送信される。ここまでを１サイクルとして、以降、ＣｙｃｌｅＳｔａｒｔイベントを検出するたびに上記フローを繰り返す。
【００３０】
本実施例によるデータサイズ制御の具体例について図５乃至図１０を用いて述べる。まず、ＩＥＥＥ１３９４バスにより転送するデータとして代表的な３種類のデータに関し、その転送量の時間変化について述べる。
【００３１】
図５に示す様に音声データＡｕｄｉｏは、時間により変動することなく、常に固定長のデータが転送され続けるという特徴がある。
【００３２】
図６に示す様にビデオカメラにより撮像される映像データＶｉｄｅｏは、フレーム単位でデータを転送するため、データ転送の間にブランキング期間が存在し、間歇的にデータが転送されるという特徴がある。
【００３３】
図７に示す様にＤＶＤやＢｌｕ−ｒａｙ  Ｄｉｓｃ（登録商標）のデータなど符号化技術によりエンコードされた符号化データＴＳ１を転送する場合、そのデータ転送量は時間により変動するという特徴がある。
【００３４】
また、図５、図６、図７、各々に時刻Ｔ１、Ｔ２、Ｔ３を示す。時刻Ｔ１時においては、時刻によりデータ転送量が変動する映像データＶｉｄｅｏおよびＴＳ１のデータ転送量が最大となっている。時刻Ｔ２時においては、時刻によりデータ転送量が変動するＴＳ１のデータ転送量がＴ１時に比べて減少している。時刻Ｔ３においては、時刻によりデータ転送量が変動するＶｉｄｅｏのデータ転送量がゼロとなっている。
【００３５】
音声データＡｕｄｉｏ、映像データＶｉｄｅｏ、符号化データＴＳ１および符号化データＴＳ１と同様の符号化データＴＳ２のデータ量について、図８に示す。音声データＡｕｄｉｏは固定長である。映像データＶｉｄｅｏのデータ量は、時刻Ｔ１、Ｔ２において最大値となり、時刻Ｔ３においてはゼロとなる。符号化データＴＳ１のデータ量は、時刻Ｔ１において最大値となる。
【００３６】
時刻Ｔ１、Ｔ２、Ｔ３において、パケットを送信する場合の各時刻におけるパケット構成について図示する。図９に、ＦＩＦＯメモリに入ってきた分だけデータの転送を行う従来の方式において、各時刻Ｔ１、Ｔ２、Ｔ３において転送される転送パケットを示す。従来の方式においては、時刻Ｔ１における転送量、すなわち、各チャネルの転送量のピーク値の和の転送帯域ＢＷ１を確保する必要がある。
【００３７】
図１０に本実施例に記載のデータサイズ制御部ＤＳＣを用いた場合のパケット構成について図示する。なお、処理チャネル決定ルールとして、処理チャネル決定ルール１を用いるとする。
【００３８】
時刻Ｔ１において、データレートが平均的に高い映像データＶＩＤＥＯおよび符号化データＴＳ１はＦＩＦＯメモリの使用量が多いため、ＦＩＦＯ使用率が高くなる結果、優先的に帯域が確保されている。図１０の場合においては、ＦＩＦＯメモリの使用量が少なく、ＦＩＦＯ使用率が低い符号化データＴＳ２の一部と、音声データＡｕｄｉｏについて帯域が割り当てられていない。
かかる場合においても、次の転送サイクル以降において、符号化データＴＳ２および音声データＡｕｄｉｏに係るＦＩＦＯメモリの使用量が増えた場合には、優先的に帯域を確保することができ、ＦＩＦＯ溢れを防止することができる。
【００３９】
時刻Ｔ２において、符号化データＴＳ１のデータレートが下がったために、符号化データＴＳ１に係るＦＩＦＯの使用量が下がったため、音声データＡｕｄｉｏおよび符号化データＴＳ２のデータが転送される。
【００４０】
時刻Ｔ３において、映像データＶＩＤＥＯのデータがゼロとなるため、ＶＩＤＥＯの帯域は確保されない。よって、この期間は符号化データＴＳ１およびＴＳ２ならびに音声データＡｕｄｉｏが転送される。
【００４１】
本実施例に記載のデータサイズ制御部ＤＳＣを用いた場合、該転送装置について確保する必要がある転送帯域は図１０に示す転送帯域ＢＷ２である。転送帯域ＢＷ２は、従来技術において確保する必要がある転送帯域ＢＷ１と比して減少しており、該転送装置について確保する転送帯域を低減することが出来る。
【００４２】
以下、本実施例の奏する作用効果について述べる。共通バスの全帯域は有限であり、アイソクロナス転送において、バスにつながる転送装置は、転送装置毎に転送帯域を確保する必要がある。従来、複数チャネルを送信する装置は、チャネル毎に、時間的に変動するデータ量の最大値の帯域を確保する必要があったが、本実施例では、時間的なデータ量の変動をチャネル間で分散させるため、最大値が平坦化されて余分な帯域確保が必要ない。従って、共通バスの帯域を他の装置に開放する事ができるため、有限な共通バスの帯域を有効に活用することができる。
【００４３】
また、例えば、映像データをストリーミングする場合、転送データの一部でも欠損すると正常な映像再生ができなくなる。共通バスの初期化などで、一時的に転送ができない状態になった場合、転送装置のＦＩＦＯメモリがオーバーフローを起こすとこのようなデータ欠損が生じる場合がある。本実施例では、映像データのような転送データの欠損が生じると不具合がおこるデータに対し、帯域割り当ての優先度を高く設定する事で、オーバーフローを抑止することができる。
【００４４】
確保した帯域以上の転送を行った場合、プロトコル違反になり、共通バス全体の通信機能に支障をきたすことになるため、確保した帯域以上のデータ転送を抑止するのは重要である。本実施例では、転送装置が確保した転送帯域の範囲内で、チャネル毎に帯域を分け合う事ができるため、確保した帯域以上のデータを転送する事が無い。さらに、いずれかのＦＩＦＯメモリに格納されたデータがオーバーフローしそうになった場合には、優先的に帯域を割り当ててオーバーフローを回避する。この場合も、確保した転送帯域の範囲内で転送帯域の割り当てを行うため、確保した帯域以上のデータを転送する事が無い。
【００４５】
時間的にデータ量が変動する複数のデータを転送する場合、それぞれのチャネルを監視し、データ量の増減をチャネル間で分散する処理は、例えばＩＥＥＥ１３９４規格においては、１２５μＳという短い周期で実行するため、急激なデータ量の変動にも対応できる。
【００４６】
転送チャネル決定ルール１では、ＦＩＦＯ使用率演算器ＦＵＡ乃至ＦＵＤにより得られるＦＩＦＯ使用率に基づき、転送帯域の割り当て処理を行うチャネルを決定する。これにより、全てのチャネルについて均等に、ＦＩＦＯメモリの溢れを防止することが可能となり、データ転送の抜けを防止することが出来る。
【００４７】
転送チャネル決定ルール２では、ユーザが任意の数のチャネルについて優先度を予め設定する。これにより、重要なデータを転送するチャネルについて、ユーザが優先度を高く設定することで、該チャネルに係るＦＩＦＯメモリの溢れを優先的に防止することが可能となり、該チャネルのデータ転送の抜けを防止することが出来る。
【００４８】
転送チャネル決定ルール３では、転送帯域が割り当てられなかったチャネルについて、フラグＺＥＲＯ＿ＦＬＡＧをセットする。該フラグＺＥＲＯ＿ＦＬＡＧがセットされているチャネルについて、次回のＣｙｃｌｅＳｔａｒｔイベントで優先的に転送帯域の割り当てが行われるようにすることで、チャネル間の公平性を担保することが出来る。
【００４９】
なお、本発明の趣旨を逸脱しない範囲内で種々の改良、変形が可能であることは言うまでもない。
【００５０】
なお、ＦＩＦＯメモリＦＡ乃至ＦＤは、データ保持部の一例である。また、ＩＥＥＥ１３９４によるデータ転送は、アイソクロナス転送の一例である。
【００５１】
以下、発明の諸態様を付記としてまとめる。
【００５２】
＜付記１＞
複数のデータをアイソクロナス転送により共通バスに転送するデータ転送装置であって、
前記データを保持するデータ保持部と、
前記共通バスへのデータ転送に先立ち前記データごとに転送帯域を割り当てる際、前記データに係る処理順序を決定する処理データ決定部と、
前記共通バスに確保されている許容帯域の範囲内で、前記処理データ部により決定された順に前記転送帯域を割り当てるフロー制御部と、を有することを特徴とするデータ転送装置。
＜付記２＞
前記処理データ決定部は、前記データのうち優先度の高い順に転送帯域を割り当てることを特徴とする付記１に記載のデータ転送装置。
＜付記３＞
前記フロー制御部により前記データに前記転送帯域が割り当てられる際、前記許容帯域から前記転送帯域を減じて更新する帯域更新部を有する事を特徴とする付記１又は２に記載のデータ転送装置。
＜付記４＞
前記データ保持部の保持するデータ量と前記データ保持部の保持可能な最大のデータ量との比を前記データ保持部の使用率として計算するデータ保持部使用率演算器と、
前記使用率が高いほど前記優先度を高く設定する処理データ決定部と、を備えることを特徴とする付記１乃至３の何れかに記載のデータ転送装置。
＜付記５＞
前記転送帯域の割り当てが行われないデータについて優先フラグをセットする優先フラグ管理部を備え、
該優先フラグがセットされたデータについて優先度を高く設定することを特徴とする付記１乃至４の何れかに記載のデータ転送装置。
＜付記６＞
前記優先度についての設定を保持する優先度保持レジスタを備えることを特徴とする付記１乃至５の何れかに記載のデータ転送装置。
＜付記７＞
前記優先度保持レジスタは、一又は複数のデータに係る前記優先度を予め定められた値に設定し、保持することを特徴とする付記１乃至６の何れかに記載のデータ転送装置。
＜付記８＞
複数のデータをアイソクロナス転送により共通バスに転送するデータ転送方法であって、
前記データを保持するステップと、
前記共通バスへのデータ転送に先立ち前記データごとに前記転送帯域を割り当てる際、前記データのうち優先度の高い順に、前記共通バスに確保されている許容帯域の範囲内で、前記転送帯域を割り当てるステップと、
前記転送帯域を割り当てるステップにより割り当てられた前記転送帯域を減じて前記許容帯域を更新するステップと、を有することを特徴とするデータ転送方法。 
【符号の説明】
【００５３】
ＤＳＣ  データサイズ制御部
ＦＡ乃至ＦＤ  ＦＩＦＯメモリ
ＳＰ  送信部
ＰＧ  パケット生成部
ＦＵＡ  ＦＩＦＯ使用率演算器
ＣＬＲ  サイズ設定レジスタ
ＦＣＳ  フロー制御シーケンサ
ＣＲ  設定レジスタ
ＴＳＲ  転送量保持レジスタ
ＬＳＲ  残りの転送量を保持するレジスタ
【図１】
2011217258.tif 000003
【図２】
2011217258.tif 000004
【図３】
2011217258.tif 000005
【図４】
2011217258.tif 000006
【図５】
2011217258.tif 000007
【図６】
2011217258.tif 000008
【図７】
2011217258.tif 000009
【図８】
2011217258.tif 000010
【図９】
2011217258.tif 000011
【図１０】
2011217258.tif 000012