flowMaker Home Page


Welcome

Thanks for your interest in flowMaker and flow engineering!

This approach was first described at the 2008 Design Automation Conference (DAC 2008) in this presentation:

Flow Engineering for Physical Implementation: Theory and Practice by Steve Golson and Pete Churchill


Abstract: EDA tools are never used in isolation. Rather, multiple tools are combined into a sequence called a flow. Furthermore an elaborate infrastructure is required to support and enable flow execution. This flow infrastructure includes directory organization, configuration management, compute servers, desktop machines, job control, license administration, dependency management, operating systems, team communication, error reporting, and libraries of all sorts. Oh, and of course the EDA tools themselves. While EDA tools come with documentation and user guides, and many of the components of the flow infrastructure have standalone documentation, there is virtually no manual or reference guide or checklist available to aid in the creation and improvement of a flow. Join two veteran consultants, each with over 20 years experience in IC design, as we discuss the theory and practice of flow engineering: the design of flow infrastructure and the flows themselves.

Here are the slides as PDF and PowerPoint. It may be hard to follow when you don't have Pete and Steve making the presentation, and you'll probably miss the jokes. Also there are some provocative statements (slide 28 comes to mind). You have to hear the talk to understand the context. Really, we love EDA tools.


Flow Engineering: Things to remember

Principles

  1. Flows are hard
  2. Iterate
  3. Automate
  4. Failure is your friend

Goals

  1. Design independent flow
  2. Tool independent flow
  3. Technology independent flow
  4. User independent flow

Downloads

Download the preliminary release of flowMaker and associated infrastructure: flowMaker_1.0r91.tar

Read that third word again: PRELIMINARY. There is no documentation and precious little functionality. Check back in late June for a much more complete release. Send email to Steve Golson if you want more information.

Still interested? Here is the README file:

flowMaker release 1.0r91
6 June 2008

This is a very preliminary release. We'll have a much more functional release in a few weeks.

INTRODUCTION

This is the flowMaker script and associated infrastructure that were first described at DAC08:

Flow Engineering for Physical Implementation: Theory and Practice

Steve Golson - Trilobyte Systems, Carlisle, MA
Pete Churchill - EdgeRate Consulting, Hillsborough, NC


REQUIREMENTS

Development is done on RHEL4 but this should run on any EDA-friendly platform. Basically all you should need is

INSTALLATION

  1. Unpack the tarball.
  2. cd ip/play
  3. make

Read the help message.
Try the interactive targets.
Try flowMaker.

CUSTOMIZATION

Edit flow/make/infrastructure.mk to select the dispatch function. There are four choices:

dispatch-simple -- very simple, uses the user's runtime environment
dispatch-localhost -- all jobs run on local host
dispatch-sge -- uses Sun Grid Engine (SGE)
dispatch-lsf -- uses LSF from Platform Computing (not written yet!!)

The default is dispatch-simple so everything should run out of the box.

For all other dispatch functions you must edit

flow/tool_info.txt

to describe the locations of EDA tool executables in your compute environment. There are extensive comments in that file.

Also edit (or delete) optional file

flow/tool_defaults.mk

which specifies the default versions for EDA tools.

FUTURE WORK

Within a few weeks we plan a much more complete release:

Check back soon!


Send comments to webmaster@flowMaker.info
Updated on Monday 16 June 2008 16:08