(57)【要約】【課題】  伝送レートの異なる複数のデータパケットを伝送レートに基づいて効率良く送信する多重送信制御方法を提供する。【解決手段】  伝送レートの異なる複数のデータパケットを、時分割多重により多重化して出力する多重送信制御方法であって、データパケット夫々に対し、伝送レートに応じて優先度を設定し、優先度を、優先的に伝送された伝送レートのデータパケット程低くなるように変更し、優先度の変更度を、伝送レートが高いデータパケット程小さくなるように設定し、優先度に基づいて、伝送すべきデータパケットを選択する。【選択図】  図２
2006174282.tif 000002
【特許請求の範囲】
【請求項１】
伝送レートの異なる複数のデータパケットを、時分割多重により多重化して出力する多重送信制御方法であって、
前記データパケット夫々に対し、前記伝送レートに応じて優先度を設定し、
前記優先度を、優先的に伝送された前記伝送レートの前記データパケット程低くなるように変更し、
前記優先度の変更度を、前記伝送レートが高い前記データパケット程小さくなるように設定し、
前記優先度に基づいて、伝送すべき前記データパケットを選択することを特徴とする多重送信制御方法。
【請求項２】
前記優先度は、前記データパケット夫々に対して設定された送信ポイントであり、
前記データパケットが出力される毎に、出力された前記データパケットの送信ポイントに、前記伝送レートに応じて予め設定されたポイントを加算したものを、出力された前記データパケットと同じ前記伝送レートを有する前記データパケットの前記送信ポイントとして設定することを特徴とする請求項１に記載の多重送信制御方法。
【請求項３】
前記伝送レートが所定値より低い前記データパケットの入力頻度が、所定入力頻度より低下した場合に、所定期間、前記入力頻度が低下した前記伝送レートの前記データパケットに割り当てられた送信権を、再度他の前記伝送レートの前記データパケットに割り当てることを特徴とする請求項１または２に記載の多重送信制御方法。
【請求項４】
前記優先度の変更度は、前記伝送レート毎に変更可能であることを特徴とする請求項１から３のいずれか１項に記載の多重送信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、伝送レートの異なる複数のデータパケットを、時分割多重により多重化して出力する多重送信制御方法に関する。
【背景技術】
【０００２】
従来、伝送レートの異なる複数のデータパケットを時分割多重で送信するシステムでは、基本的にデータパケットは転送順に制御されており、リアルタイム性が要求される映像データのように、高い伝送レートが必要なデータパケットを優先して送信する場合には、ＣＰＵの割り込み処理によって高い伝送レートが必要なデータパケットの処理を先行させる。しかし、伝送レートが高いデータパケットが複数存在する場合、ソフトウエアの処理が複雑化し、特にリアルタイム性が要求される映像データでは、ＣＰＵの性能によってその処理が間に合わないという問題があった。仮に、高性能のＣＰＵを使用して処理が間に合ったとしても、高性能ＣＰＵの使用によるシステムのコスト高が問題となった。
【０００３】
このような従来技術に対し、高い伝送レートが必要なデータパケットを優先して送信する技術には、例えば、通信プロセスに優先順位を設定してデータパケットを送信する技術がある（例えば、特許文献１参照）。また、データパケットの伝送をハードウエアで制御する技術として、例えば、優先順位の高いデータパケットを送信する期間を、データパケットを送信するクロック数で予め設定して、残りの期間をその他の優先順位の低いデータパケットに割り当てる技術がある（例えば、特許文献２参照）。
【０００４】
【特許文献１】特開平６−１３３００５号公報
【特許文献２】特開２００３−２７３９２０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記特許文献１の技術では、データパケットは、予め設定された優先度に従って最も優先度の高いデータパケットから送信されるが、優先度の高いデータパケットが連続して大量に入力されると、優先度の低いデータパケットは送信権が得られず常に待機状態となる虞があるという問題があった。また、特許文献２の技術では、データパケットを送信するクロック数で優先データパケットを送信する期間を予め固定的に設定して、残りの期間をその他の優先順位の低いデータパケットに割り当てるため、優先順位の低いデータパケットの入力頻度が低下して送信すべきデータパケットが存在しない場合に、何れのデータパケットも送信されず優先データパケットが送信待ち状態になってしまう問題があった。
【０００６】
本発明は、上記問題点に鑑みてなされたものであり、伝送レートの異なる複数のデータパケットを伝送レートに基づいて効率良く送信する多重送信制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するための本発明に係る多重送信制御方法は、伝送レートの異なる複数のデータパケットを、時分割多重により多重化して出力する多重送信制御方法であって、前記データパケット夫々に対し、前記伝送レートに応じて優先度を設定し、前記優先度を、優先的に伝送された前記伝送レートの前記データパケット程低くなるように変更し、前記優先度の変更度を、前記伝送レートが高い前記データパケット程小さくなるように設定し、前記優先度に基づいて、伝送すべき前記データパケットを選択することを特徴とする。
【０００８】
上記本発明に係る多重送信制御方法は、更に、前記優先度は、前記データパケット夫々に対して設定された送信ポイントであり、前記データパケットが出力される毎に、出力された前記データパケットの送信ポイントに、前記伝送レートに応じて予め設定されたポイントを加算したものを、出力された前記データパケットと同じ前記伝送レートを有する前記データパケットの前記送信ポイントとして設定することを特徴とする。
【０００９】
また、上記本発明に係る多重送信制御方法は、前記伝送レートが所定値より低い前記データパケットの入力頻度が、所定入力頻度より低下した場合に、所定期間、前記入力頻度が低下した前記伝送レートの前記データパケットに割り当てられた送信権を、再度他の前記伝送レートの前記データパケットに割り当てることを特徴とする。
【００１０】
更に、上記本発明に係る多重送信制御方法は、前記優先度の変更度は、前記伝送レート毎に変更可能であることを特徴とする。
【００１１】
ここで、本発明に係る多重送信方法は、複数のデータパケットを時分割多重で送信する装置に適用され、高い伝送レートが必要なデータパケットを優先的に送信するために夫々のデータパケットに優先度を設定して、夫々のデータパケットが必要とする伝送レートを確保して送信を行なうように、ハードウエアによりデータパケットを制御する。また、優先度は、伝送レートの異なる複数のデータパケットについて、例えば、リアルタイム性が要求される映像データ等、高い伝送レートが必要なデータパケットから高い優先度を設定する。
【００１２】
本発明に係る多重送信制御方法によれば、夫々のデータパケットに優先度及びその変更度を設定し、優先度及びその変更度をデータパケットの伝送状態に応じて適宜変更することにより、夫々のデータパケットに必要な伝送レートを維持しながら効率良く、複数のデータパケットを時分割多重で送信することができる。
【００１３】
また、従来、データパケットは、予め設定された優先度に従って最も優先度の高いデータパケットから送信されるが、優先度が固定的に設定されているため、優先度の最も高いデータパケットが連続して大量に入力されると、優先度の低いデータパケットは送信権が得られず常に待機状態となる虞がある。そこで、本発明に係る多重送信制御方法では、優先度及びその変更度を設定することにより、ある一定期間における夫々のデータパケットに対する送信権の獲得時間比率を設定するように構成する。そして、優先度の低いデータパケットに対しても、所定期間、送信権が与えられるのを確保する為に、夫々のデータパケットに設定された優先度及びその変更度を適宜変更する。これによって、優先度の低いデータパケットに対しても一定期間内に所定の比率で送信権が与えられることとなり、効率よくデータパケットを送信することができる。
【００１４】
更に、優先度の低い、即ち、高い伝送レートを必要としないデータパケットの入力頻度が低下した場合に、ある一定期間、当該データパケットに割り当てる送信権を他の優先度の高いデータパケットに割り当てることで、優先度の低いデータパケットが入力されていないときに送信権が付与されるのを防止し、優先度の低いデータパケットの伝送効率を維持しながら、優先度の高いデータパケットの伝送効率を上げることができる。また、優先度の変更度を伝送レート毎に変更可能にしたので、送信権の獲得時間比率を、ソフトウエアで適宜変更することができる。
【発明を実施するための最良の形態】
【００１５】
本発明に係る多重送信制御方法（以下、適宜「本発明方法」と称す。）の実施の形態について、図面を用いて説明する。
【００１６】
本実施形態に係る多重送信制御方法は、図１に示すように、伝送レートの異なる複数のデータパケットを受信し、時分割多重により多重化して出力するＣＰＵを内蔵したＬＳＩに適用される。ＣＰＵ内蔵ＬＳＩ２は、図１に示すように、ＣＰＵ内蔵ＬＳＩ２を動作させる為のプログラムを格納するフラッシュメモリ１、及び、データパケットの一例としての映像データを格納したデータパケットソース３に接続されており、データパケットソース３からの映像データを受信するためのポートａ、ポートｂ及びポートｃを備えている。更に、ＣＰＵ内蔵ＬＳＩ２は、ＣＰＵ２１、送信データ選択回路２２、映像データを処理するデータパケット処理回路２３、映像データを格納するデータバッファメモリ２４、映像データのデータパケットソース３から入力されるデータパケットを受信するメモリとしてのＦＩＦＯ（Ｆｉｒｓｔ−ｉｎ  Ｆｉｒｓｔ−ｏｕｔ）２５、及び、送信データ選択回路２２で選択されたデータパケットを時分割多重で送信する出力ポート２６から構成されている。
【００１７】
本実施形態では、３種類の伝送レートの異なるデータパケットをポートａ、ポートｂ及びポートｃから受信した場合について説明する。ここで、ポートａ、ポートｂ及びポートｃから受信したデータパケットは、先ず、ＬＳＩ２内のＦＩＦＯ２５に一時的に格納される。ＦＩＦＯ２５にデータパケットが蓄積されると、データパケット処理回路２３はＦＩＦＯ２５内のデータパケットをバッファメモリ２４に格納する。バッファメモリ２４に格納されたデータパケットは、送信データ選択回路２２において選択された順番でデータパケット処理回路２３によって読み出され、時分割多重で出力ポート２６に出力される。
【００１８】
次に、送信するデータパケットを選択する送信データ選択回路２２の動作について具体的に説明する。
【００１９】
送信データ選択回路２２は、各ポートの伝送レートに応じて、データパケットに対し絶対優先度を設定する。ここで、本実施形態では、ポートａから入力されるデータパケットが最も高い伝送レートが必要であり、ポートｂ、ポートｃの順に高い伝送レートが必要とされると仮定する。従って、ポートａ、ポートｂ及びポートｃから入力される３種類のデータパケットの絶対優先度は、伝送レートに応じて、ポートａ、ポートｂ、ポートｃの順で高くなるように（ポートａ＞ポートｂ＞ポートｃとなるように）設定する。尚、各データパケットに対して設定される優先度は、送信ポイントとして付与され、その値の小さいものが優先度が高くなる。絶対優先度とは、送信ポイントが同じデータパケット間での優先順位を決定するものである。
【００２０】
次に、前述したポートａ、ポートｂ及びポートｃから入力される各データパケットの重み付け（優先度の変更度の設定）について説明する。各データパケットの重み付けは、データパケットが送信される毎に加算されるポイント制で行なう。ここでは、送信するデータパケットの選択にあたって、設定されたポイント数（送信ポイント）が少ないデータパケットを選択するように構成する。送信データ選択回路２２は、データパケットの各送信タイミングで、送信ポイントの最も低いデータパケットを判定し、複数判定されたときには、その内の優先度が最も高いデータパケットに対し送信権を与え、出力ポート２６に選択されたデータパケットを出力する。このため、送信ポイントの変更度が小さい伝送レート程、送信権の獲得比率が高くなる。
【００２１】
本実施形態では、送信ポイントの変更度として、伝送レートが高いデータパケット程、送信権の獲得比率が高くなるように、加算されるポイント数を小さく設定する。具体的には、ポートａのデータパケットには“１ポイント”、ポートｂのデータパケットには“５ポイント”、ポートｃのデータパケットには“１０ポイント”を設定する。更に、このポイント（変更度に相当）は、優先的に伝送された伝送レートのデータパケット程、送信権の獲得比率が低くなるように、各データパケットの送信が完了する度に送信ポイントに加算される。詳細には、ポートａのデータパケットに設定される送信ポイントは、送信完了する度に“０→１→２→３”、ポートｂのデータパケットに設定される送信ポイントは“０→５→１０→１５”、ポートｃのデータパケットに設定される送信ポイントは“０→１０→２０→３０”と変化する。
【００２２】
ここで、図２は、送信データ選択回路２２の動作フローを示しており、図３は、本実施形態における各ポートの送信ポイントと出力ポート２６に出力されるデータパケットの推移を示している。
【００２３】
図３において、時間軸は出力ポート２６に時分割多重で出力されるデータパケットの出力タイミングを表し、ここでは、出力ポート２６から一度に送信できる送信タイミングをｔ０〜ｔ２０ としている。また、出力データのａ０…ａｎはポートａから入力されたデータパケットを表し、ｂ０…ｂｎはポートｂから入力されたデータパケットを表し、ｃ０…ｃｎはポートｃから入力されたデータパケットを表す。送信タイミングｔ０における各ポートの送信ポイント（優先度の初期値）は、“０”である。
【００２４】
送信データ選択回路２２は、先ず、送信タイミングｔ０において、各ポートのデータパケットに設定された送信ポイントの比較を行なう。本実施形態では、各ポートの絶対優先度が、ポートａ＞ポートｂ＞ポートｃに設定されているので、最初に絶対優先度の最も高いポートａのデータパケットに設定された送信ポイントが最小であるかを判定する（ステップＳ１）。ここで、図３に示すように、送信タイミングｔ０では、各ポートのデータパケットの送信ポイントは全て初期値の“０”である為、ポートａのデータパケットの送信ポイントが最小であると判定する（ステップＳ１でＹＥＳ分岐）。次に、ポートａの送信待ちのデータパケットがバッファメモリ２４に格納されているかを判定する（ステップＳ２）。データが格納されていると判定すれば（ステップＳ２でＹＥＳ分岐）、ポートａの最初のデータパケット“ａ０”を出力ポート２６に出力する（ステップＳ３）。そして、出力したデータパケット“ａ０”の送信ポイント“０”に、ポートａの送信ポイントの変更度として設定された“１ポイント”を加算し、ポートａの次のデータパケット“ａ１”の送信ポイントを“１”に設定し（ステップＳ４）、ステップＳ１に移行する。
【００２５】
続いて、次の送信タイミングｔ１で送信するデータパケットの選択を行なう。送信タイミングｔ１においては、ポートａのデータパケット“ａ１”に設定された送信ポイントは最小ではないため（ステップＳ１でＮＯ分岐）、ポートａの次に絶対優先度の高いポートｂのデータパケットに設定された送信ポイントが最小であるかの判定を行う（ステップＳ５）。ここでは、ポートｂのデータパケット“ｂ０”に設定された送信ポイントは初期値の“０”であるため、この送信ポイントが最小であると判定する（ステップＳ５でＹＥＳ分岐）。次に、ポートｂの送信待ちデータパケットがバッファメモリ２４格納されているかを判定する（ステップＳ６）。データが格納されていると判定すれば（ステップＳ６でＹＥＳ分岐）、ポートｂのデータパケット“ｂ０”を出力ポート２６に出力する（ステップＳ７）。そして、データパケット“ｂ０”の送信ポイント“０”に、ポートｂの送信ポイントの変更度として設定された“５ポイント”を加算し、ポートｂの次のデータパケット“ｂ１”の送信ポイントを“５”に設定し（ステップＳ８）、再びステップＳ１に移行する。
【００２６】
続いて、次の送信タイミングｔ２で送信するデータパケットの選択を行なう。送信タイミングｔ２においては、ステップＳ１においてポートａのデータパケット“ａ１”に設定された送信ポイントは最小でないと判定され、ステップＳ５においてポートｂのデータパケット“ｂ１”に設定された送信ポイントも最小でないと判定されるため、ポートｃのデータパケットに設定された送信ポイントが最小であるかの判定を行う（ステップＳ９）。ここでは、ポートｃのデータパケット“ｃ０”に設定された送信ポイントは初期値の“０”であるため、この送信ポイントが最小であると判定し（ステップＳ９でＹＥＳ分岐）、ポートｃの送信待ちのデータパケットがバッファメモリ２４に格納されているかを判定する（ステップＳ１０）。データが格納されていると判定すれば、ポートｃのデータパケット“ｃ０”を出力ポート２６に出力する（ステップＳ１１）。そして、データパケット“ｃ０”の送信ポイント“０”に、ポートｃの送信ポイントの変更度として設定された“１０ポイント”を加算し、ポートｃの次のデータパケット“ｃ１”の送信ポイントを“１０”に設定し（ステップＳ１２）、再びステップＳ１に移行する。
【００２７】
引き続き、次の送信タイミングｔ３で送信するデータパケットの選択を行なう。送信タイミングｔ３では、ポートａのデータパケット“ａ１”の送信ポイントが最小である為（ステップＳ１）、ポートａの２番目のデータパケット“ａ１”を出力ポート２６に出力し（ステップＳ３）、データパケット“ａ１”を加算処理して、ポートａの次のデータパケット“ａ２”の送信ポイントを“２”に設定する（ステップＳ４）。続いて、ステップ１に移行し、次の送信タイミングｔ４で送信するデータパケットの選択を行う。
【００２８】
以降、同様にして、図３に示すとおり、出力ポート２６にポートａ、ポートｂ及びポートｃの各ポートのデータパケットが時分割多重で出力される。
【００２９】
尚、本実施形態では、設定されたポイント数（送信ポイント）が少ないデータパケットを選択するように構成したが、設定されたポイント数が大きいデータパケットを選択するように構成を変更しても構わない。この場合、データパケットが送信される毎に、送信されたデータパケットの送信ポイントを変更度（ポイント）だけ減算するようにすればよい。
【００３０】
次に、本発明に係る多重送信制御方法の別実施形態について説明する。上記実施形態では、送信権が与えられた際に、送信待ちデータが存在している場合について説明したが、高い伝送レートを必要としないデータパケットについては、送信待ちデータが存在しない場合がある。本実施形態では、このような場合に、送信待ちデータが存在しないと判定されたポートの送信権を所定期間（本実施形態では送信タイミングｔ２０まで）削除する。
【００３１】
本実施形態では、絶対優先度の低いポートｃが送信権の削除対象となる。仮に、図３の送信タイミングｔ２において、送信すべきポートｃのデータパケットが存在しない場合（ステップＳ１０でＮＯ分岐）、送信タイミングｔ２０が経過するまで送信権を削除する。このため、送信権の削除を行わない場合、ポートｃは送信タイミングｔ１５でデータパケットの送信権を得られるが、本実施形態では、送信権が割り当てられないため、代わりに絶対優先度が高く、且つ送信ポイントが最小であるポートａのデータパケット“ａ１１”が出力されることになる。即ち、ステップＳ１において、ポートｃのデータパケットの送信ポイントを比較対象から除外し、ポートａのデータパケット“ａ１１”の送信ポイントと、ポートｂのデータパケット“ｂ３”の送信ポイントとを比較して判定する。尚、本実施形態では、所定の送信タイミングが経過するまで送信権を削除したが、予め設定した送信タイミング数が経過するまで送信権を削除する構成としても良い。
【００３２】
これにより、本実施形態では、絶対優先度の低いデータパケットの入力頻度が一時的に低くなった場合に、絶対優先度の高いデータパケットに送信権を割り当て、絶対優先度の高いデータパケットの送信効率を上げる効果が期待できる。
【００３３】
尚、各ポートの送信権獲得比率は、最初に設定した送信ポイントの変更度により決定される。ここでは、各ポート（ポートａ、ポートｂ、ポートｃ）に入力されるデータパケットが必要とする伝送レートに基づいて、送信ポイントの変更度をソフトウエアで適宜変更可能に構成してあり、各ポートの送信権獲得比率を変更したい場合、特に、リアルタイム性が要求される複数の映像データを扱う場合に有効となる。
【００３４】
上述したように、本発明方法を、リアルタイム性が必要な複数の映像データを時分割多重で送信するシステムに適用し、データパケット夫々に必要な伝送レートに応じて優先度（送信ポイント）とその変更度（加算ポイント数）とを設定することにより、効率良くデータパケットを送信することができ、高品質の映像伝送が可能となる。また、優先度とその変更度により、夫々のデータパケットに対する送信権の獲得時間比率を設定するため、複数の伝送レートの異なるデータパケットに対しても対応が可能となる。更に、絶対優先度の低い（高い伝送レートを必要としない）データパケットの入力頻度が低下した場合、所定期間、当該データパケットの送信権を削除し、他の絶対優先度の高いデータパケットに送信権を割り当てることで、絶対優先度の高いデータパケットの伝送効率を上げる効果が期待できる。
【００３５】
尚、上記実施形態において、優先度を送信ポイント、その変更度を加算ポイントで表す構成を例示したが、例えば、優先度を送信権獲得比率を変数とする関数で表し、送信権を獲得する毎の優先度の変化の度合いを伝送レートに応じて変化させるようにしても構わない。
【００３６】
また、上記実施形態において、本発明方法を実行する、ＣＰＵ内蔵ＬＳＩ２の構成については、図１に示す回路構成に限定されるものではない。
【図面の簡単な説明】
【００３７】
【図１】本発明に係る多重送信制御方法を適用したＣＰＵ内蔵ＬＳＩ及びその周辺装置を示す概略システム構成図
【図２】本発明に係る多重送信制御方法の一実施形態におけるフロー図
【図３】本発明に係る多重送信制御方法の一実施形態における各データパケットの推移を表す図
【符号の説明】
【００３８】
１    フラッシュメモリ
２    ＣＰＵ内蔵ＬＳＩ
３    データパケットソース
２１  ＣＰＵ
２２  送信データ選択回路
２３  データパケット処理回路
２４  データバッファメモリ
２５  ＦＩＦＯ
２６  出力ポート
【図１】
2006174282.tif 000003
【図２】
2006174282.tif 000004
【図３】
2006174282.tif 000005