(57)【要約】技術は、温度に基づいて水晶発振器の周波数を推定するために開示される。実施例では、前記発振器周波数は多項式の近似を使用して計算される。技術は、前記多項式の近似の中で使用される前記係数を導いて周期的に更新するために開示される。
2011511575.tif 000002
【特許請求の範囲】
【請求項１】
水晶発振器周波数の多項式の近似で使用するために係数を計算するための方法で、前記多項式は、項c0'および、前記水晶発振器の測定された温度Tに係数c1’を掛けたものを含む方法であって、
第１の温度T1および対応する発振器周波数Fm(T1)を測定することと、
第２の温度T2および対応する発振器周波数Fm(T2)を測定することと、
Fm(T1)に基づいて前記係数c0'を計算することと、
T1、T2、Fm(T1)およびFm(T2)に基づいて前記係数c1'を計算することと
を含む方法。
【請求項２】
前記係数c0’を前記計算することは、Fm(T1)と初期項Finit(T1)との間の前記差分をとることを含む請求項１の方法。
【請求項３】
前記初期項Finit(T1)は、項c0initおよび、T1に係数c1initを掛けたものを含む請求項２の方法。
【請求項４】
前記係数c1’を前記計算することは、T2とT1との間の前記差分によりFm(T2)とFm(T1)との間の前記差分を割ることを含む請求項１の方法。
【請求項５】
T1とT2の間の前記差分は少なくとも摂氏１度である請求項４の方法。
【請求項６】
T1を測定した後およびT2を測定する前に熱源をつけることをさらに含む請求項４の方法。
【請求項７】
前記熱源は電力増幅器である請求項６の方法。
【請求項８】
c0'およびc1'の多数の推定値を計算することをさらに含む請求項１の方法。
【請求項９】
c0'およびc1'の前記多数の推定値をともに平均化することをさらに含む請求項８の方法。
【請求項１０】
無限インパルス応答(IIR)フィルタを使用してc0'およびc1’の推定値を更新することをさらに含む請求項８の方法。
【請求項１１】
前記多項式は、Tの２次関数に係数c2'を掛けたもの、およびTの３次関数に係数c3'を掛けたものをさらに含み、
c1'に基づいて前記係数c2'およびc3'を計算することをさらに含む請求項４の方法。
【請求項１２】
前記係数c2'を前記計算することは、c1'に項mc2'を掛けることを含む請求項１１の方法。
【請求項１３】
前記係数c3'を前記計算することは、c1'に項mc3'を掛けることを含む請求項１１の方法、
【請求項１４】
Fm(T1)とF'(T1)との間の前記差分をとることで前記項c0'を更新することをさらに含み、そこにおいてF'(T1)は前記予め更新された項c0'および前記計算された係数c1’c2’およびc3’を含む請求項１３の方法。
【請求項１５】
c0'、c1’、c2’およびc3’の多数の推定値を計算することをさらに含む請求項１３の方法。
【請求項１６】
c0'、c1’、c2’およびc3’の前記多数の推定値をともに平均化することをさらに含む請求項１５の方法。
【請求項１７】
無限インパルス応答(IIR)フィルタを使用して、c0'、c1’、c2およびc3'の推定値を更新することをさらに含む請求項１５の方法。
【請求項１８】
1)c0'およびc1’の候補推定値(candidate estimates)に基づいた周波数推定値と
2)前記測定された周波数Fm(T1)
との間の平均二乗誤差の最小化によって、c0'、c1’、c2’、およびc3'の推定値を更新することをさらに含む請求項１５の方法。
【請求項１９】
c0'およびc1’の前記候補推定値に対して直線性を有するc2'およびc3'に関して推定値を利用して、c0'およびc1’の候補推定値に基づいた前記周波数推定値、請求項１８の方法。
【請求項２０】
c0'およびc1'の前記推定値を前記計算することは工場(factory)で行われる請求項１の方法。
【請求項２１】
水晶発振器周波数の多項式の近似で使用するために係数を計算するための方法で、前記多項式は、項c0'および、前記水晶発振器の測定された温度Tに係数c1’を掛けたものを含む方法であって、
前記測定された温度Tが温度の第１の範囲内にある場合に係数c0'を計算することを含む状態FIELD0の中でのオペレーションである状態FIELD0を開始することと、
前記測定された温度Tが温度の第２の範囲内にある場合に、前記係数c1'を計算することを含む状態FIELD1の中でのオペレーションである状態FIELD1を開始することとを含む方法。
【請求項２２】
前記係数c0'を前記計算することは、
測定された周波数Fmと第１の差分項を生成するための計算された周波数fcalとの間の差分をとり、そこにおいてfcalは、前記係数c0'の以前の推定値および前記測定された温度Tから計算される請求項２１の方法。
【請求項２３】
前記係数c0’を前記計算することは、
重み定数によって、前記第１の差分項および前記係数c0'の以前の推定値の間の差分を重み付けすることと、
c0'の前記以前の推定値への前記重み付けされた差分を加えることとを含む請求項２２の方法。
【請求項２４】
前記係数c1’を前記計算することは、
温度T2およびT1、ならびに対応する周波数Fm(T2)およびFm(T1)を測定することと、
第１の商を生成するためにT2とT1の間の前記差分によってFm(T2)とFm(T1)の間の前記差分を割ることと、
重み定数によって前記最初の商に重み付けすることと、
c1'の前記以前の推定値に前記重み付けされた商を加えることとを含む請求項２３の方法。
【請求項２５】
前記状態FIELD0中のオペレーションは、前記測定された温度Tが温度の前記第１の範囲内にある場合に、チェック前の第１の所定時間周期(time period)の間待つことをさらに含み、
前記状態FIELD1中のオペレーションは、前記測定された温度Tが温度の前記第２の範囲内にある場合に、チェック前の第２の所定時間周期の間待つことをさらに含む請求項２４の方法。
【請求項２６】
c0’がFIELD0中で第１の所定回数だけ計算された場合にFIELD0からFIELD1に移行することをさらに含む請求項２５の方法。
【請求項２７】
c0'の現在の推定値とc0'の以前の推定値間の前記差分が所定値未満である場合にFIELD0からFIELD1に移行することをさらに含む請求項２５の方法。
【請求項２８】
所定条件が満たされる場合に、FIELD0からもとのFIELD1へ移行することをさらに含む請求項２５の方法。
【請求項２９】
前記測定された温度Tが温度第４の範囲内にある場合に、前記係数c3'を計算することを含む状態FIELD3中のオペレーションである状態FIELD3を開始することをさらに含み、
前記状態FIELD3中のオペレーションは、前記測定された温度Tが温度の前記第４の範囲内にあるかどうかチェックする前に第４の所定時間周期の間待つことをさらに含む請求項２５の方法。
【請求項３０】
前記係数c3'を前記計算することは、
1)c0、c1、c2の前記最新の値に基づいた周波数推定値、およびc3'の候補推定値、ならびに
2)前記測定された周波数Fm(T1)
の間の平均二乗誤差を最小化する、c3'の推定値を決定することを含む請求項２９の方法。
【請求項３１】
c3'の以前の推定値とともにc3'の推定値をフィルタリングするIIRをさらに含む請求項３０の方法。
【請求項３２】
c1’が第２の所定回数だけ計算された場合にFIELD1からFIELD3に移行することをさらに含む請求項３１の方法。
【請求項３３】
C1'の現在の推定値とc1'の以前の推定値との間の前記差分が所定値未満である場合にFIELD1からFIELD3に移行することをさらに含む請求項３１の方法。
【請求項３４】
水晶発振器周波数の多項式の近似で使用するために係数を計算するための装置で、前記多項式は、項c0'および、前記水晶発振器の測定された温度Tに係数c1’を掛けたものを含む装置であって、
第１の温度T1および第２の温度T2を測定するための温度測定ユニットと、
対応する発振器周波数Fm(T1)およびFm(T2)を測定するための周波数測定ユニットと、
Fm(T1)に基づいて前記係数c0'を計算するための、およびT1、T2、Fm(T1)およびFm(T2)に基づいて前記係数c1'を計算するための計算モジュールとを含む装置。
【請求項３５】
前記計算モジュールは、Fm(T1)と初期項Finit(T1)との間の前記差分をとることによって前記係数c0’を計算する請求項３４の装置。
【請求項３６】
前記計算モジュールは、T2とT1の間の前記差分によってFm(T2)とFm(T1)との間の前記差分を割ることによって前記係数c1'を計算する請求項３４の装置。
【請求項３７】
前記多項式は、Tの２次関数に係数c2'を掛けたものをさらに含み、
前記計算モジュールは、前記計算された係数c1'において線形処理を行なうことによって前記係数c2'をさらに計算する請求項３４の装置。
【請求項３８】
前記多項式は、Tの３次関数に係数c3'を掛けたものをさらに含み、
前記計算モジュールは、前記計算された係数c1'において線形処理を行なうことによって前記係数c3'をさらに計算する請求項３７の装置。
【請求項３９】
水晶発振器周波数の多項式の近似で使用するために係数を計算するための装置で、前記多項式は、項c0'および、前記水晶発振器の測定された温度Tに係数c1’を掛けたものを含む装置であって、
第１の温度T1および第２の温度T2を測定するための手段と、
対応する発振器周波数Fm(T1)およびFm(T2)を測定するための手段と、
Fm(T1)に基づいて係数c0'を計算するための、およびT1、T2、Fm(T1)およびFm(T2)に基づいて係数c1'を計算するための手段とを含む装置。
【請求項４０】
水晶発振器周波数の多項式の近似で使用するために係数を計算するためのコンピュータプログラムプロダクトで、前記多項式は、項c0'および、前記水晶発振器の測定された温度Tに係数c1’を掛けたものを含むコンピュータプログラムプロダクトであって、
コンピュータに第１の温度T1および対応する発振器周波数Fm(T1)を測定させるためのコードと、
コンピュータに第２の温度T2および対応する発振器周波数Fm(T2)を測定させるためのコードと、
コンピュータにFm(T1)に基づいて前記係数c0'を計算させるためのコードと、
コンピュータにT1、T2、Fm(T1)およびFm(T2)に基づいて前記係数c1'を計算させるためのコードとを含むコンピュータ読取可能媒体を含むコンピュータプログラムプロダクト。
【請求項４１】
水晶発振器周波数の多項式の近似で使用するために係数を計算するための装置で、前記多項式は、項c0'および、前記水晶発振器の測定された温度Tに係数c1’を掛けたものを含む装置であって、
前記測定された温度Tが温度の第１の範囲内にある場合に、前記係数c0'を計算することを含む状態FIELD0中のオペレーションである状態FIELD0を開始するための手段と、
前記測定された温度Tが温度の第２の範囲内にある場合に、前記係数c1'を計算することを含む状態FIELD1中のオペレーションである状態FIELD1を開始するための手段とを含む装置。
【請求項４２】
前記係数c0'を前記計算することは、
測定された周波数fmと、第１の差分項を生成するための計算された周波数fcalとの間の差分をとり、そこにおいてfcalは、前記係数c0'の以前の推定値および前記測定された温度Tから計算される請求項４１の装置。
【請求項４３】
水晶発振器周波数の多項式の近似で使用するために係数を計算するためのコンピュータプログラムプロダクトで、前記多項式は、項c0'および、前記水晶発振器の測定された温度Tに係数c1’を掛けたものを含むコンピュータプログラムプロダクトであって、
前記測定された温度Tが温度の第１の範囲内にある場合に、前記係数c0'を計算することを含む状態FIELD0中のオペレーションである状態FIELD0をコンピュータに開始させるためのコードと、
前記測定された温度Tが温度の第２の範囲内にある場合に、前記係数c1'を計算することを含む状態FIELD1中のオペレーションである状態FIELD1をコンピュータに開始させるためのコードと
を含むコンピュータ読取可能媒体を含むコンピュータプログラムプロダクト。
【請求項４４】
前記係数c0'をコンピュータに計算させるための前記コードは、
測定された周波数fmと、第１の差分項を生成するための計算された周波数fcalとの間の差分をコンピュータにとらせるためのコードを含み、そこにおいてfcalは、前記係数c0'の以前の推定値および前記測定された温度Tから計算される
請求項４３のコンピュータプログラムプロダクト。
【請求項４５】
前記係数c0’をコンピュータに計算させるための前記コードは、
重み定数によって、前記第１の差分項および前記係数c0'の以前の推定値の間の差分をコンピュータに重み付けさせるためのコードと、
c0'の前記以前の推定値への前記重み差分をコンピュータに加えさせるためのコードとを含む請求項４３のコンピュータプログラムプロダクト。
【請求項４６】
前記係数c1’をコンピュータに計算させるための前記コードは、
温度T2およびT1、ならびに対応する周波数Fm(T2)およびFm(T1)をコンピュータに測定させるためのコードと、
最初の商を生成するためにT2とT1の間の前記差分によってFm(T2)とFm(T1)の間の前記差分をコンピュータに割らせるためのコードと、
重み定数によって前記最初の商にコンピュータに重み付けさせるためのコードと、
c1'の前記以前の推定値に前記重み付けされた商をコンピュータに加えさせるためのコードとを含む
請求項４５のコンピュータプログラムプロダクト。
【請求項４７】
前記状態FIELD0中のオペレーションは、前記測定された温度Tが温度の前記最初の範囲内にある場合に、チェック前の第１の所定時間周期の間待つことをさらに含み
前記状態FIELD1中のオペレーションは、前記測定された温度Tが温度の前記第２の範囲内にある場合に、チェック前の第２の所定時間周期の間待つことをさらに含む
請求項４６のコンピュータプログラムプロダクト。
【請求項４８】
前記コンピュータ読取可能媒体は、c0’がFIELD0中の第１の所定回数だけ計算された場合、FIELD0からFIELD1にコンピュータに移行させるためのコードをさらに含む請求項４７のコンピュータプログラムプロダクト。
【請求項４９】
前記コンピュータ読取可能媒体は、
前記測定された温度Tが温度第４の範囲内にある場合に係数c3'を計算することを含む状態FIELD3中のオペレーションである状態FIELD3をコンピュータに開始させるためのコードをさらに含み、
前記状態FIELD3中のオペレーションは、前記測定された温度Tが温度の前記第４の範囲内にあるかどうかチェックする前に第４の所定時間周期の間待つことをさらに含む
請求項４８のコンピュータプログラムプロダクト。
【請求項５０】
前記コンピュータ読取可能媒体は、
c1’が第２の所定回数だけ計算された場合に、FIELD1からもとのFIELD3にコンピュータに移行させるためにコードをさらに含む請求項４９のコンピュータプログラムプロダクト。
【発明の詳細な説明】
【技術分野】
【０００１】
その開示は、水晶発振器に関し、特に、水晶発振器の周波数の推定のため技術に関する。
【背景技術】
【０００２】
水晶発振器(XO)は周波数源として通信デバイスの中で使用される。典型的な水晶発振器では、公称共振周波数を有する水晶振動子は、公称出力周波数を有する信号を生成する発振器回路に連結される。実際には、水晶振動子の共振周波数および回路の出力周波数は、温度、エージング(aging)、駆動レベルおよび振動のような要因により時間経過により変化するかもしれない。
【０００３】
通信アプリケーションでは、周波数源は、厳格な精度必要条件を満たすために典型的に要求され、それによって、水晶発振器の周波数精度を改善するスキームの使用を命ずる。水晶発振器周波数を推定し、かつ温度に関する水晶発振器周波数の変化を説明する技術がここに開示される。
【発明の概要】
【０００４】
現在の開示の態様は、水晶発振器周波数の多項式の近似で使用するために係数を計算するための方法で、前記多項式は、項c0'および、前記水晶発振器の測定された温度Tに係数c1’を掛けたものを含み、第１の温度T1および対応する発振器周波数Fm(T1)を測定し、第２の温度T2および対応する発振器周波数Fm(T2)を測定し、Fm(T1)に基づいて前記係数c0'を計算し、T1、T2、Fm(T1)およびFm(T2)に基づいて前記係数c1'を計算するための方法を提供する。
【０００５】
現在の開示の別の態様は、水晶発振器周波数の多項式の近似で使用するために係数を計算するための方法で、前記多項式は、項c0'および、前記水晶発振器の測定された温度Tに係数c1’を掛けたものを含み、前記測定された温度Tが温度の第１の範囲内にある場合で、係数c0'を計算することを含む状態FIELD0の中でオペレーションである状態FIELD0を開始し、前記測定された温度Tが温度の第２の範囲内にある場合で、係数c1'を計算することを含む状態FIELD1の中でオペレーションである状態FIELD1を開始するための方法を提供する。
【０００６】
さらに、現在の開示の別の態様は、水晶発振器周波数の多項式の近似で使用するために係数を計算するための装置で、前記多項式は、項c0'および、前記水晶発振器の測定された温度Tに係数c1’を掛けたものを含む装置であって、第１の温度T1および第２の温度T2を測定するための温度測定ユニットと、対応する発振器周波数Fm(T1)およびFm(T2)を測定するための周波数測定ユニットと、Fm(T1)に基づいて前記係数c0'を計算するための、およびT1、T2、Fm(T1)およびFm(T2)に基づいて前記係数c1'を計算するための計算モジュールとを含む装置を提供する。
【０００７】
さらに、現在の開示の別の態様は、水晶発振器周波数の多項式の近似で使用するために係数を計算するためのコンピュータプログラムプロダクトで、前記多項式は、項c0'および、前記水晶発振器の測定された温度Tに係数c1’を掛けたものを含むコンピュータプログラムプロダクトであって、コンピュータに第１の温度T1および対応する発振器周波数Fm(T1)を測定させるためのコードと、コンピュータに第２の温度T2および対応する発振器周波数Fm(T2)を測定させるためのコードと、コンピュータにFm(T1)に基づいて前記係数c0'を計算させるためのコードと、コンピュータにT1、T2、Fm(T1)およびFm(T2)に基づいて前記係数c1'を計算させるためのコードとを含むコンピュータ読取可能媒体を含むコンピュータプログラムプロダクトを提供する。
【０００８】
さらに、現在の開示の別の態様は、水晶発振器周波数の多項式の近似で使用するために係数を計算するための装置で、前記多項式は、項c0'および、前記水晶発振器の測定された温度Tに係数c1’を掛けたものを含む装置であって、前記測定された温度Tが温度の第１の範囲内にある場合に前記係数c0'を計算することを含む状態FIELD0中のオペレーションである状態FIELD0を開始するための手段と、前記測定された温度Tが温度の第２の範囲内にある場合に、前記係数c1'を計算することを含む状態FIELD1中のオペレーションである状態FIELD1を開始するための手段とを含む装置を提供する。
【０００９】
さらに、現在の開示の別の態様は、水晶発振器周波数の多項式の近似で使用するために係数を計算するためのコンピュータプログラムプロダクトで、前記多項式は、項c0'および、前記水晶発振器の測定された温度Tに係数c1’を掛けたものを含むコンピュータプログラムプロダクトであって、前記測定された温度Tが温度の第１の範囲内にある場合に係数c0'を計算することを含む状態FIELD0中のオペレーションである状態FIELD0をコンピュータに開始させるためのコードと、測定された温度Tが温度の第２の範囲内にある場合に係数c1'を計算することを含む状態FIELD1中のオペレーションである状態FIELD1をコンピュータに開始させるためのコードとを含むコンピュータ読取可能媒体を含むコンピュータプログラムプロダクトを提供する。
【図面の簡単な説明】
【００１０】
【図１】図１は、水晶発振器を形成するために発振器回路110に連結された水晶振動子100のブロック図を示す。
【図１Ａ】図１Ａは、水晶振動子の温度および水晶振動子の削り角度に関して共振振動数の典型的な変化をプロットする。
【図２】図２は、係数c0、c1、c2、c3を推定するための現在の開示によってステップを描く。
【図２Ａ】図２Ａは、現在の開示の他の実施例を描く。
【図２Ｂ】図２Ｂは、前記受信機で周波数オフセットFm(T1)を測定するための技術の実施例を描く。
【図３Ａ】図３Ａは、1/2Lによって表示された、c1'とc2'の間の線形関係(linear relationship)を描く。
【図３Ｂ】図３Ｂは、c1'からc3'の推定値を計算するために使用されるかもしれない、c1'とc3'の間の同様の線形関係を描く。
【図４】図４は、例えば図２に記述された手順から得る係数の最初に測定された組を再度調整するために使用される状態機械(state machine)を示す。
【図５】図５は、状態FIELD0の間に行なわれたオペレーションの実施例を示す。
【図６】図６は、状態FIELD1の間に行なわれたオペレーションの実施例を示す。
【図７】図７は、状態FIELD3の間に行なわれたオペレーションの実施例を示す。
【発明を実施するための形態】
【００１１】
その測定された温度に基づいた水晶発振器の周波数を推定する技術がここに示される。
【００１２】
図１は、水晶発振器を形成するために発振器回路110に連結された水晶振動子100のブロック図を示す。水晶振動子100の温度は温度センサ120によって測定され、そしてそれは測定された温度Tを発生させる。水晶発振器は、公称基準周波数を有する出力信号110aを生成する。
【００１３】
実施例では、温度Tは水晶振動子で局所的に測定された温度かもしれない。他の実施例(図示されない)では、発振器回路の局所的の温度に対応する付加的な温度TOは測定されて、さらに以下に記述されたような、周波数推定値を改善するために提供されるかもしれない。
【００１４】
図１Ａは、水晶振動子の温度および水晶振動子の削り角度に関して共振振動数の典型的な変化をプロットする。水晶振動子の温度および水晶振動子の共振振動数の関係が以下の(式１)のように多項式によって近似されるかもしれないことは従来技術の中で示される。
【００１５】
Fx(T)=a3(T-T0)3+a2(T-T0)2+a1(T-T0)
そこでは、Tは水晶振動子温度を表わし、T0は固定基準温度を表わし、FX(T)は、公称周波数FX0に関する温度Tの水晶振動子の共振振動数の変化を表わし、a1、a2、a3は、サンプリングされた特定の水晶振動子を特徴づける係数である。一般に、係数a1、a2、a3は、その削り角度を含む、水晶振動子の物理的性質によって決定される。例えば、Arthur Ballato著、"TCXOアプリケーションの為の共振器の周波数-温度-負荷キャパシタンス作用(Frequency-Temperature-Load Capacitance Behavior of Resonators for TCXO Application)" IEEE Trans. Sonics and Ultrasonics誌, Vol. SU-25, No.4, 1978年7月発行を参照されたい。
【００１６】
水晶振動子100が図１に示されるような発振器回路110に連結される場合、発振器出力信号110aの周波数は以下の(式２)のように温度に関して変化するかもしれない。
【００１７】
FO(T, TO) = c3 (T - T0)3 + c2 (T - T0)2 + c1 (T - T0)2 + c0 + cp (TO - TO0)
式２では、Tは水晶振動子温度を表わし、T0は固定基準温度を表わし、FO(T、TO)は、基準周波数FO0に関する温度Tで信号110aの予測された周波数シフトを表わし、TOは発振器温度を表わし、TO0は固定発振器基準温度を表わし、c0、c1、c2、c3は、発振器出力信号110aの水晶振動子温度上の周波数相関関係を特徴づける係数であり、そしてcpは、発振器出力信号110aの発振器温度上の周波数相関関係を特徴づける係数である。係数cpは、例えば発振器回路に搭載するキャパシタンスによって決まるかもしれない。
【００１８】
実施例では、係数cpは、水晶振動子の製造供給元(vendor)によって提供される水晶振動子の公称F-T曲線を、十分に搭載した水晶発振器を使用して測定されたF-T曲線と比較することにより導かれる。その測定は例えば、研究所でオフラインで行われるかもしれない。
【００１９】
あるいは、cpを導くために、発振器温度が第１の温度To1から第２の温度To2まで変化する一方で、水晶振動子温度は固定されるかもしれない。対応する発振器出力周波数Fo(To1)およびFo(To2)は測定されるかもしれない。係数cpは、その後、以下の(式２ａ)のように推定されるかもしれない。
【００２０】
cp=[Fo(To1)-Fo(To2)]/(To1-To2)
係数cpは、所定の発振器設計のために一般的に固定されるので、最良の一時的な測定は、係数を推定するために行なう必要がある。その推定値は、水晶発振器のすべての実施にその後使用されることができる。
【００２１】
現在の開示の態様によれば、技術は、測定された温度TおよびTO、ならびに係数c0、c1、c2、c3の推定値を使用して、式２によってFO(T)を計算するために提供される。
【００２２】
図２は、係数c0、c1、c2、c3を推定するための現在の開示によってステップを描く。実施例では、図２に描かれたステップは工場で行なわれるかもしれない。
【００２３】
ステップ200で、c0、c1、c2、c3のための初期値は、メモリからロードされる。図２では、ロードされた初期値は、それぞれ、c0init、c1init、c2init、c3initとして指定される。実施例では、c0initは0に設定される。実施例の中で、c1init、c2init、c3initは、式１によって、水晶振動子を特徴づける、係数a1、a2、a3の値にそれぞれ設定される。
【００２４】
係数a1、a2、a3は、例えば水晶振動子の製造供給元によって提供されるデータから計算されるかもしれない。実施例の中で、係数a1、a2、a3は、水晶振動子の製造供給元によって提供されるような多数の水晶振動子サンプルからのデータを平均化することにより推定されるかもしれない。あるいは、係数a1、a2、a3は、水晶振動子の製造供給元によって提供される公称F-T曲線から推定されるかもしれない。
【００２５】
図２に戻って、ステップ202では、任意時間t1での水晶振動子の温度T1は、例えば、図１中の温度センサ120を使用することで測定される。さらに測定されるのは、基準周波数FO0からの対応する発振器周波数オフセットFm(T1)である。実施例では、周波数オフセットFm(T1)は、図２Ｂの中で描かれるように、水晶発振器を周波数F1に名目上(nominally)同調させて、ダウンコンバート(downconversion)の後に信号の周波数を観察することで、受信機に既知の周波数F1のシングルトーン(single tone)を入れることにより測定されるかもしれない。ダウンコンバートの後の信号の周波数は周波数オフセットFm(T1)を導くために使用されることができる。当業者は、アンプおよび／または他のフィルタのような、図２Ｂの中で描かれた、周波数測定設定から、あるブロックが省略されたことを、簡単にするために理解するだろうということに留意すべきである。
【００２６】
ステップ204で、推定された係数c0’は、ステップ202で集められた情報に基づいて計算される。実施例の中で、推定された係数c0’は、以下の(式３)のように計算される。
【００２７】
c0'=Fm(T1)-Finit(T1)
そこにおいてFinit(T1)は、式２中へ初期係数推定値c0init、c1init、c2init、c3initを代入することにより、つまり(式４)により計算される。
【００２８】
Finit(T1)=c3init(T1-T0)3+c2init(T1-T0)2+c1init(T1-T0)+c0init
ステップ206では、Fm(T2)を生じて、第２の温度T2での発振器周波数が測定される。温度T2は、F-T曲線の傾斜の正確な推定値を許可するためにT1から好ましくは十分に分離され、ただし十分に２次および３次項の影響を最小化するためにT1に十分に接近する。例えば、T1とT2の間の剥離は少なくとも摂氏１度に選択されるかもしれない。
【００２９】
実施例では、温度T2は、T1がサンプリングされるときに、時間t1の後の所定の期間待った後にサンプリングされるかもしれない。他の実施例では、複数の温度周波数データポイント(temperature-frequency data points)は、時間間隔に関してサンプリングされるかもしれず、また、最低の温度はT1になじむかもしれず、また、最高の温度はT2になじむかもしれない。実施例では、温度T2およびT1の間の十分な剥離をさらに促進するために、熱源は発振器温度を上げるためにステップ202の後につけられるかもしれない。実施例では、熱源は電力増幅器かもしれない。
【００３０】
ステップ208で、推定された係数c1’が計算される。実施例の中で、c1’は以下の(式５)のように計算されるかもしれない。
【００３１】
c1'=[Fm(T2)-Fm(T1)]/[T2-T1]
ステップ210で、推定された係数c2'およびc3'は計算される。実施例の中で、指定するc1’がc2'およびc3'を独自に指定するように、c2'およびc3'はc1'の関数であると仮定される。実施例の中で、c2'およびc3'は、以下の(式６)のようにc1'に対して直線性を有すると仮定される。
【００３２】
c2'=mc2'*c1'+bc2'
c3'=mc3'*c1'+bc3'
そこでは、線形係数mc2'、mc3'、bc2'、bc3'は実験的に決定され、および／または、メモリにあらかじめ格納されるかもしれない。
【００３３】
図３Ａは、1/2Lによって表示された、c1'とc2'の間の線形関係を描く。実施例の中で、直線関係を特徴づける係数mc2'およびbc2'は、水晶振動子の製造供給元によって提供されるような多数の水晶振動子のデータサンプル群から導かれるかもしれない。これらの多数のデータサンプル群は1/2Lの線上に重ね合わせられた散布図として図３Ａの中で示される。データポイントに基づいて、推定された係数mc2'およびbc2'は、所定の最適性基準、例えば散布図中の1/2Lの線とデータサンプル群の間の最小平均二乗誤差によって決定されるかもしれない。
【００３４】
図３Ｂは、c1'からc3'の推定値を計算するために使用されるかもしれない、c1'とc3'の間の同様の線形関係を描く。
【００３５】
実施例では、較正されている水晶振動子のように同じ水晶振動子製造供給元によって製造された水晶振動子のサンプルからのデータのみが、係数mc2'、bc2'、mc3'、bc3'を推定するために含まれるかもしれない。実施例では、多数の製造供給元からの水晶振動子サンプルは含まれるかもしれない。
【００３６】
図２に戻って、ステップ212で、係数c0のための最新の(updated)推定値c0''は、ステップ204、208および210で導かれた、推定された係数c0'、c1'、c2'およびc3'に基づいて得られるかもしれない。実施例の中で、c0''は、c0''=Fm(T1)-F'(T1)として計算されてもよく、するとそこでF'(T1)は以下の(式７)のように計算される。
【００３７】
F'(T1)=c3'(T1-T0)3+c2'(T1-T0)2+c1'(T1-T0)+c0'
ステップ214で、係数c0、c1、c2、c3は、それぞれ、計算された係数c0''、c1'、c2'、c3'の値に更新されるかもしれない。実施例では、最新の係数はメモリに格納されるかもしれない。
【００３８】
図２Ａは、現在の開示の他の実施例を描く。図２Ａでは、ステップ202-212は、係数c0、c1、c2、c3の多数の推定値を得させるためにN+1回の合計が各々行なわれる。図２Ａ中で番号が付けられたステップは、図２中の同様に番号が付けられたステップに相当する。
【００３９】
図２Ａでは、ステップ200は係数を初期化する。実施例では、これは、図２に関して以前に記述されるのと同じ方法で行われるかもしれない。さらに、ステップ200では、繰り返しインデックス(iteration index)nは0に設定される。ステップ202-212は、各々の繰り返しインデックスに対応する計算された係数を表わす[n]と共に、図２に関して以前に記述されるように進む。ステップ213では、アルゴリズムは繰り返しインデックスnがNに達したかどうかをチェックする。そうでなければ、その後、アルゴリズムはnを増加させ、また、次の繰り返しのためにステップ202に戻る。nがNに達している場合、アルゴリズムはステップ214に進む。
【００４０】
その後の繰り返しのためにステップ202に返る際、ステップ202-212は、各々の繰り返しインデックスnに関係していた１組の係数c0'[n]、c1'[n]、c2'[n]、c3'[n]、c0''[n]を導くために繰り返されるかもしれない。実施例では、各々の繰り返しインデックスnのために生成された係数の組は後の処理のためにメモリに格納されるかもしれない。
【００４１】
実施例の中で、すべてのN+1繰り返しからの係数c0''、c1'、c2'、c3'は係数c0、c1、c2、c3のための推定値を生成するために組み合わせられるかもしれない。これは、図２Ａのステップ214で留意されるように、係数の１つの組を形成するためにN+1の合計繰り返しの間に計算された、推定された係数の組をともに平均化することにより行われるかもしれない。
【００４２】
別の実施例(図示されない)では、無限インパルス応答(IIR)フィルタは、以下の(式８)のように各々の繰り返しを備えた係数を更新するために使用されるかもしれない。
【００４３】
[c0,c1,c2,c3]new=α[c0,c1,c2,c3]old+(1-α)[c0,c1,c2,c3]current;0<α<1
この実施例の中で、[c0,c1,c2,c3]oldは、係数の現在の推定値であり、[c0,c1,c2,c3]currentは現在の繰り返しnに関して計算された係数の推定値であり、[c0,c1,c2,c3]newは、係数の最新の推定値である。
【００４４】
さらに別の実施例では、平均化するかあるいは推定された係数の組をフィルタリングするIIRの代わりに、複合確率最大化(joint probability maximization)方法は係数のN+1の利用可能な組に基づいた係数の最適な組を導くために使用されるかもしれない。例えば、図２Ａの過程でサンプリングされた所定の複数のF-Tデータポイント、F(T)とサンプルデータポイントとの間の最小平均二乗誤差をもたらす係数c0opt、c1opt、c2opt、c3optの最適な組が導かれるかもしれない。実施例では、探索過程を単純化するために、図３Ａおよび図３Ｂに関して以前にここに記述されたように、線形関係はc1optと各々の係数c2optおよびc3optの各々との間で仮定されるかもしれない。
【００４５】
当業者は、係数c0、c1、c2、c3の全てが図２および図２Ａに描かれた技術を使用して推定される必要があるとは限らないことを注目するだろう。例えば、実施例では、係数c0およびc1だけが、図２および図２Ａに描かれたステップになされた適切な変更と共に推定される。そのような実施例は現在の開示の範囲内のために熟考される。
【００４６】
実施例では、図２および図２Ａに示されるステップは、発振器回路の内部（in-field）オペレーションに先立って工場で行なわれるかもしれない。あるいは、ステップは発振器回路の内部オペレーションの間に行なわれるかもしれない。
【００４７】
実施例では、図２および図２Ａに描かれたステップは、工場で水晶発振器を利用するデバイス、例えばデバイスの組み立ての間の初期較正フェーズ(phase)中に一旦行なわれるかもしれない。他の実施例では、図２に描かれたステップは必要に応じて複数回行なわれるかもしれない。
【００４８】
現在の開示の態様の中で、係数c0、c1、c2、c3のための推定値は、時間経過により、それらの精度を維持するために通常動作の間に周期的に更新されるかもしれない。係数推定値を周期的に更新する技術が以下に開示される。
【００４９】
図４は、例えば図２に記述された手順から得る係数の最初に測定された組を再度調整するために使用される状態機械を示す。再調整は、水晶振動子および／または発振器のエージングに起因する誤り(inaccuracies)と同様に工場較正の誤りを緩和するのを支援するかもしれない。
【００５０】
図４では、再調整手順は状態FIELD0で開始する。実施例では、状態FIELD0は係数c0を測定する。実施例では、c0の較正は、図５に関してその後ここに記述されたオペレーションによって行われるかもしれない。状態FIELD0は、条件(図４中にに「完了」が付けられた)の所定の組に合う場合に状態FIELD1に移行するかもしれない。
【００５１】
状態FIELD1はc0と同様に係数c1を測定するかもしれない。実施例では、c0とc1の較正は、図６に関してその後ここに記述されたオペレーションによって完了されるかもしれない。状態FIELD1は条件の所定の組に合う場合に状態FIELD2に移行するかもしれない。状態FIELD1は、エージングタイマー(aging timer)が終了する場合にもとの状態FIELD0にさらに移行するかもしれない。
【００５２】
実施例では、エージングタイマーは、いくつかの係数が最後に更新されるまでの間に経過した期間を追跡するかもしれない。エージングタイマーは、発振器を備えたチップ上で常駐する電子カウンタかもしれず、あるいは、それは、最後に係数が更新される間に格納されたタイムスタンプと現在のタイムスタンプとを比較するモジュールかもしれない。実施例では、エージングタイマーは最後の較正の２年後に終了するように設定されることができる。
【００５３】
もとの図４を参照して、状態FIELD2は係数c1および／またはc0と同様に係数c2を測定するかもしれない。状態FIELD2は、条件の所定の組に合う場合に状態FIELD3に移行するかもしれない。状態FIELD2は、エージングタイマーが終了する場合にもとのFIELD0にさらに移行するかもしれない。
【００５４】
状態FIELD3は、係数c2、c1および／またはc0と同様に係数c3を測定するかもしれない。実施例の中で、c3、c2、c1、c0の較正は、図７に関してそこの後ここに記述されたオペレーションによって行われるかもしれない。状態FIELD3は、条件の所定の組に合う場合に状態FIELD4に移行するかもしれない。あるいは、状態FIELD3はもとのFIELD0に移行するかもしれない。
【００５５】
実施例では、状態FIELD4はスリープ状態かもしれない。スリープ状態では、較正機構は、所定の期間に関するオペレーションを止めるかもしれない。実施例では、所定の期間は１年かもしれない。
【００５６】
実施例の中でc2がおよそ０であり、状態FIELD1はFIELD2を省略するかもしれず、合っている条件の所定の組に関して状態FIELD3に直接移行するかもしれないことに留意すべきである。
【００５７】
実施例では、状態機械の現在の状態(つまりFIELD0、FIELD1、FIELD2、FIELD3あるいはFIELD4)は、水晶発振器を利用するデバイスの電力増加あるいは電力減少について状態が保存されているように、不揮発性メモリに格納される。実施例では、水晶発振器は無線ハンドセット(wireless handset)の中で使用されるかもしれない。
【００５８】
図５は、状態FIELD0の間に行なわれたオペレーションの実施例を示す。図５に例証された実施例は、開示の範囲をFIELD0中のオペレーションの任意の特定の組に制限するつもりではないことに留意すべきである。もっと正確に言えば、当業者は、係数の推定値を更新するために使用されるいくつかのステップは、状態FIELD0、FIELD1、FIELD2、FIELD3およびFIELD4のうちのいくつかの間に行なわれるかもしれないことを理解するだろう。そのような実施例は現在の開示の範囲内のために熟考される。
【００５９】
状態FIELD0では、ループの繰り返しを数えるためのカウンタn0は０に初期化される。第１のステップ500では、状態機械はFT_update0秒の期間を待つことにより開始する。FT_update0秒の終わりに、水晶振動子の温度T(例えば摂氏度で)は測定される。ステップ510では、温度Tが|T-T0|<T1度の範囲以内にあるかどうかがチェックされる。yesの場合、係数c0に関する現在の推定値c0[n0]はステップ520によって更新される。noの場合、状態機械は別のFT_update0秒を待つステップ500に戻るかもしれない。
【００６０】
実施例では、T0は摂氏30度に設定され、また、T1は摂氏15度に設定される。
【００６１】
実施例では、ステップ520では、係数c0[n0]は、以下の(式９)ようにIIRフィルタによって更新されるかもしれない。
【数１】
2011511575.tif 000003
【００６２】
そしてそこで、c0[n0]が繰り返しn0での推定された係数c0である場合、fmは発振器の実際の測定された周波数であり、fcalは、例えば係数の現在の(繰り返しn0の時点での)組を仮定する式２を使用して推定されるような発振器周波数であり、また、N0は重み定数である。n0=0に関して、係数c0[0]はメモリに格納された最後のc0であると仮定されるかもしれないことに留意すべきである。
【００６３】
実施例では、発振器の実際の測定された周波数fmは、例えば符号分割多元接続(CDMA)のための受信装置の中で使用された自動周波数制御回路(automatic frequency control circuit)から生成されるかもしれない。当業者は、内部オペレーションの間に発振器の実際の周波数を測定する別の方法があることを理解するだろう。
【００６４】
ステップ530では、n0は変数maxIterations0と比較される。n0が変数maxIterations0に達している場合、次に状態機械は状態FIELD0を終了して、次の状態に進む。n0がmaxIterations0に達していない場合、状態はステップ500に返る。図６は、状態FIELD1の間に行なわれたオペレーションの実施例を示す。状態FIELD1では、繰り返しをカウントするためのカウンタn1は、０に最初に設定される。ステップ600では、状態機械は、FT_update1秒の期間を待つ。FT_update1秒の終わりに、水晶振動子の温度T(例えば摂氏度で)は測定される。ステップ610では、Tが範囲
【数２】
2011511575.tif 000004
【００６５】
以内にあるかどうかがチェックされる。yesの場合、係数c1に関する現在の推定値c1[n1]はステップ620によって更新されるかもしれない。noの場合、状態はステップ615に移り、そこでは状態機械は、Tが範囲内にあるかどうかチェックする。yesの場合、c0に関する現在の推定値はステップ625で更新される。noの場合、状態機械はFT_update1秒を待つステップ600に返る。
【００６６】
実施例では、ステップ625のオペレーションは、図５中のステップ520に関して記述されたオペレーションと同一かもしれない。実施例(図示されない)では、繰り返しインデックスは係数c0を更新するために提供されるかもしれない。
【００６７】
実施例では、T2は摂氏30度である。
【００６８】
ステップ620では、係数c1[n1]は更新される。
【００６９】
実施例では、c1[n1]は以下のように更新されるかもしれない。c0の現在値が与えられて、c1[n1]の候補値は、いくつかの最適性基準によれば、測定された周波数および温度に対する最良のc1候補を決定すると判断されるかもしれない。実施例では、最適性基準は、c0の現在値およびc1の候補値を仮定して、測定された温度周波数対と計算された温度周波数特性との間の誤りを含むかもしれない。実施例では、最良のc1の探索は、例えば、図３Ａおよび図３Ｂに関して記述されるような、c1とc2/c3との間の線形関係の仮定により支援されるかもしれない。
【００７０】
実施例の中で、一旦最良の候補c1が決定されれば、そのc1はc1の以前の推定値でフィルタリングされたIIRかもしれない。
【００７１】
別の実施例では、係数c1[n1]は以下の測定基準の計算、およびc1[n1-1]で計算された係数c1[n1]をフィルタリングするIIRにより決定されるかもしれない。
【数３】
2011511575.tif 000005
【００７２】
実施例では、IIR重み付け定数は256でありえる。
【００７３】
ステップ630では、n1は変数maxIterations1と比較される。n1がmaxIterations0に達している場合、次に状態機械は状態FIELD1を終了し、次の状態に移る。n1がmaxIterations1に達していない場合、状態はステップ600に返る。
【００７４】
実施例では、状態FIELD2は、以前に記述された状態FIELD0およびFIELD1に同様に実行されるかもしれない。他の実施例では、係数c2が０に近いことが予め定められる場合、FIELD2を実行する必要はない。この実施例では、状態FIELD1はFIELD2を回避してFIELD3へ直接移行するかもしれない。
【００７５】
図７は、状態FIELD3の間に行なわれたオペレーションの実施例を示す。状態FIELD3では、繰り返しを数えるためのカウンタn3は、０に最初に設定される。ステップ700では、状態機械は、FT_update3秒の期間を待つ。FT_update3秒の終わりに、水晶振動子の温度T(例えば摂氏度で)は測定される。ステップ710の実施例の中で、|T-T0|>T2度である場合、その後、c3のための現在の推定値はステップ720で更新される。
【００７６】
実施例の中で、ステップ720で、c0、c1およびc2のつい最近の値を与えられて、c3の候補値(candidate values)は、いくつかの最適性基準によれば、測定された周波数および温度のための最良のc3を決定すると判断されるかもしれない。一旦最良のc3が決定されれば、それはc3の以前の推定でフィルタリングされたIIRかもしれない。
【００７７】
ステップ730では、n3は変数maxIterations3と比較される。n3がmaxIterations0に達している場合、次に状態機械は次の状態に移る。n3がmaxIterations3に達していない場合、状態はステップ700に返る。
【００７８】
現在の開示の他の実施例では、他の基準は状態機械がある状態から次の状態にいつ移るか決定するために使用されるかもしれない。例えば、図５、図６および図７に示されるように、繰り返しの所定回数の後にのみ次の状態に移行する代わりに、状態機械は、更新される係数の変更のあるか無しかを検出する状態で次の状態に移行するかもしれない。実施例では、例えば、状態機械は、|c0[n0]-c0[n0-1]|<deltaであってデルタは適切に小さな値を持っている場合、FIELD0からFIELD1へ移行するかもしれない。そのような実施例は現在の開示の範囲内のために熟考される。
【００７９】
１つ又は複数の典型的な実施例において、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、又はそれら任意の組み合わせによって実現されうる。ソフトウェアによって実現される場合、機能は、コンピュータ読取可能媒体上の１つ又は複数の命令又はコードとして格納又は送信されうる。コンピュータ読取可能媒体は、１つの場所から別の場所へのコンピュータ・プログラムの転送を容易にする任意の媒体を含む通信媒体及びコンピュータ記憶媒体両方を含む。記憶媒体は、コンピュータによってアクセス可能である任意の利用可能な媒体であることができる。限定ではなく一例として、そのようなコンピュータ読取可能媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭあるいはその他の光ディスク記憶媒体、磁気ディスク記憶媒体あるいはその他の磁気記憶媒体、又は、コンピュータによってアクセス可能であり、命令又はデータ構成の形式で望まれるプログラム・コードを搬送又は格納するために用いられることができるその他任意の媒体を備えることができる。また、任意の接続が、コンピュータ読取可能媒体と適切に称される。例えば、ソフトウェアが、ウェブサイト、サーバ、又は、同軸ケーブル、光ファイバー・ケーブル、ツイスト・ペア、ＤＳＬ、あるいは例えば赤外線、無線、及びマイクロ波のような無線技術を用いるその他の遠隔ソースから送信される場合、同軸ケーブル、光ファイバー・ケーブル、ツイスト線ペア、ＤＳＬ、又は、例えば赤外線、無線、及びマイクロ波のような無線技術は、媒体の定義内に含まれる。本明細書で用いられるディスク（disk）及びディスク（disc）は、コンパクト・ディスク（disc）（ＣＤ）、レーザ・ディスク（disc）、光ディスク（disc）、デジタル・バーサタイル・ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）、及びブルーレイ・ディスク（disc）を含み、ディスク（disk）は通常データを磁気的に再生するのに対し、ディスク（disc）はレーザによって光的にデータを再生する。上記の組み合わせもまた、コンピュータ読取可能媒体の範囲内に含まれるべきである。
【００８０】
多くの態様および例は記述された。しかしながら、これらの例への様々な変更は可能であり、また、ここに示された法則は、他の態様に同様に適用されてもよい。これらおよび他の態様は以下請求項の範囲内である。
【図１】
2011511575.tif 000006
【図１Ａ】
2011511575.tif 000007
【図２】
2011511575.tif 000008
【図２Ａ】
2011511575.tif 000009
【図２Ｂ】
2011511575.tif 000010
【図３Ａ】
2011511575.tif 000011
【図３Ｂ】
2011511575.tif 000012
【図４】
2011511575.tif 000013
【図５】
2011511575.tif 000014
【図６】
2011511575.tif 000015
【図７】
2011511575.tif 000016
【国際調査報告】
2011511575.tif 000017
2011511575.tif 000018