SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
Arquitetura de Computadores
    Professor:   Sérgio Vieira
        Email:   sergiosvieira.fatene@gmail.com
         Data:   30-10-2012
         Aula:   Hierarquia de Memória




1
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 pequeno




2
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 estudo




3
A Hierarquia de Memória (cont.)
As restrições de projeto de uma memória podem ser resumidas em três
questões:
  1. Capacidade
2. Velocidade: para obter melhor desempenho, a velocidade da memória deve
ser compatível com a do processador.
3. Custo: para que um sistema seja economicamente viável, o custo da memória
deve ser compatível com o dos demais componentes.




4
Hierarquia de memória (cont.)
O uso de uma hierarquia de memórias, em vez de um único componente ou
tecnologia de memória, em um projeto de computadores é usado como saída
para o dilema:
"É desejável usar uma tecnologia de memória capaz de fornecer uma grande
capacidade 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 relativamente
baixa."




5
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
Hierarquia de memória (cont.)
A medida que descemos em uma hierarquia de memórias, as relações abaixo
sã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 diminui
Assim memórias mais caras, menores e mais rápidas são combinadas com
memórias maiores, mais baratas e mais lentas.




7
A Hierarquia de Memória (cont.)
SRAM (Static Random Access Memory) é um tipo de memória de acesso
aleatório que mantém os dados armazenados desde que seja mantida sua
alimentação, não precisando que as células que armazenam os bits sejam
atualizadas de tempo em tempo), como é o caso das memórias DRAM.
Embora sejam mais caras e ocupem menos espaço, quando comparadas às
DRAM, possuem a vantagem de serem bem mais rápidas, justificando seu uso
nas memórias cache L1 e L2. Além disso, as memórias estáticas consomem
mais energia e aquecem mais que as DRAM.




8
A Hierarquia de Memória (cont.)
DRAM é um tipo de memória RAM de acesso direto que armazena cada bit de
dados num condensador ou Capacitor. O número de elétrons armazenados no
condensador determina se o bit é considerado 1 ou 0. Como vai havendo fuga de
elétrons do condensador, a informação acaba por se perder, a não ser que a
carga seja atualizada periodicamente.
Embora esse fenômeno da perda de carga não ocorra nas memórias RAM
estáticas (SRAM), as DRAM possuem a vantagem de terem custo muito menor e
densidade de bits muito maior, possibilitando em um mesmo espaço armazenar
muito mais bits.




9
A Hierarquia de Memória (cont.)
Tecnologias de Fabricação de Memórias
                SRAM         +                          +
                                        Capacidade
                DRAM
                            Custo                    Velocidade
                Magnética                  +




10
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,20




11
A Hierarquia de Memória (cont.)
Microprocessador:
     • Caches integradas (L1, L2, L3...)
     • Banco de registradores (32 a 128, tipicamente)




12
13
A Hierarquia de Memória (cont.)
Objetivo do sistema hierárquico de memória é apresentar ao usuário uma
capacidade de memória próxima à disponibilizada pela tecnologia mais barata, e
um tempo de acesso próximo ao permitido pela tecnologia mais cara.




14
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


                                        capacidade




15
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 inferior




16
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
XXXXX000
                              XXXXX001   Informação*
                              XXXXX010
                              XXXXX011
                              XXXXX100
                              XXXXX101
                              XXXXX110
                              XXXXX111



     * informação = instrução ou dado




18
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
       processador




19
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 3



20
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 superior




21
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
       processador




22

Mais conteúdo relacionado

Mais procurados

Sistemas Operacionais - Aula 05 (Concorrência)
Sistemas Operacionais - Aula 05 (Concorrência)Sistemas Operacionais - Aula 05 (Concorrência)
Sistemas Operacionais - Aula 05 (Concorrência)Leinylson Fontinele
 
Banco de Dados II: Normalização de dados e as Formas Normais (aula 5)
Banco de Dados II: Normalização de dados e as Formas Normais (aula 5)Banco de Dados II: Normalização de dados e as Formas Normais (aula 5)
Banco de Dados II: Normalização de dados e as Formas Normais (aula 5)Gustavo Zimmermann
 
Introdução - Arquitetura e Organização de Computadores
Introdução - Arquitetura e Organização de ComputadoresIntrodução - Arquitetura e Organização de Computadores
Introdução - Arquitetura e Organização de ComputadoresWellington Oliveira
 
Processos threads senai
Processos threads senaiProcessos threads senai
Processos threads senaiCarlos Melo
 
Montagem manutenção de computadores
Montagem manutenção de computadoresMontagem manutenção de computadores
Montagem manutenção de computadoressetilsonadobmov
 
Sistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFSSistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFSCleber Ramos
 
Gerenciamento de Arquivos Nos Sistemas Operacionais
Gerenciamento de Arquivos Nos Sistemas OperacionaisGerenciamento de Arquivos Nos Sistemas Operacionais
Gerenciamento de Arquivos Nos Sistemas OperacionaisLeandro Júnior
 
Teste modulo7 imei carlos dias
Teste modulo7 imei carlos diasTeste modulo7 imei carlos dias
Teste modulo7 imei carlos diasPaulo Nogueira
 
Aula Lógica de Programação - cap1
Aula Lógica de Programação - cap1 Aula Lógica de Programação - cap1
Aula Lógica de Programação - cap1 Cloves da Rocha
 
Módulo 1 - Noções Básicas de Hardware e Software
Módulo 1 - Noções Básicas de Hardware e SoftwareMódulo 1 - Noções Básicas de Hardware e Software
Módulo 1 - Noções Básicas de Hardware e SoftwarePaulo Guimarães
 
Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas OperacionaisAdir Kuhn
 
Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoBanco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoLeinylson Fontinele
 
Aula 8 - Repetição PARA ATÉ - parte 1
Aula 8 - Repetição PARA ATÉ - parte 1Aula 8 - Repetição PARA ATÉ - parte 1
Aula 8 - Repetição PARA ATÉ - parte 1Pacc UAB
 
Processadores - CPU
Processadores - CPUProcessadores - CPU
Processadores - CPURoney Sousa
 
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)Leinylson Fontinele
 

Mais procurados (20)

Sistemas Operacionais - Aula 05 (Concorrência)
Sistemas Operacionais - Aula 05 (Concorrência)Sistemas Operacionais - Aula 05 (Concorrência)
Sistemas Operacionais - Aula 05 (Concorrência)
 
SO-04 Escalonamento de Processos
SO-04 Escalonamento de ProcessosSO-04 Escalonamento de Processos
SO-04 Escalonamento de Processos
 
Banco de Dados II: Normalização de dados e as Formas Normais (aula 5)
Banco de Dados II: Normalização de dados e as Formas Normais (aula 5)Banco de Dados II: Normalização de dados e as Formas Normais (aula 5)
Banco de Dados II: Normalização de dados e as Formas Normais (aula 5)
 
Introdução - Arquitetura e Organização de Computadores
Introdução - Arquitetura e Organização de ComputadoresIntrodução - Arquitetura e Organização de Computadores
Introdução - Arquitetura e Organização de Computadores
 
Processos threads senai
Processos threads senaiProcessos threads senai
Processos threads senai
 
Montagem manutenção de computadores
Montagem manutenção de computadoresMontagem manutenção de computadores
Montagem manutenção de computadores
 
Barramentos
Barramentos Barramentos
Barramentos
 
Sistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFSSistemas de Arquivos FAT x NTFS
Sistemas de Arquivos FAT x NTFS
 
Aula 08 - Placa Mãe
Aula 08 - Placa MãeAula 08 - Placa Mãe
Aula 08 - Placa Mãe
 
Aula 12 - Processador
Aula 12 - ProcessadorAula 12 - Processador
Aula 12 - Processador
 
Gerenciamento de Arquivos Nos Sistemas Operacionais
Gerenciamento de Arquivos Nos Sistemas OperacionaisGerenciamento de Arquivos Nos Sistemas Operacionais
Gerenciamento de Arquivos Nos Sistemas Operacionais
 
Barramentos
BarramentosBarramentos
Barramentos
 
Teste modulo7 imei carlos dias
Teste modulo7 imei carlos diasTeste modulo7 imei carlos dias
Teste modulo7 imei carlos dias
 
Aula Lógica de Programação - cap1
Aula Lógica de Programação - cap1 Aula Lógica de Programação - cap1
Aula Lógica de Programação - cap1
 
Módulo 1 - Noções Básicas de Hardware e Software
Módulo 1 - Noções Básicas de Hardware e SoftwareMódulo 1 - Noções Básicas de Hardware e Software
Módulo 1 - Noções Básicas de Hardware e Software
 
Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas Operacionais
 
Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e EspecializaçãoBanco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados I Aula 06 - Generalização e Especialização
 
Aula 8 - Repetição PARA ATÉ - parte 1
Aula 8 - Repetição PARA ATÉ - parte 1Aula 8 - Repetição PARA ATÉ - parte 1
Aula 8 - Repetição PARA ATÉ - parte 1
 
Processadores - CPU
Processadores - CPUProcessadores - CPU
Processadores - CPU
 
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
Sistemas Operacionais - Aula 02 (Visão geral de sistemas operacionais)
 

Semelhante a Hierarquia de Memória

Arquitetura de computadores – memórias
Arquitetura de computadores – memóriasArquitetura de computadores – memórias
Arquitetura de computadores – memóriasElaine Cecília Gatto
 
Apostila 2 conceitos de hardware e software
Apostila 2   conceitos de hardware e softwareApostila 2   conceitos de hardware e software
Apostila 2 conceitos de hardware e softwarePaulo Fonseca
 
Memoria cache princípio da localidade
Memoria cache   princípio da localidadeMemoria cache   princípio da localidade
Memoria cache princípio da localidadeClaudia Costa
 
Memoria do computador
Memoria do computadorMemoria do computador
Memoria do computadorMarcos Amauri
 
Memória Interna - Arquitetura e Organização de Computadores
Memória Interna - Arquitetura e Organização de ComputadoresMemória Interna - Arquitetura e Organização de Computadores
Memória Interna - Arquitetura e Organização de ComputadoresWellington Oliveira
 
Apresentação (4).pptx
Apresentação (4).pptxApresentação (4).pptx
Apresentação (4).pptxKennedySilva44
 
Fundamento Hardware - Aula 002
Fundamento Hardware - Aula 002Fundamento Hardware - Aula 002
Fundamento Hardware - Aula 002Cláudio Amaral
 
Cap-6-Multiplrocessadores.pdf
Cap-6-Multiplrocessadores.pdfCap-6-Multiplrocessadores.pdf
Cap-6-Multiplrocessadores.pdfHurgelNeto
 
Arquitectura de memória
Arquitectura de memóriaArquitectura de memória
Arquitectura de memóriaSandro Lopes
 
Aula 4 de Arquitetura de Computadores
Aula 4 de Arquitetura de ComputadoresAula 4 de Arquitetura de Computadores
Aula 4 de Arquitetura de ComputadoresMarco Silva
 
Resumos sobre tecnologias de informação e conceitos basicos
Resumos sobre tecnologias de informação e conceitos basicosResumos sobre tecnologias de informação e conceitos basicos
Resumos sobre tecnologias de informação e conceitos basicosJoo200
 
Chrome server2 print_http_www_hardware_com_br_dicas_entendendo_cache_ht_13737...
Chrome server2 print_http_www_hardware_com_br_dicas_entendendo_cache_ht_13737...Chrome server2 print_http_www_hardware_com_br_dicas_entendendo_cache_ht_13737...
Chrome server2 print_http_www_hardware_com_br_dicas_entendendo_cache_ht_13737...Léia de Sousa
 
Arquitetura de Computadores: Memórias
Arquitetura de Computadores: MemóriasArquitetura de Computadores: Memórias
Arquitetura de Computadores: MemóriasAlex Camargo
 

Semelhante a Hierarquia de Memória (20)

Arquitetura de computadores – memórias
Arquitetura de computadores – memóriasArquitetura de computadores – memórias
Arquitetura de computadores – memórias
 
memorias
memoriasmemorias
memorias
 
Apostila 2 conceitos de hardware e software
Apostila 2   conceitos de hardware e softwareApostila 2   conceitos de hardware e software
Apostila 2 conceitos de hardware e software
 
Memoria cache princípio da localidade
Memoria cache   princípio da localidadeMemoria cache   princípio da localidade
Memoria cache princípio da localidade
 
4 memo arq
4   memo arq4   memo arq
4 memo arq
 
Memoria do computador
Memoria do computadorMemoria do computador
Memoria do computador
 
Memória Interna - Arquitetura e Organização de Computadores
Memória Interna - Arquitetura e Organização de ComputadoresMemória Interna - Arquitetura e Organização de Computadores
Memória Interna - Arquitetura e Organização de Computadores
 
Apresentação (4).pptx
Apresentação (4).pptxApresentação (4).pptx
Apresentação (4).pptx
 
Hardware memória principal
Hardware  memória  principalHardware  memória  principal
Hardware memória principal
 
4 cpu
4 cpu4 cpu
4 cpu
 
Fundamento Hardware - Aula 002
Fundamento Hardware - Aula 002Fundamento Hardware - Aula 002
Fundamento Hardware - Aula 002
 
Cap-6-Multiplrocessadores.pdf
Cap-6-Multiplrocessadores.pdfCap-6-Multiplrocessadores.pdf
Cap-6-Multiplrocessadores.pdf
 
Arquitectura de memória
Arquitectura de memóriaArquitectura de memória
Arquitectura de memória
 
Hierarquia-memoria.pdf
Hierarquia-memoria.pdfHierarquia-memoria.pdf
Hierarquia-memoria.pdf
 
Aula 4 de Arquitetura de Computadores
Aula 4 de Arquitetura de ComputadoresAula 4 de Arquitetura de Computadores
Aula 4 de Arquitetura de Computadores
 
Resumos sobre tecnologias de informação e conceitos basicos
Resumos sobre tecnologias de informação e conceitos basicosResumos sobre tecnologias de informação e conceitos basicos
Resumos sobre tecnologias de informação e conceitos basicos
 
Chrome server2 print_http_www_hardware_com_br_dicas_entendendo_cache_ht_13737...
Chrome server2 print_http_www_hardware_com_br_dicas_entendendo_cache_ht_13737...Chrome server2 print_http_www_hardware_com_br_dicas_entendendo_cache_ht_13737...
Chrome server2 print_http_www_hardware_com_br_dicas_entendendo_cache_ht_13737...
 
Trabalho de sd
Trabalho de sdTrabalho de sd
Trabalho de sd
 
Aula 06 memória ram
Aula 06   memória ramAula 06   memória ram
Aula 06 memória ram
 
Arquitetura de Computadores: Memórias
Arquitetura de Computadores: MemóriasArquitetura de Computadores: Memórias
Arquitetura de Computadores: Memórias
 

Mais de PAULO Moreira

5 estruturas de controle
5 estruturas de controle5 estruturas de controle
5 estruturas de controlePAULO Moreira
 
3.2 introdução a linguagem java
3.2 introdução a linguagem java3.2 introdução a linguagem java
3.2 introdução a linguagem javaPAULO Moreira
 
3.1 introdução a linguagem java
3.1 introdução a linguagem java3.1 introdução a linguagem java
3.1 introdução a linguagem javaPAULO Moreira
 
2.1 introdução a oo
2.1 introdução a oo2.1 introdução a oo
2.1 introdução a ooPAULO Moreira
 
Classe integer-float-byte-short-long-double
Classe integer-float-byte-short-long-doubleClasse integer-float-byte-short-long-double
Classe integer-float-byte-short-long-doublePAULO Moreira
 
Trabalho de empreendedorismo
Trabalho de empreendedorismoTrabalho de empreendedorismo
Trabalho de empreendedorismoPAULO Moreira
 
Seminário de empreendedorismo
Seminário de empreendedorismoSeminário de empreendedorismo
Seminário de empreendedorismoPAULO Moreira
 
5. as regras de ouro do bilionário carlos slim
5. as regras de ouro do bilionário carlos slim5. as regras de ouro do bilionário carlos slim
5. as regras de ouro do bilionário carlos slimPAULO Moreira
 
8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...
8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...
8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...PAULO Moreira
 
Interrupções e interconexões
Interrupções e interconexõesInterrupções e interconexões
Interrupções e interconexõesPAULO Moreira
 

Mais de PAULO Moreira (20)

Metodos
MetodosMetodos
Metodos
 
5 estruturas de controle
5 estruturas de controle5 estruturas de controle
5 estruturas de controle
 
3.2 introdução a linguagem java
3.2 introdução a linguagem java3.2 introdução a linguagem java
3.2 introdução a linguagem java
 
3.1 introdução a linguagem java
3.1 introdução a linguagem java3.1 introdução a linguagem java
3.1 introdução a linguagem java
 
2.1 introdução a oo
2.1 introdução a oo2.1 introdução a oo
2.1 introdução a oo
 
1. apresentação
1. apresentação1. apresentação
1. apresentação
 
String
StringString
String
 
Showinputdialog
ShowinputdialogShowinputdialog
Showinputdialog
 
Math
MathMath
Math
 
Joptionpane
JoptionpaneJoptionpane
Joptionpane
 
Classe integer-float-byte-short-long-double
Classe integer-float-byte-short-long-doubleClasse integer-float-byte-short-long-double
Classe integer-float-byte-short-long-double
 
Negociação
NegociaçãoNegociação
Negociação
 
Trabalho de empreendedorismo
Trabalho de empreendedorismoTrabalho de empreendedorismo
Trabalho de empreendedorismo
 
Seminário de empreendedorismo
Seminário de empreendedorismoSeminário de empreendedorismo
Seminário de empreendedorismo
 
7. ecologia
7. ecologia7. ecologia
7. ecologia
 
6. conjuntura
6. conjuntura6. conjuntura
6. conjuntura
 
5. as regras de ouro do bilionário carlos slim
5. as regras de ouro do bilionário carlos slim5. as regras de ouro do bilionário carlos slim
5. as regras de ouro do bilionário carlos slim
 
8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...
8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...
8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...
 
Empreendedorismo
EmpreendedorismoEmpreendedorismo
Empreendedorismo
 
Interrupções e interconexões
Interrupções e interconexõesInterrupções e interconexões
Interrupções e interconexões
 

Hierarquia de Memória

  • 1. Arquitetura de Computadores Professor: Sérgio Vieira Email: sergiosvieira.fatene@gmail.com Data: 30-10-2012 Aula: Hierarquia de Memória 1
  • 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 pequeno 2
  • 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 estudo 3
  • 4. A Hierarquia de Memória (cont.) As restrições de projeto de uma memória podem ser resumidas em três questões: 1. Capacidade 2. Velocidade: para obter melhor desempenho, a velocidade da memória deve ser compatível com a do processador. 3. Custo: para que um sistema seja economicamente viável, o custo da memória deve ser compatível com o dos demais componentes. 4
  • 5. Hierarquia de memória (cont.) O uso de uma hierarquia de memórias, em vez de um único componente ou tecnologia de memória, em um projeto de computadores é usado como saída para o dilema: "É desejável usar uma tecnologia de memória capaz de fornecer uma grande capacidade 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 relativamente baixa." 5
  • 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. Hierarquia de memória (cont.) A medida que descemos em uma hierarquia de memórias, as relações abaixo sã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 diminui Assim memórias mais caras, menores e mais rápidas são combinadas com memórias maiores, mais baratas e mais lentas. 7
  • 8. A Hierarquia de Memória (cont.) SRAM (Static Random Access Memory) é um tipo de memória de acesso aleatório que mantém os dados armazenados desde que seja mantida sua alimentação, não precisando que as células que armazenam os bits sejam atualizadas de tempo em tempo), como é o caso das memórias DRAM. Embora sejam mais caras e ocupem menos espaço, quando comparadas às DRAM, possuem a vantagem de serem bem mais rápidas, justificando seu uso nas memórias cache L1 e L2. Além disso, as memórias estáticas consomem mais energia e aquecem mais que as DRAM. 8
  • 9. A Hierarquia de Memória (cont.) DRAM é um tipo de memória RAM de acesso direto que armazena cada bit de dados num condensador ou Capacitor. O número de elétrons armazenados no condensador determina se o bit é considerado 1 ou 0. Como vai havendo fuga de elétrons do condensador, a informação acaba por se perder, a não ser que a carga seja atualizada periodicamente. Embora esse fenômeno da perda de carga não ocorra nas memórias RAM estáticas (SRAM), as DRAM possuem a vantagem de terem custo muito menor e densidade de bits muito maior, possibilitando em um mesmo espaço armazenar muito mais bits. 9
  • 10. A Hierarquia de Memória (cont.) Tecnologias de Fabricação de Memórias SRAM + + Capacidade DRAM Custo Velocidade Magnética + 10
  • 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,20 11
  • 12. A Hierarquia de Memória (cont.) Microprocessador: • Caches integradas (L1, L2, L3...) • Banco de registradores (32 a 128, tipicamente) 12
  • 13. 13
  • 14. A Hierarquia de Memória (cont.) Objetivo do sistema hierárquico de memória é apresentar ao usuário uma capacidade de memória próxima à disponibilizada pela tecnologia mais barata, e um tempo de acesso próximo ao permitido pela tecnologia mais cara. 14
  • 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 capacidade 15
  • 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 inferior 16
  • 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. XXXXX000 XXXXX001 Informação* XXXXX010 XXXXX011 XXXXX100 XXXXX101 XXXXX110 XXXXX111 * informação = instrução ou dado 18
  • 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 processador 19
  • 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 3 20
  • 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 superior 21
  • 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 processador 22