Escreva a fórmula do tempo médio de acesso a memória (Average Memory Access Time AMAT) quando há dois níveis de cache L1 e L2.

Passo 1

Beleza, vamos lá! O exercício pede para escrever a fórmula do Tempo Médio de Acesso à Memória (AMAT) quando temos dois níveis de cache: L1 e L2. Isso faz parte do conteúdo de Arquitetura de Computadores, especificamente sobre hierarquia de memória. Para resolver, vamos precisar entender como os caches L1 e L2 influenciam no tempo de acesso à memória.

Passo 2

Primeiro, vamos entender o que é o Tempo Médio de Acesso à Memória (AMAT). Ele representa o tempo médio que o processador leva para acessar uma informação na memória, considerando possíveis acessos aos caches antes de ir para a memória principal.

Passo 3

Agora, vamos considerar o cache L1. O cache L1 é a memória mais rápida e mais próxima do processador, mas geralmente tem menor capacidade. O tempo para acessar o L1 chamamos de .

Passo 4

Nem sempre a informação está no L1. A taxa de acertos no L1 é a probabilidade da informação estar lá. Se não estiver, temos uma taxa de falta no L1, que podemos chamar de (Miss Rate 1).

Passo 5

Quando ocorre uma falta no L1 ( ), o processador tenta acessar o cache L2. O tempo para acessar o L2 é .

Passo 6

Assim como no L1, nem toda informação estará no L2. A taxa de falta no L2 é .

Passo 7

Se a informação também não estiver no L2 ( ), então o processador precisa acessar a memória principal, que tem um tempo de acesso .

Passo 8

Juntando tudo isso, o Tempo Médio de Acesso à Memória (AMAT) considera:
  1. O tempo para acessar o L1.
  2. Se faltar no L1, adiciona o tempo para acessar o L2.
  3. Se faltar no L2 também, adiciona o tempo para acessar a memória principal.

Resposta

A fórmula do Tempo Médio de Acesso à Memória (AMAT) com dois níveis de cache e é:
Onde:
  • é o tempo de acesso ao cache L1.
  • é a taxa de falta no cache L1.
  • é o tempo de acesso ao cache L2.
  • é a taxa de falta no cache L2.
  • é o tempo de acesso à memória principal.

Exercícios relacionados

Considere um computador com um espaço de endereçamento de 12-bits (isto é, cada endereço de memória tem 12 bits de largura) e a memória é byte endereçável. A organização hierárquica de memória tem um cache de dados ( -cache) com capacidade de 8 blocos, onde cada bloco do cache é de 8 bytes (excluindo qualquer overhead).
Durante a execução de um determinado programa, o processador emite uma sequência de referências de leitura de memória. A string de referência de memória é demonstrada na sequência de endereços a seguir: 0x200, 0x204, 0x208, 0x20C, 0x2F4, 0x2F0, 0x200, 0x204, .
Este padrão de acesso é repetido quatro (4) vezes (como um laço que itera 4 vezes).
a) Simule a execução do fragmento de código ilustrado acima, considerando a organização de memória descrita e apresente como resposta a configuração final do cache após a execução de cada iteração do laço. Considere que o cache está inicialmente vazio (limpo) e com função de mapeamento direto. Calcule a taxa de acerto (hit rate) da execução.
b) Repita o item (a), considerando um cache de mapeamento totalmente associativo e algoritmo de substituição LRU.
c) Repita o item (a), considerando um cache de mapeamento associativo por conjunto de 4vias e algoritmo de substituição LRU.
Por que um cache de segundo ou terceiro nível é útil? Que tipo de benefícios proporciona ao desempenho do sistema?
a) Explique como isso afeta o cálculo do tempo médio de acesso à memória (AMAT).
b) Quais outras técnicas de aprimoramento de cache podem fornecer uma solução para o mesmo problema?
O que significam princípio da localidade da referência, princípio da inclusão e princípio da coerência cache na organização hierárquica de memória?
Defina o que é um cache com política de escrita write-through? Essa política é mais rápida/mais lenta do que um cache com política write-back em relação ao tempo que consome nas operações de escrita.