(57)【要約】【課題】パルス毎にそれぞれの選択された狭い範囲の値内に維持されることを必要とする１組のパラメータで非常に狭い幅の非常に細長い光パルスのビームを生成するパルスレーザＤＵＶ光源及び光学列を含み、加工物上の材料の結晶化のために作業ステージ上に担持された該加工物を照射する光を送出するパルスＤＵＶ加工物処理装置を提供する。【解決手段】レーザコントローラと、作業ステージコントローラと、顧客レシピ制御指令発生器からプロセスレシピ制御要求を受信して、制御信号を前記レーザコントローラ及び前記作業ステージコントローラに供給するシステムコントローラとを含むことを特徴とする装置。システムコントローラは、外部プロセスユーザインタフェースを通してユーザによって選択可能な一般プロセス指令段階を収容するデータベースを含んでいてよいデータベース主導プロセスコントローラを含んでいてよい。【選択図】図１
2009540540.tif 000002
【特許請求の範囲】
【請求項１】
パルス毎にそれぞれの選択された狭い範囲の値内に維持されることを必要とする１組のパラメータで非常に狭い幅の非常に細長い光パルスのビームを生成するパルスレーザＤＵＶ光源及び光学列を含み、加工物上の材料の結晶化のために作業ステージ上に担持された該加工物を照射する光を送出するパルスＤＵＶ加工物処理装置であって、
レーザコントローラと、
作業ステージコントローラと、
外部プロセスユーザインタフェースを通してユーザによって選択可能な一般プロセス指令段階を収容するデータベース、
を含むデータベース主導プロセスコントローラ、
を含み、顧客レシピ制御指令発生器からプロセスレシピ制御要求を受信して、制御信号を前記レーザコントローラ及び前記作業ステージコントローラに供給するシステムコントローラと、
を含むことを特徴とする装置。
【請求項２】
ユーザからユーザへのプロセス制御カスタム化、
を更に含むことを特徴とする請求項１に記載の装置。
【請求項３】
前記外部プロセスユーザインタフェースを通じて選択されたプロセス指令段階をそれぞれの１つ又は複数の一般スクリプトに変換する解釈プログラム、
を更に含むことを特徴とする請求項１に記載の装置。
【請求項４】
前記外部プロセスユーザインタフェースを通じて選択されたプロセス指令段階をそれぞれの１つ又は複数の一般スクリプトに変換する解釈プログラム、
を更に含むことを特徴とする請求項２に記載の装置。
【請求項５】
ＯＥＭデータベースに格納されたタスクに基づいて該ＯＥＭデータベースからユーザによって選択可能な前記ユーザプロセス指令段階を該ユーザに対して特定する作業フローエンジン、
を更に含むことを特徴とする請求項１に記載の装置。
【請求項６】
ＯＥＭデータベースに格納されたタスクに基づいて該ＯＥＭデータベースからユーザによって選択可能な前記ユーザプロセス指令段階を該ユーザに対して特定する作業フローエンジン、
を更に含むことを特徴とする請求項２に記載の装置。
【請求項７】
ＯＥＭデータベースに格納されたタスクに基づいて該ＯＥＭデータベースからユーザによって選択可能な前記ユーザプロセス指令段階を該ユーザに対して特定する作業フローエンジン、
を更に含むことを特徴とする請求項３に記載の装置。
【請求項８】
ＯＥＭデータベースに格納されたタスクに基づいて該ＯＥＭデータベースからユーザによって選択可能な前記ユーザプロセス指令段階を該ユーザに対して特定する作業フローエンジン、
を更に含むことを特徴とする請求項４に記載の装置。
【請求項９】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項１に記載の装置。
【請求項１０】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項２に記載の装置。
【請求項１１】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項３に記載の装置。
【請求項１２】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項４に記載の装置。
【請求項１３】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項５に記載の装置。
【請求項１４】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項６に記載の装置。
【請求項１５】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項７に記載の装置。
【請求項１６】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項８に記載の装置。
【請求項１７】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項９に記載の装置。
【請求項１８】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項１０に記載の装置。
【請求項１９】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項１１に記載の装置。
【請求項２０】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項１２に記載の装置。
【請求項２１】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項１３に記載の装置。
【請求項２２】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項１４に記載の装置。
【請求項２３】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項１５に記載の装置。
【請求項２４】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項１６に記載の装置。
【請求項２５】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項１７に記載の装置。
【請求項２６】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項１８に記載の装置。
【請求項２７】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項１９に記載の装置。
【請求項２８】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項２０に記載の装置。
【請求項２９】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項２１に記載の装置。
【請求項３０】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項２２に記載の装置。
【請求項３１】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項２３に記載の装置。
【請求項３２】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項２４に記載の装置。
【請求項３３】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項２５に記載の装置。
【請求項３４】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項２６に記載の装置。
【請求項３５】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項２７に記載の装置。
【請求項３６】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項２８に記載の装置。
【請求項３７】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項２９に記載の装置。
【請求項３８】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項３０に記載の装置。
【請求項３９】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項３１に記載の装置。
【請求項４０】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項３２に記載の装置。
【請求項４１】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項３３に記載の装置。
【請求項４２】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項３４に記載の装置。
【請求項４３】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項３５に記載の装置。
【請求項４４】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項３６に記載の装置。
【請求項４５】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項３７に記載の装置。
【請求項４６】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項３８に記載の装置。
【請求項４７】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項３９に記載の装置。
【請求項４８】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項４０に記載の装置。
【請求項４９】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４１に記載の装置。
【請求項５０】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４２に記載の装置。
【請求項５１】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４３に記載の装置。
【請求項５２】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４４に記載の装置。
【請求項５３】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４５に記載の装置。
【請求項５４】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４６に記載の装置。
【請求項５５】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４７に記載の装置。
【請求項５６】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４８に記載の装置。
【請求項５７】
前記プロセスサーバと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４１に記載の装置。
【請求項５８】
前記プロセスサーバと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４２に記載の装置。
【請求項５９】
前記プロセスサーバと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４３に記載の装置。
【請求項６０】
前記プロセスサーバと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４４に記載の装置。
【請求項６１】
前記プロセスサーバと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４５に記載の装置。
【請求項６２】
ドライバコントローラと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４６に記載の装置。
【請求項６３】
ドライバコントローラと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４７に記載の装置。
【請求項６４】
ドライバコントローラと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４８に記載の装置。
【請求項６５】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項４９に記載の装置。
【請求項６６】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項５０に記載の装置。
【請求項６７】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項５１に記載の装置。
【請求項６８】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項５２に記載の装置。
【請求項６９】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項５３に記載の装置。
【請求項７０】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項５４に記載の装置。
【請求項７１】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項５５に記載の装置。
【請求項７２】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項５６に記載の装置。
【請求項６５】
パルス毎にそれぞれの選択された狭い範囲の値内に維持されることを必要とする１組のパラメータで非常に狭い幅の非常に細長い光パルスのビームを生成するパルスレーザＤＵＶ光源及び光学列を含み、加工物上の材料の結晶化のために作業ステージ上に担持された該加工物を照射する光を送出するパルスＤＵＶ加工物処理装置であって、
レーザコントローラと、
作業ステージコントローラと、
タスクを単一スレッドとして又は複数の非再入可能スレッドとして符号化するために、別のそれぞれのプロセスでそれぞれのタスクを実行するシステムコントローラと、
を含むことを特徴とする装置。
【請求項６６】
前記それぞれのタスクは、各々が単一スレッドとして単一プロセス内のそれぞれのスレッドで実行されるコアタスクを含む、
ことを更に含むことを特徴とする請求項６５に記載の装置。
【請求項６７】
各スレッドが、それぞれのタスクへのアクセスを連続的かつ非遮断的にするそれぞれのメッセージポンプを有する、
ことを更に含むことを特徴とする請求項６５に記載の装置。
【請求項６８】
各スレッドが、それぞれのタスクへのアクセスを連続的かつ非遮断的にするそれぞれのメッセージポンプを有する、
ことを更に含むことを特徴とする請求項６６に記載の装置。
【請求項６９】
前記メッセージポンプは、
メッセージ待ち行列及びメッセージループ、
を含む、
ことを更に含むことを特徴とする請求項６７に記載の装置。
【請求項７０】
システムプロセッサが、エラーを処理する、
ことを更に含むことを特徴とする請求項６５に記載の装置。
【請求項７１】
システムプロセッサが、エラーを処理する、
ことを更に含むことを特徴とする請求項６６に記載の装置。
【請求項７２】
システムプロセッサが、エラーを処理する、
ことを更に含むことを特徴とする請求項６７に記載の装置。
【請求項７３】
前記システムコントローラは、エラーを処理する、
ことを更に含むことを特徴とする請求項６８に記載の装置。
【請求項７４】
前記システムコントローラは、エラーを処理する、
ことを更に含むことを特徴とする請求項６９に記載の装置。
【請求項７５】
前記システムプロセッサのメッセージが、前記メッセージポンプを使って処理される、
ことを更に含むことを特徴とする請求項７０に記載の装置。
【請求項７６】
前記システムプロセッサのメッセージが、前記メッセージポンプを使って処理される、
ことを更に含むことを特徴とする請求項７１に記載の装置。
【請求項７７】
前記システムプロセッサのメッセージが、前記メッセージポンプを使って処理される、
ことを更に含むことを特徴とする請求項７２に記載の装置。
【請求項７８】
システムプロセッサのメッセージが、前記メッセージポンプを使って処理される、
ことを更に含むことを特徴とする請求項７３に記載の装置。
【請求項７９】
システムプロセッサのメッセージが、前記メッセージポンプを使って処理される、
ことを更に含むことを特徴とする請求項７４に記載の装置。
【請求項８０】
パルス毎にそれぞれの選択された狭い範囲の値内に維持されることを必要とする１組のパラメータで非常に狭い幅の非常に細長い光パルスのビームを生成するパルスレーザＤＵＶ光源及び光学列を含み、加工物上の材料の結晶化のために作業ステージ上に担持された該加工物を照射する光を送出するパルスＤＵＶ加工物処理装置であって、
レーザコントローラと、
作業ステージコントローラと、
１つがプロセスデバイスの各々とのデバイスインタフェースを含む少なくとも２つの別々に機能するスレッドを利用してシステムデバイスマネージャによって制御される複数のプロセスデバイスと、
を含むことを特徴とする装置。
【請求項８１】
前記２つの別々に機能するスレッドは、前記それぞれのデバイスの全てに関連した制御スレッド及び該それぞれのデバイスの全てに関連した診断スレッドを含む、
ことを更に含むことを特徴とする請求項８０に記載の装置。
【請求項８２】
各別々に機能するスレッドが、別々の通信チャンネルを含む、
ことを更に含むことを特徴とする請求項８０に記載の装置。
【請求項８３】
各別々に機能するスレッドが、別々の通信チャンネルを含む、
ことを更に含むことを特徴とする請求項８１に記載の装置。
【請求項８４】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項８０に記載の装置。
【請求項８５】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項８１に記載の装置。
【請求項８６】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項８２に記載の装置。
【請求項８７】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項８３に記載の装置。
【請求項８８】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項８４に記載の装置。
【請求項８９】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項８５に記載の装置。
【請求項９０】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項８６に記載の装置。
【請求項９１】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項８７に記載の装置。
【請求項９２】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項９に記載の装置。
【請求項９３】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項１０に記載の装置。
【請求項９４】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項１１に記載の装置。
【請求項９５】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項１２に記載の装置。
【請求項９６】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項１３に記載の装置。
【請求項９７】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項１４に記載の装置。
【請求項９８】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項１５に記載の装置。
【請求項９９】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項１６に記載の装置。
【請求項１００】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項５７に記載の装置。
【請求項１０１】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項５８に記載の装置。
【請求項１０２】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項５９に記載の装置。
【請求項１０３】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項６０に記載の装置。
【請求項１０４】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項６１に記載の装置。
【請求項１０５】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項６２に記載の装置。
【請求項１０６】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項６３に記載の装置。
【請求項１０７】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項６４に記載の装置。
【請求項１０８】
前記少なくとも２つの別々に機能するスレッドは、１つ又はそれよりも多くの別々に機能するスレッドを各々が前記複数のプロセスデバイスのそれぞれのものとの別々のデバイスインタフェースとして含む、
ことを更に含むことを特徴とする請求項８０に記載の装置。
【請求項１０９】
前記２つの別々に機能するスレッドは、前記それぞれのデバイスに関連したそれぞれの制御スレッド及び該それぞれのデバイスに関連したそれぞれの診断スレッドを含む、
ことを更に含むことを特徴とする請求項１０８に記載の装置。
【請求項１１０】
各別々に機能するスレッドが、別々の通信チャンネルを含む、
ことを更に含むことを特徴とする請求項１０８に記載の装置。
【請求項１１１】
各別々に機能するスレッドが、別々の通信チャンネルを含む、
ことを更に含むことを特徴とする請求項１０９に記載の装置。
【請求項１１２】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項１０８に記載の装置。
【請求項１１３】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項１０９に記載の装置。
【請求項１１４】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項１１０に記載の装置。
【請求項１１５】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項１１１に記載の装置。
【請求項１１６】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項１１２に記載の装置。
【請求項１１７】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項１１３に記載の装置。
【請求項１１８】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項１１４に記載の装置。
【請求項１１９】
データベース主導プロセスサーバ、
を含むことを特徴とする装置。
【請求項１２０】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項１１５に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
開示する内容は、例えば、フラットパネルディスプレイのような製品を製造するための薄膜トランジスタのその後の形成のために溶融して細長多結晶形シリコンに再結晶させるアモルファスシリコンの上層を含む１つ又はそれよりも多くの層で覆われた基板を有するパネル上の材料の表面処理に有用な高パルス繰返し数レーザシステム、例えば、エキシマ又は分子フッ素ガス放電レーザシステムのためのタイミング及びエネルギの制御装置に関する。このようなシステムは、例えば、低温ポリシリコン工程（ＬＴＰＳ）又は細線ビーム連続横方向結晶化（ｔｂＳＬＳ）システムに利用することができる。
【０００２】
関連出願への相互参照
本出願は、２００６年６月２日出願の米国特許出願出願番号第６０／８１０、５２７号に対する優先権を請求するものである。本出願はまた、２００７年５月２１日出願の「ハイパワーレーザフラットパネル加工物処理システムコントローラ」という名称の米国特許出願出願番号第１１／８０５、１９９号に対する優先権を請求するものである。本出願は、代理人整理番号第２００４−０１３２−０１号である２００５年５月２６日出願の「線ビームとして成形されたレーザと基板上に堆積された膜との間の相互作用を実行するシステム及び方法」という名称の現在特許出願中の米国特許出願第１１／１３８、１７５号と、代理人整理番号第２００３−０１０５−０２号である２００４年２月１８日出願の「超高エネルギ高安定性ガス放電レーザ表面処理システム」という名称の第１０／７８１、２５１号と、代理人整理番号第２００４−００６２−０１号である２００４年７月１日出願の「レーザＬＴＰＳシステム」という名称の第１０／８８４、５４７号と、２００４年７月１日出願の「レーザＬＴＰシステム光学器械」という名称の第１０／８８４／１０１号とに関するものであり、これらの特許の開示内容は、本明細書において引用により組み込まれている。
【背景技術】
【０００３】
例えば、フラットパネルディスプレイのような製品を製造するための薄膜トランジスタのその後の形成のために溶融して細長多結晶形シリコンに再結晶させるアモルファスシリコンの上層を含む１つ又はそれよりも多くの層で覆われた基板を有するパネル上の材料の表面処理に有用な高パルス繰返し数レーザシステム、例えば、エキシマ又は分子フッ素ガス放電レーザシステムの分野においては、より良好なシステム制御への要望があり、本出願人は、この問題に注意を向けるものである。このようなシステムは、例えば、低温ポリシリコン工程（ＬＴＰＳ）又は細線ビーム連続横方向結晶化（ｔｂＳＬＳ）システムに利用することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許出願出願番号第６０／８１０、５２７号
【特許文献２】米国特許出願出願番号第１１／８０５、１９９号
【特許文献３】米国特許出願第１１／１３８、１７５号
【特許文献４】米国特許出願第１０／７８１、２５１号
【特許文献５】米国特許出願第１０／８８４、５４７号
【特許文献６】米国特許出願第１０／８８４／１０１号
【発明の概要】
【課題を解決するための手段】
【０００５】
パルス毎にそれぞれの選択された狭い範囲の値内に維持されることを必要とする１組のパラメータで非常に狭い幅の非常に細長い光パルスビームを生成するパルスレーザＤＵＶ光源及び光学列を含むことができ、作業ステージ上に担持されて、加工物上の材料の結晶化のために加工物に照射する光を送出するためのパルスＤＵＶ加工物処理装置及び方法を開示し、これは、レーザコントローラと、作業ステージコントローラと、外部プロセスユーザインタフェースを通してユーザにより選択可能な一般プロセス指令段階を収容するデータベースを含むことができるデータベース主導プロセスコントローラを含みことができて、顧客レシピ制御指令発生器からプロセスレシピ制御要求を受信して制御信号をレーザコントローラ及び作業ステージコントローラに供給するシステムコントローラとを含むことができる。装置及び方法は、ユーザからユーザへのプロセス制御カスタム化を含むことができ、外部プロセスユーザインタフェースを通じて選択されたプロセス指令段階をそれぞれの１つ又は複数の一般スクリプトに変換する解釈プログラムも含むことができる。装置及び方法は、ＯＥＭデータベースに格納されたタスクに基づくことができ、ＯＥＭデータベースからユーザにより選択可能なプロセス指令段階をユーザに特定する作業フローエンジンを含むことができる。装置及び方法は、レーザコントローラ及び作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、ユーザからのレシピ定義を入力してプロセスサーバにユーザ指令を送るＧＵＩクライアントとを含むことができる。ＧＵＩクライアントは、レーザ及び作業ステージを含む群からの少なくとも１つのデバイスの状態、及び／又は加工物上の結晶化プロセスの状態を表示するディスプレイを含むことができ、かつインタフェースを通して製造実行システムインタフェースと通信することができる。装置及び方法は、ＯＥＭにより供給された読取専用タスク定義を収容することができるＯＥＭ読取専用データベースと、ユーザ供給レシピ定義を収容するマスターシステムコントローラ読取書込データベースとを更に含むことができる。ＯＥＭデータベースは、プロセス制御中にプロセスサーバにより使用可能なマクロ又はスクリプトの形態の一般タスク定義と、ＭＳＣデータベースに格納されたユーザ入力パラメータをＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラムとを含むことができる。入力パラメータは、ＭＳＣデータベースに既に以前に格納されたものとすることができ、一般指令は、ＯＥＭデータベースのスクリプトに収容することができる。装置及び方法は、各々がメッセージ待ち行列及びメッセージループを含む、プロセスサーバと通信する複数のプロセス制御サブシステムと、それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプとを更に含むことができ、かつ指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに通信を変換する言語変換器を利用し、レーザ及び作業ステージを含む群からの少なくとも１つのデバイスと通信するデバイスインタフェースを更に含むことができる。パルス毎にそれぞれの選択された狭い範囲の値内に維持されることを必要とする１組のパラメータで非常に狭い幅の非常に細長い光パルスビームを生成するパルスレーザＤＵＶ光源及び光学列を含むことができ、作業ステージ上に担持されて、加工物上の材料の結晶化のために加工物に照射する光を送出することができるパルスＤＵＶ加工物処理装置を開示し、これは、レーザコントローラと、作業ステージコントローラと、単一のスレッドとして又は複数の非再入可能スレッドとしてタスクを符号化するために別々のそれぞれのプロセスでそれぞれのタスクを実行するシステムコントローラとを含むことができる。それぞれのタスクは、各々が単一のスレッドとして単一のプロセス内のそれぞれのスレッドで実行されるコアタスクを含むことができる。各スレッドは、それぞれのタスクへのアクセスを連続的かつ非遮断的にするそれぞれのメッセージポンプを有することができる。メッセージポンプは、メッセージ待ち行列及びメッセージループを含むことができ、エラーを処理するシステムプロセッサを更に含むことができる。システムプロセッサメッセージは、メッセージポンプを使って処理することができる。パルス毎にそれぞれの選択された狭い範囲の値内に維持されることを必要とする１組のパラメータで非常に狭い幅の非常に細長い光パルスビームを生成するパルスレーザＤＵＶ光源及び光学列を含むことができ、作業ステージ上に担持されて、加工物上の材料の結晶化のために加工物に照射する光を送出することができるパルスＤＵＶ加工物処理装置を開示し、これは、レーザコントローラと、作業ステージコントローラと、一方がプロセスデバイスの各々とのデバイスインタフェースを含む少なくとも２つの別に機能するスレッドを利用するシステムデバイスマネージャにより制御される複数のプロセスデバイスとを含むことができる。２つの別に機能するスレッドは、それぞれのデバイスの全てに関連した制御スレッドと、それぞれのデバイスの全てに関連した診断スレッドとを含むことができる。各別々に機能するスレッドは、別々の通信チャンネルを含むことができる。システムコントローラは、デバイス型式とは独立した一般デバイス指令を利用することができる。デバイス指令は、高レベルアクションに対応することができる。装置及び方法は、プロセスサーバにユーザ指令を送る前にＭＳＣデータベースにパラメータとしてレシピ定義を格納するＧＵＩクライアントを含むことができ、かつメッセージ待ち行列及びメッセージループを更に含むことができる。装置及び方法は、各々が複数のプロセスデバイスのそれぞれの１つとの別々のデバイスインタフェースとして１つ又はそれよりも多くの別々に機能するスレッドを含む少なくとも２つの別々に機能するスレッドを含むことができる。少なくとも２つの別々に機能するスレッドは、それぞれのデバイスに関連したそれぞれの制御スレッドと、それぞれのデバイスに関連したそれぞれの診断スレッドとを含むことができる。各別々に機能するスレッドは、別々の通信チャンネルを含むことができる。システムコントローラは、デバイス型式とは独立した一般デバイス指令を利用することができる。デバイス指令は、高レベルアクションに対応することができる。
【図面の簡単な説明】
【０００６】
【図１】開示する本発明の実施形態の態様によるマスターシステムコントローラ（ＭＳＣ）を一例として示す概略ブロック図である。
【図２】開示する本発明の実施形態の態様によるＭＳＣの一部分の態様を一例として示す概略ブロック図である。
【図３】開示する本発明の実施形態の態様によるＭＳＣの一部分のアーキテクチャ論理図を一例として示す概略ブロック図である。
【図４】開示する本発明の実施形態の態様によるＭＳＣの一部分のサーバデーモンプロセス図を一例として示す概略ブロック図である。
【図５】開示する本発明の実施形態の態様によるＭＳＣの一部分を一例として表す概略ブロック図である。
【図６】開示する本発明の実施形態の態様によるＭＳＣの一部分を一例として示す概略ブロック図である。
【図７】開示する本発明の実施形態の態様によるシステムの例を一例として示す概略ブロック図である。
【図８】開示する本発明の実施形態の態様によるＭＳＣの一部分のアーキテクチャ配置図を一例として示す概略ブロック図である。
【図９】開示する本発明の実施形態の態様によるサーバデーモンメッセージループを一例として示す概略ブロック図である。
【図１０】開示する本発明の実施形態の態様によるメッセージの表を一例として示す図である。
【図１１】開示する本発明の実施形態の態様によるメッセージの表を一例として示す図である。
【図１２Ａ】開示する本発明の実施形態の態様によるＵＭＬ図を一例として示す概略ブロック図である。
【図１２Ｂ】開示する本発明の実施形態の態様によるＵＭＬ図を一例として示す概略ブロック図である。
【図１３】開示する本発明の実施形態の態様によるＵＭＬ図を一例として示す概略ブロック図である。
【図１４Ａ】開示する本発明の実施形態の態様によるＵＭＬクラス図を一例として示す概略ブロック図である。
【図１４Ｂ】開示する本発明の実施形態の態様によるＵＭＬクラス図を一例として示す概略ブロック図である。
【図１５】開示する本発明の実施形態の態様によるＵＭＬクラス図を一例として示す概略ブロック図である。
【図１６】開示する本発明の実施形態の態様によるＵＭＬクラス図を一例として示す概略ブロック図である。
【図１７】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図１８】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図１９】開示する本発明の実施形態の態様によるＭＳＣの一部分を一例として示す概略ブロック図である。
【図２０Ａ】開示する本発明の実施形態の態様により中立言語フォーマットからデバイス言語フォーマットへの変換を実行するのに使用することができるデータベース及びスクリプトコードを一例として示す図である。
【図２０Ｂ】開示する本発明の実施形態の態様により中立言語フォーマットからデバイス言語フォーマットへの変換を実行するのに使用することができるデータベース及びスクリプトコードを一例として示す図である。
【図２１】開示する本発明の実施形態の態様によるＭＳＣの一部分を一例として示す概略ブロック図である。
【図２２】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図２３】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図２４】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図２５】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図２６】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図２７】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図２８】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図２９】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図３０】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図３１】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図３２】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図３３】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図３４】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図３５】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図３６】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図３７】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図３８】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図３９】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図４０】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図４１】開示する本発明の実施形態の態様により利用することができる例示的なグラフィカルユーザインタフェース画面を一例として示す図である。
【図４２Ａ】開示する本発明の実施形態の態様によるデータベース表の組を一例として示すブロック図である。
【図４２Ｂ】開示する本発明の実施形態の態様によるデータベース表の組を一例として示すブロック図である。
【図４２Ｃ】開示する本発明の実施形態の態様によるデータベース表の組を一例として示すブロック図である。
【図４２Ｄ】開示する本発明の実施形態の態様によるデータベース表の組を一例として示すブロック図である。
【図４２Ｅ】開示する本発明の実施形態の態様によるデータベース表の組を一例として示すブロック図である。
【図４３Ａ】開示する本発明の実施形態の態様によるＭＳＣの一部分を一例として示す概略ブロック図である。
【図４３Ｂ】開示する本発明の実施形態の態様によるＭＳＣの一部分を一例として示す概略ブロック図である。
【図４３Ｃ】開示する本発明の実施形態の態様によるＭＳＣの一部分を一例として示す概略ブロック図である。
【図４４】開示する本発明の実施形態の態様によるＭＳＣの一部分を一例として示す概略ブロック図である。
【発明を実施するための形態】
【０００７】
本発明の実施形態の態様により、ソフトウエアで実施されるコントローラを含む「マスターシステムコントローラ（ＭＳＣ）」アーキテクチャは、ハイパワー細長細線ビーム表面処理システム、例えば、上述のようなＬＴＰＳレーザアニールシステムに向けて提供することができる。例えば、図１でブロック図の形式で概略的に例示するＭＳＣ１０は、レーザ表面処理システムのハードウエア構成要素を制御するマスターシステムコントローラとして、一例として、「ＴＣＺ  ９００Ｘ」レーザアニール装置内のレーザアニールシステムにより処理すべきパネルである加工物の基板上で層状にアモルファスシリコンをアニールする本出願人が「ＴＣＺ  ９００Ｘ」パルス細長細線ビームレーザアニールシステムというものとして機能することができるコントローラソフトウエアを有する。ＭＳＣは、プロセスの態様、例えば、レーザ作動の態様、ハイパワーＤＵＶ照射の細長細線ビームに対する加工物の配置及びＤＵＶ放射線の細長細線ビームに対する加工物の移動、並びに「ＴＣＺ  ９００Ｘ」機械の作動の態様を制御することができる。ＭＳＣ１０ソフトウエアを使用して、プロセスエンジニアは、レシピ及びプロジェクトを定義し、ジョブを実行し、シリコン基板を処理すると共に機械性能をモニタすることができる。ＭＳＣ１０のアーキテクチャは、「ＴＣＺ  ９００Ｘ」装置と協働して機能することができる。ツール構成要素は、本発明の実施形態の態様により、「ＴＣＺ  ９００Ｘ」ツールを費用効率が最も高いものにすると同時に、作動の柔軟性をもたらし、客先単位でかつ時間と共に、かつ客の組織内で用途単位に異なる客先の必要性にツールの作動を容易に適合させるために、適切な高い収量が得られるように「ＴＣＺ  ９００Ｘ」ツールの作動のある一定の態様に対して最適化することができる。
以下は、ＭＳＣ１０の作動の理解を助ける用語集である。
【０００８】
（表）
2009540540.tif 000003
【０００９】
（表続き）
2009540540.tif 000004
【００１０】
開示する本発明の実施形態の態様によれば、ＭＳＣ１０は、２つ又はそれよりも多くの主要ソフトウエア構成要素、デバイス指令を出したり、例えばデーモンプロセスで状態のようなデバイス条件を検査するための手段２０、及びユーザがレシピを定義してジョブを実行することを可能にするグラフィカルユーザインタフェース（ＧＵＩ）４０から成ることができる。開示する本発明の実施形態の態様によれば、ＭＳＣ１０は、データベースを使用してデータを持続的に格納することができる。データベースは、２つのスキーマ、すなわち、システム特定情報を含むことができる読取専用一般（ＯＥＭ）スキーマ、及びユーザ特定情報を含む読取書込ユーザ特定（ＭＳＣ）スキーマを使用することができる。
【００１１】
ＭＳＣコントローラ１０は、特定の通信プロトコルを使用して、例えば、ＴＣＰ／ＩＰソケット上でデバイスの大部分と通信することができ、かつＧＵＩユーザインタフェースでもそうすることができる。
ＭＳＣ１０は、システムのサーバ、通信、ユーザインタフェース、及びデータベース態様を含むそれぞれアーキテクチャ及びデザインのレベルで説明することができる。
【００１２】
以下の用語及び頭字語は、ＭＳＣコントローラ１０の作動及び設計を説明する際に利用することができる。
デーモンプロセス：連続的にデバイスステータスを検査して、ユーザ要求でデバイス指令を出すサーバマシンで実行されるコンピュータプロセス
ＯＥＭスキーマ：製造業者により供給される比較的静的な情報を含む読取専用スキーマ
ＭＳＣスキーマ：ユーザにより供給されるレシピ定義を含む読取書込スキーマ
ＩＣＥ９データベース：ＭＳＣスキーマ及びＯＥＭスキーマを含む関係データベース
ＭＥＳ：製造実行システム
ＳＥＭＩ：半導体機器及び材料国際規格
ＳＥＣＳ／ＧＥＭ：ＳＥＭｌ機器通信規格及び一般機器モデルインタフェース
【００１３】
開示する本発明の実施形態の態様によれば、アーキテクチャの構造及び作動に寄与する高レベル特徴としては、プロジェクト日程計画、セキュリティ及びアクセスコントローラ、モジュール概念（寿命カウンタ）、作業フロー、ＳＥＭＩのＳＥＣＳ／ＧＥＭ規格によるＭＥＳインタフェース、レポート、及び性能を含むことができる。
開示する本発明の実施形態の態様によれば、これらは、イベント及びスケジュールの両方に基づくプロジェクト日程計画、セキュリティ及びアクセス制御、モジュールの柔軟で一般的な導入、デバイスだけではないモジュールのモニタリング、モジュール交換のための画面、寿命カウンタのための柔軟で一般機構、値及びテキストとしてのステータスタブの保守カウンタの表示、診断、ダウンロード及び制御のためのカスタムプロジェクト画面、ＳＥＭＩのＳＥＣＳ／ＧＥＭインタフェースを使用する客先ＭＥＳ８０との統合、プロジェクトレポート、日程計画及びフォルダ／ファイル構造、及び性能測定をもたらすことができる。
【００１４】
このような特徴は、以下の高レベル構成要素を使用して実行することができる。
プロジェクト日程計画：サーバ−プロジェクト日程計画
セキュリティ及びアクセス制御：ＧＵＩ−セキュリティ管理、サーバ−セキュリティ管理
モジュール概念（寿命カウンタ）：ＧＵＩ−システム構成管理、ＧＵＩ−レポート管理、ＧＵＩ−ジョブ管理
作業フロー：ＧＵＩ−プロジェクト管理、ＧＵＩ−作業フローエンジン、ＧＵＩ−レポート管理
ＭＥＳインタフェース：サーバ−ＭＥＳインタフェース
レポート：ＧＵＩ−レポート管理
性能：サーバ−ジョブプロセス
【００１５】
ＭＳＣ１０は、例えば、仕事量を分割するためにスレッド又はプロセスを使用すべきか否かの構造上の問題に複合型手法を用いることができる。この手法では、コアタスクが、単一のプロセス内のスレッド中で実行されるが、タスクの符号化は、実際には、単一スレッド化することができる。これは、独自メッセージポンプ（メッセージ待ち行列及びメッセージループを有する）を有する各スレッドにより可能にすることができる。メッセージポンプは、タスクへのアクセスを本質的に連続的であるが遮断がないものとすることができる。開示する本発明の実施形態の態様によれば、ＭＳＣ１０のコントローラ用途においては、そのような複合型手法では、両方の世界（スレッド対プロセス）から成る最善のものを得ることができる。
【００１６】
開示する本発明の実施形態の態様によれば、デバイスインタフェース手法当たりに１つのスレッド上のインタフェースに複数のスレッドを使用することができる。この手法では、単一のスレッドに頼って全てのデバイスを制御するのではなく、デバイスインタフェースを通信の必要性に向けてより敏感に応答するものにすることができる。上述のように、同期化は、各デバイスインタフェースが遮断のない連続アクセスをもたらすことができる独自メッセージポンプを有するので問題でない。メッセージポンプの存在により、望ましいことに、デバイスインタフェースのコードを単一スレッド化することができる。
【００１７】
開示する本発明の実施形態の態様によれば、ＭＳＣ１０は、エラーが発生したことをユーザに通知する方法を組み込むことができる。例えば、このデザインは、あらゆる他のメッセージのようにメッセージポンプを使用してエラーを処理することができる。しかし、エラーメッセージには、特別なプリファレンスを割り当てることができる。従って、エラーメッセージは、例えそれが行列の前部にないとしても、メッセージ待ち行列からすぐ処理することができる。スレッドを妨害する信号を使用するなどの他の手法を用いれば、ＭＳＣ１０内のリソース及びオブジェクトを未知の状態のままにすることができると考えられる。ＭＳＣ１０がエラーメッセージ及びユーザ割り込みにすぐ応答することができることを保証するために、遮断呼び出しをＭＳＣ１０から排除することができ、かつ何らかの問題のない時間制限内でメッセージループを修理することができる。
【００１８】
開示する本発明の実施形態の態様によれば、デザインエンジニアは、スクリプト記述言語を使用してタスクを定義し、ＯＥＭデータベースに格納することができる。また、ＭＳＣ１０は、デバイスをポーリングすることしかできず、すなわち、デバイスからの割り込みを読取専用アクセスに使用することができない。また、デバイスは、制御及び診断の両方に向けて通信チャンネルを１つしか有することができない。従って、スクリプト記述は、ステータスループ論理には不要とすることができ、単一のプロセスにおける複数のスクリプト記述解釈プログラム及び並列スレッドを回避することができる。
【００１９】
ＭＳＣ１０に装着した全てのデバイスがコントローラ及び診断に向けて別々の通信チャンネルを有すると仮定すると、デバイスインタフェースにつき１つのスレッドを作成する必要がないとすることができる。デバイスの数とは独立に一方は制御のため、他方は診断のための２つのスレッドだけが必要とすることができるが、本出願人は、特定の性能上の理由から装置に対して１つを使用することに決めた。開示する本発明の実施形態の態様により、特定の制約事項が認識され、本出願人は、それに注意を向けた。例えば、制御システムは、一般機構を用いて、デバイス型式とは独立に高レベルアクションに対応するためのデバイス指令を出すことができる。デバイス指令は、コードでハードウエアに組み込むのではなく、データベース又はファイル内に格納することができる。画像パラメータは、例えば、ユーザインタフェース画面の符号化による修正なしに画像に追加することができる。
【００２０】
タスクパラメータの数及び形式は、タスク単位で変えることができ、付加的なタスクを追加したり、又はタスクパラメータの数／形式を変更してもユーザインタフェース画面の符号化による修正は不要である。ＴＣＰ−ＩＰは、デバイスとの通信の主な形式とすることができる。本発明のシステムは、直ちに応答し、かつデバイスから応答を得るために待つ時に遮断しないとすることができる。本発明のシステムは、一般的かつ柔軟性のある機構を用いてモジュールを表すと共に保守カウンタを更新することができ、かつ例えば収量を最大にするために「ＴＣＺ  ９００Ｘ」結晶化プロセス中に制御されている装置の作業中に、必要に応じて並行処理を実行することができる。本発明のシステムは、一般的な作業フローエンジンも達成し、ユーザがプロジェクトを定義、実行、及び報告することを可能にする。本発明のシステムは、ＳＥＭＩのＳＥＣＳ／ＧＥＭインタフェースを使用してＭＥＳ８０と通信する。
【００２１】
開示する本発明の実施形態の態様によれば、ＭＳＣ１０ソフトウエアコントローラは、以下のハードウエア、すなわち、「ＡＭＤ  Ｏｐｔｅｒｏｎ  ｘ８６−６４ビットデュアルプロセッサＣＰＵ」、ＲＡＭ、「ＲＡＩＤ１  ＳＣＳＩ」、「ＲＡＩＤ１  Ｓａｔａ」、ビデオカード、ＮＩＣ、及びタッチスクリーンモニタと共に利用することができる。本発明のシステムは、「Ｌｉｎｕｘ  Ｆｅｄｏｒａ」のようなオペレーティングシステム、Ｐｏｓｔｇｒｅｓ関係ＤＢＭＳのような関係データベース、及びＰｙｔｈｏｎのようなスクリプト記述エンジンを使用することができる。
【００２２】
開示する本発明の実施形態の態様によれば、ＭＳＣ１０は、オブジェクト指定であり、かつＵＭＬに基づくものとすることができる。このようなアーキテクチャ及びデザインは、本出願において説明するパッケージ図、クラス図、構成要素図、及び配置図を利用して、一例として例示すると共に理解することができる。開示する本発明の実施形態の態様によれば、他の問題の中でもとりわけ、エラー処理及び回復、及び収量に及ぼすＭＳＣ１０のこのような及びその他の態様の影響は、おそらく本出願人が選択したＭＳＣ１０のアーキテクチャ及び作動の背後にある２つの主要な推進力とすることができる。
【００２３】
開示する本発明の実施形態の態様によれば、アーキテクチャの概要は、ＭＳＣソフトウエアの機能性が、少なくとも２つの最上位構成要素、すなわち、サーバデーモンプロセス及びＧＵＩクライアントにより達成することができるという事実から始めることができる。サーバデーモンプロセス、例えば、図１のサーバ２０は、デバイス指令を実行してデバイスのステータスをモニタすることを担当することができ、一方、ＧＵＩクライアント、例えば、図１のＧＵＩ４０は、ユーザからユーザ特定情報レシピ定義を取って、サーバデーモンプロセス４０にユーザ指令を送ることを担当することができる。ＧＵＩクライアント１０は、デバイスのステータス及び結晶化プロセスの進行状況をユーザに表示することができる。ＭＳＣシステムの最上位デザインの例は、例示的な１組のシステム１０の主要構成要素及び関係を示す図１及び図２で見ることができる。
【００２４】
開示する本発明の実施形態の態様によれば、図１及び２のブロック図が示すように、ＯＥＭスキーマデータベース２２は、ＭＳＣスキーマデータベース２４から分離させることができる。これは、ＯＥＭスキーマデータベース２２が、読取専用情報、例えば、データタスク定義データを含むことができるからである場合がある。ツールユーザは、ＯＥＭスキーマデータベースを修正しないと予想することができる。ＯＥＭスキーマデータをＭＳＣスキーマデータから分離させておくことにより、作業システム納入業者、例えば、ＭＳＣシステム製造業者（ＯＥＭ）から新しいタスク定義でシステムを更新することが容易であり、例えば、システム全体を特定のユーザの必要性に合わせてカスタマイズする方が容易であると考えられ、これは、制御されているユーザの特定の製造システムの収量及び他の必要性に向けて最適化する最良の方法である。
【００２５】
図２に示すように、ＭＳＣスキーマ読取専用データベース２４は、複数のサブシステム、例えば、ロット管理サブシステム２３０、レシピ管理サブシステム２３２、セキュリティ管理サブシステム２３４、プロジェクト管理サブシステム２３６、システム構成管理サブシステム２７０、及びジョブ処理サブシステム４２にリンクさせることができる。ＯＥＭスキーマ読取専用データベース２６は、レシピ管理サブシステム２３２、セキュリティ管理サブシステム２３４、及びプロジェクト管理サブシステム２３６に接続することができる。ＨＯＳＴとすることができる外部サーバ２０は、ＴＣＰ−ＩＰソケットを通してＭＳＣスキーマデータベース２４に、プロセス管理サブシステム２４０を通してサーバ通信管理サブシステム１００に、及びサーバ通信管理サブシステム１００を通してイベント管理サブシステム２５０に接続することができる。ＭＳＣデータベース２４はまた、作業フローエンジンサブシステム２８０を通じてプロジェクト管理サブシステム２３６に接続することができるレポート管理サブシステム２９０と通信する場合がある。
【００２６】
開示する本発明の実施形態の態様によれば、アーキテクチャタスク定義は、データベース内にマクロ又はスクリプトとして格納することができる。アーキテクチャに従って指令解釈プログラムを利用して上述のタスク定義を解析し、デバイス指令を実行することができる。例えば、データベース内にマクロ又はスクリプト（総称してスクリプトという）としてタスク定義を格納することにより、主コントローラの論理をコンパイルしたコードからデータベース内のデータに移動させることができる。それによってＭＳＣソフトウエアのコードを再コンパイルすることなく自動的にその場でマスターシステムコントローラ１０の機能性及び情報を変更する柔軟な手法を得ることができる。
【００２７】
アーキテクチャのプロセス図において以下で説明するように、各サブシステムは、メッセージ待ち行列及びメッセージループを備えた独自メッセージポンプを有することができる。このようなメッセージポンプの使用により、本質的にアクセスが順番に並べられ、従って、アクセスが単一スレッド化される。メッセージポンプを有しておらず、かつマルチスレッド化することができるサブシステムは、少数のみである。単一スレッド化したシステムには、同期化の問題がない。それらはまた、符号化及び保守しやすいものとすることができる。デバイスインタフェースは、独自スレッド内で実行することができる。ジョブプロセッサは、デバイスインタフェースの遮断のない呼び出しを行う。ジョブプロセッサから１秒の応答をもたらすために、遮断のない呼び出しが必要な場合がある。ＭＳＣ１０の高レベルデザインは、図３〜図７にそれぞれ示すような以下の図、すなわち、論理図、プロセス図、データ図、展開図、及び配置図を使用して例示的に説明することができる。
【００２８】
開示する本発明の実施形態の態様によれば、論理図３００は、本発明のシステムがＭＳＣ１０の機能要求にどのように対処するかを例示することができる。それは、デザインのオブジェクトモデルとすることができる。図１及び図３に例示するサーバ２０側では、以下の構成要素は、ＭＳＣシステム１０の論理図の一部とすることができる。ジョブマネージャ３０、３１０は、ＭＳＣサーバ２０のゲートキーパーを含むことができる。それは、ＧＵＩ４０からメッセージに応答してジョブ実行を制御することができる。ジョブプロセッサ４２、３１２は、ＭＳＣシステムサーバ２０の役立つ部分を含むことができる。それは、指令ライブラリマネージャ３１６からの指令コールバックで指令解釈プログラム３１４、例えば、Ｐｙｔｈｏｎを使用してジョブを実行することができる。指令コールバックを群に、例えば、装置との通信用デバイス指令、ＭＳＣ１０でのデータ転送のためのデータ指令、及びＭＳＣ１０と通信するシステム指令に分類することができる。データ対象マネージャ３２０は、データ指令の達成を容易にすることができる。
【００２９】
レーザインタフェース３３０、ステージインタフェース３３２、マスター分配（ＭＤ）ボックスインタフェース３３４、ビーム安定化コントローラ（ＢＳＣ）インタフェース３３６、減衰器３３８インタフェース３３８、サブシステムｎ−１インタフェース３４０、及びサブシステムｎインタフェース３４２のような１つ又はそれよりも多くのデバイスインタフェースを使用して、上述の「ＴＣＺ  ９００Ｘ」装置内のそのような物理的デバイス又は論理デバイスと通信することができる。デバイスインタフェースは、デバイスとＭＳＣサーバ１０の間での通信に向けて高レベル抽出を行うことができる。ＭＳＣシステムサーバ２０内で処理したデバイスとの全ての通信は、中立言語フォーマット（ＮＬＦ）を使って行うことができ、次に、ＮＬＦ指令（別名、本明細書では「一般指令」という）を特定のデバイス毎にデバイスフォーマット（ＤＦ）規定の指令（デバイス特定指令）に変換して、それぞれのデバイスインタフェース３３０〜３４２上でそのようなデバイスに送ることができる。ステータスマネージャ５０、３５０は、デバイスインタフェース３３０〜３４２を通じてデバイスのステータスをモニタすることができる。ステータスマネージャ３５０は、ＭＳＣサーバ２０内にステータスメッセージを記録することができる。ＵＩ通信マネージャ６０、３７０は、サーバ２０とＧＵＩ４０の間の通信を容易にすることができる。制御のためであるか又はステータスレポートのためであるかを問わず、通信の目的により、この構成要素の１つよりも多いインスタンス、すなわち、制御メッセージのための「ＵＩＣｏｎｔｒｏｌＣｏｍｍＭａｎａｇｅｒ」６０、３７０、及びステータスメッセージのための「ＵＩＳｔａｔｕｓＣｏｍｍＭａｎａｇｅｒ」６０、３７０’をＭＳＣサーバ２０内で使用することができる。制御メッセージは、ＭＳＣサーバ２０を出入りすることができ、すなわち、それらは、双方向性とすることができる。しかし、ステータスメッセージは、サーバ２０から出ることしかできず、すなわち、一方向性とすることができる。いずれの場合でも、サーバ２０は、ＧＵＩ４０が通信接続要求を開始するのを待つことができる。プロジェクト／ジョブスケジューラー３２、３８０を使用して、日別、週別、又は月別に、又は何らかの他のデータ、例えば、レーザにより生成されるパルス数、処理したパネル数に基づいて、定期的又は他の選択した実行時期に活動保守、修理、モニタリング、及び／又は性能レポートプロジェクトを予定することができる。セキュリティサービス３４、３９０は、ユーザを認証／認可して、サーバ層内のシステム特徴へのアクセスを制御し、例えば、ユーザＩＤ及び認証、マシン使用可能度などに基づいて、例えば、ログイン及びＭＳＣ１０を使用してある一定の作業を行う機能を制御することにより、セキュリティ及びアクセス制御を行うことができ、この作動の範囲は、本出願の主題でない。ＭＥＳ８０インタフェース４００は、例えば、ＳＥＭＩのＳＥＣＳ／ＧＥＭインタフェース規格により、外部システムへの及びそこからの通信を提供することができる。
【００３０】
開示する本発明の実施形態の態様によれば、ＭＳＣサーバ２０のオブジェクト発見機能をもたらすネーミングサービス４１０、ＭＳＣサーバ２０でデータアクセスのために高レベル抽出を行うデータアクセスサービス４２０、高レベルスレッディング及びＭＳＣサーバ２０の同期機能をもたらすスレッドサービス４３０、及びＭＳＣサーバ２０内の主要構成要素間で通信を容易にするメッセージサービス４４０を含むいくつかのサービスをサーバ２０の範囲で行うことができる。上述のように、２つのデータベース、すなわち、システム定義タスク及びパラメータを含むことができる読取専用ＯＥＭデータベース２２、及び例えばレシピ、ロット、プロジェクト、及びジョブに関するユーザ修正データを含むことができる読取書込ＭＳＣデータベース２４が、ＭＳＣコントローラシステム内にある場合がある。行う抽出に加えて、データアクセスオブジェクト（ＤＡＯ）ヘルパークラスを用いて、データアクセスサービス、更に、論理とデータアクセスの間の分離をもたらすことができ、データアクセスオブジェクト（ＤＡＯ）ヘルパークラスは、いかなるアプリケーション論理もなく、データベース内のデータを読み取って更新するコードを含むことができる。
【００３１】
開示する本発明の実施形態の態様によれば、図２及び図３に例示するＧＵＩ４０側では、以下の構成要素は、ＭＳＣ１０コントローラシステムの論理図の一部とすることができる。レシピマネージャ５１０は、ユーザがＧＵＩ４０を使用してレシピ及び関連画像を作成、更新、削除、コピー、及びペーストすることを可能にする役目をすることができる。プロジェクトマネージャ５２０は、ユーザがＧＵＩ４０を使用して、システム供給タスクに関してプロジェクトを作成、更新、及び削除することを可能にし、かつユーザが、例えば、プロジェクトのスケジュールをもたらすことを可能にすることができる。ジョブマネージャ／プロセスマネージャ５３０は、ユーザがＧＵＩ４０からジョブを作成、削除、再順序化、及び実行することを可能にすることができる。ジョブ／プロセスマネージャ５３０は、ユーザがジョブ実行を停止、再開、又は打ち切ることを可能にすることができる。ジョブ／プロセスマネージャ５３０は、各ジョブ後に停止するか、又は連続モードで、すなわち、ジョブ／プロセス間で停止せず、段階的にジョブを実行することを可能にすることができ、かつサーバ制御通信マネージャ５４０を通じて、ＭＳＣサーバ２０への及びそこからの制御メッセージを送受信することができる。ステータス／イベントマネージャ５５０は、ユーザがサーバ診断通信マネージャ５６０でＭＳＣサーバ２０からステータスメッセージを見ることを可能にし、かつユーザが、例えば、タイミング、重大度、及びメッセージ内容に基づいてステータスメッセージをフィルタリングすることを可能にすることができる。システム構成マネージャ５７０は、ユーザがサーバ／ＧＵＩシステム構成及びデバイス構成情報を更新することを可能にすることができる。システム構成情報変更は、キャッシュに入れた値をリフレッシュすることにより、ＧＵＩ４０及びサーバ２０で直ちに適用することができる。デバイス構成変更は、デバイスが再接続することができる時、又は適切なジョブを実行することができる時に適用することができる。サーバ通信マネージャ５４０、５６０は、ＧＵＩ４０とサーバ２０間の通信を容易にすることができる。通信の目的により、制御のためか、ステータスレポートのためかを問わず、この構成要素の１つよりも多いインスタンス、すなわち、制御メッセージのためのサーバ制御通信マネージャ５４０及びステータスメッセージのためのサーバステータス通信マネージャ５６０をＧＵＩ４０内で使用することができる。制御メッセージは、ＧＵＩ４０を出入りすることができ、すなわち、双方向性とすることができる。ステータスメッセージは、ＭＳＣサーバ２０から出ることのみができ、すなわち、一方向性とすることができる。しかし、いずれの場合でも、第１のＧＵＩ４０は、最初に、通信に向けてＭＳＣサーバ２０への接続を確立する。セキュリティマネージャ５８０は、ユーザを認証／認可することによりセキュリティ及びアクセス制御を行うことができ、かつＧＵＩ４０層内のシステム特徴へのアクセスを制御することができる。作業フローエンジン５９０は、ユーザがカスタム画面を使用してプロジェクトを定義、実行、報告することを可能にすることができる。この構成要素は、カスタム表示をプロジェクト管理システム構成要素５２０で利用可能な一般機能性内にもたらすことができる。作業フローエンジン５９０は、レポート管理システム６００を利用して、システム内の様々な構成要素により作成され、かつレポートマネージャ６００により表示されるプロジェクト実行結果レポートと共にレポートを表示することができる。データアクセスサービス６１０は、ＧＵＩ４０からデータアクセスに対して高レベル抽出を行うことができる。
【００３２】
開示する本発明の実施形態の態様によれば、図４にブロック図の形式で例示するサーバデーモンプロセス図６５０は、ＭＳＣ１０の同時性、性能、及び拡張性のような非機能要件に対処するものである。図４に示す例示的なプロセス図６５０は、一例として、設計のスレッディング及び同期化の態様を捕捉するものである。２つの構成要素、すなわち、スレッドサービス及びメッセージサービスは、ＭＳＣサーバ２０における同時性及び構成要素間の通信機能をもたらすものである。スレッドサービス構成要素は、ＭＳＣサーバ２０内で高レベルスレッディング及び同期機能をもたらす。メッセージサービス構成要素は、ＭＳＣサーバ２０で主要構成要素間の通信を容易にする。それは、他の構成要素から受信したメッセージを格納するメッセージ待ち行列６６０と、先入れ先出し方式（ＦＩＦＯ）順序で構成要素にメッセージを送るメッセージポンプ６７０とで構成される。様々なスレッドによるＭＳＣ１０におけるメッセージ待ち行列６６０の使用は、異なるプロセスによる共有メモリの使用により似たものである。送るべきメッセージが残っていない時、メッセージポンプ６７０スレッドは、スレッド条件変数上で、すなわち、一例として、メッセージ転送先構成要素のメッセージ待ち行列６６０にメッセージを送った後で待つことができ、情報源構成要素は、転送先構成要素の待機中スレッドを目覚めさせることができる。これは、話し中待機ループがメッセージポンプ６７０にないので、最大化した性能をもたらすことができる。
【００３３】
ＭＳＣサーバ２０の各主要構成要素は、それぞれのメッセージポンプ６７０及び関連するメッセージ待ち行列６６０を有する独自スレッド内で実行することができる。これらの構成要素は、互いにメッセージを送ることにより互いと通信し、その結果として、通信の流れは非同期になる。単一デバイス３３０’〜３４２’による通信（図８に示す）は、それぞれのデバイスインタフェース構成要素３３０〜３４２内のメッセージ待ち行列６６０を用いて順番に並べることができる。各デバイスインタフェース３３０〜３４２は、独自スレッド内で実行するので、指令を複数のデバイス３３０’〜３４２’に同時に送ることができる。
【００３４】
独自スレッド内でＭＳＣサーバ２０の各主要構成要素を実行させる別の利点は、構成要素がマルチスレッド化したプログラミングの複雑さなく、単一スレッド化して符号化することができるということである。メッセージサービス４４０、ネーミングサービス４１０、及びデータアクセスサービス４２０（図３に示す）のようなサービス構成要素は、１つよりも多いスレッドが同時に上述のサービスを利用することができるので、マルチスレッド化することができる。マルチスレッド化したプログラミングをいくつかのサービス構成要素に制限することにより、ＭＳＣサーバ２０構成要素の大部分は、符号化及び維持しやすいものとすることができる。
【００３５】
図５に一例として概略的かつブロック図の形式で例示するデータ図６８０は、データ必要性、すなわち、ＭＳＣ１０のデータ記憶及び検索機構に対処することができる。ＭＳＣサーバ２０及びＧＵＩ４０のデータアクセスサービス構成要素４２０（説明の便宜上、図５に別々に図示するが、実際には１つのみが必要であり、開示する本発明の実施形態の態様により実際に使用され、別々のユニットを一部の実施形態で可能にすることもできる）は、ＭＳＣ１０内でデータアクセスに向けて高レベル抽出を行うことができる。データアクセスサービス構成要素４２０は、その結果として、ＭＳＣアプリケーション及びプレゼンテーション論理に向けて、データストアの層に独立性を与えるために、ＭＳＣ１０内にデータを格納及び検索するのに使用する実際のデータストアの詳細を隠すことができる。ＭＳＣ１０は、２つのデータストア、すなわち、一方２４は、読取書込両方のためのユーザ特定情報レシピ関連のデータのため、他方２２は、読取専用ＯＥＭ特定データデータシステム及びデバイス構成のためのものを使用することができる。読取書込アクセス経路を双方向通信として図５の例示的なデータ図６８０に示している。読取専用アクセス経路を一方向の通信として図５の例示的なデータ図６８０に示している。
【００３６】
図６に一例として概略的かつブロック図の形式で例示するＧＵＩデータ図、サーバに対して上述したものと類似のものであるＧＵＩのデータ必要性、データアクセスサービス構成要素（１つだけを必要とすることができるが２つを例示のために示す）は、ＭＳＣスキーマデータベース部２４及びＯＥＭスキーマデータベース部２２へのアクセスで、ロット管理構成要素５００、レシピ管理構成要素５１０、システム構成管理構成要素２７０、及びセキュリティ管理構成要素５８０に供し、データベースのＭＳＣスキーマ部との接続でのみ、プロセス管理構成要素５３０、レポート管理構成要素６００、及びイベント管理構成要素に役立つ。
【００３７】
図７は、開示する本発明の態様によるレーザ照射細線ビーム処理システムのような照射処理システム７００を概略ブロック図の形式で表している。これは、レーザデバイスコントローラ７１０、作業ステージコントローラ７２０、一部の他のｎ個のデバイスのためのコントローラ、及びシステムコントローラ、例えば、ＭＳＣ１０を含むことができ、この実施形態の例を図４３Ａ、図４３Ｂ、及び図４３Ｃに見ることができる。
【００３８】
開示する本発明の実施形態の態様による図８に一例として概略的かつブロック図の形式で示す配置図８００は、ＭＳＣ１０のトポロジー効果及び通信の態様に対処することができる。この配置図８００は、ハードウエア上へのソフトウエアのマッピングを説明し、かつその分配された態様を反映するものである。図８の例示的な配置図は、ＭＳＣ１０ソフトウエアがどのようにハードウエア上で物理的に実行することができるかを示すものである。ＭＳＣ１０は、「ＴＣＺ  ９００Ｘ」プロジェクトのソフトウエア構成要素とすることができる。ＭＳＣサーバ２０、ＭＳＣのＧＵＩ４０、及び２つのデータベース／データベース部（ＭＳＣ２４及びＯＥＭ２２）は、単一の６４ビットデュアルプロセッサＬｉｎｕｘマシン８１０上で実行することができる。ＭＳＣ１０は、「ＴＣＺ  ９００Ｘ」マシンの一部とすることができるデバイス３３０〜３３６’に接続することができる。ＭＳＣ１０とデバイス３３０’〜３３６’間の通信は、大体は、この例示的な配置においては、図８に一例として例示するように、ＴＣＰ／ＩＰソケットを通じたものとすることができる。また、ＵＳＢインタフェースを使用して、ビーム測定ユニット８３０のカメラ（図示せず）と、又は他のビーム測定ユニットと通信することができる。ＭＳＣサーバ２０は、一例として図８に例示するように、ＴＣＰ／ＩＰソケットを用いるＭＳＣのＧＵＩ４０と通信することができる。レーザ３３０’及びＢＳＣ３３６’のようなデバイスの一部は、通信に向けてシリアルポートのみを有することができる。上述のような場合、ＭＳＣ１０は、ＴＣＰ／ＩＰ接続を通じてＬａｎｔｒｏｎｉｃｓモジュール８４０に接続することができ、ＴＣＰ／ＩＰ接続は、次に、シリアルポート信号をＴＣＰ／ＩＰに、ＴＣＰ／ＩＰをシリアルポート信号に変換することができる。ＭＳＣ１０は、ＭＳＣ２４及びＯＥＭ２２データベース／データベース部にＰｏｓｔｇｒｅｓＱＬを使用することができる。ＭＳＣサーバ２０は、ｌｉｂｐｑを使用してデータベース２２、２４に、及びＪＤＢＣを使用してＭＳＣのＧＵＩ４０に接続することができる。ＭＳＣ１０及びデバイス３３Ｃ〜３３８’は、ＬＡＮスイッチ８１４が「Ｃｉｓｃｏ  ＶＰＮ  ＰＩＸ」ファイアウォール８２０の背後にある状態で私設ＬＡＮ上にある場合がある。ファイアウォール８２０の外側からのＭＳＣ１０へのアクセスは、ファイアウォール８２０を通してＶＰＮを用いた限られた例において可能にすることができる。
【００３９】
図１０の表は、開示する本発明の実施形態の態様によるシステムの構成要素の間での通信に使用する様々なメッセージを示している。図１１の表は、使用することができる例示的なメッセージを示している。
図１２Ａをここで参照すると、ＭＳＣＳｃｈｅｄｕｌｅモジュール３０１０、ＭＳＣＴａｓｋモジュール３０１２、ＭＳＣＩｍａｇｅモジュール３０１４、ＭＳＣＬｏｔモジュール３０１６、ＭＳＣＰｒｏｊｅｃｔモジュール３０１８及びＭＳＣジョブモジュール３０２０、ＭＳＣＲｅｃｉｐｅモジュール３０２２及びＭＣＳＭｅｓｓａｇｅモジュール３０２４と通信しているＭＳＣＯｂｊｅｃｔモジュール３００２を含む開示する本発明の実施形態の態様によるＭＳＣ１０サーバ２０内の様々な組織的階層３０００及び通信リンクが例示されている。ＭＳＣＪｏｂＭａｎａｇｅｒモジュール３０３０、ＭＳＣＤｅｖｉｃｅｌｎｔｅｒｆａｃｅモジュール３０３２、ＭＳＣＳｅｒｖｅｒモジュール３０３４、ＭＳＣＵＩＣｏｍｍＭａｎａｇｅｒモジュール３０３６、ＭＳＣＪｏｂＰｒｏｃｅｓｓｏｒモジュール３０３８、ＭＳＣＳｔａｔｕｓｍａｎａｇｅｒモジュール３０４０、ＭＳＣＪｏｂスケジューラーモジュール３０４１及びＭＳＣ  ＳｃｈｅｄｕｌｅｒＴｉｍｅｒモジュール３０４２とのＭＳＣＯｂｊｅｃｔモジュール３００２及びＭＳＣスレッドモジュール３００４及びＭＳＣＭｅｓｓａｇｅＰｕｍｐモジュール３００６の例示的な接続が更に示されている。
【００４０】
図１２Ｂでは、ｐｒｏｃｅｓｓＭｅｓｓａｇｅ（）、ｐｏｓｔＭｅｓｓａｇｅ（）、ｄｉｓｐａｔｃｈ（）、及びｇｅｔＮｅｘｔＭｅｓｓａｇｅのような例示的な実行可能な指令を備えたＭＳＣＭｅｓｓａｇｅＰｕｍｐモジュール３００８、及びＭＳＣＪｏｂＱｕｅｕｅモジュール３０４４及びＭＳＣＪｏｂモジュール３０２０と通信している実行可能な指令ｓｔａｒｔＪｏｂＱｕｅｕｅ（）、ｓｔｏｐＪｏｂＱｕｅｕｅ（）、ｈａｌｔＴｏｂＱｕｅｕｅ（）、及びｒｅｓｕｍｅＪｏｂＱｕｅｕｅ（）を備えたＭＳＣＭｅｓｓａｇｅＱｕｅｕｅモジュール３０３９及びＭＳＣＭｅｓｓａｇｅＬｏｏｐモジュール３０４３、並びにＭＳＣＪｏｂＭａｎａｇｅｒモジュール３００９の例示的な接続も例示されている。同じく示すのは、２つの独立モジュール、すなわち、ＭＳＣのＳｅｃｕｒｉｔｙＳｅｒｖｉｃｅモジュール３０６６及びＭＳＣＭＥＩｎｔｅｒｆａｃｅモジュール３０６８と共にＭＳＣＣｏｍｍｕｎｉｃａｔｉｏｎｎモジュール３０６２を通してＭＳＣＯｂｊｅｃｔＭａｐモジュール３０５２と通信するＭＳＣＮａｍｅＳｅｒｖｉｃｅモジュール３０５０、及びＭＳＣＤａｔａＦｏｒｍａｔｔｅｒ３０５６と通信するＭＳＣのＤｅｖｉｃｅＩＮｅｒｆａｃｅモジュール３０５４、及びＭＳＣＲｅｓｕｌｔｓＳｅｔモジュール３０６４と通信するＭＳＣのＤａｔａＡｃｃｅｓｓＳｅｒｖｉｃｅモジュール３０６０である。
【００４１】
図１３は、例えば、ＭＳＣＳｏｃｋｅｔモジュール３０８２が、ＭＳＣＳｅｒｖｅｒＳｏｃｋｅｔモジュール３０８６を通じてＭＳＣＵｓｅｒｌｎｔｅｒｆａｃｅＣｏｍｍｕｎｉｃａｔｉｏｎモジュール３０８８に、かつＭＳＣＣｌｉｅｎｔソケットモジュール３０８４を通じて付加的なＭＳＣＤｅｖｉｃｅｌｎｔｅｒｆａｃｅモジュール３０９６に接続したことを示す、開示する本発明の実施形態の態様によるブロック図の形式でＭＳＣ１０サーバデザインデバイスインタフェースの例を例示している。また、ＭＳＣＤｅｖｉｃｅｌｎｔｅｒｆａｃｅモジュール３０９０が、ＭＳＣＣｏｍｍＩＮｔｅｒｆａｃｅモジュール３０９２を通じてＡｄｄｉｔｉｏｎａｌＭＳＣＤｅｖｉｃｅｌｎｔｅｒｆａｃｅモジュール３０９６、ＭＳＣＳｔａｇｅｌｎｔｅｒｆａｃｅモジュール３０９８、ＭＳＣｌＬａｓｅｒｌｎｔｅｒｆａｃｅモジュール３１００、及びＭＳＣＭＤＢｏｘＩｎｔｅｒｆａｃｅ  ｍｏｓｕｌｅ３１０２に接続していることが示されている。
【００４２】
図１４Ａは、ＭＳＣＳｔａｔｕｓＬｏｏｐモジュール３１２２と通信するＭＳＣＳｔａｔｕｓＭａｎａｇｅｒモジュール３０４０を含む開示する本発明の実施形態の態様によるＭＳＣ１０サーバデザインマネージャクラスインタフェースをブロック図の形式で例示している。また、それぞれのシリアルリンク、例えば、ＭＳＣＴａｓｋモジュール３０１２及びＭＳＣＰｒｏｊｅｃｔモジュール３０１８、及びＭＳＣＩｍａｇｅモジュール３０１４、ＭＳＣＲｅｃｉｐｅモジュール３０２２、及びＭＳＣＬｏｔモジュール３０１６と並列に、ＭＳＣＪｏｂモジュール３０２０を通じて通信するＭＳＣＤａｔａＯｂｊｅｃｔＭａｎａｇｅｒモジュール３１２４を例示として示している。また、ＭＳＣＤａｔａＯｂｊｅｃｔＭａｎａｇｅｒモジュール３１５２、ＭＳＣＣｍｄＬｉｂｒａｒｙＭａｎａｇｅｒモジュール３１５４、ＭＳＣＰｒｏｊｅｃｔモジュール３０１８、及びＭＳＣＣｍｄｌｎｔｅｒｐｒｅｔｅｒモジュール３１５８と通信するＭＳＣＪｏｂＰｒｏｃｅｓｓｏｒモジュール３０３８が示されている。図１４Ｂに示すように、ｉｎｉｔｉａｌｉｚｅ（）、ｒｅｆｒｅｓｈＳｃｈｅｄｕｌｅ（）、ｔｉｍｅｒＥｎｄｅｄｆ）、及びａｄｄＪｏｂＴｏＱｕｅｕｅ（）のようなこのような実行可能な指令及び情報を有するＭＳＣＪｏｂＳｃｈｅｄｕｌｅｒモジュール３０４１は、ｓｔａｒｔＴｉｍｅｒ（）のような実行可能な指令を有するＭＳＣＳｃｈｅｄｕｌｅｔｉｍｅｒモジュール３０４２と通信することができる。また、ｇｅｔＣｏｎｆｉｇＭｏｄｅ（）、ｌｏｇｉｎ（）、ｓｗｉｔｃｈＵｓｅｒ（）、ＨｓｔＵｓｅｒｓ（）、ｕｐｄａｔｅＵｓｅｒ（）、ｌｏｇｉｎＲｏｌｅ９）、ｓｗｉｔｃｈＲｏｌｅ（）、ｌｉｓｔＲｏｌｅｓ（）、ＵｐｄａｔｅＲｏｌｅ（）、ｇｅｔＬｏｇｉｎ（）、ｉｓａｌｌｏｗｅｄ（）、及びｃｈｅｃｋＰｅｒｍｉｓｓｉｏｎ（）のような実行可能な指令及び情報を有するＭＳＣＳｅｃｕｒｉｔｙＳｅｒｖｉｃｅｓモジュールが例示されている。
【００４３】
図１５を参照すると、ブロック図の形式で、例えば、Ｐｙｔｏｎｏｎｌｎｔｅｒｐｒｅｔｅｒモジュール３１２２と通信しているＭＳＣのＣｍｄｌｎｔｅｒｐｒｅｔｅｒモジュール３１２０、及びＭＳＣＣｍｄＣａｌｌｂａｃｋモジュール３１３２を通じてＭＳＣＳｙｓＣｍｄＣａｌｌｂａｃｋモジュール３１３２、ＭＳＣＤａｔａＣｍｄＣａｌｌｂａｃｋモジュール３１３４、及びＭＳＣＤｅｖＣｍｄＣａｌｌｂａｃｋモジュール３１３６と通信しているＭＳＣＣｍｄＬｉｂｒａｒｙＭａｎａｇｅｒモジュール３１３０を含むＭＳＣサーバ解釈プログラムインタフェースの具体例が示されている。
【００４４】
図１６は、代表的な実行可能指令及び情報の一覧表示を含む以下のモジュール、すなわち、上述のような「Ｓｅｃｕｒｉｔｙ  Ｍａｎａｇｅｒ」モジュール３０６６、図２にも示すＦＩＧＬｏｔＭａｎａｇｅｒモジュール２３０（ｌｉｓｔＬｏｔｓ（）、ｇｅｔＬｏｔ（）、ｃｒｅａｔｅＬｏｔ（）、ｕｐｄａｔｅＬｏｔ（）、ｄｅｌｅｔｅＬｏｔ（））、ＲｅｃｉｐｅＭａｎａｇｅｒモジュール２３２（ｌｉｓｔＲｅｃｉｐｅ（）、ｇｅｔＲｅｃｉｐｅ（）、ｘｃｒｅａｔｅＲｅｃｉｐｅ（）ｕｐｄａｔｅＲｅｃｉｐｅ（）ｄｅｌｅｔｅＲｅｃｉｐｅ（）ｌｉｓｔＲｅｃｉｐｅＩｍａｇｅｓ（）、ａｄｄＲｅｃｉｐｅＩｍａｇｅ（）、ｕｐｄａｔｅＲｅｃｉｐｅＩｍａｇｅ（）、ｒｅｍｏｖｅＲｅｃｉｐｅＩｍａｇｅ（）、ｒｅｏｒｄｅｒＲｅｃｉｐｅＩｍａｇｅｓ（））、ＪｏｂＭａｎａｇｅｒモジュール３００９（ｌｉｓｔＪｏｂｓ（）、ｇｅｔＪｏｂ（）、ａｄｄＪｏｂＴｏＱｕｅｕｅ（）、ｒｅｍｏｖｅＪｏｂＦｒｏｍＱｕｅｕｅ（）、ｒｅｏｒｄｅｒＪｏｂＱｕｅｕｅ（）、ｓｔａｒｔＪｏｂＱｕｅｕｅ（）、ｓｔｏｐＪｏｂＱｕｅｕｅ（）、及びｓｅｔＪｏｂＱｕｅｕｅＭｏｄｅ（））、ＲｅｐｏｒｔＭａｎａｇｅｒモジュール２９０（ＨｓｔＲｅｐｏｒｔｓ（）、ｄｉｓｐｌａｙＲｅｐｏｒｔ（））、ＳｔａｔｕｓＭａｎａｇｅｒモジュール３０４０（ｄｉｓｐｌａｙＡＨＭｅｓｓａｇｅｓ（）、ｆｉｌｔｅｒＭｅｓｓａｇｅｓ（））、ＳｙｓＣｏｎｆｉｇＭａｎａｇｅｒモジュール５７０（ｌｉｓｔＣｏｎｆｉｇｓ（）、ｇｅｔＣｏｎｆｉｇ（）、ｕｐｄａｔｅＣｏｎｆｉｇＰａｒａｍｅｔｅｒｓ（））、ＰｒｏｊｅｃｔＭａｎａｇｅｒモジュール２３６（ＩｉｓｔＰｒｏｊｅｃｔｓ（）、ｇｅｔＰｒｏｊｅｃｔ（）、ｃｒｅａｔｅＰｒｏｊｅｃｔ（）、ｕｐｄａｔｅＰｒｏｊｅｃｔ（）、ｄｅｌｅｔｅＰｒｏｊｅｃｔ（）、ＨｓｔＰｒｏｊｅｃｔＴａｓｋｓ（）、ａｄｄＰｒｏｊｅｃｔＴａｓｋ（）、ｕｐｄａｔｅＰｒｏｊｅｃｔＴａｓｋ（）、ｒｅｍｏｖｅＰｒｏｊｅｃｔＴａｓｋ（）、ｒｅｏｒｄｅｒＰｒｏｊｅｃｔＴａｓｋｓ（））、及びＷｏｒｋｆｌｏＭａｎａｇｅｒモジュール２８０（ｃｒｅａｔｅＣｕｓｔｏｍＶｉｅｗ（）、ｄｉｓｐｌａｙＣｕｓｔｏｍＶｉｅｗ（）、ｕｐｄａｔｅＣｕｓｔｏｍＶｉｅｗ（）、ｅｘｅｃｕｔｅＣｕｓｔｏｍＶｉｅｗ（）、ＣｕｓｔｏｍＶｉｅｗｃｌｏｓｅ（））を含むＭＳＣのＧＵＩデザインの例を概略的かつブロック図で表している。
【００４５】
図１７は、日付及び時間に加えて、画面２４００の底部に沿った位置に表示することができるグラフィカルユーザインタフェース（ＧＵＩ）ディスプレイ「メイン」画面２４００の例、システムステータス２４０２、例えば、図示のような「ＯＫ」、現在は保留である「警報」の表示２４０４、例えば、図示のような「なし」、及びシステム条件２４０６の表示、例えば、図示のような「処理中」を表している。上部に沿って、例えば、時刻にログインする人の役割２４１０の表示、例えば、図示のようなオペレータ、及びユーザが他のディスプレイに到達するための選択ボタン２４１２、例えば、ロット、レシピ、ジョブ、プロジェクト、及びシステム（システムレベル階層の順）、及びログ及びペルプ機能ボタン２４１４もある。また、この例示的な「メイン」画面内では、ユーザＩＤ番号２４１８も表示されている。例えば、ログを選択すると、本出願の他の箇所で説明する図１８のＧＵＩ画面２１６０にユーザは向かうことができる。
【００４６】
図１９を参照すると、例えば、フロントエンドＧＵＩプロセス４０又はバックエンドサーバプロセス２０の一方又は両方まで、スレッド化したソケットサーバ、メッセージポンプ、及びスレッド化したデータベース接続と共に、データ及びメッセージプロセス（ＤＭＰ）９０６との外部通信プロセス（ＥＣＰ）９０２の接続が概略的かつブロック図の形式で例示されている。
図２０Ａは、例えば、パイソンレーザクラス又はパイソンタスクスクリプトでデバイス抽出自然言語フォーマット（ＮＬＦ）からデバイスフォーマット（ＤＦ）を実施するコードを例示している。同様に、図２０Ｂでは、ＰｏｓｔｇｒｅＳＱＬでこのようなコードを示している。
【００４７】
開示する本発明の実施形態の態様によれば、Ｍａｓｔｅｒシステムコントローラ（ＭＳＣ）ソフトウエアは、「ＴＣＺ  ９００Ｘ」装置／加工物処理ツールのハードウエア構成要素を制御するマスターシステムコントローラとして機能することができる。ＭＳＣソフトウエアを使用して、プロセスエンジニアは、レシピ及びプロジェクトを定義し、ジョブを実行し、シリコン基板を処理すると共にマシン性能をモニタすることができる。
【００４８】
ここで図４３Ａ〜図４３Ｃを参照すると、開示する本発明の実施形態の態様による図７のシステムコントローラＭＳＣ１０のようなシステムコントローラがブロック図及び概略的な形で示されている。工場自動化ホストのようなホスト９１０を、ＧＥＭライブラリ９０４を通じて、外部通信プロセッサ（ＥＣＰ）に接続することができる。データ及びメッセージプロセッサ（ＤＭＰ）９０６は、ＥＣＰ９０２に、かつツールオペレータとのＧＵＩインタフェース４０に接続することができる。ＤＭＰ９０６は、バックエンドサービスプロセッサ（ＢＳＰ）２０に、かつ診断のためのデータ分析プロセッサ（ＤＡＳ）９０８に接続することができ、診断のためのデータ分析プロセッサ（ＤＡＳ）９０８は、例えば、デバイスドライバインタフェース１２０及びデバイスドライバ１２０ａ（図４３Ｃに示す）を通じて、ＯＥＭデータベース２２及びデバイス１２０ｂと通信することができる。ＢＳＰ２０は、デバイスインタフェース１２０及びデバイスドライバ１２０ａ（図４３Ｃに示す）を通じてデバイス１２０ｂと通信することができる。デバイスプロセッサは、直接か又はＤＡＳ９０８又はＢＳＰ２０を通じて、すなわち、図４３Ｃに示すようにデバイスドライバを通じてデバイスと通信することができる。
【００４９】
デーモンプロセスバックエンドサーバプロセス（ＢＳＰ）６５０は、デバイス指令を出してデバイスステータスを検査することができる。グラフィカルユーザインタフェースフロントエンドＧＵＩプロセス（ＦＧＰ）４０は、ユーザが、システムと対話して、例えば、レシピを定義してジョブを実行することを可能にすることができる。デーモンプロセスデータ及びメッセージプロセス（ＤＭＰ９０６）は、プロセス間でメッセージを経路指定すると共に、データベースアクセスの導管として機能することができる。デーモンプロセスデータ取得サーバプロセス（ＤＡＳ）は、デバイスからステータス及びデータを収集し、情報を格納し、かつ他のプロセスに供給することができる。デーモンプロセスメッセージロギングプロセス（ＭＬＰ）は、他のプロセスから情報を受信してテキスト形式で記録することができる。デーモンプロセス外部通信プロセス（ＥＣＰ）は、製造実行システム（ＭＥＳ８０）インタフェースのような外部通信を処理することができる。
【００５０】
データベースを使用して持続的にデータを格納するため際に、ＭＳＣ１０は、複数のスキーマ、例えば、５つのスキーマ、すなわち、システム特定情報を含むＯＥＭ読取専用スキーマ、ユーザ特定情報を含むことができるＭＳＣ読取書込スキーマ、装置データを含むことができるデータウェアハウス１１０読取専用スキーマ、デバイスステータスを含むことができるステータス読取専用スキーマ、及びシステムにより生成されたログデータを含むことができるロガー１１２読取専用スキーマでデータベースを使用することができる。開示する本発明の実施形態の態様によれば、ＭＳＣアーキテクチャは、システムのサーバ、通信、ユーザインタフェース、及びデータベース態様を含むことができる。ソフトウエアは、いくつかの機能性、例えば、インポート／エクスポート、モジュール概念（寿命カウンタ）、基板概念、例えば、カスタムプロジェクト画面での作業フロープロジェクト日程計画、可視表示指示／色によるユーザ構成可能ステータスタブ、カセットの図形及びテキストによる表現、プロジェクト／ロットの実行時間パラメータ、ＳＥＭＩのＳＥＣＳ／ＧＥＭ規格によるＭＥＳインタフェース、セキュリティ及びアクセス制御、及びより細かいエラー処理及びアップグレード可能性（バージョニングなど）を含むことができる。
【００５１】
上述の高レベル特徴は、プロジェクト／ロットのコピー／ペースト、レシピの階層的組織、レシピ／画像パラメータの一貫性改善検査、パラメータ（例えば、誰がパラメータを変えることができるかなど）のアクセス制御、パラメータ間の依存性、ヌルレシピ、レシピの階層的組織、カセットステーション番号、オペレータＥＤ、基板ＩＤなどによるロット定義、基板を必要とする概念、柔軟で一般的なモジュールを導入する概念、デバイスだけに対してモジュールをモニタする機能、モジュール交換のための画面、柔軟で一般的な寿命カウンタのための機構、値及びテキストとしてのステータスタブ内の表示保持カウンタ、診断、ダウンロード及び制御のためのカスタムプロジェクト画面、プロジェクトレポート、フォルダ／ファイル構造による日程計画、イベント及びスケジュールに基づくプロジェクト日程計画、ジョブ待ち行列のためのアイドルタイムアウト、加工物位置の変更、例えば、付随する結晶化グラフィック変更によるガラス基板の回転、付加的なレシピ処理ステータス情報、カセット図示、ジョブ待ち行列に追加時のロット及びプロジェクトの実行時間パラメータ、セキュリティ及びアクセス制御、ユーザ知的財産を保護する符号化したスクリプト、デバイスを特定するためにシリアル番号を使用するためのデバイスとのインタフェース、デバイス構成要素、例えば、カセット積み下ろしのためのロボットの制御、ユーザ構成可能なステータスタブ、より細かいエラー処理、例えば、欠如又は仕様外れパルスに対する衝突回復処理、着色タブ及びエントリ、ＳＥＭＩのＳＥＣＳ／ＧＥＭインタフェースを使用する客先ＭＥＳ８０との統合、アップグレード可能性及び性能測定で特定のシステム条件、例えば、ファイルの形式のレシピ／画像／プロジェクトのインポート／エクスポートを満たす役目をすることができる。
【００５２】
特定のシステム条件を適用することができる例示的な特徴及び構成要素を以下に示している。
インポート／エクスポート：ＧＵＩ−レシピ管理、ＧＵＩ−プロジェクト管理、
レシピの階層的組織：ＧＵＩ−レシピ管理、
モジュール概念（寿命カウンタ）：ＧＵＩ−システム構成管理、ＧＵＩ−レポート管理、
基板概念：ＧＵＩ−ロット管理、
カスタムプロジェクト画面による作業フロー：ＧＵＩ−プロジェクト管理、ＧＵＩ−作業フローエンジン、ＧＵＩ−レポート管理、
プロジェクト日程計画：サーバ−プロジェクト日程計画、
ユーザ構成可能なステータスタブ−ビジュアル表示／色：サーバ−状態管理、ＧＵＩ−プロセス管理、ＧＵＩ−イベント管理、
カセットのグラフィック及びテキストによる表現：サーバ−ジョブ処理、ＧＵＩ−プロセス管理、
プロジェクト／ロット実行時間パラメータ：ＧＵＩ−プロセス管理、
セキュリティ及びアクセス制御：ＧＵＩ−セキュリティ管理、
改善したエラー処理：サーバ−ジョブ処理、ＧＵＩ−プロセス管理、
ＭＥＳインタフェース：サーバ−ＭＥＳインタフェース。
【００５３】
開示する本発明の実施形態の態様によれば、システムの例示的な構成要素のクラス図を使用して、ＭＳＣ１０の例示的な低レベルデザインを説明することができる。以下では、開示する本発明の実施形態の態様によりＭＳＣサーバ２０内にある場合がある構成要素の階層（最低から最高まで）の例示的なリストに対して説明する。
コアオブジェクト構成要素は、主としてＭＳＣサーバ２０内の全ての構成要素に共通のデータオブジェクトクラスを含むことができ、データオブジェクトクラスは、論理がないように、かつデータだけを含むように形成することができる。殆どの場合、データはまた、あらゆる構成要素がこのようなデータオブジェクト内のデータにアクセス可能なように公的である。以下の例示的なクラスは、コアオブジェクト構成要素の一部とすることができる。
【００５４】
ＭＳＣＯｂｊｅｃｔは、この構成要素内で最も顕著なクラスであり、かつＭＳＣ１０内の全ての他の主要なクラスの好ましい基本クラスとすることができる。ＭＳＣ１０のうちの全てのクラスに共通な挙動は、このクラス内で実行することができる。以下を含むＭＳＣ１０内のクラスの大部分は、ＭＳＣＯｂｊｅｃｔクラスに由来するものとすることができる。すなわち、和集合を用いてデータ整数形式、現実の形式、ストリング形式、論理形式、又は目的データ形式のあらゆる形式を格納することができる多重データ形式ホルダとすることができるＭＳＣＡｔｏｍ、全てのサーバ構成要素を通じて使用する定数の名前空間をもたらすことができるＭＳＣＣｏｎｓｔａｎｔｓ、標準的なコンテナー収集において１対のストリングを使用することを簡単化することができるＭＳＣＰａｉｒ、全てのアプリケーション特定例外クラスが由来すると予想することができるＭＳＣサーバ２０内の基本例外クラスとすることができるＭＳＣＥｘｃｅｐｔｉｏｎ、全ての構成要素により用いられるストリング及び他の雑多なユーティリティ方法を含むことができるＭＳＣＵｔｉｌｓ、画像のデータオブジェクトクラスとすることができ、かつ画像パラメータを含むことができるＭＳＣＩｍａｆｉｅ、レシピパラメータ及び各レシピの画像リストを含むレシピのデータオブジェクトクラスとすることができるＭＳＣＲｅｃｉｐｅ、ロットのデータオブジェクトクラスであり、かつロットパラメータ及びロットに適用可能なレシピのリストを含むことができるＭＳＣＬｏｔ、プロジェクト内のタスクのデータオブジェクトクラスであり、かつ例えば、タスクに対応するＰｙｔｈｏｎスクリプトでタスクパラメータ、本体及び実行時間パラメータを含むことができるＭＳＣＴａｓｋ、プロジェクトのデータオブジェクトクラスであり、かつプロジェクトパラメータ及びタスクのリストを含むことができるＭＳＣＰｒｏｊｅｃｔ、ジョブのデータオブジェクトクラスであり、かつロット／プロジェクト及びジョブ状態の名前を含むことができるＭＳＣＪｏｂ、デバイスパラメータのステータス検査情報を含むデータオブジェクトクラスであり、かつデバイスパラメータの状態を検査するためにステータスループを使用することができるＭＳＣＳｔａｔｕｓＣｈｅｃｋ、デバイスパラメータの全てのステータス検査を含むデータオブジェクトクラスであり、かつデバイスステータスがエラー、警告又は他の作動上の情報であるか否か検査するためにステータスループを使用することができるＭＳＣＳｔａｔｕｓＤａｔａ、ステータス指令の名前及び関連入力を含むデータオブジェクトクラスであり、論拠パラメータ名を戻すことができ、かつデバイス及びシステムステータスを判断するためにステータスループを使用することができるＭＳＣＳｔａｔｕｓＣｏｍｍａｎｄである。
【００５５】
開示する本発明の実施形態の態様によれば、ＴｈｒｅａｄＳｅｒｖｉｃｅ構成要素は、ＭＳＣサーバ２０内で高レベルスレッディング及び同期機能をもたらす構成要素とすることができ、スレッドを使用しながら、以下の例示的なクラスを含むことができる。すなわち、（１）ＭＳＣＴｈｒｅａｄは、実行の新しいスレッドを必要とするあらゆるクラスが後継することができる抽出基本クラスとすることができる。後継クラスは、次に、ＭＳＣＴｈｒｅａｄの抽出ｒｕｎ（）方法を実行することができる。スレッド実行を開始するために、ＭＳＣは、ＭＳＣＴｈｒｅａｄのｓｔａｒｔ（）方法を呼び出すことができ、それによってｒｕｎ（）方法を呼び出すことができる。このクラスは、一般的に使用するスレッド管理アプリケーションプログラミングインタフェース（ＡＰＩ）を包含することができる。ｐｔｈｒｅａｄｓミューテックス及び条件変数の他の特徴は、独自のラッバークラスを有することができる。（２）ＭＳＣＭｕｔｅｘは、オブジェクトをロック及びアンロックすると共にオブジェクトスレッドを安全にする機構をもたらすｐｔｈｒｅａｄのミューテックスを封入することができるクラスとすることができる。（３）ＭＳＣＬｏｃｋａｂｌｅＯｂｉｅｃｔは、オブジェクトがスレッド安全である機構をもたらすクラスとすることができ、例えば、スレッド安全なオブジェクトは、このクラスから由来すべきである。（４）ＭＳＣＳｉｎｇｌｅＬｏｃｋは、マルチスレッド化したコードへの同期アクセスを可能にするＭＳＣＬｏｃｋａｂａｌｅＯｂｊｅｃｔを使用するラッバークラスとすることができる。このクラスは、オブジェクトレベルで方法を同期化するためにＭＳＣＬｏｃｋａｂｌｅＯｂｊｅｃｔを使用することができる。ＭＳＣＬｏｃｋａｂｌｅＯｂｊｅｃｔオブジェクトは、再帰的ミューテックスを使用するので、ＭＳＣＳｉｎｇｌｅＬｏｃｋのネスト化した使用を可能にすることができる。（５）ＭＳＣＷａｉｔＣｏｎｄｉｔｉｏｎは、ミューテックスが既にロックされた状態で呼び出すｗａｉｔ（）方法及びｎｏｔｉｆｙ方法を用いて待機中スレッドに通知するためにｐｔｈｒｅａｄ条件変数を実行するクラスとすることができる。ミューテックスは、次に、ｗａｉｔ（）を呼び出すことができる時に自動的に解除することができ、また、ｎｏｔｉｆｙ（）方法により待機中スレッドを覚醒させた時に自動的に再取得することができる。このクラスは、待機中ＭＳＣＭｓｇＰｕｍｐｓに通知するためにＭＳＣＭｓｇＰｕｍｐｓを使用することができる。
【００５６】
開示する本発明の実施形態の態様によれば、システムユーティリティ構成要素は、システム全体の記録及び検索システム構成情報のユーティリティのような全ての構成要素により使用される共通ユーティリティをもたらすことができる。以下の例示的なクラスは、この構成要素の一部とすることができる。
（１）ＭＳＣＩｎｉＦｉｌｅＨａｎｄｌｅｒは、設定ファイルを処理するユーティリティ方法をもたらすことができ、このクラスのこれらの方法は、全体的とすることができ、かつサーバ設定ファイルから構成パラメータを取り込む役目をすることができる。パラメータは、線につき１つの仕様で、任意的と値の対として指定することができる。ブランク行及びコメント行を可能にすることができる。（２）ＭＳＣＬｏｇは、記録機能をもたらすことができ、かつ様々なエラーレベル及びＭＳＣＣｏｎｓｔａｎｔｓクラスで定義するようなメッセージの重大度を定義することができる。
【００５７】
開示する本発明の実施形態の態様によれば、ＮａｍｉｎｇＳｅｒｖｉｃｅ構成要素は、ＭＳＣサーバ１０内にオブジェクト発見機能をもたらすことができ、かつ以下のクラスを含むことができる。ＭＳＣＮａｍｉｎｇＳｅｒｖｉｃｅは、ＭＳＣサーバ２０内でオブジェクト発見を行うサービスクラスとすることができる。オブジェクトは、１つの構成要素によりネーミングサービスで格納し、次に、他の構成要素を使用することができる。これはサービスであるので、マルチスレッド化したものであり、かつスレッド安全とすることができる。
【００５８】
開示する本発明の実施形態の態様によれば、ＭｅｓｓａｇｅＳｅｒｖｉｃｅ構成要素は、ＭＳＣサーバ２０における主要構成要素間の通信を容易にすることができ、以下のクラスを含むことができる。すなわち、（１）ＭＳＣＭｅｓｓａｇｅは、ストリングをメッセージ内に格納することによりＭＳＣサーバ構成要素間で通信するのに使用するメッセージ情報を含むクラスとすることができる。（２）ＭＳＣＭｅｓｓａｇｅＰｕｍｐは、メッセージ待ち行列からメッセージをフェッチしたり、かつサーバ構成要素に送る機構を実行するクラスとすることができる。（３）ＭＳＣＭｅｓｓａｇｅＱｕｅｕｅは、サーバ構成要素間で通信するのに使用するメッセージのための先入れ先出し方式（ＦＩＦＯ）コンテナーを含むクラスとすることができ、メッセージを格納及び検索するためにＭＳＣＭｅｓｓａｇｅＰｕｍｐを使用することができる。
【００５９】
開示する本発明の実施形態の態様によれば、ＤａｔａＡｃｃｅｓｓＳｅｒｖｉｃｅ構成要素は、ＭＳＣサーバ２０内でデータアクセスに向けて高レベル抽象層をもたらすことができる。ＭＳＣ内で（ＯＥＭ及びＭＳＣスキーマで）「ＴＣＺ  ９００Ｘ」データベースに使用するデータベースサーバ２０は、ＰｏｓｔｇｒｅＳＱＬとすることができる。データベースに対する高レベルＣ＋＋ＡＰＩのためにｌｉｂｐｑｐｐパッケージを使用することができる。以下の例示的なクラスは、この構成要素の一部とすることができる。すなわち、（１）ＤＭＳＣＤａｔａＡｃｃｅｓｓＳｅｒｖｉｃｅは、ＭＳＣ内で使用する実際のデータベースの下層詳細を隠す高レベルデータベース抽出層をもたらすことができる。（２）ＭＳＣＣｏｎｎｅｃｔｉｏｎは、接続がまだ開放することができない場合にデータベースに接続するデータベースとの接続インタフェースを実行し、かつ基準カーソルでトランザクションに基づく問合せを含む問合せを実行ために使用することができるクラスとすることができる。（３）ＭＳＣＲｅｓｕｌｔＳｅｔは、データベース上で問合せを実行することにより返却された結果を保持するクラスとすることができ、結果は、ストリングとしてこのクラスから検索することができる。
【００６０】
開示する本発明の実施形態の態様によれば、ＳｅｃｕｒｉｔｖＳｅｒｖｉｃｅ構成要素は、サーバ層内でセキュリティ及びアクセス制御検査を行うことができる。
開示する本発明の実施形態の態様によれば、ＤａｔａＦｏｒｍａｔｔｅｒ構成要素は、中立言語フォーマット（ＮＬＦ）からデバイスフォーマット（ＤＦ）に、デバイスフォーマット（ＤＦ）から中立言語フォーマット（ＮＬＦ）に変換するユーティリティ方法をもたらす構成要素とすることができる。以下の例示的なクラスは、この構成要素の一部とすることができる。すなわち、ＭＳＣＤａｔａＦｏｒｍａｔｔｅｒは、中立言語フォーマット（ＮＬＦ）とデバイスフォーマット（ＤＦ）の間でデバイス指令及び応答を双方向で変換するクラスとすることができる。ＭＳＣ１０は、中立言語フォーマットを使用することにより、ＩＣＥ９システム内の様々な形式のデバイスと通信する均一な言語フォーマットをもたらすことができる。
【００６１】
開示する本発明の実施形態の態様によれば、ＤｅｖｉｃｅＤｒｉｖｅｒｓ構成要素は、ＭＳＣ１０に接続した様々なデバイスのデバイスドライバを含むことができる。この構成要素内のデバイスドライバクラスは、抽出基本クラス：ＭＳＣＣｏｍｍｌｎｔｅｒｆａｃｅにおける方法を実行することができる。デバイスドライバは、ＭＳＣ１０作動コードを再コンパイルすることなく付加的なデバイスを追加することができるように動的共有ライブラリとすることができる。例えば、そのシリアル番号を検索するためのデバイスの指令が存在した場合、デバイスは、シリアル番号を検索し、シリアル番号を使用してデバイスを記録するメッセージにおいて及び／又はデバイスステータスレポートにおいてそのデバイスを特定することができる。以下の例示的なクラスは、この構成要素の一部とすることができる。すなわち、ＭＳＣＣｏｍｍｌｎｔｅｒｆａｃｅは、物理的デバイスと通信するのに使用する全てのデバイスドライバにより使用される標準的なＡＰＩをもたらすクラスとすることができる。ＭＳＣ１０は、この抽出クラスを使用して、使用するプロトコル、ＴＣＰ／ＩＰソケット、ＵＳＢ、ＣＯＲＢＡなどとは独立に様々なデバイスと均一に通信することができる。
【００６２】
開示する本発明の実施形態の態様によれば、ＤｅｖｉｃｅＩｎｔｅｒｆａｃｅ構成要素を利用することができ、これは、ＩＣＥ９レーザアニール装置内の物理的デバイス又は論理デバイスと通信するのに使用し、かつデバイスとＭＳＣサーバ２０の間の通信に向けて高レベル抽出を行うことができる構成要素の１つ又はそれよりも多くのインスタンスを含むことができる。ＭＳＣサーバ２０内からのデバイスとの通信は、中立言語フォーマット（ＮＬＦ）を使用して行うことができる。ＮＬＦ指令は、デバイスに送る前に各デバイスに特定のデバイスフォーマット（ＤＦ）に変換することができる。以下の例示的なクラスは、Ｄｅｖｉｃｅｌｎｔｅｒｆａｃｅ構成要素の一部とすることができる。すなわち、（１）ＭＳＣＤｅｖｉｃｅｌｎｔｅｒｆａｃｅは、ＭＳＣ１０がデバイスと通信するための高レベルＡＰＩをもたらすクラスとすることができる。ＭＳＣ１０に装着した物理的デバイス又は論理デバイスとの毎回の接続に対してこのクラスの１つのインスタンスがある。このクラスは、ＭＳＣＣｏｍｍｌｎｔｅｒｆａｃｅ抽出クラスに適合するデバイスドライバを取り込むことにより、それぞれのデバイスと通信することができる。ＭＳＣＤｅｖｉｃｅｌｎｔｅｒｆａｃｅは、デバイスへの複数の通信要求を順番に並べることができる。デバイスドライバを取り込んだ後に、このクラスは、最初にｉｎｉｔ（）方法を、次に、デバイスパラメータを設定するｓｅｔ（）方法を呼び出して、デバイスパラメータを設定することができる。次に、ＭＳＣＤｅｖｉｃｅｌｎｔｅｒｆａｃｅは、ｏｐｅｎ（）方法、次に、複数のｗｒｉｔｅ（）及びｒｅａｄ（）の呼び出しを呼び出すことができる。最後に、ＭＳＣＤｅｖｉｃｅｌｎｔｅｒｆａｃｅは、ｃｌｏｓｅ（）方法を呼び出すことができる。（２）ＭＳＣＤｅｖｉｃｅｌｎｔｅｒｆａｃｅＤＡＯは、ＭＳＣＤｅｖｉｃｅｌｎｔｅｒｆａｃｅのデータアクセスヘルパークラスとすることができ、ＭＳＣＤｅｖｉｃｅｌｎｔｅｒｆａｃｅは、このクラスのＤｅｖｉｃｅｌｎｔｅｒｆａｃｅ構成要素からデータベースに呼び出しを行うことができる。（３）ＭＳＣＳｏｃｋｅｔは、低レベルソケット通信のラッバー方法での一般的なＴＣＰ／ＩＰソケット実行を含むクラスとすることができる。（４）ＭＳＣＳｅｒｖｅｒＳｏｃｋｅｔは、ＭＳＣＳｏｃｋｅｔクラスを使用してサーバ側ＴＣＰ／ＩＰソケット接続を実行するクラスとすることができる。（５）ＭＳＣＣｌｉｅｎｔＳｏｃｋｅｔは、ＭＳＣＳｏｃｋｅｔクラスを使用してクライアント側ＴＣＰ／ＩＰソケット接続を実行するクラスとすることができる。
【００６３】
開示する本発明の実施形態の態様によれば、ＵｓｅｒｌｎｔｅｒｆａｃｅＣｏｍｍｕｎｉｃａｔｉｏｎ構成要素は、ＭＳＣサーバ２０とＧＵＩ４０の間の通信を容易にするのに使用することができる。通信の目的により、例えば、制御のために又はステータスレポートのために、この構成要素の２つのインスタンス、すなわち、制御メッセージに使用するＵＩＣｏｎｔｒｏｌＣｏｍｍＭａｎａｇｅｒ及びステータスメッセージに使用するＵＩＳｔａｔｕｓＣｏｍｍＭａｎａｇｅｒ）をＭＳＣサーバ２０内で使用することができる。制御メッセージは、ＭＳＣサーバ２０を出入りすることができ、すなわち、双方向性とすることができる。ステータスメッセージは、サーバ２０から出ることしかできず、従って、一方向性とすることができる。いずれの場合も、サーバは、ＧＵＩ４０が通信接続要求を開始するのを待つ。以下の例示的なクラスは、この構成要素の一部とすることができる。
【００６４】
（１）ＭＳＣＵＩＣｏｍｍＭａｎａｇｅｒは、ＧＵＩ４０とサーバ２０の間の通信インタフェースとすることができ、ＭＳＣＵＩＣｏｍｍＭａｎａｇｅｒは、ＴＣＰ／ＩＰソケットを使用してＧＵＩ４０と通信することができ、かつＧＵＩ４０に制御メッセージも診断メッセージも送るために使用することができる。接続が最初にＧＵＩ４０から確立することができる時、サーバ２０は、ＧＵＩ４０に、識別情報、例えば、ユーザＩＤ及び／又は暗号化したパスワードを送るように要求することにより接続を認証することができ、かつ認証が失敗した場合、サーバ２０は、接続を終了させることができる。（２）ＭＳＣＵＩＭｅｓｓａｇｅＬｉｓｔｅｎｅｒは、ＭＳＣＵＩＣｏｍｍＭａｎａｇｅｒ５４０、５６０により作成及び管理される制御メッセージをＧＵＩ４０から受信するのに使用することができるクラスとすることができる。このクラスは、ホスト構成要素スレッドがＧＵＩ４０からメッセージを受信するために待つことができる間このスレッドが遮断されないように作業者スレッドで実行することができる。（３）ＭＳＣＵＩＭｅｓｓａｇｅＴｒａｎｓｌａｔｏｒは、クライアント側メッセージをサーバコードに及びサーバコードをクライアント側メッセージに変換すると共に、ＵＩＣｏｍｍＭａｎａｇｅｒ３７０、３７０’もＵＩＭｅｓｓａｇｅＬｉｓｔｅｎｅｒもこのクラスを呼び出すことができるのでスレッド安全である必要があるクラスとすることができる。
【００６５】
開示する本発明の実施形態の態様によれば、ＳｔａｔｕｓＭａｎａｇｅｒ３５０構成要素は、全てのデバイスのステータスをモニタし、また、ＭＳＣサーバ２０内のステータスメッセージを記録することができる。以下の例示的なクラスは、この構成要素の一部とすることができる。すなわち、（１）ＭＳＣＳｔａｔｕｓＭａｎａｇｅｒは、システム１０であらゆる位置から受信したステータスメッセージを記録するクラスとすることができる。また、デバイスをそれらのステータスに関して連続的にポーリングし、致命的なエラーが検出された場合、ＭＳＣＪｏｂＭａｎａｇｅｒ３１０クラスに通知するステータスループを作成及び管理することができる。（２）ＭＳＣＳｔａｔｕｓＭａｎａｇｅｒＤＡＯは、ＭＳＣＳｔａｔｕｓＭａｎａｇｅｒ３５０のデータアクセスヘルパークラスとして役割を果たすクラスとすることができる。ＭＳＣＳｔａｔｕｓＭａｎａｇｅｒクラスからのデータベースの呼び出しは、このクラスから行うことができる。（３）ＭＳＣＳｔａｔｕｓＬｏｏｐは、デバイスをそれらのステータスに関して連続的にポーリングするデバイスをポーリングするためのクラスとすることができる。ＭＳＣＳｔａｔｕｓＬｏｏｐは、致命的表示又はエラーステータス表示がないかデバイスをモニタすることができる。ＭＳＣＳｔａｔｕｓＬｏｏｐは、デバイスからある一定のパラメータの値を検索してＧＵＩ４０にポーリングすることができる。ＭＳＣＳｔａｔｕｓＬｏｏｐは、システム指令を実行してカウンタ及び他のシステム又はデバイスパラメータが有する寿命が閾値を上回っているか検査し、超える場合、以下の要請されたアクションの１つを実行するＧＵＩ４０に、１つ又はそれよりも多くの選択したダイアログボックスをポップアップさせて、アイコンの形態でエラー又は警告メッセージを表示させ、及び／又は、スクリプトを使用してカスタムアクションを実行させることができる。データベースからの以下の例示的な指令は、デバイス及びシステムステータスを判断するためにステータスループを実行することができる。
ＴｅｌｌＳｙｓｔｅｍ＜Ｓｙｓｔｅｍ  Ｃｏｍｍ  ａｎｄａｎｄ  Ａｒｇｓ＞＜Ｓｙｓｔｅｍ  Ｃｏｍｍａｎｄ  Ｒｅｓｕｌｔｓ＞
ＴｅｌｌＤｅｖｉｃｅ＜ＤｅｖｉｃｅＮａｍｅ  ｗｉｔｈ  Ｄｅｖｉｃｅ  Ｃｏｍｍ  ａｎｄ  ａｎｄ  Ａｒｇｓ＞＜Ｄｅｖｉｃｅ  Ｃｏｍｍａｎｄ  Ｒｅｓｕｌｔｓ＞
ＤｅｒｉｖｅＳｔａｔｕｓ＜Ｉｎｐｕｔ  Ｐａｒａｍ  Ｎａｍｅｓ＞＜Ｄｅｒｉｖｅｄ  Ｐａｒａｍ  Ｎａｍｅ＞
（４）ＭＳＣＳｔａｔｕｓＬｏｏｐＤＡＯは、呼び出しがこのクラスから製造されるＭＳＣＳｔａｔｕｓＬｏｏｐクラスからのデータベースの呼び出しを備えたＭＳＣＳｔａｔｕｓＬｏｏｐのデータアクセスヘルパークラスとすることができるクラスとすることができる。
【００６６】
開示する本発明の実施形態の態様によれば、ＪｏｂＰｒｏｃｅｓｓｏｒ構成要素３１２は、ＭＳＣサーバ２０の役立つ部分を形成する構成要素とすることができる。ＪｏｂＰｒｏｃｅｓｓｏｒ構成要素３１２は、指令ライブラリマネージャ３１６からの指令コールバックを備えたＰｙｔｈｏｎのような指令解釈プログラムを使用してジョブを実行することができる。指令コールバックは、３つの群、すなわち、（１）デバイスとの通信用デバイス指令、（２）ＭＳＣ１０によるデータ転送のためのデータ指令、及び（３）ＭＳＣ１０と通信するシステム指令に分類することができる。データオブジェクトマネージャ３２０は、データ指令の実行を容易にすることができる。以下の例示的なクラスは、この構成要素の一部とすることができる。すなわち、（１）ＨＭＳＣＪｏｂＰｒｏｃｅｓｓｏｒ３１２は、Ｐｙｔｈｏｎ解釈プログラムを使用してジョブを実行し、また、ＭＳＣＣｏｍｍａｎｄＬｉｂｒａｒｙＭａｎａｇｅｒ３１６を使用してＰｙｔｈｏｎスクリプト記述エンジンからのコールバックを行うクラスとすることができる。ＭＳＣＪｏｂＰｒｏｃｅｓｓｏｒは、ＭＳＣスキーマデータベース２４から検索した符号化スクリプトを復号することができる。（２）ＭＳＣＣｏｍｍａｎｄＬｉｂｒａｒｖＭａｎａｇｅｒは、Ｐｙｔｈｏｎスクリプト記述エンジンのためのコールバックを含むクラスとすることができ、Ｐｙｔｈｏｎスクリプト記述エンジンのためのコールバックは、３つの群、すなわち、（１）デバイスコールバック、（２）データコールバック、及び（３）システムコールバックに分類することができる。デバイスコールバックは、デバイスとの通信を行うことができる。データコールバックは、システム、デバイス、及びレシピパラメータのためのデータの検索を可能にすることができる。システムコールバックは、例えば、メッセージロギング及びシステム制御機能性をもたらすことができる。
【００６７】
以下の例示的な指令コールバックは、Ｐｙｔｈｏｎスクリプトからサポートすることができる。
ＴｅｌｌＤｅｖｉｃｅ＜ＤｅｖｉｃｅＮａｍｅ＞＜ＤｅｖｉｃｅＣｏｍｍａｎｄ＞＜ＣｏｍｍａｎｄＡｒｇ＞
ＴｅｌｌＳｙｓｔｅｍ＜ＳｙｓｔｅｍＣｏｍｍａｎｄ＞＜ＣｏｍｍａｎｄＡｒｇ＞
ＧｅｔＶａｌｕｅ＜ＧｅｔＰａｒａｍＮａｍｅ＞
ＰｕｔＶａｌｕｅ＜ＳｅｔＰａｒａｍＮａｍｅ＞＜ＳｅｔＰａｒａｍＶａｌｕｅ＞
ＬｏｇＭｅｓｓａｇｅ＜ＤｅｖｉｃｅＮａｍｅ＞＜ＭｅｓｓａｇｅＳｅｖｅｒｉｔｙ＞＜ＭｅｓｓａｇｅＴｅｘｔ＞
ＬｏｇＰａｒａｍｅｔｅｒ＜ＰａｒａｍＮａｍｅ＞＜ＰａｒａｍＶａｌｕｅ＞
ＲｕｎＰｒｏｃｅｄｕｒｅ＜ＰｒｏｃＮａｍｅ＞＜ＰｒｏｃＴｙｐｅ＞＜ＰｒｏｃＡｒｇ＞
＜ＤｅｖｉｃｅＮａｍｅ＞は、デバイス指令を送るデバイスの名前である。＜ＤｅｖｉｃｅＣｏｍｍａｎｄ＞は、中立言語フォーマット（ＮＬＦ）のデバイス指令である。指令、例えば、「ＧｅｔＣｏｎｎｅｃｔＳｔａｔｕｓ」は、あらゆるデバイスに送ることができる。応答は、２つの値、例えば、「ＯＫ」（デバイスが現在接続されている場合）及び「ＮＯＫ」（デバイスの接続に失敗した場合）の一方とすることができる。＜ＳｙｓｔｅｍＣｏｍｍａｎｄ＞は、以下の（１）ＳｔａｒｔＳｔａｔｕｓＬｏｏｐ、（２）ＳｔｏｐＳｔａｔｕｓＬｏｏｐの一方とすることができる。＜ＧｅｔＰａｒａｍＮａｍｅ＞は、以下の（１）Ｄａｔａ．＜ＵｓｅｒＰａｒａｍＮａｍｅ＞、（２）Ｄｅｖｉｃｅ．＜ＤｅｖｉｃｅＮａｍｅ＞．＜ＤｅｖｉｃｅＰａｒａｍＮａｍｅ＞、（３）Ｍｏｄｕｌｅ．＜ＭｏｄｕｌｅＮａｍｅ＞．＜ＭｏｄｕｌｅＰａｒａｍＮａｍｅ＞、（４）Ｃｏｍｐｏｎｅｎｔ．＜ＭｏｄｕｌｅＮａｍｅ＞．＜ＣｏｍｐｏｎｅｎｔＮａｍｅ＞．＜ＣｏｍｐｏｎｅｎｔＰａｒａｍＮａｍｅ＞、（５）Ｓｙｓｔｅｍ．＜ＳｙｓＰａｒａｍＮａｍｅ＞、（６）Ｔａｓｋ．Ｎａｍｅ、（７）Ｔａｓｋ．＜ＴａｓｋＰａｒａｍＮａｍｅ＞、（８）Ｌｏｔ．Ｎａｍｅ、（９）Ｌｏｔ．ＦｉｒｓｔＲｅｃｉｐｅ、（１０）Ｌｏｔ．ＮｅｘｔＲｅｃｉｐｅ、（１１）Ｒｅｃｉｐｅ．Ｎａｍｅ、（１２）Ｒｅｃｉｐｅ．ＦｉｒｓｔＩｍａｇｅ、（１３）Ｒｅｃｉｐｅ．ＮｅｘｔＩｍａｇｅ、（１４）Ｒｅｃｉｐｅ．＜ＲｅｃｉｐｅＰａｒａｍＮａｍｅ＞、（１５）Ｉｍａｇｅ．Ｎａｍｅ、（１６）Ｉｍａｇｅ．＜ＩｍａｇｅＰａｒａｍＮａｍｅ＞のうちの１つとすることができる。
【００６８】
＜ＳｅｔＰａｒａｍＮａｍｅ＞は、以下の（１）Ｄａｔａ．＜ＵｓｅｒＰａｒａｍＮａｍｅ＞、（２）Ｓｙｓｔｅｍ．＜ＳｙｓＰａｒａｍＮａｍｅ＞、（３）Ｍｏｄｕｌｅ．＜ＭｏｄｕｌｅＮａｍｅ＞．＜ＭｏｄｕｌｅＰａｒａｍＮａｍｅ＞、（４）Ｃｏｍｐｏｎｅｎｔ．＜ＭｏｄｕｌｅＮａｍｅ＞．＜ＣｏｍｐｏｎｅｎｔＮａｍｅ＞．＜ＣｏｍｐｏｎｅｎｔＰａｒａｍＮａｍｅ＞のうちの１つとすることができる。
【００６９】
＜ＭｅｓｓａｇｅＳｅｖｅｒｉｔｙ＞は、以下の（１）「致命的」、（２）「エラー」、（３）「警告」、（４）「情報」のうちの１つとすることができる。＜ＰａｒａｍＮａｍｅ＞は、＜ＧｅｔＰａｒａｍＮａｍｅ＞と同じとすることができる。＜ＰｒｏｃＮａｍｅ＞は、「ＴＣＺ  ９００Ｘ」データベースのＭＳＣスキーマデータベース２４内の格納手順の名前とすることができる。＜ＰｒｏｃＴｙｐｅ＞は、格納手順呼出しにより戻される結果セットの形式、すなわち、通常の結果セットに対しては「０」、基準カーソルに基づく結果セットに対しては「１」を指定することができる。
【００７０】
（３）ＭＳＣＣｏｍｍａｎｄｌｎｔｅｒｐｒｅｔｅｒは、Ｐｙｔｈｏｎ指令解釈プログラム３１４のためのラッバークラスとすることができ、Ｐｙｔｈｏｎ指令解釈プログラム３１４は、Ｐｙｔｈｏｎスクリプトを取り込みかつ実行することができる。
モジュール内の構成要素の寿命カウンタは、カウンタを更新するために論理を封入することができるモジュール化したＰｙｔｈｏｎスクリプトを使用することにより、一貫して更新することができる。Ｐｙｔｈｏｎスクリプトは、ＧｅｔＶａｌｕｅ及びＳｅｔＶａｌｕｅ指令を使用して、Ｍｏｄｕｌｅ．＜ＭｏｄｕｌｅＮａｍｅ＞．＜ＭｏｄｕｌｅＰａｒａｍＮａｍｅ＞、又はＣｏｍｐｏｎｅｎｔ．＜ＭｏｄｕｌｅＮａｍｅ＞．＜ＣｏｍｐｏｎｅｎｔＮａｍｅ＞．＜ＣｏｍｐｏｎｅｎｔＰａｒａｍＮａｍｅ＞を論拠として渡すことにより、寿命カウンタ又はあらゆる他のモジュール情報にアクセス可能である。エラー処理の改善をサポートするために、Ｐｙｔｈｏｎスクリプトは、例外を捕捉すると、次のロットだけを続けるのではなく、次の画像又は次のレシピで実行を再開することができる。
【００７１】
（４）ＭＳＣＤａｔａＯｂｉｅｃｔＭａｎａｇｅｒは、ＭＳＣＣｏｍｍａｎｄＬｉｂｒａｒｙＭａｎａｇｅｒ内で定義したデータコールバックにより達成されたデータ検索機能を実行するクラスとすることができる。それは、システムパラメータ、デバイスパラメータ、プロジェクトパラメータ、ロットパラメータ、タスクパラメータ、ロットパラメータ、及びレシピパラメータの検索を可能にする。それはまた、Ｐｙｔｈｏｎスクリプトからの設定及びユーザ定義パラメータの検索を可能にする。
【００７２】
ジョブマネージャ３０は、ＭＳＣサーバ２０のゲートキーパーとすることができる構成要素とすることができ、ゲートキーパーは、ＧＵＩ４０及び制御ジョブ実行からの制御メッセージに応答することができる。以下のクラスは、この構成要素の一部とすることができる。すなわち、（１）ＭＳＣＪｏｂＭａｎａｇｅｒ３０は、ＧＵＩ４０から送った制御メッセージに応答し、また、サーバ２０内での致命的エラーのようなあらゆる大きなイベントをＧＵＩ４０に通知するクラスとすることができる。ＭＳＣＪｏｂＭａｎａｇｅｒ３０は、ジョブ待ち行列内のジョブに寄与する。ＭＳＣＪｏｂＭａｎａｇｅｒ３０は、ＭＳＣＪｏｂＰｒｏｃｅｓｓｏｒ４２を使用してジョブを実行する。ＭＳＣＪｏｂＭａｎａｇｅｒ３０が、ジョブをジョブ待ち行列に追加することができるという通知をＪｏｂＳｃｈｅｄｕｌｅｒ３２から受信した場合、ＭＳＣＪｏｂＭａｎａｇｅｒ３０は、制御メッセージをＧＵＩ４０に送って、ジョブ待ち行列の表示をリフレッシュするように求める。ジョブがジョブ待ち行列内にない場合、ＭＳＣＪｏｂＭａｎａｇｅｒ３０は、ステップモードにジョブ待ち行列を振り向ける。システムは、予め構成されたタイムアウトに向けてアイドル状態である場合、所定の予備プロジェクトを実行することによりデバイスを既知の状態にする。（２）ＭＳＣＪｏｂＭａｎａｇｅｒＤＡＯは、ＭＳＣＪｏｂＭａｎａｇｅｒ３０のデータアクセスヘルパークラスとすることができ、かつこのクラスのＪｏｂＭａｎａｇｅｒ構成要素からデータベースの呼び出しを行うことができる。
【００７３】
ＪｏｂＳｃｈｅｄｕｌｅｒ３２は、ＭＳＣスキーマ内に格納した予め定義済みプロジェクト予定表を使用して実行に向けてジョブ／プロジェクトを予定する構成要素とすることができる。以下のクラスは、この構成要素の一部とすることができる。すなわち、（１）ＭＳＣＪｏｂＳｃｈｅｄｕｌｅｒ３２は、データベースからプロジェクト予定表を読取り、各予定ジョブに対して次の実行時間を判断して、例えば、実行時間に基づいて、最初から最後までスケジュールを整列させ、かつリスト内の第１のスケジュールに対して実行時間になるまで待つためにＭＳＣＳｃｈｅｄｕｌｅｒＴｉｍｅｒクラスを使用するクラスとすることができ、ＭＳＣＳｃｈｅｄｕｌｅｒＴｉｍｅｒクラスは、例えば、ジョブの行列を作る予定した時間を待ちながら、例えば、時間とは独立に連続するジョブ待ち行列に対して、スケジュールジョブに使用することができる。ＭＳＣＪｏｂＳｃｈｅｄｕｌｅｒ３２は、次に、ジョブ待ち行列上にあるものなら何でもプリファレンスを得るように、リスト内の第１のスケジュールに対応するプロジェクトをジョブ待ち行列の終わりに追加する。ＭＳＣＪｏｂＳｃｈｅｄｕｌｅｒ３２は、ＭＳＣが出るまでこのプロセスを繰り返す。ＭＳＣＪｏｂＳｃｈｅｄｕｌｅｒ３２クラスは、あらゆる着信メッセージを処理する準備が整った状態で、図９でジョブプロセッサに対して示すものと類似のものであるＭｅｓｓａｇｅＬｏｏｐを有する独自スレッド内で実行する。また、予定ジョブは、例えば、システムが定義した予め形成した時間ウィンドウ内でのみ実行することができる。それらは、時間ウィンドウ外で実行することができず、ウィンドウを逃した場合、警告メッセージを記録することができる。
【００７４】
ＧＵＩ４０は、ユーザがプロジェクトを作成、更新、又は削除した時にＭＳＣＪｏｂＳｃｈｅｄｕｌｅｒ３２クラスに通知することを予想することができる。この通知に応答して、ＭＳＣＪｏｂＳｃｈｅｄｕｌｅｒ３２クラスは、ＭＳＣスキーマデータベース２４からプロジェクト予定表を検索してプロジェクト実行時間を再評価することにより予定プロジェクト実行時間を更新する。ＭＳＣＪｏｂＳｃｈｅｄｕｌｅｒ３２は、このクラスが待機に向けてＭＳＣＳｃｈｅｄｕｌｅｒＴｉｍｅｒを使用している場合は、ＭＳＣＳｃｈｅｄｕｌｅｒＴｉｍｅｒを中断することができる。
【００７５】
（２）ＭＳＣＳｃｈｅｄｕｌｅｒＴｉｍｅｒは、独自ＭｅｓｓａｇｅＬｏｏｐにより独自スレッド内で実行するクラスとすることができる。ＭＳＣＳｃｈｅｄｕｌｅｒＴｉｍｅｒは、ＭＳＣＪｏｂＳｃｈｅｄｕｌｅｒ３２クラスのヘルパークラスとすることができる。ＭＳＣＳｃｈｅｄｕｌｅｒＴｉｍｅｒは、特定の時間が経過するまで待機し、次に、その時間が経過したことをＭＳＣＪｏｂＳｃｈｅｄｕｌｅｒ３２クラスに通知すると、ＭＳＣＪｏｂＳｃｈｅｄｕｌｅｒ３２クラスからの着信メッセージを待つ。
【００７６】
（３）ＭＥＳＩｎｔｅｒｆａｃｅ８０は、ＳＥＭＩのＳＥＣＳ／ＧＥＭインタフェース規格を使用してＭＥＳ８０のような外部システムへの及びそこからの通信を行う構成要素とすることができる。
ＳｅｒｖｅｒＤａｅｍｏｎは、ＭＳＣサーバ２０の主要プログラムを含む構成要素とすることができる。以下のクラスは、この構成要素の一部とすることができる。（１）ＭＳＣＳｅｒｖｅｒＭａｉｎは、ＭＳＣサーバ２０の主要プログラムとすることができる。サーバ２０機能性を管理するＭＳＣＳｅｒｖｅｒ２０のインスタンスを作成する。（２）ＭＳＣサーバ２０クラスは、ＭＳＣサーバ２０自体の代役とすることができる。システム構成を取り込み、全てのＭＳＣサーバ２０構成要素を開始及び初期化する。システム運転停止時には、全ての構成要素を停止してリソースをきれいにする。それは、起動時にｉｎｉｔスクリプトを実行する。それはまた、必要に応じてクラッシュ回復を実行する。（３）ＭＳＣＳｅｒｖｅｒＤＡＯは、ＭＳＣＳｅｒｖｅｒ２０のデータアクセスヘルパークラスとすることができる。サーバ構成要素からのデータベースの全ての呼び出しをこのクラスから行うことができる。（４）ＭＳＣＤａｅｍｏｎクラスは、呼出しプログラムをデーモンに変換する機能性をもたらす。２つの新しいプロセスをフォークし、新しいセッションを作成してコンソールからデーモンを分離する。
【００７７】
上述の構成要素に加えて、外部ＵＳＢインタフェース構成要素は、ビーム測定のためのカメラデバイス８３０と通信するのに使用することができる。また、例えば、レーザ３３０とのＣＯＲＢＡインタフェースを使用する「Ｃｙｍｅｒ、Ｉｎｃ．」の製品である「ＣＯＬＤＡＳ  ８２４」を使用してレーザ３３０’から診断情報を取得することができる。ＭＳＣ１０は、「ＣＯＬＤＡＳ  ８２４」を論理デバイスと処理して、ＭＳＣＣｏｍｍｌｎｔｅｒｆａｃｅに適合するデバイスドライバを用いてそれと接続する。
【００７８】
ＭＳＣ１０のユーザインタフェースデザインは、参照する図に示すように、ＵＩ内の１次画面に画面スケッチを使用して説明することができる。以下は、ＭＳＣのＧＵＩのパッケージ（最低から最高まで）の階層とすることができる。
ｉｃｅ９．ｍｓｃ．ｃｏｒｅパッケージは、ＧＵＩ４０内の全てのパッケージにより使用される共通クラスを含む。それも、ＧＵＩ４０を開始するｍａｉｎ（）方法を含む。以下の主要なクラスは、このパッケージの一部とすることができる。
【００７９】
Ｃｏｎｓｔａｎｔｓは、ＧＵＩ４０を通じて使用する定数を含むクラスとすることができる。ＤｅｆａｕｌｔＰａｎｅｌは、ＧＵＩ４０内で使用する全てのパネルの基本クラスとすることができる。それは、全てのパネルに共通の機能性を実行する。ＭＳＣＳｖｓｔｅｍＰｒｏｐｅｒｔｉｅｓは、ＧＵＩ画面のルック＆フィールを制御するのに使用することができるデータベースからのシステムレベル特性を取り込むクラスとすることができる。ＳｔａｒｔＭＳＣは、ＧＵＩ４０を開始するｍａｉｎ（）方法によるクラスとすることができる。ＭＳＣＤｖｎＰａｒａｍクラスは、ＧＵＩ４０内の動的パラメータ画面の表示及び更新機能性をもたらす。これらのクラスは、コントローラ、モデル、及び表示のクラスを有する標準モデルビューコントローラ（ＭＶＣ）デザインパターンを使用する。
【００８０】
ｉｃｅ９．ｍｓｃ．ｕｔｉｌパッケージは、ＧＵＩ４０内で全てのパッケージにより使用される共通ユーティリティ方法を含む。それは、画像を取り込み、フィールド内のデータを有効化し、表中でデータを分類するなどのユーティリティ方法を含む。ｉｃｅ９．ｍｓｃ．ｃｏｍｍパッケージは、Ｊａｖａ（登録商標）内でＴＣＰ／ＩＰソケットＡＰＩを使用してＧＵＩ４０とサーバ２０の間で通信を容易にする。このパッケージは、ジャバでＪＤＢＣのＡＰＩを使用してＧＵＩ４０からデータアクセスのための高レベル抽出も行う。以下のクラスは、このパッケージの一部とすることができる。すなわち、（１）ＳｏｃｋｅｔＣｏｎｎは、ＧＵＩ４０内でＴＣＰ／ＩＰを使用してソケット通信を実行する。（２）ＣｏｍｍａｎｄＳｏｃｋｅｔＣｏｎｎは、ＳｏｃｋｅｔＣｏｎｎクラスを使用して、サーバ２０への及びそこからの制御メッセージを送受信する。サーバ２０に送る全てのメッセージとしては、接続がまず樹立された時にサーバ２０により戻されるセッションＩＤがある。サーバ２０は、このセッションＥＤを使用してアクセス制御を実施する。（３）ＤｉａｇｎｏｓｔｉｃＳｏｃｋｅｔＣｏｎｎは、ＳｏｃｋｅｔＣｏｎｎクラスを使用してサーバからステータスメッセージを受信する。（４）ＭＳＣＤＢＣｏｎｎは、標準的な接続性デバイス、例えば、ＭＳＣデータベースとのＪａｖａ（登録商標）データベース接続（ＪＤＢＣ）をもたらす。この接続を使用して、ＭＳＣ１０データベース内の格納した手順を実行してＭＳＣ１０内でデータを検索及び更新することができる。
【００８１】
ｉｃｅ９．ｍｓｃ．ｓｅｃｕｒｉｔｖパッケージは、ＧＵＩ４０において様々な特徴に対してユーザを認証及び認可する。それは、ユーザログインを確認する。それはまた、ユーザの役割に基づいてアクセス制御を判断する。以下のクラスは、このパッケージの一部とすることができる。
ＳｅｃｕｒｉｔｖＭａｎａｇｅｒ：このクラスは、セキュリティ形式に基づいてユーザ又は役割をシステムにログインする。それは、２つの形式のセキュリティ、すなわち、ユーザに基づくセキュリティ及び群ベースのセキュリティをサポートする。システムがユーザベースのセキュリティであるように形成することができる場合、ユーザＥＤ及びユーザパスワードが供給されることを予想する。次に、ユーザに対応する役割をデータベースから見つける。他方、システムが群ベースのセキュリティであるように形成することができる場合、役割ＩＤ、役割パスワード、及びユーザＩＤが供給されることを予想する。いずれの構成が選択されるかに関係なく、最後には、システムには、システムを使用しているユーザが誰であるのか及びユーザが果たすことができる役割が既知である。役割から、ユーザ許可を判断することができる。
【００８２】
役割及び許可は、予め定義することができる。それらは、ＯＥＭスキーマ内に格納することができる。３つの共通の役割、すなわち、オペレータ（プロセスエンジニア）、サービスエンジニア（フィールドサービスエンジニア）、及び管理者が存在する場合がある。
許可は、実行することができるアクションを使用して各役割に対して定義することができる。ユーザがいずれかの特徴に対して実行することができる５つの共通のアクション、すなわち、表示する、作成する、修正する、削除する、実行するが存在する場合がある。
システムは、許可をＭＳＣ納入業者（ＯＥＭ）がいずれかのレベルで設定することを可能にする。許可は、以下のレベル、すなわち、システム、特徴、エンティティで設定することができる。
【００８３】
システムレベル（すなわち、データベースレベル）で設定した許可よりも特徴レベル（すなわち、表レベル）で設定した許可が優位に立つことができ、特徴レベル（すなわち、表レベル）で設定した許可よりも、エンティティレベル（すなわち、フィールドレベル）で設定した許可が優位に立つことができる。
このクラスの２つの重要な方法は、「ブールが許される」（文字列ＳｅｓｓｉｏｎＩＤ、文字列ＦｅａｔｕｒｅｌＤ、文字列ＡｃｔｉｏｎＣｏｄｅ）、及びブールｃｈｅｃｋＰｅｒｍｉｓｓｉｏｎ（文字列ＳｅｓｓｉｏｎＩＤ、文字列ｐｅｒｍｉｓｓｉｏｎｌＤ、文字列ＡｃｔｉｏｎＣｏｄｅ）とすることができる。
【００８４】
「ブールが許される（）」方法は、特定の特徴に対してアクセスを検査するのに使用することができる。アクセスが許可されなかった場合、対応するメニュー又はボタンを無効にすることができる。ｃｈｅｃｋＰｅｒｍｉｓｓｉｏｎ（）方法は、フィールドレベルセキュリティを検査するのに使用することができる。例えば、許可ＩＤをデータベース内のタスクパラメータに取り付けることができる場合、ｃｈｅｃｋＰｅｒｍｉｓｓｉｏｎ（）方法からの戻り値に基づいてＧＵＴ内の対応するパラメータ列を有効／無効にすることができる。
【００８５】
ｉｃｅ９．ｍｓｃ．ｓｙｓｃｏｎｆｉｇパッケージは、ユーザがシステム情報及びデバイス構成情報を更新することを可能にする。ｉｃｅ９．ｍｓｃ．ｃｏｒｅパッケージからＭＳＣＤｙｎＰａｒａｍクラスを使用してシステムパラメータ及びデバイス構成パラメータを表示及び更新する。システム構成画面上のタブの数及び内容は、データベース主導式とすることができる。通常、ＭＳＣ１０に装着した各デバイスに１つのタブを表示することができる。
ｉｃｅ９．ｍｓｃ．ｓｔａｔｕｓパッケージは、ユーザがＭＳＣサーバ２０からステータスメッセージを表示することを可能にする。それは、ユーザが、例えば、タイミング、重大度、及びメッセージ内容に基づいてステータスメッセージをフィルタリングすることを可能にする。それは、コントローラクラス、モデルクラス、及びビュークラスを有する標準モデルビューコントローラ（ＭＶＣ）デザインパターンを使用する。ステータスメッセージを表示するために、ＧＵＩ４０は、サーバ２０からの「ＳｔａｔｕｓＭｅｓｓａｇｅ」メッセージを聞き取る。ｉｃｅ９．ｍｓｃ．ｐｒｏｉパッケージは、ユーザがＧＵＩでプロジェクトを作成、更新、及び削除することを可能にする。それは、コントローラクラス、モデルクラス、及びビュークラスを有する標準モデルビューコントローラ（ＭＶＣ）デザインパターンを使用する。このパッケージは、ユーザがプロジェクトに対してスケジュールをもたらすことも可能にする。プロジェクトは、高々１つのスケジュールに限定することができる。タスクは、プロジェクトを予定することができるか否かを表示するパラメータを有することができる。プロジェクトは、日程計画を禁止するタスクを含む場合は予定することができない。タスクの予定可能なパラメータが変わった場合、システムは、そのタスクを含むスケジュールを再確認して、予定したタスクが予定不可能になった場合にユーザに通知することができる。ユーザが制御、診断、又はダウンロードのためのテンプレートに基づくプロジェクト画面を使用することに決めた場合、要求したテンプレートを使用してカスタム画面を表示することができる。依然として標準的なプロジェクト定義を用いてデータベースへのプロジェクトデータの保存及びプロジェクトデータからのプロジェクトデータの検索を行うことができる（すなわち、プロジェクトは、単にタスクパラメータを有するタスク集とすることができる）。従って、ＧＵＩ内のテンプレートに基づくカスタム論理は、標準フォーマットとテンプレートに基づくカスタムフォーマットとの間でプロジェクトデータを変換することができる。ＸＭＬフォーマットは、プロジェクトをインポート／エクスポート及びコピー／ペーストするために使用することができる。
【００８６】
スタイルシートは、プロジェクト情報が見やすいようにＸＭＬをテキスト形式に変換するのに使用することができる。プロジェクト予定表情報は、プロジェクトのインポート／エクスポートに含めることができない。また、インポート／交換機能性は、サポートすることができない。インポートにより、新しいプロジェクトを作成することができる。同じ名前を有するプロジェクトが存在している場合は、誤りを除去することができる。エクスポートしたＸＭＬ文書は、２つの部分、すなわち、ヘッド部と本文に分けることができる。エクスポートされたデータの完全性を保証するために、本文部のエクスポートデータに対してハッシュを作成して見出し部に含めることができる。
インポート時に、本文部のハッシュが見出し部に格納したハッシュに適合しなかった場合、警告をユーザに表示することができる。次に、ユーザの選択に基づいて、インポート作業を進めるか又は打ち切ることができる。
【００８７】
ｉｃｅ９．ｍｓｃ．ｒｅｃｉｐｅパッケージは、ユーザがＧＵＩでレシピ及び関連する画像を作成、更新、削除、コピー、及びペーストすることを可能にする。それは、コントローラクラス、モデルクラス、及びビュークラスを有する標準モデルビューコントローラ（ＭＶＣ）デザインパターンを使用する。ユーザは、フォルダを使用してレシピをまとめることができる。これらのフォルダは、ファイルシステム内の現実のフォルダとすることができない。フォルダ階層（親子関係として）は、データベースに格納することができる。短いレシピ名は、フォルダにわたって固有のものである必要はない。レシピの長い名前は、フォルダ階層を含む。レシピの長い名前でのフォルダ名は、前方スラッシュ（／）により分離することができる。ＧＵＩは、データベースからフォルダ階層を検索して表示する。レシピ及びｉｍａｇｅパラメータに関する整合性検査には、レシピパラメータ間の比較が含まれる。整合性検査自体は、レシピ及びｉｍａｇｅパラメータの他の情報と共にデータベースのＯＥＭスキーマ内に格納することができる。例えば、それらは、Ｉｍａｇｅ．ＥｎｄＸ＜Ｉｍａｇｅ．ＳｔａｒｔＸとして格納することができる。ＧＵＩは、ＯＥＭスキーマから検査を検索し、パラメータの値を代入し、かつ真又は偽であるかに対して検査を評価する。
レシピをインポート／エクスポート及びコピー／ペーストするために、ＸＭＬフォーマットを使用することができる。
【００８８】
スタイルシートは、レシピ及び画像情報が見やすいようにＸＭＬをテキスト形式に変換するのに使用することができる。インポートは、必要に応じて新しいレシピ又は画像を作成する。同じ名前によるレシピが存在している場合、誤りを除去する。インポートしたＸＭＬファイル内の画像の名前に関わりなく、画像は、レシピ内の既存の画像リストに付加することができる。上述のように、ｉｃｅ９．ｍｓｃ．ｐｒｏｊ部では、エクスポートしたファイルの完全性は、エクスポートした文書内でエクスポートしたデータのハッシュを保存することにより検証することができる。
【００８９】
ｉｃｅ９．ｍｓｃ．ｌｏｔパッケージは、ユーザがＧＵＩでロットを作成、更新、及び削除することを可能にする。それは、コントローラクラス、モデルクラス、及びビュークラスを有する標準モデルビューコントローラ（ＭＶＣ）デザインパターンを使用する。
ロットをコピー／ペーストするために、ＸＭＬフォーマットを使用することができる。
【００９０】
ｉｃｅ９．ｍｓｃ．ｊｏｂパッケージは、ユーザがＧＵＩ４０からジョブを作成、削除、再順序化、及び実行することを可能にする。それは、ユーザがジョブ実行を停止、再開、又は打ち切ることも可能にする。それはまた、ジョブをステップモード又は連続モードで実行することを可能にする。それはまた、ＭＳＣサーバ２０への及びそこからの制御メッセージを送受信する。それはまた、結晶化グラフィック及びシステムステータスを表示する。システムステータスタブの数及び内容は、データベース主導式とすることができる。システムは、コントローラクラス、モデルクラス、及びビュークラスを有する標準モデルビューコントローラ（ＭＶＣ）デザインパターンを使用する。ユーザがジョブ待ち行列にジョブを追加した時、ＧＵＩ４０は、ユーザが、図３４に例示する「ジョブを待ち行列に追加する」画面１００内でＥｄｉｔボタン１０２をクリックすることにより実行時間パラメータを供給することを可能にする。Ｅｄｉｔボタンをクリックすると、例えば、図３３に例示するように、対応するジョブロット又はプロジェクトの「修正する」画面が表示される。代替的に、対応するロット又はプロジェクトのパラメータだけを説明する新しい画面を表示することができる。ユーザが実行時間パラメータを供給したか否かに関わらず、ＧＵＩ４０は、データベース内でジョブのコピーを行い、かつジョブ待ち行列に追加することができる。
【００９１】
「ジョブを追加する」画面１００はまた、ジョブからロットにリストを切り換えるジョブの形式、ロット、又はジョブを表示する選択トグル１０４を有することができる。それは、リスト１０６内で選択可能であるジョブを表示することができる。選択を行うと、ユーザは、ＯＫボタン１０８又はＣａｎｃｅｌボタン１１０をクリックすることができる。
また、予定したジョブは、スケジュールが実行時間に達する時にジョブ待ち行列の終わりに追加される。システム構成パラメータによっては、ジョブスケジューラーが手動であるように形成することができる場合、システムは、ジョブを実行する前にユーザを促す。他方、ジョブスケジューラーが自動であるように形成した場合、ジョブは、ユーザを促すことなく実行される。カセットの図的表現、結晶化グラフィック、及びシステムステータス値に対しては、ＧＵＩ４０は、サーバ２０から「ＳｔａｔｕｓＰａｒａｍｅｔｅｒ」メッセージを聞き取る。結晶化グラフィックに対しては、スクリプトからのＬｏｇＰａｒａｍｅｔｅｒ指令を使用して、以下のパラメータ、すなわち、Ｌｏｔ．Ｎａｍｅ、Ｒｅｃｉｐｅ．Ｎａｍｅ、Ｉｍａｇｅ．Ｎａｍｅ、Ｓｔａｇｅ．ＣｕｒｒｅｎｔＹをＧＵＩ４０に送ることができる。
【００９２】
失ったパルスに対しては、Ｓｔａｇｅ．ＣｕｒｒｅｎｔＹパラメータの現在のＹ位置値にスペースと共に「２」を添付する。ガラス基板を回転させた場合、結晶化グラフィックをそれに対応して調整すべきである。パラメータの名前及び値を含むことに加えて、サーバ２０からの「ＳｔａｔｕｓＰａｒａｍｅｔｅｒ」メッセージは、ＧＵＩ４０により取られるべきアクションを表示するのに使用することができる属性を含む。これらのアクション属性は、データベース内のステータス表内に格納することができる。ＧＵＩ４０は、アクション属性を使用して以下のもの、すなわち、対話をポップアップする、アイコン又はアラーム信号を表示する、アスタリスク又は感嘆符を示す、電子メール又はポケットベルを送る、カスタムスクリプトに基づくアクションを実行するのうちの１つ又はそれよりも多くを行うことができる。
【００９３】
ｉｃｅ９．ｍｓｃ．ｗｏｒｋｆｌｏｗパッケージは、カスタムプロジェクト画面をもたらす。それは、テンプレートを使用して、カスタム表示をレンダリングしてプロジェクトを作成、修正、及び実行する。ｉｃｅ９．ｍｓｃ．ｐｒｏｊパッケージのクラスを使用してデータベースのＭＳＣスキーマからプロジェクトを格納及び検索する。このパッケージは、ｉｃｅ９．ｍｓｃ．ｐｒｏｊパッケージより上方の抽出層と考えることができる。このパッケージは、テンプレート内に含まれた情報に基づいてカスタマイズした表示として、ｉｃｅ９．ｍｓｃ．ｐｒｏｊパッケージを使用してデータベースから検索したプロジェクト定義をレンダリングする。３つのテンプレートは、Ｄｉａｇｎｏｓｉｓ、Ｃｏｎｔｏｌ、及びＤｏｗｎｌｏａｄと特定されている。付加的なテンプレートを必要に応じて追加することができる。このパッケージ内の作業フローエンジンは、標準的なプロジェクト定義をカスタム表示に変換する。ユーザは、これらのカスタム表示を使用して、プロジェクトを作成及び修正することができる。作業フローエンジンは、次に、カスタム表示を標準的プロジェクト定義に変換する。カスタム表示を使用して、ユーザは、対話型にプロジェクトを実行することができる。ユーザがこれらのカスタム表示のうちの１つでＥｘｅｃｕｔｅボタンをクリックした時、作業フローエンジンは、舞台裏でジョブを作成して、直ちに実行すべきジョブ待ち行列に追加する。次に、ステータスウィンドウ内のステータスメッセージを再方向付けすることにより、同じカスタム表示においてプロジェクト実行の結果を表示する。
ｉｃｅ９．ｍｓｃ．ｒｅｐｏｒｔｉｎｇパッケージは、ユーザがシステム内の様々なサーバ構成要素により生成されたレポートを列挙及び閲覧することを可能にする。
【００９４】
開示する本発明の実施形態の態様によれば、データベースデザインは、例えば、表を使用して説明するように、ＭＳＣ１０のデータベースデザインを含むことができる。
データベース内の表は、セキュリティ情報、ジョブ日程計画情報、モジュール情報、及びレシピ階層情報を格納することができる。これは、ユーザＩＤ及びパスワード、及びユーザのレベル、例えば、ユーザの役割を有するユーザ表を含むことができ、かつ例えばプロセスエンジニア、フィールドサービスエンジニア、又は管理者として、特定のユーザに割り当てられたパスワード及び許可のような他のセキュリティを含むことができる。表は、以下のデータで、すなわち、ＳｅｓｓｉｏｎＪＤ（ＰＫ）、ＳｅｓｓｉｏｎＵｓｅｒＩＤ、ＳｅｓｓｉｏｎＲｏｌｅｌＤ、ＳｅｓｓｉｏｎＴｙｐｅ（ＧＵＴ、ＭＥＳなど）、ＳｅｓｓｉｏｎＳｔａｒｔＴｉｍｅ、ＳｅｓｓｉｏｎＥｎｄＴｉｍｅで、例えば、セッション、例えば、ＭＳＣ：：Ｓｅｓｓｉｏｎ表を追跡することができる。ＭＳＣ：：Ａｃｔｉｏｎ表は、以下のもの、すなわち、ＡｃｔｉｏｎＣｏｄｅ（ＰＫ）（表示する、作成する、削除する、実行するなど）、ＡｃｔｉｏｎＤｅｓｃを有することができる。ＭＳＣ：：Ｆｅａｒｕｒｅ表は、以下のもの、すなわち、ＦｅａｔｕｒｅＣｏｄｅ（ロット、レシピ、プロジェクト、ジョブ、状態、待ち行列、スケジュールなど）、ＦｅａｔｕｒｅＤｅｓｃを含むことができ、ＭＳＣ：：ＡｃｃｅｓｓＣｏｎｔｒｏｌ表は、以下のもの、すなわち、ＦｅａｔｕｒｅＣｏｄｅ（ＰＫ−１）、ＰｅｒｍＩＤ（ＰＫ−１）を含むことができる。
【００９５】
ＰｅｒｍＩＤは、ＯＥＭスキーマ２２でパラメータ表に追加してフィールドレベルでアクセスを制御することができる。ＭＳＣ：：Ｓｃｈｅｄｕｌｅ表は、日程計画機能の一部とすることができ、かつ以下のもの、すなわち、ＳｃｈｅｄｕｌｅＩＤ（ＰＫ）、ＳｃｈｅｄｕｌｅＴｙｐｅ（時間別、日別、週別、月別）、ＲｅｃｕｒｒｅｎｃｅＴｉｍｅｓ（すなわち、ＯｃｃｕｒｓＥｖｅｒｙ）、ＲｅｃｕｒｒｅｎｃｅＰｅｒｉｏｄＴｙｐｅ（日、日、週、月）、ＲｅｃｕｒｒｅｎｃｅＰｅｒｉｏｄ、ＳｔａｒｔＴｉｍｅ、ｔａｒｔＤａｔｅを含むことができる。これは、例えば、図２９、図３０、図３１、及び図３２のＧＵＩ画面２１３２、２１３４、２１３６、及び２１３８を使用して利用することができる。ユーザは、タイミング選択ボックス２１４２上で、時間別、日別、週別、又は月別を選択することができ、それによって時間別、日別、週別、及び月別の日程計画に対して、それぞれ、図２９〜図３３のそれぞれの画面２１３２、２１２４、２１３６、及び２１３８において例示として示すそれぞれの日程計画ウィンドウ２１４４、２１４４’、２１４４’’、又は２１４４’’’を表示することができる。図で見ることができるように、これらのそれぞれのウィンドウ２１４４〜２１４４’’’は、時間別、日別、週別、及び月別に日程計画時間及び頻度の選択を可能にする。
【００９６】
ＭＳＣ：：ＪｏｂＳｃｈｅｄｕｌｅ表は、以下のもの、すなわち、ＪｏｂＩＤ（ＰＫ−１）、ＳｃｈｅｄｕｌｅＩＤ（ＰＫ−１）、Ａｃｔｉｖｅｌｎｄｉｃａｔｏｒ（真又は偽）、及びＮｅｘｔＥｘｅｃｕｔｉｏｎＴｉｍｅを含むことができ、ＭＳＣ：：モジュール表は、以下のもの、すなわち、ＭｏｄｕｌｅＩＤ（ＰＫ）、ＭｏｄｕｌｅＮａｍｅを含むことができ、ＭＳＣ：：Ｃｏｍｐｏｎｅｎｔ表は、以下のもの、すなわち、ＭｏｄｕｌｅＩＤ（ＰＫ）、ＣｏｍｐｏｎｅｎｔＩＤ（ＰＫ−１）、ＣｏｍｐｏｎｅｎｔＮａｍｅ、ＳｅｑｕｅｎｃｅＮｕｍｂｅｒを含むことができる。ＭＳＣ：：ＭｏｄｕｌｅＰａｒａｍｅｔｅｒ表は、以下のもの、すなわち、ＭｏｄｕｌｅＩＤ（ＰＫ−１）、ＰａｒａｍＮａｍｅ（ＰＫ−１）、ＰａｒａｍＶａｌｕｅ、及び全ての他の一般的なパラメータ関連の縦列を含むことができる。ＭＳＣ：：ＣｏｍｐｏｎｅｎｔＰａｒａｍｅｔｅｒ表は、以下のもの、すなわち、ＭｏｄｕｌｅＩＤ（ＰＫ−１）、ＣｏｍｐｏｎｅｎｔＩＤ（ＰＫ−１）、ＰａｒａｍＮａｍｅ（ＰＫ−１）、ＰａｒａｍＶａｌｕｅ、及び全ての他の一般的なパラメータ関連の縦列を含むことができる。ＭＳＣ：：ＲｅｃｉｐｅＦｏｌｄｅｒ表は、以下のもの、すなわち、ＦｏｌｄｅｒＩＤ（ＰＫ）、ＦｏｌｄｅｒＮａｍｅ、ＰａｒｅｎｔＦｏｌｄｅｒＩＤを含むことができる。
【００９７】
ＲｅｃｉｐｅＩＤに加えて、ＳｕｂｓｔｒａｔｅＩＤをＬｏｔＲｅｃｉｐｅ表に追加し、かつレシピ表においては、ＰａｒｅｎｔＦｏｌｄｅｒＩＤの縦列を追加することができる。符号化したスクリプトは、データベース内に格納することができる。以下のパラメータ、すなわち、システムアイドルタイムアウト（分単位）、スケジューラー手動／自動モード、及び予定タスクを実行するウィンドウ（分単位）は、以下のタスクのためのパラメータ、すなわち、タスクを予定することができるか又はできないかと共にデータベース内のシステムパラメータに追加することができる。以下のもの、すなわち、ダイアログボックスをポップアップする、エラー又は警告アイコンを表示する、又はスクリプトを使用してカスタムアクションを実行するは、例えば、ステータス検査が失敗した時のアクションの形式としてステータス表に追加することができる。
【００９８】
図４２Ａ〜図４２Ｅは、例えば、ｆｏｒｍ＿ｉｄ（ＰＫ）データ及びｆｏｒｍ＿ｎａｍｅデータを収容するＯＥＭ＿ｆｏｒｍ表２５００のような例示的なＭＳＣデータベース２４及びＯＥＭデータベース２２を例示しており、ＭＳＣデータベース２４及びＯＥＭデータベース２２は、例えば、各形式に対して、ｖａｒｉａｂｌｅ＿ｕｏｍデータ、ｖａｒｉａｂｌｅ＿ｄａｔａ＿ｔｙｐｅデータ、ｖａｒｉａｂｌｅ＿ｔｙｐｅデータ、ｖａｒｉａｂｌｅ＿ｄｅｆａｕｌｔデータ、ｖａｒｉａｂｌｅ＿ｒｅｑｕｉｒｅｄデータ、ｖａｒｉａｂｌｅ＿ｖａｌｉｄａｔｏｒデータ、ｖａｒｉａｂｌｅ＿ｏｒｄｅｒデータ、ｖａｒｉａｂｌｅ＿ｌｉｓｔデータ及びｖａｒｉａｂｌｅ＿ｉｎｔｅｒｎａｌデータを含むＯＥＭ＿ｆｏｒｍ＿ｖａｒｉａｂｌｅ表２５０２にリンクすることができる。また、例えば、ｘｓｅｒｉｅｓデータ及びｙｓｅｒｉｅｓデータを含むＭＳＣ＿ｎ２＿ｄａｔａ表２５１０、同じくｘｓｅｒｉｅｓデータ及びｙｓｅｒｉｅｓデータを含むＭＳＣ＿ｗａｔｅｒ＿ｄａｔａ表２５０８、例えば、ｖａｒｉａｂｌｅ＿ｎａｍｅデータ及びｖａｒｉａｂｌｅ＿ｖａｌｕｅデータを含むＭＳＣ＿ｃｏｎｆｉｇ＿ｖａｒｉａｂｌｅ表２５０６、及び例えばｄｅｖｉｃｅ＿ｉｄデータ、ｖａｒｉａｂｌｅｊｎａｍｅデータ及びｖａｒｉａｂｌｅ＿ｖａｌｕｅデータを含むＭＳＣ＿ｄｅｖｉｃｅ＿ｖａｒｉａｂｌｅ表２５０４を含めることができる。また、各々がそれぞれのポンド−ＩＤデータ及びＲＢ−ＩＤデータ及びそれぞれのｌｂ＿ｔｉｍｅｓｔａｍｐ、ｒｂ＿ｔｉｍｅｓｔａｍｐ、及びｌｂ＿ｐｒｏｊｅｃｔ＿ｉｄデータ及びｒｂ＿ｐｒｏｊｅｃｔ＿ｉｄデータを含み、かつそれぞれのＭＳＣ＿ｌｉｎｅｂｅａｍ＿ｃａｌｃｕｌａｔｉｏｎ表２５２４及びＭＳＣ＿ｒａｗｂｅａｍ＿ｃａｌｃｕｌａｔｉｏｎ表２５３２、及びＭＳＣ＿ｌｉｎｅｂｅａｍ＿ｄａｔａ表２５２２及びＭＳＣ＿ｒａｗｂｅａｍ＿ｄａｔａ表２５３４とリンクしたＭＳＣ＿ｌｉｎｅｂｅａｍ＿ｈｅａｄｅｒ表２５２０及びＭＳＣ−ｒａｗｂｅａｍ＿ｈｅａｄｅｒ表２５３０を一例として示しており、表２５２４及び２５３２は、例えば、それぞれ、ｌｂ＿ｉｄデータ、ｒｂ＿ｉｄデータ、ｌｂ＿ｃａｐｔｕｒｅ＿ｉｄデータ、ｃａｐｔｕｒｅ＿ｉｄデータ、ｌｂ＿ｎａｍｅデータ、ｒｂ＿ｎａｍｅデータ及びｌｂ＿ｖａｌｕｅデータ、ｒｂ＿ｖａｌｕｅデータを含む。表２５２２及び２５３４は、例えば、ｌｂ＿ｉｄデータ、ｒｂ＿ｉｄデータ、ｌｂ＿ｆｉｌｅｎａｍｅデータ、ｒｂ＿ｆｉｌｅｍａｎｅデータ及びｌｂ＿ｄｉｌｅｄａｔａデータ、ｒｂ＿ｆｉｌｅｄａｔａデータを含む。
【００９９】
付加的なＯＥＭ／ＭＳＣデータベース表を図４２Ｂに一例として示している。ｏｅｍ＿ｐｒｏｊｅｃｔ表２５４０は、ｐｒｏｊｅｃｔ＿ｉｄ（ＰＫ）データ、ｐｒｏｊｅｃｔ＿ｎａｍｅデータ、ｐｒｏｊｅｃｔ＿ｄｅｓｃデータ、及びｐｒｏｊｅｃｔ＿ｔｙｐｅデータを含み、かつｔａｓｋ＿ｉｄ（ＰＫ）データ、ｔａｓｋ＿ｎａｍｅデータ、ｔａｓｋ＿ｄｅｓｃデータ、及びｔａｓｋ＿ｔｙｐｅデータを含むＯＥＭ−タスク表２５４４と、ｏｅｍ＿ｐｒｏｊｅｃｔ＿ｔａｓｋ表２５４６及びｍｓｃ＿ｐｒｏｊｅｃｔ＿ｔａｓｋ表２５４８とにリンクしており、ｏｅｍ＿ｐｒｏｊｅｃｔ＿ｔａｓｋ表２５４６及びｍｓｃ＿ｐｒｏｊｅｃｔ＿ｔａｓｋ表２５４８の各々は、プロジェクト内でタスクに対してｐｒｏｊｅｃｔ＿ｉｄ、ｔａｓｋ＿ｉｄ及びｔａｓｋ＿ｓｅｑｕｅｎｃｅを含むことができる。表２５４０は、ｏｅｍ＿ｐｒｏｊｅｃｔ＿ｖａｒｉａｂｌｅ表２５４２にリンクすることができ、ｏｅｍ＿ｐｒｏｊｅｃｔ＿ｖａｒｉａｂｌｅ表２５４２は、ｖａｒｉａｂｌｅ−ｌａｂｅｌデータ、ｖａｒｉａｂｌｅ＿ｕｏｍデータ、ｖａｒｉａｂｌｅ＿ｄａｔａ＿ｔｙｐｅデータ、ｖａｒｉａｂｌｅ＿ｔｙｐｅデータ、ｖａｒｉａｂｌｅ＿ｄｅｆａｕｌｔデータ、ｖａｒｉａｂｌｅ＿ｒｅｑｕｉｒｅｄデータ、ｖａｒｉａｂｌｅ＿ｖａｌｉｄａｔｏｒデータ、ｖａｒｉａｂｌｅ＿ｏｒｄｅｒデータ、ｖａｒｉａｂｌｅ＿ｌｉｓｔデータ、及びｖａｒｉａｂｌｅ＿ｉｎｔｅｒｎａｌデータと共に、ｐｒｏｊｅｃｔ＿ｉｄデータ及びｖａｒｉａｂｌｅ＿ｎａｍｅデータを含むことができる。表２５４４は、ｔａｓｋ＿ｉｄデータ及びｖａｒｉａｂｌｅ−ｎａｍｅデータ、並びにｖａｒｉａｂｌｅ＿ｌａｂｅｌデータ、ｖａｒｉａｂｌｅ＿ｕｏｍデータ、ｖａｒｉａｂｌｅ＿ｄａｔａ＿ｔｙｐｅデータ、ｖａｒｉａｂｌｅ＿ｔｙｐｅデータ、ｖａｒｉａｂｌｅ＿ｄｅｆａｕｌｔデータ、ｖａｒｉａｂｌｅ＿ｒｅｑｕｉｒｅｄデータ、ｖａｒｉａｂｌｅ＿ｖａｌｉｄａｔｏｒデータ、ｖａｒｉａｂｌｅ＿ｏｒｄｅｒデータ、ｖａｒｉａｂｌｅ＿ｌｉｓｔデータ、及びｖａｒｉａｂｌｅ＿ｉｎｔｅｒｎａｌデータを含むことができるｏｅｍ＿ｔａｓｋ＿ｖａｒｉａｂｌｅにリンクすることができる。
【０１００】
表２５４８は、ｐｒｏｊｅｃｔ＿ｉｄデータ及びｐｒｏｊｅｃｔ＿ｎａｍｅデータ、ｐｒｏｊｅｃｔ＿ｄｅｓｃデータ、及びｐｒｏｊｅｃｔ＿ｔｙｐｅデータを含むことができるｍｓｃ＿ｐｒｏｊｅｃｔ表２５５０にリンクすることができ、かつ例えばｐｒｏｊｅｃｔ＿ｉｄデータ及びｌｏｇ＿ｔｉｍｅｓｔａｍｐデータ、並びにｌｏｇ＿ｍｅｓｓａｇｅデータを含むｍｓｃ＿ｐｒｏｊｅｃｔ＿ｌｏｇ表にリンクすることができる。表２５４４は、ｏｅｍ＿ｔａｓｋ＿ｖａｒｉａｂｌｅ表２５６０にリンクすることができ、ｏｅｍ＿ｔａｓｋ＿ｖａｒｉａｂｌｅ表２５６０は、ｔａｓｋ＿ｉｄデータ及びｖａｒｉａｂｌｅ＿ｎａｍｅデータ、並びにｖａｒｉａｂｌｅ−ｌａｂｅｌデータ、ｖａｒｉａｂｌｅ＿ｕｏｍデータ、ｖａｒｉａｂｌｅ＿ｄａｔａ＿ｔｙｐｅデータ、ｖａｒｉａｂｌｅ＿ｔｙｐｅデータ、ｖａｒｉａｂｌｅ＿ｄｅｆａｕｌｔデータ、ｖａｒｉａｂｌｅ＿ｒｅｑｕｉｒｅｄデータ、ｖａｒｉａｂｌｅ＿ｖａｌｉｄａｔｏｒデータ、ｖａｒｉａｂｌｅ＿ｏｒｄｅｒデータ、ｖａｒｉａｂｌｅ＿ｌｉｓｔデータ、及びｖａｒｉａｂｌｅ＿ｉｎｔｅｒｎａｌデータを含むことができる。
【０１０１】
ｑｕｅｕｅ＿ｓｔａｔｕｓデータ及びｑｕｅｕｅ＿ｍｏｄｅデータを含むことができるｍｓｃ＿ｑｕｅｕｅ＿ｓｔａｔｕｓ表２５６４、及びｐｒｏｊｅｃｔ＿ｉｄデータ、ｔａｓｋ＿ｉｄデータ、ｖａｒｉａｂｌｅ＿ｎａｍｅデータ及びｔａｓｋ＿ｓｅｑｕｅｎｃｅデータ、及びｖａｒｉａｂｌｅ＿ｖａｌｕｅデータを含むことができるｍｓｃ＿ｔａｓｋ＿ｖａｒｉａｂｌｅ表２５６６、及びｑｕｅｕｅ＿ｓｔａｔｕｓ及びｑｕｅｕｅ＿ｍｏｄｅを含むことができるｍｓｃ＿ｑｕｅｕｅ＿ｓｔａｔｕｓ表が存在する場合がある。
【０１０２】
図４２Ｃは、ｄｅｖｉｃｅ＿ｉｄデータ、ｄｅｖｉｃｅ＿ｎａｍｅデータ、及びｉｓｉｎｔｅｒｎａｌデータを含むことができるｏｅｍ＿ｄｅｖｉｃｅ表２５７０を一例として示している。表２５７０は、ｄｅｖｉｃｅ＿ｉｄデータ、ｅｒｒｏｒ＿ｎｕｍｂｅｒデータ及びｅｒｒｏｒ＿ｍｅｓｓａｇｅデータを含むことができるｏｅｍ＿ｅｒｒｏｒ表２５７２と、ｄｅｖｉｃｅ＿ｉｄデータ、ｃｏｍｍａｎｄ＿ｎａｍｅデータ、ｖａｌｕｅ＿ｎｉｆデータ、及びｖａｌｕｅ＿ｄｆデータを含むことができるｏｅｍ＿ｃｏｍｍａｎｄ＿ｌｏｏｋｕｐ＿表２５７４と、ｄｅｖｉｃｅ＿ｉｄデータ及びｖａｒｉａｂｌｅ＿ｎａｍｅデータ、並びにｖａｒｉａｂｌｅ−ｌａｂｅｌデータ、ｖａｒｉａｂｌｅ＿ｕｏｍデータ、ｖａｒｉａｂｌｅ＿ｄａｔａ＿ｔｙｐｅデータ、ｖａｒｉａｂｌｅ＿ｔｙｐｅデータ、ｖａｒｉａｂｌｅ＿ｄｅｆａｕｌｔデータ、ｖａｒｉａｂｌｅ＿ｒｅｑｕｉｒｅｄデータ、ｖａｒｉａｂｌｅ＿ｖａｌｉｄａｔｏｒデータ、ｖａｒｉａｂｌｅ＿ｏｒｄｅｒデータ、ｖａｒｉａｂｌｅ＿ｌｉｓｔデータ、及びｖａｒｉａｂｌｅ＿ｉｎｔｅｒｎａｌデータを含むことができるｏｅｍ＿ｄｅｖｉｃｅ＿ｖａｒｉａｂｌｅ表２５７６とにリンクすることができる。
【０１０３】
表２５７０は、ｄｅｖｉｃｅ＿ｉｄデータ及びｃｏｍｍａｎｄ＿ｎａｍｅデータ、並びにｌｏｗ＿ｌｅｖｅｌ＿ｃｏｍｍａｎｄデータ、ｄｆ＿ｄａｔａ＿ｃｏｎｖｅｒｓｉｏｎデータ、ｎｉｆ＿ｄａｔａ＿ｃｏｎｖｅｒｓｉｏｎデータ、及びｌｏｏｋｕｐ＿ｒｅｑｕｉｒｅｄデータを含むことができるｏｅｍ＿ｄｅｖｉｃｅ＿ｃｏｍｍａｎｄ表２５８０にリンクすることができる。表２５７０は、ｄｅｖｉｃｅ＿ｉｄデータ、ｗａｒｎｉｎｇ＿ｎｕｍｂｅｒデータ、及びｗａｒｎｉｎｇ＿ｍｅｓｓａｇｅデータを含むことができるｏｅｍ＿ｗａｑｒｎｉｎｇ表２５８２にリンクすることができる。表２５７０及び表２５８０は、ｄｅｖｉｃｅ＿ｉｄデータ、ｃａｌｌｂａｃｋ＿ｎａｍｅデータ、ｃｏｍｍａｎｄ−ｐａｒａｍｅｔｅｒデータ、ｃｏｍｍａｎｄ＿ｒｅｔｕｒｎ＿ｖａｌｕｅデータ、及び指令シーケンスデータを含むことができるｏｅｍ＿ｓｔａｔｕｓ＿ｃｏｍｍａｎｄ表２５７８にリンクすることができる。
【０１０４】
図４２Ｄは、ｒｅｃｉｐｅ＿ｉｄ表、ｒｅｃｉｐｅ＿ｎａｍｅデータ、及びｒｅｃｉｐｅ＿ｄｅｓｃデータを含み、かつｍｓｃ＿ｒｅｃｉｐｅ＿ｌｏｇ表２６０２とｍｓｃ＿ｒｅｃｉｐｅ＿ｖａｒｉａｂｌｅ表２６０４とにリンクすることができるｍｓｃ＿ｒｅｃｉｐｅ表２６００を一例として示しており、表２６０２は、例えば、ｒｅｃｉｐｅ＿ｉｄデータ、ｌｏｇ＿ｔｉｍｅｓｔａｍｐデータ、及びｌｏｇ＿ｍｅｓｓａｇｅデータを含み、表２６０４は、ｒｅｃｉｐｅ＿ｉｄデータ、ｖａｒｉａｂｌｅ＿ｎａｍｅデータ、及びｖａｒｉａｂｌｅ＿ｖａｌｕｅデータを含む。表２６００は、一例としてｌｏｔ＿ｉｄデータ、ｒｅｃｉｐｏｅ＿ｉｄデータ、及びｒｅｃｉｐｅ＿ｓｅｑｕｅｎｃｅデータを含むことができるｍｓｃ＿ｌｏｔ＿ｒｅｃｉｐｅ表２６０６にリンクすることができる。ｍｓｃ＿ｌｏｔ表２５９２は、ｌｏｔ＿ｉｄデータ、ｌｏｔ＿ｎａｍｅデータ、及びｌｏｔ＿ｄｅｓｃデータを含み、かつ表２６０６と、ｌｏｔ＿ｉｄデータ、ｌｏｇ＿ｔｉｍｅｓｔａｍｐデータ、及びｌｏｇ＿ｍｅｓｓａｇｅデータを含むｍｓｃ＿ｌｏｔ＿ｔａｂｌｅ表と、ｌｏｔ＿ｉｄデータ、ｖａｒｉａｂｌｅ＿ｎａｍｅデータ、及びｖａｒｉａｂｌｅ＿ｖａｌｕｅデータを含むｍｓｃ＿ｌｏｔ＿ｖａｒｉａｂｌｅ表とにリンクすることができる。ｑｕｅｕｅ＿ｉｄｊｏｂ＿ｉｄデータ、ｊｏｂ＿ｔｙｐｅデータ、ｊｏｂ＿ｓｔａｔｕｓデータ、ｊｏｂ＿ｔｉｍｅｓｔａｍｐ、及びｊｏｂ＿ｓｅｑｕｅｎｃｅデータを含むｍｓｃ＿ｊｏｂ表が存在する場合がある。
【０１０５】
図４２Ｅは、他の表、例えば、ｉｍａｇｅ＿ｉｄデータ、ｒｅｃｉｐｅ＿ｉｄデータ、ｉｍａｇｅ＿ｎａｍｅデータ、及びｉｍａｇｅ＿ｓｅｑｕｅｎｃｅデータを含み、かつｉｍａｇｅ＿ｉｄデータ、ｖａｒｉａｂｌｅ＿ｎａｍｅデータ、及びｖａｒｉａｂｌｅ＿ｖａｌｕｅデータを含むｍｓｃ＿ｉｍａｇｅ＿ｖａｒｉａｂｌｅ表２６３８と、ｉｍａｇｅ＿ｉｄ、ｌｏｇ＿ｔｉｍｅｓｔａｍｐデータ、及びｌｏｇ＿ｍｅｓｓａｇｅデータを含むｍｓｃ＿ｉｍａｇｅ＿ｌｏｇとにリンクすることができるｍｓｃ＿ｉｍａｇｅ表２６３６を一例として示している。ｏｅｍ＿ｓｔａｔｕｓ表２６１０は、ｔａｂ＿ｉｄデータ、ｔａｂ＿ｎａｍｅデータ、及びｔａｂ＿ｓｅｑｕｅｎｃｅデータを含み、かつｓｔａｔｕｓ＿ｎａｍｅデータ、ｔａｂ＿ｉｄデータ、ｓｔａｔｕｓ＿ｌａｂｅｌデータ、ｓｔａｔｕｓ＿ｕｏｍデータ、及びｓｔａｔｕｓ＿ｓｅｑｕｎｃｅデータを含むｏｅｍ＿ｓｔａｔｕｓ＿ｄｅｔａｉｌ表２６１２に接続することができ、表２６１２は、ｓｔａｔｕｓ＿ｎａｍｅデータ、ｐａｒａｍｅｔｅｒ＿ｏｐｅｒａｔｏｒデータ、ｐａｒａｍｅｔｅｒ＿ｖａｌｕｅデータ、及びｐａｒａｍｅｔｅｒ＿ｓｔａｔｕｓデータを含むことができるｏｅｍ＿ｓｔａｔｕｓ＿ｐａｒａｍｅｔｅｒ表にリンクすることができる。
【０１０６】
他の表としては、ｑｕｅｕｅ＿ｉｄデータ、ｊｏｂ＿ｉｄデータ、ｒｅｃｉｐｅ＿ｉｄデータ、ｉｍａｇｅ＿ｉｄデータ、ｔａｓｋ＿ｉｄデータ、及び状態データを含むｍｓｃ＿ｓｔａｔｅ表２６１６、ｖｅｒｓｉｏｎ＿ｐｒｅｆｉｘデータ、ｖｅｒｓｉｏｎ＿ｍａｊｏｒデータ、ｖｅｒｓｉｏｎ＿ｍｉｎｏｒデータ、ｖｅｒｓｉｏｎ＿ｐａｔｃｈデータ、及びｖｅｒｓｉｏｎ＿ｓｕｆｆｉｘデータを含むｏｅｍ＿ｖｅｒｓｉｏｎ表２６２０、ｑｕｅｕｅ＿ｉｄデータ、ｊｏｂ＿ｉｄデータ、ｊｏ＿ｔｙｐｅデータ、ｊｏｂ＿ｓｔａｔｕｓデータ、ｊｏｂ＿ｔｉｍｅｓｔａｍｐデータ、及びｊｏｂ＿ｓｅｑｕｅｎｃｅデータを含むｍｓｃ＿ｑｕｅｕｅ表２６２２、ｄｅｖｉｃｅ＿ｉｄデータ、ｌｏｇ＿ｔｉｍｅｓｔａｍｐデータ、ｌｏｇ＿ｔｙｐｅデータ、及びｌｏｇ＿ｍｅｓｓａｇｅデータを含むｍｓｃ−ｌｏｇ表２６２４、各々がｘｓｅｒｉｅｓデータ及びｙｓｅｒｉｅｄデータを含むｍｓｃ＿ａｉｒ＿ｄａｔａ表２６２３６及びｍｓｃ＿ａｌｔ＿ｄａｔａ表を含むことができる。
【０１０７】
開示する本発明の実施形態の態様によれば、データ及びメッセージマッピングプロセス（ＤＭＰ９０６）９０６は、例えば、図１９、図４３Ａ〜図４３Ｃ、及び図４４に例示するように、ＥＣＰ９０２Ｇｅｍインタフェース９０４を通じてホストシステム９１０と通信することができる。このデザインは、Ａｓｙｓｔ技術（ＣｏｎＸ３００、ＧＥＭ、及びＳＤＲ）から提供される３つの製品を含むことができる。開示する本発明の実施形態の態様によれば、システム概要は、「ＴＣＺ  ９００Ｘ」（本明細書ではファイル名でｉｃｅ９ということもある）は、２つの主要ソフトウエア構成要素、ＭＳＣ（マスターシステムコントローラ）１０、及びＥＣＰ９０２（外部通信プロセス）９００から成ることができ、ＥＣＰ９０２（外部通信プロセス）９００は、工場ホスト９１０とＭＳＣ１０間のメッセージ翻訳サービスである。ＥＣＰ９００は、「ＴＣＺ  ９００Ｘ」ベンダーライブラリ、例えば、ＧＥＭライブラリ９０４を使用して工場ホスト９１０とメッセージを交換し、また、ＭＳＣ１０と通信することができる。
以下の用語及び頭字語は、ＭＥＳ８０のデザインの説明において使用するものである。
【０１０８】
（表）
2009540540.tif 000005
【０１０９】
以下の設計上の考慮事項は、別々のマシンでも独立して実行されるが、ＥＣＰ９０２及びＭＳＣ１０が同じサーバ上で実行される２つの異なるプロセスとすることができるので、ＭＳＣ／ＥＣＰ９００統合、マルチプロセス又はマルチスレッド化に関する設計の一部とすることができ、また、ＥＣＰ９０２は、ホスト９１０と話し、かつＭＳＣ１０と通信するために別々のスレッドを使用する場合にＭＳＣ１０に類似した手法を用いるので、インタフェースのための単一スレッド又はマルチスレッドとすることができる。
【０１１０】
開示する本発明の実施形態の態様によれば、ＭＳＣ１０とＳＥＣＳベンダーソフトウエアの間の通信は、レーザアニール機のエンドユーザにより必要とされるカスタム化を備えるように拡張することができる一般機能性をもたらし、一方、同時に、ＭＳＣ１０の中央コアが、標準的なＧＥＭインタフェース、例えば、ＧＥＭライブラリ９１０をサポートするように修正する必要がないということをもたらすことができる。ＭＥＳ８０は、ＥＣＰＳＥＣＳ／ＧＥＭホストインタフェースの中心部を形成する１組のクラスをもたらし、これらのクラスは、このようなエンドユーザの特定の必要性に対応するために、再使用可能、高品質、かつ安定したものであり、拡張可能にすることができる。この実施は、可能な場合は、インタフェースから隠すことができ、かつ他のＭＳＣ１０プロセスに及ぼす実施変更の影響を最小にするために実際的なものである場合がある。「Ａｓｙｓｔ  ＧＷＧＥＭ」の実行には、主ＥＣＰ、ＧＥＭ拡張プロセス、ＧＥＭメッセージプロセス、ＧＥＭデーモン、及びＳＤＲデーモンを含む最低限５つの別々の実施が必要な場合がある。これらの構成要素の各々は、ＧＥＭ及びＳＤＲ要件に従ってＧＥＭ及び「ＳＤＲ  ＤＬＬ」とインタフェースで接続される。更に、ＧＥＭ構成は、アプリケーション開発者が上述の所要のプロセス間で通信する機構を開発することを可能にすることができる。ＧＥＭデーモンプロセスは、ＥＣＰ９００タスク、１次メッセージハンドラタスクと拡張タスクの間の全ての対話を調整する。ＧＥＭデーモンは、ＧＥＭ論理の主要部を含む。
【０１１１】
主ＥＣＰ９００は、ＧＥＭシステムとの１次インタフェースであると考えることができる。ＥＣＰ９００は、機器特定ソフトウエアモジュールのいずれも組み込まず、かつＳＥＣＳ／ＧＥＭ通信特異であり、かつＧＥＭライブラリとインタフェースで接続しているタスクに限定することができる。ＥＣＰ９００の目的は、総ＳＥＣＳ／ＧＥＭ解決法に対するメッセージ翻訳デバイス、ディスパッチャ、及びサーバとして機能することとすることができる。ＥＣＰ９００は、例えば、以下でより詳細に説明するように、ＧＥＭ拡張プロセス、ＧＥＭメッセージプロセス、及びＤＭＰ９０６．とインタフェースで接続することを必要とする場合がある。
【０１１２】
例えば、ＴＣＺ９００Ｘ細長細線ビームレーザアニールデバイスで基板を処理するという日々の生産作業を行い、かつ特定のタスク及びプロジェクトを実行することだけができ、そうでなければシステムへのアクセスが制限されたプロセスエンジニアを含む３種類のユーザが、ＭＳＣソフトウエアを使用することができる。一例として、プロセスエンジニアは、タスク及びプロジェクトを編集したり削除することができない。フィールドサービスエンジニア、すなわち、主としてシステムにアクセスすることができ、かつ低レベル指令を作成したりデバッグモードを開始することを担当することができない、訓練を受けたシステムエンジニアは、毎日のプロセス最適化及び品質モニタリング作業を行うことができる。管理者、すなわち、管理者としてシステムにアクセス可能であり、すなわち、１００％システムにアクセス可能であり、低レベルの指令を作成したりデバッグモードを開始することを担当しない、訓練を受けたシステムエンジニアは、時折の管理、トラブルシューティング、及び品質モニタリング作業を行うことができる。
以下のマトリックスは、上述のユーザクラスのアクセスレベルを示している。
【０１１３】
（表）
2009540540.tif 000006
【０１１４】
ＭＳＣ１０は、シリコン基板処理中に装着デバイスと対話する時に１秒程度の範囲の応答時間をもたらすと予想することができる。
下記は、ＭＳＣ１０の要件リストである。括弧内の相互参照は、層−構成要素−クラスコードを指し、例えば、コードＧＵＩ−ＣＦＧ−ＭＯＤは、ＧＵＩ層のシステム構成要素内のモジュールクラスを指す。
一般的な機能の群に対しては、本明細書で説明する一般機能要件は、ＭＳＣの一般機能要件である。システムは、以下の高レベル機能性、すなわち、基板性能レポート定期的モニタリングを有することができ（ＧＵＩ−ＪＯＢ、ＧＵＩ−ＲＥＰ、ＧＵＩ−ＳＣＨ）、プロセス最適化は、基板処理の一部とすることができ（ＧＵＩ−ＣＦＧ）、ユーザは、ユーザインタフェース（ＵＩ）を使用してシステム全体の構成パラメータを更新することができ（ＧＵＩ−ＣＦＧ）、ＵＩは、作業フロー主導とすることができる。図２３〜図３２に例示するカスタムプロジェクト画面のようなＧＵＩ４０の何らかの部分は、基本的な作業フローを模擬することができ（ＧＵＩ−ＷＦＥ）、ＭＳＣは、サービス可能性及び保守性（ＧＵＩ−ＰＲＪ、ＳＶＲ−ＳＣＲ−ＭＯＤ）をサポートすることができる。
【０１１５】
レシピマネージャ機能群に対しては、本明細書で説明するレシピ情報要件は、ロット及びレシピ特性及びレシピ情報の管理に関連する要件とすることができ、レシピは、基板の全てのパラメータがコンテナーとすることができる。それは、１つ又はそれよりも多くの画像ＧＵＩ−ＲＣＰ−ＲＣＰを含むことができ、レシピは、以下のもの、すなわち、基板回転：０又は９０、基板サイズ：２、３、４、５ＧＵＩ−ＲＣＰ−ＲＣＰのようなパラメータを有することができる。レシピパラメータの数は、固定することができない。レシピに追加する付加的なパラメータは、ユーザインタフェース画面に対する符号化による修正に関わることができない（ＧＵＩ−ＲＣＰ−ＤＹＮ、ＤＢ−ＯＥＭ−ＰＡＲ）。ユーザは、レシピの固有の説明を供給することができる（ＧＵＩ−ＲＣＰ−ＩＭＧ）。画像は、開始位置：（５０ｍｍ、０ｍｍ）、終了位置：（１００ｍｍ、３６０ｍｍ）、エネルギ密度：１０００ｍＪ／ｃｍ2、ステップサイズ：１μｍ、エネルギモード：ＥＸＴ、ＩＮＴ、オートフォーカス：ＯＮ、ＯＦＦ、焦点：５μｍのようなパラメータを有することができる（ＧＵＩ−ＲＣＰ−ＩＭＧ）。画像パラメータの数は、固定することができない。画像に追加する付加的なパラメータは、ユーザインタフェース画面に対する符号化による修正に関わることができない（ＧＵＩ−ＲＣＰ−ＤＹＮ、ＤＢ−ＯＥＭ−ＰＡＲ）。ユーザは、レシピを作成し、修正し、削除し、保存し、及び取り込むことができる（ＧＵＩ−ＲＣＰ−ＲＣＭ）。ユーザは、機械にわたってレシピを転送するファイルへの及びそこからのレシピを保存しかつ取り込むことができる。
【０１１６】
ユーザは、レシピ又は機械にわたって画像を転送するファイルへの及びそこからの画像を保存しかつ取り込むことができる。ユーザは、レシピを編集中に、画像をコピー／ペーストすることができる（ＧＵＩ−ＲＣＰ−ＣＰＹ）。ユーザは、レシピをコピー／ペーストして新しいレシピを作成することができる（ＧＵＩ−ＲＣＰ−ＣＰＹ）。レシピを修正した時、レシピレベル整合性検査を行ってレシピの有効性を保証することができる。一部のパラメータは、所要のもの又は任意的なものとすることができる。レシピレベル整合性検査の例は、位置値は基板サイズより小さく、パルスエネルギは最大値より小さく、ステップサイズは特定の範囲であり、焦点ずれはオートフォーカスモジュール範囲とすることができる（ＧＵＩ−ＲＣＰ−ＲＣＰ、ＤＢ−ＯＥＭ−ＰＡＲ）。レシピレベル整合性検査を行う時、システムは、最小及び最大のようなパラメータに対して一定の値を想定することができる。値は、フィールドサービスエンジニアにより制御可能にすることができる（すなわち、制御は、役割に基づくことができる）。システムは、最小値及び最大値を設定して損傷、不注意なし、及び安全性を保証することができる（ＧＵＩ−ＲＣＰ−ＲＣＰ、ＤＢ−ＯＥＭ−ＰＡＲ）。付加的なレシピレベル整合性検査は、コード再コンパイルを必要とすることができない。検査は、動的とすることができる（ＧＵＩ−ＲＣＰ−ＲＣＰ、ＤＢ−ＯＥＭ−ＰＡＲ）。各整合性検査は、表中の行とすることができ、又は格納手順とすることができる（ＤＢ−ＯＥＭ−ＰＡＲ）。整合性検査、かつ誰が修正するかなどは、レシピ及び画像パラメータに添付することができる（ＤＢ−ＯＥＭ−ＰＡＲ）。レシピ及び画像パラメータ間に依存性が存在する場合がある。レシピ作成又は更新時期検査は、あらゆるこのような依存度の排除を保証することができる。例えば、レシピ定義においては、ＥｎｄＸは、ＳｔａｒｔＸを超えることができない。また、レシピパラメータ値又は画像パラメータ値は、一貫性が得られるようにデバイスパラメータと照合することができる（ＤＢ−ＯＥＭ−ＰＡＲ）。
【０１１７】
ロットは、１つ又はそれよりも多くの基板を含む。ロット内の異なる基板は、異なるレシピを使用することができる（ＧＵＩ−ＬＯＴ−ＬＯＴ）。ユーザは、ロットを作成し、修正し、削除し、保存し、及び取り込むことができる（ＧＵＩ−ＬＯＴ−ＬＴＭ）。ユーザは、ジョブ待ち行列により現在処理されている間にロット／レシピを修正することができる。システムは、ロット／レシピのコピーを行って、処理にそのコピーを使用することを予想することができる（ＧＵＩ−ジョブ−ＱＵＥ）。
【０１１８】
ユーザは、画像／レシピ／プロジェクトのインポート／エクスポートを実行中に、ローカルマシン（ネットワークドライブを含む）上に形成したあらゆるドライブにアクセス可能である（ＧＵＩ−ＲＣＰ−ＥＸＰ）。以下の画像パラメータは、代わりにステップサイズ→ピッチ、ピッチ→Ｙ方向の傾き、偏揺れ→Ｘ方向の傾きと呼ぶことができる（ＧＵＩ−ＲＣＰ−ＩＭＧ）。ＭＳＣは、ロット内で未使用パネルをサポートすることができる。これに対してヌルレシピを使用することができる（ＧＵＩ−ＬＯＴ−ＬＯＴ）。あらゆる特定の時期に有効であるレシピが１０００もある場合がある。従って、これらのレシピをグループ分けする機能を利用可能にすることができる。このグループ分けは、最大１０レベルまでとすることができる。レシピ名の例は、ＣＲＹＳ８００−ＣＨＵＮＧ−２００ＱＣＬＦである。それは、例えば、エネルギ密度（ＣＲＹＳ８００）、エンジニア（ＣＨＵＮＧ）、及びデバイス名（２０００ＱＣＩＦ）を含む。例示的なディレクトリ構造は、ＣＲＹ→ＴＦＩ−ＬＣＤ→２０ＱＣ１Ｆ→ＥＮＧＲ名→データ→更に２つのレベルとすることができる（ＧＵＩ−ＲＣＰ−ＦＬＤ）。画像に関するレシピのレイアウトを表示する新しいタブが必要な場合がある（ＧＵＩ−ＲＣＰ−ＧＲＰ）。システムは、読み取り、共有し、かつ簡単に通信することができる、レシピをインポート／エクスポートするテキストファイルをもたらすことができる（ＧＵＩ−ＲＣＰ−ＥＸＰ）。製造においては、一般的に、１つのレシピを基板につき使用することができる。従って、ロット内の全ての基板に対して同じレシピを使用する「ＡＬＬ」ボタンのような機能が必要である場合がある（ＧＵＩ−ＬＯＴ−ＬＯＴ）。
【０１１９】
１つよりも多いカセット積載ステーションがある場合がある。ＭＳＣ１０は、ロット定義においてユーザからの入力としてカセットステーション番号を必要とする場合がある（ＧＵＴ−ＬＯＴ−ＬＯＴ）。入力パラメータ、すなわち、ａ．ロット情報：ロットＩＤ、工程段階、数量、オペレータＩＤ、ｂ．工程情報：ビーム幅及び長さ、走査ピッチ及び長さ、エネルギ密度、レーザ出力エネルギ、基板回転又は傾斜角は、レーザ読取プロセスに必要とする場合がある（ＧＵＩ−ＬＯＴ−ＬＯＴ、ＧＵＩ−ＲＣＰ−ＲＣＰ）。システムは、ロット定義に向けて、基板ＩＤをレシピと関連付けることができる（ＧＵＩ−ＬＯＴ−ＬＯＴ）。システムは、レシピ画像画面に対してグリッドに基づくレイアウトを有することができる（ＧＵＩ−ＲＣＰ−ＩＭＧ）。システムは、レシピとは別々の基板情報を追跡することができる（ＧＵＩ−ＬＯＴ−ＬＯＴ）。
【０１２０】
保守マネージャ群に対しては、本明細書で説明する保守／モニタリング／修理プロジェクト要件は、保守／モニタリング／修理プロジェクト及び実行に関係がある要件とすることができる。プロジェクトは、個々のモジュール又はシステム全体に関係がある保守、モニタリング及び作動のタスク集とすることができる。タスクの例は、レーザに関連するモニタリングデータをダウンロードする（レーザ）、レーザの作動（レーザ）、均一性の測定（システム）、強度の測定（システム）、焦点面較正（システム）、ステージの絶対的／相対的動き（ステージ）、ＳＭＭ／ＴＭＭの電源オフループ（ＢＳＣ  ３３６）、ＳＭＭ（ＢＳＣ  ３３６）からパルスエネルギをダウンロードする（ＧＵＩ−ＰＲＪ−ＰＲＪ）とすることができる。保守タスク及びモニタリングタスクは、パラメータを有する。ユーザは、これらのパラメータのデータを供給することができる。ユーザは、タスク定義を変えることができない場合がある（ＧＵＩ−ＰＲＪ−ＴＳＫ）。タスクパラメータの数及び形式は、タスク単位で変えることができる。付加的なタスクを追加し、又はタスクパラメータの数／形式を変更しても、ユーザインタフェース画面の符号化による修正は不要である場合がある（ＧＵＩ−ＰＲＫ−ＤＹＮ、ＤＢ−ＯＥＭ−ＰＡＲ）。ユーザは、プロジェクトを作成し、取り込み、保存し、及び修正することができる（ＧＵＩ−ＰＲＪ−ＰＪＭ）。ユーザは、ファイルからプロジェクトをコピー／ペースト及び／又はインポート／エクスポートすることができる。ユーザは、要求があり次第プロジェクトを実行することができる、（ＧＵＩ−ＪＯＢ−ＱＵＥ）。プロジェクト内のタスクを実行する前に、システムは、デバイスのステータスを保存し、かつエラーが発生した場合は状態を回復することができる（ＳＶＲ−ＳＣＲ−ＴＳＫ）。
【０１２１】
ユーザは、プロジェクトに対して固有の説明を供給することができる（ＧＵＩ−ＰＲＪ−ＰＲＪ）。ユーザは、機械及びシステム構成パラメータを供給することができる（ＧＵＩ−ＣＦＧ−ＳＹＳ、ＧＵＩ−ＣＦＧ−ＤＥＶ）。プロジェクトを実行中に、新しい計算値が定義した最小及び最大値からかなり外れていた場合、システムは、古い値を回復させることができる（ＳＶＲ−ＳＣＲ−ＴＳＫ）。ＭＳＣ１０は、例えば、いくつのパルスがレーザにより発射されたか、修理、及び保守に向けてデータを収集することができる（ＳＶＲ−ＳＣＲ−ＭＯＤ）。システムは、デバイスの代わりにモジュール集としてＭＳＣを処理することができる。モジュールは、ともに機能する構成要素の群とすることができる。例えば、レーザシステム分光分析モジュール（ＳＡＭ）は、３０個の光学要素を有する。モジュール全体を修理のために交換することができる（ＤＢ−ＯＥＭ−ＭＯＤ）。ＭＳＣソフトウエアは、修理のためにモジュール及びモジュールの構成要素の数の変化をサポートするのに十分に一般的なものとすることができる。それは、モジュールの数を増加又は低減する柔軟性を有することができる（ＧＵＩ−ＣＦＧ−ＭＯＤ、ＤＢ−ＯＥＭ−ＭＯＤ）。システムは、例えば、修理及び保守のための保守カウンタ（ＤＢ−ＯＥＭ−ＭＯＤ）、例えば、寿命カウンタを含む個々の構成要素のパルスの数（ＳＶＲ−ＳＣＲ−ＭＯＤ）を概算することができる。ＭＳＣ１０は、全てのモジュールをモニタし、すなわち、全てのモジュールが機能していることを理解することができる。ＭＳＣ１０が非機能モジュールを検出した場合、これを報告すると共にそのモジュールを必要とする作業を停止することができる（ＳＶＲ−ＳＣＲ−ＭＯＤ、ＳＶＲ−ＳＴＳ−ＳＴＬ）。
【０１２２】
ＭＳＣ１０に接続した全てのデバイスがインテリジェントというわけではない。ＭＳＣ１０は、欠けている情報をもたらすことができる。デバイスがインテリジェントであるとしても、ＭＳＣ１０は、そのデバイスをモニタすることができる。例えば、生ビームプロファイラは、固有の情報を有していない。減衰器３３８は、固有の情報を有する。ＭＳＣ１０は、それでも減衰器３３８をモニタすべきである（ＳＶＲ−ＳＴＳ−ＳＴＬ）。ＭＳＣは、ＧＵＩ４０からレーザを診断するプロジェクトを有することができる。ＭＳＣ１０は、ユーザがＧＵＩ４０を通じてモード、周波数、パルス数、及び平均数に関して様々なレーザモード構成を供給することを可能にすることができる。タスクは、レーザ補充を実行し、様々な構成でレーザモードを検査し、かつレポートファイルに結果を書き込むことができる（ＧＵＩ−ＰＲＪ−ＰＪＭ、ＳＶＲ−ＳＣＲ−ＰＪＣ）。レーザ診断レポートファイルは、ヘッダ列、次に、値列を有する特殊な文字で区切られた（セミコロンのような）テキストファイルとすることができる。レポートは、レーザ診断タスクが実行された時、自動的に生成することができる。レポートファイルの名前及び位置は、明確なネーミング規則に従うことができる（ＧＵＩ−ＲＥＰ−ＰＲＪ）。ＭＳＣ１０は、レーザからＧＵＩ４０にデータをダウンロードするプロジェクトを有することができる。ＭＳＣ１０は、ユーザがＧＵＩ４０を通じてモード、周波数、パルス数、及び平均数に関して様々な予行構成を供給することを可能にすることができる。タスクは、様々な予行構成を実行してレーザから診断結果、設定可能変数、ローショット、１０Ｋ及び１Ｍのデータを検索し、最後にレポートファイルに結果に書き込む（ＧＵＩ−ＰＲＪ−ＰＪＭ、ＳＶＲ−ＳＣＲ−ＰＪＣ）。レーザダウンロードレポートファイルは、ヘッダ列、次に、値列を有する特殊な文字で区切られた（セミコロンのような）テキストファイルとすることができる。レポートは、レーザダウンロードタスクが実行された時に自動的に生成することができる。レポートファイルの名前及び位置は、明確なネーミング規則に従うことができる。レポートファイルは、ダウンロードしたレーザデータを含むファイルの名前及び位置を含むことができる（ＧＵＩ−ＲＥＰ−ＰＲＪ）。ＭＳＣ１０は、レーザからレーザを制御するプロジェクトを有することができる。ＭＳＣ１０は、ユーザが完全な初期化、補充、及び注入を含む機器、例えば、レーザのいずれかであらゆるタスクを実行することを可能にする。それは、あらゆる有効な指令をレーザに送ることを可能にすることができる。機器、例えば、レーザからの応答は、ＧＵＩで表示することができる（ＧＵＩ−ＰＲＪ−ＰＪＭ、ＳＶＲ−ＳＣＲ−ＰＪＣ）。プロジェクトが実行された時はいつでも、ＭＳＣ１０は、プロジェクトレポートを生成することができる。プロジェクトレポートは、プロジェクト内の全てのタスクの結果概要及び開始／終了時間を含むことができる。それは、タスクレポート及びデータファイルのリストを含むことができる。明確なファイルネーミング規則及び位置規則を使用することができる。古いレポートがＡＧＥを超えた場合は削除することができる（ＧＵＩ−ＲＥＰ−ＰＲＪ、ＳＶＲ−ＳＣＲ−ＰＪＣ）。
【０１２３】
以下のモニタリングデータ及びインタロック機能、すなわち、モニタリングデータ：リアルタイムレーザ安定性、最終ハロゲン元素注入の番号、レーザパルス総累積数、ガス交換後のレーザパルス累積数、Ｐ−レンズ加熱温度、リアルタイム焦点、インタロック機能及び警告機能（プロセスに限定）：Ｐ−Ｐ安定性が予想範囲外れである時のレーザ照射停止、レーザステータスに関連する警告（例えば、異常なレーザ管温度、欠如パルス、レーザと制御ＰＣ間で通信エラー、突然のレーザ出力エネルギ変動など）を必要とする可能性がある（ＤＢ−ＯＥＭ−ＳＰＲ、ＳＶＲ−ＳＣＲ−ＥＲＨ．ＤＢ−ＯＥＭ−ＳＴＳ）。上述の特許及び現在特許出願中の特許出願の１つ又はそれよりも多くで参照した機能性のようなＣｙｍｅｒオンライン（すなわち、ＬＴＰＳオンライン）の機能性を使用してリアルタイムで間接的にデータを収集することができる。ＭＳＣ１０の機側受動的モニタリングを使用することができる。それは、診断、ダウンロード、及びレーザ及び他のデバイスへの制御プロジェクトのためのカスタム画面をもたらすことができる（ＧＵＩ−ＰＲＪ−ＰＪＭ、ＳＶＲ−ＳＣＲ−ＰＪＣ）。それは、デバイスに対して及びモジュール内の構成要素に対して寿命カウンタを収集及び格納する柔軟で一般機構をもたらすことができる。３つの値、すなわち、１）予想寿命、２）保守寿命、３）現在の寿命を収集することができる（ＳＶＲ−ＳＣＲ−ＭＯＤ、ＤＢ−ＭＳＣ−ＭＯＤ）。ＭＳＣ１０は、モジュールレベルで様々なものを追跡することができる（ＳＶＲ−ＳＣＲ−ＭＯＤ、ＤＢ−ＭＳＣ−ＭＯＤ）。モジュールを交換した時、ＧＵＩ４０画面を使用して新しいシリアル番号を入力して関連した寿命カウンタをクリアすることができる（ＧＵＩ−ＣＦＧ−ＭＯＤ）。
【０１２４】
プロセスマネージャ群に対しては、本明細書で説明するロットプロセス要件は、ロットプロセスの実行及びジョブ実行に関連する可能性がある。ユーザは、ジョブ待ち行列からロット追加及び除去することができる（ＧＵＩ−ＪＯＢ−ＱＵＥ）。ユーザは、ジョブ待ち行列内のジョブシーケンスを変えることができる（ＧＵＩ−ＪＯＢ−ＱＵＥ）。ユーザは、ジョブ待ち行列を開始、停止、及び再開することができる（ＧＵＩ−ＪＯＢ−ＱＵＥ）。システムは、ユーザがジョブ待ち行列を開始した時、列の前部からジョブ待ち行列内のロットを処理することができる（ＳＶＲ−ＪＯＢ−ＪＢＭ）。ユーザは、ジョブ待ち行列にロットを追加して前部に移動させて、待ち行列を開始することにより直ちにロットプロセスを実行することができる（ＧＵＩ−ＪＯＢ−ＱＵＥ）。システムがロットプロセスを実行することができる時、結晶化プロセス及び基板設置の進行状況をＧＵＩでグラフィックにより（例えば、異なる色による矩形の地域）表示することができる（ＧＵＩ−ＪＯＢ−ＣＲＹ）。システムは、ロットを処理中、プロセスレベル整合性検査及びエラー処理を行うことができる。整合性検査は、機械レベル、モジュールレベル、ロット／レシピレベル、基板レベル、及び画像レベルとすることができる。システムは、ロットを処理中、ロット単位、レシピ単位及び画像単位の保守を行うことができる（ＳＶＲ−ＳＣＲ−ＬＯＴ）。所定のプロジェクトの日程計画エンジンは、例えば、時間別、日別、週別、月別に所定のプロジェクトを予定することができる（ＳＶＲ−ＳＣＨ、ＧＵＩ−ＳＣＨ）。日程計画エンジンは、自動でも手動でもプロジェクトを実行するように構成可能にすることができる。手動構成においては、日程計画エンジンには、予定したプロジェクト実行することができる前にユーザ確認が必要とする場合がある（ＧＵＩ−ＣＦＧ−ＳＹＳ、ＧＵＩ−ＪＯＢ−ＱＵＥ）。ロットを処理するために、システムは、パラレル及びシリアルの両方とすることができるいくつかの段階を実行することができる（ＳＶＲ−ＳＣＲ−ＬＯＴ）。長期的に基板を処理するために、複数回の走査が必要である場合がある。システムアーキテクチャは、これをサポートすることができる。２つの画像は、基板処理中に重なり合うことができる（左右対称又は非対称に）。システムアーキテクチャは、これをサポートすることができる（ＳＶＲ−ＳＣＲ−ＬＯＴ、ＧＵＩ−ＪＯＢ−ＣＲＹ）。基板は、手動又は自動で取り込むことができる。
【０１２５】
ジョブ待ち行列は、待ち行列モードに加えてステップモードを有することができる。ステップモードでは、ジョブ実行は、各ステップ後（すなわち、各ジョブを処理した後）に停止させることができる（ＧＵＩ−ＪＯＢ−ＱＵＥ）。ロット又はプロジェクトを処理中にエラーが発生した場合、ジョブ待ち行列を停止することができる（ＳＶＲ−ＳＴＳ−ＥＲＨ５ＧＵＩ−ＪＯＢ−ＱＵＥ）。ジョブ待ち行列は、構成可能なアイドルタイムアウトを有することができる。タイムアウトが発生した場合、システムは、デバイスを既知の状態にする（例えば、レーザを待機状態に戻す）ことができる（ＧＵＩ−ＳＹＳ−ＣＦＧ、ＳＶＲ−ＪＯＢ−ＪＢＭ）。
【０１２６】
プロジェクト、レシピの両方は、追加し、かつジョブ待ち行列から除去することができる（ＧＵＩ−ＪＯＢ−ＱＵＥ）。予定したプロジェクトは、ジョブ待ち行列で表示することができる。予定したプロジェクトは、日程計画基準を満たした場合、待ち行列内の適切な位置で待ち行列に追加することができる。較正がないので、ステージ上でオフセットにより画像を移動させることが必要な場合がある（ＧＵＩ−ＲＣＰ−ＩＭＧ）。特別なデバイスのために生産におけるガラスの回転が必要である場合がある。現在処理中のレシピに対しては、開始及び推定終了時間をＧＵＩで表示することができる（ＧＵＩ−ＪＯＢ−ＳＴＳ）。システムは、処理中のカセット内の基板の視認性（好ましいのはグラフィック）をもたらすことができる（ＧＵＩ−ＪＯＢ−ＣＡＳ）。プロセス詳細の図形表示には、以下のもの、すなわち、ａ．プロセスにおけるステップ、ｂ．現在走査中の基板の部分、及びｃ．プロセス内の残りのステップを含むことができる（ＧＵＩ−ＪＯＢ−ＣＡＳ）。カセットステーション番号は、ジョブ待ち行列において可視とすることができる（ＧＵＩ−ＪＯＢ−ＱＵＥ）。結晶化プロセスの視覚化に３Ｄグラフィックを使用することができる。
【０１２７】
実行時間パラメータ値は、ロット又はプロジェクトをジョブ待ち行列に追加する直前に収集することができる（すなわち、ロットはテンプレートとすることができ、かつロットのインスタンスをジョブ待ち行列に追加することができる）（ＧＵＩ−ＪＯＢ−ＱＵＥ）。ＭＳＣ内のプロジェクト日程計画は、イベントに基づくものとスケジュールに基づくものとの組合せとすることができる（ＳＶＲ−ＳＣＨ−ＳＣＨ）。システムは、ロット又はプロジェクトを実行する前に、リソースの使用可能度（例えば、窒素及び水のようなユーティリティの使用可能度）を検査することができる（ＳＶＲ−ＳＣＲ−ＬＯＴ、ＳＶＲ−ＳＣＲ−ＰＲＪ）。予定したプロジェクトは、指定した時間ウィンドウ内でのみ実行されるように任意的に指定することができる（ＧＵＩ−ＳＣＨ−ＳＣＨ、ＳＶＲ−ＳＣＨ−ＳＣＨ）。タスクには、予定することができるか否かを示す特性を有することができる。日程計画エンジンは、予定することができないプロジェクトの日程計画を防止することができる（ＤＢ−ＯＥＭ−ＰＡＲ、ＧＵＩ−ＳＣＨ−ＳＣＨ）。
【０１２８】
セキュリティマネージャ群に対しては、本明細書で説明するセキュリティ、監査、及びアクセス制御の要件は、システムのセキュリティ及び制御へのアクセス、レシピ情報、タスク情報、ロットプロセス実行及びタスク実行の制御に関係がある要件とすることができる。システムは、３つのレベルのユーザ、すなわち、プロセスエンジニア、フィールドサービスエンジニア、及び管理者のアクセスをサポートすることができる。管理者は、アクセスが最も多く、次に、フィールドサービスエンジニア、それからプロセスエンジニアであり、例えば、フィールドサービスエンジニアは、システムへの管理アクセスを行うことができ（ＤＢ−ＭＳＣ−ＡＣＳ）、一方、プロセスエンジニアは、特定のタスク及びプロジェクトだけを実行することができる（ＤＢ−ＭＳＣ−ＰＡＲ）。
【０１２９】
システムは、レシピ情報の修正履歴を維持する必要はない（ＤＢ−ＭＳＣ−ＲＣＰ）。フィールドサービスエンジニアがレシピプロセスを開始した場合、プロセスエンジニアは、後で取り消すことができる（ＤＢ−ＭＳＣ−ＡＣＳ）。ＭＳＣ１０は、単一のログイン及びユーザＩＤベースのトラッキングをサポートするのに十分に柔軟性が存在する場合がある（ＧＵＩ−ＳＥＣ−ＳＣＭ）。以下のアクセスレベル（役割に基づく）、すなわち、ａ．プロセスエンジニア、ｂ．フィールドサービスエンジニア、ｃ．管理者が必要である場合がある。管理者は、プロセスエンジニア及びフィールドサービスエンジニアが利用可能にすることができる全ての機能を実行することができる。フィールドサービスエンジニア及びプロセスエンジニアの役割は、重なり合っている（ＧＵＩ−ＳＥＣ−ＳＣＭ）。ＭＳＣ１０は、例えば、レシピを実行する前に、役割に基づくログイン、次に、ユーザのＩＤを入力することができることにより、例えば、図１８に例示するような画面を示すことができる。ユーザのＩＤは、レシピプロセスレポートに含めることができる。ユーザは、ユーザＩＤを入力することなく、レシピを作成することができる。ＩＤは、レシピを処理する時に必要である場合がある（ＧＵＩ−ＳＥＣ−ＳＣＭ）。ユーザは、タスクスクリプトを変えることができない（ＤＢ−ＭＳＣ−ＡＣＳ）。タスクスクリプト内の情報は、機械納入業者が固有に開発したものとすることができる。
【０１３０】
本明細書で説明する一般インタフェース要件は、通信インタフェースに関連するものとすることができる。ＴＣＰ−ＩＰは、特に明示的な指定がない限り、特定のデバイスインタフェース要件に基づいて、マスターシステムコントローラ１０とデバイスの間で必要な主な形式の通信である場合がある（ＳＶＲ−ＤＥＶ−ＤＲＶ）。システムは、一般機構を用いて、高レベルアクションに対応するためのデバイス指令を出すことができる。この機構は、デバイス型式から独立したものとすることができる（ＳＶＲ−ＤＥＶ−ＦＭＴ）。デバイス指令は、データベース又はファイル内に格納することができる。デバイス指令は、コードにより固有のものとすることができ、又はそうでないものとすることができる（ＤＢ−ＯＥＭ−ＣＭＤ）。
【０１３１】
マスターシステムコントローラ１０とデバイスの間の通信は、２つの目的、すなわち、制御及び診断のためとすることができる（ＳＶＲ−ＤＥＶ−ＤＲＶ）。例えば、露光指令が出された（すなわち、走査が開始された）後、マスターシステムコントローラ１０は、露光が完了するまで待機することができる（ＳＶＲ−ＳＣＲ−ＬＯＴ）。マスターシステムコントローラ１０は、デバイスがシリアル番号を検索する指令を供給した場合、装着したデバイスのシリアル番号を知り、シリアル番号を使用して通信中にデバイスを特定することができる（ＳＶＲ−ＤＥＶ−ＤＲＶ）。マスターシステムコントローラ１０は、デバイスからの割込みが処理されないようにデバイスをポーリングすることができる（ＳＶＲ−ＤＥＶ−ＤＲＶ）。システムは、客先ＭＥＳ８０と統合することができる。ＭＳＣ１０は、ＳＥＭＩ規格、すなわち、ＳＥＭＩ機器通信規格及びホストマシン９１０との通信を容易にする一般デバイスモデル（ＳＥＣＳ／ＧＥＭ）インタフェースをサポートすることができる。例えば、図８に示すように、ＶＰＮ８２０でのＭＳＣ１０とのＷＡＮ接続又はＬＡＮ接続が存在する場合がある。
【０１３２】
サービスエリア及び保守エリアは、物理的に分割することができる。サービスエリアからのレーザステータス情報へのアクセスが必要である場合がある。異なる物理的エリアからＭＳＣをモニタすることができるとすることができる。インタフェースプロトコルは、４つの通信モード、すなわち、１）受信専用、２）送信専用、３）受信後送信、４）送信後受信をサポートすることができる（ＳＶＲ−ＤＥＶ−ＤＲＶ）。
【０１３３】
本明細書で説明するレーザインタフェース要件は、レーザデバイスモジュールとのマスターシステムコントローラ１０の通信に関係がある要件であると考えられる。制御のために、ＭＳＣ１０とレーザ３３０の間に１つの通信インタフェースが存在する場合がある。現在、ほぼ１０〜１５個のこのような指令がある（ＳＶＲ−ＤＥＶ−ＤＲＶ）。診断のために、ＭＳＣ１０とレーザ３３０の間に１つの通信インタフェースが存在する場合がある。現在、ほぼ８０〜１００個のこのような指令がある（ＳＶＲ−ＤＥＶ−ＤＲＶ）。ＭＳＣ１０は、ＣＯＲＢＡ８２４を使用して、例えば、本出願人の譲渡人「Ｃｙｍｅｒ、Ｉｎｃ．」により販売されているもの及び類似した診断促進器を有する関連のＣｙｍｅｒレーザのようなＸＬＡ又はＸＬＸシリーズのレーザから診断情報を得ることができる（ＳＶＲ−ＤＥＶ−ＤＲＶ）。レーザの一部は、１つよりも多いシリアルポート、すなわち、ＲＳ２３２又はＲＳ４２２、後者は必要とされる高速応答のため、前者は問題のない低速応答のためのものを有する（ＳＶＲ−ＤＥＶ−ＤＲＶ）。
【０１３４】
本明細書で説明するステージインタフェース要件は、ステージデバイスモジュールとのＭＳＣ１０の通信に関係がある要件であると考えられる。ユーザは、遠隔地から実行されている制御ソフトウエア又は何らかの他の類似した機構を使用してＭＳＣ１０機械からステージデバイスのＧＵＩ４０を表示することができる。診断及び制御のために、ＭＳＣ１０とステージの間に１つの通信インタフェースが存在する場合がある（ＳＶＲ−ＤＥＶ−ＤＲＶ）。本明細書で説明するＭＤＢｏｘ３３４インタフェース要件は、マスター配電箱デバイスモジュールとのＭＳＣ１０の通信に関係がある要件であると考えられる。診断及び制御のために、ＭＳＣ１０とＭＤＢｏｘ３３４の間に１つの通信インタフェース、及び管理及び記録のために別の通信インタフェースが存在する場合がある（ＳＶＲ−ＤＥＶ−ＤＲＶ）。本明細書で説明するＢＳＣ３３６インタフェース要件は、ＢＳＣ３３６デバイスモジュールとのＭＳＣ１０の通信に関係がある要件であると考えられる。制御のために、ＭＳＣ１０とレーザ３３０の間に１つの通信インタフェースが存在する場合がある（ＳＶＲ−ＤＥＶ−ＤＲＶ）。本明細書で説明する減衰器３３８インタフェース要件は、減衰器３３８デバイスモジュールとのＭＳＣ１０の通信に関係がある要件であると考えられる。制御のために、ＭＳＣ１０と減衰器３３８の間に１つの通信インタフェースが存在する場合がある（ＳＶＲ−ＤＥＶ−ＤＲＶ）。本明細書で説明するハンドラインタフェース要件は、カセットハンドラデバイスモジュールとのＭＳＣ１０の通信に関係がある要件であると考えられる。基板積卸しにロボットを使用することができる。ＭＳＣ１０の観点から、ロボットは、ＬａｎｔｒｏｎｉｃｓのＴＣＰ／ＩＰインタフェース８４０を使用して、シリアルインタフェースがＭＳＣ１０に接続したあらゆる他のデバイスのように処理することができる（ＳＶＲ−ＤＥＶ−Ｒｏｂ）。システムは、このようなロボットが記憶容量を有することができないことに対処することができる（ＳＶＲ−ＤＥＶ−Ｒｏｂ）。本明細書で説明するプロセスシャッターインタフェース要件は、プロセスシャッターデバイスモジュールとのＭＳＣ１０の通信に関係がある要件であると考えられる。１つが、存在することができる（ＳＶＲ−ＤＥＶ−ＤＲＶ）。
【０１３５】
本明細書で説明するビーム測定インタフェース要件は、ビーム測定ユニットモジュールとのＭＳＣ１０の通信に関係がある要件であると考えられる。ビーム測定インタフェースは、ＭＳＣ１０の内部又は外部にある場合がある（ＳＶＲ−ＤＥＶ−ＤＲＶ）。本明細書で説明する報告要件は、ＭＳＣ１０によるレポート及びログの作成及び呈示に関係がある要件であると考えられる。システムは、ロット情報又はプロジェクト実行情報を捕捉してその後の検索に向けてメモリに格納することができる（ＳＶＲ−ＳＣＲ−ＰＲＪ、ＳＶＲ−ＳＣＲ−ＬＯＴ）。ユーザは、ロット／レシピ情報及びロット／プロジェクト実行情報を表示及び印刷することができる（ＧＵＩ−ＲＥＰ−ＰＲＪ、ＧＵＩ−ＲＥＰ−ＬＯＴ）。ユーザは、イベントログを表示／印刷することができる（ＧＵＩ−ＳＴＳ）。システムは、ロット及びプロジェクト実行の履歴を維持することができる。また、クラッシュ回復、アクセスログなどに対しては、システムログが必要である場合がある（ＤＢ−ＭＳＣ−ＪＯＢ）。プロジェクト又はロットが実行された時、実行ログを一定期間にわたって保存することができる（ＤＢ−ＭＳＣ−ＪＯＢ）。データ分析が必要である場合がある。傾向データが必要である場合がある。診断に対しては、レポートが主として必要である場合がある。レポートは、簡単なフォーマットによるファイルとすることができる。ユーザは、データを分析するために、Ｅｘｃｅｌを使用することができる。ＭＳＣ１０は、システム及びデバイス設定可能変数を報告することができる（ＧＵＩ−ＲＥＰ−ＣＦＧ）。現在実行中のプロセスに対しては、レーザ高電圧のような付加的なステータスパラメータが必要であると共に、ユーザが選択可能である場合がある。ＭＳＣ１０は、ジョブ待ち行列画面、例えば、図に例示する画面３３にこれらを示すことができる。ＦＳＥは、ステータスタブを形成することができる（ＧＵＩ−ＪＯＢ−ＳＴＳ、ＧＵＩ−ＣＦＧ−ＳＴＳ）。
【０１３６】
本明細書で説明するエラー処理、例外事項、及びエラー回復要件は、ＭＳＣ１０によるタスク実行の例外事項及びエラー回復に関係がある要件であると考えられる。ＭＳＣ１０のイベントループは、全ての装着したデバイスからステータスをポーリングすることができる。このポーリングの大部分は、ＭＤＢｏｘ３３４を通じて行うことができる（ＳＶＲ−ＳＴＳ−ＳＴＬ）。ＭＳＣ１０は、デバイス内の高速エラーを処理することを担当することができないが、デバイスのステータスを報告することはできる。ＭＳＣ１０は、走査を開始した後にはあらゆる制御を行うことができない（ＳＶＲ−ＳＴＳ−ＳＴＬ）。承認すべき各デバイス指令にはタイムアウトある場合がある（ＳＶＲ−ＤＥＶ−ＤＲＶ）。イベントループ内のタイムアウトパラメータは、調節可能である場合がある。全てのタイムアウト期間は、データベース主導である場合がある（ＧＵＩ−ＣＦＧ−ＳＹＳ）。システムからのステータス及びエラーを示すウィンドウは、表示可能にすることができる。それは、日付、時間、エラーコード、ソースファイル、行番号などを有することができる（ＧＵＩ−ＳＴＳ−ＳＴＭ）。エラーレベル、モジュールレベル、又はエラーコードによりエラーを無効にすることをもたらすことができる（ＧＵＩ−ＪＯＢ−ＱＵＥ）。全てのエラーは、イベントログで記録することができる（ＳＶＲ−ＳＴＳ−ＳＴＭ）。各インタフェースには、ハンドシェイキングタイムアウトが存在する場合がある（ＧＵＩ−ＣＦＧ−ＤＥＶ）。初期化、ステータス検査、プロジェクト実行、ロット単位の検査、レシピ単位の検査、画像単位の検査、及び走査エラーは、重大である場合がある。走査中のユーティリティエラーは、警告として処理することができ、かつ無視することができる（ＳＶＲ−ＳＣＲ−ＬＯＴ）。エラーが検出された場合（重大であるか否かを問わず）、システムは、停止して、打ち切り、再試行、又は無効にして続行するオプションをユーザに与えることができる（ＳＶＲ−ＪＯＢ−ＪＢＭ、ＧＵＩ−ＪＯＢ−ＱＵＥ）。フィールドサービスエンジニア及び管理者は、エラーを無効にして続行することができる（ＤＢ−ＭＳＣ−ＡＳＣ）。デバイスの手動初期化が必要である場合がある（ＧＵＩ−ＰＲＪ−ＰＪＭ）。警告は、通報メッセージとして表示することができ、これは、プロセスフローを停止することができない（ＳＶＲ−ＳＴＳ−ＳＴＬ）。ロット処理がエラーのために停止又打ち切られた場合、ユーザの選択に基づいて、回復は、次の画像を開始するか、次の基板を開始するか、又は次のロットを開始する場合がある。エラー状況においては、ＭＳＣ１０は、以下のオプション、すなわち、基板を再出発させる、基板を省略する、又はロット全体を打ち切ることを提供することができる（ＳＶＲ−ＳＣＲ−ＬＯＴ）。予想エラー形式は、モジュール又はシステムレベルでの承認タイムアウト、デバイスのステータスエラー、較正エラー、パラメータ測定エラー、計算の疑わしい結果とすることができる（ＤＢ−ＯＥＭ−ＳＴＳ）。クラッシュ回復手順は、以下を含むことができる。
１．ＭＳＣ１０は、ＭＤＢｏｘ３３４からステータスを連続的にポーリングすることができ、
２．ＭＳＣ１０は、「状態完全」クラッシュ回復ログを管理することができ、
３．サーバクラッシュ時に、ＭＤＢｏｘ３３４は、このポーリングにおいては欠如とすることができ、
４．ＭＤＢｏｘ３３４は、停止すべきレーザ及びステージに信号を送ることができ、
５．再起動すると、ＭＳＣ１０は、ログを調べてクラッシュであったか又は正常シャットダウンであったかを判断し、
６．クラッシュの場合には、フィンガプリントを取って、初期化及びステータス検査のプロセスを開始し、システムがクラッシュした地点から再開することができる。
【０１３７】
クラッシュ回復状態では、ＭＳＣ１０は、クラッシュした状態を認識することができる（独自ログ、並びにデバイスからのログから）。それは、フィンガプリントを捕捉して全てのモジュールがどの状態に現在置かれているかを判断することができる。それは、待ち行列を停止させることができる。それは、ユーザにクラッシュに対して通知することができ、かつフィンガプリント情報を含む画面で示すことができる。再起動に向けてレシピを調整するためにオペレータからの手動干渉が必要である場合がある（ＳＶＲ−ＳＣＲ−ＴＳＫ）。欠如パルスに対しては、ＭＳＣ１０は、ユーザの選択に基づいて回復することができる。これは、通常のエラー処理の一部とすることができる（ＳＶＲ−ＳＣＲ−ＥＲＨ）。回復は、より高いエネルギレベルでは不可能な場合があり、従って、ＭＳＣ１０は、ユーザに次の基板又は次のロットを続行するように求める場合がある（ＳＶＲ−ＳＣＲ−ＥＲＨ）。時折、ガラス／基板は、壊れることがある。この検出は、自動とすることができない。オペレータは、デバイスステータス情報に基づいてこれを目視で検出することができる。手動打ち切りが発生する場合がある（ＧＵＩ−ＪＯＢ−ＱＵＥ）。ＭＳＣ１０は、データを収集してトラブルシューティングに向けてデータベース内に格納することができる。（ＳＶＲ−ＳＴＳ−ＳＴＭ、ＤＢ−ＭＳＣ−ＬＯＧ）。ＭＳＣ１０は、激しい運転停止、すなわち、停電又は偶発的な電源切れを処理することができる（ＳＶＲ−ＳＴＳ−ＥＲＨ）。パラメータが閾値を超える場合、可視指示を行うことができる。ステータスループは、警報を生成し、及び／又は視覚キューを供給することができる（ＧＵＩ−ＪＯＢ−ＳＴＳ）。
【０１３８】
本明細書で説明する性能要件は、加工物製品のサービス可能性、保守性、応答性、及び収量に関係ある性能要件とすることができる。収量を最大にするために、露光中に平行タスクを実行する必要が存在する場合がある。例えば、基板を露光間、レーザ診断結果を同時に収集することができる（ＳＶＲ−ＳＣＲ−ＬＯＴ）。収量を最大にするために、システムは、例えば、平行してタスクを実行することにより、待ち時間を排除するか又は最小にすることができる（ＳＶＲ−ＳＣＲ−ＬＯＴ）。基板露光時間は、９０秒未満とすることができる（ＳＶＲ−ＳＣＲ−ＬＯＴ）。基板交換時間は、４５秒未満とすることができる（ＳＶＲ−ＤＥＶ−ＲＯＢ）。ＭＳＣ１０ソフトウエアは、ほぼ３０個／時間の基板の収量を可能にすることができる（ＳＶＲ−ＳＣＲ−ＬＯＴ）。割り込み間の平均時間は、１週間未満とすべきである。休止時間は、２４時間期間中に３０分を上回らないように設計すべきである（すなわち、約９８％の使用可能度）。
【０１３９】
本明細書で説明する使用性要件は、製品の便利な使用に関係がある使用性要件とすることができる。キーボード及びマウスサポートは、タッチスクリーン機能性に加えて、又はタッチスクリーン機能性の代替で必要である場合がある。レシピ作成中に、タッチスクリーンは、それほど貴重なものではないと考えられる。プロセスエンジニア及びフィールドサービスエンジニアによる日々実行に対しては、タッチスクリーンは、利用可能であれば、貴重なものと考えられる。ＧＵＩ４０のスタイラスに基づくタッチスクリーン作動を行うことができる（ＧＵＩ）。タッチスクリーンは、スクリーン所要面積が密集している場合、優先度が小さくなるであろう。画面上に示す情報は、多いほどよい（ＧＵＩ）。
【０１４０】
ＭＳＣ１０には、上述の要件リストに説明するユーザインタフェースに加えて、いくつかの外部インタフェース要件がある。ハードウエアインタフェースに関しては、ＭＳＣ１０ソフトウエアインタフェースは、以下のデバイス、すなわち、マスター分配モジュール（ＭＤｂｏｘ）、レーザ、ビーム安定化コントローラ（ＢＳＣ）、ステージ、減衰器３３８、プロセスシャッター、ビーム測定器、ハンドラ、カセット、及びロボットとインタフェースで接続している。ＭＳＣ１０に基づく機械間のソフトウエアインタフェースは、レシピ及び画像のような情報のエクスポート／インポートを可能にする。ＭＳＣ１０は、例えば、ステージデバイスのソフトウエアインタフェースを使用して、例えば、診断情報を検索することができる。以下のインタフェース、すなわち、ＴＣＰ、ＨＴＴＰ、ＣＯＲＢＡ、及びＵＳＢを他のデバイスとのＭＳＣによる通信に利用することができる。ＭＳＣソフトウエアは、上述の機能を可能にする適切な速度及び精度でリアルタイムに主としてモニタリング情報を集めるために、かつ低レベル指令をデバイスに発するために関連ハードウエアと通信する。ＭＳＣ１０ソフトウエアのための品質属性としては、柔軟性、堅牢性、ダイナミクス性、使い易さ、使い勝手、及びユーザインタフェース、すなわち、直観的及び使い易いことがある。
【０１４１】
以下は、特定の行為者、すなわち、プロセスエンジニア、フィールドサービスエンジニア、及び管理者に関するＭＳＣ１０の使用例（ＵＣＳ）に関連するものである。
レシピを管理する、例えば、図２２に一例として例示するＧＵＩ４０「レシピ」インタフェース画面２０００を使用することに関しては、以下の「２次的使用例」が適用される。最初に、全てのユーザが利用可能な「作成レシピ」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、データベース内の関連データで新しいレシピを作成する。ユーザは、システムに、ユーザが指定するレシピを作成するように求める。ユーザは、ログインして許可された場合、許可されたユーザに対して起動される「作成する」ボタン２００２を使用することができる。ユーザは、図示のように「ＪＯＨＮ」レシピリスト２０３０に追加すべきレシピ名、例えば、図２２に例示するようなＣＲＹ１５８００／ＪＯＨＮ／Ｒ４を「名前」ボックス２００８内に入力することができる。システムは、レシピを編集モードにする。ユーザは、レシピパラメータを供給する。ユーザは、レシピに画像を追加する。ユーザは、以下で説明するインポートレシピ使用例を使用して、すなわち、例えば、「パラメータ」ディスプレイ２０２０内にレシピデータを任意的にインポートする。ユーザは、以下で説明するレシピをペーストする使用例を使用してレシピデータを任意的にペーストする。ユーザは、以下で説明する画像をインポートする使用例を使用して画像をレシピに任意的にインポートする。ユーザは、以下で説明する画像をペーストする使用例を使用して画像をレシピに任意的にペーストする。ユーザは、画像パラメータを供給する。ユーザは、以下で説明する画像をエクスポートする使用例を使用して画像を任意的にエクスポートする。ユーザは、以下で説明する画像をコピーする使用例を使用して画像を任意的にコピーする。ユーザは、変更を行ったことをシステムに知らせる。システムは、レシピ及び画像データ整合性検査を行う。システムは、レシピを作成してメモリ、例えば、ＭＳＣスキーマ内に格納する。
【０１４２】
全てのユーザが利用可能な「修正レシピ」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、メモリ内の既存のレシピを修正する。「修正する」ボタン２００４を利用するユーザは、ピックリストからレシピを選択すると、システムは、要請されたレシピをメモリから検索して編集モードにする。ユーザは、例えば、「Ｐａｒａｍｓ」ディスプレイ２００４又は「画像」ディスプレイ２００６を選択して、レシピ画像及び／又はパラメータを編集し、図２２に例示するような「Ｐａｒａｍｓ」の場合、画像を追加するか又はレシピから削除し、例えば、「名前」ボックス２００８内でレシピの名前を変えて、パラメータリスト２０２０及び／又は「値」リスト２０２２を修正し、「作成レシピ」使用例に対して言及したインポート、コピー、ペーストのような機能を任意的に使用する。
【０１４３】
「削除レシピ」２次的使用例があるとすることができ、それによって許可されたユーザは、ログインした状態で、例えば、「削除する」ボタン２０２４を使用してメモリから既存のレシピを削除する。ユーザは、ピックリストからレシピを選択して削除する。
「インポートレシピ」２次的使用例があるとすることができ、それによってユーザは、外部ファイルからレシピデータをインポートすると同時に、「インポートする」ボタン２０２６を使用してレシピを作成又は編集する。ユーザは、ネットワークドライブにあるファイルの名前を供給すると、システムは、上述のようにユーザによるその後の使用に向けて、ファイルから読み取ったレシピデータに関してレシピ作成又は編集モードをポピュレートする。ユーザは、「作成レシピ」使用例及び「修正レシピ」使用例において説明したように、レシピを作成又は編集するモードを続行する。
【０１４４】
「エクスポートレシピ」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、例えば、図２２の２０００の画面に示す「エクスポートする」ボタン２０２８を使用して、外部ファイルにレシピデータをエクスポートする。システムは、レシピのピックリストをもたらし、ユーザは、レシピ、及びネットワークドライブにあるファイルの名前を含むエクスポートしたレシピデータを保存するファイルの名前を選択する。
【０１４５】
「インポート画像」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、外部ファイルから画像をインポートすると同時に、例えば、「インポートする」ボタン２０２６を使用して「画像」ディスプレイ２００６を選択してレシピを作成又は編集する。システムは、ネットワークドライブにあるファイルの名前を含むファイルの名前を供給するようにユーザに頼み、かつシステムは、ファイルから読み取った画像データに関してレシピを作成又は編集するモードをポピュレートする。
【０１４６】
「エクスポート画像」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、外部ファイルに画像をエクスポートすると同時に、例えば、「エクスポートする」ボタン２０２８及び「画像」ディスプレイ２００６を選択してレシピを作成又は編集する。ユーザは、画像の数、及びネットワークドライブにあるファイルの名前を含むエクスポートした画像データを保存するファイルの名前を供給する。
【０１４７】
「コピーレシピ」２次的使用例があるとすることができ、それによってユーザは、例えば、「コピーする」ボタン２０３２を使用して、レシピをシステムクリップボードにコピーしてその後にレシピ編集モードでレシピをペーストする。ユーザは、メモリ内にレシピの名前を供給し、システムは、例えば、それぞれのディスプレイ２０２０及び２０２２内でパラメータ及び／又は画像を有効にして、メモリのレシピデータに対してクリップボードをポピュレートする。
【０１４８】
「ペーストレシピ」２次的使用例があるとすることができ、それによってユーザは、システムクリップボードからレシピデータをペーストすると同時に、「ペーストする」ボタン２０３４を使用してレシピを作成又は編集する。ユーザは、システムに、システムクリップボードからレシピをペーストするよう求める。システムは、システムクリップボードから読み取ったレシピデータに関してレシピを作成又は編集するモードをポピュレートする。ユーザは、「作成レシピ」例及び「修正レシピ」例において説明したように、レシピを作成又は編集するモードを続行する。
【０１４９】
「コピー画像」２次的使用例があるとすることができ、それによってユーザは、システムクリップボードに画像をコピーすると同時に、例えば、「コピーする」ボタン２０３２を使用して、かつ「画像」ディスプレイ２００６を選択してレシピを作成又は編集する。システムは、ユーザに、コピーすべきレシピ内の画像の番号を供給するように頼み、かつ供給された画像番号を使用して、レシピからの画像データに関してクリップボードをポピュレートする。ユーザは、「作成レシピ」使用例及び「修正レシピ」使用例において説明したように、レシピを作成又は編集するモードを続行する。
【０１５０】
「ペースト画像」２次的使用例があるとすることができ、それによってユーザは、システムクリップボードからの画像をレシピ内にペーストすると同時に、例えば「ペーストする」ボタン２０３４を使用して、かつ例えば図２３に例示として示すディスプレイを表示させて「画像」ディスプレイ２００６を選択してレシピを作成又は編集する。システムは、例えば、ウィンドウ２０１０に例示するように、システムクリップボードから読み取った選択画像データに関してレシピを作成又は編集するモードをポピュレートし、その場合、「画像」タブ２００６を選択した時に、かつウィンドウ２０１２内にレシピのための画像類を一覧表示することができ、そこで、特定の画像のパラメータの値を表示することができる。
【０１５１】
「一覧表示レシピ」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、データベース内の全てのレシピを一覧表示する。システムは、階層的フォルダ構造でメモリ内の全てのレシピの名前を表示する。
「閲覧レシピ」２次的使用例があるとすることができ、それによってユーザは、メモリ内のレシピのデータを閲覧及び印刷する。システムは、画像データを含むレシピのデータをユーザに表示し、ユーザは、システムにレシピデータを印刷するように任意的に求める。
【０１５２】
ＧＵＩ４０インタフェースで画面２０５０を表示させることができる以下のような「管理プロジェクト２次的使用例」があるとすることができ、画面２０５０は、プロジェクト名ボックス２０５２を含むことができ、そこで、ユーザは、プロジェクト名、及びプロジェクトの短い説明を含む図２４のプロジェクト説明ボックス２０５４を追加又は編集することができる。「作成プロジェクト」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、新しい保守又はモニタリングのためのプロジェクトを作成する。ユーザは、システムに２つの表示、すなわち、標準的表示又はカスタム表示の一方を使用してプロジェクトを作成するように求める。システムは、プロジェクトを編集モードにする。システムは、例えば、図２５で２０６０及び２０６２で画面２０５０’上に示すような標準的表示を表示する。ユーザは、例えば、図２４のウィンドウ２０５３を使用してプロジェクトにタスクを追加する。ユーザはまた、ウィンドウ２０５３に一例として示すように、プロジェクトに追加したタスクを任意的に起動／作動を停止する。ユーザは、プロジェクトに追加したタスクに対して実行時間パラメータを供給する。ユーザは、変更を行ったことをシステムに表示する。システムは、プロジェクトデータ整合性検査を行う。システムは、メモリ内にプロジェクトを作成及び格納する。ユーザがカスタム表示を求めた場合、システムは、例えば、図２５のウィンドウに一覧表示するもの、例えば、レーザ制御、レーザ診断、レーザダウンロード、ステージ制御、ステージ診断及びシステムダウンロードからカスタム表示を表示し、かつユーザは、プロジェクトテンプレートを例えば診断、ダウンロード、及び制御から選択することができる。システムは、それぞれ、図２６〜図２８に一例として示すような選択したテンプレート、すなわち、制御テンプレート２０７０、診断テンプレート２０８０、及びダウンロードテンプレート２０９０に基づいてカスタム形式を表示する。ユーザは、例えば、プロジェクトデータを供給する（例えば、図２４の画面２０５０内のウィンドウ２０５１を使用して、例えば、プロジェクトに含むべきタスク、例えば、図２３の画面２０００のウィンドウ２０１０、２０１２を使用して、タスクの実行時間パラメータなど）。ユーザは、当面のオンデマンド実行のためのプロジェクトを任意的に実行する。システムは、ジョブ待ち行列の先頭にプロジェクトを追加し、ジョブ待ち行列がまだ開始されていない場合はステップモードでジョブ待ち行列を開始し、かつジョブ実行の結果を表示する。
【０１５３】
「修正プロジェクト」２次的使用例があるとすることができ、それによってユーザは、既存のプロジェクトを修正する。ユーザは、ピックリストからレシピを選択する。システムは、要請されたプロジェクトをメモリから検索して、例えば、図２４の画面上に例示するように編集モードにする。システムは、標準的表示を表示することができる。ユーザは、タスクを追加するか又はプロジェクトから削除する。ユーザは、例えば、ウィンドウ２０５３において、プロジェクト内のタスクを任意的に起動／作動停止する。ユーザは、例えば、ウィンドウ５０５１に示すタスクを選択することにより、タスクを編集する使用例を使用してプロジェクト内にあるタスクを編集する。ユーザは、プロジェクト内のタスクのシーケンスを変えることができる。ユーザは、プロジェクトの名前を変えることができる。ユーザは、例えば、図２４の「適用する」ボタンで、変更が行われていることをシステムに表示する。システムは、次に、プロジェクトをメモリに格納することができる。テンプレートを使用してプロジェクトを作成した場合、システムは、レーザシステムカスタムテンプレート、すなわち、それぞれ、制御、診断、及びダウンロードに対して、図２６〜図２８に例示されるようなカスタム表示を表示することができる。システムは、診断、ダウンロード、及び制御からプロジェクトのテンプレートに基づいてカスタムフォームを表示することができる。ユーザは、プロジェクトデータ（例えば、プロジェクトに含まるべきタスク、タスクの実行時間パラメータなど）を修正することができる。ユーザは、当面のオンデマンド実行のためのプロジェクトを任意的に実行することができ、それによってシステムは、ジョブ待ち行列の先頭にプロジェクトを追加し、ジョブ待ち行列がまだ開始されていない場合はステップモードでジョブ待ち行列を開始し、かつジョブ実行の結果を表示する。
【０１５４】
「削除プロジェクト」２次的使用例があるとすることができ、それによってユーザは、既存のプロジェクトをメモリから削除する。ユーザは、ピックリストからプロジェクトを選択すると、プロジェクトが削除される。
「一覧表示プロジェクト」２次的使用例があるとすることができ、それによってユーザは、例えば、図２４のウィンドウ２０５６において、メモリ内の全てのプロジェクトを一覧表示する。全てのユーザが利用可能な「表示プロジェクト」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、ウィンドウ２０５３及び２０５８におけるなどのウィンドウ２０５６のリストから選択したメモリ内のプロジェクトを表示する。全てのユーザが利用可能な「一覧表示タスク」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、例えば、ウィンドウ２０５１においてメモリ内の全てのタスクを一覧表示する。全てのユーザが利用可能な「インポートプロジェクト」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、例えば、図２４の画面２０５０上の「インポートする」ボタンを使用して、外部ファイルからプロジェクトデータをインポートすると同時に、プロジェクトを作成又は編集する。システムは、指定されたファイルから読み取ったプロジェクトデータに関してプロジェクトを作成又は編集するモードをポピュレートする。
【０１５５】
「エクスポートプロジェクト」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、例えば、図２４の画面に示す「エクスポートする」ボタンを使用して外部ファイルにプロジェクトをエクスポートする。ユーザは、システムにプロジェクトを選択外部ファイルにエクスポートするように求める。システムは、供給されたプロジェクト名を使用して、メモリからのプロジェクトデータに関して新しいファイルを作成するか、又は既存ファイルを更新する。全てのユーザが利用可能な「コピープロジェクト」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、例えば、図２４の画面２０５０上の「コピーする」ボタンを使用して、プロジェクトをシステムクリップボードにコピーしてその後にプロジェクト編集モードでプロジェクトをペーストする。ユーザは、プロジェクトの名前を供給する。システムは、供給されたプロジェクト名を使用して、メモリからのプロジェクトデータに関してクリップボードをポピュレートする。
【０１５６】
図２６のレーザ制御制御テンプレート２０７０は、「ＳＴＥＰＷＩＳＥ」とあるブロック２０７２において段階のリストを含むことができる。それは、完全初期化のためのボックス２０７４、レーザに指令を選択するボックス２０７５、ガス補充及び注入管理指令のためのボックス２０７６、及びレーザからの応答のためのボックス２０７８も有することができる。図２７のレーザ診断テンプレート２０８０は、例えば、選択された時、モード表示、値表示、周波数表示、パルス数表示、及び平均数表示を表示することができる複数の選択可能なレーザ検査モード情報ボックス２０８２を含むことができる。コメントのためのボックス２０８４、及びガス補充を行うように選択することができるボックス２０８６もある場合がある。図２８のレーザダウンロードダウンロードテンプレート２０９０は、例えば、診断、設定可能変数、ＲａｗＳｈｏｔｓ、１０Ｋ及び１Ｍを選択する複数のボックス２０９４と共に、例えば、モード、値、パルス数、及び周波数を示すことができる複数の予行情報ボックス２０９２を含むことができる。また「ＲＵＮ」ボックスを含むことができる。
【０１５７】
「ペーストプロジェクト」２次的使用例があるとすることができ、それによってユーザは、例えば、図２４の画面上の「ペーストする」ボタンを使用して、例えば、システムクリップボードからプロジェクトをペーストすると同時に、プロジェクトを作成又は編集する。システムは、システムクリップボードから読み取ったプロジェクトデータに関してプロジェクトを作成又は編集するモードをポピュレートする。ユーザは、「作成プロジェクト」使用例及び「修正プロジェクト」使用例において説明したように、プロジェクトを作成又は編集するモードを続行する。
【０１５８】
「管理ジョブ待ち行列使用例」では、以下の２次的使用例が存在する場合がある。「ジョブをジョブ待ち行列に追加」２次的使用例があるとすることができ、それによってユーザは、ロット又はプロジェクトをジョブ待ち行列に追加して、ジョブ待ち行列を使用してロットを処理するか、又はジョブを実行する。システムは、ロット／プロジェクトのピックリストをもたらし、ピックリストから、ユーザは、ロット又はプロジェクトを選択して、実行時間パラメータをロット又はプロジェクトに供給する。（ロットの実行時間パラメータは、基板ＩＤ、オペレータＩＤ、カセットステーション番号などとすることができる。プロジェクトの実行時間パラメータは、オペレータＩＤ、備考などとすることができる。）システムは、ロット又はプロジェクトをジョブ待ち行列に追加する。
【０１５９】
「ジョブ待ち行列からジョブを除去」２次的使用例があるとすることができ、それによってユーザは、ジョブ待ち行列からロット／プロジェクトを除去する。ユーザは、ジョブ待ち行列からロット／プロジェクトを選択して、システムにジョブ待ち行列から除去するように求める。システムは、ジョブ待ち行列からロット／プロジェクトを除去する。
「ジョブ待ち行列内のジョブシーケンスを変更」２次的使用例があるとすることができ、それによってユーザは、ジョブ待ち行列内のジョブシーケンスを変更する。ユーザは、ジョブ待ち行列からジョブを選択して、システムに待ち行列内でジョブを上又は下に移動させるように求める。システムは、ジョブをジョブ待ち行列内の新しい位置に移動させる。
【０１６０】
「開始ジョブ待ち行列」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、ジョブ待ち行列２１０６を開始して、待ち行列の前部からジョブ待ち行列内のジョブを処理し始める。ユーザは、システムに、例えば、図３３の「ジョブ」画面２１１０上の「開始する」ボタン２１０２を使用して、ジョブ待ち行列を開始するように求める。システムは、ステータスウィンドウ２１００を更新して、ジョブ待ち行列を実行することができることを示す。ジョブ待ち行列２１０６が完了前に休止された場合、システムは、プロジェクト内の次のタスクを続行する。そうでなければ、システムは、待ち行列２１０６の前部から未処理のジョブ、例えば、ステータスウィンドウ２１００内の「ロット１」を取って、ジョブのコピーを行い、そのコピーを使用して連続して実行し始める。ロットが処理されている場合、システムは、ウィンドウ、例えば、図３３の２１０７においてグラフィックで結晶化プロセスの進行状況及び現在実行中のロットの基板の位置を表示する。システムは、カセットの図的表現２１０４、例えば、どの基板が現在処理中であるか、後いくつ基板が残っているかなども表示する。システムは、例えば、ウィンドウ２１００において、ジョブ待ち行列２１０６内の現在処理中のジョブ２１０８のステータスを「処理中」に更新する。ジョブの処理が完了及び成功した場合、システムは、例えば、ジョブＰ２に対してウィンドウ２１００に示すようにジョブ待ち行列２１０６内のジョブのステータスを「処理済み」に変更する。システムが確実にジョブを実行しなかった場合、待ち行列内のジョブの状態を「処理失敗」に変更する。
【０１６１】
「停止ジョブ待ち行列」２次的使用例があるとすることができ、それによってユーザは、ジョブ待ち行列がジョブ待ち行列２１０６内の残りのジョブ２１０８を処理するのを防止するために、例えば、画面２１１０の「停止する」ボタン２１１４でジョブ待ち行列を停止する。ユーザは、システムにジョブ待ち行列を停止するように求める。システムは、ジョブ２１０８が現在実行中であるかを検査する。ジョブ、例えば、ジョブ待ち行列２１０６内の「ロット１」が現在実行中である場合、システムは、現在実行中のジョブを打ち切る、現在実行中のジョブを休止する、現在実行中のジョブを仕上げた後に停止するのうちの１つを選択するようにユーザに促す。ユーザが打ち切りを選択した場合、システムは、現在実行中のジョブを終了させる。ユーザが休止を選択した場合、システムは、現在実行中のジョブを仕上げた後に停止する。ユーザが停止を選択した場合、システムは、現在実行中のジョブが仕上った後にジョブ待ち行列２１０６を停止する。システムは、ステータスウィンドウ２１００を更新して、ジョブ待ち行列を停止することができることを示す。
【０１６２】
「閲覧ジョブ待ち行列」２次的使用例があるとすることができ、それによってユーザは、例えば、図３３の画面２１１０で、ジョブ待ち行列２１０８内のジョブのリストを閲覧する。
「ジョブ待ち行列をステップモードにする」２次的使用例があるとすることができ、それによってユーザは、例えば、図３３の「停止する」モードセレクタ２１２０で、ジョブ待ち行列が各ジョブ２１０８を実行した後に停止するようにジョブ待ち行列２１０６をステップモードにする。システムは、ステータスウィンドウ２１００を更新して、ジョブ待ち行列がステップモードである場合があることを示す。
【０１６３】
「ジョブ待ち行列をステップモードから除去」２次的使用例があるとすることができ、それによってユーザは、ジョブ待ち行列２１０６が連続してジョブを実行し始めるように、ジョブ待ち行列２１０６をステップモードから取り出す。システムは、例えば、「連続」モードセレクタ２１２２を使用して、次々とジョブ待ち行列内の全てのジョブを実行し始めるようにジョブ待ち行列を連続モードにする。システムは、ステータスウィンドウ２１００を更新して、ジョブ待ち行列２１０６が連続モードであることを示す。
【０１６４】
「表示システムステータス」２次的使用例があるとすることができ、それによってユーザは、例えば、図３３のウィンドウ２１３０又は図３５、図３６の画面でシステム及びデバイスの現在のステータスを見る。システムは、システム及びデバイスの現在のステータスを複数のステータスタブ上に表示し、各ステータスタブは、ステータスパラメータの現在値を示している。システムは、重大度、すなわち、重大、エラー、警告、又はメッセージに基づいて、タブ上にタブ及びステータスパラメータ色のような視覚的表示をもたらす。システムは、保守が構成要素及びモジュールに必要である場合は、視覚的表示又はテキストによる表示も提供する。
【０１６５】
「管理ジョブ待ち行列」使用例では、以下の通り、いくつかの２次的使用例が存在する場合がある。「プロジェクトを保守スケジュールに追加」２次的使用例があるとすることができ、それによって例えば図２４の画面を使用して、ユーザは、プロジェクトをスケジュール、例えば、日程計画モニタリングのための保守スケジュールに追加する。ユーザは、ピックリスト２１４０からプロジェクトを選択する。システムは、プロジェクトを保守スケジュールに追加して、有効化した状態にする。ユーザは、保守スケジュール使用例、例えば、図２９に示すような２１４２内で、プロジェクトの編集するスケジュールを使用してプロジェクトスケジュールをもたらす。プロジェクトのスケジュールに従って、システムは、ジョブ待ち行列の先頭、例えば、図２９の２１４４にプロジェクトを追加する。例えば、供給されたスケジュールが週別である場合、システムは、ジョブ待ち行列２１４４を第１の曜日に開始することができる時には、その曜日にプロジェクトを実行する。
【０１６６】
「プロジェクトを保守スケジュールから除去」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、例えば「削除する」キー２１４６を使用して、予定したモニタリングに使用する保守スケジュールからプロジェクトを除去する。システムは、保守スケジュールからロット／プロジェクトを除去する。
「プロジェクトを保守スケジュールにおいて有効化する」２次的使用例があるとすることができ、それによってユーザは、例えば、図２９の画面上の「適用する」ボタン２１５０を使用して、日程計画のための保守スケジュール内のプロジェクトを起動する。システムは、予定した保守のためのプロジェクトを有効化する。プロジェクトのスケジュールに従って、システムは、１日の第１のレシピが処理される時にそのプロジェクトを実行する。
【０１６７】
「プロジェクトを保守スケジュールにおいて無効化する」２次的使用例があるとすることができ、それによってユーザは、例えば、図２９の「取り消す」ボタン２１５２を使用して、プロジェクトが予定されないように保守スケジュール内のプロジェクトを作動停止する。
「保守スケジュール内のプロジェクトのスケジュールを編集」２次的使用例があるとすることができ、それによってユーザは、例えば「修正する」ボタン２１５６を使用して、保守スケジュール内のプロジェクトのスケジュールを修正する。ユーザは、保守スケジュールからプロジェクトを選択して、システムは、ユーザにプロジェクトのスケジュールを供給するように求める。ユーザは、例えば、図２９のウィンドウ２１４２において、日別、週別、又は月別としてスケジュールを供給する。システムは、プロジェクトの保守スケジュールを更新する。
【０１６８】
「閲覧プロジェクトスケジュール」２次的使用例があるとすることができ、それによってユーザは、保守スケジュール２１４４を閲覧する。
「ログイン２次使用例」の下では、以下の２次的使用例が適用されるとすることができる。「ユーザをログイン」２次的使用例があるとすることができ、例えば、図１８の画面２１６０を使用してユーザをログインすることができる。
「ユーザを切り換える」２次的使用例があるとすることができ、ユーザは、ログインされたユーザをユーザに変える。
【０１６９】
「ユーザをログアウト」２次的使用例があるとすることができ、ユーザは、システムからログアウトする。
「ユーザを登録」２次的使用例があるとすることができ、ユーザは、新しいユーザをシステムに登録する。システムは、ユーザにユーザＩＤ、パスワード、及び新しいユーザの役割（オペレータ／プロセスエンジニア、フィールドサービスエンジニア、又は管理者のうちの１つ）を供給するように求める。システムは、供給されたデータと共にメモリ内のユーザリストにユーザを追加する。
【０１７０】
「ユーザを未登録にする」２次的使用例があるとすることができ、管理者は、既存のユーザをシステムから除去する。
「ユーザログインを変更」２次的使用例があるとすることができ、ユーザは、自分のログインパスワードを変更することができる。
「役割をログイン」２次的使用例があるとすることができ、それによってユーザは、承認された役割でシステムにログインする。
【０１７１】
「役割を切り換える」２次的使用例があるとすることができ、それによってユーザは、ログインされた役割を別の役割に変更する。システムは、ユーザにリストから役割の１つ、すなわち、オペレータ／プロセスエンジニア、フィールドサービスエンジニア、又は管理者を選択するように求める。システムは、ユーザにユーザＩＤ及びパスワードを供給するように求める。システムは、現在ログイン中の役割をログアウトして、選択された役割と共に行為者をシステムにログインする。
【０１７２】
「役割ユーザを切り換える」２次的使用例があるとすることができ、それによってユーザは、ログイン中の役割を自分自身に変更する。システムは、ユーザにユーザＩＤを供給するように求め、かつシステムは、現在ログイン中のユーザをログアウトして、行為者をシステムにログインする。
「役割ユーザをログアウト」２次的使用例があるとすることができ、それによってユーザは、システムからログアウトする。システムは、システムから役割をログアウトする。システムは、そのメイン画面ウィンドウを閉じる。
【０１７３】
「役割ログインパスワードを変更」２次的使用例があるとすることができ、それによって管理者は、いかなる役割のパスワードも変更する。システムは、メモリ内の選択された役割のパスワードを変更する。システムは、パスワード変更が成功であることをユーザに知らせる。
「管理モジュール使用例」では、以下の通り、いくつかの２次的使用例が存在する場合がある。「一覧表示モジュール」２次的使用例があるとすることができ、それによってユーザは、メモリ内の全てのモジュールを一覧表示する。
【０１７４】
全てのユーザが利用可能な「閲覧モジュール」２次的使用例があるとすることができ、それによってユーザは、例えば、図３７の画面２２００上でメモリ内のモジュールを閲覧する。システムは、モジュールのピックリストをもたらす。システムは、例えば、ウィンドウ２２０４において、要請されたプロジェクトをメモリから検索して閲覧モードにする。システムは、名前、シリアル番号、保守カウンタなどと共に、モジュールを含む全ての構成要素及びデバイスのリストを表示する。
【０１７５】
「修正モジュール」２次的使用例があるとすることができ、それによってユーザは、メモリ内のモジュールの特定の構成要素パラメータ（例えば、保守カウンタ）を修正する。システムは、モジュールのピックリストをもたらす。システムは、要請されたモジュールをメモリから検索して編集モードにする。システムは、画面２２００上の「構成要素特性」２２０８のところの名前、シリアル番号、保守カウンタなどと共に、画面２２００上の「モジュール構成要素」２２０６のところにモジュールを含む全ての構成要素及びデバイスのリストを表示する。ユーザは、保守カウンタのようなパラメータデータを編集する。システムは、メモリ内にモジュールを格納する。
【０１７６】
「構成システム２次的使用例」の下では、以下の通り、いくつかの２次的使用例が存在する場合がある。「編集システム構成」２次的使用例があるとすることができ、それによってユーザは、ログインした状態で、機械又はシステム構成情報を修正する。ユーザは、システムに、システム構成情報を編集するように求める。システムは、システム構成を編集モードにする。ユーザは、例えば、図３７、図３８、及び図３９の画面２２００、２２００’、及び２２００’’上でシステム構成情報を修正する。システムは、システム構成情報をメモリに保存する。図３７の画面２２００は、例示として、例えば、モジュールのリストを示すウィンドウ２２０２を有するモジュールタブが選択された時の表示を示しており、モジュールは、図で分るように、ユーザが修正するように選択することができ、また、選択したモジュール、例えば、「光学器械」のモジュール特性を示すウィンドウ２２０４内に示されている。画面２２００は、選択したモジュールの構成要素を表示するウィンドウ２２０６、及び選択した構成要素の構成要素特性を表示するウィンドウ２２０８を含むことができる。図３５の画面２２００’は、一例として、システムタブを選択した時の表示内容を例示している。この場合、ウィンドウ２２１０は、パラメータとそれぞれのパラメータの値とを示している。図の３６画面２２００’’は、一例として、「ステータス」を選択した時の表示内容を例示している。例示するように、ステータスタブ名ボックス、保守、及びステータスタブ、例えば、概要、レーザ、ステージ、及びシステムを特定するウィンドウが示されており、ウィンドウ２２１６は、有効なステータスパラメータを表示し、ウィンドウ２２１８は、ステータスタブパラメータを表示する。
【０１７７】
図３８及び図３９のそれぞれ役割画面２３００及びユーザ画面及び２３００は、一例として、役割タブ及びユーザタブにより選択したディスプレイを例示しており、役割タブ及びユーザタブで、ユーザは、パスワードをボックス２３１２に挿入することにより、ウィンドウ２３１０から選択した役割に対してログインすることができ、かつユーザにユーザＩＤにより役割を割り当てることができ、そのＩＤがウィンドウ２３１４に表示されて２３１６に入力した場合、役割をボックス２３１８年で選択し、パスワードをボックス２３２０に入力する。
【０１７８】
図４０及び図４１の画面２４００及び２４００’は、それぞれ、ウィンドウ２４０２において全てのメッセージ、例えば、エラー及び警報メッセージを又は図４１のウィンドウ２４０４においてはフィルタに関する選択した特定のタイプのメッセージ／警報を示すことができ、図４１のウィンドウ２４０４により、例えば、フィルタリングに関する特定の時間、デバイス、メッセージ、重大度レベル、及び期間をディスプレイウィンドウ２４０６内のフィルタリング後のメッセージと共に選択することができる。
【０１７９】
「閲覧システム構成」２次的使用例があるとすることができ、それによってユーザは、機械又はシステム構成情報を閲覧する。システムは、各デバイスに１つの複数のタブでシステム構成を表示する。
「設定システムステータス」２次的使用例があるとすることができ、それによってユーザは、新しいステータスタブを追加して既存のステータスタブの内容を変更する。システムは、メモリ内の既存のステータスタブのリストを表示する。システムは、メモリ内の全てのステータスパラメータのリストも表示する。ユーザは、ステータスタブリストに新しいステータスタブを任意的に追加して、新しく作成したステータスタブに１つ又はそれよりも多くのステータスパラメータを追加する。ユーザは、ステータスパラメータを追加、再順序化、又は除去することにより、既存のステータスタブの内容を任意的に修正する。ユーザは、ステータスタブを任意的に再順序化する。ユーザは、既存のステータスタブを任意的に削除する。
【０１８０】
パルス毎にそれぞれの選択された狭い範囲の値内に維持されることを必要とする１組のパラメータで非常に狭い幅の非常に細長い光パルスビームを生成するパルスレーザＤＵＶ光源及び光学列を含むことができ、作業ステージ上に担持されて、加工物上の材料の結晶化のために加工物に照射する光を送出するためのパルスＤＵＶ加工物処理装置及び方法を開示し、これは、レーザコントローラと、作業ステージコントローラと、外部プロセスユーザインタフェースを通してユーザにより選択可能な一般プロセス指令段階を収容するデータベースを含むことができるデータベース主導プロセスコントローラを含みことができて、顧客レシピ制御指令発生器からプロセスレシピ制御要求を受信して制御信号をレーザコントローラ及び作業ステージコントローラに供給するシステムコントローラとを含むことができることは、当業者によって理解されるであろう。装置及び方法は、ユーザからユーザへのプロセス制御カスタム化を含むことができ、外部プロセスユーザインタフェースを通じて選択されたプロセス指令段階をそれぞれの１つ又は複数の一般スクリプトに変換する解釈プログラムも含むことができる。装置及び方法は、ＯＥＭデータベースに格納されたタスクに基づくことができ、ＯＥＭデータベースからユーザにより選択可能なプロセス指令段階をユーザに特定する作業フローエンジンを含むことができる。装置及び方法は、レーザコントローラ及び作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、ユーザからのレシピ定義を入力してプロセスサーバにユーザ指令を送るＧＵＩクライアントとを含むことができる。ＧＵＩクライアントは、レーザ及び作業ステージを含む群からの少なくとも１つのデバイスの状態、及び／又は加工物上の結晶化プロセスの状態を表示するディスプレイを含むことができ、かつインタフェースを通して製造実行システムインタフェースと通信することができる。装置及び方法は、ＯＥＭにより供給された読取専用タスク定義を収容することができるＯＥＭ読取専用データベースと、ユーザ供給レシピ定義を収容するマスターシステムコントローラ読取書込データベースとを更に含むことができる。ＯＥＭデータベースは、プロセス制御中にプロセスサーバにより使用可能なマクロ又はスクリプトの形態の一般タスク定義と、ＭＳＣデータベースに格納されたユーザ入力パラメータをＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラムとを含むことができる。入力パラメータは、ＭＳＣデータベースに既に以前に格納されたものとすることができ、一般指令は、ＯＥＭデータベースのスクリプトに収容することができる。装置及び方法は、各々がメッセージ待ち行列及びメッセージループを含む、プロセスサーバと通信する複数のプロセス制御サブシステムと、それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプとを更に含むことができ、かつ指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに通信を変換する言語変換器を利用し、レーザ及び作業ステージを含む群からの少なくとも１つのデバイスと通信するデバイスインタフェースを更に含むことができる。パルス毎にそれぞれの選択された狭い範囲の値内に維持されることを必要とする１組のパラメータで非常に狭い幅の非常に細長い光パルスビームを生成するパルスレーザＤＵＶ光源及び光学列を含むことができ、作業ステージ上に担持されて、加工物上の材料の結晶化のために加工物に照射する光を送出することができるパルスＤＵＶ加工物処理装置を開示し、これは、レーザコントローラと、作業ステージコントローラと、単一のスレッドとして又は複数の非再入可能スレッドとしてタスクを符号化するために別々のそれぞれのプロセスでそれぞれのタスクを実行するシステムコントローラとを含むことができる。それぞれのタスクは、各々が単一のスレッドとして単一のプロセス内のそれぞれのスレッドで実行されるコアタスクを含むことができる。各スレッドは、それぞれのタスクへのアクセスを連続的かつ非遮断的にするそれぞれのメッセージポンプを有することができる。メッセージポンプは、メッセージ待ち行列及びメッセージループを含むことができ、エラーを処理するシステムプロセッサを更に含むことができる。システムプロセッサメッセージは、メッセージポンプを使って処理することができる。パルス毎にそれぞれの選択された狭い範囲の値内に維持されることを必要とする１組のパラメータで非常に狭い幅の非常に細長い光パルスビームを生成するパルスレーザＤＵＶ光源及び光学列を含むことができ、作業ステージ上に担持されて、加工物上の材料の結晶化のために加工物に照射する光を送出することができるパルスＤＵＶ加工物処理装置を開示し、これは、レーザコントローラと、作業ステージコントローラと、一方がプロセスデバイスの各々とのデバイスインタフェースを含む少なくとも２つの別に機能するスレッドを利用するシステムデバイスマネージャにより制御される複数のプロセスデバイスとを含むことができる。２つの別に機能するスレッドは、それぞれのデバイスの全てに関連した制御スレッドと、それぞれのデバイスの全てに関連した診断スレッドとを含むことができる。各別々に機能するスレッドは、別々の通信チャンネルを含むことができる。システムコントローラは、デバイス型式とは独立した一般デバイス指令を利用することができる。デバイス指令は、高レベルアクションに対応することができる。装置及び方法は、プロセスサーバにユーザ指令を送る前にＭＳＣデータベースにパラメータとしてレシピ定義を格納するＧＵＩクライアントを含むことができ、かつメッセージ待ち行列及びメッセージループを更に含むことができる。装置及び方法は、各々が複数のプロセスデバイスのそれぞれの１つとの別々のデバイスインタフェースとして１つ又はそれよりも多くの別々に機能するスレッドを含む少なくとも２つの別々に機能するスレッドを含むことができる。少なくとも２つの別々に機能するスレッドは、それぞれのデバイスに関連したそれぞれの制御スレッドと、それぞれのデバイスに関連したそれぞれの診断スレッドとを含むことができる。各別々に機能するスレッドは、別々の通信チャンネルを含むことができる。システムコントローラは、デバイス型式とは独立した一般デバイス指令を利用することができる。デバイス指令は、高レベルアクションに対応することができる。
【０１８１】
開示する本発明の実施形態の態様によれば、細線ビームレーザアニールシステムの利用は、例えば、基板の処理においては、例えば、アモルファスシリコン層をアニールして多結晶シリコン層を形成するのに有用とすることができ、多結晶シリコン層においては、例えば、層内により良好な結晶、例えば、より長い結晶粒界を伴って薄膜トランジスタを形成するために、例えば、より高い性能レベルの薄膜トランジスタで薄膜トランジスタを小型化することができることは、当業者により理解されるであろう。これは、例えば、制御電子機器が、パネル自体の外側にあるのに対して、ディスプレイパネル内に組み込まれ、基板内に薄膜トランジスタを形成した、例えば、より明るいディスプレイ、いわゆる、システムオングラスディスプレイ（ＳＯＧ）を可能にすることができる。パネルは、例えば、ぶれを低減するために高解像度化及び応答時間の高速化のような他の性能強化策を用いて製造することができる。明らかに、レーザアニール薄膜トランジスタ多結晶シリコンパネルを製造する際のプロセス制御の強化は、これらの改良型パネルをもたらす一助になると考えられる。開示する本発明の態様による制御した種類の細線ビームレーザアニールを用いて有利に形成されるこのようなＴＦＴパネル及び有機発光ダイオード（ＯＬＥＤ）は、他の例えばＯＬＥＤ長寿命化と共に、安く、かつこのような改善した性能特性を伴って製造することができる。更に、収率が増大して、従って、より低コストで製造した改善したポリシリコンディスプレイパネルは、上述したもの及び例えばより良好な中小規模のディスプレイパネル、ＯＬＥＤにも必要とされる高い電流負荷での安定性改善のような現在利用されているアモルファスシリコンを主成分とするディスプレイパネルを凌ぐ多くの利点を有する。更に、開示する本発明の態様によるより良好なプロセス制御は、これらの恩典を付加するものである。
【０１８２】
レーザ出力が、非常に長い、例えば５００ｍｍよりも大きく、かつ非常に細い、例えば１０μｍ未満のビーム幅に光学的に形成される、ハイパワーの、例えば１０００Ｗを超えるエキシマレーザアニールのエキシマ、例えば、ＸｅＣｌ又はＸｅＦレーザアニールシステムは、大きな基板上でアモルファスアニールを行って上述の薄い有利なトランジスタ及びＯＬＥＤ結果をもたらす第３世代及びそれを超える優れた装置であると現在考えられている。レーザ細長細線ビームは、例えば、アモルファスシリコンの局所的領域を溶融することができ、アモルファスシリコンは、次に、隣接冷却領域から結晶化して、シードを形成し、大きな（長い）結晶は、ビーム及び基板を他方又は互いに対して移動させて結晶を相対運動方向に拡張し、その結果として、例えば、比較的均一かつ細長い長さで、他のプロセスを通じて利用可能なより小さい粒状ポリシリコン結晶よりも高い電子移動度を有する結晶を作り出すことにより達成することができる。細線ビームは、開示する本発明の態様により制御した結晶化機械内のパネル加工物の表面に沿って引き抜いた固体シード領域に隣接した小さな液化領域の連続的な生成を可能にする。このビーム幅は、より良好な結晶を作ることに加えて、単一通過でパネルをアニールし、同じくパネル収量を増大することも可能にすることができる。
【０１８３】
開示する本発明の実施形態の態様によれば、システムは、マスターシステムコントローラ（ＭＳＣ）サーバ、マスター分配モジュール（ＭＤＭ）、データシュート取得サービス（ＤＡＳ）サーバ、及びフィールドサービスエンジニア（ＦＳＥ）サーバを含むことができる主コントローラキャビネット内に収容することができる。これらは、診断のためにウィンドウ２００３ＯＳを実行するデュアルＰ４サーバ、例えば、３ＴＢのストレージスペースを有するストレージアレイ、Ｃｉｓｃｏスイッチ、及びＰＩＸファイアウォール、及びＬＡＮ接続のための１６ポートＬａｎｔｒｏｎｉｘのＴＣＰ／ＩＰコンバータと共に、例えば、８ＧＢのＲＡＭを有するデュアルＯｐｔｅｒｏｎサーバを使用して、制御のためのＣｅｎｔＯＳ（ＭＳＣ）及びデータ取得のためのＣｅｎｔＯＳ（ＤＡＳ）を実行して実施することができる。
【０１８４】
ＭＳＣ及びＤＡＳは、処理機器の様々なハードウエア要素（「デバイス」）、例えば、１２２０Ｗ、６ｋＨｚの「ＸｅＦ  ＤＵＶ」レーザ、例えば、能動ビーム作動モジュール及びビーム安定化モジュール及び能動発光体自動焦点制御を備えたビーム送出ユニット、ステージ精密モータコントローラ、例えば、モータコントローラ、例えば、温度、ビームエネルギ、及びビームプロフィールのための測定センサを含む投射光学器械モジュール（ＰＯＭ）、エンドユーザである客先が選択するものであり、かつアニールシステム／コントローラ製造業者には予め分るものではなく、かつ例えばＭＳＣ及びＤＡＳ及び「デバイス」がインタフェースで接続され、及び／又はそれによって稼働される他の機器、例えば電気系ユーティリティ及び流体ユーティリティ、及びマテリアルハンドラ、及び工場自動化ホストと通信することができる。
【０１８５】
開示する本発明の実施形態の態様によるコントローラは、いくつかの設計上の利点を提供する。システムは、高い利用可能性−２４−７−７のうちの１つである。コントローラは、例えば、制御されたデバイスにより処理される厳しいリアルタイム要件、すなわち、全体的な調整、制御、オペレータフィードバック、ＭＳＣにより処理されるデータ収集、及び複数の情報フロー経路、例えば、利用可能な機側オペレータ制御及び工場ホスト制御を用いて流通している。システムも、非常に適応性が高く、すなわち、例えば、あらゆる組のインテリジェントデバイスの制御及びモニタリング、及びデバイスの組の修正、及び／又は一部又は全部のモジュールに対してコントローラコードの本質的にあらゆる書き換え／再コンパイルを必要とせず、かつ全体的な書き換え又は再コンパイルのを必要とせずにデバイスの組の範囲での同じ機能性を保証するための異なるデバイスの置換への対応が可能である。
【０１８６】
デバイス指令は、コントローラコード内に組み込まれていない。それらは、性能上の理由から動的に格納しかつ取り込み、かつキャッシュに入れることができる。ＧＵＩデザインは、例えば、あらゆるタスク又はシステムレベルのデバイス又は他の構成に対してパラメータの数を制限するものではない。例えば、付加的なパラメータタスクは、例えば、ユーザインタフェース画面の修正を符号化しなくてもタスクに追加することができる。デバイスとのＴＣＰ／ＩＰ通信と共に、必要であれば、Ｌａｎｔｒｏｎｉｘを使用して、例えば、シリアル通信プロトコルを変換することができる。システム指令は、例えば、デバイスから応答を待っている時にシステムを又は例えば極めて重要な指令を調整している時にデバイスを例えば妨げたりしないように非同期で実行することができる。
【０１８７】
ソフトウエアの多くは、Ｃ＋＋のような使いやすいソフトウエア内で実施することができ、ＧＵＩは、十分に理解されて使いやすいＪＡＶＡ（登録商標）で実施することができる。制御及びデータ収集、例えばタスクは、例えばＰｏｓｔｇｒｅＳＱＬ及び同様の手続き型言語機能性のようなパラメータ化したスクリプト形式で格納することができる。タスクは、指令ライブラリセルなどを通じてデバイスにアクセス可能である。作業は、例えば、プロジェクト又はレシピを実行することにより、開示する本発明の実施形態の態様によるコントローラである処理システム上で行うことができる。プロジェクトは、例えばタスクを用いて、専用のバージョンのタスクを形成するレシピでシステムオペレータが作成することができる。実行時に、指令解釈プログラムは、例えば、タスクを構文解析するのに使用することができ、例えば、その結果としてデバイス指令が実行される。従って、制御論理は、コンパイルしたコードから動的データに移動させ、例えば、メモリに格納することができる。例えば、タスク実行中、タスクは、ＯＥＭスキーマからのものとすることができ、パラメータは、ＭＳＣスキーマからのものとすることができ、かつ指令解釈プログラムは、これらを使用して「デバイス」にデバイス指令を供給することができる。
【０１８８】
例えば、パラメータ化したスクリプト形式を有するＰｏｓｔｇｒｅＳＱＬは、例えば、システム挙動、例えば、接続タイムアウト、較正係数、及びデバイス有効化／無効化のユーザ制御を可能にすることができる全体的レベルの変数でユーザ制御式であるように構成することができる。ユーザは、定義及び有効化することができる。プロジェクト及びレシピは、タスク及び関連の並列及び許可を含め、プロジェクトレベルパラメータを含むことができる。使用する図表テンプレートも存在する場合がある。ＯＥＭに制御される態様としては、ブートストラップユーザ構成、ＧＵＩルックアンドフィール、例えば、色、タブ、ラベルなどを含むことができる。ジョブ実行は、ＯＥＭコンフィデンシャル（及び暗号化）タスク及びクラススクリプトにより制御することができる。内部設定としては、ＤＭＰ及びメッセージマッピングのためのルーティングテーブルを含むことができる。デバイス設定及び利用可能度は、構成、例えば、いわゆる「太字」リスト、ＮＦＬ−２−ＤＦ翻訳、及びデバイスリスト、例えば、動的に取り込むことができるドライバ共有オブジェクトを付したデバイス表を含むことができる。
【０１８９】
ステータスループデータは、特定の例えば比較的遅いデータ転送速度に制御することができる連続的にポーリングするループ内にある場合がある。別々のスレッド、例えば、デバイス当たりに１つを例えば時間「ｓｙｎｃ  ｔｈｒｅａｄ」により同期させることができる。作動の柔軟性に必要である場合がある多くの属性、例えば何百もの属性を例えば「属性−値」形式を用いて、例えば正規化値を使用して、例えばＰｏｓｔｇｒｅＳＱＬで格納することができる。ステータスループは、バッファ及び一括コピーし、かつ時間／「デバイス」により分割することができる。内蔵図表化及び報告特徴を使用して、制御されたレーザアニールシステム又は制御されている他の形式のシステムの作動をモニタすることができる。例えば、レーザアニール形式のシステムにおいては、システムの様々な地点でのレーザエネルギ及び関連の特性、ビームプロフィール、及び他の特性、ステージ位置及び測定位置、及びレーザアニールシステムを通した温度を図表化／報告することができる。データは、例えば比較的高いデータ転送速度で、例えば６ｋＨｚ又はそれよりも高く、かつ例えばレーザ属性ストリームでは約２４個のフィールド、及び測定ストリームでは約７０個のフィールドのような属性を用いてストリーミングすることができる。
【０１９０】
システムログ機能は、例えば、ＭＳＣ構成要素システムが、システム「デバイス」の多くから情報を受信することができる中央ロガーデーモンにログインすることを可能にすることができ、ロガーデーモンは、メッセージをバッファに入れ、例えば、ＰｏｓｔｒｅｇＳＱＬデータベースに書き込むことにより格納し、例えばＤＭＰを通じてそれらをＧＵＩに並列に送ることができる。ＧＵＩは、例えば、デバイス、時刻／日付、重大度などによりラブ・ログをフィルタリングすることを可能にし、かつ例えばデバイス、時刻／日付、重大度などにより発生を報告することができる。
【０１９１】
１つのデータベーススキーマ、例えばＯＥＭは、ブートストラッピングに使用することができ、別のデータベーススキーマは、ユーザ設定を重ね合わせるために使用することができ、例えば、アプリケーションデフォルトは、スキーマ設定に追加することができ、これは、ＭＳＣスキーマ設定がない状態で行うことができる。例えば、デバイスのタイムスタンプによる分割は、ステータス及びストリーミングデータに使用することができ、これは、例えば、データ保持の簡略化したかつ迅速な実施を可能にすることができる。ＯＥＭスキーマとＭＳＣスキーマの間にデータベースリンクが存在する場合があり、ＯＥＭスキーマとＭＳＣスキーマは、例えば、データ収集機能性及び制御機能性が互いに干渉しないことを保証するために分離することができるが、ＭＳＣスキーマ及びＯＥＭスキーマは、状況によっては、例えば、データベースリンク、すなわち、ｄｂｌｉｎｋを通じて、恐らくＤＡＳにより捕捉されたデータがＭＳＣ内で必要とされる時のように互いと通信する必要があるであろう。コントローラは、例えば、ＸＭＬ及びＨＭＡＣに向けて、機能性、例えばカスタムＣ拡張機能を有益に利用することができる。例えば、ＸＭＬメッセージは、ＤＭＰ内及びＧＵＩ内で利用することができ、ＨＭＡＣは、プロジェクト／レシピロッキングに使用することができる。
【０１９２】
中立言語フォーマットから「デバイス」フォーマットへの変換では、エンティティ−属性−値フォーマットを利用することができ、これを使用して、例えば、タスクスクリプトにより使用される一般指令から「デバイス」特定指令へのマッピングを行うことができる。これは、同じ機能又は類似の機能を実行するが、独自の固有の組の指令又は少なくとも何らかのそのような指令を有する別のデバイスに対する１組の指令を有することができる１つのデバイスの簡単な置換も可能にする。例えば、各々との間での非標準的な組の指令又は少なくとも何らかの非標準的な指令による異なる製造業者製の様々な異なる材料取り扱いロボットは、コントローラ及び材料処理システムに対して代替可能にすることができる。別の例として、追加された又は異なるモジュール及び従って指令を有することができるより新しい典型的なレーザを代わりに置くことができる。更に、「デバイス」間のように、一部の属性は共通である場合があるが、多くは、所定の「デバイス」に固有のものと考えられ、データベース編成は、機能は同じであるが、例えばデフォルト挙動が異なる別のものとの「デバイス」の交換を可能にし、「デバイス」の追加又は交換を簡素化する。
【０１９３】
デバイス変数は、以下のように、例えば表のリストの一部として、例えばＰｏｓｔｇｒｅＳＱＬにおいて表に含めることができる。
ｃｒｅａｔｅ  ｔａｂｌｅ  ｏｅｍ＿ｄｅｖｉｃｅ＿ｖａｒｉａｂｌｅ
（
ｄｅｖｉｃｅ−ｉｄ                    ｉｎｔ  ｎｏｔ  ｎｕｌｌ、
ｖａｒｉａｂｌｅ−ｎａｍｅ            ｔｅｘｔ  ｎｏｔ  ｎｕｌｌ、
ｖａｒｉａｂｌｅ＿ｌａｂｅｌ          ｔｅｘｔ、
ｖａｒｉａｂｌｅ＿ｕｏｍ              ｔｅｘｔ、
ｖａｘｉａｂｌｅ＿ｄａｔａ＿ｔｙｐｅ  ｔｅｘｔ  ｎｏｔ  ｎｕｌｌ、
ｖａｒｉａｂｌｅ＿ｔｙｐｅ            ｔｅｘｔ  ｎｏｔ  ｎｕｌｌ、
ｖａｒｉａｂｌｅ＿ｄｅｆａｕｌｔ      ｔｅｘｔ、
ｖａｒｉａｂｌｅ＿ｒｅｑｕｉｒｅｄ    ｃｈａｒ（１）  ｎｏｔ  ｎｕｌｌ、
ｖａｒｉａｂｌｅ＿ｖａｌｉｄａｔｏｒ  ｔｅｘｔ、
ｖａｘｉａｂｌｅ＿ｏｒｄｅｒ          ｉｎｔ、
ｖａｒｉａｂｌｅ＿ｌｉｓｔ            ｔｅｘｔ、
ｖａｒｉａｂｌｅ＿ｉｎｔｅｒｎａｌ    ｉｎｔ、
ｖａｒｉａｂｌｅ＿ｐｕｂｌｉｃ        ｉｎｔ  ｎｏｔ  ｎｕｌｌ）
）；
それは、更に以下のような表を含むことができる。
【０１９４】
（表）
2009540540.tif 000007
【０１９５】
変数はまた、例えば、同期スレッドを使用してデバイス間で結合させることができる。各デバイスは、独自のデータ収集スレッドを有することができるが、同期スレッドを使用して、例えばデータの相互相関を可能にすることができる。
データは、デバイスＩＤ、タイムスタンプ、ステータス名、ステータス値、及びステータスｕｏｍのリストを含むことができる特定の表の形成、例えば、ステータスログ、ｄａｓ＿ｓｔａｔｕｓ＿ｌｏｇを選択することにより選択することができる。特定のデバイスＩＤ及び選択した開始及び停止のタイムスタンプを利用して、選択した開始時刻タイムスタンプと停止タイムスタンプの間にステータスログを含む表を作成することができる。最後に、表は、印刷するか又は選択した値間のタイムスタンプと共にｓｔａｇｅ＿ＣＸ、ｓｔａｇｅ＿ＣＹ及びｓｔａｇｅ＿ＣＺのような選択した変数に対して記録済みのステータス値を示すＧＵＩ上に表示することができる。データは、例えば、レーザ出力エネルギと時間の例えば図表の形式でＧＵＩ上に表示することができる。デバイス及びタイムスタンプにより分割することができる正規化したフォーマットのデータを利用すると、比較的固定した組の属性及び高いデータ転送速度を提供することができる。データは、例えば、レーザ発射当たりに１つの記録の割合でストリーミングし、例えば、発射カウント数を同期することにより、デバイス間のデータのように固有の発射カウント数でタグ付けすることができる。
【０１９６】
上記で開示した本発明の実施形態の態様は、好ましい実施形態であることのみを意図しており、いかなる点においても開示した本発明の開示内容を限定するものではなく、特に、特定の好ましい実施形態だけに限定するものではないものとすることは、当業者によって理解することができる。開示した発明の実施形態の開示した態様には、当業者によって理解及び認めることができるような多くの変更及び修正を行うことができる。特許請求の範囲は、その範囲及び意味において、開示した本発明の実施形態の開示した態様だけではなく、当業者には明らかになると思われる均等物及び他の修正及び変更も包含するものとする。上述の開示した本発明の実施形態の開示かつ請求した態様に対する変更及び修正に加えて、他のものも実施することができると考えられる。
【０１９７】
「３５Ｕ．Ｓ．Ｃ．§１１２」を満足するために必要とされる詳細において本特許出願において説明しかつ例示した「ハイパワーレーザフラットパネル加工物処理システムコントローラ」の実施形態の特定の態様は、上述の実施形態の態様のあらゆる上述の目的、及び上述の実施形態の態様により又はその目的のあらゆる他の理由で又はその目的にために解決すべき問題を完全に達成することができるが、開示した本発明の上述の実施形態のここで説明した態様は、開示した本発明によって広く考察された内容を単に例示しかつ代表することは、当業者によって理解されるものとする。実施形態のここで説明しかつ主張する態様の範囲は、本明細書の教示内容に基づいて当業者に現在明らかであると考えられるか又は明らかになると考えられる他の実施形態を漏れなく包含するものである。本発明の「ハイパワーレーザフラットパネル加工物処理システムコントローラ」の範囲は、単独にかつ完全に特許請求の範囲によってのみ限定され、いかなるものも特許請求の範囲の詳細説明を超えるものではない。単数形でのこのような請求項における要素への言及は、解釈において、明示的に説明していない限り、このような要素が「１つ及び１つのみ」であることを意味するように意図しておらず、かつ意味しないものとし、「１つ又はそれよりも多い」を意味する意図とし、かつ意味するものとする。当業者に公知か又は後で公知になる実施形態の上述の態様の要素のいずれかに対する全ての構造的及び機能的均等物は、引用により本明細書に明示的に組み込まれると共に、特許請求の範囲によって包含されるように意図されている。本明細書及び／又は本出願の請求項に使用され、かつ本明細書及び／又は本出願の請求項に明示的に意味を与えられたあらゆる用語は、このような用語に関するあらゆる辞書上の意味又は他の一般的に使用される意味によらず、その意味を有するものとする。実施形態のいずれかの態様として本明細書で説明した装置又は方法は、それが特許請求の範囲によって包含されるように本出願において開示する実施形態の態様によって解決するように求められる各及び全て問題に対処することを意図しておらず、また必要でもない。本発明の開示内容におけるいかなる要素、構成要素、又は方法段階も、その要素、構成要素、又は方法段階が特許請求の範囲において明示的に詳細に説明されているか否かに関係なく、一般大衆に捧げられることを意図したものではない。特許請求の範囲におけるいかなる請求項の要素も、その要素が「〜のための手段」という語句を使用して明示的に列挙されるか又は方法の請求項の場合にはその要素が「作用」ではなく「段階」として列挙されていない限り、「３５Ｕ．Ｓ．Ｃ．§１１２」第６項の規定に基づいて解釈されないものとする。
【０１９８】
また、米国の特許法の準拠において、本出願人が、本出願の明細書に添付されたあらゆるそれぞれの請求項、おそらく一部の場合には１つの請求項だけにおいて説明した各発明の少なくとも１つの権能付与的かつ作用する実施形態を開示したことは、当業者によって理解することができる。本出願の長さ及び起草時間を切り詰め、かつ本特許出願を本発明者及び他の個人により読みやすくするために、本出願人は、開示する本発明の実施形態の態様の特徴／要素、開示する本発明の実施形態の作用、又は開示する本発明の実施形態の機能性を定義し、及び／又は開示する本発明の実施形態のあらゆる他の態様を説明する際に随時又は本出願を通して定義的な動詞（例えば、「である」、「をする」、「を有する」、又は「を含む」など）、及び／又は他の定義的な動詞（例えば、「生成する」、「引き起こす」、「サンプリングする」、「読み取る」、又は「知らせる」など）、又は動名詞（例えば、「使用すること」、「取ること」、「保つこと」、又は「製造すること」など）を使用した。あらゆるこのような定義的語又は語句などが、本明細書で開示する１つ又はそれよりも多くの実施形態のいずれかの態様、すなわち、特徴、要素、システム、サブシステム、構成要素、下位構成要素、プロセス、又はアルゴリズムの段階、又は特定の材料などを説明するのに使用されている場合は、常に、本出願人が発明及び主張したものの本発明の範囲を解釈するために、以下の制限的語句、すなわち、「例示的に」、「例えば、」、「例として」、「例示的に限り」、「例示としてのみ」などの１つ又はそれよりも多く又は全てによって先行し、及び／又は語句「の場合がある」、「とすることができる」、「の場合があるであろう」、及び「とすることができるであろう」などの１つ又はそれよりも多く又は全てを含んでいると読むべきである。全てのこのような特徴、要素、段階、及び材料などは、例え特許法の要件の準拠において本出願人が特許請求の範囲の本発明の実施形態のあらゆるこのような態様の権能付与的な例だけを開示したとしても、１つ又はそれよりも多くの開示した実施形態の可能な態様としてのみ、かつあらゆる１つ又はそれよりも多くの実施形態、又はあらゆる実施形態のあらゆる態様（部分又は段階）、及び／又は主張するような本発明の唯一の可能な実施形態の唯一の可能な例としてではなくそれを説明していると考えることができる。明示的かつ具体的に本出願又は本出願の遂行において説明されていない限り、本出願人は、あらゆる開示した実施形態の特定的な態様又は特許請求の範囲の本発明のあらゆる特定の開示した実施形態が、特許請求の範囲の発明又はあらゆるそのような請求項に説明されるあらゆる特徴又は要素を実行する１つ及び唯一の方法になると考えており、本出願人は、本特許出願の特許請求の範囲の発明のあらゆる開示した実施形態のあらゆる開示した態様の説明が、特許請求の範囲の本発明又はそのあらゆる態様、特徴、又は要素を実行する１つ及び唯一の方法であり、従って、特許請求の範囲の本発明の他の可能な実施例と共にあらゆるこのような開示した実施例を包含するのに十分に広範囲にわたるものであるあらゆる請求項をそれぞれそのような開示した実施形態のそのような態様、特徴、要素に限定するように解釈することができることを意図していない。本出願人は、独立請求項又は直接か間接かを問わず独立請求項の従属請求項に説明した特許請求の範囲の本発明のあらゆる態様、特徴、要素、段階、又は態様のような更なる詳細と共に、いずれかの請求項に従属する従属請求項を有するあらゆる請求項は、独立請求項の説明事項が他の実施例と共に更なる詳細を包含するのに十分に広範囲にわたるものであること、及び更なる詳細があらゆるそのような独立請求項で主張する態様、特徴、又は要素を実行する唯一の方法ではないことを意味するように解釈することができることを具体的に、明示的に、かつ明解に意図し、従って、あらゆるそのような従属請求項における態様、特徴、要素は、従属請求項に説明した更なる詳細のみを含むためにそれぞれの独立請求項においてこのような独立請求項のより広範囲な態様、特徴、又は要素を限定するように読まれないことも意図している。
【符号の説明】
【０１９９】
２０  サーバ
２２  ＯＥＭスキーマデータベース
２４  ＭＳＣスキーマデータベース
１０１  外部システム
【図１】
2009540540.tif 000008
【図２】
2009540540.tif 000009
【図３Ａ】
2009540540.tif 000010
【図３Ｂ】
2009540540.tif 000011
【図４】
2009540540.tif 000012
【図５】
2009540540.tif 000013
【図６】
2009540540.tif 000014
【図７】
2009540540.tif 000015
【図８】
2009540540.tif 000016
【図９】
2009540540.tif 000017
【図１０】
2009540540.tif 000018
【図１１】
2009540540.tif 000019
【図１２Ａ】
2009540540.tif 000020
【図１２Ｂ】
2009540540.tif 000021
【図１３】
2009540540.tif 000022
【図１４Ａ】
2009540540.tif 000023
【図１４Ｂ】
2009540540.tif 000024
【図１５】
2009540540.tif 000025
【図１６】
2009540540.tif 000026
【図１７】
2009540540.tif 000027
【図１８】
2009540540.tif 000028
【図１９】
2009540540.tif 000029
【図２０Ａ】
2009540540.tif 000030
【図２０Ｂ】
2009540540.tif 000031
【図２１】
2009540540.tif 000032
【図２２】
2009540540.tif 000033
【図２３】
2009540540.tif 000034
【図２４】
2009540540.tif 000035
【図２５】
2009540540.tif 000036
【図２６】
2009540540.tif 000037
【図２７】
2009540540.tif 000038
【図２８】
2009540540.tif 000039
【図２９】
2009540540.tif 000040
【図３０】
2009540540.tif 000041
【図３１】
2009540540.tif 000042
【図３２】
2009540540.tif 000043
【図３３】
2009540540.tif 000044
【図３４】
2009540540.tif 000045
【図３５】
2009540540.tif 000046
【図３６】
2009540540.tif 000047
【図３７】
2009540540.tif 000048
【図３８】
2009540540.tif 000049
【図３９】
2009540540.tif 000050
【図４０】
2009540540.tif 000051
【図４１】
2009540540.tif 000052
【図４２Ａ】
2009540540.tif 000053
【図４２Ｂ】
2009540540.tif 000054
【図４２Ｃ】
2009540540.tif 000055
【図４２Ｄ】
2009540540.tif 000056
【図４２Ｅ】
2009540540.tif 000057
【図４３Ａ】
2009540540.tif 000058
【図４３Ｂ】
2009540540.tif 000059
【図４３Ｃ】
2009540540.tif 000060
【図４４】
2009540540.tif 000061
【手続補正書】
【提出日】平成21年2月4日(2009.2.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
パルス毎にそれぞれの選択された狭い範囲の値内に維持されることを必要とする１組のパラメータで非常に狭い幅の非常に細長い光パルスのビームを生成するパルスレーザＤＵＶ光源及び光学列を含み、加工物上の材料の結晶化のために作業ステージ上に担持された該加工物を照射する光を送出するパルスＤＵＶ加工物処理装置であって、
レーザコントローラと、
作業ステージコントローラと、
顧客レシピ制御指令発生器からプロセスレシピ制御要求を受信して、制御信号を前記レーザコントローラ及び前記作業ステージコントローラに供給するシステムコントローラと、
を含み、該システムコントローラは、
データベース主導プロセスコントローラであって、
外部プロセスユーザインタフェースを通してユーザによって選択可能な一般プロセス指令段階を収容するデータベースを含む、前記プロセスコントローラ、
を含むことを特徴とする装置。
【請求項２】
ユーザからユーザへのプロセス制御カスタム化、
を更に含むことを特徴とする請求項１に記載の装置。
【請求項３】
前記外部プロセスユーザインタフェースを通じて選択されたプロセス指令段階をそれぞれの１つ又は複数の一般スクリプトに変換する解釈プログラム、
を更に含むことを特徴とする請求項１に記載の装置。
【請求項４】
前記外部プロセスユーザインタフェースを通じて選択されたプロセス指令段階をそれぞれの１つ又は複数の一般スクリプトに変換する解釈プログラム、
を更に含むことを特徴とする請求項２に記載の装置。
【請求項５】
ＯＥＭデータベースに格納されたタスクに基づいて該ＯＥＭデータベースからユーザによって選択可能な前記ユーザプロセス指令段階を該ユーザに対して特定する作業フローエンジン、
を更に含むことを特徴とする請求項１に記載の装置。
【請求項６】
ＯＥＭデータベースに格納されたタスクに基づいて該ＯＥＭデータベースからユーザによって選択可能な前記ユーザプロセス指令段階を該ユーザに対して特定する作業フローエンジン、
を更に含むことを特徴とする請求項２に記載の装置。
【請求項７】
ＯＥＭデータベースに格納されたタスクに基づいて該ＯＥＭデータベースからユーザによって選択可能な前記ユーザプロセス指令段階を該ユーザに対して特定する作業フローエンジン、
を更に含むことを特徴とする請求項３に記載の装置。
【請求項８】
ＯＥＭデータベースに格納されたタスクに基づいて該ＯＥＭデータベースからユーザによって選択可能な前記ユーザプロセス指令段階を該ユーザに対して特定する作業フローエンジン、
を更に含むことを特徴とする請求項４に記載の装置。
【請求項９】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項１に記載の装置。
【請求項１０】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項２に記載の装置。
【請求項１１】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項３に記載の装置。
【請求項１２】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項４に記載の装置。
【請求項１３】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項５に記載の装置。
【請求項１４】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項６に記載の装置。
【請求項１５】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項７に記載の装置。
【請求項１６】
前記レーザコントローラ及び前記作業ステージコントローラを含む群からデバイスのコントローラへの指令を実行するプロセスサーバと、
前記ユーザからのレシピ定義を入力して前記プロセスサーバにユーザ指令を送るＧＵＩクライアントと、
を更に含むことを特徴とする請求項８に記載の装置。
【請求項１７】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項９に記載の装置。
【請求項１８】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項１０に記載の装置。
【請求項１９】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項１１に記載の装置。
【請求項２０】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項１２に記載の装置。
【請求項２１】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項１３に記載の装置。
【請求項２２】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項１４に記載の装置。
【請求項２３】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項１５に記載の装置。
【請求項２４】
前記ＧＵＩクライアントは、
前記レーザ及び作業ステージを含む群からの少なくとも１つのデバイスのステータス、及び／又は前記加工物上の前記結晶化のプロセスのステータスを表示するディスプレイ、
を含む、
ことを更に含むことを特徴とする請求項１６に記載の装置。
【請求項２５】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項１７に記載の装置。
【請求項２６】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項１８に記載の装置。
【請求項２７】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項１９に記載の装置。
【請求項２８】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項２０に記載の装置。
【請求項２９】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項２１に記載の装置。
【請求項３０】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項２２に記載の装置。
【請求項３１】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項２３に記載の装置。
【請求項３２】
前記ＧＵＩクライアントは、インタフェースを通じて製造実行システムインタフェースと通信する、
ことを更に含むことを特徴とする請求項２４に記載の装置。
【請求項３３】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項２５に記載の装置。
【請求項３４】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項２６に記載の装置。
【請求項３５】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項２７に記載の装置。
【請求項３６】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項２８に記載の装置。
【請求項３７】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項２９に記載の装置。
【請求項３８】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項３０に記載の装置。
【請求項３９】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項３１に記載の装置。
【請求項４０】
前記ＯＥＭによって供給された読取専用タスク定義を収容するＯＥＭ読取専用データベースと、
ユーザ提供レシピ定義を収容するマスターシステムコントローラ読取書込データベースと、
を更に含むことを特徴とする請求項３２に記載の装置。
【請求項４１】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項３３に記載の装置。
【請求項４２】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項３４に記載の装置。
【請求項４３】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項３５に記載の装置。
【請求項４４】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項３６に記載の装置。
【請求項４５】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項３７に記載の装置。
【請求項４６】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項３８に記載の装置。
【請求項４７】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項３９に記載の装置。
【請求項４８】
前記ＯＥＭデータベースは、プロセス制御中に前記プロセスサーバによって使用可能なマクロ又はスクリプトの形式で一般タスク定義を収容し、
前記ＭＳＣデータベースに格納されたユーザ入力パラメータを前記ＯＥＭデータベースからの一般指令と組み合わせる指令解釈プログラム、
を更に含むことを特徴とする請求項４０に記載の装置。
【請求項４９】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４１に記載の装置。
【請求項５０】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４２に記載の装置。
【請求項５１】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４３に記載の装置。
【請求項５２】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４４に記載の装置。
【請求項５３】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４５に記載の装置。
【請求項５４】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４６に記載の装置。
【請求項５５】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４７に記載の装置。
【請求項５６】
前記入力パラメータは、前記ＭＳＣデータベースに以前に格納されたものであり、前記一般指令は、前記ＯＥＭデータベースのスクリプトに収容される、
ことを更に含むことを特徴とする請求項４８に記載の装置。
【請求項５７】
前記プロセスサーバと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４１に記載の装置。
【請求項５８】
前記プロセスサーバと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４２に記載の装置。
【請求項５９】
前記プロセスサーバと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４３に記載の装置。
【請求項６０】
前記プロセスサーバと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４４に記載の装置。
【請求項６１】
前記プロセスサーバと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４５に記載の装置。
【請求項６２】
ドライバコントローラと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４６に記載の装置。
【請求項６３】
ドライバコントローラと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４７に記載の装置。
【請求項６４】
ドライバコントローラと通信し、各々がメッセージ待ち行列及びメッセージループを含む複数のプロセス制御サブシステムと、
前記それぞれのサブシステムへのアクセスを順番に並べる各メッセージ待ち行列及びメッセージループに関連したメッセージポンプと、
を更に含むことを特徴とする請求項４８に記載の装置。
【請求項６５】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項４９に記載の装置。
【請求項６６】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項５０に記載の装置。
【請求項６７】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項５１に記載の装置。
【請求項６８】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項５２に記載の装置。
【請求項６９】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項５３に記載の装置。
【請求項７０】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項５４に記載の装置。
【請求項７１】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項５５に記載の装置。
【請求項７２】
前記レーザ及び前記作業ステージを含む群からの少なくとも１つのデバイスと通信し、該通信を前記指令解釈プログラム内で利用された中立言語フォーマットからデバイス特定のデバイス言語フォーマットに変換する言語変換器を利用するデバイスインタフェース、
を更に含むことを特徴とする請求項５６に記載の装置。
【請求項７３】
パルス毎にそれぞれの選択された狭い範囲の値内に維持されることを必要とする１組のパラメータで非常に狭い幅の非常に細長い光パルスのビームを生成するパルスレーザＤＵＶ光源及び光学列を含み、加工物上の材料の結晶化のために作業ステージ上に担持された該加工物を照射する光を送出するパルスＤＵＶ加工物処理装置であって、
レーザコントローラと、
作業ステージコントローラと、
タスクを単一スレッドとして又は複数の非再入可能スレッドとして符号化するために、別のそれぞれのプロセスでそれぞれのタスクを実行するシステムコントローラと、
を含むことを特徴とする装置。
【請求項７４】
前記それぞれのタスクは、各々が単一スレッドとして単一プロセス内のそれぞれのスレッドで実行されるコアタスクを含む、
ことを更に含むことを特徴とする請求項７３に記載の装置。
【請求項７５】
各スレッドが、それぞれのタスクへのアクセスを連続的かつ非遮断的にするそれぞれのメッセージポンプを有する、
ことを更に含むことを特徴とする請求項７３に記載の装置。
【請求項７６】
各スレッドが、それぞれのタスクへのアクセスを連続的かつ非遮断的にするそれぞれのメッセージポンプを有する、
ことを更に含むことを特徴とする請求項７４に記載の装置。
【請求項７７】
前記メッセージポンプは、
メッセージ待ち行列及びメッセージループ、
を含む、
ことを更に含むことを特徴とする請求項７５に記載の装置。
【請求項７８】
システムプロセッサが、エラーを処理する、
ことを更に含むことを特徴とする請求項７３に記載の装置。
【請求項７９】
システムプロセッサが、エラーを処理する、
ことを更に含むことを特徴とする請求項７４に記載の装置。
【請求項８０】
システムプロセッサが、エラーを処理する、
ことを更に含むことを特徴とする請求項７５に記載の装置。
【請求項８１】
前記システムコントローラは、エラーを処理する、
ことを更に含むことを特徴とする請求項７６に記載の装置。
【請求項８２】
前記システムコントローラは、エラーを処理する、
ことを更に含むことを特徴とする請求項７７に記載の装置。
【請求項８３】
前記システムプロセッサのメッセージが、前記メッセージポンプを使って処理される、
ことを更に含むことを特徴とする請求項７８に記載の装置。
【請求項８４】
前記システムプロセッサのメッセージが、前記メッセージポンプを使って処理される、
ことを更に含むことを特徴とする請求項７９に記載の装置。
【請求項８５】
前記システムプロセッサのメッセージが、前記メッセージポンプを使って処理される、
ことを更に含むことを特徴とする請求項８０に記載の装置。
【請求項８６】
システムプロセッサのメッセージが、前記メッセージポンプを使って処理される、
ことを更に含むことを特徴とする請求項８１に記載の装置。
【請求項８７】
システムプロセッサのメッセージが、前記メッセージポンプを使って処理される、
ことを更に含むことを特徴とする請求項８２に記載の装置。
【請求項８８】
パルス毎にそれぞれの選択された狭い範囲の値内に維持されることを必要とする１組のパラメータで非常に狭い幅の非常に細長い光パルスのビームを生成するパルスレーザＤＵＶ光源及び光学列を含み、加工物上の材料の結晶化のために作業ステージ上に担持された該加工物を照射する光を送出するパルスＤＵＶ加工物処理装置であって、
レーザコントローラと、
作業ステージコントローラと、
１つがプロセスデバイスの各々とのデバイスインタフェースを含む少なくとも２つの別々に機能するスレッドを利用してシステムデバイスマネージャによって制御される複数のプロセスデバイスと、
を含むことを特徴とする装置。
【請求項８９】
前記２つの別々に機能するスレッドは、前記それぞれのデバイスの全てに関連した制御スレッド及び該それぞれのデバイスの全てに関連した診断スレッドを含む、
ことを更に含むことを特徴とする請求項８８に記載の装置。
【請求項９０】
各別々に機能するスレッドが、別々の通信チャンネルを含む、
ことを更に含むことを特徴とする請求項８８に記載の装置。
【請求項９１】
各別々に機能するスレッドが、別々の通信チャンネルを含む、
ことを更に含むことを特徴とする請求項８９に記載の装置。
【請求項９２】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項８８に記載の装置。
【請求項９３】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項８９に記載の装置。
【請求項９４】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項９０に記載の装置。
【請求項９５】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項９１に記載の装置。
【請求項９６】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項９２に記載の装置。
【請求項９７】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項９３に記載の装置。
【請求項９８】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項９４に記載の装置。
【請求項９９】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項９５に記載の装置。
【請求項１００】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項９に記載の装置。
【請求項１０１】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項１０に記載の装置。
【請求項１０２】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項１１に記載の装置。
【請求項１０３】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項１２に記載の装置。
【請求項１０４】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項１３に記載の装置。
【請求項１０５】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項１４に記載の装置。
【請求項１０６】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項１５に記載の装置。
【請求項１０７】
前記ＧＵＩクライアントは、ユーザ指令を前記プロセスサーバに送る前に、ＭＳＣデータベースにレシピ定義をパラメータとして格納する、
ことを更に含むことを特徴とする請求項１６に記載の装置。
【請求項１０８】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項５７に記載の装置。
【請求項１０９】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項５８に記載の装置。
【請求項１１０】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項５９に記載の装置。
【請求項１１１】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項６０に記載の装置。
【請求項１１２】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項６１に記載の装置。
【請求項１１３】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項６２に記載の装置。
【請求項１１４】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項６３に記載の装置。
【請求項１１５】
メッセージ待ち行列及びメッセージループ、
を更に含むことを特徴とする請求項６４に記載の装置。
【請求項１１６】
前記少なくとも２つの別々に機能するスレッドは、１つ又はそれよりも多くの別々に機能するスレッドを各々が前記複数のプロセスデバイスのそれぞれのものとの別々のデバイスインタフェースとして含む、
ことを更に含むことを特徴とする請求項８８に記載の装置。
【請求項１１７】
前記２つの別々に機能するスレッドは、前記それぞれのデバイスに関連したそれぞれの制御スレッド及び該それぞれのデバイスに関連したそれぞれの診断スレッドを含む、
ことを更に含むことを特徴とする請求項１１６に記載の装置。
【請求項１１８】
各別々に機能するスレッドが、別々の通信チャンネルを含む、
ことを更に含むことを特徴とする請求項１１６に記載の装置。
【請求項１１９】
各別々に機能するスレッドが、別々の通信チャンネルを含む、
ことを更に含むことを特徴とする請求項１１７に記載の装置。
【請求項１２０】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項１１６に記載の装置。
【請求項１２１】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項１１７に記載の装置。
【請求項１２２】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項１１８に記載の装置。
【請求項１２３】
システムコントローラが、デバイス型式とは独立した一般デバイス指令を利用する、
ことを更に含むことを特徴とする請求項１１９に記載の装置。
【請求項１２４】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項１２０に記載の装置。
【請求項１２５】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項１２１に記載の装置。
【請求項１２６】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項１２２に記載の装置。
【請求項１２７】
データベース主導プロセスサーバ、
を含むことを特徴とする装置。
【請求項１２８】
前記デバイス指令は、高レベルアクションに対応している、
ことを更に含むことを特徴とする請求項１２３に記載の装置。
【国際調査報告】
2009540540.tif 000062