CSR Bit Fields

RISC-V jvt CSR Register

Address 0x017Privilege UserAccess RW / XLENUser-level Zcmt CSR

jvt (0x017) is the Zcmt user-level XLEN-bit jump-table base-vector and mode configuration CSR.

Field Map

Understand jvt By Bit Fields

2 key fields
XLEN-1:6

BASE

WARL

Bits XLEN-1:6 of the jump-table base; the low six bits are filled with zero when forming jvt.base, so the address is always 64-byte aligned.

BASE (bits XLEN-1:6) — Bits XLEN-1:6 of the jump-table base; the low six bits are filled with zero when forming jvt.base, so the address is always 64-byte aligned.

What This Field Controls

  • - Bits XLEN-1:6 of the jump-table base; the low six bits are filled with zero when forming jvt.base, so the address is always 64-byte aligned.

Common Values

This field is better understood together with surrounding context than as a fixed memorized enumeration.

Open Official Manual
5:0

MODE

WARL

Jump-table mode. 000000 is the required jump-table mode; other encodings are reserved for future standard use, and WARL readback discovers implemented modes.

MODE (bits 5:0) — Jump-table mode. 000000 is the required jump-table mode; other encodings are reserved for future standard use, and WARL readback discovers implemented modes.

What This Field Controls

  • - Jump-table mode. 000000 is the required jump-table mode; other encodings are reserved for future standard use, and WARL readback discovers implemented modes.

Common Values

This field is better understood together with surrounding context than as a fixed memorized enumeration.

Open Official Manual

What To Check First When Reading This CSR

  • - jvt is the URW CSR at 0x017; it is required only when Zcmt is implemented and may have a read-only value.
  • - When Smstateen is implemented, the JVT state-enable bit controls access to jvt.

Risk Checks Before Writing

  • - Both BASE and MODE are WARL; only implementation-supported values may be retained, so read back the programmed result.

Put It Back Into A Real Flow

1

Program BASE with a 64-byte-aligned jump-table address and read back the WARL result.

2

Use MODE=000000, the required jump-table mode.

3

After updating table memory, execute fence.i so changes become visible to later implicit instruction fetches.