Fix tracer for FPU
Created by: bluewww
This PR addresses two issues:
Firstly,
when the FPU latency in cv32e40p_pkg.sv
is changed to e.g.
- parameter int unsigned C_LAT_FP32 = 'd0;
+ parameter int unsigned C_LAT_FP32 = 'd1;
then tracer will hang or write x's to the trace log. This is due to the tracer not correctly waiting for the APU handshaking to start and conclude in the execution stage. We fix this by introducing an execution delay stage to model these multi-cycle APU instructions.
and secondly when ZFINX is enabled, it still looks like as if the fpu instructions are referring to non-existing floating point registers. This is just a cosmetic issue.