summaryrefslogtreecommitdiff
path: root/src/mem/cache/tags/base_set_assoc.hh
diff options
context:
space:
mode:
authorDaniel R. Carvalho <odanrc@yahoo.com.br>2018-03-09 15:47:33 +0100
committerDaniel Carvalho <odanrc@yahoo.com.br>2018-09-07 11:19:04 +0000
commit8fee83d1ff0abf23226138c36a995dfe3ce70516 (patch)
treec0293d1921ef60c95e4ed24575195845b6954e13 /src/mem/cache/tags/base_set_assoc.hh
parent606b1b46f5ff382b0d9f35d515f137071785aeab (diff)
downloadgem5-8fee83d1ff0abf23226138c36a995dfe3ce70516.tar.xz
mem-cache: Create Skewed Assoc placement policy
Create a class that implements the skewed associative placement policy. It uses the hash function and expansions of the skewing functions described in "Skewed-Associative caches", by Seznec. Only 8 skewing functions are implemented, and therefore if more are needed a hash function will be recursively applied on top of the output of one of these functions to generate different values. This is not optimal, and if more functions are needed it might be more effective to implement them. Change-Id: Ibc77edffd8128114a8b200cec5d8deedfb5105cb Reviewed-on: https://gem5-review.googlesource.com/8886 Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Maintainer: Nikos Nikoleris <nikos.nikoleris@arm.com>
Diffstat (limited to 'src/mem/cache/tags/base_set_assoc.hh')
-rw-r--r--src/mem/cache/tags/base_set_assoc.hh4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mem/cache/tags/base_set_assoc.hh b/src/mem/cache/tags/base_set_assoc.hh
index 61a16584f..8e4657fc1 100644
--- a/src/mem/cache/tags/base_set_assoc.hh
+++ b/src/mem/cache/tags/base_set_assoc.hh
@@ -183,9 +183,9 @@ class BaseSetAssoc : public BaseTags
/**
* Finds the given address in the cache, do not update replacement data.
* i.e. This is a no-side-effect find of a block.
+ *
* @param addr The address to find.
* @param is_secure True if the target memory space is secure.
- * @param asid The address space ID.
* @return Pointer to the cache block if found.
*/
CacheBlk* findBlock(Addr addr, bool is_secure) const override;
@@ -237,7 +237,7 @@ class BaseSetAssoc : public BaseTags
* @param addr The addr to a find possible locations for.
* @return The possible locations.
*/
- const std::vector<CacheBlk*> getPossibleLocations(Addr addr) const
+ virtual const std::vector<CacheBlk*> getPossibleLocations(Addr addr) const
{
return sets[extractSet(addr)].blks;
}