Académique Documents
Professionnel Documents
Culture Documents
Princpios da mem
oria cache
Memoria Cache
Prof. Dr. Maurcio Fernando Lima Pereira
Instituto de Computacao - UFMT
2 de maio de 2012
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Conteudo
Conte
udo extrado de
Captulo 4 do livro do Stallings
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Hierarquia de mem
oria
Internas (Processador)
Externas (Dispositivos de E/S)
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Caractersticas dos sistemas de mem
oria
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Caractersticas dos sistemas de mem
oria
Localizac
ao
CPU (registradores, mem
oria de microprograma)
Interna (cache, RAM)
Externa (discos, fitas)
Capacidade
Internamente relacionado ao tamanho de palavra da
maquina(8, 16, 32 bits)
A unidade de organizac
ao natural
Em geral o tamanho em bits de um inteiro e da instruc
ao
Variaco
es na arquiteturas: x86 tem instruco
es de tamanhos
diferentes
Externamente ao n
umero de Bytes ou palavras
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Caractersticas dos sistemas de mem
oria
Unidades enderec
aveis
Menor local que pode ser enderecado exclusivamente.
Por Byte
Por Palavra
Endereco com A bits permite enderecar 2A unidades
Unidade de transfer
encia
Interna:
Normalmente controlada pela largura do barramento.
Externa:
Normalmente um bloco que e muito maior que uma palavra.
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Caractersticas dos sistemas de mem
oria
M
etodos de acesso
Sequencial:
Comeca no incio e le em ordem.
Tempo de acesso depende da localizac
ao dos dados e local
anterior.
Por exemplo, fita.
Direto:
Blocos individuais possuem endereco exclusivo.
Acesso saltando para vizinhanca com busca sequencial para
localizac
ao final
Tempo de acesso depende da localizac
ao e local anterior.
Por exemplo, disco.
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Caractersticas dos sistemas de mem
oria
M
etodos de acesso
Aleat
orio:
Enderecos individuais identificam localizaco
es com exatid
ao.
Tempo de acesso e independente da localizac
ao ou acesso
anterior.
P.e., RAM.
Associativo:
Dados s
ao localizados por uma comparac
ao com conte
udo de
uma parte do armazenamento
Analisa-se alguns bits do endereco
Tempo de acesso e independente do local ou acesso anterior.
P.e., cache.
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Caractersticas dos sistemas de mem
oria
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Caractersticas dos sistemas de mem
oria
1
T empo de ciclo
Mem
oria de acesso n
ao aleat
orio
TN = TA +
n
R
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Caractersticas dos sistemas de mem
oria
Tipo fsico
Semicondutor: RAM, cache, registradores.
Magnetico: Disco e fita.
Optico:
CD e DVD
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Hierarquia de mem
oria
Restricoes de mem
oria de um computador estao relacionadas
a tres questoes:
Quanto? Capacidade.
Que velocidade?
Quanto mais r
apido a CPU for atendida melhor.
Menor tempo de acesso
A que custo?
Boa relac
ao de custo
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Hierarquia de mem
oria
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Hierarquia de mem
oria - Estudo de caso
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Hierarquia de mem
oria - Exerccios
Um sistema de mem
oria com dois nveis tem um tempo medio
de acesso de 14 ns. O nvel mais alto do sistema de memoria
tem uma taxa de acertos de 85% e um tempo de acesso de 8
ns. Qual e o tempo de acesso do nvel mais baixo?
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Hierarquia de mem
oria
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Hierarquia de mem
oria - Princpio da localidade
Localidade temporal
Localizac
oes de mem
oria recentemente acessadas sao
acessadas novamente
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Introducao
Hierarquia de mem
oria - Princpio da localidade
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Observac
oes
Na linha de cache existe espaco para tag e bits de controle
A largura da linha sem tag e bits de controle e do tamanho do
bloco de mem
oria
A qualquer momento um subconjunto de blocos da memoria
pode estar nas linhas da cache
Tag ajuda a identificar de qual bloco da memoria vieram os
dados que estao na linha.
Tag em geral e parte do endereco
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
m-11, 2m-1,3m-1,. . . , 2s -1
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Tag (s-r)
Linha (r)
Byte ou Palavra (w bits menos significativos)
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
0000
TAG
0000
LINHA
00
PALAVRA
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Cache de 64 KBytes
Memoria principal de 16 MBytes com cada byte enderecavel
diretamente por endereco
Bloco de 4 bytes (Mem
oria principal cache)
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Cache de 64 KBytes
Memoria principal de 16 MBytes com cada byte enderecavel
diretamente por endereco de 224 (224 = 16 M)
Bloco de 4 bytes (Mem
oria principal cache)
Memoria principal consiste de 4M blocos de 4 bytes.
Cache consiste de 16K linhas
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Tag (s)
Palavra (w)
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
00000000
TAG
00
PALAVRA
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
00000
TAG
000
CONJUNTO
00
PALAVRA
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
TAG
13
3
3
8
9
12
34
12
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
Bytes da linha
2 3 4 5
2 3 4 5
2 3 4 5
2 3 4 5
2 3 4 5
2 3 4 5
2 3 4 5
2 3 4 5
2 3 4 5
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Aleat
oria: Estudo mostram que e apenas ligeiramente inferior
aos algoritmos baseado no uso
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
2. Write-back
Minimiza escritas na mem
oria principal, com atualizacoes
apenas na mem
oria cache
Quando ocorre uma escrita, ativa-se um bit de modificac
ao
associado a linha
Quando o bloco e substitudo, ele e escrito de volta na
mem
oria principal se o bit de modificac
ao estiver ativo
Desvantagem: Partes da mem
oria ficam invalidas e isto
bloqueia o acesso de outros dispositivos de entrada e sada. A
cache ira liberar o acesso aos dispositivos de E/S
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Observac
ao de barramento com write-through
cada controlador monitora as linhas de barramento para
detectar operac
oes de escrita
escrita de outros mestres invalidam c
opia local
Transpar
encia de hardware
Hardware extra que garante que as atualizacoes de uma cache
na mem
oria principal sao refletidas nas demais caches
Mem
oria n
ao cacheavel
Uma parte da mem
oria principal compartilhada mantida fora
das linhas de cache
Acessos aos enderecos compartilhados sempre ocasional cache
miss
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache
Vis
ao geral do sistema de mem
oria do computador
Princpios da mem
oria cache