(57)【要約】  クロックのスピードを設定するための装置および方法が開示される。コンピューティングデバイスが、プロセッサ、およびプロセッサのスケジューラを含み得、スケジューラは、複数の異なる実行環境からの、要求される帯域幅に対する複数の票を受け取ることと、要求される帯域幅を合計することと、要求される帯域幅の和に基づいて、クロックスピードを設定することとを行うように構成され得る。
2017515211.tif 000002
【特許請求の範囲】
【請求項１】
クロックスピードを設定するための方法であって、
複数の異なる実行環境からの、要求される帯域幅に対する複数の票を受け取るステップと、
前記要求される帯域幅を合計するステップと、
前記要求される帯域幅の和に基づいて、前記クロックスピードを設定するステップと
を含む、方法。
【請求項２】
クロックがレベル化されたスピードを含む、請求項1に記載の方法。
【請求項３】
前記クロックがレベル化されたスピードを含む場合、前記要求される帯域幅の前記和に基づいて、その次に最も高いレベル化されたスピードを前記クロックスピードとして選択するステップをさらに含む、請求項2に記載の方法。
【請求項４】
前記要求される帯域幅の各々が、一般化されたクロックスピードとしてのものである、請求項1に記載の方法。
【請求項５】
前記一般化されたクロックスピードが、低、中間、または高のうちの少なくとも1つのレベルを含む、請求項4に記載の方法。
【請求項６】
前記要求される一般化されたクロックスピードに基づいて、その次に最も高いレベルの一般化されたクロックスピードをクロックのスピードとして選択するステップをさらに含む、請求項5に記載の方法。
【請求項７】
プロセッサによって実行されると、前記プロセッサに、
複数の異なる実行環境からの、要求される帯域幅に対する複数の票を受け取ることと、
前記要求される帯域幅を合計することと、
前記要求される帯域幅の和に基づいて、クロックスピードを設定することと
を行わせるコードを含む、非一時的なコンピュータ可読記憶媒体。
【請求項８】
クロックがレベル化されたスピードを含む、請求項7に記載のコンピュータ可読記憶媒体。
【請求項９】
前記クロックがレベル化されたスピードを含む場合、前記要求される帯域幅の前記和に基づいて、その次に最も高いレベル化されたスピードを前記クロックスピードとして選択するためのコードをさらに備える、請求項8に記載のコンピュータ可読記憶媒体。
【請求項１０】
前記要求される帯域幅の各々が、一般化されたクロックスピードとしてのものである、請求項7に記載のコンピュータ可読記憶媒体。
【請求項１１】
前記一般化されたクロックスピードが、低、中間、または高のうちの少なくとも1つのレベルを含む、請求項10に記載のコンピュータ可読記憶媒体。
【請求項１２】
前記要求される一般化されたクロックスピードに基づいて、その次に最も高いレベルの一般化されたクロックスピードをクロックのスピードとして選択するためのコードをさらに備える、請求項11に記載のコンピュータ可読記憶媒体。
【請求項１３】
プロセッサと、
前記プロセッサのスケジューラであって、
複数の異なる実行環境からの、要求される帯域幅に対する複数の票を受け取ることと、
前記要求される帯域幅を合計することと、
前記要求される帯域幅の和に基づいて、クロックスピードを設定することと
を行うように構成されるスケジューラと
を備える、コンピューティングデバイス。
【請求項１４】
クロックがレベル化されたスピードを含む、請求項13に記載のコンピューティングデバイス。
【請求項１５】
前記クロックがレベル化されたスピードを含む場合、前記スケジューラが、前記要求される帯域幅の前記和に基づいて、その次に最も高いレベル化されたスピードを前記クロックスピードとして選択することを行うように構成される、請求項14に記載のコンピューティングデバイス。
【請求項１６】
前記要求される帯域幅の各々が、一般化されたクロックスピードとしてのものである、請求項13に記載のコンピューティングデバイス。
【請求項１７】
前記一般化されたクロックスピードが、低、中間、または高のうちの少なくとも1つのレベルを含む、請求項16に記載のコンピューティングデバイス。
【請求項１８】
前記スケジューラが、前記要求される一般化されたクロックスピードに基づいて、その次に最も高いレベルの一般化されたクロックスピードをクロックのスピードとして選択することを行うように構成される、請求項17に記載のコンピューティングデバイス。
【請求項１９】
複数の異なる実行環境からの、要求される帯域幅に対する複数の票を受け取るための手段と、
前記要求される帯域幅を合計するための手段と、
前記要求される帯域幅の和に基づいて、クロックスピードを設定するための手段と
を備える、コンピューティングデバイス。
【請求項２０】
クロックがレベル化されたスピードを含む、請求項19に記載のコンピューティングデバイス。
【請求項２１】
前記クロックがレベル化されたスピードを含む場合、前記要求される帯域幅の前記和に基づいて、その次に最も高いレベル化されたスピードを前記クロックスピードとして選択するための手段をさらに備える、請求項20に記載のコンピューティングデバイス。
【請求項２２】
前記要求される帯域幅の各々が、一般化されたクロックスピードとしてのものである、請求項19に記載のコンピューティングデバイス。
【請求項２３】
前記一般化されたクロックスピードが、低、中間、または高のうちの少なくとも1つのレベルを含む、請求項22に記載のコンピューティングデバイス。
【請求項２４】
前記要求される一般化されたクロックスピードに基づいて、その次に最も高いレベルの一般化されたクロックスピードをクロックのスピードとして選択するための手段をさらに備える、請求項23に記載のコンピューティングデバイス。
【請求項２５】
前記実行環境の各々がデータオーナである、請求項19に記載のコンピューティングデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クロックのスピードを設定するための装置および方法に関する。
【背景技術】
【０００２】
複数の実行環境(EE)に仮想オーナシップを与えるハードウェア環境では、多くのEEがコマンドインターフェース(たとえばハードウェア(HW)コマンドインターフェース)を所有し得る。各EEは、それがHWの唯一のユーザであるものと想定し得る。様々なEEから同時事象/コマンドが発生した場合、EEの各々は、性能低下を被ることがある。
【０００３】
HWの複数のユーザには、典型的なクロック投票(clock-voting)メカニズムが使用されてきた。この典型的なクロック投票メカニズムでは、HWの異なるEEユーザが、HWクロックをオンにするために、かつ特定のクロックスピードに投票する。票のアグリゲータが、最高票(すなわち最も多く要求されたスピード)を選択する。典型的には、各EEはその局所的な投票を、他のEEを考慮に入れずに管理している。残念なことに、一部のEEにとっては、選択されたスピードが低すぎる場合があり、結果として生じる低下の程度が、その特定のEEにとって対処できるものとはならない場合がある。
【発明の概要】
【課題を解決するための手段】
【０００４】
本発明の態様は、クロックのスピードを設定するための装置および方法に関し得る。コンピューティングデバイスが、プロセッサ、およびプロセッサのスケジューラを含み得、スケジューラは、複数の異なる実行環境からの、要求される帯域幅に対する複数の票を受け取ることと、要求される帯域幅を合計することと、要求される帯域幅の和に基づいて、クロックスピードを設定することとを行うように構成され得る。
【図面の簡単な説明】
【０００５】
【図１】本発明の態様が実践され得るコンピューティングデバイスの図である。
【図２】プロセッサ、およびクロックのスピードを設定するためのスケジューラを含む、コンピューティング環境の一例の図である。
【図３】スケジューラのクロック投票ブロックの一例の図である。
【図４】データオーナからの、一般化されたクロックスピードとしての要求される帯域幅を利用する、スケジューラの一例の図である。
【図５】クロックのスピードを設定するためのプロセスの一例を示す流れ図である。
【発明を実施するための形態】
【０００６】
「例示的」または「例」という語は、本明細書では、「例、実例、または例示としての役割を果たすこと」を意味するために使用される。「例示的」または「例」として本明細書において説明するどんな態様または実施形態も、他の態様または実施形態に比べて、好ましいまたは有利であると必ずしも解釈すべきではない。
【０００７】
本明細書では、「コンピューティングシステムまたはデバイス」という用語は、限定はしないが、ラップトップおよびデスクトップコンピュータ、タブレット、スマートフォン、テレビ、家庭電化製品、セルラー電話、パーソナルテレビデバイス、携帯情報端末(PDA)、パームトップコンピュータ、ワイヤレス電子メールレシーバ、マルチメディアインターネット対応セルラー電話、グローバルポジショニングシステム(GPS)レシーバ、ワイヤレスゲームコントローラ、車両(たとえば自動車)に内蔵されるレシーバ、インタラクティブゲームデバイス、ノートブック、スマートブック、ネットブック、モバイルテレビデバイス、または任意のデータ処理装置を含む、任意の形態のプログラマブルコンピュータデバイスを指す。
【０００８】
以下に詳細に説明するように本発明の態様が実践され得る、クロックのスピードを設定するために利用され得るコンピューティングデバイス100の例を、図1に示す。コンピューティングデバイス100は、バス105を介して電気的に結合され得る(または必要に応じて他の方法で連通し得る)ハードウェア要素を備えて、示されている。ハードウェア要素は、限定はしないが、1つまたは複数の汎用プロセッサならびに/もしくは(デジタル信号処理チップ、グラフィックアクセラレーションプロセッサ、暗号プロセッサ、および/もしくは同類のものなどの)1つまたは複数の専用プロセッサを含む、1つまたは複数のプロセッサ110と、1つまたは複数の入力デバイス115(たとえばキーボード、キーパッド、タッチスクリーン、マウスなど)と、少なくともディスプレイデバイス121を含み、さらに、限定はしないが、スピーカ、プリンタ、ならびに/もしくは同類のものを含み得る、1つまたは複数の出力デバイス120とを含み得る。
【０００９】
コンピューティングデバイス100は、1つまたは複数の非一時的な記憶デバイス125をさらに含み得(かつ/またはそれと連通し得)、これは、限定はしないが、ローカルおよび/またはネットワークアクセス可能記憶装置を備え得、かつ/あるいは、限定はしないが、ディスクドライブ、ドライブアレイ、光記憶デバイス、プログラム可能、フラッシュ更新可能なランダムアクセスメモリ(「RAM」)および/もしくはリードオンリーメモリ(「ROM」)などの固体記憶デバイス、ならびに/または同類のものを含み得る。そのような記憶デバイスは、限定はしないが、様々なファイルシステム、データベース構造、および/または同類のものを含む、任意の適切なデータストアを実装するように構成され得る。
【００１０】
コンピューティングデバイス100は、通信サブシステム130も含み得、これは、限定はしないが、モデム、ネットワークカード(ワイヤレスもしくは有線)、赤外線通信デバイス、(ブルートゥース(登録商標)デバイス、802.11デバイス、Wi-Fiデバイス、WiMaxデバイス、セルラー通信デバイスなどの)ワイヤレス通信デバイスおよび/もしくはチップセット、ならびに/または同類のものを含み得る。通信サブシステム130は、データが、ネットワーク、他のコンピュータシステム、および/または本明細書において説明する他の任意のデバイスと交換されることを可能にし得る。多くの実施形態では、コンピューティングデバイス100は、上で説明したRAMまたはROMデバイスを含み得るワーキングメモリ135をさらに備える。さらに、コンピューティングデバイス100は、システムメモリ管理ユニット(SMMU)を含み得、これは、メモリ参照がそれに通されるコンピュータハードウェアユニットであり、アプリケーションを実施するために、仮想メモリアドレスの物理アドレスへの変換をするのに使用され得る。コンピューティングデバイス100は、オペレーティングシステム140、アプリケーション145、デバイスドライバ、実行可能ライブラリ、および/または他のコードを含む、ワーキングメモリ135内に現在位置するように示されているソフトウェア要素も備え得る。
【００１１】
単なる例として、下で論じる方法に関連して説明する1つまたは複数の手順は、コンピューティングデバイス(および/またはコンピューティングデバイス内のプロセッサ)によって実行可能なコードおよび/または命令として実装され得、一態様では、次いで、そのようなコードおよび/または命令が、本発明の実施形態による説明する方法に従って1つまたは複数の動作を実施するように汎用コンピュータ(たとえば、コンピューティングデバイス)を構成し、かつ/または適応させるために、使用され得る。1つの具体的な例として、以下により詳細に説明するように、プロセッサ110は、クロックのスピードを設定するための本発明の実施形態を実施し得る。これらの命令および/またはコードのセットは、非一時的なコンピュータ可読記憶媒体に記憶され得る。場合によっては、記憶媒体は、コンピューティングデバイス100などのコンピュータデバイス内に組み込まれ得る。他の実施形態では、記憶媒体は、コンピュータシステムとは別(たとえば、コンパクトディスクなどの取外し可能媒体)とすることができ、かつ/または記憶媒体は、記憶媒体がそれに記憶された命令/コードで汎用コンピュータをプログラムし、構成し、かつ/もしくは適応させるために使用され得るような、インストールパッケージの形で提供され得る。これらの命令は、コンピュータ化されたコンピューティングデバイス100によって実行可能である実行可能コードの形態をとり得、かつ/または(たとえば、多様な一般に入手可能なコンパイラ、インストールプログラム、圧縮/解凍ユーティリティなどのいずれかを使用して)コンピューティングデバイス100上でコンパイルおよび/もしくはインストールすると、次いで実行可能コードの形態をとる、ソースコードおよび/もしくはインストール可能コードの形態をとり得る。
【００１２】
図2を参照して、本発明の態様が実践され得る、クロックのスピードを設定するための暗号プロセッサなどのプロセッサ220を含むコンピューティングデバイス100によって実施可能なコンピューティング環境200の一例について、以下に説明する。後により詳細に説明するように、クロックのスピードを設定するための暗号プロセッサ220の使用は、クロックのスピードを設定するために利用され得るプロセッサの単なる一例であり、クロックのスピードを設定するための本発明の実施形態を実施するために、任意のタイプのプロセッサが利用され得る。
【００１３】
この例の説明を続けると、暗号プロセッサ220は、計算量の多い情報の符号化および復号を、鍵を使用することによって実施し得る。暗号プロセッサ220は、CPU(または他のプロセッサ)の代わりに計算量の多い情報の符号化および復号を拡張言語に基づいて実施するコプロセッサとすることもでき、あるいは情報の符号化および復号のために専用ソフトウェアドライバによって実行される別個のハードウェア(たとえばアクセラレータプロセッサ)である、暗号エンジンとすることもできる。この例では、暗号プロセッサ220は暗号エンジンであり、以下に説明する例は、暗号エンジンによる実装の文脈におけるものである。しかしながら、当業者には明らかなはずであるように、これらの実装形態と同じものが、コプロセッサによって同様に実施され得る。この実装形態例では、データを暗号化および解読するための鍵を制御する様々な実行環境鍵オーナ(EE1〜EEN)202、204、206が、様々な実行環境データオーナ(EE1〜EEN)210、212、214と協調して動作する。鍵を利用する実行環境は、コンピューティングデバイスが入力および出力するデータをセキュアに通信し得る。具体的には、データは、暗号プロセッサ220の鍵テーブル224内に記憶された鍵によって暗号化および解読され得る。一例として、EEデータオーナ(210、212、214)に割り当てられる、鍵テーブル224からの鍵は、ペンディングコマンド(たとえば暗号化または解読)を実施するために、それらのそれぞれのコマンドチャネルに送信され得る。それに加えて、または代替手段として、鍵テーブル内に記憶されている鍵は、データの暗号化または解読で使用するための暗号ライブラリ239に送信されてもよい。いずれにしても、暗号プロセッサ220によって実施される、EEデータオーナ(210、212、214)からコマンドチャネル(230、232、234)を経由する、データを暗号化または解読するコマンドは、暗号化または解読されたデータが、SMMU133を介して入力ドメイン240または出力ドメイン250に供給され得るように実施される。
【００１４】
後により詳細に説明するように、一実施形態では、暗号プロセッサ220のスケジューラ236が、複数の異なる実行環境(たとえばEEデータオーナ210、212、214)からの、要求される帯域幅(BW要求)に対する複数の票を受け取ることと、スケジューラ236のクロック投票ブロック237において、要求される帯域幅を合計することと、たとえばクロック票238と呼ばれる、要求される帯域幅の和に基づいて、クロック241のスピード(たとえばクロックスピード)を設定することとを行うように構成される。これに基づいて、EEデータオーナ(210、212、214)からの暗号化/解読コマンドが、スピードの総和で実施される。たとえば、EEデータオーナ(210、212、214)からの、[たとえば100MHz、100MHz、および200MHzの]3つのEE帯域幅要求票がある場合、スケジューラ236は、クロック241のスピードを400MHz(すなわち総和)になるようにスケジューリングする。このようにして、すべてのEEデータオーナ(210、212、214)の平均性能が、管理されていない事象の同時発生により変わらずに済む。クロック投票ブロック237において、要求される帯域幅要求を合計することは、利用され得るタイプの機能の一例にすぎないこと、およびクロック241を適宜調整するために利用されるものである、すべてのユーザによって要求される活動のデマンドを考慮に入れる任意のタイプの機能が利用され得ることを理解されたい。
【００１５】
一実装形態例として、入力ドメイン240は、オーディオデータ242、ハイレベルオペレーティングシステムデータ(HLOS)244、およびビデオデータ246を含み、一方、同様に、出力ドメイン250の例としては、オーディオデータ252、ハイレベルオペレーティングシステムデータ(HLOS)254、およびビデオデータ256がある。これらは、単なるドメインの例であり、多くの異なるタイプのドメイン(たとえばエンタープライズ、モデムなど)が利用され得ることを理解されたい。さらに、多くの異なるタイプの実行環境が利用され得、先に説明したものは例にすぎない。1つの具体的な例において、実行環境1は、ビデオデータ用とすることができ、EE1鍵オーナ202およびEE1データオーナ1 210を含み得る。データオーナ210の入力ビデオデータ246は、出力ドメイン250内に表示され得るように、暗号プロセッサ220によって、鍵テーブル224内のEE1鍵オーナに関連付けられた鍵を用いて解読される必要がある場合がある。この例の説明を続けると、ビデオ実行環境(たとえばEE1鍵オーナ202およびEE1データオーナ210)は、暗号化されたビデオデータ246が暗号プロセッサ220によって、鍵テーブル224のビデオ実行環境に対して関連付けられた鍵を用いて解読されるように要求し得、それにより、ビデオデータ256が、表示できるように出力ドメイン250に出力され得る。コマンドチャネル1 230は、鍵テーブル224および/または暗号ライブラリ239の鍵とともに実施される解読コマンドを含み得る。
【００１６】
その上、暗号プロセッサ220のスケジューラ236が、複数の異なる実行環境(たとえばEEデータオーナ210、212、214)からの、要求される帯域幅(BW要求)に対する複数の票を受け取り(たとえば[100MHz、100MHz、および200MHz])、クロック投票ブロック237において、要求される帯域幅を合計し、たとえばクロック票238と呼ばれる、要求される帯域幅の和(たとえば400MHz)に基づいて、クロック241のスピード(たとえばクロックスピード)を設定するために利用され得る。これに基づいて、EEデータオーナ(210、212、214)からの暗号化/解読コマンドが、スピードの総和で実施される。したがって、例として、ビデオ実行環境(たとえばEE1鍵オーナ202およびEE1データオーナ210)は、暗号化されたビデオデータ246が暗号プロセッサ220によって400MHzのクロックレートで解読され得、それにより、ビデオデータ256が、表示できるように出力ドメイン250に出力され得、一方、残りの実行環境(たとえばEE2鍵オーナ204/EE2データオーナ212(たとえばオーディオ)も同じ様に、またEEN鍵オーナ206/EENデータオーナ214(たとえばHLOS))も同じ様に、暗号化されたデータが暗号プロセッサ220によって400MHzのクロックレートで解読され得、それにより、関係するデータが出力ドメイン250に出力され得る。
【００１７】
これは、(データを暗号化または解読するために使用され得る)暗号プロセッサの動作の一例にすぎないこと、および多くの異なるタイプの実行環境、データタイプ、ドメインタイプなどが、暗号プロセッサまたは任意のタイプのプロセッサとともに利用され得ることを理解されたい。さらに、クロックのスピードを設定するための暗号プロセッサの使用は、クロックのスピードを設定するために利用され得るプロセッサ220の単なる一例であり、クロックのスピードを設定するための本発明の実施形態を実施するために、任意のタイプのプロセッサが利用され得ることを理解されたい。
【００１８】
さらに図3を参照して、スケジューラ236のクロック投票ブロック237の一例について説明する。初めに、一実施形態では、スケジューラ236が任意の公平共有(fair-sharing)アルゴリズムを使用して動作し得ることを理解されたい。そのような一例が、ラウンドロビン方式であり、ラウンドロビン方式では、各EEデータオーナ(たとえば210、212、214)のコマンドチャネル(たとえば230、232、234)からの各コマンドについて、スケジューラが、サービス中の現在のコマンドを中断し、次いで次のコマンドをサービスする。たとえば、現在のコマンドについてクォータ(quota)に達した後(たとえば32KB)、任意のペンディングコマンドが設定されている場合に、次のペンディングコマンドがサービスされる。このようにして、どのコマンドチャネルもみな、プロセッサの性能の100%〜1/Nを得、ここで、Nはペンディング状態にあるポート/コマンドチャネルの数である。このようにして、スタベーションが防止され、コマンドチャネルに対する公平性がもたらされる。図3に示すように、スケジューラのクロック投票ブロック237は、複数の異なる実行環境データオーナ(たとえば210、212、および214)からの、複数の帯域幅要求(たとえば帯域幅要求1〜N 310、312、および314)を受け取り、加算関数320を利用することによって、要求される帯域幅要求を合計して、総帯域幅要求[たとえばTOTAL_BW_REQ=Σ(BW_REQi)]を算出し得る。
【００１９】
さらに、一実施形態では、クロックはレベル化されたスピード330を含み得、それにより、スケジューラ236のクロック投票ブロック237は、帯域幅要求の和(TOTAL_BW_REQ332)に基づいて、その次に最も高いレベル化されたスピードを選択することを行うように構成される。一例として、図3に示すように、帯域幅は、ある特定のレベル(たとえばレベル0-0MHz、レベル1-200MHz、レベル2-400MHz、レベル3-600MHzなど)に予め定められ得る。この例では、100MHz、100MHz、および150MHzをそれぞれ求める、帯域幅要求の3つのEEデータオーナ票がある場合、クロック投票ブロック237は、総帯域幅要求332を350MHzとして算出し、帯域幅のその次に最も高いレベル340、すなわちレベル2-400MHzを選択する。したがって、クロック241のスピードとしての、その次に最も高いレベル化されたスピードが選択される(たとえば400MHz)。実施形態、スケジューラ236は、ハードウェアまたはソフトウェアの形で実装され得ることを理解されたい。また、クロック投票ブロック237において、要求される帯域幅要求を合計することは、利用され得るタイプの機能の一例にすぎないこと、およびクロック241を適宜調整するために利用されるものである、すべてのユーザによって要求される活動のデマンドを考慮に入れる任意のタイプの機能が利用され得ることも、やはり理解されたい。
【００２０】
さらに図4を参照して、EEデータオーナからの、一般化されたクロックスピードとしての要求される帯域幅を利用する、スケジューラ236の一例について説明する。本実施形態では、各EEデータオーナ(たとえば210、212、214)が、帯域幅要求または票を、それらのそれぞれのコマンドチャネル(たとえば230、232、234)を通じて、一般化されたクロックスピード(たとえば低、中間、または高)として、スケジューラ236に送信する。スケジューラ236は、受け取った要求される一般化されたクロックスピード(たとえば低、中間、または高)に基づいて、(たとえばクロック票としての役割を果たす)その次に最も高いレベルの一般化されたクロックスピードをクロック241として選択し得る。したがって、スケジューラ236は、受け取った要求される一般化されたクロックスピード(たとえば低、中間、または高)に基づいて、合わせた票からその次のレベルのクロックスピードを選択し得る。図4の表400は、様々な例を示す。一例として、EE1 410=低、EE2 412=低、およびEE3 414=低である場合、スケジューラ236は、クロック241のスピードとしてのクロックレート416のクロック票を、中間に設定されるように設定する。別の例として、EE1 410=低、EE2 412=低、およびEE3 414=中間である場合、スケジューラ236は、クロック241のスピードとしてのクロックレート416のクロック票を、高に設定されるように設定する。さらに別の例では、EE1 410=低、EE2 412=中間、EE3 414=高である場合、スケジューラ236は、クロック241のスピードとしてのクロックレート416のクロック票を、高に設定されるように設定する。
【００２１】
先に説明したように、クロックのスピード(たとえばクロックスピード)を設定するためのスケジューラ236の先に説明した機能を実施するプロセッサ220は、符号化および復号を実施するための暗号プロセッサとすることもでき、あるいはスケジューラ236によって設定されたクロックのスピードでプロセッサの機能を実施する、他の任意のタイプのプロセッサとすることもできる。したがって、任意のタイプのプロセッサのスケジューラ236が、複数の異なる実行環境(たとえばEEデータオーナ210、212、214)からの、要求される帯域幅(BW要求)に対する複数の票を受け取ることと、スケジューラ236のクロック投票ブロック237において、要求される帯域幅を合計することと、たとえばクロック票238と呼ばれる、要求される帯域幅の和に基づいて、クロック241のスピードを設定することとを行うように構成され得る。これに基づいて、任意のタイプのプロセッサについて、先に詳細に説明したように、EEデータオーナ(210、212、214)からの任意のタイプのコマンドが、スピードの総和で実施され得る。
【００２２】
さらに図5を参照すると、図5は、本発明の一実施形態による、クロックのスピードを設定するための方法プロセス500の一例を示す流れ図である。ブロック502において、複数の異なる実行環境からの、要求される帯域幅(BW要求)の複数の票が受け取られる。次に、ブロック504において、要求される帯域幅が合計される。ブロック506において、要求される帯域幅の和に基づいて、クロックスピードが設定される。これに基づいて、任意のタイプのプロセッサについて、先に詳細に説明したように、任意のタイプのEEデータオーナからの任意のタイプのコマンドが、スピードの総和で実施され得る。
【００２３】
先に説明した本発明の態様は、先に説明したように、デバイス(たとえばコンピューティングデバイス100)のプロセッサ220(たとえば汎用プロセッサ、暗号プロセッサ、または任意のタイプのプロセッサ)による命令の実行に関連して実施され得ることを理解されたい。具体的には、限定はしないがプロセッサを含む、デバイスの回路が、本発明の実施形態による方法またはプロセス(たとえば、図3〜図5のプロセスおよび機能)を実行するために、プログラム、ルーチンの制御下、または命令の実行下で動作し得る。たとえば、そのようなプログラムは、(たとえば、メモリおよび/または他のロケーションに記憶される)ファームウェアまたはソフトウェアの形で実装され得、デバイスのプロセッサおよび/または他の回路によって実施され得る。さらに、プロセッサ、マイクロプロセッサ、回路、コントローラなどという用語は、論理、コマンド、命令、ソフトウェア、ファームウェア、機能などを実行することの可能な、任意のタイプの論理または回路を指すことを理解されたい。
【００２４】
デバイスがモバイルデバイスまたはワイヤレスデバイスであるとき、それらは、任意の適切なワイヤレス通信技術に基づく、またはその他の方法で任意の適切なワイヤレス通信技術をサポートする1つまたは複数のワイヤレス通信リンクを介し、ワイヤレスネットワークを通じて通信し得ることを理解されたい。たとえば、いくつかの態様では、ワイヤレスデバイスおよび他のデバイスは、ワイヤレスネットワークを含むネットワークと関連し得る。いくつかの態様では、ネットワークは、ボディエリアネットワークまたはパーソナルエリアネットワーク(たとえば超広帯域ネットワーク)を備え得る。いくつかの態様では、ネットワークは、ローカルエリアネットワークまたはワイドエリアネットワークを備え得る。ワイヤレスデバイスは、たとえば3G、LTE、Advanced LTE、4G、CDMA、TDMA、OFDM、OFDMA、WiMAXおよびWiFiなどの、多様なワイヤレス通信技術、プロトコル、または標準規格のうちの1つまたは複数を、サポートしてもよく、その他の方法で使用してもよい。同様に、ワイヤレスデバイスは、多様な対応する変調方式または多重化方式のうちの1つまたは複数を、サポートしてもよく、その他の方法で使用してもよい。したがって、ワイヤレスデバイスは、上記のまたは他のワイヤレス通信技術を使用して、1つまたは複数のワイヤレス通信リンクを確立し、その通信リンクを介して通信するのに適した、構成要素(たとえばエアインターフェース)を含み得る。たとえば、デバイスは、ワイヤレス媒体を経由した通信を容易にする様々な構成要素(たとえば、信号発生器および信号プロセッサ)を含み得る、関連するトランスミッタ構成要素およびレシーバ構成要素(たとえば、トランスミッタおよびレシーバ)を有するワイヤレストランシーバを備え得る。よく知られているように、したがってモバイルワイヤレスデバイスは、他のモバイルデバイス、セル式電話、他の有線コンピュータおよびワイヤレスコンピュータ、インターネットウェブサイトなどと、ワイヤレスで通信し得る。
【００２５】
本明細書における教示は、多様な装置(たとえばデバイス)に組み込まれ(たとえば、それらの装置内に実装され、またはそれらの装置によって実施され)得る。たとえば、本明細書において教示した1つまたは複数の態様は、電話(たとえば、セルラー電話)、携帯情報端末(「PDA」)、タブレット、モバイルコンピュータ、ラップトップコンピュータ、エンターテインメントデバイス(たとえば、音楽デバイスもしくはビデオデバイス)、ヘッドセット(たとえば、ヘッドフォン、イヤピースなど)、医療デバイス(たとえば、生体センサ、心拍数モニタ、歩数計、EKGデバイスなど)、ユーザI/Oデバイス、コンピュータ、有線コンピュータ、固定コンピュータ、デスクトップコンピュータ、サーバ、店頭デバイス、セットトップボックス、または他の任意の適切なデバイスに組み込まれ得る。これらのデバイスは、異なる電力要件およびデータ要件を有する場合がある。
【００２６】
いくつかの態様では、ワイヤレスデバイスは、通信システム用のアクセスデバイス(たとえばWi-Fiアクセスポイント)を備え得る。そのようなアクセスデバイスは、たとえば、有線通信リンクまたはワイヤレス通信リンクを介した、別のネットワーク(たとえば、インターネットやセルラーネットワークなどのワイドエリアネットワーク)への接続性を提供し得る。したがって、アクセスデバイスは、別のデバイス(たとえばWiFiステーション)が他のネットワークまたは何らかの他の機能にアクセスできるようにし得る。
【００２７】
情報および信号は、多様な異なる技術および技法のいずれかを使用して表され得ることを、当業者なら理解されよう。たとえば、上記の説明全体を通して参照される場合があるデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場もしくは磁性粒子、光場もしくは光学粒子、またはそれらの任意の組合せによって表され得る。
【００２８】
本明細書において開示した実施形態に関連して説明した、様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装され得ることを、当業者ならさらに理解するであろう。ハードウェアとソフトウェアのこの交換可能性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップについては上で、それらの機能の観点から一般に説明してきた。そのような機能が、ハードウェアとして実装されるか、それともソフトウェアとして実装されるかは、具体的な適用例およびシステム全体に課せられる設計制約によって決まる。当業者なら、説明した機能を、具体的な適用例ごとに様々な形で実装し得るが、そのような実装形態の決定は、本発明の範囲からの逸脱を生じさせるものと解釈すべきではない。
【００２９】
本明細書において開示した実施形態に関連して説明した、様々な例示的な論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理デバイス、個別のゲート論理回路もしくはトランジスタ論理回路、個別のハードウェア構成要素、または本明細書において説明した機能を実施するように設計されたそれらの任意の組合せを用いて、実装されてもよく、実施されてもよい。汎用プロセッサは、マイクロプロセッサとすることができるが、代替手段として、プロセッサは、任意の従来型のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンとすることもできる。プロセッサはまた、コンピューティングデバイスの組合せ、たとえばDSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、1つまたは複数のマイクロプロセッサとDSPコアとの併用、あるいは他の任意のそのような構成として、実装され得る。
【００３０】
本明細書において開示した実施形態に関連して説明した、方法またはアルゴリズムのステップは、直接ハードウェアの形で、プロセッサによって実行されるソフトウェアモジュールの形で、またはその2つの組合せの形で、具現化され得る。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、または当技術分野で知られる他の任意の形態の記憶媒体内に存在し得る。例示的な記憶媒体がプロセッサに、プロセッサが記憶媒体から情報を読み取り、またそこに情報を書き込み得るように結合される。代替手段として、記憶媒体は、プロセッサと一体をなしてもよい。プロセッサおよび記憶媒体は、ASIC内に存在し得る。ASICは、ユーザ端末内に存在し得る。代替手段として、プロセッサおよび記憶媒体は、ユーザ端末内に個別の構成要素として存在してもよい。
【００３１】
1つまたは複数の例示的な実施形態では、説明した機能が、ハードウェアの形、ソフトウェアの形、ファームウェアの形、またはそれらの任意の組合せの形で実装され得る。機能は、コンピュータプログラムプロダクトとしてのソフトウェアの形で実装される場合、1つまたは複数の命令またはコードとして、コンピュータ可読媒体に記憶されてもよく、コンピュータ可読媒体を経由して送信されてもよい。コンピュータ可読媒体は、コンピュータ記憶媒体と、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体の両方を含む。記憶媒体は、コンピュータによってアクセスされ得る任意の入手可能な媒体とすることができる。限定ではなく例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスク記憶装置、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または命令もしくはデータ構造の形態をとる所望のプログラムコードを保持もしくは記憶するために使用され得、かつコンピュータによってアクセスされ得る、他の任意の媒体を備え得る。また、どんな接続も、厳密にはコンピュータ可読媒体と呼ばれる。たとえば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、マイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、マイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ディスク(disk)およびディスク(disc)は、本明細書では、コンパクトディスク(disc)(CD)、レーザディスク(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピー(登録商標)ディスク(disk)、およびブルーレイディスク(disc)を含み、ただし、ディスク(disk)は通常、データを磁気的に再生し、一方ディスク(disc)は、レーザを用いてデータを光学的に再生する。上記の組合せも、コンピュータ可読媒体の範囲内に含まれるべきである。
【００３２】
開示した実施形態についての先の説明は、どんな当業者でも本発明を作製または使用できるようにするために提供されている。これらの実施形態に対する様々な変更形態が、当業者には容易に明らかとなり、本明細書において規定される一般原理は、本発明の趣旨または範囲から逸脱することなく他の実施形態に適用され得る。したがって、本発明は、本明細書において示した実施形態に限定されるものではなく、本明細書において開示した原理および新規な特徴に一致する最も広い範囲を与えられるべきである。
【符号の説明】
【００３３】
100  コンピューティングデバイス
105  バス
110  プロセッサ
115  入力デバイス
120  出力デバイス
121  ディスプレイデバイス
125  記憶デバイス
130  通信サブシステム
133  SMMU
135  ワーキングメモリ
140  オペレーティングシステム
145  アプリケーション
200  コンピューティング環境
202  実行環境鍵オーナ、EE1鍵オーナ
204  実行環境鍵オーナ、EE2鍵オーナ
206  実行環境鍵オーナ、EEN鍵オーナ
210  EEデータオーナ、EE1データオーナ、実行環境データオーナ
212  EEデータオーナ、EE2データオーナ、実行環境データオーナ
214  EEデータオーナ、EENデータオーナ、実行環境データオーナ
220  プロセッサ、暗号プロセッサ
224  鍵テーブル
230  コマンドチャネル
232  コマンドチャネル
234  コマンドチャネル
236  スケジューラ
237  クロック投票ブロック
238  クロック票
239  暗号ライブラリ
240  入力ドメイン
241  クロック
242  オーディオデータ
244  ハイレベルオペレーティングシステムデータ(HLOS)
246  ビデオデータ
250  出力ドメイン
252  オーディオデータ
254  ハイレベルオペレーティングシステムデータ(HLOS)
256  ビデオデータ
310  帯域幅要求1
312  帯域幅要求2
314  帯域幅要求N
320  加算関数
330  レベル化されたスピード
332  TOTAL_BW_REQ、総帯域幅要求
400  表
410  EE1
412  EE2
414  EE3
416  クロックレート
500  方法プロセス
【図１】
2017515211.tif 000003
【図２】
2017515211.tif 000004
【図３】
2017515211.tif 000005
【図４】
2017515211.tif 000006
【図５】
2017515211.tif 000007
【手続補正書】
【提出日】平成28年10月4日(2016.10.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
クロックスピードを設定するための方法であって、
複数の異なる実行環境データオーナからの、要求される帯域幅に対する複数の票を受け取るステップと、
前記要求される帯域幅を合計するステップと、
前記要求される帯域幅の和に基づいて、暗号プロセッサの前記クロックスピードを設定するステップと、
少なくとも1つの実行環境データオーナから、データを暗号化または解読するコマンドを受信するステップと、
前記データを少なくとも1つの鍵を使用して暗号化または解読するステップであって、前記暗号プロセッサによって前記クロックスピードで実施される、暗号化または解読するステップと
を含む、方法。
【請求項２】
クロックがレベル化されたスピードを含む、請求項1に記載の方法。
【請求項３】
前記クロックがレベル化されたスピードを含む場合、前記要求される帯域幅の前記和に基づいて、その次に最も高いレベル化されたスピードを前記クロックスピードとして選択するステップをさらに含む、請求項2に記載の方法。
【請求項４】
前記要求される帯域幅の各々が、一般化されたクロックスピードとしてのものである、請求項1に記載の方法。
【請求項５】
前記一般化されたクロックスピードが、低、中間、または高のうちの少なくとも1つのレベルを含む、請求項4に記載の方法。
【請求項６】
前記要求される一般化されたクロックスピードに基づいて、その次に最も高いレベルの一般化されたクロックスピードをクロックのスピードとして選択するステップをさらに含む、請求項5に記載の方法。
【請求項７】
プロセッサによって実行されると、前記プロセッサに、
複数の異なる実行環境データオーナからの、要求される帯域幅に対する複数の票を受け取ることと、
前記要求される帯域幅を合計することと、
前記要求される帯域幅の和に基づいて、暗号プロセッサのクロックスピードを設定することと、
少なくとも1つの実行環境データオーナから、データを暗号化または解読するコマンドを受信することと、
前記データを少なくとも1つの鍵を使用して暗号化または解読することであって、暗号プロセッサによって前記クロックスピードで実施される、暗号化または解読することと
を行わせるコードを含む、非一時的なコンピュータ可読記憶媒体。
【請求項８】
クロックがレベル化されたスピードを含む、請求項7に記載のコンピュータ可読記憶媒体。
【請求項９】
前記クロックがレベル化されたスピードを含む場合、前記要求される帯域幅の前記和に基づいて、その次に最も高いレベル化されたスピードを前記クロックスピードとして選択するためのコードをさらに備える、請求項8に記載のコンピュータ可読記憶媒体。
【請求項１０】
前記要求される帯域幅の各々が、一般化されたクロックスピードとしてのものである、請求項7に記載のコンピュータ可読記憶媒体。
【請求項１１】
前記一般化されたクロックスピードが、低、中間、または高のうちの少なくとも1つのレベルを含む、請求項10に記載のコンピュータ可読記憶媒体。
【請求項１２】
前記要求される一般化されたクロックスピードに基づいて、その次に最も高いレベルの一般化されたクロックスピードをクロックのスピードとして選択するためのコードをさらに備える、請求項11に記載のコンピュータ可読記憶媒体。
【請求項１３】
プロセッサと、
前記プロセッサのスケジューラであって、
複数の異なる実行環境データオーナからの、要求される帯域幅に対する複数の票を受け取ることと、
前記要求される帯域幅を合計することと、
前記要求される帯域幅の和に基づいて、暗号プロセッサのクロックスピードを設定することと、
少なくとも1つの実行環境データオーナから、データを暗号化または解読するコマンドを受信することと、
前記データを少なくとも1つの鍵を使用して暗号化または解読することであって、前記暗号プロセッサによって前記クロックスピードで実施される、暗号化または解読することと
を行うように構成されるスケジューラと
を備える、コンピューティングデバイス。
【請求項１４】
クロックがレベル化されたスピードを含む、請求項13に記載のコンピューティングデバイス。
【請求項１５】
前記クロックがレベル化されたスピードを含む場合、前記スケジューラが、前記要求される帯域幅の前記和に基づいて、その次に最も高いレベル化されたスピードを前記クロックスピードとして選択することを行うように構成される、請求項14に記載のコンピューティングデバイス。
【請求項１６】
前記要求される帯域幅の各々が、一般化されたクロックスピードとしてのものである、請求項13に記載のコンピューティングデバイス。
【請求項１７】
前記一般化されたクロックスピードが、低、中間、または高のうちの少なくとも1つのレベルを含む、請求項16に記載のコンピューティングデバイス。
【請求項１８】
前記スケジューラが、前記要求される一般化されたクロックスピードに基づいて、その次に最も高いレベルの一般化されたクロックスピードをクロックのスピードとして選択することを行うように構成される、請求項17に記載のコンピューティングデバイス。
【請求項１９】
複数の異なる実行環境データオーナからの、要求される帯域幅に対する複数の票を受け取るための手段と、
前記要求される帯域幅を合計するための手段と、
前記要求される帯域幅の和に基づいて、暗号プロセッサのクロックスピードを設定するための手段と、
少なくとも1つの実行環境データオーナから、データを暗号化または解読するコマンドを受信するための手段と、
前記データを少なくとも1つの鍵を使用して暗号化または解読するための手段であって、前記暗号化または解読することが、前記暗号プロセッサによって前記クロックスピードで実施される、暗号化または解読するための手段と
を備える、コンピューティングデバイス。
【請求項２０】
クロックがレベル化されたスピードを含む、請求項19に記載のコンピューティングデバイス。
【請求項２１】
前記クロックがレベル化されたスピードを含む場合、前記要求される帯域幅の前記和に基づいて、その次に最も高いレベル化されたスピードを前記クロックスピードとして選択するための手段をさらに備える、請求項20に記載のコンピューティングデバイス。
【請求項２２】
前記要求される帯域幅の各々が、一般化されたクロックスピードとしてのものである、請求項19に記載のコンピューティングデバイス。
【請求項２３】
前記一般化されたクロックスピードが、低、中間、または高のうちの少なくとも1つのレベルを含む、請求項22に記載のコンピューティングデバイス。
【請求項２４】
前記要求される一般化されたクロックスピードに基づいて、その次に最も高いレベルの一般化されたクロックスピードをクロックのスピードとして選択するための手段をさらに備える、請求項23に記載のコンピューティングデバイス。
【請求項２５】
前記実行環境の各々がデータオーナである、請求項19に記載のコンピューティングデバイス。
【手続補正書】
【提出日】平成29年3月2日(2017.3.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
クロックスピードを設定するための方法であって、
複数の異なる実行環境データオーナからの、要求される帯域幅に対する複数の票を受け取るステップと、
要求される帯域幅要求を合計するステップと、
前記要求される帯域幅要求の和に基づいて、暗号プロセッサの前記クロックスピードを設定するステップと
を含む、方法。
【請求項２】
クロックがレベル化されたスピードを含む、請求項1に記載の方法。
【請求項３】
前記要求される帯域幅要求の前記和に基づいて、その次に最も高いレベル化されたスピードを前記クロックスピードとして選択するステップをさらに含む、請求項2に記載の方法。
【請求項４】
前記要求される帯域幅要求の各々が、一般化されたクロックスピードとしてのものである、請求項1に記載の方法。
【請求項５】
前記一般化されたクロックスピードが、低、中間、または高のうちの少なくとも1つのレベルを含む、請求項4に記載の方法。
【請求項６】
前記要求される一般化されたクロックスピードに基づいて、その次に最も高いレベルの一般化されたクロックスピードをクロックのスピードとして選択するステップをさらに含む、請求項5に記載の方法。
【請求項７】
プロセッサによって実行されると、前記プロセッサに、
複数の異なる実行環境データオーナからの、要求される帯域幅に対する複数の票を受け取ることと、
要求される帯域幅要求を合計することと、
前記要求される帯域幅要求の和に基づいて、暗号プロセッサのクロックスピードを設定することと
を行わせるコードを含む、非一時的なコンピュータ可読記憶媒体。
【請求項８】
クロックがレベル化されたスピードを含む、請求項7に記載のコンピュータ可読記憶媒体。
【請求項９】
前記要求される帯域幅要求の前記和に基づいて、その次に最も高いレベル化されたスピードを前記クロックスピードとして選択するためのコードをさらに備える、請求項8に記載のコンピュータ可読記憶媒体。
【請求項１０】
前記要求される帯域幅要求の各々が、一般化されたクロックスピードとしてのものである、請求項7に記載のコンピュータ可読記憶媒体。
【請求項１１】
前記一般化されたクロックスピードが、低、中間、または高のうちの少なくとも1つのレベルを含む、請求項10に記載のコンピュータ可読記憶媒体。
【請求項１２】
前記要求される一般化されたクロックスピードに基づいて、その次に最も高いレベルの一般化されたクロックスピードをクロックのスピードとして選択するためのコードをさらに備える、請求項11に記載のコンピュータ可読記憶媒体。
【請求項１３】
プロセッサと、
前記プロセッサのスケジューラであって、
複数の異なる実行環境データオーナからの、要求される帯域幅に対する複数の票を受け取ることと、
要求される帯域幅要求を合計することと、
前記要求される帯域幅要求の和に基づいて、暗号プロセッサのクロックスピードを設定することとを行うように構成されるスケジューラと
を備える、コンピューティングデバイス。
【請求項１４】
クロックがレベル化されたスピードを含む、請求項13に記載のコンピューティングデバイス。
【請求項１５】
前記スケジューラが、前記要求される帯域幅要求の前記和に基づいて、その次に最も高いレベル化されたスピードを前記クロックスピードとして選択することを行うように構成される、請求項14に記載のコンピューティングデバイス。
【請求項１６】
前記要求される帯域幅要求の各々が、一般化されたクロックスピードとしてのものである、請求項13に記載のコンピューティングデバイス。
【請求項１７】
前記一般化されたクロックスピードが、低、中間、または高のうちの少なくとも1つのレベルを含む、請求項16に記載のコンピューティングデバイス。
【請求項１８】
前記スケジューラが、前記要求される一般化されたクロックスピードに基づいて、その次に最も高いレベルの一般化されたクロックスピードをクロックのスピードとして選択することを行うように構成される、請求項17に記載のコンピューティングデバイス。
【請求項１９】
複数の異なる実行環境データオーナからの、要求される帯域幅に対する複数の票を受け取るための手段と、
要求される帯域幅要求を合計するための手段と、
前記要求される帯域幅要求の和に基づいて、暗号プロセッサのクロックスピードを設定するための手段と
を備える、コンピューティングデバイス。
【請求項２０】
クロックがレベル化されたスピードを含む、請求項19に記載のコンピューティングデバイス。
【請求項２１】
前記要求される帯域幅要求の前記和に基づいて、その次に最も高いレベル化されたスピードを前記クロックスピードとして選択するための手段をさらに備える、請求項20に記載のコンピューティングデバイス。
【請求項２２】
前記要求される帯域幅要求の各々が、一般化されたクロックスピードとしてのものである、請求項19に記載のコンピューティングデバイス。
【請求項２３】
前記一般化されたクロックスピードが、低、中間、または高のうちの少なくとも1つのレベルを含む、請求項22に記載のコンピューティングデバイス。
【請求項２４】
前記要求される一般化されたクロックスピードに基づいて、その次に最も高いレベルの一般化されたクロックスピードをクロックのスピードとして選択するための手段をさらに備える、請求項23に記載のコンピューティングデバイス。
【請求項２５】
少なくとも1つの実行環境データオーナから、データを暗号化または解読するコマンドを受信するステップと、
前記データを少なくとも1つの鍵を使用して暗号化または解読するステップであって、前記暗号プロセッサによって前記クロックスピードで実施される、暗号化または解読するステップとをさらにを含む、請求項1に記載の方法。
【国際調査報告】
2017515211.tif 000008
2017515211.tif 000009
2017515211.tif 000010