cva6/verif/sim
Cesar Fuguet db568f3e1d
Some checks are pending
bender-up-to-date / bender-up-to-date (push) Waiting to run
ci / build-riscv-tests (push) Waiting to run
ci / execute-riscv64-tests (push) Blocked by required conditions
ci / execute-riscv32-tests (push) Blocked by required conditions
Fully support the Write-Back mode of the HPDcache in the CVA6 (#2691)
This PR modifies some components in the CVA6 to fully support the WB mode of the HPDcache.

When on WB mode, there may be coherency issues between the Instruction Cache and the Data Cache. This may happen when the software writes on instruction segments (e.g. to relocate a code in memory).

This PR contains the following modifications:

The CVA6 controller module rises the flush signal to the caches when executing a fence or fence.i instruction.
The HPDcache cache subsystem translates this fence signal to a FLUSH request to the cache (when the HPDcache is in WB mode).
Add new parameters in the CVA6 configuration packages:
DcacheFlushOnInvalidate: It changes the behavior of the CVA6 controller. When this parameter is set, the controller rises the Flush signal on fence instructions.
DcacheInvalidateOnFlush: It changes the behavior of the HPDcache request adapter. When issuing a flush, it also asks the HPDcache to invalidate the cachelines.
Add additional values to the DcacheType enum: HPDCACHE_WT, HPDCACHE_WB, HPDCACHE_WT_WB
In addition, it also fixes some issues with the rvfi_mem_paddr signal from the store_buffer.
2025-01-10 17:57:32 +01:00
..
dv@f0c570d112 Convert DV into a submodule (#1591) 2023-11-03 11:20:08 +01:00
cov-exclude-mod.lst Exclude HPD cache module from code coverage (#2194) 2024-06-04 23:30:36 +02:00
cva6-simulator.yaml move files to a verif directory 2023-09-07 09:50:50 +02:00
cva6.hvp CSR verification : modify coverage based on new specification (#2261) 2024-06-14 14:01:23 +02:00
cva6.py Fully support the Write-Back mode of the HPDcache in the CVA6 (#2691) 2025-01-10 17:57:32 +01:00
cva6.yaml Add vcs-uvm-gate ISS target 2024-10-08 21:14:33 +02:00
cva6_base_testlist.yaml add UVM interrupt agent (#2309) 2024-07-05 11:54:34 +02:00
cva6_spike_log_to_trace_csv.py [Spike Yaml] Integrate Spike Yaml support. (#2304) 2024-07-11 08:37:37 +02:00
init_run_uvm_fsdb.do move files to a verif directory 2023-09-07 09:50:50 +02:00
init_run_uvm_vpd.do move files to a verif directory 2023-09-07 09:50:50 +02:00
init_uvm.do move files to a verif directory 2023-09-07 09:50:50 +02:00
Makefile Code coverage : Add option to support coverage condition with arithmetic operations (#2694) 2025-01-08 18:55:08 +01:00
setup-env.sh Prepare for LLVM (#2251) 2024-06-14 11:12:03 +02:00
verilator_log_to_trace_csv.py move files to a verif directory 2023-09-07 09:50:50 +02:00