【chipyard安装教程】

chipyard1.8.0安装教程

0.安装环境

Ubuntu:22.04
chipyard:1.8.0
conda:23.3.1 (must be version 4.12.0 or higher)
verilator:4.226

1.安装conda

在chipyard1.8.0中,使用Conda管理项目依赖。参阅 Conda 安装说明,了解如何使用 Miniforge 安装程序安装 Conda。具体操作:

curl -L -O "https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-$(uname)-$(uname -m).sh"
bash Miniforge3-$(uname)-$(uname -m).sh

关闭终端,重新打开后,会生效。终端前出现 (base)。运行conda --version 查看版本。要求conda版本大于等于4.12.0。

接着,安装conda-lock(Conda lock is a lightweight library that can be used to generate fully reproducible lock files for conda environments.)

conda install -n base conda-lock
conda activate base

2.初始化子模块&安装工具链

① 拉取chipyard仓库,并切换到1.8.0版本
git clone https://github.com/ucb-bar/chipyard.git
cd chipyard
git checkout 1.8.0
② 运行初始化脚本

该脚本将会创建chipyard Conda环境,包括riscv工具链

运行该脚本时,还会运行init-submodules-no-riscv-tools.sh 和 build-toolchain-extra.sh 两个脚本

./build-setup.sh riscv-tools

运行完成后,通过命令conda env list,将会有一个chipyard相关的环境:$CHIPYARD_DIRECTORY/.conda-env
在这里插入图片描述

③ 设置环境变量

通过运行以下命令,进而:

  • 激活在 build-setup.sh 中创建的 conda 环境
  • 设置将来 Chipyard 步骤所需的必要环境变量(PATH、RISCV 、LD_LIBRARY_PATH)
source ./env.sh

注:每次运行make命令时,都需要先进行这一步

3.修补部分缺失模块

因为网络问题,会有子模块拉取失败的情况。这样会导致在编译时出现很多错误。在上一步,运行build-setup.sh脚本时,会在chipyard目录下,生成init-submodules-no-riscv-tools.log文件。记录了该脚本运行的情况,可以通过查看日志,看到哪些子模块拉取失败了。

同时,可以在chipyard/.gitmodules中查看,chipyard具体有哪些子模块。

接下来,面对缺失的子模块,如tools/torture,你可以通过以下命令来获取。

git submodule update --init --recursive tools/torture

请确保generators和tools目录下的所有子模块都拉取下来了。有时候,它只有文件夹,里面的内容不全,最好一个个文件夹点进去确认一下。

4.生成soc

① 安装verilator

chipyard可以使用Verilator构建和执行仿真。

安装必要的安装包

sudo apt-get install git perl python3 make autoconf g++ flex bison ccache
sudo apt-get install libgoogle-perftools-dev numactl perl-doc
sudo apt-get install libfl-dev
sudo apt-get install zlibc zlib1g zlib1g-dev

github上拷贝源代码:

git clone https://github.com/verilator/verilator

编译前的准备工作:

unset VERILATOR_ROOT  # For bash
cd verilator
git pull         # Make sure git repository is up-to-date
git checkout v4.226      #切换到4.226版本

配置编译安装:

autoconf         # Create ./configure script
./configure      # Configure and create Makefile
make -j `nproc`  # Build Verilator itself (if error, try just 'make')
sudo make install

如果成功的话输入:

verilator --version

在这里插入图片描述

② 安装gtkwave

gtkwave是一个开源的波形查看文件,方便我们查看运行程序后生成的波形。

sudo apt-get install gtkwave
③ 生成boom

通过CONFIG指定编译的项目。第一次编译时会自动安装chisel所需要的依赖。

# Enter Verilator directory
cd sims/verilator
make CONFIG=SmallBoomConfig   #这一步必须要做,因为第一次运行时会自动下载chisel运行所必需的包
④ 测试

上述命令将会生成一个可执行文件。可以使用此可执行文件运行任何兼容的 RV64 代码。例如,运行其中一个 riscv 工具链中集成的测试文件。

./simulator-chipyard-RocketConfig $RISCV/riscv64-unknown-elf/share/riscv-tests/isa/rv64ui-p-simple    #输出success说明没有问题

如果这一步运行顺利,说明chipyard已经安装成功,可以进行软件仿真了。

参考:Chipyard 1.8.0 安装教程

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值