Partial fix for issue #766
Created by: silabs-oysteink
- Changes CSR implementation to be identical to the unhardened version on cv32e40s
- Introduces MASK and RESET_VAL for all CSRs
- Use a function to compute next value for all next-value assignments
This should align X and S better, and allow for unimplemented bits in CSRs to be either 0 or 1.
Once this PR is approved, similar changes will be done for the remaining CSRs.
SEC clean.