CSR Bit Fields

RISC-V mhpmevent25h CSR Register

Address 0x739Privilege MachineAccess RW / RV32 high-half / 32-bitMachine counters and performance-monitoring CSRs

mhpmevent25h at 0x739 is the RV32 high-half CSR for bits 63:32 of mhpmevent25, provided with Sscofpmf.

Bit Overview
bit 3 = only bit 3; bits 12..11 = bits 12 down to 11
MSBLSB
Field Map

Understand mhpmevent25h By Bit Fields

0 key fields
Official Basis & Search Notes

mhpmevent25h is not an independent event selector; it is the RV32 access window for the upper 32 bits of mhpmevent25. It carries Sscofpmf OF and mode-filtering fields.

Sscofpmf standardizes mhpmevent25[63:58] as OF and xINH fields.
mhpmevent25h[31:26] correspond to those standardized upper bits.
The upper event-selector bits remain part of the platform-defined event encoding.

What To Check First When Reading This CSR

  • - mhpmevent25h is an RV32-only high-half CSR provided with Sscofpmf.
  • - Reading it is equivalent to reading bits 63:32 of mhpmevent25.
  • - The specification recommends all counters be implemented, but permits mhpmcounter25 and its event selector to be read-only zero.
  • - The OF bit can also be observed through the corresponding read-only shadow bit in scountovf.

Risk Checks Before Writing

  • - Preserve WPRI bits, and do not change EVENT_HI without knowing the platform event encoding.
  • - Writing mhpmevent25h changes the upper 32 bits of mhpmevent25, including OF and xINH controls.

Put It Back Into A Real Flow

1

On RV32, read mhpmevent25h to inspect the upper-half state of mhpmevent25.

2

Handle OF or mode-filtering bits as needed.

3

Check overflow state together with mhpmcounter25 readings and scountovf.

FAQ

Can mhpmevent25h be accessed from any privilege level?

No. The official CSR table lists mhpmevent25h as a Machine mode CSR. Lower-privilege software may access the corresponding state only when a relevant standard extension provides an explicit delegation or permission mechanism. Direct CSR access with insufficient privilege, or to an unimplemented CSR, raises an illegal-instruction exception.

Should mhpmevent25h and mhpmevent25 be written together?

On RV32, handle them as halves of one 64-bit CSR and avoid one path changing the high half while another path changes the low half inconsistently.