Mirror of github.com/pavona/pavona
  • SystemVerilog 45.2%
  • C 19.3%
  • Python 8.1%
  • Rust 6.4%
  • Emacs Lisp 4.2%
  • Other 16.6%
Find a file
Luis Martinez 61ebeba10c [dvsim] Allow for reseed_multiplier to be inherited from regression
This way, the user can run multiple blocks at a time each with a
separate reseed multiplier; leading to more flexibility.

Signed-off-by: Luis Martinez <luism@zerorisc.com>
2026-07-21 09:00:17 -04:00
.github [ci] Bump libtinfo5 to 6.3-2ubuntu0.2 2026-07-06 18:20:48 +08:00
bench/acc [bench] Change destination for ACC benchmarks to log subdirectory. 2026-05-21 14:52:42 -04:00
ci [ci] Update rule on check-sim-cfgs 2026-07-16 11:01:08 -04:00
doc [doc,site] Use white background as default for SVGs 2026-06-03 11:22:18 -04:00
hw Revert "[hw,prim_alert_sender,dv] Fix Ack seq copy/paste error" 2026-07-16 13:58:08 -04:00
quality [acc,mldsa] Add ACC-backed ML-DSA to the cryptolib 2026-07-07 15:28:17 +08:00
release [sw,hello_world] Split off gpio_demo from hello_world 2026-05-25 20:38:13 -04:00
rfc [rfc] Add RFC RFC 2026-04-29 18:11:34 -04:00
rules [verilator] Depend on full Verilator install for FuseSoC builds 2026-07-16 10:08:37 +08:00
signing [sw,hello_world] Split off gpio_demo from hello_world 2026-05-25 20:38:13 -04:00
sw [opentitanlib] Fix --openocd argument collision bug 2026-07-09 16:15:34 -04:00
third_party [verilator] Depend on full Verilator install for FuseSoC builds 2026-07-16 10:08:37 +08:00
toolchain [bazel] Add aarch64 host toolchain support 2026-06-24 09:35:23 +08:00
util [dvsim] Allow for reseed_multiplier to be inherited from regression 2026-07-21 09:00:17 -04:00
.bazelignore [bazel] use bazel vendor instead of bazel fetch 2025-06-12 23:13:53 +01:00
.bazelrc [bazel] Bump to 8.7.0 and share extracted external repos 2026-06-18 10:35:29 +08:00
.bazelversion [bazel] Bump to 8.7.0 and share extracted external repos 2026-06-18 10:35:29 +08:00
.clang-format [repo] Rename top level designs 2026-05-25 14:29:37 -04:00
.dockerignore [repo] Rename top level designs 2026-05-25 14:29:37 -04:00
.flake8 [otroot,cleanup] Fix typos in misc comments/docs 2025-07-03 14:39:06 +01:00
.gitattributes [bazel] Add buildifier to multi-lint 2025-03-31 09:32:28 +01:00
.gitignore [git] Add .venv/ to .gitignore 2026-03-27 14:43:38 +00:00
.mdbookignore [doc,mdbook] Fix lack of images in tooling docs 2026-05-08 08:19:36 -04:00
.style.yapf Start of public OpenTitan development history 2019-08-31 12:44:35 +01:00
.svlint.toml Add the project name to the copyright header 2024-04-02 00:58:01 +02:00
.svls.toml Add the project name to the copyright header 2024-04-02 00:58:01 +02:00
apt-requirements.txt [bazel] Add a libxml2.so.2 shim to the prebuilt LLVM toolchain 2026-07-03 19:24:16 +08:00
bazelisk.sh [setup] Add arm64 support to bazelisk.sh 2026-06-24 09:35:23 +08:00
book.toml [doc,site] Fix rendering errors 2026-05-27 16:30:50 -04:00
BUILD.bazel [doc] Update documentation 2026-05-25 19:16:13 -04:00
CLA-Corporate [cla] Add individual and corporate CLAs 2026-04-06 17:39:06 -04:00
CLA-Individual [cla] Add individual and corporate CLAs 2026-04-06 17:39:06 -04:00
compile_flags.txt [bazel] Remove dependency on lowrisc_rv32imcb_toolchain 2026-05-08 17:43:47 -04:00
CONTRIBUTING.md [CONTRIBUTING.md] Change mailing list name 2026-05-21 15:11:13 -04:00
CONTRIBUTORS [repo] Add CONTRIBUTORS file 2026-05-25 20:01:04 -04:00
LICENSE Start of public OpenTitan development history 2019-08-31 12:44:35 +01:00
MODULE.bazel [bazel] Add a libxml2.so.2 shim to the prebuilt LLVM toolchain 2026-07-03 19:24:16 +08:00
MODULE.bazel.lock [opentitanlib] Add JTAG bootstrap for integrated tops 2026-07-09 16:15:34 -04:00
mypy.ini Fix python linting 2025-06-30 14:34:39 +01:00
NOTICE [repo] Update NOTICE 2026-05-25 20:01:32 -04:00
pyproject.toml [lint] Use ruff's pre-0.15.2 ruleset 2026-03-27 14:43:42 +00:00
python-requirements.txt [python] Update pinned python-requirements.txt 2026-03-27 14:43:36 +00:00
README.md [doc,site] Use white background as default for SVGs 2026-06-03 11:22:18 -04:00
SECURITY.md [repo] Add SECURITY.md 2026-05-25 21:40:30 -04:00
SUMMARY.md [doc] Update documentation 2026-05-25 19:16:13 -04:00
yum-requirements.txt [bazel] Add a libxml2.so.2 shim to the prebuilt LLVM toolchain 2026-07-03 19:24:16 +08:00

Pavona logo

Pavona is the open-source silicon distribution for composable secure silicon.

Pavona focuses on:

  • Flexible IP reuse and ease of integration
  • Production-quality / commercial adoption readiness
  • Standards alignment and certification readiness/awareness
  • Applicability across a wide range of systems (embedded, mobile, datacenter)

Features

Pavona features tapeout-proven silicon IP RTL, rigorous DV collateral, and a comprehensive software suite. This includes:

  • Cores: Ibex (RV32IMCB), VexII (upcoming)
    • PQC Stateless Hash-Based Digital Signatures support for DSA-SHA2 and SLH-DSA-SHAKE
  • Peripherals: I2C, GPIO, SPI host/device, pattgen
  • Crypto: Asymmetric Cryptography Coprocessor (ACC), HMAC, KMAC, AES, EDN, ASCON
    • PQC includes ML-KEM {512, 768, 1024} and ML-DSA {44, 65, 87} with KMAC acceleration
  • Security infrastructure: alert-handler, CSRNG, lifecycle control, key manager, ROM integrity
  • Other blocks: OTP/flash controllers, power manager, clock manager, reset manager, AON timer, SRAM controller, JTAG, interrupt controller, RV debug, ADC controller
  • Software: embedded cryptolib, hardened ROM, ROM_EXT, host tools

This codebase is built in part from a number of open source projects, including OpenTitan technical collateral.

Getting Started

To get started, read Pavona 101. This guide shows you how to install system prerequisites, download the Pavona source code, and run "Hello World!" on a Pavona top-level design.

The easiest way to begin using Pavona is to start from one of Pavona's reference top-level designs. From there, you can customize the hardware and software, use Pavona's high-quality IP blocks, or push a top-level design through the ASIC or FPGA synthesis flows.

Contributing

Anyone can be a contributor! The project welcomes source code contributions through pull requests from the community. The project also appreciates detailed bug reports filed as GitHub issues.

Contributors can also help by reviewing pull requests and serving on technical and steering committees. Participating in the mailing lists is the best way to stay in touch with the Pavona community.

Please see the contributing page to learn more about contributing to Pavona.

Join the Pavona Project

The Pavona Project is an open-source project supported by the Pavona Project Foundation, hosted by GlobalPlatform. While membership isn't required to contribute, becoming a member helps shape the future direction of the Pavona project. Visit the Pavona Project website to learn how to become a member.

License

Unless otherwise stated, everything in this repository is covered by the Apache License, Version 2.0.