Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Ask DeepWiki zread Document buckyball CI

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

4. Verify Installation

Run Verilator simulation test to verify installation:

bbdev verilator --run '--jobs 16 --binary ctest_vecunit_matmul_ones_singlecore-baremetal --config sims.verilator.BuckyballToyVerilatorConfig --batch'

Docker Quick Experience

We support providing a Docker environment for rapid deployment of buckyball.

Notice:

  • Docker images are provided only for specific release versions.
  • Docker image may not be the latest version, source build is recommended.

We do not provide support for this version as it is not a stable release.

Buckyball as a library

We support providing a streamlined version of buckyball installation, integrated as a generator within Chipyard.

Notice:

  • buckyball-as-a-lib are maintained only for specific release versions.

We do not provide support for this version as it is not a stable release.

Quick Tutorial

You can start to learn ball and blink from here

Additional Resources

You can learn more from DeepWiki and Zread

Community

Join our discussion on Slack

Contributors

Thank you for considering contributing to buckyball!