CPUs Caches e CPUs Operações no Cache Termos

Propaganda
CPUs
Caches.
Gerenciamento de Memória.
UNIVERSIDADE DE SÃO PAULO
Sistemas Embarcados
Jorge Luiz e Silva
Caches e CPUs
CPU
data
Posições da Memória Principal são mapeadas no
Cache.
data
cache
controller
address
Operações no Cache
cache
address
main
memory
data
Pode-se ter caches para:
instruções;
dados;
dados+ instruções (unificado).
Tempo de acesso à memória não é
determinístico.
Termos
Cache hit: informação está no cache.
Cache miss: informação não está no cache.
Working set: Conjunto de posições no cache utilizados
em um intervalo de tempo
Performance do Sistema de Memória
h = taxa de cache hit.
tcache = tempo de acesso ao cache, tmain =
tempo de acesso à memória principal.
Tempo médido de acesso à Memória:
tav = htcache + (1-h)tmain
1
Tempo de acesso para Múltiplos níveis de
cache
Múltiplos níveis de cache
h1 = taxa de cache hit.
h2 = Taxa para miss em L1, hit em L2.
CPU
L1 cache
L2 cache
Tempo médio de acesso à memória:
tav = h1tL1 + (h2-h1)tL2 + (1- h1-h2)tmain
CPU
Políticas de Reposição
Politica de Reposição: estratégias para escolher no
cache quem sai e quem fica.
Duas estratégias populares:
Random.
Least-recently used (LRU).
L1 cache
L2 cache
Organização do Cache
Fully-associative: Qualquer posição de memória pode
ser armazenado em qualquer posição no cache
(nunca foi implementado).
Direct-mapped: cada posição de memória é
mapeado exatamente em uma posição no
cache.
N-way set-associative: cada posição de memória
pode estar em uma de n posições.
Operações de Write
Write-through: copia imediatamente na memória
principal.
Write-back: copia para a memória principal
somente quando a posição é removida do
cache.
Memory management units
…
Memory management unit (MMU) translates
addresses:
logical
address
CPU
physical
memory
address
management
unit
main
memory
2
Terefas da MMU
Translação de Endereços
Mover programas para memória física durante
execução.
Requer registradores/tabelas para permitir um
mapeamento para endereços físicos.
Memória Virtual:
Dois esquemas básicos:
Imagem da memória em memória secundária;
Imagem retorna para a memoria principal em
função de execução.
Falta de Página: solicita por posições não
presentes na memória principal.
Segmentos e Páginas
page 1
page 2
segment 1
memory
segmentado;
paginado.
Segmentação e paginação podem ser
combinados.
Translação de endereço de Cache
Tabela grande de translação requer acesso à
memória principal.
TLB(Translation Lookaside buffer) : Para
translação de endereço em cache.
pequeno.
segment 2
3
Download