(57)【要約】      （修正有）【課題】回路設計が簡単で、クロック信号の出力停止が指示された場合に、クロック信号にグリッチやデューティの崩れを生じさせることなくクロック信号の出力を停止できるクロック制御回路を得る。【解決手段】基準クロック信号CLK480に同期して動作するシフトレジスタ32は、サスペンド信号SUSPENDMが1→0に変化して信号CLK480の８周期後に各フリップフロップ34〜48の出力SUSPR[0]〜[7]が1→0に変化し、ＯＲ回路50からの出力SUSRが1→0に変化する。比較器54はレジスタ28から出力される３ビットのデータCLKREG[2:0]を固定値と比較し、出力CGENはCLKREGが固定値以下の間0となる。SUSR,CGENが各々0になるとＯＲ回路52の出力SUSI、フリップフロップ56の出力SUSPが0になることでデータCLKREGが0にリセットされ、クロック信号CLKの出力が停止される。【選択図】図１
2010130315.tif 000002
【特許請求の範囲】
【請求項１】
一定周期のクロック信号を出力するクロック出力手段と、
前記クロック信号の出力停止が指示され、かつ前記クロック信号の出力停止が指示されている状態が一定時間以上継続した場合に、前記クロック出力手段から出力される前記クロック信号のレベルが出力停止期間中の前記クロック信号のレベルに相当する第１レベルになっている期間に、前記クロック生成手段からの前記クロック信号の出力を停止させる制御手段と、
を含むクロック制御回路。
【請求項２】
前記クロック出力手段は、入力された基準信号の周期を計数するｍ(ｍ≧２)ビットのカウンタを備え、前記カウンタのｍビットのカウント値のうちの特定ビットの値を前記クロック信号のレベルとして出力する請求項１記載のクロック制御回路。
【請求項３】
前記クロック出力手段の前記カウンタは、ｍビットのカウント値を保持するレジスタを備え、当該レジスタに保持されているカウント値を前記入力された基準信号に同期して更新する構成であり、
前記制御手段は、前記レジスタに保持されている前記カウント値を所定値と比較した結果に基づいて、前記クロック出力手段から出力される前記クロック信号のレベルが前記第１レベルになっている期間か否かを検知する請求項２記載のクロック制御回路。
【請求項４】
前記クロック出力手段は、前記カウンタのｍビットのカウント値のうちの最上位ビットの値を前記クロック信号のレベルとして出力する構成であり、
前記制御手段は、前記レジスタに保持されている前記カウント値を前記所定値としての０〜２ｍ−１／２の範囲内の値と比較し、前記カウント値が前記所定値以下の間、前記クロック出力手段から出力される前記クロック信号のレベルが前記第１レベルになっていると判断する請求項３記載のクロック制御回路。
【請求項５】
前記クロック出力手段の前記カウンタは、ｍビットのカウント値を保持するレジスタを備え、当該レジスタに保持されているカウント値を前記入力された基準信号に同期して更新する構成であり、
前記制御手段は、前記レジスタへ入力する第１制御信号を、前記レジスタに保持されている前記カウント値をリセットさせるレベルへ切替えることで、前記クロック生成手段からの前記クロック信号の出力を停止させる請求項２記載のクロック制御回路。
【請求項６】
前記制御手段は、前記クロック信号の出力停止を指示するための制御信号が入力されるｎ(ｎ≧２)ビットのシフトレジスタを備え、前記シフトレジスタの全ビットに保持されている値が、前記制御信号において前記クロック信号の出力停止を指示するレベルに対応する値になったか否かに基づいて、前記クロック信号の出力停止が指示され、かつ前記クロック信号の出力停止が指示されている状態が一定時間以上継続したか否かを検知する請求項１〜請求項５の何れか１項記載のクロック制御回路。
【請求項７】
前記制御手段は、前記クロック信号の出力再開が指示された場合、前記カウンタのｍビットのカウント値のうちの特定ビットの値が前記第１レベルに相当する値から第２レベルに相当する値へ変化するタイミングで、前記クロック生成手段からの前記クロック信号の出力を再開させる請求項２〜請求項５の何れか１項記載のクロック制御回路。
【請求項８】
請求項１〜請求項７の何れか１項記載のクロック制御回路はＵＳＢに準拠した通信を行う通信制御装置に内蔵され、前記クロック信号の出力停止は、省電力状態への移行時に前記通信制御装置から指示されるクロック制御回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はクロック制御回路に係り、特に、一定周期のクロック信号を出力するクロック出力手段を備えたクロック制御回路に関する。
【背景技術】
【０００２】
ＵＳＢ２.０(Universal Serial Bus Revision2.0)の規格に準拠した通信を制御する通信制御回路は、一般にＵＳＢトランシーバマクロ(以下、ＵＳＢ ＰＨＹと称する)とシリアルインタフェースエンジン(以下、ＵＳＢ ＬＩＮＫと称する)の２つの機能ブロックで構成されており(例として図３参照)、これらの間のインタフェースはＵＴＭＩ(ＵＳＢ２.０ Transceiver Macrocell Interface)、或いはＵＴＭＩ＋(以下、ＵＴＭＩと総称する)と称される規格で定められている。また、ＵＳＢ２.０の規格では、通信が行われないときに通信制御回路の消費電力を低減するための機能として、通信が一定時間行われないことが検出された場合に省電力状態(サスペンド状態)へ移行するサスペンド機能と、省電力状態(サスペンド状態)から通信可能な通常状態へ復帰するレジューム機能が定められている。
【０００３】
ＵＴＭＩの規格では、ＵＳＢ ＰＨＹからＵＳＢ ＬＩＮＫへＵＴＭＩ Ｉ／Ｆクロック信号CLKを出力し、ＵＳＢ ＬＩＮＫからＵＳＢ ＰＨＹへＵＴＭＩサスペンド信号SUSPENDM(ローアクティブ)を出力するよう規定されている。またＵＴＭＩの規格では、サスペンド時にＵＳＢ ＬＩＮＫがＵＴＭＩサスペンド信号SUSPENDMをアサート(SUSPENDM＝０)すると、ＵＳＢ ＰＨＹがＵＴＭＩ Ｉ／Ｆクロック信号CLKを発振（振幅）停止し、レジューム時にＵＳＢ ＬＩＮＫがＵＴＭＩサスペンド信号SUSPENDMをデアサート(SUSPENDM＝１)すると、ＵＳＢ ＰＨＹがＵＴＭＩ Ｉ／Ｆクロック信号CLKの発振を再開するよう規定されている。
【０００４】
ＵＳＢ２.０の規格に準拠した通信制御回路において、サスペンド状態への移行時及び通常状態への復帰時(レジューム時)におけるＵＴＭＩ Ｉ／Ｆクロック信号CLKの停止／再開は、従来、例えば図３に示す構成によって実現される。すなわち、上記の通信制御回路を構成するＵＳＢ ＬＩＮＫ１００とＵＳＢ ＰＨＹ１０２との間は、各種のＵＴＭＩ Ｉ／Ｆ信号を伝送するための信号線を介して接続されている。なお、図３には、ＵＴＭＩ Ｉ／Ｆ信号のうち、ＵＴＭＩ Ｉ／Ｆクロック信号CLK、ＵＴＭＩサスペンド信号SUSPENDM(ローアクティブ)、受信データDATAOUTを伝送する信号線のみ示しており、説明の簡単化のためにその他の信号を伝送する信号線の図示を省略している。またＵＴＭＩの規格では、ＵＴＭＩ Ｉ／Ｆクロック信号の周波数として60MHz、30MHzの何れかをＵＳＢ ＰＨＹ１０２の入力で設定・選択可能とされているが、図３にはＵＴＭＩ Ｉ／Ｆクロック信号の周波数が60MHzの場合の構成を示している。
【０００５】
図３に示すように、ＵＳＢ ＬＩＮＫ１００は動作モードが通常状態かサスペンド状態かを決定するレジスタ１０４を備え、レジスタ１０４のデータ出力端子DOからは動作モードを示す出力信号SUSPSTが組合せ回路１０６へ出力され、組合せ回路１０６からはＵＴＭＩサスペンド信号SUSPENDM(SUSPENDM＝０でサスペンド状態)が出力される。また、レジスタ１０４の非同期セット端子ASには、レジューム時に出力信号SUSPSTを通常状態に相当するレベルへ切替えるためのレジューム信号RESUMEが入力され、レジスタ１０４のクロック端子にはＵＴＭＩ Ｉ／Ｆクロック信号CLKが入力される。また、受信データDATAOUTは組合せ回路１０８に入力され、組合せ回路１０８の出力はレジスタ１１０に入力され、レジスタ１１０のクロック端子にはＵＴＭＩ Ｉ／Ｆクロック信号CLKが入力される。
【０００６】
また、ＵＳＢ ＰＨＹ１０２はＰＬＬ１１２によって480MHzの信号CLK480が生成され、信号CLK480は３ビットレジスタ１１４のクロック端子に入力され、３ビットレジスタ１１４の出力端子DOからは３ビットレジスタ１１４に保持されている３ビットのデータCLKREG[2:0]が出力される。データCLKREG[2:0]は＋１演算回路１１６に入力され、＋１演算回路１１６で１だけ加算されたデータは３ビットレジスタ１１４の入力端子DIに入力される。３ビットレジスタ１１４の非同期リセット端子ARNにはＵＴＭＩサスペンド信号SUSPENDMが反転されて入力され、ＵＴＭＩサスペンド信号SUSPENDM＝０(ローレベル)になると、３ビットレジスタ１１４に保持されているデータCLKREG[2:0]は非同期にCLKREG[2:0]＝(０)Ｈ＝(000)Ｂ(但し、( )Ｈは括弧内の数値が16進数、( )Ｂは括弧内の数値が２進数であることを表す)にリセットされる。３ビットのデータCLKREG[2:0]のうちの最上位ビットのデータCLKREG[2]はＵＴＭＩ Ｉ／Ｆクロック信号CLKとして出力される。また、データCLKREG[2]はレジスタ１１８のクロック端子に入力され、レジスタ１１８の出力端子DOから出力された信号は組合せ回路１２０へ入力され、組合せ回路１２０の出力はＵＴＭＩ受信データDATAOUTとしてＵＳＢ ＬＩＮＫ１００の組合せ回路１０８へ入力される。
【０００７】
ここで、ＵＳＢの規格におけるサスペンド及びレジュームについて簡単に説明する。ＵＳＢの規格に準拠してデータ通信を行う機器は、その一方(例えばパソコン等)がデータ通信開始を指示するＵＳＢホストとして機能し、他方の機器(例えばプリンタ等)がＵＳＢデバイスとして機能する。ＵＳＢホストはデータ通信を行う必要が無くなると、データ通信開始を指示するトークン信号や、ＳＯＦ(スタートオブフレーム)と呼ばれるフレーム同期パケットの送信を停止するため、ＵＳＢシリアル信号Ｄ＋／Ｄ−は信号レベルが変化しない状態(アイドル状態)となる。ＵＳＢデバイスは、ＵＳＢシリアル信号Ｄ＋／Ｄ−がＵＳＢ２.０規格で定められた一定期間アイドル状態で維持されていることを検知すると、サスペンド状態(省電力状態)へ移行する。このとき、ＵＳＢ ＬＩＮＫはＵＴＭＩサスペンド信号SUSPENDMをアサート(SUSPENDM＝０)し、これに伴いＵＳＢ ＰＨＹはＵＴＭＩ Ｉ／Ｆクロック信号CLKの出力(レベルの変化)を停止する。また、サスペンド状態から通常状態へ復帰するレジューム時に、ＵＳＢホストはレジューム信号と呼ばれる予め定められた波形の信号を出力し、ＵＳＢデバイスはこれを認識してサスペンド状態から通常状態へ復帰する。このとき、ＵＳＢ ＬＩＮＫはＵＴＭＩサスペンド信号SUSPENDMをデアサート(SUSPENDM＝１)し、これに伴いＵＳＢ ＰＨＹはＵＴＭＩ Ｉ／Ｆクロック信号CLKの出力(レベルの変化)を再開する。
【０００８】
また、ＵＳＢ２.０の規格に準拠した通信制御回路の他の構成として、図４に示す回路構成も提案されている。図４に示す回路構成は、レジスタ１０４のクロック端子にはＵＴＭＩ Ｉ／Ｆクロック信号CLKが反転されて入力されることで、レジスタ１０４がＵＴＭＩ Ｉ／Ｆクロック信号CLKの立下りに同期して動作する点でのみ図３に示す回路構成と相違している。
【０００９】
また、上記に関連して特許文献１には、入力信号に混入しているグリッチを除去するためのグリッチ除去回路を、入力データＹに混入するグリッチ幅よりも大きな遅延を付加する遅延回路と、入力データＹと出力データＺの論理値を比較し、一致／不一致の判定を行う比較回路と、遅延回路から出力される遅延データＤＹと比較回路の判定結果ＧＹを入力とし、比較回路の判定結果ＧＹが不一致の場合は遅延データＤＹを、一致の場合は出力データＺを保持し、出力端子から出力データＺとして出力するラッチ回路と、で構成する技術が開示されている。
【００１０】
また特許文献２には、グリッチが混入している信号Ｙを直列に接続された２個の遅延素子を介してラッチ回路に与えると共に、遅延後の信号ＤＹ１と遅延前の信号ＹをＸＯＲ回路で比較し、信号Ｙの論理値の変化を検出した信号ＧＹ１を生成し、信号ＧＹ１によってトリガーされるワンショットマルチバイブレータとして機能するゲートパルス発生部により、信号ＧＹ１に同期して所定のパルス幅をもつゲートパルスを発生させ、ラッチ回路において、通常は信号ＤＹ２をそのまま通し、ゲートパルスが端子ＧＴに与えられている間はその直前の論理出力を維持したままにすることで、グリッチの通過をブロックする技術が開示されている。
【特許文献１】特開２００２−２０８８４４号公報
【特許文献２】特開平５−２５９８３７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
図３に示す従来のＵＳＢ通信制御回路の動作について、図５,６を参照して説明する。図５(Ａ)はＵＳＢがサスペンド状態へ移行しない場合(SUSPENDM＝１のまま維持される場合)の動作を示している。図５(Ａ)に示すように、ＵＴＭＩサスペンド信号SUSPENDM＝１の期間では、３ビットレジスタ１１４の非同期リセット端子ARNにARN＝０が入力されているため、３ビットレジスタ１１４に保持されているデータCLKREG[2:0]はリセットされず、信号CLK480の立上りエッジに同期して１づつカウントアップされる。そしてデータCLKREG[2:0]＝(４)Ｈ＝(100)Ｂに達すると(図５,６に示す時刻Ｔ1のタイミング)、データCLKREG[2]＝(1)ＢとなるためＵＴＭＩ Ｉ／Ｆクロック信号CLK＝１(ハイレベル)となる。また、データCLKREG[2:0]のカウントアップが更に続き、データCLKREG[2:0]＝(７)Ｈ＝(111)ＢからデータCLKREG[2:0]＝(０)Ｈ＝(000)Ｂへカウントアップされると(図５,６に示す時刻Ｔ2のタイミング)、データCLKREG[2]＝(0)ＢとなるためＵＴＭＩ Ｉ／Ｆクロック信号CLK＝０(ローレベル)となる。これにより、ＵＴＭＩ Ｉ／Ｆクロック信号CLKは周波数がCLK480の１／８に分周され、60MHzのクロック信号となる。
【００１２】
また、図５(Ｂ)にはＵＴＭＩ Ｉ／Ｆクロック信号CLK＝０の期間にＵＴＭＩサスペンド信号SUSPENDMがSUSPENDM＝１からSUSPENDM＝０へ変化した場合の動作を示す。図５(Ｂ)の例では、時刻Ｔ6にＵＴＭＩサスペンド信号SUSPENDM＝０へ変化すると、３ビットレジスタ１１４の非同期リセット端子ARNへの入力がARN＝０からARN＝１へ変化するため、データCLKREG[2:0]＝(０)Ｈ＝(000)Ｂにクリアされる。以降、ＵＴＭＩサスペンド信号SUSPENDMがアサート(SUSPENDM＝０)されている間、３ビットレジスタ１１４の非同期リセット端子ARNへの入力はARN＝１のまま維持されるため、データCLKREG[2:0]＝(０)Ｈ＝(000)Ｂのまま維持され、ＵＴＭＩ Ｉ／Ｆクロック信号CLKは時刻Ｔ6以降、CLK＝０のまま維持される。図５(Ｂ)の例では、ＵＴＭＩ Ｉ／Ｆクロック信号CLK＝０の期間にＵＴＭＩサスペンド信号SUSPENDMがSUSPENDM＝１からSUSPENDM＝０へ変化したことで、ＵＴＭＩ Ｉ／Ｆクロック信号CLKはCLK＝０のままレベルの変化が停止されるので、ＵＴＭＩ Ｉ／Ｆクロック信号CLKにハザードやグリッチは発生しない。
【００１３】
一方、図６(Ａ)にはＵＴＭＩ Ｉ／Ｆクロック信号CLK＝１の期間にＵＴＭＩサスペンド信号SUSPENDMがSUSPENDM＝１からSUSPENDM＝０へ変化した場合の動作を示す。図６(Ａ)の例では、時刻Ｔ3にデータCLKREG[2:0]＝(４)Ｈ＝(100)Ｂとなり、ＵＴＭＩ Ｉ／Ｆクロック信号CLKがCLK＝０からCLK＝１へ変化しているが、時刻Ｔ4でＵＴＭＩサスペンド信号SUSPENDMがSUSPENDM＝１からSUSPENDM＝０へ変化しているため、データCLKREG[2:0]＝(０)Ｈ＝(000)Ｂにクリアされ、データCLKREG[2]＝(0)ＢとなりＵＴＭＩ Ｉ／Ｆクロック信号CLKは再びCLK＝０に戻っている。ここで、図６(Ａ)に示すように時刻Ｔ3〜時刻Ｔ4の期間が短い場合、ＵＴＭＩ Ｉ／Ｆクロック信号CLKにはグリッチ状のレベル変化が生ずる。サスペンド状態へ移行する場合にはＵＳＢホストとＵＳＢデバイスの間でデータ送受信は行われていないものの、ＵＳＢ ＬＩＮＫ１００やＵＳＢ ＰＨＹ１０２にはＵＴＭＩ Ｉ／Ｆクロック信号CLKに同期して動作するレジスタ１０４,１１０,１１８等が存在しているため、ＵＴＭＩ Ｉ／Ｆクロック信号CLKにグリッチが発生したことに伴ってこれらが誤動作することで、ＵＳＢ通信制御回路を含むシステム全体の機能不良やハングアップ等に繋がる恐れがある。
【００１４】
また、図６(Ａ)に示した現象に起因する問題を解消するために、図４に示す回路構成では、レジスタ１０４をＵＴＭＩ Ｉ／Ｆクロック信号CLKの立下りに同期して動作させており、これより、レジスタ１０４の出力信号SUSPSTやＵＴＭＩサスペンド信号SUSPENDMのレベルが変化するタイミングが、ＵＴＭＩＩ／Ｆクロック信号CLKの立下りをトリガとするタイミングになるので、ＵＴＭＩサスペンド信号SUSPENDMをＵＴＭＩ Ｉ／Ｆクロック信号CLK＝０の期間にSUSPENDM＝１からSUSPENDM＝０に変化させることが可能となり、ＵＴＭＩ Ｉ／Ｆクロック信号CLKに図６(Ａ)に示したようなグリッチやハザードが発生することを原理的には防止することができる。
【００１５】
しかしながら、ＵＴＭＩサスペンド信号SUSPENDMをＵＴＭＩ Ｉ／Ｆクロック信号CLK＝０の期間にSUSPENDM＝１からSUSPENDM＝０に変化させるためには、ＵＴＭＩＩ／Ｆクロック信号CLKが立下がってからCLK＝０が維持されている期間内（厳密には、３ビットレジスタ１１４の出力がデータCLKREG[2:0]＝(３)Ｈ＝(011)ＢからデータCLKREG[2:0]＝(４)Ｈ＝(100)ＢへカウントアップしてCLK＝１になる前迄の期間内）に、３ビットレジスタ１１４の非同期リセット端子ARNへの入力ARNを確定させる必要があり、組合せ回路１０６の遅延や配線遅延を含めたパス遅延がＵＴＭＩ Ｉ／Ｆクロック信号CLKの半周期以内しか許容されていないので、回路設計に制約が加わり、組合せ回路１０６の遅延や配線遅延の大きさによっては回路設計が困難になるという問題がある。
【００１６】
また、仮にレジスタ１０４が複数ビット構成であった場合、組合せ回路１０６の回路構成によっては（例えば組合せ回路１０６をステータスデコード回路で構成した等の場合には）、ＵＴＭＩサスペンド信号SUSPENDMにグリッチやハザードが発生してしまうことがある。そして図６(Ｂ)に示すように、ＵＴＭＩ Ｉ／Ｆクロック信号CLK＝1の期間にＵＴＭＩサスペンド信号SUSPENDMにハザードが発生したとすると、ＵＴＭＩ Ｉ／Ｆクロック信号CLKのデューティが崩れ、ＵＴＭＩ Ｉ／Ｆクロック信号CLKに同期して動作する各種回路が誤動作する可能性がある。また、ＵＴＭＩサスペンド信号SUSPENDMのグリッチが発生した場合、そのタイミングによってはＵＴＭＩ Ｉ／Ｆクロック信号CLKにグリッチやハザードが発生する。このため組合せ回路１０６は、ＵＴＭＩサスペンド信号SUSPENDMにグリッチやハザードが発生しないような回路構成とする必要もあり、条件によっては回路設計が極めて困難になるという問題がある。
【００１７】
また上述の問題を解決するために、例えば特許文献１や特許文献２の技術を適用してＵＴＭＩ Ｉ／Ｆクロック信号CLKからグリッチを除去することも考えられるが、この構成においても、図６(Ｂ)に示すように、ＵＴＭＩサスペンド信号SUSPENDMにハザードが発生した場合にＵＴＭＩ Ｉ／Ｆクロック信号CLKのデューティが崩れてしまうことは解消できず、ＵＴＭＩ Ｉ／Ｆクロック信号CLKに同期して動作する各種回路が誤動作する可能性がある。
【００１８】
本発明は上記事実を考慮して成されたもので、回路設計が簡単で、クロック信号の出力停止が指示された場合に、クロック信号にグリッチやデューティの崩れを生じさせることなくクロック信号の出力を停止させることができるクロック制御回路を得ることが目的である。
【課題を解決するための手段】
【００１９】
上記目的を達成するために請求項１記載の発明に係るクロック制御回路は、一定周期のクロック信号を出力するクロック出力手段と、前記クロック信号の出力停止が指示され、かつ前記クロック信号の出力停止が指示されている状態が一定時間以上継続した場合に、前記クロック出力手段から出力される前記クロック信号のレベルが出力停止期間中の前記クロック信号のレベルに相当する第１レベルになっている期間に、前記クロック生成手段からの前記クロック信号の出力を停止させる制御手段と、を含んで構成されている。
【００２０】
請求項１記載の発明では、クロック出力手段によって一定周期のクロック信号が出力され、制御手段は、クロック信号の出力停止が指示され、かつクロック信号の出力停止が指示されている状態が一定時間以上継続した場合に、クロック出力手段から出力されるクロック信号のレベルが出力停止期間中の前記クロック信号のレベルに相当する第１レベルになっている期間に、クロック生成手段からのクロック信号の出力を停止させる。なお、上記の一定時間としては、例えばクロック出力手段が出力するクロック信号の１周期に相当する時間を適用することができるが、これに限られるものではなく、グリッチ等の継続時間よりも十分に長い時間であればよい。
【００２１】
上記のように、請求項１記載の発明では、クロック信号の出力停止が指示された場合にも、クロック信号の出力停止が指示されている状態が一定時間以上継続しないとクロック信号の出力が停止されないので、例えばクロック信号の出力停止の指示が、クロック信号の出力停止を指示するための制御信号のレベルの変化によって成される構成において、当該制御信号に、クロック信号の出力停止指示を意味するレベルへ一時的に変化するグリッチ又はハザードが生じた場合にはクロック信号の出力は停止されず、クロック出力手段から出力されるクロック信号にグリッチやデューティの崩れは生じない。
【００２２】
また請求項１記載の発明では、クロック信号の出力停止が指示され、かつクロック信号の出力停止が指示されている状態が一定時間以上継続した場合に、クロック出力手段から出力されるクロック信号のレベルが出力停止期間中のクロック信号のレベルに相当する第１レベルになっている期間に、クロック生成手段からのクロック信号の出力を停止させるので、クロック生成手段からのクロック信号のレベルが、クロック信号の出力停止が指示されたことを契機として第２レベルから第１レベルへ変化することはなく、クロック信号の出力停止が指示されたタイミング(クロック信号の出力停止が指示されている状態が一定時間以上継続したタイミング)に拘わらず、クロック出力手段から出力されるクロック信号にグリッチやデューティの崩れは生じない。
【００２３】
そして請求項１記載の発明では、上記のように、クロック信号の出力停止の指示にグリッチやハザードが混入していた場合に、クロック出力手段から出力されるクロック信号にグリッチやデューティの崩れが生じることを防止できるので、クロック信号の出力停止の指示にグリッチやハザードが混入しないように回路を設計する必要もない。従って、請求項１記載の発明によれば、クロック制御回路を、回路設計の困難化を招くことなく、クロック信号の出力停止が指示された場合に、クロック信号にグリッチやデューティの崩れを生じさせることなくクロック信号の出力を停止できるように構成することができる。
【００２４】
なお、請求項１記載の発明において、一定周期のクロック信号を出力するクロック出力手段としては種々の構成を採用可能であるが、例えば入力された基準信号を分周してクロック信号を生成・出力する場合、クロック出力手段としては、例えば請求項２に記載したように、入力された基準信号の周期を計数するｍ(ｍ≧２)ビットのカウンタを備え、前記カウンタのｍビットのカウント値のうちの特定ビットの値をクロック信号のレベルとして出力する構成を採用することができる。
【００２５】
また、請求項２記載の発明において、クロック出力手段としては、カウンタがｍビットのカウント値を保持するレジスタを備え、当該レジスタに保持されているカウント値を入力された基準信号に同期して更新する構成を採用可能であり、この場合、制御手段は、例えば請求項３に記載したように、レジスタに保持されているカウント値を所定値と比較した結果に基づいて、クロック出力手段から出力されるクロック信号のレベルが第１レベルになっている期間か否かを検知するように構成することができる。これにより、本構成を有しない場合と比較して、クロック信号のレベルが第１レベルになっている期間を検知するための制御手段の構成を簡単にすることができる。
【００２６】
また、請求項３記載の発明において、クロック出力手段が、カウンタのｍビットのカウント値のうちの最上位ビットの値をクロック信号のレベルとして出力する構成である場合には、制御手段は、例えば請求項４に記載したように、レジスタに保持されているカウント値を所定値としての０〜２ｍ−１／２の範囲内の値と比較し、カウント値が所定値以下の間、クロック出力手段から出力されるクロック信号のレベルが第１レベルになっていると判断するように構成することができる。
【００２７】
また、請求項２記載の発明において、クロック出力手段として、カウンタがｍビットのカウント値を保持するレジスタを備え、当該レジスタに保持されているカウント値を入力された基準信号に同期して更新する構成である場合、制御手段は、例えば請求項５に記載したように、レジスタへ入力する第１制御信号を、レジスタに保持されているカウント値をリセットさせるレベルへ切替えることで、クロック生成手段からのクロック信号の出力を停止させるように構成することができる。これにより、本構成を有しない場合と比較して、クロック生成手段からのクロック信号の出力を停止させるための制御手段の構成を簡単にすることができる。
【００２８】
また、請求項１〜請求項５の何れかに記載の発明において、制御手段は、例えば請求項６に記載したように、クロック信号の出力停止を指示するための制御信号が入力されるｎ(ｎ≧２)ビットのシフトレジスタを備え、シフトレジスタの全ビットに保持されている値が、制御信号においてクロック信号の出力停止を指示するレベルに対応する値になったか否かに基づいて、クロック信号の出力停止が指示され、かつクロック信号の出力停止が指示されている状態が一定時間以上継続したか否かを検知するよう構成することができる。これにより、本構成を有しない場合と比較して、クロック信号の出力停止が指示され、かつクロック信号の出力停止が指示されている状態が一定時間以上継続したか否かを検知するための制御手段の構成を簡単にすることができる。
【００２９】
また、請求項２〜請求項５の何れかに記載の発明において、制御手段は、例えば請求項７に記載したように、クロック信号の出力再開が指示された場合、カウンタのｍビットのカウント値のうちの特定ビットの値が第１レベルに相当する値から第２レベルに相当する値へ変化するタイミングで、クロック生成手段からのクロック信号の出力を再開させるように構成することが好ましい。これにより、クロック信号の出力再開が指示された場合にも、クロック信号にグリッチやデューティの崩れを生じさせることなくクロック信号の出力を再開させることができる。
【００３０】
また、請求項１〜請求項７の何れか１項記載のクロック制御回路は、例えば請求項８に記載したように、ＵＳＢに準拠した通信を行う通信制御装置に内蔵することができ、この場合、クロック信号の出力停止は、省電力状態への移行時に通信制御装置から指示されることになる。
【発明の効果】
【００３１】
以上説明したように本発明は、クロック信号の出力停止が指示され、かつクロック信号の出力停止が指示されている状態が一定時間以上継続した場合に、クロック出力手段から出力されるクロック信号のレベルが出力停止期間中のクロック信号のレベルに相当する第１レベルになっている期間に、クロック生成手段からのクロック信号の出力を停止させるようにしたので、回路設計が簡単で、クロック信号の出力停止が指示された場合に、クロック信号にグリッチやデューティの崩れを生じさせることなくクロック信号の出力を停止させることができる、という優れた効果を有する。
【発明を実施するための最良の形態】
【００３２】
以下、図面を参照して本発明の実施形態の一例を詳細に説明する。図１には、本実施形態に係るＵＳＢ通信制御回路１０が示されている。ＵＳＢ通信制御回路１０はＵＳＢ ＬＩＮＫ１２及びＵＳＢ ＰＨＹ１４を備え、ＵＳＢ ＬＩＮＫ１２とＵＳＢ ＰＨＹ１４との間は各種のＵＴＭＩ Ｉ／Ｆ信号を伝送するための信号線を介して接続されている。なお、図１にはＵＴＭＩ Ｉ／Ｆ信号のうち、ＵＴＭＩ Ｉ／Ｆクロック信号CLK、ＵＴＭＩサスペンド信号SUSPENDM(ローアクティブ)、受信データDATAOUTを伝送する信号線のみ示しており、説明の簡単化のためにその他の信号を伝送する信号線の図示を省略している。また、図１は図３と同様、ＵＴＭＩ Ｉ／Ｆクロック信号の周波数が60MHzの場合の構成を示すが、本発明はＵＴＭＩ Ｉ／Ｆクロック信号の周波数が30MHzの場合にも適用可能である。
【００３３】
図１に示すように、ＵＳＢ ＬＩＮＫ１２は、ＵＳＢ通信制御回路１０の動作モードが通常状態かサスペンド状態かを表すデータを保持するレジスタ１６を備えている。レジスタ１６のデータ出力端子DOは組合せ回路１８の入力端子に接続されており、レジスタ１６のデータ出力端子DOからは、レジスタ１６に保持されているデータの値(動作モード)を表す出力信号SUSPSTが組合せ回路１８へ出力され、組合せ回路１８の出力端子からはＵＴＭＩサスペンド信号SUSPENDM(SUSPENDM＝０でサスペンド状態)がＵＳＢ ＰＨＹ１４へ出力される。なお、ＵＴＭＩサスペンド信号SUSPENDMは請求項６に記載の「クロック信号の出力停止を指示するための制御信号」に対応している。またレジスタ１６の非同期セット端子ASには、レジューム時に、レジスタ１６に保持されているデータを通常状態に対応する値へ切替えることで、レジスタ１６からの出力信号SUSPSTを通常状態に相当するレベルへ切替えるためのレジューム信号RESUMEが入力される。また、レジスタ１６のクロック端子はＵＳＢ ＰＨＹ１４に接続され、ＵＳＢ ＰＨＹ１４からＵＴＭＩ Ｉ／Ｆクロック信号CLKが入力される。
【００３４】
また、ＵＳＢ ＬＩＮＫ１２は組合せ回路２０及びレジスタ２２を備えており、組合せ回路２０の入力端子にはＵＳＢ ＰＨＹ１４から受信データDATAOUTが入力される。また、組合せ回路２０の出力端子はレジスタ２２の入力端子DIに接続され、組合せ回路２０からの出力データはレジスタ２２に入力される。また、レジスタ２２のクロック端子にはＵＳＢ ＰＨＹ１４からＵＴＭＩ Ｉ／Ｆクロック信号CLKが入力される。
【００３５】
一方、ＵＳＢ ＰＨＹ１４は480MHzの基準クロック信号CLK480を生成・出力するＰＬＬ２６を備えている。ＰＬＬ２６の出力端子は３ビットレジスタ２８のクロック端子に接続されており、ＰＬＬ２６から出力された基準クロック信号CLK480は３ビットレジスタ２８のクロック端子に入力される。３ビットレジスタ２８の出力端子DOは＋１演算回路３０の入力端子に接続されており、＋１演算回路３０の出力端子は３ビットレジスタ２８の入力端子DIに接続されている。３ビットレジスタ２８は３ビットのデータCLKREG[2:0]を保持し、基準クロック信号CLK480に同期したタイミングで、保持している３ビットのデータCLKREG[2:0]を出力端子DOを介して出力すると共に、＋１演算回路３０から入力端子DIを介して入力される新たな３ビットのデータをデータCLKREG[2:0]として保持することを繰り返す。これにより、３ビットレジスタ２８に保持されている３ビットのデータCLKREG[2:0]は、基準クロック信号CLK480と同期したタイミングで１ずつカウントアップされ、データCLKREG[2:0]＝(７)Ｈ＝(111)Ｂに達すると次の周期でデータCLKREG[2:0]＝(０)Ｈ＝(000)Ｂに戻ることが繰り返される。
【００３６】
またＵＳＢ ＰＨＹ１４は、８個のフリップフロップ回路３４,３６,３８,４０,４２,４４,４６,４８から成るシフトレジスタ３２を備えている(なお、図１では簡略化のためフリップフロップ回路４０〜４６の図示を省略している)。フリップフロップ回路３４の入力端子はＵＳＢ ＬＩＮＫ１２の組合せ回路１８の出力端子に接続され、組合せ回路１８からＵＴＭＩサスペンド信号SUSPENDMが入力される。また、フリップフロップ回路３４の出力端子はフリップフロップ回路３６の入力端子に接続され、フリップフロップ回路３６の出力端子はフリップフロップ回路３８の入力端子に接続され、フリップフロップ回路３８の出力端子はフリップフロップ回路４０の入力端子に接続され、フリップフロップ回路４０の出力端子はフリップフロップ回路４２の入力端子に接続され、フリップフロップ回路４２の出力端子はフリップフロップ回路４４の入力端子に接続され、フリップフロップ回路４４の出力端子はフリップフロップ回路４６の入力端子に接続され、フリップフロップ回路４６の出力端子はフリップフロップ回路４８の入力端子に接続されている。
【００３７】
また、８個のフリップフロップ回路３４〜４８のクロック端子はＰＬＬ２６の出力端子に各々接続され、ＰＬＬ２６から出力された基準クロック信号CLK480はフリップフロップ回路３４〜４８のクロック端子に各々入力される。シフトレジスタ３２は、８個のフリップフロップ回路３４〜４８に、フリップフロップ回路３４に保持されている１ビットのデータを最下位ビットのデータ、フリップフロップ回路４８に保持されている１ビットのデータを最上位ビットのデータとする８ビットのデータSUSPR[7:0]が保持されるが、この８ビットのデータSUSPR[7:0]は基準クロック信号CLK480と同期したタイミングで、フリップフロップ回路３４には、そのときのＵＴＭＩサスペンド信号SUSPENDMのレベルに対応する１ビットのデータが保持され、フリップフロップ回路３６〜４８には、それ迄フリップフロップ回路３４〜４６に保持されていた７ビットのデータが保持される(左シフトされる)ことが繰り返される。
【００３８】
シフトレジスタ３２のフリップフロップ回路３４〜４８の出力端子はＯＲ回路５０の８個の入力端子に各々接続されており、ＯＲ回路５０の出力端子はＯＲ回路５２の２個の入力端子の一方に接続されている。フリップフロップ回路３４〜４８からＯＲ回路５０へは８ビットのデータSUSPR[7:0]のうちの各ビットのデータSUSPR[0]〜SUSPR[7]が各々入力され、ＯＲ回路５０からはデータSUSPR[0]〜SUSPR[7]の論理和に相当するデータSUSRがＯＲ回路５２へ出力される。
【００３９】
また、ＯＲ回路５２の２個の入力端子の他方には比較器５４の出力端子が接続されている。比較器５４は２個の入力端子AI,BIを備えている。比較器５４の入力端子AIは３ビットレジスタ２８の出力端子DOに接続されており、３ビットレジスタ２８に保持されている３ビットのデータCLKREG[2:0]が入力される。また、比較器５４の入力端子BIには固定値(＝(２)Ｈ＝(010)Ｂ)が入力される。比較器５４は入力端子AIを介して入力される３ビットのデータCLKREG[2:0]と入力端子BIを介して入力される固定値を比較し、AI−BI＞０の場合は比較結果データCGEN＝１を出力し、それ以外の場合(AI−BI≦０の場合)は比較結果データCGEN＝０を出力する。これにより、データCLKREG[2:0]＝(３)Ｈ＝(011)Ｂ〜(７)Ｈ＝(111)Ｂの場合は比較結果データCGEN＝１がＯＲ回路５２へ出力され、データCLKREG[2:0]＝(０)Ｈ＝(000)Ｂ〜(２)Ｈ＝(010)Ｂの場合は比較結果データCGEN＝０がＯＲ回路５２へ出力される。
【００４０】
また、ＯＲ回路５２の出力端子はフリップフロップ回路５６の入力端子DIに接続され、フリップフロップ回路５６の出力端子DOは３ビットレジスタ２８の非同期リセット端子ARNに接続されている。ＯＲ回路５２からはデータSUSRと比較結果データCGENの論理和に相当するデータSUSIがフリップフロップ回路５６へ出力され、データSUSIはフリップフロップ回路５６に一旦保持された後に、データSUSPとして３ビットレジスタ２８の非同期リセット端子ARNに反転されて入力される。なお、データSUSPは請求項５に記載の第１制御信号に対応している。３ビットレジスタ２８に保持されているデータCLKREG[2:0]は、フリップフロップ回路５６から出力されるデータSUSI＝０(非同期リセット端子ARNに入力される信号がハイレベル)になると、CLKREG[2:0]＝(０)Ｈ＝(000)Ｂにリセットされる。
【００４１】
また、３ビットレジスタ２８の出力端子DOに接続された信号線のうち、３ビットのデータCLKREG[2:0]のうちの最上位ビットのデータCLKREG[2]を伝送する信号線は途中で分岐され、レジスタ５８のクロック端子、ＵＳＢ ＬＩＮＫ１２のレジスタ１６,２２のクロック端子に各々接続されており、データCLKREG[2]はＵＴＭＩ Ｉ／Ｆクロック信号CLKとしてレジスタ１６,２２,５８に各々入力される。レジスタ５８の出力端子DOは組合せ回路６０の入力端子に接続され、組合せ回路６０の出力端子はＵＳＢ ＬＩＮＫ１２の組合せ回路２０の入力端子に接続されている。組合せ回路６０から出力されたデータはＵＴＭＩ受信データDATAOUTとして組合せ回路２０へ入力される。
【００４２】
なお、上述した構成のＵＳＢ通信制御回路１０において、ＵＳＢ ＰＨＹ１４のＰＬＬ２６、３ビットレジスタ２８及び＋１演算回路３０は本発明に係るクロック出力手段(より詳しくは請求項２〜５に記載のクロック出力手段)に対応しており、３ビットレジスタ２８及び＋１演算回路３０は請求項２に記載のカウンタに対応しており、３ビットレジスタ２８は請求項３,５に記載のレジスタに対応している。また、ＵＳＢ ＰＨＹ１４のシフトレジスタ３２、ＯＲ回路５０、ＯＲ回路５２、比較器５４及びフリップフロップ回路５６は本発明に係る制御手段(より詳しくは請求項３〜請求項７に記載の制御手段)に対応しており、シフトレジスタ３２は請求項６に記載のシフトレジスタに対応している。また、ＵＳＢ ＰＨＹ１４は本発明に係るクロック制御回路(より詳しくは請求項８に記載のクロック制御回路)に対応しており、ＵＳＢ通信制御回路１０は請求項８に記載の通信制御装置に対応している。
【００４３】
次に本実施形態の作用として、図２を参照し、本実施形態に係るＵＳＢ通信制御回路１０の動作を説明する。図２は、ＵＴＭＩサスペンド信号SUSPENDMが、図２に示す時刻Ｔ1から時刻Ｔ2の間でSUSPENDM＝１からSUSPENDM＝０へ変化し、その後、図２に示す時刻Ｔ9にSUSPENDM＝０からSUSPENDM＝１へ変化した場合の動作を示している。
【００４４】
時刻Ｔ2迄の間、シフトレジスタ３２のフリップフロップ回路３４にはＵＴＭＩサスペンド信号SUSPENDMとしてSUSPENDM＝１が継続的に入力されているので、時刻Ｔ2迄の間、シフトレジスタ３２から出力される８ビットのデータSUSPR[7:0]＝(ＦＦ)Ｈ＝(11111111)Ｂとなっている。ここで、時刻Ｔ1から時刻Ｔ2の間でＵＴＭＩサスペンド信号SUSPENDMがSUSPENDM＝１からSUSPENDM＝０へ変化すると、フリップフロップ回路３４は時刻Ｔ2にＵＴＭＩサスペンド信号SUSPENDM＝０をラッチするため、シフトレジスタ３２からの出力データSUSPR[7:0]＝(ＦＥ)Ｈ＝(11111110)Ｂとなる。
【００４５】
時刻Ｔ2以降、フリップフロップ回路３４にはＵＴＭＩサスペンド信号SUSPENDMとしてSUSPENDM＝０が継続的に入力されるので、基準クロック信号CLK480の各周期に、フリップフロップ回路３４にデータ(0)Ｂがラッチ(保持)されると共に、フリップフロップ回路３４にラッチ(保持)されたデータ(0)Ｂが左シフトによって上位ビットへ送られることで、時刻Ｔ1から基準クロック信号CLK480の８周期後の時刻Ｔ4にはシフトレジスタ３２からの出力データSUSPR[7:0]＝(００)Ｈ＝(00000000)Ｂとなり、ＯＲ回路５０の出力データSUSRがSUSR＝１からSUSR＝０へ変化する。
【００４６】
このように、ＯＲ回路５０の出力データSUSRは、ＵＴＭＩサスペンド信号SUSPENDM＝０の状態が基準クロック信号CLK480の８周期分の期間以上継続した場合(ＵＴＭＩ Ｉ／Ｆクロック信号CLKの１周期分の期間以上継続した場合)にのみSUSR＝０となり、ＵＴＭＩサスペンド信号SUSPENDMにグリッチやハザードが混入した等により、ＵＴＭＩサスペンド信号SUSPENDMがＵＴＭＩ Ｉ／Ｆクロック信号CLKの１周期よりも短い時間だけSUSPENDM＝０になった等の場合はＯＲ回路５０の出力データSUSR＝１のまま維持される。
【００４７】
一方、比較器５４から出力される比較結果データCGENは、時刻Ｔ1に３ビットレジスタ２８に保持されているデータCLKREG[2:0]がCLKREG[2:0]＝(２)Ｈ＝(010)ＢからCLKREG[2:0]＝(３)Ｈ＝(011)Ｂへ変化することでCGEN＝０からCGEN＝１へ変化し、時刻Ｔ3にデータCLKREG[2:0]がCLKREG[2:0]＝(７)Ｈ＝(111)ＢからCLKREG[2:0]＝(０)Ｈ＝(000)Ｂへ変化することでCGEN＝１からCGEN＝０へ変化する。このとき、ＯＲ回路５０からＯＲ回路５２に入力されるデータSUSRは時刻Ｔ4にSUSR＝１からSUSR＝０へ変化する一方、比較器５４からＯＲ回路５２に入力される比較結果データCGENは時刻Ｔ4にCGEN＝０からCGEN＝１へ変化するので、ＯＲ回路５２の出力データSUSIは、時刻Ｔ4の基準クロック信号CLK480の立ち上がり直後にハザードが発生する可能性があるもののSUSI＝１のまま継続する。
【００４８】
時刻Ｔ6になると、ＯＲ回路５０の出力データSUSR＝０のままで、比較器５４から出力される比較結果データCGENがCGEN＝１からCGEN＝０へ変化することで、ＯＲ回路５２の出力データSUSIがSUSI＝１からSUSI＝０へ変化する。また、フリップフロップ回路５６は時刻Ｔ7でＯＲ回路５２の出力データSUSIをラッチし、フリップフロップ回路５６の出力データSUSP＝０となる。そして、時刻Ｔ8の基準クロック信号CLK480の立上り直前では、３ビットレジスタ２８の出力端子DOからデータCLKREG[2:0]＝(０)Ｈ＝(000)Ｂが出力されているため、３ビットレジスタ２８の入力端子DIには(１)Ｈ＝(001)Ｂが入力されるものの、フリップフロップ回路５６の出力データSUSP＝０となっており、３ビットレジスタ２８の非同期リセット端子ARN＝１が入力されることから、データCLKREG[2:0]＝(０)Ｈ＝(000)Ｂにリセットされる。
【００４９】
ＵＴＭＩサスペンド信号SUSPENDMがSUSPENDM＝０で継続している間、シフトレジスタ３２からの出力データSUSPR[7:0]＝(００)Ｈ＝(00000000)Ｂとのまま維持され、ＯＲ回路５０の出力データSUSRはSUSR＝０のまま維持される。また、データCLKREG[2:0]＝(０)Ｈ＝(000)Ｂに一旦リセットされると、データCLKREG[2:0]のカウントアップが再開される迄の間、比較器５４から出力される比較結果データCGENもCGEN＝０のまま維持されるので、以降の期間ではデータCLKREG[2:0]＝(０)Ｈ＝(000)Ｂのリセット状態が継続され、データCLKREG[2]＝(0)Ｂのまま維持される。従って、ＵＴＭＩ Ｉ／Ｆクロック信号CLKがCLK＝０からCLK＝１へ変化することが停止され、ＵＴＭＩ Ｉ／Ｆクロック信号CLKの出力が停止される。
【００５０】
また、時刻Ｔ9の直前にレジューム信号RESUME＝１がセットされ、ＵＴＭＩサスペンド信号SUSPENDM＝１にデアサートされると、時刻Ｔ10の基準クロック信号CLK480の立上り時に、シフトレジスタ３２のフリップフロップ回路３４によってＵＴＭＩサスペンド信号SUSPENDM＝１がラッチされ、これに伴いシフトレジスタ３２の出力データSUSPR[7:0]＝(０１)Ｈ＝(00000001)Ｂとなる。これにより、ＯＲ回路５０の出力データSUSPR＝１となるため、ＯＲ回路５２の出力データSUSI＝１となる。そして時刻Ｔ11の基準クロック信号CLK480の立上り時にフリップフロップ回路５６がＯＲ回路５２の出力データSUSIをラッチし、フリップフロップ回路５６の出力データSUSP＝１となり、３ビットレジスタ２８の非同期リセット端子ARN＝０が入力されることでデータCLKREG[2:0]のリセットが解除される。これにより、以降の期間では、基準クロック信号CLK480の各周期の立上り毎にデータCLKREG[2:0]がカウントアップされることで、ＵＴＭＩ Ｉ／Ｆクロック信号CLKの出力が再開される。
【００５１】
上述したように、本実施形態に係るＵＳＢ通信制御回路１０は、ＵＴＭＩサスペンド信号SUSPENDMがSUSPENDM＝１からSUSPENDM＝０へ変化してからＵＴＭＩ Ｉ／Ｆクロック信号CLKの１周期以上の時間が経過し、かつＵＴＭＩ Ｉ／Ｆクロック信号CLK＝０の期間に、３ビットレジスタ２８に保持されているデータCLKREG[2:0]をリセットすることで、ＵＴＭＩ Ｉ／Ｆクロック信号CLKの出力を停止させるので、ＵＴＭＩサスペンド信号SUSPENDMがSUSPENDM＝１からSUSPENDM＝０へ変化したタイミングや、ＵＴＭＩサスペンド信号SUSPENDMにグリッチやハザードが重畳されているか否かに拘わらず、ＵＴＭＩ Ｉ／Ｆクロック信号CLKにはグリッチやハザード、デューティの崩れが発生することを防止することができる。また、ＵＴＭＩサスペンド信号SUSPENDMにグリッチやハザードが重畳されていても影響を受けないので、ＵＴＭＩサスペンド信号SUSPENDMを生成・出力する回路(ＵＳＢ ＰＨＹ)の設計が容易になる。
【００５２】
また従来、ＵＴＭＩ Ｉ／Ｆ規格に従って多くのＵＳＢ ＰＨＹ、ＵＳＢ ＬＩＮＫ回路が開発されているが、ＵＴＭＩの規格では、サスペンドによるＵＴＭＩクロック停止・再開時のクロックハザード・グリッチ防止に対する明確な規定がないため、ＵＴＭＩの規格に準拠したＵＳＢ ＬＩＮＫとＵＳＢ ＰＨＹを単に接続してＵＳＢ通信制御回路を構成しても、ＵＴＭＩ Ｉ／Ｆクロック信号CLKにグリッチやハザード、デューティの崩れが発生することが多いという問題がある。これに対して本実施形態に係るＵＳＢ通信制御回路１０では、本発明に係るクロック制御回路としての機能(ＵＴＭＩ Ｉ／Ｆクロック信号CLKにグリッチやハザード、デューティの崩れが発生することを防止するための機能)をＵＳＢ ＰＨＹ１４に集約させて搭載しており、このＵＳＢ ＰＨＹ１４を任意のＵＳＢ ＬＩＮＫと組み合わせてＵＳＢ通信制御回路を構成することで、ＵＴＭＩ Ｉ／Ｆクロック信号CLKにグリッチやハザード、デューティの崩れが発生することを防止できるＵＳＢ通信制御回路を容易に得ることができる。
【００５３】
ＵＳＢ ＰＨＹは、半導体集積回路の入出力回路やアナログ回路、ＵＳＢ２.０の規格における通信速度(最大480Mbps)に対応するための480MHzの高速論理回路等で構成されており、低速論理回路に比べて設計難度が高いために、一旦設計されたＵＳＢ ＰＨＹはハードマクロ化（回路、およびレイアウトが固定されたマクロ・ブロック化）され、設計資産として再利用されることが一般的である。このため、上記のようにＵＴＭＩ Ｉ／Ｆクロック信号CLKにグリッチやハザード、デューティの崩れが発生することを防止するための機能をＵＳＢ ＰＨＹに集約させて搭載しておき、新たなＵＳＢ通信制御回路を設計する際には上記のＵＳＢ ＰＨＹを再利用することで、動作安定度の高いＵＳＢ通信制御回路の設計の大幅な省力化を実現することができる。
【００５４】
なお、上記では基準クロック信号CLK480の周波数を３ビットレジスタ２８及び＋１演算回路３０から成るカウンタによって１／８に分周することで、ＵＴＭＩ Ｉ／Ｆクロック信号CLKを生成・出力する態様を説明したが、分周比やレジスタ２８のビット数は上記に限られるものではなく、必要に応じて任意の値を適用可能である。例えばレジスタ２８のビット数を４ビットとし、レジスタ２８に保持されている４ビットのデータCLKREG[3:0]のうちの最上位ビットのデータCLKREG[3]を目的のクロック信号として出力するように構成することで、基準クロック信号の周波数を１／１６に分周した30MHzのクロック信号を得ることができる。
【００５５】
また、上記のようにレジスタ２８のビット数を変化させた場合、比較器５４の入力端子BIを介して入力する固定値も変更する必要があるが、この場合、請求項４に記載したように、レジスタ２８のビット数(カウンタのカウント値のビット数)をｍとしたときに、固定値を０〜２ｍ−１／２の範囲内の値とすれば、目的のクロック信号のレベルが、出力停止期間中の目的のクロック信号のレベルに相当する第１レベル(本実施形態ではCLK＝０のローレベル)となっている期間を検知することができる。また、上記の第１レベルはCLK＝１のハイレベルであってもよく、この場合は、例えば固定値を(２ｍ−１／２)＋１〜２ｍ−１(或いは、レジスタ２８に入力するリセット信号のレベルの変化が基準クロック信号の１周期分遅れることを考慮して２ｍ−２としてもよい)の範囲内の値とすれば、目的のクロック信号がハイレベルとなっている期間を検知することができる。
【００５６】
また、上記では３ビットレジスタ２８から出力されたデータCLKREG[2:0]を比較器５４で固定値と比較することで、目的のクロック信号のレベルが第１レベルとなっている期間を検知する態様を説明したが、本発明はこれに限定されるものではなく、例えば目的のクロック信号をＯＲ回路等の論理演算回路に直接入力する等により、目的のクロック信号のレベルが第１レベルとなっている期間を検知する構成を採用することも可能である。
【００５７】
更に、上記ではクロック信号の出力停止が指示され、かつクロック信号の出力停止が指示されている状態が一定時間以上継続したことを、シフトレジスタ３２及びＯＲ回路５０によって検知する構成を説明したが、本発明はこの構成に限定されるものではなく、例えば遅延回路等を用いて同等の機能を実現することも可能である。
【００５８】
また、上記ではクロック出力手段として、ＰＬＬ２６によって基準クロック信号CLK480を生成・出力し、この基準クロック信号CLK480の周波数を３ビットレジスタ２８及び＋１演算回路３０から成るカウンタによって１／８に分周することで、ＵＴＭＩ Ｉ／Ｆクロック信号CLKを生成・出力する構成を説明したが、本発明はこの構成に限定されるものではなく、例えばＰＬＬ等によって目的のクロック信号を直接生成・出力するようにしてもよい。この場合、クロック信号の出力停止は、クロック信号を生成・出力するＰＬＬ等の回路に対して出力停止(或いは動作停止)を指示することで実現することができる。
【００５９】
また、上記ではＵＳＢに準拠した通信を行うＵＳＢ通信制御回路１０の一部を構成するＵＳＢ ＰＨＹ１４を本発明に係るクロック制御回路として機能させる態様を説明したが、本発明はこれに限定されるものではなく、一定周期のクロック信号を生成・出力すると共に、所定の条件を満たした場合にクロック信号の出力を停止する任意の回路に適用可能である。
【図面の簡単な説明】
【００６０】
【図１】本実施形態に係るＵＳＢ通信制御回路の概略構成を示す回路図である。
【図２】図１の通信制御回路の動作を示すタイミングチャートである。
【図３】従来のＵＳＢ通信制御回路の概略構成の一例を示す回路図である。
【図４】従来のＵＳＢ通信制御回路の概略構成の他の例を示す回路図である。
【図５】図３の通信制御回路の動作を示すタイミングチャートである。
【図６】図３の通信制御回路の動作を示すタイミングチャートである。
【符号の説明】
【００６１】
１０  ＵＳＢ通信制御回路
１４  ＵＳＢ ＰＨＹ
２６  ＰＬＬ
２８  レジスタ
３０  ＋１演算回路
３２  シフトレジスタ
５０  ＯＲ回路
５２  ＯＲ回路
５４  比較器
５６  フリップフロップ回路
【図１】
2010130315.tif 000003
【図２】
2010130315.tif 000004
【図３】
2010130315.tif 000005
【図４】
2010130315.tif 000006
【図５】
2010130315.tif 000007
【図６】
2010130315.tif 000008