NOEL-V

The NOEL-V models the NOEL-V RISC-V processor core of the same name. This includes the following instruction set extensions:

  • RV64I: 64-bit base instruction set

  • RV32I: 32-bit base instruction set

  • M: Multiply and Divide

  • A: Atomics

  • FD: Single/Double precision floating point

  • B: Bit-manipulation

  • C: Compressed Instructions

  • H: Hypervisor

  • Zicntr: Counters

  • Zicsr: Control and status register

  • Zifencei: Instruction-fetch fence

The model is validated against the RISC-V conformance test suite.

@NOELV Reference

Properties

Name Type Description

Class

*void

Class object

Component

*void

Pointer to component object if part of component

LocalName

*char

Local name (in component, if applicable)

LogMessageFlags

uint64_t

Per-object log message suppression flags

LoggingFlags

uint64_t

Flags for logging info

Name

*char

Object name

ObjectID

uint64_t

Unique ObjectID.

ReplayLoggingFlags

uint64_t

Replay-time category logging flags

TimeSource

*void

Time source object

Commands

Name Description

delete

Dispose instance of @NOELV

new

Create new instance of NOELV

Command new Arguments

Name Type Required Description

hartid

int

no

Hart ID (mhartid) in multiprocessor config

name

string

yes

Name of object to create

NOELV Reference

Properties

Name Type Description

CPUId

uint32_t

CPUType

int32_t

Class

*void

Class object

Component

*void

Pointer to component object if part of component

HostFlags

uint64_t

LocalName

*char

Local name (in component, if applicable)

LogMessageFlags

uint64_t

Per-object log message suppression flags

LoggingFlags

uint64_t

Flags for logging info

Name

*char

Object name

ObjectID

uint64_t

Unique ObjectID.

ReplayLoggingFlags

uint64_t

Replay-time category logging flags

TimeSource

*void

Time source object

aclintCsrClient

temu_IfaceRef/ <unknown>

Aclint Csr interface

aiaCsrClient

temu_IfaceRef/ <unknown>

Interrupt controller Csr interface

config.MMULogging

uint8_t

Enable MMU-related logging

config.PMPLogging

uint8_t

Enable PMP-related logging

config.assemblerAliases

uint8_t

config.exitOnSync

uint8_t

config.handleEventWithinBlock

uint8_t

config.logTrampolines

uint8_t

config.measureExecTime

uint8_t

config.numPMPEntries

uint8_t

Number of PMP entries (0, 16 or 64).

cpi

double

Cycles per instruction

currentContextId

uint64_t

currentContextValid

uint8_t

currentThreadContextId

uint64_t

currentThreadContextValid

uint8_t

exitReason

int32_t

fcsr

uint32_t

freq

int64_t

Frequency in Hz

gprs

[uint64_t; 32]

hcounteren

uint32_t

hedeleg

uint64_t

henvcfg

uint64_t

hgatp

uint64_t

hgeie

uint64_t

hgeip

uint64_t

hideleg

uint64_t

hie

uint64_t

hip

uint64_t

hstatus

uint64_t

htinst

uint64_t

htval

uint64_t

hvip

uint64_t

idleSteps

int64_t

ipc

double

Instructions per cycle

irqClient

temu_IfaceRef/ <unknown>

Interrupt controller (for ACKs)

marchid

uint64_t

mcause

uint64_t

mconfigptr

uint64_t

mcounteren

uint32_t

mcountinhibit

uint32_t

mcycle

uint64_t

medeleg

uint64_t

memAccess

temu_IfaceRef/ <unknown>

Level 1 memory access interface (MMU)

memAccessL2

temu_IfaceRef/ <unknown>

Level 2 memory access interface (physical)

memReset

temu_IfaceRef/ <unknown>

Memory space reset interface

memSpace

*void

Memory space.

menvcfg

uint64_t

mepc

uint64_t

mhartid

uint64_t

mhpmcounter

[uint64_t; 29]

mhpmevent

[uint64_t; 29]

mideleg

uint64_t

mie

uint64_t

mimpid

uint64_t

minstret

uint64_t

mip

uint64_t

misa

uint64_t

miselect

uint64_t

mncause

uint64_t

mnepc

uint64_t

mnscratch

uint64_t

mnstatus

uint64_t

mscratch

uint64_t

mstatus

uint64_t

mtinst

uint64_t

mtval

uint64_t

mtval2

uint64_t

mtvec

uint64_t

mvendorid

uint32_t

nextEvent

int64_t

Next event

parentTimeSource

*void

Parent time source

pc

uint64_t

Program counter register (pc)

pdcManager

temu_IfaceRef/ <unknown>

Pre-decode cache manager (normally memory space)

pmpaddr

[uint64_t; 64]

PMP Address CSRs

pmpcfg

[uint64_t; 16]

PMP Config Entry CSRs

powerState

uint32_t

Power State property (deprecated)

privilege

uint8_t

RISC-V Mode: 0=U, 1=S, 3=M

reservationSet

[uint64_t; 3]

satp

uint64_t

scause

uint64_t

scounteren

uint32_t

senvcfg

uint64_t

sepc

uint64_t

siselect

uint64_t

skipIdleTags

uint64_t

sscratch

uint64_t

startSteps

int64_t

Start steps of the time source

state

int32_t

steps

int64_t

Steps of the time source

stickyFlags

uint32_t

Set bit 0 to 1 to not exit CPU on halted mode.

stval

uint64_t

stvec

uint64_t

targetExec

temu_IfaceRef/ <unknown>

Target execution interface

targetSteps

int64_t

Target steps of the time source

virtualization

uint8_t

RISC-V Mode: 0=U, 1=S, 3=M

vsatp

uint64_t

vscause

uint64_t

vsepc

uint64_t

vsie

uint64_t

vsip

uint64_t

vsscratch

uint64_t

vsstatus

uint64_t

vstval

uint64_t

vstvec

uint64_t

Interfaces

Name Type Description

AhbIface

AhbIface

AssemblerIface

temu::AssemblerIface

Assembler interface

BinaryTranslationIface

temu::BinaryTranslationControlIface

ClockIface

ClockIface

CodePatternIface

temu::CodePatternIface

CpuIface

temu::CpuIface

ExecIface

temu::TargetExecutionIface

InvalidMemAccessIface

MemAccessIface

IrqIface

IrqCtrlIface

PhysicalMemAccessIface

MemAccessIface

PowerIface

PowerIface

RegisterIface

temu::RegisterIface

Auto-generated Register Interface Impl.

ResetIface

ResetIface

VirtualMemAccessIface

MemAccessIface

Ports

Prop Iface Description

irqClient

IrqIface

interrupt controller interface

Registers

Register support is currently experimental!

Register Bank csrs

Register fflags
Description
Reset value

0x00000000

Warm reset mask

0x0000001f

Diagram
Field Mask Reset Description

NV

0x00000010

0x0

Invalid Operation

DZ

0x00000008

0x0

Divide by zero

OF

0x00000004

0x0

Overflow

UF

0x00000002

0x0

Underflow

NX

0x00000001

0x0

Inexact

Register frm
Description
Reset value

0x00000000

Warm reset mask

0x00000007

Diagram
Field Mask Reset Description

Rounding_Mode

0x00000007

0x0

Register fcsr
Description
Reset value

0x00000000

Warm reset mask

0x000000ff

Diagram
Field Mask Reset Description

Rounding_Mode

0x000000e0

0x0

NV

0x00000010

0x0

Invalid Operation

DZ

0x00000008

0x0

Divide by zero

OF

0x00000004

0x0

Overflow

UF

0x00000002

0x0

Underflow

NX

0x00000001

0x0

Inexact

Register sstatus
Description
Reset value

0x0000000200000000

Warm reset mask

0x80000003018de762

Diagram
Field Mask Reset Description

SD

0x8000000000000000

0x0

State Dirty

UXL

0x0000000300000000

0x2

U-mode xlen

SDT

0x0000000001000000

0x0

S-mode disable trap

SPELP

0x0000000000800000

0x0

S-Mode previous expected landing pad

MXR

0x0000000000080000

0x0

Make executable readable

SUM

0x0000000000040000

0x0

Permit supervisor user memory access

XS

0x0000000000018000

0x0

User-Mode extension state

FS

0x0000000000006000

0x0

Floating point state

VS

0x0000000000000600

0x0

Vector extension state

SPP

0x0000000000000100

0x0

S-Mode previous privilege

UBE

0x0000000000000040

0x0

U-Mode big endian

SPIE

0x0000000000000020

0x0

S-Mode previous interrupt enable

SIE

0x0000000000000002

0x0

S-Mode interrupt enable

Register sie
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

Interrupts

0x0000000000000000

-

enabled interrupts

Register stvec
Description
Reset value

0x0000000000000000

Warm reset mask

0xffffffffffffffff

Diagram
Field Mask Reset Description

BASE

0xfffffffffffffffc

0x0

Vector base address

MODE

0x0000000000000003

0x0

Vector mode

Register scounteren
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register senvcfg
Description
Reset value

0x0000000000000000

Warm reset mask

0x00000003000000fd

Diagram
Field Mask Reset Description

PMM

0x0000000300000000

0x0

Smnpm pointer masking enabled

CBZE

0x0000000000000080

0x0

Zicboz Cache Block Zero instruction enable

CBCFE

0x0000000000000040

0x0

Zicbom Cache Block Clean and Flush instruction Enable

CBIE

0x0000000000000030

0x0

Zicbom Cache Block Invalidate instruction Enable

SSE

0x0000000000000008

0x0

Zicfiss enabled in U-Mode

LPE

0x0000000000000004

0x0

Zicfilp enabled in U-Mode

FIOM

0x0000000000000001

0x0

Fence of I/O implies Memory

Register sscratch
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

sscratch

0x0000000000000000

-

Scratch value

Register sepc
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

sepc

0x0000000000000000

-

sepc

Register scause
Description
Reset value

0x0000000000000000

Warm reset mask

0xffffffffffffffff

Diagram
Field Mask Reset Description

Interrupt

0x8000000000000000

0x0

Trap was interrupt

Code

0x7fffffffffffffff

0x0

Exception code

Register stval
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

stval

0x0000000000000000

-

trap information

Register sip
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

Interrupts

0x0000000000000000

-

pending interrupts

Register siselect
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register sireg
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register stopei
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000007ff07ff

Diagram
Field Mask Reset Description

identity

0x0000000007ff0000

0x0

Interrupt identity

priority

0x00000000000007ff

0x0

Interrupt priority (same as identity)

Register satp
Description
Reset value

0x0000000000000000

Warm reset mask

0xffffffffffffffff

Diagram
Field Mask Reset Description

MODE

0xf000000000000000

0x0

Translation mode

ASID

0x0ffff00000000000

0x0

Address space identifier

PPN

0x00000fffffffffff

0x0

physical page number

Register vsstatus
Description
Reset value

0x0000000200000000

Warm reset mask

0x80000003018de762

Diagram
Field Mask Reset Description

SD

0x8000000000000000

0x0

State Dirty

UXL

0x0000000300000000

0x2

VU-mode xlen

SDT

0x0000000001000000

0x0

VS-mode disable trap

SPELP

0x0000000000800000

0x0

VS-Mode previous expected landing pad

MXR

0x0000000000080000

0x0

Make executable readable

SUM

0x0000000000040000

0x0

Permit supervisor user memory access

XS

0x0000000000018000

0x0

VU-Mode extension state

FS

0x0000000000006000

0x0

Floating point state

VS

0x0000000000000600

0x0

Vector extension state

SPP

0x0000000000000100

0x0

VS-Mode previous privilege

UBE

0x0000000000000040

0x0

VU-Mode big endian

SPIE

0x0000000000000020

0x0

VS-Mode previous interrupt enable

SIE

0x0000000000000002

0x0

VS-Mode interrupt enable

Register vsie
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000002444

Diagram
Field Mask Reset Description

LCOFIE

0x0000000000002000

0x0

Local counter-overflow interrupt enabled

SEIE

0x0000000000000400

0x0

External interrupt enabled

STIE

0x0000000000000040

0x0

Timer interrupt enabled

SSIE

0x0000000000000004

0x0

Software interrupt enabled

Register vstvec
Description
Reset value

0x0000000000000000

Warm reset mask

0xffffffffffffffff

Diagram
Field Mask Reset Description

BASE

0xfffffffffffffffc

0x0

Vector base address

MODE

0x0000000000000003

0x0

Vector mode

Register vsscratch
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

vsscratch

0x0000000000000000

-

VS-Mode sscratch

Register vsepc
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

vsepc

0x0000000000000000

-

VS-Mode sepc

Register vscause
Description
Reset value

0x0000000000000000

Warm reset mask

0xffffffffffffffff

Diagram
Field Mask Reset Description

Interrupt

0x8000000000000000

0x0

Trap was interrupt

Code

0x7fffffffffffffff

0x0

Exception code

Register vstval
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

vstval

0x0000000000000000

-

trap information

Register vsip
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000002444

Diagram
Field Mask Reset Description

LCOFIP

0x0000000000002000

0x0

Local counter-overflow interrupt pending

SEIP

0x0000000000000400

0x0

External interrupt pending

STIP

0x0000000000000040

0x0

Timer interrupt pending

SSIP

0x0000000000000004

0x0

Software interrupt pending

Register vsatp
Description
Reset value

0x0000000000000000

Warm reset mask

0xffffffffffffffff

Diagram
Field Mask Reset Description

MODE

0xf000000000000000

0x0

Translation mode

ASID

0x0ffff00000000000

0x0

Address space identifier

PPN

0x00000fffffffffff

0x0

physical page number

Register mstatus
Description
Reset value

0x0000040a00000000

Warm reset mask

0x800006ff01ffffea

Diagram
Field Mask Reset Description

SD

0x8000000000000000

0x0

State Dirty

MDT

0x0000040000000000

0x1

M-mode disable trap

MPELP

0x0000020000000000

0x0

M-Mode previous expected landing pad

MPV

0x0000008000000000

0x0

Machine previous virtualization mode

GVA

0x0000004000000000

0x0

Guest virtual address

MBE

0x0000002000000000

0x0

M-Mode big endian

SBE

0x0000001000000000

0x0

S-Mode big endian

SXL

0x0000000c00000000

0x2

S-mode xlen

UXL

0x0000000300000000

0x2

U-mode xlen

SDT

0x0000000001000000

0x0

S-mode disable trap

SPELP

0x0000000000800000

0x0

S-Mode previous expected landing pad

TSR

0x0000000000400000

0x0

Trap SRET

TW

0x0000000000200000

0x0

Timeout wait

TVM

0x0000000000100000

0x0

Trap virtual memory

MXR

0x0000000000080000

0x0

Make executable readable

SUM

0x0000000000040000

0x0

Permit supervisor user memory access

MPRV

0x0000000000020000

0x0

Modify privilege

XS

0x0000000000018000

0x0

User-Mode extension state

FS

0x0000000000006000

0x0

Floating point state

MPP

0x0000000000001800

0x0

M-Mode previous privilege

VS

0x0000000000000600

0x0

Vector extension state

SPP

0x0000000000000100

0x0

S-Mode previous privilege

MPIE

0x0000000000000080

0x0

M-Mode previous interrupt enable

UBE

0x0000000000000040

0x0

U-Mode big endian

SPIE

0x0000000000000020

0x0

S-Mode previous interrupt enable

MIE

0x0000000000000008

0x0

M-Mode interrupt enable

SIE

0x0000000000000002

0x0

S-Mode interrupt enable

Register misa
Description
Reset value

0x0000000000000000

Warm reset mask

0xc000000003ffffff

Diagram
Field Mask Reset Description

MXL

0xc000000000000000

0x0

Machine XLEN

Extensions

0x0000000003ffffff

0x0

Standard extensions available

Register medeleg
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

Exceptions

0x0000000000000000

-

Synchronous exceptions to delegate to S-Mode

Register mideleg
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

Interrupts

0x0000000000000000

-

Interrupts to delegate to S-Mode

Register mie
Description
Reset value

0x0000000000000000

Warm reset mask

0xffffffffffff2aaa

Diagram
Field Mask Reset Description

Interrupts

0xffffffffffff0000

0x0

enabled interrupts

LCOFIE

0x0000000000002000

0x0

Local counter-overflow interrupt enabled

MEIE

0x0000000000000800

0x0

Machine external interrupt enabled

SEIE

0x0000000000000200

0x0

Supervisor external interrupt enabled

MTIE

0x0000000000000080

0x0

Machine timer interrupt enabled

STIE

0x0000000000000020

0x0

Supervisor timer interrupt enabled

MSIE

0x0000000000000008

0x0

Machine software interrupt enabled

SSIE

0x0000000000000002

0x0

Supervisor software interrupt enabled

Register mtvec
Description
Reset value

0x0000000000000000

Warm reset mask

0xffffffffffffffff

Diagram
Field Mask Reset Description

BASE

0xfffffffffffffffc

0x0

Vector base address

MODE

0x0000000000000003

0x0

Vector mode

Register mcounteren
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register menvcfg
Description
Reset value

0x0000000000000000

Warm reset mask

0xf8000003000000fd

Diagram
Field Mask Reset Description

STCE

0x8000000000000000

0x0

Sstc stimecmp enable

PBMTE

0x4000000000000000

0x0

Svpbmt available in S-Mode

ADUE

0x2000000000000000

0x0

Svadu enabled

CDE

0x1000000000000000

0x0

Smcdeleg Counter Delegation Enable

DTE

0x0800000000000000

0x0

Ssdbltrp double-trap enable

PMM

0x0000000300000000

0x0

Smnpm pointer masking enabled

CBZE

0x0000000000000080

0x0

Zicboz Cache Block Zero instruction enable

CBCFE

0x0000000000000040

0x0

Zicbom Cache Block Clean and Flush instruction Enable

CBIE

0x0000000000000030

0x0

Zicbom Cache Block Invalidate instruction Enable

SSE

0x0000000000000008

0x0

Zicfiss enabled in S-Mode

LPE

0x0000000000000004

0x0

Zicfilp enabled in S-Mode

FIOM

0x0000000000000001

0x0

Fence of I/O implies Memory

Register mhpmevent3
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent4
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent5
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent6
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent7
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent8
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent9
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent10
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent11
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent12
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent13
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent14
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent15
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent16
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent17
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent18
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent19
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent20
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent21
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent22
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent23
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent24
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent25
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent26
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent27
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent28
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent29
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent30
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mhpmevent31
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mscratch
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

mscratch

0x0000000000000000

-

Scratch value

Register mepc
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

mepc

0x0000000000000000

-

mepc

Register mcause
Description
Reset value

0x0000000000000000

Warm reset mask

0xffffffffffffffff

Diagram
Field Mask Reset Description

Interrupt

0x8000000000000000

0x0

Trap was interrupt

Code

0x7fffffffffffffff

0x0

Exception code

Register mtval
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

mtval

0x0000000000000000

-

trap information

Register mip
Description
Reset value

0x0000000000000000

Warm reset mask

0xffffffffffff2aaa

Diagram
Field Mask Reset Description

Interrupts

0xffffffffffff0000

0x0

pending interrupts

LCOFIP

0x0000000000002000

0x0

Local counter-overflow interrupt pending

MEIP

0x0000000000000800

0x0

Machine external interrupt pending

SEIP

0x0000000000000200

0x0

Supervisor external interrupt pending

MTIP

0x0000000000000080

0x0

Machine timer interrupt pending

STIP

0x0000000000000020

0x0

Supervisor timer interrupt pending

MSIP

0x0000000000000008

0x0

Machine software interrupt pending

SSIP

0x0000000000000002

0x0

Supervisor software interrupt pending

Register mtinst
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

mtinst

0x0000000000000000

-

trap instruction information

Register mtval2
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

mtval2

0x0000000000000000

-

trap information

Register miselect
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register mireg
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register mtopei
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000007ff07ff

Diagram
Field Mask Reset Description

identity

0x0000000007ff0000

0x0

Interrupt identity

priority

0x00000000000007ff

0x0

Interrupt priority (same as identity)

Register pmpcfg0
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg1
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg2
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg3
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg4
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg5
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg6
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg7
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg8
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg9
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg10
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg11
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg12
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg13
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg14
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpcfg15
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr0
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr1
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr2
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr3
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr4
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr5
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr6
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr7
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr8
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr9
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr10
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr11
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr12
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr13
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr14
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr15
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr16
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr17
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr18
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr19
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr20
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr21
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr22
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr23
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr24
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr25
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr26
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr27
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr28
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr29
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr30
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr31
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr32
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr33
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr34
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr35
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr36
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr37
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr38
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr39
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr40
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr41
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr42
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr43
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr44
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr45
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr46
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr47
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr48
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr49
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr50
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr51
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr52
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr53
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr54
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr55
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr56
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr57
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr58
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr59
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr60
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr61
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr62
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register pmpaddr63
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register hstatus
Description
Reset value

0x0000000000000000

Warm reset mask

0x000300030073f3e0

Diagram
Field Mask Reset Description

HUPMM

0x0003000000000000

0x0

Smnpm pointer masking enabled in U-Mode

VSXL

0x0000000300000000

0x0

Effective XLEN in VS-Mode

VTSR

0x0000000000400000

0x0

VS-Mode Trap SRET

VTW

0x0000000000200000

0x0

VS-Mode Timeout wait

VTVM

0x0000000000100000

0x0

VS-Mode Trap virtual memory

VGEIN

0x000000000003f000

0x0

Virtual Guest External Interrupt Number)

HU

0x0000000000000200

0x0

Hypervisor in U-mode)

SPVP

0x0000000000000100

0x0

Supervisor Previous Virtual Privilege

SPV

0x0000000000000080

0x0

Supervisor Previous Virtualization mode

GVA

0x0000000000000040

0x0

Guest Virtual Address

VSBE

0x0000000000000020

0x0

VS-Mode big endian enabled

Register hedeleg
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

Synchronous_Exceptions

0x0000000000000000

-

Synchronous exceptions to delegate to VS-Mode

Register hideleg
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

Interrupts

0x0000000000000000

-

Interrupts to delegate to VS-Mode

Register hie
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000001444

Diagram
Field Mask Reset Description

SGEIE

0x0000000000001000

0x0

Guest external interrupt enabled

VSEIE

0x0000000000000400

0x0

VS-Mode external interrupt enabled

VSTIE

0x0000000000000040

0x0

VS-Mode timer interrupt enabled

VSSIE

0x0000000000000004

0x0

VS-Mode software interrupt enabled

Register hcounteren
Description
Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

HPMn

0xfffffff8

0x0

HPMn counter enable

IR

0x00000004

0x0

instret counter enable

TM

0x00000002

0x0

time counter enable

CY

0x00000001

0x0

Cycle counter enable

Register hgeie
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

Guest_External_Interrupts

0x0000000000000000

-

Guest external interrupts enabled

Register henvcfg
Description
Reset value

0x0000000000000000

Warm reset mask

0xe8000003000000fd

Diagram
Field Mask Reset Description

STCE

0x8000000000000000

0x0

Sstc stimecmp enable in VS-Mode

PBMTE

0x4000000000000000

0x0

Svpbmt available in VS-Mode

ADUE

0x2000000000000000

0x0

Svadu enabled in VS-Mode

DTE

0x0800000000000000

0x0

Ssdbltrp double-trap enable in VS-Mode

PMM

0x0000000300000000

0x0

Smnpm pointer masking enabled in VS-Mode

CBZE

0x0000000000000080

0x0

Zicboz Cache Block Zero instruction enable in VS-Mode

CBCFE

0x0000000000000040

0x0

Zicbom Cache Block Clean and Flush instruction Enable in VS-Mode

CBIE

0x0000000000000030

0x0

Zicbom Cache Block Invalidate instruction Enable in VS-Mode

SSE

0x0000000000000008

0x0

Zicfiss enabled in VS-Mode

LPE

0x0000000000000004

0x0

Zicfilp enabled in VS-Mode

FIOM

0x0000000000000001

0x0

Fence of I/O implies Memory in VS-Mode

Register htval
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

htval

0x0000000000000000

-

trap information

Register hip
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000001444

Diagram
Field Mask Reset Description

SGEIP

0x0000000000001000

0x0

Guest external interrupt pending

VSEIP

0x0000000000000400

0x0

VS-Mode external interrupt pending

VSTIP

0x0000000000000040

0x0

VS-Mode timer interrupt pending

VSSIP

0x0000000000000004

0x0

VS-Mode software interrupt pending

Register hvip
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000444

Diagram
Field Mask Reset Description

VSEIP

0x0000000000000400

0x0

VS-Mode external interrupt pending

VSTIP

0x0000000000000040

0x0

VS-Mode timer interrupt pending

VSSIP

0x0000000000000004

0x0

VS-Mode software interrupt pending

Register htinst
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

htinst

0x0000000000000000

-

trap instruction information

Register hgatp
Description
Reset value

0x0000000000000000

Warm reset mask

0xf3ffffffffffffff

Diagram
Field Mask Reset Description

MODE

0xf000000000000000

0x0

Translation mode

VMID

0x03fff00000000000

0x0

Virtual machine identifier

PPN

0x00000fffffffffff

0x0

Physical page number

Register mnscratch
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

mnscratch

0x0000000000000000

-

mnscratch

Register mnepc
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

mnepc

0x0000000000000000

-

mnepc

Register mncause
Description
Reset value

0x0000000000000000

Warm reset mask

0xffffffffffffffff

Diagram
Field Mask Reset Description

Interrupt

0x8000000000000000

0x0

Trap was interrupt

Code

0x7fffffffffffffff

0x0

Exception code

Register mnstatus
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000001a80

Diagram
Field Mask Reset Description

MNPP

0x0000000000001800

0x0

Previous privilege

MNPELP

0x0000000000000200

0x0

Previous ELP state

MNPV

0x0000000000000080

0x0

Previous virtualization

NMIE

0x0000000000000008

-

Non-maskable interrupts enabled

Register mcycle
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

cycles

0x0000000000000000

-

Number of clock cycles executed by the curreny HART

Register mtime
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

time

0x0000000000000000

-

Continuous real-time clock

Register minstret
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

instret

0x0000000000000000

-

Number of retired instructions

Register stopi
Description
Reset value

0x0000000000000000

Warm reset mask

0x000000000fff00ff

Diagram
Field Mask Reset Description

IID

0x000000000fff0000

0x0

Interrupt ID

IPRIO

0x00000000000000ff

0x0

Interrupt priority

Register hgeip
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

Guest_External_Interrupts

0x0000000000000000

-

Guest external interrupts pending

Register mvendorid
Description
Reset value

0x00000000

Warm reset mask

0xffffffff

Diagram
Field Mask Reset Description

Bank

0xffffff80

0x0

JEDEC manufacturer ID bank

Offset

0x0000007f

0x0

JEDEC manufacturer ID offset

Register marchid
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

Architecture_ID

0x0000000000000000

-

Architecture ID

Register mimpid
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

Implementation

0x0000000000000000

-

Implementation ID

Register mhartid
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

Hart_ID

0x0000000000000000

-

Hart ID

Register mconfigptr
Description
Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Diagram
Field Mask Reset Description

mconfigptr

0x0000000000000000

-

Machine configuration pointer

Register Bank fpr

Register ft1
Description

Double Precision Register 1

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register ft2
Description

Double Precision Register 2

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register ft3
Description

Double Precision Register 3

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register ft4
Description

Double Precision Register 4

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register ft5
Description

Double Precision Register 5

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register ft6
Description

Double Precision Register 6

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register ft7
Description

Double Precision Register 7

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fs0
Description

Double Precision Register 8

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fs1
Description

Double Precision Register 9

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fa0
Description

Double Precision Register 10

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fa1
Description

Double Precision Register 11

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fa2
Description

Double Precision Register 12

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fa3
Description

Double Precision Register 13

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fa4
Description

Double Precision Register 14

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fa5
Description

Double Precision Register 15

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fa6
Description

Double Precision Register 16

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fa7
Description

Double Precision Register 17

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fs2
Description

Double Precision Register 18

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fs3
Description

Double Precision Register 19

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fs4
Description

Double Precision Register 20

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fs5
Description

Double Precision Register 21

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fs6
Description

Double Precision Register 22

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fs7
Description

Double Precision Register 23

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fs8
Description

Double Precision Register 24

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fs9
Description

Double Precision Register 25

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fs10
Description

Double Precision Register 26

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register fs11
Description

Double Precision Register 27

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register ft8
Description

Double Precision Register 28

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register ft9
Description

Double Precision Register 29

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register ft10
Description

Double Precision Register 30

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register ft11
Description

Double Precision Register 31

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register ft0
Description

Double Precision Register 0

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register Bank gpr

Register ra
Description

Return Address Register

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register sp
Description

Stack Pointer Register

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register gp
Description

Global Pointer Register

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register tp
Description

Thread Pointer Register

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register t0
Description

Temporary Register 0

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register t1
Description

Temporary Register 1

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register t2
Description

Temporary Register 2

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register s0
Description

Saved Register 0 / Frame Pointer

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register s1
Description

Saved Register 1

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register a0
Description

Function Argument 0 / Return Value 0

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register a1
Description

Function Argument 1 / Return Value 1

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register a2
Description

Function Argument 2

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register a3
Description

Function Argument 3

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register a4
Description

Function Argument 4

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register a5
Description

Function Argument 5

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register a6
Description

Function Argument 6

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register a7
Description

Function Argument 7

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register s2
Description

Saved Register 2

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register s3
Description

Saved Register 3

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register s4
Description

Saved Register 4

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register s5
Description

Saved Register 5

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register s6
Description

Saved Register 6

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register s7
Description

Saved Register 7

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register s8
Description

Saved Register 8

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register s9
Description

Saved Register 9

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register s10
Description

Saved Register 10

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register s11
Description

Saved Register 11

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register t3
Description

Temporary Register 3

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register t4
Description

Temporary Register 4

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register t5
Description

Temporary Register 5

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register t6
Description

Temporary Register 6

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register zero
Description

Constant Zero Register

Reset value

0x0000000000000000

Warm reset mask

0x0000000000000000

Field Mask Reset Description

-

-

-

-

Register Bank grpsc

Register s0
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register s1
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register a0
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register a1
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register a2
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register a3
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register a4
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Register a5
Description
Reset value

0x00000000

Warm reset mask

0x00000000

Field Mask Reset Description

-

-

-

-

Commands

Name Description

assemble

Assemble instruction

delete

Dispose instance of NOELV

disable-dbt

Disable binary translation.

disable-dbt-logging

Disable logging when translating code.

disable-dbt-validation

Disable validation of emitted machine code.

disable-hard-code-reset

Disable hard resets of DBT emitter cache.

disable-stats

Disable statistics

disable-translation-logging

Disable jit-logging.

disassemble

Disassemble code

disassemble-block

Disassemble binary translated code block.

enable-dbt

Enable binary translation.

enable-dbt-logging

Enable logging when translating code.

enable-dbt-validation

Enable validation of emitted machine code.

enable-hard-code-reset

Enable hard resets of DBT emitter cache.

enable-stats

Enable statistics

enable-translation-logging

Enable jit-logging.

enableHpm

Enable performance monitor

enableTraps

Enable traps.

pregs

Print registers for CPU

pstat

Print CPU stats

setPC

Set PC

setReg

Set register

translate-block

Translate block.

translate-func

Translate function.

Command assemble Arguments

Name Type Required Description

inst

string

yes

Instruction to assemble.

pa

int

no

Physical address

va

int

no

Virtual address

Command disable-stats Arguments

Name Type Required Description

stat

string

yes

Name of statistics (executed-translated-instructions, executed-translated-blocks)

Command disassemble Arguments

Name Type Required Description

count

int

no

Number of instructions

pa

int

no

Physical address

va

int

no

Virtual address

Command disassemble-block Arguments

Name Type Required Description

pa

int

no

Physical address of block

va

int

no

Virtual address of block

Command enable-stats Arguments

Name Type Required Description

stat

string

yes

Name of statistics (executed-translated-instructions, executed-translated-blocks)

Command enableHpm Arguments

Name Type Required Description

hpm-id

int

no

HPM index

Command setPC Arguments

Name Type Required Description

pc

int

yes

New %pc

Command setReg Arguments

Name Type Required Description

reg

string

yes

Register name

value

int

yes

Value

Command translate-block Arguments

Name Type Required Description

count

int

no

Number of instructions, omit for automatic.

pa

int

no

Physical address of block

va

int

no

Virtual address of block

Command translate-func Arguments

Name Type Required Description

pa

int

no

Physical address of block

va

int

no

Virtual address of block

Limitations

  • The NOEL-V model is not yet validated against hardware.