(57)【要約】【課題】システムの動作モードの変更によってあるＩＯ処理を行うプロセッサを変更することにより、性能と消費電力の面からその動作状態に最適なソフトウェアを実行する。【解決手段】通常動作モードから待機動作モードする際に、通常動作モードで行っていた各種ＩＯ処理の停止を行う（ステップＳ３２）。そして処理部１では今まで行っていたルーティング処理を停止して（ステップＳ３５）、処理部１で動作していたネットワークプロトコルスタックの各階層に散在する設定やデータを集積して（ステップＳ３６）、処理部２へ渡す準備を行い、この完了を処理部２へ知らせる（ステップＳ３７）。【選択図】      図３
2004295728.tif 000002
【特許請求の範囲】
【請求項１】
駆動モードとして、通常動作モードと、通常動作モードよりも電力消費を低減させた待機動作モードを有するコンピュータシステムにおいて、
第１のＣＰＵを有する第１の処理部と、第２のＣＰＵを有する第２の処理部と、
前記通常動作モードから前記待機動作モードへ移行する場合、
前記第１の処理部で実行していた処理を前記前記第２の処理部で継続実行させるため、前記第１の処理部での処理実行状況に関する情報を前記第１の処理部から前記第２の処理部へ転送することを特徴とする電子機器。
【請求項２】
前記処理状況に関するデータの転送に先立って、前記第２の処理部で実行中のプログラム処理を停止することを特徴とする請求項１記載の電子機器。
【請求項３】
前記処理状況に関するデータを前記第２の処理部へ転送後、前記第１の処理部に設けられたメモリの使用状況を監視し、この第１の処理部のメモリの使用が完了した場合、前記第１の処理部の動作を停止させることを特徴とする請求項２記載の電子機器。
【請求項４】
前記通常動作モードにおいて、前記第１の処理部が実行していたルーティング処理に関するプログラム動作を、前記待機モードに移行した場合、前記第２の処理部に継続実行させることを特徴とする請求項１記載の電子機器。
【請求項５】
前記待機モードに移行した場合、前記第２の処理部は通常動作モード時に実行していたＩＯ処理のためのプログラム動作の実行を停止後、前記ルーティング処理に関するプログラム動作を実行することを特徴とする請求項４記載の電子機器。
【請求項６】
第１のＣＰＵを有する第１の処理部と、第２のＣＰＵを有する第２の処理部とを具備し、駆動モードとして、通常動作モードと、通常動作モードよりも電力消費を低減させた待機動作モードを有する電子機器の動作モード切替方法において、
前記通常動作モードから前記待機動作モードへ移行する場合、前記第１の処理部で実行していた処理を前記前記第２の処理部で継続実行させるため、前記第１の処理部での処理実行状況に関する情報を前記第１の処理部から前記第２の処理部へ転送することを特徴とする動作モード切替方法。
【請求項７】
前記処理状況に関するデータの転送に先立って、前記第２の処理部で実行中のプログラム処理を停止することを特徴とする請求項６記載の動作モード切替方法。
前記処理状況に関するデータを前記第２の処理部へ転送後、前記第１の処理部に設けられたメモリの使用状況を監視し、この第１の処理部のメモリの使用が完了した場合、前記第１の処理部の動作を停止させることを特徴とする請求項６記載の動作モード切替方法
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のＣＰＵが設けられた電子機器に関し、特にこの電子機器の動作モードの切換方法に関する。
【０００２】
【従来の技術】
近年、様々なデジタル機器に対するシステム要求が複雑化しており、ネットワーク処理機能の搭載、多様なデジタル映像・音声圧縮技術への対応などがその要因となっている。その結果、汎用的に使用するプロセッサに加えて付加的なプロセッサを設けるシステムが見受けられる。付加的なプロセッサとしては、ある特定のＩＯの処理（ネットワーク処理など）やマルチメディア処理を行うプロセッサが例に挙げられる。
【０００３】
一方、汎用プロセッサにおいては、パーソナルコンピュータ（ＰＣ）と同等の処理性能を要求されているが、プロセッサの要求処理能力は、それとともに増加する消費電力量とのトレードオフとなるため、ＰＣと同等のプロセッサを一般のデジタル機器でそのまま採用することは困難な場合が多い。
【０００４】
その一例を示すものとして、家庭向けのホームサーバシステムが挙げられる。放送コンテンツのＡＶ処理に加えて、家庭内のルーティングに代表されるネットワーク処理、メールやＷｅｂブラウジングといったインターネット上のサービスを利用する機能をもつことが特徴になる。
【０００５】
このようなホームサーバシステムでは、汎用プロセッサおよびネットワーク処理等のＩＯ処理用プロセッサの計２つのプロセッサを搭載し、一定のＩＯ処理能力をＩＯ処理用プロセッサで保証しつつ、その他の処理を汎用プロセッサで処理するように実装することが容易である。また、ここでのマルチプロセッサの形式としては、対称型マルチプロセッサ（ＳＭＰ）を前提にするものではなく、プロセッサのアーキテクチャが異なるのが普通であり消費電力や処理能力に違いが存在する。
【０００６】
【特許文献１】
特開平１１−７３４４号公報  （図１）
【０００７】
【発明が解決しようとする課題】
このような、構成の機器において、最大限の性能を引き出す状態または最低限の性能を維持する状態などのシステムが定義する動作状態の変化によって、各プロセッサが最適な処理を行うことが望まれる。しかし従来のシステムにおいては、プロセッサやＩＯを停止することや動作電圧を変化させたりすることなどで消費電力の最適化を行う程度であった。
【０００８】
そこで本発明は、消費電力と負荷の最適配分という観点から、各プロセッサに対して動作状態の変化に応じた最適な処理を実現したシステムを提供することを目的とするものである。
【０００９】
【課題を解決するための手段】
本発明は、上述した課題を解決するため、駆動モードとして、通常動作モードと、通常動作モードよりも電力消費を低減させた待機動作モードを有するコンピュータシステムにおいて第１のＣＰＵを有する第１の処理部と、第２のＣＰＵを有する第２の処理部と、前記通常動作モードから前記待機動作モードへ移行する場合、前記第１の処理部で実行していた処理を前記前記第２の処理部で継続実行させるため、前記第１の処理部での処理実行状況に関する情報を前記第１の処理部から前記第２の処理部へ転送するものである。
【００１０】
また本発明は、上述した課題を解決するため、前記処理状況に関するデータの転送に先立って、前記第２の処理部で実行中のプログラム処理を停止するものである。
また本発明は上述した課題を解決するため、前記処理状況に関するデータを前記第２の処理部へ転送後、前記第１の処理部に設けられたメモリの使用状況を監視し、この第１の処理部のメモリの使用が完了した場合、前記第１の処理部の動作を停止させるものである。
【００１１】
また本発明は上述した課題を解決するため、前記通常動作モードにおいて、前記第１の処理部が実行していたルーティング処理に関するプログラム動作を、前記待機モードに移行した場合、前記第２の処理部に継続実行させるものである。
【００１２】
また本発明は上述した課題を解決するため、前記待機モードに移行した場合、前記第２の処理部は通常動作モード時に実行していたＩＯ処理のためのプログラム動作の実行を停止後、前記ルーティング処理に関するプログラム動作を実行するものである。
【００１３】
また本発明は上述した課題を解決するため、第１のＣＰＵを有する第１の処理部と、第２のＣＰＵを有する第２の処理部とを具備し、駆動モードとして、通常動作モードと、通常動作モードよりも電力消費を低減させた待機動作モードを有する電子機器の動作モード切替方法において、前記通常動作モードから前記待機動作モードへ移行する場合、前記第１の処理部で実行していた処理を前記前記第２の処理部で継続実行させるため、前記第１の処理部での処理実行状況に関する情報を前記第１の処理部から前記第２の処理部へ転送するものである。
【００１４】
【発明の実施の形態】
以下、図面を用いて、本発明の実施形態を説明する。
図１は、本発明の一実施形態を示すホームサーバシステムにおけるシステム構成を示したブロック構成図である。
本ホームサーバシステムにおいては、ＣＰＵとそのＣＰＵが主に使用するメモリの組み合わせを１つの処理部として、２つの処理部を持っている。これを処理部１、処理部２と呼び、処理部１のＣＰＵ１ａは処理部２のＣＰＵ２に比較して処理性能が高いがその分動作時の消費電力量が大きい。また、ＣＰＵ１ａは汎用パーソナルコンピュータ用のプロセッサ、ＣＰＵ２ａは組み込み用途に使用されるプロセッサといったように、それぞれのＣＰＵのアーキテクチャは異なる。従って、メモリ１ａに存在するＣＰＵ１ａ用のプログラムはＣＰＵ２ａで実行することは期待できない。逆に、メモリ２ａに存在するＣＰＵ２ａ用のプログラムはＣＰＵ１ａでは実行することはできない。また、本実施形態のホームサーバシステムは、複数種のネットワークインタフェースデバイスを持って、家庭内とインターネットとの間を接続するネットワーク機能がある。これらネットワーク機能を有するデバイスとして、本実施例では、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）３がネットワークインタフェースデバイス３ａを有し、ＬＡＮ（Ｌｏｃａ  Ａｒｅａ  Ｎｅｔｗｏｒｋ  ）４は、有線ＬＡＮ、無線ＬＡＮを実現するため、ネットワークインタフェースデバイス４ａと、ネットワークインタフェースデバイス４ｂを有する。
【００１５】
このように本実施形態のホームサーバシステムは、複数のネットワークインタフェースを有するため、メモリ／割り込みコントローラ部５を介して、処理部１または処理部２がＷＡＮ３側とＬＡＮ４側の間でネットワークのルーティング処理を行い、処理部１または処理部２が本ホームサーバシステムが通信相手となってＷｅｂ上のコンテンツを取得したりする。また、放送コンテンツを受信して表示デバイスへ映すために、受信部としてのチューナ／デコーダインタフェースデバイス６、表示出力制御のための映像処理インタフェースデバイス７等のＩＯデバイスを搭載し、メモリ／割り込みコントローラ５を介して、処理部１または処理部２がこれらＩＯデバイスの制御も行う。さらに各種動作用プログラムを格納するＲＯＭも持っており、各ＣＰＵ、メモリ、ＩＯデバイス間をアドレスバスやデータバス、割り込みの経路を制御するメモリ／割り込みコントローラ５で結ばれている。
【００１６】
このような構成のホームサーバシステムにおいて、その動作状態として通常動作と待機動作の２つの動作モードを持っている。各動作モードにおいて行うＩＯ処理の定義は図２に示す通りである。つまり、通常動作モードでは、処理部１がルーティング処理と各種ネットワーク処理を実施し、処理部２が映像制御などＩ／Ｏデバイスの処理を実行する。また待機動作モードでは処理部１へは電力を供給せずに、処理部２に電力供給し、処理部２によるルーティング機能のみを提供することになる。また、ＩＯ処理以外のユーザインタフェース処理などについては通常動作モードにおいて処理部１が中心になって行う。
【００１７】
このように、動作状態に依存してＩＯ処理を行うプロセッサの主体を変えることによって、（１）通常動作モードにおいて処理部１の高い処理能力に依存した高いスループットのネットワークＩＯ処理が期待でき、（２）待機動作モードにおいて処理部２で最低限実施する必要があるルーティング処理のみ実行しつつ処理部１を停止することで消費電力を抑えることが実現できる。
【００１８】
次に、ＩＯ処理を行う処理部（プロセッサ）を切り替える際に、そのＩＯ処理を初期化からやり直すことなく、またそのＩＯ処理の停滞時間を最小化するための、ＩＯ処理の切り替え動作フローについて、ルーティング処理の受け渡しを例に説明する。
【００１９】
図３に、本実施形態におれるホームサーバシステムにおいて、通常動作モードから待機動作モードへ移行する場合の動作フローを示す。まずはじめにボタン操作などのモード切替要求により通常動作モードから待機動作モードへ移行することを各処理部で認識するために、移行が開始したことが処理部１、処理部２に通知される（ステップＳ３１）。処理部２においては、まず通常動作モードで行っていた各種ＩＯ処理の停止を行い（ステップＳ３２）、次に待機動作モードで行うことになるルーティング処理のプログラムを起動して（ステップＳ３３）、実際にネットワークのＩＯへアクセスして処理ができるように準備をする。準備が完了したら、処理部１へそのことを通知する（ステップＳ３４）。処理部１では通知を受け、今まで行っていたルーティング処理を停止して（ステップＳ３５）、処理部１で動作していたネットワークプロトコルスタックの各階層に散在する設定やデータを集積して（ステップＳ３６）、処理部２へ渡す準備を行い、この完了を処理部２へ知らせる（ステップＳ３７）。続いて、処理部２では処理部１の設定やデータをまとめて取得するインタフェースを通じて取得し、処理部２のプログラムにこれらを反映させる（ステップＳ３８）。また、終わり次第処理部２にてルーティング処理の動作を開始する（ステップＳ３９）。次に、実質的に処理部２でルーティング処理を実行していることになるが、既に処理部１内のメモリ１ａ上のアドレスに対してネットワークデバイスが転送バッファとして指定されていることが普通であり、送信バッファの場合は、転送完了割り込みを受けるまで、そのバッファを解放することができない。また、受信バッファの場合も、すでに指定しているものをキャンセルすることは正常なＩＯ処理を阻害することになるため、望ましくない。そのため、メモリ１ａに存在する転送バッファおよび設定内容を示すデスクリプタ領域を使用し終えるまで待機動作モードへ移行を完了しないこととする。そこで、メモリ１ａ上の受信バッファを使い終わっていない場合には（ステップＳ４０のＮ）、受信バッファを消費するためにあえてネットワーク上に接続している近隣の機器と通信を開始して（ステップＳ４１）、受信バッファの消費促進を図る。また、このときに送信に使用するバッファはメモリ２ａ上の領域を使用するようにする。該ＩＯがメモリ１ａを使用していない状態になったら（ステップＳ４１のＹ）、処理部１を停止し（ステップＳ４２）、処理部２へ完了通知を発行（ステップＳ４３）して、待機動作モードへ移行が完了する（ステップＳ４４、ステップＳ４５）。
【００２０】
以上説明したように、本実施形態においては、２つ以上のアーキテクチャが異なるプロセッサを持ち、システムの動作状態定義の変更によってあるＩＯ処理を行うプロセッサを変更することにより、性能と消費電力などの観点からその動作状態定義に一番最適なソフトウェア処理構成をとることができる。
【００２１】
【発明の効果】
本発明によれば、２つ以上のアーキテクチャが異なるプロセッサを持ち、システムの動作状態定義の変更によってあるＩＯ処理を行うプロセッサを変更することにより、性能と消費電力などの観点からその動作状態定義に一番最適なソフトウェア処理構成をとることができる。
【図面の簡単な説明】
【図１】本発明の一実施形態を示すホームサーバのシステム構成を示すブロック図である。
【図２】同実施形態における、動作モードに応じた各処理部の状態を示した図である
【図３】同実施形態における、通常動作モードから待機動作モードへの切換動作を説明するためのフローチャートである。
【符号の説明】
１…処理部１、２…処理部２、３…ＷＡＮ、４…ＬＡＮ、５…メモリ／割り込みコントローラ、６…チューナ／デコーダインタフェースデバイス、７…映像処理インタフェースデバイス、８…ＲＯＭ。
【図１】
2004295728.tif 000003
【図２】
2004295728.tif 000004
【図３】
2004295728.tif 000005