Skip to content

Coprocessor should take RV32E into account

CORE-V-XIF needs to define how XIF can be used together with RV32E.

An initial proposal:

  • A processor configured to use RV32E will declare all instructions that would use a source or destination register within x16-x31 if the RV32I base would have been used as illegal and attempt them for offload.
  • A processor will never indicate that a register file source is valid via rs_valid if the related source is within x16-x31
  • A coprocessor shall only be allowed to accept such instructions if it is not actually using any register file register within the x16-x31 range (i.e. a coprocessor shall not wait for validity via rs_valid if the related source is within x16-x31 as it will never happen and the coprocessor shall ignore rs if the related source is within x16-x31. The coprocessor shall also never write to x16-x31 via the result interface)