JP6273586B2 - 無線デバイスにおける動的電力管理 - Google Patents

無線デバイスにおける動的電力管理 Download PDF

Info

Publication number
JP6273586B2
JP6273586B2 JP2015539798A JP2015539798A JP6273586B2 JP 6273586 B2 JP6273586 B2 JP 6273586B2 JP 2015539798 A JP2015539798 A JP 2015539798A JP 2015539798 A JP2015539798 A JP 2015539798A JP 6273586 B2 JP6273586 B2 JP 6273586B2
Authority
JP
Japan
Prior art keywords
voltage
wireless
activity
assembly
interface unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015539798A
Other languages
English (en)
Other versions
JP2016502782A (ja
Inventor
シャンムガスンダラム、ヴェンカタチャラム
ベニワル、パリカ
ヤン、ケン
Original Assignee
マーベル ワールド トレード リミテッド
マーベル ワールド トレード リミテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by マーベル ワールド トレード リミテッド, マーベル ワールド トレード リミテッド filed Critical マーベル ワールド トレード リミテッド
Publication of JP2016502782A publication Critical patent/JP2016502782A/ja
Application granted granted Critical
Publication of JP6273586B2 publication Critical patent/JP6273586B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0251Power saving arrangements in terminal devices using monitoring of local events, e.g. events related to user activity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0225Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Sources (AREA)
  • Transceivers (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

関連出願に対する相互参照
本開示は、「無線SOCの電力消費を減少させるDVFSベースの技術を用いる方法」と題された、2012年10月24日出願の米国仮特許出願第61/717,912号の利益を主張し、その開示は、その全体の参照によりこれによって本開示において明確に組み込まれる。
本開示は、概して、通信デバイスに関し、より具体的に、無線デバイスにおいて節電オペレーションを改善するための技術に関する。
複数の通信デバイスは、比較的普及した利用を享受する。複数の携帯電話はありふれたものになっている。多くのユーザは、彼らのラップトップコンピュータを複数の無線ローカルエリアネットワーク(WLAN)へ、家および道路上で接続する。複数の運転手は、運転中に、ハンズフリーコール動作のための複数の無線イヤホンヘッドセットを用いる。実際、多くの自動車製造者は、車両に直接組み込まれたハンズフリー動作を提供する。
これらのデバイスは、従来、多数の異なるネットワーキングプロトコルのうちの一つにおいて動作しうる。複数のWLANデバイスは例えば一般的に、1999年に最初に公表された、様々な電気電子学会(IEEE)802.11規格無線プロトコルの一つにおいて動作する。これらのプロトコルは、IEEE 802.11a,802.11b,802.11n,および802.11gを含み、複数の異なるスペクトル帯および/または複数の異なる多重化SS方式(multiplexing or spread spectrum scheme)において動作する。プロトコルが作成されたWiFiにより、WLANを確立することができる。一般に、複数のWLANデバイスは、複数の通信が、ホスト、基地局、又は他のアクセスポイントを通じてルーティングされる、インフラストラクチャネットワークトポロジーにおいて用いられる。他の無線プロトコルは、ブルートゥースプロトコルであり、これは、一般に、携帯電話端末機と無線イヤホンヘッドセットの間のような、複数のデバイス間でのピアツーピア通信のためのアドホックネットワークトポロジー構成において用いられる。他の例として、複数の近距離無線通信(NFC)プロトコルは、お互いに極めて近接した2つのデバイス間でのピアツーピア通信のためのものである。いずれかのネットワーク構成は、複数のラップトップコンピュータ、ハンドヘルドコンピュータ、プリンタ、記憶媒体、および複数のホスト、ルータ、スイッチ等のような他のネットワーク機器を含む任意の数のデバイスをサポートしうる。いくつかの例では、ブルートゥースプロトコルの場合、複数の無線デバイスは、複数の携帯電話又は複数のウォーキートーキーのような複数のハンドヘルド通信機でありうる。
さらに最近では、複数の通信デバイスは、同一デバイスにおいて複数のネットワークプロトコル(例えばブルートゥース、WLAN、およびNFC)をサポートするように設計された。例えば、携帯電話は、ブルートゥースチャネルを介してヘッドセットで音声データを送信および受信し、音声、ビデオ、イメージ、テキスト、および他のデータを、802.11チャネルを介して、別々に送信および受信することができうる。さらに、そのようなデバイスはしばしば、他の複数の無線通信機能、例えば周波数変調(FM)ブロードキャスト無線感受を含む。
概して、複数の無線デバイスは、多くの異なる電源を用いて動作しうる。いくつかのデバイスは、一定のAC電源を用い、一方他は、バッテリ電力を切って動作し、一方他は、どちらかから動作する。ネットワーク上の複数のデバイスのための様々な電源の場合、電力消費は、ネットワークオペレーションの重要な見地となっており、そのため、無線デバイスオペレーションの重要な見地となっている。
1つの実施形態では、通信デバイスにおける無線アセンブリの電力消費を動的に調節する方法であって、第1の通信プロトコルに従って動作するように構成された第1の無線インターフェースユニットのアクティビティを示す第1の信号を、無線アセンブリの電力管理ユニットで受信する段階と、第2の通信プロトコルに従って動作するよう構成された第2の無線インターフェースユニットのアクティビティを示す第2の信号を、無線アセンブリの電力管理ユニットで受信する段階とを含む。第2の通信プロトコルは第1の通信プロトコルとは異なる。方法はまた、第1の信号および第2の信号に基づいて、第1の無線インターフェースユニットのアクティビティと第2の無線インターフェースユニットのアクティビティとをサポートするために必要な供給電圧レベルを決定する段階を含む。方法はさらに、供給電圧レベルに基づいて、無線アセンブリに供給される供給電圧を調節する段階を含む。
他の複数の実施形態では、方法は、以下の複数の特徴のうちの1または複数の任意の組み合わせを含む。
第1の信号および第2の信号に基づいて、第1の無線インターフェースユニットのアクティビティと第2の無線インターフェースユニットのアクティビティとをサポートするのに必要な供給電圧レベルを決定する段階は、第1の無線インターフェースユニットのアクティビティをサポートするのに必要な第1の電圧レベルを決定すべく、第1の無線インターフェースユニットのアクティビティに対応するインデックスに従って第1の電圧テーブルにアクセスする段階を含む。
第1の信号および第2の信号に基づいて、第1の無線インターフェースユニットのアクティビティと第2の無線インターフェースユニットのアクティビティとをサポートするのに必要な供給電圧レベルを決定する段階は、第2の無線インターフェースユニットのアクティビティをサポートするのに必要な第2の電圧を決定すべく、第2の無線インターフェースユニットのアクティビティに対応するインデックスに従って第2の電圧テーブルにアクセスする段階を含む。
第1の信号および第2の信号に基づいて、第1の無線インターフェースユニットのアクティビティと第2の無線インターフェースユニットのアクティビティとをサポートするのに必要な供給電圧レベルを決定する段階は、第1の無線インターフェースユニットのアクティビティと第2の無線インターフェースユニットのアクティビティとをサポートするのに必要な供給電圧レベルとして、第1の電圧レベルおよび第2の電圧レベルのうちのより大きな方を選択する段階を含む。
方法はさらに、無線アセンブリの中央処理装置(CPU)のアクティビティを示す第3の信号を、無線アセンブリの電力管理ユニットで受信する段階を含み、CPUは、第1の無線インターフェースユニットおよび第2の無線インターフェースユニットの少なくとも一方のオペレーションを制御するべく、メモリに格納された複数のコンピュータ可読命令を実行するように構成される。
方法はさらに、CPUのアクティビティをサポートするのにCPUによって必要とされるクロック周波数を決定する段階を含む。
供給電圧レベルを決定する段階は、さらに、CPUのアクティビティをサポートするのに必要なクロック周波数に基づく。
方法はさらに、決定されたクロック周波数に従って、CPUに対応するクロック信号を調節する段階と、調節されたクロック信号をCPUへ供給する段階とを含む。
クロック信号を調節する段階は、無線アセンブリへ供給される供給電圧が、決定されたクロック周波数をサポートするのに十分なレベルであることを決定することに応じて、クロック周波数を調節する段階を含む。
CPUのアクティビティをサポートするのにCPUによって必要とされるクロック周波数を決定する段階は、CPUのアクティビティに対応するインデックスに従って、周波数および電圧テーブルにアクセスする段階と、CPUのアクティビティをサポートするのに必要な周波数値および電圧値を含むテーブルエントリを取得する段階とを備える。
テーブルエントリは、周波数値に対する周波数源が、(i)CPUの外部の位相同期ループ、又は(ii)CPUの内部の基準周波数生成器のいずれであるかを示す周波数源インジケータをさらに含む。
方法はさらに、ホストアセンブリインターフェースユニットを介して無線アセンブリに接続されたホストアセンブリのアクティビティを示す第4の信号を、無線アセンブリの電力管理ユニットで受信する段階を含む。
方法はさらに、ホストアセンブリのアクティビティをサポートするのにホストアセンブリインターフェースユニットによって必要とされる電圧レベルを決定する段階を含む。
供給電圧レベルを決定する段階は、さらに、ホストアセンブリインターフェースをサポートするのに必要な電圧レベルに基づく。
供給電圧レベルに従って、無線アセンブリに供給される供給電圧を調節する段階は、無線アセンブリに供給電圧を供給する電圧源へ、制御信号を提供する段階を含む。
電圧源は、(i)降圧発生器又は(ii)低ドロップアウト電圧(LDO)電圧発生器の一方である。
別の実施形態において、無線デバイスの無線アセンブリは、第1の通信プロトコルに従って動作するように構成された第1の無線インターフェースユニットと第2の通信プロトコルに従って動作するように構成された第2の無線インターフェースユニットとを少なくとも含む複数の無線インターフェースユニットを備える。無線デバイスはさらに、第1の無線インターフェースユニットのアクティビティを示す第1の信号を受信し、第2の無線インターフェースユニットのアクティビティを示す第2の信号を受信するように構成された動的電力管理ユニットを備える。動的電力管理ユニットはまた、第1の無線インターフェースユニットのアクティビティと第2の無線インターフェースユニットのアクティビティとをサポートするのに必要な供給電圧レベルを、第1の信号および第2の信号に基づいて決定するように構成される。動的電力管理ユニットはさらに、無線アセンブリの供給電圧を、供給電圧レベルに基づいて調節するように構成される。
別の実施形態では、無線アセンブリは、以下の複数の特徴のうちの1または複数の任意の組み合わせを備える。
動的電力管理ユニットは、第1の無線インターフェースユニットのアクティビティをサポートするのに必要な第1の電圧レベルを決定すべく、第1の無線インターフェースユニットのアクティビティに対応するインデックスに従って、第1の電圧テーブルにアクセスするように構成される。
動的電力管理ユニットは、第2の無線インターフェースユニットのアクティビティをサポートするのに必要な第2の電圧レベルを決定すべく、第2の無線インターフェースユニットのアクティビティに対応するインデックスに従って、第2の電圧テーブルにアクセスするように構成される。
動的電力管理ユニットは、第1の無線インターフェースユニットのアクティビティと第2の無線インターフェースユニットのアクティビティとをサポートするのに必要な供給電圧レベルとして、第1の電圧レベルおよび第2の電圧レベルのうちのより大きな方を選択するように構成される。
無線アセンブリは、中央処理装置(CPU)をさらに備え、中央処理装置は、第1の無線インターフェースユニット又は第2の無線インターフェースユニットの少なくとも一方のオペレーションを制御すべく、メモリに格納された複数のコンピュータ可読命令を実行するように構成される。
動的電力管理ユニットはさらに、CPUのアクティビティを示す第3の信号を、CPUから受信するように構成される。
動的電力管理ユニットはさらに、CPUのアクティビティをサポートするのにCPUによって必要とされるクロック周波数を決定するように構成される。
動的電力管理ユニットはさらに、供給電圧レベルを、CPUのアクティビティをサポートするのに必要なクロック周波数にさらに基づいて決定するように構成される。
動的電力管理ユニットは、決定されたクロック周波数に従って、CPUに対応するクロック信号を調節するように構成される。
調節されたクロック信号は、CPUへ供給される。
動的電力管理ユニットは、無線アセンブリに供給される供給電圧が決定されたクロック周波数をサポートするのに十分なレベルであることを決定することに応じて、クロック信号を調節するように構成される。
動的電力管理ユニットは、CPUのアクティビティに対応するインデックスに従って、周波数および電圧テーブルにアクセスし、CPUのアクティビティをサポートするのに必要な周波数値および電圧値を含むテーブルエントリを取得するように構成される。
テーブルエントリは、周波数値に対する周波数源が、(i)CPUの外部の位相同期ループ、又は(ii)CPUの内部の基準周波数生成器のいずれであるかを示す周波数源インジケータをさらに含む。
無線アセンブリはさらに、無線アセンブリをホストアセンブリに接続するホストインターフェースユニットを備える。
動的電力管理ユニットはさらに、ホストアセンブリインターフェースユニットを介して無線アセンブリに接続されるホストアセンブリのアクティビティを示す第4の信号を受信するように構成される。
動的電力管理ユニットはさらに、ホストアセンブリのアクティビティをサポートするのにホストアセンブリインターフェースユニットによって必要とされる電圧レベルを決定するように構成される。
動的電力管理ユニットはさらに、ホストアセンブリインターフェースユニットをサポートするのに必要な電圧レベルにさらに基づいて、供給電圧レベルを決定するように構成される。
動的電力管理ユニットは、電圧レギュレータが制御信号に基づいて、無線アセンブリへ提供される供給電圧を調節するように、無線アセンブリへ供給電圧を供給する電圧源へ、制御信号を提供するように構成される。
電圧源は、(i)降圧発生器、又は低ドロップアウト電圧(LDO)電圧発生器の一方である。
実施形態により、無線デバイスの電力消費を効率的に管理すべく、動的電圧および周波数スケーリングを用いる例の無線デバイスのブロック図である。
実施形態およびシナリオにより、無線デバイスの実際のニーズに基づいて、無線デバイスにおいて供給電圧を動的に調節する方法を示すタイミング図である。
他の実施形態およびシナリオにより、無線デバイスの実際のニーズに基づいて、無線デバイスにおいて供給電圧およびクロック周波数を動的に調節する方法を示すタイミング図である。
実施形態およびシナリオにより、無線デバイスの実際のニーズに基づいて、無線デバイスにおいて供給電圧を動的に調節する方法を示すタイミング図である。
実施形態により、動的電圧および周波数スケーリングシステムの例の実装のブロック図である。
実施形態により、周波数および電圧テーブルの例の実施形態を示す。
実施形態により、ソフトウェアドメイン電圧および周波数要求ユニットの例の実装の様々な部分のブロック図である。 実施形態により、ソフトウェアドメイン電圧および周波数要求ユニットの例の実装の様々な部分のブロック図である。
実施形態により、ハードウェアドメイン電圧要求ユニットの例の実装のブロック図である。
実施形態により、電圧制御ユニットの例の実装のブロック図である。
実施形態により、周波数制御ユニットの例の実装のブロック図である。
実施形態により、周波数コントローラの例の実装である。
実施形態により、通信デバイスにおいて、無線アセンブリの電力消費を動的に調節する例の方法1200のフロー図である。
図1は、実施形態により、無線デバイス100の電力消費を効率的に管理するべく、動的電圧および周波数スケーリングを用いる例の無線デバイス100のブロック図である。無線デバイス100は、ホストアセンブリ102および無線アセンブリ104を含む。ホストアセンブリ102は、概して、ホストアセンブリ102のオペレーションを制御するプロセッサ106を含む。いくつかの実施形態において、プロセッサ106は、例えば、インターフェース108を介して無線アセンブリ104から受信された複数のパケットの処理のような、ホストアセンブリ102のオペレーションの制御以外の複数の機能を実行する。ホストアセンブリ104はまた、無線アセンブリ104にホストアセンブリ106を接続する1または複数のインターフェースユニット108を含む。図1の例の実施形態において、複数のインターフェースユニット108は、セキュアデジタル入力/出力(SDIO)インターフェース108―1、ユニバーサル非同期受信機/送信機(UART)インターフェース108―2およびペリフェラルコンポーネントインターコネクトエクスプレス(PCIE)インターフェース108―3を含む。複数の他の実施形態において、ホストアセンブリ102は、図1に示されるインターフェースユニット108のうちの1または複数を省略し、および/または、ユニバーサルシリアルバス(USB)インターフェース、又はホストアセンブリ102を無線アセンブリ104に接続するのに適切な任意の他のインターフェースのような、図1に示されない1または複数のインターフェースを含む。
無線アセンブリ104は、複数の無線通信インターフェースユニット110を含み、複数の無線通信インターフェースユニット110の各々は、各自の無線通信プロトコルに従って動作するように構成される。図1の例の実施形態において、複数の無線通信インターフェースユニット110は、IEEE802.11通信プロトコルのようなWLAN通信プロトコルに従って動作するように構成された無線ローカルエリアネットワーク(WLAN)ユニット110―1、BT通信プロトコルに従って動作するように構成されるブルートゥース(BT)ユニット110―2、FM無線通信プロトコルに従って動作するように構成された周波数変調(FM)無線ユニット110―3、および適切なNFC通信プロトコルに従って動作するように構成される近距離無線通信(NFC)ユニット110―4を含む。他の複数の実施形態において、無線アセンブリ104は、図1に示されるモジュール110のうちの1または複数を省略し、および/または、図1に示されない1または複数の無線インターフェースを含み、これは例えば、ワールドワイドインターオペラビリティフォーマイクロウェーブアクセス(WiMAX)インターフェース、又は任意の適切な通信ネットワークへの無線アセンブリ104および/または通信ネットワークに接続されるデバイスの間での通信を可能にするように構成される任意の他の適切なインターフェースである。
無線アセンブリ104はさらに、無線アセンブリ104をホストアセンブリ102に接続する、ホストアセンブリ102の1または複数のインターフェースユニット108に対応する、1または複数のインターフェースユニット112を含む。図1の例の実施形態において、複数のホストインターフェースユニット112は、セキュアデジタル入力/出力(SDIO)インターフェース112―1、ユニバーサル非同期受信機/送信機(UART)インターフェース112―2、およびペリフェラルコンポーネントインターコネクトエクスプレス(PCIE)インターフェース112―3を含む。他の複数の実施形態において、無線アセンブリ104は、図1に示されたインターフェース112のうちの1または複数を省略し、および/または図1に示されない1または複数のインターフェースを含み、これは例えば、ユニバーサルシリアルバス(USB)又は無線アセンブリ104をホストアセンブリ102に接続するのに適した任意の他のインターフェースである。
無線アセンブリ104はさらに、1または複数の中央処理装置(CPU)114、および複数のCPU114を無線アセンブリ104の他の複数のコンポーネントと相互接続するシステムバス116を含む。図を不明瞭にするのを避けるべく、システムバス116への接続の全てが示されるわけではないことが留意される。実施形態において、例えば、ホストインターフェースユニットの各々は、システムバス116に接続される。実施形態において、1または複数のCPU114は、複数の無線通信インターフェースユニット110のオペレーションを制御し、概して、複数の無線インターフェース110に関連付けられた複数の機能を実行するように構成され、例えば、複数の無線インターフェース110を介して複数のデータユニット(例えばパケット)を送信および受信する。1つの実施形態において、第1のCPU(例えばCPU114―1)は、WLANユニット110―1に関連付けられた複数の機能のオペレーションを制御し、概して当該機能を実行し、第2のCPU(例えばCPU114―2)は、BTユニット110―2、FMユニット110―3およびNFCユニット110―4の各々に関連付けられた複数の機能のオペレーションを制御し、概して当該機能を実行し、BTユニット110―2、FMユニット110―3およびNFCユニット110―4の各々は、WLANモジュール110−1を動作させるのに必要な処理帯域幅に比べて小さな処理帯域幅を必要とする。他の複数の実施形態において、インターフェースユニット110の制御は、他の適切な複数の方法において複数のCPU114間で分割される。さらに、無線アセンブリ104は、2つのCPU114を含むように図1に示されるが、無線アセンブリ104は、いくつかの実施形態において、複数の無線通信インターフェースユニット110の全ての制御を担う単一のCPUを含む。さらに他の実施形態において、無線アセンブリ104は、他の適切な数(例えば3,4,5,6等)のCPU114を含む。
実施形態により、複数の無線通信インターフェースユニット110および複数のホストインターフェースユニット112は、プロセッサ/ASICコンポーネント又は無線アセンブリ104の他のデジタル又はアナログコンポーネントのような、無線アセンブリ104の複数のハードウェアコンポーネントであり、これらのコンポーネントは、ときに、個別に又は全体として、本開示で利便性のために、複数のハードウェアドメインコンポーネント118と参照される。一方、CPU114およびシステムバス116は概して、複数のソフトウェアコンポーネントであり、例えば、(例えば、CPU114の場合)メモリに格納される複数のコンピュータ可読命令を実装し、(例えば、システムバス116の場合)無線アセンブリ104の様々なコンポーネント間でデータ転送するように構成された複数のプロセッサであり、これらのコンポーネントは、本開示で利便性のために、個別に又は全体として、複数のソフトウェアドメインコンポーネント119と参照される。
様々な実施形態において、特定のハードウェアドメインコンポーネント118又は特定のソフトウェアドメインコンポーネント119によって必要とされる供給電圧は、特定のコンポーネント118、119のアクティビティに依存する。例えば、実施形態において、複数の無線通信インターフェースユニット110の各々は、アクティブモード又はスリープモードで動作可能である。概して、実施形態において、無線インターフェースユニット110は、スリープモードで適切に動作するのに必要な供給電圧に比べて、アクティブモードで適切に動作するために異なる供給電圧を必要とする。さらに、実施形態において、アクティブモードで動作する際、無線インターフェースユニット110によって実際に必要とされる供給電圧は、無線インターフェースユニット110によって実行されている特定の機能に依存する。ただの例として、実施形態において、スリープモードにおいて、WLANユニット110―1は、第1の値(例えば0.8V、0.9V、又は任意の他の適切な値)を有する供給電圧で動作可能であり、アクティブモードにおいて、WLANユニット110―1は、第2の値、例えば1Vと1.15Vの間の値を有する供給電圧を必要とし、これは例えば、WLANユニット110―1によって実行される特定の機能に依存する特定の電圧を有する。実施形態において、例えば、WLANユニット110―1は、データユニットを受信する際に1.15Vの供給電圧を必要とし、しかし、データユニットを送信すべく、1.1Vのみの供給電圧を必要とする。実施形態において、同様に、他の例として、データユニットを送信するべくBTユニット110―2によって必要とされる供給電圧は、1.0Vのような第1の値であり、通信チャネルスキャンを実行すべくBTユニット110―2によって必要とされる供給電圧は、0.9Vのような第2の値である。
実施形態において、インターフェースモジュール112によって必要とされる供給電圧は、実施形態においてホストアセンブリ102がインターフェースモジュール112を介して実行している複数の現在の機能に依存する。例えば、WLANユニット110―1を介した送信のためにホストアセンブリ102のプロセッサ106からデータユニットを受信すべくPCIEインターフェース112―3によって必要とされる供給電圧は、ホストプロセッサ106がスリープ状態のとき、又は現在PCIEインターフェース112―1以外のインターフェースを介して無線アセンブリ104と通信しているとき、PCIEインターフェース112―3によって必要とされる供給電圧とは異なる(例えばより高い)。いくつかの実施形態において、同様に、複数のCPU114およびシステムバス116の各々によって必要とされる供給電圧は、CPU114の現在のモード又は状態、複数のCPU114によって実行されているアクティビティ又は複数のアクティビティ、システムバス116のアクティビティ等に依存する。さらに、CPU114および/またはシステムバス116は、非レガシーデータユニット(例えば、非レガシー通信プロトコルに準拠するパケット)を送信するような、1つのアクティビティを実行するより、レガシーデータユニット(例えば、レガシー通信プロトコルに準拠するパケット)を送信するような、他方のアクティビティを実行するために異なるクロック周波数を必要とする。
下記の様々な実施形態において、無線アセンブリ104の供給電圧、および/または無線アセンブリ104の複数のソフトウェアドメインコンポーネント119に提供される複数のクロック周波数は、オペレーションの現在のモードおよび/または無線アセンブリ104の様々なコンポーネントによって実行されている現在の複数のアクティビティに基づいて、動的に調節される。少なくともいくつかの実施形態において、無線アセンブリ104の様々なコンポーネントの実際のニーズに従って、供給電圧および/または無線アセンブリ104に提供されているクロック周波数を動的に調節することにより、無線アセンブリ104によって消費される電力を著しく減少させる。
実施形態において、無線アセンブリ104は、無線アセンブリ104の供給電圧および/または無線アセンブリ104の複数のソフトウェアコンポーネント119に供給される複数のクロック周波数を効率的に制御するよう構成された、動的電圧および周波数スケーリング(DVFS)ユニット120のような、動的電力管理ユニットを含む。図1の実施形態において、DVFSユニット120は、無線アセンブリ104へ供給電圧を提供する電圧レギュレータ126と、無線アセンブリ104の様々なソフトウェアコンポーネント119へ複数のクロック信号を提供する周波数コントローラ128とに接続される。 実施形態において、DVFSユニット120は、少なくとも部分的に、ハードウェア、複数のファームウェア命令を実装するプロセッサ、又はそれらのいくつかの組み合わせとして、実装される。例えば、いくつかの実施形態において、DVFSユニット120は、カスタム集積回路、特定用途向け集積回路(ASIC)等として実装される。電圧レギュレータ126は、1つの実施形態では、降圧レギュレータである。他の複数の実施形態では、電圧レギュレータ126は、例えば低損失(低ドロップアウト)(LDO)レギュレータのような、他の適切な電圧レギュレータである。実施形態において、周波数制御ユニット128は、複数のCPU114の複数のクロックおよび/またはシステムバス116のクロックを制御すべく、信号を選択するためのロジックを含む。
実施形態において、概して言えば、DVFSユニット120は、無線アセンブリ104の様々なコンポーネントのアクティビティをモニタリングし、無線アセンブリ104の複数のコンポーネントのアクティビティに基づいて、無線アセンブリ104へ供給される供給電圧のレベルを動的に調節するように構成される。さらに、実施形態において、DVFSユニット120は、複数のソフトウェアコンポーネント119のアクティビティに基づいて、無線アセンブリ104の複数のソフトウェアコンポーネント119へ供給される複数のクロック信号を調節するように構成される。実施形態に依存して、DVFSユニット120は、(i)1または複数の通信モジュール110からの、1または複数の通信モジュール110の現在のアクティビティを示す1または複数の信号122―1のセット、(ii)1または複数のインターフェースモジュール112からの、ホストアセンブリ102が1または複数のインターフェースモジュール112を介して実行する(又は、まもなく実行する必要がある)複数の現在のアクティビティを示す1または複数の信号122―2のセット、および(iii)1または複数のCPU114および/またはシステムバス116からの、複数のCPU114および/またはシステムバス116の現在のアクティビティを示す1または複数の信号122―3のセットのうちの1または複数を受信するように構成される。実施形態により、オペレーションにおいて、DVFSユニット120は、1または複数の信号122―1、122―2および/または122―3を受信し、受信した1または複数の信号122―1、122―2および/または122―3に基づいて、無線アセンブリ104の様々なコンポーネント118、119によって現在必要とされる供給電圧レベルを決定する。実施形態において、DVFSユニット120は、複数のソフトウェアコンポーネント119から受信した各自の信号122―3に基づいて、複数のソフトウェアコンポーネント119の各々によって現在必要とされるクロック周波数を決定する。
実施形態および/またはシナリオにおいて、DVFSユニット120は、信号124―1を生成し、信号124―1を電圧レギュレータユニット126に提供して、無線アセンブリ104の様々なコンポーネントの現在のニーズに基づいて、無線アセンブリ104の供給電圧を調節する。同様に、実施形態および/またはシナリオにおいて、DVFSユニット120は、複数のソフトウェアコンポーネント119の各々についての各自の信号124―2を生成し、各自の信号124―2を周波数制御ユニット126に提供して、複数のソフトウェアコンポーネント119の現在のニーズに基づいて、複数のソフトウェアコンポーネント119の複数のクロック周波数を調節する。
DVFSユニット120が、無線アセンブリ104の供給電圧および無線アセンブリ104の複数のソフトウェアコンポーネント119の個別のクロック周波数を制御すべく、無線アセンブリ104に設けられるため、CPU114―1およびCPU114―2は、少なくともいくつかの実施形態および/またはシナリオにおいて、複数の無線インターフェースユニット110の複数のパワーセーブオペレーションを実行する必要がない。さらに、複数の無線インターフェースユニット110の供給電圧がDVFSユニット120によって制御されるため、無線インターフェースユニット110は、少なくともいくつかの状況において、無線インターフェースユニット110のオペレーションを制御することを担うCPU114から独立して動作できる。例えば、インターフェースユニット110と概してインターフェースユニット110のオペレーションを制御することを担うCPU114とが両方スリープモードで動作する場合、インターフェースユニット110が起きて、CPU114と独立にCPU114を起こさずに、動作を実行できる。ただの一つの具体的な例として、1つの例の実施形態およびシナリオにおいて、概してBTインターフェース110―2のオペレーションを担うCPU114―2がスリープ状態のままでいる間、BTインターフェース110―2は、起きて通信チャネルスキャンを実行できる。さらに、実施形態において、CPU114―2は、例えば、スキャンの結果として見られるデバイスとの接続を確立すべく、必要な場合に起きることができる。
図2は、他の実施形態および/またはシナリオにより、無線デバイスの実際のニーズに基づいて、無線デバイスにおける供給電圧を動的に調節する方法の実施形態を示すタイミング図150である。タイミング図150は、説明の簡略化のために、図1を参照して記載されうる。しかし、他の複数の実施形態において、図1の無線デバイス100とは異なる適切なデバイスは、図2に示される方法を用いうる。
図2において、WLANインターフェース110―1およびBTインターフェース110―2は、最初にアクティブモードにおいて動作している。DVFSユニット120は、1.1Vの公称電圧を出力すべく、適宜に電圧レギュレータ126を制御する。時点152では、WLANインターフェース110―1は、スリープ状態に入る用意ができ、それに従って、信号をDVFSユニット120へ送信し、WLANインターフェース110―1がスリープモードに入っていることをDVFSユニット120に示す。このシナリオにおいて、BTインターフェース110―2は、アクティブのままで、インターフェースBTインターフェース110―2がアクティブモードで動作していることをDVFSユニット120に示し続ける。信号を受信することに応じて、DVFSユニット120は、無線アセンブリ104のための供給電圧が、BTインターフェース110―2のアクティブモードに対応する1.0Vまで現在下げられることができることを決定し、電圧レギュレータ126の出力電圧を1.0Vまで下げるべく、適宜に電圧レギュレータ126を制御する。後に、時点154において、WLANインターフェース110―1は起きて、例えば、アクセスポイントと通信して、アクセスポイントが無線デバイス100に送信する任意のデータを有するかを決定する。DVFSユニット120は、WLANインターフェース110―1が起きていることを示す信号を、WLANインターフェース110―1から受信して、無線アセンブリ104の供給電圧が現在WLANインターフェース110―1のアクティブ状態に対応する公称1.1Vまで上げられる必要があることを決定する。DVFSユニット120は、電圧レギュレータ126の出力電圧を1.1Vまで戻すべく、適宜に電圧レギュレータ126を制御する。
図3は、他の実施形態および/またはシナリオにより、無線デバイスの実際のニーズに基づいて、無線デバイスにおいて供給電圧を動的に調節する方法の実施形態を示すタイミング図160である。タイミング図160は、説明の簡略化のために、図1を参照して説明される。しかし、他の複数の実施形態において、図1の無線デバイス100とは異なる適切なデバイスは、図3に示される方法を用いうる。
図3において、WLANインターフェース110―1は、最初に1.1Vの公称電圧で動作しており、レガシーモードで動作している。このモードにおいて、WLANインターフェース110―1のオペレーションを制御する、CPU114―1のクロック周波数が、例えば160MHzにセットされる。時点162において、WLANインターフェース110―1は、例えば非レガシーパケットを送信するべく、非レガシーモードに入ることを望む。WLANインターフェース110―1は、DVFSユニット120に、CPU114―1のクロック周波数が例えば320MHzのような非レガシーモードオペレーションのために必要なクロック周波数にまで増加される必要があることを示すべく、適宜にDVFSユニット120に知らせる。DVFSは、320MHzクロックでのCPU114―1のオペレーションのために必要な1.15Vにまで増加させるべく、電圧レギュレータ126の電圧出力を制御し、320MHzにまでクロック周波数を増加させるべく、周波数コントローラ128を制御することによって、応答する。実施形態において、320MHzにまでクロック周波数を増加させるべく周波数コントローラ128を制御する前に、1.15Vのより高い電圧レベルが、電圧レギュレータ126によって達せられたことを、DVFSユニット120が保証する。
その後に、時点164において、WLANインターフェース110―1はレガシーモードに戻ることを望む。このモードにおいて、CPU114―1のクロック周波数は、160MHzに再度セットされうる。WLANインターフェース110―1は、CPU114―1のクロック周波数が160MHzにまで低減されうることをDVFSユニット120に示すべく、DVFSユニット120に適宜知らせる。160MHzクロックでのCPU114―1のオペレーションに必要とされる1.10Vにまで電圧レギュレータ126の出力を減らすべく電圧レギュレータ126を制御し、160MHzにクロック周波数をセットするべく周波数コントローラ128を制御することによって、DVFSが応答する。この場合、供給電圧レベルは、前の電圧レベルに対して上げられるよりむしろ下げられ、160MHzにまでクロック周波数を低減するべく周波数コントローラ128を制御する前に、電圧レギュレータ126によって新しい電圧レベルが達せられるということを、DVFSユニット120が保証する必要は無い。従って、図3の実施形態において、示されたシナリオにおいて、電圧レギュレータ128によって1.1Vに電圧レベルの移行が完了される前に、160MHzにクロック周波数を低減するべく、DVFSユニット120が周波数コントローラ128を制御する。
図4は、実施形態により、無線デバイスの実際のニーズに基づいて、無線デバイスにおいて供給電圧を動的に調節する方法の実施形態を示すタイミング図170である。タイミング図170は、説明の簡略化のために、図1を参照して説明される。しかし、他の複数の実施形態において、図1の無線デバイス100とは異なる適切なデバイスが、図4に示された方法を用いうる。
図4において、無線アセンブリ104は、最初に1.1Vの公称電圧で電力供給される。時点172において、無線アセンブリ104は、インターフェース110、112、複数のCPU114およびシステムバス116が、図4の場合は0.9Vであるスリープ電圧で動作できる、スリープモードに入る。従って、DVFSユニット120は、0.9Vのスリープ電圧を生成すべく、電圧レギュレータ126を制御する。その後、時点174において、ホストアセンブリ102は、無線アセンブリ104を起こし、公称電圧レベルがホストアセンブリ102によって要求されていることをDVFSユニット120に示す信号をDVFSユニット120に送信する。ホストアセンブリ102から信号を受信することに応じて、DVFSユニット120は、1.1Vの要求された公称電圧を生成すべく、電圧レギュレータ126を制御する。実施形態において、1.1Vの公称電圧により、無線アセンブリ104がアクティブ状態で現在動作することを可能にする。
図5は、実施形態により、動的電圧および周波数スケーリングシステム200の例の実装のブロック図である。実施形態において、図1のDVFSユニット120は、DVFSシステム200を実装する。他の複数の実施形態において、DVFSシステム200は、無線デバイス100の別の適切なコンポーネントによって少なくとも部分的に実装され、又は、無線デバイス100以外の適切なデバイスによって実装される。同様に、DVFSモジュール102および/または無線デバイス100の別のコンポーネントは、DVFSシステム200以外のDVFSシステムを実装する。説明の簡略化のために、システム200は、図1を参照して以下説明される。
DVFSシステム200は、ソフトウェアドメイン電圧およびクロック周波数要求ユニット202、およびハードウェアドメイン電圧要求ユニット204を含む。実施形態により、ソフトウェアドメイン周波数および電圧要求ユニット202は、無線アセンブリ104のCPU114および/またはシステムバス116のような無線アセンブリ104の複数のソフトウェアドメインコンポーネント119のアクティビティをモニタリングし、無線アセンブリ104の複数のソフトウェアコンポーネント119のアクティビティに基づいて、電圧要求信号および各自のクロック周波数要求信号を生成する。実施形態において、ソフトウェアドメイン周波数および電圧要求ユニット202は、ソフトウェアコンポーネント119の各々から、ソフトウェアドメインコンポーネント119の現在のアクティビティを示す各自の信号201を受信する。例として、例のシナリオにおいて、CPU114―1およびCPU114―2がスリープモードで動作しており、システムバス116が用いられていない場合、ソフトウェアドメイン電圧およびクロック周波数要求生成器202によって受信された各自の信号201は、CPU114―1とCPU114―2の両方が、現在スリープ状態であり、システムバス116が用いられていないことを示す。この場合、ユニット202は、無線アセンブリ104の複数のソフトウェアコンポーネント119のオペレーションのために現在必要とされる電圧レベルが、例えば0.9Vのようなスリープモード電圧であることを決定し、複数のソフトウェアドメインコンポーネント119のオペレーションのために現在必要とされる決定された電圧を示す電圧要求を生成する。さらに、同一の実施形態およびシナリオを続けて、ユニット202は、ソフトウェアコンポーネントの各々を適切に動作させるのに必要なクロック周波数が例えば30MHzのような公称クロック周波数であることを決定し、ソフトウェアコンポーネント119の各々に対応する各自のクロック周波数要求を生成する。別の例のシナリオにおいて、ユニット202は、CPU114―1がアクティブモードで動作しており、WLANインターフェース110―1を介したパケットの送信のような、所定のWLAN動作を実行している(又は実行の準備をしている)ことを示す信号を、CPU114―1から受信し、CPU114―2が、アクティブモードで動作しており、BTインターフェース110―2を介したパケットの送信のような所定のBT動作を実行している(又は実行の準備をしている)ことを示す信号201を、CPU114―2から受信する。実施形態において、この場合、ユニット202は、CPU114―1の現在のアクティビティに基づいてCPU114―1によって必要とされる電圧レベルを決定し、CPU114―2の現在のアクティビティに基づいてCPU114―2によって必要とされる電圧レベルを決定し、決定された複数の電圧レベルのうちの大きな方を示すべく、ソフトウェアドメイン電圧要求を生成する。同様に、実施形態において、ユニット202は、CPU114―1によって実行されている現在の動作に基づいて、CPU114―1によって必要とされるクロック周波数を決定し、CPU114―2によって実行されている現在の動作に基づいて、CPU114―2によって必要とされるクロック周波数を決定し、CPU114―1およびCPU114―2によって必要とされる各自のクロック周波数を示す各自のクロック周波数要求を生成する。
実施形態において、例えば信号によって示されるアクティビティに対応するインデックスを用いて、メモリに格納された、クロックおよび電圧テーブルにアクセスすることによりソフトウェアドメインコンポーネントから受信される信号に基づいて、ソフトウェアドメインコンポーネント119(例えばCPU114、システムバス116)によって必要とされる供給電圧およびクロック周波数を、ソフトウェアドメイン周波数および電圧要求ユニット202が決定する。簡単に図6を参照すると、ソフトウェアドメインコンポーネント119(例えばCPU114―1)に対応する周波数および電圧テーブル300の例の実施形態が示される。実施形態において、ソフトウェアドメイン周波数および電圧要求ユニット202は、複数のソフトウェアコンポーネント119のそれぞれ1つについて、テーブル300のような各自の周波数および電圧テーブルにアクセスし、ソフトウェアコンポーネント119のアクティビティに基づいて、ソフトウェアコンポーネント119のために必要とされる供給電圧およびクロック周波数を決定するように構成される。実施形態において、複数のソフトウェアコンポーネント119に対応する各自のクロックおよび電圧テーブル300は、複数のソフトウェアドメインコンポーネント119のオペレーションに関連付けられた各自のエントリを格納すべく、無線アセンブリ104の初期化中に構成される。
図6を引き続き参照して、テーブル300の各エントリは、ソフトウェアコンポーネント119のアクティビティに対応し、アクティビティに必要とされるクロック周波数を示すクロック周波数フィールドと、アクティビティに必要とされる供給電圧を示す電圧レベルフィールドとを含む。さらに、実施形態において、テーブル300の各エントリは、ソフトウェアドメインコンポーネント119に供給される周波数が、ソフトウェアドメインコンポーネント119に外部から供給される位相同期ループ(PLL)、又はソフトウェアコンポーネント119に提供される基準クロックをスケーリングすることによってクロックを生成するソフトウェアコンポーネント119の内部のクロック周波数生成器のいずれによって生成されるべきかを示す、クロックソースインジケータを含む。実施形態において、テーブル300は、16個のエントリを含み、ソフトウェアコンポーネント119の16個のアクティビティに必要な複数の供給電圧レベルおよび複数のクロック周波数を規定する。他の複数の実施形態において、テーブル300は、他の適切な数のエントリを含み、ソフトウェアコンポーネント119の他の数のアクティビティに対応する電圧およびクロック周波数を示すことが可能である。図6の実施形態において、テーブル300における各クロック周波数および各電圧レベルは、4ビット値で示されるが、これは必須ではなく、テーブル300における各クロック周波数および/または各電圧値は、他の複数の実施形態において、他の適切な数のビットで示される。実施形態において、ユニット202は、ユニット202が複数のソフトウェアコンポーネント119から受信する複数のアクティビティ信号に基づいて生成されたインデックスを用いて、テーブル300にアクセスし、対応するアクティビティ信号によって示されるアクティビティを実行するためにソフトウェアコンポーネント119によって現在必要とされる供給電圧レベルおよびクロック周波数と、ソフトウェアドメインコンポーネントにクロック周波数を供給するために用いられるソースとを取得する。
図5を再度参照すると、ソフトウェアドメインユニット202によって生成された複数のクロック周波数要求は、周波数制御ユニット208に提供される。実施形態において、周波数制御ユニット208は概して、複数の周波数要求を周波数コントローラ128に供給する。以下より詳細に説明されるように、実施形態において、要求したクロック周波数で動作すべくクロック周波数を要求したソフトウェアコンポーネントによって必要とされる電圧が、周波数コントローラ128に周波数要求を供給する前にソフトウェアコンポーネントに提供されることを、周波数制御ユニット208が保証する。
実施形態において、ハードウェアドメイン電圧要求ユニット204は、ソフトウェアドメインユニット202と同様の方法で動作して、複数のハードウェアコンポーネント118のアクティビティに基づいて、無線アセンブリ104の複数のハードウェアコンポーネント118のオペレーションのために現在必要とされる電圧値を決定する。実施形態において、ハードウェアドメイン電圧要求ユニット204は、複数のハードウェアコンポーネント118の各々について、ハードウェアコンポーネント118のアクティビティを示す各自の信号203、205を受信し、複数のハードウェアドメインコンポーネント118の現在のニーズに基づいて、複数のハードウェアコンポーネント118のオペレーションのために現在必要な最大供給電圧を示す電圧要求信号を生成する。実施形態において、例えば、ユニット204は、複数のハードウェアドメインコンポーネント118の複数の異なるアクティビティと、ハードウェアコンポーネント118が適切にこれらの動作を実行できるようにすべくハードウェアコンポーネント118に供給される必要がある複数の供給電圧レベルとの間の複数の関連付けを格納する、図6のテーブル300と同様の、適切な電圧テーブルにアクセスし、複数のハードウェアコンポーネント118に対応する各自の電圧テーブルによって示される複数のハードウェアコンポーネント118によって現在必要とされる最大の電圧レベルを選択する。
実施形態において、ユニット202によって生成されたソフトウェアドメイン電圧要求と、ユニット204によって生成されたハードウェアドメイン電圧要求とは、現在無線アセンブリ104によって供給される必要がある電圧レベルを選択する電圧要求セレクタ206に提供される。実施形態において、例えば、電圧要求セレクタは、ユニット202から受信されるソフトウェアドメインコンポーネント電圧要求と、ユニット204から受信されるハードウェアドメインコンポーネント電圧要求とのうちの大きな方を選択する。実施形態において、電圧セレクタ206は、電圧レギュレータ126の移行中には、ソフトウェアドメインユニット202およびハードウェアドメインユニット204からの複数の電圧要求を無視するように構成される。すなわち、この実施形態において、電圧セレクタ206は、前の電圧要求が電圧レギュレータ126によって満たされていた新しい電圧要求ユニットを生成することをブロックされる。
電圧セレクタ206は、実施形態により、新しい電圧要求を電圧制御ユニット210に提供する。電圧制御ユニット210は、セレクタ206からの電圧要求を受信し、電圧要求が、電圧レギュレータ126によって現在出力されている電圧より、小さい、等しい、又は大きいかを決定する。実施形態において、電圧要求が電圧レギュレータ126の現在の出力より小さい又は大きいと決定したことに応じて、ユニット210は、電圧レギュレータ126の調節を開始し、調節が完了し、新しい電圧が電圧レギュレータ126によって達せられるまで、セレクタ206からの複数の新しい要求をブロックする。さらに、いくつかの実施形態では、電圧セレクタ206は、コンポーネント118、119の各々について、各自の信号を生成し、コンポーネント118、119により要求された電圧が電圧レギュレータ126により達せられたことを示し、それにより、コンポーネント118、119により要求された複数の動作が現在実行可能であることをコンポーネント118、119に示す。実施形態において、ソフトウェアコンポーネント119によって必要とされる電圧レベルが電圧レギュレータ126によって達せられるまで、電圧制御ユニット210は、新しいクロック周波数がソフトウェアコンポーネント119に供給されないようにし、その少なくともいくつかの状況において、新しいクロック周波数は、ソフトウェアコンポーネント119に提供される現在のクロック周波数と比較してより高い。例えば、実施形態において、電圧制御ユニット210は、周波数制御ユニット208に信号を提供し、電圧レギュレータ126の出力電圧がクロック周波数を必要とするソフトウェアコンポーネント119によって必要とされる電圧より小さい場合に、周波数制御ユニット208が周波数セレクタ128へクロック周波数要求を送信することをブロックし、ソフトウェアコンポーネント119によって必要とされる電圧レベルが電圧レギュレータ126によって達せられた場合には周波数制御ユニット208をブロック解除する。少なくともいくつかの実施形態において、電圧制御ユニット210はまた、電圧要求ロック信号を生成し、ソフトウェアドメイン周波数および電圧要求ユニット202、ハードウェアドメイン電圧要求ユニット204、および周波数制御ユニット208の1つ1つに電圧要求ロック信号を提供する。実施形態において、電圧要求ロック信号は、前に要求された電圧への移行が電圧レギュレータ126によって完了されるまで、新しい電圧要求の処理をブロックする。実施形態において、電圧要求ロック信号はまた、新しいクロック周波数におけるオペレーションのために必要な又は少なくとも十分な電圧が電圧レギュレータ126によって達せられるまで、新しいクロック周波数要求の処理をブロックする。
図7A−7Bは、実施形態により、図5のソフトウェアドメイン電圧および周波数要求ユニット202としての利用に適切なソフトウェアドメイン電圧および周波数要求ユニット400の例の実装を示す複数のブロック図である。説明の簡略化のために、ソフトウェアドメイン電圧および周波数要求ユニット400は、参照図1および5で以下説明される。しかし、他の複数の実施形態では、ソフトウェアドメイン電圧および周波数要求ユニット400は、図5のシステム200以外の複数のシステムによって、および/または図1の無線デバイス100以外の複数の無線デバイスによって用いられる。同様に、他の複数の実施形態において、システム200および/または無線デバイス100は、ユニット400以外の複数のソフトウェアドメイン電圧および周波数要求ユニットを用いる。
図7Aは、実施形態により、ユニット400の周波数および電圧要求部分401aのブロック図である。周波数および電圧要求部分401aは、対応する複数のソフトウェアコンポーネント119から受信した複数の信号に基づいて、1または複数のソフトウェアコンポーネント119の各々のアクティビティに対応する各自のインデックスを選択する、マルチプレクサ402のような1または複数の選択ユニットを含む。図7の実施形態において、周波数および電圧要求部分401aは、CPU114―1のアクティビティに対応するアクティビティインデックスを選択する第1のマルチプレクサ(MUX)402−1と、CPU114―2のアクティビティに対応するアクティビティインデックスを選択する第2のMUX402―2と、システムバス116のアクティビティに対応するアクティビティインデックスを選択する第3のMUX402―3とを含む。複数のマルチプレクサ402は、CPU114−1、CPU114―2、およびシステムバス116の現在のアクティビティに対応するスリープモードインデックス又はアクティブモードインデックスを選択するべく、それぞれCPU114−1、CPU114―2、およびシステムバス116の現在の動作状態(例えば、アクティブ又は非アクティブ、又はスリープ)を示す各自の信号403によって制御される。実施形態において、複数のマルチプレクサ402の複数の出力は、CPU114−1、CPU114―2、およびシステムバス116の現在のアクティビティに対応するインデックスに基づいて、CPU114−1、CPU114―2、およびシステムバス116の各々によって必要とされるクロック周波数および対応する電圧レベルを決定すべく、周波数および電圧テーブル404の適切なものに提供される。実施形態において、複数の周波数および電圧テーブル404は、図3の電圧および周波数テーブル300と同一又は同様にフォーマットされる。他の複数の実施形態において、他の適切な複数の電圧および周波数テーブルフォーマットは、テーブル404によって用いられる。
いくつかの実施形態では、複数のソフトウェアコンポーネント119の現在のアクティビティ示す複数の信号が、ユニット402を動作させるために用いられるクロックレートより大きなクロックレートで、ソフトウェアコンポーネント119からユニット400へ提供される。例えば、実施形態において、ユニット400は、「スリープ」クロックレート又は「基準」クロックレートのような最も低いシステムクロックレートで動作し、一方少なくともいくつかの状況では、複数のソフトウェアコンポーネント119は、最も低いシステムクロックレートより高いクロックレートで動作し、最も低いシステムクロックレートより高いクロックレートで、ユニット400へ、複数のソフトウェアコンポーネント119のアクティビティを示す複数の信号を提供する。実施形態により、ユニット400の周波数および電圧要求部分401aは、複数のソフトウェアコンポーネント119の複数のアクティビティに対応する複数のインデックスが、ユニット402によって用いられるクロックレートと同期して電圧および周波数テーブル404へ提供されることを保証すべく、同期ブロック(不図示)を含む。実施形態において、周波数および電圧要求部分401aは、ソフトウェアコンポーネント119から前に受信した複数の要求の同期中に、ユニット400がソフトウェアコンポーネント119から受信する複数の要求を無視するように構成される。
テーブル404は、特定のソフトウェアコンポーネント119に対応し、ソフトウェアコンポーネント119の現在のアクティビティに基づいて選択されたソフトウェアコンポーネント119のためのクロック周波数および電圧を規定するエントリを出力する。複数のテーブル404の複数の出力は、電圧レギュレータ126の複数の電圧移行中に複数の新しい要求をブロックすべく、各自の要求ブロックユニット410に提供される。図7Aは、実施形態により、CPU114―1に対応する、要求処理ユニット410―1の例の実装を示す。実施形態において、それぞれCPU114―2およびシステムバス116に対応する要求処理ユニット410―2、410−3は、要求処理ユニット410―1の複数のコンポーネントと同一又は同様の複数のコンポーネントを含み、要求処理ユニット410―1と同一又は同様の方法で動作する。
実施形態において、要求処理ユニット410―1は、複数のマルチプレクサ(MUX)412を含み、当該複数のマルチプレクサは各自の電圧要求ロック信号414によって制御されて、複数の新しい要求が電圧要求ロック信号414によってブロックされない場合には、ユニット410−1の各自の出力信号416―1、417―1、418―1を、テーブル404―1から取得された各自の新たな値にセットし、又は、複数の新しい要求が電圧要求ロック信号414によってブロックされる場合には、(例えば前の要求に対応する)各自の電流値で複数の出力信号416を維持する。実施形態において、電圧要求ロック信号414は、電圧制御ユニット210によって生成され、その例の実装は、図9に対して以下より詳細に説明される。
図7Aを引き続き参照して、第1のMUX412−1は、テーブル404―1から取得した新しいクロックソースを示す新しいクロックソース要求信号405を、第1の入力として受信し、クロックソースレジスタ420に格納された値によって示される現在のクロックソースを、第2の入力として受信する。MUX412−2の出力は、レジスタ420に提供される。実施形態において、MUX412−1は、複数の新しい要求が電圧要求ロック信号414によってブロックされない場合には、クロックソース信号416―1を、新しいクロックソース信号405によって示される値にセットし、複数の新しい要求が電圧要求ロック信号414によってブロックされる場合には(例えば、前の要求に対応する)現在のクロックソース表示でクロックソース信号416―1を維持する。
第2のMUX412―2は、テーブル404―1から取得した新しいクロック周波数を示す新しいクロック周波数要求信号406を、第1の入力として受信し、レジスタ422に格納された現在のクロック周波数の値を、第2の入力として受信する。MUX412−2の出力は、レジスタ422に提供される。実施形態において、MUX412−2は、複数の新しい要求が電圧要求ロック信号414によってブロックされない場合には、周波数要求信号417―1を、新しいクロック周波数信号406によって示される値にセットし、複数の新しい要求が電圧要求ロック信号414によってブロックされる場合には、(例えば前の要求に対応する)現在のクロック周波数でクロック周波数要求信号417―1を維持する。
第3のMUX412―3は、テーブル404―1から取得した新しい電圧レベルを示す新しい電圧要求信号407を第1の入力として受信し、電圧レジスタ424に格納された現在の電圧レベルの値を、第2の入力として受信する。MUX412−3の出力は、レジスタ424に提供される。実施形態において、MUX412−3は、複数の新しい要求が電圧要求ロック信号414によってブロックされない場合には、電圧要求信号418―1を、新しい電圧要求信号405によって示される新しい電圧レベルにセットし、複数の新しい要求が電圧要求ロック信号414によってブロックされる場合には(例えば前の要求に対応する)現在の電圧で、電圧要求信号418―1を維持する。
実施形態において、要求処理ユニット410―2は、クロックソース信号416―2、a417−2と、CPU114―2に対応する電圧レベル要求信号418―2とを生成すべく、CPU114―2に対応する周波数テーブル404―2の出力を処理する。同様に、実施形態において、要求処理ユニット410―2は、クロックソース信号416―3、a417−3と、CPU114―2に対応する電圧レベル要求信号418―3とを生成すべく、システムバス116に対応する周波数テーブル404―3の出力を処理する。
実施形態において、複数のクロックソース信号416および複数のクロック周波数信号417は、複数のソフトウェアコンポーネントに対応する各自の制御信号を生成する周波数制御ユニットへさらなる処理のために提供される。周波数制御ユニットの例の実装が、図10を参照して以下より詳細に説明される。
複数の電圧レベル要求信号418は、実施形態において、図7Bに示される電圧選択部分401bに提供される。電圧選択部分401bは、複数のソフトウェアコンポーネント119によって共同して必要とされる電圧レベルを示すソフトウェア電圧要求430を生成する。実施形態において、例えば、電圧選択部分401bは、複数のソフトウェアコンポーネント119の各々について、複数のソフトウェアコンポーネント119によって必要とされる電圧レベルとして決定された複数の電圧レベルのうちの最大の電圧レベルを選択する。図7Bを参照して、電圧選択部分401bは、複数の電圧レベル要求418によって示される複数の電圧レベルのうちの最大のものを選択する複数のマルチプレクサ432を含む。電圧選択部分401bはまた、レジスタ434を含み、例えば、当該レジスタは、基準クロックがユニット400に供給されない場合、例えば、基準クロックが無線アセンブリ104の全体のスリープモード中にディセーブルである場合に用いられるオーバーライド電圧値を格納する。複数のマルチプレクサ432によって選択される最大の電圧値は、マルチプレクサ436へ第1の入力として提供され、レジスタ434に格納されるオーバーライド値は、マルチプレクサ434に第2の入力として提供される。実施形態において、マルチプレクサ434は、信号438によって制御され、複数のマルチプレクサ432―2の出力又はレジスタ434に格納されたオーバーライド値のいずれかを、基準クロックがユニット400のためにイネーブルであるか否かに依存して選択する。特に、実施形態において、ユニット400に対する基準クロックがイネーブルである場合、マルチプレクサ434は、マルチプレクサ432―2の出力を選択し、マルチプレクサ432―2の出力を、ユニット400のソフトウェア電圧要求出力440として提供する。一方、この実施形態において、例えば無線アセンブリ104の全体のスリープモード中に、ユニット400によって使用される基準クロックがディセーブルである場合、マルチプレクサ414は、ユニット400のソフトウェア電圧要求出力440として、オーバーライドレジスタ434に格納されたオーバーライド値を選択する。
図8は、実施形態により、図5のハードウェアドメイン電圧要求ユニット204として利用されるのに適したハードウェアドメイン電圧要求ユニット500の例の実装のブロック図である。説明の簡略化のために、ハードウェアドメイン電圧要求ユニット500は、参照図1および5で以下説明される。しかし、他の複数の実施形態において、ハードウェアドメイン電圧要求ユニット500は、図5のシステム200以外の複数のシステムによって、および/または図1の無線デバイス100以外の複数の無線デバイスによって利用される。同様に、システム200および/または無線デバイス100は、他の複数の実施形態において、ユニット500以外の複数のハードウェアドメイン電圧要求ユニットを用いる。
ハードウェアドメイン電圧要求ユニット500は、複数のANDゲートのような複数の結合的な接続部502、および複数のマルチプレクサ504のような複数の選択モジュールを含む。複数のANDゲート502の各々は、各自のハードウェアコンポーネント118の現在の又は要求された状態を示す信号、およびハードウェアコンポーネント118によって現在要求される電圧レベルを示す信号を受信し、ハードウェアコンポーネント118の現在又は要求された状態が、ハードウェアコンポーネント118のアクティブ状態に対応する場合、ハードウェアコンポーネント118のアクティビティに対応する電圧レベルを、マルチプレクサ504に提供する。実施形態において、ユニット500は、ハードウェアコンポーネント118のアクティビティに対応するインデックスに基づいて、電圧要求に対応する電圧レベルを決定する。実施形態において、例えば、ユニット500は、各ハードウェアコンポーネント118に対応する各自の電圧テーブルにアクセスし、ハードウェアコンポーネント118のための電圧要求を決定する。
複数のマルチプレクサ504は、複数のハードウェアコンポーネント118によって要求される複数の電圧を示す複数の信号を受信し、複数のハードウェアコンポーネント118によって要求される複数の電圧のうちの最も大きなものに対応する電圧要求505を選択する。実施形態において、選択された電圧要求505は、図6に対して以下説明される電圧決定ユニット600のような電圧決定ユニットによって生成された電圧要求ロック信号により制御される、マルチプレクサ506に提供される。実施形態において、MUX506は、電圧要求ロック信号508によって制御され、要求された電圧505がユニット500によって出力されることをブロック又はブロック解除する。実施形態において、前の要求に対応する電圧が電圧レギュレータユニット126によって達せられるまで、MUX506は、要求された電圧505がユニット500によって出力されることをブロックする。図8に示された例の実装において、ユニット500は、ユニット500によって出力される前の電圧要求又は新しい電圧要求の対応を保持する現在のハードウェア要求レジスタ510を含む。実施形態において、電圧要求ロック信号508がアサートされる場合、MUX506は、ユニット500の出力電圧要求出力を選択して、レジスタ510に格納された前に要求された電圧に効果的にセットする。一方、実施形態において、電圧要求ロック信号508がアサートされない場合、MUX506は、レジスタ510を新しい電圧要求505にセットし、それにより、ユニット500の電圧要求出力を新しい電圧要求505に効果的にセットする。実施形態において、電圧要求ロック信号508は、図9に対して以下説明される電圧要求ロック信号603に対応する。
図9は、実施形態により、図5の電圧制御ユニット210として利用するのに適した電圧制御ユニット600の例の実装のブロック図である。説明の簡略化のために、電圧制御ユニット600は、参照図1および5で以下説明される。しかし、他の複数の実施形態では、電圧制御ユニット600は、図5のシステム200以外の複数のシステムによって、および/または、図1の無線デバイス100以外の複数の無線デバイスによって利用される。同様に、システム200および/または無線デバイス100は、他の複数の実施形態において、ユニット600以外の複数の電圧制御ユニットを利用する。
実施形態において、電圧制御ユニット600は、電圧セレクタユニット206(図5)からの電圧要求601を受信し、要求された電圧が、現在電圧レギュレータ126(図1)によって生成されている電圧より大きい、より小さい、又は等しいかを決定する。電圧要求がレギュレータ126の現在の電圧出力より大きい又は小さいと決定することに応じて、電圧制御ユニット600は、実施形態において、電圧要求ロック信号603をアサートする。さらに、電圧要求が電圧レギュレータ126の現在の電圧出力より大きいと決定することに応じて、電圧制御ユニット600は、実施形態において、周波数要求ロック信号605をアサートする。
要求された電圧が電圧レギュレータ126の現在の出力と等しいと決定したことに応じて、電圧制御ユニット600は、電圧要求信号ロック603をディアサートし、電圧セレクタユニット206が電圧制御ユニット600に新しい電圧要求を提供することを可能にする。電圧レギュレータ126の現在の出力より大きい又はより小さい新しい電圧要求が電圧制御ユニット600によって受信された場合、電圧制御ユニット600は、電圧要求ロック信号603および必要であれば周波数要求ロック信号605を再度アサートし、電圧要求601によって要求される新たな値へ移行するべく電圧レギュレータ126を制御する制御信号608を生成する。電圧制御ユニット600が、電圧レギュレータ126による新しい要求された電圧への移行がいつ完了するかを決定することを可能にするべく、電圧制御ユニットはまた、タイマカウンタ610を起動し、電圧レギュレータ126によってサポートされる最も小さい変化によって変化すように電圧レギュレータ126によって必要とされる時間の量に対するタイマカウンタ610を動作させる。電圧レギュレータ126によってサポートされる最も小さい変化と、最も小さいサポートされる変化に対応する移行を完了させるべく電圧レギュレータ126によって必要とされる時間の量とは、それぞれ電圧粒度レジスタ612および移行時間レジスタ614に電圧制御ユニット600において格納される。電圧制御ユニット600は、タイマカウンタ610の出力を、移行時間レジスタ612に格納された値と比較し、タイマカウンタ610の出力が移行時間レジスタ612に格納された値と等しい場合は、電圧レギュレータ126が電圧レギュレータ126によってサポートされる電圧の最も小さい変化によって移行を完了させたかを決定する。電圧制御ユニット600は、レギュレータ126の出力電圧のさらなる変化が、電圧セレクタ206から受信した電圧要求によって示される電圧レベルに達する必要があるかを決定する。さらなる移行が必要な場合は、電圧制御ユニット600がタイマ610を再度起動する。要求された電圧が達されなかった場合、電圧レギュレータ126のさらなる移行が必要ではなく、電圧制御ユニット600が電圧要求ロック603、および必要な場合は周波数要求ロック信号605をディアサートし、レギュレータ電圧レジスタ604を電圧要求601の値にセットする。
いくつかの実施形態において、電圧制御ユニット600はまた、各自のコンポーネント118、119に、各自のコンポーネント118、119によって要求された電圧レベルが電圧レギュレータ126によって達せられたことを示す、信号620のセットを出力するように構成される。実施形態において、複数の信号620は、コンポーネント118、119に、コンポーネント118、119がコンポーネント118、119によって要求されたアクティビティを現在実行可能であることを示す。実施形態において、電圧制御ユニット600はさらに、現在電圧レギュレータ126によって達している電圧レベルを示す電圧レギュレータ到達レベル信号616を出力する。
図10は、実施形態により、図5の周波数制御ユニット208によって利用されるのに適した周波数制御ユニット700の例の実装のブロック図である。実施形態において、図5の周波数制御ユニット208は、複数のソフトウェアコンポーネント119の1つ1つに対応し、ソフトウェアコンポーネント119の対応する一つのためのクロック周波数を制御するべく用いられる、周波数制御ユニット700のような、各自の周波数制御ユニットを含む。説明の簡略化のために、周波数コントローラ700は、参照図1および5で以下説明される。しかし、他の複数の実施形態では、周波数コントローラ700は、図5のシステム200以外の複数のシステムによって、および/または図1の無線デバイス100以外の複数の無線デバイスによって利用される。同様に、システム200および/または無線デバイス100は、他の複数の実施形態では、周波数コントローラ700以外の複数の周波数コントローラを利用する。
クロック周波数制御ユニット700は、示された実施形態ではマルチプレクサ702、マルチプレクサ704、およびマルチプレクサ708を含む、複数のマルチプレクサを含む。オペレーションにおいて、周波数コントローラ700は、クロックソース信号416―1(図7A)およびクロック周波数要求信号417―1(図7A)を受信する。クロック周波数要求信号は、MUX702に第1の入力として提供され、レジスタ706に格納された、現在のクロック周波数を示す信号が、MUX702に第2の入力として提供される。マルチプレクサ708は、特定のクロックソース(例えばPLL又は内部CPUクロックソース)が、安定で、クロック周波数要求信号417―1によって示された要求されたクロック周波数を生成するのに利用可能であるかを示す複数の信号を、各自の入力として受信する。クロックソース信号416―1は、マルチプレクサ708を制御して、クロックソース信号416―1によって示されるクロックソースに対応する適切な安定インジケータを選択する。実施形態において、MUX708によって選択された安定インジケータは、MUX702を制御して、適切なクロックソースがMUX708の出力信号によって安定であると示されている場合には、周波数要求信号417―1を出力し、適切なクロックソースがMUX708の出力によって不安定であると示されている場合には、現在の周波数信号を出力する。
MUX702の出力は、MUX704に第1の入力として提供され、レジスタ706に格納された、現在のクロック周波数を示す信号は、MUX704に第2の入力として提供される。MUX704は概して、新しい周波数要求によって示されたクロック周波数で動作するべくCPU114―1によって必要とされた十分な電圧が、CPU114―1に提供されている場合のみ、新しい周波数要求信号が周波数コントローラ128に提供されることを保証する。実施形態において、周波数制御ユニット700は、電圧制御ユニット600(図9)から、周波数要求ロック信号605を受信する。周波数制御ユニット700はまた、周波数および電圧要求ユニット400から、信号417―1によって示されたクロック周波数要求に対応する電圧レベル要求信号418−1を受信する。さらに、周波数制御ユニット700は、電圧制御ユニット600から、電圧レギュレータ126の現在達せられた電圧を示す電圧レギュレータ到達電圧信号616を受信する。実施形態において、コンパレータ712は、信号616により示される現在達せられた電圧を、信号418―1によって示される電圧レベルと比較して、信号418―1によって示された、要求された電圧レベルが、信号616によって示された現在達せられた電圧(i)より小さい又は(ii)より大きいもしくは等しいかを決定する。コンパレータ712の出力および周波数要求ロック信号605は、ANDゲート710に提供される。ANDゲート710の出力はMUX704を制御する。信号418―1により示された電圧レベルが信号616により示された電圧レベルより大きい又は等しく、周波数要求が周波数要求ロック信号605によりブロックされていない場合、MUX704は、レジスタ706を、信号417―1により示される新しいクロック周波数にセットする。一方、信号418―1により示される電圧レベルが信号616により示される電圧レベルより小さい場合および/または周波数要求が周波数要求ロック信号605によりブロックされている場合、MUX704は、レジスタ706に格納された現在のクロック周波数の値でレジスタ706の値を維持する。レジスタ706に格納された値は、周波数制御ユニット700のクロック周波数出力信号720として提供される。実施形態において、クロック周波数信号720、およびクロックソース信号416―1に対応するクロックソース信号719は、周波数コントローラ128に提供される。実施形態において、周波数コントローラ128は、クロックソース信号719および周波数信号720に基づいて、CPU114―1のためのクロック周波数信号を生成する。
簡単に図11では、図1の周波数コントローラ128として利用するのに適した周波数コントローラ800の例の実装が示される。実施形態において、周波数コントローラ800は、図6の周波数および電圧テーブル300に示される周波数値に対応する信号のような、周波数要求に対応する信号によって制御される。要求されたクロック周波数を示す信号の受信に応じて、周波数コントローラ800は、要求されたクロック周波数に対応するクロック信号を出力する。少なくともいくつかの実施形態において、クロック周波数要求はまた、要求されたクロックのために用いられるソースを示すため、単純で単一の段階的選択ロジックが用いられて、周波数コントローラ800によってクロック信号を選択し、クロックに要求されたクロック周波数を提供する。
図12は、実施形態により、通信デバイスにおいて無線アセンブリの電力消費を動的に調節する例の方法1200のフロー図である。それぞれ図1および5を参照して、いくつかの実施形態では、方法400は、概して、無線デバイス100において、特にシステム200によって実行される。他の複数の実施形態では、方法400は、無線デバイス100の他の複数の適切なコンポーネントによって、又は他の複数の適切な通信デバイスによって実行される。同様に、無線デバイス100および/またはシステム200は、他の複数の実施形態において、電力消費を動的に調節する他の適切な複数の方法を実行する。
ブロック1202において、図1のDVFSユニット120のような電力管理ユニットは、第1の無線インターフェースユニットのアクティビティを示す第1の信号を受信する。例えば、電力管理ユニットは、実施形態において、WLANインターフェースユニット110―1から第1の信号を受信する。第1の信号は、この実施形態では、BTインターフェースユニット110―2のアクティビティを示す。例えば、実施形態において、第1の信号は、WLANインターフェースユニット110―1がパワーセーブモード又はアクティブモードのいずれで動作しているかを示し、また、WLANインターフェースユニット110―1によって、パケットの受信、パケットの送信、スキャンの実行等、どの機能又はどの複数の機能が、現在実行されているか(又は実行されようとしているか)を示す。 別の実施形態において、電力管理ユニットは、WLANインターフェースユニット110―1以外の無線通信インターフェースユニットから第1の信号を受信する。第1の信号は、この実施形態では、WLANインターフェースユニット110―1以外の無線通信インターフェースユニットのアクティビティを示す。
ブロック1204において、図1のDVFSユニット120のような電力管理ユニットは、第1の無線インターフェースユニットのアクティビティを示す第2の信号を受信する。例えば、電力管理ユニットは、実施形態において、BTインターフェースユニット110―2から第2の信号を受信する。第2の信号は、この実施形態において、BTインターフェースユニット110―2のアクティビティを示す。実施形態において、例えば、第2の信号は、BTインターフェースユニット110―2がパワーセーブモード又はアクティブモードのいずれで動作しているかを示し、また、BTインターフェースユニット110―2によって、パケットの受信、パケットの送信、スキャンの実行等のようないずれの機能又はいずれの複数の機能が現在実行されているか(又は実行されようとしているか)を示す。別の実施形態において、電力管理ユニットは、BTインターフェースユニット110―2以外の無線通信インターフェースユニットから第2の信号を受信する。第2の信号は、この実施形態では、BTインターフェースユニット110―2以外の無線通信インターフェースユニットのアクティビティを示す。
ブロック1206において、電力管理ユニットは、ブロック1202で受信した第1の信号によって示された、第1の無線インターフェースユニットのアクティビティと、ブロック1204で受信された第2の信号によって示された第2の無線インターフェースユニットのアクティビティとをサポートするのに必要な供給電圧レベルを決定する。例えば、例の実施形態において、電力管理ユニットは、第1の信号および第2の信号によって示された各自のアクティビティを実行するのに第1の無線インターフェースユニットおよび第2の無線ユニットによって必要とされる各自の電圧を決定し、第1の無線インターフェースユニットおよび第2の無線インターフェースユニットによって必要とされる電圧のうちのより大きな方を選択する。他の複数の実施形態において、ブロック1206で、第1の無線インターフェースユニットのアクティビティをサポートするのに必要な供給電圧レベルを決定する他の複数の方法がある。
ブロック1208において、電力管理ユニットは、ブロック1206で決定された供給電圧レベルに基づいて、無線アセンブリに供給される供給電圧を調節する。実施形態において、例えば、電力管理ユニットは、電圧レギュレータの出力電圧を、ブロック1206において決定された供給電圧レベルにセットすべく、無線アセンブリの供給電圧を生成する電圧レギュレータを制御する。
説明したように、上記の様々な技術が、ハードウェア、ファームウェア、ソフトウェア、又はハードウェア、ファームウェアおよび/またはソフトウェアの組み合わせにおいて実装されうる。ソフトウェアにおいて実装される場合、ソフトウェアは、コンピュータ、プロセッサ、集積回路、ハードディスクドライブ、光ディスクドライブ、テープドライブ等の、磁気ディスク、光ディスク、又は他の記憶媒体上、RAM又はROM又はフラッシュメモリ内のような任意のコンピュータ可読メモリに格納されうる。同様に、ソフトウェアは、例えば、コンピュータ可読ディスク又は他の移動可能コンピュータストレージメカニズム上又は通信媒体を介してを含む、任意の既知の又は所望の配信方法で、ユーザ又はシステムに供されうる。通信媒体は一般的に、複数のコンピュータ可読命令、データ構造体、プログラムモジュール、又は他のデータを、搬送波又は他の転送メカニズムのような変調データ信号に取り入れる。用語「変調データ信号」は、信号に情報をエンコードするような方法でセット又は変更されたその特性の1または複数を有する信号を意味する。例として、限定しないが、通信媒体は、有線ネットワーク又は直接有線接続のような有線媒体、およびアコースティック、無線周波数、赤外線および他の無線媒体のような無線媒体を含む。このため、ソフトウェアは、電話線、DSLライン、ケーブルテレビ線、無線通信チャネル、インターネット等(これらは、移動可能記憶媒体を介したそのようなソフトウェアの提供と同一又は交換可能であるとしてみられる)のような通信チャネルを介してユーザ又はシステムに供されうる。ハードウェアに実装された場合、ハードウェアは、複数のディスクリートコンポーネント、集積回路、特定用途向け集積回路(ASIC)等のうちの1または複数を含みうる。
本願発明が複数の固有の例を参照して説明されたが、図示する意図のみで、発明は限定されず、上記明確に記載したものに加えて、複数の変更、追加又は削除が、発明の意図および範囲を逸脱することなく開示の複数の実施形態に行われうることは、当業者には明確である。

Claims (20)

  1. 通信デバイスにおける無線アセンブリの電力消費を動的に調節する方法であって、
    第1の通信プロトコルに従って動作する第1の無線インターフェースユニットのアクティビティを示す第1の信号を、前記無線アセンブリの電力管理ユニットで受信する段階と、
    第2の通信プロトコルに従って動作する第2の無線インターフェースユニットのアクティビティを示す第2の信号を、前記無線アセンブリの前記電力管理ユニットで受信する段階であって、前記第2の通信プロトコルは前記第1の通信プロトコルとは異なる、前記受信する段階と、
    前記第1の信号基づいて、前記第1の無線インターフェースユニットの前記アクティビティサポートするために必要な第1の電圧レベルを決定する段階と、
    前記第2の信号に基づいて、前記第2の無線インターフェースユニットの前記アクティビティをサポートするために必要な第2の電圧レベルを決定する段階と、
    前記第1の無線インターフェースユニットの前記アクティビティと前記第2の無線インターフェースユニットの前記アクティビティとをサポートするために必要な供給電圧レベルとして、前記第1の電圧レベルおよび前記第2の電圧レベルのうちのより大きな方を選択する段階と、
    前記第1の電圧レベルおよび前記第2の電圧レベルのうちのより大きな方が、前記第1の無線インターフェースユニットおよび前記第2の無線インターフェースユニットの両方に供給されるように、前記供給電圧レベルに基づいて、前記無線アセンブリに供給される供給電圧を調節する段階と
    を備える方法。
  2. 前記第1の電圧レベルを決定する段階は、
    前記第1の無線インターフェースユニットのアクティビティをサポートするために必要な前記第1の電圧レベルを決定すべく、前記第1の無線インターフェースユニットのアクティビティに対応するインデックスに従って第1の電圧テーブルにアクセスする段階を有し
    前記第2の電圧レベルを決定する段階は、
    前記第2の無線インターフェースユニットのアクティビティをサポートするために必要な前記第2の電圧レベルを決定すべく、前記第2の無線インターフェースユニットのアクティビティに対応するインデックスに従って第2の電圧テーブルにアクセスする段階を有する
    請求項1に記載の方法。
  3. 前記無線アセンブリの中央処理装置(CPU)のアクティビティを示す第3の信号を、前記無線アセンブリの前記電力管理ユニットで受信する段階であって、前記CPUは、前記第1の無線インターフェースユニットおよび前記第2の無線インターフェースユニットの少なくとも一方のオペレーションを制御するべく、メモリに格納された複数のコンピュータ可読命令を実行する、前記受信する段階と、
    前記CPUの前記アクティビティをサポートするために前記CPUによって必要とされるクロック周波数を決定する段階と
    を更に備え、
    前記第1の電圧レベルを決定する段階および前記第2の電圧レベルを決定する段階は、更に、前記CPUのアクティビティをサポートするために必要な前記クロック周波数に基づく
    請求項1または2に記載の方法。
  4. 前記決定されたクロック周波数に従って、前記CPUに対応するクロック信号を調節する段階と、
    前記CPUへ前記調節されたクロック信号を供給する段階と
    を更に備える
    請求項3に記載の方法。
  5. 前記クロック信号を調節する段階は、
    前記無線アセンブリへ供給される供給電圧が、前記決定されたクロック周波数をサポートするために十分なレベルである、と決定することに応じて、前記クロック周波数を調節する段階を備える
    請求項4に記載の方法。
  6. 前記CPUの前記アクティビティをサポートするために前記CPUによって必要とされる前記クロック周波数を決定する段階は、
    前記CPUのアクティビティに対応するインデックスに従って、周波数および電圧テーブルにアクセスする段階と、
    前記CPUの前記アクティビティをサポートするために必要な周波数値および電圧値を含むテーブルエントリを取得する段階とを備える
    請求項3から5のいずれか1項に記載の方法。
  7. 前記テーブルエントリは、前記周波数値に対する周波数源が、(i)前記CPUの外部の位相同期ループ、又は(ii)前記CPUの内部の基準周波数生成器のいずれであるかを示す周波数源インジケータをさらに含む
    請求項6に記載の方法。
  8. ホストアセンブリインターフェースユニットを介して前記無線アセンブリに接続されたホストアセンブリのアクティビティを示す第4の信号を、前記無線アセンブリの前記電力管理ユニットで受信する段階と、
    前記ホストアセンブリの前記アクティビティをサポートするために前記ホストアセンブリインターフェースユニットによって必要とされる電圧レベルを決定する段階と
    を更に備え、
    前記第1の電圧レベルを決定する段階および前記第2の電圧レベルを決定する段階は、更に、前記ホストアセンブリインターフェースユニットをサポートするために必要な前記電圧レベルに基づく
    請求項3から7のいずれか1項に記載の方法。
  9. 前記供給電圧レベルに従って、前記無線アセンブリに供給される前記供給電圧を調節する段階は、前記無線アセンブリに供給電圧を供給する電圧源へ、制御信号を提供する段階を含む
    請求項1から8のいずれか1項に記載の方法。
  10. 前記電圧源は、(i)降圧発生器又は(ii)低ドロップアウト電圧(LDO)電圧発生器の一方である
    請求項9に記載の方法。
  11. 無線デバイスの無線アセンブリであって、
    第1の通信プロトコルに従って動作する第1の無線インターフェースユニットと第2の通信プロトコルに従って動作する第2の無線インターフェースユニットとを少なくとも含む複数の無線インターフェースユニットと、
    動的電力管理ユニットと
    を備え、
    前記動的電力管理ユニットは、
    前記第1の無線インターフェースユニットのアクティビティを示す第1の信号を受信し、
    前記第2の無線インターフェースユニットのアクティビティを示す第2の信号を受信し、
    前記第1の無線インターフェースユニットの前記アクティビティサポートするために必要な第1の電圧レベルを、前記第1の信号基づいて決定し、
    前記第2の無線インターフェースユニットの前記アクティビティをサポートするために必要な第2の電圧レベルを、前記第2の信号に基づいて決定し、
    前記第1の無線インターフェースユニットの前記アクティビティと前記第2の無線インターフェースユニットの前記アクティビティとをサポートするために必要な供給電圧レベルとして、前記第1の電圧レベルおよび前記第2の電圧レベルのうちのより大きな方を選択し、
    前記第1の電圧レベルおよび前記第2の電圧レベルのうちのより大きな方が、前記第1の無線インターフェースユニットおよび前記第2の無線インターフェースユニットの両方に供給されるように、前記無線アセンブリの供給電圧を、前記供給電圧レベルに基づいて調節する
    無線アセンブリ。
  12. 前記動的電力管理ユニットは、
    前記第1の無線インターフェースユニットのアクティビティをサポートするために必要な前記第1の電圧レベルを決定すべく、前記第1の無線インターフェースユニットのアクティビティに対応するインデックスに従って、第1の電圧テーブルにアクセスし、
    前記第2の無線インターフェースユニットのアクティビティをサポートするために必要な前記第2の電圧レベルを決定すべく、前記第2の無線インターフェースユニットのアクティビティに対応するインデックスに従って、第2の電圧テーブルにアクセスする
    請求項11に記載の無線アセンブリ。
  13. 中央処理装置(CPU)をさらに備え、
    前記中央処理装置は、前記第1の無線インターフェースユニットおよび前記第2の無線インターフェースユニットの少なくとも一方のオペレーションを制御すべく、メモリに格納された複数のコンピュータ可読命令を実行し、
    前記動的電力管理ユニットは、更に、
    前記CPUのアクティビティを示す第3の信号を、前記CPUから受信し、
    前記CPUの前記アクティビティをサポートするために前記CPUによって必要とされるクロック周波数を決定し、
    前記第1の電圧レベルおよび前記第2の電圧レベルを、前記CPUのアクティビティをサポートするために必要な前記クロック周波数に更に基づいて決定する
    請求項11または12に記載の無線アセンブリ。
  14. 前記動的電力管理ユニットは、前記決定されたクロック周波数に従って、前記CPUに対応するクロック信号を調節し、
    前記調節されたクロック信号は、前記CPUへ供給される
    請求項13に記載の無線アセンブリ。
  15. 前記動的電力管理ユニットは、前記無線アセンブリに供給される供給電圧が前記決定されたクロック周波数をサポートするのに十分なレベルである、と決定することに応じて、前記クロック信号を調節する
    請求項14に記載の無線アセンブリ。
  16. 前記動的電力管理ユニットは、
    前記CPUのアクティビティに対応するインデックスに従って、周波数および電圧テーブルにアクセスし、
    前記CPUの前記アクティビティをサポートするために必要な周波数値および電圧値を含むテーブルエントリを取得する
    請求項13から15のいずれか1項に記載の無線アセンブリ。
  17. 前記テーブルエントリは、前記周波数値に対する周波数源が、(i)前記CPUの外部の位相同期ループ、又は(ii)前記CPUの内部の基準周波数生成器のいずれであるかを示す周波数源インジケータを更に含む
    請求項16に記載の無線アセンブリ。
  18. 前記無線アセンブリをホストアセンブリに接続するホストアセンブリインターフェースユニットを更に備え、
    前記動的電力管理ユニットは、更に、
    ホストアセンブリインターフェースユニットを介して前記無線アセンブリに接続されるホストアセンブリのアクティビティを示す第4の信号を受信し、
    前記ホストアセンブリの前記アクティビティをサポートするために前記ホストアセンブリインターフェースユニットによって必要とされる電圧レベルを決定し、
    前記ホストアセンブリインターフェースユニットをサポートするために必要な前記電圧レベルに更に基づいて、前記第1の電圧レベルおよび前記第2の電圧レベルを決定する
    請求項13から17のいずれか1項に記載の無線アセンブリ。
  19. 前記動的電力管理ユニットは、電圧レギュレータが制御信号に基づいて、前記無線アセンブリへ提供される供給電圧を調節するように、前記無線アセンブリへ前記供給電圧を供給する電圧源へ、前記制御信号を提供する
    請求項11から18のいずれか1項に記載の無線アセンブリ。
  20. 前記電圧源は、(i)降圧発生器、又は(ii)低ドロップアウト電圧(LDO)電圧発生器の一方である
    請求項19に記載の無線アセンブリ。
JP2015539798A 2012-10-24 2013-10-24 無線デバイスにおける動的電力管理 Active JP6273586B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261717912P 2012-10-24 2012-10-24
US61/717,912 2012-10-24
PCT/US2013/066629 WO2014066647A1 (en) 2012-10-24 2013-10-24 Dynamic power management in a wireless device

Publications (2)

Publication Number Publication Date
JP2016502782A JP2016502782A (ja) 2016-01-28
JP6273586B2 true JP6273586B2 (ja) 2018-02-07

Family

ID=49552435

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015539798A Active JP6273586B2 (ja) 2012-10-24 2013-10-24 無線デバイスにおける動的電力管理

Country Status (5)

Country Link
US (2) US9414317B2 (ja)
EP (1) EP2912896B1 (ja)
JP (1) JP6273586B2 (ja)
CN (1) CN104871606B (ja)
WO (1) WO2014066647A1 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11235109B2 (en) 2016-07-26 2022-02-01 Nicoventures Trading Limited Apparatus for heating smokable material
USD977704S1 (en) 2020-10-30 2023-02-07 Nicoventures Trading Limited Aerosol generator
USD977706S1 (en) 2020-10-30 2023-02-07 Nicoventures Trading Limited Aerosol generator
USD977705S1 (en) 2020-10-30 2023-02-07 Nicoventures Trading Limited Aerosol generator
USD986483S1 (en) 2020-10-30 2023-05-16 Nicoventures Trading Limited Aerosol generator
USD986482S1 (en) 2020-10-30 2023-05-16 Nicoventures Trading Limited Aerosol generator
USD989384S1 (en) 2021-04-30 2023-06-13 Nicoventures Trading Limited Aerosol generator
USD990765S1 (en) 2020-10-30 2023-06-27 Nicoventures Trading Limited Aerosol generator

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9414317B2 (en) 2012-10-24 2016-08-09 Marvell World Trade Ltd. Dynamic power management in a wireless device
US9820229B2 (en) * 2013-04-05 2017-11-14 Qualcomm Incorporated Dynamic voltage and frequency scaling in wireless modems
KR102149679B1 (ko) * 2014-02-13 2020-08-31 삼성전자주식회사 데이터 저장 장치, 그 동작 방법, 및 이를 포함하는 데이터 처리 시스템
US9448576B2 (en) 2014-02-17 2016-09-20 Commscope Technologies Llc Programmable power supplies for cellular base stations and related methods of reducing power loss in cellular systems
US10281939B2 (en) 2014-02-17 2019-05-07 Commscope Technologies Llc Methods and equipment for reducing power loss in cellular systems
US10001830B2 (en) * 2014-06-16 2018-06-19 Marvell World Trade Ltd. Input-output device management using dynamic clock frequency
US20160169948A1 (en) * 2014-12-10 2016-06-16 Qualcomm Incorporated Method and apparatus for measuring power in mobile devices to minimize impact on power consumption
WO2016138765A1 (en) * 2015-03-03 2016-09-09 Mediatek Inc. Method for controlling a plurality of hardware modules and associated controller and system
US10242719B2 (en) * 2016-04-08 2019-03-26 Samsung Electronics Co., Ltd. Power management of a memory device by dynamically changing supply voltage
JP6705691B2 (ja) * 2016-04-26 2020-06-03 東芝テック株式会社 情報処理装置及びプログラム
KR20170124017A (ko) 2016-04-29 2017-11-09 삼성전자주식회사 동작 전압을 조절하는 메모리 장치, 메모리 장치를 제어하는 어플리케이션 프로세서 및 메모리 장치의 동작방법
CN106304293B (zh) * 2016-08-30 2019-08-30 广东美的制冷设备有限公司 WiFi模块的单片机控制方法和装置
US11172444B2 (en) * 2016-10-10 2021-11-09 Qualcomm Incorporated Techniques for power control and management
FR3067534A1 (fr) * 2017-06-09 2018-12-14 Stmicroelectronics (Rousset) Sas Procede de controle du niveau de puissance emise par un dispositif de communication sans contact, par exemple un lecteur, et dispositif de communication sans contact correspondant
US11133698B2 (en) 2019-09-01 2021-09-28 Wen Cai Wireless charging systems and methods for controlling the same
EP3872606B1 (en) 2020-02-25 2023-08-02 NXP USA, Inc. Processor system

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100266806B1 (ko) * 1996-12-11 2000-09-15 윤종용 휴대용무선통신단말기의전력제어회로및방법
JP2000244351A (ja) * 1999-02-19 2000-09-08 Fujitsu Ltd 受信制御装置及びその方法
JP2003318807A (ja) * 2002-04-24 2003-11-07 Toshiba Corp 移動通信端末
EP1432284A3 (en) * 2003-12-30 2004-07-21 Phonak Ag Method to optimize energy consumption in a hearing device as well as a hearing device
US7886167B2 (en) * 2006-05-11 2011-02-08 Intel Corporation Load circuit supply voltage control
US7848293B2 (en) * 2007-05-09 2010-12-07 Broadcom Corporation System and method for automatic wireless transport selection for increased performance and reduced power consumption
US7949315B2 (en) * 2007-09-25 2011-05-24 Broadcom Corporation Power consumption management and data rate control based on transmit power and method for use therewith
US8103278B2 (en) * 2008-04-01 2012-01-24 Mediatek Inc. Method and system for managing idle mode of a mobile node with multiple interfaces
US8195250B2 (en) * 2008-04-30 2012-06-05 Motorola Mobility, Inc. Method and apparatus for controlling power among modems in a multi-mode mobile communication device
CN101765195B (zh) * 2008-12-25 2013-01-30 财团法人工业技术研究院 发射功率控制方法与系统
EP2568568B1 (en) * 2009-09-01 2020-04-22 BlackBerry Limited A method for wireless communication with a wireless communication device comprising a programmable battery
US20120062190A1 (en) * 2010-09-10 2012-03-15 Holger Haiplik Dc-dc converters
JP5572527B2 (ja) * 2010-11-09 2014-08-13 パナソニック株式会社 通信処理装置及び通信処理方法
US9414317B2 (en) 2012-10-24 2016-08-09 Marvell World Trade Ltd. Dynamic power management in a wireless device

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11235109B2 (en) 2016-07-26 2022-02-01 Nicoventures Trading Limited Apparatus for heating smokable material
USD977704S1 (en) 2020-10-30 2023-02-07 Nicoventures Trading Limited Aerosol generator
USD977706S1 (en) 2020-10-30 2023-02-07 Nicoventures Trading Limited Aerosol generator
USD977705S1 (en) 2020-10-30 2023-02-07 Nicoventures Trading Limited Aerosol generator
USD986483S1 (en) 2020-10-30 2023-05-16 Nicoventures Trading Limited Aerosol generator
USD986482S1 (en) 2020-10-30 2023-05-16 Nicoventures Trading Limited Aerosol generator
USD990765S1 (en) 2020-10-30 2023-06-27 Nicoventures Trading Limited Aerosol generator
USD989384S1 (en) 2021-04-30 2023-06-13 Nicoventures Trading Limited Aerosol generator

Also Published As

Publication number Publication date
EP2912896B1 (en) 2018-05-16
US20140113690A1 (en) 2014-04-24
WO2014066647A1 (en) 2014-05-01
US9414317B2 (en) 2016-08-09
EP2912896A1 (en) 2015-09-02
CN104871606A (zh) 2015-08-26
CN104871606B (zh) 2018-10-02
US20160345268A1 (en) 2016-11-24
JP2016502782A (ja) 2016-01-28
US9942851B2 (en) 2018-04-10

Similar Documents

Publication Publication Date Title
JP6273586B2 (ja) 無線デバイスにおける動的電力管理
EP3609049B1 (en) Wireless charging device and wireless charging method
US11856498B2 (en) Bluetooth device connection method and device
TWI761727B (zh) 無線網路中多鏈路操作期間的鏈路啟用以及禁用的方法以及裝置
EP3873118B1 (en) Bluetooth (tm) low-energy scanning and ranging
US10687287B2 (en) Dynamic power sharing for dual connectivity
US7936708B2 (en) Device, system, and method of wireless network selection and handover
US20190223077A1 (en) Rf power control for dual connectivity
US8170624B1 (en) Enhanced host sleep for WLAN devices
WO2019233208A1 (zh) 一种天线配置的指示方法、基站、终端及计算机存储介质
US20090061770A1 (en) Bluetooth device with on-demand page scan
CN112469016A (zh) 蓝牙-超宽带同步
TW201141086A (en) Multi-mode wireless transceiver and multi-mode switching method thereof
CN104283743A (zh) 一种家庭网络设备及代理服务发现的方法
US20180212636A1 (en) Bluetooth assisted remote discovery and wakeup
WO2020037920A1 (zh) Wifi热点通道模式切换方法及wifi热点产生装置
US10064097B2 (en) Interface shaping for virtual interfaces
WO2022178896A1 (zh) 无线保真WiFi通信方法及装置
KR100745694B1 (ko) 복수의 무선 매체를 지원하기 위한 무선 usb호스트/장치 어댑터 및 그 방법
WO2022082458A1 (zh) 一种数据传输方法及通信装置
CN112673657B (zh) 蓝牙无连接从属广播突发模式
EP4156826A1 (en) Electronic device for performing neighbor-awareness networking communication, and operating method therefor
JPWO2005117352A1 (ja) ネットワークシステム
WO2024146296A1 (zh) 一种寻呼方法、接入网设备及用户设备
WO2019196917A1 (zh) 一种激活频域资源的方法、设备及系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160914

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170818

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170829

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171128

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171212

R150 Certificate of patent or registration of utility model

Ref document number: 6273586

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250