We provide two methods for source code construction of iEDA as examples.
Method 1. Use the iEDA mirror (Redommended)
Download the latest “iedaopensource/base” mirror from Dockerhub, which includes the latest master branch code and dependencies (build tools and dependency libraries). You can also use the ‘-v’ command to mount your own downloaded iEDA code repository. The build will only use the compile tools and dependency libraries provided by the mirror.
The current directory after entering the container is the iEDA master branch code, refering the following commands:
# ieda opensource/base:(latest, ubuntu, debian)
docker run -it --rm iedaopensource/base:latest bash
# enter docker and run build.sh to build
bash build.sh
# if output "Hello iEDA!", then compile successfully
./bin/iEDA -script scripts/hello.tcl
We have ubuntu(Ubuntu20.04)and debian(Debian11)mirror tag.
Method 2. Install dependencies and compile
installing command on Ubuntu 20.04:
# download iEDA repo
git clone --recursive https://gitee.com/oscc-project/iEDA.git iEDA && cd iEDA
# compile dependencies with an apt installation requires root permission
sudo bash build.sh -i apt
# comple iEDA
bash build.sh
# if output "Hello iEDA!", then compile successfully
./bin/iEDA -script scripts/hello.tcl
2. Design chip by using iEDA
Here, two iEDA operation methods are provided for reference
About how to use iEDA, please refer Tcl command manual and the tool instruction docs of readme.md in src/operation.
Method 1. Run release or demo mirror(Redommended)
If you need to use custom processes and designs, mount the associated files into the docker to run. About the structure and the corresponding config files, please refer the demo in scripts/sky130.
docker run -it -v ${file directory of pdk and design}:${file directory in docker} --rm iedaopensource/release:latest
Method 2. Compile iEDA binary and run
Refering the file directory in scripts/sky130,add the path of iEDA execution binary into the system path variable $PATH, and runing sh run_iEDA.sh,and seeing the result in result.
@inproceedings{li2024ieda,
title={iEDA: An Open-source infrastructure of EDA},
author={Li, Xingquan and Huang, Zengrong and Tao, Simin and Huang, Zhipeng and Zhuang, Chunan and Wang, Hao and Li, Yifan and Qiu, Yihang and Luo, Guojie and Li, Huawei and Shen, Haihua and Chen, Mingyu and Bu, Dongbo and Zhu, Wenxing and Cai, Ye and Xiong, Xiaoming and Jiang, Ying and Heng, Yi and Zhang, Peng and Yu, Bei and Xie, Biwei and Bao, Yungang},
booktitle={2024 29th Asia and South Pacific Design Automation Conference (ASP-DAC)},
pages={77--82},
year={2024},
organization={IEEE}
}
@inproceedings{li2024ipd,
title={iPD: An Open-source intelligent Physical Design Toolchain},
author={Li, Xingquan and Tao, Simin and Chen, Shijian and Zeng, Zhisheng and Huang, Zhipeng and Wu, Hongxi and Li, Weiguo and Huang, Zengrong and Ni, Liwei and Zhao, Xueyan and Liu, He and Long, Shuaiying and Liu, Ruizhi and Lin, Xiaoze and Yang, Bo and Huang, Fuxing and Yang, Zonglin and Qiu, Yihang and Shao, Zheqing and Liu, Jikang and Liang, Yuyao and Xie, Biwei and Bao, Yungang and Yu, Bei},
booktitle={2024 29th Asia and South Pacific Design Automation Conference (ASP-DAC)},
pages={83--88},
year={2024},
organization={IEEE}
}
We are grateful for the support of the open-source community and encourage other open-source projects to reuse our code within the scope of the MulanPSL-2.0.
iEDA
An open-source EDA infracstructure and tools from Netlist to GDS for ASIC design.
Chinese | English
Open-source is not a goal but a way
iEDA Homepage:ieda.oscc.cc/en/
iEDA Overview
iEDA Infrastructure and tool
iEDA Tapeout
🎉 News:
https://ieda.oscc.cc/en/publicity/news/
Papers and Presentations [See more]
iEDA User Guide
Before designing chip by iEDA,you need to obtain the execution binary of iEDA.
If you need to modify iEDA through source code construction, please read iEDA user guide.
You can also directly use the latest release docker, then you can skip “1. Source code construction of iEDA”.
PS: you can refer Docker install and initilization to know how to install Docker.
1. Build iEDA from source code
We provide two methods for source code construction of iEDA as examples.
Method 1. Use the iEDA mirror (Redommended)
Download the latest “iedaopensource/base” mirror from Dockerhub, which includes the latest master branch code and dependencies (build tools and dependency libraries). You can also use the ‘-v’ command to mount your own downloaded iEDA code repository. The build will only use the compile tools and dependency libraries provided by the mirror.
The current directory after entering the container is the iEDA master branch code, refering the following commands:
We have ubuntu(Ubuntu20.04)and debian(Debian11)mirror tag.
Method 2. Install dependencies and compile
installing command on Ubuntu 20.04:
2. Design chip by using iEDA
Here, two iEDA operation methods are provided for reference
About how to use iEDA, please refer Tcl command manual and the tool instruction docs of
readme.md
insrc/operation
.Method 1. Run release or demo mirror(Redommended)
If you need to use custom processes and designs, mount the associated files into the docker to run. About the structure and the corresponding config files, please refer the demo in
scripts/sky130
.Method 2. Compile iEDA binary and run
Refering the file directory in
scripts/sky130
,add the path of iEDA execution binary into the system path variable $PATH, and runingsh run_iEDA.sh
,and seeing the result inresult
.Contribution Guide
Fork this iEDA repository,after adding and commiting code, please summit Pull Request。
Please note the using Coding Style of iEDA。
Citation
Discussion
License
MulanPSL-2.0
Acknowledgement
In the development of iEDA, some sub-modules from the open-source community are employed. All relevant usage is listed below.
We are grateful for the support of the open-source community and encourage other open-source projects to reuse our code within the scope of the MulanPSL-2.0.