Questão nº 41
Questão de Tecnologia da Informação · FGV TRF1 2024 (nº 41)
O analista Josué recebeu a tarefa de calcular a configuração de uma memória cache, especificamente determinando o total de conjuntos disponíveis e o número de bits necessários para o índice desses conjuntos. Esse cálculo deve levar em consideração as seguintes especificações do sistema de memória cache:
• a memória principal possui capacidade de 1 GB;
• a memória cache tem uma capacidade total de 64 KB, com cada bloco de cache medindo 64 bytes;
• o sistema emprega um esquema de mapeamento associativo por conjunto de 2 vias (2-way set associative);
• a política de substituição utilizada é a LRU (Least Recently Used).
Levando em consideração essas informações, o resultado encontrado pelo analista é o de:
- A512 conjuntos, com 9 bits necessários para o índice do conjunto; (alternativa correta)
- B1024 conjuntos, com 10 bits necessários para o índice do conjunto;
- C2048 conjuntos, com 11 bits necessários para o índice do conjunto;
- D4096 conjuntos, com 12 bits necessários para o índice do conjunto;
- E8192 conjuntos, com 13 bits necessários para o índice do conjunto.
Resposta comentada
Gabarito Alternativa A
A memória cache é uma memória auxiliar rápida que armazena cópias de dados da memória principal para acelerar o acesso. Para organizar esses dados, a cache é dividida em blocos (ou linhas), e esses blocos são agrupados em conjuntos (sets) para determinar onde um dado da memória principal pode ser armazenado na cache. O índice do conjunto é a parte do endereço da memória principal que indica qual conjunto na cache deve ser verificado.
Para calcular o número de conjuntos e os bits do índice:
- Calcular o número total de blocos na cache:
- Capacidade da cache: 64 KB = bytes = $65536$ bytes
- Tamanho do bloco: 64 bytes
- Número de blocos = Capacidade da cache / Tamanho do bloco = $65536 bytes / \64 bytes = \1024$ blocos.
- Calcular o número de conjuntos:
- O sistema é 2-way set associative, o que significa que cada conjunto pode armazenar 2 blocos.
- Número de conjuntos = Número total de blocos / Associatividade = $1024 blocos / \2 = \512$ conjuntos.
- Calcular o número de bits para o índice do conjunto:
- O número de bits necessários para endereçar conjuntos é .
- Bits para o índice = . Como , são necessários $9$ bits.
(A) Correta: O cálculo resulta em 512 conjuntos e 9 bits para o índice do conjunto, conforme as especificações.
(B) Incorreta: Esta alternativa seria correta se a cache fosse totalmente associativa (1-way set associative), onde cada bloco seria um conjunto, ou se o cálculo da associatividade fosse ignorado, o que é um distrator comum.
(C) Incorreta: Os valores não correspondem aos cálculos baseados nas especificações fornecidas.
(D) Incorreta: Os valores não correspondem aos cálculos baseados nas especificações fornecidas.
(E) Incorreta: Os valores não correspondem aos cálculos baseados nas especificações fornecidas.
Fonte: FGV TRF1 2024 Técnico Judiciário - Tecnologia da Informação (Caderno Tipo 1). Reproduzida para fins de estudo.