Skip to content

laiyao1/AnalogCoderPro

Repository files navigation

AnalogCoder-Pro: Unifying Analog Circuit Generation and Optimization via Multi-modal LLMs

Yao Lai1, Souradip Poddar2, Sungyoung Lee2, Guojin Chen3, Mengkang Hu1, Bei Yu3, Ping Luo1, David Z. Pan2.

1 The University of Hong Kong, 2 The University of Texas at Austin, 3 The Chinese University of Hong Kong.

[Paper]

This work is an extension of AnalogCoder (AAAI 2025) [repo].

🔔 Updates

  • Our work has been accepted in IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems (TCAD) 2026! 🎉

🎯 Overview

  • Challenge: Analog front-end design still relies heavily on expert intuition and iterative simulations, with limited automation.
  • Solution: AnalogCoder-Pro — a unified multimodal LLM-based framework for analog design automation.
  • Key Features:
    • Joint circuit topology generation and device sizing optimization
    • Automatic generation of performance-specific schematic netlists
    • Multimodal diagnosis & repair using specifications and waveform images
    • Automated extraction of design parameters and parameter space formulation
  • Outcome: Improves design success rate and circuit performance, enabling an end-to-end automated workflow.

✅ Project Checklist

  • Update the LLM run scripts.
  • Update the sample waveform figures.
  • Update the BO optimization.
  • Update all ablation study prompts.

🧪 Benchmark

  • Task descriptions are in the file problem_set.tsv.
  • Sample circuits are in the sample_design directory.
  • Test benches are in the problem_check directory.

Environment Settings

git clone git@github.com:laiyao1/AnalogCoderPro.git
cd AnalogCoderPro
conda create -n analog python==3.10
conda activate analog
pip install matplotlib pandas numpy scipy openai
conda install -c conda-forge ngspice -y
conda install -c conda-forge pyspice

Quick Start

python run.py --task_id=19 --num_per_task=3  --model=gpt-5-mini --api_key="[API_KEY]" --base_url="[BASE_URL]"

This script will attempt Mixer generation 3 times. The mapping of task IDs can be found in problem_set.tsv.

📊 Waveform Gallery

Here are example waveforms for different circuit types, demonstrating the appropriate analysis methods for each design.

Mixer — Transient + FFT Spectrum Schmitt Trigger — Transient + DC Transfer
Mixer Schmitt Trigger
Oscillator — Transient Integrator — Transient
Oscillator Integrator
Differentiator — Transient BandStop Filter — AC
Differentiator BandStop Filter
Comparator — DC Sweep
Comparator

📚 Citation

If you find our work useful, we would appreciate a citation of our paper.


@article{lai2025analogcoder,
    title={AnalogCoder: Analog Circuit Design via Training-Free Code Generation},
    volume={39},
    DOI={10.1609/aaai.v39i1.32016},
    number={1},
    journal={Proceedings of the AAAI Conference on Artificial Intelligence},
    author={Lai, Yao and Lee, Sungyoung and Chen, Guojin and Poddar, Souradip and Hu, Mengkang and Pan, David Z. and Luo, Ping},
    year={2025},
    pages={379-387}
}

@article{lai2026analogcoderpro,
    author={Lai, Yao and Poddar, Souradip and Lee, Sungyoung and Chen, Guojin and Hu, Mengkang and Yu, Bei and Luo, Ping and Pan, David Z.},
    journal={IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems}, 
    title={AnalogCoder-Pro: Unifying Analog Circuit Generation and Optimization via Multi-modal LLMs}, 
    year={2026},
    doi={10.1109/TCAD.2026.3673493}
}

About

[TCAD 2026] AnalogCoder-Pro: Unifying Analog Circuit Generation and Optimization via Multi-modal LLMs

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages