Baixe o app para aproveitar ainda mais
Prévia do material em texto
Mario A. Monteiro TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES MARIO A. MONTEIRO TÓPICOS AVANÇADOS SOBRE MEMÓRIAS ▪ Conceitos básicos de sistemas de computação ▪ Tópicos Avançados em Memória ✓ Hierarquia-Principio da localidade ✓ Endereçamento de memórias de semicondutores ✓ Memória Cache ▪ Microarquitetura dos processadores ▪ Arquiteturas da Atualidade (paralelismo e 64 bits) Mario A. Monteiro TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES MARIO A. MONTEIRO TÓPICOS AVANÇADOS EM MEMÓRIA MEMÓRIAS CACHE-ELEMENTOS DE PROJETO SUMÁRIO ➢ Princípio da Localidade -Hierarquia de Memórias ➢ Endereçamento de memórias de RAM ➢ Memórias Cache ▪ Elementos de Projeto ▪ Organização e Funcionamento Básico Mario A. Monteiro TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES MARIO A. MONTEIRO TÓPICOS AVANÇADOS EM MEMÓRIA MEMÓRIAS CACHE-ELEMENTOS DE PROJETO ❖ Mapeamento de Endereços ❖ Políticas de Substituição de Linhas ❖ Políticas de Escrita pela Cache ❖ Níveis; Tamanho de Caches; Largura de Linhas ➢ ELEMENTOS DE PROJETO DE CACHES Mario A. Monteiro TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES MARIO A. MONTEIRO TÓPICOS AVANÇADOS EM MEMÓRIA MEMÓRIAS CACHE-ELEMENTOS DE PROJETO Mapeando o endereço da MP ao endereço da Cache. ❖MAPEAMENTO DE ENDEREÇOS ✓ Mapeamento Direto ✓ Mapeamento Associativo ✓ Mapeamento Associativo por Conjuntos Mario A. Monteiro TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES MARIO A. MONTEIRO TÓPICOS AVANÇADOS EM MEMÓRIA MEMÓRIAS CACHE-ELEMENTOS DE PROJETO ➢ método pelo qual é estabelecido, de forma permanente, a relação entre endereço de bloco da MP com local na Cache Mapeamento Direto Isto é, cada bloco da MP é direcionado fisicamente para um endereço fixo de linha. A conexão é permanente. ❖MAPEAMENTO DE ENDEREÇOS Mario A. Monteiro TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES MARIO A. MONTEIRO TÓPICOS AVANÇADOS EM MEMÓRIA MEMÓRIAS CACHE-ELEMENTOS DE PROJETO • MP é logicamente organizada em blocos de 2 bytes cada (são 16 blocos). A Cache é organizada em “linhas” (blocos) de 2 bytes também, havendo 4 linhas. • A relação entre cada bloco e cada linha é DIRETA e permanente. • Nesse caso, cada linha tem atribuídos 4 blocos, um de cada vez (16 / 4, ou 16 blocos para 4 linhas) • Os blocos 0, 4, 8 e 12 são sempre alocados à mesma linha 0 (um em cada instante). • Os blocos 1, 5, 9 e 13 são sempre alocados à mesma linha 1 • Os blocos 2, 6, 10 e 14 são sempre alocados à mesma linha 2 • Os blocos 3, 7, 11 e 15 são sempre alocados à mesma linha 3 Mapeamento Direto EXEMPLO MP de 32 células (ou palavras) de 1 Byte cada Cache = 8 Bytes mais campo TAG e bits de controle (não mostrados) Mario A. Monteiro TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES MARIO A. MONTEIRO TÓPICOS AVANÇADOS EM MEMÓRIA MEMÓRIAS CACHE-ELEMENTOS DE PROJETO • Neste exemplo, a MP possui 4GB (endereçada a byte). • BE = 32 bits. O endereço completo tem 32 bits de largura * Blocos=Linha= 64 bytes (26). Então, endereço de cada célula (byte) tem 6 bits de largura 16 bits 10 bits 6 bits • Cache = 64KB /64B = 1024 linhas (1K = 210) de 64B cada. Assim, endereço de cada linha tem 10 bits de largura, pois 210 = 1024 * MP tem 4GB / 64B = 64M blocos * Como endereço total tem 32 bits e endereço de linha tem 10 bits e o endereço de cada célula (byte) = 6 bits, então o campo Tag = 32 – 10 – 6 = 16 bits de largura *Há 64K blocos alocados sempre para cada linha, um em cada instante, pois 216 = 64K Mapeamento Direto 32 bits 110012 = 2510 10002 = 810 1002 = 410 ByteLinhaTag Mario A. Monteiro TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES MARIO A. MONTEIRO TÓPICOS AVANÇADOS EM MEMÓRIA MEMÓRIAS CACHE-ELEMENTOS DE PROJETO Mapeamento Direto é simples de projetar e funcionar, já que as ligações são permanentes. Esta vantagem é também uma desvantagem, porque pode gerar uma série de conflitos de endereçamento, com aumento da quantidade de faltas (“misses”.) Mapeamento Direto Mario A. Monteiro TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES MARIO A. MONTEIRO TÓPICOS AVANÇADOS EM MEMÓRIA MEMÓRIAS CACHE-ELEMENTOS DE PROJETO No exemplo mostrado, os blocos 0, 4, 8 e 12 alocados na mesma linha. Pode acontecer de estar armazenado bloco 4 e o acesso identificar que o dado está no bloco 8 (tem-se uma falta, e o sistema gastará tempo trazendo o bloco 8 e levando de volta o bloco 4). Mapeamento Direto O acesso seguinte pode ser ao bloco 12 e nova falta. A execução de um loop longo pode acarretar esse problema. Mario A. Monteiro TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES MARIO A. MONTEIRO TÓPICOS AVANÇADOS EM MEMÓRIA MEMÓRIAS CACHE-ELEMENTOS DE PROJETO Considere um sistema de armazenamento constituido de uma memória principal (MP), endereçada por byte, e com capacidade máxima de 256KB, sendo organizada (para funcionamento com a cache) em blocos de 16 bytes. Considerando que este sistema usa o método de mapeamento direto na sua cache, a qual possui 128 linhas, pergunta-se: a) Em que linhas deverão ser armazenados os bytes que possuem os seguintes endereços: 1011 1110 0010 1001 1101 0000 1100 0001 1010 0011 0001 0111 1000 1111 b) Qual é o total de bits consumido nesta cache? Exercício 3 Mario A. Monteiro TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES MARIO A. MONTEIRO TÓPICOS AVANÇADOS EM MEMÓRIA MEMÓRIAS CACHE-ELEMENTOS DE PROJETO Indique uma vantagem e uma desvantagem do método de mapeamento direto. Quais são os campos que constituem o formato de endereço de memória para o método de mapeamento direto? Exercício 4
Compartilhar