Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.
Latest commit message
Commit time

Where Lions Roam: RISC-V on the VELDT

Haskell CI Hackage Hackage Dependencies

Lion is a formally verified, 5-stage pipeline RISC-V core. Lion targets the VELDT FPGA development board and is written in Haskell using Clash.

This repository contains four parts:

  1. The Lion library: a pipelined RISC-V core.
  2. lion-formal: formally verify the core using riscv-formal.
  3. lion-soc: a System-on-Chip demonstrating usage of the Lion core on the VELDT.
  4. lion-metric: Observe Yosys synthesis metrics on the Lion Core.

Lion library


  1. Add lion to build depends section of Cabal file
  2. import module in source files import Lion.Core

When connecting the core to memory and peripherals, ensure single cycle latency.

Clone the repository

  1. git clone
  2. cd lion
  3. git submodule update --init


Current Support

  • Architecture: RV32I (no FENCE, ECALL, EBREAK)
  • Configurable ALU adder and subtractor: use a generic (+) and (-) or SB_MAC16 hard IP

Future Support

All features will be added in a configurable manner extending the base RV32I configuration noted above

  • Zicsr, Control and Status Register (CSR) Instructions
  • CSR registers
  • RV32IM

Check out the Lion Development project to see which features are in progress.

References and Additional Resources