======== setup basic environment =========
install ubuntu20.04-LTS
sudo apt install default-jre
sudo apt install git curl build-essential cmake flex bison gawk
sudo apt install libgmp-dev libmpfr-dev libmpc-dev
========= install scala-sbt ==============
refer to http://www.scala-sbt.org/download.html
echo "deb https://repo.scala-sbt.org/scalasbt/debian all main" | sudo tee /etc/apt/sources.list.d/sbt.list
echo "deb https://repo.scala-sbt.org/scalasbt/debian /" | sudo tee /etc/apt/sources.list.d/sbt_old.list
curl -sL "https://keyserver.ubuntu.com/pks/lookup?op=get\&search=0x2EE0EA64E40A89B84B2DF73499E82A75642AC823" | sudo apt-key add
sudo apt update
sudo apt install sbt
sbt --version
> sbt version in this project: 1.9.4
> sbt script version: 1.9.4
========= install verilator v4.218 ==========
git clone https://github.com/verilator/verilator
git checkout -b v4.218
git branch
autoconf
./configure
make
sudo make install
======== compile and run riscv-mini ========
git clone https://github.com/ucb-bar/riscv-mini
cd riscv-mini
make
make verilator
make run-tests
make sbt
>testOnly mini.TileBmarkTests
>testOnly mini.CoreISATests
>testOnly mini.TileSimpleTests
>test
==================================
export RISCV=/home/hemin/cad/RISCV
./build-riscv-tools.sh
make run-custom-bmark