Repository navigation
History
XCrypto is a non-standard RISC-V extension. Over time, it has evolved along various branches (each identified by an associated major version):
-
The (now abandoned)
0.x.ybranch represents an initial prototype. It can be characterised as deliberately disjoint from the RISC-V base ISA(s), and so, in concept, aligned with implementation as a separate co-processor. -
The (active)
1.x.ybranch represents a refinement of0.x.y. It can be characterised as taking the functionality from0.x.y, but integrating inline with vs. alongside the RISC-V base ISA(s), i.e., in the form of a conventional ISA vs. a co-processor.
The long-term goal is to develop the 1.x.y branch, ultimately
using it as a basis for a standard (i.e., "official") RISC-V
extension proposal.
-
Originally this was a monorepo that housed all resources in one place.
-
For the
0.15.0release, it was re-rorganised to act as a container where each resource is housed in dedicated submodule. Specifically,- the tool-chain was maintained as a fork of the official RISC-V
repositories, e.g., with
scarv/riscv-toolsforked fromriscv/riscv-tools, -
scarv/xcrypto-speccaptured the XCrypto specification, -
scarv/xcrypto-rtlcaptured a library of re-usable hardware components (e.g., for arithmetic operations), which could be used in an implementation of XCrypto, -
scarv/xcrypto-refcaptured a formally verified, area-optimised reference implementation of XCrypto that (e.g., acting as a co-processor) can be coupled to existing RISC-V cores.
- the tool-chain was maintained as a fork of the official RISC-V
repositories, e.g., with
-
For the
1.0.0release, it was re-organised back into a monorepo. Specifically,- the tool-chain moved to a patched-based approach
(in line with, e.g., XBitmanip atcliffordwolf/xbitmanip) meaning, e.g.,scarv/riscv-toolswas archived, -
scarv/xcrypto-specandscarv/xcrypto-rtlwere merged back into the container repository then archived, and -
scarv/xcrypto-refwas archived: the reference integration was replaced withscarv/scarv-cpuandscarv/scarv-soc, a dedicated RISC-V core with support for XCrypto.
- the tool-chain moved to a patched-based approach