Buscar

Prévia do material em texto

Arquitetura de Computadores
Memória Principal e sua Organização
Prof. Sand Luz Corrêa
Tópicos
● Sistemas de Memória
● Memórias Internas
● Memória Principal
● Bit, célula, byte, palavra
● Endereço de memória
● Chips de memória
● Ordenação de bytes
● 
Sistemas de Memória
Sistemas de Memória
● O sistema de memória de um computador tem 
a função de armazenar informações.
● Conceitualmente, o sistema de memórias 
funciona de forma muito simples: 
● Um dispositivo de armazenamento é um armário 
com gavetas
● Cada gaveta tem um endereço
● É possível armazenar (escrever) ou recuperar (ler) 
os dados de uma gaveta, dado seu endereço
Sistema de Memória
Sistema de Memória
● Na prática, o sistema de memória é constituído por 
vários componentes de diferentes tipos
● Isso ocorre devido a 2 fatores:
● Diferença cada vez maior entre a velocidade da 
CPU e o tempo de acesso à memória principal
− A quantidade de instruções processadas pela CPU 
por unidade de tempo tem dobrado a cada 18 meses 
enquanto o tempo de acesso à memória tem 
diminuído cerca de 10% ao ano
● Necessidade de maior capacidade de 
armazenamento.
− Em virtude de programas mais complexos e maior 
volume de dados
Sistema de Memória
● Portanto, é inviável ter :
● uma memória rápida o suficiente para interagir 
adequadamente com o processador e 
● armazenar um grande volume de dados
● Solução
● Hierarquia de memória
− Usar memórias mais rápidas (caras) para interagir com o 
processador
− Usar memórias mais lentas (baratas) para armazenar um 
grande volume de dados
Sistema de Memória
Propriedades que caracterizam os 
sistemas de memória
● Localização: indica se a memória é interna ou 
externa ao computador
● Memórias internas: acessadas pelo processador 
através de barramentos.
− Ex. memória principal, cache e registradores
● Memórias externas: acessadas pelo processador 
através de controladores de E/S.
− Ex. disco magnético, disco óptico e fitas magnéticas
Propriedades que caracterizam os 
sistemas de memória
● Capacidade: é a quantidade máxima de dados 
que pode ser armazenada em uma memória
● Normalmente medida em bytes (8 bits)
● Dependendo do tamanho da memória, indica-se a 
capacidade por:
● 
● Unidade Valor em potência de 2
KB (quilobyte) 210
MB (megabyte) 220
GB (gigabyte) 230
TB (terabyte) 240
PB (petabyte) 250
Ex (exabyte) 260
Propriedades que caracterizam os 
sistemas de memória
● Palavra: unidade de organização da memória principal. 
● Em alguns sistemas, o tamanho de uma palavra é igual 
ao tamanho usado para representar um inteiro ou uma 
representar uma instrução
● No Intel X86 uma palavra é igual a 32 bits
● Unidade Endereçável: é a menor unidade que pode ser 
endereçada em uma mémoria
● Memória principal: pode ser a palavra ou no nível de 
bytes
− A relação entre o tamanho do endereço em bits(A) e 
a quantidade de unidades endereçáveis (N) é N= 2A
● Disco: setor
Propriedades que caracterizam os 
sistemas de memória
● Unidade de transferência: 
● Para memória interna:
− a unidade de transferência é igual ao número de linhas 
elétricas indo para ou saindo do módulo de memória 
− Ex. 64, 128 ou 256 bits
● Para memória externa
− dados são transferidos em unidades bem maiores 
conhecidas como blocos
Propriedades que caracterizam os 
sistemas de memória
● Método de acesso: forma como o dado é acessado
● Acesso sequencial: acesso ao dado é feito em uma 
sequência linear. Tempo de acesso pode variar muito.
− Ex. fita magnética
● Acesso direto: cada informação endereçável tem um 
um endereço único baseado em sua localização física 
− Ex. disco
● Acesso aleatório:o tempo para acessar uma certa 
localização é constante e não depende dos acessos 
anteriores
− Ex. memória principal e cache
● 
Propriedades que caracterizam os 
sistemas de memória
● Parâmetros de desempenho
● Tempo de acesso (ou latência - Ta): 
− Para memória de acesso aleatório: é o período de 
tempo compreendido desde o momento em que o 
endereço é apresentado à memória até o momento em 
que o dado é disponibilizado ao usuário
− Para outras memórias: tempo necessário para 
posicionar o mecanismo de leitura/gravação na 
localização desejada 
Características de uma memória
● Parâmetros de desempenho
● Tempo de ciclo de memória (Tc) 
− Conceito aplicado principalmente nas memórias de 
acesso aleatório
− Compreende o tempo de acesso + um tempo adicional, 
necessário para realizar a próxima operação 
Características de uma memória
● Características Físicas:
● Volatilidade: 
− Memórias voláteis perdem os dados quando a fonte de 
energia é desligada
● Ex. Memórias semicondutoras, ou seja, memória principal, cache 
e registradores
− Memórias não voláteis: retém os dados mesmo quando a 
fonte de energia é desligada
● Ex. Memórias magnéticas (fitas e discos magnéticos)
Memórias Internas
Memórias Internas
● As memórias internas são construídas a partir 
de tecnologia semicondutora
● Exemplo de memórias internas
● RAM
● ROM
● PROM
● EPROM
● EEPROM
● Memória Flash
Memória de acesso aleatório
(RAM)
● Random Access Memory (RAM)
● São memórias cujo conteúdo pode ser acessado 
diretamente e num tempo constante, ou seja, 
independente da posição acessada
● Nessas memórias, dados podem ser lidos e 
escritos de forma rápida
● Tanto a leitura quanto a escrita são realizadas por 
meio de sinais elétricos.
● São memórias voláteis
Memória de acesso aleatório
(RAM)
● Nos computadores atuais, encontramos dois 
tipos de memória RAM
● RAM Dinâmica (DRAM)
● RAM Estática (SRAM)
Memória de acesso aleatório
(RAM)
● DRAM (Dynamic RAM)
● Feita com células que armazenam dados como carga 
em capacitores
● A presença ou ausência de carga em um capacitor é 
interpretada como um bit 1 ou 0, respectivamente
● Como os capacitores possuem uma tendência natural 
para descarga, a DRAM exige recarga periódica, 
mesmo quando alimentada por uma fonte de energia.
● Logo, a diferença entre tempo de acesso e tempo de 
ciclo é maior numa DRAM
● Uma célula de memória dinâmica é mais simples e 
menor que uma célula de memória estática
● Por esse motivo, são mais baratas que SRAM e são 
usadas na Memória Principal
Memória de acesso aleatório
(RAM)
● SRAM (Static RAM)
● Usa a mesma tecnologia dos processadores 
(basicamente transistores)
● Devido à ausência de capacitores, a SRAM não 
exige recarga
● Logo, o tempo de acesso é muito próximo do tempo 
de ciclo
● Uma célula de memória estática é mais complexa e 
maior que uma célula de memória dinâmica
● Por esse motivo, são mais caras que DRAM e são 
usadas internamente nos processadores 
(registradores e cache)
Memórias de Leitura Apenas
● ROM (Read Only Memory) 
● É uma memória somente de leitura, ou seja não 
pode ser modificada
● É uma memória não volátil
● Dados são gravados no momento da criação do 
circuito integrado e não são mais modificados
● Usada para:
− Armazenar programas de boot
− Armazenar o microcódigo (interpretador de linguagem de 
máquina)
− Armazenar firmware (software muito amarrado ao 
hardware que é atualizado raramente)
● PROM (ROM Programável)
● É uma memória somente de leitura, ou seja não 
pode ser modificada depois de escrita
● Porém, ao contrário da ROM, o processo de escrita 
é realizado eletricamente e pode ocorrer após a 
fabricação do chip, com um dispositivo especial
● É uma memória não volátil
● É uma alternativa mais barata que a ROM, 
geralmente usada para armazenar poucos dados.
Memórias de Leitura Apenas
Memórias Principalmente de Leitura 
● EPROM (ROM Programável e Apagável)
● Memória principalmentede leitura, não volátil, 
podendo ser modificada após a gravação.
● Para isto, toda a memória deve ser apagada antes 
de ser regravada
● Para ser apagada, o chip de memória é exposto à 
luz ultravioleta. 
● A memória pode ser apagada repetidamente
● O processo de remoção dura aproximadamente 20 
minutos
● Pode ser apagada aproximadamente 1000 vezes
Memórias Principalmente de Leitura 
● EEPROM (ROM Programável e Apagável 
Eletricamente)
● Memória principalmente de leitura, não volátil, que 
pode ser escrita a qualquer momento sem a 
necessidade de apagar o conteúdo anterior
● Somente os bytes endereçados são atualizados.
● Usa um processo elétrico para sobrescrever bytes 
– a operação de escrita é bem mais lenta que a de 
leitura
● É mais cara que a EPROM e menos densa (menor 
capacidade de armazenamento por chip)
● Memória Flash
● Memória principalmente de leitura, não volátil, que 
pode ser escrita e apagada de forma mais rápida 
que a EEPROM
● Também usa um processo elétrico para 
sobrescrever bytes
● Tem maior densidade que a EEPROM (maior 
capacidade de armazenamento por chip) e pode 
ser apagada 1.000.000 de vezes.
● Usada em:
− Cartões de memória (câmera digital, celular, 
MP3 player)
− Pendrive
− Disco de estado sólido
Memórias Principalmente de Leitura
Tipo Categoria Remoção Mecanismo
De
Escrita
Volatilidade
RAM Memória de
leitura-escrita
Eletronicame
nte, no nível 
de bytes
eletronicame
nte
Volátil
ROM Memória de 
leitura 
apenas
Não é 
possível
Durante 
processo de 
fabricação
Não volátil
PROM Memória de 
leitura 
apenas
Não é 
possível
Após o 
processo de 
fabricação
Não volátil
EPROM Memória 
preferencialm
ente de 
teitura
Luz 
ultra-violeta
No nível do 
chip
Elétrico Não volátil
EEPROM Memória 
preferencialm
ente de 
teitura
Elétrico
No nível de 
byte
Elétrico Não volátil
Flash Memória 
preferencialm
ente de 
teitura
Elétrico
No nível de 
byte
Elétrico Não volátil
Memória Principal
Organização de Computadores
Memória
Principal Disco Impressora
Unidade de 
Controle
Unidade 
Aritmética
E Lógica
Registradores
CPU (Central 
Processing Unit)
Barramento
Memória Principal
● Dispositivo físico usado para guardar programas 
(sequência de instruções) e dados que estão sendo 
executados
● A memória principal trabalha diretamente com a CPU 
na execução de um programa:
● Antes de executar, o programa e seus dados são 
armazenados na memória principal
● A CPU busca as instruções e dados da memória 
principal à medida que a execução se realiza
● Atualmente é construída a partir de semicondutores 
baseados em circuitos integrados
Memória Principal
● É também chamada de RAM (Random Access 
Memory)
● É uma memória volátil
Organização da Memória Principal
● O elemento básico de armazenamento físico da 
memória principal é o bit
● Cada bit é armazenado na memória principal como 
uma carga elétrica
● Carga alta: bit 1
● Carga baixa: bit 0
● Esses bits são agrupados em células
● Uma célula é endereçada para acessar uma informação ( 
conjunto de bits)
● A célula é a unidade de endereçamento da memória 
principal 
Organização da Memória Principal
● Do ponto de vista de organização, a memória 
principal é um conjunto de N células consecutivas
● Cada célula é acessada por meio de um endereço 
que varia de 0 a N-1, ou seja:
● A primeira célula encontra-se no endereço 0
● A última célula encontra-se no endereço N-1
● Uma célula armazena um número M de bits
● Todas as células de uma memória armazenam o 
mesmo número de bits.
● Se um endereço usa k bits, o número máximo de 
células endereçáveis é 2k 
Organização da Memória Principal
Organização da Memória Principal
000
001
010
011
100
101
110
111
00101000
Posição da memória igual a 
010 tem armazenada a 
informação 00101000
MP
Organização da Memória Principal
● Três formas de se organizar uma memória de 
96 bits
● 
Organização da Memória Principal
● Em geral, nos computadores atuais, uma célula é 
composta por 8 bits, os quais são chamados de bytes
● A unidade de informação do sistema 
processador/memória é a palavra. Uma palavra 
representa um dado ou uma instrução de máquina.
● O tamanho da palavra é uma característica importante 
para o projeto de qualquer processador
● Os processadores atuais têm palavras de 32 bits e 
64 bits
− Desde o Pentim 4, os processadores Intel são 64 bits.
− Desde o Opteron, os processadores AMD são 64 bits 
● 
Organização da Memória Principal
● Operação de Leitura
CPU
000
001
010
011
100
101
110
111
00101000
MP
End=010
1
2
CPU
000
001
010
011
100
101
110
111
0010100000101000
Organização da Memória Principal
● Operação de Escrita
CPU
000
001
010
011
100
101
110
111
00101000
MP
End=011 info= 11111111
1
2
CPU
000
001
010
011
100
101
110
111
00101000
11111111
Chips de Memória
● Até a década de 90 a memória principal era fabricada e 
vendida em um chip único
● Nos computadores atuais, temos um arranjo diferente. 
● Um grupo de 4 a 16 chips montado em uma placa de 
circuito impresso. Essa unidade é denominada:
− SIMM (Single Inline Memory Module): transferem 32 bits 
de memória por vez; ou 
− DIMM (Dual Inline Memory Module): transferem 64 bits 
de memória por vez
Chips de Memória
Processador
Memória
Compatibilidade 
(Capacidade, Velocidade)
Chips de Memória
Chips de Memória
Vetor
Matriz
Chips de Memória
● Atualmente, um chip de DRAM é organizado 
como uma matriz
● Esse arranjo permite endereçar a mesma 
quantidade de células, porém com menos pinos 
de endereço
● Isso ocorre porque linhas e colunas 
compartilham as mesmas linhas de endereço
● Além disso, pode existir mais de uma matriz 
por chip. 
Tecnologias para DRAM
● Originalmente, as DRAMs se comunicavam 
com o controlador de memória (processador) 
assincronamente
● Como consequência, toda transferência de 
dados envolvia alguma sobrecarga de 
sincronização com o controlador
● Atualmente, essa comunicação é feita de forma 
síncrona, através do sinal de um relógio (clock)
● Essas DRAMs são chamadas de SDRAMs 
(DRAMs Síncronas)
Tecnologias para DRAM
● Inicialmente, as transferências podiam ocorrer 
somente na aresta de subida de um pulso do 
relógio.
● Atualmente, as transferências de dados podem 
ocorrer nas arestas de subida e descida
● Essa otimização é chamada de DDR (double 
data rate)
Tecnologias para DRAM
Padrão Frequência
Do
Relógio(MHZ)
DDR2 266/333/400
DDR3 533/666/800
DDR4 1066/1600
Largura de banda = (Frequencia x dado por clock x bit por clock)/8
Por exemplo DDR3 de 666MHz
Larguar de banda: (666 x 2 x 64)/8 = 10656 MB/s
Memória Flash
● A memória flash é mais lenta que DRAMs, mas são mais 
rápidas que discos tradicionais.
● Em geral para operações de escrita, uma DRAM é cerca 
de 10 a 1000 vezes mais rápida
● Comparado com os discos magnéticos, a memória flash 
pode ser até 1000 vezes mais rápida
● Atualmente, vários laptops e desktops usam memória 
flash (SSD) no lugar de discos, para melhorar o 
desempenho do sistema (swap)
● Vários datacenters também usam memória flash como 
uma cache para o disco (storages).
Ordenação de Bytes
● Suponha uma máquina onde 
● Uma palavra é composta por 32 bits (4 bytes)
● A memória é endereçada a bytes 
● Queremos armazenar o valor inteiro 
1234567816 no endereço 184 da memória 
principal
● Há duas formas de se armazenar esse valor
Ordenação de Bytes
(1) (2)
(1) Big endian: armazena o byte mais significativono menor 
endereço de memória
(2) Little endian: armazena o byte menos significativo no menor 
endereço de memória
Bibliografia
Capítulo 4 do Livro Arquitetura e Organização de 
Computadores. William Stallings. 8a. Edição.
Seção: 4.1
Capítulo 5 do Livro Arquitetura e Organização de 
Computadores. William Stallings. 8a. Edição.
Seções: 5.1 e 5.3

Mais conteúdos dessa disciplina