You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Generate https://riscv-software-src.github.io/riscv-unified-db/manual/index.html[configuration-specific documentation] taylored to the set of implemented extensions and unnamed implementation options (_e.g._, `./do gen:html[generic_rv64]`).
33
+
* Generate https://riscv-software-src.github.io/riscv-unified-db/manual/html/index.html[configuration-specific documentation] taylored to the set of implemented extensions and unnamed implementation options (_e.g._, `./do gen:html[generic_rv64]`).
32
34
** Only implemented extensions/instructions/CSRs are included
33
35
** Unreachable/unimplemented parts of the formal specification are pruned away
34
36
** A dedicated documentation page for every implemented instruction, including its encoding, pruned execution behavior, and what types of exceptions it may cause.
@@ -51,9 +53,14 @@ This repository contains:
51
53
52
54
== Prerequisites
53
55
54
-
The only requirement is the `Singularity CE` (>= 3.3) or `Apptainer` (>= 1.0) container system. Either one will work (they are forks).
56
+
There are two supported ways to run the RISC-V Unified Database,
57
+
both of which are container-based.
55
58
56
-
If it is not installed, either as your IT admin or:
59
+
=== Singularity/Apptainer
60
+
61
+
You can run within `Singularity CE` (>= 3.3) or `Apptainer` (>= 1.0) container system. Either one will work (they are forks).
62
+
63
+
If it is not installed, either ask your IT admin or:
57
64
58
65
* For Apptainer, see https://apptainer.org/docs/admin/main/installation.html[Apptainer Installation].
59
66
* For Singularity CE, see https://docs.sylabs.io/guides/latest/admin-guide/installation.html[Singularity CE Installation].
@@ -62,35 +69,31 @@ If it is not installed, either as your IT admin or:
62
69
You do *not* need root privileges to download or use the container. However, to modify/build the container,
63
70
you will need either root privileges or the ability to run in `fakeroot` mode. See https://docs.sylabs.io/guides/4.1/user-guide/fakeroot.html[Singularity Fakeroot Documentation] for more information.
64
71
65
-
== Setup
72
+
When you run with Singularity/Apptainer, the files under `bin/`
# or, if you also want development tools (:development group in Gemfile) installed
74
-
# DEVELOPMENT=1 ./bin/setup
75
-
----
82
+
You can also leverage https://containers.dev/[devcontainers] to run the RISC-V Unified Database.
76
83
77
-
[NOTE]
78
-
If you forget, don't worry. Setup will be invoked by any program in bin/ if necessary.
84
+
This is especially useful when using Visual Studio Code or GitHub codespaces, as it will setup up your IDE environment for you.
85
+
86
+
==== VS Code
79
87
80
-
=== VSCode
88
+
To run the devcontainer locally, you will need to have https://docs.docker.com/engine/install[Docker installed].
81
89
82
-
If using Visual Studio Code and want to use development tools, you will need to restart the editor
83
-
after setup.
90
+
With Docker installed, install the https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers[Dev Containers] extension in VS Code.
84
91
85
-
Helpful extensions are
92
+
You can then run `Dev Containers: Open Folder in Container...` from the Command Palette (Ctrl+Shift+P) and select the folder with this repository.
This certification class specifies requirements for microcontrollers.
7
+
It targets microcontrollers running low-level software on an RTOS or bare-metal.
8
+
This CRD is not intended for the smallest possible microcontrollers but rather for applications
9
+
benefiting from a standardized microcontroller.
10
+
See the https://docs.google.com/document/d/133SZKc18tLsQcT1o6gEmBUkjwrtg2ow63me54RQ1jiY[RISC-V CRDs]
11
+
document for information relevant to all RISC-V CRDs.
12
+
13
+
naming_scheme: |
14
+
The MC (M = Microcontroller, C = Certificate) has the following naming scheme (suffixes after MC
15
+
are optional but in the below order):
16
+
17
+
MC<model>[v<version>]
18
+
19
+
Where:
20
+
21
+
* Left & right square braces denote optional.
22
+
* \<model> is a 3 digit integer. It is changed only when mandatory extensions are added to a CRD.
23
+
** The one's digit is incremented when a small mandatory extension is added (e.g., Zicond)
24
+
** The ten's digit is incremented when a medium mandatory extension is addded (e.g., PMP)
25
+
** The hundreds's digit is incremented when a large mandatory extension is addded (e.g., V or H)
26
+
* \<version> is a semantic version (see semver.org) formatted as <major>[.<minor>.[patch]]. If \<version> is omitted, the reference applies equally to all versions.
27
+
** A <major> release indicates support for a new optional extension.
28
+
** A <minor> release indicates one or more of the following changes to the certification tests associated with the CRD.
29
+
*** Fix test bug or increase test coverage
30
+
*** Add more allowed parameter values
31
+
*** Support new extension version
32
+
** A <patch> release indicates just CRD specification changes without any difference in functional behavior
0 commit comments