Skip to content

Repository files navigation

ARCHINFO

ARCHINFO is a read-only APB4 identification and capability block for SoC software, manufacturing diagnostics, and release traceability. ABI V2 replaces the former writable SYS, IDL, and IDH test registers with an immutable, parameterized register map and strict APB error responses.

Key properties:

  • constant component, vendor, SoC, revision, build, topology, feature, and technology information;
  • deterministic build and configuration identifiers generated by the integration build;
  • a 128-bit device identity port protected by explicit valid and read_enable controls;
  • zero data plus PSLVERR for writes, unaligned accesses, unmapped offsets, and denied device identity reads;
  • a portable freestanding C driver and independent host tests;
  • Icarus, Verilator, Yosys, and SBY/Bitwuzla verification flows.

The register ABI is manually encoded in rtl/archinfo_define.svh and sw/include/archinfo_regs.h. Run make register-check whenever either definition changes.

Quick Start

The IP consumes apb4_if and xchecker from the sibling Common repository.

make doctor
make format-check register-check lint
make test synth formal

See doc/datasheet.md for the programming model, doc/integration.md for SoC integration, and doc/verification.md for the verification contract.

About

An APB4-based SoC Architecture Info

Resources

Code of conduct

Contributing

Stars

1 star

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages