[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP5465995B2 - 基板処理システム、収集ユニット、基板処理装置のデータ処理方法および基板処理装置 - Google Patents

基板処理システム、収集ユニット、基板処理装置のデータ処理方法および基板処理装置 Download PDF

Info

Publication number
JP5465995B2
JP5465995B2 JP2009292804A JP2009292804A JP5465995B2 JP 5465995 B2 JP5465995 B2 JP 5465995B2 JP 2009292804 A JP2009292804 A JP 2009292804A JP 2009292804 A JP2009292804 A JP 2009292804A JP 5465995 B2 JP5465995 B2 JP 5465995B2
Authority
JP
Japan
Prior art keywords
data
buffer
time
collected
collection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2009292804A
Other languages
English (en)
Other versions
JP2010183066A (ja
JP2010183066A5 (ja
Inventor
紀彦 片岡
真一朗 森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Kokusai Electric Inc
Original Assignee
Hitachi Kokusai Electric Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Kokusai Electric Inc filed Critical Hitachi Kokusai Electric Inc
Priority to JP2009292804A priority Critical patent/JP5465995B2/ja
Priority to US12/647,929 priority patent/US8359117B2/en
Publication of JP2010183066A publication Critical patent/JP2010183066A/ja
Publication of JP2010183066A5 publication Critical patent/JP2010183066A5/ja
Application granted granted Critical
Publication of JP5465995B2 publication Critical patent/JP5465995B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B21/00Systems involving sampling of the variable controlled
    • G05B21/02Systems involving sampling of the variable controlled electric
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/67005Apparatus not specifically provided for elsewhere
    • H01L21/67242Apparatus for monitoring, sorting or marking
    • H01L21/67253Process monitoring, e.g. flow or thickness monitoring

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Container, Conveyance, Adherence, Positioning, Of Wafer (AREA)
  • Chemical Vapour Deposition (AREA)

Description

本発明は基板処理システムに係り、特に基板処理装置に関する高頻度なデータ収集を実現するのに好適な基板処理システムに関する。
基板処理装置、例えば半導体製造装置は、多数の部品で構成されており、部品ごとに寿命や故障率が異なるため、半導体製造装置の各部品の安定稼働が半導体製造のためのキープロセスとなっている。そこで近年、半導体製造工場では、半導体製造装置に関する生産管理、性能や稼働率・故障検知管理等を目的として、半導体製造システムに対して、高頻度なデータ収集を可能とすることを求めている。
しかし半導体製造装置を制御するシステムにおいては、もとより多くの部品を高頻度で適時制御する必要があり、従来の仕組みをそのまま使うことにより、収集データを半導体製造工場が求めるような高頻度で出力することは困難な状況になっている。
なお、従来、外部記憶媒体に直接データを収集し、収集したデータをオフラインで利用することが行われているが(例えば、特許文献1参照)、最近のオンライン化ではオフラインは好ましくない。
半導体製造システムは、半導体基板への成膜を行うため、時間と部品を規定する手順を定めたもの、例えばレシピにより制御を行う。レシピには、半導体基板への成膜を行う炉に関して、温度・圧力・ガスなどの制御を行う手順が規定されており、これにより温度コントローラ、圧力コントローラ等のサブコントローラや、ガスの選択と流量を調整するMFCやバルブ等の部品に対して必要な制御を順次行う。また半導体製造システムによっては、成膜を行う半導体基板を炉へ投入、払い出すための駆動制御もこのレシピで規定する場合もある。
図22に従来の基板処理システムの構成を示す。
ここで、MC30A、30Bは、基板処理装置10を制御するモジュールコントローラである。OU40はレシピを編集するためのオペレーションユニットである。半導体基板を半導体製造装置内部への出し入れを行い、複数あるレシピから選択・開始する操作は、OU40からも指定可能だが、最近はオンライン化が進み、半導体製造工場に設置したHOST60からの要求に従い自動化されている場合が多い。この半導体製造装置システムと半導体製造工場とのインタフェースはHU50で担われている。これら基板処理装置10、MC30A、MC30B、OU40、HU50及びHOST60は、通常のネットワークで接続されている。
しかしながら、上述した基板処理システムでは、通常のネットワークで接続されているので、温度、圧力、ガス、駆動制御などのデータを高速収集できなかった。
そこで、最近の半導体製造工場では、データの高速収集を目的として、基板処理システムに対して従来のHU50とは異なる別のポートの設置を要求する場合もある。この要求に応えて、専用のユニットCU70を設けた基板処理システムの一例を図23に示す。
図23において、MC30と基板処理装置10との接続は、通常のネットワーク、例えばETHERNETとは異なり、デバイス制御に特化した省配線システムネットワーク(フィールドネットワーク)で構成されている。尚、CU70から取得したデータは、通常DB80に格納され、半導体製造工場側で適時抽出・解析などが行われる。
ところで、HOST60やDB80が要求するのは、各種部品やMC30から収集できた装置状況をモニタリングするトレースデータの他、多種の事象(イベント)や異常(例外)の報告も含まれる。
基板処理システム内部では、イベントや例外が発生した時には、必要な反応動作、例えばあるイベントにより次の動作を行うとか、例外の場合はシステムを停止する等の動作を行う必要がある。またトレースデータ・イベント・例外の発生順序やデータ間の整合性なども正しく管理する必要があるため、これらデータはシステムの一箇所に集める必要がある。その上でHU50ないしはCU70を介してHOST60やDB80に送ることになる。
しかし基板処理システム内部では、トレースデータ・イベント・例外等のデータの発生順序やデータ間整合性なども管理するために、HOST60やDB80が必要とするような高精細・高頻度なデータ送信は難しい。例えば基板処理システム内部では、制御に必要・十分な収集頻度としては、部品やデータの性格によっても異なるが1回/1秒から1回/500msec程度のものが多い。中には100msやそれ以上の周期で収集するものもある。しかし、これらの収集頻度はあくまで制御に必要な収集頻度であり、通常はMC30内部にとどまる。高精細・高頻度なデータをOU40含めHOST60やDB80に送るとなると、複数のプログラムを引き継ぎながら高速で送信する必要があり、これを敢えてOU40やCU70にまで拡張して行うとシステム負荷に直結してしまうという問題がある。
特許第3630245号公報
上述したように、従来の基板処理システムにおいて、高精細・高頻度なデータ送信を実現するためには、複数のプログラムを引き継ぎながら高速で送信する必要がある。これを実際に行うとシステム負荷の問題があり、このため、データの発生順序やデータ間の整合性が正しく管理されている適切なデータを提供することが困難であった。
本発明の目的は、上述した従来技術の欠点を解消して、上述のような適切なデータを提供することが可能な基板処理システムを提供することにある。
本発明の一態様によれば、複数の部品で構成される基板処理装置と、該基板処理装置を時間と各部品を規定する手順を定めたものとにより制御する制御手段と、前記各部品からデータを収集する収集ユニットとを設け、前記収集ユニットは、前記制御手段を経由して収集したデータと各部品から直接収集したデータとの整合を取る基板処理システムが提供される。
本発明の他の態様によれば、複数の部品で生成されるデータを各種コントローラを介して間接的に収集する、及び/又は前記データを前記各種コントローラを介さずに前記部品から直接収集する収集ユニットを備え、前記収集ユニットは、収集される前記データの整合を取る手段と、前記整合を取られたデータを一時的に格納するバッファと、前記バッファ内に格納される前記データを、該データに添付される時刻データ順に並べ換える手段とを備えた基板処理システムが提供される。
本発明によれば、基板処理システム内部で生成される各種データの発生順序やデータ間の整合性を管理することができるので、半導体製造装置側から適切なデータを半導体製造工場側システムに提供することができる。従い、半導体製造工場側のシステムでデータの解析を適切に行うことができる。
本発明の第1の実施の形態の基板処理システムの構成図である。 本発明の第1の実施の形態のモジュールコントローラ(MC)の構成図である。 本発明の第1の実施の形態のモジュールコントローラ(MC)の構成図である。 本発明の第1の実施の形態のコレクション(収集)ユニット(CU)の構成図である。 本発明の第1の実施の形態のC2データ検索を示す説明図である。 本発明の第1の実施の形態の報告データ作成のフローチャートである。 本発明の第1の実施の形態のデータ収集タイミングと遅延を示す説明図である。 本発明の第1の実施の形態のデータ収集タイミングのズレを示す説明図である。 本発明の第1の実施の形態のStored Dataテーブルを示す説明図である。 本発明の第1の実施の形態のΔtパラメータが収束することを示す説明図である。 本発明の第1の実施の形態のDirect Stored Dataリストを示す説明図である。 本発明の第1の実施の形態の報告すべきパラメータリストを示す説明図である。 本発明の第1の実施の形態のStored Dataテーブルの#1EquipmentSIatusを示す説明図である。 本発明の第1の実施の形態の報告作業テーブルを示す説明図である。 本発明の第1の実施の形態のStored Dataテーブルの#103MC1.Aux20.Monitorを示す説明図である。 本発明の第1の実施の形態の#103MC1.Aux20.Monitorデータ検索を示す説明図である。 本発明の第1の実施の形態の報告データ作業テーブルを示す説明図である。 本発明の第1の実施の形態のリスト上に見つけたデータよりも古いデータ削除を示す説明図である。 本発明の第1の実施の形態の基板処理装置を示す斜視図である。 本発明の第1の実施の形態の基板処理装置を示す側面透視図である。 本発明の第1の実施の形態の基板処理装置の処理炉の縦断面図である。 従来例の基板処理システムの構成図である。 従来例の基板処理システムの構成図である。 本発明の第2の実施の形態のCUにおけるソフトウェハ構成図である。 本発明の第2の実施の形態のデータ受信部の構成図である。 本発明の第2の実施の形態のバッファへのデータ挿入説明図である。 本発明の第2の実施の形態のバッファへのデータ挿入説明図である。 本発明の第2の実施の形態のデータ受信フローチャートである。 本発明の第2の実施の形態のデータ受信フローチャートである。 本発明の第2の実施の形態のバッファ管理時間の重なりを示す説明図である。 本発明の第2の実施の形態のバッファ管理時間の重なりを示す説明図である。 本発明の第2の実施の形態のデータ受信フローチャートである。 本発明の第2の実施の形態のバッファ管理の時間的範囲を示す説明図である。 本発明の第2の実施の形態のバッファ管理の時間的範囲を示す説明図である。 本発明の第2の実施の形態の同期部の説明図である。 本発明の第2の実施の形態の同期部から装置データ保存領域へのデータ書込み説明図である。 本発明の第2の実施の形態のデータ報告部の説明図である。 本発明の第2の実施の形態のパッキングデータ例の説明図である。 本発明の第2の実施の形態のパッキングデータ例のデータ受信フローチャートである。
以下に、本発明の一実施の形態について説明する。
[第1の実施の形態]
(第1の実施の形態の概要)
本実施の形態によれば、複数の部品で構成される基板処理装置と、該基板処理装置を時間と各部品を規定する手順を定めたものとにより制御する制御手段と、各部品からデータを収集する収集ユニットとを備え、前記収集ユニットは、前記制御手段を経由して収集したデータと各部品から直接収集したデータとの整合を取る。このように、各種データの整合を取ることで、各種データの発生順序やデータ間の整合性を管理することが可能となる。
ここで、整合を取るとは、収集した各データ間で発生した時刻を(収集した経路によらず)合致させることをいう。
以下、第1の実施の形態を具体的に説明する。
(1−1)基板処理システムの構成
まず、図1を用いて、本発明の一実施の形態にかかる基板処理システムの構成について説明する。
図1に示すように、基板処理システムは、基板処理装置100、制御手段としてのモジュールコントローラ(MC:Module Controller)300、端末装置としてのオペレーションユニット(OU:Operation Unit)400、ホストインタフェースユニット(HU:Host I/F Unit)500、ホストコンピュータ(HOST:HOST Computer)600、収集ユニットとしてのコレクションユニット(CU:Collection Unit)700、及びデータベース(DB:Data Base)800を有する。基板処理システムは、基板処理装置で取得したデータを、基板処理システムの設置場所から離れた半導体製造工場側のHOST600やDB800に送る分散処理システムである。
基板処理装置100は、一例として、半導体装置を製造する半導体製造装置として構成されている。基板処理装置100は、複数の部品で構成される。各部品はデータを生成する。
ここで、部品とは、例えば、駆動制御部(搬送制御部、温度制御部等)や各センサや各
アクチュエータなどの基板処理装置を構成する全てのものを示す。データとは、ある部品に対して設定される又は測定される項目のことをいい、例えば、熱電対については、モニタ値(実測値)が該当し、MFC(Mass Flow Controller)では設定値やモニタ値(実測値)やバルブ電圧などが該当する。
基板処理装置100は、HOST600から送信されたレシピを受信し、受信したレシピに基づいて基板の処理を実行する。具体的には、このようなレシピには、基板を処理するための手順が記載されており、MC300が、複数のステップで構成されるレシピに基づいて基板処理装置100内の各部品を制御する。なお、基板処理装置100の詳細については後述する。
MC300は、基板処理装置100とOU400との間に設けられ、フィールドネットワーク1000を介して接続されている。基板処理装置100内の各部品はMC300により制御される。MC300は、基板処理を行うために時間と部品を規定する制御手順を定めたもの、例えばレシピに従い、基板処理装置100に対して必要な制御を行うコントローラである。MC300には、基板処理、例えば成膜に必要な制御を行うものと、半導体基板やそれを複数枚格納するキャリア等を運ぶための機構を制御するものとがあり、システムに応じて必要な数が用意されている。図示例では、成膜に必要な制御を行う温度・圧力・ガス用MC300Aと、キャリア等を運ぶための機構を制御する駆動制御用MC300Bとの2台が用意される。なお、MC300の詳細については後述する。
OU400は、目的とするレシピを編集するための端末装置である。また、OU400はMC300から各部品で生成されるデータを収集する端末装置である。OU400は、MC300と通常のネットワーク900を介して接続して設けられており、キーボード401やマウス402などの入出力装置と操作画面403とを有する。操作画面403には、オペレータにより所定のデータが入力される入力画面及び装置の状況等を示す表示画面等が表示される。
HU500は、基板処理システムと半導体製造工場とのインタフェース(I/F)を担う。HU500は基板処理装置から収集したデータをHOST60へ送る機能も有する。HU500は直接制御に影響を及ぼさない受動ユニットである。
HOST600は、半導体製造工場側に設置される。HOST600は、通常のネットワーク900を介してHU500からOU400に接続されている。HOST600は、複数のレシピを記憶し、ロット情報とレシピとの対応関係を記憶し、受け付けられたロット情報と記憶されている対応関係とに基づいて、記憶されている複数のレシピから1つのレシピを選択し、選択されたレシピを基板処理装置100に対して送信する。
CU700は、データの高速収集を目的として、基板処理装置に対しHU500とは異なるポートに設置された専用のコレクション(収集)ユニットである。CU700は、通常のネットワーク900でOU400に接続され、特化したフィールドネットワーク1000で基板処理装置100に直接接続されている。CU700は、OU400によりMC300A、MC300Bを介して基板処理装置100の複数の部品から間接的に収集したデータを保管(蓄積)し、また、MC300A、MC300Bを介さずに複数の部品から直接収集したデータを保管(蓄積)する。したがって、CU700には、MC300(MC300A、MC300B)を経由して収集される間接データと、基板処理装置100の部品から直接収集される直接データとの2種類のデータが保管される。なお、CU700は、HU500と同様に直接制御に影響を及ぼさないユニットである。CU700の詳細については後述する。
DB800は、半導体製造工場側に設置されている。CU700から取得されたデータ
は、通常のネットワーク900を介してDB800に格納され、半導体製造工場側で適時抽出・解析などが行われる。
基板処理装置100のデータのうち、一方では、MC300やOU400を経由するデータは、通常のネットワーク900を介して間接的にCU700に収集された後、プログラムでDB800に転送されていき、DB800にレポート報告されている。他方では、フィールドネットワークからの直接データはCU700に収集された後、整形された上でDB800にレポート報告されている。
なお、HOST600へも同様にレポート報告してもよい。
なお、これらOU/MC/HUなどはソフトウェアプログラムで構成することができるので、実際に動作するための物理的なコンピュータユニットと1対1の関係とは限らない。例えばOUとHUの組合せやOUとMCの組合せ等の種々の構成が可能である。例えば、同一のコンピュータ上で動作する構成もありえる。
また、上述した実施の形態の分散処理システムでは、HOSTに1台の基板処理装置が接続されている場合を例示している。複数台の基板処理装置が接続されて管理されるように構成してもよい。
(1−2)基板処理装置の構成
続いて、本実施の形態にかかる基板処理装置100の構成について、図19,図20を参照しながら説明する。図19は、本発明の一実施形態にかかる基板処理装置の斜透視図である。図20は、本発明の一実施形態にかかる基板処理装置の側面透視図である。なお、本実施形態にかかる基板処理装置100は、例えばウエハ等の基板に酸化、拡散処理、CVD処理などを行なう縦型の半導体製造装置として構成されている。
図19、図20に示すように、本実施形態にかかる基板処理装置100は、耐圧容器として構成された筐体111を備えている。筐体111の正面壁111aの正面前方部には、メンテナンス可能なように設けられた開口部としての正面メンテナンス口103が開設されている。正面メンテナンス口103には、正面メンテナンス口103を開閉する一対の正面メンテナンス扉104が設けられている。シリコン等のウエハ(基板)200を収納したポッド(基板収容器)110が、筐体111内外へウエハ200を搬送するキャリアとして使用される。
筐体111の正面壁111aには、ポッド搬入搬出口(基板収容器搬入搬出口)112が、筐体111内外を連通するように開設されている。ポッド搬入搬出口112は、フロントシャッタ(基板収容器搬入搬出口開閉機構)113によって開閉されるようになっている。ポッド搬入搬出口112の正面前方側には、ロードポート(基板収容器受渡し台)114が設置されている。ロードポート114上には、ポッド110を載置されると共に位置合わせされるように構成されている。ポッド110は、工程内搬送装置(図示せず)によってロードポート114上に搬送されるように構成されている。
筐体111内の前後方向の略中央部における上部には、回転式ポッド棚(基板収容器載置棚)105が設置されている。回転式ポッド棚105上には複数個のポッド110が保管されるように構成されている。回転式ポッド棚105は、垂直に立設されて水平面内で間欠回転される支柱116と、支柱116に上中下段の各位置において放射状に支持された複数枚の棚板(基板収容器載置台)117と、を備えている。複数枚の棚板117は、ポッド110を複数個それぞれ載置した状態で保持するように構成されている。
筐体111内におけるロードポート114と回転式ポッド棚105との間には、ポッド
搬送装置(基板収容器搬送装置)118が設置されている。ポッド搬送装置118は、ポッド110を保持したまま昇降可能なポッドエレベータ(基板収容器昇降機構)118aと、搬送機構としてのポッド搬送機構(基板収容器搬送機構)118bとで構成されている。ポッド搬送装置118は、ポッドエレベータ118aとポッド搬送機構118bとの連続動作により、ロードポート114、回転式ポッド棚105、ポッドオープナ(基板収容器蓋体開閉機構)121との間で、ポッド110を相互に搬送するように構成されている。
筐体111内の下部には、サブ筐体119が、筐体111内の前後方向の略中央部から後端にわたって設けられている。サブ筐体119の正面壁119aには、ウエハ200をサブ筐体119内外に搬送する一対のウエハ搬入搬出口(基板搬入搬出口)120が、垂直方向に上下二段に並べられて設けられている。上下段のウエハ搬入搬出口120には、ポッドオープナ121がそれぞれ設置されている。
各ポッドオープナ121は、ポッド110を載置する一対の載置台122と、ポッド110のキャップ(蓋体)を着脱するキャップ着脱機構(蓋体着脱機構)123とを備えている。ポッドオープナ121は、載置台122上に載置されたポッド110のキャップをキャップ着脱機構123によって着脱することにより、ポッド110のウエハ出し入れ口を開閉するように構成されている。
サブ筐体119内には、ポッド搬送装置118や回転式ポッド棚105等が設置された空間から流体的に隔絶された移載室124が構成されている。移載室124の前側領域にはウエハ移載機構(基板移載機構)125が設置されている。ウエハ移載機構125は、ウエハ200を水平方向に回転ないし直動可能なウエハ移載装置(基板移載装置)125aと、ウエハ移載装置125aを昇降させるウエハ移載装置エレベータ(基板移載装置昇降機構)125bとで構成されている。図19に示すように、ウエハ移載装置エレベータ125bは、サブ筐体119の移載室124前方領域右端部と筐体111右側端部との間に設置されている。ウエハ移載装置125aは、ウエハ200の載置部としてのツイーザ(基板保持体)125cを備えている。これらウエハ移載装置エレベータ125b及びウエハ移載装置125aの連続動作により、ウエハ200をボート(基板保持具)217に対して装填(チャージング)及び脱装(ディスチャージング)することが可能なように構成されている。
移載室124の後側領域には、ボート217を収容して待機させる待機部126が構成されている。待機部126の上方には、基板処理系としての処理炉202が設けられている。処理炉202の下端部は、炉口シャッタ(炉口開閉機構)147により開閉されるように構成されている。
図19に示すように、サブ筐体119の待機部126右端部と筐体111右側端部との間には、ボート217を昇降させるためのボートエレベータ(基板保持具昇降機構)115が設置されている。ボートエレベータ115の昇降台には、連結具としてのアーム128が連結されている。アーム128には、蓋体としてのシールキャップ219が水平に据え付けられている。シールキャップ219は、ボート217を垂直に支持し、処理炉202の下端部を閉塞可能なように構成されている。
ボート217は複数本の保持部材を備えている。ボート217は、複数枚(例えば、50枚〜125枚程度)のウエハ200を、その中心を揃えて垂直方向に整列させた状態でそれぞれ水平に保持するように構成されている。
図19に示すように、移載室124のウエハ移載装置エレベータ125b側及びボート
エレベータ115側と反対側である左側端部には、清浄化した雰囲気もしくは不活性ガスであるクリーンエア133を供給するよう供給フアン及び防塵フィルタで構成されたクリーンユニット134が設置されている。ウエハ移載装置125aとクリーンユニット134との間には、図示はしないが、ウエハの円周方向の位置を整合させる基板整合装置としてのノッチ合わせ装置が設置されている。
クリーンユニット134から吹き出されたクリーンエア133は、図示しないノッチ合わせ装置、ウエハ移載装置125a、待機部126にあるボート217の周囲を流通した後、図示しないダクトにより吸い込まれて筐体111の外部に排気されるか、もしくはクリーンユニット134の吸い込み側である一次側(供給側)にまで循環されてクリーンユニット134によって移載室124内に再び吹き出されるように構成されている。
(1−3)基板処理装置の動作
次に、本実施形態にかかる基板処理装置100の動作について、図19,図20を参照しながら説明する。
図19、図20に示すように、ポッド110がロードポート114に供給されると、ポッド搬入搬出口112がフロントシャッタ113によって開放される。そして、ロードポート114の上のポッド110が、ポッド搬送装置118によってポッド搬入搬出口112から筐体111内部へと搬入される。
筐体111内部へと搬入されたポッド110は、ポッド搬送装置118によって回転式ポッド棚105の棚板117上へ自動的に搬送されて一時的に保管された後、棚板117上から一方のポッドオープナ121の載置台122上に移載される。なお、筐体111内部へと搬入されたポッド110は、ポッド搬送装置118によって直接ポッドオープナ121の載置台122上に移載されてもよい。この際、ポッドオープナ121のウエハ搬入搬出口120はキャップ着脱機構123によって閉じられており、移載室124内にはクリーンエア133が流通され、充満されている。例えば、移載室124内にクリーンエア133として窒素ガスが充満することにより、移載室124内の酸素濃度が例えば20ppm以下となり、大気雰囲気である筐体111内の酸素濃度よりも遥かに低くなるように設定されている。
載置台122上に載置されたポッド110は、その開口側端面がサブ筐体119の正面壁119aにおけるウエハ搬入搬出口120の開口縁辺部に押し付けられるとともに、そのキャップがキャップ着脱機構123によって取り外され、ウエハ出し入れ口が開放される。その後、ウエハ200は、ウエハ移載装置125aのツイーザ125cによってウエハ出し入れ口を通じてポッド110内からピックアップされ、ノッチ合わせ装置にて方位が整合された後、移載室124の後方にある待機部126内へ搬入され、ボート217内に装填(チャージング)される。ボート217内にウエハ200を装填したウエハ移載装置125aは、ポッド110に戻り、次のウエハ200をボート217内に装填する。
この一方(上段または下段)のポッドオープナ121におけるウエハ移載機構125によるウエハのボート217への装填作業中に、他方(下段または上段)のポッドオープナ121の載置台122上には、別のポッド110が回転式ポッド棚105上からポッド搬送装置118によって搬送されて移載され、ポッドオープナ121によるポッド110の開放作業が同時進行される。
予め指定された枚数のウエハ200がボート217内に装填されると、炉口シャッタ147によって閉じられていた処理炉202の下端部が、炉口シャッタ147によって開放される。続いて、ウエハ200群を保持したボート217は、シールキャップ219がボ
ートエレベータ115によって上昇されることにより処理炉202内へ搬入(ローディング)されていく。
ローディング後は、処理炉202内にてウエハ200に任意の処理が実施される。処理後は、ノッチ合わせ装置135でのウエハの整合工程を除き、上述の手順とほぼ逆の手順で、処理後のウエハ200を格納したボート217が処理室201内より搬出され、処理後のウエハ200を格納したポッド110が筐体111外へと搬出される。
(1−4)処理炉の構成
続いて、本実施形態にかかる処理炉202の構成について、図21を用いて説明する。図21は、本発明の一実施の形態にかかる基板処理装置の処理炉の縦断面図である。
図21示すように、処理炉202は、反応管としてのプロセスチューブ203を備えている。プロセスチューブ203は、内部反応管としてのインナーチューブ204と、その外側に設けられた外部反応管としてのアウターチューブ205と、を備えている。インナーチューブ204は、例えば石英(SiO)または炭化シリコン(SiC)等の耐熱性材料からなり、上端及び下端が開口した円筒形状に形成されている。インナーチューブ204内の筒中空部には、基板としてのウエハ200を処理する処理室201が形成されている。処理室201内は後述するボート217を収容可能なように構成されている。アウターチューブ205は、インナーチューブ204と同心円状に設けられている。アウターチューブ205は、内径がインナーチューブ204の外径よりも大きく、上端が閉塞し下端が開口した円筒形状に形成されている。アウターチューブ205は、例えば石英または炭化シリコン等の耐熱性材料からなる。
プロセスチューブ203の外側には、プロセスチューブ203の側壁面を囲うように、加熱機構としてのヒータ206が設けられている。ヒータ206は円筒形状であり、保持板としてのヒータベース251に支持されることにより垂直に据え付けられている。
アウターチューブ205の下方には、アウターチューブ205と同心円状になるように、マニホールド209が配設されている。マニホールド209は、例えばステンレス等からなり、上端及び下端が開口した円筒形状に形成されている。マニホールド209は、インナーチューブ204の下端部とアウターチューブ205の下端部とにそれぞれ係合しており、これらを支持するように設けられている。なお、マニホールド209とアウターチューブ205との間には、シール部材としてのOリング220aが設けられている。マニホールド209がヒータベース251に支持されることにより、プロセスチューブ203は垂直に据え付けられた状態となっている。プロセスチューブ203とマニホールド209により反応容器が形成される。
後述するシールキャップ219には、ガス導入部としてのノズル230が処理室201内に連通するように接続されている。ノズル230には、ガス供給管232が接続されている。ガス供給管232の上流側(ノズル230との接続側と反対側)には、ガス流量制御器としてのMFC(マスフローコントローラ)241を介して、図示しない処理ガス供給源や不活性ガス供給源等が接続されている。MFC241には、ガス流量制御部235が電気的に接続されている。ガス流量制御部235は、処理室201内に供給するガスの流量が所望のタイミングにて所望の流量となるように、MFC241を制御するように構成されている。
マニホールド209には、処理室201内の雰囲気を排気する排気管231が設けられている。排気管231は、インナーチューブ204とアウターチューブ205との隙間によって形成される筒状空間250の下端部に配置されており、筒状空間250に連通して
いる。排気管231の下流側(マニホールド209との接続側と反対側)には、圧力検出器としての圧力センサ245、例えばAPC(Auto Pressure Controller)として構成された圧力調整装置242、真空ポンプ等の真空排気装置246が上流側から順に接続されている。圧力調整装置242及び圧力センサ245には、圧力制御部236が電気的に接続されている。圧力制御部236は、圧力センサ245により検出された圧力値に基づいて、処理室201内の圧力が所望のタイミングにて所望の圧力となるように、圧力調整装置242を制御するように構成されている。
マニホールド209の下方には、マニホールド209の下端開口を気密に閉塞可能な炉口蓋体としてのシールキャップ219が設けられている。シールキャップ219は、マニホールド209の下端に垂直方向下側から当接されるようになっている。シールキャップ219は、例えばステンレス等の金属からなり、円盤状に形成されている。シールキャップ219の上面には、マニホールド209の下端と当接するシール部材としてのOリング220bが設けられている。シールキャップ219の中心部付近であって処理室201と反対側には、ボートを回転させる回転機構254が設置されている。回転機構254の回転軸255は、シールキャップ219を貫通してボート217を下方から支持している。回転機構254は、ボート217を回転させることでウエハ200を回転させることが可能なように構成されている。シールキャップ219は、プロセスチューブ203の外部に垂直に設備された昇降機構としてのボートエレベータ115によって、垂直方向に昇降されるように構成されている。シールキャップ219を昇降させることにより、ボート217を処理室201内外へ搬送することが可能なように構成されている。回転機構254及びボートエレベータ115には、駆動制御部237が電気的に接続されている。駆動制御部237は、回転機構254及びボートエレベータ115が所望のタイミングにて所望の動作をするように、これらを制御するように構成されている。
上述したように、基板保持具としてのボート217は、複数枚のウエハ200を水平姿勢でかつ互いに中心を揃えた状態で整列させて多段に保持するように構成されている。ボート217は、例えば石英や炭化珪素等の耐熱性材料からなる。ボート217の下部には、例えば石英や炭化珪素等の耐熱性材料からなる円板形状をした断熱部材としての断熱板216が水平姿勢で多段に複数枚配置されており、ヒータ206からの熱がマニホールド209側に伝わりにくくなるように構成されている。
プロセスチューブ203内には、温度検出器としての温度センサ263が設置されている。ヒータ206と温度センサ263とには、電気的に温度制御部238が接続されている。温度制御部238は、温度センサ263により検出された温度情報に基づいて、処理室201内の温度が所望のタイミングにて所望の温度分布となるように、ヒータ206への通電具合を調整するように構成されている。
ガス流量制御部235、圧力制御部236、駆動制御部237、温度制御部238は、基板処理装置全体を制御する主制御部239に電気的に接続されている。これら、ガス流量制御部235、圧力制御部236、駆動制御部237、温度制御部238、及び主制御部239は、前述したMC300として構成されている。
(1−5)処理炉の動作
続いて、半導体デバイスの製造工程の一工程として、上記構成に係る処理炉202を用いてCVD法によりウエハ200上に薄膜を形成する方法について、図21を参照しながら説明する。なお、以下の説明において、基板処理装置を構成する各部の動作はMC300により制御される。
複数枚のウエハ200がボート217に装填(ウエハチャージ)されると、図21に示
すように、複数枚のウエハ200を保持したボート217は、ボートエレベータ115によって持ち上げられて処理室201に搬入(ボートローディング)される。この状態で、シールキャップ219はOリング220bを介してマニホールド209の下端をシールした状態となる。
処理室201内が所望の圧力(真空度)となるように、真空排気装置246によって真空排気される。この際、圧力センサ245が測定した圧力値に基づき、圧力調整装置242(の弁の開度)がフィードバック制御される。また、処理室201内が所望の温度となるように、ヒータ206によって加熱される。この際、温度センサ263が検出した温度値に基づき、ヒータ206への通電量がフィードバック制御される。続いて、回転機構254により、ボート217及びウエハ200が回転させられる。
次いで、処理ガス供給源から供給されてMFC241にて所望の流量となるように制御されたガスは、ガス供給管232内を流通してノズル230から処理室201内に導入される。導入されたガスは処理室201内を上昇し、インナーチューブ204の上端開口から筒状空間250内に流出して排気管231から排気される。ガスは、処理室201内を通過する際にウエハ200の表面と接触し、この際に熱CVD反応によってウエハ200の表面上に薄膜が堆積(デポジション)される。
予め設定された処理時間が経過すると、不活性ガス供給源から不活性ガスが供給され、処理室201内が不活性ガスに置換されるとともに、処理室201内の圧力が常圧に復帰される。
その後、ボートエレベータ115によりシールキャップ219が下降されてマニホールド209の下端が開口されるとともに、処理済のウエハ200を保持するボート217がマニホールド209の下端からプロセスチューブ203の外部へと搬出(ボートアンローディング)される。その後、処理済のウエハ200はボート217より取り出され、ポッド110内へ格納される(ウエハディスチャージ)。
(1−6)MC300の構成
次に図1に示すMC300の詳細を説明する。MC300はMC300AとMC300Bとから構成される。
MC300A
図2は、温度、ガス、圧力を制御するMC300Aを中心としたハードウェア構成を示す。
MC300Aは、CPU140、ROM(read−only memory)142、RAM(random−access memory)144、入出力装置との間でのデータの送受信を行う入出力インタフェース(IF)146、温度制御部238、ガス制御部235、圧力制御部236、及び温度制御部238等とのI/O制御を行うI/O制御部148、通常のネットワーク900を介して外部のコンピュータであるOU(Operation Unit)400との間でのデータの通信を制御する通信制御部156、及びデータを記憶するハードディスクドライブ(HDD)158を有する。これらの構成要素はバス160を介して相互に接続されており、データは構成要素の間でバス160を介して送受信される。
MC300Aにおいて、CPU140は、HU500、OU400若しくはOU400を介してHOST600により送信されたレシピに基づいて、装置を制御してウエハを処理させる。具体的には、CPU140は、制御データ(制御指示)を、温度制御部238、ガス制御部235及び圧力制御部236に対して出力する。ROM142、RAM144、及びHDD158には、シーケンスプログラム、通信制御部156を介して入力され
るデータ等が格納される。
温度制御部238は、上述した処理炉202の外周部に設けられたヒータ206により該処理室201内の温度を制御する。ガス制御部235は、処理炉202のガス供給管232に設けられたMFC(マスフローコントローラ)241からの出力値に基づいて処理室201内に供給する反応ガスの供給量等を制御する。圧力制御部236は、処理炉202の排気管231に設けられた圧力センサ245の出力値に基づいて圧力調整用のバルブ242を開閉することにより処理室201内の圧力を制御する。このように、温度制御部238等は、CPU140からの制御指示に基づいて基板処理装置100の各部品(ヒータ206、MFC241及びバルブ242等)の制御を行う。
MC300B
図3は、駆動部を制御するMC300Bを中心としたハードウェア構成を示す。図3のハードウェハ構成は、制御部と制御部品が異なる点を除いて図2と同じであり、同一部分には同一符号を付して説明を省略する。駆動制御部237は、上述した処理炉202の回転機構254及びボートエレベータ115に設けられたセンサa261、センサb262によりボート217の回転及びボート217の昇降を制御する。
レシピのデータがHOST600から送信されると、通信制御部156を介してMC300A、MC300Bに入力される。CPU140は、シーケンスプログラムを起動し、該シーケンスプログラムに従って、送信されたレシピのコマンドを呼び込み実行することで、制御パラメータの目標値等が設定されているステップが逐次実行され、I/O制御部148を介して温度制御部238、ガス制御部235、圧力制御部236、及び駆動制御部237に対して基板を処理するための制御指示が送信される。温度制御部238等は、制御指示に従って基板処理装置100内の各部品(ヒータ206、MFC241、バルブ242及び回転機構254等)の制御を行う。これにより、上述したウエハ200の処理が行われる。
(1−7)CU700の構成
図4は、データを収集して保管(蓄積)するCU700を中心としたハードウェア構成を示す。CU700は、基板処理装置100からの種々の部品のデータ(温度、ガス流量、圧力、駆動制御データ等)を自動的に取得して保管するものである。CU700は、制御部710と記憶部720(C1記憶部721、C2記憶部722)とから主に構成される。制御部710はネットワーク900、1000と記憶部720との間に介在し、ネットワークから送られてくるデータを記憶部720に書き込んだり、記憶部720に保管したデータを読み出して、ネットワークに送出したりする。C1記憶部721はMC300を介して間接的に収集されたデータを記憶する。C2記憶部722はMC300を介さないで直接収集されたデータを記憶する。C1記憶部721には、通常のネットワーク900から送られてくるデータが、所定の制御周期で自動的に収集される。C2記憶部722には、フィールドネットワーク1000から送られてくるデータが、所定の制御周期とは異なるより短い制御周期で収集される。
なお、制御部710は、DB800からの要求を処理し、またC1とC2のデータ整合性をとり、DB800へ送るための制御をするものであり、装置側へ要求を出すことはない。
(1−8)収集データの報告
ここでは、C1やC2といったデータソースに依存する第1のデータ報告方式について述べる。
図1に示す形態の基板処理システムのように、直接制御に影響を及ぼさないCU700を使って、別途フィールドネットワーク1000から直接データを収集し、整形した上で
HOST600やDB800に収集データの報告をする形態の場合、つぎのような課題がある。
この形態で問題となるのが、時刻差が生じる挙動である。すなわち、MC300やOU400経由で入ってくるC1データの収集時刻が、直接収集したC2データの収集時刻と異なって、時刻差が生じることである。MC300やOU400を経由するC1データは通常のネットワーク900を介し、プログラムで転送されてくるため即時性はなく、時間的に数100msec程度の遅延が発生し得る。これでは高頻度で取得したC2データとの整合性に欠けるため、半導体製造工場での分析にも支障が生じる可能性がある。
因みにここでは、基板処理システムの内部において各コントローラ等(MC300、OU400、CU700)の時刻は必要十分な精度で同期していることを前提としている。
(1−9)時刻差が生じる挙動
時刻差について、その詳細を図7を用いて説明する。図7はデータ収集タイミングと遅延を示すタイミング図である。
(a)MC→OU→CUを経由するC1データの検知と流れ
図7において、横軸は時間軸でt1からスタートさせ、100msec刻みでマーキングを付してある。一番上のラインのCUデータを、制御手段であるMC300を経由して間接収集したC1データとする。
MC300は、フィールドネットワーク収集制御周期(例えば100msec)でフィールドネットワーク1000に流れる部品データを取得する(MC◆)。
MC→OUへのデータ報告は、制御周期維持のため、例えば1回/500msecとする。MC300では、データを受け取って転送するまでの遅延((i)データ報告遅延)が発生する。(i)のデータ報告遅延発生は以下の事由による。MC300では、データを取得したら関連する内部制御を優先した後、OU400への報告周期に合致したタイミングであればネットワーク送信することになるが、この時、内部制御による遅延と送信のためバッファに入れてから実際に送信されるまでの遅延が累積して、この遅延が発生する。
OU400では、データを受け取って処理するまでの遅延((ii)データ取得遅延OU●)と、受け取ったデータをCU700に転送するまでの遅延((iii)データ報告遅延)とが発生する。(ii)のデータ取得遅延発生は以下の事由による。OU400では、ネットワーク900からの受信データを必要なプログラムに渡すが、プログラムは空き時間になって初めてその受信通知により受信データを処理することができる。遅延はこの受信データを処理できるようになるまでの時間である。(iii)データ報告遅延発生は以下の事由による。OU400では、CU700へネットワーク送信することになるが、この時データの内部処理と送信のためバッファに入れてから実際に送信されるまでの遅延が累積してこの遅延が発生する。
CU400では、データを受け取って処理するまでの遅延((iv)データ取得遅延CU●)がある。(iv)のデータ取得遅延発生事由は、(ii)データ取得遅延発生と同様の事由による。
(b)フィールドネットワーク→CUを経由するC2データの検知
図7の一番下のラインのCUデータを、MC300を経由しないで直接収集したC2データとする。
CU700もMC300と同様にフィールドネットワーク制御周期(例えば100msec)でフィールドネットワーク1000に流れるデバイスデータを取得する。
以上を踏まえ、(a)と(b)とでのデータ収集タイミングのズレを表すと、図8に示すようになる。図8において下方のCU直接データはC2データであり、上方のCU間接データはC1データである。C1データとC2データのデータ時刻ズレは例えば200m
secである。なお、500msecの周期で取得されたC1データと比べて、100msecの周期で取得したC2データは高精細・高頻度になっている。
以上、CU700において同一であるはずのデータ取得がその取得経路が違うことで、例示ではあるが、200msec程度の遅延が発生し得ることを説明した。当然この遅延の度合は、システム構成や個々のコントローラ等のタイミング次第でも随時変わることは言うまでもない。
結局、HOST600やDB800で必要とされる高精細なC2データは、タイミング的にC1データを含む他のデータと整合性がとれていない。特にイベント(キャリア搬入・搬出、RUN開始・停止など)や例外(温度異常・圧力異常など)は、MC300により管理されているためC1データとして送られる。このため、図8に示すように、それらのC1データ#1a、#2bが発生したタイミングでの、これらに対応する高精細C2データ#1b、#2bは既に過去のものとなっている。
このため、C2データから過去のC1データを取得しても、HOST600やDB800ではデータ毎の時間差の存在やその時間差の程度が判断できない。従って、C1データとC2データとの発生時刻の相違が判断できないため、HOST600やDB800に蓄積されるデータを解析しても、適切なデータ解析を行うことが困難であった。
(1−10)本実施の形態のデータ報告
図1におけるCU700やHU500、あるいは図23におけるHU50もそうであるが、それらはHOST60、600やDB80、800あるいはオペレータに指定された周期毎に、規定のフォーマットに従ってそれらに対して収集したデータを報告する。
基本的な考え方として、C1データについてはCU700やHU500の時刻に従い、その瞬間の最新のデータ(しかしCU700やHU500に到達するまでの遅延は含まれる)を報告する。
しかし、C2データについては、C1データとの整合性が必要であるため、予めC2データを保管(蓄積)しておき、送信するC1データと時刻整合するものを探して送信する必要がある。つまり保管された過去のC2データから適切なものを選択することが必要である。
そこで、以下に述べる説明では、保管された過去のC2データから適切なものが選択されて報告されるようになっている。
(1−11)C1データ保管方法
C1データは、最新のものを最大各1個、CU700のC1記憶部721に保管しておけば良い。新しいデータを受け取ったら古いデータは捨てる。図9に各項目(各エリア)毎にC1データを記録したStored Dataテーブルを例示する。
但し、各パラメータ名(#はパラメータ番号)に付随して、MC300などで付けられた元の収集時刻(実収集時刻)と、CU700において受信処理した時刻(CU受信時刻)を記録する。さらにCU受信時刻の実収集時刻との差分ΔTを受信毎に計算し、前回の計算値より小さくなった場合にパラメータ値を更新記録していく。
なお、Stored Dataテーブルにおいて、C2エリアのFalseはC2データがないことを、TrueはC2データが存在することをそれぞれ意味する。
一般に、ΔTパラメータは自然に収束する値である。この収束していく様子について図10を用いて以下に説明する。
差分ΔTの初期値は、システム内部で想定される最大遅延時間相当か、あるいは実際にはあり得ない値を設定する必要がある。ここでは、1回目の受信データ(#1)の差分Δtが初期値より小さくならないようにするために、初期値を仮に“−1.0”(−1秒)としておく。1回目の受信データ(#1)を更新せずに記録を確保するためである。
1回目の受信データ(#1)での実収集時刻とCU受信時刻との差分ΔTを記録(初期値“−1.0”のため無条件に記録)する。2回目の受信データ(#2)での実収集時刻とCU受信時刻差は、現ΔTより小さいため更新される。3回目の受信データ(#3)での実収集時刻とCU受信時刻差は、現ΔTより大きいため更新されない。4回目の受信データ(#4)での実収集時刻とCU受信時刻差は、現ΔTより小さいため更新される。
以下同様に、ΔTより小さな時刻差で、値を更新していく。こうすることで、ΔTの値は、実収集時刻とCU受信時刻差との最小値d1に律速する。このように律速した差分ΔTのパラメータ値を、図9のStored Dataテーブルに示すように、パラメータ毎に各1個保管しておく。
尚、C1データは通常収集元の種別単位などで収集され、時刻もその単位で付加される場合が多い。この場合ΔTについてはこのグループ化の単位で保管することで計算負荷を軽減できる。
(1−12)C2データ保管方法
C2データについては整合性保証のため、最新のものだけではなく、過去、n個分をCU700のC2記憶部722に保管(蓄積)する必要がある。このため、パラメータ毎にリスト構成により保管する方法が適している。しかしn個の値はそのままC2記憶部722のメモリ量に直結する。このため、無用に大きな値は好ましくないが、MC300等の収集周期など個別の要素があり、一概には決められない。
そこで、MC300等での実収集時刻からCU受信時刻までの差で想定される最大遅延時間をMC300等での最小収集周期時間で割った値を使用すると良い。つまり、ここでの例としては最大遅延時間1秒を想定しておき、最小収集周期時間100msecで割ると保管数“10”が求められる。
(最大遅延時間)/(最小収集周期時間)
=1sec/100msec=10
ここで求めたC2データの保管数n=10はあくまで最大個数である。
(1−13)リスト保管
以下に、リスト管理によるC2データのC2記憶部722へのリスト保管について、図11に示すDirect Stored Dataリストを用いて説明する。
リスト管理とは、データあるいはデータのセットを、元となるデータやデータセットから関連付けしながら複数記憶する仕組みを言う。図示例では、#103のパラメータ名MC1.Aux20.Monitorの最新データ値(パラメータ値)5.000(収集時刻:2005/4/1 12:00:00.900)に関連付けられ、その一つ前に収集したデータ値4.998(収集時刻:2005/4/1 12:00:00.800)も最新データとともに記憶される。このように順次記憶することで、n個のデータの中から、目的とする収集時刻のデータを検索することが可能となる。ここでは、パラメータデータから、最も古いデータを検索するリスト構造を例示した。
リスト管理の方法により関連データを逆順に検索することも可能で、さらには不要になったデータも関連先を変更することで削除することも可能である。尚、新しく収集したパラメータ値はその時刻とともに、最新の値としてパラメータ名から第一に関連する場所に挿入し、さらに最大個数nを超える部分のデータはこのリストから外し、削除する。
さらにパラメータ検索時には、目的の時刻つまり対応するC1データの時刻と同じか、
より新しくない直近のものが見つかった場合、さらにそれ以降の関連パラメータについては参照されることは無いため、これもリストから外し、削除する。但し、C1データとの整合性だけでなく、イベントや例外も含め全てのデータを順次処理することで保証できるものであるのは当然である。
また最初のデータ収集タイミングを除き、一旦収集を開始した後では、このDirect Stored Dataリストには最低でも一つのデータが関連付けられる。また、プログラムが開始して間もないタイミングでは、Direct Stored Dataリスト上はパラメータ値が関連付けられたとしても、目的の時刻と同じか、それ以前のデータが見つからない場合もありえる。この場合データは無いものとしてCU700からHOST600やDB800へ報告しなければならない。この状況は、前回プログラム終了前に送信していたパラメータ報告の組合せをプログラム起動と同時に再開するように設定される場合に起こり得る。
(1−14)報告データの作成
ここでの報告データの作成が本実施の形態のポイントである。報告データ作成のため、時刻をキーにして、必要とするC2データを検索する必要がある。以下そのプロセスを、図5、図6、図12〜図18を用いて説明する。図5はC2データからの検索を示す説明図、図6は報告データ作成のフローチャート、図12〜図18は具体的な報告データ作成例をそれぞれ示す。以下のプロセスはOU400が、通常のネットワーク900を介してCU700とやり取りすることによって実行する。
1)報告すべきパラメータ名リストが存在する。
図6のフローチャートにおいて、C1記憶部721に、C1データのStored Dataテーブルに報告すべきパラメータ名リストが存在するか否か判断する(ステップ100)。パラメータ名リストが存在しない場合はエンドに進むが、リストが存在する場合はそのリストからパラメータ番号#nを抽出する(ステップ102)。図12はパラメータ名リストの一例を示す。このパラメータ名リストの例では、nは“1”“103”である。
なお、メモリ管理上、最低限必要なのはパラメータ番号(#)であり、パラメータ名はStored Dataテーブルないしは、別のパラメータ一覧より取得できれば良い。
2)#1EquipmentStatus
ステップ102で抽出したパラメータ番号のうち、Stored Dataテーブルの若いパラメータ番号を呼び出し、C2エリアを参照してFalseかTrueかを判定する(ステップ103)。FalseであればCU700での直接収集データ(C2データ)がC2記憶部722に無いことを表す。このため、#nの報告すべきデータはこのテーブル内のデータだけである。この場合、#nの報告データ作成ステップに進み(ステップ106)、#nの報告データを作成する(ステップ106)。
図13に示すStored Dataテーブルの一例を示す。このStored Dataテーブルの例のように、#1のC2エリアがFalseであると、#1の報告すべきデータはこのテーブル内のデータだけであり、#1の報告データは、図14に示す報告作業テーブルに示す通りになる。
3)#103MC1.Aux20.Monitor
ステップ103で#nのC2エリアがTrueであれば、CU700での直接収集データ(C2データ)が存在することを表し、検索が必要である。この#nのΔTの値を取得し、CUの現在時刻から、上記ΔTを減算した目的の時刻値(時刻キ―)を求める(ステップ104)。
図15に示すStored Dataテーブルの一例を示す。このStored Da
taテーブルように#103のC2エリアがTrueであり、CU現在時刻:”2005/4/1 12:00:01.000、Δt=0.130であると、時刻キーは次のように計算される。
CU現在時刻:”2005/4/1 12:00:01.000”−0.130
=”2005/4/1 12:00:00.870”
4)#l03MC1.Aux20.Monitorデータ検索
ステップ104で目的の時刻キーを求めたら、C2データの収集時刻を時刻キーにしてDirect Stored Dataリストの#nについての、C2記憶部722に保管(蓄積)したn個のC2データを順次検索し、それらの収集時刻が時刻キーと“同じ”か、時刻キーに“一番近くて古い”リストデータを取り出す(ステップ105)。
図16に示すDirect Stored Dataリストの#103のMC1.Aux20.Monitorリストの一例を示す。この#103のMC1.Aux20.Monitorリストの例では、目的時刻”2005/4/1 12:00:00.870”と同じか、それに“一番近くて古い”ものを順次探す。
図5に、この#l03MC1.Aux20.Monitorデータ検索のやり方をタイミングチャートで示してある。なお、ここでは時刻表示は上位の”2005/4/1 12:00:”を省略し、下位”00.000”のみを示した。C1データのΔt=00.130であるから、CU現在時刻:01.000からこのΔtを差し引くと、目的の時刻キーは”00.870”となる。C2データは、”00.1000”刻みで10個あり、この中から時刻キーと“同じ”か、時刻キーに“一番近くて古い”リストデータを検索するとその結果は00.800となる。
(1−15)報告データ作業テーブル
ステップ105の検索後、#nの報告データ作成ステップに進み(ステップ106)、#nの報告データを作成する(ステップ106)。報告作業テーブルに報告データを作成したら、抽出した全パラメータ番号の全てについて処理が終了したか否か判断し(ステップ107)、処理が終了していない場合、次のパラメータ番号を呼び出してからステップ103に戻る(ステップ108)。そして、一連の処理が終了したら終了する。
図17に、#1及び#103のパラメータの報告作業テーブルを示す
もし、起動直後など必要な収集データが確保されていない状況では、パラメータ値には収集できていないことを示すデータ、例えば負値や“0”あるいはNULL値など代表的な値を設定する。
また、図18に示すように、Direct Stored Dataリスト上に見つけたデータより古いものは、この時点で不要になるのでリストから削除しておく。ただし、見つかったデータ自身は、次のデータ報告や、イベント・例外報告等で再度利用される場合があるので、残しておく必要がある。
ここで、Direct Stored Dataリストから不要部分を削除しておくことで、次回検索時には最初に検索することになるC2データに近い位置でヒットする可能性が高くなる。これは特に高頻度でデータ報告を行う場合に特に顕著で、プロセッサの負荷が高くなる状況下においては特に有効な手段となる。
(1−16)HOSTまたはDBへの送信
以上で報告に必要なデータは集まったので、CU700の制御部710内の送信キューに入れることでOU400、HU500を介してHOST600、またはCU700から通常のネットワーク900を介してDB800への送信が可能となる。
(1−17)実施の形態の効果
本実施の形態によれば、発生した遅延(ふらつき)をΔTパラメータという自然に収束する値を使うことで、半導体製造工場側に設置してあるHOST等に対して、データ送信経路によらず必要なデータを安定供給できる。
また、本実施の形態によれば、半導体製造装置システムは適切なデータを供給することができるので、半導体製造工場側で適切なデータ解析ができる。
また、本実施の形態によれば、C1データと比べてC2データは高精細・高頻度になっており、この高精細・高頻度なC2データを、タイミング的にC1データを含む他のデータと整合して、HOST600やDB800に送ることができる。
また、本実施の形態によれば、CUは、部品から直接収集したデータを蓄積しておき、MCを経由して収集したC1データと整合の取れたC2データを選択しているので、C1データのタイミングで、現在時刻に近い高精細なC2データを送ることができる。そのため、C1データとして送られるイベントや例外が、正確に把握できる。
また、本実施の形態によれば、MCでの収集時刻からCU受信時刻までの差で想定される最大遅延時間を、MCでの最小収集周期時間で割った値のデータを予め蓄積しておくようにしたので、蓄積したC2データの中からC1データと整合の取れた適切なC2データを選択して、HOSTやDBに送信することができる。
なお、本実施の形態では、C1データについての受信時刻と現在時刻との間でΔTが同じであると仮定し、現在時刻からΔTを差し引くことにより目的の時刻キーを求めている。C1データは既述したように、その都度、遅延程度が異なる。したがって、ΔTが同じであると仮定して目的の時刻キーを求めていることから、作成される報告データは、常に高精度データであるとは言えない。しかし、これは分散システムである限り、程度の違いはあっても避けられない問題である。
また、C1データが途中でふらついた際、それに該当するC2データが収集できない場合については、報告から漏れる可能性があるが、それ以上にC2データに関する高頻度データの連続性が重要である。
また、本実施の形態では、報告先であるHOSTやDB等のクライアントシステムは、基板処理装置と同様のフロア(クリーンルーム)に配置する必要はなく、例えば、LAN接続された事務所に配置されてもよい。
また、本実施の形態では、基板処理システム構成例として、データが集まる収集ユニットでフィールドネットワークデータを直接収集できる構成の場合について説明したが、制御手段を介して収集する端末装置と、制御手段を介さずに直接データを収集する収集ユニットを備えた構成であれば、本発明は適用可能である。次に第2の実施の形態を説明する。
[第2の実施の形態]
上述した第1の実施の形態では、基板処理システム内部で生成される各種データの発生順序や整合性を管理するために、C1やC2といったデータソースに依存する第1のデータ報告方式について説明した。この第2の実施の形態の基板処理システムでは、C1やC2といったデータソースに依存しない第2のデータ報告方式について説明する。なお、第2の実施の形態の基板処理システムの構成は、基本的には第1の実施の形態と同じであるため説明を省略する。
(第2の実施の形態の概要)
本実施の形態によれば、複数の部品で生成されるデータを各種コントローラを介して、または介さずに収集する収集ユニットを備え、前記収集ユニットは、収集される各種データの整合を取り、前記整合を取られたデータを一時的にバッファに格納し、このバッファ内に格納される前記データを、該データに添付される時刻データ順に並べ換える。このように、各種データの整合を取り、時刻データ順に並べ換えることで、各種データの発生順序や整合性を管理することが可能となる。
以下、第2の実施の形態を具体的に説明する。
(2−1)第2のデータ報告方式
データソースに依存しない方式は、データをCU700にて受信した後、一旦バッファ(一時格納手段)内部に溜めるものである。データにはかならず収集時刻(時刻データ)が付随しているので、データを溜める際、この収集時刻を利用する。
(2−2)CUにおけるソフトウエア構成
図24は、本発明の第2の実施形態に係る基板処理システムの制御装置、例えばCU700の制御部710により実行される制御プログラム(ソフトウエア)の機能構成を示す図である。図24に示すように、制御プログラムは、データ受信部730、バッファ部740、同期部750、データ報告部760を有する。バッファ部740は、バッファ[0]、バッファ[1]…バッファ[n]というように複数のバッファを持ちうる。同期部750は複数のタイマA、タイマB、…タイマnを備える。装置データ保存部770はCU700内のメモリにより実現されるハードウエアである。以下、各機能構成の処理プロセスを説明する。
(2−3)データ受信部
データ受信部730は、MC300、OU400あるいはCU700におけるデータ受信部の総称である。データ受信部730は、時刻データを必要に応じて整形し、バッファ部740へ渡す。ここで、時刻データを必要に応じて整形し、とは、間接データC1と直接データC2との整合をとることをいう。例えば、MC300を介した間接データ(C1データ)は、通常、共通フォーマットで統一されており、時刻データを持っている。これに対して直接データ(C2データ)は、通常、フォーマットが統一されておらず、時刻データを持っていない。したがって、直接データ(C2データ)のフォーマットを間接データ(C1データ)に合わせた上、直接データ(C2データ)に時刻データ(収集時刻データ)を付加する整形を行う。
データ受信部730は、C1データとC2データとを一括して収集する。その収集の仕方は、図25(a)に示すように、C1データとC2データの2種類のデータを、1台のデータ受信部730で共通に扱って、バッファ部740へ送るようにしてもよい。また、図25(b)に示すように、C1データとC2データの2種類のデータを、C1データ受信部731とC2データ受信部732との2台のデータ受信部で別々に扱って、共通のバッファ部740へ送るようにしてもよい。尚、図25では、C1データとC2データを収集する場合について図示されているが、この形態に限定されず、C1データ又はC2データの一方のデータを収集するようにしても構わない。
(2−4)バッファ部
バッファ部740は整形されたデータを一時的に格納する。バッファ部740へ送られてくるデータの種類には、例えば、装置モニタデータ、イベント、例外通知、後述する内部タイマによる空データ等がある。尚、本実施の形態では、図26に示すように、収集時刻順に従ったバッファ内の適切な位置に挿入する。
また、受信データが来なくなった場合でも、バッファ内に滞留するデータが正しく処理されるよう、収集ユニットCU700内部で時刻だけを扱う空データを定期的(例えば0.5秒毎)にバッファ内部へ追加していく。この空データ追加処理はバッファに設けた内部タイマにより行う。定期的な時間は、短すぎるとシステム負荷やバッファ容量増加につながり、また長すぎると後に説明するデータ報告頻度が少なくなる場合があるので、それらを考慮した適切な値を把握して設定する必要がある。
ここで、バッファは一定時間分、データを保持する能力を持つ。この一定時間Tは、MC300等でデータが収集されてからCU700に送られるまでの最大遅延時間を想定したものとしている。一定時間Tは、例えば最大遅延時間を3秒とした場合+αとして1秒、計4秒を想定する。最大遅延時間はシステムの持つ能力により異なるため、適切な値を把握して設定する必要がある。システム内部の遅延時間はこのバッファにより吸収する。
図27に示すように、時間によるバッファ長(4秒)を点線で示す。バッファ内のデータの保持能力が一杯のとき、黒四角で示す新データが受信されてバッファ内へ挿入されると、バッファの保持能力の一定時間Tを超えるため、白抜きの丸印で示すデータのうち最古データが一つバッファから出力されて(黒丸)同期部750に送られる。このとき、バッファ内に空データがないと、バッファ内のデータが正しく処理されず、送られるべきデータが同期部に送れなくなる場合がある。
(2−5)データ受信フロー
図28に、バッファ部740によるデータ受信の概念フローを示す。
制御プログラムのバッファ部740は、データを受信するとその受信データをバッファヘ挿入し(ステップ280)、バッファ範囲外データをフラッシュする(ステップ290)。ステップ280では、複数のバッファ検索、新規のバッファ作成、及びバッファへのデータ挿入処理が実行される。ここで、バッファ範囲外データとは、バッファ内で管理する一定時間Tを超えたデータのことをいう。また、フラッシュとは所定の送信先へデータを送信(送出)することをいう。
以下、上述した「受信データをバッファへ挿入」と、「バッファ範囲外データをフラッシュ」について具体的に説明する。
(2−6)受信データをバッファへ挿入
図29を用いて、バッファ部740が実行するテップ280(図28)の挿入内容を具体的に説明する。
カウンタiにバッファ数nをセットする(ステップ281)。nの初期値は“0”である。nをセット後、i=0か否か判断し(ステップ282)、i=0であれば、新しいバッファを作成し、カウンタiに“n”をセットし、nに“n+1”をセットし(ステップ286)、後述する挿入ステップ285へ進む。iが“0”でなければ、“i−1”をカウンタiにセットする(ステップ283)。この場合、iの値の大きなものは、最後に作成したバッファから検索する。“i−1”をセット後、受信データ時刻に基づいてバッファ[i]に挿入可能か否か判断し(ステップ284)、不可能であればステップ282に戻る。可能であれば、受信データをバッファ[i]へ挿入して(ステップ285)、挿入フローを終了する。
上記ステップ284について、一点鎖線で囲った挿入可能確認処理内容を示す説明図を用いて具体的に説明する。
新規の受信データ(黒四角)の収集時刻Tがxx:xx:xx.xxであるとする。バッファの持つデータ保持能力を示す一定時間がT=4秒であることから、この受信データ収集時刻Txx:xx:xx.xxが、バッファ内の最新データ収集時刻Tに対
して、その収集時刻Tの4秒前に収まっているか、又はその収集時刻Tより4秒以上経過していなければ、バッファに挿入可能と判断する。すなわち、受信データ収集時刻Tが、
≧T−4
+4>T
の範囲にあるかをバッファ部740は判断し、その範囲内にある場合、バッファに挿入可能と判断する。
例えば、最新バッファ[n−1]内の最新データ(黒丸)がT=10:00:00.00だった場合、
−4=10:00:00.00−00:00:04.00=09:59:56.00
+4=10:00:00.00+00:00:04.00=10:00:04:00
となるから、新規の受信データはその収集時刻Tが09:59:56.00〜10:00:03.59の範囲内の場合、バッファ部740は、バッファ[n−1]に挿入可能と判断する。受信データ収集時刻Txx:xx:xx.xxが、バッファ内最新データの収集時刻10:00:00.00より遅ければ、受信データ(黒四角)はバッファ内最新データ(黒丸)より後のバッファ(長さ4秒)に挿入される。バッファ内最新データ(黒丸)の収集時刻10:00:00.00より早ければ、受信データ(黒四角)はバッファ内最新データ(黒丸)より前のバッファ(長さ4秒)に挿入される。このように、バッファヘのデータ挿入可能確認処理では、最新データに対して4秒前から4秒後までの範囲が含まれるため、各バッファの最新データに対してバッファヘのデータ挿入可能範囲は2×T(4秒)の幅を持つ。すなわち、バッファへの格納処理では、各バッファ分の2×T時間で格納可否を判定している。
なお、受信データ収集時刻Tが10:00:04:00だった場合、各バッファ分の時間2×T=8秒を超えるため、新たなバッファ[n]を作成する。
ところで、バッファヘのデータ挿入可能確認処理では、各バッファの最新データに対してバッファは2×Tの幅持っているため、バッファ間で管理する時間にダブりが生じる可能性がある。そこで、本実施の形態では、バッファ間で管理する時間にダブりが生じないように、つぎの(A)、(B)で説明するようにしてデータ間の時間的な重なりを排除している。
(A)新しいバッファが時間的に新しい場合の処理例
図30を用いて説明する。なお、図30における丸数字は、便宜上()付の数字で示す。後述する図31、図34においても同様とする。
バッファ[i]のデータ(1)が最新の状態で、データ(2)を受信したとする。この収集時刻が、データ(1)の収集時刻+Tより新しい時、バッファ[j]を作成し、そのバッファ[j]にデータ(2)を格納する。その後データ(3)〜(8)はバッファ[j]内のデータ(2)より前(収集時刻が古い)に格納されたとする。この場合、データ(7)と(8)はバッファ[i]の格納可能範囲にあったとしても、バッファ[j]への格納処理を優先させる。その後データ(9)を受信したとする。このデータ(9)の収集時刻がバッファ[j]内のデータ(2)の収集時刻−Tより古く、バッファ[i]の(1)の収集時刻より新しい収集時刻だった場合、バッファ[i]に格納される。このケースでは、重なり部分のデータは全て新しいバッファ[j]へ格納するので、データ管理上の矛盾は生じない。
(B)新しいバッファが時間的に古い場合の処理例
図31を用いて説明する。
バッファ[i]のデータ(10)が最新の状態で、データ(11)を受信したとする。この収集時刻が、データ(10)の収集時刻−Tより古い時、バッファ[j]を作成し、このバッファ[j]にデータ(11)を格納する。その後、データ(12)〜16)はバッファ[j]内のデータ(11)より後(収集時刻が新しい)に格納されたとする。この場合、データ(16)はバッファ[i]の格納可能範囲にあったとしても、バッファ[j]への格納処理を優先させる。このケースでは、バッファ[i]のデータ(3)、(4)がバッファ[j]のデータ(16)と時間的に重なる位置に格納されており、データ管理上の不整合のように見える。しかし、実際にデータ(16)は時間的に新たに受信したデータであり、古くに受信したデータ(3)や(4)がフラッシュされた後、T程度の時間が経過した後にデータ(16)をフラッシュすることになる。また次項で説明するが、フラッシュ処理では、全バッファトータルでT時間分のデータを残し、それ以上のデータはフラッシュする。よって上記のようなデータ間の時間的な重なりは、常に排除しながら管理される。したがって、データ管理上の不整合は起こらない。
(2−7)バッファ範囲外データをフラッシュ
図32を用いて、バッファ部740が実行するテップ290(図28)のフラッシュ内容を具体的に説明する。
カウンタiにバッファ数n−1を設定する(ステップ321)。設定後、バッファ[i]…[0]それぞれのデータ時刻幅のトータルが、T秒以上となるデータが有るか否か判断し(ステップ322)、否の場合、フラッシュすることなく終了する。そのようなデータが有りの場合はバッファ[0]から[n−2]の順にT秒以上のデータをフラッシュして(ステップ323)、終了する。ステップ323では、iの値の小さなもの、すなわち古いバッファから処理する。[0]が最も古いバッファとなる。
次に、上記フラッシュにおけるバッファ管理の時間的範囲について説明する。
まず、図33を用いて第1の具体例を説明する。
図33に示すように、バッファが3つ([0]〜[2])存在する状態を想定し、バッファ[0]内の最新データと最古データ間の時間幅が1秒、バッファ[1]が同様に2秒、バッファ[2]が同様に1.5秒だったとする(バッファ内最新データの収集時刻10:00:00.00、バッファ内の最古データの収集時刻09:59:58.50)。この場合、バッファトータルのデータ時間は4.5秒となり、最も古いバッファ[0]に、T=4秒にくらべて0.5秒間分はみだすデータがあることになる。このはみだしたデータを黒四角で示すが、これがフラッシュ対象となる。
前述したバッファへの格納処理では、各バッファ2×T時間で格納可否を判定していたが、ここではバッファトータルでT時間を管理する。こうする事で、バッファトータルの管理時間Tを維持し、同期部750へのデータ送出を途切れなく継続することが可能となる。
また、図34を用いて第2の具体例を説明する。図34に示す具体例では、図31と同様にバッファは2つしか存在しないとする。バッファ[i]=バッファ[0]の管理時間範囲をT、バッファ[j]=バッファ[1]の管理時間範囲をTとすると、この「バッファ範囲外データをフラッシュ」する処理を行う直前では、
≦2×T
≦2×T
となっている。
ここで、図32、図33を用いて説明したフラッシュ処理を施すと、
バッファ[0]で残せるデータ時間は、
’=T−T
となり、(T−T’)時間分のデータ(ここではデータ(3)と(4))が押し出される事になる。
バッファ[1]を作成することになったデータ(11)の時刻データを考慮すると、データ(10)と(11)の時間範囲がT以上であるため、データ(16)のような前のバッファと時間的に重なるデータが入ってきた場合、それらの古いデータ(3)や(4)が即フラッシュ対象となる。
先に、受信データが来なくなった場合でも、バッファ内のデータが正しく処理されるよう、一定時間毎(例0.5秒毎)に空データを追加するとしたが、この空データの追加も上記処理フローに従う。
これら処理フローにおいて、新しい受信データの収集時刻Tが、各バッファ分の2×Tを超えていずれのバッファにも格納できない場合、新たなバッファを作成すると説明した。通常、新たなバッファを作成するのは、時刻に変化があった場合であり、すべてのユニットが一定時間T(4秒)以内に時刻同期すれば、バッファ数はたかだか2個にしかならない。もしバッファ数が3個以上となる場合、T時間の見直しをしても良いが、基本的にはユニット間の時刻同期および間接データC1と直接データC2間の処理時間差やC1データ伝送処理遅延に関して、改善を行うことが好ましい。
(2−8)同期部
同期部750は、モニタデータ保存領域更新のタイミングとトレースデータ収集のタイミングを、システム時刻とは関係なく、代わりに同期部750の内部に搭載したシステム時刻(同期化時刻)で同期させるモジュールである。以下、この同期部750のプロセスを図35を用いて説明する。
図35に示すように、同期部750はタイマにより起動し、バッファ部740より送られたデータnがあった場合、同期部750はそのデータの時刻(10:00:00.700)をチェックする。このチェックでは、その時刻(10:00:00.700)と、同期部内部のシステム時刻(同期化時刻(10:00:00.000))との間に、同期部750内部にあるどのタイマA(0.25秒)、B(0.5秒)、C(1.0秒)、D(2.0秒)…がタイミングを発生できるかどうか調べる。なお、データnの“n”はデータの名前であって、例えば、温度とか圧力を意味する。また、タイマA、B、C、D…は報告データの時間間隔となる。
図示例の場合、同期化時刻(10:00:00.000)とデータnの時刻(10:00:00.700)との間にあるタイマAとBが処理可能なので、タイマA、Bの順でタイマ処理を発生させる。タイマはDCP(Data Collection Plan)のトレース等に結びついており、その発生タイミングでデータ収集や送信を行う。DCPとは、クライアントが所望のデータの収集や設定を行うために定義するプランであって、DCPにはトレースデータやイベント、例外処理などのあらゆる番号や組合せ情報、頻度などが記載されている。
図36に示すように、同期部750で処理可能なすべてのタイマを発生させた後、同期化時刻をデータnの時刻(10:00:00.700)に更新し、新しいデータn(10:00:00.700)を装置データ保存部760の、1つ前のデータn(09:59:59.200)の上に書き込む。
(2−9)データ報告部
図37に示すように、データ報告部770は、先の同期部750で処理可能となったタイマA、B、…nにより起動される。タイマはID等により関連するDCPを識別できる
。DCP(DCP1、DCP2、…DCPn)はID(DCP1、DCP2、…DCPn)を持つので、このIDをタイマ側に持たせると、同じIDを持つDCPを区別できるからである。データ報告部770はDCPに記述してある必要なデータを装置データ保存部760より収集し、報告データを作成・送信する。
以上、バッファを使ったプロセスを説明した。この処理方式では一見DB800等への報告が不正確に行われるように見えるが、報告データに記載される作成の時刻はDCPで要求された時間間隔に正確に従ったものとなる。したがって、最終的にDB800内のデータを分析する際には、まさに装置システム内部の個々の収集時刻に従った正確な時刻のデータを矛盾なく取得する事ができる。
(2−10)パッキングデータ
前述した通り、装置システムには高精度でのデータ収集が求められているが、その解決手法の一つとして、あるデータに関する一定時間分のデータを一まとめにしたパッキングデータを扱う事は容易に想定できる所である。上述した第2のデータ報告方式2で記載した方法であれば、パッキングデータもバッファ内部にそれぞれの収集時刻に従った位置に挿入する事で、DBへの報告データを矛盾無く作成・報告する事が可能となる。
以下に、これを具体的に説明する。
図38に、プロセスモジュール圧力に関する1秒間隔で1分間分のデータを10個一まとめにしたパッキングデータ例を示す。図39に、バッファ部740によって実行される、このようなパッキングデータと、非パッキングデータとが混在する場合のデータ受信フローを示す。
図39を説明する。新データの時刻がバッファ内の最古データの時刻より古いか否か判断する(ステップ391)。古い場合、システム時刻が前に変更されたと判断し、バッファ内データをフラッシュする(ステップ395)。ここで、バッファ内データをフラッシュするとは、バッファ内にある全てのデータを送信することをいう。新データの時刻がバッファ内の最古データの時刻より古くない場合、及び前記バッファ内データをフラッシュした後は、新データ時刻がバッファ内の最新データ時刻+Tより新しいか否か判断する(ステップ392)。新しい場合、新しいバッファを作成する(ステップ396)。新しくない場合、及び新しいバッファを作成した後は、新データがパッキングデータであるか否か判断する(ステップ393)。パッキングデータである場合、パッキングデータを分解してそれぞれのデータをバッファへ時刻順に挿入する(ステップ397)。パッキングデータではない場合、新データをバッファへ挿入する(ステップ398)。パッキングデータ及び新データをバッファへ挿入後は、バッファ範囲(x秒)外データをフラッシュする(ステップ394)。
(2−11)第2の実施の形態の効果
本実施の形態によれば、基板処理システム内部で生成される各種データの発生順序や収集されるデータ間の整合性を管理することができる。また、本実施の形態によれば、データソースに依存しないので、各種データを容易に管理することができる。また、本実施の形態によれば、半導体製造装置システム側で適切なデータを半導体製造工場側のシステムへ供給する事ができるので、このデータを供給される半導体製造工場側でのデータ解析ができる。
なお、上述した第1及び第2の実施の形態では、いずれも基板処理を成膜処理としたが、成膜処理には、例えばCVD、PVD、酸化膜、窒化膜を形成する処理、金属を含む膜を形成する処理が含まれる。さらに、アニール処理、酸化処理、窒化処理、拡散処理などの処理でも構わない。また、基板処理装置が縦型装置である場合について説明したが、枚葉装置にも適用できる。更に、基板処理装置には、半導体製造装置の他に、露光装置、塗
布装置、乾燥装置、加熱装置なども含まれる。
以下に、本発明の好ましい態様を付記する。
複数の部品で構成される基板処理装置と、該基板処理装置を時間と各部品を規定する制御手順を定めたものとにより制御する制御手段と、前記制御手段を介さずに前記部品から直接データを収集する収集ユニットとを備え、前記収集ユニットは、前記制御手段を経由して収集したデータと各部品から直接収集したデータとの整合を取る基板処理システム。
前記収集ユニットは、前記部品から直接収集したデータを蓄積しておき、蓄積されたデータのうち前記制御手段を経由して収集したデータと時刻整合の取れたものを選択することが好ましい。
また、前記制御手段での収集時刻から前記収集ユニット受信時刻までの差で想定される最大遅延時間を、前記制御手段での最小収集周期時間で割った値のデータを予め蓄積しておくことが好ましい。
また、前記収集ユニットは、前記制御手段を経由して収集したデータと各部品から直接収集したデータとを一時的に蓄積して、各種データに添付される時刻データ順に並べ換えることが好ましい。
複数の部品で構成される基板処理装置と、基板処理を行うために時間と各部品を規定する制御手順を定めたものを制御する制御手段と、該制御手段から各部品で生成されるデータを収集する端末装置と、前記制御手段を介さずに各部品から直接前記データを収集する収集ユニットを備えた基板処理システムを用いたデータ収集方法であって、前記収集ユニットは、前記制御手段を経由して収集したデータと各部品から直接収集したデータとの整合を取るデータ収集方法。
複数の部品で構成される基板処理装置と、基板処理を行うために時間と各部品を規定する制御手順を定めたものを制御する制御手段と、該制御手段から各部品で生成されるデータを収集する端末装置と、前記制御手段を介さずに各部品から直接前記データを収集する収集ユニットを備え、前記収集ユニットは、前記制御手段を経由して収集したデータと各部品から直接収集したデータとの整合を取るデータ収集装置。
また、複数の部品で生成されるデータを各種コントローラを介して間接的に収集する、及び/又は前記データを前記各種コントローラを介さずに前記部品から直接収集する収集ユニットを備え、前記収集ユニットは、収集される前記データの整合を取る手段と、前記整合が取られたデータを一時的に格納するバッファと、前記バッファ内に格納される前記整合が取られたデータを添付される時刻データ順に並べ換える手段とを備えた基板処理システム。
この場合、前記データを収集する際に所定の期間、前記データが前記複数の部品から生成されない場合、前記収集ユニットは、前記時刻データのみの空データを前記バッファ内に格納することが好ましい。
100 基板処理装置
200 ウエハ(基板)
206 ヒータ(部品)
241MFC(部品)
242バルブ(部品)
300(300A、300B) モジュールコントローラ(制御手段)
400 オペレーションユニット(端末装置)
700 コレクションユニット(収集ユニット)

Claims (5)

  1. 複数の部品で生成されたデータをコントローラを介して間接的に収集する収集ユニットを備える基板処理システムであって、
    前記収集ユニットは、
    収集されたデータを前記コントローラを介して収集される際に生じる遅延時間を吸収するために一定時間格納するバッファと、
    前記バッファ内に格納される前記収集されたデータを、収集時刻順に並べ換える手段と、
    前記収集時刻順に前記バッファ内に格納された前記収集されたデータを報告する手段と、
    を有し、
    前記収集されたデータの前記収集時刻が、前記バッファ内の最新データ収集時刻から前記一定時間内の範囲に収まっていれば、前記バッファに格納し、前記範囲に収まっていなければ、新しいバッファを作成し、そのバッファに格納し、
    所定の期間、前記複数の部品で前記データが生成されない場合、時刻だけを取り扱う空データを前記バッファ内に追加し、 前記バッファ内に格納される前記空データ及び前記収集されたデータを含むデータを報告対象とする基板処理システム。
  2. 前記収集ユニットは、前記コントローラを経由して収集した前記データと前記各部品から直接収集した前記データとを一時的に蓄積して、各種データに添付される時刻データ順に並べ換える請求項1記載の基板処理システム。
  3. 複数の部品で生成されるデータを各種コントローラを介して間接的に収集する収集ユニットであって、
    収集されたデータを前記コントローラを介して収集される際に生じる遅延時間を吸収するために一定時間格納するバッファと、
    前記バッファ内に格納される前記収集されたデータを、収集時刻順に並べ換える手段と
    前記収集時刻順に前記バッファ内に格納された前記収集されたデータを報告する手段と、を備え
    前記収集されたデータの前記収集時刻が、前記バッファ内の最新データ収集時刻から前記一定時間内の範囲に収まっていれば、前記バッファに格納し、前記範囲に収まっていなければ、新しいバッファを作成し、そのバッファに格納し、
    所定の期間、前記複数の部品で前記データが生成されない場合、時刻だけを取り扱う空データを前記バッファ内に追加し、
    前記バッファ内に格納される前記空データ及び前記収集されたデータを含むデータを報告対象とする収集ユニット。
  4. 複数の部品で生成されたデータをコントローラを介して間接的に収集する収集ユニットを備える基板処理装置のデータ処理方法であって、
    前記収集ユニットは、
    収集したデータを前記コントローラを介して収集される際に生じる遅延時間を吸収するために一定時間格納するバッファと、
    前記バッファ内に格納される前記収集したデータを、収集時刻順に並べ換える手段と、
    前記収集時刻順に前記バッファ内に格納された前記収集されたデータを報告する手段と、を有し、
    前記収集されたデータの前記収集時刻が、前記バッファ内の最新データ収集時刻から前記一定時間内の範囲に収まっていれば、前記バッファに格納し、前記範囲に収まっていなければ、新しいバッファを作成し、そのバッファに格納し、
    所定の期間、前記複数の部品で前記データが生成されない場合、時刻だけを取り扱う空データを前記バッファ内に追加し、 前記バッファ内に格納される前記空データ及び前記収集されたデータを含むデータを報告対象とする基板処理装置のデータ処理方法。
  5. 複数の部品で生成されたデータをコントローラを介して間接的に収集する収集ユニットを備える基板処理装置であって
    前記収集ユニットは、
    収集したデータを前記コントローラを介して収集される際に生じる遅延時間を吸収するために一定時間格納するバッファと、
    前記バッファ内に格納される前記収集したデータを、収集時刻順に並べ換える手段と、
    前記収集時刻順に前記バッファ内に格納された前記収集されたデータを報告する手段と、を有し、
    前記収集されたデータの前記収集時刻が、前記バッファ内の最新データ収集時刻から前記一定時間内の範囲に収まっていれば、前記バッファに格納し、前記範囲に収まっていなければ、新しいバッファを作成し、そのバッファに格納し、
    所定の期間、前記複数の部品で前記データが生成されない場合、時刻だけを取り扱う空データを前記バッファ内に追加し、
    前記バッファ内に格納される前記空データ及び前記収集されたデータを含むデータを報告対象とする基板処理装置。
JP2009292804A 2009-01-06 2009-12-24 基板処理システム、収集ユニット、基板処理装置のデータ処理方法および基板処理装置 Active JP5465995B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009292804A JP5465995B2 (ja) 2009-01-06 2009-12-24 基板処理システム、収集ユニット、基板処理装置のデータ処理方法および基板処理装置
US12/647,929 US8359117B2 (en) 2009-01-06 2009-12-28 Substrate processing system

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009001090 2009-01-06
JP2009001090 2009-01-06
JP2009292804A JP5465995B2 (ja) 2009-01-06 2009-12-24 基板処理システム、収集ユニット、基板処理装置のデータ処理方法および基板処理装置

Publications (3)

Publication Number Publication Date
JP2010183066A JP2010183066A (ja) 2010-08-19
JP2010183066A5 JP2010183066A5 (ja) 2013-01-24
JP5465995B2 true JP5465995B2 (ja) 2014-04-09

Family

ID=42398625

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009292804A Active JP5465995B2 (ja) 2009-01-06 2009-12-24 基板処理システム、収集ユニット、基板処理装置のデータ処理方法および基板処理装置

Country Status (2)

Country Link
US (1) US8359117B2 (ja)
JP (1) JP5465995B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5796994B2 (ja) * 2010-06-08 2015-10-21 株式会社日立国際電気 処理システム、基板処理装置、処理システムのデータ処理方法、収集ユニット及び記録媒体並びに半導体装置の製造方法
JP6220783B2 (ja) * 2012-07-04 2017-10-25 株式会社日立国際電気 基板処理システム、基板処理装置及びデータ処理方法
JP6270395B2 (ja) * 2013-09-26 2018-01-31 株式会社日立国際電気 基板処理装置及び半導体装置の製造方法並びにプログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54146549A (en) * 1978-05-09 1979-11-15 Hitachi Ltd Information processor
US4298954A (en) * 1979-04-30 1981-11-03 International Business Machines Corporation Alternating data buffers when one buffer is empty and another buffer is variably full of data
US4463443A (en) * 1979-07-24 1984-07-31 The United States Of America As Represented By The Secretary Of The Air Force Data buffer apparatus between subsystems which operate at differing or varying data rates
US5450546A (en) * 1992-01-31 1995-09-12 Adaptec, Inc. Intelligent hardware for automatically controlling buffer memory storage space in a disk drive
US5898588A (en) * 1995-10-27 1999-04-27 Dainippon Screen Mfg. Co. Method and apparatus for controlling substrate processing apparatus
JP3512594B2 (ja) * 1997-06-20 2004-03-29 東京エレクトロン株式会社 制御システム
JP3571218B2 (ja) 1998-06-09 2004-09-29 ティーエム・ティーアンドディー株式会社 同期動作システム
US6298470B1 (en) * 1999-04-15 2001-10-02 Micron Technology, Inc. Method for efficient manufacturing of integrated circuits
JP2001236119A (ja) * 2000-02-22 2001-08-31 Mitsubishi Electric Corp データ収集装置
US6691068B1 (en) * 2000-08-22 2004-02-10 Onwafer Technologies, Inc. Methods and apparatus for obtaining data for process operation, optimization, monitoring, and control
US6868353B1 (en) * 2002-03-04 2005-03-15 Advanced Micro Devices, Inc. Method and apparatus for determining wafer quality profiles
US6776872B2 (en) * 2002-03-05 2004-08-17 Hitachi, Ltd. Data processing apparatus for semiconductor processing apparatus
US6662066B1 (en) * 2002-04-23 2003-12-09 Taiwan Semiconductor Manufacturing Company Dynamic adjustment and auto generation of water per hour (WPH) in capacity check system (CCS) by tool performance tracking platform (TP2)
JP4032421B2 (ja) 2003-02-25 2008-01-16 横河電機株式会社 測定データ同期システム
US8055672B2 (en) * 2004-06-10 2011-11-08 International Business Machines Corporation Dynamic graphical database query and data mining interface
US7620516B2 (en) * 2005-05-02 2009-11-17 Mks Instruments, Inc. Versatile semiconductor manufacturing controller with statistically repeatable response times
KR100684902B1 (ko) * 2005-05-30 2007-02-20 삼성전자주식회사 온도 조절 장치 및 이를 가지는 기판 처리 장치, 그리고상기 장치의 온도를 제어하는 방법

Also Published As

Publication number Publication date
JP2010183066A (ja) 2010-08-19
US20100199001A1 (en) 2010-08-05
US8359117B2 (en) 2013-01-22

Similar Documents

Publication Publication Date Title
JP5796994B2 (ja) 処理システム、基板処理装置、処理システムのデータ処理方法、収集ユニット及び記録媒体並びに半導体装置の製造方法
TWI511075B (zh) 管理裝置、基板處理系統、資料分析方法以及電腦可讀取記錄媒體
US11663562B2 (en) Substrate processing apparatus and controller
US20120226475A1 (en) Substrate processing system, management apparatus, data analysis method
US10295991B2 (en) Substrate processing apparatus and recording medium
JP5575507B2 (ja) 基板処理装置、基板搬送方法、半導体装置の製造方法および基板処理装置のメンテナンス方法
WO2012176727A1 (ja) 基板処理装置
JP5412065B2 (ja) 情報管理方法、情報管理装置及び基板処理システム
JP5465995B2 (ja) 基板処理システム、収集ユニット、基板処理装置のデータ処理方法および基板処理装置
WO2012035965A1 (ja) 基板処理システム及び基板処理装置の表示方法
JP4486692B2 (ja) 基板処理装置
JP5436797B2 (ja) 基板処理システム、装置データサーバ、プログラム及び基板処理装置のデータ処理方法
JP2012222080A (ja) 基板処理システム
JP6001234B2 (ja) 基板処理システム、基板処理装置、データ処理方法およびプログラム
JP2012190821A (ja) 基板処理装置および群管理装置
JP2012129414A (ja) 基板処理システム
JP2009290158A (ja) 基板処理システム
JP2009295906A (ja) 基板処理装置
JP2013074039A (ja) 群管理装置
JP2009260130A (ja) 基板処理システム
JP2024044002A (ja) 基板処理装置、半導体装置の製造方法、及びプログラム
JP2010166082A (ja) 基板処理装置、基板処理装置の表示方法、及び半導体装置の製造方法
JP2014082497A (ja) データ検索方法、データ検索システム及び情報管理装置の管理プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121129

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131225

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140123

R150 Certificate of patent or registration of utility model

Ref document number: 5465995

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250