This tool is inspired by Dr. Mathias Soeken's work.
The work was split into several submodules, they will all be public as they mature in development, the public ones can be already accessed throught this link.
Our work was published in the 32nd Symposium on Integrated Circuits and Systems Design. In case you would like to make a citation, please use the latex code below, thank you.
@article{ropper,
author = {Ruan Evangelista Formigoni and Ricardo S. Ferreira and Jos\'{e} Augusto M. Nacif},
year = {2019},
month = {7},
title = {Ropper: A Placement and Routing Framework for Field-Coupled Nanotechnologies},
journal = {32nd Symposium on Integrated Circuits and Systems Design (SBCCI '19), August 26--30, 2019, Sao Paulo, Brazil},
doi = {10.1145/3338852.3339838}
}
It is possible to compile with one of two UIs or just compile the software as a library:
build/main -i circuits/C17.v -o output.json
To compile with this UI use the command:
cmake -D UI=args -H. -Bbuild && cmake --build build
UI (alice): This option uses the alice command shell library.
To compile with this UI use the command:
cmake -D UI=alice -H. -Bbuild && cmake --build build
cmake -D UI=library -H. -Bbuild && cmake --build build
If no interface is specified, the library option is set as the default one.
For more detailed installation instructions, usage and configuration read the wiki.
Circuit | Gates | Placement Algorithm | Routing Algorithm | Exec. Time | Version |
---|---|---|---|---|---|
C17 | 11 | Simulated Annealing | Breadth-First Search | 8.0602 seconds (avg. of 10) | Alpha-0.1 |
C17 | 11 | Simulated Annealing | Dynamic Programming | 0.935628 seconds (avg. of 100) | Alpha-0.2 |
-
Dynamic field area calculations.
-
Compile-time field distance calculations with constexpr.Template metaprogramming in TBA library. -
Algorithms- Routing
- Breadth-First Search
- Dynamic Programming
- Placement
- Simulated Annealing
-
Ant colony optimizationMoved to TBA library. -
Firefly algorithmMoved to TBA library. -
Particle swarm optimizationMoved to TBA library.
- Routing
-
Json format P&R output information.
-
Cairo .png graphical output.Using SVG Graphics in TBA library.
TBA = To Be Announced