Buscar

Exercícios - memória cache

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Exercícios – Memória Cache 
Prof. Lúcio 
1. Seja uma memória principal de 4GB e uma memória cache associada de 64KB dividida 
em 1k linhas, com 64B de dados cada uma. Mostre como ficaria o formato de 
endereçamento para os mapeamentos direto, associativo e associativo por conjunto 
com 4 vias (linhas). 
 
2. Seja uma memória principal constituída de blocos com largura de 32B, usando-se 
mapeamento direto a uma cache com 128KB. Em um dado instante o processador 
realiza um acesso, colocando o seguinte endereço: 3FC92B6H. Determine qual deverá 
ser o valor binário da linha que será localizada pelo sistema de controle da cache. 
 
3. Considere uma memória principal com 64MB de capacidade associada a uma memória 
cache que possui 2K linhas, cada uma com largura de 16B. Determine o formato do 
endereço para ser interpretado pelo sistema de controle da cache. 
 
4. Considere um sistema de computação com uma memória cache de 32KB de 
capacidade, constituída de linhas com 8 bytes e conjunto de 4 vias. A memória 
principal possui capacidade de 16MB. Calcule: 
 
a) Total de bits para a parte de dados 
b) Quantidade de linhas da cache 
c) Quantidade de conjuntos 
d) Quantidade de blocos 
e) Quantidade de bits do campo tag 
 
 
5. Um computador possui uma memória principal com capacidade para 4 GB. Cada célula 
desta memória tem capacidade para 16 bits (word). Foi colocada neste computador 
uma memória cache de mapeamento direto com capacidade para 512 KB. Cada linha 
desta cache tem capacidade para 64B. Supondo que a CPU faça um acesso ao 
endereço (73A1 49DE)H, Calcule: 
 
 a) O total de bits do endereço; 
 b) O total de bits para o número da word (2 bytes); 
 c) O total de bits para o número da linha; 
 d) O total de bits para a Tag; 
 e) O número da word (em hexadecimal); 
 f) O número da linha (em hexadecimal); 
 g) O valor da Tag (em hexadecimal). 
 
 
6. Linhas de 4 Bytes são mapeadas associativamente de uma memória principal de 64 
Bytes para uma cache de 16 Bytes utilizando-se a política de substituição LRU. Sabendo 
que o processador fez referências aos endereços 0x2A, 0x3B, 0x7, 0x2, 0x3C, 0x3F, 
0x04 e 0xA nessa exata ordem, identifique as TAGs hexadecimais presentes na cache. 
 
7. Utilize os dados abaixo sobre um mapeamento direto para responder os itens que se 
seguem: 
 Capacidade da Memória Principal: 512 Bytes 
 Capacidade da Memória cache: 64 Bytes 
 Tamanho da linha mapeada: 8 Bytes 
 
 a) Cite dois endereços de dados da MP que só podem estar na cache ao mesmo tempo. 
 b) Cite dois endereços de dados da MP que não podem estar na cache ao mesmo tempo. 
 
8. Linhas de tamanho desconhecido são mapeadas de uma memória principal para uma 
memória cache. Sabendo a memória cache é 256 vezes maior que a linha e que a 
memória principal é 4 vezes maior que a cache, responda: 
 
 a) Se o mapeamento for associativo, quantas TAGs diferentes são possíveis? 
 b) Se o mapeamento for direto, quantas TAGs diferentes são possíveis? 
 c) Se o mapeamento for associativo, em quantas linhas uma TAG deve buscada até que 
se possa concluir que houve um cache miss? 
d) Se o mapeamento for direto, em quantas linhas uma TAG deve buscada até que se 
possa concluir que houve um cache miss? 
 
9. Considere que o dado de endereço 12345ABCDh está em cache, para onde foi 
mapeado diretamente. Sabendo que a memória cache em questão tem capacidade de 
4MB e que linhas de 4 Bytes transitam entre esta cache e uma memória principal de 
8GB, responda: 
 
a) Qual o endereço de cache onde o dado se encontra? 
b) Quais os endereços dos outros Bytes da mesma linha que foram trazidos à cache 
juntamente com dado em questão? 
 
10. Blocos de 64 Bytes são mapeados de uma memória principal 1GB em uma memória 
cache de 512kB. Sabendo que o processador requisitou os dados de endereços 
003800A0h, 005000C8h, 0107FFEAh, 00300089h e 005000C8h, responda: 
 
a) Informe a quantidade de cache hits e cache misse no caso de um mapeamento 
DIRETO. 
b) Em que linha da cache o dado requisitado foi encontrado quando houve o último 
cache hit? Considere ainda que o mapeamento foi DIRETO. 
c) Se o mapeamento tiver sido ASSOCIATIVO, que TAG deve ter sido buscada na cache 
para verificar se o PRIMEIRO dado requisitado estava em cache? 
d) Ainda em relação ao item anterior, em quantas linhas de cache essa TAG foi buscada?

Mais conteúdos dessa disciplina