(57)【要約】【課題】  同期化回路の無駄なスイッチング動作を回避し、消費電力を低減する。【解決手段】  同期化レジスタ２０および３０には、受信レジスタ１０が取り込んだデータの下位８ビットデータＲＤ０〜ＲＤ７および上位８ビットデータＲＤ８〜ＲＤ１５が各々与えられる。クロックゲーティング制御回路４０は、同期化レジスタ２０の入力データおよび出力データの不一致が発生したときのみ同期化クロックＣＬＫ２ａを同期化レジスタ２０に与え、クロックゲーティング制御回路５０は、ビット幅指定信号ＢＴ８がＬレベルであり、同期化レジスタ３０の入力データおよび出力データの不一致が発生したときのみ同期化クロックＣＬＫ２ｂを同期化レジスタ３０に与える。【選択図】図１
2008134926.tif 000002
【特許請求の範囲】
【請求項１】
送信側装置から書き込みクロックおよびデータを受信し、前記データを前記書き込みクロックにより取り込んで出力する受信レジスタと、
前記受信レジスタの出力データが入力データとして与えられ、この入力データを内部クロックに同期した同期化クロックにより取り込み、前記内部クロックに同期したデータとして出力する同期化レジスタと、
前記同期化レジスタの入力データと出力データとを比較する比較手段と、
前記同期化レジスタの入力データと出力データとが一致しないことを前記比較手段の比較結果が示しているとき、前記内部クロックを通過させ、前記同期化クロックとして前記同期化レジスタに与えるクロックゲーティング制御手段と
を具備することを特徴とする同期化回路。
【請求項２】
送信側装置から書き込みクロックおよびデータを受信し、前記データを前記書き込みクロックにより取り込んで出力する受信レジスタと、
前記受信レジスタの出力データを複数に分割した各データが入力データとして各々与えられるとともに、内部クロックに同期した同期化クロックが各々与えられ、各々に与えられる入力データを各々に与えられる同期化クロックにより取り込み、前記内部クロックに同期したデータとして各々出力する複数の同期化レジスタと、
前記複数の同期化レジスタの各々について入力データと出力データとを比較する比較手段と、
前記複数の同期化レジスタの各々に対応した複数のクロックゲーティング制御回路であって、各々に対応した同期化レジスタの入力データと出力データとが一致しないことを前記比較手段の比較結果が示しているとき、前記内部クロックを通過させ、各々に対応した同期化レジスタに同期化クロックとして与える複数のクロックゲーティング制御回路と
を具備することを特徴とする同期化回路。
【請求項３】
前記複数の同期化レジスタは、各々少なくとも２段のレジスタからなる同期化シフトレジスタであり、前記複数のクロックゲーティング制御回路は、各々に対応した同期化シフトレジスタの入力データと出力データとが一致しないことを前記比較手段の比較結果が示しているとき、前記内部クロックを少なくとも２個通過させ、各々に対応した同期化シフトレジスタに同期化クロックとして与えることを特徴とする請求項２に記載の同期化回路。
【請求項４】
前記送信側装置から与えられるデータの有効部分を示す有効性信号を受け取り、前記複数の同期化レジスタのうちの一部の同期化レジスタに与えられる入力データが無効であることを前記有効性信号が示しているときに、前記比較手段の比較結果に拘わらず、当該一部の同期化レジスタに対応したクロックゲーティング制御回路が同期化クロックを出力するのを阻止する同期化クロック強制停止制御部を具備することを特徴とする請求項２または３に記載の同期化回路。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、非同期インターフェースに用いられる同期化回路に関する。
【背景技術】
【０００２】
同期が取れていない送信側装置と受信側装置との間でデータの受け渡しを行う場合、受信側装置に同期化回路を設けるのが一般的である。この同期化回路は、送信側装置から与えられるデータを受信側装置の内部クロックに同期化させて出力する回路である。この種の同期化回路は、基本的には、受信レジスタと同期化レジスタにより構成されている。ここで、受信レジスタは、送信側装置から書き込みクロックおよびデータを受信し、受信したデータを書き込みクロックにより取り込んで出力する。同期化レジスタは、受信レジスタの出力データを内部クロックにより取り込み、内部クロックに同期したデータとして出力する。
【特許文献１】特開平１１−９６１１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、上述した従来の同期化回路においては、同期化レジスタに内部クロックが常時供給されるため、受信レジスタに新規なデータが書き込まれず、同期化レジスタを動作させる必要がない期間においても同期化レジスタがスイッチング動作し、電力が無駄に消費されるという問題があった。
【０００４】
この発明は、以上説明した事情に鑑みてなされたものであり、同期化レジスタの無駄なスイッチング動作を回避し、消費電力を低減することができる同期化回路を提供することを目的としている。
【課題を解決するための手段】
【０００５】
この発明は、送信側装置から書き込みクロックおよびデータを受信し、前記データを前記書き込みクロックにより取り込んで出力する受信レジスタと、前記受信レジスタの出力データが入力データとして与えられ、この入力データを内部クロックに同期した同期化クロックにより取り込み、前記内部クロックに同期したデータとして出力する同期化レジスタと、前記同期化レジスタの入力データと出力データとを比較する比較手段と、前記同期化レジスタの入力データと出力データとが一致しないことを前記比較手段の比較結果が示しているとき、前記内部クロックを通過させ、前記同期化クロックとして前記同期化レジスタに与えるクロックゲーティング制御手段とを具備することを特徴とする同期化回路を提供する。
かかる発明によれば、クロックゲーティング制御手段は、受信レジスタに新規なデータが書き込まれ、同期化レジスタの入力データと出力データに不一致が生じた場合に限り、内部クロックを同期化クロックとして同期化レジスタに与え、受信レジスタの出力データを同期化レジスタに書き込む。従って、同期化レジスタの無駄なスイッチング動作を回避し、消費電力を低減することができる。
【発明を実施するための最良の形態】
【０００６】
以下、図面を参照し、この発明の実施の形態を説明する。
＜第１実施形態＞
図１はこの発明の第１実施形態である同期化回路の構成を示すブロック図である。この同期化回路は、ある半導体集積回路に設けられた回路であり、図示しない外部の送信側装置から送信されてくる１６ビットの入力データＤ０〜Ｄ１５と書き込みクロックＣＬＫ１を受け取り、受け取ったデータを内部クロックＣＬＫ２に同期化させ、半導体集積回路の内部回路に供給する回路である。ここで、書き込みクロックＣＬＫ１は、内部クロックＣＬＫ２とは非同期な送信側装置の内部クロックに同期した信号であり、入力データＤ０〜Ｄ１５はこの書き込みクロックＣＬＫ１に同期して送信側装置から送信される。
【０００７】
図１において、受信レジスタ１０は、１６ビットのレジスタであり、書き込みクロックＣＬＫ１の立ち上がり時点における入力データＤ０〜Ｄ１５を取り込んで保持し、データＲＤ０〜ＲＤ１５として出力する。受信レジスタ１０の後段には、同期化レジスタ２０および３０が設けられている。同期化レジスタ２０は、８ビットのレジスタであり、受信レジスタ１０から出力される１６ビットのデータのうちの下位８ビットのデータＲＤ０〜ＲＤ７を同期化クロックＣＬＫ２ａの立ち上がりにより取り込み、出力データＳＤ０〜ＳＤ７として出力する。同期化クロックＣＬＫ２ａは、この半導体集積回路の内部クロックＣＬＫ２に同期したクロックであり、クロックゲーティング制御回路４０により発生される。同期化レジスタ３０は、８ビットのレジスタであり、受信レジスタ１０から出力される１６ビットのデータのうちの上位８ビットのデータＲＤ８〜ＲＤ１５を同期化クロックＣＬＫ２ｂの立ち上がりにより取り込み、出力データＳＤ８〜ＳＤ１５として出力する。同期化クロックＣＬＫ２ｂは、内部クロックＣＬＫ２に同期したクロックであり、クロックゲーティング制御回路５０により発生される。同期化レジスタ２０の出力データＳＤ０〜ＳＤ７および同期化レジスタ３０の出力データＳＤ８〜ＳＤ１５は、内部クロックＣＬＫ２に同期したデータとして半導体集積回路の内部回路に供給される。
【０００８】
比較回路６０および７０は、同期化レジスタ２０および３０の入力データＲＤ０〜ＲＤ１５と出力データＳＤ０〜ＳＤ１５とを比較する比較手段を構成している。さらに詳述すると、比較回路６０は、同期化レジスタ２０の入力データＲＤ０〜ＲＤ７と出力データＳＤ０〜ＳＤ７とを比較し、比較結果信号ＣＭＰａを出力する回路である。図２は、この比較回路６０の構成例を示すものである。この比較回路６０は、同期化レジスタ２０の入力データＲＤ０〜ＲＤ７の各ビットと出力データＳＤ０〜ＳＤ７の各ビットとの排他的論理和を各々出力する８個の排他的論理和ゲート４１１と、これらの８個の排他的論理和ゲート４１１の出力データが入力され、比較結果信号ＣＭＰａを出力するローアクティブＡＮＤゲート４１２とにより構成されている。ここで、比較結果信号ＣＭＰａは、入力データＲＤ０〜ＲＤ７の各ビットと出力データＳＤ０〜ＳＤ７の各ビットが全て一致している場合にはＨレベル、１ビットでも異なっている場合にはＬレベルとなる。この比較結果信号ＣＭＰａは、インバータ６１によってレベルが反転され、不一致検出信号ＮＥａとしてクロックゲーティング制御回路４０に供給される。
【０００９】
比較回路７０は、比較回路６０と同様な構成の回路であり、同期化レジスタ３０の入力データＲＤ８〜ＲＤ１５と出力データＳＤ８〜ＳＤ１５とを比較し、両者が一致している場合にはＨレベルの比較結果信号ＣＭＰｂを出力し、両者が不一致である場合にはＬレベルの比較結果信号ＣＭＰｂを出力する回路である。この比較回路７０の後段には、インバータ７１が設けられ、さらにその後段には、ハイアクティブ入力端子とローアクティブ入力端子を持ったＡＮＤゲート７２が設けられている。比較回路７０から出力される比較結果信号ＣＭＰｂは、インバータ７１によってレベルが反転され、ＡＮＤゲート７２のハイアクティブ入力端子に入力される。ＡＮＤゲート７２のローアクティブ入力端子には、ビット幅指定信号ＢＴ８が与えられる。このビット幅指定信号ＢＴ８は、受信レジスタ１０に与えられるデータＤ０〜Ｄ１５の有効部分を示す有効性信号であり、データＤ０〜Ｄ１５の１６ビット全部が有効である場合にはＬレベル、下位８ビットＤ０〜Ｄ７のみが有効である場合にはＨレベルとされる。ビット幅指定信号ＢＴ８は、データＤ０〜Ｄ１５の送信元である装置からこの半導体集積回路に与えるものであってもよいし、それ以外の他の装置から与えられるものであってもよい。このビット幅指定信号ＢＴ８がＬレベルの場合、ＡＮＤゲート７２は、インバータ７１の出力信号を通過させ、不一致検出信号ＮＥｂとしてクロックゲーティング制御回路５０に供給する。ビット幅指定信号ＢＴ８がＨレベルの場合、ＡＮＤゲート７２は、Ｌレベルの不一致検出信号ＮＥｂをクロックゲーティング制御回路５０に供給する。
【００１０】
クロックゲーティング制御回路４０は、不一致検出信号ＮＥａがＨレベルになったとき、内部クロックＣＬＫ２を通過させ、同期化レジスタ２０に同期化クロックＣＬＫ２ａとして出力する回路である。
【００１１】
クロックゲーティング制御回路４０の構成には各種の態様が考えられるが、本実施形態におけるクロックゲーティング制御回路４０は、図３に示すように、ラッチ４１とＡＮＤゲート４２とにより構成されている。ここで、ラッチ４１は、内部クロックＣＬＫ２がＬレベルである期間は不一致検出信号ＮＥａを通過させ、内部クロックＣＬＫ２がＨレベルである期間は、その直前の内部クロックＣＬＫ２の立ち上がり時点における不一致検出信号ＮＥａを保持し、イネーブル信号ＥＮとして出力する回路である。ＡＮＤゲート４２は、このイネーブル信号ＥＮと内部クロックＣＬＫ２の論理積を取り、同期化クロックＣＬＫ２ａとして出力する。
【００１２】
クロックゲーティング制御回路５０は、クロックゲーティング制御回路４０と同様な構成の回路であり、不一致検出信号ＮＥｂがＨレベルになったとき、内部クロックＣＬＫ２を通過させ、同期化レジスタ３０に同期化クロックＣＬＫ２ｂとして出力する回路である。上述したように不一致検出信号ＮＥｂは、ＡＮＤゲート７２から出力される。このＡＮＤゲート７２は、同期化レジスタ３０に与えられる入力データＲＤ８〜ＲＤ１５が無効であることを有効性信号であるビット幅指定信号ＢＴ８が示しているときに、比較回路７０から出力される比較結果信号ＣＭＰｂに拘わらず、同期化レジスタ３０に対応したクロックゲーティング制御回路５０が同期化クロックＣＬＫ２ｂを出力するのを阻止する同期化クロック強制停止制御部としての役割を果たす。
以上が本実施形態による同期化回路の構成である。
【００１３】
図４は、本実施形態による同期化回路の各部の波形を示すタイムチャートである。以下、この図を参照し、本実施形態の動作を説明する。図示の例において、送信側装置は、データＤ０〜Ｄ１５を送信し、その後、一定期間に亙って書き込みクロックＣＬＫ１をＨレベルとしている。送信側装置からのデータＤ０〜Ｄ１５は、この書き込みクロックＣＬＫ１の立ち上がりにより受信レジスタ１０に書き込まれる。
【００１４】
図４（ａ）は、同期化回路において、送信側装置から与えられる下位８ビットのデータＤ０〜Ｄ７の処理を行う各部の波形を例示している。また、図４（ｂ）および（ｃ）は、ビット幅指定信号ＢＴ８がＬレベルの場合およびＨレベルの場合の各々について、送信側装置から与えられる上位８ビットのデータＤ８〜Ｄ１５の処理を行う各部の波形を例示している。
【００１５】
図４（ａ）に示す例では、書き込みクロックＣＬＫ１の立ち上がり時、少なくとも下位８ビットの内容がそれまでのものと異なったデータＤ０〜Ｄ１５が受信レジスタ１０へ書き込まれ、受信レジスタ１０から同期化レジスタ２０に与えられる下位ビットデータＲＤ０〜ＲＤ７が切り換わっている。このため、書き込みクロックＣＬＫ１の立ち上がり時に、比較結果信号ＣＭＰａがＬレベル、不一致検出信号ＮＥａがＨレベルとなる。このＨレベルの不一致検出信号ＮＥａは、その後の内部クロックＣＬＫ２のＬレベルになったとき、クロックゲーティング制御回路４０内のラッチ４１を通過し、Ｈレベルのイネーブル信号ＥＮとしてＡＮＤゲート４２に与えられる（図３参照）。このＨレベルのイネーブル信号ＥＮは、その後の内部クロックＣＬＫ２の立ち上がりによりラッチ４１に保持される。そして、このＨレベルのイネーブル信号ＥＮをラッチ４１に保持させた内部クロックＣＬＫ２は、ＡＮＤゲート４２を通過し、同期化クロックＣＬＫ２ａとして同期化レジスタ２０に与えられる。このようにして１個の同期化クロックＣＬＫ２ａが出力されると、下位ビットデータＲＤ０〜ＲＤ７が同期化レジスタ２０に書き込まれ、不一致検出信号ＮＥａがＬレベルとなる。このＬレベルの不一致検出信号ＮＥａは、その後の内部クロックＣＬＫ２のＬレベルになったとき、クロックゲーティング制御回路４０内のラッチ４１を通過し、ＡＮＤゲート４２に与えられるイネーブル信号ＥＮがＬレベルとなる。このため、クロックゲーティング制御回路４０における内部クロックＣＬＫ２の通過は阻止される。
【００１６】
図４（ｂ）に示す例では、書き込みクロックＣＬＫ１の立ち上がり時、少なくとも上位８ビットの内容がそれまでのものと異なったデータＤ０〜Ｄ１５が受信レジスタ１０へ書き込まれ、受信レジスタ１０から同期化レジスタ３０に与えられる上位ビット入力データＲＤ８〜ＲＤ１５が切り換わっている。このため、書き込みクロックＣＬＫ１の立ち上がり時に、比較結果信号ＣＭＰｂがＬレベルとなり、ビット幅指定信号ＢＴ８がＬレベルであることから、不一致検出信号ＮＥｂがＨレベルとなる。このため、１個の内部クロックＣＬＫ２がクロックゲーティング制御回路５０を通過し、同期化クロックＣＬＫ２ｂとして同期化レジスタ３０に与えられる。このようにして１個の同期化クロックＣＬＫ２ｂが出力されると、上位ビットデータＲＤ８〜ＲＤ１５が同期化レジスタ３０に書き込まれ、不一致検出信号ＮＥｂがＬレベルとなる。これにより、クロックゲーティング制御回路５０における内部クロックＣＬＫ２の通過は阻止される。
【００１７】
図４（ｃ）に示す例でも、書き込みクロックＣＬＫ１の立ち上がり時、受信レジスタ１０へのデータ書き込みにより、受信レジスタ１０から同期化レジスタ３０に与えられる上位ビット入力データＲＤ８〜ＲＤ１５が切り換わり、比較結果信号ＣＭＰｂがＬレベルとなっている。しかし、この例では、比較結果信号ＣＭＰｂがＬレベルとなっても、ビット幅指定信号ＢＴ８がＨレベルであることから、不一致検出信号ＮＥｂはＬレベルのまま変化しない。このため、クロックゲーティング制御回路５０から同期化レジスタ３０へ同期化クロックＣＬＫ２ｂが供給されることはない。
【００１８】
以上が書き込みクロックＣＬＫ１の立ち上がりにより受信レジスタ１０の出力データＲＤ０〜ＲＤ１５の内容が変化する場合の動作である。書き込みクロックＣＬＫ１が立ち上がらず受信レジスタ１０に対するデータ書き込みが行われない場合には、不一致検出信号ＮＥａおよびＮＥｂがＬレベルを維持するため、同期化レジスタ２０および３０に対して同期化クロックＣＬＫ２ａおよびＣＬＫ２ｂの供給が行われることはない。また、たとえ書き込みクロックＣＬＫ１が立ち上がり、受信レジスタ１０に対するデータ書き込みが行われたとしても、同期化レジスタ２０に対する下位ビット入力データＲＤ０〜ＲＤ７の内容が変化しない場合は、比較結果信号ＣＭＰａがＨレベル、不一致検出信号ＮＥａがＬレベルを維持するため、クロックゲーティング制御回路４０から同期化レジスタ２０への同期化クロックＣＬＫ２ａの供給は行われない。また、同期化レジスタ３０に対する上位ビット入力データＲＤ８〜ＲＤ１５の内容が変化しない場合は、比較結果信号ＣＭＰｂがＨレベル、不一致検出信号ＮＥｂがＬレベルを維持するため、クロックゲーティング制御回路５０から同期化レジスタ３０への同期化クロックＣＬＫ２ｂの供給は行われない。
【００１９】
以上説明したように、本実施形態によれば、受信レジスタ１０に対してデータＤ０〜Ｄ１５の書き込みが行われない限り、同期化レジスタ２０および３０に対して同期化クロックＣＬＫ２ａおよびＣＬＫ２ｂの供給が行われることはないので、同期化レジスタ２０および３０が不要にスイッチング動作し、電力が無駄に消費されるのを防止することができる。また、本実施形態によれば、受信レジスタ１０の出力データのうち同期化レジスタ２０に対する下位８ビット入力データＲＤ０〜ＲＤ７に変化があった場合に限り、同期化レジスタ２０への同期化クロックＣＬＫ２ａの供給が行われ、同期化レジスタ３０に対する上位８ビット入力データＲＤ８〜ＲＤ１５に変化があった場合に限り、同期化レジスタ３０への同期化クロックＣＬＫ２ｂの供給が行われる。このように、入力データに変化があり、スイッチング動作させる必要のある同期化レジスタ２０または３０のみに同期化クロックＣＬＫ２ａまたはＣＬＫ２ｂの供給が行われるので、消費電力を必要最低限に抑えることができる。また、本実施形態によれば、受信レジスタ１０に対するデータＤ０〜Ｄ１５のうちの上位８ビットが無効であることをビット幅指定信号ＢＴ８が示している場合には、たとえ同期化レジスタ３０に対する入力データＲＤ８〜ＲＤ１５に変化があっても、同期化レジスタ３０への同期化クロックＣＬＫ２ｂの供給は行われない。従って、同期化レジスタ３０が無効な上位ビット入力データＲＤ８〜ＲＤ１５を取り込み、電力が無駄に消費されるのを防止することができる。また、この場合に不一致検出信号ＮＥｂ自体をＬレベルに固定するので、クロックゲーティング制御回路５０に無駄なスイッチング動作をさせず、消費電力をさらに低減することができる。
【００２０】
＜第２実施形態＞
図５は、この発明の第２実施形態である同期化回路の構成を示すブロック図である。この同期化回路は、上記第１実施形態のものに対し、いわゆるメタステーブル対策を施したものである。メタステーブルとは、受信レジスタ１０の出力データＲＤ０〜ＲＤ１５のレベル変化のタイミングと内部クロックＣＬＫ２の発生タイミングとが非常に接近した場合に、同期化レジスタ（上記第１実施形態では同期化レジスタ２０および３０）の出力データが一時的に不安定になる現象である。なお、メタステーブルおよびその対策に関する技術文献としては、例えば特許文献１がある。本実施形態では、このメタステーブル対策として、上記第１実施形態における同期化レジスタ２０が２段のレジスタ８１および８２からなる同期化シフトレジスタ８０に置き換えられ、同期化レジスタ３０が２段のレジスタ９１および９２からなる同期化シフトレジスタ９０に置き換えられている。また、本実施形態では、上記第１実施形態におけるクロックゲーティング制御回路４０および５０がクロックゲーティング制御回路４０Ｓおよび５０Ｓに置き換えられている。
【００２１】
図６は、クロックゲーティング制御回路４０Ｓの構成例を示すブロック図である。このクロックゲーティング制御回路４０Ｓは、フリップフロップ４２１および４２２と、ＯＲゲート４２３と、ラッチ４２４と、ＡＮＤゲート４２５とにより構成されている。ここで、フリップフロップ４２１および４２２は、不一致検出信号ＮＥａを内部クロックＣＬＫ２の立ち上がりに同期して順次シフトする２段のシフトレジスタを構成している。ＯＲゲート４２３は、フリップフロップ４２１の出力信号Ｘａとフリップフロップ４２２の出力信号Ｘｂとの論理和を取り、イネーブル信号ＥＮとして出力する。ラッチ４２４は、内部クロックＣＬＫ２がＬレベルである期間はイネーブル信号ＥＮを通過させ、内部クロックＣＬＫ２がＨレベルである期間は、その直前の内部クロックＣＬＫ２の立ち上がり時点におけるイネーブル信号ＥＮを保持して出力する回路である。ＡＮＤゲート４２５は、このラッチ４２４の出力信号と内部クロックＣＬＫ２の論理積を取り、同期化クロックＣＬＫ２ａとして出力する。クロックゲーティング制御回路５０Ｓも同様な構成である。
【００２２】
図７は、本実施形態による同期化回路の各部のうち特に送信側装置から送信される下位８ビットデータＤ０〜Ｄ７に関連した部分の動作を示すタイムチャートである。図示の例では、書き込みクロックＣＬＫ１の立ち上がりにより、受信レジスタ１０にデータＤ０〜Ｄ１５が書き込まれ、同期化シフトレジスタ８０に対する入力データＲＤ０〜ＲＤ７が変化している。このため、不一致検出信号ＮＥａがＨレベルとなる。このＨレベルの不一致検出信号ＮＥａは、その後の内部クロックＣＬＫ２の立ち上がりによりフリップフロップ４２１に書き込まれ、フリップフロップ４２１の出力信号ＸａがＨレベルとなる。この結果、ＯＲゲート４２３が出力するイネーブル信号ＥＮがＨレベルとなる。さらにその後、内部クロックＣＬＫ２が立ち上がると、このＨレベルの信号Ｘａがフリップフロップ４２２に書き込まれ、フリップフロップ４２２の出力信号ＸｂがＨレベルとなる。
【００２３】
イネーブル信号ＥＮがＨレベルに立ち上がると、その後、内部クロックＣＬＫ２がＬレベルになったとき、このＨレベルのイネーブル信号ＥＮがラッチ４２４を通過し、その後、内部クロックＣＬＫ２が立ち上がるとき、このＨレベルのイネーブル信号ＥＮがラッチ４２４によって保持され、ＡＮＤゲート４２５に供給される。この結果、内部クロックＣＬＫ２がＡＮＤゲート４２５を通過し、同期化クロックＣＬＫ２ａとして同期化シフトレジスタ８０に供給される。そして、同期化クロックＣＬＫ２ａが２個出力されると、同期化シフトレジスタ８０に対する入力データＲＤ０〜ＲＤ７が最終段のレジスタ８２までシフトされる。この結果、同期化シフトレジスタ８０の出力データＳＤ０〜ＳＤ７が同期化シフトレジスタ８０の入力データＲＤ０〜ＲＤ７と一致し、不一致検出信号ＮＥａがＬレベルとなる。
【００２４】
不一致検出信号ＮＥａがＬレベルになると、その後、内部クロックＣＬＫ２が２回立ち上がることにより、フリップフロップ４２１および４２２の出力信号ＸａおよびＸｂの両方がＬレベルとなり、イネーブル信号ＥＮがＬレベルとなる。その後、内部クロックＣＬＫ２の１周期相当の時間だけ遅れてラッチ４２４の出力信号がＬレベルとなり、ＡＮＤゲート４２５を介した同期化クロックＣＬＫ２ａの出力が停止する。
【００２５】
以上のようにクロックゲーティング制御回路４０Ｓは、不一致検出信号ＮＥａがＨレベルとなった場合に、４個の同期化クロックＣＬＫ２ａを同期化シフトレジスタ８０に供給し、同期化シフトレジスタ８０に対する入力データＲＤ０〜ＲＤ７を最終段まで到達させ、出力データＳＤ０〜ＳＤ７として出力させる。クロックゲーティング制御回路５０Ｓも同様であり、不一致検出信号ＮＥｂがＨレベルとなった場合に、４個の同期化クロックＣＬＫ２ｂを同期化シフトレジスタ９０に供給し、同期化シフトレジスタ９０に対する入力データＲＤ８〜ＲＤ１５を最終段まで到達させ、出力データＳＤ８〜ＳＤ１５として出力させる。
【００２６】
本実施形態と上記第１実施形態との相違は、メタステーブル対策として設けられた同期化シフトレジスタ８０および９０と、これらに対して同期化クロックＣＬＫ２ａおよびＣＬＫ２ｂの供給を行うクロックゲーティング制御回路４０Ｓおよび５０Ｓにあり、他の点は上記第１実施形態と同様である。従って、本実施形態によれば、メタステーブルの発生する状況においてもその悪影響を回避しつつ、上記第１実施形態と同様な効果を得ることができる。
【００２７】
＜第３実施形態＞
本実施形態は、上記第２実施形態におけるクロックゲーティング制御回路４０Ｓを図８に示すクロックゲーティング制御回路４０Ｔに置き換えたものである。クロックゲーティング制御回路５０Ｓも同様である。
【００２８】
クロックゲーティング制御回路４０Ｔは、上記第２実施形態におけるクロックゲーティング制御回路４２Ｓに対し、非同期リセット端子Ｒを持ったフリップフロップ４２６と、ＡＮＤゲート４２７とを追加した構成となっている。ここで、フリップフロップ４２６は、データ入力端子がＨレベルに固定され、非同期リセット端子Ｒにイネーブル信号ＥＮが与えられ、クロック端子に書き込みクロックＣＬＫ１が与えられる。そして、ＡＮＤゲート４２７は、このフリップフロップ４２６の出力信号と不一致検出信号ＮＥａとの論理積を取り、信号ＮＥａ’としてフリップフロップ４２１のデータ入力端子に供給する。
【００２９】
図９は本実施形態による同期化回路の各部のうち特に送信側装置から送信される下位８ビットデータＤ０〜Ｄ７に関連した部分の動作を示すタイムチャートである。この例でも、上記第２実施形態の動作例（図７参照）と同様、書き込みクロックＣＬＫ１の立ち上がりにより、受信レジスタ１０にデータＤ０〜Ｄ１５が書き込まれ、同期化シフトレジスタ８０に対する入力データＲＤ０〜ＲＤ７が変化している。このため、不一致検出信号ＮＥａがＨレベルとなる。
【００３０】
上記第２実施形態では、イネーブル信号ＥＮがＨレベルとなって同期化クロックＣＬＫ２ａが２個出力され、これによる同期化シフトレジスタ８０のシフト動作が行われ、不一致検出信号ＮＥａがＬレベルとなった後、内部クロックＣＬＫ２がさらに２回立ち上がることによりイネーブル信号ＥＮがＬレベルとなった。このため、上記第２実施形態では、内部クロックＣＬＫ２の４周期相当の期間、イネーブル信号ＥＮがＨレベルとなり、４個の同期化クロックＣＬＫ２ａが同期化シフトレジスタ８０に供給された。
【００３１】
これに対し、本実施形態では、次の動作が得られる。まず、書き込みクロックＣＬＫ１の立ち上がりにより不一致検出信号ＮＥａがＨレベルとなるとき、同書き込みクロックＣＬＫ１の立ち上がりによりフリップフロップ４２６に“１”が書き込まれ、フリップフロップ４２６の出力信号がＨレベルになる。このため、不一致検出信号ＮＥａは、ＡＮＤゲート４２７を通過し、信号ＮＥａ’としてフリップフロップ４２１に与えられる。
【００３２】
その後、内部クロックＣＬＫ２が立ち上がると、Ｈレベルの信号ＮＥａ’がフリップフロップ４２１に書き込まれ、イネーブル信号ＥＮがＨレベルとなる。この結果、フリップフロップ４２６がリセットされ、ＡＮＤゲート４２７の出力信号ＮＥａ’がＬレベルとされる。このように、内部クロックＣＬＫ２の立ち上がりによりフリップフロップ４２１に“１”が書き込まれ、イネーブル信号ＥＮがＨレベルになると、直ちにフリップフロップ４２１に対する入力信号ＮＥａ’がＬレベルとされる。このため、イネーブル信号ＥＮは、内部クロックＣＬＫ２の２周期相当の期間だけＨレベルとなり、２個の内部クロックＣＬＫ２がクロックゲーティング制御回路４０Ｔを通過し、同期化クロックＣＬＫ２ａとして同期化シフトレジスタ８０に供給される。
【００３３】
本実施形態では、フリップフロップ４２６およびＡＮＤゲート４２７が追加されているため、これらのスイッチング動作により消費電力が増加する。しかし、上記第２実施形態においては、書き込みクロックＣＬＫ１の立ち上がり時、４個の同期化クロックＣＬＫ２ａが発生されたのに対し、本実施形態では、同期化シフトレジスタ８０の最終段までシフトさせるのに最低限必要な２個の同期化クロックＣＬＫ２ａしか発生されない。同期化シフトレジスタ９０に対する同期化クロックＣＬＫ２ｂも同様である。従って、本実施形態によれば、上記第２実施形態に比べて、同期化シフトレジスタ８０および９０の消費電力を低減することができる。
【００３４】
＜他の実施形態＞
以上、この発明の各実施形態について説明したが、この発明には他にも実施形態があり得る。例えば次の通りである。
【００３５】
（１）上記各実施形態における同期化回路は、１６ビット幅のデータＤ０〜Ｄ１５を受信して内部クロックＣＬＫ２に同期化させたが、これはあくまでも例示であり、この発明は任意のビット幅のデータを受信し、内部クロックＣＬＫ２に同期化させる同期化回路に適用可能である。
【００３６】
（２）上記各実施形態では、送信側装置から与えられる１６ビットのデータの全部が有効な場合と下位８ビットのみが有効な場合とがあったため、送信側装置から送信されて受信レジスタ１０に書き込まれたデータを下位８ビットのデータと上位８ビットのデータに分割し、分割した各データ毎に内部クロックＣＬＫ２に同期化させた。しかし、送信側装置から与えられる１６ビットのデータの全部が常に有効な場合には、受信レジスタ１０と同一ビット幅の同期化レジスタを設け、この同期化レジスタに受信レジスタ１０の出力データを与え、同期化レジスタの入力データと出力データとに不一致が生じた場合に１個のクロックゲーティング制御回路により同期化クロックを同期化レジスタに供給する構成としてもよい。
【００３７】
（３）上記各実施形態では、受信レジスタ１０の出力データを上位と下位に２分割して取り扱った。しかし、送信側装置から与えられるデータが例えば上位ビット列、中位ビット列、下位ビット列に区分されており、いずれの部分が有効であるかが切り換わるような場合も考えられる。その場合には、送信側装置から与えられる上位ビット列、中位ビット列、下位ビット列の各々に対応した同期化レジスタおよびクロックゲーティング制御回路の組を同期化回路に設け、各ビット列単位で内部クロックＣＬＫ２への同期化を行わせればよい。また、上位ビット列、中位ビット列、下位ビット列のいずれかが無効になった場合には、その無効になったビット列を取り扱う同期化レジスタに対する同期化クロックの供給を強制的に断つように構成すればよい。
【００３８】
（４）上記第２および第３実施形態では、同期化シフトレジスタの段数を２段としたが、この同期化シフトレジスタの段数は、同期化回路が設けられる半導体集積回路の動作速度等を考慮して適切な段数とすればよい。この場合において、同期化シフトレジスタに対してクロックゲーティング制御回路が出力する同期化クロックの個数は、この同期化シフトレジスタの段数以上の個数であればよい。
【図面の簡単な説明】
【００３９】
【図１】この発明の第１実施形態である同期化回路の構成を示すブロック図である。
【図２】同実施形態における比較回路６０の構成例を示すブロック図である。
【図３】同実施形態におけるクロックゲーティング制御回路４０の構成例を示すブロック図である。
【図４】同実施形態の各部の波形を示すタイムチャートである。
【図５】この発明の第２実施形態である同期化回路の構成を示すブロック図である。
【図６】同実施形態におけるクロックゲーティング制御回路４０Ｓの構成例を示すブロック図である。
【図７】同実施形態の各部の波形を示すタイムチャートである。
【図８】この発明の第３実施形態である同期化回路におけるクロックゲーティング制御回路４０Ｔの構成を示すブロック図である。
【図９】同実施形態の各部の波形を示すタイムチャートである。
【符号の説明】
【００４０】
１０……受信レジスタ、２０,３０……同期化レジスタ、４０，５０，４０Ｓ，５０Ｓ，４０Ｔ……クロックゲーティング制御回路、６０，７０……比較回路、６１，７１……インバータ、７２……ＡＮＤゲート、８０，９０……同期化シフトレジスタ。
【図１】
2008134926.tif 000003
【図２】
2008134926.tif 000004
【図３】
2008134926.tif 000005
【図４】
2008134926.tif 000006
【図５】
2008134926.tif 000007
【図６】
2008134926.tif 000008
【図７】
2008134926.tif 000009
【図８】
2008134926.tif 000010
【図９】
2008134926.tif 000011