Semiconductor Industry News, Trends, and Technology, and SEMI Standards Updates

Learning from Others

Posted by David Francis: Director of Product Management on May 10, 2016 2:37:12 PM
blueprint.jpg

Almost everyone I know that has built a house has given me a list of things they would “do differently next time,” but a lot of those same people would also say that they would never build again. So does that mean everything they learned through the process is lost? Is it possible to get it right the first time? Maybe not, but there are a lot of things you can do to learn from the experience of others. For example, you can buy house plans that have been used before and are designed to leverage standard components. Rather than designing and building everything from scratch, you can use pre-built sub systems like fabricated floor joists and manufactured roof trusses. Using proven components saves a lot of time and worry about whether or not they will work properly and as expected. This allows you to focus on the customizations that will make the home meet your unique needs.

Implementing an equipment control application is a lot like building a house. You can design and build a complete control system from the bottom up—building all the components necessary to handle communication with the hardware, display information to the operators, manage user access, log relevant event and data information—but it doesn’t add value to the core competency of your equipment. The best option is to leverage proven design that has been built through multiple prior applications and leverages those lessons learned along the way.

Cimetrix's CIMControlFramework provides all the standard components necessary to build an equipment control application. With working samples for both atmospheric and vacuum equipment, it can easily be customized and extended as needed to meet specific control needs.

There is an old saying that goes, “If you don’t have time to do it right, when will you have time to do it over?”

If you would like to learn more about CIMControlFramework and how it can help you on your next project, give us a call or feel free to contact us here.

Topics: CIMControlFramework, Equipment Automation Framework

Build vs. Buy?

Posted by David Warren: Director of Software Engineering on Feb 18, 2016 1:06:00 PM

Every company that needs software must make a build versus buy decision at some point. Some choices are easy—it makes little sense to build your own office software for word processing, spreadsheets, or presentations. But what if you need software to control specialized physical equipment?

Classic advantages of building your own software are:

  • Canned software is generally targeted to meet many needs for most problems. Custom software is better suited to meet specific and uncommon needs.

  • Canned software has a fixed set of features and it may be difficult to add or remove specific features, which may lead to software that contains unneeded features or is missing features that you do need. Custom software can be built to meet the specifications of a projects and include all the features that are needed and never any that aren’t.

  • The process of developing software builds in-house technical expertise. This expertise can be used to create competitive advantage through higher performance and faster reaction time in meeting the changing needs of the marketplace.

Classic advantages of using standardized software are:

  • Standardized software is generally less expensive than custom software because its cost can be spread across many customers and/or tools.

  • Standardized software can require less time depending on the degree of customization required.

  • Standardized software can be more reliable since it has been tested and used in many different applications.

  • Standardized software may provide more features than would otherwise be available.

Why Not Combine the Best of Both Options?

Brackets_Code.png

Buying a tool control framework can help you build your own tool control software and still get the benefits of using standardized software. The framework can take care of common problems while you focus on items unique to your specific tool. As a framework, features can be removed, replaced, or even modified as needed. You reduce your costs as well as your time-to-market by using a selection of reliable, field-proven features and including only those that are relevant and add value to your control system. You still retain and build your in-house technical expertise to create competitive advantages in controlling your equipment instead of treating tool control expertise as a commodity.

Using a tool control framework can be a smart way to improve your processes by using standardized software that is easy to customize. So why not consider it as an option for your next project?

If you are interested in downloading the data sheet on Cimetrix’ tool control framework software, CIMControlFramework, click here.

Topics: CIMControlFramework, Equipment Control-Software Products, Equipment Automation Framework, Software

CIMControlFramework Boot Camp

Posted by Cimetrix on Aug 9, 2011 9:30:00 AM

by Scott Gardner

Senior Software Engineer

I’ve been a software engineer for more years than I care to remember (or than I’m willing to say). My experience includes embedded microcontroller-based applications, database and accounting software, and GUI development. I’ve always been interested in controlling hardware with software but the semiconductor industry and factory automation was not part of my experience. When I became part of the team in May, I was excited to get started, but also somewhat apprehensive. I was concerned about how quickly I would be able to learn all the new material and become a productive member of the team—a daunting task when you consider I had to learn both the new industry and code base. I was prepared to spend many extra hours coming up to speed.

My first day at Cimetrix began with Boot Camp. It seemed like everyone was talking about or working on something to do with Boot Camp. I didn’t know what it was but it sure had everyone busy. It didn’t take long to realize that Boot Camp was all about training.

C  Users rschreck Documents Marketing Blogs CCF Bootcamp BC Class resized 600

This was training in a way I had never experienced before. People from different companies came from all over the country to Cimetrix—our own little United Nations, you might say! One thing that immediately impressed me was the level of enthusiasm among all involved. 

We were introduced to the industry and the science. The physics involved is mind boggling! It was very cool to get to touch a real wafer while learning how they were made. This was training that included not only theory but also practical application—it was very hands on.

The software was equally impressive. Of course we went through the standard installation and demos but that was just the start. The entire CIMControlFramework architecture and tool control design process was laid out, and the trainers presented us with a series of labs that progressively got us deeper and deeper into the Cimetrix software, not only the CCF tool control product, but also CIMPortal (for Interface A) and CIM300 (for GEM 300 connectivity). The best thing about the labs is that by the time we had worked through them we not only had a working system we also knew how the system worked. I still use my completed labs today.

Agile was introduced in a gentle but accelerated way. We did scrum standups twice a day and a retrospective daily. We learned what makes a good user story and how to handle product backlogs and spring planning. We each got to keep a deck of planning poker cards.

Remote collaboration was also given a serious look.  We learned how to use a number of tools in order to communicate effectively with each other and plan sprints. This part of the training brought everyone together as a team and how we need to communicate with the “Product Owner”, who is often the project leader employed by our customer.

C  Users rschreck Documents Marketing Blogs CCF Bootcamp BC Group resized 600

I’ve seen quite a few approaches to development but this was a very different experience for me.  It was obvious that these guys take training seriously. This was training the way training was meant to be done!

Topics: CIMControlFramework, Equipment Automation Framework

New Features in CIMControlFramework™ 3.0

Posted by Cimetrix on Jul 1, 2011 1:41:00 PM

By David Francis

Product Manager

The creation of a new software product is an exciting process. Often, as was the case with the Cimetrix CIMControlFramework™ (CCF) software, this process begins with a partner that will become the first customer of the product. Cimetrix teamed with Axcelis Technologies to develop a new tool control framework for one of their process tools. A following project with Rorze Automation further developed the framework and produced CCF 2.0. Upon completion of that project, Cimetrix continued the development of the tool control framework to become a standard product that any OEM could use, resulting in the release of CCF 3.0.

The development effort for CCF v3.0 focused on four main areas that improve both the product development capability and the user experience:

  • Tighter integration with Cimetrix connectivity products
  • Faster data analysis
  • Reduced installation time
  • Improved training material

1)      Tighter integration of CIMControlFramework with factory automation components to implement Interface A and SECS/GEM connectivity

We simplified the data configuration so that parameters, events, and alarms are registered at start up and automatically coordinated with the configuration files for the factory automation products.

In the previous versions, CCF was configured to work with a CIM300 or CIMConnect product that was previously installed and configured for the equipment. The problem was that if someone needed to change the connectivity functionality, that change was not reflected in the tool control portion of CCF, or vice versa.  This meant that the required changes had to be implemented twice, resulting in duplication of effort.

Since we wanted to develop the product for a broad range of customers, we wanted to make sure that during tool initialization, OEMs would be able set up alarms, variable definitions, collection events, etc. one time for both tool control by CIMControlFramework and for the connectivity products.

With the tighter integration in CCF 3.0 to coordinate the tool control and the connectivity, initial deployment is now much easier and faster.

Below is an example that shows how alarms, events, and variables are tied together.  OEMs create the initial model using EM Developer, and then all of the configured alarms, events, variables are dynamically added to the model after startup. You don’t have to create all the details of the model, just the basic configuration and CCF fills in the data.

 Data Model resized 600

2)      Improved User Experience Through Faster Data Analysis
We learned from the initial deployments that tool operators need quick access to process data in order to improve productivity and lower costs. For CCF 3.0, Cimetrix implemented dedicated history tables to improve performance of queries on historical data.  The new history tables allow for much faster queries for wafer, EPT and Alarm history information.

All logged information is written to log files.  Any log information related to wafer, EPT, or alarm history is also written to the respective table in the on-tool database.

The benefit is fast and easy visualization of the equipment process data that is 20-30 times faster than the previous CIMControlFramework product.

The following graph shows the frequency of alarms reported by the equipment, which can be used to identify problem areas.  This type of data now comes back within a few seconds.

 Alarm History resized 600

3)      Reduce the time and effort of software installation and initial setup

The new installer allows the user to select the specific CCF modules needed and any other embedded Cimetrix products – such as CIMPortal™ or CIM300™ they want to install and configure. The installation is done in 2 phases. The first phase installs all files related to the products selected, including the source code. The second phase installs and pre-configures CCF and any pre-requisite packages. With the installation package, the time to time to install is dramatically reduced.

4)      Improved training material and code samples

To help a project team get started faster and get them more productive sooner, the Cimetrix created new labs that offer hands-on exercises.  One example is a lab to show the process for customizing user screens.  Both the problem case and the completed solution for each lab ship with CCF.  The real benefit is customers can use the labs as a starting point for their project or as reference material to help them create their own implementation.

Below is a screen shot from a lab that walks students through the process of creating a custom screen to visualize data for their specific tool, such as visualizing pressures, load locks, robots, load ports, processing chambers, etc.

UI Training resized 600

Cimetrix is a software company dedicated to continual product enhancement.  This release delivers improved functionality and performance that will benefit our customers.  With CIMControlFramework, OEMs have a great solution for tool control that allows them to spend more time and effort on delivering their unique value to the market, and far less time on tool control and connectivity—and it just keeps getting better.  This is another example of what Cimetrix does to support our customers to speed them through the development phase and into production.

Topics: Equipment Control-Software Products, Data Collection, Equipment Automation Framework, Data

Cimetrix at SEMICON Japan 2010

Posted by Cimetrix on Dec 14, 2010 11:35:00 AM

By Dave Faulkner

Executive VP, Sales and Marketing, Cimetrix

We had a strong showing at SEMICON Japan at the Makuhari Messe December 1 - 3.  Attendance was brisk, and Cimetrix products were on display at both the Meiden and the Rorze booths.  This event was a great opportunity for us, since we have just started Cimetrix Japan K.K. effective November 25, 2010.  The new Cimetrix company will provide both new market development and customer support for the Japan marketplace.

In the Meiden booth, Cimetrix EDA/Interface A products were on display.  In addition, Meiden highlighted the partnership between Meiden, DSD, and Cimetrix, which allows DSD and Meiden to offer complete EDA solutions using Cimetrix technology.  These solutions are available to both equipment suppliers and IC manufacturers, and Meiden listed the benefits and sample architectures for each group. 

 Meiden Booth resized 600

 Meiden Booth Signs resized 600

Cimetrix CIMControlFramework (CCF) was on display at the Rorze booth running a complete 450mm vacuum platform.  Many visitors stopped to watch this powerful demonstration.  Cimetrix products were also highlighted, along with Rorze’s unique ability to deliver a complete hardware/software platform solution for equipment suppliers using Rorze and Cimetrix technology. 

 Rorze Booth resized 600

 Rorze Booth 2 resized 600

One other highlight of the show was visiting the Axcelis booth where they highlighted their Integra plasma dry strip cleaning system that uses the Cimetrix CIMControlFramework.

 Axcelis Booth Integra Tool using CCF resized 600

We also learned at the show that a new top 20 OEM in Japan would adopt Cimetrix connectivity products.  It is great to see how companies are using our solutions to get to their products up and running in wafer fabs around the world.

Thanks to all those people who stopped by the booths.  Please let us know if you need more information about Cimetrix connectivity or tool control solutions.

Topics: Equipment Data Acquisition, Semiconductor Industry, Interface A, CIMPortal, SEMICON Japan, CIMControlFramework, EDAConnect, Data Collection, Japan, Equipment Automation Framework, Rorze

WCF and CIMControlFramework

Posted by Cimetrix on Feb 1, 2010 7:08:00 AM

by Derek Lindsey,
Principal Software Engineer

When creating new tools for use in the semiconductor industry, most original equipment manufacturers (OEMs) prefer to concentrate on their area of expertise – the processing of wafers. The bother for them is that they have to conform to material handling standards to get the wafers delivered to the correct process module before they can perform process on the wafers. They also have other overhead that takes time and resources away from what they do best. This overhead includes operator interfaces, recipe management, error handling and the list goes on.

With CIMControlFramework™ we set out to create a flexible equipment automation framework that handles much of the overhead associated with wafer processing. This allows OEMs to spend more time on perfecting their processing while still creating a first class application to drive the tool. The framework includes packages for performing recipe management, alarm management, user management, configuration management, message logging, scheduling, factory automation, user interface and material handling.

Data generated at any point on the tool from any of these packages can be quickly and easily accessed by any other module or external application. This is where Windows Communication Foundation (WCF) enters the picture. To paraphrase Reggie Jackson, WCF is the straw that stirs the drink. It allows access to all of the functionality provided in these packages. Cimetrix chose to use WCF for distributing the functionality contained in each of these packages. WCF is as easy as ABC. In order to use WCF services, we need three pieces of information: an Address, a Binding and a Contract (A, B, C).

Each of the packages listed above provides a service with functionality for clients to access. The functionality provided by the service is the contract. An address is where the service is located. A binding is how the client talks to the service (what protocol is used.) These three pieces of information are called an Endpoint. Once a client application knows the endpoint, it can access the vast array of functionality provided by the CIMControlFramework service packages.

Once an OEM taps into CIMControlFramework, they can focus their resources on process technology and product differentiation.

An excellent blog on WCF can be found here: http://blah.winsmarts.com/2008-4-What_is_WCF.aspx

You might also be interested in:

Topics: CIMControlFramework, Equipment Control-Software Products, Product Information, Equipment Automation Framework, Programming Tools, WCF

What is a Software Framework? And why should you like 'em?

Posted by Cimetrix on Oct 2, 2009 8:59:00 AM

by Mike Baker
Cluster Tool Control Practice Manager

The purpose of a framework is to improve the efficiency of creating new software.  Frameworks can improve developer productivity and improve the quality, reliability and robustness of new software.  Developer productivity is improved by allowing developers to focus on the unique requirements of their application instead of spending time on application infrastructure (“plumbing”).

Many people equate the term software framework with an object-oriented software library, or set of libraries, intended to provide reuse.  However, there is an important difference between a framework and a library, that difference is often called “inversion of control.”  If you’re using a library, the objects and methods implemented by the library are instantiated and invoked by your custom application.  You need to know which objects to instantiate and which methods to call in order to achieve your goals.  On the other hand, if you’re using a framework, you implement the objects and methods that are custom to your application and they are instantiated and invoked by the framework.  A framework defines the flow of control for the application.

A common way to customize framework behavior is to override framework-implemented features. The abstract or virtual methods defined by framework classes can be overridden in user-defined code. New objects can be created that implement framework-defined interfaces. These approaches leverage polymorphism to allow one software system, the framework, to interact with software developed by another group.

To emphasize the point, let’s look at a grossly oversimplified example. The Windows Presentation Foundation (WPF) is a framework for building Windows applications. To create a new Windows application with WPF there are two essential elements. The first is a XAML file. The XAML file describes the configurable attributes of the application including: which classes to instantiate, values for object properties, and which methods to invoke in response to user activity. The following is a very simple example of a XAML file:

<Window x:Class="WpfApplication1.Window1"

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x=http://schemas.microsoft.com/winfx/2006/xaml

Title="Window1" Height="300" Width="300">

<Grid>

<Button Name="button1" Click="button1_Click">Button</Button>

</Grid>

</Window>

This sample describes a Window that can be instantiated by the application. Application-specific logic for this window is found in a class named WpfApplication1.Window1. The sample describes how to label the window and the initial size of the window. The window contains a Grid control which in turn contains a Button control. The attributes of the Button control tell WPF to invoke the WpfApplication.Window1 method named button1_Click when the button is clicked by a user.

The second essential element of a WPF application is code. The following is a simple example:

namespace WpfApplication1

{

/// <summary>

/// Interaction logic for Window1.xaml

/// </summary>

public partial class Window1 : Window

{

public Window1()

{

InitializeComponent();

}


private void button1_Click(object sender, RoutedEventArgs e)

{

MessageBox.Show("Hello world.");

}

}

}

This snippet is sufficient to implement a Windows application. The framework’s "inversion of control" is represented by the button1_Click method. This method is invoked by the framework when the user clicks on the button. The framework defines practically everything that happens when this application is executed; the Window1 class defines only the application-specific behavior. No coding is needed to display the window, process user input, or handle any common window operations (e.g. move, resize, minimize, maximize, close). Compare this sample with the amount of code that would be needed to develop even a simple application like this one without a framework. Many organizations develop Windows applications; few do it from scratch.

Now extend the framework concept from the general-purpose to a specific application domain (e.g. equipment automation). A domain-specific framework permits new domain applications to be developed more quickly, with high quality, and allows developers to focus their attention on the unique requirements of their application or system. Imagine configuring a new equipment control solution using framework-implemented building blocks and implementing only the overrides that are unique to your system. Those overrides could include elements of process control, human machine interface, data collection and analysis, recipe management, material handling, etc. Today there are many organizations that develop individual equipment automation solutions from scratch. A team using an equipment automation framework, such as CIMControlFramework™, could (for example) focus their time on how to execute a process recipe instead of worrying about how recipes are stored, retrieved, organized, protected, uploaded, downloaded, or communicated to the process equipment.

Advantages

  • Reuse code that has been pre-built and pre-tested. Increase the reliability of the new application and reduce the programming and testing effort, and time to market.
  • A framework can help establish better programming practices and appropriate use of design patterns and new programming tools. A framework upgrade can provide new functionality, improved performance, or improved quality without additional programming by the framework user.
  • By definition, a framework provides you with the means to extend its behavior.

Disadvantages

  • Creating a framework is difficult and time-consuming (i.e. expensive).
  • The learning curve for a new framework can be steep.
  • Over time, a framework can become increasingly complex.

Topics: CIMControlFramework, Equipment Control-Software Products, Equipment Automation Framework, Programming Tools

Subscribe to Email Updates

Follow Me

Learn More About the
SEMI Standards

SECS/GEM

GEM 300

Interface A/EDA

PV2 (PVECI)