Arquitetura de Computadores
Memória Cache
A funcao de uma memoria cache e assegurar performance a CPU tentando mapear as areas mais utilizadas da memoria principal dentro de uma memoria muito reduzida. Devido a isto, o modo como uma determinada area da memoria principal e mapeada na memoria cache e muito importante e traz melhorias de desempenho se escolhida da forma correta.
Existem tres formas principais de mapeamento da cache:
● Mapeamento direto: Cada posicao da memoria principal so pode ser mapeada para uma posicao da memoria cache.
● Totalmente associativo: Cada posicao da memoria principal pode ser mapeada em qualquer posicao da memoria cache.
● Associativo por conjunto: Cada posicao da memoria cache pode ser mapeada em N posicoes da cache.
Aprofundaremos cada um desses modos de mapeamento incluindo detalhes de estrutura de armazenamento da informacao.
Mapeamento Direto
Neste modo cada posicao da memoria principal e mapeada em apenas uma posicao da memoria cache. Como a cache e muito menor que a memoria principal, varias posicoes desta sao mapeadas numa mesma posicao da cache
- Vantagens:
Neste tipo de enderecamento, para achar um dado dentro da cache, basta ir diretamente na posicao enderecada e comparar a tag armazenada com a tag requisitada.
Esta operacao e rapida e nao exige tanta complexidade de implementacao. Alem disso, quando ha necessidade de substituir algum dado, nao ha overhead na escolha da posicao.
- Desvantagem:
Pouca localidade e