(57)【要約】【課題】クロック異常を検出する精度を向上させる技術を提供する。【解決手段】被検査クロックを遅延させる第１の遅延回路の出力と第２の遅延回路の出力よりＬｏｗ期間を決める。定められたＬｏｗ期間に信号変化をカウントする。被検査クロックとカウント値により異常検出する。第１の遅延回路の出力と第２の遅延回路の出力よりＨｉｇｈ期間を決める。定められたＨｉｇｈ期間に信号変化をカウントする。被検査クロックとカウント値により異常検出する。Ｌｏｗ期間の異常とＨｉｇｈ期間の異常を統合する。【選択図】図４
2011199743.tif 000002
【特許請求の範囲】
【請求項１】
半導体集積回路のクロック信号異常検出回路であって、
被検査クロックを遅延させる第１と第２の遅延回路と、
前記第１の遅延回路の出力と前記第２の遅延回路の出力より検出期間を決める第１の検出期間設定部と、
前記第１の検出期間設定部で定められた期間に信号変化をカウントする第１のカウント部と、
前記被検査クロックと前記第１のカウント部の出力により異常検出する第１の異常検出部と、
前記第１の遅延回路の出力と前記第２の遅延回路の出力より検出期間を決める第２の検出期間設定部と、
前記第２の検出期間設定部で定められた期間に信号変化をカウントする第２のカウント部と、
前記被検査クロックと前記第２のカウント部の出力により異常検出する第２の異常検出部と、
前記第１の異常検出部の出力と前記第２の異常検出部の出力を統合する検出結果統合部と
を具備することを特徴とする
クロック異常検出回路。
【請求項２】
請求項１に記載のクロック異常検出回路において、
前記第１の遅延回路は、
前記被検査クロックの半周期未満の遅延で、前記被検査クロックを遅延させ、
前記第２の遅延回路は、
前記被検査クロックの半周期以上、且つ、１周期未満の遅延で前記被検査クロックを遅延させることを特徴とする
クロック異常検出回路。
【請求項３】
請求項１または２に記載のクロック異常検出回路において、
前記第１の検査期間設定部は、
前記被検査クロックがＬｏｗであるべき期間を示し、前記被検査クロックの半周期より長く１周期より短い信号を前記第１のカウンタ部に供給し、
前記第２の検査期間設定部は、
前記被検査クロックがＨｉｇｈであるべき期間を示し、前記被検査クロックの半周期より長く１周期より短い信号を前記第２のカウンタ部に供給することを特徴とする
クロック異常検出回路。
【請求項４】
請求項１から３のいずれか１項に記載のクロック異常検出回路において、
前記第１のカウンタ部は、
前記被検査クロックの最初の立下りからの前記被検査クロックの立ち上がりエッジをカウントし、
前記第２のカウント部は、
前記被検査クロックの最初の立ち上がりからの前記被検査クロックの立下りエッジをカウントすることを特徴とする
クロック異常検出回路。
【請求項５】
請求項１から４のいずれか１項に記載のクロック異常検出回路において、
前記第１の異常検出部は、
前記第１のカウント部のカウント値と期待値とを比較して得られた比較結果を、前記被検査クロックの立ち上がりでサンプリングし、
前記第２の異常検出部は、
前記第２のカウント部のカウント値と期待値とを比較して得られた比較結果を、前記被検査クロックの立下りでサンプリングすることを特徴とする
クロック異常検出回路。
【請求項６】
請求項１から５のいずれか１項に記載のクロック異常検出回路において、
前記第１の異常検出部は、
前記第１のカウント部のカウント期間設定信号と期待値とを比較してえられた比較結果を、前記被検査クロックの立ち上がりでサンプリングし、
前記第２の異常検出部は、
前記第２のカウント部のカウント期間設定信号と期待値とを比較してえられた比較結果を、前記被検査クロックの立下りでサンプリングすることを特徴とする
クロック異常検出回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クロック異常検出回路に関し、特に、半導体集積回路のクロック信号等におけるノイズや異常信号を検出するクロック異常検出回路に関する。
【背景技術】
【０００２】
現在普及している半導体集積回路の多くは、基準クロックに対して同期して動作するように設計されている。その基準クロックに発生するノイズなどに起因する異常は、半導体集積回路の誤動作を引き起こすことがある。半導体集積回路の誤動作を抑制するため、基準クロックに発生するノイズ等の異常を検出する技術が知られている（例えば、特許文献１〜３参照）。
【０００３】
特許文献１には、基準クロック信号の異常を検出するクロック異常検出システムに関する技術が記載されている。そのクロック異常検出システムは、多段接続された複数の遅延素子により、集積回路を動作させるための基準クロック信号を遅延させ、各段ごとに遅延信号を出力する遅延信号出力部と、前記遅延信号出力部から出力された遅延信号の中から、前記基準クロック信号に同期する遅延信号を複数検出する同期信号検出部と、前記同期信号検出部により検出された複数の遅延信号に基づいて、前記基準クロック信号の１周期に係る遅延素子の段数を算出する遅延段数演算部とを備えている。そして、遅延素子の段数の値に基づいて、基準クロック信号の異常を検出している。
【０００４】
図１は、特許文献１のクロック異常検出システムの全体構成を示すブロック図である。クロック異常検出システム２００は、集積回路ブロック２０１と、異常検出部１１０と、記憶部１１１とを備えている。集積回路ブロック２０１は、異常検出部１１０に接続されている。また、集積回路ブロック２０１は、クロック周期検出回路１０１と、ＣＰＵ＿Ｉ／Ｆ１０５と、ユーザー・ロジック１０６とを備えている。クロック周期検出回路１０１は、ＣＰＵ＿Ｉ／Ｆ１０５を介して異常検出部１１０に接続されている。また、クロック周期検出回路１０１は、遅延信号出力部１０２と、同期信号検出部１０３と、遅延段数演算部１０４とを備えている。
【０００５】
図２は、上述の遅延信号出力部１０２の回路構成を示すブロック図である。遅延信号出力部１０２は、ｍ個のディレイセル（遅延素子）ＤＣ１〜ＤＣｍと、複数のインバータＩＮＶとを備えている。これらのディレイセルＤＣ１〜ＤＣｍは、直列に多段（ｍ段）接続されている。ディレイセルＤＣ１〜ＤＣｍは、各々に入力された信号を、所定遅延量（例えば、Ｘ［ｐｓオーダー］）だけ遅延させて出力する。すなわち、ディレイセルＤＣ１〜ＤＣｍは、それぞれ、基準クロック信号ＣＬＫを所定遅延量の整数倍（１〜ｍ倍）だけ遅延させて出力する。したがって、特許文献１に記載のクロック異常検出システムにおける遅延信号出力部１０２は、ｍビット幅の遅延信号Ｄ１〜Ｄｍを出力する。
【０００６】
図３は、上述の同期信号検出部１０３の回路構成を示すブロック図である。同期信号検出部１０３は、遅延信号出力部１０２から出力された遅延信号Ｄ１〜Ｄｍの値（“Ｈｉｇｈ”又は“Ｌｏｗ”）を保持するフリップフロップＦＦ１〜ＦＦｍと、ＮＡＮＤ回路Ｎ１〜Ｎｍとを備えている。
【０００７】
フリップフロップＦＦｋ（ｋ＝１、２、・・・、ｍ−１）の出力端子Ｑと、隣接する後段のフリップフロップＦＦｋ＋１の反転出力端子ＱＢは、ＮＡＮＤ回路Ｎｋの入力段に接続されている。フリップフロップＦＦ１〜ＦＦｍの各々のデータ入力端子Ｄには、それぞれ、遅延信号出力部１０２からの遅延信号Ｄ１〜Ｄｍが入力される。フリップフロップＦＦ１〜ＦＦｍの各々のクロック入力端子には、共通に基準クロック信号ＣＬＫが入力される。
【０００８】
フリップフロップＦＦ１〜ＦＦｍは、基準クロック信号ＣＬＫに同期して、それぞれ、入力された遅延信号Ｄ１〜Ｄｍの値（“Ｈｉｇｈ”又は“Ｌｏｗ”）を保持し、保持した値を出力端子Ｑから出力する。また、フリップフロップＦＦ１〜ＦＦｍは、この保持した値を反転させた値を、反転出力端子ＱＢから出力する。
【０００９】
ＮＡＮＤ回路Ｎ１〜Ｎｍ−１は、それぞれ、フリップフロップＦＦ１〜ＦＦｍ−１の出力端子Ｑから出力された値と、次段のフリップフロップＦＦ２〜ＦＦｍの反転出力端子ＱＢから出力された値の否定論理積を演算して出力する。ＮＡＮＤ回路Ｎ１〜Ｎｍの出力のうち、遅延信号が基準クロック信号ＣＬＫの立ち上がりエッジに同期したフリップフロップに対応するＮＡＮＤ回路の出力のみがＬｏｗとなる。これにより、基準クロックに同期した段数のフリップフロップの出力が検出可能となる。遅延段数演算部１０４は、Ｌｏｗを出力したＮＡＮＤ回路の段数に基づいて、基準クロック信号ＣＬＫの１周期分の遅延に対応するディレイセルの段数（遅延段数）を算出する。
【００１０】
特許文献１に記載のクロック異常検出システム２００は、クロック周期検出回路１０１にて算出されたディレイセルの段数の情報を、ＣＰＵ１１０ａを備える異常検出部１１０に、ＣＰＵ＿Ｉ／Ｆ１０５を介して供給する。異常検出部１１０は、クロック周期検出回路１０１から供給された情報を、記憶部１１１に格納する。異常検出部１１０は、そのディレイセルの段数の情報に基づいて、過去に記憶された段数との差分を求め、その差分により基準クロックに対する異常判定を実行している。
【００１１】
また、特許文献２には、被検査クロックを一定時間分遅延させる遅延手段と、その遅延手段の出力信号エッジで被検査クロックの一定時間後の状態を格納するクロック状態格納手段とを有し、クロック状態格納手段の出力から被検査クロックの異常を検出する技術が記載されている。
【００１２】
また、特許文献３には、入力クロック信号を２分周する分周手段と、この分周出力を入力クロック信号の略１／２周期分遅延する遅延手段と、この遅延出力で分周出力をサンプリングするサンプリング手段とを含み、このサンプリング出力により入力クロック信号の異常検出を行なう技術が記載されている。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２００４−３６２５０９号公報
【特許文献２】特開２００４−２５２８３４号公報
【特許文献３】特開２００２−２６７０４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１４】
従来の技術では、ある立ち上がりエッジから次の立ち上がりエッジまでの期間に、遅延素子何個分の信号が出力されるかにより、被検査クロックの周期を求め、被検査クロックの異常を検出している。しかし、遅延素子の遅延値が、算出する周期の分解能となる回路構成のため、分解能、すなわち遅延素子の遅延値以下の期間に立ち上がりエッジが２回発生するようなクロックの異常を検出できないという問題がある。
【００１５】
例えば、上述の遅延信号出力部１０２は、基準クロック信号をディレイセルにより遅延させて遅延信号を生成し、その遅延信号を同期信号検出部１０３に供給している。同期信号検出部１０３は、基準クロックの立ち上がりタイミングに同期して、その遅延信号を保持している。
【００１６】
そのため、基準クロックの立ち上がりでデータを保持したあと、遅延信号出力部１０２の出力値に変化が生じる時間、つまり、ディレイセルによる遅延時間内に、ノイズにより基準クロック（以降、本発明を述べる際に被検査クロックと称す）の立ち上がりで発生するようなクロック異常が生じた場合、同期信号検出部１０３の保持回路の値は変化せずクロックの異常を検出することが困難となる。
【００１７】
本発明が解決しようとする課題は、クロック異常を検出する精度を向上させる技術を提供することにある。
【課題を解決するための手段】
【００１８】
以下に、［発明を実施するための形態］で使用される番号を用いて、［課題を解決するための手段］を説明する。これらの番号は、［特許請求の範囲］の記載と［発明を実施するための形態］との対応関係を明らかにするために付加されたものである。ただし、それらの番号を、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【００１９】
上記の課題を解決するために、半導体集積回路のクロック信号異常検出回路を以下のように構成する。そのクロック信号異常検出回路は、被検査クロックを遅延させる第１と第２の遅延回路と、第１の遅延回路の出力と第２の遅延回路の出力より検出期間を決める第１の検出期間設定部と、第１の検出期間設定部で定められた期間に信号変化をカウントする第１のカウント部と、被検査クロックと第１のカウント部の出力により異常検出する第１の異常検出部と、第１の遅延回路の出力と第２の遅延回路の出力より検出期間を決める第２の検出期間設定部と、第２の検出期間設定部で定められた期間に信号変化をカウントする第２のカウント部と、被検査クロックと第２のカウント部の出力により異常検出する第２の異常検出部と、第１の異常検出部の出力と第２の異常検出部の出力を統合する検出結果統合部とを具備することを特徴とする。
【００２０】
また、上記の課題を解決するための手段を、上記とは異なるように表現すると、以下のような記載になる。上記の課題を解決するために、第１遅延量で被検査クロックを遅延させて第１遅延クロックを生成する第１遅延回路と、第１遅延量と異なる第２遅延量で被検査クロックを遅延させて第２遅延クロックを生成する第２遅延回路と、被検査クロックがＨｉｇｈレベルであるべき第１検出期間を決める第１検出期間設定部と、第１検出期間の被検査クロックの信号変化をカウントして第１カウント値を生成する第１カウント部と、被検査クロックと第１カウント値とに基づいて第１異常検出信号を生成する第１異常検出部と、被検査クロックＬｏｗレベルであるべき第２検出期間を決める第２検出期間設定部と、第２検出期間の被検査クロックの信号変化をカウントして第２カウント値を生成する第２カウント部と、被検査クロックと第２カウント値とに基づいて第２異常検出信号を生成する第２異常検出部と、第１異常検出信号と第２異常検出信号とに基づいて、被検査クロックの最終的な異常の有無を示す異常検出信号を生成する検出結果統合部とを具備するクロック異常検出回路を構成する。
【００２１】
ここにおいて、第１遅延量は、被検査クロックの半周期未満の遅延であり、第２遅延量は、被検査クロックの半周期以上、且つ、１周期未満の遅延であることが必要である。より具体的には、被検査クロックの半周期よりちょっと小さい遅延であり、第２遅延量は、被検査クロックの半周期よりちょっと大きい遅延であることが好ましい。
【発明の効果】
【００２２】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば、精度良くクロック異常を検出することが可能となる。
【図面の簡単な説明】
【００２３】
【図１】図１は、従来のクロック異常検出システムの全体構成を示すブロック図である。
【図２】図２は、従来のクロック異常検出システムの遅延信号出力部１０２の回路構成を示すブロック図である。
【図３】図３は、従来のクロック異常検出システムの同期信号検出部１０３の回路構成を示すブロック図である。
【図４】図４は、第１実施形態のクロック異常検出回路１０の構成を例示するブロック図である。
【図５】図５は、第１実施形態のクロック異常検出回路１０の動作を例示するタイミングチャートである。
【図６】図６は、第１実施形態のクロック異常検出回路１０の動作を例示するタイミングチャートである。
【図７】図７は、第１実施形態のクロック異常検出回路１０の動作を例示するタイミングチャートである。
【図８】図８は、第２実施形態のクロック異常検出回路１０の構成を例示するブロック図である。
【図９】図９は、第２実施形態のクロック異常検出回路１０の動作を例示するタイミングチャートである。
【発明を実施するための形態】
【００２４】
［第１実施形態］
以下、本発明の実施の形態を図面に基づいて説明する。なお、実施の形態を説明するための図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００２５】
図４は、第１実施形態のクロック異常検出回路１０の構成を例示するブロック図である。クロック異常検出回路１０は、クロック回路１と、第１遅延回路２と、第２遅延回路３と、ハイレベル側カウント部５１と、ロウレベル側カウント部５２と、ハイレベル側検出期間設定部６１と、ロウレベル側検出期間設定部６２と、ハイレベル側異常検出部７１と、ロウレベル側異常検出部７２と、検出結果統合部１５とを備えている。
【００２６】
クロック回路１は、被検査クロックＣＬＯＣＫを生成する。第１遅延回路２は、第１遅延被検査クロックＤＬ１を生成する。本実施形態の第１遅延被検査クロックＤＬ１は、被検査クロックＣＬＯＣＫを半周期未満遅延させた遅延被検査クロックである。第２遅延回路３は、第２遅延被検査クロックＤＬ２を生成する。本実施形態の第２遅延被検査クロックＤＬ２は、被検査クロックＣＬＯＣＫが半周期以上、１周期未満遅延させた遅延被検査クロックである。
【００２７】
ハイレベル側カウント部５１は、被検査クロックＣＬＯＣＫがＬｏｗレベルであるべき期間の、信号変化をカウントする。ロウレベル側カウント部５２は、被検査クロックＣＬＯＣＫがＨｉｇｈレベルであるべき期間の、信号変化をカウントする。
【００２８】
ハイレベル側検出期間設定部６１は、被検査クロックＣＬＯＣＫがＬｏｗレベルであるべき期間を特定する。本実施形態のハイレベル側検出期間設定部６１は、２入力ＯＲ回路を備えている。ロウレベル側検出期間設定部６２は、被検査クロックＣＬＯＣＫがＨｉｇｈレベルであるべき期間を特定する。本実施形態のロウレベル側検出期間設定部６２は、２入力ＮＡＮＤ回路を備えている。
【００２９】
ハイレベル側異常検出部７１は、被検査クロックＣＬＯＣＫがＬｏｗレベルであるべき期間の異常を検出する。ロウレベル側異常検出部７２は、被検査クロックＣＬＯＣＫがＨｉｇｈレベルであるべき期間の異常を検出する。検出結果統合部１５は、Ｈｉｇｈレベルである期間とＬｏｗレベルである期間との各々に対し、被検査クロックＣＬＯＣＫに異常が発生しているか否かを検出する。
【００３０】
図４を参照すると、クロック回路１は、ハイレベル側カウント部５１と、第１遅延回路２と、第２遅延回路３と、ハイレベル側異常検出部７１と、ロウレベル側カウント部５２と、ロウレベル側異常検出部７２とに接続されている。クロック回路１は、それらの回路ブロックに、被検査クロックＣＬＯＣＫを供給している。
【００３１】
第１遅延回路２の出力端は、ハイレベル側検出期間設定部６１の第１の入力端に接続されている。ハイレベル側検出期間設定部６１の第１の入力端には、第１遅延回路２から出力される第１遅延被検査クロックＤＬ１が供給されている。また、第１遅延回路２の出力端は、ロウレベル側検出期間設定部６２の第１の入力端に接続されている。ロウレベル側検出期間設定部６２の第１の入力端には、第１遅延回路２から出力される第１遅延被検査クロックＤＬ１が供給されている。
【００３２】
第２遅延回路３の出力端は、ハイレベル側検出期間設定部６１の第２の入力端に接続されている。ハイレベル側検出期間設定部６１の第２の入力端には、第２遅延回路３から出力される第２遅延被検査クロックＤＬ２が供給されている。また、第２遅延回路３は、ロウレベル側検出期間設定部６２の第２の入力端に接続されている。ロウレベル側検出期間設定部６２の第２の入力端には、第２遅延回路３から出力される遅延信号ＤＬ２が供給されている。
【００３３】
ハイレベル側検出期間設定部６１の出力端は、ハイレベル側カウント部５１の第２の入力端に接続されている。ハイレベル側カウント部５１は、フリップフロップ５１ａとカウンタ５１ｂとを備えている。フリップフロップ５１ａとカウンタ５１ｂのクロック入力端には、クロック回路１が生成する被検査クロックＣＬＯＣＫが供給される。フリップフロップ５１ａの出力端は、カウンタ５１ｂのＥＮ端子に接続され、そのＥＮ端子にフリップフロップ５１ａの出力が供給されている。フリップフロップ５１ａのリセット端子とカウンタ５１ｂのリセット端子には、ハイレベル側検出期間設定部６１の２入力ＯＲの出力端が接続され、そのリセット端子には、ハイレベル側検出期間設定部６１の出力であるＨｉｇｈノイズ検出期間設定信号ＣＬＲＨが供給されている。
【００３４】
ハイレベル側カウント部５１の出力端は、ハイレベル側異常検出部７１の第１の入力端に接続されている。ハイレベル側異常検出部７１は、比較器７１ａとフリップフロップ７１ｂとを備えている。カウンタ５１ｂの出力端は、比較器７１ａの第１の入力端に接続されている。カウンタ５１ｂは、第１エッジ数ＣＮＴＨを比較器７１ａに供給している。比較器７１ａの他方の入力端には、基準となる電位を設定する。比較器７１ａの出力端は、フリップフロップ７１ｂのデータ入力端に接続され、第１比較結果ＣＭＰＨが供給されている。フリップフロップ７１ｂのクロック入力端には、クロック回路１から供給される被検査クロックＣＬＯＣＫが入力される。
【００３５】
ロウレベル側検出期間設定部６２の出力端は、ロウレベル側カウント部５２の第２の入力端に接続されている。ロウレベル側カウント部５２は、上述したハイレベル側カウント部５１と同様な構成である。ロウレベル側カウント部５２は、フリップフロップ５２ａと、カウンタ５２ｂとを備えている。ロウレベル側カウント部５２の第１の入力端には、クロック回路１から出力される被検査クロックＣＬＯＣＫが供給されている。ロウレベル側カウント部５２の第２の入力端には、ロウレベル側検出期間設定部６２として機能する２入力ＮＡＮＤの出力端が接続され、Ｌｏｗノイズ検出期間設定信号ＣＬＲＬが供給されている。
【００３６】
ロウレベル側カウント部５２の出力端は、ロウレベル側異常検出部７２の第１の入力端に接続されている。ロウレベル側異常検出部７２は、上述したハイレベル側異常検出部７１と同様な構成である。ロウレベル側異常検出部７２は、比較器７２ａと、フリップフロップ７２ｂとを備えている。カウンタ５２ｂの出力である第２エッジ数ＣＮＴＬが、比較器７２ａの第１の入力端に供給されている。比較器７２ａの他方の入力端には、基準となる電位が設定されている。比較器７２ａの出力端は、フリップフロップ７２ｂのデータ入力端に接続され、第２比較結果ＣＭＰＬが供給されている。フリップフロップ７２ｂのクロック入力端には、クロック回路１から供給される被検査クロックＣＬＯＣＫが入力されている。
【００３７】
ハイレベル側異常検出部７１のフリップフロップ７１ｂの出力端は、検出結果統合部１５の第１の入力端に接続されている。ロウレベル側異常検出部７２のフリップフロップ７２ｂの出力端は、検出結果統合部１５の第２の入力端に接続されている。検出結果統合部１５は、２入力ＯＲで構成されている。ハイレベル側異常検出部７１の出力であるＨｉｇｈノイズ異常検出結果ＡＢＮＨは、検出結果統合部１５の第１の入力端に供給されている。ロウレベル側異常検出部７２の出力であるＬｏｗノイズ異常検出結果ＡＢＮＬは、検出結果統合部１５の第２の入力端に供給されている。検出結果統合部１５は、Ｈｉｇｈノイズ異常検出結果ＡＢＮＨとＬｏｗノイズ異常検出結果ＡＢＮＬとに基づいて、クロック異常検出回路出力信号ＡＢＮを生成する。クロック異常検出回路１０は、検出結果統合部１５の出力（２入力ＯＲの出力）であるクロック異常検出回路出力信号ＡＢＮを、最終的な異常検出信号として外部に出力する。
【００３８】
以下に、クロック異常検出回路１０の具体的な動作について、信号名を用いて詳細に説明をする。第１遅延回路２は、被検査クロックＣＬＯＣＫを半周期未満遅延させた被検査クロック（第１遅延被検査クロックＤＬ１）を生成し、ハイレベル側検出期間設定部６１と、ロウレベル側検出期間設定部６２とに供給している。第２遅延回路３は、被検査クロックＣＬＯＣＫを半周期以上１周期未満遅延させた被検査クロック（第２遅延被検査クロックＤＬ２）を生成し、ハイレベル側検出期間設定部６１と、ロウレベル側検出期間設定部６２とに供給している。
【００３９】
ハイレベル側検出期間設定部６１は、第１遅延回路２から供給された第１遅延被検査クロックＤＬ１と、第２遅延回路３から供給された第２遅延被検査クロックＤＬ２とを入力とし、どの期間のＨｉｇｈノイズを検出するかを示すＨｉｇｈノイズ検出期間設定信号ＣＬＲＨを、ハイレベル側カウント部５１のフリップフロップ５１ａとカウンタ５１ｂに供給する。
【００４０】
ロウレベル側検出期間設定部６２は、第１遅延回路２から供給された第１遅延被検査クロックＤＬ１と、第２遅延回路３から供給された第２遅延被検査クロックＤＬ２とを入力とし、どの期間のＬｏｗノイズを検出するかを示すＬｏｗノイズ検出期間設定信号ＣＬＲＬを、ロウレベル側カウント部５２のフリップフロップ５２ａとカウンタ５２ｂに供給する。
【００４１】
ハイレベル側カウント部５１は、フリップフロップ５１ａとカウンタ５１ｂとを備えている。フリップフロップ５１ａは、Ｈｉｇｈノイズ検出期間設定信号ＣＬＲＨで設定された検出期間において、被検査クロックＣＬＯＣＫの一つ目の立下りエッジで、立ち上がりエッジカウント期間設定信号ＦＦＯＵＴＨをＨｉｇｈにする。フリップフロップ５１ａは、その立ち上がりエッジカウント期間設定信号ＦＦＯＵＴＨを、イネーブル信号としてカウンタ５１ｂに供給する。
【００４２】
カウンタ５１ｂは、フリップフロップ５１ａから供給されたイネーブル信号（立ち上がりエッジカウント期間設定信号ＦＦＯＵＴＨ）がＨｉｇｈである場合に、Ｈｉｇｈノイズ検出期間設定信号ＣＬＲＨがＨｉｇｈである期間の被検査クロックＣＬＯＣＫの立ち上がりエッジをカウントする。カウンタ５１ｂは、カウントした立ち上がりエッジ数ＣＮＴＨを、ハイレベル側異常検出部７１の比較器７１ａに供給する。
【００４３】
ロウレベル側カウント部５２は、フリップフロップ５２ａとカウンタ５２ｂとを備えている。フリップフロップ５２ａは、Ｌｏｗノイズ検出期間設定信号ＣＬＲＬで設定された検出期間において、被検査クロックＣＬＯＣＫの一つ目の立ち上がりエッジで、立下りエッジカウント期間設定信号ＦＦＯＵＴＬをＨｉｇｈにする。フリップフロップ５２ａは、その立ち下がりエッジカウント期間設定信号ＦＦＯＵＴＬを、イネーブル信号としてカウンタ５２ｂに供給する。
【００４４】
カウンタ５２ｂは、フリップフロップ５２ａから供給されたイネーブル信号（立下りエッジカウント期間設定信号ＦＦＯＵＴＬ）がＨｉｇｈである場合に、Ｌｏｗノイズ検出期間設定信号ＣＬＲＬがＨｉｇｈである期間の被検査クロックＣＬＯＣＫの立下りエッジをカウントする。カウンタ５２ｂは、カウントした立下りエッジ数ＣＮＴＬを、ロウレベル側異常検出部７２の比較器７２ａに供給する。
【００４５】
ハイレベル側異常検出部７１は、比較器７１ａとフリップフロップ７１ｂとを備えている。ハイレベル側異常検出部７１は、ハイレベル側カウント部５１の出力信号に応答して、Ｈｉｇｈノイズ異常検出結果ＡＢＮＨを生成する。Ｈｉｇｈノイズ異常検出結果ＡＢＮＨは、被検査クロックＣＬＯＣＫのＬｏｗであるべき期間にＨｉｇｈノイズがあるかどうかを示す。ハイレベル側異常検出部７１は、そのＨｉｇｈノイズ異常検出結果ＡＢＮＨを、検出結果統合部１５に供給する。
【００４６】
比較器７１ａは、ハイレベル側カウント部５１から供給される立ち上がりエッジ数ＣＮＴＨと、期待値０とを比較する。比較器７１ａは、第１エッジ数ＣＮＴＨと期待値０とが一致したら、立ち上がりエッジ数ＣＮＴＨの値と期待値０との比較結果である第１比較結果ＣＭＰＨをＬｏｗにする。比較器７１ａは、その第１比較結果ＣＭＰＨを、フリップフロップ７１ｂに供給する。また、比較器７１ａは、第１エッジ数ＣＮＴＨと期待値０とが一致しなかったら、第１比較結果ＣＭＰＨをＨｉｇｈにしてフリップフロップ７１ｂに供給する。
【００４７】
フリップフロップ７１ｂは、比較器７１ａの出力である第１比較結果ＣＭＰＨを入力とし、被検査クロックＣＬＯＣＫの立ち上がりエッジでサンプリングを行う。フリップフロップ７１ｂは、サンプリングされたＨｉｇｈノイズ異常検出結果ＡＢＮＨを、異常検出結果として、検出結果統合部１５に供給する。
【００４８】
ロウレベル側異常検出部７２は、比較器７２ａとフリップフロップ７２ｂとを備えている。ロウレベル側異常検出部７２は、ロウレベル側カウント部５２の出力信号に応答して、Ｌｏｗノイズ異常検出結果ＡＢＮＬを生成する。Ｌｏｗノイズ異常検出結果ＡＢＮＬは、被検査クロックＣＬＯＣＫのＨｉｇｈであるべき期間にＬｏｗノイズがあるかどうかを示す。ロウレベル側異常検出部７２は、Ｌｏｗノイズ異常検出結果ＡＢＮＬを、検出結果統合部１５に供給する。
【００４９】
比較器７２ａは、ロウレベル側カウント部５２から供給される立下りエッジ数ＣＮＴＬと期待値０とを比較する。比較器７２ａは、第２エッジ数ＣＮＴＬと期待値０とが一致したら、立下りエッジ数ＣＮＴＬの値と期待値０との比較結果である第２比較結果ＣＭＰＬをＬｏｗにする。比較器７２ａは、その第２比較結果ＣＭＰＬをフリップフロップ７２ｂに供給する。比較器７２ａは、第２エッジ数ＣＮＴＬと期待値０とが一致しなかったら、第２比較結果ＣＭＰＬをＨｉｇｈにしてフリップフロップ７２ｂに供給する。
【００５０】
フリップフロップ７２ｂは、比較器７２ａの出力である第２比較結果ＣＭＰＬを入力とし、被検査クロックＣＬＯＣＫの立下りエッジでサンプリングを行う。フリップフロップ７２ｂは、サンプリングされたＬｏｗノイズ異常検出結果ＡＢＮＬを、異常検出結果として、検出結果統合部１５に供給する。
【００５１】
検出結果統合部１５は、ハイレベル側異常検出部７１とロウレベル側異常検出部７２との両方からの検出結果の論理和を取りまとめて一つの信号（クロック異常検出回路出力信号ＡＢＮ）にする。
【００５２】
図５〜７は、本実施形態のクロック異常検出回路１０の動作を例示するタイミングチャートである。以下では、本実施形態の理解を容易にするために、被検査クロックＣＬＯＣＫにノイズ異常が発生してない場合の動作に関して、先に説明する。図５は、被検査クロックＣＬＯＣＫにノイズ異常が発生してない場合のタイミングチャートである。
【００５３】
図５を参照して、Ｌｏｗ期間のノイズを検出する動作、およびＨｉｇｈ期間のノイズを検出する動作の説明を行う。ハイレベル側検出期間設定部６１の供給するＨｉｇｈノイズ検出期間設定信号ＣＬＲＨによって、ノイズの検出期間が設定される。Ｈｉｇｈノイズ検出期間設定信号ＣＬＲＨのＨｉｇｈからＬｏｗへの変化時に、ハイレベル側カウント部５１のフリップフロップ５１ａとカウンタ５１ｂはクリアされる。Ｈｉｇｈノイズ検出期間設定信号ＣＬＲＨがＬｏｗ期間は立ち上がりエッジをカウントしない。
【００５４】
ハイレベル側カウント部５１は、Ｈｉｇｈノイズ検出期間設定信号ＣＬＲＨに基づいて立ち上がりエッジ数をカウントする期間を設定する。カウンタ５１ｂは、立ち上がりエッジカウント期間設定信号ＦＦＯＵＴＨがＨｉｇｈであれば、被検査クロックＣＬＯＣＫにある立ち上がりエッジをカウントし、立ち上がりエッジカウント期間設定信号ＦＦＯＵＴＨがＬｏｗであれば、被検査クロックＣＬＯＣＫにある立ち上がりエッジをカウントしない。
【００５５】
Ｈｉｇｈノイズ検出期間設定信号ＣＬＲＨがＨｉｇｈである期間に、被検査クロックＣＬＯＣＫの１つ目の立下りエッジ、すなわち、被検査クロックＣＬＯＣＫのＬｏｗであるべき期間の境界である立下りエッジで、立ち上がりエッジカウント期間設定信号ＦＦＯＵＴＨをＨｉｇｈにする。立ち上がりエッジカウント期間設定信号ＦＦＯＵＴＨをＨｉｇｈレベルにしてから被検査クロックＣＬＯＣＫにある立ち上がりエッジをカウントする。カウントされたエッジ数は、第１エッジ数ＣＮＴＨとしてハイレベル側異常検出部７１に供給される。
【００５６】
ハイレベル側異常検出部７１において、立ち上がりエッジ数信号ＣＮＴＨと期待値を比較し、比較結果を第１比較結果ＣＭＰＨとしてフリップフロップ７１ｂに供給する。図５に例示されているタイミングチャートの場合は、ノイズがない場合である。立ち上がりエッジ数信号ＣＮＴＨは、被検査クロックＣＬＯＣＫの正常な立ち上がりエッジまで“０”であり、期待値０と一致するので、第１比較結果ＣＭＰＨがＬｏｗである。被検査クロックＣＬＯＣＫの正常な立ち上がりエッジで、立ち上がりエッジ数信号ＣＮＴＨの値は“１”になり、期待値０と不一致するので、第１比較結果ＣＭＰＨがＨｉｇｈになる。被検査クロックＣＬＯＣＫの正常な立ち上がりエッジで、第１比較結果ＣＭＰＨの値のＬｏｗをサンプリングする。
【００５７】
フリップフロップ７１ｂは、被検査クロックＣＬＯＣＫの立ち上がりエッジで、第１比較結果ＣＭＰＨをサンプリングする。サンプリングされた第１比較結果ＣＭＰＨの値であるＬｏｗレベルを、Ｈｉｇｈノイズ異常検出結果ＡＢＮＨとして検出結果統合部１５に供給する。図５に示されているように、Ｈｉｇｈノイズ異常検出結果ＡＢＮＨがＬｏｗになっている。
【００５８】
次に、Ｈｉｇｈ期間のノイズを検出する動作について説明を行う。ロウレベル側検出期間設定部６２の供給する信号（Ｌｏｗノイズ検出期間設定信号ＣＬＲＬ）によって、ノイズの検出期間が設定される。Ｌｏｗノイズ検出期間設定信号ＣＬＲＬのＨｉｇｈからＬｏｗへの変化を受けて、ロウレベル側カウント部５２のフリップフロップ５２ａとカウンタ５２ｂはクリアされる。Ｌｏｗノイズ検出期間設定信号ＣＬＲＬがＬｏｗの期間は、立下りエッジをカウントしない。
【００５９】
ロウレベル側カウント部５２は、Ｌｏｗノイズ検出期間設定信号ＣＬＲＬに基づいて立下りエッジ数をカウントする期間を設定する。カウンタ５２ｂは、立下りエッジカウント期間設定信号ＦＦＯＵＴＬがＨｉｇｈであれば、被検査クロックＣＬＯＣＫにある立下りエッジをカウントし、立下りエッジカウント期間設定信号ＦＦＯＵＴＬがＬｏｗであれば、被検査クロックＣＬＯＣＫにある立下りエッジをカウントしない。
【００６０】
Ｌｏｗノイズ検出期間設定信号ＣＬＲＬがＨｉｇｈである期間に、被検査クロックＣＬＯＣＫの１つ目の立ち上がりエッジで、すなわち、被検査クロックＣＬＯＣＫのＨｉｇｈであるべき期間の境界である立ち上がりエッジで、立下りエッジカウント期間設定信号ＦＦＯＵＴＬをＨｉｇｈにする。立下りエッジカウント期間設定信号ＦＦＯＵＴＬをＨｉｇｈレベルにしてから被検査クロックＣＬＯＣＫにある立下りエッジをカウントする。カウントされたエッジ数は、第２エッジ数ＣＮＴＬとしてロウレベル側異常検出部７２に供給される。
【００６１】
ロウレベル側異常検出部７２において、立下りエッジ数信号ＣＮＴＬと期待値を比較し、比較結果を第２比較結果ＣＭＰＬとしてフリップフロップ７２ｂに供給する。図５に例示されているタイミングチャートの場合は、被検査クロックＣＬＯＣＫの正常な立下りエッジまで立下りエッジ数信号ＣＮＴＬの値が“０”であり、期待値０と一致するので、第２比較結果ＣＭＰＬがＬｏｗである。被検査クロックＣＬＯＣＫの正常な立下りエッジで、立下りエッジ数信号ＣＮＴＬの値が“１”になり、期待値０と不一致するので、第２比較結果ＣＭＰＬがＨｉｇｈになる。被検査クロックＣＬＯＣＫの正常な立下りエッジで、第２比較結果ＣＭＰＬの値のＬｏｗをサンプリングする。
【００６２】
フリップフロップ７２ｂにおいて、被検査クロックＣＬＯＣＫの立下りエッジで、第２比較結果ＣＭＰＬをサンプリングする。サンプリングされた第２比較結果ＣＭＰＬの値であるＬｏｗレベルを、Ｌｏｗノイズ異常検出結果ＡＢＮＬとして供給する。図５に例示されているタイミングチャートの場合には、ノイズがないので、Ｌｏｗノイズ異常検出結果ＡＢＮＬがＬｏｗになっている。
【００６３】
検出結果統合部１５は、Ｈｉｇｈノイズ異常検出結果ＡＢＮＨとＬｏｗノイズ異常検出結果ＡＢＮＬをＯＲゲートの入力として受け取る。Ｈｉｇｈノイズ異常検出結果ＡＢＮＨとＬｏｗノイズ異常検出結果ＡＢＮＬの何れかがＨｉｇｈであれば、クロック異常検出回路出力信号ＡＢＮがＨｉｇｈになる。図５に例示されているタイミングチャートの場合には、Ｌｏｗであるべき期間にＨｉｇｈノイズが発生していない。また、Ｈｉｇｈであるべき期間にＬｏｗノイズが発生していない。したがって、Ｈｉｇｈノイズ異常検出結果ＡＢＮＨとＬｏｗノイズ異常検出結果ＡＢＮＬが、それぞれＬｏｗになるので、クロック異常検出回路出力信号ＡＢＮがＬｏｗになる。Ｌｏｗレベルのクロック異常検出回路出力信号ＡＢＮは、被検査クロックＣＬＯＣＫにノイズが無いことを示している。
【００６４】
図６は、被検査クロックＣＬＯＣＫがＬｏｗであるべき期間に、ノイズが発生した場合の動作を例示するタイミングチャートである。図６を参照してＬｏｗ期間のノイズを検出する動作について説明を行う。
【００６５】
Ｈｉｇｈノイズ検出期間設定信号ＣＬＲＨがＨｉｇｈである期間に、被検査クロックＣＬＯＣＫの１つ目の立下りエッジから被検査クロックＣＬＯＣＫの立ち上がりエッジをカウントする。ノイズの立ち上がりエッジで立ち上がりエッジ数ＣＮＴＨが“１”になり、被検査クロックＣＬＯＣＫの正常な立ち上がりエッジで立ち上がりエッジ数ＣＮＴＨが“２”になり、第１比較結果ＣＭＰＨがＨｉｇｈになる。被検査クロックＣＬＯＣＫの立ち上がりエッジでサンプリングされた第１比較結果ＣＭＰＨをＨｉｇｈノイズ異常検出結果ＡＢＮＨとして供給する。なお、図６に例示するタイミングチャートでは、Ｈｉｇｈであるべき期間にＬｏｗノイズがないので、この期間における動作は、上述の図５の場合と同じである。
【００６６】
検出結果統合部１５では、Ｈｉｇｈノイズ異常検出結果ＡＢＮＨとＬｏｗノイズ異常検出結果ＡＢＮＬをＯＲゲートの入力として受け取る。Ｈｉｇｈノイズ異常検出結果ＡＢＮＨとＬｏｗノイズ異常検出結果ＡＢＮＬの何れがＨｉｇｈであれば、クロック異常検出回路出力信号ＡＢＮがＨｉｇｈになる。図６に例示するタイミングチャートでは、ノイズがあるためＨｉｇｈノイズ異常検出結果ＡＢＮＨがＨｉｇｈになる。これによって、クロック異常検出回路出力信号ＡＢＮがＨｉｇｈになり、被検査クロックＣＬＯＣＫにノイズがあると判断することができる。
【００６７】
図７は、被検査クロックＣＬＯＣＫがＨｉｇｈであるべき期間に、ノイズが発生した場合の動作を例示するタイミングチャートである。なお、Ｌｏｗ期間のノイズを検出する動作は、その期間にＨｉｇｈノイズがないので、上述の図５の動作と同じである。
【００６８】
図７を参照して、Ｈｉｇｈ期間のノイズを検出する動作の説明を行う。Ｌｏｗノイズ検出期間設定信号ＣＬＲＬがＨｉｇｈである期間に、被検査クロックＣＬＯＣＫの１つ目の立ち上がりから被検査クロックＣＬＯＣＫの立下りエッジをカウントする。ノイズの立下りエッジで、立下りエッジ数ＣＮＴＬが“１”になり、被検査クロックＣＬＯＣＫの正常な立下りエッジで立下りエッジ数ＣＮＴＬが“２”になり、第２比較結果ＣＭＰＬがＨｉｇｈになる。そして、被検査クロックＣＬＯＣＫの立下りエッジでサンプリングされた第２比較結果ＣＭＰＬをＬｏｗノイズ異常検出結果ＡＢＮＬとして供給する。図７に例示されるタイミングチャートでは、その期間にノイズがあるため、Ｌｏｗノイズ異常検出結果ＡＢＮＬがＨｉｇｈになる。したがって、クロック異常検出回路出力信号ＡＢＮがＨｉｇｈになり、被検査クロックＣＬＯＣＫにノイズがあると判断することができる。
【００６９】
本実施形態のクロック異常検出回路１０は、被検査クロックを遅延させた２つの遅延クロック（第１遅延被検査クロックＤＬ１、第２遅延被検査クロックＤＬ２）を生成している。そして、検出期間設定部は、被検査クロックがＨｉｇｈであるべき期間を含み、半周期より長く１周期より短い検出期間と、被検査クロックがＬｏｗであるべき期間を含み、半周期より長く１周期より短い検出期間を決めている。
【００７０】
カウント部は、検出期間にある被検査クロックのノイズのエッジ数をカウントする。異常検出部は、カウント部の供給するカウント値から、被検査クロックの異常検出を行う。ここにおいて、検出期間設定部とカウント部と異常検出部を、被検査クロックのＬｏｗであるべき期間の異常を検出対象とする回路用と、被検査クロックのＨｉｇｈであるべき期間の異常を検出対象とする回路用として、それぞれ独立に構築する。検出結果統合部は、両検出対象の異常検出部の検出結果を統合することで、高精度の異常検出を実現している。
【００７１】
被検査クロックがＬｏｗであるべき期間、及び、被検査クロックがＨｉｇｈであるべき期間を生成し、Ｌｏｗであるべき期間にある被検査クロックの立ち上がりエッジをカウントし、Ｈｉｇｈであるべき期間にある被検査クロックの立下りエッジカウントを行ない、任意の場所のノイズによる立ち上がり、及び、立下りエッジの発生が検出可能となり、ノイズが被検査クロック信号のどこに有っても検出可能な効果が得られる。
【００７２】
［第２実施形態］
以下に、本発明の第２実施形態について説明を行う。図８は、第２実施形態のクロック異常検出回路１０の構成を例示するブロック図である。第２実施形態のクロック異常検出回路１０は、被検査クロックＣＬＯＣＫのＨｉｇｈ期間のノイズ、Ｌｏｗ期間のノイズ、およびデューティー異常を検出対象としている。なお、第２実施形態のクロック異常検出回路１０において、クロック回路１、第１遅延回路２、第２遅延回路３、ハイレベル側検出期間設定部６１、およびロウレベル側検出期間設定部６２の構成は、第１実施形態と同様であるので、詳細な説明を省略する。
【００７３】
図８を参照すると、第２実施形態のクロック異常検出回路１０において、ハイレベル側カウント部５１は、カウントされた立ち上がりエッジ数ＣＮＴＨをハイレベル側異常検出部７１に供給する。そのハイレベル側カウント部５１は、被検査クロックＣＬＯＣＫの立下りエッジが発生した場合にＨｉｇｈとなる立ち上がりエッジカウント期間設定信号ＦＦＯＵＴＨもハイレベル側異常検出部７１に供給する。
【００７４】
また、第２実施形態のロウレベル側カウント部５２は、カウントされた立下りエッジ数ＣＮＴＬをロウレベル側異常検出部７２に供給する。そのロウレベル側カウント部５２は、被検査クロックＣＬＯＣＫの立ち上がりエッジが発生した場合にＨｉｇｈとなる立ち下がりエッジカウント期間設定信号ＦＦＯＵＴＬもロウレベル側異常検出部７２に供給する。
【００７５】
第２実施形態のハイレベル側異常検出部７１は、比較器７１ａと、フリップフロップ７１ｂと、比較器７１ｃと、フリップフロップ７１ｄと、オアゲート７１ｅとを備えている。そのハイレベル側異常検出部７１は、カウントされた第１エッジ数ＣＮＴＨと、立ち上がりエッジカウント期間設定信号ＦＦＯＵＴＨと、被検査クロックＣＬＯＣＫを入力として受け取る。
【００７６】
比較器７１ａは、第１実施形態と同様の構成である。フリップフロップ７１ｂは、比較器７１ａの出力である第１比較結果ＣＭＰＨを入力とし、被検査クロックＣＬＯＣＫの立ち上がりエッジで第１比較結果ＣＭＰＨのサンプリングを行う。フリップフロップ７１ｂは、サンプリングされた値であるＨｉｇｈノイズ異常検出結果ＡＢＮＨを、オアゲート７１ｅに供給する。
【００７７】
比較器７１ｃは、立ち上がりエッジカウント期間設定信号ＦＦＯＵＴＨを入力とし、Ｌｏｗ期間が長くなったデューティー異常検出の為の比較結果（以後、第３比較結果ＣＭＰＤＨと称す）をフリップフロップ７１ｄに供給する。フリップフロップ７１ｄは、被検査クロックＣＬＯＣＫと、第３比較結果ＣＭＰＤＨを入力とし、被検査クロックＣＬＯＣＫの立ち上がりエッジでサンプリングを行う。フリップフロップ７１ｄは、サンプリングされた値を、オアゲート７１ｅに供給する。フリップフロップ７１ｄの出力は、Ｈｉｇｈノイズ検出期間設定信号ＣＬＲＨがＨｉｇｈである期間に、被検査クロックＣＬＯＣＫの立下りと立ち上がりが順番に１回ずつ発生していない時に、Ｈｉｇｈとなる。
【００７８】
オアゲート７１ｅは、Ｈｉｇｈノイズ異常検出結果ＡＢＮＨと、Ｌｏｗ期間が長くなったデューティー異常検出結果（以後、第１デューティー異常検出結果ＡＢＮＤＨと称す）を入力として受け取る。オアゲート７１ｅは、ノイズ異常検出結果とデューティー異常検出結果をまとめるように機能する。具体的には、オアゲート７１ｅは、Ｈｉｇｈノイズ異常検出結果ＡＢＮＨとＬｏｗ期間が長くなったデューティー異常検出結果ＡＢＮＤＨとのオア演算をした演算結果（以後、ハイレベル側異常検出部出力信号ＡＢＮＯＲＨと称す）を供給する。
【００７９】
第２実施形態のロウレベル側異常検出部７２は、比較器７２ａと、フリップフロップ７２ｂと、比較器７２ｃと、フリップフロップ７２ｄと、オアゲート７２ｅとを備えている。ロウレベル側異常検出部７２は、カウントされた第２エッジ数ＣＮＴＬと立ち下がりエッジカウント期間設定信号ＦＦＯＵＴＬと被検査クロックＣＬＯＣＫを入力として受け取る。
【００８０】
比較器７２ａは、第１実施形態と同様の構成である。フリップフロップ７２ｂは、比較器７２ａの出力である第２比較結果ＣＭＰＬを入力として受け取る。フリップフロップ７２ｂは、被検査クロックＣＬＯＣＫの立下りエッジで第２比較結果ＣＭＰＬのサンプリングを行う。フリップフロップ７２ｂは、サンプリングされた値であるＬｏｗノイズ異常検出結果ＡＢＮＬを、オアゲート７２ｅに供給する。
【００８１】
比較器７２ｃは、立ち下がりエッジカウント期間設定信号ＦＦＯＵＴＬを入力として受け取る。比較器７２ｃは、Ｈｉｇｈ期間が長くなったデューティー異常検出の為の比較結果（以後、第４比較結果ＣＭＰＤＬと称す）を、フリップフロップ７２ｄに供給する。フリップフロップ７２ｄは、被検査クロックＣＬＯＣＫと第４比較結果ＣＭＰＤＬを入力として受け取る。フリップフロップ７２ｄは、被検査クロックＣＬＯＣＫの立下りエッジでサンプリングを行う。フリップフロップ７２ｄは、サンプリングされた値をオアゲート７２ｅに供給する。フリップフロップ７２ｄの出力は、Ｌｏｗノイズ検出期間設定信号ＣＬＲＬがＨｉｇｈである期間に、被検査クロックＣＬＯＣＫの立ち上がりと立下りが順番に１回ずつ発生していない時にＨｉｇｈとなる。
【００８２】
オアゲート７２ｅは、Ｌｏｗノイズ異常検出結果ＡＢＮＬと、Ｈｉｇｈ期間が長くなったデューティー異常検出結果（以後、第２デューティー異常検出結果ＡＢＮＤＬと称す）を入力として受け取る。オアゲート７２ｅは、ノイズ異常検出結果とデューティー異常検出結果をまとめるように機能する。具体的にはオアゲート７２ｅは、Ｌｏｗノイズ異常検出結果ＡＢＮＬとＨｉｇｈ期間が長くなったデューティー異常検出結果ＡＢＮＤＬのオア演算をした演算結果（以後、ロウレベル側異常検出部出力信号ＡＢＮＯＲＬと称す）を供給する。
【００８３】
第２実施形態の検出結果統合部１５は、ハイレベル側異常検出部７１の出力信号であるハイレベル側異常検出部出力信号ＡＢＮＯＲＨと、ロウレベル側異常検出部７２の出力信号であるロウレベル側異常検出部出力信号ＡＢＮＯＲＬを入力として受け取る。その検出結果統合部１５は、ハイレベル側異常検出部出力信号ＡＢＮＯＲＨとロウレベル側異常検出部出力信号ＡＢＮＯＲＬとに基づいてクロック異常検出回路出力信号ＡＢＮを生成して外部に供給する。
【００８４】
図９は、第２実施形態のクロック異常検出回路１０の動作を例示するタイミングチャートである。図９は、被検査クロックＣＬＯＣＫのＨｉｇｈ期間が長くなったデューティー異常が発生した時の、クロック異常検出回路１０の動作を例示している。
【００８５】
第２実施形態のクロック異常検出回路１０において、クロック回路１と、第１遅延回路２と、第２遅延回路３と、ハイレベル側検出期間設定部６１と、ロウレベル側検出期間設定部６２と、ハイレベル側カウント部５１と、ロウレベル側カウント部５２とは、第１実施形態と同様に動作する。また、第２実施形態において、ハイレベル側異常検出部７１の比較器７１ａとフリップフロップ７１ｂとは、第１実施形態と同様に動作する。また、第２実施形態において、ロウレベル側異常検出部７２の比較器７２ａとフリップフロップ７２ｂとは、第１実施形態と同様に動作する。
【００８６】
第２実施形態のクロック異常検出回路１０では、比較器７１ｃで立ち上がりエッジカウント期間設定信号ＦＦＯＵＴＨを期待値のＨｉｇｈと比較し、第３比較結果ＣＭＰＤＨをフリップフロップ７１ｄに供給する。フリップフロップ７１ｄは、被検査クロックＣＬＯＣＫの立ち上がりエッジで、第３比較結果ＣＭＰＤＨをサンプリングする。フリップフロップ７１ｄは、サンプリングされた値のＬｏｗをオアゲート７１ｅに供給する。オアゲート７１ｅでは、Ｈｉｇｈノイズ異常検出結果ＡＢＮＨと第１デューティー異常検出結果ＡＢＮＤＨを、一つの信号であるハイレベル側異常検出部出力信号ＡＢＮＯＲＨにまとめ、Ｌｏｗを供給する。
【００８７】
比較器７２ｃでは、立下りエッジカウント期間設定信号ＦＦＯＵＴＬを期待値のＨｉｇｈと比較し、第４比較結果ＣＭＰＤＬをフリップフロップ７２ｄに入力する。フリップフロップ７２ｄは、被検査クロックＣＬＯＣＫの立下りエッジで、第４比較結果ＣＭＰＤＬをサンプリングする。フリップフロップ７２ｄは、サンプリングされた値のＨｉｇｈをオアゲート７２ｅに供給する。オアゲート７２ｅでは、Ｌｏｗノイズ異常検出結果ＡＢＮＬと第２デューティー異常検出結果ＡＢＮＤＬを一つの信号であるロウレベル側異常検出部出力信号ＡＢＮＯＲＬにまとめ、Ｈｉｇｈを供給する。
【００８８】
検出結果統合部１５は、ハイレベル側異常検出部７１の出力信号であるハイレベル側異常検出部出力信号ＡＢＮＯＲＨと、ロウレベル側異常検出部７２の出力信号であるロウレベル側異常検出部出力信号ＡＢＮＯＲＬを、一つの信号としてクロック異常検出回路出力信号ＡＢＮにまとめ、総異常検出信号として異常検出時にＨｉｇｈを出力する。ユーザは、そのクロック異常検出回路出力信号ＡＢＮに基づいて、異常ありと判断することが可能となる。
【００８９】
第２実施形態のクロック異常検出回路１０は、第１実施形態のハイレベル側異常検出部７１の構成に対し、さらに比較器７１ｃ、フリップフロップ７１ｄ、オアゲート７１ｅを追加している。そして、第３比較結果ＣＭＰＤＨをサンプリングすることで、Ｈｉｇｈノイズのカウント期間に被検査クロックＣＬＯＣＫの立下りと立ち上がりが順番に発生しているかを確認している。この構成・動作によって、Ｌｏｗ期間が長くなった場合のデューティー異常を検出している。
【００９０】
また、第２実施形態のクロック異常検出回路１０は、第１実施形態のロウレベル側異常検出部７２の構成に対し、さらに比較器７２ｃ、フリップフロップ７２ｄ、オアゲート７２ｅを追加している。そして、被検査クロックＣＬＯＣＫの立下りエッジで第４比較結果ＣＭＰＤＬをサンプリングすることで、Ｌｏｗノイズのカウント期間に被検査クロックＣＬＯＣＫの立ち上がりと立下りが順番に発生しているかを確認している。この構成・動作によって、Ｈｉｇｈ期間が長くなった場合のデューティー異常を検出している。
【００９１】
そして、検出結果統合部１５は、ハイレベル側異常検出部７１とロウレベル側異常検出部７２の結果を統合している。これにより、第２実施形態のクロック異常検出回路１０は、被検査クロックＣＬＯＣＫのＬｏｗ期間が長くなった場合のデューティー異常と、Ｈｉｇｈ期間が長くなった場合のデューティー異常の両方を検出可能としている。
【００９２】
換言すると、第２実施形態のクロック異常検出回路１０は、検出期間設定部が、被検査クロックを遅延させた２つの信号から、被検査クロックがＨｉｇｈであるべき期間を含み、半周期より長く１周期より短い検出期間と、被検査クロックがＬｏｗであるべき期間を含み、半周期より長く１周期より短い検出期間を決める。そして、カウント部は、検出期間にある被検査クロックのエッジ数をカウントする。異常検出部は、カウント部の供給するカウント値とカウント期間設定信号から、被検査クロックの異常検出を行う。
【００９３】
ここで、検出期間設定部とカウント部と異常検出部を、被検査クロックのＬｏｗであるべき期間の異常とＬｏｗ期間が長くなったことを検出対象とする回路用と、被検査クロックのＨｉｇｈであるべき期間の異常とＨｉｇｈ期間が長くなったことを検出対象とする回路用として夫々個別に構成する。
【００９４】
両検出対象の異常検出部の検出結果を統合する検出結果統合部を有することで、被検査クロックがＬｏｗであるべき期間及び、被検査クロックがＨｉｇｈであるべき期間を生成する。この場合において、Ｌｏｗであるべき期間にある被検査クロックの立ち上がりエッジのカウント、および被検査クロックの立下りと立ち上がりが順番に１回発生しているかの認識を行う。また、Ｈｉｇｈであるべき期間にある被検査クロックの立下りエッジのカウント、および被検査クロックの立ち上がりと立下りが順番に１回発生しているかの認識を行う。
【００９５】
任意の場所のノイズによる立ち上がりと立下りエッジの発生、及び、Ｈｉｇｈ期間が長くなったこと、Ｌｏｗ期間が長くなったことにより、ノイズが被検査クロックのどこに有っても検出可能な効果と、被検査クロックのデューティー異常が検出可能な効果が得られる。
【００９６】
上述してきたように、本願発明におけるクロック異常検出回路１０は、ノイズが被検査クロックのどこに有っても、検出可能である。クロック異常検出回路１０は、被検査クロックがＬｏｗであるべき期間を生成し、Ｌｏｗであるべき期間にある被検査クロックの立ち上がりエッジをカウントする。また、被検査クロックがＨｉｇｈであるべき期間を生成し、Ｈｉｇｈであるべき期間にある被検査クロックの立下りエッジをカウントする。それによって、任意の場所のノイズによる立ち上がり、及び、立下りエッジの発生が検出できる。
【００９７】
また、本願発明におけるクロック異常検出回路１０は、ノイズの検出とともに、被検査クロックのデューティー異常が検出可能である。クロック異常検出回路１０は、Ｈｉｇｈノイズの検出期間を生成し、Ｈｉｇｈノイズのカウント期間に被検査クロックの立下りと立ち上がりが順番に発生しているかを確認する。また、Ｌｏｗノイズのカウント期間を生成し、Ｌｏｗノイズの検出期間に被検査クロックの立ち上がりと立下りが順番に発生しているかを確認する。それによって、被検査クロックのＬｏｗ期間が長くなった場合のデューティー異常とＨｉｇｈ期間が長くなった場合のデューティー異常の両方が検出できる。
【００９８】
以上、本願発明の実施の形態を具体的に説明した。本願発明は上述の実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。また、上述の複数の実施形態は、その構成・動作に矛盾が生じない範囲において、組み合わせて実施することが可能である。
【符号の説明】
【００９９】
１…クロック回路
２…第１遅延回路
３…第２遅延回路
１０…クロック異常検出回路
１５…検出結果統合部
５１…ハイレベル側カウント部
５１ａ…フリップフロップ
５１ｂ…カウンタ
５２…ロウレベル側カウント部
５２ａ…フリップフロップ
５２ｂ…カウンタ
６１…ハイレベル側検出期間設定部
６２…ロウレベル側検出期間設定部
７１…ハイレベル側異常検出部
７１ａ…比較器
７１ｂ…フリップフロップ
７１ｃ…比較器
７１ｄ…フリップフロップ
７１ｅ…オアゲート
７２…ロウレベル側異常検出部
７２ａ…比較器
７２ｂ…フリップフロップ
７２ｃ…比較器
７２ｄ…フリップフロップ
７２ｅ…オアゲート
２００…クロック異常検出システム
２０１…集積回路ブロック
１０１…クロック周期検出回路
１０２…遅延信号出力部
１０３…同期信号検出部
１０４…遅延段数演算部
１０５…ＣＰＵ＿Ｉ／Ｆ
１１０…異常検出部
１１０ａ…ＣＰＵ
１１１…記憶部
ＤＣ１〜ＤＣｍ…ディレイセル
Ｄ１〜Ｄｍ…遅延信号
ＣＬＫ…基準クロック信号
ＩＮＶ…インバータ
ＦＦ１〜ＦＦｍ…フリップフロップ
Ｎ１〜Ｎｍ…ＮＡＮＤ回路
ＣＬＯＣＫ…被検査クロック
ＤＬ１…第１遅延被検査クロック
ＤＬ２…第２遅延被検査クロック
ＣＬＲＨ… Ｈｉｇｈノイズ検出期間設定信号
ＣＬＲＬ…Ｌｏｗノイズ検出期間設定信号
ＦＦＯＵＴＨ…立ち上がりエッジカウント期間設定信号
ＦＦＯＵＴＬ…立ち下がりエッジカウント期間設定信号
ＣＮＴＨ…第１エッジ数
ＣＮＴＬ…第２エッジ数
ＣＭＰＨ…第１比較結果
ＣＭＰＬ…第２比較結果
ＣＭＰＤＨ…第３比較結果
ＣＭＰＤＬ…第４比較結果
ＡＢＮＨ…Ｈｉｇｈノイズ異常検出結果
ＡＢＮＬ…Ｌｏｗノイズ異常検出結果
ＡＢＮＤＨ…第１デューティー異常検出結果
ＡＢＮＤＬ…第２デューティー異常検出結果
ＡＢＮＯＲＨ…ハイレベル側異常検出部出力信号
ＡＢＮＯＲＬ…ロウレベル側異常検出部出力信号
ＡＢＮ…クロック異常検出回路出力信号
【図１】
2011199743.tif 000003
【図２】
2011199743.tif 000004
【図３】
2011199743.tif 000005
【図４】
2011199743.tif 000006
【図５】
2011199743.tif 000007
【図６】
2011199743.tif 000008
【図７】
2011199743.tif 000009
【図８】
2011199743.tif 000010
【図９】
2011199743.tif 000011