Skip to content

Commit 7b7246a

Browse files
committed
SoC/evalsoc: Enable IC_CANCEL_EN by default to prevent I-cache pipeline stalls on branch misprediction
Signed-off-by: Huaqi Fang <[email protected]>
1 parent 97a7f30 commit 7b7246a

File tree

2 files changed

+3
-0
lines changed

2 files changed

+3
-0
lines changed

SoC/evalsoc/Common/Source/system_evalsoc.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1424,6 +1424,8 @@ void _premain_init(void)
14241424
#endif
14251425
#endif
14261426
EnableICache();
1427+
// Enable canceling previous accesses in icache e1 stage when change flow happens
1428+
__RV_CSR_SET(CSR_MCACHE_CTL, MCACHE_CTL_IC_PF_EN);
14271429
}
14281430
#endif
14291431
#if defined(__DCACHE_PRESENT) && (__DCACHE_PRESENT == 1)

doc/source/changelog.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ This is release version of ``0.9.0`` of Nuclei SDK, which is still under develop
6363
- Optimize SMP bringup process, boot hart should wait for other harts software pending bit be set, mainly to be suitable
6464
for Nuclei Qemu 2025.10, the other harts run slow than main harts
6565
- Enable nuclei cpu model debug configuration generation using npk, which require Nuclei Studio and Model 2025.10 version, currently only non-smp debug is supported by Nuclei CPU Model
66+
- Enable ``IC_CANCEL_EN`` in mcache_ctl when I-Cache present by default to prevent I-cache pipeline stalls on branch misprediction
6667

6768
* Documentation
6869

0 commit comments

Comments
 (0)