(57)【要約】【課題】【解決手段】基板処理システムのガス供給システムのためのソフトウェアエミュレーションシステムは、入出力バスおよびエミュレータバスを備える。入出力バスアダプタは、データパケットを基板処理システムのシステムコントローラから入出力バスおよびエミュレータバスのいずれかに送信するように構成されたスイッチを備える。エミュレータバスと通信するガス供給システムエミュレータは、データパケットを入出力バスアダプタからエミュレータバスを通じて受信し、相互接続するガス供給システムの複数のハードウェア構成要素のソフトウェアベースのエミュレーションを実行するように構成されている。複数のハードウェア構成要素は、１つ以上のソフトウェアモデルを用いてモデル化され、ガス源と、弁およびマスフローコントローラの少なくとも１つとを含む。【選択図】図３Ｂ
2021535626.tif 000002
【特許請求の範囲】
【請求項１】
基板処理システムのガス供給システムのためのソフトウェアエミュレーションシステムであって、
入出力バスと、
エミュレータバスと、
データパケットを前記基板処理システムのシステムコントローラから前記入出力バスおよび前記エミュレータバスのいずれかに送信するように構成されたスイッチを含む入出力バスアダプタと、
前記エミュレータバスと通信するガス供給システムエミュレータであって、
前記入出力バスアダプタから前記エミュレータバスを通じて前記データパケットを受信し、
相互接続する前記ガス供給システムの複数のハードウェア構成要素のソフトウェアベースのエミュレーションを実行するように構成された、ガス供給システムエミュレータと、を備え、
前記複数のハードウェア構成要素は、１つ以上のソフトウェアモデルを用いてモデル化され、ガス源と、弁およびマスフローコントローラの少なくとも１つと、を含む、ソフトウェアエミュレーションシステム。
【請求項２】
請求項１に記載のソフトウェアエミュレーションシステムであって、
前記ガス供給システムエミュレータは、前記１つ以上のソフトウェアモデル、前記複数のハードウェア構成要素を定義する構成データ、および、前記複数のハードウェア構成要素間の接続を定義するネットリストを用いてエミュレーションを実行するガスシミュレーションエンジンを備える、ソフトウェアエミュレーションシステム。
【請求項３】
請求項１に記載のソフトウェアエミュレーションシステムであって、
前記ガス供給システムエミュレータは、前記ガスシミュレーションエンジンを管理するガスシミュレーションエンジンマネジャを備える、ソフトウェアエミュレーションシステム。
【請求項４】
請求項２に記載のソフトウェアエミュレーションシステムであって、
前記ガスシミュレーションエンジンマネジャは、前記システムコントローラのプロセス制御アプリケーションとインタフェースをとって、前記構成データおよび前記ネットリストを生成する、ソフトウェアエミュレーションシステム。
【請求項５】
請求項２に記載のソフトウェアエミュレーションシステムであって、
前記ガスシミュレーションエンジンは、テストログファイルを選択的に生成する、ソフトウェアエミュレーションシステム。
【請求項６】
請求項２に記載のソフトウェアエミュレーションシステムであって、
前記ガス供給システムエミュレータによって実行されたエミュレーションは、前記システムコントローラの動作またはコーディングを変更することなく実行される、ソフトウェアエミュレーションシステム。
【請求項７】
請求項１に記載のソフトウェアエミュレーションシステムであって、
前記１つ以上のソフトウェアモデルの少なくとも１つは、マスフローコントローラをシミュレートし、出力流量と流量設定点との比較に基づいて複数の出力関数から１つを選択するマスフローコントローラモデルを含む、ソフトウェアエミュレーションシステム。
【請求項８】
請求項７に記載のソフトウェアエミュレーションシステムであって、
前記マスフローコントローラモデルは、前記出力流量が前記流量設定点を中心とする所定範囲内であるときは第１の関数を用い、前記出力流量が前記所定範囲未満であるときは第２の関数を用い、前記出力流量が前記所定範囲より大きいときは第３の関数を用いる、ソフトウェアエミュレーションシステム。
【請求項９】
請求項８に記載のソフトウェアエミュレーションシステムであって、
前記マスフローコントローラモデルは、前記第１の関数が動作するときにノイズを選択的に加えるノイズ発生器を備える、ソフトウェアエミュレーションシステム。
【請求項１０】
請求項１に記載のソフトウェアエミュレーションシステムであって、
前記１つ以上のソフトウェアモジュールの少なくとも１つは、通常エミュレーションモードおよび少なくとも１つの故障エミュレーションモードを含む、ソフトウェアエミュレーションシステム。
【請求項１１】
基板処理システムのガス供給システムをテストするための方法であって、
前記基板処理システムのシステムコントローラから受信したデータパケットを、入出力バスおよびエミュレータバスのいずれかに送信する工程と、
前記データパケットを前記エミュレータバスから受信し、相互接続する前記ガス供給システムの複数のハードウェア構成要素のソフトウェアベースのエミュレーションを実行する工程と、
１つ以上のソフトウェアモデルを用いて前記複数のハードウェア構成要素をモデル化する工程と、を含み、
前記複数のハードウェア構成要素は、ガス源と、弁およびマスフローコントローラの少なくとも１つとを含む、方法。
【請求項１２】
請求項１１に記載の方法であって、さらに、
前記１つ以上のソフトウェアモデル、前記複数のハードウェア構成要素を定義する構成データ、および、前記複数のハードウェア構成要素間の接続を定義するネットリストに基づいてエミュレーションを実行する工程を含む、方法。
【請求項１３】
請求項１２に記載の方法であって、さらに、
前記システムコントローラのプロセス制御アプリケーションとインタフェースをとって、前記構成データおよび前記ネットリストを生成する工程を含む、方法。
【請求項１４】
請求項１２に記載の方法であって、さらに、
テストログファイルを選択的に生成する工程を含む、方法。
【請求項１５】
請求項１２に記載の方法であって、さらに、
前記システムコントローラの動作またはコーディングを変更することなく前記エミュレーションを実行する工程を含む、方法。
【請求項１６】
請求項１１に記載の方法であって、
前記１つ以上のソフトウェアモデルの少なくとも１つは、ハードウェアマスフローコントローラをシミュレートし、出力流量と流量設定点との比較に基づいて複数の出力関数から１つを選択するマスフローコントローラモデルを含む、方法。
【請求項１７】
請求項１６に記載の方法であって、さらに、
前記出力流量が前記流量設定点を中心とする所定範囲内であるときは第１の関数を用い、前記出力流量が前記所定範囲未満であるときは第２の関数を用い、前記出力流量が前記所定範囲より大きいときは第３の関数を用いる工程を含む、方法。
【請求項１８】
請求項１７に記載の方法であって、さらに、
前記第１の関数が動作するときにノイズを選択的に加えるノイズ発生器を用いる工程を含む、方法。
【請求項１９】
請求項１１に記載の方法であって、
前記１つ以上のソフトウェアモジュールの少なくとも１つは、通常エミュレーションモードおよび少なくとも１つの故障エミュレーションモードを含む、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願の相互参照］
本願は、２０１８年９月４日出願の米国特許出願第１６／１２０，８４６号に対する優先権を主張する。上記出願の全ての開示は、参照として本明細書に援用される。
【０００２】
本開示は基板処理システムに関し、特に、基板処理システムのガス供給システムにおけるハードウェア構成要素のためのソフトウェアエミュレータに関する。
【背景技術】
【０００３】
本明細書に記載の背景技術の説明は、本開示の内容を一般的に提示するためである。現在名前が挙げられている発明者の発明は、本背景技術欄、および出願時の先行技術に該当しない説明の態様において記載される範囲で、本開示に対する先行技術として明示的にも黙示的にも認められない。
【０００４】
基板処理システムは、半導体ウエハなどの基板のエッチング、堆積、および／または、他の処理を実施するのに用いられてよい。基板上で実施されうるプロセスの例は、化学蒸着（ＣＶＤ）、プラズマ強化化学蒸着（ＰＥＣＶＤ）、原子層堆積（ＡＬＤ）、原子層エッチング（ＡＬＥ）、プラズマ強化原子層堆積（ＰＥＡＬＤ）、ならびに／または、他のエッチングプロセス、堆積プロセス、および洗浄プロセスを含むが、これらに限定されない。
【０００５】
処理の間、基板は基板処理システムの処理チャンバ内の基板支持体（台座、静電チャック（ＥＳＣ）など）の上に配置される。基板を処理するために、１つ以上のガスの混合物がガス供給システムによって処理チャンバに導入される。ガス源、ガスライン、弁、およびマスフローコントローラ（ＭＦＣ）を備えるガス供給システムは、１つ以上の処理チャンバにガス混合物を供給するのに用いられてよい。処理チャンバ内の化学反応を促進するために、処理の間にプラズマが衝突してよい。イオンエネルギを制御するために、基板支持体にＲＦバイアスが供給されてもよい。
【０００６】
特定のレシピおよび／またはハードウェア構成を開発するときは、基板処理システムおよびガス供給システムをテストして、意図する動作を確かめる必要がある。さらに、システムコントローラは、検出されたパラメータ（例えば、流量、温度、および／または圧力）に基づいて生じるいくつかの欠陥を診断できなければならない。
【発明の概要】
【０００７】
基板処理システムのガス供給システムのためのソフトウェアエミュレーションシステムは、入出力バスおよびエミュレータバスを備える。入出力バスアダプタは、データパケットを基板処理システムのシステムコントローラから入出力バスおよびエミュレータバスのいずれかに送信するように構成されたスイッチを備える。エミュレータバスと通信するガス供給システムエミュレータは、入出力バスアダプタからエミュレータバスを通じてデータパケットを受信し、相互接続したガス供給システムの複数のハードウェア構成要素のソフトウェアベースのエミュレーションを実行するように構成されている。複数のハードウェア構成要素は、１つ以上のソフトウェアモデルを用いてモデル化され、ガス源と、弁およびマスフローコントローラの少なくとも１つとを含む。
【０００８】
他の特徴では、ガス供給システムエミュレータは、１つ以上のソフトウェアモデル、複数のハードウェア構成要素を定義する構成データ、および、複数のハードウェア構成要素間の接続を定義するネットリストを用いてエミュレーションを実行するガスシミュレーションエンジンを備える。
【０００９】
他の特徴では、ガス供給システムエミュレータは、ガスシミュレーションエンジンを管理するガスシミュレーションエンジンマネジャを備える。ガスシミュレーションエンジンマネジャは、システムコントローラのプロセス制御アプリケーションとインタフェースをとって、構成データおよびネットリストを生成する。ガスシミュレーションエンジンは、テストログファイルを選択的に生成する。
【００１０】
他の特徴では、ガス供給システムエミュレータによって実行されるエミュレーションは、システムコントローラの動作またはコーディングを変更することなく実行される。
【００１１】
さらに他の特徴では、１つ以上のソフトウェアモデルの少なくとも１つは、マスフローコントローラをシミュレートし、出力流量と流量設定点との比較に基づいて複数の出力関数から１つを選択するマスフローコントローラモデルを含む。マスフローコントローラモデルは、出力流量が流量設定点を中心とする所定範囲内であるときは第１の関数を用い、出力流量が所定範囲未満であるときは第２の関数を用い、出力流量が所定範囲より大きいときは第３の関数を用いる。
【００１２】
他の特徴では、マスフローコントローラモデルは、第１の関数が動作するときにノイズを選択的に加えるノイズ発生器を備える。
【００１３】
他の特徴では、１つ以上のソフトウェアモジュールの少なくとも１つは、通常エミュレーションモードおよび少なくとも１つの欠陥エミュレーションモードを含む。
【００１４】
基板処理システムのガス供給システムをテストするための方法は、基板処理システムのシステムコントローラから受信したデータパケットを入出力バスおよびエミュレータバスのいずれかに送信する工程と、データパケットをエミュレータバスから受信し、相互接続するガス供給システムの複数のハードウェア構成要素のソフトウェアベースのエミュレーションを実行する工程と、１つ以上のソフトウェアモデルを用いて複数のハードウェア構成要素をモデル化する工程と、を含む。複数のハードウェア構成要素は、ガス源と、弁およびマスフローコントローラの少なくとも１つと、を含む。
【００１５】
他の特徴では、この方法は、１つ以上のソフトウェアモデル、複数のハードウェア構成要素を定義する構成データ、および複数のハードウェア構成要素間の接続を定義するネットリストに基づいてエミュレーションを実行する工程を含む。この方法は、システムコントローラのプロセス制御アプリケーションとインタフェースをとって構成データおよびネットリストを生成する工程を含む。この方法は、テストログファイルを選択的に生成する工程を含む。
【００１６】
他の特徴では、この方法は、システムコントローラの動作またはコーディングを変更することなくエミュレーションを実行する工程を含む。１つ以上のソフトウェアモデルの少なくとも１つは、ハードウェアマスフローコントローラをシミュレートし、出力流量と流量設定点との比較に基づいて複数の出力関数から１つを選択するマスフローコントローラモデルを含む。
【００１７】
他の特徴では、この方法は、出力流量が流量設定点を中心とする所定範囲内であるときは第１の関数を用い、出力流量が所定範囲未満であるときは第２の関数を用い、出力流量が所定範囲より大きいときは第３の関数を用いる工程を含む。
【００１８】
他の特徴では、この方法は、第１の関数が動作するときにノイズを選択的に加えるノイズ発生器を用いる工程を含む。１つ以上のソフトウェアモジュールの少なくとも１つは、通常エミュレーションモードおよび少なくとも１つの欠陥エミュレーションモードを含む。
【００１９】
本開示のさらなる適用分野は、発明を実施するための形態、特許請求の範囲、および図面から明らかになるだろう。発明を実施するための形態および特定の例は説明の目的のみを意図し、本開示の範囲を限定する意図はない。
【図面の簡単な説明】
【００２０】
本開示は、発明を実施するための形態および添付の図面からより深く理解されるだろう。
【００２１】
【図１】本開示による例示的な基板処理システムの機能ブロック図。
【００２２】
【図２】図１の基板処理システムのための例示的なガス供給システムの機能ブロック図。
【００２３】
【図３Ａ】本開示による、ハードウェア構成要素の定義のリストおよびハードウェア構成要素の接続のネットリストを含む構成ファイルを生成するソフトウェアエミュレーションシステムの機能ブロック図。
【００２４】
【図３Ｂ】ガス供給システムのハードウェア構成要素のための例示的なソフトウェアベースのエミュレータの機能ブロック図。
【００２５】
【図４】本開示による例示的なサーバの機能ブロック図。
【００２６】
【図５】本開示によるエミュレータ拡張機能またはソフトウェアスイッチを有する例示的なＩ／Ｏバスアダプタ。
【００２７】
【図６】本開示による例示的なガス供給システムエミュレータの機能ブロック図。
【００２８】
【図７】本開示によるガス供給システムのエミュレーション中の例示的な情報フローモデル。
【００２９】
【図８】本開示による例示的なマスフローコントローラ（ＭＦＣ）エミュレータの機能ブロック図。
【００３０】
図面では、類似のおよび／または同一の要素を特定するために参照番号は繰り返し用いられてよい。
【発明を実施するための形態】
【００３１】
システムコントローラは、ガス供給システム、処理チャンバ、およびレシピのトポロジに基づいて構成されたプロセス制御アプリケーションを実施する。レシピは、動作パラメータ（例えば、１つ以上のガスの混合物の１つ以上のガスの供給タイミング、弁制御のタイミング、ＲＦ電力のタイミング、およびＲＦバイアスのタイミング）、加熱器、ＲＦ電力源、およびＲＦバイアス源に供給される電力レベル、流量などを定義する。
【００３２】
システムコントローラは、１つ以上のセンサからフィードバック値を受信し、１つ以上のアクチュエータを制御する。アクチュエータの例は、マスフローコントローラ、弁、抵抗発熱体、ＲＦバイアス源、ＲＦ電源、および／または、他のアクチュエータを含む。センサの例は、温度センサ、圧力センサ、流量センサなどを含む。システムコントローラはレシピに従い、センサからのフィードバックに基づいてアクチュエータへの調節を行う。新しいプロセスが開発されたときは、基板の製造処理が開始する前にハードウェア構成要素の広域テストが実行される。テストは通常、高価で時間がかかる。
【００３３】
いくつかの制御アプリケーションは、テストを容易にするための限定的なソフトウェアシミュレーション関数を含む。ソフトウェアシミュレーション関数は、接続するハードウェア構成要素のいくつかをシミュレートしようと試みる。しかし、ソフトウェアシミュレーションは通常、プロセス制御アプリケーションにおけるコードのごく一部のみを実行することができる。限定的なソフトウェアシミュレーションを実行するために、ユーザは呼び出し関数に肯定応答もしくは「ＯＫ」を返信する、および／または、フラグを立てる。しかし、タイミングおよび待ち時間は通常、実際のプロセスとは異なる。さらに、ハードウェアの障害シナリオのテストは可能ではない。よって、この手法は理想的ではない。
【００３４】
また、この手法は通常、制御アプリケーションの上位ソフトウェア層のみをテストし、通常はソフトウェアドライバまたは下位ソフトウェア層に見られる他の関数をテストしない。他のシステムは、１つ以上のハードウェア構成要素からの以前記録された応答の再生に依存して、構成要素の動作をシミュレートし、プロセス制御アプリケーションをテストする。
【００３５】
本開示によるシステムおよび方法は、基板処理システムのガス供給システムの相互接続したハードウェア構成要素をエミュレートするためのソフトウェアエミュレータを含む。ガス供給システムの制御アプリケーションは、通常動作の間に実行するのと同じ方法で実行する。ソフトウェアエミュレータの各ソフトウェアモジュールは、特定のハードウェア構成要素（例えば、弁、マスフローコントローラ、ガスライン、または他のハードウェア構成要素）をエミュレートする。
【００３６】
設定の間、ソフトウェアエミュレータは制御アプリケーションとインタフェースをとって、ハードウェア構成要素情報（例えば、名前、種類、位置、およびエミュレートされたパラメータ）を含む構成ファイル、ならびに、（ハードウェア構成要素の接続に相当する）エミュレートされたハードウェア構成要素の相互接続を定義するネットリストを自動的に生成する。構成ファイル、ネットリスト、およびシミュレーションモデルは、正常挙動、最悪ケースの挙動、および／または欠陥挙動をエミュレートするのに用いられる。
【００３７】
説明のために、例示的な基板処理システムおよびガスボックスが図１および図２に議論の目的で示されている。理解できるように、本明細書に記載のソフトウェアエミュレータは、他の基板処理システムおよび／またはガス供給システムにも用いることができる。
【００３８】
ここで図１を参照すると、例示的な基板処理システム１２０が示されている。容量結合プラズマ（ＣＣＰ）を用いる処理チャンバの例が示されているが、本明細書に記載のエミュレータは他の種類の基板処理システムにも用いることができる。例えば、本明細書に記載のエミュレータは、プラズマなしで、リモートプラズマまたは誘導結合プラズマ（ＩＣＰ）を用いて、基板処理システムで用いることができる。また、本明細書に記載のシステムおよび方法は、あらゆる他のガス供給システムまたは流体供給システムにおいて用いることができる。
【００３９】
基板処理システム１２０は、基板処理システム１２０の他の構成部品を囲み、ＲＦプラズマ（用いられる場合）を含む処理チャンバ１２２を備える。基板処理システム１２０は、上部電極１２４および基板支持体１２６（例えば、静電チャック（ＥＳＣ））を備える。動作の間、基板１２８は基板支持体１２６の上に配置される。
【００４０】
例えのみで、上部電極１２４は、プロセスガスを導入および分配するシャワーヘッドなどのガス分配装置１２９を備えてよい。ガス分配装置１２９は、処理チャンバの上面に接続された一端を有するステム部を含んでよい。基部は一般に円筒形であり、処理チャンバの上面から離れた位置でステム部のもう一端から径方向外向きに伸びる。シャワーヘッドの基部の基板対向面またはフェースプレートは、前駆体、反応物、エッチングガス、不活性ガス、キャリアガス、他の処理ガス、またはパージガスが流れる複数の穴を含む。あるいは、上部電極１２４は導電性プレートを備え、プロセスガスは別の方法で導入されてよい。
【００４１】
基板支持体１２６は、下部電極として機能するベースプレート１３０を備える。ベースプレート１３０は、セラミック製のマルチゾーン加熱プレートに相当しうる加熱プレート１３２を支持する。加熱プレート１３２とベースプレート１３０との間には、熱抵抗層１３４が配置されてよい。ベースプレート１３０は、ベースプレート１３０を通って冷媒を流すための１つ以上の流路１３６を備えてよい。
【００４２】
プラズマが用いられる場合は、ＲＦ生成システム１４０はＲＦ電圧を生成し、上部電極１２４および下部電極（例えば、基板支持体１２６のベースプレート１３０）のいずれか一方に出力する。上部電極１２４およびベースプレート１３０のもう一方はＤＣ接地されてよい、ＡＣ接地されてよい、または浮遊状態であってよい。例えのみで、ＲＦ生成システム１４０は、整合分配ネットワーク１４４によって上部電極１２４またはベースプレート１３０に供給されるＲＦ電力を生成するＲＦ発生器１４２を備えてよい。他の例では、プラズマは誘電的または遠隔的に生成されてよい。
【００４３】
ガス供給システム１５０は、動作中に１つ以上のガスの混合物（例えば、プロセスガス混合物、プラズマガス混合物、パージガス）を供給する、ガスボックス、ガス管、弁、マスフローコントローラなどを備える。単一のガス供給システム１５０が示されているが、２つ以上のガス供給システムを用いることもできる。
【００４４】
温度コントローラ１６３は、加熱プレート１３２に配置された複数の熱制御素子（ＴＣＥ）１６４に接続されてよい。温度コントローラ１６３は、基板支持体１２６および基板１２８の温度を制御するように複数のＴＣＥ１６４を制御するのに用いられてよい。温度コントローラ１６３は、冷媒アセンブリ１６６と連通して流路１３６を通る冷媒流を制御してよい。例えば、冷媒アセンブリ１６６は、冷媒ポンプ、貯留槽、および／または、１つ以上の温度センサを備えてよい。温度コントローラ１６３は、基板支持体１２６を冷却するために流路１３６を通る冷媒を選択的に流すように冷媒アセンブリ１６６を操作する。弁１７０およびポンプ１７２は、処理チャンバ１２２から反応物を排出するのに用いられてよい。システムコントローラ１８０は、基板処理システム１２０の構成部品を制御するのに用いられてよい。システムコントローラ１８０は、プロセス制御アプリケーション１８１を実行する。
【００４５】
次に図２を参照すると、ガス供給システム１５０またはガスボックスの一部が示されている。ガス源２１０−１、ガス源２１０−２、・・・、およびガス源２１０−Ｇ（総称して、ガス源２１０）は、一次弁２２０−１、一次弁２２０−２、・・・、および一次弁２２０−Ｇ（Ｇは１より大きい整数）（総称して、一次弁２２０）、マスフローコントローラ（ＭＦＣ）２３０−１、ＭＦＣ２３０−２、・・・、およびＭＦＣ２３０−Ｇ（総称して、ＭＦＣ２３０）、ならびに二次弁２３４−１、二次弁２３４−２、・・・、および二次弁２３４−Ｇ（総称して、二次弁２３４）を含む流量制御装置に接続されている。二次弁２３４の出力は混合マニホルド２３５に接続され、弁２４２への入力である。弁２４２は、ガス供給システム１５０に関連付けられた処理チャンバへのガスラインに流れるガスに関連付けられている。
【００４６】
次に図３Ａを参照すると、ソフトウェアエミュレーションシステム３１０は、システムコントローラ１８０のプロセス制御アプリケーション１８１と通信し、ガスシミュレーションエンジン（ＧＳＥ）構成ファイル３１４を生成するＧＳＥマネジャ３１２を含む。特定のハードウェアの設定のためのＧＳＥ構成ファイル３１４は、名前、種類、出力または入力、位置、およびエミュレーションパラメータを定義する各ハードウェア構成要素のソフトウェアモジュール定義のリスト３１６を含む。各ソフトウェアモジュールは、リストの１つ以上の行によって定義されてよい（例えば、以下のＭＦＣ１５参照）。モジュール定義の一部の例のリストは、以下の表１に示されている。
【表１】
2021535626.tif 000003
【００４７】
ＧＳＥ構成ファイル３１４は、ソフトウェアモジュールの接続を定義するネットリストも含む。ネットリストの部分的な例は、以下の表２に示されている。
【表２】
2021535626.tif 000004
【００４８】
以下にさらに説明されるように、各種類のソフトウェアモジュールは、そのハードウェア部の挙動を定義するモデルを含む。いくつかの種類のソフトウェアモジュールは、１つ以上の最悪ケース挙動および／または故障モードも定義するだろう。ソフトウェアモジュールの定義およびネットリストが生成されると、テストが開始されうる。
【００４９】
エミュレートされた構成要素は、ノードおよび１つ以上のノードクラスによって定義される。各種類のノードは、ハードウェアモジュール（ＭＦＣ、弁、センサなど）の挙動を定義するシミュレーションモデルクラスを有しうる。ネットリストはトポロジを定義し、ネイバおよび多重度（例えば、パイプライン）についての情報を含む。パイプラインは、パイプハードウェア（流れ抵抗など）の挙動を詳しく説明する定義されたシミュレーションクラスを有しうる。
【００５０】
次に図３Ｂを参照すると、基板処理システムのハードウェア構成要素のための例示的なソフトウェアエミュレーションシステム３００がさらに詳しく示されている。ソフトウェアエミュレーションシステム３００は、入出力（Ｉ／Ｏ）バスアダプタ３２４と通信するツール制御ソフトウェア３２０を含む。Ｉ／Ｏバスアダプタ３２４は、エミュレータ拡張機能またはソフトウェアスイッチ３２５を備える。ソフトウェアスイッチ３２５は、データパケットがハードウェア構成要素のためかソフトウェアモジュールのためかに応じてデータパケットを異なるように送信する（そうでなければ、データパケットは同じ）。Ｉ／Ｏバスアダプタ３２４は、Ｉ／Ｏバス３２８を通じてデータパケットを転送および受信する。Ｉ／Ｏバス３２８は、１つ以上のハードウェア構成要素３３２−１、ハードウェア構成要素３３２−２、・・・、およびハードウェア構成要素３３２−Ｈ（総称して、ハードウェア構成要素３３２）にも接続されている。
【００５１】
Ｉ／Ｏバスアダプタ３２４は、エミュレータバス３４０を通じてデータパケットを転送および受信する。エミュレータバス３４０は、１つ以上のソフトウェアベースのハードウェアエミュレーションモジュール３４４−１、ハードウェアエミュレーションモジュール３４４−２、・・・、およびハードウェアエミュレーションモジュール３４４−Ｈ（総称して、ハードウェアエミュレーションモジュール３４４）と通信する。ソフトウェアベースのハードウェアエミュレーションモジュール３４４は、ハードウェア構成要素（例えば、弁、マスフローコントローラ、ガス供給システム、ガスライン）をエミュレートするモデルを含む。各モデルの応答は、入力、時間、流量、圧力、および／または他の物理変数の関数である。エミュレータの応答は、エミュレータにおける全ての相互接続したモデルの関数でもある。いくつかの例では、モデルのデフォルトモードまたは通常モードは「ベストケース」であり、良好に機能するハードウェア構成要素に等しい。モデル属性を変更することで、異なる故障ケースをエミュレートできる。
【００５２】
Ｉ／Ｏバスアダプタ３２４は、ソフトウェアモジュールのデータパケットをエミュレータバス３４０に送信する。他のデータパケットは、Ｉ／Ｏバス３２８に送信される。この層での送信情報は、異なる種類のＩ／Ｏバスのへの統合を簡素化する。相互接続した相互依存の構成要素の基本原則、および、物理レベルのこれらの構成要素のソフトウェアモデリングは、異なるハードウェア構成要素に適用される。
【００５３】
システムコントローラおよび／またはエミュレーションシステムは、共通サーバまたは１つ以上の異なるサーバで実行することができる。ここで図４を参照すると、本開示による例示的なサーバ４００が示されている。サーバ４００は、１つ以上のプロセッサ４２０およびメモリ４３０を含む。メモリ４３０は、オペレーティングシステム４３４および１つ以上のアプリケーション４３８を格納する。アプリケーション４３８は、プロセス制御アプリケーションおよび／またはエミュレーションシステムを含む。
【００５４】
サーバ４００はさらに、１つ以上のハードディスクドライブまたは他の大容量メモリなどの大容量記憶装置４４２を備える。サーバ４００は、分散通信システム４４８（例えば、ローカルエリアネットワーク、広域ネットワーク、インターネット）を通じて他の装置と通信するネットワークインタフェース４４６を備える。サーバ４００は、１つ以上の入力装置４５０と、ディスプレイ４５６を含む表示システム４５４とを備えてよい。
【００５５】
次に図５を参照すると、エミュレータ拡張機能を有するＩ／Ｏバスアダプタ３２４の動作が示されている。Ｉ／Ｏバスアダプタ３２４は、ハードウェア構成要素またはハードウェア構成要素をエミュレートするソフトウェアモジュールと交換するための情報を作成する。例えば、プロセス制御アプリケーション５１０は、エミュレートされたＩ／Ｏオブジェクト５１２−１、エミュレートされたＩ／Ｏオブジェクト５１２−２、およびエミュレートされたＩ／Ｏオブジェクト５１２−３（総称して、エミュレートされたＩ／Ｏオブジェクト５１２）、ならびに、ハードウェアＩ／Ｏオブジェクト５１４−１およびハードウェアＩ／Ｏオブジェクト５１４−２を含むデータストリームを転送および受信する。
【００５６】
データストリームのサブセットは、エミュレートされたＩ／Ｏオブジェクト５１２−１、エミュレートされたＩ／Ｏオブジェクト５１２−２、およびエミュレートされたＩ／Ｏオブジェクト５１２−３に対するバスデータパケット５２２−１、バスデータパケット５２２−２、およびバスデータパケット５２２−３を含む。バスデータパケット５２２−１、バスデータパケット５２２−２、およびバスデータパケット５２２−３は、エミュレータバス３４０を通じてエミュレータパケット５３２−１、エミュレータパケット５３２−２、およびエミュレータパケット５３２−３（総称して、エミュレータパケット５３２）として送信される。プロセス制御アプリケーション５１０からのデータストリームの別の部分は、ハードウェアＩ／Ｏオブジェクト５１４−１およびハードウェアＩ／Ｏオブジェクト５１４−２からのバスデータパケット５２４−１およびバスデータパケット５１４−２を含む。バスデータパケット５２４−１およびバスデータパケット５１４−２は通常、Ｉ／Ｏバス３２８を通じて対応するハードウェア構成要素３３２に送信される。
【００５７】
ソフトウェアエミュレーションシステムが動作したときは、ソフトウェアスイッチは、エミュレータパケットを含むデータストリームのサブセットを識別し、エミュレータバスに送信する。データパケットは、エミュレートされたハードウェア構成要素の情報を含む。エミュレータバス３４０に関連付けられたエミュレータバスドライバは、エミュレータパケットを接続するエミュレータに送信する。
【００５８】
モデルはハードウェア構成要素をエミュレートし、ソフトウェアで相互接続する。各ハードウェア構成要素（ＭＦＣ、弁、ガス供給システムなど）は、挙動、応答、伝達関数、および／または故障ケースを定義する関連モデリングクラスを有する。モデルの挙動は、時間、モデル入力、その能力、および／またはトポロジの関数である。
【００５９】
図６にはガスボックスエミュレータ６００が示されている。ガスボックスエミュレータ６００は、エミュレータバス３４０を通じて制御アプリケーションと通信するガスシミュレーションエンジン６１０を備える。ガスシミュレーションエンジン６１０は読み込みを行い、ガスシミュレーションエンジン構成ファイル６３０によって構成される。
【００６０】
ガスボックスエミュレータ６００はさらに、ガスシミュレーションエンジン６１０の動作を管理するガスシミュレーションエンジンマネジャ６２０を含む。ガスボックスエミュレータ６００はさらに、テストルーチンを定義し実行できるようにするテスト自動化マネジャ６５０を含む。テストルーチンは、制御ソフトウェアがテスト手順を実行している間に実行される故障ケースを含む、異なるハードウェア使用ケースをエミュレートする。ガスボックスエミュレータ６００は、テスト中にデータ（入力、出力、エラーコードなど）を格納するテストログファイル６４０にデータを書き込む。
【００６１】
次に図７を参照すると、ガスエミュレーション中の情報フローが示されている。テスト７１０の対象デバイス（例えば、プロセス制御アプリケーション）は、７１４でガスボックス出力を送信し、７１６でガス出力データストリームを生成する。ガスボックス入力への応答は、ガスボックス入力ストリーム７２８を通じて７２４で受信される。ガスボックスエミュレータは、７３０においてガスボックスエンジン７３２に設定値を書き込む。
【００６２】
ガスボックスエミュレータは、７４４においてモデルを計算し、ガスボックスエンジン７３２に更新を提供する。いくつかの例では、ガスボックスエミュレータは、７３６においてガスボックスエンジン７３２から値（フロー状態への更新など）を読み込む。テスト７１０の対象デバイスは、設定値（弁（ＩＤ、オンオフ状態）、ＭＦＣ＿ＳｅｔＰｏｉｎｔ（ｉｄ、ｓｅｔ＿ｖａｌｕｅ）など）を送信する。テスト対象デバイスは、フィードバック（ＭＦＣ（ｉｄ、ａｃｔｕａｌ＿ｆｌｏｗ）など）を受信する。個々のハードウェア構成要素（ＭＦＣ、弁など）は、独立してモデル化される。
【００６３】
いくつかの例では、テスト自動化マネジャ６５０は、ガスシミュレーションエンジン６１０の１つ以上のエミュレートされた構成要素の挙動を変更することにより、通常動作モード（または、ベストモード）および１つ以上の故障ケースをテストするためのテストエージェントを用いる。例えば、通常は標準立ち上がり時間で開く弁は、立ち上がり時間後に開き、次にすばやく複数回開閉し、そして全開するようにプログラムすることができる。
【００６４】
次に図８を参照すると、例示的なマスフローコントローラ（ＭＦＣ）モデルが示されている。ＭＦＣモデルは、本開示によるＭＦＣエミュレータモジュールに実装される。テスト８１０の対象デバイス（プロセス制御アプリケーション）は、ＭＦＣシミュレーションモデル８２４と通信する。ＭＦＣシミュレーションモデル８２４は、１つ以上の他のハードウェア構成要素またはノードと接続する入力８２０を備える。ＭＦＣシミュレーションモデル８２４は、１つ以上の他のハードウェア構成要素またはノードと接続する出力８２６を備える。いくつかの例では、ＭＦＣシミュレーションモデル８２４は、８３０の立ち上がり位相、８３４の定常位相、および８３８の立ち下がり位相に対応する第１の関数、第２の関数、および第３の関数を実行する。ＭＦＣシミュレーションモデル８２４は、定常位相関数８３４に入力するノイズを加えるノイズ発生器８４０を備えてよい。エミュレートされたガスボックスの各ハードウェア構成要素は、必要に応じて詳しくハードウェアをエミュレートする独特のシミュレーションモデルを有しうる。シミュレーションモデルの入力およびソースの数は制限されない。
【００６５】
いくつかの例では、ＭＦＣモデルはｆ＿ｏｕｔ＝ｆｕｎｃ（ｆ＿ｉｎ、パラメータ）に等しく設定される。ｆｕｎｃ（）は、入力パラメータに基づき変化する関数である。ｆｕｎｃ（）は、ｆ＿ｏｕｔｐｕｔがｆ＿ｓｅｔ＿ｐｏｉｎｔよりも所定量だけ少ないときにＦ＿ｒｉｓｉｎｇ（）に等しく設定される。ｆｕｎｃ（）は、ｆ＿ｏｕｔがｆ＿ｓｅｔ＿ｐｏｉｎｔの所定範囲内であるときはＦ＿ｓｔｅａｄｙ（）に等しく設定される。ｆｕｎｃ（）は、ｆ＿ｏｕｔがｆ＿ｓｅｔ＿ｐｏｉｎｔよりも所定量だけ大きいときはＦ＿ｆａｌｌｉｎｇ（）に等しく設定される。いくつかの例では、ノイズは定常状態条件において発生する。
【００６６】
いくつかの例では、モデルのパラメータはテストエージェントによって設定および変更できる。いくつかの例では、設定および変更が可能なパラメータは、定常状態条件下の立ち上がり位置の形状、立ち下がり位置の形状、およびノイズレベルを含む。
【００６７】
本開示によるソフトウェアエミュレーションシステムは、ハードウェアに依存するソフトウェア検証に関連する問題の多くを解決する。例えば、ソフトウェアエミュレーションシステムは、ソフトウェアシミュレーションおよびハードウェアのテストスタンドを排除する。また、ソフトウェアエミュレーションシステムは、プロセス制御アプリケーションを変更する必要なしにハードウェア構成要素のための新しいテスト手順を実行する。ソフトウェアエミュレーションシステムは、追加費用なしで向上したコードテストカバレッジを提供する。ソフトウェアエミュレーションシステムは、リアルタムで基板処理システムのハードウェア構成要素をエミュレートし、実際にハードウェアが存在するかのように応答を提供する。
【００６８】
上述の説明は本質的に単なる例示であり、本開示、その適用、または使用を限定する意図はない。本開示の広義の教示は、様々な形態で実施することができる。よって、本開示は特定の例を含むが、図面、明細書、以下の特許請求の範囲を検討すると他の変形が明らかになるため、本開示の真の範囲はそれほど限定されるべきでない。方法内の１つ以上の工程は、本開示の原理を変更することなく異なる順番で（または、同時に）実行してよいことを理解されたい。さらに、各実施形態は特定の特徴を有するように上述されているが、本開示のあらゆる実施形態に関して記載された１つ以上のこれらの特徴は、他の実施形態において、および／または、他の実施形態の特徴と組み合わせて（その組み合わせが明記されていないとしても）実施できる。つまり、記載の実施形態は相互に排他的ではなく、１つ以上の実施形態を互いに並べ替えることは本開示の範囲内である。
【００６９】
要素間（例えば、モジュール間、回路素子間、半導体層間など）の空間的および機能的関係は、「接続された」、「係合された」、「結合された」、「隣接する」、「近接する」、「上に」、「上方」、「下方」、および「配置された」を含む様々な用語を用いて説明される。第１の要素と第２の要素との関係が上記の開示で説明されるときは、「直接的」であると明記されない限り、その関係は、第１の要素と第２の要素との間に他の要素が介在しない直接的関係でありうるが、第１の要素と第２の要素との間に（空間的または機能的に）１つ以上の介在要素が存在する間接的関係でもありうる。本明細書では、Ａ、Ｂ、およびＣのうちの少なくとも１つという表現は、非排他的論理、ＯＲ、を用いる論理（Ａ  ＯＲ  Ｂ  ＯＲ  Ｃ）を意味すると解釈されるべきであり、「Ａのうちの少なくとも１つ、Ｂのうちの少なくとも１つ、およびＣのうちの少なくとも１つ」を意味すると解釈されるべきではない。
【００７０】
いくつかの実施形態では、コントローラは、上記の例の一部でありうるシステムの一部である。かかるシステムは、処理ツール、チャンバ、処理用プラットフォーム、および／または、特定の処理部品（ウエハ台座、ガス流システムなど）を含む半導体処理装置を含みうる。これらのシステムは、半導体ウエハまたは基板の処理前、処理中、および処理後の動作を制御するための電子機器と統合されてよい。電子機器は、システムの様々な部品または副部品を制御しうる「コントローラ」を意味してよい。コントローラは、処理条件および／またはシステムの種類に応じて、プロセスガスの供給、温度設定（例えば、加熱および／または冷却）、圧力設定、真空設定、電力設定、高周波（ＲＦ）生成器設定、ＲＦ整合回路設定、周波数設定、流量設定、流体供給設定、位置動作設定、ツールおよび他の搬送ツールに対するウエハ搬入出、ならびに／または、特定のシステムに接続もしくは結合されたロードロックに対するウエハ搬入出など、本開示に記載のプロセスを制御するようにプログラムされてよい。
【００７１】
概してコントローラは、命令を受信し、命令を発行し、動作を制御し、洗浄動作を可能にし、エンドポイント測定を可能にするなどの様々な集積回路、ロジック、メモリ、および／または、ソフトウェアを有する電子機器として定義されてよい。集積回路は、プログラム命令を記憶するファームウェア形式のチップ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）として定義されるチップ、および／または、プログラム命令（例えば、ソフトウェア）を実行する１つ以上のマイクロプロセッサもしくはマイクロコントローラを含んでよい。プログラム命令は、様々な個別設定（または、プログラムファイル）の形式でコントローラに伝達される命令であって、特定のプロセスを半導体ウエハ上でもしくは半導体ウエハ向けに、またはシステムに対して実行するための動作パラメータを定義してよい。いくつかの実施形態では、動作パラメータは、１つ以上の層、材料、金属、酸化物、シリコン、二酸化シリコン、表面、回路、および／または、ウエハダイの製造中における１つ以上の処理工程を実現するために、プロセスエンジニアによって定義されるレシピの一部であってよい。
【００７２】
いくつかの実施形態では、コントローラは、システムと統合もしくは結合された、そうでなければシステムにネットワーク接続された、もしくはこれらが組み合わされたコンピュータの一部であってよく、またはそのコンピュータに結合されてよい。例えば、コントローラは、ウエハ処理のリモートアクセスを可能にする「クラウド」内にあってよい、またはファブホストコンピュータシステムの全てもしくは一部であってよい。コンピュータは、システムへのリモートアクセスを可能にして、製造動作の進捗状況を監視し、過去の製造動作の経歴を調査し、複数の製造動作から傾向または実施の基準を調査して、現在の処理のパラメータを変更し、現在の処理に続く処理工程を設定し、または、新しいプロセスを開始してよい。いくつかの例では、リモートコンピュータ（例えば、サーバ）は、ローカルネットワークまたはインターネットを含みうるネットワークを通じて、プロセスレシピをシステムに提供できる。リモートコンピュータは、次にリモートコンピュータからシステムに伝達されるパラメータおよび／もしくは設定のエントリまたはプログラミングを可能にするユーザインタフェースを含んでよい。いくつかの例では、コントローラは、１つ以上の動作中に実施される各処理工程のパラメータを特定するデータ形式の命令を受信する。パラメータは、実施されるプロセスの種類、および、コントローラが接続するまたは制御するように構成されたツールの種類に固有であってよいことを理解されたい。よって、上述のようにコントローラは、例えば互いにネットワーク接続する１つ以上の別々のコントローラを含むことと、本明細書に記載のプロセスや制御などの共通の目的に向けて協働することとによって分散されてよい。かかる目的で分散されたコントローラの例は、遠隔に（例えば、プラットフォームレベルで、または、リモートコンピュータの一部として）設置され、協働してチャンバにおけるプロセスを制御する１つ以上の集積回路と連通する、チャンバ上の１つ以上の集積回路だろう。
【００７３】
制限するのではなく、例示のシステムは、プラズマエッチングチャンバまたはプラズマエッチングモジュール、堆積チャンバまたは堆積モジュール、スピンリンスチャンバまたはスピンリンスモジュール、金属めっきチャンバまたは金属めっきモジュール、洗浄チャンバまたは洗浄モジュール、ベベルエッジエッチングチャンバまたはベベルエッジエッチングモジュール、物理蒸着（ＰＶＤ）チャンバまたはＰＶＤモジュール、化学蒸着（ＣＶＤ）チャンバまたはＣＶＤモジュール、原子層堆積（ＡＬＤ）チャンバまたはＡＬＤモジュール、原子層エッチング（ＡＬＥ）チャンバまたはＡＬＥモジュール、イオン注入チャンバまたはイオン注入モジュール、トラックチャンバまたはトラックモジュール、ならびに、半導体ウエハの製作および／もしくは製造において関連もしくは使用しうる他の半導体処理システムを含んでよい。
【００７４】
上述のように、ツールによって実施されるプロセス工程に応じて、コントローラは、他のツール回路もしくはモジュール、他のツール部品、クラスタツール、他のツールインタフェース、隣接するツール、近接するツール、工場全体に設置されたツール、メインコンピュータ、別のコントローラ、または、半導体製造工場においてツール位置および／もしくはロードポートに対してウエハ容器を搬入出する材料搬送に用いられるツール、のうちの１つ以上と連通しうる。
【図１】
2021535626.tif 000005
【図２】
2021535626.tif 000006
【図３Ａ】
2021535626.tif 000007
【図３Ｂ】
2021535626.tif 000008
【図４】
2021535626.tif 000009
【図５】
2021535626.tif 000010
【図６】
2021535626.tif 000011
【図７】
2021535626.tif 000012
【図８】
2021535626.tif 000013
【手続補正書】
【提出日】令和3年5月11日(2021.5.11)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
基板処理システムのガス供給システムのためのソフトウェアエミュレーションシステムであって、
入出力バスと、
エミュレータバスと、
データパケットを前記基板処理システムのシステムコントローラから前記入出力バスおよび前記エミュレータバスのいずれかに送信するように構成されたスイッチを含む入出力バスアダプタと、
前記エミュレータバスと通信するガス供給システムエミュレータであって、
前記入出力バスアダプタから前記エミュレータバスを通じて前記データパケットを受信し、
相互接続する前記ガス供給システムの複数のハードウェア構成要素のソフトウェアベースのエミュレーションを実行するように構成された、ガス供給システムエミュレータと、を備え、
前記複数のハードウェア構成要素は、１つ以上のソフトウェアモデルを用いてモデル化され、ガス源と、弁およびマスフローコントローラの少なくとも１つと、を含み、
前記１つ以上のソフトウェアモデルの少なくとも１つは、マスフローコントローラをシミュレートし、現在の出力流量と流量設定点との比較に基づいて複数の出力関数から１つを選択するマスフローコントローラモデルを含み、前記複数の出力関数の各々は、それぞれの出力流量を生成する、ソフトウェアエミュレーションシステム。
【請求項２】
請求項１に記載のソフトウェアエミュレーションシステムであって、
前記ガス供給システムエミュレータは、前記１つ以上のソフトウェアモデル、前記複数のハードウェア構成要素を定義する構成データ、および、前記複数のハードウェア構成要素間の接続を定義するネットリストを用いてエミュレーションを実行するガスシミュレーションエンジンを備える、ソフトウェアエミュレーションシステム。
【請求項３】
請求項２に記載のソフトウェアエミュレーションシステムであって、
前記ガス供給システムエミュレータは、前記ガスシミュレーションエンジンを管理するガスシミュレーションエンジンマネジャを備える、ソフトウェアエミュレーションシステム。
【請求項４】
請求項３に記載のソフトウェアエミュレーションシステムであって、
前記ガスシミュレーションエンジンマネジャは、前記システムコントローラのプロセス制御アプリケーションとインタフェースをとって、前記構成データおよび前記ネットリストを生成する、ソフトウェアエミュレーションシステム。
【請求項５】
請求項２に記載のソフトウェアエミュレーションシステムであって、
前記ガスシミュレーションエンジンは、テストログファイルを選択的に生成する、ソフトウェアエミュレーションシステム。
【請求項６】
請求項２に記載のソフトウェアエミュレーションシステムであって、
前記ガス供給システムエミュレータによって実行されたエミュレーションは、前記システムコントローラの動作またはコーディングを変更することなく実行される、ソフトウェアエミュレーションシステム。
【請求項７】
請求項１に記載のソフトウェアエミュレーションシステムであって、
前記マスフローコントローラモデルは、前記現在の出力流量が前記流量設定点を中心とする所定範囲内であるときは第１の関数を用い、前記現在の出力流量が前記所定範囲未満であるときは第２の関数を用い、前記現在の出力流量が前記所定範囲より大きいときは第３の関数を用いる、ソフトウェアエミュレーションシステム。
【請求項８】
請求項７に記載のソフトウェアエミュレーションシステムであって、
前記マスフローコントローラモデルは、前記第１の関数が動作するときにノイズを選択的に加えるノイズ発生器を備える、ソフトウェアエミュレーションシステム。
【請求項９】
請求項１に記載のソフトウェアエミュレーションシステムであって、
前記１つ以上のソフトウェアモデルの少なくとも１つは、通常エミュレーションモードおよび少なくとも１つの故障エミュレーションモードを含む、ソフトウェアエミュレーションシステム。
【請求項１０】
基板処理システムのガス供給システムをテストするための方法であって、
前記基板処理システムのシステムコントローラから受信したデータパケットを、入出力バスおよびエミュレータバスのいずれかに送信する工程と、
前記データパケットを前記エミュレータバスから受信し、相互接続する前記ガス供給システムの複数のハードウェア構成要素のソフトウェアベースのエミュレーションを実行する工程と、
１つ以上のソフトウェアモデルを用いて前記複数のハードウェア構成要素をモデル化する工程と、を含み、
前記複数のハードウェア構成要素は、ガス源と、弁およびマスフローコントローラの少なくとも１つとを含み、
前記１つ以上のソフトウェアモデルの少なくとも１つは、マスフローコントローラをシミュレートし、現在の出力流量と流量設定点との比較に基づいて複数の出力関数から１つを選択するマスフローコントローラモデルを含み、前記複数の出力関数の各々は、それぞれの出力流量を生成する、方法。
【請求項１１】
請求項１０に記載の方法であって、さらに、
前記１つ以上のソフトウェアモデル、前記複数のハードウェア構成要素を定義する構成データ、および、前記複数のハードウェア構成要素間の接続を定義するネットリストに基づいてエミュレーションを実行する工程を含む、方法。
【請求項１２】
請求項１１に記載の方法であって、さらに、
前記システムコントローラのプロセス制御アプリケーションとインタフェースをとって、前記構成データおよび前記ネットリストを生成する工程を含む、方法。
【請求項１３】
請求項１１に記載の方法であって、さらに、
テストログファイルを選択的に生成する工程を含む、方法。
【請求項１４】
請求項１１に記載の方法であって、さらに、
前記システムコントローラの動作またはコーディングを変更することなく前記エミュレーションを実行する工程を含む、方法。
【請求項１５】
請求項１０に記載の方法であって、さらに、
前記現在の出力流量が前記流量設定点を中心とする所定範囲内であるときは第１の関数を用い、前記現在の出力流量が前記所定範囲未満であるときは第２の関数を用い、前記現在の出力流量が前記所定範囲より大きいときは第３の関数を用いる工程を含む、方法。
【請求項１６】
請求項１５に記載の方法であって、さらに、
前記第１の関数が動作するときにノイズを選択的に加えるノイズ発生器を用いる工程を含む、方法。
【請求項１７】
請求項１０に記載の方法であって、
前記１つ以上のソフトウェアモデルの少なくとも１つは、通常エミュレーションモードおよび少なくとも１つの故障エミュレーションモードを含む、方法。
【請求項１８】
請求項１に記載のソフトウェアエミュレーションシステムであって、
前記複数の出力関数の各々は、
前記複数の出力関数の対応する１つの動作の立ち上がり部分の形状、
前記複数の出力関数の対応する１つの動作の立ち下がり部分の形状、および
定常状態条件下の前記マスフローコントローラのノイズレベル
の少なくとも１つに基づく、ソフトウェアエミュレーションシステム。
【請求項１９】
請求項８に記載のソフトウェアエミュレーションシステムであって、
前記ノイズは、前記第１の関数に導入され、前記第２の関数および前記第３の関数には導入されない、ソフトウェアエミュレーションシステム。
【請求項２０】
請求項１に記載のソフトウェアエミュレーションシステムであって、
前記１つ以上のソフトウェアモデルの前記少なくとも１つは、最悪ケース挙動を定義する、ソフトウェアエミュレーションシステム。
【請求項２１】
請求項１に記載のソフトウェアエミュレーションシステムであって、
前記ガス源、前記弁、および前記マスフローコントローラは、独立してモデル化される、ソフトウェアシミュレーションシステム。
【国際調査報告】
2021535626.tif 000014
2021535626.tif 000015