(57)【要約】      （修正有）【課題】複数の入力クロックを、情報処理装置の外部もしくは内部で生成したクロック切替信号によって、装置の初期化をすることなく切替え可能で、クロック切替え時に、ハザードを生じないクロック切替え回路を提供する。【解決手段】少なくとも２以上の入力クロックから、クロック選択入力信号に基づき任意の1つのクロックを出力クロックとして選択し出力するクロック切替回路において、前記出力クロックに同期して前記クロック選択入力信号を取り込む選択信号記憶部と、前記選択信号記憶部の出力をデコードして出力クロックを特定するための切替信号生成部と、前記入力クロック毎に設けられ、前期切替信号生成部の出力を該入力クロックに同期して取り込み該入力クロックを前記出力クロックとして出力するための許可信号を出力する切替許可部とにより、出力クロックを生成するクロック選択手段を持つ。【選択図】図１
2005251112.tif 000002
【特許請求の範囲】
【請求項１】
複数の入力クロックから、クロック選択入力信号に基づき任意の1つのクロックを出力クロックとして選択し出力するクロック切替回路において、
前記出力クロックに同期して前記クロック選択入力信号を取り込む選択信号記憶部と、
前記選択信号記憶部の出力をデコードして出力クロックを特定するための切替信号生成部と、
前記入力クロック毎に設けられ、前期切替信号生成部の出力を該入力クロックに同期して取り込み該入力クロックを前記出力クロックとして出力するための許可信号を出力する切替許可部と、
複数の前記切替許可部の出力と前記切替許可部毎に対応した複数の入力クロックとの組から出力クロックを生成するクロック選択手段を持つ事、
を特徴とする、クロック切替回路。
【請求項２】
前記切替信号生成部は、他の切替信号生成部の許可信号が入力され、これら他の切替信号生成部の許可信号が存在する場合には該切替信号生成部の許可信号の出力を停止する事を特徴とする請求項１記載のクロック切替回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、映像装置、コンピュータ等のクロックを用いる情報処理装置等におけるクロック切替回路であって、切替対象のクロックは、複数の同期若しくは非同期の、さらに任意のデューティ比であり、情報処理装置の外部もしくは内部で生成したクロック切替信号によって、任意の時間、任意のタイミングで、装置の初期化をすることなく切替え可能で、クロック切替時に、ハザードを生じないクロック切替回路で、さらには、簡単に選択対象クロックの数を増やすことが可能なクロック切替回路に関する。
【背景技術】
【０００２】
従来のクロック切替回路は、任意の入力クロックの切替えを、システムのリセットのタイミングで行う事が簡便な実現方法であった。しかし、システム起動中の切替えに対する要望が強く、多くの方式が提案されている。クロックのデューティー比が等しいクロックに関するもの（特許文献１参照）や、周波数が等しく任意の位相誤差を許容するものに関する(特許文献２参照)、入力クロックのデューティ比や周波数、位相差等不問な２入力の切替は可能であるが、３以上の入力には簡単に対応出来ないもの(特許文献３参照)等が存在する。
【０００３】
【特許文献１】特開平５−２６８２０５
【特許文献２】特開２００３−２０８４００
【特許文献３】特開平５−２６８０２２
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の方式の場合、クロックゲート手段の出力を、遅延手段の入力として用いているため、入力クロック数は２以下で且つデューティ比が等しいという条件が付く。
【０００５】
また、図３は従来技術の一例としての(特許文献２参照)クロック切替回路の、ブロック図である。図３の切替回路では、周波数が等しくて任意の位相差のクロックであれば、任意の入力クロックから選択が可能である。クロック切替調整部３０２への切替タイミング生成部３０１からの入力は、論理和から生成される。従って、入力クロックの周波数が異なっている場合、入力クロックのレベルが全てＬＯＷまたはＨＩＧＨとなる期間は、クロック切替調整部の入力の要求仕様に対して、何ら保証されるものではない。また、位相差は任意ではあるが、入力クロック数が多くなった場合、全ての入力クロックのレベルがＬＯＷまたはＨＩＧＨとなる期間は、やはり保証されない。そのため、周波数が等しく、位相差のみが異なり、且つ入力クロック数が少ないか、または位相差が小さい入力クロックでのみ良好な切替が可能となる。
【０００６】
一方、特許文献３における切替方式は、前記特許文献１および特許文献２の条件は改善されている。つまり２入力のクロック切替えにおいては、デューティ比や周波数、位相などの条件が付くことなく、任意のクロックの切替に関して、良好な回路が提供される。しかし、選択対象のクロックが３、４と増えた場合の実現手段が提示されていない。
【０００７】
従って、３以上の選択クロックから任意のひとつを出力とするためには、例えば一度システムをリセットし、その間に切替えたり、また、リセットするまでもないが、一定期間クロック入力を全てマスクする事で切替える必要があった。
【０００８】
本発明は、上記課題に鑑みなされたものであり、その目的は、複数の同期若しくは非同期の、さらに任意のデューティ比の入力クロックを、情報処理装置の外部もしくは内部で生成したクロック切替信号によって、任意の時間、任意のタイミングで、装置の初期化をすることなく切替え可能で、クロック切替え時に、ハザードを生じないクロック切替回路を提供することにある。
【課題を解決するための手段】
【０００９】
上記課題を解決するため、本発明に係るクロック切替回路は、複数の入力クロックから、クロック選択入力信号に基づき任意の1つのクロックを出力クロックとして選択し出力するクロック切替回路において、
前記出力クロックに同期して前記クロック選択入力信号を取り込む選択信号記憶部と、
前記選択信号記憶部の出力をデコードして出力クロックを特定するための切替信号生成部と、
前記入力クロック毎に設けられ、前期切替信号生成部の出力を該入力クロックに同期して取り込み該入力クロックを前記出力クロックとして出力するための許可信号を出力する切替許可部と、
複数の前記切替許可部の出力と前記切替許可部毎に対応した複数の入力クロックとの組から出力クロックを生成するクロック選択手段を持つ。
【００１０】
上記クロック切替回路では、前記切替信号生成部は、他の切替信号生成部の許可信号が入力され、これら他の切替信号生成部の許可信号が存在する場合には該切替信号生成部の許可信号の出力を停止する。
【発明の効果】
【００１１】
上述したように本発明のクロック切替回路は、同期、非同期またデューティ比等のクロックに対する制約を何ら設けることなく、切替時にハザードを生じる事が無く、さらには選択対象の入力クロックの数を、簡単に３以上にすることが可能なクロック切替回路を提供することができる。
【発明を実施するための最良の形態】
【００１２】
[実施例１]
以下、本発明の一実施例を、添付の図面を用いて詳細に説明する。
【００１３】
図１は、本発明の一実施例に係るクロック切替回路のブロック図である。
【００１４】
クロック切替回路には、選択信号１０９が入力され、前記選択信号１０９は、選択信号記憶部１００へ入力される。前記選択信号記憶部１００の出力１１０は、切替信号生成部１０１へ入力される。前記切替信号生成部１０１は、位相、周波数の異なるクロック入力、ＣＬＫ０、ＣＬＫ１、ＣＬＫ２、ＣＬＫ３の外部クロック入力から任意の一つを選択するための選択信号１０３ａ、１０３ｂ、１０３ｃ、１０３ｄを出力する。前記切替信号生成部１０１から出力された選択信号１０３ａ〜１０３ｄは、該当する入力クロックの切替許可信号を生成する切替許可部１０２ａ、１０２ｂ、１０２ｃ、１０２ｄの入力となる。前記切替許可部１０２ａ〜１０２ｄには、前記選択信号１０３ａ〜１０３ｄおよび、該当クロックＣＬＫ０〜ＣＬＫ３が入力される。そして、切替許可信号１０４ａ、１０４ｂ、１０４ｃ、１０４ｄを生成する。一方、前記切替許可部には、他系のクロックの切替許可部のクロック許可信号が入力される。前記切替許可部１０２ａ〜１０２ｄの出力である前記切替許可信号１０４ａ〜１０４ｄは、該当クロックＣＬＫ０〜ＣＬＫ３と共に、クロック選択部１１１に入力され、クロック出力として、ＣＬＫＯＵＴが出力される。クロック出力ＣＬＫＯＵＴはインバータ１０８により反転され、前記選択信号記憶部１００の前記選択信号取り込みクロックとして供給される。
【００１５】
本実施例では、前記選択信号１０９を、前記選択信号記憶部１００に記憶してから、前記切替信号生成部１０１に入力しているが、これを逆にして、前記選択信号１０９を、前記切替信号生成部１０１に入力して、前記切替信号生成部１０１の出力である、前記選択信号１０３ａ〜１０３ｄを、選択信号記憶部１００に入力しても良い。ただしこの場合は、前記選択信号記憶部１００のビット数は、４ビットとなる。
【００１６】
本実施例では、前記選択信号１０９は２ビットであり、前記選択信号記憶部１００も２ビットである。前記選択信号生成部１００は、Ｄタイプのフリップフロップなどで構成することが出来る。外部から与えられた前記選択信号１０９は、前記ＣＬＫＯＵＴの立下りのタイミングで前記選択信号記憶部に、取り込まれ直ちに前記切替信号生成部１０１へ出力される。
【００１７】
前記切替信号生成部１０１は、２ビットの入力から４ビットの出力を生成するデコーダ回路である。前記切替信号生成部１０１は、前記選択信号生成部１００の出力１１０の２ビットの組み合わせにより、前記選択信号１０３ａ〜１０３ｄのうちの唯一の信号をアクティブなレベルへ変化させる。（なお、本実施例ではＨＩＧＨレベルの状態にある場合をアクティブなレベルとする）
前記クロック選択部１１１は、前記ＣＬＫ０〜ＣＬＫ３と、前記切替許可部１０２ａ〜１０２ｄの出力である前記切替許可信号１０４ａ〜１０４ｄを入力とし、前記ＣＬＫ０と前記切替許可信号１０４ａが２入力ＡＮＤゲート１０５ａに入力される。同様に、前記ＣＬＫ１と前記切替許可信号１０４ｂ、前記ＣＬＫ２と前記切替許可信号１０４ｃ、前記ＣＬＫ３と前記切替許可信号１０４ｄが、それぞれ２入力ＡＮＤゲート１０５ｂ、１０５ｃ、１０５ｄへと入力される。前記２入力ＡＮＤゲート１０５ａ〜１０５ｄは、４入力のＯＲゲート１０６へ入力され、選択回路を形成する。ここでは、２入力ＮＡＤゲートと４入力ＯＲゲートを用いているが、２入力ＮＡＮＤゲートと４入力のＮＡＮＤゲート(つまり負入力のＯＲゲート)を用いてもよい。
【００１８】
また、前記選択信号記憶部１００は、本実施利では２ビットとしてあるが、１ビットでも、３ビット以上でも良く、１ビット以上の任意のビットに設定できる。さらに、前記切替信号生成部１０１は、前記選択信号記憶部１００のビット巾に合わせた入力とすれば良い。すなわち、前記選択信号記憶部１００が１ビットの場合は１ビットで出力が２本、前記選択信号記憶部１００が２ビットの場合２ビットで出力が４本、そして前記選択信号記憶部１００が３ビットの場合は３ビットの入力で、出力は８本となる。
【００１９】
図４は、前記切替信号生成部１０１の内部構成回路図である。本実施例では、一般的な２ビットのデコーダ回路としてある。
【００２０】
前記選択信号記憶部１００の２ビットの出力１１０を、それぞれｉｎ１、ｉｎ２とする。ｉｎ１は、インバータ４００に入力され、ｉｎ２はインバータ４０１に入力されて、それぞれ反転出力が生成される。ｉｎ１、ｉｎ２およびそれぞれの反転出力の組み合わせが、２入力のアンドゲート４０２〜４０５に入力されて、選択信号１０３ａ〜１０３ｄが生成される。
【００２１】
図２は、前記切替許可部１０２ａおよび１０２ｂ、１０２ｃ、１０２ｄの内部回路図である。ここでは、ＣＬＫ０の選択を行う、前記切替許可部１０２ａについて説明を行う。なお、前記切替許可部１０２ｂ〜１０２ｄの内部についてもまったく同じことが言えるため、ここでは説明を省略する。
【００２２】
２入力アンドゲート２０２には、ＤＥＣｎ信号が接続されているが、これは図１中の前記選択信号１０３ａとなる。前記２入力アンドゲート２０２のもう一方の入力には、負入力の３入力アンドゲート２０１の出力が接続される。前記３入力アンドゲート２０１は、負入力であるので、三つの入力がすべてＬＯＷの時に、出力がＨＩＧＨとなる。これは、３入力のＮＯＲと同じ機能である。前記３入力アンドゲート２０１の入力は、ＣＬＫＥＮｉ、ＣＬＫＥＮｊ、ＣＬＫＥＮｋである。これら三つの入力は、他系のクロックを許可するための前記切替許可部１０２ｂ〜１０２ｄの出力１０４ｂ〜１０４ｄである。前記２入力アンドゲート２０２の出力は、Ｄフリップフロップ２００のＤ入力となる。前記Ｄフリップフロップ２００のクロック入力は、ＣＬＫｎ、すなわちＣＬＫ０をインバータ２０３で反転したものである。つまり、ＣＬＫ０の立下りに同期してＣＬＫＥＮｎを出力する。このＣＬＫＥＮｎは前記切替許可信号１０４ａとなる。
【００２３】
次に、本発明のクロック切替回路の動作を、図５のタイミングチャートを使って説明する。
【００２４】
図５のタイミングチャートは、任意の時間で、前記選択信号１０９が“００ｂ”であり、ＣＬＫ０が選択されており、前記ＣＬＫＯＵＴから出力されている。
【００２５】
この状態において、時間Ｔｃに、前記選択信号１０９が“０１ｂ”に切替わる。前記時間Ｔｃで切替わった前記選択信号１０９は、前記ＣＬＫＯＵＴの立下りのタイミングである、時間Ｔ０で、前記選択信号記憶部１００に取り込まれる。
【００２６】
前記選択信号記憶部１００の出力１１０は、前記切替信号生成部１０１に入力され、デコードされることで、これまでＨＩＧＨレベルであった前記選択信号１０３ａがＬＯＷレベルとなり、これまでＬＯＷレベルであった前記選択信号１０３ｂがＨＩＧＨレベルとなる。
【００２７】
この時、他の前記選択信号１０３ｃ、１０３ｄは、ＬＯＷレベルのままである。
【００２８】
ＬＯＷレベルとなった前記選択信号１０３ａは、前記選択信号１０２ａに作用し、時間Ｔ１で、前記選択信号１０２ａの出力である、前記切替許可信号１０４ａがＬＯＷレベルとなる。
【００２９】
前記時間Ｔ１で、前記切替許可信号１０４ａがＬＯＷレベルとなることで、図２中の前記３入力アンドゲート２０１の出力がＨＩＧＨレベルとなる。これにより、図２中の前記２入力アンドゲート２０２の一入力がＨＩＧＨレベルとなる。
【００３０】
一方、図２中の前記２入力アンドゲート２０２の他方の入力は、前記時間Ｔ０以降ＨＩＧＨレベルとなっている。従って、図２中の前記２入力アンドゲート２０２の出力はＨＩＧＨレベルとなる。
【００３１】
従って、図２中の前記Ｄフリップフロップ２００は、図２中の前記インバータ２０３により、前記ＣＬＫ１の立下りであるところの、時間Ｔ２でＨＩＧＨレベルとなる。
【００３２】
この結果、前記時間Ｔ２で、前記切替許可信号１０４ｂがＨＩＧＨレベルとなる。
【００３３】
前記許可信号１０４ｂがＨＩＧＨレベルとなることで、前記クロック選択部１１１内部の２入力アンドゲート１０５ｂの一方の入力がＨＩＧＨとなり、他方の入力である前記ＣＬＫ１が、前記２入力アンドゲート１０５ｂの出力となる。
【００３４】
ここで、前記切替信号生成部１０１の出力１０３ａ〜１０３ｄは、唯一の出力のみがＨＩＧＨになっているため、前記クロック選択部１１１内部の、他の２入力アンドゲート１０５ａ、１０５ｃおよび１０５ｄの一方の入力がＬＯＷレベルである。よって、前記２入力アンドゲート１０５ａ、１０５ｃおよび１０５ｄの出力はＬＯＷレベルとなる。
【００３５】
時間Ｔｃ２で、前記選択信号１０９が、“０１ｂ”から“１１ｂ”に切替わった場合も、これまでの説明と同様に、時間Ｔ３で前記選択信号記憶部１００に取込まれ、時間Ｔ４でこれまでの出力だった前記ＣＬＫ１の前記許可信号１０４ｂがＬＯＷレベルになり、その次の前記ＣＬＫ３の立下りである、時間Ｔ５で、前記ＣＬＫ３の前記許可信号１０４ｄがＨＩＧＨレベルとなる。
【００３６】
従って、時間Ｔｃ３で、前記ＣＬＫＯＵＴが前記ＣＬＫ３に切替わることになる。
【００３７】
本発明のクロック切替回路では、前記ＣＬＫ０の立下りである、前記時間Ｔ１で、前記ＣＬＫ０の出力が禁止される。この時点では次に切替わるべきクロックの、前記切替許可信号１０４ｂは、まだＨＩＧＨレベルにはなっていない。次に切替わるべき前記ＣＬＫ１の立下りである、前記時間Ｔ２で前記切替許可信号１０４ｂがＨＩＧＨレベルになるまで全てのクロックの出力が禁止される。以上の作用により、ハザードの無い良好なクロックの切替が可能となる。
【００３８】
クロック切替回路についてのみ説明したが、複数のクロックを切換えて使用するマイコンあるいはCPUを使用する電子機器全般に本発明を適用することができる。
【図面の簡単な説明】
【００３９】
【図１】本発明の一実施形態を説明するブロック図
【図２】切替許可部の一実施例の内部ブロック図
【図３】従来技術の一例のブロック図
【図４】切替信号生成部の一実施例の内部ブロック図
【図５】本発明の動作を説明するタイミングチャート
【符号の説明】
【００４０】
１００・・・選択信号記憶部、１０１・・・切替信号生成部、１０２ａ〜１０２ｄ・・・切替許可部、１０３ａ〜１０３ｃ・・・選択信号、１０４ａ〜１０４ｄ・・・切替許可信号、１０５ａ〜１０５ｄ・・・２入力アンドゲート、１０６・・・４入力オアゲート、１０７ａ〜１０７ｄ・・・ＣＬＫ０〜ＣＬＫ３、１０８・・・インバータ、１０９・・・選択信号、１１０選択信号記憶部出力、１１１・・・クロック選択部、２００・・・Ｄフリップフロップ、２０１・・・３入力アンドゲート、２０２・・・２入力アンドゲート、２０３・・・インバータ、３００・・・クロック選択部、３０１・・・切替タイミング生成部、３０２・・・クロック切替調整部、４００〜４０１・・・インバータ、４０２〜４０５・・・２入力アンドゲート
【図１】
2005251112.tif 000003
【図２】
2005251112.tif 000004
【図３】
2005251112.tif 000005
【図４】
2005251112.tif 000006
【図５】
2005251112.tif 000007