cve2/rtl
christian-herber-nxp 91eb8564de
Feature/flush ctrl in csrwrite (#99)
* [rtl] Flush controller in PMP CSR write ops

As Greg pointed out:

When we have an instruction in ID/EX that writes a PMP register that
update gets written to the CSR the same cycle the next instruction
moves from IF to ID/EX with it's PMP check done with the old value.

The solution is to flush the pipeline when we get a PMP CSR write.

Signed-off-by: Canberk Topal <ctopal@lowrisc.org>

* [rtl] Flush pipe on MSECCFG CSR write

Without this an instruction executed immediately after the MSECCFG write
doesn't have the new MSECCFG setup applied to its execute permission.

---------

Signed-off-by: Canberk Topal <ctopal@lowrisc.org>
Co-authored-by: Canberk Topal <ctopal@lowrisc.org>
Co-authored-by: Greg Chadwick <gac@lowrisc.org>
2023-03-03 17:05:51 +01:00
..
cve2_alu.sv Rename all modules to cve2 (#25) 2023-01-05 10:27:24 +01:00
cve2_branch_predict.sv Rename all modules to cve2 (#25) 2023-01-05 10:27:24 +01:00
cve2_compressed_decoder.sv Rename all modules to cve2 (#25) 2023-01-05 10:27:24 +01:00
cve2_controller.sv Rename all modules to cve2 (#25) 2023-01-05 10:27:24 +01:00
cve2_core.f Rename all modules to cve2 (#25) 2023-01-05 10:27:24 +01:00
cve2_core.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_counter.sv Rename all modules to cve2 (#25) 2023-01-05 10:27:24 +01:00
cve2_cs_registers.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_csr.sv Rename all modules to cve2 (#25) 2023-01-05 10:27:24 +01:00
cve2_decoder.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_ex_block.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_fetch_fifo.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_id_stage.sv Feature/flush ctrl in csrwrite (#99) 2023-03-03 17:05:51 +01:00
cve2_if_stage.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_load_store_unit.sv Rename all modules to cve2 (#25) 2023-01-05 10:27:24 +01:00
cve2_multdiv_fast.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_multdiv_slow.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_pkg.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_pmp.sv Rename all modules to cve2 (#25) 2023-01-05 10:27:24 +01:00
cve2_pmp_reset_default.svh Rename all modules to cve2 (#25) 2023-01-05 10:27:24 +01:00
cve2_prefetch_buffer.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_register_file_ff.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_register_file_fpga.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_register_file_latch.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_top.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_top_tracing.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00
cve2_tracer.sv Rename all modules to cve2 (#25) 2023-01-05 10:27:24 +01:00
cve2_tracer_pkg.sv Rename all modules to cve2 (#25) 2023-01-05 10:27:24 +01:00
cve2_wb_stage.sv Feature/remove security (#52) 2023-02-28 14:03:42 +01:00