(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】特表2021-528711(P2021-528711A)
(43)【公表日】2021年10月21日
(54)【発明の名称】基準クロック信号のオンチップ生成のための装置、方法、及びシステム
(51)【国際特許分類】
G06F 1/04 20060101AFI20210924BHJP
【FI】
G06F1/04 550
【審査請求】未請求
【予備審査請求】未請求
【全頁数】30
(21)【出願番号】特願2020-549035(P2020-549035)
(86)(22)【出願日】2019年5月28日
(85)【翻訳文提出日】2020年9月14日
(86)【国際出願番号】US2019034099
(87)【国際公開番号】WO2020005432
(87)【国際公開日】20200102
(31)【優先権主張番号】16/019,924
(32)【優先日】2018年6月27日
(33)【優先権主張国】US
(81)【指定国】
AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,ST,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DJ,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IR,IS,JO,JP,KE,KG,KH,KN,KP,KR,KW,KZ,LA,LC,LK,LR,LS,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
(71)【出願人】
【識別番号】593096712
【氏名又は名称】インテル コーポレイション
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】クルド,ナーセル
(72)【発明者】
【氏名】ラグランド,ダニエル
(72)【発明者】
【氏名】アンバルデカール,アメヤ
(72)【発明者】
【氏名】フォーリン,ジョン
(72)【発明者】
【氏名】モサリカンティ,プラヴィーン
(72)【発明者】
【氏名】グロスニクル,ヴォーン ジェイ.
(57)【要約】
集積回路(IC)チップがICチップの1つ又は複数のリソースによって使用されるクロック信号を生成するための技術及びメカニズムを提供する。一実施形態では、クロック信号は、外部ソースによってICチップに供給される周期的信号に基づいて、ICチップの位相ロックループ(PLL)回路で生成される。PLL回路に供給される供給電圧は、要求されるクロック信号の周波数、受信した周期的信号の周波数、又はPLL回路の電圧制御発振器によって使用される制御信号の電圧のうちの1つに基づいて自動的に更新される。別の実施形態では、クロック信号の周波数に対する一連のインクリメンタル式変更は、予め規定されたオーバークロック方式又はアンダークロック方式に従って自動的に実行される。
【特許請求の範囲】
【請求項1】
クロック信号を供給するための集積回路(IC)チップであって、当該ICチップは、
周期的信号及び供給電圧を受け取る位相ロックループ(PLL)回路であって、前記周期的信号と前記供給電圧との両方に基づいてクロック信号をさらに生成するPLL回路と、
該PLL回路に結合された第1の回路であって、該第1の回路は、前記クロック信号で供給すべき要求される周波数、前記周期的信号の周波数、又は前記PLL回路における制御電圧のレベルのうちの1つの評価を行い、さらに、該評価に基づいて制御信号を自動的に生成し、該制御信号は、前記供給電圧のレベルを自動的に変更するための信号である、第1の回路と、を含む、
ICチップ。
【請求項2】
前記周期的信号は、外部ソースから前記ICチップに供給されるアナログ信号である、請求項1に記載のICチップ。
【請求項3】
前記評価を行う前記第1の回路は、前記要求される周波数が前記クロック信号の閾値周波数よりも高いことを検出する第1の回路を含み、前記制御信号は、前記供給電圧の前記レベルを自動的に上げるための信号である、請求項1又は2に記載のICチップ。
【請求項4】
前記PLL回路は、前記要求される周波数に従って前記供給電圧の前記レベルを自動的に上げた後に、前記クロック信号の周波数をさらに増大させる、請求項3に記載のICチップ。
【請求項5】
前記評価を行う前記第1の回路は、前記周期的信号の前記周波数が前記周期的信号の閾値周波数未満であることを検出する第1の回路を含み、前記制御信号は、前記供給電圧の前記レベルを自動的に下げるための信号である、請求項1乃至3のいずれか一項に記載のICチップ。
【請求項6】
前記評価を行う前記第1の回路は、前記PLL回路における前記制御電圧が該制御電圧の閾値レベルより高いことを検出する第1の回路を含み、前記制御信号は、前記供給電圧の前記レベルを自動的に上げるための信号である、請求項1乃至3のいずれか一項に記載のICチップ。
【請求項7】
前記第1の回路は、さらに、オーバークロック方式の1つ又は複数のパラメータにアクセスし、該1つ又は複数のパラメータに基づいて、前記PLL回路に信号を送って、前記クロック信号の周波数に対する一連のインクリメンタル式増大を行う、請求項1乃至3のいずれか一項に記載のICチップ。
【請求項8】
前記1つ又は複数のパラメータは、
インクリメンタル式周波数増大の大きさ、
前記インクリメンタル式周波数増大の持続時間、又は
前記クロック信号の最終的な目標周波数のうちの1つを指定する、請求項7に記載のICチップ。
【請求項9】
前記制御信号は、前記クロック信号の前記周波数に対する前記一連のインクリメンタル式増大の間に、前記供給電圧の前記レベルを自動的に上げるための信号である、請求項7に記載のICチップ。
【請求項10】
前記PLL回路は第1のPLL回路であり、前記第1の回路は第1の制御回路であり、当該ICチップは、
前記第1のPLL回路から前記クロック信号を受信し、該クロック信号に基づいて第2のクロック信号を生成する第2のPLL回路と、
該第2のPLL回路に結合された第2の制御回路であって、前記クロック信号の前記周波数に対する前記一連のインクリメンタル式増大の間に、前記第2のPLL回路に信号を送って、前記第2のクロック信号の周波数に対する一連のインクリメンタル式変更を行う第2の制御回路と、をさらに含む、請求項7に記載のICチップ。
【請求項11】
クロック信号を供給するための集積回路(IC)チップであって、当該ICチップは、
周期的信号を受信するように結合された第1の回路と、
該第1の回路の位相ロックループ(PLL)回路に供給電圧を供給するように結合された第2の回路であって、前記PLL回路は、前記周期的信号と前記供給電圧との両方に基づいてクロック信号を生成するための回路である、第2の回路と、
プロセッサのために(on behalf of)要求される周波数、前記周期的信号の周波数、又は前記PLL回路における制御電圧のレベルのうちの1つの評価を、予め規定された閾値レベルに基づいて行い、前記評価に基づいた制御信号を前記第2の回路に自動的に供給するための第3の回路と、を含み、
前記制御信号に応答して、前記第2の回路は、前記供給電圧のレベルを自動的に変更する、
ICチップ。
【請求項12】
前記周期的信号は、外部ソースから前記ICチップに供給されるアナログ信号である、請求項11に記載のICチップ。
【請求項13】
前記評価を行う前記第3の回路は、前記プロセッサのために要求される前記周波数が前記クロック信号の予め規定された閾値周波数よりも高いことを検出する第3の回路を含み、前記第2の回路は、前記制御信号に応答して前記供給電圧のレベルを自動的に上げるための回路であり、前記予め規定された閾値周波数は前記供給電圧の現在のレベルに対応する、請求項11又は12に記載のICチップ。
【請求項14】
前記評価を行う前記第3の回路は、前記周期的信号の前記周波数が前記周期的信号の予め規定された閾値周波数未満であることを検出する第3の回路を含み、前記第2の回路は、前記制御信号に応答して前記供給電圧の前記レベルを自動的に下げるための回路であり、前記予め規定された閾値周波数は、前記クロック信号の現在の周波数に対応する、請求項11乃至13のいずれか一項に記載のICチップ。
【請求項15】
前記評価を行う前記第3の回路は、前記PLL回路における前記制御電圧が該制御電圧の予め規定された閾値レベルよりも高いことを検出する第3の回路を含み、前記第2の回路は、前記制御信号に応答して前記供給電圧の前記レベルを自動的に上げるための回路であり、前記予め規定された閾値レベルは、前記供給電圧の現在のレベルに対応する、請求項11乃至13のいずれか一項に記載のICチップ。
【請求項16】
前記第3の回路は、パラメータの閾値レベルに対応する予め規定された基準情報にさらに基づいて前記評価を行い、各閾値レベルが異なるそれぞれの前記供給電圧のレベルを有しており、前記パラメータは、要求されるクロック周波数パラメータ、周期的信号周波数パラメータ、又は制御電圧レベルパラメータのうちの1つを含む、請求項11乃至13のいずれか一項に記載のICチップ。
【請求項17】
前記第3の回路は、さらに、オーバークロック方式の1つ又は複数のパラメータにアクセスし、前記1つ又は複数のパラメータに基づいて、前記第1の回路に信号を送って、前記クロック信号の周波数に対する一連のインクリメンタル式増大を行い、前記第2の回路は、前記クロック信号の前記周波数に対する前記一連のインクリメンタル式増大の間に、前記供給電圧の前記レベルを自動的に上げるための回路である、請求項11乃至13のいずれか一項に記載のICチップ。
【請求項18】
クロック信号を供給するシステムであって、当該システムは、
第1の集積回路(IC)チップであって、
周期的信号を受信するように結合された第1の回路と、
該第1の回路の位相ロックループ(PLL)回路に供給電圧を供給するように結合された第2の回路であって、前記PLL回路は、前記周期的信号と前記供給電圧との両方に基づいてクロック信号を生成する、第2の回路と、
プロセッサのために要求される周波数、前記周期的信号の周波数、又は前記PLL回路における制御電圧のレベルのうちの1つの評価を、予め規定された閾値レベルに基づいて行い、前記評価に基づく制御信号を前記第2の回路に自動的に供給する第3の回路と、を含み、前記制御信号に応答して、前記第2の回路は、前記供給電圧のレベルを自動的に変更する、第1のICチップと、
該第1のICチップに前記周期的信号を供給するように結合された第2のICチップと、
前記第1のICチップに結合された表示装置であって、前記クロック信号を使用して通信された信号に基づいて表示を生成する表示装置と、を有する、
システム。
【請求項19】
前記第3の回路は、さらに、オーバークロック方式の1つ又は複数のパラメータにアクセスし、該1つ又は複数のパラメータに基づいて、前記第1の回路に信号を送って、前記クロック信号の周波数に対する一連のインクリメンタル式増大を行い、前記第2の回路は、前記クロック信号の前記周波数に対する前記一連のインクリメンタル式増大の間に、前記供給電圧の前記レベルを自動的に上げるための回路である、請求項18に記載のシステム。
【請求項20】
前記第1の回路は第1の基準クロック生成回路であり、前記第3の回路は第1の制御回路であり、前記第1のICチップは、
前記第1の基準クロック生成回路から前記クロック信号を受信し、該クロック信号に基づいて第2のクロック信号を生成する第2の基準クロック生成回路と、
該第2の基準クロック生成回路に結合された第2の制御回路であって、前記クロック信号の前記周波数に対する前記一連のインクリメンタル式増大の間に、前記第2の基準クロック生成回路に信号を送って、前記第2のクロック信号の周波数に対する一連のインクリメンタル式変更を行う第2の制御回路と、をさらに含む、請求項19に記載のシステム。
【請求項21】
クロック信号を供給する方法であって、当該方法は、
集積回路(IC)チップの第1の回路に周期的信号を供給するステップと、
前記第1の回路の位相ロックループ(PLL)回路を用いて、前記周期的信号と供給電圧との両方に基づいてクロック信号を生成するステップと、
該クロック信号を前記ICチップのプロセッサに供給するステップと、
第2の回路を用いて、前記プロセッサのために要求される周波数、前記周期的信号の周波数、又は前記PLL回路における制御電圧のレベルのうちの1つの評価を、予め規定された閾値レベルに基づいて行うステップと、
前記評価に基づく制御信号で前記供給電圧を調整するステップであって、前記制御信号に応答して前記供給電圧のレベルを自動的に変更するステップを含む調整するステップと、を含む、
方法。
【請求項22】
前記周期的信号は、外部ソースから前記ICチップに供給されるアナログ信号である、請求項21に記載の方法。
【請求項23】
前記評価を行うステップは、前記第2の回路が前記要求される周波数が前記クロック信号の閾値周波数よりも高いことを検出することを含み、前記制御信号は前記供給電圧の前記レベルを自動的に上げる、請求項21又は22に記載の方法。
【請求項24】
前記PLL回路を用いて、前記要求される周波数に従って前記供給電圧の前記レベルを自動的に上げた後に、前記クロック信号の周波数を増大させるステップをさらに含む、請求項23に記載の方法。
【請求項25】
前記評価を行うステップには、前記周期的信号の前記周波数が前記周期的信号の閾値周波数未満であることを検出する前記第2の回路が含まれ、前記制御信号は、前記供給電圧の前記レベルを自動的に下げる、請求項21乃至23のいずれか一項に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、概して、集積回路のクロッキング(Clocking:クロック信号生成)に関し、より具体的には、排他的ではないが、基準クロック信号を生成するための回路の自動構成
【背景技術】
【0002】
従来のコンピュータ・アーキテクチャは、中央処理装置(CPU)ダイと、1つ又は複数のローカルクロック信号を生成する際に使用するデジタルクロック信号(しばしば「ベースクロック」と呼ばれる)をCPUダイに送信するために結合されるいくつかの外部ソースとを様々に提供する。そのようなCPUダイの1つ又は複数の同期ドメインは、各同期ドメインがそれぞれのローカルクロック信号に基づいて、次に、受信したベースクロック信号に基づいて様々に動作する。
【0003】
CPUダイの多くの同期ドメインのオーバークロック(overclocking)又はアンダークロック(underclocking)は、ベースクロック信号の周波数を変更することによって効率的に達成することができる。しかしながら、既存のコンピュータ・アーキテクチャのCPUダイは、このタイプのオーバークロック又はアンダークロックを実装するために外部のクロック制御ロジックに依存している。この依存関係は、通常、CPUダイと外部のクロック制御ロジックとの間のクロック制御シグナリングを有効にするために、追加の導電性コンタクト(例えば、ピン、パッド、ボール等)、相互接続、及び/又は他のリソースを必要とする。さらに、CPUダイは、多くの場合、ベースクロックの十分に広い範囲の可能な周波数用に設計されていない外部のクロック制御ロジックによって制約される。さらにまた、ベースクロック信号の最大許容周波数は、多くの場合、ベースクロック信号をCPUダイに通信するために使用される相互接続のタイプによって制限される。
【0004】
歴代の集積回路技術が、コンピュータ・アーキテクチャの増大した動作周波数をサポートし続けるので、これらのコンピュータ・アーキテクチャのクロック信号を生成するためのシステムへの漸進的改善に対する需要が高まることが予想される。
【図面の簡単な説明】
【0005】
本発明の様々な実施形態を、添付の図面の図において、限定ではなく、例として示す。
【図1】一実施形態による、集積回路のクロッキングを提供するシステムの要素を示す高レベルの機能ブロック図である。
【図2】一実施形態による、集積回路(IC)チップを用いてクロックを生成する方法の要素を示すフロー図である。
【図3】対応する実施形態によるクロック信号を生成するためのICチップの要素をそれぞれ示す高レベルの機能ブロック図である。
【図4】対応する実施形態によるクロック信号を生成するためのICチップの要素をそれぞれ示す高レベルの機能ブロック図である。
【図5】対応する実施形態によるクロック信号を生成するためのICチップの要素をそれぞれ示す高レベルの機能ブロック図である。
【図6】対応する実施形態によるクロック信号を生成するためのICチップの要素をそれぞれ示す高レベルの機能ブロック図である。
【図7】対応する実施形態によるクロック信号を生成するためのICチップの要素をそれぞれ示す高レベルの機能ブロック図である。
【図8】一実施形態による、ICチップで交換される通信の要素を示すスイムレーン(swim lane)図である。
【図9】一実施形態によるコンピュータ装置を示す機能ブロック図である。
【図10】一実施形態による、例示的なコンピュータシステムを示す機能ブロック図である。
【発明を実施するための形態】
【0006】
本明細書で議論する集積回路(IC)チップのプロセッサ及び/又は他のリソースによって使用されるクロック信号のローカル生成を制御するためのICチップの技術及びメカニズムを様々に提供する。ICチップによるクロック信号のそのようなローカル生成は、外部ソースによってICチップに供給される周期的信号に基づき得る。いくつかの実施形態では、ICチップが受信する周期的信号は、(例えば)水晶発振器によって生成されたアナログ信号である。
【0007】
そのようなクロック信号は、従来のクロッキング・アーキテクチャではオフチップからICチップに供給される、あるタイプのデジタルクロック信号(しばしば「ベースクロック信号」と呼ばれる)のものと機能的に類似した「基準クロック」を供給することができる。これらの従来のクロッキング・アーキテクチャと比較して、基準クロック信号のオンチップ生成により、利用可能なクロック周波数の範囲が大幅に広がる。そのようなより広い範囲に対応するために、いくつかのクロック信号を生成するために使用されるオンチップ回路の電力供給に対する自動更新を様々に可能にする。代替的又は追加的に、クロック信号の周波数に対する一連の変更は、予め規定された「周波数クロール(frequency crawl)」方式に従って自動的に実行してもよい。
【0008】
本明細書で使用される場合に、「基準クロック信号」は、ICチップの少なくともいくつかのリソースセットの同期動作を容易にするデジタルクロック信号を指し、基準クロック信号は、周期的信号に基づいてICチップで生成され、その周期的信号は、ICチップに結合された外部ソースによってICチップに供給される。所与のリソースセット(「同期ドメイン」とも呼ばれる)は、基準クロック信号自体で、又は基準クロック信号に基づいて生成される別のクロック信号でクロック(Clocked:クロック信号生成)することができる。例えば、基準クロック信号は、1つ又は複数のロックループ回路(例えば、PLL、FLL)に提供され得、各ロックループ回路が、それぞれの周波数逓倍を行って、ICチップの対応する同期ドメインのための別のクロック信号を生成する。いくつかの実施形態を、ICチップのプロセッサの動作を可能にするクロック信号のオンチップ生成に関連して説明する。しかしながら、この説明は、ICチップの様々な追加又は代替リソースのいずれかの動作のためのクロック信号のオンチップ生成に適用するように拡張してもよい。本明細書で特に示さない限り、「クロック信号」は、基準クロック信号、あるいはまた、そのような基準クロック信号に基づいて生成される別のクロック信号であってもよい。また、本明細書で特に示さない限り、「周期的信号」は、基準クロック信号、あるいはまた、基準クロック信号のオンチップ生成のためにオフチップリソースによってICチップに供給される信号であってもよい。例えば、周期的信号は、オフチップ・ソースの水晶発振器からのアナログ(例えば、正弦波)信号であり得る。
【0009】
本明細書では、フィードバック信号に基づいてクロック信号を生成するための位相ロックループ(PLL)回路に関連して、様々な実施形態の特定の特徴について説明する。そのようなPLL回路は、クロック信号のサンプリングされたバージョンに周波数分割を適用することによってフィードバック信号を生成する回路(本明細書では「周波数分割回路(分周回路)」と呼ばれる)を含むか、又はこれに結合され得る。あるいはまた、PLL回路は、様々な実施形態において、そのような周波数逓倍回路を含み得る。様々な実施形態では、1つ又は複数の追加の周波数分割回路及び/又は周波数逓倍回路を様々に結合して、そのようなPLL回路の上流又は下流のクロック信号で動作させることができる。いくつかのクロック信号を生成する際に使用するための特定の周波数分割又は周波数逓倍に限定されるものではない。
【0010】
本明細書で説明する技術は、1つ又は複数の電子装置に実装され得る。本明細書で説明する技術を利用し得る電子装置の非限定的な例には、カメラ、携帯電話、コンピュータ端末、デスクトップコンピュータ、電子リーダー、ファクシミリ機、キオスク、ラップトップコンピュータ、ネットブックコンピュータ、ノートブックコンピュータ、インターネット装置、決済端末、携帯情報端末、メディアプレーヤー及び/又はレコーダー、サーバー(例えば、ブレードサーバー、ラックマウントサーバー、それらの組合せ等)、セットトップボックス、スマートフォン、タブレットパーソナルコンピュータ、ウルトラモバイルパーソナルコンピュータ、有線電話、それらの組合せ等、あらゆる種類の移動装置及び/又は固定装置が含まれる。より一般的には、本明細書で説明する技術は、クロック信号を生成するように動作可能な集積回路チップを含む様々な電子装置のいずれかで使用され得る。
【0011】
以下の説明では、本開示の実施形態のより完全な説明を提供するために、多くの詳細が議論される。しかしながら、当業者には、本開示の実施形態をこれらの特定の詳細なしで実施し得ることが明らかであろう。他の例では、本開示の実施形態を不明瞭にさせないために、周知の構造及び装置は、詳細ではなくブロック図の形で示している。
【0012】
なお、実施形態の対応する図面では、信号は線で表されている。いくつかの線は、より多くの構成信号経路を示すために太くされる、及び/又は情報の流れの方向を示すために1つ又は複数の端部に矢印が付いている。そのような指標は、制限することを意図するものではない。むしろ、線は、回路又は論理ユニットの理解をより容易にするために、1つ又は複数の例示的な実施形態に関連して使用される。設計の必要性又は好みによって決定される任意の表現された信号は、実際には、いずれかの方向に進むことができ、且つ任意の適切なタイプの信号方式で実装できる1つ又は複数の信号を含むことができる。
【0013】
明細書全体及び特許請求の範囲において、「接続された」という用語は、中間装置なしで、接続されたものの間の電気的、機械的、又は磁気的接続等の直接的な接続を意味する。「結合された」という用語は、接続されたものの間の直接の電気的、機械的、又は磁気的接続等の直接的な接続又は間接的な接続、或いは1つ又は複数の受動的又は能動的な中間装置を介した間接的な接続を意味する。「回路」又は「モジュール」という用語は、互いに協働して所望の機能を提供するように構成された1つ又は複数の受動的及び/又は能動的なコンポーネントを指し得る。「信号」という用語は、少なくとも1つの電流信号、電圧信号、磁気信号、又はデータ/クロック信号を指し得る。「1つの(a, an)」、及び「その(the)」の意味には、複数の参照が含まれる。「内に(in)」の意味には、「内に(in)」と「上に(on)」が含まれる。
【0014】
用語「装置」は、一般に、その用語の使用の文脈による機器を指し得る。例えば、装置は、層又は構造のスタック、単一の構造又は層、能動素子及び/又は受動素子を有する様々な構造の接続等を指し得る。一般に、装置は、xyzデカルト座標系のxy方向に沿った平面とz方向に沿った高さとを含む三次元構造である。装置の平面は、装置を含む機器の平面であってもよい。
【0015】
「スケーリング」という用語は、一般に、設計(回路図及びレイアウト)をあるプロセス技術から別のプロセス技術に変換し、その後レイアウト面積を縮小することを指す。「スケーリング」という用語は、一般に、同じ技術ノード内のレイアウト及び装置のダウンサイジングも指す。「スケーリング」という用語は、別のパラメータ(例えば、電源レベルに対する信号周波数の調整(例えば、それぞれスローダウン又はスピードアップ、すなわちスケールダウン又はスケールアップ)を指すこともある。
【0016】
「実質的に」、「近い」、「およそ」、「ほぼ」、及び「約」という用語は、一般に、目標値の+/−10%以内であることを指す。例えば、それらの使用の明確な文脈で特に明記していない限り、「実質的に等しい」、「ほぼ等しい」、及び「およそ等しい」という用語は、そのように記載されたものの間に偶発的な変化しかないことを意味する。当技術分野では、そのような変化は、典型的に、所定の目標値の+/−10%以下である。
【0017】
このように使用される用語は適切な状況下で交換可能であり、本明細書に記載される例えば、本明細書に例示される又は他に記載されるものとは異なる向きで動作できることを理解されたい。
【0018】
特に明示しない限り、共通の対象物を説明するための通常の形容詞「第1」、「第2」、及び「第3」等の使用は、単に、同様の対象物の異なるインスタンスが参照されており、そのように記述された対象物が、時間的、空間的に所与の順序に、ランキングに、又は他の方法にする必要があることを示すことを意図していないことを示す。
【0019】
本開示の目的のために、句「A及び/又はB」及び「A又はB」は、(A)、(B)、又は(A及びB)を意味する。本開示の目的のために、句「A、B、及び/又はC」は、(A)、(B)、(C)、(A及びB)、(A及びC)、(B及びC)、又は(A,B,C)を意味する。
【0020】
詳細な説明及び特許請求の範囲における「左」、「右」、「前」、「後」、「上」、「下」、「〜の上(over)」、「〜の下(under)」等の用語は、もしあれば、説明の目的で使用されており、必ずしも恒久的な相対位置を説明するものではない。例えば、本明細書で使用される「〜の上(over)」、「〜の下(under)」、「前側」、「後側」、「上」、「下」、及び「〜上(on)」という用語は、そのような物理的な関係が注目される装置内のあるコンポーネント、構造、又は材料の、他の参照されるコンポーネント、構造、又は材料に対する位置相対的を指す。これらの用語は、本明細書では説明の目的でのみ使用され、装置の文脈内で主にz軸で使用されるため、装置の向きに関連し得る。こうして、本明細書で提供される図の文脈における第2の材料「の上(over)」の第1の材料は、装置が提供される図の文脈に対して逆さまに向けられる場合に、第2の材料「の下(under)」にもなり得る。材料の文脈で、別の材料の上又はその下に配置されたある材料は、直接的に接触しているか、又は1つ又は複数の介在する材料を有し得る。さらに、2つの材料の間に配置されたある材料は、2つの層と直接的に接触してもよく、或いは1つ又は複数の介在層を有し得る。対照的に、第2の材料の「上(on)」の第1の材料は、その第2の材料と直接的に接触している。同様の区別は、コンポーネントアセンブリの文脈でも行われる。
【0021】
用語「〜の間(between))」は、装置のz軸、x軸、又はy軸の文脈で使用され得る。他の2つの材料の間にある材料は、これらの材料の一方又は両方と接触しているか、或いは1つ又は複数の介在材料によって他の2つの材料の両方から分離されている可能性がある。したがって、他の2つの材料「の間(between)」にある材料は、他の2つの材料のいずれかに接触しているか、又は介在材料を介して2つの材料の他方に結合されている可能性がある。他の2つの装置の間にある装置は、これらの装置の一方又は両方に直接的な接続されているか、或いは1つ又は複数の介在装置によって他の2つの装置の両方から分離されている可能性がある。
【0022】
この詳細な説明全体及び特許請求の範囲で使用される場合に、「少なくとも1つの」又は「1つ又は複数の」という用語によって結合されたアイテムのリストは、リストされた用語の任意の組合せを意味し得る。例えば、「A,B,Cの少なくとも1つ」という句は、A;B;C;A及びB;A及びC;B及びC;又はA、B、及びCを意味する。他の図の要素と同じ参照符号(又は名前)を有する図の要素は、説明したのと同様の方法で動作又は機能できるが、それらに限定されないことを指摘しておく。
【0023】
加えて、本開示で議論する組合せ論理及び順序論理の様々な要素は、物理構造(ANDゲート、ORゲート、又はXORゲート等)と、以下の議論の論理のブール(Boolean)等価物である論理構造を実装する装置の合成又は他に最適化されたコレクションとの両方に関係し得る。
【0024】
他の図の要素と同じ参照符号(又は名前)を有する図の要素が、説明したのと同様の方法で動作又は機能することができるが、それらに限定されないことを指摘しておく。
【0025】
図1は、一実施形態によるオンチップクロック信号生成を提供するためのシステム100の特徴を示す。システム100は、集積回路(IC)チップが、ICチップの位相ロックループ回路に供給される供給電圧を自動的に調整する機能をサポートする実施形態の一例であり、位相ロックループ回路は、基準クロック信号を生成するために使用される。
【0026】
図1に示されるように、システム100はICチップ130を含み、その第1の回路が、ICチップ130に供給される周期的信号(図示の例示的な周期的信号120等)を受信するように結合される少なくとも位相ロックループ回路PLL140を含む。例えば、システム100のICチップ130及び外部信号ソース110は、それぞれのハードウェア・インターフェイス112、132を介して互いに結合され得、例えば、水晶発振器(図示せず)又は信号ソース110の他のそのようなコンポーネントは、ICチップ130への通信のために周期的信号120を生成する。ICチップ130の第2の回路(図示の例示的な電圧レギュレータ回路VR150等)が、供給電圧152を位相ロックループ回路PLL140に供給するために結合され得る。そのような実施形態では、PLL140は、周期的信号120と供給電圧152との両方に基づいて基準クロック信号RClk 142を生成することができる。供給電圧152は、少なくとも供給電圧152がPLL140の動作に電力を供給する限り、RClk 142の生成の基礎となり得、そのような動作は、周期的信号120の周波数に少なくとも部分的に基づくRClk 142の周波数を与える。例えば、PLL140は、供給電圧152を使用して要求される周波数逓倍を促進する(facilitate)電圧制御発振器(VCO)を含み得る。代替的又は追加的に、RClk 142の周波数を決定することは、PLL140に結合される(又は、代わりにこれに含まれる)周波数分割回路144にフィードバック信号として供給されているRClk 142にさらに基づくことができる。PLL140の動作は、例えば、様々な従来の位相ロックループ技術のいずれかから適合された1つ又は複数の他の制御信号(図示せず)にさらに応答し得る。
【0027】
クロック信号RClk 142は、ICチップ130の様々な1つ又は複数の他のコンポーネントのいずれかに供給することができ、例えば、RClk 142は、そのような1つのコンポーネント内及び/又はそのような複数のコンポーネント同士の間に同期ドメインを提供するために使用される。示される例示的な実施形態では、1つ又は複数のプロセッサ(例えば、図示の例示的な1つ又は複数のプロセッサコア160を含む)は、PLL140からRClk 142を受信するように結合される。代替的に又は追加的に、グラフィック・プロセッサ162、メモリ164、及び/又は1つ又は複数の他の回路コンポーネントは、RClk 142を受信し、これに基づいて様々に動作することができる。いくつかの実施形態では、RClk 142は、1つ又は複数の位相ロックループ回路及び/又は周波数ロックループ回路(図示せず)のベースクロックとして追加的に又は代替的に使用され、他のそれぞれのクロック信号を生成するための周波数逓倍を様々に実行する。
【0028】
従来のクロック方式では、システム全体のデジタル「ベース」のクロック信号が、いくつかの外部ソースから相互接続を介してICチップに供給される。そのようなベースクロック信号は、その後、ICチップで基準クロックとして機能することになる。しかしながら、これらの従来の方式は、典型的には、問題のICチップにベース信号を通信するために使用される相互接続によって許容される最大信号周波数に制約される。いくつかの(例えば)基準クロック信号をICチップ130でローカルに生成することにより、このタイプの周波数制約がRClk 142を直接制限するのを様々に回避する。また、いくつかのPLL140が、RClk 142の可能な周波数範囲に動的に更新するのを可能にする自動電圧調整機能をサポートすることによりこの利点をさらに有効に利用する。例えば、PLL140に供給される供給電圧のレベルを更新することにより、そのような可能な周波数範囲を増大又は他に変更することができる。
【0029】
示される例示的な実施形態では、ICチップ130の(図示の例示的なコントローラ170等の)第3の回路は、所与の時点で、供給電圧152のレベルを変更すべきであることを指定又は他に示すことができる制御信号174をVR150に供給するように結合される。コントローラ170は、周期的信号120及び供給電圧152に基づいて、RClk 142の供給の現在の(又は予想される)状態を示す信号172を受信し得る。このような状態は、例えば、プロセッサコア160(又は、RClk 142の他のそのようないくつかのシンク等)によって又は他にプロセッサコア160のために(on behalf of)要求される周波数、周期的信号120の現在の周波数、又はPLL140における制御電圧のレベルのうちの1つ又は複数を含み得る。1つのそのような実施形態では、PLL140における制御電圧は、PLL140のVCOで受信した制御信号の電圧である。信号172が、ICチップ130の状態を監視及び通信するように動作可能な様々なセンサ、制御回路、及び/又は他の機構(図示せず)のいずれかによって生成され得る。そのような信号172の生成は、様々な実施形態の特定の特徴を不明瞭にさせないために本明細書では詳述されない、回路監視技術により適合された動作を含み得る。
【0030】
一実施形態では、コントローラ170は、信号172によって示される状態が供給電圧152のレベルを自動的に変更するための基準を満たすかどうかを判定するための評価を、予め規定された閾値レベルに基づいて行う。評価は、所与のパラメータの閾値レベルに対応するICチップ130の状態(例えば、予め規定された基準情報を含む状態)に基づいてもよく、各閾値レベルが異なるそれぞれの供給電圧152のレベルを有する。例えば、コントローラ170は、そのような予め規定された基準情報を提供することになるメモリ又は他のリソースを含むか、又は他にこれにアクセスすることができる。予め規定された基準情報によって示される閾値パラメータは、例えば、要求されるクロック周波数パラメータ、周期的信号周波数パラメータ、又は制御電圧レベルパラメータのうちの1つを含み得る。
【0031】
例えば、制御信号174は、リソース(プロセッサコア160等)によって要求された、又はそのリソースのために要求される基準クロック周波数がRClk 141の予め規定された閾値周波数より大きい、又は代替的に、より小さいかどうかをコントローラ170が検出する評価に基づくことができる。そのような実施形態では、検出は、予め規定された閾値周波数と供給電圧152の現在のレベルとの対応関係を指定又は他に示す予め規定された基準情報(又は、ICチップ130の他の状態)を使用する。例えば、閾値周波数は、供給電圧152の現在のレベルを含む電圧レベルの範囲に対応するものとして規定してもよい。
【0032】
代替的又は追加的に、評価は、周期的信号120の現在の周波数が周期的信号120の予め規定された閾値周波数未満であることをコントローラ170が検出することを含むことができ、例えば、予め規定された閾値周波数は、RClk 142の現在の周波数に対応するように基準情報(又は、ICチップ130の他の情報)によって規定される。代替的又は追加的に、評価は、PLL140における制御電圧(例えば、VCOを動作させるための制御信号の電圧)が制御電圧の予め規定された閾値レベルよりも高い(又は、代わりに低い)ことをコントローラ170が検出することを含み得る。予め規定された閾値レベルは、供給電圧152の現在のレベルに対応するようにICチップ130の状態によって規定され得る。このような評価に基づいて、コントローラ170は、制御信号174で供給電圧152を変更すべきであることを自動的に示し得る。制御信号174を用いたそのような表示に応答して、VR150は、供給電圧152のレベルを上げるか、又は他に変更することができる。
【0033】
図2は、一実施形態による、ICチップにおいてクロック信号を生成する方法200の特徴を示す。方法200は、ICチップ(例えば、プロセッサ論理を含む)が供給電圧を自動的に変更する実施形態の一例であり、クロック信号は、供給電圧とICチップに供給される周期的信号との両方に基づいてICチップのPLL回路で生成される。方法200は、例えば、ICチップ130で実行してもよい。
【0034】
図2に示されるように、方法200は、(210で)ICチップの第1の回路に周期的信号を供給するステップを含むことができ、例えば、第1の回路は、PLL140(又は、他のそのような位相ロックループ回路)である、又は他にPLL140を含む。周期的信号は、ICチップでこのICチップに結合された外部信号ソースから受信され得る。そのような受信は、ICチップ130がハードウェア・インターフェイス132の導電性接点(例えば、パッド、ビア構造、はんだ接続等)を介して周期的信号120を受信することを含み得る。いくつかの実施形態では、周期的信号は、例えば、信号ソースの水晶発振器で生成される正弦波(又は、他の)アナログ信号である。他の実施形態では、周期的信号は、ICチップの他の回路によって生成され、例えば、周期的信号は、基準クロック信号であるか、又は(例えば)そのような基準クロック信号に基づいて生成される別のクロック信号である。
【0035】
一実施形態では、方法200は、(220で)第1の回路のPLL回路を用いて、周期的信号とPLL回路に供給される供給電圧(REFに対する供給電圧の影響に関する同じコメント)との両方に基づいて、クロック信号を生成するステップをさらに含む。例えば、方法200は、PLL回路のVCO回路に供給電圧を供給するICチップの電圧レギュレータ(VR150等)をさらに含み得る。そのような電圧レギュレータは、供給電圧の様々な異なるレベルのいずれかを異なる時間に提供するように動作可能であり得る。
【0036】
方法200は、(230で)ICチップの1つ又は複数の回路コンポーネントにクロック信号を供給するステップをさらに含むことができる。示される例示的な実施形態では、230での供給するステップは、クロック信号を少なくともICチップのプロセッサに供給するステップを含む。230での供給に基づいて、ICチップの1つ又は複数の同期ドメインを提供することができる。代替的又は追加的に、ICチップの1つ又は複数のバスを介した通信は、基準クロック信号(又は、基準クロック信号に基づいてICチップで生成されるローカルクロック信号)と同期することができる。
【0037】
一実施形態では、方法200はさらに、(240で)第2の回路を用いて、プロセッサのために要求される周波数、周期的信号の周波数、又はPLL回路における制御電圧のレベルのうちの1つの評価を、予め規定された閾値レベルに基づいて行うステップをさらに含む。そのような評価は、例えば信号172に基づいて、及び(いくつかの実施形態では)予め規定された基準情報、又は所与のパラメータの様々な閾値レベルの対応関係を特定するICチップの他の状態に基づいて、コントローラ170によって240で実行され得、各閾値レベルは、異なるそれぞれの供給電圧のレベルを有する。予め規定された基準情報又はICチップの他のそのような状態は、パラメータの閾値レベルに対応することができ、各閾値レベルが異なるそれぞれの供給電圧のレベルを有する。パラメータは、要求されるクロック周波数パラメータ、周期的信号周波数パラメータ、又は制御電圧レベルパラメータのうちの1つを含み得る。
【0038】
例えば、240での評価を行うステップは、プロセッサのために要求される周波数がクロック信号の予め規定された閾値周波数よりも高いことを検出するステップを含み得る。そのような予め規定された閾値周波数は、(例えば)供給電圧の現在のレベルに対応するようにコントローラ170で識別することができ、例えば、閾値周波数の超過は、供給電圧の現在のレベルが、プロセッサのために要求される周波数には不十分であるリスク状態にあることを示す。
【0039】
代替的又は追加的に、240での評価を行うステップは、(210で第1の回路に供給される)周期的信号の周波数が周期的信号の予め規定された閾値周波数未満であることを検出するステップを含み得る。そのような予め規定された閾値周波数は、クロック信号の現在の周波数に対応し得、例えば、閾値周波数を下回る周期的信号は、クロック信号の現在の周波数を考慮すると、供給電圧の現在のレベルが、要求されるクロック信号の周波数を供給するには不十分であるリスク状態にあることを示す。
【0040】
代替的又は追加的に、240での評価を行うステップは、PLL回路における制御電圧が、制御電圧の予め規定された閾値レベルよりも高いことを検出するステップを含み得る。そのような予め規定された閾値レベルは、供給電圧の現在のレベルに対応し得、例えば、閾値レベルを超える制御電圧は、供給電圧の現在のレベルが、クロック信号の対応する周波数を供給するのに不十分であるリスク状態にあることを示す。
【0041】
方法200はさらに、(250で)240で行われた評価に基づいた制御信号で供給電圧を調整するステップを含み得る。250での調整は、制御信号に応答して、供給電圧のレベルを自動的に変更するステップを含み得る。例えば、240での評価を行うステップは、要求される(例えば、プロセッサのために要求される)クロック信号の周波数が予め規定された閾値周波数よりも高い(又は、代わりに低い)ことを検出するステップを含み得る。そのような実施形態では、250での調整するステップは、VR150が供給電圧152を増大(又は、代わりに減少)するステップ、及び供給電圧152を増大(又は減少)させた状態で、PLL140が要求される周波数に対するRClk 142の周波数を増大(又は、代わりに減少)させるステップを含み得る。
【0042】
いくつかの実施形態では、方法200は、予め規定された方式に従って、ある現在の周波数から目標周波数へのRClk 142に対する一連のインクリメンタル式変更(incremental changes)を自動的に実行する1つ又は複数の追加の動作(図示せず)をさらに含む。簡潔にするために、そのようなシリーズ(一連)は、本明細書では「周波数クロール」と呼ばれる。限定ではなく例として、方法200は、(例えば)ICチップによって記憶されるか、又は他にICチップにおいて予め構成されたオーバークロック方式の1つ又は複数のパラメータにアクセスする第2の回路(例えば、コントローラ170を含む)をさらに含み得る。1つ又は複数のパラメータは、インクリメンタル式周波数変更(例えば、インクリメンタル式周波数増大)の大きさ、インクリメンタル式周波数変更の持続時間、及びクロック信号の最終的な目標周波数のうちの1つ又は複数を指定することができる。1つ又は複数のパラメータに基づいて、第2の回路は、第1の回路に信号を送って、クロック信号の周波数に対して一連のインクリメンタル式増大(又は、代わりに減少)を行うことができる。
【0043】
いくつかの実施形態では、電圧レギュレータは、クロック信号の周波数に対する一連のインクリメンタル式変更の間に、供給電圧のレベルを自動的に変更する。例えば、240での評価を行うステップは、クロック信号の次の周波数(すなわち、予め規定された方式による次の周波数)が電圧供給の現在のレベルに対応する閾値周波数を超えることを検出するステップを含み得る。そのような実施形態では、250での調整するステップは、PLL回路のVCO回路を有効にしてクロック信号の次の周波数を促進するように、供給電圧のレベルを上げるステップを含むことができる。
【0044】
図3は、一実施形態による、クロック信号を生成するICチップ300の特徴を示す。ICチップ300は、プロセッサを含むチップの回路が供給電圧を自動的に変更するように動作可能である実施形態の一例であり、クロック信号は、供給電圧と周期的信号との両方に基づいてチップのPLL回路で生成される。ICチップ300は、例えば、ICチップ130の特徴の一部又は全部を含み得、及び/又は方法200に従って動作し得る。
【0045】
図3に示されるように、ICチップ300は、例えば、機能的にPLL140に対応する位相ロックループ(PLL)回路310を含み、このPLL回路310は、周期的信号305に基づいてクロック信号320を生成するように動作可能である。クロック信号320は、基準クロック信号であり得、例えば、ICチップ300は、オフチップ信号ソースから周期的信号305を受信する。あるいはまた、周期的信号305は、ICチップ300で生成された基準クロック信号であってもよく、又はそのような基準クロック信号に基づいて生成されたクロック信号であってもよい。
【0046】
示される例示的な実施形態では、PLL回路310は、周期的信号305及びフィードバック信号332を受信する位相周波数検出器PFD312を含む。これらの2つの信号305、332間の位相差に基づいて、PFD312は、対応するアップ又はダウン信号をチャージポンプCP314に供給することができる。PLL回路310の電圧制御発振器(VCO)318は、CP314によって出力される信号に直接又は間接的に基づく周波数でクロック信号320(例えば、RClk 142)を生成する。例えば、PFD312からのアップ信号は、CP314からの出力をもたらし得、それにより、VCO318が、クロック信号320の周波数を増大させる(例えば、ダウン信号は、代わりに、VCO318が周波数を減少させる結果となる)。
【0047】
いくつかの実施形態では、PLL回路310は、CP314とVCO318との間にループフィルタLF316をさらに含み、例えば、LF316は、CP314の出力から高周波信号成分をフィルタリングして、VCO318を制御するために使用され得る低周波信号317を生成することができる。信号317は、VCO318を動作させるための制御電圧を供給する信号の一例に過ぎない。(例えば)他の実施形態では、PLL回路310は、LF316を省略し、例えば、信号317は、代わりにVCO318によってCP314から直接的に受信される。周波数分割回路DIV330は、VCO318からフィードバックされるクロック信号320のバージョンに周波数逓倍を適用することができ、例えば、DIV330は、結果として生じるフィードバック信号332をPFD312に供給する。
【0048】
PLL回路310によって生成されるクロック信号320の周波数は、最初は変化し得る。しかしながら、結局、PLL回路310は「ロック」し、クロック信号320は、(例えば、周期的信号305の周波数及びDIV330によって適用される周波数逓倍率Nの値に基づいて)適切な周波数のままである。一実施形態では、DIV330によって適用される周波数逓倍率Nは、クロック信号320に要求されるクロック周波数を示す制御信号DMC340に基づく。制御信号DMC340は、例えば、信号172であってよい。一実施形態では、DMC340は、RF信号干渉が特定の周波数範囲にあるクロック信号320に起因する可能性があることを検出するICチップ300のモデム、I/Oスタック、又は他の回路(図示せず)に基づいて周波数を要求する。
【0049】
PLL回路310の動作は、少なくとも部分的に供給電圧362で給電される。例えば、ICチップ300の電圧レギュレータVR360は、レール電圧V
ccに基づいて供給電圧362を生成し、且つ信号317の電圧に基づいて、クロック信号320の周波数を制御する電力供給機能のためのVCO318(及び、いくつかの実施形態では、PLL回路310の他のコンポーネント)に供給電圧362を供給することができる。
【0050】
300の動作中に、供給電圧362は、ICチップ300の(実際の又は予想される)状態の指標に応答して更新され得、状態は、PLLによって供給されているクロック信号320に基づくか、又はこれに寄与する。状態は、例えば、DMC340で要求されるクロック信号320の周波数、周期的信号305の(実際の又は予想される)周波数、又は信号317の電圧を含む1つ又は複数の構成条件を含むことができる。
【0051】
示される例示的な実施形態では、供給電圧362は、少なくともクロック信号320の要求される周波数に基づいて更新される。例えば、ICチップ300は、DMC340を監視し、且つクロック信号320の要求される周波数に基づいて、供給電圧362のレベルを更新すべきかどうかを決定するように構成される図示される例示的なデコーダ350等の回路をさらに含む。所与の時間に、供給電圧362の現在のレベルは、供給電圧362の現在のレベルを考慮して、クロック信号320を、VCO318がサポートできる対応する最大周波数に制限することができる。代替的に又は追加的に、供給電圧362の現在のレベルは、クロック信号320の特定の最大利得を与えるようにVCO318を制限し得る。そのような実施形態では、デコーダ350は、DMC340が供給電圧362への増大(又は、供給電圧362への減少)を必要とする周波数を要求すると決定し得る。要求される周波数に基づいて、デコーダ350は、VR360に供給電圧362のレベルをそれに応じて更新させる制御信号352を供給することができる。制御信号352は、VCO318が要求される周波数をサポートするのに十分な電力を有さない、又は間もなく有さなくなる可能性があるリスクを指定するか、又は他にVR360に示すことができる。
【0052】
図4は、別の実施形態による、クロック信号を生成するためのICチップ400の特徴を示す。ICチップ400は、チップの回路が周期的信号の周波数に基づいて供給電圧を更新するように動作可能である実施形態の一例であり、クロック信号は、供給電圧と周期的信号との両方に基づいて生成される。ICチップ400は、例えば、ICチップ130、300のうちの1つの特徴を含み得、及び/又は例えば方法200に従って動作し得る。
【0053】
図4に示されるように、ICチップ400は、例えば、(それぞれ)VR360及びPLL回路310に機能的に対応する電圧レギュレータ回路VR460及びPLL回路410を含む。PLL回路410は、周期的信号405に基づいてクロック信号420を生成し得る。クロック信号420は、基準クロック信号であり得、例えば、ICチップ400は、オフチップ信号ソースから周期的信号405を受信する。あるいはまた、周期的信号405は、ICチップ400で生成された基準クロック信号であってもよく、又はそのような基準クロック信号に基づいて生成されたクロック信号であってもよい。クロック信号420は、VR460によってPLL回路410に供給される供給電圧462にさらに基づくことができる(例えば、供給電圧462は、レール電圧V
ccに基づいてVR460で生成される)。
【0054】
例えば、PLL回路410は、(例えば、PFD312、CP314、LF316、及びVCO318に機能的に対応する)位相周波数検出器PFD412、チャージポンプCP414、ループフィルタLF416、及び電圧制御発振器VCO418を含み得る。PLL回路410に含まれるか又はPLL回路410に結合される周波数分割回路DIV430は、VCO418からフィードバックされるクロック信号420のバージョンに周波数逓倍を適用することにより、フィードバック信号432(例えば、フィードバック信号332の特徴を有する)を生成し得る。DIV430によって適用される周波数逓倍率Nは、クロック信号420の要求されるクロック周波数を示す制御信号DMC440に基づくことができる。
【0055】
所与の時間に、(供給電圧462の現在のレベルと組み合わせた)周期的信号405の現在の周波数は、クロック信号420を、VCO418が供給できる対応する最大周波数に制限することができる。PLL回路410が以前に要求されたクロック信号420の周波数を供給している間に、周期的信号405の周波数が減少した場合に、VCO418が供給できるこの周波数も減少するだろう。次に、これは、クロック信号420がICチップ400のプロセッサ又は他のリソースの動作周波数要件を満たせないリスクを増大させる。代替的又は追加的に、(供給電圧462の現在のレベルと組み合わせた)周期的信号405の現在の周波数は、クロック信号420が、VCO418が供給しなければならない少なくとも対応する最小周波数を有することを要求し得る。PLL回路410が以前の要求されたクロック信号420の周波数を供給している間に、周期的信号405の周波数が増大する場合に、VCO418が供給しなければならないこの最小周波数も増大するだろう。次に、これは、クロック信号420が1つ又は複数の動作周波数要件に違反するリスクを生じさせ得る。そのようなリスクを軽減するために、いくつかの周期的信号405の周波数を監視し、この周波数に基づいて供給電圧462のレベルを自動的に更新し、こうして、クロック信号420の生成におけるPLL回路410の有効な周波数応答を促進する。
【0056】
示される例示的な実施形態では、供給電圧462は、少なくとも周期的信号405の(実際の又は予想される)周波数に基づいて更新される。例えば、ICチップ400は、周期的信号405を監視し、且つ周期的信号405の周波数に基づいて、供給電圧462のレベルを更新すべきかどうかを決定するように構成される示される図示の例示的なデコーダ450等の回路をさらに含む。検出された周波数に基づいて、デコーダ450は、VR460に供給電圧462のレベルをそれに応じて更新させる制御信号452を供給することができる。制御信号452は、周期的信号405の検出された周波数を考慮して、VCO418が要求される周波数をサポートするのに十分な電力を有さない、又は間もなく有さなくなる可能性があるというリスクを指定するか、又は他にVR460に示す。
【0057】
図5は、別の実施形態による、クロック信号を生成するためのICチップ500の特徴を示す。ICチップ500は、チップの回路がチップのPLL回路によって使用される制御信号に基づいて供給電圧を更新するように動作可能である実施形態の一例であり、クロック信号は、供給電圧に基づいてPLL回路で生成される。ICチップ500は、例えば、ICチップ130、300、400のうちの1つの特徴を含み得、及び/又は例えば、方法200に従って動作し得る。
【0058】
図5に示されるように、ICチップ500は、例えば、(それぞれ)VR360及びPLL回路310に機能的に対応する電圧レギュレータ回路VR560及びPLL回路510(図中の「510」を「PLL510」に置き換える)を含む。PLL回路510は、周期的信号505に基づいてクロック信号520を生成し得る。クロック信号520は、基準クロック信号であり得、例えば、ICチップ500は、オフチップ信号ソースから周期的信号505を受信する。あるいはまた、周期的信号505は、ICチップ500において生成された基準クロック信号であってもよく、又はそのような基準クロック信号に基づいて生成されたクロック信号であってもよい。
【0059】
例えば、PLL回路510に含まれるか又はPLL回路510に結合された周波数分割回路DIV530は、PLL回路510の電圧制御発振器(図示せず)からフィードバックされるクロック信号520のバージョンに周波数逓倍を適用することにより、フィードバック信号532(信号332等)を生成し得る。DIV530によって適用される周波数逓倍率Nは、クロック信号520に要求されるクロック周波数を示す制御信号DMC540に基づくことができる。
【0060】
クロック信号520は、VR560によってPLL回路510に供給される供給電圧562(と同じコメント)にさらに基づくことができる(例えば、供給電圧562は、レール電圧V
ccに基づいてVR560で生成される)。示される例示的な実施形態では、供給電圧562は、少なくともPLL回路510で使用される制御信号に基づいて更新される。例えば、所与の時間に、制御信号512(例えば、信号317の機能を提供する)が、クロック信号520の周波数を制御するために、PLL回路510のVCO回路(図示せず)に供給される。このような実施形態では、制御信号512は、いくつかの予め規定された基準に従って、供給電圧562のレベルを変更する必要があるかどうかを検出するICチップ500の追加の回路にさらに供給され得る。例えば、そのような追加の回路は、アナログ−デジタル回路AD570及びこれに結合された有限状態マシンFSM550を含み得る。そのような実施形態では、AD570は、制御信号512の電圧レベルを指定するデジタルコードを含む信号572を出力し得る。信号572に応答して、FSM550は、示された電圧レベルが供給電圧の562の現在のレベルに対応する閾値電圧レベルを超えるかどうかを判定し得る。
【0061】
そのような閾値電圧レベルを超える場合に、FSM550は、VR560に供給電圧562のレベルをそれに応じて更新させる制御信号552を供給することができる。制御信号552は、制御信号512の検出されたレベルを考慮して、VCO518が、その検出されたレベルに対応する周波数をサポートするのに十分な電力を有さない、又は間もなく有さなくなる可能性があるというリスクを指定するか、又は他にVR560に示す。
【0062】
図6は、一実施形態による、クロック信号を供給しながら周波数クロールを自動的に実行し得るICチップ600の特徴を示す。ICチップ600は、例えば、ICチップ130、300、400、500のうちの1つの特徴を含み得る。代替的に又は追加的に、ICチップ600は、方法200に従って動作し得る。
【0063】
図6に示されるように、ICチップ600は、例えば、(それぞれ)VR360、PLL回路310、及びDIV330に機能的に対応する電圧レギュレータ回路VR660、PLL回路610、及び周波数分割回路DIV630を含む。PLL回路610の動作は、周期的信号605に基づいてクロック信号620を生成し得る。クロック信号620の生成は、DIV630からのフィードバック信号632と、VR660によってPLL回路610に供給される供給電圧662とにさらに基づき得る(例えば、供給電圧662がレール電圧V
ccに基づいてVR660で生成される)。そのような一実施形態では、DIV630は、周波数クロールを実施するためのクロック方式を促進する。クロック方式は、フィードバック信号632に対して行うべきインクリメンタル式変更、こうして、クロック信号620の周波数に対して行うべき対応するインクリメンタル式変更を特定することができる。
【0064】
例えば、DIV630は、DIV330がフィードバック信号632を生成するために適用することになる周波数逓倍率Nの値を示す信号680を供給する回路ロジック(図示の例示的な有限状態マシンFSM670等)を含むか、又は他にこれにアクセスすることができる。信号680は、FSM670によって順次更新されて、ある期間に亘ってNの値を変化させてもよい。例えば、ICチップ600の動作中に、クロック方式は、図示の例示的な制御信号672、674、676、678等の1つ又は複数の制御信号によって、FSM670に指定する、又は他に示すことができる。そのようなシグナリングは、ICチップ600のプロセッサ、電力管理コントローラ、又は他のリソース(図示せず)から受信され得る。様々なFSM670に対して所与のクロック方式を特定する特定のエージェントに限定されない。
【0065】
制御信号672、674、676、678に基づいて、FSM670は、特定のクロック方式を実装すべきであることを検出することができ、例えば、FSM670は、クロック方式の1つ又は複数のパラメータを特定する。そのような1つ又は複数のパラメータは、例えば、インクリメンタル式周波数増大の大きさ、インクリメンタル式周波数増大の持続時間、又は最終的な目標周波数を含み得る。限定ではなく例として、制御信号672は、周波数クロールの開始時にクロック信号620の周波数f_initをFSM670に示すことができる(例えば、制御信号672は、DIV630によって適用される周波数逓倍率Nの対応する初期値を示す。)。そのような実施形態では、制御信号674は、周波数クロールの終了時にクロック信号620の目標周波数f_targをFSM670に示すことができる(例えば、制御信号674は、DIV630によって適用される周波数逓倍率Nの対応する最終値を示す。)。代替的又は追加的に、制御信号676は、クロック信号620の周波数に対するインクリメンタル式変更の大きさΔfをFSM670に示してもよい(例えば、制御信号676は、DIV630によって適用される周波数逓倍率Nに対するインクリメンタル式変更の対応する大きさを示す。)。代替的に又は追加的に、制御信号678は、周波数クロール中にクロック信号620の所与の周波数ステップの持続時間ΔtをFSM670に示してもよい。
【0066】
一実施形態では、FSM670は、DIV630に信号を送り、クロック信号620の周波数が、ある現在の周波数(例えば、f_init)からある目標周波数(例えば、f_targ)まで連続的に増大するオーバークロック方式を実装する。図6は、そのような周波数クロールの一例を示すグラフ690も示し、すなわち、グラフ690は、時間領域694に亘ったクロック周波数692に対するインクリメンタル式変更をプロットする。
【0067】
ICチップ600による周波数クロールの実行は、VR660によって自動的に変更されている供給電圧662のレベルを含むか、又は他にその結果となり得る。例えば、ICチップ600は、信号680によって要求される周波数、周期的信号605の周波数、又はPLL610のVCO機能を制御する制御電圧のレベル(図示せず)の1つ又は複数を監視するために結合されるコントローラ664(例えば、コントローラ170、デコーダ350、デコーダ450、又はFSM550のコントローラ等の機能を提供する)をさらに含むことができる。このような監視は、例えば、方法200の240で実行される評価を含むか、又はその基礎となり得る。そのような評価の結果に基づいて、コントローラ664は、供給電圧662を変化させる制御信号をVR660に送ることができる。
【0068】
図7は、一実施形態による、クロック信号を供給しながら周波数クロールを自動的に実行し得るICチップ700の特徴を示す。ICチップ700は、ICチップ600のうちの1つの特徴を含み得、例えば、ICチップ700は、方法200に従って動作し得る。
【0069】
図7に示されるように、ICチップ700は、例えば、(それぞれ)VR660、PLL回路610、DIV630、及びFSM670に機能的に対応する電圧レギュレータ回路VR740、PLL回路710、周波数分割回路DIV720、及び有限状態マシン720を含む。VR740は、レール電圧V
ccに基づいて供給電圧742を生成し、PLL回路710は、供給電圧742、DIV712からのフィードバック信号722、及び周期的信号705のそれぞれに基づいて、クロック信号712を生成する。
【0070】
FSM730とDIV720との動作は、クロック信号712の第1の周波数クロールのための第1のクロック方式(例えば、第1のオーバークロック方式)を促進することができる。例えば、FSM730は、DIV720がフィードバック信号732を生成するために適用することになる周波数逓倍率N1をDIV720に示す信号744を供給することができる。信号744は、FSM730によって順次更新されて、ある期間に亘ってNの値を変化させてもよい。示される例示的な実施形態では、FSM730による信号744のそのような更新は、第1のクロック方式の1つ又は複数のパラメータを特定する制御信号732、734、736、738(例えば、それぞれ制御信号672、674、676、678に機能的に対応する)に基づく。
【0071】
そのような実施形態では、クロック信号712は、クロック信号712に基づいて1つ又は複数のクロック信号を生成し得るICチップ700の他のリソースに供給され得る。そのような他のリソースは、1つ又は複数のクロック信号のうちの所与の1つの第2の周波数クロールのための第2のクロック方式(例えば、第1のクロック方式と同時に発生する)をさらに促進することができる。
【0072】
例えば、ICチップ700は、例えば、(それぞれ)VR660、PLL回路610、DIV630、及びFSM670に機能的に対応する電圧レギュレータ回路VR780、PLL回路750、周波数分割回路DIV760、及び有限状態マシン760をさらに含み得る。VR780は、レール電圧V
ccに基づいて供給電圧782を生成し、PLL回路750は、供給電圧782、DIV752からのフィードバック信号762、及びクロック信号712のそれぞれに基づいて、別のクロック信号752を生成する。
【0073】
FSM770とDIV760との動作は、クロック信号752の第2の周波数クロールのための第2のクロック方式(例えば、第2のオーバークロック方式、又は、代わりにアンダークロック方式)を促進し得る。例えば、FSM770は、DIV760がフィードバック信号762を生成するために適用することになる周波数逓倍率N2をDIV760に示す784信号を供給し得る。信号784は、FSM770によって順次更新されて、ある期間に亘ってN2の値を変化させてもよい。示される例示的な実施形態では、FSM770による信号784のそのような更新は、第2のクロック方式の1つ又は複数のパラメータを特定する制御信号772、774、776、778に基づく。限定ではなく例として、制御信号772は、第2の周波数クロールの開始時にクロック信号752の初期周波数をFSM770に示すことができ、例えば、制御信号774は、第2の周波数クロールの終了時にクロック信号752の目標周波数を示す。代替的又は追加的に、制御信号776は、クロック信号752の周波数に対するインクリメンタル式変更の大きさをFSM770に示してもよく、例えば、制御信号778は、第2の周波数クロール中のクロック信号752の所与の周波数ステップの持続時間を示す。
【0074】
ICチップ700による周波数クロールの実行は、VR740で自動的に変化している供給電圧742及び/又はVR780で自動的に変化している供給電圧782を含むか、又は他にその結果となり得る。例えば、ICチップ700はさらに、信号744によって要求される周波数、周期的信号705の周波数、又はPLL710のVCO機能を制御する制御電圧(図示せず)のレベルの1つ又は複数を監視するために結合されるコントローラ744(例えば、コントローラ664のような機能を提供する)をさらに含み得る。代替的に又は追加的に、コントローラ744は、信号784によって要求される周波数、信号712の周波数、又はPLL750のVCO機能を制御する制御電圧(図示せず)のレベルの1つ又は複数を監視するように結合され得る。このような監視は、例えば、方法200の240で実行される評価を含むか、又はその基礎となり得る。そのような評価の結果に基づいて、コントローラ744は、供給電圧742を変化させる制御信号をVR740に送ることができる(及び/又は、供給電圧782を変化させる制御信号をVR780に送ることができる)。
【0075】
それぞれのクロック信号の同時周波数クロールを可能にすることにより(そのようなクロック信号が別のそのようなクロック信号に基づく場合)、様々な異なるクロックドメインの非常に効率的で細かい構成を提供する。限定ではなく例として、クロック信号752の第2のクロック方式は、クロック信号712の第1のクロック方式からの増大を少なくとも部分的に軽減することができる。
【0076】
図8は、一実施形態によるクロックの周波数を決定するための通信を示すスイムレーン(swim lane)図800を示す。より具体的には、スイムレーン図800は、コールドブートアップ(cold boot-up)を実施するためのICチップのリソース同士の間の様々な通信を示し、つまり、リソースは、スイムレーン図800、プラットフォーム・コントローラ・ハブPCH810、電力管理プロセスPM812、クロック管理プロセスOC814、クロック制御ロジックCpuRClk816、及びメモリサブシステムMemSS818を含む。このような通信は、例えば、ICチップ130、300、400、500、600、700のうちの1つで実行することができる。
【0077】
図8に示されるように、ICチップのコールドブートは、PCH810が、ICチップのリソース(例えば、1つ又は複数のプロセッサコアを含むリソース)をウェイクアップさせるメッセージ820をPM812に送ることを含むことができる。そのようなリソースは、本明細書で説明するように、ICチップが外部ソースから受信する周期的信号に基づいてCpuRClk816によってオンチップで生成される基準クロック信号RClkに基づいて動作することができる。CpuRClk816は、方法200の一部又は全てを実行する機能を提供することができ、例えば、CpuRClk816は、PLL140、VR150、及びコントローラ170の特徴の一部又は全てを有している。
【0078】
一実施形態では、RClkの初期周波数は、メッセージ820で指定されるか、或いは、PM812で予め規定されたデフォルト周波数によって決定される。特定の時間(図示の線825によって示される)で、コールドブートのBIOS動作は、メッセージ820に基づいて完了することができる。その後、OC814は、特定の周波数RClkを求める要求830をPM812に送信できる。要求830は、ICチップのある状態がRClkのオーバークロック(又は、代わりにそのようなオーバークロックの終わり)を必要とするか、又は他にそのオーバークロックを許可するかどうかを特定する動作(例えば、従来のプロセッサ管理/監視技術から適合させたもの)に基づいてもよい。
【0079】
要求830に応答して、PM812は、動作832を実行して、CpuRClk816を構成するための1つ又は複数のパラメータを計算し、示されたRClkの周波数を供給することができる。限定ではなく例として、そのような1つ又は複数のパラメータは、CpuRClk816のPLLフィードバック回路で適用される周波数逓倍率を含み得る。代替的に又は追加的に、動作832は、周波数クロール方式の1つ又は複数のパラメータを特定するためにルックアップ又は他の計算を実行することができ、例えば、1つ又は複数のパラメータは、RClkの目標周波数、RClkに対するインクリメンタル式周波数変更の大きさ、RClkに対するインクリメンタル式周波数変更の持続時間等を含む。
【0080】
動作832が成功裏に完了した後に、PM812は、要求830の受け入れを確認するメッセージ834をOC814に通信することができる。さらに、PM812は、MemSS818の少なくともいくつかのリソースがRClkの周波数への変更中に動作するのをブロックするためのメッセージ836をMemSS818に通信することができる。次に、CpuRClk816へのメッセージ838は、RClkの周波数への1つ又は複数の変更を容易にし得る。例えば、メッセージ838は機能的に信号172に対応する。RClkへの1つ又は複数の周波数変更が完了した後に、PM812は、メモリリソースの操作のブロックを解除するためのメッセージ840をMemSS818に送信できる。
【0081】
図9は、一実施形態によるコンピュータ装置900を示す。コンピュータ装置900は、ボード902を収容する。ボード902は、プロセッサ904及び少なくとも1つの通信チップ906を含むがこれらに限定されない複数のコンポーネントを含み得る。プロセッサ904は、ボード902に物理的及び電気的に結合される。いくつかの実施態様では、少なくとも1つの通信チップ906も、ボード902に物理的及び電気的に結合される。更なる実施態様では、通信チップ906は、プロセッサ904の一部である。
【0082】
その用途に応じて、コンピュータ装置900は、ボード902に物理的及び電気的に結合してもしなくてもよい他のコンポーネントを含み得る。これらの他のコンポーネントは、揮発性メモリ(例えば、DRAM)、不揮発性メモリ(例えば、ROM)、フラッシュメモリ、グラフィックス・プロセッサ、デジタル信号プロセッサ、暗号化プロセッサ、チップセット、アンテナ、ディスプレイ、タッチスクリーン・ディスプレイ、タッチスクリーン・コントローラ、バッテリ、オーディオ・コーデック、ビデオ・コーデック、電力増幅器、全地球測位システム(GPS)装置、コンパス、加速度計、ジャイロスコープ、スピーカ、カメラ、及び大容量記憶装置(ハードディスクドライブ、コンパクトディスク(CD)、デジタル多用途ディスク(DVD)等)を含むが、これらに限定されるものではない。
【0083】
通信チップ906は、コンピュータ装置900との間のデータ転送のための無線通信を可能にする。「無線」という用語及びその派生語は、非固体媒体を介して変調された電磁放射を使用してデータを通信することができる回路、装置、システム、方法、技術、通信チャネル等を説明するために使用され得る。この用語は、関連する装置がワイヤを含まないことを意味していないが、いくつかの実施形態ではそのワイヤを含まない場合がある。通信チップ906は、Wi‐Fi(IEEE802.11ファミリー)、WiMAX(IEEE802.16ファミリー)、IEEE802.20、ロングタームエボリューション(LTE)、Ev‐DO、HSPA+、HSDPA+、HSUPA+、EDGE、GSM、GPRS、CDMA、TDMA、DECT、Bluetooth、それらの派生物だけでなく、3G、4G、5G、及びそれ以降として指定される他の無線プロトコルを含むがこれらに限定されない、いくつかの無線規格又はプロトコルのいずれかを実装し得る。コンピュータ装置900は、複数の通信チップ906を含み得る。例えば、第1の通信チップ906は、Wi‐Fi及びBluetooth等の短距離無線通信専用であり得、第2の通信チップ906は、GPS、EDGE、GPRS、CDMA、WiMAX、LTE、Ev−DO等の長距離無線通信専用であり得る。
【0084】
コンピュータ装置900のプロセッサ904は、プロセッサ904内にパッケージ化された集積回路ダイを含む。用語「プロセッサ」は、レジスタ及び/又はメモリからの電子データを処理してその電子データを他の電子データに変換し、レジスタ及び/又はメモリに保存できる任意の装置又は装置の一部を指し得る。通信チップ906も、通信チップ906内にパッケージ化された集積回路ダイを含む。
【0085】
様々な実施態様において、コンピュータ装置900は、ラップトップ、ネットブック、ノートブック、ウルトラブック、スマートフォン、タブレット、携帯情報端末(PDA)、ウルトラモバイルPC、携帯電話、デスクトップコンピュータ、サーバー、プリンター、スキャナー、モニター、セットトップボックス、エンターテインメント制御ユニット、デジタルカメラ、携帯音楽プレーヤー、又はデジタルビデオレコーダーであってもよい。更なる実施態様では、コンピュータ装置900は、データを処理する任意の他の電子装置であってもよい。
【0086】
いくつかの命令を格納した機械可読媒体を含み得るコンピュータプログラム製品又はソフトウェアとして提供され得、その命令を使用してコンピュータシステム(又は、他の電子装置)をプログラムし、一実施形態によるプロセスを実行することができる。機械可読媒体は、マシン(例えば、コンピュータ)によって読み取り可能な形式で情報を格納又は送信するためのあらゆるメカニズムを含む。例えば、機械可読(例えば、コンピュータ可読)媒体は、機械(例えば、コンピュータ)可読記憶媒体(例えば、読み取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリ装置等)、機械(例えば、コンピュータ)可読伝送媒体(電気信号、光信号、音響信号、他の形式の伝播信号(赤外線信号、デジタル信号等))等を含む。
【0087】
図10は、マシンに本明細書に記載の方法論のいずれか1つ又は複数を実行させるための命令のセットが実行され得るコンピュータシステム1000の例示的な形態のマシンの図表現を示す。代替実施形態では、マシンは、ローカルエリアネットワーク(LAN)、イントラネット、エクストラネット、又はインターネット内の他のマシンに接続(例えば、ネットワーク化)することができる。マシンは、クライアントサーバーネットワーク環境のサーバー又はクライアントマシンの能力で、又はピアツーピア(又は分散)ネットワーク環境のピアマシンとして動作し得る。マシンは、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、携帯情報端末(PDA)、携帯電話、Webアプライアンス、サーバー、ネットワークルーター、スイッチ又はブリッジ、或いはそのマシンで行われる動作を指定する命令のセット(順次又は他の方法で)を実行できるマシンであり得る。さらに、単一のマシンのみが示されているが、「マシン」という用語は、命令のセット(又は、複数のセット)を個別又は共同で実行して、本明細書で説明する方法論のいずれか1つ又は複数の命令を実行するマシン(例えば、コンピュータ)の集合も含むものとする。
【0088】
例示的なコンピュータシステム1000は、バス1030を介して互いに通信する、プロセッサ1002、メインメモリ1004(例えば、読み取り専用メモリ(ROM)、フラッシュメモリ、同期DRAM(SDRAM)又はラムバスDRAM(RDRAM)等のダイナミックランダムアクセスメモリ(DRAM))、スタティックメモリ1006(例えば、フラッシュメモリ、スタティックランダムアクセスメモリ(SRAM)等)、及びセカンダリメモリ1018(例えば、データストレージ装置)を含む。
【0089】
プロセッサ1002は、マイクロプロセッサ、中央処理装置等の1つ又は複数の汎用処理装置を表す。より具体的には、プロセッサ1002は、複雑命令セットコンピュータ計算(CISC)マイクロプロセッサ、縮小命令セット計算(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、他の命令セットを実装するプロセッサ、又は命令セットの組合せを実装するプロセッサであり得る。プロセッサ1002は、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、ネットワークプロセッサ等の1つ又は複数の専用処理装置であってもよい。プロセッサ1002は、本明細書で説明する動作を実行するための処理ロジック1026を実行するように構成される。
【0090】
コンピュータシステム1000は、ネットワークインターフェイス装置1008をさらに含み得る。コンピュータシステム1000は、ビデオ表示ユニット1010(例えば、液晶ディスプレイ(LCD)、発光ダイオードディスプレイ(LED)、又は、陰極線管(CRT))、英数字入力装置1012(例えば、キーボード)、カーソル制御装置1014(例えば、マウス)、及び信号生成装置1016(例えば、スピーカ)も含み得る。
【0091】
二次メモリ1018は、本明細書で説明する方法論又は機能の1つ又は複数の命令を具体化する1つ又は複数の命令セット(例えば、ソフトウェア1022)が格納されるコンピュータアクセス可能な記憶媒体(又は、より具体的にはコンピュータ可読記憶媒体)1032を含み得る。ソフトウェア1022はまた、コンピュータシステム1000によるそのソフトウェアの実行中に、メインメモリ1004内及び/又はプロセッサ1002内に完全に又は少なくとも部分的に常駐し得、メインメモリ1004及びプロセッサ1002はまた、機械可読記憶媒体を構成する。ソフトウェア1022はさらに、ネットワークインターフェイス装置1008を介してネットワーク1020上で送信又は受信され得る。
【0092】
例示的な実施形態では、機械アクセス可能な記憶媒体1032を単一の媒体として示しているが、「機械可読記憶媒体」という用語は、1つ又は複数の命令セットを格納する単一の媒体又は複数の媒体(例えば、集中型又は分散型データベース、及び/又は関連するキャッシュ及びサーバー)を含むと解釈すべきである。「機械可読記憶媒体」という用語はまた、マシンによる実行のための命令のセットを記憶又は符号化することができ、且つマシンに1つ又は複数の実施形態のいずれかを実行させる任意の媒体を含むものとして解釈されるものとする。従って、「機械可読記憶媒体」という用語は、限定ではないが、固体メモリ、並びに光学媒体及び磁気媒体を含むと解釈されるものとする。
【0093】
一実施態様では、集積回路(IC)チップにおける方法は、ICチップの第1の回路に周期的信号を供給するステップと、第1の回路の位相ロックループ(PLL)回路を用いて、周期的信号と、PLL回路に供給される供給電圧との両方に基づいてクロック信号を生成するステップと、第2の回路を使用して、プロセッサのために要求される周波数、周期的信号の周波数、又はPLL回路における制御電圧のレベルのうちの1つを、予め規定された閾値レベルに基づいて評価を行うステップと、評価に基づく制御信号で供給電圧を調整するステップであって、制御信号に応答して供給電圧のレベルを自動的に変更するステップを含む、調整するステップと、を含む。
【0094】
一実施形態では、周期的信号は、外部ソースからICチップに供給されるアナログ信号である。別の実施形態では、評価を行うステップは、プロセッサのために要求される周波数がクロック信号の予め規定された閾値周波数よりも大きいことを検出するステップを含み、予め規定された閾値周波数は供給電圧の現在のレベルに対応する。この方法は、第1の回路を用いて、プロセッサのために要求される周波数に従ってクロック信号の周波数を増大させるステップをさらに含む。別の実施形態では、評価を行うステップは、周期的信号の周波数が周期的信号の予め規定された閾値周波数未満であることを検出するステップを含み、予め規定された閾値周波数はクロック信号の現在の周波数に対応する。別の実施形態では、評価を行うステップは、PLL回路における制御電圧が制御電圧の予め規定された閾値レベルよりも大きいことを検出するステップを含み、予め規定された閾値レベルは供給電圧の現在のレベルに対応する。別の実施形態では、評価は、パラメータの閾値レベルに対応する予め規定された基準情報にさらに基づいて実行され、各閾値レベルが異なるそれぞれの供給電圧のレベルを有し、パラメータは、要求されるクロック周波数パラメータ、周期的信号周波数パラメータ、又は制御電圧レベルパラメータのうちの1つを含む。
【0095】
別の実施形態では、方法は、第2の回路を用いて、オーバークロック方式の1つ又は複数のパラメータにアクセスするステップと、1つ又は複数のパラメータに基づいて第1の回路に信号を送り、クロック信号の周波数に対する一連のインクリメンタル式増大を行うステップをさらに含む。別の実施形態では、1つ又は複数のパラメータは、インクリメンタル式周波数増大の大きさ、インクリメンタル式周波数増大の持続時間、又はクロック信号の最終的な目標周波数のうちの1つを指定する。別の実施形態では、この方法は、VR回路を用いて、クロック信号の周波数に対する一連のインクリメンタル式増大の間に、供給電圧のレベルを自動的に上げるステップをさらに含む。別の実施形態では、第1の回路は第1の基準クロック生成回路であり、第2の回路は第1の制御回路であり、この方法は、クロック信号を第2の基準クロック生成回路に供給するステップと、第2の基準クロック生成回路を用いて、クロック信号に基づいて第2のクロック信号を生成するステップと、クロック信号の周波数に対する一連のインクリメンタル式増大の間に、第2の制御回路に信号を送って、第2のクロック信号の周波数に対する一連のインクリメンタル式変更を行うステップと、をさらに含む。別の実施形態では、オーバークロック方式は、第1のオーバークロック方式であり、第2のクロック信号の周波数に対する一連のインクリメンタル式変更は、第2のオーバークロック方式に基づく。別の実施形態では、第2のオーバークロック方式は、第2のクロック信号の周波数への増大を少なくとも部分的に軽減し、そうでなければこれはクロック信号の周波数に対する一連のインクリメンタル式増大を生じさせる。別の実施形態では、この方法は、クロック信号に基づいてICチップのプロセッサを動作させるステップをさらに含む。
【0096】
本明細書では、基準クロック信号を生成するための技術及びアーキテクチャについて説明している。の説明では、説明の目的で、特定の実施形態の完全な理解を与えるために、多くの特定の詳細が記載されている。しかしながら、当業者には、特定の実施形態がこれらの特定の詳細なしで実施できることが明らかであろう。他の例では、説明が不明瞭になるのを避けるために、構造及び装置はブロック図の形式で示している。
【0097】
本明細書における「一実施形態」又は「実施形態」への言及は、実施形態に関連して説明する特定の特徴、構造、又は特性が、本発明の少なくとも1つの実施形態に含まれることを意味する。本明細書の様々な場所での「一実施形態では」という句の出現は、必ずしも全てが同じ実施形態を指しているわけではない。
【0098】
本明細書の詳細な説明のいくつかの部分は、コンピュータメモリ内のデータビットに対する操作のアルゴリズム及びシンボル表現に関して提示している。これらのアルゴリズムの説明及び表現は、コンピュータ技術の当業者が自分たちの仕事の内容を他の当業者に最も効果的に伝えるために使用する手段である。アルゴリズムは、ここでは、一般に、所望の結果につながる自己矛盾のない一連のステップであると考えられる。ステップは、物理量の物理的な操作を必要とするものである。通常、必ずというわけではないが、これらの量は、保存、転送、結合、比較、他の操作が可能な電気信号又は磁気信号の形態をとる。これらの信号をビット、値、要素、シンボル、文字、用語、数値等と呼ぶことは、主に一般的な使用の理由から、時々便利であることが証明されている。
【0099】
しかしながら、これら及び同様の用語の全てが、適切な物理量に関連付けられるべきであり、これらの量に適用される単に便利なラベルであることを心に留めておくべきである。本明細書の議論から明白であると特に明記されていない限り、詳細な説明全体を通して、「処理」又は「計算」又は「算出」又は「決定」又は「表示」等の用語を利用する議論は、コンピュータシステムのレジスタ及びメモリ内の物理(電子)量として表されるデータを、コンピュータシステムのメモリ又はレジスタ内(又は他のそのような情報の保存、送信、又は表示装置内)の物理量として同様に表される他のデータに操作及び変換するコンピュータシステム又は類似の電子計算装置のアクション及びプロセスを指す。
【0100】
特定の本明細書の動作を実行するための機器にも関する。この機器は、必要な目的のために特別に構築してもよく、又はコンピュータに格納されたコンピュータプログラムによって選択的にアクティブ化又は再構成される汎用コンピュータを含んでもよい。このようなコンピュータプログラムは、フロッピーディスク、光ディスク、CD−ROM、光磁気ディスク、読み取り専用メモリ(ROM)、ダイナミックRAM(DRAM)等のランダムアクセスメモリ(RAM)、EPROM、EEPROM、磁気カード、光カード、又は電子命令を格納するのに適した、コンピュータシステムバスに接続された任意のタイプの媒体を含む任意のタイプのディスク等の、ただしこれらに限定されないコンピュータ可読記憶媒体に格納され得る。
【0101】
本明細書に提示されるアルゴリズム及び表示は、特定のコンピュータ又は他の機器に本質的に関連するものではない。様々な汎用システムは、本明細書の教示に従ってプログラムと共に使用することができ、又は必要な方法ステップを実行するためのより専門的な機器を構築することが好都合であることが判明する場合がある。これらの様々なシステムに必要な構造は、本明細書の説明から明らかになろう。さらに、ある特定のプログラミング言語を参照して説明していない。本明細書で説明するようなそのような実施形態の教示を実施するために、様々なプログラミング言語を使用してもよいことが理解されよう。
【0102】
本明細書に説明したことに加えて、開示された実施形態及びその実施態様に対して、それらの範囲から逸脱することなく様々な修正を行うことができる。従って、本明細書の説明及び例は、限定的な意味ではなく、例示的な意味で解釈すべきである。本発明の範囲は、以下の特許請求の範囲を参照することによってのみ評価すべきである。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【国際調査報告】