説明

パケット処理装置および電源制御方法

【課題】低負荷時におけるDSPへの余計な消費電力を低減することを課題とする。
【解決手段】パケット処理装置1のCPU21は、音声データ処理カード30のFPGA31から統計情報を収集し、DSPの処理負荷を監視する。そして、CPU21は、DSPの処理負荷が低負荷であることを検出し、省電力設定に移行可能であると判断された場合には、電源断対象のDSPを決定し、FPGA31内の振り分けテーブル311aを変更するように制御する。そして、FPGA31は、振り分けテーブル311aが変更されると、変更が完了した旨をCPU21に通知する。そして、DSP電源制御素子32は、電源断対象となるDSPの電源を断つ。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、パケット処理部の電源を制御するパケット処理装置および電源制御方法に関する。
【背景技術】
【0002】
従来、音声パケットのコーデック変換を行うためのデバイスを実装したパケット処理カードにおいて、入力されたパケットのエラーチェックをFPGA(Field Programmable Gate Array)やLSI(Large Scale Integration)で行い、コーデック変換をDSP(Digital Signal Processor)で行うことが知られている。
【0003】
また、パケット処理カードでは、図10に示すように、複数のDSPが設けられている。FPGAは、入力されたパケットのエラーチェックを行い、パケットに含まれるチャネル情報に応じて、どのDSPにコーデック変換処理を行わせるか決定する。
【0004】
具体的には、FPGAは、図11に示すように、振り分けテーブルを有している。振り分けテーブルでは、図12に例示するように、チャネル情報とパケットをコーデック変換するDSPとを対応付けて記憶する。このような構成のもと、FPGAは、パケットに含まれるチャネル情報を抽出し、抽出されたチャネル情報に対応するDSPを振り分けテーブルから取得する。そして、FPGAは、コーデック変換処理を行わせるDSPとして決定し、決定されたDSPに対してパケットを振り分ける。
【0005】
例えば、図12の振り分けテーブルの例では、各DSPが200チャネル分の音声パケットのコーデック変換処理を行っている。図12の例を用いて具体的に説明すると、DSP#0が0〜199チャネル音声パケットのコーデック変換処理を行い、DSP#1が200〜399チャネルの音声パケットのコーデック変換処理を行っていることとなる。
【0006】
そして、DSPは、入力されたパケットのコーデック変換を行い、変換が終わったパケットをFPGAに対して返送する。また、DSPはパケットが入力されない場合には、アイドル状態で待機している。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2008−98785号公報
【特許文献2】特開2003−281008号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
ところで、上記した従来の技術では、音声データ処理カード一枚に複数のDSPが搭載されているので、DSPとメモリの消費電力が高い。また、パケット流量が低下している場合でも、すべてのDSPに電源が投入されたままであり、リーク電流による待機電力を消費してしまい、余計な消費電力がかかるという課題があった。
【0009】
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、低負荷時におけるDSPへの余計な消費電力を低減することを目的とする。
【課題を解決するための手段】
【0010】
上述した課題を解決し、目的を達成するため、この装置は、信号処理部の処理負荷を監視し、監視された処理負荷が低負荷である場合には、信号処理部への電源供給を断つように制御することを要件とする。
【発明の効果】
【0011】
開示の装置は、低負荷時におけるDSPへの余計な消費電力を低減するという効果を奏する。
【図面の簡単な説明】
【0012】
【図1】図1は、実施例1に係るパケット処理装置の構成を示すブロック図である。
【図2】図2は、送受信部の詳しい構成を説明するための図である。
【図3】図3は、パケットフォーマットの例を示す図である。
【図4】図4は、係数テーブルを説明するための図である。
【図5】図5は、重み付け判定部のDSP処理負荷演算処理について説明するための図である。
【図6】図6は、省電力設定移行時の振り分けテーブル変更の例を示す図である。
【図7】図7は、定常設定移行時の振り分けテーブル変更の例を示す図である。
【図8】図8は、実施例1に係るパケット処理装置による電源断時の処理の流れを示すシーケンス図である。
【図9】図9は、実施例1に係るパケット処理装置による電源再投入時の処理の流れを示すシーケンス図である。
【図10】図10は、従来技術を説明するための図である。
【図11】図11は、従来技術を説明するための図である。
【図12】図12は、従来技術を説明するための図である。
【図13】図13は、実施例2に係るパケット処理装置の構成を示すブロック図である。
【図14】図14は、実施例2におけるバッファ制御ブロックの構成を示すブロック図である。
【図15】図15は、実施例2における無音化処理の一例を示す図である。
【図16】図16は、実施例2におけるバッファ制御ブロックによる処理の流れを示すフローチャートである。
【図17】図17は、実施例2に係るパケット処理装置による処理の流れを示すシーケンス図である。
【図18】図18は、実施例2に係るパケット処理装置による効果について示す図である。
【発明を実施するための形態】
【0013】
以下に添付図面を参照して、この発明に係るパケット処理装置および電源制御方法の実施例を詳細に説明する。なお、以下に説明する実施例により、本発明が限定されるものではない。各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例1】
【0014】
以下の実施例では、実施例1に係るパケット処理装置の構成および処理の流れを順に説明し、最後に実施例1による効果を説明する。
【0015】
[パケット処理装置の構成]
まず最初に、図1を用いて、パケット処理装置1の構成を説明する。図1は、実施例1に係るパケット処理装置1の構成を示すブロック図である。同図に示すように、パケット処理装置1は、パケットスイッチ用カード10、制御カード20、音声データ処理カード30、ソフトウェア40を有し、バスを介してそれぞれ接続される。以下にこれらの各部の処理を説明する。
【0016】
パケットスイッチ用カード10は、スイッチ機能を有するスイッチ機能LSI11を有し、受信したパケットを音声データ処理カード30に送信する。また、スイッチ機能LSI11は、パケット数計数部11aを有する。
【0017】
パケット数計数部11aは、音声データ処理カード30が処理するパケット数を計数する。具体的には、パケット数計数部11aは、スイッチ機能LSI11が音声データ処理カード30に送信するパケット数を計数し、計数されたパケット数を制御カード20に通知する。
【0018】
音声データ処理カード30は、音声パケットのコーデック変換を行うが、特に、FPGA31、DSP電源制御素子32、複数のレギュレータ33a〜33f、複数のDSP34a〜34f、複数のメモリ35a〜35fを有する。
【0019】
FPGA31は、入力されたパケットのエラーチェックを行うが、特に、送受信部310、パケット振分部311、バッファ制御部312、電源制御部313を有する。
【0020】
送受信部310は、パケットスイッチ用カード10からパケットを受信し、受信されたパケットにエラーがないかのパケットチェックを行う。ここで、図2を用いて、送受信部の詳しい構成を説明する。図2は、送受信部の詳しい構成を説明するための図である。図2に示すように、送受信部310は、パケット監視部310aおよび重み付け判定部310bを有する。
【0021】
パケット監視部310aは、DSPの処理負荷として、パケット長およびコーデック変換種別の情報を抽出し、抽出されたパケット長およびコーデック変換種別に基づいて、DSP処理量を監視する。具体的には、パケット監視部310aは、パケットスイッチ用カード10からパケットを受信する。受信されたパケットにエラーがないかのパケットチェックを行う。
【0022】
その結果、パケット監視部310aは、パケットが正常であると判断した場合には、ペイロード長とCODEC種別情報を抽出し、ペイロード長およびコーデック種別情報を重み付け判定部310bに通知する。
【0023】
ここで、図3のパケットフォーマットの例を用いて、抽出処理について具体的に説明する。パケット監視部310aは、パケットからヘッダを除いたペイロード長と、ヘッダに含まれるコーデック種別情報とを抽出する。
【0024】
重み付け判定部310bは、パケット長およびコーデック変換種別の情報を用いて、DSP処理量を演算するが、特に、係数抽出部310Aおよび演算部310Bを有する。係数抽出部310Aは、コーデック変換種別と係数とを対応付けて記憶する係数テーブル311Aを有する。
【0025】
具体的には、係数テーブル311Aは、図4に例示するように、変換前のコーデック情報である「変換元CODEC」と、変換後のコーデック情報である「変換先CODEC」と、変換種別ごとの処理負荷に応じて設定された「係数」とを対応付けて記憶する。図4の例を用いて説明すると、係数テーブル311Aでは、G7.11からG.711uにコーデック変換されるコーデック変換の場合には、係数が「×1」となる。
【0026】
係数テーブル311Aに記憶された係数は、処理負荷が高いコーデック変換ほど高い値が設定される。また、係数は、DSPのコーデック変換プログラムのステップ数やデバッグ時の処理時間測定に応じて、ソフトが自由に設定できるものする。なお、係数は、任意の値に変更するようにしても良い。
【0027】
ここで、図5を用いて、重み付け判定部310bのDSP処理負荷演算処理について説明する。図5は、重み付け判定部のDSP処理負荷演算処理について説明するための図である。図5に示すように、重み付け判定部310bは、ペイロード長およびコーデック種別情報をパケット監視部310aから受信する(図5の(1)参照)。そして、重み付け判定部310bの係数抽出部310Aは、コーデック種別情報を用いて、係数テーブル311Aを検索し(図5の(2)参照)、係数を抽出して、演算部310Bに通知する(図5の(3)参照)。
【0028】
また、演算部310Bは、送受信部310からペイロード長が入力され(図5の(4)参照)、係数抽出部310Aから係数を受信すると、ペイロード長に係数を乗算し、DSP処理負荷に応じたパケット長の正規化を行う(図5の(5)参照)。
【0029】
そして、演算部310Bは、正規化した結果を加算しカウントする(図5の(6)参照)。その後、演算部310Bは、統計情報として、CPU(Central Processing Unit)21へ通知する(図5の(7)参照)。
【0030】
図1の説明に戻って、パケット振分部311は、送受信部310から受信したパケットを保持するバッファと、振り分け先のDSPを決定するために参照される振り分けテーブル311aを有する。
【0031】
振り分けテーブル311aは、図6に例示するように、パケットの音声通話チャネルとパケットをコーデック変換するDSPとを対応付けて記憶している。パケット振分部311は、送受信部310から受信したパケットの音声通話チャネルに対応するDSPを振り分けテーブル311aから読み出し、読み出されたDSPへパケットを振り分ける。
【0032】
例えば、パケット振分部311は、送受信部310から受信したパケットの音声通話チャネルが「CH#0」であった場合には、振り分けテーブル311aを参照し、「DSP#0」にパケットを振り分ける。
【0033】
バッファ制御部312は、DSP#0〜DSP#5に対応するバッファをそれぞれ有し、バッファの蓄積量を計測するバッファ量計測部312aを有する。バッファ制御部312は、パケット振分部311からパケットを受信する。そして、バッファ制御部312は、受信されたパケットの振り分け先DSPに対応するバッファにパケットを保持させる。
【0034】
バッファ量計測部312aは、DSP#0〜DSP#5に対応するバッファの蓄積量をそれぞれ計測する。そして、バッファ量計測部312aは、計測された各バッファの蓄積量を制御カード20のCPU21に通知する。
【0035】
ここで、制御カード20について説明する。制御カード20は、音声データ処理カード30におけるDSP34a〜34fの電源を制御するが、特に、CPU21を有する。CPU21は、パケットスイッチ用カード10および音声データ処理カード30から統計情報を収集し、DSPの処理負荷を監視する。そして、CPU21は、DSPの処理負荷に応じて、DNSの消費電力を抑える省電力設定に移行するか否かの判定を行うが、特に、省電力判定部21aを有する。
【0036】
ここで、統計情報とは、パケット数計数部11aによって計数された「パケット数」、重み付け判定部310bによって演算された「DSP処理量」およびバッファ量計測部312aによって計測された「各バッファの蓄積量」のことをいう。
【0037】
省電力判定部21aは、統計情報ごとの閾値を保持し、パケットスイッチ用カード10および音声データ処理カード30から常時送信されてくる統計情報を用いて、DSPの処理負荷が低負荷であるか判定する。具体的には、省電力判定部21aは、単位時間当たりの「パケット数」の増加量が所定の閾値以下であるか判定する。また、省電力判定部21aは、単位時間当たりの「DSP処理量」の増加量が所定の閾値以下であるか判定する。
【0038】
この結果、省電力判定部21aは、単位時間当たりの「パケット数」の増加量が所定の閾値以下であり、単位時間当たりの「DSP処理量」の増加量が所定の閾値以下であると判定された場合には、省電力設定に移行可能であると判断する。なお、省電力判定部21aは、DSPごとの負荷の偏りも考慮して移行可能であるか判断するようにしても良い。
【0039】
そして、CPU21は、省電力設定に移行可能であると判断された場合には、ソフトウェア40に省電力設定に移行する旨の通知を行い、ソフトウェア40からの省電力設定移行許可を待つ。なお、ソフトウェア40に通知せずにCPU21が独自に判断するようにしても良い。
【0040】
その後、CPU21は、ソフトウェア40から省電力設定移行許可を受信すると、電源断対象のDSPを決定し、FPGA31内の振り分けテーブル311aを変更するように制御する。例えば、図6に例示するように、DSP#4およびDSP#5を電源断対象とするため、DSP#4およびDSP#5のCH割り当てがないように振り分けテーブル311aを変更する。振り分け対象となるDSPが減少することで、DSPあたりの対応チャネルが増加することになる。
【0041】
そして、CPU21は、バッファ量計測部312aから通知される「バッファの蓄積量」を監視しながら、電源断対象となるDSPへのパケットバッファ量が「0」となった時点で、DSP電源制御素子32へ電源断指示を出す旨の指示を電源制御部313へ通知する。
【0042】
ここで、省電力設定に移行した後に定常設定へ戻る処理について説明する。具体的には、省電力判定部21aは、単位時間当たりの「パケット数」の増加量が所定の閾値以上であるか判定する。また、省電力判定部21aは、単位時間当たりの「DSP処理量」の増加量が所定の閾値以上であるか判定する。また、省電力判定部21aは、「バッファの蓄積量」が所定の閾値以上であるか判定する。
【0043】
この結果、CPU21は、単位時間当たりの「パケット数」の増加量が所定の閾値以上であるか、単位時間当たりの「DSP処理量」の増加量が所定の閾値以上であるか、または、「バッファの蓄積量」が所定の閾値以上であるかのいずれかの条件を満たした場合には、音声データ処理カードの処理能力が足りていないと判断して、DSPの電源再投入処理を行う。
【0044】
そして、CPU21は、DSP電源制御素子32へ電源再投入指示を出す旨の指示を電源制御部313へ通知する。また、CPU21は、ソフトウェア40に対して電源再投入中である旨を通知する。なお、電源断時にソフトウェア40への通知を行っていない場合には、ここでも通知は不要となる。
【0045】
CPU21は、DSPのBOOT処理が完了した時点で、FPGA31の振り分けテーブル311aの変更を行う。図7に例示するように、電源断対象となっていたDSP#4およびDSP#5にCHを割り当てるように振り分けテーブル311aを変更する。振り分け対象となるDSPが増加することで、DSPあたりの対応チャネルが減少することになる。
【0046】
電源制御部313は、各DSP34a〜34fの電源を制御する。具体的には、電源制御部313は、電源断指示を出す旨の指示をCPU21から受け付けると、DSP電源制御素子32に電源断を指示するとともに、電源断対象となるDSPを通知する。また、電源制御部313は、電源再投入指示を出す旨の指示をCPU21から受け付けると、DSP電源制御素子32に電源投入を指示するとともに、電源投入対象となるDSPを通知する。
【0047】
DSP電源制御素子32は、各DSP34a〜34fの電源をそれぞれ個別に管理する。具体的には、DSP電源制御素子32は、電源断の指示を電源制御部313から受け付けると、DSPへの複数種電源の電源断シーケンスを制御しつつ、電源断対象となるDSPの電源を断つ。
【0048】
また、DSP電源制御素子32は、電源投入の指示を電源制御部313から受け付けると、DSPへの複数種電源の電源投入シーケンスを制御しつつ、電源投入対象となるDSPの電源を再投入する。
【0049】
レギュレータ33a〜33fは、DSP34a〜34fにそれぞれ設けられ、DSP34a〜34fに入力される電圧・電流を常に一定に保つように、制御する回路である。
【0050】
DSP34a〜34fは、受信したパケットに対してコーデック変換を行う。また、DSP34a〜34fは、電源を再投入されると、起動して、プログラムをロードするBOOT処理を行い、BOOT処理が完了すると、BOOT処理完了通知をFPGA31に通知する。
【0051】
また、各DSP34a〜34fおよび各メモリ35a〜35fでは、それぞれ独立して電源のオン・オフを制御できるように、電源層もDSPごとに分割されている。
【0052】
ソフトウェア40は、省電力設定に移行する旨の通知を省電力判定部21aから受信すると、省電力設定に移行可能であるか判定し、移行可能である場合には、省電力設定移行許可を省電力判定部21aに通知する。また、全体電源制御素子36は、音声データ処理カード30全体の電源を管理する。
【0053】
[パケット処理装置による処理]
次に、図8および図9を用いて、実施例1に係るパケット処理装置1による処理を説明する。図8は、実施例1に係るパケット処理装置による電源断時の処理の流れを示すシーケンス図である。図9は、実施例1に係るパケット処理装置による電源再投入時の処理の流れを示すシーケンス図である。
【0054】
図8に示すように、パケット処理装置1のCPU21は、音声データ処理カード30のFPGA31から統計情報を収集し、DSPの処理負荷を監視する(ステップS101)。そして、CPU21は、単位時間当たりの「パケット数」の増加量が所定の閾値以下であり、単位時間当たりの「DSP処理量」の増加量が所定の閾値以下であると判定された場合には、DSPの処理負荷が低負荷であることを検出する(ステップS102)。
【0055】
そして、CPU21は、省電力設定に移行可能であると判断された場合には、ソフトウェア40に省電力設定に移行する旨の通知を行い(ステップS103)、ソフトウェア40からの省電力設定移行許可を受信する(ステップS104)。
【0056】
続いて、CPU21は、ソフトウェア40から省電力設定移行許可を受信すると、電源断対象のDSPを決定し、FPGA31内の振り分けテーブル311aを変更するように制御する(ステップS105)。そして、FPGA31は、振り分けテーブル311aが変更されると(ステップS106)、変更が完了した旨をCPU21に通知する(ステップS107)。
【0057】
その後、CPU21は、「バッファの蓄積量」を監視しながら、電源断対象となるDSPへのパケットバッファ量が「0」となったことを検出すると(ステップS108)、FPGA31へ電源断対象となるDSPを通知する(ステップS109)。
【0058】
そして、FPGA31は、DSP電源制御素子32に電源断を指示するとともに、電源断対象となるDSPを通知する(ステップS110)。そして、DSP電源制御素子32は、電源断の指示をFPGA31から受け付けると、DSPへの複数種電源の電源断シーケンスを制御しつつ、電源断対象となるDSPの電源を断つ(ステップS111)。そして、電源を断たれたDSPは、休止状態となる(ステップS112)。その後、CPU21は、統計情報の監視を継続する(ステップS113)。
【0059】
次に、図9を用いて、電源再投入時の処理の流れを説明する。図9に示すように、パケット処理装置1のCPU21は、音声データ処理カード30のFPGA31から統計情報を収集し、DSPの処理負荷を監視する(ステップS201)。
【0060】
CPU21は、単位時間当たりの「パケット数」の増加量が所定の閾値以上であるか、単位時間当たりの「DSP処理量」の増加量が所定の閾値以上であるか、または、「バッファの蓄積量」が所定の閾値以上であるかのいずれかの条件を満たした場合には、音声データ処理カードの処理能力が足りていないことを検出する(ステップS202)。
【0061】
CPU21は、電源再投入対象となるDSPをFPGA31に通知する(ステップS203)。また、CPU21は、ソフトウェア40に対して電源再投入中である旨を通知する(ステップS204)。そして、FPGA31は、電源再投入対象となるDSPの電源を投入する旨の指示をDSP電源制御素子32に通知する(ステップS205)。そして、DSP電源制御素子32は、DSPへの複数種電源の電源投入シーケンスを制御しつつ、電源投入対象となるDSPの電源を再投入する(ステップS206)。
【0062】
そして、DSPは、電源を再投入されると、起動して(ステップS207)、プログラムをロードするBOOT処理を行い(ステップS208)、BOOT処理が完了すると、BOOT処理完了通知をFPGA31に通知する(ステップS209)。そして、FPGA31は、BOOT処理完了通知をCPU21に転送する(ステップS210)。
【0063】
続いて、CPU21は、BOOT処理完了通知を受信すると、電源断対象のDSPを決定し、FPGA31内の振り分けテーブル311aを変更するように制御する(ステップS211)。そして、FPGA31は、振り分けテーブル311aが変更されると(ステップS212)、変更が完了した旨をCPU21に通知する(ステップS213)。その後、CPU21は、統計情報の監視を継続する(ステップS214)。
【0064】
[実施例1の効果]
上述してきたように、パケット処理装置1は、受信したパケットを信号処理するDSPの処理負荷を監視し、監視された処理負荷が低負荷である場合には、DSPへの電源供給を断つように制御する。このため、低負荷時である場合には、不要なDSPへの電源供給を断つように制御することで、低負荷時におけるDSPのリーク電流を抑止し、低負荷時におけるDSPへの余計な消費電力を低減することが可能である。
【0065】
また、実施例1によれば、パケット処理装置1は、処理負荷として、パケット長およびパケットのコーデック変換種別を監視し、監視されたパケット長およびパケットのコーデック変換種別に基づいて、信号処理部がパケットを変換するための処理負荷を演算し、演算された処理負荷が所定の閾値以下である場合には、DSPへの電源供給を断つように制御する。このため、パケット長およびパケットのコーデック変換種別からDSPの変換にかかる負担を算出して、DSP低負荷時であるか否かの判断を適切に行い、低負荷時におけるDSPへの余計な消費電力を低減することが可能である。
【0066】
また、実施例1によれば、パケット処理装置1は、処理負荷として、DSPが受信するパケット数を監視し、監視されたパケット数が所定の閾値以下である場合には、DSPへの電源供給を断つように制御する。このため、DSP低負荷時であるか否かの判断を簡易に行い、低負荷時におけるDSPへの余計な消費電力を低減することが可能である。
【0067】
また、実施例1によれば、パケット処理装置1は、DSPによって信号処理されるパケットを保持するバッファの蓄積量を監視し、電源供給を断つ場合に、バッファの蓄積量が無くなった後に、DSPへの電源供給を断つように制御する。このため、バッファがパケットを保持している状態で、電源を断つことを防止することが可能である。
【0068】
また、実施例1によれば、DSPは、他のDSPとは電源層がそれぞれ独立して構成され、DSPの電源制御処理について、シーケンス制御を行うDSP電源制御素子32を有する。つまり、カード内デバイスにおいて、デバイスが多く、デバイス単位で簡単なスイッチのように電源のON/OFFができず、複数電源種かつシーケンス制御をともなう電源供給が必要である。このため、各DSPで電源層を分割し、DSP電源制御素子32がシーケンス制御を行うことで、DSPの電源を適切に制御することが可能である。
【実施例2】
【0069】
実施例1では、DSP34は、パケットスイッチ用カード10から音声データ処理カード30に送られた全てのパケットのコーデック変換を実行していた。しかしながら、全てのパケットのコーデック変換を実行しようとすると、パケット処理装置が、省電力設定を長く維持できない場合が想定される。
【0070】
例えば、実施例1では、パケットスイッチ用カード10から音声データ処理カード30に送られたパケットの数が増加すると、パケットの増加分がそのまま処理負荷の増加につながる。また、そもそも、省電力設定では、複数あるDSP34のうち一部のみが動作している。このため、実施例1では、パケットの数が増加し始めると、処理負荷がすぐに閾値を越えてしまい、省電力設定から定常設定にすぐに移行してしまう場合が想定される。つまり、省電力設定を長く維持できない場合が想定される。
【0071】
このため、実施例2では、省電力設定からすぐに定常設定に移行してしまう状況を回避することで、省電力設定を長く維持する手法について説明する。具体的には、以下では、全てのパケットのコーデック変換を実行するのではなく、一部のパケットについてはコーデック変換を実行しない手法について説明する。すなわち、実施例2では、一部のパケットがコーデック変換されないことで音声品質が劣化したとしても、省電力設定を長く維持することを優先する手法について説明する。
【0072】
より詳細には、以下に説明するように、省電力設定に移行した場合に、音声データ処理カード30は、受信したパケットのうち一部については無音化処理を実行する。そして、DSP34は、無音化処理が実行されたパケットについてはコーデック変換を実行せず、無音化処理が実行されなかったパケットについてコーデック変換を実行する。その後、音声データ処理カード30は、無音化処理が実行されたパケットと、コーデック変換が実行されたパケットとについて、パケットスイッチ用カード10に送信する。なお、以下では、実施例1に係るパケット処理装置1と同様の点については説明を省略する。
【0073】
[実施例2に係るパケット処理装置]
図13を用いて、実施例2に係るパケット処理装置2の構成を説明する。図13は、実施例2に係るパケット処理装置の構成を示すブロック図である。図13に示す例では、実施例1に係るパケット処理装置1と同様の箇所については、図1と同じ符号を付与した。図13に示すように、実施例2に係るパケット処理装置2では、バッファ制御部400は、バッファ制御ブロック500を有する。例えば、バッファ制御部400は、図13に示す例では、バッファ制御ブロック500a〜500fを有する。バッファ制御ブロック500a〜500fは、それぞれ、DSP34a〜34fと接続される。また、バッファ制御ブロック500a〜500fは、それぞれ、パケット振分部311と接続される。
【0074】
なお、図13に示す例では、音声データ処理カード30が6個のDSP34を有し、バッファ制御部400が6個のバッファ制御ブロック500を有する場合を示したが、本発明はこれに限定されるものではない。例えば、音声データ処理カード30やバッファ制御部400は、DSP34やバッファ制御ブロック500を7個以上有しても良く、DSP34やバッファ制御ブロック500を5個以下有しても良い。また、図13に示す例では、音声データ処理カード30の数とDSP34の数とが同数である場合を例に説明したが、本発明はこれに限定されるものではなく、例えば、音声データ処理カード30の数がDSP34の数よりも少なくても良い。この場合、音声データ処理カード30は、複数のDSP34についての処理を実行する。
【0075】
バッファ制御ブロック500は、パケット振分部311からパケットを受信する。そして、バッファ制御ブロック500は、以下に詳細に説明するように、受信したパケットのうち一部については無音化処理を実行し、DSP34に送らない。また、バッファ制御ブロック500は、無音化処理を実行しなかったパケットについては、DSP34に送る。この結果、DSP34は、無音化処理が実行されなかったパケットについて、コーデック変換を実行する。その後、バッファ制御ブロック500は、無音化処理が実行されたパケットや、DSP34aによるコーデック変換後のパケットについて、パケット振分部311に送信する。
【0076】
図14を用いて、実施例2におけるバッファ制御ブロック500の構成を説明する。図14は、実施例2におけるバッファ制御ブロックの構成を示すブロック図である。図14では、バッファ制御ブロック500aを例に示した。また、図14では、説明の便宜上、バッファ制御ブロック500aと併せて、パケット振分部311と、CPU21と、DSP34aとを示した。
【0077】
図14に示すように、バッファ制御ブロック500aは、送信バッファ501と、受信バッファ502と、方路選択セレクタ510と、無音化処理回路520と、セレクタ制御部530とを有する。ここで、送信バッファ501は、方路選択セレクタ510、セレクタ制御部530およびDSP34aと接続される。送信バッファ501は、バッファ制御ブロック500aからDSP34aに送信されるパケットを記憶する。具体的には、送信バッファ501は、後述するように、方路選択セレクタ510によって送信バッファ401に送信されたパケットを記憶する。また、送信バッファ501に記憶されたパケットは、DSP34aによってコーデック変換が実行される。
【0078】
受信バッファ502は、無音化処理回路520、DSP34a、パケット振分部311およびセレクタ制御部530と接続される。受信バッファ502は、バッファ制御ブロック500aからパケット振分部311に送信されるパケットを記憶する。具体的には、後述するように、受信バッファ502は、無音化処理回路520によって無音化処理が実行されたパケットや、DSP34aによるコーデック変換後のパケットを記憶する。また、受信バッファ502に記憶されたパケットは、その後、バッファ制御ブロック500aによってパケット振分部311に送信される。例えば、バッファ制御ブロック500aは、受信バッファ502に記憶されたパケットを、パケットに付与されたシーケンスナンバに従って読み出して送信する。なお、シーケンスナンバは、例えば、パケットの「User Define」に格納される(図15参照)。
【0079】
ここで、パケット振分部311およびDSP34aと、バッファ制御ブロック500aとの関係について簡単に説明する。まず、パケット振分部311とバッファ制御ブロック500aとの関係について簡単に説明する。パケット振分部311はバッファ制御ブロック500aにパケットを送信する。ここで、パケット振分部311によって送信されたパケットは、バッファ制御ブロック500aの方路選択セレクタ510とCH毎カウンタ534との両方に送られる。つまり、方路選択セレクタ510とCH毎カウンタ534とは、パケット振分部311によってパケットが送られるごとに、同じパケットを受信する。また、バッファ制御ブロック500aは、受信バッファ502に記憶されたパケットをパケット振分部311に送信する。その後、パケット振分部311は、パケットスイッチ用カード10にパケットを送信する。
【0080】
次に、DSP34aとバッファ制御ブロック500aとの関係について簡単に説明する。バッファ制御ブロック500aは、送信バッファ501に記憶されたパケットをDSP34aに送信し、DSP34aが、コーデック変換を実行する。そして、DSP34aは、コーデック変換後のパケットをバッファ制御ブロック500aに送信する。その後、バッファ制御ブロック500aでは、受信バッファ502が、コーデック変換後のパケットを記憶する。
【0081】
バッファ制御ブロック500aの説明に戻る。方路選択セレクタ510は、パケット振分部311と、送信バッファ501、無音化処理回路520およびセレクタ制御部530と接続される。方路選択セレクタ510は、送信バッファ501に向かう方路と、無音化処理回路520に向かう方路とを有する。以下では、送信バッファ501に向かう方路を「通常処理ルート」と記載し、無音化処理回路520に向かう方路を「無音化処理ルート」と記載する。そして、方路選択セレクタ510は、方路を選択する指示である方路選択指示をセレクタ制御部530から受信すると、受信した方路選択指示によって選択された方路に切り替える。
【0082】
ここで、通常処理ルートである場合におけるパケットの流れについて説明する。この場合、パケットは送信バッファ501に送られることになり、バッファ制御ブロック500aは、パケットを送信バッファ501に格納する。その後、バッファ制御ブロック500は、送信バッファ501に記憶されたパケットをDSP34aに送信する。そして、DSP34aは、送信バッファ501に記憶されたパケットを受信し、コーデック変換を実行する。そして、DSP34aは、コーデック変換後のパケットをバッファ制御ブロック500aに送信する。その後、バッファ制御ブロック500aでは、受信バッファ502が、コーデック変換後のパケットを記憶する。
【0083】
また、無音化処理ルートである場合におけるパケットの流れについて説明する。この場合、パケットは無音化処理回路520に送られることになり、後述するように、無音化処理回路520が、バッファ制御ブロック500aが受信したパケットに対して無音化処理を実行する。そして、無音化処理回路520は、無音化処理を実行したパケットを受信バッファ502に格納する。つまり、通常処理ルートである場合には、DSP34aがコーデック変換を実行し、無音化処理ルートである場合には、無音化処理回路520が無音化処理を実行する。
【0084】
無音化処理回路520は、受信バッファ502及び方路選択セレクタ510と接続される。無音化処理回路520は、無信号化処理対象として選択されたパケットを無信号化処理する。具体的には、無音化処理回路520は、方路選択セレクタ510により無音化処理ルートにて送られたパケットを無信号処理する。そして、無音化処理回路520は、無音化処理を実行したパケットを受信バッファ502に格納する。
【0085】
ここで、図15を用いて、実施例2における無音化処理の一例について説明する。図15は、実施例2における無音化処理の一例を示す図である。ここで、図15の600は、無音化処理後のパケットを示す。図15の601の「Card ID」には、パケットの送信元となるパケットスイッチ用カード10を示す情報が含まれる。図15の602の「CH No」には、音声チャネルを示す情報が含まれる。図15の603の「LENGTH」には、パケット長を示す情報が含まれる。図15の604の「CODEC」には、パケットのコーデック種別を示す情報が含まれる。図15の605の「User Define」は、パケットの送信元となるユーザについての情報や、シーケンスナンバが含まれる。なお、シーケンスナンバは、パケット送信元となる装置によって付与される。図15の606は、音声情報が格納される領域である。図15に示す例では、図15の606は、すべての領域のデータが「0」である場合を例に示した。
【0086】
ここで、パケットの送信元となる装置とは、例えば、ATM(Automated Teller Machine)網やSTM(Synchronous Transfer Mode)網に属する装置である。なお、以下では、パケットの送信元となる装置が、例えば、ATM網やSTM網に属する装置である場合を例に説明するが、本発明はこれに限定されるものではなく、他の装置であっても良い。例えば、ATM網やSTM網とは別のネットワークに属する装置であっても良い。
【0087】
無音化処理回路520は、パケットに含まれるコーデック種別を示す情報について、コーデック変換後のコーデック種別を示す情報に変換する。例えば、バッファ制御ブロック500aは、コーデック種別「1」のパケットを受信し、DSP34aが、コーデック種別「1」のパケットをコーデック種別「2」に変換する場合を例に説明する。この場合、無音化処理回路520は、パケットのコーデック種別を「1」から「2」に変更する。また、無音化処理回路520は、パケットに含まれる音声情報を無音に設定する。具体的には、無音化処理回路520は、音声情報が格納される領域のデータをすべて所定の固定値に変換する。例えば、図15に示す例では、無音化処理回路520は、音声情報が格納される領域のデータをすべて「0」に変換する。
【0088】
また、コーデック変換が終了したか否かを示すフラグ情報を格納するフラグ領域がパケットにある場合には、無音化処理回路520は、フラグ領域に格納されたフラグ情報を変更する。つまり、無音化処理回路520は、DSP34aによるコーデック変換が終了したことを示すフラグ情報をフラグ領域に格納する。
【0089】
このように、無音化処理回路520は、実際にコーデック変換を実行することなく、パケットのデータを形式的に変更する。ここで、無音化処理回路520は、「User Define」のデータに対して変更を加えることはなく、「User Define」に含まれるシーケンスナンバに対しても変更を加えることはない。この結果、無音化処理回路520による無音化処理が行われたパケットか、DSP34aによるコーデック変換後のパケットかに関係なく、バッファ制御ブロック500aは、一連のシーケンス番号に従ってパケットを受信バッファ502から送信する。
【0090】
図14の説明に戻る。セレクタ制御部530は、CPU21、DSP34a、パケット振分部311、受信バッファ502及び方路選択セレクタ510と接続される。セレクタ制御部530は、以下に詳細に説明するように、CPU21によって行われた設定に基づいて、無音化処理を施すパケットを選別し、選別したパケットが無音化処理回路520に送られるように方路選択セレクタ510を制御する。
【0091】
ここで、CPU21とバッファ制御ブロック500aとの関係について簡単に説明する。図14の「統計情報3」に示すように、バッファ制御ブロック500aのバッファカウント533は、送信バッファ501や受信バッファ502の蓄積量をCPU21に送る。また、図14の「統計情報4」に示すように、CH毎カウンタ534は、音声チャネルごとのカウント数をCPU21に送る。ここで、バッファカウント533やCH毎カウンタ534によってCPU21に送られた情報は、CPU21の省電力判定部21aが、定常設定から省電力設定に移行可能であるかを判断する処理や、省電力設定から定常設定に戻るかを判断する処理に用いられる。
【0092】
セレクタ制御部530の説明に戻る。セレクタ制御部530は、図14に示す例では、無音化設定レジスタ531と、無音化率設定レジスタ532と、バッファカウント533と、CH毎カウンタ534と、無音化判定回路535とを有する。ここで、無音化設定レジスタ531は、無音化処理を実行するか否かを示す設定情報を記憶する。例えば、無音化設定レジスタ531は、無音化処理を実行する場合には「1」を記憶し、無音化処理を実行しない場合には「0」を記憶する。
【0093】
無音化設定レジスタ531によって記憶される設定情報は、無音化判定回路535によって用いられる。また、無音化設定レジスタ531によって記憶される設定情報は、CPU21によって格納される。つまり、CPU21は、無音化設定レジスタ531に記憶された設定情報を変更することで、無音化処理を実行するか否かを制御する。
【0094】
無音化率設定レジスタ532は、受信したパケットのうち無音化処理が実行されるパケットの割合を示す割合情報を記憶する。例えば、30個のパケットにつき1個のパケットを無音化処理する場合には、無音化率設定レジスタ532は、「30」を記憶する。
【0095】
なお、以下では、無音化率設定レジスタ532が「30」を記憶する場合を例に説明するが、本発明はこれに限定されるものではなく、「29」以下の値を記憶しても良く、「31」以上の値を記憶しても良く、任意の値を記憶して良い。また、以下では、無音化率設定レジスタ532が割合情報として回数を記憶する場合を例に説明するが、本発明はこれに限定されるものではなく、回数以外の情報を記憶しても良い。例えば、無音化率設定レジスタ532は、破棄されるパケットの割合を示す破棄率(パーセント)を記憶しても良い。
【0096】
また、無音化率設定レジスタ532は、チャネルごとに割合情報を記憶する。ここで、無音化率設定レジスタ532は、チャネルごとに異なる割合情報を記憶しても良く、すべてのチャネルに対して同じ割合情報を記憶しても良い。
【0097】
無音化率設定レジスタ532によって記憶される割合情報は、無音化判定回路535とCH毎カウンタ534とによって用いられる。また、無音化率設定レジスタ532によって記憶される割合情報は、CPU21によって格納される。つまり、CPU21は、無音化率設定レジスタ532に記憶された割合情報を変更することで、受信したパケットのうち無音化処理が実行されるパケットの割合を制御する。
【0098】
バッファカウント533は、送信バッファ501に蓄積されたパケットの蓄積量と、受信バッファ502に蓄積されたパケットの蓄積量とをカウントする。ここで、バッファカウント533によってカウントされた送信バッファ501の蓄積量は、無音化判定回路535やCPU21によって用いられる。また、バッファカウント533によってカウントされた送信バッファ501の蓄積量は、無音化判定回路535によって用いられる。また、バッファカウント533によってカウントされた受信バッファ502の蓄積量は、CPU21によって用いられる。
【0099】
CH毎カウンタ534は、無音化率設定レジスタ532に記憶された割合情報を用いて、チャネルごとにパケット数をカウントする。CH毎カウンタ534によってカウントされたカウント数は、無音化判定回路535とCPU21とによって用いられる。
【0100】
例えば、無音化率設定レジスタ532に「30」が記憶され、チャネル「1」のパケットを受信した場合を用いて説明する。この場合、CH毎カウンタ534は、「1」〜「30」までの間において、パケット数のカウントを繰り返す。より詳細には、CH毎カウンタ534は、パケットを受信すると、まず、パケット数が「1」であるとカウントし、次に「2」をカウントする。そして、同様に、CH毎カウンタ534は、「30」になるまでパケット数をカウントする。ここで、CH毎カウンタ534は、「30」までカウントすると、次にカウントする場合にはカウント数が「1」であるとカウントする。そして、CH毎カウンタ534は、改めて、「30」になるまでパケット数をカウントする。
【0101】
また、CH毎カウンタ534は、カウントするごとにカウント数を無音化判定回路535に通知する。例えば、チャネル「1」のパケットについてパケット数が「1」であるとカウントした場合には、チャネル「1」のパケット数が「1」である旨を通知する。また、同様に、チャネル「1」のパケットについてパケット数が「30」であるとカウントした場合には、チャネル「1」のパケット数が「30」である旨を通知する。
【0102】
なお、以下では、CH毎カウンタ534が、カウントするごとにカウント数を無音化判定回路535に通知する場合を例に説明するが、本発明はこれに限定されるものではない。例えば、CH毎カウンタ534は、カウントするごとに通知するのではなく、割合情報によって示される回数になるごとに通知しても良い。例えば、CH毎カウンタ534は、カウント数が「30」になるごとに、カウント数が「30」である旨を通知しても良い。
【0103】
無音化判定回路535は、DSP電源制御素子32により複数のDSP34の一部への電源供給が断たれた場合に、受信したパケットのうち所定の割合のパケットを無信号化処理対象として選択する。具体的には、無音化判定回路535は、CH毎カウンタ534によってカウントされたカウント数と、無音化率設定レジスタ532に記憶された割合情報とに基づいて、無信号化処理対象として選択する。
【0104】
例えば、無音化率設定レジスタ532に「30」が記憶された場合を用いて説明する。この場合、無音化判定回路535は、チャネルごとに、30個のパケットのうち1個の割合でポケットを選択する。例えば、無音化判定回路535は、CH毎カウンタ534によってチャネル「1」についてのカウント数「30」が通知されるごとに、チャネル「1」について、カウント数「30」に対応するパケットを選択する。また、無音化判定回路535は、同様に、他のチャネルについても、カウント数「30」が通知されるごとにパケットを選択する。
【0105】
また、無音化判定回路535は、選択したパケットが無音化処理回路520に送られるように、方路選択セレクタ510に対して方路選択指示を送る。具体的には、無音化判定回路535は、選択したパケットについての方路が無音化処理ルートになるように方路選択指示を送り、選択したパケット以外のパケットについての方路が通常処理ルートになるように方路選択指示を送る。
【0106】
例えば、通常処理ルートを示す方路選択指示が方路選択指示「0」であり、無音化処理ルートを示す方路選択指示が方路選択指示「1」である場合を用いて説明する。また、チャネル「1」についてのパケットを連続して受信した場合を用いて説明する。この場合、無音化判定回路535は、カウント数「30」が通知されると、カウント数「30」に対応するパケットについての方路が無音化処理回路520になるように、方路選択指示「1」を方路選択セレクタ510に送る。その後、無音化判定回路535は、カウント数「1」が通知されると、方路が送信バッファ501になるように、方路選択指示「0」を方路選択セレクタ510に送る。
【0107】
このように、無音化判定回路535は、割合情報やチャネルごとのカウント数に基づいて、受信したパケットのうち所定の割合のパケットが、DSP34aではなく無音化処理回路520に送られるように制御する。この結果、DSP34aではなく無音化処理回路520に送られたパケットについては、DSP34aに送られることはなく、DSP34aによるコーデック変換は実行されない。つまり、DSP34aは、無音化処理が実行されるパケットの分、処理対象となるパケット数が減少する。
【0108】
なお、無音化判定回路535は、所定の閾値を予め保持しておき、送信バッファ501の蓄積量が所定の閾値よりも少ない場合には、すべてのパケットをDSP34aに送るように制御しても良い。つまり、送信バッファ501の蓄積量が所定の閾値よりも少ない場合には、DSP34aに対する処理負荷が低く、DSP34aが全パケットを処理しても省電力設定の状態を維持できると考えられる。このことを踏まえ、無音化判定回路535は、送信バッファ501の蓄積量が所定の閾値よりも少ない場合には、全パケットが送信バッファ501に送られるように制御する。なお、所定の閾値は、予めパケット処理装置2の管理者によって設定される。
【0109】
また、無音化判定回路535は、所定の閾値を予め保持しておき、送信バッファ501の蓄積量が所定の閾値よりも多い場合には、所定の割合のパケットが無音化処理回路520に送られるように制御する。つまり、送信バッファ501の蓄積量が定の閾値よりも多い場合には、DSP34aに対する処理負荷が高く、DSP34aが全パケットを処理すると省電力設定の状態を維持できずに定常設定の状態に戻ってしまうことが考えられる。このことを踏まえ、無音化判定回路535は、送信バッファ501の蓄積量が定の閾値よりも多い場合には、所定の割合のパケットが無音化処理回路520に送られるように制御する。なお、所定の閾値は、予めパケット処理装置2の管理者によって設定される。
【0110】
[バッファ制御ブロックによる処理]
次に、図16を用いて、実施例2におけるバッファ制御ブロックによる処理の流れを示す。図16は、実施例2におけるバッファ制御ブロックによる処理の流れを示すフローチャートである。
【0111】
図16に示すように、バッファ制御ブロック500では、パケット振分部311からパケットを受信すると(ステップS301肯定)、処理が開始される。ここで、方路選択セレクタ510の方路が通常処理ルートである場合には(ステップS302肯定)、バッファ制御ブロック500は、パケットを送信バッファ501に格納する(ステップS303)。
【0112】
そして、バッファ制御ブロック500では、DSP34によるコーデック変換が実行される(ステップS304)。つまり、バッファ制御ブロック500は、送信バッファ501に記憶されたパケットをDSP34aに送信し、DSP34aが、コーデック変換を実行する。つまり、DSP34aは、送信バッファ501に記憶されたパケットに対してコーデック変換を実行する。そして、DSP34aは、コーデック変換後のパケットを受信バッファ502に格納する(ステップS305)。
【0113】
一方、ステップS302に戻り、方路選択セレクタ510の方路が送信バッファ501に向かう方路でない場合について説明する(ステップS302否定)。つまり、方路選択セレクタ510の方路が無音化処理ルートである場合について説明する。この場合、バッファ制御ブロック500では、無音化処理回路520による無音化処理が行われる(ステップS306)。つまり、例えば、無音化処理回路520は、ヘッダ情報のコーデック種別をDSP34aによるコーデック変換後のコーデック種別を示す値に変更し、音声情報が格納される領域のデータをすべて「0」に変換する。そして、無音化処理回路520は、無音化処理を実行したパケットを受信バッファ502に格納する(ステップS307)。
【0114】
つまり、例えば、割合設定が「30」である場合には、カウント数「1」〜「29」に対応するパケットについては、DSP34がコーデック変換を実行し、カウント数「30」に対応するパケットについては、無音化処理回路520が無音化処理を実行する。
【0115】
その後、バッファ制御ブロック500は、受信バッファ502に記憶されたパケットをパケット振分部311に送信する(ステップS308)。つまり、バッファ制御ブロック500は、無音化処理が実行されたパケットや、コーデック変換後のパケットを送信する。
【0116】
[実施例2に係るパケット処理装置による処理]
次に、図17を用いて、実施例2に係るパケット処理装置2による処理の流れを示す。図17は、実施例2に係るパケット処理装置による処理の流れを示すシーケンス図である。なお、図17では、記載の便宜上、無音化設定レジスタ531と無音化率設定レジスタ532とをまとめて「設定レジスタ」と記載した。
【0117】
なお、図17では、説明の便宜上、無音化判定回路535が、方路選択セレクタ510の方路を通常処理ルートにする場合には、方路選択指示を送信しない場合を例に説明する。つまり、方路選択セレクタ510の方路は、方路選択指示を受信した場合には無音化処理ルートになり、方路選択指示を受信しない場合には通常処理ルートになる場合を例に説明する。また、以下では、割合情報が「30」である場合を例に説明する。
【0118】
図17に示すように、CPU21は、無音化処理を実行することを示す設定情報を無音化設定レジスタ531に設定することで(ステップS401)、無音化処理を実行することを無音化判定回路535に通知する(ステップS402)。また、CPU21は、割合情報を無音化率設定レジスタ532に設定することで(ステップS403)CH毎カウンタ534に割合情報を通知し(ステップS404)、また、無音化判定回路535に割合情報を通知する(ステップS405)。
【0119】
その後、バッファ制御ブロック500がパケットを受信すると、CH毎カウンタ534は、チャネルごとにパケット数をカウントし、チャネルごとのカウント数を無音化判定回路535に通知する(ステップS406〜S411)。図17に示す例では、CH毎カウンタ534は、「1」〜「30」までの間においてカウントを繰り返す。なお、図17に示す例では、CH毎カウンタ534が通知したカウント数を「CH毎カウント数「n」(nはカウント数)」と記載した。図17に示したカウント数は、すべて、同じ音声チャネルについてのカウント数であるものとして説明する。
【0120】
また、バッファ制御ブロック500がパケットを受信すると、CH毎カウンタ534によるカウント処理とは別に、CH毎カウンタ534によるカウント数に基づいて、以下に説明する処理が行われる。以下では、CH毎カウンタ534によるカウント数が割合設定によって示されるカウント数でない場合と、CH毎カウンタ534によるカウント数が割合設定によって示されるカウント数である場合とに分けて説明する。
【0121】
まず、CH毎カウンタ534によるカウント数が割合設定によって示されるカウント数でない場合について説明する。つまり、図17に示す例では、カウント数が「1」〜「29」である場合に対応する(ステップS406、ステップS408、ステップS410)。この場合、方路選択セレクタ510の方路は通常処理ルートになる。
【0122】
ここで、方路選択セレクタ510は、パケットを送信バッファ501に向けて送信し(ステップS412)、その後、バッファ制御ブロック500が、送信バッファ501からDSP34へと送信する(ステップS413)。
【0123】
そして、DSP34は、コーデック変換を実行し(ステップS414)、コーデック変換後のパケットをバッファ制御ブロック500に送信する(ステップS415)。バッファ制御ブロック500aでは、受信バッファ502が、コーデック変換後のパケットを記憶する。その後、FPGA31は、受信バッファ502に格納されたパケットをパケットスイッチ用カード10に送信する。
【0124】
次に、CH毎カウンタ534によるカウント数が割合設定によって示されるカウント数である場合について説明する。つまり、図17に示す例では、カウント数が「30」である場合に対応する(ステップS407、ステップS409、ステップS411)。この場合、無音化処理回路520は、無音化処理ルートにする方路選択指示を方路選択セレクタ510に送信する(ステップS416)。
【0125】
ここで、方路選択セレクタ510は、パケットを無音化処理回路520に向けて送信する(ステップS417)。そして、無音化処理回路520は、無音化処理を実行し(ステップS418)、無音化処理が終了したパケットを受信バッファ502に格納する(ステップS419)。その後、FPGA31は、受信バッファ502に格納されたパケットをパケットスイッチ用カード10に送信する。
【0126】
[実施例2の効果]
上述したように、実施例2によれば、パケット処理装置2は、受信したパケットのパケット数を監視する。そして、パケット処理装置2は、複数のDSP34の一部への電源供給が断たれた場合に、監視したパケット数に基づいて、受信したパケットのうち所定の割合のパケットを無信号化処理対象として選択する。そして、パケット処理装置2は、無信号化処理対象として選択されたパケットを無信号化処理する。この結果、無音化処理を実行しない手法と比較して、省電力設定を長く継続することが可能である。
【0127】
図18を用いて、実施例2の効果について説明する。図18は、実施例2に係るパケット処理装置による効果について示す図である。図18の横軸は時間の経過を示し、図18の縦軸は処理負荷の大きさを示す。ここで、閾値Aが設定されている場合を例に説明する。つまり、DSP34の処理負荷が閾値A以下になった場合に省電力設定へと移行し、DSP34の処理負荷が閾値Aより大きくなった場合に定常設定に以降する場合を例に説明する。
【0128】
また、図18の701は、全てのパケットのコーデック変換を実行する場合におけるDSP34の処理負荷を示す。言い換えると、無音化処理を実行しない場合におけるDSP34の処理負荷を示す。例えば、図18の701は、30個パケットを受信した場合に、30個のパケット全てのコーデック変換をDSP34が実行する場合における処理負荷である。また、図18の702は、一部のパケットのコーデック変換を実行しない場合におけるDSP34の処理負荷が該当する。言い換えると、無音化処理を実行する場合におけるDSP34の処理負荷を示す。例えば、図18の702は、30個パケットを受信した場合に、30個のパケットのうち29個のパケットのコーデック変換をDSP34が実行し、残りの1個のパケットについては無音化処理する場合における処理負荷である。
【0129】
また、図18の値Cは、図18の701に示す処理負荷が閾値Aを越えた時点を示す。値Dは、図18の702に示す処理負荷が閾値Aを越えた時点を示す。ここで、閾値Bは、図18の701に示す処理負荷のうち値Dに対応する値になる。つまり、無音化処理する場合において、DSP34の処理負荷が閾値Aを越えた時点を示す。
【0130】
また、無音化処理する場合におけるDSP34の処理負荷は、全てのパケットのコーデック変換を実行する場合におけるDSP34の処理負荷よりも軽くなる。このことから、図18に示すように、図18の702が閾値Aを越える時点を示す値Dは、図18の701が閾値Aを越える時点を示す値Cよりも前の時点になる。
【0131】
図18に示すように、無音化処理を実行しない場合には、値Cの段階において、DSP34の処理負荷が閾値Aより大きくなる。この結果、パケット処理装置2は、値Cの段階において、定常設定から省電力設定に移行する。一方、無音化処理を実行する場合には、DSP34は、値Cよりも後の時点になる値Dの段階において、DSP34の処理負荷が閾値Aより大きくなる。この結果、パケット処理装置2は、値Dの段階において、定常設定から省電力設定に移行する。つまり、無音化処理を実行することで、パケット処理装置2は、省電力設定が開始されてから定常設定に戻るまでの時間を長くすることが可能である。つまり、省電力設定をより長く継続することが可能である。
【0132】
また、省電力設定をより長く継続することができる結果、消費電力を削減することが可能である。例えば、消費電力の削減量の一例について、省電力設定に移行した場合に、音声データ処理カードの単位時間あたりの消費電力が20%削減される場合を用いて説明する。また、音声データ処理カード1枚あたりの消費電力が「45W」である場合を用いて説明する。また、省電力設定に移行する場合には、1日あたり6時間移行する場合を用いて説明する。また、無効化処理を実行することで、省電力設定の継続時間が3時間増加する場合を用いて説明する。
【0133】
この場合、音声データ処理カードは、省電力設定に移行しない場合には、「45(W)×24(時間)=1.080(kWh)」という電力量を一日に消費する。また、音声データ処理カードは、省電力設定に移行し、無効化処理を実行しない場合には、「45(W)×(1−0.2)×6(時間)+45(W)×18(時間)=1.026(kWh)という電力量を一日に消費する。また、音声データ処理カードは、省電力設定に移行し、無効化処理を実行する場合には、「45(W)×(1−0.2)×9(時間)+45(W)×15(時間)=0.999(kWh)という電力量を一日に消費する。
【0134】
つまり、無音化処理を実行しない場合であっても、省電力設定に移行する場合には、一日当たり5%程度の消費電力が削減可能である。無音化処理を実行する場合には、更に、3%程度の消費電力を削減することが可能である。
【0135】
また、実施例2によれば、無音化処理回路520は、音声情報が格納される領域やコーデック種別を示す情報を変更以外については変更しないことから、パケットの欠落が発生することなく処理を実行することが可能である。つまり、無音化処理回路520による無音化処理では、シーケンスナンバやUser Defineに対しては何ら変更が加えられることはなく、無音化処理が実行されたパケットを用いる装置がエラーやアラームを発生させることはない。
【0136】
このように、実施例2によれば、無音化のために音声品質は落ちるものの、省電力設定の継続時間を延ばすことが可能である。また、無音化のために音声品質は落ちるものの、目安として、5%以下の音声データが欠落しても通話に影響ないことが知られている。このことを踏まえ、例えば、割合設定として「20」以上の値を設定することで、実質的に音声品質に影響を与えることなく、省電力設定の継続時間を延ばすことが可能である。なお、「20」という値はあくまでも一例であり、任意の値を用いて良い。
【実施例3】
【0137】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されて良いものである。そこで、以下では実施例2として本発明に含まれる他の実施例を説明する。なお、以下では、実施例1において説明した省電力設定を「省電力設定」と記載し、実施例2において説明した省電力設定時に無音化処理を実行する設定を「無音化設定」と記載する。
【0138】
[定常設定や省電力設定の切り替え]
例えば、実施例1では、CPU21が定常設定と省電力設定とについて説明した。しかしながら、本発明はこれに限定されるものではない。例えば、CPU21は、定常設定と省電力設定と無音化設定とを切り替えても良い。なお、定常設定よりも省電力設定の方が消費電力は小さく、省電力設定よりも無音化設定の方が消費電力は小さい。
【0139】
[受信バッファ]
また、例えば、受信バッファ502は、DSP34aからのパケットを格納する処理と、無音化処理回路520からのパケットを格納する処理とが競合した場合に用いるバッファを有しても良い。この場合、例えば、バッファ制御ブロック500aは、DSP34aからのパケットを受信バッファ502に格納する処理を優先し、無音化処理回路520からのパケットについてはバッファに記憶しておく。そして、受信バッファ502では、DSP34aからのパケットを受信バッファ502に格納する処理が終了した後に、無音化処理回路520からのパケットを格納する処理を実行する。なお、本発明はこれに限定されるものではなく、無音化処理回路520からのパケットを格納する処理を優先しても良い。
【0140】
[設定の変更]
また、例えば、バケット処理装置は、省電力設定から定常設定に移行する場合に、電源を供給するDSPの数を徐々に減らしても良い。また、バケット処理装置は、定常設定から省電力設定に移行する場合に、電源を供給するDSPの数を徐々に増やしていっても良い。つまり、例えば、パケット処理装置は、電源を供給するDSPの数が異なる複数段階の省電力設定を有し、各省電力設定それぞれに閾値を対応付けておく。そして、パケット処理装置は、処理負荷に応じて、複数段階の省電力設定を使い分けても良い。
【0141】
[システム構成]
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、パケット監視部310aと重み付け判定部310bを統合しても良い。さらに、各装置にて行われる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【0142】
また、本実施例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【0143】
[プログラム]
なお、本実施例で説明した電源制御方法は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
【符号の説明】
【0144】
1 パケット処理装置
10 パケットスイッチ用カード
11 スイッチ機能LSI
11a パケット数計測部
20 制御カード
21 CPU
21a 省電力判定部
30 音声データ処理カード
31 FPGA
310 送受信部
310a パケット監視部
310b 重み付け判定部
311 パケット振分部
311a 振り分けテーブル
312 バッファ制御部
312a バッファ量計測部
32 DSP電源制御素子
33 レギュレータ
34 DSP
35 メモリ
36 全体電源制御素子
2 パケット処理装置
400 バッファ制御部
500 バッファ制御ブロック
501 送信バッファ
502 受信バッファ
510 方路選択セレクタ
520 無音化処理回路
530 セレクタ制御部
531 無音化設定レジスタ
532 無音化率設定レジスタ
533 バッファカウント
534 CH毎カウンタ
535 無音化判定回路

【特許請求の範囲】
【請求項1】
受信したパケットを信号処理する信号処理部と、
前記信号処理部の処理負荷を監視する処理負荷監視部と、
前記処理負荷監視部によって監視された前記処理負荷が低負荷である場合には、前記信号処理部への電源供給を断つように制御する電源制御部と、
を備えることを特徴とするパケット処理装置。
【請求項2】
前記処理負荷監視部は、前記処理負荷として、パケット長およびパケットの変換種別を監視し、
前記処理負荷監視部によって監視された前記パケット長および前記パケットの変換種別に基づいて、前記信号処理部がパケットを変換するための処理負荷を演算する処理負荷演算部をさらに備え、
電源制御部は、前記処理負荷演算部によって演算された前記処理負荷が所定の閾値以下である場合には、前記信号処理部への電源供給を断つように制御することを特徴とする請求項1に記載のパケット処理装置。
【請求項3】
前記処理負荷監視部は、前記処理負荷として、前記信号処理部が受信するパケット数を監視し、
前記電源制御部は、前記処理負荷監視部によって監視された前記パケット数が所定の閾値以下である場合には、前記信号処理部への電源供給を断つように制御することを特徴とする請求項1または2に記載のパケット処理装置。
【請求項4】
前記処理負荷監視部は、前記信号処理部によって信号処理されるパケットを保持するパケット保持部の蓄積量を監視し、
前記電源制御部は、前記信号処理部への電源供給を断つ場合に、前記処理負荷監視部によって監視された前記パケット保持部の蓄積量が無くなった後に、前記信号処理部への電源供給を断つように制御することを特徴とする請求項1〜3のいずれか一つに記載のパケット処理装置。
【請求項5】
前記信号処理部は、他の信号処理部とは電源層が独立して構成され、
前記信号処理部の電源制御処理について、シーケンス制御を行う電源制御素子をさらに備えることを特徴とする請求項1〜4のいずれか一つに記載のパケット処理装置。
【請求項6】
受信したパケットを信号処理する信号処理部の処理負荷を監視する処理負荷監視ステップと、
前記処理負荷監視ステップによって監視された前記処理負荷が低負荷である場合には、前記信号処理部への電源供給を断つように制御する電源制御ステップと、
を含んだことを特徴とする電源制御方法。
【請求項7】
受信したパケットのパケット数を監視するパケット数監視部と、
前記電源制御部により複数の信号処理部の一部への電源供給が断たれた場合に、前記パケット数監視部により監視されたパケット数に基づいて、受信したパケットのうち所定の割合のパケットを無信号化処理対象として選択するパケット選択部と、
前記パケット選択部により無信号化処理対象として選択されたパケットを無信号化処理する無信号化処理部と
をさらに備えたことを特徴とする請求項1に記載のパケット処理装置。
【請求項8】
受信したパケットのパケット数を監視するパケット数監視ステップと、
前記電源制御ステップにより複数の信号処理部の一部への電源供給が断たれた場合に、前記パケット数監視ステップにより監視されたパケット数に基づいて、受信したパケットのうち所定の割合のパケットを無信号化処理対象として選択するパケット選択ステップと、
前記パケット選択ステップにより無信号化処理対象として選択されたパケットを無信号化処理する無信号化処理ステップと
をさらに含むことを特徴とする請求項6に記載の電源制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate


【公開番号】特開2010−263602(P2010−263602A)
【公開日】平成22年11月18日(2010.11.18)
【国際特許分類】
【出願番号】特願2009−240552(P2009−240552)
【出願日】平成21年10月19日(2009.10.19)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】