icache: Set associative icache
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 2 Oct 2019 12:17:31 +0000 (22:17 +1000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Tue, 8 Oct 2019 03:46:46 +0000 (14:46 +1100)
commitb56b46b7d1a537d9f99608d4957bb5183d512421
tree2906a6ceaf8d07920a12f2b4352a76c9713939d0
parent004eb074c904c2aec489cf55610c00b4bf8aeab9
icache: Set associative icache

This adds support for set associativity to the icache. It can still
be direct mapped by setting NUM_WAYS to 1.

The replacement policy uses a simple tree-PLRU for each set.

This is only lightly tested, tests pass but I have to double check
that we are using the ways effectively and not creating duplicates.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Makefile
cache_ram.vhdl [new file with mode: 0644]
core.vhdl
icache.vhdl
microwatt.core
plru.vhdl