(57)【要約】  供給電圧ドループを低減または回避するための供給電圧ドループ管理回路が開示される。供給電圧ドループ管理回路は、機能回路によって生成されるイベント信号を受信するように構成される割込み回路を含む。イベント信号は、機能回路内で発生し、機能回路に電力供給する電源に対する負荷電流要求を増加して供給電圧ドループを引き起こす動作イベントに対応する。割込み回路は、受信されたイベント信号に応答して割込み信号を生成するように構成される。メモリは、動作イベントに対応するターゲット周波数を有するエントリを有する動作イベント周波数テーブルを含む。ターゲット周波数において機能回路を動作させることで、電源に対する負荷電流要求と供給電圧ドループとが低減される。クロック制御回路は、割込み信号を受信することと、ターゲット周波数を決定するためにメモリにアクセスすることと、ターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成することとを行うように構成される。
2019522837.tif 000002
【特許請求の範囲】
【請求項１】
供給電圧ドループ管理回路であって、
割込み回路であって、
動作周波数におけるクロック信号に基づいて動作する機能回路によって生成されるイベント信号を受信することであって、前記イベント信号が、前記動作周波数において前記機能回路に電力供給する電源内に供給電圧ドループを引き起こすのに十分な、前記電源に対する負荷電流要求を増加する前記機能回路内の動作イベントに対応する、受信することと、
前記受信されたイベント信号に応答して割込み信号を生成することであって、前記割込み信号が、前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、生成することと
を行うように構成される、割込み回路と、
複数のエントリを含む動作イベント周波数テーブルを含むメモリであって、各エントリが前記イベント信号に対応する前記動作イベントに対応するターゲット周波数を含み、前記機能回路による前記電源に対する前記負荷電流要求が、前記機能回路が前記ターゲット周波数において動作するときに前記電源の前記供給電圧ドループを低減する、メモリと、
クロック制御回路であって、
前記受信されたイベント信号の前記動作イベントに対応する前記動作イベント標示を含む前記割込み信号を受信することと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記割込み信号の前記動作イベント標示に基づいて前記メモリ内の前記動作イベント周波数テーブルにアクセスすることと、
前記クロック信号の周波数を前記決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成することと
を行うように構成される、クロック制御回路と
を備える、供給電圧ドループ管理回路。
【請求項２】
イベントポーリング回路であって、
前記機能回路が規定されたポーリング時間内に動作イベントに対応するイベント信号を生成するかどうかを判定するために規定されたポーリングレートにおいて前記機能回路をポーリングすることと、
前記機能回路が前記規定されたポーリング時間内に前記イベント信号を生成したと判定したことに応答してポーリングイベント信号を生成することとであって、前記ポーリングイベント信号が前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、生成することと
を行うように構成されるイベントポーリング回路を
さらに備える、請求項1に記載の供給電圧ドループ管理回路。
【請求項３】
フィルタリング回路であって、
前記割込み信号を受信することと、
前記ポーリングイベント信号を受信することと、
前記機能回路のクリティカルパスを複製するクリティカルパスレプリカ回路によって生成された動作イベントに関連するタイミングデータを含むタイミングエラー信号を受信することと、
前記ポーリングイベント信号に応答してポーリング調整信号を生成することであって、前記ポーリング調整信号が、前記ポーリングイベント信号の前記イベント信号に対応する前記動作イベントを識別する前記動作イベント標示を含む、生成することと、
前記割込み信号および前記ポーリングイベント信号のうちの一方に応答してトレーニング信号を生成することであって、前記トレーニング信号が前記動作イベント標示および前記タイミングデータを含む、生成することと
を行うように構成されるフィルタリング回路
をさらに備え、
前記クロック制御回路が、
前記ポーリング調整信号を受信することと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記ポーリング調整信号の前記動作イベント標示に基づいて前記メモリ内の前記動作イベント周波数テーブルにアクセスすることと、
前記クロック信号の前記周波数を前記決定されたターゲット周波数に調整することを前記クロック発生器に行わせるために、前記クロック周波数調整信号を生成することと
を行うようにさらに構成される、
請求項2に記載の供給電圧ドループ管理回路。
【請求項４】
複数のエントリを含むイベントログテーブルを含む第2のメモリであって、各エントリが、対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを含む、第2のメモリと、
前記イベントログテーブルの対応するエントリに前記動作イベント標示および前記タイミングデータを供給するようにさらに構成される前記フィルタリング回路と
をさらに備え、
トレーニング回路が、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを取り出すために前記第2のメモリ内の前記イベントログテーブルにアクセスすることと、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータに基づいて前記メモリの前記動作イベント周波数テーブル内の前記複数のエントリを更新することと
を行うように構成される、請求項3に記載の供給電圧ドループ管理回路。
【請求項５】
前記イベント信号が、1次動作イベントに対応する1次イベント信号を含み、前記1次動作イベントが第1の周波数において前記電源によって供給される電流に対応し、
前記割込み回路が、前記1次イベント信号を受信するようにさらに構成され、
前記イベントポーリング回路が、前記機能回路が前記規定されたポーリング時間内に前記1次イベント信号を生成するかどうかを判定するために前記規定されたポーリングレートにおいて前記機能回路をポーリングするようにさらに構成される、
請求項2に記載の供給電圧ドループ管理回路。
【請求項６】
前記イベント信号が2次動作イベントに対応する2次イベント信号をさらに含み、前記2次動作イベントが、前記第1の周波数より低い第2の周波数において前記電源によって供給される電流に対応し、
前記イベントポーリング回路が、前記機能回路が前記規定されたポーリング時間内に前記2次イベント信号を生成するかどうかを判定するために前記規定されたポーリングレートにおいて前記機能回路をポーリングするようにさらに構成される、
請求項5に記載の供給電圧ドループ管理回路。
【請求項７】
各1次動作イベントが、分岐ミス予測、プライベートキャッシュミス、ベクトル命令、および実行ユニット利用のうちの1つに対応する、請求項6に記載の供給電圧ドループ管理回路。
【請求項８】
各2次動作イベントが、最終レベルキャッシュミス、テーブルルックアサイドバッファミス、ウェイクアップ割込み、およびスリープイベントのうちの1つに対応する、請求項7に記載の供給電圧ドループ管理回路。
【請求項９】
前記クロック制御回路が、前記クロック発生器に前記クロック信号の1つまたは複数のサイクルをストレッチさせるために前記クロック周波数調整信号を生成するように構成される、請求項1に記載の供給電圧ドループ管理回路。
【請求項１０】
前記クロック制御回路が、前記クロック発生器に前記クロック信号の1つまたは複数のサイクルをスワローさせるために前記クロック周波数調整信号を生成するように構成される、請求項1に記載の供給電圧ドループ管理回路。
【請求項１１】
前記イベント信号が今後の動作イベントに対応する、請求項1に記載の供給電圧ドループ管理回路。
【請求項１２】
集積回路(IC)内に統合される、請求項1に記載の供給電圧ドループ管理回路。
【請求項１３】
セットトップボックス、エンターテインメントユニット、ナビゲーションデバイス、通信デバイス、固定ロケーションデータユニット、モバイルロケーションデータユニット、モバイルフォン、セルラーフォン、スマートフォン、タブレット、ファブレット、サーバ、コンピュータ、ポータブルコンピュータ、デスクトップコンピュータ、携帯情報端末(PDA)、モニタ、コンピュータモニタ、テレビ、チューナ、ラジオ、衛星ラジオ、音楽プレーヤ、デジタル音楽プレーヤ、ポータブル音楽プレーヤ、デジタルビデオプレーヤ、ビデオプレーヤ、デジタルビデオディスク(DVD)プレーヤ、ポータブルデジタルビデオプレーヤ、および自動車からなるグループから選択されるデバイスに統合される、請求項1に記載の供給電圧ドループ管理回路。
【請求項１４】
供給電圧ドループ管理回路であって、
動作周波数におけるクロック信号に基づいて動作する機能回路によって生成されるイベント信号を受信するための手段であって、前記イベント信号が、前記動作周波数において前記機能回路に電力供給する電源内に供給電圧ドループを引き起こすのに十分な、前記電源に対する負荷電流要求を増加する前記機能回路内の動作イベントに対応する、手段と、
前記受信されたイベント信号に応答して割込み信号を生成するための手段であって、前記割込み信号が、前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、手段と、
複数のエントリを記憶するための手段であって、各エントリが前記イベント信号に対応する前記動作イベントに対応するターゲット周波数を含み、前記機能回路による前記電源に対する前記負荷電流要求が、前記機能回路が前記ターゲット周波数において動作するときに前記電源の前記供給電圧ドループを低減する、手段と、
前記受信されたイベント信号の前記動作イベントに対応する前記動作イベント標示を含む前記割込み信号を受信するための手段と、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記割込み信号の前記動作イベント標示に基づいて前記記憶するための手段にアクセスするための手段と、
前記クロック信号の周波数を前記決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成するための手段と
を含む、供給電圧ドループ管理回路。
【請求項１５】
機能回路内の供給電圧ドループを低減または回避するための方法であって、
動作周波数におけるクロック信号に基づいて動作する機能回路によって生成されるイベント信号を受信するステップであって、前記イベント信号が、前記動作周波数において前記機能回路に電力供給する電源内に供給電圧ドループを引き起こすのに十分な、前記電源に対する負荷電流要求を増加する前記機能回路内の動作イベントに対応する、ステップと、
前記受信されたイベント信号に応答して割込み信号を生成するステップであって、前記割込み信号が、前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、ステップと、
前記割込み信号に応答して、前記動作イベントに対応するターゲット周波数を決定するために前記割込み信号の前記動作イベント標示に基づいて複数のエントリのうちの1つのエントリから前記ターゲット周波数にアクセスするステップであって、前記機能回路による前記電源に対する前記負荷電流要求が、前記機能回路が前記ターゲット周波数において動作するときに前記電源の前記供給電圧ドループを低減する、ステップと、
前記クロック信号の周波数を前記決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成するステップと
を含む、方法。
【請求項１６】
前記機能回路が規定されたポーリング時間内に動作イベントに対応するイベント信号を生成するかどうかを判定するために規定されたポーリングレートにおいて前記機能回路をポーリングするステップと、
前記機能回路が前記規定されたポーリング時間内に前記イベント信号を生成したと判定したことに応答してポーリングイベント信号を生成するステップであって、前記ポーリングイベント信号が前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、ステップと
をさらに含む、請求項15に記載の方法。
【請求項１７】
前記機能回路のクリティカルパスを複製するクリティカルパスレプリカ回路によって生成された動作イベントに関連するタイミングデータを含むタイミングエラー信号を受信するステップと、
前記ポーリングイベント信号に応答してポーリング調整信号を生成するステップであって、前記ポーリング調整信号が、前記ポーリングイベント信号の前記イベント信号に対応する前記動作イベントを識別する前記動作イベント標示を含む、ステップと、
前記割込み信号および前記ポーリングイベント信号のうちの一方に応答してトレーニング信号を生成するステップであって、前記トレーニング信号が前記動作イベント標示および前記タイミングデータを含む、ステップと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記ポーリング調整信号の前記動作イベント標示に基づいてメモリ内の動作イベント周波数テーブルにアクセスするステップと、
前記クロック信号の前記周波数を前記決定されたターゲット周波数に調整することを前記クロック発生器に行わせるために、前記クロック周波数調整信号を生成するステップと
をさらに含む、請求項16に記載の方法。
【請求項１８】
イベントログテーブルの対応するエントリに、対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを供給するステップと、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータに基づいて前記メモリの前記動作イベント周波数テーブル内の前記複数のエントリを更新するステップと
をさらに含む、請求項17に記載の方法。
【請求項１９】
プロセッサベースシステムであって、
プロセッサを備える中央処理装置(CPU)と、
前記CPUをクロック制御するためにクロック信号を生成するように構成されるクロック発生器と、
供給電圧ドループ管理回路であって、
割込み回路であって、
動作周波数における前記クロック信号に基づいて動作する前記CPUによって生成されるイベント信号を受信することであって、前記イベント信号が、前記動作周波数において前記CPUに電力供給する電源内に供給電圧ドループを引き起こすのに十分な、前記電源に対する負荷電流要求を増加する前記CPU内の動作イベントに対応する、受信することと、
前記受信されたイベント信号に応答して割込み信号を生成することであって、前記割込み信号が、前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、生成することと
を行うように構成される割込み回路と、
複数のエントリを含む動作イベント周波数テーブルを含むメモリであって、各エントリが前記イベント信号に対応する前記動作イベントに対応するターゲット周波数を含み、前記CPUによる前記電源に対する前記負荷電流要求が、前記CPUが前記ターゲット周波数において動作するときに前記電源の前記供給電圧ドループを低減する、メモリと、
クロック制御回路であって、
前記受信されたイベント信号の前記動作イベントに対応する前記動作イベント標示を含む前記割込み信号を受信することと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記割込み信号の前記動作イベント標示に基づいて前記メモリ内の前記動作イベント周波数テーブルにアクセスすることと、
前記クロック信号の周波数を前記決定されたターゲット周波数に調整することを前記クロック発生器に行わせるために、クロック周波数調整信号を生成することと
を行うように構成されるクロック制御回路と
を備える、供給電圧ドループ管理回路と
を備える、プロセッサベースシステム。
【請求項２０】
前記供給電圧ドループ管理回路が、
イベントポーリング回路であって、
前記CPUが規定されたポーリング時間内に動作イベントに対応するイベント信号を生成するかどうかを判定するために規定されたポーリングレートにおいて前記CPUをポーリングすることと、
前記CPUが前記規定されたポーリング時間内に前記イベント信号を生成したと判定したことに応答してポーリングイベント信号を生成することであって、前記ポーリングイベント信号が前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、生成することと
を行うように構成されるイベントポーリング回路
をさらに備える、請求項19に記載のプロセッサベースシステム。
【請求項２１】
前記供給電圧ドループ管理回路が、
前記割込み信号を受信すること、
前記ポーリングイベント信号を受信することと、
前記CPUのクリティカルパスを複製するクリティカルパスレプリカ回路によって生成された動作イベントに関連するタイミングデータを含むタイミングエラー信号を受信することと、
前記ポーリングイベント信号に応答してポーリング調整信号を生成することであって、前記ポーリング調整信号が、前記ポーリングイベント信号の前記イベント信号に対応する前記動作イベントを識別する前記動作イベント標示を含む、生成することと、
前記割込み信号および前記ポーリングイベント信号のうちの一方に応答してトレーニング信号を生成することであって、前記トレーニング信号が前記動作イベント標示および前記タイミングデータを含む、生成することと
を行うように構成されるフィルタリング回路
をさらに備え、
前記クロック制御回路が、
前記ポーリング調整信号を受信することと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記ポーリング調整信号の前記動作イベント標示に基づいて前記メモリ内の前記動作イベント周波数テーブルにアクセスすることと、
前記クロック信号の前記周波数を前記決定されたターゲット周波数に調整することを前記クロック発生器に行わせるために、前記クロック周波数調整信号を生成することと
を行うようにさらに構成される、
請求項20に記載のプロセッサベースシステム。
【請求項２２】
前記供給電圧ドループ管理回路が、
複数のエントリを含むイベントログテーブルを含む第2のメモリであって、各エントリが、対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを含む、第2のメモリと、
前記動作イベント標示および前記タイミングデータを前記イベントログテーブルの対応するエントリ内に供給するようにさらに構成される前記フィルタリング回路と
をさらに備え、
プロセッサベースシステムが、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを取り出すために前記第2のメモリ内の前記イベントログテーブルにアクセスすることと、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータに基づいて前記メモリの前記動作イベント周波数テーブル内の前記複数のエントリを更新することと
を行うように構成されるトレーニング回路をさらに備える、
請求項21に記載のプロセッサベースシステム。
【請求項２３】
前記イベント信号が、1次動作イベントに対応する1次イベント信号を含み、前記1次動作イベントが第1の周波数において前記電源によって供給される電流に対応し、
前記割込み回路が、前記1次イベント信号を受信するようにさらに構成され、
前記イベントポーリング回路が、前記CPUが前記規定されたポーリング時間内に前記1次イベント信号を生成するかどうかを判定するために前記規定されたポーリングレートにおいて前記CPUをポーリングするようにさらに構成される、
請求項20に記載のプロセッサベースシステム。
【請求項２４】
前記イベント信号が2次動作イベントに対応する2次イベント信号をさらに含み、前記2次動作イベントが、前記第1の周波数より低い第2の周波数において前記電源によって供給される電流に対応し、
前記イベントポーリング回路が、前記CPUが前記規定されたポーリング時間内に前記2次イベント信号を生成するかどうかを判定するために前記規定されたポーリングレートにおいて前記CPUをポーリングするようにさらに構成される、
請求項23に記載のプロセッサベースシステム。
【請求項２５】
前記イベント信号が今後の動作イベントに対応する、請求項19に記載のプロセッサベースシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
優先権出願
本出願は、その全体が参照により本明細書に組み込まれる、2016年5月16日に出願した"SUPPLY VOLTAGE DROOP MANAGEMENT CIRCUITS FOR REDUCING OR AVOIDING SUPPLY VOLTAGE DROOPS"と題する米国特許出願第15/156,156号の優先権を主張する。
【０００２】
本開示の技術は、一般に供給電圧ドループに関し、詳細には供給電圧ドループの影響を軽減することに関する。
【背景技術】
【０００３】
回路設計の電力保全性は、動作中に所望の電圧または電流が回路内の特定の要素に送り出されているかどうかを判定するために使用される測定基準である。たとえば、中央処理装置(CPU)またはデジタル信号プロセッサ(DSP)などの回路の電力保全性は、回路機能に必要な供給電圧が回路内のトランジスタに供給されているかどうかを判定する。したがって、特定のレベルの電力保全性を達成するように回路を設計することは、回路設計において重要な役割を果たす。しかしながら、増加する電力密度、低減される電圧ヘッドルーム、および特定の最大電力に対応する増加するスループットに対する要求など、回路設計の電力および性能の要件は増加し続けているので、特定のレベルの電力保全性を達成することはますます複雑になっている。
【０００４】
回路の電力保全性に悪影響を及ぼす1つの要因は、供給電圧ドループの発生である。供給電圧ドループは、トランジスタなど、回路内の1つまたは複数の要素に電源によって供給される供給電圧における一時的低下または低減である。供給電圧ドループは、電源に供給される供給電圧における低下、電源に対する動作変化、電源によって供給される電力供給電流におけるサージ、またはそれらの任意の組合せの結果である場合がある。特に、電力供給電流におけるサージは、電源によって電力供給される回路の負荷電流要求における変化によって引き起こされる場合がある。
【０００５】
この点について、回路内の供給電圧ドループの影響を低減または回避するために、様々な技法が使用されてもよい。たとえば、回路要素は、供給電圧に対して特定の電圧マージン内で動作するように設計されてもよい。このようにして、回路要素は、供給電圧の+/-10%など、特定の割合(すなわち、マージン)だけ供給電圧を超えるかまたは供給電圧に満たない電圧を受けるときに、所望の動作を達成することができる。しかしながら、そのような電圧マージンは、従来は最悪動作条件を満たすように設定され、したがって電力消費を増加させかつ回路性能を低減する可能性がある。代替的に、オンダイの電圧センサおよび電圧調節器が、供給電圧ドループの影響を低減するために採用されてもよい。より具体的には、オンダイの電圧センサは供給電圧ドループを検出するために使用されてもよい一方で、電圧調節器はそのような検出に応答して供給電圧を増加することができる。しかしながら、オンダイの電圧センサおよび電圧調節器は設計コストを増大させ、回路性能を低減する可能性がある。
【発明の概要】
【課題を解決するための手段】
【０００６】
本明細書で開示する態様は、供給電圧ドループを低減または回避するための供給電圧ドループ管理回路を含む。一態様では、供給電圧ドループ管理回路が提供される。供給電圧ドループ管理回路は、動作周波数におけるクロック信号によってクロック制御される機能回路によって生成されるイベント信号を受信するように構成される割込み回路を含む。各イベント信号は、機能回路内で発生する動作イベントに対応する。イベント信号によって識別される動作イベントの発生は、機能回路に電力供給する電源に対する負荷電流要求を増大させる。負荷電流要求におけるそのような増加は、電源内に供給電圧ドループを引き起こすのに十分である。供給電圧ドループを低減または回避するために、割込み回路は、受信されたイベント信号に応答して割込み信号を生成するように構成される。割込み信号は、イベント信号に対応する動作イベントを識別する動作イベント標示を含む。供給電圧ドループ管理回路はまた、多数のエントリを有する動作イベント周波数テーブルを採用するメモリを含む。動作イベント周波数テーブルの各エントリは、イベント信号によって識別される動作イベントに対応するターゲット周波数を含む。動作イベント中にターゲット周波数において動作することで、電源に対する機能回路の負荷電流要求が低減され、したがって動作イベントに対応する電源の供給電圧ドループが低減される。供給電圧ドループを低減するようにターゲット周波数を達成するために、供給電圧ドループ管理回路は、クロック制御回路を含む。クロック制御回路は、割込み信号を受信し、ターゲット周波数を決定するために割込み信号の動作イベント標示に基づいてメモリ内の動作イベント周波数テーブルにアクセスするように構成される。そのような情報を使用して、クロック制御回路は、クロック信号の周波数を決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成するように構成される。このようにして、供給電圧ドループ管理回路は、供給電圧ドループが低減または回避されるように、動作イベント中に機能回路のクロック信号の周波数の変化を引き起こす。
【０００７】
この点について一態様では、供給電圧ドループ管理回路が提供される。供給電圧ドループ管理回路は、割込み回路を備える。割込み回路は、動作周波数におけるクロック信号に基づいて動作する機能回路によって生成されたイベント信号を受信するように構成される。イベント信号は、動作周波数において機能回路に電力供給する電源内に供給電圧ドループを引き起こすのに十分な、電源に対する負荷電流要求を増加する機能回路内の動作イベントに対応する。割込み回路は、受信されたイベント信号に応答して割込み信号を生成するようにさらに構成される。割込み信号は、イベント信号に対応する動作イベントを識別する動作イベント標示を含む。供給電圧ドループ管理回路は、メモリをさらに備える。メモリは、複数のエントリを含む動作イベント周波数テーブルを含む。各エントリは、イベント信号に対応する動作イベントに対応するターゲット周波数を含む。機能回路による電源に対する負荷電流要求は、機能回路がターゲット周波数において動作するときに電源の供給電圧ドループを低減する。供給電圧ドループ管理回路は、クロック制御回路をさらに備える。クロック制御回路は、受信されたイベント信号の動作イベントに対応する動作イベント標示を含む割込み信号を受信するように構成される。クロック制御回路は、動作イベントに対応するターゲット周波数を決定するために割込み信号の動作イベント標示に基づいてメモリ内の動作イベント周波数テーブルにアクセスするようにさらに構成される。クロック制御回路は、クロック信号の周波数を決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成するようにさらに構成される。
【０００８】
別の態様では、供給電圧ドループ管理回路が提供される。供給電圧ドループ管理回路は、動作周波数におけるクロック信号に基づいて動作する機能回路によって生成されたイベント信号を受信するための手段を含む。イベント信号は、動作周波数において機能回路に電力供給する電源内に供給電圧ドループを引き起こすのに十分な、電源に対する負荷電流要求を増加する機能回路内の動作イベントに対応する。供給電圧ドループ管理回路は、受信されたイベント信号に応答して割込み信号を生成するための手段をさらに含む。割込み信号は、イベント信号に対応する動作イベントを識別する動作イベント標示を含む。供給電圧ドループ管理回路は、複数のエントリを記憶するための手段をさらに含み、各エントリは、イベント信号に対応する動作イベントに対応するターゲット周波数を含む。機能回路による電源に対する負荷電流要求は、機能回路がターゲット周波数において動作するときに電源の供給電圧ドループを低減する。供給電圧ドループ管理回路は、受信されたイベント信号の動作イベントに対応する動作イベント標示を含む割込み信号を受信するための手段をさらに含む。供給電圧ドループ管理回路は、動作イベントに対応するターゲット周波数を決定するために割込み信号の動作イベント標示に基づいて記憶するための手段にアクセスするための手段をさらに含む。供給電圧ドループ管理回路は、クロック信号の周波数を決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成するための手段をさらに含む。
【０００９】
別の態様では、機能回路内の供給電圧ドループを低減または回避するための方法が提供される。本方法は、動作周波数におけるクロック信号に基づいて動作する機能回路によって生成されたイベント信号を受信するステップを含む。イベント信号は、動作周波数において機能回路に電力供給する電源内に供給電圧ドループを引き起こすのに十分な、電源に対する負荷電流要求を増加する機能回路内の動作イベントに対応する。本方法は、受信されたイベント信号に応答して割込み信号を生成するステップをさらに含む。割込み信号は、イベント信号に対応する動作イベントを識別する動作イベント標示を含む。本方法は、割込み信号に応答して、動作イベントに対応するターゲット周波数を決定するために割込み信号の動作イベント標示に基づいて複数のエントリのうちの1つのエントリからターゲット周波数にアクセスするステップをさらに含む。機能回路による電源に対する負荷電流要求は、機能回路がターゲット周波数において動作するときに電源の供給電圧ドループを低減する。本方法は、クロック信号の周波数を決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成するステップをさらに含む。
【００１０】
別の態様では、プロセッサベースシステムが提供される。プロセッサベースシステムは、中央処理装置(CPU)を備える。CPUは、プロセッサと、CPUをクロック制御するためにクロック信号を生成するように構成されるクロック発生器と、供給電圧ドループ管理回路とを備える。供給電圧ドループ管理回路は、割込み回路を備える。割込み回路は、動作周波数におけるクロック信号に基づいて動作するCPUによって生成されたイベント信号を受信するように構成される。イベント信号は、動作周波数においてCPUに電力供給する電源内に供給電圧ドループを引き起こすのに十分な、電源に対する負荷電流要求を増加するCPU内の動作イベントに対応する。割込み回路は、受信されたイベント信号に応答して割込み信号を生成するようにさらに構成される。割込み信号は、イベント信号に対応する動作イベントを識別する動作イベント標示を含む。供給電圧ドループ管理回路は、メモリをさらに備える。メモリは、複数のエントリを含む動作イベント周波数テーブルを含み、各エントリは、イベント信号に対応する動作イベントに対応するターゲット周波数を含む。CPUによる電源に対する負荷電流要求は、CPUがターゲット周波数で動作するときに電源の供給電圧ドループを低減する。供給電圧ドループ管理回路は、クロック制御回路をさらに備える。クロック制御回路は、受信されたイベント信号の動作イベントに対応する動作イベント標示を含む割込み信号を受信するように構成される。クロック制御回路は、動作イベントに対応するターゲット周波数を決定するために割込み信号の動作イベント標示に基づいてメモリ内の動作イベント周波数テーブルにアクセスするようにさらに構成される。クロック制御回路は、クロック信号の周波数を決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成するようにさらに構成される。
【図面の簡単な説明】
【００１１】
【図１Ａ】高周波電流サージによって引き起こされる供給電圧ドループを経験する例示的なデバイスの回路図である。
【図１Ｂ】図1Aの例示的なデバイス内の高周波電流サージによって引き起こされる供給電圧ドループを示すグラフである。
【図２】例示的な中央処理装置(CPU)のシミュレーションの間に生成された供給電圧ドループを示すグラフである。
【図３】動作イベントに対応するイベント信号に応答して機能回路内の供給電圧ドループを低減または回避するように構成される例示的な供給電圧ドループ管理回路のブロック図である。
【図４】機能回路内の供給電圧ドループを低減または回避するために図3の供給電圧ドループ管理回路によって採用される例示的なプロセスのフローチャートである。
【図５】動作イベントに対応するイベント信号に応答して機能回路内の供給電圧ドループを低減または回避するように構成される別の例示的な供給電圧ドループ管理回路のブロック図である。
【図６Ａ】機能回路内の供給電圧ドループを低減または回避するために図5の供給電圧ドループ管理回路によって採用される例示的なプロセスを示すフローチャートである。
【図６Ｂ】機能回路内の供給電圧ドループを低減または回避するために図5の供給電圧ドループ管理回路によって採用される例示的なプロセスを示すフローチャートである。
【図７】図5の供給電圧ドループ管理回路によって受信されたイベント信号の例示的なセットの図である。
【図８】図5のフィルタリング回路によって生成されたトレーニング信号の例示的なセットの図である。
【図９】図3および図5の供給電圧ドループ管理回路を含んでもよい例示的なプロセッサベースシステムのブロック図である。
【発明を実施するための形態】
【００１２】
ここで図面を参照して、本開示のいくつかの例示的な態様について説明する。「例示的な」という語は、本明細書では「例、事例、または例示として機能すること」を意味するために使用される。本明細書で「例示的」と記載されている任意の態様は、必ずしも他の態様よりも好ましいまたは有利であると解釈されるべきではない。
【００１３】
発明を実施するための形態において開示する態様は、供給電圧ドループを低減または回避するための供給電圧ドループ管理回路を含む。一態様では、供給電圧ドループ管理回路が提供される。供給電圧ドループ管理回路は、動作周波数におけるクロック信号によってクロック制御される機能回路によって生成されるイベント信号を受信するように構成される割込み回路を含む。各イベント信号は、機能回路内で発生する動作イベントに対応する。イベント信号によって識別される動作イベントの発生は、機能回路に電力供給する電源に対する負荷電流要求を増大させる。負荷電流要求におけるそのような増加は、電源内に供給電圧ドループを引き起こすのに十分である。供給電圧ドループを低減または回避するために、割込み回路は、受信されたイベント信号に応答して割込み信号を生成するように構成される。割込み信号は、イベント信号に対応する動作イベントを識別する動作イベント標示を含む。供給電圧ドループ管理回路はまた、多数のエントリを有する動作イベント周波数テーブルを採用するメモリを含む。動作イベント周波数テーブルの各エントリは、イベント信号によって識別された動作イベントに対応するターゲット周波数を含む。動作イベント中にターゲット周波数において動作することで、電源に対する機能回路の負荷電流要求が低減され、したがって動作イベントに対応する電源の供給電圧ドループが低減される。供給電圧ドループを低減するようにターゲット周波数を達成するために、供給電圧ドループ管理回路は、クロック制御回路を含む。クロック制御回路は、割込み信号を受信し、ターゲット周波数を決定するために割込み信号の動作イベント標示に基づいてメモリ内の動作イベント周波数テーブルにアクセスするように構成される。そのような情報を使用して、クロック制御回路は、クロック信号の周波数を決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成するように構成される。このようにして、供給電圧ドループ管理回路は、供給電圧ドループが低減または回避されるように、動作イベント中に機能回路のクロック信号の周波数の変化を引き起こす。
【００１４】
本開示の例示的な態様に取り組む前に、供給電圧ドループの詳細について最初に説明する。この点について、図1Aは、機能回路102の負荷電流要求の増加に応答して供給電圧ドループを経験する例示的なデバイス100を示す。機能回路102は、プリント回路板(PCB)108上に配設されたパッケージ106内に含まれる対応するチップ104上で採用される。機能回路102に供給電圧(VDD)を供給するように構成される電源110は、PCB108上に含まれる。デバイス100の各部は、対応するインピーダンス(Z)、インダクタンス(L)、およびキャパシタンス(C)を有する。たとえば、PCB108はインピーダンス(Z1)、インダクタンス(L1)、およびキャパシタンス(C1)を含み、パッケージ106はインピーダンス(Z2)、インダクタンス(L2)、およびキャパシタンス(C2)を含み、チップ104はインピーダンス(Z3)、インダクタンス(L3)、およびキャパシタンス(C3)を含む。さらに、デバイス100の共振周波数は、組み合わせられたインピーダンス(Z1〜Z3)、インダクタンス(L1〜L3)、およびキャパシタンス(C1〜C3)に少なくとも部分的に基づく。機能回路102による増加した負荷電流要求に応答して、電源110によって供給される供給電圧(VDD)は、一時的な振幅の低減(すなわち、供給電圧ドループ)を経験する可能性がある。そのような供給電圧ドループの大きさおよび持続時間は、電源110によって供給される電流(I)の周波数と連動するデバイス100の共振周波数の関数である。特に、共振周波数にほぼ等しい周波数において供給される電流(I)におけるサージは、短い時間期間にわたる大きい供給電圧ドループを引き起こす可能性がある。
【００１５】
この点について、図1Bは、図1Aのデバイス100によって経験される供給電圧ドループ114を示すグラフ112を含む。供給電圧ドループ114は、この例では100メガヘルツ(100MHz)であるデバイス100の共振周波数にほぼ等しい周波数において電源110によって供給される電流(I)内のサージによって引き起こされる。グラフ112に示すように、供給電圧ドループ114は、約5ナノ秒(5ns)にわたって約70ミリボルト(70mV)の供給電圧(VDD)における低下(たとえば、約5nsで開始して10ns付近で最大ドループを有する)に対応する。オンダイの電圧センサおよび電圧調節器など、従来の反応性技法は、共振周波数より低い周波数において電流(I)に対応する供給電圧ドループの影響を低減してもよいが、そのような技法は、100MHzの共振周波数にほぼ等しい周波数において電流(I)におけるサージに対応する供給電圧ドループを軽減するために十分に速やかに応答することはできない。特に、この例では、オンダイの電圧センサおよび電圧調節器は、供給電圧ドループ114を検出して5nsにわたって効果的に供給電圧(VDD)を調節することはできない。
【００１６】
加えて、供給電圧ドループを引き起こす回路の共振周波数にほぼ等しい周波数における電流(I)におけるサージは、機能回路内で発生する特定の動作イベントに相当してもよい。たとえば、分岐ミス予測およびキャッシュミスなど、中央処理装置(CPU)内で起こる動作イベントは、CPUの共振周波数にほぼ等しい電流(I)において対応するサージを引き起こす場合がある。この点について、図2は、サンプル命令を実行する例示的なCPUのシミュレーションの間に生成された供給電圧ドループ202(1)〜202(4)のグラフ200を含む。グラフ200に示すように、ゼロ(0)nsから2(2.0)nsまでの期間の間に、CPUは供給電圧ドループ202(1)〜202(4)を経験する。供給電圧ドループ202(1)〜202(4)が発生する規則性は、CPU内で発生する1つまたは複数の動作イベントが供給電圧ドループ202(1)〜202(4)の原因になる場合があることを示唆する。CPUの共振周波数にほぼ等しい周波数において電流(I)におけるサージによって引き起こされる供給電圧ドループに関連する動作イベント間のそのような相関関係は、そのような供給電圧ドループを低減または回避するために使用されてもよい。
【００１７】
この点について、図3は、動作イベント306に対応するイベント信号304に応答して機能回路302内の供給電圧ドループを低減または回避するように構成される例示的な供給電圧ドループ管理回路300を示す。供給電圧ドループ管理回路300は、動作周波数(fOP)におけるクロック信号CLKによってクロック制御される機能回路302によって生成されるイベント信号304を受信するように構成される割込み回路308を含む。各イベント信号304は、機能回路302に電力供給する電源310に対する負荷電流要求を増加する機能回路302内で発生する動作イベント306に対応する。負荷電流要求におけるそのような増加は、動作周波数(fOP)における電源310内に供給電圧ドループを引き起こすのに十分である。イベント信号304と、負荷電流要求を増加する対応する動作イベント306との間の相関関係は、機能回路302の設計および試験段階の間に決定されてもよい。たとえば、分岐ミス予測、プライベートキャッシュミス、ベクトル命令、または実行ユニット利用などの動作イベント306は、機能回路302上の電力保全性試験を実行するときに負荷電流要求における増加を引き起こすように決定されてもよい。
【００１８】
引き続き図3を参照すると、供給電圧ドループを低減または回避するために、割込み回路308は、受信されたイベント信号304に応答して割込み信号312を生成するように構成される。割込み信号312は、イベント信号304に対応する動作イベント306を識別する動作イベント標示を含む。加えて、供給電圧ドループ管理回路300は、メモリ314を含む。メモリ314は、多数のエントリ318(0)〜318(N)を有する動作イベント周波数テーブル316を含み、多数のエントリ318(0)〜318(N)の各々は、イベント信号304によって識別される動作イベント306に対応するターゲット周波数(fT)を含む。動作イベント306の間にターゲット周波数(fT)において動作する機能回路302に応答して、機能回路302による電力供給310に対する負荷電流要求が低減される。このようにして負荷電流要求を低減することで、動作イベント306に関連する電源310の供給電圧ドループの振幅が低減される。
【００１９】
引き続き図3を参照すると、供給電圧ドループを低減するようにターゲット周波数(fT)を達成するために、供給電圧ドループ管理回路300は、クロック制御回路320を含む。クロック制御回路320は、割込み信号312を受信してメモリ314内の動作イベント周波数テーブル316にアクセスするように構成される。動作イベント周波数テーブル316は、対応する動作イベント306のターゲット周波数(fT)を決定するために割込み信号312の動作イベント標示に基づいてアクセスされてもよい。そのような情報を使用して、クロック制御回路320は、クロック信号CLKの周波数を決定されたターゲット周波数(fT)に調整することをクロック発生器324に行わせるために、クロック周波数調整信号322を生成するように構成される。クロック周波数調整信号322は、クロック信号CLKが設定されるべき特定のクロックレート(たとえば、ターゲット周波数(fT))を示してもよい。その結果、クロック周波数調整信号322は、クロック信号CLKの周波数をターゲット周波数(fT)まで低減するために、クロック発生器324に、クロック信号CLKのクロックストレッチ(clock stretching)またはクロックスワロー(clock swallowing)を実行させてもよい。
【００２０】
クロック信号CLKをターゲット周波数(fT)まで低減することで、機能回路302が動作イベント306の間に動作する速度が低減される。その結果、機能回路302による負荷電流要求における対応する増加が低減され、電源310によって供給される増加された電流の周波数が低減される。電源310によって供給される増加された電流の低減された周波数は、供給電圧ドループの振幅を低減させる。このようにして、供給電圧ドループ管理回路300は、対応する供給電圧ドループが低減または回避されるように、動作イベント306に対応する機能回路302のクロック信号CLKの周波数の変化を引き起こす。
【００２１】
引き続き図3を参照すると、イベント信号304は、イベント信号304と同時に発生する動作イベント306を識別するように構成されてもよい。代替的に、イベント信号304はまた、イベント信号304の発生に続いて今後の時間に発生する動作イベント306を識別するように構成されてもよい。特に、イベント信号304が今後の動作イベント306を識別した場合、供給電圧ドループ管理回路300は、対応する供給電圧ドループを低減または回避するために動作イベント306の発生の前にクロック信号CLKの周波数を調整するように構成される。今後の動作イベント306を識別するようにイベント信号304を構成することによって、供給電圧ドループ管理回路300は、潜在的な供給電圧ドループを予測して事前にクロック信号CLKを調整することができる。
【００２２】
図4は、図3の供給電圧ドループ管理回路300を使用して供給電圧ドループを低減または回避するための例示的なプロセス400を示す。プロセス400は、動作周波数(fOP)におけるクロック信号CLKに基づいて動作する機能回路302によって生成されたイベント信号304を受信する割込み回路308を含む(ブロック402)。前に説明したように、イベント信号304は、動作周波数(fOP)において機能回路302に電力供給する電源310内に供給電圧ドループを引き起こすのに十分な、電源310に対する負荷電流要求を増加する機能回路302内の動作イベント306に対応する。プロセス400はまた、受信されたイベント信号304に応答して割込み信号312を生成する割込み回路308を含む(ブロック404)。上記で説明したように、割込み信号312は、イベント信号304に対応する動作イベント306を識別する動作イベント標示を含む。プロセス400はまた、割込み信号312に応答して、動作イベント306に対応するターゲット周波数(fT)を決定するために、割込み信号312の動作イベント標示に基づいてエントリ318(0)〜318(N)からターゲット周波数(fT)にアクセスするクロック制御回路320を含む(ブロック406)。上述のように、機能回路302による電源310に対する負荷電流要求は、機能回路302がターゲット周波数(fT)において動作するときに電源310の供給電圧ドループを低減する。プロセス400は、クロック信号CLKの周波数を決定されたターゲット周波数(fT)に調整することをクロック発生器324に行わせるために、クロック周波数調整信号322を生成するクロック制御回路320をさらに含む(ブロック408)。プロセス400をこのように使用することで、供給電圧ドループ管理回路300は、対応する供給電圧ドループが低減または回避されるように、動作イベント306の間に機能回路302のクロック信号CLKの周波数の変化を引き起こすことが可能になる。
【００２３】
非限定的な例として図3および図4を参照すると、割込み回路308は、動作イベント306が分岐ミス予測に対応することを示す動作イベント標示を有するイベント信号304を受信する。イベント信号304を受信したことに応答して、割込み回路308は、動作イベント標示を含む割込み信号312を生成してクロック制御回路320に割込み信号312を供給する。クロック制御回路320は、動作イベント標示に対応する動作イベント周波数テーブル316のエントリ318(0)〜318(N)にアクセスして、分岐ミス予測のターゲット周波数(fT)が500MHzであると判定する。しかしながら、対応する動作周波数(fOP)は、1ギガヘルツ(1GHz)である。したがって、分岐ミス予測に対応する供給電圧ドループを低減または回避するために、クロック制御回路320は、クロック信号CLKを500MHzのターゲット周波数(fT)に調整するために、クロック発生器324に、クロック信号CLKの1つおきのパルスをスワローさせるためにクロック周波数調整信号322を生成する。
【００２４】
図3の供給電圧ドループ管理回路300に加えて、他の態様は、増加した負荷電流要求に対応するいくつかの動作イベントが機能回路内で発生する規則性および/または予測可能性を利用する追加の要素を含むことができる。この点について、図5は、動作イベント306に対応するイベント信号304に応答して機能回路302内の供給電圧ドループを低減または回避するように構成される別の例示的な供給電圧ドループ管理回路500を示す。供給電圧ドループ管理回路500は、図3と図5との間で共通の要素番号で示されるように、図3の供給電圧ドループ管理回路300と共通のいくつかの構成要素を含み、したがって本明細書で再び説明されることはない。
【００２５】
引き続き図5を参照すると、供給電圧ドループ管理回路500は、1次イベント信号304-1および2次イベント信号304-2を含むイベント信号304を受信するように構成される。このようにして、1次イベント信号304-1は、第1の周波数(f1)において電源310によって供給される電流(I)に対応する1次動作イベント306-1に対応する。2次イベント信号304-2は、第1の周波数(f1)より低い第2の周波数(f2)において電源310によって供給される電流に対応する2次動作イベント306-2に対応する。たとえば、第1の周波数(f1)は、10ns未満にわたって供給電圧ドループを引き起こす1次動作イベント306-1を生じることができる一方で、第2の周波数(f2)は、10〜20(10s of)ナノ秒(ns)にわたって供給電圧ドループを引き起こす2次動作イベント306-2を生じることができる。このようにして、供給電圧ドループ管理回路500は、1次動作イベント306-1に対応する供給電圧ドループを低減または回避するために、2次動作イベント306-2と比較してより少ない時間を有する。非限定的な例として、例示的な1次動作イベント306-1は、分岐ミス予測、プライベートキャッシュミス、ベクトル命令、または実行ユニット利用を含むことができる。さらに、例示的な2次動作イベント306-2は、最終レベルキャッシュミス、テーブルルックアサイドバッファミス、ウェイクアップ割込み、またはスリープイベントを含むことができる。
【００２６】
引き続き図5を参照すると、割込み回路308は、1次動作イベント306-1に対応する1次イベント信号304-1を受信するように構成される。図3の供給電圧ドループ管理回路300と同様に、割込み回路308は、1次イベント信号304-1を受信したことに応答して割込み信号312を生成する。割込み信号312は、クロック信号CLKをターゲット周波数(fT)に調整するようにクロック発生器324を促すことをクロック制御回路320に行わせる。このようにして、割込み回路308が、第1の周波数(f1)に一致する時間フレーム内の関連する供給電圧ドループを低減または回避するために1次動作イベント306-1の発生に対処することができるように、割込み回路308は、1次動作イベント306-1に応答するように構成される。
【００２７】
引き続き図5を参照すると、供給電圧ドループ管理回路500はまた、イベントポーリング回路502を含む。割込み回路308のように1次イベント信号304-1を受信するのではなく、イベントポーリング回路502は、規定されたポーリングレートにおいて機能回路302をポーリングするように構成される。たとえば、イベントポーリング回路502は、動作イベント306に対応するイベント信号304がクロック信号CLKの直近のXサイクル数内で生成されたかどうかを判定するためにポーリングを使用するように構成されてもよい。このようにして、イベントポーリング回路502は、機能回路302が規定されたポーリング時間内に動作イベント306に対応するイベント信号304を生成するかどうかを判定する。この例では、イベントポーリング回路502は、1次イベント信号304-1と2次イベント信号304-2の両方をポーリングするように構成される。機能回路302が規定されたポーリング時間内にイベント信号304を生成したと判定したことに応答して、イベントポーリング回路502は、ポーリングイベント信号504を生成するように構成される。ポーリングイベント信号504は、動作イベント306のタイプを示すイベントタイプ、動作イベント306が存在するかまたは後で発生する機能回路302内の要素を識別するイベントロケーション、およびイベント信号304が生成されるクロック信号CLKのサイクルを識別するイベントクロック時間など、対応する動作イベント306を識別する動作イベント標示を含むことができる。
【００２８】
引き続き図5を参照すると、供給電圧ドループ管理回路500はまた、ポーリングイベント信号504を受信するように構成されるフィルタリング回路506を含む。ポーリングイベント信号504を受信したことに応答して、フィルタリング回路506は、ポーリングイベント信号504のイベント信号304に対応する動作イベント306を識別する動作イベント標示などの情報を含んでもよいポーリング調整信号508を生成するように構成される。クロック制御回路320は、ポーリング調整信号508を受信して、動作イベント標示によって識別される動作イベント306に対応するターゲット周波数(fT)を決定するために動作イベント周波数テーブル316にアクセスするように構成される。さらに、クロック制御回路320は、クロック信号CLKの周波数をターゲット周波数(fT)に調整することをクロック発生器324に行わせるために、クロック周波数調整信号322を生成するように構成される。このようにして、イベントポーリング回路502は、供給電圧ドループを低減または回避するようにクロック信号CLKを調整するためにフィルタリング回路506と併せて使用されてもよい。加えて、イベントポーリング回路502は1次イベント信号304-1および2次イベント信号304-2に対して機能回路302をポーリングするので、イベントポーリング回路502およびフィルタリング回路506は、割込み回路308と同様の1次動作イベント306-1ならびに2次動作イベント306-2に対応する供給電圧ドループを低減または回避することを供給電圧ドループ管理回路500が行うことを可能にする。
【００２９】
引き続き図5を参照すると、上記で説明したクロック調整機能に加えて、フィルタリング回路506はまた、供給電圧ドループの低減および回避を改善するために、供給電圧ドループ管理回路500が動作イベント306の詳細を学習することを可能にする。この点について、フィルタリング回路506は、ポーリングイベント信号504を受信することに加えて、割込み信号312を受信するように構成される。さらに、フィルタリング回路506は、機能回路302のクリティカルパスを複製するクリティカルパスレプリカ回路510と通信するように構成される。フィルタリング回路506は、クロック信号CLKの特定の周波数において機能回路302内の動作イベント306のタイミングに関連するタイミングデータを提供するクリティカルパスレプリカ回路510からタイミングエラー信号512を受信するように構成される。このようにして、フィルタリング回路506は、トレーニング信号514を生成するために、受信された割込み信号312またはポーリングイベント信号504からの動作イベント標示をタイミングエラー信号512と併せて使用する。トレーニング信号514は、対応する動作イベント306のイベントタイプ、イベントロケーション、イベントクロック時間、およびタイミングデータなどの情報を示す動作イベント標示を含むことができる。特に、タイミングデータは、動作イベント306がクリティカルパスレプリカ回路510内で生成された任意のタイミングエラーに関連するかどうかを示す。
【００３０】
引き続き図5を参照すると、供給電圧ドループ管理回路500はまた、フィルタリング回路506がトレーニング信号514を供給するように構成される第2のメモリ516を含む。このようにして、第2のメモリ516は、トレーニング信号514の動作イベント標示およびタイミングデータを記憶する多数のエントリ520(0)〜520(M)を有するイベントログテーブル518を含む。さらに、トレーニング回路522は、記憶された動作イベント標示およびタイミングデータを取り出すためにイベントログテーブル518にアクセスするように構成される。トレーニング回路522は、特定の時間においてまたは特定のパターンで機能回路302の一定の要素内で発生する動作イベント306に対応する特定のターゲット周波数(fT)を学習するためにそのような情報を使用するようにさらに構成される。トレーニング回路522は、そのような決定に基づいて動作イベント周波数テーブル316内のエントリ318(0)〜318(N)を更新するようにさらに構成される。このようにして、トレーニング回路522は、そのような動作イベント306が発生する周波数および対応する供給電圧ドループを低減または回避することにおいて最も効果的である対応するターゲット周波数(fT)など、機能回路302の動作イベント306の詳細を学習するために使用されてもよい。したがって、トレーニング回路522は、クロック信号CLKに対する調整が機能回路302の特定の設計およびタイミング特性に適合するように、供給電圧ドループ管理回路500を調整するのを助けることができる。さらに、この態様では、トレーニング回路522は供給電圧ドループ管理回路500とは別に採用されているが、他の態様は、トレーニング回路522および供給電圧ドループ管理回路500を同じダイ上に採用する場合がある。
【００３１】
図6Aおよび図6Bは、図5の供給電圧ドループ管理回路500を使用して供給電圧ドループを低減または回避するための例示的なプロセス600を示す。図示されていないが、プロセス600はまた、図4のプロセス400に対して説明したステップを含む。このようにして、プロセス600の示された部分は、プロセス400で説明したステップに付加される、プロセス600に含まれるステップを説明する。
【００３２】
引き続き図6Aを参照すると、プロセス600は、機能回路302が規定されたポーリング時間内に動作イベント306に対応するイベント信号304を生成するかどうかを判定するために、規定されたポーリングレートにおいて機能回路302をポーリングするイベントポーリング回路502を含む(ブロック602)。プロセス600はまた、機能回路302が規定されたポーリング時間内にイベント信号304を生成したと判定したことに応答してポーリングイベント信号504を生成するイベントポーリング回路502を含む(ブロック604)。上記で説明したように、ポーリングイベント信号504はイベント信号304に対応する動作イベント306を識別する動作イベント標示を含む。プロセス600はまた、ポーリングイベント信号504に応答してポーリング調整信号508を生成するフィルタリング回路506を含む(ブロック606)。上記で説明したように、ポーリング調整信号508は、ポーリングイベント信号504のイベント信号304に対応する動作イベント306を識別する動作イベント標示を含む。加えて、プロセス600は、動作イベント306に対応するターゲット周波数(fT)を決定するために、ポーリング調整信号508の動作イベント標示に基づいてメモリ314内の動作イベント周波数テーブル316にアクセスするクロック制御回路320を含む(ブロック608)。さらに、プロセス600は、クロック信号CLKの周波数を決定されたターゲット周波数(fT)に調整することをクロック発生器324に行わせるために、クロック周波数調整信号322を生成するクロック制御回路320を含む(ブロック610)。
【００３３】
クロック信号CLKを調整することに加えて、プロセス600はまた、クロック信号CLKに対する調整が機能回路302の特定の設計およびタイミング特性に適合するように、供給電圧ドループ管理回路500を調整するために図6Bに示すステップを含む。図6Bのステップは図6Aのブロック610に続いて示されているが、以下のステップは、図示の順序で実行されることに限定されない。このようにして、図6Bを参照すると、プロセス600はまた、機能回路302のクリティカルパスを複製するクリティカルパスレプリカ回路510によって生成される動作イベント306に関連するタイミングデータを含むタイミングエラー信号512を受信するフィルタリング回路506を含む(ブロック612)。さらに、プロセス600は、割込み信号312およびポーリングイベント信号504のうちの一方に応答してトレーニング信号514を生成するフィルタリング回路506を含む(ブロック614)。上記で説明したように、トレーニング信号514は、受信された割込み信号312またはポーリングイベント信号504、ならびにタイミングエラー信号512からのタイミングデータに対応する動作イベント306を識別する動作イベント標示を含む。さらに、プロセス600は、対応するトレーニング信号514の動作イベント標示およびタイミングデータをイベントログテーブル518内の対応するエントリ520(0)〜520(M)に供給するフィルタリング回路506を含む(ブロック616)。プロセス600はまた、対応するトレーニング信号514の動作イベント標示およびタイミングデータに基づいてメモリ314の動作イベント周波数テーブル316内のエントリ318(0)〜318(N)を更新するトレーニング回路522を含む(ブロック618)。このようにして、プロセス600は、動作イベント306によって引き起こされる供給電圧ドループを低減または回避しながら同様に、クロック信号CLKに対する調整が機能回路302の特定の設計およびタイミング特性に適合するように供給電圧ドループ管理回路500を調整することができる。
【００３４】
供給電圧ドループを低減または回避するためにクロック信号CLKを調整する役割を果たす信号の詳細に目を向けると、図7は、図5の供給電圧ドループ管理回路500によって受信されてもよいイベント信号304(1)〜304(5)の例示的なセット700を示す。図7に示すように、各イベント信号304(1)〜304(5)の動作イベント標示は、情報の多数の要素を含むことができる。非限定的な例として、イベント信号304(1)〜304(5)の動作イベント標示は、動作イベント306(1)〜306(5)のシーケンス内のどこでイベント信号304が立ち下がるかを示すイベント番号(EN)と、動作イベント306(1)〜306(5)の機能を示すイベントタイプ(ET)とを含む。動作イベント標示は、機能回路302内のどこで対応する動作イベント306(1)〜306(5)が発生するかを示すイベントロケーション(EL)と、クロック信号CLKのどのサイクル上で対応する動作イベント306(1)〜306(5)が開始するかを示すイベントクロック時間(EC)とをさらに含むことができる。たとえば、イベント信号304(1)の動作イベント標示は、対応する動作イベント306(1)は"E375"の番号を付けられ、「L1キャッシュミス」であることを示す。イベント信号304(1)の動作イベント標示は、「L1キャッシュミス」が「コア2」の「クラスタ1」内で発生し、クロック信号CLKのサイクル"395"で開始することをさらに示す。同様の情報が、イベント信号304(2)〜304(5)に対して表記されている。
【００３５】
加えて、図8は、図5のフィルタリング回路506によって生成されたトレーニング信号514(1)〜514(3)の例示的なセット800を示す。この例では、トレーニング信号514(1)〜514(3)は、図7のイベント信号304(1)〜304(5)の動作イベント標示と同様であるトレーニング情報を含む。しかしながら、トレーニング信号514(1)〜514(3)は、より少ないデータがイベントログテーブル518内に記憶されるように、イベントタイプ(ET)「L1キャッシュミス」を含むイベント信号304(1)〜304(5)をフィルタで除去することによって生成される。このようにしてトレーニング信号514(1)〜514(3)を生成することは、イベントログテーブル518がトレーニングのために有用な情報を記憶しながら、設計者が、供給電圧ドループ管理回路500を調整するためにあまり重要でないと判定した情報をフィルタで除去することを可能にする。たとえば、トレーニング信号514(1)のトレーニングデータは、フィルタリングされたイベント番号(FEN)"E376"と、「L2キャッシュミス」のフィルタリングされたイベントタイプ(FET)とを含む。さらに、トレーニング信号514(1)のトレーニングデータは、「コア1」内の「クラスタ2」のフィルタリングされたイベントロケーション(FEL)と、"415"のフィルタリングされたイベントクロック時間(FEC)とを含む。同様の情報が、トレーニング信号514(2)、514(3)に対して表記されている。このようにして、そのようなトレーニングデータは、各動作イベント306に対応するターゲット周波数(fT)を生成しながら、あまり重要でないイベント信号304(1)、304(4)に対するそのようなトレーニングを実行することを回避するために、トレーニング回路522によって使用されてもよい。
【００３６】
本明細書で説明する要素は、特定の機能を実行するための手段と呼ばれることがある。この点について、割込み回路308は、「動作周波数におけるクロック信号に基づいて動作する機能回路によって生成されるイベント信号を受信するための手段であって、イベント信号は、動作周波数において機能回路に電力供給する電源内に供給電圧ドループを引き起こすのに十分な、電源に対する負荷電流要求を増加する機能回路内の動作イベントに対応する、手段」と本明細書で呼ばれることがある。割込み回路308はまた、「受信されたイベント信号に応答して割込み信号を生成するための手段であって、割込み信号は、イベント信号に対応する動作イベントを識別する動作イベント標示を含む、手段」と本明細書で呼ばれることがある。メモリ314は、「複数のエントリを記憶するための手段であって、各エントリは、機能回路による電源に対する負荷電流要求が、機能回路がターゲット周波数において動作するときに電源の供給電圧ドループを低減するように、イベント信号に対応する動作イベントに対応するターゲット周波数を含む、手段」と本明細書で呼ばれることがある。クロック制御回路320は、「受信されたイベント信号の動作イベントに対応する動作イベント標示を含む割込み信号を受信するための手段」と呼ばれることがある。クロック制御回路320はまた、「動作イベントに対応するターゲット周波数を決定するために割込み信号の動作イベント標示に基づいて記憶するための手段にアクセスするための手段」と本明細書で呼ばれることがある。クロック制御回路320はまた、「クロック信号の周波数を決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成するための手段」と本明細書で呼ばれることがある。
【００３７】
本明細書で開示する態様に従って供給電圧ドループを低減または回避するための供給電圧ドループ管理回路は、任意のプロセッサベースデバイス内に設けられてもよく、または組み込まれてもよい。この例には、限定はしないが、セットトップボックス、エンターテインメントユニット、ナビゲーションデバイス、通信デバイス、固定ロケーションデータユニット、モバイルロケーションデータユニット、モバイルフォン、セルラーフォン、スマートフォン、タブレット、ファブレット、サーバ、コンピュータ、ポータブルコンピュータ、デスクトップコンピュータ、携帯情報端末(PDA)、モニタ、コンピュータモニタ、テレビ、チューナ、ラジオ、衛星ラジオ、音楽プレーヤ、デジタル音楽プレーヤ、ポータブル音楽プレーヤ、デジタルビデオプレーヤ、ビデオプレーヤ、デジタルビデオディスク(DVD)プレーヤ、ポータブルデジタルビデオプレーヤ、および自動車が含まれる。
【００３８】
この点について、図9は、図3の供給電圧ドループ管理回路300を採用してもよいプロセッサベースシステム900の一例を示す。さらに、図示されていないが、プロセッサベースシステム900は、供給電圧ドループ管理回路300の代わりに図5の供給電圧ドループ管理回路500を採用することができる。この例では、プロセッサベースのシステム900は、各々が1つまたは複数のプロセッサ904を含む、1つまたは複数の中央処理装置(CPU)902を含む。図9に示すように、CPU902は、供給電圧ドループ管理回路300と通信する。CPU902は、一時的に記憶されているデータに迅速にアクセスするために、プロセッサ904に結合されたキャッシュメモリ906を有してもよい。CPU902は、システムバス908に結合され、プロセッサベースシステム900内に含まれるマスタデバイスとスレーブデバイスとを相互結合することができる。よく知られているように、CPU902は、システムバス908を介してアドレス情報、制御情報、およびデータ情報を交換することによって、これらの他のデバイスと通信する。たとえば、CPU902は、スレーブデバイスの一例として、メモリコントローラ910にバストランザクション要求を通信することができる。図9には示されていないが、複数のシステムバス908を設けることができ、各システムバス908が異なるファブリックを構成する。
【００３９】
他のマスタデバイスおよびスレーブデバイスがシステムバス908に接続されてもよい。図9に示されるように、これらのデバイスは、メモリシステム912、1つまたは複数の入力デバイス914、1つまたは複数の出力デバイス916、1つまたは複数のネットワークインターフェースデバイス918、および1つまたは複数のディスプレイコントローラ920を例として含んでもよい。入力デバイス914は、入力キー、スイッチ、音声プロセッサなどを含むが、これらに限定されない、任意のタイプの入力デバイスを含むことができる。出力デバイス916は、限定はしないが、オーディオ、ビデオ、他の視覚的インジケータなどを含む、任意のタイプの出力デバイスを含んでもよい。ネットワークインターフェースデバイス918は、ネットワーク922へのデータ、およびネットワーク922からのデータの交換を可能にするように構成される任意のデバイスとすることができる。ネットワーク922は、限定はしないが、有線ネットワークまたはワイヤレスネットワーク、プライベートネットワークまたは公衆ネットワーク、ローカルエリアネットワーク(LAN)、ワイヤレスローカルエリアネットワーク(WLAN)、ワイドエリアネットワーク(WAN)、BLUETOOTH(登録商標)ネットワーク、およびインターネットを含む、任意のタイプのネットワークであってもよい。ネットワークインターフェースデバイス918は、必要に応じて、任意のタイプの通信プロトコルをサポートするように構成されることが可能である。メモリシステム912は、1つまたは複数のメモリユニット924(0)〜924(P)を含んでもよい。
【００４０】
CPU902はまた、1つまたは複数のディスプレイ926に送られる情報を制御するために、システムバス908を介してディスプレイコントローラ920にアクセスするように構成されてもよい。ディスプレイコントローラ920は、1つまたは複数のビデオプロセッサ928を介して、表示されるべき情報をディスプレイ926に送り、ビデオプロセッサ928は、表示されるべき情報を、ディスプレイ926に適したフォーマットになるように処理する。ディスプレイ926は、限定はしないが、陰極線管(CRT)、液晶ディスプレイ(LCD)、プラズマディスプレイ、発光ダイオード(LED)ディスプレイなどを含む、任意のタイプのディスプレイを含むことができる。
【００４１】
本明細書で開示する態様に関して説明した様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムが、電子ハードウェア、メモリの中もしくは別のコンピュータ可読媒体の中に記憶されるとともにプロセッサもしくは他の処理デバイスによって実行される命令、または両方の組合せとして実装されてもよいことを、当業者はさらに了解されよう。本明細書で説明するマスタデバイスおよびスレーブデバイスは、例として、任意の回路、ハードウェア構成要素、集積回路(IC)、またはICチップにおいて利用されてもよい。本明細書で開示するメモリは、任意のタイプおよびサイズのメモリであってよく、任意のタイプの所望の情報を記憶するように構成されてもよい。この互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップについて、上記では概してそれらの機能性に関して説明した。そのような機能性がどのように実装されるのかは、特定の適用例、設計選択、および/またはシステム全体に課される設計制約によって決まる。当業者は、特定の適用例ごとに様々な方式で記載の機能を実装してもよいが、そのような実装の決定が、本開示の範囲からの逸脱を引き起こすと解釈されるべきではない。
【００４２】
本明細書で開示する態様に関連して説明した様々な例示的な論理ブロック、モジュール、および回路は、プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理デバイス、個別ゲートもしくはトランジスタ論理、個別ハードウェア構成要素、または本明細書で説明する機能を実行するように設計されたそれらの任意の組合せを用いて実装または実行されてもよい。プロセッサは、マイクロプロセッサであってよいが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンであってもよい。プロセッサはまた、コンピューティングデバイスの組合せ(たとえば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連携した1つもしくは複数のマイクロプロセッサ、または任意の他のそのような構成)として実装されてもよい。
【００４３】
本明細書で開示する態様は、ハードウェアにおいて具現化されてもよく、かつハードウェアに記憶され、たとえば、ランダムアクセスメモリ(RAM)、フラッシュメモリ、読取り専用メモリ(ROM)、電気的プログラマブルROM(EPROM)、電気的消去可能プログラマブルROM(EEPROM)、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、または当技術分野において知られている任意の他の形態のコンピュータ可読媒体の中に存在してもよい命令において具現化されてもよい。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取りかつ記憶媒体に情報を書き込むことができるようにプロセッサに結合される。代替として、記憶媒体は、プロセッサと一体化してよい。プロセッサおよび記憶媒体は、ASICの中に存在する場合がある。ASICは、リモート局の中に存在する場合がある。代替として、プロセッサおよび記憶媒体は、個別構成要素としてリモート局、基地局、またはサーバの中に存在する場合がある。
【００４４】
本明細書の例示的な態様のいずれかで説明した動作ステップが、例示および説明のために記載されていることにも留意されたい。説明した動作は、図示のシーケンス以外の数多くの異なるシーケンスにおいて実行される場合がある。さらに、単一の動作ステップにおいて説明する動作は、実際にはいくつかの異なるステップにおいて実行される場合がある。さらに、例示的な態様で説明した1つまたは複数の動作ステップは、組み合わせられてよい。当業者には容易に明らかになるように、フローチャート図に示される動作ステップが数多くの異なる変更を受ける場合があることを理解されたい。情報および信号が様々な異なる技術および技法のいずれかを使用して表される場合があることも当業者は理解されよう。たとえば、上記の説明全体にわたって参照される場合があるデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場もしくは磁気粒子、光場もしくは光学粒子、またはそれらの任意の組合せによって表されてもよい。
【００４５】
本開示のこれまでの説明は、任意の当業者が本開示を作製または使用できるようにするために提供される。本開示の様々な変更が当業者に容易に明らかになり、本明細書で定義する一般原理は、本開示の趣旨または範囲から逸脱することなく他の変形形態に適用されてもよい。したがって、本開示は、本明細書で説明した例および設計に限定されるものでなく、本明細書で開示した原理および新規の特徴と一致する最も広い範囲を与えられるべきである。
【符号の説明】
【００４６】
100  デバイス
102  機能回路
104  チップ
106  パッケージ
108  プリント回路板(PCB)
110  電源
112  グラフ
114  供給電圧ドループ
200  グラフ
202(1)  供給電圧ドループ
202(2)  供給電圧ドループ
202(3)  供給電圧ドループ
202(4)  供給電圧ドループ
300  供給電圧ドループ管理回路
302  機能回路
304  イベント信号
304(1)  イベント信号
304(2)  イベント信号
304(3)  イベント信号
304(4)  イベント信号
304(5)  イベント信号
304-1  1次イベント信号
304-2  2次イベント信号
306  動作イベント
306(1)  動作イベント
306(2)  動作イベント
306(3)  動作イベント
306(4)  動作イベント
306(5)  動作イベント
306-1  1次動作イベント
306-2  2次動作イベント
308  割込み回路
310  電源
312  割込み信号
314  メモリ
316  動作イベント周波数テーブル
318  エントリ
318(0)  エントリ
318(N)  エントリ
320  クロック制御回路
322  クロック周波数調整信号
324  クロック発生器
500  供給電圧ドループ管理回路
502  イベントポーリング回路
504  ポーリングイベント信号
506  フィルタリング回路
508  ポーリング調整信号
510  クリティカルパスレプリカ回路
512  タイミングエラー信号
514  タイミング信号
514(1)  タイミング信号
514(2)  タイミング信号
514(3)  タイミング信号
516  第2のメモリ
518  イベントログテーブル
520(0)  エントリ
520(M)  エントリ
522  トレーニング回路
700  イベント信号のセット
800  トレーニング信号のセット
900  プロセッサベースシステム
902  中央処理装置(CPU)
904  プロセッサ
906  キャッシュメモリ
908  システムバス
910  メモリコントローラ
912  メモリシステム
914  入力デバイス
916  出力デバイス
918  ネットワークインターフェースデバイス
920  ディスプレイコントローラ
922  ネットワーク
924(0)  メモリユニット
924(P)  メモリユニット
926  ディスプレイ
928  ビデオプロセッサ
【図１Ａ】
2019522837.tif 000003
【図１Ｂ】
2019522837.tif 000004
【図２】
2019522837.tif 000005
【図３】
2019522837.tif 000006
【図４】
2019522837.tif 000007
【図５】
2019522837.tif 000008
【図６Ａ】
2019522837.tif 000009
【図６Ｂ】
2019522837.tif 000010
【図７】
2019522837.tif 000011
【図８】
2019522837.tif 000012
【図９】
2019522837.tif 000013
【手続補正書】
【提出日】平成30年11月19日(2018.11.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
供給電圧ドループ管理回路であって、
割込み回路であって、
動作周波数におけるクロック信号に基づいて動作する機能回路によって生成されるイベント信号を受信することであって、前記イベント信号が、前記動作周波数において前記機能回路に電力供給する電源内に供給電圧ドループを引き起こすのに十分な、前記電源に対する負荷電流要求を増加する前記機能回路内の動作イベントに対応する、受信することと、
前記受信されたイベント信号に応答して割込み信号を生成することであって、前記割込み信号が、前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、生成することと
を行うように構成される割込み回路と、
複数のエントリを含む動作イベント周波数テーブルを含むメモリであって、各エントリが前記イベント信号に対応する前記動作イベントに対応するターゲット周波数を含み、前記機能回路による前記電源に対する前記負荷電流要求が、前記機能回路が前記ターゲット周波数において動作するときに前記電源の前記供給電圧ドループを低減する、メモリと、
クロック制御回路であって、
前記受信されたイベント信号の前記動作イベントに対応する前記動作イベント標示を含む前記割込み信号を受信することと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記割込み信号の前記動作イベント標示に基づいて前記メモリ内の前記動作イベント周波数テーブルにアクセスすることと、
前記クロック信号の周波数を前記決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成することと
を行うように構成されるクロック制御回路と、
フィルタリング回路であって、
前記割込み信号を受信することと、
前記機能回路のクリティカルパスを複製するクリティカルパスレプリカ回路によって生成された動作イベントに関連するタイミングデータを含むタイミングエラー信号を受信することと、
前記割込み信号に応答してトレーニング信号を生成することであって、前記トレーニング信号が前記動作イベント標示および前記タイミングデータを含む、生成することと
を行うように構成されるフィルタリング回路と、
複数のエントリを含むイベントログテーブルを含む第2のメモリであって、各エントリが、対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを含む、第2のメモリと、
トレーニング回路であって、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを取り出すために前記第2のメモリ内の前記イベントログテーブルにアクセスすることと、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータに基づいて前記メモリの前記動作イベント周波数テーブル内の前記複数のエントリを更新することと
を行うように構成されるトレーニング回路と
を備え、
前記フィルタリング回路が、前記イベントログテーブルの対応するエントリに前記動作イベント標示および前記タイミングデータを供給するようにさらに構成される、
供給電圧ドループ管理回路。
【請求項２】
イベントポーリング回路であって、
前記機能回路が規定されたポーリング時間内に動作イベントに対応するイベント信号を生成するかどうかを判定するために規定されたポーリングレートにおいて前記機能回路をポーリングすることと、
前記機能回路が前記規定されたポーリング時間内に前記イベント信号を生成したと判定したことに応答してポーリングイベント信号を生成することであって、前記ポーリングイベント信号が前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、生成することと
を行うように構成されるイベントポーリング回路
をさらに備える、請求項1に記載の供給電圧ドループ管理回路。
【請求項３】
前記フィルタリング回路が、
ポーリングイベント信号に応答してポーリング調整信号を生成することであって、前記ポーリング調整信号が、前記ポーリングイベント信号のイベント信号に対応する前記動作イベントを識別する前記動作イベント標示を含む、生成することと、
前記割込み信号および前記ポーリングイベント信号のうちの一方に応答して前記トレーニング信号を生成することであって、前記トレーニング信号が前記動作イベント標示および前記タイミングデータを含む、生成することと
を行うように構成され、
前記クロック制御回路が、
前記ポーリング調整信号を受信することと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記ポーリング調整信号の前記動作イベント標示に基づいて前記メモリ内の前記動作イベント周波数テーブルにアクセスすることと、
前記クロック信号の前記周波数を前記決定されたターゲット周波数に調整することを前記クロック発生器に行わせるために、前記クロック周波数調整信号を生成することと
を行うようにさらに構成される、
請求項2に記載の供給電圧ドループ管理回路。
【請求項４】
前記イベント信号が、1次動作イベントに対応する1次イベント信号を含み、前記1次動作イベントが第1の周波数において前記電源によって供給される電流に対応し、
前記割込み回路が、前記1次イベント信号を受信するようにさらに構成され、
前記イベントポーリング回路が、前記機能回路が前記規定されたポーリング時間内に前記1次イベント信号を生成するかどうかを判定するために前記規定されたポーリングレートにおいて前記機能回路をポーリングするようにさらに構成される、
請求項2に記載の供給電圧ドループ管理回路。
【請求項５】
前記イベント信号が2次動作イベントに対応する2次イベント信号をさらに含み、前記2次動作イベントが、前記第1の周波数より低い第2の周波数において前記電源によって供給される電流に対応し、
前記イベントポーリング回路が、前記機能回路が前記規定されたポーリング時間内に前記2次イベント信号を生成するかどうかを判定するために前記規定されたポーリングレートにおいて前記機能回路をポーリングするようにさらに構成される、
請求項4に記載の供給電圧ドループ管理回路。
【請求項６】
各1次動作イベントが、分岐ミス予測、プライベートキャッシュミス、ベクトル命令、および実行ユニット利用のうちの1つに対応する、請求項5に記載の供給電圧ドループ管理回路。
【請求項７】
各2次動作イベントが、最終レベルキャッシュミス、テーブルルックアサイドバッファミス、ウェイクアップ割込み、およびスリープイベントのうちの1つに対応する、請求項6に記載の供給電圧ドループ管理回路。
【請求項８】
前記クロック制御回路が、前記クロック発生器に前記クロック信号の1つまたは複数のサイクルをストレッチさせるために前記クロック周波数調整信号を生成するように構成される、請求項1に記載の供給電圧ドループ管理回路。
【請求項９】
前記クロック制御回路が、前記クロック発生器に前記クロック信号の1つまたは複数のサイクルをスワローさせるために前記クロック周波数調整信号を生成するように構成される、請求項1に記載の供給電圧ドループ管理回路。
【請求項１０】
前記イベント信号が今後の動作イベントに対応する、請求項1に記載の供給電圧ドループ管理回路。
【請求項１１】
集積回路(IC)内に統合される、請求項1に記載の供給電圧ドループ管理回路。
【請求項１２】
セットトップボックス、エンターテインメントユニット、ナビゲーションデバイス、通信デバイス、固定ロケーションデータユニット、モバイルロケーションデータユニット、モバイルフォン、セルラーフォン、スマートフォン、タブレット、ファブレット、サーバ、コンピュータ、ポータブルコンピュータ、デスクトップコンピュータ、携帯情報端末(PDA)、モニタ、コンピュータモニタ、テレビ、チューナ、ラジオ、衛星ラジオ、音楽プレーヤ、デジタル音楽プレーヤ、ポータブル音楽プレーヤ、デジタルビデオプレーヤ、ビデオプレーヤ、デジタルビデオディスク(DVD)プレーヤ、ポータブルデジタルビデオプレーヤ、および自動車からなるグループから選択されるデバイスに統合される、請求項1に記載の供給電圧ドループ管理回路。
【請求項１３】
供給電圧ドループ管理回路であって、
動作周波数におけるクロック信号に基づいて動作する機能回路によって生成されるイベント信号を受信するための手段であって、前記イベント信号が、前記動作周波数において前記機能回路に電力供給する電源内に供給電圧ドループを引き起こすのに十分な、前記電源に対する負荷電流要求を増加する前記機能回路内の動作イベントに対応する、手段と、
前記受信されたイベント信号に応答して割込み信号を生成するための手段であって、前記割込み信号が、前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、手段と、
複数のエントリを記憶するための手段であって、各エントリが前記イベント信号に対応する前記動作イベントに対応するターゲット周波数を含み、前記機能回路による前記電源に対する前記負荷電流要求が、前記機能回路が前記ターゲット周波数において動作するときに前記電源の前記供給電圧ドループを低減する、手段と、
前記受信されたイベント信号の前記動作イベントに対応する前記動作イベント標示を含む前記割込み信号を受信するための手段と、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記割込み信号の前記動作イベント標示に基づいて前記記憶するための手段にアクセスするための手段と、
前記クロック信号の周波数を前記決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成するための手段と、
情報をフィルタリングするための手段であって、
前記割込み信号を受信することと、
前記機能回路のクリティカルパスを複製する、クリティカルパスを複製するための手段によって生成された動作イベントに関連するタイミングデータを含むタイミングエラー信号を受信することと、
前記割込み信号に応答してトレーニング信号を生成することであって、前記トレーニング信号が前記動作イベント標示および前記タイミングデータを含む、生成することと
を行うように構成される、手段と、
複数のエントリを含むイベントログテーブルを含む第2の記憶するための手段であって、各エントリが、対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを含む、手段と、
トレーニングするための手段であって、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを取り出すために前記第2の記憶するための手段内の前記イベントログテーブルにアクセスすることと、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータに基づいて前記記憶するための手段の前記動作イベント周波数テーブル内の前記複数のエントリを更新することと
を行うように構成されるトレーニングするための手段と
を含み、
前記情報をフィルタリングするための手段が、前記イベントログテーブルの対応するエントリに前記動作イベント標示および前記タイミングデータを供給するようにさらに構成される、
供給電圧ドループ管理回路。
【請求項１４】
機能回路内の供給電圧ドループを低減または回避するための方法であって、
動作周波数におけるクロック信号に基づいて動作する機能回路によって生成されるイベント信号を受信するステップであって、前記イベント信号が、前記動作周波数において前記機能回路に電力供給する電源内に供給電圧ドループを引き起こすのに十分な、前記電源に対する負荷電流要求を増加する前記機能回路内の動作イベントに対応する、ステップと、
前記受信されたイベント信号に応答して割込み信号を生成するステップであって、前記割込み信号が、前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、ステップと、
前記割込み信号に応答して、前記動作イベントに対応するターゲット周波数を決定するために前記割込み信号の前記動作イベント標示に基づいて複数のエントリのうちの1つのエントリから前記ターゲット周波数にアクセスするステップであって、前記機能回路による前記電源に対する前記負荷電流要求が、前記機能回路が前記ターゲット周波数において動作するときに前記電源の前記供給電圧ドループを低減する、ステップと、
前記クロック信号の周波数を前記決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成するステップと、
前記機能回路のクリティカルパスを複製するクリティカルパスレプリカ回路によって生成された動作イベントに関連するタイミングデータを含むタイミングエラー信号を受信するステップと、
前記割込み信号に応答してトレーニング信号を生成するステップであって、前記トレーニング信号が前記動作イベント標示および前記タイミングデータを含む、ステップと、
イベントログテーブルの複数のエントリのうちの対応するエントリに、対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを供給するステップと、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータに基づいてメモリの動作イベント周波数テーブル内の複数のエントリを更新するステップと
を含む、方法。
【請求項１５】
前記機能回路が規定されたポーリング時間内に動作イベントに対応するイベント信号を生成するかどうかを判定するために規定されたポーリングレートにおいて前記機能回路をポーリングするステップと、
前記機能回路が前記規定されたポーリング時間内に前記イベント信号を生成したと判定したことに応答してポーリングイベント信号を生成するステップであって、前記ポーリングイベント信号が前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、ステップと
をさらに含む、請求項14に記載の方法。
【請求項１６】
前記ポーリングイベント信号に応答してポーリング調整信号を生成するステップであって、前記ポーリング調整信号が、前記ポーリングイベント信号の前記イベント信号に対応する前記動作イベントを識別する前記動作イベント標示を含む、ステップと、
前記割込み信号および前記ポーリングイベント信号のうちの一方に応答して前記トレーニング信号を生成するステップであって、前記トレーニング信号が前記動作イベント標示および前記タイミングデータを含む、ステップと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記ポーリング調整信号の前記動作イベント標示に基づいて前記メモリ内の前記動作イベント周波数テーブルにアクセスするステップと、
前記クロック信号の前記周波数を前記決定されたターゲット周波数に調整することを前記クロック発生器に行わせるために、前記クロック周波数調整信号を生成するステップと
をさらに含む、請求項15に記載の方法。
【請求項１７】
プロセッサベースシステムであって、
プロセッサを備える中央処理装置(CPU)と、
前記CPUをクロック制御するためにクロック信号を生成するように構成されるクロック発生器と、
供給電圧ドループ管理回路であって、
割込み回路であって、
動作周波数における前記クロック信号に基づいて動作する前記CPUによって生成されるイベント信号を受信することであって、前記イベント信号が、前記動作周波数において前記CPUに電力供給する電源内に供給電圧ドループを引き起こすのに十分な、前記電源に対する負荷電流要求を増加する前記CPU内の動作イベントに対応する、受信することと、
前記受信されたイベント信号に応答して割込み信号を生成することであって、前記割込み信号が、前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、生成することと
を行うように構成される割込み回路と、
複数のエントリを含む動作イベント周波数テーブルを含むメモリであって、各エントリが前記イベント信号に対応する前記動作イベントに対応するターゲット周波数を含み、前記CPUによる前記電源に対する前記負荷電流要求が、前記CPUが前記ターゲット周波数において動作するときに前記電源の前記供給電圧ドループを低減する、メモリと、
クロック制御回路であって、
前記受信されたイベント信号の前記動作イベントに対応する前記動作イベント標示を含む前記割込み信号を受信することと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記割込み信号の前記動作イベント標示に基づいて前記メモリ内の前記動作イベント周波数テーブルにアクセスすることと、
前記クロック信号の周波数を前記決定されたターゲット周波数に調整することを前記クロック発生器に行わせるために、クロック周波数調整信号を生成することと
を行うように構成されるクロック制御回路と、
フィルタリング回路であって、
前記割込み信号を受信することと、
前記機能回路のクリティカルパスを複製するクリティカルパスレプリカ回路によって生成された動作イベントに関連するタイミングデータを含むタイミングエラー信号を受信することと、
前記割込み信号に応答してトレーニング信号を生成することであって、前記トレーニング信号が前記動作イベント標示および前記タイミングデータを含む、生成することと
を行うように構成されるフィルタリング回路と、
複数のエントリを含むイベントログテーブルを含む第2のメモリであって、各エントリが、対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを含む、第2のメモリと、
トレーニング回路であって、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを取り出すために前記第2のメモリ内の前記イベントログテーブルにアクセスすることと、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータに基づいて前記メモリの前記動作イベント周波数テーブル内の前記複数のエントリを更新することと
を行うように構成されるトレーニング回路と
を備え供給電圧ドループ管理回路と
を備え、
前記フィルタリング回路が、前記イベントログテーブルの対応するエントリに前記動作イベント標示および前記タイミングデータを供給するようにさらに構成される、
プロセッサベースシステム。
【請求項１８】
前記供給電圧ドループ管理回路が、
イベントポーリング回路であって、
前記CPUが規定されたポーリング時間内に動作イベントに対応するイベント信号を生成するかどうかを判定するために規定されたポーリングレートにおいて前記CPUをポーリングすることと、
前記CPUが前記規定されたポーリング時間内に前記イベント信号を生成したと判定したことに応答してポーリングイベント信号を生成することであって、前記ポーリングイベント信号が前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、生成することと
を行うように構成されるイベントポーリング回路
をさらに備える、請求項17に記載のプロセッサベースシステム。
【請求項１９】
前記フィルタリング回路が、
前記ポーリングイベント信号に応答してポーリング調整信号を生成することであって、前記ポーリング調整信号が、前記ポーリングイベント信号の前記イベント信号に対応する前記動作イベントを識別する前記動作イベント標示を含む、生成することと、
前記割込み信号および前記ポーリングイベント信号のうちの一方に応答して前記トレーニング信号を生成することであって、前記トレーニング信号が前記動作イベント標示および前記タイミングデータを含む、生成することと
を行うように構成され、
前記クロック制御回路が、
前記ポーリング調整信号を受信することと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記ポーリング調整信号の前記動作イベント標示に基づいて前記メモリ内の前記動作イベント周波数テーブルにアクセスすることと、
前記クロック信号の前記周波数を前記決定されたターゲット周波数に調整することを前記クロック発生器に行わせるために、前記クロック周波数調整信号を生成することと
を行うようにさらに構成される、
請求項18に記載のプロセッサベースシステム。
【請求項２０】
前記イベント信号が、1次動作イベントに対応する1次イベント信号を含み、前記1次動作イベントが第1の周波数において前記電源によって供給される電流に対応し、
前記割込み回路が、前記1次イベント信号を受信するようにさらに構成され、
前記イベントポーリング回路が、前記CPUが前記規定されたポーリング時間内に前記1次イベント信号を生成するかどうかを判定するために前記規定されたポーリングレートにおいて前記CPUをポーリングするようにさらに構成される、
請求項19に記載のプロセッサベースシステム。
【請求項２１】
前記イベント信号が2次動作イベントに対応する2次イベント信号をさらに含み、前記2次動作イベントが、前記第1の周波数より低い第2の周波数において前記電源によって供給される電流に対応し、
前記イベントポーリング回路が、前記CPUが前記規定されたポーリング時間内に前記2次イベント信号を生成するかどうかを判定するために前記規定されたポーリングレートにおいて前記CPUをポーリングするようにさらに構成される、
請求項20に記載のプロセッサベースシステム。
【請求項２２】
前記イベント信号が今後の動作イベントに対応する、請求項17に記載のプロセッサベースシステム。
【手続補正書】
【提出日】令和1年7月4日(2019.7.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
供給電圧ドループ管理回路であって、
割込み回路であって、
動作周波数におけるクロック信号に基づいて動作する機能回路によって生成されるイベント信号を受信することであって、前記イベント信号が、前記動作周波数において前記機能回路に電力供給する電源内に供給電圧ドループを引き起こすのに十分な、前記電源に対する負荷電流要求を増加する前記機能回路内の動作イベントに対応する、受信することと、
前記受信されたイベント信号に応答して割込み信号を生成することであって、前記割込み信号が、前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、生成することと
を行うように構成される割込み回路と、
複数のエントリを含む動作イベント周波数テーブルを含むメモリであって、各エントリが前記イベント信号に対応する前記動作イベントに対応するターゲット周波数を含み、前記機能回路による前記電源に対する前記負荷電流要求が、前記機能回路が前記ターゲット周波数において動作するときに前記電源の前記供給電圧ドループを低減する、メモリと、
クロック制御回路であって、
前記受信されたイベント信号の前記動作イベントに対応する前記動作イベント標示を含む前記割込み信号を受信することと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記割込み信号の前記動作イベント標示に基づいて前記メモリ内の前記動作イベント周波数テーブルにアクセスすることと、
前記クロック信号の周波数を前記決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成することと
を行うように構成されるクロック制御回路と
を備える、供給電圧ドループ管理回路。
【請求項２】
イベントポーリング回路であって、
前記機能回路が規定されたポーリング時間内に動作イベントに対応するイベント信号を生成するかどうかを判定するために規定されたポーリングレートにおいて前記機能回路をポーリングすることと、
前記機能回路が前記規定されたポーリング時間内に前記イベント信号を生成したと判定したことに応答してポーリングイベント信号を生成することであって、前記ポーリングイベント信号が前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、生成することと
を行うように構成されるイベントポーリング回路
をさらに備える、請求項1に記載の供給電圧ドループ管理回路。
【請求項３】
フィルタリング回路であって、
前記割込み信号を受信することと、
前記ポーリングイベント信号を受信することと、
前記機能回路のクリティカルパスを複製するクリティカルパスレプリカ回路によって生成された動作イベントに関連するタイミングデータを含むタイミングエラー信号を受信することと、
前記ポーリングイベント信号に応答してポーリング調整信号を生成することであって、前記ポーリング調整信号が、前記ポーリングイベント信号の前記イベント信号に対応する前記動作イベントを識別する前記動作イベント標示を含む、生成することと、
前記割込み信号および前記ポーリングイベント信号のうちの一方に応答してトレーニング信号を生成することであって、前記トレーニング信号が前記動作イベント標示および前記タイミングデータを含む、生成することと
を行うように構成される、フィルタリング回路
をさらに備え、
前記クロック制御回路が、
前記ポーリング調整信号を受信することと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記ポーリング調整信号の前記動作イベント標示に基づいて前記メモリ内の前記動作イベント周波数テーブルにアクセスすることと、
前記クロック信号の前記周波数を前記決定されたターゲット周波数に調整することを前記クロック発生器に行わせるために、前記クロック周波数調整信号を生成することと
を行うようにさらに構成される、
請求項2に記載の供給電圧ドループ管理回路。
【請求項４】
複数のエントリを含むイベントログテーブルを含む第2のメモリであって、各エントリが、対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを含む、第2のメモリと、
をさらに備え、
前記フィルタリング回路が、前記イベントログテーブルの対応するエントリに前記動作イベント標示および前記タイミングデータを供給するようにさらに構成され、
トレーニング回路が、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを取り出すために前記第2のメモリ内の前記イベントログテーブルにアクセスすることと、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータに基づいて前記メモリの前記動作イベント周波数テーブル内の前記複数のエントリを更新することと
を行うように構成される、
請求項3に記載の供給電圧ドループ管理回路。
【請求項５】
前記イベント信号が、1次動作イベントに対応する1次イベント信号を含み、前記1次動作イベントが第1の周波数において前記電源によって供給される電流に対応し、
前記割込み回路が、前記1次イベント信号を受信するようにさらに構成され、
前記イベントポーリング回路が、前記機能回路が前記規定されたポーリング時間内に前記1次イベント信号を生成するかどうかを判定するために前記規定されたポーリングレートにおいて前記機能回路をポーリングするようにさらに構成される、
請求項2に記載の供給電圧ドループ管理回路。
【請求項６】
前記イベント信号が2次動作イベントに対応する2次イベント信号をさらに含み、前記2次動作イベントが、前記第1の周波数より低い第2の周波数において前記電源によって供給される電流に対応し、
前記イベントポーリング回路が、前記機能回路が前記規定されたポーリング時間内に前記2次イベント信号を生成するかどうかを判定するために前記規定されたポーリングレートにおいて前記機能回路をポーリングするようにさらに構成される、
請求項5に記載の供給電圧ドループ管理回路。
【請求項７】
各1次動作イベントが、分岐ミス予測、プライベートキャッシュミス、ベクトル命令、および実行ユニット利用のうちの1つに対応する、請求項6に記載の供給電圧ドループ管理回路。
【請求項８】
各2次動作イベントが、最終レベルキャッシュミス、テーブルルックアサイドバッファミス、ウェイクアップ割込み、およびスリープイベントのうちの1つに対応する、請求項7に記載の供給電圧ドループ管理回路。
【請求項９】
前記クロック制御回路が、前記クロック発生器に前記クロック信号の1つまたは複数のサイクルをストレッチさせるために前記クロック周波数調整信号を生成するように構成される、請求項1に記載の供給電圧ドループ管理回路。
【請求項１０】
前記クロック制御回路が、前記クロック発生器に前記クロック信号の1つまたは複数のサイクルをスワローさせるために前記クロック周波数調整信号を生成するように構成される、請求項1に記載の供給電圧ドループ管理回路。
【請求項１１】
前記イベント信号が今後の動作イベントに対応する、請求項1に記載の供給電圧ドループ管理回路。
【請求項１２】
集積回路(IC)内に統合される、請求項1に記載の供給電圧ドループ管理回路。
【請求項１３】
セットトップボックス、エンターテインメントユニット、ナビゲーションデバイス、通信デバイス、固定ロケーションデータユニット、モバイルロケーションデータユニット、モバイルフォン、セルラーフォン、スマートフォン、タブレット、ファブレット、サーバ、コンピュータ、ポータブルコンピュータ、デスクトップコンピュータ、携帯情報端末(PDA)、モニタ、コンピュータモニタ、テレビ、チューナ、ラジオ、衛星ラジオ、音楽プレーヤ、デジタル音楽プレーヤ、ポータブル音楽プレーヤ、デジタルビデオプレーヤ、ビデオプレーヤ、デジタルビデオディスク(DVD)プレーヤ、ポータブルデジタルビデオプレーヤ、および自動車からなるグループから選択されるデバイスに統合される、請求項1に記載の供給電圧ドループ管理回路。
【請求項１４】
機能回路内の供給電圧ドループを低減または回避するための方法であって、
動作周波数におけるクロック信号に基づいて動作する機能回路によって生成されるイベント信号を受信するステップであって、前記イベント信号が、前記動作周波数において前記機能回路に電力供給する電源内に供給電圧ドループを引き起こすのに十分な、前記電源に対する負荷電流要求を増加する前記機能回路内の動作イベントに対応する、ステップと、
前記受信されたイベント信号に応答して割込み信号を生成するステップであって、前記割込み信号が、前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、ステップと、
前記割込み信号に応答して、前記動作イベントに対応するターゲット周波数を決定するために前記割込み信号の前記動作イベント標示に基づいて複数のエントリのうちの1つのエントリから前記ターゲット周波数にアクセスするステップであって、前記機能回路による前記電源に対する前記負荷電流要求が、前記機能回路が前記ターゲット周波数において動作するときに前記電源の前記供給電圧ドループを低減する、ステップと、
前記クロック信号の周波数を前記決定されたターゲット周波数に調整することをクロック発生器に行わせるために、クロック周波数調整信号を生成するステップと
を含む、方法。
【請求項１５】
前記機能回路が規定されたポーリング時間内に動作イベントに対応するイベント信号を生成するかどうかを判定するために規定されたポーリングレートにおいて前記機能回路をポーリングするステップと、
前記機能回路が前記規定されたポーリング時間内に前記イベント信号を生成したと判定したことに応答してポーリングイベント信号を生成するステップであって、前記ポーリングイベント信号が前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、ステップと
をさらに含む、請求項14に記載の方法。
【請求項１６】
前記機能回路のクリティカルパスを複製するクリティカルパスレプリカ回路によって生成された動作イベントに関連するタイミングデータを含むタイミングエラー信号を受信するステップと、
前記ポーリングイベント信号に応答してポーリング調整信号を生成するステップであって、前記ポーリング調整信号が、前記ポーリングイベント信号の前記イベント信号に対応する前記動作イベントを識別する前記動作イベント標示を含む、ステップと、
前記割込み信号および前記ポーリングイベント信号のうちの一方に応答してトレーニング信号を生成するステップであって、前記トレーニング信号が前記動作イベント標示および前記タイミングデータを含む、ステップと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記ポーリング調整信号の前記動作イベント標示に基づいてメモリ内の動作イベント周波数テーブルにアクセスするステップと、
前記クロック信号の前記周波数を前記決定されたターゲット周波数に調整することを前記クロック発生器に行わせるために、前記クロック周波数調整信号を生成するステップと
をさらに含む、請求項15に記載の方法。
【請求項１７】
イベントログテーブルの対応するエントリに、対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを供給するステップと、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータに基づいて前記メモリの前記動作イベント周波数テーブル内の前記複数のエントリを更新するステップと
をさらに含む、請求項16に記載の方法。
【請求項１８】
プロセッサベースシステムであって、
プロセッサを備える中央処理装置(CPU)と、
前記CPUをクロック制御するためにクロック信号を生成するように構成されるクロック発生器と、
供給電圧ドループ管理回路であって、
割込み回路であって、
動作周波数における前記クロック信号に基づいて動作する前記CPUによって生成されるイベント信号を受信することであって、前記イベント信号が、前記動作周波数において前記CPUに電力供給する電源内に供給電圧ドループを引き起こすのに十分な、前記電源に対する負荷電流要求を増加する前記CPU内の動作イベントに対応する、受信することと、
前記受信されたイベント信号に応答して割込み信号を生成することであって、前記割込み信号が、前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、生成することと
を行うように構成される割込み回路と、
複数のエントリを含む動作イベント周波数テーブルを含むメモリであって、各エントリが前記イベント信号に対応する前記動作イベントに対応するターゲット周波数を含み、前記CPUによる前記電源に対する前記負荷電流要求が、前記CPUが前記ターゲット周波数において動作するときに前記電源の前記供給電圧ドループを低減する、メモリと、
クロック制御回路であって、
前記受信されたイベント信号の前記動作イベントに対応する前記動作イベント標示を含む前記割込み信号を受信することと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記割込み信号の前記動作イベント標示に基づいて前記メモリ内の前記動作イベント周波数テーブルにアクセスすることと、
前記クロック信号の周波数を前記決定されたターゲット周波数に調整することを前記クロック発生器に行わせるために、クロック周波数調整信号を生成することと
を行うように構成されるクロック制御回路と
を備える、プロセッサベースシステム。
【請求項１９】
前記供給電圧ドループ管理回路が、
イベントポーリング回路であって、
前記CPUが規定されたポーリング時間内に動作イベントに対応するイベント信号を生成するかどうかを判定するために規定されたポーリングレートにおいて前記CPUをポーリングすることと、
前記CPUが前記規定されたポーリング時間内に前記イベント信号を生成したと判定したことに応答してポーリングイベント信号を生成することであって、前記ポーリングイベント信号が前記イベント信号に対応する前記動作イベントを識別する動作イベント標示を含む、生成することと
を行うように構成されるイベントポーリング回路
をさらに備える、請求項18に記載のプロセッサベースシステム。
【請求項２０】
前記供給電圧ドループ管理回路が、
フィルタリング回路であって、
前記割込み信号を受信することと、
前記ポーリングイベント信号を受信することと、
前記CPUのクリティカルパスを複製するクリティカルパスレプリカ回路によって生成された動作イベントに関連するタイミングデータを含むタイミングエラー信号を受信することと、
前記ポーリングイベント信号に応答してポーリング調整信号を生成することであって、前記ポーリング調整信号が、前記ポーリングイベント信号の前記イベント信号に対応する前記動作イベントを識別する前記動作イベント標示を含む、生成することと、
前記割込み信号および前記ポーリングイベント信号のうちの一方に応答して前記トレーニング信号を生成することであって、前記トレーニング信号が前記動作イベント標示および前記タイミングデータを含む、生成することと
を行うように構成される、フィルタリング回路
をさらに備え、
前記クロック制御回路が、
前記ポーリング調整信号を受信することと、
前記動作イベントに対応する前記ターゲット周波数を決定するために前記ポーリング調整信号の前記動作イベント標示に基づいて前記メモリ内の前記動作イベント周波数テーブルにアクセスすることと、
前記クロック信号の前記周波数を前記決定されたターゲット周波数に調整することを前記クロック発生器に行わせるために、前記クロック周波数調整信号を生成することと
を行うようにさらに構成される、
請求項19に記載のプロセッサベースシステム。
【請求項２１】
前記供給電圧ドループ管理回路が、
複数のエントリを含むイベントログテーブルを含む第2のメモリであって、各エントリが、対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを含む、第2のメモリをさらに備え、
前記フィルタリング回路が、前記動作イベント標示および前記タイミングデータを前記イベントログテーブルの対応するエントリ内に供給するようにさらに構成され、
前記プロセッサベースシステムが、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータを取り出すために前記第2のメモリ内の前記イベントログテーブルにアクセスすることと、
前記対応するトレーニング信号の前記動作イベント標示および前記タイミングデータに基づいて前記メモリの前記動作イベント周波数テーブル内の前記複数のエントリを更新することと
を行うように構成されるトレーニング回路をさらに備える、
請求項20に記載のプロセッサベースシステム。
【請求項２２】
前記イベント信号が、1次動作イベントに対応する1次イベント信号を含み、前記1次動作イベントが第1の周波数において前記電源によって供給される電流に対応し、
前記割込み回路が、前記1次イベント信号を受信するようにさらに構成され、
前記イベントポーリング回路が、前記CPUが前記規定されたポーリング時間内に前記1次イベント信号を生成するかどうかを判定するために前記規定されたポーリングレートにおいて前記CPUをポーリングするようにさらに構成される、
請求項19に記載のプロセッサベースシステム。
【請求項２３】
前記イベント信号が2次動作イベントに対応する2次イベント信号をさらに含み、前記2次動作イベントが、前記第1の周波数より低い第2の周波数において前記電源によって供給される電流に対応し、
前記イベントポーリング回路が、前記CPUが前記規定されたポーリング時間内に前記2次イベント信号を生成するかどうかを判定するために前記規定されたポーリングレートにおいて前記CPUをポーリングするようにさらに構成される、
請求項22に記載のプロセッサベースシステム。
【請求項２４】
前記イベント信号が今後の動作イベントに対応する、請求項18に記載のプロセッサベースシステム。
【国際調査報告】
2019522837.tif 000014
2019522837.tif 000015
2019522837.tif 000016