processor.risc_v.internal.decoder ≡
Internal implementation of RISC-V decoder.
enum Option : uint3 §source
Values
-
HartsShareDMEM = 2 §source
Data memory is implemented as internally instantiated tightly coupled memory, with size in bytes specified by
DMEM_LENGTHtemplate argument. By default each hart has its separate block of data memory with address space spanning[DMEM_ORIGIN, DMEM_LENGTH). In multi-hart configuration when harts have their own DMEM block theDMEM_LENGTHmust be a power of 2. TheOption::HartsShareDMEMflags can be specified inCONFIGtemplate argument to enable shared data memory, e.g. to allow programs running on different harts to communicate via memory. With shared DMEM theDMEM_LENGTHdoes not need to be a power of 2. -
NoExceptionForCompressedEncoding = 4 §source
Disables checking of lower two bits of instruction word which are used for compressed instruction encoding. This allows saving FPGA block RAM by synthesizing out these bits.
enum ControlOp : uint1 §source
enum Condition : uint2 §source
struct ControlInstr §source
enum ComputeOp : uint3 §source
enum LogicalOp : uint2 §source
struct BaseInstr §source
enum MulIn : uint1 §source
enum MulOut : uint1 §source
struct MulInstr §source
union ComputeInstr §source
enum MemoryOp : uint1 §source
enum MemorySize : uint2 §source
struct MemoryInstr §source
enum SystemOp : uint3 §source
struct SystemInstr §source
enum InstrKind : uint2 §source
struct Decoded §source
Fields
template <auto EXTENSIONS, auto CONFIG> inline Decoded decode_instr(Instr instr, (RVG) -> Format custom_decode) §source