Instructions to install the dv setup locally (dockerless install).
Using apt, you can install Icarus Verilog:
sudo apt-get install iverilog
Next, you will need to build the RV32I toolchain. Firstly, export the installation path for the RV32I toolchain,
export GCC_PATH=<gcc-installation-path>
Then, run the following:
# packages needed: sudo apt-get install autoconf automake autotools-dev curl libmpc-dev \ libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo \ gperf libtool patchutils bc zlib1g-dev git libexpat1-dev sudo mkdir $GCC_PATH sudo chown $USER $GCC_PATH git clone https://github.com/riscv/riscv-gnu-toolchain riscv-gnu-toolchain-rv32i cd riscv-gnu-toolchain-rv32i git checkout 411d134 git submodule update --init --recursive mkdir build; cd build ../configure --with-arch=rv32i --prefix=$GCC_PATH make -j$(nproc)
You will need to export these environment variables:
export GCC_PATH=<gcc-installation-path> export PDK_PATH=<pdk-location/sky130A>
To run any simulation, you need to be on the top level or caravel_user_project.
To run RTL simulation for one of the DV tests,
SIM=RTL make verify-<dv-test>
To run gate level simulation for one of the DV tests,
SIM=GL make verify-<dv-test>