Git Product home page Git Product logo

tritonmacroplace's Introduction

TritonMacroPlacer

ParquetFP based macro cell placer for OpenROAD.

If you want to use this as part of the OpenROAD project you should build it and use it from inside the integrated openroad app. The standalone version is available as legacy code.

Flows

  • Input: Initial placed DEF of a mixed-size (macros + cells) netlist. Such a DEF is produced by RePlAce (timing-driven, mixed-size mode, aka "TD-MS-RePlAce").
  • Output: A placed DEF with macro placements honoring halos, channels and cell row "snapping". Approximately ceil((#macros/3)^(3/2)) "sets" corresponding to quadrisections of the initial placed mixed-size DEF are explored and packed using ParquetFP-based annealing. The best resulting floorplan according to a heuristic evaluation function is returned.

Getting Started

Prerequisite

  • GCC compiler and libstdc++ static library >= 4.8.5
  • boost library >= 1.41
  • bison (for lef/def parsers) >= 3.0.4
  • tcl (for OpenSTA) >= 8.4
  • Recommended OS: Centos6, Centos7 or Ubuntu 16.04

Clone repo and submodules

$ git clone --recursive https://github.com/The-OpenROAD-Project/TritonMacroPlace
$ mkdir build
$ cd build
$ cmake ..             // you may specify -DCMAKE_INSTALL_PREFIX to avoid installing in /usr/local/*
$ make
$ make install

Manual

License

  • BSD-3-clause License [Link]
  • Code found under the Modules directory (e.g., submodules ParquetFP and ABKCommon source files) have individual copyright and license declarations at the top of each file.

3rd Party Module List

  • ParquetFP from UMPack
  • ABKCommon from UMPack
  • Eigen
  • OpenSTA
  • LEF/DEF Parser (Modified by mgwoo)

tritonmacroplace's People

Contributors

mgwoo avatar abdelrahmanhosny avatar ax3ghazy avatar abk-openroad avatar tspyrou avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.