(57)【要約】【課題】基板処理装置の試験に要する負担を軽減する。【解決手段】シミュレーションシステム１に、基板処理装置の制御ユニットの機能を有するコンピュータ４と、コンピュータ４にネットワーク９を介して接続されるシミュレータ２とを設ける。また、シミュレータ２にユニット模擬装置２０とインタフェース模擬装置３０とを設ける。さらに、シミュレータ２のインタフェース模擬装置３０に基板処理装置を構成する実装処理ユニット１４ｍを接続する。基板処理装置を構成する実装処理ユニットのうちインタフェース模擬装置３０に接続されていない実装処理ユニットについては、その動作をシミュレータ２のユニット模擬装置２０によって模擬する。【選択図】図２
2009081372.tif 000002
【特許請求の範囲】
【請求項１】
基板処理装置の制御ユニットとしての機能を有する制御装置に接続されるシミュレータであって、
前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、
前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、
前記制御装置から得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部と、
を備え、
前記インタフェース部は、前記インタフェース部に接続された実装処理ユニットと前記制御装置との間のデータ通信を仲介するとともに、前記制御装置と前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬することを特徴とするシミュレータ。
【請求項２】
基板処理装置を試験するシミュレーションシステムであって、
前記基板処理装置のプログラムが動作することにより前記基板処理装置の制御ユニットの機能を有するコンピュータと、
前記コンピュータに接続されるシミュレータと、
を備え、
前記シミュレータは、
前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、
前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、
前記コンピュータから得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部と、
を備え、
前記インタフェース部は、前記インタフェース部に接続された実装処理ユニットと前記コンピュータとの間のデータ通信を仲介するとともに、前記コンピュータと前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬することを特徴とするシミュレーションシステム。
【請求項３】
基板処理装置を試験するシミュレーションシステムであって、
前記基板処理装置の制御ユニットと、
前記制御ユニットに接続されるシミュレータと、
を備え、
前記シミュレータは、
前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、
前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、
前記コンピュータから得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部と、
を備え、
前記インタフェース部は、前記インタフェース部に接続された実装処理ユニットと前記コンピュータとの間のデータ通信を仲介するとともに、前記コンピュータと前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬することを特徴とするシミュレーションシステム。
【請求項４】
コンピュータ読み取り可能なプログラムであって、前記プログラムの前記コンピュータによる実行は、前記コンピュータを、基板処理装置の制御ユニットとしての機能を有する制御装置に接続されるシミュレータであって、
前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、
前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、
前記制御装置から得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部と、
を備え、
前記インタフェース部によって、前記インタフェース部に接続された実装処理ユニットと前記制御装置との間のデータ通信を仲介するとともに、前記制御装置と前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬するシミュレータとして機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、基板処理装置を試験する技術に関する。
【背景技術】
【０００２】
半導体デバイスの製造工程においては、半導体デバイスの元となる半導体ウエハ（以下、基板と称する）に対して処理を行う基板処理装置が用いられる。一般に基板処理装置は、コンピュータに類似した機能を有する制御ユニットやオペレータの操作を受け付ける操作ユニット、個々に基板に対する所定の処理を実行する複数の実装処理ユニット、これらのユニットをネットワークに接続する機能を提供するインタフェースユニット等を備えた複合装置として構成されている。
【０００３】
このように、基板処理装置は、制御ユニットによって複数の実装処理ユニットを制御して、これら複数の実装処理ユニットが基板に対してそれぞれ決められた処理を行うことにより、当該基板に対する一連の処理を実行する。
【０００４】
基板に対して実行すべき処理は、半導体デバイスの製造段階や製造する半導体デバイスの種類等に応じて異なる。したがって、基板処理装置に要求される実装処理ユニットの数および種類は状況に応じて様々に変化する。すなわち、実装処理ユニットの数および種類に応じてハードウェア構成の異なる様々なバリエーションの基板処理装置が存在することとなる。
【０００５】
一方、基板処理装置に限らず何らかの装置を開発する場合には、様々な動作試験が行われる。このような動作試験では、実際のハードウェアを試験機として準備して行うことが好ましい。この場合、試験の対象となるユニットのみならず、基板処理装置を構成する全てのハードウェアを試験機として準備することが好ましい。しかし、基板処理装置の個々の実装処理ユニットは、比較的大型かつ高価な装置であるため、様々なバリエーションの基板処理装置を随時試験機として準備することは事実上不可能である。
【０００６】
そこで従来より、基本構成の基板処理装置を試験機として組み立て、これを用いて個々の試験を行っていた。
【０００７】
【特許文献１】特開２００３−３４５６２４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ところが、従来、試験において使用される基本構成の基板処理装置といえども大型かつ高価であるため、充分な台数を確保することがスペースおよびコストの両面において困難であり、試験が充分に行えないという問題があった。また、実際に基板を処理する際に動作させるハードウェア構成と、試験機のハードウェア構成とが必ずしも一致しないために、試験内容が限定されるという問題があった。
【０００９】
また、動作試験は基板処理装置の開発段階にのみ行われるものではなく、例えば、出荷時にも行われる。しかし、従来は、基板処理装置を構成する全てのハードウェアを工場内に搬入して組み立てた後にしか動作試験を行うことができないという問題があった。
【００１０】
このように、従来の技術では、基板処理装置の動作試験における負担が大きいという問題があった。
【００１１】
本発明は、上記課題に鑑みなされたものであり、基板処理装置の試験に要する負担を軽減することを目的とする。
【課題を解決するための手段】
【００１２】
上記の課題を解決するため、請求項１の発明は、基板処理装置の制御ユニットとしての機能を有する制御装置に接続されるシミュレータであって、前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、前記制御装置から得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部とを備え、前記インタフェース部は、前記インタフェース部に接続された実装処理ユニットと前記制御装置との間のデータ通信を仲介するとともに、前記制御装置と前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬することを特徴とする。
【００１３】
また、請求項２の発明は、基板処理装置を試験するシミュレーションシステムであって、前記基板処理装置のプログラムが動作することにより前記基板処理装置の制御ユニットの機能を有するコンピュータと、前記コンピュータに接続されるシミュレータとを備え、前記シミュレータは、前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、前記コンピュータから得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部とを備え、前記インタフェース部は、前記インタフェース部に接続された実装処理ユニットと前記コンピュータとの間のデータ通信を仲介するとともに、前記コンピュータと前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬することを特徴とする。
【００１４】
また、請求項３の発明は、基板処理装置を試験するシミュレーションシステムであって、前記基板処理装置の制御ユニットと、前記制御ユニットに接続されるシミュレータとを備え、前記シミュレータは、前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、前記コンピュータから得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部とを備え、前記インタフェース部は、前記インタフェース部に接続された実装処理ユニットと前記コンピュータとの間のデータ通信を仲介するとともに、前記コンピュータと前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬することを特徴とする。
【００１５】
また、請求項４の発明は、コンピュータ読み取り可能なプログラムであって、前記プログラムの前記コンピュータによる実行は、前記コンピュータを、基板処理装置の制御ユニットとしての機能を有する制御装置に接続されるシミュレータであって、前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、前記制御装置から得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部とを備え、前記インタフェース部によって、前記インタフェース部に接続された実装処理ユニットと前記制御装置との間のデータ通信を仲介するとともに、前記制御装置と前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬するシミュレータとして機能させることを特徴とする。
【発明の効果】
【００１６】
基板処理装置の制御ユニットとしての機能を有する制御装置に接続されるシミュレータであって、基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、制御装置から得られる制御情報に基づいて、分類情報において仮想装置として分類された実装処理ユニットの動作を、基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部とを備え、インタフェース部は、インタフェース部に接続された実装処理ユニットと制御装置との間のデータ通信を仲介するとともに、制御装置とユニット模擬部との間で、基板処理装置における制御ユニットとユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬する。これにより、仮想装置として模擬される実装処理ユニットと、外部装置として実際にハードウェアが接続される実装処理ユニットとをシミュレーションにおいて混在させることができる。したがって、全ての実装処理ユニットを用意することなく、シミュレーションを実行でき、基板処理装置の試験に要する負担が軽減される。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の好適な実施の形態について、添付の図面を参照しつつ、詳細に説明する。
【００１８】
＜１．  第１の実施の形態＞
図１は、基板処理装置１０の基本構成を示す図である。図２は、第１の実施の形態におけるシミュレーションシステム１と情報処理装置６とを示す図である。
【００１９】
一般に、基板処理装置には、実装可能な複数の処理ユニットが製品のラインナップとして準備されており、これらのうちからユーザの要望等に応じて必要な処理ユニットが選択されて、組み合わされる。すなわち、基板処理装置は、複数の処理ユニットの組合せで構成され、カスタマイズによって様々なバリエーションが存在する。
【００２０】
しかし、以下の説明では、シミュレーションシステム１が基板処理装置１０を試験する例について説明する。すなわち、シミュレーションシステム１は、基板処理装置１０を想定した試験を行うものとして説明する。また、製品ラインナップとして準備されている様々なハードウェアを単に「処理ユニット」と称し、処理ユニットのうち基板処理装置１０を構成するために選択されたものを「実装処理ユニット」と称する。
【００２１】
基板処理装置１０は、制御ユニット１１、インタフェースユニット１２、操作ユニット１３、およびｎ個（ｎは自然数）の実装処理ユニット１４１，１４２，・・・，１４ｎを備えている。なお、以下の説明において、便宜上、実装処理ユニット１４１，１４２，・・・，１４ｎを「実装処理ユニット１４」と総称する場合がある。
【００２２】
制御ユニット１１は、ネットワーク９を介してインタフェースユニット１２と接続され、詳細は説明しないが一般的なパーソナルコンピュータを構成するハードウェアを備えている。制御ユニット１１は、基板処理装置１０用のプログラムに従って動作し、ネットワーク９およびインタフェースユニット１２を介して、実装処理ユニット１４を制御する。
【００２３】
インタフェースユニット１２は、実装処理ユニット１４をネットワーク９に接続する機能を有する。これにより、実装処理ユニット１４１，１４２，・・・，１４ｎにおけるデータ通信が個々に異なるプロトコルであったり、あるいは直接ネットワーク９に接続できないプロトコルであっても、制御ユニット１１との間でデータの送受信を行うことができる。
【００２４】
操作ユニット１３は、インタフェースユニット１２に接続され、オペレータが基板処理装置１０を操作するのに必要な指示を入力するために使用される。操作ユニット１３をインタフェースユニット１２に接続するための端子（コネクタ）は、一般には実装処理ユニット１４の周辺に設けられている。
【００２５】
実装処理ユニット１４は、基板に対して何らかの処理を行うユニットであって、具体的には、洗浄ユニット、搬送ユニット、乾燥ユニット、加熱ユニット、冷却ユニット、塗布ユニット、露光ユニット、現像ユニット、検査ユニット、除去（剥離）ユニット等が相当する。ただし、実装処理ユニット１４はこれらに限定されるものではなく、直接的に基板に対する処理を行わない液供給ユニットや空調ユニットのようなユニットも含まれる。
【００２６】
また、実装処理ユニット１４は、複数のハードウェアを有するものに限定されるものではなく、制御可能で、かつ所定の動作を行うハードウェアであれば、個々のランプやセンサ、ブザー、モータ等の単体のハードウェアであってもよい。ただし、説明の都合上、実装処理ユニット１４は、制御ユニット１１、インタフェースユニット１２および操作ユニット１３を含まないものとする。
【００２７】
図２に示すシミュレーションシステム１は、シミュレータ２と、コンピュータ４と、操作ユニット５とを備える。シミュレーションシステム１において、シミュレータ２とコンピュータ４とは、ネットワーク９を介して接続される。
【００２８】
また、シミュレーションシステム１（主にシミュレータ２のユニット模擬装置２０）は、情報処理装置６との間で、記憶媒体９０を介してデータのやりとりを行う。ただし、シミュレータ２と情報処理装置６との間のデータのやりとりは、これに限られるものではなく、例えば、シミュレーションシステム１と情報処理装置６とをネットワークで接続し、通信によってデータのやりとりを行ってもよい。
【００２９】
さらに、図２に示すように、シミュレーションシステム１（シミュレータ２）には、基板処理装置１０に搭載可能な任意の実装処理ユニット１４ｍ（ｍはｎ以下の自然数）が接続可能となっている。詳細は後述するが、オペレータは、基板処理装置１０を構成する実装処理ユニット１４１，１４２，・・・，１４ｎから任意の実装処理ユニット１４ｍを選択して、シミュレーションシステム１に接続し、動作試験を行うことが可能とされている。
【００３０】
なお、図２では、１台の実装処理ユニット１４ｍのみがシミュレーションシステム１に接続されている例を図示しているが、接続される実装処理ユニット１４の数や種類は１つに限定されるものではない。例えば、同種の実装処理ユニット１４が複数台並列して接続されてもよいし、異なる実装処理ユニット１４が複数台接続されてもよい。あるいは、実装処理ユニット１４を１台も接続しなくてもよい。ただし、実装処理ユニット１４が接続されない場合とは、シミュレーションシステム１が、主にソフトウェアについての動作試験を行うことを意味する。
【００３１】
ネットワーク９は、一般的なコンピュータを相互に接続するネットワークである。本実施の形態では、ネットワーク９として、図１に示す基板処理装置１０において、制御ユニット１１とインタフェースユニット１２との間で採用される種類のネットワークを採用する。
【００３２】
シミュレーションシステム１のシミュレータ２は、ユニット模擬装置２０およびインタフェース模擬装置３０を備える。そして、ユニット模擬装置２０は、ネットワーク９を介してインタフェース模擬装置３０と接続される。
【００３３】
図３は、第１の実施の形態におけるユニット模擬装置２０の構成を示す図である。
【００３４】
図３に示す定義リスト２２１は、様々なパラメータや定義式、設定等の情報を含む情報の集合体であり、本発明における定義情報に相当する。定義リスト２２１は、本実施の形態では主に情報処理装置６において作成され、記録媒体９０を介してユニット模擬装置２０に取得される。
【００３５】
定義リスト２２１には、少なくとも実装処理ユニット１４ｍ以外の実装処理ユニット１４について、模擬動作を定義する情報（振る舞い定義ファイル）や入力される情報のデフォルト値を定義する情報（デフォルト定義ファイル）等が含まれる。なお、定義リスト２２１には、製品ラインナップとして存在する全ての処理ユニット（デバイス）に関する情報が含まれていてもよい。
【００３６】
また、分類情報２２２は、シミュレーションシステム１に実際に外部装置として接続される実装処理ユニット１４ｍを示す情報と、実装処理ユニット１４ｍ以外の実装処理ユニット１４を示す情報とが含まれる。なお、実装処理ユニット１４ｍ以外の実装処理ユニット１４とは、すなわち、基板処理装置１０を構成する複数の実装処理ユニット１４のうち、シミュレーションシステム１に接続されない実装処理ユニット１４（仮想装置）である。したがって、分類情報２２２は、基板処理装置１０を構成する複数の実装処理ユニット１４のリストを構成しており、さらに各実装処理ユニット１４について、当該実装処理ユニット１４が外部装置であるか仮想装置であるかを識別する情報が付加されている。
【００３７】
ユニット模擬装置２０は、ＣＰＵ２１、記憶装置２２、操作部２３、表示部２４、ディスク装置２５および通信部２６を備え、一般的なパーソナルコンピュータとしての機能を有している。
【００３８】
ＣＰＵ２１は、記憶装置２２に記憶されているプログラム２２０に従って動作するとともに、必要に応じて定義リスト２２１および分類情報２２２を参照することにより、ユニット模擬装置２０の各構成を制御する。
【００３９】
記憶装置２２は、図示しないＲＯＭ、ＲＡＭおよびハードディスク等から構成され、各種データを適宜記憶する。特に、本実施の形態における記憶装置２２は、プログラム２２０、定義リスト２２１および分類情報２２２を記憶する。
【００４０】
操作部２３は、各種ボタン類やキーボードおよびマウス等から構成され、ユニット模擬装置２０に必要なデータを入力するために、オペレータによって使用される。例えば、操作部２３は、表示部２４に表示される画面（ＧＵＩ）に従ってデータを入力する際や、試験情報２２５（図４参照）を作成する場合にも、必要な指示情報を入力するために使用される。
【００４１】
表示部２４は、例えば、一般的な液晶ディスプレイ装置であって、ＣＰＵ２１からの制御に従って、各種データを画面に表示する。先述のように、表示部２４は、ユニット模擬装置２０の動作状況（シミュレーション結果を含む）や、定義リスト２２１の内容、オペレータの入力を補助するＧＵＩ画面等を表示する。オペレータは、表示部２４に表示される動作状況を確認することによって、シミュレーションされる状況を容易にモニタリングできる。
【００４２】
ディスク装置２５は、可搬性の記憶媒体９０からデータを読み取る装置である。本実施の形態では、記憶媒体９０に記憶された定義リスト２２１および分類情報２２２がディスク装置２５によって読み取られ、記憶装置２２に転送され記憶される。ディスク装置２５としては、例えば、ＦＤドライブ装置、ＣＤ−ＲＯＭドライブ装置およびＤＶＤドライブ装置等が該当する。なお、ディスク装置２５は、各種データを記憶媒体９０に記憶させる（書き込む）機能を有していてもよい。
【００４３】
通信部２６は、ユニット模擬装置２０をネットワーク９に接続する機能を有し、インタフェース模擬装置３０との間でデータ通信を行う機能を有している。
【００４４】
シミュレーションシステム１では、コンピュータ４とインタフェース模擬装置３０とを接続するネットワーク９を、ユニット模擬装置２０とインタフェース模擬装置３０とを接続するネットワークとしても使用する。このようにネットワーク９を兼用することにより、ユニット模擬装置２０とインタフェース模擬装置３０とを接続するためのネットワークを別途構築する必要がない。
【００４５】
また、基板処理装置１０におけるインタフェースユニット１２と実装処理ユニット１４との間で採用される個々のプロトコルにかかわらず、本実施の形態における通信部２６は、インタフェース模擬装置３０との間で、ネットワーク９を用いるプロトコルでデータ通信を行う。このように、ユニット模擬装置２０とインタフェース模擬装置３０との間で、一般的なプロトコルを採用することにより、シミュレータ２は、ユニット模擬装置２０のハードウェアとして市販のパーソナルコンピュータを採用することができ、装置コストを抑制できる。
【００４６】
また、ユニット模擬装置２０が基板処理装置１０において互いに異なるプロトコルを用いる複数の実装処理ユニット１４を模擬する場合であっても、ユニット模擬装置２０とインタフェース模擬装置３０との間では１つのプロトコルでデータ通信を行うこととなる。したがって、シミュレータ２のプログラム２２０等がいたずらに複雑化することがない。
【００４７】
なお、図１から明らかなように、基板処理装置１０において、実装処理ユニット１４はネットワーク９に直接接続されておらず、直接的な通信相手はインタフェースユニット１２に固定されている。すなわち、基板処理装置１０では、実装処理ユニット１４は、直接的にはインタフェースユニット１２のみとデータ通信を行い、制御ユニット１１との間で直接的なデータ通信は行わない。
【００４８】
一方、シミュレーションシステム１において、ユニット模擬装置２０の通信部２６はネットワーク９に接続されている。すなわち、制御ユニット１１としての機能を有するコンピュータ４と、実装処理ユニット１４として振る舞うユニット模擬装置２０との間でインタフェース模擬装置３０を介することなく、直接的なデータ通信が可能である。
【００４９】
しかし、基板処理装置１０におけるデータ通信を、より忠実に再現するために、ユニット模擬装置２０の通信部２６は、ネットワーク９を使用しつつも、直接的にはインタフェース模擬装置３０のみと通信を行う。すなわち、シミュレーションシステム１では、ユニット模擬装置２０とコンピュータ４との間のデータ通信は、インタフェース模擬装置３０を介して行われる。
【００５０】
図４は、第１の実施の形態におけるユニット模擬装置２０の機能ブロックを示す図である。図４に示すデータ転送部２１０、ユニット模擬部２１１、表示制御部２１３および情報生成部２１４は、主にＣＰＵ２１がプログラム２２０に従って動作することにより実現される機能ブロックである。
【００５１】
図４に示す、入力情報２２３は、基板処理装置１０において各実装処理ユニット１４に与えられる情報に相当する情報のうち、シミュレーションシステム１に接続されていない実装処理ユニット１４に向けて送信される情報である。入力情報２２３には、コンピュータ４から得られる制御情報のみならず、操作ユニット５によって生成された操作情報や他の実装処理ユニット１４から得られる情報が含まれていてもよい。
【００５２】
なお、基板処理装置１０において各実装処理ユニット１４に与えられる情報に相当する情報のうち、シミュレーションシステム１にも接続されている実装処理ユニット１４（実装処理ユニット１４ｍ）に向けて送信される情報は、シミュレーションシステム１においても該当する実装処理ユニット１４ｍに向けて送信される。したがって、ユニット模擬装置２０は、このような情報を入力情報２２３として受け取る（受信する）ことはない。
【００５３】
出力情報２２４は、基板処理装置１０において各実装処理ユニット１４から送信（出力）される情報に相当する情報のうち、シミュレーションシステム１に接続されていない実装処理ユニット１４から送信される情報である。
【００５４】
なお、基板処理装置１０において各実装処理ユニット１４から送信（出力）される情報に相当する情報のうち、シミュレーションシステム１にも接続されている実装処理ユニット１４（実装処理ユニット１４ｍ）から送信される情報は、シミュレーションシステム１においても実装処理ユニット１４ｍから送信される。したがって、ユニット模擬装置２０は、このような情報を出力情報２２４として送信することはない。
【００５５】
試験情報２２５は、シミュレーションシステム１においてシミュレーションを行うにあたっての条件を設定するための情報であり、予めオペレータによって作成される。試験情報２２５に含まれる情報としては、例えば、基板処理装置１０が動作する際に想定される周囲の環境データや各ハードウェアの状態（故障等）を示すデータ、あるいは実際の基板処理装置１０に入力されるレシピデータ等であるが、もちろんこれに限定されるものではない。本実施の形態では、シミュレーションを行うオペレータが操作部２３を操作することにより、シミュレーションに先立って情報生成部２１４が予め試験情報２２５を生成する。
【００５６】
データ転送部２１０は、通信部２６がインタフェース模擬装置３０から受信した情報を入力情報２２３として記憶装置２２に転送する。また、データ転送部２１０は、出力情報２２４のうち、コンピュータ４（あるいは操作ユニット５や実装処理ユニット１４ｍ）に送信すべき情報を通信部２６に伝達してインタフェース模擬装置３０に向けて送信させる。
【００５７】
ユニット模擬部２１１は、複数のデバイス模擬部２１２（第１模擬部２１２１、第２模擬部２１２２、・・・、第ｘ模擬部２１２ｘ（ｘはｎ以上の自然数））を備えている。ユニット模擬部２１１は、分類情報２２２と定義リスト２２１とを参照することにより、シミュレーションシステム１に接続されていない実装処理ユニット１４（仮想装置）を構成するデバイスを、第１模擬部２１２１、第２模擬部２１２２、・・・、第ｘ模擬部２１２ｘのいずれかに一対一で割り当てる。詳細は後述するが、デバイスを割り当てられたデバイス模擬部２１２は、それぞれが割り当てられたデバイスの動作を個々に模擬する。
【００５８】
処理ユニットは、通常、１つ以上のデバイスから構成される。そして、この処理ユニットが、実装処理ユニット１４として基板処理装置１０に搭載されると、当該実装処理ユニット１４を構成するすべてのデバイスが基板処理装置１０に搭載されることとなる。
【００５９】
したがって、仮想装置を構成するすべてのデバイスをそれぞれデバイス模擬部２１２に割り当て、各デバイス模擬部２１２が割り当てられたデバイスの動作を個々に模擬することによって、全体としてユニット模擬部２１１は仮想装置の動作を模擬することが可能となる。
【００６０】
先述のように、仮想装置に分類されている実装処理ユニット１４に向けて送信される情報は、主に入力情報２２３としてユニット模擬装置２０に与えられる。したがって、ユニット模擬部２１１は、当該実装処理ユニット１４に搭載されている各デバイスに割り当てられたデバイス模擬部２１２に、入力情報２２３のうちの必要な情報を伝達する。
【００６１】
また、各デバイス模擬部２１２からの出力に基づいて出力情報２２４を生成し、記憶装置２２に記憶させる。なお、各デバイス模擬部２１２から出力される情報のうち、デバイス模擬部２１２に割り当てられているデバイスに向けて出力される情報は、ユニット模擬部２１１によって該当するデバイスが割り当てられているデバイス模擬部２１２に伝達される（すなわち、ユニット模擬部２１１内で処理される）。したがって、このような情報は、本実施の形態においては出力情報２２４に含まれない。しかし、このような情報も、一旦出力情報２２４として生成した後、改めてユニット模擬部２１１がデバイス模擬部２１２に伝達するように構成してもよい。
【００６２】
さらに、ユニット模擬部２１１（各デバイス模擬部２１２）は、定義リスト２２１や試験情報２２５を参照するとともに、表示制御部２１３から伝達される指示情報（後述）に基づいて仮想装置に分類されている実装処理ユニット１４（各デバイス）の動作を模擬する。
【００６３】
表示制御部２１３は、表示部２４にデータを表示させる機能を有する。これにより、表示制御部２１３は、シミュレーションの状況（シミュレーション結果）を表示させる機能、およびシミュレーションシステム１におけるＧＵＩを提供する。
【００６４】
シミュレーションの状況を表示させる機能として、例えば、表示制御部２１３は、デバイスが割り当てられたデバイス模擬部２１２に対して、表示部２４の所定の表示領域を割り当てる。そして、ユニット模擬部２１１からこれらデバイス模擬部２１２の状況に関する情報を取得して、表示部２４に表示させる。このとき、デバイス模擬部２１２の状況を文字情報として表示するだけでなく、デバイス模擬部２１２に対応するデバイスの特性に応じて、その表示形式を変えることも可能である。
【００６５】
例えば、デバイス模擬部２１２によって模擬するデバイスが「ランプ」である場合、このランプを模擬的に表した画像を表示領域に表示させ、これを擬似的に点滅させることによってデバイス模擬部２１２の状況を表示させる。すなわち、デバイスが何らかの表示デバイスである場合、表示部２４にその表示を模擬させる。
【００６６】
これにより、オペレータは、より実機に近い状態で、シミュレーションの状況をモニタリングできる。なお、表示部２４によって表示状態が模擬されるハードウェア（デバイス）としては、「ランプ」だけに限られるものではなく、例えば、「ゲージ」や「メータ」「パネル」等であってもよい。
【００６７】
また、表示制御部２１３は、操作部２３からオペレータの指示情報を受け取り、表示部２４の表示（表示領域）を切り替える。これにより、オペレータは注目しているデバイス（実装処理ユニット１４）についての状況を容易に確認できる。なお、表示部２４に表示される情報（表示領域）は切り替えられるだけではなく、それらが同時に表示されてもよい。
【００６８】
表示制御部２１３のＧＵＩ提供機能としては、表示部２４にＧＵＩ画面を表示させるとともに、ＧＵＩに従ってオペレータによって入力された指示情報を操作部２３から受け取り、主にユニット模擬部２１１に伝達する。このようにして入力される指示情報として、例えば定義リスト２２１に定義されている内容を変更する情報がある。例えば、このような指示情報の入力があった場合は、入力された情報を定義リスト２２１に定義されている情報に優先するように伝達することにより、シミュレータ２は、試験内容（シミュレート条件）を変更できる。
【００６９】
具体例を挙げると、液漏れ検出センサの動作（出力）は、液漏れのない状態を想定して、通常はデフォルト値として「ＯＦＦ」がデフォルト定義ファイル（定義リスト２２１）に設定されている。しかし、このデフォルト値をオペレータが「ＯＮ」に変更することにより、液漏れが発生している状態を擬似的に作り出して試験を行うことができる。
【００７０】
このように、表示制御部２１３がシミュレータ２のＧＵＩ機能を提供し、操作部２３からの指示情報をユニット模擬部２１１に伝達する機能を有しているため、オペレータは任意の条件で試験を行うことができる。
【００７１】
さらに、表示制御部２１３は、情報生成部２１４により生成された試験情報２２５に応じて、オペレータからの指示情報が入力された場合と同様に、ユニット模擬部２１１を制御する。
【００７２】
情報生成部２１４は、操作部２３が受け付けた指示情報に基づいて、基板処理装置１０のプログラムに対する試験内容を規定する試験情報２２５を予め生成する。
【００７３】
図５は、インタフェース模擬装置３０の構成を示す図である。図５に示すように、インタフェース模擬装置３０は、ＣＰＵ３１、記憶装置３２、第１通信部３３、第２通信部３４および第３通信部３５を備えている。
【００７４】
インタフェース模擬装置３０は、ネットワーク９に接続され、インタフェース模擬装置３０に接続された実装処理ユニット１４ｍとコンピュータ４（制御装置）との間のデータ通信を仲介する。また、インタフェース模擬装置３０は、コンピュータ４とユニット模擬装置２０との間で、基板処理装置１０における制御ユニット１１とユニット模擬装置２０によって模擬される実装処理ユニット１４との間のデータ通信を模擬する。
【００７５】
インタフェース模擬装置３０のＣＰＵ３１は、記憶装置３２に記憶されているプログラム３２０に従って動作することにより、インタフェース模擬装置３０の各構成を制御する。
【００７６】
記憶装置３２は、図示しないＲＯＭやＲＡＭから構成され、各種データを適宜記憶する。特に、記憶装置３２は、プログラム３２０を記憶する。
【００７７】
第１通信部３３、第２通信部３４および第３通信部３５は、ネットワーク階層モデルにおける下位層（いわゆる物理層）に相当し、具体的には端子やケーブル等のハードウェアである。
【００７８】
第１通信部３３は、インタフェース模擬装置３０をネットワーク９に接続する。これにより、コンピュータ４とインタフェース模擬装置３０との間のデータ通信およびユニット模擬装置２０とインタフェース模擬装置３０との間のデータ通信が可能となる。
【００７９】
先述のように、シミュレーションシステム１では、コンピュータ４とインタフェース模擬装置３０との間のデータ通信には、基板処理装置１０における制御ユニット１１とインタフェースユニット１２との間のデータ通信に用いられるプロトコルを採用する。本実施の形態に示す基板処理装置１０は、制御ユニット１１とインタフェースユニット１２との間で、ＴＣＰ／ＩＰプロトコルにてデータ通信を行う。したがって、本実施の形態における第１通信部３３は、ＴＣＰ／ＩＰプロトコルに準拠したハードウェアインタフェースとなっている。
【００８０】
第１通信部３３は、先述のように、ユニット模擬装置２０とインタフェース模擬装置３０とを接続する機能も有する。しかし、基板処理装置１０におけるインタフェースユニット１２と各実装処理ユニット１４とを接続するプロトコル（以下、「ローカルプロトコル」と称する）は、ＴＣＰ／ＩＰプロトコルには限られない。むしろ、ＴＣＰ／ＩＰプロトコルはローカルプロトコルとして採用されていない。
【００８１】
ローカルプロトコルは、個々の実装処理ユニット１４を構成するハードウェアの特性に応じて適切なプロトコルが採用されるため、実装処理ユニット１４ごとに異なる場合もある。このようなローカルプロトコルとして、基板処理装置１０は、例えば、Ｉ／Ｏポートによるプロトコル、シリアル通信ポートによるプロトコル、およびモータドライバによるプロトコル等を採用する。
【００８２】
すなわち、インタフェース模擬装置３０における第１通信部３３は、コンピュータ４との間では制御ユニット１１とインタフェースユニット１２との間のプロトコルをそのまま再現する一方で、ユニット模擬装置２０との間では個々のローカルプロトコルをすべてＴＣＰ／ＩＰプロトコルによって模擬する。
【００８３】
第２通信部３４は、インタフェース模擬装置３０と操作ユニット５とを接続する。第２通信部３４は、基板処理装置１０におけるインタフェースユニット１２と操作ユニット１３との間のデータ通信に用いられるプロトコルを採用する。これにより、基板処理装置１０の操作ユニット１３と同等の操作ユニット５をインタフェース模擬装置３０にそのまま接続できる。本実施の形態では、第２通信部３４として、ＲＳ２３２Ｃを採用するが、もちろんこれに限定されるものではない。
【００８４】
第３通信部３５は、インタフェース模擬装置３０と実装処理ユニット１４ｍとを接続する。言い換えれば、インタフェース模擬装置３０が第３通信部３５を備えていることにより、シミュレーションシステム１には実装処理ユニット１４ｍを接続することが可能とされている。
【００８５】
なお、図５では詳細を図示していないが、本実施の形態における第３通信部３５は、複数の接続ポートから構成されており、基板処理装置１０を構成する複数の実装処理ユニット１４のうちの全てを接続することが可能とされている。すなわち、第３通信部３５は、インタフェースユニット１２が実装処理ユニット１４用に備える全ての接続ポートを備えている。したがって、シミュレーションを実行するオペレータは、シミュレーションシステム１（シミュレータ２）に、基板処理装置１０を構成する複数の実装処理ユニット１４のうちの任意の実装処理ユニット１４を実装処理ユニット１４ｍとして接続することが可能である。
【００８６】
図６は、インタフェース模擬装置３０の機能ブロックを示す図である。図６に示すデータ転送部３１０，３１１，３１２，３１３は、主にＣＰＵ３１がプログラム３２０に従って動作することにより実現される機能ブロックである。すなわち、データ転送部３１０，３１１，３１２，３１３はいずれもＣＰＵ３１とプログラム３２０とが協働することによって実現される機能ブロックである。
【００８７】
データ転送部３１０，３１１，３１２はネットワーク階層モデルにおける中位層に相当し、例えばミドルウェアやドライバによって実現される。また、データ転送部３１３はネットワーク階層モデルにおける上位層に相当し、例えばアプリケーションソフトウェアで実現される。
【００８８】
データ転送部３１０は、データ転送部３１３から受け取った情報を、ネットワーク９に適したデータフォーマット（本実施の形態ではＴＣＰ／ＩＰプロトコルに準拠したデータフォーマット）に変換して第１通信部３３に受け渡す。言い換えれば、操作ユニット５または実装処理ユニット１４ｍから送信された情報のうち、コンピュータ４またはユニット模擬装置２０を宛先とする情報を、ネットワーク９に適したデータフォーマットに加工して、第１通信部３３に伝達し、ネットワーク９上に送信させる。
【００８９】
また、データ転送部３１０は、第１通信部３３から受け取った情報のうち、コンピュータ４とユニット模擬装置２０との間で転送される情報（コンピュータ４またはユニット模擬装置２０宛ての情報であって、主には入力情報２２３または出力情報２２４）についても、ネットワーク９に適したデータフォーマットに加工して、第１通信部３３に伝達し、ネットワーク９上に送信させる。
【００９０】
このようにしてデータ転送部３１０によって加工され、第１通信部３３からネットワーク９上に送信された情報は、コンピュータ４またはユニット模擬装置２０によって受信される。
【００９１】
さらに、データ転送部３１０は、第１通信部３３から受け取った情報のうち、操作ユニット５または実装処理ユニット１４ｍ宛ての情報については、データ転送部３１３に受け渡す。このようにしてデータ転送部３１０からデータ転送部３１３に転送された情報は、データ転送部３１３によって、データ転送部３１１またはデータ転送部３１２に転送される。
【００９２】
データ転送部３１１は、第２通信部３４とデータ転送部３１３との間で情報の受け渡しを行う。すなわち、操作ユニット５から第２通信部３４が受信した情報は、データ転送部３１１によってデータ転送部３１３に転送される。
【００９３】
一方、データ転送部３１１には、操作ユニット５に向けて送信される情報がデータ転送部３１３から転送される。データ転送部３１１は、データ転送部３１３から転送された情報を第２通信部３４と操作ユニット５との間のプロトコルに適したデータフォーマットに変換し、第２通信部３４に転送する。
【００９４】
データ転送部３１２は、実装処理ユニット１４ｍが送信した情報を第３通信部３５から受け取り、データ転送部３１３に転送する。なお、インタフェース模擬装置３０に複数の実装処理ユニット１４ｍが接続されている場合には、第３通信部３５が実装処理ユニット１４ｍから受信した情報のうち、他の実装処理ユニット１４ｍを宛先としない情報のみがデータ転送部３１３に転送される。そして、他の実装処理ユニット１４ｍを宛先とする情報は、当該他の実装処理ユニット１４ｍと第３通信部３５との間のプロトコルに適したデータフォーマットに変換された後、第３通信部３５に転送され、当該他の実装処理ユニット１４ｍに向けて送信される。
【００９５】
一方、データ転送部３１２には、実装処理ユニット１４ｍに向けて送信される情報がデータ転送部３１３から転送される。データ転送部３１２は、データ転送部３１３から転送された情報を第３通信部３５と宛先の実装処理ユニット１４ｍとの間のプロトコルに適したデータフォーマットに変換し、第３通信部３５に転送する。
【００９６】
データ転送部３１３は、データ転送部３１０，３１１，３１２の間の情報の転送を行う。すなわち、データ転送部３１０，３１１，３１２のいずれかからデータ転送部３１３が受け取った情報は、データ転送部３１３によって宛先に応じてデータ転送部３１０，３１１，３１２のいずれかに転送される。具体的には、ユニット模擬装置２０またはコンピュータ４が宛先となっている情報はデータ転送部３１０に転送され、操作ユニット５が宛先となっている情報はデータ転送部３１１に転送され、実装処理ユニット１４ｍが宛先となっている情報はデータ転送部３１２に転送される。
【００９７】
図７は、コンピュータ４の構成を示す図である。コンピュータ４は、ＣＰＵ４１、記憶装置４２、操作部４３、表示部４４、ディスク装置４５および通信部４６を備え、基板処理装置１０の制御ユニット１１が備えるハードウェアと同等のハードウェアを備えている。また、コンピュータ４は、一般的なパーソナルコンピュータとしての機能を有している。
【００９８】
ＣＰＵ４１は、設定ファイル４２１を参照しつつプログラム４２０に従って動作することにより、各種データの演算や制御信号の生成を行い、コンピュータ４の各構成を制御する。
【００９９】
ここで、プログラム４２０は、後述する設定ファイル４２１と同様に基板処理装置１０に搭載される「製品」であり、実装処理ユニット１４ｍと同様にシミュレーションシステム１の試験（デバッグ）の対象となる。プログラム４２０は、基板処理装置１０を設計・開発する際に、オペレータ（プログラマ）によって作成され、制御ユニット１１にインストールされる。
【０１００】
設定ファイル４２１は、基板処理装置１０に搭載される実装処理ユニット１４に応じて生成される情報であり、基板処理装置１０を動作させるために必要な情報である。例えば、基板処理装置１０の制御ユニット１１は、設定ファイル４２１を参照することによって、製品ラインナップとして提供されている多くの処理ユニットのうち、実際に搭載されている実装処理ユニット１４を識別する（基板処理装置１０の装置構成を知得する）。したがって、設定ファイル４２１は、プログラム４２０と共に基板処理装置１０のソフトウェアの一部であり、基板処理装置１０の制御ユニット１１にインストールされる。
【０１０１】
このように、コンピュータ４は、制御ユニット１１にインストールされるプログラム４２０および設定ファイル４２１を記憶しており、当該プログラム４２０および設定ファイル４２１に基づいて、制御ユニット１１と同等のハードウェアを制御することにより、制御ユニット１１としての機能を発揮する。
【０１０２】
例えば、ＣＰＵ４１は、実装処理ユニット１４に対する制御情報を生成し、生成した制御情報を、インタフェースユニット１２を介して実装処理ユニット１４に向けて送信するように通信部４６を制御する。ただし、シミュレーションシステム１では、通信部４６から送信される情報は、インタフェースユニット１２ではなく、ネットワーク９に接続されたインタフェース模擬装置３０に向けて送信される。そして、さらにインタフェース模擬装置３０を介してユニット模擬装置２０または実装処理ユニット１４ｍに向けて送信される。
【０１０３】
また、ＣＰＵ４１は、シミュレータ２（インタフェース模擬装置３０）からネットワーク９を介して通信部４６が受信した情報に基づいて、新たな制御情報を生成したり、あるいは必要な情報を表示部４４に表示させる機能も有している。
【０１０４】
記憶装置４２は、図示しないＲＯＭ、ＲＡＭおよびハードディスク等から構成され、必要に応じて各種データを記憶する。特に、本実施の形態における記憶装置４２は、図７に示すように、プログラム４２０および設定ファイル４２１を記憶する。
【０１０５】
操作部４３は、各種ボタン類やキーボードおよびマウス等から構成され、オペレータがコンピュータ４を操作するためのデータを入力するために使用される。なお、シミュレーションシステム１が基板処理装置１０のシミュレートを行っているとき、コンピュータ４を操作するために入力されるデータとは、主に基板処理装置１０を操作するために入力されるデータに相当する。
【０１０６】
また、表示部４４は、各種データを画面に表示する。表示部４４は、基板処理装置１０の制御ユニット１１において表示されるデータを表示する機能を有している。
【０１０７】
コンピュータ４は、特に操作部４３および表示部４４について、実際の基板処理装置１０に搭載される制御ユニット１１と同等のハードウェアを採用する。これにより、コンピュータ４は、基板処理装置１０の制御ユニット１１と同じマンマシンインタフェース（特に表示部４４に表示されるＧＵＩ）を提供できる。したがって、オペレータは、シミュレーションの実行中において、実際の制御ユニット１１（基板処理装置１０）を操作している感覚でコンピュータ４を操作できる。
【０１０８】
ディスク装置４５は、可搬性の記憶媒体９１を読み取る装置である。本実施の形態におけるコンピュータ４では、記憶媒体９１に記憶されたプログラム４２０および設定ファイル４２１がディスク装置４５によって読み取られ、記憶装置４２に転送され記憶される。ディスク装置４５としては、例えば、ＦＤドライブ装置、ＣＤ−ＲＯＭドライブ装置およびＤＶＤドライブ装置等が該当する。なお、ディスク装置４５は、各種データを記憶媒体９１に記憶させる（書き込む）機能を有していてもよい。
【０１０９】
通信部４６は、コンピュータ４をネットワーク９に接続する。これにより、コンピュータ４とシミュレータ２との間でネットワーク９を介したデータ通信が可能となる。ただし、通信部４６の直接の通信相手先は、先述のようにシミュレータ２のインタフェース模擬装置３０に固定されており、通信部４６はインタフェース模擬装置３０を介さずにユニット模擬装置２０との間でデータ通信することはできないようにされている。すなわち、コンピュータ４とユニット模擬装置２０との間のデータ通信は、必ずインタフェース模擬装置３０を介して行われるように構成されている。
【０１１０】
図８は、操作ユニット５の構成を示す図である。操作ユニット５は、ＣＰＵ５１、記憶装置５２、操作部５３、表示部５４および通信部５６を備え、比較的小型で可搬性あるユニットである。
【０１１１】
一般に基板処理装置１０は大型の装置であるため、基板処理装置１０の制御ユニット１１を操作するオペレータにとって、制御ユニット１１の位置から各実装処理ユニット１４の様子や表示状況（ランプやメータ等）を完全に把握することは難しい。
【０１１２】
そこで、基板処理装置１０には、予め様々な位置にコネクタ（接続ポート）が設けられており、これに操作ユニット１３を接続できるように設計されている。すなわち、基板処理装置１０は、オペレータが任意の位置にあるコネクタまで操作ユニット１３を持参することにより、基板処理装置１０を任意の位置で操作できるように構成されている。
【０１１３】
シミュレーションシステム１は、操作ユニット１３と同じ構成の操作ユニット５を用いることにより、操作ユニット１３を用いた場合の基板処理装置１０のシミュレーションも行えるよう構成されている。
【０１１４】
本来、操作ユニット１３は、基板処理装置１０のバリエーションにかかわらず、ほぼ共通に用いられるユニットである。すなわち、基板処理装置１０のバリエーションに応じて、シミュレーションシステム１の操作ユニット５をいくつも準備しておいて取り替える必要はない。したがって、シミュレーションシステム１において、操作ユニット１３をそのまま操作ユニット５として採用したとしても、実装処理ユニット１４において生じるような問題は発生しない。
【０１１５】
なお、操作ユニット１３をユニット模擬装置２０によって模擬することも可能であり、その場合、シミュレーションシステム１において操作ユニット１３のハードウェアは不要となる。しかし、その場合は、シミュレーションシステム１における基板処理装置１０のマンマシンインタフェース（特にハードウェアに依存する部分）の再現性が低下することとなる。
【０１１６】
ＣＰＵ５１は、プログラム５２０に従って動作することにより、各種データの演算や制御信号を生成する。なお、プログラム５２０は、基板処理装置１０の操作ユニット１３に搭載されるものと同じプログラムである。
【０１１７】
記憶装置５２は、図示しないＲＯＭやＲＡＭ等から構成され、プログラム５２０の他、各種データを記憶する。
【０１１８】
操作部５３は、オペレータが指示を入力するために使用される。また、表示部５４は、適宜、情報（例えばＧＵＩ）を画面に表示する。
【０１１９】
以上がシミュレーションシステム１の構成および機能の説明である。次に、情報処理装置６について説明する。
【０１２０】
図９は、情報処理装置６の構成を示す図である。図９に示すように、情報処理装置６は、ＣＰＵ６１、記憶装置６２、操作部６３、表示部６４およびディスク装置６５を備え、一般的なパーソナルコンピュータとしての機能を有している。
【０１２１】
本実施の形態における情報処理装置６は、記憶装置６２に記憶された設定ファイル４２１および基礎ファイル６２１に基づいて、シミュレータ２が仮想装置の動作を模擬するための定義リスト２２１と、基板処理装置１０を構成する実装処理ユニット１４１，１４２，・・・，１４ｎのそれぞれについてシミュレーションにおいて外部装置であるか仮想装置であるかを示す分類情報２２２とを生成する。
【０１２２】
なお、基礎ファイル６２１とは、複数のファイルの集合体であって、処理ユニットの仕様書（あるいは設計書）とも言える情報を含む。すなわち、基礎ファイル６２１は、すべての処理ユニットについて、個々の処理ユニットを設計・開発する段階で、オペレータ（開発担当）によって予め作成される情報である。
【０１２３】
図１０は、基礎ファイル６２１に含まれるアドレス基礎ファイル６２２を例示する図である。アドレス基礎ファイル６２２には、各シンボルに対して「振る舞い定義式」と呼ばれる模擬動作を定義する式が個々に関連付けられている。
【０１２４】
また、図１１は、基礎ファイル６２１に含まれる温調器基礎ファイル６２３を例示する図である。さらに、図１２は、基礎ファイル６２１に含まれる干渉判定基礎ファイル６２４を例示する図である。
【０１２５】
ＣＰＵ６１は、プログラム６２０に従って動作することにより、情報処理装置６の各構成を制御する。なお、ＣＰＵ６１の主な動作については後述する。
【０１２６】
記憶装置６２は、図示しないＲＯＭ、ＲＡＭおよびハードディスク等から構成され、プログラム６２０や各種データを記憶する。特に、記憶装置６２は、ディスク装置６５によって取得された設定ファイル４２１および基礎ファイル６２１を記憶する。また、情報処理装置６が生成した定義リスト２２１や分類情報２２２も、一旦、記憶装置６２に記憶される。
【０１２７】
操作部６３はキーボードやマウス等から構成され、オペレータが情報処理装置６に必要な情報を入力するために使用する。特に、本実施の形態における情報処理装置６では、操作部６３が操作されることによって分類情報２２２が生成される。
【０１２８】
表示部６４は、例えば一般的なディスプレイ装置であって、ＣＰＵ６１からの指示に従って、各種データを画面に表示する。例えば、表示部６４は、オペレータが分類情報２２２を生成する際には、実装処理ユニット１４のリストを表示する。
【０１２９】
本実施の形態における情報処理装置６では、ディスク装置６５が記憶媒体９０に記憶されている設定ファイル４２１および基礎ファイル６２１を読み取ることにより、基板処理装置１０の構成を規定する基礎情報を取得する。
【０１３０】
また、ディスク装置６５は、情報処理装置６により生成された定義リスト２２１および分類情報２２２を記憶媒体９０に書き込む（出力する）機能を有しており、記憶媒体９０に出力された定義リスト２２１および分類情報２２２は、シミュレータ２（ディスク装置２５：図３）によって読み取られる。
【０１３１】
以上の構成を有する情報処理装置６において、定義リスト２２１および分類情報２２２が作成される様子について説明する。
【０１３２】
図１３は、定義リスト２２１において模擬動作を定義する例を示す図である。本実施の形態における情報処理装置６は、デバイス（ハードウェア）ごとにＣＳＶ形式で模擬動作を定義することにより予め定義リスト２２１を作成する。
【０１３３】
図１３に示す例は、「バルブ開出力」がＯＮにされると、１ｓｅｃ後に「バルブ開確認入力」をＯＮにするという「純水回収バルブ」の模擬動作を定義している。これをシミュレータ２のユニット模擬部２１１が参照することにより、ユニット模擬部２１１は、「純水回収バルブ」を、例えば第１模擬部２１２１に割り当てる。
【０１３４】
なお、同じデバイスであっても、模擬動作は複数定義される（例えばバルブ開動作とバルブ閉動作）。したがって、ユニット模擬部２１１は、定義リスト２２１において同一のデバイスについて模擬動作が複数回定義されている場合、当該デバイスのデバイス模擬部２１２への割り当てを一回だけ行い、その後は、新たな割り当ては行わない。
【０１３５】
上記説明では、ユニット模擬部２１１は複数のデバイス模擬部２１２を備えていると説明したが、より詳しくは、ユニット模擬部２１１は、予め第１模擬部２１２１、第２模擬部２１２２、・・・、第ｘ模擬部２１２ｘを備えているのではなく、定義リスト２２１を参照することにより、新たに割り当てが必要なデバイスを発見したときに、新たなデバイス模擬部２１２を生成して、これに当該デバイスを割り当てる。
【０１３６】
このように、記憶装置２２に定義リスト２２１が予め記憶されているので、ユニット模擬部２１１は、仮想装置に搭載されるすべてのデバイス（模擬する必要があるデバイス）を、デバイス模擬部２１２に割り当てることができる。
【０１３７】
図１４および図１５は、情報処理装置６が定義リスト２２１を作成する動作を示す流れ図である。なお、情報処理装置６では、オペレータが定義リスト２２１を作成する処理を選択することにより、上記処理が開始される。
【０１３８】
定義リスト２２１を作成する処理が開始されると、ＣＰＵ６１は、まず、設定ファイル４２１を参照して（ステップＳ１１）、基板処理装置１０の実装処理ユニット１４を判定する。本実施の形態では、設定ファイル４２１に含まれるファイル名に基づいて、基板処理装置１０を構成する実装処理ユニット１４を判定する。ただし、設定ファイル４２１に、例えば、実装処理ユニット１４の識別子（型式番号等）を格納したファイルを含めるようにして判定してもよい。
【０１３９】
基板処理装置１０を構成する実装処理ユニット１４が判明すると、ＣＰＵ６１は、これに応じて定義リスト２２１を作成するために必要な基礎ファイル名を取得する（ステップＳ１２）。これにより、基礎ファイル６２１に含まれる複数のファイルの中から参照されるファイルが確定する。すなわち、ＣＰＵ６１は、設定ファイル４２１を参照することにより、基礎ファイル６２１の中から定義リスト２２１を作成するために必要なファイル（情報）を特定する。
【０１４０】
次に、実装処理ユニット１４に応じて必要な定義ファイルを作成することにより、定義リスト２２１を生成する（ステップＳ１３）。ただし、この時点では、定義リスト２２１を構成する複数の定義ファイルが作成されるだけであり、必要な情報は未だ個々の定義ファイルに格納されない。
【０１４１】
必要な定義ファイルを作成すると、ＣＰＵ６１は、ステップＳ１２で取得した基礎ファイル名に基づいて、そのうちから参照する基礎ファイルを１つ特定する（ステップＳ１４）。さらに、特定した基礎ファイルを開いて、定義リスト２２１に必要な情報を抽出し（ステップＳ１５）、定義リスト２２１の必要な定義ファイルに所定の形式で出力する（ステップＳ１６）。さらに、ステップＳ１５，Ｓ１６の処理を、基礎ファイルの最後まで繰り返す（ステップＳ１７）。
【０１４２】
本実施の形態におけるステップＳ１４ないしＳ１７の処理を、図１０に示すアドレス基礎ファイル６２２を例に説明する。
【０１４３】
まず、ステップＳ１４においてアドレス基礎ファイル６２２を特定すると、ＣＰＵ６１は、アドレス基礎ファイル６２２を開いて、各レコードに格納されている情報をシンボルごとに順次取得する。
【０１４４】
図１０に示す例では、一つ目には、デフォルト値「１」が格納されているので、定義リスト２２１に含まれるデフォルト定義ファイルに、例えば、「CHB/InLevelLeakageDetection,1」のように出力する。また、一つ目のレコードは最終レコードではなく、未だアドレス基礎ファイル６２２に含まれる全レコードについて処理を終了していないので、ステップＳ１７においてＮｏと判定し、ステップＳ１５に戻る。
【０１４５】
次に、二つ目のレコードには、振る舞い定義式、デフォルト値およびアナログ値のいずれにおいても「−」が格納されているので、定義リスト２２１に必要のない情報とみなして、当該レコードに格納されている情報は抽出しない。
【０１４６】
さらに、三つ目のレコードには、振る舞い定義式に「$Level>=4」と格納されているので、定義リスト２２１に含まれる振る舞い定義ファイルに、例えば、「InLevelFixedDetection,$Level>=4,"定量ＯＦＦ"」のように出力する。
【０１４７】
このようにして処理を繰り返すことにより、アドレス基礎ファイル６２２の全レコード（全シンボル）について処理が終了すると、ＣＰＵ６１は、ステップＳ１７においてＹｅｓと判定する。すなわち、ステップＳ１７においてＹｅｓと判定されるごとに、１つの基礎ファイルについての処理が終了する。
【０１４８】
なお、温調器基礎ファイル６２３および干渉判定基礎ファイル６２４についても、同様に、各レコードごとに所定の書式で定義リスト２２１に出力される。
【０１４９】
次に、ＣＰＵ６１は、ステップＳ１４において特定した基礎ファイル（ステップＳ１７において処理が終了した基礎ファイル）から振る舞い定義ファイルが作成されている場合、当該振る舞い定義ファイルにおいて、定義式の異なる同一のシンボルが複数あるか否かを判定する（ステップＳ２１）。
【０１５０】
複数の同一のシンボルにおいて、定義式が異なっていた場合、シミュレータ２は、当該シンボルにおいて、どのように模擬動作を実行すればよいか決定できない。したがって、この場合（ステップＳ２１においてＹｅｓと判定した場合）は、ＣＰＵ６１は、エラーログを出力し（ステップＳ２２）、情報処理装置６は処理を継続する。
【０１５１】
このように、定義リスト２２１にエラーが発生した場合であっても、一旦処理を継続することにより、必要な定義リスト２２１をひとまず完成できる。すなわち、１つのエラーのために、他のファイルの作成が阻害されることが防止できる。なお、エラーログが生成された場合、後に、オペレータがその内容を確認し、エディタ等を用いて手動で定義リスト２２１を修正する。
【０１５２】
一方、ステップＳ２１においてＮｏと判定した場合、ＣＰＵ６１は、エラーログを出力せず、情報処理装置６は、ステップＳ２２をスキップして処理を継続する。なお、複数の同一のシンボルについて定義式が存在したとしても、それらの定義式が同一である場合には、ＣＰＵ６１がその一方をファイルから消去し、情報処理装置６は、ステップＳ２２をスキップする。
【０１５３】
次に、ＣＰＵ６１は、作成された定義リスト２２１のデータチェックにおいて不整合があるか否かを判定する（ステップＳ２３）。不整合の具体例としては、例えば、同一のシンボルについて異なるデフォルト値が設定されている場合や、設定ファイル４２１と基礎ファイル６２１が矛盾する場合、あるいは、振る舞い定義式の「ＡＮＤ」や「ＯＲ」等の演算子で複数のシンボルが定義されており、その中に基板処理装置１０に存在しないシンボル（搭載されていない処理ユニットに関するシンボル）が使用されている場合等である。
【０１５４】
ステップＳ２３において、不整合がない場合、情報処理装置６はステップＳ２４ないしＳ２６をスキップする。
【０１５５】
一方、ステップＳ２３において、不整合があった場合、ＣＰＵ６１は、さらにその不整合が修正可能か否かを判定する（ステップＳ２４）。そして、修正可能であった場合は、ＣＰＵ６１が定義リスト２２１の不整合箇所を修正する（ステップＳ２５）。例えば、作成した振る舞い定義ファイルの振る舞い定義式において、「InDiwPress,"OR(OutInDIWValve,OutOutDIWValve) ? 1140:0","純水圧力"」と定義されている場合において、OutInDIWValveは定義されているが、OutOutDIWValveについては定義がない場合、ＣＰＵ６１は、定義リスト２２１の定義式を「InDiwPress,"OutInDIWValve ? 1140:0","純水圧力"」のように修正する。なお、修正可能でない不整合が発生している場合（ステップＳ２４においてＮｏ）、ＣＰＵ６１は、ステップＳ２６を実行することにより、ステップＳ２２と同様にエラーログを出力する。
【０１５６】
次に、ＣＰＵ６１は、ステップＳ１２において取得した基礎ファイル名に基づいて、全ての基礎ファイル６２１について処理を終了したか否かを判定し（ステップＳ２７）、まだ未処理の基礎ファイル６２１が残っている場合はステップＳ１４に戻って処理を繰り返す。
【０１５７】
一方、全ての基礎ファイル６２１について処理を終了した場合、情報処理装置６は、表示部６４に終了メッセージを表示して（ステップＳ２８）、処理を終了する。
【０１５８】
以上のようにして、情報処理装置６は、基板処理装置１０を設計する際に生成される基礎情報（設定ファイル４２１および基礎ファイル６２１）に基づいて、定義リスト２２１を予め作成する。すなわち、ユーザの要望に応じて、新たな基板処理装置１０が設計されると（ハードウェア構成が決定されると）、それに応じて情報処理装置６が定義リスト２２１を作成する。
【０１５９】
基板処理装置１０は、非常に多くのハードウェア（デバイス）を搭載しているため、定義リスト２２１において定義すべき情報は非常に多量である。例えば、オペレータが２４０〜３００時間程度かかって作成する定義リスト２２１を、情報処理装置６によって作成すると０．５時間程度で作成できる。
【０１６０】
なお、定義リスト２２１を作成するためには、設定ファイル４２１および基礎ファイル６２１を作成する必要がある。しかし、設定ファイル４２１は製品であるため、基板処理装置１０を製造する限り、必ず作成しなければならない情報であり、定義リスト２２１のために作成するものではない（すなわち、工数は増加しない）。また、基礎ファイル６２１は、１回作成すれば、どのような構成の基板処理装置１０にも適用可能な情報である。したがって、基板処理装置１０ごとに定義リスト２２１をオペレータが作成することに比べれば、基礎ファイル６２１を一度作成する方がオペレータの負担は軽減される。
【０１６１】
以上が、情報処理装置６において定義リスト２２１を作成する処理の説明である。次に、情報処理装置６において分類情報２２２を作成する処理について説明する。
【０１６２】
情報処理装置６では、オペレータが分類情報２２２を作成する処理を選択することによって、上記処理が開始される。
【０１６３】
分類情報２２２を作成する処理が開始されると、ＣＰＵ６１は設定ファイル４２１を参照し、基板処理装置１０を構成する処理ユニットのリスト（すなわち、実装処理ユニット１４のリスト）を表示部６４に表示させる。さらに、当該リストとともに、表示部６４に各実装処理ユニット１４ごとにチェックボックスを表示させる。
【０１６４】
オペレータは、各実装処理ユニット１４について、シミュレーションシステム１（インタフェース模擬装置３０）に接続するか否かを確認しつつ、インタフェース模擬装置３０に接続する実装処理ユニット１４については、当該実装処理ユニット１４用に設けられたチェックボックスに対して入力を行う（チェックする）。これにより、実装処理ユニット１４ｍ（外部装置）に分類される実装処理ユニット１４についてはチェックされることとなる。一方、インタフェース模擬装置３０に接続しない実装処理ユニット１４については、当該実装処理ユニット１４用に設けられたチェックボックスに対して入力を行わない（チェックしない）。
【０１６５】
全ての実装処理ユニット１４について確認作業が終了すると、オペレータは分類情報２２２を作成する処理を終了する旨を入力する。これに従って、ＣＰＵ６１は、該当するチェックボックスがチェックされている実装処理ユニット１４を外部装置として分類し、該当するチェックボックスがチェックされていない実装処理ユニット１４を仮想装置として分類して分類情報２２２を作成する。
【０１６６】
以上が、情報処理装置６において分類情報２２２を作成する処理の説明である。
【０１６７】
なお、オペレータは、基板処理装置１０のシミュレーション作業に先立って、情報処理装置６によって生成された定義リスト２２１および分類情報２２２を、ディスク装置６５に装着した記憶媒体９０に記憶させる。さらに、オペレータは、当該記憶媒体９０を、シミュレータ２のディスク装置２５に読み込ませて、定義リスト２２１および分類情報２２２を記憶装置２２に記憶させる。
【０１６８】
以上が、情報処理装置６についての説明である。次に、シミュレーションシステム１を用いてシミュレーションを実行する方法について説明する。
【０１６９】
図１６は、シミュレーションシステム１を用いてシミュレーションを実行する方法を示す流れ図である。シミュレーションシステム１によってシミュレーションを行う前に、まず、準備工程が行われる（ステップＳ３１）。
【０１７０】
準備工程とは、シミュレーションシステム１を動作させるために必要な準備を行うための工程であり、例えば、オペレータによる必要なファイル（定義リスト２２１や分類情報２２２等）の転送や、実装処理ユニット１４ｍの接続等を含む工程である。すなわち、準備工程が終了した時点において、必要なハードウェアの電源がすべて投入されており、かつ、必要なプログラムやファイルの転送（インストール）が完了した状態となる。
【０１７１】
ただし、本実施の形態では、試験情報２２５はシミュレーションシステム１において生成されるので、ステップＳ３１の準備工程が終了した状態では、未だ試験情報２２５の生成はされていないものとする。準備工程が終了した状態において、シミュレーションシステム１は、一旦、オペレータからの所定の指示があるまで待機する状態となる。
【０１７２】
待機状態において、オペレータが、操作部２３を操作することにより、シナリオ作成を選択する指示情報を入力すると、シミュレーションシステム１は、ステップＳ３２においてＹｅｓと判定し、シナリオを作成する（ステップＳ３３）。
【０１７３】
ステップＳ３３の処理は、シミュレーションに先立って、情報生成部２１４が試験情報２２５を予め生成する処理である。以下に、ステップＳ３３の処理について詳細に説明する。
【０１７４】
図１７ないし図２４は、試験情報２２５を作成する間に、表示部２４に表示されるＧＵＩ画面２４０の例である。ＧＵＩ画面２４０は、操作部２３からの指示情報に応じて、表示制御部２１３が表示部２４に表示させる。
【０１７５】
まず、作成する試験情報２２５の区分が選択される。図１７に示すように、「区分ボックス」に設けられたプルダウンボタンを操作することにより、選択可能な区分がプルダウンメニューに一覧表示される。ここに示す例では、「テスト操作」を選択する。
【０１７６】
次に、順次実行するコマンドを選択する。図１８に示すように、「コマンドボックス」に設けられたプルダウンボタンを操作することにより、シミュレータ２において選択可能なコマンドがプルダウンメニューに一覧表示される。オペレータは、表示された一覧から所望するコマンドを選択するだけで、容易に所望するコマンドを入力できる。
【０１７７】
コマンドとは、シミュレーションシステム１に対するオペレータの命令を模擬するものであり、予め定義され準備されている。なお、予め定義されているコマンドの種類等は定義リスト２２１にファイルとして含まれていてもよい。また、ここに示す例では、シミュレータ２のＩＯポートのデフォルト値（デフォルト定義ファイル）を変更するコマンド（SIM-IOChange）を選択する。
【０１７８】
コマンドが選択されると、図１９に示すように、コマンドボックスに選択されたコマンド（ここに示す例では、「SIM-IOChange」）が入力されるとともに、当該コマンドに対して必要な数の「引数ボックス」がアクティブ化され、その引数の名称が表示される。アクティブ化された「引数ボックス」には、プルダウンボタンが設けられ、引数を入力することが可能となる。
【０１７９】
図１９に示す例では、「引数１および引数２のボックス」がアクティブ化されている。これによって、選択されたコマンド「SIM-IOChange」に対して、２つの引数が必要であり、引数３ないし引数５は入力不要であることが容易にわかる。また、引数１として入力しなければならない引数は「接点名称」であり、引数２として入力しなければならない引数は「設定値」であることも容易に理解できる。
【０１８０】
オペレータが、「引数１のボックス」に設けられたプルダウンボタンを操作することにより、図２０に示すように、引数１（ここに示す例では、「接点名称」）として入力可能な引数がプルダウンメニューに一覧表示される。オペレータは、一覧表示された引数から、所望する引数を選択することにより、容易に引数１を入力できる。
【０１８１】
なお、「接点名称」として選択可能なシンボル（基板処理装置１０ごとに異なる）の名称は、例えば、表示制御部２１３が定義リスト２２１を参照することにより取得できる。また、ここに示す例では、引数「/ONB_T4/InShowerFlowLowerLimit」を選択する。
【０１８２】
引数１が選択されると、図２１に示すように、引数１のボックスに選択された引数（ここに示す例では、「/ONB_T4/InShowerFlowLowerLimit」）が入力される。
【０１８３】
オペレータが、「引数２のボックス」に設けられたプルダウンボタンを操作することにより、図２１に示すように、引数２（ここに示す例では、「設定値」）として入力可能な引数がプルダウンメニューに一覧表示される。オペレータは、一覧表示された引数から、所望する引数を選択することにより、容易に引数２を入力できる。ここに示す例では、引数「ON」を選択する。
【０１８４】
引数２が選択されると、図２２に示すように、引数２のボックスに選択された引数（ここに示す例では、「ON」）が入力される。
【０１８５】
選択されたコマンドに対して、必要な引数が全て入力されると、オペレータがＧＵＩ画面２４０に設けられている「行追加ボタン」を操作することにより、図２２に示すように、入力された内容（ここに示す例では、「T,SIM-IOChange,/ONB_T4/InShowerFlowLowerLimit,ON」）が「試験内容表示ボックス」に追加される。
【０１８６】
このようにして、コマンドが繰り返し入力されることにより、図２３に示すように、一連の試験内容（テストシナリオ）が完成する。
【０１８７】
オペレータがＧＵＩ画面２４０に設けられている「保存ボタン」を操作すると、情報生成部２１４が記憶装置２２上にファイルを作成し、「試験内容表示ボックス」に表示されている内容（オペレータが入力した指示情報）を当該ファイルに保存する。このようにして生成されるファイルが試験情報２２５である。
【０１８８】
情報生成部２１４によって試験情報２２５が作成されると、シミュレーションシステム１は、ステップＳ３３を終了する。以上が、図１６に示すステップＳ３３の処理の説明である。
【０１８９】
図１６に戻って、待機状態において、オペレータが、操作部２３を操作することにより、シミュレーション開始を選択する指示情報を入力すると、シミュレーションシステム１（シミュレータ２）は、ステップＳ３４においてＹｅｓと判定し、シミュレーションシステム１はシミュレーションを実行する（ステップＳ３５）。
【０１９０】
シミュレーションシステム１は、シミュレーション（試験）を開始するときに、まず、マニュアルモードで試験を行うか、オートモードで試験を行うかを決定する。この選択は、オペレータからの指示により決定するが、例えば、試験情報２２５の有無によって決定してもよい。
【０１９１】
なお、マニュアルモードとは、シミュレーションの条件等をオペレータが、操作部２３を操作して指示情報を入力することにより行うモードである。マニュアルモードでは、オペレータがその場で自由に指示情報を入力できるので柔軟性に富むが、シミュレーションを行う際に、すべての情報を誤り無く入力しなければならないため、正確性および再現性に劣る。マニュアルモードは、必要に応じてオペレータがシミュレーションシステム１に指示情報を入力し、この指示情報に応じてシミュレーションシステム１が動作するだけの処理であるので、ここでは詳細な説明を省略する。
【０１９２】
一方、オートモードとは、すでに準備されている試験情報２２５に基づいてシミュレーションを行うモードである。オートモードでは、シミュレーションが開始されると、自動的に試験が実行されるので、例えば、シミュレーションをモニタリングしながら適切なタイミングで指示情報を入力する必要がないので、オペレータの負担が軽減される。また、試験情報２２５を共通化することにより、試験の正確性および再現性が向上する。
【０１９３】
以下に、オートモードにおけるシミュレーションシステム１の動作を説明する。
【０１９４】
図２５ないし図２９は、オートモードにおいて表示部２４に表示されるＧＵＩ画面２４１を例示する図である。
【０１９５】
オートモードが選択されると、表示制御部２１３は、表示部２４にＧＵＩ画面２４１を表示させる。図２５に示すＧＵＩ画面２４１には、「テストシナリオ実行ファイルボックス」が設けられており、所望のファイルを指定できるようになっている。
【０１９６】
オペレータが「テストシナリオ実行ファイルボックス」に設けられている「選択ボタン」を操作すると、図２６に示すように、所定のフォルダが開かれ、選択可能なファイルが表示される。ここに示す例では、「TEST_DEMO.tef」を選択する。
【０１９７】
ファイルが選択されると、図２７に示すように、「テストシナリオ実行ファイルボックス」に選択されたファイル（ここに示す例では「TEST_DEMO.tef」）が入力される。これにより、シミュレーションにおいて参照される試験情報２２５が指定される。
【０１９８】
試験情報２２５の指定が終了すると、オペレータは、ＧＵＩ画面２４１に設けられている「実行ボタン」を操作して、シミュレーションを開始させる。「実行ボタン」が操作されると、シミュレーションシステム１はオートモードで試験を開始する。
【０１９９】
シミュレーション中において、表示制御部２１３は、適宜、試験情報２２５を参照し、図２８に示すように、「テストシナリオ実行履歴ボックス」にその内容を表示する。なお、図２８に示すＧＵＩ画面２４２は、ＧＵＩ画面２４１とともに表示部２４に表示される画面であって、シミュレーションの状況（模擬動作の状況）を示す画面である。ＧＵＩ画面２４２は、オートモードに限らず、マニュアルモードで動作する場合にも表示部２４に表示される。
【０２００】
このように、シミュレーションが実行されると、ＧＵＩ画面２４２が表示されることにより、オペレータは、実装処理ユニット１４ｍおよびユニット模擬部２１１の動作状況を容易にモニタリングできる。したがって、基板処理装置１０を構成する全ての実装処理ユニット１４（ハードウェア）を用意しなくても、接続されている実装処理ユニット１４ｍやプログラムの試験を行うことができる。
【０２０１】
また、オートモードでは、ＧＵＩ画面２４１も表示されるので、これによっても状況をモニタリングできる。特に、ＧＵＩ画面２４２は、通常、リアルタイムにその表示内容が変化するため、オペレータはシミュレート中、常にモニタリングしていなければならない。しかし、ＧＵＩ画面２４１は実行順に表示され、過去の状況も表示されたまま残るので、過去の状況も把握できる。
【０２０２】
シミュレーションが終了すると、図２９に示すように、「テストシナリオ実行履歴ボックス」に「シナリオ終了」と表示し、ステップＳ３５の処理を終了する。
【０２０３】
図１６に戻って、待機状態において、オペレータが、操作部２３を操作することにより、処理を終了する指示情報を入力すると、シミュレーションシステム１は、ステップＳ３６においてＹｅｓと判定し、処理を終了する。
【０２０４】
以上のように、本実施の形態におけるシミュレーションシステム１は、基板処理装置１０を構成する全ての処理ユニット（実装処理ユニット１４）を用意することなく、シミュレーションを実行できる。
【０２０５】
また、実際に基板を処理する際に動作させるハードウェア構成（基板処理装置１０の実際の構成）と、試験機のハードウェア構成（シミュレーションシステム１と実装処理ユニット１４ｍからなる構成）とを一致させて、動作試験を行うことが可能である。
【０２０６】
また、シミュレーションシステム１には実装処理ユニット１４ｍを外部装置として接続することが可能とされているので、ソフトウェアの試験のみならず、ハードウェアに対する試験も可能である。すなわち、実装処理ユニット１４についての単体試験も可能であり、柔軟な試験を行うことができる。
【０２０７】
また、従来は、出荷時において、基板処理装置を構成する全てのハードウェアを工場内に搬入して組み立てた後にしか動作試験を行うことができなかったが。シミュレーションシステム１では、既に搬入された実装処理ユニット１４ｍについて、他の実装処理ユニット１４の搬入を待たずに動作試験を行うことが可能である。
【０２０８】
このように、シミュレーションシステム１では、オペレータの負担やコストを増大させることなく、充分に動作試験を行えるので、基板処理装置１０の品質が向上する。
【０２０９】
＜２．  第２の実施の形態＞
第１の実施の形態では、基板処理装置１０を構成する複数の実装処理ユニット１４をシミュレータ２に接続する実装処理ユニット１４ｍ（外部装置）とそれ以外の実装処理ユニット１４（仮想装置）とに分類する情報（分類情報２２２）を、情報処理装置６においてオペレータが必要な情報を入力することにより作成していた。
【０２１０】
図３０は、第２の実施の形態におけるシミュレーションシステム１ａを示す図である。なお、第１の実施の形態と同様の構成については同一の符号を付し、適宜説明を省略する。
【０２１１】
シミュレーションシステム１ａは、シミュレータ２の代わりにシミュレータ２ａを備えている点が第１の実施の形態におけるシミュレーションシステム１と異なっている。また、シミュレータ２ａは、ユニット模擬装置２０の代わりにユニット模擬装置２０ａを備えている点が第１の実施の形態におけるシミュレータ２と異なっている。
【０２１２】
図３１は、第２の実施の形態におけるユニット模擬装置２０ａの機能ブロックを示す図である。なお、図３１において、第１の実施の形態におけるユニット模擬装置２０と同様の構成については、適宜、図示を省略している。
【０２１３】
ユニット模擬装置２０ａは、分類情報２２２を生成する検出部２１５を備えている点が、第１の実施の形態におけるユニット模擬装置２０と異なっている。
【０２１４】
検出部２１５は、基板処理装置１０を構成する全ての実装処理ユニット１４がインタフェース模擬装置３０に接続されているものと仮定して、シミュレーションが実行される前に、通信部２６およびインタフェース模擬装置３０を介して全ての実装処理ユニット１４に対して問い合わせを行う。そして、この問い合わせに対して応答した実装処理ユニット１４については、実際にインタフェース模擬装置３０に接続されていると判断して外部装置として分類し、分類情報２２２を生成する。一方、問い合わせに対して応答のなかった実装処理ユニット１４については仮想装置に分類し、分類情報２２２を生成する。
【０２１５】
すなわち、検出部２１５は、インタフェース模擬装置３０（第３通信部３５）に接続されている実装処理ユニット１４を検出する機能を有しており、この検出結果に応じて分類情報２２２を生成する。
【０２１６】
なお、インタフェース模擬装置３０に接続されている実装処理ユニット１４ｍを検出部２１５が自動的に検出する場合、実装処理ユニット１４が接続されているにもかかわらず、当該実装処理ユニット１４が故障等により応答できなくても、当該実装処理ユニット１４の動作がユニット模擬装置２０ａによって模擬されてしまう。この場合、オペレータは、当該実装処理ユニット１４（ハードウェア）が正常に動作したものと誤認する可能性がある。
【０２１７】
したがって、本実施の形態におけるユニット模擬装置２０ａでは、自動検出により作成された分類情報２２２を表示制御部２１３が参照して表示部２４に表示させる。これにより、オペレータは、インタフェース模擬装置３０に接続した実装処理ユニット１４が、正しく検出されているか否かを確認できる。
【０２１８】
分類情報２２２が検出部２１５によって生成され記憶装置２２に記憶された後は、第１の実施の形態と同様であるので、説明を省略する。
【０２１９】
以上のように、第２の実施の形態におけるシミュレーションシステム１ａは、シミュレーションシステム１ａに接続されている実装処理ユニット１４ｍを検出する検出部２１５を備えることにより、オペレータが情報処理装置６を操作して分類情報２２２を生成する必要がない。したがって、オペレータの負担を軽減できる。
【０２２０】
なお、本実施の形態では、ユニット模擬装置２０ａがインタフェース模擬装置３０に接続されている実装処理ユニット１４の検出を行うとして説明したが、このような検出処理はインタフェース模擬装置３０が行って、その結果をユニット模擬装置２０，２０ａに送信するように構成してもよい。すなわち、インタフェース模擬装置３０が、第３通信部３５に実装処理ユニット１４ｍが接続されているか否かを検出してもよい。
【０２２１】
＜３．  第３の実施の形態＞
第１の実施の形態では、基板処理装置１０の制御ユニット１１を、一般的なパーソナルコンピュータであるコンピュータ４によって模擬していた。しかし、制御ユニット１１は、必ずしも模擬されなくてもよい。
【０２２２】
図３０は、第３の実施の形態におけるシミュレーションシステム１ｂを示す図である。第３の実施の形態におけるシミュレーションシステム１ｂは、コンピュータ４の代わりに制御ユニット４ａを備える点がシミュレーションシステム１と異なる。
【０２２３】
本来、制御ユニット１１はネットワーク９に接続する機能を有している。したがって、コンピュータ４の代わりに、制御ユニット１１と同じ制御ユニット４ａをネットワーク９に接続することも可能である。
【０２２４】
制御ユニット１１は、操作ユニット１３と同様に、基板処理装置１０のバリエーションにかかわらず、共通に用いられるユニットである。すなわち、シミュレーションシステム１ｂにおいて制御ユニット４ａを用いるように構成したとしても、基板処理装置１０のバリエーションに応じて、制御ユニット４ａをいくつも準備しておいて取り替える必要はない。したがって、シミュレーションシステム１ｂのように、制御ユニット１１をそのまま制御ユニット４ａとして採用したとしても、実装処理ユニット１４のような問題は発生しない。
【０２２５】
以上のように、第３の実施の形態におけるシミュレーションシステム１ｂは、シミュレータ２に接続する制御装置として、基板処理装置１０の制御ユニット４ａを用いることにより、第１の実施の形態におけるシミュレーションシステム１と同様の効果を得ることができる。
【０２２６】
また、コンピュータ４の代わりに制御ユニット４ａを用いることにより、第３の実施の形態におけるシミュレーションシステム１ｂは、第１の実施の形態におけるシミュレーションシステム１に比べて、より実機に近い環境で試験を行うことができる。
【０２２７】
＜４．  変形例＞
以上、本発明の実施の形態について説明してきたが、本発明は上記実施の形態に限定されるものではなく様々な変形が可能である。
【０２２８】
例えば、上記実施の形態では、制御ユニット１１の機能を有するコンピュータ４（または制御ユニット４ａ）と、ユニット模擬装置２０とを別々のコンピュータで実現していたが、これを１台のコンピュータで実現することも可能である。
【０２２９】
また、ユニット模擬装置２０とインタフェース模擬装置３０との間のネットワークは、ネットワーク９を兼用しなくてもよい。すなわち、ユニット模擬装置２０とインタフェース模擬装置３０とを別途ケーブルで接続してもよい。あるいは、インタフェース模擬装置３０をユニット模擬装置２０に収納可能なインタフェースボードとして構成し、シミュレータ２を一体化された装置として構成することも可能である。その場合は、シミュレータ２を小型化でき、しいてはシミュレーションシステム１を小型化できる。
【０２３０】
また、上記実施の形態に示す各工程は例示であって、これらに限定されるものではない。例えば、同様の効果が得られるのであれば、各工程の内容および順序等が適宜変更されてもよい。
【図面の簡単な説明】
【０２３１】
【図１】基板処理装置の基本構成を示す図である。
【図２】第１の実施の形態におけるシミュレーションシステムと情報処理装置とを示す図である。
【図３】第１の実施の形態におけるユニット模擬装置の構成を示す図である。
【図４】第１の実施の形態におけるユニット模擬装置の機能ブロックを示す図である。
【図５】インタフェース模擬装置の構成を示す図である。
【図６】インタフェース模擬装置の機能ブロックを示す図である。
【図７】コンピュータの構成を示す図である。
【図８】操作ユニットの構成を示す図である。
【図９】情報処理装置の構成を示す図である。
【図１０】基礎ファイルに含まれるアドレス基礎ファイルを例示する図である。
【図１１】基礎ファイルに含まれる温調器基礎ファイルを例示する図である。
【図１２】基礎ファイルに含まれる干渉判定基礎ファイルを例示する図である。
【図１３】定義リストにおいて模擬動作を定義する例を示す図である。
【図１４】情報処理装置が定義リストを作成する動作を示す流れ図である。
【図１５】情報処理装置が定義リストを作成する動作を示す流れ図である。
【図１６】シミュレーションシステムを用いてシミュレーションを実行する方法を示す流れ図である。
【図１７】試験情報を作成する間に、表示部に表示されるＧＵＩ画面を例示する図である。
【図１８】試験情報を作成する間に、表示部に表示されるＧＵＩ画面を例示する図である。
【図１９】試験情報を作成する間に、表示部に表示されるＧＵＩ画面を例示する図である。
【図２０】試験情報を作成する間に、表示部に表示されるＧＵＩ画面を例示する図である。
【図２１】試験情報を作成する間に、表示部に表示されるＧＵＩ画面を例示する図である。
【図２２】試験情報を作成する間に、表示部に表示されるＧＵＩ画面を例示する図である。
【図２３】試験情報を作成する間に、表示部に表示されるＧＵＩ画面を例示する図である。
【図２４】試験情報を作成する間に、表示部に表示されるＧＵＩ画面を例示する図である。
【図２５】オートモードにおいて表示部に表示されるＧＵＩ画面を例示する図である。
【図２６】オートモードにおいて表示部に表示されるＧＵＩ画面を例示する図である。
【図２７】オートモードにおいて表示部に表示されるＧＵＩ画面を例示する図である。
【図２８】オートモードにおいて表示部に表示されるＧＵＩ画面を例示する図である。
【図２９】オートモードにおいて表示部に表示されるＧＵＩ画面を例示する図である。
【図３０】第２の実施の形態におけるシミュレーションシステムを示す図である。
【図３１】第２の実施の形態におけるユニット模擬装置の機能ブロックを示す図である。
【図３２】第３の実施の形態におけるシミュレーションシステムを示す図である。
【符号の説明】
【０２３２】
１，１ａ，１ｂ  シミュレーションシステム
１０  基板処理装置
１１  制御ユニット
１２  インタフェースユニット
１３  操作ユニット
１４，１４１，１４２，１４ｍ，１４ｎ  実装処理ユニット
２，２ａ  シミュレータ
２０，２０ａ  ユニット模擬装置
２１０  データ転送部
２１１  ユニット模擬部
２１２  デバイス模擬部
２１３  表示制御部
２１４  情報生成部
２１５  検出部
２２  記憶装置
２２０，３２０  プログラム
２２１  定義リスト
２２２  分類情報
２２３  入力情報
２２４  出力情報
２２５  試験情報
２５  ディスク装置
２６  通信部
３０  インタフェース模擬装置
３１０，３１１，３１２，３１３  データ転送部
３２  記憶装置
４  コンピュータ
４２１  設定ファイル
４ａ  制御ユニット
５  操作ユニット
６  情報処理装置
【図１】
2009081372.tif 000003
【図２】
2009081372.tif 000004
【図３】
2009081372.tif 000005
【図４】
2009081372.tif 000006
【図５】
2009081372.tif 000007
【図６】
2009081372.tif 000008
【図７】
2009081372.tif 000009
【図８】
2009081372.tif 000010
【図９】
2009081372.tif 000011
【図１０】
2009081372.tif 000012
【図１１】
2009081372.tif 000013
【図１２】
2009081372.tif 000014
【図１３】
2009081372.tif 000015
【図１４】
2009081372.tif 000016
【図１５】
2009081372.tif 000017
【図１６】
2009081372.tif 000018
【図１７】
2009081372.tif 000019
【図１８】
2009081372.tif 000020
【図１９】
2009081372.tif 000021
【図２０】
2009081372.tif 000022
【図２１】
2009081372.tif 000023
【図２２】
2009081372.tif 000024
【図２３】
2009081372.tif 000025
【図２４】
2009081372.tif 000026
【図２５】
2009081372.tif 000027
【図２６】
2009081372.tif 000028
【図２７】
2009081372.tif 000029
【図２８】
2009081372.tif 000030
【図２９】
2009081372.tif 000031
【図３０】
2009081372.tif 000032
【図３１】
2009081372.tif 000033
【図３２】
2009081372.tif 000034