CORE-V Cores Naming Conventions
© OpenHW Group
1
October 2021
Davide Schiavone | davideⓐopenhwgroup.org |
CORE-V Part Numbers (P/Ns)
© OpenHW Group
2
October 2021
Current CORE-V Cores P/N Syntax
© OpenHW Group
3
October 2021
CV32E40P
FAMILY
CORE-V
WL
word-length
CLASS
Embedded, Application
IDENTITY
pipe length, specific feature
MODIFIER
special cases
Proposed CORE-V Cores P/N Syntax
© OpenHW Group
4
October 2021
CV32E40P
[ Identity ]
CORE-V Cores P/N Semantics
© OpenHW Group
5
October 2021
Family | Word Length | Class | Pipeline length | Identity�-Specific Feature- | Identity�-Modifier- |
CORE-V (CV) | 32, 64 | Embedded Application Server | Pipeline Length usually defines the most important computer architecture feature | Same pipeline length core can have different ISA, order of execution, other microarchitectural changes (fast divider, interrupts, debug, etc) | Extra identifier to make the core unique and easily identifiable within the same family (as the first name for humans) |
CORE-V Cores Repository Name
Once the Semantic of the CORE-V IP is defined, there is a unique RTL repository hosted in Github named according to the P/N
© OpenHW Group
6
November 2021
CORE-V Project Name
Each CORE-V Project can target one or more CORE-V IPs.
The output of the Project related to a specific CORE-V IP produces at PF time a unique identifier called:
P/N_vMAJOR.MINOR.PATCH
e.g. Project CV32E40P_v1.0.0 achieved on Dec 2020
e.g. Project CV32E40P_v2.0.0 will be achieved on Dec 2022
e.g. Project CV32E41P_v1.0.0 will be achieved on Dec 2021
© OpenHW Group
7
November 2021
CORE-V IP Maintenance
Everytime a project achieves PF, a Github tag with the Project name must be created to identify the project outcome
Unless bugs are found or a following project aims to complete a previous project, subsequent changes in the RTL must be Logical Equivalent to the core
If bugs are found, a new project to address the bug must be defined
Project names must also be reported in the RTL in the RISC-V mimpid register
© OpenHW Group
8
November 2021
CORE-V IP Identification
Software refers to a specific CORE-V IP my using the following 3 registers
marchid are maintained here: https://github.com/riscv/riscv-isa-manual/blob/master/marchid.md
mvendorid are asked to RISC-V/JeDEC
© OpenHW Group
9
November 2021
mvendorid | Identifies OpenhW Group |
marchid | Identifies the P/N |
mimpid | Identifies the Project |
Examples
Creation of the CV32E40P IP
Project v1 to verify the RV32IMC ISA subset
Project v2 to verify the RV32FXPULP ISA subset
Project v2 maintained to solve a bug in found in the float divider when debug and interrupts arrive together
© OpenHW Group
10
November 2021
Examples
Creation of the CV32E41P IP
Project v1 to verify the RV32ZfinxZce ISA subset
Creation of the CV32E41 IP
© OpenHW Group
11
November 2021
and
© OpenHW Group
12
October 2021