Skip to content

Latest commit

 

History

History
52 lines (34 loc) · 2.53 KB

DEPENDENCIES.md

File metadata and controls

52 lines (34 loc) · 2.53 KB

Dependencies

Ara has strong and weak dependencies on several packages. Such dependencies and their licenses are listed in this document.

Hardware dependencies

Ara needs the following hardware packages to work.

All of them are licensed under the Solderpad 0.51 license.

Software

In order to compile the benchmarks, you will need the RISC-V GCC toolchain with support for the Vector Extension, version 0.9. This is included as a submodule (toolchain/riscv-gnu-toolchain).

Unit tests for the vector instructions are given in a patched version of the riscv_tests repository (apps/riscv-tests). The riscv-tests repository is licensed under the BSD license.

The unit tests can also run on Spike, the RISC-V ISA Simulator, which is also included as a submodule (toolchain/riscv-isa-sim). This version of Spike is patched to align the behavior of the vcsr CSR with the toolchain and with RVV v0.9.

We provide a Python script to run clang-format and format the C and C++ files of this repository (scripts/run-clang-format.py). This file is licensed under the MIT license.

jacobi2d comes from an adaptation of the software in https://github.com/RALC88/riscv-vectorized-benchmark-suite. The source file apps/jacobi2d/main.c contains the original licence.

conjugate_gradient needs python package sklearn for generating symmetric and positivie-defined matrix

Tools

Installing the toolchains, spike, and verilator requires some dependencies. We list here a non-exhaustive list of dependecies as reported by users. Ignore if they are not required by your system or if they give errors.

Toolchains: libmpc-dev, ninja-build Spike: `` Verilator: libelf-dev, help2man, linux-headers-$(uname -r) zlibc zlib1g zlib1g-dev libfl-dev libfl2 libgz flex

Verilator simulations

In order to run Verilator simulations, you will need a modern Verilator installation. Ara was tested with Verilator v4.106, included as a submodule (toolchain/verilator). Verilator is licensed under the GPL version 3.0.

Verilator simulations also need some testbench helper files, which were adapted from lowRISC. Such files can be seen in hardware/tb/verilator/. They are licensed under the Apache license version 2.0.