BuckyBall
BuckyBall is a scalable framework for Domain Specific Architecture, built on RISC-V architecture and optimized for high-performance computing and machine learning accelerator design.
Project Overview
The BuckyBall framework provides a complete hardware design, simulation verification, and software development toolchain, supporting the full development process from RTL design to system-level verification. The framework adopts a modular design that supports flexible configuration and extension, suitable for various specialized computing scenarios.
Quick Start
Environment Dependencies
Before getting started, please ensure your system meets the following dependency requirements:
Required Software:
- Anaconda/Miniconda (Python environment management)
- Ninja Build System
- GTKWave (waveform viewer)
- Bash Shell environment (doesn't need to be the primary shell)
Installing Dependencies:
# Install Anaconda
# Download from: https://www.anaconda.com/download/
# Install system tools
sudo apt install ninja-build gtkwave
# Optional: FireSim passwordless configuration
# Add to /etc/sudoers: user_name ALL=(ALL) NOPASSWD:ALL
Source Build
1. Clone Repository
git clone https://github.com/DangoSys/buckyball.git
cd buckyball
2. Initialize Environment
./scripts/init.sh
Note: Initialization takes approximately 3 hours, including dependency downloads and compilation
3. Environment Activation
source buckyball/env.sh
Verify Installation
Run Verilator simulation test to verify installation:
bbdev verilator --run '--jobs 16 --binary ctest_vecunit_matmul_ones_singlecore-baremetal --batch'
Docker Quick Experience
Notice:
- Docker images are provided only for specific release versions.
- Docker image may not be the latest version, source build is recommended.
Pull Docker Image
docker pull ghcr.io/dangosys/buckyball:latest
Run Docker Container
docker run -it ghcr.io/dangosys/buckyball:latest
# Activate environment
source buckyball/env.sh
# Run Verilator simulation test
bbdev verilator --run '--jobs 16 --binary ctest_vecunit_matmul_ones_singlecore-baremetal --batch'
Additional Resources
You can learn more from DeepWiki and Zread
Community
Join our discussion on Slack
Contributors
Thank you for considering contributing to Buckyball!