Skip to content

[ASICON'25] User-friendly lithography simulation engine for full-chip scale mask optimization

License

Notifications You must be signed in to change notification settings

OpenOPC/TorchLitho-Lite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

logo

TorchLitho 2.0: Ultrafast Differentiable Lithography Simulation Engine

TorchLitho 2.0 is a lightweight and user-friendly lithography simulation engine designed for full-chip scale mask optimization. It includes two optical models, Abbe and Hopkins, with results that are well-aligned. The engine is developed using PyTorch and features self-defined gradient calculations for improved efficiency.

Install

To set up the project, follow these steps:

  1. Install the required dependencies Ensure that the requirements.txt file is in the current directory, then run the following command:

    pip install -r requirements.txt
  2. Install the TorchLitho 2.0 project Run the following command to install the project:

python setup.py install

Litho Simulation

The following table lists the parameters that can be configured.

Param Type Description Default
Pixel int Pixel count per side of the mask/image grid (unit: pixels). Sets the discrete resolution of the simulation. 14
Sigma float Source broadening parameter σ. For partially coherent illumination: NA-normalized source extent (unitless). If used as a Gaussian PSF/filter std, specify units (e.g., pixels). 0.05
NA float Numerical Aperture (unitless). Determines cutoff spatial frequency and resolution. 1.35
Wavelength int Illumination wavelength (unit: nm). 193 nm corresponds to an ArF source. 193
Defocus List[int] List of defocus values (unit: nm; consider standardizing to nm). Sign convention depends on your model’s coordinate system. None
Par bool Enable parallel mode for Abbe imaging/convolution simulation (performance only; no physical change). False
Batch bool Enable a batch dimension to simulate multiple masks/fields at once (inputs must include a batch axis). False

Example

The example shows the simulation results of the ICCAD13 benchmark using a canvas size of $2048 \times 2048$ and a pixel size of 1.

example

Citation

If you find this project helpful in your research, please consider citing our paper:

@MISC{TorchLitho,
  title = {TorchLitho 2.0: Ultrafast Differentiable Lithography Simulation Engine},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/OpenOPC/TorchLitho-Lite}}
}

About

[ASICON'25] User-friendly lithography simulation engine for full-chip scale mask optimization

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages