(57)【要約】【課題】占有面積や定常位相誤差の増大、並びに、クロックが安定するまでに長時間を要することなく、スペクトラム拡散クロックを生成してＥＭＩ対策を図る。【解決手段】基準信号ＣＫ１を受け取って、立ち上がりエッジの傾き、または、立ち下がりエッジの傾き、または、立ち上がりエッジおよび立ち下がりエッジの傾きを、周期的に変化させた第１信号ＣＫ２を生成する第１回路４と、前記第１信号を受け取って、周期的に周波数が変化するクロックを生成する第２回路５と、を有する。【選択図】図３
2013012917.tif 000002
【特許請求の範囲】
【請求項１】
基準信号を受け取って、立ち上がりエッジの傾き、または、立ち下がりエッジの傾き、または、立ち上がりエッジおよび立ち下がりエッジの傾きを、周期的に変化させた第１信号を生成する第１回路と、
前記第１信号を受け取って、周期的に周波数が変化するクロックを生成する第２回路と、
を有することを特徴とするクロック生成回路。
【請求項２】
前記第１回路は、
低レベルから高レベルへ変化する立ち上がりエッジの駆動電流を周期的に変化させて前記第１信号を生成する、
ことを特徴とする請求項１に記載のクロック生成回路。
【請求項３】
請求項１または２に記載のクロック生成回路を有するスペクトラム拡散クロック・ジェネレータと、
前記スペクトラム拡散クロック・ジェネレータにより生成されたクロックが入力される内部回路と、
を有することを特徴とする半導体集積回路。
【請求項４】
基準信号を受け取って、立ち上がりエッジの傾き、または、立ち下がりエッジの傾き、または、立ち上がりエッジおよび立ち下がりエッジの傾きを、周期的に変化させた第１信号を生成し、
前記第１信号を受け取って、周期的に周波数が変化するクロックを生成する、
ことを特徴とするクロック生成方法。
【請求項５】
前記第１信号を、
低レベルから高レベルへ変化する立ち上がりエッジの駆動電流を周期的に変化させ、または、
高レベルから低レベルへ変化する立ち下がりエッジの駆動電流を周期的に変化させ、または、
低レベルから高レベルへ変化する立ち上がりエッジの駆動電流、および、高レベルから低レベルへ変化する立ち下がりエッジの駆動電流を周期的に変化させて生成する、
ことを特徴とする請求項４に記載のクロック生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この出願で言及する実施例は、クロック生成回路、クロック生成方法および半導体集積回路に関する。
【背景技術】
【０００２】
近年、電子機器の高速化および高密度化に伴って、電磁波干渉（ＥＭＩ：Electro Magnetic Interference）が問題になっている。そこで、ＥＭＩ対策としてスペクトラム拡散クロック技術を適用したクロック生成回路（クロック・ジェネレータ）が提案されている。
【０００３】
このスペクトラム拡散クロック技術は、電子機器内のクロック生成回路が単一の周波数のクロックを発生すると、その周波数およびその高調波での輻射が大きくなるため、クロックに対して任意の周波数成分をのせて変動させ、ピークを抑えるものである。
【０００４】
半導体集積回路の分野では、ＰＬＬ（Phase Locked Loop）を用いたスペクトラム拡散クロック生成が一般的であり、これは、スペクトラム拡散クロック・ジェネレータと分周（または、逓倍）を行うＰＬＬ回路のカスケード接続により実現される。
【０００５】
すなわち、スペクトラム拡散クロック・ジェネレータ（ＳＳＣＧ：Spread Spectrum Clock Generator）は、通常、ＰＬＬに対して位相制御機能を追加したものとなっている。ところで、従来、ＳＳＣＧ（クロック生成回路）としては、様々なものが提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−００４４５１号公報
【特許文献２】特開２００６−１６６０４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
前述したように、従来、クロック生成回路としては、様々なものが提案されているが、例えば、フェーズインターポレータ（Phase Interpolator：位相補正回路）を用いて、ＰＬＬの位相補正（位相変調）を行ってスペクトラム拡散クロックを生成している。
【０００８】
しかしながら、従来のクロック生成回路は、占有面積や定常位相誤差が大きく、クロックが安定するまでに時間がかかるといった問題がある。
【課題を解決するための手段】
【０００９】
一実施形態によれば、基準信号を受け取って、立ち上がりエッジの傾き、および／または、立ち下がりエッジの傾きを、周期的に変化させた第１信号を生成する第１回路と、第２回路と、を有することを特徴とするクロック生成回路が提供される。
【００１０】
すなわち、前記第１の回路は、基準信号を受け取って、立ち上がりエッジの傾き、または、立ち下がりエッジの傾き、または、立ち上がりエッジおよび立ち下がりエッジの傾きを、周期的に変化させた第１信号を生成する。前記第２回路は、前記第１信号を受け取って、周期的に周波数が変化するクロックを生成する。
【発明の効果】
【００１１】
開示のクロック生成回路、クロック生成方法および半導体集積回路は、占有面積や定常位相誤差の増大、並びに、クロックが安定するまでに長時間を要することなく、スペクトラム拡散クロックを生成してＥＭＩ対策を行うことができるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】クロック生成回路の一例を示すブロック図である。
【図２】図１のクロック生成回路の動作を説明するための図である。
【図３】本実施例のクロック生成回路を示すブロック図である。
【図４】図３に示すクロック生成回路における制御コードとTr/Tfの関係を示す図である。
【図５】図４に示す制御コードと立ち上がりエッジの関係を説明するための図（その１）である。
【図６】図４に示す制御コードと立ち上がりエッジの関係を説明するための図（その２）である。
【図７】本実施例のクロック生成回路の適用例を説明するための図である。
【図８】本実施例のクロック生成回路の変形例を示すブロック図である。
【図９】本実施例のクロック生成回路による効果を説明するための図（その１）である。
【図１０】本実施例のクロック生成回路による効果を説明するための図（その２）である。
【図１１】本実施例のクロック生成回路による効果を説明するための図（その３）である。
【図１２】第１実施例のクロック生成回路の要部を示すブロック図である。
【図１３】図１２に示すクロック生成回路の動作を説明するための図（その１）である。
【図１４】図１２に示すクロック生成回路の動作を説明するための図（その２）である。
【図１５】第２実施例のクロック生成回路の要部を示すブロック図である。
【図１６】図１５に示すクロック生成回路の動作を説明するための図である。
【図１７】第３実施例のクロック生成回路を示すブロック図である。
【図１８】図１７に示すクロック生成回路の動作を説明するための図である。
【図１９】図１７に示すクロック生成回路におけるカウンタおよびエンコーダの動作を説明するための図である。
【図２０】図１７に示すクロック生成回路におけるエンコーダの動作を説明するための図である。
【図２１】図１７に示すクロック生成回路の仕様の一例を示す図である。
【図２２】図１７に示すクロック生成回路の具体的な動作の一例を説明するための図（その１）である。
【図２３】図１７に示すクロック生成回路の具体的な動作の一例を説明するための図（その２）である。
【図２４】図１７に示すクロック生成回路の具体的な動作の一例を説明するための図（その３）である。
【図２５】図１７に示すクロック生成回路の具体的な動作の他の例を説明するための図（その１）である。
【図２６】図１７に示すクロック生成回路の具体的な動作の他の例を説明するための図（その２）である。
【図２７】図１７に示すクロック生成回路を適用した半導体集積回路の一例を示すブロック図である。
【発明を実施するための形態】
【００１３】
まず、クロック生成回路の実施例を詳述する前に、クロック生成回路およびその問題点を図１および図２を参照して説明する。
【００１４】
図１は、クロック生成回路の一例を示すブロック図であり、図２は、図１のクロック生成回路の動作を説明するための図である。図１において、参照符号１０１はスペクトラム拡散クロック・ジェネレータ（ＳＳＣＧ：クロック生成回路）、１０２はＰＬＬ回路を示す。
【００１５】
ＳＳＣＧ１０１は、位相比較器（ＰＦＤ）１１１、チャージポンプ（ＣＰ）１１２、ローパスフィルタ（ＬＰＦ）１１３、電圧制御発振器（ＶＣＯ）１１４、位相制御回路１１５および分周器１１６を有する。
【００１６】
ＰＦＤ１１１は、入力する基準クロックＣＫｒと、ＶＣＯ１１４からの出力クロックＣＫ１０を分周器１１６で１／Ｎ分周した信号とを比較する。ＰＦＤ１１１の出力は、ＣＰ１１２およびＬＰＦ１１３を介してＶＣＯ１１４に入力され、出力クロックＣＫ１０を出力する。
【００１７】
出力クロックＣＫ１０は、ＶＣＯ１１４を制御する位相制御回路１１５に入力され、例えば、クロックエッジを三角波や正弦波で位相変調する。具体的に、図２に示されるように、ＶＣＯ１１４からの出力クロックＣＫ１０は、例えば、クロックの立ち上がりエッジおよび立ち下がりエッジ（クロックエッジ）が三角波で位相変調される。
【００１８】
ＳＳＣＧ１０１の出力クロックＣＫ１０は、ＰＬＬ回路１０２に入力され、このＰＬＬ回路１０２で、例えば、２逓倍されてスペクトラム拡散クロックＣＫ２０として、半導体集積回路における様々な内部回路に入力される。ここで、ＰＬＬ回路１０２は、２逓倍するものに限定されず、そのままの周波数を出力するもの、或いは、様々に逓倍または分周して出力してもよい。
【００１９】
このように、図１に示すクロック生成回路は、ＰＬＬに対して位相制御回路１１５による位相制御機能を追加したＳＳＣＧ１０１と、逓倍（または、分周）を行うＰＬＬ回路１０２のカスケード接続により所望のクロックを生成する。これにより、クロックの周波数成分のピークを抑えて、その周波数およびその高調波での輻射を低減し、ＥＭＩ対策を行っている。
【００２０】
しかしながら、上述した図１に示すクロック生成回路は、例えば、ＳＳＣＧ１０１でも、ＰＬＬと同様にＬＰＦ１１３を構成する容量等が使用されるため、占有面積が大きくなってしまう。また、ＳＳＣＧ１０１およびＰＬＬ回路１０２におけるフィードバック処理のため定常位相誤差が大きくなり、クロックが安定するまでに時間がかかるといった問題がある。
【００２１】
以下、クロック生成回路、クロック生成方法および半導体集積回路の実施例を、添付図面を参照して詳述する。図３は、本実施例のクロック生成回路を示すブロック図である。
【００２２】
図３において、参照符号１はＰＬＬ回路、２は１６ビットカウンタ、３は１６：４エンコーダ、４は信号の立ち上がり，および／または，立ち下がりの傾きを調整するバッファ（Tr/Tf調整バッファ）、並びに、５はTr/Tfに依存する遅延時間調整バッファを示す。
【００２３】
参照符号６１〜６４は、例えば、半導体集積回路（チップ）に設けられた各内部回路でクロックを受け取るフリップフロップを示す。すなわち、クロック（ＣＫ３）は、フリップフロップ（内部回路）６１〜６４を介して、半導体集積回路内の様々な回路へ入力される。
【００２４】
ここで、Tr/Tf調整バッファ４は、後で詳述するように、制御コードにより、信号の立ち上がり（Ｔｒ）の傾き（駆動電流），信号の立ち下がり（Ｔｆ）の傾き，或いは、信号の立ち上がりおよび立ち下がりの両方の傾きを調整する。
【００２５】
図３に示されるように、本実施例のクロック生成回路において、基準クロックＣＫｒが入力されたＰＬＬ回路１の出力ＣＫ１は、１６ビットカウンタ２に入力されると共に、Tr/Tf調整バッファ４に入力される。カウンタ２の出力は、１６：４エンコーダ（制御コード生成回路）３に入力されて４ビットの制御コードSEL[3:0]に変換され、その制御コードSEL[3:0]は、Tr/Tf調整バッファ４に入力される。
【００２６】
Tr/Tf調整バッファ４は、プリインバータ４１、並びに、並列に接続されたインバータ４２および４３０〜４３３を有する。インバータ４２および４３０〜４３３は、それぞれｐチャネル型ＭＯＳトランジスタ（ｐＭＯＳトランジスタ）およびｎＭＯＳトランジスタによるＣＭＯＳインバータとして構成されている。
【００２７】
インバータ４３０〜４３３には、それぞれ制御コードSEL[0]〜SEL[3]により制御されるスイッチＳＷｐ０〜ＳＷｐ３，ＳＷｎ０〜ＳＷｎ３が設けられている。具体的に、例えば、インバータ４３０のｐＭＯＳトランジスタのソースと高電位電源線Ｖddとの間にはスイッチＳＷｐ０が設けられ、インバータ４３０のｎＭＯＳトランジスタのソースと低電位電源線Ｖssとの間にはスイッチＳＷｎ０が設けられている。
【００２８】
なお、インバータ４２のｐＭＯＳトランジスタのソースは、そのまま高電位電源線Ｖddに接続され、インバータ４２のｎＭＯＳトランジスタのソースは、そのまま低電位電源線Ｖssに接続されている。
【００２９】
ここで、インバータ４２および４３０〜４３３は、例えば、全てのｐおよびｎＭＯＳトランジスタのサイズ（ゲート幅）を同様に形成することで、同じ駆動能力（電流供給能力）を持たせてもよいが、駆動能力に差を持たせてもよい。
【００３０】
具体的に、インバータ４２および４３０〜４３３の駆動能力を、インバータ４２＜インバータ４３３＜インバータ４３２＜インバータ４３１＜インバータ４３０（例えば、駆動能力の比率が１：２：４：８：１６）となるように設定することができる。
【００３１】
以上により、Tr/Tf調整バッファ４は、４ビットの制御コードSEL[0]〜SEL[3]によりインバータ４３０〜４３３の接続を制御することで、１つのインバータ４２だけによる駆動から５つのインバータ４２および４３０〜４３３による駆動を制御する。
【００３２】
図３では、４ビットの制御コードSEL[0]〜SEL[3]は、インバータ４３０〜４３３の各スイッチＳＷｐ０，ＳＷｎ０〜ＳＷｐ３，ＳＷｎ３を制御するようになっている。すなわち、具体的に、SEL[3:0]＝｛0000｝のとき、ＳＷｐ０〜ＳＷｐ３は全てオフし、信号ＣＫ２（ＩＮ１）の立ち上がりは、インバータ４２だけで駆動されるため、信号ＣＫ２の傾きは緩やか（立ち上がりの遅延は１６０psec）になる。
【００３３】
また、具体的に、SEL[3:0]＝｛1111｝のとき、ＳＷｐ０〜ＳＷｐ３は全てオンし、信号ＣＫ２の立ち上がりは、インバータ４２および４３０〜４３３の全てにより駆動されるため、信号ＣＫ２の立ち上がりの傾きは急峻（立ち上がりの遅延は１０psec）になる。
【００３４】
ここで、制御コードによる制御は、後で詳述する図１２〜図１４と同様に、例えば、スイッチＳＷｐ０〜ＳＷｐ３を制御してインバータ４３０〜４３３におけるｐＭＯＳトランジスタによる信号の立ち上がりの傾きを制御するがそれに限定されるものではない。
【００３５】
すなわち、制御コードによる制御は、後で図１５および図１６を参照して詳述するように、例えば、スイッチＳＷｎ０〜ＳＷｎ３を制御してインバータ４３０〜４３３におけるｎＭＯＳトランジスタによる信号の立ち下がりの傾きを制御してもよい。
【００３６】
さらに、制御コードによる制御は、後で図１７〜図２１を参照して詳述するように、例えば、スイッチＳＷｐ０〜ＳＷｐ５およびＳＷｎ０〜ＳＷｎ５を制御してインバータ４３０〜４３３におけるｐおよびｎＭＯＳトランジスタの両方を制御してもよい。この場合、各インバータにおけるｐおよびｎＭＯＳトランジスタは、立ち上がりと立ち下がりで異なる傾き（遅延）の特性を有するため、クロック周波数の変動が可能になる。
【００３７】
なお、生成されるスペクトラム拡散クロックは、後で図２２〜図２４を参照して詳述するように、例えば、基準クロックに対して周波数が高くなる方向および低くなる方向の両方に周波数（位相）を変動させるセンタースプレッド制御により生成することができる。
【００３８】
また、生成されるスペクトラム拡散クロックは、後で図２５および図２６を参照して詳述するように、例えば、基準クロックに対して周波数が低くなる方向のみ周波数を変動させるダウンスプレッド制御により生成することもできる。
【００３９】
さらに、後で図２７を参照して詳述するように、これらスペクトラム拡散クロックを生成するスペクトラム拡散クロック・ジェネレータ（ＳＳＣＧ）は、半導体集積回路における複数のクロックドメインに対してそれぞれ設けることもできる。
【００４０】
なお、Tr/Tf調整バッファ４においてスイッチング制御されるインバータの数、並びに、制御コード（SEL[3:0]）を生成するための１６ビットカウンタ２および１６：４エンコーダ３等は、図３のものに限定されず、適宜変更することができるのはいうまでもない。
【００４１】
図４は、図３に示すクロック生成回路における制御コードとTr/Tfの関係を示す図である。図３において、各制御コードSEL[0]〜SEL[3]において、『０』は対応するスイッチＳＷｐ０〜ＳＷｐ３（ＳＷｎ０〜ＳＷｎ３）をオフすることを示し、また、『１』はオンすることを示す。
【００４２】
図４に示されるように、Tr/Tf調整バッファ４によるTr/Tfの遅延（傾き）は、制御コードSEL[0]〜SEL[3]により１０psec〜１６０psecの遅延を１０psecの間隔で制御することができる。
【００４３】
図５および図６は、図４に示す制御コードと立ち上がりエッジの関係を説明するための図である。
【００４４】
図５に示されるように、制御コードSEL[3:0]を｛1111｝→｛1100｝→｛1000｝→｛0011｝→｛0000｝→｛0011｝→｛1000｝→｛1100｝→｛1111｝と制御することにより、Tr/Tfの遅延を10→40→80→130→160→130→80→40→10psecと変化させることができる。
【００４５】
また、図６に示されるように、制御コードSEL[3:0]を、｛0000｝および｛1111｝と制御することにより、Tr/Tfの遅延を、１６０psecおよび１０psecと変化させることができる。
【００４６】
ここで、図５および図６では、立ち上がりエッジ（Ｔｒ）の傾き（遅延）の変化を示しているが、立ち下がりエッジ（Ｔｆ）の傾きの変化を利用することもでき、それは、例えば、図１５および図１６を参照して後に詳述する。
【００４７】
なお、図３は、Tr/Tf調整バッファ４で、制御コードSEL[3:0]を｛0000｝および｛1111｝と制御してTr/Tfの遅延を１６０psecおよび１０psecと変化させ、遅延時間調整バッファ５によりTr/Tf依存の遅延時間が異なるクロックＣＫ３を出力する様子を示している。
【００４８】
図７は、本実施例のクロック生成回路の適用例を説明するための図であり、図７（ａ）〜図７（ｃ）は、それぞれ遅延時間調整バッファ５から出力されるクロックＣＫ３の遅延（Tr/Tf依存の遅延）の様子を示す。
【００４９】
図７（ａ）は、偶数周期ではTr/Tf調整バッファ４に入力する信号ＣＫ１と同じ第１周波数のクロックが生成され、奇数周期では第１周波数とは異なる第２周波数のクロックが生成される様子を示す。
【００５０】
これは、例えば、図６を参照して説明したTr/Tf調整バッファ４により、制御コードSEL[3:0]を｛0000｝および｛1111｝と制御して得られる１６０psecおよび１０psecの信号ＣＫ２を利用して実現することができる。
【００５１】
図７（ｂ）は、偶数周期では第１周波数のクロックが生成され、奇数周期では第１周波数とは異なる第２および第３周波数のクロックが生成される様子を示す。
【００５２】
ここで、図７（ａ）と図７（ｂ）の違いは、図７（ａ）における奇数周期では、常に第２周波数のクロックだけが生成されるのに対して、図７（ｂ）における奇数周期では、異なる周波数（第２および第３周波数）のクロックが順番に生成されるようになっている。
【００５３】
なお、図７（ｂ）において、奇数周期で生成されるクロックの周波数は２種類とされているが、これは、２種類に限定されないのはいうまでもない。
【００５４】
図７（ｃ）は、図１および図２を参照して説明したのと同様に、時間の経過に従って各クロックの周波数を順に変化させる様子を示す。これは、例えば、図５を参照して説明したTr/Tf調整バッファ４の制御により得られる遅延が順次変化する信号ＣＫ２を利用して実現することができる。
【００５５】
なお、図７（ａ）および図７（ｂ）において、偶数周期および奇数周期は逆にしてもよい。すなわち、第１周波数のクロックを奇数周期で生成し、偶数周期で第１周波数と異なる周波数のクロックを生成してもよい。さらに、例えば、第１周波数のクロックを生成するのは、偶数または奇数の１周期毎でなくてもよく、例えば、２周期毎や４周期毎のように適宜変更することができる。
【００５６】
また、図７（ｃ）において、周期的に変化する異なる周波数のクロックは、異なる周波数の１２個のクロックで１周期を構成するものに限定されず、様々に変化させることができる。
【００５７】
図８は、本実施例のクロック生成回路の変形例を示すブロック図である。図８と、前述した図３との比較から明らかなように、本変形例のクロック生成回路では、Tr/Tf調整バッファ４に入力する４ビットの制御コードSEL[3:0]を、外部から直接与えられる。
【００５８】
すなわち、本変形例は、図３に示す本実施例のクロック生成回路において、４ビットの制御コードSEL[3:0]を生成するための１６ビットカウンタ２および１６：４エンコーダ３を不要とし、外部から直接４ビットの制御コードSEL[3:0]を入力している。
【００５９】
図９〜図１１は、本実施例のクロック生成回路による効果を説明するための図であり、図９はＦＦＴ（Fast Fourier Transform：高速フーリエ変換）入力波形を示し、図１０はＦＦＴ結果を示し、図１１は周波数分布を示す。
【００６０】
図９（ａ），図１０（ａ）および図１１（ａ）は、奇数周期で周波数を周期的に変動した場合（図７（ｂ）に対応）を示し、図９（ｂ），図１０（ｂ）および図１１（ｂ）は、偶数周期と奇数周期で異なる周波数に固定した場合（図７（ａ）に対応）を示す。
【００６１】
すなわち、図９（ａ），図１０（ａ）および図１１（ａ）は、奇数周期におけるTr/Tf調整を、制御コードを変化させて行う。ここで、Tr/Tf調整を行うための制御コードは、周期性を有している。また、図９（ｂ），図１０（ｂ）および図１１（ｂ）は、奇数周期におけるTr/Tf調整を、固定の制御コードで行う。
【００６２】
なお、図９（ｃ），図１０（ｃ）および図１１（ｃ）は、スペクトラム拡散クロック（ＳＳＣ：Spread Spectrum Clock）技術を適用しない場合（基本波形：例えば、１００ＭＨｚ）を示す。
【００６３】
図９（ａ），図１０（ａ）および図１１（ａ）と、図９（ｃ），図１０（ｃ）および図１１（ｃ）との比較から明らかなように、奇数周期で周波数（周期）を周期的に変動した場合、ＦＦＴ結果および周波数分布は、ピークが抑制されて幅が広がっている。
【００６４】
具体的に、図１１（ａ）では、例えば、１００ＭＨｚ，１２３ＭＨｚ，１３３ＭＨｚおよび１７７ＭＨｚのクロック成分が出現し、図１１（ｃ）よりも、１００ＭＨｚのピーク（出現率）が大幅に低減されているのが分かる。
【００６５】
図９（ｂ），図１０（ｂ）および図１１（ｂ）と、図９（ｃ），図１０（ｃ）および図１１（ｃ）との比較から明らかなように、偶数周期と奇数周期で異なる周波数に固定した場合、ＦＦＴ結果および周波数分布は、ピークが抑制されて幅が広がっている。
【００６６】
具体的に、図１１（ｂ）では、例えば、１００ＭＨｚおよび１２３ＭＨｚのクロック成分が出現し、図１１（ｃ）よりも、１００ＭＨｚのピークが抑制されているのが分かる。
【００６７】
このように、奇数周期で周波数を周期的に変動したとき、並びに、偶数周期と奇数周期で異なる周波数に固定したときは、ＳＳＣ技術を適用しない基本波形の場合よりも、大幅に振幅のピークを抑制することができる。
【００６８】
本実施例のクロック生成回路によれば、占有面積や定常位相誤差の増大、並びに、クロックが安定するまでに長時間を要することなく、スペクトラム拡散クロックを生成してＥＭＩ対策を行うことが可能になる。
【００６９】
図１２は、第１実施例のクロック生成回路の要部を示すブロック図である。図１２に示されるように、Tr/Tf調整バッファ４は、論理を調整するためのインバータ４０、プリインバータ４１、固定のインバータ４２、並びに、スイッチＳＷｐ０，ＳＷｐ１およびｐＭＯＳトランジスタ４３０ｐ，４３１ｐを有する。
【００７０】
なお、遅延時間調整バッファ５は、例えば、前述した図３と同様のものである。ここで、Tr/Tf調整バッファ４による遅延（ＮＥＴ０からＮＥＴ１の遅延）を遅延１（Delay 1）とし、遅延時間調整バッファ５による遅延（ＮＥＴ１からＮＥＴ２の遅延）を遅延２（Delay 2）とする。
【００７１】
図１２に示されるように、トランジスタ４３０ｐのソースは、スイッチＳＷｐ０を介して高電位電源線Ｖddに接続され、トランジスタ４３１ｐのソースは、スイッチＳＷｐ１を介して高電位電源線Ｖddに接続される。
【００７２】
Tr/Tf調整バッファ４に入力された制御コードSEL[1:0]は、インバータ４０で反転増幅され、信号Net-SEL[0]はスイッチＳＷｐ０を制御し、信号Net-SEL[1]はスイッチＳＷｐ１を制御する。
【００７３】
Tr/Tf調整バッファ４の端子ＩＮに入力するクロックＣＫ１（ＮＥＴ０）は、プリインバータ４１で反転され、さらに、インバータ４２およびｐＭＯＳトランジスタ３２０ｐ，４３１ｐにより反転されると共に、立ち上がりエッジの傾き（駆動電流）が制御される。
【００７４】
すなわち、Tr/Tf調整バッファ４の端子ＯＵＴから出力されるクロックＣＫ２（ＮＥＴ１）は、制御コードSEL[1:0]に従って立ち上がりエッジの傾き（Ｔｒ依存遅延）が制御された信号として出力される。
【００７５】
具体的に、例えば、信号Net-SEL[0]およびNet-SEL[1]が高レベル『１』のとき、スイッチＳＷｐ０およびＳＷｐ１がオンしてトランジスタ４３０ｐおよび４３１ｐがトランジスタ４２ｐと並列に接続され、これにより信号ＮＥＴ１の立ち上がりエッジが急峻になる。
【００７６】
そして、信号Net-SEL[0]，Net-SEL[1]のレベルによりスイッチＳＷｐ０，ＳＷｐ１のスイッチングを制御して、トランジスタ４２ｐと並列接続されるトランジスタ４３０ｐおよび４３１ｐによる駆動電流を制御して信号ＮＥＴ１の立ち上がりエッジを調整する。
【００７７】
ここで、ｐＭＯＳトランジスタ４３０ｐのサイズ（ゲート幅）は、例えば、ｐＭＯＳトランジスタ４３１ｐのサイズの２倍程度とされている。
【００７８】
図１３および図１４は、図１２に示すクロック生成回路の動作を説明するための図である。図１３は、Tr/Tf調整バッファ４の出力信号ＮＥＴ１（ＣＫ２）が１周期毎に一定の傾き（遅延：Delay）となる場合を示し、図１４は、Tr/Tf調整バッファ４の出力信号ＮＥＴ１が１周期毎に変化する遅延となる場合を示す。
【００７９】
なお、図１３および図１４において、１周期（Cycle time）は、信号（例えば、ＮＥＴ１）の任意の立ち上がりタイミングから次の立ち上がりタイミングまでの周期とする。
【００８０】
すなわち、図１３は、奇数周期のTr/Tf調整バッファ４の出力信号ＮＥＴ１（ＣＫ２）が１周期毎に一定の遅延となる場合を示し、図１４は、Tr/Tf調整バッファ４の出力信号ＮＥＴ１が１周期毎に変化する遅延となる場合を示す。
【００８１】
具体的に、図１３の場合、例えば、奇数周期Ｃ１，Ｃ３，…において、信号NET-SEL[0]を高レベル『１』で信号NET-SEL[1]を低レベル『０』とし、ｐＭＯＳトランジスタ４２ｐおよび４３０ｐによる駆動電流を利用して立ち上がりエッジの傾きを規定する。
【００８２】
なお、偶数周期Ｃ２，Ｃ４，…においては、信号NET-SEL[0]およびNET-SEL[1]を高レベル『１』とし、ｐＭＯＳトランジスタ４２ｐ，４３０ｐおよび４３１ｐによる駆動電流を利用して立ち上がりエッジの傾きを規定する。
【００８３】
すなわち、信号ＮＥＴ１の立ち上がりの正の傾きは、奇数周期ではｐＭＯＳトランジスタ４３１ｐによる駆動電流が利用できないため少し緩やかになり、偶数周期ではｐＭＯＳトランジスタ４２ｐ，４３０ｐおよび４３１ｐの全ての駆動により急峻になる。
【００８４】
その結果、遅延時間調整バッファ５の出力信号ＮＥＴ２（クロックＣＫ３）は、例えば、奇数周期で８．７５nsecとなり、偶数周期で１１．２５nsecとなって、これら異なる周波数のクロックが奇数周期と偶数周期で変化することになる。
【００８５】
一方、図１４の場合、例えば、第１の奇数周期Ｃ１において、信号NET-SEL[0]を高レベル『１』で信号NET-SEL[1]を低レベル『０』とし、第２の奇数周期Ｃ３において、信号NET-SEL[0]を低レベル『０』で信号NET-SEL[1]を高レベル『１』とする。さらに、第３の奇数周期Ｃ５において、信号NET-SEL[0]およびNET-SEL[1]を低レベル『０』とする。
【００８６】
これにより、信号ＮＥＴ１の立ち上がりの正の傾きは、第１の奇数周期Ｃ１ではトランジスタ４２ｐおよび４３０ｐによる駆動で少し緩やかになり、第２の奇数周期Ｃ１ではトランジスタ４２ｐおよび４３１ｐによる駆動でさらに緩やかになる。
【００８７】
すなわち、トランジスタ４３０ｐのゲート幅は、例えば、トランジスタ４３１ｐのゲート幅の２倍程度とされているため、トランジスタ４２ｐおよび４３１ｐの方がトランジスタ４２ｐおよび４３０ｐよりも駆動電流が小さいため、傾きが緩やかになる。
【００８８】
そして、第３の奇数周期Ｃ１ではトランジスタ４２ｐだけにより駆動されるため、さらに傾きが緩やかになる。なお、偶数周期Ｃ２，Ｃ４，…においては、図１３の場合と同様に、信号NET-SEL[0]およびNET-SEL[1]を高レベル『１』とし、ｐＭＯＳトランジスタ４２ｐ，４３０ｐおよび４３１ｐによる駆動電流を利用して立ち上がりエッジの傾きを規定する。
【００８９】
その結果、遅延時間調整バッファ５の出力信号ＮＥＴ２（クロックＣＫ３）は、例えば、周期の順に、８．７５nsec，１２．５nsec，７．５nsec，１３．７５nsec，…と変化することになる。
【００９０】
以上において、図１２では、インバータ４２のｐＭＯＳトランジスタ４２ｐと並列に接続されるｐＭＯＳトランジスタの数は、説明を簡略化するために２個（４３０ｐ，４３１ｐ）としているがその数は適宜変更することができる。
【００９１】
また、ｐＭＯＳトランジスタ４２ｐ，４３０ｐ，４３１ｐのゲート幅は、所定の比率（例えば、４：２：１）として形成してもよいが、例えば、全て同じサイズとして形成することもできる。
【００９２】
さらに、ｎＭＯＳトランジスタ４２ｎのサイズに関しては、例えば、ｐＭＯＳトランジスタ４２ｐ，４３０ｐ，４３１ｐを合計したサイズとして形成してもよいが、それに限定されるものではない。
【００９３】
また、図１２では、入力される制御コードSEL[1:0]をインバータ４０で反転し、その反転した信号Net-SEL[0]，Net-SEL[1]によりスイッチＳＷｐ０，ＳＷｐ１を制御しているが、この信号の論理も図示のものに限定されるものではない。
【００９４】
図１５は、第２実施例のクロック生成回路の要部を示すブロック図であり、図１６は、図１５に示すクロック生成回路の動作を説明するための図である。図１５と前述した図１２との比較から明らかなように、本第２実施例のクロック生成回路において、Tr/Tf調整バッファ４は、複数のｐＭＯＳトランジスタ４３０ｐ，４３１ｐの代わりに複数のｎＭＯＳトランジス４３０ｎ，４３０ｎを有する。
【００９５】
なお、遅延時間調整バッファ５は、例えば、前述した図１２（図３）と同様のものである。ここで、Tr/Tf調整バッファ４による遅延（ＮＥＴ０からＮＥＴ１の遅延）をDelay 1とし、遅延時間調整バッファ５による遅延（ＮＥＴ１からＮＥＴ２の遅延）をDelay 2とする。
【００９６】
図１５に示されるように、トランジスタ４３０ｎのソースは、スイッチＳＷｎ０を介して低電位電源線Ｖssに接続され、トランジスタ４３１ｎのソースは、スイッチＳＷｎ１を介して低電位電源線Ｖssに接続される。
【００９７】
Tr/Tf調整バッファ４に入力された制御コードSEL[1:0]は、バッファ４０’で増幅され、信号Net-SEL[0]はスイッチＳＷｎ０を制御し、信号Net-SEL[1]はスイッチＳＷｎ１を制御する。
【００９８】
Tr/Tf調整バッファ４の端子ＩＮに入力するクロックＣＫ１（ＮＥＴ０）は、プリインバータ４１で反転され、さらに、インバータ４２およびｎＭＯＳトランジスタ３２０ｎ，４３１ｎにより反転されると共に、立ち下がりエッジの傾き（駆動電流）が制御される。
【００９９】
すなわち、Tr/Tf調整バッファ４の端子ＯＵＴから出力されるクロックＣＫ２（ＮＥＴ１）は、制御コードSEL[1:0]に従って立ち下がりエッジの傾き（Ｔｆ依存遅延）が制御された信号として出力される。
【０１００】
具体的に、図１６の場合、例えば、奇数周期Ｃ１，Ｃ３，…において、信号NET-SEL[0]を高レベル『１』で信号NET-SEL[1]を低レベル『０』とし、ｎＭＯＳトランジスタ４２ｎおよび４３０ｎによる駆動電流を利用して立ち下がりエッジの傾きを規定する。
【０１０１】
なお、偶数周期Ｃ２，Ｃ４，…においては、信号NET-SEL[0]およびNET-SEL[1]を高レベル『１』とし、ｎＭＯＳトランジスタ４２ｎ，４３０ｎおよび４３１ｎによる駆動電流を利用して立ち下がりエッジの傾きを規定する。
【０１０２】
すなわち、信号ＮＥＴ１の立ち下がりの負の傾きは、奇数周期ではｎＭＯＳトランジスタ４２ｎおよび４３０ｎによる駆動で少し緩やかになり、偶数周期ではｎＭＯＳトランジスタ４２ｎ，４３０ｎおよび４３１ｎによる駆動で急峻になる。
【０１０３】
その結果、遅延時間調整バッファ５の出力信号ＮＥＴ２（クロックＣＫ３）は、例えば、奇数周期で８．７５nsecとなり、偶数周期で１１．２５nsecとなって、これら異なる周波数のクロックが奇数周期と偶数周期で変化することになる。
【０１０４】
なお、前述した図１４と同様に、本第２実施例のクロック生成回路においても、信号ＮＥＴ１の立ち下がりの負の傾きを、各奇数周期で順に変化させ、信号ＮＥＴ２の周波数を周期的に変化させることもできる。
【０１０５】
なお、本第２実施例のクロック生成回路においても、インバータ４２のｎＭＯＳトランジスタ４２ｎと並列に接続されるｎＭＯＳトランジスタの数は、２個（４３０ｎ，４３１ｎ）に限定されず、適宜変更することができる。
【０１０６】
また、ｎＭＯＳトランジスタ４２ｎ，４３０ｎ，４３１ｎのゲート幅は、所定の比率として形成してもよいが、例えば、全て同じサイズとして形成することもできる。さらに、ｐＭＯＳトランジスタ４２ｐのサイズに関しては、例えば、ｎＭＯＳトランジスタ４２ｎ，４３０ｎ，４３１ｎを合計したサイズとして形成してもよいが、それに限定されるものではない。
【０１０７】
図１７は、第３実施例のクロック生成回路を示すブロック図であり、図１８は、図１７に示すクロック生成回路の動作を説明するための図である。図１７と前述した図３との比較から明らかなように、本第３実施例のクロック生成回路において、カウンタ２は、１１ビットカウンタとされ、エンコーダ（制御コード生成回路）３は、１１：７エンコーダとされている。
【０１０８】
Tr/Tf調整バッファ４は、プリインバータ４１、並列に接続されたインバータ４２および４３０〜４３５、並びに、差動の制御コードを生成するためのインバータ４４を有する。インバータ４２および４３０〜４３５は、それぞれｐＭＯＳトランジスタおよびｎＭＯＳトランジスタによるＣＭＯＳインバータとして構成されている。
【０１０９】
インバータ４４は、６ビットの制御コードSEL[5:0]を受け取って、差動の制御コードSEL[0]〜SEL[5]および/SEL[0]〜/SEL[5]を生成し、それぞれスイッチ４３０ｐ〜４３５ｐおよび４３０ｎ〜４３５ｎのスイッチングを制御する。
【０１１０】
本第３実施例のクロック生成回路では、インバータ４３０〜４３５におけるｐまたはｎＭＯＳトランジスタの一方を制御して信号ＣＫ２の立ち上がりまたは立ち下がりの傾き（遅延）を制御するのではなく、両方のトランジスタの接続を制御する。
【０１１１】
すなわち、信号ＣＫ２を生成（駆動）するのに使用するインバータ４３０〜４３５を制御する。なお、インバータ４３０〜４３５は、ｐＭＯＳトランジスタ４３０ｐ〜４３５ｐおよびｎＭＯＳトランジスタ４３０ｎ〜４３５ｎのサイズがそれぞれ同様とされ、全て同じ駆動能力を有するようになっている。
【０１１２】
図１８において、○印で示す領域は、例えば、Tr/Tf調整バッファ４に入力するクロックＣＫ１（基本周波数：１００ＭＨｚ）に対応した１周期（１０nsec）を示し、△印で示す領域は、遅延時間調整バッファ５の出力クロックＣＫ３のデフォルト周期を示す。
【０１１３】
なお、デフォルト周期は、Tr/Tf調整バッファ４におけるインバータ４２および４３０〜４３５が全てオンしたときの周期である。また、図１８において、□印で示す領域は、例えば、５個のインバータをオフしたときの遅延時間調整バッファ５の出力クロックＣＫ３の周期を示す。
【０１１４】
図１８に示されるように、本第３実施例のクロック生成回路は、制御コードSEL[5:0]によりインバータ４３０〜４３５の接続を制御し、位相保持を行うために１周期毎に前の周期の制御コードに対してコードを上乗せする（図１８における△印の領域）。また、クロックＣＫ３の周波数を変動させるために位相をずらす際は、制御コードをさらに１コード上乗せする（図１８におけるＣＣ個所を参照）。
【０１１５】
図１９は、図１７に示すクロック生成回路におけるカウンタおよびエンコーダの動作を説明するための図であり、図２０は、図１７に示すクロック生成回路におけるエンコーダの動作を説明するための図である。
【０１１６】
図１９に示されるように、１１ビットカウンタ２は、ＰＬＬ回路１の出力（クロックＣＫ１）をカウントし、カウント値COUNT[10:0]を出力する。
【０１１７】
具体的に、１１ビットカウンタ２は、例えば、基本周波数（クロックＣＫ１）＝１００ＭＨｚ（１周期＝１０nsec）×２11で、変調周波数（ＳＳＣ周波数）＝５０ＫＨｚ（１周期＝２０μsec）を数える。すなわち、２０μsec／１０nsec＝２０００≒２０４８＝２11となり、基本周波数とスペクトラム拡散クロック（ＳＳＣ）の周波数の比で決まる。
【０１１８】
なお、１１ビットのカウント値COUNT[10:0]における最上位ビットCOUNT[10]は、アップ／ダウン（Up/Down）モードを示し、下位の１０ビットCOUNT[9:0]がアップまたはダウンのカウント数を示す。
【０１１９】
すなわち、図１９に示されるように、最上位ビットCOUNT[10]が『０』のときは、カウントアップモードで、カウント値COUNT[9:0]は｛0000000000｝から順にカウントアップされる。そして、カウント値[9:0]は｛1111111111｝で最大となり、その後、最上位ビットCOUNT[10]が『１』となってカウントダウンモードに変化し、それ以降、｛0000000000｝までカウントダウンされる。
【０１２０】
１１ビットカウンタ２の出力は、１０：７エンコーダ３に入力され、例えば、カウント値を１０（フェーズエラーゲイン：Phase Error Gain）毎に纏めた７ビットの制御コードSEL[6:0]に変換される。
具体的に、図１９に示されるように、例えば、COUNT[10:0]が｛00000000000｝〜｛00000001001｝のとき、SEL[6:0]は｛0000000｝となり、COUNT[10:0]が｛00000001010｝〜｛00000010011｝のとき、SEL[6:0]は｛0000001｝となる。エンコーダ３の出力（制御コードSEL[6:0]）のビット数は、アップまたはダウンモードにおけるカウント数×フェーズエラーゲインで決まる。
【０１２１】
図１７の例では、アップまたはダウンモードのカウント数は１０２４で、フェーズエラーゲインが１０なので、１０２４÷１０＝１０２．４＝２7で７ビットのエンコーダ（１０：７エンコーダ）となる。
【０１２２】
なお、図２０に示されるように、１０：７エンコーダ３から出力される制御コードSEL[6:0]において、冗長なビット（SEL[6:0]＝｛1100111｝〜｛1110011｝）は不使用（Unused）として扱う。そして、エンコーダ３から出力される制御コードSEL[6:0]のうち、６ビットの制御コードSEL[5:0]により、Tr/Tf調整バッファ４におけるインバータ４３０〜４３５の接続を制御する。
【０１２３】
図２１は、図１７に示すクロック生成回路の仕様の一例を示す図であり、上述した例を纏めて示すものである。すなわち、図２１に示されるように、図１７に示すクロック生成回路の仕様の一例は、次の通りである。
【０１２４】
（Ｉ）基本周波数（ＣＫ１）は100.00E+06Ｈｚ（１００ＭＨｚ）で、周期は10.00E-09sec（１０nsec）。
（II）ＳＳＣ周波数（変調周波数）は50.00E+03Ｈｚ（５０ＫＨｚ）で、周期は20.00E-06sec（２０μsec）。
【０１２５】
（III）ＳＳＣ変調度は１％で、フェーズエラー（Phase Error:ＰＥ）は100.00E-12sec（１００psec）。
（IV-1）カウンタビット幅（Counter Bit Width：ＣＢＷ）は１１ビット[10:0]＝２11。なお、最上位ビット[10]は、アップ／ダウンの符号を示し、ビット[9:0]は、カウント値を示す。
【０１２６】
（IV-2）フェーズエラーゲイン（Phase Error Gain：ＰＥＧ）は１０．０。
（Ｖ）ＳＳＣ分解能は、１ステップがＰＥ／ＣＢＥ／２＊ＰＥＧで、１ステップの位相ずれは、976.562500000E-15sec（０．９７６５６２５psec）。
【０１２７】
ここで、ＳＳＣ分解能は、例えば、図１を参照して説明したＰＬＬベースのクロック生成回路がアナログ（線形）動作であるのに対して、本実施例のクロック生成回路がデジタル（離散）動作になるために規定する値である。なお、図２１に示すクロック生成回路の仕様は、単なる例であり、様々に変更することができるのはいうまでもない。
【０１２８】
図２２〜図２４は、図１７に示すクロック生成回路の具体的な動作の一例を説明するための図である。図２２および図２３において、ステップ５１，５２，…，１０１，１０２，１０１，…は、前述した図１９のステップ１〜２０５に対応する。
【０１２９】
また、時間（time）secは、入力クロックＣＫ１の立ち上がりエッジの傾き（遅延）を示す時間であり、時間［変調後］secは、変調後（生成されるスペクトラム拡散クロック）の立ち上がりエッジの遅延を示す時間である。なお、フェーズエラー（Phase Error）secは、時間（time）secから時間［変調後］secを差し引いた値になる。
【０１３０】
図２４は、図２２および図２３による制御動作を、横軸に変調周期を取り、縦軸にフェーズエラーを取って描いたものである。図２２〜図２４に示されるように、フェーズエラーは、変調周期が000E+00sec，10.23E-06secおよび20.47E-06secで000E+00sec（零）となり、5.12E-06secで頂点（極大）となり、15.35E-06secで底（極小）となる。
【０１３１】
このように、生成されるスペクトラム拡散クロック（ＣＫ３）の周期（周波数）は、基準クロック（ＣＫ１）に対して周波数が高くなる方向および低くなる方向の両方に変動させるセンタースプレッド制御により生成することができる。
【０１３２】
図２５および図２６は、図１７に示すクロック生成回路の具体的な動作の他の例を説明するための図である。ここで、図２５は、前述した図２２および図２３に対応し、図２６は、前述した図２４に対応する。
【０１３３】
図２５および図２６に示されるように、フェーズエラーは、変調周期が000E+00secおよび10.47E-06secで000E+00sec（零）となり、10.23E-06secで頂点（極大）となる。
【０１３４】
このように、生成されるスペクトラム拡散クロック（ＣＫ３）の周期（周波数）は、基準クロック（ＣＫ１）に対して周波数が低くなる方向のみ周波数を変動させるダウンスプレッド制御により生成することができる。
【０１３５】
なお、図２４および図２６に示されるように、上述した例では、スペクトラム拡散クロックの周波数が三角波に従って変化する場合を説明したが、三角波に限定されないのはもちろんである。
【０１３６】
図２７は、図１７に示すクロック生成回路を適用した半導体集積回路の一例を示すブロック図である。図２７において、参照符号５００は半導体集積回路（チップ）、ＢＬＯＣＫ−Ａ〜−Ｄはクロックドメイン、ＰＬＬ−Ａ，−ＢはＰＬＬ回路、ＭＰ−Ｃ，−Ｄは逓倍器、そして、ＳＥＬ−Ａ〜−Ｄはセレクタを示す。
【０１３７】
ここで、ＰＬＬ−Ａは、１００ＭＨｚのクロック（基準周波数ＦｃＡ）を生成し、ＰＬＬ−Ｂは、１３３ＭＨｚのクロック（ＦｃＢ）を生成する。逓倍器ＭＰ−ＣおよびＭＰ−Ｄは、それぞれ入力クロックを４逓倍して出力する。
【０１３８】
セレクタＳＥＬ−Ａ〜−Ｄは、それぞれ制御信号のレベル『０』または『１』に従って、基準周波数のクロック、または、ＳＳＣＧにより処理されたスペクトラム拡散クロックを選択して各クロックドメインＢＬＯＣＫ−Ａ〜−Ｄに出力する。
【０１３９】
すなわち、各クロックドメインＢＬＯＣＫ−Ａ〜−Ｄにおいて、セレクタＳＥＬ−Ａ〜−Ｄにより選択されたクロックは、例えば、それぞれバッファを介してフリップフロップ（内部回路）へ入力される。
【０１４０】
なお、各ＳＳＣＧにおけるカウンタ２およびエンコーダ３のビット数は、適宜、最適な数に設定することができる。また、各クロックドメインＢＬＯＣＫ−Ａ〜−ＤにおけるＳＳＣＧ変調度設定は同一とし、Ｆｓ＝５０ＫＨｚ，３％とする。以下、具体的な場合を例示して、動作を説明する。
【０１４１】
まず、ＥＭＩ違反（電磁波干渉による問題）が無い場合、全てのクロックドメインＢＬＯＣＫ−Ａ〜−ＤにおけるＳＳＣＧはオフして、各セレクタＳＥＬ−Ａ〜−ＤはＳＳＣ変調無しのクロックを選択して出力する。すなわち、次のようになる。
【０１４２】
すなわち、ＳＥＬ−Ａ〜−Ｄは、ＳＥＬ−Ａ＝『０』，ＳＥＬ−Ｂ＝『０』，ＳＥＬ−Ｃ＝『０』，ＳＥＬ−Ｄ＝『０』を選択する。これにより、ＢＬＯＣＫ−Ａ〜Ｄの周波数は、以下のようになる。
ＢＬＯＣＫ−Ａ：Ｆｃａ＝１００ＭＨｚ
ＢＬＯＣＫ−Ｂ：Ｆｃｂ＝１３３ＭＨｚ
ＢＬＯＣＫ−Ｃ：Ｆｃｃ＝４００ＭＨｚ
ＢＬＯＣＫ−Ｄ：Ｆｃｄ＝５３３ＭＨｚ
【０１４３】
次に、ＥＭＩ違反が１００ＭＨｚ系クロック（ＰＬＬ−Ａ）で発生した場合、１００ＭＨｚ系クロックを使用するＢＬＯＣＫ−ＡおよびＢＬＯＣＫ−ＣのＳＳＣＧをオンして、ＢＬＯＣＫ−ＢおよびＢＬＯＣＫ−ＤのＳＳＣＧをオフする。
【０１４４】
そして、セレクタＳＥＬ−ＡおよびＳＥＬ−ＣはＳＳＣ変調有りのクロックを選択し、ＳＥＬ−ＢおよびＳＥＬ−ＤはＳＳＣ変調無しのクロックを選択して出力する。
【０１４５】
すなわち、ＳＥＬ−Ａ〜−Ｄは、ＳＥＬ−Ａ＝『１』，ＳＥＬ−Ｂ＝『０』，ＳＥＬ−Ｃ＝『１』，ＳＥＬ−Ｄ＝『０』を選択する。これにより、ＢＬＯＣＫ−Ａ〜Ｄの周波数は、以下のようになる。
ＢＬＯＣＫ−Ａ：Ｆｃａ＝１００ＭＨｚ，Ｆｓ＝５０ＫＨｚ，３％
ＢＬＯＣＫ−Ｂ：Ｆｃｂ＝１３３ＭＨｚ
ＢＬＯＣＫ−Ｃ：Ｆｃｃ＝４００ＭＨｚ，Ｆｓ＝５０ＫＨｚ，３％
ＢＬＯＣＫ−Ｄ：Ｆｃｄ＝５３３ＭＨｚ
【０１４６】
一方、ＥＭＩ違反が１３３ＭＨｚ系クロック（ＰＬＬ−Ｂ）で発生した場合、１３３ＭＨｚ系クロックを使用するＢＬＯＣＫ−ＢおよびＢＬＯＣＫ−ＤのＳＳＣＧをオンして、ＢＬＯＣＫ−ＡおよびＢＬＯＣＫ−ＣのＳＳＣＧをオフする。そして、セレクタＳＥＬ−ＡおよびＳＥＬ−ＣはＳＳＣ変調無しのクロックを選択し、ＳＥＬ−ＢおよびＳＥＬ−ＤはＳＳＣ変調有りのクロックを選択して出力する。
【０１４７】
すなわち、ＳＥＬ−Ａ〜−Ｄは、ＳＥＬ−Ａ＝『０』，ＳＥＬ−Ｂ＝『１』，ＳＥＬ−Ｃ＝『０』，ＳＥＬ−Ｄ＝『１』を選択する。これにより、ＢＬＯＣＫ−Ａ〜Ｄの周波数は、以下のようになる。
ＢＬＯＣＫ−Ａ：Ｆｃａ＝１００ＭＨｚ
ＢＬＯＣＫ−Ｂ：Ｆｃｂ＝１３３ＭＨｚ，Ｆｓ＝５０ＫＨｚ，３％
ＢＬＯＣＫ−Ｃ：Ｆｃｃ＝４００ＭＨｚ
ＢＬＯＣＫ−Ｄ：Ｆｃｄ＝５３３ＭＨｚ，Ｆｓ＝５０ＫＨｚ，３％
【０１４８】
さらに、ＥＭＩ違反がＢＬＯＣＫ−Ａで発生した場合、ＢＬＯＣＫ−ＡのＳＳＣＧだけをオンして、ＢＬＯＣＫ−Ｂ〜−ＤのＳＳＣＧをオフする。そして、セレクタＳＥＬ−ＡはＳＳＣ変調有りのクロックを選択し、ＳＥＬ−Ｂ〜−ＤはＳＳＣ変調無しのクロックを選択して出力する。これにより、ＢＬＯＣＫ−Ａ〜Ｄの周波数は、以下のようになる。
ＢＬＯＣＫ−Ａ：Ｆｃａ＝１００ＭＨｚ，Ｆｓ＝５０ＫＨｚ，３％
ＢＬＯＣＫ−Ｂ：Ｆｃｂ＝１３３ＭＨｚ
ＢＬＯＣＫ−Ｃ：Ｆｃｃ＝４００ＭＨｚ
ＢＬＯＣＫ−Ｄ：Ｆｃｄ＝５３３ＭＨｚ
【０１４９】
また、ＥＭＩ違反が全てのＢＬＯＣＫ−Ａ〜−Ｄで発生した場合、ＢＬＯＣＫ−Ａ〜−Ｄの全てのＳＳＣＧをオンする。そして、セレクタＳＥＬ−Ａ〜−Ｄは、全てＳＳＣ変調有りのクロックを選択して出力する。これにより、ＢＬＯＣＫ−Ａ〜Ｄの周波数は、以下のようになる。
ＢＬＯＣＫ−Ａ：Ｆｃａ＝１００ＭＨｚ，Ｆｓ＝５０ＫＨｚ，３％
ＢＬＯＣＫ−Ｂ：Ｆｃｂ＝１３３ＭＨｚ，Ｆｓ＝５０ＫＨｚ，３％
ＢＬＯＣＫ−Ｃ：Ｆｃｃ＝４００ＭＨｚ，Ｆｓ＝５０ＫＨｚ，３％
ＢＬＯＣＫ−Ｄ：Ｆｃｄ＝５３３ＭＨｚ，Ｆｓ＝５０ＫＨｚ，３％
【０１５０】
以上の説明では、全てのクロックドメインＢＬＯＣＫ−Ａ〜−ＤにおけるＳＳＣＧ変調度が、Ｆｓ＝５０ＫＨｚ，３％と全て同じに設定された場合を説明したが、次に、ＢＬＯＣＫ−Ａ〜−ＤにおけるＳＳＣＧ変調度の設定が全て異なる場合を説明する。
【０１５１】
具体的に、ＢＬＯＣＫ−Ａ〜−ＤにおけるＳＳＣＧ変調度を、順に、Ｆｓ＝２０ＫＨｚ，５％、Ｆｓ＝３０ＫＨｚ，４％、Ｆｓ＝４０ＫＨｚ，３％、Ｆｓ＝５０ＫＨｚ，２％と設定した場合を説明する。
【０１５２】
このとき、ＥＭＩ違反が全てのＢＬＯＣＫ−Ａ〜−Ｄで発生すると、ＢＬＯＣＫ−Ａ〜−Ｄの全てのＳＳＣＧをオンし、セレクタＳＥＬ−Ａ〜−Ｄは、全てＳＳＣ変調有りのクロックを選択して出力する。これにより、ＢＬＯＣＫ−Ａ〜Ｄの周波数は、以下のようになる。
ＢＬＯＣＫ−Ａ：Ｆｃａ＝１００ＭＨｚ，Ｆｓ＝２０ＫＨｚ，５％
ＢＬＯＣＫ−Ｂ：Ｆｃｂ＝１３３ＭＨｚ，Ｆｓ＝３０ＫＨｚ，４％
ＢＬＯＣＫ−Ｃ：Ｆｃｃ＝４００ＭＨｚ，Ｆｓ＝４０ＫＨｚ，３％
ＢＬＯＣＫ−Ｄ：Ｆｃｄ＝５３３ＭＨｚ，Ｆｓ＝５０ＫＨｚ，２％
【０１５３】
このように、半導体集積回路５００において、複数のクロックドメインＢＬＯＣＫ−Ａ〜−ＤのＳＳＣＧは、ＥＭＩ違反の状態等により個別にＳＳＣ（スペクトラム拡散クロック）の生成を制御することができる。なお、クロックドメインの数やＰＬＬ回路の数、および、各クロックドメインで使用する周波数等は、様々に変更することができるのはいうまでもない。
【０１５４】
以上の実施例を含む実施形態に関し、さらに、以下の付記を開示する。
（付記１）
基準信号を受け取って、立ち上がりエッジの傾き、または、立ち下がりエッジの傾き、または、立ち上がりエッジおよび立ち下がりエッジの傾きを、周期的に変化させた第１信号を生成する第１回路と、
前記第１信号を受け取って、周期的に周波数が変化するクロックを生成する第２回路と、
を有することを特徴とするクロック生成回路。
【０１５５】
（付記２）
前記基準信号を生成するＰＬＬ回路を有する、
ことを特徴とする付記１に記載のクロック生成回路。
【０１５６】
（付記３）
前記第１回路は、
低レベルから高レベルへ変化する立ち上がりエッジの駆動電流を周期的に変化させて前記第１信号を生成する、
ことを特徴とする付記１または付記２に記載のクロック生成回路。
【０１５７】
（付記４）
前記第１回路は、
第１ｐチャネル型ＭＯＳトランジスタおよび第１ｎチャネル型ＭＯＳトランジスタを有するインバータと、
前記第１ｐチャネル型ＭＯＳトランジスタと並列に設けられ、スイッチで接続が制御される少なくとも１つの第２ｐチャネル型ＭＯＳトランジスタと、を有し、
少なくとも１つの前記第２ｐチャネル型ＭＯＳトランジスタのスイッチを周期的に制御する、
ことを特徴とする付記３に記載のクロック生成回路。
【０１５８】
（付記５）
少なくとも１つの前記第２ｐチャネル型ＭＯＳトランジスタのスイッチを、
偶数または奇数の一方の周期において、第１のスイッチング状態となるように制御し、
偶数または奇数の他方の周期において、前記第１のスイッチング状態とは異なる第２のスイッチング状態となるように制御する、
ことを特徴とする付記４に記載のクロック生成回路。
【０１５９】
（付記６）
前記第１回路は、前記第２ｐチャネル型ＭＯＳトランジスタを、少なくとも２つ有し、
前記第２のスイッチング状態を、前記偶数または奇数の他方の周期において、周期的に変化させる、
ことを特徴とする付記５に記載のクロック生成回路。
【０１６０】
（付記７）
前記第１回路は、
高レベルから低レベルへ変化する立ち下がりエッジの駆動電流を周期的に変化させて前記第１信号を生成する、
ことを特徴とする付記１または付記２に記載のクロック生成回路。
【０１６１】
（付記８）
前記第１回路は、
第１ｐチャネル型ＭＯＳトランジスタおよび第１ｎチャネル型ＭＯＳトランジスタを有するインバータと、
前記第１ｎチャネル型ＭＯＳトランジスタと並列に設けられ、スイッチで接続が制御される少なくとも１つの第２ｎチャネル型ＭＯＳトランジスタと、を有し、
少なくとも１つの前記第２ｎチャネル型ＭＯＳトランジスタのスイッチを周期的に制御する、
ことを特徴とする付記７に記載のクロック生成回路。
【０１６２】
（付記９）
少なくとも１つの前記第２ｎチャネル型ＭＯＳトランジスタのスイッチを、
偶数または奇数の一方の周期において、第３のスイッチング状態となるように制御し、
偶数または奇数の他方の周期において、前記第３のスイッチング状態とは異なる第４のスイッチング状態となるように制御する、
ことを特徴とする付記８に記載のクロック生成回路。
【０１６３】
（付記１０）
前記第１回路は、前記第２ｎチャネル型ＭＯＳトランジスタを、少なくとも２つ有し、
前記第４のスイッチング状態を、前記偶数または奇数の他方の周期において、周期的に変化させる、
ことを特徴とする付記９に記載のクロック生成回路。
【０１６４】
（付記１１）
前記第１回路は、
低レベルから高レベルへ変化する立ち上がりエッジの駆動電流、および、高レベルから低レベルへ変化する立ち下がりエッジの駆動電流を周期的に変化させて前記第１信号を生成する、
ことを特徴とする付記１または付記２に記載のクロック生成回路。
【０１６５】
（付記１２）
前記第１回路は、
ｐチャネル型ＭＯＳトランジスタおよびｎチャネル型ＭＯＳトランジスタを有する第１インバータと、
前記第１インバータと並列に設けられ、スイッチで接続が制御される少なくとも１つの第２インバータと、を有し、
少なくとも１つの前記第２インバータのスイッチを周期的に制御する、
ことを特徴とする付記１１に記載のクロック生成回路。
【０１６６】
（付記１３）
少なくとも１つの前記第２インバータのスイッチを、
偶数または奇数の一方の周期において、第５のスイッチング状態となるように制御し、
偶数または奇数の他方の周期において、前記第５のスイッチング状態とは異なる第６のスイッチング状態となるように制御する、
ことを特徴とする付記１２に記載のクロック生成回路。
【０１６７】
（付記１４）
前記第１回路は、前記第２インバータを少なくとも２つ有し、
前記第４のスイッチング状態を、前記偶数または奇数の他方の周期において、周期的に変化させる、
ことを特徴とする付記１３に記載のクロック生成回路。
【０１６８】
（付記１５）
前記基準信号をカウントするカウンタと、
前記カウンタの出力に従って、前記第１信号の立ち上がりエッジまたは立ち下がりエッジの傾きを制御する制御コードを生成する制御コード生成回路と、
を有することを特徴とする付記１〜付記１４のいずれか１項に記載のクロック生成回路。
【０１６９】
（付記１６）
前記制御コードは、
付記４〜６のいずれか１項に記載の少なくとも１つの前記第２ｐチャネル型ＭＯＳトランジスタのスイッチを制御するか、
付記８〜１０のいずれか１項に記載の少なくとも１つの前記第２ｎチャネル型ＭＯＳトランジスタのスイッチを制御するか、或いは、
付記１２に〜１４のいずれか１項に記載の少なくとも１つの前記第２インバータのスイッチを制御する、
ことを特徴とするクロック生成回路。
【０１７０】
（付記１７）
付記１〜付記１６のいずれか１項に記載のクロック生成回路を有するスペクトラム拡散クロック・ジェネレータと、
前記スペクトラム拡散クロック・ジェネレータにより生成されたクロックが入力される内部回路と、
を有することを特徴とする半導体集積回路。
【０１７１】
（付記１８）
前記スペクトラム拡散クロック・ジェネレータは、複数設けられ、
それぞれの前記スペクトラム拡散クロック・ジェネレータは、個別に制御される、
ことを特徴とする付記１７に記載の半導体集積回路。
【０１７２】
（付記１９）
基準信号を受け取って、立ち上がりエッジの傾き、または、立ち下がりエッジの傾き、または、立ち上がりエッジおよび立ち下がりエッジの傾きを、周期的に変化させた第１信号を生成し、
前記第１信号を受け取って、周期的に周波数が変化するクロックを生成する、
ことを特徴とするクロック生成方法。
【０１７３】
（付記２０）
前記第１信号を、
低レベルから高レベルへ変化する立ち上がりエッジの駆動電流を周期的に変化させ、または、
高レベルから低レベルへ変化する立ち下がりエッジの駆動電流を周期的に変化させ、または、
低レベルから高レベルへ変化する立ち上がりエッジの駆動電流、および、高レベルから低レベルへ変化する立ち下がりエッジの駆動電流を周期的に変化させて生成する、
ことを特徴とする付記１９に記載のクロック生成方法。
【符号の説明】
【０１７４】
１    ＰＬＬ回路
２    カウンタ
３    エンコーダ（制御コード生成回路）
４    Tr/Tf調整バッファ
５    遅延時間調整バッファ
６１〜６４    フリップフロップ（内部回路）
１０１    スペクトラム拡散クロック・ジェネレータ（ＳＳＣＧ：クロック生成回路）
１０２    ＰＬＬ回路
１１１    位相比較器（ＰＦＤ）
１１２    チャージポンプ（ＣＰ）
１１３    ローパスフィルタ（ＬＰＦ）
１１４    電圧制御発振器（ＶＣＯ）
１１５    位相制御回路
１１６    分周器
５００    半導体集積回路（チップ）
【図１】
2013012917.tif 000003
【図２】
2013012917.tif 000004
【図３】
2013012917.tif 000005
【図４】
2013012917.tif 000006
【図５】
2013012917.tif 000007
【図６】
2013012917.tif 000008
【図７】
2013012917.tif 000009
【図８】
2013012917.tif 000010
【図９】
2013012917.tif 000011
【図１０】
2013012917.tif 000012
【図１１】
2013012917.tif 000013
【図１２】
2013012917.tif 000014
【図１３】
2013012917.tif 000015
【図１４】
2013012917.tif 000016
【図１５】
2013012917.tif 000017
【図１６】
2013012917.tif 000018
【図１７】
2013012917.tif 000019
【図１８】
2013012917.tif 000020
【図２０】
2013012917.tif 000021
【図２１】
2013012917.tif 000022
【図２４】
2013012917.tif 000023
【図２６】
2013012917.tif 000024
【図２７】
2013012917.tif 000025
【図１９】
2013012917.tif 000026
【図２２】
2013012917.tif 000027
【図２３】
2013012917.tif 000028
【図２５】
2013012917.tif 000029