Hierarquia de Memória Arquitetura de Computadores Aula 4 – Memória 23/08/2012

Post on 22-Jan-2016

60 views 1 download

description

Hierarquia de Memória Arquitetura de Computadores Aula 4 – Memória 23/08/2012. Bruno Iran Ferreira Maciel Mestrando 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 - PowerPoint PPT Presentation

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