Switch branches/tags
Nothing to show
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
..
Failed to load latest commit information.
bin
ide/netbeans/nbproject
include
lib
media
sample/ispd18_sample
script
src/ispd18
.gitignore
CMakeLists.txt
README.md

README.md

Rsyn ISPD18 - Detailed Routing Contest

In this page, you find instruction on how to use Rsyn for ISPD18 Detailed Routing Contest.

Getting Started

Source Code

git clone https://github.com/rsyn/rsyn-x.git

Dependencies

cd rsyn-x/ispd18
./script/install-dependencies.sh

Compiling Rsyn using Cmake

cd rsyn-x/ispd18
mkdir build
cd build
cmake ..
make -j 4

NetBeans

Open the project at rsyn-x/ispd18/ide/netbeans.

Configure NetBeans to use multi-threading compilation:

Tools -> Options -> C/C++ -> Project Options

Type "-j 4" in "Make Options".

Opening a Benchmark using Rsyn

./rsyn
Ctrl+R
Select file "rsyn-x/ispd18/sample/ispd18_sample/ispd18_sample.rsyn"

Rsyn

Routing Guides

You can visualize the routing guides of a net by clicking on the net or searching by its name in the search box in the Design tab.

Rsyn

See ExampleService::doSomething() to check how to access routing guides from the code.

Transforms

Rsyn::PhysicalTransform allows one to handle cell orientation as shown in the image below.

Rsyn

Routing Grid

The routing grid is represented by the class Rsyn::PhysicalRoutingGrid, which is accessed via Rsyn::PhysicalDesign.

Rsyn

Routing

The routing of a net is defined via Rsyn::PhysicalRouting.

Rsyn::Session session;
Rsyn::PhysicalDesign physicalDesing = session.getPhysicalDesign();

Rsyn::Net net = ...

Rsyn::PhysicalRouting routing;
routing.addWire(layer, p0, p1);
routing.addWire(layer, p2, p3);
physicalDesign.setNetRouting(net, routing);

Writing DEF

The DEF can be written via the command writeDEF.

Rsyn::Session session;
session.evaluateString("writeDEF");