最近在准备毕设,研究的主要是EDA方向,需要用到OpenROAD。在部署OpenROAD的时候花了很多时间,期间也碰到了很多问题,踩了很多坑,故写下这篇文章记录一下过程和碰到的一些问题。
之前一直都是用的Windows系统,基本没有接触过Linux系统,之前也只是树莓派上接触过一点,前段时间在直接装了一个双系统,对新系统的不熟悉导致遇到了很多问题。
安装OpenROAD
第一次安装的时候git了全部的project,安装不成功,后来在知乎找到一篇20年的文章,看这里,跟着这篇文章配置了一些环境。
环境配置好后就可以开始到GitHu里cloneOpenROAD-flow仓库了,根据官方给的教程开始安装。
需要先安装 KLayout(不然后面build会失败),可以点击教程里面的按钮跳转到下载页面
选择Ubuntu20
下载之后安装即可(我下载的版本是0.28.5),下载完deb文件后进入下载目录输入
sudo dpkg -i klayout_0.28.5-1_amd64.deb
然后开始安装OpenROAD-flow,在终端输入
sudo apt install git
git clone --recursive https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts.git
build之前应该需要先安装or-tools,因为在build这一步的时候我这边报错了,提示没有or-tools,找不到or-toolsConfig文件。or-tools是Google开发的一个求解工具,于是找到Google的官方教程
选择Ubuntu20.04LTS
然后跟着教程走一趟,安装完or-tools之后就可以进行下一步了,打开终端输入
cd OpenROAD-flow-scripts/
./build_openroad.sh --local
安装完之后进行一些验证
source ./setup_env.sh
yosys -help
openroad -help
最后跑一下他给的例子,打开终端进入OpenROAD-flow-scripts,输入
cd flow && make
这样会在flow/results/nangate45/gcd/下生成6_final.gds文件,可以使用klayout来查看。
到这里应该应该就算完成了,笔者暂且做到这一步,之后继续有问题补充。
一些其他问题
git的时候由于网络问题总是中断,这个时候需要继续安装,打开终端进入项目根目录,运行下面这行命令:
git submodule update --init --recursive