(57)【特許請求の範囲】
【請求項１】
通信部を備える通信装置であって、
前記通信部は、
第１状態よりも消費電力が小さい第２状態から前記第１状態への変更を要求する起動信号を受信する起動信号受信部と、
前記起動信号が受信された場合に、前記通信部の前記第２状態から前記第１状態への状態変更と、前記通信部が前記第１状態時に受信されるフレームを処理する制御部への前記状態変更の通知である状態変更イベントの通知とを、行う状態管理部と、
前記起動信号が受信された場合に、前記通信装置を識別する通信装置識別情報及び前記制御部が初期化する毎に変動する初期化識別情報の少なくとも一方を含む応答信号を送信する応答信号送信部と、
を備えることを特徴とする通信装置。
【請求項２】
前記制御部は、ＣＰＵ（Central  Processing  Unit）であり、
前記ＣＰＵがアクセス可能なメモリへ前記フレームをＤＭＡ（Direct  Memory  Access）転送するＤＭＡコントロール部と、
を更に備えることを特徴とする請求項１に記載の通信装置。
【請求項３】
前記通信部は、
フレームを受信するフレーム受信部を更に備え、
前記フレーム受信部は、前記フレームに含まれるビットパターンを用いてパラメータを決定することを特徴とする請求項１又は２に記載の通信装置。
【請求項４】
前記状態管理部は、前記通信部が前記第２状態時に、前記制御部からフレーム送信を開始する旨を示すフレーム送信イベントが通知された場合に、前記通信部を前記第２状態から前記第１状態へ状態変更し、
前記通信部は、
前記通信部が前記第２状態から前記第１状態へ状態変更された場合に、起動信号を送信する起動信号送信部を更に備えることを特徴とする請求項１〜３のいずれか１つに記載の通信装置。
【請求項５】
前記通信部は、
応答信号を受信する応答信号受信部を更に備え、
前記応答信号受信部は、前回受信した応答信号に含まれる通信装置識別情報及び初期化識別情報の少なくとも一方と新たに受信した応答信号に含まれる通信装置識別情報及び初期化識別情報の少なくとも一方とが異なる場合に、障害が発生していると判定することを特徴とする請求項１〜４のいずれか１つに記載の通信装置。
【請求項６】
前記状態管理部は、前記障害が発生していると判定された場合に、その旨を前記制御部へ通知することを特徴とする請求項５に記載の通信装置。
【請求項７】
前記応答信号受信部は、前記応答信号に含まれるビットパターンを用いてパラメータを決定することを特徴とする請求項５又は６に記載の通信装置。
【請求項８】
前記起動信号は、通信方式に関する情報を含むことを特徴とする請求項１〜７のいずれか１つに記載の通信装置。
【請求項９】
第１通信部を備える送信ノードと第２通信部を備える受信ノードとを備える通信システムであって、
前記第１通信部は、
第１状態よりも消費電力が小さい第２状態から前記第１状態への変更を要求する起動信号を送信する起動信号送信部を備え、
前記第２通信部は、
前記起動信号を受信する起動信号受信部と、
前記起動信号が受信された場合に、前記第２通信部の前記第２状態から前記第１状態への状態変更と、前記第２通信部が前記第１状態時に受信されるフレームを処理する制御部への前記状態変更の通知である状態変更イベントの通知とを、行う状態管理部と、
前記起動信号が受信された場合に、前記通信装置を識別する通信装置識別情報及び前記制御部が初期化する毎に変動する初期化識別情報の少なくとも一方を含む応答信号を送信する応答信号送信部と、
を備えることを特徴とする通信システム。
【請求項１０】
通信部を備える通信装置で実行される状態管理方法であって、
前記通信部では、
起動信号受信部が、第１状態よりも消費電力が小さい第２状態から前記第１状態への変更を要求する起動信号を受信する起動信号受信ステップと、
状態管理部が、前記起動信号が受信された場合に、前記通信部の前記第２状態から前記第１状態への状態変更と、前記通信部が前記第１状態時に受信されるフレームを処理する制御部への前記状態変更の通知である状態変更イベントの通知とを、行う状態管理ステップと、
応答信号送信部が、前記起動信号が受信された場合に、前記通信装置を識別する通信装置識別情報及び前記制御部が初期化する毎に変動する初期化識別情報の少なくとも一方を含む応答信号を送信する応答信号送信ステップと、
を含むことを特徴とする制御方法。
【請求項１１】
通信部を備える通信装置で実行されるプログラムであって、
前記通信部のコンピュータを、
第１状態よりも消費電力が小さい第２状態から前記第１状態への変更を要求する起動信号を受信する起動信号受信部と、
前記起動信号が受信された場合に、前記通信部の前記第２状態から前記第１状態への状態変更と、前記通信部が前記第１状態時に受信されるフレームを処理する制御部への前記状態変更の通知である状態変更イベントの通知とを、行う状態管理部と、
前記起動信号が受信された場合に、前記通信装置を識別する通信装置識別情報及び前記制御部が初期化する毎に変動する初期化識別情報の少なくとも一方を含む応答信号を送信する応答信号送信部と、
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、通信装置、通信システム、制御方法及びプログラムに関する。
【背景技術】
【０００２】
従来から、ＰＣ（Personal  Computer）等の様々な端末は、イーサネット（登録商標）などを用いて通信を行っている。これらの端末は、通信フレームがいつ到着するか分からないため、常に稼働状態である必要があった。一方、近年の消費電力削減に対する気運の高まりから、これらの端末においても消費電力削減の試みがなされており、例えば、端末全体に給電が行われる稼働状態と、稼働状態に移行するパケットを監視させるために端末の通信に関わる部分に給電する低電力状態とを、使い分ける技術がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−８９２５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述したような技術では、通信に関わる部分への通電は常に行われているため、通信に関わる部分の消費電力を削減できない。
【課題を解決するための手段】
【０００５】
実施形態の通信装置は、通信部を備え、通信部は、起動信号受信部と、状態管理部と、応答信号送信部と、を備える。起動信号受信部は、第１状態よりも消費電力が小さい第２状態から前記第１状態への変更を要求する起動信号を受信する。状態管理部は、前記起動信号が受信された場合に、前記通信部の前記第２状態から前記第１状態への状態変更と、前記通信部が前記第１状態時に受信されるフレームを処理する制御部への前記状態変更の通知である状態変更イベントの通知とを、行う。応答信号送信部は、前記起動信号が受信された場合に、前記通信装置を識別する通信装置識別情報及び前記制御部が初期化する毎に変動する初期化識別情報の少なくとも一方を含む応答信号を送信する。
【図面の簡単な説明】
【０００６】
【図１】図１は、第１実施形態の通信システムの構成例を示すブロック図。
【図２】図２は、第１実施形態の通信システムにおけるノード間のデータ送受信例を示すシーケンス図。
【図３】図３は、第１実施形態の起動信号として送信されるＮＬＰの例を示す図。
【図４】図４は、第１実施形態のフレームのフォーマット例を示す図。
【図５】図５は、第１実施形態のフレームのフォーマット例を示す図。
【図６】図６は、第１実施形態の応答信号として送信されるＮＬＰの例を示す図。
【図７】図７は、第１実施形態の送信端末の構成例を示すブロック図。
【図８】図８は、第１実施形態のＮＩＣの構成例を示すブロック図。
【図９】図９は、第１実施形態の受信端末の構成例を示すブロック図。
【図１０】図１０は、第１実施形態のＮＩＣの構成例を示すブロック図。
【図１１】図１１は、第１実施形態のスイッチの構成例を示すブロック図。
【図１２】図１２は、第１実施形態のＮＩＣの動作手順例を示すフローチャート。
【図１３】図１３は、第１実施形態のＮＩＣの起動信号受信動作手順例を示すフローチャート。
【図１４】図１４は、第１実施形態のＮＩＣのフレーム受信動作手順例を示すフローチャート。
【図１５】図１５は、第１実施形態の通信システム全体の動作手順例を示すシーケンス図。
【図１６】図１６は、第２実施形態のＦＬＰのフォーマット例を示す図。
【図１７】図１７は、第２実施形態のＦＬＰの情報用パルスの説明図。
【図１８】図１８は、第２実施形態のＮＩＣの構成例を示すブロック図。
【図１９】図１９は、第２実施形態のＮＩＣの構成例を示すブロック図。
【発明を実施するための形態】
【０００７】
以下、添付図面を参照しながら、本発明にかかる通信装置及び通信システムの実施の形態を詳細に説明する。
【０００８】
（第１実施形態）
図１は、第１実施形態の通信システム１の構成の一例を示すブロック図である。図１に示すように、通信システム１は、送信端末１０と、受信端末２０と、スイッチ３０とを、備える。送信端末１０及び受信端末２０は、スイッチ３０を介して接続される。第１実施形態では、通信システム１の通信方式が、イーサネット（登録商標）通信方式であり、１０Ｍｂｐｓの通信速度を有する場合を例に取り説明するが、これに限定されるものではない。また、送信端末１０及び受信端末２０は、いずれも送受信が可能な通信端末であるが、説明を平易にするため、起動信号及びフレームの送信に特化した送信端末と、起動信号及びフレームの受信に特化した受信端末として説明する。但し、これらに限定されるものではない。
【０００９】
また以下では、送信ノード、受信ノードという表現を用いる場合がある。ここで、送信ノードとは、起動信号及びフレームの送信対象を指し、例えば、送信端末１０や、受信端末２０に起動信号及びフレームを送信するスイッチ３０などが該当する。同様に、受信ノードとは、起動信号及びフレームの受信対象を指し、例えば、受信端末２０や、送信端末１０から起動信号及びフレームを受信するスイッチ３０などが該当する。
【００１０】
また、通信システム１における送信ノード及び受信ノードの通信部（ＮＩＣ：Network  Interface  Card）は、フレームの送受信が可能なアクティブ状態（第１状態の一例、以下、「Ｎ１」と称する）と、フレームの送信が不可能であって、クロック周波数がアクティブ状態よりも低いＬＰＩ（Low  Power  Idle）状態（第２状態の一例、以下、「Ｎ２」と称する）とを、有している。そして通信システム１では、送信ノードと受信ノードとがＮＬＰ（Normal  Link  Pulses）を交換することで、互いにリンクに接続していることを認識し、リンクを介してフレームを送受信する。但し、送信ノード及び受信ノードの通信部がＮ１の場合には、ＮＬＰの交換は定期的に行われるが、送信ノード及び受信ノードの通信部がＮ２の場合には、ＮＬＰの交換は行われず、受信ノードの通信部をＮ２からＮ１に復帰させる場合に、ＮＬＰの交換が行われる。これにより、フレームを送信しない場合の送信ノード及び受信ノードの消費電力の更なる削減を図っている。
【００１１】
図２は、第１実施形態の通信システム１におけるノード間のデータ送受信の流れの一例を示すシーケンス図である。
【００１２】
送信ノードは、フレームを送信する際に、まず、起動信号としてＮＬＰを受信ノードに送信する（ステップＳ１０）。図３は、起動信号として送信されるＮＬＰの一例を示す図である。ここで、受信ノードの通信部は、Ｎ２において、起動信号（ＮＬＰ）を受信すると、クロック周波数を上げることにより、Ｎ１に移行し、フレーム受信の準備を行う。この際、受信ノードの通信部は、給電電圧も上げることが望ましい。
【００１３】
続いて、送信ノードは、送信対象のフレームを受信ノードに送信する（ステップＳ２０）。図４及び図５は、フレームのフォーマットの一例を示す図である。送信ノードは、図４及び図５のいずれのフォーマットを有するフレームを送信してもよい。ここで、フレームは、電気信号の形で伝達されるため、受信ノードの通信部は、フレームを正しく受信するために、信号の乱れを補正するためのデジタル信号処理を行う必要がある。このため、受信ノードの通信部は、デジタル信号処理として、フレームの先頭に付加されているプリアンブルと呼ばれる既知のビットパターンを用いて、伝送ひずみを補正するためのフィルタ係数（波形乱れの成分）を算出したり、送信ノードとビット同期を取るために受信側のＰＬＬを調節したりする。以下、これらのパラメータを決定する処理をウォーミングアップと称する。
【００１４】
続いて、受信ノードは、送信ノードから起動信号を受信すると、応答信号としてＮＬＰを送信ノードに送信する（ステップＳ３０）。図６は、応答信号として送信されるＮＬＰの一例を示す図である。図６に示すように、応答信号として送信されるＮＬＰには、ノードを識別するノードＩＤと、ノードが再起動（初期化）する毎に変化する起動ＩＤとが、含まれる。これにより、送信ノードは、ノードの入れ替わりやリブートの有無を検出することができる。なお送信ノードは、フレーム送信後一定時間以内に受信ノードからＮＬＰを受信できない場合には、リンク切断としてエラー処理を行う。
【００１５】
続いて、送信ノードは、送信対象のフレームを受信ノードに送信する（ステップＳ４０、ステップＳ５０）。ここで、送信ノードは、前回のフレーム送信後、一定時間以内に次のフレームを送信する場合には、ＮＬＰの送信を省略できる。なお、送信ノードは、後続フレームがある場合には、フレームのヘッダ又はトレーラに後続フレームがある旨を記すことが望ましい。
【００１６】
図７は、第１実施形態の送信端末１０の構成の一例を示すブロック図である。図７に示すように、送信端末１０は、ＣＰＵ（Central  Processing  Unit）１０１と、メモリ１０２と、割込みコントローラ１０３と、バス１０４と、ブリッジ１０５と、ＮＩＣ（Network  Interface  Card）１１０とを、備える。
【００１７】
送信端末１０では、送信端末１０の各部を制御するＣＰＵ１０１、ＣＰＵ１０１の作業領域として使用されるメモリ１０２、ＮＩＣ１１０などの周辺機器からの割込み要求をＣＰＵ１０１へ通知する割込みコントローラ１０３、及びバス１０４が、ブリッジ（チップ）１０５を介して接続され、ＮＩＣ１１０がバス１０４に接続されている。
【００１８】
ＣＰＵ１０１は、メモリ１０２上で送信対象のフレームを作成し、バス１０４を介してＮＩＣ１１０に転送したり、フレーム送信を開始する旨を示すフレーム送信イベントを、バス１０４を介してＮＩＣ１１０に通知したりする。またＣＰＵ１０１は、ＮＩＣ１１０からバス１０４及び割込みコントローラ１０３を介してリンク故障イベントを受信する。これにより、ＣＰＵ１０１は、フレーム送信に失敗したと判定し、エラー処理を行う。例えば、ＣＰＵ１０１は、エラー処理として、ＤＨＣＰ（Dynamic  Host  Configuration  Protocol）によるＩＰアドレスの再取得を行い、再取得に失敗した場合に、図示せぬ表示部などにエラーメッセージを表示する。
【００１９】
図８は、第１実施形態のＮＩＣ１１０の構成の一例を示すブロック図である。なお、図８に示す例は、ＮＩＣ１１０の構成のうち送信に関係する構成を例示したものである。図８に示すように、ＮＩＣ１１０は、バスインタフェース１１２と、送信フレームバッファ１１４と、物理層処理部１１６と、状態管理部１１８と、クロック周波数管理部１２０と、電圧管理部１２２と、起動信号送信部１２４と、フレーム送信部１２６と、ＮＬＰ制御部１２８とを、備える。
【００２０】
バスインタフェース１１２は、バス１０４とのインタフェースである。送信フレームバッファ１１４は、ＣＰＵ１０１からバスインタフェース１１２を介して転送されたフレームを格納する。物理層処理部１１６は、物理層レベルでの各種変換処理などを行う。
【００２１】
状態管理部１１８は、ＮＩＣ１１０の電源状態であるＮＩＣ状態を管理する。具体的には、状態管理部１１８は、クロック周波数管理部１２０に対するＮＩＣ１１０のクロック周波数の上げ下げ、電圧管理部１２２に対するＮＩＣ１１０への給電電圧の上げ下げを指示する。
【００２２】
例えば、状態管理部１１８は、ＮＩＣ１１０のＮＩＣ状態がＮ２である場合に、ＣＰＵ１０１からフレーム送信イベントが通知されると、クロック周波数管理部１２０にＮＩＣ１１０のクロック周波数を上げさせるとともに、電圧管理部１２２にＮＩＣ１１０への給電電圧を上げさせるように指示する。これにより、状態管理部１１８は、ＮＩＣ１１０のＮＩＣ状態をＮ２からＮ１に変更する。ここで、状態管理部１１８は、状態管理部１１８内の図示せぬメモリなどでＮＩＣ状態（Ｎ１であるか、Ｎ２であるか）を管理するものとする。なお状態管理部１１８は、ＮＩＣ１１０のＮＩＣ状態がＮ１である場合に、ＣＰＵ１０１からフレーム送信イベントが通知されても、クロック周波数管理部１２０及び電圧管理部１２２への上述した指示は行わない。
【００２３】
また状態管理部１１８は、送信フレームバッファ１１４にフレームが転送されると、起動信号送信部１２４に起動信号の送信を指示する。
【００２４】
また状態管理部１１８は、ＮＬＰ制御部１２８からリンク故障イベントを受信すると、バスインタフェース１１２を介してＣＰＵ１０１に通知する。
【００２５】
クロック周波数管理部１２０は、状態管理部１１８からの指示を受け、ＮＩＣ１１０の動作クロック数の上げ下げを行う。電圧管理部１２２は、状態管理部１１８からの指示を受け、ＮＩＣ１１０への給電電圧の上げ下げを行う。
【００２６】
起動信号送信部１２４は、状態管理部１１８からの指示を受け、起動信号としてＮＬＰを、物理層処理部１１６を介して送信する。
【００２７】
フレーム送信部１２６は、送信フレームバッファ１１４に格納されている送信フレームを、物理層処理部１１６を介して順次送信する。この際、フレーム送信部１２６は、受信ノードから送信停止が要求されているか否かの確認を行い、送信停止期間でない場合にフレームを送信する。
【００２８】
なおフレーム送信部１２６は、送信対象のフレームを送信する際に、送信フレームバッファ１１４に後続フレーム（他のフレーム）が格納されている場合、送信対象のフレームに後続フレームビット（後続フレームがあることを示す情報フィールド）をセットして送信する。但し、後続フレームビットのセットは、必須ではない。
【００２９】
またフレーム送信部１２６は、前回のフレームを送信してから一定時間以内、即ち受信ノードの受信動作が可能な時間内であれば、起動信号送信部１２４による起動信号の送信を必要とせずに送信対象のフレームを送信できる。
【００３０】
ＮＬＰ制御部１２８（応答信号受信部の一例）は、起動信号が送信された受信ノードから予め定められた時間内に応答信号としてＮＬＰを受信しなかった場合、リンク切断と判定し、状態管理部１１８にリンク故障イベントを送信する。またＮＬＰ制御部１２８は、予め定められた時間内にＮＬＰを受信した場合であっても、ノードＩＤが前回のＮＬＰのノードＩＤと異なる場合や、起動ＩＤが前回のＮＬＰの起動ＩＤと異なる場合にも、状態管理部１１８にリンク故障イベントを送信する。
【００３１】
なお、ＮＬＰ制御部１２８は、ＮＩＣ１１０のＮＩＣ状態がＮ１の場合、受信ノードに一定間隔でＮＬＰを送信するとともに、受信ノードからＮＬＰを受信する処理を行うが、ＮＩＣ１１０のＮＩＣ状態がＮ２の場合には、この処理を行わない。これにより、ＮＩＣ１１０のＮＩＣ状態がＮ２の場合の消費電力を一層削減することができる。
【００３２】
図９は、第１実施形態の受信端末２０の構成の一例を示すブロック図である。図９に示すように、受信端末２０は、送信端末１０と同様、ＣＰＵ２０１と、メモリ２０２と、割込みコントローラ２０３と、バス２０４と、ブリッジ２０５と、ＮＩＣ２１０とを、備える。送信端末２０では、ＣＰＵ２０１、メモリ２０２、割込みコントローラ２０３、及びバス２０４が、ブリッジ（チップ）２０５を介して接続され、ＮＩＣ２１０がバス２０４に接続されている。
【００３３】
ＣＰＵ２０１は、ＮＩＣ２１０からバス２０４及び割込みコントローラ２０３を介してＮＩＣ２１０のＮＩＣ状態がＮ２からＮ１に移行した旨の状態変更イベントを受信する。この際、ＣＰＵ２０１は、動作速度を上げることが望ましい。このようにすれば、ＣＰＵ２０１は、ＮＩＣ２１０が受信したフレームの処理遅延を削減することができる。またＣＰＵ２０１は、ＮＩＣ２１０からバス２０４及び割込みコントローラ２０３を介してＮＩＣ２１０のＮＩＣ状態をＮ１からＮ２に移行する旨の状態変更イベントを受信する。
【００３４】
メモリ２０２には、ＮＩＣ２１０からフレームがバス２０４を介してＤＭＡ（Direct  Memory  Access）転送される。
【００３５】
図１０は、第１実施形態のＮＩＣ２１０の構成の一例を示すブロック図である。なお、図１０に示す例は、ＮＩＣ２１０の構成のうち受信に関係する構成を例示したものである。図１０に示すように、ＮＩＣ２１０は、バスインタフェース２１２と、物理層処理部２１４と、起動信号受信部２１６と、状態管理部２１８と、クロック周波数管理部２２０と、電圧管理部２２２と、ＮＬＰ制御部２２４と、フレーム受信部２２６と、フレームフィルタ部２２８と、受信フレームバッファ２３０と、ＤＭＡコントローラ２３２とを、備える。
【００３６】
バスインタフェース２１２は、バス２０４とのインタフェースである。物理層処理部２１４は、物理層レベルでの各種変換処理などを行う。
【００３７】
起動信号受信部２１６は、送信ノードから起動信号として送信されたＮＬＰを、物理層処理部２１４を介して受信し、状態管理部２１８に起動信号受信イベントを通知する。
【００３８】
状態管理部２１８は、ＮＩＣ２１０のＮＩＣ状態を管理する。具体的には、状態管理部２１８は、クロック周波数管理部２２０に対するＮＩＣ２１０のクロック周波数の上げ下げ、電圧管理部２２２に対するＮＩＣ２１０への給電電圧の上げ下げを指示する。
【００３９】
例えば、状態管理部２１８は、ＮＩＣ２１０のＮＩＣ状態がＮ２である場合に、起動信号受信部２１６から起動信号受信イベントが通知されると、クロック周波数管理部２２０にＮＩＣ２１０のクロック周波数を上げさせるとともに、電圧管理部２２２にＮＩＣ２１０への給電電圧を上げさせるように指示する。これにより、状態管理部２１８は、ＮＩＣ２１０のＮＩＣ状態をＮ２からＮ１に変更する。なお状態管理部２１８は、状態管理部２１８内の図示せぬメモリなどでＮＩＣ状態（Ｎ１であるか、Ｎ２であるか）を管理する。そして状態管理部２１８は、ＮＬＰ制御部２２４にＮＬＰの送信を指示する。更に状態管理部２１８は、バスインタフェース２１２を介してＣＰＵ２０１にＮＩＣ２１０のＮＩＣ状態がＮ２からＮ１に移行した旨の状態変更イベントを送信する。なお、状態管理部２１８は、ＣＰＵ２０１以外にもメモリコントローラやバスコントローラ（いずれも図示省略）等に状態変更イベントを送信することもできる。
【００４０】
また状態管理部２１８は、フレーム受信部２２６により予め定められた一定時間フレームが受信されなければ、バスインタフェース２１２を介してＣＰＵ２０１にＮＩＣ２１０のＮＩＣ状態がＮ１からＮ２に移行する旨の状態変更イベントを送信する。そして状態管理部２１８は、クロック周波数管理部２２０にＮＩＣ２１０のクロック周波数を下げさせるとともに、電圧管理部２２２にＮＩＣ２１０への給電電圧を下げさせるように指示する。これにより、ＮＩＣ２１０がフレームを受信しない場合の消費電力を削減することができる。
【００４１】
クロック周波数管理部２２０は、状態管理部２１８からの指示を受け、ＮＩＣ２１０のクロック周波数の上げ下げを行う。電圧管理部２２２は、状態管理部２１８からの指示を受け、ＮＩＣ２１０への給電電圧の上げ下げを行う。
【００４２】
ＮＬＰ制御部２２４（応答信号送信部の一例）は、状態管理部２１８からの指示を受け、物理層処理部２１４を介して応答信号としてＮＬＰを送信する。なお、ＮＬＰ制御部２２４は、ＮＩＣ２１０のＮＩＣ状態がＮ２の場合には、一定間隔でのＮＬＰ送信は行わない。これにより、ＮＩＣ２１０のＮＩＣ状態がＮ２の場合の消費電力を一層削減することができる。
【００４３】
フレーム受信部２２６は、物理層処理部２１４を介してフレームを受信し、ＦＣＳ（Frame  Check  Sequence）を用いたフレーム内ビット誤りの有無の確認及びフレームフォーマットの確認などイーサネット（登録商標）のＭＡＣ処理を行い、出力する。特にフレーム受信部２２６は、受信したフレームのプリアンブルを用いて、ウォーミングアップを行う。
【００４４】
フレームフィルタ部２２８は、フレーム受信部２２６から出力されたフレームの宛先ＭＡＣアドレスを確認し、所望のフレーム以外を破棄し、出力する。ここで、所望のフレームとは、ブロードキャストＭＡＣアドレスを有するフレーム、及びＣＰＵから予め受信を指示されたＭＡＣアドレスを有するフレームなどである。
【００４５】
受信フレームバッファ２３０は、フレームフィルタ部２２８から出力されたフレームを格納する。なお、受信フレームバッファ２３０は、複数フレームを格納できることが好ましい。
【００４６】
ＤＭＡコントローラ２３２は、受信フレームバッファ２３０に格納されたフレームを、バスインタフェース２１２を介してメモリ２０２にＤＭＡ（Direct  Memory  Access）転送する。但し、ＮＩＣ２１０が、フレーム受信を開始する旨を示すフレーム受信イベントを、バス２０４及び割込みコントローラ２０３を介してＣＰＵ２０１に通知し、受信フレームバッファ２３０からＣＰＵ２０１経由でメモリ２０２にフレームを転送するようにしてもよい。また、ＤＭＡコントローラ２３２は、ＣＰＵ２０１からの指示でＤＭＡ転送を行うようにしてもよい。
【００４７】
図１１は、第１実施形態のスイッチ３０の構成の一例を示すブロック図である。図１１に示すように、スイッチ３０は、ＣＰＵ３０１と、メモリ３０２と、割込みコントローラ３０３と、バス３０４と、ブリッジ３０５と、ＦＩＢ（Forwarding  Information  Base）３０６と、ＮＩＣ３０７と、ＮＩＣ３０８と、ＮＩＣ３０９とを、備える。スイッチ３０では、ＣＰＵ３０１、メモリ３０２、割込みコントローラ３０３、及びバス３０４が、ブリッジ（チップ）３０５を介して接続され、ＦＩＢ３０６、ＮＩＣ３０７、ＮＩＣ３０８、及びＮＩＣ３０９がバス３０４に接続されている。
【００４８】
スイッチ３０は、複数のＮＩＣ（本実施形態では、３つ）を備えるとともにＦＩＢを備える点で、送信端末１０及び受信端末２０と、相違する。
【００４９】
ＦＩＢ３０６は、ＭＡＣアドレスとポート（ＮＩＣ）を対応付けて保持しており、フレームを受信する毎に、受信したフレームの送信ＭＡＣアドレスと受信ポート（ＮＩＣ）との対応を追加する。
【００５０】
ＮＩＣ３０７〜３０９は、それぞれ、フレームを受信すると、その送信ＭＡＣアドレスをＦＩＢ３０６に問合せ、得られたポートに受信フレームを送信する。ＮＩＣ３０７〜３０９の構成は、フィルタの部分を除き、図８に示すＮＩＣ１１０や図１０に示すＮＩＣ２１０と同様である。
【００５１】
なお、スイッチ３０によるフレーム送信動作及び受信動作は、それぞれ上述の送信端末１０の動作及び受信端末２０の動作と同様である。但し、スイッチ３０の場合、全てのＮＩＣ３０７〜３０９がＮ２の時にのみＣＰＵ３０１やバス３０４などの回路をスリープさせることができる。また、スイッチ３０のＮＩＣ状態のＮ２からＮ１への移行は、若干の時間を要するため、送信端末１０から一定時間のフレーム受信がなくてもＮ２へ移行しないようにすることもできる。また、スイッチ３０のＮＩＣ３０７〜３０９は、一定時間フレーム送信がなくても、スイッチ３０のＮＩＣ状態をＮ２へ移行させず、送信フレームの発生時に、起動信号を送信することもできる。これによりフレーム転送時の処理遅延を削減することができる。
【００５２】
図１２は、第１実施形態のＮＩＣ１１０の動作手順の流れの一例を示すフローチャートである。
【００５３】
まず、状態管理部１１８は、ＣＰＵ１０１からフレーム送信イベントが通知されると、ＮＩＣ状態がＮ２であるか否かを確認する（ステップＳ１００）。
【００５４】
続いて、状態管理部１１８は、ＮＩＣ状態がＮ２である場合（ステップＳ１００でＹｅｓ）、クロック周波数管理部１２０に動作クロック数を上げさせるとともに、電圧管理部１２２にＮＩＣ１１０への給電電圧を上げさせ、ＮＩＣ状態をＮ２からＮ１に変更する（ステップＳ１０２）。なお、ＮＩＣ状態がＮ１である場合（ステップＳ１００でＮｏ）、ステップＳ１０２の処理は行われない。
【００５５】
続いて、状態管理部１１８は、前回のフレームが送信されてから、Ｔａ時間経過したか否かを確認する（ステップＳ１０４）。そして状態管理部１１８は、Ｔａ時間経過している場合には（ステップＳ１０４でＹｅｓ）、起動信号送信部１２４に起動信号の送信を指示し、起動信号送信部１２４は、起動信号としてＮＬＰを、物理層処理部１１６を介して送信する（ステップＳ１０６）。なお、Ｔａ時間経過していない場合には（ステップＳ１０４でＮｏ）、ステップＳ１０６の処理は行われない。
【００５６】
続いて、フレーム送信部１２６は、送信フレームバッファ１１４から送信対象のフレームを取得し、送信対象のフレームを取得した後に、後続フレームが送信フレームバッファ１１４に残っているか否かを確認する（ステップＳ１０８）。そして、フレーム送信部１２６は、後続フレームが残っている場合には（ステップＳ１０８でＹｅｓ）、送信対象のフレームに後続フレームビットをセットして（ステップＳ１１０）、送信する（ステップＳ１１２）。一方、フレーム送信部１２６は、後続フレームが残っていない場合には（ステップＳ１０８でＮｏ）、ステップＳ１１０の処理を行わずに、送信対象のフレームを送信する（ステップＳ１１２）。
【００５７】
続いて、ＮＬＰ制御部１２８は、起動信号送信部１２４による起動信号（ＮＬＰ）の送信後Ｔｒ時間以内に、受信ノードからＮＬＰを受信したか否かを確認する（ステップＳ１１４）。またＮＬＰ制御部１２８は、Ｔｒ時間以内にＮＬＰを受信した場合（ステップＳ１１４でＹｅｓ）、受信したＮＬＰのノードＩＤに変更があるか否かを確認する（ステップＳ１１６）。更にＮＬＰ制御部１２８は、ノードＩＤに変更がない場合（ステップＳ１１６でＮｏ）、受信したＮＬＰの起動ＩＤに変更があるか否かを確認する（ステップＳ１１８）。
【００５８】
そして、ＮＬＰ制御部１２８は、Ｔｒ時間以内にＮＬＰを受信しなかった場合（ステップＳ１１４でＮｏ）、ノードＩＤに変更がある場合（ステップＳ１１６でＹｅｓ）、又は起動ＩＤに変更がある場合に（ステップＳ１１８でＹｅｓ）、状態管理部１１８にリンク故障イベントを通知し、状態管理部１１８がリンク故障イベントをＣＰＵ１０１に送信する（ステップＳ１２０）。
【００５９】
一方、起動ＩＤに変更がない場合（ステップＳ１１８でＮｏ）、フレーム送信部１２６は、送信フレームバッファ１１４にフレームがあるか否かを確認する（ステップＳ１２２）。
【００６０】
そして、フレーム送信部１２６は、送信フレームバッファ１１４にフレームがある場合（ステップＳ１２２でＹｅｓ）、ステップＳ１２４〜ステップＳ１２８の処理を行い、ステップＳ１２２に戻る。なお、ステップＳ１２４〜ステップＳ１２８までの処理は、それぞれステップＳ１０８〜ステップＳ１１２までの処理と同様であるため、説明を省略する。
【００６１】
一方、送信フレームバッファ１１４にフレームがない場合（ステップＳ１２２でＮｏ）、状態管理部１１８は、前回のフレームが送信されてからＴｓ時間以上経過したか否かを確認する（ステップＳ１３０）。そして、状態管理部１１８は、Ｔｓ時間以上経過している場合（ステップＳ１３０でＹｅｓ）、クロック周波数管理部１２０に動作クロック数を下げさせるとともに、電圧管理部１２２にＮＩＣ１１０への給電電圧を下げさせ、電源状態をＮ１からＮ２に変更し（ステップＳ１３２）、処理を終了する。なお、Ｔｓ時間以上経過していない場合（ステップＳ１３０でＮｏ）、ステップＳ１２２へ戻る。
【００６２】
図１３は、第１実施形態のＮＩＣ２１０の起動信号受信動作手順の流れの一例を示すフローチャートである。
【００６３】
まず、状態管理部２１８は、起動信号受信部２１６から起動信号受信イベントが通知されると、ＮＩＣ状態がＮ２であるか否かを確認する（ステップＳ２００）。
【００６４】
続いて、状態管理部２１８は、ＮＩＣ状態がＮ２である場合（ステップＳ２００でＹｅｓ）、クロック周波数管理部２２０に動作クロック数を上げさせるとともに、電圧管理部２２２にＮＩＣ２１０への給電電圧を上げさせ、ＮＩＣ状態をＮ２からＮ１に変更する（ステップＳ２０２）。
【００６５】
続いて、状態管理部２１８は、バスインタフェース２１２を介してＣＰＵ２０１にＮＩＣ２１０のＮＩＣ状態がＮ２からＮ１に移行した旨の状態変更イベントを送信する（ステップＳ２０４）。
【００６６】
続いて、状態管理部２１８は、ＮＬＰ制御部２２４にＮＬＰの送信を指示し、ＮＬＰ制御部２２４は、物理層処理部２１４を介してＮＬＰを送信する（ステップＳ２０６）。
【００６７】
なお、ステップＳ２００において、ＮＩＣ状態がＮ１である場合（ステップＳ２００でＮｏ）、ステップＳ２０２〜ステップＳ２０６の処理は行われない。
【００６８】
図１４は、第１実施形態のＮＩＣ２１０のフレーム受信動作手順の流れの一例を示すフローチャートである。
【００６９】
まず、フレーム受信部２２６は、物理層処理部２１４を介してフレームを受信し、受信したフレームに後続フレームビットがセットされているか否かを確認する（ステップＳ２１０）。
【００７０】
そしてフレーム受信部２２６は、後続フレームビットがセットされている場合（ステップＳ２１０でＹｅｓ）、スリープ待ちタイマをＴａにセットし（ステップＳ２１２）、後続フレームビットがセットされていない場合（ステップＳ２１０でＮｏ）、スリープ待ちタイマをＴｂにセットする（ステップＳ２１４）。なお、Ｔａ＞Ｔｂである。
【００７１】
続いて、フレーム受信部２２６は、後続フレームなどのフレームを受信した場合（ステップＳ２１６でＹｅｓ）、ステップＳ２１０へ戻り、後続フレームなどのフレームを受信しない場合（ステップＳ２１６でＮｏ）、スリープ待ちタイマが満了したか否かを確認する（ステップＳ２１８）。
【００７２】
そしてフレーム受信部２２６は、スリープ待ちタイマが満了していない場合（ステップＳ２１８でＮｏ）、ステップＳ２１６へ戻り、スリープ待ちタイマが満了した場合（ステップＳ２１８でＹｅｓ）、その旨を状態管理部２１８に通知する。この場合、状態管理部２１８は、バスインタフェース２１２を介してＣＰＵ２０１にＮＩＣ２１０のＮＩＣ状態がＮ１からＮ２に移行する旨の状態変更イベントを送信する（ステップＳ２２０）。そして状態管理部２１８は、クロック周波数管理部２２０にＮＩＣ２１０の動作クロック数を下げさせるとともに、電圧管理部２２２にＮＩＣ２１０への給電電圧を下げさせ、ＮＩＣ状態をＮ１からＮ２に変更する（ステップＳ２２２）。
【００７３】
図１５は、第１実施形態の通信システム１全体の動作手順の流れの一例を示すシーケンス図である。なお、図１５に示す例では、ＮＩＣがＮ１であること（ＣＰＵの場合は高速動作状態）を太線部分で示し、ＮＩＣがＮ２であること（ＣＰＵの場合は低速動作状態又はスリープ状態）を細線部分で示している。
【００７４】
まず、送信端末１０のＣＰＵ１０１は、送信対象のフレーム１、２を作成し、ＮＩＣ１１０に転送する（ステップＳ３００、ステップＳ３０２）。
【００７５】
続いて、送信端末１０のＮＩＣ１１０は、起動信号としてＮＬＰを、スイッチ３０のＮＩＣ３０７〜３０９のいずれかである受信ＮＩＣに送信する（ステップＳ３０４）。
【００７６】
続いて、スイッチ３０の受信ＮＩＣは、スイッチ３０のＣＰＵ３０１に受信ＮＩＣのＮＩＣ状態がＮ２からＮ１に移行する旨の状態変更イベントを通知するとともに（ステップＳ３０６）、送信端末１０のＮＩＣ１１０にＮＬＰを送信する（ステップＳ３０８）。
【００７７】
続いて、送信端末１０のＮＩＣ１１０は、ＣＰＵ１０１から転送されたフレーム１、２をスイッチ３０の受信ＮＩＣに送信する（ステップＳ３１０、ステップＳ３１２）。
【００７８】
続いて、スイッチ３０の受信ＮＩＣは、送信端末１０のＮＩＣ１１０から送信されたフレーム１、２をスイッチ３０のＣＰＵ３０１に転送する（ステップＳ３１４、ステップＳ３１６）。その後、スイッチ３０の受信ＮＩＣは、予め定められた一定時間フレームが受信されなければ、スイッチ３０のＣＰＵ３０１に受信ＮＩＣのＮＩＣ状態をＮ１からＮ２に移行する旨の状態変更イベントを送信する。（ステップＳ３１８）。
【００７９】
続いて、スイッチ３０のＣＰＵ３０１は、スイッチ３０の受信ＮＩＣから送信されたフレーム１、２を、スイッチ３０のＮＩＣ３０７〜３０９のいずれかである送信ＮＩＣに送信する（ステップＳ３２０、ステップＳ３２２）。
【００８０】
続いて、スイッチ３０の送信ＮＩＣは、起動信号としてＮＬＰを、受信端末２０のＮＩＣ２１０に送信する（ステップＳ３２４）。
【００８１】
続いて、受信端末２０のＮＩＣ２１０は、受信端末２０のＣＰＵ２０１にＮＩＣ２１０のＮＩＣ状態がＮ２からＮ１に移行する旨の状態変更イベントを通知するとともに（ステップＳ３２６）、スイッチ３０の送信ＮＩＣにＮＬＰを送信する（ステップＳ３２８）。
【００８２】
続いて、スイッチ３０の送信ＮＩＣは、ＣＰＵ３０１から転送されたフレーム１、２を受信端末２０のＮＩＣ２１０に送信する（ステップＳ３３０、ステップＳ３３２）。
【００８３】
続いて、受信端末２０のＮＩＣ２１０は、スイッチ３０の送信ＮＩＣから送信されたフレーム１、２を受信端末２０のＣＰＵ２０１に転送する（ステップＳ３３４、ステップＳ３３６）。その後、受信端末２０のＮＩＣ２１０は、予め定められた一定時間フレームが受信されなければ、受信端末２０のＣＰＵ２０１にＮＩＣ２１０のＮＩＣ状態をＮ２からＮ１に移行する旨の状態変更イベントを送信する（ステップＳ３３８）。
【００８４】
以上のように第１実施形態によれば、ＮＩＣは、フレーム送受信の有無に応じて、ＮＩＣ状態をアクティブ状態（Ｎ１）又はＬＰＩ状態（Ｎ２）に変更するため、通信に関わる部分の消費電力を削減することができる。特に、ＮＩＣ状態の変更が状態変更イベントとしてＣＰＵに通知されるため、ＣＰＵによる省電ステートの制御を正確に行うこともできる。
【００８５】
また第１実施形態によれば、ＮＩＣにより受信されたフレームはＤＭＡ転送されるため、ＣＰＵが低速動作状態から高速動作状態への移行中であっても、受信されたフレームを確実に転送することができる。
【００８６】
また第１実施形態によれば、ＮＩＣ状態がＮ２の場合に、一定間隔でのＮＬＰの送受信が行われないため、ＮＩＣ状態がＮ２の場合の消費電力を一層削減することができる。
【００８７】
また第１実施形態によれば、ＮＩＣ状態がＮ２からＮ１に変更される場合に受信されるフレームのプリアンブルを用いることで、一定間隔でのＮＬＰの送受信を行わなくてもウォーミングアップを行うことができる。同様に起動信号の応答にノードＩＤ及び起動ＩＤが付与されるため、一定間隔でのＮＬＰの送受信を行わなくても、受信ノードの入れ替わりやリブートを検出することができる。
【００８８】
（第２実施形態）
第１実施形態では、フレームのプリアンブルを用いて受信ノードのＮＩＣ（ＮＩＣの回路）のウォーミングアップを行う例について説明した。しかしながら、例えば１００Ｍｂｐｓや１Ｇｂｐｓのように通信速度が高速になると、プリアンブルでウォーミングアップを行うことが難しくなる。これは、例えば、１０００Ｂａｓｅ−Ｔのようにツイストペアケーブル（信号線対を複数束ねたケーブル）にて電気信号を通すことで高速な情報を送る際には、ケーブル内の隣接信号線対から電磁的な影響を受けるため信号波形の乱れが高速通信になるほど大きくなる。また、自身の信号線対の送信信号が反射したエコーが受信信号に重なり合うことでも受信信号の波形の乱れも大きくなるためである。さらに、プリアンブル長を伸ばすと有効なデータを運ぶための効率を低下させるためである。このため、第２実施形態では、起動信号を用いて受信ノードのＮＩＣ（ＮＩＣの回路）のウォーミングアップを行う例などについて説明する。なお以下では、第１実施形態との相違点の説明を主に行い、第１実施形態と同様の機能を有する構成要素については、第１実施形態と同様の名称・符号を付し、その説明を省略する。
【００８９】
ここで、第２実施形態では、起動信号としてＮＬＰではなく、ＦＬＰ（Fast  Link  Pulse）を用いるものとする。
【００９０】
図１６は、ＦＬＰのフォーマットの一例を示す図であり、図１７は、ＦＬＰの情報用パルスの説明図である。図１６に示すように、ＦＬＰは３３個のパルス列で構成されており、奇数番目のパルスは同期用パルスとなっており、偶数番目の１６個のパルスが情報用のパルスとなっている。
【００９１】
例えば、図１７に示すように、Ａ０〜Ａ７は、通信方式を定めるビットとなっており、送信ノードは、通信したい通信方式を示すビットをセットして受信ノードに送信する。この際、送信ノードは、受信ノードの通信部のウォーミングアップのために、ＦＬＰを２つ以上連続して送信することが望ましい。
【００９２】
そして送信ノードは、受信ノードから、ＡＣＫに１が設定され、かつ、送信した通信したい通信方式に対応する位置に１が設定されたＦＬＰを受信すると、フレームを送信する。なお、送信ノードにより受信されるＦＬＰには、第１実施形態同様、ノードＩＤ及び起動ＩＤの少なくともいずれかが付与されていることが好ましい。これにより、送信ノードは、受信ノードの入れ替わりやリブートを検出できる。
【００９３】
図１８は、第２実施形態の送信端末のＮＩＣ１１１０の構成の一例を示すブロック図である。図１８に示すように、第２実施形態では、ＮＩＣ１１１０が休止信号送信部１１３０を備え、状態管理部１１１８及び起動信号送信部１１２４の処理内容が第１実施形態と相違する。
【００９４】
状態管理部１１１８は、一定時間、送信フレームバッファ１１４にフレームが格納されていないと、バスインタフェース１１２を介してＣＰＵ１０１にＮＩＣ１１００のＮＩＣ状態がＮ１からＮ２に移行する旨の状態変更イベントを送信する。そして状態管理部１１１８は、クロック周波数管理部１２０にＮＩＣ１１００のクロック周波数を下げさせるとともに、電圧管理部１２２にＮＩＣ１１００への給電電圧を下げさせるように指示する。更に、状態管理部１１１８は、休止信号送信部１１３０に休止信号の送信を指示する。
【００９５】
休止信号送信部１１３０は、状態管理部１１１８からの指示を受け、休止信号としてＦＬＰを、物理層処理部１１６を介して送信する。休止信号送信部１１３０は、例えば、Ａ０〜Ａ５の全ビットを０にセットしたＦＬＰを休止信号としてもよいし、Ａ７ビットを１にセットしたＦＬＰを休止信号としてもよい（図１７参照）。なお、休止信号送信部１１３０は、休止信号を２回以上繰り返して送信してもよい。例えば、休止信号は、送信ノードがスリープ状態に移行する場合にも送信することが望ましい。また例えば、送信ノードがクライアント端末である場合には、サーバにリクエストを送信するアプリケーション、例えばブラウザプログラムが終了した際に、送信休止信号を送信するようにすることもできる。
【００９６】
起動信号送信部１１２４は、状態管理部１１１８からの指示を受け、起動信号としてＦＬＰを、物理層処理部１１６を介して送信する。なお、起動信号送信部１１２４は、送信を再開する際に上述したようなＦＬＰを送信するが、この際、ＦＬＰにて通知する通信方式を、送信休止前と異なる方式にしてもよい。また起動信号送信部１１２４は、このＦＬＰを用いて通信中に通信速度を変更することも可能である。送信ノードあるいは受信ノードのバッテリの残量に応じて、最も高速な通信測や、最も電力効率の良い通信速度に変更することが好ましい。なお、この通信速度の変更は、送信ノードの送信するフレーム量に応じて変更することも可能である。例えば、送信フレーム量を一定時間毎に計測するあるいは送信フレームバッファ内のフレーム数を計測し、これに応じて通信速度を変更することが好ましい。
【００９７】
図１９は、第２実施形態の受信端末のＮＩＣ１２１０の構成の一例を示すブロック図である。図１９に示すように、第２実施形態では、ＮＩＣ１２１０が休止信号受信部１２３４を備え、状態管理部１２１８及び起動信号受信部１２１６の処理内容が第１実施形態と相違する。
【００９８】
休止信号受信部１２３４は、送信ノードから休止信号として送信されたＦＬＰを、物理層処理部２１４を介して受信し、状態管理部１２１８に休止信号受信イベントを通知する。
【００９９】
状態管理部１２１８は、休止信号受信部１２３４から休止信号受信イベントが通知されると、受信フレームバッファ２３０に格納されているフレームがなくなるまで待機する。そして状態管理部１２１８は、フレームがなくなると、クロック周波数管理部２２０にＮＩＣ１２１０のクロック周波数を上げさせるとともに、電圧管理部２２２にＮＩＣ１２１０への給電電圧を上げさせるように指示する。これにより、状態管理部１２１８は、ＮＩＣ１２１０のＮＩＣ状態をＮ１からＮ２に変更する。更に状態管理部１２１８は、バスインタフェース２１２を介してＣＰＵ２０１にＮＩＣ１２１０のＮＩＣ状態がＮ１からＮ２に移行した旨の状態変更イベントを送信する。
【０１００】
起動信号受信部１２１６は、送信ノードから起動信号として送信されたＦＬＰを、物理層処理部２１４を介して受信し、状態管理部１２１８に起動信号受信イベントを通知する。
【０１０１】
以上のように第２実施形態によれば、通信速度が高速であっても、ＮＩＣ状態がＮ２からＮ１に変更される場合に受信される起動信号を用いることで、ウォーミングアップを行うことができる。
（変形例）
【０１０２】
上記第１実施形態では、ＮＬＰを起動信号として用いる例について説明したが、これに限定されるものではなく、ＮＬＰ以外の信号を起動信号として用いるようにしてもよい。
【０１０３】
また上記第１実施形態では、イーサネット（登録商標）を例に取り説明したが、イーサネット（登録商標）以外であっても、フレームのプリアンブル信号を用いてＮＩＣのウォーミングアップを行なう通信方式に適用することが可能である。例えば、光を用いた通信方式にも適用できる。
【０１０４】
また上記各実施形態では、メモリ及びＣＰＵ内のレジスタには、ＤＲＡＭやＳＲＡＭのような給電を止めると記憶した内容を失う揮発性メモリではなく、ＭＲＡＭのような給電を止めても記憶内容を失わない不揮発メモリを用いることが好ましい。これにより、ＮＩＣがＮ２の間はＣＰＵやメモリの給電を止めることができ、ＣＰＵやＭＲＡＭの読み出し回路や買い込み回路のリーク電力による消費電力も削減することができる。
【０１０５】
また上記各実施形態において、スイッチには３つ以上のノードあるいは他のスイッチが接続されていてもよい。
【０１０６】
以上のように上記各実施形態によれば、通信に関わる部分の消費電力を削減することができる。
【０１０７】
なお、本発明は、上記実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施の形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施の形態にわたる構成要素を適宜組み合わせても良い。
【符号の説明】
【０１０８】
１  通信システム
１０  送信端末
２０  受信端末
３０  スイッチ
１０１、２０１、３０１  ＣＰＵ
１０２、２０２、３０２  メモリ
１０３、２０３、３０３  割込みコントローラ
１０４、２０４、３０４  バス
１０５、２０５、３０５  ブリッジ
１１０、２１０、３０７〜３０９、１１１０、１２１０  ＮＩＣ
３０６  ＦＩＢ
１１２、２１２  バスインタフェース
１１４  送信フレームバッファ
１１６、２１４  物理層処理部
１１８、２１８、１１１８、１２１８  状態管理部
１２０、２２０  クロック周波数管理部
１２２、２２２  電圧管理部
１２４、１１２４  起動信号送信部
１２６  フレーム送信部
１２８、２２４  ＮＬＰ制御部
２１６、１２１６  起動信号受信部
２２６  フレーム受信部
２２８  フレームフィルタ部
２３０  受信フレームバッファ
２３２  ＤＭＡコントローラ
１１３０  休止信号送信部
１２３４  休止信号受信部
【図１】
0005221617.tif 000002
【図２】
0005221617.tif 000003
【図３】
0005221617.tif 000004
【図４】
0005221617.tif 000005
【図５】
0005221617.tif 000006
【図６】
0005221617.tif 000007
【図７】
0005221617.tif 000008
【図８】
0005221617.tif 000009
【図９】
0005221617.tif 000010
【図１０】
0005221617.tif 000011
【図１１】
0005221617.tif 000012
【図１２】
0005221617.tif 000013
【図１３】
0005221617.tif 000014
【図１４】
0005221617.tif 000015
【図１５】
0005221617.tif 000016
【図１６】
0005221617.tif 000017
【図１７】
0005221617.tif 000018
【図１８】
0005221617.tif 000019
【図１９】
0005221617.tif 000020