diff options
author | Prashanth Mundkur <prashanth.mundkur@gmail.com> | 2019-01-25 11:09:57 -0800 |
---|---|---|
committer | Prashanth Mundkur <prashanth.mundkur@gmail.com> | 2019-01-25 11:15:15 -0800 |
commit | 6aae2163fb13fc3f3ccd85c2304f20a4d1165b44 (patch) | |
tree | dc1af80f40aee65a5395937ed6c6da0f6b2df101 /doc | |
parent | bfcabc089618fe6bfbd1a5dcc64626531abd2ba2 (diff) | |
download | sail-riscv-6aae2163fb13fc3f3ccd85c2304f20a4d1165b44.zip sail-riscv-6aae2163fb13fc3f3ccd85c2304f20a4d1165b44.tar.gz sail-riscv-6aae2163fb13fc3f3ccd85c2304f20a4d1165b44.tar.bz2 |
Factor out each extension into separate files, do some minor cleanup.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/ReadingGuide.md | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/doc/ReadingGuide.md b/doc/ReadingGuide.md index 1e851de..5e18ff3 100644 --- a/doc/ReadingGuide.md +++ b/doc/ReadingGuide.md @@ -53,12 +53,14 @@ The model contains the following Sail modules in the `model` directory: and their various permission and status bits, the specification of page-table walks, and the selection of the address translation mode. -- `riscv.sail` captures the instruction definitions and their assembly - language formats. Each instruction is represented as a variant - clause of the `ast` type, and its execution semantics are - represented as a clause of the `execute` function. `mapping` clauses - specify the encoding and decoding of each instruction to and from - assembly language formats. +- Files matching `riscv_insts_*.sail` capture the instruction + definitions and their assembly language formats. Each file contains + the instructions for an extension, with `riscv_insts_base.sail` containing + the base integer instruction set. Each instruction is represented + as a variant clause of the `ast` type, and its execution semantics + are represented as a clause of the `execute` function. `mapping` + clauses specify the encoding and decoding of each instruction to and + from assembly language formats. - `riscv_step.sail` implements the top-level fetch and execute loop. The `fetch` is done in 16-bit granules to handle RVC instructions. |