TorchOPC / TorchLitho

Differentiable Computational Lithogrpahy Framework
GNU General Public License v3.0
156 stars 31 forks source link
abbe computational-lithography design-for-manufacturing differentiable-programming ilt imaging jax lithography mask-optimization opc resist-modeling smo torch vector-lithography
# Differentiable Computational Lithogrpahy Framework [![python](https://img.shields.io/badge/-Python_3.8_%7C_3.9_%7C_3.10-blue?logo=python&logoColor=white)](https://github.com/pre-commit/pre-commit) [![pytorch](https://img.shields.io/badge/PyTorch_2.0+-ee4c2c?logo=pytorch&logoColor=white)](https://pytorch.org/get-started/locally/) [![lightning](https://img.shields.io/badge/-Lightning_2.0+-792ee5?logo=pytorchlightning&logoColor=white)](https://pytorchlightning.ai/) [![hydra](https://img.shields.io/badge/Config-Hydra_1.3-89b8cd)](https://hydra.cc/) [![black](https://img.shields.io/badge/Code%20Style-Black-black.svg?labelColor=gray)](https://black.readthedocs.io/en/stable/)
[![license](https://img.shields.io/badge/License-MIT-green.svg?labelColor=gray)](https://github.com/ashleve/lightning-hydra-template#license) [![PRs](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/ashleve/lightning-hydra-template/pulls) [![contributors](https://img.shields.io/github/contributors/TorchOPC/TorchLitho.svg)](https://github.com/TorchOPC/TorchLitho/graphs/contributors)

TL;DR

Description

The rapid evolution of the electronics industry, driven by Moore's law and the proliferation of integrated circuits, has led to significant advancements in modern society, including the Internet, wireless communication, and artificial intelligence (AI). Central to this progress is optical lithography, a critical technology in semiconductor manufacturing that accounts for approximately 30\% to 40\% of production costs. As semiconductor nodes shrink and transistor numbers increase, optical lithography becomes increasingly vital in current integrated circuit (IC) fabrication technology. This repo introduces an open-source differentiable lithography imaging framework that leverages the principles of differentiable programming and the computational power of GPUs to enhance the precision of lithography modeling and simplify the optimization of resolution enhancement techniques (RETs). The framework models the core components of lithography as differentiable segments, allowing for the implementation of standard scalar imaging models, including the Abbe and Hopkins models, as well as their approximation models.

Introduction slides

Notes

This repo is still under construction. 🚧

Installation

Pip

# clone project
git clone https://github.com/TorchOPC/TorchLitho
cd TorchLitho

# [OPTIONAL] create conda environment
conda create -n myenv python=3.11
conda activate myenv

# install pytorch according to instructions
# https://pytorch.org/get-started/

# install requirements
pip install -r requirements.txt
Using Conda ```bash # clone project git clone https://github.com/TorchOPC/TorchLitho cd TorchLitho # create conda environment and install dependencies conda env create -f environment.yaml -n myenv # activate conda environment conda activate myenv ```

How to run

Train model with default configuration

# Test the imaging
cd src/models/litho
python ImagingModel.py

Train model with chosen experiment configuration from configs/experiment/

python src/train.py experiment=experiment_name.yaml

You can override any parameter from command line like this

python src/train.py trainer.max_epochs=20 data.batch_size=64

Cited as

@inproceedings{SPIE24_difflitho,
  title     = {Open-Source Differentiable Lithography Imaging Framework},
  author    = {Chen, Guojin and Geng, Hao and Yu, Bei and Pan, David Z.},
  booktitle = {Advanced Lithography + Patterning},
  organization = {International Society for Optics and Photonics},
  publisher    = {SPIE},
  year      = {2024},
  month     = {3},
}

Releated work

Guojin Chen, Hao Geng, Bei Yu, David Z. Pan, “Open-Source Differentiable Lithography Imaging Framework”, SPIE Advanced Lithography + Patterning, San Jose, Feb. 25–29, 2024. (paper) (slides)

Guojin Chen, Hongquan He, Peng Xu, Hao Geng, Bei Yu, “Efficient Bilevel Source Mask Optimization”, ACM/IEEE Design Automation Conference (DAC), San Francisco, Jun. 23–27, 2024.

@inproceedings{DAC24_BiSMO,
  title     = {Efficient Bilevel Source Mask Optimization},
  author    = {Chen, Guojin and He, Hongquan and Xu, Peng and Geng, Hao and Yu, Bei},
  booktitle = {2024 61th ACM/IEEE Design Automation Conference (DAC)},
  pages     = {1-6},
  year      = {2024},
  month     = {7},
  organization = {IEEE},
}

Guojin Chen, Zixiao Wang, Bei Yu, David Z. Pan, Martin D.F. Wong, “Ultra-Fast Source Mask Optimization via Conditional Discrete Diffusion”, accepted by IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems (TCAD).

@ARTICLE{DiffSMO-chen-2024,
  author={Chen, Guojin and Wang, Zixiao and Yu, Bei and Pan, David Z. and Wong, Martin D.F.},
  journal={IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems},
  title={Ultra-Fast Source Mask Optimization via Conditional Discrete Diffusion},
  year={2024},
  volume={},
  number={},
  pages={1-1},
  keywords={Optimization;Lithography;Lighting;Integrated circuits;Graphics processing units;Optical imaging;Resists},
  doi={10.1109/TCAD.2024.3361400}
}


Resources

OPC : OpenILT


License

TorchLitho is licensed under the GPL3.0 License.