diff options
author | Bill Traynor <wmat@riscv.org> | 2022-12-30 16:05:43 -0500 |
---|---|---|
committer | Bill Traynor <wmat@riscv.org> | 2022-12-30 16:05:43 -0500 |
commit | 114c0d78c256848f2cc349ff3e51ee802702065a (patch) | |
tree | f6f4e0b03734099882c617e006bc4cb928f4c8e6 | |
parent | a0ef1cf581d308388560c0326eb001cd920831aa (diff) | |
download | riscv-isa-manual-114c0d78c256848f2cc349ff3e51ee802702065a.zip riscv-isa-manual-114c0d78c256848f2cc349ff3e51ee802702065a.tar.gz riscv-isa-manual-114c0d78c256848f2cc349ff3e51ee802702065a.tar.bz2 |
Trying to separate figure label from admonition.
Trying to separate figure label from admonition.
-rw-r--r-- | src/rv32.adoc | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/rv32.adoc b/src/rv32.adoc index 7acb4f5..64bdb4f 100644 --- a/src/rv32.adoc +++ b/src/rv32.adoc @@ -177,24 +177,24 @@ bit 31 of the instruction to speed sign-extension circuitry. include::images/wavedrom/instruction_formats.adoc[] [[base_instr]] .RISC-V base instruction formats. Each immediate subfield is labeled with the bit position (imm[x]) in the immediate value being produced, rather than the bit position within the instruction's immediate field as is usually done. - + [NOTE] ==== -_Decoding register specifiers is usually on the critical paths in +Decoding register specifiers is usually on the critical paths in implementations, and so the instruction format was chosen to keep all register specifiers at the same position in all formats at the expense of having to move immediate bits across formats (a property shared with -RISC-IV aka. SPUR cite:[spur-jsscc1989])._ +RISC-IV aka. SPUR cite:[spur-jsscc1989]). -_In practice, most immediates are either small or require all XLEN bits. +In practice, most immediates are either small or require all XLEN bits. We chose an asymmetric immediate split (12 bits in regular instructions plus a special load-upper-immediate instruction with 20 bits) to -increase the opcode space available for regular instructions._ +increase the opcode space available for regular instructions. -_Immediates are sign-extended because we did not observe a benefit to +Immediates are sign-extended because we did not observe a benefit to using zero-extension for some immediates as in the MIPS ISA and wanted -to keep the ISA as simple as possible._ +to keep the ISA as simple as possible. ==== === Immediate Encoding Variants |