ASIC Tools Setup

Docker

A ready-to-use Docker container with open-source ASIC and RISC-V tools, so you don’t have to install each dependency manually. Though many tools come pre-installed, always check versioning and make sure you have what you want. The Docker container comes with the riscv-gnu-toolchain preinstalled.

Important

Always verify the versions of tools installed in the container to ensure compatibility with your project.

Quickstart

Ensure you have VSCode, Ubuntu/WSL, and the latest version of Docker installed. Enable WSL 2 integration with Docker.

If you need VSCode, Docker, or Ubuntu for WSL, please do the following (in the following order):

Install VS Code and Docker

Note

Open Command Prompt in Administrator Mode before running the commands.

Install Ubuntu

wsl --install -d Ubuntu-24.04

Install Common Programs

sudo apt update
sudo apt full-upgrade -y

Installation Guide

Install the Dependencies

sudo apt update && sudo apt install -y build-essential git curl wget unzip zip tar gdb htop net-tools man-db lsb-release software-properties-common python3 python3-pip python3-venv cmake valgrind openssh-client nodejs npm default-jdk golang tmux neofetch tree nano vim lsof

Configure Git and Install OpenSSH

Configure your GitHub username for WSL/Ubuntu

git config --global user.name "Your Name"
git config --global user.email "you@example.com"

Generate an SSH Key

sudo apt install -y openssh-client
ssh-keygen

Note

Hit enter until it prints the hash if you don’t want a password (recommended).

View and Copy the Public Key

cat ~/.ssh/id_e25119.pub

Copy the contents of the .pub file.

Add SSH Key to GitHub

  1. Navigate to GitHub Settings → SSH and GPG Keys.

  2. Click New SSH Key.

  3. Name your key and paste the contents of the .pub file.

Start SSH Agent

eval $(ssh-agent -s)

You should see something like:

Agent pid 1234

Test GitHub Authentication

ssh -T git@github.com

Expected output:

"Hi <github username>, You've successfully authenticated, but GitHub does not provide shell access."

Clone and Run ASIC Tools

git clone git@github.com:cal-poly-ramp/carp-tools.git
./carp-tools/install.sh
./carp-tools/run.sh

You should now see:

"ubuntu@asic$"

Note

Add an alias to easily get into the docker container with one word

# go to Ubuntu home
cd

# edit your .bashrc
vim .bashrc
# add cd at the bottom so you always enter into Ubuntu home and not /mnt/Users/<you>
# add " alias runcarp='cd && cd carp-tools/ && ./run.sh' at the bottom so you can just type "runcarp" "
# save your .bashrc

bash exec
# reloads your terminal so you dont have to close it