(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-03-24
(45)【発行日】2025-04-01
(54)【発明の名称】製造システムにおける時間制約管理
(51)【国際特許分類】
H01L 21/02 20060101AFI20250325BHJP
G05B 19/418 20060101ALI20250325BHJP
H01L 21/677 20060101ALI20250325BHJP
【FI】
H01L21/02 Z
G05B19/418 Z
H01L21/68 A
(21)【出願番号】P 2023506055
(86)(22)【出願日】2021-07-23
(86)【国際出願番号】 US2021043037
(87)【国際公開番号】W WO2022026331
(87)【国際公開日】2022-02-03
【審査請求日】2023-03-27
(32)【優先日】2020-07-27
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390040660
【氏名又は名称】アプライド マテリアルズ インコーポレイテッド
【氏名又は名称原語表記】APPLIED MATERIALS,INCORPORATED
【住所又は居所原語表記】3050 Bowers Avenue Santa Clara CA 95054 U.S.A.
(74)【代理人】
【識別番号】100094569
【氏名又は名称】田中 伸一郎
(74)【代理人】
【識別番号】100103610
【氏名又は名称】▲吉▼田 和彦
(74)【代理人】
【識別番号】100109070
【氏名又は名称】須田 洋之
(74)【代理人】
【識別番号】100067013
【氏名又は名称】大塚 文昭
(74)【代理人】
【氏名又は名称】上杉 浩
(74)【代理人】
【識別番号】100120525
【氏名又は名称】近藤 直樹
(74)【代理人】
【識別番号】100139712
【氏名又は名称】那須 威夫
(74)【代理人】
【識別番号】100141553
【氏名又は名称】鈴木 信彦
(72)【発明者】
【氏名】ノーマン デヴィッド イー
(72)【発明者】
【氏名】河田 富美男
(72)【発明者】
【氏名】ン ユー リン
【審査官】安田 雅彦
(56)【参考文献】
【文献】国際公開第01/054187(WO,A1)
【文献】特開平07-283093(JP,A)
【文献】米国特許出願公開第2007/0179652(US,A1)
【文献】国際公開第2019/075174(WO,A1)
【文献】米国特許出願公開第2005/0055105(US,A1)
【文献】特開2013-033466(JP,A)
【文献】特開2016-133925(JP,A)
【文献】特開2011-146448(JP,A)
【文献】特開2018-117000(JP,A)
【文献】国際公開第2019/104264(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H01L 21/00 -21/48
H01L 21/67 -21/687
G05B 19/418
(57)【特許請求の範囲】
【請求項1】
処理装置が、
製造システムにおいて実行される一組のオペレーションを開始することを求める第1の要求を受け取ることであって、前記一組のオペレーションが、1つまたは複数の時間制約を各々が有す
る複数のオペレーションを含む、前記受け取ること、
前記一組のオペレーションの間に処理する第1の複数の候補基板を決定すること、
前記第1の複数の候補基板に関する前記一組のオペレーションの第1のシミュレーションを第1の期間にわたって実行することであって、前記第1のシミュレーションが
、シミュレーション対象の前記一組のオペレーションの各々
において正常に処理され
、前記第1の期間の終わりに到達する候補基板の第1の数を示す第1のシミュレーション出力を生成する、前記実行すること、および
前記第1のシミュレーション出力
によって示される前記第1の数に基づいて前記一組のオペレーションの第1のオペレーションに対する基板カウンタ値を設定することによって、前記第1の数の候補基板を前記第1の期間にわたって処理するために、前記製造システムにおいて前記一組のオペレーションを開始すること
を実行することを含む方法。
【請求項2】
前記処理装置が、前記1つまたは複数の時間制約を各々が有する前記一組のオペレーションの前
記複数のオペレーションの各々に基づいて一組の時間制約窓を決定すること、および
前記一組の時間制約窓のうちの最も大きな時間制約窓を
特定することであって、前記第1の期間が、前記最も大きな時間制約窓に関連した時間に一致する、前記
特定すること
を実行することをさらに含む、請求項1に記載の方法。
【請求項3】
前記第1の数の候補基板を処理するために前記製造システムにおいて前記一組のオペレーションを開始することが、
前記一組のオペレーションの
前記第1のオペレーションに対する
前記基板カウンタ値を、前
記第1の数に一致するように設定することであって、前記基板カウンタ値が、前記第1の期間にわたって前記第1のオペレーションで開始
されるように前記製造システムにおける基板の総数を規定する、前記設定すること
を含む、請求項1に記載の方法。
【請求項4】
前記処理装置が、
前記製造システムにおいて実行される前記一組のオペレーションを開始することを求める第2の要求を受け取ること、
前記一組のオペレーションの間に処理する第2の複数の候補基板を決定すること、
前記第2の複数の
候補基板に関する前記一組のオペレーションの第2のシミュレーションを第2の期間にわたって実行することであって、前記第2のシミュレーションが、前記第2の期間の終わりに到達するためにシミュレーション対象の前記一組のオペレーションの各々の間に
正常に処理された候補基板の第2の数を示す第2のシミュレーション出力を生成する、前記実行すること、および
前記一組のオペレーションの前記第1のオペレーションに対する前記基板カウンタ値を、前
記第2の数に一致するように更新すること
を実行することをさらに含む、請求項3に記載の方法。
【請求項5】
前記第1のシミュレーションがさらに、前記製造システムの製造装置の追加の基板処理能力を示す第2のシミュレーション出力を生成し、前記追加の基板処理能力が、前記製造装置において前記第1の期間内に
追加で正常に処理することができた基板の数に一致し、
前記処理装置が、さらに、
前記製造装置の前記追加の基板処理能力に基づいて
第2の数の候補基板を決定することであって、前記一組のオペレーションが、前記第1の数の候補基板および前記第2の数の候補基板を前記第1の期間にわたって処理するために開始される、前記決定すること
を実行することを含む、請求項
1に記載の方法。
【請求項6】
前記処理装置が、
前記
第2の数に基づいて、前記一組のオペレーションの間に処理する第2の複数の候補基板を
特定すること、
前記第1の複数の候補基板および前記第2の複数の
候補基板に関する前記一組のオペレーションの第2のシミュレーションを前記第1の期間にわたって実行することであって、前記第2のシミュレーションが、前記第1の期間の終わりに到達するためにシミュレーション対象の前記一組のオペレーションの各々の間に
正常に処理された候補基板の第3の数を示す第3のシミュレーション出力を生成する、前記実行すること、ならびに
前
記第3の数が、前
記第1の数と前
記第2の数との和に一致するかどうかを判定することであって、前
記第3の数が、前
記第1の数と前
記第2の数との和に一致すると判定されたことに応答して、前記一組のオペレーションが、前記第1の数の候補基板および前記第2の数の候補基板を処理するために開始される、前記判定すること
を実行することをさらに含む、請求項5に記載の方法。
【請求項7】
前記一組のオペレーションのうちの1つのオペレーションの前記1つまたは複数の時間制約がそれぞれ、前記1つのオペレーションの完了後の、前記
一組のオペレーションのうちの後続の1つまたは複数のオペレーションを完了しなければならない時間を含む、請求項1に記載の方法。
【請求項8】
前記第1のシミュレーションが、前記一組のオペレーションの間に処理されている1つもしくは複数の基板、前記製造システムの1つもしくは複数の製造装置の状態、前記製造システムにおける基板に関連したプロセス方策の1つもしくは複数のオペレーション、または前記製造システムにおいてオペレータによって実行される動作のうちの少なくとも1つをシミュレートするように構成された発見的シミュレーションを含む、請求項1に記載の方法。
【請求項9】
メモリと、
前記メモリに結合された処理装置と
を備え、前記処理装置が、
製造システムにおいて実行される一組のオペレーションを開始することを求める第1の要求を受け取ることであって、前記一組のオペレーションが、1つまたは複数の時間制約を各々が有す
る複数のオペレーションを含む、前記受け取ること、
前記一組のオペレーションの間に処理する第1の複数の候補基板を決定すること、
前記第1の複数の候補基板に関する前記一組のオペレーションの第1のシミュレーションを第1の期間にわたって実行することであって、前記第1のシミュレーションが
、シミュレーション対象の前記一組のオペレーションの各々
において正常に処理され
、前記第1の期間の終わりに到達する候補基板の第1の数を示す第1のシミュレーション出力を生成する、前記実行すること、および
前記第1のシミュレーション出力
によって示される前記第1の数に基づいて前記一組のオペレーションの第1のオペレーションに対する基板カウンタ値を設定することによって、前記第1の数の候補基板を前記第1の期間にわたって処理するために、前記製造システムにおいて前記一組のオペレーションを開始すること
を実行するためのものである、システム。
【請求項10】
前記処理装置がさらに、
前記1つまたは複数の時間制約を各々が有する前記一組のオペレーションの前
記複数のオペレーションの各々に基づいて一組の時間制約窓を決定すること、および
前記一組の時間制約窓のうちの最も大きな時間制約窓を
特定することであって、前記第1の期間が、前記最も大きな時間制約窓に関連した時間に一致する、前記
特定すること
を実行するためのものである、請求項9に記載のシステム。
【請求項11】
前記第1の数の候補基板を処理するために前記製造システムにおいて前記一組のオペレーションを開始するために、前記処理装置が、
前記一組のオペレーションの
前記第1のオペレーションに対する
前記基板カウンタ値を、前
記第1の数に一致するように設定することであって、前記基板カウンタ値が、前記第1の期間にわたって前記第1のオペレーションで開始
されるように前記製造システムにおける基板の総数を規定する、前記設定すること
を実行するためのものである、請求項9に記載のシステム。
【請求項12】
前記処理装置がさらに、
前記製造システムにおいて実行される前記一組のオペレーションを開始することを求める第2の要求を受け取ること、
前記一組のオペレーションの間に処理する第2の複数の候補基板を決定すること、
前記第2の複数の
候補基板に関する前記一組のオペレーションの第2のシミュレーションを第2の期間にわたって実行することであって、前記第2のシミュレーションが、前記第2の期間の終わりに到達するためにシミュレーション対象の前記一組のオペレーションの各々の間に
正常に処理された候補基板の第2の数を示す第2のシミュレーション出力を生成する、前記実行すること、および
前記一組のオペレーションの前記第1のオペレーションに対する前記基板カウンタ値を、前
記第2の数に一致するように更新すること
を実行するためのものである、請求項11に記載のシステム。
【請求項13】
前記第1のシミュレーションがさらに、前記製造システムの製造装置の追加の基板処理能力を示す第2のシミュレーション出力を生成し、前記追加の基板処理能力が、前記製造装置において前記第1の期間内に
追加で正常に処理することができた基板の数に一致し、前記処理装置がさらに、
前記製造装置の前記追加の基板処理能力に基づいて
第2の数の候補基板を決定することであって、前記一組のオペレーションが、前記第1の数の候補基板および前記第2の数の候補基板を前記第1の期間にわたって処理するために開始される、前記決定すること
を実行するためのものである、請求項9に記載のシステム。
【請求項14】
前記処理装置がさらに、
前
記第2の数に基づいて、前記一組のオペレーションの間に処理する第2の複数の候補基板を
特定すること、
前記第1の複数の候補基板および前記第2の複数の
候補基板に関する前記一組のオペレーションの第2のシミュレーションを前記第1の期間にわたって実行することであって、前記第2のシミュレーションが、前記第1の期間の終わりに到達するためにシミュレーション対象の前記一組のオペレーションの各々の間に
正常に処理された候補基板の第3の数を示す第3のシミュレーション出力を生成する、前記実行すること、ならびに
前
記第3の数が、前
記第1の数と前
記第2の数との和に一致するかどうかを判定することであって、前
記第3の数が、前
記第1の数と前
記第2の数との和に一致すると判定されたことに応答して、前記一組のオペレーションが、前記第1の数の候補基板および前記第2の数の候補基板を処理するために開始される、前記判定すること
を実行するためのものである、請求項13に記載のシステム。
【請求項15】
前記一組のオペレーションのうちの1つのオペレーションの前記1つまたは複数の時間制約がそれぞれ、前記1つのオペレーションの完了後の、前記
一組のオペレーションのうちの後続の1つまたは複数のオペレーションを完了しなければならない時間を含む、請求項9に記載のシステム。
【請求項16】
命令を含む非一過性コンピュータ可読記憶媒体であって、前記命令が、処理装置によって実行されたときに、
製造システムにおいて実行される一組のオペレーションを開始することを求める第1の要求を受け取ることであって、前記一組のオペレーションが、1つまたは複数の時間制約を各々が有す
る複数のオペレーションを含む、前記受け取ること、
前記一組のオペレーションの間に処理する第1の複数の候補基板を決定すること、
前記第1の複数の候補基板に関する前記一組のオペレーションの第1のシミュレーションを第1の期間にわたって実行することであって、前記第1のシミュレーションが
、シミュレーション対象の前記一組のオペレーションの各々
において正常に処理され
、前記第1の期間の終わりに到達する候補基板の第1の数を示す第1のシミュレーション出力を生成する、前記実行すること、および
前記第1のシミュレーション出力
によって示される前記第1の数に基づいて前記一組のオペレーションの第1のオペレーションに対する基板カウンタ値を設定することによって、前記第1の数の候補基板を前記第1の期間にわたって処理するために、前記製造システムにおいて前記一組のオペレーションを開始すること
を前記処理装置に実行させる、非一過性コンピュータ可読記憶媒体。
【請求項17】
前記処理装置がさらに、
前記1つまたは複数の時間制約を各々が有する前記一組のオペレーションの前
記複数のオペレーションの各々に基づいて一組の時間制約窓を決定すること、および
前記一組の時間制約窓のうちの最も大きな時間制約窓を
特定することであって、前記第1の期間が、前記最も大きな時間制約窓に関連した時間に一致する、前記
特定すること
を実行するためのものである、請求項16に記載の非一過性コンピュータ可読記憶媒体。
【請求項18】
前記第1の数の候補基板を処理するために前記製造システムにおいて前記一組のオペレーションを開始するために、前記処理装置が、
前記一組のオペレーションの
前記第1のオペレーションに対する
前記基板カウンタ値を、前
記第1の数に一致するように設定することであって、前記基板カウンタ値が、前記第1の期間にわたって前記第1のオペレーションで開始
されるように前記製造システムにおける基板の総数を規定する、前記設定すること
を実行するためのものである、請求項16に記載の非一過性コンピュータ可読記憶媒体。
【請求項19】
前記処理装置がさらに、
前記製造システムにおいて実行される前記一組のオペレーションを開始することを求める第2の要求を受け取ること、
前記一組のオペレーションの間に処理する第2の複数の候補基板を決定すること、
前記第2の複数の
候補基板に関する前記一組のオペレーションの第2のシミュレーションを第2の期間にわたって実行することであって、前記第2のシミュレーションが、前記第2の期間の終わりに到達するためにシミュレーション対象の前記一組のオペレーションの各々の間に
正常に処理された候補基板の第2の数を示す第2のシミュレーション出力を生成する、前記実行すること、および
前記一組のオペレーションの前記第1のオペレーションに対する前記基板カウンタ値を、前
記第2の数に一致するように更新すること
を実行するためのものである、請求項18に記載の非一過性コンピュータ可読記憶媒体。
【請求項20】
前記第1のシミュレーションがさらに、前記製造システムの製造装置の追加の基板処理能力を示す第2のシミュレーション出力を生成し、前記追加の基板処理能力が、前記製造装置において前記第1の期間内に
追加で正常に処理することができた基板の数に一致し、前記処理装置がさらに、
前記製造装置の前記追加の基板処理能力に基づいて
第2の数の候補基板を決定することであって、前記一組のオペレーションが、前記第1の数の候補基板および前記第2の数の候補基板を前記第1の期間にわたって処理するために開始される、前記決定すること
を実行するためのものである、請求項16に記載の非一過性コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の実施形態は一般に製造システムに関し、より詳細には時間制約管理(time constraint management)に関する。
【背景技術】
【0002】
完成品(例えばウエハ、電子デバイスなど)になる前に、基板は、製造システムのツールにおいて各々が実行される一組のオペレーションに従って処理されることがある。場合によっては、1つまたは複数のオペレーションが時間制約を受けうる。時間制約は、オペレーションが完了した後の、後続のオペレーションを完了させなければならない特定の時間に関連する。例えば、基板は、基板の表面に第1の材料を堆積させる第1のオペレーションおよび第1の材料上に第2の材料を堆積させる第2のオペレーションに従って処理されることがある。この第1のオペレーションおよび第2のオペレーションは、特定の時間内に第1の材料上に第2の材料を堆積させなければならないという時間制約を受けうる。特定の時間内に第1の材料上に第2の材料が堆積されない場合には、第1の材料は劣化し始めることがあり、その基板を使用して完成品を生産することができない(すなわち基板が使用不能になる)。時間制約窓は、時間制約を誘起するオペレーション(開始オペレーションと呼ばれる)を完了するための特定の時間、および開始オペレーションが完了した後の、後続のオペレーション(完了オペレーションと呼ばれる)を完了させなければならない時間に関連する。場合によっては、開始オペレーションと完了オペレーションの間に1つまたは複数のオペレーションが実行されることがある。
【0003】
ほとんどの場合、基板がツールに到着したときには、基板に対してオペレーションを始めることができない。これは、ツールが他の基板を処理していることがあるためである。そのため、オペレーションに関連した時間制約を満たすために、製造システムのオペレータ(例えばインダストリアルエンジニア、プロセスエンジニア、システムエンジニアなど)は、特定の時刻に実行するようにそれらのオペレーションのスケジュールを組む。例えば、オペレータは、時間制約に関連したオペレーションを実行するように設定されたそれぞれのツールが、時間制約窓の範囲内にそのオペレーションを実行する能力を有するまで、基板に対してオペレーションを実行するのを遅らせることができる。
【0004】
場合によっては、第1の時間制約窓の完了オペレーションが第2の時間制約窓の開始オペレーションでもあることがある。このような場合、第1の時間制約窓の第1の時間制約および第2の時間制約窓の第2の時間制約を満たすため、製造システムのオペレータは、特定の時刻に始めるように、第1の時間制約窓の開始オペレーションのスケジュールを組むことができる。他の場合には、1つのオペレーションが、第1の時間制約窓と第2の時間制約窓の両方の時間制約窓の完了オペレーションであることがある。このような場合、第1の時間制約窓の第1の時間制約および第2の時間制約窓の第2の時間制約を満たすため、オペレータは、特定の時刻に始めるように、第1の時間制約窓の開始オペレーションおよび第2の時間制約窓の開始オペレーションのスケジュールを組むことができる。
【0005】
製造システムが複雑になるにつれて、より多くのオペレーションが時間制約を受ける。開始オペレーションで始める基板のスケジュールを組むために、オペレータ(例えばコンピューティングシステムを使用するオペレータ)は、開始オペレーションによって誘起されうる全ての時間制約を考慮する。開始オペレーションによって誘起されうる全ての時間制約を考慮するため、オペレータは、開始オペレーション、完了オペレーションおよびそれらの間のそれぞれのオペレーションを実行することができるそれぞれのツールの能力を考慮する。場合によっては、開始オペレーションを含む時間制約窓が、かなり長い時間(例えば6時間、8時間、12時間、24時間など)に対応することがある。将来にわたるかなり長い時間の間、それぞれの時間制約および製造システムのそれぞれのツールの能力を考慮することは、オペレータにとって困難であることがある。いくつかのコンピューティングシステムに関して、この考慮は、NP困難(非決定性多項式時間困難(non-deterministic polynomial-time hard))問題として分類されうる。そのため、オペレータは、一組のオペレーションのそれぞれの開始オペレーションで始める基板のスケジュールをそれぞれの時間制約を満たすことができるように組むことができないことがある。その結果、その基板は、一組のオペレーションの時間制約に違反し、使用不能になりうる。使用不能になるそれぞれの基板は、全体のシステムスループットを低下させ、全体のシステム待ち時間を増大させることに寄与しうる。
【発明の概要】
【0006】
説明される実施形態のいくつかは、製造システムにおいて実行される一組のオペレーションを開始することを求める第1の要求を受け取ることを含む方法を含む。この一組のオペレーションは、1つまたは複数の時間制約を各々が有する1つまたは複数のオペレーションを含む。この方法はさらに、一組のオペレーションの間に処理する第1の一組の候補基板を決定することを含む。この方法はさらに、第1の一組の候補基板に関する一組のオペレーションの第1のシミュレーションを第1の期間にわたって実行することを含む。この第1のシミュレーションは、第1の期間の終わりに到達するためにシミュレーション対象の一組のオペレーションの各々の間に成功のうちに処理された候補基板の第1の数を示す第1のシミュレーション出力を生成する。この方法はさらに、第1の数の候補基板を第1の期間にわたって処理するために、製造システムにおいて一組のオペレーションを開始することを含む。
【0007】
いくつかの実施形態では、メモリと、メモリに結合された処理装置と。この処理装置は、製造システムにおいて実行される一組のオペレーションを開始することを求める第1の要求を受け取るためのものである。この一組のオペレーションは、1つまたは複数の時間制約を各々が有する1つまたは複数のオペレーションを含む。この処理装置はさらに、一組のオペレーションの間に処理する第1の一組の候補基板を決定するためのものである。この処理装置はさらに、第1の一組の候補基板に関する一組のオペレーションの第1のシミュレーションを第1の期間にわたって実行するためのものである。この第1のシミュレーションは、第1の期間の終わりに到達するためにシミュレーション対象の一組のオペレーションの各々の間に成功のうちに処理された候補基板の第1の数を示す第1のシミュレーション出力を生成する。この処理装置はさらに、第1の数の候補基板を第1の期間にわたって処理するために、製造システムにおいて一組のオペレーションを開始するためのものである。
【0008】
いくつかの実施形態では、非一過性コンピュータ可読記憶媒体が命令を含み、この命令は、処理装置によって実行されたときに、製造システムにおいて実行される一組のオペレーションを開始することを求める第1の要求を受け取ることを、処理装置に実行させる。この一組のオペレーションは、1つまたは複数の時間制約を各々が有する1つまたは複数のオペレーションを含む。この処理装置はさらに、一組のオペレーションの間に処理する第1の一組の候補基板を決定するためのものである。この処理装置はさらに、第1の一組の候補基板に関する一組のオペレーションの第1のシミュレーションを第1の期間にわたって実行するためのものである。この第1のシミュレーションは、第1の期間の終わりに到達するためにシミュレーション対象の一組のオペレーションの各々の間に成功のうちに処理された候補基板の第1の数を示す第1のシミュレーション出力を生成する。この処理装置はさらに、第1の数の候補基板を第1の期間にわたって処理するために、製造システムにおいて一組のオペレーションを開始するためのものである。
【0009】
本開示は、添付図面の図において例示のために示されており、限定のために示されているのではない。それらの図において、同じ参照符号は同種の要素を示す。本開示の「実施形態」または「1つの実施形態」への異なる言及は同じ実施形態を指しているとは限らず、そのような参照は少なくとも1つを意味することに留意すべきである。
【図面の簡単な説明】
【0010】
【
図1】本開示の態様による、生産環境を示すブロック図である。
【
図2】本開示の態様による、時間制約管理のための方法の流れ図である。
【
図3】本開示の態様による、時間制約管理のための別の方法の流れ図である。
【
図4】本開示の態様による、1つまたは複数の時間制約を受ける一組のオペレーションを示す図である。
【
図5】本開示の態様による、1つまたは複数のシミュレーション出力を製造システムのユーザに提供するためのグラフィカルユーザインターフェース(GUI)を示す図である。
【
図6】ある実施形態による、コンピュータシステムを示すブロック図である。
【発明を実施するための形態】
【0011】
本明細書に開示された実施形態は、製造システムにおける時間制約管理のための方法およびシステムを含む。いくつかのプロセスでは、一連のオペレーションを、製造システムのさまざまなステーションで実行することができる。例えば、基板の表面に1つのコーティング(または複数のコーティング)を堆積させ、そのコーティングに3次元パターンをエッチングするために一連のオペレーションを実行することができる。場合によっては、一連のオペレーションのうちの1つまたは複数のオペレーションが時間制約を受けうる。時間制約は、製造システムにおいてオペレーションが実行された後、特定の時間内に後続のオペレーションを完了させなければならないという制限または規約に関連しうる。例えば、製造システムは、基板の表面にコーティングを堆積させた後、特定の数時間(例えば12時間)以内に基板に対してエッチングプロセスを実行しなければならないという時間制約を受けうる。この時間制約が満たされない場合(例えば特定の数時間以内にエッチングプロセスが実行されない場合)、基板は、欠陥を持つようになり、使用不能になることがある。
【0012】
本開示の実施形態は、製造システムにおいて時間制約を管理することを対象としている。処理装置、例えば、時間制約窓マネージャ(例えば
図1の時間制約窓マネージャ110)を実行する処理装置は、製造システムにおいて実行されるオペレーションを開始することを求める要求を受け取ることができ、1つまたは複数のオペレーションは時間制約を受ける。この処理装置は、それらの時間制約を考慮して、特定の期間内に製造システムにおいて成功のうちに処理することができる基板の数を決定することができる。例えば、処理装置は、一組のオペレーションの間に処理する製造システムにおける一組の候補基板を識別することができる。いくつかの実施形態では、処理装置が、この一組の候補基板を、製造システムにおいて処理する基板の待ち行列に基づいて決定することができる。
【0013】
処理装置は、一組の候補基板に関する一組のオペレーションのシミュレーションを特定の期間にわたって実行することができる。このシミュレーションは、製造システムのディスパッチングルール(dispatching rule)(例えば、所与の時刻に製造システムにおいてどの動作を実行すべきかを決定するために使用されるルール)、製造システムに関連した状態データ、および/または製造システムのユーザ(例えばオペレーション、インダストリアルエンジニア、プロセスエンジニア、システムエンジニアなど)によって提供されるユーザデータに基づいて実行することができる。
【0014】
処理装置は、このシミュレーション期間を、1つまたは複数の時間制約を有するそれぞれのオペレーションに関連した一組の時間制約窓を決定することによって決定することができる。時間制約窓は、時間制約を開始するオペレーション(開始オペレーションと呼ばれる)を完了するための特定の時間、および開始オペレーションが完了した後の、後続のオペレーション(完了オペレーションと呼ばれる)を完了させなければならない時間に関連する。いくつかの実施形態では、開始オペレーションと完了オペレーションの間に1つまたは複数のオペレーションが実行されることがあり、それらのオペレーションは時間制約窓に関連する。処理装置は、一組のオペレーションに関連したそれぞれの時間制約に対して時間制約窓を決定することができ、最も大きな時間制約窓に基づいてシミュレーション期間を決定することができる。
【0015】
このシミュレーションは、シミュレーション期間の終わりに到達するためにシミュレーション対象の一組のオペレーションの各々の間に成功のうちに処理された候補基板の数を示す出力を生成することができる。処理装置は、このシミュレーション出力に基づいて、この数の候補基板をこの期間にわたって処理するために、製造システムにおいて一組のオペレーションを開始することができる。例えば、第1のシミュレーションの出力は、12時間の期間の終わりに到達するためにシミュレーション対象のオペレーションの各々の間に100枚の候補基板のうちの90枚が成功のうちに処理されたことを示しうる。そのため、処理装置は、12時間の期間の間に90枚の基板を処理するために、製造システムにおいて一組のオペレーションを開始することができる。いくつかの実施形態では、処理装置が、一組のオペレーションの第1のオペレーションに対する基板カウンタ値をシミュレーション出力からの候補基板の数に一致するように設定することによって、製造システムにおいて一組のオペレーションを開始することができる。基板カウンタは、この期間(例えば12時間の期間)にわたって第1のオペレーションで開始する、製造システムにおける(例えば基板待ち行列の中の)基板の総数を規定する。
【0016】
いくつかの実施形態では、このシミュレーションが、この期間内に製造装置において成功のうちに処理することができた追加の基板の数を示す別のシミュレーション出力を生成することができる。例えば、このシミュレーションは、製造システムにおける100枚の候補基板に対して実行することができる。このシミュレーションの出力は、シミュレーション対象のステップの各々で100枚の候補基板が成功のうちに処理されたことを示すことがあり、このシミュレーションの別の出力は、製造システムが、このシミュレーション期間の間に10枚の追加の候補基板を成功のうちに処理することができたこと(すなわち製造システムが追加の基板能力を有すること)を示すことがある。この追加のシミュレーション出力に基づいて、処理装置は、(例えば基板待ち行列から)追加の候補基板を識別することができ、シミュレーション出力からのこの数の候補基板および追加の候補基板をこの期間にわたって処理するために、一組のオペレーションを開始することができる。
【0017】
本開示の実施態様は、1つまたは複数の時間制約を有する一組のオペレーションに従って成功のうちに処理される製造システムにおける基板の数を予測するための技法を提供することによって、現在の技術の上述の欠陥を解決する。処理装置は、一組の候補基板に関する一組のオペレーションのシミュレーションを、将来にわたるかなりの長さの時間(例えば6時間、8時間、12時間、24時間など)に対応する期間の間、実行することができる。このシミュレーションを実行することによって、処理装置は、その期間の終わりにおける製造システムの将来の状態の予測を得ることができる。製造システムのこの将来の状態は、一組のオペレーションに従ってこの期間にわたって成功のうちに処理されそうな基板の数を示しうる。この期間にわたって成功のうちに処理されそうな基板の数を得ることによって、処理装置は、少数の基板しか一組のオペレーションの時間制約に違反しないように、またはどの基板も一組のオペレーションの時間制約に違反しないように、この期間内に一組のオペレーションにおいて開始する適切な数の基板のスケジュールを組むことができる。その結果、一組のオペレーションの時間制約に違反する基板が少数またはほぼゼロとなり、その結果、製造システムにおいて、欠陥を含まないまたは少数の欠陥を含むかなりの数の基板が処理される。その結果、製造システムにおいて処理されたより多くの基板が使用可能な最終製品になるため、全体のシステムスループットが増大し、全体のシステム待ち時間が短くなる。
【0018】
図1は、本開示の態様による、生産環境100を示すブロック図である。生産環境100は、限定はされないが、生産ディスパッチャ(production dispatcher)システム103、シミュレーションシステム105、時間制約窓マネージャ110、製造装置112(例えば製造ツール、自動化された装置など)、ユーザ装置114、および1つまたは複数のコンピュータ統合生産(computer integrated manufacturing)(CIM)システム101などの多数のシステムを含むことができる。生産環境100の例には、製造プラント、フルフィルメントセンター(fulfillment center)などが含まれうるが、これらに限定されるわけではない。簡潔かつ単純にするため、この説明の全体を通じて製造システムが生産環境100の例として使用される。
【0019】
いくつかの実施形態では、生産環境100を半導体製造環境とすることができる。このような実施形態では、製造装置112が、半導体ウエハの製造に関係する多数の異なるオペレーションを実行することができる。例えば、製造装置112は、切削オペレーション、洗浄オペレーション、堆積オペレーション、エッチングオペレーション、試験オペレーションなどを実行することができる。本開示の態様は、半導体製造環境内での半導体基板の製造に関して説明される。しかしながら、本開示の実施態様を、半導体基板とは異なるロット(lot)を製造しまたは他のやり方で処理するように構成された他の生産環境100に適用することができることに留意すべきである。
【0020】
CIM101、生産ディスパッチャシステム103、シミュレーションシステム105、時間制約シミュレーションモジュール107、時間制約窓マネージャ110、製造装置112、ユーザ装置114およびデータストア150、170は、ネットワークを介して互いに結合されたものとすることができる。ネットワーク120は、ローカルエリアネットワーク(LAN)、無線ネットワーク、移動通信ネットワーク、ワイドエリアネットワーク(WAN)、例えばインターネット、または同種の通信システムとすることができる。サーバコンピュータ、ゲートウェイコンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、ノートブックコンピュータ、PDA(パーソナルデジタルアシスタント)、移動通信装置、セル式電話、スマートフォン、ハンドヘルドコンピュータまたは同種のコンピューティング装置を含む任意のタイプの機械によって、CIMシステム101、生産ディスパッチャシステム103、シミュレーションシステム105、時間制約シミュレーションモジュール107および時間制約窓マネージャ110を個別にホストすること、または任意の組合せで一緒にホストすることができる。一実施形態では、シミュレーションモジュール107が、機械上でホストされたサーバの部分である。
【0021】
データストア150,170は永続性記憶ユニットとすることができる。永続性記憶ユニットは、局所記憶ユニットまたは遠隔記憶ユニットとすることができる。永続性記憶ユニットは、磁気記憶ユニット、光記憶ユニット、固体状態記憶ユニット、電子記憶ユニット(主メモリ)または同種の記憶ユニットとすることができる。永続性記憶ユニットは、モノリシック装置または分散した一組の装置とすることができる。本明細書で使用されるとき、「組」は、アイテムの正の整数に関連する。
【0022】
ユーザ装置114は、パーソナルコンピュータ(PC)、ラップトップ、移動電話、スマートフォン、タブレットコンピュータ、ネットブックコンピュータ、ネットワークに接続されたテレビジョンなどのコンピューティング装置を含みうる。いくつかの実施形態では、ユーザ装置114が、生産環境100のユーザ(例えばオペレータ、インダストリアルエンジニア、プロセスエンジニア、システムエンジニアなど)に、1つまたは複数のグラフィカルユーザインターフェース(GUI)を介して情報を提供することができる。
【0023】
CIMシステム101の例には、製造実行システム(MES)、企業資源計画(ERP)、生産計画および制御(PPC)、コンピュータ援用システム(例えば、設計、エンジニアリング、製造、工程計画、品質保証)、コンピュータ数値制御工作機械、直接数値制御工作機械、コントローラなどが含まれうるが、これらに限定されるわけではない。
【0024】
生産ディスパッチャシステム103は、生産環境100に対するディスパッチング判断を下すことができる。ディスパッチング判断は、所与の時刻に生産環境100内でどの動作を実行すべきかを判断する。ディスパッチングはしばしば、許された数よりも少ない数の基板を含むバッチの処理を始めるのか、または追加の基板が使用可能になり、その結果、フルバッチを始めることができるようになるまでそのバッチを始めるのを待つのかなどの判断を含む。ディスパッチング判断の例には、次に生産環境内で基板を処理しなければならない場合に、生産環境内のアイドル状態にある装置に対してどの基板を選択すべきかなどが含まれうるが、これに限定されるわけではない。
【0025】
生産ディスパッチャシステム103は、データストア150に記憶された1つまたは複数のディスパッチングルール151を使用してディスパッチング判断を下すことができる。ディスパッチングルール151は、生産ディスパッチャシステム103によって実行することができるロジックとすることができる。ディスパッチングルール151は、ユーザ(例えばインダストリアルエンジニア、プロセスエンジニア、システムエンジニアなど)が定義することができる。ディスパッチングルール151の例には、次に加工する最も優先順位の高い基板を選択すること、ツールが現在構成されている設定と同じ設定を使用する基板を選択すること、購入注文が完了したときにアイテムを梱包すること、梱包が完了したときにアイテムを出荷することなどが含まれうるが、これらに限定されるわけではない。個々のディスパッチングルール151は、対応するディスパッチングルール151を実装するための多数のデータプロセスに関連づけられたものとすることができる。データプロセスの例には、データをインポートすること、データを圧縮すること、データにインデックスを付与すること、データをフィルタに通すこと、データに数学的関数を実行することなどが含まれうるが、これらに限定されるわけではない。
【0026】
場合によっては、製造プロセスが、生産環境100内で製造装置112(例えばツールまたは自動化された装置)によって実行される数百ものオペレーションを含みうる。多くの場合に、1つまたは複数のオペレーションが時間制約を受けうる。前に論じたとおり、時間制約は、オペレーションが完了した後の、後続のオペレーションを完了させなければならない特定の時間に関連する。例えば、基板の表面に第1の材料を堆積させた後、第1の材料の堆積後の特定の時間内に、第2の材料を第1の材料上に堆積させなければならない。その特定の時間内に第1の材料上に第2のコーティングが堆積していない場合、第1の材料は劣化し始めることがあり、基板は使用不能になりうる。時間制約窓は、第1のオペレーション(開始オペレーションと呼ばれる)を完了するための時間、および第2のオペレーション(完了オペレーションと呼ばれる)を完了しなければならない特定の時間に関連する。いくつかの実施形態では、開始オペレーションと完了オペレーションの間に実行された1つまたは複数のオペレーションも時間制約窓に関連する。すぐ前の例によれば、時間制約窓は、基板の表面に第1の材料を堆積させるための第1の時間、および第1の材料上に第2の材料を堆積させる特定の時間に関連しうる。多数のオペレーションが1つまたは複数の時間制約を受けうる。いくつかの実施形態では、第1の時間制約窓の完了オペレーションが第2の時間制約窓の開始オペレーションでもあることがある。
【0027】
時間制約窓マネージャ110は、特定の期間の間に時間制約窓の開始オペレーションで始める基板の数を決定することができる。いくつかの実施形態では、時間制約窓マネージャ110が、(例えば生産ディスパッチャシステム103、オペレータなどからの)要求に応答して開始オペレーションで始める基板の数を決定することができる。決定された基板の数は基板限界(substrate limit)111と呼ばれる。生産ディスパッチャシステム103は、基板カウンタ値を保持することによって、開始オペレーションで始められた基板の数が基板限界111を満たしているかどうかを監視することができる。生産ディスパッチャシステム103は、開始オペレーションで基板が始められるごとに基板カウンタ値を更新する(例えば基板カウンタ値を1だけ減らす)ことができる。いくつかの実施形態では、基板カウンタ値がゼロであると判定されたことに応答して、生産ディスパッチャシステム103が、開始オペレーションで基板が始まるのを防ぐことができる。時間制約窓マネージャ110は、(例えばシミュレーションシステム105でシミュレーションを実行した結果として)基板カウンタ値を生産ディスパッチャシステム103に提供することができる。
【0028】
シミュレーションシステム105は、一般に生産環境100のリアルタイムオペレーションよりも速いシミュレーションを実行することができる。例えば、生産環境100がどれくらいよく機能しているのかを試験するために、シミュレーションシステム105は、1週間のシミュレーション対象時間に対するシミュレーションを数秒で実行することができる。一実施形態では、シミュレーションシステム105が、生産環境100でのプロセスの1つまたは複数のオペレーションに適用されたディスパッチングルール151をシミュレートするためのシミュレーションモジュール107を含む。別の実施形態では、ディスパッチングルール151をシミュレートするために、シミュレーションシステム105が外部シミュレーションモジュール107と通信する。
【0029】
シミュレーションモジュール107は、シミュレーションモデル173を実行して、生産環境100で実行される1つまたは複数のオペレーションをシミュレートすることができる。シミュレーションモデル173は、製造装置112および/または製造装置113で処理された基板113の将来の状態に関する予測を生成するように構成されたモデルである。シミュレーションモデル173は、ディスパッチングルール152、状態データ154および/またはユーザデータ156に基づいて1つまたは複数のオペレーションを実行することによって予測を生成することができる。いくつかの実施形態では、シミュレーションモデル173が、計算、予想、統計的予測、傾向分析などを実行することによって予測を生成することができる。いくつかの実施形態では、シミュレーションモデル173を発見的シミュレーションモデル(heuristic simulation model)とすることができる。他の実施形態または類似の実施形態では、シミュレーションモデル173を機械学習モデルとすることができる。
【0030】
いくつかの実施形態では、シミュレーションモジュール107が、シミュレーションモデル173によってシミュレートされる1つまたは複数のオペレーションに1つまたは複数のシミュレーション条件175を適用することができる。例えば、シミュレーションモジュール107は、シミュレーションモデル173を実行して、特定の一組のオペレーションをシミュレートすること、1つまたは複数のオペレーションを特定の期間の間シミュレートすること、特定の数の基板をシミュレートすること、特定の識別子を有する基板をシミュレートすることなどができる。いくつかの実施形態では、シミュレーション条件175を、生産環境110の初期化中に生産環境100の構成要素(例えばCIMシステム101、時間制約マネージャ110、生産ディスパッチャシステム103)によって設定されたデフォルト条件とすることができる。他の実施形態または類似の実施形態では、生産環境100のオペレーションの間に、生産環境100の構成要素によって、または生産環境100のユーザによって(例えばユーザ装置114を介して)、シミュレーション条件175をシミュレーションモジュール107に提供することができる。
【0031】
シミュレーションモデル173の実行中に、オペレーションは、ディスパッチング判断を呼び出すことができる。例えば、オペレーションは、シミュレーション対象の基板に対してシミュレーション対象のオペレーションを実行するために、シミュレーション対象の製造装置112の判断を起動する(例えば呼び出す)ことができる。シミュレーションモジュール107は、ディスパッチング判断に関連した(例えばデータストア150からの)ディスパッチングルール151を識別すること、およびシミュレーションモデル173を使用して、識別されたディスパッチングルール151に従ってディスパッチング判断を下すことができる。
【0032】
いくつかの実施形態では、シミュレーションモデル173がディスパッチング判断を下すために、ディスパッチングルール151に1つまたは複数の入力パラメータを提供することができる。この1つまたは複数の入力パラメータは、シミュレーション対象の1つまたは複数の製造装置112に関連した状態データ153を含むことができ、状態データ153は、特定の時刻における製造装置112の状態(例えば動作温度、動作圧、製造装置で処理されている基板の数、製造装置待ち行列の中の基板の数など)を含むことができる。状態データ153は、生産環境100のオペレーション中に製造装置112によって生成することができ、データストア150に記憶することができる。他の実施形態または類似の実施形態では、1つまたは複数の入力パラメータがユーザデータ155を含むことができる。ユーザデータ155は、生産環境100のユーザ(例えばオペレータ、プロセスエンジニア、インダストリアルエンジニア、システムエンジニアなど)によって提供されたデータを含むことができる。いくつかの実施形態では、ユーザ装置114を介してユーザデータ155を提供することができる。シミュレーションモジュール107は、データストア150からのパラメータ値(例えば状態データ153、ユーザデータ155など)を識別することができ、ディスパッチングルール151に提供された1つまたは複数の入力パラメータに対して使用するために、そのパラメータ値をシミュレーションモデル173に提供することができる。
【0033】
シミュレーションモジュール107は、シミュレーションモデル173を実行して、生産環境100での長い時間の代わりとなることができる。例えば、シミュレーションモジュール107は、シミュレーションモデル173を実行して、生産環境100の1時間、数時間、数日、1週間などのオペレーションをシミュレートするためことができる。このシミュレーション中に、シミュレーションモデル173はかなりの数のディスパッチング判断を下しうる。シミュレーションモジュール107は、シミュレーションモデル173によってなされたシミュレーションおよび/またはディスパッチング判断に関連したレポートを生成することができる。いくつかの実施形態では、このレポートが、データ、例えば生産サイクル時間、生産スループット、装置利用率などに対応するデータを含みうる。シミュレーションモジュール107は、このレポートを、生産環境100の1つもしくは複数の構成要素(例えば時間制約マネージャ110、生産ディスパッチャシステム103、CIMシステム101など)に提供することができ、および/または生産環境100のユーザに(例えばユーザ装置114を介して)提供することができる。
【0034】
いくつかの実施形態では、時間制約窓マネージャ110が、生産環境100のシミュレーションに基づいて、製造システムの特定の期間の間に一組のオペレーションに関して開始する基板の数を決定することができる。時間制約窓マネージャ110は、シミュレーションモデル173によって実行されるシミュレーションに適用する1つまたは複数のシミュレーション条件175を決定することができる。この1つまたは複数のシミュレーション条件は、シミュレートする特定の一組のオペレーション、シミュレートする特定の期間、シミュレートする基板の数、シミュレートする特定の基板の識別などを含むことができる。いくつかの実施形態では、時間制約窓マネージャ110が、生産ディスパッチャシステム103から受け取った通知、または生産環境100のユーザから(例えばユーザ装置114を介して)受け取った通知に基づいて、この1つまたは複数のシミュレーション条件175を決定する。他の実施形態または類似の実施形態では、時間制約窓マネージャ110が、製造装置112に関連した状態データ154に基づいて、この1つまたは複数のシミュレーション条件175を決定する。例えば、状態データ154に基づいて、時間制約窓マネージャ110は、100枚の基板が、時間制約を有する第1の一組のオペレーションに従って12時間の期間内に成功のうちに処理されたと判定することができる。そのため、時間制約窓マネージャ110は、シミュレーション対象の一組のオペレーションが第1の一組のオペレーションであり、シミュレーション対象の特定の期間が12時間の期間であり、シミュレーション対象の基板の数が100であると判定することができる。時間制約窓マネージャは、それらのシミュレーション条件をシミュレーションモジュール107に提供することができ、シミュレーションモジュール107は、前に説明した実施形態に従って、それらのシミュレーション条件に基づいてシミュレーションモデル173を実行することができる。
【0035】
シミュレーションモジュール107は、製造システムの特定の期間の間の一組のオペレーションに対するシミュレーションに関連したレポートを生成することができる。いくつかの実施形態では、このレポートが、データ、例えばシミュレーションモデル173によってシミュレートされた特定の数の基板の生産スループットに対応するデータを含むことができる。例えば、このレポートは、シミュレーション対象の100枚の基板について、シミュレーション対象の90枚の基板が、この特定の期間の終わりに到達するためにシミュレーション対象の一組のオペレーションの各々の間に成功のうちに処理されたことを示す指示を含むことができる。シミュレーションモジュール107は、このレポートを時間制約マネージャ110に送信することができる。いくつかの実施形態では、シミュレーションモジュール107または時間制約窓マネージャ110が、このレポートをユーザ装置114に送信することができる。ユーザ装置114は、このレポートからのデータを、ユーザ装置114によって表示された、
図5に示されたGUI500などのグラフィカルユーザインターフェース(GUI)によって、製造システムのユーザに提供することができる。
【0036】
シミュレーションモジュール107からレポートを受け取ったことに応答して、時間制約マネージャ110は、特定の期間の間に時間制約窓の開始オペレーション(すなわち製造装置112において実行される一組のオペレーションの開始オペレーション)で始める基板の数を決定することができる。前に論じたとおり、この決定された基板の数は基板限界111と呼ばれる。時間制約窓マネージャ110は、基板限界111を生産ディスパッチャシステム103に提供することができる。前に説明したとおり、生産ディスパッチャシステム103は、基板限界111を使用して、特定の期間の間に開始オペレーションで1つまたは複数の基板の処理を始めるかどうかを判定することができる。
【0037】
図2および3は、本開示の態様による、時間制約管理のための方法200、300の流れ図である。方法200、300は処理ロジックによって実行され、この処理ロジックは、ハードウェア(回路、専用ロジックなど)、ソフトウェア(例えば汎用コンピュータシステム上または専用機械上で実行されるソフトウェア)、ファームウェアまたはこれらのある組合せを含みうる。方法200、300のいくつかのオペレーションは、
図1の時間制約窓マネージャ110などの処理装置によって実行することができる。
【0038】
説明を単純にするため、方法200、300は一連の操作として図示および説明される。しかしながら、本開示による操作は、さまざまな順序でおよび/または同時に実行することができ、本明細書に図示および説明されていない他の操作とともに実行することができる。さらに、開示された主題に従ってこれらの方法を実施するのに、示された全ての操作を実行することができるわけではない。さらに、これらの方法は、その代わりに、状態図または事象によって、相互に関係した一連の状態としても表現されうることを当業者は理解および認識するであろう。
【0039】
次に
図2を参照すると、ブロック210で、処理装置は、製造システムにおいて実行される一組のオペレーションを開始することを求める要求を受け取る。いくつかの実施形態では、この製造システムを
図1の生産環境100とすることができる。いくつかの実施形態では、この要求を、製造システムにおいて実行される一組のオペレーションを特定の時刻に開始することを求める要求とすることができる。例えば、この要求を、一組のオペレーションを午後8:00に開始することを求める要求とすることができる。
【0040】
いくつかの実施形態では、この一組のオペレーションを、
図4によって示された一組のオペレーションとすることができる。
図4は、本開示の実施形態による、1つまたは複数の時間制約を受ける一組のオペレーション400を示している。それぞれのオペレーション410は、生産環境の1つまたは複数の製造設備、例えば生産環境100の製造装置112(例えばツールまたは自動化された装置)において実行される個々のプロセスに対応しうる。いくつかの実施形態では、この一組のオペレーション400の各々が、連続したオペレーションでありうる(すなわち、それぞれのオペレーション410が特定の順序に従って実行される)。いくつかの実施形態では、それぞれのオペレーション410が、限定はされないが、フォトリソグラフィ、堆積、エッチング、洗浄、イオン注入、化学機械研磨などを含む、フロントエンド製造設備において実行される個々のプロセスに対応しうる。他の実施形態または類似の実施形態では、それぞれのオペレーション410が、限定はされないが、完成したウエハの個々の半導体ダイへのダイシング、試験、組立て、パッケージングなどを含む、バックエンド製造設備において実行される個々のプロセスに対応しうる。
【0041】
前に説明したとおり、1つまたは複数のオペレーション410は時間制約を受けうる。例えば、オペレーション2は、基板の表面に第1の材料を堆積させる第1の堆積オペレーションであることがあり、オペレーション3は、第1の材料上に第2の材料を堆積させる第2の堆積オペレーションであることがある。オペレーション2および3は、基板の表面に第1の材料を堆積させた後、特定の時間内(例えば6時間以内)に第1の材料上に第2の材料を堆積させなければならないという第1の時間制約を受けうる。製造装置112がオペレーション2および3を実行するための時間は時間制約窓412に対応しうる。時間制約窓412は、開始オペレーション(すなわち時間制約窓412を開始するオペレーション410)を完了するための第1の時間、および製造装置112が完了オペレーション(すなわち時間制約窓412を完了するオペレーション410)を完了しなければならない特定の時間を含みうる。すぐ前の例によれば、オペレーション2は、製造装置112において、基板に対して、オペレーション2および3がその基板に対して第1の時間制約窓412Aの範囲内で完了するように始められなければならない。
【0042】
いくつかの実施形態では、時間制約窓412の完了オペレーションが別の時間制約窓412の開始オペレーションであることがある。例えば、オペレーション3が第2の堆積オペレーションであることがあり、オペレーション6がエッチングオペレーションであることがある。オペレーション3、4、5および6は、オペレーション3で第2の材料を堆積させた後、オペレーション6で特定の時間内(例えば12時間以内)に第2の材料をエッチングしなければならないという時間制約を受けうる。第2の時間制約窓412Bは、オペレーション3で第2の材料を堆積させるための時間、およびオペレーション6を完了するための特定の時間を含みうる。オペレーション3は、製造装置112において、オペレーション3、4、5および6が第2の時間制約窓412Bの範囲内で完了するように始められなければならない。すぐ前の例によれば、オペレーション3は、オペレーション2とともに時間制約を受けうる。そのため、オペレーション2は、基板に対して、オペレーション2および3がその基板に対して第1の時間制約窓412Aの範囲内で完了し、オペレーション3、4、5および6が第2の時間制約窓412Bの範囲内で完了するように始められなければならない。第1の時間制約窓412Aと第2の時間制約窓412Bは合わせてカスケーディング(cascading)時間制約窓と呼ばれる。
【0043】
いくつかの実施形態では、オペレーション410が2つ以上の時間制約を受けうる。例えば、オペレーション6、7、8、9および10は、オペレーション6が完了した後、特定の時間内にオペレーション10が完了しなければならないという第1の時間制約を受けうる。第3の時間制約窓412Cは、オペレーション6を実行するための時間、およびオペレーション10を完了するための特定の時間を含みうる。オペレーション9および10はさらに、オペレーション9が完了した後、特定の時間内にオペレーション10が完了しなければならないという第2の時間制約を受けうる。第4の時間制約窓412Dは、オペレーション9を完了するための時間、およびオペレーション10を完了するための特定の時間を含みうる。そのため、オペレーション6は、オペレーション6、7、8、9および10が第3の時間制約窓412Dの範囲内で完了し、オペレーション9および10が第4の時間制約窓の範囲内で完了するように始められなければならない。第3の時間制約窓412Cと第4の時間制約窓412は合わせてネステッド(nested)時間制約窓と呼ばれる。
【0044】
図2を再び参照すると、ブロック220で、処理装置(例えば時間制約窓マネージャ110)は、一組のオペレーションの間に処理する一組の候補基板を決定する。
図1に関して説明したとおり、この一組の候補基板をシミュレーション条件とすることができる。いくつかの実施形態では、時間制約窓マネージャ110が、一組のオペレーション400の間に処理する特定の候補基板を識別することができる。例えば、生産環境100の構成要素(例えばCIMシステム101、生産ディスパッチャシステム103など)は、一組のオペレーション400に従って処理する基板の待ち行列を保持することができる。いくつかの実施形態では、時間制約窓マネージャ110が、一組の候補基板が待ち行列のそれぞれの基板を含むと判定することができる。他の実施形態または類似の実施形態では、時間制約窓マネージャ110が、一組の候補基板が基板の待ち行列に含まれる特定の基板を含むと判定することができる。例えば、時間制約窓マネージャ110は、一組の候補基板に含める待ち行列の先頭にある特定の数の基板(例えば100枚の基板)(すなわち一組のオペレーションの間に処理する待ち行列の中の次の複数の基板)を識別することができる。いくつかの実施形態では、この特定の数の基板を、一組のオペレーションの間に処理する基板の以前の数に基づいて識別することができる。時間制約窓マネージャ110は、前に説明した実施形態に従って追加のシミュレーション条件を決定することができる。
【0045】
ブロック230で、処理装置は、一組の候補基板に関する一組のオペレーションの第1のシミュレーションを1つの期間にわたって実行する。いくつかの実施形態では、処理装置(例えば時間制約窓マネージャ110)が、製造システムにおいて一組のオペレーション400を実行する特定の期間を決定することができる。前に説明した実施形態に従って、この特定の期間をシミュレーション条件とすることができる。時間制約窓マネージャ110は、この期間を、一組のオペレーション400の最も大きな時間制約窓を識別することによって決定することができる。例えば、時間制約窓マネージャ110は、一組のオペレーション400の一組の時間制約窓(例えば時間制約窓412A、412B、412C、412D)を決定することができる。この一組の時間制約窓はさらに、一組のオペレーション400のそれぞれのカスケーディング時間制約およびネステッド時間制約窓を含みうる。時間制約窓マネージャ110は、一組のオペレーション400の一組の時間制約窓のうちの最も大きな時間制約窓を識別することができる。例えば、前に論じたとおり、時間制約窓412A、BおよびCはカスケーディング時間制約窓であることがある。そのため、オペレーション2は、オペレーション2~10の各々が第1の時間制約窓412A、第2の時間制約窓412Bおよび第3の時間制約窓412Cの範囲内で完了するように始められなければならない。
図4Aに示されているように、時間制約窓412A、412Bおよび412Cを含むカスケーディング時間制約窓は一組のオペレーション400の最も大きな時間制約窓である。そのため、時間制約窓マネージャ110は、シミュレーション対象の一組のオペレーションのこの特定の期間が、時間制約窓412A、412Bおよび412Cを含むカスケーディング時間制約窓に対応する時間であると判定することができる。
【0046】
いくつかの実施形態ではさらに、この特定の期間を、製造システムにおいて一組のオペレーションを実行する特定の時刻に基づいて決定することができる。例えば、ブロック210で、時間制約窓マネージャ110は、製造システムにおいて実行される一組のオペレーション400を午後8:00に開始することを求める要求を受け取ることができる。前に説明した実施形態に従って、時間制約窓マネージャ110は、一組のオペレーション400の最も大きな時間制約窓が12時間であると判定することができる。したがって、時間制約窓マネージャ110は、この期間が、午後8:00から午前8:00の間であると判定することができる。
【0047】
シミュレーション対象の一組のオペレーションに適用する1つまたは複数のシミュレーション条件(例えば期間など)を決定したことに応答して、前に説明した実施形態に従って、時間制約窓マネージャ110は、一組のオペレーションの第1のシミュレーションを、この期間(例えば午後8:00から午前8:00の間の期間)にわたって実行することができる。
【0048】
ブロック240で、処理装置は、この期間の終わりに到達するためにシミュレーション対象の一組のオペレーションの各々の間に成功のうちに処理された候補基板の数を示すシミュレーションの第1の出力を受け取る。いくつかの実施形態では、前に説明した実施形態に従って、シミュレーションモジュール107が、このシミュレーションに関連したレポートを生成することができる。このレポートは、一組の候補基板のうち、この期間の終わりに到達するためにシミュレーション対象の一組のオペレーションの各々の間に成功のうちに処理された候補基板の数を示すことができる。例えば、
図4Aを参照すると、処理装置(例えば時間制約窓マネージャ110)は、100枚の候補基板からなる一組の候補基板に関する一組のオペレーション400のシミュレーションを、時間制約窓412A、412Bおよび412Cを含むカスケーディング時間制約窓に関連した期間(例えば12時間)にわたって実行することができる。このシミュレーションの出力は、この期間の終わりに到達するために(例えばオペレーション10を完了するために)シミュレーション対象の一組のオペレーションの各々の間に100枚の候補基板のうちの90枚の候補基板が成功のうちに処理されたことを示しうる。
【0049】
いくつかの実施形態では、第1のシミュレーションによって識別された候補基板の数を検証するために、時間制約窓マネージャ110が第2のシミュレーションを実行することができる。例えば、時間制約窓マネージャ110は、第1のシミュレーション出力に含まれる成功した90枚の候補基板の第2のシミュレーションを実行することができる。時間制約窓マネージャ110は、成功した候補基板の第2の数を示す第2のシミュレーション出力を受け取ることができる。第1のシミュレーションによって識別された数の候補基板の各々が第2のシミュレーション出力に含まれていると判定したことに応答して、方法200はブロック250に進むことができる。
【0050】
ブロック250で、処理装置は、第1のシミュレーション出力を考慮して、第1の数の候補基板をこの期間にわたって処理するために、製造システムにおいて一組のオペレーションを開始する。いくつかの実施形態では、処理装置が、一組のオペレーション400の第1のオペレーション410に対する基板限界111を候補基板の第1の数に一致するように設定することによって、製造システムにおいて一組のオペレーション400を開始する。前に説明したとおり、時間制約窓マネージャ110は、候補基板の第1の数を生産ディスパッチャシステム103に提供することによって、第1のオペレーション410に対する基板限界111を設定することができる。生産ディスパッチャシステム103は、基板カウンタ値を使用して、開始オペレーションで始められた基板の数がこの期間にわたって基板限界111を満たしているかどうかを監視することができる。例えば、一組のオペレーション400の開始オペレーションで基板が始められるごとに、生産ディスパッチャシステム103は、基板カウンタ値を1だけ減らすことによって基板カウンタ値を更新することができる。更新後の基板カウンタ値は、この期間内(例えば、すぐ前の例に基づけば午後8:00から午前8:00の間)に開始オペレーションで始めることができる基板待ち行列の基板の数を、生産ディスパッチャシステム103に示すことができる。
【0051】
処理装置は、この期間の間に(例えば午後8:00から午前8:00の間に)一組のオペレーション410の多数のシミュレーションを実行することができる。いくつかの実施形態では、製造システムのユーザが、特定の時刻に(例えば4時間ごとに)製造システムに対するシミュレーションを実行することを要求することができる。他の実施形態または類似の実施形態では、処理装置が、製造システムの状態が変化したと判定したことに応答して、別のシミュレーションを実行することができる。例えば、午後8:00に、製造システムの1つまたは複数の製造装置112が、一組のオペレーション410のどのオペレーションも実行できないとする(例えば修理のために製造装置112が使用できないなど)。午前0:00に、製造装置112は、オペレーション410の実行に対して使用可能であるとする(例えば製造装置112の修理が終了した)。午後0:00にまたは午後0:00よりも前に、製造システムのオペレータは、製造システムにおいて実行される一組のオペレーションを午前0:00に開始することを求める要求を送信することができる。この要求を受け取ったことに応答して、時間制約窓マネージャ110は、一組のオペレーション400の間に処理する第2の一組の候補基板を決定することができ、この第2の一組の基板に関して一組のオペレーションの第2のシミュレーションを別の期間にわたって実行することができる。このような例では、前に開示した実施形態に従って、時間制約窓マネージャ110が、この期間が午前0:00から午後0:00の間であると判定することができる。第2のシミュレーションは、第2の期間の終わりに到達するためにシミュレーション対象の一組のオペレーションの各々の間に成功のうちに処理された候補基板の第2の数を示す第2のシミュレーション出力を生成することができる。候補基板の第2の数を受け取ったことに応答して、時間制約窓マネージャ110は、候補基板の第2の数を生産ディスパッチャシステム103に提供することによって、一組のオペレーション400の第1のオペレーション410に対する基板限界111を更新することができる。生産ディスパッチャシステム103は、基板カウンタ値を使用して、第1のオペレーション410で始められた基板の数が午前0:00から午前0:00の期間にわたって基板限界111を満たしているかどうかを監視することができる。
【0052】
図3は、本開示の態様による、時間制約管理のための別の方法300の流れ図である。前に説明したとおり、方法300は、
図1の時間制約窓マネージャ110などの処理装置によって実行することができる。いくつかの実施形態では、方法300に関して図示および説明する1つまたは複数の操作が、方法20に関して図示および説明した操作に対応しうる。他の実施形態または類似の実施形態では、方法200に関して図示および説明した一連の操作のうちの1つまたは複数の操作の実行に応答して、方法300に関して図示および説明する一連の操作のうちの1つまたは複数の操作を実行することができる。
【0053】
ブロック310で、処理装置は、製造システムの製造装置の追加の基板処理能力を示す第1のシミュレーションの第2の出力を受け取る。いくつかの実施形態では、製造装置を、
図1に関して説明した生産環境100の製造装置112とすることができる。第1のシミュレーションは、
図2に関して説明したシミュレーションとすることができる。いくつかの実施形態では、第1のシミュレーションの第2の出力が、この期間の間に製造装置112において処理することができた、第1の一組の候補基板に含まれていない基板の数を示しうる。例えば、
図4を参照すると、時間制約窓マネージャ110は、100枚の候補基板からなる一組の候補基板に関する一組のオペレーション400の第1のシミュレーションを、時間制約窓412A、412Bおよび412Cを含むカスケーディング時間制約窓に関連した期間(例えば12時間)にわたって実行することができる。第1のシミュレーションの第1の出力は、この期間の終わりに到達するために(例えばオペレーション10を完了するために)シミュレーション対象の一組のオペレーションの各々の間に100枚の候補基板の各々が成功のうちに処理されたことを示しうる。第1のシミュレーションの第2の出力は、この期間の終わりに到達するためにシミュレーション対象の一組のオペレーションの各々の間に、100枚の候補基板からなる一組の候補基板に含まれていない10枚の追加の基板を成功のうちに処理することができたことを示しうる。
【0054】
他の実施形態または類似の実施形態では、第1のシミュレーションの第2の出力が、第1の期間の一部分の間の製造装置112の推定された状態データに対応しうる。例えば、第2の出力は、第1の期間のうち、製造装置112がアイドル状態にあった(すなわち基板を処理していなかった)時間を示しうる。
【0055】
ブロック320で、処理装置(例えば時間制約窓マネージャ110)は、製造システムの製造装置の追加の基板処理能力に基づいて候補基板の第2の数を決定する。いくつかの実施形態では、時間制約窓マネージャ110が、製造装置112において処理することができた、第1の一組の候補基板に含まれていない基板の数に基づいて、候補基板の第2の数を決定することができる。他の実施形態または類似の実施形態では、時間制約窓マネージャ110が、第1の期間の一部分の間の製造装置112の推定された状態データに基づいて候補基板の第2の数を決定することができる。例えば、時間制約窓マネージャ110は、第1の期間の製造装置112がアイドル状態にあった間に処理することができた基板の数を決定することができる。
【0056】
ブロック330で、処理装置は、任意選択で、一組のオペレーションの間に処理する第2の一組の候補基板を識別する。処理装置は、候補基板の第2の数に基づいて第2の一組の候補基板を決定することができる。いくつかの実施形態では、前に説明した実施形態に従って、処理装置が、第2の一組の基板を基板待ち行列から識別することができる。すぐ前の例によれば、第1のシミュレーションの第2の出力は、この期間の終わりに到達するためにシミュレーション対象の一組のオペレーションの各々の間に、100枚の候補基板からなる一組の候補基板に含まれていない10枚の追加の基板を成功のうちに処理することができたことを示しうる。前に説明したとおり、時間制約窓マネージャ110は、待ち行列の先頭にある100枚の基板を識別することによって100枚の候補基板からなる一組の候補基板を決定する。時間制約窓マネージャ110は、待ち行列の先頭の識別された100枚の基板に続く待ち行列の10枚の基板を識別することによって、第2の一組の候補基板を決定することができる。
【0057】
ブロック340で、処理装置は、任意選択で、第1の一組の候補基板および第2の一組の候補基板に関する一組のオペレーションの第2のシミュレーションをこの期間にわたって実行する。処理装置は、この第2のシミュレーションを前に説明した実施形態に従って実行することができる。ブロック350で、処理装置は、任意選択で、この期間の終わりに到達するためにシミュレーション対象のオペレーションの各々の間に成功のうちに処理された候補基板の第3の数を示す第2のシミュレーションの出力を受け取る。
【0058】
ブロック360で、処理装置は、任意選択で、候補基板の第3の数が、候補基板の第1の数と候補基板の第2の数との和に一致すると判定する。候補基板の第3の数が候補基板の第1の数と候補基板の第2の数との和に一致すると処理装置が判定したことに応答して、方法300はブロック370に進む。すぐ前の例によれば、時間制約窓マネージャ110は、100枚の候補基板からなる一組の候補基板および10枚の候補基板からなる一組の候補基板に関する一組のオペレーションの第2のシミュレーションを実行することができる。第2のシミュレーションの出力は、合計110枚の候補基板(例えば100枚の候補基板からなる一組の候補基板の各々および10枚の候補基板からなる一組の候補基板の各々)が、この期間の終わりに到達するためにシミュレーション対象のオペレーションの各々の間に成功のうちに処理されたことを示しうる。したがって、時間制約窓マネージャ110は、候補基板の第3の数(例えば110枚の候補基板)が、候補基板の第1の数(例えば100枚の候補基板)と候補基板の第2の数(例えば10枚の候補基板)との和に一致すると判定することができる。
【0059】
いくつかの実施形態では、処理装置が、任意選択で、候補基板の第3の数が、候補基板の第1の数と候補基板の第2の数との和に一致していないと判定しうる。すぐ前の例によれば、第2のシミュレーションの出力は、この期間の終わりに到達するためにシミュレーション対象のオペレーションの各々の間に合計105枚の候補基板が成功のうちに処理されたことを示しうる。時間制約窓マネージャ110は、候補基板の第3の数(例えば105枚の候補基板)が、候補基板の第1の数(例えば100枚の候補基板)と候補基板の第2の数(例えば10枚の候補基板)との和に一致していないと判定することができる。このような実施形態では、処理装置が、任意選択で、候補基板の第3の数(例えば105枚の候補基板)に関する一組のオペレーションの第3のシミュレーションを実行することができ、この期間の終わりに到達するためにシミュレーション対象のオペレーションの各々の間に成功のうちに処理された候補基板の第4の数を示す第3のシミュレーションの出力を受け取ることができる。他の実施形態または類似の実施形態では、処理装置が、第3の数の候補基板をこの期間にわたって処理するために、一組のオペレーションを開始することができる。
【0060】
ブロック370で、処理装置は、前に説明した実施形態に従って、第1の数の候補基板および第2の数の候補基板をこの期間にわたって処理するために一組のオペレーションを開始する。
【0061】
図5は、本開示の態様による、1つまたは複数のシミュレーション出力を製造システムのユーザに提供するためのグラフィカルユーザインターフェース(GUI)500を示している。いくつかの実施形態では、製造システムに対してシミュレーションを実行した後に、製造システムのユーザに(すなわち
図1のユーザ装置114を介して)GUI500を提示することができる。GUI500は、特定の期間の間の製造システムのシミュレーションの出力に対応するデータを示すことができる。例えば、GUI要素520によって示された一組の基板の各々に対して、GUI要素520によって示された午後8:00から午前8:00の間の期間の間、シミュレーションを実行することができる。GUI要素530は、製造システムの製造装置112において実行された1つまたは複数のオペレーションを示しうる。GUI要素530のサイズおよび/または形式は、オペレーションが実行された時間および製造装置112において実行されたオペレーションのタイプに対応しうる。製造システムのユーザは、GUI500によって提供されたデータを使用して、時間制約窓の範囲内で基板が成功のうちに処理されそうかどうかを判定することができる。例えば、1つの時間制約窓は、午後8:00から午前8:00の間の時間に対応しうる。GUI要素530によって示された4つのオペレーションは時間制約窓の範囲内で完了されなければならない。ユーザは、線540によって示された時間制約窓の終わりの前に4つの全てのオペレーション530に従って処理された基板510(すなわち基板1、2およびN)を識別することによって、時間制約窓の間に成功のうちに処理されそうな基板を決定することができる。同様に、ユーザは、時間制約窓の終わりの前に4つの全てのオペレーション530に従って処理されない基板510(すなわち基板3および4)を識別することによって、時間制約窓の間に成功のうちに処理されそうにない基板を決定することができる。
【0062】
図6は、ある実施形態による、コンピュータシステム600を示すブロック図である。
図6は、本明細書で論じた方法のうちの1つまたは複数の方法を機械に実行させるための一組の命令をその中で実行することができるコンピューティング装置600の例示的な形態の機械の概略表現を示している。代替実施形態では、この機械を、ローカルエリアネットワーク(LAN)、イントラネット、エクストラネットまたはインターネットで他の機械に接続する(例えばネットワーク化する)ことができる。この機械は、クライアント-サーバネットワーク環境内のサーバまたはクライアント機械の能力内で、またはピアツーピア(もしくは分散)ネットワーク環境内のピア機械として動作することができる。この機械は、パーソナルコンピュータ(PC)、タブレットコンピュータ、セットトップボックス(STB)、パーソナルデジタルアシスタント(PDA)、セル式電話、ウエブ機器、サーバ、ネットワークルータ、スイッチもしくはブリッジ、またはこの機械がとる動作を指定する一組の命令を(逐次的にまたは他のやり方で)実行することができる任意の機械とすることができる。さらに、単一の機械だけが示されているが、用語「機械」はさらに、本明細書で論じた方法の1つまたは複数を実行するために一組の(または数組の)命令を個別にまたは共同で実行する機械(例えばコンピュータ)の集合体を含むと解釈される。実施形態では、コンピューティング装置600が、
図1の時間制約窓マネージャ110に対応しうる。
【0063】
例示的なコンピューティング装置600は、処理装置602、主メモリ604(例えばリードオンリーメモリ(ROM)、フラッシュメモリ、ダイナミックランダムアクセスメモリ(DRAM)、例えばシンクロナスDRAM(SDRAM)など)、スタティックメモリ606(例えばフラッシュメモリ、スタティックランダムアクセスメモリ(SRAM)など)、および2次メモリ(例えばデータ記憶装置528)を含み、これらはバス608を介して互いに通信する。
【0064】
処理装置602は、マイクロプロセッサ、中央処理ユニットなどの1つまたは複数の汎用プロセッサを表しうる。より具体的には、処理装置602は、複雑命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、他の命令セットを実装したプロセッサ、または、命令セットの組合せを実装したプロセッサとすることができる。処理装置602を、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号処理プロセッサ(DSP)、ネットワークプロセッサなどの1つまたは複数の専用処理装置とすることもできる。処理装置602は、システムオンチップ(SoC)、プログラマブルロジックコントローラ(PLC)もしくは他のタイプの処理装置とすることもでき、またはシステムオンチップ(SoC)、プログラマブルロジックコントローラ(PLC)もしくは他のタイプの処理装置を含むこともできる。処理装置602は、本明細書で論じたオペレーションおよびステップを実行するための処理ロジック(命令626)を実行するように構成されている。
【0065】
コンピューティング装置600はさらに、ネットワーク664と通信するためのネットワークインターフェース装置622を含むことができる。コンピューティング装置600はさらに、ビデオディスプレイユニット610(例えば液晶ディスプレイ(LCD)または陰極線管(CRT))、文字数字入力装置612(例えばキーボード)、カーソル制御装置614(例えばマウス)、および信号生成装置620(例えばスピーカ)を含むことができる。
【0066】
データ記憶装置628は、本明細書で説明した方法または機能の1つまたは複数を実施する一組または数組の命令626がその上に記憶された機械可読記憶媒体(またはより詳細には非一過性コンピュータ可読記憶媒体)624を含むことができる。非一過性記憶媒体は搬送波以外の記憶媒体を指す。命令626はさらに、コンピュータ装置600、主メモリ604および処理装置602によって実行されている間、やはりコンピュータ可読記憶媒体を構成する主メモリ604内および/または処理装置602内に完全にまたは少なくとも部分的に存在することができる。
【0067】
例示的な実施形態ではコンピュータ可読記憶媒体624が単一の媒体であるように示されているが、用語「コンピュータ可読記憶媒体」は、一組または数組の命令を記憶した単一の媒体または多数の媒体(例えば集中型もしくは分散型データベースならびに/または関連キャッシュおよびサーバ)を含むと解釈すべきである。用語「コンピュータ可読記憶媒体」はさらに、機械によって実行するための一組の命令であって、本開示の方法の1つまたは複数を機械に実行させる一組の命令を記憶または符号化することができる媒体を含むと解釈される。したがって、用語「コンピュータ可読記憶媒体」は、限定はされないが、固体状態メモリならびに光学および磁気媒体を含むと解釈される。
【0068】
本開示のいくつかの実施形態の十分な理解を提供するために、上記の説明では、特定のシステム、構成要素、方法などの例など、多数の特定の詳細を記載した。しかしながら、本開示の少なくともいくつかの実施形態はこれらの特定の詳細がなくても実施することができることが当業者には明らかであろう。他の場合には、本開示を不必要に不明確にすることを防ぐために、よく知られた構成要素または方法が、詳細には説明されていないか、または単純なブロック図の形式で示されている。したがって、記載された特定の詳細は単なる例にすぎない。特定の実施態様は、これらの例示的な詳細から外れることがあり、それでも本開示の範囲に含まれることが企図される。
【0069】
この明細書の全体を通じた「一実施形態」または「実施形態」への言及は、その実施形態に関連して説明された特定の特徴、構造または特性が少なくとも1つの実施形態に含まれることを意味する。したがって、本明細書の全体を通じたさまざまな箇所における句「一実施形態では」または「実施形態では」の出現は、その全てが同じ実施形態を指しているというわけではない。さらに、用語「または」は、排他的な「または」ではなく包括的な「または」を意味することが意図されている。用語「約」または「およそ」が本明細書で使用されているとき、これらの用語は、示された公称値が+/-10%の範囲で正確であることを意味することが意図されている。
【0070】
本明細書の方法のオペレーションは特定の順序で示され、説明されているが、あるオペレーションを逆の順序で実行することができるように、あるオペレーションを、少なくとも部分的に他のオペレーションと同時に実行することができるように、それぞれの方法のオペレーションの順序を変更することができる。別の実施形態では、異なるオペレーションの複数の命令またはサブオペレーションを断続的にかつ/または交互に実行することができる。
【0071】
上記の説明は例示的であり、制限的でないことが意図されていることが理解される。上記の説明を読み、理解した当業者には他の多くの実施形態が明らかであろう。したがって、本開示の範囲は、添付の特許請求の範囲および該特許請求の範囲が資格を与える等価物の完全な範囲に関して決定されるべきである。