1. Installation Guide (SemiDevKit)

This document describes how to install and prepare the environment for SemiDevKit, including TCAD playgrounds, BSIM4 analyzers, and OpenLane-Lite.


1. System Requirements

1.1 Supported OS


2. Required Software

2.1 Python

SemiDevKit requires:

Check your version:

python3 --version

Install dependencies:

pip install numpy scipy matplotlib pandas pyyaml

Some analyzers use only numpy/matplotlib, others require pandas.


2.2 ngspice

SemiDevKit uses ngspice for SPICE-based device simulations.

Linux (Ubuntu)

sudo apt update
sudo apt install -y ngspice

macOS

brew install ngspice

Windows (native or WSL2)

Check installation:

ngspice --version

3. Recommended Tools

3.1 WSL2 (Windows Only)

Strongly recommended when running SemiDevKit on Windows.

Enable WSL2:

wsl --install

Install Ubuntu from Microsoft Store, then inside Ubuntu:

sudo apt update && sudo apt upgrade -y

3.2 Docker (for OpenLane-Lite)

Required for executing the full RTL→GDSII minimal flow.

Install Docker Desktop:

https://www.docker.com/products/docker-desktop/

Enable:


3.3 Visual Studio Code

Recommended editor environment.

Install extensions:


4. Clone the Repository

HTTPS

git clone https://github.com/Samizo-AITL/SemiDevKit.git
cd SemiDevKit

SSH

git clone git@github.com:Samizo-AITL/SemiDevKit.git
cd SemiDevKit

5. Python Environment

SemiDevKit includes multiple tools (TCAD playground, BSIM analyzers, reliability framework).
Each tool may use different dependencies, so a dedicated venv per tool is recommended.


5.1 Create and activate venv (Linux / WSL2 / macOS)

cd SemiDevKit
python3 -m venv .venv
source .venv/bin/activate

5.2 Create and activate venv (Windows PowerShell)

cd SemiDevKit
python -m venv .venv
.\.venv\Scripts\Activate.ps1

5.3 Install Python packages

pip install -r requirements.txt

If you don’t have a requirements.txt (initial release), install manually:

pip install numpy scipy matplotlib pandas pyyaml

6. ngspice Path Configuration (Windows Only)

If using Windows native installation, add ngspice path:

setx PATH "$env:PATH;C:\Program Files\Spice64\bin"

Verify:

ngspice

7. Directory Overview (Quick Reference)

SemiDevKit/
 ├ bsim/                # BSIM4 analyzers (DC / CV / DIM / Reliability / Paramus)
 ├ tcad/                # TCAD playgrounds (MOSFET / PZT)
 ├ openlane/            # OpenLane-Lite RTL → GDSII flow
 ├ docs/                # Documentation files
 ├ assets/              # CSS / web assets for GitHub Pages
 ├ README.md            # Project overview
 └ ChangeLog.md         # Version history

8. Quick Test

Test ngspice

cd bsim/analyzer_dc
python run/run_vgid.py

Test Python plotting

python - <<EOF
import numpy as np
import matplotlib.pyplot as plt
plt.plot([0,1],[0,1])
plt.savefig("test.png")
print("OK")
EOF

9. Troubleshooting

ngspice not found

→ Install or add to PATH
→ On Windows, use WSL2 for best compatibility.

Permission denied when activating venv (Windows)

Run:

Set-ExecutionPolicy -Scope CurrentUser RemoteSigned

10. License Notes

SemiDevKit uses a hybrid license model:

See LICENSE.md for details.


11. Contact

📌 Item Details
Name Shinichi Samizo
GitHub GitHub