(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-03-31
(45)【発行日】2022-04-08
(54)【発明の名称】機能的クロックの生成
(51)【国際特許分類】
G06F 1/06 20060101AFI20220401BHJP
G06F 1/08 20060101ALI20220401BHJP
【FI】
G06F1/06 590
G06F1/08 520
【外国語出願】
(21)【出願番号】P 2020108993
(22)【出願日】2020-06-24
【審査請求日】2020-06-24
(32)【優先日】2019-06-25
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】599158797
【氏名又は名称】インフィニオン テクノロジーズ アクチエンゲゼルシャフト
【氏名又は名称原語表記】Infineon Technologies AG
【住所又は居所原語表記】Am Campeon 1-15, 85579 Neubiberg, Germany
(74)【代理人】
【識別番号】100114890
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100165940
【氏名又は名称】大谷 令子
(74)【代理人】
【識別番号】100098501
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100135633
【氏名又は名称】二宮 浩康
(74)【代理人】
【識別番号】100162880
【氏名又は名称】上島 類
(72)【発明者】
【氏名】ウード エルスホルツ
(72)【発明者】
【氏名】レックス コー
【審査官】松浦 かおり
(56)【参考文献】
【文献】特表2013-527920(JP,A)
【文献】特開2004-013820(JP,A)
【文献】特開2013-175026(JP,A)
【文献】特表2009-537077(JP,A)
【文献】特開2018-014630(JP,A)
【文献】特開平09-116425(JP,A)
【文献】特表2005-519367(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 1/04-1/14
H03L 1/00-9/00
(57)【特許請求の範囲】
【請求項1】
機能的クロック発生器であって、前記機能的クロック発生器は、
発振器クロック周波数を有する発振器クロックを生成するように構成されている発振器と、
第1周波数とより高い第2周波数との間で前記発振器クロック周波数をランプ状に変化させるための制御値を生成するように構成されている制御値発生器と、
前記第2周波数を有するPLL(Phase-Locked Loop)クロックを生成するように構成されているPLLと、
前記発振器クロック周波数とPLLクロック周波数とが実質的に等しい場合に、かつ、前記PLLがロック状態に入った後、機能的クロックとしての選択を、前記発振器クロック
から前記PLLクロック
にスイッチングするように構成されているセレクタと、
を有する機能的クロック発生器。
【請求項2】
前記セレクタは、前記PLLがアンロック状態にある場合に、前記機能的クロックとして前記発振器クロックを選択するように構成されている、
請求項1記載の機能的クロック発生器。
【請求項3】
前記セレクタは、前記PLLが不良状態にある場合に、前記機能的クロックとして前記発振器クロックを選択するように構成されている、
請求項1記載の機能的クロック発生器。
【請求項4】
前記セレクタは、前記PLLがロックを逸失した場合に、前記機能的クロックとしての選択を、前記PLLクロックから前記発振器クロックにスイッチングするように構成されている、
請求項1記載の機能的クロック発生器。
【請求項5】
前記制御値発生器は、前記発振器クロック周波数をランプ状に変化させるための前記制御値を、単調に増加する複数のステップで生成するように構成されている、
請求項1記載の機能的クロック発生器。
【請求項6】
前記制御値発生器は、前記発振器クロック周波数をランプ状に変化させるための前記制御値を、単調に減少する複数のステップで生成するように構成されている、
請求項1記載の機能的クロック発生器。
【請求項7】
前記制御値は、前記発振器のトリミングビットを制御する、
請求項1記載の機能的クロック発生器。
【請求項8】
前記制御値発生器は、ステートマシンを有する、
請求項1記載の機能的クロック発生器。
【請求項9】
前記機能的クロック発生器は、さらに、第1発振器クロック周波数を有する第2発振器クロックを生成するように構成されている第2発振器を有し、
前記セレクタは、前記発振器クロックと、前記第2発振器クロックと、前記PLLクロックと、の間で前記機能的クロックとしての選択を行うように構成されている、
請求項1記載の機能的クロック発生器。
【請求項10】
機能的クロックを生成する方法であって、前記方法では、
前記機能的クロックとして、発振器クロック周波数を有する発振器クロックをセレクタによって選択し、
第1周波数から、より高い第2周波数に前記発振器クロック周波数をランプ状に変化させ、
前記発振器クロック周波数が前記第2周波数に達しかつPLL(Phase-Locked Loop)がロック状態に入った後、前記機能的クロックとして、前記PLLのPLLクロックを選択する、
方法。
【請求項11】
さらに、前記PLLがロックを逸失するかまたは不良の場合に、前記セレクタにより、前記機能的クロックとしての選択を前記PLLクロックから前記発振器クロックにスイッチングする、
請求項10記載の方法。
【請求項12】
さらに、前記スイッチングの後、前記第2周波数から前記第1周波数に前記発振器クロック周波数をランプ状に変化させる、
請求項11記載の方法。
【請求項13】
前記ランプ状の変化では、発振器のトリミングビットを制御するための制御値を制御値発生器によって生成する、
請求項12記載の方法。
【請求項14】
前記ランプ状の変化では、前記発振器クロック周波数をランプ状に変化させるための制御値を、単調に増加または減少する複数のステップで制御値発生器によって生成する、
請求項11記載の方法。
【請求項15】
機能的クロックを生成する方法であって、前記方法では、
発振器クロック周波数を有する発振器クロックを発振器によって生成し、
第1周波数とより高い第2周波数との間で前記発振器クロック周波数をランプ状に変化させるための制御値を制御値発生器によって生成し、
前記第2周波数を有するPLLクロックをPLL(Phase-Locked-Loop)によって生成し、
前記発振器クロック周波数とPLLクロック周波数とが実質的に等しい場合に、かつ、前記PLLがロック状態に入った後、セレクタにより、機能的クロックとして選択を、前記発振器クロック
から前記PLLクロック
にスイッチングする、
方法。
【請求項16】
前記スイッチングでは、前記PLLがロックを逸失するかまたは不良の場合に、前記機能的クロックとして選択を、前記PLLクロックから前記発振器クロックにスイッチングする、
請求項15記載の方法。
【請求項17】
前記制御値の前記生成では、単調に増加する複数のステップで前記発振器クロック周波数をランプ状に変化させるための前記制御値を生成する、
請求項15記載の方法。
【請求項18】
前記制御値の前記生成では、単調に減少する複数のステップで前記発振器クロック周波数をランプ状に変化させるための前記制御値を生成する、
請求項15記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
背景技術
機能的クロックスイッチングは、モード変更中などでは、パワーマネージメントシステムの応答能力を上回る電流跳躍を生じさせることがあり、結果的にシステムのリセットまたは障害を生じさせる。この問題に対抗するために、パワーマネージメントシステムは、過剰設定されるか、択一的には、スイッチング中のクロック周波数が、開始周波数から目標周波数へとステップ状に変更される。周波数ステップサイズは、複数のクロック発生器間でスイッチングするか、またはPLL(Phase-Locked Loop)における分周段を制御するかのいずれかによって制御可能である。これらの周波数ステップサイズは、PLLの上限周波数と分周回路における整数のステップ数とによって制限される。分周はオプションであるが、平均クロック周期は、ロー周期クロックとハイ周期クロックとの組み合わせを使用して生成される。結果的に得られる平均電流跳躍は比較的小さいが、ピーク電流跳躍は変化しないままである。したがって、適切な粒度を有する小さな電流跳躍を生成する必要がある。
【図面の簡単な説明】
【0002】
【
図1】本開示の複数の態様による機能的クロック発生器の概略図である。
【
図2】本開示の複数の態様による別の機能的クロック発生器の概略図である。
【
図3】本開示の複数の態様にしたがって、機能的クロックを生成する方法のフローチャートである。
【
図4】本開示の複数の態様にしたがって、機能的クロックを生成する別の方法のフローチャートを示している。
【発明を実施するための形態】
【0003】
本開示は、PLL(Phase-Locked Loop)と、PLLのロッキングフェーズ中に、またはPLLがロックを逸失しているかもしくは不良である場合の動作中に、スタートアップにおいて使用される副次的な発振器と、を有する機能的クロック発生器を対象とする。
【0004】
図1には、本開示の複数の態様による機能的クロック発生器100の概略図が示されている。
【0005】
機能的クロック発生器100は、発振器110、制御値発生器120、PLL(Phase-Locked Loop)130およびセレクタ140を有する。
【0006】
発振器110は、発振器クロック周波数fOSCを有する発振器クロックCLKOSCを生成するように構成されている。発振器110は、製造時に精度についてトリミングされており、またPLL130に対する副次的な発振器である。発振器110は、PLLの周波数精度よりも低い周波数精度を有するが、高精度の発振器は不要であるため、このことは問題の原因にはならない。
【0007】
制御値発生器120は、第1周波数X[MHz]とより高い第2周波数Y[MHz]との間で発振器クロック周波数fOSCをランプ状に変化させるための制御値Cを生成するように構成されている。発振器クロック周波数fOSCは、システムの停止またはリスタートのような場合に、第1周波数X[MHz]および第2周波数Y[MHz]のうちの1つから、第1周波数X[MHz]と第2周波数Y[MHz]との間の任意の周波数へとランプ状に変化させることが可能である。制御値発生器120は、ステートマシンを有していてよい。このステートマシンは、発振器110のトリミングビットを制御してステップサイズを変更するために使用される制御値Cを生成する。
【0008】
初期状態では、発振器クロックCLKOSCが、機能的クロックであり、発振器クロックCLKOSCは、第1周波数X[MHz]でスタートする。制御値発生器120は、単調に増加する複数のステップで、発振器クロック周波数fOSCをランプ状に変化させるための制御値Cを生成するように構成されている。発振器110および制御値発生器120は、パワーマネージメントシステム内に含まれていてよい。
【0009】
PLL130は、第1周波数X[MHz]よりも高い第2周波数Y[MHz]を有するPLLクロックCLKPLLを生成するように構成されている。PLL130は、PLLパラメータ設定のP(プレディバイダ)、N(フィードバックディバイダ)および/またはK(ファイナルディバイダ)によって制御される。これらのPLLパラメータ設定は、PLL130の出力部において、異なるPLLクロック周波数CLKPLLを生成するために変更可能である。PLL制御は公知であり、簡略のため、ここではさらに説明しない。
【0010】
セレクタ140は、発振器クロック周波数fOSCが、PLLクロック周波数fPLLに達するか、または発振器110の不正確さに起因してPLLクロック周波数fPLLよりもわずかに低い周波数に達する場合に、機能的クロックとしての選択を、発振器クロックCLKOSCとより正確なPLLクロックCLKPLLとの間でスイッチングするように構成されている。この点において、発振器クロック周波数fOSCとPLLクロック周波数fPLLとは実質的に等しく、したがって周波数グリッチおよび電流グリッチが低減される。セレクタ140は、PLL130がロック状態に入った後、機能的クロックとしての選択を、発振器クロックCLKOSCからPLLクロックCLKPLLにスイッチングするように構成可能である。セレクタ130は、マルチプレクサであってよく、またPLL130からロック逸失制御信号を受信するように構成されている。
【0011】
この初期状態のスイッチングの後、セレクタ140は、PLL130がアンロック状態または不良状態にある場合に、機能的クロックとしての選択を、PLLクロックCLKPLLから発振器クロックCLKOSCにスイッチングするように構成可能である。アンロック状態は、PLL130がロックを逸失した場合に発生する。不良状態は、PLL130が、機能的クロックとして使用するのには品質が不十分である場合に発生し得る。発振器クロックCLKOSCは、システムスタートアップ時のランプ状の変更の結果、Y[MHz]の発振器周波数fOSCにとどまっている可能性がある。スイッチングされて発振器クロック周波数fOSCに戻った後、システムの停止またはリスタートのような場合に、上記のように、第2周波数Y[MHz]から第1周波数X[MHz]に、またはこれらの間の周波数に、単調に減少する複数のステップで、発振器クロック周波数fOSCをランプ状に戻すための制御値Cを生成するように制御値発生器120は構成可能である。
【0012】
制御値発生器120、PLL130のパラメータ、および、セレクタ140は、ハードウェア、ソフトウェアまたはファームウェアからのパワー増大/減少制御信号によって制御可能である。
【0013】
図2には、本開示の複数の態様による別の機能的クロック発生器200の概略図が示されている。
【0014】
機能的クロック発生器200は、この機能的クロック発生器200が、第2発振器210と、第2発振器210のトリミングビットを制御するトリム値Tを生成するように構成されているトリム値発生器250と、を有することを除いて、
図1の機能的クロック発生器と同様である。第2発振器210は、第1発振器クロック周波数X[MHz]と実質的に等しい周波数f
OSC2を有する第2発振器クロックCLK
OSC2を生成するように構成されている。第2発振器210は、発振器110とは異なるパワードメイン上にあってよい。この第2発振器210は、低パワーモード中に使用可能である。
【0015】
セレクタ240は、機能的クロックとしての選択を、発振器クロックCLKOSCと、第2発振器クロックCLKOSC2と、PLLクロックCLKPLLと、の間で行うように構成されている。したがってセレクタ240は、セレクタ140の場合のように2つのクロック(PLLクロックCLKPLLと発振器クロックCLKOSCとの)間ではなく、3つのクロック間で選択するように構成されている。セレクタ240は、セレクタ140と同様にマルチプレクサであってよい。
【0016】
図3には、本開示の複数の態様にしたがい、機能的クロックを生成する方法のフローチャート300が示されている。
【0017】
ステップ310では、機能的クロックとして、発振器クロック周波数fOSCを有する発振器クロックCLKOSCをセレクタ140によって選択する。この選択は、システムスタートアップ時に行うことでき、発振器クロックCLKOSCは、X[MHz]の第1発振器クロック周波数fOSCでスタートする。またこの選択は、PLL130がロックを逸失するかまた不良である場合に行ってもよい。
【0018】
ステップ320では、第1周波数X[MHz]から、より高い第2周波数Y[MHz]に発振器クロック周波数fOSCをランプ状に変化させる。このランプ状の変化は、PLL130が、アンロック状態からロック状態に移行する過程にある場合に行ってよい。同様に、発振器クロック周波数fOSCは、システムの停止またはリスタートのような場合に、第1周波数X[MHz]および第2周波数Y[MHz]のうちの1つから、第1周波数X[MHz]と第2周波数Y[MHz]との間の任意の周波数へとランプ状に変化させることが可能である。発振器クロック周波数fOSCは、発振器のトリミングビットを制御するための制御値Cを使用してランプ状に変化させられる。発振器クロック周波数のランプの精度は重要ではないが、発振器クロックのランプは、周波数ステップが、前に定めた複数のパラメータ内にあるように単調に増加または減少すべきである。
【0019】
ステップ330では、発振器クロック周波数fOSCが第2周波数Y[MHz]に達しかつPLL130がロック位置にある場合に、機能的クロックとして、PLL130のより正確なPLLクロックCLKPLLを選択する。さらに、スイッチングの後、PLLのロックが逸失するかまたはPLLが不良の場合に、この発振器クロック周波数は、第2周波数Y[MHz]から第1周波数X[MHz]にスイッチング可能である。
【0020】
図4には、本開示の複数の態様にしたがい、機能的クロックを生成する別の方法のフローチャートが示されている。
【0021】
ステップ410では、発振器クロック周波数fOSCを有する発振器クロックCLKOSCを発振器110によって生成する。
【0022】
ステップ420では、第1周波数X[MHz]とより高い第2周波数Y[MHz]との間で発振器クロック周波数fOSCをランプ状に変化させるための制御値Cを制御値発生器120によって生成する。同様に、発振器クロック周波数fOSCは、システムの停止またはリスタートのような場合に、第1周波数X[MHz]および第2周波数Y[MHz]のうちの1つから、第1周波数X[MHz]と第2周波数Y[MHz]との間の任意の周波数へとランプ状に変化させることが可能である。制御値Cの生成には、単調に増加する複数のステップで、発振器クロック周波数fOSCをランプ状に変化させるための制御値Cの生成が含まれていてよい。同様に、制御値Cの生成には、単調に減少する複数のステップで発振器クロック周波数fOSCをランプ状に変化させるための制御値Cの生成が含まれていてよい。
【0023】
ステップ430では、第2周波数Y[MHz]を有するPLLクロックCLKPLLをPLL130によって生成する。
【0024】
ステップ440では、発振器クロック周波数(fOSCまたはfOSC2)とPLLクロック周波数fPLLとが実質的に等しい場合に、セレクタ240により、機能的クロックとして選択のスイッチングを、発振器クロック(CLKOSCまたはCLKOSC2)とPLLクロックCLKPLLとの間で行う。このスイッチングは、PLL130がロック状態に入った後、機能的クロックとしての選択が、発振器CLKOSCクロックからPLLクロックCLKPLLにスイッチングすることを含んでいてよい。このスイッチングは、PLL130がロックを逸失するまたは不良の場合に、機能的クロックとしての選択が、PLLクロックCLKPLLから発振器クロックCLKOSCにスイッチングすることを含んでいてよい。
【0025】
ここで開示した機能的クロック発生器および方法が有利であるのは、精度についての要求が厳しくないことにより、発振器クロックCLKOSCが、単純な発振器であってよいという点である。発振器クロックCLKOSCの周波数のランプ状の変化のステップは、大きさまたは小ささが任意であってよく、また制御が容易であるが、周波数のランプ状の変化は、単調に増加または減少すべきである。発振器クロックCLKOSCの周波数のランプ状の変化のステップは、P(プレディバイダ)、N(フィードバックディバイダ)および/またはK(ファイナルディバイダ)ステップサイズの制限を有しない。また発振器クロックCLKOSCの周波数のランプ状の変化は、PLLロックと並列に行われてよい。
【0026】
本開示の技術はまた、以下の実施例において説明可能である。
【0027】
実施例1.機能的クロック発生器であって、この機能的クロック発生器は、発振器クロック周波数を有する発振器クロックを生成するように構成されている発振器と、第1周波数とより高い第2周波数との間で発振器クロック周波数をランプ状に変化させるための制御値を生成するように構成されている制御値発生器と、第2周波数を有するPLL(Phase-Locked Loop)クロックを生成するように構成されているPLLと、発振器クロック周波数とPLLクロック周波数とが実質的に等しい場合に、機能的クロックとしての選択を、発振器クロックとPLLクロックとの間でスイッチングするように構成されているセレクタと、を有する。
【0028】
実施例2.PLLがロック状態に入った後、機能的クロックとしての選択を、発振器クロックからPLLクロックにスイッチングするようにセレクタが構成されている、実施例1の機能的クロック発生器。
【0029】
実施例3.PLLがアンロック状態にある場合に、機能的クロックとして発振器クロックを選択するようにセレクタが構成されている、実施例1~2の任意の組み合わせの機能的クロック発生器。
【0030】
実施例4.PLLが不良状態にある場合に、機能的クロックとして発振器クロックを選択するようにセレクタが構成されている、実施例1~3の任意の組み合わせの機能的クロック発生器。
【0031】
実施例5.PLLがロックを逸失した場合に、機能的クロックとしての選択を、PLLクロックから発振器クロックにスイッチングするようにセレクタが構成されている、実施例1~4の任意の組み合わせの機能的クロック発生器。
【0032】
実施例6.発振器クロック周波数をランプ状に変化させるための制御値を、単調に増加する複数のステップで生成するように制御値発生器が構成されている、実施例1~5の任意の組み合わせの機能的クロック発生器。
【0033】
実施例7.発振器クロック周波数をランプ状に変化させるための制御値を、単調に減少する複数のステップで生成するように制御値発生器が構成されている、実施例1~6の任意の組み合わせの機能的クロック発生器。
【0034】
実施例8.発振器のトリミングビットが制御値によって制御される、実施例1~7の任意の組み合わせの機能的クロック発生器。
【0035】
実施例9.制御値発生器は、ステートマシンを有する、実施例1~8の任意の組み合わせの機能的クロック発生器。
【0036】
実施例10.さらに、第1発振器クロック周波数を有する第2発振器クロックを生成するように構成されている第2発振器を有し、発振器クロックと、第2発振器クロックと、PLLクロックと、の間で機能的クロックとして選択を行うようにセレクタが構成されている、実施例1~9の任意の組み合わせの機能的クロック発生器。
【0037】
実施例11.機能的クロックを生成する方法であって、この方法では、機能的クロックとして、発振器クロック周波数を有する発振器クロックをセレクタによって選択し、第1周波数から、より高い第2周波数に発振器クロック周波数をランプ状に変化させ、発振器クロック周波数が第2周波数に達しかつPLL(Phase-Locked Loop)がロック位置にある場合に、機能的クロックとして、PLLのPLLクロックを選択する。
【0038】
実施例12.さらに、PLLがロックを逸失するかまたは不良の場合に、セレクタにより、機能的クロックとしての選択をPLLクロックから発振器クロックにスイッチングする、実施例11の方法。
【0039】
実施例13.さらに、スイッチングの後、第2周波数から第1周波数に発振器クロックをランプ状に変化させる、実施例11~12の任意の組み合わせの方法。
【0040】
実施例14.ランプ状の変化では、発振器のトリミングビットを制御するための制御値を制御値発生器によって生成する、実施例11~13の任意の組み合わせの方法。
【0041】
実施例15.ランプ状の変化では、発振器クロック周波数をランプ状に変化させるための制御値を、単調に増加または減少する複数のステップで制御値発生器によって生成する、実施例11~14の任意の組み合わせの方法。
【0042】
実施例16.機能的クロックを生成する方法であって、この方法では、発振器クロック周波数を有する発振器クロックを発振器によって生成し、第1周波数とより高い第2周波数との間で発振器クロック周波数をランプ状に変化させるための制御値を制御値発生器によって生成し、第2周波数を有するPLLクロックをPLL(Phase-Locked-Loop)によって生成し、発振器クロック周波数とPLLクロック周波数とが実質的に等しい場合、セレクタにより、機能的クロックとしての選択を、発振器クロックとPLLクロックとの間でスイッチングする。
【0043】
実施例17.スイッチングでは、PLLがロック状態に入った後、機能的クロックとしての選択を、発振器クロックからPLLクロックにスイッチングする、実施例16の方法。
【0044】
実施例18.スイッチングでは、PLLがロックを逸失するかまたは不良の場合に、機能的クロックとしての選択を、PLLクロックから発振器クロックにスイッチングする、実施例16~17の任意の組み合わせの方法。
【0045】
実施例19.制御値の生成では、単調に増加する複数のステップで発振器クロック周波数をランプ状に変化させるための制御値を生成する、実施例16~18の任意の組み合わせの方法。
【0046】
実施例20.制御値の生成では、単調に減少する複数のステップで発振器クロック周波数をランプ状に変化させるための制御値を生成する、実施例16~19の任意の組み合わせの方法。
【0047】
上述のことは、例示的な実施形態に関連して説明されているが、「例示的」という語は、最善または最適ではなく、単なる例を意味することを明らかである。したがって本開示は、本開示の範囲内に含まれ得る択一的な形態、変更形態および等価形態を含むことを意図している。
【0048】
ここでは特定の実施形態を例示しかつ説明して来たが、多種多様な択一的かつ/または等価的な実装は、本開示の範囲を逸脱することなく、ここに示しかつ説明した特定の実施形態を置き換え得ることを当業者は理解されたい。本開示は、ここで説明した特定の実施形態の任意の適合化または変化形態を含むことを意図している。