a) Mapeamento direto: - Tamanho do bloco: 16 bytes - Número de blocos na memória cache: 4K (4096 blocos) - Número de bits para identificar o bloco na memória cache: log2(4096) = 12 bits - Número de bits para identificar o byte dentro do bloco: log2(16) = 4 bits - Número de bits para a tag: 32 - 12 - 4 = 16 bits Formato da memória cache: - Tag: 16 bits - Bloco: 12 bits - Byte: 4 bits Formato do endereço da memória principal: - Bits que referenciam os campos da cache: 16 bits para a tag, 12 bits para o bloco e 4 bits para o byte. b) Mapeamento totalmente associativo: - Tamanho do bloco: 16 bytes - Número de blocos na memória cache: 4K (4096 blocos) - Número de bits para identificar o bloco na memória cache: log2(4096) = 12 bits - Número de bits para identificar o byte dentro do bloco: log2(16) = 4 bits - Número de bits para a tag: 32 - 12 - 4 = 16 bits Formato da memória cache: - Tag: 16 bits - Bloco: 12 bits - Byte: 4 bits Formato do endereço da memória principal: - Bits que referenciam os campos da cache: 16 bits para a tag, 12 bits para o bloco e 4 bits para o byte. c) Mapeamento associativo por conjunto: - Tamanho do bloco: 16 bytes - Número de blocos na memória cache: 4K (4096 blocos) - Número de conjuntos: 4K / 2 = 2K (2048 conjuntos) - Número de linhas por conjunto: 2 - Número de bits para identificar o conjunto na memória cache: log2(2048) = 11 bits - Número de bits para identificar o bloco dentro do conjunto: log2(2) = 1 bit - Número de bits para identificar o byte dentro do bloco: log2(16) = 4 bits - Número de bits para a tag: 32 - 11 - 1 - 4 = 16 bits Formato da memória cache: - Tag: 16 bits - Conjunto: 11 bits - Bloco: 1 bit - Byte: 4 bits Formato do endereço da memória principal: - Bits que referenciam os campos da cache: 16 bits para a tag, 11 bits para o conjunto, 1 bit para o bloco e 4 bits para o byte.
Para escrever sua resposta aqui, entre ou crie uma conta
Lógica de Programação e Algoritmos
•UNIMAR
Compartilhar