(57)【要約】【課題】従来、変則的なトラヒックに対しては好ましい状態を実現することができなかった。また、回線の優先度や出力先ブロックでの処理能力に応じたクロック周波数切替えは考慮されていなかった。さらに近年、多ポート回線にも容易に対応できるクロック制御が要求されてきている。そこで、必要に応じて最適な周波数のクロックを個別に各機能回路に供給し、これにより、各ブロックの処理能力に応じた、より少ない電力消費で動作する回路を提供することを目的とする。【解決手段】上記課題を解決するために、例えば、受信バッファ１０１又は１０２と、受信バッファ内の有効データ量を検出する回路２００と該検出回路での検出量に応じて各回路ブロックへ異なる周波数のクロックを供給するクロック供給回路２０１および２０６とを有するデータ処理装置を提供する。【選択図】図２
2007074607.tif 000002
【特許請求の範囲】
【請求項１】
受信するデータを処理するデータ処理装置であって、
データを受信する受信部と、
前記受信部で受信したデータを格納するバッファと、
前記バッファに格納されたデータを処理する第１のデータ処理部と、
前記第１のデータ処理部を制御する第２のデータ処理部と、
前記バッファの各格納量に基づいて、前記第１のデータ処理部のクロックと前記第２のデータ処理部のクロックとを、個別の値に制御するクロック切替部とを有する。
【請求項２】
受信するデータを処理するデータ処理装置であって、
データを受信する受信部と、
前記受信部で受信したデータを格納する第１及び第２のバッファと、
前記第１及び第２のバッファに格納されたデータを処理するデータ処理部と、
前記第１及び第２のバッファにおけるデータの格納量を監視する監視部と、
前記監視部で監視した前記第１のバッファの格納量及び当該第１のバッファに対して設定された重みと、前記監視部で監視した前記第２のバッファの格納量及び当該第２のバッファに対して設定された重みとに基づいて、前記データ処理部のクロックを選択する選択部とを有する。
【請求項３】
受信するデータを処理するデータ処理装置であって、
データを受信する受信部と、
前記受信部で受信したデータを格納する第１及び第２のバッファと、
前記第１及び第２のバッファに格納された格納されたデータを処理する第１のデータ処理部と、
前記第１のデータ処理部を制御する第２のデータ処理部と、
前記第１及び第２のバッファにおけるデータの格納量を監視する監視部と、
前記監視部で監視した前記第１のバッファの格納量及び当該第１のバッファに対して設定された第１の重みと、前記監視部で監視した前記第２のバッファの格納量及び当該第２のバッファに対して設定された第２の重みとに基づいて、前記第１のデータ処理部に対応する第１の基準に従って当該第１のデータ処理部のクロックを選択する第１の選択部と、
前記監視部で監視した前記第１のバッファの格納量及び当該第１のバッファに対して設定された第３の重みと、前記監視部で監視した前記第２のバッファの格納量及び当該第２のバッファに対して設定された第４の重みとに基づいて、前記第２のデータ処理部に対応する第２の基準に従って当該第１のデータ処理部のクロックを選択する第２の選択部とを有する。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はネットワークにおいてデータを中継するネットワーク中継装置等における通信処理回路（例えば回線インターフェース回路）における低消費電力化技術に関する。
【背景技術】
【０００２】
通信処理回路における装置内へ供給するクロック周波数を変化させることにより消費電力の低減を図った従来技術として、特許文献１には、受信したパケットの数を計数し、該計数結果に基づいてクロック分周比を変化させる方法が開示されている。また、特許文献２には、出力バッファに送出されるＡＴＭセル数を求め、該ＡＴＭセル数をもとにＡＴＭセルの流量を監視し、該流量に応じてクロックの周期を変化させる方法が開示されている。
【０００３】
【特許文献１】特開２００１−１４４７５３号公報
【特許文献２】特開２００３−６９６０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１及び２に開示された方法では、あらかじめ設定した時間内のパケット数観測結果をクロック周波数の切替え手段としている。このため、観測時間が長い場合は、瞬間的なパケット流入に対応できず、観測時間が短い場合は、全体(装置内部)の処理に余裕がある場合にも、瞬間的なパケット流入に対し高速なクロックで動作するなど、変則的なトラヒックに対しては好ましい状態を実現することができない。
【０００５】
また、特許文献２に示された方法では、回線出力部毎にクロック周波数の制御が可能であるが、単に一定時間のセル流量によってクロック周波数を切り替えているのみで、回線の優先度や出力先ブロックでの処理能力に応じたクロック周波数切替えなどは考慮されておらず、必要なデータ量と処理能力に応じた消費電力の制御に限界がある。
【０００６】
さらに近年、より多くの回線がひとつのシステムやLSIに集約されるため、多ポート回線にも容易に対応できるクロック周波数制御が要求されてきている。
【０００７】
従って本発明が解決しようとする課題の一つは、必要に応じて最適な周波数のクロックを個別に各機能回路に供給し、これにより、各ブロックの処理能力に応じた、より少ない電力消費で動作する回路を提供することである。
【課題を解決するための手段】
【０００８】
上記課題を解決するための手段として、例えば、受信バッファと、受信バッファ内の有効データ量を検出する回路と該検出回路での検出量に応じて、各回路ブロックへ異なる周波数のクロックを供給するクロック供給回路とを有する通信処理回路を提供する。
【発明の効果】
【０００９】
上記手段を有することにより、本発明の通信処理回路では、必要な処理能力を有し、かつ、より少ない消費電力で動作をすることが可能になる。
【発明を実施するための最良の形態】
【００１０】
以下、図１から図３を用いて本発明に好適な実施例を説明する。ただし、本発明は本実施例に限定されるものではない。
【００１１】
図１は、本発明による通信処理回路（データ処理回路・装置）の構成例を示すブロック図である。
【００１２】
外部からのデータは、入力端子１００（受信部）で受信し論理ポートに対応した受信バッファ１０１、１０２に格納される。受信バッファ１０１、１０２は、受信バッファ内の有効データ量を３段階で示す信号線を有している。
【００１３】
クロック供給回路１０５は、外部から供給されるシステムクロックを逓倍、分周し、Clock a0、a1、a2、a3、b0、b1、b2、b3をクロック切替回路１０６へ、Clock cを出力端子１０４へ、Clock d、eを周辺回路１０９へ供給する。
【００１４】
クロック切替回路１０６は、２つの受信バッファ１０１、１０２からの有効データ量を示す信号線をそれぞれ数量化し、その計算結果により、Clock a0、a1、a2、a3（a0＜a1＜a2＜a3）なるクロック信号からいずれかを選択し、受信データ処理回路１０３へのクロックとして供給し、Clock b0、b1、b2、b3（b0＜b1＜b2＜b3）なるクロック信号からいずれかを選択し、ＣＰＵ１０７へのクロックとして供給する。ＣＰＵ１０７は、受信データ処理回路１０３を含む回路を制御する。ＣＰＵ１０７と受信データ処理回路とを総称してデータ処理部ともいう。
【００１５】
受信データ処理回路１０３は、処理済みのデータを出力端子１０４へ供給し、出力端子１０４は処理済のデータをバス１０８を介して、装置内の別の部分へ与える。
【００１６】
図２は、図１におけるクロック切替回路１０６内部のクロック選択方式を示した図である。
【００１７】
２００は、図１における受信バッファ１０１、１０２の監視部を表し、受信バッファ内の閾値の設定と閾値の監視と２０１と２０６への閾値の通知とを行う。
【００１８】
２０１は、図１におけるClock a0、a1、a2、a3の選択回路を表し、２０６は図１におけるClock b0、b1、b2、b3の選択回路を表す。選択回路２０１及び選択回路２０６は、図1の受信バッファ１０１から受信バッファ閾値１と受信バッファ１０２から受信バッファ閾値１とを、監視部２００を介して受け取る。
【００１９】
選択回路２０１内部の２０２は、乗算ブロックを表し、各受信バッファの重みの設定、および、各受信バッファの重みと受信バッファの閾値の乗算結果を２０３に通知する。ここで受信バッファの重みとは、受信バッファの処理の優先度を表しており、値が大きいほど優先度が高いことを表す。本実施形態では、選択回路２０１が選択するClock a-xで動作する受信データ処理回路１０３では受信バッファ１０１の処理に優先を持たせている。よって受信バッファ１０１の受信バッファの重み＝２と設定し、受信バッファ１０２の受信バッファの重み＝１と設定している。乗算ブロック２０２は、受信バッファ１０１の受信バッファ閾値×受信バッファの重みの乗算結果Ａ＝２と、受信バッファ１０２の受信バッファ閾値×受信バッファの重みの乗算結果Ｂ＝１とを、それぞれ２０３に渡す。
【００２０】
２０３は、加算ブロックを表し、乗算ブロック２０２から受け取る乗算結果Ａ＝２とＢ＝１とを足した合計結果Ｃ＝３を２０４へ通知する。
【００２１】
比較ブロック２０４は、２０３からの合計結果Ｃと設定された選択クロックの割り当てとを比較し、クロックの選択信号を２０５に通知する。本実施の形態では合計結果Ｃ＝３をもとに、Clock a2を選択する信号を出力する。
【００２２】
２０５は、セレクタを表し、図１中の内部クロック供給回路１０５からのClock a1、a2、a3、a4が入力され、２０４からの選択信号をもとにClock a1、a2、a3、a4のいずれかを出力する。本実施の形態では、Clock a2が出力される。Clock a1、a2、a3、a4を選択する基準は、選択回路２０１固有に設定可能である。設定はコンソール端末やセンタから通信によるコマンド指示によって可変であることも好ましい。
【００２３】
選択回路２０６内部の乗算ブロック２０７、加算ブロック２０８、比較ブロック２０９、セレクタ２１０においても選択回路２０１内部と同様の処理を行う。ただし、選択回路２０６が選択するClock b-xで動作するＣＰＵ１０７は、受信バッファの優先を持たせていないため、受信バッファ１０１と受信バッファ１０２の重みを両方とも１と設定している。このため２０８の合計結果は２となり、Clock b1を選択する。Clock b1、b2、b3、b4を選択する基準は、選択回路２０１とは別に選択回路２０６固有に設定可能であり、コンソール端末やセンタから通信によるコマンド指示によって設定が可変であることも好ましい。
【００２４】
以上の説明の通り、図２の実施形態では、受信データ処理回路１０３、及び、ＣＰＵ１０７は２０１、２０６で示す別々のクロック選択回路を用意することにより、各処理能力に応じた最適なクロックで動作することができる。
【００２５】
また、２０２と２０７重み付けの設定値により、各回線（受信バッファ）の優先度や負荷に応じたクロック切替えが可能になる。例えば、音声、動画などのストリーミング系データに対しては受信バッファ１を使用し、遅延を抑える制御が可能になる。
【００２６】
また、２０２と２０７で個別に重み付けを設定できるため、各処理ブロックの能力に応じたクロック切替えが可能になる。例えば、パケット処理に直接関係するブロック（例えば１０３）に対しては重み付けを高く設定することで受信バッファの蓄積を防ぐ制御が可能になる。また、パケット処理に直接関係しないブロック（例：パケット処理用テーブルを管理するブロック（例えば１０７）に対しては重み付けを低く設定することで、ある程度高負荷状態になるまでは低速なクロックで動作させることが可能になる。
【００２７】
図2では受信バッファ１０１、１０２の閾値設定を同じにし、４種のクロックを選択した例を説明した。これに対し、受信バッファ毎に閾値設定を変え、選択するクロックを増やすことで、さらに精度の高いクロック制御が実現できる。以下、図３を使いクロック制御の精度を高める方式について説明する。
【００２８】
監視部３００は、受信バッファ１０１の閾値を０、１、２、３、４と設定し、受信バッファ１０２の閾値を０、１、２と設定している。図３の実施形態では、受信バッファの重みだけではなく、受信バッファの閾値もバッファの優先権の尺度となる。受信バッファの容量は同じであるが、閾値自体の大きさは受信バッファ１０１の方が大きいため（最大で４を設定できるため）、乗算ブロック３０２において、受信バッファ１０１の重みを１と設定し、受信バッファ１０２の重みを２と設定し、受信バッファの優先権を調整している。以下乗算ブロック３０２、加算ブロック３０３、比較ブロック３０４、セレクタ３０５は、図２の乗算ブロック２０２からセレクタ２０５と同様の処理を行い、Clock a5が出力される。
【００２９】
図３の実施形態では、図２の実施形態と異なり、選択するクロック数が９種類あり、受信バッファ１０１の閾値を細かく設定しているため、クロック制御の精度を高めることができる。例えば負荷が常に変わる変則的なトラヒックに対して、受信バッファ１０１を使えば、短期間で急激に負荷が増大しても、受信バッファがあふれてデータが廃棄される前に、高速なクロックに切り替えることが可能である。
【００３０】
以上の図１から３で説明した実施例では、受信バッファが2ポートの場合を例にあげているが、選択するクロックは各受信バッファの閾値と受信バッファ重みの乗算とそれらの合計値で設定することができるので、複数ポートの対応も可能である。
【００３１】
また、受信データ処理回路１０３とＣＰＵ１０７とを制御する例を説明したが、複数の受信でt-亜処理回路１０３を制御する通信処理回路にも適用可能である。
【００３２】
通信処理回路の受信データ処理能力は、受信データ処理回路１０３へ供給されるクロック、及び、ＣＰＵ１０７に供給されるクロックの周波数に応じて増減するが、受信データ処理能力と受信データ流入量の大小関係は受信バッファ１０１、１０２内のデータ量によって知ることができる。受信バッファのデータ量が多い場合は、受信データ処理能力＜受信データ流入量と判断し、クロック周波数をあげ、受信バッファのデータ量が少ない場合には、受信データ処理能力>受信データ流入量と判断し、クロック周波数を落とすことができる。
【００３３】
また、受信データ処理回路１０３とＣＰＵ１０７へ供給するクロック周波数は受信バッファに優先権をもたせることにより、受信バッファのデータ量と各ブロックの処理能力に応じて個別に設定することができる。
【００３４】
よって、本発明の通信処理回路は、必要な処理能力を有し、かつ、より少ない消費電力で動作をすることが可能になる。
【図面の簡単な説明】
【００３５】
【図１】通信処理回路の構成例を示すブロック図。
【図２】クロック切替回路１０６におけるクロック選択方法（１）の実行例を示すブロック及びデータフロー図。
【図３】クロック切替回路１０６におけるクロック選択方法（２）の実行例を示すブロック及びデータフロー図。
【符号の説明】
【００３６】
１００…入力端子、１０１、１０２…受信バッファ、１０３…受信データ処理回路、１０４…出力端子、１０５…内部クロック供給回路、１０６…クロック切替回路、１０７…ＣＰＵ、１０８…主信号系バス、１０９…メモリ等の周辺回路
【図１】
2007074607.tif 000003
【図２】
2007074607.tif 000004
【図３】
2007074607.tif 000005