(57)【特許請求の範囲】
【請求項１】
ポータブルコンピューティングデバイスにおける電力消費を低減するための方法であって、
モデムにおいて、現在のデータ呼タイプを検出するステップと、
前記モデムにおいて、前記検出されたデータ呼タイプに応答する、前記モデムに記憶されたターゲットデータレートを識別するステップと、
前記モデムから、前記データ呼タイプに応答する前記ターゲットデータレートを送信するステップと、
アプリケーションプロセッサにおいて、前記ターゲットデータレートを受信するステップと、
前記アプリケーションプロセッサを使用して、割込み待ち時間閾値を、前記ターゲットデータレートをサポートすることが可能なレベルに動的に調整するステップと、
前記モデムから、前記アプリケーションプロセッサによって使用されるクロックリソースの所望の性能レベルについての要求を送信するステップと、
前記アプリケーションプロセッサを使用して、前記モデムから受信された所望の性能レベルについての要求に基づいて前記クロックリソースの性能レベルを動的に調整するステップと
を含む方法。
【請求項２】
両方の前記送信するステップが、前記モデムを前記アプリケーションプロセッサに結合する、ユニバーサルシリアルバス規格に準拠する集積回路相互接続によって可能になる、請求項1に記載の方法。
【請求項３】
両方の前記送信するステップが、ユニバーサルシリアルバス業界規格に準拠するバスによって可能になる、請求項1に記載の方法。
【請求項４】
両方の前記送信するステップが、セキュアデジタルカードインターフェース規格に準拠するバスによって可能になる、請求項1に記載の方法。
【請求項５】
前記モデムに結合されたメモリに、サポートされるデータ呼タイプおよび対応するターゲットデータレートのテーブルを記憶するステップ
をさらに含む、請求項1に記載の方法。
【請求項６】
前記アプリケーションプロセッサと一体のまたは前記アプリケーションプロセッサに結合された割込み閾値コントローラが、前記割込み待ち時間閾値を動的に調整する、請求項1に記載の方法。
【請求項７】
前記割込み閾値コントローラが、前記アプリケーションプロセッサに結合されたメモリに格納された、実行可能命令およびパラメータのうちの少なくとも1つを通じて制御される、請求項6に記載の方法。
【請求項８】
前記アプリケーションプロセッサと一体のまたは前記アプリケーションプロセッサに結合されたリソースコントローラが、リソースに関連付けられた制御入力を動的に調整する、請求項1に記載の方法。
【請求項９】
前記リソースコントローラが、前記アプリケーションプロセッサに結合されたメモリに格納された、実行可能命令およびパラメータのうちの少なくとも1つを通じて制御される、請求項8に記載の方法。
【請求項１０】
ポータブルコンピューティングデバイス上で割込み待ち時間閾値を動的に調整するためのシステムであって、
現在のデータ呼タイプを検出し、
前記検出されたデータ呼タイプに応答する、モデムに記憶されたターゲットデータレートを識別し、
前記データ呼タイプに応答する前記ターゲットデータレートを送信し、
アプリケーションプロセッサによって使用されるクロックリソースの所望の性能レベルについての要求を送信する
ために動作可能なモデムと、
前記モデムに結合されたデータバスと、
前記データバスに結合され、
前記ターゲットデータレートを受信し、
前記ターゲットデータレートでの前記モデムとのデータ転送セッションをサポートするように割込み待ち時間閾値を動的に調整し、
前記モデムによって提供された所望の性能レベルについての要求に基づいて前記クロックリソースの性能レベルを動的に調整する
ために動作可能なアプリケーションプロセッサと
を備えるシステム。
【請求項１１】
前記データバスが、ユニバーサルシリアルバス規格に準拠する集積回路相互接続を備える、請求項10に記載のシステム。
【請求項１２】
前記データバスが、ユニバーサルシリアルバス業界規格に準拠する、請求項10に記載のシステム。
【請求項１３】
前記データバスが、セキュアデジタルカードインターフェース規格に準拠する、請求項10に記載のシステム。
【請求項１４】
前記モデムに結合され、サポートされるデータ呼タイプおよび対応するターゲットデータレートのテーブルを含むメモリ
をさらに備える、請求項10に記載のシステム。
【請求項１５】
前記アプリケーションプロセッサと一体のまたは前記アプリケーションプロセッサに結合された割込み閾値コントローラをさらに備え、前記割込み閾値コントローラが、前記データバスにおけるデータスループットが一定のままであることが示された値の範囲にわたって前記割込み待ち時間閾値を調整する、
請求項10に記載のシステム。
【請求項１６】
前記割込み閾値コントローラが、前記アプリケーションプロセッサに結合されたメモリに格納された、実行可能命令およびパラメータのうちの少なくとも1つを通じて制御される、請求項15に記載のシステム。
【請求項１７】
前記アプリケーションプロセッサと一体のまたは前記アプリケーションプロセッサに結合されたリソースコントローラをさらに備え、前記リソースコントローラが、リソースに関連付けられた制御入力を調整する、請求項10に記載のシステム。
【請求項１８】
前記リソースコントローラが、前記アプリケーションプロセッサに結合されたメモリに格納された、実行可能命令およびパラメータのうちの少なくとも1つを通じて制御される、請求項17に記載のシステム。
【請求項１９】
前記ポータブルコンピューティングデバイスが、携帯電話、携帯情報端末、ページャ、スマートフォン、ナビゲーションデバイス、およびワイヤレス接続またはワイヤレスリンクを有するハンドヘルドコンピュータのうちの少なくとも1つを備える、請求項10に記載のシステム。
【請求項２０】
ポータブルコンピュータシステムであって、
モデムとアプリケーションプロセッサとの間のデータ転送を可能にするバス手段と、
データ呼タイプを識別するモデムプロセッサ手段と、を備え、
前記モデムプロセッサ手段が、前記データ呼タイプに応答する、前記モデムに記憶されたターゲットデータレートを判断し、
前記ポータブルコンピュータシステムは、割込み待ち時間閾値を、前記ターゲットデータレートをサポートすることが可能なレベルに動的に調整するアプリケーションプロセッサ手段をさらに備え、
前記モデムプロセッサ手段が、前記アプリケーションプロセッサによって使用されるクロックリソースの所望の性能レベルについての要求を、前記アプリケーションプロセッサ以外の処理要素によって識別し、
前記アプリケーションプロセッサ手段が、前記モデムプロセッサ手段から受信された前記所望の性能レベルに基づいて前記クロックリソースの性能レベルを動的に調整する、ポータブルコンピュータシステム。
【請求項２１】
データ転送を可能にする前記バス手段が、ユニバーサルシリアルバス規格に準拠する集積回路相互接続を備える、請求項20に記載のシステム。
【請求項２２】
データ転送を可能にする前記バス手段が、ユニバーサルシリアルバス業界規格に準拠するバスを備える、請求項20に記載のシステム。
【請求項２３】
データ転送を可能にする前記バス手段が、セキュアデジタルカードインターフェース規格に準拠するバスを備える、請求項20に記載のシステム。
【請求項２４】
前記割込み待ち時間閾値を動的に調整する前記アプリケーションプロセッサ手段が、データバスにおけるデータスループットが劣化しないように選択された値の範囲に制限される、請求項20に記載のシステム。
【請求項２５】
前記割込み待ち時間閾値を動的に調整する前記アプリケーションプロセッサ手段が、前記アプリケーションプロセッサに結合されたメモリに格納された、実行可能命令およびパラメータのうちの少なくとも1つを通じて制御される、請求項24に記載のシステム。
【請求項２６】
前記所望の性能を満たすようにリソースを動的に調整する前記アプリケーションプロセッサ手段が、前記アプリケーションプロセッサに結合されたメモリに格納された、実行可能命令およびパラメータのうちの少なくとも1つを通じて制御される、請求項20に記載のシステム。
【請求項２７】
前記バス手段、モデムプロセッサ手段、アプリケーションプロセッサ手段の各々が、携帯電話、携帯情報端末、ページャ、スマートフォン、ナビゲーションデバイス、およびワイヤレス接続またはワイヤレスリンクを有するハンドヘルドコンピュータのうちの少なくとも1つを備えるポータブルコンピューティングデバイス上で動作可能である、請求項20に記載のシステム。
【請求項２８】
コンピュータ可読プログラムコードを備えるコンピュータプログラムであって、前記コンピュータ可読プログラムコードが、ポータブルコンピューティングデバイスにおける電力消費を低減するための方法を実現するために実行されるように適合され、前記方法が、
モデムにおいて、現在のデータ呼タイプを検出するステップと、
前記モデムにおいて、前記検出されたデータ呼タイプに応答する、前記モデムに記憶されたターゲットデータレートを識別するステップと、
前記モデムから、前記データ呼タイプに応答する前記ターゲットデータレートを送信するステップと、
前記モデムから、データバスを介して前記モデムと通信しているアプリケーションプロセッサによって使用されるクロックリソースの所望の性能レベルについての要求を送信するステップと
を含む、コンピュータプログラム。
【請求項２９】
前記方法を実現する前記プログラムコードが、
前記モデムにおいて、前記データ呼タイプの変更を判断するステップと、
前記検出するステップおよび両方の前記送信するステップを繰り返すステップと
をさらに含む、請求項28に記載のコンピュータプログラム。
【請求項３０】
前記方法を実現する前記プログラムコードが、携帯電話、携帯情報端末、ページャ、スマートフォン、ナビゲーションデバイス、およびワイヤレス接続またはワイヤレスリンクを有するハンドヘルドコンピュータのうちの少なくとも1つを備えるポータブルコンピューティングデバイス上で実行される、請求項28に記載のコンピュータプログラム。
【請求項３１】
コンピュータ可読プログラムコードを備えるコンピュータプログラムであって、前記コンピュータ可読プログラムコードが、ポータブルコンピューティングデバイスにおける電力消費を低減するための方法を実現するために実行されるように適合され、前記方法が、
モデムから伝達された、検出されたデータ呼タイプに応答するターゲットデータレートを受信するステップと、
前記ターゲットデータレートでの前記モデムとのデータ転送セッションをサポートするように割込み待ち時間閾値を動的に調整するステップと、
アプリケーションプロセッサによって使用されるクロックリソースの所望の性能レベルについての要求を前記モデムから受信するステップと、
前記モデムによって提供された所望の性能レベルを達成するように、前記クロックリソースに関連付けられた制御入力を動的に調整するステップと
を含む、コンピュータプログラム。
【請求項３２】
前記方法を実現する前記プログラムコードが、
前記アプリケーションプロセッサのサブシステムから前記アプリケーションプロセッサによって使用されるリソースの第２の所望の性能を受信するステップと、
前記モデムによって提供された所望の性能と、アプリケーションプロセッサのサブシステムによって示されるような前記第２の所望の性能とに応答するリソースに関連付けられた制御入力を動的に調整するステップと
をさらに含む、請求項31に記載のコンピュータプログラム。
【請求項３３】
前記方法を実現する前記プログラムコードが、携帯電話、携帯情報端末、ページャ、スマートフォン、ナビゲーションデバイス、およびワイヤレス接続またはワイヤレスリンクを有するハンドヘルドコンピュータのうちの少なくとも1つを備えるポータブルコンピューティングデバイス上で実行される、請求項32に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ポータブルコンピューティングデバイスにおけるリソースの調整に関する。
【背景技術】
【０００２】
ワイヤレス通信プロトコル、エネルギー蓄積密度、プロセッサ性能および効率の技術的進歩、ならびにセルラー送信機の密度の増加は、1990年代におけるワイヤレスデジタルネットワークの導入を可能にした。第2世代のモバイルデバイスの使用がさらに普及するにつれて、インターネットへのアクセスを含むデータサービスに対する需要が増大しつつあったことが明白になった。第3世代のワイヤレス通信システムによるデータ送信に、回線交換ではなくパケット交換を導入することで、ストリーミングメディアをモバイルデバイスに配信するために必要なデータ送信レートの向上が可能になった。
【０００３】
現行のモバイル通信デバイスは、とりわけ、全地球測位システム(GPS)対応受信機によって使用される通信プロトコルなどの、ワイドエリアネットワーク(WAN)通信プロトコル、ローカルエリアネットワーク(LAN)通信プロトコルをサポートする無線周波数システムを含む。これらの無線周波数システムは、受信された信号を、データバスを介してデバイス内のアプリケーションプロセッサまたはメモリに伝達するための適切なデータ信号に処理するためのモデムを含む。無線周波数システムは、状況が変化するにつれ、様々なWANおよび/またはLAN通信信号間の制御された移行を識別し、管理する。これらの制御された移行は、データが無線周波数システムとアプリケーションプロセッサまたはメモリとの間で転送されるレートを管理することを含む。そのような制御を行うための1つの機構は、無線周波数サブシステムからアプリケーションプロセッサに伝達される別個の割込み信号の数を集めるまたは制限している。割込み信号の集合は、割込みを処理するのに必要なオーバーヘッドを低減する。例えば、米国特許出願公開第2006/0236002号明細書(Valenci)を参照。
【０００４】
現行のモバイル通信デバイスは、とりわけ、全地球測位システム(GPS)対応受信機によって使用される通信プロトコルなどの、ワイドエリアネットワーク(WAN)通信プロトコル、ローカルエリアネットワーク(LAN)通信プロトコルをサポートする無線周波数システムを含む。これらの無線周波数システムは、受信された信号を、データバスを介してデバイス内のアプリケーションプロセッサまたはメモリに伝達するための適切なデータ信号に処理するためのモデムを含む。無線周波数システムは、状況が変化するにつれ、様々なWANおよび/またはLAN通信信号間の制御された移行を識別し、管理する。これらの制御された移行は、データが無線周波数システムとアプリケーションプロセッサまたはメモリとの間で転送されるレートを管理することを含む。そのような制御を行うための1つの機構は、無線周波数サブシステムからアプリケーションプロセッサに伝達される別個の割込み信号の数を集めるまたは制限している。割込み信号の集合は、割込みを処理するのに必要なオーバーヘッドを低減する。
【０００５】
さらに、性能についての要求の結果、それに対応して消費電力が増加する。所与の実装に必要なクロック周波数とトランジスタ数の両方が増加するので、現代のプロセッサの電力損失は急速に増加しつつある。残念ながら、バッテリー技術は、これらのデータネットワーク対応のワイヤレスデバイスのエネルギー要件と足並みを揃えておらず、このことは、アプリケーション性能とバッテリー寿命との間に設計上のトレードオフをもたらす。米国特許出願公開第2009/0077394号明細書(Tsai他)を参照。
【０００６】
さらに、性能についての要求の結果、それに対応して消費電力が増加する。所与の実装に必要なクロック周波数とトランジスタ数の両方が増加するので、現代のプロセッサの電力損失は急速に増加しつつある。残念ながら、バッテリー技術は、これらのデータネットワーク対応のワイヤレスデバイスのエネルギー要件と足並みを揃えておらず、このことは、アプリケーション性能とバッテリー寿命との間に設計上のトレードオフをもたらす。
【０００７】
高性能と低電力消費の両方を実現するプロセッサに対する需要は、プロセッサ設計における動的な電圧および周波数スケーリング(DVFS)の使用につながった。DVFSは、電力消費と性能との間のトレードオフを可能にする。DVFSを利用するように設計されているプロセッサによって、プロセッサのクロック周波数を、電圧の対応する調整によって調整することができる。あらゆる電力節減は実行時間の増加によって相殺され、結果的に総エネルギー消費量を全体としては減少させないので、クロック周波数のみの低減は役立たない。しかしながら、動作電圧の対応する低減により、それに比例してプロセッサによって消費される電力が節減される。今日のプロセッサ、特に複数のプロセッサコアまたは処理エンジンを備えるプロセッサは、プロセッサ内の様々なサブシステムがクロック周波数および供給電圧を調整するために使用される情報を提供するための機構を含む。
【０００８】
しかしながら、現在のモバイルデバイスの第2の欠点は、アプリケーションプロセッサがシステムバスクロック周波数、コアクロック周波数、メモリクロック周波数、または無線周波数システムからのデータトラフィックの帯域幅需要についての情報がない他のアプリケーションプロセッサリソースを調整することである。したがって、アプリケーションプロセッサおよび/またはデータバスをサポートするために使用されるクロックの周波数は、最悪の場合、すなわち、無線周波数システムから伝達されることが可能な最も高いデータレートをサポートするように設定される。今日のモバイルデバイスは広範囲のデータ転送レートをサポートすることが可能なので、アプリケーションプロセッサをサポートするために使用されるクロック周波数は、大半のデータ転送条件下で無線周波数システムからのデータ転送をサポートするのに十二分に適切である。
【発明の概要】
【課題を解決するための手段】
【０００９】
ポータブルコンピューティングデバイスの一実施形態は、モデムおよびアプリケーションプロセッサを含む。モデムおよびアプリケーションプロセッサは、少なくとも1つのデータバスによって通信可能に結合される。モデムは、モデムとアプリケーションプロセッサとの間で、データ転送セッションの間にターゲットデータスループットを伝達する。応答して、アプリケーションプロセッサは、ターゲットデータスループットから、割込み待ち時間閾値の調整が正当であるかどうかを判断する。正当である場合、アプリケーションプロセッサは、モデムによって伝達されたターゲットデータスループットをサポートするために割込み待ち時間閾値を調整する。そうでない場合、アプリケーションプロセッサはそのような調整を実行しない。加えて、モデムは、アプリケーションプロセッサリソースの所望の性能についての要求を伝達する。応答して、アプリケーションプロセッサは、アプリケーションプロセッサが制御したリソースの制御入力を調整する。たとえば、アプリケーションプロセッサリソースは、限定はしないが、とりわけ、コア固有のクロック周波数、メモリクロック周波数、データバスクロック周波数を含む。現在のデータ転送セッションの変更は、修正されたターゲットデータスループットおよび/またはアプリケーションプロセッサリソースの所望の性能についての修正された要求を伝達するようにモデムをトリガする。
【００１０】
代替実施形態では、ポータブルコンピューティングデバイスは、ターゲットデータスループットとアプリケーションプロセッサリソースの所望の性能についての要求の両方を受信し、アプリケーションプロセッサリソースの所望の性能についての要求に応答して、アプリケーションプロセッサ内の1つまたは複数の内蔵サブシステムからの追加のリソース性能要求を考慮して、ユーザ体験に悪影響を及ぼさないと同時にデータ消費を節約するための最適なリソース性能を設定するアプリケーションプロセッサを含む。
【００１１】
ポータブルコンピューティングデバイス上で実行される、電力消費を低減するための方法の一実施形態は、モデムにおいて、現在のデータ呼タイプを検出するステップと、モデムから、データ呼タイプに応答するターゲットデータレートを送信するステップと、アプリケーションプロセッサにおいて、ターゲットデータレートを受信するステップと、アプリケーションプロセッサにおいて、割込み待ち時間閾値を、ターゲットデータレートをサポートすることが可能なレベルに動的に調整するステップと、モデムから、アプリケーションプロセッサリソースの所望の性能を送信するステップと、所望の性能を満たすようにアプリケーションプロセッサリソースを動的に調整するステップとを含む。
【００１２】
本方法の代替実施形態では、アプリケーションプロセッサは、内蔵サブシステムからの1つまたは複数の所望の性能要求を考慮して、アプリケーションプロセッサリソースを動的に調整する。
【００１３】
図中、別段に規定されていない限り、同様の参照番号は、様々な図の全体を通じて、同様の部分を指す。「102a」または「102b」などの文字指定を伴う参照番号の場合、文字指定は、同じ図に存在する2つの同様の部分または要素を区別することができる。参照番号の文字指定は、参照番号が、すべての図において同じ参照番号を有するすべての部分を包含することが意図される場合には、省略されることがある。
【図面の簡単な説明】
【００１４】
【図１】ポータブルコンピューティングデバイスの一実施形態を示す概略図である。
【図２】割込み集合閾値に応じた、電力消費と、モデムとアプリケーションプロセッサとの間のデータスループットの両方を示すグラフである。
【図３】図1のポータブルコンピューティングデバイスの特徴を示す概略図である。
【図４】図1のポータブルコンピューティングデバイス上で動作可能な方法の一実施形態を示すフローチャートである。
【図５】図3のモデム内で動作可能な方法の一実施形態を示すフローチャートである。
【図６】図3のアプリケーションプロセッサ内で動作可能な方法の一実施形態を示すフローチャートである。
【発明を実施するための形態】
【００１５】
ポータブルコンピューティングデバイス上で動作可能なデータ転送セッションまたはデータ呼の間の上記の欠陥に対処するための、データ呼またはデータ転送セッションの構成および管理の改善について示し、説明する。改善されたポータブルコンピューティングデバイスは、限定はしないが、ファイル転送、マルチメディアストリーミング、およびインターネットブラウジングアプリケーションを含む、様々なデータ転送セッションの間の電力消費の低減を達成することができる。
【００１６】
「例示的」という用語は、本明細書では、「例、事例、または例示の働きをすること」を意味するために使用される。「例示的な」ものとして本明細書で説明するいずれの態様も、必ずしも他の態様よりも好ましいか、または有利であると解釈されるわけではない。
【００１７】
本明細書では、「アプリケーションプロセッサ」という用語は、オブジェクトコード、スクリプト、バイトコード、マークアップ言語ファイル、およびパッチなどの、実行可能なコンテンツにアクセス可能なハードウェア要素を記載するために使用される。加えて、本明細書で言及されるそのような「アプリケーションプロセッサ」はさらに、データ入出力インターフェースを介して一体型メモリ要素および外部メモリ要素からのデータにアクセス可能である。「アプリケーションプロセッサ」は、実行可能なコンテンツを実行して、ポータブルコンピューティングデバイス上でのシステム機能、グラフィックス処理およびマルチメディア復号を管理する。
【００１８】
本明細書では、「ポータブルコンピューティングデバイス」という用語は、バッテリーなどの限られた容量の電源で動作する任意のデバイスを記載するために使用される。バッテリー式のモバイルデバイスは数十年にわたって使用されてきたが、第3世代(「3G」)および第4世代ワイヤレス技術の出現とともにもたらされた、再充電可能なバッテリーの技術的な進歩によって、複数の機能を有する多数のモバイルデバイスが可能になった。したがって、モバイルデバイスは、とりわけ、携帯電話、衛星電話、ページャ、PDA、スマートフォン、ナビゲーションデバイス、スマートブックまたはリーダー、メディアプレーヤ、上述したデバイスの組合せ、ワイヤレス接続を有するラップトップコンピュータとすることができる。
【００１９】
「コンテンツ」という用語は、オブジェクトコード、スクリプト、バイトコード、マークアップ言語ファイル、およびパッチなどの、実行可能なコンテンツを有するファイルも含み得る。加えて、本明細書で言及される「コンテンツ」は、開封される必要があり得るドキュメント、またはアクセスされる必要がある他のデータファイルなどの、本質的に実行可能ではないファイルも含み得る。
【００２０】
本明細書で使用される場合、「論理」、「テーブル」、「構成要素」、「モジュール」などの用語は、ハードウェア、ファームウェア、ハードウェアとソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアのいずれかであるコンピュータ関連のエンティティを指すものとする。たとえば、構成要素は、プロセッサ上で動作しているプロセス、プロセッサ、オブジェクト、実行ファイル、実行スレッド、プログラム、および/またはコンピュータであり得るが、これらに限定されない。例として、コンピューティングデバイス上で動作しているアプリケーションとコンピューティングデバイスの両方は、構成要素であり得る。1つまたは複数の構成要素は、プロセスおよび/または実行スレッド内に存在してもよく、1つの構成要素を1つのコンピュータに局在化すること、および/または2つ以上のコンピュータ間に分散することが可能である。加えて、これらの構成要素は、様々なデータ構造を記憶している様々なコンピュータ可読媒体から実行することができる。構成要素は、1つまたは複数のデータパケット(たとえば、信号によって、ローカルシステム、分散システム中の別の構成要素と、かつ/または、インターネットなどのネットワークにわたって他のシステムと対話する、1つの構成要素からのデータ)を有する信号に従うなどして、ローカルプロセスおよび/またはリモートプロセスによって通信することができる。
【００２１】
マルチコアプロセッサおよび、モバイルデバイスまたはポータブルコンピューティングデバイス上に様々な機能を実装するための専用のハードウェアリソースの導入、ならびに、バッテリー寿命の向上に対する継続的な要望によって、許容可能なエンドユーザ体験を提供しながら電力消費を低減するように、ポータブルコンピューティングデバイスを動的に調整するという課題が、さらに複雑になっている。応答して、改善されたポータブルコンピューティングデバイスおよびこれを動的に調整するための方法が開示される。利用可能な様々なポータブルコンピューティングデバイスの数、デバイスと通信するために使用される様々な通信プロトコルまたは規格、利用可能な様々なタイプのアプリケーション、デバイスの様々な使われ方などから、単一の手法または解決法は、すべての可能な機能する組合せに対して調整または最適化され得ないということが明らかになる。
【００２２】
応答して、エンドユーザの体験に悪影響を及ぼすことなく電力消費を低減するために、ポータブルコンピューティングデバイス内のパラメータを動的に調整するためのシステムおよび方法を提供することが提案される。システムは、アプリケーションプロセッサに結合されたモデムによって提供される情報に応答して割込み閾値を調整するアプリケーションプロセッサを含む。情報は、モデムによって処理されているデータ呼またはデータ転送セッションのターゲットデータレートを含む。また、モデムからのリソース性能要求を受信し、考慮するアプリケーションプロセッサを提供することが提案される。
【００２３】
システムは、ハードウェアとして、またはポータブルコンピューティングデバイス中のハードウェアによって実行されるソフトウェアまたはファームウェアの組合せで、有効にされ得る。ソフトウェアまたはファームウェアは、モバイルデバイス上で動作可能な1つまたは複数のプロセッサに結合された不揮発性メモリ要素に記憶され得る。不揮発性メモリ要素に記憶されるソフトウェアは、適切な命令実行システム(マイクロプロセッサ)に伝達され、それによって実行される。モバイルデバイス上でのハードウェア実装形態は、すべてが当技術分野でよく知られている以下の技術、すなわち、別個の部品から成る電子構成要素、データ信号上で論理機能を実施するための論理ゲートを有するディスクリート論理回路、適切な論理ゲートを有する特定用途向け集積回路、プログラマブルゲートアレイ(PGA)、フィールドプログラマブルゲートアレイ(FPGA)などのいずれかまたは組合せを含むことができる。
【００２４】
図1を参照すると、この図は、ワイヤレス電話の形のポータブルコンピューティングデバイス(PCD)100の例示的、非限定的な態様の図である。図示のように、ポータブルコンピューティングデバイス100は、ともに結合される、デジタル信号プロセッサ110およびアナログ信号プロセッサ126を含むオンチップシステム102を含む。図1に示すように、ディスプレイコントローラ128およびタッチスクリーンコントローラ130は、デジタル信号プロセッサ110に結合される。オンチップシステム102の外部にあるタッチスクリーンディスプレイ132は、ディスプレイコントローラ128およびタッチスクリーンコントローラ130に結合される。
【００２５】
図1は、ビデオエンコーダ134、たとえば位相反転線(「PAL」)エンコーダ、順次式カラーメモリ(「SECAM」)エンコーダ、全国テレビジョン方式委員会(「NTSC」)エンコーダ、または任意の他のビデオエンコーダが、デジタル信号プロセッサ110に結合されることをさらに示している。さらに、ビデオ増幅器136は、ビデオエンコーダ134およびタッチスクリーンディスプレイ132に結合される。ビデオポート138は、ビデオ増幅器136に結合される。図1に示すように、ユニバーサルシリアルバス(「USB」)コントローラ140は、デジタル信号プロセッサ110に結合される。また、USBポート142は、USBコントローラ140に結合される。メモリ112および加入者識別モジュール(SIM)カード146も、デジタル信号プロセッサ110に結合され得る。さらに、図1に示すように、デジタルカメラ148は、デジタル信号プロセッサ110に結合され得る。例示的な態様では、デジタルカメラ148は、電荷結合デバイス(「CCD」)カメラまたは相補型金属酸化膜半導体(「CMOS」)カメラである。
【００２６】
図1にさらに示すように、ステレオオーディオコーデック150は、アナログ信号プロセッサ126に結合され得る。さらに、オーディオ増幅器152は、ステレオオーディオコーデック150に結合され得る。例示的な態様では、第1のステレオスピーカー154および第2のステレオスピーカー156は、オーディオ増幅器152に結合される。図1は、マイクロフォン増幅器158もステレオオーディオコーデック150に結合され得ることを示している。加えて、マイクロフォン160は、マイクロフォン増幅器158に結合され得る。特定の態様では、周波数変調(「FM」)ラジオチューナ162は、ステレオオーディオコーデック150に結合され得る。また、FMアンテナ164は、FMラジオチューナ162に結合される。さらに、ステレオヘッドフォン166は、ステレオオーディオコーデック150に結合され得る。
【００２７】
図1は、無線周波数(「RF:radio frequency」)トランシーバ168がアナログ信号プロセッサ126に結合され得ることをさらに示している。RFスイッチ170は、RFトランシーバ168およびRFアンテナ172に結合され得る。RFスイッチ170およびRFトランシーバ168は、図3に関連して説明されるRFサブシステム169の構成要素である。図1に示すように、キーパッド174は、アナログ信号プロセッサ126に結合され得る。また、マイクロフォン付きモノヘッドセット176は、アナログ信号プロセッサ126に結合され得る。さらに、バイブレータデバイス178は、アナログ信号プロセッサ126に結合され得る。図1は、たとえばバッテリーなどの電源180がオンチップシステム102に結合されることも示している。特定の態様では、電源は、充電式DCバッテリー、または交流(「AC」)電源に接続されたAC-DC変換器から導かれるDC電源を含む。
【００２８】
図1は、ポータブルコンピューティングデバイス100が監視モジュール114を含み得ることも示している。監視モジュール114は、オンチップシステム102の全体にわたって分散される複数の動作可能なセンサ、およびポータブルコンピューティングデバイス100のデジタル信号プロセッサ110と通信する。図1に示すように、タッチスクリーンディスプレイ132、ビデオポート138、USBポート142、カメラ148、第1のステレオスピーカー154、第2のステレオスピーカー156、マイクロフォン160、FMアンテナ164、ステレオヘッドフォン166、RFスイッチ170、RFアンテナ172、キーパッド174、モノヘッドセット176、バイブレータ178および電源180は、オンチップシステム102の外部にある。しかしながら、監視モジュール114は、ポータブルコンピューティングデバイス100上で動作可能なリソースのリアルタイムの管理を援助するために、アナログ信号プロセッサ126およびデジタル信号プロセッサ110によってこれらの外部デバイスのうちの1つまたは複数から1つまたは複数の指示または信号を受信することもできることを理解されたい。
【００２９】
特定の態様では、本明細書で説明する方法のステップのうちの1つまたは複数は、メモリ112に記憶された実行可能命令およびパラメータによって実施され得る。これらの命令は、本明細書で説明する方法を実行するように、デジタル信号プロセッサ110、アナログ信号プロセッサ126、または別のプロセッサによって実行され得る。たとえば、図3に示すように、RFサブシステム169内のモデムは、モデム中のプロセッサによって実行される命令を実行するためのそれぞれのメモリに関連付けられる。加えて、プロセッサ110、126の各々、メモリ112、メモリ112に記憶された命令、またはそれらの組合せは、本明細書で説明する方法ステップのうちの1つまたは複数を実行することができる。
【００３０】
図2は、例示的なPCDにおける割込み集合閾値に応じた、電力消費とデータスループットの両方を示すグラフ200である。横軸すなわちx軸は、ミリ秒単位の割込み集合閾値を示す。左側の目盛りに示されている縦軸すなわちy軸は、各テストケースまたはデータポイントに対するバッテリー電流を測定することによって求められた電力消費を示す。加えて、右側の目盛りに示されている縦軸すなわちy軸は、ポータブルコンピューティングデバイス中のモデムとアプリケーションプロセッサとの間のデータスループットをさらに示す。トレース210は、割込み集合閾値が増大するにつれて、バッテリー電流によって求められた、ポータブルコンピューティングデバイスによって消費される電力が減少することを明らかにしている。しかしながら、トレース220は、割込み集合閾値が約0.125mSから約2.000mSに増大するにつれて、データスループットはほぼ一定であるが、約2.000mSよりも大きい割込み集合閾値の場合、データスループットは直線的に減少することを明らかにしている。
【００３１】
したがって、ポータブルコンピューティングデバイスの電力消費の改善は割込み集合閾値を制御可能に調整することによって実現され得ると判断されている。消費される電力のこの低減は、約6.000mSまではエンドユーザに気付かれることなく実現され得る。たとえば、1つのテストケースの場合、約0.125mSの割込み集合閾値を使用すると、380mAのバッテリー電流になる。割込み集合閾値を約2.000mSに増大させることによって、データスループットをまったく変化させることなく、バッテリー電流は約60mAだけ減少する。約2.000mSから約6.000mSの範囲にわたって、バッテリー電流のさらなる低減はそれほど劇的ではないが、約3%にすぎないデータスループットの低減を伴って依然として有意である。
【００３２】
図3は、図1のポータブルコンピューティングデバイス100の特徴を示す概略図である。より具体的には、改善された無線周波数サブシステム169の要素または特徴は説明図の中心の近くの一点鎖線の左側に示されており、改善された処理システムの要素は一点鎖線の右側に現れている。RFサブシステム169は、アンテナ172、アナログフロントエンド310、モデム320およびメモリ330を含む。信号の双方向送信を可能にするためのアンテナ172ならびにアンテナ172に実装される様々な電力増幅器、スイッチおよび/またはフィルタの動作は、当業者に知られている。そのような信号は、接続311を介してアナログフロントエンド310とモデム320との間で伝達される。モデム320は、プロセッサ322、バッファ324ならびに、モデム320をメモリ330に結合するデータバス321に沿った信号通信およびデータ通信を可能にするための入力/出力ドライバ(図示せず)を含む。
【００３３】
追加の入力/出力ドライバおよびサポート論理(図示せず)は、モデム320とアプリケーションプロセッサ350中の対応する回路要素およびサポート論理との間の高速インターチップ(HSIC)対応バス323に沿った信号通信およびデータ通信を可能にする。HSIC対応バスの動作の詳細は当業者に知られている。
【００３４】
他の入力/出力ドライバおよびサポート論理(図示せず)は、モデム320とアプリケーションプロセッサ350中の対応する回路要素およびサポート論理との間のユニバーサルシリアルバス対応接続325に沿った信号通信およびデータ通信を可能にする。ユニバーサルシリアルバス対応データ接続の動作の詳細は当業者に知られている。
【００３５】
さらに他の入力/出力ドライバおよびサポート論理(図示せず)は、モデム320とアプリケーションプロセッサ350中の対応する回路要素およびサポート論理との間のセキュアデジタル入出力(SDIO)対応バス327に沿った信号通信およびデータ通信を可能にする。SDIO対応バスの動作の詳細は当業者に知られている。
【００３６】
プロセッサ322は、メモリ330にアクセスし、識別された論理モジュールの各々に記憶された実行可能命令を実行して、モデム320の動作および機能を制御することができる、任意のプロセッサとすることができる。メモリ330は、揮発性または不揮発性メモリとすることができ、一実施形態では、解析論理332、バッファ論理334、リソース要求論理336およびデータテーブル338を記憶する不揮発性メモリである。メモリ330はデータまたは追加の論理を記憶するための追加の容量を有し得ることを理解されたい。
【００３７】
解析論理332は、モデム320が、モデム320とアプリケーションプロセッサ350との間の所望のデータ呼またはデータ転送に関する条件を判断するのを可能にする、実行可能命令を含む。すなわち、解析論理332は、現在のデータ呼タイプを検出するか、またはさもなければ識別するようにモデムに指示する。解析論理332はさらに、プロセッサ322がテーブル338内に記憶されたデータにアクセスして、識別されたデータ呼タイプに従ってターゲットデータレートを識別するのを可能にするか、または、テーブル338内に記憶されたデータにアクセスして、識別されたデータ呼タイプに従ってターゲットデータレートを識別するようにプロセッサ322に指示する。
【００３８】
バッファ論理334は、モデム320が、受信されたデータをアプリケーションプロセッサ350またはメモリ360に伝達する前にそのデータをバッファ324に一時的に記憶するのに適した、モデム320とアプリケーションプロセッサ350との間の所望のデータ呼またはデータ転送に関する条件を判断することを可能にする、実行可能命令を含む。たとえば、HSIC対応バス323が利用可能であり、データ呼タイプが、HSIC対応バス323がサポートすることができる最大レートよりもかなり小さいターゲットデータ転送レートを示す場合、バッファ論理334はそのことを認識し、所望のバッファ容量がバッファ324に蓄積されるまで、受信されたデータをバッファ324に一時的に記憶するようにプロセッサ322に指示する。その後、バッファ論理334は、データ転送を効率的な方法で完了するために、HSICバス323に関連付けられた入出力ドライバおよびサポート回路へのバッファされたデータの送信を管理する。
【００３９】
リソース要求論理336は、モデム320が、モデム320とアプリケーションプロセッサ350との間の所望のデータ呼またはデータ転送に関する条件を判断し、アプリケーションプロセッサ350中のリソース356の性能レベルについての1つまたは複数の提案または要求を生成することを可能にする、実行可能命令を含む。リソース356は一般に、調整可能なクロック周波数を有するシステムクロック、バスクロックおよびメモリクロックを含むが、アプリケーションプロセッサ350によって制御される任意のパラメータが識別され、アプリケーションプロセッサ350についての所望の性能レベルがリソース要求論理336に従ってプロセッサ322によって伝達され得る。リソース要求論理336は、所望のリソース性能レベルの要求を生成するためにテーブル338に記憶されたデータにアクセスするようにプロセッサ336に指示する実行可能命令をさらに含み得る。
【００４０】
改善された処理システムは、アプリケーションプロセッサ350、メモリ360および入力/出力すなわちI/Oデバイス370を含む。アプリケーションプロセッサ350は、マルチコアプロセッサ(図示せず)、割込み閾値コントローラ352、リソースコントローラ354、リソース356、ならびにアプリケーションプロセッサ350をメモリ360に結合するデータバス351に沿った信号通信およびデータ通信を可能にするための入力/出力ドライバ(図示せず)を含む。
【００４１】
追加の入力/出力ドライバおよびサポート論理(図示せず)は、通信バス353ならびにI/Oデバイス370中の対応する回路要素およびサポート論理に沿った信号通信およびデータ通信を可能にする。データ通信バスの動作の詳細は当業者に知られている。
【００４２】
アプリケーションプロセッサ350は、メモリ360にアクセスし、識別された論理モジュールの各々に記憶された実行可能命令を実行して、改善された処理システム300の動作および機能を制御することができる、任意のプロセッサとすることができる。メモリ360は、揮発性または不揮発性メモリとすることができ、一実施形態では、調整論理362、提案論理364およびデータテーブル368を記憶する不揮発性メモリである。メモリ360はデータまたは追加の論理を記憶するための追加の容量を有し得ることを理解されたい。
【００４３】
調整論理362は、アプリケーションプロセッサ350が、利用可能なバスのうちの1つまたは別の適切なバス(図示せず)を介した、モデム320およびアプリケーションプロセッサ350によってサポートされるべき現在のデータ呼または転送のためのターゲットデータレートを受信することを可能にする、実行可能命令を含む。加えて、調整論理362は、アプリケーションプロセッサ350に配置された割込み閾値コントローラ352に適切な制御信号を出す。すなわち、調整論理362はターゲットデータレートを受信し、適切な制御信号を出して、割込み待ち時間閾値を、ターゲットデータレートを適切にサポートすることが可能なレベルに調整する。調整論理362はさらに、アプリケーションプロセッサ350がテーブル368内に記憶されたデータにアクセスして、最適な割込み待ち時間閾値を識別するのを可能にするか、または、テーブル368内に記憶されたデータにアクセスして、最適な割込み待ち時間閾値を識別するようにアプリケーションプロセッサ350に指示する。
【００４４】
提案論理364は、アプリケーションプロセッサ350が、I/Oデバイス370、およびアプリケーションプロセッサ350をサポートする他のリソース356の使用を含む、ポータブルコンピューティングデバイス100に関するいくつかの様々な条件のいずれかに関する条件を判断することを可能にする、および/または、その条件を判断するようにアプリケーションプロセッサ350に指示する、実行可能命令を含む。加えて、提案論理364は、モデム320によって生成され伝達された、アプリケーションプロセッサ350をサポートするリソース356の性能レベルについての1つまたは複数の提案または要求を受信する。提案論理364は、指示された調整を行うリソースコントローラ354に伝達される適切な制御信号調整または制御信号調整のセットを決定する前に、モデムから出された条件を含む、ポータブルコンピューティングデバイス全体の現在の条件に応答する情報を受信する。提案論理364はさらに、アプリケーションプロセッサ350がテーブル368内に記憶されたデータにアクセスして、適切な制御信号調整を識別することを可能にするか、または、テーブル368内に記憶されたデータにアクセスして、適切な制御信号調整を識別するようにアプリケーションプロセッサ350に指示する。そのような調整は、アプリケーションプロセッサ350をサポートするシステムクロック、バスクロック、またはメモリクロックのクロック周波数を低下させることを含み得る。
【００４５】
図4は、図1のポータブルコンピューティングデバイス100上で動作可能な方法400の一実施形態を示すフローチャートである。方法400は、データ呼またはデータ転送動作がモデム320内で始まるときに始まる。ブロック402では、モデム320はデータ呼タイプを識別または判断する。例示的なデータ呼は、ポータブルコンピューティングデバイス100を用いてファイル転送を転送する、ウェブサイトをブラウズする、マルチメディアをストリーミングするために必要な動作を含み得る。ブロック404では、モデム320はデータ呼タイプに応答するターゲットデータレートを伝達する。説明したように、モデム320は、モデム320をアプリケーションプロセッサ350と結合する通信バスを介して、帯域外データまたは信号情報転送において、この情報を伝達する。応答して、アプリケーションプロセッサ350は、ブロック406に示されるように、基となるデータ呼のターゲットデータレートをサポートしながら、アプリケーションプロセッサ350における電力消費を低減するように、割込み待ち時間閾値を動的に調整する。ブロック408に示すように、モデム320は、アプリケーションプロセッサ350をサポートする識別されたリソースに対する所望の性能をさらに伝達する。ブロック410に示すように、アプリケーションプロセッサ350は、所望のリソース性能を実現するようにリソースを調整する。データ呼の条件が変化すると、決定ブロック412を出る「YES」とラベル付けされたフロー制御矢印で示されるように、方法400はブロック402に戻る。そうでない場合、ポータブルコンピューティングデバイス100は、残りのデータ呼について現在の構成の下で動作し続ける。
【００４６】
図5は、図3のモデム内で動作可能な方法500の一実施形態を示すフローチャートである。説明したように、モデム500は、解析論理332、バッファ論理334、リソース要求論理336およびテーブル338の各々に記憶された実行可能命令を取り出し、実行して、説明した機能を実施する。方法500はブロック502で始まり、ブロック502では、解析論理332を実行するときに、モデム320が現在のデータ呼タイプを判断する。その後、モデム320は、テーブル338中の情報とともに解析論理332を実行して、ターゲットデータレートを識別し、ターゲットデータレートをアプリケーションプロセッサ350に送信する。
【００４７】
バッファ論理334は、フロー図の中間部分を可能にするためにモデム320によって随意に実行される。たとえば、方法500は決定ブロック506を続け、決定ブロック506では、モデム320は、利用可能な通信バスのうちの1つを介してデータをバーストでアプリケーションプロセッサ350またはメモリ360に伝達する前に、データ呼の条件がデータをバッファ324にバッファするまたは一時的に保持するのに適切かどうかを判断する。決定ブロック506を出る「NO」とラベル付けされたフロー制御矢印で示されるように、ポータブルコンピューティングデバイス100に関するデータ呼の条件または他の条件がデータをバッファ324にバッファするのに適していない場合、方法500はブロック514に続く。データがバッファされるべきであると判断された場合、バッファ容量はブロック508で設定される。閾値容量はメモリ330内のテーブル338または別のデータストアに記憶され得ることに留意されたい。閾値容量は一般に、ターゲットデータレートおよびデータ転送に使用されているバスの帯域幅から決定される。バッファ容量は、バッファ324に記憶された情報をバスを介して受信要素に伝達するのをいつ開始すべきかをモデム320に示すパラメータである。決定ブロック510では、バッファ324がブロック508で構成された閾値容量に達したかどうかが判断される。閾値容量に達していない場合、ブロック512に示されるように、さらなるデータがバッファされる。そうでない場合、方法はブロック514に続き、ブロック514では、バッファされたデータが受信要素に送信される。ブロック516では、リソース要求論理336を実行するモデム320は、アプリケーションプロセッサ350をサポートするリソースからの所望の性能レベルについての要求を送信する。データ呼の条件が変化すると、決定ブロック518を出る「YES」とラベル付けされたフロー制御矢印で示されるように、方法500はブロック502に戻る。そうでない場合、ポータブルコンピューティングデバイス100は、残りのデータ呼について現在の設定の下で動作し続ける。
【００４８】
図6は、図3のアプリケーションプロセッサ350内で動作可能な方法600の一実施形態を示すフローチャートである。方法600はブロック602で始まり、ブロック602では、アプリケーションプロセッサ350はモデム320からターゲットデータレートを受信する。その後、ブロック604に示すように、アプリケーションプロセッサ350は、ターゲットデータレートをサポートしながら、アプリケーションプロセッサ350における電力消費を低減するように、割込み待ち時間閾値を動的に調整する。ブロック606では、アプリケーションプロセッサ350は、アプリケーションプロセッサ350をサポートするリソースの所望の性能の指示をモデム320から受信する。その後、ブロック608に示されるように、アプリケーションプロセッサ350は、所望の性能を実現するようにリソースを調整する。
【００４９】
図示のように、リソース356は、とりわけ、データバスクロック、システムバスクロック、メモリクロックのうちの1つまたは複数を含み得る。リソースコントローラ354で構成され、提案論理364を実行する場合、アプリケーションプロセッサ350は、アプリケーションプロセッサ350によって現在実行されている1つまたは複数のアプリケーションに関する多くの追加の要求または情報の中から、識別されたサポートリソースに対する所望の性能レベルをモデム320から受信し、考慮して、ユーザ体験に悪影響を及ぼさないと同時に電力を節約するのに適した性能レベルについて十分な情報を得たうえでの決定を下すことができる。
【００５０】
本発明が説明通りに機能するように、本明細書に記載されたプロセスまたはプロセスフロー内の特定のステップが他のステップよりも前に行われるのは当然である。しかしながら、そのような順序またはシーケンスが本発明の機能を変えない場合、本発明は記載されたステップの順序に限定されない。すなわち、開示されたシステムおよび方法から逸脱することなく、あるステップを他のステップの前に実行しても、後に実行してもよく、あるいは各ステップを並行して(実質的に同時に)実行してもよいことを認識されたい。場合によっては、当業者によって理解されるように方法から逸脱することなく、特定のステップを省略してもよく、実行しなくてもよい。さらに、「その後」、「次いで」、「次に」などの語は、ステップの順序を限定することを意図していない。これらの語は、単に例示的な方法の説明を通じて読者を導くために使用されている。
【００５１】
上記の開示に鑑みて、プログラミングの当業者は、たとえば本明細書のフローチャートおよび関連する説明に基づいて、コンピュータコードを書くか、または適切なハードウェアおよび/もしくは回路を特定し、開示された発明を容易に実施することができる。したがって、特定の1組のプログラムコード命令または詳細なハードウェアデバイスの開示が、本発明をどのように製作し使用すべきかについて適切に理解するうえで必要であるとは見なされない。特許請求されるプロセスの機能は、上記の説明において、かつ、様々なプロセスフローを示す図4〜図6とともに、より詳細に説明される。
【００５２】
1つまたは複数の例示的な態様では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、1つもしくは複数の命令もしくはコードとしてコンピュータ可読媒体上に記憶されるか、またはコンピュータ可読媒体上で送信され得る。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む、コンピュータ記憶媒体と通信媒体の両方を含む。記憶媒体は、コンピュータによってアクセスされ得る任意の利用可能な媒体であってよい。限定ではなく例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスク記憶装置、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または、命令もしくはデータ構造の形式で所望のプログラムコードを搬送もしくは記憶するために使用され得るとともに、コンピュータによってアクセスされ得る任意の他の媒体を備えることができる。
【００５３】
また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、ソフトウェアが同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用してウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は媒体の定義内に含まれる。
【００５４】
本明細書で使用する場合、ディスク(disk)およびディスク(disc)は、コンパクトディスク(「CD」)、レーザーディスク(登録商標)、光ディスク、デジタル多用途ディスク(「DVD」)、フロッピー(登録商標)ディスク、およびブルーレイディスクを含み、ディスク(disk)は、通常、磁気的にデータを再生し、ディスク(disc)は、レーザーで光学的にデータを再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
【００５５】
したがって、選択された態様について詳細に示し、説明してきたが、以下の特許請求の範囲によって定義されるような本発明のシステム、方法、およびコンピュータプログラム製品の範囲から逸脱することなく、本明細書において様々な置換および改変がなされ得ることが理解されよう。
【符号の説明】
【００５６】
100  ポータブルコンピューティングデバイス
102  オンチップシステム
110  デジタル信号プロセッサ
112  メモリ
114  監視モジュール
126  アナログ信号プロセッサ
128  ディスプレイコントローラ
130  タッチスクリーンコントローラ
132  タッチスクリーンディスプレイ
134  ビデオエンコーダ
136  ビデオ増幅器
138  ビデオポート
140  ユニバーサルシリアルバス(USB)コントローラ
142  USBポート
146  加入者識別モジュール(SIM)カード
148  デジタルカメラ
150  ステレオオーディオコーデック
152  オーディオ増幅器
154  第1のステレオスピーカー
156  第2のステレオスピーカー
158  マイクロフォン増幅器
160  マイクロフォン
162  周波数変調(「FM」)ラジオチューナ
164  FMアンテナ
166  ステレオヘッドフォン
168  無線周波数(RF)トランシーバ
169  RFサブシステム
170  RFスイッチ
172  RFアンテナ
174  キーパッド
176  マイクロフォン付きモノヘッドセット
178  バイブレータデバイス、バイブレータ
180  電源
200  グラフ
210  トレース
220  トレース
300  処理システム
310  アナログフロントエンド
311  接続
320  モデム
321  データバス
322  プロセッサ
323  高速インターチップ(HSIC)対応バス
324  バッファ
325  ユニバーサルシリアルバス対応接続
327  セキュアデジタル入出力(SDIO)対応バス
330  メモリ
332  解析論理
334  バッファ論理
336  リソース要求論理
338  データテーブル、テーブル
350  アプリケーションプロセッサ
351  データバス
352  割込み閾値コントローラ
354  リソースコントローラ
356  リソース
360  メモリ
362  調整論理
364  提案論理
368  テーブル
370  I/Oデバイス
400  方法
500  方法
600  方法
【図１】
0005893810.tif 000002
【図２】
0005893810.tif 000003
【図３】
0005893810.tif 000004
【図４】
0005893810.tif 000005
【図５】
0005893810.tif 000006
【図６】
0005893810.tif 000007