mem-cache,configs: remove extra prefetch_* params
Remove the prefetch_on_access and prefetch_on_pf_hit from BaseCache. BasePrefetch no longer expects this params to exist in the parent. Configurations that set these parameter using the cache object were fixed. Change-Id: I9ab6a545eaf930ee41ebda74e2b6b8bad0ca35a7 Signed-off-by: Tiago Mück <tiago.muck@arm.com>
This commit is contained in:
@@ -207,9 +207,8 @@ class O3_ARM_v7aL2(Cache):
|
||||
size = "1MB"
|
||||
assoc = 16
|
||||
write_buffers = 8
|
||||
prefetch_on_access = True
|
||||
clusivity = "mostly_excl"
|
||||
# Simple stride prefetcher
|
||||
prefetcher = StridePrefetcher(degree=8, latency=1)
|
||||
prefetcher = StridePrefetcher(degree=8, latency=1, prefetch_on_access=True)
|
||||
tags = BaseSetAssoc()
|
||||
replacement_policy = RandomRP()
|
||||
|
||||
@@ -147,9 +147,8 @@ class L2(Cache):
|
||||
size = "512kB"
|
||||
assoc = 8
|
||||
write_buffers = 16
|
||||
prefetch_on_access = True
|
||||
clusivity = "mostly_excl"
|
||||
# Simple stride prefetcher
|
||||
prefetcher = StridePrefetcher(degree=1, latency=1)
|
||||
prefetcher = StridePrefetcher(degree=1, latency=1, prefetch_on_access=True)
|
||||
tags = BaseSetAssoc()
|
||||
replacement_policy = RandomRP()
|
||||
|
||||
@@ -200,9 +200,8 @@ class L2(Cache):
|
||||
size = "2MB"
|
||||
assoc = 16
|
||||
write_buffers = 8
|
||||
prefetch_on_access = True
|
||||
clusivity = "mostly_excl"
|
||||
# Simple stride prefetcher
|
||||
prefetcher = StridePrefetcher(degree=8, latency=1)
|
||||
prefetcher = StridePrefetcher(degree=8, latency=1, prefetch_on_access=True)
|
||||
tags = BaseSetAssoc()
|
||||
replacement_policy = RandomRP()
|
||||
|
||||
9
src/mem/cache/Cache.py
vendored
9
src/mem/cache/Cache.py
vendored
@@ -1,4 +1,4 @@
|
||||
# Copyright (c) 2012-2013, 2015, 2018 ARM Limited
|
||||
# Copyright (c) 2012-2013, 2015, 2018, 2023 ARM Limited
|
||||
# All rights reserved.
|
||||
#
|
||||
# The license below extends only to copyright in the software and shall
|
||||
@@ -107,13 +107,6 @@ class BaseCache(ClockedObject):
|
||||
is_read_only = Param.Bool(False, "Is this cache read only (e.g. inst)")
|
||||
|
||||
prefetcher = Param.BasePrefetcher(NULL, "Prefetcher attached to cache")
|
||||
prefetch_on_access = Param.Bool(
|
||||
False,
|
||||
"Notify the hardware prefetcher on every access (not just misses)",
|
||||
)
|
||||
prefetch_on_pf_hit = Param.Bool(
|
||||
False, "Notify the hardware prefetcher on hit on prefetched lines"
|
||||
)
|
||||
|
||||
tags = Param.BaseTags(BaseSetAssoc(), "Tag store")
|
||||
replacement_policy = Param.BaseReplacementPolicy(
|
||||
|
||||
6
src/mem/cache/prefetch/Prefetcher.py
vendored
6
src/mem/cache/prefetch/Prefetcher.py
vendored
@@ -1,4 +1,4 @@
|
||||
# Copyright (c) 2012, 2014, 2019 ARM Limited
|
||||
# Copyright (c) 2012, 2014, 2019, 2023 ARM Limited
|
||||
# All rights reserved.
|
||||
#
|
||||
# The license below extends only to copyright in the software and shall
|
||||
@@ -76,11 +76,11 @@ class BasePrefetcher(ClockedObject):
|
||||
on_data = Param.Bool(True, "Notify prefetcher on data accesses")
|
||||
on_inst = Param.Bool(True, "Notify prefetcher on instruction accesses")
|
||||
prefetch_on_access = Param.Bool(
|
||||
Parent.prefetch_on_access,
|
||||
False,
|
||||
"Notify the hardware prefetcher on every access (not just misses)",
|
||||
)
|
||||
prefetch_on_pf_hit = Param.Bool(
|
||||
Parent.prefetch_on_pf_hit,
|
||||
False,
|
||||
"Notify the hardware prefetcher on hit on prefetched lines",
|
||||
)
|
||||
use_virtual_addresses = Param.Bool(
|
||||
|
||||
Reference in New Issue
Block a user