blob: 7cd54c1368bf1ccef0a045fd2b00de06d3a961fd [file] [log] [blame] [view]
m-usama-z0a4d0d52022-11-23 20:25:37 +05001# Local Installation (Linux)
2
3Instructions to install the dv setup locally (dockerless install).
4
5## You will need to fullfil these dependecies:
6
7* Icarus Verilog (10.2+)
8* RV32I Toolchain
9
10Using apt, you can install Icarus Verilog:
11
12```bash
13sudo apt-get install iverilog
14```
15
16Next, you will need to build the RV32I toolchain. Firstly, export the installation path for the RV32I toolchain,
17
18```bash
19export GCC_PATH=<gcc-installation-path>
20```
21
22Then, run the following:
23
24```bash
25# packages needed:
26sudo apt-get install autoconf automake autotools-dev curl libmpc-dev \
27 libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo \
28 gperf libtool patchutils bc zlib1g-dev git libexpat1-dev
29
30sudo mkdir $GCC_PATH
31sudo chown $USER $GCC_PATH
32
33git clone https://github.com/riscv/riscv-gnu-toolchain riscv-gnu-toolchain-rv32i
34cd riscv-gnu-toolchain-rv32i
35git checkout 411d134
36git submodule update --init --recursive
37
38mkdir build; cd build
39../configure --with-arch=rv32i --prefix=$GCC_PATH
40make -j$(nproc)
41```
42
43# Running Simulation
44
45You will need to export these environment variables:
46
47```bash
48export GCC_PATH=<gcc-installation-path>
49export PDK_PATH=<pdk-location/sky130A>
50```
51
52To run any simulation, you need to be on the top level or caravel_user_project.
53
54To run RTL simulation for one of the DV tests,
55
56```bash
57SIM=RTL make verify-<dv-test>
58```
59
60To run gate level simulation for one of the DV tests,
61
62```bash
63SIM=GL make verify-<dv-test>
64```
65