Home » Artigos arquivados » 1997 – Expandindo a memória em micros antigos

1997 – Expandindo a memória em micros antigos

Expandindo a memória em micros antigos

Autor: Laércio Vasconcelos
Dezembro/1997

Um micro antigo pode ser recuperado para executar tarefas simples, como edição de textos e acesso à Internet, mas é preciso que tenha uma boa quantidade de memória. Para essas tarefas simples, 32 MB é uma boa quantidade, e 64 MB é excelente. As memórias a serem usadas são encontradas em lojas de peças para micros usados. Veja como realizar a expansão, que nesses micros antigos era muito mais difícil que nos modelos atuais.

Aqui está um artigo que ensina a expandir a memória, em PCs baseados no 386, 486, 586, Pentium e similares, bem como Pentium Pro, Pentium MMX, K6 e Pentium II. Nesta primeira parte apresentamos os conceitos de compatibilidade, tempo de acesso, número de bits, tipos de memória, etc. Na segunda parte mostramos as expansões propriamente ditas, incluindo diversos exemplos.

Independe da Microsoft

Na microinformática, é muito comum culpar a Microsoft e o seu dono, Bill Gates, por muitas coisas. Nem sempre ele é o único culpado. Por exemplo, no ano de 1995 escrevi o livro “Hardware Avançado”, lançado mais ou menos na mesma época em que foi lançado o Windows 95. Como eu precisava dar exemplos reais de instalação dos dispositivos à venda na época, (como placas de som e placas de modem) e nenhum deles era acompanhado de software específico para o Windows 95, fui obrigado a usar exemplos baseados em softwares para o Windows 3.x. Como resultado, meu livro já foi lançado fora de sintonia com o Windows 95 (apesar dos livros que tratam de instalações de hardware em ambiente Windows 95 só terem surgido muito depois). Muito bem, agora estou escrevendo um livro voltado para o Windows 95, e logo será lançado o Windows 97! Bem, pelo menos, as técnicas de instalação de hardware no Windows 95 continuarão válidas no Windows 97 (já recebi a sugestão de escrever romances, para não passar por este tipo de problema).

No que diz respeito às memórias, temos muitas notícias boas. A primeira delas é a acentuada queda de preços sofrida pelas memórias (dizem que também é culpa do Bill Gates, pois com a expectativa da elevada demanda de memórias causada pelo Windows 95, os fabricantes aumentaram a produção, e os revendedores aumentaram seus estoques, o que acabou resultando em queda de preços). A outra notícia boa é que a memória não possui nenhum tipo de vínculo com o sistema operacional, e seus métodos de instalação são sempre os mesmos, não importa qual será o sistema operacional utilizado. Eu poderia simplesmente repetir aqui o capítulo do livro Hardware Avançado no qual é abordada a expansão de memória. Entretanto, este capítulo será inteiramente novo, não devido à evolução dos sistemas operacionais, e sim, devido aos novos tipos de memória criados visando um melhor desempenho.

O principal objetivo deste capítulo é tratar sobre a instalação e a expansão de memória RAM. Caso típico de um computador com 8 MB, no qual o usuário pretende instalar mais 8 MB, ou outra quantidade qualquer. Atualmente, podemos até mesmo instalar uma quantidade exagerada de memória. Em meados de 1995, era preciso juntar no mínimo 160 dólares para comprar 4 MB de RAM. Ao início de 1997, os mesmos 160 dólares são suficientes para comprar 32 MB de RAM. Seria correto portanto recomendar 32 MB como a quantidade mínima de memória a ser instalada em um PC moderno.

Placas antigas

Este livro é anunciado, na própria capa, como sendo “para Windows 95”, e portanto, supõe-se que seus compradores não estão utilizando computadores antigos. Por isto, poderemos abordar alguns tópicos relacionados com expansões em micros antigos, mas não os detalharemos. Deixaremos de lado aqui as expansões que envolvem memórias DRAM com encapsulamentos DIP e SIPP, comuns nas placas de CPU fabricadas até 1991. Para esses computadores antigos, indicaremos mais adiante, o uso de uma placa de expansão de memória de 16 bits, por ser um método fácil que aproveita módulos de memória modernos. Também deixaremos de lado a expansão de memória em micros XT, pois suas placas de CPU normalmente não permitiam expansão de memória.

Iremos portanto discutir a expansão de memória em placas de CPU fabricadas a partir de 1992 (386DX em diante), nas quais são usados módulos SIMM de 30 e/ou de 72 pinos, bem como as modernas memórias DIMM de 168 pinos.

O que deve ser levado em conta na expansão de memória

Lembre-se de que em um PC existem vários tipos de memórias, localizadas em diversas placas:

Memória DRAM
Memória Cache
ROM BIOS
Memória de vídeo

Quando escutamos alguém falando sobre expandir a memória, é 99% provável que esteja se referindo à DRAM. Entretanto, existem alguns casos menos comuns, como a expansão da memória cache e da memória de vídeo. No capítulo 7, falaremos sobre a expansão da memória de vídeo, e no capítulo 8, dedicado a placas de CPU, falaremos sobre a expansão da memória cache. Nosso objetivo no presente capítulo será apresentar a expansão da memória DRAM. Muitos usuários consideram que, ao falar em expansão de memória, está implícito que trata-se da expansão da DRAM. Aqui mesmo neste capítulo faremos isto, ou seja, ao usarmos o termo “expansão de memória”, estaremos sempre nos referindo à DRAM, a menos que seja especificado o contrário.

Quanto às ROMs, não se preocupe. Não é usual o que poderia ser chamado de “expansão da ROM”. A ROM existente na placa de CPU, na qual está armazenado o BIOS, possui tamanho suficiente para este armazenamento, sem que seja necessário (nem mesmo é possível) realizar uma expansão. O mesmo pode ser dito sobre as ROMs que armazenam o BIOS de algumas placas de expansão, como as placas VGA e SVGA, e algumas menos comuns, como controladoras SCSI e placas de rede.

Passemos então a falar sobre a expansão da DRAM. Trata-se de uma operação relativamente fácil, desde que o usuário utilize o tipo de memória correto. Muita dor de cabeça pode ser sofrida caso seja adquirido um tipo de memória inadequado. Também é preciso saber se a expansão de memória é economicamente vantajosa. Digamos por exemplo que um usuário está insatisfeito com o seu 386DX-40, com 4 MB de memória, e tenha interesse em aumentá-la para 16 MB, visando obter melhor desempenho. Esta expansão custará cerca de 100 dólares. Por outro lado, com 160 dólares podemos comprar uma placa de CPU 486DX4-100, 5 vezes mais veloz que a do 386DX-40. Entretanto, se forem mantidos os mesmos 4 MB, o desempenho do 486DX4-100 será prejudicado, devido à elevada quantidade de acessos a disco. Fica portanto recomendada a instalação de uma nova placa de CPU ($160), com 16 MB de memória ($100). O gasto acaba sendo superior ao esperado, mas o desempenho será muito superior.

Na impossibilidade de gastar de uma só vez o dinheiro necessário para trocar a placa de CPU e expandir a memória, o usuário ficará tentado a fazer uma coisa de cada vez. Ocorre que as memórias usadas no 386 normalmente não servem no 486. Seria portanto inútil expandir a memória do 386, pensando em aproveitar futuramente esta memória na nova placa de CPU. Trocar a placa de CPU antes, mantendo as memórias antigas, também pode não ser possível, pelo fato das memórias antigas não servirem nas placas de CPU mais novas (normalmente). Seria sensato guardar o dinheiro para fazer, de uma só vez, a expansão da memória e a substituição da placa de CPU.

Em qualquer tipo de upgrade, temos que levar em conta qual é o componente do PC que está mais defasado. Por exemplo, se o disco rígido possui uma capacidade satisfatória, o microprocessador é razoavelmente veloz mas a quantidade de memória é pequena, é recomendada uma expansão de memória. Se por outro lado, o microprocessador é lento, e a quantidade de memória é pequena, a simples expansão da memória pode não fornecer os resultados desejados em matéria de desempenho.

Neste capítulo, ensinaremos a expandir a memória em diversos tipos de placas de CPU, mas não analisaremos se a expansão vale a pena ou não. Deixamos que o próprio leitor, em função dos preços vigentes e dos equipamentos disponíveis (que poderão variar bastante ao longo do tempo), determine qual é o tipo de upgrade mais vantajoso. Usando os conceitos do capítulo 1, e consultando os preços e as configurações disponíveis no mercado, você poderá decidir que tipo de upgrade é prioritário.

Uma vez decidido que a memória será expandida, alguns fatores técnicos devem ser levados em conta, para que seja comprado o tipo correto de memória:

Local para instalação de novas memórias
Encapsulamento
Capacidade
Tempo de acesso
Tipo: FPM, EDO, SDRAM, etc.
Paridade
Fabricante

Para esta escolha, o manual da placa de CPU traz informações muito úteis. Isto não significa que sempre será necessário consultar o manual da placa de CPU para fazer uma expansão de memória. Na maioria das placas, basta simplesmente encaixar um módulo de memória no soquete apropriado, e estará pronta a expansão. Entretanto, para que o usuário fique 100% seguro de que está fazendo a coisa certa (e o mais importante ainda, comprando a memória certa), é preciso consultar o manual da placa de CPU.

Façamos a seguir uma breve análise dos pontos que devem ser levados em conta em uma expansão de memória.

Local para instalação de novas memórias

Felizmente, este é um tipo de questão que raramente causa problemas nas placas de CPU modernas, e mesmo em outras mais antigas, a partir do 386DX. Todas as placas de CPU, modernas ou antigas, são projetadas para aceitar uma quantidade máxima de memória. Ocorre que há anos atrás, este limite era muito pequeno. Por exemplo, muitas placas de CPU 286 aceitavam um máximo de 2 MB. Aquelas placas aceitavam, por exemplo, uma expansão de 1 MB para 2 MB, através da instalação de 1 MB adicional. Chegavam então ao fim da linha, não sendo possível aumentar mais a memória. Usuários muito exigentes que precisassem de mais memória deveriam adquirir uma placa especial, chamada de “placa de expansão de memória”. Tratava-se de uma placa ISA (16 bits), na qual poderiam ser instalados até 16 MB de DRAM. Placas como esta ainda existem, mas é muito difícil encontrá-las. Placas deste tipo não são uma opção recomendável para os PCs atuais, pois pelo fato de usarem o barramento ISA, operam com 16 bits e 8 MHz, muito abaixo do utilizado pelos modernos PCs baseados no Pentium e no 486:

486: 32 bits
até 40 MHz

Pentium: 64 bits
até 66 Mhz

Levando em conta esses fatores, concluímos que as antigas placas de expansão de memória são até 10 vezes mais lentas que o exigido pelo 486, e até 32 vezes mais lentas que o exigido pelo Pentium. Placas de CPU 486 e Pentium não precisam utilizar placas de expansão de memória ISA, pois possuem local para instalação de módulos de memória SIMM, chegando a capacidades que satisfazem até o mais exigente dos usuários.

Essas placas de expansão são lentas até mesmo para os padrões do 386. Placas de CPU 386 fabricadas a partir de 1992 em geral possuem local para instalação de até 32 MB de DRAM em módulos SIMM, dispensando assim a placa de expansão de memória ISA. Entretanto, é possível encontrar placas de CPU ainda mais antigas, de 1991 ou anteriores, que suportavam no máximo 4 MB de DRAM. Placas de CPU 286 e 386 anteriores a esta época podem ter sua memória aumentada além do seu limite, usando placas de expansão de memória ISA. Assim como existem pessoas que mantém carros muitos antigos em pleno funcionamento (verdadeiras relíquias), existem pessoas que mantém velhos micros XT, 286 e modelos antigos do 386 em pleno uso. Os interessados em expandir a memória desses velhos micros poderão fazê-lo mediante importação. Existe uma empresa americana que comercializa, pelos correios, vários produtos de hardware para PCs antigos e modernos. Lá é possível encontrar desde placas de CPU 286 até Pentium Pro, desde chips de expansão de memória para XT até placas de vídeo tridimensionais. Trata-se da JDR Microdevices (fax # 001-408-494-1420). Pode ser solicitado o seu catálogo de produtos, pelos correios, no qual o usuário pode fazer a seleção do que deseja. Também é possível contactar a JDR pela Internet. Seu endereço é:

http://www.jdr.com

Placas de CPU antigas também podem ter sua memória aumentada sem o uso de placas adicionais, aproveitando o espaço para expansão que algumas delas possuem. Este é o caso de placas que possuem, por exemplo, 1 MB e ainda soquetes vazios para a instalação de mais 1 MB. Será preciso adquirir os chips de memória apropriados (a JDR também vende esses chips de memória). Entretanto, esta expansão só é recomendada se o usuário ainda possui o manual da placa de CPU. A razão disso é que aquelas placas antigas quase sempre possuíam jumpers para definir a quantidade de memória instalada. Sem o manual da placa de CPU, é impossível saber quais são os jumpers que definem a quantidade de memória, e a expansão será um fracasso. De posse do manual da placa de CPU, podemos saber também qual é o tipo de DRAM a ser instalada, fazendo assim a compra correta.

Nas placas de CPU fabricadas a partir de 1992, encontramos vários bancos de memória. Alguns desses bancos estarão em uso, e outros provavelmente estarão livres para a instalação de novas memórias. A figura 1 mostra os bancos de memória de uma certa placa de CPU 386DX. Nesta placa, cada banco é formado por 4 módulos SIMM de 30 pinos. Como podemos ver, um banco está preenchido com esses módulos, e o outro banco, constituído dos 4 soquetes vazios, está disponível para expansão.

ART20-01

Figura 1 – Bancos de memória de uma placa de CPU 386DX. Dos dois bancos, um está ocupado e o outro está livre para expansão.

Na figura 2 vemos os bancos de memória de uma placa de CPU 486 que aceita, tanto módulos SIMM de 30 como de 72 pinos. Podemos observar que ainda existem soquetes vazios, o que normalmente indica que pode ser feita uma expansão. Entretanto, no caso específico de placas que aceitam ambos os tipos de módulo, o fato de existir um banco vazio nem sempre indica que pode ser usado, pois um dos bancos de 72 pinos não pode ser usado simultaneamente com o banco de 30 pinos. Teremos que analisar este caso com mais detalhes.

ART20-02

Figura 2 – Bancos de memória de uma placa de CPU 486 que aceita, tanto módulos de 30 como de 72 pinos.

Placas de CPU 486 de fabricação mais recente aboliram totalmente os módulos SIMM de 30 pinos. Possuem normalmente 4 bancos, cada um deles formado por um módulo SIMM de 72 pinos. Na placa da figura 3 vemos que um dos bancos está ocupado, e os outros três estão livres para expansão.

ART20-03

Figura 3 – Bancos de memória de uma placa de CPU 486 de fabricação mais recente.

Nas placas de CPU Pentium, são usados módulos SIMM de 72 pinos. Cada um dos seus bancos é formado por dois módulos (lembre-se que o Pentium exige uma memória de 64 bits, e cada módulo de 72 pinos fornece 32 bits, sendo portanto necessários 2 módulos para formar um banco de 64 bits). Normalmente essas placas possuem 2 bancos (4 soquetes), mas é possível encontrar algumas com 3 e até 4 bancos (6 e 8 soquetes, respectivamente). Na figura 4 vemos os bancos de memória de uma certa placa de CPU Pentium. Observe que existem 2 bancos (4 soquetes). Um desses bancos está ocupado por dois módulos, e o outro banco está livre para uma expansão.

Quase sempre, as placas de CPU modernas possuem bancos livres para expansão, a menos que esses bancos não tenham sido preenchidos da forma mais inteligente. Por exemplo, podemos preecher os 2 bancos da figura 4 de duas formas, visando completar 16 MB:

Primeiro banco: 2 módulos de 8 MB; Segundo banco: Vazio

Primeiro banco: 2 módulos de 4 MB; Segundo banco: 2 módulos de 4 MB

A opção (a) é a melhor, pois deixa livre um banco para uma futura expansão. Podemos então fazer uma expansão aproveitando os módulos já existentes, e apenas instalando módulos adicionais no banco que está livre. A opção (b) não é a mais recomendada, pois ocupa desnecessariamente todos os bancos disponíveis. Nesse caso, para realizar uma expansão, precisaremos remover os módulos já instalados, substituindo-os por outros de maior capacidade. O custo deste tipo de expansão acaba sendo maior, já que os módulos antigos não são aproveitados.

ART20-04

Figura 4 – Bancos de memória de uma placa de CPU Pentium.

Encapsulamento das memórias

Sem dúvida este é um item com o qual todos os usuários se preocupam antes de comprar memórias para uma expansão. Nas placas de CPU posteriores a 1992, são usados módulos SIMM de 30 pinos, e nas posteriores a 1994, são mais comuns os módulos SIMM de 72 pinos. Estão começando a aparecer também placas que utilizam módulos de 168 pinos, chamados de DIMM (Double In-line Memory Module). Os três tipos de módulos são mostrados na figura 5. Módulos de 30 pinos estão caindo em desuso desde 1994, e os módulos de 168 pinos ainda são muito raros. Portanto, os módulos de 72 pinos são os mais usados.

Os módulos SIMM de 30 pinos medem 8,9 cm de largura, os de 72 medem 10,8 cm, e os de 168 pinos medem 13,3 cm, aproximadamente, o que os torna inconfundíveis.

Ao comprar memórias para expansão em uma placa que só aceita módulos de 30 pinos, é óbvio que devem se adquiridos módulos de 30 pinos. Da mesma forma, em placas que aceitam apenas módulos de 72 pinos, este deve ser o tipo comprado. Dúvidas podem surgir no caso de placas que podem operar simultaneamente com módulos de 30 e de 72 pinos. O usuário pode ser levado a pensar que ambos os tipos de módulos podem ser usados, o que nem sempre é verdade, já que um dos bancos de 72 pinos não pode ser usado em conjunto com o banco de 30 pinos. Será preciso fazer uma análise mais detalhada, como veremos mais adiante neste capítulo. É bom lembrar que deve ser dada prioridade ao uso de módulos de 72 pinos, já que os de 30 pinos são cada vez mais difíceis de encontrar. Em caso de dificuldade, será preciso encomendar essas memórias, ou em um caso extremo, comprá-las diretamente no exterior. A já citada JDR Microdevices é um bom fornecedor, já que mantém em estoque até mesmo componentes de uso mais raro.

ART20-05

Figura 5 – Módulos SIMM de 30 e de 72 pinos, e um módulo DIMM de 168 pinos.

Como já abordamos, existem algumas placas que suportam módulos SIMM de 72 pinos e DIMM de 168 pinos. Como os módulos de 72 pinos são os mais comuns, é conveniente dar prioridade a esse tipo de módulo. Obviamente nos próximos anos os módulos de 168 pinos passarão a ser os mais comuns, e a estes deverá ser dada a prioridade.

Apenas algumas placas de CPU Pentium e Pentium Pro possuem soquete para módulos DIMM de 168 pinos (existem ainda módulos DIMM com 200 pinos). Um único módulo DIMM é suficiente para formar um banco de memória de 64 bits em uma placa de CPU Pentium ou Pentium Pro. As poucas placas de CPU que possuem soquetes para módulos DIMM, possuem também soquetes para módulos SIMM em maior quantidade. Mais adiante neste capítulo, veremos exemplos de instalação e expansão de memória em placas que usam módulos DIMM.

Para instalar memórias em uma placa de CPU, é preciso saber manuseá-las corretamente. No final deste capítulo, mostraremos como é feito este manuseio, de modo que possa ser feito um encaixe correto.

Capacidade das memórias

Existem módulos SIMM com diversas capacidades, mas nem todas as placas de CPU aceitam todos os tipos existentes. É preciso consultar o manual da placa de CPU para saber quais tipos podem ser usados. Em geral, placas mais modernas tendem a aceitar módulos de maior capacidade, ocorrendo o inverso nas placas antigas.

Os módulos SIMM de 30 pinos estão disponíveis nas seguintes capacidades:

256 kB
1 MB
4 MB
16 MB

Nas placas que utilizam este tipo de módulo, os de 1 MB são os mais comuns. Módulos de 30 pinos com 256 kB são raros, pois se fossem instalados 8 (em dois bancos com 4 módulos), teríamos apenas 2 MB de memória no total. Da mesma forma, os módulos de 30 pinos com 16 MB são raríssimos, e também são caros. Como esses módulos são usados em grupos de 4, um banco preenchido com esses módulos teria 64 MB, o que é muito raro nos micros que operavam com módulos de 30 pinos (386 e 486 antigos). Se hoje os preços das memórias caíram bastante, e já é possível comprar 64 MB com menos de 300 dólares, isto não é feito com módulos de 30 pinos, e sim, em módulos de 72 pinos, e mesmo assim em placas de CPU Pentium e Pentium Pro.

Os módulos de 30 pinos mais usados são os de 1 MB e 4 MB. Com 4 módulos de 1 MB, completamos um banco de 4 MB, e com 8 deles, temos 8 MB. A maioria dos computadores entre 1992 e 1995 recaía em um desses casos. Módulos de 30 pinos com 4 MB eram muito usados por aqueles que pretendiam ter mais de 8 MB. Nesse caso, 4 módulos formam 16 MB.

Antes de expandir a memória através de módulos de 30 pinos, será preciso verificar quais são as capacidades permitidas. Placas mais antigas aceitam apenas módulos de 256 kB e 1 MB. A maioria delas pode operar ainda com módulos de 4 MB, sendo que algumas delas não aceitam módulos de 256 kB. Algumas placas de CPU 486 chegam a aceitar módulos de 16 MB.

Existem muitas outras opções disponíveis para as capacidades dos módulos de 72 pinos. Podemos encontrá-los com as seguintes capacidades:

1 MB
2 MB
4 MB
8 MB
16 MB
32 MB
64 MB
128 MB

Assim como no caso dos módulos de 30 pinos, nem todas as placas de CPU estão preparadas para trabalhar com módulos de 72 pinos com todas as capacidades. Placas mais antigas em geral suportam módulos com as menores capacidades (1 MB, 2 MB, 4 MB, 8 MB e 16 MB), enquanto as mais modernas podem também com módulos de 32 MB, 64 MB e 128 MB, deixando de lado os de 1 MB e 2 MB. Será preciso consultar o manual da placa de CPU para saber quais são as capacidades permitidas. Caso seja impossível consultar o manual da placa de CPU (se você perdeu este manual, ou então se não o recebeu na ocasião da compra – lamentável…), existem algumas dicas que podem ser usadas:

Veja quais são as capacidades dos módulos já instalados. Módulos de mesma capacidade poderão ser usados para preencher outros bancos.

Praticamente todas as placas de CPU 386 ou 486 fabricadas entre 1992 e 1994 aceitam módulos SIMM de 30 pinos com 1 MB ou 4 MB.

Praticamente todas as placas de CPU 486 fabricadas após 1994 aceitam módulos SIMM de 72 pinos com 4 MB ou 8 MB.

Praticamente todas as placas de CPU Pentium aceitam módulos SIMM de 72 pinos com 4 MB, 8 MB ou 16 MB.

Não fique encorajado a usar dicas e adivinhações de forma sistemática, deixando de lado os manuais. A capacidade correta das memórias é apenas uma entre as diversas informações existentes no manual da placa de CPU. Em muitos casos será preciso, além de conectar os módulos de memória, indicar a sua capacidade através de jumpers apropriados. Sem as instruções do manual da placa de CPU, esta operação é praticamente impossível.

Alguns usuários podem ficar confusos com a forma pela qual são indicadas as capacidades dos módulos SIMM de 72 pinos. Por exemplo, um módulo de 4 MB pode ser designado de duas formas:

4 MB
1M x 32

A primeira forma, na qual é indicada a capacidade total do módulo, é a mais usada. Entretanto, é também comum usar a segunda forma, na qual é indicado o número de células de memória. No exemplo acima, não temos 1 MB, e sim, 1 M células. Como cada célula possui 32 bits (ou seja, 4 bytes), o número total de bytes deste módulo será:

1M x 4 bytes = 4 MB

Podemos portanto, usar as seguintes formas para designar a capacidade dos módulos SIMM de 72 pinos:

Capacidade total Nomenclatura alternativa
1 MB 256k x 32
2 MB 512k x 32
4 MB 1M x 32
8 MB 2M x 32
16 MB 4M x 32
32 MB 8M x 32
64 MB 16M x 32
128 MB 32M x 32

Observe entretanto que é errado dizer “1MB x 32”, pois isto significaria “1 megabyte de 32 bits”, o que não faz sentido algum. O correto é “1M x 32”, que significa “1M células de32 bits”.

Tempo de acesso

O tempo de acesso é igual ao tempo que uma memória precisa para endereçar uma determinada célula em seu interior. Uma vez endereçada, pode ser realizada uma operação de leitura ou gravação. A maioria das memórias DRAM usadas nos PCs apresentam tempos de acesso iguais a 60 ou 70 ns. Em geral, microprocessadores mais velozes exigem memórias mais velozes, mas esta regra nem sempre é seguida à risca. Por exemplo, uma determinada placa de CPU 486 pode exigir memórias de 60 ns, enquanto uma placa de CPU Pentium pode também exigir 60 ns, mas suportar também memórias de 70 ns. Quando é usada uma DRAM mais lenta (ou seja, com maior tempo de acesso), é preciso indicar no CMOS Setup um número maior de WAIT STATES nas operações de acesso à DRAM. Apesar das memórias funcionarem, mesmo sendo mais lentas, o desempenho do microprocessador é prejudicado, já que terá que esperar mais tempo nas operações que acessam a memória DRAM.

O manual da placa de CPU quase sempre traz indicado o tempo de acesso necessário às suas memórias DRAM. Sempre será permitido usar memórias mais velozes que o recomendado, apesar de não trazer melhoria alguma no desempenho. Por exemplo, se uma placa de CPU exige memórias de 70 ns, podemos usar memórias de 60 ns perfeitamente. Isto significa que as memórias completarão suas operações antes do prazo dado pelo microprocessador. Se o microprocessador está preparado para operar com memórias de 70 ns e usamos memórias de 60 ns, estas terminarão suas operações 10 ns antes do previsto. Isto não melhora em nada o desempenho, pois o microprocessador continuará esperando um tempo adequado a memórias de 70 ns. Em alguns casos, é possível “envenenar” o CMOS Setup, fazendo com que as operações de acesso à memória sejam feitas em um período menor. Nesse caso, usar memórias mais velozes e realizar tais “envenenamentos” pode melhorar o desempenho do computador, mas isto deve ser feito com muito cuidado. Se as memórias, mesmo sendo mais velozes que o recomendado pelo fabricante da placa de CPU, não são suficientemente velozes para suportar os envenenamentos, o funcionamento do computador tornar-se-á instável. É perfeitamente seguro usar memórias com tempo de acesso igual ou menor que o recomendado pelo fabricante da placa de CPU, desde que o CMOS Setup esteja programado com as opções default no que diz respeito às operações de acesso à memória.

Apesar de não ser necessário usar memórias com tempo de acesso menor que o recomendado, existe um motivo que pode justificar esta prática. Memórias mais velozes terão maior chance de serem aproveitadas quando for feita a substituição da placa de CPU por outra mais veloz. Por exemplo, uma placa de CPU 486 pode exigir memórias de 70 ns, e o usuário pode optar por memórias de 60 ns. Apesar de não trazer vantagem imediata, essas memórias provavelmente poderão ser usadas futuramente em uma placa de CPU Pentium, o que provavelmente não ocorreria com memórias de 70 ns.

Existe ainda a situação inversa, que é usar memórias com tempo de acesso maior que o recomendado. Por exemplo, um fabricante especifica 60 ns e o usuário instala memórias de 70 ns. Normalmente essas memórias mais lentas não funcionarão. Em alguns casos é possível regular parâmetros no CMOS Setup, aumentando o número de WAIS STATES nas operações de acesso à DRAM, fazendo com que as memórias mais lentas possam funcionar. A desvantagem é que isto prejudicará o desempenho do microprocessador. Você deve saber portanto que o uso de memórias mais lentas que o recomendado não é nada aconselhável, pois em geral não funcionam, e na melhor das hipóteses, quando funcionam através de regulagens no CMOS Setup, essas regulagens reduzem o desempenho do microprocessador.

Esta situação pode ser vivida por um usuário que faz a substituição da placa de CPU, mantendo as memórias antigas. Enquanto memórias de 70 ns funcionam bem na maioria das placas baseadas no 486, provavelmente não funcionarão no Pentium. A única chance de funcionamento dessas memórias é através do aumento do número de WAIT STATES, o que nem sempre pode ser feito, e que nem sempre resolve o problema, e quando resolve, prejudica o desempenho. Mesmo que as memórias mais lentas funcionem, deve ser providenciada com prioridade a sua substituição. Se não forem substituídas, teremos por exemplo um Pentium-200 com desempenho comparável ao de um Pentium-150.

ART20-06

Figura 6 – Memória DRAM com tempo de acesso de 60 ns.

Vemos então que para comprar memórias para uma expansão, é preciso verificar qual é o tempo de acesso recomendado. Quase sempre esta informação está no manual da placa de CPU, mas quando este manual não está disponível, ou quando não traz esta importante informação (infelizmente às vezes as pessoas que escrevem manuais não têm muita paciência para fazer um bom trabalho), é possível descobri-la através das outras memórias já instaladas. Por exemplo, se uma placa de CPU já possui memórias de 60 ns, mais memórias de 60 ns podem ser compradas para realizar a expansão. O tempo de acesso vem sempre estampado nos chips de memória. Memórias de 60 ns trazem, no final do seu número, inscrições como -60, -6, ou -06. A figura 6 mostra alguns chips de memória de um módulo de 60 ns. Observe a indicação “-6” nos seus chips.

Tipo de memória DRAM

Até 1995, tudo era muito fácil, pois só existia um tipo de DRAM, do ponto de vista eletrônico. Este tipo é chamado de FPM DRAM (FPM=Fast Page Mode). O Fast Page Mode é um método de transferência de dados suportado por este tipo de DRAM, no qual a primeira leitura leva um determinado tempo (igual ao tempo de acesso da DRAM), e as leituras das posições de memória consecutivas são feitas em um tempo bem menor. Como as transferências de dados entre a DRAM e a memória cache são sempre feitas em grupos de 4 leituras consecutivas, este modo de transferência pode ser utilizado. Esquemas chamados de 3-2-2-2 no CMOS Setup indicam que a primeira leitura demora 3 ciclos, e cada uma das três leituras seguintes demora apenas 2 ciclos. Em um típico 486DX2-66 ou 486DX4-100, cada ciclo corresponde a 30 ns, portanto o esquema 3-2-2-2 indica 90 ns para a primeira leitura e 60 ns para cada uma das leituras seguintes. Economiza-se um tempo precioso, se compararmos com o esquema 3-3-3-3, no qual não está sendo usado o recurso Page Mode.

Nas placas de CPU Pentium, cada ciclo dura 15 ns (nas versões de 100, 133, 166 e 200 MHz), ou 16,7 ns (nas versões de 90, 120 e 150 MHz). Apenas no Pentium-75, cada ciclo demora 20 ns. Tomando como exemplo os ciclos de 15 ns, uma FPM DRAM poderia operar no esquema 6-4-4-4, 6-3-3-3, 7-4-4-4 ou 7-3-3-3. Normalmente podemos regular o esquema desejado no CMOS Setup, mas é recomendável usar a opção default sugerida pelo fabricante da placa de CPU. Para isto, basta usar o comando “Carregar valores default” no CMOS Setup.

Como todas as memórias DRAM eram capazes de operar em Fast Page Mode, não havia necessidade de especificar que tratavam-se de FPM DRAM. Bastava pedir DRAM, e levar em conta apenas fatores como o encapsulamento, a capacidade e o tempo de acesso.

Visando obter melhor desempenho no acesso à DRAM, foi desenvolvido um tipo especial de DRAM chamado EDO DRAM (EDO=Extended Data Out). Sua principal característica é que pode iniciar o acesso a uma nova posição, mantendo em sua saída de dados o conteúdo da leitura anterior. O acesso a uma nova posição pode ser iniciado, antes mesmo do microprocessador terminar a leitura do dado armazenado na posição anterior. Desta forma, foi possível reduzir o número de ciclos usados em cada leitura. Se uma FPM DRAM de 60 ns podia operar no esquema 7-3-3-3, uma EDO DRAM de 60 ns pode operar no esquema 6-2-2-2. Desta forma, um grupo de 4 leituras consecutivas passa a demorar um total de 12 ciclos, ao invés de 16, o que corresponde a um aumento de desempenho de 25%, sem que para isto seja necessário reduzir o tempo de acesso. A mesma tecnologia usada para produzir DPM DRAM de 60 ns é usada para produzir EDO DRAM de 60 ns, que é 25% mais veloz, já que exige menos ciclos para transferir seus dados para a memória cache.

Ao mesmo tempo em que os fabricantes de memórias produziram versões EDO, os fabricantes de chips VLSI usados em placas de CPU Pentium (inicialmente a Intel, depois outros fabricantes menores, como a OPTI e a UMC) passaram a produzir chip sets capazes de dar suporte ao uso de EDO DRAM. Atualmente, todas as placas de CPU Pentium podem operar com EDO DRAM, mas ainda aceitam a DRAM comum (chamada de FPM DRAM). Placas de CPU Pentium anteriores a 1995, bem como as placas de CPU 486 (exceto alguns modelos recentes), mesmo as mais recentes, não suportam a EDO DRAM. Isto precisa ser levado em conta na ocasião da compra de memória para uma expansão.

Ao comprar memórias para expansão em micros 386 e 486, deve ser exigido que sejam do tipo FPM. Muitos revendedores podem desconhecer o termo FPM, portanto, peça que as memórias sejam do tipo “não EDO”.

Os chipsets da Intel conhecidos como Triton e Triton II foram os primeiros a dar suporte a memórias DRAM EDO. A maioria das placas de CPU produzidas a partir de 1995 utilizam este chip set. É claro que futuramente surgirão novos chip sets, que também darão suporte à DRAM EDO. Confira no manual da sua placa de CPU. Lá estará indicado se as memórias podem ou não ser do tipo EDO. Podemos afirmar com quase absoluta certeza que as memórias EDO podem ser usadas em qualquer placa de CPU Pentium, exceto nos modelos mais antigos, produzidos aproximadamente até o final de 1994.

O usuário nunca estará imune a revendedores desonestos, ou que desconhecem detalhes técnicos sobre o material vendido. Por exemplo, muitos deles podem não saber dizer se as memórias que vendem são ou não do tipo EDO. Também é possível que um revendedor desonesto venda “gato por lebre”, ou seja, entregue ao usuário memórias FMP como sendo EDO. Não existe um método que deixe o usuário totalmente protegido desses problemas. A melhor coisa é comprar as memórias em um revendedor de sua confiança. Existem métodos para comprovar se realmente as memórias são do tipo EDO, apesar de não serem totalmente infalíveis. Vejamos quais são:

Etiqueta EDO

Muitos fabricantes colocam em seus módulos de memória EDO, uma etiqueta indicadora, como vemos na figura 7.

ART20-07

Figura 7 – Muitas vezes as memórias EDO possuem uma etiqueta indicadora.

Quando esta etiqueta é produzida industrialmente (ou seja, não é manuscrita e nem tem o aspecto de ter sido feita em uma impressora), este é um método seguro para identificar memórias EDO. Ocorre que, infelizmente, muitos fabricantes não colocam esta etiqueta nos módulos de memória, e sim, nas embalagens (cada embalagem armazena vários módulos de memória). Um revendedor honesto e criterioso pode colar nesses módulos sua própria etiqueta “EDO”, até mesmo manuscrita. Você poderá ficar confuso, duvidando da veracidade desta etiqueta. Por isso é recomendável comprar sempre o material em revendedores de sua confiança, em não em revendedores desconhecidos, apenas por apresentarem o menor preço. De qualquer forma, esta suposta falsificação de módulos EDO tem pouca chance de ocorrer, pois as DRAMs dos tipos EDO e FMP custam o mesmo preço.

Detecção pelo BIOS

Normalmente as placas de CPU Pentium podem operar com memórias DRAM dos tipos FPM ou EDO, sem que para isto seja preciso realizar configurações através de jumpers ou do CMOS Setup. Essas placas são capazes de detectar automaticamente o tipo de DRAM instalada, e configurar seu chip set para operar de modo adequado, sem nenhuma intervenção do usuário. É até mesmo permitido misturar esses dois tipos, desde que em cada banco, os módulos sejam iguais. Por exemplo, é permitido preencher um banco com dois módulos EDO e o outro banco com dois módulos FPM.

Muitas placas de CPU, além de detectarem automaticamente o tipo de DRAM instalada, ainda informam ao usuário o que encontraram, logo no início do boot. Veja por exemplo na figura 8 o que uma determinada placa apresenta na tela após a contagem de memória. Observe a indicação:

EDO Memory in DRAM Row(s): 0

Isto significa que foi detectado que o banco 0 está preenchido com memórias do tipo EDO. Caso o BIOS da placa de CPU apresente este tipo de informação, podemos considerá-la como uma confirmação de que realmente tratam-se de memórias EDO. O problema é que nem sempre esta indicação é apresentada na tela. O revendedor de confiança continua sendo o melhor método para a aquisição das memórias corretas.

ART20-08

Figura 8 – Em muitas placas de CPU, o tipo de memória DRAM é detectado, sendo apresentado na tela durante o boot, o resultado desta detecção.

Recentemente foi desenvolvido um novo tipo de DRAM, capaz de atingir velocidades muito maiores. Trata-se do SDRAM (Synchronous DRAM, ou DRAM Síncrona). Sua saída de dados é sincronizada com um sinal de clock, da mesma forma como ocorre com os microprocessadores. A velocidade de uma SDRAM é identificada, não pelo seu tempo de acesso, e sim, pelo seu período de clock. Uma SDRAM com período de 10 ns demora tipicamente 30 ns para acessar um determinado dado, e 10 ns adicionais para cada um dos dados seguintes. Uma transferência envolvendo 4 leituras de posições de memória consecutivas demoraria 30+10+10+10 ns, ao invés de típicos 70+20+20+20 obtidos com a EDO DRAM.

Já existem placas de CPU que dão suporte ao uso de memórias SDRAM (além dos tipos FPM e EDO). Essas memórias são em geral apresentadas no encapsulamento DIMM de 168 pinos, mas nada impede que sejam produzidas também em módulos SIMM de 72 pinos. Na verdade, os chips de memória é que são do tipo FPM DRAM, EDO DRAM ou SDRAM. Esses chips são usados para formar os módulos, que podem ser igualmente de 72 ou 168 pinos.

Paridade

A paridade é um recurso que serve para aumentar a confiabilidade das memórias DRAM (isto se aplica a qualquer tipo de DRAM). Nos anos 80, as DRAMs eram muito suscetíveis a erros, e a técnica da paridade foi amplamente utilizada com o objetivo de detectar eventuais erros na memória. Com o passar dos anos, as memórias DRAM foram aperfeiçoadas e tornaram-se mais confiáveis, fazendo com que o uso da paridade ficasse desnecessário (como já ocorre com a SRAM e a ROM). Se há alguns anos atrás dizíamos “não compre memórias sem paridade”, hoje podemos dizer “a paridade é desejável, mas sua ausência não é mais prejudicial”.

O PC original da IBM, bem como seus clones fabricados por outras empresas, organizavam a memória em conjuntos de 9 bits ao invés de 8. O nono bit incluído é chamado de “bit de paridade” e tem como finalidade detectar erros na memória. Um computador fica mais confiável quando é usada a paridade. Nos XTs, a memória operava com 9 bits, apesar do microprocessador acessar apenas 8. Nos PCs baseados no 286 e 386SX, a memória opera com 18 bits, apesar do microprocessador acessar apenas 16. Nos PCs 386DX, 486SX e 486DX, a memória opera com 36 bits, apesar do microprocessador acessar apenas 32. Nos PCs baseados no Pentium e Pentium Pro, a memória utiliza 72 bits, ao invés de 64. Como pode ser visto, não importa o número de bits de memória que o microprocessador utiliza, a memória sempre será organizada em múltiplos de 9 bits. Cada grupo de 8 bits terá sempre um bit adicional de paridade. A figura 9 ilustra como são organizadas as memórias desses diversos microprocessadores.

ART20-09

Figura 9 – Uso da paridade, do XT ao Pentium Pro.

a) 8088 e V-20
b) 386SX, 286, 8086 e V-30
c) 386DX, 486SX, 486DX
d) Pentium e Pentium Pro

A paridade é usada apenas nas memórias DRAM. A memória cache e as ROMs operam sem paridade, pois são muito mais confiáveis que as DRAMs. A memória de vídeo, existente nas placas de vídeo, apesar de se tratar de DRAM, também não usa paridade, pois um erro nessa memória não causa nenhuma conseqüência destrutiva ao funcionamento do computador, apenas alguma anomalia na imagem mostrada pelo monitor.

Os bits de paridade não são acessíveis através do microprocessador. São usados por dois circuitos existentes na placa de CPU: circuito gerador de paridade e circuito testador de paridade. Esses circuitos ficam localizados nos chips VLSI existentes nas placas de CPU. O circuito gerador de paridade tem como função escrever o bit de paridade de cada grupo de 8 bits nas operações de escrita na memória. O circuito testador de paridade faz uma verificação na paridade em cada grupo de 8 bits lidos da memória.

Vejamos como funciona o bit de paridade e como é feita a detecção de erros na memória. Para simplificar a explicação, usaremos a memória de 9 bits do XT, mostrada na figura 10. Nos micros 286 e 386SX, este circuito aparece repetido duas vezes. Em PCs baseados no 386DX e 486, este mesmo circuito aparece repetido 4 vezes. Nos micros Pentium e Pentium Pro, este circuito aparece repetido 8 vezes.

ART20-10

Figura 10 – Funcionamento do bit de paridade.

A figura 10 mostra como se procede uma operação de escrita e uma operação de leitura na memória. Observe que nas operações de escrita, o circuito gerador de paridade recebe o valor que o microprocessador coloca na memória e determina quantos bits “1” estão sendo escritos. A partir daí, escreve um bit de paridade de tal forma que, ao considerar o conjunto de 9 bits, o número total de bits “1” será sempre ÍMPAR. Portanto, o bit de paridade é gerado da seguinte forma:

Se no grupo de 8 bits, existir um número par de bits “1”, o bit de paridade será “1”.
Se no grupo de 8 bits, existir um número ímpar de bits “1”, o bit de paridade será “0”.

Em outras palavras, o circuito gerador de paridade garante que em cada grupo de 9 bits da memória existirá sempre um número ÍMPAR de bits “1”.

A seguir estão alguns exemplos de bytes a serem escritos na memória e os respectivos bits de paridade gerados:

Valor

Paridade

00101001

0

11011111

0

10010011

1

01101001

1

01000001

1

Vejamos agora como funciona a operação de leitura da memória. Nesse caso, entra em jogo o circuito testador de paridade. Em cada operação de leitura, este circuito recebe os 8 bits que o microprocessador está lendo e mais o bit de paridade, formando um total de 9 bits, e determina o número de bits “1” que existem neste conjunto. Se tudo correr bem, deverá existir obrigatoriamente um número ÍMPAR de bits “1”, já que o bit de paridade foi gerado em função disso. Caso não exista um número ímpar de bits “1”, significa que ocorreu um erro na memória. Este circuito gerará o que chamamos de interrupção não mascarável (NMI – Non Maskable Interrupt). O microprocessador imediatamente suspenderá o processamento e executará uma rotina do BIOS que coloca na tela uma mensagem como:

Parity Error

O computador ficará então paralisado, não aceitando mais nenhum comando, e o usuário será obrigado a desligá-lo, ou usar o botão Reset. Desta forma, o erro não será propagado, evitando que sejam causados danos aos dados do computador.

Vejamos com detalhe como se procede esta detecção de erro. Suponha que o microprocessador escreve na memória o valor 01000001. O circuito gerador de paridade, ao encontrar neste valor dois bits “1” gerará um bit de paridade igual a 1. O valor armazenado, juntamente com o bit de paridade, será:

01000001 – 1

Suponha que o segundo bit da direita para a esquerda transforma-se em “1”, devido a um erro na memória. Teremos então armazenado o seguinte valor:

01000011 – 1

Quando o microprocessador ler este valor, o circuito testador de paridade encontrará um total de 4 bits “1” no grupo de 9 bits, o que caracteriza um erro na memória.

O circuitos de paridade não são capazes de detectar um erro em que existem dois bits simultaneamente errados no mesmo grupo de 8 bits. Entretanto, o erro em um único bit é o mais comum. A probabilidade de existirem dois bits errados é milhares de vezes menor que a de existir apenas um errado. A paridade é a técnica mais simples para detectar erros na memória, mas é muito eficaz. Computadores de grande porte usam esta técnica desde os anos 70, e a partir do lançamento do IBM PC, os microcomputadores também passaram a utilizá-la. Caso seja detectado um erro na memória, o usuário deve providenciar sua manutenção. Será necessário descobrir qual é o chip de memória defeituoso e substitui-lo.

Durante muitos anos, na época em que as memórias DRAM eram pouco confiáveis, existiam muitas placas de CPU operando sem os chips que formam os bits de paridade, o que resultava na diminuição da confiabilidade do computador. Existiam inclusive placas de CPU que só funcionavam caso todas as suas memórias DRAM tivessem paridade, ou seja, consideravam a paridade obrigatória. A maioria das placas de CPU dão ao usuário a possibilidade de não utilizar a paridade, o que representa uma pequena economia no preço da memória. O usuário perdia muito sem a paridade, pois sua utilização faz com que a memória fique milhares de vezes mais confiável. A justificativa dada é que a paridade é opcional. Alguns dizem que “a paridade faz o computador ficar mais lento”, o que é uma afirmação falsa, pois os circuitos que geram e checam a paridade funcionam “em paralelo” com o microprocessador, não atrapalhando em nada o seu funcionamento. A velocidade do sistema COM e SEM paridade é exatamente a mesma.

Quando a memória está funcionando bem, não existe diferença entre operar com ou sem a paridade. Uma memória sem paridade mas que nunca apresente defeitos é tão boa quanto uma com paridade. A vantagem do uso da paridade aparecerá quando eventualmente ocorrer um erro na memória. Com a paridade, o usuário será avisado imediatamente sobre o problema. Sem a paridade, o computador continuará funcionando, mas os dados adulterados na memória podem causar resultados imprevisíveis.

Se você já comprou um computador com memória sem paridade, é importante que realize freqüentemente testes na memória. Você poderá usar os seguintes testes:

a) Teste de memória que é feito pelo BIOS quando o computador é ligado
b) Teste de memória que é feito pelo programa HIMEM.SYS durante o BOOT
c) Teste de memória feito durante CHECK-UP

Todo usuário deve periodicamente realizar um CHECK-UP em seu computador, para verificar se tudo está funcionando corretamente. Muitos defeitos podem ser evitados desta forma. Podem ser usados neste teste, programas como o Checkit 4.0 para MS-DOS (a versão para Windows 95 não faz teste de memória), ou o NDIAGS, que faz parte do Norton Utilities versão 8.0.

Você encontrará em vários anúncios, módulos de 30 pinos de 8 (sem paridade) e 9 bits (com paridade), e módulos de 72 pinos com 32 (sem paridade) e 36 bits (com paridade). Exemplos de módulos anunciados sem paridade são:

1M x 8
4M x 8
4M x 32
8M x 32
16M x 32
32M x 32

Alguns exemplos de módulos anunciados com paridade:

1M x 9
4M x 9
4M x 36
8M x 36
16M x 36
32M x 36

A maioria dos módulos SIMM de 30 pinos possuem paridade. Se você precisa usar este tipo de módulo na sua expansão, procure módulos com paridade, e você os encontrará com relativa facilidade.

Módulos de memória FPM DRAM em encapsulamento SIMM de 72 pinos podem ser encontrados com ou sem paridade. Se você quer utilizar paridade, pode procurar, e acabará encontrando um fornecedor que tem esses módulos com paridade.

Já os módulos de memória EDO DRAM, em encapsulamento SIMM de 72 pinos normalmente não usam paridade, mas existem alguns poucos fabricantes que produzem módulos EDO com paridade. Podemos citar, por exemplo a Micron, um dos maiores fabricantes americanos de memórias. Todos os seus módulos, sejam FPM ou EDO, são oferecidos nas versões com e sem paridade.

Como reconhecer que um módulo de memória possui paridade

Em alguns casos, é possível reconhecer visualmente se um módulo de memória possui ou não paridade. Um dos métodos que podem ser usados é a inspeção direta dos chips de memória no módulo. Um exemplo típico é quando o número de chips de memória existentes em um módulo é múltiplo de 3. Veja por exemplo o módulo da figura 11. Podemos encontrar três chips, sendo os dois maiores iguais, e o terceiro menor. Isto significa que cada um dos dois chips maiores fornece 4 bits de cada vez, e o terceiro chip fornece um bit adicional, totalizando assim 9 bits.

ART20-11

Figura 11 – Um módulo de memória SIMM de 30 pinos com paridade.

Na figura 12 temos um outro exemplo de módulo com paridade. Observe que existem 3 chips iguais. Cada um deles contribui com 3 bits de cada vez, totalizando assim 9 bits simultâneos.

ART20-12

Figura 12 – Outro módulo SIMM de 30 pinos com paridade

A figura 13 mostra o caso mais óbvio de módulo SIMM de 30 pinos com bit de paridade. Este módulo possui 9 chips iguais, sendo que cada um deles fornece um bit de cada vez, totalizando assim os seus 9 bits.

Podemos portanto, identificar alguns casos de módulos de 30 pinos nos quais podemos ter certeza de que existe paridade:

Quando existem 3 chips iguais (3+3+3 bits)
Quando existem 2 chips iguais e um diferente (4+4+1 bit)
Quando existem 9 chips iguais (1+1+1+1+1+1+1+1+1 bit)

ART20-13

Figura 13 – Mais um módulo SIMM de 30 pinos com paridade.

No caso de módulos de 72 pinos, a identificação da existência de paridade pela inspeção visual dos chips é um pouco mais difícil. Por exemplo, ao ver um módulo com 4 chips iguais, podemos ser levados a pensar que cada um deles opera com 8 bits, tratando-se portanto de um módulo de 32 bits, ou seja, sem paridade. Esta conclusão não pode ser tirada com absoluta certeza, pois existem chips de memória DRAM que operam com 9 bits, e portanto, 4 chips iguais formariam 36 bits, ou seja, um tratar-se-ia de um módulo com paridade. Por outro lado, algumas configurações podem garantir que o módulo tem paridade:

9 chips iguais
12 chips iguais

Existe ainda um outro método simples para reconhecer módulos sem paridade, baseado na inspeção visual dos pinos responsáveis pelos bits de paridade. Nos módulos de 30 pinos, o responsável pelo bit de paridade é o pino número 29. Nos módulos de 72 pinos, os responsáveis pelos bits de paridade são os pinos 35, 36, 37 e 38. A figura 14 mostra esses pinos.

ART20-14

Figura 14 – Localização dos pinos responsáveis pelos bits de paridade.

Se ao inspecionarmos esses pinos, constatarmos que não existem ligações, podemos afirmar que trata-se de um módulo sem paridade. A figura 15 mostra o aspecto de pinos com e sem ligações. Os pinos indicados com “A” são exemplos em que não existem ligações. No pino indicado como “B”, vemos que existe uma ligação a algum ponto do circuito, através de uma trilha condutora. Observe que para comprovar que um pino não possui ligação, é preciso verificar ambos os lados (frente e verso) do módulo. Pinos com ligação podem as ter partindo pela frente ou pelo verso. Pinos sem ligação não as possuem em nenhum dos dois lados.

ART20-15

Figura 15 – Pinos com e sem ligações.

A – Sem ligação
B – Com ligação

Existe um outro método para reconhecer se a memória possui ou não paridade, por intermédio do CMOS Setup. Normalmente as placas de CPU têm a possibilidade de operar em duas situações:

Memórias com paridade
Memórias sem paridade

Ao operar com memórias com paridade, são realizadas as operações usuais de geração e checagem de paridade, ou seja, os bits de paridades são gerados durante as operações de escrita, e checados durante as operações de leitura. Ao operar com memórias sem paridade, é desabilitada a sua checagem. A programação do uso da paridade é feita através do CMOS Setup. Em geral, no Advanced CMOS Setup existe um item chamado “Parity Check”, que pode ser programado de duas formas: Enabled (Habilitado) ou Disabled (Desabilitado). Ao ser habilitado, os circuitos de paridade funcionarão normalmente, porém, esta opção só pode ser usada se todos os módulos de memória possuem paridade. Se pelo menos um dos módulos não possui os bits de paridade, as seguintes situações poderão ocorrer:

Não será detectada a quantidade correta de memória
Será apresentada a mensagem “Parity Error” durante o boot
Ao ser ligado, o PC emitirá “beeps” pelo alto falante

Se pelo menos um dos módulos instalados não possui paridade, o PC deverá operar obrigatoriamente com a checagem de paridade desabilitada. Em conseqüência disso, podemos determinar facilmente a presença de módulos sem paridade. Basta habilitar a checagem de paridade no CMOS Setup. Se depois disso o PC for capaz de realizar um boot, significa que todos os módulos de memória presentes possuem paridade. Se forem apresentados alguns dos três erros enumerados acima, significa que algum (ou todos) dos módulos de memória instalados não possui paridade.

Muito cuidado ao utilizar esta técnica. Quando um PC já possui módulos sem paridade, e instalamos módulos adicionais com paridade, o PC não funcionará com a paridade habilitada, mas não por culpa dos novos módulos, e sim, dos antigos, que já não possuíam paridade.

Atualmente as memórias DRAM possuem uma confiabilidade muito maior que há anos atrás, chegando a ser tão confiáveis quanto as memórias SRAM e ROM. Por isso, muitas delas já estão sendo produzidas sem paridade (assim como ocorre com as memórias SRAM e ROM). Inclusive, já existem placas de CPU que não fazem mais a geração e a checagem da paridade, apesar de aceitarem funcionar com módulos que usam paridade. Neste caso, os bits de paridade serão simplesmente ignorados.

A questão do fabricante

Imagine que em um determinado PC Pentium são instalados 4 módulos de memória, todos eles com 8 MB e tempo de acesso de 60 ns, mas produzidos por 4 fabricantes diferentes. Será que essas memórias funcionarão, mesmo sendo de fabricantes diferentes? Será que existe risco de incompatibilidade?

A princípio, as memórias funcionam em conjunto, mesmo sendo de fabricantes diferentes, mas isto nem sempre ocorre. Ao misturarmos, dentro de um mesmo banco, memórias de fabricantes diferentes, corremos o risco de que problemas de ordem elétrica impeçam o funcionamento do conjunto. Portanto, não é uma boa prática realizar esta mistura dentro de um mesmo banco. Observe que isto não significa que o funcionamento é impossível. Muito pelo contrário, normalmente a mistura funciona, mas para ter 100% de certeza do funcionamento, é preciso que seja evitada a mistura de módulos de fabricantes diferentes dentro de um mesmo banco. Por outro lado, misturar módulos em bancos diferentes não causa problema algum, já que quando um banco é acessado, o outro permanece em repouso. Seria portanto permitido, por exemplo, preencher dois bancos de uma placa de CPU Pentium da forma:

Banco 0: Dois módulos de 8 MB fabricados pela Samsung
Banco 1: Dois módulos de 8 MB fabricados pela Toshiba

Regras para preenchimento de bancos de memória

A seguir, passaremos a detalhar exemplos de expansão de memória usando módulos de 30 e de 72 pinos, em placas de CPU 386, 486 e Pentium. Antes porém, mostraremos duas regras que devem ser seguidas em qualquer tipo de expansão. Se essas regras não forem obedecidas, as memórias não funcionarão.

Um banco de memória é um conjunto de módulos de memória, suficientes para fornecer os bits que o microprocessador exige:

286 e 386SX: 16 bits
386DX e 486: 32 bits
Pentium e Pentium Pro: 64 bits

ART20-16

Figura 16 – Em computadores baseados no 286 ou no 386SX, cada banco de memória é formado por dois módulos SIMM de 30 pinos.

Computadores baseados no 286 e 386SX possuem seus bancos formados por dois módulos SIMM de 30 pinos. Como cada um desses módulos fornece para o microprocessador, 8 bits, dois módulos são necessários para formar os 16 bits. A figura 16 ilustra esta situação.

Computadores baseados no 386DX e no 486, por usarem memórias de 32 bits, possuem seus bancos formados também por 32 bits. Dependendo da placa, podem ser usados em cada banco, um módulo SIMM de 72 pinos (que já fornece 32 bits simultâneos), ou 4 módulos SIMM de 30 pinos (4 deles, cada um fornecendo 8 bits, totalizam 32 bits). Ambas as situações são mostradas na figura 17.

ART20-17

Figura 17 – Em placas de CPU 386DX e 486, cada banco de memória é formado por 4 módulos SIMM de 30 pinos, ou então por um módulo SIMM de 72 pinos.

ART20-18

Figura 18 – Em PCs baseados no Pentium e no Pentium Pro, cada banco de memória é formado por 2 módulos SIMM de 72 pinos.

Computadores baseados no Pentium e no Pentium Pro usam memórias de 64 bits. Nesses PCs, cada banco de memória é formado por dois módulos SIMM de 72 pinos. Como cada um deles fornece 32 bits simultâneos, os dois módulos juntos fornecem os 64 bits necessários. Esta situação é mostrada na figura 18.

Observando as figuras 16, 17 e 18, fica fácil entender que um banco de memória nunca pode ficar incompleto, ou preenchido com módulos de capacidades diferentes. Essas são portanto as duas regras básicas para o correto preenchimento de bancos de memória:

Um banco nunca pode ser parcialmente preenchido

Olhe a figura 18 e imagine que dos dois módulos apresentados apenas um deles está instalado. Este banco estaria fornecendo apenas 32 bits de cada vez, ao invés dos 64 bits exigidos pelo microprocessador. Por isso, ao preencher um banco de memória, nunca devemos fazer um preenchimento parcial dentro de um mesmo banco. Um banco deve estar vazio (quando não estiver sendo utilizado), ou então totalmente preenchido, mas nunca deve ser feito um preenchimento parcial. Observe que esta regra é válida dentro de cada banco. É permitido, por exemplo, preencher totalmente um banco e deixar outro banco vazio.

Um banco nunca pode ter módulos de capacidades diferentes

Como os módulos de um banco trabalham em conjunto, suas capacidades devem ser iguais. Não adianta, por exemplo, preencher um banco de memória de uma placa de CPU Pentium com um módulo de 8 MB e outro de 16 MB. Enquanto um módulo pode fornecer ao todo 16 MB, o outro não conseguirá acompanhar, e como resultado, o banco não funcionará.

Para preencher corretamente os bancos de memória, é preciso obedecer às duas regras citadas acima, mas apenas seguir essas regras ainda não é suficiente. Por exemplo, na maioria das placas de CPU, é preciso preencher o Banco 0 antes de preencher o Banco 1, não sendo portanto permitido deixar o Banco 0 vazio e o Banco 1 preenchido (apesar de algumas placas permitirem tal preenchimento). A regra geral para preencher corretamente os bancos de memória, no que diz respeito à capacidade, localização, velocidade e todos os demais fatores técnicos, é sempre seguir as instruções existentes no manual da placa de CPU. Nos manuais de todas as placas de CPU, encontraremos uma “tabela de configurações de memória”, na qual existem informações valiosas, sem as quais a expansão pode ser dificultada, ou mesmo impossibilitada. Em geral esta tabela mostra como cada um dos bancos deve ser preenchido para obter a quantidade de memória desejada. A figura 20 mostra um exemplo desta tabela de configurações de memória. Essas tabelas mostram como cada banco deve ser preenchido para a obtenção de diversas quantidades de memória.

Expansão com módulos de 30 pinos

Veremos agora exemplos de expansão de memória em PCs baseados no 386DX e no 486 (incluindo todas as suas versões), usando módulos SIMM de 30 pinos. Placas de CPU que operam com essas memórias foram muito utilizadas até aproximadamente 1994. Depois disso, passaram a ser fabricadas placas equipadas com soquetes para módulos de 30 e de 72 pinos, como abordaremos mais adiante. Finalmente, passaram a predominar os módulos de 72 pinos.

ART20-19

Figura 19 – Dois bancos de memória para módulos SIMM de 30 pinos, usados em PCs baseados no 386DX e no 486.

As placas de CPU que operam exclusivamente com módulos SIMM de 30 pinos possuem em geral dois bancos de memória, cada um deles formados por 4 módulos, como mostra a figura 19.

Para preencher corretamente esses bancos de memória, é preciso recorrer às instruções existentes no manual da placa de CPU. Nele encontraremos uma tabela de configurações de memória, como a exemplificada na figura 20. Observe que nem sempre essas tabelas são idênticas. Isto significa que, se você perdeu o manual da sua placa de CPU, não poderá tomar como base a tabela da figura 20. Apesar da maioria das placas de CPU 386DX e 486 obedecerem à tabela da figura 20, existe a possibilidade da sua ser diferente.

As instruções desta tabela nos permitem chegar a diversas conclusões:

Podem ser usados módulos de 256 kB, 1 MB ou 4 MB

Podemos obter uma memória total de 1 MB, 2 MB, 4 MB, 5 MB, 8 MB, 16 MB, 20 MB ou 32 MB, bastando instalar os módulos apropriados.

Esta placa não permite preencher o Banco 1 com o Banco 0 vazio.

ART20-20

Figura 20 – Exemplo de tabela de configurações de memória, típica de placas de CPU 386DX e 486 fabricadas até 1994.

A tabela de configurações de memória é usada tanto na instalação como na expansão de memória. Vejamos inicialmente o exemplo da instalação de 4 MB de memória. De acordo com a tabela, vemos que para obter 4 MB é preciso preencher o Banco 0 com módulos de 1 MB, deixando o Banco 1 vazio. Esta situação é mostrada na figura 21.

ART20-21

Figura 21 – Formando 4 MB de memória.

Suponha agora que este PC possui 4 MB instalados, como mostra a figura 21, e desejamos realizar uma expansão. A tabela nos mostra que é possível realizar uma expansão para 5 MB, através da instalação de 4 módulos de 256 kB, porém este tipo de expansão não é recomendável. Quem estava apertado com 4 MB ficará quase tão apertado com 5 MB. É recomendável expandir a memória para um valor maior, como 8 MB. A tabela nos mostra que para aumentar a memória para 8 MB, devemos manter os mesmos módulos de 1 MB existentes no Banco 0, e adicionar módulos de 1 MB no Banco 1. Este é o melhor tipo de expansão, aquele no qual aproveitamos as memórias já existentes, adquirindo apenas as necessárias para completar a capacidade desejada. Ficaremos então com a configuração mostrada na figura 22.

Menos econômica é a expansão de 4 MB para 16 MB, ou de 8 MB para 16 MB. Como mostra a tabela, para formar 16 MB é preciso preencher o Banco 0 com 4 módulos de 4 MB, deixando o Banco 1 vazio. Nesse caso, os módulos de 1 MB previamente instalados não serão aproveitados. Infelizmente, algumas vezes recaímos em casos como este, quando é preciso retirar as memórias já existentes para instalar as novas. No caso específico da expansão de 4 MB ou 8 MB para 16 MB, com módulos de 30 pinos, podemos aproveitar 4 dos módulos de 1 MB, fazendo uma expansão para 20 MB. Como mostra a tabela, para formar 20 MB preenchemos um banco com 4 módulos de 4 MB, e o outro banco com 4 módulos de 1 MB.

Módulos que não são aproveitados em uma expansão podem ser, por exemplo, usados na expansão de memória de um outro computador, ou então vendidos para um colega que necessite realizar uma expansão.

ART20-22

Figura 22 – Expandindo de 4 MB para 8 MB.

Expansão em 486/586 com módulos de 72 pinos

As mais recentes placas de CPU 486 e 586 (lembre-se que o 586 da AMD e o da Cyrix são microprocessadores compatíveis com o 486 a nível de hardware, e portanto também usam memórias de 32 bits) utilizam exclusivamente módulos SIMM de 72 pinos. Normalmente essas placas possuem 4 bancos de memória, cada um deles formado por um único módulo SIMM de 72 pinos, como vemos na figura 23.

ART20-23

Figura 23 – 4 bancos de memória, cada um deles formados por um módulo SIMM de 72 pinos.

ART20-A

Para preencher corretamente esses bancos é preciso, antes de mais nada, consultar a tabela de configurações de memória existente no manual da placa de CPU. Lá existirão as instruções adequadas. Na página anterior vemos o aspecto que tem esta tabela de configuração.

Observe como é sempre importante usar a tabela para realizar corretamente uma expansão de memória. Tome como exemplo um PC equipado com 8 MB, formados por um módulo de 8 MB instalado no Banco 0. Poderíamos ser levados a pensar que, para aumentar a memória para 16 MB, basta instalar mais um módulo de 8 MB no Banco 1. Entretanto, a tabela mostra que nesta expansão, o segundo módulo de 8 MB deve ser instalado no Banco 2, e não no Banco 1. Dependendo da placa de CPU usada, pode ser válida a configuração de 16 MB na qual os bancos 0 e 1 são equipados com módulos de 8 MB. A única forma de ter certeza é consultando a tabela. A razão para uma placa não aceitar uma determinada configuração (como o caso da tabela acima, cuja placa não aceita módulos de 8 MB nos bancos 0 e 1) é que nem sempre o circuito de controle da memória é projetado para aceitar todas as configurações possíveis. A tabela de configurações de memória sempre apresentará as configurações válidas, e ela deve sempre ser tomada como base em uma expansão. Você poderá ter, por exemplo, a sorte de instalar três módulos de 8 MB nos bancos 0, 1 e 2, e esta expansão funcionar, mesmo sem a consulta ao manual. Se esta instalação funcionar, certamente estará entre as válidas mostradas na tabela de configurações de memória.

Quando existem 4 bancos de memória, levando em conta 9 capacidades possíveis (vazio, 1 MB, 2 MB, 4 MB, 8 MB, 16 MB, 32 MB, 64 MB e 128 MB), teríamos um total de 9x9x9x9 = 6561 formas diferentes de instalar memórias. Mesmo quando nem todas as opções são válidas, as tabelas de configuração tendem a ser muito grandes. Por isto, muitos manuais não apresentam esta tabela de forma explícita, apenas apresentam regras para seu preenchimento. Por exemplo, um manual de uma determinada placa de CPU traz as seguintes instruções:

SIMM Modules Installation

The SIS 486 PCI/ISA motherboard can be expanded from 1 MB up to 256 MB by using 256 kB, 1 MB, 2 MB, 4 MB, 8 MB, 16 MB, 32 MB and 64 MB of 72 pin SIMM modules. “Free Table” feature is offered for main memory configuration. The product works with one SIMM plugs into any SIMM sockets.

Neste exemplo, ao invés de apresentar a tabela de configurações de memória, o manual indica que podem ser usados módulos de 72 pinos, de 256 kB até 64 MB, em qualquer um dos soquetes. Desta forma, a expansão de memória fica extremamente fácil. A maioria das placas modernas apresenta esta característica. O usuário pode instalar módulos de praticamente qualquer capacidade, em praticamente qualquer soquete. Os circuitos de controle da memória são capazes de detectar quais bancos estão sendo usados, e qual é a capacidade de cada um dos módulos usados. Por isso, este tipo de expansão é considerado razoavelmente fácil.

Expansão mista com 30 e 72 pinos

Se a expansão é fácil na maioria das placas de CPU que usam apenas módulos de 72 pinos, é bem mais difícil nas placas que misturam módulos de 30 e de 72 pinos. Essas placas foram muito comuns em 1994, a até meados de 1995, época em que começou a diminuir o uso dos módulos de 30 pinos e aumentar o uso dos módulos de 72 pinos. Quem possuir uma placa de CPU 386DX ou 486 desta época, provavelmente fará a expansão através da instalação de um ou dois módulos de 72 pinos, já que os de 30 pinos são difíceis de serem encontrados à venda. Mesmo assim, mostraremos este tipo de expansão com ambos os tipos de módulos.

Essas placas de CPU normalmente possuem 6 soquetes para módulos de memória, como mostra a figura 24.

ART20-24

Figura 24 – Bancos de memória usando módulos de 30 e de 72 pinos.

Em se tratando de 386DX e 486, a memória opera com 32 bits. Um único módulo de 72 pinos forma um banco como é o caso dos bancos 0 e 1 na figura 24. Da mesma forma, 4 módulos de 30 pinos completam os 32 bits necessários para formar um banco, como é o caso do banco 2 da figura 24. Assim como ocorre com todas as placas de CPU, os manuais deste tipo de placa trazem tabelas de configurações de memória, como a que exemplificamos na figura 25. Observe que neste exemplo, os bancos estão sendo chamados de Bank 0A, Bank 0B e Bank 1. Esta mesma figura exemplifica a instalação de um módulo de 72 pinos com 8 MB.

Observe que no exemplo da figura 25, ao invés dos bancos serem chamados de 0, 1 e 2, são chamados de:

Bank 0A: 30 pinos
Bank 0B: 72 pinos
Bank 1: 72 pinos

A razão de terem sido usados os termos 0A e 0B é que na verdade ambos formam um único banco. Esta placa, assim como a maioria das placas que usam módulos mistos, pode ter o Banco 0 preenchido com 4 módulos de 30 pinos (neste caso seria chamado de 0A), ou com um módulo de 72 pinos (sendo chamado de 0B). Ao preencher o Banco 0A, não podemos preencher o Banco 0B, e vice-versa.

ART20-25

Figura 25 – Tabela de configurações de memória de uma placa de CPU que usa módulos de 30 e de 72 pinos.

Observe que a própria tabela da figura 25 mostra esta condição. Todas as configurações que usam o Banco 0A mantém o Banco 0B vazio, e todas as que usam o Banco 0B mantém o 0A vazio. Esta tabela traz ainda mais uma informação: um determinado jumper, neste exemplo chamado de J15, deve ser ligado em 1-2 ou 2-3 conforme esteja sendo usado o Banco 0A ou o Banco 0B. Sem consultar o manual da placa de CPU seria virtualmente impossível adivinhar a utilização deste jumper. No exemplo da figura 25, instalamos um módulo de 8 MB no Banco 0B, e o jumper está ligado na posição 2-3 para indicar a utilização deste banco. Outras placas de CPU podem não possuir jumper indicador do banco usado, e outras podem possuir outros jumpers com outras finalidades, como por exemplo, a indicação da capacidade da memória. Por exemplo, existem placas que precisam que um jumper seja configurado em uma determinada posição caso estejam sendo usados módulos de 2 MB ou 8 MB, e em outra posição para os demais tipos de módulos.

Tomando como base a figura 25, façamos agora uma expansão de 8 MB para 16 MB. De acordo com a tabela, vemos que uma das formas de completar 16 MB é instalando módulos de 8 MB nos bancos 0B e 1. Como já temos um módulo de 8 MB no Banco 0B, basta adicionar um módulo de 8 MB no Banco 1. Ficaremos com a configuração mostrada na figura 26.

Observe que a placa deste exemplo não aceita uma expansão de 8 MB para 24 MB, através da instalação de um módulo adicional de 16 MB, porém, outras placas poderão aceitar tal configuração.

ART20-26

Figura 26 – Expandindo de 8 MB para 16 MB.

Pode não parecer, mas a expansão de 8 MB para 12 MB é muito vantajosa. Esta é uma forma de aproveitar módulos de 1 MB que sobraram de placas de CPU mais antigas, ou de expansões de 4 ou 8 MB para 16 MB com módulos de 30 pinos. Podemos então manter o módulo de 72 pinos já instalado, porém transferindo-o para o Banco 1, e usar 4 módulos de 1 MB com 30 pinos no Banco 0A. Formaremos assim 12 MB, como mostra a figura 27.

A vantagem em expandir a memória de 8 MB para 12 MB pode não parecer óbvia a princípio. Ocorre que muitos jogos para MS-DOS necessitam de 8 MB de memória, mas apresentam muitas dificuldades. Precisam que dos 8 MB, mais de 7 MB sejam disponibilizados, o que nem sempre é uma operação fácil. Muitas vezes precisamos para isto, operar em modo MS-DOS (no caso de PCs com o Windows 95), desabilitar programas de cache de disco, desativar drivers e programas residentes desnecessários, tudo isso através de alterações nos arquivos CONFIG.SYS e AUTOEXEC.BAT. Em certos casos, mesmo quando o usuário possui conhecimentos suficientes sobre configurações de memória para fazer o programa funcionar, a ausência da cache de disco faz com que o acesso ao disco rígido e ao drive de CD-ROM fiquem bem mais lentos. Se o PC possui 12 MB, pode facilmente disponibilizar 8 MB para os “programas que exigem 8 MB”, e ainda ter mais 4 MB extras para serem usados como cache de disco, e ainda manter vários programas residentes. No caso do Windows 95, podemos usar o programa a partir do comando Prompt do MS-DOS, sem ter que reinicializar o computador no modo MS-DOS.

ART20-27

Figura 27 – Expandindo de 8 MB para 12 MB.

Expansão em placas de CPU Pentium

A maioria das placas de CPU Pentium possui quatro soquetes para módulos SIMM de 72 pinos, formando 2 bancos de memória, como mostra a figura 28. Algumas possuem 6 soquetes formando 3 bancos, como mostra a figura 29.

ART20-28

Figura 28 – Dois bancos de memória SIMM de 72 pinos em uma placa de CPU Pentium.

Em ambos os casos, o manual da placa de CPU traz as instruções para o preenchimento desses bancos. Vejamos a seguir diversos exemplos (todos muito parecidos) de instalação e expansão de memória em placas de CPU baseadas no Pentium.

ART20-29

Figura 29 – Três bancos de memória SIMM de 72 pinos em uma placa de CPU Pentium.

Exemplo 1

A tabela mostrada a seguir apresenta as possíveis configurações de memória na placa de CPU Endeavour 2, fabricada pela Intel. Observe pela tabela que esta placa possui dois bancos de memória.

SYSTEM MEMORY

Table below shows the possible memory combinations. The Advanced/EV will support both Fast Page DRAM or EDO DRAM SIMMs, but they cannot be mixed within the same memory bank. If Fast Page DRAM and EDO DRAM SIMMs are installed in separate banks, each will be optimized for maximum performance. Parity generation and detection are NOT supported, but parity SIMMs (x36) may be used. SIMM requirements are 70 ns for Fast Page Mode or 60 ns EDO DRAM.

ART20-B

Neste exemplo, extraída da forma exata como se encontra no manual da referida placa de CPU, temos a tabela com todas as configurações de memória permitidas. É dito que a placa aceita memórias FPM e EDO (como ocorre em todas as placas de CPU Pentium, exceto nas mais antigas), desde que em cada banco não exista mistura. É permitido, por exemplo, preencher o Banco 0 com dois módulos EDO e o Banco 1 com dois módulos FPM. Cada banco funcionará de forma independente, de acordo com o tipo de DRAM instalada. É ainda informado que a placa não utiliza paridade, apesar de aceitar o uso de módulos com paridade. Finalmente, é indicado o tempo de acesso necessário às memórias: 70 ns para FPM e 60 ns para EDO. Observe pela tabela que não é permitido manter o Banco 0 vazio e usar o Banco 1. São suportados módulos SIMM de 4 MB até 32 MB, totalizando o máximo de 128 MB de RAM. Levando em conta a tabela acima, suponha um PC equipado com 8 MB de RAM, formados por dois módulos de 4 MB instalados no Banco 0, como mostra a figura 30.

ART20-30

Figura 30 – Bancos de memória de uma placa de CPU Pentium equipada com 8 MB de RAM.

De acordo com a tabela, poderíamos fazer uma expansão para 16 MB, instalando dois módulos de 4 MB no Banco 1. Entretanto, faremos uma expansão um pouco mais ousada. Instalaremos dois módulos de 8 MB no Banco 1, totalizando 24 MB. Observe que em ambos os casos, estamos obedecendo a tabela de configurações de memória para esta placa. Ficaremos então com 24 MB, como mostra a figura 31.

ART20-31

Figura 31 – A memória foi expandida para 24 MB.

Observe que, ao usarmos apenas o Banco 0 e mantendo o Banco 1 vazio, poderemos futuramente realizar uma expansão usando o Banco 1 e aproveitando os módulos já existentes no Banco 0. Entretanto, se ao instalarmos memórias pela primeira vez, usarmos ambos os bancos, não poderemos aproveitar todas as memórias existentes em uma futura expansão. Digamos por exemplo que sejam instalados em um PC novo, 32 MB de RAM, formados por 4 módulos de 8 MB, usando todos os soquetes de memória disponíveis. Esta quantidade de RAM será altamente satisfatória por muito tempo, mas não poderemos aproveitar todos os 4 módulos caso desejemos aumentar futuramente a quantidade de memória. Neste caso, ao invés de instalar logo de início 32 MB formados por 4 módulos de 8 MB, poderíamos instalar dois módulos de 16 MB, usando apenas o Banco 0, e deixando o Banco 1 livre para uma futura expansão.

Existe porém o outro lado, que deve ser levado em conta principalmente pelos mais pessimistas e azarados: Se algum módulo de memória apresentar defeito, é melhor que seja um módulo de 8 MB, e não um de 16 MB. Devo dizer que nos últimos 5 anos, já tendo lidado diretamente com centenas de módulos de memória, vi apenas três apresentarem defeitos. Um deles foi tocado inadvertidamente com as mãos pelo seu usuário, sendo imediatamente danificado pela eletricidade estática. Os outros dois foram usados em sala de aula, tendo sido conectados e desconectados diversas vezes. Um deles deixou de funcionar depois de alguns meses, provavelmente por excesso de manuseio, e o outro foi danificado por um curto-circuito causado pelo seu próprio soquete, cujos pinos estavam desalinhados devido ao excesso de manuseio. Fora esses casos, lembro-me de um que apresentou defeito ao ser usado pela primeira vez, sendo portanto imediatamente trocado pelo seu revendedor. Antes de comprar memórias, pergunte pela garantia. Muitos revendedores fornecem garantia de até um ano.

Exemplo 2

Vejamos a seguir um outro exemplo de tabela de configurações de memória, extraída de uma placa de CPU Pentium um pouco mais antiga, produzida no final de 1994. Esta placa opera com o Pentium-90 e possui 2 bancos de memória:

SYSTEM MEMORY
Table below shows the possible memory combinations. The Plato P54/PCI Baby-AT will support both parity and non-parity SIMMs, but they cannot be mixed within the same memory bank. If both parity and non-parity SIMMs are combined in the system memory, will be treated as non-parity. SIMM requirements are 70ns, Fast Page Mode.

ART20-C

As instruções do fabricante indicam que as memórias podem operar com ou sem paridade (36 ou 32 bits), mas não podem ser misturados módulos com e sem paridade dentro de um mesmo banco. Além disso, para que seja usada a geração e a verificação da paridade, é preciso que todos os módulos de memória tenham paridade. Está também indicado que as memórias devem ser do tipo FPM (naquele tempo ainda não eram usadas memórias EDO, e elas não funcionarão nas placas antigas), com tempo de acesso de 70ns.

Pela tabela, vemos que podem ser usados módulos de 1 MB, 2 MB, 4 MB, 8 MB, 16 MB e 32 MB. De acordo com esta tabela, são válidos os exemplos de expansão de 8 MB para 16 MB ou 24 MB, mostrados para a placa anterior.

Exemplo 3

Vejamos agora mais um exemplo, baseado na placa de CPU Atlantis, também fabricada pela Intel:

SYSTEM MEMORY
The system supports 8 MB to 128 MB of DRAM. DRAM is implemented through 72-pin single in-line memory modules (SIMMs), either of common Fast Page Mode style or the higher performance Extended Data Out (EDO) design. The system board contains four SIMM sockets for memory meeting the speed requirements of the processor installed.

ART20-D

De acordo com as instruções do fabricante, esta placa suporta memórias FPM e EDO, como ocorre com todas as placas de CPU Pentium modernas. Infelizmente o fabricante esqueceu de indicar qual é o tempo de acesso recomendado. Em caso de dúvida, podemos sempre optar pelas DRAMs mais velozes, que são as de 60ns.

Observado a tabela, vemos que são suportados módulos de 4 MB, 8 MB, 16 MB e 32 MB. Entretanto, existe aqui uma diferença em relação às placas analisadas nos outros exemplos. Esta permite que o Banco 0 seja deixado vazio, enquanto o Banco 1 é preenchido. Aparentemente isto não traz vantagem alguma, mas é uma tendência nas placas de fabricação mais recente.

Considere que esta placa está equipada com 16 MB, formados por dois módulos de 8 MB instalados no Banco 0. Podemos realizar as seguintes opções de expansão, mantendo esses módulos originais e instalando módulos novos no Banco 1:

Para 24 MB, instalando módulos de 4 MB no Banco 1
Para 32 MB, instalando módulos de 8 MB no Banco 1
Para 48 MB, instalando módulos de 16 MB no Banco 1
Para 80 MB, instalando módulos de 32 MB no Banco 1

Outras capacidades podem ser obtidas, como mostra a tabela, mas para isto será preciso remover os dois módulos de 8 MB e usar novos módulos de maior capacidade.

Exemplo 4

Vejamos agora o exemplo de uma placa de CPU que possui 6 soquetes para instalação de memórias. Trata-se da placa P55T2S, fabricada pela Supermicro. Aceitando módulos de até 128 MB, esta placa pode atingir uma memória máxima de 768 MB, muito além das espectativas dos PCs atuais. A seguir temos as instruções apresentadas no seu manual a respeito da instalação e expansão de memória:

SYSTEM MEMORY
The Super P55T2S motherboard can accommodate a maximum of 768 MB (six banks) of on-board memory, using standard 72-pin SIMM modules. You can use any 1MBx36, 2 MBx36, 4 MBx36, 8 MBx36, 16 MBx36 or 32 MBx36 EDO (Extended Data Out) or Fast Page Mode SIMM modules. The motherboard supports any mixture of two banks of the six types of SIMMs, as long as both SIMM modules within two banks are of the same type.

ART20-E

Este manual não apresenta tabela de configurações de memória. Se fosse apresentada, esta tabela teria exatamente 342 possibilidades. Apresentamos parte desta tabela a seguir.

As instruções que o fabricante apresenta esclarecem bem como instalar e expandir as memórias, porém comete alguns erros técnicos. Vejamos a sua tradução:

A placa P55T2S pode acomodar um máximo de 768 MB, em seis bancos (errado, são 6 soquetes, formando 3 bancos), usando módulos SIMM de 72 pinos. Você pode usar qualquer tipo, entre 1 MBx36 (o correto seria 1M x 36, e não 1 MBx36), 2 MBx36, 4 MBx36, 8 MBx36, 16 MBx36 ou 32MBx36 (em todas essas indicações, está errado escrever “MB”), do tipo EDO ou FPM. A placa suporta qualquer mistura de duplas de bancos dos seis tipos de memória (o correto seria dizer “duplas de soquetes”), desde que módulos existentes em cada dupla de bancos sejam do mesmo tipo (o correto seria dizer, em cada par de soquetes).

Este fabricante usou de forma errada a noção de “banco”. Em placas de CPU Pentium, um banco de memória é formado por dois soquetes, como já sabemos.

A instalação e a expansão de memória nesta placa é muito simples. Para instalar memória pela primeira vez, usamos dois módulos iguais no Banco 0 (na verdade podemos instalar esses dois módulos no Banco 1 ou no Banco 2). Para fazer uma expansão, instalamos mais dois módulos no Banco 1, desde que esses dois adicionais sejam de mesma capacidade, mas não obrigatoriamente sendo da mesma capacidade que os existentes no Banco 0. Como temos ainda um terceiro banco livre, podemos futuramente fazer uma segunda expansão, instalando mais dois módulos iguais no Banco 2.

O fabricante faz menção a módulos de 36 bits (com paridade), mas podem ser utilizados módulos de 32 bits, ou seja, sem paridade. Como sempre ocorre, a placa de CPU só fará a geração e a checagem dos bits de paridade se todos os módulos instalados possuírem paridade. Quanto à mistura de tipos, podemos usar módulos FPM ou EDO, desde que não exista mistura dentro de um banco.

Exemplo 5

Você não deve seguir ao pé da letra, frases como “na placa modelo tal, a expansão de memória é feita da forma…”. Existem muitas placas, produzidas por diversos fabricantes, e até mesmo um fabricante específico produz uma certa quantidade de placas que após serem vendidas dão lugar a modelos mais modernos. Aqui estamos citando nomes e modelos de placas apenas para mostrar que tratam-se de exemplos reais de placas encontradas no mercado.

A placa ExpertBoaard8551 possui, assim como outras citadas aqui, 2 bancos de memória formados por 4 soquetes para módulos SIMM de 72 pinos. Entretanto, tome muito cuidado com as suas instruções de preenchimento. Veja na figura 32 como esses dois bancos estão dispostos. O Banco 0 é formado pelo primeiro e pelo terceiro soquetes, enquanto o Banco 1 é formado pelo segundo e pelo quarto soquetes. Esta disposição intercalada é incomum, mas nada impede um fabricante de usá-la, com o objetivo de simplificar as ligações das trilhas de circuito impresso. Um usuário desatento pode ser levado a instalar dois módulos iguais no primeiro e no segundo soquete, como é feito na maioria das placas. A leitura atenta das instruções do manual sempre é a primeira regra a ser seguida para obter sucesso em expansões.

ART20-32

Figura 32 – Exemplo de instalação de memórias em uma placa que possui bancos intercalados.

As instruções apresentadas no manual da placa são as seguintes:

DRAM INSTALLATION
The EXP8551 motherboard can support memory from 2 MB to 128 MB. The board layout below shows the location of the DRAM memory banks. Each group includes two SIMMs. Each SIMM size can be 1, 2, 4, 6, 16 or 32 MB, please install the same DRAM size in one group.

De acordo com as instruções, o Banco 0 (chamado por este fabricante de “grupo”) é formado pelo primeiro e pelo terceiro soquete, e o Banco 1 é formado pelo segundo e pelo quarto. Assim como nos demais exemplos analisados aqui, os bancos são preenchidos de forma independente, usando módulos de diversas capacidades. Observe que continua sendo válida a regra de preencher cada banco com módulos iguais. A figura 32 mostra o exemplo da instalação de 16 MB, através de dois módulos de 8 MB instalados no Banco 0.

Infelizmente nessas instruções, o fabricante esqueceu de dizer que podem ser usadas memórias FPM ou EDO com tempo de acesso de 60ns.

Exemplo 6

O exemplo que se segue (placa ATC-1000) é muito parecido com os anteriores, porém com uma diferença curiosa. Esta placa não aceita o preenchimento dos seus dois bancos com módulos de capacidades diferentes. Não é permitido, por exemplo, instalar dois módulos de 8 MB no Banco 0 e dois módulos de 4 MB no Banco 1. Suas instruções para preenchimento de bancos são as seguintes:

SYSTEM MEMORY INSTALLATION
ATC-1000 provides four 72-pin sockets for system memory expansion from 4 MB to 128 MB. These four SIMMs are arranged to two banks, Bank1 (SIMM 3, 4) and Bank0 (SIMM 1, 2). Each bank provides 64-bit wide data path. This mainboard can accept either Fast Page Mode or EDO Mode (Extended Data Out) DRAM, with a speed at least 70 nanosecond. You should plug DRAM modules into two sockets (same bank) or four sockets at one time. Each pair of modules must be the same size, type and speed. This mainboard supports mixing of EDO SIMMs with fast page mode DRAM SIMMs among different banks.

ART20-F

As instruções esclarecem que a placa possui 4 soquetes para módulos SIMM de 72 pinos, permitindo a instalação de 4 MB até 128 MB de DRAM. Cada banco fornece 64 bits, como ocorre em todas as placas de CPU Pentium. A placa aceita memórias DRAM FPM e EDO, com tempo de acesso de 70ns ou 60ns. Como já sabemos, temos que usar os módulos sempre aos pares. Cada par de módulos deve ter a mesma capacidade, tipo (EDO ou FPM) e tempo de acesso. É permitido instalar tipos diferentes (FPM e EDO) em bancos diferentes.

Essas instruções não deixam claro que a placa não aceita módulos de capacidades diferentes em bancos diferentes, como indica sua tabela. Este tipo de controvérsia pode surgir algumas vezes, pois nem sempre os manuais são bem documentados.

Exemplo 7

Já é possível encontrar no mercado placas que suportam, além dos módulos SIMM de 72 pinos, tipos FPM ou EDO, as novas memórias SDRAM (DRAMs Síncronas) com encapsulamento DIMM de 168 pinos. Observe que isto não significa que todos os módulos DIMM-168 são do tipo SDRAM, e nem que todos os tipos de SDRAM usam o encapsulamento DIMM-168. Significa apenas que as placas de CPU Pentium que suportam este tipo de módulo, disponíveis até o momento, possuem implementado o acesso a memórias DIMM-168 dos tipos SDRAM, FPM e EDO, além das memórias SIMM-72 tipos FPM e EDO.

ART20-33

Figura 33 – Três bancos de memória, sendo dois formados por módulos SIMM-72 e um formado por um módulo DIMM-168.

Como já abordamos, as memórias DIMM-168 fornecem 64 bits simultâneos, e portanto, um único módulo é suficiente para formar um banco de memória de 64 bits como o Pentium exige. As placas analisadas até a data de lançamento deste livro possuíam 4 soquetes de 72 pinos e um soquete de 168 pinos, entretanto, é possível que em futuro próximo, assim que os módulos DIMM forem mais comuns, novas placas passem a apresentar 2 ou 4 soquetes DIMM.

A figura 33 mostra os bancos de memória da placa G568IPV, uma das primeiras a apresentar um soquete DIMM-168.

Esta placa em particular não permite que sejam usados simultaneamente módulos de SIMM-72 e de DIMM-168. Isto significa que ao instalar um módulo DIMM, não poderá fazer uma expansão adicionando módulos SIMM. Ao invés disso precisará substituir o módulo DIMM original por outro módulo DIMM de maior capacidade. Da mesma forma, se forem usados dois módulos SIMM-72, não poderá ser feita uma expansão baseada no adicionamento de um módulo DIMM. Será preciso usar mais dois módulos SIMM-72, ou então retirar os módulos originais e instalar um módulo DIMM de maior capacidade. Ainda é prematuro levar essas regras ao pé-da-letra, já que placas que usam este tipo de módulo ainda são incomuns.

System Memory
The G586IPV system board supports two kinds of memory modules: DIMM and SIMM. DIMM, which uses SDRAM, performs better than SIMM, which uses DRAM.

DIMM
The DIMM (Dual In-line Memory Module) socket uses x64 EDO, FPM and SDRAM. The G586IPV system board can support 8 MB to 16 MB memory using 1Mx64 or 2Mx64 168 pin DIMM.

SIMM
The SIMM (Single In-line Memory Module) sockets are divided into two banks on the system board, Bank 0 and Bank 1. Each bank consists of 2 SIMM sockets.

You will need either 2 or 4 pieces of SIMM modules , depending on the amount of memory you intend to install. The system board will not work if you install 1 or 3 pieces. Make sure you insert the same type of SIMMs in each bank. You can install SIMMs in either of the banks, Bank 0 or Bank 1, but you must populate a bank first before going to the next bank.

The G586IPV system board can support 8 MB to 128 MB of memory using 1Mx32, 2Mx32, 4Mx32 or 8Mx32 72-pin SIMMs.

ART20-G

Examples
If you are installing 8 MB of memory, you must insert two 1Mx32 SIMMs in Bank 0 or Bank 1. Inserting one 2Mx32 module will not work.

If you are installing 24 MB of memory, you must insert two 1Mx32 SIMMs in one bank and two 2Mx32 SIMMs in the other.

JUMPER Settings for DIMM and SIMM
Jumper JP10 must match the type of module installed on the G586IPV system board. If you change your memory module, make sure this jumper is changed accordingly:

Você deve ficar acostumado com as instruções em inglês. O domínio da língua inglesa é necessário para todos aqueles que desejam consultar os manuais, requisito indispensável para qualquer tipo de expansão. Vejamos a seguir o que dizem essas instruções:

O fabricante diz que podem ser usados módulos SIMM ou DIMM, entretanto, adiciona uma informação imprecisa (que ele mesmo contradiz mais adiante), explicando que os módulos DIMM usam SDRAM, e por isto são mais rápidos. Está errado, pois existem módulos DIMM também dos tipos FPM e EDO.

A seguir é explicado que podem ser instalados 8 MB ou 16 MB usando um módulo DIMM. A razão desta limitada quantidade de memória é que, na época do lançamento desta placa só existiam módulos DIMM com essas capacidades, hoje já existem módulos DIMM com capacidades maiores.

As instruções para instalação dos módulos SIMM-72 são similares às existentes para as outras placas analisadas nos exemplos anteriores. Cada banco pode ser preenchido com módulos SIMM-72, desde 4 MB (1Mx32) até 32 MB (8Mx32).

Finalmente, é importante observar que esta placa exige que um certo jumper (JP10) seja posicionado de forma coerente com o tipo de módulo utilizado. Para módulos SIMM, devem ser ligados 1-3 e 2-4. Para módulos DIMM, as ligações são 3-5 e 4-6, como mostra a figura existente entre as instruções do fabricante.

Exemplo 8

Vamos a mais um exemplo de instalação e expansão de memória em mais uma placa que suporta memórias DIMM. Esta placa é chamada de ATC-1020, e possui bancos de memória idênticos aos mostrados na figura 33.

SYSTEM MEMORY INSTALLATION
ATC-1020 provides four 72-pin SIMM sockets for system memory expansion from 4 MB to 128 MB. These four SIMMs are arranged to two banks, Bank 0 (SIMM 1, 2) and Bank 1 (SIMM 3, 4). Each bank provides 64 bit wide data path.

ART20-H

This motherboard can accept either Fast Page Mode, or EDO Mode (Extended Data Out) DRAM, with a speed at least 70 nanosecond. You should plug DRAM modules into two sockets (same bank) or four sockets at one time. Each pair of modules must be the same size, type and speed. Please plug in Bank 0 firstly if you only have 2 modules. This motherboard supports mixing of EDO SIMMs with fast page mode DRAM SIMMs among different banks, please plug EDO in Bank 0.

Also this mainboard provides one optional 168-pin DIMM socket for Synchronous DRAM expansion. It’s not recommended to install the SDRAM and EDO of Fast Paged mode memory within a system. Changing EDO/FPM DRAM to SDRAM, you don’t have to adjust jumper setting or BIOS value, nor does change SDRAM to EDO/FPM DRAM.

System Memory Combinations Options

Esta placa também permite o uso de um módulo DIMM, mas não permite que um módulo DIMM seja usado ao mesmo tempo que módulos SIMM. Existem dois bancos SIMM que podem acomodar, de acordo com a tabela, módulos de 4 MB até 64 MB, não sendo entretanto permitido instalar simultaneamente 4 módulos de 64 MB (total de 256 MB), de acordo com a tabela. As memórias devem ter tempos de acesso de 60 ou 70ns. É permitido usar memórias SIMM dos tipos EDO ou FPM, desde que esses dois tipos não sejam misturados dentro de um mesmo banco.

A placa também suporta memória SDRAM na forma de um módulo DIMM-168, mas seu fabricante recomenda que este módulo não seja usado em conjunto com módulos EDO ou FPM. O que não está claro é se a placa permite ou não o uso de um módulo DIMM-168 dos tipos EDO ou FPM, ou de um módulo SDRAM DIMM-168 em conjunto com outros módulos SIMM também do tipo FPM. Apesar de ser sempre necessário, infelizmente nem sempre o manual é bem explicado. Fica claro entretanto que, ao contrário da placa do exemplo anterior, esta não exige que sejam alterados jumpers ou feitas alterações no CMOS Setup em função do tipo de memória instalada.

Memórias de 16 bits

Precisamos dar maior prioridade aos computadores mais recentes, e menor prioridade aos mais antigos, mesmo porque em geral a expansão de computadores antigos não é vantajosa, levando em conta o custo e o desempenho. Desta forma, em geral não é vantajoso expandir a memória de computadores baseados no 286 ou no 386SX, apesar de ser possível. Mostraremos agora como expandir a memória desses PCs, muito comuns entre 1990 e 1992, porém daremos ênfase apenas à expansão usando módulos SIMM de 30 pinos. Os outros tipos de memória (SIPP e DIP) são minoritários nesses tipos de placa.

A maioira dessas placas possui dois bancos de memória, sendo cada um deles formado por dois módulos SIMM de 30 pinos, conforme mostra a figura 34.

ART20-34

Figura 34 – Dois bancos de memória SIMM de 30 pinos, conforme encontrados na maioria das placas baseadas no 286 e no 386SX.

Esses microprocessadores exigem memórias de 16 bits. Por isso, cada banco é formado por dois módulos.

Você encontrará algumas placas de CPU 286 e 386SX que só aceitam módulos SIMM-30 com 256 kB ou 1 MB. Outras de fabricação um pouco mais recente aceitam ainda módulos de 4 MB. Não existem placas de CPU 286 e 386SX capazes de aceitar mais de 16 MB, pois esta é a maior quantidade de memória que esses microprocessadores podem endereçar.

A seguir vemos o exemplo de uma tabela de configurações de memória de uma placa que aceita apenas módulos de 256 kB e 1 MB. Neste caso, a memória máxima que pode ser instalada é 4 MB.

ART20-I

Na figura 34, temos o exemplo da instalação de 2 MB, formados por dois módulos de 1 MB no Banco 0, como mostra a tabela. Podemos expandir a memória para 4 MB através da instalação de mais dois módulos de 1 MB no Banco 1.

A seguir temos o exemplo de tabela de configurações de memória de uma outra placa que suporta módulos de 4 MB.

ART20-J

Você não deve seguir esas tabelas à risca. O procedimento correto é usar a tabela de configurações de memória existente no manual da placa de CPU. Caso você não possua o manual, use as tabelas acima, pois são válidas, mesmo que com pequenas diferenças, para a maioria das placas.

Entre as várias diferenças encontradas nas diversas placas de CPU, você encontrará, por exemplo, casos de placas que aceitam no máximo 2 módulos de 4 MB, chegando à memória total de 8 MB, ao invés de 16 MB. Existem ainda muitas placas que possuem, além das memórias SIMM, 1 MB de memória DRAM formada por chips com encapsulamento DIP. Este 1 MB soma-se às memórias SIMM. Entretanto, muitas vezes é preciso atuar sobre jumpers na placa de CPU para indicar que memórias estão sendo utilizadas.

Ajuste no CMOS Setup

Nem sempre ocorre, mas existem muitas placas de CPU que, ao detectarem que a memória foi expandida (ou mesmo reduzida), apresentam a seguinte mensagem logo no início do processo de boot:

CMOS Memory Size Mismatch
Press F1 to run Setup

Não se trata de uma mensagem de erro. O que ocorre é que o BIOS detectou uma alteração na quantidade de memória instalada. Isto ocorre quando adicionamos ou quando retiramos memória DRAM. O BIOS exige que façamos uma confirmação de que realmente esta alteração é válida. Para fazer esta confirmação basta ativar o CMOS Setup e usar o comando “Salvar e Sair”, sem realizar nenhuma alteração nos demais valores existentes no CMOS Setup. Ao fazermos isto, será automaticamente registrada a nova quantidade de memória, e a mensagem “CMOS Memory Size Mismatch” não aparecerá mais.

Erros na memória

Não é comum ocorrer, mas existe uma remota possibilidade de que uma das memórias que você acabou de instalar esteja defeituosa. Existe um caso que é um pouco mais comum, que é a apresentação de erros, não devido a defeitos na memória, mas por outros motivos relacionados com a instalação, a aquisição errada ou mesmo a configuração. Vejamos a seguir alguns exemplos de situações que resultam em erros.

Compra de módulos errados

Mostramos neste capítulo todas as normas que devem ser seguidas para que o funcionamento das novas memórias seja garantido. Existem erros grosseiros que, ao ocorrerem, inviabilizam totalmente o funcionamento das memórias. São eles:

Uso de módulos com a capacidade errada
Uso de módulos do tipo errado (FPM / EDO)
Uso de módulos com a velocidade errada

Quando esses erros ocorrem, a memória não funciona. Apenas no caso da velocidade errada (memórias mais lentas que o recomendado), é possível em alguns casos realizar ajustes no CMOS Setup, fazendo com que os ciclos de acesso à DRAM sejam mais demorados, permitindo o funcionamento das memórias, mesmo que sejam mais lentas. Esta prática não representa uma boa solução, pois reduz o desempenho do computador.

Existem ainda algumas situações nas quais a memória em geral funciona, mas cuja prática deve ser evitada, pois existe a possibilidade das memórias não funcionarem:

Mistura de memórias com paridade e sem paridade no mesmo banco
Mistura de memórias de fabricantes diferentes no mesmo banco
Mistura de memórias mais lentas e mais rápidas no mesmo banco

Portanto, para garantir o sucesso da expansão, você deve exigir módulos idênticos, para que o novo banco instalado não fique com módulos diferentes.

Mau contado na conexão

As novas memórias podem não funcionar pelo fato de terem sido mal encaixadas nos seus soquetes. O encaixe deve ser feito cuidadosamente para que fique perfeito, evitando mau contato. Por falar em mau contato, ele também pode ocorrer, tanto nas memórias como nos seus soquetes. Algumas vezes os contatos dos módulos de memórias podem ter mau contato devido à oxidação (neste ponto, os módulos com contatos banhados a ouro levam vantagem sobre os que são banhados com estanho), ou devido à gordura resultante do toque com as mãos. Uma forma simples de solucionar o problema é passar uma borracha (das usadas para apagar escritas a lápis ou caneta) em ambos os lados dos contatos de cada módulo. A seguir limpamos os resíduos da borracha, usando um pano seco, mas evitando esfregar de forma exagerada. Mais complicado ainda é o caso do mau contato nos soquetes das memórias. Quando o usuário não tem o bom hábito de proteger seu computador da poeira e da umidade através de capas plásticas nos períodos em que está desligado, os contatos dos soquetes para instalação de memórias podem ficar oxidados. Ocorrerá mau contato quando os módulos de memória forem encaixados. Tipicamente, o que ocorre é que a nova memória não é reconhecida, ou é reconhecida parcialmente, mesmo que esteja em boas condições. Para solucionar o problema, precisamos aspirar a poeira dos soquetes (muitas lojas de material para informática vendem pequenos aspiradores de pó para limpeza de micros) e aplicar um spray limpador de contatos eletrônicos, vendido em lojas de material eletrônico. Técnicos de manutenção de micros normalmente possuem este spray na sua maleta de ferramentas, mas não deixe que usem o “WD40”, spray destinado a remover ferrugem e lubrificar peças móveis como fechaduras e engrenagens, mas muitos infelizmente ainda pensam que pode ser usado em componentes eletrônicos.

Ajustes no CMOS Setup

Um dos vários controles existentes no CMOS Setup diz respeito à velocidade de acesso à memória DRAM. Através desses controles, é possível ajustar o tempo destinado às operações de leitura e escrita nessas memórias. Quando a memória é mais lenta, devemos dar mais tempo para essas operações. Isto normalmente é feito em um comando chamado “DRAM Cycle” ou similar. Podem surgir opções como:

7-4-4-4
6-3-3-3
6-2-2-2

A regra geral é que quando usamos números maiores, as operações de leitura e escrita na DRAM serão mais demoradas, dando tempo suficiente para que as memórias mais lentas possam funcionar. A desvantagem é que pelo fato das memórias serem mais lentas, o desempenho do computador será menor. Por outro lado, ao usarmos memórias mais velozes podemos diminuir os números usados nos ciclos de acesso às memórias. O computador ficará mais veloz, porém se as memórias não forem suficientemente rápidas, seu funcionamento poderá ficar comprometido devido a erros na memória. O computador pode apresentar a mensagem “PARITY ERROR” (caso as memórias possuam paridade), ou pode simplesmente apresentar “congelamentos” e “travamentos”. O procedimento mais comum é usar um meio termo entre o acesso mais lento e o mais rápido. Portanto, entre as três opções acima, seria usada por default, a “6-3-3-3”. Ocorre que alguns usuários fazem pequenos “envenenamentos” no CMOS Setup, visando obter melhor desempenho. As memórias existentes podem suportar os valores “6-2-2-2”, mas nem sempre podemos dizer o mesmo das memórias usadas na expansão. Para que as novas memórias funcionem, pode ser preciso ajustar este parâmetro no CMOS Setup. Inicialmente devemos usar a opção “Load BIOS Defaults”, que faz com que, entre outras coisas, o tempo destinado ao acesso às memórias seja programado com um valor seguro, sem causar degradação perceptível no desempenho. Se isto não resolver o problema, devemos tentar aumentar esses valores. No nosso exemplo, usaríamos a opção 7-4-4-4. Se ao programarmos os maiores valores, as novas memórias passarem a funcionar, significa que não são suficientemente velozes para funcionar com os valores default. Esta situação dificilmente ocorre quando as memórias são de 60 ns. Portanto, se o fabricante indicar no manual que 70 ns são suficientes, não confie. Compre memórias de 60 ns.

Memórias danificadas

Se você já checou os três itens indicados acima e as memórias continuam apresentando erros, é provável que alguma delas esteja defeituosa. Esta situação é perfeitamente possível, já que muitos vendedores tocam os chips e os contatos metálicos das memórias com as mãos, não tomando os cuidados devidos com a eletricidade estática. Como resultado, os chips de memória podem ficar total ou parcialmente danificados. O erro pode se manifestar imediatamente, assim que o computador for ligado, ou pior ainda, pode ser apresentado de forma intermitente. Pode ainda ocorrer o bom funcionamento das memórias durante algumas semanas ou meses, para depois surgir o defeito. Nunca toque com as mãos os contatos metálicos das memórias. A figura 35 mostra as formas corretas de segurar os módulos de memória. A figura 36 mostra como não devemos segurar esses módulos.

ART20-35

Figura 35 – Formas corretas de segurar e de concectar um módulo de memória.

ART20-36

Figura 36 – Formas erradas de segurar e de conectar um módulo de memória.

Muitos vendedores não se preocupam com a questão da eletricidade estática. Se ao comprar memórias, você observar que ele as toca diretamente com as mãos, sem tomar cuidado com a eletricidade estática, sinta-se à vontade para desistir da compra, mas diga o motivo. Diga que o Laércio Vasconcelos transmite em seus livros as recomendações de todos os fabricantes de hardware em relação à eletricidade estática. O revendedor precisa estar consciente de que não está vendendo laranjas, e sim, componentes eletrônicos que requerem cuidados especiais.

Nunca esqueça de pedir também a garantia sobre as memórias, assim como todo o material usado em expansões. Você deve receber um termo de garantia e a nota fiscal do material, o que confirma a data de aquisição para efeitos de garantia. Normalmente os revendedores oferecem garantias com prazos de 6 meses a um ano.

Se ao expandir a memória, tudo funcionar corretamente, a nova quantidade de memória for reconhecida, e todos os programas funcionarem sem apresentar “travamentos” e nem erros de paridade, significa que as novas memórias provavelmente estão em perfeito estado. Digamos que podemos ficar 99,9% certos de que esteja tudo bem. Entretanto, a única forma de ter 100% de certeza é realizando um CHECK-UP nas memórias, usando softwares de diagnóstico apropriados. No Apêndice A deste livro, mostramos como usar o programa NDIAGS (Norton Diagnostics), que faz parte do pacote Norton Utilities versão 8.0 para MS-DOS (os programas que fazem testes de hardware, mesmo os mais recentes, operam em modo MS-DOS). A esmagadora maioria dos usuários não faz esses testes, o mesmo ocorrendo com a maioria das pequenas empresas que comercializam micros. Se você possui o Norton Utilities, não custa nada fazer um check-up, como explicamos no Apêndice A.

Manuseando os módulos de memória

Já falamos bastante sobre a parte mais difícil de uma expansão de memória, ou seja, determinar que tipo de módulo deve ser utilizado. O usuário pode ser levado a pensar que basta saber conectar os módulos em seus soquetes, mas como vimos, existem fatores muito mais complexos envolvidos na expansão. O ato de encaixar fisicamente um módulo em seu soquete é a parte mais simples da expansão, mas pode tornar-se difícil quando os soquetes das memórias não estão acessíveis, estando obstruídos por placas e cabos. Em algumas situações é preciso retirar a placa de CPU para ter acesso aos soquetes das memórias.

É preciso saber como segurar corretamente um módulo de memória. Dê uma boa olhada nas figuras 35 e 36, onde vemos as formas corretas e erradas de segurar módulos de memória. Se tocarmos os seus contatos, ou as partes metálicas dos seus circuitos, corremos o sério risco de danificar as memórias com a eletricidade estática.

ART20-37

Figura 37 – Posicionando um módulo SIMM para encaixe no seu módulo.

Também é altamente recomendável, antes de manusear as memórias e os demais componentes internos do computador, tocar as duas mãos na carcaça metálica da fonte de alimentação. Isto fará uma descarga da eletricidade estática acumulada nas mãos. É recomendável repetir esta descarga, por exemplo, de 10 em 10 minutos durante a operação de expansão.

Os módulos SIMM de 30 e 72 pinos são encaixados através do mesmo processo. Para fazer o encaixe, colocamos o módulo sobre o seu soquete, ligeiramente inclinado, como mostra a figura 37. Ao posicionar o módulo, os dois furos circulares existentes nas bordas do módulo devem ficar alinhados com dois pequenos pinos existentes no soquete.

Depois de alinhado corretamente, coloca-se o módulo na posição perpendicular ao plano da placa, como mostra a figura 38. Duas pequenas alças metálicas existentes no soquete travam o módulo pelas suas extremidades laterais.

ART20-38

Figura 38 – Travando o módulo no seu soquete.

Esta operação é normalmente explicada nos manuais de placas de CPU, como por exemplo, ilustra a figura 39.

ART20-39

Figura 39 – Encaixe de um módulo SIMM.

Para retirar um módulo SIMM do seu soquete, precisamos pressionar, de dentro para fora, as duas alças metálicas do soquete que prendem o módulo, como mostra a figura 40. Uma vez afastadas essas alças, pressionamos o módulo para que se incline. Muitas vezes nem é preciso pressionar o módulo para que o mesmo se incline. O módulo se inclina sozinho assim que as duas alças são afastadas. Uma vez inclinado, podemos retirá-lo do soquete.

ART20-40

Figura 40 – Pressionando as alças metálicas para retirar um módulo SIMM do seu soquete.

O encaixe de módulos DIMM (168 pinos) é feito de forma bem diferente. Não são encaixados de forma inclinada e depois travados, como ocorre com os módulos SIMM. O módulo DIMM deve ser introduzido no seu soquete verticalmente, de cima para baixo.

ART20-41

Figura 41 – Um módulo DIMM e o seu soquete.

ART20-42

Figura 42 – Um módulo DIMM, já encaixado no seu soquete.

Duas pequenas saliências (chaves) existentes no soquete são encaixadas em dois chanfros (ou ranhuras) existentes no módulo. Isto evita que o encaixe seja feito de forma invertida (os módulos SIMM também utilizam este recurso). Uma vez firmemente inserido no soquete, usamos duas travas laterais para prender o módulo ao soquete. Veja as figuras 41 e 42.

Para extrair um módulo DIMM, afastamos as duas travas laterais e o puxamos para cima, com cuidado para não tocar nos seus chips.