Effective Analog ICs Floorplanning with Relational Graph Neural Networks and Reinforcement Learning

Davide Basso, Luca Bortolussi, Mirjana Videnovic-Misic, Husni Habal
11/20/2024
cs.LGcs.AIeess.SY

No confident code implementation found for this paper.

Abstract

Analog integrated circuit (IC) floorplanning is typically a manual process with the placement of components (devices and modules) planned by a layout engineer. This process is further complicated by the interdependence of floorplanning and routing steps, numerous electric and layout-dependent constraints, as well as the high level of customization expected in analog design. This paper presents a novel automatic floorplanning algorithm based on reinforcement learning. It is augmented by a relational graph convolutional neural network model for encoding circuit features and positional constraints. The combination of these two machine learning methods enables knowledge transfer across different circuit designs with distinct topologies and constraints, increasing the \emph{generalization ability} of the solution. Applied to $6$ industrial circuits, our approach surpassed established floorplanning techniques in terms of speed, area and half-perimeter wire length. When integrated into a \emph{procedural generator} for layout completion, overall layout time was reduced by $67.3\%$ with a $8.3\%$ mean area reduction compared to manual layout.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. Any repos shown below are weak matches — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{basso2024effective,
  title  = {Effective Analog ICs Floorplanning with Relational Graph Neural Networks and Reinforcement Learning},
  author = {Davide Basso and Luca Bortolussi and Mirjana Videnovic-Misic and Husni Habal},
  year   = {2024},
  eprint = {2411.15212},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2411.15212v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2411.15212.svg)](https://codeofpaper.com/paper/2411.15212)

Discussion