(57)【要約】【課題】クロック選択回路の最終選択出力でのメタステーブルの障害の発生確率を低減する。【解決手段】半導体集積回路に内蔵のクロック選択回路は、デコーダＤＥＣ、制御ユニットＣｎｔ、マルチプレクサＭｐｘを有する。ＤＥＣに選択信号ＳＥＬが供給され、Ｃｎｔに第１と第２のクロック信号ＣＫＩＮ０、１とデコーダＤＥＣの第１と第２の選択出力信号が供給され、ＭｐｘにＣｎｔの第１と第２の選択制御信号Ｑ´０、１が供給される。Ｃｎｔの第１と第２のゲートＡＮＤ０、１の一方の入力にＤＥＣの第１と第２の選択出力信号が供給される。第１ゲートＡＮＤ０の出力と第２ゲートＡＮＤ１の他方の入力の間に直列接続の第１と第２のＤ型フリップフロップＤ−ＦＦ０、２と、第２ゲートＡＮＤ１の出力と第１ゲートＡＮＤ０の他方の入力の間に直列接続の第３と第４のＤ型フリップフロップＤ−ＦＦ１、３を含む。【選択図】図６
2010252012.tif 000002
【特許請求の範囲】
【請求項１】
選択信号が供給されるデコーダと、第１クロック信号および第２クロック信号と前記デコーダからの第１選択出力信号および第２選択出力信号が少なくとも供給される制御ユニットと、前記第１クロック信号および前記第２クロック信号と前記制御ユニットからの第１選択制御信号および第２選択制御信号とが少なくとも供給されるマルチプレクサとを有するクロック選択回路を内蔵する半導体集積回路であって、
前記制御ユニットは、前記デコーダからの前記第１選択出力信号が一方の入力端子に供給される第１のゲート回路と、前記デコーダからの前記第２選択出力信号が一方の入力端子に供給される第２のゲート回路とを含み、
前記制御ユニットは、前記第１のゲート回路の出力端子と前記第２のゲート回路の他方の入力端子との間に直列接続された第１と第２のＤ型フリップフロップと、前記第２のゲート回路の出力端子と前記第１のゲート回路の他方の入力端子との間に直列接続された第３と第４のＤ型フリップフロップとを含むことを特徴とする半導体集積回路。
【請求項２】
前記直列接続の前記第１と前記第２のＤ型フリップフロップを介して前記第２のゲート回路の前記他方の入力端子に前記第１のゲート回路の前記出力端子の非選択レベルの信号が供給されることによって、前記第２クロック信号が前記制御ユニットの前記第２のゲート回路と前記マルチプレクサとを介してクロック出力信号として出力可能とされるものであり、
前記直列接続の前記第３と前記第４のＤ型フリップフロップを介して前記第１のゲート回路の前記他方の入力端子に前記第２のゲート回路の前記出力端子の非選択レベルの信号が供給されることによって、前記第１クロック信号が前記制御ユニットの前記第１のゲート回路と前記マルチプレクサとを介して前記クロック出力信号として出力可能とされるものである請求項１に記載の半導体集積回路。
【請求項３】
前記直列接続の前記第１と前記第２のＤ型フリップフロップの後段側の前記第２のＤ型フリップフロップの出力データが、前記第１選択制御信号として前記マルチプレクサに伝達されるとともに前記第２のゲート回路の前記他方の入力端子に伝達され、
前記直列接続の前記第３と前記第４のＤ型フリップフロップの後段側の前記第４のＤ型フリップフロップの出力データが、前記第２選択制御信号として前記マルチプレクサに伝達されるとともに前記第１のゲート回路の前記他方の入力端子に伝達される請求項２に記載の半導体集積回路。
【請求項４】
前記制御ユニットは、第１と第２のラッチを更に具備して、
前記第１のラッチのデータ入力端子と前記第２のＤ型フリップフロップのデータ入力端子とには前記直列接続の前記第１と前記第２のＤ型フリップフロップの前段側の前記第１のＤ型フリップフロップの出力データが並列に供給され、前記第１のラッチの出力データが前記第１選択制御信号として前記マルチプレクサに伝達され、
前記第２のラッチのデータ入力端子と前記第４のＤ型フリップフロップのデータ入力端子とには前記直列接続の前記第３と前記第４のＤ型フリップフロップの前段側の前記第３のＤ型フリップフロップの出力データが並列に供給され、前記第２のラッチの出力データが前記第２選択制御信号として前記マルチプレクサに伝達される請求項２に記載の半導体集積回路。
【請求項５】
前記第１のラッチのゲート制御端子と前記直列接続の前記第１と前記第２のＤ型フリップフロップの両エッジトリガ端子とは、前記第１クロック信号に応答して、
前記第２のラッチのゲート制御端子と前記直列接続の前記第３と前記第４のＤ型フリップフロップの両エッジトリガ端子とは、前記第２クロック信号に応答する請求項４に記載の半導体集積回路。
【請求項６】
前記制御ユニットは、第１と第２の遅延回路を更に具備して、
前記第１の遅延回路の入力端子は前記前段側の前記第１のＤ型フリップフロップの前記エッジトリガ端子に接続され、前記第１の遅延回路の出力端子は前記後段側の前記第２のＤ型フリップフロップの前記エッジトリガ端子に接続されており、
前記第２の遅延回路の入力端子は前記前段側の前記第３のＤ型フリップフロップの前記エッジトリガ端子に接続され、前記第２の遅延回路の出力端子は前記後段側の前記第４のＤ型フリップフロップの前記エッジトリガ端子に接続されている請求項５に記載の半導体集積回路。
【請求項７】
前記第１のラッチの前記ゲート制御端子は、前記第１の遅延回路の前記入力端子と前記出力端子とのいずれかの端子に接続されており、
前記第２のラッチの前記ゲート制御端子は、前記第２の遅延回路の前記入力端子と前記出力端子とのいずれかの端子に接続されている請求項６に記載の半導体集積回路。
【請求項８】
前記マルチプレクサは、第３と第４と第５のゲート回路を具備して、
前記第３のゲート回路の一方の入力端子と他方の入力端子とは、前記制御ユニットからの前記第１選択制御信号と前記第１クロック信号とにそれぞれ応答して、
前記第４のゲート回路の一方の入力端子と他方の入力端子とは、前記制御ユニットからの前記第２選択制御信号と前記第２クロック信号とにそれぞれ応答して、
前記第５のゲート回路に前記第３のゲート回路から生成される第１のクロック出力信号と前記第４のゲート回路から生成される第２のクロック出力信号とが供給されることによって、前記第５のゲート回路は前記マルチプレクサの最終出力としてのクロック出力信号を生成する請求項７に記載の半導体集積回路。
【請求項９】
前記第１クロック信号を生成する第１クロック信号源と、前記第２クロック信号を生成する第２クロック信号源とを更に具備する。
前記第１クロック信号源から生成される前記第１クロック信号と前記第２クロック信号源から生成される前記第２クロック信号とのいずれかが、前記選択信号に応答して、前記クロック選択回路によって前記マルチプレクサの前記最終出力として生成されるものである請求項８に記載の半導体集積回路。
【請求項１０】
選択信号が供給されるデコーダと、第１クロック信号および第２クロック信号と前記デコーダからの第１選択出力信号および第２選択出力信号が少なくとも供給される制御ユニットと、前記第１クロック信号および前記第２クロック信号と前記制御ユニットからの第１選択制御信号および第２選択制御信号とが少なくとも供給されるマルチプレクサとを有するクロック選択回路を内蔵する半導体集積回路の動作方法であって、
前記制御ユニットは、前記デコーダからの前記第１選択出力信号が一方の入力端子に供給される第１のゲート回路と、前記デコーダからの前記第２選択出力信号が一方の入力端子に供給される第２のゲート回路とを含み、
前記制御ユニットは、前記第１のゲート回路の出力端子と前記第２のゲート回路の他方の入力端子との間に直列接続された第１と第２のＤ型フリップフロップと、前記第２のゲート回路の出力端子と前記第１のゲート回路の他方の入力端子との間に直列接続された第３と第４のＤ型フリップフロップとを含み、
前記選択信号を第１の状態に設定することによって、前記第１クロック信号が前記マルチプレクサの出力からクロック出力信号として出力可能とされ、
前記選択信号を前記第１の状態と異なる第２の状態に設定することによって、前記第２クロック信号が前記マルチプレクサの前記出力から前記クロック出力信号として出力可能とされることを特徴とする半導体集積回路の動作方法。
【請求項１１】
前記直列接続の前記第１と前記第２のＤ型フリップフロップを介して前記第２のゲート回路の前記他方の入力端子に前記第１のゲート回路の前記出力端子の非選択レベルの信号が供給されることによって、前記第２クロック信号が前記制御ユニットの前記第２のゲート回路と前記マルチプレクサとを介してクロック出力信号として出力可能とされるものであり、
前記直列接続の前記第３と前記第４のＤ型フリップフロップを介して前記第１のゲート回路の前記他方の入力端子に前記第２のゲート回路の前記出力端子の非選択レベルの信号が供給されることによって、前記第１クロック信号が前記制御ユニットの前記第１のゲート回路と前記マルチプレクサとを介して前記クロック出力信号として出力可能とされるものである請求項１０に記載の半導体集積回路の動作方法。
【請求項１２】
前記直列接続の前記第１と前記第２のＤ型フリップフロップの後段側の前記第２のＤ型フリップフロップの出力データが、前記第１選択制御信号として前記マルチプレクサに伝達されるとともに前記第２のゲート回路の前記他方の入力端子に伝達され、
前記直列接続の前記第３と前記第４のＤ型フリップフロップの後段側の前記第４のＤ型フリップフロップの出力データが、前記第２選択制御信号として前記マルチプレクサに伝達されるとともに前記第１のゲート回路の前記他方の入力端子に伝達される請求項１１に記載の半導体集積回路の動作方法。
【請求項１３】
前記制御ユニットは、第１と第２のラッチを更に具備して、
前記第１のラッチのデータ入力端子と前記第２のＤ型フリップフロップのデータ入力端子とには前記直列接続の前記第１と前記第２のＤ型フリップフロップの前段側の前記第１のＤ型フリップフロップの出力データが並列に供給され、前記第１のラッチの出力データが前記第１選択制御信号として前記マルチプレクサに伝達され、
前記第２のラッチのデータ入力端子と前記第４のＤ型フリップフロップのデータ入力端子とには前記直列接続の前記第３と前記第４のＤ型フリップフロップの前段側の前記第３のＤ型フリップフロップの出力データが並列に供給され、前記第２のラッチの出力データが前記第２選択制御信号として前記マルチプレクサに伝達される請求項１１に記載の半導体集積回路の動作方法。
【請求項１４】
前記第１のラッチのゲート制御端子と前記直列接続の前記第１と前記第２のＤ型フリップフロップの両エッジトリガ端子とは、前記第１クロック信号に応答して、
前記第２のラッチのゲート制御端子と前記直列接続の前記第３と前記第４のＤ型フリップフロップの両エッジトリガ端子とは、前記第２クロック信号に応答する請求項１３に記載の半導体集積回路の動作方法。
【請求項１５】
前記制御ユニットは、第１と第２の遅延回路を更に具備して、
前記第１の遅延回路の入力端子は前記前段側の前記第１のＤ型フリップフロップの前記エッジトリガ端子に接続され、前記第１の遅延回路の出力端子は前記後段側の前記第２のＤ型フリップフロップの前記エッジトリガ端子に接続されており、
前記第２の遅延回路の入力端子は前記前段側の前記第３のＤ型フリップフロップの前記エッジトリガ端子に接続され、前記第２の遅延回路の出力端子は前記後段側の前記第４のＤ型フリップフロップの前記エッジトリガ端子に接続されている請求項１４に記載の半導体集積回路の動作方法。
【請求項１６】
前記第１のラッチの前記ゲート制御端子は、前記第１の遅延回路の前記入力端子と前記出力端子とのいずれかの端子に接続されており、
前記第２のラッチの前記ゲート制御端子は、前記第２の遅延回路の前記入力端子と前記出力端子とのいずれかの端子に接続されている請求項１５に記載の半導体集積回路の動作方法。
【請求項１７】
前記マルチプレクサは、第３と第４と第５のゲート回路を具備して、
前記第３のゲート回路の一方の入力端子と他方の入力端子とは、前記制御ユニットからの前記第１選択制御信号と前記第１クロック信号とにそれぞれ応答して、
前記第４のゲート回路の一方の入力端子と他方の入力端子とは、前記制御ユニットからの前記第２選択制御信号と前記第２クロック信号とにそれぞれ応答して、
前記第５のゲート回路に前記第３のゲート回路から生成される第１のクロック出力信号と前記第４のゲート回路から生成される第２のクロック出力信号とが供給されることによって、前記第５のゲート回路は前記マルチプレクサの最終出力としてのクロック出力信号を生成する請求項１６に記載の半導体集積回路の動作方法。
【請求項１８】
前記第１クロック信号を生成する第１クロック信号源と、前記第２クロック信号を生成する第２クロック信号源とを更に具備して、
前記第１クロック信号源から生成される前記第１クロック信号と前記第２クロック信号源から生成される前記第２クロック信号とのいずれかが、前記選択信号に応答して、前記クロック選択回路によって前記マルチプレクサの前記最終出力として生成されるものである請求項１７に記載の半導体集積回路の動作方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路およびその動作方法に関し、特にクロック選択回路のメタステーブルの障害の発生確率を低減するのに有益な技術に関する。
【背景技術】
【０００２】
下記特許文献１には、複数の選択信号と複数の入力信号とが供給され、選択切り換え時のグリッチを防止したマルチプレクサが記載されている。グリッチの発生を防止するために、複数の選択信号のうちの１つの選択信号が選択レベルとされる際に、他の選択信号が非選択レベルとなるまで選択レベルの１つの選択信号がマルチプレクサに供給されることが防止される。
【０００３】
また、下記非特許文献１には、非同期信号とクロックとが供給されることによって、出力から同期信号を生成するシンクロナイザ(Synchronizer)が記載されている。シンクロナイザが単一のＤ型フリップフロップ(ＦＦ)で構成されたシングルステージの場合には、非同期入力信号がクロック遷移に余りにも近接して状態を変化すると、フリップフロップのセットアップ時間とホールド時間との違反が発生して、メタステーブルが発生する。すると伝播遅延が増大して、出力がハイレベルまたはローレベルに回復するための時間も伝播遅延の増大によって増大する。シンクロナイザの出力にメタステーブルが発生するまでの時間は、不良間隔平均時間(ＭＴＢＦ：mean time between failure)と呼ばれる。
【０００４】
更に、下記非特許文献１には、ツーステージシンクロナイザを使用することによって、シングルステージシンクロナイザと比較して、メタステーブルの不良間隔平均時間を数桁、増大することが記載されている。ツーステージシンクロナイザでは、２個のＦＦがカスケード接続され、１段目のＦＦのデータ入力端子Ｄには非同期入力信号が供給され、１段目のＦＦのデータ出力信号Qは２段目のＦＦのデータ入力端子Ｄに供給され、１段目のＦＦのトリガ入力と２段目のＦＦのトリガ入力とにクロック信号が共通に供給され、２段目のＦＦのデータ出力信号Qから同期出力信号が生成される。クロック信号の１個目のクロックパルスの立ち上がりエッジに応答して１段目のＦＦのデータ出力信号Qにメタステーブル出力が生成される可能性があるが、クロック信号の２個目のクロックパルスの立ち上がりエッジに応答して２段目のＦＦのデータ出力信号Qにはハイレベルまたはローレベルの安定した同期出力信号が生成されることが可能となる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−１７４３４４号  公報
【非特許文献】
【０００６】
【非特許文献１】Ｔｏｍ  Ｊａｃｋｓｏｎ， “ＦＩＦＯ  Ｍｅｍｏｒｉｅｓ：  Ｓｏｌｕｔｉｏｎ  ｔｏ  Ｒｅｄｕｃｅ  ＦＩＦＯ  Ｍｅｔａｓｔａｂｉｌｉｔｙ”，  Ｆｉｒｓｔ−Ｉｎ，  Ｆｉｒｓｔ−Ｏｕｔ  Ｔｅｃｈｎｏｌｏｇｙ，  ＳＣＡＡ０１１Ａ  Ｍａｒｃｈ  １９９６，ｐｐ．１〜６，ＴＥＸＡＳ  ＩＮＳＴＲＵＭＥＮＴＳ ｈｔｔｐ：／／ｆｏｃｕｓ．ｔｉ．ｃｏｍ／ｌｉｔ／ａｎ／ｓｃａａ０１１ａ／ｓｃａａ０１１ａ．ｐｄｆ[平成２１年３月３日検索]
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明者等は、本発明に先立って非同期の複数のクロック源を使用するマイクロコントローラやシステムＬＳＩの研究・開発に従事した。
【０００８】
マイクロコントローラやシステムＬＳＩ等の分野では、非同期の複数のクロック源を使用する場合が多くなってきている。非同期の複数のクロック源の１つとしては、例えば、チップ外部の水晶振動子によって生成した基準周波数信号からフェーズロックドループ(ＰＬＬ)の電圧制御発振器により生成される逓倍クロックがある。他のクロック源としては、システムコスト低減のために外部水晶振動子を使用しないユーザに用意されたフリーランのオンチップ発振器の発振クロックや、チップ外部から供給されるクロック信号入力がある。またシステムの信頼性確保の観点から、システムの暴走やデッドロックを検出するためのウォッチドッグタイマは、システムクロックと独立したクロック源で動作することが求められている。
【０００９】
これらの非同期の複数のクロック源は、分周や逓倍の関係にはないので、位相関係は未知である。これら複数のクロック源のうちの１つを選択して、チップ内部のＣＰＵや周辺ＩＰにクロック等の内部コアにシステムクロックとして分配することになる。この切り換え時にグリッチが生成されないこと、非同期信号の同期化で問題となりうるフリップフロップやラッチのメタステーブルの障害確率を低減して実用的な信頼性を確保すること、および高速に切り換えることが必要となる。
【００１０】
特に３２ｋＨｚと言う低速で低電力動作の状態から、何らかのイベントを検出して１００ＭＨｚと言う高速の動作に切り換える場合には、大きな切り換えレイテンシはリアルタイム性が必要な用途において致命的な性能劣化となる。従って、グリッチの発生防止、メタステーブルの障害確率の低減、切り換えレイテンシの低減を同時に達成することが必要となる。
【００１１】
図１は、本発明に先立って本発明者等によって検討されたクロック選択回路としてのマルチプレクサの構成を示す図である。
【００１２】
図１に示すクロック選択回路としてのマルチプレクサは、第１と第２のＣＭＯＳアナログスイッチ１０１、１０２、インバータ１０３、バッファ増幅器１０４を含んでいる。第１のＣＭＯＳアナログスイッチ１０１の信号入力端子に第１のクロック入力信号ＣＫＩＮ０が供給され、第１のＣＭＯＳアナログスイッチ１０１の制御入力端子には選択信号ＳＥＬとインバータ１０３の出力信号とが供給され、第１のＣＭＯＳアナログスイッチ１０１の出力信号はバッファ増幅器１０４の入力端子に供給される。第２のＣＭＯＳアナログスイッチ１０２の信号入力端子に第２のクロック入力信号ＣＫＩＮ１が供給され、第２のＣＭＯＳアナログスイッチ１０２の制御入力端子にインバータ１０３の出力信号と選択信号ＳＥＬとが供給され、第２のＣＭＯＳアナログスイッチ１０２の出力信号はバッファ増幅器１０４の入力端子に供給される。
【００１３】
第１のＣＭＯＳアナログスイッチ１０１はソース・ドレイン電流経路が並列接続のＰチャンネルＭＯＳトランジスタＱｐ１とＮチャンネルＭＯＳトランジスタＱｎ１とを含み、トランジスタＱｐ１のゲート電極に選択信号ＳＥＬが供給され、トランジスタＱｎ１のゲート電極にインバータ１０３の出力信号が供給される。第２のＣＭＯＳアナログスイッチ１０２もソース・ドレイン電流経路が並列接続のＰチャンネルＭＯＳトランジスタＱｐ２とＮチャンネルＭＯＳトランジスタＱｎ２とを含み、トランジスタＱｐ２のゲート電極にインバータ１０３の出力信号が供給され、トランジスタＱｎ２のゲート電極に選択信号ＳＥＬが供給される。
【００１４】
選択信号ＳＥＬがローレベル“０”の間に第１のＣＭＯＳアナログスイッチ１０１はオン状態に制御され、第２のＣＭＯＳアナログスイッチ１０２はオフ状態に制御されるので、第１のクロック入力信号ＣＫＩＮ０が選択されバッファ増幅器１０４の出力クロック信号ＣＫＯＵＴとして出力される。逆に、選択信号ＳＥＬがハイレベル“１”の間に第１のＣＭＯＳアナログスイッチ１０１はオフ状態に制御され、第２のＣＭＯＳアナログスイッチ１０２はオン状態に制御されるので、第２のクロック入力信号ＣＫＩＮ１が選択されバッファ増幅器１０４の出力クロック信号ＣＫＯＵＴとして出力される。
【００１５】
図２は、図１に示したクロック選択回路としてのマルチプレクサの各部の波形を示す図である。
【００１６】
図２に示すように、第１のクロック入力信号ＣＫＩＮ０は比較的低いクロック周波数を持つ一方、第２のクロック入力信号ＣＫＩＮ１は比較的高いクロック周波数を持つものである。上述のように選択信号ＳＥＬがローレベル“０”の間には比較的低いクロック周波数を持つ第１のクロック入力信号ＣＫＩＮ０が選択されて出力クロック信号ＣＫＯＵＴとして出力され、選択信号ＳＥＬがハイレベル“１”の間には比較的高いクロック周波数を持つ第２のクロック入力信号ＣＫＩＮ１が選択されて出力クロック信号ＣＫＯＵＴとして出力される。
【００１７】
しかし、図２に示すように、クロック選択の切り換えのタイミング２０１、２０２、２０３、２０４にて、パルス幅の小さなパルスが出力クロック信号ＣＫＯＵＴとして生成されて、グリッチが発生することが理解される。前半の２個のタイミング２０１、２０２での第１と第２のクロック入力信号ＣＫＩＮ０、ＣＫＩＮ１のレベルは相互に相違しているが、パルス幅の小さなグリッチが発生している。後半の２個のタイミング２０３、２０４での第１と第２のクロック入力信号ＣＫＩＮ０、ＣＫＩＮ１のレベルは相互に同一となっているが、やはりパルス幅の小さなグリッチが発生している。その結果、出力クロック信号ＣＫＯＵＴに発生する出力クロックのパルス幅を第１と第２のクロック入力信号ＣＫＩＮ０、ＣＫＩＮ１のいずれかのパルス幅と等しくすると言う保証が不可能となるものである。すなわち、出力クロック信号ＣＫＯＵＴに発生するグリッチのパルス幅やエッジ間隔が、第１と第２のクロック入力信号ＣＫＩＮ０、ＣＫＩＮ１の最高周波数クロックの周期より短くなってしまう。
【００１８】
従って、出力クロック信号ＣＫＯＵＴのパルス幅やエッジ間隔が保証できないことにより、出力クロック信号ＣＫＯＵＴをマイクロコントローラやシステムＬＳＩの種々の内部コアにシステムクロックとして分配するに際して、種々の問題を発生するものである。例えば、内部コアのフリップフロップのセットアップの違反等によってメタステーブル等の誤動作を引き起こす。また、出力クロック信号ＣＫＯＵＴのパルス幅が極端に細くなりパルス消滅が発生すると、内部コアの動作サイクルの遅延が発生する可能性がある。
【００１９】
複数の選択信号と複数の入力信号とが供給されて選択切り換えが行われるマルチプレクサにてグリッチを防止するために、上記特許文献１に記載された方法を採用することができる。上記特許文献１に記載の方法によれば、グリッチの発生を防止するために、複数の選択信号の１つの選択信号が選択レベルとされる際に、他の選択信号が非選択レベルとなるまで選択レベルの１つの選択信号がマルチプレクサに供給されることが防止される。
【００２０】
図３は、上記特許文献１の記載に基づいて本発明に先立って本発明者等によって検討されたクロック選択回路の構成を示す図である。
【００２１】
図３に示すクロック選択回路は、デコーダＤＥＣとしてのインバータＩＮＶ０、制御ユニットＣｎｔの第１と第２のＡＮＤ回路ＡＮＤ０、ＡＮＤ１および第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１、マルチプレクサＭｐｘによって構成されている。第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１は、遅延(Delay)型のフリップフロップである。これらのＤ型フリップフロップで、クロック信号ＣＫＩＮ０、ＣＫＩＮ１が供給される三角形記号はエッジトリガ端子を意味しており、三角形記号の丸印はクロック信号の立ち下がりエッジに応答して入力データが出力データに伝達されることを意味している。
【００２２】
選択信号ＳＥＬはインバータＩＮＶ０の入力端子と第２のＡＮＤ回路ＡＮＤ１の一方の入力端子とに供給され、インバータＩＮＶ０の出力信号は第１のＡＮＤ回路ＡＮＤ０の一方の入力端子に供給される。第１のＡＮＤ回路ＡＮＤ０の出力信号Ｄ０は第１のＤ型フリップフロップＤ−ＦＦ０のデータ入力端子に供給される一方、第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１は第２のＤ型フリップフロップＤ−ＦＦ１のデータ入力端子に供給される。第１のＤ型フリップフロップＤ−ＦＦ０の出力データＱ０は第２のＡＮＤ回路ＡＮＤ１の他方の入力端子としての反転入力端子に供給される一方、第２のＤ型フリップフロップＤ−ＦＦ１の出力データＱ１は第１のＡＮＤ回路ＡＮＤ０の他方の入力端子としての反転入力端子に供給される。
【００２３】
マルチプレクサＭｐｘは、第３と第４のＡＮＤ回路ＡＮＤ２、ＡＮＤ３と、ＯＲ回路ＯＲ０によって構成されている。第３のＡＮＤ回路ＡＮＤ２の一方の入力端子に第１のＤ型フリップフロップＤ−ＦＦ０の出力データＱ０が供給される一方、第４のＡＮＤ回路ＡＮＤ３の一方の入力端子に第２のＤ型フリップフロップＤ−ＦＦ１の出力データＱ１が供給される。また第１のＤ型フリップフロップＤ−ＦＦ０の立ち下がりエッジトリガ端子と第３のＡＮＤ回路ＡＮＤ２の他方の入力端子に第１のクロック信号ＣＫＩＮ０が供給される一方、第２のＤ型フリップフロップＤ−ＦＦ１の立ち下がりエッジトリガ端子と第４のＡＮＤ回路ＡＮＤ３の他方の入力端子に第２のクロック信号ＣＫＩＮ１が供給される。また、第３のＡＮＤ回路ＡＮＤ２の第１のクロック出力信号ＣＫＧ０と第４のＡＮＤ回路ＡＮＤ３の第２のクロック出力信号ＣＫＧ１はＯＲ回路ＯＲ０の一方の入力端子と他方の入力端子にそれぞれ供給され、ＯＲ回路ＯＲ０の出力端子からはクロック出力信号ＣＫＯＵＴが生成される。
【００２４】
図３の下に示すように、第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１は、マスター・スレーブ・ラッチによって構成される。マスター・スレーブ・ラッチのマスター・ラッチ(Master-Latch)とスレーブ・ラッチ(Slave-Latch)とは、それぞれスイッチＳＷとクロスカップル接続された第１と第２のインバータＩｎｖ１、Ｉｎｖ２とによって構成される。尚、第２のインバータＩｎｖ２は、非反転クロック信号ＣＫＩＮ０、ＣＫＩＮ１と反転クロック信号とによって駆動されるクロックドインバータによって構成される。例えば、第２のＤ型フリップフロップＤ−ＦＦ１では、第２のクロック信号ＣＫＩＮ１のハイレベル“１”の間に、マスター・ラッチ(Master-Latch)では第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１がオン状態のスイッチＳＷを介して第１のインバータＩｎｖ１の入力端子に伝達される。この間に、スレーブ・ラッチ(Slave-Latch)では、スイッチＳＷはオフ状態とされ、クロスカップル接続の第１と第２のインバータＩｎｖ１、Ｉｎｖ２によってホールドされた出力データＱ１が出力される。また、第２のＤ型フリップフロップＤ−ＦＦ１では、第２のクロック信号ＣＫＩＮ１のローレベル“０”の間に、マスター・ラッチ(Master-Latch)では、スイッチＳＷはオフ状態とされ、クロスカップル接続の第１と第２のインバータＩｎｖ１、Ｉｎｖ２によって第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１がホールドされる。この間に、マスター・ラッチ(Master-Latch)の第１のインバータＩｎｖ１の出力信号は、スレーブ・ラッチ(Slave-Latch)に伝達されて、オン状態のスイッチＳＷを介して第１のインバータＩｎｖ１の入力端子に伝達される。また更に、第１のＤ型フリップフロップＤ−ＦＦ０も、第１のクロック信号ＣＫＩＮ０に応答して第２のＤ型フリップフロップＤ−ＦＦ１と同様に動作する。その結果、第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１は、第１と第２のクロック信号ＣＫＩＮ０、ＣＫＩＮ１の立ち下がりエッジに応答して第１と第２の入力信号Ｄ０、Ｄ１のレベルを第１と第２の出力データＱ０、Ｑ１として出力する。
【００２５】
図４は、図３に示すクロック選択回路にて第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる様子を示す図である。
【００２６】
図４では、まずタイミングＴ０において、選択信号ＳＥＬがローレベル“０”(第１のクロック信号ＣＫＩＮ０の選択)からハイレベル“１”(第２のクロック信号ＣＫＩＮ１の選択)に変化する。タイミングＴ０から若干遅延したタイミングＴ１にて、第１のＡＮＤ回路ＡＮＤ０の出力信号Ｄ０がハイレベル“１”からローレベル“０”に変化する。次のタイミングＴ２にて、第１のクロック信号ＣＫＩＮ０が、ローレベル“０”からハイレベル“１”に立ち上がる。しかし、マスター・スレーブラッチで構成された第１のＤ型フリップフロップＤ−ＦＦ０は、第１のクロック信号ＣＫＩＮ０の立ち上がりエッジに応答してローレベル“０”の第１の入力信号Ｄ０を第１の出力データＱ０として出力せずに、ハイレベル“１”の第１の出力データＱ０を保持する。更に次のタイミングＴ３にて、第１のクロック信号ＣＫＩＮ０が、ハイレベル“１”からローレベル“０”に立ち下がる。従って、マスター・スレーブラッチで構成された第１のＤ型フリップフロップＤ−ＦＦ０は、第１のクロック信号ＣＫＩＮ０の立ち下がりエッジに若干遅延したタイミングＴ４にてローレベル“０”の第１の入力信号Ｄ０を第１の出力データＱ０として出力する。その結果、タイミングＴ０からタイミングＴ４までの期間で、第１のＤ型フリップフロップＤ−ＦＦ０の第１の出力データＱ０がハイレベル“１”に保持されている。従って、この期間では、第１のクロック信号ＣＫＩＮ０がマルチプレクサＭｐｘの第３のＡＮＤ回路ＡＮＤ２によって第１のクロック出力信号ＣＫＧ０として選択され、ＯＲ回路ＯＲ０のクロック出力信号ＣＫＯＵＴが生成される。
【００２７】
タイミングＴ４での第１のＤ型フリップフロップＤ−ＦＦ０の第１の出力データＱ０がハイレベル“１” からローレベル“０”への立ち下がりに若干遅延したタイミングＴ５で、第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１がローレベル“０”からハイレベル“１”に変化する。次のタイミングＴ６にて、第２のクロック信号ＣＫＩＮ１が、ハイレベル“１”からローレベル“０”に立ち下がる。従って、マスター・スレーブラッチで構成された第２のＤ型フリップフロップＤ−ＦＦ１は、第２のクロック信号ＣＫＩＮ１の立ち下がりエッジに若干遅延したタイミングＴ７でハイレベル“１”の第２の入力信号Ｄ１を第２の出力データＱ１として出力する。その結果、タイミングＴ７からの期間では、第２のＤ型フリップフロップＤ−ＦＦ１の第２の出力データＱ１がハイレベル“１”に保持されている。従って、この期間では、第２のクロック信号ＣＫＩＮ０１マルチプレクサＭｐｘの第４のＡＮＤ回路ＡＮＤ３によって第２のクロック出力信号ＣＫＧ１として選択され、ＯＲ回路ＯＲ０のクロック出力信号ＣＫＯＵＴが生成される。
【００２８】
図４に示した図３のクロック選択回路での第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わりでは、第１の入力信号Ｄ０と第１のクロック信号ＣＫＩＮ０のタイミング関係でも、第２の入力信号Ｄ１と第２のクロック信号ＣＫＩＮ１のタイミング関係でも、セットアップやホールドの違反が発生していない。従って、タイミングＴ０で選択信号ＳＥＬがローレベル“０”からハイレベル“１”に変化してから切り換え後の第２のクロック信号ＣＫＩＮ１を選択するハイレベル“１の第２の出力データＱ１が出力されるタイミングＴ７までの切り換えレイテンシを、比較的短時間とすることが可能である。
【００２９】
また図３に示したクロック選択回路では、第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換える際に第１のクロック信号ＣＫＩＮ０の選択の第１の出力データＱ０がハイレベル“１” からローレベル“０”へ非選択モードに遷移しない限り、第２のクロック信号ＣＫＩＮ１の選択の第２の出力データＱ１をローレベル“０” からハイレベル“１” へ選択モードに遷移することが不可能とされている。従って、図３に示したクロック選択回路によれば、非選択とされるクロック信号のハイレベル“１” からローレベル“０”への非選択モードの遷移の後に選択とされる他のクロック信号への切り換えが行われるので、グリッチの発生を防止することが可能となる。
【００３０】
図５は、図３に示すクロック選択回路で第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際にフリップフロップのセットアップ時間とホールド時間との違反が発生して、メタステーブルが発生する様子を示す図である。
【００３１】
セットアップ時間の違反は、クロック遷移に先行する非同期入力信号の状態変化がクロック遷移に余りにも近接している場合に、発生する。またホールド時間の違反は、クロック遷移に後続する非同期入力信号の状態変化が余りにもクロック遷移に近接している場合に、発生する。
【００３２】
図５のタイミング２１０１では、第１のクロック信号ＣＫＩＮ０の立ち下がりエッジの遷移に非同期入力信号である第１のＡＮＤ回路ＡＮＤ０の出力信号Ｄ０の立ち下がりの状態変化が余りにも近接しているので、第１のＤ型フリップフロップＤ−ＦＦ０のセットアップ時間とホールド時間との違反が発生するものである。従って、図５の次のタイミング２１０２では、第１のＤ型フリップフロップＤ−ＦＦ０のメタステーブルの障害が発生する。すなわち、第１のＤ型フリップフロップＤ−ＦＦ０の第１の出力データＱ０は比較的長い時間の間にハイレベル“１”とローレベル“０”との間の中間レベルを維持するので、ハイレベル“１”またはローレベル“０”に回復するのにも比較的長い時間を必要としている。このメタステーブルの比較的長い時間は、第２のクロック信号ＣＫＩＮ１の１周期と仮定している。中間レベルの第１のＤ型フリップフロップＤ−ＦＦ０の第１の出力データＱ０は第２のＡＮＤ回路ＡＮＤ１の反転入力端子に供給されるので、第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１も比較的長い時間にて中間レベルとなる。一方、第２のＤ型フリップフロップＤ−ＦＦ１は、第２のクロック信号ＣＫＩＮ１の立ち下がりエッジに応答して第２の入力信号Ｄ１のレベルを第２の出力データＱ１として出力するものである。その結果、中間レベルの第２の入力信号Ｄ１が第２のＤ型フリップフロップＤ−ＦＦ１の第２の出力データＱ１として比較的長い時間に出力されるものとなる。
【００３３】
従って、マルチプレクサＭｐｘの第４のＡＮＤ回路ＡＮＤ３の第２のクロック出力信号ＣＫＧ１にも中間レベルが生成され、図５のタイミング２１０３では、ＯＲ回路ＯＲ０のクロック出力信号ＣＫＯＵＴに中間レベルが生成される一方、パルス幅の短いグリッチが発生されるものとなる。
【００３４】
このように、図３に示したクロック選択回路を使用して第１のクロック信号ＣＫＩＮ０と第２のクロック信号ＣＫＩＮ１との選択の切り換えを行う場合は、ある確率でメタステーブルの障害が発生するものである。メタステーブルの障害の発生確率は、セットアップ時間とホールド時間との違反が発生する確率に依存する。この違反が発生する確率は、セットアップ時間とホールド時間との違反が発生する時間幅と非同期入力信号およびクロック信号の周波数とに依存する。
【００３５】
一般的には、通常の単一のフリップフロップで非同期信号をサンプリングするシングルステージシンクロナイザの場合では、例えば、製品寿命１０年で市場不良率０．１％、すなわち同時に動作する製品１,０００個の１個が１０年に１回障害を起こすと言う現実的な信頼性を保証することはできない。このように非常に高い動作信頼性で、グリッチを防止して、メタステーブルの障害の確率が低減され、かつ高速なクロック切り換えを可能とするクロック選択回路をマイクロコントローラ、システムＬＳＩ等の半導体集積回路に搭載することが要求されている。
【００３６】
本発明は、以上のような本発明に先立った本発明者等の検討の結果、なされたものである。
【００３７】
従って、本発明の目的とするところは、クロック選択回路の最終選択出力端子でのメタステーブルの障害の発生確率を低減することにある。
【００３８】
また本発明の他の目的とするところは、クロック選択回路の最終選択出力端子でのグリッチを防止することにある。
【００３９】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００４０】
本願において開示される発明のうちの代表的なものについて簡単に説明すれば下記のとおりである。
【００４１】
すなわち、本発明の代表的な実施の形態は、デコーダ(ＤＥＣ)と、制御ユニット(Ｃｎｔ)と、マルチプレクサ(Ｍｐｘ)とを有するクロック選択回路を内蔵する半導体集積回路である。
【００４２】
デコーダ(ＤＥＣ)に選択信号(ＳＥＬ)が供給され、制御ユニット(Ｃｎｔ)に第１と第２のクロック信号(ＣＫＩＮ０、ＣＫＩＮ１)とデコーダ(ＤＥＣ)からの第１と第２の選択出力信号が供給され、マルチプレクサ(Ｍｐｘ)に第１と第２のクロック信号と前記制御ユニット(Ｃｎｔ)からの第１と第２の選択制御信号(Ｑ´０、Ｑ´´０、Ｑ´１、Ｑ´´１)とが供給される。
【００４３】
前記制御ユニット(Ｃｎｔ)は、第１と第２のゲート回路(ＡＮＤ０、ＡＮＤ１)を含み、第１と第２のゲート回路の一方の入力端子に前記デコーダからの前記第１と前記第２の選択出力信号が供給される。
【００４４】
前記制御ユニット(Ｃｎｔ)は、前記第１のゲート回路(ＡＮＤ０)の出力端子と前記第２のゲート回路(ＡＮＤ１)の他方の入力端子との間に直列接続された第１と第２のＤ型フリップフロップ(Ｄ−ＦＦ０、Ｄ−ＦＦ２)と、前記第２のゲート回路(ＡＮＤ１)の出力端子と前記第１のゲート回路(ＡＮＤ０)の他方の入力端子との間に直列接続された第３と第４のＤ型フリップフロップ(Ｄ−ＦＦ１、Ｄ−ＦＦ３)とを含むことを特徴とする(図６参照)。
【発明の効果】
【００４５】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。
【００４６】
すなわち、本発明によれば、クロック選択回路の最終選択出力端子でのメタステーブルの障害の発生確率を低減することができる。
【図面の簡単な説明】
【００４７】
【図１】図１は、本発明に先立って本発明者等によって検討されたクロック選択回路としてのマルチプレクサの構成を示す図である。
【図２】図２は、図１に示したクロック選択回路としてのマルチプレクサの各部の波形を示す図である。
【図３】図３は、特許文献１の記載に基づいて本発明に先立って本発明者等によって検討されたクロック選択回路の構成を示す図である。
【図４】図４は、図３に示すクロック選択回路にて第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる様子を示す図である。
【図５】図５は、図３に示すクロック選択回路で第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際にフリップフロップのセットアップ時間とホールド時間との違反が発生して、メタステーブルが発生する様子を示す図である。
【図６】図６は、本発明の実施の形態１の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【図７】図７は、図６に示す本発明の実施の形態１によるクロック選択回路で第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際の各部の波形を説明する図である。
【図８】図８は、本発明の実施の形態２の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【図９】図９は、図８に示す本発明の実施の形態２によるクロック選択回路で第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際の各部の波形を説明する図である。
【図１０】図１０は、本発明の実施の形態３の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【図１１】図１１は、図１０に示す本発明の実施の形態３によるクロック選択回路で第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際の各部の波形を説明する図である。
【図１２】図１２は、本発明の実施の形態４の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【図１３】図１３は、図１２に示す本発明の実施の形態４によるクロック選択回路で第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際の各部の波形を説明する図である。
【図１４】図１４は、図１２のクロック選択回路のマルチプレクサＭｐｘの第４のＡＮＤ回路ＡＮＤ３の構成を示す図である。
【図１５】図１５は、本発明の実施の形態５の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【図１６】図１６は、本発明の実施の形態６の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【図１７】図１７は、図１６に示す本発明の実施の形態６によるクロック選択回路で第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際の各部の波形を説明する図である。
【図１８】図１８は、本発明の実施の形態７の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【図１９】図１９は、図１８に示す本発明の実施の形態７によるクロック選択回路で第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際の各部の波形を説明する図である。
【図２０】図２０は、本発明の実施の形態８の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【図２１】図２１は、本発明の実施の形態９の半導体集積回路の構成を示す図である。
【発明を実施するための形態】
【００４８】
１．実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
【００４９】
〔１〕本発明の代表的な実施の形態は、選択信号(ＳＥＬ)が供給されるデコーダ(ＤＥＣ)と、第１クロック信号(ＣＫＩＮ０)および第２クロック信号(ＣＫＩＮ１)と前記デコーダからの第１選択出力信号および第２選択出力信号が少なくとも供給される制御ユニット(Ｃｎｔ)と、前記第１クロック信号および前記第２クロック信号と前記制御ユニットからの第１選択制御信号(Ｑ´０、Ｑ´´０)および第２選択制御信号(Ｑ´１、Ｑ´´１)とが少なくとも供給されるマルチプレクサ(Ｍｐｘ)とを有するクロック選択回路を内蔵する半導体集積回路である。
【００５０】
前記制御ユニット(Ｃｎｔ)は、前記デコーダからの前記第１選択出力信号が一方の入力端子に供給される第１のゲート回路(ＡＮＤ０)と、前記デコーダからの前記第２選択出力信号が一方の入力端子に供給される第２のゲート回路(ＡＮＤ１)とを含む。
【００５１】
前記制御ユニット(Ｃｎｔ)は、前記第１のゲート回路(ＡＮＤ０)の出力端子と前記第２のゲート回路(ＡＮＤ１)の他方の入力端子との間に直列接続された第１と第２のＤ型フリップフロップ(Ｄ−ＦＦ０、Ｄ−ＦＦ２)と、前記第２のゲート回路(ＡＮＤ１)の出力端子と前記第１のゲート回路(ＡＮＤ０)の他方の入力端子との間に直列接続された第３と第４のＤ型フリップフロップ(Ｄ−ＦＦ１、Ｄ−ＦＦ３)とを含むことを特徴とするものである(図６、図８、図１０、図１２、図１５、図１６、図１８、図２０参照)。
【００５２】
前記実施の形態によれば、前記クロック選択回路に含まれた前記制御ユニット(Ｃｎｔ)の第１と第２のＤ型フリップフロップ(Ｄ−ＦＦ０、Ｄ−ＦＦ２)および第３と第４のＤ型フリップフロップ(Ｄ−ＦＦ１、Ｄ−ＦＦ３)は上記非特許文献１に記載のツーステージシンクロナイザをそれぞれ構成するものである。従って、前記クロック選択回路の前記マルチプレクサ(Ｍｐｘ)の最終出力端子からのクロック出力信号(ＣＫＯＵＴ)でのメタステーブルの障害の発生確率を低減することができる(図７、図９、図１１、図１３、図１７、図１９参照)。
【００５３】
好適な実施の形態では、前記直列接続の前記第１と前記第２のＤ型フリップフロップ(Ｄ−ＦＦ０、Ｄ−ＦＦ２)を介して前記第２のゲート回路(ＡＮＤ１)の前記他方の入力端子に前記第１のゲート回路(ＡＮＤ０)の前記出力端子の非選択レベルの信号が供給されることによって、前記第２クロック信号(ＣＫＩＮ１)が前記制御ユニット(Ｃｎｔ)の前記第２のゲート回路(ＡＮＤ１)と前記マルチプレクサ(Ｍｐｘ)とを介してクロック出力信号(ＣＫＯＵＴ)として出力可能とされるものである。
【００５４】
前記直列接続の前記第３と前記第４のＤ型フリップフロップ(Ｄ−ＦＦ１、Ｄ−ＦＦ３)を介して前記第１のゲート回路(ＡＮＤ０)の前記他方の入力端子に前記第２のゲート回路(ＡＮＤ１)の前記出力端子の非選択レベルの信号が供給されることによって、前記第１クロック信号(ＣＫＩＮ０)が前記制御ユニット(Ｃｎｔ)の前記第１のゲート回路(ＡＮＤ０)と前記マルチプレクサ(Ｍｐｘ)とを介して前記クロック出力信号(ＣＫＯＵＴ)として出力可能とされるものである。
【００５５】
前記好適な実施の形態によれば、第１クロック信号(ＣＫＩＮ０)と第２クロック信号(ＣＫＩＮ１)との排他選択が可能となり、グリッチの発生を防止することが可能となる。
【００５６】
他の好適な実施の形態では、前記直列接続の前記第１と前記第２のＤ型フリップフロップの後段側の前記第２のＤ型フリップフロップ(Ｄ−ＦＦ２)の出力データが、前記第１選択制御信号(Ｑ´０、Ｑ´´０)として前記マルチプレクサ(Ｍｐｘ)に伝達されるとともに前記第２のゲート回路(ＡＮＤ１)の前記他方の入力端子に伝達される。
【００５７】
前記直列接続の前記第３と前記第４のＤ型フリップフロップの後段側の前記第４のＤ型フリップフロップ(Ｄ−ＦＦ３)の出力データが、前記第２選択制御信号(Ｑ´１、Ｑ´´１)として前記マルチプレクサ(Ｍｐｘ)に伝達されるとともに前記第１のゲート回路(ＡＮＤ０)の前記他方の入力端子に伝達される(図６、図８、図１０参照)。
【００５８】
より好適な実施の形態は、前記制御ユニット(Ｃｎｔ)は、第１と第２のラッチ(ＦＦ０、ＦＦ１)を更に具備する。
【００５９】
前記第１のラッチ(ＦＦ０)のデータ入力端子と前記第２のＤ型フリップフロップ(Ｄ−ＦＦ２)のデータ入力端子とには前記直列接続の前記第１と前記第２のＤ型フリップフロップの前段側の前記第１のＤ型フリップフロップ(Ｄ−ＦＦ０)の出力データが並列に供給され、前記第１のラッチ(ＦＦ０)の出力データが前記第１選択制御信号(Ｑ´０)として前記マルチプレクサ(Ｍｐｘ)に伝達される。
【００６０】
前記第２のラッチ(ＦＦ１)のデータ入力端子と前記第４のＤ型フリップフロップ(Ｄ−ＦＦ３)のデータ入力端子とには前記直列接続の前記第３と前記第４のＤ型フリップフロップの前段側の前記第３のＤ型フリップフロップ(Ｄ−ＦＦ１)の出力データが並列に供給され、前記第２のラッチ(ＦＦ１)の出力データが前記第２選択制御信号(Ｑ´１)として前記マルチプレクサ(Ｍｐｘ)に伝達される(図１２、図１５、図１６、図１８、図２０参照)。
【００６１】
他のより好適な実施の形態は、前記第１のラッチ(ＦＦ０)のゲート制御端子(Ｇ)と前記直列接続の前記第１と前記第２のＤ型フリップフロップの両エッジトリガ端子とは、前記第１クロック信号(ＣＫＩＮ０)に応答する。
【００６２】
前記第２のラッチ(ＦＦ１)のゲート制御端子(Ｇ)と前記直列接続の前記第３と前記第４のＤ型フリップフロップの両エッジトリガ端子とは、前記第２クロック信号(ＣＫＩＮ１)に応答する(図１２、図１５、図１６、図１８、図２０参照)。
【００６３】
更に好適な実施の形態は、前記制御ユニット(Ｃｎｔ)は、第１と第２の遅延回路(ＤＥＬＡＹ０、ＤＥＬＡＹ１)を更に具備する。
【００６４】
前記第１の遅延回路(ＤＥＬＡＹ０)の入力端子は前記前段側の前記第１のＤ型フリップフロップ(Ｄ−ＦＦ０)の前記エッジトリガ端子に接続され、前記第１の遅延回路の出力端子は前記後段側の前記第２のＤ型フリップフロップ(Ｄ−ＦＦ２)の前記エッジトリガ端子に接続されている。
【００６５】
前記第２の遅延回路(ＤＥＬＡＹ１)の入力端子は前記前段側の前記第３のＤ型フリップフロップ(Ｄ−ＦＦ１)の前記エッジトリガ端子に接続され、前記第２の遅延回路の出力端子は前記後段側の前記第４のＤ型フリップフロップ(Ｄ−ＦＦ３)の前記エッジトリガ端子に接続されている(図１６、図１８、図２０参照)。
【００６６】
他の更に好適な実施の形態では、前記第１のラッチ(ＦＦ０)の前記ゲート制御端子(Ｇ)は、前記第１の遅延回路(ＤＥＬＡＹ０)の前記入力端子と前記出力端子とのいずれかの端子に接続されている。
【００６７】
前記第２のラッチ(ＦＦ１)の前記ゲート制御端子(Ｇ)は、前記第２の遅延回路(ＤＥＬＡＹ１)の前記入力端子と前記出力端子とのいずれかの端子に接続されている(図１６、図１８、図２０参照)。
【００６８】
具体的な一つの実施の形態では、前記マルチプレクサ(Ｍｐｘ)は、第３と第４と第５のゲート回路(ＡＮＤ２、ＡＮＤ３、ＯＲ０)を具備する。
【００６９】
前記第３のゲート回路(ＡＮＤ２)の一方の入力端子と他方の入力端子とは、前記制御ユニットからの前記第１選択制御信号(Ｑ´０、Ｑ´´０)と前記第１クロック信号(ＣＫＩＮ０)とにそれぞれ応答する。
【００７０】
前記第４のゲート回路(ＡＮＤ３)の一方の入力端子と他方の入力端子とは、前記制御ユニットからの前記第２選択制御信号(Ｑ´１、Ｑ´´１)と前記第２クロック信号(ＣＫＩＮ１)とにそれぞれ応答する。
【００７１】
前記第５のゲート回路(ＯＲ０)に前記第３のゲート回路(ＡＮＤ２)から生成される第１のクロック出力信号(ＣＫＧ０)と前記第４のゲート回路(ＡＮＤ３)から生成される第２のクロック出力信号(ＣＫＧ１)とが供給されることによって、前記第５のゲート回路(ＯＲ０)は前記マルチプレクサ(Ｍｐｘ)の最終出力としてのクロック出力信号(ＣＫＯＵＴ)を生成するものである(図６、図８、図１０、図１２、図１５、図１６、図１８、図２０参照)。
【００７２】
最も具体的な実施の形態による半導体集積回路は、前記第１クロック信号を生成する第１クロック信号源(１)と、前記第２クロック信号を生成する第２クロック信号源(２)とを更に具備する。
【００７３】
前記第１クロック信号源(１)から生成される前記第１クロック信号と前記第２クロック信号源(２)から生成される前記第２クロック信号とのいずれかが、前記選択信号(ＳＥＬ)に応答して、前記クロック選択回路によって前記マルチプレクサ(Ｍｐｘ)の前記最終出力として生成されるものである。
【００７４】
〔２〕本発明の別の観点の代表的な実施の形態は、選択信号(ＳＥＬ)が供給されるデコーダ(ＤＥＣ)と、第１クロック信号(ＣＫＩＮ０)および第２クロック信号(ＣＫＩＮ１)と前記デコーダからの第１選択出力信号および第２選択出力信号が少なくとも供給される制御ユニット(Ｃｎｔ)と、前記第１クロック信号および前記第２クロック信号と前記制御ユニットからの第１選択制御信号(Ｑ´０、Ｑ´´０)および第２選択制御信号(Ｑ´１、Ｑ´´１)とが少なくとも供給されるマルチプレクサ(Ｍｐｘ)とを有するクロック選択回路を内蔵する半導体集積回路の動作方法である。
【００７５】
前記制御ユニット(Ｃｎｔ)は、前記デコーダからの前記第１選択出力信号が一方の入力端子に供給される第１のゲート回路(ＡＮＤ０)と、前記デコーダからの前記第２選択出力信号が一方の入力端子に供給される第２のゲート回路(ＡＮＤ１)とを含む。
【００７６】
前記制御ユニット(Ｃｎｔ)は、前記第１のゲート回路(ＡＮＤ０)の出力端子と前記第２のゲート回路(ＡＮＤ１)の他方の入力端子との間に直列接続された第１と第２のＤ型フリップフロップ(Ｄ−ＦＦ０、Ｄ−ＦＦ２)と、前記第２のゲート回路(ＡＮＤ１)の出力端子と前記第１のゲート回路(ＡＮＤ０)の他方の入力端子との間に直列接続された第３と第４のＤ型フリップフロップ(Ｄ−ＦＦ１、Ｄ−ＦＦ３)とを含むものである。
【００７７】
前記選択信号(ＳＥＬ)を第１の状態(ローレベル“０”)に設定することによって、前記第１クロック信号(ＣＫＩＮ０)が前記マルチプレクサ(Ｍｐｘ)の出力からクロック出力信号(ＣＫＯＵＴ)として出力可能とされる。
【００７８】
前記選択信号(ＳＥＬ)を前記第１の状態(ローレベル“０”)と異なる第２の状態(ハイレベル“１”)に設定することによって、前記第２クロック信号(ＣＫＩＮ０)が前記マルチプレクサ(Ｍｐｘ)の前記出力から前記クロック出力信号(ＣＫＯＵＴ)として出力可能とされることを特徴とする(図６、図８、図１０、図１２、図１５、図１６、図１８、図２０参照)。
【００７９】
前記実施の形態によれば、前記クロック選択回路に含まれた前記制御ユニット(Ｃｎｔ)の第１と第２のＤ型フリップフロップ(Ｄ−ＦＦ０、Ｄ−ＦＦ２)および第３と第４のＤ型フリップフロップ(Ｄ−ＦＦ１、Ｄ−ＦＦ３)は上記非特許文献１に記載のツーステージシンクロナイザをそれぞれ構成するものである。従って、前記クロック選択回路の前記マルチプレクサ(Ｍｐｘ)の最終出力端子からのクロック出力信号(ＣＫＯＵＴ)でのメタステーブルの障害の発生確率を低減することができる(図７、図９、図１１、図１３、図１７、図１９参照)。
【００８０】
２．実施の形態の詳細
次に、実施の形態について更に詳述する。尚、発明を実施するための最良の形態を説明するための全図において、前記の図と同一の機能を有する部品には同一の符号を付して、その繰り返しの説明は省略する。
【００８１】
［実施の形態１］
《クロックセレクタ回路の構成》
図６は、本発明の実施の形態１の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【００８２】
図６に示すクロック選択回路は、デコーダＤＥＣとしてのインバータＩＮＶ０、制御ユニットＣｎｔの第１と第２のＡＮＤ回路ＡＮＤ０、ＡＮＤ１と第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１と第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３、マルチプレクサＭｐｘにより構成されている。
【００８３】
図６に示すクロック選択回路は、図３に示すクロック選択回路と比較すると、第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３が追加されている。従って、図６に示したクロック選択回路では、第１のＤ型フリップフロップＤ−ＦＦ０と第３のＤ型フリップフロップＤ−ＦＦ２とがツーステージシンクロナイザを構成する一方、第２のＤ型フリップフロップＤ−ＦＦ１と第４のＤ型フリップフロップＤ−ＦＦ３とがツーステージシンクロナイザを構成している。
【００８４】
選択信号ＳＥＬはインバータＩＮＶ０の入力端子と第２のＡＮＤ回路ＡＮＤ１の一方の入力端子とに供給され、インバータＩＮＶ０の出力信号は第１のＡＮＤ回路ＡＮＤ０の一方の入力端子に供給される。第１のＡＮＤ回路ＡＮＤ０の出力信号Ｄ０は第１のＤ型フリップフロップＤ−ＦＦ０のデータ入力端子に供給される一方、第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１は第２のＤ型フリップフロップＤ−ＦＦ１のデータ入力端子に供給される。第１のＤ型フリップフロップＤ−ＦＦ０の出力データＱ０は第３のＤ型フリップフロップＤ−ＦＦ２のデータ入力端子に供給され、第２のＤ型フリップフロップＤ−ＦＦ１の出力データＱ１は第４のＤ型フリップフロップＤ−ＦＦ３のデータ入力端子に供給される。第３のＤ型フリップフロップＤ−ＦＦ２の出力データＱ´０は第２のＡＮＤ回路ＡＮＤ１の他方の入力端子としての反転入力端子に供給される一方、第４のＤ型フリップフロップＤ−ＦＦ３の出力データＱ´１は第１のＡＮＤ回路ＡＮＤ０の他方の入力端子としての反転入力端子に供給される。
【００８５】
マルチプレクサＭｐｘは、第３と第４のＡＮＤ回路ＡＮＤ２、ＡＮＤ３と、ＯＲ回路ＯＲ０によって構成されている。第３のＡＮＤ回路ＡＮＤ２の一方の入力端子に第３のＤ型フリップフロップＤ−ＦＦ２の出力データＱ´０が供給される一方、第４のＡＮＤ回路ＡＮＤ３の一方の入力端子に第４のＤ型フリップフロップＤ−ＦＦ３の出力データＱ´１が供給される。第１のＤ型フリップフロップＤ−ＦＦ０の立ち上がりエッジトリガ端子と第３のＤ型フリップフロップＤ−ＦＦ２の立ち上がりエッジトリガ端子と第３のＡＮＤ回路ＡＮＤ２の他方の入力端子に第１のクロック信号ＣＫＩＮ０が供給される一方、第２のＤ型フリップフロップＤ−ＦＦ１の立ち上がりエッジトリガ端子と第４のＤ型フリップフロップＤ−ＦＦ３の立ち上がりエッジトリガ端子と第４のＡＮＤ回路ＡＮＤ３の他方の入力端子に第２のクロック信号ＣＫＩＮ１が供給される。また、第３のＡＮＤ回路ＡＮＤ２の第１のクロック出力信号ＣＫＧ０と第４のＡＮＤ回路ＡＮＤ３の第２のクロック出力信号ＣＫＧ１はＯＲ回路ＯＲ０の一方の入力端子と他方の入力端子にそれぞれ供給され、ＯＲ回路ＯＲ０の出力端子からはクロック出力信号ＣＫＯＵＴが生成される。
【００８６】
図６の下に示すように、第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１、第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３は、マスター・スレーブ・ラッチによって構成される。マスター・スレーブ・ラッチのマスター・ラッチ(Master-Latch)とスレーブ・ラッチ(Slave-Latch)とは、それぞれスイッチＳＷとクロスカップル接続された第１と第２のインバータＩｎｖ１、Ｉｎｖ２とによって構成される。尚、第２のインバータＩｎｖ２は、非反転クロック信号ＣＫＩＮ０、ＣＫＩＮ１と反転クロック信号とによって駆動されるクロックドインバータによって構成される。例えば、第２のＤ型フリップフロップＤ−ＦＦ１では、第２のクロック信号ＣＫＩＮ１のローレベル“０”の間に、マスター・ラッチ(Master-Latch)では第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１がオン状態のスイッチＳＷを介して第１のインバータＩｎｖ１の入力端子に伝達される。この間に、スレーブ・ラッチ(Slave-Latch)では、スイッチＳＷはオフ状態とされ、クロスカップル接続の第１と第２のインバータＩｎｖ１、Ｉｎｖ２によってホールドされた出力データＱ１が出力される。また、第２のＤ型フリップフロップＤ−ＦＦ１では、第２のクロック信号ＣＫＩＮ１のハイレベル“１”の間に、マスター・ラッチ(Master-Latch)では、スイッチＳＷはオフ状態とされ、クロスカップル接続の第１と第２のインバータＩｎｖ１、Ｉｎｖ２によって第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１がホールドされる。この間に、マスター・ラッチ(Master-Latch)の第１のインバータＩｎｖ１の出力信号は、スレーブ・ラッチ(Slave-Latch)に伝達されて、オン状態のスイッチＳＷを介して第１のインバータＩｎｖ１の入力端子に伝達される。また更に、第１のＤ型フリップフロップＤ−ＦＦ０も、第１のクロック信号ＣＫＩＮ０に応答して第２のＤ型フリップフロップＤ−ＦＦ１と同様に動作する。その結果、第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１、第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３は、第１と第２のクロック信号ＣＫＩＮ０、ＣＫＩＮ１の立ち上がりエッジに応答して入力信号のレベルを出力データとして出力する。
【００８７】
また図６に示すクロック選択回路では、選択信号ＳＥＬがローレベル“０”の間には第１のクロック信号ＣＫＩＮ０が選択されマルチプレクサＭｐｘのクロック出力信号ＣＫＯＵＴから出力され、選択信号ＳＥＬがハイレベル“１”の間には第２のクロック信号ＣＫＩＮ１が選択されてマルチプレクサＭｐｘのクロック出力信号ＣＫＯＵＴから出力される。
【００８８】
《メタステーブルの解消》
図６に示すクロック選択回路で、非同期信号としての第１と第２のＡＮＤ回路ＡＮＤ０、ＡＮＤ１の出力信号Ｄ０、Ｄ１は１段目の第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１にラッチされ、第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１は出力データＱ０、Ｑ１を出力する。１段目の第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１の出力データＱ０、Ｑ１は、更に２段目の第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３に第１と第２のクロック信号ＣＫＩＮ０、ＣＫＩＮ１の１周期後にラッチされる。従って、もし１段目の第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１においてセットアップ時間とホールド時間の違反が発生して、メタステーブル状態に陥ったと想定する。そうしても、メタステーブルがクロック１周期以内に解決してハイレベルまたはローレベルにレベルが確定すれば２段目の第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３は安定したデータをラッチすることができる。このようにして、図６に示すクロック選択回路では、複数の信号選択経路のそれぞれにツーステージシンクロナイザを使用することによって、クロック１周期以内に解決するメタステーブルを無害化できるので、クロック選択回路の選択出力でメタステーブルの障害の発生確率を低減でき、実用的に十分な動作信頼性を確保することができる。
【００８９】
《クロック選択回路の各部の波形》
図７は、図６に示す本発明の実施の形態１によるクロック選択回路で第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際の各部の波形を説明する図である。
【００９０】
また、図６に示すクロック選択回路では、上述したように第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１、第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３は、第１と第２のクロック信号ＣＫＩＮ０、ＣＫＩＮ１の立ち上がりエッジに応答して入力信号のレベルを出力データとして出力する。
【００９１】
図７のタイミング４０１でも、第１のクロック信号ＣＫＩＮ０の立ち上がりエッジの遷移に非同期入力信号である第１のＡＮＤ回路ＡＮＤ０の出力信号Ｄ０の立ち下がりの状態変化が余りにも近接しているので、第１のＤ型フリップフロップＤ−ＦＦ０のセットアップ時間とホールド時間との違反が発生するものである。従って、次のタイミング４０３で、第１のＤ型フリップフロップＤ−ＦＦ０のメタステーブルの障害が発生する。すなわち、第１のＤ型フリップフロップＤ−ＦＦ０の第１の出力データＱ０は比較的長い時間の間にハイレベル“１”とローレベル“０”との間の中間レベルを維持するので、ハイレベル“１”またはローレベル“０”に回復するのにも比較的長い時間を必要としている。このメタステーブルの比較的長い時間は、第２のクロック信号ＣＫＩＮ１の略１周期に対応している。しかし、タイミング４０３でのメタステーブルの障害の終了の後には、第１のＤ型フリップフロップＤ−ＦＦ０の第１の出力データＱ０はローレベル“０”またはハイレベル“１” に回復する。レベル回復後の第１の出力データＱ０は第１のクロック信号ＣＫＩＮ０の立ち上がりエッジのタイミングにて第３のＤ型フリップフロップＤ−ＦＦ２にラッチされ、第３のＤ型フリップフロップＤ−ＦＦ２の出力データＱ´０もこのタイミングにてローレベル“０”またはハイレベル“１” に確定する。
【００９２】
この第３のＤ型フリップフロップＤ−ＦＦ２の出力データＱ´０は第２のＡＮＤ回路ＡＮＤ１の反転入力端子に供給されるので、第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１も第１のクロック信号ＣＫＩＮ０の立ち上がりエッジのタイミングにてローレベル“０”またはハイレベル“１” に確定する。第２のＤ型フリップフロップＤ−ＦＦ１は、第２のクロック信号ＣＫＩＮ１の立ち下がりエッジにて第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１のレベルを第２の出力データＱ１として出力する。この時のタイミング４０２でも、第２のクロック信号ＣＫＩＮ１の立ち上がりエッジの遷移に非同期入力信号としての第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１の状態の変化が余りにも近接しているので、第２のＤ型フリップフロップＤ−ＦＦ１のセットアップ時間とホールド時間との違反が発生するものである。従って、次のタイミング４０４で、第２のＤ型フリップフロップＤ−ＦＦ１のメタステーブルの障害が発生する。すなわち、第２のＤ型フリップフロップＤ−ＦＦ１の第２の出力データＱ１は比較的長い時間の間にハイレベル“１”とローレベル“０”との間の中間レベルを維持するので、ハイレベル“１”またはローレベル“０”に回復するのにも比較的長い時間を必要としている。このメタステーブルの比較的長い時間は、第２のクロック信号ＣＫＩＮ１の略１周期に対応している。しかし、タイミング４０４のメタステーブルの障害の終了後に、第２のＤ型フリップフロップＤ−ＦＦ１の第２の出力データＱ１はハイレベル“１””またはローレベル“０に回復する。レベル回復後の第２の出力データＱ１は第２のクロック信号ＣＫＩＮ１の立ち上がりエッジのタイミングにて第４のＤ型フリップフロップＤ−ＦＦ３にラッチされ、第４のＤ型フリップフロップＤ−ＦＦ３の出力データＱ´１もこのタイミングにてハイレベル“１”またはローレベル“０”に確定する。
【００９３】
このように、タイミング４０１、４０２でセットアップ時間とホールド時間との違反が発生して、タイミング４０３、４０４でメタステーブルの障害が発生するが、第１と第２のクロック信号ＣＫＩＮ０、ＣＫＩＮ１の１周期の間にメタステーブルが解決される。このように図６に示すクロック選択回路を使用することによって、クロック選択回路の最終選択出力端子としての出力クロック信号ＣＫＯＵＴでのメタステーブルの障害の発生確率を低減することができる。更に、マイクロコントローラ、システムＬＳＩ等の半導体集積回路に搭載されるクロック選択回路の動作信頼性を、向上することができる。
【００９４】
しかし、図６に示すクロック選択回路は、第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１、第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３のツーステージシンクロナイザと、第３と第４のＡＮＤ回路ＡＮＤ２、ＡＮＤ３と、ＯＲ回路ＯＲ０を含むマルチプレクサＭｐｘとによって、比較的単純に構成されている。このように比較的単純な構成である図６に示すクロック選択回路では、ツーステージシンクロナイザの信号遅延によって種々の問題が発生する。第１の問題は、第３のＤ型フリップフロップＤ−ＦＦ２の出力データＱ´０の立ち下がりの遅延により、マルチプレクサＭｐｘの第３のＡＮＤ回路ＡＮＤ２の第１のクロック出力信号ＣＫＧ０とＯＲ回路ＯＲ０のクロック出力信号ＣＫＯＵＴとにそれぞれ小さなパルス幅のグリッチ４０５が発生することである。第２の問題は、第４のＤ型フリップフロップＤ−ＦＦ２の出力データＱ´１の立ち下がりの遅延ＴＣＱによって、マルチプレクサＭｐｘの第４のＡＮＤ回路ＡＮＤ３の第２のクロック出力信号ＣＫＧ１とＯＲ回路ＯＲ０のクロック出力信号ＣＫＯＵＴとの最初のパルスの立ち上がり部分４０６の波形が消失することである。
【００９５】
［実施の形態２］
《他のクロックセレクタ回路の構成》
図８は、本発明の実施の形態２の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【００９６】
図８に示すクロック選択回路は、図６に示すクロック選択回路のツーステージシンクロナイザの信号遅延によって発生した種々の問題を解消するものである。
【００９７】
図８に示す本発明の実施の形態２によるクロック選択回路が図６に示すクロック選択回路と相違するのは、図６のクロック選択回路の制御ユニットＣｎｔに第１と第２のラッチＦＦ０、ＦＦ１が追加されていることである。第１のラッチＦＦ０のデータ入力端子と反転ゲート制御端子Ｇには第３のＤ型フリップフロップＤ−ＦＦ２の出力データＱ´０と第１のクロック信号ＣＫＩＮ０がそれぞれ供給され、第１のラッチＦＦ０の出力データＱ´´０はマルチプレクサＭｐｘの第３のＡＮＤ回路ＡＮＤ２の一方の入力端子に供給される。第２のラッチＦＦ１のデータ入力端子と反転ゲート制御端子Ｇに第４のＤ型フリップフロップＤ−ＦＦ３の出力データＱ´１と第２のクロック信号ＣＫＩＮ１がそれぞれ供給され、第２のラッチＦＦ１の出力データＱ´´１はマルチプレクサＭｐｘの第４のＡＮＤ回路ＡＮＤ３の一方の入力端子に供給される。
【００９８】
尚、図８に示すクロック選択回路に追加された第１と第２のラッチＦＦ０、ＦＦ１は、例えば図６の下に示されたマスター・ラッチ(Master-Latch)のスイッチＳＷとクロスカップル接続された第１と第２のインバータＩｎｖ１、Ｉｎｖ２と出力インバータとによって構成される。従って、図８に示すクロック選択回路に追加された第１と第２のラッチＦＦ０、ＦＦ１は、反転ゲート制御端子Ｇにローレベルの第１と第２のクロック信号ＣＫＩＮ０、ＣＫＩＮ１が供給されている間に、データ入力端子の入力レベルをデータ出力に伝達する。それに対して、第１と第２のラッチＦＦ０、ＦＦ１は、反転ゲート制御端子Ｇにハイレベルの第１と第２のクロック信号ＣＫＩＮ０、ＣＫＩＮ１が供給されている間に、データ入力端子の入力レベルがデータ出力に伝達されるのを禁止して、その時点でのデータ出力のレベルを保持する。それ以外の図８のクロック選択回路の構成は、図６のクロック選択回路の構成と同一である。
【００９９】
《他のクロック選択回路の各部の波形》
図９は、図８に示す本発明の実施の形態２によるクロック選択回路で第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際の各部の波形を説明する図である。
【０１００】
図９のタイミング４０１でも、第１のクロック信号ＣＫＩＮ０の立ち上がりエッジの遷移に非同期入力信号である第１のＡＮＤ回路ＡＮＤ０の出力信号Ｄ０の立ち下がりの状態変化が余りにも近接しているので、第１のＤ型フリップフロップＤ−ＦＦ０のセットアップ時間とホールド時間との違反が発生する。従って、次のタイミング４０３でも、第１のＤ型フリップフロップＤ−ＦＦ０のメタステーブルの障害が発生する。しかし、タイミング４０３でのメタステーブルの障害の終了後に、第１のＤ型フリップフロップＤ−ＦＦ０の第１の出力データＱ０はローレベル“０”またはハイレベル“１” に回復して、第３のＤ型フリップフロップＤ−ＦＦ２の出力データＱ´０もこのタイミングにてローレベル“０”またはハイレベル“１” に確定する。すると、第１のラッチＦＦ０は、ローレベルの第１のクロック信号ＣＫＩＮ０が供給されている間に、第３のＤ型フリップフロップＤ−ＦＦ２の出力データＱ´０のレベルをそのデータ出力Ｑ´´０に伝達する。従って、図９に示した図８のクロック選択回路による動作では、図７に示した図６のクロック選択回路による動作で発生していた小さなパルス幅のグリッチ４０５の発生を防止することができる。
【０１０１】
図９のタイミング４０２でも、第２のクロック信号ＣＫＩＮ１の立ち上がりエッジの遷移に非同期入力信号としての第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１の状態の変化が余りにも近接しているので、第２のＤ型フリップフロップＤ−ＦＦ１のセットアップ時間とホールド時間との違反が発生するものである。従って、次のタイミング４０４では、第２のＤ型フリップフロップＤ−ＦＦ１のメタステーブルの障害が発生する。しかし、タイミング４０４のメタステーブルの障害の終了後に、第２のＤ型フリップフロップＤ−ＦＦ１の第２の出力データＱ１はハイレベル“１””またはローレベル“０に回復して、第４のＤ型フリップフロップＤ−ＦＦ３の出力データＱ´１もこのタイミングでハイレベル“１”またはローレベル“０”に確定する。すると、第２のラッチＦＦ１はローレベルの第２のクロック信号ＣＫＩＮ１が供給されている間に第４のＤ型フリップフロップＤ−ＦＦ３の出力データＱ´１のレベルをそのデータ出力Ｑ´´１に伝達する。従って、図９に示した図８のクロック選択回路による動作では、図７に示した図６のクロック選択回路による動作で発生していた第２のクロック出力信号ＣＫＧ１とクロック出力信号ＣＫＯＵＴの最初のパルスの立ち上がり部分４０６の波形の消失を防止することができる。
【０１０２】
また図９に示す図８のクロック選択回路の動作より、第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際には、選択信号ＳＥＬのレベル遷移の後、第１のクロック信号ＣＫＩＮ０の２回の立ち上がり遷移と第２のクロック信号ＣＫＩＮ１の３回の立ち上がり遷移とでクロック選択の切り換えを完了することができる。従って、図８に示したクロック選択回路によれば、クロック信号の選択の切り換えレイテンシを低減することができる。
【０１０３】
［実施の形態３］
《更に他のクロックセレクタ回路の構成》
図１０は、本発明の実施の形態３の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【０１０４】
図１０に示す本発明の実施の形態３によるクロック選択回路が図６に示すクロック選択回路と相違するのは、下記の点である。
【０１０５】
図６に示すクロック選択回路の制御ユニットＣｎｔでは、第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１、第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３はそれぞれ立ち上がりエッジトリガ端子を持っていた。従って、これらのＤ型フリップフロップは、第１と第２のクロック信号ＣＫＩＮ０、ＣＫＩＮ１の立ち上がりエッジに応答して入力信号のレベルを出力データとして出力するものであった。
【０１０６】
それに対して図１０に示すクロック選択回路の制御ユニットＣｎｔでは、第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１、第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３は、図３の第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１と同様に、それぞれ立ち下がりエッジトリガ端子を持っている。従って、これらのＤ型フリップフロップは、第１と第２のクロック信号ＣＫＩＮ０、ＣＫＩＮ１の立ち下がりエッジに応答して入力信号のレベルを出力データとして出力するものである。
【０１０７】
《更に他のクロック選択回路の各部の波形》
図１１は、図１０に示す本発明の実施の形態３によるクロック選択回路で第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際の各部の波形を説明する図である。
【０１０８】
図１１のタイミング４０１でも、第１のクロック信号ＣＫＩＮ０の立ち下がりエッジの遷移に非同期入力信号である第１のＡＮＤ回路ＡＮＤ０の出力信号Ｄ０の立ち下がりの状態変化が余りにも近接しているので、第１のＤ型フリップフロップＤ−ＦＦ０のセットアップ時間とホールド時間との違反が発生する。従って、次のタイミング４０３でも、第１のＤ型フリップフロップＤ−ＦＦ０のメタステーブルの障害が発生する。しかし、タイミング４０３のメタステーブルの障害の終了後に、第１のＤ型フリップフロップＤ−ＦＦ０の第１の出力データＱ０はローレベル“０”またはハイレベル“１” に回復して、第３のＤ型フリップフロップＤ−ＦＦ２の出力データＱ´０もこのタイミングにてローレベル“０”またはハイレベル“１” に確定する。従って、図１１に示した図１０のクロック選択回路による動作でも、図７に示す図６のクロック選択回路による動作で発生していた小さなパルス幅のグリッチ４０５の発生を防止することができる。
【０１０９】
図１１のタイミング４０２でも、第２のクロック信号ＣＫＩＮ１の立ち下がりエッジの遷移に非同期入力信号としての第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１の状態の変化が余りにも近接しているので、第２のＤ型フリップフロップＤ−ＦＦ１のセットアップ時間とホールド時間の違反が発生するものである。従って、次のタイミング４０４では、第２のＤ型フリップフロップＤ−ＦＦ１のメタステーブルの障害が発生する。しかし、タイミング４０４のメタステーブルの障害の終了後に、第２のＤ型フリップフロップＤ−ＦＦ１の第２の出力データＱ１はハイレベル“１””またはローレベル“０に回復して、第４のＤ型フリップフロップＤ−ＦＦ３の出力データＱ´１もこのタイミングでハイレベル“１”またはローレベル“０”に確定する。従って、図１１に示した図１０のクロック選択回路による動作では、図７に示した図６のクロック選択回路による動作で発生していた第２のクロック出力信号ＣＫＧ１とクロック出力信号ＣＫＯＵＴの最初のパルスの立ち上がり部分４０６の波形の消失を防止することができる。
【０１１０】
また図１１に示した図１０のクロック選択回路の動作よって、第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際には、選択信号ＳＥＬのレベル遷移の後に、第１のクロック信号ＣＫＩＮ０の２回の立ち下がり遷移と第２のクロック信号ＣＫＩＮ１の２回の立ち下がり遷移と第２のクロック信号ＣＫＩＮ１の次の立ち上がり遷移でクロック選択の切り換えを完了することができる。従って、図１０に示したクロック選択回路によれば、クロック信号の選択の切り換えレイテンシを低減することができる。
【０１１１】
［実施の形態４］
《別のクロックセレクタ回路の構成》
図１２は、本発明の実施の形態４の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【０１１２】
図１２に示す本発明の実施の形態４によるクロック選択回路が図８に示すクロック選択回路と相違するのは、下記の点である。
【０１１３】
図８に示すクロック選択回路の制御ユニットＣｎｔに追加された第１と第２のラッチＦＦ０、ＦＦ１の入力は、第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３の出力に、カスケード接続されていた。それに対して図１２に示すクロック選択回路の制御ユニットＣｎｔに追加された第１と第２のラッチＦＦ０、ＦＦ１の入力は、第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３の入力に並列接続されている。その結果、選択信号ＳＥＬが供給されるインバータＩＮＶ０の入力端子からマルチプレクサＭＰｘの第３と第４のＡＮＤ回路ＡＮＤ２、ＡＮＤ３の一方の入力端子までの接続段数は、図８に示すクロック選択回路と比較すると、図１２に示すクロック選択回路では第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３の分、少なくなっている。
【０１１４】
また、クロック信号の排他選択のため第１と第２のＡＮＤ回路ＡＮＤ０、ＡＮＤ１の出力Ｄ０、Ｄ１から他方の入力端子としての反転入力端子へのフィードバックループには、第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１と第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３のカスケード接続が配置されている。
【０１１５】
《別のクロック選択回路の各部の波形》
図１３は、図１２に示す本発明の実施の形態４によるクロック選択回路で第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際の各部の波形を説明する図である。
図１３のタイミング４０１でも、第１のクロック信号ＣＫＩＮ０の立ち上がりエッジの遷移に非同期入力信号である第１のＡＮＤ回路ＡＮＤ０の出力信号Ｄ０の立ち下がりの状態変化が余りにも近接しているので、第１のＤ型フリップフロップＤ−ＦＦ０のセットアップ時間とホールド時間との違反が発生している。従って、次のタイミング４０３で、第１のＤ型フリップフロップＤ−ＦＦ０のメタステーブルの障害が発生する。しかし、タイミング４０３のメタステーブルの障害の終了の後に、第１のＤ型フリップフロップＤ−ＦＦ０の第１の出力データＱ０はローレベル“０”またはハイレベル“１” に回復する。このタイミングで、第１のラッチＦＦ０の反転ゲート制御端子Ｇにはローレベルの第１のクロック信号ＣＫＩＮ０が供給されているので、第１のラッチＦＦ０は入力のローレベル“０”またはハイレベル“１” に回復したデータＱ０を出力に伝達するので、出力Ｑ´０もローレベル“０”またはハイレベル“１” に確定する。また第３のＤ型フリップフロップＤ−ＦＦ２は、第１のクロック信号ＣＫＩＮ０の立ち上がりエッジのタイミングで第１のＤ型フリップフロップＤ−ＦＦ０の第１の出力データＱ０をラッチするので、第３のＤ型フリップフロップＤ−ＦＦ２の出力データＱ´´０もこのタイミングでローレベル“０”またはハイレベル“１” に確定する。
従って、第３のＤ型フリップフロップＤ−ＦＦ２の出力データＱ´´０のローレベル“０”またはハイレベル“１” のレベル確定に応答して、第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１はハイレベル“１”またはローレベル“０” に確定する。しかし、タイミング４０２にて第２のクロック信号ＣＫＩＮ１の立ち上がりエッジの遷移に非同期入力信号である第２のＡＮＤ回路ＡＮＤ１の出力信号Ｄ１の立ち下がりの状態変化が余りにも近接しているので、第２のＤ型フリップフロップＤ−ＦＦ１のセットアップ時間とホールド時間との違反が発生している。従って、次のタイミング４０４で、第２のＤ型フリップフロップＤ−ＦＦ１のメタステーブルの障害が発生して、その第２の出力データＱ１はハイレベル“１”とローレベル“０”との間の中間レベルとなっている。このタイミングで、第２のラッチＦＦ１の反転ゲート制御端子Ｇにはローレベルの第２のクロック信号ＣＫＩＮ１が供給されているので、第２のラッチＦＦ１は入力の中間レベルのデータＱ１を出力に伝達するので、出力Ｑ´１も中間レベルのメタステーブル状態１００１となる。しかし、このタイミング１００２の間で、ローレベルの第２のクロック信号ＣＫＩＮ１がマルチプレクサＭｐｘの第４のＡＮＤ回路ＡＮＤ３の他方の入力端子に供給されているので、第４のＡＮＤ回路ＡＮＤ３の第２のクロック出力信号ＣＫＧ１はローレベルに確定する。
【０１１６】
また図１３に示した図１２のクロック選択回路の動作よって、第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際には、選択信号ＳＥＬのレベル遷移の後に、第１のクロック信号ＣＫＩＮ０の１回の立ち上がり遷移と第２のクロック信号ＣＫＩＮ１の２回の立ち上がり遷移とでクロック選択の切り換えを完了することができる。従って、図１２に示したクロック選択回路によれば、クロック信号の選択の切り換えレイテンシを著しく低減することができる。
【０１１７】
《ＡＮＤ回路の構成》
図１４は、図１２のクロック選択回路のマルチプレクサＭｐｘの第４のＡＮＤ回路ＡＮＤ３の構成を示す図である。
【０１１８】
図１４に示す第４のＡＮＤ回路ＡＮＤ３は、ソース・ドレイン電流経路が並列接続された２個のＰチャンネルＭＯＳトランジスタＱｐ１、Ｑｐ２とソース・ドレイン電流経路が直列接続された２個のＮチャンネルＭＯＳトランジスタＱｎ１、Ｑｎ２を含むＮＡＮＤ回路と、１個のＰチャンネルＭＯＳトランジスタＱｐ３と１個のＮチャンネルＭＯＳトランジスタＱｎ３を含むインバータとから構成されている。
【０１１９】
図１４に示す第４のＡＮＤ回路ＡＮＤ３では、ハイレベル“１”とローレベル“０”との間の中間レベルとなっている第２のラッチＦＦ１の出力データＱ１が、ＰチャンネルＭＯＳトランジスタＱｐ２のゲートとＮチャンネルＭＯＳトランジスタＱｎ１のゲートに供給される。従って、ＰチャンネルＭＯＳトランジスタＱｐ２とＮチャンネルＭＯＳトランジスタＱｎ１とが中間的な導通度となって、ＮＡＮＤ回路の出力電位も中間レベルのメタステーブル状態となる可能性がある。その結果、１個のＰチャンネルＭＯＳトランジスタＱｐ３と１個のＮチャンネルＭＯＳトランジスタＱｎ３を含むインバータの入力電位も出力電位も、中間レベルのメタステーブル状態となる可能性がある。
【０１２０】
しかし、このタイミングでは、マルチプレクサＭｐｘの第４のＡＮＤ回路ＡＮＤ３の他方の入力端子としてのＰチャンネルＭＯＳトランジスタＱｐ１のゲートとＮチャンネルＭＯＳトランジスタＱｎ２のゲートに、ローレベルの第２のクロック信号ＣＫＩＮ１が供給されるものである。従って、ＰチャンネルＭＯＳトランジスタＱｐ１はオン状態となり、ＮチャンネルＭＯＳトランジスタＱｎ２はオフ状態となるので、ＮＡＮＤ回路の出力電位はハイレベルの電源電圧Ｖddに確定される。その結果、インバータの出力端子の第２のクロック信号ＣＫＩＮ１のレベルはローレベルの接地電位Ｖssに確定される。このようにして、ＮＡＮＤ回路の出力電位とインバータの入力電位および出力電位のメタステーブル状態が、ローレベルに設定された第２のクロック信号ＣＫＩＮ１によってマスクされることが可能となるものである。
【０１２１】
［実施の形態５］
《更に別のクロックセレクタ回路の構成》
図１５は、本発明の実施の形態５の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【０１２２】
図１５に示す本発明の実施の形態５は、第１と第２のクロック信号ＣＫＩＮ０、ＣＫＩＮ１が供給される図１２に示す本発明の実施の形態４によるクロック選択回路を第１、第２、第３、第４、第５、第６のクロック信号ＣＫＩＮ０、ＣＫＩＮ１、ＣＫＩＮ２、ＣＫＩＮ３、ＣＫＩＮ４、ＣＫＩＮ５が供給されるものに拡張したものである。６個のクロック信号ＣＫＩＮ０〜ＣＫＩＮ５から１個のクロック信号を選択するため、３ビットのクロック選択信号ＳＥＬ０、ＳＥＬ１、ＳＥＬ２がデコータＤＥＣの内部の６個のＡＮＤゲートＧ０、Ｇ１、Ｇ２、Ｇ３、Ｇ４、Ｇ５に供給されることによって、デコータＤＥＣから６個のクロック選択出力信号ｄ０、ｄ１、ｄ２、ｄ３、ｄ４、ｄ５が生成される。デコータＤＥＣで生成される６個のクロック選択出力信号ｄ０、ｄ１、ｄ２、ｄ３、ｄ４、ｄ５は、制御ユニットＣｎｔの６個のＡＮＤ回路ＡＮＤ０、ＡＮＤ１、ＡＮＤ２、ＡＮＤ３、ＡＮＤ４、ＡＮＤ５に供給される。
【０１２３】
図１５に示すクロック選択回路の制御ユニットＣｎｔでも、６個のラッチＦＦ０、ＦＦ１、ＦＦ２、ＦＦ３、ＦＦ４、ＦＦ５の入力は、６個のＤ型フリップフロップＤ−ＦＦ６、Ｄ−ＦＦ７、Ｄ−ＦＦ８、Ｄ−ＦＦ９、Ｄ−ＦＦ１０、Ｄ−ＦＦ１１の入力に並列接続されている。その結果、選択信号ＳＥＬ０、ＳＥＬ１、ＳＥＬ２が供給されるデコータＤＥＣの入力端子からマルチプレクサＭＰｘの６個のＡＮＤ回路ＡＮＤ６、ＡＮＤ７、ＡＮＤ８、ＡＮＤ９、ＡＮＤ１０、ＡＮＤ１１の一方の入力端子までの接続段数は、図１２に示すクロック選択回路と同様に少なくなっている。
【０１２４】
また、クロック信号の排他選択のために、６個のＡＮＤ回路ＡＮＤ０、ＡＮＤ１、ＡＮＤ２、ＡＮＤ３、ＡＮＤ４、ＡＮＤ５の出力Ｄ０、Ｄ１、Ｄ２、Ｄ３、Ｄ４、Ｄ１５から他方の入力端子へのフィードバックループには、前段の６個のＤ型フリップフロップＤ−ＦＦ０〜Ｄ−ＦＦ５と後段の６個のＤ−ＦＦ６〜Ｄ−ＦＦ１１のカスケード接続が配置されている。
【０１２５】
マルチプレクサＭｐｘは、６個のＡＮＤ６、ＡＮＤ７、ＡＮＤ８、ＡＮＤ９、ＡＮＤ１０、ＡＮＤ１１と、ＯＲ回路ＯＲ０によって構成されている。また、６個のＡＮＤ６、ＡＮＤ７、ＡＮＤ８、ＡＮＤ９、ＡＮＤ１０、ＡＮＤ１１の一方の入力端子には６個のラッチＦＦ０、ＦＦ１、ＦＦ２、ＦＦ３、ＦＦ４、ＦＦ５の出力データＱ´０、Ｑ´１、Ｑ´２、Ｑ´３、Ｑ´４、Ｑ´５が供給される一方、他方の入力端子には第１、第２、第３、第４、第５、第６のクロック信号ＣＫＩＮ０、ＣＫＩＮ１、ＣＫＩＮ２、ＣＫＩＮ３、ＣＫＩＮ４、ＣＫＩＮ５が供給される。６個のＡＮＤ６、ＡＮＤ７、ＡＮＤ８、ＡＮＤ９、ＡＮＤ１０、ＡＮＤ１１のクロック出力信号ＣＫＧ０、ＣＫＧ１、ＣＫＧ２、ＣＫＧ３、ＣＫＧ４、ＣＫＧ０５はＯＲ回路ＯＲ０の多数の入力端子にそれぞれ供給され、ＯＲ回路ＯＲ０の出力端子からはクロック出力信号ＣＫＯＵＴが生成される。
【０１２６】
図１５に示すクロック選択回路ではクロック信号ＣＫＩＮ０〜ＣＫＩＮ５の入力個数が６個と大幅に増大したにもかかわらず、図１２に示すクロック選択回路と同様に、クロック信号の選択の切り換えレイテンシを著しく低減することができる。
【０１２７】
［実施の形態６］
《異なるクロックセレクタ回路の構成》
図１６は、本発明の実施の形態６の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【０１２８】
図１６に示す本発明の実施の形態６は、上述した種々の実施の形態よりも更にクロック信号の選択の切り換えレイテンシを低減するものである。
【０１２９】
図１６に示す本発明の実施の形態６によるクロック選択回路が図１２に示すクロック選択回路と相違するのは、図１２のクロック選択回路の制御ユニットＣｎｔに対して第１と第２の遅延回路ＤＥＬＡＹ０、ＤＥＬＡＹ１が追加されていることである。
【０１３０】
図１６に示すクロック選択回路では、第１の遅延回路ＤＥＬＡＹ０の入力端子に第１のクロック信号ＣＫＩＮ０が供給され、第１の遅延回路ＤＥＬＡＹ０の出力からの第１の遅延クロック信号ＣＫＩＤＮ０は第１のラッチＦＦ０の反転ゲート制御端子Ｇと第３のＤ型フリップフロップＤ−ＦＦ２の立ち上がりエッジトリガ端子とマルチプレクサＭｐｘの第３のＡＮＤ回路ＡＮＤ２の他方の入力端子とに供給される。また更に、第２の遅延回路ＤＥＬＡＹ１の入力端子に第２のクロック信号ＣＫＩＮ１が供給され、第２の遅延回路ＤＥＬＡＹ１の出力からの第２の遅延クロック信号ＣＫＩＤＮ１は第２のラッチＦＦ１の反転ゲート制御端子Ｇと第４のＤ型フリップフロップＤ−ＦＦ３の立ち上がりエッジトリガ端子とマルチプレクサＭｐｘの第４のＡＮＤ回路ＡＮＤ３の他方の入力端子とに供給される。
【０１３１】
《異なるクロック選択回路の各部の波形》
図１７は、図１６に示す本発明の実施の形態６によるクロック選択回路で第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際の各部の波形を説明する図である。
【０１３２】
図１７に示すように、第１と第２の遅延回路ＤＥＬＡＹ０、ＤＥＬＡＹ１は、第１と第２のクロック信号ＣＫＩＮ０、ＣＫＩＮ１を所定の遅延時間Ｄｅｌａｙの分だけ遅延することによって第１と第２の遅延クロック信号ＣＫＩＤＮ０、ＣＫＩＤＮ１を生成する。尚、この所定の遅延時間Ｄｅｌａｙは、低い方の周波数の第１のクロック信号ＣＫＩＮ０のパルス幅の半分以下に設定されることにより、メタステーブル後の第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１の第１と第２の出力データＱ０、Ｑ１のレベル回復のタイミングに対応している。
【０１３３】
図１７に示す波形図でも、タイミング４０１、４０２でセットアップ時間とホールド時間との違反が発生して、タイミング４０３、４０４でメタステーブルの障害が発生する。しかし、これらの障害の終了の後にローレベル“０”またはハイレベル“１”に回復する第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１の第１と第２の出力データＱ０、Ｑ１を、第１と第２の遅延クロック信号ＣＫＩＤＮ０、ＣＫＩＤＮ１の立ち上がりエッジのタイミングで第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３は早期にラッチすることができる。その結果、選択信号ＳＥＬがローレベル“０”からハイレベル“１”に遷移した後に、第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３の出力データＱ´´０、Ｑ´´１は比較的早期にローレベル“０”またはハイレベル“１”に回復するものとなる。このようにして、図１６に示したクロック選択回路を使用することによって、クロック信号の選択の切り換えレイテンシを大幅に低減することができる。
【０１３４】
［実施の形態７］
《更に異なるクロックセレクタ回路の構成》
図１８は、本発明の実施の形態７の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【０１３５】
図１６に示す本発明の実施の形態６によるクロック選択回路によれば、上述したようにクロック信号の選択の切り換えレイテンシを大幅に低減することができる。
【０１３６】
しかし、図１７に示す波形図から理解されるように、クロック選択による最終的なクロック出力信号ＣＫＯＵＴの位相は、入力側の第１と第２のクロック信号ＣＫＩＮ０、ＣＫＩＮ１の位相よりも第１と第２の遅延回路ＤＥＬＡＹ０、ＤＥＬＡＹ１での所定の遅延時間Ｄｅｌａｙの分だけ遅延することになる。一方、マイクロコントローラやシステムＬＳＩ等の半導体集積回路の製品仕様から、クロック選択によるクロック出力信号の位相が入力側のクロック信号の位相よりも大きく遅延することが許されない場合がある。
【０１３７】
図１８に示す本発明の実施の形態７の半導体集積回路に搭載されたクロック選択回路は、この問題を解決するものである。すなわち、図１８に示したクロック選択回路の制御ユニットＣｎｔでは、第１と第２の遅延回路ＤＥＬＡＹ０、ＤＥＬＡＹ１は、第１と第２のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１の立ち上がりエッジトリガ端子と第３と第４のＤ型フリップフロップＤ−ＦＦ２、Ｄ−ＦＦ３の立ち上がりエッジトリガ端子との間に接続されている。従って、図１８に示すクロック選択回路では、第１と第２の遅延回路ＤＥＬＡＹ０、ＤＥＬＡＹ１は、マルチプレクサＭｐｘの第３と第４のＡＮＤ回路ＡＮＤ２、ＡＮＤ３の一方の入力端子の信号伝達経路に配置されないものとなる。
【０１３８】
《更に異なるクロック選択回路の各部の波形》
図１９は、図１８に示す本発明の実施の形態７によるクロック選択回路で第１のクロック信号ＣＫＩＮ０の選択状態から第２のクロック信号ＣＫＩＮ１の選択状態に切り換わる際の各部の波形を説明する図である。
【０１３９】
図１９の波形図から図１８のクロック選択回路では図１６のクロック選択回路と比較してクロック信号の選択の切り換えレイテンシが若干増加するが、クロック選択による最終的なクロック出力信号ＣＫＯＵＴの位相は入力側の第１と第２のクロック信号ＣＫＩＮ０、ＣＫＩＮ１の位相と略等しいことが理解される。
【０１４０】
［実施の形態８］
《具体的なクロックセレクタ回路の構成》
図２０は、本発明の実施の形態８の半導体集積回路に搭載されたクロック選択回路の構成を示す図である。
【０１４１】
図２０に示す本発明の実施の形態８によるクロック選択回路は、図１５の本発明の実施の形態５と図１８の本発明の実施の形態７との組み合わせの構成とされている。
【０１４２】
図２０に示す本発明の実施の形態８によるクロック選択回路では、第１のクロック信号ＣＫＩＮ０、第２のクロック信号ＣＫＩＮ１、第３のクロック信号ＣＫＩＮ２、第４のクロック信号ＣＫＩＮ３、第５のクロック信号ＣＫＩＮ４、第６のクロック信号ＣＫＩＮ５の順序でクロック周波数が増加している。
【０１４３】
図２０のクロック選択回路では、第１の遅延回路ＤＥＬＡＹ０は最低速の第１のクロック信号ＣＫＩＮ０に応答するＤ型フリップフロップＤ−ＦＦ０の立ち上がりエッジトリガ端子とＤ型フリップフロップＤ−ＦＦ６の立ち上がりエッジトリガ端子との間に接続され、第２の遅延回路ＤＥＬＡＹ１は２番目に低速の第２のクロック信号ＣＫＩＮ１に応答するＤ型フリップフロップＤ−ＦＦ１の立ち上がりエッジトリガ端子とＤ型フリップフロップＤ−ＦＦ７の立ち上がりエッジトリガ端子との間に接続されている。
【０１４４】
従って、図２０のクロック選択回路では、最低速の第１のクロック信号ＣＫＩＮ０と２番目に低速の第２のクロック信号ＣＫＩＮ１のための第１と第２の遅延回路ＤＥＬＡＹ０、ＤＥＬＡＹ１の遅延時間は、メタステーブルの後のＤ型フリップフロップＤ−ＦＦ０、Ｄ−ＦＦ１の第１と第２の出力データＱ０、Ｑ１のレベル回復のタイミングに対応している。更に、図２０のクロック選択回路では、第３から第６のクロック信号ＣＫＩＮ２〜ＣＫＩＮ５のために図１２に示した本発明の実施の形態４によるクロック選択回路と同様に著しく低減された切り換えレイテンシでのクロック信号の選択が可能となるものである。
【０１４５】
［実施の形態９］
《半導体集積回路の構成》
図２１は、本発明の実施の形態９の半導体集積回路の構成を示す図である。
【０１４６】
図２１に示した本発明の実施の形態９による半導体集積回路は、マイクロコントローラあるいはシステムＬＳＩの半導体チップ１０を具備する。半導体チップ１０には、フェーズロックドループ(ＰＬＬ)１、高周波発振器(ＨＯＣＯ)２、低周波発振器(ＬＯＣＯ)３、リアルタイムクロック発振器(ＲＴＣ)４、分周器(Ｄｉｖ)５、クロック選択回路(ＣＬＫ＿ＳＥＬ)６、クロック発生器(ＣＰＧ)７、クロックバッファ(ＣＰＢ)８、制御レジスタ(Ｒｅｇ)９が含まれている。
【０１４７】
フェーズロックドループ１の電圧制御発振器は半導体チップ１０の外部の水晶発振子ＸＴＡＬにより生成した基準周波数信号からクロック信号を生成して、クロック選択回路６の第１の入力端子に供給する。また、高周波発振器２から生成される高周波クロック信号と低周波発振器３から生成される低周波クロック信号とリアルタイムクロック発振器４から周波数３２ｋＨｚのリアルタイムクロック信号と水晶発振子ＸＴＡＬにより生成した基準周波数信号を分周器５で分周して生成した周波数３２ｋＨｚの他のリアルタイムクロック信号と半導体チップ１０の外部で生成される外部クロック信号ＥＸＴＣＫが、クロック選択回路６の第２の入力端子と第３の入力端子と第４の入力端子と第５の入力端子と第６の入力端子とにそれぞれ供給される。
【０１４８】
制御レジスタ９の出力の３ビットの選択信号ＳＥＬ＜２：０＞によってクロック選択回路６の第１の入力端子から第６の入力端子までのクロック入力信号から１つのクロック入力信号が選択されて、クロック選択回路６の出力端子に伝達される。クロック選択回路６の出力端子に伝達された選択クロック信号はクロック発生器７の第１と第２と第３の分周器７０、７１、７２の入力端子に共通に供給され、第１の分周器７０の出力端子からＣＰＵ(中央処理ユニット)等に使用されるシステムクロック信号ＳＹＳＣＫが生成され、第２の分周器７１の出力端子から外部バスに供給されるバスクロック信号ＢＵＳＣＫが生成され、第３の分周器７２の出力端子からは周辺ＩＰの動作クロックに使用される周辺クロック信号ＰＥＲＩＣＫが生成される。周辺クロック信号ＰＥＲＩＣＫは、クロックバッファ８の内部の複数のバッファ増幅器８０〜８５によって増幅された後に複数の周辺ＩＰに分配されるものである。
【０１４９】
制御レジスタ９の出力の３ビットの選択信号ＳＥＬ＜２：０＞に応答して第１の入力端子から第６の入力端子までのクロック入力信号から１つのクロック入力信号を選択するクロック選択回路(ＣＬＫ＿ＳＥＬ)６に、上述した本発明の実施の形態１から実施の形態８までのいずれかのクロック選択回路が採用されるものである。
【０１５０】
以上本発明者によってなされた発明を種々の実施の形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【０１５１】
例えば、本発明の半導体集積回路は、マイクロコントローラあるいはシステムＬＳＩに限定されるものではなく、複数のクロック入力信号から１つのクロック入力信号を選択するクロック選択回路を具備する汎用半導体集積回路としても広く採用することが可能である。
【０１５２】
また本発明によれば、複数のクロック信号を選択する際に、多種のクロックの仕様に対応することが可能で、グリッチ防止とメタステーブル障害確率低減とに対応することができる。その結果、より現実的な動作信頼性を確保することが可能となる。
【符号の説明】
【０１５３】
ＤＥＣ…デコーダ
Ｃｎｔ…制御ユニット
Ｍｐｘ…マルチプレクサ
ＳＥＬ…選択信号
ＩＮＶ０…インバータ
ＡＮＤ０、ＡＮＤ１…ＡＮＤ回路
Ｄ−ＦＦ０、１、２、３…Ｄ型フリップフロップ
ＡＮＤ２、ＡＮＤ３…ＡＮＤ回路
ＯＲ０…ＯＲ回路
ＣＫＩＮ０、１…クロック信号
ＣＫＧ０、１…クロック出力信号
ＣＫＯＵＴ…クロック出力信号
ＦＦ０、１…ラッチ
【図１】
2010252012.tif 000003
【図２】
2010252012.tif 000004
【図３】
2010252012.tif 000005
【図４】
2010252012.tif 000006
【図５】
2010252012.tif 000007
【図６】
2010252012.tif 000008
【図７】
2010252012.tif 000009
【図８】
2010252012.tif 000010
【図９】
2010252012.tif 000011
【図１０】
2010252012.tif 000012
【図１１】
2010252012.tif 000013
【図１２】
2010252012.tif 000014
【図１３】
2010252012.tif 000015
【図１４】
2010252012.tif 000016
【図１５】
2010252012.tif 000017
【図１６】
2010252012.tif 000018
【図１７】
2010252012.tif 000019
【図１８】
2010252012.tif 000020
【図１９】
2010252012.tif 000021
【図２０】
2010252012.tif 000022
【図２１】
2010252012.tif 000023