Spike modifications for cv32e40s reference model
Created by: torjeikenes
This PR adds the changes to Spike necessary to support the reference model in #2432. I have attempted to split it into two main contributions:
- Added spike support for CV32E40S
- Configuration of memory regions
- Modifications to CSRs
- Modifications to RVFI
- Modified spike to work with the reference model
- Injection of interrupts and debug requests
- Modifications to interrupt handling in spike, adding an interrupt_allowed check and external interrupts
- Store and revert to previous states
(@silabs-robin
, I can't add reviewers)