(57)【特許請求の範囲】
【請求項１】
所定の処理単位に分割されたパケットデータの入力を受け付けて一時的に記憶するパケットバッファ部と、当該バケットバッファ部から出力された前記パケットデータを処理するパケット処理部と、当該パケット処理部の動作タイミングを規定するクロック信号を当該パケット処理部に供給するクロック制御部と、を備えたパケット処理装置であって、
前記パケットバッファ部内における前記パケットデータの蓄積量を検出して当該パケットバッファ部内に前記パケットデータが存在しない時間を表すバッファ空き時間を計測するバッファ空き時間計測部を備えると共に、
前記クロック制御部は、前記バッファ空き時間計測部にて計測された前記バッファ空き時間と、前記パケットデータを処理する前記パケット処理部の数に基づいて予め設定された比較対象時間と、を比較して、当該比較結果に基づいて前記パケット処理部に対する前記クロック信号の供給動作を変更する、
ことを特徴とするパケット処理装置。
【請求項２】
前記クロック制御部は、前記パケット処理部に対する前記クロック信号の供給動作を停止するよう、当該クロック信号の供給動作を変更する、
ことを特徴とする請求項１記載のパケット処理装置。
【請求項３】
前記クロック制御部は、前記パケット処理部に前記クロック信号の周波数を低く設定して当該クロック信号を供給するよう、当該クロック信号の供給動作を変更する、
ことを特徴とする請求項１記載のパケット処理装置。
【請求項４】
前記比較対象時間は、前記パケットデータが全ての前記パケット処理部にて処理される時間であり、
前記クロック制御部は、前記バッファ空き時間が前記比較対象時間よりも大きいときに、前記パケット処理部に対する前記クロック信号の供給を停止する、
ことを特徴とする請求項１乃至３のいずれかに記載のパケット処理装置。
【請求項５】
前記バッファ空き時間計測部は、前記パケットデータが存在しない状態の前記パケットバッファ部内に前記パケットデータが入力されたことを検出し、
前記クロック制御部は、前記パケット処理部に対して前記クロックの供給動作を停止しているときに前記バッファ空き時間計測部にて前記パケットデータの入力を検出すると、前記パケット処理部に対する前記クロック信号の供給動作を開始する、
ことを特徴とする請求項１乃至４のいずれかに記載のパケット処理装置。
【請求項６】
所定の処理単位に分割されたパケットデータの入力を受け付けて一時的に記憶するパケットバッファ部と、当該バケットバッファ部から出力された前記パケットデータを処理するパケット処理部と、を備えたパケット処理装置に、
前記パケットバッファ部内における前記パケットデータの蓄積量を検出して当該パケットバッファ部内に前記パケットデータが存在しない時間を表すバッファ空き時間を計測するバッファ空き時間計測部と、
前記パケット処理部の動作タイミングを規定するクロック信号を当該パケット処理部に供給すると共に、前記バッファ空き時間計測部にて計測された前記バッファ空き時間と、前記パケットデータを処理する前記パケット処理部の数に基づいて予め設定された比較対象時間と、を比較して、当該比較結果に基づいて前記パケット処理部に対する前記クロック信号の供給動作を変更するクロック制御部と、
を実現させるためのプログラム。
【請求項７】
前記クロック制御部は、前記パケット処理部に対する前記クロック信号の供給動作を停止するよう、当該クロック信号の供給動作を変更する、
ことを特徴とする請求項６に記載のプログラム。
【請求項８】
前記バッファ空き時間計測部は、前記パケットデータが存在しない状態の前記パケットバッファ部内に前記パケットデータが入力されたことを検出し、
前記クロック制御部は、前記パケット処理部に対して前記クロックの供給動作を停止しているときに前記バッファ空き時間計測部にて前記パケットデータの入力を検出すると、前記パケット処理部に対する前記クロック信号の供給動作を開始する、
ことを特徴とする請求項６又は７に記載のプログラム。
【請求項９】
所定の処理単位に分割されたパケットデータの入力を受け付けて一時的に記憶するパケットバッファ部と、当該バケットバッファ部から出力された前記パケットデータを処理するパケット処理部と、を備えたパケット処理装置において、前記パケット処理部に対する当該パケット処理部の動作タイミングを規定するクロック信号の供給動作を制御するクロック制御方法であって、
前記パケットバッファ部内における前記パケットデータの蓄積量を検出して当該パケットバッファ部内に前記パケットデータが存在しない時間を表すバッファ空き時間を計測するバッファ空き時間計測工程と、当該バッファ空き時間計測工程にて計測された前記バッファ空き時間と、前記パケットデータを処理する前記パケット処理部の数に基づいて予め設定された比較対象時間と、を比較して、当該比較結果に基づいて前記パケット処理部に対する前記クロック信号の供給動作を変更するクロック供給動作変更工程と、
を有することを特徴とするクロック制御方法。
【請求項１０】
前記クロック供給動作変更工程は、前記パケット処理部に対する前記クロック信号の供給動作を停止するよう、当該クロック信号の供給動作を変更する、
ことを特徴とする請求項９に記載のクロック制御方法。
【請求項１１】
前記バッファ空き時間計測工程は、前記パケットデータが存在しない状態の前記パケットバッファ部内に前記パケットデータが入力されたことを検出し、
前記クロック供給動作変更工程は、前記パケット処理部に対して前記クロックの供給動作を停止しているときに前記バッファ空き時間計測工程にて前記パケットデータの入力を検出すると、前記パケット処理部に対する前記クロック信号の供給動作を開始する、
ことを特徴とする請求項９又は１０に記載のクロック制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット処理装置にかかり、特に、クロック信号に基づくタイミングでパケットデータを処理するパケット処理装置に関する。
【背景技術】
【０００２】
地球環境保全に向けて省エネルギー対策が世界レベルで検討される中、省エネルギー及び二酸化炭素排出量削減に向けた法制化検討も各国で議論され始めている。一般的に、省エネルギー対策は、運輸、物流及び製造に伴うエネルギー消費が対象となって受け取られることが多いが、近年では、コンピュータ、サーバなどの電子機器同様に情報通信機器やネットワークインフラ関連のエネルギー消費量の増加も注目されつつあり、かかる分野でも省エネルギー対策が必要となる。
【０００３】
ここで、コンピュータ、サーバなどの電子機器では、演算処理を行わない（いわゆる待機状態と呼ばれる）時間が比較的多いことから、待機状態の消費電力を抑制する事で平均消費電力量を削減することが可能であり、換算される二酸化炭素排出量の削減に寄与できる効果が高い。一方、情報通信機器においては、アナログ通信からデジタル通信に変化しながらも、常にデータ通信可能な状態を保持していることが求められるため、コンピュータ、サーバなどの電子機器のように待機状態を許容できない前提条件がある。すなわち定常動作電力値を下げることしか、平均消費電力量を削減することができないことになる。
【０００４】
このため電力削減は、もっぱら電子部品の高集積化と電子部品の微細化に伴う動作電圧の低電圧化というデバイス技術の視点での手法が主流である。しかしながら、電子部品の微細化に伴う動作電圧の低電圧効果については１ボルトを下回るようになり、動作電圧の低下幅が鈍化する傾向にあり、高集積化による効果も鈍化傾向にあるのが実状である。このため、大幅な消費電力低下が困難になってきている。また、微細化が進み９０ｎｍ（ナノメートル）を下回るようになり、漏れ電流が増大し無視できない値になってきたため、デバイスベンダー毎にデバイス技術による研究が行われているものの、待機状態時の消費電力が大幅に増大しつつある。
【０００５】
一方、回路設計の視点による省エネルギー対策も研究されている。例えば、設計電子部品内部の回路構成の主流であるクロック同期回路構成及び方式として、クロックを用いない非同期回路構成及び方式を採用することで、低消費電力化をはかる試みも徐々に進んでいる。この手法は、定常動作電力と待機状態の消費電力を下げることで平均消費電力量の削減効果を狙っているが、一般的な電子部品、例えばＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable
Gate Array）における開発手法として非同期回路構成および方式を採用するには、設計及び検証のための開発ツールが整備されていないため、一般の開発者には活用の機会がないのが課題である。
【０００６】
ここで、図１を参照して、入力トラフィック容量が変動するパケット通信機器のパケット処理機能の構成例を示す。この構成においては、まず、入力用クロック入力端１３１に入力されるクロックに同期して、パケット入力端１１１よりパケットがパケットバッファＦ部１１２に入力され、当該バッファＦ部１１２にパケットが蓄積される。また、パケットバッファＦ部１１２に蓄積されたパケットは、第一のパケット処理Ａを行うパケット処理Ａ部１１３に出力され、当該パケット処理Ａ部にてパケットに対する処理Ａが行われる。また、パケット処理Ａ部１１３で処理Ａが終ったパケットは、クロック乗換Ｄ部１１４を経由して第二のパケット処理Ｂを行うパケット処理Ｂ部１１５にパケットが受け渡され処理Ｂが行われる。また、パケット処理Ｂ部１１５で処理Ｂが終ったパケットは、クロック乗換Ｅ部１１６を経由して第三のパケット処理Ｃを行うパケット処理Ｃ部１１７にパケットが受け渡され処理Ｃが行われる。また、パケット処理Ｃ部１１７で処理Ｃが終ったパケットは、パケットバッファＧ部１１８に受け渡され、出力用クロック入力端１３２より入力されたクロックに同期して、パケット出力端１１９よりパケットを出力する。また、リファレンスクロック入力端１３４から入力されたリファレンスクロックを、クロック分配部１４０は、各構成ブロックに必要とされる適切な周波数のクロック１、クロック２、及びクロック３を生成し、各構成ブロックに供給する。
【０００７】
しかしながら、上記構成では、入力パケット間隔が大きくなって入力トラフィック容量が低くなり、パケット処理Ａ部、パケット処理Ｂ部、及び、パケット処理Ｃ部にパケットが存在せずパケット処理動作を必要としないときであっても、クロック分配部１４０からクロックが常時供給される。従って、各パケット処理部でパケット処理を必要としないときでもクロッククロックが常時供給されているため、各部の電力消費が定常的に発生する、所謂、待機電力と呼ばれる電力消費が生じる。その結果、低トラフィック時にも関わらず平均動作消費電力量が大きく低減されることが無く、省電力化を図ることができない、という問題があった。
【０００８】
これに対して、下記特許文献１，２では、クロック信号の供給を停止することによって、消費電力を抑制する技術を開示している。具体的に、特許文献１では、画像処理回路において、画像データ中の最も高い輝度部分の値である最大値に応じて、動作不要なフリップフロップへの動作クロックを停止している。また、特許文献２では、常時動作マクロと間欠動作マクロが連続している場合に、前段の常時動作マクロから一定時間パケットが出力されないことを検知すると、後段の間欠動作マクロへのクロック供給を停止している。
【０００９】
【特許文献１】特開２００６−３４５２７８号公報
【特許文献２】特開２００４−２７４０９９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、上述した技術では、クロック信号にて作動する処理部の段数が多い場合には、適切に対応することができない。例えば、上記特許文献２の技術では、ある処理部へのパケットの出力だけを監視していても、クロックの供給を停止する対象となる処理部に処理データが残っている場合には、かかるデータを処理することができない。その結果、データ処理のスループットが低下する、という問題が生じる。
【００１１】
このため、本発明の目的は、上述した課題である、入力トラフィック容量が変動するパケット通信機器において、スループットを損なうことなく、消費電力の低下を図る、ことにある。
【課題を解決するための手段】
【００１２】
そこで、本発明の一形態であるパケット処理装置は、
所定の処理単位に分割されたパケットデータの入力を受け付けて一時的に記憶するパケットバッファ部と、当該バケットバッファ部から出力されたパケットデータを処理するパケット処理部と、当該パケット処理部の動作タイミングを規定するクロック信号を当該パケット処理部に供給するクロック制御部と、を備え、
パケットバッファ部内におけるパケットデータの蓄積量を検出して当該パケットバッファ部内にパケットデータが存在しない時間を表すバッファ空き時間を計測するバッファ空き時間計測部を備えると共に、
上記クロック制御部は、上記バッファ空き時間計測部にて計測されたバッファ空き時間に基づいてパケット処理部に対するクロック信号の供給動作を変更する、
という構成を採っている。
【００１３】
また、本発明の他の形態であるプログラムは、
所定の処理単位に分割されたパケットデータの入力を受け付けて一時的に記憶するパケットバッファ部と、当該バケットバッファ部から出力されたパケットデータを処理するパケット処理部と、を備えたパケット処理装置に、
パケットバッファ部内におけるパケットデータの蓄積量を検出して当該パケットバッファ部内にパケットデータが存在しない時間を表すバッファ空き時間を計測するバッファ空き時間計測部と、パケット処理部の動作タイミングを規定するクロック信号を当該パケット処理部に供給すると共にバッファ空き時間計測部にて計測されたバッファ空き時間に基づいてパケット処理部に対するクロック信号の供給動作を変更するクロック制御部と、
を実現させる、という構成を採る。
【００１４】
さらに、本発明の他の形態であるクロック制御方法は、
所定の処理単位に分割されたパケットデータの入力を受け付けて一時的に記憶するパケットバッファ部と、当該バケットバッファ部から出力されたパケットデータを処理するパケット処理部と、を備えたパケット処理装置において、パケット処理部に対する当該パケット処理部の動作タイミングを規定するクロック信号の供給動作を制御するクロック制御方法であって、
パケットバッファ部内におけるパケットデータの蓄積量を検出して当該パケットバッファ部内にパケットデータが存在しない時間を表すバッファ空き時間を計測するバッファ空き時間計測工程と、当該バッファ空き時間計測工程にて計測されたバッファ空き時間に基づいてパケット処理部に対するクロック信号の供給動作を変更するクロック供給動作変更工程と、
を有する、という構成を採る。
【発明の効果】
【００１５】
本発明は、以上のように構成されることにより、パケットデータのスループットの低下を抑制して当該入力されたパケットデータを処理しつつ、クロック信号の供給動作を変更することで、装置の消費電力量の低下を図ることができる、という優れた効果を有する。
【発明を実施するための最良の形態】
【００１６】
本発明は、入力されるパケットデータの蓄積量が「０」である時間を計測して、当該時間に応じてパケット処理部の動作タイミングを規定するクロック信号の供給動作を変更する点に特徴を有する。
【００１７】
そして、本発明の一形態であるパケット処理装置は、
所定の処理単位に分割されたパケットデータの入力を受け付けて一時的に記憶するパケットバッファ部と、当該バケットバッファ部から出力されたパケットデータを処理するパケット処理部と、当該パケット処理部の動作タイミングを規定するクロック信号を当該パケット処理部に供給するクロック制御部と、を備え、
パケットバッファ部内におけるパケットデータの蓄積量を検出して当該パケットバッファ部内にパケットデータが存在しない時間を表すバッファ空き時間を計測するバッファ空き時間計測部を備えると共に、
上記クロック制御部は、バッファ空き時間計測部にて計測されたバッファ空き時間に基づいてパケット処理部に対するクロック信号の供給動作を変更する、
という構成を採る。
【００１８】
また、上記クロック制御部は、パケット処理部に対するクロック信号の供給動作を停止するよう、あるいは、パケット処理部にクロック信号の周波数を低く設定して当該クロック信号を供給するよう、当該クロック信号の供給動作を変更する、という構成を採る。
【００１９】
上記発明によると、まず、通常の処理では、処理対象となるパケットデータがパケットバッファに入力され、パケットバッファ部に蓄積される。そして、パケットデータは、パケットバッファ部から順番にパケット処理部に出力される。すると、パケット処理部に供給されているクロック信号に基づく動作タイミングで、パケット処理部にてパケットデータが処理される。ここで、上記処理の最中には、上記パケットバッファ部内のパケットデータの蓄積量が検出され、当該パケットバッファ部内にパケットデータが存在しない時間が計測される。そして、計測したパケットデータが存在しない時間に応じて、上記パケット処理部へのクロック信号の供給動作を変更する。例えば、クロック信号の供給を停止したり、あるいは、クロック信号の周波数を低く設定して当該クロック信号をパケット処理部に供給する。
【００２０】
このように、入力されるパケットデータの入力状態に応じて、データ処理に影響が無いようパケット処理部へのクロック信号の供給動作を変更している。従って、パケットデータのスループットの低下を抑制して当該入力されたパケットデータを処理しつつ、クロック信号の供給の停止等を行うことで、装置の消費電力量の低下を図ることができる。
【００２１】
また、上記クロック制御部は、バッファ空き時間計測部にて計測されたバッファ空き時間と、パケットデータを処理するパケット処理部の数に基づいて予め設定された比較対象時間と、を比較して、当該比較結果に基づいてパケット処理部に対するクロック信号の供給動作を変更する、という構成を採る。また、上記比較対象時間は、パケットデータが全てのパケット処理部にて処理される時間であり、上記クロック制御部は、バッファ空き時間が比較対象時間よりも大きいときに、パケット処理部に対するクロック信号の供給を停止する、という構成を採る。また、上記バッファ空き時間計測部は、パケットデータが存在しない状態のパケットバッファ部内にパケットデータが入力されたことを検出し、上記クロック制御部は、パケット処理部に対してクロックの供給動作を停止しているときに上記バッファ空き時間計測部にてパケットデータの入力を検出すると、パケット処理部に対するクロック信号の供給動作を開始する、という構成を採る。
【００２２】
このように、特に、パケットバッファ部にパケットデータが全く蓄積されていない状態の時間が、パケット処理部による処理時間を超えた場合には、パケット処理部へのクロック信号の供給を停止する。この場合には、全てのパケット処理部にパケットデータが存在しないため、クロック信号の供給を停止しても問題はない。従って、消費電力量の低減を図ることができる。また、クロック信号の供給を停止しているときに、パケットデータがパケットバッファ部に入力されると、すぐにクロック信号の供給が再開され、パケット処理部が作動可能となる。従って、入力されたパケットデータを処理することができ、スループットの低下を抑制できる。
【００２３】
以下、本発明の具体的な構成及び動作を、実施形態にて説明する。なお、実施形態では、パケット処理装置がルータやスイッチである場合を例示するが、パケット処理装置はこれらに限定されない。
【００２４】
＜実施形態１＞
本発明の第１の実施形態を、図２乃至図５を参照して説明する。図２は、パケット通信機器の一例を示す機能ブロック図であり、図３は、クロック制御部の構成を示す機能ブロック図である。図４は、パケット蓄積量とクロック供給動作の関係を示す説明図である。図５は、クロック制御部の動作を示すフローチャートである。
【００２５】
［構成］
図２は、パケット通信機器の一例であるルータやスイッチの構成、特に、パケット処理を行うパケット処理機能の構成を示す図である。この図に示すように、ルータやスイッチといったパケット通信機器は、まず、入力用クロック入力端３１から入力されるクロックに同期して、パケット入力端１１より予め設定されたデータの処理単位に分割されたパケットデータ（以下、「パケット」と呼ぶ）の入力を受け付けて一時的に蓄積するパケットバッファＦ部１２（パケットバッファ部）を備えている。そして、パケットバッファＦ部１２は、当該バッファ内のパケット蓄積量をパケットバッファＦ部蓄積量信号として、一定の時間間隔毎あるいはパケットの入力を受ける毎に、後述するクロック制御部２０に送る。
【００２６】
なお、パケットバッファＦ部１２の最大パケット蓄積量は、後述するパケット処理Ａ部１３とクロック乗換Ｄ部１４とパケット処理Ｂ部１５とクロック乗換Ｅ部１６とパケット処理Ｃ部１７を、パケットが伝達する時間に相当するパケット量以上の大きさを有するものである。換言すると、最大パケット蓄積量は、パケットバッファＦ部１２から出力された１つのパケットが、当該パケットバッファＦ部１２よりも後段に位置して当該パケットを処理する全ての処理部（パケット処理部１３，１５，１７と、クロック乗換部１４，１６を含む）にて、処理される時間が経過する間に出力可能な最大限のパケット出力量である。但し、パケットバッファＦ部の最大蓄積量は、上記量に限定されない。
【００２７】
そして、上記パケットバッファＦ部１２は、クロック分配部４０から供給されたクロックに基づいて、蓄積しているパケットをパケット処理Ａ部１３に出力する。すると、パケット処理Ａ部１３は、後述するクロック制御部２から供給されるクロックＡに同期して、入力されたパケットに対して第一のパケット処理Ａを行う。そして、パケット処理Ａ部１３は、処理Ａが終わったパケットをクロック乗換Ｄ部１４に出力する。これにより、処理Ａが終わったパケットは、当該クロック乗換Ｄ部１４を経由して、パケット処理Ｂ部１５に出力される。その後、パケット処理Ｂ部１５は、後述するクロック制御部２から供給されるクロックＢに同期して、入力されたパケットに対して第二のパケット処理Ｂを行う。そして、パケット処理Ｂ部１５は、処理Ｂが終わったパケットをクロック乗換Ｅ部１６に出力する。これにより、処理Ｂが終わったパケットは、当該クロック乗換Ｅ部１６を経由して、パケット処理Ｃ部１７に出力される。その後、パケット処理Ｃ部１７は、後述するクロック制御部２０から供給されるクロックＣに同期して、入力されたパケットに対して第三のパケット処理Ｃを行う。そして、パケット処理Ｃ部１７で処理Ｃが終ったパケットは、パケットバッファＧ部１８に出力され、当該パケットバッファＧ部１８は、出力用クロック入力端３２から入力されたクロックに同期して、パケット出力端１９からパケットを出力する。
【００２８】
また、クロック分配部４０は、リファレンスクロック入力端３４から入力されたリファレンスクロックから、各構成ブロック（クロック制御部２０等）に適切な周波数のクロック１、クロック２及びクロック３を生成し、当該各構成ブロックに供給する。具体的には、図２に示すように、クロック１を、パケットバッファＦ部１２とクロック乗換Ｄ部１４とクロック制御部２０とに供給し、クロック２を、クロック乗換Ｄ部１４とクロック乗換Ｅ部１６とクロック制御部２０とに供給し、クロック３を、クロック乗換Ｅ部１６とパケットバッファＧ部１８とクロック制御部２０とに供給する。
【００２９】
ここで、説明を簡単にするため、クロック周波数は、クロック１、クロック２、及びクロック３の３種類としているが、各構成ブロックに複数のクロック周波数を供給してもよい。なお、クロック分配部４０がクロック１、クロック２、及びクロック３の３種類のクロックを供給するクロック制御部２０は、後述するように、パケット処理Ａ部１３、パケット処理部Ｂ部１５、及びパケット処理Ｃ部１７に、それぞれクロックＡ、クロックＢ、及びクロックＣとして供給する構成を採っている。
【００３０】
次に、図２に開示したクロック制御部２０の詳細な構成を、図３を参照して説明する。なお、以下に説明するクロック制御部２０の機能は、当該クロック制御部を構成する演算装置に所定のプログラムが組み込まれることによって実現される。つまり、図３に示すように、クロック制御部２は、所定のプログラムが組み込まれることによって構築された、パケットバッファＦ部空き状態時間計測部２１と、伝達時間登録レジスタ２２と、比較判定部２３と、を備えている。
【００３１】
図３に示すように、クロック制御部２０が備えるパケットバッファＦ部空き状態時間計測部２１（バッファ空き時間計測部）は、パケットバッファＦ部１２から送られてきたパケットバッファＦ部蓄積量信号（以下、「蓄積量信号」と呼ぶ）を受け付ける。そして、パケットバッファＦ空き状態時間計測部２１は、受け付けた蓄積量信号に基づいて、パケットバッファＦ部にパケットが１つも蓄積されていない状態（蓄積されているパケットが存在しない状態）である時間を計測する機能を有する。そして、この計測は、一定の時間間隔毎に、あるいは、上記蓄積量信号を受信する毎に行われ、計測されたパケットバッファＦ部空き状態時間を、比較判定部２３に渡す。例えば、図４の時間ａからｂ，ｃの間に示すように、パケットバッファＦ部蓄積量（縦軸）が「０」である状態が継続する時間（横軸）を計測する。逆に、パケットバッファＦ部蓄積量が「０」である状態（蓄積されているパケットが存在しない状態））から、パケットバッファＦ部１２に１つでもパケットが入力され蓄積されたことを検出すると、パケットバッファ蓄積量が「０」ではないため、パケットバッファＦ部空き状態時間を計測できず、当該時間を「０」として比較判定部２３に通知する。
【００３２】
また、上記伝達時間登録レジスタ２２は、伝達時間設定情報入力端３３から入力された伝達時間設定情報（比較対象時間）を受けて、伝達時間として記憶する。そして、伝達時間登録レジスタ２２は、記憶している伝達時間情報を比較判定部２３に出力する。なお、上記伝達時間設定情報は、本実施形態では、上述したパケットバッファＦ部１２に蓄積され出力された１つのパケットが、パケット処理Ａ部１３とクロック乗換Ｄ部１４とパケット処理Ｂ部１５とクロック乗換Ｅ部１６とパケット処理Ｃ部１７を伝達して、処理が完了するまでに要する時間に相当する時間である。つまり、パケットバッファＦ部１２から出力された１つのパケットが、当該パケットバッファＦ部１２よりも後段に位置して当該パケットを処理する全ての処理部（パケット処理部１３，１５，１７と、クロック乗換部１４，１６を含む）にて、処理される時間である。
【００３３】
また、上記比較判定部２３は、パケットバッファＦ部空き状態時間計測部２１から出力されたパケットバッファＦ部空き状態時間と、伝達時間登録レジスタ２２から出力された伝達時間と、を比較する。なお、この比較は、パケットバッファＦ部空き状態時間計測部２１から計測結果が通知する毎に、あるいは、一定の時間間隔にて行われる。そして、比較判定部２３による比較の結果、図４の時間ｂ以降に示すように、パケットバッファＦ部空き状態時間が伝達時間よりも大きくなると、クロックＡゲート部２４、クロックＢゲート部２５、クロックＣゲート部２６に対して、「ゲートＯＮ」であるクロックゲートＡ信号、クロックゲートＢ信号、及びクロックゲートＣ信号をそれぞれ出力する。この「ゲートＯＮ」信号は、各ゲート部２４，２５，２６からクロックの出力を停止するよう制御する信号である。従って、「ゲートＯＮ」信号を受けた各ゲート部２４，２５，２６は、各パケット処理部１３，１５，１７へのクロック出力を停止する。
【００３４】
また、比較判定部２３は、上述した比較の結果、パケットバッファＦ部空き状態時間が伝達時間よりも大きい場合を除いて、「ゲートＯＦＦ」であるクロックゲートＡ信号、クロックゲートＢ信号、及びクロックゲートＣ信号をそれぞれ出力する。この「ゲートＯＦＦ」信号は、各ゲート部２４，２５，２６からクロックを出力するよう制御する信号である。
【００３５】
従って、図４の時間ｂ以前又は時間ｃ以降に示すように、比較判定部２３（クロック制御部２０）は、パケットバッファＦ部蓄積量が「０」でない場合、及び、蓄積量が「０」であってもその継続時間であるパケットバッファＦ部空き状態時間（バッファ空き時間）が伝達時間を超えていない場合には、常にクロック信号をパケット処理部１３，１５，１７に供給している状態となる。そして、蓄積量が「０」であってその継続時間であるパケットバッファＦ部空き状態時間が伝達時間を超えた場合には、その間、クロック信号の供給を停止する状態となり、クロック供給動作を変更する。さらにその後、クロック信号を供給していない状態から、パケットバッファＦ部１２にパケットが入力されて蓄積量が「０」ではなくなり、つまり、パケットバッファＦ部空き状態時間が「０」となると、再びクロック信号をパケット処理部１３，１５，１７に供給するよう作動し、クロック供給動作を変更する。
【００３６】
なお、上記では、比較判定部２３にて、パケットバッファＦ部蓄積量が「０」であるパケットバッファＦ部空き状態時間が伝達時間を超えた場合に、各パケット処理部１３，１５，１７へのクロック供給を停止する場合を例示したが、その供給停止のタイミングは、上述したタイミングに限定されない。また、パケットバッファＦ部空き状態時間と比較する伝達時間は、必ずしも上述した値であることに限定されない。例えば、上記パケットバッファＦ部空き状態時間に基づいて、他の判断基準に従ってクロック供給を停止するなど、クロック供給動作を変更してもよい。
【００３７】
［動作］
次に、上述したパケット通信装置の動作、具体的には、クロック制御部２０の動作を、図４及び図５のフローチャートを参照して説明する。
【００３８】
まず、クロック制御部２０は、パケットバッファＦ部空き状態時間計測部２１にて、パケットバッファＦ部１２から送られてきたパケットバッファＦ部蓄積量信号を受け付ける（ステップＳ１）。そして、パケットバッファＦ部空き状態時間計測部２１は、パケットバッファＦ部１２内に入力パケットが蓄積されている場合には（ステップＳ２でノー、図４で時間ａ以前）、パケット空き状態時間をクリア（「０」に設定）し（ステップＳ６）、パケット処理部１３，１５，１７にクロックを供給した状態のままとする（ステップＳ７）。つまり、比較判定部２３は、パケット空き状態時間が「０」であるため、各クロックゲート部２４，２５，２６に対しては「ゲートＯＦＦ」信号を出力し続け、当該各クロックゲート部２４，２５，２６から各パケット処理部１３，１５，１７に、クロック信号が供給され続けられ、パケットバッファＦ部１２に蓄積されたパケットがパケット処理部等で処理されることとなる。
【００３９】
その後、パケットバッファＦ部空き状態時間計測部２１が、パケットバッファＦ部１２から蓄積量信号が「０」、つまり、パケットが蓄積されていないことを検出すると（ステップＳ１、ステップＳ２でイエス、図４で時間ａ以降）、パケット蓄積量が「０」であるパケット空き状態時間を計測する（ステップＳ３、バッファ空き時間計測工程）。そして、計測したパケットバッファ空き状態時間を、比較判定部２３にて伝達時間登録レジスタに登録されている伝達時間と比較する（ステップＳ４）。このとき、パケットバッファ空き状態時間が伝達時間を超えない場合には（ステップＳ４でノー、図４で時間ｂより前）、比較判定部２３は「ゲートＯＦＦ」信号を各クロックゲート部２４，２５，２６に出力し続ける。これにより、当該各クロックゲート部２４，２５，２６から各パケット処理部１３，１５，１７に、クロック信号が供給され続けられ（ステップＳ７）、パケットバッファＦ部１２に蓄積されたパケットがパケット処理部等で処理されることとなる。
【００４０】
その後、パケットバッファＦ部１２から蓄積量信号を受信するたびに上記処理を繰り返し、当該蓄積量信号が「０」である状態が続くと、パケットバッファＦ部空き状態時間計測部２１にて計測したパケットバッファＦ部空き状態時間が、比較判定部２３による比較により伝達時間を超えることが検出される（ステップＳ４でイエス、図４で時間ｂ）。すると、比較判定部２３は、「ゲートＯＮ」信号を各クロックゲート部２４，２５，２６に出力する。これにより、当該各クロックゲート部２４，２５，２６から各パケット処理部１３，１５，１７へのクロック信号の供給が停止される（ステップＳ５、クロック供給動作変更工程）。そして、上記クロック信号の供給の停止は、上述したようにパケットバッファＦ部空き状態時間計測部２１にて計測されるパケットバッファＦ部空き状態時間が、伝達時間を超えている限り継続する（図４の時間ｂから時間ｃ）。
【００４１】
その後、パケットバッファＦ部１２にパケットデータが入力され、パケットバッファＦ部空き状態時間計測部２１が、パケットバッファＦ部１２からの蓄積量信号が「０」から「０」ではなくなったこと、つまり、パケットが再度蓄積されたことを検出すると（ステップＳ１、ステップＳ２でノー、バッファ空き時間計測工程、図４で時間ｃ以降）、バッファ空き状態時間をクリア（「０」に設定）し（ステップＳ６）、パケット処理部１３，１５，１７にクロックの供給を再開する（ステップＳ７、クロック供給動作変更工程）。つまり、比較判定部２３は、バッファ空き状態時間が「０」となるため、各クロックゲート部２４，２５，２６に対しては「ゲートＯＦＦ」信号を出力し、その後、当該各クロックゲート部２４，２５，２６から各パケット処理部１３，１５，１７にクロック信号を供給し続ける。これにより、パケットバッファＦ部１２に蓄積されたパケットがパケット処理部等で処理されることとなる。
【００４２】
以上のように、本実施形態によると、パケットバッファＦ部１２内にパケットデータが存在しない時間が計測され、計測したパケットデータが存在しない時間に応じて、パケット処理部１３，１５，１７へのクロック信号の供給動作を変更している。例えば、パケットデータが蓄積されていない時間が、１つのパケットの一連の処理時間となる伝達時間を超えると、クロック信号の供給が停止される。これにより、処理対象となるパケットが蓄積されていないときにパケット処理部へのクロック信号の供給を停止しているため、スループットに影響が無く、消費電力量の低減を図ることができる。一方で、パケットバッファＦ部１２にパケットデータが蓄積されると、クロック信号の供給が再開されるため、当該パケットデータの処理を迅速に再開でき、スループットの低下を防止することができる。
【００４３】
ここで、上記では、パケットバッファＦ部１２にパケットが存在しない状態が設定した時間（伝達時間）を超えた場合に、パケット処理部等へのクロック信号の供給を停止する場合を例示したが、かかる場合に、クロック制御部２０は、クロック信号の供給を完全に停止する代わりに、供給するクロック周波数を低く設定して、当該低く設定したクロック信号をパケット処理部等に供給してもよい。このようにしても、処理すべきパケットがパケットバッファＦ部１２に存在しない場合に、クロック供給動作に伴う消費電力量を低減することができる。
【００４４】
また、上記では、図２に示すように、パケットバッファＦ部１２の後段に位置し、パケットデータを処理するパケット処理部の一例として、３つのパケット処理部と２つのクロック乗換部で示したが、かかる構成に限定されない。パケットバッファＦ部１２の後段には、Ｎ個のパケット処理部と（Ｎ−１）個のクロック乗換部（Ｎ＝１，２，３，・・・）が設けられていてもよく、他の個数のパケット処理部が設けられていてもよい。
【産業上の利用可能性】
【００４５】
本発明は、ルータやスイッチなど、パケットデータの入力を待機するパケット処理装置に適用でき、産業上の利用可能性を有する。
【図面の簡単な説明】
【００４６】
【図１】本発明に関連するパケット通信機器の一例を示す機能ブロック図である。
【図２】実施形態１におけるパケット通信機器の一例を示す機能ブロック図である。
【図３】図２に開示したクロック制御部の構成を示す機能ブロック図である。
【図４】本実施形態のパケット通信機器における、パケット蓄積量とクロック供給動作の関係を示す説明図である。
【図５】図２に開示したクロック制御部の動作を示すフローチャートである。
【符号の説明】
【００４７】
１１  パケット入力端
１２  パケットバッファＦ部
１３  パケット処理Ａ部
１４  クロック乗換Ｄ部
１５  パケット処理Ｂ部
１６  クロック乗換Ｅ部
１７  パケット処理Ｃ部
１８  パケットバッファＧ部
１９  パケット出力端
２０  クロック制御部
２１  パケットバッファＦ部空き状態時間計測部
２２  伝達時間登録レジスタ
２３  比較判定部
２４  クロックゲートＡ部
２５  クロックゲートＢ部
２６  クロックゲートＣ部
３１  入力用クロック入力端
３２  出力用クロック入力端
３３  伝達時間設定情報入力端
３４  リファレンスクロック入力端
４０  クロック分配部
【図１】
0004962396.tif 000002
【図２】
0004962396.tif 000003
【図３】
0004962396.tif 000004
【図４】
0004962396.tif 000005
【図５】
0004962396.tif 000006