(57)【要約】【課題】データ転送負荷を軽減したソフトウエアが動作する制御装置および信号解析システムを与える。【解決手段】制御装置１’と入力信号解析システム８の双方に、メモリマップトファイルによりデータ転送を行うMMFソフトウエア１０、１１を設け、制御ソフトウエア４’および解析ソフトウエア９の負荷を軽減させる。また、MMFソフトウエア１０においてカウンタ情報をメモリマップトファイルに挿入しMMFソフトウエア１１にて該情報を観察することで通信異常を検出する。【選択図】図１
2006244491.tif 000002
【特許請求の範囲】
【請求項１】
入力信号データを受信し、処理して信号を出力する制御ユニットと、
前記入力信号データのデータ解析領域の情報をデータブロック化し制御信号データブロックとして転送する制御信号データブロック化ユニットと、
転送された前記制御信号データブロックを基にして信号解析用の解析信号データブロックを作成する解析信号データブロック化ユニットと、
前記解析信号データブロックに基づき前記入力信号データを解析する信号解析ユニットと、
を含む信号解析システム。
【請求項２】
請求項１に記載の信号解析システムであって、前記制御信号データブロック化ユニットと前記解析信号データブロック化ユニットは、共通のデータブロック化アプリケーションソフトを備えている、ところの信号解析システム。
【請求項３】
請求項１に記載の信号解析システムであって、前記制御信号データブロック化ユニットは、転送された前記制御信号データブロックを、前記解析信号データブロック化ユニット内で一旦ファイルに書き込み、前記解析信号データブロック化ユニットは、前記ファイルから前記解析信号データブロックの読み取りを行う、ところの信号解析システム。
【請求項４】
請求項１に記載の信号解析システムであって、前記制御信号データブロックと前記解析信号データブロックはメモリマップトファイルである、ところの信号解析システム。
【請求項５】
請求項１に記載の信号解析システムであって、前記制御信号データブロックは、前記入力信号データの情報とカウンタ情報を持っている、ところの信号解析システム。
【請求項６】
請求項５に記載の信号解析システムであって、前記カウンタ情報は、前記制御信号データブロック化ユニットにより付与され、前記制御信号データブロックが作成される毎にインクリメントする、ところの信号解析システム。
【請求項７】
請求項５に記載の信号解析システムであって、前記カウンタ情報は、前記制御信号データブロック内に少なくとも１箇所に配置され、前記解析信号データブロック化ユニットは前記カウンタ情報の変化を検出し、それにより前記制御信号データブロック化ユニットと前記解析信号データブロック化ユニットとの通信異常を検知する、ところの信号解析システム。
【請求項８】
請求項５に記載の信号解析システムであって、前記カウンタ情報は、前記制御信号データブロックの先頭と末尾の２箇所に配置され、前記解析信号データブロック化ユニットは前記先頭と前記末尾のカウンタ情報の変化を検出し、それにより前記制御信号データブロック化ユニットと前記解析信号データブロック化ユニットとの通信異常を検知する、ところの信号解析システム。
【請求項９】
請求項８に記載の信号解析システムであって、前記先頭と前記末尾のカウンタ情報は同一変数である、ところの信号解析システム。
【請求項１０】
請求項１に記載の信号解析システムであって、前記制御信号データブロック化ユニット及び前記解析信号データブロック化ユニットは、一定期間毎にコールされる、ところの信号解析システム。
【請求項１１】
信号入力部と、
請求項１に記載の信号解析システムであって、前記信号入力部からの入力信号データが前記制御ユニットに入力される、ところの信号解析システムと、
前記信号解析システムの前記制御ユニットからの出力信号により制御される制御手段と、
から成る製造装置用制御システム。
【請求項１２】
請求項１１に記載の製造装置用制御システムであって、前記製造装置は半導体製造装置であり、前記制御手段は、反応室内部の温度制御手段、圧力制御手段、ガス流量制御手段、及び搬送ロボット制御手段の少なくとも一つから成る、ところの製造装置システム。
【請求項１３】
入力信号データを受信する工程と、
前記入力信号データのデータ解析領域の情報から制御信号データブロックを作成し転送する工程と、
転送された前記制御信号データブロックを基にして信号解析用の解析信号データブロックを作成する工程と、
前記解析信号データブロックに基づき前記入力信号データを解析する工程と、
から成る信号解析方法。
【請求項１４】
請求項１３に記載の方法であって、前記解析信号データブロックの作成は、転送された前記制御信号データブロックを、一旦ファイルに書き込み、前記ファイルから前記解析信号データブロックを読み取ることで行う、ところの方法。
【請求項１５】
請求項１３に記載の方法であって、前記制御信号データブロックと前記解析信号データブロックはメモリマップトファイルである、ところの方法。
【請求項１６】
請求項１３に記載の方法であって、前記制御信号データブロックには、前記入力信号データの情報とカウンタ情報が付与される、ところの方法。
【請求項１７】
請求項１６に記載の方法であって、前記カウンタ情報は、前記制御信号データブロックが作成される毎にインクリメントされる、ところの方法。
【請求項１８】
請求項１６に記載の方法であって、前記カウンタ情報は、前記制御信号データブロック内の少なくとも１箇所に配置され、それから作成された前記解析信号データブロックにおける前記カウンタ情報の変化を検出し、それにより通信異常を検知する、ところの方法。
【請求項１９】
請求項１６に記載の方法であって、前記カウンタ情報は、前記制御信号データブロックの先頭と末尾の２箇所に配置され、それから作成された前記解析信号データブロックにおける前記カウンタ情報の変化を検出し、それにより通信異常を検知する、ところの方法。
【請求項２０】
請求項１９に記載の方法であって、前記先頭と前記末尾のカウンタ情報は同一変数である、ところの方法。
【請求項２１】
請求項１３に記載の方法であって、前記制御信号データブロックの作成工程及び前記解析信号データブロックの作成工程は一定期間毎にコールされる、ところの方法。
【請求項２２】
請求項１３に記載の方法であって、前記入力信号データは、半導体製造装置における反応室内の温度、圧力、ガス流量、及び搬送ロボット座標の少なくとも一つから成る、ところの方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、信号解析システムに関し、特にデータ転送負荷を軽減したソフトウエアが動作する制御装置および装置解析システムに関する。
【背景技術】
【０００２】
従来、半導体製造装置は図１０に示すような制御装置を使って制御されてきた。図１０において、制御装置１は半導体製造装置の動作を制御するものであり、反応室内部の圧力、温度などを検知、測定するセンサまたは測定計器などの信号入力手段２、入力されたアナログ信号を数値化するアナログ−デジタル信号変換器３、数値化された入力信号から制御結果を算出する制御ソフトウエア４、制御結果から実際に制御を行う制御手段５から構成される。制御ソフトウエア４は、データ領域出力部１４、出力制御部１７及び変換ドライバ１２を含む。符号６は従来の入力信号解析システム、符号７は信号解析システム６の内部で動作する解析ソフトウエアを示す。解析ソフトウエア７は、変換ドライバ１２、データ領域入力部１８及び解析部１９を含む。
【０００３】
半導体製造の現場では、メンテナンスあるいは故障解析などの目的で、センサまたは測定計器などの信号入力手段２の信号を、本来の目的である制御手段の制御とは別に、解析したいというニーズがある。
【０００４】
そこで、各センサまたは測定計器２とX-Yレコーダ等の解析機器を直接配線で接続するという方法がある。しかし、この方法の場合、解析したいセンサまたは測定機器の数が増えるほど、配線作業は煩雑になり、配線に要する時間も増大する、という問題がある。
【０００５】
この問題を解決するために、制御装置１が半導体製造装置用の制御装置である場合、マニュファクチュアリング・エグゼキューション・システム(Manufacturing Execution System : MES)と呼ばれるシステムを使用する方法がある。このシステムを使用すれば、複数のセンサまたは測定計器の信号を通信ケーブル１本のみで、ソフトウエア的に制御装置の外部に転送することができる。MESは図１０の解析システム６に相当し、半導体製造装置に付帯するシステムとして、例えば、以下の文献に記載されているように、世界的に広く知られる標準的なシステムである。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
MESを使用する場合、センサまたは測定計器などの信号入力手段２の信号はアナログ−デジタル信号変換器３で数値データに変換され、数値データは符号の制御ソフトウエア４内のデータ領域に一旦置かれた後、制御ソフトウエア４内の変換ドライバによりデータ変換されて、符号６の解析システム内で動作する解析ソフトウエア７に転送されていた。
【０００７】
MESは広く普及しているシステムとして、多くの機能を有しており、以下のような特長を持つ。
・データ転送方式は送信メッセージに対して必ず受信確認のメッセージを返信するというような堅牢な方式である。
・メッセージデータの構造はリスト構造になっており、メッセージ送信側と受信側でリスト構造を解析する通信インタフェースまたは変換ドライバが必ず必要になる。
【０００８】
MES６は上記のような特長を持つがゆえに、センサまたは測定計器などの信号入力手段２の信号解析に使用する場合、データ量が増大すると、符号の変換ドライバの負荷が大きくなり、制御ソフトウエア４および解析システム６の動作に影響を与えてしまい、最悪の場合は制御装置あるいは信号解析システムが停止してしまうという問題があった。
【課題を解決するための手段】
【０００９】
上記問題点に鑑み、本発明のある態様によれば、制御装置側と解析システム側の両方で転送データブロック化を行い、入力信号データを共有するシステムにより、大量の入力信号データを高速に解析システムに転送することができる。また、本発明のある態様では、転送データブロックにカウンタ情報を入れることで簡単にデータの信頼性を維持し、装置の安定性を確保することができる。また、ある態様では、カウンタ情報を一つの転送データブロックの先頭と末尾に入れることで、転送データブロックの転送毎における信頼性のみならず、一つの転送データブロック中における信頼性も確保することができる。
【００１０】
本発明のある態様によれば、入力信号データを受信し、処理して出力する制御ユニットと、
該入力信号データのデータ解析領域の情報をデータブロック化し制御信号データブロックとして転送する制御信号データブロック化ユニットと、
転送された該制御信号データブロックを基にして信号解析用の解析信号データブロックを作成する解析信号データブロック化ユニットと、
該解析信号データブロックに基づき該入力信号データを解析する信号解析ユニットと、
を備えた信号解析システムが提供される。
【００１１】
上記の態様は少なくとも以下の態様を更に含むことができる。
【００１２】
該制御信号データブロック化ユニットと該解析信号データブロック化ユニットは、共通のデータブロック化アプリケーションソフトを備えている信号解析システム。
【００１３】
該制御信号データブロック化ユニットは、転送された該制御信号データブロックを、該解析信号データブロック化ユニット内で一旦ファイルに書き込み、該解析信号データブロック化ユニットは、該ファイルから該解析信号データブロックの読み取りを行う信号解析システム。
【００１４】
該制御信号データブロックと該解析信号データブロックはメモリマップトファイルである信号解析システム。
【００１５】
該制御信号データブロックは、該入力信号データの情報とカウンタ情報を持っている信号解析システム。
【００１６】
該カウンタ情報は、該制御信号データブロック化ユニットにより付与され、該制御信号データブロックが作成される毎にインクリメントする信号解析システム。
【００１７】
該カウンタ情報は、該制御信号データブロック内に少なくとも１箇所に配置され、該解析信号データブロック化ユニットは該カウンタ情報の変化を検出し、それにより該制御信号データブロック化ユニットと該解析信号データブロック化ユニットとの通信異常を検知する信号解析システム。
【００１８】
該カウンタ情報は、該制御信号データブロックの先頭と末尾の２箇所に配置され、該解析信号データブロック化ユニットは該先頭と該末尾のカウンタ情報の変化を検出し、それにより該制御信号データブロック化ユニットと該解析信号データブロック化ユニットとの通信異常を検知する信号解析システム。
【００１９】
該先頭と該末尾のカウンタ情報は同一変数である信号解析システム。
【００２０】
該制御信号データブロック化ユニット及び該解析信号データブロック化ユニットは、一定期間毎にコールされる信号解析システム。
【００２１】
上記において、ある態様におけるそれぞれの要素は、他の態様においても適用することができ、また、その他の要素と組み合わせて適用することもできる。
【００２２】
また、本発明の別の態様によれば、信号入力部と、
請求項１に記載の信号解析システムであって、上記制御ユニットが該信号入力部から入力信号データを受信するところの信号解析システムと、
該信号解析システムの該制御ユニットからの出力信号により制御される制御手段と、
を備えた製造装置用制御システムが提供される。
【００２３】
上記の製造装置が、例えば、半導体製造装置である場合、制御手段は、反応室内の温度調節手段、圧力調節手段、及びガス流量制御手段、搬送ロボット座標調節手段の少なくとも一つを含む。しかし、本発明はこれに限定されるものではない。
【００２４】
更に、本発明は方法にも適用することができ、ある態様によれば、入力信号データを受信する工程、
該入力信号データのデータ解析領域の情報から制御信号データブロックを作成し特定する工程、
該制御信号データブロックを基にして信号解析用の解析信号データブロックを作成する工程、
該解析信号データブロックに基づき該入力信号データを解析する工程、
を包含する信号解析方法が提供される。
【００２５】
上記の態様は少なくとも以下の態様を更に含むことができる。
【００２６】
該解析信号データブロックの作成は、転送された該制御信号データブロックを、一旦ファイルに書き込み、該ファイルから該解析信号データブロックを読み取ることで行う信号解析方法。
【００２７】
該制御信号データブロックと該信号解析用転送データブロックはメモリマップトファイルである信号解析方法。
【００２８】
該制御信号データブロックには、該入力信号データの情報とカウンタ情報が付与される信号解析方法。
【００２９】
該カウンタ情報は、該制御信号データブロックが作成される毎にインクリメントする信号解析方法。
【００３０】
該カウンタ情報は、該制御信号データブロック内に少なくとも１箇所に配置され、それから作成された該解析信号データブロックにおける該カウンタ情報の変化を検出し、それにより通信異常を検知する信号解析方法。
【００３１】
該カウンタ情報は、該制御信号データブロックの先頭と末尾の２箇所に配置され、それから作成された該解析信号データブロックにおける該カウンタ情報の変化を検出し、それにより通信異常を検知する信号解析方法。
【００３２】
該先頭と該末尾のカウンタ情報は同一変数である信号解析方法。
【００３３】
該制御信号データブロックの作成工程及び該解析信号データブロックの作成工程は一定期間毎にコールされる信号解析方法。
【００３４】
上記入力信号データは、例えば、半導体製造装置の場合、反応室内部の温度、圧力、ガス流量、搬送ロボット座標データの少なくとも一つを含む。
【００３５】
本発明の少なくとも一つの実施態様においては上記の目的、効果のうち一つあるいはそれ以上が達成されるものであるが、本発明は上記目的、効果に限定されるものではなく、また、本発明の実施態様においても上記目的、効果の全てが達成される必要はない。
【００３６】
上記したように、本発明のある実施態様によれば、制御装置に付帯される信号解析システムにおいて、従来装着されていたデータ変換ドライバを除去することができ、制御装置側および信号解析システム側のデータ送信にかかる処理負荷が軽減され、制御装置が動作している実時間での安定した信号解析が可能になる。
【００３７】
また、本発明のある実施態様では転送データブロックに配置するカウンタ情報により、データブロック毎の通信異常の発生、またはデータブロック更新途中での通信異常の発生を検知することができる。
【００３８】
上記の手法により、制御装置から及び信号解析システムへ転送されるデータの品質を保証することができる。
【発明を実施するための最良の形態】
【００３９】
本発明のある態様においては、制御装置側と解析システム側に信号データを共有することができるアプリケーションソフトをそれぞれに配置し、それぞれのメモリブロックを使って転送データブロックを指定することにより、データの送信を行う。ファイル情報をメモリブロックとして扱うことができるため、通信におけるフォーマットを指定する必要がなく、転送データブロックを指定するハンドルまたはオブジェクトの名前を特定することで制御装置側と解析システム側で転送データブロックを作成することができ、それをそれぞれに備わった所定のプログラムでメモリブロックとして使うことができる。これによりデータ送信の負荷が軽減する。
【００４０】
上記のようなデータ送信システムは特定のファイルオペレーティングシステムでなくとも様々なオペレーティングシステムを使って実現することができる。使用するオペレーティングシステムのアプリケーション・プログラミング・インタフェース（Application Programming Interface : API）を使用して構築することができる。
【００４１】
APIにはさまざまな設計モデルがあり、特定のものや一般的なものがいろいろとあり、特に限定されるものではないが、例えば、Microsoft社のオペレーティングシステムにより提供されるAPI、例えば、Windows（登録商標）のWin32APIを使用することができるが、それに限らず、BIOSコールインタフェース、CORBA、UNIX（登録商標）、Jave2Platform、UPNP（ユニバーサルプラグアンドプレイ）等を適宜使用することができる。
【００４２】
制御装置側と解析システム側はAPIを使ってコネクトすることができ、それらの間のデータ送信は転送データブロック形態で行うことができる。「ファイル」は通常ディスクに収納されており、その形態で送信することはファイル中にある実際に使用する情報の他に通信フォーマットに関するデータも通信しなければならず、データ量が増え、送信、受信の負担が増える。これに対し、転送データブロックは仮想メモリにマップされており、メモリブロックとして使うことができる。マッピングは例えばWin32を使った場合、CreateFileMapping、MapViewOfFile、UnmapViewOfFileの機能を使ってWindows NT（登録商標） pagefileをメモリマップトファイル（Memory-mapped file：  MMF）として使うことができる。なお、本明細書において「データブロック」またはMMFを単に「ファイル」ということがある。
【００４３】
MMFはマイクロソフトのAPIでなくても機能し、たとえばLINUX（商標）でも同様の機能が提供されている。
【００４４】
MMF以外にも、SOCKET、DDE、PIPE、DCOM、OLE等によっても実現することができる。
【００４５】
MMFは、アドレス空間を予約し、この空間に物理的ストレージをマッピングすることができる。ファイルがマッピングされたら、プログラムはファイルの全体がメモリに存在するかのようにそれにアクセスすることができる。なお、MMFはディスクにすでに存在するファイルを使うほか、メモリブロックに存在する転送データブロックを使うこともできる。従って、ある態様では、制御装置側ではディスクにある入力信号データからMMFを作成し、解析システム側では該MMFからMMFを作成することができ、解析システム側における該MMFの指定は該MMFが作成されたときに作成されるストリング（ハンドル）により行うことができる。よって、解析システム側では該ストリングを基に制御装置側の該MMFをアドレス空間にマッピングしMMFを作成することができる。解析システム側の解析プログラムは元のファイル情報をメモリブロックとして使用することができる。
【００４６】
本発明はこれらに限定されるものではないが、例えば、Win32を使ったMMFの機能は以下の通りである（ Dan Appleman による“Visual Basic Programmer’s Guide to the Win32 API” by SAMS, 1999, at 980を参照。CreateFileMapping:  ファイルマッピングオブジェクトを作成する。 FlushViewOfFile:  ファイルマッピングに対するすべての変更が書き込まれたことを保証する。MapVieOfFile/MapVieOfFileEx:  ファイルマッピングオブジェクトをカレント処理のアドレス空間内にマッピングする。OpenFileMapping:  存在するファイルマッピングオブジェクトを開く。UnmapViewOfFile:  カレント処理のアドレス空間からファイルマッピングオブジェクトをアンマッピングする。）
このように、ある態様によれば、メモリマップトファイルソフトウエア（「MMFソフトウエア」という）を制御装置と、信号解析に特化した解析システム（半導体製造装置の付帯システムとしてはEquipment Engineering System : EESとして知られる）の両方に追加して、従来の変換ドライバまたは通信インタフェースを除去し、簡便にデータ転送の負荷を軽減させ、制御装置が動作している実時間での信号の解析が可能な、安定した制御ソフトウエアおよび解析システムを提供することができる。例えば、使用するCPUやソフトウエアの作り方などの条件によって、処理速度は変わるが、従来のMESでは例えば５００バイトのデータを転送するには３００ｍｓ程度掛かるが、MMFを使ったある態様では１００ｍｓ以下で転送することができる。
【００４７】
以下、制御装置側と信号解析システム側にはメモリを共有できるシステムとして、Microsoftのオペレーティングシステムにより提供されるAPIを使ったMMFの態様について説明するが、本発明はそれに限定されるものではない。
【００４８】
まず、制御装置側には入力信号データをディスクに書き込むファイル化ユニットが備えられている。制御装置側には更にディスクに収納されたファイルデータをアドレス空間にマッピングしMMFを作成するMMFソフトウエア（「MMF書き込みソフトウエア」という）が備えられている。該MMF書き込みソフトウエアではMMFに対応するハンドルも作成される。次に、信号解析システム側には、制御装置側のアドレス空間にマップされ書き込まれたMMFを、該ハンドルをもとにして解析システム側のアドレス空間にマッピングしMMFを作成するMMFソフトウエア（「MMF読み取りソフトウエア」という）が備えられている。更に、解析システム側には該読み取られたMMFを使ってデータ解析を行う解析ソフトウエアが備えられている。また、MMF書き込みソフトウエアにはMMFにカウンタ情報を追加するソフトも含まれており、MMF読み取りソフトウエアには該カウンタ情報を観察するソフトウエアも含まれている。上記した相違以外はMMF書き込みソフトウエアとMMF読み取りソフトウエアは基本的に同一のソフトウエアで構成することができる。
【００４９】
なお、上記の態様ではファイル化ユニットが備えられているが、MMF書き込みソフトウエアはファイルからだけでなく、メモリ領域からもMMFを作成することができるので、ファイル化ユニットは書き込みソフトウエア（MMF書き込みソフトウエアに限らない）の機能により排除してもよい。その場合は、制御ソフトウエアにおけるメモリ領域（データ領域）からデータ解析領域の情報をデータブロック化すればよい。
【００５０】
カウンタ情報の例を以下に示すが、これに限定されるものではない。例えば、MMF書き込みソフトウエアが、信号のデータをデータブロック化する際に、ファイルのどこか少なくとも一箇所に、ソフトウエアのループによりインクリメントされるようなカウンタ情報を配置し、MMF読み取りソフトウエアはそのカウンタ情報を連続的に観察する。そこで、カウンタがある時点から変化がなければ、何らかの通信異常が発生していることが検知できる。同様に、MMF書き込みソフトウエアが、信号のデータをデータブロック化する際に、ファイルの最初と最後に、ソフトウエアのループによりインクリメントされるようなカウンタ情報を配置し、MMF読み取りソフトウエアはその２つのカウンタ情報を観察する。そこで、２つのカウンタが異なる値であれば、ファイルの更新途中でデータが転送されたことが検知できる。上記２つの手法により、制御装置から及び信号解析システムへ転送されるデータの品質を保証することができる。
【００５１】
なお、MMF書き込みソフトウエアとMMF読み取りソフトウエアは一定期間ごとに連続してコールされるようにし（APIを介して関数設定をすればよい）、所望により起動期間を設定することができる。これにより、制御装置から解析システムに信号のデータを連続的に転送することができる。
【００５２】
MMF書き込みおよび読み取りソフトウエアは、Microsoftのオペレーティングシステムにより提供されるAPIにより実現することができる。
【００５３】
以下、図面を参照して、本発明の実施の形態を詳細に説明するが、本発明はこれら実施の形態に限定されるものではない。
【００５４】
図１は、本発明の実施の形態における制御装置と信号解析システムの一構成例を示す。図１において、図１０の従来の半導体製造装置用制御装置と実質的に異なる部分は、半導体製造装置用制御装置１’内で動作するMMF書き込みソフトウエア１０及び信号解析に特化した解析システム８内で動作するMMF読み取りソフトウエア１１である。
【００５５】
即ち、半導体製造装置は、半導体製造装置用制御装置１’と解析システム８を含み、半導体製造装置用制御装置１’は、信号入力装置２、それに続くアナログ−デジタル信号変換器３、該アナログ−デジタル信号変換器３からの入力信号データを入力し制御手段５へ制御信号を出力すると共にMMF書き込みソフトウエア１０へデータを出力する制御ソフトウエア４’、制御手段５、及び該MMF書き込みソフトウエア１０から成る。制御ソフトウエア４’は、制御信号を出力する出力制御部１７’と、入力信号データから利用するデータ領域を定め、出力制御部１７’及びMMF書き込みソフトウエア１０へ出力するデータ領域出力部１４’を含む。さらに、制御ソフトウエア４’は、解析したデータ領域をディスクに収納するファイル化ユニット（図示せず）も含む。
【００５６】
MMF書き込みソフトウエア１０は、ファイル化ユニットで作成された実ファイル（ディスク上のファイル）を基にして、データブロック４０を作成する（ファイル化ユニットがない場合は制御ソフトウエアのメモリ領域からデータブロックを作成する）。一方、MMF読み取りソフトウエア１１は、該書き込み側のデータブロック４０を基にして、データブロック４１を作成する。データブロック４０とデータブロック４１とは中身は同じであるが、物理的には別のものである。なお、このようにしてファイルを実際には転送することなく、メモリマップファイルを利用することにより、データの共有を図ることができる。解析ソフトウエア９のプログラムは、データブロック４１を利用してデータ解析をすることができる。
【００５７】
図１はデータ転送の概念を示した図である。典型的には、制御装置１’側と解析システム８側は異なるシステム、異なるPCで構成されてネットワークで接続されているが、ある態様では、異なるシステム間でデータを転送するための準備処理を実施する。図７、図８はその一例を示す模式図である。説明のために概念化されており、また過度に簡略化されている。これらの図は本発明を制限するものではない。
【００５８】
この例はマイクロソフト社のAPIを利用したMMFの例であるが、異なるシステム間でデータブロック転送できる態様であればどのような形態であってもよく、また、どのようなAPIを使ってもよい。
【００５９】
まず、制御装置側PCと解析システム側PCで共通に利用できるファイル（実ファイル）を解析システム側PCのHDDに作成する。共有できる実ファイルを解析システム側PCに設けているので、制御装置側からのデータはデータブロックの形で解析システム側に転送することができる。即ち、図７で、制御装置側のMMF書き込みソフトウエア１０と、解析システム側のMMF読み取りソフトウエア１１が利用できる実ファイル４３は解析システム側PCに作成される。これにより、MMF書き込みソフトウエア１０で該実ファイル４３への書き込みがデータブロックの転送により実施でき、また、MMF読み取りソフトウエア１１は該実ファイル４３からそのままデータブロックを読み取ることができる。
【００６０】
該実ファイルの作成は、MMF書き込みソフトウエア１０か、MMF読み取りソフトウエア１１のいずれでも実施することができ、どちらか先に起動した方が実ファイルを作成することができる（なお、ファイルの作成はCreateFile関数等で実施することができるが、各ソフトウエアの関数、フローチャートは後述する）。なお、準備段階では該実ファイルには何のデータも入っていない。
【００６１】
次に、図８に示したように、実ファイル４３を各システム（PC）のアドレス空間にデータブロックとしてマップする。これにより、実ファイル４３とデータブロック４０、データブロック４１が関連付けられ（同期させ）、データブロック４０の実ファイル４３への書き込み、実ファイル４３からデータブロック４１への読み取りができるようになる。
【００６２】
なお、この準備処理はMMF機能の起動時に一度のみ実施し、既にファイルが存在している場合は、この準備処理を再度実施する必要はない。その場合CreateFile関数はファイルをオープンする機能をする。
【００６３】
準備処理の後は、転送処理を実施する。図９はその一例を示す模式図である。説明のために概念化されており、また過度に簡略化されている。これらの図は本発明を制限するものではない。
【００６４】
まず、MMF書き込みソフトウエア１０が制御ソフトウエア（ファイル化ユニット）によりファイル化されているデータ領域における情報、たとえば「ABCDE」、を書き込み側PCのアドレス空間にデータブロックA（４０）として設定する（これは後述するようにFlushViewOfFile関数等を使って実施することができる）。この際に、ある態様では、例えば、先頭カウンタ「０」と末尾カウンタ「０」を設定し、その結果、データブロックAには「０“ABCDE”０」が設定される（カウンタのフローチャートも後述する）。次に、データブロックAは解析システム側PCに作成されている実ファイル４３にMMF書き込みソフトウエアにより転送される。MMF読み取りソフトウエア１１は実ファイル４３に転送されたデータブロックAの情報「０“ABCDE”０」を自己（解析システム側PC）のアドレス空間に設定されているデータブロックB（４１）に設定することで、該データ「０“ABCDE”０」を解析システム側で利用することができるようになる。上記の処理はMMF機能により実施することができ、結果的に、データブロックAと同じデータがデータブロックBに出現するということができる。
【００６５】
上記のようにある態様では、転送データブロックの前後に更新カウンタ（例えば０から２５５）を付け、MMF書き込みソフトウエアはデータを更新する毎にデータブロックAの現在のカウンタ値を増加させるようにする。MMF読み取りソフトウエアは、データブロックB内のカウンタ値が更新されているかを確認することで、新しいデータかどうかを判断することができる。また、データブロックの前後にカウンタをつけることで、一回に転送されたデータブロック内に異常がないか確認することができる。
【００６６】
上記の転送処理は所望のインターバルで定期的に実施されるように関数を設定することができる。なお、解析ソフトウエアはデータブロックBの情報をメモリ上の情報として利用することができるが、データブロックBの情報を別途、ファイル化してもよい。
【００６７】
なお、図１の上記のような枠組みは概念的な枠組みであり、物理的な構成を示すものではない。出力制御部１７’を制御ソフトウエア４’の外に配置してもよく、また、MMF書き込みソフトウエア１０を制御ソフトウエア４’の中に含ませてもよい。但し、MMFは制御ソフトウエアと別個にオペレートされることが好ましく、それにより制御ソフトウエアに負担を掛けずにデータブロック転送が可能となる。
【００６８】
なお、入力信号としては、半導体製造装置では、例えば、温調器からの温度情報、リアクタ内の圧力データ、マスフローコントローラのガス流量、搬送ロボットの座標データ等が挙げられる。半導体製造装置以外では、例えば液晶製造装置において、入力信号として圧力、温度、ガス流量等が挙げられる。また、磁気ディスク製造装置において、入力信号として、スパッタ法の場合はプラズマ出力等、ゾルゲル法の場合は温度、回転数、液量などが挙げられる。
【００６９】
図１で、MMF書き込みソフトウエア１０とMMF読み取りソフトウエア１１はMicrosoft社のオペレーティングシステム上で動作するアプリケーションであり、例えば、Windows95（登録商標）やWindows XP（登録商標）などにも含まれている。また、両方ともMicrosoft社のオペレーティングシステムが提供するAPIを使用している。
【００７０】
制御ソフトウエアがファイル化ユニットを備えている場合は、該ファイル化ユニットは制御ソフトウエア４’のデータ領域出力部１４’から解析したいデータ部分を指定し、ファイル化（ディスクに収納）する。ファイル化されたデータは、規定の周期で定期的にMMF書き込みソフトウエア１０によりMMF化される。MMF化される際にオブジェクトがクリエイトされ、アドレス空間における場所が指定される。オブジェクトは具体的にはハンドル（先頭ポインタ）あるいはストリング等である。
【００７１】
解析システム８は、MMF読み取りソフトウエア１１及び解析ソフトウエア９を含む。解析ソフトウエア９は、データ領域入力部１８’及び解析部１９’を含む。なお、図１の上記のような枠組みは概念的な枠組みであり、物理的な構成を示すものではない。解析部１９’を解析ソフトウエア９の外に配置してもよく、また、MMF読み取りソフトウエア１１を解析ソフトウエア９の中に含ませてもよい。但し、MMFは解析ソフトウエアと別個にオペレートされることが好ましく、それにより解析ソフトウエアに負担を掛けずにファイル転送が可能となる。
【００７２】
制御装置側でMMF書き込みソフトウエア１０により作成されたMMFは、解析システム側でMMF読み取りソフトウエア１１により該オブジェクトにより特定され、アドレス空間にマッピングされてMMFが作成される。これにより、制御装置側のファイル化ユニットで作成されたファイルデータ（ファイル化ユニットがない場合はメモリ上のデータ）は解析システム側に転送されたことになる（「ファイルの転送」という）。MMF読み取りソフトウエア１１により読み取られたデータ（MMF）は、解析ソフトウエア９のデータ領域入力部１８’に格納される。
【００７３】
なお、ある態様においては、MMF書き込みソフトウエア１０とMMF読み取りソフトウエア１１は、下記APIの関数の引数が異なるだけで、実現形態はどちらも基本的に図２、図３および図４で示されるものである。
【００７４】
図２、図３および図４はMMF書き込みおよび読み取りソフトウエアの一実施例を示すが、本発明を限定するものではない。
【００７５】
図２は、MMF方式でファイルをオープンするMMF Openサブルーチンである。ステップS２１は上記APIのCreateFIle関数であり、対象となるファイルをオープンする。ここでステップS２２の判断において、ファイルオープンが成功したら次ステップS２３に進み、失敗したらステップS２８においてサブルーチンの返り値RtnにFALSEをセットし、サブルーチンを終了する。ステップS２３は上記APIのCreateFileMapping関数であり、対象となるファイルにファイルマッピングオブジェクトを作成する。
【００７６】
ここでステップS２４の判断において、オブジェクトの作成が成功したらステップS２５に進み、失敗したらステップS２８においてサブルーチンの返り値RtnにFALSEをセットし、サブルーチンを終了する。ステップS２５は上記APIのMapViewOfFile関数であり、対象ファイルのマッピング領域を指定し、データを対象となるファイルに書き込む。ここでステップS２６の判断において、ファイル領域の先頭のポインタの取得が成功すれば、ステップS２８においてサブルーチンの返り値RtnにTRUEをセットし、サブルーチンを終了する。失敗したらステップS２８においてサブルーチンの返り値RtnにFALSEをセットし、サブルーチンを終了する。
【００７７】
図３はMMF方式でファイルをクローズするMMF Closeサブルーチンである。ステップS３１は上記APIのUnmapViewOfFile関数であり、図２のMMF Open関数で指定されたファイルマッピングを解除する。ここでステップS３２の判断において、ファイルのポインタ指定が解除できれば、次ステップS３３に進み、失敗したらステップS３８においてサブルーチンの返り値RtnにFALSEをセットし、サブルーチンを終了する。ステップS３３は上記APIのCloseHandle関数であり、図２のMMF Open関数で指定されたファイルマッピングオブジェクトを破棄する。ここでステップS３４の判断において、オブジェクトの破棄が成功したらステップS３５に進み、失敗したらステップS３８においてサブルーチンの返り値RtnにFALSEをセットし、サブルーチンを終了する。ステップS３５でもう一度CloseHandle関数をコールし、図２のMMF Open関数でオープンしたファイルをクローズする。
【００７８】
ここでステップS３６の判断において、ファイルのクローズが成功すれば、ステップS３７においてサブルーチンの返り値RtnにTRUEをセットし、サブルーチンを終了する。失敗したらステップS３８においてサブルーチンの返り値RtnにFALSEをセットし、サブルーチンを終了する。
【００７９】
図４はMMFソフトウエアのメイン関数である。ステップS４０の開始ステップに続き、ステップS４１でMMF Openサブルーチンをコールする。このMMF Openサブルーチンについては、前記図２を用いて説明した通りである。ステップS４２でMMF Openサブルーチンの返り値がTRUEであるかFALSEであるかを判定する。返り値がTRUEであったら、ステップS４３に進み、返り値がFALSEであったら、ステップS４９まで進む。次にステップS４３で、変数Counterに０をセットする。ステップS４４の判断はソフトウエア終了のトリガーが入っているかどうかの確認である。トリガーが入っていれば、ステップS４９に行く。トリガーが入っていなければ、ステップS４５に行く。ステップS４５は上記APIのFlushViewOfFile関数であり、ファイルの書き込みを行う。
【００８０】
なお、このAPIのFlushViewOFFile関数はMMF書き込みソフトウエア１０のみに必要であり、MMF読み取りソフトウエア１１では必要ない。次に、ステップS４６の判断でFlushViewOfFile関数の返り値がTRUEであるかFALSEであるかを判定する。返り値がTRUEであったら、ステップS４７に進み、返り値がFALSEであったら、ステップS４３まで戻る。ステップS４７では、変数Counterをインクリメントする。ステップS４８の判断では、変数Counterの値が固定値INTERVALを超えたかどうかが判断される。INTERVALを超えた場合は、ステップS４３まで戻り、再度ファイルの書き込みを行う。すなわち、固定値INTERVALはファイル書き込み周期の設定値である。INTERVALを超えていない場合は、ステップS４７まで戻り、変数Counterを再度インクリメントする。終了トリガーが入った場合に進むステップS４９は、前記図３を用いて説明した、MMF Closeサブルーチンである。ここでファイルをクローズし、メイン関数を終了する。
【００８１】
以上より、本実施例で実現されたMMFソフトウエアのファイルマッピング、オープン、クローズの各処理はMicrosoft社のオペレーティングシステムのファイル入出力部で管理される。したがって、制御装置１’の制御ソフトウエア４’や解析システム８の解析ソフトウエア９に負担をかけずに安定したデータ転送を実現することができる。
【００８２】
さらに、MMFソフトウエアによるファイル転送でのデータの品質を保証する方法として、MMF書き込みソフトウエア１０とMMF読み取りソフトウエア１１の間で転送されるファイルに、ファイルの書き込みごとにインクリメントされるカウンタ情報を付加する方法がある。カウンタ情報は、図４のMMFソフトウエアのメイン関数の中の変数Counterを使用すると良い。なお、上記のようなカウンタのインクリメントはMMF書き込みソフトウエア１０にあればよく、MMF読み取りソフトウエア１１にはなくてもよい。
【００８３】
図５にカウンタ情報付加の一例を示す。これは転送データブロック１５の先頭にカウンタ情報を付加するものである。カウンタ情報は、データブロックの転送ごとにインクリメントされるので、これをMMF読み取りソフトウエア１１で、連続的に観察する。もしここで、ある一定の回数、カウンタ情報が変化しなければ、通信ケーブルまたは、MMF書き込みソフトウエア１０に何らかの異常が発生し、カウンタ情報の更新が止まってからのデータには信頼性が無いと判断することができる。
【００８４】
また、図６にカウンタ情報付加の別の例を示す。これは転送データブロック１５の先頭と末尾にカウンタ情報を付加するものである。２つのカウンタ情報は同一の変数を参照することが好ましい。もしここで、MMF読み取りソフトウエア１１が、データブロックの先頭と末尾のカウンタ情報が異なる状態を検出したならば、そのデータブロックは、書き込み途中で転送されたものであるので、データの信頼性は無いと判断することができる。
【００８５】
以上より、MMFソフトウエアのデータブロック転送通信方式にカウンタ情報を付加することにより、データの信頼性を保証することができる。
【００８６】
上記好適実施例では、MMFソフトウエアが動作する制御装置として半導体製造装置用の制御装置を例に説明が為された。しかし、本発明のデータ転送の負荷を軽減したシステムを適用する対象となる制御装置は、半導体製造装置用の制御装置に限定されるものではない。他に、センサおよび測定機器の信号が入力される制御装置であれば、例えば液晶製造装置または磁気ディスク製造装置用の制御装置であってもよい。
【００８７】
以上、本発明の実施態様について説明したが、本発明は以下に記載する態様を包含する。
【００８８】
１）制御装置への入力信号データを信号解析システムに転送するためのソフトウエアを備えた制御装置と信号解析システムであって、
前記ソフトウエアは、
制御装置から信号解析システムへと、データブロックを転送する方式によりデータを転送することを特徴とする制御装置と信号解析システム。
【００８９】
２）上記１）に記載の制御装置と信号解析システムにおいて、
前記ソフトウエアは、
制御装置から信号解析システムへと、入力信号データの情報とカウンタ情報を持つデータブロックを転送する方式によりデータを転送することを特徴とする制御装置と信号解析システム。
【００９０】
３）上記１）に記載の制御装置と信号解析システムにおいて、
前記ソフトウエアは、
メモリマップトファイル方式によりデータを転送することを特徴とする制御装置と信号解析システム。
【００９１】
４）上記２）に記載の制御装置と信号解析システムにおいて、
前記カウンタ情報は、
前記転送データブロック内に少なくとも１箇所に配置され、制御装置と信号解析システムとの通信異常を検知することを特徴とする制御装置と信号解析システム。
【００９２】
５）上記２）に記載の制御装置と信号解析システムにおいて、
前記カウンタ情報は、
前記転送データブロックの先頭と末尾の２箇所に配置され、制御装置と信号解析システムとのデータブロック転送において、データブロック書き込みの途中で転送されたデータブロックを検知することを特徴とする制御装置と信号解析システム。
【図面の簡単な説明】
【００９３】
【図１】図１は、本発明のある実施態様における制御装置と信号解析システムの一構成例を示す模式図である。
【図２】図２は、本発明のある実施態様における制御装置と解析システムの内部で動作するMMFソフトウエアのMMF Openサブルーチンの機能を示すフローチャートである。
【図３】図３は、本発明のある実施態様における制御装置と解析システムの内部で動作するMMFソフトウエアのMMF Closeサブルーチンの機能を示すフローチャートである。
【図４】図４は、本発明のある実施態様における制御装置と解析システムの内部で動作するMMFソフトウエアのメイン関数の機能を示すフローチャートである。
【図５】図５は、本発明のある実施態様におけるデータ転送方式の転送データブロックの一構成例を示す図である。
【図６】図６は、本発明のある実施態様におけるデータ転送方式の転送データブロックの図５とは別の構成例を示す図である。
【図７】図７は、本発明のある態様におけるデータ転送のための準備処理を示す模式図である。
【図８】図８は、本発明のある態様におけるデータ転送のための準備処理を示す模式図である。
【図９】図９は、本発明のある態様のおけるデータ転送処理を示す模式図である。
【図１０】図１０は、半導体製造装置を例にした従来の制御装置と信号解析システムの概要を示す図である。
【図１】
2006244491.tif 000003
【図２】
2006244491.tif 000004
【図３】
2006244491.tif 000005
【図４】
2006244491.tif 000006
【図５】
2006244491.tif 000007
【図６】
2006244491.tif 000008
【図７】
2006244491.tif 000009
【図８】
2006244491.tif 000010
【図９】
2006244491.tif 000011
【図１０】
2006244491.tif 000012