4 What can I use to do good plots from magic/CIF?

(Thanks to Douglas Yarrington <arri@ee.eng.ohio-state.edu> and Harry Langenbacher <harry@neuronz.Jpl.Nasa.Gov>, for feedback here.)


CIF stands for CalTech Intermediate Form. It's a graphics language which can be used to describe integrated circuit layouts.

(from Jeffrey C. Gealow <jgealow@mtl.mit.edu>)

The definitive description of the Caltech Intermediate Form (CIF Version 2.0) is included in Mead and Conway's book:

  author = "Carver A. Mead and Lynn A. Conway",
  title = "Introduction to {VLSI} Systems",
  publisher = "Addison-Wesley",
  address = "Reading, Massachusetts",
  year = 1980,
  call = "TK7874.M37",
A brief description is included in Rubin's book:

  author = "Steven M. Rubin",
  title = "Computer Aids for {VLSI} Design",
  publisher = "Addison-Wesley",
  address = "Reading, Massachusetts",
  year = 1987,
  call = "TK7874.R83",
  isbn = "0-201-05824-3"}
cif2ps version 2 (Gordon W. Ross, MITRE):

A much better version of cif2ps, extending the code of cif2ps (Marc Lesure, Arizona State University) and cifp (Arthur Simoneau, Aerospace Corp). It features command line options for depth and formatting. Can extend one plot over several pages (up to 5 by 5, or 25 pages). By default, uses a mixture of postscript gray fill and cross-hatching. Options include rotating the image, selecting the hierarchy depth to plot, and plotting style customization. Plots are in B/W only.

It was posted to comp.sources.misc, and is available by ftp from ftp://ftp.uu.net/usenet/comp.sources.misc/volume8/cif2ps.Z (


Cifplot plots CIF format files on a screen, printer or plotter. Cifplot reads the .cif file, generates a b/w or color raster dump, and sends it to the printer. Plots can be scaled, clipped, or rotated. Hierarchy depth is selectable, as well as the choice of colormap or fill pattern. An option exists which will compress raster data to reduce the required disk space. For those plotting to a Versatec plotter, there is also a printer filter/driver available called vdmp.

oct2ps (available as part of the octtools distribution):

It is possible to convert your .mag file to octtools, and then you may use oct2ps to print it.

Both cif2ps and oct2ps work well for conversion to postscript. They do look slightly different, so pick your favorite. Note that cif2ps can be converted to adobe encapsulated postscript easily by adding a bounding box comment. oct2ps does convert to color postscript, which can be a plus for those of you with color postscript printers.


Flea ([F]un [L]oveable [E]ngineering [A]rtist) is a program used to plot magic and cif design files to various output devices. Parameters are passed to flea through the flags and flag data or through .flearc files and tech files. Supports: HP7580 plotter, HP7550 hpgl file output, HP7550 plotter lpr output, Postscript file output, Laser Writer lpr output, Versatec versaplot random output. Options include: Does line drawings with crosshatching for postscript, versatec, and hp plotters. Many options (depth, label depth, scale, path, format...)

Available by ftp from ftp://zeus.ee.msstate.edu/pub/flea.1.4.1.tar.Z .


Can output color PostScript from CIF files. The source is available from: ftp://anise.ee.cornell.edu/pub/cad/pplot.tar.Z . It only generates PS files (including color PS), and there's no support for EPS files. It is limited in its support of cif commands. (Wire, roundflash, and delete are not supported.) It only supports manhattan geometry (Polygons and rotations may only be in 90 degree multiples.)


Part of the U. of Washington's Northwest Lab, for Integrated Systems Cad Tool Release (previously UW/NW VLSI Consortium). Does postscript and HP pen plotters. Only available as part of the package.

CIF/Magic -> EPS -> groff/latex

Currently no prgram here directly generates EPS files. It is possible to add an EPS bounding box (%% BoundingBox: l t b r) to the output from these programs to get an EPS file. Alternatively, ps2eps or ps2epsf may be used.

CIF display on PCs


(from Frank Bauernoeppel <bauernoe@informatik.hu-berlin.de>)

The primary goal of LaSy was to implement a simple CIF layout viewer under MS-Windows.


MS-Windows 3.1 in extended mode or Windows-NT. Hi-resolution colour display, mouse, and a colour-printer are recommended. Note that there is a special Windows-NT version of LaSy included: lasy32.exe featuring 32-bit integer coordinates.


A CIF file plus appropriate layer description (.lay file). Sample layer descriptions are included. You probably have to adapt them to your technology. CIF description see "Introduction to VLSI systems" by Mead and Conway. Several restrictions apply (cf. online help).


A layout window for visual inspection/measurements of the layout. Printer output using Windows printing mechanism, works fine. Clipboard copy in bitmap and metafile format. The metafile is a flat, object oriented layout representation understood by many applications. Can be postprocessed with MSDraw among others. The bitmap gives a pixel oriented view of the layout (at screen resolution) and can be postprocessed by most "Painting programs".

I have repacked the archive for distribution (some designs removed).

The new url is: <URL:ftp://ftp.informatik.hu-berlin.de/pub/local/hulda/lasy25.zip>

Two references that describe the CIF file formats are:

Introduction to VLSI Systems, Mead & Conway, 1980, p115
Basic VLSI Design, Pucknell & Eshraghian, 1988, p 275

This document was translated by ms2html v1.7 on 16.01.97. OMN

[an error occurred while processing this directive]