Você está na página 1de 14

Arquitetura de Computadores

Introdução
 A memória pode ser definida como um local para
armazenamento de informações, onde as duas únicas
ações possíveis são a leitura e a escrita.
 Asinformações são representadas em conjuntos de
bytes, cada um possuindo um único endereço
numérico definido.
 Em um sistema computacional, temos diferentes tipos
de memórias, para diferentes finalidades, que se
interligam de forma estruturada e que formam o
subsistema de memória.
História das Memórias
A primeira forma de
armazenamento de informações
era uma linha de atraso de
mercúrio
 Nessa tecnologia, sinais
elétricos eram convertidos em
vibrações que eram enviadas
por um tubo de mercúrio,
alcançando a outra ponta, onde
eram lidas e recirculavam.
 Uma linha de atraso de
mercúrio poderia armazenar
cerca de 0,5 Kbit.
 Embora esses bits fossem
acessados de forma serial, a
linha de atraso de mercúrio era
praticamente cem vezes mais
econômica do que a memória a
História das Memórias - 2
O próximo avanço veio com a
invenção da memória de núcleo por
J. Forrester, no MIT, como parte do
projeto Whirlwind, no início da
década de 1950
 A memória de núcleo utiliza um
núcleo de ferrite, que pode ser
magnetizado e, uma vez
magnetizado, atua como um
armazenamento.
 Um conjunto de fios passando
pelo centro do núcleo, que tinha
uma dimensão de 0,1 a 1
milímetro, torna possível ler o
valor armazenado em qualquer
núcleo de ferrite.
 O Whirlwind por fim incluiu
uma memória de núcleo com
2.048 words de 16 bits, ou 32
Kbits.
História das Memórias - 3
A tecnologia que substituiu a
memória de núcleo foi a
mesma que agora usamos
tanto para a lógica quanto
para a memória: o circuito
integrado.
 Com o circuito integrado, foi
possível construir uma DRAM
(Dynamic Random Access
Memory).
 As primeiras DRAMs foram
construídas na Intel em 1970, e
os computadores utilizando
memórias DRAM (como uma
opção de alta velocidade ao
núcleo) vieram logo depois;
eles usavam DRAMs de 1
Kbit.
Hierarquia de Memória
 Embora os pioneiros da computação tenham previsto a
necessidade de uma hierarquia de memória e tenham
criado o termo, o gerenciamento automático de dois
níveis foi proposto inicialmente por Kilburn e seus
colegas, e foi demonstrado na Universidade de
Manchester, com o computador Atlas, que implementava
memória virtual.
 A IBM planejava incluir a memória virtual com a próxima
geração (System/370), mas o sistema operacional OS/360
não estava pronto para o desafio em 1970.
 A memória virtual foi anunciada para a família 370 em
1972, e foi para esse computador que o termo translation-
lookaside buffer foi criado.
Espaço de Endereçamento de Memória
Problemas de espaço de endereçamento inadequado
assolaram os projetistas repetidamente.
Quando o PDP-11 foi projetado, foi decidido acres-
centar apenas mais 4 bits de endereçamento que o seu
predecessor, portanto de 12 para 16;
Os arquitetos do IBM 360 planejaram a arquitetura para
estender o endereçamento para 32 bits;
Somente 24 bits eram usados no IBM 360, pois os
modelos 360 de baixo desempenho seriam ainda mais
lentos com os endereçamentos maiores.
O endereçamento mais largo durou até 2000, quando a
IBM expandiu a arquitetura para 64 bits na série z.
Endereçamento de Memória
 A faltade espaço de endereçamento tem sido a causa de morte
para uma arquitetura;
O PDP-11 (16 bits,) foi substituído por um VAX de 32 bits;
O 80386 estendeu a arquitetura do 80286 de um espaço de
endereçamento de 24 bits para um espaço de endereçamento plano
de 32 bits em 1985;
 Na década de 1990, vários conjuntos de instruções RISCs fizeram
a transição do endereçamento de 32 bits para o endereçamento de
64 bits, oferecendo uma extensão compatível de seus conjuntos de
instruções;
 Uma década mais tarde, a Intel e a HP anunciaram o IA-64 para
oferecer um sucessor de 64 bits de endereçamento para as
arquiteturas Intel IA-32 de 32 bits e HP Precision;
 Os arquitetos estão atualmente fazendo apostas sobre o sucesso do
Hierarquia de Memória
Porquequeremos uma hierarquia de
memória?
◦ Espaço de armazenamento infinito
◦ Acesso Rápido
◦ Custo Baixo
◦ Tamanho Compacto
◦ Baixo consumo
 (um Pentium 4 a 2Ghz consome 75 watts)
◦ Não Volátil (mantém a informação mesmo
sem eletricidade)
Não dá para ter tudo o que se quer…

Queremos criar uma ilusão de uma


memória muito grande a uma velocidade
muito alta, mas:
◦ Quanto maior, mais lenta...
◦ Quanto mais rápida e densa, mais quente...
◦ Quanto mais rápida, mais cara...
Como podemos atingir este objetivo?

Criando uma ilusão !


Princípios:
◦ Localidade temporal
Se um item de memória foi acessado recentemente, muito
provavelmente será acessado novamente em breve
◦ Localidade espacial
Se um item foi referenciado, itens próximos a ele também
serão referenciados em breve
Regra do 80/20 – 80% do tempo de execução de um
programa é gasto executando-se apenas 20% do código
Hierarquia de Memória
 Os dados contidos num nível mais próximo do processador são sempre um
subconjunto dos dados contidos no nível anterior.
 O nível mais baixo contém a totalidade dos dados.

Memória Processador
principal (Cache L1 e
Registradores)

Memória
secundári
a

Cache L2
Tecnologia de Memória
Tecnologia Tempo de Acesso Custo/Gb (2004)
em US$
SRAM 0.5 – 5 ns 4.000,00 a
10.000,00
DRAM 50 – 70 ns 100 a 200

Disco Magnético 5x106 – 20x106 ns 0,50 a 2


(5-10 ms)
Tecnologias
 DRAM (Dynamic Random Access Memory):
◦ Valor é armazenado com uma carga em um capacitor que deve ser
periodicamente atualizado. Por isso é chamada dinâmica.
◦ Muito pequeno – 1 transistor por bit.
◦ De 5 a 10 vezes mais lento que a SRAM
◦ Usada para memória principal

 SRAM (Static Random Access Memory):


◦ Valor é armazenado em um par de portas lógicas indefinidamente,
enquanto houver energia. Por isso é chamada estática
◦ Muito rápida, mas toma mais espaço que a DRAM – 4 a 6
transistores por bit
◦ Usada para memória cache

Você também pode gostar