(57)【要約】  複数のブロックを含むPHYインターフェースの動作状態を変更することであり、PHYインターフェースの動作状態を変更することが、PHYインターフェースの動作状態を変更するための複数のブロックの所望の機構設定を指示するパラメータを受信することと、シーケンスにおいて所望の機構設定を有効にすることであって、シーケンスは機構設定間に依存性に基づき、依存性は依存性テーブルに記憶される、有効にすることとを含む。
2017527038.tif 000002
【特許請求の範囲】
【請求項１】
複数のブロックを含むPHYインターフェースの動作状態を変更するステップを含み、PHYインターフェースの動作状態を前記変更するステップは、
前記PHYインターフェースの前記動作状態を変更するための前記複数のブロックの所望の機構設定を指示するパラメータを受信するステップと、
シーケンスにおいて前記所望の機構設定を有効にするステップであって、前記シーケンスは前記機構設定間の依存性に基づき、前記依存性は依存性テーブルに記憶される、有効にするステップと
を含む、方法。
【請求項２】
機構ウェイクアップ有限ステートマシン(FSM)が、PHYインターフェースの動作状態を前記変更するステップを実行するように構成される、請求項1に記載の方法。
【請求項３】
前記機構ウェイクアップFSMはハードウェアにおいて構成される、請求項2に記載の方法。
【請求項４】
前記依存性テーブルはレジスタのセットにおいて実装され、前記依存性テーブルのエントリはソフトウェアプログラム可能である、請求項1に記載の方法。
【請求項５】
前記依存性に基づいて同時にオンに切り替えることができる機構を有するブロックのグループを形成するステップをさらに含む、請求項1に記載の方法。
【請求項６】
各グループのブロックのウェイクアップ時間に基づいてブロックの前記グループ間の遅延を設定するステップをさらに含む、請求項5に記載の方法。
【請求項７】
前記複数のブロックからの少なくとも1つのブロックのどの機構設定を変更すべきか判断するために、現在の機構設定を前記複数のブロックの前記所望の機構設定と比較するステップをさらに含む、請求項1に記載の方法。
【請求項８】
トラフィックストールを必要としない前記少なくとも1つのブロックのための前記所望の機構設定を有効にするステップと、
前記トラフィックストールを待ち、かつ前記トラフィックストール後に生じる必要がある前記少なくとも1つのブロックの前記機構設定を有効にするステップと
をさらに含む、請求項7に記載の方法。
【請求項９】
前記PHYインターフェースの前記動作状態は、性能状態および電力状態を含む、請求項1に記載の方法。
【請求項１０】
前記電力状態の各電力状態のウェイクアップ時間を計算し、かつ前記ウェイクアップ時間をウェイクアップ時間ルックアップテーブルに記憶するステップをさらに含む、請求項9に記載の方法。
【請求項１１】
前記PHYインターフェースの前記性能状態を変更するための手順を実行するステップをさらに含む、請求項9に記載の方法。
【請求項１２】
周波数切替FSMが、前記PHYインターフェースの前記性能状態を変更するための前記手順を実行するように構成される、請求項11に記載の方法。
【請求項１３】
前記PHYインターフェースの前記電力状態を変更するための手順を実行するステップをさらに含む、請求項9に記載の方法。
【請求項１４】
低電力切替FSMが、前記PHYインターフェースの前記電力状態を変更するための前記手順を実行するように構成される、請求項13に記載の方法。
【請求項１５】
メモリコントローラから所望の周期を受信するステップと、
前記受信された所望の周期に基づいて性能状態を選択し、性能状態テーブルを使用するステップと
をさらに含む、請求項1に記載の方法。
【請求項１６】
前記選択された性能状態のための所望の機構設定を指示する前記パラメータを決定し、かつ送信するステップをさらに含む、請求項15に記載の方法。
【請求項１７】
メモリコントローラから、要求されたウェイクアップ時間を受信するステップと、
前記ウェイクアップ時間の要件を満たす最も低い電力状態を選択するステップと
をさらに含む、請求項1に記載の方法。
【請求項１８】
前記選択された最も低い電力状態に基づいて前記所望の機構設定を決定するステップと、
前記少なくとも1つのブロックをオフに切り替えるために、機構ウェイクアップFSMに前記所望の機構設定を送信するステップと
をさらに含む、請求項17に記載の方法。
【請求項１９】
前記ウェイクアップ時間に基づいて、前記少なくとも1つのブロックをオンに戻す時点の前記所望の機構設定を決定するステップと、
前記少なくとも1つのブロックをオフに切り替えるために、前記機構ウェイクアップFSMに前記所望の機構設定を送信するステップと
をさらに含む、請求項18に記載の方法。
【請求項２０】
PHYインターフェースの動作状態を変更するためのステートマシン装置であって、
前記PHYインターフェースの前記動作状態を変更するための複数のブロックの機構設定を指示するパラメータを受信することと、
シーケンスにおいて前記機構設定を有効にすることであって、前記シーケンスは前記機構設定間の依存性に基づき、前記依存性は依存性テーブルに記憶される、有効にすることと
を行うように構成される、ステートマシン装置。
【請求項２１】
前記依存性に基づいて同時にオンに切り替えることができる機構を有するブロックのグループを形成することと、各グループのブロックのウェイクアップ時間に基づいてブロックの前記グループ間の遅延を設定することとを行うように構成される機構ウェイクアップユニットをさらに備える、請求項20に記載の装置。
【請求項２２】
PHYインターフェースの動作状態を変更するための装置であって、
前記PHYインターフェースの前記動作状態を変更するための複数のブロックの所望の機構設定を指示するパラメータを受信するための手段と、
シーケンスにおいて前記所望の機構設定を有効にするための手段であって、前記シーケンスは前記機構設定間の依存性に基づき、前記依存性は依存性テーブルに記憶される、有効にするための手段と
を備える、装置。
【請求項２３】
前記複数のブロックからの少なくとも1つのブロックのどの機構設定を変更すべきか判断するために、現在の機構設定を前記複数のブロックの前記所望の機構設定と比較するための手段をさらに備える、請求項22に記載の装置。
【請求項２４】
トラフィックストールを必要としない前記少なくとも1つのブロックのための前記機構設定を有効にするための手段と、
前記トラフィックストールを待ち、かつ前記トラフィックストール後に生じる必要がある前記少なくとも1つのブロックの前記機構設定を有効にするための手段と
をさらに備える、請求項23に記載の装置。
【請求項２５】
周波数および電力管理システムであって、
周波数しきい値、ウェイクアップ時間要件、相互依存性および電力要件を含む、複数のブロックの機構および特性の表現を有する複数のテーブルと、
メモリコントローラからの要求に基づいて、前記複数のブロックの機構設定を、性能状態および電力状態を含むPHYインターフェースの複数の動作状態のうちのある動作状態に切り替えるように構成されるシーケンシングユニットと
を備える、周波数および電力管理システム。
【請求項２６】
前記シーケンシングユニットは、前記性能状態または前記電力状態において使用される前記機構設定を有効にし、前記性能状態または前記電力状態において使用されない前記機構設定を無効にするプロセスを進めるステートマシンにおいて構成されるハードウェアである、請求項25に記載のシステム。
【請求項２７】
前記シーケンシングユニットは、
前記依存性に基づいて同時にオンに切り替えることができる機構設定を有するブロックのグループを形成することと、各グループのブロックのウェイクアップ時間要件に基づいてブロックの前記グループ間の遅延を設定することとを行うように構成される機構ウェイクアップユニットをさらに備える、請求項25に記載のシステム。
【請求項２８】
前記シーケンシングユニットは、
前記電力状態の各電力状態のウェイクアップ時間を計算することと、前記ウェイクアップ時間をウェイクアップ時間ルックアップテーブルに記憶することとを行うように構成されるウェイク時間計算ユニットを含む、請求項25に記載のシステム。
【請求項２９】
前記シーケンシングユニットは、
前記PHYインターフェースの前記性能状態を変更するための手順を実行するように構成される周波数切替ユニットを含む、請求項25に記載のシステム。
【請求項３０】
前記シーケンシングユニットは、
前記PHYインターフェースの前記電力状態を変更するための手順を実行するように構成される低電力切替ユニットを含む、請求項25に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はメモリ制御シーケンサに関し、より詳細には、周波数および電力の変更のためのメモリ制御シーケンシングに関する。
【背景技術】
【０００２】
ダブルデータレート(DDR)物理(PHY)インターフェースモジュール内の周波数および電力管理は、DDR-PHYが高いピン数を有し、その結果として動的電力が高くなる可能性があるので、次第に複雑になりつつある。また、DDR-PHYは高い周波数要件も有し、低電力DDR(LPDDR)仕様をサポートするために、広い周波数範囲にわたってデータを送信および受信しなければならない。高周波数データ通信は、付加的な高性能回路、オンダイターミネーション、可変電圧出力ハイ(VOH)などによって容易にされる。しかしながら、高周波数においてデータを送信および受信するために必要とされる機構(feature)のうちの多くは、低周波数においては不要である。それゆえ、周波数にわたって優劣のない電力使用プロファイルを維持するのに、機構のスケーリングが不可欠である。言い換えると、高周波数データ通信を可能にするために使用されるいくつかの機構は、低周波数データ通信の場合に不要である。DDR PHYインターフェースの前世代では、周波数モードと電力モードとの切替を制御するために、異なるタイプのアドホックな論理ブロックが使用された。しかしながら、周波数および電力制御ブロックのためのアドホックな制御ロジックを追加することは、PHYインターフェースモジュールが複雑になることに起因して、処理するのが非常に難しくなる。PHY機構の数、および機構間の相互依存性は、これらの機構を制御するのに、容易に拡張可能なアーキテクチャが極めて望ましいという程度まで高まっている。
【発明の概要】
【課題を解決するための手段】
【０００３】
本発明は、複数のブロックを含むPHYインターフェースの動作状態を変更することを提供する。
【０００４】
一実施形態では、方法が開示される。本方法は、複数のブロックを含むPHYインターフェースの動作状態を変更することを含み、PHYインターフェースの動作状態を変更することは、PHYインターフェースの動作状態を変更するための複数のブロックの所望の機構設定を指示するパラメータを受信することと、シーケンスにおいて所望の機構設定を有効にすることであって、本シーケンスは機構設定間の依存性に基づき、依存性は依存性テーブルに記憶される、有効にすることとを含む。
【０００５】
別の実施形態では、PHYインターフェースの動作状態を変更するためのステートマシン装置が開示される。ステートマシン装置は、PHYインターフェースの動作状態を変更するための複数のブロックの機構設定を指示するパラメータを受信することと、シーケンスにおいて所望の機構設定を有効にすることであって、シーケンスは機構設定間に依存性に基づき、依存性は依存性テーブルに記憶される、有効にすることとを行うように構成される。
【０００６】
別の実施形態では、PHYインターフェースの動作状態を変更するための装置が開示される。本装置は、PHYインターフェースの動作状態を変更するための複数のブロックの機構設定を指示するパラメータを受信するための手段と、シーケンスにおいて所望の機構設定を有効にするための手段であって、シーケンスは機構設定間に依存性に基づき、依存性は依存性テーブルに記憶される、有効にするための手段とを含む。
【０００７】
さらに別の実施形態では、周波数および電力管理システムが開示される。本システムは、周波数しきい値、ウェイクアップ時間要件、相互依存性および電力要件を含む複数のブロックの機構および特性の表現を有する複数のソフトウェアプログラム可能テーブルと、メモリコントローラからの要求に基づいて、複数のブロックの機構設定を、性能状態および電力状態を含む、PHYインターフェースの複数の動作状態のうちのある動作状態に切り替えるように構成されるシーケンシングユニットとを含む。
【０００８】
本発明の他の特徴および利点は、例として本発明の態様を示す本明細書本文から明らかとなるはずである。
【０００９】
本発明の詳細は、構造と動作との両方に関して、同様の参照番号が同様の部分を指す添付のさらなる図面の検討によって部分的に収集することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態による、システムオンチップ(SoC)内に存在するPHYインターフェースの機能ブロック図である。
【図２】本発明の一実施形態による、周波数および電力マネージャの詳細な機能ブロック図である。
【図３Ａ】本発明の一実施形態による、ウェイクアップ時間、依存性およびストール時間のような対応する特性を含む、動作状態変更のために制御される必要があるブロックの機構のサンプルリストを示す図である。
【図３Ｂ】図3Aに示されるブロックの機構のリストから導出される例示的な性能状態(PRFS)/電力状態(PWRS)を示す図である。
【図４Ａ】各性能状態が複数の電力状態を含み、各電力状態が機構のステータス(有効/無効)を規定する専用機構イネーブルレジスタを有する、複数の性能状態を示す図である。
【図４Ｂ】13の機構のステータスを規定する例示的な機構イネーブルレジスタ(FER)を示す図である。
【図５】本発明の一実施形態による、例示的な機構ウェイク時間テーブル(FWT)を示す図である。
【図６】本発明の一実施形態による、例示的な性能ルックアップテーブルを示す図である。
【図７Ａ】本発明の一実施形態による、周波数および/または電力状態の変更に関するメモリコントローラ要求に基づくシーケンシングロジックを示す機能フロー図である。
【図７Ｂ】本発明の一実施形態による、すべての性能および電力状態テーブルを初期化するためのシーケンシングロジックを示す機能フロー図である。
【図７Ｃ】本発明の一実施形態による、性能状態を変更するための手順を実行するためのシーケンシングロジックを示す機能フロー図である。
【図７Ｄ】本発明の一実施形態による、電力状態を変更するための手順を実行するためのシーケンシングロジックを示す機能フロー図である。
【図７Ｅ】本発明の一実施形態による、ブロックの設定を準備し、動作状態を変更するためのシーケンシングロジックを示す機能フロー図である。
【発明を実施するための形態】
【００１１】
上記のように、DDR-PHYインターフェースモジュールが高いピン数を有し、その結果として動的電力が高くなる可能性があり、広い周波数範囲にわたって機能しなければならないので、DDR-PHYインターフェースモジュールは次第に複雑になりつつある。たとえば、PHYインターフェースは、電力を節約するためにいくつかの異なる通信モードにおいて動作する必要があり、データレートは通信モードごとに異なる。これを行うために、PHYインターフェースを含むシステムオンチップ(SoC)は、メモリとの間で転送されることになるデータ量を評価し、時間通りにタスクを成し遂げることができる最も低いデータレートまたは最も低い電力消費量を有する通信モードを選択する。たとえば、メモリに送信される必要がある、時間的制約がある大量のデータが存在する場合には、SoCは、高データレートおよび/または高電力通信モードを選択する。そうではなく、メモリに送信される必要が少量のデータが存在する場合には、SoCは、電力を節約するために、低データレートおよび/または低電力通信モードを選択する。DDR PHYインターフェースの前世代では、周波数および/または電力のモード間切替を制御するために、アドホックな論理ブロックが使用された。しかしながら、ブロックの周波数および電力制御のためのアドホックな制御ロジックを追加することは、PHYインターフェースモジュールが複雑になることに起因して、処理するのが非常に難しくなる。PHY機構の数、および機構間の相互依存性は、これらの機構を制御するのに、容易に拡張可能なアーキテクチャが極めて望ましいという程度まで高まっている。「周波数」という用語は、データレートを指すために使用される。
【００１２】
本明細書において説明されるようないくつかの実施形態は、インターフェースモジュールの機構を動的に制御することを提供し、インターフェースモジュール内の複数のブロックの機構の特性がテーブルベース構造において規定され、制御される。一実施形態では、機構は、周波数しきい値、ウェイクアップ時間要件、相互依存性、電力要件および他の関連する機構を含む。さらに、一実施形態では、ブロックはミックスドシグナルブロックである。この説明を読んだ後に、様々な実施態様および適用例において本発明を実施する方法が明らかになるであろう。本発明の種々の実施態様が本明細書において説明されるが、これらの実施態様は、単に例として提示され、限定されないことは理解されたい。したがって、種々の実施態様のこの詳細な説明は、本発明の範囲または広さを限定するように解釈されるべきではない。
【００１３】
図1は、本発明の一実施形態による、システムオンチップ(SoC)130上に存在するPHYインターフェース100の機能ブロックである。一実施形態では、PHYインターフェース100は、DDRダイナミックランダムアクセスメモリ(DRAM)140と通信するDDR-PHYインターフェースである。SoC130は、プロセッサ134およびメモリコントローラ132も含む場合がある。
【００１４】
図1の例示される実施形態では、PHYインターフェース100は、周波数および電力マネージャ110と、複数のブロック120とを含む。一実施形態では、ブロックは、限定はしないが、入力レシーバ、マルチプレクサ、基準電圧発生器、バイアス電流発生器、位相同期ループ(PLL)、電流/電圧変換器、較正遅延回路(CDC)、低ドロップアウト(LDO)レギュレータおよび他の同様に構成されたブロックを含む。一実施形態では、周波数および電力マネージャ110はハードウェアにおいて実装される。
【００１５】
図1の例示される実施形態は、テーブル112およびシーケンサ114を含む周波数および電力マネージャ110も示す。一実施形態では、テーブル112は、機構、性能状態および電力状態を規定する制御/ステータスレジスタ(CSR)テーブルである。テーブル112は、ソフトウェアプログラム可能とすることができ、複数のブロック120のための、出力しきい値、ウェイクアップ時間要件、相互依存性、電力要件および他の関連する機構のような、機構およびその性能の表現を含むことができる。テーブル112は、ブート時にプログラムすることができ、それらの値は、その後、再計算することができる。シーケンサ114は、周波数および/または電力の変更に関するメモリコントローラ132からの要求に基づいて、DDR-PHY設定を、新たな周波数状態、新たな電力状態、またはその両方を含む、新たな動作状態に切り替えるためのシーケンシングロジックを含むことができる。詳細には、シーケンサ114は、メモリコントローラ132からの要求に基づいて、ブロック120の動作を変更するために、ブロック120に新たな設定を適用する。たとえば、ブロック120の現在の機構設定によれば、ブロック120は、高性能状態および高電力状態において動作することができる。周波数および電力マネージャ110は、メモリコントローラ132から、低性能状態および低電力状態における動作要求を受信することができる。その結果として、シーケンサ114は、ブロック120の機構に異なる特性(パラメータ)を与えることができ、それにより、ブロック120は、低性能および低電力状態において動作する。周波数および電力マネージャ110は、テーブル112から、機構に適用される特性を決定することができる。シーケンシングロジックは、機構間のタイミングおよび依存性を考慮しながら、新たな性能状態または電力状態において使用される機構を有効にし、新たな性能状態または電力状態において使用されない機構を無効にするプロセスを進める(step through)。一実施形態では、トラフィックがストールされ、切替後の動作状態が効力を生じるまで、周波数および電力切替が、ブロックと、フォアグラウンドにおいてDRAM140との間で送信および受信されるデータとに影響を及ぼさないように、テーブル112およびシーケンサ114の実施態様はバックグラウンドにおいて実行される。一実施形態では、装置(たとえば、この場合にはシーケンサ)は、ブロック(たとえば、ブロック120の1つ)をオンに切り替えるか、またはウェイクアップすることによってそのブロックを有効にすることができ、そのブロックをオフに切り替えることによってブロックを無効にすることができる。別の実施形態では、装置は、ブロックの状態を低電力スタンバイ状態から高電力動作状態に変更することによってそのブロックを有効にすることができ、そのブロックの状態を高電力動作状態から低電力スタンバイ状態に変更することによってブロックを無効にすることができる。また、シーケンサ114は、非ストール機構を別の段階において処理することによってトラフィックストール時間を最小化する。言い換えると、DRAM140との通信に現在関与していないいくつかのブロックの状態を変更しても、DRAM140との間で通信されるトラフィックに影響を及ぼさないので、シーケンサ114は、前もって、これらのブロックの状態を変更することができる。このようにして、シーケンサは、ブロック120のための多数の機構に対する制御信号を生成する。したがって、制御信号は、デバイスの動作状態に応じて異なる設定を有する。
【００１６】
図2は、本発明の一実施形態による、周波数および電力マネージャ110の詳細な機能ブロックである。図1に関して先に説明されたように、周波数および電力マネージャ110は、テーブル112およびシーケンサ114を含む。図2の例示される実施形態では、テーブル112は、性能状態(PRFS)/電力状態(PWRS)テーブル200と、機構ウェイク時間/依存性テーブル202と、性能ルックアップテーブル204とを含み、シーケンサ114は、ウェイク時間計算有限ステートマシン(FSM)210、周波数切替FSM212、低電力切替FSM214、タイマ216および機構ウェイクアップFSM218を含む。例示される実施形態および特許請求の範囲は、テーブルまたはルックアップテーブルという用語を使用するが、テーブルまたはルックアップテーブルの代わりに、動作状態のためのシーケンシングを規定する任意のタイプのデータ構造を使用することができる。いくつかの実施形態では、動作状態のためのシーケンシングに関連する任意の情報のセットを記憶し、決定するために使用することができる。他の実施形態では、リアルタイムシステム変数(たとえば、任意のデータ構造に記憶されない変数)を用いて、周波数切替または低電力切替のためのシーケンシングを与えることができる。
【００１７】
図2の例示的な実施形態では、周波数および電力マネージャ110内の有限ステートマシン(FSM)が、シーケンシャルロジック回路(たとえば、シーケンサ114)を実装し、ハードウェアにおいて構成される。FSMは、有限数の状態のうちの1つにあるとすることができる。しかしながら、FSMは、同時に1つのみの現在状態にある。遷移と呼ばれるトリガイベントまたは条件によって起動されるときに、1つの状態から別の状態に変化することができる。特定のFSMは、その状態のリストと、遷移ごとのトリガ条件とによって規定される。ブロック120の機構またはパラメータを変更するとき、機構ウェイクアップFSM218からブロック120に送信される信号は、非常に時間的制約がある場合がある。ある場合には、機構ウェイクアップFSM218からブロック120にデジタル値が送信される場合があるが、他の場合には、機構ウェイクアップFSM218からブロック120にアナログ信号またはデジタル信号(イネーブル線上に送信されるイネーブル/ウェイクアップ信号など)が送信される場合がある。これらの信号は、非常に時間的制約がある場合がある。したがって、周波数および電力マネージャ110は、ステートマシンとしてハードウェアにおいて実装され、物理的にブロック120に隣接して位置する。対照的に、信号が、ソフトウェアで実施される周波数および電力マネージャによって生成された場合には、信号が、互いに正しい時刻において提示されない場合があるか、または有限ステートマシン実施態様に比べて長い待ち時間を必要とすることになり、性能状態または電力状態の変更を非常に遅く、かつ非効率的にする。
【００１８】
テーブル112に関して、PRFS/PWRSテーブル200は、性能状態および電力状態ごとのブロック120の機構の有効/無効ステータスを規定する。性能状態は、PHYインターフェースが切り替えることができる周波数(たとえば、SoC130からDRAM140にデータを送信するために使用されるデータレート、またはSoC130がDRAM140からデータを受信したデータレート、またはその両方)の状態を規定し、一方、電力状態は、低電力要求に基づいて、PHYインターフェースが切り替わることができる状態を規定する。性能状態および電力状態ごとのブロック120の機構のあらかじめ(たとえば、ブート時に)規定された値は、ブロックの機構の特性評価プロセスを通して特定され、製品動作中に変更されない。機構ウェイク時間/依存性テーブル202は、ウェイクアップ時間および機構間の依存性を保持する。ウェイクアップ時間は、ブロックが、動作の準備をするのに必要とする時間である。たとえば、特定の機構は、安定または調整するのに、ウェイクアップ時間と呼ばれるある時間を要する。依存性は、ある機構が他の機構に依存する時点である。たとえば、遅延同期ループ(DLL)は、電流源をオンに切り替える前ではなく、または電流源およびDLLを同時にオンに切り替えるのではなく、特定の電流源がオンに切り替えられた後にオンに切り替えられることが必要な場合がある。これらの値は、製品特性評価中に決定される場合もあり、通常、標準のチップ動作中に変更されない。性能ルックアップテーブル204は、性能状態と周波数範囲との間のマッピングを規定する。周波数範囲は、SoCとメモリ(たとえば、DRAM)との間で、またはメモリとSoCとの間でデータが通信される異なる周波数またはレートのセットである。たとえば、高性能状態では、レートは高く、低性能状態では、レートは低い。このテーブルは、規定された性能状態のそれぞれに対応するクロック周期を保持する。
【００１９】
シーケンサ114に関して、ウェイク時間計算FSM210は、電力状態の各電力状態のウェイクアップ時間、すなわち、1つの電力状態から別の電力状態にPHYインターフェース(ブロック120を含む)を切り替えるのに要する時間の長さを計算する役割を担う。一実施形態では、ウェイクアップ時間は、PHYインターフェースを非機能電力状態から完全機能状態に切り替えるのに要する時間である。この計算は、ブート時に各性能状態の電力状態ごとに実行される必要がある。この計算結果はレジスタルックアップテーブル(すなわち、電力状態ウェイクアップ時間テーブル)内に保持され、低電力要求遷移中に参照される。
【００２０】
周波数切替(FSW)FSM212は、DDR-PHYインターフェースハンドシェークをサポートし、メモリコントローラ132から受信された要求に基づく。また、FSW FSM212は、新たな性能状態も選択する。FSW FSM212はさらに、新たな性能状態の場合に要求される機構が有効にされるように、機構ウェイクアップFSM218への要求を開始する。周波数切替インターフェース信号は、FSW FSM212とメモリコントローラ132との間で送信および受信される。これらの信号は、後に詳細に説明される少なくともinit_start、init_completeおよびfpm_periodを含む。
【００２１】
低電力(LP)切替FSM214は、LPインターフェース信号をやりとりする。メモリコントローラ132から電力状態変更要求を受信すると、LP切替FSM214は、現在の性能状態内の各電力状態からウェイクアップするために必要とされる時間を調べる。メモリコントローラ132によって要求されるウェイクアップ時間が、電力状態のうちの1つの電力状態のウェイクアップ時間より長い場合には、LP切替FSM214は、現在の電力状態から選択された低電力状態に遷移するために、機構ウェイクアップFSM218への要求を開始する。また、LP切替FSM214はタイマ216を設定し(たとえば、信号pwr_dwn_timeを使用する)、タイマが満了すると(たとえば、信号pwr_dwn_expireを使用する)、メモリコントローラ132によって要求されるウェイクアップ時間前に、PHYを完全機能状態に戻すために、ウェイクアッププロセスが時間内に開始されるようにする。LPインターフェース信号は、LP FSM214とメモリコントローラ132との間で送信および受信される要求/肯定応答(すなわち、req/ack)信号対として規定される。これらの信号は、後に詳細に説明される、少なくともlp_req、lp_ackおよびlp_wakeupを含む。
【００２２】
機構ウェイクアップFSM218は、機構イネーブルレジスタ(FER)220に従ってブロック120の機構をオン/オンに切り替えるために、FSW FSM212およびLP切替FSM214から要求を受信する。機構ウェイクアップFSM218は、異なる機構間の依存性に基づいてターンオンシーケンスを実行し、依存しない機構を同時に有効にし、その後、機構の次のセットを有効にする。ウェイクアップFSM218は、機構のウェイクアップ時間要件を考慮し、これらの要件に基づいて、タイマ216を適切に設定する。また、機構ウェイクアップFSM218は、トラフィックストールをオンに切り替えるように要求する、機構のストール要件も考慮する。機構ウェイクアップFSM218は、その際、それらの機構のストール時間要件に基づく別のイネーブル信号セットを生成する。これらのイネーブル信号は、メモリコントローラ132から到来するinit_start信号がローに移行し、トラフィックストール期間を指示すると、トリガされる。機構を有効にした後に、機構ウェイクアップFSM218は、メモリコントローラ132にinit_complete信号を送信し、周波数切替または低電力遷移の終了を指示することになる。
【００２３】
上記のように、低電力インターフェースは、要求/肯定応答(すなわち、req/ack)信号対として規定される。したがって、FSM212、214とメモリコントローラ132との間で送信および受信される信号は、少なくともinit_start、init_complete、fpm_period、lp_req、lp_wakeupおよびlp_ackを含む。信号init_startは、PHY初期化開始を指している。この信号がアサートされるとき、メモリコントローラは、DDRクロック周波数変更または周波数比変更を要求している。信号freq_ratio、legacy_mode、fpm_periodは、init_startのアサート前に設定される必要がある。信号init_completeは、PHY初期化完了を指している。init_complete信号は、PHYがPHYインターフェース上の任意の適切な刺激に応答できることを示す。コマンドまたはステータスを伝達するすべてのPHYインターフェース信号は、init_complete信号がアサートされるまで、そのデフォルト値に保持される。PHY再初期化要求(たとえば、周波数変更)中に、この信号はディアサートされることになる。周波数変更要求の場合、init_complete信号をディアサートすることにより、周波数変更プロトコルを受け入れる。信号fpm_periodは、次の目標周波数を示し、メモリコントローラ132によって与えられる。信号lp_reqは低電力機会要求である。この信号は、低電力モードに切り替わる機会をPHYに知らせるためにメモリコントローラ132によって使用される。メモリコントローラ132によって与えられる信号lp_wakeupは、低電力ウェイクアップ時間を指している。この信号は、メモリコントローラ132がPHYに対して、16のウェイクアップ時間のうちのどのウェイクアップ時間を要求しているかを示す。信号lp_ackは、低電力肯定応答を指している。この信号は、メモリコントローラ低電力機会要求に応答するためにアサートされる。PHYは、この要求に応答する必要はない。
【００２４】
図3Aは、本発明の一実施形態による、ウェイクアップ時間、依存性およびストール時間のような対応する特性を含む、動作状態の変更のために制御することができるブロック120の機構のサンプルリスト300である。一実施形態では、これらの機構および対応する特性は、テーブル112のセットにおいてプログラムされる。上記のように、一実施形態では、テーブルはCSRテーブルである。性能および電力状態ごとの機構のあらかじめ規定された値は、ブロックの機構の特性評価プロセスを通して特定され、製品動作中に変更されない。機構ウェイクアップ時間/依存性は、ウェイクアップ時間および機構間の依存性を保持する。また、これらの値は、製品特性評価中に決定されるべきであり、通常、標準のチップ動作中に変更されない。
【００２５】
図3Bは、図3Aに示されるブロックの機構のリストから導出される例示的なPRFS/PWRSテーブル200である。図3Bに示されるテーブル内の0〜56を付された列(列5〜51は、例示的なテーブルを見せることができるように省略されている)は、図3Aにおいてインデックスを付されたようなブロックの機構である。図3BにおけるPRFS/PWRSテーブル200の例示される実施形態では、各性能状態(PRFS0、PRFS1、PRFS2、PRFS3、PRFS4またはPRFS5)は、2つの異なる電力状態(PWRS0、PWRS1)を割り当てられる。一実施形態では、電力状態PWRS1はPHYインターフェースの完全機能状態であり、特定のPRFSのためのすべての要求される機構がオンに切り替えられ、トラフィックをPHYインターフェースとの間で送信および/または受信することができる。この状態では、電力消費量は、トラフィック切替レートによって指示され、トラフィックがアイドルであるときに著しく低くなる。さらに、電力状態PWRS0は、非機能的であるPHYインターフェースの低電力状態である(すなわち、この状態では、トラフィックをPHYインターフェースを通して送信することはできない)。電力状態PWRS0は、トラフィックがPHYインターフェースを通過しておらず、電力を節約するためにブロックの大部分の機構がオフに切り替えられるので、電力状態PWRS1と比べて著しく低い電力消費量を有する。電力状態PWRS0では、より長いウェイクアップ時間を有するブロックは有効のままにされる場合があるので、電力状態PWRS0は、相対的に低いウェイクアップ時間要件を有する。
【００２６】
各電力状態は、専用の機構イネーブルレジスタ(FER)を割り振られる場合がある。各FERは、特定の性能-電力状態の場合に有効にされ、および/または無効にされる機構を規定する。したがって、FERを使用するとき、ソフトウェアは、DDR PHYの性能-電力特性を規定する融通性を有する。
【００２７】
図4Aは、複数の性能状態400を示しており、各性能状態は、複数の電力状態410を含み、各電力状態は、機構のステータス(有効/無効)を規定する専用の機構イネーブルレジスタ420を有する。図4Aの例示される実施形態では、機構イネーブルレジスタ420は、n個の機構のステータスを規定するためにnビットを使用する。図4Bは、13個の機構のステータスを規定する例示的なFER430である。
【００２８】
図5は、本発明の一実施形態による、機構ウェイク時間テーブル(FWT)202の例示的な行を示す。FWT202は、それぞれが、機構のウェイク時間要件と、機構をオンに切り替えるシーケンスに関して尊重される必要がある機構間の依存性とを規定するレジスタのセットである。また、テーブル202は、機構のストール時間要件のためのフィールドと、トラフィックストール期間中に機構有効化が生じる必要があるか否かに関するフィールドとを含む。FWT202は、ブロック120の機構ごとに1つの行を含むことができる。
【００２９】
図6は、本発明の一実施形態による、例示的な性能ルックアップテーブル204である。性能ルックアップテーブル204は、性能状態と周波数範囲との間のマッピングを規定する。また、テーブル204は、規定された性能状態のそれぞれに対応するクロック周期を保持する。テーブル204において、特定の製品のサポートされる周波数範囲に基づいて、性能状態周波数しきい値設定を設定することができる。一実施形態では、以下の性能状態周波数しきい値設定を規定することができる。(1)PRFS0:この制御状態は、最も低い周波数(たとえば、<333MHz)および最も低電力デバイス構成を規定する。この性能状態は、すべての高性能機構が無効にされ、低リーク状態に入れられることを仮定する。(2)PRFS1:この性能状態は、低い周波数(たとえば、400MHz)および低電力デバイス構成を規定する。この性能状態は、いくつかの高性能機構が有効にされるが、他の高性能機構の大部分は無効にされ、低リーク状態に入れられることを仮定する。(3)PRFS2:この性能状態は、適度な周波数(たとえば、533/667MHz)および中電力デバイス構成を規定する。この性能状態は、いくつかの高性能機構が有効にされるが、他の高性能機構は無効にされ、低リーク状態に入れられることを仮定する。(4)PRFS3:この性能状態は、より高い周波数(たとえば、800MHz)および電力範囲を規定し、要求される機構が有効にされることを仮定する。(5)PRFS4:この性能状態は、より高い周波数(たとえば、1066/1333MHz)および電力範囲を規定し、要求される機構が有効にされることを仮定する。(6)PRFS5:この性能状態は、最も高い周波数(たとえば、1600MHz)および最も高い電力デバイス構成要素を規定する。この性能状態は、すべての高性能機構が有効にされると仮定する。性能状態は、デバイス階層にマッピングすることができ、時間ブート構成を通してソフトウェア構成可能である。
【００３０】
性能状態ごとに、PHYがDDR PHYインターフェース低電力要求に基づいて切り替わることができる状態を記述するために、複数の電力状態が規定される。それらの機構の要求されるウェイクアップ時間および整定時間に基づいて、異なる電力状態ごとに有効にされ、および/または無効にされるブロックの機構が選択される。したがって、一実施形態では、以下の電力状態を規定することができる。(1)PWRS2:この電力状態はPHYの完全機能状態であり、特定のPRFSのためのすべての要求される機構がオンに切り替えられ、トラフィックをPHYとの間で送信および/または受信することができる。この状態では、電力消費量は、トラフィック切替レートによって指示され、トラフィックがアイドルであるときに著しく低いであろう。(2)PWRS1:この電力状態は非機能的であるPHYの低電力状態であり、すなわち、この状態では、トラフィックはPHYを通して送信できない。PWRS1は、トラフィックがPHYを通過せず、電力を節約するためにブロックの大部分の機構がオフに切り替えられるので、PWRS2に比べて著しく低い電力消費量を有する。PWRS1では、より長いウェイクアップ時間を有するブロックは有効のままにされるので、電力状態PWRS1は、相対的に低いウェイクアップ時間要件を有する。PWRS1は、さらなる機構を無効にすることに起因して、PWRS2アイドル電力消費量に比べて低い電力消費量を有することになる。(3)PWRS0:この電力状態はPHYの最も低い電力状態であり、非機能的である、すなわち、この状態では、トラフィックはPHYを通して送信できない。PWRS0は、動的または静的な電力消費量を有しない。この状態では、リーク電力が主な電力消費量である。したがって、要求されるウェイクアップ時間が長い場合には、マスター較正遅延セル(CDC)のようなカスタムマクロのクロック供給機構を含むすべてのPHY機構、およびより長いウェイクアップ時間を有する他のブロックをオフに切り替えることができ、所与のウェイクアップ時間要求内にPHYを完全に有効にするために、時間内にオンに戻される。この結果として、PHYは最も低い電力状態になるであろう。
【００３１】
図7Aは、本発明の一実施形態による、周波数および電力状態の変更に関するメモリコントローラ要求に基づく、シーケンシングロジック700を示す機能フロー図である。上記のように、シーケンシングロジック700は、タイミングおよび機構間の依存性を考慮しながら、要求された機構を有効にし、要求されない機構を無効にするプロセスを進める。図7Aの例示される実施形態では、ステップ710において、テーブルが初期化される(図7Bを参照)。一実施形態では、ウェイクアップ時間計算FSM210が、テーブルを初期化するシーケンシングロジックを実行する。その後、ステップ720において、性能および/または電力状態の変更要求がメモリコントローラ132から受信されたか否かの判断が行われる。ステップ720において、メモリコントローラ132が、性能状態の変更を要求する場合には、性能状態を変更するために、ステップ730(図7Cを参照)において、周波数切替FSM212による手順が実行される。ステップ720において、メモリコントローラ132が、電力状態の変更を要求する場合には、電力状態を変更するために、ステップ750(図7Dを参照)において、低電力切替FSM214による手順が実行される。ブロック120の設定が準備され、機構ウェイクアップFSM218によって、ステップ770(図7Eを参照)において、動作状態(たとえば、性能状態および/または電力状態)が変更される。
【００３２】
図7Bは、本発明の一実施形態による、すべての性能および電力状態テーブルを初期化するためのシーケンシングロジック710を示す機能フロー図である。図7Bの例示される実施形態では、ステップ712において、電力状態の各電力状態のウェイクアップ時間(すなわち、PHYを非機能電力状態から完全機能状態に切り替えるのに要する時間の長さ)が計算される。この計算は、ブート時に各性能状態の電力状態ごとに実行される。このようにして、ステップ714において、すべての性能状態のすべての電力状態のウェイクアップ時間が計算されたと判断される場合には、ステップ716において、この計算結果が電力状態ウェイクアップ時間テーブル202に記憶され、低電力要求遷移中に参照される。そうでない場合には、ステップ712において、さらなるウェイクアップ時間が計算される。その後、ステップ718において、すべての性能および電力状態テーブルが初期化される。
【００３３】
図7Cは、本発明の一実施形態による、性能状態を変更するための手順を実行するためのシーケンシングロジック730を示す機能フロー図である。一実施形態では、周波数切替FSM212がシーケンシングロジック730を実行し、周波数切替FSM212は、ステップ732において、メモリコントローラ132から、新たな性能状態の要求を受信する。ステップ734において、メモリコントローラ132から、SoC130とDRAM140との間の通信速度の所望の周期(たとえば、図2のfpm_period)も受信される。受信された所望の周期に基づいて、その後、性能状態テーブル204を用いて、ステップ736において、性能状態が選択される。FSM212は、ステップ738において、選択された性能状態を実現するために必要とされるブロック120のパラメータを決定し、ステップ740において、決定されたパラメータを機構ウェイクアップFSM218に送信する。
【００３４】
図7Dは、本発明の一実施形態による、電力状態を変更するための手順を実行するためのシーケンシングロジック750を示す機能フロー図である。一実施形態では、低電力切替FSM214がこのシーケンシングロジック750を実行し、低電力切替FSM214は、ステップ752において、メモリコントローラ132から、低減電力状態の要求を受信する。FSM214は、ステップ754において、メモリコントローラから、要求されたウェイクアップ時間(たとえば、図2のlp_wakeup)を受信する。低電力切替FSM214は、ステップ756において、メモリコントローラ132によって与えられる要求されるウェイクアップ時間を満たす複数の電力状態のうちの1つを、選択された最も低い電力状態として選択する。ステップ758において、選択された最も低い電力状態に基づいて、どのブロックをオフに切り替えるかに関する判断が行われる。その後、ステップ760において、そのブロックをオフに切り替えるために、機構ウェイクアップFSM218に信号が送信される。また、低電力切替FSM214は、タイマ216を用いて、要求されたウェイクアップ時間によってブロックをオンに戻し始める時点を判断する。一実施形態では、パワーダウン時間が経過すると、タイマ216が電力満了信号(たとえば、図2のpwr_dwn_expire)を発行し、ウェイクアッププロセスが、PHYインターフェースを完全機能状態に戻すために時間内に開始するように、低電力切替FSM214がパワーダウン時間(たとえば、図2のpwr_dwn_time)によってタイマ216を設定する。ブロックをオンに戻すために、ステップ764において、ブロックをオフに切り替える前の電力状態のためのパラメータが機構ウェイクアップFSMに送信される。
【００３５】
図7Eは、本発明の一実施形態による、ブロックの設定を準備し、動作状態を変更するためのシーケンシングロジック770を示す機能フロー図である。一実施形態では、機構ウェイクアップFSM218が、このシーケンシングロジック770を実行する。最初に、ステップ772において、性能および/または電力状態の変更要求が監視される。このようにして、ステップ772において、要求が受信された場合には、ブロックのどの機構設定を変更するか判断するために、ステップ774において、ブロックの現在の機構設定が、周波数切替FSM212または低電力切替FSM214から送信されるパラメータによって指示される所望の機構設定と比較される。その後、ステップ776において、依存性テーブル202を用いて、機構の依存性が判断される。判断された依存性に基づいて、ステップ778において、同時にオンに切り替えることができる機構を有するブロックのグループが形成される。異なる機構間の依存性に基づいてターンオンシーケンスが実行され、依存しない機構を同時に有効にし、その後、次の機構セットを有効にする。さらに、ステップ780において、ウェイクアップ時間に基づいて、ブロックのグループ間の遅延が設定される。機構のウェイクアップ時間要件が考慮され、これらの要件に基づいて、タイマが適切に設定される。ステップ782において、ストールを必要としない機構を有するブロックのグループが有効にされる。
【００３６】
トラフィックストールをオンに切り替えるように要求する機構のストール要件も考慮される。その後、それらの機構のストール時間要件に基づくイネーブル信号のセットが生成される。メモリコントローラから到来するinit_start信号がローに移行し、トラフィックストール期間を指示すると、ステップ786において、これらのイネーブル信号がトリガされる。ステップ788において、ストールを要求する機構を有するブロックのグループが有効にされる。機構を有効にした後に、メモリコントローラからinit_complete信号が送信され、周波数切替または低電力遷移の終了を指示する。
【００３７】
したがって、本発明の周波数および電力マネージャの実施形態は、周波数および電力スケーリングをサポートするアーキテクチャに基づく。さらに、周波数および電力マネージャのアーキテクチャは、機構から独立している。また、アーキテクチャは、サポートされる回路機構のタイプに関してDDR PHY実施態様から独立している。そのアーキテクチャは、より高性能の設計の場合に機構拡張可能であり、より低性能の設計の場合に機構縮小可能である。また、そのアーキテクチャは、各機構の情報(たとえば、ウェイクアップ時間要件および他の機構への依存性)を保持するためのテーブルベース構造をサポートし、機構、ウェイク時間および依存性に関してソフトウェアプログラム可能である。そのアーキテクチャはさらに、多数のアナログ/IO機構を有効または無効にし、各機構のシーケンスおよび要件を保持するタイミングおよびシーケンスを制御する。
【００３８】
本発明の実施形態は、特定の実施形態について上記で説明されているが、本発明の多くの変形形態が可能である。たとえば、例示される実施形態は、DDR-PHY適用例に関する周波数および電力管理を記述するが、この適用例において説明された周波数および電力管理は、他のメモリ制御要求の適用例において使用することができる。さらに、種々の実施形態の特徴は、上に記載されたものと異なる組合せで組み合わせることができる。さらに、明確かつ簡潔な説明のため、システムおよび方法の多くの説明は、単純化されている。多くの説明は、特定の規格の用語および構造を使用する。しかしながら、開示されたシステムおよび方法は、より広範に適用可能である。
【００３９】
当業者は、本明細書に開示された実施形態に関連して記載される様々な例示的なブロックおよびモジュールは様々な形で実装できることが理解されよう。いくつかのブロックおよびモジュールは、これまで、それらの機能性の点から一般的に説明されてきた。どのようにしてそのような機能性が実装されるのかは、全体システムに課された設計制約によって決まる。当業者は、説明された機能性を、特定の適用ごとに様々なやり方で実装できるが、そのような実施態様の決定は、本発明の範囲からの逸脱をもたらすと解釈されるべきでない。加えて、ブロック、モジュール、またはステップ内への機能のグループ分けは、説明を容易にするためである。特定の機能またはステップは、本発明から逸脱することなく、1つのモジュールまたはブロックから動かすことができる。
【００４０】
開示された実施形態の上記の説明は、当業者が本発明を作製または使用することを可能にするように提供される。これらの実施形態への様々な修正は、当業者には容易に明らかになり、また、本明細書において説明された一般原理は、本発明の趣旨および範囲から逸脱することなく他の実施形態に適用することができる。こうして、本明細書において提示された説明および図面は、本発明の現在の好ましい実施形態を表しており、それゆえ、本発明により幅広く意図される主題を表すことを理解されたい。本発明の範囲は、当業者には明らかになる場合がある他の実施形態を完全に包含し、本発明の範囲は、したがって、添付の請求の範囲以外のものによって制限されないことをさらに理解されたい。
【符号の説明】
【００４１】
100  PHYインターフェース
110  周波数および電力マネージャ
112  テーブル
114  シーケンサ
120  ブロック
130  システムオンチップ(SoC)
132  メモリコントローラ
134  プロセッサ
140  DDRダイナミックランダムアクセスメモリ(DRAM)
200  性能状態(PRFS)/電力状態(PWRS)テーブル
202  機構ウェイク時間/依存性テーブル
204  性能ルックアップテーブル
210  ウェイク時間計算有限ステートマシン(FSM)
212  周波数切替FSM
214  低電力切替FSM
216  タイマ
218  機構ウェイクアップFSM
220  機構イネーブルレジスタ
300  サンプルリスト
400  複数の性能状態
410  複数の電力状態
420  機構イネーブルレジスタ(FER)
430  FER
【図１】
2017527038.tif 000003
【図２】
2017527038.tif 000004
【図３Ａ】
2017527038.tif 000005
【図３Ｂ】
2017527038.tif 000006
【図４Ａ】
2017527038.tif 000007
【図４Ｂ】
2017527038.tif 000008
【図５】
2017527038.tif 000009
【図６】
2017527038.tif 000010
【図７Ａ】
2017527038.tif 000011
【図７Ｂ】
2017527038.tif 000012
【図７Ｃ】
2017527038.tif 000013
【図７Ｄ】
2017527038.tif 000014
【図７Ｅ】
2017527038.tif 000015
【手続補正書】
【提出日】平成29年3月7日(2017.3.7)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のブロックを含むダブルデータレート(DDR)物理(PHY)インターフェースの動作状態を変更するステップを含み、PHYインターフェースの動作状態を前記変更するステップは、
前記DDR-PHYインターフェースの前記動作状態を変更するための前記複数のブロックの所望の機構設定を指示するパラメータを受信するステップであって、前記DDR-PHYインターフェースの前記動作状態は、性能状態および電力状態を含む、受信するステップと、
シーケンスにおいて前記所望の機構設定を有効にするステップであって、前記シーケンスは前記所望の機構設定間の依存性に基づき、前記依存性は依存性テーブルに記憶される、有効にするステップと
を含む、方法。
【請求項２】
機構ウェイクアップ有限ステートマシン(FSM)が、PHYインターフェースの動作状態を前記変更するステップを実行するように構成される、請求項1に記載の方法。
【請求項３】
前記機構ウェイクアップFSMはハードウェアにおいて構成される、請求項2に記載の方法。
【請求項４】
前記依存性テーブルはレジスタのセットにおいて実装され、前記依存性テーブルのエントリはソフトウェアプログラム可能である、請求項1に記載の方法。
【請求項５】
前記依存性に基づいて同時にオンに切り替えることができる機構を有するブロックのグループを形成するステップをさらに含む、請求項1に記載の方法。
【請求項６】
各グループのブロックのウェイクアップ時間に基づいてブロックの前記グループ間の遅延を設定するステップをさらに含む、請求項5に記載の方法。
【請求項７】
前記複数のブロックからの少なくとも1つのブロックのどの機構設定を変更すべきか判断するために、現在の機構設定を前記複数のブロックの前記所望の機構設定と比較するステップをさらに含む、請求項1に記載の方法。
【請求項８】
トラフィックストールを必要としない前記少なくとも1つのブロックのための前記所望の機構設定を有効にするステップと、
前記トラフィックストールを待ち、かつ前記トラフィックストール後に生じる必要がある前記少なくとも1つのブロックの前記機構設定を有効にするステップと
をさらに含む、請求項7に記載の方法。
【請求項９】
前記電力状態の各電力状態のウェイクアップ時間を計算し、かつ前記ウェイクアップ時間をウェイクアップ時間ルックアップテーブルに記憶するステップをさらに含む、請求項1に記載の方法。
【請求項１０】
前記PHYインターフェースの前記性能状態を変更するための手順を実行するステップをさらに含む、請求項1に記載の方法。
【請求項１１】
周波数切替FSMが、前記PHYインターフェースの前記性能状態を変更するための前記手順を実行するように構成される、請求項10に記載の方法。
【請求項１２】
前記PHYインターフェースの前記電力状態を変更するための手順を実行するステップをさらに含む、請求項1に記載の方法。
【請求項１３】
低電力切替FSMが、前記PHYインターフェースの前記電力状態を変更するための前記手順を実行するように構成される、請求項12に記載の方法。
【請求項１４】
メモリコントローラから所望の周期を受信するステップと、
前記受信された所望の周期に基づいて性能状態を選択し、性能状態テーブルを使用するステップと
をさらに含む、請求項1に記載の方法。
【請求項１５】
前記選択された性能状態のための所望の機構設定を指示する前記パラメータを決定し、かつ送信するステップをさらに含む、請求項14に記載の方法。
【請求項１６】
メモリコントローラから、要求されたウェイクアップ時間を受信するステップと、
前記ウェイクアップ時間の要件を満たす最も低い電力状態を選択するステップと
をさらに含む、請求項1に記載の方法。
【請求項１７】
前記選択された最も低い電力状態に基づいて前記所望の機構設定を決定するステップと、
前記少なくとも1つのブロックをオフに切り替えるために、機構ウェイクアップFSMに前記所望の機構設定を送信するステップと
をさらに含む、請求項16に記載の方法。
【請求項１８】
前記ウェイクアップ時間に基づいて、前記少なくとも1つのブロックをオンに戻す時点の前記所望の機構設定を決定するステップと、
前記少なくとも1つのブロックをオフに切り替えるために、前記機構ウェイクアップFSMに前記所望の機構設定を送信するステップと
をさらに含む、請求項17に記載の方法。
【請求項１９】
DDR PHYインターフェースの動作状態を変更するためのステートマシン装置であって、
前記PHYインターフェースの前記動作状態を変更するための複数のブロックの機構設定を指示するパラメータを受信することであって、前記PHYインターフェースの前記動作状態は、性能状態および電力状態を含む、受信することと、
シーケンスにおいて前記機構設定を有効にすることであって、前記シーケンスは前記機構設定間の依存性に基づき、前記依存性は依存性テーブルに記憶される、有効にすることと
を行うように構成される、ステートマシン装置。
【請求項２０】
前記依存性に基づいて同時にオンに切り替えることができる機構を有するブロックのグループを形成することと、各グループのブロックのウェイクアップ時間に基づいてブロックの前記グループ間の遅延を設定することとを行うように構成される機構ウェイクアップユニットをさらに備える、請求項19に記載の装置。
【請求項２１】
DDR PHYインターフェースの動作状態を変更するための装置であって、
前記DDR PHYインターフェースの前記動作状態を変更するための複数のブロックの所望の機構設定を指示するパラメータを受信するための手段であって、前記DDR PHYインターフェースの前記動作状態は、性能状態および電力状態を含む、受信するための手段と、
シーケンスにおいて前記所望の機構設定を有効にするための手段であって、前記シーケンスは前記所望の機構設定間の依存性に基づき、前記依存性は依存性テーブルに記憶される、有効にするための手段と
を備える、装置。
【請求項２２】
前記複数のブロックからの少なくとも1つのブロックのどの機構設定を変更すべきか判断するために、現在の機構設定を前記複数のブロックの前記所望の機構設定と比較するための手段をさらに備える、請求項21に記載の装置。
【請求項２３】
トラフィックストールを必要としない前記少なくとも1つのブロックのための前記機構設定を有効にするための手段と、
前記トラフィックストールを待ち、かつ前記トラフィックストール後に生じる必要がある前記少なくとも1つのブロックの前記機構設定を有効にするための手段と
をさらに備える、請求項22に記載の装置。
【請求項２４】
周波数および電力管理システムであって、
周波数しきい値、ウェイクアップ時間要件、相互依存性および電力要件を含む、複数のブロックの機構および特性の表現を有する複数のテーブルと、
メモリコントローラからの要求に基づいて、前記複数のブロックの機構設定を、性能状態および電力状態を含むDDR PHYインターフェースの複数の動作状態のうちのある動作状態に切り替えるように構成されるシーケンシングユニットであって、前記DDR PHYインターフェースの前記複数の動作状態は、性能状態および電力状態を含む、シーケンシングユニットと
を備える、周波数および電力管理システム。
【請求項２５】
前記シーケンシングユニットは、前記性能状態または前記電力状態において使用される前記機構設定を有効にし、前記性能状態または前記電力状態において使用されない前記機構設定を無効にするプロセスを進めるステートマシンにおいて構成されるハードウェアである、請求項24に記載のシステム。
【請求項２６】
前記シーケンシングユニットは、
前記依存性に基づいて同時にオンに切り替えることができる機構設定を有するブロックのグループを形成することと、各グループのブロックのウェイクアップ時間要件に基づいてブロックの前記グループ間の遅延を設定することとを行うように構成される機構ウェイクアップユニットをさらに備える、請求項24に記載のシステム。
【請求項２７】
前記シーケンシングユニットは、
前記電力状態の各電力状態のウェイクアップ時間を計算することと、前記ウェイクアップ時間をウェイクアップ時間ルックアップテーブルに記憶することとを行うように構成されるウェイク時間計算ユニットを含む、請求項24に記載のシステム。
【請求項２８】
前記シーケンシングユニットは、
前記PHYインターフェースの前記性能状態を変更するための手順を実行するように構成される周波数切替ユニットを含む、請求項24に記載のシステム。
【請求項２９】
前記シーケンシングユニットは、
前記PHYインターフェースの前記電力状態を変更するための手順を実行するように構成される低電力切替ユニットを含む、請求項24に記載のシステム。
【国際調査報告】
2017527038.tif 000016
2017527038.tif 000017