(57)【要約】クロック信号のばらつきを抑えることができる半導体装置の提供を課題とする。  本発明では、単一のクロック信号を複数のクロック信号に分け、複数の各回路に供給する半導体装置において、設計段階で複数の各クロック信号の伝搬遅延時間を完全に固定するのではなく、半導体装置の形成後においてもクロック信号の伝搬遅延時間を適宜変更できるような回路（可変遅延回路）を設けておく。そして該可変遅延回路を用い、可変遅延回路の後段に設けられた回路を所望の条件で正常に動作させることができるように、伝搬遅延時間のばらつきを補正する。具体的には、各クロック信号の位相を制御する。
2005013107.tif 000002
【特許請求の範囲】
【請求項１】
単一のクロック信号を複数のクロック信号に分け、複数の回路に供給し、
前記複数のクロック信号のうち、少なくとも１つのクロック信号は、前記複数の回路の１つに供給される前に、可変遅延回路によって位相が制御されていることを特徴とする半導体装置。
【請求項２】
単一のクロック信号を複数のクロック信号に分け、複数の回路に供給し、
可変遅延回路は、複数の遅延素子と、前記複数の遅延素子を選択するためのセレクタとを有し、
前記複数のクロック信号のうち、少なくとも１つのクロック信号は、前記複数の回路の１つに供給される前に、前記複数の遅延素子のうち少なくとも１つを前記セレクタが選択することによって、位相が制御されることを特徴とする半導体装置。
【請求項３】
単一のクロック信号を複数のクロック信号に分け、複数の回路に供給し、
可変遅延回路は、複数の遅延素子と、前記複数の遅延素子を選択するためのセレクタとを有し、
前記複数のクロック信号のうち、少なくとも１つのクロック信号は、前記複数の回路の１つに供給される前に、前記複数の遅延素子のうち少なくとも１つを前記セレクタが選択することによって、位相が制御されており、
前記複数の各回路に供給される前記複数のクロック信号の位相は全て一致していることを特徴とする半導体装置。
【請求項４】
単一のクロック信号を複数のクロック信号に分け、複数の回路に供給し、
可変遅延回路は、複数の遅延素子と、前記複数の遅延素子を選択するためのセレクタとを有し、
前記複数のクロック信号のうち、少なくとも１つのクロック信号は、前記複数の回路の１つに供給される前に、前記複数の遅延素子のうち少なくとも１つを前記セレクタが選択することによって、位相が制御されており、
前記セレクタのスイッチングを制御するための信号は、不揮発性メモリから読み出されてレジスタに記憶されることを特徴とする半導体装置。
【請求項５】
単一のクロック信号を複数のクロック信号に分け、複数の回路に供給し、
可変遅延回路は、複数の遅延素子と、前記複数の遅延素子を選択するためのセレクタとを有し、
前記複数のクロック信号のうち、少なくとも１つのクロック信号は、前記複数の回路の１つに供給される前に、前記複数の遅延素子のうち少なくとも１つを前記セレクタが選択することによって、位相が制御されており、
前記セレクタのスイッチングを制御するための信号は、不揮発性メモリから読み出されてレジスタに記憶され、
前記複数の各回路に供給される前記複数のクロック信号の位相は全て一致していることを特徴とする半導体装置。
【請求項６】
請求項４または請求項５において、
前記可変遅延回路は、該可変遅延回路の入力信号と出力信号の間に、前記レジスタに書き込まれた値によって制御された位相差を生じさせる機能を有しており、
前記レジスタへの書き込みは、前記複数の回路の動作とは独立に行なえることを特徴とする半導体装置。
【請求項７】
請求項１乃至請求項６のいずれか１項において、
薄膜の半導体膜を用いて形成されていることを特徴とする半導体装置。
【請求項８】
請求項１乃至請求項７のいずれか１項において、
前記遅延素子は、バッファ、インバータまたは抵抗であることを特徴とする半導体装置。
【請求項９】
請求項１乃至請求項８のいずれか１項において、
前記半導体装置は、リセット動作後、もしくはリセット動作の一部として、該半導体装置が有する不揮発性メモリから前記レジスタにデータを転送する回路を有することを特徴とする半導体装置。
【請求項１０】
単一のクロック信号を複数のクロック信号に分け、複数の回路に供給し、
前記複数のクロック信号のうち、少なくとも１つのクロック信号は、前記複数の回路の１つに供給される前に、位相が制御されていることを特徴とする半導体装置の駆動方法。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、伝搬遅延によるクロック信号の位相のずれを補正する機能を備えた半導体装置及び半導体装置の駆動方法に関する。
【背景技術】
【０００２】  近年、フラットパネルディスプレイにおいて集積回路を画素部と同じ安価なガラス基板上に一体形成する技術、所謂システムオンパネル化が重要視されており、その流れから、薄膜の半導体膜を用いた、大規模集積回路の形成に関する研究も進められている。ＣＰＵ等の大規模集積回路の設計には、論理機能のみを評価するシミュレーションだけではなく、配線容量や、トランジスタのゲート電極と活性層の間に形成される容量（ゲート容量）に起因する伝搬遅延などの情報を取り入れたシミュレーションを行なうことが、非常に重要である。特に薄膜の半導体膜を用いて形成された集積回路の場合、単結晶のシリコンウェハに形成された集積回路に比べて集積度が低いため、配線容量が抑えにくく、クロック信号の伝搬遅延時間が長くなる傾向が強い。そのため、設計段階において正確な伝搬遅延時間を割り出し、シミュレーションにより動作を確認しておくことは、歩留まり向上や周波数特性の確保のために必要不可欠である。【０００３】  しかし、薄膜の半導体膜を用いて形成された半導体素子は、単結品のシリコンウェハを用いて形成された半導体素子に比べ特性がばらつきやすい。そのため、ゲート容量に起因するクロック信号の伝搬遅延時間にもばらつきが生じやすいという問題がある。つまりそのゲート容量に起因するクロック信号の伝搬遅延時間は、実際に集積回路を形成してみるまで正確に把握することができないので、該伝搬遅延時間を正確にシミュレーションで割り出すことができない。そのため、高周波数特性や高歩留まりを実現することが難しい。【０００４】  一方、単結晶のシリコンウェハを用いた集積回路では、例えば２ＧＨｚ程度の動作周波数を確保できるＣＰＵが実用化されており、高周波数化が進んでいる。そして将来的には、より高い動作周波数を確保することができる集積回路の実現が期待されているが、このような高周波数動作においては、単結晶のシリコンウェハを用いた場合でも、半導体素子の特性のばらつきに起因する伝搬遅延時間のばらつきが問題になってくる。つまり、動作周波数が高くなると、クロック信号の周期に対する該伝搬遅延時間のばらつきの割合が増大し、薄膜の半導体膜を用いた集積回路と同様に、高周波数特性や高歩留まりを実現することが難しい。
【発明の開示】
【発明が解決しようとする課題】
【０００５】  本発明は上記問題に鑑み、クロック信号のばらつきを抑えることができる半導体装置及び半導体装置の駆動方法の提供を課題とする。
【課題を解決するための手段】
【０００６】  本発明では、単一のクロック信号を複数のクロック信号に分け、複数の各回路に供給する半導体装置において、設計段階で複数の各クロック信号の伝搬遅延時間を完全に固定するのではなく、半導体装置の形成後においてもクロック信号の伝搬遅延時間を適宜変更できるような回路（可変遅延回路）を設けておく。そして該可変遅延回路を用い、可変遅延回路の後段に設けられた回路を所望の条件で正常に動作させることができるように、伝搬遅延時間のばらつきを補正する。具体的には、各クロック信号の位相を制御する。【０００７】  なおクロック信号は、半導体装置の基本的動作のタイミングを決定する制御信号であり、半導体装置は、クロック信号が入力されて初めて、本来の機能を行なうことができる。よって、半導体装置が機能する以前の設定に相当するクロック信号の伝搬遅延のバランスの設定を行なうことは、通常不可能である。本発明の半導体装置が有する可変遅延回路は、基本的動作を行なう回路とは異なる系統で制御することができるので、半導体装置内でクロック信号の伝搬遅延のバランスをとることができる。【０００８】  可変遅延回路は、クロック信号を遅延させることができる素子（遅延素子）が複数設けられており、また該複数の遅延素子を１つまたは複数選択できるスイッチング素子が備えられた回路（セレクタ）が設けられている。可変遅延回路に入力されたクロック信号は、セレクタによって選択された遅延素子によって伝搬遅延し、位相が後方にずれ、後段の回路に出力される。そして、この伝搬遅延の度合いは、セレクタによって選択された遅延素子の数及び各遅延素子によって生じる伝搬遅延時間で決まる。よって、セレクタの後段に設けられた回路が所望の条件で正常に動作するように、選択するべき遅延素子を決定すれば、設計の段階では把握しきれなかった伝搬遅延時間のばらつきを、実際に半導体装置を形成した後に補正することができる。【０００９】  なお本発明の半導体装置において、伝搬遅延のばらつきを抑える対象となる信号は、クロック信号に限定されない。クロック信号以外であっても、チップ内の広範な領域で用いられる様々な制御信号に関しても、信号間の遅延によるばらつきを抑えることが重要であり、本発明を適用することができる。【００１０】  なお選択するべき最適な遅延素子は、実際に選択してみて半導体装置の動作の状態を確認しながら決めることができる。そして選択すべき遅延素子が決まったら、その情報をメモリ等に記憶しておけば、半導体装置を本来の目的のために動作させる際に、最適な遅延素子を選択することができる。【００１１】  なお本発明では、例えばインバータ、バッファ、抵抗などを遅延素子として用いることができる。なお遅延素子として用いることができる論理素子は上記素子に限定されず、クロック信号の周期を維持したまま、遅延させることができる素子であれば良い。【００１２】  なお本発明の範疇に含まれる半導体装置には、マイクロプロセッサ、画像処理回路などの集積回路や、半導体表示装置等、ありとあらゆる半導体装置が含まれる。半導体表示装置には、液晶表示装置、有機発光素子（ＯＬＥＤ）に代表される発光素子を各画素に備えた発光装置、ＤＭＤ（Ｄｉｇｉｔａｌ  ��ｉｃｒｏｍｉｒｒｏｒ  Ｄｅｖｉｃｅ）、ＰＤＰ（Ｐｌａｓｍａ  Ｄｉｓｐｌａｙ  Ｐａｎｅｌ）、ＦＥＤ（Ｆｉｅｌｄ  Ｅｍｉｓｓｉｏｎ  Ｄｉｓｐｌａｙ）等や、半導体膜を用いた回路素子を駆動回路に有しているその他の表示装置がその範疇に含まれる。
【発明の効果】
【００１３】  本発明は上記構成により、クロック信号の伝搬遅延による、シミュレーションで割り出すことができないクロック信号の位相のずれを、実際に半導体装置を形成した後で補正することができ、半導体装置の周波数特性を向上したり、歩留まりを高めたりすることができる。
【図面の簡単な説明】
【００１４】［図１］図１は、本発明の可変遅延回路のブロック図と、クロック信号のタイミングチャートである。
［図２］図２は、可変遅延回路の構成を示すブロック図である。
［図３］図３は、本発明の半導体装置の構成を示すブロック図と、クロック信号のタイミングチャートである。
［図４］図４は、伝搬遅延時間の最適化を行なうためのフローチャートである。
［図５］図５は、本発明の半導体装置の構成を示すブロック図である。
［図６］図６は、可変遅延回路の構成を示すブロック図である。
［図７］図７は、可変遅延回路の構成を示すブロック図である。
［図８］図８は、可変遅延回路の回路図である。
［図９］図９は、本発明の半導体装置の一つである、ＣＰＵのブロック図である。
［図１０］図１０は、本発明の半導体装置を用いた電子機器の図である。
【符号の説明】
【００１５】１００  可変遅延回路、２００  可変遅延回路、２０１＿１  遅延素子、２０１＿２  遅延素子、２０１＿３  遅延素子、２０１＿ｎ  遅延素子、２０２＿１  スイッチング素子、２０２＿２  スイッチング素子、２０２＿３  スイッチング素子、２０２＿４  スイッチング素子、２０２＿（ｎ＋１）  スイッチング素子、２０３  セレクタ、２０４  デコーダ、２０５  レジスタ、２１０  バッファ  ２２０＿１  インバータ、２２０＿２  インバータ、２２０＿３  インバータ、２２０＿４  インバータ、３００  半導体装置、３０１  内部クロック生成部、３０２ａ  回路Ａ、３０２ｂ  回路Ｂ、３０２ｃ  回路Ｃ、３０３ａ  可変遅延回路、３０３ｂ  可変遅延回路、３０３ｃ  可変遅延回路、５００  チップ、５０１  内部クロック生成部、５０２ａ  回路Ａ、５０２ｂ  回路Ｂ、５０２ｃ  回路Ｃ、５０３ａ  可変遅延回路、５０３ｂ  可変遅延回路、５０３ｃ  可変遅延回路、５０４  ＲＯＭ  Ｉ／Ｆ、５１０チップ、５１１  ＲＯＭ、６００  可変遅延回路、６０１＿１  遅延素子、６０１＿２  遅延素子、６０１＿３  遅延素子、６０１＿ｎ  遅延素子、６０２  セレクタ、６０２＿１  スイッチング素子、６０２＿２  スイッチング素子、６０２＿３  スイッチング素子、６０２＿４  スイッチング素子、６０２＿（ｎ＋１）スイッチング素子、６０３  セレクタ、６０３＿１  スイッチング素子、６０３＿２  スイッチング素子、６０３＿３  スイッチング素子、６０３＿４  スイッチング素子、６０３＿（ｎ＋１）  スイッチング素子、６０４  デコーダ、６０５  デコーダ、６０６  レジスタ、７００  可変遅延回路、７０１＿１  遅延素子、７０１＿２  遅延素子、７０１＿３  遅延素子、７０１＿ｎ  遅延素子、７０２＿１  スイッチング素子、７０２＿２  スイッチング素子、７０２＿３  スイッチング素子、７０２＿ｎ  スイッチング素子、７０４  セレクタ、７０６  レジスタ、９００  基板、９０１  ＡＬＵ、９０２  ＡＬＵ  Ｃｏｎｔｒｏｌｌｅｒ、９０３  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｄｅｃｏｄｅｒ、９０４  Ｉｎｔｅｒｒｕｐｔ  Ｃｏｎｔｒｏｌｌｅｒ、９０５  Ｔｉｍｉｎｇ  Ｃｏｎｔｒｏｌｌｅｒ、９０６  Ｒｅｇｉｓｔｅｒ、９０７  Ｒｅｇｉｓｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ、９０８  Ｂｕｓ  Ｉ／Ｆ、９０９  ＲＯＭ、９１０  可変遅延回路、９１１  可変遅延回路、９１２  可変遅延回路、９１３  可変遅延回路、９１４  可変遅延回路、９１５  可変遅延回路、９２０  ＲＯＭ  Ｉ／Ｆ、２００１  本体、２００２  表示部、２００３  操作キー、２００４  モデム、２１０１  本体、２１０２  表示部、２１０３  音声入力部、２１０４  音声出力部、２１０５  操作キー、２１０６  外部接続ポート、２１０７  アンテナ、２２０１  本体、２２０２  表示部、２２０３  接続端子、２３０１  本体、２３０２  表示部、２３０３  操作キー、２４０１  本体、２４０２  表示部、２４０３  キーボード、２４０４  タッチパッド、２４０５  外部接続ポート、２４０６電源プラグ
【発明を実施するための最良の形態】
【００１６】  本発明の半導体装置に備えられている可変遅延回路の動作について、図１を用いて説明する。図１（Ａ）に示すように、可変遅延回路１００には、遅延素子の選択により伝搬遅延時間を制御することができる選択信号と、補正前のクロック信号ＣＬＫ（ＩＮ）が入力されている。そして可変遅延回路１００からは、選択信号によって伝搬遅延時間が制御されたクロック信号ＣＬＫ（ＯＵＴ）が出力される。選択信号により制御される伝搬遅延時間は、半導体装置を所望の動作条件で動作させるための理想的な位相を有するクロック信号ＣＬＫ（ＩＮ０）と、半導体装置を形成した後に実際に得られるクロック信号ＣＬＫ（ＩＮ）との間で生じる時間の差、または位相差によって決まる。【００１７】  理想的なクロック信号ＣＬＫ（ＩＮ０）と、半導体装置を形成した後に実際に得られるクロック信号ＣＬＫ（ＩＮ）と、可変遅延回路１００によって補正された後のクロック信号ＣＬＫ（ＯＵＴ）との間の時間の差について、図１（Ｂ）に示すタイミングチャートを例に挙げて説明する。図１（Ｂ）に示すように、半導体装置の設計段階におけるクロック信号ＣＬＫ（ＩＮ０）の周期が、例えば１０ｄであり、クロック信号ＣＬＫ（ＩＮ０）と、半導体装置を形成した後に実際に得られるクロック信号ＣＬＫ（ＩＮ）との間の時間の差が２ｄであると仮定する。つまり、クロック信号ＣＬＫ（ＩＮ０）のエッジの立ち上がりから、伝搬遅延時間２ｄが過ぎるタイミングで、クロック信号ＣＬＫ（ＩＮ）のエッジの立ち上がりが生じるものとする。【００１８】  この場合、可変遅延回路１００から出力されるクロック信号ＣＬＫ（ＯＵＴ）と、理想的なクロック信号ＣＬＫ（ＩＮ０）との立ち上がりのエッジを同期させるためには、実際に生じた伝搬遅延時間２ｄを周期１０ｄから差し引いた時間（１０ｄ−２ｄ＝８ｄ）だけ、入力されたクロック信号ＣＬＫ（ＩＮ）を可変遅延回路１００において遅延させれば良い。上記構成により、可変遅延回路１００から出力されるクロック信号ＣＬＫ（ＯＵＴ）は、理想的なクロック信号ＣＬＫ（ＩＮ０）に比べて丁度１周期分（１０ｄ）遅延することになるので、結果的にエッジの立ち上がりが同期することになる。【００１９】  なおエッジの立ち上がりは、完全に同期させることが最も望ましいが、半導体装置が所望の条件で動作する程度に揃えれば良い。【００２０】  また設定が可能な伝搬遅延時間の範囲は、例えば、設計段階において半導体装置が確実に動作すると推定される範囲に定めることができる。つまり、製造時の伝搬遅延時間のばらつきをカバーできるように、伝搬遅延時間の範囲を設計すると良い。【００２１】  可変遅延回路における伝搬遅延時間の制御は、選択信号によって選択される遅延素子によって決まる。図２に、本発明の半導体装置に備えられている、可変遅延回路２００のより具体的な構成の一形態を示す。図２に示す可変遅延回路２００は、遅延素子２０１＿１〜２０１＿ｎと、該遅延素子を単数または複数選択するためのスイッチング素子２０２＿１〜２０２＿（ｎ＋１）が備えられたセレクタ２０３と、スイッチング素子２０２＿１〜２０２＿（ｎ＋１）の１つを選択するための選択信号をデコードし、セレクタ２０３に供給するデコーダ２０４と、選択信号を可変遅延回路２００内に記憶しておくためのレジスタ２０５とを有している。【００２２】  セレクタ２０３によって、選択信号に従って遅延素子２０１＿１〜２０１＿ｎを選択することができる。なお、選択信号を記憶するためのレジスタ２０５は、必ずしも可変遅延回路２００内に設ける必要はなく、可変遅延回路とは別個に設けられたレジスタで代用しても良い。なおレジスタ２０５に選択信号が入力される前に、リセット信号により、レジスタ２０５を初期化しておいても良い。【００２３】  入力された選択信号によってスイッチング素子２０２＿１〜２０２＿（ｎ＋１）の１つが選択されオンになると、該スイッチング素子２０２＿１〜２０２＿（ｎ＋１）によって選択された遅延素子によってクロック信号（ＩＮ）が遅延し、クロック信号ＣＬＫ（ＯＵＴ）として可変遅延回路２００の後段の回路に供給される。なお遅延素子２０１＿１〜２０１＿ｎによって得られる伝搬遅延時間を、それぞれσ１〜σｎであると仮定する。【００２４】  例えば遅延素子２０１＿１の入力側に設けられたスイッチング素子２０２＿１が選択されると、全ての遅延素子は選択されないことになる。よってこの場合、伝搬遅延時間ｄ０は理想的には０となり、入力されたクロック信号ＣＬＫ（ＩＮ）が、そのままクロック信号ＣＬＫ（ＯＵＴ）として出力される。また、遅延素子２０１＿１の出力側のスイッチング素子２０２＿２が選択されると、遅延素子２０１＿１が選択され、伝搬遅延時間ｄ１は理想的にはσ１となる。また、遅延素子２０１＿２の出力側のスイッチング素子２０２＿３が選択されると、遅延素子２０１＿１及び遅延素子２０１＿２が選択され、伝搬遅延時間ｄ２は理想的にはσ１＋σ２となる。【００２５】  このように、スイッチング素子２０２＿１〜２０２＿（ｎ＋１）の選択を制御することで、下記の表１に示すように、伝搬遅延時間がｄ０〜ｄｎとなるように制御することができる。【００２６】
2005013107.tif 000003
【００２７】  なお実際には、配線容量やゲート容量に起因する伝搬遅延が多少なりとも発生しているため、表１に示した伝搬遅延時間に誤差が生じる可能性がある。上記誤差を含めて補正を行なう場合も、遅延素子２０１＿１〜２０１＿ｎの選択を制御することで、ある程度補償することができる。【００２８】  なお実際の半導体装置では、同一のクロック信号ＣＬＫに従って動作する回路が複数設けられており、実際に半導体装置を動作させる際に、該複数の回路間におけるクロック信号ＣＬＫの伝搬遅延時間の差が問題となる。図３（Ａ）に、本発明の半導体装置の一形態を、ブロック図で示す。【００２９】  半導体装置３００には、基準となる基準クロック信号ＣＬＫが入力されており、内部クロック生成部３０１において周波数、振幅等が特定の値に変換され、クロック信号ＣＬＫ（ＩＮ）として、回路Ａ３０２ａ、回路Ｂ３０２ｂ、回路Ｃ３０２ｃにそれぞれ供給される。半導体装置３００には、回路Ａ３０２ａ、回路Ｂ３０２ｂ、回路Ｃ３０２ｃにそれぞれ対応する可変遅延回路３０３ａ、３０３ｂ、３０３ｃが設けられているものとする。【００３０】  なお図３（Ａ）では、内部クロック生成部３０１において基準クロックＣＬＫの周波数、振幅等が特定の値に変換されているが、本発明の半導体装置はこの構成に限定されない。入力された基準クロック信号ＣＬＫを、そのままクロック信号ＣＬＫ（ＩＮ）として回路Ａ３０２ａ、回路Ｂ３０２ｂ、回路Ｃ３０２ｃにそれぞれ供給しても良い。【００３１】  そして、内部クロック生成部３０１から出力されたクロック信号ＣＬＫ（ＩＮ）が、伝搬遅延時間のばらつきにより、互いに位相の異なるクロック信号ＣＬＫａ（ＩＮ）、クロック信号ＣＬＫｂ（ＩＮ）、クロック信号ＣＬＫｃ（ＩＮ）として、可変遅延回路３０３ａ、３０３ｂ、３０３ｃに入力されると仮定する。【００３２】  図３（Ｂ）に、各クロック信号のタイミングチャートを示す。図３（Ｂ）に示すように、クロック信号ＣＬＫ（ＩＮ）の周期を１０ｄとし、クロック信号ＣＬＫ（ＩＮ）に対して、クロック信号ＣＬＫａ（ＩＮ）は３ｄ、クロック信号ＣＬＫｂ（ＩＮ）は２ｄ、クロック信号ＣＬＫｃ（ＩＮ）は５ｄだけ、伝搬遅延時間が生じていると仮定する。【００３３】  各回路に入力されるクロック信号ＣＬＫａ（ＯＵＴ）、クロック信号ＣＬＫｂ（ＯＵＴ）、クロック信号ＣＬＫｃ（ＯＵＴ）の立ち上がりのエッジは、クロック信号ＣＬＫ（ＩＮ）の立ち上がりのエッジと同期させる必要はないが、互いに許容範囲内となるように同期させる必要がある。よって、最も遅延の著しいクロック信号ＣＬＫｃ（ＩＮ）に合わせて、クロック信号ＣＬＫａ（ＩＮ）と、クロック信号ＣＬＫｂ（ＩＮ）を遅延させれば良い。【００３４】  従って、可変遅延回路３０３ａは、クロック信号ＣＬＫａ（ＩＮ）を２ｄだけ遅延させ、クロック信号ＣＬＫａ（ＯＵＴ）として後段の回路Ａ３０２ａに供給する。同様に、可変遅延回路３０３ｂは、クロック信号ＣＬＫｂ（ＩＮ）を３ｄだけ遅延させ、クロック信号ＣＬＫｂ（ＯＵＴ）として後段の回路Ｂ３０２ｂに供給する。可変遅延回路３０３ｃでは、クロック信号ＣＬＫｃ（ＩＮ）をそのままクロック信号ＣＬＫｃ（ＯＵＴ）として後段の回路��３０２ｃに供給する。【００３５】  上記構成により、クロック信号ＣＬＫａ（ＯＵＴ）と、クロック信号ＣＬＫｂ（ＯＵＴ）と、クロック信号ＣＬＫｃ（ＯＵＴ）の立ち上がりのエッジが、全て同期する。上述したように、エッジの立ち上がりは、完全に同期させることが最も望ましいが、半導体装置が所望の条件で動作する程度に揃えれば良い。【００３６】  次に、可変遅延回路によって制御される、伝搬遅延時間の最適化方法について説明する。【００３７】  図４に、伝搬遅延時間の最適化の流れを、フローチャートで示す。伝搬遅延時間の最適化が開始され、まず、１つの伝搬遅延時間が選択信号によって選択される。ここでは最も短い伝搬遅延時間ｄ０が選択されると仮定する。そして、該伝搬遅延時間ｄ０だけ遅延されたクロック信号ＣＬＫに従って、半導体装置を所望の動作条件で動作させる。このとき、半導体装置の動作の状態に問題なしと判断された場合は、最適化が終了し、可変遅延回路の伝搬遅延時間はｄ０に決定する。問題がありと判断された場合は、ｄ０よりも長い伝搬遅延時間ｄ１が選択される。【００３８】  そして同様に、該伝搬遅延時間ｄ１だけ遅延されたクロック信号ＣＬＫに従って、半導体装置を所望の動作条件で動作させる。このとき、半導体装置の動作の状態に問題なしと判断された場合は、最適化が終了し、可変遅延回路の伝搬遅延時間はｄ１に決定する。問題がありと判断された場合は、ｄ１よりも長い伝搬遅延時間ｄ２が選択され、再び上記動作が繰り返される。【００３９】  全ての伝搬遅延時間を選択してもなお、半導体装置の動作状態に問題がありと判断された場合は、当該動作条件下では動作が不可という判断が下される。この場合、他の可変遅延回路の伝搬遅延時間を最適化してから、再び当該可変遅延回路の伝搬遅延時間の最適化を行なうことで、動作を確認できる場合がある。【００４０】  最適化によって伝搬遅延時間が得られたら、可変遅延回路において上記伝搬遅延時間を選択するための選択信号を、レジスタなどに記憶しておくことができる。【００４１】  なお、伝搬遅延時間の最適化は、半導体装置を製品として出荷する前に行なっても良いし、出荷後に行なっても良い。前者の場合、最適な伝搬遅延時間がデータとして記憶された不揮発性メモリを、半導体装置に設けておくことが必要である。後者の場合、電源投入時など定められたタイミングで自動的に行なっても良いし、ユーザーが手動で行なっても良い。【００４２】  図５に、可変遅延回路において伝搬遅延時間を設定するためのデータを不揮発性メモリから読み出す、本発明の半導体装置の一形態をブロック図で示す。図５において、チップ５００には内部クロック生成部５０１と、回路Ａ５０２ａ、回路Ｂ５０２ｂ、回路Ｃ５０２ｃと、回路Ａ５０２ａ、回路Ｂ５０２ｂ、回路Ｃ５０２ｃにそれぞれ対応する可変遅延回路５０３ａ、５０３ｂ、５０３ｃと、ＲＯＭ用のインターフェース（ＲＯＭ  Ｉ／Ｆ）５０４が設けられている。【００４３】  またチップ５１０には、ＲＯＭ５１１が設けられている。ＲＯＭ５１１には、可変遅延回路５０３ａ、５０３ｂ、５０３ｃにおいて用いられる伝搬遅延時間のデータ、或いは可変遅延回路５０３ａ、５０３ｂ、５０３ｃにおいて選択される遅延素子のデータが記憶されている。【００４４】  ＲＯＭ５１１からの読み込みは、チップ５００のリセット動作後、もしくはリセット動作の一環として、自動的に行なわれる。ＲＯＭ５１１から、各可変遅延回路５０３ａ、５０３ｂ、５０３ｃに対応した選択信号を情報として含むデータを読み出し、ＲＯＭ  Ｉ／Ｆ５０４を介して、対応する可変遅延回路５０３ａ、５０３ｂ、５０３ｃ内のレジスタに書き込む。なおリセット動作時には、ＲＯＭ５１１からの読み込み前に可変遅延回路内のレジスタの初期化を行なっても良い。【００４５】  そして可変遅延回路５０３ａ、５０３ｂ、５０３ｃでは、レジスタに記憶されたデータに従ってセレクタが動作し、伝搬遅延時間を設定することができる。
【実施例１】
【００４６】  本実施例では、本発明の可変遅延回路の一形態について説明する。図６に、本実施例の可変遅延回路の構成をブロック図で示す。本実施例の可変遅延回路６００は、遅延素子６０１＿１〜６０１＿ｎと、該遅延素子を選択するためのスイッチング素子６０２＿１〜６０２＿（ｎ＋１）が備えられたセレクタ６０２と、同じく該遅延素子を選択するためのスイッチング素子６０３＿１〜６０３＿（ｎ＋１）が備えられたセレクタ６０３とを有している。さらに本実施例の可変遅延回路６００は、スイッチング素子６０２＿１〜６０２＿（ｎ＋１）の１つを選択するための選択信号をデコードし、セレクタ６０２に供給するデコーダ６０４と、スイッチング素子６０３＿１〜６０３＿（ｎ＋１）の１つを選択するための選択信号をデコードし、セレクタ６０３に供給するデコーダ６０５と、レジスタ６０６とを有している。【００４７】  セレクタ６０２、セレクタ６０３によって、選択信号に従って遅延素子６０１＿１〜６０１＿ｎを選択することができる。【００４８】  なお、選択信号を記憶するためのレジスタ６０６は、必ずしも可変遅延回路６００内に設ける必要はなく、可変遅延回路６００とは別個に設けられたレジスタで代用しても良い。【００４９】  選択信号が可変遅延回路６００に入力されると、レジスタ６０６に該選択信号が書き込まれる。なおレジスタ６０６に選択信号を書き込む前に、リセット信号によりレジスタ６０６を初期化しておいても良い。レジスタ６０６に書き込まれた選択信号は、デコーダ６０４、６０５に供給される。デコーダ６０４、６０５は該選択信号をデコードし、セレクタ６０２、６０３に供給する。セレクタ６０２、６０３では、該デコードされた選択信号によって、スイッチング素子が選択される。【００５０】  このとき、セレクタ６０２、６０３において選択されるスイッチング素子は、互いに直列に接続されており、各遅延素子６０１＿１〜６０１＿ｎを間に挟んでいても良い。例えばスイッチング素子６０２＿１が選択される場合は、直列に接続されているスイッチング素子６０３＿１が選択され、入力されたクロック信号ＣＬＫ（ＩＮ）が、遅延素子を介さずに、直接クロック信号ＣＬＫ（ＯＵＴ）として後段の回路に供給される。よってこの場合、伝搬遅延時間ｄ０は理想的には０となる。またスイッチング素子６０２＿２が選択される場合は、遅延素子６０１＿１を間に介して直列に接続されているスイッチ６０３＿２が選択され、入力されたクロック信号ＣＬＫ（ＩＮ）が、遅延素子６０１＿１によって伝搬遅延時間ｄ１が理想的にはσ１となり、σ１だけ遅延したクロック信号ＣＬＫ（ＯＵＴ）が後段の回路に供給される。【００５１】  このように、スイッチング素子６０２＿１〜６０２＿（ｎ＋１）、スイッチング素子６０３＿１〜６０３＿（ｎ−１）の選択を制御することで、下記の表２に示すように、伝搬遅延時間がｄ０〜ｄｎとなるように制御することができる。【００５２】
2005013107.tif 000004
2005013107.tif 000005
【００５３】  なお本実施例では、遅延素子６０１＿１〜６０１＿ｎの入力側と出力側の両方にセレクタを設けているが、出力側にのみセレクタを設けていても良い。
【実施例２】
【００５４】  本実施例では、本発明の可変遅延回路の一形態について説明する。図７に、本実施例の可変遅延回路の構成をブロック図で示す。本実施例の可変遅延回路７００は、遅延素子７０１＿１〜７０１＿ｎと、該遅延素子を選択するためのセレクタ７０４が備えられている。セレクタ７０４はスイッチング素子７０２＿１〜７０２＿ｎを有している。さらに本実施例の可変遅延回路７００は、スイッチング素子７０２＿１〜７０２＿ｎを選択するための選択信号を記憶しておくレジスタ７０６を有している。【００５５】  なお、選択信号を記憶するためのレジスタ７０６は、必ずしも可変遅延回路７００内に設ける必要はなく、可変遅延回路７００とは別個に設けられたレジスタで代用しても良い。【００５６】  本実施例では、各スイッチング素子７０２＿１〜７０２＿ｎによって、各遅延素子７０１＿１〜７０１＿ｎの入力側と出力側のいずれか一方が選択され、後段の遅延素子の入力側或いは可変遅延回路７００の出力側と接続される。上記構成により、各遅延素子７０１＿１〜７０１＿ｎを単独で選択することができる上に、各遅延素子７０１＿１〜７０１＿ｎを複数選択することもできる。そして複数選択する場合、遅延素子はランダムに選び出すことができ、図２、図６に示す可変遅延回路に比べて、より少ない遅延素子で伝搬遅延時間をより細かく設定することができる。【００５７】  例えば、全てのスイッチング素子７０２＿１〜７０２＿ｎが、各遅延素子７０１＿１〜７０１＿ｎの入力側を選択している場合、全ての遅延素子７０１＿１〜７０１＿ｎが選択されないことになる。よってこの場合、伝搬遅延時間ｄ０は理想的には０となる。また例えば、スイッチング素子７０２＿１のみが対応する遅延素子７０１＿１の出力側を選択している場合、遅延素子７０１＿１のみが選択されるので、伝搬遅延時間ｄ１は理想的にはσ１となる。また例えば、スイッチング素子７０２＿１、スイッチング素子７０２＿３のみが、対応する遅延素子７０１＿１の出力側、遅延素子７０１＿３の出力側を選択している場合、遅延素子７０１＿１、遅延素子７０１＿３のみが選択されるので、伝搬遅延時間ｄ５は理想的にはσ１＋σ３となる。【００５８】  このように、スイッチング素子７０２＿１〜７０２＿ｎの選択を制御することで、下記の表３に示すように、伝搬遅延時間がｄ０〜ｄｋとなるように制御することができる。なおこの場合、σ１：σ２：σ３：…：σｎ＝２０：２１：２２：…：２ｎ−１とすることで、２ｎ段階の伝搬遅延時間の設定が可能になる。【００５９】
2005013107.tif 000006
【実施例３】
【００６０】  次に、図２に示した可変遅延回路２００において、遅延素子が３つ設けられた場合（ｎ＝３）の具体的な回路構成の一例を、図８に示す。なお図８では、セレクタ２０３と遅延素子２０１＿１〜２０１＿３のみを示す。【００６１】  図８において、遅延素子２０１＿１〜２０１＿３は、バッファ２１０を３つずつ有している。なお遅延素子２０１＿１〜２０１＿３に用いられるバッファの数は３つに限定されず、単数であっても良いし、３以外の複数であっても良い。また遅延素子２０１＿１〜２０１＿３に用いられる素子はバッファに限定されず、インバータ、抵抗など他の素子であっても良い。そして本実施例では、各遅延素子２０１＿１〜２０１＿３に用いられるバッファの数を全て揃えているが、異なる数のバッファを有していても良い。【００６２】  またセレクタ２０３は、トランスミッションゲートを用いたスイッチング素子２０２＿１〜２０２＿４を有しており、さらに各スイッチング素子２０２＿１〜２０２＿４に対応したインバータ２２０＿１〜２２０＿４を有している。デコーダ２０４からのデコードされた選択信号と、該選択信号がインバータ２２０＿１〜２２０＿４によって反転された信号とによって、スイッチング素子２０２＿１〜２０２＿４のスイッチングが制御され、遅延素子２０１＿１〜２０１＿３が選択される。【００６３】  なお遅延素子２０１＿１によって生じる伝搬遅延時間をσ１、遅延素子２０１＿２によって生じる伝搬遅延時間をσ２、遅延素子２０１＿３によって生じる伝搬遅延時間をσ３とし、各バッファ２１０によって生じる伝搬遅延時間は全てｄであると仮定する。この場合、σ１＝σ２＝σ３＝３ｄとなる。よって表１に従うと、ｄ０＝０、ｄ１＝３ｄ、ｄ２＝６ｄ、ｄ３＝９ｄと、伝搬遅延時間を設定することができる。
【実施例４】
【００６４】  本実施例では、本発明の半導体装置の一つであるＣＰＵの構成について説明する。【００６５】  図９に、本実施例のＣＰＵの構成を示す。図９に示すＣＰＵは、基板９００上に、演算回路（ＡＬＵ：Ａｒｉｔｈｍｅｔｉｃ  ｌｏｇｉｃ  ｕｎｉｔ）９０１、ＡＬＵ  Ｃｏｎｔｒｏｌｌｅｒ９０２、Ｉｎｓｔｒｕｃｔｉｏｎ  Ｄｅｃｏｄｅｒ９０３、Ｉｎｔｅｒｒｕｐｔ  Ｃｏｎｔｒｏｌｌｅｒ９０４、Ｔｉｍｉｎｇ  Ｃｏｎｔｒｏｌｌｅｒ９０５、Ｒｅｇｉｓｔｅｒ９０６、Ｒｅｇｉｓｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ９０７、バスインターフェース（Ｂｕｓ  Ｉ／Ｆ）９０８、書き換え可能なＲＯＭ９０９、ＲＯＭインターフェース（ＲＯＭ  Ｉ／Ｆ）９２０とを主に有している。ＲＯＭ９０９及びＲＯＭ  Ｉ／Ｆ９２０は、別チップに設けても良い。勿論、図９に示すＣＰＵは、その構成を簡略化して示した一例にすぎず、実際のＣＰＵはその用途によって多種多様な構成を有している。【００６６】  Ｂｕｓ  Ｉ／Ｆ９０８を介してＣＰＵに入力された命令は、Ｉｎｓｔｒｕｃｔｉｏｎ  Ｄｅｃｏｄｅｒ９０３に入力され、デコードされた後、ＡＬＵ  Ｃｏｎｔｒｏｌｌｅｒ９０２、Ｉｎｔｅｒｒｕｐｔ  Ｃｏｎｔｒｏｌｌｅｒ９０４、Ｒｅｇｉｓｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ９０７、Ｔｉｍｉｎｇ  Ｃｏｎｔｒｏｌｌｅｒ９０５に入力される。【００６７】  ＡＬＵ  Ｃｏｎｔｒｏｌｌｅｒ９０２、Ｉｎｔｅｒｒｕｐｔ  Ｃｏｎｔｒｏｌｌｅｒ９０４、Ｒｅｇｉｓｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ９０７、Ｔｉｍｉｎｇ  Ｃｏｎｔｒｏｌｌｅｒ９０５は、デコードされた命令に基づき、各種制御を行なう。具体的にＡＬＵ  Ｃｏｎｔｒｏｌｌｅｒ９０２は、ＡＬＵ９０１の動作を制御するための信号を生成する。また、Ｉｎｔｅｒｒｕｐｔ  Ｃｏｎｔｒｏｌｌｅｒ９０４は、ＣＰＵのプログラム実行中に、外部の入出力装置や、周辺回路からの割り込み要求を、その優先度やマスク状態から判断し、処理する。Ｒｅｇｉｓｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ９０７は、Ｒｅｇｉｓｔｅｒ９０６のアドレスを生成し、ＣＰＵの状態に応じてＲｅｇｉｓｔｅｒ９０６の読み出しや書き込みを行なう。【００６８】  またＴｉｍｉｎｇ  Ｃｏｎｔｒｏｌｌｅｒ９０５は、ＡＬＵ９０１、ＡＬＵ  Ｃｏｎｔｒｏｌｌｅｒ９０２、Ｉｎｓｔｒｕｃｔｉｏｎ  Ｄｅｃｏｄｅｒ９０３、Ｉｎｔｅｒｒｕｐｔ  Ｃｏｎｔｒｏｌｌｅｒ９０４、Ｒｅｇｉｓｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ９０７、Ｂｕｓ  Ｉ／Ｆ９０８の動作のタイミングを制御する信号を生成する。例えばＴｉｍｉｎｇ  Ｃｏｎｔｒｏｌｌｅｒ９０５は、基準クロック信号ＣＬＫ１を元に、内部クロック信号ＣＬＫ２を生成する内部クロック生成部を備えており、クロック信号ＣＬＫ２を上記各種回路に供給する。【００６９】  本実施例のＣＰＵでは、Ｔｉｍｉｎｇ  Ｃｏｎｔｒｏｌｌｅｒ９０５から供給されるクロック信号ＣＬＫ２の遅延を補正するための可変遅延回路９１０〜９１５が、ＡＬＵ９０１、ＡＬＵ  Ｃｏｎｔｒｏｌｌｅｒ９０２、Ｉｎｓｔｒｕｃｔｉｏｎ  Ｄｅｃｏｄｅｒ９０３、Ｉｎｔｅｒｒｕｐｔ  Ｃｏｎｔｒｏｌｌｅｒ９０４、Ｒｅｇｉｓｔｅｒ  Ｃｏｎｔｒｏｌｌｅｒ９０７、Ｂｕｓ  Ｉ／Ｆ９０８に設けられている。【００７０】  各可変遅延回路の設定は、リセット���作の直後、もしくはリセット動作の一環として、ＲＯＭ９０９からＲＯＭ  Ｉ／Ｆ９２０によって読み出され、各可変遅延回路内レジスタに書き込まれる。本動作は、ＣＰＵが起動する以前の動作であり、ＣＰＵは各可変遅延回路の設定終了後に、初期命令の読み込みを開始する。なお、各可変遅延回路内レジスタのリセット信号による初期値として、設計段階に見積もった期待される値に設定しておいても良い。チップ製造時にクロック信号のばらつきが許容値内に抑えられた場合には、リセット信号による初期化のみで動作可能となる。【００７１】  なお、ＲＯＭ  Ｉ／Ｆ９２０による可変遅延回路の設定は、ＣＰＵの本来の動作とは独立であるから、ＲＯＭ  Ｉ／Ｆ９２０に供給されるクロック信号は、ＣＰＵの他のブロックへ供給されるクロック信号と同一である必要はない。例えば、ＲＯＭ  Ｉ／Ｆ９２０による可変遅延回路の設定はリセット動作時の初期に一度行なわれるものであるから、設計マージンの狭い高速クロック信号ではなく、確実に動作させるような比較的低速のクロック信号を、Ｔｉｍｉｎｇ  Ｃｏｎｔｒｏｌｌｅｒ９０５にて生成し、用いても良い。さらに、クロック信号の入力端子を別系統としても構わない。【００７２】  上記可変遅延回路９１０〜９１５を設けることで、内部クロック信号ＣＬＫ２の伝搬遅延にばらつきが生じても、ＣＰＵを所望の条件で動作させることができる。なお、上記可変遅延回路９１０〜９１５は全て設ける必要はなく、伝搬遅延のばらつきが大きい回路の前段に設ける構成としても良い。【００７３】  また本実施例では、ＣＰＵを例に挙げて説明したが、本発明の半導体装置はＣＰＵに限定されない。
【実施例５】
【００７４】  本発明の半導体装置を用いた電子機器として、ビデオカメラ、デジタルカメラ、ゴーグル型ディスプレイ（ヘッドマウントディスプレイ）、ナビゲーションシステム、音響再生装置（カーオーディオ、オーディオコンポ等）、ノート型パーソナルコンピュータ、ゲーム機器、携帯情報端末（モバイルコンピュータ、携帯電話、携帯型ゲーム機または電子書籍等）、記録媒体を備えた画像再生装置（具体的にはＤＶＤ：Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）等の記録媒体を再生し、その画像を表示しうるディスプレイを備えた装置）などが挙げられる。それら電子機器の具体例を図１０に示す。【００７５】  図１０（Ａ）は携帯情報端末であり、本体２００１、表示部２００２、操作キー２００３、モデム２００４等を含む。図１０（Ａ）ではモデム２００４が取り外し可能な形態の携帯情報端末を示しているが、モデムが本体２００１に内蔵されていても良い。本発明の半導体装置は、携帯情報端末の信号処理回路に用いることができる。【００７６】  図１０（Ｂ）は携帯電話であり、本体２１０１、表示部２１０２、音声入力部２１０３、音声出力部２１０４、操作キー２１０５、外部接続ポート２１０６、アンテナ２１０７等を含む。なお、表示部２１０２は黒色の背景に白色の文字を表示することで携帯電話の消費電流を抑えることができる。本発明の半導体装置は、携帯電話の信号処理回路に用いることができる。【００７７】  図１０（Ｃ）は電子カードであり、本体２２０１、表示部２２０２、接続端子２２０３等を含む。本発明の半導体装置は、電子カードの信号処理回路に用いることができる。なお図１０（Ｃ）では接触型の電子カードを示しているが、非接触型の電子カードや、接触型と非接触型の機能を持ち合わせた電子カードにも、本発明の半導体装置を用いることができる。【００７８】  図１０（Ｄ）は電子ブックであり、本体２３０１、表示部２３０２、操作キー２３０３等を含む。またモデムが本体２３０１に内蔵されていても良い。本発明の半導体装置は、電子ブックの信号処理回路に用いることができる。【００７９】  図１０（Ｅ）はシート型のパーソナルコンピュータであり、本体２４０１、表示部２４０２、キーボード２４０３、タッチパッド２４０４、外部接続ポート２４０５、電源プラグ２４０６等を含む。本発明の半導体装置は、シート型のパーソナルコンピュータの信号処理回路に用いることができる。【００８０】  以上の様に、本発明の適用範囲は極めて広く、あらゆる分野の電子機器に用いることが可能である。また、本実施例の電子機器は実施例１〜４に示したいずれの構成の半導体装置を用いても良い。
【図１】
2005013107.tif 000007
【図２】
2005013107.tif 000008
【図３】
2005013107.tif 000009
【図４】
2005013107.tif 000010
【図５】
2005013107.tif 000011
【図６】
2005013107.tif 000012
【図７】
2005013107.tif 000013
【図８】
2005013107.tif 000014
【図９】
2005013107.tif 000015
【図１０】
2005013107.tif 000016
【国際調査報告】
2005013107.tif 000017
2005013107.tif 000018
2005013107.tif 000019
2005013107.tif 000020