Mapeamento em Memória Cache
description
Transcript of Mapeamento em Memória Cache
Mapeamento em Memória Cache
Arquitetura de Computadores
Bruno Edson
Mapeamento Direto
Memória Principal 16Mbytes End. Principal: log216M = 24bits
Memória Cache 16K palavras End. Cache: log216K = 14bits
Bits de Palavra de 4 bytes: 2 bits Rótulo =
End. Princ. – (End. Cache + Bits Pal.)24 – (14 + 2) = 8bits
Mapeamento Direto
Como a palavra é de 4bytes, retiramos o rótulo e dividimos por 4 e obtemos o endereço mapeado: 0000 / 4 = 0000 0004 / 4 = 0001 339C / 4 = 0CE7 FFFC / 4 = 3FFF FFF8 / 4 = 3FFE
Obs.: Valores em hexadecimal
Mapeamento Associativo
Memória Principal 16Mbytes End. Principal: log216M = 24bits
Bits de Palavra de 4 bytes: 2 bits Rótulo =
End. Princ. – Bits Pal. = 24 – 2 = 22bits
Mapeamento Associativo
Como a palavra é de 4bytes, dividimos o endereço por 4 e obtemos o rótulo específico: 000000 / 4 = 000000 16339C / 4 = 058CE7 FFFFF4 / 4 = 3FFFFD FFFFF8 / 4 = 3FFFFE FFFFFC / 4 = 3FFFFF
Obs.: Valores em hexadecimal
Mapeamento Associativo por Conjunto
Memória Principal 16Mbytes End. Principal: log216M = 24bits
Memória Cache 16K palavras e Número de Conj. 2: 1 bit End. Cache: log216K – nº bits conj. 14 – 1 = 13bits
Bits de Palavra de 4 bytes: 2 bits Rótulo =
End. Princ. – (End. Cache + Bits Pal.)24 – (13 + 2) = 9bits
Mapeamento Associativo por Conjunto
Como a palavra é de 4bytes, retiramos o rótulo e dividimos por 4 e obtemos o endereço mapeado: 0000 / 4 = 0000 0004 / 4 = 0001 339C / 4 = 0CE7 7FFC / 4 = 1FFF 7FF8 / 4 = 1FFE
Obs.: Valores em hexadecimal
Mapeamento em Memória Cache
www.cin.ufpe.br/~bemaf/arquivos/arq
Obrigado!!