This project is an implementation of set associative cache with variable number of ways, sets and memory and block sizes. The "cache.v" file inside the memory project directory gave the following results when run on the traces given below. http://www.cs.toronto.edu/~reid/csc150/02f/a2/traces.html
(The traces can also be found in the memory project directory where the files are named lu,mm16,mm32 and qsort.)
Configuration 1
Cache size - 32KB, set size - 64B, Associativity - 8 ways
Configuration 2
Cache size - 32KB, set size - 64B, Direct mapped
Configuration 3
Cache size - 16KB, set size - 64B, Associativity - 16 ways
RandomInsGenerator.cpp: This file generates random instructions for the specified bits.
cache.v: This file contains code for calcuulating hit n=and miss rate. Write back is not fully implemented.
cache_full_implementation.v: This file contains fully implemented code along with write back.
lu.txt instructions for lu.
mm16.txt instructions for mm16.
mm32.txt instructions for mm32.
qsort.txt: instructions for qsort.
