Skip to content

Latest commit

 

History

History
66 lines (50 loc) · 2.38 KB

File metadata and controls

66 lines (50 loc) · 2.38 KB

DiffPlace - A Conditional Diffusion Framework for Simultaneous VLSI Placement Beyond Sequential Paradigms

Paper: arXiv

Experimental Results

Below are the placement results on ISPD2005 benchmarks using DiffPlace.

Adaptec1 Adaptec2 Adaptec3 Adaptec4
adaptec1 adaptec2 adaptec3 adaptec4
BigBlue1 BigBlue2 BigBlue3 BigBlue4
bigblue1 bigblue2 bigblue3 bigblue4

Project Structure

diffplace/
├── train.py                 # Training script
├── scripts/
│   └── deploy.py            # Inference
├── engine/
│   ├── diffplace.py         # Main model (DiffPlace)
│   ├── models.py            # Legacy models
│   ├── utils.py
│   ├── diffusion/           # Diffusion components
│   ├── training/            # Training utilities
│   ├── networks/            # Neural networks
│   ├── datasets/            # Data loading
│   └── conf/                # Configs
└── data/
    └── ispd2005/            # Benchmarks (see README inside)

Quick Start

Training

python train.py --config engine/conf/pretrain.yaml --data_dir path/to/synthetic/data
python train.py --config engine/conf/finetune.yaml --dataset_type ispd --data_dir data/ispd2005

Inference

python scripts/deploy_nangate45.py \
  --checkpoint path/to/checkpoint.pt \
  --design_dir path/to/ariane133 \
  --output_pkl results/ariane133.pkl

Data

Download ISPD2005 benchmarks from DREAMPlace

Additional modern SoC benchmarks (Ariane, NVDLA, MemPool, BlackParrot) available from:

Requirements

pip install -r requirements.txt