当前位置:首页 > 半导体CIM FDE实战手册 > 正文内容
批次追踪与WIP:Lot状态机、暂存与Hold的落地细节
批次追踪与WIP:Lot状态机、暂存与Hold的落地细节

【摘要】

盘点时 MES 说 12,480 片在制,实物只有 12,341 片,差 139 片。车间主任一句话把会议定死:"系统不准。"

这个场景我经历太多次。差额从来不是"系统算错",而是四个具体的建模漏洞:三层状态混在一张表里写、暂存不计时间、Hold 谁都能放、WIP 口径没定义。批次追踪是 CIM 里最难的一块,难度不在技术,在于 Lot 是 Fab 里唯一一个"每个部门都对它有不同定义"的对象。

这篇给一套可落地的模型:以 Move 交易为唯一事实、以状态为投影,把账实不符从"月度悬案"变成"每日清单"。

【核心要点】

  • 三层状态必须拆开:Lot 级(业务)、Lot-Step 级(工序)、Wafer 级(片)——混一张表,改一处崩三处
  • 状态的唯一事实来源是交易(Track-in / Track-out / Move / Hold / Release),状态是投影,不是输入
  • 暂存(Storage / Bank)必须独立计时:Lot 一进 Stocker,Q-time 时钟不能停
  • Hold 的权限要分两层:谁都能 Hold(安全),只有指定职能能 Release(责任)
  • 拆批合批要有谱系与数量守恒校验,Lot ID 规则定不下来,追溯链一定断
  • WIP 对不上,先问三件事:口径含不含暂存?漏 Move 有没有检测?盘点用的是哪个快照?

---

一、三层状态,别混一张表

批次追踪设计的第一刀,切在状态的层级上。三层各有各的语义,混写是灾难的开始:

层级 对象 典型状态 谁在用
Lot 级一个批(通常 25 片 FOUP)Wait / InProcess / Hold / Bank / Transit / Rework / Scrapped / Completed生产管理、计划、客户报表
Lot-Step 级批在某一工序的实例Pending / Queued / TrackedIn / TrackedOut / SkippedMES 派工、设备联机、Q-time
Wafer 级单片Normal / Hold / Measured / Scrapped / Split-out良率分析、工程分析、报废审批

最常见的错误是把"在站"和"在制"混成一个字段。Lot 出站但没进下一站,它在 Batch 里还是 Wait,但在工序维度已经 TrackedOut——这两个状态必须同时存在,因为生产要看前者,Q-time 和派工要看后者。

第三个错误是 Wafer 级被省掉。省掉的代价在第一次拆批时兑现:母批拆成两批,片号归属没记,三个月后良率异常要追到片,追溯链断在拆分点——这时候补数据是不可能的。

结论:三层都要有表,用 Lot ID + Step Seq + Wafer ID 三级键关联。别为了省三张表,后面花三个月做数据修复。

二、Lot 状态机:交易是事实,状态是投影

状态机怎么设计不吵架?一条原则:任何状态变化都必须由一条交易触发,状态字段只是交易的投影。

TrackIn(Lot, Step, Tool, Time, Operator)
  → Lot.Step.State = TrackedIn
TrackOut(Lot, Step, Qty, Time)
  → Lot.Step.State = TrackedOut, Lot.State = Wait
Move(Lot, FromStep, ToStep)
  → Lot.CurrentStep = ToStep
Hold(Lot, Type, Reason, Owner) / Release(Lot, Approver)
Split(Lot, Qty[]) / Merge(Lots[])

这样设计的三个好处:

1. 任何状态都能回溯到人和时间。 客户问"这批为什么在 Hold 待了 6 天",答案是交易表里的两行,不是一句"系统显示的"。

2. 状态算错可以重算。 交易表是完整的,投影错了,重放一遍就回来了。反之如果状态是人工输入的,错了只能猜。

3. 漏 Move 可以被检测。 设备侧 EAP 采集到 Process Start / End,MES 侧却没有对应的 TrackIn——这条比对每天跑一次,自动列出"未申报交易"清单。这是把账实不符从"月底发现"变成"当天发现"的唯一办法。我做过的最有效的一个报表就是这张,第一周每天能捞出 30–80 条。

状态机本身不要设计得太细。Wait 里再分 WaitForTool / WaitForOperator / WaitForMaterial?不要。子场景进"原因码"字段,跟设备状态管理(03-02)一个道理:状态管骨架,原因码管肉。

三、暂存与 Q-time:最容易漏的一段路

Fab 里 Lot 的时间有相当一部分不在机台上,在 Stocker、在暂存架、在走廊的推车上。这一段路有两个建模要求:

第一,暂存要作为独立状态和独立库位。Lot 从工序 A 出站后进 Stocker,状态是 Bank 而不是 Wait。差别在哪?Wait 意味着"可以被派工",Bank 意味着"占着库位、等着被取出"。两者混用,派工系统会给一个还在货架上的批发派工单,操作员找不到批,反复确认,最后把派工单关掉——派工遵从率就是这么掉下去的。

第二,Q-time 时钟不能停。Q-time 是工艺约束:清洗出站到进炉不能超过 2 小时(自然氧化层),光刻后到刻蚀不能超过 4 小时(胶层稳定性),诸如此类。这些时间窗跨工序、跨库位、跨班次,一旦 Lot 进了暂存就不计时,Q-time 形同虚设。

Q-time 的实现要点三条:

  • 起算点是上一站 TrackOut 时间,不是下一站排队时间;
  • 计时器要能配"豁免条件"(设备停机、Hold、等待量测),但每一条豁免都要走审批,否则豁免会变成默认;
  • 超时后动作要分档:黄灯提醒(剩 25%)→ 红灯冻结派工(必须工程放行)→ 强制重工(工艺规程规定的必须执行)。

Q-time 是批次追踪的副产品,但很多厂是上线半年后才想起来要它,那时数据已经积了一堆无法倒推的空白。在需求阶段就问客户:"你们有哪几条 Q-time?" 这个问题能提前暴露 30% 的追溯需求。

四、Hold 的权限矩阵

Hold 是 Fab 里政治性最强的一个动作:它停的是批,担的是责任。

权限矩阵要写死两列:

动作 谁能做 附带条件
Hold(工程)工艺/设备/良率工程师必须选原因码 + 填一句话理由
Hold(质量)质量工程师、QC必须关联 NCR 或异常单号
Hold(设备)设备工程师、EAP 自动报警触发时自动 Hold,解除由人确认
Release仅 Hold 发起人所在职能 + 质量签字(质量 Hold)必须填处置结论:放行 / 重工 / 报废
强制 Release值班经理(留痕,进周报)超过 24 小时未处置的批才允许

三个必须注意的落地细节:

Hold 类型不能只有一个字段值。工程 Hold、质量 Hold、设备 Hold 三类的处置流程完全不同,混成一个 on_hold 布尔值,三个月后没人说得清这 200 个批在等谁。

Release 必须留"处置结论"。只放行不写结论,等于把判断成本转给下一个人。我见过最离谱的一个厂:一批被 Hold 过 7 次,每次原因都是"确认中",最后报废,责任查不到任何人。

自动 Hold 必须有自动提醒。EAP 因报警自动 Hold 的批,超过 4 小时没人看,系统要升级通知——否则自动 Hold 会变成"自动消失的批",物理上还在机台,系统里没人管。

五、拆批与合批:谱系不能断在分叉点

拆批(Split)和合批(Merge)是追溯链最脆弱的地方。规则给四条:

  1. Lot ID 规则先定,再写代码。建议 L{YYMMDD}-{线体}{批次}-{序号},拆批用 .01 .02 后缀,合批新建号并在谱系表里记全部来源。ID 里不要塞会被业务改的信息(客户、优先级),改一次全断。
  2. 数量守恒校验。拆批后子批片数之和必须等于母批;合批同理。这条校验写成数据库约束,不靠界面提示。
  3. 合批的准入条件要严。同 device、同 layer、同 step、同 recipe、同优先级、同 Hold 状态才允许合。放宽一条,良率异常时就分不清是设备问题还是批混了。
  4. 谱系表双向可查。从成品批要能一次查到所有母批和拆批节点,从母批要能查到所有流向。单向谱系在实际追溯里没用——客户问的永远是"这批的料是哪来的"。

六、WIP 对不上,先问三件事

盘点差额出现时,别急着查数据。按顺序问三个问题,八成能定位:

问题一:口径含不含暂存和在途?MES 报"在制 12,480",可能只算了 TrackIn 未 TrackOut 的;实物盘点算的是车间里所有片。口径不同,差 100 多片是必然的。WIP 定义必须在项目初期写成一页纸,签字。

问题二:漏 Move 有没有检测机制?没有 EAP-MES 交易比对,漏 Move 只能靠人发现。上了比对,每天一张清单,漏的当场补,差额不会累积到月度。

问题三:盘点用的是哪个时点的快照?盘点通常按区域分批做,从早到晚跨 8 小时。用盘点开始时刻的快照去对 8 小时后结束的实物,中间在制的批全都会对不上。正确做法:盘点期间冻结区域交易,或者按"盘点时刻快照 + 期间交易回放"还原。

三个问题问完还有差额,那才是真的丢了片——这时候查的是人、是流程,不是系统。

七、可复用点

  1. 三层状态拆表:Lot / Lot-Step / Wafer,三级键关联,别省。
  2. 交易是事实,状态是投影;交易表可重放,状态算错能自愈。
  3. 设备 Process Start/End 与 MES TrackIn/Out 每天比对,自动列"未申报交易"清单。
  4. 暂存独立状态(Bank)+ 独立库位;Q-time 起算点是上一站 TrackOut,豁免要审批。
  5. Hold 分三类(工程/质量/设备),各走各的流程;Release 必须填处置结论。
  6. 拆批 ID 规则先定,数量守恒写成数据库约束,谱系双向可查。
  7. WIP 差额三步定位:口径 → 漏 Move → 快照时点。

下一篇讲报警系统:ALID、分级与升级路径——报警做不好的厂,通常不是技术问题,是把三类完全不同的报警塞进了一个池子。

判断口诀:Lot 状态是投影,Move 交易才是事实;投影错了能重算,事实缺了没法补。

相关文章

FDE到底是什么?和普通实施、售前、驻场开发、FAE的区别

FDE到底是什么?和普通实施、售前、驻场开发、FAE的区别 【摘要】 FDE 这个 title 这两年在国内制造业软件圈被用烂了:有的公司把驻场实施改名叫 FDE,有的把售前技术支持也叫 FDE。结果...

FDE薪资逻辑:半导体CIM方向为什么能开到30k–70k

FDE薪资逻辑:半导体CIM方向为什么能开到30k–70k 【摘要】 同一批候选人里,做 MES 实施 5 年的开 18k,做 CIM FDE 3 年的开 35k,这中间的差价不是资历,是风险定价。...

台系、韩系、国内晶圆厂,FDE交付模式差在哪

台系、韩系、国内晶圆厂,FDE交付模式差在哪 【摘要】 很多 FDE 的技术能力没问题,栽在"厂型不匹配"上。同一个人,在台系厂被评价"反应快、能扛事",换到韩...

FDE的作战栈:CIM全栈、SECS/GEM、数据库、脚本、Fab常识

FDE的作战栈:CIM全栈、SECS/GEM、数据库、脚本、Fab常识 【摘要】 FDE 的能力结构不是"深井",是"五根柱子"。任何一根塌了,现场就会卡住;但...

本专栏阅读路线、配套资产与适用人群

本专栏阅读路线、配套资产与适用人群 【摘要】 这份手册写了一件事:一个半导体 CIM 方向的 FDE,在现场到底该怎么干活。 不是产品说明书,不是 SEMI 标准翻译,也不是成功学。每一篇都尽量落到&...

FDE完整交付周期:从前期介入到闭环沉淀的六个阶段

FDE完整交付周期:从前期介入到闭环沉淀的六个阶段 【摘要】 大多数人以为 FDE 的工作从"合同签完、接到派单"开始。实际在成熟供应商里,FDE 从售前技术评估就该介入——因为一...