7 - Memória Principal

Transcrição

7 - Memória Principal
Arquitetura de Computadores
Marcelo Adriano Perecim
7 - Memória Principal
A memória é a parte do computador onde os programas e os dados são
armazenados. Sem uma memória na qual os processadores possam ler ou
escrever informações, o conceito de computador digital com programa
armazenado não pode ser implementado.
7.1 – Bits
A unidade básica de memória é o dígito binário, conhecido como bit. Um bit
pode ter o valor 0 ou o valor 1. Ele é a unidade de memória mais simples possível.
O sistema de armazenamento de informação digital é baseado na distinção entre
valores diferentes de alguma grandeza física, como corrente ou tensão. Quanto
mais valores houver a serem identificados, menor será a separação entre valores
adjacentes, e como conseqüência o sistema de memória será menos confiável.
No sistema de numeração binário só há necessidade de se distinguir entre
dois valores. Conseqüentemente, o método de codificação da informação digital
em binário é o mais confiável de todos.
7.2 – Endereços de Memória
A memória é formada por um conjunto de células (ou posições), cada uma
das quais podendo guardar uma informação. Cada célula tem um número
associado a ela, número esse conhecido como endereço da célula. É por meio
desse número que os programas podem referenciar a célula. Se a memória tiver n
células, elas terão endereços de 0 a n-1. Todas as células de uma memória
dispõem do mesmo número de bits. Se uma célula tiver K bits ela poderá
armazenar qualquer uma das 2k combinações possíveis para os bits. A figura
abaixo mostra três organizações diferentes para uma memória de 96 bits.
Endereço
Endereço
0
1
2
3
4
5
6
7
8
9
10
11
0
1
2
3
4
5
6
7
1 célula
Endereço
0
1
2
3
4
5
Å 16 bits Æ
Å 12 bits Æ
(c)
(b)
Å 8 bits Æ
177
Arquitetura de Computadores
Marcelo Adriano Perecim
(a)
Os computadores que usam o sistema de numeração binário expressam os
endereços de memória como números binários. Se um determinado endereço tem
m bits, o número máximo de células endereçáveis é de 2m. Por exemplo, um
endereço utilizado para referenciar a memória da figura (a) precisa de no mínimo 4
bits para expressar todos os números binários entre 0 e 11 (11(base 10) Æ
1011(base 2)). No entanto, no caso das figuras (b) e (c), três bits de endereço
serão suficientes (7 (base 10) Æ 111 (base 2) e 5 (base10) Æ 101 (base 2)).
O número de bits no endereço determina o número máximo de endereços
que poderão ser referenciados diretamente na memória, sendo completamente
independente do número de bits por célula. Tanto uma memória com 212 células
de 8 bits cada quanto uma outra memória com 212 células de 64 bits cada
precisam de 12 bits para representar o endereço da célula.
A célula é a menor unidade endereçável em um computador. Nos últimos
anos, quase todos os fabricantes de computadores padronizaram o tamanho da
célula em 8 bits, chamando essa célula de byte. Os bytes são agrupados em
palavras. Um computador com uma palavra de 32 bits tem 4 bytes/palavra (32 / 8
= 4), enquanto um computador com uma palavra de 64 bits tem 8 bytes/palavra
(64 / 8 = 8). Uma instrução de soma vai somar dois valores de 32 bits. Portanto,
uma máquina de 32 bits deverá ter registradores e instruções para tratar palavras
de 32 bits, enquanto uma máquina de 64 bits deve ter registradores de 64 bits e
instruções para mover, somar, subtrair palavras de 64 bits.
7.3 - Memórias
Há duas classes básicas de memória:
•
Memória ROM: Os circuitos de memória ROM só permitem leitura, em
compensação, não perdem o conteúdo quando o computador é desligado.
Além disso, as memórias ROM são mais lentas do que as memórias RAM.
•
Memória RAM: São rápidas, permitem leitura e escrita, em compensação, o
seu conteúdo é perdido sempre em que o computador é desligado. Por esse
motivo é necessário gravar programas e arquivos de dados em mídia nãoeletrônica (discos rígidos, disquetes, etc.).
Para o processador, não há diferença entre acessar uma memória RAM ou
ROM – a não ser a velocidade, pois a memória ROM é mais lenta que a RAM.
Quando o micro é ligado, um programa gravado na memória ROM da placa-mãe,
chamado POST (Power On Self Test) entra em ação, inicializando os circuitos da
placa-mãe, o vídeo e executando testes, como o teste da memória. O último passo
do POST é carregar o sistema operacional de algum disco para a memória RAM.
É na memória RAM que o processador carrega o sistema operacional,
programas e documentos que estejam abertos para serem processados. Dessa
forma, o processador acessa a memória RAM praticamente o tempo todo.
178
Arquitetura de Computadores
Marcelo Adriano Perecim
7.3.1 - Memória ROM
Os circuitos de memória ROM podem ser construídos utilizando uma das
seguintes tecnologias básicas:
•
Mask-ROM: Esse tipo de memória é gravado na fábrica do circuito integrado e
não há como apagar ou regravar o seu conteúdo. Esse tipo de circuito é
fabricado sob encomenda.
•
PROM (Programmable ROM): Essa memória é vendida “virgem” e o fabricante
do dispositivo que utilizará esse circuito se encarrega de fazer a gravação de
seu conteúdo. Entretanto, uma vez gravada, não há como apagar ou
reprogramar o seu conteúdo.
•
EPROM (Erasable Programable ROM): Da mesma forma que a PROM, a
EPROM é vendida virgem e deve ser gravada pelo fabricante do dispositivo
que a utilizará. Ao contrário dos outros dois tipos, o seu conteúdo pode ser
apagado, o que é feito colocando-se o circuito integrado exposto à luz violeta
(esse circuito tem uma janela transparente para que o apagamento possa ser
feito). Dessa forma, esse circuito pode ser regravado.
•
EEPROM (Electric Erasable Programmable ROM): A EEPROM (ou E2PROM é
uma EPROM onde o apagamento não é feito através de luz, mas sim através
de impulsos elétricos. Essa tecnologia permite a reprogramação de circuitos
sem a necessidade de removê-los.
•
Flash-ROM: A Flash-ROM é uma EEPROM que utiliza baixas tensões de
apagamento e este é feito em um tempo bem menor (num flash, daí seu
nome). Hoje em dia, a ROM da maioria das placas-mãe é formada por um
circuito Flash-ROM, permitindo a reprogramação se seu conteúdo via software.
A placa-mãe do computador tem um único circuito de memória ROM,
contendo os seguintes programas:
1- BIOS (Basic Input/Output System – Sistema Básico de Entrada/Saída):
“Ensina” o processador a trabalhar com os periféricos mais básicos do
sistema, tais como os circuitos de apoio, a unidade de disquete e o vídeo
em modo texto.
2- POST (Power-On Self-Test – Autoteste ao Ligar): Um autoteste feito
sempre que o computador é ligado. O POST executa as seguintes rotinas:
•
•
Identifica a configuração instalada.
Inicializa todos os circuitos periféricos de apoio (chipset) da placamãe.
179
Arquitetura de Computadores
•
•
•
•
•
Marcelo Adriano Perecim
Inicializa o vídeo.
Testa a memória.
Testa o teclado.
Carrega o sistema operacional para a memória
Entrega o controle do microprocessador para o sistema operacional.
3- Setup (Configuração): Programa de configuração de hardware do
microprocessador. Normalmente esse programa é apresentado apertando
um conjunto de teclas durante o POST (geralmente a tecla DEL). Através
desse programa é possível alterar o conteúdo da memória de configuração.
Esses três programas são completamente diferentes, embora estejam
fisicamente armazenados dentro de um mesmo circuito integrado. Quando são
efetuadas alterações no Setup, estas são armazenadas na memória de
configuração da placa-mãe, também chamada CMOS. A memória de configuração
é uma memória do tipo RAM e, por isso, seu conteúdo é apagado quando sua
alimentação de energia é cortada. Para que isso não ocorra, as placas-mãe têm
uma bateria que alimenta essa memória, para que as informações de configuração
não sejam perdidas quando o micro é desligado.
Atualmente a memória de configuração está embutida no chipset da placamãe, mais especificamente em um circuito chamado Ponte Sul.
7.3.2 - Memória RAM Dinâmica (DRAM)
A memória RAM do micro é formada por circuitos de memória dinâmica, por
vezes abreviada por DRAM (Dynamic RAM). Esse tipo de circuito armazena os
bits de informação através de minúsculos capacitores: um capacitor carregado
equivale a um dado “1” e um capacitor descarregado a um “0”.
O capacitor é um elemento muito fácil de ser construído, pois é formado
somente por duas placas condutoras paralelas. Isto significa que se pode ter
muitas células capacitivas em um pequeno espaço físico, ou seja, circuitos
pequenos com alta capacidade de armazenamento.
O grande problema é que, depois de algum tempo, os capacitores se
descarregam. Dessa forma, deverá haver períodos de recarga dos capacitores da
memória, período chamado refresh. Durante o refresh, que é comandado pelo
controlador de memória presente no chipset da placa-mãe, todas as posições de
memória são “varridas”. Quando um capacitor carregado é encontrado, recebe
uma nova carga, fazendo com que o valor “1” continue sendo corretamente
armazenado, impedindo que este se transforme, erroneamente, em um valor “0”.
Durante o período de refresh, a memória geralmente não pode ser
acessada. Como conseqüência direta, a memória dinâmica tem uma imposição
física para a sua velocidade. Suas características são:
•
•
Barata.
Fácil integração (muita capacidade em pouco espaço).
180
Arquitetura de Computadores
•
•
Marcelo Adriano Perecim
Baixo consumo.
Lenta, pois necessita de refresh.
7.3.3 - Memória RAM Estática (SRAM)
Existe um outro tipo de memória muito rápida que a memória dinâmica.
Esse tipo de memória – chamada memória estática e geralmente abreviada para
SRAM (Static RAM) – utiliza, em vez de capacitores, circuitos digitais chamados
flip-flops para o armazenamento de cada “0” ou “1”. Esses circuitos armazenam os
dados sem a necessidade de nenhum ciclo de refresh.
Esse tipo de memória é bem mais cara e os circuitos, maiores. Em
contrapartida, há uma grande vantagem: velocidade. Como não precisam do ciclo
de refresh, as memórias estáticas são extremamente rápidas.
Por causa do preço, do tamanho e do consumo, não é possível que a
memória RAM seja feitas totalmente por memórias estáticas. Quanto maior o
consumo de um circuito de memória, maior o nível de ruído, o que dificulta a
construção de arranjos de circuitos de alta capacidade, tornando esses arranjos
ainda mais caros.
A partir do 386, os micros utilizam um sistema híbrido. A memória
RAM é formada por memória dinâmica, e utiliza uma pequena quantidade de
memória estática como intermediária para agilizar o acesso do processador à
memória. Essa técnica é conhecida como cache de memória. Suas características
são:
•
•
•
•
Cara.
Difícil integração (pouca capacidade em muito espaço).
Alto consumo.
Rápida.
Tempo de Acesso
Quando o processador ordena o armazenamento de um dado na memória,
este não é imediato; a memória demora um pouco para armazená-la no endereço
solicitado. O mesmo ocorre quando o processador pede que a memória devolva
um dado que nela está armazenado. Essa demora é chamada tempo de acesso e
é uma característica inerente a todas as memórias, ou seja, é uma característica
física.
O tempo de acesso é o período de tempo que demora entre o início da
ativação e a efetiva entrega (ou armazenamento) do dado solicitado. As memórias
dinâmicas assíncronas (FPM, EDO e BEDO) têm tipicamente tempo de acesso de
70 ou 60 ns. As memórias dinâmicas síncronas (SDRAM, VCM e DDR-SDRAM)
têm tipicamente um tempo de acesso de dois ou três pulsos de clock (em um
barramento local de 100 MHz, isso significa 30 ou 20 ns, já que cada pulso de
181
Arquitetura de Computadores
Marcelo Adriano Perecim
clock durará 10 ns). Nas memórias dinâmicas síncronas, o tempo de acesso é
também conhecido por latência.
Já as memórias estáticas são bem mais rápidas, apresentando tempo de
acesso de 20 ns ou menor (as que são utilizadas no cache de memória dos micros
modernos têm um tempo de acesso de apenas 5ns!) Quanto menor o tempo de
acesso, melhor!
Em circuitos de memória dinâmica assíncrona, o tempo de acesso vem
estampado na nomenclatura do circuito integrado, como sufixo. O sufixo “6” em
uma memória dinâmica assíncrona significa que esta tem 60 ns de tempo de
acesso.
Em circuitos de memória RAM síncrona – como a SDRAM, VCM e DDRSDRAM-, por ser sincronizada com o clock do barramento local, o que há escrito
no circuito integrado não é o seu tempo de acesso, mas sim a sua freqüência de
operação máxima, expressa em nanosegundos. Para obter o valor em megahertz,
basta fazer a operação:
182
Arquitetura de Computadores
Freqüência de operação máxima (em MHz) =
Marcelo Adriano Perecim
1000
Valor estampado
7.3.4 – Tecnologias de Memória RAM
Mesmo não podendo baixar o tempo de acesso da memória dinâmica
(sobretudo por causa da necessidade de ciclos de refresh), os fabricantes
conseguiram desenvolver diversas novas tecnologias de construção de circuitos
de memória RAM. Embora tenha o mesmo tempo de acesso, circuitos com
tecnologias de construção diferentes podem apresentar velocidades diferentes.
Uma memória EDO, por exemplo, é mais rápida que uma memória FPM, mesmo
quando as duas apresentam o mesmo tempo de acesso.
Tecnologia de construção de memória se refere ao tipo de circuito integrado
de memória que é utilizado (FPM, EDO, BEDO, SDRAM, DDR-SDRAM, VCM,
RDRAM,etc.). Esses circuitos poderão ser montados em qualquer tipo de módulo
de memória, em especial SIMM-72, DIMM e RIMM – ou seja, pode-se encontrar
módulos SIMM-72 ou DIMM construídos utilizando circuitos FPM, EDO, BEDO ou
SDRAM.
7.3.4.1 – Memória Fast Page Mode (FPM)
A memória FPM retém o valor da última linha acessada. Com isso, para os
próximos acessos que forem feitos à mesma linha, o controlador de memória não
precisará enviar à memória o valor da linha. O resultado disso é que o acesso é
mais rápido. Enquanto o acesso ao primeiro dado de uma linha demorará o tempo
normal, o acesso aos demais dados da mesma linha será mais rápido. O ciclo
típico para memórias FPM é 6-3-3-3 (6 pulsos de clock para o primeiro acesso e 3
para os acessos de dados na mesma linha).
Através de programas como o PC-Config e o Hwinfo pode-se visualizar qual
é o ciclo que está sendo atualmente utilizado pela memória RAM do micro. Na
figura abaixo o programa detectou que a memória é do tipo FPM, tempo de
183
Arquitetura de Computadores
Marcelo Adriano Perecim
acesso de 60 ns (DRAM Timing) e que está utilizando ciclo 6-3-3-3 (DRAM ReadBurst).
7.3.4.2 - Memória Extended Data Out (EDO)
A memória EDO (também chamada Hyper Page Mode) é uma pequena
modificação na estrutura da memória FPM. Os dados permanecem na saída da
memória por mais tempo. A conseqüência disso é que o próximo endereço poderá
ser decodificado enquanto os dados ainda estão no barramento de dados – ou
seja, ganha-se tempo.
Na realidade, a grande diferença da memória EDO para a FPM é o tempo
de ciclo de página, que é, em média, 10 ns menor para uma memória que tenha o
mesmo tempo de acesso. Na prática, a memória EDO utiliza tipicamente o ciclo 62-2-2. A figura abaixo mostra a tela do programa identificado a memória EDO.
184
Arquitetura de Computadores
Marcelo Adriano Perecim
O ganho de desempenho nominal da memória EDO sobre a FPM é de 20%.
A conta é simples: tipicamente uma memória FPM de 60 ns de tempo de acesso
utiliza 15 pulsos de clock para o acesso a quatro dados consecutivos (6-3-3-3) e,
com memória EDO de 60 ns, o número de pulsos de clock necessários cai para 12
(6-2-2-2).
Entretanto, o ganho de desempenho real é questionável, por dois motivos
básicos. Primeiro, a memória EDO só é mais rápida que a memória FPM quando
são feitos acessos consecutivos dentro de uma mesma linha. Em segundo lugar, o
impacto desse ganho de desempenho é mascarado pelo uso da memória cache,
pois em pelo menos 80% das vezes que o processador acessa a memória, na
verdade está acessando o cache de memória e não a memória RAM.
Em testes realizados em laboratório, chega-se a conclusão que na prática,
o ganho de desempenho de um micro com memória EDO em relação a um micro
com memória FPM é de cerca de 8%, sendo válido para operações de leitura em
memória. Em operações de escrita, o desempenho da memória EDO mantém-se o
mesmo da memória FPM.
7.3.4.3 - Memória Burst Extended Data Out (BEDO)
Esse tipo de memória é difícil encontrar. Além disso, não são todos os
chipsets que aceitam trabalhar com esse tipo de memória. A memória BEDO é
igual à EDO, com única diferença de ter integrado um contador de endereços.
Quando o processador necessita ler um dado, o controlador de memória só
precisa enviar o valor da linha e da coluna iniciais. A própria memória trata de
colocar os próximos três dados automaticamente no barramento de dados.
Essa modificação faz aumentar muito o desempenho para a leitura de
dados consecutivos. Na leitura de dados não-seqüenciais, a memória BEDO tem o
mesmo desempenho da memória EDO. Comparativamente aos exemplos dados
anteriormente, uma memória BEDO de 60 ns tem um ciclo 6-1-1-1 (ou seja, nove
pulsos de clock). Isso nos dá um ganho de desempenho máximo teórico de 40%
sobre a memória FPM e de 25% sobre a memória EDO.
7.3.4.4 - Memória Synchronous Dynamic RAM (SDRAM)
Ao contrário de todas as outras tecnologias apresentadas anteriormente, a
memória sícrona, isto é, utiliza-se do clock do barramento local para comandar os
seus circuitos internos. As demais tecnologias são chamadas assíncronas e não
permitem funcionamento acima de 66 MHz (embora memórias FPM e EDO
funcionem em micros com barramento de 75 MHz ou 83 MHz, as memórias
estarão trabalhando em overclock e necessitarão de mais wait states).
Os acessos consecutivos a dados presentes em uma mesma linha são
feitos usando apenas um pulso de clock, por causa da existência de um contador
interno dentro da memória, similarmente ao que acontece nas memórias BEDO.
185
Arquitetura de Computadores
Marcelo Adriano Perecim
Por esse motivo, o ciclo típico da memória SDRAM é 3-1-1-1 e uma versão com
ciclo 2-1-1-1.
Para auxiliar o chipset na configuração correta dos parâmetros desta
memória, os módulos de memória SDRAM passaram a conter um circuito
chamado SPD (Serial Presence Detect) – uma EEPROM que armazena
informações sobre a correta temporização que deve ser usada para acessar a
memória.
Há no mercado memórias com diferentes latências. Quanto menor a
latência, melhor. Pode-se descobrir a latência da memória lendo os parâmetros da
memória SPD do módulo de memória, através de programas de identificação de
hardware. As freqüências de operações mais comuns para memórias SDRAM são
apresentados na tabela abaixo:
Valor estampado
-15
-12
-10
-8
-7,5
-7
Freqüência de operação máxima
66 MHz
83 MHz
100 MHz
125 MHz
133 MHz
143 MHz
•
PC-66
Todas as memórias SDRAM abaixo de –10 são classificadas como PC-66.
Um micro com processador operando externamente a 100 MHz, deverá
obrigatoriamente utilizar memória do tipo PC-100. Se for utilizado memória PC-66,
o micro não ligará ou então apresentará erros aleatórios, como congelamentos e
resets.
•
PC-100
As memórias SDRAM classificadas como PC-100 operam a 100 MHz e possui
uma velocidade maior que as PC-66, além de outras características.
•
PC-133
Memórias –75 e –7 são classificadas como PC-133, e são destinadas a
micros com processadores operando externamente a 133 MHz.
7.3.4.5 - Memória Double Data Rate SDRAM (DDR-SDRAM ou
SDRAM-II)
Essa memória é um avanço sobre a SDRAM. Ela transfere dois dados por
pulso de clock. Atualmente existem memórias DDR-SDRAM operando a 100 MHz
e 133 MHz. Os circuitos de memória DDR-SDRAM são classificados de acordo
com o desempenho, em megahertz. Assim, existem circuitos DDR200 e DDR266.
186
Arquitetura de Computadores
Marcelo Adriano Perecim
Os módulos de memória que usam memórias DDR-SDRAM – chamados
DDR-DIMM – são classificados de acordo com a taxa de transferência obtida.
Módulos PC1600 são módulos DDR-DIMM que usam circuitos DDR200, atingindo
uma taxa de transferência máxima teórica de 1600 MB/s, e módulos PC2100 são
módulos DDR-DIMM que usam circuitos DDR266, atingindo uma taxa de
transferência máxima teórica de 2100 MB/s.
Esse tipo de memória permite que os processadores Athlon e Duron
possam atingir o seu desempenho máximo, já que esses processadores
transferem dois dados por pulso de clock.
7.4 - Módulos de Memória
Antes com a utilização de circuitos integrados discretos, era muito difícil
para o usuário comum instalar sozinho mais memória em seu micro. Sempre havia
problemas de mau contato, terminais partidos ou a instalação invertida do circuito
integrado.
•
Módulo DIP (Dual in Parallel)
A memória RAM usada na época do XT, também utilizada em alguns
micros 286. Eram pequenos chips que eram encaixados na placa mãe. Trata-se
de módulos de memórias de 8 bits, fabricados em velocidades de acesso de 150 e
120 nanosegundos (bilhonésimos de segundo).
Com o passar do tempo, vários tipos de módulos de memória foram
criados. A idéia era simples: uma plaqueta onde os circuitos integrados já vinham
soldados. Bastava ao usuário encaixar essa plaqueta à placa-mãe do micro.
187
Arquitetura de Computadores
•
Marcelo Adriano Perecim
Módulos SIPP (Single In Line Pin Package)
Esse foi o primeiro tipo de módulo de memória a ser criado e sua aparência
lembrava um pente, daí o apelido “pente de memória” para os módulos de
memória. Os seus terminais eram similares aos utilizados pelos circuitos
integrados, o que causava mau contato, permitia que terminais dobrassem ou
partissem e ainda não impediam que o usuário encaixasse o módulo invertido no
soquete.
Esses módulos eram encontrados em versões de 256 KB, 1 MB e 4 MB e
eram de 8 bits, com velocidades de acesso entre 100 e 120 nanosegundos.
•
Módulos SIMM-30 (Single In Line In Line Memory Module, 30 Terminais)
O módulo SIMM-30 é basicamente o módulo SIPP com um novo sistema de
encaixe, parecido com o utilizado por placas no encaixe aos slots de expansão do
micro. Esse sistema não permite que os módulos sejam encaixados invertidos e,
como seus terminais não são “pinos” como no módulo SIPP, não há problemas de
terminal dobrado ou partido.
Esse módulo têm 30 terminais, daí o “30” em seu nome. Assim como os
módulos SIPP, são módulos de 8 bits e encontrados em versões de 256 KB, 1 MB,
2 MB e 4 MB. Às vezes são referidos como sendo de 9 bits. Isto ocorre quando se
especifica que o módulo tem um bit a mais para a paridade.
Alguns fabricantes, a fim de reduzirem o custo de produção, contróem
módulos SIMM-30 sem memória de paridade. Se o número de circuitos integrados
for par, o módulo não tem paridade, se for ímpar, tem. Foram fabricados com
velocidade de acesso entre 100 e 70 nanosegundos.
188
Arquitetura de Computadores
Marcelo Adriano Perecim
*Dica de montagem: Ao utilizar módulos sem paridade, desabilite o teste de
paridade no setup do micro.
Um ponto importante é a quantidade de slots da placa-mãe, observe que os
slots são divididos em múltiplos de 2, ou seja, o slot 1 e 2 formam o Banco 0, os
slots 3 e 4 formam o Banco 1 e assim por diante. Geralmente as placa-mãe 386
possuem 4 ou 8 slots, já as 486 possuem 4 slots SIMM 30.
A organização dos Bancos vai depender da quantidade de bits do
microprocessador. Veja na tabela a baixo qual a configuração mínima para o
funcionamento de uma placa-mãe utilizando os módulos de memória SIMM 30.
Caso a tabela não seja seguida a placa-mãe não irá funcionar ou não reconhecerá
os pentes de memória instalados.
Processador
Preencher
Descrição para o SIMM 30
386 SX
Banco 0
O
386
SX
para
funcionar
necessitava que o banco zero fosse
preenchido, o Banco 1 poderia ficar
vazio.
386 DX
Banco 0,1
O 386 DX, só funciona com os dois
bancos preenchidos.
486 SX
Banco 0,1
Preencher o Banco 0,1
Banco 0,1
Para que a placa Motherboard
reconheça os pentes de 30 vias os
bancos 0 e 1 devem ser
preenchidos.
486 DX
Observe que todos os pentes usados nos bancos de memória devem ser de
mesmo código (capacidade, velocidade e fabricante). Na parte superior de cada
circuito integrado do pente existe uma inscrição que indica o código da memória.
O uso de pentes diferentes causa problemas de desempenho e instabilidade do
hardware, sistema operacional e dos programas abertos na memória.
189
Arquitetura de Computadores
•
Marcelo Adriano Perecim
Módulos SIMM-72 (Single In Line In Line Memory Module, 72 Terminais)
Os módulos SIMM-72 são módulos SIMM-32, criados para serem usados
em micros equipados com processadores 486, Pentium e superiores. Com isso
também surgiu a necessidade de incorporar-se um chanfro ao centro do módulo
para evitar a colocação acidental de módulos de 30 vias. No caso do Pentium é
necessário o uso de módulos em pares já que esses processadores trabalhavam
em 64 bits.
São encontrados em diversas capacidades, sendo as mais usuais 4 MB,
8MB, 16 MB e 32 MB, com velocidades entre 80 e 50 nanosegundos (no caso das
EDO).
Pode-se encontrar módulos SIMM-72 com ou sem paridade. Os módulos com
paridade são normalmente chamados de módulos de “36 bits”. Se o número de
circuitos integrados for par, o módulo não tem paridade, se for ímpar, tem (no caso
de módulos dupla-face, conte somente os circuitos de uma das faces).
Os slots SIMM 72 geralmente são em número de quatro, sendo divididos
em 2 Bancos 0 e 1. A sua configuração depende do tipo do microprocessador,
assim como no módulo SIMM 30.
Os módulos de SIMM 72 conectados em um sistema devem ser de mesmas
características (Capacidade, velocidade, fabricante) pelos mesmos motivos
descritos no modulo SIMM 30.
Processador
Preencher
Descrição para o SIMM 72
486 DX
Slot 1
Preencher o slot 1 com um pente de memória, os 486 podem
funcionar com somente um slot preenchido.
Pentium
Banco 0
Para que a Motherboard Pentium funcione o bancos 0 devem
ser preenchidos, ou seja os slots 1 e 2 devem se preenchidos.
190
Arquitetura de Computadores
Marcelo Adriano Perecim
Os módulos SIMM 72 não são muito críticos com relação ao uso de tipos
diferente na mesma placa, mais se o micro travar ou o sistema operacional tornarse instável é aconselhável usar pente iguais.
•
Módulos DIMM (Double In Line In Line Memory Module)
Os módulos DIMM normalmente têm 168 terminais e são de 64 bits.
Módulos DIMM com paridade são conhecidos como módulos de “72 bits”. Se o
número de circuitos integrados for par, o módulo não tem paridade, se for ímpar,
tem (no caso de módulos dupla-face, conte somente os circuitos de uma das
faces).
Atualmente os módulos DIMM utilizam memórias SDRAM. Os primeiros
módulos DIMM eram alimentados com 5 V (os atuais são alimentados com 3,3 V)
e usavam memórias com outras tecnologias, como FPM e EDO. Para saber a
tensão de alimentação do módulo DIMM, basta observar a posição do segundo
chanfrado da memória.
191
Arquitetura de Computadores
Marcelo Adriano Perecim
Os módulos DIMM têm uma pequena memória EEPROM, chamada SPD
(Serial Presence Detect), que armazena todos os parâmetros de temporização da
memória, facilitando enormemente a configuração do chipset da placa-mãe (o
chipset pode se autoconfigurar de acordo com a memória instalada de modo a
apresentar o melhor desempenho possível).
A existência desse circuito também facilita a vida do técnico. Através de
programas de identificação de hardware, como Hwinfo, é possível ler o conteúdo
desse circuito e saber todos os parâmetros do módulo de memória, especialmente
o seu tipo (PC-66, PC-100, PC-133) e latência do CAS (CL, que é o tipo de acesso
das memórias SDRAM).
Os módulos DIMM podem ter um buffer. Esses módulos são chamados
buffered DIMM ou registered DIMM. Esse buffer permite que o número máximo de
módulos instalados no micro seja maior. O papel do buffer é isolar os circuitos de
memória do barramento de memória. Os módulos com buffer são mais lentos,
porque o módulo gasta um pulso de clock carregando o dado em seu buffer. A
sua principal aplicação é em micros servidores de rede, que em geral são
equipados com grandes quantidades de memória RAM.
192
Arquitetura de Computadores
•
Marcelo Adriano Perecim
Módulos DDR-DIMM
Os módulos DDR-DIMM utilizam memórias do tipo DDR-SDRAM. O
tamanho do módulo é o mesmo do DIMM tradicional tendo, porém, 184 terminais e
dois chanfrados delimitadores, enquanto o módulo tradicional tem apenas um
chanfrado. Isto faz com que os módulos DDR-DIMM não consigam ser instalados
em soquetes DIMM e vice-versa.
Assim como ocorre com módulos DIMM, existem módulos DDR-DIMM com
buffer. Esse buffer diminui o desempenho da memória, porém permite a instalação
de uma grande quantidade de módulos de memória no micro. Esse tipo de módulo
é, portanto, recomendado para micros servidores de rede, e não para micros
domésticos.
•
Módulos RIMM (Rambus In Line Memory Module)
Esse tipo de módulo foi padronizado pela empresa Rambus para a
utilização de memória Rambus (RDRAM) no micro. Dessa forma, os módulos
RIMM utilizam circuitos RDRAM. Fisicamente falando, esses módulos têm
semelhanças com os módulos DIMM, porém não é possível o encaixe de módulos
RIMM em soquetes DIMM e vice-versa.
193
Arquitetura de Computadores
Marcelo Adriano Perecim
O barramento Rambus trabalha com um esquema de terminação resistiva.
Isto significa que todos os soquetes RIMM da placa-mãe precisam estar ocupados
para que o circuito seja “fechado” e o barramento funcione.
No caso de não usar todos os soquetes RIMM existente na placa-mãe,
deve-se instalar um módulo “vazio” (sem memória) nos soquetes não usados para
fechar o circuito. Esse módulo é chamado módulo C-RIMM (RIMM de
continuidade) e não tem nenhum circuito sobre ele.
7.5 – Instalação de Memória RAM
Para se instalar memória em um micro, deve-se prestar atenção no número
de bits que o processador manipula externamente (ou seja, o tamanho do
barramento de dados do processador). Dá-se o nome de banco de memória ao
conjunto de módulos (ou circuitos integrados, nos micro mais antigos) que
perfazem o mesmo número de bits do processador.
Dentro de um mesmo banco de memória, todos os módulos deverão ter a
mesma capacidade. Todos os módulos de memória do micro deverão ter o mesmo
tempo de acesso. Caso isso não seja verdade, o micro poderá travar
aleatoriamente. Primeiro deverão ser encaixados de maneira seqüencial nos
soquetes: primeiro deve-se preencher o banco 0, depois o 1 e assim
sucessivamente.
•
Instalação de Módulos SIMM-30 e SIMM-72
Para se instalar um módulo SIMM deve-se seguir os seguintes passos:
194
Arquitetura de Computadores
Marcelo Adriano Perecim
1. Insira o módulo no soquete diagonalmente. Só entra no soquete de
uma maneira, portanto não há risco de inversão, e não deverá
apresentar qualquer tipo de resistência. O módulo deve encaixar até
a base do soquete.
2. Com o módulo encaixado corretamente, empurre-o sem fazer força
no sentido indicado. Caso apresente resistência ao encaixe, afrouxe
os prendedores laterais com os dedos, simultaneamente.
3. O módulo está encaixado no soquete.
•
Instalação de Módulos DIMM, DDR-DIMM e RIMM
Para se instalar um módulo DIMM, DDR-DIMM ou RIMM deve-se seguir os
seguintes passos:
1. Afaste as presilhas laterais do soquete, no sentido de dentro para fora.
Deverão ficar em um ângulo de 45º em relação ao soquete.
2. Insira o módulo verticalmente sobre o soquete, verificando se o mesmo
está em sua posição correta, isto é se os chanfrados existentes estão
sendo encaixados corretamente sobre os chanfrados delimitadores so
soquete. Empurre o módulo até o final do soquete. As presilhas laterais
se fecharão automaticamente.
3. O módulo está corretamente encaixado.
195
Arquitetura de Computadores
Marcelo Adriano Perecim
Para tirar o módulo basta afastar as presilhas laterais do soquete no sentido
de dentro para fora. O módulo sairá automaticamente do soquete.
•
Instalação de Memória no 286
Na época do 80286, o mais comum era a utilização de memórias DIP, muito
embora algumas placas-mãe 286 aceitem módulos SIPP ou mesmo SIMM-30.
Há três tipos de memórias DIP que podem ser utilizadas pelo 80286:
Nomenclatura
41256
411000
44256
Capacidade
256 K x 1 bit
1024 K x 1 bit
256 K x 4 bits
Número de terminais
16 terminais
18 terminais
20 terminais
Como o 80286 é um processador de 16 bits, cada banco de memória
deverá ter 16 bits. No caso de se utilizar paridade, cada banco deverá ter 18 bits
(1 bit de paridade a cada 8 bits de dados).
196
Arquitetura de Computadores
•
Marcelo Adriano Perecim
Instalação de Memória no 386SX
Como esse processador tem um barramento de dados de 16 bits, tem
exatamente o mesmo esquema de instalação de memória do 80286. Na época do
386SX, porém, o mais comum era a utilização de módulos SIMM-30. Como esses
módulos são de 8 bits, cada banco de memória será formado por dois módulos
SIMM-30.
197
Arquitetura de Computadores
•
Marcelo Adriano Perecim
Instalação de Memória no 386DX
Placas-mãe 386Dx basicamente utilizam módulos SIMM-30. Como o 386DX
é um processador de 32 bits e cada módulo SIMM-30 é de 8 bits, cada banco será
formado por quatro módulos de memória.
•
Instalação de Memória no 486 e 5x86
Todos os modelos de 486 e 5x86 têm o barramento de dados de 32 bits. Na
época do 486, surgiu o módulo SIMM-72. Com isso pode-se encontrar placas-mãe
486 com soquetes para módulos SIMM-30 ou para SIMM-72 – ou até mesmo
placas-mãe que aceitam os dois tipos de módulo.
No caso de utilizar módulos SIMM-30, o esquema é igual ao do 386DX:
cada banco será formado por quatro módulos. No caso de módulos SIMM-72,
como são de 32 bits, basta apenas um módulo para formar um banco.
198
Arquitetura de Computadores
•
Marcelo Adriano Perecim
Instalação de Memória no Pentium e Superiores
Todos os processadores Intel e não-Intel a partir do Pentium têm um
barramento de 64 bits. No caso da instalação de módulos SIMM-72, como esses
módulos são de 32 bits, serão necessários dois módulos para formar um banco de
memória.
Caso a placa-mãe tenha soquetes para módulos DIMM ou DDR-DIMM, a
instalação é muito mais simples: como esses módulos são de 64 bits, basta
apenas um módulo para formar um banco. O cuidado a ser tomado é instalar
módulos de acordo com a freqüência de operação do barramento local. Se o
barramento local operar a 66 MHz, deve-se instalar módulos PC-66. Se o
barramento operar a 100 MHz, deve-se instalar módulos PC-100. No caso do
barramento operando a 133 MHz, deve-se instalar módulos PC-133.
A princípio pode-se instalar módulos PC-133 em micros que usem
barramento de 100 MHz sem problemas, assim como módulos PC-100 em micros
que usem barramento de 66 MHz. Esse tipo de instalação não é limitada pelo
processador, mas sim pelo chipset da placa-mãe.
No caso dos módulos DDR-SDRAM, pode-se instalar os módulos de acordo
com o barramento externo do processador. Os módulos PC1600 (1.600 MB/s)
trabalham fisicamente a 100 MHz e os módulos PC2100 (2.100 MB/s) trabalham
fisicamente a 133 MHz.
•
Instalação de Memória Rambus
A instalação de módulos RIMM tem dois detalhes importantes. Primeiro,
deve-se completar o número de canais Rambus existentes. Se a placa-mãe tiver
um chipset com dois canais Rambus, isso significa que os módulos RIMM deverão
199
Arquitetura de Computadores
Marcelo Adriano Perecim
ser instalados em pares, e esses pares deverão ser módulos iguais (mesma
velocidade e mesma capacidade).
O segundo detalhe é que o barramento Rambus utiliza um sistema de
terminação resistiva. Por isso, todos os soquetes RIMM da placa-mãe deverão
estar preenchidos. Caso existam soquetes que ficarão vazios, deve-se instalar
módulos C-RIMM para fechar o circuito.
200
Arquitetura de Computadores
Marcelo Adriano Perecim
7.6 - Memórias DDR Dual Channel
Na incansável busca pelo desempenho máximo, dois fabricantes de chipset
- Intel e nVidia - estão lançando chips para placas-mãe capazes de acessar a
memória RAM a 128 bits. A memória RAM é normalmente acessada a 64 bits.
Com o seu acesso pulando para 128 bits, a taxa de transferência passa a ser o
dobro.
Essa é uma excelente idéia para aumentar a velocidade de acesso à
memória RAM, que é hoje um dos grandes entraves para o aumento de
desempenho no PC. Veja o caso do Pentium 4. Ele transfere quatro dados por
pulso de clock com a memória RAM. Nos modelos de Pentium 4 que trabalham a
100 MHz, isso equivale a uma taxa de transferência de 3.200 MB/s ou como se ele
trabalhasse externamente a 400 MHz. É por isso que muitas vezes vemos escrito
por aí que o Pentium 4 trabalha externamente a 400 MHz, embora isso não seja
verdade. Já nos modelos que trabalham a 133 MHz, a taxa de transferência
máxima teórica desse processador é de 4.264 MB/s ou como se ele trabalhasse
externamente a 533 MHz.
Quando o Pentium 4 foi lançado, as memórias mais usadas na época eram
as memórias SDRAM (PC100 e PC133), que têm uma taxa máxima de 1.066
MB/s. Logo, o Pentium 4 instalado com memórias SDRAM não consegue
desenvolver todo o seu potencial, já que ele tenta acessar a memória a pelo
menos 3.200 MB/s. As memórias DDR-SDRAM surgiram como uma excelente
esperança. Esse tipo de memória transfere dois dados por pulso de clock,
dobrando a taxa de transferência. Mas somente a memória DDR400 é capaz de
explorar o potencial máximo dos processadores Pentium 4 de 100 MHz. E há
poucas placas no mercado para o Pentium 4 que aceitam memórias DDR400,
bem como as memórias DDR400 são raras no Brasil.
Memória Taxa Máxima de Transferência
PC66 Æ 533 MB/s
PC100 Æ 800 MB/s
PC133 Æ 1.066 MB/s
DDR200 Æ 1.600 MB/s
DDR266 Æ 2.100 MB/s
201
Arquitetura de Computadores
Marcelo Adriano Perecim
DDR333 Æ 2.700 MB/s
DDR400 Æ 3.200 MB/s
No caso dos novos chipsets da Intel, 7205 (para Pentium 4) e 7505 (para
Xeon, que é um processador para servidores), a placa-mãe acessa memórias até
DDR266 a 128 bits, ou seja, a uma taxa de 4.264 MB/s - não à toa a mesma taxa
usada pelos processadores Pentium 4 que operam externamente a 133 MHz permitindo que o Pentium 4 desenvolva todo o seu potencial.
No lado dos processadores da AMD, eles também têm problema similar,
pois acessam a memória transferindo dois dados por pulso de clock. Isso era um
problema na época das memórias SDRAM, pois os processadores da AMD que
operam a 100 MHz externamente tentam acessar a memória a 1.600 MB/s e os
que operam a 133 MHz tentam acessar a memória a 2.100 MB/s. Esse problema
de desempenho foi contornado com o uso das memórias DDR-SDRAM, capazes
de "casar" o seu desempenho com o desempenho de acesso do processador.
Mesmo assim a nVidia lançou chipsets chamados nForce e nForce 2 que
acessam a memória a 128 bits, obtendo o dobro da taxa padrão. Por exemplo, o
nForce 2 aceita memórias DDR400 e se forem usadas memórias desse tipo, a sua
taxa de transferência pula de 3.200 MB/s para 6.400 MB/s.
A grande vantagem desse esquema é que ele usa memórias DDR comuns,
não necessitando de memórias "especiais" de 128 bits. Para usar esse esquema,
sua placa-mãe tem de usar o chip Intel 7205 (para Pentium 4) ou nForce (para
Athlon ou Duron).
O esquema DDR Dual Channel se popularizou de vez. Antes restrito a
usuários avançados que optavam por uma placa-mãe com chipset nForce ou
nForce 2 da nVidia (para processadores da AMD), ou Intel 7205 ou SiS 655 (para
processadores da Intel), o DDR Dual Channel está agora presente em toda a nova
família de chipsets da Intel para a plataforma soquete 478 - chipsets da série i865
e i875.
Em teoria, o uso da configuração DDR Dual Channel
transferência do chipset com a memória RAM, por acessar
memória ao mesmo tempo, em vez de apenas um. Ou seja,
módulos DDR400, a taxa de transferência máxima pularia de
6.400 MB/s.
dobra a taxa de
dois módulos de
se usarmos dois
3.200 MB/s para
Mas ainda estava no ar a grande pergunta: esse esquema realmente
aumenta o desempenho do micro? Uma coisa é a teoria, outra coisa é a prática.
202
Arquitetura de Computadores
Marcelo Adriano Perecim
No caso das memórias DDR400, por exemplo, apesar de sua taxa máxima de
transferência ser de 3.200 MB/s raramente ela é obtida.
Além disso, qual é o impacto no desempenho geral do micro de um
aumento na taxa de transferência com a memória RAM?
Para verificarmos essas questões realizamos testes em nosso laboratório
tanto com a plataforma da AMD quanto com a plataforma da Intel, a fim de
verificarmos o ganho de desempenho obtido quando usamos o esquema DDR
Dual Channel e se vale à pena passarmos a usar dois módulos de memória
idênticos em placas-mãe que suportam esse esquema.
A nossa configuração foi a mais topo de linha possível, de forma que a taxa
de transferência fosse a maior possível. No lado da AMD, usamos o processador
Athlon XP 3200+, que usa o barramento de 400 MHz (200 MHz DDR, isto é,
transferindo dois dados por pulso de clock). Já no lado da Intel, usamos o
processador Pentium 4 de 3 GHz, que usa o barramento de 800 MHz (200 MHz
QDR, isto é, transferindo quatro dados por pulso de clock).
É importante notar que ambos os processadores fisicamente rodam
externamente a 200 MHz. No caso do Athlon XP 3200+, como ele transfere dois
dados por pulso de clock, é dito que ele tem um desempenho como se estivesse
operando a 400 MHz, dando uma taxa de transferência máxima teórica de 3.200
MB/s com a memória RAM. Já o Pentium 4 de 3 GHz, como ele transfere quatro
dados por pulso de clock, é dito que ele tem um desempenho como se estivesse
operando a 800 MHz, dando uma taxa de transferência máxima teórica de 6.400
MB/s.
De cara, já podemos concluir que o único processador capaz de realmente
tirar proveito total do esquema DDR Dual Channel usando memórias DDR400 é o
Pentium 4 com barramento de 800 MHz. E o Athlon XP, como fica nessa história?
É vantagem usar o esquema DDR Dual Channel com esse processador? Veremos
isso em nossos testes.
Aproveitamos a oportunidade também para compararmos o desempenho
da memória DDR400 versus a memória DDR333 no esquema DDR Dual Channel.
Isto é, é vantagem pagar mais para ter uma memória topo de linha?
Usamos três marcas diferentes de memória em nossos testes: Corsair, TwinMOS
e Spectek. Das duas primeiras usamos módulos DDR400/PC3200, enquanto da
última usamos módulos DDR333/PC2700.
203
Arquitetura de Computadores
Marcelo Adriano Perecim
DDR Dual Channel Com Pentium 4
Usamos em nossos testes com a configuração DDR Dual Channel na
plataforma da Intel o processador Pentium 4 de 3 GHz, que usa o novo
barramento de 800 MHz. Esse barramento é capaz de atingir uma taxa de
transferência de até 6.400 MB/s, a mesma taxa máxima teórica do DDR Dual
Channel usando memórias DDR400/PC3200. A grande pergunta é: na prática
esse processador é capaz de atingir essa taxa de transferência com a memória?
A placa-mãe usada, Gigabyte GA-8KNXP usa o chipset Intel 875P, que é o
chipset topo de linha da Intel para a sua plataforma, usando o esquema DDR Dual
Channel.
Além disso, esse processador tem a tecnologia HyperThreading, que simula
a existência de dois processadores. Fizemos os nossos testes tanto com essa
tecnologia habilitada quanto com ela desabilitada, para verificarmos o impacto
dessa tecnologia no acesso à memória.
Fizemos vários testes com essa plataforma, usando os programas que
discriminamos anteriormente. Para medir a taxa de transferência com a memória
RAM, usamos dois programas, o AIDA32 e o Sandra. Ambos obtiveram resultados
muito parecidos, que mostramos no gráfico abaixo. Os resultados tanto com a
tecnologia HyperThreading habilitada quanto desabilitada foram os mesmos, por
isso no gráfico abaixo não estamos colocando os dois resultados (com HT e sem
HT).
No gráfico nós marcamos qual é a taxa máxima teórica dos padrões
DDR333/PC2700 (2.700 MB/s) e DDR400/PC3200 (3.200 MB/s) bem como qual é
a taxa máxima teórica desses padrões operando em Dual Channel (5.400 MB/s e
6.400 MB/s, respectivamente).
Graças ao barramento de 800 MHz do Pentium 4 finalmente vemos uma
configuração que passe dos 3.200 MB/s do padrão DDR400. A taxa de
204
Arquitetura de Computadores
Marcelo Adriano Perecim
transferência da memória DDR400 da TwinMOS aumentou 47,15% quando
passamos de um único módulo instalado para dois módulos em Dual Channel,
ficando em 4.413 MB/s. Essa taxa foi 37,91% maior que a taxa padrão do DDR400
(3.200 MB/s), representando um uso de 68,95% da banda disponível pelo DDR
Dual Channel (6.400 MB/s).
Já a taxa de transferência da memória DDR333 da Spectek aumentou
61,03% quando passamos a operar em DDR Dual Channel, atingindo 3.955 MB/s.
Essa taxa foi 46,48% maior que a taxa padrão do DDR333 (2.700 MB/s),
representando um uso de 73,24% da banda disponível pelo esquema DDR Dual
Channel com memórias PC2700 (5.400 MB/s).
Já o embate entre as memórias DDR400 vs. DDR333 mostra que há
realmente vantagem no uso de memórias DDR400, pelo menos em relação à taxa
de transferência obtida: a taxa de transferência do DDR Dual Channel usando dois
módulos DDR400 TwinMOS foi 11,581% maior do que usando dois módulos
Spectek DDR333/PC2700.
205