/osci-sky130

osci-sky130

Primary LanguageC++

Osci130

A meta-repo collection of all the stuff in the Skywater 130nm edition of the OsciBear SoC.

Consists of three main components:

A handful of related other files are tracked in this repository's other directory.

Chip Overview

This chip consists of a CPU and an ADC. The ADC writes data to an 8-bit memory-mapped register, which the CPU reads from.

Block Diagram

Chip Block Diagram

Digital Overview

The digital portion of the chip consists of the following:

  • RV32IMAFC core

    • 32-bit, integer, multiply/divide, atomic, floating point, compressed ISA
  • 4Kb Instruction cache backed by 16Kb of data memory

  • AES accelerator

  • Standard peripherals:

    • UART
    • 4 GPIO pins
    • QSPI Flash
    • BootROM
    • CLINT/PLIC (Core-level and Platform-level interupt controllers)
  • Debugging capabilities:

    • UART
    • JTAG
    • TSI (Tethered Serial Interface)
  • Boot options

    1. TSI/JTAG
    2. QSPI Flash

VLSI Flow

The digital portion of the chip used Chipyard to generate the RTL of the design, then the Hammer VLSI flow to take the design from RTL to GDSII. The tools used by the flow were Cadence Genus for synthesis, Cadence Innovus for place and route, and Mentor Calibre for DRC/LVS checks.

Hammer VLSI Flow

Chip Layout

Chip Layout

Digital Layout

Chip Layout