Taiwan translated pages

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

Using CCF I/O Helper Functionality

Posted by David Warren: Director of Software Engineering on Mar 14, 2017 12:00:00 PM

“Can you hear me now?”

A Cimetrix blog post on March 15, 2016 entitled “CIMControlFramework Work Breakdown”mentions that CIMControlFramework (CCF) includes ASCII serial drivers and IO providers.  What does that mean and why should you care?

Factory Automation Software
Equipment automation is all about creating software that controls hardware—combining individual components into a harmonious whole, with each piece playing its own unique part.  A critical aspect of control is the ability to communicate—and that is where CCF’s ASCII serial driver and IO providers can help you create your equipment application.

The .NET Framework, like many software development platforms, provides built-in support for serial ports and TCP/IP ports.  This built-in support is great for low-level, binary communication, but hardware devices often just need a simple ASCII connection.  For such hardware, CCF’s ASCII serial driver frees you from worrying about the connection and the underlying implementation.  You can focus on the content of the message instead of the mechanics of delivery.  It’s like using a telephone—you want to focus on the conversation rather than worrying about how the sounds are transmitted between the phones. 

Another common class of hardware uses signals to communicate.  These signals can be as simple as only having two possible values (think “on” and “off”) or having a range of values, like a temperature.  Each signal also has a direction—it is either an input or an output.  For input signals, the value is determined by the hardware and read by the software.  Output signal values are determined by the software and sent to the hardware.  For example, control software might use an output signal to turn a light on and off, and an input signal from a photocell to verify the light is on or off.  This class of hardware is called I/O (short for input/output) devices and is supported by CCF.

CCF includes support for communicating with ASCII serial and I/O devices to make your job easier.  Don’t spend your time and effort asking the hardware “Can you hear me now?”  Use CCF and focus on combining the parts into the harmonious whole. 

Topics: CIMControlFramework, .NET

Using C# for Development at Cimetrix

Posted by Cimetrix on Apr 12, 2010 4:00:00 PM

by Vladimir Chumakov,
Software Engineer

We started using C# at Cimetrix about 5 years ago when we first started working on CIMPortal™, our Equipment Data Acquisition product. Later on we used C# exclusively for development of our Equipment Client Connection Emulator (ECCE) tool; EDAConnect™, a client-side software library product for implementing the SEMI EDA Standards; and CIMControlFramework™, an equipment automation framework for tool control.

Here is why we chose - and keep using - C# for new project and product development at Cimetrix:

  • The biggest advantage using C# brings is not the programming language itself but the extensive amount of functionality provided by the Microsoft .NET Framework. The development time savings by using the .NET Framework could be measured in years.
    • We used ASP.NET libraries for development of CIMPortal’s Web GUI and implementation of the Interface A SOAP interfaces.
    • WinForms is by far easier to use than MFC library in C++ that we've used before.
    • WCF is used in EDAConnect for implementation of the Interface A SOAP interfaces and as inter-process communications in CIMControlFramework.
    • ADO.NET is the framework used for working with Databases. We use it in CIMStore and CIMControlFramework products.
    • And the best part is that Microsoft continuously keeps improving its .NET Framework. Microsoft released a new 4.0 version of the .NET Framework today on April 12th. It contains many new features. The most exciting is Parallel Computing Platform (http://msdn.microsoft.com/en-us/concurrency/default.aspx) which includes significant advancements for developers writing parallel and concurrent applications, including Parallel LINQ (PLINQ), the Task Parallel Library (TPL), new thread-safe collections, and a variety of new coordination and synchronization data structures.
  • Visual Studio (we currently use 2005 and 2008 versions) is an excellent development environment for both C++ and C# but has many features exclusive to C# that we take advantage of:
    • The Unit Testing Framework helps us with the creation and maintenance of test code.
    • C# Code refactoring (http://msdn.microsoft.com/en-us/library/ms379618%28VS.80%29.aspx). Refactoring is a formal and mechanical process used to modify existing code in such a way that it becomes 'better' while preserving the program's intended functionality. In addition to improving a program's overall design, the refactoring process tends to yield code which is far easier to maintain and extend in the long run.
  • C# Language advantages over C++
    • Automatic memory management allows much easier implementation of memory-leak free code.
    • 64-bit programming. There is no need to maintain two separate versions of source code or to have different builds – the same C# application runs on both 32- and 64-bit versions of Windows and is automatically compiled on the fly into native 32 or 64 bit code.
    • Performance. Contrary to common belief that C# is slower than C++, we've found that when features like immutable objects, lock-free containers and automatic memory management are used together, applications written in C# are faster than similar application written in C++.
  • There are still areas where C++ is better than C#
    • Application startup performance. Because C# applications are compiled at the run time, on the fly, it takes more time for application to start.
    • C++ templates are still powerful than generics in C#

All these advantages, especially in development time savings, is the reason why we use and will keep using C# at Cimetrix.

You might also be interested in:

Topics: Programming Tools, WCF, Microsoft, .NET

The Tech Ahead

Posted by Cimetrix on Mar 9, 2010 4:00:00 AM

Microsoft Logoby Bill Grey,
Director of Research and Development

2009 was a tough year and it is good to see the Semiconductor industry coming back. With development projects ramping up, here is a peek at the new technologies coming out this year:

AMD has some new 45 nm Phenom II and Athalon II CPUs out and has the 6-core 45 nm Thuban CPU coming out later in Q2. 2011 will follow with a Llano 32 nm quad-core APU and 32 nm Bulldozer core CPU called Zambezi with up to 8 cores.

Intel has 32 nm rolling strong with the release of the Clarkdale CPU with 2 cores this quarter. They will follow up with the Gulftown processor around mid-year with 6 cores.

It doesn’t look like processing power will be much of a problem any more. =)

For developers, Microsoft released Visual Studio 2010 and .NET 4.0 in April. More information may be found at http://msdn.microsoft.com/en-us/library/bb386063(VS.100).aspx.

Among the changes that got me excited are:

  • better support for parallel code development and debugging
  • debugging of mixed-mode native and managed code on 64-bit operating systems
  • the Visual F# programming language
  • reference highlighting in the editor (finally!)
  • call hierarchy navigation for C# and C++
  • box selection for copy/paste (finally!)
  • .NET background garbage collection instead of concurrent garbage collection for better performance
  • .NET tuple objects for structured data
  • .NET memory-mapped files (shared memory)
  • .NET String.IsNullOrWhiteSpace method indicates whether a string is null, empty, or consists only of white-space
  • Managed Extensibility Framework (MEF) to build extensible and composable applications

Office 2010 comes out the first half of this year with some new collaboration features such as co-authoring and PowerPoint presentation broadcasting: http://www.microsoft.com/office/2010/en/whats-new/default.aspx.

On the Windows side, Windows 7 is here in 32-bit and 64-bit flavors and is being adopted much faster than Vista was when it released. Windows Server 2008 R2 is out for the server platform. For embedded systems, Windows Embedded Standard 2009 has replaced Windows XP Embedded and a new version is on the way called Windows Embedded Standard 7 (Windows 7 based).

How many semiconductor manufacturing tools will need or will go to a 64 bit operating system this year?

One item that could spur the move to Windows 7 is a change in hard drive technology that is not targeted to be supported by Windows XP. Hard drives are moving from 512 byte sectors to 4 kilobyte sectors and will be incompatible with Windows XP. Some of the smarter drives may have a compatibility mode for Windows XP, but at a cost of reduced performance. This will start in early 2011. http://news.bbc.co.uk/2/hi/technology/8557144.stm.

Would you be interested in learning more about these emerging technologies and their effect on Cimetrix products? If there is a significant interest, Cimetrix plans to host a webinar on this topic in the near future.

Topics: Semiconductor Industry, Programming Tools, Windows 7, Microsoft, .NET, Visual Studio 2010, Office 2010

Subscribe to Email Updates

Follow Me

Learn More About the
SEMI Standards

SECS/GEM

GEM 300

Interface A/EDA

PV2 (PVECI)