Industry News, Trends and Technology, and Standards Updates

Equipment Control Logging Benefits

Posted by Derek Lindsey: Product Manager on Mar 8, 2018 11:02:00 AM

markets-timber-logging.jpg

Equipment control applications are highly complex and have many moving parts that require a high level of coordination. Because of the high degree of difficulty, problems are bound to crop up. Sometimes the problems are related to a hardware issue. Sometimes the problems are caused by operator error. Sometimes problems are timing related. Sometimes problems happen infrequently. Regardless of the frequency or the cause of the errors, how do you go about debugging issues that happen in the field if you are unable to attach a debugger to the application?
 
The answer is logging.

As part of the CIMControlFramework (CCF) product for creating equipment control applications, Cimetrix developed a logging package. Our logging package has two parts – collecting the log messages and analysis of the messages.

The logging package allows you to assign a source and a type for each log message. The source specifies where the log message originated. The type is a category that can be used to route the log 

messages to specific output locations called log sinks. We have found the most useful log sink to be a text-based log file. The logging package can be configured for the types of messages to log. It can also be configured for how long to keep log files and how many to keep. This helps keep hard drives from getting too full.

logging.bmp

The temptation for many users is to enable all log messages while developing the equipment control application and then turn all the logging off when the equipment ships to the factory. Cimetrix recommends leaving as much logging enabled as possible. This will help you avoid trips to the fab when a problem arises that can be solved via the logging package. Some clients worry about resource usage by the logging package. We have found that the impact of the logging package is light enough that it is advantageous to leave it on all the time.

The Cimetrix logging package was such a success in CCF, that we have started using the logging package in all Cimetrix products. The logging package has earned rave reviews from Cimetrix product users. Here are a few quick examples that show how valuable logging is:

1. An OEM customer called in a panic because because an end user was withholding payment due to a timing/throughput issue in the application. Together Cimetrix and the OEM reviewed the log file. Using some of the LogViewer analysis tools we were able to isolate and identify the problem within 30 minutes. The OEM was able to confidently tell the end user that they had found the problem and a fix would be available within the next software release. Because the OEM was able to support them so quickly remotely, the end user had confidence in the OEM and released the payment.

2. At Cimetrix, we often hear, “This only happened once, but…” With logging always enabled, it is possible to diagnose problems after the fact. This is especially important for problems which occur infrequently. Users of the Cimetrix logging package are able to resolve issues that happen only rarely.

3. Occasionally an equipment control application will deadlock – two different modules are waiting on each other and neither is free to proceed. Using the LogViewer’s Callstacks plug-in, in conjunction with the Timing Chart plug-in, make the process of diagnosing the deadlock much easier.

logging-1.png

4. An end user called up their OEM equipment provider because the software stopped unexpectedly. They wanted to OEM to put someone on a plane immediately to come diagnose the problem. The OEM was able to view the log file to see that an operator had stopped the tool without the supervisor realizing it. When asked, the operator confirmed he had stopped the tool. Crisis averted. No plane ride required by the OEM to satisfy their customer!

5. A client came to Cimetrix for a training class. This client brought in a contractor to attend the class as well. Part of the Cimetrix training was used to review the logging package. During a break in the training, the contractor approached the instructor and asked if he could purchase the logging package separately for use in his other contracts because he could see several applications that would benefit from the power of the logging package.

6. Cimetrix is continuing to add useful plug-ins to the LogViewer. We recently added an E84 (automated material handling system) plug-in to assist in implementing and debugging material transfer. LogViewer allows users to implement their own custom plug-ins for analyzing data important to them.

logging-2.png

These are just some of the success stories we have heard about in relation to the logging package. With equipment control applications and factory automation, there will always be issues to be addressed and opportunities to root cause unexpected behavior. Having a powerful logging package makes that process much easier.

 

Topics: Equipment Control-Software Products, Customer Support, Cimetrix Products

SECS/GEM series: Documentation

Posted by Joe Cravotta, Client Support Engineer on Mar 6, 2018 11:27:00 AM

Case_studies.jpgAs the first article in this Features and Benefits of SECS/GEM series points out, the SECS/GEM standards define a standardized interface that may be used on any equipment. A GEM interface exposes an equipment's capabilities through status variables, data variables, collection events, alarms, data formats, error codes, SECS-II messages, and other optional GEM capabilities. The GEM standard requires each equipment to come with documentation; ensuring a factory has the information it needs to use an equipment’s GEM interface. This documentation is commonly referred to as the GEM manual.

The GEM manual may be distributed in many ways. Currently, most GEM manuals are provided digitally in a Word, Excel, or PDF  document. The vast amount of information in a GEM manual is used to make purchasing decisions, develop host software, and test equipment. For a full GEM interface, the GEM manual must include the following topics: State Models, Scenarios, Data Collection, Alarm management, Remote Control, Equipment Constants, Process Recipe Management, Material Movement, Terminal Services, Error Messages, Clock, Spooling, Control, Supported SECS-II messages, GEM Compliance statement, and Data Item Formats. To keep this post a reasonable length, we will only cover a few of the required topics.

GEM Compliance Statement

The compliance statement is one of the first topics to be reviewed. It is a quick and easy way to understand the features of an equipment’s interface. The manufacturer is required to mark which GEM capabilities are implemented on the equipment, and if they are implemented in a way that is compliant with the GEM standard.

secsgem-documentation-1.png

State Models

State Models is a fundamental GEM capability, and is therefore implemented on every equipment. This capability defines the Communication, Control, and spooling behavior of the equipment. A processing state model must be provided. However, it is not possible to define a processing state machine that can be used on every equipment. The processing behaviors that should be the same for all equipment are specified by the standard. Each state model must be documented with a state model diagram, a transition table, and a text description of every state. The consistent and detailed information about each state model enables a factory to start writing a host application as soon as they have the GEM manual.

secsgem-documentation-2.png

Alarms, Collection Events, Equipment Constants, Data Variables, and Status Variables 

Alarms, Collection Events, and Variables are large components in gathering data from an equipment. It should not be a surprise that these are required to be in the GEM manual. Each alarm on the equipment should have its ID, name, description, and associated Set/Clear events in the GEM manual. The documentation for each collection event should include the ID, name, description, and a list of associated variables. The documentation for all variables will include an ID, name, description, and the data type. Information about a variables default value or value range should also be provided when appropriate. Although not required, it is common to display all this information in five tables that are easy to find. There would be a single table for each of the following: alarms, collection events, equipment constants, data variables, and status variables. See the examples below.

Alarms

secsgem-documentation-3.png

Collection Events

secsgem-documentation-4.png

Status Variables

secsgem-documentation-5.png

Remote Control

Once a factory can gather data from an equipment they start looking at how to control the equipment. Remote Control is the GEM capability that allows a host application to request an equipment to perform an action. Each remote command should be in the manual with its name, description, and details about each command parameter that may be sent with the command. The details of a command parameter should include the name, the format, and a description. An example is shown below.

secsgem-documentation-6.png

SMN and SEDD

GEM manuals rarely come in a format that is easy to parse in software. This often results in duplicating code and making small changes in order to communicate with other equipment. SEMI E172 SECS Equipment Data Dictionary (SEDD) and E173 SECS Message Notation (SMN) are two standards that can drastically increase the flexibility and reusability of a host application. SEDD is an xml file that is easily distributed and parsed in software. SEDD can be considered a modernized GEM manual because it contains much of the same information that is found in a GEM manual. For example, a SEDD file contains details about every variable, collection event, alarm, and supported SECS-II message. A SEDD file uses SMN to represent the data items, variables, and SECS-II messages. SMN is also XML and is the first standard to define a notation for representing data items and SECS-II messages. This means a single application can read a SEDD file, have a short configuration process, and then immediately start using the GEM interface of an equipment. These features allow a single application to be used with multiple equipment instead of creating slightly different variants for each equipment.

Wrap up

The GEM manual is a crucial piece of documentation that is required by the GEM standard to be provided with every equipment. The GEM Manual should be the first place to look for an answer when there is a question about an equipment’s GEM interface. SEMI continues to improve the content and flexibility of a GEM manual by updating existing standards and creating new standards.

Click here to read the other articles in our SECS/GEM Features and Benefits series. 

To download a white paper on an introduction to SECS/GEM, Click below:

SECS/GEM White Paper

Topics: SECS/GEM, Smart Manufacturing/Industry 4.0, SECS/GEM Features & Benefits Series

Cimetrix International, Inc., China; 矽美科国际有限公司,中国

Posted by Yufeng Huang; Software Engineer China on Feb 28, 2018 11:40:00 AM

Yufeng Huang of Cimetrix talks about our China Office Opening. Read now in Chinese or English.

美国矽美科股份有限公司上海代表处成立于2017年8月,地址位于称为中国硅谷的上海张江高科技园区。公司总部(矽美科股份有限公司)创建于1987年,地址位于美国犹他州盐湖城。矽美科公司是一家为半导体行业、SMT行业、PCB行业、光伏行业、LED行业及相关行业的设备制造商和生产工厂提供产品和服务的软件公司。

China_office_1.pngChina_office_2.jpg

矽美科公司有着非常良好的客户评价,公司不仅将自己视为客户的重要供应商,更加将自己视为客户值得信赖的合作伙伴。我们坚信有能力为客户提供全球最先进的基于SEMI标准的软件解决方案。

矽美科上海代表处为中国、台湾等亚太地区客户提供售前产品咨询,客户培训,售后技术支持服务。我很荣幸在今年8月份加入到矽美科上海代表处,在过去的几个月内我们不断收到老客户给予的好评和新客户的合作意向。感谢新老客户对公司的支持,我们将一如既往的为客户提供最优质的、高效的服务,希望我们的产品和服务能让您满足,并为您带来巨大的帮助。

美国矽美科股份有限公司上海代表处
地址:上海市浦东新区盛夏路399弄1号(A座)3楼328室3069单元 (邮政编码201210)
技术联系:黄玉峰
电话:+86-21-8022-0935

销售联系:Michael Lee
电话:+886-926395649


American Cimetrix Incorporated Shanghai Representative Office was established in August 2017. It is located in ZhangJiang High-Tech Park, which is also known as China’s Silicon Valley. The headquarters of Cimetrix, Inc, founded in 1987, is located in Salt Lake City, Utah, USA. Cimetrix is a software company that provides software products and services to OEMs and Fabs in the semiconductor, SMT, PCB, photovoltaic, LED and related industries.

Enjoying excellent customer reputation, Cimetrix considers itself more as customer’s trusted partner than customer’s supplier. We firmly believe that we have the ability to provide customers with the world's most advanced SEMI-based software solutions.

Cimetrix Shanghai Representative Office provides pre-sales consulting, customer training, after-sales technical support services to mainland China, Taiwan and other Asia areas. I am greatly honored to join Cimetrix Shanghai Representative Office in August 2017. In the past few months, we have continuously received favorable comments from existing customers and cooperation intentions from potential customers. Thanks for their trust and support of the company, we will, as always, provide our clients with the best and most efficient services. We believe that our products and services will meet customer satisfaction and greatly enhance your product quality.

American Cimetrix Incorporated Shanghai Representative Office
Address: Unit 3069, Room 328, Floor 3, No. 1 (Block A), Lane 399, Shengxia Road, Pudong New Area, Shanghai (Post Code: 201210)

Technical Contact: Yufeng Huang
Telephone: +86-21-8022-0935

Sales Contact: Michael Lee
Telephone: +886-926395649

 

Topics: Doing Business with Cimetrix, Global Services, Smart Manufacturing/Industry 4.0

SECS/GEM series: Recipe Management

Posted by Bill Grey: Distinguished Software Engineer on Feb 20, 2018 10:54:00 AM

recipe management SECS/GEMFollowing several SECS/GEM series blog posts, including Collection Events, Data Polling and Alarms, we now get into the features and merit of the GEM feature called Recipe Management. We will cover the definition of recipes, what recipe management means and why you need this feature!

What are recipes?

Recipes are sets of instructions describing how the equipment should process its material.  The Recipe content is defined by the equipment supplier.

What is recipe management?

Recipe management allows the factory host to transfer recipes to and from the equipment.   It also requires the equipment to notify the factory host when recipes are changed on the equipment.

Why do you need this feature?

Almost all semiconductor factories require this feature to ensure recipe integrity and to support traceability.   The host will upload approved recipes from the equipment and save them for later use to ensure that the recipe does not change.   For traceability, the recipe is usually saved with the process data.

How does recipe management work?

Recipes are passed between the host and equipment via SECS messages.   There are several sets of SECS messages to enable this.  E30 GEM specifies formatted, unformatted, and large recipe message sets.  The large recipe message set will not be discussed here. 

The equipment is also required to notify the host whenever recipes are changed by an operator at the equipment.  A PPChange collection event is generated with two data variables PPChangeName containing the PPID of the recipe that changed and PPChangeStatus containing the type of change (created, deleted, edited).

Once a recipe has been transferred to the equipment, the equipment should verify the content.  If the recipe is invalid, then a PPVerificationFailed collection event should be generated with a  PPError data variable containing the validation failure information to notify the host of the problem.  The recipe should not be used if it fails verification.

Identification

Each recipe is identified by an ASCII name called a process program ID or PPID.  The factory host and the equipment GEM interface use the name in recipe operations.

Persistence

Recipes are persisted in a GEM interface. If the host disconnects and reconnects, or if the equipment is restarted, the GEM interface will remember the recipes.   In addition, most factory hosts will save recipes on the factory side.

Which messages are used?

Here is a summary of each of the primary messages related to collection events. Note that the “S” identifies the “stream” and “F” identifies the “function”. Together, a stream and function number uniquely identify a message.

All Recipes

Message ID

Direction

Description

S7F17

Host -> Equipment

Delete a recipe from the equipment.  

An empty list will delete all recipes from the equipment.

S7F19

Host->Equipment

Request a list of available recipes from the equipment

 

Unformatted Recipes

Message ID

Direction

Description

S7F1

Host<-Equipment

Equipment requests to upload a recipe

S7F3

Host<-Equipment

Equipment uploads a recipe to the host

S7F5

Host<-Equipment

Equipment requests a recipe from the host

S7F1

Host->Equipment

Host requests to download a recipe

S7F3

Host->Equipment

Host downloads a recipe to the equipment

S7F5

Host->Equipment

Host requests a recipe from the equipment

 

Formatted Recipes

Message ID

Direction

Description

S7F1

Host<-Equipment

Equipment requests to upload a recipe

S7F23

Host<-Equipment

Equipment uploads a recipe to the host

S7F25

Host<-Equipment

Equipment requests a recipe from the host

S7F1

Host->Equipment

Host requests to download a recipe

S7F23

Host->Equipment

Host downloads a recipe to the equipment

S7F25

Host->Equipment

Host requests a recipe from the equipment

S7F29

Host<-Equipment

Equipment requests to verify a recipe

S7F27

Host<-Equipment

Equipment sends recipe verification results


Frequently Asked Questions about Recipe Management

How large a recipe can be transferred?

For unformatted recipe messages, the recipe is either a single ASCII string or a binary array value.  A single array value is limited to 16.777215 MB.

Formatted recipe messages, the recipe is split up into a list of items. A single array value is limited to 16.777215 MB.  Total message size is limited to 4.294967295 GB.

Click here to read the other articles in our SECS/GEM Features and Benefits series. 

To download a white paper on an introduction to SECS/GEM, Click below:

SECS/GEM White Paper

Topics: SECS/GEM, SECS/GEM Features & Benefits Series

SECS/GEM Series: Alarms

Posted by David Francis: Director of Product Management on Feb 14, 2018 10:30:00 AM

Previous posts have talked about functionality that allows data to be collected through the GEM interface so the factory applications described in the most recent post can analyze this data. With this posting, we return to a discussion of specific features and capabilities of the SEMI E30 GEM (Generic Equipment Model) standard, specifically the management of error conditions on the equipment.

In a perfect world everything goes according to plan, but in reality, things always go wrong. The secret to success is being able to know when something goes wrong, and then responding appropriately.

Minion_alarm.pngJust like a home alarm system, semiconductor fabs want to know when something bad has happened. They want to prevent the material being processed from being scrapped. Alarm management enables the equipment to notify the host when something goes wrong, and provide information about what has gone wrong. The GEM standard defines Alarm Management as the capability to provide host notification and management of alarm conditions occurring on the equipment. 

In GEM, an alarm is any abnormal situation on the equipment that may endanger people, equipment, or material being processed. For example, if a technician opens an access panel to replace a component, the equipment should send an alarm notifying the host that it is not safe to operate the equipment in its current condition. Another example might be if an equipment requires a high temperature for processing but a sensor detects a low temperature condition, it should trigger an alarm, since running the process under those conditions could damage the material being processed. It is also the responsibility of the equipment manufacturer to inhibit unsafe activities on the equipment when an alarm condition is present. The equipment manufacturer knows best what specific alarms are required on the equipment to ensure safety for people, equipment and material.

Often it is useful to have more information about the conditions in the equipment at the time an alarmflashing-red-light-1.png condition occurs. Communicating that additional information to the host is valuable, but cannot be done through the normal Alarm Report Send/Acknowledge messages. To provide a way to get this additional information, GEM requires that two collection events be defined for each possible alarm condition on the equipment – one event for when the alarm is set, and another for when the alarm is cleared. These collection events allow the GEM event data collection mechanisms to be used to send the additional related information to the host when an alarm changes state.

In addition to providing the time of an alarm state change, Alarm Management on the equipment must allow the Host to request a list of all alarm IDs and associated alarm text. The host must also be able to enable/disable individual alarms on the equipment, and query the equipment for the list of alarms that are currently enabled for reporting.

The state diagram for an Alarm is not very exciting, but it fills a vital need. The picture below illustrates the Alarm State diagram:

on-off-switch.jpg

GEM alarms only have 2 states: each alarm is either SET or CLEAR. It’s simple but effective.

Alarm Management isn’t rocket science, but through effective use of Alarm Management, fabs can carefully monitor the health of their process equipment and minimize negative impacts to their production yield. 

Click here to read the other articles in our SECS/GEM Features and Benefits series. 

To download a white paper on an introduction to SECS/GEM, Click below:

SECS/GEM White Paper

Topics: Industry Highlights, SECS/GEM, Smart Manufacturing/Industry 4.0, SECS/GEM Features & Benefits Series

EDA Applications and Benefits for Smart Manufacturing Episode 2: The Stakeholder-Driven Requirements Development Process

Posted by Alan Weber: Vice President, New Product Innovations on Feb 7, 2018 11:19:00 AM

In the introduction to this series posted December 19, 2017, we listed some of the manufacturing stakeholders whose work objectives are directly addressed by the applications we’ll highlight in subsequent postings. Before getting into the specific capabilities and benefits of these applications, however, it seemed appropriate and timely to share a little bit about the process that the leading EDA practitioners use to ensure the equipment they are purchasing will support these applications. “Appropriate” because you may need to review and update your own purchasing specifications to clearly convey your requirements in the areas that are not directly covered by the standards (like model content, performance, and stability); “timely” because we at Cimetrix have recently conducted a number of customer workshops and seminars in which this process was effectively used and refined.

EDA_apps_benefits_1.png

In particular, this article explains how the careabouts of key stakeholder groups are “translated” into specific EDA interface requirements which can then be directly included in the purchasing specifications. As more semiconductor manufacturing companies take this approach, effectively “raising the bar” for the entire industry, the collective capability of our equipment suppliers will increase in response, to everyone’s benefit.  

In the previous post, we suggested that manufacturing stakeholders, KPIs, applications, and equipment data are all interrelated. Since the ultimate beneficiaries in this value chain are the stakeholders themselves, the challenge then becomes how to capture their requirements effectively… because these are busy people whose time is precious. Through a number of interviews with leading manufacturers over the past 18 months, we discovered that the best way to accomplish this is through a focused, interactive questionnaire process. By asking very specific questions about people’s daily tasks, problem areas, expectations, success criteria, and other items of constant concern, we can take a generic EDA purchase specification outline and generate a complete, factory-specific set of EDA purchase specifications in a matter of days. This is time well-spent when you consider the value and volume of equipment potentially affected… and the opportunity cost of not having these requirements clearly expressed. 

The stakeholder answers to the questionnaire serve a broader purpose as well, because in addition to driving the content of the equipment purchase specifications, they also form the basis for a lot of manufacturing technology development within the factory. This overall process is shown in the figure below; documents and related artifacts are shown in red; the affected organizations (of which there are many!) are shown in blue. 

EDA_apps_benefits_2.png

A blog posting can only hope cover a fraction of this overall process, but the sample questions below should give you an idea of how it works.

Sample questions for the Manufacturing Automation and Technology Development stakeholders include:

  • Are you familiar with SEMI E157 (Module Process Tracking)? Is it implemented on any of your current tools, and if so, do you monitor those events?
  • EDA_apps_benefits_3.pngDo you require that all state machines, states, state transition events, and attributes of the objects defined in the referenced 300mm SEMI Standards be implemented? If not, why not?
  • Do you currently use information from sub-fab systems in any of your on-line production applications, like FDC, PHM, R2R control, or others? If so, what range of equipment is supported, and how (pumps, chillers, abatement systems …)?
  • How do you express performance expectations for process variable reporting, such as sampling frequency, # parameters per chamber, report sizes, total bandwidth of all data reported, maximum latency of event generation, etc.? 

Sample questions for Production Operations and Engineering Support people include:

  • How do you schedule carrier pick-up and delivery from/to equipment, respectively? Is this done using algorithms in the AMHS/MCS/OHT system components, or do you get real-time updates from the equipment about pending lot completion and tool availability?EDA_apps_benefits_4.jpg
  • Do you need to have remote access capability for checking basic tool status outside the fab?
  • Do you require your suppliers to provide built-in data collection schemes (pre-defined reports, macros, etc.) to support common monitoring, maintenance, or diagnostic processes?
  • Do you have a list of parameters/events that must be collectable to support your production application portfolio?
  • Do you monitor any of the low-level actuator/sensor signals in the various mechanisms that make up a manufacturing tool?

Sample questions for the Procurement and Supplier Relations organizations include:

  • What compliance tests/reports do you require of the equipment suppliers before they ship equipment to your factories? Do you ever/sometimes/always visit the supplier's site to observe this process? What about after delivery?EDA_apps_benefits_5.png
  • Do you have a standard supplier response sheet or checklist for your automation requirements? If so, are you satisfied with its clarity, completeness, and ease of use for evaluating responses?
  • At what point in the equipment purchasing cycle do you review the capabilities of the interface software (event/parameter lists, model structure/content, projected performance, etc.)? When are these capabilities validated?
  • Do you assign a monetary value (say, some % of the equipment purchase price) to the interface software? 

If the above discussion triggers the question “I wonder if our EDA purchase specs are sufficient to address the manufacturing challenges we’ll face in the next few years?” give us a call. We’ll be happy to talk about how to support your stakeholders and automation team with an effective on-site workshop to address this question once and for all… It could be the most important next step you take in formulating you own company’s EDA implementation roadmap. 

EDA_apps_benefits_6.png

As always, your feedback is welcome, and we look forward to sharing the Smart Manufacturing journey with you.

Click below to learn more about EDA:

EDA/Interface A

Topics: EDA/Interface A, Smart Manufacturing/Industry 4.0, EDA in Smart Manufacturing Series

SECS/GEM series: GEM Factory Application Support

Posted by Alan Weber: Vice President, New Product Innovations on Jan 31, 2018 11:30:00 AM

What do the factories DO with all that data?

Unlike the other postings in this series which deal with specific features and capabilities of the SEMI E30 GEM (Generic Equipment Model) standard, this blog identifies a number of the factory applications that depend on collecting data from the equipment.

Moreover, since we often hear the question “How do the factories actually use the different types of equipment information we’re expected to provide?” this posting will summarize the specific data required to support a number of these applications. This list is by no means exhaustive, but should give you an idea of the range of factory stakeholders whose objectives are supported by GEM data collection.The figure below illustrates the relationship between the Key Performance Indicators (KPIs), the factory stakeholders responsible for optimizing them, the applications used to achieve this, and data required by these applications.

App_Support_1.png

The most effective way to share this kind of information is in tabular form. Within a group of related applications (e.g., scheduling, preventive maintenance), the applications are listed in generally increasing order of complexity, which is also the likely order of implementation by the factory applications development staff.

 Factory Application  Equipment Data Required
OEE (Overall Equipment Effectiveness) Transition events and status codes sufficient to classify equipment states for all time periods
Intra-equipment material flow Material tracking events; material location state indicators and state change events
Process execution tracking Start/stop events for all processing modules; recipe step indicators and step change events for all processing modules that support multi-step recipes
WTW (wait time waste) analysis The combination of events required for the intra-equipment material flow and process execution tracking applications (see above) and context data required to classify material states for all time periods (see the SEMI E168 Product Time Management standard for a deeper explanation)
Time-based PM (Preventive Maintenance) Run timers at the FRU (field replaceable unit) level
Usage-based PM Usage parameters and accumulators appropriate for each FRU, such as time-in-state, execution cycles, fluid flow rates, consumables flow rates, power consumption, etc.
Condition-based PM  Meaningful “health indicators” for each FRU
FDC (Fault Detection and Classification) Equipment/process parameters required by specific fault models and associated context information (this is difficult to do completely because most FDC models are “trained” with knowledge of “good” and “bad” runs, which is not known to the equipment supplier a priori)
Automated equipment interdiction Remote stop command (e.g., issued by an FDC application sensing an existing or imminent fault)
Equipment configuration monitoring Vector of important equipment constants with expected values and acceptable ranges; may need to support multiple sets, if the values are setup-dependent. Designed to catch human errors resulting from operator manual adjustments
Component fingerprinting Performance parameters for key equipment mechanisms, including command/response signals at the sensor/actuator level
Static job scheduling Setup and execution times per product/recipe combination and current setup information
Real-time job dispatching Estimate of current job completion time; estimate of completion time for all material queued at the equipment
Factory cycle time optimization Material buffer contents, job queue information
Operator notification Notification codes for frequent operator actions in a non-/semi-automated environment, such as load/unload material, select/confirm recipe, provide manual “assist” if the equipment is stuck, etc.
Real-time dashboard Equipment/component production status indicators
Equipment failure analysis Meaningful alarm/fault codes and perhaps recent history/statistics
Run-to-run process control Identification of recipe adjustable parameters and commands to remotely update them 

 

To the extent that some of the application data described in the table above can be standardized across equipment types, there is an opportunity to create generic factory applications that would only require a mapping from the supplier-specific GEM IDs (collection event IDs, status/data variables, equipment constants, etc.) to their generic counterparts. But this is a topic for another posting on the concepts of “plug-and-play” in a GEM context.

We hope this explanation helps you appreciate how valuable equipment information is for the factories that consume it, and therefore how important it is to provide a rich set of events, variables, and other detailed information in the GEM interfaces you design in the future. 

Click here to read the other articles in our SECS/GEM Features and Benefits series. 

To download a white paper on an introduction to SECS/GEM, Click below:

SECS/GEM White Paper

Topics: Industry Highlights, SECS/GEM, SECS/GEM Features & Benefits Series

SECS/GEM series: Data Polling

Posted by Derek Lindsey: Product Manager on Jan 24, 2018 11:30:00 AM

GEM is an industry standard, which defines standard methods to communicate between process equipment and factory host software for monitoring and controlling purposes. By connecting GEM equipment, factories can immediately experience operational benefits. Factory hosts can collect data in multiple ways. A previous blog post discussed collecting data by using collection event reports where data is pushed to the host based state transitions performed by the equipment. In addition to event reports, the factory host often has a need to poll the equipment for current data values. Data values can be directly requested by the host, or can be sampled on a periodic basis in a trace report. This is called Data Polling and is the topic for today's discussion.

datapolling_281485322-.jpgTypes of Data

There are three types of data in a GEM interface:

  • Data Variable (DV) – data items that can be gathered when an equipment event occurs. This data is only guaranteed to be valid in the context of the event. For example, the GEM interface may provide an event called PPChanged (triggered when a recipe changes). The interface may also provide a data variable called changed recipe. The value of this DV is only valid in the context of the PPChanged event. Polling the value at a different time may have invalid or unexpected data.
  • Status Variable (SV) – data items that contain information about the equipment. This data is guaranteed to be valid at any time. For example, the equipment may have a temperature sensor in a process module. The GEM interface may provide a ModuleTemperature status variable. The host can request the value of this SV at any time and expect the value to be accurate.
  • Equipment Constant (EC) – data items that contain equipment settings. Equipment Constants determine how equipment will behave. For example, a GEM interface may have an equipment constant called MaxSimultaneousTraces which specifies the maximum number of traces that can be requested simultaneously from the host. The value of equipment constants is always guaranteed to be valid and up to date.

Data Properties

Each of the three data types listed above have similar properties that help define the data. The equipment supplier is responsible for providing these properties in a GEM manual so that the factory host will be able to interact with the data. Some of the important data properties are:

  • ID – a numeric ID that must be unique in the GEM interface. These IDs can be grouped by data type and are referred to as SVIDs (Status Variable IDs), DVIDs (Data Variable IDs) and ECIDs (Collection Event IDs).
  • Name – a human-readable name for the data item
  • Format – the data type of the item. 
    • Data formats can be simple (numeric, ASCII, Boolean) or complex (arrays, lists, structures). For example, numeric types can be I1, I2, I4, I8 (signed integer types of different byte length), U1, U2, U4, U8 (unsigned integer types) and F4 or F8 (floating point types). 
    • List and array types contain multiple values in the data item. For example, image data would be formatted as a byte array. 
    • Structure types contain a specific type of data. For example, a variable may represent a slot map which contains carrier information as well as a list of slots and their wafer placement status.
  • Value – the actual value of the data item. Data values are in an accurate, efficient, self-describing binary format so that the host will know how to interpret the data. The data format allows for collection of more data more efficiently.

Collection Events (CE) and Alarms also have IDs and names. These items are discussed in other blog posts, but it is important to know about some of the properties for this post because these properties can be queried as well.

Data Polling

As mentioned, the factory host will often get data on a regular basis through trace reports and event reports that it defines. GEM also provides a method for the factory host to poll data based on its needs.

Status Variables

The host can query the value of status variables at any time by sending an S1F3 message containing a list of SVIDs for which to obtain the value. If the list has a length of one, only the value of the single SV will be returned. If the list has a length of zero, the values of all SVs defined in the interface will be returned. The values are returned in a list in an S1F4 message from the equipment.

The host can also request a list of SV names from the equipment by sending an S1F11 message to the equipment. The list rules mentioned above apply to this message as well. The return message will contain an entry for each SV that displays its SVID, Name and Unit.

Equipment Constants

Similar to the way SVs work, the host can also query the values of equipment constants defined in the GEM interface by sending an S2F13 message. The values will be returned from the equipment using an S2F14 message.

Also similar to SVs, the names of ECs can be queried using an S2F29 message.

Data Variables

Since data variables are only valid in the context of a collection event, there is not a method for polling values of data variables. The value of a Data Variable can only be reported in a collection event report.

Other

In addition to the methods for polling data discussed above, the following items can also be obtained from a GEM host by polling the equipment:

  • Collection Events (CE) – The host can query what Collection Events are available on the GEM interface along with what DVs are associated with each CE. These are requested using the S1F23 message.
  • Alarms – The host can query what Alarms are available on the system by sending an S5F5 message listing the ALIDs of the desired alarms. The return message lists the alarm code and alarm text associated with the ALID. Two status variables are required to be present in every GEM interface. AlarmsEnabled contains a list of IDs of all enabled alarms on the equipment. AlarmsSet contains the list of ID for alarms on the equipment that are currently in the Set state. Since these values are status variables, they can be queried at any time.
  • MDLN and SOFTREV – The response to an S1F1 (Are you there?) message will contain the equipment model type (MDLN) and software revision (SOFTREV) for the equipment.
  • DateTime – The date and time for the equipment can be requested using an S2F17 message. The host can synchronize the equipment’s time using the S2F31 message. GEM requires the equipment to maintain a Clock SV containing the current time. Allowing the host to query and synchronize time provides the capability to order nearly simultaneous events on the system.

Trace Data Collection

Trace data collection provides a method of sampling data on a periodic basis. The time-based approach to data collection is useful in tracking trends or repeated applications within a time window, or monitoring of continuous data.

When creating a trace definition, the host provides the following:

  • Sample period – the time between samples. The resolution is in centiseconds, so it is possible to gather data very quickly using a trace. It is common for equipment so support as fast as a 10 Hz trace interval.
  • Group size – number of samples included in a trace report
  • SVIDs – List of status data to be included in the trace
  • Total samples – number of samples to be taken over the life of the trace
  • Trace request id – identifier of the trace request (GEM only allows trace IDs of type integer)

The host defines a trace request by using the S2F23 message. Trace reports are sent from the equipment to the host using the S6F1 message.

Trace Sample

Let’s suppose that a piece of equipment is processing a wafer and the processing takes 5 minutes. It is important to keep the chuck temperature within a certain acceptable range and to make sure that the chamber pressure stays below a specified level. It is sufficient to monitor the values at 15 second intervals, but we can create groups of data to only receive reports once a minute. The host could send an S2F23 message with the following trace configuration:

Trace ID: 100 (ID must be an integer)
Sample Period: 00001500 (take a sample every 15 seconds)
Total Samples: 75 (Samples every 15 seconds for 5 minutes)
Group Size: 4
SVID List:
   300 (ID of the status variable that contains information about chuck temperature)
   301 (ID of the status variable that contains information about chamber pressure)

After one minute, the first trace report will be delivered using an S6F1 message from the equipment. The message will contain the following information:

100 (Trace ID)
4 (last sample number)
2018-01-22T14:20:34.8 (date format depending on TimeFormat equipment constant)
Status Value List: (Length is 8: 2 SVs with a group size of 4)
   219.96 (chuck temperature for first sample)
    0.0112 (pressure for first sample)
   219.97 (chuck temperature for second sample)
   0.0122 (pressure for second sample)
   219.97 (chuck temperature for third sample)
   0.0120 (pressure for third sample)
   219.96 (chuck temperature for fourth sample)
   0.0119 (pressure for fourth sample)

After another minute the trace report may look like the following:

100 (Trace ID)
8 (last sample number)
2018-01-22T14:21:34.8 (date time shows one minute later than the first trace)
Status Value List: (Length is 8: 2 SVs with a group size of 4)
   219.96 (chuck temperature for fifth sample)
   0.0112 (pressure for fifth sample)
   219.97
   0.0122
   220.01
   0.0120
   220.00
   0.0119

Three more reports will be received at one-minute intervals. The host can check returned values in the report and react accordingly if values are out of the expected range.

Conclusion

The host could poll status data using S1F3 if it wanted to check a value at a given point in time. It can set up a trace if it wants to continuously collect data over a given period of time.

Using the data sampling methods outlined in this blog will allow host applications to poll the data they need when they need it. GEM provides flexibility in requesting data from the equipment either by allowing the host to query values at a given point in time or to be sampled on a periodic basis using a trace.

Click here to read the other articles in our SECS/GEM Features and Benefits series. 

To download a white paper on an introduction to SECS/GEM, Click below:

SECS/GEM White Paper

Topics: Industry Highlights, SECS/GEM, Smart Manufacturing/Industry 4.0, SECS/GEM Features & Benefits Series

President's letter to our shareholders, customers and employees

Posted by Bob Reback: Chairman, President, and Chief Executive Officer on Jan 17, 2018 11:00:00 AM

Cimetrix-Bob Reback copy.jpgWow – what a great year for Cimetrix and exciting time for our industry!

The president and CEO of Applied Materials recently said, “This is the most exciting time in the history of the electronics industry.” The race is on for faster/better/cheaper devices, cloud computing, autonomous vehicles, Big Data, artificial intelligence, the “Internet of Things” and more. This means the world needs not only a lot more computer chips, but also innovations in chip design, packaging and electronics assembly. The fast moving (and giant) electronics companies driving these trends are also pushing to get far more data from the factory floor to support their “Smart Manufacturing” and “Industry 4.0” initiatives.

2017 was a record setting year for Cimetrix. Revenues increased 34% year-over-year. The Company continued to operate profitably on a quarterly basis with operating income over 10% for the year. We invested heavily in R&D to pursue new technologies and products for long-term growth while strengthening our balance sheet with solid increases in cash and stockholders’ equity.

Going Forward

Cimetrix is uniquely positioned as the world leader in developing and using standards that connect manufacturing equipment to factory software systems. We are second to none in knowledge of “equipment connectivity” standards. We chair the relevant global standards committees, and are well known throughout the industry as experts in this vital domain. In addition, our products are used worldwide in hundreds of thousands of equipment connections. We recently expanded the Cimetrix team with some great new employees located around the world to better serve our growing international customer base, which now includes over 30 factories in Taiwan and China.

Based on what we see, the industries we serve will continue to expand their usage of equipment connectivity standards such as the Generic Equipment Model (GEM) to integrate more equipment into their factory systems, while the more advanced semiconductor manufacturers will accelerate their adoption of the latest Equipment Data Acquisition (EDA) connectivity standards.

While we are very bullish on the longer-term trends for our industry and Cimetrix, it is always a little difficult to forecast short-term results. For 2018, industry analysts are currently predicting a single-digit percentage increase in semiconductor capital equipment spending. While you might think we would be satisfied with another year like we had in 2017, we expect to perform better than the overall industry in 2018 for a number of reasons. First, the “design wins” we worked so hard to earn in prior years should lead to market share gains that result in higher percentages of equipment using Cimetrix software products. Second, we believe the adoption rate will accelerate for the newer EDA equipment connectivity standards, where Cimetrix products are the most proven and widely used in the industry. Lastly, we believe our reputation for providing the highest levels of technical support to customers worldwide, especially in the Japanese, Korean, Taiwanese and Chinese markets, will enable us to continue winning new customers.

From all of us at Cimetrix, we thank our customers and shareholders for the faith and confidence they have placed in our products and our team. We will continue to strive for excellence in satisfying our worldwide base of customers and delighting them with innovative new products. 

Topics: Doing Business with Cimetrix, Cimetrix Company Culture, Global Services, Investor News

SECS/GEM series: GEM Collection Events

Posted by Brian Rubow: Director of Solutions Engineering on Jan 10, 2018 11:12:00 AM

To start off our SECS/GEM series, let's begin with an explanation of one of the GEM standard’s key features called Collection Events. We'll start with an explanation as to how they work, then move to why they are so effective for collecting data from manufacturing equipment. 

What are collection events? 

The two words in the name “collection event” are descriptive. 

As denoted by the word “event” a collection event is a notification. Its purpose is to notify the host when something of interest happens at the equipment. The “host” is the factory client software that connects to the equipment’s GEM interface. For example, collection events can report when material arrived, a consumable is running low, a hardware problem occurred, a camera inspected the material, the material is ready to be removed, a chamber reached the target vacuum pressure, processing completion, etc. The equipment can use the collection event feature to report when anything of interest happens. Whoever makes the GEM interface determines exactly what collection events are available to the host; therefore the set of available collection events is different from equipment type to equipment type.

As denoted by the word “collection”, collection events are also capable of publishing data along with the collection event message. It is a very efficient form of data collection, asynchronously providing information as it becomes available. For example, a collection event that reports when material arrives might also report the arriving material’s barcode and location. There are three types of data in a GEM interface; information about the collection event (called data variables), status information (called status variables) and equipment settings (called equipment constants). Whoever makes the GEM interface determines exactly what information will be available for each collection event. So the set of available information for collection events is different from equipment type to equipment type. And the available data is only sent if the host sets up the reports. 

So in summary, a collection event can not only tell the host when something happens but it can also provide more detailed information about what happened and about the status of the equipment. 

A little analogy

Collection_Events2.jpgAs an analogy, think of the factory as a boss and the equipment they purchase as employees. There are many different styles of managing, just like there are different types of factories and styles for running a factory. You don’t want to be forced to run your factory just like someone else’s factory. You want to run it your way.

Additionally, each employee is unique and needs unique level of attention. And each employee is doing unique things. Generally speaking, all managers want to know basic information about employees and what their employees are doing. They want to know when the employee starts a project and when they finish a project. Some employees are very productive even with minimal oversight and reporting. Some employees need extensive oversight and reporting. GEM allow the factory to deal with each equipment uniquely. Specifically, GEM collection events give the equipment a way to report on what it is doing. 

The host has to set up the rules for the reporting and adapt the rules appropriately. For example, sometimes a manager does not care when the employee goes to the bathroom. For certain employees, the manager might want to know. In a GEM interface, the host can choose which notifications occur and which do not. 

Sometimes a manager just needs to be told when the employee does things like when employee arrives, departs, goes on break, and come off break.  Sometimes a manager needs more details, like what project did you finish, how long did it take, the key results of the project. Similarly, GEM allows the host to track not when things happen, but to also provide details about the activity. GEM reports meet this need very effectively. 

Why do you need this feature? 

The short answer is that collection events allow you to track what the equipment is doing in real time. If a factory wants to any degree of Smart Manufacturing or just wants to improve productivity, then one of the first things needed is the ability to track what the equipment is doing. Collection events provide this. You can track equipment utilization, material movement, processing milestones, count cycles of activity for predictive maintenance, consumable usage, and anything else related to the published collection events. The applications for such information are endless.

Sometimes collection events are also used to implement scenarios where the equipment needs information from the host before proceeding or permission to proceed. A collection event tells the host when the equipment is ready for the host instructions or permission.

How does the collection event notification work?

An equipment’s GEM interface can publish many different collection events. The host will not typically want to be notified of all of them at once and it does not have to. Collection events use a publish/subscribe design pattern in two ways.

Basic Publish/Subscribe Notification

The host subscribes to specific collection events to receive notification when they occur. The subscription allows a host to enable or disable the reporting of each collection event available in the GEM interface. The equipment publishes the collection events as they happen.

Event Report Publish/Subscribe Data Collection

By default, a collection event message will not include any data. A subscription also allows the host to decide what data to include in each enabled collection event’s message. The host defines reports and links the reports to collection events; thereby subscribing to the data. Each collection event can have a different report. Reports can also be shared across multiple collection events. A report can include any data variables associated with the collection event, any status variables and any equipment constants. The equipment publishes the collection event with the requested data.

Identification

Each collection event published by the equipment has a unique ID number for identification. The host software uses the ID number when enabling or disabling a collection event. The equipment uses the ID number when the collection event message is sent. Each available data variable, status variable and equipment constant also has a unique ID number. When the host defines a report, it assigned the report a unique ID number.

Broker

The broker to handle all collection event publication/subscription is built into the equipment’s GEM interface. It is part of the equipment system. Communication between the host (a client) and GEM interface is standardized using SECS/GEM communication. Communication between the GEM interface and the rest of the equipment hardware and software (the source of the equipment collection events and data) can be any appropriate technology and does not matter as long as the GEM interface functions properly and performs sufficiently well.

This means that messages are only sent from the equipment to the host when the host has subscribed. Having the broker as part of the equipment and GEM interface makes the GEM interface very efficient and use much less bandwidth than protocols that use an external broker where all messages and data have to be sent to a broker all the time.

Collection_Events1.png

Persistence

The collection event subscriptions are persisted in a GEM interface. So if the host disconnects and reconnects, or if the equipment is restarted, the GEM interface will remember the setup of all subscriptions.

Which messages are used?

Here is a summary of each of the primary messages related to collection events. Note that the “S” identifies the “stream” and “F” identifies the “function”. Together, a stream and function number uniquely identify a message. 

Message ID Direction Description
S2F37 Host -> Equipment Enable or disable reporting for a set of collection events.

An empty list will enable or disable the reporting for all collection events. Enabling all collection event reporting is useful when characterizing a GEM interface. Disabling all collection events is useful before enabling the reporting of desired collection events.
S2F33 Host -> Equipment Define one or more reports.

An empty list will delete all reports as well as the report links to collection events. Deleting all reports is a useful when resetting the subscriptions, or when connecting to a GEM interface for the first time to override default subscriptions.
S2F35 Host -> Equipment Link one or more reports to a set of collection events.

If reports are already linked to a collection event, you have to remove them and then link all collection events in one message. An empty list will remove report links from the collection event.
S1F23 Host -> Equipment Request the list of available collection events and the available data for each collection event. 
S6F11 Equipment -> Host The collection event message.

If no reports are linked, the message will only include the collection event ID number. If one or more reports are linked to the collection event, then the report data for each linked report will be included in the message.

 

Frequently Asked Questions about Collection Events

How much bandwidth do collection events require?

This depends on several factors. 

  1. The number of collection events that are enabled by the host. 
  2. The size of the data reports linked to the collection events. 
  3. The frequency at which the enabled collection events are triggered by the equipment. This depends on the meaning of the collection event. 

How fast can collection events be triggered?

The GEM standard does not limit collection event frequency and uses standard communication hardware. In other words, by improving the hardware you can allow for faster collection events.

GEM allows for two protocols: SECS-I and HSMS. SECS-I is based on RS-232 serial communication and therefore little used today. Such implementations are not able to trigger collection events very quickly.

HSMS is based on network communication. Because serial communication is slow, by far most GEM implementations use HSMS. GEM uses TCP/IP very efficiently. The possible frequency of collection events depends on the speed of the network hardware, equipment computer performance, and host computer performance. Like most protocols, it usually takes more computer resources to consume messages than it does to produce them.

The speed at which collection events can be generated also depends on the data reports linked to the collection events. For example, if a data report is large, like 10 MB, this will impact performance.

Why aren’t I receiving the collection event messages? 

There are a few reasons why a host might not receive collection event messages. 

  1. Host and equipment must have established GEM communication using a successful S1F13/S1F14 exchange.
  2. GEM control state must be on-line. It cannot be in a host-offline or equipment-offline state. 
  3. GEM spooling must be inactive. To disable spooling while it is active will not make spooling go inactive. If the spooled messages are not wanted, then purge spooling using message S6F23. If the spooled messages are wanted, then request them iteratively using S6F23 until the spooling state becomes inactive.
  4. The collection event must be enabled. Use S1F3 to check the “EventsEnabled” status variable to confirm that the collection event is enabled. Use message S2F37 to enable the collection event. 
  5. The collection event activity needs to occur. For example, a collection event reporting when material arrives will never occur if material does not actually arrive. If the activity happens and the above conditions are satisfied, then the equipment’s GEM interface has a defect. 

What if an equipment’s GEM interface does not publish the collection event I need?

Ask the equipment supplier to add the desired collection event. It is difficult for an equipment supplier to accurately predict all collection events that the factories will want. The equipment supplier will need to upgrade their GEM interface software at the factory.

How large of data reports can be when linked to a collection event?

GEM allows a single data variable value or status variable value to be an array or structure of any data type including a floating point, string or integer. A single array is limited to 16.777215 MB. Total message size is limited to 4.294967295 GB.

To download a white paper on an introduction to SECS/GEM, Click below:

SECS/GEM White Paper

Topics: Industry Highlights, SECS/GEM, SECS/GEM Features & Benefits Series