maksyuki 57c9d334ea feat: refactor MPW preparation and add regression and flow scripts
- Updated  to utilize a new dependency locking mechanism and improved repository management.
- Introduced  for running regression tests with configurable command sets for different profiles.
- Added  to execute commands with structured logging and result reporting.
- Enhanced  to support fetching specific revisions from git repositories.
- Modified  to use the new dependency source structure.
- Updated OpenSTA makefile and TCL script to include metrics reporting.
- Improved synthesis scripts to utilize the new flow execution model.
- Added tests for dependency locking, flow execution, and warning analysis.
- Ensured that all scripts and tools are consistent with the new structure and functionality.
2026-07-10 17:48:11 +08:00
2025-04-19 13:34:25 +08:00
2026-03-07 15:03:21 +08:00

retroSoC

quality regression nightly

Build Automation

The build uses committed configuration profiles and a single dependency lock. Start with the verified HAZARD3 profile:

python3 -m pip install --requirement requirements/build.txt
make CONFIG=configs/ci/hazard3-rv32im-ihp130.mk setup
make CONFIG=configs/ci/hazard3-rv32im-ihp130.mk SIMU=IVERILOG doctor
make CONFIG=configs/ci/hazard3-rv32im-ihp130.mk firmware
make CONFIG=configs/ci/hazard3-rv32im-ihp130.mk SIMU=IVERILOG RTL_SIM_TIMEOUT=5200000 sim-asm

Other open-source flows use the same profile:

make CONFIG=configs/ci/hazard3-rv32im-ihp130.mk SIMU=VERILATOR sim
make CONFIG=configs/ci/hazard3-rv32im-ihp130.mk SYNTH=YOSYS synth
make CONFIG=configs/ci/hazard3-rv32im-ihp130.mk STA=OPENSTA sta

make help lists targets, while make config prints the effective configuration and its variant identifier. Outputs live below build/<profile>-<config-hash>/; firmware, simulator, synthesis, STA, reports, and manifests are isolated inside that directory. make clean removes the selected backend, make clean-all removes all build outputs, and make purge-cache explicitly removes download and compiler caches.

Dependency sources and binary tool archives are pinned in config/dependencies.lock.json. Downloads are checksum verified, and every flow writes a machine-readable manifest and result records. See docs/engineering.md for CI coverage, warning baselines, metrics promotion, release packaging, and cluster-only flows.

S
Description
A Customized ASIC framework for Retro Stuff!
Readme MulanPSL-2.0
13 MiB
0 Stars 1 Watchers 0 Forks
Languages
SystemVerilog 55.6%
Python 25.1%
C 11.4%
Typst 2.8%
Makefile 1.8%
Other 3.2%