Hierarquia de Memória Prof. André Luis M. Silva e/msn:[email protected].
Hierarquia de Memória Arquitetura de Computadores Aula 4 – Memória 23/08/2012
description
Transcript of Hierarquia de Memória Arquitetura de Computadores Aula 4 – Memória 23/08/2012
Hierarquia de MemóriaArquitetura de Computadores
Aula 4 – Memória23/08/2012
Bruno Iran Ferreira MacielMestrando em Ciências da Computação – Cin/UFPE
Revisão da aula passada
Memória secundária (memória de massa) Não é acessada diretamente pela CPU
acesso é feito através de interfaces ou controladoras especiais
Memória do tipo permanente não se apaga quando o computador está desligado para armazenamento de programas e dados por um
longo período Tem alta capacidade de armazenamento Custo muito mais baixo que o da memória principal
1GB de RAM custa cerca de R$ 90,00 disco rígido de 500 GB custa cerca de R$ 300
Não é formada por chips Formada por dispositivos que utilizam
outras tecnologias de armazenamento
Exemplos de memória secundária disco rígido, disquetes, CD-ROM e fita
magnética
Revisão da aula passada
Revisão da aula passada
Aula de hoje
Hoje vamos ver
Memória principal e cache
Memória principal
Memória principal
Definicão: “Parte do computador onde programas e dados são armazenados”.
Bit (Binary Digit): Unidade básica de memória. 1 Bit pode armazenar os valores 0 ou 1.
É possível realizar duas operacões em uma MP: escrita e leitura.
Memória principal
Enderecos de memória Memórias são organizadas em células Cada célula possui um numero associado: endereco Programas referenciam uma célula a partir deste
endereco Se uma memória possui n células, tais células
possuirão os enderecos 0 a n – 1.
Memória principal
Enderecos de memória Todas as células de uma memória
possuem o mesmo numero de bits.
Memória principal
Enderecos de memória
A quantidade de bits de enderecamento está relacionado com o numero de células e não com o tamanho das mesmas
Três organizacões possíveis para uma memória de 96 bits: 12 palavras de 8 bits → 4 bits de enderecamento 8 palavras de 12 bits → 3 bits de enderecamento 6 palavras de 16 bits → 3 bits de enderecamento
Memória principal
Memória principal
Enderecos de memória Células adjacentes tem enderecos
consecutivos Computadores que utilizam sistemas de
numeracão binária expressam enderecos de memória como numero binário
Memória principal
Capacidade As memórias são organizadas em conjunto de
células, cada uma podendo armazenar uma quantidade de bits: instrucões ou dados.
Capacidade de memória é a quantidade de informacões que nela podem ser armazenadas em um instante de tempo. A unidade básica de representacão de informacão é o bit.
Memória principal
Memória principal
A quantidade de bits que pode ser armazenada em cada célula (valor M da figura anterior) é um requisito definido pelo fabricante.
A quantidade de bits do numero que representa um determinado endereco, define a quantidade máxima de enderecos que uma MP pode ter, bem como o seu espaco de enderecamento.
Memória principal
Capacidade Conjunto de 8 bits → byte Os bytes são agrupados em palavras
Um computador com palavras de 32 bits tem 4 bytes/palavra
64 bits implicam em 8 bytes/palavra
A maioria da instrucões operam sobre palavras
Memória principal
Enderecos de memória Uma memória com 212 células de 8 bits cada e uma
memória de 212 células de 64 bits cada, precisam de enderecos de 12 bits.
MP com enderecos de 0 a (N – 1). X representa numero de linhas de endereco:
N = 2X X=log2 N
Memória principal
Cálculos com a Capacidade de Memória• Como 1 bit representa apenas um entre dois valores (base binária), então podemos concluir que:
Pode-se armazenar em cada célula um valor entre 0 e (2M– 1), porém um de cada vez. São 2M combinacões possíveis.
Por exemplo, se M = 8 bits, temos 28= 256. Seriam armazenados valores entre: 00000000 (010 ou 016) e 11111111 (25510 ou FF16).
Memória principal
Cálculos com a Capacidade de Memória A memória tem N enderecos:
N = 2E, sendo E = quantidade de bits dos numeros que representam cada um dos N enderecos.
Por exemplo, se N=512 (512 células), então, 512 = 2E, ou E=9, pois 29 =512
Memória principal
Cálculos com a Capacidade de Memória O total de bits que podem ser armazenados
na referida memória é T, sendo: T = N x M ou T = 2Ex M Do exemplo anterior temos: N = 512 células, M = 8 bits, E = 9 bits, T = 4096
bits N = 2E ->512 = 29 T = N x M = 2Ex M = 4096 bits = 4K bits
Memória principal
Exemplo 1Uma memória RAM tem um espaco máximo de enderecamento de 16K. Cada célula pode armazenar 16 bits. Qual o valor total de bits que podem ser armazenados nesta memória e qual o tamanho de cada endereco?
Se o espaco máximo enderecável é 2K, então N = 2K 1 célula = 16 bits. Então: M = 16 bits = 24 bits N=2E, N=16K=21x1024=21x210=211
Se N=2E e 211,então: 2E=211 e E=11 E = quantidade de bits de cada numero que expressa um
enderecamento, ou seja: os enderecos de cada célula são numeros que têm 11 bits.
T= N x M=211x16=215=32Kbit
Memória principal
Exemplo 2Uma memória RAM é fabricada com a possibilidade de armazenar um máximo de 256kbits. Cada célula pode armazenar 8 bits. Qual é o tamanho de cada endereco e qual é o total de células que podem ser utilizadas na RAM?
Total de bits = T = 256K = 28x210= 218 1 célula=8bits=M=23
Sendo T=NxM ,então:N=T/M=218/23=215
Se N=2E,então:215=2E, E=15 N = 215= 25x210= 32k
Memória cache
Memória cache
Significado da palavra cache – Lugar seguro para guardar (esconder coisas)Considerando que a cache só pode ter parte dos dados do nível mais abaixo, por causa do menor tamanho, temos dois problemas:
Como identificar se o dado procurado está na cache e Se ele estiver na cache, como acessá-lo de forma rápida
Memória cache
Memória cache
Memória cache
O processador não sabe que está sendo enganado e gera um endereco para um espaco de enderecamento que não necessariamente existe fisicamenteEnderecar a cache com este endereco não faz nenhum sentido (na maioria dos casos a cache nem teria essa posicão gerada por ser muito menor) Uma varredura sequencial também não é uma solucão aceitável, pelo tempo que levaria (não esquecer que o objetivo é acelerar o acesso)
Memória cache
Problema: CPUs são mais rápidas que memórias do sistema
CPUs devem esperar vários ciclos p/ que o dado requerido seja carregado
Problema de custo e não de engenharia: é possível construir memórias tão rápidas quanto a CPU (Precisam ficar dentro do chip da CPU). CUSTO MUITO ALTO
Organizacão da memória
Organizacão da memória
Perguntas
?
Exercício
Hoje tem exercício em aula e p/ entregar na próxima aula