JP2004064340A - Bandwidth management device and method - Google Patents
Bandwidth management device and method Download PDFInfo
- 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
Links
Images
Landscapes
- Small-Scale Networks (AREA)
Abstract
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 の動作を示すフローチャートである。
【符号の説明】
1a 〜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…帯域幅変更通知部[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a bandwidth management device and method, and more particularly, to a bandwidth management device that manages a bandwidth allocated to each data communication when performing data communication between a plurality of nodes on a bus type topology. And methods.
[0002]
[Prior art]
In IEEE (Institute of Electrical and Electronics Engineers) 1394, data communication can be performed between nodes in an isochronous mode (hereinafter, referred to as a synchronous communication mode). Various data transmission systems have been proposed so that data communication can be performed efficiently in such a synchronous communication mode. Hereinafter, description will be made by taking an example disclosed in JP-A-11-275122 as an example. A conventional data transmission system includes at least one transmission node and one reception node, and further includes an IRM (Isochronous Resource Manager).
[0003]
Next, the transmitting node first monitors the IR (Isochronous Resource) of another node on the bus to detect bus band information. Thereafter, the transmitting node determines whether or not the occupied bandwidth of the bus has changed from the currently held value based on the detected bus bandwidth information. If the occupied bandwidth has changed, the transmitting node calculates and holds a transmittable compression ratio of data transmitted in the synchronous communication mode, and further calculates an available bandwidth in the synchronous communication mode, Hold. The transmitting node communicates with the IRM in the asynchronous communication mode (asynchronous mode), and requests that the bandwidth currently used in the synchronous communication mode be changed to a usable bandwidth obtained by calculation.
[0004]
Thereafter, the transmitting node determines whether or not the change of the used bandwidth is permitted by the IRM. If the change is permitted, the transmitting node compresses the data to be transmitted at the compression rate calculated by the calculation. Further, the transmitting node resets the bandwidth used in the synchronous communication mode to a value permitted by the IRM, updates and holds the synchronous communication mode bandwidth data in accordance with the reset bandwidth. Thereafter, in the synchronous communication mode, the transmitting node uses the reset bandwidth to transmit data compressed at the compression rate obtained by the calculation to the receiving node.
[0005]
[Problems to be solved by the invention]
However, in the data transmission system described above, in order not to release the band allocated to the transmission node, the transmission node must voluntarily declare the fact to the IRM and return it. Therefore, the bandwidth once allocated is not readily released, and as a result, a node that wants to newly perform data communication in the synchronous communication mode is less likely to use the bandwidth declared by the own node in the synchronous communication mode. There was a problem.
[0006]
Therefore, an object of the present invention is to provide a bandwidth management device capable of giving all nodes accommodated in a data transmission system an even more equal opportunity to obtain an optimum bandwidth.
[0007]
[Means for Solving the Problems]
A first invention is a bandwidth management apparatus for managing a bandwidth used for data communication between a plurality of nodes connected on a bus, and manages a bandwidth currently allocated to data communication. A bandwidth management unit, a bandwidth derivation unit for deriving a bandwidth currently used in data communication, and a data communication managed by the bandwidth management unit based on the bandwidth derived by the bandwidth derivation unit. And a bandwidth change control unit that changes the bandwidth allocated to the.
[0008]
A second invention is according to the first invention, and further includes a bandwidth change notification unit that creates a message for notifying each node of the bandwidth changed by the bandwidth change control unit.
[0009]
A third invention is according to the first invention, wherein the bandwidth change control unit includes a bandwidth derived by the bandwidth derivation unit and a bandwidth managed by the bandwidth management unit and currently used in data communication. An absolute value calculating unit for calculating an absolute value of a difference from the bandwidth, and a bandwidth managed by the bandwidth managing unit when the absolute value calculated by the absolute value calculating unit is equal to or larger than a predetermined value. Is changed to the bandwidth derived by the bandwidth deriving unit.
[0010]
A fourth invention is according to the first invention, wherein the bandwidth management device comprises: a bus driver for receiving data transmitted on the bus; and a power consumption detector for detecting power consumption of the bus driver. Is further provided. The bandwidth deriving unit derives a bandwidth currently used in data communication based on the power consumption detected by the power consumption detecting unit.
[0011]
A fifth invention is according to the first invention, wherein the bandwidth management device includes a synchronous data buffer for storing synchronous data transmitted on the bus, and an address control unit for controlling a write address of the synchronous data buffer. And an address information notifying unit that calculates an address change amount when synchronous data is written in the synchronous data buffer or a length of the synchronous data written to the synchronous data buffer based on the write address from the address control unit. It also has more. The bandwidth derivation unit derives a bandwidth currently used in data communication based on the address change amount or the length of the synchronization data calculated by the address information notification unit.
[0012]
A sixth invention is according to the first invention, wherein the bandwidth management device includes a FIFO buffer for storing synchronous data transmitted on the bus, and a depth counter control unit for controlling a write address of the FIFO buffer. And a depth counter information notification unit that counts the depth of the FIFO buffer based on the write address from the depth counter control unit. The bandwidth deriving unit derives a bandwidth currently used in data communication based on the depth counted by the depth counter information notifying unit.
[0013]
A seventh invention is according to the first invention, wherein the bandwidth management device receives the synchronization data transmitted on the bus, and separates the null data from which the synchronization data is not transmitted on the bus. It further includes a separation unit and a NULL data counter that counts a time section from the start to the end of the NULL data separated by the NULL data separation unit. The bandwidth deriving unit derives a bandwidth currently used in data communication based on the time section counted by the NULL data counter.
[0014]
An eighth invention is a method for managing a bandwidth used for data communication between a plurality of nodes connected on a bus, and a bandwidth deriving method for deriving a bandwidth currently used for data communication. And a bandwidth change control step of changing a bandwidth managed in advance and assigned to data communication based on the bandwidth derived in the bandwidth derivation step.
[0015]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 shows a bandwidth management device 1 according to a first embodiment of the present invention. a 1 is a block diagram illustrating a configuration of a data transmission system S including: In FIG. 1, a data transmission system S has a bus topology, and a plurality of nodes (two nodes in the figure) 3 1 And 3 2 Is connected.
[0016]
Bandwidth management device 1 a Is one of the
[0017]
The
[0018]
As shown in FIG. 5, the power
[0019]
The
[0020]
As illustrated in FIG. 6, the
[0021]
The
[0022]
The bandwidth
[0023]
The
[0024]
Next, referring to FIG. 7, the bandwidth management device 1 having the above-described configuration will be described. a The operation of will be described. In the data transmission system S, self-reporting and allocation of bandwidth are performed prior to synchronous communication. This processing is well known and will be described briefly. First, each
[0025]
When the self-reporting and the allocation of the bandwidth are completed, the data transmission system S can perform synchronous communication. During synchronous communication, the bandwidth management device 1 a , The
[0026]
The bandwidth
[0027]
In step S145, the bandwidth
[0028]
The
[0029]
As described above, in the data transmission system S, the bandwidth management device 1 a Is the bandwidth BW detected for each channel av Bandwidth BW in synchronous communication based on the actual usage of as Dynamically change the quota of This allows
[0030]
[0031]
Further, in the above embodiment, the
[0032]
In addition, the bandwidth
[0033]
Next, referring to FIG. a Bandwidth management device 1 which is a first variation of b Will be described. In FIG. 8, the bandwidth management device 1 b Has a
[0034]
The
[0035]
As shown in FIG. 9, the
[0036]
The
[0037]
The
[0038]
The bandwidth deriving unit 251 calculates the address change amount Δ notified by the
[0039]
Next, with reference to FIG. 11, the bandwidth management device 1 having the above configuration b The operation of will be described. When the above-mentioned self-reporting and allocation of bandwidth is completed, synchronous communication is enabled. During synchronous communication, the bandwidth management device 1 b , The
[0040]
As described above, the bandwidth management device 1 b Is the bandwidth BW detected for each channel av Bandwidth BW in synchronous communication based on the actual usage of as Dynamically change the quota of This allows
[0041]
[0042]
Note that in the above modified example, the address
[0043]
Further, in the above modified example, the
[0044]
In addition, the bandwidth
[0045]
Next, referring to FIG. a Bandwidth management device 1 which is a second modified example of c Will be described. In FIG. 12, the bandwidth management device 1 c Has a
[0046]
The
[0047]
The
[0048]
The
[0049]
The
[0050]
The
[0051]
Next, with reference to FIG. 15, the bandwidth management device 1 having the above configuration will be described. c The operation of will be described. During synchronous communication, the bandwidth management device 1 c , The
[0052]
As described above, the bandwidth management device 1 c Is the bandwidth management device 1 a And 1 b As in
[0053]
Further, in the above modified example, the
[0054]
Next, referring to FIG. a Bandwidth management device 1 which is a third variation of d Will be described. In FIG. 16, the bandwidth management device 1 c Includes a
[0055]
The
[0056]
The NULL data separation unit 414 outputs the synchronization data D separated by the
[0057]
The
[0058]
The
[0059]
The
[0060]
Next, referring to FIG. 19, the bandwidth management device 1 having the above configuration will be described. d The operation of will be described. During synchronous communication, the bandwidth management device 1 d , The
[0061]
As described above, the bandwidth management device 1 d Is the bandwidth management device 1 a From 1 c As in
[0062]
Further, in the above-described modified example, the
[0063]
【The invention's effect】
According to the first aspect of the present invention, the bandwidth management device detects the bandwidth actually used in the data communication, and dynamically changes the bandwidth allocation in the data communication. Therefore, the bandwidth management device can forcibly release the bandwidth allocated to the node, so that the bandwidth can be allocated to each node more evenly and more efficiently than in the past. Also, if the node is actually using more bandwidth than the allocated amount, the bandwidth management device can also allocate the actual usage. As a result, it is possible to reduce the situation where the bandwidth of the bus is excessive, and it is also possible to realize effective use of the bus.
[0064]
According to the invention according to
[0065]
According to the invention according to
[0066]
According to the fourth aspect of the present invention, the currently used bandwidth is derived based on the power consumption of the bus driver. That is, since the bandwidth management device uses a bus driver that all the nodes have for data communication, it is possible to reduce the configuration added for the bandwidth management, and furthermore, it is currently used. The bandwidth can be easily derived.
[0067]
According to the invention according to claim 5, the currently used bandwidth is derived based on the write address of the synchronous data buffer. In other words, since the bandwidth management device uses a synchronous data buffer that all nodes have for data communication, it is possible to reduce the configuration added for bandwidth management, and furthermore, it is currently used. The bandwidth can be easily derived.
[0068]
According to the invention according to claim 6, the currently used bandwidth is derived based on the depth of the FIFO buffer. That is, since the bandwidth management device uses a FIFO buffer that all the nodes may have for data communication, it is possible to reduce the configuration added for bandwidth management, and Thus, it is possible to easily derive the currently used bandwidth.
[0069]
According to the invention according to claim 7, it is possible to derive the currently used bandwidth based on the length of the NULL data section in which no synchronous data is transmitted.
[0070]
According to the invention of claim 8, similarly to the invention of claim 1, it becomes possible to allocate a bandwidth to each node more evenly and more efficiently than in the past. It is possible to reduce the situation where the bandwidth of the bus is surplus, and it is also possible to realize effective use of the bus.
[Brief description of the drawings]
FIG. 1 is a bandwidth management device 1 according to a first embodiment of the present invention. a 1 is a block diagram illustrating a configuration of a data transmission system S including:
FIG. 2 is a block diagram showing a detailed configuration of a
FIG. 3 is a block diagram illustrating a detailed configuration of a
4 is a synchronizing signal S set to data D transmitted by the data transmission system S of FIG. sync FIG.
FIG. 5 is a block diagram illustrating a detailed configuration of a power
FIG. 6 is a block diagram showing a detailed configuration of a
FIG. 7 is a bandwidth management device 1 of FIG. a 5 is a flowchart showing the operation of the embodiment.
8 is a bandwidth management device 1 shown in FIG. a Bandwidth management device 1 which is a first variation of b FIG. 3 is a block diagram showing the configuration of FIG.
FIG. 9 is a block diagram showing a detailed configuration of a
FIG. 10 is a block diagram showing a detailed configuration of a
FIG. 11 shows the bandwidth management device 1 of FIG. b 5 is a flowchart showing the operation of the embodiment.
FIG. 12 shows a bandwidth management device 1 shown in FIG. a Bandwidth management device 1 which is a second modified example of c FIG. 3 is a block diagram showing the configuration of FIG.
FIG. 13 is a block diagram showing a detailed configuration of a
14 is a block diagram illustrating a detailed configuration of a
FIG. 15 shows the bandwidth management device 1 of FIG. c 5 is a flowchart showing the operation of the embodiment.
FIG. 16 shows a bandwidth management device 1 shown in FIG. a Bandwidth management device 1 which is a third variation of d FIG. 3 is a block diagram showing the configuration of FIG.
FIG. 17 is a block diagram showing a detailed configuration of a
18 is a block diagram illustrating a detailed configuration of a
FIG. 19 shows the bandwidth management device 1 of FIG. d 5 is a flowchart showing the operation of the embodiment.
[Explanation of symbols]
1 a ~ 1 d ... Bandwidth management device
11, 21, 31, 41 ... communication interface
111 Bus drive driver
113 ... Receiver
112 ... Power consumption detection unit
114 ... I / V conversion unit
115 ... A / D converter
116: Power consumption integration unit
117: Power consumption notification unit
12, 22, 32, 42 ... data buffer
221, 321, 421 data separation unit
222, 322, 422 ... asynchronous data buffer
223, 423: Synchronous data buffer
224 ... Address control unit
225: Address information notification unit
323 ... FIFO buffer
324: depth counter control unit
325: Depth counter information notification unit
424: NULL data separation unit
425: NULL data counter
426... NULL data section notification unit
13, 23, 33, 43 ... communication controller
14, 24, 34, 44 ... data collection unit
11, 21, 31, 41: Bus management unit
151,251,351,451 ... Bandwidth derivation unit
152: bandwidth management unit
153 bandwidth change control unit
154: bandwidth change notification unit
Claims (8)
前記データ通信に現在割り当てられている帯域幅を管理する帯域幅管理部と、
前記データ通信で現在使われている帯域幅を導出する帯域幅導出部と、
前記帯域幅導出部で導出された帯域幅に基づいて、前記帯域幅管理部で管理されており前記データ通信に割り当てられている帯域幅を変更する帯域幅変更制御部とを備える、帯域幅管理装置。A bandwidth management device for managing bandwidth used for data communication between a plurality of nodes connected on a bus,
A bandwidth management unit that manages a bandwidth currently allocated to the data communication,
A bandwidth deriving unit for deriving a bandwidth currently used in the data communication,
Based on the bandwidth derived by the bandwidth deriving unit, comprising a bandwidth change control unit that is managed by the bandwidth management unit and that changes the bandwidth allocated to the data communication. apparatus.
前記帯域幅導出部で導出された帯域幅と、前記帯域幅管理部で管理されており前記データ通信で現在使われている帯域幅との差の絶対値を算出する絶対値算出部と、
前記絶対値算出部で算出された絶対値が予め定められた値以上である場合、前記帯域幅管理部で管理されている帯域幅を、前記帯域幅導出部で導出された帯域幅に変更する帯域幅変更部とを含む、請求項1に記載の帯域幅管理装置。The bandwidth change control unit,
An absolute value calculation unit that calculates an absolute value of a difference between the bandwidth derived by the bandwidth derivation unit and the bandwidth currently managed by the bandwidth management unit and used in the data communication.
When the absolute value calculated by the absolute value calculation unit is equal to or greater than a predetermined value, the bandwidth managed by the bandwidth management unit is changed to the bandwidth derived by the bandwidth derivation unit. The bandwidth management device according to claim 1, further comprising a bandwidth changing unit.
前記バス上で伝送されるデータを受信するバス駆動ドライバと、
前記バス駆動ドライバの消費電力を検出する消費電力検出部とをさらに備え、
前記帯域幅導出部は、前記消費電力検出部で検出された消費電力に基づいて、前記データ通信で現在使われている帯域幅を導出する、請求項1に記載の帯域幅管理装置。The bandwidth management device,
A bus drive driver for receiving data transmitted on the bus;
A power consumption detection unit that detects power consumption of the bus drive driver,
The bandwidth management device according to claim 1, wherein the bandwidth deriving unit derives a bandwidth currently used in the data communication based on the power consumption detected by the power consumption detecting unit.
前記バス上を伝送されてくる同期データを格納する同期データバッファと、前記同期データバッファの書き込みアドレスを制御するアドレス制御部と、
前記アドレス制御部から書き込みアドレスに基づいて、前記同期データバッファにおいて同期データが書き込まれた時のアドレス変化量、又は前記同期データバッファに書き込まれた同期データの長さを算出するアドレス情報通知部とをさらに備え、
前記帯域幅導出部は、前記アドレス情報通知部で算出されたアドレス変化量又は同期データの長さに基づいて、前記データ通信で現在使われている帯域幅を導出する、請求項1に記載の帯域幅管理装置。The bandwidth management device,
A synchronous data buffer that stores synchronous data transmitted on the bus, an address control unit that controls a write address of the synchronous data buffer,
An address information notifying unit that calculates an address change amount when synchronous data is written in the synchronous data buffer, or a length of synchronous data written to the synchronous data buffer, based on a write address from the address control unit; Further comprising
2. The bandwidth deriving unit according to claim 1, wherein the bandwidth deriving unit derives a bandwidth currently used in the data communication based on the address change amount or the length of the synchronization data calculated by the address information notifying unit. Bandwidth management device.
前記バス上を伝送されてくる同期データを格納するFIFOバッファと、
前記FIFOバッファの書き込みアドレスを制御する深さカウンタ制御部と、
前記深さカウンタ制御部から書き込みアドレスに基づいて、前記FIFOバッファの深さをカウントする深さカウンタ情報通知部とをさらに備え、
前記帯域幅導出部は、前記深さカウンタ情報通知部でカウントされた深さに基づいて、前記データ通信で現在使われている帯域幅を導出する、請求項1に記載の帯域幅管理装置。The bandwidth management device,
A FIFO buffer for storing synchronous data transmitted on the bus;
A depth counter control unit for controlling a write address of the FIFO buffer;
A depth counter information notification unit that counts the depth of the FIFO buffer based on a write address from the depth counter control unit,
The bandwidth management device according to claim 1, wherein the bandwidth derivation unit derives a bandwidth currently used in the data communication based on the depth counted by the depth counter information notification unit.
前記バス上を伝送されてくる同期データを受け取り、同期データがバス上を伝送されていないNULLデータを分離するNULLデータ分離部と、
前記NULLデータ分離部で分離されたNULLデータの開始から末尾までの時間区間をカウントするNULLデータカウンタとをさらに備え、
前記帯域幅導出部は、前記NULLデータカウンタでカウントされた時間区間に基づいて、前記データ通信で現在使われている帯域幅を導出する、請求項1に記載の帯域幅管理装置。The bandwidth management device,
A NULL data separating unit that receives synchronous data transmitted on the bus and separates NULL data for which the synchronous data is not transmitted on the bus;
A NULL data counter that counts a time section from the start to the end of the NULL data separated by the NULL data separation unit,
The bandwidth management device according to claim 1, wherein the bandwidth deriving unit derives a bandwidth currently used in the data communication based on a time section counted by the NULL data counter.
前記データ通信で現在使われている帯域幅を導出する帯域幅導出ステップと、
前記帯域幅導出ステップで導出された帯域幅に基づいて、予め管理されておりかつ前記データ通信に割り当てられている帯域幅を変更する帯域幅変更制御ステップとを備える、帯域幅管理方法。A method for managing bandwidth used for data communication between a plurality of nodes connected on a bus,
A bandwidth deriving step of deriving a bandwidth currently used in the data communication,
A bandwidth change control step of changing a bandwidth managed in advance and assigned to the data communication based on the bandwidth derived in the bandwidth derivation step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002218601A JP2004064340A (en) | 2002-07-26 | 2002-07-26 | Bandwidth management device and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002218601A JP2004064340A (en) | 2002-07-26 | 2002-07-26 | Bandwidth management device and method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004064340A true JP2004064340A (en) | 2004-02-26 |
Family
ID=31939736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002218601A Pending JP2004064340A (en) | 2002-07-26 | 2002-07-26 | Bandwidth management device and method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004064340A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007214812A (en) * | 2006-02-08 | 2007-08-23 | Fujitsu Ltd | Band allocating method, communication controller, and communication equipment |
JP2012059206A (en) * | 2010-09-13 | 2012-03-22 | Toshiba Corp | Semiconductor integrated circuit, interconnect, and control program |
US8804644B2 (en) | 2008-10-29 | 2014-08-12 | Intel Corporation | Method, apparatus and system of dynamic bandwidth management |
-
2002
- 2002-07-26 JP JP2002218601A patent/JP2004064340A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007214812A (en) * | 2006-02-08 | 2007-08-23 | Fujitsu Ltd | Band allocating method, communication controller, and communication equipment |
US8804644B2 (en) | 2008-10-29 | 2014-08-12 | Intel Corporation | Method, apparatus and system of dynamic bandwidth management |
TWI471045B (en) * | 2008-10-29 | 2015-01-21 | Intel Corp | Method and apparatus of dynamic bandwidth management |
JP2012059206A (en) * | 2010-09-13 | 2012-03-22 | Toshiba Corp | Semiconductor integrated circuit, interconnect, and control program |
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 (en) | Receiving interface device in transmission system | |
KR101509243B1 (en) | Time synchronization and routing method in wireless sensor network, and apparatus for enabling the method | |
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 | |
US7933281B2 (en) | Method of bus configuration to enable device bridging over dissimilar buses | |
JPH11317748A (en) | Transmission interface device for transmission system | |
JP2004064340A (en) | Bandwidth management device and method | |
JPH11355294A (en) | Method and device for communication | |
JP3325839B2 (en) | Information transmitting apparatus and method, information receiving apparatus and method, and information transmitting and receiving apparatus and method | |
CN102598654B (en) | Camera device | |
WO2018014688A1 (en) | Frame stream control method and device, and computer storage medium | |
KR100429795B1 (en) | Method for managing bandwidth of serial bus and apparatus thereof | |
JP2004509518A (en) | Communication systems and devices | |
JPH10257096A (en) | Method and device for transferring data | |
JP4033152B2 (en) | Time division multiplexing apparatus and method | |
JPH11215143A (en) | Device and method for data communication | |
JP2007214812A (en) | Band allocating method, communication controller, and communication equipment | |
JP2004088330A (en) | Network bridge device and method therefor | |
KR101696509B1 (en) | Extended dsme mac for low power utility monitoring service | |
EP1103119A1 (en) | Method of, and a heterogeneous network for, transmitting data packets | |
JP2000278234A (en) | Time slot re-assignment system | |
JP4998367B2 (en) | Data transmission apparatus and bandwidth allocation method | |
JP5562811B2 (en) | Control device, transmission device and transmission system | |
JP4143881B2 (en) | Network system | |
JPH10257080A (en) | Method and device for transferring data | |
JP2000049830A (en) | Device, system and method for transmitting digital signal |