(57)【特許請求の範囲】
【請求項１】
電子回路を第1の動作モードに関連する第1の基準クロック信号から第2の動作モードに関連する第2の基準クロック信号に切り替えるように構成された電力制御論理回路と、
前記電力制御論理回路に結合された発振検出論理回路であって、
前記第2の基準クロック信号から複数の分割されたクロック信号を導出することであって、前記複数の分割されたクロック信号の各々が前記第2の基準クロック信号よりも低いそれぞれの周波数を有する、導出することと、
前記第1の基準クロック信号に基づいて前記複数の分割されたクロック信号からサンプルクロック信号をプログラム可能に選択することと、
前記サンプルクロック信号の1つまたは複数のエッジ検出表示を提供することと、
前記エッジ検出表示と前記第1の基準クロック信号との間のそれぞれの周波数差が所定の周波数一致しきい値よりも小さい前記1つまたは複数のエッジ検出表示の各々に関する周波数一致表示を生成することと、
連続的な周波数一致表示のカウントが所定のクロック安定性しきい値以上である場合に前記第2の基準クロック信号が安定していると判定することと、
前記第2の基準クロック信号が安定していると判定された場合に前記電力制御論理回路にクロック安定性表示を供給することとを行うように構成された発振検出論理回路とを備え、
前記電力制御論理回路は、前記クロック安定性表示を受信したことに応答して前記第1の基準クロック信号から前記第2の基準クロック信号に切り替えるように前記電子回路を制御するように構成された、クロック切替え制御回路。
【請求項２】
前記第1の動作モードは、前記第1の基準クロック信号に関連する低電力動作モードであり、前記第2の動作モードは、前記第2の基準クロック信号に関連する通常電力動作モードである、請求項1に記載のクロック切替え制御回路。
【請求項３】
前記第1の基準クロック信号はより周波数の低い基準クロックであり、
前記第2の基準クロック信号は、前記より周波数の低い基準クロックよりも高い周波数を有するより周波数の高い基準クロックである、請求項1に記載のクロック切替え制御回路。
【請求項４】
前記電力制御論理回路は、前記電子回路内の物理コーディングサブレイヤ(PCS)内に設けられる、請求項1に記載のクロック切替え制御回路。
【請求項５】
前記発振検出論理回路は、
直列構成に従って配設された複数のリップルカウンタを備えるリップル分割器であって、前記第2の基準クロック信号から前記複数の分割されたクロック信号を導出するように構成されたリップル分割器と、
前記複数の分割されたクロック信号を受信するために前記リップル分割器に結合されたサンプリング論理回路であって、
前記第1の基準クロック信号に基づいて前記複数の分割されたクロック信号から前記サンプルクロック信号をプログラム可能に選択し、
前記サンプルクロック信号の前記1つまたは複数のエッジ検出表示をサンプリング比較論理回路に供給するように構成されたサンプリング論理回路とを備え、
前記サンプリング比較論理回路は、
前記サンプルクロック信号の前記1つまたは複数のエッジ検出表示の各々について、
前記エッジ検出表示と前記第1の基準クロック信号との間の周波数差を判定し、
前記周波数差を前記所定の周波数一致しきい値と比較し、
前記周波数差が前記所定の周波数一致しきい値未満である場合に前記周波数一致表示を生成してサンプリング決定論理回路に供給するように構成され、
前記サンプリング決定論理回路は、連続する周波数一致表示の前記カウントが前記所定のクロック安定性しきい値以上である場合に前記電力制御論理回路に前記クロック安定性表示を供給するように構成された、請求項1に記載のクロック切替え制御回路。
【請求項６】
前記サンプルクロック信号は、前記第1の基準クロック信号よりも少なくとも4倍遅い、請求項5に記載のクロック切替え制御回路。
【請求項７】
前記複数のリップルカウンタの各々は減分カウンタである、請求項5に記載のクロック切替え制御回路。
【請求項８】
前記電力制御論理回路は、前記発振検出論理回路にクロック安定性検出要求を提供することによって前記発振検出論理回路を有効化する、請求項1に記載のクロック切替え制御回路。
【請求項９】
前記電力制御論理回路は、
前記クロック安定性検出要求を前記発振検出論理回路に供給する際に発振検出タイムアウトタイマを始動し、
前記発振検出タイムアウトタイマの満了時に前記クロック安定性表示が受信されなかった場合に前記電子回路を前記第1の基準クロック信号から前記第2の基準クロック信号に切り替えるようにさらに構成された、請求項8に記載のクロック切替え制御回路。
【請求項１０】
前記電力制御論理回路は、前記電子回路を第2の動作モードに関連する前記第2の基準クロック信号から前記第1の動作モードに関連する前記第1の基準クロック信号に切り替えるようにさらに構成された、請求項1に記載のクロック切替え制御回路。
【請求項１１】
電子回路を第1の動作モードに関連する第1の基準クロック信号から第2の動作モードに関連する第2の基準クロック信号に切り替えるように構成された電力モードを制御するための手段と、
前記電力モードを制御するための前記手段に結合されたクロック安定性を検出するための手段であって、
前記第2の基準クロック信号から複数の分割されたクロック信号を導出することであって、前記複数の分割されたクロック信号の各々が前記第2の基準クロック信号よりも低いそれぞれの周波数を有する、導出することと、
前記第1の基準クロック信号に基づいて前記複数の分割されたクロック信号からサンプルクロック信号をプログラム可能に選択することと、
前記サンプルクロック信号の1つまたは複数のエッジ検出表示を提供することと、
前記エッジ検出表示と前記第1の基準クロック信号との間のそれぞれの周波数差が所定の周波数一致しきい値よりも小さい前記1つまたは複数のエッジ検出表示の各々に関する周波数一致表示を生成することと、
連続的な周波数一致表示のカウントが所定のクロック安定性しきい値以上である場合に前記第2の基準クロック信号が安定していると判定することと、
前記第2の基準クロック信号が安定していると判定された場合に前記電力モードを制御するための前記手段にクロック安定性表示を供給することとを行うように構成された手段とを備え、
前記電力モードを制御するための前記手段は、前記クロック安定性表示を受信したことに応答して前記第1の基準クロック信号から前記第2の基準クロック信号に切り替えるように前記電子回路を制御するように構成された、クロック切替え制御回路。
【請求項１２】
電子回路においてより周波数の低い基準クロックからより周波数の高い基準クロックに切り替えるための方法であって、
前記より周波数の高い基準クロックから複数の分割されたクロック信号を導出するステップであって、前記複数の分割されたクロック信号の各々が前記より周波数の高い基準クロックよりも低いそれぞれの周波数を有する、ステップと、
前記より周波数の低い基準クロックに基づいて前記複数の分割されたクロック信号からサンプルクロック信号をプログラム可能に選択するステップと、
前記サンプルクロック信号の1つまたは複数のエッジ検出表示を提供するステップと、
前記エッジ検出表示と前記より周波数の低い基準クロックとの間のそれぞれの周波数差が所定の周波数一致しきい値よりも小さい前記1つまたは複数のエッジ検出表示の各々に関する周波数一致表示を生成するステップと、
連続的な周波数一致表示のカウントが所定のクロック安定性しきい値以上である場合に前記より周波数の高い基準クロックが安定していると判定するステップと、
前記より周波数の高い基準クロックが安定していると判定された場合に前記より周波数の低い基準クロックから前記より周波数の高い基準クロックに切り替えるステップとを含む、方法。
【請求項１３】
前記より周波数の低い基準クロックに関連する低電力動作モードから前記より周波数の高い基準クロックに関連する通常電力動作モードに切り替えるステップをさらに含む、請求項12に記載の方法。
【請求項１４】
電力制御論理回路からクロック安定性検出要求を提供して発振検出論理回路を有効化するステップと、
前記より周波数の高い基準クロックが安定していると判定された場合に前記発振検出論理回路からクロック安定性表示を受信するステップと、
有効化位相ロックループ(PLL)表示をPLL制御論理回路に供給し、前記より周波数の低い基準クロックから前記より周波数の高い基準クロックに切り替えるように前記PLL制御論理回路を制御するステップであって、前記有効化PLL表示が、1に設定されたpll_enインジケータを含む、ステップと、
PLLが前記より周波数の高い基準クロックに位相ロックされたときに前記PLL制御論理回路からPLLロック表示を受信するステップであって、前記PLLロック表示が、1に設定されたpll_lockedインジケータを含む、ステップとを含む、請求項12に記載の方法。
【請求項１５】
前記電子回路が低電力動作モードに切り替えられるときに前記より周波数の高い基準クロックからより周波数の低い基準クロックに切り替えるステップをさらに含む、請求項12に記載の方法。
【請求項１６】
前記より周波数の高い基準クロックに関連する通常電力動作モードから前記より周波数の低い基準クロックに関連する前記低電力動作モードに切り替えるステップをさらに含む、請求項15に記載の方法。
【請求項１７】
電力制御論理回路からの標準出力ステータス信号をアサートして、前記より周波数の高い基準クロックから前記より周波数の低い基準クロックに切り替える前に前記より周波数の高い基準クロックがシャットダウンするのを防止するステップと、
無効化位相ロックループ(PLL)表示をPLL制御論理回路に供給し、前記より周波数の高い基準クロックから前記より周波数の低い基準クロックに切り替えるように前記PLL制御論理回路を制御するステップであって、前記無効化PLL表示が、0に設定されたpll_enインジケータを含む、ステップと、
前記PLL制御論理回路が前記より周波数の低い基準クロックに切り替えられたときに前記PLL制御論理回路からクロック切替え完了表示を受信するステップであって、前記クロック切替え完了表示が、1に設定されたauxclk_switch_completeインジケータを含む、ステップと、
前記クロック切替え完了表示を受信したことに応答して、前記電力制御論理回路からの前記標準出力ステータス信号をデアサートして前記より周波数の高い基準クロックのシャットダウンを可能にするステップとをさらに含む、請求項15に記載の方法。
【請求項１８】
前記標準出力ステータス信号をアサートするステップは、周辺構成要素相互接続エクスプレス(PCIe)PclkAck_n表示をアサートするステップを含む、請求項17に記載の方法。
【請求項１９】
前記標準出力ステータス信号をアサートするステップは、ユニバーサルシリアルバス(USB)PhyStatus表示をアサートするステップを含む、請求項17に記載の方法。
【請求項２０】
前記標準出力ステータス信号をアサートするステップは、ユニバーサルフラッシュストレージ(UFS)CfgRdyN表示をアサートするステップを含む、請求項17に記載の方法。
【請求項２１】
クロック入力信号に基づいて複数の分割されたクロック信号を生成するように構成されたリップル分割器と、
前記リップル分割器に結合されたサンプリング論理回路であって、
前記複数の分割されたクロック信号のうちでサンプルクロック信号をプログラム可能に選択し、
ベンチマーククロック信号のクロックサイクルに対する1つまたは複数のエッジ検出表示を出力するように構成されたサンプリング論理回路と、
前記1つまたは複数のエッジ検出表示を受信するために前記サンプリング論理回路に結合されたサンプリング比較論理回路であって、前記ベンチマーククロック信号の前記クロックサイクルの間に受信された前記1つまたは複数のエッジ検出表示をカウントし、前記サンプルクロック信号と前記ベンチマーククロック信号との周波数一致を検出するように構成されたサンプリング比較論理回路と、
前記サンプリング比較論理回路に結合されたサンプリング決定論理回路であって、
所定のクロック安定性しきい値に基づいて前記クロック入力信号の安定性を判定し、
前記クロック入力信号が安定していると判定された場合にクロック安定性表示を生成するように構成されたサンプリング決定論理回路とを備える、発振検出論理回路。
【請求項２２】
前記クロック入力信号は、通常電力動作モードに関連するより周波数の高い基準クロックであり、
前記ベンチマーククロック信号は、低電力動作モードに関連するより周波数の低い基準クロックである、請求項21に記載の発振検出論理回路。
【請求項２３】
前記リップル分割器は、前記複数の分割されたクロック信号をそれぞれの立上りエッジに揃えるように構成された減分カウンタを備える、請求項21に記載の発振検出論理回路。
【請求項２４】
前記サンプリング論理回路は、
バイナリツリー構造に従って配設された複数の低ひずみマルチプレクサ(MUX)であって、前記複数の分割されたクロック信号のうちでサンプルクロック信号をプログラム可能に選択するように構成された低ひずみMUXと、
サンプルクロック信号における準安定性およびグリッチがサンプリング論理回路の外部に伝搬するのを妨げるように構成された同期要素と、
前記同期要素に結合されたエッジ検出論理回路であって、前記ベンチマーククロック信号の前記クロックサイクルに対する前記1つまたは複数のエッジ検出表示を出力するように構成されたエッジ検出論理回路とを備える、請求項21に記載の発振検出論理回路。
【請求項２５】
前記サンプリング比較論理回路は、
前記ベンチマーククロック信号の前記クロックサイクルにおける前記1つまたは複数のエッジ検出表示を受信しカウントするように構成されたクロックエッジカウンタと、
周波数比較器であって、前記サンプルクロック信号と前記ベンチマーククロック信号との前記周波数一致を検出し、
前ベンチマーククロック信号の前記クロックサイクルにおいて受信された前記1つまたは複数のエッジ検出表示の各々について、
前記クロックサイクルと前記ベンチマーククロック信号との間の周波数差を判定し、
前記周波数差を所定の周波数一致しきい値と比較し、
前記周波数差が前記所定の周波数一致しきい値未満である場合に周波数一致表示を生成し、
前記周波数一致表示を前記サンプリング決定論理回路に提供するように構成された周波数比較器とを備える、請求項21に記載の発振検出論理回路。
【請求項２６】
前記サンプリング決定論理回路は、
周波数一致表示を受信するように前記サンプリング比較論理回路に結合された周波数一致カウンタであって、前記周波数一致表示をカウントするように構成された周波数一致カウンタと、
前記周波数一致カウンタに結合されたしきい値比較器であって、
前記周波数一致カウンタからカウンタ読取り値を取得し、
前記カウンタ読取り値を前記所定のクロック安定性しきい値と比較し、
前記カウンタ読取り値が前記所定のクロック安定性しきい値以上である場合にクロック安定性通知を生成するように構成されたしきい値比較器と、
前記クロック安定性通知を受信するために前記しきい値比較器に結合された決定出力論理回路であって、前記クロック安定性通知を受信したことに応答して前記クロック安定性表示を生成するように構成された決定出力論理回路とを備える、請求項21に記載の発振検出論理回路。
【発明の詳細な説明】
【技術分野】
【０００１】
優先権出願
本出願は、全体が参照により本明細書に組み込まれる、2015年3月13日に出願された「APPARATUSES, METHODS, AND SYSTEMS FOR GLITCH-FREE CLOCK SWITCHING」という名称の米国特許出願第14/657,225号の優先権を主張する。
【０００２】
本開示の技術は概して、電子システムにおける電力消費量を低減させるための低電力動作に関する。
【背景技術】
【０００３】
モバイル通信デバイスは、現代社会においてますます一般的になってきた。これらのモバイル通信デバイスの普及は、一つには、現在そのようなデバイス上で可能にされる多くの機能によって推進されている。そのような機能に対する需要によって、モバイル通信デバイスの処理能力要件が引き上げられる。結果として、モバイル通信デバイスは、純粋な通信ツールから高度なモバイルエンターテインメントセンターへと進化している。
【０００４】
モバイル通信デバイスの処理能力が向上するのと同時に、モバイル通信デバイスによる電力消費量が増大する。低電力動作は一般に、電力を節約し、バッテリー寿命を延ばすためにモバイル通信デバイスによって使用される。低電力動作の間、モバイル通信デバイスは、アイドル状態であるかまたは十分に利用されていない電子回路を機会主義的にオフに切り替えることができる。たとえば、入出力(I/O)回路が、送信すべきデータがないときにオフに切り替えられ、データが送信できるようになったときにオンに切り替え直されてもよい。電子回路を制御するのに使用される多重周波数基準クロックが増えるにつれて、電子回路に関連する基準クロックは、電子回路が低電力動作向けに設定された際に電子回路がオフに切り替えられるかまたはより低い周波数で動作するように構成されることが多い。
【０００５】
電子回路は、低電力動作を終了したときに、関連する基準クロックが十分に増加し安定化するまで動作可能にならない。その結果、電子回路は、基準クロックの増加および安定化による遅延に対処するために必要とされるよりも早い時間に低電力動作を強制的に終了させられる場合がある。そのような早期終了は、低電力動作の効果を低下させる。さらに、必要とされるよりも早い時間に関連する基準クロックに切り替えると(すなわち、関連する基準クロックが安定化する前に切り替えると)、電子回路が準安定状態になる場合がある。
【発明の概要】
【課題を解決するための手段】
【０００６】
発明を実施するための形態において開示する態様は、グリッチフリークロック切替えのための装置、方法、およびシステムを含む。この場合、一態様では、電子回路がより周波数の低い基準クロックからより周波数の高い基準クロックに切り替えられる。発振検出論理回路が、電子回路をより周波数の高い基準クロックに切り替える前により周波数の高い基準クロックの安定性を判定するように構成される。発振検出論理回路は、より周波数の高い基準クロックからサンプルクロック信号を導出し、この場合、サンプルクロック信号は、より周波数の低い基準クロックよりも低い周波数を有する。発振検出論理回路は次いで、サンプルクロック信号をより周波数の低い基準クロックと比較し、より周波数の高い基準クロックの安定性を判定する。基準クロックに切り替える前に基準クロックの安定性を確定的に検出することによって、必要とされるよりも早い時間に不安定な基準クロックに切り替えるのを回避することが可能になり、したがって、電子回路におけるグリッチフリークロック切替えが可能になり、電子回路のロバストネスが向上する。
【０００７】
この場合、一態様では、クロック切替え制御回路が提供される。クロック切替え制御回路は、電子回路を第1の動作モードに関連する第1の基準クロック信号から第2の動作モードに関連する第2の基準クロック信号に切り替えるように構成された電力制御論理回路を含む。クロック切替え制御回路は、電力制御論理回路に結合された発振検出論理回路も備える。発振検出論理回路は、第1の基準クロック信号に基づいて第2の基準クロック信号の安定性を判定するように構成される。発振検出論理回路は、第2の基準クロック信号が安定していると判定された場合に電力制御論理回路にクロック安定性表示を供給するようにさらに構成される。電力制御論理回路は、クロック安定性表示を受信したことに応答して第1の基準クロック信号から第2の基準クロック信号に切り替えるように電子回路を制御するように構成される。
【０００８】
別の態様では、クロック切替え制御回路が提供される。クロック切替え制御回路は、電子回路を第1の動作モードに関連する第1の基準クロック信号から第2の動作モードに関連する第2の基準クロック信号に切り替えるように構成された電力モードを制御するための手段を備える。クロック切替え制御回路は、電力モードを制御するための手段に結合されたクロック安定性を検出するための手段も備える。クロック安定性を検出するための手段は、第1の基準クロック信号に基づいて第2の基準クロック信号の安定性を判定するように構成される。クロック安定性を検出するための手段は、第2の基準クロック信号が安定していると判定された場合に、電力モードを制御するための手段にクロック安定性表示を供給するようにさらに構成される。電力モードを制御するための手段は、クロック安定性表示を受信したことに応答して第1の基準クロック信号から第2の基準クロック信号に切り替えるように電子回路を制御するように構成される。
【０００９】
別の態様では、電子回路における基準クロックを切り替えるための方法が提供される。この方法は、より周波数の低い基準クロックからより周波数の高い基準クロックに切り替えるステップを含む。より周波数の低い基準クロックからより周波数の高い基準クロックに切り替える方法は、より周波数の高い基準クロックに切り替える前により周波数の低い基準クロックに基づいてより周波数の高い基準クロックの安定性を判定するステップを含む。より周波数の低い基準クロックからより周波数の高い基準クロックに切り替える方法は、より周波数の高い基準クロックが安定していると判定された場合により周波数の低い基準クロックからより周波数の高い基準クロックに切り替えるステップも含む。
【００１０】
別の態様では、発振検出論理回路が提供される。発振検出論理回路は、クロック入力信号に基づいて複数の分割されたクロック信号を生成するように構成されたリップル分割器を備える。発振検出論理回路は、リップル分割器に結合されたサンプリング論理回路も備える。サンプリング論理回路は、複数の分割されたクロック信号のうちでサンプルクロック信号をプログラム可能に選択するように構成される。サンプリング論理回路は、ベンチマーククロック信号のクロックサイクルに対する1つまたは複数のエッジ検出表示を出力するようにさらに構成される。発振検出論理回路は、1つまたは複数のエッジ検出表示を受信するためにサンプリング論理回路に結合されたサンプリング比較論理回路も備え、サンプリング比較論理回路は、ベンチマーククロック信号のクロックサイクルの間に受信された1つまたは複数のエッジ検出表示をカウントし、サンプルクロック信号とベンチマーククロック信号との周波数一致を検出するように構成される。発振検出論理回路は、サンプリング比較論理回路に結合されたサンプリング決定論理回路も備える。サンプリング決定論理回路は、所定のクロック安定性しきい値に基づいてクロック入力信号の安定性を判定するように構成される。サンプリング決定論理回路は、クロック入力信号が安定していると判定された場合にクロック安定性表示を生成するようにさらに構成される。
【図面の簡単な説明】
【００１１】
【図１】従来のクロック切替え手法に基づいて第1の基準クロック信号(より周波数の低い基準クロック)から第2の基準クロック信号(より周波数の高い基準クロック)に切り替えるように構成された例示的な電子回路の概略図である。
【図２Ａ】より周波数の低い基準クロックから、電子回路を含む集積回路の外側に位置するより周波数の高い基準クロックに切り替える前に、より周波数の低い基準クロックに基づいてより周波数の高い基準クロックの安定性を確定的に検出するように構成された例示的な電子回路の概略図である。
【図２Ｂ】より周波数の高い基準クロックが別個のマスターチップによって制御される、図2Aの電子回路の簡略図である。
【図２Ｃ】より周波数の高い基準クロックが、図2Aの電子回路を含む集積回路(IC)チップに集積された、図2Aの電子回路の簡略図である。
【図３】図2Aの電子回路をより周波数の低い基準クロックからより周波数の高い基準クロックに切り替えるための例示的なクロック切替えシグナリングフローを示す図である。
【図４】図2Aの電子回路をより周波数の高い基準クロックからより周波数の低い基準クロックに切り替えるための例示的なクロック切替えシグナリングフローを示す図である。
【図５】より周波数の低い基準クロックからより周波数の高い基準クロックに切り替えるために図2Aの電子回路によって使用されるクロック安定性表示を供給するように構成された発振検出論理回路の例示的な図である。
【図６】図2Aの電子回路がより周波数の高い基準クロックとより周波数の低い基準クロックとを切り替えるときのクロック生成回路における状態変化を示す例示的なステートマシン図である。
【図７】クロック切替え制御回路を使用することができるプロセッサベースのシステムの一例を示す図である。
【発明を実施するための形態】
【００１２】
次に図面を参照しながら、本開示のいくつかの例示的な態様について述べる。本明細書において、「例示的」という語は、「例、実例、または例証としての働きをする」ことを意味するために使用される。本明細書で「例示的」として記述されるどのような態様も、他の態様よりも好ましいかまたは有利であると解釈されるべきとは必ずしも限らない。
【００１３】
発明を実施するための形態において開示する態様は、グリッチフリークロック切替えのための装置、方法、およびシステムを含む。この場合、一態様では、電子回路がより周波数の低い基準クロックからより周波数の高い基準クロックに切り替えられる。発振検出論理回路が、電子回路をより周波数の高い基準クロックに切り替える前により周波数の高い基準クロックの安定性を判定するように構成される。発振検出論理回路は、より周波数の高い基準クロックからサンプルクロック信号を導出し、この場合、サンプルクロック信号は、より周波数の低い基準クロックよりも低い周波数を有する。発振検出論理回路は次いで、サンプルクロック信号をより周波数の低い基準クロックと比較し、より周波数の高い基準クロックの安定性を判定する。基準クロックに切り替える前に基準クロックの安定性を確定的に検出することによって、必要とされるよりも早い時間に不安定な基準クロックに切り替えるのを回避することが可能になり、したがって、電子回路におけるグリッチフリークロック切替えが可能になり、電子回路のロバストネスが向上する。
【００１４】
本開示の特定の態様を含むグリッチフリークロック切替えの態様について説明する前に、本開示の例示的な態様から利益を得ることができる電子回路におけるクロックを切り替えるための従来の手法について図1を参照しながら概説する。グリッチフリークロック切替えの特定の例示的な態様についての以下の説明では、まず図2Aを参照する。
【００１５】
この場合、図1は、従来のクロック切替え手法に基づいて第1の基準クロック信号102から第2の基準クロック信号104に切り替えるように構成された例示的な電子回路100の概略図である。第1の基準クロック信号102および第2の基準クロック信号104は以下では、それぞれ、より周波数の低い基準クロック102およびより周波数の高い基準クロック104と呼ばれる。この場合、より周波数の高い基準クロック104は、より周波数の低い基準クロック102よりも高い周波数を有する。非制限的な例では、より周波数の低い基準クロック102は補助基準クロックであってもよく、より周波数の高い基準クロック104はシステム基準クロックであってもよい。
【００１６】
図1を引き続き参照する。非限定的な例では、電子回路100は、集積回路(IC)106内に配設される。電子回路100は位相ロックループ(PLL)108を備える。PLL108は、より周波数の高い基準クロック104などの入力基準信号に基づいて安定した高周波数基準信号110を生成するように構成された閉ループ周波数制御システムである。PLL108は、適切に機能するために、より周波数の高い基準クロック104に対する一定の位相角を維持しなければならない。言い換えれば、PLL108は、より周波数の高い基準クロック104に位相ロックされない限り適切に機能しない。PLL108は、PLL制御論理回路112によって制御される。非限定的な例では、PLL制御論理回路112とPLL108がICに集積され得る。
【００１７】
引き続き図1を参照する。クロックコントローラ114は、電子回路100の内部に設けられてもあるいは外部に設けられてもよく、より周波数の低い基準クロック102を構成する。基準クロックソース116は、IC106の内部に設けられてもあるいは外部に設けられてもよく、より周波数の高い基準クロック104を構成する。非限定的な例では、より周波数の低い基準クロック102は、電子回路100の低電力動作モードに関連付けられ、電力を節約するために電子回路100の一部またはすべての部品がオフに切り替えられる。別の非限定的な例では、より周波数の高い基準クロック104が電子回路100の通常電力動作モードに関連付けられ、このモードにおいて、電子回路100のすべての部品が機能する。電子回路コントローラ118が、低電力動作モードと通常電力動作モードとを切り替えるように電子回路100を制御するように構成される。したがって、電子回路コントローラ118は、電子回路100により周波数の低い基準クロック102とより周波数の高い基準クロック104との切替えも行わせる。
【００１８】
引き続き図1を参照する。電子回路コントローラ118は、電子回路100を低電力動作モードから通常電力動作モードに切り替える場合、PLL制御論理回路112に第1の電力モード信号120を供給して電子回路100をより周波数の低い基準クロック102からより周波数の高い基準クロック104に切り替える。これに対して、電子回路コントローラ118は、電子回路100を通常電力動作モードから低電力動作モードに切り替える場合、PLL制御論理回路112に第2の電力モード信号120'を供給して電子回路100をより周波数の高い基準クロック104からより周波数の低い基準クロック102に切り替える。非限定的な例では、第1の電力モード信号120は、電力モード信号線122上で論理ハイをアサートすることによって生成されてもよく、第2の電力モード信号120'は、電力モード信号線122上で論理ローをアサートすることによって生成されてもよい。
【００１９】
引き続き図1を参照する。電子回路100がより周波数の低い基準クロック102に基づいて低電力動作モードにおいて動作している間、より周波数の高い基準クロック104は待機モードまたはサブアクティブモードに設定される。電子回路100がより周波数の低い基準クロック102からより周波数の高い基準クロック104に切り替えられると、より周波数の高い基準クロック104は待機モードまたはサブアクティブモードからアクティブモードに遷移する。この遷移は、より周波数の高い基準クロック104の発振を再開することおよび安定化することを含む。この場合、PLL108は、より周波数の高い基準クロック104が安定しない限りより周波数の高い基準クロック104に位相ロックすることはできない。その結果、電子回路100が機能するには、より周波数の高い基準クロック104が安定化するのを待たなければならない。しかし、電子回路100は、基準クロックソース116がIC106の外部に配置される場合があるので、より周波数の高い基準クロック104が安定化する厳密なタイミングに関する知識を有しない。従来のクロック切替え手法によれば、電子回路100は発振検出タイムアウトタイマ124を使用してより周波数の高い基準クロック104の安定化タイミングを推定する。この手法が多数の潜在的な欠点を有することが理解されよう。発振検出タイムアウトタイマ124の設定時間が短すぎる場合、より周波数の高い基準クロック104が不安定である間に、電子回路100は、必要とされるよりも早い時間により周波数の高い基準クロック104に切り替わる可能性がある。これに対して、発振検出タイムアウトタイマ124の設定時間が長すぎる場合、電子回路100は、通常電力動作モードに入る際に過度の遅延を受けることがある。したがって、電子回路100が、より周波数の高い基準クロック104へのグリッチフリーでタイムリーな切替えを確実に行うようにより周波数の高い基準クロック104の安定性を確定的に検出することが望ましい。
【００２０】
この点に関して、図2Aは、より周波数の低い基準クロック102からより周波数の高い基準クロック104に切り替える前により周波数の低い基準クロック102に基づいてより周波数の高い基準クロック104の安定性を確定的に検出するように構成された例示的な電子回路200の概略図である。図1の要素は、図2に関連して参照され、図1の要素について本明細書において再び説明することはない。
【００２１】
引き続き図2Aを参照する。ICチップ203内に配置された電子回路200内にクロック切替え制御回路202が設けられる。非限定的な例では、クロック切替え制御回路202は、電子回路200の物理コーディングサブレイヤ(PCS)(図示せず)内に設けられる。別の非限定的な例では、電子回路200は、周辺構成要素相互接続エクスプレス(PCIe)物理(PHY)回路、ユニバーサルシリアルバス(USB)PHY回路、またはユニバーサルフラッシュストレージ(UFS)PHY回路であってもよい。クロック切替え制御回路202は、より周波数の低い基準クロック102からより周波数の高い基準クロック104に切り替え、より周波数の高い基準クロック104からより周波数の低い基準クロック102に切り替えるように電子回路200を制御するように構成された電力制御論理回路204を含む。電力制御論理回路204は、本明細書では電力モードを制御するための手段とも呼ばれる。電力制御論理回路204は、電子回路コントローラ206から第1の電力モード信号120を受信して電子回路200を低電力動作モード(第1の動作モード)から通常電力動作モード(第2の動作モード)に切り替えるとき、発振検出論理回路210がより周波数の高い基準クロック104の安定性を検出するのを可能にするためのクロック安定性検出要求208を生成する。発振検出論理回路210は、クロック安定性を検出するための手段と呼ばれる場合もある。非限定的な例では、電子回路200が、高速PHY回路(たとえば、PCIe、USB、およびUFS)においてデータ直列化を実行するために設けられることが多いシリアライザ/デシリアライザ(SerDes)(図示せず)を備える場合、発振検出論理回路210は、SerDesリセットが完了した直後に有効化されてもよい。図5においてさらに詳しく説明するように、発振検出論理回路210は、より周波数の低い基準クロック102に基づいてより周波数の高い基準クロック104の安定性を判定するように構成される。発振検出論理回路210は、より周波数の高い基準クロック104が安定していると判定された場合に電力制御論理回路204にクロック安定性表示212を供給するようにさらに構成される。
【００２２】
引き続き図2Aを参照する。電力制御論理回路204は、クロック安定性表示212を受信したことに応答して、PLL制御論理回路216とPLL108とを備えるクロック生成回路215に有効化PLL表示214を供給する。PLL制御論理回路216は、有効化PLL表示214を受信し、PLL108をより周波数の低い基準クロック102からより周波数の高い基準クロック104に切り替え、有効化PLL表示214をPLL108に供給する。非限定的な例では、有効化PLL表示214は、PLL108に送られる前にPLL制御論理回路216によって修正されてもよい。前述のように、PLL108は、より周波数の高い基準クロック104に位相ロックされない限り適切に機能しない。PLL108は、より周波数の高い基準クロック104に位相ロックされた後、PLL制御論理回路216にPLLロック表示218を供給する。PLL制御論理回路216は、電子回路200が通常電力動作モードのための準備が完了したことを示すPLLロック表示218を電力制御論理回路204に供給する。非限定的な例では、PLL制御論理回路216は、PLLロック表示218を電力制御論理回路204に送る前にPLLロック表示218を修正してもよい。PLL制御論理回路216は、より周波数の低い基準クロック102およびより周波数の高い基準クロック104をひずませずにより周波数の低い基準クロック102とより周波数の高い基準クロック104とを切り替えるように制御されるように構成されたグリッチフリーマルチプレクサ(MUX)219も備える。
【００２３】
引き続き図2Aを参照する。電力制御論理回路204は、発振検出タイムアウトタイマ124を使用してクロック切替え制御回路202のロバストネスをさらに向上させることができる。この場合、電力制御論理回路204は、クロック安定性検出要求208を生成して発振検出論理回路210を有効化した直後に発振検出タイムアウトタイマ124を始動してもよい。電力制御論理回路204は、発振検出タイムアウトタイマ124が満了したときに発振検出論理回路210がクロック安定性表示212を供給しない場合に有効化PLL表示214を供給して電子回路200をより周波数の低い基準クロック102からより周波数の高い基準クロック104に切り替えるように構成される。
【００２４】
引き続き図2Aを参照する。電力制御論理回路204は、電子回路200が低電力動作モードに切り替えられるときに電子回路200をより周波数の高い基準クロック104からより周波数の低い基準クロック102に切り替えるようにさらに構成される。この場合、電力制御論理回路204は、電子回路コントローラ206から第2の電力モード信号120'を受信する。第2の電力モード信号120'は、電力制御論理回路204により周波数の高い基準クロック104からより周波数の低い基準クロック102に切り替えるように指示する。非限定的な例では、第1の電力モード信号120は、電力モード信号線122上で論理ハイまたは論理ローをアサートすることによって生成され、第2の電力モード信号120'は、電力モード信号線122上で論理ローまたは論理ハイをアサートすることによって生成されてもよい。別の非限定的な例では、第1の電力モード信号120および第2の電力モード信号120'は電子回路200に固有の制御信号である。たとえば、電子回路200がPCIe回路である場合、第1の電力モード信号120および第2の電力モード信号120'はそれぞれ、PCIe PclkReq_n信号のアサートおよびデアサート(de-assert)を行うことによって生成されてもよい。第1の電力モード信号120および第2の電力モード信号120'はさらに、基準クロックソース116によって受信され、それによって、基準クロックソース116はそれぞれ、より周波数の高い基準クロック104の有効化および無効化を行うことができる。
【００２５】
引き続き図2Aを参照する。電力制御論理回路204は、第2の電力モード信号120'を受信したことに応答して、標準出力ステータス信号220をアサートして基準クロックソース116がより周波数の高い基準クロック104をシャットダウンするのを防止する。その後、電力制御論理回路204は、PLL制御論理回路216に無効化PLL表示222を供給し、PLL制御論理回路216は無効化PLL表示222をPLL108に供給してPLL108をより周波数の高い基準クロック104からより周波数の低い基準クロック102に切り替える。非限定的な例では、無効化PLL表示222は、PLL108に送られる前にPLL制御論理回路216によって修正されてもよい。PLL108は、より周波数の低い基準クロック102に切り替えた後PLL制御論理回路216にクロック切替え完了表示224を供給する。PLL制御論理回路216は、電子回路200が低電力動作モードに入る準備が完了したことを示すクロック切替え完了表示224を電力制御論理回路204に供給する。非限定的な例では、PLL制御論理回路216は、クロック切替え完了表示224を電力制御論理回路204に送る前にクロック切替え完了表示224を修正してもよい。この時点において、電力制御論理回路204は、標準出力ステータス信号220をデアサートしてより周波数の高い基準クロック104をシャットダウンするのを可能にする。
【００２６】
引き続き図2Aを参照する。電子回路200は、ICチップ203の外部からクロック切替え要求226が発信されたことに応答してより周波数の低い基準クロック102からより周波数の高い基準クロック104に切り替えることもできる。非限定的な例では、クロック切替え要求226は、基準クロックソース116またはマスターチップ228によって生成されてもよい。この場合、電子回路コントローラ206は、クロック切替え要求226を受信し、上述のようにより周波数の低い基準クロック102からより周波数の高い基準クロック104に切り替えるように電子回路200を制御する。
【００２７】
図2Aに示すように、基準クロックソース116はマスターチップ228およびICチップ203から分離される。しかし、基準クロックソース116は、マスターチップ228と一体化されてもあるいはICチップ203に埋め込まれてもよい。この場合、図2Bは、図2Aの電子回路200を備えるICチップ203の外部のマスターチップ228と一体化された例示的な基準クロックソース116'の概略図である。同様に、図2Cは、図2Aの電子回路200を備えるICチップ203に埋め込まれた例示的な基準クロックソース116''の概略図である。図2Aと図2Bと図2Cに共通する要素は、それらの図において共通の要素番号で示され、これらの要素について本明細書において繰り返し説明することはない。
【００２８】
図2Bを参照する。基準クロックソース116'は、より周波数の高い基準クロック104を生成するように構成された基準クロック発振器230を備える。ICチップ203とマスターチップ228は、第1の電力モード信号120、第2の電力モード信号120'、標準出力ステータス信号220、およびクロック切替え要求226を共有する。非限定的な例では、第1の電力モード信号120、第2の電力モード信号120'、標準出力ステータス信号220、およびクロック切替え要求226は単一の共通信号(たとえば、ICチップ203がPCIe回路である場合にはCLKREQ#)として組み合わされてもよい。
【００２９】
図2Cを参照する。基準クロックソース116''はICチップ203に埋め込まれる。非限定的な例では、より周波数の低い基準クロック102とより周波数の高い基準クロック104の両方を生成するように基準クロックソース116''がクロックコントローラ114(図示せず)と一体化されてもよい。
【００３０】
図2Aにおいて説明したクロック切替え態様を有効化するための様々な制御信号をさらに例示するために、図3および図4が提示されている。この点に関して、図3は、図2Aの電子回路200をより周波数の低い基準クロック102からより周波数の高い基準クロック104に切り替えるための例示的なクロック切替えシグナリングフロー300を示す。図1および図2Aの要素は、図3に関連して参照され、図1および図2Aの要素について本明細書において再び説明することはない。
【００３１】
引き続き図3を参照する。電子回路200は、低電力動作モードの間より周波数の低い基準クロック102に従って動作する。電子回路コントローラ206は、電子回路200を低電力動作モードから通常電力動作モードに切り替えるために、第1の電力モード信号120を電力制御論理回路204に供給する。非限定的な例では、電子回路コントローラ206は、クロック切替え要求226を受信したことに応答して第1の電力モード信号120を生成してもよい。電力制御論理回路204は、発振検出論理回路210がより周波数の高い基準クロック104の安定性を検出するのを可能にするためのクロック安定性検出要求208を供給する。電力制御論理回路204は、より周波数の高い基準クロック104が安定していることを示すクロック安定性表示212を受信すると、電子回路200をより周波数の高い基準クロック104に切り替えるための有効化PLL表示214をPLL制御論理回路216に供給する。非限定的な例では、有効化PLL表示214は、1に設定されたpll_enインジケータを含む(pll_en=1)。PLL制御論理回路216はさらに、有効化PLL表示214をPLL108に供給する。非限定的な例では、PLL制御論理回路216は、PLL108がより周波数の高い基準クロック104に位相ロックするのを可能にする前にメモリから較正コードを再ロードしてもよい。PLL108は、より周波数の高い基準クロック104に位相ロックされた後、PLL制御論理回路216にPLLロック表示218を供給する。非限定的な例では、PLLロック表示218は、1に設定されたpll_lockedインジケータを含む(pll_locked=1)。
【００３２】
図4は、図2Aの電子回路200をより周波数の高い基準クロック104からより周波数の低い基準クロック102に切り替えるための例示的なクロック切替えシグナリングフロー400を示す。図1および図2Aの要素は、図4に関連して参照され、図1および図2Aの要素について本明細書において再び説明することはない。
【００３３】
引き続き図4を参照する。電子回路200は、通常電力動作モードの間より周波数の高い基準クロック104に従って動作する。電子回路コントローラ206は、電子回路200を通常電力動作モードから低電力動作モードに切り替えるために、第2の電力モード信号120'を電力制御論理回路204に供給する。電力制御論理回路204は、第2の電力モード信号120'を受信すると、較正コードをメモリに保存する。電力制御論理回路204はさらに、標準出力ステータス信号220をアサートして基準クロックソース116がより周波数の高い基準クロック104をシャットダウンするのを防止する。非限定的な例では、標準出力ステータス信号220は、PCIe PclkAck_n表示、USB PhyStatus表示、またはUFS CfgRdyN表示を含んでもよい。その後、電力制御論理回路204は、無効化PLL表示222をPLL制御論理回路216に供給する。非限定的な例では、無効化PLL表示222は、0に設定されたpll_enインジケータを含む(pll_en=0)。PLL制御論理回路216は、無効化PLL表示222をPLL108に供給してPLL108を無効化し、より周波数の低い基準クロック102での電子回路200の動作を維持する。
【００３４】
引き続き図4を参照する。PLL108は、無効化されると、クロック切替え完了表示224をPLL制御論理回路216に供給する。PLL制御論理回路216は次いで、電子回路200が低電力動作モードに切り替わったことを示すクロック切替え完了表示224を電力制御論理回路204に供給する。非限定的な例では、クロック切替え完了表示224は、1に設定されたauxclk_switch_completeインジケータを含む。この時点において、電力制御論理回路204は、基準クロックソース116への標準出力ステータス信号220をデアサートしてより周波数の高い基準クロック104をシャットダウンするのを可能にする。クロックコントローラ114は次いで、マスターチップ228(図示せず)がより周波数の高い基準クロック104を使用していない場合により周波数の高い基準クロック104をシャットダウンしてもよい。
【００３５】
図2Aを参照して上記において説明したように、発振検出論理回路210は、より周波数の低い基準クロック102に基づいてより周波数の高い基準クロック104の安定性を判定し、したがって、より周波数の低い基準クロック102からより周波数の高い基準クロック104へのグリッチフリー切替えを確実に行うように構成される。この点に関して、図5は、より周波数の低い基準クロック102からより周波数の高い基準クロック104に切り替えるために電子回路200によって使用されるクロック安定性表示212を供給するように構成された図2Aの発振検出論理回路210の例示的な図である。図1と図2Aと図5に共通する要素は、それらの図において共通の要素番号によって示され、これらの要素について本明細書においては繰り返し説明することはない。
【００３６】
引き続き図5を参照する。発振検出論理回路210は、リップル分割器500と、サンプリング論理回路502と、サンプリング比較論理回路504と、サンプリング決定論理回路506とを備える。リップル分割器500は、複数のリップルカウンタ508(1)〜508(N)を備え、この場合、Nは有限の正の整数である。複数のリップルカウンタ508(1)〜508(N)の各々は、クロック入力信号(図示せず)を受信し、出力信号(図示せず)を生成する。さらに、複数のリップルカウンタ508(1)〜508(N)の各々は、クロック入力信号の2分の1である出力信号を生成するように構成された二分割カウンタである。たとえば、リップルカウンタ508(1)へのクロック入力信号が100メガヘルツ(MHz)である場合、リップルカウンタ508(1)の出力信号は50MHzになる。複数のリップルカウンタ508(1)〜508(N)は直列構成に従って配設され、複数のリップルカウンタ508(1)〜508(N)の各々は、リップルカウンタ自体の出力信号と直列構成における後続のリップルカウンタへのクロック入力信号の両方として働くそれぞれの出力信号を生成する。たとえば、リップルカウンタ508(1)の出力信号は、リップルカウンタ508(1)の出力信号とリップルカウンタ508(2)へのクロック入力信号の両方として働き、リップルカウンタ508(2)の出力信号は、リップルカウンタ508(2)の出力信号とリップルカウンタ508(3)へのクロック入力信号の両方として働き、他のリップルカウンタについても同様である。リップルカウンタ508(1)は、リップル分割器500における第1のリップルカウンタであり、より周波数の高い基準クロック104をクロック入力信号として受信する。この場合、複数のリップルカウンタ508(1)〜508(N)は、複数の分割されたクロック信号510(1)〜510(N)を生成し、この場合、分割されたクロック信号510(X)(1≦X≦N)は、より周波数の高い基準クロック104の2のマイナスX乗(2-X)に等しいそれぞれの周波数を有する。たとえば、分割されたクロック信号510(1)は、より周波数の高い基準クロック104の1/2(2-1)に等しいそれぞれの周波数を有し、分割されたクロック信号510(2)は、より周波数の高い基準クロック104の(1/4)(2-2)に等しいそれぞれの周波数を有し、他のクロック信号についても同様である。この場合、複数の分割されたクロック信号510(1)〜510(N)の各々は、より周波数の高い基準クロック104よりも低いそれぞれの周波数を有する。非限定的な例では、複数のリップルカウンタ508(1)〜508(N)の各々は、複数の分割されたクロック信号510(1)〜510(N)がそれぞれの立上りエッジ上で揃えられ、したがって、初期立上りエッジ検出に関するレイテンシが短くなるように減分カウンタ(Decrementing Counter)として設けられる。
【００３７】
引き続き図5を参照する。サンプリング論理回路502は、バイナリツリー構造514に従って配設された複数の低ひずみMUX512(1)〜512(M)を備える。複数の低ひずみMUX512(1)〜512(M)は、複数の分割されたクロック信号510(1)〜510(N)のうちのサンプルクロック信号516をプログラム可能に選択するように構成される。非限定的な例では、サンプルクロック信号516は、より周波数の低い基準クロック102よりも少なくとも4倍遅い。この場合、リップル分割器500内に構成されるリップルカウンタ508(1)〜508(N)の数は、より周波数の低い基準クロック102およびより周波数の高い基準クロック104の周波数によって決定される。非限定的な例では、より周波数の低い基準クロック102およびより周波数の高い基準クロック104の周波数がそれぞれ10MHzおよび1ギガヘルツ(GHz)であり、サンプルクロック信号516がより周波数の低い基準クロック102よりも4倍遅い必要がある場合、リップル分割器500は最低で9つのリップルカウンタ508(1)〜508(9)を備えなければならない。
【００３８】
引き続き図5を参照する。サンプリング論理回路502は、サンプルクロック信号516における準安定性およびグリッチがサンプリング論理回路502の外部に伝搬するのを阻止するように構成された同期要素518も備える。非限定的な例では、同期要素518は1つまたは複数のフリップフロップカウンタ520(1)〜520(W)を備える。サンプリング論理回路502は、より周波数の低い基準クロック102に従ってサンプルクロック信号516の立上りエッジを検出し、より周波数の低い基準クロック102のクロックサイクルに対する1つまたは複数のエッジ検出表示524をサンプリング比較論理回路504に出力するように構成されたエッジ検出論理回路522も備える。
【００３９】
引き続き図5を参照する。サンプリング比較論理回路504は、より周波数の低い基準クロック102のクロックサイクルの間にエッジ検出論理回路522から受信された1つまたは複数のエッジ検出表示524をカウントするように構成されたクロックエッジカウンタ526を備える。サンプリング比較論理回路504は、周波数比較器528も備える。周波数比較器528は、より周波数の低い基準クロック102のクロックサイクルにおいて受信された1つまたは複数のエッジ検出表示524の各々について、クロックサイクルとより周波数の低い基準クロック102(ベンチマーククロック信号)との間の周波数差を判定するように構成される。周波数比較器528は次いで、周波数差を所定の周波数一致しきい値と比較する。周波数差が所定の周波数一致しきい値よりも小さい場合、周波数比較器528は、周波数一致が検出されたことを示すための周波数一致表示530をサンプリング決定論理回路506に供給する。より周波数の低い基準クロック102の周波数が既知であるので、周波数差は、サンプルクロック信号516の周波数、したがって、より周波数の高い基準クロック104の周波数を検出する際の助けとなることができる。さらに、サンプルクロック信号516の周波数がより周波数の低い基準クロック102よりも低いので、周波数差をより厳密に判定することができる。したがって、周波数比較器528は、1つまたは複数のエッジ検出表示524の各々をより周波数の低い基準クロック102と比較することによって、周波数一致表示530のうちの1つまたは複数をサンプリング決定論理回路506に供給してもよい。
【００４０】
引き続き図5を参照する。サンプリング決定論理回路506は、サンプリング比較論理回路504から受信された1つまたは複数の周波数一致表示530のカウントを供給するように構成された周波数一致カウンタ532を備える。非限定的な例では、より周波数の低い基準クロック102のクロックサイクルの間に受信された1つまたは複数のエッジ検出表示524の各々について、このクロックサイクルの間に周波数一致表示530が受信された場合、周波数一致カウンタ532の値が1だけ大きくなる。これに対して、周波数一致カウンタ532は、より周波数の低い基準クロック102のクロックサイクルの間に周波数一致表示530が受信されない場合、0にリセットされる。したがって、周波数一致カウンタ532は、周波数比較器528から連続的に受信された周波数一致表示530を常に反映する。しきい値比較器534は、周波数一致カウンタ532からカウンタ読取値536を取り出し、カウンタ読取値536を所定のクロック安定性しきい値と比較する。カウンタ読取値536が所定のクロック安定性しきい値以上である場合、より周波数の高い基準クロック104は安定していると判定される。しきい値比較器534はクロック安定性通知538を生成することができる。サンプリング決定論理回路506は、クロック安定性通知538を受信したことに応答して、より周波数の高い基準クロック104が安定していることを示すクロック安定性表示212を生成するように構成された決定出力論理回路540も備える。
【００４１】
図2Aにおいてすでに説明したように、発振検出論理回路210によって生成されたクロック安定性表示212によって、電力制御論理回路204がPLL制御論理回路216を有効化し、したがって、PLL108を有効化する。PLL制御論理回路216とPLL108との間の制御機構をさらに例示するために、図6が提示されている。この点に関して、図6は、電子回路200が周波数の高い基準クロック104とより周波数の低い基準クロック102とを切り替えるときの図2Aのクロック生成回路215における状態変化を示す例示的なステートマシン図600である。図2A、図3、および図4の要素は、図6に関連して参照され、これらの要素について本明細書では繰り返し説明することはない。
【００４２】
引き続き図6を参照する。状態1(ブロック602)では、電子回路200が、より周波数の高い基準クロック104に基づいて通常電力動作モードにおいて動作している。PLL108が、動作しており、より周波数の高い基準クロック104に位相ロックされている。PLL108は、クロックバッファ(図示せず)を備えてもよく、クロックバッファは有効化される。PLL制御論理回路216が、pll_en表示が0に設定された(pll_en=0)無効化PLL表示222を受信すると、クロック生成回路215が状態1から状態2(ブロック604)に遷移する。状態2では、PLL108およびクロックバッファが無効化されるが、PLL108は動作し続ける。PLL108が、より周波数の高い基準クロック104に位相ロックされなくなると、クロック生成回路215が状態3(ブロック606)に遷移する。この時点において、PLL108は依然として動作しているが、ゲートオフされる。非限定的な例では、PLL108が無効化されている間クロック生成回路215が状態3のままであるようにゲートオフカウンタ(たとえば、20Mカウンタ)が始動されてもよい。ゲートオフカウンタが満了すると、クロック生成回路215が状態4(ブロック608)に遷移する。状態4では、クロック生成回路215および電子回路200が、より周波数の高い基準クロック104からより周波数の低い基準クロック102に切り替えられる。PLL108がクロック切替え完了表示224を生成すると、クロック生成回路215が、状態4を終了し、状態5(ブロック610)を開始する。この場合、auxclk_switch_completeインジケータは1に設定される(auxclk_switch_complete=1)。状態5では、PLL108が無効化される。電子回路200は、より周波数の低い基準クロック102に基づいて低電力動作モードにおいて動作する。この時点において、より周波数の高い基準クロック104からより周波数の低い基準クロック102への切替えが完了する。
【００４３】
引き続き図6を参照する。PLL制御論理回路216が、pll_enインジケータが1に設定された(pll_en=1)有効化PLL表示214を受信すると、クロック生成回路215が状態6(ブロック612)に遷移する。pll_enインジケータが1に設定されると、電子回路200が、低電力動作モードを終了して通常電力動作モードに切り替わる。状態6では、クロック生成回路215をより周波数の低い基準クロック102からより周波数の高い基準クロック104に切り替え、一方、PLL108はオフのままである。クロック生成回路215は、より周波数の低い基準クロック102からより周波数の高い基準クロック104に切り替わったときに状態7(ブロック614)に遷移する。この場合、PLL108は、1に設定されたrefclk_sel_ackインジケータ(refclk_sel_ack=1)をPLL制御論理回路216に供給してもよい。状態7では、PLL108が、電力を投入され、より周波数の高い基準クロック104への位相ロックを試みる。PLL108がより周波数の高い基準クロック104に位相ロックされると、クロック生成回路215および電子回路200が状態1に遷移する。その結果、電子回路200が、より周波数の高い基準クロック104に基づいて通常電力動作モードに戻る。
【００４４】
本明細書において開示された態様によるグリッチフリークロック切替えのための装置、方法、およびシステムは、任意のプロセッサベースデバイス内に設けられるかまたは組み込まれてもよい。例としては、限定はしないが、セットトップボックス、エンターテインメントユニット、ナビゲーションデバイス、通信デバイス、固定ロケーションデータユニット、モバイルロケーションデータユニット、モバイルフォン、セルラーフォン、コンピュータ、ポータブルコンピュータ、デスクトップコンピュータ、携帯情報端末(PDA)、モニタ、コンピュータモニタ、テレビジョン、チューナ、ラジオ、衛星ラジオ、音楽プレーヤ、デジタル音楽プレーヤ、ポータブル音楽プレーヤ、デジタルビデオプレーヤ、ビデオプレーヤ、デジタルビデオディスク(DVD)プレーヤ、およびポータブルデジタルビデオプレーヤが含まれる。
【００４５】
この点に関して、図7は、図2Aに示すクロック切替え制御回路202を使用することができるプロセッサベースシステム700の例を示す。この例では、プロセッサベースシステム700は、各々が1つまたは複数のプロセッサ704を含む1つまたは複数の中央処理ユニット(CPU)702を含む。CPU702は、一時的に記憶されたデータに迅速にアクセスできるようにプロセッサ704に結合されたキャッシュメモリ706を有してもよい。CPU702は、クロック切替え制御回路202を形成するように構成されてもよい。CPU702は、システムバス708に結合され、プロセッサベースシステム700内に含まれるマスターデバイスとスレーブデバイスとを相互結合することができる。よく知られているように、CPU702は、システムバス708を介してアドレス情報、制御情報、およびデータ情報を交換することによって、これらの他のデバイスと通信する。たとえば、CPU702は、スレーブデバイスの一例として、メモリコントローラ710にバストランザクション要求を伝達することができる。図7には示されていないが、複数のシステムバス708が提供される場合があり、各システムバス708は異なるファブリックを構成する。
【００４６】
他のマスターデバイスおよびスレーブデバイスをシステムバス708に接続することができる。図7に示すように、これらのデバイスは、例として、メモリシステム712と、1つまたは複数の入力デバイス714と、1つまたは複数の出力デバイス716と、1つまたは複数のネットワークインターフェースデバイス718と、1つまたは複数のディスプレイコントローラ720とを含むことができる。入力デバイス714は、限定はしないが、入力キー、スイッチ、音声プロセッサなどを含む、任意のタイプの入力デバイスを含むことができる。出力デバイス716は、限定はしないが、オーディオ、ビデオ、他の視覚的表示器などを含む任意のタイプの出力デバイスを含むことができる。ネットワークインターフェースデバイス718は、ネットワーク722との間のデータの交換を可能にするように構成された、任意のデバイスとすることができる。ネットワーク722は、限定はしないが、有線ネットワークまたはワイヤレスネットワーク、プライベートネットワークまたは公衆ネットワーク、ローカルエリアネットワーク(LAN)、ワイヤレスローカルエリアネットワーク(WLAN)、Bluetooth(登録商標)ネットワーク、ワイドエリアネットワーク(WAN)、BLUETOOTH(登録商標)ネットワーク、またはインターネットを含む、任意のタイプのネットワークとすることができる。ネットワークインターフェースデバイス718は、必要に応じて、任意のタイプの通信プロトコルをサポートするように構成することが可能である。メモリシステム712は、1つまたは複数のメモリユニット724(0〜N)を含むことができる。
【００４７】
CPU702はまた、1つまたは複数のディスプレイ726に送られる情報を制御するために、システムバス708を介してディスプレイコントローラ720にアクセスするように構成されてもよい。ディスプレイコントローラ720は、1つまたは複数のビデオプロセッサ728を介して、表示されるべき情報をディスプレイ726に送り、ビデオプロセッサ728は、表示されるべき情報を、ディスプレイ726に適したフォーマットになるように処理する。ディスプレイ726は、限定はしないが、陰極線管(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  より周波数の高い基準クロック
108  PLL
110  安定した高周波数基準信号
112  PLL制御論理
114  クロックコントローラ
116  基準クロックソース
118  電子回路コントローラ
120  第1の電力モード信号
122  電力モード信号線
124  振動検出タイムアウトタイマ
200  電子回路
202  クロック切替え制御回路
203  ICチップ
204  電力制御論理
206  電子回路コントローラ
208  クロック安定性検出要求
210  振動検出論理
212  クロック安定性表示
215  クロック生成回路
216  PLL制御論理
218  PLLロック表示
220  標準出力ステータス信号
224  クロック切替え完了表示
226  クロック切替え要求
228  マスターチップ
230  基準クロック発振器
300  クロック切替えシグナリングフロー
400  クロック切替えシグナリングフロー
500  リップル分割器
502  サンプリング論理
504  サンプリング比較論理
506  サンプリング決定論理
514  バイナリツリー構造
516  サンプルクロック信号
518  同期要素
522  エッジ検出論理
524  エッジ検出表示
526  クロックエッジカウンタ
528  周波数比較器
530  周波数一致表示
532  周波数一致カウンタ
534  周波数比較器
536  カウンタ読取り値
538  クロック安定性通知
540  決定出力論理
700  プロセッサベースシステム
704  プロセッサ
706  キャッシュメモリ
708  システムバス
710  メモリコントローラ
712  メモリシステム
714  入力デバイス
716  出力デバイス
718  ネットワークインターフェースデバイス
720  ディスプレイコントローラ
722  ネットワーク
724  メモリユニット
【要約】
発明を実施するための形態において開示する態様は、グリッチフリークロック切替えのための装置、方法、およびシステムを含む。この場合、一態様では、電子回路がより周波数の低い基準クロックからより周波数の高い基準クロックに切り替えられる。発振検出論理回路が、電子回路をより周波数の高い基準クロックに切り替える前により周波数の高い基準クロックの安定性を判定するように構成される。発振検出論理回路は、より周波数の高い基準クロックからサンプルクロック信号を導出し、この場合、サンプルクロック信号は、より周波数の低い基準クロックよりも低い周波数を有する。発振検出論理回路は次いで、サンプルクロック信号をより周波数の低い基準クロックと比較し、より周波数の高い基準クロックの安定性を判定する。基準クロックに切り替える前に基準クロックの安定性を確定的に検出することによって、必要とされるよりも早い時間に不安定な基準クロックに切り替えるのを回避することが可能になり、したがって、電子回路におけるグリッチフリークロック切替えが可能になる。【図１】
0006305661.tif 000002
【図２Ａ】
0006305661.tif 000003
【図２Ｂ】
0006305661.tif 000004
【図２Ｃ】
0006305661.tif 000005
【図３】
0006305661.tif 000006
【図４】
0006305661.tif 000007
【図５】
0006305661.tif 000008
【図６】
0006305661.tif 000009
【図７】
0006305661.tif 000010