半導体の工場

WIP (Work In Progress) トラッキングとは?

WIP (Work In Progress) トラッキングは、MESの中で最も基本的かつ重要な機能です。日本語では「仕掛品(しかかりひん)管理」や「工程進捗管理」と呼ばれます。

先ほどのPythonコードでも update_status で簡易的に行っていた部分ですが、実際の半導体工場におけるWIPトラッキングは、単なる「場所の記録」を超えて、「製品の履歴書と未来の予定表」を分単位で管理する高度な仕組みです。

その仕組みを専門用語(業界標準)を交えて解説します。

1. WIPトラッキングの基本サイクル(ステートマシン)

MESにおけるWIPトラッキングは、ある工程(ステップ)において、ロットの状態を厳密に切り替えることで行われます。

これをステート(状態)遷移(せんい)と呼びます。

最も基本的な4つの状態変化(トランザクション)は以下の通りです。

  1. Queue[キュー] (待機 / Arrive)

    • 前の工程が終わり、今の工程の装置の前に到着しているが、まだ加工は始まっていない状態。

    • MES上の意味: 「いつでも着工可能です」

  2. Track-In[トラックイン] (着工 / Start)

    • 最重要イベント。 ロットが装置に入り、加工が開始された瞬間。

    • MESの処理: この瞬間に「開始時刻」「使用した装置ID」「担当者(または搬送車ID)」「使用レシピ」を記録します。

    • 状態: WAITINGPROCESSING (RUN) に変化。

  3. Processing[プロセッシング] (加工中 / Run)

    • 実際に装置の中でウェーハが加工されている時間。

    • この間、MESは他のロットをこの装置に入れないようにブロックします(バッチ処理などを除く)。

  4. Track-Out[トラックアウト] (完了 / End)

    • 加工が終わり、装置から出てきた瞬間。

    • MESの処理: 「終了時刻」を記録し、自動的に**「次の工程は何か?」**をルート定義(Process Flow)から検索して、ロットの「現在工程番号」を+1します。

    • 状態: PROCESSINGWAITING (次の工程) に変化。


2. 何を記録しているのか?(データの解像度)

WIPトラッキングでは、「いまどこにいるか」だけでなく、以下のようなデータを紐付けて記録し続けています。

これをトレーサビリティ(追跡可能性)と呼びます。

データ項目内容重要性
Lot IDロット番号すべてのキーとなるID。
Step ID工程ID「ゲート酸化膜形成」「メタル配線」などの工程名。
Equipment ID装置IDどの装置で加工したか。不良発生時、この装置を通った他のロットを特定するために必須。
Recipe IDレシピ名どの設定(温度・ガス流量など)で加工したか。
Operator ID作業者ID誰が操作したか(フルオート工場ではシステムIDになることも)。
Wafer Mapウェーハ情報ロット内の25枚のうち、どのウェーハが存在するか(割れて減っていないか)。
Time Stamp時刻情報Track-InとTrack-Outの差分で「タクトタイム(処理時間)」を算出。

3. 半導体特有の高度なWIP機能

半導体製造ならではの、特殊で難しいWIPトラッキング機能があります。

① Q-Time(制限時間)管理

半導体プロセスは化学反応の塊なので、「洗浄してから2時間以内に炉に入れないと、表面が酸化して不良になる」といった厳格な時間制限があります。

  • 機能: MESはTrack-Outした瞬間からタイマーを回します。次の工程のTrack-Inが制限時間を過ぎると、自動的にロットをロック(Hold)し、エンジニアの許可がないと進めないようにします。

② Split / Merge(分割・結合)

  • Split: ロット内の25枚のうち、5枚だけを抜き出して「実験用の別条件」で流したい場合、MES上でロットを「親ロットA」と「子ロットA-1」に分割し、別々のルートを歩ませます。

  • Merge: 実験が終わったら、再度合流させて1つのロットに戻します。

  • 難点: 履歴データが枝分かれするため、システム設計が非常に複雑になります。

③ Future Hold(予約ロック)

  • 「検査工程で異常が見つかったが、原因はこのロットが3日前に通った成膜工程かもしれない」という場合。

  • エンジニアは「現在流れている他のすべてのロットが、将来その検査工程に到達したら自動で止まるように予約」します。これをFuture Holdと呼びます。

④ Rethink / Rework(やり直し)

  • 検査でゴミが見つかった場合、MES上で「洗浄工程に戻れ」と指示を出します。ロットの進捗ステップが過去に戻ります(リエントラント)。履歴上は「同じ工程を2回通った」ことが分かるように管理されます。

4. データベースではどうなっている?

WIPトラッキングを実現するためのデータベース設計(イメージ)は、主に2つのテーブルで構成されます。

  1. Current WIP Table(現在地テーブル)

    • ロットごとの「今の状態」だけを持つ。レコード数はロット数と同じ。頻繁に更新(UPDATE)される。

    • {LotID: "L001", Status: "RUN", Step: "ETCH01", Eq: "EQ_A"}

  2. Lot History Table(履歴テーブル)

    • 過去のすべての動きを持つ。更新はされず、追記(INSERT)のみされる。レコード数は膨大になる。

    • {Time: "10:00", LotID: "L001", Action: "TrackIn", Step: "CLEAN01"}

    • {Time: "10:05", LotID: "L001", Action: "TrackOut", Step: "CLEAN01"}

まとめ

WIPトラッキングとは、工場の「カーナビ 兼 ドライブレコーダー」です。

  • カーナビ機能: 次にどこへ行くべきかを示し、道を間違えないようにガイドする(ルート制御)。

  • ドラレコ機能: 事故(不良)が起きたとき、いつ・どこで・どんな運転をしていたかを完全に再生できるようにする(履歴管理)。

この機能により、数千枚のウェーハが複雑に入り乱れる工場でも、整然と製造が進められるのです。