Hi all,
I'm working on a project to demonstrate the fault tolerance Rocket-chip has using ECC techniques. At the moment I could enable the ECC coding for L1 cache memories and for an internal TLRAM. I've also checked that the ECC bits are already available on the verilog and the ECC coding works perfectly on simulation.
My next step is to check if software interruptions work well when detecting an uncorrectable failure and for that, I need a way of introducing faults at run-time on the architecture. I've checked there are some traits and classes called ECCTest in the UnitTest directory but I was not able to make them work on my architecture. So my questions are:
- Is there a way of introducing failures from the Chisel code level in the architecture? And if that's true, is using the UnitTest traits the correct way to do it?
- Are there other recommended approaches such as introducing them as FirRTL level or with third-party tools?
Many thanks in advance! Any help is really appreciated.
Alex.