How to improve the RISC-V specification

# · 🔥 161 · 💬 57 · 17 days ago · alastairreid.github.io · todsacerdoti · 📷
The most obvious part of the specification are RISC-V Instruction Set Manual, volume 1 and RISC-V Instruction Set Manual, volume 2: PDF documents that describe the unprivileged and privileged parts of the architecture. Finally, you might be using the SAIL RISC-V model as a formal specification of the architecture. The two PDF documents rely heavily on natural language text in the specification with the result that the description is not always very precise and it is impossible to test the descriptions to determine whether they match the other artifacts. Finally, there is the SAIL model written in the SAIL ISA specification language. Ideally, parts of the SAIL specification would be included in the official PDF documents so that the SAIL code can add the precision that the natural language spec lacks and the natural language specification can make up for the almost total absence of comments in the SAIL specification. The challenge with drawing on these different sources is that the primary audience for the specification is not programming language researchers but people who work on hardware design, hardware validation, OS developers, compiler developers, etc. Why do we have two executable parts to the specification: the SAIL specification and the Spike golden reference simulator? The historical reasons for this are clear but it would be good if Spike support for future extensions was generated from their SAIL specification.
How to improve the RISC-V specification



Send Feedback | WebAssembly Version (beta)