(57)【特許請求の範囲】
【請求項１】
第１のパケットを通信装置に繰り返し送信する第１の装置と、第２のパケットを前記通信装置に繰り返し送信する第２の装置と、に接続される前記通信装置であって、
前記第１の装置から前記第１のパケットを受信し、前記第２の装置から前記第２のパケットを受信する受信制御部と、
Ｍ−１番目（前記Ｍは２以上の整数）の第１のパケットの受信に基づいて得られる特定の情報を利用して、前記第１の装置がＭ＋Ｋ番目（前記Ｋは０以上の整数）の第１のパケットを前記通信装置に送信するための第１の送信タイミングを取得する取得部と、
前記Ｍ＋Ｋ番目の第１のパケットの前記第１の送信タイミングと略等しい第２の送信タイミングで、Ｎ番目（前記Ｎは２以上の整数）の第２のパケットを、前記第２の装置から前記通信装置に送信させるための指示を、前記第２の装置に送信する送信制御部と、
を備え、
前記受信制御部は、
前記第１の装置が前記Ｍ＋Ｋ番目の第１のパケットを前記通信装置に送信すべき予定の送信タイミングである第１の予定タイミングに関係する第１の関係情報を含む前記Ｍ−１番目の第１のパケットを、前記第１の装置から受信し、
前記第２の装置が前記Ｎ番目の第２のパケットを前記通信装置に送信すべき予定の送信タイミングである第２の予定タイミングに関係する第２の関係情報を含むＮ−Ｌ番目（前記Ｌは１以上、かつ、Ｎ未満の整数）の第２のパケットを、前記第２の装置から受信し、
前記特定の情報は、前記Ｍ−１番目の第１のパケットに含まれる前記第１の関係情報を含み、
前記送信制御部は、
前記Ｎ−Ｌ番目の第２のパケットに含まれる前記第２の関係情報から得られる前記第２の予定タイミングに関わらず、前記第２の送信タイミングで、前記Ｎ番目の第２のパケットを、前記第２の装置から前記通信装置に送信させるための前記指示を、前記Ｎ−Ｌ番目の第２のパケットの応答として、前記第２の装置に送信し、
前記Ｎ−Ｌ番目の第２のパケットの送信タイミングと前記第２の送信タイミングとの間の間隔は、前記Ｎ−Ｌ番目の第２のパケットの送信タイミングと前記第２の予定タイミングとの間の間隔よりも短く、
前記受信制御部は、さらに、
前記第１の装置がＭ＋Ｉ番目（前記ＩはＫより大きい整数）の第１のパケットを前記通信装置に送信すべき予定の送信タイミングである第３の予定タイミングに関係する第３の関係情報を含む前記Ｍ＋Ｋ番目の第１のパケットを、前記第１の装置から受信し、
前記第２の装置がＮ＋Ｊ番目（前記Ｊは１以上の整数）の第２のパケットを前記通信装置に送信すべき予定の送信タイミングである第４の予定タイミングに関係する第４の関係情報を含む前記Ｎ番目の第２のパケットを、前記第２の装置から受信し、
前記第３の予定タイミングは、前記Ｍ−１番目の第１のパケットの送信タイミングと前記第１の送信タイミングとの間の間隔と、前記第１の送信タイミングと前記第３の予定タイミングとの間の間隔と、が等しくなるように、設定されており、
前記第４の予定タイミングは、前記Ｎ−Ｌ番目の第２のパケットの送信タイミングと前記第２の送信タイミングとの間の間隔と、前記第２の送信タイミングと前記第４の予定タイミングとの間の間隔と、が等しくなるように、設定されており、
前記取得部は、さらに、前記Ｍ＋Ｋ番目の第１のパケットに含まれる前記第３の関係情報を利用して、前記第１の装置が前記Ｍ＋Ｉ番目の第１のパケットを前記通信装置に送信するための第３の送信タイミングであって、前記第３の予定タイミングに一致する前記第３の送信タイミングを取得し、
前記送信制御部は、さらに、
前記第３の送信タイミングで、前記Ｍ＋Ｉ番目の第１のパケットを、前記第１の装置から前記通信装置に送信させるための指示を、前記Ｍ＋Ｋ番目の第１のパケットの応答として、前記第１の装置に送信し、
前記Ｎ番目の第２のパケットに含まれる前記第４の関係情報から得られる前記第４の予定タイミングに関わらず、前記第３の送信タイミングと略等しい第４の送信タイミングで、前記Ｎ＋Ｊ番目の第２のパケットを、前記第２の装置から前記通信装置に送信させるための指示を、前記Ｎ番目の第２のパケットの応答として、前記第２の装置に送信し、
前記第２の送信タイミングと前記第４の送信タイミングとの間の間隔は、前記第２の送信タイミングと前記第４の予定タイミングとの間の間隔よりも長い、通信装置。
【請求項２】
前記送信制御部は、前記Ｍ−１番目の第１のパケットが受信された後であって、前記Ｍ＋Ｋ番目の第１のパケットが受信される前に、前記第２の装置から前記Ｎ−Ｌ番目の前記第２のパケットが受信される場合に、前記第２の送信タイミングで、前記Ｎ番目の第２のパケットを、前記第２の装置から前記通信装置に送信させるための前記指示を、前記Ｎ−Ｌ番目の第２のパケットの応答として、前記第２の装置に送信する、請求項１に記載の通信装置。
【請求項３】
Ｋ＝０である、請求項１又は２に記載の通信装置。
【請求項４】
Ｌ＝１である、請求項１から３のいずれか一項に記載の通信装置。
【請求項５】
消費電力が比較的に高い高消費状態と、消費電力が比較的に低い低消費状態と、の間で移行可能であるプロセッサを備え、
前記プロセッサは、前記受信制御部と、前記取得部と、前記送信制御部と、移行制御部と、を備え、
前記移行制御部は、前記プロセッサを前記高消費状態と前記低消費状態との間で移行させ、
前記プロセッサが前記低消費状態である間に、前記第１のパケットが受信される場合に、
前記移行制御部は、前記プロセッサを前記低消費状態から前記高消費状態に移行させ、
前記送信制御部は、前記プロセッサが前記高消費状態である間に、当該第１のパケットの応答として、第１の応答パケットを送信し、
前記プロセッサが前記低消費状態である間に、前記第２のパケットが受信される場合に、
前記移行制御部は、前記プロセッサを前記低消費状態から前記高消費状態に移行させ、
前記送信制御部は、前記プロセッサが前記高消費状態である間に、当該第２のパケットの応答として、第２の応答パケットを送信し、
前記第２の応答パケットは、前記第２の装置が、前記第２の応答パケットの受信後に、前記第２の送信タイミングで、第２のパケットを前記通信装置に送信するための前記指示を含む、請求項１から４のいずれか一項に記載の通信装置。
【請求項６】
第１のパケットを前記通信装置に繰り返し送信する第１の装置と、第２のパケットを前記通信装置に繰り返し送信する第２の装置と、に接続される通信装置のためのコンピュータプログラムであって、
前記通信装置に搭載されるコンピュータに、
前記第１の装置から前記第１のパケットを受信し、前記第２の装置から前記第２のパケットを受信する受信制御処理と、
Ｍ−１番目（前記Ｍは２以上の整数）の第１のパケットの受信に基づいて得られる特定の情報を利用して、前記第１の装置がＭ＋Ｋ番目（前記Ｋは０以上の整数）の第１のパケットを前記通信装置に送信するための第１の送信タイミングを取得する取得処理と、
前記Ｍ＋Ｋ番目の第１のパケットの前記第１の送信タイミングと略等しい第２の送信タイミングで、Ｎ番目（前記Ｎは１以上の整数）の第２のパケットを、前記第２の装置から前記通信装置に送信させるための指示を、前記第２の装置に送信する送信制御処理と、
を実行させ、
前記受信制御処理は、
前記第１の装置が前記Ｍ＋Ｋ番目の第１のパケットを前記通信装置に送信すべき予定の送信タイミングである第１の予定タイミングに関係する第１の関係情報を含む前記Ｍ−１番目の第１のパケットを、前記第１の装置から受信し、
前記第２の装置が前記Ｎ番目の第２のパケットを前記通信装置に送信すべき予定の送信タイミングである第２の予定タイミングに関係する第２の関係情報を含むＮ−Ｌ番目（前記Ｌは１以上、かつ、Ｎ未満の整数）の第２のパケットを、前記第２の装置から受信し、
前記特定の情報は、前記Ｍ−１番目の第１のパケットに含まれる前記第１の関係情報を含み、
前記送信制御処理は、
前記Ｎ−Ｌ番目の第２のパケットに含まれる前記第２の関係情報から得られる前記第２の予定タイミングに関わらず、前記第２の送信タイミングで、前記Ｎ番目の第２のパケットを、前記第２の装置から前記通信装置に送信させるための前記指示を、前記Ｎ−Ｌ番目の第２のパケットの応答として、前記第２の装置に送信し、
前記Ｎ−Ｌ番目の第２のパケットの送信タイミングと前記第２の送信タイミングとの間の間隔は、前記Ｎ−Ｌ番目の第２のパケットの送信タイミングと前記第２の予定タイミングとの間の間隔よりも短く、
前記受信制御処理は、さらに、
前記第１の装置がＭ＋Ｉ番目（前記ＩはＫより大きい整数）の第１のパケットを前記通信装置に送信すべき予定の送信タイミングである第３の予定タイミングに関係する第３の関係情報を含む前記Ｍ＋Ｋ番目の第１のパケットを、前記第１の装置から受信し、
前記第２の装置がＮ＋Ｊ番目（前記Ｊは１以上の整数）の第２のパケットを前記通信装置に送信すべき予定の送信タイミングである第４の予定タイミングに関係する第４の関係情報を含む前記Ｎ番目の第２のパケットを、前記第２の装置から受信し、
前記第３の予定タイミングは、前記Ｍ−１番目の第１のパケットの送信タイミングと前記第１の送信タイミングとの間の間隔と、前記第１の送信タイミングと前記第３の予定タイミングとの間の間隔と、が等しくなるように、設定されており、
前記第４の予定タイミングは、前記Ｎ−Ｌ番目の第２のパケットの送信タイミングと前記第２の送信タイミングとの間の間隔と、前記第２の送信タイミングと前記第４の予定タイミングとの間の間隔と、が等しくなるように、設定されており、
前記取得処理は、さらに、前記Ｍ＋Ｋ番目の第１のパケットに含まれる前記第３の関係情報を利用して、前記第１の装置が前記Ｍ＋Ｉ番目の第１のパケットを前記通信装置に送信するための第３の送信タイミングであって、前記第３の予定タイミングに一致する前記第３の送信タイミングを取得し、
前記送信制御処理は、さらに、
前記第３の送信タイミングで、前記Ｍ＋Ｉ番目の第１のパケットを、前記第１の装置から前記通信装置に送信させるための指示を、前記Ｍ＋Ｋ番目の第１のパケットの応答として、前記第１の装置に送信し、
前記Ｎ番目の第２のパケットに含まれる前記第４の関係情報から得られる前記第４の予定タイミングに関わらず、前記第３の送信タイミングと略等しい第４の送信タイミングで、前記Ｎ＋Ｊ番目の第２のパケットを、前記第２の装置から前記通信装置に送信させるための指示を、前記Ｎ番目の第２のパケットの応答として、前記第２の装置に送信し、
前記第２の送信タイミングと前記第４の送信タイミングとの間の間隔は、前記第２の送信タイミングと前記第４の予定タイミングとの間の間隔よりも長い、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書では、外部装置から繰り返し送信されるパケットを、繰り返し受信する通信装置を開示する。
【背景技術】
【０００２】
特許文献１には、クライアントコンピュータに接続されるＭＦＰ（多機能周辺装置）が開示されている。ＭＦＰは、クライアントコンピュータからイベント記述子列が受信されると、イベント記述子列に対する応答として、成功メッセージ又はエラーメッセージを、クライアントコンピュータに送信する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−１５４８２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記の特許文献１の技術では、例えば、ＭＦＰが、複数個のクライアントコンピュータのそれぞれから、イベント記述子列を繰り返し受信する状況では、イベント記述子列の受信タイミングにばらつきが生じる可能性がある。この場合、ＭＦＰは、効率的な処理を実行することができない可能性がある。
【０００５】
本明細書では、複数個の装置のそれぞれからパケットが繰り返し受信される状況において、複数個の装置間の要求パケットの受信タイミングを略等しくし得る技術を提供する。
【課題を解決するための手段】
【０００６】
本明細書によって開示される技術は、第１の装置と第２の装置とに接続される通信装置である。第１の装置は、第１のパケットを通信装置に繰り返し送信する。第２の装置は、第２のパケットを通信装置に繰り返し送信する。通信装置は、受信制御部と取得部と送信制御部とを備える。受信制御部は、第１の装置から第１のパケットを受信し、第２の装置から第２のパケットを受信する。取得部は、Ｍ−１番目（Ｍは２以上の整数）の第１のパケットの受信に基づいて得られる特定の情報を利用して、第１の装置がＭ＋Ｋ番目（Ｋは０以上の整数）の第１のパケットを通信装置に送信するための第１の送信タイミングを取得する。送信制御部は、Ｍ＋Ｋ番目の第１のパケットの第１の送信タイミングと略等しい第２の送信タイミングで、Ｎ番目（Ｎは１以上の整数）の第２のパケットを、第２の通信装置から通信装置に送信させるための指示を、第２の装置に送信する。
【０００７】
上記の通信装置は、第１の装置がＭ＋Ｋ番目の第１のパケットを通信装置に送信するための第１の送信タイミングを取得し、当該第１の送信タイミングと略等しい第２の送信タイミングで、Ｎ番目の第２のパケットを通信装置に送信するための指示を、第２の装置に送信する。従って、第１の装置がＭ＋Ｋ番目の第１のパケットを通信装置に送信するタイミングと、第２の装置がＮ番目の第２のパケットを通信装置に送信するタイミングと、を略等しくさせ得る。このために、通信装置は、第１の装置から送信されるＭ＋Ｋ番目の第１のパケットと、第２の装置から送信されるＮ番目の第２のパケットと、を略等しいタイミングで受信し得る。
【０００８】
なお、上記の通信装置を実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムが記憶された記憶媒体も、新規で有用である。また、上記の通信装置と上記の第１及び第２の装置とを含むシステムも新規で有用である。
【図面の簡単な説明】
【０００９】
【図１】ネットワークシステムの構成を示す。
【図２】応答処理のフローチャートを示す。
【図３】各装置の動作を表わすシーケンス図を示す。
【発明を実施するための形態】
【００１０】
図１に示すように、ネットワークシステム２は、ＰＣ１００，２００と、多機能機（即ちＰＣ１００，２００の周辺機器）１０と、を備える。各装置１０，１００，２００は、ＬＡＮ４を介して、相互に通信可能である。
【００１１】
（多機能機１０の構成）
図１に示すように、多機能機１０は、ＡＳＩＣ（Application Specific Integrated Circuit）１２、フラッシュメモリ７０、ＳＤＲＡＭ８０、ネットワークインターフェイス９０、表示パネル９２、及び、読取部９４を備える。
【００１２】
ＡＳＩＣ１２は、メインＣＰＵ２０、メイン用クロック回路３０、サブＣＰＵ４０、サブ用クロック回路５０、ＳＲＡＭ６０、ＳＤＲＡＭ制御回路６４、及び、ＭＡＣコントローラ６６を備える。
【００１３】
メインＣＰＵ２０は、ＳＤＲＡＭ８０に記憶されているプログラム８２に従って様々な処理を実行する。これにより、受信制御部２２と送信制御部２４と取得部２６との各機能が実現される。メイン用クロック回路３０は、メインＣＰＵ２０にクロック信号を供給する。メイン用クロック回路３０からメインＣＰＵ２０にクロック信号が供給されている間は、メインＣＰＵ２０は非スリープ状態である。メインＣＰＵ２０にクロック信号が供給されていない間は、メインＣＰＵ２０はスリープ状態である。メインＣＰＵ２０のスリープ状態は、メインＣＰＵ２０の非スリープ状態と比較して、消費電力が低い状態である。メイン用クロック回路３０は、サブＣＰＵ４０によって制御される。即ち、サブＣＰＵ４０によって、メインＣＰＵ２０へのクロック信号の供給及び停止が制御される。
【００１４】
サブＣＰＵ４０は、ＳＲＡＭ６０に記憶されているプログラム６２に従って様々な処理を実行する。これにより、受信制御部４２と移行制御部４８との各機能が実現される。サブ用クロック回路５０は、サブＣＰＵ４０にクロック信号を供給する。サブ用クロック回路５０のクロック信号の周波数は、メイン用クロック回路３０のクロック信号の周波数よりも低い。従って、メインＣＰＵ２０を駆動するための消費電力と比べて、サブＣＰＵ４０を駆動するための消費電力は低い。なお、メインＣＰＵ２０の処理速度は、サブＣＰＵ４０の処理速度よりも速い。サブ用クロック回路５０は、多機能機１０の電源がＯＮにされるとサブＣＰＵ４０にクロック信号を供給し、多機能機１０の電源がＯＦＦにされるとクロック信号を停止する。即ち、サブＣＰＵ４０は、多機能機１０の電源がＯＮされている間、クロック信号が供給されている状態（非スリープ状態）で維持される。変形例では、サブＣＰＵ４０は、メインＣＰＵ２０が非スリープ状態である間、スリープ状態であってもよい。即ち、サブ用クロック回路５０は、メインＣＰＵ２０が非スリープ状態である間、サブＣＰＵ４０へのクロック信号を停止してもよい。
【００１５】
ＳＲＡＭ６０は、各ＣＰＵ２０，４０からアクセス可能である。多機能機１０の電源がＯＮされると、メインＣＰＵ２０は、フラッシュメモリ７０内の圧縮されたプログラム７２を展開して、展開済みのプログラム６２をＳＲＡＭ６０に記憶する。
【００１６】
ＳＤＲＡＭ制御回路６４は、サブＣＰＵ４０からの指示に従って、ＳＤＲＡＭ８０に対するクロック信号の供給の開始又は停止をして、消費電力が比較的に高い通常動作モードと、消費電力が比較的に低いセルフリフレッシュモードと、の間でＳＤＲＡＭ８０の状態を移行させる。
【００１７】
ＭＡＣコントローラ６６は、ネットワークインターフェイス９０に接続されている。ＭＡＣコントローラ６６は、ＬＡＮ４を介して、ネットワークインターフェイス９０でパケットが受信されると、メインＣＰＵ２０又はサブＣＰＵ４０の割込コントローラ（図示省略）にパケット割込要求信号を供給する。
【００１８】
フラッシュメモリ７０は、ＡＳＩＣ１２の外部に設けられている。フラッシュメモリ７０は、各ＣＰＵ２０，４０からアクセス可能である。フラッシュメモリ７０は、各ＣＰＵ２０，４０によって実行されるプログラム６２，８２が圧縮された状態のプログラム７２を記憶している。
【００１９】
ＳＤＲＡＭ８０は、メインＣＰＵ２０からアクセス可能である。ＳＤＲＡＭ８０は、ＳＲＡＭ６０よりもメモリの総容量が大きく、各ＣＰＵ２０，４０がアクセス（読み出し、書き込み）可能な速度が高速である。このため、ＳＤＲＡＭ８０の消費電力は、ＳＲＡＭ６０の消費電力と比べて高い。ＳＤＲＡＭ８０は、ＳＤＲＡＭ制御回路６４によって制御され、通常動作モードとセルフリフレッシュモードとの間で状態が移行する。
【００２０】
ＳＤＲＡＭ８０は、さらに、外部のデバイス（例えばＰＣ１００，２００）のデバイス情報（例えばＭＡＣアドレス）を登録するための登録テーブル（図示省略）を記憶している。メインＣＰＵ２０は、外部のデバイスから登録要求パケットを受信すると、登録要求パケットに含まれるデバイス情報を、登録テーブルに登録する。多機能機１０は、ＳＤＲＡＭ８０の登録テーブルに登録されているデバイス（例えばＰＣ１００，２００）からの印刷指示を受信すると、印刷指示に従った印刷処理を実行する。なお、印刷指示は、ＸＭＬ（Extensible Markup Language）で記述される。
【００２１】
また、ＳＤＲＡＭ８０は、パケット情報８４を記憶することができる。パケット情報８４とは、外部のデバイス（例えばＰＣ１００）のＭＡＣアドレスと、登録指示パケットの受信時刻と、当該デバイスが当該登録指示パケットを送信してから次に登録指示パケットを送信するまでの待機間隔と、が対応付けられた情報（図３参照）である。
【００２２】
表示パネル９２は、メインＣＰＵ２０からの指示に従って、情報を表示する。表示パネル９２には、ユーザからの操作を受け付けるためのタッチボタンが配置される。ユーザは、予め決められたスキャン指示操作を、タッチボタンに実行することができる。メインＣＰＵ２０は、スキャン指示操作が受け付けられると、スキャン処理を実行させるための指示を読取部９４に供給する。読取部９４は、ＣＣＤ方式の画像読取機構を備える。読取部９４は、メインＣＰＵ２０からのスキャン指示に従って、読取部９４にセットされた原稿を読み取り、読み取った原稿の画像を示す画像データを生成するスキャン処理を実行する。なお、ユーザは、ＳＤＲＡＭ８０の登録テーブルに登録されているデバイスの中から、生成された画像データの送信先のデバイスを選択することができる。メインＣＰＵ２０は、表示パネル９２等からユーザの操作（デバイスの選択操作）を受け付ける場合、ＳＤＲＡＭ８０の登録テーブルに登録されているデバイスに対して、生成された画像データを送信することができる。また、多機能機１０は、インクジェット方式又はレーザ方式の画像形成機構（図示省略）を備え、メインＣＰＵ２０からの指示に従って、外部のデバイス（例えばＰＣ１００，２００）から受信される印刷データによって表わされる画像を、印刷用紙に印刷することができる。
【００２３】
なお、ＳＤＲＡＭ８０の登録テーブルに記憶されるデバイス情報は、外部のデバイスを特定することが可能なＩＤ情報（例えばデバイス名）であってもよい。また、ＳＤＲＡＭ８０の登録テーブルには、外部のデバイスのＩＰアドレスと外部のデバイスの宛先ポート番号とによって表される外部のデバイスのアドレス情報が、ＩＤ情報と対応付けて記憶されていてもよい。メインＣＰＵ２０は、ＳＤＲＡＭ８０の登録テーブルに登録されているＩＤ情報を、表示パネル９２に表示させることによって、ユーザに、画像データの送信先のデバイスを選択させてもよい。メインＣＰＵ２０は、ユーザによって選択されたＩＤ情報に対応するアドレス情報を用いて、画像データを送信してもよい。さらに、ＳＤＲＡＭ８０に記憶されるパケット情報８４として、上記のＩＤ情報に、登録指示パケットの受信時刻と、ＩＤ情報によって特定されるデバイスが当該登録指示パケットを送信してから次に登録指示パケットを送信するまでの待機間隔と、が対応付けて記憶されていてもよい。
【００２４】
（多機能機１０の状態移行）
多機能機１０の状態は、レディ状態とスリープ状態との間で移行する。多機能機１０の電源がＯＮされると、多機能機１０は、レディ状態となる。
【００２５】
（レディ状態）
多機能機１０がレディ状態である場合、２個のＣＰＵ２０，４０は非スリープ状態（２個のクロック回路３０，５０からそれぞれクロック信号が供給されている状態）であり、２個のＲＡＭ６０，８０は通常動作モードである。この状態では、メインＣＰＵ２０は、通常の処理を実行することができる。上記の通常の処理は、印刷指示に従った印刷処理、スキャン指示に従ったスキャン処理、ユーザの表示パネル９２への操作に従った表示処理等を含む。なお、メインＣＰＵ２０は、多機能機１０がレディ状態である場合、ＳＤＲＡＭ８０に、レディ状態を示す状態変数を記憶させる。
【００２６】
（スリープ状態）
多機能機１０は、サブＣＰＵ４０が後述する図２のＳ１６等の処理を実行することによって、レディ状態からスリープ状態に移行する。多機能機１０がスリープ状態である場合、メインＣＰＵ２０はスリープ状態であり（メイン用クロック回路３０からのクロック信号が停止されている状態、サブＣＰＵ４０は非スリープ状態であり（サブ用クロック回路５０からのクロック信号が供給されている状態）、ＳＲＡＭ６０は通常動作モードであり、ＳＤＲＡＭ８０はセルフリフレッシュモードである。多機能機１０がスリープ状態であって、メインＣＰＵ２０が上記の通常の処理（印刷処理、スキャン処理、表示処理等）を実行すべき場合には、多機能機１０は、レディ状態に移行する。
【００２７】
なお、メインＣＰＵ２０は、多機能機１０がレディ状態からスリープ状態に移行される際に、ＳＤＲＡＭ８０内の状態変数を、ＳＲＡＭ６０に移動させる。サブＣＰＵ４０は、多機能機１０がスリープ状態に移行されると、ＳＲＡＭ６０内の状態変数を、スリープ状態を示す状態変数に変更する。さらに、サブＣＰＵ４０は、多機能機１０がスリープ状態からレディ状態に移行される際に、ＳＲＡＭ６０内の状態変数を、ＳＤＲＡＭ８０に移動させる。メインＣＰＵ２０は、多機能機１０がレディ状態に移行されると、ＳＤＲＡＭ８０内の状態変数を、レディ状態を示す状態変数に変更する。
【００２８】
（ＰＣ１００の構成）
ＰＣ１００には、ＸＭＬで記述されるデータを利用して、外部のデバイス（例えば多機能機１０）に機能実行指示を送信するためのプログラムがインストールされている。ＰＣ１００は、ユーザによる印刷指示操作を受け付けると、印刷指示操作に従って、外部のデバイスに印刷指示を送信することができる。
【００２９】
（ＰＣ１００の多機能機１０への登録処理）
ＰＣ１００は、ユーザによって予め決められた操作が実行されると、多機能機１０に登録要求パケットを送信する。登録要求パケットは、ＰＣ１００のデバイス情報（例えばＰＣ１００のＭＡＣアドレス）と、期間指示情報と、デバイス情報の登録を指示するコマンドと、を含む。期間指示情報は、ＰＣ１００のデバイス情報を、多機能機１０の登録テーブルに保持させる期間（例えば１時間）を示す。
【００３０】
多機能機１０は、登録要求パケットが受信されると、登録要求パケットに含まれるＰＣ１００のデバイス情報を、登録テーブルに登録する。多機能機１０は、さらに、ＰＣ１００のデバイス情報を登録テーブルから消去するための保持終了時刻を、当該デバイス情報に対応付けて、デバイス登録テーブルに登録する。保持終了時刻は、次のようにして決定される。
【００３１】
多機能機１０は、通常、外部デバイス（例えばＰＣ１００）から受信された登録要求パケットに含まれる期間指示情報によって示される期間（例えば１時間）を、当該外部デバイスのデバイス情報を登録テーブルに保持させる保持期間として決定する。ただし、詳しくは後述するが、多機能機１０は、登録要求パケットに含まれる期間指示情報によって示される期間（例えば１時間）とは異なる期間を、保持期間として決定することがある。多機能機１０は、登録要求パケットの受信時刻に、決定済みの保持期間（例えば１時間）を加算することによって、保持終了時刻を算出する。
【００３２】
なお、多機能機１０は、決定済みの保持期間（例えば１時間）を示す期間確定情報を含む応答パケットを、登録要求パケットの応答として、ＰＣ１００に送信する。多機能機１０は、ＰＣ１００のデバイス情報を、決定済みの保持期間（例えば１時間）に亘って保持する。
【００３３】
ＰＣ１００は、多機能機１０から登録要求パケットの応答パケットが受信されてから、応答パケットに含まれる期間確定情報によって示される保持期間（例えば１時間）の半分の期間（例えば３０分間）が経過する際に、多機能機１０に登録更新パケットを送信する。このように、保持期間が示すタイミングよりも大幅に早いタイミングで登録更新パケットを送信するのは、ＰＣ１００のデバイス情報が多機能機１０の登録テーブルから消去されるのを確実に防止するためである。なお、登録更新パケットは、ＰＣ１００のデバイス情報と、応答コマンドに含まれる保持期間（例えば１時間）と同じ期間を示す期間指示情報と、デバイス情報の登録を更新することを示す更新コマンドと、を含む。
【００３４】
多機能機１０は、登録要求パケットの場合と同様に、登録更新パケットに含まれる期間指示情報を用いて、保持期間を決定する。次いで、多機能機１０は、登録更新パケットの受信時刻に、決定済みの保持期間（例えば１時間）を加算することによって、保持終了時刻を算出する。そして、多機能機１０は、ＰＣ１００のデバイス情報に対応付けられている現在の保持終了時刻を、算出済みの保持終了時刻に更新する。なお、多機能機１０は、保持期間（例えば１時間）を経過するまでに、ＰＣ１００から登録更新パケットが受信されない場合、ＰＣ１００のデバイス情報を、登録テーブルから消去する。
【００３５】
さらに、多機能機１０は、登録要求パケットの場合と同様に、決定済みの保持期間（例えば１時間）を示す期間確定情報を含む応答パケットを、登録更新パケットの応答として、ＰＣ１００に送信する。
【００３６】
ＰＣ１００は、多機能機１０から登録更新パケットの応答パケットが受信されてから、応答パケットに含まれる期間確定情報によって示される保持期間の半分の期間が経過する際に、当該応答パケットに含まれる保持期間と同じ期間を示す期間指示情報を含む登録更新パケットを再び送信する。即ち、ＰＣ１００は、登録更新パケットの多機能機１０への送信を繰り返し実行する。
【００３７】
なお、ＰＣ１００は、ユーザによって予め決められた登録解除操作が実行されると、ＰＣ１００のデバイス情報を含む登録解除パケットを、多機能機１０に送信する。この場合、ＰＣ１００は、繰り返し送信される予定の登録更新パケットの送信を停止する。多機能機１０は、登録解除パケットを受信すると、登録解除パケットに含まれるＰＣ１００のデバイス情報を、登録テーブルから消去する。
【００３８】
なお、ＰＣ１００は、登録要求パケット又は登録更新パケット（以下では登録要求パケットと登録更新パケットとを「登録指示パケット」と呼ぶ）を多機能機１０に送信してから、２秒間（以下では「タイムアウト時間」と呼ぶ）経過しても、応答パケットが多機能機１０から受信されない場合、応答パケットを受信できないと判断する。この場合、ＰＣ１００は、再度、登録指示パケットを、多機能機１０に送信する。ＰＣ１００は、予め決められた個数の登録指示パケットを送信しても、タイムアウト時間内に応答パケットが受信されない場合、通信エラーを示す情報を、ＰＣ１００の表示部に表示させる。これにより、ＰＣ１００のユーザは、多機能機１０とＰＣ１００とが通信できないことを知ることができる。
【００３９】
ＰＣ２００は、ＰＣ１００と同様の構成を備える。即ち、ＰＣ２００は、ユーザによって予め決められた登録操作が実行されると、登録要求パケットを多機能機１０に送信する。また、ＰＣ２００は、登録更新パケットを多機能機１０に送信する処理を繰り返し実行する。
【００４０】
（メインＣＰＵ２０及びサブＣＰＵ４０が実行する処理）
次いで、図２を参照して、メインＣＰＵ２０及びサブＣＰＵ４０が実行する処理の内容について説明する。本処理は、多機能機１０の電源がＯＮされている間、繰り返し実行される。多機能機１０の電源がＯＮされたタイミングでは、多機能機１０はレディ状態である。即ち、多機能機１０の電源がＯＮされたタイミングでは、メインＣＰＵ２０が本処理を実行する。
【００４１】
Ｓ１２では、受信制御部２２は、ＬＡＮ４を介して、パケットが受信されたのか否かを判断する。ネットワークインターフェイス９０でパケットが受信される場合、ＭＡＣコントローラ６６は、パケット割込要求信号を、メインＣＰＵ２０に供給する。受信制御部２２は、パケット割込要求信号を取得すると、受信されたパケットを、ネットワークインターフェイス９０からＳＤＲＡＭ８０に移動させる。Ｓ１２では、受信制御部２２は、ＳＤＲＡＭ８０に受信済みのパケットが存在するのか否かを判断する。
【００４２】
パケットが受信されていない場合（Ｓ１２でＮＯ）、Ｓ１４において、メインＣＰＵ２０は、メインＣＰＵ２０をスリープ状態に移行可能（即ち多機能機１０をスリープ状態に移行可能）であるのか否かを判断する。例えば、メインＣＰＵ２０は、以下の（１）〜（５）の条件を含む複数個の条件の全てでＮＯと判断される場合に、スリープ状態に移行可能（Ｓ１４でＹＥＳ）と判断し、複数個の条件のうち、少なくとも１個の条件でＹＥＳと判断される場合に、スリープ状態に移行不可能（Ｓ１４でＮＯ）と判断する。
【００４３】
上記の複数個の条件は、（１）多機能機１０がパケットを外部に送信中であるのか否か、（２）未処理パケットがＳＤＲＡＭ８０に記憶されているのか否か、（３）多機能機１０にＴＣＰ接続しているデバイス（例えばＰＣ１００）があるのか否か、（４）多機能機１０が起動又はシャットダウンのための処理を実行しているのか否か、（５）ネットワークの負荷が高いのか否か、を含む。
【００４４】
例えば、メインＣＰＵ２０がＰＣ１００等からのパケットに対する応答を送信している場合には、上記の（１）でＹＥＳと判断される。例えば、多機能機１０がＷｅｂサーバ機能を有しており、ＰＣ１００が多機能機１０のＷｅｂサーバにＴＣＰ接続中である場合には、上記の（３）でＹＥＳと判断される。例えば、Ｓ１４の処理を実行する直前の所定の期間に受信されたパケット数が所定の個数を超えている場合には、多機能機１０が処理すべきパケットを受信する可能性が高いために、上記の（５）でＹＥＳと判断される。従って、ここで示されるように、上記の（１）〜（５）の条件のうち、少なくとも１個の条件でＹＥＳと判断される場合に、スリープ状態に移行不可能（Ｓ１４でＮＯ）と判断する。
【００４５】
一方、上記の（１）〜（５）の条件の全てでＮＯと判断される場合に、メインＣＰＵ２０がスリープ状態に移行可能（Ｓ１４でＹＥＳ）と判断される。このＳ１４でＹＥＳの場合、Ｓ１６において、移行制御部４８は、メインＣＰＵ２０を、非スリープ状態からスリープ状態に移行させる。具体的には、移行制御部４８は、メイン用クロック回路３０にクロック供給の停止を指示する。この結果、メインＣＰＵ２０は、非スリープ状態からスリープ状態に移行する。なお、Ｓ１６では、さらに、移行制御部４８は、ＳＤＲＡＭ８０を通常動作モードからセルフリフレッシュモードに移行させる。これにより、多機能機１０は、スリープ状態となる。なお、ＳＤＲＡＭ８０がセルフリフレッシュモードである間は、ＳＤＲＡＭ８０に情報を書き込んだり、ＳＤＲＡＭ８０から情報を読み込んだりすることができない。例えば、ネットワークインターフェイス９０で受信されたパケットをＳＤＲＡＭ８０に記憶させることができない。
【００４６】
なお、メインＣＰＵ２０は、Ｓ１６でスリープ状態に移行する前に、多機能機１０をレディ状態からスリープ状態に移行するために、以下の処理を実行する。即ち、メインＣＰＵ２０は、代理応答情報を、ＳＤＲＡＭ８０からＳＲＡＭ６０に移動させる。代理応答情報は、メインＣＰＵ２０がスリープ状態である間に受信されたパケットに従った処理を、サブＣＰＵ４０が実行するための情報（例えば多機能機１０のＩＰアドレス、ＭＡＣアドレス、ノード名等）を含む。また、メインＣＰＵ２０は、ＬＡＮ４を介して受信されるパケットを記憶するためのＲＡＭを、ＳＤＲＡＭ８０からＳＲＡＭ６０に切り替える。続いて、メインＣＰＵ２０は、サブＣＰＵ４０以外からの割込要求をマスク（禁止）する。次いで、メインＣＰＵ２０は、サブＣＰＵ４０に処理を開始させるための開始信号を、サブＣＰＵ４０に供給する。サブＣＰＵ４０は、開始信号が取得されると、Ｓ１６の処理を実行する。なお、メインＣＰＵ２０は、ＷＡＩＴ命令を実行する。ＷＡＩＴ命令が実行されると、メインＣＰＵ２０は、サブＣＰＵ４０から割込要求信号が供給されるまで待機する実行停止状態となる。
【００４７】
Ｓ１６が終了すると、Ｓ１２に戻る。即ち、メインＣＰＵ２０がスリープ状態である間に、Ｓ１２が実行される。この場合、サブＣＰＵ４０の受信制御部４２がＳ１２を実行する。Ｓ１２でＮＯの場合、Ｓ１４において、メインＣＰＵ２０が既にスリープ状態であるために、ＮＯと判断され、Ｓ１２に戻る。
【００４８】
以下のＳ１８の処理では、Ｓ１２において、サブＣＰＵ４０の受信制御部４２が、パケットが受信されたと判断する場合（メインＣＰＵ２０がスリープ状態である間にパケットが受信される場合）について説明する。
【００４９】
Ｓ１８では、サブＣＰＵ４０は、メインＣＰＵ２０がスリープ状態であるのか否かを判断する。具体的には、サブＣＰＵ４０は、ＳＲＡＭ６０内の状態変数を確認して、多機能機１０がスリープ状態であるのか否かを判断することによって、メインＣＰＵ２０がスリープ状態であるのか否かを判断する。この場合では、Ｓ１８にてＹＥＳと判断され、次いで、Ｓ２０では、サブＣＰＵ４０は、Ｓ１２で受信されたパケットを解析することによって、サブＣＰＵ４０自身がパケットに従った処理を実行することができるのか否かを判断する。
【００５０】
例えば、サブＣＰＵ４０は、ＳＲＡＭ６０内の代理応答情報を用いて、Ｓ１２で受信されたパケットに従った応答処理を実行可能であるのか否かを判断する。サブＣＰＵ４０が代理して実行可能な応答処理は、例えば、ＰＩＮＧに対する応答、ＡＲＰ（Address Resolution Protocol）のパケットに対する応答等を含む。なお、Ｓ１２で受信されたパケットがＰＣ１００，２００からの登録指示パケットである場合、サブＣＰＵ４０は、サブＣＰＵ４０自身がパケットに従った処理を実行することができないと判断する。
【００５１】
Ｓ２０でＹＥＳの場合、Ｓ２２において、サブＣＰＵ４０は、Ｓ１２で受信されたパケットに従った処理を実行して、Ｓ１２に戻る。Ｓ２０でＮＯの場合、Ｓ２４において、移行制御部４８は、メインＣＰＵ２０をスリープ状態から非スリープ状態に移行する。具体的には、移行制御部４８は、メイン用クロック回路３０に、メインＣＰＵ２０にクロック供給を開始するよう指示する。この結果、メインＣＰＵ２０にクロックが供給され、メインＣＰＵ２０がスリープ状態から非スリープ状態に移行する。移行制御部４８は、メインＣＰＵ２０に割込要求信号を供給する。
【００５２】
サブＣＰＵ４０は、さらに、ＳＤＲＡＭ８０をセルフリフレッシュモードから通常動作モードに移行させる処理、外部デバイスからの受信パケットの記憶先をＳＲＡＭ６０からＳＤＲＡＭ８０に切り替える処理、ＳＲＡＭ６０内の情報をＳＤＲＡＭ８０に移動させる処理等を実行する。
【００５３】
メインＣＰＵ２０は、サブＣＰＵ４０から割込要求信号が供給されると、ＷＡＩＴ命令を解除する。メインＣＰＵ２０は、ＳＲＡＭ６０に記憶されている未処理のパケットを、ＳＤＲＡＭ８０に移動させる。
【００５４】
Ｓ２６において、メインＣＰＵ２０は、Ｓ１２で受信されたパケットが、登録指示パケットであるのか否かを判断する。具体的には、メインＣＰＵ２０は、Ｓ１２で受信されたパケットに、登録コマンド又は更新コマンドが含まれている場合に、登録指示パケットであると判断する。
【００５５】
登録指示パケットでないと判断される場合（Ｓ２６でＮＯ）、Ｓ２８において、メインＣＰＵ２０は、Ｓ１２で受信されたパケットに応じた処理（例えば上記の通常の処理（印刷指示に従った印刷処理等））を実行して、Ｓ１２に戻る。
【００５６】
一方、登録指示パケットであると判断される場合（Ｓ２６でＹＥＳ）、Ｓ３０において、メインＣＰＵ２０は、ＳＤＲＡＭ８０にパケット情報８４が記憶されているのか否かを判断する。パケット情報８４がＳＤＲＡＭ８０に記憶されていない場合（Ｓ３０でＮＯ）にＳ３４に進み、記憶されている場合（Ｓ３０でＹＥＳ）にＳ３２に進む。
【００５７】
Ｓ３２では、メインＣＰＵ２０は、Ｓ１２で受信された登録指示パケットの送信元のデバイスが、パケット情報８４として記憶されているデバイスと一致するのか否かを判断する。具体的には、メインＣＰＵ２０は、登録指示パケットに含まれる送信元のデバイスのＭＡＣアドレスと、パケット情報８４に含まれるＭＡＣアドレスと、が一致するのか否かを判断する。ここで、上述した２つのＭＡＣアドレスが一致する場合、Ｓ３２でＹＥＳと判断されＳ３４に進み、一方、上述した２つのＭＡＣアドレスが異なる場合、Ｓ３２でＮＯと判断されＳ３６に進む。
【００５８】
Ｓ３４では、メインＣＰＵ２０は、ＳＤＲＡＭ８０に、パケット情報８４を記憶させる。Ｓ３０でＮＯと判断された場合（即ちパケット情報８４が記憶されていない場合）に実行されるＳ３４では、メインＣＰＵ２０は、登録指示パケット（即ち登録要求パケット）の送信元デバイスのＭＡＣアドレスと、当該登録指示パケットの受信時刻と、を対応付けて、ＳＤＲＡＭ８０に記憶させる。さらに、メインＣＰＵ２０は、登録指示パケットに含まれる期間指示情報によって示される期間の半分の期間（例えば１時間の半分の３０分）を、待機期間（図３参照）として記憶させる。
【００５９】
一方、Ｓ３２でＹＥＳと判断された場合（即ちＳＤＲＡＭ８０に既にパケット情報８４が記憶されている場合）に実行されるＳ３４では、メインＣＰＵ２０は、パケット情報８４に含まれる前回の登録指示パケットの受信時刻を、今回の登録指示パケットの受信時刻に更新する。さらに、メインＣＰＵ２０は、登録指示パケットに含まれる期間指示情報によって示される期間の半分の期間（例えば１時間の半分の３０分）を、待機期間（図３参照）として記憶させる。Ｓ３４が終了すると、Ｓ４６に進む。
【００６０】
一方、上述したように、今回のＳ１２で受信された登録指示パケットの送信元のデバイス（以下では「ＰＣ２００」を例として説明する）が、パケット情報８４として記憶されているデバイス（以下では「ＰＣ１００」を例として説明する）と異なる場合（Ｓ３２でＮＯの場合）に、Ｓ３６の処理が実行される。Ｓ３６では、取得部２６は、ＰＣ２００から次回の登録指示パケットが受信される受信予定時刻を算出する。具体的には、取得部２６は、今回の登録指示パケットに含まれる期間指示情報によって示される期間の半分の期間（例えば１時間の半分の３０分間）を、今回の登録指示パケットが受信された受信時刻に加算することによって、受信予定時刻を算出する。
【００６１】
なお、ＰＣ２００は、今回の登録指示パケットに対する応答パケットを受信してから、当該応答パケットに含まれる期間確定情報によって示される保持期間の半分の期間（即ち待機期間）が経過する際に、次回の登録指示パケットを送信する。従って、厳密には、Ｓ３６において、取得部２６は、ＰＣ２００が今回の登録指示パケットに対する応答パケットを受信した時刻に、待機期間を加算することによって、受信予定時刻を算出しなければならない。しかしながら、多機能機１０がＰＣ２００から登録指示パケットを受信してから、ＰＣ２００が多機能機１０から登録指示パケットに対する応答パケットを受信するまでの期間は、非常に短い。即ち、登録指示パケットを多機能機１０が受信する時刻と、当該登録指示パケットに対する応答パケットをＰＣ２００が受信する時刻とは、ほぼ等しい。従って、Ｓ３６において、取得部２６は、ＰＣ２００から今回の登録指示パケットを受信した受信時刻に待機期間を加算して、受信予定時刻を算出する。
【００６２】
次いで、Ｓ３８では、取得部２６は、ＳＤＲＡＭ８０に記憶されているパケット情報８４に含まれる受信時刻に、当該パケット情報８４に含まれる待機期間を加算することによって、ＰＣ１００から次回の登録指示パケットが受信される次回受信時刻を算出する。次いで、Ｓ４０では、メインＣＰＵ２０は、Ｓ３６で算出された受信予定時刻（即ちＰＣ２００から次回の登録指示パケットが受信される予定時刻）と、Ｓ３８で算出された次回受信時刻（即ちＰＣ１００から次回の登録指示パケットが受信される時刻）と、が略等しいのか否かを判断する。
【００６３】
ここで「受信予定時刻と次回予定時刻とが略等しい」とは、受信予定時刻と次回受信時刻との差分が、所定値以下であることを意味する。例えば、所定値は、上記のタイムアウト時間よりも短い（例えば上記のタイムアウト時間の１０分の１（即ち０．２秒））期間を示す値に設定されてもよい。また、例えば、所定値は、Ｓ１２において、特定の登録指示パケットが受信されてから、上記の特定の登録指示パケットについてのＳ１８からＳ４８の処理が終了するまでの期間を示す値に設定されてもよい。この場合、上記の特定の登録指示パケットについてのＳ１８からＳ４８の処理が終了した後に実行されるＳ１２の処理において、ＮＯと判断されることを回避することができる。これにより、Ｓ１４でＹＥＳと判断されて、メインＣＰＵ２０がスリープ状態に移行されることなく（Ｓ１６）、上記の特定の登録指示パケットの次にＳ１２において受信される登録指示パケットについて、Ｓ１８からＳ４８までの処理を実行することができる。
【００６４】
なお、Ｓ３８では、Ｓ３６と同様に、取得部２６は、多機能機１０がＰＣ１００から登録指示パケットを受信してから、ＰＣ１００が多機能機１０から登録指示パケットに対する応答パケットを受信するまでの期間は、非常に短い。即ち、登録指示パケットを多機能機１０が受信する時刻と、当該登録指示パケットに対する応答パケットをＰＣ１００が受信する時刻とは、ほぼ等しい。従って、Ｓ３８において、取得部２６は、ＰＣ１００から今回の登録指示パケットを受信した受信時刻に待機期間を加算して、受信予定時刻を算出する。
【００６５】
Ｓ３６で算出された受信予定時刻とＳ３８で算出された次回受信時刻とが略等しい場合（Ｓ４０でＹＥＳ）、Ｓ４２において、メインＣＰＵ２０は、Ｓ３６で算出された受信予定時刻を、ＰＣ２００が次回の登録指示パケットを送信するための送信時刻として決定する。一方、Ｓ３６で算出された受信予定時刻とＳ３８で算出された次回受信時刻とが略等しくない場合（Ｓ４０でＮＯ）、Ｓ４４において、メインＣＰＵ２０は、Ｓ３８で算出された次回受信時刻（即ちＰＣ１００から次回の登録指示パケットが受信される時刻）を、ＰＣ２００が次回の登録指示パケットを送信するための送信時刻として決定する。Ｓ４２またはＳ４４が終了すると、Ｓ４６に進む。
【００６６】
次いで、Ｓ４６では、メインＣＰＵ２０は、デバイス情報を、登録テーブルに登録する。具体的には、メインＣＰＵ２０は、Ｓ１２で受信された登録指示パケットが、登録要求パケットである場合、登録要求パケットに含まれるデバイス情報を、登録テーブルに登録する。メインＣＰＵ２０は、さらに、算出された保持終了時刻を、デバイス情報に対応づいて登録テーブルに登録する。メインＣＰＵ２０は、Ｓ１２で受信された登録指示パケットが、登録更新パケットである場合、登録更新パケットに含まれるデバイス情報と一致するデバイス情報に対応付けて登録テーブルに登録されている保持終了時刻を、算出された保持終了時刻に更新する。なお、Ｓ３４、Ｓ４２及びＳ４４のいずれの処理が実行された後にＳ４６が実行されるのかに応じて、保持終了時刻の算出方法は異なる。
【００６７】
Ｓ３４又はＳ４２が実行された後のＳ４６では、メインＣＰＵ２０は、最初に、Ｓ１２で受信された登録指示パケットに含まれる期間指示情報によって示される期間（例えば１時間）を、当該登録指示パケットに含まれるデバイス情報と一致するデバイス情報を、登録テーブルに登録させる保持期間として決定する。次いで、メインＣＰＵ２０は、登録指示パケットの受信時刻に、決定済みの保持期間（例えば１時間）を加算することによって、保持終了時刻を算出する。即ち、Ｓ３４又はＳ４２が実行された後のＳ４６では、Ｓ１２で受信された登録指示パケットに含まれる期間指示情報によって示される期間を用いて、保持終了時刻が算出される。
【００６８】
一方、Ｓ４４が実行された後のＳ４６では、メインＣＰＵ２０は、最初に、Ｓ３８で算出された次回受信時刻（即ちＰＣ１００から次回に登録指示パケットが受信される時刻）から、Ｓ１２における登録指示パケットの受信時刻を減算して、減算値を算出する。次いで、メインＣＰＵ２０は、算出された減算値を２倍することによって得られる値を、保持期間として決定する。次いで、メインＣＰＵ２０は、登録指示パケットの受信時刻に、決定済みの保持期間（例えば１時間）を加算することによって、保持終了時刻を算出する。即ち、Ｓ４４が実行された後のＳ４６では、Ｓ１２で受信された登録指示パケットに含まれる期間指示情報によって示される期間に関わらず、保持終了時刻が算出される。
【００６９】
Ｓ４６が実行された後、Ｓ４８では、Ｓ１２で受信された登録指示パケットに対する応答パケットを、登録指示パケットの送信元のデバイスに送信して、応答処理を終了する。応答パケットは、Ｓ４６で決定された保持期間を示す期間確定情報が含まれる。
【００７０】
（本実施例の効果）
図３を参照して、各装置１０，１００，２００の動作と、本実施例の効果と、を説明する。なお、図３では、メインＣＰＵ２０がスリープ状態である状況で開始される。
【００７１】
１２：００：００では、ＰＣ１００は、Ｍ−１（Ｍは２以上の整数）番目の登録指示パケットを、多機能機１０に送信する。なお、Ｍ−１番目の登録指示パケットは、１時間を示す期間指示情報を含む。Ｍ−１番目の登録指示パケットが受信されると（図２のＳ１２）、移行制御部４８は、メインＣＰＵ２０を非スリープ状態に移行させる（図２のＳ２４）。メインＣＰＵ２０は、ＰＣ１００のＭＡＣアドレス（即ち「ＰＣ１００」）と対応付けて、受信時刻（即ち「１２：００：００」）を記憶させる（即ちパケット情報８４）（図２のＳ３４）。さらに、メインＣＰＵ２０は、Ｍ−１番目の登録指示パケットの期間指示情報によって示される期間（即ち１時間）の半分の期間（即ち３０分間）を、待機期間として、パケット情報８４を記憶する（図２のＳ３４）。
【００７２】
送信制御部２４は、Ｍ−１番目の登録指示パケットの応答として、Ｍ−１番目の応答パケットを送信する（図２のＳ４８）。Ｍ−１番目の応答パケットは、Ｍ−１番目の登録指示パケットに含まれる期間指示情報によって示される期間（即ち１時間）と等しい保持期間を示す期間確定情報を含む。
【００７３】
Ｍ−１番目の応答パケットが送信されると、移行制御部４８は、メインＣＰＵ２０を、非スリープ状態からスリープ状態に移行させる（図２のＳ１６）。
【００７４】
１２：１５：００では、ＰＣ２００は、Ｎ−１（Ｎは２以上の整数）番目の登録指示パケットを、多機能機１０に送信する。なお、Ｎ−１番目の登録指示パケットは、１時間を示す期間指示情報を含む。Ｎ−１番目の登録指示パケットが受信されると（図２のＳ１２）、移行制御部４８は、メインＣＰＵ２０を非スリープ状態に移行させる（図２のＳ２４）。取得部２６は、登録指示パケットに含まれる期間指示情報によって示される期間期間（即ち１時間）の半分の期間（即ち３０分間）を、今回の登録指示パケットが受信された受信時刻に加算することによって、Ｎ番目の登録指示パケットの受信予定時刻（即ち「１２：４５：００」）を算出する（図３のＰ２で示す）（図２のＳ３６）。
【００７５】
さらに、取得部２６は、パケット情報８４に含まれる受信時刻（ＰＣ１００からＭ−１番目の登録指示パケットが受信された時刻（即ち「１２：００：００」））と、受信間隔（即ち３０分間）とを用いて、ＰＣ１００から次に受信される次回受信時刻（即ち「１２：３０：００」）を算出する（図３のＰ１で示す）（図２のＳ３８）。メインＣＰＵ２０は、Ｐ１とＰ２とが略等しくない（図２のＳ４０でＮＯ）ために、ＰＣ２００がＮ番目の登録指示パケットの送信時刻を、「１２：３０：００」に決定する（図３のＰ１で示す）（図２のＳ４４）。
【００７６】
送信制御部２４は、Ｎ−１番目の登録指示パケットの応答として、Ｎ−１番目の応答パケットを送信する（図２のＳ４８）。メインＣＰＵ２０は、決定された送信時刻（即ち「１２：３０：００」）から、Ｎ−１番目の登録指示パケットの受信時刻（即ち「１２：１５：００」）を減算することによって、減算値を算出する（即ち１５分間）。次いで、減算値を２倍することによって得られる値を、保持期間（即ち３０分間）として決定する（図２のＳ４６）。Ｎ−１番目の応答パケットは、決定された保持期間を示す期間確定情報を含む。
【００７７】
Ｎ−１番目の応答パケットが送信されると、移行制御部４８は、メインＣＰＵ２０を、非スリープ状態からスリープ状態に移行させる（図２のＳ１６）。
【００７８】
１２：３０：００では、ＰＣ１００は、Ｍ番目の登録指示パケットを、多機能機１０に送信する。同様に、ＰＣ２００は、Ｎ番目の登録指示パケットを、多機能機１０に送信する。この構成によれば、ＰＣ１００から受信されるＭ番目の登録指示パケットの受信タイミングと、ＰＣ２００から受信されるＮ番目の登録指示パケットの受信タイミングと、を等しくすることができる。また、ＰＣ２００から次に受信されるＮ番目の登録指示パケットの受信タイミングを、Ｎ＋１番目以降に受信される登録指示パケットの受信タイミングと等しくする場合と比べて、早期に、ＰＣ１００からの登録指示パケットと、ＰＣ２００からの登録指示パケットと、を略等しいタイミングで受信することができる。
【００７９】
Ｎ−１番目の登録指示パケットの送信タイミングと、Ｎ番目の登録指示パケットの送信タイミングと、の間隔（図３のＴ１）は、Ｎ−１番目の登録指示パケットの送信タイミングと、Ｎ−１番目の登録指示パケット（受信時刻「１２：１５：００」）に含まれる期間指示情報によって示される期間（即ち１時間）を用いて得られるＮ番目の登録指示パケットの送信タイミングと、の間隔（図３のＴ２）よりも短い。即ち、Ｎ番目の登録指示パケットの送信タイミングが、予定されている送信タイミングよりも早い。この構成によれば、多機能機１０は、Ｎ−１番目の登録指示パケットの送信タイミングと、Ｎ番目の登録指示パケットの送信タイミングと、の間隔を、Ｔ２よりも長くすることによって、ＰＣ１００とＰＣ２００とからの登録指示パケットの受信タイミングを略等しくさせる場合と比べて、早期に、ＰＣ１００からの登録指示パケットと、ＰＣ２００からの登録指示パケットと、を略等しいタイミングで受信することができる。
【００８０】
Ｍ番目及びＮ番目の登録指示パケットが受信されると（図２のＳ１２）、移行制御部４８は、メインＣＰＵ２０を非スリープ状態に移行させる（図２のＳ２４）。メインＣＰＵ２０は、ＰＣ１００のＭＡＣアドレス（即ち「ＰＣ１００」）と対応付けて、受信時刻（即ち「１２：３０：００」）を、記憶させる（即ちパケット情報８４）（図２のＳ３４）。
【００８１】
取得部２６は、Ｎ番目の登録指示パケットに含まれる期間指示情報によって示される期間（即ち３０分間）の半分の期間（即ち１５分間）を、Ｎ番目の登録指示パケットの受信時刻（即ち「１２：３０：００」）に加算することによって、Ｎ＋１番目の登録指示パケットの受信予定時刻（即ち「１２：４５：００」）を算出する（図３のＰ２で示す）（図２のＳ３６）。次いで、取得部２６は、パケット情報８４に含まれる受信時刻（即ち「１２：３０：００」）と、受信間隔（即ち３０分間）とを用いて、ＰＣ１００から次に受信される次回受信時刻（即ち「１３：００：００」）を算出する（図３のＰ３で示す）（図２のＳ３８）。メインＣＰＵ２０は、Ｐ２とＰ３と略等しくないため（図２のＳ４０でＮＯ）に、ＰＣ２００がＮ番目の登録指示パケットの送信時刻を、「１３：００：００」に決定する（図３のＰ３で示す）（図２のＳ４４）。
【００８２】
送信制御部２４は、Ｍ番目の登録指示パケットの応答として、Ｍ番目の応答パケットを送信する（図２のＳ４８）。Ｍ番目の応答パケットは、Ｍ番目の登録指示パケットに含まれる期間指示情報によって示される期間（即ち１時間）と等しい保持期間を示す期間確定情報を含む。さらに、送信制御部２４は、Ｎ番目の登録指示パケットの応答として、Ｎ番目の応答パケットを送信する（図２のＳ４８）。メインＣＰＵ２０は、決定された送信時刻（即ち「１３：００：００」）から、Ｎ番目の登録指示パケットの受信時刻（即ち「１２：３０：００」）を減算することによって、減算値を算出する（即ち３０分間）。次いで、減算値を２倍することによって得られる値を、保持期間（即ち１時間）として決定する（図２のＳ４６）。Ｎ番目の応答パケットは、決定された保持期間を示す期間確定情報を含む。
【００８３】
Ｍ番目及びＮ番目の応答パケットが送信されると、移行制御部４８は、メインＣＰＵ２０を、非スリープ状態からスリープ状態に移行させる（図２のＳ１６）。
【００８４】
１３：００：００では、ＰＣ１００は、Ｍ＋１番目の登録指示パケットを、多機能機１０に送信する。同様に、ＰＣ２００は、Ｎ＋１番目の登録指示パケットを、多機能機１０に送信する。この構成によれば、ＰＣ１００から受信される登録指示パケットの受信タイミングと、ＰＣ２００から受信される登録指示パケットの受信タイミングと、を等しくすることができる。また、この構成によれば、受信タイミングが略等しくなったＭ番目の登録指示パケットとＮ番目の登録指示パケットの次にＰＣ１００，２００から受信されるＭ＋１番目の登録指示パケットとＮ＋１番目の登録指示パケットとを、略等しいタイミングで受信することができる。
【００８５】
Ｍ＋１番目及びＮ＋１番目の登録指示パケットが受信されると（図２のＳ１２）、移行制御部４８は、メインＣＰＵ２０を非スリープ状態に移行させる（図２のＳ２４）。メインＣＰＵ２０は、ＰＣ１００のＭＡＣアドレス（即ち「ＰＣ１００」）と対応付けて、受信時刻（即ち「１３：００：００」）を、記憶させる（即ちパケット情報８４）（図２のＳ３４）。
【００８６】
取得部２６は、Ｎ＋１番目の登録指示パケット期間指示情報によって示される期間（即ち１時間）の半分の期間（即ち３０分間）を、登録指示パケットが受信された受信時刻に加算することによって、Ｎ＋２番目の登録指示パケットの受信予定時刻（即ち「１３：３０：００」）を算出する（図２のＳ３６）。次いで、取得部２６は、パケット情報８４に含まれる次回受信時刻（即ち「１３：００：００」）と、受信間隔（即ち３０分間）とを用いて、ＰＣ１００からＭ＋２番目の登録指示パケットが受信される次回受信時刻（即ち「１３：３０：００」）を算出する（図２のＳ３８）。メインＣＰＵ２０は、Ｍ＋２番目の登録指示パケットの受信時刻と、Ｎ＋２番目の登録指示パケットの受信時刻と、が等しいために、ＰＣ２００がＮ＋２番目の登録指示パケットの送信時刻を、「１３：３０：００」に決定する（図３のＰ３で示す）（図２のＳ４４）。
【００８７】
また、送信制御部２４は、Ｍ＋１番目の登録指示パケットの応答として、Ｍ＋１番目の応答パケットを送信する（図２のＳ４８）。Ｍ＋１番目の応答パケットは、Ｍ＋１番目の登録指示パケットに含まれる期間指示情報によって示される期間（即ち１時間）と等しい保持期間を示す期間確定情報を含む。さらに、送信制御部２４は、Ｎ＋１番目の登録指示パケットの応答として、Ｎ＋１番目の応答パケットを送信する（図２のＳ４８）。Ｎ＋１番目の応答パケットは、Ｎ＋１番目の登録指示パケットに含まれる期間指示情報によって示される期間（即ち１時間）と等しい保持期間を示す期間確定情報を含む。
【００８８】
なお、Ｍ＋２番目及びＮ＋２番目の登録指示パケット以降では、多機能機１０は、図２のＳ３０からＳ４４の処理を実行しなくてもよい。多機能機１０は、登録指示パケットに含まれる期間指示情報によって示される期間と等しい保持期間を示す期間確定情報を含む応答パケットを送信することによって、ＰＣ１００から送信される登録指示パケットと、ＰＣ２００から送信される登録指示パケットと、を等しいタイミングで受信することができる。即ち、メインＣＰＵ２０は、ＰＣ１００及びＰＣ２００から、登録指示パケットを、２回続けて等しいタイミングで受信する場合に、それ以降のＳ３０からＳ４４の処理を実行しなくてもよい。
【００８９】
多機能機１０は、ＰＣ２００からの登録指示パケットに含まれる期間指示情報によって示される期間（例えば１時間）に関わらず、保持期間（例えば３０分間）を決定し、決定された保持期間を示す期間確定情報を含む応答パケットをＰＣ２００に送信する。ＰＣ２００は、応答パケットが受信されると、受信された応答パケットの保持期間の半分の期間（例えば１５分間）の経過する際に、登録指示パケットを送信する。この結果、多機能機１０がＰＣ１００とＰＣ２００とから受信される登録要求パケットの受信タイミングを等しくすることができる。
【００９０】
ＰＣ２００のＮ番目の登録指示パケットの送信タイミングと、Ｎ＋１番目の登録指示パケットの送信タイミングと、の間隔（図３のＴ４）は、ＰＣ２００のＮ番目の登録指示パケットの送信タイミングと、Ｎ番目の登録指示パケット（受信時刻「１２：３０：００」）に含まれる期間指示情報によって示される期間（即ち３０分間）を用いて得られるＮ＋１番目の登録指示パケットの送信タイミングと、の間隔（図３のＴ３）よりも長い。即ち、Ｎ番目の登録指示パケットの送信タイミングが、予定されている送信タイミングよりも早い。この構成によれば、多機能機１０は、この構成によれば、受信タイミングが略等しくなったＭ番目の登録指示パケットとＮ番目の登録指示パケットの次に各ＰＣ１００，２００から受信されるＭ＋１番目の登録指示パケットとＮ＋１番目の登録指示パケットとを、略等しいタイミングで受信することができる。
【００９１】
メインＣＰＵ２０がスリープ状態である間に登録指示パケットが受信される場合、多機能機１０は、応答パケットを送信するために、メインＣＰＵ２０をスリープ状態から非スリープ状態に移行する。ＰＣ１００とＰＣ２００とから受信される登録要求パケットの受信タイミングが等しくなることによって、メインＣＰＵ２０がスリープ状態から非スリープ状態に移行される頻度を少なくすることができる。この結果、多機能機１０の消費電力を低減することができる。
【００９２】
ＰＣ１００は、通常、１時間を示す期間指示情報を含む登録指示パケットを送信する。仮に、ＰＣ１００のデバイス情報を保持する期間として、１時間よりも長い期間（１日間、１週間等）を示す期間指示情報を含む登録指示パケットを送信する構成を採用すれば、登録指示パケットの送信頻度が少なくて済む。しかしながら、この構成では、例えば、ＰＣ１００が２時間だけＬＡＮ４と接続される場合に、多機能機１０は、１日間又は１週間等に亘って、ＰＣ１００のデバイス情報を登録テーブルに保持しなければならず、ＳＤＲＡＭ８０を無駄に利用することになる。逆に、１時間よりも短い期間（例えば１０分間）を示す期間指示情報を含む登録指示パケットを送信する構成を採用すると、登録指示パケットと応答パケットとの通信頻度が高くなる。上記の構成によれば、ＳＤＲＡＭ８０が無駄に利用されることを抑制すると共に、登録指示パケットと応答パケットとの通信頻度が高くなることを抑制することができる。
【００９３】
（対応関係）
上記の多機能機１０、ＰＣ１００及びＰＣ２００のそれぞれが、「通信装置」、「第１の装置」及び「第２の装置」の一例である。ＰＣ１００から送信される登録指示パケットが「第１の要求パケット」の一例であり、ＰＣ２００から送信される登録指示パケットが「第２の要求パケット」の一例である。メインＣＰＵ２０とサブＣＰＵ４０とが「プロセッサ」の一例である。２個のＰＣＵ２０，４０が共に非スリープ状態である状態が「高消費状態」の一例であり、メインＰＣＵ２０がスリープ状態であり、サブＣＰＵ４０が非スリープ状態である状態が「低消費状態」の一例である。ＰＣ１００から送信される登録指示パケットに含まれる保持情報が「特定の情報」及び「第１の関係情報」の一例であり、ＰＣ２００から送信される登録指示パケットに含まれる保持情報が「特定の情報」及び「第２の関係情報」の一例である。
【００９４】
図３に示されるＰ１が「第１の予定タイミング」、「第１の送信タイミング」及び「第２の送信タイミング」の一例であり、Ｐ２が「第２の予定タイミング」及び「第４の予定タイミング」の一例であり、Ｐ３が「第３の予定タイミング」、「第３の送信タイミング」及び「第４の送信タイミング」の一例である。
【００９５】
以上、本発明の実施形態について詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。
【００９６】
（変形例）
（１）上記の実施例では、多機能機１０は、２個のＣＰＵ２０，４０を備えるが、これに代えて、多機能機１０は、メインＣＰＵ２０のみを備えていてもよい。この場合、メインＣＰＵ２０に供給されるクロック信号の周波数が低い状態と高い状態とに移行してもよい。クロック信号の周波数が高い状態では、メインＣＰＵ２０の消費電力が比較的に高く、クロック信号の周波数が低い状態では、メインＣＰＵ２０の消費電力が比較的に低い。この変形例では、メインＣＰＵ２０が「プロセッサ」の一例であり、メインＣＰＵ２０に供給されるクロック信号の周波数が高い状態が「高消費状態」の一例であり、メインＣＰＵ２０に供給されるクロック信号の周波数が低い状態が「低消費状態」の一例である。
【００９７】
（２）上記の実施例では、多機能機１０からの応答パケットに含まれる期間確定情報によって、ＰＣ１００が次に送信する登録指示パケットの送信タイミングが決まる。しかしながら、ＰＣ１００は、所定の間隔（例えば１時間）で、登録指示パケットを送信してもよい。多機能機１０には、上記の所定の間隔が予め記憶されていてもよい。あるいは、メインＣＰＵ２０は、ＰＣ１００からの登録指示パケットの受信タイミイグに基づいて、上記の所定の間隔を特定してもよい。取得部２６は、ＰＣ１００からの登録指示パケットの受信時刻に、上記の所定の間隔を加算することによって、次にＰＣ１００から登録指示パケットが受信される時刻を算出してもよい。この構成も、「受信済みの特定の第１のパケットの受信に基づいて得られる特定の情報を利用して、第１の装置が、特定の第１のパケットの送信後に、第１のパケットを前記通信装置に送信するための第１の送信タイミングを取得する」という構成に含まれる。
【００９８】
（３）上記の実施例では、メインＣＰＵ２０は、Ｎ番目の登録要求パケットの送信時刻を、ＰＣ１００から次に受信されるＭ番目の登録指示パケットの送信時刻に合わせている（図２のＳ４４）。即ち、Ｋ＝０である。しかしながら、メインＣＰＵ２０は、Ｎ番目の登録要求パケットの送信時刻を、ＰＣ１００から受信されるＭ＋１番目の登録指示パケットの送信時刻に合わせてもよい。この場合、メインＣＰＵ２０は、Ｎ＋１番目の登録要求パケットの送信時刻を、ＰＣ１００から受信されるＭ＋１番目の登録指示パケットの送信時刻に合わせてもよい。一般的に言うと、メインＣＰＵ２０は、Ｎ＋Ｈ番目（Ｈは０以上の整数）の登録要求パケットの送信時刻を、Ｍ＋Ｋ番目（Ｋは０以上の整数）の登録指示パケットの送信時刻に合わせていればよい（図２のＳ４４）。この場合、取得部２６は、Ｍ−１番目の登録指示パケットの受信タイミングを利用して、Ｍ＋Ｋ番目の登録指示パケットの送信タイミングを取得してもよい。なお、この場合、メインＣＰＵ２０は、ＰＣ２００からの登録指示パケットの受信時刻と、ＰＣ１００からの登録指示パケットの受信時刻と、が徐々に近づくように、ＰＣ２００からの登録指示パケットの送信時刻を決定してもよい。
【００９９】
（４）メインＣＰＵ２０がプログラム８２に従って処理を実行することによって、取得部２６の機能が実現されている。しかしながら、サブＣＰＵ４０がプログラム６２に従って処理を実行することによって、取得部の機能が実行されてもよい。この場合、図２のＳ２６、Ｓ３０からＳ４６までの処理を、サブＣＰＵ４０が実行してもよい。
【０１００】
（５）上記の実施例では、メインＣＰＵ２０が非スリープ状態である間に登録指示パケットが受信される場合と、メインＣＰＵ２０がスリープ状態である間に登録指示パケットが受信される場合と、の両方の場合において、メインＣＰＵ２０は、受信予定時刻の算出（図２のＳ３６）と次回受信時刻の算出（図２のＳ３８）及び比較（図２のＳ４０）をしている。しかしながら、メインＣＰＵ２０が非スリープ状態である間に登録指示パケットが受信される場合には、メインＣＰＵ２０は、図２のＳ３６〜Ｓ４０の処理を実行しなくてもよい。本変形例では、Ｓ３２でＮＯの場合には、図２のＳ３６〜Ｓ４０の処理をスキップして、Ｓ４２の処理を実行してもよい。この構成によれば、メインＣＰＵ２０が非スリープ状態である間に登録指示パケットが受信される場合には、図２のＳ３６〜Ｓ４０の処理を実行しなくて済む。
【０１０１】
（６）多機能機１０に接続されるＰＣの個数に限りはない。多機能機１０は、多数個のＰＣからの登録指示パケットの受信時刻を、ＰＣ１００の登録指示パケットの受信時刻と略等しくしてもよい。多数個のＰＣが多機能機１０に接続される場合、多機能機１０は、１個以上のＰＣの登録指示パケットの受信時刻を、パケット情報８４に記憶してもよい。そして、多機能機１０は、パケット情報８４に記憶されているＰＣ以外の多数個の登録指示パケットのそれぞれの受信時刻が、パケット情報８４に含まれる１個以上ＰＣのいずれかのＰＣに対応する送信時刻に略等しくなるように、送信時刻を決定してもよい。例えば、多機能機１０に１０個のＰＣが接続されている場合、多機能機１０は、５個のＰＣを第１グループとして、他の５個のグループを第２グループとして分類してもよい。多機能機１０は、第１グループの中の１個の基準ＰＣの受信時刻に、第１グループの中の他の４個のＰＣの受信時刻を近づけてもよい。同様に、多機能機１０は、第２グループの中の１個の基準ＰＣの受信時刻に、第２グループの中の他の４個のＰＣの受信時刻を近づけてもよい。この場合、第１グループの中の上記の基準ＰＣの受信時刻と、第２グループの中の上記の基準ＰＣの受信時刻と、は一致しなくてもよい。
【０１０２】
（７）上記の実施例では、メインＣＰＵ２０がプログラム８２に従って処理を実行することによって、各部２２〜２６が実現されるが、各部２２〜２６の少なくとも１個は、論理回路等のハードウェアで実現されてもよい。また、サブＣＰＵ４０がプログラム６２に従って処理を実行することによって、各部４２、４８が実現されるが、各部４２、４８の少なくとも１個は、論理回路等のハードウェアで実現されてもよい。
【０１０３】
（８）「通信装置」は、多機能機でなくてもよく、ＰＣ、プリンタ、サーバ、ＰＤＡ等の通信装置であってもよい。
【０１０４】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【０１０５】
２：ネットワークシステム、１０：多機能機、２０：メインＣＰＵ、２２：受信制御部、２４：送信制御部、２６：決定部、４０：サブＣＰＵ、４２：受信制御部、４８：移行制御部、６０：ＳＲＡＭ、７０：フラッシュメモリ、８０：ＳＤＲＡＭ、１００，２００：ＰＣ
【図１】
0005553051.tif 000002
【図２】
0005553051.tif 000003
【図３】
0005553051.tif 000004