Skip to content

Commit c0f804c

Browse files
authored
cpu-o3: change idealkmhv3 config (#688)
loadFusion: True -> Fasle store prefetch train: True -> False simulate dcache refill: Flase -> True L2 replacement policy: enable XSDRRIPRP Change-Id: I0b7b2a68219cc8b570c5df8df8f87004f279b652
1 parent 4ec9fc8 commit c0f804c

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

configs/example/idealkmhv3.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ def setKmhV3IdealParams(args, system):
3131

3232
# decode
3333
cpu.decodeWidth = 8
34-
cpu.enable_loadFusion = True
34+
cpu.enable_loadFusion = False
3535
cpu.enableConstantFolding = False
3636

3737
# rename
@@ -73,6 +73,7 @@ def setKmhV3IdealParams(args, system):
7373
cpu.RAWDequeuePerCycle = 4
7474
cpu.SbufferEntries = 24
7575
cpu.SbufferEvictThreshold = 16
76+
cpu.store_prefetch_train = False
7677

7778
# branch predictor
7879
if args.bp_type == 'DecoupledBPUWithBTB':
@@ -85,6 +86,7 @@ def setKmhV3IdealParams(args, system):
8586
cpu.dcache.size = '64kB'
8687
cpu.dcache.tag_load_read_ports = 100
8788
cpu.dcache.mshrs = 16
89+
cpu.dcache.simulate_dcache_refill = True
8890

8991
# l2 caches
9092
if args.l2cache:
@@ -97,6 +99,10 @@ def setKmhV3IdealParams(args, system):
9799
l2_wrapper.dir_sram_banks = 2
98100
l2_wrapper.pipe_dir_write_stage = 4
99101
l2_wrapper.dir_read_bypass = True
102+
for j in range(args.l2_slices):
103+
# Configure XSDRRIP replacement policy (DRRIP mode)
104+
# Each slice: 2MB/4 = 512KB, 8-way, 64B line → 1024 sets
105+
l2_wrapper.slices[j].inner_cache.replacement_policy = XSDRRIPRP(mode=2, num_sets=1024)
100106
system.tol2bus_list[i].forward_latency = 0 # 3->0
101107
system.tol2bus_list[i].response_latency = 0 # 3->0
102108
system.tol2bus_list[i].hint_wakeup_ahead_cycles = 0 # 2->0

0 commit comments

Comments
 (0)