メッセージシナリオ¶
概要¶
この章では、一般的なSECS/GEM操作の完全なメッセージフローシナリオを提供します。各シナリオには、完全なメッセージシーケンス、データ構造、および予想される応答が含まれています。
シナリオ 1:通信確立¶
1.1 説明¶
HSMS接続からオンライン操作までの完全なシーケンス。通信確立、状態照会、およびオンライン遷移を含みます。
1.2 前提条件¶
- 装置の電源が入っており、準備完了状態
- ネットワーク接続が利用可能
- HSMSパラメータが設定済み
1.3 メッセージフロー¶
1.4 詳細メッセージ¶
S1F13 - 通信確立要求:
S1F14 - 通信確立確認:
S1F14
<L[2]
<B[1] 0x00> // COMMACK = 受諾
<L[2]
<A[15] "GST-PANEL-2000"> // 装置モデル
<A[10] "V3.2.1.045"> // ソフトウェアバージョン
>
>
.
S1F3 - 主要ステータス変数要求:
S1F3 W
<L[6]
<U4 1> // Clock
<U4 2> // ControlState
<U4 3> // ProcessState
<U4 500> // ActiveAlarmCount
<U4 100> // EquipmentTemperature
<U4 200> // WaferCount
>
.
S1F4 - ステータス変数応答:
S1F4
<L[6]
<A[14] "20250101090000"> // Clock
<U1 2> // ControlState = ONLINE-LOCAL
<U1 1> // ProcessState = IDLE
<U2 0> // ActiveAlarmCount = 0
<F4 23.5> // Temperature = 23.5°C
<U4 0> // WaferCount = 0
>
.
S1F17 - オンライン要求:
S1F18 - オンライン確認:
1.5 エラー処理¶
| エラー | COMMACK/ONLACK | アクション |
|---|---|---|
| 装置準備未完了 | 0x01 | 待機してS1F13を再試行 |
| 既に通信中 | 0x02 | 既存の接続を使用 |
| メンテナンスモード | 0x02 | メンテナンス完了を待機 |
| インターロック有効 | 0x02 | 先にインターロックを解除 |
シナリオ 2:レシピダウンロード¶
2.1 説明¶
ホストがプロセスレシピを装置にダウンロードし、後で実行します。
2.2 前提条件¶
- 装置がONLINE-REMOTE
- レシピ保存領域が利用可能
- 有効なレシピ形式
2.3 メッセージフロー¶
2.4 詳細メッセージ¶
S7F19 - プロセスプログラムリスト要求:
S7F20 - プロセスプログラムリスト応答:
S7F20
<L[5]
<A[20] "RECIPE_PROD_001">
<A[20] "RECIPE_PROD_002">
<A[20] "RECIPE_TEST_001">
<A[20] "RECIPE_MAINT_001">
<A[20] "RECIPE_QUAL_001">
>
.
S7F3 - プロセスプログラム送信(ダウンロード):
S7F3 W
<L[2]
<A[20] "RECIPE_PROD_003"> // レシピID
<L[10] // レシピ本体(ステップ)
<L[4] // ステップ 1
<U4 1> // ステップ番号
<A[20] "PREHEAT"> // ステップ名
<L[5] // パラメータ
<L[2]
<A[15] "TEMP_SETPOINT">
<F4 150.0> // 150°C
>
<L[2]
<A[15] "RAMP_RATE">
<F4 10.0> // 10°C/min
>
<L[2]
<A[15] "HOLD_TIME">
<U4 60> // 60秒
>
<L[2]
<A[15] "PRESSURE">
<F4 760.0> // 760 Torr
>
<L[2]
<A[15] "GAS_FLOW">
<F4 100.0> // 100 sccm
>
>
<U4 120> // ステップ時間(秒)
>
<L[4] // ステップ 2
<U4 2> // ステップ番号
<A[20] "PROCESS"> // ステップ名
<L[6] // パラメータ
<L[2]
<A[15] "TEMP_SETPOINT">
<F4 200.0> // 200°C
>
<L[2]
<A[15] "PRESSURE">
<F4 0.1> // 0.1 Torr(真空)
>
<L[2]
<A[15] "RF_POWER">
<F4 500.0> // 500 W
>
<L[2]
<A[15] "GAS1_FLOW">
<F4 50.0> // 50 sccm
>
<L[2]
<A[15] "GAS2_FLOW">
<F4 25.0> // 25 sccm
>
<L[2]
<A[15] "HOLD_TIME">
<U4 300> // 300秒
>
>
<U4 360> // ステップ時間(秒)
>
// ... 追加ステップ ...
>
>
.
S7F4 - プロセスプログラム確認:
2.5 ACKC7 エラーコード¶
| ACKC7 | 説明 | 復旧アクション |
|---|---|---|
| 0x00 | 受諾 | なし |
| 0x01 | 権限拒否 | アクセスモードを確認 |
| 0x02 | 長さエラー | レシピサイズを確認 |
| 0x03 | マトリクスオーバーフロー | 未使用レシピを削除 |
| 0x04 | PP構文エラー | レシピ形式を修正 |
| 0x05 | 重複PP ID | 別名を使用または先に削除 |
| 0x06 | 検証エラー | ダウンロードを再試行 |
シナリオ 3:レシピアップロード¶
3.1 説明¶
ホストが装置からプロセスレシピを要求します。
3.2 メッセージフロー¶
3.3 詳細メッセージ¶
S7F5 - プロセスプログラム要求:
S7F6 - プロセスプログラムデータ:
シナリオ 4:ホスト開始によるプロセス実行¶
4.1 説明¶
ホストが装置上でプロセスジョブを開始し、実行を監視し、完了通知を受信します。
4.2 前提条件¶
- 装置がONLINE-REMOTE
- レシピがロード済み
- ロードポートにマテリアルが存在
4.3 メッセージフロー¶
4.4 詳細メッセージ¶
S2F41 - リモートコマンド(PP-SELECT):
S2F41 W
<L[2]
<A[10] "PP-SELECT"> // リモートコマンド
<L[1]
<L[2]
<A[8] "RecipeID"> // パラメータ名
<A[20] "RECIPE_PROD_001"> // 選択するレシピ
>
>
>
.
S2F42 - リモートコマンド確認:
S2F41 - リモートコマンド(START):
S2F41 W
<L[2]
<A[5] "START"> // リモートコマンド
<L[2]
<L[2]
<A[5] "LotID">
<A[20] "LOT_2025_0001">
>
<L[2]
<A[10] "SubstrateCount">
<U4 25>
>
>
>
.
S6F11 - プロセス開始イベント:
S6F11 W
<L[3]
<U4 10001> // DATAID
<U4 101> // CEID = ProcessStarted
<L[1]
<L[2]
<U4 21> // RPTID = RPT_ProcessStart
<L[5]
<A[14] "20250101100000"> // Clock
<A[20] "PJOB_001"> // ProcessJobID
<A[20] "RECIPE_PROD_001"> // RecipeID
<A[20] "LOT_2025_0001"> // LotID
<U4 25> // SubstrateCount
>
>
>
>
.
S6F11 - プロセス完了イベント:
S6F11 W
<L[3]
<U4 10002> // DATAID
<U4 102> // CEID = ProcessCompleted
<L[2]
<L[2]
<U4 20> // RPTID = RPT_ProcessState
<L[2]
<A[14] "20250101103000"> // Clock
<U1 1> // ProcessState = IDLE
>
>
<L[2]
<U4 22> // RPTID = RPT_ProcessEnd
<L[9]
<A[14] "20250101103000"> // Clock
<A[20] "PJOB_001"> // ProcessJobID
<A[20] "RECIPE_PROD_001"> // RecipeID
<A[20] "LOT_2025_0001"> // LotID
<U4 1800> // ProcessTime(30分)
<U1 0> // ProcessResult = OK
<U4 25> // ProcessedCount
<U4 24> // GoodCount
<U4 1> // BadCount
>
>
>
>
.
シナリオ 5:プロセス中止¶
5.1 説明¶
ホストまたはオペレータが実行中のプロセスを中止します。
5.2 メッセージフロー¶
5.3 詳細メッセージ¶
S2F41 - リモートコマンド(ABORT):
S6F11 - プロセス中止イベント:
S6F11 W
<L[3]
<U4 10003> // DATAID
<U4 103> // CEID = ProcessAborted
<L[1]
<L[2]
<U4 22> // RPTID = RPT_ProcessEnd
<L[9]
<A[14] "20250101101500"> // Clock
<A[20] "PJOB_001"> // ProcessJobID
<A[20] "RECIPE_PROD_001"> // RecipeID
<A[20] "LOT_2025_0001"> // LotID
<U4 900> // ProcessTime(部分)
<U1 2> // ProcessResult = Aborted
<U4 12> // ProcessedCount(部分)
<U4 11> // GoodCount
<U4 1> // BadCount
>
>
>
>
.
シナリオ 6:キャリア処理(ロード/アンロード)¶
6.1 説明¶
到着から出発までの完全なキャリア(FOUP/カセット)処理シーケンス。
6.2 メッセージフロー¶
6.3 詳細メッセージ¶
S6F11 - マテリアル受信イベント:
S6F11 W
<L[3]
<U4 20001> // DATAID
<U4 200> // CEID = MaterialReceived
<L[1]
<L[2]
<U4 40> // RPTID = RPT_Material
<L[5]
<A[14] "20250101080000"> // Clock
<A[20] ""> // CarrierID(未読み取り)
<A[20] ""> // LotID(不明)
<U1 1> // PortID = 1
<U1 1> // MaterialStatus = Present
>
>
>
>
.
S6F11 - キャリアID読み取りイベント:
S6F11 W
<L[3]
<U4 20002> // DATAID
<U4 208> // CEID = CarrierIDRead
<L[1]
<L[2]
<U4 42> // RPTID = RPT_Carrier
<L[5]
<A[14] "20250101080010"> // Clock
<A[20] "FOUP_A001"> // CarrierID
<A[10] "FOUP-300"> // CarrierType
<U1 2> // CarrierState = ID_VERIFIED
<L[0]> // ContentMap(マッピング前は空)
>
>
>
>
.
S6F11 - スロットマップ読み取りイベント:
S6F11 W
<L[3]
<U4 20003> // DATAID
<U4 202> // CEID = SlotMapRead
<L[1]
<L[2]
<U4 41> // RPTID = RPT_SlotMap
<L[5]
<A[14] "20250101080030"> // Clock
<A[20] "FOUP_A001"> // CarrierID
<U1 1> // PortID
<L[25] // SlotMap(25スロット)
<U1 3> // スロット1:基板あり
<U1 3> // スロット2:基板あり
<U1 3> // スロット3:基板あり
<U1 1> // スロット4:空
<U1 3> // スロット5:基板あり
// ... 残りのスロット ...
<U1 1> // スロット25:空
>
<U4 20> // SubstrateCount = 20
>
>
>
>
.
6.4 スロットマップ値¶
| 値 | 説明 |
|---|---|
| 0 | 未定義 |
| 1 | 空 |
| 2 | 非空(未確認) |
| 3 | 正常占有 |
| 4 | ダブルスロット |
| 5 | クロススロット |
シナリオ 7:アラーム処理¶
7.1 説明¶
検出からクリアまでの完全なアラームライフサイクル。
7.2 メッセージフロー¶
7.3 詳細メッセージ¶
S5F1 - アラーム設定:
S5F1 W
<L[3]
<B[1] 0x83> // ALCD = 設定 + カテゴリ3(警告)
<U4 3001> // ALID = 温度高警告
<A[45] "Temperature High Warning: Zone 1 = 175.5C (Limit: 170C)">
>
.
S5F1 - アラームクリア:
S5F1 W
<L[3]
<B[1] 0x03> // ALCD = クリア + カテゴリ3
<U4 3001> // ALID
<A[35] "Temperature Normal: Zone 1 = 165.2C">
>
.
シナリオ 8:装置定数変更¶
8.1 説明¶
ホストが装置設定パラメータを変更します。
8.2 メッセージフロー¶
8.3 詳細メッセージ¶
S2F13 - 装置定数要求:
S2F13 W
<L[4]
<U4 100> // ECID: T3タイムアウト
<U4 101> // ECID: T6タイムアウト
<U4 102> // ECID: T7タイムアウト
<U4 200> // ECID: プロセス温度限界
>
.
S2F14 - 装置定数データ:
S2F14
<L[4]
<U4 45> // T3 = 45秒
<U4 5> // T6 = 5秒
<U4 10> // T7 = 10秒
<F4 200.0> // 温度限界 = 200°C
>
.
S2F15 - 新装置定数:
S2F15 W
<L[2]
<L[2]
<U4 100> // ECID: T3タイムアウト
<U4 60> // 新値:60秒
>
<L[2]
<U4 200> // ECID: プロセス温度限界
<F4 220.0> // 新値:220°C
>
>
.
S2F16 - 新装置定数確認:
8.4 EAC エラーコード¶
| EAC | 説明 |
|---|---|
| 0x00 | OK |
| 0x01 | ECが存在しない |
| 0x02 | 値が範囲外 |
| 0x03 | ビジー、後で再試行 |
シナリオ 9:時刻同期¶
9.1 説明¶
ホストが装置の時刻を同期します。
9.2 メッセージフロー¶
9.3 詳細メッセージ¶
S2F17 - 日時要求:
S2F18 - 日時データ:
S2F31 - 日時設定:
S2F32 - 日時設定確認:
シナリオ 10:ターミナルサービス(オペレータメッセージ)¶
10.1 説明¶
ホストが装置のオペレータディスプレイにメッセージを送信します。
10.2 メッセージフロー¶
10.3 詳細メッセージ¶
S10F3 - ターミナル表示(単一):
S10F3 W
<L[2]
<U1 0> // TID = ターミナル0(メイン)
<A[80] "ATTENTION: Lot LOT_2025_0001 requires visual inspection before continuing.">
>
.
S10F4 - ターミナル表示(単一)確認:
S10F5 - ターミナル表示(マルチブロック):
S10F5 W
<L[2]
<U1 0> // TID
<L[3]
<A[60] "=== MAINTENANCE NOTIFICATION ===">
<A[60] "PM #3 is due in 100 wafers.">
<A[60] "Please schedule maintenance window.">
>
>
.
シナリオ 11:通信障害時のスプーリング¶
11.1 説明¶
装置がホスト通信障害時にメッセージをスプールし、接続復旧時に送信します。
11.2 メッセージフロー¶
11.3 詳細メッセージ¶
S2F43 - スプーリングリセット:
S6F23 - スプールデータ要求:
シナリオ 12:マルチブロックメッセージ処理¶
12.1 説明¶
S13マルチブロック照会/許可プロトコルを使用した、シングルブロックサイズを超える大規模メッセージの処理。
12.2 メッセージフロー¶
12.3 詳細メッセージ¶
S13F1 - マルチブロック送信照会:
S13F1 W
<L[4]
<U4 12345> // DATAID
<U1 6> // DESSION = Stream 6
<U1 11> // DESSION = Function 11
<U4 50000> // MLENGTH = 50000バイト
>
.
S13F2 - マルチブロック送信許可:
| GRANT | 説明 |
|---|---|
| 0x00 | OK、マルチブロックメッセージを送信 |
| 0x01 | 拒否、ビジー後で再試行 |
| 0x02 | 拒否、空き領域不足 |
シナリオサマリー表¶
| シナリオ | 主要メッセージ | 方向 | 複雑度 |
|---|---|---|---|
| 通信確立 | S1F13/14, S1F17/18 | H→E | 基本 |
| レシピダウンロード | S7F3/4 | H→E | 中 |
| レシピアップロード | S7F5/6 | H←E | 中 |
| プロセス実行 | S2F41/42, S6F11/12 | H↔E | 上級 |
| プロセス中止 | S2F41/42 | H→E | 中 |
| キャリア処理 | S6F11/12, S3F17/18 | H↔E | 上級 |
| アラーム処理 | S5F1/2, S6F11/12 | E→H | 中 |
| 装置定数 | S2F13/14, S2F15/16 | H→E | 基本 |
| 時刻同期 | S2F17/18, S2F31/32 | H→E | 基本 |
| ターミナルサービス | S10F3/4 | H→E | 基本 |
| スプーリング | S2F43/44, S6F23/24 | H↔E | 上級 |
| マルチブロック | S13F1/2 | E→H | 中 |