(57)【要約】  高電圧モードのリクエストを受信し、これに応答して高電圧タイマを起動して、高電圧クレジットの残量が電圧切替え閾値を超えることを判断するようになっている。このリクエストに応答して高電圧モードへの切替えが行われる。通知に応答して低電圧モードに切り替わる。リクエストは、データ処理システム上で作動するアプリケーションから受信できる。高電圧タイマが満了したという通知の場合、低電圧モードへの切替えに応答して低電圧タイマが起動する。低電圧タイマが満了して、高電圧リクエストが依然としてアクテゥブである場合、高電圧モードへの切替えが行われて新しい高電圧タイマが起動する。【選択図】      図３
2013530465.tif 000002
【特許請求の範囲】
【請求項１】
データ処理システムが低電圧モードで高電圧モードのリクエストを受信する段階と、
高電圧クレジットの残量が電圧切替え閾値を超えたという判断に応答して、
高電圧タイマを起動する段階と、
高電圧モードに切替える段階と、
通知に応答して元の低電圧モードに切替える段階と、
を含む方法。
【請求項２】
前記リクエストは、データ処理システム上で作動するアプリケーションから受信する、請求項１に記載の方法。
【請求項３】
前記高電圧クレジットの各々は、高電圧モードで費やすことができる特定の周期内の時間部分に対応し、前記高電圧タイマは、前記高電圧クレジットの残量を使い切ると満了するように構成される、請求項１に記載の方法。
【請求項４】
前記データ処理システムは、１つの物理的なタイマを含み、前記高電圧タイマの満了はスケジューリングシステムで決定される、請求項５に記載の方法。
【請求項５】
前記電圧切替え閾値は、低電圧モードから高電圧モードに切替えるコストに対応する、請求項１に記載の方法。
【請求項６】
前記通知は、高電圧タイマが満了したという通知及び高電圧モードのリクエストがキャンセルされたという通知の１つを含む、請求項１に記載の方法。
【請求項７】
前記通知は、前記高電圧タイマが満了したという通知であり、
前記低電圧モードへの切替えに応答して低電圧タイマを起動する段階と、
前記低電圧タイマが満了したという通知に応答して、前記高電圧リクエストが依然として有効であると判断する段階と、
別の高電圧タイマを起動する段階と、
前記高電圧モードに切替える段階と、
を更に含む、請求項６に記載の方法。
【請求項８】
少なくとも１つのプロセッサで実行される場合に該少なくとも１つのプロセッサに対して動作を行わせる命令を記憶する非一時的コンピュータ読み取り可能記憶媒体であって、本動作は、
電圧を増加させるリクエストに応答して、増加電圧クレジットの残量が電圧切替え閾値を超えることを判断し、
前記判断に応答して、データ処理システムの少なくとも１つの構成要素に関して増加電圧モードをアクティブにし、
イベントに応答して、前記データ処理システムの前記少なくとも１つの構成要素に関する増加電圧モードを非アクティブにする、
非一時的コンピュータ読み取り可能記憶媒体。
【請求項９】
前記少なくとも１つの構成要素は、１つ又はそれ以上の中央処理ユニット（ＣＰＵ）及び図形処理ユニット（ＧＰＵ）を備える、請求項８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項１０】
前記増加電圧リクエストは、前記データ処理システム上で作動するアプリケーションが発生する、請求項８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項１１】
増加電圧モードをアクティブにすることは、更に増加電圧時間割当量に対応するタイマを開始し、前記タイマは、前記増加電圧時間割当量を使い切るとイベントを発生する、請求項８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項１２】
前記イベントは、増加電圧リクエストがキャンセルされた通知を受信することを含む、請求項８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項１３】
少なくとも１つのプロセッサで実行される場合に該少なくとも１つのプロセッサに対して動作を行わせる命令を記憶する非一時的コンピュータ読み取り可能記憶媒体であって、本動作は、
低電圧時間割当量及び高電圧時間割当量を初期化し、
第１の高電圧リクエストに応答して、データ処理システムの少なくとも１つの構成要素を高電圧モードに切替え、
前記高電圧モードへの切替えに応答して、前記高電圧時間割当量を使い切ると満了する第１のタイマを開始し、
前記第１のタイマの満了に応答して、低電圧モードに切替え、
前記低電圧モードへの切替えに応答して、前記低電圧時間割当量を使い切ると満了する第２のタイマを開始し、
前記第２のタイマの満了に応答して、前記低電圧時間割当量及び前記高電圧時間割当量を再初期化し、
前記第２のタイマの満了に応答して、第２の高電圧リクエストがアクティブであることを判断し、
前記高電圧モードへの切替えに応答して、前記高電圧時間割当量を使い切ると満了する第３のタイマを開始する、
非一時的コンピュータ読み取り可能記憶媒体。
【請求項１４】
特定の周期の長さは、前記低電圧時間割当量及び前記高電圧時間割当量の合計に等しい、請求項１３に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項１５】
前記第１の高電圧リクエストは、第２の高電圧リクエストと同じである、請求項１３に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項１６】
係数及び期間を用いて、高電圧クレジット量及び低電圧クレジットを発生する段階と、  リクエストに応答して、高電圧モードに切替える段階と、
前記高電圧クレジットを使い切ると満了する高電圧タイマを開始する段階と、
前記リクエストがキャンセルされたという通知に応答して、低電圧モードに切替える段階と、
前記高電圧タイマをキャンセルする段階と、
前記高電圧モードの持続時間を用いて、高電圧クレジット量を更新する段階と
前記低電圧クレジットを使い切ると満了する低電圧タイマを開始する段階と、
低電圧タイマが満了したという通知に応答して、残りの高電圧クレジットをバンキングする段階と、
を含む方法。
【請求項１７】
期間、係数、及び預けた高電圧クレジットに基づいて、別の高電圧クレジット量及び低電圧クレジット量を発生する段階を更に含み、前記預けた高電圧クレジットは、他の高電圧クレジット量に加算亜される、請求項１６に記載の方法。
【請求項１８】
周期毎の閾値を超えた残りの高電圧クレジットは、預け入れされない、請求項１６に記載の方法。
【請求項１９】
周期毎の加算された閾値を超えた高電圧クレジットは、他の高電圧クレジットには加算されない、請求項１７に記載の方法。
【請求項２０】
高電圧時間割当量及び低電圧時間割当量を選択する手段と、
前記高電圧時間割当量の残余部が移行閾値を超えた場合、第１のリクエストに応答して、高電圧モードに切替える手段と、
第１のイベントの受信に応答して低電圧モードに切替える手段と、
第２のイベント及び第２のリクエストに応答して、前記高電圧モードに切替える手段と、
を備える装置。
【請求項２１】
高電圧時間割当量及び低電圧時間割当量の選択は、パーセンテージと周期期間を乗算することを含み、前記高電圧割当量は積であり、前記低電圧割当量は前記高電圧割当量未満の周期期間である、請求項２０に記載の装置。
【請求項２２】
前記移行閾値は、高電圧モードへ切替えるオーバーヘッドコストに基づいて決定される、請求項２０に記載の装置。
【請求項２３】
前記第１のイベントを受信することは、前記高電圧時間割当量を使い切ると満了に設定されるタイマからのコールバックを受信することを含む、請求項２０に記載の装置。
【請求項２４】
前記第１のイベントを受信することは、前記第１のリクエストがキャンセルされたことの通知を受信することを含む、請求項２０に記載の装置。
【請求項２５】
前記第２のイベントを受信することは、低電圧時間割当量を使い切ると満了に設定されるタイマからのコールバックを受信することを含む、請求項２３に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願）
本出願は、２０１０年６月１８日出願の米国仮出願６１／３５６，４３８号の優先権を主張するものである。
【０００２】
（技術分野）
本発明の実施形態は、全体的には温度管理に関し、詳細には動的電圧ディザリングに関する。
【背景技術】
【０００３】
電圧ディザリングは、コンピュータシステムの発熱を管理するための公知の技術である。ディザリング要件は、自走クロックを利用するコンピュータシステムの高電圧リクエストに課され、所定の周期を高電圧可能フェーズ及び低電圧だけのフェーズに分割する。システム上で作動するプロセスが高電圧可能フェーズ時に高電圧を要求する場合、高電圧可能フェーズが続く限り高電圧を受けるが、プロセスが低電圧だけのフェーズ時に高電圧を要求する場合、高電圧は供給されない。これにより、高電圧フェーズはシステム上のプロセスからの高電圧リクエストとは無関係に強制されるのでシステムの性能が低下する。
【０００４】
図１は、従来の電圧ディザリングプロセスの波形を示す。波形１０１は、電圧ディザリング波形であり、自走クロックを使用する期間にわたって高電圧フェーズ及び低電圧フェーズが均等に分布している。周期の半分の時間では高電圧を利用でき、半分の時間は低電圧である必要がある。波形１０３は、コンピュータシステムで作動するプロセスが高電圧を要求される場合、及びこの要求が満たされる場合を示す。波形１０３の高電圧リクエストの陰影のない部分は、高電圧リクエストが満たされていることを示すが、高電圧リクエストの陰影部分１０５、１０７、１０９、及び１１１は、ディザリング波形１０１の要件に起因して高電圧リクエストの一部が満たされていないことを示す。波形１１３は、高電圧リクエストが満たされた部分を示す。ディザリング波形１０１は周期の５０％まで高電圧であることが可能であり、高電圧リクエストは４５％に達するだけであるが、ディザリング波形１０１は電圧リクエスト波形１０３とは独立しているので、周期の僅か１８％だけが高電圧モードに費やされ、不必要にシステムの性能が低下することになる。
【発明の概要】
【課題を解決するための手段】
【０００５】
高電圧モードのリクエストを受信し、これに応答して高電圧タイマを起動して、高電圧クレジットの残量が電圧切替え閾値を超えることを判断するようになっている。このリクエストに応答して高電圧モードへの切替えが行われる。通知に応答して低電圧モードに切り替わる。リクエストは、データ処理システム上で作動するアプリケーションから受信できる。高電圧タイマが満了したという通知の場合、低電圧モードへの切替えに応答して低電圧タイマが起動する。低電圧タイマが満了して、高電圧リクエストが依然としてアクテゥブである場合、高電圧モードへの切替えが行われて新しい高電圧タイマが起動する。
【０００６】
本発明は例示的に示されており、添付図面の各図面に限定されるものではなく、図面において同じ参照番号は同じ構成要素を示している。
【図面の簡単な説明】
【０００７】
【図１】従来の電圧ディザリングを示す概略図である。
【図２Ａ】本発明の実施形態による動的電圧ディザリングを示す概略図である。
【図２Ｂ】本発明の他の実施形態による動的電圧ディザリングを示す概略図である。
【図３】本発明の実施形態による動的電圧ディザリングの方法を示すフローチャートである。
【図４】本発明の実施形態による動的電圧ディザリングの別の方法を示すフローチャートである。
【図５】本発明の実施形態による動的電圧ディザリングの更に別の方法を示すフローチャートである。
【図６】本発明の実施形態と一緒に使用できるデータ処理システムを示す概略図である。
【図７】本発明の実施形態と一緒に使用できるデバイスを示す概略図である。
【発明を実施するための形態】
【０００８】
本発明の種々の実施形態及び態様を以下の詳細な説明を参照して説明するが、添付図面は種々の実施形態を示している。以下の詳細な説明及び図面は、本発明を例示するものであり、本発明を限定するものではない。多数の具体的な詳細事項は本発明の種々の実施形態を完全に理解するために提示される。しかしながら、場合によっては、公知の又は従来の詳細事項は、本発明の実施形態を簡潔にする目的で説明されていない。
【０００９】
以下に動的電圧ディザリングの実施形態を説明する。１つの実施形態において、動的電圧ディザリングは、データ処理システム上で作動するアプリケーション又はプロセスからの高電圧リクエストに基づいて動的に電圧ディザリング波形を規定する。所定周期の間のディザリング量は、２つの値を用いて特定できる。つまり、周期の持続時間を測定する期間、及び高電圧状態に費やすことができる周期のパーセンテージを特定する係数（ｆａｃｔｏｒ）である。例えば、期間は８ミリ秒とすることができ、係数は５０％とすることができる。クロック周波数２４ｍｈｚに関して、８ミリ秒は約３，０００クロック単位を含む。各クロック単位はクレジットと考えることができ、係数５０％に関して、１，５００クレジットは高電圧時間の割当量を表す。データ処理システム上で作動するプロセスが高電圧を要求する場合、本発明の実施形態は、高電圧の割当量に高電圧クレジットを利用できるか否かを判断し、利用できる場合、高電圧クレジットが満了するまで又はリクエストがキャンセルされるまで高電圧状態に切替える。高電圧リクエストの持続時間が該当周期の高電圧時間割当量を超えない場合には、ディザリングは性能に全く影響しないはずである。
【００１０】
電圧リクエストは、要求中のアプリケーションの処理ニーズに基づいて追加電圧を得るための（追加電圧を得るために既存のリクエストをキャンセルするための）、直接的なアプリケーションからのリクエストの形をとることができる。また、電圧リクエストは、静的安定に基づいて、又は動的性能状態マネージャ（ＤＰＳＭ）等の動的手段によって、電力管理ユニット（システム）によって生成できる。
【００１１】
動的電圧ディザリングの特定の実施形態ではタイマを使用できる。例えば、タイマは、高電圧クレジットが満了した時刻又は低電圧クレジットが満了した時刻を特定するために使用できる。１つの実施形態において、動的電圧ディザリングを使用するデータ処理システムは、単一の物理的タイマを有することができ、このタイマは、システムが要求されたタイムアウト（つまり、タイマ満了）に関する種々のスケジューラを使用する期間にわたってタイミングサービスを提供する。他のシステムは他のタイマを使用できる。特定の実施形態において、タイマは、ハードウェアタイマ、ソフトウェアタイマ、又はソフトウェア及びハードウェアタイマの組み合わせとすることができる。１つの実施形態では、単一のハードウェアタイマ又は単一のソフトウェアタイマを使用でき、単一のタイマに対して複数のタイマをスケジューリングすることで複数のタイマを実装することができる。他の実施形態では、複数のハードウェアタイマ及び／又は複数のソフトウェアタイマを使用できる。
【００１２】
図２は、本発明の実施形態による動的電圧ディザリングを示す概略図である。波形２０１は電圧ディザリング波形であり、高電圧の時刻及び低電圧の時刻を示す。波形２０３は、データ処理システムからの電圧リクエスト波形である。波形２０１に関する高電圧割当量は５０％である。つまり、波形２０１に示す周期に関して、周期の５０％を超えて高電圧モードに費やすことはでいない。波形２０３は、電圧リクエスト中のアプリケーション又はプロセスが、現在の周期の４５％の時間が高電圧モードであることを要求していることを示す。以下に説明するように、高電圧のリクエスト時間は高電圧の割当時間量に等しいか又はそれ以下なので、動的電圧ディザリングに起因する、要求中のデータ処理システムによる性能ペナルティは発生しない。
【００１３】
時間２２１において、データ処理システムは、電圧管理システムに高電圧を要求する。これに応答して、電圧管理システムは時間２２１と実質的に同じ時間２０５で電圧を増加させる。電圧管理システムによる電圧を増加させる決定は、図３及び４に関連して以下に詳細に説明する。一般的に、電圧管理システムは、現在に周期に関して、高電圧モードに切替えるための高電圧割当量の時間が十分に残っているか否かを判断する。時間２０５において、高電圧割当量は５０％なので電圧増加リクエストは許可される。時間２０７において、電圧管理システムは、時間２０５で受信した高電圧リクエストがキャンセルされたという通知を受信する。これに応答して、電圧管理システムは、低電圧モードに切替えて、高電圧モードで費やした時間を反映するために高電圧割当量を更新する。高電圧リクエストのキャンセルは、図４及び５に関連して以下に詳細に説明する。
【００１４】
時間２０７から時間２０９の期間に、電圧管理システムは、低電圧モードに費やした時間を記録する。これは高電圧モードの割当時間量未満の周期の時間量に対応する低電圧「割当量」に対して請求される。この周期の間に全ての高電圧割当量が費やされた場合、次の周期は低電圧割当量の残余部が消費されるまで始まらない。
【００１５】
時間２２３において、データ処理システム（つまり、データ処理システム上で作動するアプリケーション）は別の高電圧モードを要求する。これに応答して、時間２０９において電圧管理システムは高電圧モードに切替わる。時間２１１において、電圧管理システムは、高電圧リクエストがキャンセルされたという通知を受信して低電圧モードに戻る。高電圧モードで費やした時間は高電圧割当量から差し引かれる。同様に、時間２２５及び時間２２７のリクエストは、時間２１３から時間２１５，及び時間２１７から時間２１９までの高電圧モードをもたらす。要求される高電圧モードの持続時間は該当周期の高電圧割当量に等しいか又はそれ未満なので、ディザリングは、大部分の又は全ての高電圧リクエストを満足することで、性能ペナルティを制限する。
【００１６】
高電圧リクエストの持続時間が該当周期の高電圧時間割当量を超える状况での動的電圧ディザリングを示す図２Ｂを参照すると、波形２５１は電圧ディザリング波形を示し、波形２５３は電圧リクエスト波形を示す。最初の２つの電圧リクエストは、高電圧割当量を満たす。時間２５５において、電圧管理システムは３番目の高電圧リクエストを受信する。時間２５７において、高電圧リクエストが許可されて、データ処理システムは高電圧モードに入る。時間２５９において、現在の周期に関する高電圧割当量は消費されるが、時間２６１に示すように、高電圧リクエストは引き続き有効である。電圧管理システムは、高電圧割当量が限度を超えているという判断に応答して、時間２５９においてデータ処理システムを低電圧モードに切替える。時間２６３において、高電圧リクエストは終了する。
【００１７】
図３を参照すると、これは本発明の実施形態による動的電圧ディザリングを使用して高電圧リクエストを管理する方法を示す。ブロック３０１において、本方法は高電圧リクエストを受信する。データ処理システム上で作動するアプリケーションから受信できる。１つの実施形態において、要求側アプリケーションが高電圧モードでシステムのどの構成要素を使うかにかかわらず、全体システムは高電圧モード又は低電圧モードにすることができる。別の実施形態において、データ処理システムにおいて複数の電圧領域（又は電圧区域）が存在できる。例えば、中央処理ユニット（ＣＰＵ）、図形処理ユニット（ＧＰＵ）、及び／又はシステムの他の部分に関して個別に高電圧を要求できる。電圧制御細分性が高くなると、動的電圧ディザリングの性能が更に改善される。
【００１８】
ブロック３０３において、本方法は、残りの高電圧割当量が電圧切替え閾値に等しいか又はそれ以上かを判断する。電圧切替え閾値はゼロとすることができ、この場合、何らかの高電圧クレジットが残っていれば切替えは常時行われる。別の実施形態において、電圧切替え閾値は、１ミリ秒等の周期のパーセンテージとすることができる。この閾値は、電圧切替え実行に関連するオーバーヘッド量、及びに切替えを行う価値があるか否かに基づいた、実証的研究によって決めることができる。この値は実施形態の特定のハードウェア及びソフトウェアに基づいて変更できる。
【００１９】
残りの高電圧クレジットが電圧切替え閾値を超える場合、本方法は、ブロック３０５に進み、残りの高電圧クレジットを使い切ると満了に設定される高電圧タイマを起動する。ブロック３０７において、本方法は、データ処理システム（前述のようにデータ処理システムのサブセット）を高電圧モードに切替える。ブロック３０９において、本方法は、高電圧タイマが満了したという通知を受信する。１つの実施形態において、満了したタイマは、電圧管理システムに対して現在の周期に関する高電圧クレジットを使い切ったこと及び低電圧モードへの切替えが必要であることを通知する、電圧管理システムへのコールバックを発生する。図２Ｂの時間２５９は、高電圧タイマの満了及びその後の低電圧モードへの切替えの一例を示している。
【００２０】
本方法は、ブロック３１１において低電圧モードへ切替え、ブロック３１３において、既に低電圧タイマが作動していない場合、残りの低電圧クレジットを使い切ると満了に設定される低電圧タイマを起動する。また、ブロック３０３において、本方法が残りの高電圧クレジットが電圧切替え閾値を超えていないと判断する場合、本方法はブロック３１３において低電圧タイマを起動する。ブロック３１３において高電圧クレジットは使い切ったので、データ処理システム（またはその一部）は、低電圧クレジットを使い切るまで（つまり、低電圧タイマが満了するまで）低電圧モードの留まることができる。低電圧タイマの満了に関しては図５に関連して以下に詳細に説明する。
【００２１】
図４を参照すると、これは高電圧クレジットを使い切る前にキャンセルされる高電圧リクエストを管理する方法を示すフローチャートである。ブロック４０１において、本方法は、高電圧リクエストを受信する。ブロック４０３において、本方法は、残りの高電圧クレジットが電圧切替え閾値を超えるか否かを判断し、閾値を超える場合、ブロック４０５において、高電圧クレジットを使い切ると満了に設定される高電圧タイマを起動する。本方法は、ブロック４０７において、高電圧モードに切替わるが、前述のように全体システム又は一部システムを高電圧モードとすることができる。ブロック４０９において、本方法は、高電圧リクエストがキャンセルされたことの通知を受信する。高電圧リクエストのキャンセルは、図２Ａの時間２０７、２１１、２１５、及び２１９に示す。いずれの場合も、高電圧クレジットは残っているが、高電圧モードを要求したアプリケーションがリクエストをキャンセルする。
【００２２】
ブロック４１１において、本方法は、高電圧リクエストのキャンセルに応答して低電圧モードに切替える。ブロック４１３において、本方法は、高電圧タイマをキャンセルして、高電圧リクエスト時に使用したクレジット数を既存量から差し引くことによって、残りの高電圧クレジットを更新する。
【００２３】
ブロック４１５において、所望であれば、本方法は、残りの低電圧クレジットを使い切ると満了に設定される低電圧タイマを起動する。また、本方法が、ブロック４０３において、残りの高電圧クレジットが電圧切替え閾値を超えないと判断する場合、ブロック４１５に進み低電圧タイマを起動する。
【００２４】
図５を参照すると、これは周期の終了後にも依然として有効な高電圧リクエストを管理する方法を示すフローチャートである。ブロック５０１において、本方法は、高電圧タイマは満了しているが、データ処理システム（またはその一部）が高電圧モードのままであるという通知を受信する。これは図２Ｂの時間２５９に図示されている。
【００２５】
ブロック５０３において、本方法は、高電圧タイマの満了が高電圧クレジットを使い切ったことを示すので低電圧モードに切替わる。ブロック５０５において、本方法は、残りの低電圧クレジットを使い切ると満了する低電圧タイマを起動する。ブロック５０７において、本方法は、低電圧タイマが満了した（つまり、満了したタイマが電圧管理システムにコールバックを行った）という通知を受信する。ブロック５０９において、本方法は、高電圧リクエストが有効であると判断する。これは、ブロック５０１で有効なのと同じ高電圧リクエストとすること又は異なる高電圧リクエストとすることができる。ブロック５１１において、本方法は、高電圧クレジット及び低電圧クレジットをリセットして、新しい周期が始まる。ブロック５１３において、本方法は、新しくリセットした高電圧クレジットを使い切ると満了する高電圧タイマを起動して、ブロック５１５において、高電圧モードに切替わる。
【００２６】
１つの実施形態において、クレジット取引の限度は、熱管理システムや電力管理システム等のシステム構成要素によってリアルタイムに変更できる。例えば、システムの重要な構成要素の温度が低い場合、クレジット取引を制限する１つ又はそれ以上の閾値を増大できる。別の例として、システムの重要な構成要素の温度が上昇する場合、クレジット取引を制限する１つ又はそれ以上の閾値を低減できる。取引閾値は、構成要素の現在の温度、又は温度傾向（つまり、急上昇、緩下降等）に基づいて変更できる。
【００２７】
１つの実施形態において、電圧管理システムのパラメータはリアルタイムに変更できる。例えば、熱管理システムは、データ処理システムが多くの熱を発生していることを特定でき、それに応じて高電圧割当量を低減できる（つまり、高電圧モードで費やすことができる各周期のパーセンテージを調整する係数を変更することで）。１つの実施形態において、変更に応じて現在の周期が中断されて新しい周期が始まる。別の実施形態において、現在の周期が過去の設定値で終了して、次の周期が新しい設定値で始まることができる。
【００２８】
１つの実施形態において、周期は低電圧クレジットを使い切ると終了するので、周期は残った高電圧クレジットで終了することができる。これらの残った高電圧クレジットは、後続の周期での使用に備えて「預ける」ことができる。データ処理システムのニーズ（熱管理、電力管理等）に基づいて、預けることができる高電圧クレジット量は制限できる。例えば、クレジットの周期毎のバンキング量だけを後続の周期に備えて預けることができる（つまり、最大１ミリ秒の高電圧クレジットの高電圧価値）。別の例として、預けた全クレジット量は、預けた全量に制限できる。これらの一方の又は両方の制限は、預けた高電圧クレジットに適用でき、特定の実施形態では、バンキングを全く行わないことができる。
【００２９】
前述のように、本発明の特定の実施形態では、残りの高電圧クレジットが電圧切替え閾値を超えない場合にはリクエストに応じて高電圧モードに切替わらないこともある。この閾値は、各周期の間で又は特定の周期の期間に変更でき、電圧管理システムが高電圧リクエストを許可することを防止することによって、高電圧になる価値をもたらすものを達成するためにオーバーヘッドが長くならないようにして、動的電圧ディザリングの効率を高めることができる。高電圧モードが終了し、残りの低電圧クレジットが低電圧切替え閾値よりも低い場合には同じ閾値を使用できる。この場合、次の周期は、低電圧モードで付加的な時間を費やすよりはむしろ即座に開始できる。
【００３０】
前述のように、データ処理システムは、ＣＰＵ、ＧＰＵ、及び他の構成要素等のデータ処理システムの異なる部分の電圧を別個にディザリングすることができる。これにより、特にシステムで使用する構成要素の実証的分析と組み合わせる場合には効率を改善できる。例えば、ＣＰＵの高電圧リクエストの後に、先行のＣＰＵの高電圧モードに起因する処理手続きを処理するためにＧＰＵの高電圧リクエストが続くことは一般的な事例である。特定の実施形態において、データ処理システム上で作動するアプリケーションは、ＣＰＵの後にＧＰＵが続くといった、複数の高電圧モードを連続して要求することができる。
【００３１】
図６は、データ処理システムの１つの実施例を示し、本発明の１つの実施形態と一緒に使用できる。図６はコンピュータシステムの種々の構成要素を示しているが、このような詳細事項は本発明とは密接に結び付いていないので、何らかの特定のアーキテクチャ又は各構成要素を相互接続する方法を意味することが意図されていないことを理解されたい。また、本発明では。より少ない構成要素又はより多くの構成要素を有するネットワークコンピュータ、机上コンピュータ、及び他のデータ処理システムを使用できることを理解されたい。
【００３２】
図６に示すように、データ処理システムの形態のコンピュータシステム６００は、マイクロプロセッサ６０５、ＲＯＭ（読み出し専用メモリ）６０７、揮発性ＲＡＭ６０９、及び不揮発性メモリ６１１に接続されたバス６０３を含む。マイクロプロセッサ  ６０５はキャッシュ６０４に接続される、マイクロプロセッサ６０５は、メモリ６０７、６０９、６１１からの命令を読み出して、命令を実行して前述の作動を行うことができる。バス６０３は、種々の構成要素を相互接続し、構成要素６０５、６０７、６０９、及び６１１を表示制御装置及び表示装置６１３に相互接続し、更に、マウス、タッチスクリーン、タッチパッド、タッチ式入力デバイス、キーボード、モデム、ネットワークインタフェース、及び公知の他のデバイスとすることができる入力／出力（Ｉ／Ｏ）デバイス等の周辺機器に相互接続する。一般に、入力／出力デバイス６１５は、入力／出力制御装置６１７を経由してシステムに接続される。一般に、揮発性ＲＡＭ（ランダムアクセスメモリ）６０９は、メモリ内のデータをリフレッシュ又は保持するために常時電力を必要とするダイナミックＲＡＭ（ＤＲＡＭ）として実装される。
【００３３】
１つの実施形態において、電圧変更デバイス６１９は、電力管理ユニット６２１に対して、動的電圧ディザリングによっていつ電圧を増加及び減少させるかを指示する。他の実施形態において、電圧変更デバイス６１９及び電力管理ユニット６２１は同じデバイスとすることができる。更に別の実施形態において、動的電圧ディザリングは、電圧変更デバイス６１９に接続された、又はその一部としてのハードウェアデバイスで実施できる。別の実施形態において、動的電圧ディザリングは、ソフトウェアで実行でき、ＲＡＭ６０９、ＲＯＭ６０７、大容量記憶装置６１１、又は他の場所に格納される。ソフトウェアベースの動的電圧ディザリングは、電圧変更デバイス６１９、電力管理ユニット６２１、又は他のデバイスによって電圧を制御／変更できる。
【００３４】
一般に、大容量記憶装置６１１は、磁気ディスクドライブ、光磁気ディスクドライブ、光ディスクドライブ、又はＤＶＤ  ＲＡＭ、或いは、フラッシュメモリ、又はシステムの電源ＯＦＦでもデータ（例えば、大量データ）を保持する他の形式のメモリシステムとすることができる。一般に、大容量記憶装置６１１はランダムアクセスメモリとすることもできるが、これは必須ではない。図６では大容量記憶装置６１１はデータ処理システムの残りの構成要素に直接接続されるローカルデバイスとして示されるが、本発明では、モデム、イーサネット（登録商標）インタフェース、又は無線ネットワーク等のネットワークインタフェース経由でデータ処理システムに接続されるネットワーク記憶デバイス等の、システムから離れた不揮発性メモリを使用できることを理解されたい。バス６０３は、公知の種々のブリッジ、制御装置、及び／又はアダプタを介して相互に接続された１つ又はそれ以上のバスを含むことができる。
【００３５】
図７は、本発明の１つの実施形態と一緒に使用できる他のデータ処理システムの実施例を示す。図７に示すデータ処理システム７００は、１つ又はそれ以上のマイクロプロセッサとすること、又はチップ集積回路上のシステムとすることができる処理システム７１１を含み、システムは、データ及び処理システムで実行するプログラムを格納するメモリ７０１を含むこともできる。また、システム７００は、マイクロフォン、スピーカを含むオーディオ入力／出力サブシステム７０５を備えることができ、例えば、スピーカによる音楽再生やスピーカ及びマイクロフォンによる電話機能をもたらすことができる。
【００３６】
１つの実施形態において、動的電圧ディザリングは、ソフトウェアで実行でき、処理システム７１３で処理するためにメモリ７０１に格納され、電力管理ユニット（図示せず）及び／又は電圧変更デバイス（図示せず）を用いて電圧を制御／変更できる。別の実施形態において、動的電圧ディザリングは、ハードウェア（図示せず）で実行でき、電圧変更デバイス及び／又は電力管理ユニットにより電圧を制御するために使用される。動的電圧ディザリングのハードウェア実行は、電圧管理デバイス、電力管理ユニット、又はチップ上のシステムを含む他のデバイスの一部として包含できる。
【００３７】
表示制御装置及び表示デバイス７０７は、ユーザに対して可視ユーザインタフェースを提供するがこのデジタルインタフェースは、ＯＳ  Ｘオペレーティングシステムソフトウェアを実行する場合のＭａｃｉｎｔｏｓｈコンピュータに示すものと同じ、グラフィカルユーザインタフェースを含む。また、システム７００は、１つ又はそれ以上の無線送受信器７０３を含む。無線送受信器は、ＷｉＦｉ送受信器、赤外線送受信器、Ｂｌｕｅｔｏｏｔｈ（登録商標）送受信器、及び／又は無線携帯電話送受信器とすることができる。特定の実施形態では図示しない追加の構成要素もまたシステム７００の一部とすることができ、特定の実施形態では、図７よりも少ない構成要素をデータ処理システムとして使用できることを理解されたい。
【００３８】
また、データ処理システム７００は、ユーザによるシステムへの入力を可能にする１つ又はそれ以上の入力デバイス７１３を含む。これらの入力デバイスは、キーパッド、キーボード、タッチパネル、又はマルチタッチパネルとすることができる。また、データ処理システム７００は、ドックコネクタとすることができる随意的な入力／出力デバイス７１５を含む。従来から知られているように、図示しない１つ又はそれ以上のバスは、種々の構成要素を相互接続するために使用できることを理解されたい。図７に示すデータ処理システムは、携帯型コンピュータ又は携帯情報端末（ＰＤＡ）、又はＰＤＡと類似の機能をもつ携帯電話、又は携帯電話を含む携帯型コンピュータ、又はｉＰｏｄ等のメディアプレイヤ、又は１つのデバイスとしてＰＤＡ及び携帯電話と組み合わされたメディアプレイヤ等の前記のデバイスの態様又は機能を組み合わせたデバイスとすることができる。別の実施形態において、データ処理システム７００は、ネットワークコンピュータ又は別のデバイス内に組み込まれた処理デバイス、又は図７よりも少ない構成要素又は多い構成要素を有する他の形式のデータ処理システムとすることができる。
【００３９】
本明細書では、動的電圧ディザリングは、例示的な実施形態を参照して説明されている。
以下の請求の範囲に記載の本発明の精神及び範囲を逸脱することなく種々の変更を行い得ることは自明である。従って、本明細書及び図面は限定的ではなく例示的であると見なされるべきである。
【図１】
2013530465.tif 000003
【図２Ａ】
2013530465.tif 000004
【図２Ｂ】
2013530465.tif 000005
【図３】
2013530465.tif 000006
【図４】
2013530465.tif 000007
【図５】
2013530465.tif 000008
【図６】
2013530465.tif 000009
【図７】
2013530465.tif 000010
【手続補正書】
【提出日】平成24年11月28日(2012.11.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データ処理システムが低電圧モードで高電圧モードのリクエストを受信する段階と、
高電圧クレジットの残量が電圧切替え閾値を超えたという判断に応答して、
高電圧タイマを起動する段階と、
高電圧モードに切替える段階と、
通知に応答して元の低電圧モードに切替える段階と、
を含む方法。
【請求項２】
前記リクエストは、データ処理システム上で作動するアプリケーションから受信する、請求項１に記載の方法。
【請求項３】
前記高電圧クレジットの各々は、高電圧モードで費やすことができる特定の周期内の時間部分に対応し、前記高電圧タイマは、前記高電圧クレジットの残量を使い切ると満了するように構成される、請求項１に記載の方法。
【請求項４】
前記データ処理システムは、１つの物理的なタイマを含み、前記高電圧タイマの満了はスケジューリングシステムで決定される、請求項５に記載の方法。
【請求項５】
前記電圧切替え閾値は、低電圧モードから高電圧モードに切替えるコストに対応する、請求項１に記載の方法。
【請求項６】
前記通知は、高電圧タイマが満了したという通知及び高電圧モードのリクエストがキャンセルされたという通知の１つを含む、請求項１に記載の方法。
【請求項７】
前記通知は、前記高電圧タイマが満了したという通知であり、
前記低電圧モードへの切替えに応答して低電圧タイマを起動する段階と、
前記低電圧タイマが満了したという通知に応答して、前記高電圧リクエストが依然として有効であると判断する段階と、
別の高電圧タイマを起動する段階と、
前記高電圧モードに切替える段階と、
を更に含む、請求項６に記載の方法。
【請求項８】
少なくとも１つのプロセッサで実行される場合に該少なくとも１つのプロセッサに対して動作を行わせる命令を記憶する非一時的コンピュータ読み取り可能記憶媒体であって、本動作は、
電圧を増加させるリクエストに応答して、増加電圧クレジットの残量が電圧切替え閾値を超えることを判断し、
前記判断に応答して、データ処理システムの少なくとも１つの構成要素に関して増加電圧モードをアクティブにし、
イベントに応答して、前記データ処理システムの前記少なくとも１つの構成要素に関する増加電圧モードを非アクティブにする、
非一時的コンピュータ読み取り可能記憶媒体。
【請求項９】
前記少なくとも１つの構成要素は、１つ又はそれ以上の中央処理ユニット（ＣＰＵ）及び図形処理ユニット（ＧＰＵ）を備える、請求項８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項１０】
前記増加電圧リクエストは、前記データ処理システム上で作動するアプリケーションが発生する、請求項８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項１１】
増加電圧モードをアクティブにすることは、更に増加電圧時間割当量に対応するタイマを開始し、前記タイマは、前記増加電圧時間割当量を使い切るとイベントを発生する、請求項８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項１２】
前記イベントは、増加電圧リクエストがキャンセルされた通知を受信することを含む、請求項８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項１３】
係数及び期間を用いて、高電圧クレジット量及び低電圧クレジットを発生する段階と、  リクエストに応答して、高電圧モードに切替える段階と、
前記高電圧クレジットを使い切ると満了する高電圧タイマを開始する段階と、
前記リクエストがキャンセルされたという通知に応答して、低電圧モードに切替える段階と、
前記高電圧タイマをキャンセルする段階と、
前記高電圧モードの持続時間を用いて、高電圧クレジット量を更新する段階と
前記低電圧クレジットを使い切ると満了する低電圧タイマを開始する段階と、
低電圧タイマが満了したという通知に応答して、残りの高電圧クレジットをバンキングする段階と、
を含む方法。
【請求項１４】
期間、係数、及び預けた高電圧クレジットに基づいて、別の高電圧クレジット量及び低電圧クレジット量を発生する段階を更に含み、前記預けた高電圧クレジットは、他の高電圧クレジット量に加算亜される、請求項１３に記載の方法。
【請求項１５】
高電圧時間割当量及び低電圧時間割当量を選択する手段と、
前記高電圧時間割当量の残余部が移行閾値を超えた場合、第１のリクエストに応答して、高電圧モードに切替える手段と、
第１のイベントの受信に応答して低電圧モードに切替える手段と、
第２のイベント及び第２のリクエストに応答して、前記高電圧モードに切替える手段と、
を備える装置。
【請求項１６】
高電圧時間割当量及び低電圧時間割当量の選択は、パーセンテージと周期期間を乗算することを含み、前記高電圧割当量は積であり、前記低電圧割当量は前記高電圧割当量未満の周期期間である、請求項１５に記載の装置。
【請求項１７】
前記移行閾値は、高電圧モードへ切替えるオーバーヘッドコストに基づいて決定される、請求項１５に記載の装置。
【請求項１８】
前記第１のイベントを受信することは、前記高電圧時間割当量を使い切ると満了に設定されるタイマからのコールバックを受信することを含む、請求項１５に記載の装置。
【請求項１９】
前記第１のイベントを受信することは、前記第１のリクエストがキャンセルされたことの通知を受信することを含む、請求項１５に記載の装置。
【請求項２０】
前記第２のイベントを受信することは、低電圧時間割当量を使い切ると満了に設定されるタイマからのコールバックを受信することを含む、請求項１８に記載の装置。
【国際調査報告】
2013530465.tif 000011
2013530465.tif 000012
2013530465.tif 000013