def __init__(self, number_of_blocks, words_per_block, memory_address_size, byte_addressed=True): Cache.__init__(self, number_of_blocks, words_per_block, memory_address_size, byte_addressed=True) words_string = "word0" for i in range(words_per_block - 1): words_string += " word%d" % (i + 1,) self._cache_block = namedtuple("cache_block", "lastUsedTime tag %s" % words_string)
def __init__(self, numberOfSets, number_of_blocks, words_per_block, memory_address_size, byte_addressed=True): Cache.__init__(self, number_of_blocks, words_per_block, memory_address_size, byte_addressed=True) # Delete self._cache for safety to make sure it's not used somewhere hidden del self._cache # add a variables caches to hold an array of caches equal to number of sets self._caches = [[None] * number_of_blocks] for i in range(numberOfSets -1): self._caches.append([None] * number_of_blocks) words_string = "word0" for i in range(words_per_block - 1): words_string += " word%d" % (i + 1,) self._cache_block = namedtuple("cache_block", "lastUsedTime tag %s" % words_string)
def __init__(self, numberOfSets, number_of_blocks, words_per_block, memory_address_size, byte_addressed=True): Cache.__init__(self, number_of_blocks, words_per_block, memory_address_size, byte_addressed=True) # Delete self._cache for safety to make sure it's not used somewhere hidden del self._cache # add a variables caches to hold an array of caches equal to number of sets self._caches = [[None] * number_of_blocks] for i in range(numberOfSets - 1): self._caches.append([None] * number_of_blocks) words_string = "word0" for i in range(words_per_block - 1): words_string += " word%d" % (i + 1, ) self._cache_block = namedtuple("cache_block", "lastUsedTime tag %s" % words_string)