51 lines
1.5 KiB
Plaintext
51 lines
1.5 KiB
Plaintext
/*===================================================================*/
|
|
//
|
|
// GORDIAN-like placement package
|
|
//
|
|
// Aaron P. Hurst (ahurst@eecs.berkeley.edu)
|
|
// Addl code from Philip Chong (pchong@cadence.com)
|
|
// hMetis partitioner (www.cs.umn.edu/~metis)
|
|
//
|
|
/*===================================================================*/
|
|
|
|
1. Requirements
|
|
|
|
An i386 Linux system (though others will certainly work with some tweaks).
|
|
A standard ANSI C development platform.
|
|
|
|
The following are optional, but useful:
|
|
|
|
- hMetis partitioner. This can be obtained from (www.cs.umn.edu/~metis)
|
|
Place (links to) the files "libhmetis.a" and "libhtmetis.h" in this directory.
|
|
Otherwise, #define NO_HMETIS in the file "place_gordian.h"
|
|
- Java SDK, if compiling BookshelfView is desired.
|
|
- Perl, if additional script utilities are desired.
|
|
|
|
2. Descriptions of contents:
|
|
|
|
place_base.h contains the basic data structures and "external" API.
|
|
place_gordian.h contains the "internal" API and configuration options.
|
|
|
|
There are also several utilities:
|
|
|
|
i) place_test
|
|
|
|
Reads a netlist description in GSRC Bookshelf format, performs global placement,
|
|
and rewrites the placement file. An example usage:
|
|
|
|
./place_test ac97_emap.nodes ac97_emap.nets ac97_emap.pl
|
|
|
|
ii) BookshelfView
|
|
|
|
A simple Java GUI to view the resulting placements. It has been tested with
|
|
Java 5 and 6. Usage:
|
|
|
|
java BookshelfView ac97_emap.nodes ac97_emap.pl
|
|
|
|
iii) hpwl
|
|
|
|
A perl script to print the half-perimeter wirelength of a placement. Usage:
|
|
|
|
./hpwl ac97_emap.nets ac97_emal.pl
|
|
|