Gem

GEM (Generic Equipment Model) is the SEMI standard that defines how a process tool talks to the factory host over SECS-II messaging — and in fab shorthand, engineers often say "GEP" when they mean the specific GEM equipment procedures that govern FOUP loading, unloading, carrier verification, and load-port status. Every SECS message is identified by a Stream and Function number (S3F5, S6F11, and so on): the stream groups messages by subject area, the function picks the specific message within that stream, and odd-numbered functions are always a request while the next even number is its acknowledgment.

Equipment ready to load
S6F11 event report to host
FOUP load sequenceHost (H) and equipment (E) exchange SECS-II messages
AMHS delivers FOUP
E84 physical handoff
Carrier ID read
E87 carrier management, event report
Carrier authorized
S3F17 / S3F18 host grants access
Slot map verified
E87 check, S3F5 / S3F6 material found
Wafers processed
Equipment/job control, event reports
FOUP unload sequence
Carrier closed
Ready-to-unload event, S6F11 / S6F12
AMHS removes FOUP
E84 handoff, departure event report

Stream 3 is specifically the material, carrier, and port stream, and its messages carry the FOUP lifecycle directly. S3F1/S3F2 (host asks, equipment answers material status), S3F5/S3F6 (equipment reports Material Found, host acknowledges), S3F7/S3F8 (equipment reports Material Lost), S3F17/S3F18 (host sends a Carrier Action Request, equipment acknowledges), S3F19/S3F20 (Cancel All Carrier Out), S3F21/S3F22 (Port Group Definition), S3F23/S3F24 (Port Group Action), S3F25/S3F26 (Port Action Request), and S3F27/S3F28 (Change Access, which flips a load port's access mode) — together these distinguish carrier-level actions from port-level and port-group-level actions, which is why a GEM300 equipment interface manual reads almost like a separate protocol just for load ports.

SECS-II Stream 3 — Carrier and Port Messaging odd function = request, even function = acknowledgment Host (H) Equipment (E) S3F5 Material Found Send S3F6 Material Found Acknowledge S3F17 Carrier Action Request S3F18 Carrier Action Acknowledge S3F27 Change Access S3F28 Change Access Acknowledge S6F11 Collection Event Report S6F12 Collection Event Acknowledge S6F11/S6F12 on GEM300 equipment commonly report carrier and load-port state changes the CEID (event ID) inside the message identifies exactly what happened E87 manages carrier verification; E84 handles the physical AMHS handoff — both ride on top of this SECS-II layer

E84 and E87 are the physical and logical halves of the same handoff, and GEM's SECS messages are the glue between them. E84 is the hardware handshake standard that lets an AMHS vehicle and a load port physically agree when it's safe to set down or pick up a FOUP — it doesn't carry carrier identity or slot-map data at all. E87 layers carrier management on top: reading the carrier ID, tracking carrier state (in transit, docked, open), and verifying the slot map against what the host expects. A typical load cycle runs E84's physical handoff first, then E87's verification, with SECS-II S3Fxx and S6Fxx messages reporting each stage back to the host in real time.

Other streams round out the picture around a load/unload cycle even though Stream 3 does the carrier-specific work. S1F3/S1F4 lets the host request and receive selected equipment status at any point in the sequence; S2F41/S2F42 lets the host send a remote command (like forcing a port into maintenance mode); S5F1/S5F2 reports an alarm if something in the sequence faults. None of these are carrier-specific, but a real fab's host software is watching all of them simultaneously during a FOUP cycle, correlating collection events against carrier and port state to decide what the AMHS and the load port should do next.

Exact CEIDs, SVIDs, and which optional Stream 3 functions a given tool actually implements all come from that equipment's own SECS/GEM interface manual — GEM defines the shared vocabulary and message grammar, but every vendor's equipment still documents its specific event IDs and status variables on top of it, which is why integrating a new tool type into a fab's host software always starts with reading that tool's interface manual line by line rather than assuming GEM compliance alone is enough.

Take GEM further

Ask the copilot about this term, or have our engineers assess it against your process.