本文用于记录安装Chipyard和Firesim的相关事项
环境:Ubuntu 20.04.5 LTS
Chipyard
chipyard的安装还算是顺利,问题不多,除了conda这块儿有遇到比较多的问题,主要出现在重装上,第一次配置反而比较顺利。
- 首先安装conda,Anaconda和MiniForge都可以,注意安装时候,给conda_install.sh增加可执行权限和运行该脚本时都不要用sudo权限,否则后续会导致conda验证环境(verify environment)失败,或许可以通过相应的办法解决,但执行conda命令和在chipyard环境中的make等命令时,可能使用sudo和进入root环境会导致命令无法被识别。
- 注意:一定要先安装conda-lock,安装成功后执行下一步。
- 接着执行riscv-tools的build,这一步最好是提前搞好网络环境,中间由于网络原因断开的话,可能会导致后续重试报错。比如:已经建立了.conda_env文件夹,但是并未部署完成,这时重新执行build命令会报出已存在路径,需要将.conda_env文件夹删掉或mv成别的名字。
- 关于重装:在初次摸索的过程中很容易对内部的一些东西做出一些修改,然后在脚本运行的过程中不知道又牵连到了哪些地方,这时最简单粗暴的方法就是重新安装整个环境,可以把整个chipyard直接删掉,再重新git clone一遍,然后重复上面的步骤,在不卸载conda的情况下,重装时conda-lock一般是不需要重新配置的,只需要直接clone库然后build riscv-tools就行,但是还是可能遇到conda环境的错误的,最直接的方法还是直接重装。
Firesim
Firesim的安装就比较麻烦了,涉及到硬件板卡的配置问题,因为我本身是想用已有的板卡进行Firesim的部署的,完美移植还是相当有工作量的。
- 首先按照官网流程进行安装,xdma驱动和xvsec驱动,ssh server和guestmount等等,然后git clone firesim或chipyard,看自己打算怎么来生成核的配置。
- 用的是官网适配了的板卡的话可以烧一下bit流,github上有官方预先生成的bit流文件。如果不是的话需要先按照板卡进行配置,最好能load上xdma驱动。
- 后续继续执行firesim enumeratefpgas和firesim infrasetup,这俩命令都会访问和读取config_hw.yaml里对应的项,可以把里面要用的配置的地址换成本地地址(下载tar.gz后替换),这样就不用每次都卡在网络问题了,githubusercontent.com还是太慢了,而且连接不稳定。
- 配置自己的板卡的话可以走U250的流程,这个flow会生成完整的vivado工程,而且是基于block design的,后续进行硬件层面的移植,更好做一些,vcu118的flow有点难分析,整个框架不够直观。
- ./build-setup.sh,只装Firesim的情况下,在这一步可能会卡在set currency project …这一步,起初以为是网络问题,后来发现在其他电脑上可以配置完成,虚拟机上也可以,所以最好尝试改变环境试试,直接重装系统也是好办法,简单粗暴。
持续更新中…