flagHit = memory.l1i.writeCache(end) writeNumber += 1 if (not flagHit): if end > 15: next = memory.l1d.locateCacheBlock(end) else: next = memory.l1i.locateCacheBlock(end) if (next != -1): memory.l2.writeCache(next) writeNumber += 1 flagHit = memory.l2.readCache(end) readNumber += 1 if (not flagHit): memory.l2.locateCacheBlock(end) write_misses = memory.getWriteMiss() total_acessos_l1i = memory.l1i.n_hits + memory.l1i.misses total_acessos_l1d = memory.l1d.n_hits + memory.l1d.misses total_acessos_l2 = memory.l2.n_hits + memory.l2.misses total_acessos = total_acessos_l1i + total_acessos_l1d + total_acessos_l2 print '\n\n\n#####ESTATISTICAS CACHE#####' print '\n-TOTAL DE ACESSOS:' print 'Acessos totais:', total_acessos print 'Acessos l1i:', total_acessos_l1i print 'Acessos l1d:', total_acessos_l1d print 'Acessos l2:', total_acessos_l2 print '\n-MISSES:' print 'Misses compulsorios | Misses capacidade | Misses conflito' print 'Misses totais: ', tuple(memory.getMisses()) print 'Misses l1i: ', memory.l1i.getMisses()