説明

結晶育成中の実際の引き上げ速度と名目引き上げ速度との間の速度偏差を補正する方法

【課題】チョクラルスキー法による単結晶シリコンの製造において、育成中の実際の引き上げ速度と名目の引き上げ速度との間の速度偏差を補正する方法およびそのための結晶引き上げ機構を提供する。
【解決手段】処理装置において、結晶引き上げ機構が実際の速度で移動した際に結晶引き上げ機構の位置の変化を決定し、前記処理装置上でフィルター関数を実施し、前記処理装置において、検出した位置の変化に基づいてフィルター関数に関する新しいフィルター状態を推定し、前記処理装置において、推定した新しいフィルター状態を用いて結晶引き上げ機構の新しい位置を推定し、位置推定誤差を決定し、前記処理装置において、フィルター関数に関する次のフィルター状態のフィルターゲインを決定し、そして、次のフィルター状態に関する一つ以上の推定されたフィルターゲインを用いて次の期間の間に結晶引き上げ機構の実際の速度を補正する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、概して半導体結晶の育成用の結晶引き上げ機構に関する。より詳細には、本発明は、該結晶の育成中の実際の引き上げ速度と名目の引き上げ速度との間の速度偏差を補正する手段に関する。
【背景技術】
【0002】
半導体電子部品の製造プロセスの多くは、単結晶シリコンに基礎を置いている。従来、結晶引き上げ装置でチョクラルスキー法を実施して、単結晶シリコンのインゴットを製造している。チョクラルスキー法、即ちCZ法は、専用に設計され、断熱材に一部が包含された炉の中に設置されたるつぼ中で高純度シリコンまたは多結晶シリコンを溶融することを含む。るつぼ中のシリコンを溶融した後、結晶引き上げ機構が種結晶を下ろしてシリコン融液と接触させる。次に、該機構は種結晶を引き出して育成中の結晶をシリコン融液から引き上げる。得られた結晶は、実質的に欠陥がなく、それゆえ集積回路などの最新の半導体デバイスの製造に適している。ガリウムヒ素、リン酸インジウムなどの他の半導体も同様の方法で処理し得る。
【0003】
CZ製造法は通常、得られる結晶の品質および均一性を保証するための非常に厳密なプロセス制御要件を有する。特に重要なのは、固有の材料特性に影響を及ぼす、或いは、プロセスの安定性および歩留まりに影響を及ぼすプロセスパラメーターである。引き上げ速度の精度は、これらのプロセスパラメーターの中でも最も重要なパラメーターの一つである。
【0004】
結晶のネック、即ち狭径部の形成後、従来のCZ法では育成結晶の直径を拡大する。これは、自動プロセス制御下で、所望の直径を維持するように引き上げ速度または融液の温度を調整することにより行われる。るつぼの位置を調整して、結晶に対する融液面位置を一定に維持する。引き上げ速度および融液温度を制御することにより、また、融液面位置の減少により、結晶インゴットの本体が殆ど一定の直径で成長する。育成プロセスの間、るつぼが融液を一方向に回転させ、そして結晶引き上げ機構は、その引き上げケーブルまたはシャフトを種結晶および結晶と共に反対方向に回転させる。
【0005】
引き上げ速度は、厳密に制御されたパラメーターである。パーソナルコンピューターまたはプログラム可能な論理制御装置などの制御ユニットが制御されて、融液から結晶を引き上げる電気機械装置を制御する制御信号を提供することにより入力信号に応答する。これらは、一つ以上の電気モーターを含む。
【0006】
引き上げ速度の精度は、一部において、制御ユニットからの速度信号が実際の機械的な結晶引き上げ速度へとどれだけ正確に変えられるかにより決定される。制御信号と結晶との間には、誤差を引き起こし得るいくつもの要素がある。電気モーターを駆動するサーボ電子がドリフトの影響を受け易く、それ故に定期的に校正されなければならないことは周知である。しかし、機械的な部分、特にモーターの速度を結晶引き上げ速度に至るまで低減するギアも、速度誤差の重要な原因である。例えば、殆ど全てのケーブル型CZ引き上げ機は、速度低減の最終段階でウォーム駆動を用いる様式を使用している。
【0007】
ウォーム駆動は、ウォームと、ウォームホイールとも称されるウォームギアとがかみ合うギア配置である。ウォームは、ねじ状の歯車である。ウォームは、第1軸線に関して回転し、通常直角な第2軸線に関してウォームギアの回転を生み出す。ウォーム駆動は、回転速度を低減し、そして出力シャフトに高いトルクを伝えることができる。また、ウォームギアは、自己保持で且つ大きな減速比を可能にするので、重量物を引き上げるのに非常に適している。これらは、ウォームギアがCZ用途で広く採用されている理由の一部である。
【0008】
しかし、ウォームギアは、ウォームギアのスプロケットの歯と、ウォームのねじ山との間の周期的に変わる接触点のために、計画的に正確に一定の減速を生み出すことができない。高品質または新しいギアが用いられた最高の場合において、結果は、ほんの僅かなパーセントのオーダーでの減速比における歯ごとの周期性である。安価または重いウォームギアが用いられた最悪の場合において、結果は、数パーセントの単位で幅広く変わる減速である。
【0009】
残念なことに、機械部品が磨滅することは、CZでの大量生産において現実である。また、多くの引き上げ機が高品質減速ギアを使用していないことも現実である。ギアは、低品質の場合があり、例えば1回転あたりたった30丁のスプロケットの歯を有する。また、結晶が最終重量に達するたびにウォームギアが定期的に過負荷になるので、一部の用途において摩耗が促進される場合もある。これは、ギアの通常の寿命の範囲内で著しい歯の摩耗を生じる。歯の摩耗は、歯の薄厚化またはゆがみ、並びに、ウォームと係合する歯の表面における歯の間のスペースの増大として現れる。結果は、ギアの実際の出力速度の歯ごとの大きな変化である。更に、結晶が引き上げられるにつれて直線的に増加する荷重に起因して歯が不均一に磨滅することにより、減速の著しく体系的な変化が1回転の経路に亘って起こる。
【0010】
図1は、1回転あたり30丁の歯を有するギアにおけるギアの歯の摩耗を説明する。図1は、名目速度に対する出力速度の相関(または校正の割合)を、#1、#2および#3と標識付けされた異なる3回の試験運転についてギアの歯の関数として示す。試験下のギアをサーボモーターにより駆動し、そして校正された値に対して出力速度が測定される。ギアの摩耗は、校正された値に対してオフセットを生み出す。
【0011】
図1に見られるように、結果は、ギアの実際の出力速度の歯ごとの大きな変化である。速度変化は、歯から歯へと全く突然に起こり得る。更に、図1は、結晶が引き上げられるにつれて直線的に増加する荷重に起因して歯が不均一に磨滅するので、1回転の経路に亘る著しく体系的な減速の変化を示す。
【0012】
図2は、新しく、高品質な、1回転あたり60丁の歯を有するウォームギアについてのギアの歯の関数としての、ウォームギアに関する速度の相関を説明する。図2は、良質なウォームギアであっても、高い荷重条件および小さな摩耗により実際の出力速度の変動を生み出すことを説明する。従って、新品で高品質のウォームギアであっても、ウォームギアのスプロケットの歯と、ウォームのねじ山との間で周期的に変化する接触点に起因する出力速度の変化を示す。
【発明の概要】
【発明が解決しようとする課題】
【0013】
ウォームギアの摩耗と品質に関連して出力速度の変化の問題が本明細書中に開示されているが、多数の他の機械的または電気的変化も上述した種類と同様の出力速度の変化を引き起こし得ることに留意しなければならない。そのような出力速度変化を補正できる改善された結晶引き上げシステムに対する要求がある。
【図面の簡単な説明】
【0014】
【図1】30丁の歯を有するギアについて、摩耗したウォームギアの速度の相関を示す。
【図2】新しくて高品質な、1回転あたり60丁の歯を有するウォームギアについての速度の相関を示す。
【図3】例示的な半導体結晶育成装置のブロック図である。
【図4】半導体結晶育成装置において速度の偏差を補正する方法を示すフローチャートである。
【図5】半導体結晶育成装置において速度の偏差を補正する代替的な方法を示すフローチャートである。
【発明を実施するための形態】
【0015】
従来のチョクラルスキー(CZ)引き上げシステムは、名目引き上げ速度からの実際の引き上げ速度の偏差の補正について限られた機能しか有していなかった。そのような従来の引き上げシステムは、減速ギアまたはウォームギアに起因して引き起こされる短期の(即ち、短時間分の)出力速度変化を補償する機能を有していなかった。最も標準的なCZシステムは、名目出力速度と実際の出力速度との間の偏差の存在を無視している。しかし、そこにはサーボモーターの代わりに、サーボドリフトの可能性を排除した、デジタル制御された高精度モーターを使用したシステムがある。残念ながら、この解決策は減速ギア等の他の要素により生じる速度の偏差を検出および補正することができない。更に、これはハードウェアの変更を必要とするので、高価な解決策でもある。
【0016】
機械的に引き起こされる速度の偏差の問題は、外側位置のエンコーダーを使用して実際の出力速度を測定し、名目速度と実際の出力速度とを比較する一つの提案で扱われた。その結果、言及した提案は、サーボドリフトと減速ギアにおける機械的な問題とが組み合わされた影響により生じる実際の速度の偏差を検出する。言及した提案は、移動平均アルゴリズムを使用し、周期的な、長期の平均速度の偏差を検出および補正する。
【0017】
しかし、現在まで、短期の速度誤差に対応しようとする試みは無かった。CZシステムにおいて最終減速機として一般に使用されているウォームギアは、常に歯ごとの速度変調を生じる。新品の高精度ギアにおいてはこの影響は比較的小さくすることができるが、それは常に存在し、そして安価または過負荷なギアが用いられた場合に著しくなり得る。また、高品質ギアを用いたとしても、重度の使用の間にギアが磨滅した場合には一般的な問題であり、そのことは大量のCZ製造において現実である。
【0018】
残念ながら、言及した提案は、単純な移動平均に基づいているので、そのような短期の速度誤差の検出および補正に適していない。そのような移動平均の提案は、短い平均時間で使用されると、重度の数値的不安定に悩まされる。この不安定に対する一つの理由は、エンコーダーの分解能から生じるデジタルノイズである。例示的なCZシステムにおいて、ギアの歯あたりのエンコーダーカウントの数は比較的小さい。言及した移動平均アルゴリズムは、エンコーダーの分解能に起因するデジタル化ノイズを最小化するために比較的大きい平均間隔を要求し、それゆえ、比較的大きいサンプリング速度で動作する。
【0019】
しかし、高いサンプリング速度および高い分解能のエンコーダーの使用が一体になったとしても、言及した提案は、未だ十分には機能しない。一つの理由は、言及した提案は、速度誤差を長期間に亘って平均し、名目速度が運転中に上下に著しく変化する必要がある場合に連続して機能しない。CZシステムにおいては、直径の制御のために、これは通常の事例である。更に、提案した言及により使用されるモデルは、入力/出力速度比を変更することについて表現する期間を欠いている。言及した提案は、ゆっくり変化する定数のように入力−出力速度比のみをモデル化する。従って、高いサンプリング速度および高分解能エンコーダーと共に用いたとしても、提案は、ウォームギア減速機などの機械的および電気的装置に存在する突然の出力速度の誤差の検出および補正に未だに適していない。
【0020】
ここで図3を参照すると、例示的な半導体結晶育成装置300のブロック図が示されている。装置300は、制御ユニット302と、ヒーター電源304と、結晶育成チャンバ306とを含んでいる。装置300は、結晶駆動ユニット308と、結晶引き上げケーブル310と、るつぼ駆動ユニット312と、るつぼ駆動シャフト314とを更に含んでいる。
【0021】
チャンバ306の内部に含まれているのは、融液318を含有するるつぼ316とヒーター320である。図3の説明として、融液318から半導体結晶322が形成されている。制御ユニット302は、ヒーター電源304と結びついてヒーター電源304を制御する。ヒーター電源304を制御することにより、融液318の温度は、半導体結晶322の制御された成長を可能にするように制御される。融液の温度の更なる制御のために、熱制御装置を同様に付加し得る。
【0022】
結晶駆動ユニット308が動作して、中心軸線324に沿って結晶引き上げケーブル310を引き上げる。また、結晶駆動ユニット308が動作して、中心軸線324に関して結晶引き上げケーブル310を回転させる。図3において、反時計回りの回転が示されているが、時計回りの回転に置き換えてもよく、結晶駆動ユニット308の適当な制御により双方を利用し得る。結晶引き上げケーブル310の回転および運動は、結晶322の同様な回転および運動を引き起こす。
【0023】
この例示的な形態中の結晶駆動ユニット308は、電気モーター334、ウォーム駆動部335およびエンコーダー337を含む。電気モーター334が動作して、結晶引き上げケーブル310および結晶322を引き上げる。別の電気モーターが結晶引き上げケーブル310および結晶322を回転させる。電気モーター334を含む結晶駆動ユニット308は、制御ユニット302から制御ライン326上を供給される信号により制御される。制御ライン326は、デジタルデータまたはアナログ信号を伝達するための導体のデータバスまたは群でも良い。特に、制御ユニット302は、モーター信号を提供して電気モーター334が結晶引き上げケーブル310および結晶322を引き上げる速度を制御する。一形態におけるモーター信号は、モーターの引き上げ速度に比例する電圧である。
【0024】
結晶引き上げケーブル310および結晶322が上昇するにつれて、エンコーダー337が、電気モーター334により結晶が下降または上昇した距離を示すエンコーダー信号を作り出す。信号は、移動した角距離などの角距離を表すデジタルデータまたはデジタル値の形式にすることができ、該角距離は電気モーター334により移動させた角距離の一部であり、その移動した距離はウォームギア335により低減される。代案として、エンコーダー信号は、エンコーダーカウントとして参照されても良く、例えば、エンコーダーにより決定される移動距離を表すデジタルデータを表示する。エンコーダー信号は、制御ライン326上の制御ユニット302へ供給される。
【0025】
ウォーム駆動部335は、電気モーター334と結晶引き上げケーブル310との間に位置する。ウォーム駆動部335は、ウォームがウォームギアとかみ合うギア配置である。ウォームは、ねじ形状をした歯車である。ウォームは、電気モーター334により第1軸線に関して回転し、中心軸線324などの通常直角な第2軸線に関してウォームギアの回転を生み出す。ウォーム駆動部は、電気モーター334からの回転速度を低減し、結晶引き上げケーブル310に接続された出力シャフトへと高トルクを伝える。即ち、電気モーター334とウォーム駆動部とが動作して結晶322を中心軸線324に沿って動かす。他の機械的または電気機械的駆動要素は、モーター334と結晶引き上げケーブル310との間に配設し得る。これらの要素の全ては、摩耗および歪、並びに、欠陥の影響を受け易く、また、モーター334により結晶引き上げケーブル310に与えられる引き上げ速度の偏差を引き起こし得る。
【0026】
同様に、るつぼ駆動ユニット312が動作して、るつぼ駆動シャフト314を中心軸線324に沿って動かすと共に、中心軸線324に関してるつぼ駆動シャフト314を回転させる。図3において、時計回りの回転が示されているが、反時計回りの回転に置き換えてもよく、るつぼ駆動ユニット312の適当な制御により双方を利用し得る。るつぼ駆動シャフト314の回転および運動は、るつぼ316の同様な回転および運動を引き起こす。るつぼ駆動ユニット312は、るつぼ駆動シャフト314を牽引および回転するための一つ以上の電気モーターまたは他の装置を含む。るつぼ駆動ユニット312は、制御ユニット302から制御ライン328上を供給される信号により制御される。
【0027】
チャンバ306は、一つ以上のセンサーを含む。図3の例示的な形態において、これらは、カメラ330と温度センサー332とを含む。カメラ330は、チャンバの覗き窓の近傍に取り付けられ、融液318の液面を観察するように向けられている。カメラ330は、カメラ画像を示す信号を制御ライン336上に作り出し、該信号を制御ユニット302へと供給する。温度センサー332は、チャンバ306内の温度を検出し、そして温度を示すデータを制御ライン338上の制御ユニット302へと供給する。
【0028】
図示した形態の制御ユニット302は、一般に、中央演算処理装置(CPU)340、メモリ342およびユーザーインターフェース344を含む。CPU340は、マイクロプロセッサ、デジタル信号プロセッサ、デジタル論理関数またはコンピュータなどの任意の適当な処理装置にし得る。CPU340は、メモリ342に保存されたデータおよび指示に従い動作する。更に、CPU340は、制御ライン326,328,336,338などの上の、データおよびセンサーから受け取った他の情報を用いて動作する。また、CPU340が動作して制御信号を作り出し、ヒーター電源304、結晶駆動ユニット308およびるつぼ駆動ユニット312などの半導体結晶育成装置300の一部を制御する。CPU340は更に、内臓タイマーを用いたリアルタイム関数を実行し、或いは、CPU340または別の装置により作り出されたクロック信号に応答しても良い。
【0029】
メモリ342は、半導体メモリ、磁気または光学ディスク、或いは、これら若しくは他の記憶装置の組合せの何れかなどの任意のタイプのダイナミックまたはパーシスタントメモリにし得る。いくつかの用途において、メモリ342は、半導体結晶育成装置300の他の要素に関してCPU340に特定の指定関数を実行させるデータを含有するコンピュータ読み取り可能な記憶媒体を含んでも良い。例えば、メモリ342中に保存されたデータおよび指示は、CPU340に、エンコーダー337からの入力情報を用いてモーター334の引き上げ速度を制御する制御プログラムを実行させても良い。制御プログラムは、高調波トラッキングフィルターまたは多項式トラッキングフィルターなどのフィルター関数を実行しても良い。現在のフィルター状態、過去のフィルター状態および次のまたは後のフィルター状態などのフィルター状態を規定するデータは、メモリ342に保存される。
【0030】
ユーザーインターフェース344は、半導体結晶育成装置300のユーザー制御およびモニタリングを可能にする。ユーザーインターフェース344は、操作情報を使用者に提供する任意の適当な表示部を含んでも良く、また、キーボードまたはスイッチのようなものを含んで半導体結晶育成装置300のユーザー制御および駆動を可能にしても良い。
【0031】
半導体結晶育成装置300は、チョクラルスキー法に従った単結晶半導体インゴットの育成を可能にする。このプロセスによれば、シリコンなどの半導体材料がるつぼ316中に設置される。ヒーター電源304がヒーター320を駆動し、シリコンを加熱して溶融させる。ヒーター320は、シリコン融液318を液体状態に維持する。標準的なプロセスに従い、種結晶346が結晶引き上げケーブル310に取り付けられる。種結晶346は、結晶駆動ユニット308により融液318中に下ろされる。更に、結晶駆動ユニット308は、結晶引き上げケーブル310および種結晶346を例えば反時計回りなどの第1方向に回転させ、一方、るつぼ駆動ユニット312は、るつぼ駆動シャフト314およびるつぼ316を例えば時計回りなどの反対方向に回転させる。また、るつぼ駆動ユニット312は、結晶育成プロセス中に要求に応じてるつぼ316を上昇または下降させる。例えば、結晶の成長に伴い融液318が減少すると、るつぼ駆動ユニットが上昇して融液面位置を実質的に一定に補償および維持する。このプロセスの間、ヒーター電源304、結晶駆動ユニット308およびるつぼ駆動ユニット312は全て制御ユニット302の制御下で動作する。
【0032】
本形態に従い、制御ユニット302が動作して、結晶駆動ユニット308が結晶に適用した引き上げ速度の偏差を検出し、該偏差を補正する。より詳細には、第一形態の制御ユニット302が、エンコーダー337の位置をトラッキングするために運動学的モデルフィルターの再帰アルゴリズムを実行する。エンコーダー位置が、エンコーダー337により作り出され、制御ユニット302へと供給されたデジタルデータにより表され、結晶駆動ユニット308により結晶322が上昇または下降した距離を表す。別の形態において、制御ユニット302が高調波成分を有するフィルターに基づくフェージング平均トラッキングフィルターを実行する。どちらの形態も、名目または所望の引き上げ速度と、実際の引き上げ速度との間の偏差を著しく低減し、或いは、除去するのに使用し得る。
【0033】
第一形態において、離散二次多項式がフィルターモデルとして選択される。多項式は、エンコーダーの位置を名目位置の関数として現在位置の周囲の近隣位置に近似する。選択された多項式は、下記式:
=INT(a+bx+cx) (1)
を有し、式中、a,b,cはフィルター状態を表し、xは名目エンコーダー位置を表し、そしてYは推定した離散エンコーダー位置(discrete encoder position)を表す。
【0034】
INT関数は、その引数の整数値を返し、それは実数になり得る。INT関数は、エンコーダーの表示をモデルにしているので、ここで使用される。エンコーダーの表示は、実際の位置の離散値である。ここでINT関数を使用しないと、推定位置とエンコーダーの表示との間の差が1エンコーダーカウント未満の場合に、人為的なフィルターの更新に起因してノイズが取り込まれる。いくつかの用途において、フィルターモデル中でのINT関数の使用は、精度にとって重要であり得る。エンコーダーカウントは、周期的に、例えば毎秒1回サンプリングされる。その結果、エンコーダー337により提供されたパルスが、積分工程で増加する。パルス(毎秒1回受信)の間にはエンコーダー信号の変化は無い。しかし、サンプリングしたパルスの間では、結晶駆動ユニット308が前進し、そして実際の位置が変化する。フィルターは、エンコーダーからのサンプリング位置と、予測位置との間の差を算出する。INT関数の使用は、フィルター出力の一次導関数、即ち式(1)のパラメーターb中への特殊形式のデジタルノイズの取り込みを防止する。このノイズは、エンコーダーカウントの変化なしにサンプリング間隔の間のフィルターの更新により取り込まれ得る。INT関数の使用なしに、フィルター状態は、次のエンコーダーサンプルを受け取るまで明らかに一定の位置に連続的に更新され、一次導関数を人為的に緩和させ、その後、次のエンコーダーカウント増分へ跳ね上がる。
【0035】
フィッティング方程式(1)に関する再帰アルゴリズムをエンコーダーカウントデータへ展開するために、以下の加重最小二乗法誤差アンザッツ(ansatz)
を使用する。二乗誤差の和は、以下の方程式:
E=Σ−(x0−xi)/L*(Ye,i−Y i=0,−1,−2..(2a)
により表され、式中、xは現在のエンコーダー位置を表し、xはサンプリング間隔iにおけるエンコーダー位置を表し、Lはフィルター定数(代表長さ)を表し、Yはサンプリング間隔iにおけるエンコーダー表示を表し、Ye,iはサンプリング間隔iにおけるエンコーダー近似を示す。
【0036】
このモデルにおいて、個別の誤差が重み付けされ、加重関数が、現在位置からの距離に応じて過去のデータを指数関数的に次第に消す。このアンザッツは、周知のα−β−γフィルターに対していくつかの類似点を有するフィルターアルゴリズムをもたらす。しかし、フィルターゲインにおける差に加えて、最も重要な差は、フィルター定数が、この場合には一つのギアの歯の特定の部分である代表長さとして表されるので、現在のフィルターのチューニングが、現在の用途に対して簡単になることである。それとは対照的に、α−β−γフィルターのマニューバーインデックス(maneuver index)をこの用途の臨界代表長さに関連づけることは、まして直感的に理解できない。
【0037】
モデル定数{a,b,c}に対してEを導入することは、方程式系をもたらす。
0=d/da(E) (2b)
0=d/db(E) (2c)
0=d/dc(E) (2d)
【0038】
この方程式系を解くことは、モデル定数{a,b,c}をもたらす。
【0039】
方程式(1)のモデルは、再帰アルゴリズムに展開され、この加重最小二乗法は、全ての過去のエンコーダー位置データに適合し、実際には、最小の処理時間および記憶装置で各サンプリング間隔において実施できる。
【0040】
この方法を選択することにより、以下の利益が得られる。第一に、単純移動平均の代わりに、二次多項式近似に基づく最小二乗適合を使用することにより、フィルターは、モーター速度の急激な変化を正確に追随できる。このような急激な変化は、例えば図1および2において説明される。移動平均近似は、このような急激な変化を正確に追随および補正できない。
【0041】
第二に、サンプリング時間とは対照的に距離に応じて過去のデータを次第に消す加重関数を使用することにより、フィルター近似は、ギアの歯または他の誤差源により生じる速度変調の代表長さに関して常に実施される。従って、フィルターチューニングは理解し易い。推定の精度は、瞬間的な、或いは、突然の引き上げ速度の変化に関係なく維持される。
【0042】
第三に、離散誤差に明示的に最小二乗適合を実施することにより、この方法はデジタル化ノイズを最小化する。このことは、サンプリング間隔あたりのエンコーダーパルスの数に関係なくフィルターが正確に動作することを確実にする。
【0043】
方程式(1)のモデルは、前のフィルター状態と、その後に移動した名目距離Δxとに基づいて新しいフィルター状態を推定することにより動作する再帰アルゴリズムに展開され、その後、それら自身がΔxの関数である推定誤差およびフィルターゲインに基づいてフィルター状態を更新する
【0044】
上述したように、この方法はα−β−γフィルターに多少似ている。一つの差異点は、方程式(1)のモデルは測定ノイズを含まず、そのことは、本用途におけるエンコーダーの表示は実質的にノイズがないので意味のある条件であり、即ち、真値と離散値との間の差をノイズとして処理する場合に、α−β−γフィルターおよび類似のフィルターに対する前提であるホワイトガウスノイズにならない。正確なフィルターゲインを見出すのがより複雑な課題であるα−β−γフィルターとは対照的に、その方法は、歯と歯の間の距離のような特徴的なギア配置に単純に基づいて、フィルターゲインの簡単な選択を可能にする。
【0045】
図4は、半導体結晶育成装置における速度の偏差を補正する方法を説明するフローチャートである。図4の方法は、例えば制御ユニット302により実行し得る。CPU340は、指示およびデータをメモリ342から読み出し、或いは、制御ライン326上で受け取ったエンコーダー337からの信号などの制御信号からデータを受け取る。制御信号は、エンコーダー337により作り出された角度位置を線形位置へ変換することなどにより前処理されていても良い。更に、CPU340は、受け取ったデータおよび指示に対し、データを処理して図4に示す方法の工程および他の操作を達成することにより応答する。更に、CPUはメモリ342中に保存する出力データを作り出し、また、制御ライン326に印加されて電気モーター334が結晶引き上げケーブル310および結晶322を引き上げる速度に制御するモーター信号などの制御信号を作り出す。
【0046】
方法は、ブロック400から始まる。ブロック402において、CPU340が処理ループを入力し、そして、メモリ340から現在のモーター信号Sn−1および新しい名目モーター信号Sを読み出す。現在のモーター信号は、フィート/秒で表される特定の線速度、或いは、ラジアン/秒で表される角速度でモーター334を動作させるのに適するように電圧をコード化するデジタルデータでも良い。データは、必要に応じて角度領域と線形領域との間で変換され、処理オーバーヘッドまたは必要メモリを低減する。更に、ブロック402において、処理装置が現在のエンコーダー位置Yを読み出す。現在のエンコーダー位置は、エンコーダー337から受け取られた後にメモリ342に保存され、或いは、制御ライン326上のエンコーダー337により提供された現在の値が読み取られて処理され得る。図4は、リアルタイム間隔Δtあたり一回実行される再帰アルゴリズムを説明する。
【0047】
ブロック402では、Δxの値が、
Δx=Sn−1Δt (3)
として算出される。
【0048】
Δxは、最後のサンプリング間隔の間に移動した名目エンコーダーカウント距離である。Δxは、非離散的な値である。これは、最後の名目モーター信号Sn−1(エンコーダーカウント/時間の単位を有する)およびサンプリング時間間隔Δtに基づいて算出される。サンプリング時間間隔Δtは、例えばプログラムされた時計回路または関数の経過によるなど、CPU340により決定される。名目モーター信号Sn−1は、結晶322の直径を制御するための直径制御手順などの別のアルゴリズムの出力でも良い。
【0049】
ブロック406において、新しいフィルター状態が、以下の方程式を用いて推定される。
e,n=an−1+bn−1Δx+cn−1Δx (4a)
e,n=bn−1+2n−1Δx (4b)
e,n=cn−1 (4c)
【0050】
以前に作成した、各サンプリング時間のフィルター係数a,bおよびcは、メモリ342の記憶域から読み出される。
【0051】
ブロック408において、CPU340が、現在の時間サンプリング間隔:
e,n=INT(a) (5)
に関して、フィルター係数aに対してINT(x)関数を用いて新しいエンコーダー位置を推定する。
【0052】
ブロック410において、CPU340がエンコーダー推定誤差:
=Y−Ye,n=INT(Y−a) (6)
を算出する。
【0053】
ブロック412において、CPU340が以下の方程式の系:
δ=e−Δx/L
=1−δ (7a)
=3/2(1−δ)2*(1+δ)/Δx (7b)
=1/2(1−δ)/Δx (7c)
を用いて次のフィルター更新用のフィルターゲインを算出する。
【0054】
ブロック414において、CPU340がフィルター状態を以下のように更新する。
=ae,n+g (8a)
=be,n+g (8b)
=ce,n+g (8c)
【0055】
各サンプリング間隔において、aに関する新しい値が推定された現在位置を表し、それは、サブエンコーダー精度を有する非離散的な値である。同時に、各サンプリング間隔において、bは現在の名目速度に対する実際の速度の比であり、それは、理想的には1であるが、ギア欠陥、サーボドリフト等の結果、1からずれる。ブロック416に示される工程において、bを用いて実際にモーターに供給される信号を補正する。
【0056】
=b (9)
は、次の時間間隔用の名目モーター信号であり、そして、Sは、印加される実際のモーター信号である。この実際に印加されるモーター信号Sは、機械的と電気的の何れの欠陥に関しても補正され、このことは、モーター信号とエンコーダー測定値との間のどこかに速度誤差を生じる。最後に、補正されたモーター信号Sは、モーターに印加され、アルゴリズムは次のリアルタイム間隔を待つ。補正されたモーター信号Sに応えて、次にくる時間間隔の間にモーター速度が増加または減少し、摩耗したギアなどの何れの機械的または電気的な異常も補正する。
【0057】
従って、説明した方法は、位置の変化Δxを検出し、そして、その値を用いて所望または名目のモーター速度に対する現在の実際のモーター速度の比を決定する。その比を使用して、方法は、次の時間間隔の間に適用されるべき実際のモーター速度を決定し、そして、その実際のモーター速度を用いてモーター速度信号を作り出す。
【0058】
図5は、半導体結晶育成装置における速度の偏差を補正する方法の代替的な形態を説明するフローチャートである。説明される方法は、速度の偏差が部分的または実質的に高調波であるか、或いは、事実上周期的である用途に特に有用である。
【0059】
多くの計装用途が、その上に重ね合わされる高調波変調を有する信号の測定を含む。従来、これは複数の変調期間を超えてフィルター時定数で信号を時間平均化することにより処理されている。しかし、この時間平均化法は、完全に変調を除去することはできない。この従来の方法は、変調を所定の度合いまで低減することができるのみである。平均化フィルターの時定数を長くすると、フィルター出力中の残留変調が減るが、真信号の変化に対するフィルターの応答が遅くなる。多くの場合に、遅いフィルター応答は容認できず、そのようなフィルターは常に残留変調と応答時間との間のバランスを取らなければならない。
【0060】
幸いにも、多くの場合、変調の周期性は他のシステムパラメーターから周知である。例えば、図2は、新しく、高品質な、1回転あたり60丁の歯のウォームギアについてのスプロケットの歯に関する出力速度相関を示す。新品で、高品質なウォームギアでも、意図的に、スプロケットの歯とウォームのねじ山との間で周期的に変化する接触点により生じる出力速度変化を示す。出力速度相関は、ウォームギアの回転周波数により決定される周波数を有し、これは周知である。
【0061】
そのような場合において、高調波成分を有するフィルターモデルに基づくフェージング平均トラッキングフィルターを展開することが可能である。このようなフィルターは、効果的に残留変調を抑制し、同時に、短いフィルター時定数を可能にして、迅速で正確なフィルター応答をもたらす。周波数が正確に知られており、且つ、変調が純粋に高調波である場合には、フィルターはそのような残留変調さえも除去し得る。
【0062】
フェージング平均最尤方程式系は、定数と一つの高調波成分とを有するフィルターモデルについて展開されている。この方程式系は、図3のCPU340のような処理装置中での効果的な計算用のコンピュータープログラムで容易に実行できる、非常に少ない算術演算で再帰アルゴリズムへと更に変換される。
【0063】
フィルター入力は、以下の高調波変調成分と重ね合わされた、ゆっくりと変化する、或いは、殆ど一定の部分の重ね合わせとしてモデル化される。
y=a−b sin(ωk)+c cos(ωk) (10)
式中、ω=2π/Lであり、ここでLは高調波成分の周期長である。
【0064】
図5は、このフィルターの実施を説明する。このフィルターへの入力信号は、図3の例示的な形態においては、エンコーダー337からのエンコーダー信号である。この信号は、概して、方程式(10)のようにその上に与えられた高調波または周期的な変調を有し、従って、このフィルターにおける処理の影響を受け易い。図5のプロセスは、例えば予め定めたタイマー間隔Δtの経過後など、周期的に繰り返されても良い。タイマー間隔は、秒または分のオーダーである。タイマー間隔の経過後、方法がブロック500において始まる。
【0065】
ブロック502において、現在のモーター信号Sn−1および名目モーター信号Sを、例えばメモリ342などのメモリに保存されたデータを読み取ることにより得る。更に、ブロック502において、現在のエンコーダー位置Yを、例えばエンコーダー337からの出力を読み取ることにより得る。ブロック504において、現在の時間増分の間にモーターが移動した予測距離であるΔxが、現在のモーター信号Sn−1と現在の時間増分との積として算出される。
【0066】
ブロック506において、新しいフィルター状態が、図に示す関係を用いて推定され、ここで、a,bおよびcは、方程式(10)中の係数であり、Lは、高調波成分の周期長である。ブロック508において、現在のエンコーダー位置Ye,nが推定される。説明した形態において、現在のエンコーダー位置は、新しいフィルター状態のフィルター係数の和に関する整数関数の値を求めることにより推定される。この例においては、第1フィルター係数ae,nおよびce,nを使用してエンコーダー位置を推定する。
【0067】
ブロック510において、この方法は、推定したエンコーダー位置Ye,nと現在のエンコーダー位置Yとの間の差として推定誤差を決定する。
【0068】
ブロック512において、高調波フィルターゲインg,gおよびgが、図に示す関係を用いて算出され、ここでNは有効な点、即ちフィルター定数である。その後、ブロック514において、前のフィルター状態、算出された高調波フィルターゲインおよび推定誤差を用いてフィルター状態が更新される。
【0069】
補正されたモーター信号は、ブロック516およびブロック518で決定され、補正されたモーター信号Sはモーターへと供給される。その後、プロセスは、次のタイマー間隔Δtの経過を待つ。補正されたモーター信号が、次のタイマー間隔の間にモーター速度を設定し、そのタイマー間隔の間の結晶の引き上げ速度を制御する。
【0070】
方程式の実施と、受け取ったデータで動作して出力制御信号を作り出すデータ処理システムを使用した本明細書に記載のプロセスとは、フィルター設計、制御システムおよびデータ処理の当業者の範囲内である。更に、方程式および本明細書に記載の他の関係は、容易に他のシステム、他の入力および他の出力に採用し得る。
【0071】
前述から、現在の形態が、結晶引き上げ機構における名目引き上げ速度からの引き上げ速度の偏差の補正について改良されたシステムおよび方法を提供することが理解される。非最適または摩耗要素に起因する偏差は、実質的に、或いは、完全に除去される。結果は、より一層正確に制御された引き上げ速度である。結晶引き上げプロセスにおいて、引き上げ速度は、直径制御や結晶品質等の他の品質因子に影響を与えるので、結果は、ハードウェアの追加なしに著しく改良されたプロセスである。システムおよび方法は、現存する実装上の従来のハードウェアを用いて、結晶引き上げ装置の制御ソフトウェアを改変することにより実施し得る。
【0072】
従って、前述の詳細な説明は、限定ではなく説明とみなされることを目的としており、そして、均等物を含む以下の特許請求の範囲は、本発明の精神および範囲を規定することを目的としていることが理解される。
【0073】
簡単化のために、用語「制御ユニット」、「CPU」、「処理装置」および「エンコーダー」を、明細書および特許請求の範囲で使用し、上述した機能を発揮するのに使用し得るハードウェアおよび/またはソフトウェアを広く参照する。何れの適当なソフトウェア言語、並びに、アナログまたはデジタルの、現在存在し或いは今後開発される何れの適当なハードウェアも使用し得ることに留意することは重要である。具体化されたコンピュータ読み取り可能なプログラムコードをその中に有し、コンピュータで使用可能な媒体を使用して、上述した関数を実行することができ、また、代替的に、上述した関数は、ハードウェアのみで実施されることができる。更に、各要素に関連する機能性を他の要素と組み合わせ、或いは、他の要素に分散させても良い。また、上述した要素の一部は、全ての形態に含まれる必要はない。

【特許請求の範囲】
【請求項1】
結晶引き上げ機構中の結晶引き上げモーターの速度の偏差を補正する方法であって、該方法は、
処理装置において、結晶引き上げ機構が実際の速度で移動した際に結晶引き上げ機構の位置の変化を決定し、
前記処理装置上でフィルター関数を実施し、
前記処理装置において、検出した位置の変化に基づいてフィルター関数に関する新しいフィルター状態を推定し、
前記処理装置において、推定した新しいフィルター状態を用いて結晶引き上げ機構の新しい位置を推定し、
前記処理装置において、位置推定誤差を決定し、
前記処理装置において、フィルター関数に関する次のフィルター状態のフィルターゲインを決定し、そして、
前記処理装置において、次のフィルター状態に関する一つ以上の推定されたフィルターゲインを用いて次の期間の間に結晶引き上げ機構の実際の速度を補正することを含む方法。
【請求項2】
請求項1の方法であって、前記フィルターゲインと前記推定した新しいフィルター状態とを用いて新しいフィルター状態を決めることを含む方法。
【請求項3】
請求項2の方法であって、新しいフィルター状態の決定が、結晶引き上げ機構の推定位置を表す第一の値と、結晶引き上げ機構の所望の速度に対する結晶引き上げ機構の現在の実際の速度の比を表す第二の値とを決定することを含む方法。
【請求項4】
請求項3の方法であって、結晶引き上げ機構の実際の速度の補正が、前記処理装置において、前記第二の値と、結晶引き上げ機構の所望の速度を表す信号値とを組み合わせて次の時間間隔の結晶引き上げ機構の実際の速度を表す信号値を作り出すことを含む方法。
【請求項5】
請求項1の方法であって、結晶引き上げ機構の実際の速度の補正が、
補正されたモーター信号を、るつぼから結晶インゴットを引き上げるモーターに供給し、
前記モーターが、前記補正されたモーター信号に応答して、該補正されたモーター信号の電圧値に比例する補正された速度で前記結晶インゴットを引き上げることを含む方法。
【請求項6】
請求項1の方法であって、結晶引き上げ機構の新しい位置の推定が、結晶引き上げ機構の現在の位置を表す値の整数部のみを決定することを含む方法。
【請求項7】
結晶引き上げ機構中の結晶引き上げモーターの速度の偏差を補正する方法であって、該方法は、
処理装置において、現在の時間間隔の間に、現在の実際のモーター速度における結晶引き上げ機構の位置の変化を決定し、
前記処理装置において、位置の変化を用いて所望のモーター速度に対する現在の実際のモーター速度の比を決定し、
前記処理装置において、前記比を用いて次の時間間隔の実際のモーター速度を決定し、そして、
前記次の時間間隔の実際のモーター速度を用いてモーター速度信号を作り出すことを含む方法。
【請求項8】
請求項7の方法であって、
決定された位置の変化を用いて前記処理装置により実施されるフィルター関数の新しいフィルター状態を推定し、
推定した新しいフィルター状態を用いて前記フィルター関数のフィルター状態を更新し、更新されたフィルター状態は前記比に対応するフィルター係数を含むことを更に含む方法。
【請求項9】
請求項7の方法であって、モーター速度信号の作成が、前記次の時間間隔の実際のモーター速度に比例する電圧を作り出すことを含む方法。
【請求項10】
結晶引き上げ機構であって、
受け取ったモーター信号に応答して、該モーター信号に関連した速度でるつぼから結晶を引き上げるモーターと、
前記モーター信号を作り出す制御ユニットとを備え、
前記制御ユニットは、メモリと、該メモリに保存されたデータおよび指示と連動して動作する処理装置とを含み、時間間隔の間に処理装置に以下の動作:
最後のサンプリング間隔の間に移動した名目モーター距離を決定し、
前記移動した名目モーター距離を用いてフィルター関数のフィルター状態を推定し、
前記移動した名目モーター距離を用いて推定誤差およびフィルター関数のフィルターゲインを算出し、
前記推定誤差およびフィルターゲインを用いて次の時間間隔で使用するフィルター関数のフィルター状態を更新し、更新されたフィルター状態はモーター信号補正を規定するフィルター係数を含み、そして、
前記モーター信号補正を用いて時間間隔のモーター信号を作り出す、
を実行させる結晶引き上げ機構。
【請求項11】
請求項10の結晶引き上げ機構であって、前記メモリに保存された指示を更に備え、前記処理装置に、前の時間間隔のフィルター状態を用いて新しいモーター位置を推定させる結晶引き上げ機構。
【請求項12】
請求項11の結晶引き上げ機構であって、前記処理装置に、前の時間間隔のフィルター係数の整数関数を求めることで新しいモーター位置を推定させる指示を更に備える結晶引き上げ機構。
【請求項13】
請求項10の結晶引き上げ機構であって、
モーターまたは結晶の位置を表すエンコーダー信号を作り出すエンコーダーを備え、
前記制御ユニットは、各時間間隔の間に前記エンコーダー信号をサンプリングし、
前の時間間隔のフィルター係数と、時間間隔の間にサンプリングされたエンコーダー信号により示される位置との間の差の整数関数を求めることで、前記処理装置に前記推定誤差を算出させる指示を更に備える結晶引き上げ機構。
【請求項14】
請求項10の結晶引き上げ機構であって、次の時間間隔の新しいフィルター係数を、推定したフィルター状態の推定したフィルター係数と、算出した推定誤差および時間間隔のフィルターゲインの積との和として決定することにより、前記フィルター状態を前記処理装置に更新させる指示を更に備える結晶引き上げ機構。
【請求項15】
結晶引き上げ機構中の結晶引き上げモーターの速度の偏差を補正する方法であって、該方法は、
処理装置において、結晶引き上げ機構がある速度で移動している際の結晶引き上げ機構の位置を検出し、
前記処理装置において、前記速度の偏差の周波数を決定し、
前記偏差の周波数に基づき、前記処理装置における更新ベクトルを決定し、
前記処理装置で、保存されているフィルターパラメータを読み出すことを含んでフィルター関数を実行し、
前記処理装置において、読み出された保存されているフィルターパラメータを用いて予測されたモデルパラメータを算出し、
前記処理装置において、前期予測されたモデルパラメータと、結晶引き上げ機構の検出された位置との間の偏差を決定し、
前記処理装置において、前記偏差を前記更新ベクトルと組み合わせることにより誤差ベクトルを決定し、
前記処理装置において、前記予測されたモデルパラメータと、前記誤差ベクトルとを組み合わせることにより新しいモデルパラメータを決定し、そして、
前記新しいモデルパラメータを保存することを含む方法。
【請求項16】
結晶を引き上げるように配置されたモーターを有する結晶引き上げ機構中の結晶引き上げモーターの速度を制御する方法であって、
前記機構は、高調波変調成分と重ね合わされた、ゆっくりと変化する、或いは、殆ど一定の動きを与え、該方法は、
現在のモーター信号、名目モーター信号および結晶引き上げ機構の現在位置を規定する現在のエンコーダー位置を決定し、
時間増分の間に結晶引き上げ機構が移動した名目距離を決定し、
前記名目距離、過去のフィルター状態および高周波成分の周期長に基づき高調波フィルターの新しいフィルター状態を推定し、
エンコーダー位置を推定し、
推定したエンコーダー位置および現在のエンコーダー位置に基づき推定誤差を算出し、
フィルター定数および前記高調波成分の周期長に基づき前記高調波フィルターのフィルターゲインを算出し、
前記高調波フィルターの推定された新しいフィルター状態、算出されたフィルターゲインおよび算出された推定誤差を用いて前記高調波フィルターのフィルター状態を更新し、
少なくとも一つのフィルター係数を用いて次の時間間隔の新しいモーター信号を決定し、そして、
前記新しいモーター信号をモーターに供給して、次の時間間隔用に該モーターの速度を調整することを含む方法。
【請求項17】
請求項16の方法であって、エンコーダー位置の推定が、新しいフィルター状態のフィルター係数の和に関する整数関数を求めることを含む方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2011−57545(P2011−57545A)
【公開日】平成23年3月24日(2011.3.24)
【国際特許分類】
【外国語出願】
【出願番号】特願2010−202391(P2010−202391)
【出願日】平成22年9月9日(2010.9.9)
【出願人】(509204932)サムコ フェニックス コーポレイション (5)
【出願人】(302006854)株式会社SUMCO (1,197)
【Fターム(参考)】