Setup
This guide explains how to setup your computer to run A-Core projects. There is also a Docker image available.
Git
You need to have git configuration set up. For this project, you need both an account and an ssh key set up in the following sites:
If you work on closed-source projects, you also need them in:
bubba.ecdl.hut.fi (Accessable only in Aalto network)
SSH key setup
As said, you need to set up SSH keys. For that, you need to generate one on your local machine. You need to do it once per machine, and then use the same key in all sites.
Read instructions on how to generate an ssh key here. Bubba supports only RSA, so use that.
If you are working on bubba or vspace, you need to add the following in your $HOME/.ssh/config:
Host gitlab.com
Hostname altssh.gitlab.com
Port 443
RISC-V GNU toolchain
Note
You need to install this only if you plan on using your local computer for developing A-Core.
The riscv-gnu-toolchain must be built from source. Steps for installing go as follows:
Clone the repository: https://github.com/riscv-collab/riscv-gnu-toolchain
Checkout a release version, e.g.
git checkout 2024.04.12Open
README.mdand ensure you have the prerequisitesRun the following command. Set the prefix to a location where you have write access.
./configure --prefix=/opt/riscv --with-multilib-generator="rv32imf_zicsr-ilp32f--c;rv32im_zicsr-ilp32--c;rv32i_zicsr-ilp32--c;rv32if_zicsr-ilp32f--c;"
Run
make.Wait. It can take over an hour to build.
Add the binaries to PATH
Other Tools
Note
You need to install these only if you plan on using your local computer for developing A-Core.
You need:
One of the following simulators:
Icarus Verilog (v12)
Verilator (>=v5.026)
Questa Sim
GTKWave for waveforms
Java Development Kit (openjdk 17, newer ones do not work)
sbt
Python >=3.9
Python >=3.9 development package (
sudo apt install python3.x-dev)