1 Star 0 Fork 53

liu_nix / iEDA

forked from OSCC / iEDA 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
iEDA-logo

iEDA

从 Netlist 到 GDS 的开源芯片设计 EDA 平台

License

简体中文 | English

iEDA 主页:ieda.oscc.cc

关于iEDA

  • About “i”in iEDA
    • Meaning 1: Infrastructure
    • Meaning 2: Intelligent
  • The goal of the iEDA project
    • EDA Infrastructure
    • High quality and performance EDA tool
  • Open-source is not a goal but a way

iEDA主要内容和规划

  • Enhance the infrastructure to support more design requirement
  • Complete the EDA tool chain from RTL-GDS II
  • Improve the quality and performance of all EDA tool operations
  • Construct AI for EDA platform and introduce trained AI model to the EDA platform
  • Build data system with enough chip design and labeling process data
  • Achieve the adaptability of the EDA platform for cloud-native
iEDA_framework

iEDA Structure

iEDA_structure

iEDA Infrastructure

iEDA_infrastructure

iEDA Operations (Tools)

iEDA_operation

iEDA Tapeout

iEDA_tapeout

🎉 最新消息:

关注我们5月9日在南京 ISEDA-2023, Session 2 的报告 iEDA: An Open-Source Intelligent Physical lmplementation Toolkit and Library [paper, slides],和 Panel 6 的讨论 Open-source EDA and Standards


论文和报告

  • ISEDA 2023: iEDA:An Open-Source Intelligent Physical Implementation Toolkit and Library [paper, slides]

iEDA 使用指导

使用 iEDA 进行芯片设计,需首先获得 iEDA 可执行文件。

若您需要对 iEDA 进行修改,通过源码构建,请按照顺序阅读。

您也可以直接使用最新的 release docker 镜像,即可跳过 "1. 源码构建 iEDA"。

PS: 关于如何安装 Docker,可参考Docker安装及初始化

1. 源码构建 iEDA

我们提供两种源码构建 iEDA 的方法作为示例。

方法1 使用iEDA镜像(推荐)

从 Dockerhub 上下载最新的 iedaopensource/base 镜像,镜像中包含了最新的 master 分支代码和依赖(构建工具和依赖库)。也可使用 -v 命令挂载自行下载的 iEDA 代码仓库,仅使用镜像提供的编译工具和依赖库进行构建。

参考如下命令,进入容器后的当前目录即为 iEDA master 分支代码。

# iedaopensource/base:(latest, ubuntu, debian)
docker run -it --rm iedaopensource/base:latest bash 
# 进入容器后执行 build.sh 进行构建
bash build.sh
# 若能够正常输出 "Hello iEDA!" 则编译成功
./bin/iEDA -script scripts/hello.tcl

根据个人使用习惯,有 ubuntu(基于Ubuntu20.04)和 debian(基于Debian11)两种不同镜像tag可选。

方法2 手动安装依赖并编译

在 Ubuntu 20.04 下执行如下命令:

# 下载iEDA仓库
git clone https://gitee.com/oscc-project/iEDA.git iEDA && cd iEDA
# 通过apt安装编译依赖,需要root权限
sudo bash build.sh -i apt
# 编译 iEDA
bash build.sh
# 若能够正常输出 "Hello iEDA!" 则编译成功
./bin/iEDA -script scripts/hello.tcl

2. 使用 iEDA 完成芯片设计

这里提供两种 iEDA 的运行方法作为参考。

关于 iEDA 的使用,参考 Tcl 命令手册src/operation 下各工具的说明文档readme。

方法1 release 或者 demo 镜像运行(推荐)

若需要使用自定义的工艺和设计,可将相关的文件挂载到容器中运行。关于目录结构和相关配置文件,可参考 scripts/sky130 中的示例。

docker run -it -v ${工艺和设计目录}:${容器内目录} --rm iedaopensource/release:latest

方法2 自行创建文件运行

参考 scripts/sky130 中的文件目录格式,添加 iEDA 可执行文件路径到系统$PATH变量,运行 sh run_iEDA.sh,在 result 文件夹中查看运行结果。

iEDA/scripts/sky130
├── common        # common scripts
├── iEDA_config   # iEDA parameters configuration files
├── lef           # lef files
├── lib           # lib files
├── result        # iEDA result output files
├── script        # Tcl script files
├── sdc           # sdc files
├── run_iEDA.py   # Python3 script for running iEDA
└── run_iEDA.sh   # POSIX shell script for running iEDA

贡献指南

Fork 此 iEDA 仓库,修改代码后提交 Pull Request

请注意 iEDA 使用的编程规范

讨论和反馈

  • 新建 issue,我们将及时反馈。

  • QQ 群:793409748

  • 微信讨论群:

微信讨论群

License

木兰宽松许可证, 第2版

致谢

在iEDA的开发过程中,我们采用了来自开源社区的子模块。具体情况如下:

子模块 来源 详细用途
flute3 FastRoute 借助flute3来产生rectange steiner tree.
abseil-cpp Google abseil 使用Google的高性能C++容器和算法库提升性能,相比STL会改进程序性能.
json JSON for Modern C++ Json C++库,用来解析程序Json配置文件.
magic_enum Static reflection for enums (to string, from string, iteration) 支持 enum 值和字符串的相互转换.
libfort Seleznev Anton libfort C/C++ library 产生格式化的 ASCII tables.
pegtl PEGTL(Parsing Expression Grammar Template Library) 使用PEGTL来方便的解析SPEF文件.
pybind11 pybind 11 方便python调用C++.
VCDParser ben-marshall verilog-vcd-parser 解析功耗VCD波形文件.
def lef def lef parser 解析物理设计DEF/LEF文件.
ThreadPool Jakob Progsch, Václav Zeman threadpool C++11模板库实现的多线程池.
fft fft 快速傅立叶变换库.
hmetics hmetics 高效的图划分算法.

我们深深地感谢来自开源社区的支持,我们也鼓励其他开源项目在木兰宽松许可证的范围下复用我们的代码。

空文件

简介

从 Netlist 到 GDS 的开源芯片设计 EDA 平台 展开 收起
C++
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
C++
1
https://gitee.com/liunix61/iEDA.git
git@gitee.com:liunix61/iEDA.git
liunix61
iEDA
iEDA
master

搜索帮助