(57)【要約】【課題】位相ロックループ回路内の受動素子値およびシステム利得およびチャージポンプ電流の変動を自動的に補正するスペクトル拡散クロック発生器回路を提供する。【解決手段】位相周波数検出器１２２のＵＰおよびＤＯＷＮ信号１２４、１２６のパルス幅を特定の間隔で監視し、標準パルス幅持続時間と比較して、これらのＵＰおよびＤＯＷＮ信号１２４、１２６の偏差誤差を判別する。パルス幅持続時間の実際の値で誤差を測定した後、誤差信号の大きさと方向に応じて位相ロックループ回路１００を調整する。位相ロックループ利得パラメータ、特に電圧制御発振器１３４の利得およびチャージポンプ電流に変化があると、位相周波数検出器１２２の出力に著しい影響が出て、スペクトル拡散プロファイルに沿って周波数が変化するときにＵＰおよびＤＯＷＮ信号１２４、１２６の幅が変動する。【選択図】図３
2007035023.tif 000002
【特許請求の範囲】
【請求項１】
スペクトル拡散クロック発生器を制御する方法であって、
（ａ）クロック信号を位相ロックループ回路に供給し、前記位相ロックループ回路と接続されたコントローラを備えるステップであって、前記位相ロックループが時間の経過とともに複数の出力周波数を発生するステップと、
（ｂ）前記位相ロックループの位相周波数検出器により生成されたＵＰ信号およびＤＯＷＮ信号の少なくとも１つのパルス幅持続時間を測定し、前記パルス幅持続時間を所定の標準持続時間と比較して、それらの間の差を見つけ、偏差誤差信号を求めるステップと、
（ｃ）前記コントローラが、前記偏差誤差信号に基づき前記位相ロックループの物理パラメータを制御して前記パルス幅持続時間と前記所定の標準持続時間との差を自動的に補正し、それにより時間の経過とともに前記位相ロックループの複数の出力周波数を正確に制御して所定のターゲットスペクトル拡散プロファイルをエミュレートするステップと、を含み、
前記位相ロックループがチャージポンプ、電圧制御発振器、およびＮ除算カウンタを備え、
前記位相ロックループの物理パラメータを制御するステップが、（ｉ）前記チャージポンプ電流を変化させるステップと、（ｉｉ）前記Ｎ除算カウンタのＮ値を変化させるステップと、（ｉｉｉ）前記電圧制御発振器の利得を変化させるステップと、を含む方法。
【請求項２】
さらに、
（ａ）前記Ｎ除算カウンタから出力信号を受け取るアドレスカウンタと、前記アドレスカウンタからアドレス値を受け取るメモリ内の値のテーブルと、メモリ内の前記テーブルからデータ値を受け取り基本数レジスタからデータ値を受け取る加算器回路を備え、前記加算器回路がＮの現在の値として前記Ｎ除算カウンタにより使用されるデータ信号を出力することを特徴とするステップと、
（ｂ）スペクトル拡散期間の第１の所定のプロファイル間隔のときに、Ｎの一定値を前記Ｎ除算カウンタに送るステップと、
（ｃ）前記スペクトル拡散期間の次の所定のプロファイル間隔のときに、前記第１の所定のプロファイル間隔を終わりに、Ｎの異なる一定値を前記Ｎ除算カウンタに送り、それにより、前記位相ロックループが前記次の所定のプロファイル間隔の間に異なる周波数を出力するステップと、
を含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記パルス幅持続時間と前記所定の標準持続時間との差を、前記ＵＰおよびＤＯＷＮ信号の前記パルス幅持続時間の最大の値を示す時間の経過による前記位相ロックループの複数の出力周波数のスペクトル拡散プロファイルのプロファイル間隔で測定し、前記最大のパルス幅持続時間が、時間の経過による前記位相ロックループの複数の出力周波数の前記スペクトル拡散プロファイルの勾配の急激な変化の後に発生することを特徴とする請求項１に記載の方法。
【請求項４】
前記スペクトル拡散プロファイルが前記位相ロックループの複数の出力周波数と時間との対比に関してピークのある形状を示し、前記ピークのある形状が勾配変化が著しい最大ピークを含み、また勾配変化が著しい最小の谷を含むことを特徴とする請求項３に記載の方法。
【請求項５】
前記スペクトル拡散プロファイルが前記位相ロックループの複数の出力周波数と時間との対比に関して滑らかな形状を示し、前記滑らかな形状が正弦波形状を含むことを特徴とする請求項３に記載の方法。
【請求項６】
前記パルス幅持続時間と前記所定の標準持続時間との差を、比較的大きな偏差誤差信号を示すが、前記ＵＰおよびＤＯＷＮ信号の前記パルス幅持続時間の最大の値を必ずしも示さない、時間の経過による前記位相ロックループの複数の出力周波数のスペクトル拡散プロファイルのプロファイル間隔で測定し、前記比較的大きな偏差誤差信号が、時間の経過による前記位相ロックループの複数の出力周波数の前記スペクトル拡散プロファイルの勾配の急激な変化のすぐ前に発生することを特徴とする請求項１に記載の方法。
【請求項７】
前記スペクトル拡散プロファイルが前記位相ロックループの複数の出力周波数と時間との対比に関してピークのある形状を示し、前記ピークのある形状が勾配変化が著しい最大ピークを含み、また勾配変化が著しい最小の谷を含むことを特徴とする請求項６に記載の方法。
【請求項８】
前記スペクトル拡散プロファイルが前記位相ロックループの複数の出力周波数と時間との対比に関して滑らかな形状を示し、前記滑らかな形状が正弦波形状を含むことを特徴とする請求項６に記載の方法。
【請求項９】
複数の直列遅延段を備える遅延チェーンを較正するステップを含み、前記正確なクロック信号が既知の周波数であり、これを使用して１遅延段あたりの伝播遅延時間を測定し、前記遅延チェーンではそれ以降、前記ＵＰおよびＤＯＷＮ信号のパルス幅持続時間を測定することを特徴とする請求項１に記載の方法。
【請求項１０】
遅延チェーンの前記遅延段のそれぞれが遅延素子とフリップフロップを備え、さらに、前記遅延チェーンを使用することにより、前記ＵＰ信号、前記ＤＯＷＮ信号、および前記正確なクロック信号の瞬間的なパルス幅持続時間を測定するステップを含むことを特徴とする請求項９に記載の方法。
【請求項１１】
遅延チェーンの前記遅延段のそれぞれが遅延素子、フリップフロップ、および前記フリップフロップの出力信号状態を維持する論理回路を備え、さらに、前記遅延チェーンを使用することにより、前記遅延チェーンパルス幅情報を累積し、それにより複数の前記ＵＰ信号および前記ＤＯＷＮ信号の前記パルス幅持続時間の最大値を測定するステップを含むことを特徴とする請求項９に記載の方法。
【請求項１２】
遅延チェーンの前記遅延段のそれぞれが遅延素子、フリップフロップ、前記フリップフロップの出力信号状態を維持する第１の論理回路、および２つのモードで動作する第２の論理回路を備え、さらに、前記第２の論理回路の第１の動作モードを使用することにより、前記正確なクロック信号の瞬間的なパルス幅持続時間を測定しながら前記遅延チェーンを較正し、前記遅延チェーンおよび前記第２の論理回路の第２の動作モードを使用することにより、パルス幅情報を累積し、それにより複数の前記ＵＰ信号および前記ＤＯＷＮ信号の前記パルス幅持続時間の最大値を測定するステップを含むことを特徴とする請求項９に記載の方法。
【請求項１３】
スペクトル拡散クロック発生回路であって、
（ａ）既知の一定の周波数出力クロック信号を発生するクロック回路と、
（ｂ）時間の経過とともに複数の出力周波数を発生する位相ロックループ回路と、
（ｃ）（ｉ）前記位相ロックループの位相周波数検出器により生成されたＵＰ信号およびＤＯＷＮ信号の少なくとも１つのパルス幅持続時間を測定し、（ｉｉ）前記パルス幅持続時間と所定の標準持続時間とを比較し、その間の差を求め、偏差誤差信号を導き、（ｉｉｉ）前記偏差誤差信号に基づいて前記位相ロックループの物理パラメータを制御することにより前記パルス幅持続時間と前記所定の標準持続時間との差を自動的に補正するように構成され、それにより、時間の経過とともに前記位相ロックループの複数の出力周波数を制御し所定のターゲットスペクトル拡散プロファイルをエミュレートするコントローラを備え、
前記位相ロックループがチャージポンプ、電圧制御発振器、およびＮ除算カウンタを備え、前記位相ロックループの物理パラメータを制御するステップが、（ｉ）前記チャージポンプ電流を変化させるステップと（ｉｉ）前記Ｎ除算カウンタのＮ値を変化させるステップと、（ｉｉｉ）前記電圧制御発振器の利得を変化させるステップを含むことを特徴とするスペクトル拡散クロック発生回路。
【請求項１４】
前記パルス幅持続時間と前記所定の標準持続時間との差を、前記ＵＰおよびＤＯＷＮ信号の前記パルス幅持続時間の最大の値を示す時間の経過による前記位相ロックループの複数の出力周波数のスペクトル拡散プロファイルの少なくとも１つのプロファイル間隔で測定し、前記最大のパルス幅持続時間が、時間の経過による前記位相ロックループの複数の出力周波数の前記スペクトル拡散プロファイルの勾配の急激な変化の後に発生することを特徴とする請求項１３に記載のスペクトル拡散クロック発生回路。
【請求項１５】
誤差信号としての、前記パルス幅持続時間と前記所定の標準持続時間との差を、誤差信号の比較的大きな偏差を示すが、前記ＵＰおよびＤＯＷＮ信号の前記パルス幅持続時間の最大の値を必ずしも示さない、時間の経過による前記位相ロックループの複数の出力周波数のスペクトル拡散プロファイルのプロファイル間隔で測定し、前記比較的大きな偏差誤差信号が、時間の経過による前記位相ロックループの複数の出力周波数の前記スペクトル拡散プロファイルの勾配の急激な変化のすぐ前に発生することを特徴とする請求項１３に記載のスペクトル拡散クロック発生回路。
【請求項１６】
遅延チェーンを構成する複数の直列遅延段を備え、前記一定の周波数出力クロック信号を使用して１遅延段あたりの伝播遅延時間を測定し、前記遅延チェーンではそれ以降、前記ＵＰおよびＤＯＷＮ信号の実際のパルス幅持続時間を測定することを特徴とする請求項１３に記載のスペクトル拡散クロック発生回路。
【請求項１７】
遅延チェーンの前記遅延段のそれぞれが遅延素子とフリップフロップを備え、さらに、前記遅延チェーンで、前記ＵＰ信号、前記ＤＯＷＮ信号、および前記一定な周波数の出力クロック信号の瞬間的なパルス幅持続時間を測定することを特徴とする請求項１６に記載のスペクトル拡散クロック発生回路。
【請求項１８】
遅延チェーンの前記遅延段のそれぞれが遅延素子、フリップフロップ、および前記フリップフロップの出力信号状態を維持する論理回路を備え、前記遅延チェーンがパルス幅情報を累積し、それにより複数の前記ＵＰ信号および前記ＤＯＷＮ信号の前記パルス幅持続時間の最大値を測定することを特徴とする請求項１６に記載のスペクトル拡散クロック発生回路。
【請求項１９】
遅延チェーンの前記遅延段のそれぞれが遅延素子、フリップフロップ、前記フリップフロップの出力信号状態を維持する第１の論理回路、および第１のモードでは、前記一定の周波数出力クロック信号の瞬間的なパルス幅持続時間を測定する動作をしながら前記遅延チェーンを較正し、第２のモードでは、前記遅延チェーンがパルス幅情報を累積する第２の論理回路を備え、それにより複数の前記ＵＰ信号および前記ＤＯＷＮ信号の前記パルス幅持続時間の最大値を測定することを特徴とする請求項１６に記載のスペクトル拡散クロック発生回路。
【請求項２０】
前記Ｎ除算カウンタから出力信号を受け取るアドレスカウンタと、前記アドレスカウンタからアドレス値を受け取るメモリ内の値のテーブルと、メモリ内の前記テーブルからデータ値を受け取り基本数レジスタからデータ値を受け取る加算器回路を備え、前記加算器回路がＮの現在の値として前記Ｎ除算カウンタにより使用されるデータ信号を出力することを特徴とする請求項１３に記載のスペクトル拡散クロック発生回路。
【請求項２１】
前記アドレスカウンタ、テーブル、および加算器回路がスペクトル拡散期間の第１の所定のプロファイル間隔の間に前記Ｎ除算カウンタにＮの定数値を送り、前記第１の所定のプロファイル間隔が終わったら、前記アドレスカウンタ、テーブル、および加算器回路は前記スペクトル拡散期間の次の所定のプロファイル間隔の間に前記Ｎ除算カウンタにＮの異なる定数値を送り、それにより、前記位相ロックループが前記次の所定のプロファイル間隔で異なる周波数を出力することを特徴とする請求項２０に記載のスペクトル拡散クロック発生回路。
【請求項２２】
さらに前記ＵＰ信号、前記ＤＯＷＮ信号、および前記既知の一定の周波数出力クロック信号を入力として受け取るマルチプレクサ回路を備え、またさらに遅延チェーンを構成する複数の直列遅延段を備え、前記既知の一定の周波数出力クロック信号を使用して１遅延段あたりの伝播遅延時間を測定し、前記遅延チェーンでは、前記ＵＰおよびＤＯＷＮ信号のパルス幅持続時間を測定することを特徴とする請求項２１に記載のスペクトル拡散クロック発生回路。
【請求項２３】
メモリ内の前記テーブルおよび前記基本数レジスタがランダムアクセスメモリで構成され、前記位相ロックループの物理パラメータを制御するステップが（ｉ）前記位相ロックループの前記チャージポンプ電流を変化させるステップと（ｉｉ）前記Ｎ除算カウンタのＮ値を変化させるステップと、（ｉｉｉ）前記位相ロックループの電圧制御発振器の利得を変化させるステップと、（ｉｖ）前記テーブルの少なくとも１つのデータ値を変化させるステップと、（ｖ）前記基本数のデータ値を変化させるステップを含むことを特徴とする請求項２２に記載のスペクトル拡散クロック発生回路。
【請求項２４】
前記コントローラが（ｉ）前記マルチプレクサの動作を制御し、（ｉｉ）前記遅延チェーンの較正モードと累積モードを制御し、（ｉｉｉ）前記遅延チェーンのリセットモードを制御し、（ｉｖ）前記物理パラメータを制御し、（ｖ）前記遅延チェーンからの入力を受け取って分析し、（ｖｉ）プロファイル間隔位置入力を受け取って分析するように構成されている処理回路を備えることを特徴とする請求項２３に記載のスペクトル拡散クロック発生回路。
【請求項２５】
前記コントローラが（ｉ）前記マルチプレクサの動作を制御し、（ｉｉ）前記遅延チェーンの較正モードと累積モードを制御し、（ｉｉｉ）前記遅延チェーンのリセットモードを制御し、（ｉｖ）前記物理パラメータを制御し、（ｖ）複数のレジスタにより前記遅延チェーンから入力を受け取って分析し、（ｖｉ）プロファイル間隔位置入力を受け取って分析するように構成されている論理状態機械を備えることを特徴とする請求項２３に記載のスペクトル拡散クロック発生回路。
【請求項２６】
メモリ内の前記テーブルが読み取り専用メモリで構成され、前記位相ロックループの物理パラメータを制御するステップが（ｉ）前記位相ロックループのチャージポンプ電流を変化させるステップと、（ｉｉ）前記Ｎ除算カウンタのＮ値を変化させるステップと、（ｉｉｉ）前記位相ロックループの電圧制御発振器の利得を変化させるステップを含むことを特徴とする請求項２２に記載のスペクトル拡散クロック発生回路。
【請求項２７】
前記コントローラが（ｉ）前記マルチプレクサの動作を制御し、（ｉｉ）前記遅延チェーンの較正モードと累積モードを制御し、（ｉｉｉ）前記遅延チェーンのリセットモードを制御し、（ｉｖ）前記物理パラメータを制御し、（ｖ）前記遅延チェーンからの入力を受け取って分析し、（ｖｉ）プロファイル間隔位置入力を受け取って分析するように構成されている処理回路を備えることを特徴とする請求項２６に記載のスペクトル拡散クロック発生回路。
【請求項２８】
前記コントローラが（ｉ）前記マルチプレクサの動作を制御し、（ｉｉ）前記遅延チェーンの較正モードと累積モードを制御し、（ｉｉｉ）前記遅延チェーンのリセットモードを制御し、（ｉｖ）前記物理パラメータを制御し、（ｖ）複数のレジスタにより前記遅延チェーンから入力を受け取って分析し、（ｖｉ）プロファイル間隔位置入力を受け取って分析するように構成されている論理状態機械を備えることを特徴とする請求項２６に記載のスペクトル拡散クロック発生回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的には、画像形成機器に関するものであり、具体的には、電磁妨害放射を低減するタイプのスペクトル拡散クロック発生器に関するものである。本発明は、特に、位相ロックループのＵＰおよびＤＯＷＮ信号のパルス幅を測定し、実際のパルス幅持続時間を代表的な値と比較し、逸脱誤差を補正するようにシステムパラメータを変化させる自動補正スペクトル拡散クロック発生器として開示されている。
【背景技術】
【０００２】
高速デジタルクロック発生器は、通常、そのようなクロックを組み込む機器の設計段階で特別な注意を払わない限り、電磁妨害（ＥＭＩ）放射に関して非常に大きな雑音を発生する。ＥＭＩ放射を低減する信頼性が高く、安価な方法の１つとして、米国特許第５，４８８，６２７号および第５，６３１，９２０号に開示されているようなスペクトル拡散クロックを使用する方法がある。これらの特許では、プログラマブルカウンタを使用し、メモリ回路に格納されているデータにより、スペクトル拡散周波数を変化させる回路を開示している。米国特許第５，４８８，６２７号と第５，６３１，９２０号は、本願出願人に譲渡されおり、ここに引用することにより、その内容をそっくり本願明細書に包含させるものである。
【特許文献１】米国特許第５，４８８，６２７号
【特許文献２】米国特許第５，６３１，９２０号
【０００３】
米国特許出願第０９／１６９，１１０号（１９９８年１０月８日出願）には、クロック回路の正常動作が可能になる前にランダムアクセスメモリとマルチプレクサを使用して開始データを受信することによって、クロックを変化させることができるデジタルスペクトル拡散クロック回路が開示されている。この出願は、表題が「可変スペクトル拡散クロック」であり、Ｌｅｘｍａｒｋ  Ｉｎｔｅｒｎａｔｉｏｎａｌ，Ｉｎｃ．である本願出願人に譲渡されており、ここに引用することにより、その内容をそっくり本願明細書に包含させるものである。
【０００４】
先行して入手可能なスペクトル拡散クロック発生器（ＳＳＣＧ）の設計は、電圧制御発振器の利得、チャージポンプ電流、受動素子値に対する設計感度を持つ。ＳＳＣＧ回路を修正することにより、感受性の高いパラメータを自動的にまたはコンピュータプログラムの制御のもとで補正すると改善される。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
そこで、本発明の主な課題は、受動素子値、電圧制御発振器の利得、およびチャージポンプ電流の変動を自動的に補正し、低いＥＭＩ放射がより正確なクロック回路を実現するスペクトル拡散クロック発生器を実現することである。本発明の他の課題は、マイクロプロセッサベースの制御システムまたはハードウェアのみで製作された論理制御システムを使用してＶＣＯ利得、チャージポンプ電流、および受動素子値の変動を自動的に補正するスペクトル拡散クロック発生器を実現することである。さらに本発明の他の課題は、位相ロックループ回路の「ピーク」（または最大）ＵＰおよびＤＯＷＮ信号を測定する誤差検出回路を正確な外部クロックを使用しながら、ＶＣＯ利得、チャージポンプ電流、および受動素子値の変動を自動的に補正するスペクトル拡散クロック発生器を実現することである。
【０００６】
本発明の他の課題については、以下の段落で一部説明するが、一部は以下を調べることで当業者にとっては明白となり、または本発明を実施することで学習できる。
【課題を解決するための手段】
【０００７】
前記の課題および他の課題を達成するために、また本発明の一態様は、位相ロックループ内部回路内の電圧制御発振器利得とチャージポンプ電流の変動、ならびに受動素子値の変動を自動的に補正する改良されたスペクトル拡散クロック発生器を提示する。位相周波数検出器（ＰＦＤ）のＵＰおよびＤＯＷＮ出力をある間隔で監視し、ＵＰおよびＤＯＷＮ信号の「ピーク」（または最大）パルス幅を測定し、誤差（もしあれば）がＵＰおよびＤＯＷＮ信号のパルス幅持続時間の間に公称値（または標準値）と比較して判別された後に、位相ロックループ（ＰＬＬ）システムを誤差信号の大きさと方向に応じて調整する。
【０００８】
ＰＬＬ利得パラメータ、特にＶＣＯ利得およびチャージポンプ電流に変化があると、ＰＦＤ出力に著しい影響が出て、スペクトル拡散プロファイルにそって周波数が変化するときにＵＰおよびＤＯＷＮ信号のパルス幅が変動する。プロファイルの一部で、ＵＰおよびＤＯＷＮ信号の「ピーク」（つまり最大）パルスは、変調プロファイルおよびＰＬＬパラメータの関数となる。ＵＰおよびＤＯＷＮ信号のこのピークパルス幅を測定し、理論的パルス幅と比較することにより、この誤差を相殺する補正係数を求めることができる。自動補正方式は、ＶＣＯ利得、チャージポンプ電流、ループフィルタ値、テーブル値、および基本数をはじめとする回路のいくつかの動作パラメータの１つまたは組み合わせを調整することで実装できる。
【０００９】
位相ロックループ（ＰＬＬ）回路は、本発明に基づくものであり、電圧制御発振器（ＶＣＯ）の出力はＮ除算回路（Ｎ除算カウンタとも呼ばれる）に向けられ、このＮ除算回路の出力は帰還信号として位相周波数検出器（ＰＦＤ）に戻される。基準信号、好ましくは周波数が判明している非常に高精度のクロックをＰＦＤ回路への他の入力として送る。この基準信号は、それ自体、分割信号とすることもでき、システムクロックの出力周波数の数分の１とすることができる。
【００１０】
当業者にはよく知られているように、ＰＦＤ回路の出力は、ＵＰおよびＤＯＷＮ誤差信号であり、Ｎ除算回路が意図的に一定周期のＰＦＤの帰還入力で誤差を導き入れるためスペクトル拡散クロック発生器ではきわめて頻繁に出力されるパルスである。理論的パルス幅を実際のパルス幅と比較しているため本発明を実現可能にするのはＵＰおよびＤＯＷＮ信号のパルス幅の正確な測定であり、誤差の補正はこの正確な測定に基づいている。
【００１１】
好ましいスペクトル拡散プロファイルは、かなり異なるピークと谷を持ち、幾分「やせて」もいる対応する誤差プロファイル（つまり、ＵＰおよびＤＯＷＮ「誤差」信号のパルス幅を描く曲線）を出力する。これらのプロファイルを作成し制御するには、ＶＣＯで強制的に新しい周波数を放出するＮ除算カウンタでＮに対し異なる値を導入するが、これは、ＰＦＤ回路がＵＰまたはＤＯＷＮパルスをチャージポンプに出力するよう強制することで行われる。好ましいプロファイルには、ＶＣＯにより連続的に新しい周波数を放射させる異なる時間間隔が１２８あり、またプロファイルで連続的に同じ１２８個の間隔を繰り返すのが好ましい。好ましいプロファイルまたは「ターゲット」プロファイルを使用して生成される周波数プロファイルは、適切なＵＰおよびＤＯＷＮ信号により発生し、これらの信号は独自の誤差プロファイルを持ち、また１２８個の間隔からなる反復パターンを備える。
【００１２】
誤差プロファイルピーク（つまり、正の「ピーク」または負の「ピーク」のいずれかであり、これらは「谷」と呼ばれることもある）は、好ましい誤差プロファイルを検査するときにきわめて異なる。さらに、回路パラメータの変動によりＰＬＬ回路が影響を受け、ターゲットプロファイルが正確に再現されない場合、比較的大きな誤差が正のピークと負のピークでのＵＰおよびＤＯＷＮ信号のパルス幅に発生する。これは、これらのＵＰおよびＤＯＷＮ信号パルス幅のこのような誤差の大きさを捕捉しようとする論理的な場所である。
【００１３】
ピークと谷を示すプロファイルの位置で最大パルス幅のサンプリングを行うことに加えて、実際の誤差プロファイルも最大ピークおよび最小ピーク（または「谷」）の発生直前のターゲットプロファイルからの同様の大きな逸脱を示すこともある。プロファイル内のどこでこれらの他のかなりの逸脱が発生するかを正確に調べることは最大ピークで同じ信号を監視するのよりも困難であるが、誤差プロファイルにその他の場所を使用する方法よりも有利であり、これについて下で説明する。
【００１４】
本発明を実装する際には、２つの異なる実施形態が非常に有用であり、第１の場合では、マイクロプロセッサタイプの回路をコンピュータプログラムとともに使用し、位相ロックループのＮ除算カウンタにロードされるＮの値を制御する。他の好ましい実施形態では、マイクプロセッサまたはその他のシーケンシャルプログラマブルデバイスなしのハードウェア論理回路を使用するが、それでも、Ｎに対する正しい値をＮ除算カウンタに順次入れる機能を持つ。両方の場合に、多数の論理ゲートと他のタイプのデジタル回路を、好ましくは、ＡＳＩＣ（特定用途向け集積回路）などの単一集積回路内で使用するのが好ましい。ＡＳＩＣは、多数の論理ゲートを備える非常に経済的な手段であり、ランダムアクセスメモリとともにマイクロプロセッサを備えることさえできる。
【００１５】
処理回路（ＡＳＩＣ内に組み込まれたマイクロプロセッサなど）を使用する実施形態では、処理回路の順序論理を使用してランダムアクセスメモリ（ＲＡＭ）または読み取り専用メモリ（ＲＯＭ）内に格納されているデータのテーブルに索引付けを行い、テーブルの内容を順次加算回路に送り（「基本数」オフセットを提供する）、その内容をＮ除算カウンタにロードする。このようにして、処理回路はリアルタイムでＮの値を完全に制御し、さらにＰＦＤ入力に供給される帰還信号を完全に制御する。これはさらに、チャージポンプに供給されるＵＰおよびＤＯＷＮ信号を制御し、それにより、ＶＣＯに供給される出力電流の大きさを制御する。
【００１６】
処理回路の実施形態において、非常に安定したクロック信号をマルチプレクサの入力に供給することが好ましい。さらに、ＵＰおよびＤＯＷＮ信号も同じマルチプレクサの入力に供給される。これらのクロック、ＵＰ、およびＤＯＷＮ信号は、マルチプレクサから直列の遅延素子チェーンに選択的に出力され、これを使用して、クロック信号またはＵＰまたはＤＯＷＮ信号の１つのいずれかのパルス幅を瞬時にサンプリングするか、または遅延チェーンを使用して複数のプロファイル期間にわたってＵＰまたはＤＯＷＮ信号の「ピーク」または最大パルス幅を測定することができる。処理回路の制御のもとで、遅延チェーンの出力を分析し、ＵＰおよびＤＯＷＮ信号の誤差プロファイルのその場所での理論的瞬間パルス幅または累積パルス幅の１つと比較する。
【００１７】
ＵＰおよびＤＯＷＮ信号について実際に測定されたパルス幅がプロファイル内の同じ間隔で公称またはターゲットパルス幅から逸脱しているような状況では、処理回路はこの逸脱を是正するのに必要な補正量を認識し、またこの補正を行うための正しい方向も認識する。それに応じてチャージポンプ電流を修正するか、またはそれとは別に、ＶＣＯの利得を修正することも可能である。これらのいずれかを修正し制御するには、直接、処理回路を制御するが、位相ロックループのチャージポンプ電流を制御するのが好ましい。他の方法として、処理回路でループフィルタ値を修正するか、または処理回路でＲＡＭ内のテーブル値を別の方法で選択するか、または（最終的に）基本数の値を（ＲＡＭ内であれば）選択的に修正することも可能である。
【００１８】
直列遅延チェーンを使用する方法は、本発明の重要な特長であり、このような遅延チェーンを使用することにより、ＵＰおよびＤＯＷＮ信号の実際のパルス幅を判別する非常に精度の高い測定デバイスを安価に実装できる。本発明の回路の論理のすべて（または少なくとも論理の大半）がＡＳＩＣに備えられているのが好ましいため、実際の遅延素子が実際の伝播遅延時間に比べてあまり正確でないことがかなりありえるが、これらの遅延素子は同じＡＳＩＣ上でこのような遅延素子同士を比較したときに非常に首尾一貫していることがありえる。
【００１９】
遅延素子は非常に正確であるのが好ましいが、本発明ではこれはＡＳＩＣを使用したときにはありえそうもないことを認識しているが、精度の高い遅延ライン回路を使用する際にかかるコストを考えた場合、比較的安価なＡＳＩＣまたはその他の類似の回路を使用するメリットはある。したがって、本発明では、非常に正確な水晶クロックの周期の間に状態を変える遅延ライン素子の数を測定することにより遅延ライン素子を定期的に較正する。マルチプレクサを使用することにより、クロック信号をＵＰおよびＤＯＷＮ信号と同じ遅延ライン素子に通すが、これにより最終的に、これらのＵＰおよびＤＯＷＮ信号のパルス幅の非常に正確な測定結果が得られる。
【００２０】
マルチプレクサは少なくともそのクロックの１周期の間クロック信号を出力するのが好ましく、この出力信号は直列の遅延ライン素子に送られる。このクロックの１周期の間に論理遷移を行う遅延素子の実際の数が判明したら、その情報を使用して、この遅延ライン回路（「遅延チェーン」ともいう）の単一遅延素子の１回の伝播遅延にかかる実際の時間を判別する。この伝播遅延時間が決定されたら、マルチプレクサは複数プロファイルの間にＵＰ信号の出力を開始し、そのＵＰ信号のパルス幅を遅延素子の数単位で測定する。これらの遅延素子ごとに実際の伝播時間遅延がわかるので、ナノ秒単位の実際のパルス幅はすぐに判明する。これを求めた後、マルチプレクサは複数のプロファイルについてＤＯＷＮ信号を遅延チェーンに出力する。ＤＯＷＮパルス幅で論理遷移を行う遅延ライン素子の数が判明し、これがすぐに時間単位に変換され、それによりＤＯＷＮ信号の実際のパルス幅がナノ秒単位で得られる。
【００２１】
上述のように、ＵＰおよびＤＯＷＮ信号の実際のパルス幅時間がわかったら、これらの物理的数量を公称（またはターゲット）プロファイルの理論的パルス幅と比較する。公称または標準的な類似のパルス幅と比較した実際のＵＰおよびＤＯＷＮパルス幅の逸脱は、処理回路で誤差情報として使用され、チャージポンプ電流への正しい補正を行える。本発明の特定の実装に対する設計アプローチにもよるが、直列遅延素子を使用して瞬間ＵＰおよびＤＯＷＮパルス幅のいずれかを検出するか、または特定のプロファイルに対し「ピーク」ＵＰおよびＤＯＷＮパルス幅を検出することができる。さらに、速度が非常に重要な場合には複数の遅延チェーンを使用することができるため、各信号（つまり、クロック、ＵＰ、ＤＯＷＮ）を別々の遅延チェーンに送ることができ、そのためマルチプレクサが不要になる。ＵＰおよびＤＯＷＮ遅延チェーンはクロックで直接較正されないため、精度はある程度犠牲になる可能性がある。
【００２２】
非処理回路の解決法を使用して本発明を実装する場合、論理状態機械を使用してＮ除算カウンタ値を制御し、さらに遅延チェーンからデータを受け付け、この遅延チェーンを使用して、たとえばチャージポンプ電流またはＶＣＯの利得のいずれかを制御することによりＰＬＬ制御の適切な補正を決定する。このいわゆる「オールエレクトロニクス解決法」では、遅延チェーンデータを、連続二進化符号数値を保持することができる３つの独立のレジスタに格納するのが好ましい。第１のレジスタではＵＰ信号データを保持し、第２のレジスタではＤＯＷＮ信号データを保持し、第３のレジスタでは外部クロックデータを保持する。第４のレジスタを使用し、論理状態機械で実行する現在のステップに応じて、ＵＰまたはＤＯＷＮパルスのいずれかの「ターゲット」または「標準」ピーク時間を保持するのが好ましい。論理状態機械の方法の詳細は、以下の好ましい実施形態の詳細な説明で述べる。
【００２３】
本発明を処理回路（マイクロプロセッサなど）で実装する場合、コンピュータプログラムを使用してクロックデータ、ＵＰパルス幅データ、およびＤＯＷＮパルス幅データを分析できるようにするのが好ましい。現在市販されている従来のマイクロプロセッサでは、標準的なマイクプロセッサは逐次実行であるため順次コンピュータプログラムを必要とするが、そうしたければ並列処理回路を使用することも可能である。以下の好ましい実施形態の詳細な説明の中で、コンピュータプログラム例を詳しく開示する。
【００２４】
本発明の他の利点は、当業者にとっては、本発明を実施するために考案された最良の方法の１つによる本発明の好ましい実施形態を説明し示している以下の説明と図面から明白であろう。承知のように、本発明は他の異なる実施形態も可能であり、その複数の明細は本発明から逸脱することなくさまざまな明白な態様を修正することができる。したがって、この図面と説明はその性質上説明を目的とするものとみなされ、制約するものとはみなされない。
【００２５】
明細書に含まれ、その一部をなしている添付図面は、本発明のいくつかの態様を説明するものであり、この説明および特許請求項とともに本発明の原理を説明するのに用いられる。
【発明を実施するための最良の形態】
【００２６】
本発明のこの好ましい実施形態をここで詳しく参照するが、その例は添付図面に示されており、複数の図面にわたって類似の参照番号は類似の要素を示すものとする。
【００２７】
図面を参照すると、図１には、従来技術で知られている、参照番号１０で一般的に示されている従来の位相ロックループ（ＰＬＬ）が掲載されている。２０の基準信号は、位相周波数検出器（ＰＦＤ）２２の入力に送られ、第２の「帰還」入力が４０のところにある。ＰＦＤ２２は２つの信号、ＵＰおよびＤＯＷＮをそれぞれ参照番号
２４および２６のところで出力するが、これらはチャージポンプ２８の入力に接続されている。
【００２８】
チャージポンプ電流は、電圧制御発振器（ＶＣＯ）３４に送られる３０のところにある出力であり、信号３０がループフィルタ３２によって調整される。ＶＣＯ３４の出力は、３０の入力電圧に比例する周波数である。ＶＣＯ３４の出力３６は、Ｎ除算回路３８に送られるが、この回路は「Ｎカウンタ」とも呼ばれ、累計Ｎ個の入力パルスを受信した後にパルスを１つ出力する。Ｎカウンタ３８の出力は、ＰＦＤ２２の入力に帰還信号４０として送られる。
【００２９】
Ｎカウンタ３８に対するＮの値が一定のままであれば、ＰＬＬ回路１０は標準位相ロックループとして動作する。しかし、本発明で使用する場合は、Ｎカウンタ３８内のＮに対する値は時間の経過とともに変化し、そのため図１に示されている３８のブロックには、Ｎ（ｔ）という記号が示されており、Ｎの値が時間の経過とともに変化することを示している。従来技術で知られているように、Ｎのこの変動はある種の処理回路で制御したり（マイクロプロセッサの制御などによる）、あるいは中央処理装置を備えていないハードウェア論理回路により制御することができる。
【００３０】
図２は、図１の位相ロックループ１０で使用されている信号のうちいくつかの波形を示している。図２では、基準信号（ＲＥＦ）２０、帰還信号（ＦＢ）４０、ＵＰ信号２４、およびＤＯＷＮ信号２６は、縦軸またはＹ軸対時間にそって（横軸またはＸ軸にそって）電圧信号として示されている。図２のグラフは、それぞれ、従来技術のＰＬＬ回路１０におけるＵＰおよびＤＯＷＮ信号２４および２６の生成を示している。
【００３１】
Ｘ軸にそう時間マーク５０から始まる、基準信号２０により６０で正の遷移が生じ、帰還信号４０により７０で類似の正の遷移が生じる。６０と７０でのこれらの遷移は両方とも実質的に同時に（つまり時間マーク５０で）生じるため、ＵＰまたはＤＯＷＮ信号２４および２６には論理遷移がない。Ｘ軸にそう時間マーク５１では、基準信号２０および帰還信号４０により負の論理遷移が論理０に戻る。
【００３２】
次の時間マーク５２で、帰還信号４０により７２で論理０から論理１への正の遷移が生じ、ちょうど基準信号２０により６３で論理１への次の遷移が生じる前に（つまり、時間マーク５３で）発生する。位相ロックループにおいて、位相周波数検出器２２では、６３の基準信号の正の遷移の前に到着したため帰還信号４０となる実効出力パルスの到着が早すぎたことから、ＶＣＯの実効は速すぎると結論しなければならない。したがって、ＰＦＤ２２は、図２のＤＯＷＮ信号グラフの９２と９３の論理遷移からわかるようにＤＯＷＮパルスを生成する（つまり、ＶＣＯを「低速にする」）。
【００３３】
基準信号と帰還信号により、時間マーク５４で実質的に同時に負の遷移が生じ、図２の例では、これらの信号の両方により、時間マーク５５で実質的に同時に正の論理遷移が生じる。したがって、時間マーク５５にはＵＰまたはＤＯＷＮ信号遷移がない。これはさらに時間マーク５６で、基準信号と帰還信号により負の論理遷移が実質的に同時に生じるときにも当てはまる。
【００３４】
図２の例では、基準信号２０により、６７で正の論理遷移が生じるが、帰還信号４０では、７８で、後になるまで次の正の論理遷移は生じない。基準信号の論理遷移６７は時間マーク５７で生じ、これは５８の次の時間マークよりも前であるため（帰還信号により７８で倫理遷移が生じるときのこと）、時間マーク５７でＰＦＤ２２によりＵＰパルスが生じる。これは図２に示されており、ＵＰ信号２４により、８７で論理１に遷移し、８８で論理０に負の遷移を行うまで論理１レベルに留まる。基準信号と帰還信号の両方により、時間マーク５９で、負の論理遷移が実質的に同時に生じる。
【実施例１】
【００３５】
図３を参照すると、図１に示されているのと似ている位相ロックループ回路１００はＰＦＤ１２２、チャージポンプ１２８、ループフィルタ１３２、ＶＣＯ１３４、およびＮカウンタ１３８で構成されている。ＰＦＤは１２４にＵＰ出力と、１２６にＤＯＷＮ出力を備える。チャージポンプ出力は１３０にあり、ＶＣＯ出力（および主回路周波数出力）は１３６に示されている。Ｎカウンタ１３８の出力は、１４０に示されており、これもまたＰＦＤ１２２への帰還信号を表す。ＰＦＤ１２２への基準入力は１２０に示されている。
【００３６】
非常に正確な外部水晶または発振器回路が１１０に備えられており、Ｍカウンタ１１４に送られる出力が１１２のところにある。Ｍカウンタ１１４の出力によりＰＦＤ１２２に基準信号１２０が送られる。回路例では、外部水晶／発振器１１０は周波数４８ＭＨｚを出力し、これは上述のように、反復性についても実際の期間についても非常に正確な周波数供給源となっている。たとえば、Ｍの値が１０に等しければ、Ｍカウンタ１１４の１２０での出力周波数は４．８ＭＨｚとなる。
【００３７】
実行中、ＰＬＬは、Ｎカウンタ１３８のＮの値がリアルタイムで変化したときに１３６で出力周波数を変化させる。このタイプの回路の動作については、本願出願人に譲渡された米国特許であり、ここで引用することで本願明細書に包含される米国特許第５４８８６２７号および第５６３１９２０号に詳しく説明されている。
【００３８】
本発明では、１１２のクロック信号、１２４のＵＰ信号、および１２６のＤＯＷＮ信号はすべて、マルチプレクサへの入力として供給されるが、これについて、図４を参照しながら詳細に説明する。さらに、コントローラ回路（以下で詳しく説明する）は１９２のところで出力信号を出し、これによりチャージポンプ電流を制御できる。コントローラは、チャージポンプ電流の代わりにＶＣＯ１３４の利得を容易に制御できることが理解されるが、チャージポンプ電流が本発明において制御プロセス変数として機能することが望ましく、それは、ＰＬＬ回路のＶＣＯ部分の滑らかな動作を不安定にすることなくチャージポンプ電流の変動を高速にすることができるからである。ＶＣＯの利得を制御しているが、チャージポンプ電流の制御は、本質的に１３６での出力周波数に対する同じ全体的な効果を持つと理解される。
【００３９】
Ｎカウンタ１３８の出力１４０は、アドレスカウンタ１５０へも送られる。アドレスカウンタ１５０は、アドレスバス１５２にロードされるポインタ型の情報を格納し、この情報はスペクトル拡散クロック発生器の望ましいプロファイル内の特定の位置または場所を表す。本発明の好ましい実施形態では、スペクトル拡散クロック発生器のプロファイルは、図８に示されているような外観を持ち、５０ＭＨｚ、＋０／−３．７５ＭＨｚのシミュレートプロファイルを表す。図８では、ターゲットプロファイルは４０２のところに示されており、プロファイルの１サイクルの持続時間が約３２マイクロ秒である期間が４０６のところに指定されている。この期間４０６は、出力信号１３６についてそれぞれ特定のターゲット周波数を持つ１２８個の異なる時間間隔を含む。これらの時間間隔のうち特定の１つで、ターゲット周波数は一定となる。しかし、プロファイル上の次の時間間隔に進むときになったら、Ｎカウンタ１３８にロードされるＮに対する新しい値を使用してＰＬＬ回路の制御のもとで周波数が上または下に変更される。プロファイル全体が達成されると、４０８の第２の示されている期間に同一のプロファイルにより図８に示されているようにパターンが繰り返される。
【００４０】
テーブル１５４は、図３でハードウェアブロックとして示されているが、このテーブルはＲＡＭ（ランダムアクセスメモリ）またはＲＯＭ（読み取り専用メモリ）内のメモリロケーションを表す。好ましい実施形態では、テーブル１５４は４ビットの数値、たとえば、０から５までの間の値を保持するのに十分なメモリロケーションを含み、これらの値はＮカウンタ１３８にロードされるＮに対する値の変動を表す。テーブル１５４からの出力データは、データバス１５６を通って加算回路１５８に送られる。加算器１５８の他のデータ入力は、「基本数」１６０から導かれる他のデータバス１６２であり、この基本数はシステム設計者の好みに応じてＲＡＭまたはＲＯＭのいずれかに格納された数値である。
【００４１】
たとえば、基本数に対する数値は２４に等しく取り、テーブル１５４に０〜５の範囲の数値を含めることができる。これらの数値は加算器１５８で足し合わされ、その出力は２４〜２９の範囲の数値となり、これはデータバス１６４によりＮカウンタ１３８に送られる。この例では、Ｎの実効値は２４〜２９の範囲にあり、図８に示されているように、プロファイルに必要な変動が得られる。Ｎカウンタ１３８の出力でＮに対する値に変化があると、チャージポンプ１２８が１２４でＵＰ信号または１２６でＤＯＷＮ信号のいずれかを受け取り、それによりＶＣＯ１３４で周波数出力を変化させることに注意する必要がある。
【００４２】
基本数１６０の値とテーブル１５４がＲＡＭ内に格納されている場合、システムコントローラは必要に応じて新しい値をテーブル１５４と基本数メモリロケーション１６０にロードできる。ただし、システムをセットアップした後、新しい値のロードは、素子パラメータのいくつかが素子の劣化またはある種の環境条件により通常範囲を遙かにはずれない限り必ずしも実行されない。そのような場合、コントローラは信号ライン１９４を介して新しい基本数１６０をロードし、これはデータバス１５６にそって出力されるテーブル値に加算される（加算器１５８により）Ｎに対する基本値を変える。さらに、テーブル値自体を変えることができるため（テーブル１５４がＲＡＭ内にあると仮定して）、信号ライン１９４を介してテーブル１５４に新しい値をロードすることにより（図４の）コントローラ１９０の制御のもとで容易に数値の変動を大きくすることもできる。
【００４３】
テーブル１５４がＲＯＭに格納されている場合、これは本発明の好ましい実施形態であるが、値は順次加算器１５８にロードされ、いったん基本数１６０に加算されると最終的にＮに対する値となる。この状況では、基本数１６０はさらにＲＯＭに格納できるが、それとは別に、ＲＡＭに格納するのも簡単で、（環境条件または素子値の劣化のため）Ｎに対する値の異なる範囲が必要な状況において基本数を変更することができる。テーブル１５４がＲＯＭに置かれているこの好ましい実施形態では、コントローラ１９０により信号ライン１９２を介してチャージポンプ電流を制御するのが好ましい。
【００４４】
アドレスカウンタ１５０はさらに、アドレスカウンタ１５０内に格納されているすべてのアドレスのうち特定のあらかじめ決められたアドレスをデコードしたときにアクティブになる出力を１７０のところに持つ。この信号１７０はさらにコントローラ１９０に送られ、アドレスバス１５２にそって特定のプロファイルロケーションがいつ出力されたかを示し、特定の単一アドレスのデコーダとして機能する。ＵＰまたはＤＯＷＮ信号のパルス幅の測定を実行するために、あるいはタイミング測定回路を較正するために、プロファイル内の特定の間隔に達したときなど特定のイベントをコントローラ１９０に通知するのにこの信号１７０を使用するのが好ましいが、これについては以下で詳述する。
【００４５】
図４を参照すると、図３の位相ロックループ回路１００は図４では「ＰＬＬブロック」１００となっている。図４では、水晶／発振器１１０は１１２のクロック信号をＰＬＬブロック１００に出力する。マルチプレクサ１８０は、クロック１１２、ＵＰ信号１２４、およびＤＯＷＮ信号１２６を含む、ＰＬＬブロック１００からの出力信号を受け取るように示されている。マルチプレクサ１８０はさらに、コントローラ１９０から「セレクト」信号５３０を受け取る。ＰＬＬブロック１００ではさらに１３６のところに出力信号があり、これはスペクトル拡散クロック信号となる主要可変周波数出力信号である。
【００４６】
マルチプレクサ１８０は、１８２で信号を出力するが、これは図４からわかるように、入力Ｉ１、Ｉ２、またはＩ３での入力信号の１つと同じ信号となる。これらの入力信号の１つをマルチプレクサの出力に接続するかどうかの決定について、図５〜７の回路の説明を参照しながら詳しく説明する。図４からわかるように、マルチプレクサ１８０からの出力信号１８２は遅延チェーン２００の一部である「チェーン入力」に送られるが、これについて、以下で図５〜７を参照しながらより詳しく説明する。
【００４７】
コントローラ１９０は、マイクロプロセッサまたは、マイクロコントローラやマイクロプロセッサユニットを内蔵するＡＳＩＣ（特定用途向け集積回路）などの中央処理装置を備えるその他の種類の集積回路で構成するのが好ましい。ただし、コントローラ１９０はさらに順次状態機械として本質的に機能するように十分な論理ゲートを備える固定ハードウェア論理回路も備えることができ、スペクトル拡散クロック発生器がプロファイルのさまざまな間隔を通るときにテーブルから値を選択する十分な情報処理機能により動作することができ、さらに基本数をテーブルによって生成された数値に加算し、結果をＮカウンタ１３８などのカウンタに送信するようにできる。この非プロセッサ制御論理回路のことを本発明ではさらに、「オールエレクトロニクス解決法」と呼ぶが、マイクロプロセッサ回路も確かにエレクトロニクス（電子回路）を備える。図４を参照すると、コントローラ１９０はいくつかの入力信号を受信し、その入力信号の分析結果に基づいていくつかの機能を実行するが、これはその内部回路がマイクロプロセッサベースであるか「オールエレクトロニクス解決法」かには関係しない。
【００４８】
遅延チェーン２００は、１８４で１つまたは複数の「遅延チェーン出力」信号を出力し、これがコントローラ１９０への入力となる。遅延チェーンの出力１８４は一般に、多数のフリップフロップ出力から発生する複数の並列信号を含み、遅延チェーン２００の遅延素子ごとに１つのフリップフロップが用意されている。これについて、図５を参照して詳しく説明する。コントローラ１９０は、どの信号が出力信号５３０を使ってマルチプレクサ１８０から出力されるかを判別し、「リセット」出力信号１８６と「モード」信号１８８を使用して遅延チェーン２００を制御し、さらにＰＬＬブロック１００内のいくつかのパラメータを制御する。
【００４９】
マルチプレクサ１８０へのセレクト信号５３０は、オールエレクトロニクス解決法回路内のコントローラ１９０からのハードウェア出力を含み、状態機械によりこの信号の値が決定される。もちろん、その値から、３つの入力、Ｉ１、Ｉ２、またはＩ３のうちどれがマルチプレクサ１８０の出力に送られるかを決定する。コントローラ１９０が中央処理装置（マイクロプロセッサなど）を備えている場合、このセレクト信号５３０はマイクロプロセッサとマルチプレクサ１８０のセレクト入力との間の実際のハードウェア入力ラインでないのが好ましいが、その代わりに、マルチプレクサ１８０がある種のデータラインまたはデータバスを介して処理回路（つまり、コントローラ１９０）によりロードできるアドレス指定可能なレジスタを備えるのが好ましい。
【００５０】
信号１９２および１９４は、コントローラ１９０からの出力であり、上述のように、信号１９２は直接、チャージポンプ１２８の電流を変化させることができるが、もちろん、チャージポンプ１２８が入力信号に基づくプログラム可能なチャージ電流を持つと仮定する。別に、コントローラ１９０で使用できる信号１９４を使用して異なる値をテーブル１５４および基本数１６０にロードする方法もある。もちろん、このシナリオでは、テーブル１５４および基本数１６０は、ＲＡＭやレジスタなどの変更可能なメモリ素子を含むと仮定している。本発明の好ましい実施形態では、テーブル１５４はＲＯＭを備え、コントローラ１９０は直接、信号１９２を介してインタフェースし、必要なときにチャージポンプ１２８の電流を変化させる。
【００５１】
図５を参照すると、「単純な」遅延チェーン２００が複数の直列遅延素子２１１〜２１６を備えているものとして描かれており、それぞれＤフリップフロップ２２１〜２２６を備える。各フリップフロップには、出力信号、つまり信号２３１〜２３６があり、遅延素子、フリップフロップ、フリップフロップの出力信号の組み合わせが遅延段を形成するが、これは参照番号２０１〜２０６で示されている。図５からわかるように、遅延チェーン２００への入力はマルチプレクサ１８０の出力１８２であるが、図５では、ＵＰ信号として示されている。実際、このＵＰ信号はマルチプレクサ１８０がそのＩ２の入力を出力に切り替えたときにのみ出力１８２上に現れる。
【００５２】
図５に示されているように、本発明で使用する図に示されている６つの遅延段２０１〜２０６の他に遅延段を増やせる。図９は、それぞれ、ＵＰおよびＤＯＷＮ信号１２４および１２６のパルス幅タイミングの標準的「誤差プロファイル」のグラフを示しており、それらの信号の最大パルス幅は４０ナノ秒を少し超える程度であることがわかる。図９は、さらに、標準的なパルス幅が素子パラメータの変動により変化する場合を示しており、したがって、「標準的な」（または公称）パルス幅値に対し必要な以上に多い遅延素子を用意することが重要である。本発明の好ましい実施形態では、遅延素子２１１〜２１６は、遅延素子１つにつき約１ナノ秒の伝播遅延となるように選択されており、そのため、「標準的な」最大パルス幅については、設計者はこれらの遅延段の約４３または４４個を含めるだけでよい。しかし実際には、少なくとも３倍の誤差係数が含まれるため、１３０を超える遅延段が必要になり、控えめに設計するために、小さな誤差係数を加えて、遅延段の合計を約１５０にする場合がある。そしてこれは、「標準的な」パルス幅が約４０ナノ秒のときに控えめな設計である。
【００５３】
そのため、遅延チェーン２００を実装するのに非常に多くの論理ゲートが必要であることがわかり、また図６および７を参照して以下に示しているように複雑さが増すと１段あたりのこのゲート数が増える。
【００５４】
図５に戻ると、ＵＰ信号が遅延素子２１１〜２１６のそれぞれを伝播するときに、対応するフリップフロップ２２１〜２２６でＱ出力が順番に論理１に設定され、出力２３１からはじめて、出力２３６以降に伝播する。１８２のＵＰ信号のパルス幅が大きいほど、フリップフロップＱ出力を論理１に設定する遅延段２０１〜２０６（など）が増える。これらのフリップフロップ２２１〜２２６（など）はそれぞれ、コントローラ１９０から「リセット」出力信号１８６に接続されている「クリア」入力と、さらにシステムの反転クロック信号に接続されているクロック入力も含む。
【００５５】
遅延チェーン２００はＵＰまたはＤＯＷＮ信号のパルス幅を検出するための比較的単純な検出回路を表し、遅延チェーン回路２００に送られた一番最近のそのようなＵＰまたはＤＯＷＮ信号のデータのみを格納する。プロファイルの複数の連続する間隔にわたってＵＰ信号のパルス幅を検出し、それらのパルス幅の最大または「ピーク」の値を求めるのが望ましい。図６に示されている回路では、フリップフロップ２８１のＱ出力が２９１で論理１に遷移した後に「Ｄ」入力を論理１に保持するＯＲゲート２７１を加えることにより、この機能を備えることができる。各遅延段２５１、２５２などは、２６１などの遅延素子および関連するフリップフロップ２８１およびＯＲゲート２７１の両方を備えているので、遅延段のそれぞれが図６の遅延チェーン全体２５０についてフリップフロップのＱ出力の論理１への遷移を「記憶」することができる。たとえば、１８２のＵＰ信号のパルス幅の持続時間が４０ナノ秒の場合、約４０の遅延段は論理１に遷移することになる。たとえば、次のＵＰ信号パルス幅の持続時間が４１ナノ秒であれば、約４１の遅延段は論理１に設定され、追加遅延段によりすでに発生していた遷移が論理１になる。たとえば、次のＵＰ信号パルス幅の持続時間が３５ナノ秒のみであれば、「ピーク」メモリ回路がなかった場合３５の遅延段のみが論理１に設定されている。しかし、ＯＲゲートが図６に含まれているため、これら３５個の遅延素子はすでに論理１に設定されており、４１の遅延素子を論理１に設定させる早期のパルス幅の長い持続時間が維持される。その結果、持続時間が最も長いＵＰ信号パルス幅がこの遅延チェーン回路２５０に記憶される。
【００５６】
好ましい実施形態ではすべての遅延段の遅延素子を作成するためにＡＳＩＣを使用しているため、各遅延素子の実際の伝播遅延は正確に１ナノ秒にはならず、１ナノ秒の目標から一定パーセントずれる持続時間となる可能性がある。ＡＳＩＣ論理素子のこのようなささいな欠点を鑑みて、遅延チェーンを較正するのが好ましく、それには、図７に示されている回路を使用する。
【００５７】
図７では、マルチプレクサ１８０の出力１８２は遅延素子３６０に送られ、必ずしもあまり正確ではないが少なくとも比較的反復可能な数ナノ秒の遅延を生じる。この遅延段３６０は、回路３００に含めるのが望ましくないと判明した場合になくすことができる。ただし、ＵＰおよびＤＯＷＮ信号の最大または「ピーク」パルス幅を測定しようとする場合、遅延タイミングを約１０〜２０ナノ秒にすることによりこの遅延素子３６０を含めると非常に都合がよい場合があり、相当する数の遅延段を節約できる（たとえば、図７の遅延素子３０１と３０２）。遅延素子３６０の伝播時間は測定する最短パルスよりも決して長くはならないことに注意されたい。
【００５８】
クロック信号が遅延段３６０に送られると、その段の伝播遅延時間の経過後、クロック信号は遅延チェーン３００に送られるが、その際に第１の遅延素子３１１から始まり、次の遅延素子３１２へ進んで行く。ＯＲゲート３２１を使用することにより、「クリア」または「リセット」信号１８６がコントローラ１９０から送られるまで関連するＤフリップフロップ３３１のＱ出力３５１が論理１にラッチされる。それとは別に、「較正」信号を送ってさらに遅延チェーン３００内のすべてのフリップフロップをリセットまたはクリアすることができる。５３２の反転形式のこの較正信号は、ＡＮＤゲート３４１に送られるが、これはＯＲゲート３２１を含むラッチ回路と直列につながっている。さらに、排他ＯＲゲート３６４も、反転較正信号（ＮＯＴ較正信号ともいう）５３２を受信するために含まれている。
【００５９】
ＮＯＴ較正信号５３２は、遅延チェーン３００がＵＰまたはＤＯＷＮ信号の最大（またはピーク）パルス幅を見つけようとしたとき、つまりこのデータを「累積」している間に論理１に設定される。ＮＯＴ較正信号５３２は、実際の較正動作時に論理０に設定されるが、つまり、遅延チェーン３００はデータ累積しておらず、クロック信号が遅延段３６０に送られるということである。このＮＯＴ較正信号５３２は、図４のコントローラ１９０から出力として示されている「モード」信号１８８に関して論理的に反転された信号である。
【００６０】
排他ＯＲゲート３６４は、フリップフロップ３３１など遅延チェーン３００のＤフリップフロップの動作に関してトリガとなるクロック（またはその他のパルス信号）のエッジを切り替える。前述の遅延チェーン回路２００および２５０の場合のように、各Ｄフリップフロップでは、リセット信号１８６に接続されているクリア入力を備え、さらに反転されたクロック入力も備える。ゲートのすべておよび遅延段３０１を使用することにより、遅延チェーン３００はピーク検出回路として、または「単純な」検出回路として動作させることができる（それにより、前のサイクルから次のサイクルへ移るときにパルス幅データを累積しない）。さらに、各遅延段にはいくつかの論理ゲートが必要であることが明白であり、少なくとも１５０個の段の遅延チェーンを備えるのに１０００個を超える論理ゲートが必要になる。その事実に鑑みて、以下で説明する、ＵＰまたはＤＯＷＮパルス幅内の誤差を測定するためにプロファイルの異なる間隔を使用することが望ましい場合がある。
【００６１】
図８を参照すると、シミュレートされたターゲットプロファイルのグラフ表現４００と実際のプロファイルが示されている。シミュレートされた（または所定の）ターゲットプロファイルは、曲線４０２で示されているが、実際のスペクトル拡散プロファイルはかなりギザギザした曲線４０４により示されている。上述のように、図に示されているプロファイルは４８．２５ＭＨｚ〜５０ＭＨｚの範囲で動作するスペクトル拡散クロック発生器の好ましい実施形態であり、電磁妨害放射に関して非常に低いノイズシグネチャを示す。
【００６２】
図８に示されている第１の期間は一般に、参照番号４０６で指示されており、これは最低周波数（つまり、４８．２５ＭＨｚあたり）から始まり、約５０．００ＭＨｚの最大ピークまで移動し、その後すぐにこの期間４０６の終わりに約４８．２５ＭＨｚの最小の谷に戻る。その後同一のパターンが、一般に参照番号４０８で示されるように次の期間の間繰り返され、この周波数範囲でシステムクロックの動作が望ましい限りこのパターンが続く。各プロファイル期間（たとえば、期間４０６）では、約３２マイクロ秒が必要であり、各プロファイル期間で１２８個の異なる間隔を使用し、その間にＮカウンタ１３８内のＮの値がそれぞれの間隔の間一定に保持される。間隔の終わりに達すると、Ｎの値が変更されるか、またはそれとは別に、チャージポンプ電流振幅をコントローラ１９０からの信号１９２により変更することもできる。しかし、好ましい実施形態では、アドレスカウンタ１５０はテーブル１５４内の異なるテーブル値を検索し、Ｎカウンタ１３８内にＮの新しい値を入れる。
【００６３】
等しい持続時間の間隔が１２８個あるという事実を鑑みると、各間隔の持続時間は約２５０ナノ秒である。クロック期間は５０ＭＨｚで約２０ナノ秒であるため、各間隔は約１２．５クロック・サイクルの間続く。したがって、単一の間隔で発生できる１２〜１３個のＵＰまたはＤＯＷＮパルスがありえることがわかる。位相ロックループ回路がＶＣＯ１３４の周波数出力をシフトしようとしたときに最大のパルス幅および最大数のＵＰまたはＤＯＷＮパルスが間隔の始めに発生することが予想される。
【００６４】
図９を参照すると、グラフ４１０はＰＦＤ１２２により生成されるＵＰまたはＤＯＷＮパルスのパルス幅に対し標準値および±３０％の許容差値を示す。図９からわかるように、「標準」グラフ４１２が示すＵＰまたはＤＯＷＮ信号のパルス幅に対する最大値または「ピーク」値は図８のシミュレートしたプロファイルターゲット曲線４０２の「ピーク」最大または最小周波数値に非常に近い（つまり、その直後にある）。これは周波数が高くなり急に低くなり始めると（つまり、曲線４０２の勾配に著しい変化がある場合）、ＵＰまたはＤＯＷＮパルス幅の振幅が劇的に変化することを意味しており、これはグラフ４１０の６３または６４あたりの「誤差プロファイル」間隔で発生する。周波数が高くなっていて、ターゲットプロファイルに従って急に低下し始めるため（つまり、実際のスペクトル拡散プロファイル曲線４０４は所定のターゲットプロファイル４０２をエミュレートしようとしている）、ＰＤＦ回路１２２は１２６のＤＯＷＮパルスをチャージポンプ１２８に出力し始める。ＤＯＷＮパルスの最大持続時間は、約４２または４３ナノ秒である。これは、図８のシミュレートされているプロファイル曲線４０２の期間の約半分ほどのところで発生する。
【００６５】
ターゲット曲線４０２で最小の「谷」が発生する場合、周波数は低くなってきていて、いきなりかなり急激に高くなり始める。これが発生した場合、ＰＦＤ回路１２２は１２４のＵＰパルスのチャージポンプ１２８への出力を開始する。これは、図９で、おおよそ間隔１２７または１２８のところに示されており、ＵＰパルス幅は約４０ナノ秒である（これは、グラフ４１０にｅ４０ナノ秒として示されている）。
【００６６】
グラフ４１０で、曲線４１４は、実効ＰＬＬパラメータ利得が標準よりも約３０％低いときにプロファイルを横切るさまざまな間隔のパルス幅タイミングを表す。曲線４１６は、実効ＰＬＬパラメータ利得が標準よりも約３０％高い値まで増えたときのＵＰおよびＤＯＷＮパルス幅のプロットである。正の「ピーク」は間隔６３または６４のあたりの最大パルス幅で発生するが、そこで、誤差の差の大きさはそれぞれ標準曲線４１２と±３０％許容差曲線４１６および４１４との間でかなり大きい。グラフ４１０では、標準曲線４１２とｅ３０％曲線４１４との間の誤差は「Ｅ１」と示される。標準曲線４１２と±３０％曲線４１６との間の誤差の差は「Ｅ２」と示される。
【００６７】
図７に示されている遅延チェーンを使用して「ピーク」パルス幅を検出するのは比較的単純であり、ＵＰまたはＤＯＷＮ信号の最大パルス幅を格納するだけでなく、システムクロックで較正し、実際の持続時間を（リアルタイムで）それらのパルス幅のそれぞれについて測定することができる。したがって、ＤＯＷＮ信号の測定された（実際の）最大パルス幅を約４２または４３ナノ秒の望ましい標準値と比較できる。
【００６８】
Ｅ１またはＥ２のいずれかの誤差の偏差の大きさが大きいほど、チャージポンプ電流またはＮカウンタ１３８のＮに対する値に行う必要のある補正も大きい。上述のように、チャージポンプ電流の大きさを、システムコントローラ１９０から供給される信号１９２により制御するのが好ましい。処理回路または、状態機械（図１０を参照）を実現する「オールエレクトロニクス解決法」回路のいずれかで、チャージポンプ電流を自動的に変更し、適切な方向の誤差を縮小し、適切な大きさでＰＬＬ回路の電子回路類の素子偏差を補正することができる。
【００６９】
標準値で動作誤差を簡単に測定し補正できるように標準的な誤差プロファイル曲線と許容差曲線との間の比較的大きな誤差をもたらすプロファイル内の間隔を選択することが重要である。（１２８の）間隔６３または６４のあたりの「ピーク」値を使用することができ、また検出も比較的簡単であるが、ＵＰおよびＤＯＷＮ信号に対するこの「ピーク」パルス幅値の測定では、上述のように、遅延段用に多数のゲートを備える非常に長い遅延チェーンを必要とする。
【００７０】
ＵＰおよびＤＯＷＮ信号の最大（累積）パルス幅を測定するのに長い遅延チェーンが必要であることを鑑みて、ＵＰおよびＤＯＷＮパルスの持続時間が短いグラフ４１０上の誤差曲線の一部を選択すると都合がよいが、それでも、このような場所がグラフ４１０にあると仮定して標準曲線と許容差曲線との間に十分な誤差の差が与えられる。（１２８の）間隔１２５のあたりの標準曲線と許容差曲線との間に著しい誤差の偏差があることが判明しており、これらの誤差は図８では「Ｅ３」および「Ｅ４」で示され、３２マイクロ秒時間マークあたりの減少する周波数から増加する周波数へのスペクトル拡散プロファイル変化の直前に示されている（つまり、ターゲットプロファイル曲線の勾配の著しい変化として生じる）。「ピーク」（または最大）パルス幅はこれらの誤差Ｅ３およびＥ４を見つける際の基準としては使用できないが、標準パルス幅時間はプロファイルのこの間隔で１０ナノ秒未満なので、かなり短い遅延チェーンを使用することが可能である。グラフ４１０からわかるように、ｅ３０％曲線４１４は＋１０ナノ秒程度の値を示しているが、ｅ３０％曲線４１４は−１８ナノ秒程度の値を示す（もちろん、時間は絶対値であり、グラフのこれらのプラスおよびマイナス符号は単にＤＯＷＮがプラス、ＵＰがマイナスとした相対的タイミング値に過ぎないことに注意されたい）。
【００７１】
サンプリング回路を瞬間モードでのみ使用し、１２５の間隔（この例ではそれ）が常に、ＵＰまたはＤＯＷＮ信号の測定値の選択に使用される場合、実質的誤差信号はＰＬＬパラメータ利得の変動を自動的に補正する際に使用できることがわかる。この状況では、図５の遅延チェーン２００を使用することもできる。それとは別に、ＯＲゲート３２１をＤフリップフロップ３３１の入力に含めるのは望ましくないが、図７の遅延チェーン３００を使用して、パルス幅持続時間に対する「ピーク」測定回路の代わりに瞬間測定回路にこれを入れることができる。
【００７２】
図１０を参照すると、コントローラの「オールエレクトロニクス解決法」実施形態は一般に、参照番号５００で指定される。電流プロファイルの位置（つまり、図８のプロファイル内の間隔）を示す信号が、カウンタイネーブル回路５０４への５０２の入力として供給される。論理状態機械５２０は、カウンタイネーブル回路５０４を制御し、システムがＰＬＬ回路の利得を制御しようとするのと同時にＵＰおよびＤＯＷＮ信号のパルス幅を測定しようとするのは望ましくないため、開始時期をカウンタに通知することが重要である。
【００７３】
カウンタイネーブル回路５０４の出力は、デコーダ回路５０６に送られ、次に、５３０のマルチプレクサに出力を送る。この信号５３０を使用して、出力に接続されるマルチプレクサの入力を選択する。さらに、デコーダ５０６は、５１１の「Ｒ１」、５１２の「Ｒ２」、および５１３の「Ｒ３」レジスタを有効にする、５０８にグループとして示されている、３つの独立したイネーブルラインを出力する。
【００７４】
またモード制御信号５３２がデコーダ５０６から出力され、図７のこの信号を使用して、遅延チェーン３００を較正するか、または累積モードで測定を行って、ＵＰまたはＤＯＷＮ信号のいずれかの最大または「ピーク」パルス幅を見つける。このモード制御信号５３２は、図４のモード信号１８８に似ている。さらに、プロファイル位置信号５０２は、図４のプロファイル位置信号１７０に似ている。
【００７５】
遅延チェーン３００からのデータは信号５１０としてレジスタＲ１、Ｒ２、およびＲ３に送られる。この遅延チェーンデータ５１０は、かなり長いデジタル（またはバイナリ）信号の形態であり、ＵＰパルス、ＤＯＷＮパルス、またはクロック期間のいずれかに論理遷移を行った遅延素子３０１、３０２などがいくつあるかを示す。しかるべきときに、遅延チェーンデータを５１１のレジスタＲ１に供給し、これが図３のＵＰ信号１２４となる。ＵＰパルスを測定するのが適切である場合、マルチプレクサ１８０は出力に送るＵＰパルス入力（図４ではＩ１）を選択し、その出力信号１８２が遅延チェーン３００に入力される。遅延チェーンからの出力データはレジスタ５１１〜５１３に送られるが、それと同時に、デコーダ５０６により、５０８の適切なラインが有効になり、レジスタＲ１がこの遅延チェーンデータを受信できるようになる。他の２つのレジスタＲ２とＲ３は、この時点ではデータを累積しない（有効になっていないため）。
【００７６】
ＤＯＷＮパルスを測定するのが適切な場合、マルチプレクサ１８０は１２６のＤＯＷＮ信号を受信するＩ３入力を選択し、図４の信号１８２でそれを出力する。これは、（遅延ゲート３６０で）遅延チェーン３００に送られ、遅延チェーンデータ５１０はＤＯＷＮ信号１２６のパルスの持続時間の間論理遷移を行う遅延チェーン３００の遅延素子３０１、３０２などの数に関するデジタル（またばバイナリ）データである。それと同時に、デコーダ回路５０６によりＲ２レジスタが有効になりイネーブルライン５０８を介してこのデータを受け付けることができる。
【００７７】
遅延チェーンからクロック情報を受け入れるのが適切な場合、マルチプレクサ１８０は１８２の出力に送る入力Ｉ１に入力信号を供給し、この出力は図７の第１の遅延ゲート３６０の遅延チェーン３００の入力に供給される。その後、５１０の遅延チェーンデータがレジスタＲ３に送られ、それと同時に、デコーダ回路５０６により５０８のイネーブルラインを介してレジスタＲ３が有効になる。
【００７８】
レジスタＲ１、Ｒ２、およびＲ３にロードされるデジタルまたはバイナリデータの形式を表１として以下に示す。
表１
11111111111111l111111111111100000000000000000000001111111=UP=R1
111111111111111111111111100000000000000000000000001111111=DOWN=R2
111110000011111000001111100000111110000011111000001111100+CLK=R3
Ｒ４は、ＵＰおよび／またはＤＯＷＮの基準クロックのターゲット時間を許容差とともに含む。
注記：
Ｒ１内の連続するバイナリ値１の第１のグループは、遅延段のＵＰの「ピーク」長さを表す。
Ｒ２内の連続するバイナリ値１の第１のグループは、遅延段のＤＯＷＮの「ピーク」長さを表す。
【００７９】
第４のレジスタ「Ｒ４」は図１０の５１４に示されている。このレジスタには、ＵＰおよびＤＯＷＮ信号の「ターゲット」（または標準）最大（または「ピーク」）パルス幅時間が含まれ、また予想される許容差も含まれる。この情報は、（１）プラス、マイナスの偏差または許容差を含む中心ターゲット時間または（２）許容差上限および許容差下限の２種類の形態をとることができる。好ましい実施形態では、プラス、マイナス偏差を含む中心ターゲット時間が好ましい。
【００８０】
適切な時期（図１１〜１４の流れ図に関して説明している）に、レジスタ５１１〜５１４に含まれるデータは実質的に同時に、論理状態機械５２０に転送される。論理状態機械５２０がこのデータを分析した後、５３４の利得制御信号を使用してＰＬＬ利得を調整し、論理状態機械５２０から出力することができる。この利得制御信号を使用して、チャージポンプ電流またはＶＣＯ利得のいずれかを調整できるが、チャージポンプ電流を調整するのに使用すると好ましく、これはコントローラ１９０から出力される図３の信号１９２に似た信号となる。図１０のオールエレクトロニクス解決法の回路５００は、いろいろな面で、図４のコントローラ１９０に非常によく似ている。主な違いは、オールエレクトロニクス解決法では必ずしもマイクロプロセッサなどの順次処理装置を必要としないが、コントローラ１９０はここで開示しているように一般に、システムの主要情報処理機能を実現するマイクロプロセッサタイプの回路を備えることが期待される。
【００８１】
中央処理装置を備える本発明の実施形態について汎用コンピュータプログラム例を以下に示す。このコンピュータプログラムによって実行されるステップは、図１１〜１４の流れ図で示されているステップに非常によく対応しているが、この一連の流れ図は、論理状態機械を使用するオールエレクトロニクス解決法を特に対象としている。汎用コンピュータプログラムを表２として以下に示す。
表２
行  プログラムのステートメント  コメントフィールド
1  CLK_COUNT=0                横断したクロック期間の数
2  CLK_PERIOD=0              最後のクリック立ち上がりからの現在の
通算遅延数
3  UP_CLK=0                  ＵＰ遅延が満たされるまで横断したクロック
立ち上がりの数
4  UP_REMAINDER=0            最後のクリック立ち上がりからのＵＰ
に対する遅延数
5  UP_CLK_PERIOD              ＵＰが発生した隣接クロックエッジ間
の遅延数
6  DOWN_CLK=0                ＤＯＷＮ遅延が満たされるまで横断した
クロック立ち上がりの数
7  DOWN_REMAINDER=0          最後のクリック立ち上がりからの
ＤＯＷＮに対する遅延数
8  DOWN_CLK_PERIOD=0          ＤＯＷＮが発生した隣接クロック
エッジ間の遅延数
9  LAST_CLK=1                  前のクロックのステータス
10  (LAST_CLK=0かつCLK=1かつUP_CLK_PERIOD<>0かつDOWN_CLK_PERIOD<>0)ならば状態機械を「停止」し、「計算実行」へ進む
11  (UP=OかつUP_CLK=0かつUP_REMAINDER=0)ならば UP_CLK=CLK_COUNTかつUP_REMAINDER=CLK_PERIOD
12  (DOWN=0かつDOWN_CLK=0かつDOWN_REMAINDER=0)ならば DOWN_CLK=CLK_COUNTかつDOWN_REMAINDER=CLK_PERIOD
13A  ((UP_CLK<>0またはUP_REMAINDER<>0)かつLAST_CLK=0かつCLK=1)ならばUP_CLK_PERIOD=CLK_PERIOD
13  ((DOWN_CLK<>0またはDOWN_REMAINDER<>0)かつLAST_CLK=0かつCLK=1)ならばDOWN_CLK_PERIOD=CLK_PERIOD
14  (LAST_CLK=0かつCLK=1)ならば++CLK_COUNTかつCLK_PERIOD=0、そうでなければ++CLK_PERIOD
15  左へ１だけシフトする
20  初期化                    指定：UP_CLK、UP_REMAINDER、UP_CLK_PERIOD
21                            指定：TARGET_CLK、TARGET_FRACTION
22  UP_CLK=3                  値の例
23  UP_REMAINDER=3            値の例
24  UP_CLK_PERIOD=20          値の例
25  TARGET_CLK=3              値の例
26  TARGET_REMAINDER=TARGET_FRACTION*UP_CLK_PERIOD
27  丸め(TARGET_REMAINDER)=15
30A  計算実行                ターゲット取得へ
30  まずTARGET_CLKおよびUP_CLKが異なるかチェックする。そうであれば、電流またはプロファイルを調整する。
31  まずTARGET_CLKおよびDOWN_CLKが異なるかチェックする。そうであれば、電流またはプロファイルを調整する。
32  同じであれば、UP_REMAINDER>TARGET_REMAINDERかチェックする。
33  同じであれば、DOWN_REMAINDER>TARGET_REMAINDERかチェックする。
【００８２】
上記のコンピュータプログラムに関して、第３行のクロック立ち上がりの数をクロック期間について計算することに注意されたい。第６行で計算する「クロック立ち上がり」の数についても同じことがいえる。第２行で計算される「遅延」の数は遷移を行った遅延段の数を指していることにも注意されたい。第４行、第５行、第７行、および第８行で参照している「遅延」の数についても同じことがいえる。第９行に関して、「前のクロック」のステータスは最後のゲート遅延間隔の時点のステータスを指していることに注意されたい。
【００８３】
図１０に示されているような論理状態機械の実施形態に関して、図１１では、論理状態機械５２０で実行する初期ステップの論理の流れを示している。ステップ６００の初期化手順から始まる論理の流れは６０２の電源ＯＮ状態で始まり、次に、位相ロックループがステップ６０４の初期動作周波数でロックするのに必要な短い待ち時間がある。この待ち合わせステップ６０４は、（１）状態機械がかなり長い期間待ち、その後ＰＬＬがロックされていることを保証する、または（２）ハードウェア出力信号が特定のＰＬＬ回路から利用できる場合に、ロックされた状態が存在することをその信号が示すという２種類の形態をとることができる。
【００８４】
ステップ６０６で、ＲＡＭ内のある領域を適切な値により初期化する。初期化の後、ステップ６０８でプロファイルの特定の交差数をカウントするが、これはたとえば、図９で、おおよそ間隔６４、１２８、１９２、および２５６で発生する。ステップ６１０で、カウントをデコードする（本質的には、デコーダ回路５０６で行う）。その後、ステップ６１２では順次、レジスタＲ１、Ｒ２、およびＲ３（つまり、レジスタ５１１〜５１３）を指し、これが行われている間、モード制御信号５３２を使用してモードを設定する。もちろん、このモードでは、データをレジスタＲ１、Ｒ２、およびＲ３に累積できる。
【００８５】
ステップ６１４で、論理状態機械は所定の数のプロファイルが発生するのを待ち、その間ステップ６１６でレジスタＲ１、Ｒ２、およびＲ３にデータが埋められる。それが実行された後、ステップ６１８で、論理の流れが図１２の文字「Ｂ」へ向かう。この手順はスプレッド拡散クロック発生器内のＰＬＬの動作中繰り返し続き、これらの「初期化」ステップのいくつかがステップ６０８から始まり、図１４の文字「Ｄ」から戻る、入ってくる論理の流れにより示されているように、繰り返されることに注意されたい。図１１のこれらのステップの機能は本質的に、上で述べたコンピュータプログラムの最初の９つのステップに対応している。
【００８６】
図１２を参照すると、「Ｂ」から始まる論理の流れは６２０の「ループ」インジケータに向かい、そこで、論理の流れは決定ステップ６２２に向かい、変数ＬＡＳＴ＿ＣＬＫが０に等しいか、変数ＣＬＫが１に等しいか、変数ＵＰ＿ＣＬＫ＿ＰＥＲＩＯＤが０に等しくないか、変数ＤＯＷＮ＿ＣＬＫ＿ＰＥＲＩＯＤが０に等しくないかを判別する。決定ステップ６２２での答えが「はい」であれば（上の条件すべてについて）、ステップ６２４は論理状態機械を停止し、ステップ６２６で計算が実行される。ステップ６２６で、変数ＴＡＲＧＥＴ＿ＦＲＡＣＴＩＯＮに変数ＵＰ＿ＣＬＫ＿ＰＥＲＩＯＤが掛けられ、その結果がＴＡＲＧＥＴ＿ＲＥＭＡＩＮＤＥＲという名前の変数に入れられる。ステップ６２６でこの計算が実行された後、一連の論理決定がくだされ、チャージポンプ電流が増減する。これらのステップについて以下で詳しく説明する。
【００８７】
決定ステップ６２２に戻り、結果が「いいえ」だった場合、決定ステップ６４０で、変数ＵＰが０に等しいか、変数ＵＰ＿ＣＬＫが０に等しいか、そして変数ＵＰ＿ＲＥＭＡＩＮＤＥＲが０に等しいかを判別する。答えが「はい」であれば（上の条件すべてについて）、ステップ６４２で、変数ＣＬＫ＿ＣＯＵＮＴの値が変数ＵＰ＿ＣＬＫにロードされ、変数ＣＬＫ＿ＰＥＲＩＯＤの値が変数ＵＰ＿ＲＥＭＡＩＮＤＥＲにロードされる。
【００８８】
次に論理の流れはステップ６４２および、決定ステップ６４０の「いいえ」の結果から決定ステップ６４４へ向かう。決定ステップ６４４で、ＤＯＷＮ信号が０に等しいか、変数ＤＯＷＮ＿ＣＬＫが０に等しいか、そして変数ＤＯＷＮ＿ＲＥＭＡＩＮＤＥＲも０に等しいかが判別される。上の条件すべてについて答えが「はい」であれば、ステップ６４６で、変数ＣＬＫ＿ＣＯＵＮＴの内容が変数ＤＯＷＮ＿ＣＬＫにロードされ、変数ＣＬＫ＿ＰＥＲＩＯＤの値が変数ＤＯＷＮ＿ＲＥＭＡＩＮＤＥＲにロードされる。これが完了すると、論理の流れはステップ６４６および、決定ステップ６４４の「いいえ」の結果から文字「Ａ」に向かう。
【００８９】
決定ステップ６２２は本質的に上記のコンピュータプログラムの第１０行と同じであり、決定ステップ６４０は本質的にコンピュータプログラムの第１１行と同じであり、決定ステップ６４４は本質的にコンピュータプログラム第１２行と同じであることに注意されたい。
【００９０】
図１３で論理の流れは文字「Ａ」から続き、決定ステップ６５０に向かい、そこで、変数ＵＰ＿ＣＬＫが０に等しくないかまたは変数ＵＰ＿ＲＥＭＡＩＮＤＥＲが０に等しくないかを判別し、その数量と、変数ＬＡＳＴ＿ＣＬＫが０に等しく、ＣＬＫ信号が１に等しいかどうかを示す値との論理ＡＮＤをとる。これらすべての条件に対し答えが「はい」であれば、ステップ６５２で変数ＣＬＫ＿ＰＥＲＩＯＤの値が変数ＵＰ＿ＣＬＫ＿ＰＥＲＩＯＤにロードされる。次に論理の流れはステップ６５２および、決定ステップ６５０の「いいえ」の結果から決定ステップ６５４に向かう。
【００９１】
決定ステップ６５４で、変数ＤＯＷＮ＿ＣＬＫが０に等しくないかまたは変数ＤＯＷＮ＿ＲＥＭＡＩＮＤＥＲが０に等しくないかを判別し、その数量と、変数ＬＡＳＴ＿ＣＬＫが０に等しく、ＣＬＫ信号が１に等しいかどうかを示す値との論理ＡＮＤをとる。これらすべての条件に対し答えが「はい」であれば、ステップ６５６で変数ＣＬＫ＿ＰＥＲＩＯＤの現在の値が変数ＤＯＷＮ＿ＣＬＫ＿ＰＥＲＩＯＤにロードされる。次に論理の流れはステップ６５６および、決定ステップ６５４の「いいえ」の結果から決定ステップ６６０に向かう。
【００９２】
決定ステップ６６０で、変数ＬＡＳＴ＿ＣＬＫが０に等しいか、またＣＬＫ信号が１に等しいかを判別する。答えが「はい」であれば、ステップ６６２で、変数ＣＬＫ＿ＣＯＵＮＴが増分され、変数ＣＬＫ＿ＰＥＲＩＯＤが０に設定される。６６０での結果が「いいえ」であれば、ステップ６６４で、ＣＬＫ＿ＰＥＲＩＯＤ変数が増分されるが、他にも何も実行しない。
【００９３】
次に論理の流れはステップ６６２および６６４の両方からステップ６６６に向かい、３つすべてのレジスタＲ１、Ｒ２、およびＲ３を左へシフトする。シフト実行後、ステップ６６８は図１３と図１２の文字「Ｂ」に置かれている「ループ」ステップに戻る。
【００９４】
決定ステップ６５０は、本質的に、上記コンピュータプログラムの第１３Ａ行の機能を実行しており、決定ステップ６５４は、本質的に、上記コンピュータプログラムの第１３行を実行している。決定ステップ６６０は、本質的に、上記コンピュータプログラムの第１４行を実行している。
【００９５】
図１２に戻ると、論理の流れはステップ６２６から決定ステップ６３０に向かい、そこで、変数ＴＡＲＧＥＴ＿ＣＬＫが変数ＵＰ＿ＣＬＫよりも大きいかどうかが判別される。これは、本質的に、上記コンピュータプログラムの第３０行と同じである。答えが「はい」であれば、ＵＰチャージポンプ電流はステップ６３２で１だけ減らされる。その後、論理の流れは文字「Ｄ」へ向かい、そこで、論理の流れは図１１のステップ６０８に戻る。
【００９６】
決定ステップ６３０で結果が「いいえ」であれば、決定ステップ６３４により、変数ＴＡＲＧＥＴ＿ＣＬＫが変数ＵＰ＿ＣＬＫよりも小さいかどうかが判別される。答えが「はい」であれば、ＵＰチャージポンプ電流はステップ６３６で１だけ増やされ、論理の流れは文字「Ｄ」に向かう。決定ステップ６３４で結果が「いいえ」であれば、論理の流れは文字「Ｃ」に向けられ、そこから論理の流れは図１４へ向かう。決定ステップ６３４は、本質的に、上記コンピュータプログラムの第３１行と同じ機能を実行する。
【００９７】
図１４の文字「Ｃ」から始まる決定ステップ６７０で、変数ＴＡＲＧＥＴ＿ＲＥＭＡＩＮＤＥＲが変数ＵＰ＿ＲＥＭＡＩＮＤＥＲよりも大きいかどうかが判別される。答えが「はい」であれば、ＵＰチャージポンプ電流はステップ６７２で１だけ減らされ、その後論理の流れは文字「Ｄ」に向かう。決定ステップ６７０で答えが「いいえ」であれば、決定ステップ６７４により、変数ＴＡＲＧＥＴ＿ＲＥＭＡＩＮＤＥＲが変数ＵＰ＿ＲＥＭＡＩＮＤＥＲよりも小さいかどうかが判別される。答えが「はい」であれば、ＵＰチャージポンプ電流はステップ６７６で１だけ増やされる。その後、論理の流れは「Ｄ」に向かう。決定ステップ６７０は、本質的に、上記コンピュータプログラムの第３２行の機能と同じであり、決定ステップ６７４の機能は、本質的に、上記コンピュータプログラムの第３３行の機能と同じであることに注意されたい。
【００９８】
決定ステップ６７４で結果が「いいえ」であった場合、決定ステップ６８０により、変数ＴＡＲＧＥＴ＿ＣＬＫが変数ＤＯＷＮ＿ＣＬＫよりも大きいかどうかが判別される。答えが「はい」であれば、ＤＯＷＮチャージポンプ電流はステップ６８２で１だけ減らされる。その後、論理の流れは文字「Ｄ」に向かう。答えが「いいえ」であれば、論理の流れは決定ステップ６８４に向かう。
【００９９】
決定ステップ６８４で、変数ＴＡＲＧＥＴ＿ＣＬＫが変数ＤＯＷＮ＿ＣＬＫよりも小さいかどうかが判別される。答えが「はい」であれば、ＤＯＷＮチャージポンプ電流はステップ６８６で１だけ増やされる。その後、論理の流れは文字「Ｄ」に向かう。決定ステップ６８４で答えが「いいえ」であれば、論理の流れは決定ステップ６９０に向かう。
【０１００】
決定ステップ６９０で、変数ＴＡＲＧＥＴ＿ＲＥＭＡＩＮＤＥＲが変数ＤＯＷＮ＿ＲＥＭＡＩＮＤＥＲよりも大きいかどうかが判別される。答えが「はい」であれば、ＤＯＷＮチャージポンプ電流はステップ６９２で１だけ減らされる。その後、論理の流れは文字「Ｄ」に向かう。決定ステップ６９０で答えが「いいえ」であれば、論理の流れは決定ステップ６９４に向かう。
【０１０１】
決定ステップ６９４で、変数ＴＡＲＧＥＴ＿ＲＥＭＡＩＮＤＥＲが変数ＤＯＷＮ＿ＲＥＭＡＩＮＤＥＲよりも小さいかどうかが判別される。答えが「はい」であれば、ＤＯＷＮチャージポンプ電流はステップ６９６で１だけ増やされ、論理の流れは文字「Ｄ」に向かう。答えが「いいえ」であれば、論理の流れはすぐに文字「Ｄ」に向けられ、そこから論理の流れは図１１のステップ６０８に戻る。
【０１０２】
図１１〜１４の流れ図を上記のコンピュータプログラムと比較しようとする際に、図１１のステップ６００から始まる初期化手順はいくつかの変数に初期値を入れるステップを含むことに注意することが大切である。所定の値を持つ変数としては、ＵＰ＿ＣＬＫ、ＵＰ＿ＲＥＭＡＩＮＤＥＲ、ＵＰ＿ＣＬＫ＿ＰＥＲＩＯＤ、ＴＡＲＧＥＴ＿ＣＬＫ、およびＴＡＲＧＥＴ＿ＦＲＡＣＴＩＯＮがある。さらに、図１２のステップ６２６でのＴＡＲＧＥＴ＿ＲＥＭＡＩＮＤＥＲの計算では整数が得られ、計算で求めたその値は最も近い整数に丸めるのが好ましい。
【０１０３】
上述のコンピュータプログラムの第３０行〜第３３行は本質的に、第１０行〜第１６行で実行される機能のいくつかを参照するコメントであることにも注意されたい。
【０１０４】
また、ＵＰチャージポンプ電流およびＤＯＷＮチャージポンプ電流が与えられたチャージポンプ回路について対称的である場合、「ＵＰ」チャージポンプ電流または「ＤＯＷＮ」チャージポンプ電流を増減する図１１〜１４の流れ図に説明されているステップを組み合わせて倫理決定の１／２にすることもできるが、これは対称チャージポンプ電流の増大によりＵＰまたはＤＯＷＮの両方について同じ結果が得られるからであることに注意すべきである。
【０１０５】
本発明の原理は、任意の形状のスペクトル拡散プロファイルに適用でき、図８に開示されているようなかなり「ピークのある」好ましいスペクトル拡散プロファイルにだけ適用されるわけではないことは理解されるであろう。正弦波変調がスペクトル拡散プロファイルとして好ましい状況では、結果として得られる誤差プロファイルの外観は図１５に示されているグラフ７００となる。たとえば、ＰＬＬシステムが公称利得で動作する場合、１２８の別々の間隔を持つ（上述のように）正弦波スペクトル拡散プロファイルの単一期間にわたるＵＰおよびＤＯＷＮ誤差時間はかなりギザギザの曲線７０２により与えられる。図１５から、誤差プロファイルはさらにいくぶん正弦波形状となることがわかる。
【０１０６】
ＰＬＬ回路の利得が公称値よりも約３０％高い場合、図１５のギザギザの曲線７０４が生じる。グラフ７００から、利得が増えるとＵＰおよびＤＯＷＮパルス幅持続時間は、利得が公称値のところにあるときの結果として得られるパルス幅持続時間よりもいくぶん短いことがわかる。この正弦波の例では、公称利得曲線７０２と＋３０％利得曲線７０４との間の最大偏差は正と負の両方の方向で（つまり、グラフ７００のＹ軸に関して）最大パルス幅タイミング付近に現れることが示されている。たとえば、おおよそプロファイル間隔１５では、公称利得曲線７０２と＋３０％利得曲線７０４との間の偏差は「Ｅ５」という名前の「誤差」値で示されている。同様に、おおよそプロファイル間隔７５では、これら２つの曲線の間の誤差の偏差は「Ｅ７」で示される。図１６では、図１５の円７１０で示されているように、５１〜１０１の範囲にあるプロファイル間隔の間のさまざまな曲線と誤差の偏差がわかりやすいように縮尺を拡大してある。
【０１０７】
公称利得曲線７０２と−３０％利得曲線７０６との間の比較的大きな偏差もまた、最大ＵＰおよびＤＯＷＮパルス幅持続時間付近で生じ、これもまた、図１５のプロファイル間隔１５とプロファイル間隔７５のあたりで生じる。図１５では、曲線７０２と７０６との間のこれらの比較的大きな偏差は、誤差指示記号「Ｅ６」および「Ｅ８」で示されている。図１５からわかるように、実効ＰＬＬ利得が公称利得から減少すると、ＵＰおよびＤＯＷＮパルス幅持続時間が長くなる。
【０１０８】
図１６は、円７１０で示されているように、グラフ７００のＵＰおよびＤＯＷＮ誤差時間の展開図となっている。前段で説明したように、誤差指示記号Ｅ７およびＥ８は、プロファイル間隔７５の近くにあり、その曲線はそれらの間隔位置で比較的大きな誤差の偏差を示す。
【０１０９】
図１５および１６のこの正弦波の例を見ると、ＵＰおよびＤＯＷＮ信号のパルス幅の最大持続時間で最大の誤差の偏差が生じることがわかる。この事実に照らし合わせて、遅延チェーン３００を使用して、これらの信号の累積最大（または「ピーク」）パルス幅を捕捉することも可能である。
【０１１０】
本発明のスペクトル拡散クロック発生器を使用すると、本発明の原理から逸脱することなく出力１３６で任意の周波数範囲を生成できることは理解されるであろう。特定周波数を発生する外部の水晶／発振器回路を使用してスペクトル拡散プロファイルのある周波数範囲を作成すると効率がよい場合があるが、素子を選択する際に最も重要なのは、周波数出力が非常に安定している外部クロックを使用することであり、その理由は回路設計者がその波形の期間ごとに実際の時間においてそのクロックの精度に依存することがあるからである。他の重要な要因は、遅延チェーンを較正する論理ゲートにＡＳＩＣを使用する状況で顕著である。ＡＳＩＣ論理ゲートはすべて単一の基板に配置し、実際の伝播遅延時間が遅延ゲート素子間で比較的等しくなるようにすることが重要である。これらの伝播遅延タイミングが正確であることはそれほど重要でないが、それは本発明では非常に正確な外部クロックを使用することでこれらの遅延ゲートを容易に較正できるからである。
【０１１１】
さらに、本発明の原理はスペクトル拡散プロファイルについて、正弦波プロファイルだけでなく、非常に滑らかなプロファイルやギザギザのあるあるいは「ピークの多い」プロファイルなど、どのような種類の変調波形でも機能し、もちろん、本発明の好ましい実施形態であることは理解されるであろう。
【０１１２】
本発明の前述の好ましい実施形態の説明は、図解と説明を目的として提示されたものである。排他的であったり、本発明を、開示されている正確な形態に限定することを意図していない。上記の教示に照らして、明白な修正またはバリエーションも可能である。本発明の原理とその実用的応用が最もよく理解され、当業者であれば本発明をさまざまな実施形態で、考慮された特定の用途に適するようにさまざまな修正を加えて、最もよく利用できるようにするためにこの実施形態を選択し、説明した。本発明の範囲は付属の請求項によって定義されることが意図されている。
【図面の簡単な説明】
【０１１３】
【図１】時間の経過とともにＮに対する値を変化させるＮ除算カウンタを備える従来技術の位相ロックループ回路のブロック図である。
【図２】図１に開示されている回路の信号のいくつかの関係を示すタイミング図である。
【図３】本発明の原理に従って構成されたスペクトル拡散クロック発生器回路のブロック図である。
【図４】図１のスペクトル拡散クロック発生器回路とさらに本発明の原理に従って構成されたマルチプレクサおよび遅延チェーン回路、さらに処理回路のブロック図である。
【図５】図４の回路で使用されている直列遅延チェーンの第１の実施形態の概略図である。
【図６】図４の回路で使用されている直列遅延チェーンの第２の実施形態の概略図である。
【図７】図４の回路で使用されている直列遅延チェーンの第３の実施形態の概略図である。
【図８】スペクトル拡散クロック発生器の好ましいシミュレートプロファイルのグラフである。
【図９】本発明のスペクトル拡散発生器回路で使用し、図８の好ましいプロファイルによる、ＵＰおよびＤＯＷＮ信号の誤差プロファイルのグラフである。
【図１０】本発明の原理に従って構成された、マイクロプロセッサを使用するのではなく論理状態機械を使用したオールエレクトロニクス解決法のブロック図である。
【図１１】図１０の論理状態機械によって実行される機能ステップの流れ図である。
【図１２】図１０の論理状態機械によって実行される機能ステップの流れ図である。
【図１３】図１０の論理状態機械によって実行される機能ステップの流れ図である。
【図１４】図１０の論理状態機械によって実行される機能ステップの流れ図である。
【図１５】正弦波変調を使用するスペクトル拡散クロック発生器のＵＰおよびＤＯＷＮ信号の誤差プロファイルを示すグラフである。
【図１６】明確にするため分解した図１５の一部のグラフである。
【符号の説明】
【０１１４】
１００  位相ロックループ
１１０  外部水晶または発振器
１１４  Ｍカウンタ
１２２  位相周波数検出器（ＰＦＤ）
１２８  チャージポンプ
１３２  ループフィルタ
１３４  ＶＣＯ
１３８  Ｎカウンタ
１５０  アドレスカウンタ
１５８  加算器
１５４  テーブル
１５６  データ
１６０  基本数
１８０  マルチプレクサ
２００  遅延チェーン
【図１】
2007035023.tif 000003
【図２】
2007035023.tif 000004
【図３】
2007035023.tif 000005
【図４】
2007035023.tif 000006
【図５】
2007035023.tif 000007
【図６】
2007035023.tif 000008
【図７】
2007035023.tif 000009
【図８】
2007035023.tif 000010
【図９】
2007035023.tif 000011
【図１０】
2007035023.tif 000012
【図１１】
2007035023.tif 000013
【図１２】
2007035023.tif 000014
【図１３】
2007035023.tif 000015
【図１４】
2007035023.tif 000016
【図１５】
2007035023.tif 000017
【図１６】
2007035023.tif 000018