IC Design Flow

Naming Log Files for CAD Applications

Naming Log Files for CAD Applications

An article about log file naming?  Well, somebody’s got to do it, because so few software tools get it right.

CAD software runs a long time in batch mode, so the log file is often the users’ sole feedback. When running a flow, I constantly check progress by listing the log files with the ls command. Repeatedly. All day. Their names and their sort order matter. More

Write Effective Error Messages

Write Effective Error Messages

You might hope that error messages will rarely appear, but whenever your program or design flow does output an error message, users will try to interpret its every nuance. Depending on how they react to messages, enormous amounts of time can be saved or wasted. The tragedy is that good messages are actually quite inexpensive–they consume little run time or memory, they require no exotic algorithms. More

Control Your IC Design Flow

Chip design is an iterative process.  The design flow is run repeatedly as it is extended and refined into a program that can automatically build the entire chip. Your flow needs software to make sure that only the necessary steps are executed, in the correct order, on the correct data. Different hierarchical blocks must be constructed similarly, yet differently.

This is one of a series of articles on simple, specific techniques that will make your chip design flow easy to use. In this installment, I will explain how to control your chip design flow, and rules to keep it organized. More

Give Files in Your IC Design Flow Meaningful Names

Give Files in Your IC Design Flow Meaningful Names

When a user wants chip design data, a script or a log file, how do they find it? They look at the file and directory names. In fact, this may be the only documentation available.

As an IC design flow architect, proper file naming is the most important thing you can do to guide your users to the data they need.  Further, you need to use safe names that can be used without transformation for any purpose, on any computing platform. More