[go: up one dir, main page]

JP2004064340A - 帯域幅管理装置及び方法 - Google Patents

帯域幅管理装置及び方法 Download PDF

Info

Publication number
JP2004064340A
JP2004064340A JP2002218601A JP2002218601A JP2004064340A JP 2004064340 A JP2004064340 A JP 2004064340A JP 2002218601 A JP2002218601 A JP 2002218601A JP 2002218601 A JP2002218601 A JP 2002218601A JP 2004064340 A JP2004064340 A JP 2004064340A
Authority
JP
Japan
Prior art keywords
bandwidth
unit
data
management device
bus
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
JP2002218601A
Other languages
English (en)
Inventor
Hideo Ozeki
秀夫 大関
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2002218601A priority Critical patent/JP2004064340A/ja
Publication of JP2004064340A publication Critical patent/JP2004064340A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Abstract

【課題】データ伝送システムに収容される全てのノードがより平等に帯域幅を獲得できる機会を与えることが可能な帯域幅管理装置を提供することである。
【解決手段】帯域幅管理装置において、帯域幅管理部152は、データ通信に現在割り当てられている帯域幅を管理する。帯域幅導出部151は、データ通信で現在使われている帯域幅を導出する。帯域幅変更制御部153は、帯域幅導出部151で導出された帯域幅に基づいて、帯域幅管理部152で管理されており前記データ通信に割り当てられている帯域幅を変更する。
【選択図】    図6

Description

【0001】
【発明の属する技術分野】
本発明は、帯域幅管理装置及び方法に関し、より特定的には、バス形式のトポロジ上で、複数のノード間でデータ通信を行う際、各データ通信に割り当てる帯域幅を管理する帯域幅管理装置及び方法に関する。
【0002】
【従来の技術】
IEEE(Institute of Electrical and Electronics Engineers)1394 において、ノード間ではアイソクロナスモード(以下、同期通信モードと称する)によるデータ通信を行うことができる。このような同期通信モードにおいて、効率的にデータ通信を行うことができるように、様々なデータ伝送システムが提案されている。以下、特開平11−275122に開示されているものを例に取り上げて説明する。従来のデータ伝送システムは、少なくとも送信ノード及び受信ノードを1つずつ備えており、さらに、IRM(Isochoronous Resource Manager )を備えている。
【0003】
次に、送信ノードは、まず、バス上の他ノードのIR(Isochoronous Resource)をモニタして、バス帯域情報を検出する。その後、送信ノードは、検出したバス帯域情報に基づいてバスの占有帯域幅が、現在保持している値から変化したか否かを判定する。占有帯域幅が変化している場合、送信ノードは、同期通信モードで送信するデータの伝送可能な圧縮率を演算し保持し、さらに、同期通信モードでの使用可能な帯域幅を演算して、保持する。送信ノードは、IRMと非同期通信モード(アシンクロナスモード)で通信を行い、現在同期通信モードで使用している帯域幅を、演算により求めた使用可能な帯域幅に変更するよう要求する。
【0004】
その後、送信ノードは、使用帯域幅の変更がIRMにより許可されたか否かを判定し、許可されていれば、演算により求めた圧縮率で、送信すべきデータを圧縮する。さらに、送信ノードは、同期通信モードで使う帯域幅を、IRMにより許可された値に再設定し、再設定された帯域幅に対応して、同期通信モードの帯域データを更新し、保持する。その後、送信ノードは、同期通信モードにおいて、再設定された帯域幅を使って、演算により求めた圧縮率で圧縮されたデータを、受信ノードに送信する。
【0005】
【発明が解決しようとする課題】
しかしながら、上述のデータ伝送システムでは、送信ノードに割り当てられた帯域を解放しないするには、送信ノードが自発的にその旨をIRMに申告して、返却する必要がある。従って、一旦割り当てられた帯域幅はなかなか解放されないことになり、その結果、新たに同期通信モードでデータ通信を行いたいノードは、自ノードが申告した帯域幅を同期通信モードで使える可能性が少ないという問題点があった。
【0006】
それ故に、本発明の目的は、データ伝送システムに収容される全てのノードがより平等にかつ最適な帯域幅を獲得できる機会を与えることが可能な帯域幅管理装置を提供することである。
【0007】
【課題を解決するための手段】
第1の発明は、バス上に接続された複数のノード間でデータ通信に使われる帯域幅を管理するための帯域幅管理装置であって、データ通信に現在割り当てられている帯域幅を管理する帯域幅管理部と、データ通信で現在使われている帯域幅を導出する帯域幅導出部と、帯域幅導出部で導出された帯域幅に基づいて、帯域幅管理部で管理されておりデータ通信に割り当てられている帯域幅を変更する帯域幅変更制御部とを備える。
【0008】
第2の発明は第1の発明に従属しており、帯域幅変更制御部により変更された帯域幅を、各ノードに通知するための電文を作成する帯域幅変更通知部をさらに備える。
【0009】
第3の発明は第1の発明に従属しており、帯域幅変更制御部は、帯域幅導出部で導出された帯域幅と、帯域幅管理部で管理されておりデータ通信で現在使われている帯域幅との差の絶対値を算出する絶対値算出部と、絶対値算出部で算出された絶対値が予め定められた値以上である場合、帯域幅管理部で管理されている帯域幅を、帯域幅導出部で導出された帯域幅に変更する帯域幅変更部とを含む。
【0010】
第4の発明は第1の発明に従属しており、帯域幅管理装置は、バス上で伝送されるデータを受信するバス駆動ドライバと、バス駆動ドライバの消費電力を検出する消費電力検出部とをさらに備える。帯域幅導出部は、消費電力検出部で検出された消費電力に基づいて、データ通信で現在使われている帯域幅を導出する。
【0011】
第5の発明は第1の発明に従属しており、帯域幅管理装置は、バス上を伝送されてくる同期データを格納する同期データバッファと、同期データバッファの書き込みアドレスを制御するアドレス制御部と、アドレス制御部から書き込みアドレスに基づいて、同期データバッファにおいて同期データが書き込まれた時のアドレス変化量、又は同期データバッファに書き込まれた同期データの長さを算出するアドレス情報通知部とをさらに備えている。帯域幅導出部は、アドレス情報通知部で算出されたアドレス変化量又は同期データの長さに基づいて、データ通信で現在使われている帯域幅を導出する。
【0012】
第6の発明は第1の発明に従属しており、帯域幅管理装置は、バス上を伝送されてくる同期データを格納するFIFOバッファと、FIFOバッファの書き込みアドレスを制御する深さカウンタ制御部と、深さカウンタ制御部から書き込みアドレスに基づいて、FIFOバッファの深さをカウントする深さカウンタ情報通知部とをさらに備えている。帯域幅導出部は、深さカウンタ情報通知部でカウントされた深さに基づいて、データ通信で現在使われている帯域幅を導出する。
【0013】
第7の発明は第1の発明に従属しており、帯域幅管理装置は、バス上を伝送されてくる同期データを受け取り、同期データがバス上を伝送されていないNULLデータを分離するNULLデータ分離部と、NULLデータ分離部で分離されたNULLデータの開始から末尾までの時間区間をカウントするNULLデータカウンタとをさらに備えている。帯域幅導出部は、NULLデータカウンタでカウントされた時間区間に基づいて、データ通信で現在使われている帯域幅を導出する。
【0014】
第8の発明は、バス上に接続された複数のノード間でデータ通信に使われる帯域幅を管理するための方法であって、データ通信で現在使われている帯域幅を導出する帯域幅導出ステップと、帯域幅導出ステップで導出された帯域幅に基づいて、予め管理されておりかつデータ通信に割り当てられている帯域幅を変更する帯域幅変更制御ステップとを備える。
【0015】
【発明の実施の形態】
図1は、本発明の第1の実施形態に係る帯域幅管理装置1a を備えるデータ伝送システムSの構成を示すブロック図である。図1において、データ伝送システムSはバス型トポロジを有しており、共用される伝送媒体(バス)2に、複数のノード(図示は2ノード)31 及び32 が接続されている。以上のような、複数のノード31 及び32 の間ではIEEE1394により規定されている同期通信が行われる。また、図示は省略しているが、データ伝送システムSに接続される他の複数のノード間でも、同様の同期通信が行われる。
【0016】
帯域幅管理装置1a は、データ伝送システムS上のいずれか1個のノード3(図1ではノード32 )に収容されており、各同期通信で使われる帯域幅BWasを管理する。このような帯域幅管理のため、帯域幅管理装置1a は、通信インタフェイス11と、データバッファ12と、通信コントローラ13と、データ収集部14と、バス管理部15とを備えている。
【0017】
通信インタフェイス11は主として、バス2を通じて受信したデータDを、データバッファ12に転送する。データバッファ12は、通信インタフェイス11から送られてくるデータDを格納し、上位層に渡す。通信インタフェイス11では一般的に、バス2からデータDを受信している最中に消費電力Pが増加する。この消費電力Pを使えば、現在バス2でどの程度の帯域幅BWavが使用されているかを簡易に求めることが可能となる。そのために、通信インタフェイス11は、自身の消費電力Pを検出して、データ収集部14に通知する。以上の処理のために、通信インタフェイス11は、図2に示すように、バス駆動ドライバ111と、消費電力検出部112とを備えている。バス駆動ドライバ111は、バス2からデータDを受信するためのハードウェアドライバであり、図3に示すように、レシーバ113を備えている。レシーバ113は、IEEE1394の規定に従って供給される電圧により駆動し、各データDをそのままデータバッファ12に送る。また、レシーバ113は、各データDに設定される同期信号Ssync(図4参照)をデータバッファ12及び消費電力検出部112に与え、さらに、消費電力検出部112に電流Iを与える。また、レシーバ113は、クロックCLKをデータバッファ12に与える。
【0018】
消費電力検出部112は、バス駆動ドライバ111の消費電力Pを検出するために、図5に示すように、I/V変換部114と、A/D変換部115と、消費電力積算部116と、消費電力通知部117とを含んでいる。I/V変換部114は、バス駆動ドライバ111と接続され、バス駆動ドライバ111から与えられる電流Iを、アナログの電圧Va に変換する。A/D変換部115は、I/V変換部114で変換された電圧Va を、デジタルの電圧値Vd に変換する。消費電力積算部116は、ソフトウェアで構成され、バス駆動ドライバ111からの同期信号Ssyncと、A/D変換部115からの電圧値Vd とを受け取る。消費電力積算部116は、受け取った同期信号Ssyncをトリガーとして、受け取った電圧値Vd の積算を開始する。消費電力積算部116は、次の同期信号Ssyncを受け取った時、それまでの積算値を消費電力Pとして消費電力通知部117に渡し、さらに、積算値をリセットする。消費電力通知部117は、受け取った消費電力Pをそのまま後段のデータ収集部14に渡す。
【0019】
通信コントローラ13は、データDの受信制御及び/又は送信制御を行う。データ収集部14は、通信インタフェイス11の消費電力通知部117により通知される消費電力Pを収集して、同期信号Ssync毎にバス管理部15に通知する。
【0020】
バス管理部15は、図6に示すように、帯域幅導出部151と、帯域幅管理部152と、帯域幅変更制御部153と、帯域幅通知部154とを含んでいる。帯域幅導出部151は、データ収集部14により通知された消費電力Pを使って、チャネル毎に、現在使われている帯域幅BWavを導出して、帯域幅変更制御部152に通知する。より具体的には、帯域幅導出部151は、ソフトウェアで構成されており、消費電力P対帯域幅BWavのマップMp−avを予め保持する。マップMp−avは、データ伝送システムSの運用前に、レシーバ113の消費電力Pと帯域幅BWavとの関係を調査することにより作成される。帯域幅導出部151は、マップMp−avを検索して、通知された消費電力P毎に帯域幅BWavを導出する。
【0021】
帯域幅管理部152は、各チャネルに現在割り当てられている帯域幅BWasを管理する。
【0022】
帯域幅変更制御部153は、帯域幅導出部151により帯域幅BWavが通知される度に、帯域幅変更処理を行う。より具体的には、帯域幅変更制御部153は、通知された帯域幅BWavの中から、該当する値を選択する。その後、帯域幅変更制御部153は、帯域幅管理部152から、選択した帯域幅BWavと同じチャネルに現在割り当てられている帯域幅BWasを取得する。さらに、帯域幅変更制御部153は、選択した帯域幅BWavと、取得した帯域幅BWasとの差分値の絶対値ΔBWを算出し、算出した絶対値ΔBWが所定値Vth以上か否かを判断する。ここで、所定値Vthは、データ伝送システムSの設計要件に応じて自由に設定できる値である。絶対値ΔBWが所定値Vth以上であれば、帯域幅変更制御部153は、帯域幅管理部152で管理されている帯域幅BWasの値を、選択した帯域幅BWavの値に更新する。逆に、絶対値ΔBWが所定値Vth以上でなければ、帯域幅BWasの更新は行われない。以上の処理を、帯域幅変更制御部153は、現在使われているチャネル全てについて実行する。帯域幅変更制御部153は、全チャネルに対して帯域幅変更処理を行った後、その旨を帯域幅通知部154に通知する。
【0023】
帯域幅通知部154は、帯域幅変更制御部153からの通知に応答して、IEEE1394で規定されている帯域幅通知プロトコルに従って、帯域幅管理部152により管理されている更新後の帯域幅BWasを各ノード3に同報するための電文EMを生成し、通信コントローラ13に渡す。通信コントローラ13は、通信インタフェイス12を通じて、受け取った電文EMをバス2に送出する。
【0024】
次に、図7を参照して、以上の構成の帯域幅管理装置1a の動作について説明する。データ伝送システムSでは、同期通信に先だって、帯域幅の自己申告及び割り当てが行われる。この処理については、周知であるため、簡単に説明する。まず、同期通信を行いたい各ノード3は、IEEE1394のプロトコルに従って、同期通信で自ノード3が使いたい帯域幅BWdsを帯域幅管理装置1a に申告する。帯域幅管理装置1a では、IEEE1394のプロトコルに従って、各ノード3に対して、チャネル及び帯域幅BWasの双方を割り当てた後、それらを帯域幅管理部152に設定する。ここで、帯域幅管理装置1a により割り当てられる帯域幅BWasは、必ずしも、自己申告された帯域幅BWdsと同じになるとは限らない。その後、帯域幅管理装置1a は、IEEE1394のプロトコルに従って、割り当てたチャネル及び帯域幅BWasを各ノード3に同報する。
【0025】
以上の帯域幅の自己申告及び割り当てが完了すると、データ伝送システムSでは、同期通信が可能になる。同期通信の最中、帯域幅管理装置1a において、通信インタフェイス11は、受信データDから算出した消費電力Pをデータ収集部14に転送する(図7;ステップS11)。データ収集部14は、通信インタフェイス11の消費電力通知部117により通知される消費電力Pを収集して、収集した消費電力Pを同期信号Ssync毎にバス管理部15の帯域幅導出部151に通知する(ステップS12)。帯域幅導出部151は、通知されたチャネル毎に、現在使われている帯域幅BWavを算出して、帯域幅変更制御部152に通知する(ステップS13)。
【0026】
帯域幅変更制御部153は、帯域幅導出部151により帯域幅BWavが通知される度に、帯域幅変更処理を行う(ステップS14)。より具体的には、帯域幅変更制御部153は、通知された帯域幅BWavの中から、該当する値を選択する(ステップS141)。その後、帯域幅変更制御部153は、帯域幅管理部152から、選択した帯域幅BWavと同じチャネルに現在割り当てられている帯域幅BWasを取得する(ステップS142)。さらに、帯域幅変更制御部153は、選択した帯域幅BWavと、取得した帯域幅BWasとの差分値の絶対値ΔBWを算出し、算出した絶対値ΔBWが所定値Vth以上か否かを判断する(ステップS143)。絶対値ΔBWが所定値Vth以上であれば、帯域幅変更制御部153は、帯域幅管理部152で管理されている帯域幅BWasの値を、選択した帯域幅BWavの値に更新し(ステップS144)、その後、ステップS145を行う。逆に、絶対値ΔBWが所定値Vth以上でなければ、帯域幅BWasの更新は行われずに、処理はステップS145に直接進む。
【0027】
ステップS145において、帯域幅変更制御部153は、全チャネルの帯域幅BWavを選択したか否かを判断する。未選択の帯域幅BWavが残っていれば、帯域幅変更制御部153は、その中から1つ選択して(ステップS146)、ステップS142を行う。逆にステップS145において、全チャネルの帯域幅BWavを選択済みの場合には、帯域幅変更制御部153は、その旨を帯域幅通知部154に通知し(ステップS147)、これによって、帯域幅変更処理が終了する。
【0028】
帯域幅通知部154は、帯域幅変更制御部153からの通知に応答して、IEEE1394で規定されている帯域幅通知プロトコルに従って、帯域幅管理部152により管理されている更新後の帯域幅BWasを各ノード3に同報するための電文EMを生成し、通信コントローラ13に渡す。通信コントローラ13は、非同期通信中に、通信インタフェイス12を通じて、受け取った電文EMをバス2に送出する(ステップS15)。
【0029】
以上のようにして、本データ伝送システムSでは、帯域幅管理装置1a は、各チャネル毎に検出した帯域幅BWavの実際の使用量に基づいて、同期通信における帯域幅BWasの割当て量を動的に変更する。これによって、ノード31 に割り当てた帯域幅BWasよりも、そのノード31 が実際に使っている帯域幅BWavがあまりに少なければ、帯域幅管理装置1a は、実質的に未使用分の帯域幅を解放して、他のノード3に解放された帯域幅を割り当てることが可能になる。さらに、帯域幅管理装置1a は、ノード31 に割り当てた帯域幅BWasを強制的に解放することになるので、従来技術と比較して平等かつ各ノード3に最適な帯域幅を割り当てることが可能になる。
【0030】
また、ノード31 に割り当てた帯域幅BWasよりも、そのノード31 が実際に使っている帯域幅BWavがあまりに大きければ、帯域幅管理装置1a は、不足分の帯域幅をノード31 にさらに割り当てることが可能になる。その結果、バス2において帯域幅が余っているという状態を回避することができ、バス2の帯域幅を有効的に利用することが可能になる。
【0031】
また、以上の実施形態では、データ収集部14は、同期信号Ssync毎に、消費電力Pを帯域幅導出部151に渡すようにしていたが、これに限らず、複数の同期信号Ssync毎に、これらを渡すようにしても良い。同様に、帯域幅変更制御部153は、同期信号Ssync毎に帯域幅変更処理を行っていたが、これに限らず、複数の同期信号Ssync毎に帯域幅変更処理を行っても良い。この場合、帯域幅導出部151は、現在使われている帯域幅BWavとして、複数の同期信号Ssync間における平均値を、通知されたチャネル毎に算出して、帯域幅変更制御部152に通知する。
【0032】
また、帯域幅変更制御部153は、バス2からの受信データDに基づいて、帯域幅変更処理を行っていたが、それだけでなく、ノード32 がバス2に送出するデータDに基づいて、帯域幅変更処理を行っても良い。
【0033】
次に、図8を参照して、帯域幅管理装置1a の第1の変型例である帯域幅管理装置1b について説明する。図8において、帯域幅管理装置1b は、通信インタフェイス21と、データバッファ22と、通信コントローラ23と、データ収集部24と、バス管理部25とを備えている。
【0034】
通信インタフェイス21は、バス2を通じて受信したデータDをそのままデータバッファ22に転送し、さらに、受信データDから同期信号Ssyncを分離して、データッファ22に転送する。
【0035】
データバッファ22は、図9に示すように、データ分離部221と、非同期データバッファ222と、同期データバッファ223と、アドレス制御部224と、アドレス情報通知部225とを備えている。データ分離部221は、受信データDを、非同期データDasynと同期データDiso とに分離する。データ分離部221は、分離した非同期データDasynを非同期データバッファ222に転送し、分離した同期データDiso を同期データバッファ223に転送する。非同期データバッファ222及び同期データバッファ223は、データ分離部221から転送されてくる非同期データDasyn及び同期データDiso を格納する。アドレス制御部224は、同期データバッファ223の書き込みアドレスを制御し、さらに、アドレス情報通知部225に、書き込みアドレス情報Iadをデータバッファ22への書き込みが発生する毎に逐次通知する。アドレス情報通知部225は、通信インタフェイス21からの同期信号Ssync及びアドレス制御部224からのアドレス情報Iadを受け取る。アドレス情報通知部225は、受け取った同期信号Ssyncと同時に受け取ったアドレス情報Iadを保持する。アドレス情報通知部225は、次の同期信号Ssyncを受け取った時、同時に受け取ったアドレス情報Iadから前回のアドレス情報Iadを減算して、アドレスの変化量Δadを算出して、後段のデータ収集部24に渡す。
【0036】
通信コントローラ23は、前述の通信コントローラ13と同様であるため、その説明を省略する。データ収集部24は、データバッファ22のアドレス情報通知部225からのアドレス変化量Δadを収集して、同期信号Ssync毎にバス管理部25に通知する。
【0037】
バス管理部25は、図10に示すように、図6のバス管理部15と比較すると、帯域幅導出部151に代えて、帯域幅導出部251を備えている点で相違する。それ以外に両バス管理部15及び25の間には相違点は無いので、図10において、図6の構成に相当するものには同一の参照符号を付けて、それぞれの説明を省略する。
【0038】
帯域幅導出部251は、データ収集部24により通知されたアドレス変化量Δadを使って、チャネル毎に現在使われている帯域幅BWavを導出して、帯域幅変更制御部152に通知する。より具体的には、帯域幅導出部251は、ソフトウェアで構成されており、アドレス変化量Δadと帯域幅BWavとが有する比例関係、つまり比例式F(Δad)=BWav=α×Δad(αは定数)を予め保持する。帯域幅導出部251は、比例式F(Δad)に、通知されたアドレス変化量Δadを代入して帯域幅BWavを導出する。
【0039】
次に、図11を参照して、以上の構成の帯域幅管理装置1b の動作について説明する。前述の帯域幅の自己申告及び割り当てが完了すると、同期通信が可能になる。同期通信の最中、帯域幅管理装置1b において、データバッファ22は、上述のようして得られるアドレス変化量Δadをデータ収集部24に転送する(図11;ステップS21)。データ収集部24は、データバッファ22のアドレス情報通知部225からのアドレス変化量Δadを収集して、同期信号Ssync毎に、収集したアドレス変化量Δadをバス管理部25に通知する(ステップS22)。帯域幅導出部251は、上述した方法で、通知されたチャネル毎に、現在使われている帯域幅BWavを算出して、帯域幅変更制御部152に通知する(ステップS23)。以降、帯域幅管理装置1b では、図7のステップS14からS15と同様の処理が行われるので、ここではそれぞれの説明を省略する。
【0040】
以上のように、帯域幅管理装置1b は、各チャネル毎に検出した帯域幅BWavの実際の使用量に基づいて、同期通信における帯域幅BWasの割当て量を動的に変更する。これによって、ノード31 に割り当てた帯域幅BWasよりも、そのノード31 が実際に使っている帯域幅BWavがあまりに少なければ、帯域幅管理装置1a は、実質的に未使用分の帯域幅を解放して、他のノード3に解放された帯域幅を割り当てることが可能になる。さらに、帯域幅管理装置1a は、ノード31 に割り当てた帯域幅BWasを強制的に解放することになるので、従来技術と比較して、平等かつ各ノード3に最適な帯域幅を割り当てることが可能になる。
【0041】
また、ノード31 に割り当てた帯域幅BWasよりも、そのノード31 が実際に使っている帯域幅BWavがあまりに大きければ、帯域幅管理装置1a は、不足分の帯域幅をノード31 にさらに割り当てることが可能になる。その結果、バス2において帯域幅が余っているという状態を回避することができ、バス2の帯域幅を有効的に利用することが可能になる。
【0042】
なお、以上の変型例では、アドレス情報通知部225は、アドレス変化量Δadを算出していたが、今回のアドレス情報Iadから前回のアドレス情報Iadを減算して、同期データDiso の長さDLiso を算出して、後段のデータ収集部24に通知するにしても良い(ステップS21及びS22の括弧内参照)。この場合、帯域幅導出部251は、ステップS23において、データ収集部24により通知されたデータ長DLiso を使って、チャネル毎に現在使われている帯域幅BWavを導出して、帯域幅変更制御部152に通知する。ここで、データ長DLiso と帯域幅BWavとは実質的に比例関係にあり、F(DLiso )=BWav=β×DLiso (βは定数)で表現される。帯域幅導出部251は、比例式F(DLiso )に、通知されたデータ長DLiso を代入して帯域幅BWavを導出する。
【0043】
また、以上の変型例では、データ収集部24は、同期信号Ssync毎に、アドレス変化量Δad又はデータ長DLiso を帯域幅導出部251に渡すようにしていたが、これに限らず、複数の同期信号Ssync毎に、これらを渡すようにしても良い。同様に、帯域幅変更制御部153は、同期信号Ssync毎に帯域幅変更処理を行っていたが、これに限らず、複数の同期信号Ssync毎に帯域幅変更処理を行っても良い。この場合、帯域幅導出部251は、現在使われている帯域幅BWavとして、複数の同期信号Ssyncの間における平均値を、通知されたチャネル毎に算出して、帯域幅変更制御部152に通知する。
【0044】
また、帯域幅変更制御部153は、バス2からの受信データDに基づいて、帯域幅変更処理を行っていたが、それだけでなく、ノード32 がバス2に送出するデータDに基づいて、帯域幅変更処理を行っても良い。
【0045】
次に、図12を参照して、帯域幅管理装置1a の第2の変型例である帯域幅管理装置1c について説明する。図12において、帯域幅管理装置1c は、通信インタフェイス31と、データバッファ32と、通信コントローラ33と、データ収集部34と、バス管理部35とを備えている。
【0046】
通信インタフェイス31は、前述の通信インタフェイス21と同様であるため、その説明を省略する。データバッファ32は、図13に示すように、データ分離部321と、非同期データバッファ322と、同期データ用のFIFO(First−In First−Out)バッファ323と、深さカウンタ制御部324と、深さカウンタ情報通知部325とを備えている。データ分離部321及び非同期データバッファ322については、図9に示すデータ分離部221及び非同期データバッファ222と同様であるため、それぞれの詳細な説明を省略する。
【0047】
FIFOバッファ323は、データ分離部321から転送されてくる同期データDiso を格納する。深さカウンタ制御部324は、FIFOバッファ323の書き込みアドレスを制御し、さらに、深さカウンタ情報通知部325に、書き込みアドレス情報Iadを1クロック毎に逐次通知する。深さカウンタ情報通知部325は、通信インタフェイス21からの同期信号Ssync及び深さカウンタ制御部324からのアドレス情報Iadを受け取る。深さカウンタ情報通知部325は、受け取った同期信号Ssyncと同時に受け取ったアドレス情報Iadを保持する。深さカウンタ情報通知部325は、次の同期信号Ssyncを受け取った時、同時に受け取ったアドレス情報Iadから前回のアドレス情報Iadを減算して、FIFOバッファ323の深さ(つまり、使用容量)Δdpを算出して、後段のデータ収集部34に渡す。
【0048】
通信コントローラ33は、前述の通信コントローラ13と同様であるため、その説明を省略する。データ収集部34は、データバッファ32の深さカウンタ情報通知部325からの深さΔdpを収集して、同期信号Ssync毎にバス管理部35に通知する。
【0049】
バス管理部35は、図14に示すように、図10のバス管理部25と比較すると、帯域幅導出部251に代えて、帯域幅導出部351を備えている点で相違する。それ以外に両バス管理部25及び35の間には相違点は無いので、図14において、図10の構成に相当するものには同一の参照符号を付けて、それぞれの説明を省略する。
【0050】
帯域幅導出部351は、データ収集部34により通知された深さΔdpを使って、チャネル毎に現在使われている帯域幅BWavを導出して、帯域幅変更制御部152に通知する。より具体的には、帯域幅導出部251は、ソフトウェアで構成されており、深さΔdpと帯域幅BWavとが有する比例関係、つまり比例式F(Δdp)=BWav=γ×Δdp(γは定数)を予め保持する。帯域幅導出部351は、比例式F(Δdp)に、通知された深さΔdpを代入して帯域幅BWavを導出する。
【0051】
次に、図15を参照して、以上の構成の帯域幅管理装置1c の動作について説明する。同期通信の最中、帯域幅管理装置1c において、データバッファ32は、上述のようして得られる深さΔdpをデータ収集部34に転送する(図15;ステップS31)。データ収集部34は、データバッファ32の深さカウンタ情報通知部325からの深さΔdpを収集して、同期信号Ssync毎に、収集した深さΔdpをバス管理部35に通知する(ステップS32)。帯域幅導出部351は、上述した方法で、通知されたチャネル毎に、現在使われている帯域幅BWavを算出して、帯域幅変更制御部152に通知する(ステップS33)。以降、帯域幅管理装置1c では、図7のステップS14からS15と同様の処理が行われるので、ここではそれぞれの説明を省略する。
【0052】
以上のように、帯域幅管理装置1c は、帯域管理装置1a 及び1b と同様に、ノード31 に割り当てた帯域幅BWasを強制的に解放することになるので、従来技術と比較して、平等かつ各ノード3に最適な帯域幅を割り当てることが可能になる。さらに、また、ノード31 に割り当てた帯域幅BWasよりも、そのノード31 が実際に使っている帯域幅BWavがあまりに大きければ、帯域幅管理装置1c は、不足分の帯域幅をノード31 にさらに割り当てることが可能になる。その結果、バス2において帯域幅が余っているという状態を回避することができ、バス2の帯域幅を有効的に利用することが可能になる。
【0053】
また、以上の変型例では、データ収集部34は、同期信号Ssync毎に、深さΔdpを帯域幅導出部251に渡すようにしていたが、これに限らず、複数の同期信号Ssync毎に、これらを渡すようにしても良い。同様に、帯域幅変更制御部153は、同期信号Ssync毎に帯域幅変更処理を行っていたが、これに限らず、複数の同期信号Ssync毎に帯域幅変更処理を行っても良い。また、帯域幅変更制御部153は、バス2からの受信データDに加えて、ノード32 がバス2に送出するデータDに基づいて、帯域幅変更処理を行っても良い。
【0054】
次に、図16を参照して、帯域幅管理装置1a の第3の変型例である帯域幅管理装置1d について説明する。図16において、帯域幅管理装置1c は、通信インタフェイス41と、データバッファ42と、通信コントローラ43と、データ収集部44と、バス管理部45とを備えている。
【0055】
通信インタフェイス41は、前述の通信インタフェイス21と同様であるため、その説明を省略する。データバッファ42は、図17に示すように、データ分離部421と、非同期データバッファ422と、同期データバッファ423と、NULLデータ分離部424と、NULLデータカウンタ425と、NULLデータ区間通知部426とを備えている。データ分離部421、非同期データバッファ422及び同期データバッファ423については、図9に示すデータ分離部221、非同期データバッファ222及び同期データバッファ223と同様であるため、それぞれの詳細な説明を省略する。
【0056】
NULLデータ分離部414は、データ分離部421により分離された同期データDiso を順次受け取り、受信同期データDiso が伝送されていない時間区間(以下、NULLデータ区間)Tnullを検出する。つまり、NULLテ゛ータ分離部414は、NULLデータを分離する。さらに、NULLデータ分離部414は、NULLデータ区間Tnullの間中、後段のNULLデータカウンタ425に、現在NULLデータ区間Tnullであることを示す電気信号Snullを送出する。NULLデータカウンタ425は、外部から与えられるクロックCLK、通信インタフェイス21からの同期信号Ssync及び、NULLデータ分離部414からの電気信号Snullを受け取る。NULLデータカウンタ425は、電気信号Snullを受信している間に限り、入力されたクロックCLKに同期して、値をカウントアップし、通信インタフェイス21からの同期信号Ssyncを受け取った時点で、NULLデータ区間Tnullとして、現在のカウント値をNULLデータ区間通知部426に通知する。NULLデータ区間通知部426は、通信インタフェイス21から同期信号Ssyncを受け取る度に、同時に受け取ったNULLデータ区間Tnullを後段のデータ収集部44に渡す。
【0057】
通信コントローラ43は、前述の通信コントローラ13と同様であるため、その説明を省略する。データ収集部44は、上述のNULLデータ区間通知部426からのNULLデータ区間Tnullを収集して、同期信号Ssync毎にバス管理部45に通知する。
【0058】
バス管理部45は、図18に示すように、図10のバス管理部25と比較すると、帯域幅導出部251に代えて、帯域幅導出部451を備えている点で相違する。それ以外に両バス管理部25及び45の間には相違点は無いので、図17において、図10の構成に相当するものには同一の参照符号を付けて、それぞれの説明を省略する。
【0059】
帯域幅導出部451は、データ収集部44により通知されたNULLデータ区間Tnullを使って、チャネル毎に現在使われている帯域幅BWavを導出して、帯域幅変更制御部152に通知する。より具体的には、帯域幅導出部451は、ソフトウェアで構成されており、NULLデータ区間Tnullと帯域幅BWavとが有する比例関係、つまり比例式F(Tnull)=BWav=δ×Tnull(δは定数)を予め保持する。帯域幅導出部451は、比例式F(Tnull)に、通知されたNULLデータ区間Tnullを代入して帯域幅BWavを導出する。
【0060】
次に、図19を参照して、以上の構成の帯域幅管理装置1d の動作について説明する。同期通信の最中、帯域幅管理装置1d において、データバッファ42は、上述のようして得られるNULLデータ区間Tnullをデータ収集部44に転送する(図19;ステップS41)。データ収集部44は、データバッファ42のNULLデータ区間通知部426からのNULLデータ区間Tnullを収集して、同期信号Ssync毎に、収集したNULLデータ区間Tnullをバス管理部45に通知する(ステップS42)。帯域幅導出部451は、上述した方法で、通知されたチャネル毎に、現在使われている帯域幅BWavを算出して、帯域幅変更制御部152に通知する(ステップS43)。以降、帯域幅管理装置1d では、図7のステップS14からS15と同様の処理が行われるので、ここではそれぞれの説明を省略する。
【0061】
以上のように、帯域幅管理装置1d は、帯域管理装置1a から1c と同様に、ノード31 に割り当てた帯域幅BWasを強制的に解放することになるので、従来技術と比較して、平等かつ各ノード3に最適な帯域幅を割り当てることが可能になる。さらに、また、ノード31 に割り当てた帯域幅BWasよりも、そのノード31 が実際に使っている帯域幅BWavがあまりに大きければ、帯域幅管理装置1c は、不足分の帯域幅をノード31 にさらに割り当てることが可能になる。その結果、バス2において帯域幅が余っているという状態を回避することができ、バス2の帯域幅を有効的に利用することが可能になる。
【0062】
また、以上の変型例では、データ収集部44は、同期信号Ssync毎に、NULLデータ区間Tnullを帯域幅導出部451に渡すようにしていたが、これに限らず、複数の同期信号Ssync毎に、これらを渡すようにしても良い。同様に、帯域幅変更制御部153は、同期信号Ssync毎に帯域幅変更処理を行っていたが、これに限らず、複数の同期信号Ssync毎に帯域幅変更処理を行っても良い。また、帯域幅変更制御部153は、バス2からの受信データDに加えて、ノード32 がバス2に送出するデータDに基づいて、帯域幅変更処理を行っても良い。
【0063】
【発明の効果】
請求項1に係る発明によれば、帯域幅管理装置は、データ通信において実際に使われている帯域幅を検出して、データ通信における帯域幅の割当て量を動的に変更する。従って、帯域幅管理装置は、ノードに割り当てた帯域幅を強制的に解放することが可能となるので、従来よりも平等かつ効率的に帯域幅を各ノードに割り当てることが可能になる。また、ノードが割当てられた量よりも多くの帯域幅を実際に使っている場合には、帯域幅管理装置は、実際の使用量を割り当てることも可能になる。これによって、バスの帯域幅が余っているという状況を少なくでき、バスの有効利用を実現することも可能になる。
【0064】
請求項2に係る発明によれば、帯域幅変更制御部により変更された帯域幅は、各ノードに通知されるので、各ノードは新たに割り当てられた帯域幅を知ることが可能になり、これによって、より効率的なデータ通信を行うことが可能になる。
【0065】
請求項3に係る発明によれば、帯域幅変更制御部は、データ通信で現在使われている帯域幅と、帯域幅管理部で管理されている帯域幅との差があまりに大きい場合にのみ、帯域幅管理部で管理されている帯域幅を、帯域幅導出部で導出された帯域幅に変更する。これによって、帯域幅変更制御部は、無意味な帯域幅の更新を行わなくて済むことになる。
【0066】
請求項4に係る発明によれば、バス駆動ドライバの消費電力に基づいて、現在使われている帯域幅が導出される。つまり、全ノードがデータ通信のために有するバス駆動ドライバを帯域幅管理装置は使うことになるので、帯域幅管理のために追加する構成を減らすことが可能になり、さらには、現在使っている帯域幅を簡単に導出することが可能になる。
【0067】
請求項5に係る発明によれば、同期データバッファの書き込みアドレスに基づいて、現在使われている帯域幅が導出される。つまり、全ノードがデータ通信のために有する同期データバッファを帯域幅管理装置は使うことになるので、帯域幅管理のために追加する構成を減らすことが可能になり、さらには、現在使っている帯域幅を簡単に導出することが可能になる。
【0068】
請求項6に係る発明によれば、FIFOバッファの深さに基づいて、現在使われている帯域幅が導出される。つまり、全ノードがデータ通信のために有していることがあるFIFOバッファを帯域幅管理装置は使うことになるので、帯域幅管理のために追加する構成を減らすことが可能になり、さらには、現在使っている帯域幅を簡単に導出することが可能になる。
【0069】
請求項7に係る発明によれば、同期データが伝送されていないNULLデータ区間の長さに基づいて、現在使われている帯域幅を導出することができる。
【0070】
請求項8に係る発明によれば、請求項1に係る発明と同様に、従来よりも平等かつ効率的に帯域幅を各ノードに割り当てることが可能になる。バスの帯域幅が余っているという状況を少なくでき、バスの有効利用を実現することも可能になる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係る帯域幅管理装置1a を備えるデータ伝送システムSの構成を示すブロック図である。
【図2】図1の通信インタフェイス11の詳細な構成を示すブロック図である。
【図3】図2のバス駆動ドライバ111の詳細な構成を示すブロック図である。
【図4】図1のデータ伝送システムSで伝送されるデータDに設定される同期信号Ssyncを示す模式図である。
【図5】図2の消費電力検出部112の詳細な構成を示すブロック図である。
【図6】図1のバス管理部15の詳細な構成を示すブロック図である。
【図7】図1の帯域幅管理装置1a の動作を示すフローチャートである。
【図8】図1に示す帯域幅管理装置1a の第1の変型例である帯域幅管理装置1b の構成を示すブロック図である。
【図9】図8に示すデータバッファ22の詳細な構成を示すブロック図である。
【図10】図8に示すバス管理部25の詳細な構成を示すブロック図である。
【図11】図8の帯域幅管理装置1b の動作を示すフローチャートである。
【図12】図1に示す帯域幅管理装置1a の第2の変型例である帯域幅管理装置1c の構成を示すブロック図である。
【図13】図12のデータバッファ32の詳細な構成を示すブロック図である。
【図14】図12のバス管理部35の詳細な構成を示すブロック図である。
【図15】図12の帯域幅管理装置1c の動作を示すフローチャートである。
【図16】図1に示す帯域幅管理装置1a の第3の変型例である帯域幅管理装置1d の構成を示すブロック図である。
【図17】図16のデータバッファ42の詳細な構成を示すブロック図である。
【図18】図16のバス管理部45の詳細な構成を示すブロック図である。
【図19】図16の帯域幅管理装置1d の動作を示すフローチャートである。
【符号の説明】
a 〜1d …帯域幅管理装置
11,21,31,41…通信インタフェイス
111…バス駆動ドライバ
113…レシーバ
112…消費電力検出部
114…I/V変換部
115…A/D変換部
116…消費電力積算部
117…消費電力通知部
12,22,32,42…データバッファ
221,321,421…データ分離部
222,322,422…非同期データバッファ
223,423…同期データバッファ
224…アドレス制御部
225…アドレス情報通知部
323…FIFOバッファ
324…深さカウンタ制御部
325…深さカウンタ情報通知部
424…NULLデータ分離部
425…NULLデータカウンタ
426…NULLデータ区間通知部
13,23,33,43…通信コントローラ
14,24,34,44…データ収集部
11,21,31,41…バス管理部
151,251,351,451…帯域幅導出部
152…帯域幅管理部
153…帯域幅変更制御部
154…帯域幅変更通知部

Claims (8)

  1. バス上に接続された複数のノード間でデータ通信に使われる帯域幅を管理するための帯域幅管理装置であって、
    前記データ通信に現在割り当てられている帯域幅を管理する帯域幅管理部と、
    前記データ通信で現在使われている帯域幅を導出する帯域幅導出部と、
    前記帯域幅導出部で導出された帯域幅に基づいて、前記帯域幅管理部で管理されており前記データ通信に割り当てられている帯域幅を変更する帯域幅変更制御部とを備える、帯域幅管理装置。
  2. 前記帯域幅変更制御部により変更された帯域幅を、各前記ノードに通知するための電文を作成する帯域幅変更通知部をさらに備える、請求項1に記載の帯域幅管理装置。
  3. 前記帯域幅変更制御部は、
    前記帯域幅導出部で導出された帯域幅と、前記帯域幅管理部で管理されており前記データ通信で現在使われている帯域幅との差の絶対値を算出する絶対値算出部と、
    前記絶対値算出部で算出された絶対値が予め定められた値以上である場合、前記帯域幅管理部で管理されている帯域幅を、前記帯域幅導出部で導出された帯域幅に変更する帯域幅変更部とを含む、請求項1に記載の帯域幅管理装置。
  4. 前記帯域幅管理装置は、
    前記バス上で伝送されるデータを受信するバス駆動ドライバと、
    前記バス駆動ドライバの消費電力を検出する消費電力検出部とをさらに備え、
    前記帯域幅導出部は、前記消費電力検出部で検出された消費電力に基づいて、前記データ通信で現在使われている帯域幅を導出する、請求項1に記載の帯域幅管理装置。
  5. 前記帯域幅管理装置は、
    前記バス上を伝送されてくる同期データを格納する同期データバッファと、前記同期データバッファの書き込みアドレスを制御するアドレス制御部と、
    前記アドレス制御部から書き込みアドレスに基づいて、前記同期データバッファにおいて同期データが書き込まれた時のアドレス変化量、又は前記同期データバッファに書き込まれた同期データの長さを算出するアドレス情報通知部とをさらに備え、
    前記帯域幅導出部は、前記アドレス情報通知部で算出されたアドレス変化量又は同期データの長さに基づいて、前記データ通信で現在使われている帯域幅を導出する、請求項1に記載の帯域幅管理装置。
  6. 前記帯域幅管理装置は、
    前記バス上を伝送されてくる同期データを格納するFIFOバッファと、
    前記FIFOバッファの書き込みアドレスを制御する深さカウンタ制御部と、
    前記深さカウンタ制御部から書き込みアドレスに基づいて、前記FIFOバッファの深さをカウントする深さカウンタ情報通知部とをさらに備え、
    前記帯域幅導出部は、前記深さカウンタ情報通知部でカウントされた深さに基づいて、前記データ通信で現在使われている帯域幅を導出する、請求項1に記載の帯域幅管理装置。
  7. 前記帯域幅管理装置は、
    前記バス上を伝送されてくる同期データを受け取り、同期データがバス上を伝送されていないNULLデータを分離するNULLデータ分離部と、
    前記NULLデータ分離部で分離されたNULLデータの開始から末尾までの時間区間をカウントするNULLデータカウンタとをさらに備え、
    前記帯域幅導出部は、前記NULLデータカウンタでカウントされた時間区間に基づいて、前記データ通信で現在使われている帯域幅を導出する、請求項1に記載の帯域幅管理装置。
  8. バス上に接続された複数のノード間でデータ通信に使われる帯域幅を管理するための方法であって、
    前記データ通信で現在使われている帯域幅を導出する帯域幅導出ステップと、
    前記帯域幅導出ステップで導出された帯域幅に基づいて、予め管理されておりかつ前記データ通信に割り当てられている帯域幅を変更する帯域幅変更制御ステップとを備える、帯域幅管理方法。
JP2002218601A 2002-07-26 2002-07-26 帯域幅管理装置及び方法 Pending JP2004064340A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002218601A JP2004064340A (ja) 2002-07-26 2002-07-26 帯域幅管理装置及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002218601A JP2004064340A (ja) 2002-07-26 2002-07-26 帯域幅管理装置及び方法

Publications (1)

Publication Number Publication Date
JP2004064340A true JP2004064340A (ja) 2004-02-26

Family

ID=31939736

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002218601A Pending JP2004064340A (ja) 2002-07-26 2002-07-26 帯域幅管理装置及び方法

Country Status (1)

Country Link
JP (1) JP2004064340A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007214812A (ja) * 2006-02-08 2007-08-23 Fujitsu Ltd 帯域割り当て方法、通信制御装置及び通信装置
JP2012059206A (ja) * 2010-09-13 2012-03-22 Toshiba Corp 半導体集積回路、インターコネクト、及び制御プログラム
US8804644B2 (en) 2008-10-29 2014-08-12 Intel Corporation Method, apparatus and system of dynamic bandwidth management

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007214812A (ja) * 2006-02-08 2007-08-23 Fujitsu Ltd 帯域割り当て方法、通信制御装置及び通信装置
US8804644B2 (en) 2008-10-29 2014-08-12 Intel Corporation Method, apparatus and system of dynamic bandwidth management
TWI471045B (zh) * 2008-10-29 2015-01-21 Intel Corp 動態頻寬管理之方法及設備
JP2012059206A (ja) * 2010-09-13 2012-03-22 Toshiba Corp 半導体集積回路、インターコネクト、及び制御プログラム
US8700927B2 (en) 2010-09-13 2014-04-15 Kabushiki Kaisha Toshiba Semiconductor integrated circuit, interconnect, and computer readable medium storing medium storing control program

Similar Documents

Publication Publication Date Title
JP3228708B2 (ja) 伝送システムにおける受信インターフェース装置
CN102958062B (zh) 一种无线体域网中基于超帧的低能耗媒体接入控制方法
KR20090006757A (ko) 무선 센서 네트워크에서 시간 동기화 방법 및 예약 기법을이용한 저전력 라우팅 방법, 그리고 이를 수행하기 위한장치
WO2009075455A1 (en) Wireless communication method, and a piconet coordinator, wireless local area network, and a mobile apparatus for wireless local area network using the method
US6633578B1 (en) Transmission interface unit in transmission system
US7933281B2 (en) Method of bus configuration to enable device bridging over dissimilar buses
JP2004064340A (ja) 帯域幅管理装置及び方法
JPH11355294A (ja) 通信装置及び通信方法
JP3325839B2 (ja) 情報送信装置及び方法、情報受信装置及び方法並びに情報送受信装置及び方法
JP2004509518A (ja) 通信システムおよびデバイス
KR100429795B1 (ko) 시리얼 버스의 대역폭 관리 방법 및 장치
JP2003501950A (ja) データパケットの伝送のための方法及び異成分からなるネットワーク
JP2002094492A (ja) 時刻同期方法及び通信装置
CN111478838B (zh) 一种高效高带宽的通信方法及系统
JPH10257096A (ja) データ転送方法及び装置
JP4033152B2 (ja) 時分割多重装置及び方法
JPH11215143A (ja) データ通信装置及び方法
JP2004088330A (ja) ネットワークブリッジ装置及び方法
KR101696509B1 (ko) 저전력 유틸리티 모니터링 서비스를 위한 확장 dsme mac
JP4998367B2 (ja) データ伝送装置および帯域割当方法
JP5562811B2 (ja) 制御装置、伝送装置および伝送システム
JPH10257080A (ja) データ転送方法及び装置
JP2000049830A (ja) デジタル信号送信装置、デジタル信号送信システムおよびデジタル信号送信方法
JP2010041192A (ja) 通信システム、通信装置および通信方法
US20120151096A1 (en) Communication device, network system, and communication method