(57)【特許請求の範囲】
【請求項１】
互いに異なる非同期の複数の外部クロック信号を入力可能な複数の内部回路として、リセットの際には共通の外部クロック信号により同期リセットする必要がある複数の同期リセット回路、および、リセットの際に前記共通の外部クロック信号を入力する必要がない非同期リセット回路を含む複数の内部回路と、
電源投入により発振を開始し、当該電源投入時から時間が経過すると安定した内部クロック信号を生成して前記複数の内部回路のいずれかへ出力する位相同期回路と、
前記複数の内部回路の各々のクロック信号の入力端子に接続された複数のクロックゲート回路と、
外部リセット信号が入力され、前記複数の内部回路をリセットするリセット制御回路と
を有し、
前記リセット制御回路は、
前記外部リセット信号が入力されると、前記複数のクロックゲート回路によりすべての前記複数の内部回路へのクロック信号を遮断し、
前記クロック信号を遮断してから前記内部クロック信号が安定する期間が経過すると、前記複数のクロックゲート回路によるクロック信号の遮断をすべて解除して、前記複数の同期リセット回路を初期化し、
前記クロック信号の遮断を解除してから前記複数の同期リセット回路を初期化可能な期間が経過すると、前記複数のクロックゲート回路によりすべての前記複数の内部回路へのクロック信号を再び遮断し、
前記クロック信号の２回目の遮断中に、前記複数の同期リセット回路および前記非同期リセット回路を含むすべての前記複数の内部回路を同時にリセットし、
前記リセットにより前記複数の内部回路がリセットされる期間が経過すると、前記複数のクロックゲート回路による遮断をすべて解除し、前記複数の内部回路にそれぞれの動作を開始させる
半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、たとえば同期リセットが必要な回路と、非同期リセットで動作する回路が混在する半導体集積回路に係り、特に、リセット信号をリリースするタイミングに関するものである。
【背景技術】
【０００２】
近年のシステムＬＳＩは、多数の機能ブロックが集積化され、その結果、クロックが複雑化する傾向にある。
【０００３】
このような背景の下、従来は、ハードウェアリセットをリリースするタイミングとクロックの関係や、リセット中のクロックの供給のタイミングについては、従来、レイアウト設計においてリセットのツリーを作って解除タイミングを揃えるなどの対策が行われてきた。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、システムのハードウェアリセットにおいて、リセット信号をリリースするタイミングがクロックのエッジと重なる回路構成によっては、回路の不安定化を招く場合がある。
論理シミュレーションでは、伝播信号が不定になってしまうため、何らかの対策を講じる必要があるが、実際のシステムにおいては、非同期信号であるとの理由から放置されているのが現状である。
そして、非同期の多数のクロックラインが存在すればするほど、すべてが重ならないように設計することが難しくなってきている。
【０００５】
一方で、回路ブロックによっては、同期リセットを採用しており、リセット中にもクロックを入力し続ける必要があるものが存在する。
これらが混在することで、ますますリセットとクロックの関係を的確に制御する必要がある。
【０００６】
ところが、上述したように、従来はレイアウト設計でリセット解除タイミングを揃えるなどの対策が行われてきたが、この手法ではシステム規模の増大に伴い困難になってきている。
【０００７】
本発明の目的は、クロックのエッジとリセットのエッジが重なることを抑止することができる半導体集積回路を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明は、互いに異なる非同期の複数の外部クロック信号を入力可能な複数の内部回路として、リセットの際には共通の外部クロック信号により同期リセットする必要がある複数の同期リセット回路、および、リセットの際に前記共通の外部クロック信号を入力する必要がない非同期リセット回路を含む複数の内部回路と、電源投入により発振を開始し、当該電源投入時から時間が経過すると安定した内部クロック信号を生成して前記複数の内部回路のいずれかへ出力する位相同期回路と、前記複数の内部回路の各々のクロック信号の入力端子に接続された複数のクロックゲート回路と、外部リセット信号が入力され、前記複数の内部回路をリセットするリセット制御回路とを有し、前記リセット制御回路は、前記外部リセット信号が入力されると、前記複数のクロックゲート回路によりすべての前記複数の内部回路へのクロック信号を遮断し、前記クロック信号を遮断してから前記内部クロック信号が安定する期間が経過すると、前記複数のクロックゲート回路によるクロック信号の遮断をすべて解除して、前記複数の同期リセット回路を初期化し、前記クロック信号の遮断を解除してから前記複数の同期リセット回路を初期化可能な期間が経過すると、前記複数のクロックゲート回路によりすべての前記複数の内部回路へのクロック信号を再び遮断し、前記クロック信号の２回目の遮断中に、前記複数の同期リセット回路および前記非同期リセット回路を含むすべての前記複数の内部回路を同時にリセットし、前記リセットにより前記複数の内部回路がリセットされる期間が経過すると、前記複数のクロックゲート回路による遮断をすべて解除し、前記複数の内部回路にそれぞれの動作を開始させる。
【００１３】
本発明によれば、たとえば電源投入後、制御回路が、リセット信号を受けると、少なくともクロックが必要な同期リセットを必要とする第１の回路に十分な長さのリセットを与る。
そして、制御回路により、各種のクロックのエッジとリセット解除のエッジが重ならないように前後でクロックを止めるように制御される。
【発明の効果】
【００１４】
本発明によれば、クロックのエッジとリセットのエッジが重なることを原理的になくすことが可能で、リセットスキューを揃える必要がなくなるという利点がある。
システムとしてもリセット解除の安全性を確保することができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施形態を添付図面に関連付けて説明する。
【００１６】
図１は、本発明に係る半導体集積回路の一実施形態を示す回路図である。
【００１７】
本実施形態の半導体集積回路１０は、図１に示すように、複数のクロックＣＫ１〜ＣＫｎ、リセット信号ＲＳＴ、および制御クロックＣＬＫが供給される。
【００１８】
そして、半導体集積回路１０は、図１に示すように、ＰＬＬ１１、セレクタ１２〜１４、ゲート回路１５〜１７、クロック／リセット制御回路１８、同期リセットが必要な第１の回路（以下、同期リセット回路という）１９，２０、および非同期リセットで動作する第２の回路（以下、非同期リセット回路という）２１を有する。
【００１９】
ＰＬＬ１１は、クロックＣＫ１を受けて分周処理等を行って基準クロックに位相同期した周波数の異なる２つのクロックＣＫ１１,ＣＫ１２をセレクタに出力する。
ＰＬＬ１１は、立ち上がりから位相同期が安定するまで所定の時間を要する。
【００２０】
セレクタ１２は、図示しない制御系からのセレクト信号に応じて、入力クロックＣＫ１、ＰＬＬ１１の出力クロックＣＫ１１、およびＣＫ１２のいずれかのクロックを選択してゲート回路１５に出力する。
【００２１】
セレクタ１３は、図示しない制御系からのセレクト信号に応じて、ＰＬＬ１１の出力クロックＣＫ１１、入力クロックＣＫ２、およびＣＫ３のいずれかのクロックを選択してゲート回路１６に出力する。
【００２２】
セレクタ１４は、図示しない制御系からのセレクト信号に応じて、入力クロックＣＫ２、およびＣＫｎのいずれかのクロックを選択してゲート回路１７に出力する。
【００２３】
ゲート回路１５は、クロック／リセット制御回路１８により供給されるクロック供給制御信号（クロックイネーブル信号）ＣＫＥＮがアクティブのたとえばハイレベル期間のみセレクタ１２で選択されたクロックを非同期リセット回路２１に供給する。
【００２４】
ゲート回路１６は、クロック／リセット制御回路１８により供給されるクロック供給制御信号（クロックイネーブル信号）ＣＫＥＮがアクティブのたとえばハイレベル期間のみセレクタ１２で選択されたクロックを同期リセット回路１９に供給する。
【００２５】
ゲート回路１７は、クロック／リセット制御回路１８により供給されるクロック供給制御信号（クロックイネーブル信号）ＣＫＥＮがアクティブのたとえばハイレベル期間のみセレクタ１２で選択されたクロックを同期リセット回路２０に供給する。
【００２６】
クロック／リセット制御回路１８は、制御クロックＣＬＫおよびリセット信号ＲＳＴが供給され、ＰＬＬ１１の安定を待ち、クロックが必要な同期リセットを必要とする同期リセット回路に十分な長さのリセットを与え、各種のクロックのエッジとリセット解除のエッジが重ならないように前後でクロックを止めるようにクロックイネーブル信号ＣＫＥＮを各ゲート回路に出力し、制御されたリセット信号ＣＲＳＴを同期クロック回路および非同期クロック回路に出力する。
【００２７】
図２は、クロック／リセット制御回路１８の要部の構成例を示す回路図である。
図３（Ａ）〜（Ｆ）は、図２のクロック／リセット制御回路１８の各部の動作を説明するためのタイミングチャートである。
【００２８】
図２のクロック／リセット制御回路１８は、縦続接続されたカウンタ１８１〜１８４と、ゲート回路１８５とを有する。
【００２９】
各カウンタ１８１〜１８４には、ローレベルでアクティブのリセット信号ＲＳＴ、およびたとえば２７ＭＨｚの制御クロックＣＬＫが供給される。
【００３０】
初段のカウンタ１８１は、リセット信号ＲＳＴをローレベルで受けてリセットされ、制御クロックＣＬＫのパルス数をカウントアップし、カウント値がＰＬＬ１１が安定するまでの所定時間に相当する設定値（１２８×１０２４）になると、図３（Ａ）に示すように、たとえばハイレベルでアクティブのカウント信号ＣＮＴ１を次段のカウンタ１８２のイネーブル端子ＥＮ、およびゲート回路１８５に出力する。
【００３１】
カウンタ１８２は、リセット信号ＲＳＴをローレベルで受けてリセットされ、イネーブル端子ＥＮに、カウンタ１８１から出力されたハイレベルのカウトン信号ＣＮＴ１を受けると、制御クロックＣＬＫのパルス数をカウントアップし、カウント値が設定値（１２８）になると、図３（Ｂ）に示すように、たとえばハイレベルでアクティブのカウント信号ＣＮＴ２を次段のカウンタ１８３のイネーブル端子ＥＮ、およびゲート回路１８５に出力する。
【００３２】
カウンタ１８３は、リセット信号ＲＳＴをローレベルで受けてリセットされ、イネーブル端子ＥＮに、カウンタ１８２から出力されたハイレベルのカウトン信号ＣＮＴ２を受けると、制御クロックＣＬＫのパルス数をカウントアップし、カウント値が設定値（１２８）になると、図３（Ｃ）に示すように、たとえばハイレベルでアクティブのカウント信号ＣＮＴ３を次段のカウンタ１８４のイネーブル端子ＥＮ、およびゲート回路１８５に出力する。
【００３３】
カウンタ１８４は、リセット信号ＲＳＴをローレベルで受けてリセットされ、イネーブル端子ＥＮに、カウンタ１８３から出力されたハイレベルのカウトン信号ＣＮＴ３を受けると、制御クロックＣＬＫのパルス数をカウントアップし、カウント値が設定値（１２８）になると、図３（Ｄ）に示すように、たとえばハイレベルでアクティブのカウント信号ＣＮＴ４をゲート回路１８５に出力する。
【００３４】
ゲート回路１８５は、カウンタ１８１によるハイレベルのカウント信号ＣＮＴ１を受けると、図３（Ｅ）に示すように、クロック供給制御信号(クロックイネーブル信号)ＣＫＥＮを、所定期間、具体的には制御クロックＣＬＫの１２８パルス分(カウンタ１８２のカウント設定値と同等の期間)だけハイレベルに設定してゲート回路１５〜１７に出力する。
すなわち、ゲート回路１８５は、カウンタ１８１によるハイレベルのカウント信号ＣＮＴ１の入力に応答してハイレベルのクロック供給制御信号ＣＫＥＮを出力し、カウンタ１８２によるカウント信号ＣＮＴ２の入力に応答してクロック供給制御信号ＣＫＥＮをハイレベルからローレベルに切り替える。
ゲート回路１８５は、カウンタ１８２によるハイレベルのカウント信号ＣＮＴ２に応答してクロック供給制御信号ＣＫＥＮをローレベルに切り替えた後、カウンタ１８３によるハイレベルのカウント信号ＣＮＴ３を受けると、図３(Ｃ)，（Ｆ）に示すように、ハイレベルのリセット信号ＣＲＳＴを同期リセット回路１９，２０、非同期リセット回路２１に出力する。
ゲート回路１８５は、カウンタ１８３によるハイレベルのカウント信号ＣＮＴ３に応答してリセット信号ＣＲＳＴを出力した後、カウント１８４によるハイレベルのカウント信号ＣＮＴ４を受けると、図３(Ｄ)，（Ｅ）に示すように、クロック供給制御信号ＣＫＥＮを、所定期間、具体的には制御クロックＣＬＫの１２８パルス分(カウンタ１８２のカウント設定値と同等の期間)だけハイレベルに設定してゲート回路１５〜１７に出力する。
【００３５】
次に、上記構成による動作を図４（Ａ）〜（Ｉ）に関連付けて説明する。
なお、図４（Ａ)が制御クロックＣＬＫを、図４（Ｂ）がリセット信号ＲＳＴを、図４(Ｃ)が半導体集積回路１０内の制御されたリセット信号ＣＲＳＴを、図４（Ｄ）がイネーブル時のクロック供給制御信号（クロックイネーブル信号）ＣＫＥＮを、図４（Ｅ）がディセイブル時のクロック供給制御信号（クロックイネーブル信号）ＣＫＥＮを、図４（Ｆ）〜（Ｉ）が入力クロックＣＫ１〜ＣＫｎをそれぞれ示している。
【００３６】
半導体集積回路１０においては、たとえば電源投入後、ＰＬＬ１１が発振開始し、位相同期ループが安定するまでは、図４（Ｆ）〜（Ｉ）に示すように、全ての各種クロックＣＫ１〜ＣＫｎの内部への入力が遮断される。
そして、図４（Ａ），（Ｂ）に示すように、制御クロックＣＬＫ、およびハードウェアリセット信号ＲＳＴのみがクロック／リセット制御回路１８に供給される。
【００３７】
クロック／リセット制御回路１８においては、リセット信号ＲＳＴを受けてカウンタ１９１〜１８４がリセットされる。
そして、まず、初段のカウンタ１８１において、制御クロックＣＬＫのパルス数がカウントアップされ、カウント値がＰＬＬ１１が安定するまでの所定時間に相当する設定値（１２８×１０２４）に達すると、ハイレベルでアクティブのカウント信号ＣＮＴ１がゲート回路１８５、および次段のカウンタ１８２のイネーブル端子ＥＮに出力される。
【００３８】
ゲート回路１８５においては、カウンタ１８１によるハイレベルのカウント信号ＣＮＴ１に応答して、クロック供給制御信号(クロックイネーブル信号)ＣＫＥＮが、所定期間、具体的には制御クロックＣＬＫの１２８パルス分(カウンタ１８２のカウント設定値と同等の期間)だけハイレベルに設定されて、ゲート回路１５〜１７に出力される。
すなわち、ＰＬＬ１１が安定すると、クロック／リセット制御回路１８からは、図４（Ｄ）に示すように、ハイレベルのクロック供給制御信号ＣＫＥＮがゲート回路１５〜１７に出力され、図４（Ｆ）〜（Ｉ）に示すように、全てのクロックＣＫ１〜ＣＫｎが同期リセット回路１９等に一定期間供給され、同期リセットの必要なモジュール（回路）に十分な初期化を行わせる。
【００３９】
クロック／リセット制御回路１８のカウンタ１８２において、イネーブル端子ＥＮに、カウンタ１８１から出力されたハイレベルのカウトン信号ＣＮＴ１を受けて、制御クロックＣＬＫのパルス数がカウントアップされ、カウント値が設定値（１２８）になると、ハイレベルでアクティブのカウント信号ＣＮＴ２がゲート回路１８５、およびカウンタ１８３のイネーブル端子ＥＮに出力される。
ゲート回路１８５では、カウンタ１８２によるカウント信号ＣＮＴ２の入力に応答してクロック供給制御信号ＣＫＥＮがハイレベルからローレベルに切り替えられる。
これにより、図４（Ｆ）〜（Ｉ）に示すように、同期リセット回路１９等へのクロックＣＫ１〜ＣＫｎの供給が停止される。
【００４０】
クロック／リセット制御回路１８のカウンタ１８３において、イネーブル端子ＥＮに、カウンタ１８２から出力されたハイレベルのカウトン信号ＣＮＴ２を受けて、制御クロックＣＬＫのパルス数がカウントアップされ、カウント値が設定値（１２８）になると、ハイレベルでアクティブのカウント信号ＣＮＴ３がゲート回路１８５、およびカウンタ１８４のイネーブル端子ＥＮに出力される。
ゲート回路１８５においては、カウンタ１８２によるハイレベルのカウント信号ＣＮＴ２に応答してクロック供給制御信号ＣＫＥＮをローレベルに切り替えた後、所定時間経過後（ある程度の間をおいて）、カウンタ１８３によるハイレベルのカウント信号ＣＮＴ３を受けて、図４（Ｃ）に示すように、ハイレベルのリセット信号ＣＲＳＴが同期リセット回路１９，２０、非同期リセット回路２１に出力される。
すなわち、クロックＣＫ１〜ＣＫｎの供給停止から所定時間後にリセット信号の供給を解除して、同期リセット回路１９や非同期リセット回路２１にリセット動作を行わせる。
【００４１】
クロック／リセット制御回路１８のカウンタ１８４において、イネーブル端子ＥＮに、カウンタ１８３から出力されたハイレベルのカウトン信号ＣＮＴ２を受けて、制御クロックＣＬＫのパルス数がカウントアップされ、カウント値が設定値（１２８）になると、ハイレベルでアクティブのカウント信号ＣＮＴ４がゲート回路１８５に出力される。
ゲート回路１８５においては、カウンタ１８３によるハイレベルのカウント信号ＣＮＴ３に応答してリセット信号ＣＲＳＴを出力した後、所定時間経過後（ある程度の間をおいて）、カウント１８４によるハイレベルのカウント信号ＣＮＴ４を受けて、図４(Ｄ)に示すように、クロック供給制御信号ＣＫＥＮが、所定期間、具体的には制御クロックＣＬＫの１２８パルス分(カウンタ１８２のカウント設定値と同等の期間)だけハイレベルに設定してゲート回路１５〜１７に出力される。
すなわち、完全にリセットが解除されたら、ある程度の間をおいて、クロックＣＫ１等の供給を再開する。
【００４２】
半導体集積回路１０においては、以上の動作が完全に終了してから、システムの動作が開始されるように制御される。
【００４３】
以上説明したように、本実施形態によれば、ＰＬＬ１１の安定を待ち、クロックが必要な同期リセットを必要とする同期リセット回路に十分な長さのリセットを与え、各種のクロックのエッジとリセット解除のエッジが重ならないように前後でクロックを止めるようにクロックイネーブル信号ＣＫＥＮを各ゲート回路１５から７に出力し、リセット信号ＣＲＳＴを同期クロック回路および非同期クロック回路に出力するクロック／リセット制御回路２１を有することから、クロックのエッジとリセットのエッジが重なることを原理的になくすことが可能で、リセットスキューを揃える必要がなくなるという利点がある。
その結果、システムとしてもリセット解除の安全性を確保することができる。
【００４４】
なお、上述した実施形態は一例であり、カウンタのカウント値等はシステムに応じて設定されるものであり、回路構成も上記実施形態に限定されるものではなく、種々の態様が可能である。
【図面の簡単な説明】
【００４５】
【図１】本発明に係る半導体集積回路の一実施形態を示す回路図である。
【図２】本実施形態におけるクロック／リセット制御回路の要部の構成例を示す回路図である。
【図３】図２のクロック／リセット制御回路１８の各部の動作を説明するためのタイミングチャートである。
【図４】本実施形態の半導体集積回路のクロック・リセット制御動作を説明するためのタイミングチャートである。
【符号の説明】
【００４６】
１０…半導体集積回路、１１…ＰＬＬ、１２〜１４…セレクタ、１５〜１７…ゲート回路、１８…クロック／リセット制御回路、１８１〜１８４…カウンタ、１８５…ゲート回路、１９，２０…同期リセット回路、２１…非同期リセット回路。
【図１】
0004442406.tif 000002
【図２】
0004442406.tif 000003
【図３】
0004442406.tif 000004
【図４】
0004442406.tif 000005