Mapeamento Memoria Cache
Computadores
Memória Cache: Mapeamento Direto
Alexandre Amory
Edson Moreno
Na Aula Anterior …
Vimos que existem memórias
De rápido acesso mas pouca capacidade de armazenamento.
Ex.: SRAM
De alta capacidade de armazenamento, porém muito lenta. Ex.: disco magnético
O conceito de hierarquia de memória
Combina hierarquicamente memórias rápidas (prox do
processador) e com alta capacidade de armazenamento (+ longe do processador)
Da a impressão de alto desempenho e grande memória
Baseado nas características de localidade temporal e espacial
Na Aula de Hoje
Memória cache
Política de atualização de blocos de memória baseado em
mapeamento direto
Introdução
Funcionalidade
Área de memória rápida e com informações dinâmicas
Cache só pode ter parte dos dados do nível mais abaixo
Tamanho menor
Problemas
Como identificar se o dado procurado está na cache?
Se estiver, como acessar de forma rápida?
Se não estiver, como buscar eficientemente de níveis inferiores?
Qual dado tirar da cache para colocar o novo dado?
Processador não sabe qual memória física tem o dado
Gera apenas endereços e a hierarquia se encarrega de acessar a informação endereçada Mapeamento de Endereços
Como fazer para pesquisar um dado na cache?
Fazer cache com todos endereços não faz sentido
Efetuar varredura seqüencial na cache leva muito tempo
Solução
Fazer mapeamento de endereços
Objetivo
Relacionar informações (dados e instruções) da memória principal com posições da cache
Formas de mapeamento de memórias cache
Direto
Associativo
Conjunto associativo
Mapeamento Direto
Forma mais simples de
mapeamento
Posição na cache depende do endereço
da palavra na memória principal (MP)
Cada palavra possui uma posição fixa
Grupo de palavras mapeado na mesma
posição da cache
Memória
Principal
CACHE
00
01
10
11
00 00
00 01
00