Skip to content

Namespace rv64

Namespace List > rv64

Namespaces

Type Name
namespace Compressed
namespace Opcode
namespace csr

Classes

Type Name
class Core
struct Instruction
struct PendingInterrupts
class RegFile
struct SimulationTrap
struct csr_64
struct csr_fcsr
struct csr_mcause
struct csr_mcounteren
struct csr_mcountinhibit
struct csr_mepc
struct csr_mie
struct csr_mip
struct csr_misa
struct csr_mstatus
struct csr_mtvec
struct csr_mvendorid
struct csr_pmpaddr
struct csr_pmpcfg
struct csr_satp
struct csr_table

Public Types

Type Name
enum @42
enum CoreExecStatus
enum ExceptionCode
typedef uint32_t PrivilegeLevel
enum SATPMode

Public Attributes

Type Name
constexpr unsigned FS_CLEAN = 0b10
constexpr unsigned FS_DIRTY = 0b11
constexpr unsigned FS_INITIAL = 0b01
constexpr unsigned FS_OFF = 0b00

Public Functions

Type Name
void raise_trap (ExceptionCode exc, uint64_t mtval)

Public Types Documentation

enum @42

enum rv64::@42 {
    MachineMode = 0b11,
    HypervisorMode = 0b10,
    SupervisorMode = 0b01,
    UserMode = 0b00,
    NoneMode = 0xffffffff
};

enum CoreExecStatus

enum rv64::CoreExecStatus {
    Runnable,
    HitBreakpoint,
    Terminated
};

enum ExceptionCode

enum rv64::ExceptionCode {
    EXC_U_SOFTWARE_INTERRUPT = 0,
    EXC_S_SOFTWARE_INTERRUPT = 1,
    EXC_M_SOFTWARE_INTERRUPT = 3,
    EXC_U_TIMER_INTERRUPT = 4,
    EXC_S_TIMER_INTERRUPT = 5,
    EXC_M_TIMER_INTERRUPT = 7,
    EXC_U_EXTERNAL_INTERRUPT = 8,
    EXC_S_EXTERNAL_INTERRUPT = 9,
    EXC_M_EXTERNAL_INTERRUPT = 11,
    EXC_INSTR_ADDR_MISALIGNED = 0,
    EXC_INSTR_ACCESS_FAULT = 1,
    EXC_ILLEGAL_INSTR = 2,
    EXC_BREAKPOINT = 3,
    EXC_LOAD_ADDR_MISALIGNED = 4,
    EXC_LOAD_ACCESS_FAULT = 5,
    EXC_STORE_AMO_ADDR_MISALIGNED = 6,
    EXC_STORE_AMO_ACCESS_FAULT = 7,
    EXC_ECALL_U_MODE = 8,
    EXC_ECALL_S_MODE = 9,
    EXC_ECALL_M_MODE = 11,
    EXC_INSTR_PAGE_FAULT = 12,
    EXC_LOAD_PAGE_FAULT = 13,
    EXC_STORE_AMO_PAGE_FAULT = 15
};

typedef PrivilegeLevel

typedef uint32_t rv64::PrivilegeLevel;

enum SATPMode

enum rv64::SATPMode {
    SATP_MODE_BARE = 0,
    SATP_MODE_SV32 = 1,
    SATP_MODE_SV39 = 8,
    SATP_MODE_SV48 = 9,
    SATP_MODE_SV57 = 10,
    SATP_MODE_SV64 = 11
};

Public Attributes Documentation

variable FS_CLEAN

constexpr unsigned rv64::FS_CLEAN;

variable FS_DIRTY

constexpr unsigned rv64::FS_DIRTY;

variable FS_INITIAL

constexpr unsigned rv64::FS_INITIAL;

variable FS_OFF

constexpr unsigned rv64::FS_OFF;

Public Functions Documentation

function raise_trap

inline void rv64::raise_trap (
    ExceptionCode exc,
    uint64_t mtval
) 


The documentation for this class was generated from the following file projects/casvp/src/bindings/cp/rv64/csr.h