Hierarquia de memória

5,028 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
5,028
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
77
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Hierarquia de memória

  1. 1. Arquitetura de Computadores Professor: Sérgio Vieira Email: sergiosvieira.fatene@gmail.com Data: 30-10-2012 Aula: Hierarquia de Memória1
  2. 2. A Hierarquia de Memória • Os programas gastam a maior parte do tempo acessando a memória • Programadores gostariam de ter ao ser dispor quantidade ilimitada de memória com acesso instantâneo • O projeto do sistema de memória segue alguns princípios os quais tentam dar a ilusão ao programador de que ele dispõe de uma grande quantidade de memória com tempo de acesso pequeno2
  3. 3. A Hierarquia de Memória (cont.) • Ao estudar uma determinada matéria, você não precisa acessar todos os seus livros/cadernos. • Portanto, basta deixar sobre sua mesa os livros que estão sendo usados para o estudo. Os demais livros podem ficar nos seus lugares, nas prateleiras... • Talvez sua mesa não pudesse acomodar todos os seus livros/cadernos • E caso pudesse, o tempo para encontrar a matéria em um livro seria demasiado grande, dificultando o estudo3
  4. 4. A Hierarquia de Memória (cont.)As restrições de projeto de uma memória podem ser resumidas em trêsquestões: 1. Capacidade2. Velocidade: para obter melhor desempenho, a velocidade da memória deveser compatível com a do processador.3. Custo: para que um sistema seja economicamente viável, o custo da memóriadeve ser compatível com o dos demais componentes.4
  5. 5. Hierarquia de memória (cont.)O uso de uma hierarquia de memórias, em vez de um único componente outecnologia de memória, em um projeto de computadores é usado como saídapara o dilema:"É desejável usar uma tecnologia de memória capaz de fornecer uma grandecapacidade de armazenamento de dados (custo por bit é mais baixo). Entretanto,para obter um desempenho melhor, o projetista precisa utilizar memórias caras,que apresentam tempo de acesso menor, mas com capacidade relativamentebaixa."5
  6. 6. A Hierarquia de Memória (cont.) • Localidade Temporal: "se um item é referenciado, ele tende a ser referenciado novamente dentro de um espaço curto de tempo." • A maioria dos programas contém laços (instruções e dados do laço tendem a ser acessados de maneira repetitiva). • Localidade Espacial: "se um item é referenciado, itens cujos endereços sejam próximos dele tendem a ser logo referenciados." • Nos programas, as instruções estão armazenadas na memória de maneira seqüencial; os itens de matrizes e de registros também se encontram armazenados de maneira seqüencial.6
  7. 7. Hierarquia de memória (cont.)A medida que descemos em uma hierarquia de memórias, as relações abaixosão válidas: 1. O custo por bit diminui 2. A capacidade aumenta 3. O tempo de acesso aumenta 4. A frequência de acesso à memória pelo processador diminuiAssim memórias mais caras, menores e mais rápidas são combinadas commemórias maiores, mais baratas e mais lentas.7
  8. 8. A Hierarquia de Memória (cont.)SRAM (Static Random Access Memory) é um tipo de memória de acessoaleatório que mantém os dados armazenados desde que seja mantida suaalimentação, não precisando que as células que armazenam os bits sejamatualizadas de tempo em tempo), como é o caso das memórias DRAM.Embora sejam mais caras e ocupem menos espaço, quando comparadas àsDRAM, possuem a vantagem de serem bem mais rápidas, justificando seu usonas memórias cache L1 e L2. Além disso, as memórias estáticas consomemmais energia e aquecem mais que as DRAM.8
  9. 9. A Hierarquia de Memória (cont.)DRAM é um tipo de memória RAM de acesso direto que armazena cada bit dedados num condensador ou Capacitor. O número de elétrons armazenados nocondensador determina se o bit é considerado 1 ou 0. Como vai havendo fuga deelétrons do condensador, a informação acaba por se perder, a não ser que acarga seja atualizada periodicamente.Embora esse fenômeno da perda de carga não ocorra nas memórias RAMestáticas (SRAM), as DRAM possuem a vantagem de terem custo muito menor edensidade de bits muito maior, possibilitando em um mesmo espaço armazenarmuito mais bits.9
  10. 10. A Hierarquia de Memória (cont.)Tecnologias de Fabricação de Memórias SRAM + + Capacidade DRAM Custo Velocidade Magnética +10
  11. 11. A Hierarquia de Memória (cont.) Tecnologia Usada Tempo de Acesso Custo por Mbyte em 1997 SRAM 5-25ns $100 a $250 DRAM 60-120ns $5 a $10 Disco Magnético 10-20 milhões de ns $0,10 a $0,2011
  12. 12. A Hierarquia de Memória (cont.)Microprocessador: • Caches integradas (L1, L2, L3...) • Banco de registradores (32 a 128, tipicamente)12
  13. 13. 13
  14. 14. A Hierarquia de Memória (cont.)Objetivo do sistema hierárquico de memória é apresentar ao usuário umacapacidade de memória próxima à disponibilizada pela tecnologia mais barata, eum tempo de acesso próximo ao permitido pela tecnologia mais cara.14
  15. 15. A Hierarquia de Memória (cont.)Microprocessador: • Caches integrados que Obs: à medida processador a tecnologia avança, outros níveis regs intermediários tempo de podem existir cache L1 acesso cresce cache L2 principal secundária capacidade15
  16. 16. Definições • A princípio, uma hierarquia de memória pode ter qualquer número de níveis • Entretanto, os dados sempre serão copiados entre dois níveis adjacentes (i e i+1, onde i está mais próximo do processador) • Podemos concentrar nossa atenção em dois níveis quaisquer i e i+1: i, que chamaremos de superior (mais próximo do processador) e i+1, que chamaremos de inferior16
  17. 17. Definições (cont.) • Bloco: unidade mínima de informação, contendo um certo número de palavras de memória. • Exemplo, com 8 palavras (de memória)17
  18. 18. XXXXX000 XXXXX001 Informação* XXXXX010 XXXXX011 XXXXX100 XXXXX101 XXXXX110 XXXXX111 * informação = instrução ou dado18
  19. 19. Definições (cont.) • Se a informação solicitada pelo processador estiver presente no nível superior da hierarquia, ocorre um acerto (hit) • Se a informação solicitada pelo processador não puder ser encontrada no nível superior, a tentativa de encotrá-la gera uma falta (fault) • Quando ocorre uma falta, o nível imediatamente inferior é acessado, na tentativa de se recuperar o bloco com a informação solicitada pelo processador19
  20. 20. Definições (cont.) • Se um bloco está presente no nível i, então ele também está presente no nível i+1 processador Cache L1 Nível 1 Cache L2 Nível 2 Memória principal Nível 320
  21. 21. Definições (cont.) • A taxa de acertos ou razão de acertos (hit ratio) corresponde à fração dos acessos à memória encontrados no nível superior (com freqüência, é usada como medida de desempenho do sistema de memória) • A taxa de faltas (= 1- taxa de acertos) é a fração de acessos à memória não encontrados no nível superior21
  22. 22. Definições (cont.) • Tempo de acerto (hit time) é o tempo necessário para acessar o nível superior da hierarquia, que inclui o tempo necessário para determinar se a tentativa de acesso à informação vai gerar um acerto ou uma falta • A penalidade por falta (fault penalty) é o tempo necessário para substituir um dos blocos do nível superior pelo bloco do nível inferior que contém a informação desejada, mais o tempo para enviar a informação ao processador22

×