CSR Bit Fields

RISC-V sireg6 CSR Register

Address 0x157Privilege SupervisorAccess RW / XLENSupervisor AIA, timer, and indirect interrupt CSRs

sireg6 (0x157) is an Sscsrind Supervisor indirect-register alias 6 that accesses extension state selected by siselect.

Field Map

Understand sireg6 By Bit Fields

1 key fields
XLEN-1:0

ALIAS_DATA

Depends on select

Alias data window whose semantics are defined by the extension selected by siselect. Accessing sireg6 in the delegated-counter 0x40..0x5F range raises an illegal-instruction exception; in the CTR 0x200..0x2FF range sireg6 is read-only zero; in AIA 0x30..0x3F and 0x70..0xFF ranges accesses to sireg2..sireg6 raise illegal-instruction exceptions.

ALIAS_DATA (bits XLEN-1:0) — Alias data window whose semantics are defined by the extension selected by siselect. Accessing sireg6 in the delegated-counter 0x40..0x5F range raises an illegal-instruction exception; in the CTR 0x200..0x2FF range sireg6 is read-only zero; in AIA 0x30..0x3F and 0x70..0xFF ranges accesses to sireg2..sireg6 raise illegal-instruction exceptions.

What This Field Controls

  • - Alias data window whose semantics are defined by the extension selected by siselect. Accessing sireg6 in the delegated-counter 0x40..0x5F range raises an illegal-instruction exception; in the CTR 0x200..0x2FF range sireg6 is read-only zero; in AIA 0x30..0x3F and 0x70..0xFF ranges accesses to sireg2..sireg6 raise illegal-instruction exceptions.

Common Values

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

Open Official Manual
Official Basis & Search Notes

sireg6 is not an independent fixed-meaning register; it is an alias window selected by siselect.

Sscsrind defines sireg* behavior through the siselect/sireg* combination and the selected extension.
CTR uses siselect 0x200..0x2FF for CTR entries, where sireg6 is read-only zero; sireg6 raises an illegal-instruction exception in delegated-counter 0x40..0x5F ranges.
AIA 0x30..0x3F and 0x70..0xFF ranges are accessed through sireg only; accesses to sireg2..sireg6 raise illegal-instruction exceptions.
Do not assume zero reads, writability, or fixed side effects for unimplemented select values.

What To Check First When Reading This CSR

  • - First confirm that the hart implements Sscsrind and that Smstateen has not blocked the current access through mstateen0.CSRIND or hstateen0.CSRIND.
  • - Use address 0x157, the lowest access privilege, and the official access class to decide whether software may access it directly.
  • - Do not assume fixed values for reserved, WPRI, WARL, or WLRL fields; interpret them according to the specification and implementation.

Risk Checks Before Writing

  • - When writing sireg6, modify only the officially defined target fields and preserve unchanged bits.
  • - Handle WARL, WLRL, WPRI, and reserved fields according to the official specification; do not overwrite the whole CSR as an ordinary integer.

Put It Back Into A Real Flow

1

First write siselect to choose the indirect-register number.

2

Then use the selected extension definition to decide whether sireg6 accesses state, reads as zero, or raises an illegal-instruction exception.

3

Do not use sireg6 for AIA iprio or IMSIC interrupt-file ranges; those AIA ranges use sireg only, and accesses to sireg2..sireg6 raise illegal-instruction exceptions.

FAQ

Why are sireg6 bit fields unlike ordinary CSRs?

Because it is an alias window; bit fields depend on the current siselect value and selected extension.