mirror of
https://github.com/lowRISC/ibex.git
synced 2025-04-21 04:17:20 -04:00
As described in #20715, a single fault-induced bit-flip inside the register file could change which of the register file value is provided to Ibex. This PR fixes this issue by (i) encoding raddr_a/b to one-hot encoded signals, (ii) checking these signals for faults, and (iii) using an one-hot encoded MUX to select which register file value is forwarded to rdata_a/b. Area increases by ~1% (Yosys + Nangate45 synthesis). I conducted a formal fault injection verification at the Yosys netlist to ensure that the issue really is fixed. Signed-off-by: Pascal Nasahl <nasahlpa@lowrisc.org> |
||
---|---|---|
.. | ||
ibex_cosim_agent | ||
ibex_mem_intf_agent | ||
irq_agent | ||
prim | ||
date.c | ||
date_dpi.svh |