BLACAD Group Released Software

The most current released software is access controlled; please register for access, and then check the secured tools area.

Older versions (with some source)

Some of the following software packages are available for download without registration.  Documentation for the tools is being developed, and when a complete distribution is ready, it will be made generally available.  If you're interested in an early release, commercial use, or encounter a bug, please contact us directly.  This software is made available for research purposes only.  The point of contact is Prof. Patrick H. Madden, email  Some tools are also available for download through CVS; these versions are the most up to date (but not necessarily the most stable).  Please email if you would like CVS access.
Package Solaris Binary Linux X86 Binary Source Code
Feng Shui 2.6 Beta2
Standard Cell/Mixed Block/Structural Placer
Feng Shui
Tile-based Global Router
fengshuigr.solaris.tar.gz fengshuigr.linux.tar.gz fengshuigr.src.tar.gz
Feng Shui
Functionality Based Area Router
Placement Translator
v2.solaris.tar.gz v2.linux.tar.gz v2.src.tar.gz
TimberWolf to GSRC
Placement Translator
tw2gsrc.solaris.tar.gz tw2gsrc.linux.tar.gz tw2gsrc.src.tar.gz
Iterative Deletion based partitioner
idpart.solaris.tar.gz idpart.linux.tar.gz idpart.src.tar.gz
Algorithm Server algserve.solaris.tar.gz algserve.linux.tar.gz algserve.src.tar.gz
Standard Cell Global Router
(developed in the UCLA VLSI CAD Lab)
decimate.solaris.tar.gz decimate.linux.tar.gz decimate.src.tar.gz
Generic C Library
gcl-1.2-sol8-sparc.tar.gz gcl-1.2.Linux.tar.gz gcl-1.2.tar.gz
A Tcl/Tk based editor
A Tcl/Tk based LaTeX bibliography manager
A Tcl/Tk based generic GUI

Feng Shui Standard Cell Placer

Feng Shui is a recursive bisection based placer; given a standard cell netlist, it repeatedly bisects the list, assigning each cluster to a portion of the placement area.  Branch-and-bound reordering is performed at the lowest level, with a sliding window on each row.  Prior to bisecting each cluster, a massive k-way bisection is performed, obtaining initial cluster assignments; the hMetis partitioner is then applied to clean up each bisection.  The tool supports both TimberWolf (commercial) and GSRC formats, and has been integrated into the SIGDA EDA Hub, running on Purdue's PUNCH system.

Feng Shui Tile-based Global Router

The routing approach is aggressive over-the-cell; the routing substrate is modeled as a set of (multi-layer) tiles, with support for variable width routing and arbitrary graph structure.  The router determines paths for each connection through the substrate, with the objective of minimizing congestion, vias, and wirelength.  This router will be integrated with the functionality based area router.

Feng Shui Functionality Based Area Router

This software is supported by NSF grant CCR-9988222; the router avoids rip-up and reroute methods, and supports variable width routing, variable spacing, and is not restricted to preferred direction routing.

V2 Benchmark Translator

V2 is a translator, originally written by Kris Kozminski at MCNC; it converted from the VPNR format into YAL, EDIF, and TimberWolf4.2.  We have added code to it, allowing support for the commercial TimberWolf formats.  In order to perform timing optimization, signal directions are required; these were stripped off in the conversion to TimberWolf4.2, motivating the development of a direct translation into the new TimberWolf format.  Many standard cell benchmarks are available from MCNC in the VPNR format; these have also been converted into new GSRC formats, which should reduce confusion in interpretation.

TimberWolf to GSRC Benchmark Translator

The GSRC formats are designed to simplify parsing of data, and to eliminate confusion in interpretation; the number of rows, row spacings, and pad placements are fixed.  This translator utilizes a TimberWolf parser from the GCL library.  If you wish to recompile this tool, you'll need to install the GCL library.

Iterative Deletion Based Partitioner

GCL Generic C Library

The Generic C Library contains utility routines for linked lists, heaps, hash tables, etc..  Additionally, basic algorithms such as shortest path, quicksort, and others are included.  Of interest to the VLSI CAD community would be implementations of the Steiner tree algorithm of Borah, Owen, and Irwin, and also parsers for TimberWolf formats.

EDGE -- A Tcl/Tk based editor

TkBib -- A Tcl/Tk based LaTeX bibliography manager

GGUI -- A Tcl/Tk based generic GUI