luna-soc

Amaranth HDL libary for building SoCs with LUNA USB peripherals.


License
BSD-3-Clause
Install
pip install luna-soc==0.2.0

Documentation

LUNA-SOC: Amaranth HDL library for building USB-capable SoC designs

LUNA-SOC Library

LUNA-SOC is a toolkit for building custom SoC (System on Chip) designs incorporating LUNA USB peripherals.

Some things you can use LUNA-SOC for, currently:

  • Implement SoC designs using a Minerva or VexRiscv RISC-V CPU.
  • Add a variety of Wishbone and CSR peripherals to your SoC design such as: SRAM, GPIO, UART and USB.
  • Implement firmware for your designs using Rust or C.

NOTE There are no official packages for Minerva at the time of writing but you can install it directly from the repository using:

pip install git+https://github.com/minerva-cpu/minerva

Project Structure

This project is broken down into several directories:

  • luna_soc/ -- the primary LUNA-SOC library; generates gateware and provides peripherals.
  • examples/ -- some simple LUNA-SOC examples demonstrating gateware design and firmware implementation.
  • docs/ -- sources for the LUNA-SOC Sphinx documentation.

Project Documentation

LUNA-SOC's documentation is captured on Read the Docs. Raw documentation sources are in the docs folder.