Posted on Thu, Jul 08, 2010
The semiconductor industry's largest event of the year, SEMICON West, is right around the corner. And with the market in recovery, we expect it to be a good turn out and a great show.
This year, Cimetrix has several exciting new developments to discuss at the show:
- GEM Implementation - Faster & Better
We've been at work developing a new solution that enables an even faster GEM implementation... while still improving the already high level of quality you've come to expect from Cimetrix. Designed to cover 90% of typical GEM interfaces, the new solution helps reduce time to market (and headaches) for our customers.
- The Year for Interface A - Are you Ready?
ISMI announced the new Freeze Version of the Interface A Standards on June 17. Also, with increased SEMI investment and fabs requiring implementation, this has quickly become a hot topic. Is your software able to support multiple versions of the Interface A standard at the same time? Are you set up to adopt the new version effectively and efficiently?
We would love the opportunity to discuss your unique needs and projects with you further at the show.

Not registered for the show? Email us for a free pass.
We will be in the South Hall - Booth #2331.
See you at the show!
Posted on Tue, Feb 09, 2010
by Matt Mayer,
Principal Software Engineer, Global Services
- Establishing Communication- A standardized communications mechanism ensures both equipment and host have agreed, and all requirements necessary for properly collaborating data (between tool and host) based on the SEMI® SECS messaging standards (E5) are compatible during the connected status and after connection could have been disrupted.
Spooling- Spooling is an essential part of keeping synchronization with the tool. Communications (connect status) can be disrupted. In the event of communication disruption, the tool can be configured to spool collection event (S6F11) messages after communications has been restored and the host requests the last know transactions for the lost time span.
Spooling can be configured to retain a SECS message pooled history of almost any stream and function (SEMI E5 standard). With this enriched functional capability, any condition of the tool can be relayed at anytime after communication has been re-established (e.g.: alarms, events, processing state changes, etc…).
With that said about spooling, the host is required to take special care of the data received and re-act to the latest available data (spooled messages) in the most appropriate manner. In many cases, this behavior of the host takes special care at documentation and tool manufacturer collaboration.
Alarm Handling- The alarm handling capability provides for host with notifications and management of alarm conditions occurring on the equipment. Typically an alarm is associated with abnormal conditions of the equipment.
With each alarm a correlating set/clear event notification will be issued to the host. As with each event definition, a report can be defined and linked in order to associate variable data specific to the alarm (see Event Handling).
Event Handling- Event handling provides a dynamic and flexible method for the tool manufacturer to customize the equipment to meet needs specified by the fabrication facilities with respect to data representation and presentation to the host. The event based approach to data collection provides automatic notification to the host and its activities which are useful in monitoring the equipment and in maintaining synchronization with the equipment.
Reports can be configured by the host application and attached to event report messages (S6F11). These reports are linked to the desired event and are typically associated with variable data relating to the event generated by the equipment.
Variable Handling- The variable handling capability provide both the tool and equipment the ability to share details. Variables are categorized in three groups.
Groups:
- Equipment Constants, provides the capability for the host to read and change the value of selected variables of type EC which allow the host to reconfigure the variety of equipment functionality.
- Status data, the values of a status variable will be current.
- Discrete data, the values of DVs are only guaranteed to be valid at the occurrence of a collection event.
Process State Model Handling- The processing state model is dependent on the equipment process and technology. However, there are expected common aspects to these models. Many of these equipments use the GEM proposed state model with some variations. An ERROR and MANUAL state can be utilized during initialization and when the state is idle.
Based on the SEMI E30 standard, the equipment must generate collection events for each processing state transition, as well as provide status variables (ProcessState, PreviousProcessState) which values represent the current processing state and the previous processing state. Other collection event reports can be defined and linked to event triggers.
Remote Command Handling- The capability which provides the host with control over the equipment and its operations. A remote command consists of parameter name/value pair with a particular host command (S2F41). The equipment manufacturer will provide unique names for any supported command parameters. The command parameters are defined by fabrication facilities and equipment manufacturers.
A typical set of remote commands are listed below. However, the list is not a constraint and any set of remote commands can be specified and used.
- PPSELECT
- START
- STOP
- PAUSE
- ABORT
Recipe Upload/Download Handling- Recipe handling provides the means for transferring process (recipe) information between the host and the equipment. The specifications for equipment processing (e.g. recipes) are managed through SECS messages (E5). Recipe uploading and downloading will be accomplished using several formats and combination thereof.
Formats:
- Unformatted recipe content
- Formatted recipe content
- Value based content transfer
- File based content transfer
In addition to the above mentioned considerations, Cimetrix's CIMConnect, an object-oriented software development kit for equipment suppliers to quickly develop a GEM interface, also allows for multi-host connections.
You might also be interested in:
Posted on Wed, Nov 18, 2009
by Brian Rubow,
Principal Engineer
He Said…No I Didn’t
I have a lot of children—seven. Many of them are still young. Sure it is a lot of fun. However, more often than I like (yet not terribly often since I have really good kids), I get caught in the middle of a “he said/no I didn’t” dispute. That is where one of my children shows up in a huff to wherever I am and reports what “he said”, he meaning another one of my children. Then in the background I’ll hear the other one say either the “no I didn’t’ or the “but that’s because he said” response. And both kids look at me and expect the impartial judge (a.k.a. me) to do something. Each of them will give the impression of complete honesty and full recollection, yet they cannot agree about what happened or about what the other said.
My preference is to make them work it out. Still, I can’t help but wish that I could have recorded what actually happened so that if one of them is being a poop I can apply fair discipline. It would be really nice to attach a recording device to each of my children 24/7 to see what really happens. Would that be considered cruel or responsible parenting? Probably depends on whether you are the parent or child.
At Cimetrix, we deal with similar situations working with SECS/GEM communication. Sometimes either the host or equipment reports a problem. The host software says “the equipment said” and the equipment software says “but the host said”. And both look to an expert like me and want a resolution.
Often the best way to resolve the problem is to look at communication log files. Often enough when such problems occur the first time, neither the host nor the equipment was logging the SECS/GEM communication. Sometimes turning on communication logging in the host or equipment is more difficult than it should be. In a few cases, the host or equipment logging might not be trustworthy. The best solution is an impartial judge that records what both the host and equipment are saying so as to not rely on the host or equipment software.
But can that be done? The answer is yes. There is a free product called WireShark available on the internet at http://www.wireshark.org/. It is a network protocol analyzer, also called a “network sniffer”. It is really cool because it can capture all messages sent by the host and by the equipment without any modification to the host or equipment. Just configure it and run the problem scenario again.
Only it is not quite that easy. One problem is that WireShark does not have a plug-in to interpret the binary SECS/GEM message format (HSMS). If you are a SECS/GEM/HSMS guru that can readily and quickly interpret SECS/GEM messages in hexadecimal format, then this is a minor inconvenience. But for most of us that are too busy for such a tedious task, this is a major problem that makes WireShark impractical.
Fortunately, Cimetrix has a new product to resolve this, CIMSniffer. Under the hood, it uses the same network capturing libraries as WireShark, yet it has the capability to convert the messages into human readable SML formatted messages. You don’t have to wonder exactly what “the equipment said” or what “the host said”. You can record what they said yourself using a third-party software application. I wish I had this years ago. Too bad it won’t work with my kids.
For more information regarding the CIMSniffer product, please email sales@cimetrix.com.
You might also be interested in:
Posted on Tue, Nov 10, 2009
by Vladimir Chumakov,
Software Engineer
HSMS or High-Speed SECS Message Services is a messaging protocol used in semiconductor and other industries as means for connecting to, controlling and gathering data from equipment inside the factory. HSMS provides means for independent manufacturers to produce implementations which can be connected and interoperate without requiring specific knowledge of one another.
HSMS was defined by SEMI in the mid 1990’s as an alternative to aging SECS-I protocol that uses much slower and otherwise more limited RS-232 hardware.
HSMS vs. SECS-I:
- Throughput – HSMS uses TCP/IP and Ethernet which allow speeds up to 1000Mb/s (and higher as technology advances) where SECS-I is limited to 9600b/s or even slower when length of connection between devices increases.
- Distance – lengths of RS-232 cables is usually limited to somewhere less than 1000 feet where Ethernet, with the use of additional devices such as network hubs, has no limits.
- Connectivity – RS-232 is a point-to-point connection where each device has to have an available hardware port. In the factory, a GEM Host has to connect hundreds of equipments and has to have a separate dedicated RS-232 port for each one. With HSMS, a computer with single network interface card can connect to hundreds of equipment.
HSMS is used in all modern semiconductor factories as means for the factory host system to connect to, monitor and control individual equipments.
You might also be interested in:
Posted on Tue, Oct 06, 2009
by Bill Grey,
Director of Research & Development
Engineers often ask, “What are the differences between Interface A and SECS/GEM for data collection.” This is a high-level comparison of Interface A and SECS/GEM/HSMS-SS data collection features. We are working on some tools to help demonstrate Interface A data collection. More on that later….
Clients
Interface A supports multiple clients where SECS/GEM is usually a single client.
Security
Interface A can be configured for SSL secured communications. Only clients with a valid certificate can use the interface and all data across the wire is encrypted.
HSMS is not secured. In HSMS, any host that has the device ID can connect and data across the wire is binary encoded, but not encrypted.
Additionally, Interface A client features are gated by privileges where GEM features are not privileged.
Equipment Model
Interface A E125 provides methods for its client to upload a description of the logical structure of the equipment which includes parameters, events, and exceptions assigned to modules, subsystems, and IO devices. In this manner, each parameter, event, and exception has the context of the owning component.
In GEM, similar information is found in a manual provided with the equipment. Unfortunately, in most equipment manuals, the relationship of which component on the equipment produces the parameter, event, or exception is not available. Context is missing.
Traces
Interface A traces have features that GEM traces do not. Interface A traces have start and stop triggers. These triggers may include one or more events and/or exceptions. The trace would begin collecting data when any of the start triggers occurs and stop collecting data when one of the stop triggers occurs. This is useful as a trace for a processing module may be defined to start when a processing started event occurs and to stop when a processing completed event occurs for that module. In this manner, the Interface A client defines the trace once and collects the data only when processing is active. Between the triggers, data is collected at the specified rate. The rate is specified with a floating point number designating the number of seconds between samples. The resolution is limited by the equipment.
In GEM, traces begin when defined through a SECS message and end when the specified number of samples is collected. To achieve the same effect as Interface A, a host would have to define event reports for the processing module processing started and processing completed events. When the processing started event is received, the host would have to define the trace by sending a SECS message. When the processing completed event is received, the host would have to terminate the trace with a SECS message. The host would have to do this every time, unlike Interface A. There is a delay between the processing started event and when the trace starts because of the SECS messaging that isn’t there with Interface A. GEM traces are limited to centisecond resolution by the E5 standard even if the equipment could support faster traces. Some older GEM implementations are limited second resolution.
Event Reports
Interface A event reports specify an event and an optional set of parameters to be collected when that event occurs. The Interface A client activates the event report to begin monitoring the event and deactivates the report to stop monitoring the event.
GEM event reports are a little different. A GEM host defines collections of parameters called reports. Then it links one or more reports to one or more events. The same report may be linked to multiple events if needed. Then the host enables the event to begin monitoring the event and disables the event to stop monitoring the event.
Alarm Reporting
Interface A exception reporting is very different than GEM Alarm reporting. Interface A exception reports are defined using a source ID, exception ID, and severity. Any of the fields may be empty or filled in. Source ID identifies which component provides the alarm, for example a processing module or load port. If source ID is the only non-empty field, then all exceptions for that component will be monitored and reported. Exception ID identifies a specific exception name, if this is the only non-empty field, then all exceptions matching this name regardless of source will be monitored and reported. If severity is the only non-empty field, then all exceptions matching this severity will be monitored and reported regardless of source ID or exception ID. If more than one of these fields is non-empty, then reporting will be determined by applying Boolean AND logic to the fields. In addition, exception reports in Interface A may contain parameter data; however, which parameters are supplied with each exception is specified by the equipment manufacturer and not selectable by the Interface A Client.
GEM alarm reporting has two forms. For notification of an alarm being set or cleared, the host may enable alarms and receive a SECS message containing no other data. In GEM, each alarm has one set and one clear event that may be used for event reports. Using these events, the host may be notified of alarm set and clear transitions with reports that contain data chosen by the host.
Reports
Neither Interface A nor GEM provide annotated reports.
Data Collection Impact
Interface A E134 defines a mechanism for the equipment to limit the impact of client defined data collection on material processing. If data collection hinders processing, the equipment may issue a Performance Warning to all clients and deactivate their data collection. The equipment may resume data collection at a later time and issue a Performance Restored.
GEM defines no such throttling or notification mechanism.
You may also be interested in: