(57)【要約】【課題】製造ばらつきによるクロックスキューを低減すること。【解決手段】第１クロック信号１６が分配される複数のクロックツリー５−１〜５−４と、複数のクロックツリー５−１〜５−４からそれぞれ出力される複数のフィードバッククロック信号１９−１〜１９−４のリファレンスクロック信号１８との位相差を検出する位相比較回路８とを備えている。複数のクロックツリー５−１〜５−４の各々は、位相差のばらつきが小さくなるように第１クロック信号１６を遅延して第２クロック信号３７、３８−１〜３８−２を生成する遅延調整回路３２と、第２クロック信号３７、３８−１〜３８−２に同期して動作するフリップフロップ３４とを備えている。複数のフィードバッククロック信号１９−１〜１９−４は、第２クロック信号３７、３８−１〜３８−２から形成される。【選択図】図１
2008010607.tif 000002
【特許請求の範囲】
【請求項１】
第１クロック信号が分配される複数のクロックツリーと、
前記複数のクロックツリーからそれぞれ出力される複数のフィードバッククロック信号のリファレンスクロック信号との位相差を検出する位相比較回路とを具備し、
前記複数のクロックツリーの各々は、
前記位相差のばらつきが小さくなるように前記第１クロック信号を遅延して第２クロック信号を生成する遅延調整回路と、
前記第２クロック信号に同期して動作するフリップフロップとを備え、
前記複数のフィードバッククロック信号は、前記第２クロック信号から形成される
半導体集積回路。
【請求項２】
請求項１において、
前記複数のクロックツリーの各々は、遅延の程度を示す設定値を記録する遅延設定レジスタを更に備え、
前記遅延調整回路は、前記遅延設定レジスタに記録される設定値に基づいて前記第１クロック信号を遅延して前記第２クロック信号を生成する
半導体集積回路。
【請求項３】
請求項２において、
前記位相差を示す比較結果信号を外部回路に出力する第１端子と、
前記外部回路に接続される第２端子と、
前記外部回路から前記第２端子を介して入力される設定値信号に基づいて前記設定値を遅延設定レジスタに記録する診断部
とを更に具備する半導体集積回路。
【請求項４】
請求項２において、
前記位相差に基づいて設定値信号を算出する遅延値指示回路と、
前記設定値信号に基づいて算出される前記設定値を遅延設定レジスタに記録する診断部
とを具備する半導体集積回路。
【請求項５】
請求項１〜請求項４のいずれかにおいて、
前記第１クロック信号を遅延させて前記リファレンスクロック信号を生成するクロック分配バッファ
を更に具備する半導体集積回路。
【請求項６】
請求項１〜請求項５のいずれかにおいて、
前記リファレンスクロック信号よりクロック周波数が大きい第３クロック信号を生成するＰＬＬを更に具備し、
前記位相比較回路は、前記第３クロック信号に基づいて前記複数のフィードバッククロック信号の前記リファレンスクロック信号との位相差を検出する
半導体集積回路。
【請求項７】
第１クロック信号が分配される複数のクロックツリーと、
前記複数のクロックツリーからそれぞれ出力される複数のフィードバッククロック信号のリファレンスクロック信号との位相差を検出する位相比較回路とを備え、
前記複数のクロックツリーの各々は、
遅延設定レジスタと、
前記遅延設定レジスタに記録される値に基づいて前記第１クロック信号を遅延して第２クロック信号を生成する遅延調整回路と、
前記第２クロック信号に同期して動作するフリップフロップとを備え、
前記複数のフィードバッククロック信号は、前記第２クロック信号から形成される
半導体集積回路を用いて実行されるクロックスキュー低減方法であり、
前記位相差のばらつきが小さくなるように設定値を算出する第１ステップと、
前記設定値を前記遅延設定レジスタに記録する第２ステップ
とを具備するクロックスキュー低減方法。
【請求項８】
請求項７において、
前記第１ステップと前記第２ステップとは、前記半導体集積回路が機器に搭載される前に実行される
クロックスキュー低減方法。
【請求項９】
請求項７において、
前記第１ステップと前記第２ステップとは、前記半導体集積回路が搭載される機器が起動されるときに実行される
クロックスキュー低減方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路およびクロックスキュー低減方法に関し、特に、クロックスキューを低減するときに利用される半導体集積回路およびクロックスキュー低減方法に関する。
【背景技術】
【０００２】
ＬＳＩは、大規模化、高周波数化するにつれ、遅延にしめるクロックスキューの比率が増大する傾向があり、そのクロックスキューを低減する方法が望まれている。クロックのフィードバック系路上に遅延を確認して調整する機能を搭載させることにより、電源電圧、温度、プロセス条件の変動によりＬＳＩ製造後にばらつくＬＳＩ間のクロックスキューを低減する方法が知られている。
【０００３】
大規模するＬＳＩにおいては、さらに、クロック分配ツリーの多段化、大規模化により、ＬＳＩ内のクロックスキューのばらつきが大きくなっており、ＬＳＩの動作周波数に占めるクロックスキューの割合は、益々大きくなり、設計を困難にしている。しかしながら、前述の方法では、ＬＳＩ間のクロックスキューを低減することができるが、ＬＳＩ内のクロックスキューを低減することについては効果がなく、ＬＳＩ内のクロックスキューを低減する方法にはなりえない。ＬＳＩ内のクロックスキューを低減することが望まれている。
【０００４】
特開２００４−２２８５０４号公報には、半導体集積回路の個別の製品ばらつき等により半導体集積回路ごとに異なるクロックスキューを調整することができるクロックスキュー調整装置が開示されている。そのクロックスキュー調整装置は、内部ブロックに供給するクロック信号の伝搬遅延を測定する測定手段と、前記伝搬遅延の測定結果に基づいて前記クロック信号の遅延時間を調整する遅延時間調整手段とを備えることを特徴としている。
【０００５】
特開平０６−２８２３５０号公報には、ＬＳＩ内のクロック信号配線の負荷容量が、ＬＳＩ内位置により変動する場合でも、ＬＳＩ内全体にスキューの小さいクロック信号を提供し得るクロック分配回路が開示されている。そのクロック分配回路は、ＬＳＩチップの外部より供給された外部クロック信号を、該ＬＳＩチップ内部の複数の回路素子に実質的に同じ位相で供給するための、該ＬＳＩ内に設けられたクロック分配回路であって、該外部クロック信号から、それぞれ該ＬＳＩチップの内部の複数のブロックの一つに分配すべき互いに実質的に同相の複数のブロック別クロック信号を生成する主分配回路と、該主分配回路に接続され、該生成された複数のブロック別クロック信号を、互いにほぼ等位相で、かつ、該複数のブロックの異なるものに分配するための複数のブロック別クロック信号配線と、各ブロック内に設けられたブロック内分配回路であって、該複数のブロック別クロック信号配線の一つに接続され、かつ、該一つのブロック別クロック信号配線を介して転送された一つのブロック別クロック信号から、そのブロック内の複数の回路素子に分配すべき互いに実質的に同相の複数のブロック内クロック信号を生成するものと、各ブロック内に設けられた複数のブロック内クロック信号配線であって、そのブロック内に設けられたブロック内分配回路とそのブロック内の複数の回路素子に接続され、該ブロック内分配回路により生成された複数のブロック内クロック信号を該複数の回路素子に互いにほぼ等位相で分配するものと、各ブロック内に設けられたフィードバック配線であって、そのブロック内の複数のブロック内クロック信号配線の一つと、そのブロックのブロック内分配回路とに接続され、そのブロック内クロック信号配線に接続されたいずれかの回路素子に分配されたブロック内クロック信号を、そのブロック内分配回路にフィードバックするものとを有し、各ブロックのブロック内分配回路は、そのブロック内分配回路に接続されたブロック別クロック信号配線を経由してそのブロックに分配されたブロック別クロック信号とそのブロック内の該フィードバック用配線によりフィードバックされたブロック内クロック信号に応答して、それらの信号の位相差に依存する位相を有する複数のブロック内クロック信号を生成する。
【０００６】
特開平０８−３２１７７３号公報には、各ＬＳＩ間で電源電圧レベル、温度、プロセス条件が変動した場合でも、各ＬＳＩ毎にＰＬＬ回路の位相を調整することでクロックスキューを低減できるようなＬＳＩが開示されている。その半導体集積回路は、ＰＬＬ回路からなる位相調整回路を設けたクロック供給系を備えた半導体集積回路において、ＰＬＬ回路の参照側入力端子の前にディレイ幅を調整可能な可変遅延回路を設け、最終段のラッチ回路に入力されるクロック信号を上記可変遅延回路を介してＰＬＬ回路に戻すように構成したことを特徴としている。
【０００７】
特開平１１−０５３０５０号公報には、本発明の目的は、クロックスキューの外部診断を簡単に実現可能なクロックスキュー診断回路が開示されている。そのクロックスキュー診断回路は、クロック発生源からのクロック信号を複数の回路ブロックへ分配する第一層クロック分配手段と、前記回路ブロックの各々に設けられ前記第一層クロック分配手段からの分配クロック信号を当該回路ブロック内の各回路へ分配する複数の第二層クロック分配手段とを含む集積回路におけるクロックスキュー診断回路であって、前記第一層クロック分配手段による分配クロックと前記第二層クロック分配手段の各々による各分配クロックとを論理演算出力を生成する複数のゲート手段と、前記ゲーヘト手段の各出力を導出する複数の観測端子とを含むことを特徴としている。
【０００８】
特許２７７１４６４号公報には、ＰＬＬの同期時間を短縮するとともにジッタを小さくできるディジタルＰＬＬ回路が開示されている。そのディジタルＰＬＬ回路は、予め定めた周波数の基準クロック信号を遅延選択信号対応の量子化ステップ毎の遅延時間で遅延し遅延信号を発生する可変遅延回路と、前記遅延信号の供給に応答して所定の出力信号対応の帰還クロック信号を発生するクロックツリー回路と、前記基準信号と前記帰還信号とを位相比較して位相比較信号を発生する位相比較器と、前記位相比較信号の第１および第２の各々のレベルに対応してそれぞれアップおよびダウン計数を行い前記第１の遅延選択信号を発生するアップダウンカウンタとを備えるディジタルＰＬＬ回路において、前記可変遅延回路が前記遅延選択信号の上位ビットから成る第１の遅延選択信号対応の第１の量子化ステップ毎の遅延時間で遅延し第１の遅延信号を発生する粗可変遅延回路と、前記第１の遅延信号の供給を受け前記遅延選択信号の下位ビットから成る第２の遅延選択信号対応の前記第１の量子化ステップより小さい第２の量子化ステップで遅延時間を微調整して第２の遅延信号を発生する遅延微調整回路と、遅延切替タイミング信号の供給に応答して前記遅延選択信号を取込み前記第１および第２の遅延選択信号を発生するラッチ回路と、前記アップダウンカウンタのカウント動作対応のカウント動作信号の供給に応答して前記遅延信号に同期して前記遅延切替タイミング信号を発生するタイミング調整回路とを備え、前記アップダウンカウンタが前記アップダウン計数を実行するアップダウンカウンタ回路と、リセット信号と前記基準クロック信号との供給を受けカウント信号を発生する第１のカウンタと、前記基準クロック信号と前記カウント信号と前記位相比較信号との供給を受け前記アップダウンカウンタ回路のカウント動作を許可する動作イネーブル信号と前記位相比較信号対応のアップダウン信号と予め定めた前記カウント動作のシーケンスを指定するシーケンス信号とを発生して前記アップダウンカウンタ回路に供給するとともに前記カウント動作信号を発生するシーケンス制御回路とを備えることを特徴としている。
【０００９】
【特許文献１】特開２００４−２２８５０４号公報
【特許文献２】特開平０６−２８２３５０号公報
【特許文献３】特開平０８−３２１７７３号公報
【特許文献４】特開平１１−０５３０５０号公報
【特許文献５】特許２７７１４６４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
本発明の課題は、製造ばらつきによるクロックスキューを低減する半導体集積回路およびクロックスキュー低減方法を提供することにある。
本発明の他の課題は、製造ばらつきによる寄生抵抗、電圧変動などを低減する半導体集積回路およびクロックスキュー低減方法を提供することにある。
本発明のさらに他の課題は、高速化を向上させる半導体集積回路およびクロックスキュー低減方法を提供することにある。
本発明のさらに他の課題は、信頼性を向上させる半導体集積回路およびクロックスキュー低減方法を提供することにある。
【課題を解決するための手段】
【００１１】
以下に、発明を実施するための最良の形態・実施例で使用される符号を括弧付きで用いて、課題を解決するための手段を記載する。この符号は、特許請求の範囲の記載と発明を実施するための最良の形態・実施例の記載との対応を明らかにするために付加されたものであり、特許請求の範囲に記載されている発明の技術的範囲の解釈に用いてはならない。
【００１２】
本発明による半導体集積回路（１）（７１）（８１）は、第１クロック信号（１６）が分配される複数のクロックツリー（５−１〜５−４）と、複数のクロックツリー（５−１〜５−４）からそれぞれ出力される複数のフィードバッククロック信号（１９−１〜１９−４）のリファレンスクロック信号（１８）との位相差を検出する位相比較回路（８）とを備えている。複数のクロックツリー（５−１〜５−４）の各々は、位相差のばらつきが小さくなるように第１クロック信号（１６）を遅延して第２クロック信号（３７、３８−１〜３８−２）を生成する遅延調整回路（３２）と、第２クロック信号（３７、３８−１〜３８−２）に同期して動作するフリップフロップ（３４）とを備えている。複数のフィードバッククロック信号（１９−１〜１９−４）は、第２クロック信号（３７、３８−１〜３８−２）から形成される。
【００１３】
複数のクロックツリー（５−１〜５−４）の各々は、遅延の程度を示している設定値を記録する遅延設定レジスタ（３１）をさらに備えている。遅延調整回路（３２）は、遅延設定レジスタ（３１）に記録される設定値に基づいて第１クロック信号（１６）を遅延して第２クロック信号（３７、３８−１〜３８−２）を生成する。
【００１４】
本発明による半導体集積回路（１）（８１）は、位相差を示している比較結果信号（２１）を外部回路（１０）に出力する第１端子（６８）と、外部回路（１０）に接続される第２端子（６９）と、外部回路（１０）から第２端子（６９）を介して入力される設定値信号（２２）に基づいて設定値を遅延設定レジスタ（３１）に記録する診断部（１１）とをさらに備えている。
【００１５】
本発明による半導体集積回路（７１）は、その位相差に基づいて設定値信号（２２）を算出する遅延値指示回路（７２）と、設定値信号（２２）に基づいて算出される設定値を遅延設定レジスタ（３１）に記録する診断部（１１）とを備えている。
【００１６】
本発明による半導体集積回路（１）（７１）（８１）は、第１クロック信号（１６）を遅延させてリファレンスクロック信号（１８）を生成するクロック分配バッファ（６、７）をさらに備えている。
【００１７】
本発明による半導体集積回路（８１）は、リファレンスクロック信号（１８）よりクロック周波数が大きい第３クロック信号（８３）を生成するＰＬＬ（８２）をさらに備えている。位相比較回路（８）は、第３クロック信号（８３）に基づいて複数のフィードバッククロック信号（１９−１〜１９−４）のリファレンスクロック信号（１８）との位相差を検出する。
【００１８】
本発明によるクロックスキュー低減方法は、第１クロック信号（１６）が分配される複数のクロックツリー（５−１〜５−４）と、複数のクロックツリー（５−１〜５−４）からそれぞれ出力される複数のフィードバッククロック信号（１９−１〜１９−４）のリファレンスクロック信号（１８）との位相差を検出する位相比較回路（８）とを備えている。複数のクロックツリー（５−１〜５−４）の各々は、遅延設定レジスタ（３１）と、遅延設定レジスタ（３１）に記録される値に基づいて第１クロック信号（１６）を遅延して第２クロック信号（３７、３８−１〜３８−２）を生成する遅延調整回路（３２）と、第２クロック信号（３７、３８−１〜３８−２）に同期して動作するフリップフロップ（３４）とを備えている。複数のフィードバッククロック信号（１９−１〜１９−４）は、第２クロック信号（３７、３８−１〜３８−２）から形成される半導体集積回路（１）（７１）（８１）を用いて実行されるクロックスキュー低減方法である。本発明によるクロックスキュー低減方法は、位相差のばらつきが小さくなるように設定値を算出する第１ステップと、設定値を遅延設定レジスタ（３１）に記録する第２ステップとを備えている。
【００１９】
第１ステップと第２ステップとは、半導体集積回路（１）（７１）（８１）が機器に搭載される前に実行されることが好ましい。または、第１ステップと第２ステップとは、半導体集積回路（１）（７１）（８１）が搭載される機器が起動されるときに実行されることが好ましい。
【発明の効果】
【００２０】
本発明による半導体集積回路およびクロックスキュー低減方法によれば、ユーザは、製造ばらつきによるＬＳＩ内のクロックスキューを低減させることができる。
【発明を実施するための最良の形態】
【００２１】
図面を参照して、本発明による半導体集積回路の実施の形態を記載する。その半導体集積回路１は、図１に示されているように、複数の電気回路を備えている。その複数の電気回路は、ＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）２とクロック分配バッファ３と複数系統のクロックツリー５−１〜５−４とクロック分配バッファ６、７と位相比較回路８と診断部１１とを含んでいる。
【００２２】
ＰＬＬ２は、入力クロック信号１４とリファレンスクロック信号１８とに基づいてクロック信号１５を生成する。入力クロック信号１４は、半導体集積回路１の外部から入力されるクロック信号である。リファレンスクロック信号１８は、クロック分配バッファ７から出力されるクロック信号である。クロック分配バッファ３は、クロック信号１５に基づいてクロック信号１６を生成し、クロック信号１６をクロック分配バッファ６と複数系統のクロックツリー５−１〜５−４とに分配する。クロック分配バッファ６は、クロック信号１６に基づいてクロック信号１７を生成する。クロック分配バッファ７は、クロック信号１７に基づいてリファレンスクロック信号１８を生成する。
【００２３】
クロックツリー５−ｉ（ｉ＝１，２，３，４）は、クロック信号１６に基づいてデータ処理する回路であり、フィードバック信号１９−ｉを出力する。位相比較回路８は、リファレンスクロック信号１８とフィードバック信号１９−１〜１９−４とに基づいて比較結果信号２１を生成し、比較結果信号２１を半導体集積回路１の外部のファームウェア（ＦＷ）１０に出力する。比較結果信号２１は、リファレンスクロック信号１８とフィードバック信号１９−１との位相差とリファレンスクロック信号１８とフィードバック信号１９−２との位相差とリファレンスクロック信号１８とフィードバック信号１９−３との位相差とリファレンスクロック信号１８とフィードバック信号１９−４との位相差とを示している。ＦＷ１０は、半導体集積回路１の制御を行なうために機器に組み込まれたソフトウェアであり、比較結果信号２１に基づいて設定値信号２２を生成する。なお、ＦＷ１０は、機器に搭載されるハードウェアに置換されることができる。そのハードウェアは、ＦＷ１０と同様に動作する。設定値信号２２は、クロックツリー５−１〜５−４にそれぞれ採用されるクロック信号を示す設定値を示している。診断部１１は、設定値信号２２に基づいて複数の設定値信号２３−１〜２３−４を生成する。設定値信号２３−ｉは、クロックツリー５−ｉに採用されるクロック信号を示す設定値を示している。
【００２４】
図２は、クロックツリー５−ｉを示している。クロックツリー５−ｉは、遅延設定レジスタ３１と遅延調整回路３２と複数のクロック分配バッファ３３−１〜３３−２と複数のフリップフロップ３４とを備えている。遅延設定レジスタ３１は、不揮発性のメモリであり、設定値信号２３−ｉが示す設定値を記録し、その設定値を示すクロック値選択出力信号３６を遅延調整回路３２に出力する。遅延調整回路３２は、クロック値選択出力信号３６が示す設定値に基づいてクロック信号１６のクロックを遅延したクロック信号３７を生成する。クロック分配バッファ３３−１は、クロック信号３７に基づいてクロック信号３８−１を生成する。クロック分配バッファ３３−２は、クロック信号３７に基づいてクロック信号３８−２を生成する。複数のフリップフロップ３４は、クロック信号３８−１〜３８−２のうちの１つのクロック信号を利用してデータ処理する。フィードバック信号１９−ｉは、クロック信号３８−１〜３８−２のうちの１つのクロック信号である。
【００２５】
図３は、遅延調整回路３２を示している。遅延調整回路３２は、クロック分配バッファ４１とクロック分配バッファ４２とクロック分配バッファ４３とクロック分配バッファ４４とセレクタ４５とを備えている。クロック分配バッファ４１は、クロック信号１６に基づいてクロック信号４６を生成する。クロック信号４６は、クロック信号１６が示すクロックから遅延したクロックを示している。クロック分配バッファ４１は、クロック信号１６に基づいてクロック信号４７を生成する。クロック信号４７は、クロック信号１６が示すクロックから遅延したクロックを示し、その遅延量は、クロック信号１６に対するクロック信号４６の遅延量の概ね２倍である。クロック分配バッファ４１は、クロック信号１６に基づいてクロック信号４８を生成する。クロック信号４８は、クロック信号１６が示すクロックから遅延したクロックを示し、その遅延量は、クロック信号１６に対するクロック信号４６の遅延量の概ね３倍である。クロック分配バッファ４１は、クロック信号１６に基づいてクロック信号４９を生成する。クロック信号４９は、クロック信号１６が示すクロックから遅延したクロックを示し、その遅延量は、クロック信号１６に対するクロック信号４６の遅延量の概ね４倍である。セレクタ４５は、クロック値選択出力信号３６に基づいてクロック信号４６〜４９から選択される１つのクロック信号３７を出力する。すなわち、クロック値選択出力信号３６が示す設定値は、クロック信号４６〜４９のうちの１つを示している。
【００２６】
半導体集積回路１が備える複数の電気回路のうちのＦＦ３４以外の電気回路（たとえば、診断部１１、遅延設定レジスタ３１）が同期するクロックは、どのクロックを用いてもよく、たとえば、クロック信号１６とクロック信号３８−１とのどちらも採用されることができる。
【００２７】
図４は、半導体集積回路１が備える複数の電気回路の配置を示している。半導体集積回路１は、１つの半導体チップの上に形成されている。その半導体チップは、３つの端子６７、６８、６９を備えている。端子６７は、半導体集積回路１の外部のクロックジェネレータに電気的に接続され、ＰＬＬ２に電気的に接続されている。入力クロック信号１４は、端子６７を介してそのクロックジェネレータからＰＬＬ２に伝送される。端子６８は、位相比較回路８に電気的に接続され、半導体集積回路１の外部のＦＷ１０に電気的に接続されている。比較結果信号２１は、端子６８を介して位相比較回路８からＦＷ１０に伝送される。端子６９は、半導体集積回路１の外部のＦＷ１０に電気的に接続され、診断部１１に電気的に接続されている。比較結果信号２１は、端子６８を介してＦＷ１０から診断部１１に伝送される。
【００２８】
その半導体チップは、４つの部分に４等分されている。４つのクロックツリー５−１〜５−４は、それぞれ、その４の部分に配置されている。クロック分配バッファ３は、その半導体チップの概ね中心に配置されている。
【００２９】
なお、半導体集積回路１は、４系統のクロックツリー５−１〜５−４を備えているが、４系統以外の複数系統のクロックツリーを備えることもできる。半導体集積回路１は、クロック分配バッファ３と遅延調整回路３２とクロック分配バッファ３３−１〜３３−２と（またはクロック分配バッファ３とクロック分配バッファ６とクロック分配バッファ７と）からなる３段の分配ツリーが採用されているが、３段以外の複数段の分配ツリーを備えることもできる。半導体集積回路１は、遅延調整回路３２を２段目に実装しているが、実装位置、効果などのレイアウトの状況に基づいて他の段に実装することもできる。
【００３０】
本発明によるクロックスキュー低減方法の実施の形態は、半導体集積回路１を用いて実行される。そのクロックスキュー低減方法は、半導体集積回路１が出荷される前に実行される。なお、そのクロックスキュー低減方法は、システムに搭載されて動作した後にもユーザの所定の操作に応答して実行されることができ、たとえば、半導体集積回路１が搭載されているコンピュータ装置を起動（初期化）する度に、半導体集積回路１が搭載されているシステムがある段階まで縮退されたときに実行される。
【００３１】
半導体集積回路１は、まず、位相比較回路８にて、リファレンスクロック信号１８とフィードバック信号１９−１との位相差とリファレンスクロック信号１８とフィードバック信号１９−２との位相差とリファレンスクロック信号１８とフィードバック信号１９−３との位相差とリファレンスクロック信号１８とフィードバック信号１９−４との位相差とを算出し、比較結果信号２１を介して、これらの位相差をＦＷ１０に通知する。その位相差は、たとえば、数値により表現され、その数値の符号によりリファレンスクロック信号１８に対してフィードバック信号１９−ｉが遅れているか進んでいるかを示し、その数値の絶対値によりその程度を示している。
【００３２】
ＦＷ１０は、フィードバック信号１９−１〜１９−４のクロックスキューが小さくなるように、すなわち、その複数の位相差のばらつき（標準偏差）が小さくなるように、クロックツリー５−１で用いられるクロック信号３７にクロック信号４６〜４９のうちのどのクロック信号を採用するかを算出し、クロックツリー５−２で用いられるクロック信号３７にクロック信号４６〜４９のうちのどのクロック信号を採用するかを算出し、クロックツリー５−３で用いられるクロック信号３７にクロック信号４６〜４９のうちのどのクロック信号を採用するかを算出し、クロックツリー５−４で用いられるクロック信号３７にクロック信号４６〜４９のうちのどのクロック信号を採用するかを算出する。ＦＷ１０は、設定値信号２２を介して、クロックツリー５−１〜５−４にそれぞれ採用されるクロック信号を示す設定値を診断部１１に通知する。
【００３３】
診断部１１は、設定値信号２２に基づいて、クロック信号４６〜４９のうちのクロックツリー５−１で採用されるクロック信号を示す設定値をクロックツリー５−１の遅延設定レジスタ３１に記録する。診断部１１は、さらに、設定値信号２２に基づいて、クロック信号４６〜４９のうちのクロックツリー５−２で採用されるクロック信号を示す設定値をクロックツリー５−２の遅延設定レジスタ３１に記録する。診断部１１は、さらに、設定値信号２２に基づいて、クロック信号４６〜４９のうちのクロックツリー５−３で採用されるクロック信号を示す設定値をクロックツリー５−３の遅延設定レジスタ３１に記録する。診断部１１は、さらに、設定値信号２２に基づいて、クロック信号４６〜４９のうちのクロックツリー５−４で採用されるクロック信号を示す設定値をクロックツリー５−４の遅延設定レジスタ３１に記録する。
【００３４】
半導体集積回路１は、通常のデータ処理を実行するときに、クロック信号１６がクロックツリー５−１〜５−４に供給される。クロックツリー５−ｉの遅延調整回路３２は、クロックツリー５−ｉの遅延設定レジスタ３１に記録されている設定値に対応する遅延量のクロック信号３７を出力する。クロックツリー５−ｉのフリップフロップ３４は、そのクロック信号３７がクロック分配バッファ３３−１〜３３−２を経て生成されるクロック信号３８−１〜３８−２を用いて動作する。
【００３５】
図５は、本発明によるクロックスキュー低減方法が実行される前のフィードバック信号１９−１〜１９−４の波形タイミングの例を示している。フィードバック信号１９−１の波形５２は、リファレンスクロック信号１８の波形５１に対して位相差５６だけ遅延している。フィードバック信号１９−２の波形５３は、リファレンスクロック信号１８の波形５１に対して位相差５７だけ遅延している。フィードバック信号１９−３の波形５４は、リファレンスクロック信号１８の波形５１に対して位相差５８だけ遅延している。フィードバック信号１９−４の波形５５は、リファレンスクロック信号１８の波形５１に対して位相差５９だけ遅延している。位相差５６〜５９のばらつきは、比較的大きい。
【００３６】
図６は、本発明によるクロックスキュー低減方法が実行された後のフィードバック信号１９−１〜１９−４の波形タイミングを示している。フィードバック信号１９−１の波形６２は、リファレンスクロック信号１８の波形６１に対して位相差７６だけ遅延している。フィードバック信号１９−２の波形６３は、リファレンスクロック信号１８の波形６１に対して位相差７７だけ遅延している。フィードバック信号１９−３の波形６４は、リファレンスクロック信号１８の波形６１に対して位相差７８だけ遅延している。フィードバック信号１９−４の波形６５は、リファレンスクロック信号１８の波形６１に対して位相差７９だけ進んでいる。このとき、位相差７６〜６９のばらつきは、位相差５６〜５９のばらつきより小さく、調整後のフィードバック信号１９−１〜１９−４のクロックスキューは、調整前のフィードバック信号１９−１〜１９−４のクロックスキューより低減されている。すなわち、ＦＷ１０は、位相差７６〜６９のばらつきが位相差５６〜５９のばらつきより小さくなるように、設定値信号２２を生成する。
【００３７】
調整後のフィードバック信号１９−１〜１９−４は、位相差７６〜６９のばらつきが位相差５６〜５９のばらつきより小さくなっていれば、リファレンスクロック信号１８から大きく位相がずれていてもかまわない。リファレンスクロック信号１８は、フィードバック信号１９−１〜１９−４の分配ツリー（クロック分配バッファ３と遅延調整回路３２とクロック分配バッファ３３−１〜３３−２と）と同様に、クロック信号１５が３段の分配ツリー（クロック分配バッファ３とクロック分配バッファ６とクロック分配バッファ７と）をへて生成されている。このため、ＦＷ１０は、各クロックツリーの最適な遅延バッファを選択することで、位相差７６〜６９がそれぞれ最小になるように、設定値信号２２を生成することができる。
【００３８】
本発明によるクロックスキュー低減方法によれば、半導体集積回路１が製造された後に、半導体集積回路１内のクロックツリーのクロックスキューを低減することができる。このため、本発明によるクロックスキュー低減方法によれば、さらに、半導体集積回路１の製造ばらつきに起因する寄生抵抗、電圧変動を低減することができる。本発明によるクロックスキュー低減方法は、さらに、各クロックツリーからのフィードバックループを参照して、クロックの遅延を調整することにより、半導体集積回路１が大規模なＬＳＩであっても、各クロックツリーのクロックスキューを低減することができる。このため、半導体集積回路１のどの部分のフリップフロップ間における遅延についても、クロックスキューの低減が可能となる。この結果、半導体集積回路１の高速化、信頼性の向上、さらには歩留まりを向上させることができる。
【００３９】
図７は、本発明による半導体集積回路の実施の他の形態を示している。その半導体集積回路７１は、既述の実施の形態における半導体集積回路１が遅延値指示回路７２をさらに備えている。遅延値指示回路７２は、フィードバック信号１９−１〜１９−４のクロックスキューが小さくなるように、すなわち、その複数の位相差のばらつきが小さくなるように、クロックツリー５−１で用いられるクロック信号３７にクロック信号４６〜４９のうちのどのクロック信号を採用するかを算出し、クロックツリー５−２で用いられるクロック信号３７にクロック信号４６〜４９のうちのどのクロック信号を採用するかを算出し、クロックツリー５−３で用いられるクロック信号３７にクロック信号４６〜４９のうちのどのクロック信号を採用するかを算出し、クロックツリー５−４で用いられるクロック信号３７にクロック信号４６〜４９のうちのどのクロック信号を採用するかを算出する。遅延値指示回路７２は、設定値信号２２を介して、クロックツリー５−１〜５−４にそれぞれ採用されるクロック信号を示す設定値を診断部１１に通知する。
【００４０】
本発明によるクロックスキュー低減方法の実施の他の形態は、半導体集積回路７１を用いて実行され、既述の実施の形態におけるクロックスキュー低減方法のＦＷ１０に対して実行される動作が遅延値指示回路７２に対して実行される。すなわち、半導体集積回路７１は、既述の実施の形態における半導体集積回路１より回路規模が大きくなるが、半導体集積回路１と同様にして、本発明によるクロックスキュー低減方法が実施されることができる。
【００４１】
このようなクロックスキュー低減方法によれば、半導体集積回路７１が製造された後に、半導体集積回路７１内のクロックスキューを低減することができ、半導体集積回路７１の製造ばらつきに起因する寄生抵抗、電圧変動を低減することができる。さらに、各クロックツリーからのフィードバックループを参照して、クロックの遅延を調整することにより、半導体集積回路７１が大規模なＬＳＩであっても、各クロックツリーのクロックスキューを低減することができる。このため、半導体集積回路７１のどの部分のフリップフロップ間における遅延についても、クロックスキューの低減が可能となる。この結果、半導体集積回路７１の高速化、信頼性の向上、さらには歩留まりを向上させることができる。
【００４２】
図８は、本発明による半導体集積回路の実施の他の形態を示している。その半導体集積回路８１は、既述の実施の形態における半導体集積回路１がＰＬＬ８２をさらに備えている。ＰＬＬ８２は、クロック信号８３を生成する。クロック信号８３のクロック周波数は、ＰＬＬ２により生成されるクロック信号１５のクロック周波数より大きく、たとえば、クロック信号１５のクロック周波数の１０倍である。このとき、位相比較回路８は、クロック信号８３を用いて、リファレンスクロック信号１８とフィードバック信号１９−１との位相差とリファレンスクロック信号１８とフィードバック信号１９−２との位相差とリファレンスクロック信号１８とフィードバック信号１９−３との位相差とリファレンスクロック信号１８とフィードバック信号１９−４との位相差とを算出する。
【００４３】
このような半導体集積回路８１によれば、位相比較回路８は、より精度よく位相比較することができる。さらに、半導体集積回路８１は、半導体集積回路１と同様にして、本発明によるクロックスキュー低減方法が実施されることができる。すなわち、本発明によるクロックスキュー低減方法によれば、半導体集積回路８１が製造された後に、半導体集積回路８１内のクロックスキューを低減することができ、半導体集積回路８１の製造ばらつきに起因する寄生抵抗、電圧変動を低減することができる。さらに、各クロックツリーからのフィードバックループを参照して、クロックの遅延を調整することにより、半導体集積回路８１が大規模なＬＳＩであっても、各クロックツリーのクロックスキューを低減することができる。このため、半導体集積回路８１のどの部分のフリップフロップ間における遅延についても、クロックスキューの低減が可能となる。この結果、半導体集積回路８１の高速化、信頼性の向上、さらには歩留まりを向上させることができる。
【図面の簡単な説明】
【００４４】
【図１】図１は、本発明による半導体集積回路の実施の形態を示す回路図である。
【図２】図２は、クロックツリーを示す回路図である。
【図３】図３は、遅延調整回路を示す回路図である。
【図４】図４は、半導体集積回路を半導体チップに実装するときの実装例を示す平面図である。
【図５】図５は、調整前のフィードバック信号の波形タイミングを示すタイミングチャートである。
【図６】図６は、調整後のフィードバック信号の波形タイミングを示すタイミングチャートである。
【図７】図７は、本発明による半導体集積回路の実施の他の形態を示す回路図である。
【図８】図８は、本発明による半導体集積回路の実施のさらに他の形態を示す回路図である。
【符号の説明】
【００４５】
１  ：半導体集積回路
２  ：ＰＬＬ
３  ：クロック分配バッファ
５−１〜５−４：クロックツリー
６  ：クロック分配バッファ
７  ：クロック分配バッファ
８  ：位相比較回路
１０：ファームウェア（ＦＷ）
１１：診断部
１４：入力クロック信号
１５：クロック信号
１６：クロック信号
１７：クロック信号
１８：リファレンスクロック信号
１９−１〜１９−４：フィードバック信号
２１：比較結果信号
２２：設定値信号
２３−１〜２３−４：設定値信号
３１：遅延設定レジスタ
３２：遅延調整回路
３３−１〜３３−２：クロック分配バッファ
３４：フリップフロップ
３６：クロック値選択出力信号
３７：クロック信号
３８−１〜３８−２：クロック信号
４１：クロック分配バッファ
４２：クロック分配バッファ
４３：クロック分配バッファ
４４：クロック分配バッファ
４５：セレクタ
４６：クロック信号
４７：クロック信号
４８：クロック信号
４９：クロック信号
６７：端子
６８：端子
６９：端子
５１〜５５：波形
５６〜５９：位相差
６１〜６５：波形
７６〜７９：位相差
７１：半導体集積回路
７２：遅延値指示回路
８１：半導体集積回路
８３：クロック信号
【図１】
2008010607.tif 000003
【図２】
2008010607.tif 000004
【図３】
2008010607.tif 000005
【図４】
2008010607.tif 000006
【図５】
2008010607.tif 000007
【図６】
2008010607.tif 000008
【図７】
2008010607.tif 000009
【図８】
2008010607.tif 000010