(57)【特許請求の範囲】
【請求項１】
エンジンクランキングを制御するクランキングシステムを備えた車両に用いられ、前記クランキングシステムから独立して設けられているプロセッサベースシステムの動作方法であって、
エンジンクランキングを示す信号を検出することと、
クランキングにより誘起される電力低下が発生する前に、低消費電力状態へと前記システムをサスペンドさせることと
を含んでなるプロセッサベースシステムの動作方法。
【請求項２】
エンジンクランキングを示す信号を検出した後に、前記動作のためのオペレーティングシステムが活動状態にあるかどうかを決定することをさらに含む請求項１に記載の方法。
【請求項３】
オペレーティングシステムが活動状態にある場合には第１の割込み処理ハンドラを使用し、前記オペレーティングシステムが非活動状態にある場合には第２の割込み処理ハンドラを使用することをさらに含む請求項２に記載の方法。
【請求項４】
システムリセットの後に前記第１の割込み処理ハンドラに第１のベクターをインストールし、前記オペレーティングシステムが活動状態になった後に第２の割込み処理ハンドラへの第２のベクターにより前記第１のベクターを置換することをさらに含む請求項３に記載の方法。
【請求項５】
前記オペレーティングシステムが活動状態にある場合には、前記システムを前記低消費電力状態にする前に装置コンテキストを保管する請求項４に記載の方法。
【請求項６】
前記オペレーティングシステムが非活動状態にある場合には即座に前記システムを低消費電力状態へと戻すことをさらに含む請求項４に記載の方法。
【請求項７】
エンジンクランキングを示す信号を検出すると、前記オペレーティングシステムを関与させず直接に前記装置コンテキストを保管するためのルーチンを呼出すことをさらに含む請求項５に記載の方法。
【請求項８】
サスペンドさせることには、エンジンクランキングを示す信号を検出した後に２０ミリ秒以内に前記システムが低消費電力状態へと入るようになることを含む請求項１に記載の方法。
【請求項９】
サスペンドさせることには、エンジンクランキングを示す信号が検出された時点で前記システムが置かれている低消費電力状態を決定することと、該状態へと前記システムをサスペンドさせることとを含む請求項１に記載の方法。
【請求項１０】
エンジンクランキングを制御するクランキングシステムを備えた車両に用いられ、前記クランキングシステムから独立して設けられている車両搭載プロセッサベースシステムに、
エンジンクランキングを示す信号を検出させるようにし、
クランキングにより誘起される電力低下が発生する前に低消費電力状態へと前記システムをサスペンドさせるようにする
命令を記憶する媒体を備える製品。
【請求項１１】
エンジンクランキングを示す信号の検出後に前記オペレーティングシステムが活動状態にあるかどうかをプロセッサベースシステムに決定させるようにする命令をさらに記憶する請求項１０に記載の製品。
【請求項１２】
プロセッサベースシステムに、オペレーティングシステムが活動状態にある場合には第１の割込み処理ハンドラを使用させるようにし、前記オペレーティングシステムが非活動状態にある場合には第２の割込み処理ハンドラを使用させるようにする命令をさらに記憶する請求項１１に記載の製品。
【請求項１３】
プロセッサベースシステムに、システムリセットの後に割込み処理ハンドラに第１のベクターをインストールし、前記オペレーティングシステムが活動状態になった後に前記第２の割込み処理ハンドラへの第２のベクターにより前記第１のベクターを置換させるようにする命令をさらに記憶する請求項１２に記載の製品。
【請求項１４】
プロセッサベースシステムに、前記オペレーティングシステムが活動状態にある場合には前記プロセッサベースシステムが前記低消費電力状態へと入る前に装置コンテキストを保管させる命令をさらに記憶する請求項１３に記載の製品。
【請求項１５】
プロセッサベースシステムに、前記オペレーティングシステムが非活動状態にある場合には低消費電力状態へと前記プロセッサベースシステムを戻させる命令をさらに記憶する請求項１３に記載の製品。
【請求項１６】
プロセッサベースシステムに、エンジンクランキングを示す信号を検出すると前記オペレーティングシステムを関与させずに直接に前記装置コンテキストを保管するためのルーチンを呼出させる命令をさらに記憶する請求項１４に記載の製品。
【請求項１７】
エンジンクランキングを制御するクランキングシステムを備えた車両に用いられ、前記クランキングシステムから独立して設けられている車両用プロセッサベースシステムであって、
プロセッサと、
前記プロセッサに接続された記憶装置と、
エンジンクランキングを示す信号を検出し、クランキングにより誘起される電力低下が発生する前に前記システムを低消費電力状態へとサスペンドさせる検出器と
を備えるプロセッサベースシステム。
【請求項１８】
前記プロセッサベースシステムが、エンジンクランキングを示す信号の検出後に２０ミリ秒以内に低消費電力状態へとサスペンドする請求項１７に記載のシステム。
【請求項１９】
前記プロセッサが前記検出器として動作するようにプログラムされている請求項１８に記載のシステム。
【請求項２０】
前記プロセスに結合されている基本入出力システムと、オペレーティングシステムと、エンジンクランキングを示す信号が検出されたときに前記オペレーティングシステムが非活動状態にある場合には前記プロセッサベースシステムを低消費電力状態へと戻す割込み処理ハンドラとを含む請求項１９に記載のシステム。
【発明の詳細な説明】
【０００１】
［背景］
本発明は、一般に、車両搭載プロセッサベースシステムに関する。
【０００２】
多数のプロセッサベースシステムが、自動車あるいはトラックなどの車両で使用されることが可能である。通常、エンジン制御器が、エンジンの動作を制御するのに利用される。ボディ制御器が、ドアの遠隔操作による開放、ラジオの制御などの車両における他のすべての動作を制御するのに使用されることも可能である。さらに、車両は、従来のパーソナルコンピュータ機能を提供するプロセッサベースシステムを含むこともある。例えば、車載パーソナルコンピュータは、道順および地図情報並びにＣＤあるいはDVDプレーヤによる娯楽を提供することも可能である。このようにして、地図機能、音楽、映画およびゲーム機能を含む様々な従来のコンピュータ機能が、車載パーソナルコンピュータにより提供されることが可能である。
【０００３】
大部分のパーソナルコンピュータでは、非活動期間の間は電力消費を減少させることが望ましい。このようにして、車両用のいくつかのプロセッサベースシステムは、ＲＡＭにサスペンドさせる(suspend-to-RAM(ＳＴＲ))状態あるいは不揮発性記憶装置にサスペンドさせる（suspend-to-non-volatile memory(ＳＴＮ）状態などの低消費電力状態を有することが可能である。ＳＴＲモードは、ある程度の電力をなおも消費し続ける低電力消費モードであることもある。しかし、プロセッサベースシステムは、一般に、ＳＴＮからよりもＳＴＲからより迅速に再作動されることが可能である。
【０００４】
エンジンがクランキングされる場合に車両搭載プロセッサベースシステムに関連して問題が発生する。通常、エンジンがクランキングされる場合、利用可能電力は、ある時間にわたり大幅に減少される。低消費電力状態にないプロセッサベースシステムは、前記低消費電力状態により悪影響を及ぼされることもある。一般に、他に何も行われない場合、このような低消費電力状態にあるプロセッサベースシステムは、自身をシャットダウンし、自動的にリブートする。
【０００５】
車載コンピュータ用のものなどのプロセッサベースシステムに関連して、このリブートシーケンスは、パーソナルコンピュータの始動を遅延させる。ユーザがエンジンをオンにする毎に車載パーソナルコンピュータが始動しようとし、失敗し、次いでリブートするとすれば、ユーザはいらいらするであろう。この動作シーケンスの結果として、プロセッサベースシステムがアクセスされる前に遅延期間が発生することもある。
【０００６】
この問題のための１つの利用可能な解決法は、車両用プロセッサベースシステムに関連して、例えばバッテリーなどの電圧源を提供することにある。しかし、この解決法では信頼性が低下する傾向がある。例えば、プロセッサベースシステムに関連してバッテリーを設けることは、バッテリーを定期的に交換する必要がある。このようにして、ユーザは、車載パーソナルコンピュータのための特別な手入れが必要だという使用方法に煩わされる。さらに、付加的なバッテリーまたは他の電圧源を必要とするので、コンピュータシステム全体のコストが増加する。
【０００７】
このようにして、利用可能な電力が減少した時にクランキングの間の期間に車両用プロセッサベースシステムを適応させるためのより良好な方法の必要性が依然として存在する。
【０００８】
［概要］
１つの形態では、車載プロセッサベースシステムの動作法は、エンジンクランキングを示す信号を検出することを含む。前記システムは、クランキングにより誘起される電力低下が発生する前に低消費電力状態へとサスペンドされる。
他の形態が、添付の詳細な説明および請求の範囲に記載されている。
【０００９】
［詳細な説明］
自動車あるいはトラックなどの車両搭載プロセッサベースシステムは、一般に、エンジンクランキングの間に発生する低消費電力状態に曝露される。このようにして、図１において、１０に示されているクランキング割込みが発生することもある。クランキング割込みは、プロセッサベースシステムのプロセッサに直接に供給されることもあるクランキング動作指示信号であることもある。
【００１０】
クランキング指示信号を受取ると、プロセッサベースシステムは、２つの選択肢となるコースのうちの１つを取ることが可能である。オペレーティングシステムがすでに活動状態にある場合、クランキング割込み信号に応答して、オペレーティングシステムマスク不可能割込みハンドラ１５が呼出される。ハンドラ１５は、プロセッサベースシステムの電力消費状態を減少させる役割を有するルーチンに、１８に示されているように起動させることが可能である。ルーチンは、プロセッサベースシステム内の装置のコンテキストを保管し、Advanced Configuration and Power Interface (ACPI) Specification, Revision 1.0, December 22, 1996 (www.teleport.com/~acpiで入手可能)に記載のＤ３状態であることも可能であるオフ状態へとこれらの装置を設定する。
【００１１】
ルーチン１８にかかる時間は、ルーチンが実施するステップの数を制御することにより決定されることが可能である。すなわち、パワーオフルーチン１８が、装置状態を保管し、次いで、例えばＳＴＲなどの低電力消費モードに入るのに必要な時間が、クランキング割込みと、クランキングにより誘起されるシステム電力低下との間の時間量より短い時間であるように設計することも可能である。電力低下は、利用可能な電源をクランキング動作に使用することに起因する。一般に、時間は、一般に、現行のシステムでは約２０ミリ秒より短い。
【００１２】
このようにして、クランキング割込み信号に応答して、パワーオフルーチンは、オペレーティングシステムが活動状態にある場合にはマスク不可能割込み（non-maskable interrupt:ＮＭＩ）ハンドラにより直接に呼出されることが可能である。パワーオフルーチンは、本発明の１つの実施形態では、周辺装置をシャットダウンした後、例えばＳＴＲなどの低消費電力状態１６にシステムを設定する。
【００１３】
システムが、電力低下が発生する前に低電力消費モードにある場合には、システムは、クランキング動作が終了した後に迅速に低電力消費モードからリジュームすることが可能である。このようにして、クランキング動作およびそれに関連する電力低下の影響は、本発明の１つの実施形態では、ユーザによりにはほとんど気づかれない。
【００１４】
代替的に、オペレーティングシステムが、クランキング割込み信号１０が発生した時点でまだ活動していない場合には、ブートローダは、パワーオフルーチン１８を呼出さずに動作できるＮＭＩハンドラ１４に即座にベクターにより向かうことにより、動作を開始することが可能である。この場合、オペレーティングシステムはまだ活動状態にないので、装置のコンテキストを保管する必要はない。装置の以前のコンテキストが、本発明の１つの実施形態では、ＳＴＲまたはＳＴＮなどの前の低消費電力状態で記憶されて、この時点でまだ有効であることもある。これらの装置が、この時点で保管するための新コンテキストを有しないことはほぼ確実である。システムは、ブートローダが動作する間にＮＭＩハンドラにベクターにより向かい、例えばＳＴＲあるいはＳＴＮなどの低消費電力状態１６にシステムを戻す。システムは、エンジンクランキングの間に発生する電力低下より充分に前に、より安全な低消費電力状態に非常に迅速に設定されることが可能である。
【００１５】
このようにして、いずれの場合にも、システムは、エンジンがクランキングする際に発生する電力低下の前に低消費電力状態へとサスペンドすることが可能である。これによって、リブートが必要でシステムを完全に動作させるのが遅れるような失敗をシステムが経験することが防げる。
【００１６】
一般に、所与の無動作期間の後に点火（ignition）がオンにされると、システムは図１の右側の経路を使用し、ブートローダＮＭＩハンドラ１４をロードし、低消費電力状態１６を即座にリジュームする。しかし、ユーザが点火アクセサリ（ＡＣＣ）機構を使用する場合にはクランキングしないで、ある期間の間システムは動作する。オペレーティングシステムが最終的にブートする。その後、エンジンがクランキングされる場合には図１の左側経路がとられ、低消費電力状態へと行く前にパワーオフルーチン１８が呼出されることもある。
【００１７】
多くの場合、少なくとも２つの低消費電力状態が提供される。ＳＴＲなどの第１の低消費電力状態は、電力消費を減少させる程度はより低いこともあるが、正常動作状態へのリジュームはより迅速である。ＳＴＮなどの第２の低消費電力状態は、システムをリジュームさせるのにより時間がかかるが、電力消費はより少ない。通常、システムがプリセットされた時間にわたり非活動状態にある場合には正常動作状態からＳＴＲ状態へとシステムは移行する。非活動期間が別の１つの時間を超えて続く場合には、本発明の１つの実施形態では、不揮発性記憶装置にシステムはサスペンドする（ＳＴＮ）。
【００１８】
このようにして、エンジンが作動された時に、システムは、例えばＳＴＲあるいはＳＴＮの状態にあることが可能である。いずれの場合にも、図１のシステムの動作は、本発明の１つの実施形態では同一であることが可能である。すなわち、エンジンがクランキングする前にシステムがいかなる電力消費状態にあろうとも、オペレーティングシステムが活動状態にない場合にはシステムは、前の状態が何であったかを決定し、システムがエンジンクランキングの前にあった状態へとサスペンドする。勿論、オペレーティングシステムが活動状態にある場合には、システムは、ＳＴＲあるいはＳＴＮのいずれの状態にもないこともある。他の実施形態では、クランキング割込み信号が受取られた場合にシステムをＳＴＮ状態へと戻すのではなく、システムを常にＳＴＲ状態に設定するのが望ましい。
【００１９】
図２において、ブロック２０に示されているように、ブートローダＮＭＩハンドラ１４のためのソフトウェアを実行するためのフローが、ブートローダおよびＮＭＩハンドラを呼出すことにより開始する。図２のフローは、オペレーティングシステムがまだ活動していないときにはじめる。活動的なマスク不可能割込みがエンジンクランキングに起因するものかどうかを、菱形２２でチェック処理が決定する。イエスの場合には、ブロック２４に示されているように、システムは低消費電力状態を即座にリジュームする。ノーの場合には、システムは、所与のブートローラのための従来のＮＭＩ応答をデフォルトとして行なう。
【００２０】
図３において、ハンドラ２０またはオペレーティングシステムＮＭＩハンドラ４６にベクターを設定するためのソフトウェアが、システムリセット２８で開始する。ローカルハンドラのためのＮＭＩベクターが、ブロック３０でインストールされる。ローカルハンドラのためのベクターは、ブートローダＮＭＩハンドラ２０を指すように最初に設定される。このようにして、ブートローダＮＭＩハンドラへのベクターが、システムがリセットされると即座にインストールされる。ベクターは、割込みハンドラへとジャンプさせる。
【００２１】
次いで、ブロック３２に示されているように初期化プロセスまたはブートプロセスが実行される。システムリジュームが生じたかどうかを菱形３４でチェック動作が決定する。イエスの場合には、ブロック３６に示されているようにシステムは復元されるあるいは再始動される。
【００２２】
次いで、ブートシーケンスは、ブロック３８に示されているようにオペレーティングシステムをリジュームする。オペレーティングシステムＮＭＩハンドラ４６（図４）のためのＮＭＩベクターが、ハンドラ２０へのベクターの代りにインストールされる（ブロック４０）。ブロック４２に示されているように、例えば記憶イメージを使用して装置コンテキストが復元され、ブロック４４に示されているように任意のアプリケーションが再始動されることが可能である。このようにして、ブロック３８〜４４のシーケンスは、システムリセットからオペレーティングシステムおよびそれに関連するアプリケーションの動作へのブートシーケンスである。
【００２３】
オペレーティングシステムが作動された後にオペレーティングシステムＮＭＩハンドラのためのベクターは、ブートローダＮＭＩハンドラへのベクターを置換する。すなわち、ブロック４０で、オペレーティングシステムがリジュームした後に、最初に設定されたように、ブートローダＮＭＩハンドラ２０からオペレーティングシステムハンドラ４６にベクターが転送される。
【００２４】
菱形４８で決定されたようにエンジンクランキングに起因するかどうかを活動的なマスク不可能割込みが決定することにより、図４に示されているように、オペレーティングシステムＮＭＩハンドラ４６の動作が開始する。イエスの場合にはパワーオフルーチン１８が前述のように呼出されて、ＳＴＲ状態などの低消費電力状態にシステムを設定する。ノーの場合には、他のタイプのマスク不可能割込みのための通常のデフォルト動作が、ブロック５０に示されているように実行される。
【００２５】
この場合にはパワーオフルーチン１８が開始され（ブロック５２および１８）、システムは、ブロック５６に示されているようにサスペンド状態に設定される。パワーオフルーチン１８を動作させる過程において、装置コンテキストが保管され、装置は、低消費電力状態あるいはACPI Specificationに記載のＤ３状態などのオフ状態に設定されることが可能である。オペレーティングシステムがリジュームすると（ブロック３８）フローはブロック４０〜４４を進む。クランキングが終了すると（ブロック５７）、点火システムにより信号が発生されて、プロセッサは、クランキングが終了したことを示す覚醒信号を受取らせる。システムは、次いで、覚醒信号に応答してシステムリセット（ブロック２８）から自動的にリジュームする（ブロック５９）。
【００２６】
このようにして、オペレーティングシステムがすでに活動状態にある場合あるいはオペレーティングシステムがクランキング周期の間に非活動状態にある場合のいずれにしても、システムは、決定された時間内に低消費電力状態に設定される。この時間はすでに決定されている、というのは、ブートローダＮＭＩハンドラは迅速に動作して、オペレーティングシステムをその初期低消費電力状態へと戻すようにオペレーティングシステムに関与させることはないし、装置を出力低下させるあるいはコンテキストを保管することもしないからである。
【００２７】
代替的に、オペレーティングシステムが活動状態にある場合にはパワーオフルーチン１８が呼出されることもある。しかし、パワーオフルーチン１８は、オペレーティングシステムに関与せずに直接に呼出されるので、低消費電力状態への移行は、決定された時間内に生じることが可能である。この時間は、パワーオフルーチン１８が実行する活動の数を制御することにより決定されることが可能である。
【００２８】
反対に、オペレーティングシステムが関与すると、どれだけ多くのアプリケーションあるいはドライバがシステムにロードされたかを知る方法はない。このようにして、オペレーティングシステムが、低消費電力状態へと移行させるのにかかる時間は決定されなない。いくつかの状況では、その決定されない時間は、クランキングにより誘起される電力低下が発生する前にシステムを出力低下するのに利用可能な時間を越えることもある。このようにして、本発明の１つの実施形態では、システムは、オペレーティングシステムが活動状態にあろうとなかろうと、クランキングに起因する割込みを適応的に取り扱い、クランキングにより誘起される電力低下がシステムに悪影響を及ぼす前にシステムを低消費電力状態へと戻す。
【００２９】
次いで図５において、システムは、インターフェース６０に接続されているプロセッサ５８を含み、インターフェース６０は、システムメモリ６２に接続されている。インターフェース６０は、本発明の１つの実施形態ではディスプレイ６４に結合されている。インターフェース６０は、バス６６および別の１つのインターフェース６８に接続されている。インターフェース６０および６８は、チップセットあるいはブリッジにより実現されることも可能である。インターフェース６８はバス７４と記憶装置７０とを接続する。車両で使用されるいくつかのプロセッサベースシステムでは記憶装置７０は、フラッシュメモリシステムにより実現される。他の場合にはハードディスクドライブ記憶装置が利用されることもある。
【００３０】
オペレーティングシステムＮＭＩハンドラ４６並びにパワーオフルーチン１８は、記憶装置７０に記憶されることもある。基本入出力システム（ＢＩＯＳ）７６は、バス７４に接続されているメモリに記憶されることもある。従来、ＢＩＯＳは、レガシーバス７４に設けられることもあるＲＯＭに記憶されている。マスク不可能割込みハンドラ２０は、図４に示されているように迅速な動作のためにＢＩＯＳ７６と一緒に記憶されることも可能である。
【００３１】
本発明は、限定された数の実施形態に関連して説明されたが、当業者は、前記実施形態からの多数の変更および変形を認識することが可能である。添付図面は、すべてのこのような変更および変形を、本発明の真の精神および範囲内にあるものとしてカバーすることが意図される。
【図面の簡単な説明】
【図１】  本発明の１つの実施形態の状態図である。
【図２】  本発明の１つの実施形態の１つの形態のフローチャートである。
【図３】  本発明の１つの実施形態の別の１つの形態のフローチャートである。
【図４】  本発明の１つの実施形態の別の１つの形態のフローチャートである。
【図５】  本発明の１つの実施形態を示すブロックダイヤグラムである。
【図１】
0003960800.tif 000002
【図２】
0003960800.tif 000003
【図３】
0003960800.tif 000004
【図４】
0003960800.tif 000005
【図５】
0003960800.tif 000006