riscv-non-isa/tg-nexus-trace

Definition of WARL in RISC-V Trace Control Interface 0.9.4

JanMatCodasip opened this issue · 0 comments

The RISC-V Trace Control Interface 0.9.4 document defines WARL register fields as:

WARL - Write any, read legal. If a non-legal value is written, the written value must be ignored and
register will keep previous, legal value. (...)

This definition requires that when non-legal value is written, the original value must be preserved.
This is a different definition, stronger than WARL from the other specifications: Privileged spec and RISC-V Debug spec. Both of these allow any legal value to be read when illegal value is written. The original value need not be preserved.

Is WARL intentionally defined differently in the Nexus Trace Control document (or is this an oversight)?

If this is intentional, could a different acronym than WARL be introduced to avoid any confusion?

Thank you.