(57)【要約】  多くの場合に、プロセッサは、周波数を十分に頻繁に変えて、顕著な性能と電力消費損失をもたらしてよい。これらの性能と電力消費損失は、位相ロックループ技術ではなくスカッシング技術を利用して周波数を変えることにより、軽減されてよい。スカッシング技術は、周波数を減らすために、単純に削除されるクロックパルスを含む。場合によっては、これは、より速く行われて小さいオーバーヘッドをもたらすことができる。
2015530661.tif 000002
【特許請求の範囲】
【請求項１】
クロックエッジを潰すことによりプロセッサのクロック周波数を変える段階を備える方法。
【請求項２】
プロセッサがその最小供給電圧で動作しているかどうかを判断する段階と、及び、そうであればクロックエッジを潰す段階と、を備える、請求項１に記載の方法。
【請求項３】
前記プロセッサが電圧スケール領域にある場合、位相ロックループを用いてクロック周波数を変える段階を備える、請求項２に記載の方法。
【請求項４】
所望の周波数を選択する段階と、前記周波数を達成するために少なくとも１つのクロックエッジを潰す段階と、を備える、請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記クロックエッジを徐々に潰すことにより前記周波数を達成する段階を備える、請求項２に記載の方法。
【請求項６】
目標周波数を達成するために幾つのエッジを潰すか判断する段階を備える、請求項２に記載の方法。
【請求項７】
２つのクロックの間の周波数比を調整するために前記潰すことを利用する段階を備える、請求項１から６のいずれか一項に記載の方法。
【請求項８】
コンピュータに、クロックエッジを潰すことによりプロセッサのクロック周波数を変える手順を実行させるプログラム。
【請求項９】
所望の周波数を選択する手順と、前記周波数を達成するために少なくとも１つのクロックエッジを潰す手順と、をさらにコンピュータに実行させる、請求項８に記載のプログラム。
【請求項１０】
複数のクロックエッジを徐々に潰すことにより前記周波数を達成する手順をさらにコンピュータに実行させる、請求項９に記載のプログラム。
【請求項１１】
目標周波数を達成するために幾つのエッジを潰すか判断する手順をさらにコンピュータに実行させる、請求項９または１０に記載のプログラム。
【請求項１２】
２つのクロックの間の周波数比を調整するために前記潰す手順を利用する手順をさらにコンピュータに実行させる、請求項１０に記載のプログラム。
【請求項１３】
前記プロセッサがその最小供給電圧で動作しているかどうかを判断する手順をさらにコンピュータに実行させる、請求項８から１２のいずれか一項に記載のプログラム。
【請求項１４】
前記プロセッサがその最小供給電圧で動作している場合、クロックスカッシングを利用する手順をさらにコンピュータに実行させる、請求項１３に記載のプログラム。
【請求項１５】
前記プロセッサがその最小供給電圧で動作していない場合、クロック周波数を変える位相ロックループを利用する手順をさらにコンピュータに実行させる、請求項１３または１４に記載のプログラム。
【請求項１６】
プロセッサのクロック周波数を変えるコアであり、変えるために前記コアはクロックエッジを潰させる、前記コアと、
前記コアに結合される位相ロックループと、
を備えるプロセッサ。
【請求項１７】
前記コアは、所望の周波数を選択し、前記周波数を達成するために少なくとも１つのクロックエッジを潰す、請求項１６に記載のプロセッサ。
【請求項１８】
前記周波数を達成するために、前記コアは複数のクロックエッジを徐々に潰す、請求項１７に記載のプロセッサ。
【請求項１９】
前記コアは、目標周波数を達成するために幾つのエッジを潰すか判断する、請求項１６から１８のいずれか一項に記載のプロセッサ。
【請求項２０】
前記コアは、システムをチップターボ上に実装する、請求項１６から１９のいずれか一項に記載のプロセッサ。
【請求項２１】
前記コアは、２つのクロックの間の周波数比を調整するために潰す、請求項１６から２０のいずれか一項に記載のプロセッサ。
【請求項２２】
前記コアは、前記プロセッサがその最小供給電圧で動作している場合、クロックスカッシングを利用する、請求項１６から２１のいずれか一項に記載のプロセッサ。
【請求項２３】
前記コアは、前記プロセッサがその最小供給電圧で動作していない場合、クロック周波数を変える前記位相ロックループを利用する、請求項１６から２２のいずれか一項に記載のプロセッサ。
【請求項２４】
プロセッサのクロック周波数を変え、複数のクロックエッジを潰すコアと、前記コアに結合される位相ロックループと、を含むプロセッサと、
前記プロセッサに結合されるディスプレイと、
を備えるシステム。
【請求項２５】
前記プロセッサは、所望の周波数を選択し、前記周波数を達成するために少なくとも１つのクロックエッジを潰す、請求項２４に記載のシステム。
【請求項２６】
前記プロセッサは、前記周波数を達成し、複数のクロックエッジを徐々に潰す、請求項２５に記載のシステム。
【請求項２７】
前記プロセッサは、目標周波数を達成するために幾つのエッジを潰すか判断する、請求項２５または２６に記載のシステム。
【請求項２８】
前記プロセッサは、２つのクロックの間の周波数比を調整するために前記潰すことを利用する、請求項２４から２７のいずれか一項に記載のシステム。
【請求項２９】
前記コアは、前記プロセッサがその最小供給電圧で動作している場合、クロックスカッシングを利用する、請求項２４から２８のいずれか一項に記載のシステム。
【請求項３０】
前記コアは、前記プロセッサがその最小供給電圧で動作していない場合、クロック周波数を変える前記位相ロックループを利用する、請求項２４から２９のいずれか一項に記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
これは、概して、プロセッサに関し、特に、プロセッサの周波数が変化してよいモードを実装するプロセッサに関する。
【０００２】
一般的に、プロセッサは、多数の異なる場合において、それらの動作周波数を変えてよい。例えば、幾つかのプロセッサでは、電力は、プロセッサを含むプラットフォームの異なるコンポーネントの間で共有されてよい。プロセッサの性能条件が下げられると、プロセッサは周波数を下げ、対応する量だけその供給電圧を落とすことにより、より少ない電力を利用することができる。しかし、供給電圧が最小電圧以下に低下した後でも、追加の省電力化が、周波数を下げることを継続することによって実現されてよい。
【０００３】
各時間周波数が変更されると、特定のワークロードは、位相ロックループを新しい周波数にロックさせるために実行を停止される。位相ロックループは、プロセッサによって用いられて、出力クロックを所望の周波数に調整する。位相ロックループのロック時間は、他の複数のハンドシェイクプロトコル及び時間緩和の変化率に対する電流の変化率がそうであるように、オーバーヘッドである。これらのオーバーヘッドは、ロジックの異なるセクションを互い違いにずらしてオンにさせる。
【０００４】
その結果、複数の周波数変化に関連するオーバーヘッドは、相当の時間遅延をもたらしてよい。複数の周波数変化は十分頻繁に生じると、相当の性能オーバーヘッドがあってよい。性能ロスがあるだけでなく、複数のデバイスは、周波数を変えるために用いられる時間の間、電力を消費しているため、電力消費コストも同様にあってよい。
【図面の簡単な説明】
【０００５】
幾つかの実施形態は、以下の図面に関して記載される。
【図１】幾つかの実施形態に係るスカッシング前後の複数のクロックの図である。
【図２】一実施形態に係るスカッシングシーケンスのフローチャートである。
【図３】一実施形態のプロセッサの図である。
【図４】一実施形態のシステム図である。
【図５】一システムの正面図である。
【図６】５：４比率で走る２つのクロック信号の図である。
【図７】異なる比率での複数のクロック信号のシリーズである。
【発明を実施するための形態】
【０００６】
多くの場合に、複数のプロセッサは、周波数を変えて、頻繁に、非最適な性能及び電力消費が発生してよい。これらの性能及び電力消費損失は、位相ロックループ技術を利用するのではなくスカッシング技術を利用して周波数を変えることにより、軽減されてよい。スカッシング技術は、周波数を減らすために、複数のクロックパルスを削除することを含んでよい。場合によっては、これは、より速く行われて小さいオーバーヘッドをもたらすことができる。
【０００７】
本発明の幾つかの実施形態の応用の一例として、ターボの実施形態は、その周波数を定期的に変えるプロセッサを含んでよい。これは、そのプロセッサが他の複数のプラットフォームコンポーネントと電力を共用できるようにする。特に、システムオンチップ（ＳＯＣ）ターボ実装では、周波数変化は、約４０マイクロ秒要する各周波数変化でミリ秒ごとのオーダーで要求されてよい。
【０００８】
周波数スケーリングは、供給電圧Ｖｃｃが既にその最小電圧にある後に要求されてよい。供給電圧がその最小にあると、周波数は、期間にわたって見られるクロックエッジの数を削除することにより減らされることができる。
【０００９】
図１は、ＣＺ、ＧＦｒａｗ、及びＧＳｒａｗという名称のクロックのシリーズを上部に示す。関連するクロックはいずれのクロックであってよいが、幾つかの実施形態において、ＣＺクロックドメインは、１／４のシステムメモリクロックレートで走るために生じるシステムエージェントクロックである。他の一般的及び非一般的なクロックドメインが用いられてよい。ＧＦ及びＧＳクロックは、互いに対してある比率で走るグラフィクスクロックであってよい。例えば、ＧＦ又はグラフィクスファスト及びＧＳ又はグラフィクススロークロックの間の２：１の比率が用いられてよい。ＧＦ及びＧＳは、位相ロックループから生成され、ＣＺは、異なる位相ロックループから生成されてよい。しかし、それらの両方が同じ位相ロックループから来る複数のモードもある。
【００１０】
図１内の左に、潰された又は削除されたパルスのない、非スカッシュ領域としてラベルされ、第１の２つの整列マークによりマーク付けされた領域がある。右には、１又は複数のパルスが削除されてよい、スカッシュ領域とラベルされた領域がある。上の３つの信号には、従って、ＣＺ、ＧＦｒａｗ、及びＧＳｒａｗとラベルされるＧＦ又はＧＳにおいて生じるスカッシングはない。そして、値Ｖａｌ及び値ＮｘｔＶＡＬ（後で説明される）が示される。その仕様は、スカッシュ領域の最後にゼロに行くタイムスロットバリッド（ＴＳＶ）を必要とする。これは、グラフィクススロー（ＧＳ）及びグラフィクスファスト（ＧＦ）クロックの両方において複数のパルスのスカッシング又は削除を生じる。
【００１１】
値ＧＳｒａｗは、走っているクロックであり得る。ＴＳＶアルゴリズムは、この自走クロックＧＳｒａｗを検査し、ＴＳＶとして知られるクロックゲート値を生成する。一実施形態において、ＴＳＶが１に等しい場合、クロックは走ることができ、ＴＳＶがゼロに等しい場合（例えば、スカッシュウィンドウの最後で）、複数のクロックはマスクされる。比率が複数のエンドポイントで維持されると、ＴＳＶアルゴリズムは、ＧＳｒａｗに適用されて、最終ＧＳ及びＧＦクロックの両方をマスクすることができる。
【００１２】
図１において、信号「ＡＬＩＧＮ」上で複数のバーを用いてマーク付けしたように、２つのクロックが整列すると、Window及びAllowは変化できる。マスキングは、ファーストイン、ファーストアウト、又はＢＧＦのいずれのバブル生成器を用いて実装されてよい。スカッシングを実行するためのアルゴリズムは、次の通りであり得る。
Val = Init = -2
lf(Window=Allow)
ClockEn=1
NxtVal = Init
elsif (Val >= 0)
NxtVal = Val - Allow
else
NxtVal = CurrentValue + (Winidow - Allow)
Endif
If (NxtVal < 0) ClockEn=1 else ClockEn=0
【００１３】
図６に示される他の実施例として、２つのクロックは、ＣＺは２００ＭＨｚに等しく、ＧＦは３２０ＭＨｚに等しく、及びＧＳは１６０ＭＨｚに等しい５：４の比率で走っている。４つの目的エッジのうちの１つを潰すことにより、新しい平均実現周波数は、ＣＺは２００ＭＨｚに等しく、ＧＦは２４０ＭＨｚに等しく、ＧＳは１２０ＭＨｚに等しい５：３の比率を有する。
【００１４】
この例は、複数のエッジを潰すことにより実現される８０ＭＨｚのインクリメントを示す。より細かい粒度は、整数値により比率を乗算することにより実現されることができる。例えば、５：４の比率で開始するに代えて、比率は１０：８であってよい。８つの目的エッジのうちの１つを潰すことによって、４０ＭＨｚのインクリメントが実現されてよい。以下は、比率を増大し、比率毎に１つのクロックを削除する機能を有することにより、粒度がどれだけ減らされることができるかを示す。
５：３  ＣＺ＝２００，ＧＦ＝２４０，ＧＳ＝１２０，ＧＦ粒度＝８０ＭＨｚ
１０：７  ＣＺ＝２００，ＧＦ＝２８０，ＧＳ＝１４０，ＧＦ粒度＝４０ＭＨｚ
２０：１５  ＣＺ＝２００，ＧＦ＝３００，ＧＳ＝１５０，ＧＦ粒度＝２０ＭＨｚ
４０：３１  ＣＺ＝２００，ＧＦ＝３１０，ＧＳ＝１５５，ＧＦ粒度＝１０ＭＨｚ
８０：６３  ＣＺ＝２００，ＧＦ＝３１５，ＧＳ＝１５７．５，ＧＦ粒度＝５ＭＨｚ
【００１５】
上の例において、ＣＺが２００ＭＨｚに等しく、比率が５：４であり、その周波数変化がミリ秒毎に一度生じると、比率は２０００対１６００に拡大されることができる。この例では、１／１６００の粒度又は０．０００６２５ＭＨｚが実現されることができる。
【００１６】
図７に含まれる複数の図面は、関連する異なる複数のクロックの決定論的な同期特性が周波数変化を通じて維持されることを示す。ＣＺクロックは、固定周波数で走り続けなければならないクロックである。CFclk_from_PLLは、ＰＬＬによりロジックに配信されているグラフィクスクロックである。ＣＦｃｌｋは、ロジックにより受信されているクロックである。ＧＳｃｌｋは、ロジックにより受信されているクロックである。この例において、ＧＦ＝２＊ＧＳである。ＣＯＭｃｌｋは、各クロックが上がるエッジを共通に有する場合を示す仮想クロックである。ＣＺ＝２００ＭＨｚ、GFclk_from_PLL＝１０００ＭＨｚ、ＧＦｃｌｋ＝１０００ＭＨｚ、ＧＳｃｌｋ＝５００ＭＨｚ、比率＝2:5である。
【００１７】
図２を参照すると、一実施形態に係る複数のスカッシングパルスのシーケンスは、ソフトウェア、ファームウェア、及び／又はハードウェアにおいて実装されてよい。ソフトウェア及びファームウェアの実施形態において、それは、磁気、光、又は半導体ストレージなどの１又は複数の非一時的コンピュータ可読媒体に格納されたコンピュータ実装命令により実装されてよい。例えば、グラフィクスサブシステムは、一実施形態においてシーケンスを実行してよい（図４におけるグラフィクスサブシステム７１５ｃを参照せよ）。
【００１８】
一実施形態において、図２に示されるスカッシングシーケンス１０は、ダイアモンド１２に示されるように、新しいクロック周波数が要求されているかどうか判断することにより始まる。一実施形態において、これは、プロセッサに提供されるクロック信号周波数を減らすことが望まれるターボの実施形態の間に、電力を節約し、電力を他のシステムコンポーネントに利用できるようにするために、生じてよい。必要とされる新しい周波数があると、新しいクロック周波数はブロック１４にて受信されてよい。これは、所望の終了比率を示し、どれだけ細かい複数のステップの粒度がその比率を達成するために用いられてよいかを示してよい。
【００１９】
クロック周波数を変える要望があると、ダイアモンド１６でのチェックは、プロセッサが既にその最小供給電圧で動作しているかどうかを判断する。もしそうであれば、周波数は、クロックスカッシングを利用して変えられてよい。複数のスカッシュ及び複数のステップの粒度は、たとえあるとしても、スカッシュ周波数を達成するために、ブロック１４において受信されてよい。
【００２０】
しかし、プロセッサが既にその最小供給電圧で動作していない、特に、電圧スケール領域において動作していると、周波数は、ブロック２０に示されるように位相ロックループ周波数を変えることによって変えられてよい。従って、幾つかの実施形態において、クロックスカッシングは、プロセッサが既にその最小供給電圧にある場合にのみ用いられ、そうでなければ、従来の周波数変化技術が用いられてよい。しかし、他の実施形態において、クロックスカッシングは他の場合において同様に用いられてよい。
【００２１】
幾つかの実施形態においては、それは、ゼロと同じくらい少ない周波数変化のオーバーヘッドを有してよいので、位相ロックループを変えるのではなく、スカッシングが用いられることができる。加えて、より細かい周波数粒度が実現され、より低い周波数が適用可能となってよい。
【００２２】
もちろん、クロック周波数は、すべて同時にスカッシングを削減する又は削除することにより、又は時間をかけて徐々に増大又は減少することにより、増大されることもできる。
【００２３】
図３を参照すると、一実施形態に係るシステムが示される。幾つかの実施形態において、チップ上のシステムが示されてよい。図３にておいて、マルチコアプロセッサ４００は、コア０  ４０６及びコア１  ４０８を含んでよい。２つのサイト４０２及び４０４は、それぞれ、シングルプロセッサコア４０６又は４０８を含んでよい。他の実施形態において、サイトあたりのコアの数は、１より多くてよい。例えば、他の実施形態において、サイトあたりの２又は４のコアが又はそれ以上あってよい。各サイトは、位相ロックループ（ＰＬＬ）１１６又は１１８を含む。
【００２４】
サイト４０２は、電圧情報信号４１０を電圧レギュレータ４１２に送信することにより、プロセッサに供給される電圧を制御するマスターサイトであってよい。電圧レギュレータ４１２は、電源４１４から電力供給を受け、プロセッサ４１６に特に供給される電圧を調整する。サイト０  ４０２内のロジックは、いつでも新しい複数の電圧情報信号４１０を電圧レギュレータ４１２に送信することにより、供給された電圧４１６を継続して修正することができる。
【００２５】
加えて、システムは、入力／出力複合体４２４を含んでよい。その複合体は、マルチコアプロセッサ４００と、大容量ストレージデバイス４２６（例えば、ハードディスクドライブ）、不揮発性メモリストレージ４２８、及びコンピュータシステムとネットワーク４３２との間のアクセスを提供するネットワークポート４３０などの１又は複数の周辺機器と、の間の通信を制御する１又は複数の集積入力／出力ホストコントローラを有してよい。複数の入力／出力ホストコントローラは、ユニバーサルシリアルバス（ＵＳＢ）インターフェース、ペリフェラルコンポーネントインターコネクト（ＰＣＩ）エクスプレス、又は電気電子学会１３９４ファイヤワイヤインターフェース、または１又は複数の他の入力／出力インターフェースなどの１又は複数の異なる入力／出力インターフェースを利用してよい。
【００２６】
図示されていない多くの実施形態において、グラフィクスプロセッシングユニットは、マルチコアプロセッサ４００に結合されて、又はマルチコアプロセッサ４００に集積されて、ユーザによる情報の閲覧のためのモニタなどのディスプレイデバイスに情報を提供してよい。
【００２７】
図４は、システム７００の実施形態を示す。複数の実施形態において、システム７００は、メディアシステムであってよいが、システム７００はこの文脈に限定されるものではない。例えば、システム７００は、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、携帯電話、携帯電話／ＰＤＡの組み合わせ、テレビ、スマートデバイス（例えば、スマートフォン、スマートタブレット、又はスマートテレビ）、モバイルインターネットデバイス（ＭＩＤ）、メッセージングデバイス、データ通信デバイスなどに組み込まれてよい。
【００２８】
複数の実施形態において、システム７００は、ディスプレイ７２０に結合されたプラットフォーム７０２を備える。プラットフォーム７０２は、コンテンツサービスデバイス７３０又はコンテンツ配信デバイス７４０又は他の同様のコンテンツソースなどのコンテンツデバイスからコンテンツを受信してよい。１又は複数のナビゲーション機能を備えるナビゲーションコントローラ７５０は、例えば、プラットフォーム７０２及び／又はディスプレイ７２０と相互伝達するために用いられてよい。これらのコンポーネントのそれぞれは、後でより詳細に記載される。
【００２９】
複数の実施形態において、プラットフォーム７０２は、チップセット７０５、プロセッサ７１０、メモリ７１２、ストレージ７１４、グラフィクスサブシステム７１５、複数のアプリケーション７１６、全地球測位システム（ＧＰＳ）７２１、カメラ７２３、及び／又は無線７１８のあらゆる組み合わせを備えてよい。チップセット７０５は、プロセッサ７１０、メモリ７１２、ストレージ７１４、グラフィクスサブシステム７１５、複数のアプリケーション７１６、及び／又は無線７１８の間で相互通信を提供してよい。例えば、チップセット７０５は、ストレージ７１４と相互通信を提供可能なストレージアダプタ（不図示）を含んでよい。
【００３０】
加えて、プラットフォーム７０２は、オペレーティングシステム７７０を含んでよい。プロセッサへのインターフェース７７２は、オペレーティングシステムとプロセッサ７１０を接続してよい。
【００３１】
ファームウェア７９０は、ブートシーケンスなどの複数の機能を実装するために提供されてよい。ファームウェアがプラットフォーム７０２外から更新されることができるようにするアップデートモジュールが提供されてよい。例えば、アップデートモジュールは、更新する試みが真正であるかどうか判断し、ファームウェア７９０の最新の更新を特定して、いつ複数の更新が必要となるかの判断を促すコードを含んでよい。
【００３２】
幾つかの実施形態において、プラットフォーム７０２は、外部電源により電源供給されてよい。場合によっては、プラットフォーム７０２は、外部電源に適応しない複数の実施形態において、又はバッテリ供給電力又は外部供給電力のいずれかを許可する複数の実施形態において、電源として振る舞う内部バッテリ７８０を含んでもよい。
【００３３】
図２に示されるシーケンスは、幾つか例を言及する、ストレージ７１４内に、又はプロセッサ７１０又はグラフィクスサブシステム７１５内のメモリ内にそれらを組み込むことにより、ソフトウェア及びファームウェアの実施形態において、実装されてよい。一実施形態において、グラフィクスサブシステム７１５は、グラフィクスプロセッシングユニットを含んでよく、プロセッサ７１０は、中央処理装置であってよい。
【００３４】
プロセッサ７１０は、複合命令セットコンピュータ（ＣＩＳＣ）又は縮小命令セットコンピュータ（ＲＩＳＣ）プロセッサ、ｘ８６命令セット互換プロセッサ、マルチコア、又はあらゆる他のマイクロプロセッサ又は中央処理装置（ＣＰＵ）として実装されてよい。複数の実施形態において、プロセッサ７１０は、デュアルコアプロセッサ、デュアルコアモバイルプロセッサなどを備えてよい。
【００３５】
メモリ７１２は、限定されるものではないが、ランダムアクセスメモリ（ＲＡＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、又はスタティックＲＡＭ（ＳＲＡＭ）などの揮発性メモリデバイスとして実装されてよい。
【００３６】
ストレージ７１４は、限定されるものではないが、磁気ディスクドライブ、光ディスクドライブ、テープドライブ、内部ストレージデバイス、取り付けストレージデバイス、フラッシュメモリ、バッテリバックアップＳＤＲＡＭ（シンクロナスＤＲＡＭ）、及び／又はネットワークアクセス可能ストレージデバイスなどの不揮発性記憶デバイスとして実装されてよい。複数の実施形態において、ストレージ７１４は、例えば、複数のハードドライブが含まれる場合、貴重なデジタルメディアに対する記憶性能強化保護を高める技術を備えてよい。
【００３７】
グラフィクスサブシステム７１５は、表示のための静止画又は動画などの複数のイメージの処理を実行してよい。グラフィクスサブシステム７１５は、例えば、グラフィクスプロセッシングユニット（ＧＰＵ）又はビジュアルプロセッシングユニット（ＶＰＵ）であってよい。アナログ又はデジタルインターフェースは、グラフィクスサブシステム７１５及びディスプレイ７２０と通信可能に接続するために用いられてよい。例えば、インターフェースは、高解像度マルチメディアインターフェース、ＤｉｓｐｌａｙＰｏｒｔ、無線ＨＤＭＩ（登録商標），及び／又は無線ＨＤ準拠技術のいずれであってよい。グラフィクスサブシステム７１５は、プロセッサ７１０又はチップセット７０５に集積されることができた。グラフィクスサブシステム７１５は、チップセット７０５に通信可能に結合されるスタンドアローンカードであり得た。
【００３８】
ここに記載されるグラフィクス及び／又はビデオ処理技術は、様々なハードウェアアーキテクチャにおいて実装されてよい。例えば、グラフィクス及び／又は動画機能は、チップセット内に集積されてよい。代替的に、別個のグラフィクス及び／又はビデオプロセッサが用いられてよい。さらに他の実施形態として、グラフィクス及び／又はビデオ機能は、マルチコアプロセッサを含む一般的な汎用プロセッサにより実装されてよい。さらなる実施形態では、複数の機能は、家電機器において実装されてよい。
【００３９】
無線７１８は、様々な適当な無線通信技術を用いて複数の信号を送受信可能な１又は複数の無線を含んでよい。そのような技術は、１又は複数の無線ネットワークを介した通信を含んでよい。例示的な無線ネットワークは、これに限定されるものではないが、無線ローカルエリアネットワーク（ＷＬＡＮ）、無線パーソナルエリアネットワーク（ＷＰＡＮ）、ワイヤレス大都市圏ネットワーク（ＷＭＡＮ）、セルラーネットワーク、及び衛星ネットワークを含む。そのようなネットワークを介した通信において、無線７１８は、いずれバージョンにおける１又は複数の適用可能な規格に従って動作してよい。
【００４０】
複数の実施形態において、ディスプレイ７２０は、いずれのテレビ型モニタ又はディスプレイを備えてよい。ディスプレイ７２０は、例えば、コンピュータディスプレイスクリーン、タッチスクリーンディスプレイ、ビデオモニタ、テレビのようなデバイス、及び／又はテレビを備えてよい。ディスプレイ７２０は、デジタル及び／又はアナログであってよい。複数の実施形態において、ディスプレイ７２０は、ホログラフィックディスプレイであってよい。また、ディスプレイ７２０は、視覚投影を受信してよい透明な面であってよい。そのような投影は、情報、イメージ、及び／又はオブジェクトの様々な形式を伝えてよい。例えば、そのような投影は、モバイル拡張リアリティ（ＭＡＲ）アプリケーションの視覚的オーバーレイであってよい。１又は複数のソフトウェアアプリケーション７１６の制御の下で、プラットフォーム７０２は、ディスプレイ７２０上にユーザインタフェース７２２を表示してよい。
【００４１】
複数の実施形態において、コンテンツサービスデバイス７３０は、いずれの国内、国際、及び／又は独立のサービスによりホストされてよく、それにより、例えばインターネットを介してプラットフォーム７０２にアクセス可能であってよい。コンテンツサービスデバイス７３０は、プラットフォーム７０２に及び／又はディスプレイ７２０に結合されてよい。プラットフォーム７０２及び／又はコンテンツサービスデバイス７３０は、ネットワーク７６０に結合されて、ネットワーク７６０へ及びからメディア情報を通信（例えば、送信及び／又は受信）してよい。コンテンツ配信デバイス７４０は、プラットフォーム７０２に及び／又はディスプレイ７２０に結合されてもよい。
【００４２】
複数の実施形態において、コンテンツサービスデバイス７３０は、ケーブルテレビボックス、パーソナルコンピュータ、ネットワーク、電話、インターネット対応デバイス又はデジタル情報及び／又はコンテンツを配信可能な機器、及びネットワーク７６０を介して又は直接、複数のコンテンツプロバイダ及びプラットフォーム７０２及びディスプレイ７２０の間で一方向又は双方向にコンテンツを通信可能なあらゆる他の同様のデバイスを備えてよい。コンテンツは、ネットワーク７６０を介して、システム７００の複数のコンポーネント及びコンテンツプロバイダのいずれか１つへ及びから一方向及び／又は双方向に通信されてよいことを理解されよう。コンテンツの例は、例えば、ビデオ、音楽、医療及びゲーム情報などを含むあらゆるメディア情報を含んでよい。
【００４３】
コンテンツサービスデバイス７３０は、メディア情報、デジタル情報、及び／又は他のコンテンツを含むケーブルテレビプログラムなどのコンテンツを受信する。コンテンツプロバイダの例は、ケーブル又は衛星テレビ又は無線又はインターネットコンテンツプロバイダのいずれを含んでよい。提供された例は、本発明の実施形態を限定するものではない。
【００４４】
複数の実施形態において、プラットフォーム７０２は、１又は複数のナビゲーション機能を有するナビゲーションコントローラ７５０から複数の制御信号を受信してよい。コントローラ７５０の複数のナビゲーション機能は、例えば、ユーザインタフェース７２２と相互伝達するために用いられてよい。複数の実施形態において、ナビゲーションコントローラ７５０は、ユーザに空間（例えば、連続及び多次元）データをコンピュータに入力させるコンピュータハードウェア構成要素（特に、ヒューマンインターフェースデバイス）であってよいポインティングデバイスであってよい。グラフィカルユーザインタフェース（ＧＵＩ）、及びテレビ及びモニタなどの多くのシステムは、ユーザに、身体的なジェスチャを利用して、コンピュータ又はテレビを制御させ、それらにデータを提供させる。
【００４５】
コントローラ７５０の複数のナビゲーション機能の移動は、ポインタ、カーソル、フォーカスリング、又はディスプレイ上に表示される他の視覚的インジケータの移動により、ディスプレイ（例えば、ディスプレイ７２０）に写されてよい。例えば、ソフトウェアアプリケーション７１６の制御の下で、ナビゲーションコントローラ７５０上に配置される複数のナビゲーション機能は、例えば、ユーザインタフェース７２２上に表示される複数の仮想的ナビゲーション機能にマッピングされてよい。複数の実施形態において、コントローラ７５０は、別個のコンポーネントではなく、プラットフォーム７０２及び／又はディスプレイ７２０に集積されてよい。しかし、実施形態は、ここに示された又は記載された構成要素に又は文脈において限定されない。
【００４６】
複数の実施形態において、複数のドライバ（不図示）は、複数のユーザに、例えばイネーブルされると、初期ブートアップの後、ボタンのタッチによりテレビのようなプラットフォーム７０２を即座にターンオン及びオフさせることができるようにする技術を備えてよい。プログラムロジックは、プラットフォーム７０２に、プラットフォームがターンオフされると、コンテンツを複数のメディアアダプタ又は他のコンテンツサービスデバイス７３０又はコンテンツ配信デバイス７４０にストリームさせてよい。加えて、チップセット７０５は、例えば、５．１サラウンドサウンドオーディオ及び／又は高解像度７．１サラウンドサウンドオーディオのハードウェア及び／又はソフトウェアサポートを備えてよい。複数のドライバは、複数の集積グラフィクスプラットフォームのグラフィクスドライバを含んでよい。複数の実施形態において、グラフィクスドライバは、ペリフェラルコンポーネントインターコネクト（ＰＣＩ）エクスプレスグラフィクスカードを備えてよい。
【００４７】
様々な実施形態において、システム７００に示されるコンポーネントのいずれか１つ又は複数は集積されてよい。例えば、プラットフォーム７０２及びコンテンツサービスデバイス７３０が集積され、又はプラットフォーム７０２及びコンテンツ配信デバイス７４０が集積され、又はプラットフォーム７０２、コンテンツサービスデバイス７３０、及びコンテンツ配信デバイス７４０が集積されてよい。様々な実施形態において、プラットフォーム７０２及びディスプレイ７２０は集積ユニットであってよい。例えば、ディスプレイ７２０及びコンテンツサービスデバイス７３０が集積され、又はディスプレイ７２０及びコンテンツ配信デバイス７４０が集積されてよい。これらの例は、本発明を限定するものではない。
【００４８】
様々な実施形態において、システム７００は、無線システム、有線システム、又は両方の組み合わせとして実装されてよい。無線システムとして実装される場合、システム７００は、１又は複数のアンテナ、複数の送信機、複数の受信機、複数のトランシーバ、複数の増幅器、複数のフィルタ、制御ロジックなどのような無線共有メディアを介しての通信に適当な複数のコンポーネント及び複数のインターフェースを含んでよい。無線共有メディアの一例は、ＲＦスペクトルなどのような無線スペクトルの一部を含んでよい。有線システムとして実装される場合、システム７００は、複数の入力／出力（Ｉ／Ｏ）アダプタ、Ｉ／Ｏアダプタを対応する有線通信媒体に接続する複数の物理コネクタ、複数のネットワークインタフェースカード（ＮＩＣ）、ディスクコントローラ、ビデオコントローラ、オーディオコントローラなどのような有線通信媒体を介しての通信に適当な複数のコンポーネント及び複数のインターフェースを含んでよい。有線通信媒体の例は、ワイヤ、ケーブル、金属リード、プリント回路基板（ＰＣＢ）、バックプレーン、スイッチファブリック、半導体材料、ツイストペアワイヤ、同軸ケーブル、光ファイバなどを含んでよい。
【００４９】
プラットフォーム７０２は、１又は複数の論理チャネル又は物理チャネルを情報を通信するよう確立してよい。情報は、メディア情報及び制御情報を含んでよい。メディア情報は、ユーザ向けのコンテンツを表すいずれのデータを指してよい。コンテンツの例は、例えば、音声会話、ビデオ会議、ストリーミングビデオ、電子メール（「Ｅメール」）メッセージ、音声メールメッセージ、複数の英数字シンボル、グラフィクス、イメージ、ビデオ、テキストなどからのデータを含んでよい。音声会話からのデータは、例えば、音声情報、複数の沈黙時間、バックグラウンドノイズ、コンフォートノイズ、複数のトーンなどであってよい。制御情報は、自動システム向けの複数のコマンド、複数の命令、又は複数の制御単語を表すあらゆるデータを指してよい。例えば、制御情報は、メディア情報をシステムを通じて送る、又はノードに予め定められやり方でメディア情報を処理するよう命令するために用いられてよい。しかし、実施形態は、図４に示された又は記載された構成要素に又は文脈に限定されるものではない。
【００５０】
上述のように、システム７００は、複数の物理スタイル又は複数のフォームファクタを変えることで具現化されてよい。図４は、システム７００が具現化されてよい小さいフォームファクタのデバイス８００の実施形態を示す。複数の実施形態において、例えば、デバイス８００は、複数の無線機能を有するモバイルコンピューティングデバイスとして実装されてよい。モバイルコンピューティングデバイスは、例えば、プロセッシングシステム及び１又は複数のバッテリなどの携帯電源又はサプライを有するいずれのデバイスを指してよい。
【００５１】
上述のように、モバイルコンピューティングデバイスの例は、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、携帯電話、携帯電話／ＰＤＡの組み合わせ、テレビ、スマートデバイス（例えば、スマートフォン、スマートタブレット、又はスマートテレビ）、モバイルインターネットデバイス（ＭＩＤ）、メッセージングデバイス、データ通信デバイスなどを含んでよい。
【００５２】
モバイルコンピューティングデバイスの例は、リストコンピュータ、フィンガコンピュータ、リングコンピュータ、眼鏡コンピュータ、ベルトクリップコンピュータ、アームバンドコンピュータ、複数のシューズコンピュータ、複数の衣類コンピュータ、および他の複数のウェアラブルコンピュータなどの人により着用されるよう構成される複数のコンピュータを含んでよい。複数の実施形態において、例えば、モバイルコンピューティングデバイスは、複数のコンピュータアプリケーション、同様に複数の音声通信及び／又は複数のデータ通信を実行可能なスマートフォンとして実装されてよい。幾つかの実施形態は例としてスマートフォンとして実装されるモバイルコンピューティングデバイスを用いて説明されてよいが、他の複数の実施形態は同様に他の複数の無線モバイルコンピューティングデバイスを用いて実装されてよいことを理解されよう。実施形態は、この文脈に限定されるものではない。
【００５３】
図５に示されるように、デバイス８００は、ハウジング８０２、ディスプレイ８０４、入力／出力（Ｉ／Ｏ）デバイス８０６、及びアンテナ８０８を備えてよい。デバイス８００も、ナビゲーション機能８１２を備えてよい。ディスプレイ８０４は、モバイルコンピューティングデバイスに適切な情報を表示するためのいずれの適当なディスプレイユニットを備えてよい。Ｉ／Ｏデバイス８０６は、情報をモバイルコンピューティングデバイスに入れるためのいずれの適当なＩ／Ｏデバイスを備えてよい。Ｉ／Ｏデバイス８０６の例は、英数字キーボード、テンキーパッド、タッチパッド、複数のインプットキー、複数のボタン、複数のスイッチ、複数のロッカースイッチ、複数のマイク、複数のスピーカ、音声認識デバイス、及びソフトウェアなどを含んでよい。情報も、マイクを用いてデバイス８００に入力されてよい。そのような情報は、音声認識デバイスによりデジタル化されてよい。実施形態は、この文脈に限定されるものではない。
【００５４】
様々な実施形態は、ハードウェア要素、ソフトウェア要素、又は両方の組み合わせを用いて実装されてよい。ハードウェア要素の例は、複数のプロセッサ、複数のマイクロプロセッサ、複数の回路、複数の回路素子（例えば、複数のトランジスタ、複数のレジスタ、複数のキャパシタ、複数のインダクタなど）、複数の集積回路、複数の特定用途向け集積回路（ＡＳＩＣ）、複数のプログラム式論理デバイス（ＰＬＤ）、複数のデジタルシグナルプロセッサ（ＤＳＰ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、複数の論理ゲート、複数のレジスタ、半導体デバイス、複数のチップ、複数のマイクロチップ、複数のチップセットなどを含んでよい。ソフトウェアの例、複数のソフトウェアコンポーネント、複数のプログラム、複数のアプリケーション、複数のコンピュータプログラム、複数のアプリケーションプログラム、複数のシステムプログラム、複数の機械プログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、複数のソフトウェアモジュール、複数のルーチン、複数のサブルーチン、複数の関数、複数のメソッド、複数のプロシージャ、複数のソフトウェアインターフェース、複数のアプリケーション・プログラム・インターフェース（ＡＰＩ）、複数の命令セット、演算コード、コンピュータコード、複数のコードセグメント、複数のコンピュータ・コード・セグメント、複数の単語、複数の値、複数のシンボル、又はそれらのいずれの組み合わせを含んでよい。実施形態が複数のハードウェア要素及び／又は複数のソフトウェア要素を用いて実装されるかどうかの判断は、望ましい演算レート、複数のパワーレベル、複数の耐熱性、処理サイクルバジェット、複数の入力データレート、複数の出力データレート、複数のメモリリソース、複数のデータバススピード、及び他の設計又は複数の性能制約などの任意の数の要因に応じて変わってよい。
【００５５】
少なくとも１つの実施形態の１又は複数の態様は、プロセッサ内の様々なロジックを表す機械可読媒体上に格納された典型的な複数の命令により実装されてよい。プロセッサは、機械により読み取られると、機械に、ここに記載された複数の技術を実行するロジックを組み立てさせる。「ＩＰコア」として知られるそのような表現は、有形の機械可読媒体上に格納されてよく、様々な顧客又は製造設備に供給されて、実際にロジック又はプロセッサを製造する複数の製造機械に積み込まれてよい。
【００５６】
様々な実施形態は、ハードウェア要素、ソフトウェア要素、又は両方の組み合わせを用いて実装されてよい。ハードウェア要素の例は、複数のプロセッサ、複数のマイクロプロセッサ、複数の回路、複数の回路素子（例えば、複数のトランジスタ、複数のレジスタ、複数のキャパシタ、複数のインダクタなど）、複数の集積回路、複数の特定用途向け集積回路（ＡＳＩＣ）、複数のプログラム式論理デバイス（ＰＬＤ）、複数のデジタルシグナルプロセッサ（ＤＳＰ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、複数の論理ゲート、複数のレジスタ、半導体デバイス、複数のチップ、複数のマイクロチップ、複数のチップセットなどを含んでよい。ソフトウェアの例は、複数のソフトウェアコンポーネント、複数のプログラム、複数のアプリケーション、複数のコンピュータプログラム、複数のアプリケーションプログラム、複数のシステムプログラム、複数の機械プログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、複数のソフトウェアモジュール、複数のルーチン、複数のサブルーチン、複数の関数、複数のメソッド、複数のプロシージャ、複数のソフトウェアインターフェース、複数のアプリケーション・プログラム・インターフェース（ＡＰＩ）、複数の命令セット、演算コード、コンピュータコード、複数のコードセグメント、複数のコンピュータ・コード・セグメント、複数のワード、複数の値、複数のシンボル、又はそれらのいずれの組み合わせを含んでよい。実施形態が複数のハードウェア要素及び／又は複数のソフトウェア要素を用いて実装されるかどうかの判断は、望ましい演算レート、複数のパワーレベル、複数の耐熱性、処理サイクルバジェット、複数の入力データレート、複数の出力データレート、複数のメモリリソース、複数のデータバススピード、及び他の設計又は複数の性能制約などの任意の数の要因に応じて変わってよい。
【００５７】
少なくとも１つの実施形態の１又は複数の態様は、プロセッサ内の様々なロジックを表す機械可読媒体上に格納された典型的な複数の命令により実装されてよい。プロセッサは、機械により読み取られると、機械に、ここに記載された複数の技術を実行するロジックを組み立てさせる。「ＩＰコア」として知られるそのような表現は、有形の機械可読媒体上に格納されてよく、様々な顧客又は製造設備に供給されて、実際にロジック又はプロセッサを製造する複数の製造機械に積み込まれてよい。
【００５８】
ここに記載される複数のグラフィクスプロセッシング技術は、様々なハードウェアアーキテクチャにおいて実装されてよい。例えば、グラフィクス機能はチップセット内に集積されてよい。代替的に、別個のグラフィクスプロセッサが用いられてよい。さらに他の実施形態として、複数のグラフィクス機能は、マルチコアプロセッサを含む一般的な汎用プロセッサにより実装されてよい。
【００５９】
以下の節及び／又は例は、さらなる実施形態に関係する。例示的な一実施形態は、クロックエッジを潰すことによりプロセッサのクロック周波数を変える方法であってよい。方法は、所望の周波数を選択する段階と、周波数を達成するために少なくとも１つのクロックエッジを潰す段階と、を含んでよい。方法は、複数のクロックエッジを徐々に潰すことにより周波数を達成する段階を含んでもよい。方法は、目標周波数を達成するために幾つのエッジを潰すか判断する段階を含んでもよい。方法は、システムをチップターボ上に実装する段階を含んでもよい。方法は、２つのクロックの間の周波数比を調整するために潰すことを利用する段階を含んでもよい。他の例示的な実施形態は、クロックエッジを潰すことによりプロセッサのクロック周波数を変える複数の命令を格納する少なくとも１つの非一時的コンピュータ可読媒体を含んでよい。媒体は、所望の周波数を選択し、周波数を達成するために少なくとも１つのクロックエッジを潰す複数の命令を格納してもよい。媒体は、複数のクロックエッジを徐々に潰すことにより周波数を達成する複数の命令を格納してもよい。媒体は、目標周波数を達成するために幾つのエッジを潰すか判断する複数の命令を格納してもよい。媒体は、システムをチップターボ上に実装する複数の命令を格納してもよい。媒体は、２つのクロックの間の周波数比を調整するために潰すことを利用する複数の命令を格納してもよい。他の例示的な実施形態は、クロックエッジを潰すことによりプロセッサのクロック周波数を変えるコアと、コアに結合される位相ロックループと、を備えるプロセッサを含んでよい。プロセッサは、所望の周波数を選択し、周波数を達成するために少なくとも１つのクロックエッジを潰すコアを含んでよい。プロセッサは、複数のクロックエッジを徐々に潰すことにより、周波数を達成するコアを含んでもよい。プロセッサは、目標周波数を達成するために幾つのエッジを潰すか判断するコアを含んでもよい。プロセッサは、システムをチップターボ上に実装するコアを含んでもよい。プロセッサは、２つのクロックの間の周波数比を調整するために潰すことを利用するコアを含んでもよい。さらに他の例示的な実施形態は、複数のクロックエッジを潰すことによりプロセッサのクロック周波数を変えるコアと、コアに結合される位相ロックループと、を含むプロセッサと、プロセッサに結合されるメモリと、を備えてよい。システムは、所望の周波数を選択し、周波数を達成するために少なくとも１つのクロックエッジを潰すプロセッサを含んでもよい。システムは、複数のクロックエッジを徐々に潰すことにより、周波数を達成するプロセッサを含んでもよい。システムは、目標周波数を達成するために幾つのエッジを潰すか判断するプロセッサを含んでもよい。システムは、システムをチップターボ上に実装するプロセッサを含んでもよい。システムは、２つのクロックの間の周波数比を調整するために潰すことを利用するプロセッサを含んでもよい。システムは、オペレーティングシステム、バッテリ及びファームウェア、及びファームウェアを更新するモジュールを含んでもよい。
【００６０】
この明細書を通して「一実施形態」又は「実施形態」への参照は、実施形態に関連して説明した特定の特徴、構造、又は特性が、本発明内に包含される少なくとも１つの実施形態に含まれることを意味する。従って、「一実施形態」又は「実施形態において」という文言の出現は、必ずしも同じ実施形態を指すものではない。さらに、特定の特徴、構造、または特性は、示される特定の実施形態より他の適当な形態において設けられてよいし、すべてのそのような形態は、本出願の特許請求の範囲の範囲内に包含されてよい。
【００６１】
本発明は、限られた数の実施形態に関して説明されたが、当業者は、そこから多数の変更及び変形を理解するであろう。添付の特許請求の範囲は、本発明の真の精神及び範囲内に含まれるような全ての変更及び変形を包含することが意図される。
【図１】
2015530661.tif 000003
【図２】
2015530661.tif 000004
【図３】
2015530661.tif 000005
【図４】
2015530661.tif 000006
【図５】
2015530661.tif 000007
【図６】
2015530661.tif 000008
【図７】
2015530661.tif 000009
【国際調査報告】
2015530661.tif 000010
2015530661.tif 000011
2015530661.tif 000012