(57)【特許請求の範囲】
【請求項１】
電子デバイスであって、
電力管理システムを備え、前記電力管理システムは、
（ｉ）前記電子デバイスに結合されたバッテリが供給する電圧および前記バッテリが供給する電流を検知することと、（ｉｉ）前記バッテリの現在の状態を求めることとを含む測定サイクルを周期的に繰り返すように構成され、
前記周期的に繰り返した測定サイクルのうちの少なくとも１つから得られた、前記検知した電圧と、前記検知した電流と、前記求めたバッテリの現在の状態とに基づいて、前記電子デバイスの電流制限を調整するように構成され、
前記電子デバイスの電力使用の低減を開始することにより、前記バッテリから流れる電流を前記調整した電流制限以下に保つように構成されている、電子デバイス。
【請求項２】
前記電子デバイスは携帯電話である、請求項１に記載の電子デバイス。
【請求項３】
前記電子デバイスは電圧しきい値を有し、前記電子デバイスは、前記電圧しきい値よりも低い電圧が検出されたことに応じてパワーダウンするように構成されている、請求項１または２に記載の電子デバイス。
【請求項４】
前記検出された電圧は前記バッテリが供給する電圧である、請求項３に記載の電子デバイス。
【請求項５】
前記電力管理システムは、前記バッテリの開放電圧を示すデータを取得することによって前記バッテリの前記現在の状態を求めるように構成されている、請求項１〜４のいずれか１項に記載の電子デバイス。
【請求項６】
前記電力管理システムは、前記バッテリの前記開放電圧を、
前記バッテリの充電状態および前記バッテリの温度を示すデータを取得すること、および、
前記バッテリの前記示された充電状態および前記バッテリの前記示された温度に対応する開放電圧を求めることにより、取得するように構成されている、請求項５に記載の電子デバイス。
【請求項７】
前記電子デバイスの前記電流制限を調整するために、前記電力管理システムは、前記周期的に繰り返した測定サイクルのうちの少なくとも１つからの、少なくとも１つの検知した電圧、検知した電流、および求めた前記バッテリの状態に基づいて、前記バッテリが供給する電圧が予め定められた電圧しきい値を下回らない状態で前記バッテリが供給することが可能な電流の量を示す最大電流しきい値を求めるように構成されている、請求項１〜６のいずれか１項に記載の電子デバイス。
【請求項８】
前記測定サイクルは、前記測定サイクル中に求めた前記検知した電圧および前記検知した電流に基づいて前記バッテリのバッテリインピーダンスを求めることを含み、
前記電力管理システムは、前記求めたバッテリインピーダンスを用いて前記電子デバイスの前記電流制限を調整するように構成されている、請求項１〜７のいずれか１項に記載の電子デバイス。
【請求項９】
前記電子デバイスは、前記電子デバイスのユーザの電力管理選好を示すユーザ入力を受けるように構成されたユーザインターフェイスを提供するように構成されており、
前記電力管理システムは、前記ユーザインターフェイスを用いて受けた前記ユーザ入力が示す前記電力管理選好に基づいて前記電子デバイスの前記電流制限を調整するように構成されている、請求項１〜８のいずれか１項に記載の電子デバイス。
【請求項１０】
前記電力管理システムは、前記電子デバイスの前記電流制限を、
前記電子デバイスの第１の電流しきい値を求めること、
前記周期的に繰り返した測定サイクルのうちの少なくとも１つからの、少なくとも１つの検知した電圧、検知した電流、および求めた前記バッテリの状態に基づいて、前記第１の電流しきい値よりも大きい最大電流しきい値を求めること、および、
前記電子デバイスの前記電流制限として、前記ユーザインターフェイスを用いて受けた前記ユーザ入力が示す前記電力管理選好に基づいて、前記第１の電流しきい値から前記最大電流しきい値までの範囲に含まれる電流制限を選択することにより、調整するように構成されている、請求項９に記載の電子デバイス。
【請求項１１】
前記電流制限を選択することは、前記ユーザインターフェイスを用いて受けた前記ユーザ入力が示す前記電力管理選好に基づいて、前記第１の電流しきい値よりも大きく前記最大電流しきい値よりも小さい電流制限を選択することを含む、請求項１０に記載の電子デバイス。
【請求項１２】
前記電力管理システムは、前記電子デバイスの電力使用の低減を、
前記電子デバイスのディスプレイを減光すること、
前記電子デバイスの１つ以上のコンポーネントに供給される電流を低減すること、
前記電子デバイスの１つ以上の実行ブロックに供給される電圧を低減すること、
前記電子デバイスの１つ以上の処理ユニットのクロック周波数を低減すること、または、
前記電子デバイスの１つ以上のコンポーネントを非作動にすること、
のうちの１つ以上により、開始するように構成されている、請求項１〜１１のいずれか１項に記載の電子デバイス。
【請求項１３】
方法であって、
（ｉ）バッテリから電力が供給される電子デバイスが前記バッテリが供給する電圧および前記バッテリが供給する電流を検知することと、（ｉｉ）前記電子デバイスが前記バッテリの現在の状態を求めることとを含む測定サイクルを周期的に繰り返すステップと、
前記電子デバイスが、前記周期的に繰り返した測定サイクルのうちの少なくとも１つから得られた、前記検知した電圧と、前記検知した電流と、前記求めたバッテリの現在の状態とに基づいて、前記電子デバイスの電流制限を調整するステップと、
前記電子デバイスが、前記電子デバイスの電力使用を管理することにより、前記バッテリから流れる電流を前記調整した電流制限以下に保つステップとを含む、方法。
【請求項１４】
前記バッテリの現在の状態を求めるステップは、前記バッテリの充電状態、前記バッテリの温度、または前記バッテリの開放電圧を示すデータを取得するステップを含み、
前記電子デバイスの電流制限を調整するステップは、
少なくとも（ｉ）前記バッテリから供給される電圧および（ｉｉ）前記バッテリの前記充電状態、前記バッテリの前記温度、または前記バッテリの前記開放電圧を示すデータに基づいて、前記電子デバイスの電流しきい値を求めるステップと、
前記求めた電流しきい値に基づいて前記デバイスの前記電流制限を設定するステップとを含む、請求項１３に記載の方法。
【請求項１５】
前記電子デバイスの電圧しきい値を求めるステップをさらに含み、
前記電子デバイスの電流制限を調整するステップはさらに前記電圧しきい値に基づく、請求項１３または１４に記載の方法。
【請求項１６】
第１の電流制限を用いて消費電力を管理するように前記電子デバイスを動作させるステップをさらに含み、
前記電子デバイスの電流制限を設定するステップは、
前記バッテリの現在の状態に対応するバッテリインピーダンスを求めるステップを含み、前記バッテリインピーダンスは、前記周期的に繰り返した測定サイクルのうちの少なくとも１つから得られた、少なくとも前記検知した電圧および前記検知した電流に基づいており、
少なくとも前記求めたバッテリインピーダンスに基づいて電流しきい値を求めるステップを含み、前記電流制限は前記電流しきい値に基づいており、
前記電子デバイスの電流制限を、前記第１の電流制限から、前記求めた電流しきい値に基づく第２の電流制限に変更するステップを含み、前記第２の電流制限は前記第１の電流制限と異なる、請求項１３〜１５のいずれか１項に記載の方法。
【請求項１７】
前記電子デバイスは、前記測定サイクルを、１時間ごとに１度と、１ＭＨｚとの間のレートで繰り返す、請求項１３〜１６のいずれか１項に記載の方法。
【請求項１８】
前記電子デバイスのユーザの電力管理選好を示すユーザ入力を受けるように構成されたユーザインターフェイスを提供するステップをさらに含み、
前記電子デバイスの電流制限の調整することは、前記ユーザインターフェイスを用いて受けた前記ユーザ入力が示す電力管理選好に基づく、請求項１３〜１７のいずれか１項に記載の方法。
【請求項１９】
前記電子デバイスの電力使用を管理することにより、前記バッテリから流れる電流を前記調整した電流制限以下に保つステップは、前記電子デバイスの電力使用の低減を開始することにより、前記バッテリから流れる電流を前記調整した電流制限以下に保つステップを含む、請求項１３〜１８のいずれか１項に記載の方法。
【請求項２０】
システムであって
バッテリ駆動型電子デバイスの電力を管理するように構成された１つ以上の電子デバイスを備え、前記システムは、
（ｉ）前記バッテリ駆動型電子デバイスのバッテリが供給する電圧および前記バッテリが供給する電流を検知することと、（ｉｉ）前記バッテリの現在の状態を求めることとを含む測定サイクルを周期的に繰り返すように構成され、
前記周期的に繰り返した測定サイクルのうちの少なくとも１つから得られた、前記検知した電圧と、前記検知した電流と、前記求めたバッテリの現在の状態とに基づいて、前記電子デバイスの電流制限を調整するように構成され、
前記電子デバイスの電力使用の低減を開始することにより、前記バッテリから流れる電流を前記調整した電流制限以下に保つように構成されている、システム。
【請求項２１】
前記電子デバイスの前記電流制限を調整するために、前記システムは、
前記周期的に繰り返した測定サイクルのうちの少なくとも１つからの、少なくとも１つの検知した電圧、検知した電流、および求めた前記バッテリの状態に基づいて、前記バッテリが供給する電圧が予め定められた電圧しきい値を下回らない状態で前記バッテリが供給することが可能な電流の量を示す最大電流しきい値を求めるように構成され、
前記電流制限を前記最大電流しきい値に設定するように構成されている、請求項２０に記載のシステム。
【請求項２２】
前記システムは、前記バッテリ駆動型電子デバイスのユーザの電力管理選好を示すユーザ入力を受けるように構成されたユーザインターフェイスを提供するように構成されており、
前記システムは、前記ユーザインターフェイスを用いて受けた前記ユーザ入力が示す前記電力管理選好に基づいて前記電子デバイスの前記電流制限を調整するように構成されている、請求項２０または２１に記載のシステム。
【請求項２３】
前記測定サイクルは、前記検知した電圧および検知した電流に基づいて前記バッテリのバッテリインピーダンスを求めることを含み、
前記１つ以上の電子デバイスは、前記求めたバッテリインピーダンスを用いて前記電子デバイスの前記電流制限を調整するように構成されている、請求項２０〜２２のいずれか１項に記載のシステム。
【請求項２４】
バッテリから電力が供給される電子デバイスの１つ以上のプロセッサによって実行されると前記電子デバイスに動作を実行させる命令を格納する１つ以上のマシン読取可能記憶装置であって、前記動作は、
（ｉ）前記バッテリから電力が供給される前記電子デバイスが前記バッテリが供給する電圧および前記バッテリが供給する電流を検知することと、（ｉｉ）前記電子デバイスが前記バッテリの現在の状態を求めることとを含む測定サイクルを周期的に繰り返すことと、
前記電子デバイスが、前記周期的に繰り返した測定サイクルから得られた、前記検知した電圧と、前記検知した電流と、前記求めたバッテリの現在の状態とに基づいて、前記電子デバイスの電流制限を調整することと、
前記電子デバイスが、前記電子デバイスの電力使用を管理することにより、前記バッテリから流れる電流を前記電流制限以下に保つこととを含む、１つ以上のマシン読取可能記憶装置。
【発明の詳細な説明】
【背景技術】
【０００１】
背景
バッテリ駆動型電子デバイスは、バッテリ電力の使用を調節するために電力管理システムを実装することが多い。いくつかの条件下では、電力管理システムが、バッテリから流すことができる電流を制限することにより、デバイスのシャットダウンを防止する場合がある。
【発明の概要】
【発明が解決しようとする課題】
【０００２】
概要
いくつかの実装例において、バッテリ駆動型電子デバイスは、バッテリの充電状態、バッテリ経年数、およびバッテリ温度等の変化する条件を考慮するために、時間とともに変化する電流制限を決定することができる。バッテリ条件およびシステム条件を、間隔を置いて繰り返し検知し、動的最大電流制限を決定するために使用することができる。動的最大電流制限は、検知したバッテリ条件およびシステム条件の変化に伴って経時的に変化する可能性がある。デバイスの電力管理システムは、動的最大電流制限または別の動的電流制限を適用することにより、性能を高める一方で、バッテリ電圧を許容レベルを下回るレベルに落す電流レベルを回避することができる。
【０００３】
過去のいくつかのデバイスでは、電力管理システムが、固定された下限電流を適用する。固定された下限電流は、最悪の場合のバッテリ状態に対応し得る。たとえば、バッテリの実際の特徴を使用する代わりに、また、現在のバッテリインピーダンスを推定することなく、いくつかのデバイスは、古く低温で充電残量が少ないバッテリの不足電圧を回避するであろう固定された制限を設定する。固定された下限電流は、デバイスの電力管理システムによって適用されると、デバイス性能を抑制することにより、バッテリランタイムを延ばし不足電圧状態を回避する。しかしながら、実際のバッテリ状態が、推定した最悪の場合のバッテリ状態よりも良い場合、固定された下限電流は、デバイスを過剰に抑制し、実際の必要以上にデバイス性能を低下させて不足電圧状態を回避する。
【課題を解決するための手段】
【０００４】
本願の技術は、固定された電流しきい値による不必要な性能低下を、デバイスがバッテリ状態の変化に合わせて電流制限を動的に調整できるようにすることにより、回避することができる。たとえば、バッテリインピーダンスは、経年数、温度、およびその他の要素に応じて変化するので、デバイスは、この変化を検知しそれに従って電流制限を変更することができる。こうして、典型的な固定電流制限よりも高い電流にすることにより、デバイス性能の不必要な低下を回避することができる。最悪の場合のバッテリ状態ではなく実際に検知したバッテリ状態に基づいて電流制限を決定し適用することにより、デバイスはより高いデバイス性能を得ることができ、それでもなお、電圧不足状態をもたらし得る電流スパイクを回避することができる。
【０００５】
いくつかの実装例において、デバイスは、カスタマイズされた電流制限をユーザが選択できるようにしてもよい。カスタマイズされた制限は、動的上限電流と固定された下限電流との間であってもよい。ユーザが高性能に対する選好（preference）を示す場合、デバイスは、動的上限電流を選択することにより、実際に存在するバッテリ状態において可能な最高のデバイス性能が得られるようにすることができる。一方、ユーザがより長いバッテリ寿命に対する選好を示す場合、電子デバイスは、固定された下限電流を選択することにより、最長バッテリランタイムを提供することができる。デバイスは、電流制限を、動的上限電流と固定された下限電流との間に設定することができ、これは、デバイス性能とバッテリランタイムとのトレードオフを提供する。これにより、ユーザが選択した設定に応じて変動し得る性能とランタイムとのバランスを取ることを可能にする。電流制限またはバランスは、ユーザが設定可能なものであってもよい。
【０００６】
ある一般的な局面において、電子デバイスは、バッテリと、バッテリが供給する電圧およびバッテリが供給する電流を検知するように構成された１つ以上のセンサと、電力管理システムとを備え、電力管理システムは、１つ以上のセンサを用いて、バッテリが供給する電圧およびバッテリが供給する電流を検知するように構成され、バッテリの現在の状態（特に、たとえば満充電状態に対するある割合としての充電状態を含む）を求めるように構成され、検知した電圧と、検知した電流と、求めたバッテリの現在の状態とに基づいて、電子デバイスの電流制限を求めるように構成され、電子デバイスの電力使用の低減を開始することにより、バッテリから流れる電流を電流制限以下に保つように構成されている。
【０００７】
実装例は以下の特徴のうちの１つ以上を含み得る。たとえば、いくつかの実装例において、電子デバイスは携帯電話である。いくつかの実装例において、バッテリの充電状態は、制御された放電をバッテリに適用することにより、またはバッテリの充電および／または放電中のクーロンカウントにより、求めることができる。
【０００８】
いくつかの実装例において、電力管理システムは、（ｉ）バッテリが供給する電圧および電流を検知することと、（ｉｉ）バッテリの現在の状態を求めることとを含む測定サイクルを周期的に繰り返すように構成され、周期的に繰り返す測定サイクル中に取得したデータに基づいて電子デバイスの電流制限を調整するように構成されている。
【０００９】
いくつかの実装例において、電子デバイスは電圧しきい値を有し、電子デバイスは、電圧しきい値よりも低い電圧が検出されたことに応じてパワーダウンするように構成されている。
【００１０】
いくつかの実装例において、電力管理システムは、バッテリの開放電圧を示すデータを取得することによってバッテリの現在の状態を示すデータを取得するように構成されている。
【００１１】
いくつかの実装例において、電力管理システムは、バッテリの開放電圧を、バッテリの充電状態およびバッテリの温度を示すデータを取得すること、およびバッテリの示された充電状態およびバッテリの示された温度に対応する開放電圧を求めることにより、取得するように構成されている。これをルックアップテーブルを用いて実行してもよい。
【００１２】
いくつかの実装例において、電子デバイスの電流制限を求めるために、電力管理システムは、検知した電圧、検知した電流、および求めたバッテリの状態に基づいて、バッテリが供給する電圧が予め定められた電圧しきい値を下回らない状態でバッテリが供給することが可能な電流の量を示す最大電流しきい値を求めるように構成されている。
【００１３】
いくつかの実装例において、電力管理システムは、検知した電圧および電流に基づいてバッテリのバッテリインピーダンスを求めるように構成され、バッテリインピーダンスを用いて電子デバイスの電流制限を求めるように構成されている。
【００１４】
いくつかの実装例において、電子デバイスは、電子デバイスのユーザの電力管理選好を示すユーザ入力を受けるように構成されたユーザインターフェイスを提供するように構成されている。電力管理システムは、ユーザインターフェイスを用いて受けたユーザ入力が示す電力管理選好に基づいて電子デバイスの電流制限を求めるように構成されてもよい。
【００１５】
いくつかの実装例において、電力管理システムは、電子デバイスの電流制限を、電子デバイスの第１の電流しきい値を求めること、検知した電圧、検知した電流、および求めたバッテリの状態に基づいて、第１の電流しきい値よりも大きい最大電流しきい値を求めること、および電子デバイスの電流制限として、ユーザインターフェイスを用いて受けたユーザ入力が示す電力管理選好に基づいて、第１の電流しきい値から最大電流しきい値までの範囲に含まれる電流制限を選択することにより、求めるように構成されている。
【００１６】
いくつかの実装例において、電流制限を選択することは、ユーザインターフェイスを用いて受けたユーザ入力が示す電力管理選好に基づいて、第１の電流しきい値よりも大きく最大電流しきい値よりも小さい電流制限を選択することを含む。
【００１７】
いくつかの実装例において、電力管理システムは、電子デバイスの電力使用の低減を、電子デバイスのディスプレイを減光すること、電子デバイスの１つ以上のコンポーネントに供給される電流を低減すること、電子デバイスの１つ以上の実行ブロックに供給される電圧を低減すること、電子デバイスの１つ以上の処理ユニットのクロック周波数を低減すること、または、電子デバイスの１つ以上のコンポーネントを非作動にすること、のうちの１つ以上により、開始するように構成されている。
【００１８】
別の一般的な局面において、システムまたはデバイスは、バッテリ駆動型電子デバイスの電力を管理するように構成された１つ以上の電子デバイスを備え、システムは、電子デバイスのバッテリが供給する電圧および電子デバイスのバッテリが供給する電流を取得するように構成され、電子デバイスのバッテリの現在の状態（特に充電状態を含む）を示すデータを取得するように構成され、取得した電圧、取得した電流、および求めたバッテリの現在の状態に基づいて電子デバイスの電流制限を求めるように構成され、電子デバイスの電力使用の低減を開始することにより、バッテリから流れる電流を電流制限以下に保つように構成されている。たとえば、このシステムまたはデバイスは、携帯電話、コンピュータシステム、またはその他の電子デバイスのコンポーネントであってもよい電力管理チップのような１つ以上の電力管理集積回路として実現されてもよい。このシステムまたはデバイスは、任意で、別の一般的な局面の任意の実現のために、本明細書に開示されるいずれか１つ以上の特徴を有し得る。
【００１９】
別の一般的な局面において、方法は、バッテリから電力が供給される電子デバイスが、バッテリが供給する電圧およびバッテリが供給する電流を検知するステップと、電子デバイスが、バッテリの現在の状態（特に充電状態を含む）を求めるステップと、電子デバイスが、検知した電圧および電流と、求めたバッテリの現在の状態とに基づいて、電子デバイスの電流制限を求めるステップと、電子デバイスが、電子デバイスの電力使用を管理することにより、バッテリから流れる電流を電流制限以下に保つステップとを含む。
【００２０】
実装例は以下の特徴（および別の一般的な局面に関して本明細書に開示される特徴のうちのいずれかに対応するプロセス特徴）のうちの１つ以上を含み得る。たとえば、いくつかの実装例において、バッテリの現在の状態を求めるステップは、バッテリの充電状態、バッテリの温度、および／またはバッテリの開放電圧を示すデータを取得するステップを含む。バッテリの充電状態は、制御された放電をバッテリに適用することにより、またはバッテリの充電および／または放電中のクーロンカウントにより、求めることができる。電子デバイスの電流制限を求めるステップは、少なくとも（ｉ）バッテリから電子デバイスに供給される電圧および（ｉｉ）バッテリの充電状態、バッテリの温度、またはバッテリの開放電圧を示すデータに基づいて、電子デバイスの電流しきい値を求めるステップと、求めた電流しきい値に基づいてデバイスの電流制限を設定するステップとを含み得る。
【００２１】
いくつかの実装例において、この方法は、電子デバイスの電圧しきい値を求めるステップを含み、電子デバイスの電流制限を求めるステップはさらに電圧しきい値に基づく。
【００２２】
いくつかの実装例において、電圧しきい値は、バッテリの放電電圧の終端、電子デバイスの動作に必要な最小電圧、または、それを下回ると電子デバイスが自動的にパワーダウンするように構成されている最小電圧を表す。
【００２３】
いくつかの実装例において、この方法は、第１の電流制限を用いて消費電流を管理するよう電子デバイスを動作させるステップを含む。電子デバイスの電流制限を設定するステップは、（ｉ）バッテリの現在の状態に対応するバッテリインピーダンスを求めるステップを含み得るものであり、バッテリインピーダンスは少なくとも検知した電圧および検知した電流に基づいており、（ｉｉ）少なくとも求めたバッテリインピーダンスに基づいて電流しきい値を求めるステップを含み得るものであり、電流制限は電流しきい値に基づいており、（ｉｉｉ）電子デバイスの電流制限を、第１の電流制限から、求めた電流しきい値に基づく第２の電流制限に変更するステップを含み得るものであり、第２の電流制限は第１の電流制限と異なる。
【００２４】
いくつかの実装例において、この方法は、バッテリの現在の状態ならびにバッテリが供給する電圧および電流を示す更新されたデータを周期的に取得するステップと、更新されたデータに基づいて電子デバイスの電流制限を周期的に調整するステップとを含む。
【００２５】
いくつかの実装例において、電子デバイスは、更新されたデータを取得する動作および電流制限を調整する動作を、１時間ごとに１度と、１ＭＨｚとの間のレートで繰り返す。
【００２６】
いくつかの実装例において、この方法は、電子デバイスのユーザの電力管理選好を示すユーザ入力を受けるように構成されたユーザインターフェイスを提供するステップを含む。電子デバイスの電流制限の設定は、ユーザインターフェイスを用いて受けたユーザ入力が示す電力管理選好に基づき得る。
【００２７】
これらの局面のその他の実施形態は、マシン読取可能ストレージデバイス上で符号化され、上記方法のアクションを実行するように構成された、対応するシステム、装置、ファームウェア、およびソフトウェアプログラムを含む。１つ以上のデバイスからなるシステムを、動作時に上記アクションをシステムに実行させる、システムにインストールされたソフトウェア、ファームウェア、ハードウェア、またはこれらの組合せにより、そのように構成することができる。１つ以上のソフトウェアプログラムを、データ処理装置によって実行されるとこの装置に上記アクションを実行させる命令により、そのように構成することができる。
【００２８】
いくつかの実装例において、本願に開示される技術は、以下の利点のうちの１つ以上を提供できる。実際のバッテリ状態に基づく電力管理設定は、最悪の場合のバッテリ状態に基づく設定よりも高いデバイス性能をもたらしつつ、不足電圧状態およびその結果生じ得る突然のデバイスシャットダウンを防止することができる。デバイスは、経時的に変化しバッテリ状態の変化を反映する電力管理設定を決定し、デバイス性能の不必要な低下を防止することができる。デバイスは、バッテリのランタイムとより高いデバイス性能とのバランスと取るために、ユーザの嗜好に合わせてカスタマイズされた電力管理設定を決定することにより、向上したユーザ体験を提供することができる。
【００２９】
本発明の１つ以上の実施形態の詳細が添付の図面および以下の説明に記載されている。本発明のその他の特徴および利点は、この説明、図面、および請求項から明らかになるであろう。
【図面の簡単な説明】
【００３０】
【図１】動的バッテリ電力管理のためのシステムの一例を示す図である。
【図２】動的バッテリ電力管理選好を指定するためのユーザインターフェースの一例である。
【図３】過早デバイスシャットダウンにつながり得るバッテリ管理の一例を示すグラフである。
【図４】バッテリランタイムが好ましいときのデバイス挙動の一例を示す一組のグラフである。
【図５】デバイス性能が好ましいときのデバイス挙動の一例を示す一組のグラフである。
【図６】動的バッテリ電力管理のためのプロセスを示すフローチャートである。
【発明を実施するための形態】
【００３１】
各種図面において同様の参照番号および名称は同様の要素を示す。
詳細な説明
図１は、動的バッテリ電力管理のためのシステム１００の一例を示す図である。システム１００は、バッテリから電力が供給されるデバイス１１０を含み、デバイス１１０は、バッテリからの電力を消費するレートを管理する。図１の例は、デバイス１１０およびそのバッテリの現在の状態を考慮するためにデバイス１１０が如何にして電流制限を調整できるかを示す。図１は、データの流れを示す段階（Ａ）〜（Ｅ）を示す。
【００３２】
いくつかの実装例において、デバイス１１０は、変化する状態に応じて、電流制限およびその他の電力管理設定を動的に調整することができる。デバイス１１０のデバイスレベル電流制限を、デバイス１１０の使用中に調整することにより、温度、バッテリインピーダンス、およびバッテリ状態の変化を反映することができる。たとえば、変化する電流制限を設定することにより、バッテリの経年数、バッテリ温度、デバイス温度、バッテリの充電状態、およびその他のファクタの変化を考慮し得る。結果として、デバイス１１０は、その電流制限を、リアルタイムまたはほぼリアルタイムで変化させることにより、変化する状態に対応することができる。
【００３３】
図１の例において、デバイス１１０は、周期的な測定サイクル中にさまざまなパラメータを求める。たとえば、デバイス１１０は、予め定められた測定間隔１０２で測定動作を実行することにより、バッテリの充電状態、バッテリ温度ＴＢＡＴ、バッテリが供給するシステム電圧ＶＳＹＳ、およびバッテリが供給するシステム電流ＩＳＹＳを検知することができる。これらの測定の結果を用いて電流制限を調整することができる。
【００３４】
デバイス１１０は、たとえば、携帯電話、ラップトップ、タブレット、ウェアラブルデバイス、スマートフォン、セルフォン、計算機、腕時計、モバイルコンピューティングデバイス、またはその他のバッテリ駆動型電子デバイスであってもよい。
【００３５】
デバイス１１０は、バッテリ１１２と、バッテリ燃料ゲージ１１４と、温度センサ１１５と、システム電圧センサ１１６と、システム電流センサ１１８と、実行ブロック（performance  block）１２０と、電力管理モジュール１３０と、デバイス設定１４０と、ユーザインターフェイス１５０とを含む。
【００３６】
バッテリ１１２はデバイス１１０に電力を供給する。バッテリ１１２はたとえばリチウムイオンデバイス、リチウムイオンポリマーデバイス、ニッケル水素デバイス、ニッケルカドミウムデバイス、または電力をデバイス１１０に供給するその他のデバイスであってもよい。バッテリ１１２は、単一のセルまたは複数のセルを含み得るものであり、充電可能であってもよい。
【００３７】
バッテリ１１２は、バッテリインピーダンスＲＢＡＴを有する。バッテリインピーダンスＲＢＡＴは、経時的に変化し得るものであり、多数のファクタに依存し得る。たとえば、バッテリインピーダンスＲＢＡＴは、バッテリの経年数、バッテリ温度、またはバッテリの充電状態に応じて変化し得る。バッテリインピーダンスＲＢＡＴは、バッテリの経年数の増加、バッテリの温度の低下、または充電状態の低下に伴って増加することが多い。
【００３８】
バッテリ燃料ゲージ１１４は、バッテリ１１２に接続され、バッテリの充電状態を示す出力を提供する。バッテリ燃料ゲージ１１４は、バッテリ１１２に一体化されていてもよく、バッテリ１１２から分離した単体であってもよく、または、より大きなバッテリ管理システムの一部であってもよい。バッテリ燃料ゲージ１１４は集積回路を含み得る。
【００３９】
バッテリ燃料ゲージ１１４は、いずれかの方法または複数の方法の組み合わせを用いることにより、バッテリ１１２の充電状態を測定または推定することができる。たとえば、バッテリ燃料ゲージ１１４は、制御された放電をバッテリ１１２に適用することによって充電状態を測定することができる。別の例として、バッテリ燃料ゲージ１１４は、バッテリ１１２の充電および／または放電中にクーロンカウントによって充電状態を推定してもよい。
【００４０】
温度センサ１１５は、バッテリ温度ＴＢＡＴを測定する。温度センサ１１５は、温度を検知する任意の適切なデバイスであればよく、たとえばサーミスタであってもよい。温度センサ１１５はバッテリ１１２に非常に近接して配置されている。たとえば、温度センサ１１５は、バッテリ１１２のパッケージに組み込まれていてもよく、または、バッテリ１１２に接続された回路モジュールに装着されていてもよい。図１に示されるものと同様のいくつかの実装例において、温度センサ１１５は、バッテリ温度ＴＢＡＴを示す出力をバッテリ燃料ゲージ１１４に提供する。
【００４１】
システム電圧センサ１１６は、システム電圧ＶＳＹＳを測定する。システム電圧ＶＳＹＳは、バッテリ１１２からデバイス１１０に与えられる総電圧を表す。これは、バッテリ１１２からデバイス１１０内のすべてのコンポーネントに電力を供給するために与える電圧を含む。システム電圧センサ１１６は、システム電圧ＶＳＹＳを連続的に検知してもよい。これに代えて、システム電圧センサ１１６は、システム電圧ＶＳＹＳを周期的間隔で検知してもよい。これらの周期的間隔は定期的であっても不定期であってもよい。システム電圧センサ１１６は、デバイス１１０内の別のコンポーネントからのクエリまたは信号に応じてシステム電圧ＶＳＹＳを検知してもよい。
【００４２】
システム電流センサ１１８は、システム電流ＩＳＹＳを測定する。システム電流ＩＳＹＳは、バッテリ１１２からデバイス１１０に与えられる総電流を表す。これは、バッテリ１１２がデバイス１１０内のすべてのコンポーネントに電力を供給するために与える電流を含む。システム電流センサ１１８は、システム電流ＩＳＹＳを連続的に検知してもよい。これに代えて、システム電流センサ１１８は、システム電流ＩＳＹＳを周期的間隔で検知してもよい。これらの周期的間隔は定期的であっても不定期であってもよい。システム電流センサ１１８は、デバイス１１０内の別のコンポーネントからのクエリまたは信号に応じてシステム電流ＩＳＹＳを検知してもよい。実行ブロック１２０は、バッテリ１１２から電力を流す、デバイス１１０内のコンポーネントを含む。たとえば、実行ブロック１２０は、中央処理装置（ＣＰＵ）、グラフィックス処理装置（ＧＰＵ）、メモリシステム、外灯、フラッシュ、表示システム、処理モジュール、またはバッテリ１１２から電力を流す、デバイス１１０内のその他任意の要素を含み得る。
【００４３】
電力管理モジュール１３０は、デバイス１１０の消費電力を調節する。電力管理モジュール１３０は、ソフトウェアまたはハードウェアで実現されてもよく、集積回路を含んでいてもよい。消費電力を調節するために、電力管理モジュール１３０は、複数の設定および技術のうちの１つまたはそれらの組み合わせを実現してもよい。たとえば、電力管理モジュール１３０は、デバイス１１０の消費電力を、バッテリ１１２からデバイス１１０に供給されるシステム電流ＩＳＹＳを制限することによって制限してもよい。電力管理モジュール１３０は、電流を、たとえば、個々の実行ブロック１２０を抑制または無効にすることによって制限してもよい。たとえば、電力管理モジュール１３０は、ディスプレイを減光またはオフにしてもよい。別の例として、電力管理モジュール１３０は、消費電力を、動的電圧スケーリングまたは動的周波数スケーリングを実現することによって調節してもよい。
【００４４】
デバイス１１０はデバイス設定１４０を格納し、デバイス設定は、デバイス１１０の動作に影響するパラメータまたは設定であってもよい。デバイス設定１４０は、デバイス１１０の内部、たとえばデバイス１１０のメモリに格納される。
【００４５】
ユーザインターフェイス１５０は、デバイス１１０のユーザがデバイス１１０とやり取りすることを可能にする。たとえば、ユーザは、ユーザインターフェイス１５０を介してデータをデバイス１１０に入力することができる。別の例として、デバイス１１０は、ユーザに対してメッセージを表示してもよく、または、ユーザインターフェイス１５０を介して入力するようユーザを促してもよい。ユーザインターフェイス１５０は、たとえば、タッチスクリーンディスプレイ、ＬＣＤディスプレイ、またはキーボードを含み得る。
【００４６】
いくつかの実装例において、デバイス１１０は、段階（Ａ）〜（Ｅ）に関して説明する動作を実行できる１つ以上の処理モジュールを含む。たとえば、デバイス１１０は、ＣＰＵ、電力管理モジュール１３０、デバイスチップセット、および／またはその他の処理モジュールを、単独でまたは組み合わせて使用することにより、下記動作を実行してもよい。この技術は、ハードウェア、ファームウェア、ソフトウェア、またはこれらの何等かの組み合わせまたは部分的組み合わせで実現してもよい。いくつかの実装例において、オペレーティングシステム、アプリケーション、またはデバイス１１０のその他のソフトウェアが、測定サイクルおよび電力管理動作を管理してもよい。その他の実装例において、タイミング、測定サイクルの特徴、および電流制限の設定を含む電力管理は、オペレーティングシステムから独立してハードウェアモジュールによって実行されてもよい。
【００４７】
段階（Ａ）中に、デバイス１１０は測定サイクルを実行する。測定サイクル中に、デバイス１１０は、デバイス１１０のバッテリおよび／またはその他の側面の各種特性を検知することができる。たとえば、測定サイクル中に、デバイス１１０は、バッテリの充電状態、バッテリ温度ＴＢＡＴ、システム電圧ＶＳＹＳ、およびシステム電流ＩＳＹＳを検知することができる。
【００４８】
バッテリの充電状態は、バッテリ燃料ゲージ１１４によって検知することができる。バッテリ燃料ゲージ１１４は典型的に、バッテリ１１２の充電状態を、たとえばバッテリの満充電容量に対するパーセンテージで示す出力を提供する。たとえば、バッテリ１１２が満充電されたとき、バッテリ燃料ゲージ１１４は、１００％に相当する出力を提供し得る。バッテリ１１２が半分の充電容量の場合、バッテリ燃料ゲージ１１４は、５０％に相当する出力を提供し得る。
【００４９】
バッテリ温度ＴＢＡＴは温度センサ１１５によって検知される。いくつかの実装例において、温度センサ１１５は、バッテリ温度ＴＢＡＴを示す出力をバッテリ燃料ゲージ１１４に与える。
【００５０】
システム電圧ＶＳＹＳは、システム電圧センサ１１６によって検知される。システム電圧ＶＳＹＳは、測定サイクル中にバッテリ１１２からデバイス１１０に与えられる電圧の測定値を表す。電圧ＶＳＹＳは、全体としての、たとえばシステム負荷インピーダンスＲＳＹＳを通してデバイス１１０に供給される電圧を表し、システムインピーダンスＲＳＹＳは、バッテリ１１２から電力を引くデバイス１１０内のすべてのコンポーネントの組み合わされたインピーダンスである。デバイス１１０のシステムインピーダンスＲＳＹＳは、バッテリ１１２のバッテリインピーダンスＲＢＡＴに直列接続されているとみなすことができる。
【００５１】
システム電流ＩＳＹＳは、システム電流センサ１１８によって検知される。システム電流ＩＳＹＳは、測定サイクル中にバッテリ１１２からデバイス１１０に与えられる電流の測定値を表す。たとえば、システム電流ＩＳＹＳは、システム電圧ＶＳＹＳとして測定される電圧の量をバッテリが供給している間に送られる電流を表すことができる。システム電流ＩＳＹＳは、バッテリ１１２から供給される総電流、たとえばバッテリから見たデバイス１１０の総インピーダンスを表すシステム負荷インピーダンスＲＳＹＳに与えられる電流の量を表す。バッテリインピーダンスＲＢＡＴはシステムインピーダンスＲＳＹＳに直列接続されるとみなすことができるので、システム電流ＩＳＹＳもバッテリインピーダンスＲＢＡＴを通るように見える。
【００５２】
段階（Ｂ）において、デバイス１１０は、検知したバッテリの充電状態およびバッテリ温度ＴＢＡＴに対応するバッテリ開放電圧ＯＣＶを求める。バッテリ開放電圧ＯＣＶは、バッテリ１１２が供給できる最大理想電圧である。バッテリ開放電圧ＯＣＶは時間とともに変動し得る。たとえば、バッテリ開放電圧ＯＣＶは典型的に、バッテリの充電状態に応じて変化する。バッテリ開放電圧ＯＣＶは、バッテリ１１２が満充電のときに最大であり、バッテリ１１２の放電に伴って減少する。たとえば、開放電圧ＯＣＶは、バッテリ１１２の充電状態が１００％（満充電）のときに４．３５Ｖであってもよく、バッテリ１１２の充電状態が０％（満放電）になると３．０Ｖに低下してもよい。また、バッテリ開放電圧ＯＣＶは典型的にはバッテリ温度に伴って変化する。
【００５３】
いくつかの実装例において、デバイス１１０は、１つ以上の表を参照することによってバッテリ開放電圧ＯＣＶを求める。１つ以上の表は、バッテリ充電状態およびバッテリ温度を、予測されるバッテリ開放電圧ＯＣＶに対応付ける。たとえば、デバイス１１０は、１つ以上の表をデバイス１１０のメモリシステムに格納し、検知した充電状態および検知したバッテリ温度ＴＢＡＴを用いて、格納されている表のうちの１つの対応する開放電圧を調べてもよい。いくつかの実装例において、デバイス１１０は、１つ以上の表にある値間の補間により、実際に検知した充電状態およびバッテリ温度ＴＢＡＴに対して予測されるバッテリ開放電圧ＯＣＶを求めてもよい。充電状態の表は、予め定められてもよく、たとえば、バッテリ製造者によって決定されてもよく、またはバッテリ燃料ゲージ１１４によって測定されてもよい。
【００５４】
バッテリ開放電圧ＯＣＶは、バッテリインピーダンスＲＢＡＴとシステムインピーダンスＲＳＹＳの直列接続を通して送られるとみなすことができる。非ゼロシステム電流ＩＳＹＳの場合、システム電流ＩＳＹＳのために内部バッテリインピーダンスＲＢＡＴを通して電圧降下ＶＶＡＴ，ＩＲが生じる。
【００５５】
ＶＢＡＴ，ＩＲ＝ＩＳＹＳ・ＲＢＡＴ  （１）
結果として、バッテリ１１２からデバイス１１０に送られるシステム電圧ＶＳＹＳは、バッテリ開放電圧ＯＣＶから、バッテリインピーダンスＲＢＡＴによる電圧降下分、減少する。
【００５６】
ＶＳＹＳ＝ＯＣＶ−ＶＢＡＴ，ＩＲ  （２）
段階（Ｃ）において、デバイス１１０は、動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮを求める。動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮは、バッテリ１１２およびデバイス１１０の現在の状態における、デバイスに対する電流しきい値を表す。たとえば、動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮは、システム電圧ＶＳＹＳを電圧しきい値未満に低下させることなくバッテリ１１２がデバイス１１０に供給できるシステム電流ＩＳＹＳの最大量を表す。このしきい値は、たとえば、バッテリの放電電圧の終端、電子デバイスの動作に必要な最小電圧、または、それを下回ると電子デバイスが自動的にパワーダウンするように構成されている最小電圧であってもよい。たとえば、電圧しきい値は、システム低電圧ロックアウト電圧（under-voltage lock-out）ＶＵＶＬＯであってもよい。
【００５７】
システム低電圧ロックアウト電圧ＶＵＶＬＯは、デバイス１１０の必要動作電圧に関連する最小しきい値電圧である。システム電圧ＶＳＹＳがシステム低電圧ロックアウト電圧ＶＵＶＬＯ未満に降下したことが検出されると、デバイス１１０はシャットダウンすることにより、デバイス１１０が必要動作電圧未満で動作することがないようにする。たとえば、システム低電圧ロックアウト電圧ＶＵＶＬＯが２．７Ｖでありデバイス１１０が検知したシステム電圧ＶＳＹＳが２．６９Ｖである場合、デバイス１１０はシャットダウンプロセスを開始してもよい。システム低電圧ロックアウト電圧ＶＵＶＬＯは、予め定められてもよく、時間に伴って変化しなくてもよく、デバイス設定１４０に格納されてもよい。たとえば、システム低電圧ロックアウト電圧ＶＵＶＬＯは、デバイス製造者が設定するシステム設定であってもよい。
【００５８】
ある条件下で、システム電圧ＶＳＹＳは、バッテリ充電状態が低いために、システム低電圧ロックアウト電圧ＶＵＶＬＯ未満に降下することがある。たとえば、デバイス１１０の動作中に、バッテリ充電状態はバッテリ１１２の放電に伴って低下する。バッテリ充電状態が低下すると、バッテリ１１２からデバイス１１０に送られる開放電圧ＯＣＶも低下する。式（２）が示すように、バッテリ開放電圧ＯＣＶが低下すると、システム電圧ＶＳＹＳも低下する。バッテリ１１２が、システム電圧ＶＳＹＳをシステム低電圧ロックアウト電圧ＶＵＶＬＯ未満に低下させる充電状態まで放電すると、バッテリ１１２はもはや必要動作電圧を供給することができず、デバイス１１０はパワーダウンする可能性がある。
【００５９】
ある条件下で、システム電圧ＶＳＹＳは、たとえデバイス１１０が要求する動作電圧をバッテリ１１２が供給できるとしても、システム低電圧ロックアウト電圧ＶＵＶＬＯ未満に降下することがある。たとえば、システム電圧ＶＳＹＳは、システム電流ＩＳＹＳの増加のために、システム低電圧ロックアウト電圧ＶＵＶＬＯ未満に降下する場合がある。システム電流ＩＳＹＳの増加は、たとえば、デバイス１１０における計算需要の増加によって生じる場合がある。バッテリインピーダンスＲＢＡＴおよびシステムインピーダンスＲＳＹＳは直列接続されているとみなすことができるので、システム電流ＩＳＹＳが増加すると、式（１）が示すように、バッテリインピーダンスＲＢＡＴによる電圧降下ＶＢＡＴの増加が発生するであろう。電圧降下ＶＢＡＴが増加すると、式（２）が示すようにシステム電圧ＶＳＹＳは減少する。システム電圧ＶＳＹＳがシステム低電圧ロックアウト電圧ＶＵＶＬＯ未満に低下すると、デバイス１１０はパワーダウンする可能性がある。ここで、バッテリ１１２は、低システム電流ＩＳＹＳで必要なシステム電圧ＶＳＹＳを生成するように十分充電されてもよい。この場合、バッテリ１１２はデバイス１１０が要求する動作電圧を供給するのに十分な電荷を保持しているので、デバイス１１０のシャットダウンは時期尚早と考えられる。
【００６０】
動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮは、システム電圧ＶＳＹＳをシステム低電圧ロックアウト電圧ＶＵＶＬＯ未満に低下させてデバイス１１０を過早のシャットダウンに至らしめることなく、バッテリ１１２がデバイス１１０に供給できる最大システム電流ＩＳＹＳを表す。動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮは経時的に変動し得る。特に、動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮは、バッテリの状態に基づいて経時的に変動し得る。たとえば、動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮは、バッテリ１１２の経年数、バッテリ１１２の充電状態、およびバッテリ温度ＴＢＡＴに依存し得るバッテリインピーダンスＲＢＡＴに基づいて、経時的に変動し得る。動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮはまた、その他のファクタ、たとえばデバイス状態に基づいて変動し得る。
【００６１】
いくつかの実装例において、ＩＬＩＭＩＴ，ＤＹＮを求めるために、デバイス１１０は、検知したシステム電圧ＶＳＹＳ、検知したシステム電流ＩＳＹＳ、および求めた現在のバッテリ状態に基づいて、現在のバッテリインピーダンスＲＲＡＴを求める。
【００６２】
【数１】
0006790290.tif 000002
【００６３】
式中、バッテリ開放電圧ＯＣＶは、段階（Ｂ）で、検知したバッテリ充電状態およびバッテリ温度ＴＢＡＴに基づいて求めたものである。次に、動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮを以下のようにして求めることができる。
【００６４】
【数２】
0006790290.tif 000003
【００６５】
式中、現在のバッテリインピーダンスＲＢＡＴは式（３）によって記述される。求めたバッテリインピーダンスＲＢＡＴは、測定時のバッテリのインピーダンスを表し、バッテリ経年数、バッテリ状態、およびバッテリ温度を含むファクタを考慮する。いくつかの実装例において、ＲＢＡＴは、バッテリとシステム負荷との間のいずれかの接続のインピーダンスを含み得る。
【００６６】
段階（Ｄ）で、デバイス１１０は、電力管理モジュール１３０が使用する電力管理電流制限ＩＬＩＭＩＴ，ＰＭを求めることにより、デバイス１１０の電力使用を調節する。いくつかの実装例において、電力管理モジュール１３０は、電力管理設定および技術を適用することにより、システム電流ＩＳＹＳが電力管理電流制限ＩＬＩＭＩＴ，ＰＭを上回らないようにしてもよい。
【００６７】
システム電流ＩＳＹＳの制限は、デバイス１１０の挙動に対するさまざまな望ましい効果と望ましくない効果とを有し得る。たとえば、システム電流ＩＳＹＳの制限は、システム電流ＩＳＹＳの一時的な増加（たとえばスパイク）によるデバイス１１０の過早のシャットダウンを防止するという望ましい効果がある。システム電流ＩＳＹＳの制限には、バッテリ１１２の放電を減速することによってバッテリランタイムを延ばすという望ましい効果もある。システム電流ＩＳＹＳの制限は、デバイス１１０の性能を抑制するという望ましくない効果を有し得る。この場合、デバイス１１０が利用できる電流を制限すると、プロセスの実行が低速化する、実行するプロセスが少なくなる、またはデバイス性能に他の劣化が生じる。
【００６８】
デバイス１１０の挙動に対するこれらの効果の相対的影響は、電力管理電流制限ＩＬＩＭＩＴ，ＰＭに基づいて変化し得る。たとえば、電力管理電流制限ＩＬＩＭＩＴ，ＰＭが小さい場合、デバイス１１０に送られるシステム電流ＩＳＹＳに対してより大きな限定的な制限が課される。システム電流ＩＳＹＳをさらに限定すると、バッテリ１１２の放電速度が低下することにより、バッテリランタイムが長くなる。しかしながら、システム電流ＩＳＹＳをさらに限定すると、デバイス動作を完了するためにデバイス１１０が利用できる電流を制限することで性能を一層抑制することにもなる。代わりに、電力管理電流制限ＩＬＩＭＩＴ，ＰＭが大きい場合、システム電流ＩＳＹＳに課される限定的制限は少なくなる。システム電流ＩＳＹＳに対する制限を小さくすると、デバイス動作を完了するためにデバイス１１０に提供されるシステム電流ＩＳＹＳが増すので、デバイス性能は向上する。しかしながら、システム電流ＩＳＹＳの制限を少なくすると、バッテリがより高速で放電されるので、バッテリランタイムは減少する。
【００６９】
いくつかの実装例において、デバイス１１０は、システム電流ＩＳＹＳの制限の望ましい効果と望ましくない効果との間の選択のためまたはバランスを取るために、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを決定してもよい。たとえば、デバイス１１０は、バッテリランタイムを延ばす、より高いデバイス性能を得る、またはバッテリランタイムの延長とより高い性能との間のトレードオフのために、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを決定してもよい。たとえば、デバイス１１０は、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを比較的低い値に設定することにより、バッテリランタイムを延ばすことができる。別の例として、デバイス１１０は、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを比較的高い値に設定することにより、より高いデバイス性能を得ることができる。第３の例として、デバイス１１１０は、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを、中間の値に設定することにより、バッテリランタイムとデバイス性能とのトレードオフを得ることができる。
【００７０】
電力管理電流制限ＩＬＩＭＩＴ，ＰＭは、デバイス１１０のその他１つ以上の電流制限に基づいて生成することができる。たとえば、デバイス１１０は、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸを示す設定を格納することができる。固定された電流下限ＩＬＩＭＩＴ，ＦＩＸは、最悪の場合のバッテリ状態においてシステム電圧ＶＳＹＳがシステム低電圧ロックアウト電圧ＶＵＶＬＯ未満に降下することを防止するために、決定してもよい。最悪の場合のバッテリ状態は、古く、低温で、満放電状態に近いバッテリに相当し得る。固定された電流下限ＩＬＩＭＩＴ，ＦＩＸは予め定められてもよい。たとえば、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸは、デバイス１１０の製造者が設定するまたはデバイス１１０のソフトウェアが設定するシステム設定であってもよい。固定された電流下限ＩＬＩＭＩＴ，ＦＩＸは典型的に、動的最大電流制限ＩＤＹＮ，ＬＩＭよりも小さい。
【００７１】
いくつかの実装例において、デバイス１１０は、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸ、動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮ、または、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸと動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮとの間の任意の値に設定し得る。たとえば、デバイス１１０は、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸに設定することにより、バッテリランタイムを延ばすことができる。これに代えて、デバイス１１０は、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮに設定することにより、より高いデバイス性能を得てもよい。デバイス１１０は、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸと動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮとの間の値に設定することにより、バッテリランタイムとより高いデバイス性能とのバランスを取ってもよい。
【００７２】
いくつかの実装例において、ユーザは、電力管理電流制限ＩＬＩＭＩＴ，ＰＭの特徴を変化させることができる。たとえば、ユーザインターフェイス１５０を介して、ユーザは、バッテリランタイムの延長、より高いデバイス性能の獲得、またはバッテリランタイムの延長とより高いデバイス性能とのバランスを強調する、デバイス１１０のための電力管理選好を選択してもよい。ユーザが、バッテリランタイムの延長を強調する電力管理選好を選択した場合、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸに設定すればよい。ユーザが、より高いデバイス性能の獲得を強調する電力管理選好を選択した場合、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを、動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮに設定すればよい。ユーザが、バッテリランタイムの延長とより高いデバイス性能とのバランスを取る電力管理選好を選択した場合、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸと動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮとの間の値に設定すればよい。
【００７３】
個人ユーザは、別の個人ユーザの電力管理選好と異なる電力管理選好を選択できる。たとえば、あるユーザがバッテリランタイムの延長を強調する電力管理選好を選択し、別のユーザがより高いデバイス性能の獲得を強調する電力管理選好を選択する場合がある。また、個人ユーザは、異なる時期に異なる電力管理選好を選択することもある。たとえば、ユーザは、バッテリ１１２を長時間充電できない場合は、バッテリランタイムの延長を強調する電力管理選好を選択してもよい。これに代えて、同じユーザが、バッテリ１１２を近い将来充電できる場合はより高いデバイス性能の獲得を強調する電力管理選好を選択してもよい。
【００７４】
いくつかの実装例において、ユーザが選択する電力管理選好を、パラメータαで表し得る。パラメータαは０と１との間であり、０または１に等しくてもよい。パラメータαは、ユーザによって選択されユーザインターフェイス１５０を介して入力されてもよい。パラメータαにより、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを、
ＩＬＩＭＩＴ，ＰＭ＝α・（ＩＬＩＭＩＴ，ＤＹＮ−ＩＬＩＭＩＴ，ＦＩＸ）＋ＩＬＩＭＩＴ，ＦＩＸ  （６）
に従い、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸと動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮとの間になるように決定することができる。
【００７５】
αが０に等しい場合、電力管理電流制限ＩＬＩＭＩＴ，ＰＭはＩＬＩＭＩＴ，ＦＩＸに等しい。αが１に等しい場合、電力管理電流制限ＩＬＩＭＩＴ，ＰＭはＩＬＩＭＩＴ，ＤＹＮに等しい。αが０と１との間の任意の値である場合、電力管理電流制限ＩＬＩＭＩＴ，ＰＭはＩＬＩＭＩＴ，ＦＩＸとＩＬＩＭＩＴ，ＤＹＮとの間である。式６に示されるように、デバイス１１０は、ユーザ嗜好に関する情報を用いて電力管理電流制限ＩＬＩＭＩＴ，ＰＭの値を補完することができ、たとえば、重み付けまたはスケーリングファクタを用いて電流制限をある範囲内で変化させることができる。
【００７６】
段階（Ｅ）において、電力管理モジュール１３０は、デバイス１１０内の電力管理設定および技術を動的に調整することにより、バッテリ１１２から流れる電流が電力管理電流制限ＩＬＩＭＩＴ，ＰＭ以下に保たれることを保証する。たとえば、デバイス１１０は、異なる設定の異なる実行ブロック１２０の典型的なまたは予測される電流の流れを示すデータを格納してもよい。異なる動作状態の異なるコンポーネントの電力使用を特徴付けるこのデータに基づいて、電力管理モジュール１３０は、各実行ブロック１２０に対し電力管理設定を設定して、デバイスが必要とする複合電流が、電力管理電流制限ＩＬＩＭＩＴ，ＰＭ未満になるようにすることができる。電力管理設定は、たとえば、ディスプレイの輝度、ＣＰＵ周波数、または所定のブロックを有効にするか無効にするかを制御してもよい。このようにして、電力管理モジュールは、実行ブロック１２０の動作モードに対して制限を設定することにより、電流を現在の電力管理電流制限未満に保つことができる。たとえば、動作周波数が異なるＣＰＵ、ＧＰＵ、またはデバイス１１０のその他のプロセッサの電流の流れを示す格納された情報から、電力管理モジュール１３０は、動作周波数を制限する周波数制限を、典型的な、またはフルパワーでの動作時の最大動作周波数未満に設定することができる。別の例として、電力管理モジュール１３０は、１つ以上の処理コアを無効にすることにより、電流の流れを制限してもよい。もう１つの例として、電力管理モジュール１３０は、無線トランシーバ用の電力レベルを制限してもよく、または無線トランシーバが動作できるモードを制限してもよい。電力管理モジュール１３０が課す制限の程度および種類は、電力管理電流制限ＩＬＩＭＩＴ，ＰＭをの変化に応じて動的に変更することができる。
【００７７】
いくつかの実装例において、電力管理モジュール１３０は、各実行ブロック１２０の設定を調整することにより、いくつかのブロックを他のブロックよりも優先してもよい。たとえば、電力管理モジュール１３０は、ＣＰＵまたはモデムのような、動作にとって重要な実行ブロック１２０にはより多くの電流を割り当て、ディスプレイまたはカメラフラッシュのような、デバイス動作にとっての重要度が低いブロックについては電流を制限してもよい。
【００７８】
デバイス１１０の挙動は、電力管理電流制限ＩＬＩＭＩＴ，ＰＭの値に応じて変化し得る。たとえば、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸに等しい電力管理電流制限ＩＬＩＭＩＴ，ＰＭは、デバイス１１０に対しより大きな限定的電流制限を課す。より大きな限定的電流制限は、バッテリ１１２の放電速度を減じることによってバッテリランタイムを延ばすが、デバイス動作に利用できる電流を制限することによってデバイス性能を一層抑制することにもなる。動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮに等しい電力管理電流制限ＩＬＩＭＩＴ，ＰＭは、デバイス１１０に対しより小さな電流制限を課す。より小さな電流制限は、デバイス動作のためにより多くの電流をデバイス１１０に供給することによってデバイス性能を高めることになるが、バッテリをより高速で放電するのでバッテリランタイムは減少する。固定された電流下限ＩＬＩＭＩＴ，ＦＩＸと動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮとの間の中間値に等しい電力管理電流制限ＩＬＩＭＩＴ，ＰＭは、バッテリランタイムとデバイス性能とのバランスを取る電流制限をデバイス１１０に課す。たとえば、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸよりも動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮに近い電力管理電流制限ＩＬＩＭＩＴ，ＰＭは、わずかに延長されたバッテリランタイムと実質的により高いデバイス性能をもたらし得るが、動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮよりも固定された電流下限ＩＬＩＭＩＴ，ＦＩＸに近い電力管理電流制限ＩＬＩＭＩＴ，ＰＭは、相当に延長されたバッテリランタイムとわずかに向上したデバイス性能をもたらし得る。
【００７９】
電力管理電流制限ＩＬＩＭＩＴ，ＰＭを、ユーザが、自身の電力管理選好に基づいて変更してもよい。ユーザの嗜好に基づいて電力管理電流制限ＩＬＩＭＩＴ，ＰＭを設定することにより、デバイス１１０は、個人ユーザに対してカスタマイズされた電力管理方法を実現できる。
【００８０】
いくつかの実装例において、システム１００は、段階（Ａ）〜（Ｅ）を周期的時間間隔１０２で繰り返す。時間間隔１０２は変化してもよく定期的または不定期であってもよい。たとえば、時間間隔１０２は、デバイス１１０内の電力管理ＩＣの、たとえばマイクロ秒のオーダのクロックサイクルであってもよい。段階（Ａ）〜（Ｅ）は他のレートで実行されてもよく、たとえば、測定サイクルおよび／または電流制限の決定が、１Ｍｈｚ、１００ｋＨｚ、１０ｋＨｚ、１ｋＨｚ、１００Ｈｚ、１０Ｈｚなどのレートで実行されてもよい。いくつかの実装例において、時間間隔１０２は数秒または数分であってもよい。一般的に、測定の実行および電流制限のアップデートは、温度、充電状態、およびバッテリインピーダンスに影響するその他のファクタの変化に対応するために、毎秒少なくとも１回、または場合によってはより高い頻度で実行することが好都合となり得る。それでもなお、負荷電流と比較してバッテリ容量が比較的大きい、または負荷および環境条件が安定しているいくつかのシステムの場合、電流制限の更新頻度はより低く、たとえば数分ごとに１回であってもよい。図１の例において、時間間隔１０２は１ミリ秒であり、これは、システム１００が段階（Ａ）〜（Ｅ）をミリ秒ごとに１回、たとえば１ｋＨというレートで実行することを示す。
【００８１】
段階（Ａ）〜（Ｅ）を周期的時間間隔で繰り返すことにより、システム１００は、バッテリ充電状態、バッテリ経年数、およびバッテリ温度のような変化する条件を考慮するために、経時的に変化する電流制限を決定することができる。ある時間間隔１０２の場合、電流制限をリアルタイムまたはほぼリアルタイムで決定することにより、システムの現在の状態を反映することいができる。いくつかの実装例において、デバイス１１０は、リアルタイムまたはほぼリアルタイムのフィードバック制御を取り入れることにより、システム電圧ＶＳＹＳがシステム低電圧ロックアウト電圧ＶＵＶＬＯ未満に一瞬降下した場合にデバイス１１０がパワーダウンするのを防止できる。たとえば、測定サイクル中にシステム電圧ＶＳＹＳがシステム低電圧ロックアウト電圧ＶＵＶＬＯ未満に降下したとデバイス１１０が判断した場合、デバイス１１０は、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを減じることができ、これは、システム電流ＩＳＹＳを減じシステム電圧ＶＳＹＳを増す設定を実現することを電力管理モジュール１３０に促す。デバイス１１０がシャットダウンを開始する前にシステム電圧ＶＳＹＳが増加してシステム低電圧ロックアウト電圧ＶＵＶＬＯを上回った場合、デバイス１１０が不足電圧状態のためにパワーオフすることを防止できる。
【００８２】
各時間間隔１０２において、システム１００は、ユーザ電力管理選好を決定し電力管理電流制限ＩＬＩＭＩＴ，ＰＭを設定することにより、システムの現在の状態および現在のユーザ電力管理選好の両方を反映させることができる。このようにして、システム１００は、現在のユーザの現在の嗜好に基づいて実現されるカスタム電力管理方法を経時的に変化させることにより、ユーザ体験を改善できる。
【００８３】
図２は、動的バッテリ電力管理選好を指定するためのユーザインターフェイスの一例である。ユーザインターフェイス２５０は、電力管理システム、たとえば図１の例に示されるシステム１００を実現するバッテリ駆動型デバイス２１０の一部である。
【００８４】
図２の例において、ユーザインターフェイス２５０はタッチスクリーンディスプレイであり、これを介してデバイス２１０はメッセージを表示し、ユーザインターフェイス２５０を介した入力をユーザに促すことができる。ユーザは、ユーザインターフェイス２５０を介してデータをデバイス２１０に入力することもできる。
【００８５】
デバイス２１０は、ユーザインターフェイス２５０上に、ユーザに対するメッセージを表示する。このメッセージは、電力管理選好の選択をユーザに促し、選好の選択方法についての指示を提供する。図２の例において、メッセージは、バッテリランタイムとシステム性能との間でバーをスライドさせることによって電力管理選好を選択するようユーザに指示する。バッテリランタイムとデバイス性能との間でスケールに沿ってバー２５５の位置を調整することにより、ユーザは、電力管理に関する選好をデバイス２１０に入力することができる。
【００８６】
たとえば、バッテリランタイムの延長を強調する電力管理設定をデバイス２１０が決定することをユーザが好む場合、ユーザはバー２５５をスケールの左端に置けばよい。この場合、デバイス２１０は、バッテリランタイムを最大にする電力管理設定を決定することができる。これに代えて、より高いデバイス性能を強調する電力管理設定をデバイス２１０が決定することをユーザが好む場合、ユーザはバー２５５をスケールの右端に置けばよい。この場合、デバイス２１０は、デバイス性能を最大にする電力管理設定を決定することができる。
【００８７】
いくつかの実装例において、ユーザは、バー２５５をスケールに沿う中間位置に置くこともでき、この場合、デバイス２１０は、バッテリランタイムの延長とより高いデバイス性能の獲得とのトレードオフを得る電力管理設定を決定することができる。バー２５５の相対位置は、電力管理設定の決定において、バッテリランタイムの延長およびより高いデバイス性能の獲得の相対的な重要性を示すことができる。たとえば、スケールの中間点に置かれたバー２５５は、バッテリランタイムの延長とより高いデバイス性能の獲得との間の等しいトレードオフを得る電力管理設定をデバイス２１０が決定することを示し得る。これに代えて、スケールの左端とスケールの中間点との間に置かれたバー２５５は、ランタイムの延長とより高いデバイス性能の獲得との間のトレードオフを得るがバッテリランタイムの延長をより大きく強調する電力管理設定をデバイス２１０が決定することを示し得る。
【００８８】
いくつかの実装例において、デバイス２１０は、ユーザが入力した電力管理選好を使用することにより、カスタマイズされた電力管理設定を決定し得る。たとえば、デバイス２１０は、バー２５５の位置を、図１の段階（Ｄ）において電力管理電流制限ＩＬＩＭＩＴ，ＰＭを決定するために使用されるパラメータαの値に対応付けることができる。図２の例の場合、スケールの左端に置かれたバーは、αの値０に対応し、スケールの右端に置かれたバーは、αの値１に対応し、スケールの左端と右端との間の位置に置かれたバーは、αの値０と１との間の値に対応する。図２に示される特定の例において、バー２５５はスケールの左端近くの、スケールの右端までの距離の約２５％のところにあり、これは、αの値０．２５に対応する。
【００８９】
ユーザインターフェイス２５０は、さまざまな種類のコントロールのうちのいずれかを提供することにより、電力管理選好をユーザが指定できるようにすることができる。たとえば、ユーザインターフェイス２５０は、複数の選択可能なオプションまたはプロファイル、ダイヤル、数値入力フィールド、ドロップボックス、またはスライディングスケールを含み得る。
【００９０】
図３は、過早デバイスシャットダウンにつながり得るバッテリ管理の一例を示すグラフである。ここで、過早デバイスシャットダウンは、デバイスが、そのバッテリが満放電に近くなる前にパワーダウンする状況、たとえば不足電圧保護時に、バッテリがデバイスの動作を続けるのに十分な電荷を保持していてもデバイスがパワーダウンする状況を意味する。過早シャットダウンの時点で、バッテリはまだ、デバイスが低電流レベルを用いて動作するのに十分な電圧を供給できる。図３の例において、システム電流ＩＳＹＳが増加すると、バッテリインピーダンスＲＢＡＴを通して電圧降下が発生し、これが、システム電圧ＶＳＹＳをシステム低電圧ロックアウト電圧ＶＵＶＬＯ未満に低下させる。システム電圧ＶＳＹＳの降下により、デバイスはバッテリば満放電に近くなる前にパワーダウンする。
【００９１】
グラフ３００は、バッテリ開放電圧ＯＣＶ、システム電圧ＶＳＹＳ、およびシステム電流ＩＳＹＳを、バッテリ充電状態の関数としてプロットする。バッテリ開放電圧ＯＣＶは、バッテリ充電状態が１００％（満充電）のときに高い値である。バッテリが放電しバッテリ充電状態が０％（満放電）まで低下すると、バッテリ開放電圧ＯＣＶは低下する。
【００９２】
システム低電圧ロックアウト電圧ＶＵＶＬＯは、デバイスがパワーダウンするシステム電圧ＶＳＹＳを定める。図３の例において、システム低電圧ロックアウト電圧ＶＵＶＬＯは、位置３１５が示すように、満放電のバッテリのバッテリ開放電圧ＯＣＶの近くに設定される。
【００９３】
グラフ３００に示されるように、所定のバッテリ充電状態の場合、システム電圧ＶＳＹＳは、バッテリ開放電圧よりも、システム電流ＩＳＹＳにバッテリインピーダンスＲＢＡＴを乗算したものに等しい電圧だけ、小さい。システム電流ＩＳＹＳが増加すると、バッテリインピーダンスＲＢＡＴは、増大した電流レベルにおいてバッテリがシステムに供給できる電圧を低下させる傾向がある。結果としてシステム電圧ＶＳＹＳは、位置３２５が示すように、システム低電圧ロックアウト電圧ＶＵＶＬＯ未満に降下し得る。システム電流ＩＳＹＳは、たとえばデバイス内で処理需要が増加した場合、増加する場合がある。
【００９４】
システム電圧ＶＳＹＳは、位置３２５でシステム低電圧ロックアウト電圧ＶＵＶＬＯは未満に低下するので、バッテリ駆動型デバイスはパワーダウンする。しかしながら、位置３３５に示されるように、シャットダウンの時点で、バッテリ開放電圧ＯＣＶは、システム低電圧ロックアウト電圧ＶＵＶＬＯはよりもはるかに大きく、バッテリ充電状態は、０％よりも大幅に大きい状態を保っている。デバイスは引き続きより低いシステム電流ＩＳＹＳで動作することができ、よって、デバイスシャットダウンは過早である。
【００９５】
いくつかの実装例において、バッテリ駆動型デバイスは、システム電流ＩＳＹＳを制限する図１のシステム１００のような電力管理システムを使用する。システム電流ＩＳＹＳを制限することにより、システム電圧ＶＳＹＳがシステム低電圧ロックアウト電圧ＶＵＶＬＯ未満に降下することを防止し、そうしてデバイスの過早パワーダウンを防止することができる。
【００９６】
図４および図５は、バッテリランタイムまたはデバイス性能が優先されるときのデバイス挙動を比較する例を示す。図４は、デバイスが電流制限をバッテリランタイムを延ばすように設定しこれがデバイス性能の制限にもつながる場合のデバイス挙動の一例を示す。図５は、デバイスが電流制限をデバイス性能の向上を得るように設定しこれがバッテリランタイムの制限にもつながる場合のデバイス挙動の一例を示す。
【００９７】
図４および図５の例双方において、デバイスは、電力管理電流制限ＩＬＩＭＩＴ，ＰＭを、過早デバイスシャットダウンを防止するように設定する。図４の例において、バッテリランタイムが優先され、したがって電力管理電流制限ＩＬＩＭＩＴ，ＰＭは、より大きな限定的電流制限である固定された電流下限ＩＬＩＭＩＴ，ＦＩＸに設定される。図５の例において、デバイス性能が優先され、したがって電力管理電流制限ＩＬＩＭＩＴ，ＰＭは、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸよりも大きくしたがってより小さな限定的電流制限である動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮに設定される。
【００９８】
図４および図５それぞれの上側のグラフ４１５および５１５はそれぞれ、システム電圧ＶＳＹＳを、デバイス動作中の時間の関数として示す。デバイスがいつパワーダウンするかを決めるシステム低電圧ロックアウト電圧ＶＵＶＬＯが示される。システム電圧ＶＳＹＳがシステム低電圧ロックアウト電圧ＶＵＶＬＯ未満に降下した場合、デバイスはパワーダウンする。
【００９９】
図４および図５それぞれの中間のグラフ４２５および５２５は、システム電流ＩＳＹＳを、デバイス動作中の時間の関数として示す。どちらのグラフにも、それぞれの電力管理制限電流ＩＬＩＭＩＴ，ＰＭが示される。図５のグラフ５２５では、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸも参考のために示されている。
【０１００】
図４および図５それぞれの下側のグラフ４３５および５３５は、バッテリ充電状態を、デバイス動作中の時間の関数としてプロットする。どちらの例でも、グラフの左側で、バッテリは１００％の充電状態から始まっている。バッテリの充電状態はデバイスが動作するのに伴って低下する。
【０１０１】
図４の例では、時間フレーム４４５の始まりにおいて、デバイスは、システム電流ＩＳＹＳを、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸに等しい電力管理電流制限ＩＬＩＭＩＴ，ＰＭに制限する。グラフ４２５に示されるように、時間フレーム４４５の中において、システム電流ＩＳＹＳは、固定された電流下限ＩＬＩＭＩＴ，ＦＩＸ未満に保たれる。
【０１０２】
グラフ４１５に示されるように、システム電流ＩＳＹＳを制限することにより、システム電圧ＶＳＹＳがシステム低電圧ロックアウト電圧ＶＵＶＬＯ未満に降下してデバイスシャットダウンを引き起こすことを防止する。時間フレーム４４５において、システム電圧ＶＳＹＳは、システム低電圧ロックアウト電圧ＶＵＶＬＯのかなり上に保たれ、システム電流ＩＳＹＳは、デバイスのシャットダウンを引き起こすことなく増加する余地があることを示す。システム電圧ＶＳＹＳとシステム低電圧ロックアウト電圧ＶＵＶＬＯとの間のマージン４５５は、デバイス性能が過剰に抑制される程度（すなわちデバイス性能は必要以上に制限される）の表示を提供する。グラフ４１５において、マージン４５５が大きいことは、デバイスが大幅に過剰抑制され性能が制限されることを示している。
【０１０３】
グラフ４３５に示されるように、より大きな制限システム電流ＩＳＹＳは、結果として、時間フレーム４４５におけるバッテリ充電状態の小さな低下をもたらすが、時間フレーム４４５の終わりにおいて（位置４６５）相当な電荷がバッテリに残っている。バッテリに相当な電荷が残っていることは、バッテリランタイムが延びることを示す。
【０１０４】
これに対し、図５の例では、時間フレーム５４５の始まりにおいて、デバイスは、システム電流ＩＳＹＳを、動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮに等しい電力管理電流制限ＩＬＩＭＩＴ，ＰＭに制限する。グラフ５２５に示されるように、時間フレーム５４５において、システム電流ＩＳＹＳは動的最大電流制限ＩＬＩＭＩＴ，ＤＹＮ未満に保たれる。
【０１０５】
グラフ４１５のように、グラフ５１５は、システム電流ＩＳＹＳを制限することにより、システム電圧ＶＳＹＳがシステム低電圧ロックアウト電圧ＶＵＶＬＯ未満に降下するのを防止することを示す。時間フレーム５４５において、システム電圧ＶＳＹＳは、システム低電圧ロックアウト電圧ＶＵＶＬＯより低くはないがその近くまで降下し、システム電流ＩＳＹＳが、デバイスシャットダウンを引き起こすことなく可能な最大電流レベル近くであることを示す。グラフ５１５において、マージン５５５の程度が小さいことは、デバイスの過剰抑制が最小であることを示し、そうすると、図４に示される動作よりも高い性能が得られる。
【０１０６】
グラフ５３５に示されるように、システム電流ＩＳＹＳが高いことにより、時間フレーム５４５におけるバッテリ充電状態は大幅に低下する。バッテリは、時間フレーム５５５の最後（位置５６５）で満放電（充電状態０％）になる。時間フレーム５５５中のバッテリの完全な枯渇は、バッテリランタイムが図４に示される動作と比較して制限されることを示す。
【０１０７】
いくつかの実装例において、図１のシステム１００のような電力管理システムは、バッテリランタイムを延ばす、より高いデバイス性能を獲得する、またはバッテリランタイムの延長とより高いデバイス性能の獲得との間のトレードオフを得るために選択できる電力管理電流制限ＩＬＩＭＩＴ，ＰＭを求める。電力管理電流制限ＩＬＩＭＩＴ，ＰＭは、ユーザからの入力なしで決定されてもよく、またはユーザが入力する選好に応じて変わり得る。
【０１０８】
図６は、動的バッテリ電力管理のためのプロセス６００を示すフローチャートである。プロセス６００は、図１のデバイス１１０のようなバッテリ駆動型電子デバイスが実行できる。デバイスは、少なくともバッテリと、１つ以上のセンサと、電力管理システムとを含む。１つ以上のセンサは、バッテリから供給される電圧、バッテリから供給される電流、バッテリ温度、および／またはバッテリ充電状態を検知するように構成されてもよい。デバイスは、たとえば携帯電話であってもよい。
【０１０９】
プロセス６００において、デバイスは、バッテリから供給される電圧およびバッテリから供給される電流を検知する（６０２）。たとえば、デバイスは、デバイスの１つ以上のセンサを用いて、バッテリからデバイスに送られる総電圧およびバッテリからデバイスに送られる総電流を検知してもよい。
【０１１０】
デバイスは、バッテリの現在の状態を求める（６０４）。たとえば、デバイスは、バッテリの開放電圧ＯＣＶを示すデータを取得することにより、バッテリの状態を求めてもよい。また、デバイスは、場合によってはバッテリ燃料ゲージの出力から、検知したバッテリ充電状態および検知したバッテリ温度を得ることにより、バッテリの状態を求めてもよい。デバイスは、バッテリ充電状態およびバッテリ温度に基づいて、たとえば、バッテリ充電状態およびバッテリ温度をバッテリ開放電圧ＯＣＶに対応付けるルックアップテーブルを調べることにより、バッテリ開放電圧ＯＣＶを求めてもよい。
【０１１１】
検知した電圧および電流ならびに求めたバッテリの現在の状態に基づいて、デバイスは電流制限を求めれ鵜（６０６）。たとえば、デバイスは電圧しきい値を有していてもよく、デバイスは、電圧しきい値未満の電圧の検出に応じてパワーダウンするように構成される。検知した電圧、検知した電流、および求めたバッテリの状態に基づいて、デバイスは、バッテリが供給する電圧が予め定められた電圧しきい値未満に降下しない状態でバッテリが供給できる電流の量を示す最大電流しきい値を求めることができる。次に、デバイスは、電流制限を最大電流しきい値として決定することができる。
【０１１２】
また、デバイスは、検知した電圧、検知した電流、検知したバッテリ温度、および／または検知したバッテリ充電状態に基づいて、バッテリインピーダンスを決定し得る。デバイスは、バッテリインピーダンスを用いてデバイスの電流を決定してもよい。
【０１１３】
デバイスは、デバイスに対するユーザの電力管理選好を示すユーザ入力を受けるように構成されたユーザインターフェイスを有し得る。ユーザの電力管理選好に基づいて、デバイスは、最小電流しきい値から最大電流しきい値までの範囲内で電流制限を選択することによって電流制限を決定し得る。この場合、最大および最小電流しきい値はデバイスによって決定される。
【０１１４】
次に、デバイスは、電子デバイスの電力使用を管理することにより、バッテリからの電流の流れを、電流制限以下に保つ（６０８）。たとえば、デバイスは、異なるデバイスコンポーネントに対し異なる電力管理設定を実現することにより、総システム電流が確実に電流制限未満になるようにすることができる。デバイスは、異なる電流制限に対し異なる電力管理設定を実現してもよい。
【０１１５】
デバイスは、バッテリが供給する電圧および電流の検知ならびにバッテリの現在の状態の判断を含む測定サイクルを周期的に繰り返し、その後、周期的に繰り返した測定サイクル中に得られたデータに基づいて電流制限を調整する。
【０１１６】
プロセス６００は、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせを用いて実行し得る。いくつかの実装例において、１つ以上の非一時的なマシン読取可能媒体が、デバイスにプロセス６００を実行させる命令を格納する。
【０１１７】
本明細書に記載の発明の実施形態およびすべての機能的動作は、デジタル電子回路において、または、コンピュータソフトウェア、ファームウェア、もしくは本明細書に開示されている構造およびその構造的均等物を含むハードウェアで、または、これらのうちの１つ以上を組み合わせたものにおいて、実現することができる。本発明の実施形態は、１つ以上のコンピュータプログラムまたはコンピュータプログラムプロダクトとして、すなわち、データ処理装置によって実行されるまたはデータ処理装置の動作を制御するためのコンピュータ読取可能媒体上で符号化されたコンピュータプログラム命令の１つ以上のモジュールとして、実現することができる。コンピュータ読取可能媒体は、非一時的なコンピュータ読取可能記憶媒体、マシン読取可能記憶媒体、マシン読取可能記憶基盤、マシン読取可能伝搬信号を実現するものからなる構造、または、これらのうちの１つ以上を組み合わせたものであってもよい。「データ処理装置」という用語は、例としてプログラマブルプロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含む、データを処理するためのすべての装置、デバイス、およびマシンを包含する。この装置は、ハードウェアに加えて、当該コンピュータプログラムのために実行環境を作成するコード、たとえばプロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはこれらのうちの１つ以上の組み合わせを構成するコードを含み得る。伝搬信号は人工的に生成された信号であり、たとえば、適切な受信装置への送信のために生成されて情報を符号化する、マシンによって生成された電気、光または電磁信号である。
【０１１８】
コンピュータプログラム（プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られている）は、コンパイルもしくはインタプリタ言語を含む、任意のプログラミング言語形態で記述することができ、また、スタンドアロンプログラムとしてまたはモジュールとして、コンポーネント、サブルーチン、または計算環境で使用するのに適したその他のユニットを含む、任意の形態でデプロイすることができる。コンピュータプログラムは必ずしもファイルシステム内のファイルに対応していなくてもよい。プログラムは、その他のプログラムまたはデータ（たとえばマークアップ言語文書に保存されている１つ以上のスクリプト）を保持するファイルの一部に、または当該プログラム専用の１つのファイルに、または連携している複数のファイル（たとえば１つ以上のモジュール、サブプログラム、またはコードの一部を保存する複数のファイル）に、格納することができる。コンピュータプログラムは、１つの場所にある、または複数の場所に分散しており通信ネットワークによって相互接続されている、１つのコンピュータまたは複数のコンピュータ上で実行するためにデプロイすることができる。
【０１１９】
本明細書に記載のプロセスおよび論理フローは、入力データに対して作用し出力を生成することによって機能を果たすために１つ以上のコンピュータプログラムを実行する１つ以上のプログラマブルコンピュータによって実行することができる。プロセスおよび論理フローは、専用ロジック回路たとえばＦＰＧＡ（フィールドプログラマブルゲートアレイ）またはＡＳＩＣ（特定用途向け集積回路）によって実行されてもよく、装置は、専用ロジック回路たとえばＦＰＧＡ（フィールドプログラマブルゲートアレイ）またはＡＳＩＣ（特定用途向け集積回路）として実現されてもよい。
【０１２０】
コンピュータプログラムの実行に適したプロセッサは、一例として、汎用および専用マイクロプロセッサ双方、ならびにその他任意の種類のデジタルコンピュータの１つ以上のプロセッサを含み得る。一般的に、プロセッサは、命令およびデータを、読取専用メモリまたはランダムアクセスメモリまたはこれら双方から受ける。コンピュータの必須要素は、命令を実行するためのプロセッサと、命令およびデータを格納するための１つ以上のメモリデバイスとである。一般的に、コンピュータは、データを格納するための１つ以上の大量記憶装置たとえば磁気、光磁気ディスク、または光ディスクを含む、または、上記大量記憶装置からデータを受ける、これにデータを転送する、またはこれら双方のために、上記大量記憶装置に作動的に結合される。しかしながら、コンピュータはこのようなデバイスを有していなくてもよい。加えて、コンピュータは、別のデバイスに、たとえばほんの少しであるが例を挙げると、タブレットコンピュータ、携帯電話、携帯情報端末（ＰＤＡ）、モバイルオーディオプレーヤー、グローバルポジショニングシステム（ＧＰＳ）受信機に、埋め込まれていてもよい。コンピュータプログラム命令およびデータを格納するのに適したコンピュータ読取可能媒体は、すべての形態の不揮発性メモリ、媒体およびメモリデバイスを含み、これは、一例として、半導体メモリデバイスたとえばＥＰＲＯＭ、ＥＥＰＲＯＭ、およびフラッシュメモリデバイス、磁気ディスクたとえば内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、ならびにＣＤ  ＲＯＭおよびＤＶＤ−ＲＯＭディスクを含む。プロセッサおよびメモリに、専用論理回路を補充してもよく、専用論理回路にプロセッサおよびメモリが組み込まれていてもよい。
【０１２１】
ユーザとのやり取りのために、本発明の実施形態は、ユーザに対して情報を表示するためのディスプレイデバイスたとえばＣＲＴ（陰極線管）またはＬＣＤ（液晶ディスプレイ）ディスプレイと、ユーザがコンピュータに入力を送ることができるようにするためのタッチスクリーン、ボタン、キーボードまたはその他の入力デバイスとを有するコンピュータ上で実現することができる。その他の種類のデバイスを用いてユーザとのやり取りが行われるようにしてもよい。たとえば、ユーザに与えられるフィードバックは、任意の形態の感覚フィードバックたとえば視覚フィードバック、聴覚フィードバック、または触覚フィードバックであってもよく、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形態で受けることができる。
【０１２２】
本発明の実施形態は、たとえばデータサーバとしてバックエンドコンポーネントを含む計算システム、または、ミドルウェアコンポーネントたとえばアプリケーションサーバを含む計算システム、または、フロントエンドコンポーネント、たとえば、本発明を実現したものとユーザとのやり取りを可能にするためのグラフィカルユーザインターフェイスもしくはウェブブラウザを有するクライアントコンピュータを含む計算システム、または、このようなバックエンド、ミドルウェア、またはフロントエンドコンポーネントのうちの１つ以上の任意の組み合わせを含む計算システムにおいて、実現することができる。当該システムのコンポーネントは、デジタルデータ通信の形態または媒体たとえば通信ネットワークによって相互接続することができる。通信ネットワークの例は、ローカルエリアネットワーク（「ＬＡＮ」）およびワイドエリアネットワーク（「ＷＡＮ」）、たとえばインターネットを含む。
【０１２３】
計算システムはクライアントとサーバとを含み得る。クライアントとサーバは、通常は互いに離れており、通信ネットワークを通してやり取りするのが一般的である。クライアントとサーバとの関係は、それぞれのコンピュータ上で実行されクライアントとサーバとの関係を有するコンピュータプログラムによって発生する。
【０１２４】
本明細書には具体的詳細事項が多く含まれているが、これらは、どの発明の範囲またはクレームし得るものの範囲の限定としても解釈されてはならないものであって、むしろ、発明の特定の実施形態に固有であり得る特徴の説明として解釈されるべきものである。本明細書において、別々の実施形態という観点で記載されている特定の特徴は、１つの実施形態において組み合わせ実現することも可能である。逆に、１つの実施形態という観点から記載されている各種特徴を、複数の実施形態において別々に、または任意の適切な下位の組み合わせとして実現することも可能である。加えて、上記特徴は、特定の組み合わせで機能するものとして記載され最初にそういうものとしてクレームされている場合があるが、クレームされている組み合わせに含まれる１つ以上の特徴は、場合によってはこの組み合わせから省略することができ、クレームされている組み合わせは下位の組み合わせまたは下位の組み合わせの変形に関するものである場合がある。
【０１２５】
同様に、動作は図面において特定の順序で示されているが、これは、このような動作が、示されている特定の順序もしくは連続した順序で実行されることを要する、または、示されているすべての動作が所望の結果を得るために実行されることを要する、と理解されてはならない。特定の状況ではマルチタスキングおよび並列処理が好都合である場合がある。加えて、上記実施形態における各種システムコンポーネントの分離は、すべての実施形態においてこのような分離を要するものと理解されてはならない。記載されているプログラムコンポーネントおよびシステムは一般的に、１つのソフトウェアプロダクトに統合できる、または、パッケージングして複数のソフトウェアプロダクトにできることが、理解されるはずである。
【０１２６】
このように、本発明の具体的な実施形態は上に述べた通りである。その他の実施形態は以下の請求項の範囲に含まれる。たとえば、請求項に記載の動作は、異なる順序で実行されてそれでもなお所望の結果を得ることができる。
【図１】
0006790290.tif 000004
【図２】
0006790290.tif 000005
【図３】
0006790290.tif 000006
【図４】
0006790290.tif 000007
【図５】
0006790290.tif 000008
【図６】
0006790290.tif 000009