Buscar

cap11 - Memórias

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 82 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 82 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 82 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Capítulo 11 
Memórias
Leitura e escrita
Podemos dividir as memórias em duas grandes categorias: ROM e RAM.
Em todos os computadores encontramos ambos os tipos. Cada um desses
dois tipos é por sua vez, dividido em várias outras categorias.
ROM
ROM significa read only memory, ou seja, memória para apenas leitura. É
um tipo de memória que, em uso normal, aceita apenas operações de leitura,
não permitindo a realização de escritas. Outra característica da ROM é que
seus dados não são perdidos quando ela é desligada. Ao ligarmos
novamente, os dados estarão lá, exatamente como foram deixados. Dizemos
então que a ROM é uma memória não volátil. Alguns tipos de ROM
aceitam operações de escrita, porém isto é feito através de programas
apropriados, usando comandos de hardware especiais. Uma típica aplicação
da ROM é o armazenamento do BIOS do PC, aquele programa que entra
em ação assim que o ligamos. Este programa testa a memória, inicializa o
hardware e inicia a carga do sistema operacional.
RAM
Significa random access memory, ou seja, memória de acesso aleatório. Este
nome não dá uma boa idéia da finalidade deste tipo de memória, talvez
fosse mais correto chamá-la de RWM (read and write memory, ou memória
para leitura e escrita). Entretanto o nome RAM continua sendo utilizado por
questão de tradição. Em operação normal, o computador precisa fazer não
apenas o acesso a dados e instruções, através de leituras na memória, mas
também guardar resultados, através de operações de escrita na memória.
Além de permitir leituras e escritas, a RAM tem outra característica típica:
11-2 Hardware Total
trata-se de uma memória volátil, ou seja, seus dados são apagados quando é
desligada. Por isso quando desligamos o computador e o ligamos novamente,
é preciso carregar o sistema operacional. Resumindo, as principais
características da ROM e da RAM são:
ROM RAM
Significado Read only memory Random access memory
Faz leituras SIM SIM
Faz escritas NÃO SIM
Perde dados ao ser desligada NÃO SIM
Em linhas gerais, essas são as características das memórias tipos ROM e
RAM. Existem entretanto ROMs que permitem gravações, e RAM que não
perdem dados, como veremos adiante. 
Encapsulamentos de ROMs
Quase sempre você irá encontrar ROMs fabricadas com encapsulamento
DIP cerâmico ou plástico, como vemos na figura 1. 
Figura 11.1
ROM com encapsulamento DIP.
O encapsulamento DIP (dual in-line package) cerâmico é mais utilizado pelas
ROMs do tipo EPROM (ou UV-EPROM). Essas ROMs possuem uma janela
de vidro, através da qual os dados podem ser apagados através de raios
ultra-violeta. Depois de apagadas, podem ser novamente gravadas. Em uso
normal esta janela deve permanecer tampada por uma etiqueta. Portanto
nunca retire a etiqueta da ROM expondo sua janela de vidro, pois ela pode
ser apagada por exposição prolongada à luz natural. 
Podemos ainda encontrar ROMs com outros encapsulamentos diferentes do
DIP. Um encapsulamento relativamente fácil de encontrar é o PLCC (plastic
leadless chip carrier), mostrado na figura 2. 
Capítulo 11 - Memórias 11-3
Figura 11.2
ROM com encapsulamento PLCC.
Encapsulamento das RAMs
Os chips de memória RAM também podem ser encontrados em diversos
formatos, sendo que o mais comum é o encapsulamento SOJ (small outline
package J-lead), mostrado na figura 3. Você encontrará com freqüência este
encapsulamento nos chips que formam os módulos de memória e nos que
forma a memória de vídeo, encontrados em placas de vídeo. 
Figura 11.3
Chips de RAM com encapsulamento SOJ.
Também é comum encontrar chips de RAM com encapsulamento QFP
(quad flatpack). São usados por chips que formam a cache L2 em placas de
CPU com cache externa, e nos chips que formam a memória de vídeo. 
11-4 Hardware Total
Figura 11.4
Chips de RAM com encapsulamento QFP.
Não confunda chip de memória com módulo de memória. Os chips de
RAM com encapsulamento SOJ que mostramos na figura 3 são montados
em pequenas placas chamadas módulos de memória, que serão apresentados
mais adiante. 
Encapsulamento de módulos de memória
Até o início dos anos 90, as memórias dos PCs usavam encapsulamento DIP
e eram instaladas, chip por chip. Trabalho fácil para um técnico, mas uma
tarefa bastante complexa para um usuário que nunca fez este tipo de
trabalho. Os módulos de memória foram criados para facilitar a sua
instalação, não só por parte do usuário, mas também pela indústria
eletrônica. É muito mais rápido conectar um módulo de memória que
instalar um grande número de chips avulsos. 
Figura 11.5
Chip de memória com encapsulamento DIP e
módulos de memória SIPP e SIMM.
Os primeiros módulos de memória eram chamados SIPP (single inline pin
package), e foram lançados em meados dos anos 80. Este módulo era uma
Capítulo 11 - Memórias 11-5
pequena placa com chips de memória e terminais (“perninhas”) para encaixe
no soquete apropriado. O processo de fabricação foi simplificado com a
adoção dos módulos SIMM (single inline memory module). Ao invés de
utilizar terminais de contato como o SIPP, esses módulos têm um conector
na sua borda. O soquete para este tipo de módulo é um pouco mais
complicado, porém o processo de fabricação dos módulos tornou-se mais
simples, e sua instalação mais rápida. Módulos SIPP caíram em desuso no
início dos anos 90, sendo substituídos pelo formato SIMM. Esses módulos
forneciam 8 bits simultâneos e precisavam ser usados em grupos para formar
o número total de bits exigidos pelo processador. Processadores 386 e 486
utilizam memórias de 32 bits, portanto os módulos SIMM eram usados em
grupos de 4. Por exemplo, 4 módulos iguais, com 4 MB cada um, formavam
um banco de 16 MB, com 32 bits. 
Os módulos SIMM usados até então tinham 30 contatos, portanto eram
chamados de SIMM/30, ou módulos SIMM de 30 vias (ou 30 pinos). Ainda
eram bastante comuns em meados dos anos 90, mas já existiam na época,
módulos SIMM de 72 vias (SIMM/72), que forneciam 32 bits simultâneos.
Em placas de CPU 486, um único módulo SIMM/72 formava um banco de
memória com 32 bits. Esses módulos, apesar de serem mais práticos que os
SIMM/30, eram pouco utilizados, até o lançamento do processador Pentium.
O Pentium trabalha com memórias de 64 bits, portanto seriam necessários 8
módulos SIMM/30 para formar um banco de memória. Isto tornaria a
produção complexa, além de ocupar uma grande área na placa de CPU
apenas para os módulos de memória. Os fabricantes passaram então a adotar
os módulos SIMM/72. Dois desses módulos eram suficientes para formar um
banco de 64 bits. Já em 1996 era praticamente impossível encontrar à venda
módulos SIMM/30, exceto no mercado de peças usadas. 
Figura 11.6
Módulos SIMM/30 e SIMM/72.
11-6 Hardware Total
Visando uma integração de componentes ainda maior, foram criados
módulos que fornecem 64 bits simultâneos. Esses módulos são chamados
DIMM/168 (dual inline memory module), e possuem 168 vias. Um único
módulo DIMM/168 forma um banco de memória com 64 bits. É exatamente
o número de bits utilizados pelos processadores modernos (Pentium 4,
Pentium III, Athlon, Duron, Celeron) e os não tão modernos, como K6, K6-
2, K6-III, Pentium Pro, Pentium II, Pentium MMX, etc. 
Figura 11.7
Módulo DIMM/168.
Se você precisar dar manutenção em uma placa de CPU Pentium produzida
entre 1995 e 1997, tem grandes chances de encontrar um módulo COAST
(Cache on a Stick). Este tipo de módulo era usado para formar a memória
cache de algumas placas de CPU Pentium, e também de algumas placas de
CPU 486 e 586 produzidas naquela época. Note que os módulos COAST
para placas de CPU Pentium são um pouco diferentes dos utilizados para
placas de CPU 486/586.Os módulos para Pentium usam memórias SRAM
do tipo Pipelined Burst, que normalmente têm o encapsulamento TQFP.
Módulos para 486/586 usam em geral memórias SRAM assíncronas, com o
encapsulamento PSOP. Os dois tipos são mostrados na figura 8.
Figura 11.8
Módulos COAST.
A figura 9 mostra os principais módulos de memória descritos aqui. 
Capítulo 11 - Memórias 11-7
Figura 11.9
Módulos de memória.
Dois novos tipos de memória prometem ser comuns nos computadores
avançados, a partir de 2001. São as memórias RAMBUS (RDRAM) e as
memórias DDR SDRAM. Memórias RAMBUS usam o o encapsulamento
RIMM de 184 vias (figura 10). Este tipo de módulo é muito parecido com os
demais apresentados até aqui, exceto pelo fato de poder ter uma chapa
metálica cobrindo seus chips. Note que o módulo da figura 10 não possui
esta chapa, que atua como um dissipador de calor. Esses módulos têm
tamanho similar ao dos módulos DIMM/168, cerca de 13 centímetros.
Entretanto não existe risco de conexão em um soquete errado, já que as
duas fendas existentes do conector só se ajustam aos soquetes apropriados. 
Figura 11.10
Módulo RIMM/184.
Também bastante parecidos são os módulos DIMM/184, utilizado pelas
memórias DDR SDRAM. A medida é similar à dos módulos DIMM/168 e
RIMM/184, mas esses módulos também possuem um chanfro característico
que impede o seu encaixe em um soquete errado. 
Figura 11.11
Módulo DIMM/184.
11-8 Hardware Total
Módulos DIMM/168, DIMM/184 e RIMM/184 têm larguras semelhantes
(13,3 cm), mas diferenças bastante sutis. A forma mais fácil de reconhecer a
diferença é através dos chanfros existentes no seu conector. O DIMM/184 é
o único que possui um só chanfro, enquanto o DIMM/168 e o RIMM/184
possuem dois chanfros. Os dois chanfros do DIMM/168 dividem os contatos
do conector em três grupos, enquanto os dois chanfros do RIMM/184 ficam
mais próximos do centro, mas não existem contatos entre os dois chanfros
do RIMM/184. Uma outra diferença: os módulos DIMM/168 possuem um
chanfro em forma de semi-circunferência em cada lateral. Os módulos
DIMM/184 possuem dois chanfros em cada lateral. 
RAM estática
Até agora abordamos os encapsulamentos usados pelos módulos de
memória. Vamos agora apresentar, do ponto de vista eletrônico, os principais
tipos de memória RAM. Não confunda tipo com formato. Memórias com
formatos (encapsulamentos) iguais podem ser de tipos eletronicamente
diferentes, portanto devemos tomar cuidado para não utilizar memórias
inválidas, iludidos por formatos aparentemente corretos. 
RAMs estáticas e dinâmicas
RAMs podem ser divididas em duas grandes categorias: RAMs estáticas
(SRAM) e RAMs dinâmicas (DRAM). A DRAM é a memória usada em
larga escala nos PCs. Quando dizemos que um PC possui, por exemplo, 128
MB, tratam-se de 128 MB de DRAM. São memórias baratas e compactas, o
que é um grande atrativo. Por outro lado, são relativamente lentas, o que é
uma grande desvantagem. Por esta razão, os PCs utilizam em conjunto com a
DRAM, uma memória especial, mais veloz, chamada cache, que serve para
acelerar o desempenho da DRAM. Há poucos anos, a chamada cache L2
era formada por chips de SRAM, localizados na placa de CPU. Atualmente
a cache L2 faz parte do núcleo dos processadores modernos. 
A DRAM por sua vez pode ser subdividida em outras categorias, sendo as
principais:
 DRAM
 FPM DRAM
 EDO DRAM
 SDRAM
 DDR SDRAM
Capítulo 11 - Memórias 11-9
 RDRAM
Em termos cronológicos, a DRAM foi usada do final dos anos 70 até o final
dos anos 80. Em meados dos anos 80 surgiu a FPM DRAM (Fast Page Mode
DRAM), bastante utilizada até meados dos anos 90. Passaram então a ser
comuns as memórias EDO DRAM (Extended Data Out DRAM), que por
sua vez foram substituídas pela SDRAM a partir de 1997. A partir de 2000, a
SDRAM começou a dar lugar à DDR SDRAM e à RDRAM.
Memórias SRAM existem desde os anos 60, e memórias DRAM desde os
anos 70. Ao contrário do que o nome sugere, a DRAM não é caracterizada
pela rapidez, e sim pelo baixo custo, aliado à alta capacidade, em
comparação com a SRAM. A alta capacidade é devida ao fato das suas
células de memória serem mais simples. Com células mais simples, é possível
criar chips com maior número de células de memória. Em compensação, o
mecanismo de acesso às suas células de memória é mais complicado. Na
RAM estática, basta fornecer o endereço e o comando (leitura, por
exemplo), e depois de um certo tempo (tempo de acesso), os dados estarão
presentes nas suas saídas. Da mesma forma, nas operações de escrita, basta
fornecer ao chip o valor a ser armazenado e o endereço onde deve ser feito
este armazenamento, acompanhado do comando de gravação. Passado o
tempo apropriado (tempo de acesso), os dados estarão gravados. 
Funcionamento da SRAM
A figura 12 mostra o diagrama simplificado de uma SRAM. Ela recebe
endereços (provenientes do processador), e pode enviar os dados que estão
armazenados no endereço especificado, ou armazenar os dados neste
endereço, de acordo com os sinais de controle (leitura/escrita). 
*** 35% ***
Figura 11.12
Diagrama simplificado de uma SRAM.
A figura 13 mostra o diagrama de blocos de uma SRAM, de forma mais
detalhada. O chip usado neste exemplo tem a organização de 8kx8, ou seja,
11-10 Hardware Total
8k células de 1 byte (8 bits). Podemos encontrar chips SRAM com diversas
outras organizações, com várias capacidades diferentes. O tamanho das
células mais comuns são 8, 16 e 32 bits, mas encontramos também modelos
com células de 9, 18 e 36 bits para uso em aplicações que exigem detecção e
correção automática de erros, como veremos mais adiante neste capítulo. 
*** 75%
***
Figura
11.13
Diagrama de blocos
de um chip de
memória SRAM.
Para endereçar os 8 kB no chip da figura 13, são necessários 13 bits de
endereço (213 = 8192 = 8k). Portanto o chip tem 13 entradas para endereços:
A0, A1, A2, A3, A4, ... , A10, A11, A12
Neste chip de memória, as células são organizadas em uma matriz com 256
linhas de 32 colunas. As 256 linhas usam 8 bits para serem endereçadas (A1-
A8), e as 32 colunas usam 5 bits de endereços (A0, A9, A10, A11, A12). Os
pinos I/O0, I/O1, ... , I/O7 são ligados ao barramento de dados. Nas leituras,
os dados lidos da matriz de células passam pelos sense amplifiers
(amplificadores que detectam os bits armazenados na célula selecionada) e
os enviam para os pinos de saída. Nas operações de escrita, os dados
presentes no barramento são enviados ao buffer de entrada e então
armazenados na matriz de células, na posição selecionada pelo endereço. O
chip possui dois sinais de chip enable (CE1 e CE2) que servem para ativar o
seu funcionamento. Esta ativação é feita quando CE1=0 e CE2=1. Para fazer
uma gravação usamos WE (Write Enable) = 0, e para leitura, usamos OE
(Output Enable) = 0. 
Capítulo 11 - Memórias 11-11
Figura 11.14
Leitura de uma SRAM.
A figura 14 mostra o diagrama de tempo de uma operação de leitura em
uma memória estática. Inicialmente o barramento de dados da memória
encontra-se em alta impedância (tristate). Estando o endereço desejado
previamente selecionado, fazemos CE1= 0 e CE2 = 1. A seguir ativamos o
sinal Output Enable, fazendo OE = 0. O barramento de dados, que
anteriormente estava em Tristate, passa a apresentar os dados da célula
selecionada. Note que depois de um tempo T1 a partir do instante em que o
chip é habilitado (CE1=0 e CE2=1), os dados já estão prontos para serem
enviados para o barramento de dados, mas só o são efetivamente depois que
transcorre um tempo T2 com o sinal OE ativado. Passado um tempo T3
depois que OE é desativado (OE=1), o barramento de dados voltará a ficarem alta impedância. 
Figura 11.15
Escrita em uma SRAM.
A figura 15 mostra o diagrama de tempo de uma operação de escrita em
uma RAM estática. É preciso que o endereço seja selecionado, que os dois
sinais de chip enable sejam ativados (CE1=0 e CE2=1) e que o sinal de
output enable seja desativado (OE=1). Os dados a serem gravados são
fornecidos ao barramento de dados (Data IN Valid), e o sinal Write Enable é
ativado. Os dados na entrada devem permanecer estáveis durante um tempo
mínimo T1, com o sinal WE ativado em zero. Passado este período mínomo,
o sinal WE pode ser desativado. 
Células de memória estática
11-12 Hardware Total
Uma célula de memória básica tem o circuito equivalente ao da figura 16.
Este circuito tem a capacidade de armazenar um bit. O bit armazenado pode
ser lido na saída Y. Para armazenar bits, as entradas R e S são ativadas de
acordo com o valor desejado. 
*** 35% ***
Figura 11.16
Célula de memória.
Veremos a seguir como construir este circuito utilizando transitores MOS. O
princípio básico da célula de memória é a ligação de dois inversores, como
mostra a figura 17. Este circuito tem a capacidade de armazener um bit. Se a
entrada do primeiro inversor tem um bit 0, sua saída tem o valor 1. Este 1,
sendo enviado ao segundo inversor, produzirá um resultado 0 na saída. Este
0 por sua vez é enviado à entrada do primeiro inversor, mantendo o circuito
estabilizado, com o valor 0 na saída (segundo inversor).
*** 35% ***
Figura 11.17
Par de inversores ligados desta forma podem armazenar bits.
Na mesma figura, na parte inferior, vemos que nesta situação temos um bit 1
na entrada do primeiro inversor, e na sua entrada teremo um bit 0. Este 0
será recebido pelo segundo inversor, produzindo um bit 1 na sua saída.
Sabemos portanto que o circuito armazena bits, mas é preciso algo que possa
indicar o valor do bit a ser armazenado. O uso de portas NAND como na
figura 16, permite usar as entradas R e S para indicar o bit a ser gravado. Na
figura 18 vemos como o circuito completo é implementado na prática,
utilizando 6 transistores MOS. 
Capítulo 11 - Memórias 11-13
Figura 11.18
Célula de SRAM com tecnologia MOS.
A célula básica da figura 18 é formada pelos dois inversores CMOS,
destacados em cinza (transistores T1/T2 e T3/T4). Alguns fabricantes utilizam
resistores no lugar de T1 e T3, resultando em células de 4 transitores e 2
resistores. Os dois transistores adicionais (T5 e T6) são usados para ler e para
gravar bits. A operação de gravação consiste no seguinte:
a) Os sinais D e D’ são ativados de acordo com o bit que deve ser
armazenado. Para armazenar um bit 1, fazemos D=1 e D’=0. Para armazenar
um bit 0, fazemos D=0 e D’=1. 
b) Estando definidos os valores de D e D’, o sinal SELECT é ativado. Isso
ativará os dois transistores ligados em D e D’, transferindo seus valores para a
célula. Quando o sinal SELECT é desativado, o bit permanecerá
armazenado na célula. Note que o SELECT é definido a partir do endereço
da posição de memória a ser acessada. 
A operação de leitura consiste em ligar o sinal SELECT, fazendo com que os
valores de D e D’ passem a indicar o bit armazenado na célula. Esses sinais
passam pelos amplificadores de saída, e de acordo com seus valores,
fornecerão uma cópia do bit que estava armazenado na célula. 
SRAM assíncrona x SRAM síncrona
Assim como ocorre com a DRAM, a SRAM pode ser dividida em inúmeras
categorias: Assyncrhonous SRAM, Syncrhonous SRAM, Dual Port SRAM,
SyncBurst SRAM, ZBL SRAM, NoBL SRAM, Pipelined Burst SRAM e
vários outros nomes. É verdade que existem excesso de nomes, pois um
mesmo tipo de SRAM pode receber nomes diferentes de fabricantes
11-14 Hardware Total
diferentes. Todas essas tecnologias são baseadas na célula de memória
apresentada na figura 18, e nas suas variações (6 transitores ou 4 transistores
+ 2 resistores). A diferença está nos circuitos que são ligados ao redor da
matriz de células. 
Vamos apresentar então essas diversas tecnologias, começando pelas
memórias SRAM Assíncronas e Síncronas (Assynchronous SRAM e
Syncrhonous SRAM). A SRAM Assíncrona é o tipo mais simples,
apresentado na seção anterior “Funcionamento da SRAM”. Conforme
mostramos na figura 13, ao redor da matriz de células temos apenas os
seletores de endereços, registradores e buffers de entrada e amplificadores e
buffers de saída. Ao contrário do que ocorre com a SRAM síncrona, que é
sempre comandada a partir de um clock, a SRAM assíncrona não utiliza
clock. Seus controles são assíncronos, e consistem em sinais como Chip
Enable (CE), Output Enable (OE) e Write Enable (WE). 
Essas memórias apresentavam tempos de acesso como 35, 25, 20 e 15 ns, e
eram muito utilizadas para formar a cache de processadores 386, 486 e 586,
bem como em aplicações que não exigiam clocks muito elevados. A maioria
desses processadores operavam com clocks externos de até 33 MHz, e alguns
deles chegando a 40 MHz (Ex: Am486DX2-80). Quanto mais elevado é o
clock, menor deveria ser o tempo de acesso das SRAM assíncronas. Um
486DX2-80 opera com clock externo de 40 MHz, o que corresponde a um
ciclo de 25 ns. O tempo de acesso da SRAM deveria então ser bem
reduzido, entre 10 e 15 ns. Quando a SRAM não era suficientemente veloz,
era preciso utilizar wait states, programados pelo CMOS Setup. Isto tornava
o acesso à SRAM mais lento. 
Com a introdução do Pentium e do barramento externo de 66 MHz, um
novo tipo de memória ainda mais veloz tornou-se necessário, pois o cliclo já
chegava a 15 ns. Note que já existiam memórias SRAM mais velozes, porém
de baixa capacidade e extremamente caras. Apenas para ilustrar, saiba que
desde o início dos anos 90 existiam memórias SRAM com tempos de acesso
inferiores a 0,1 ns. Essas memórias eram caríssimas e destinam-se ao uso em
supercomputadores e aplicações de alta velocidade. A indústria de memórias
não é movida apenas pelo mercado de PCs, mas o peso deste mercado é
bastante significativo. As memórias SRAM para PCs, apesar de não terem
dificuldades tecnológicas na sua produção, precisam ter alta capacidade e
baixo custo. O que tem ocorrido em termos de tecnologia de memórias para
PCs é o desenvolvimento de novos tipos de memória com baixo custo, alta
capacidade e alta velocidade, na medida certa para o uso em PCs. 
Capítulo 11 - Memórias 11-15
Para permitir o funcionamento em freqüências a partir de 50 MHz, tornou-se
vantajoso o uso de memórias sínronas. Essas memórias têm como principal
característica o fato de serem comandadas a partir de um clock. Atualmente
tanto a SRAM como a DRAM usadas nos PCs são síncronas. 
*** 75%
***
Figura
11.19
Transferência de
dados em uma SRAM
síncrona.
A figura 19 mostra o funcionamento de uma SRAM síncrona. Além do sinal
CE (sinal que habilita o chip) e ADSC (sinal que dá início ao ciclo), temos
um sinal de clock (CLK) que sincroniza todos os eventos. No instante T1, o
endereço desejado (A1) deve ser entregue aos pinos do chip, e os sinais CE e
ADSC devem ser ativados. O barramento de dados, indicado como Q,
encontra-se neste instante em repouso, ou seja, em tristate. No instante T2 é
completado mais um ciclo, mas os dados ainda não estão disponíveis.
Apenas no instante T3, no final do segundo ciclo, o dado armazenado no
endereço A1 estará presente no barramento de dados. A partir daí a
memória entregará automaticamente, nos instantes T4, T5 e T6, os dados
armazenados nas posições de memória seguintes (A1+1, A1+2 e A1+3). Por
exemplo, ao fornecer o endereço 1000, a memória entregará os dados
armazenados nos endereços 1000, 1001, 1002 e 1003. Como a entrega do
primeiro dado demorou 2 ciclos e os dados seguintesforam entregues em
intervalos de 1 ciclo, dizemos que esta memória está operando no modo 2-1-
1-1. Dizemos ainda que a memória tem latência de 2 ciclos. Memórias mais
lentas podem necessitar operar com latência de 3 ciclos (3-1-1-1, por
exemplo). A latência é necessária para que os circuitos internos da memória
tenham tempo de encontrar a célula desejada. Uma vez encontrada, as
células seguintes são localizadas de forma mais rápida, já que ocupam
posições consecutivas. 
Enquanto a SRAM assíncrona tem sua velocidade especificada pelo seu
tempo de acesso, ou seja, o tempo que demora para encontrar o dado
endereçado (medido em nano-segundos), a SRAM síncrona tem sua
velocidade indicada pelo seu clock, ou seja, o máximo clock com o qual
pode operar (medido em MHz). Eventualmente a SRAM síncrona pode ter
11-16 Hardware Total
também sua velocidade indicada pelo tempo de ciclo, que é igual ao inverso
do clock. Veja por exemplo os tempos de ciclo e clocks das versões do chip
MT58L64L18PT, fabricado pela Micron Technology. Este chip tem 64k
células de 18 bits, e é oferecido para clocks de 100, 133 e 166 MHz.
Modelo Ciclo Clock
MT58L64L18PT-10 10 ns 100 MHz
MT58L64L18PT-75 7,5 ns 133 MHz
MT58L64L18PT-6 6 ns 166 MHz
As SRAM síncronas dividem-se por sua vez em diversas outras categorias,
dependendo do seu modo de operação. 
Modo Pipelined
As memórias SRAM síncronas já apresentavam um melhoramento de
desempenho em comparação com as assíncronas, para freqüências de 50, 60
e 66 MHz. Entretanto logo surgiu a necessidade de operar com freqüências
ainda mais elevadas, não permitidas pela tecnologia tradicional com a qual
eram construídas as primeiras SRAM síncronas. Para premitir freqüências de
operação mais elevadas, os fabricantes de memória introdiziram o modo
pipelined. 
A idéia é bastante simples e resulta em clocks maiores, mesmo utilizando
células de memória idênticas. Estamos falando da época em que foi
ultrapassada a barreira dos 66 MHz, mas levando em conta memórias mais
atuais, a mesma tecnologia que permite construir memórias atuais “não
pipelined” de 133 MHz permite também produzir memórias pipelined de
166 MHz. 
Figura 11.20
Diferença entre a SRAM Pipelined e a
non-Pipelined.
Capítulo 11 - Memórias 11-17
A diferença entre os dois tipos está mostrado na figura 20. Um chip de
memória SRAM síncrona comum (chamado de non-pipelined ou flow-
throug) tem em seus buffers de saída o valor idêntico ao apresentado pelos
sense amplifiers, que por sua vez reproduzem o valor lido da matriz de
células de memória. Os valores presentes no barramento de dados do chip
precisam permanecer estáveis durante um tempo mínimo, para que o
processador e o chipset possam fazer a sua leitura. A necessidade deste
tempo mínimo impede que a matriz de células dê início ao próximo ciclo de
leitura, ou seja, ela precisa “esperar um pouco”. Nas memórias pipelined, os
dados recebidos da matriz de células passam pelos amplificadores e são
armazenados em registradores de saída (output registers). Ao contrário do
buffer, que se limita a passar adiante os valores lidos nas suas entradas, o
registrador é capaz de memorizar suas entradas e manter esses valores
memorizados nas suas saídas, mesmo que as entradas posteriormente
mudem de valor. Graças aos registradores, a saída do barramento de dados
da memória fica estabilizada, e a matriz de células pode ser novamente
usada para o próximo acesso. Como graças ao registrador a matriz de células
não precisa mais “esperar” a leitura do dado pelo processador, temos um
maior aproveitamento, resultando em maior velocidade. 
Apesar de possibilitar operar com clocks mais elevados, uma SRAM
pipelined tem a desvantagem de exigir um ciclo a mais para o carregamento
do registrador. Enquanto os modelos não pipelined operam no modo 2-1-1-1
(5 períodos), os modelos pipelined operam com 3-1-1-1 (6 períodos), porém
com freqüêncais mais elevadas. Por exemplo, em 66 MHz (ciclo de 15 ns),
uma transferência de uma SRAM não pipelined demoraria 75 ns (5 x 16 ns),
mas a 100 MHz (ciclos de 10 ns) uma transferência de uma pipelined SRAM
demoraria 60 ns (6 x 10 ns). A mesma SRAM não conseguiria operar no
modo 2-1-1-1 a 100 MHz, e exigiria usar o modo 3-2-2-2, bem mais lento.
Portanto para clocks acima de 66 MHz, a SRAM do tipo pipelined começa a
levar vantagem sobre memórias SRAM não pipelined de tecnologia
semelhante (com células obtidas pelo mesmo processo de fabricação, e em
conseqüência, de mesmo preço). 
Ao adotarem a operação em modo pipeline, as memórias SRAM síncronas
passaram a ser chamadas de Pipelined Burst SRAM. As memórias SRAM
síncronas porém sem o recurso pipeline passram a ser chamadas apenas de
Burst SRAM, Syncrhonous Burst SRAM, SyncBurst SRAM ou Flow-Through
SyncBurst SRAM. Note que apesar desses nomes, as memórias SRAM
Pipelined também são síncronas e também operam em modo burst, portanto
podem ser ainda chamadas de Pipelined Syncrhonous Burst SRAM. 
11-18 Hardware Total
Os dois tipos de Syncronous Burst SRAM foram criados especificamente
para operar como caches secundárias em placas de CPU equipadas com
processadores Pentium e superiores. Até hoje encontramos essas memórias
formando a cache L2 nas placas com Socket 7 (Ex: K6-2). Também foram
utilizadas na formação da cache L2 discreta dos processadores com
encapsulamento em cartucho, como Pentium II, Pentium III Katmai e nas
primeiras versões do AMD Athlon. 
DDR e QDR
Memórias DDR SDRAM foram criadas visando a operação em clocks ainda
mais delevados. Elas utilizam a técnica DDR (Double Data Rate), na qual
duas matrizes de células independentes são acessadas por dois clocks (na
figura 21 os clocks são K e K#). O sinal K# tem o valor oposto de K, ou
sejam tratam-se de clocks complementares, requisito comum em todos os
dispositivos que operam com DDR. 
Na figura 21, o endereço é fornecido à memória e é ativado o sinal LD#. O
sinal R/W# deve permanecer com o valor 1, indicando operação de leitura.
Na segunda descida do clock K, o primeiro dado estrá disponível. Os três
dados seguintes serão fornecidos a cada meio período de K, portanto são
duas transferências por cada ciclo, característica do modo double data rate. 
Figura 11.21
Ciclo de leitura em uma DDR SRAM.
A tabela a seguir mostra como exemplo, as versões do chip DDR SRAM
MT57V256H36PF, produzido pela Micron Technology. São oferecidas
versões de 166, 200, 250 e 300 MHz. Note que esses clocks, ao utilizarem
double data rate, resultarão em equivalentes a 333, 400, 500 e 600 MHz. 
Modelo Ciclo Clock
Capítulo 11 - Memórias 11-19
MT57V256H36PF-3.3 3.3 ns 300 MHz
MT57V256H36PF-4 4 ns 250 MHz
MT57V256H36PF-5 5 ns 200 MHz
MT57V256H36PF-6 6 ns 166 MHz
Memórias QDR (Quad Data Rate), ao contrário do que possa parecer, não
são como DDRs que fazem 4 transferências por ciclo. São na verdade
memórias com dois barramentos de dados independentes, um de entrada e
um de saída. Cada um deles opera com double data rate. Quando ambos
estão operando ao mesmo tempo, temos como resultado uma taxa de dados
quadruplicada em relação ao clock. 
Memórias DDR SRAM e QDR SRAM são indicadas para aplicações de alta
velocidade, como cache, memória de vídeo em placas de alto desempenho,
redes e interfaces de alta velocidade. 
ZBT ou NoBL SRAM
Essas são memórias SRAM síncronas, capazes de operar no modo burst,
oferecidas em versões pipelined e flow-throug, mas com uma sutil diferença:
Podem fazer a transição imediata entre um ciclo de leitura e um ciclo de
escrita, sem a necessidade de pausas (latency ou turnaround). Todos os
demais tipos de SRAM síncronatêm a limitação de não poderem passar
imediatamente de uma leitura para escrita, ou vice-versa. A razão disso é que
o sistema de endereçamento interno da memória tem diferenças, nas leituras
e nas escritas. É preciso então tempo para a memória desativar internamente
o endereçamento da leitura e ativar o endereçamento da escrita, e vice-versa.
Memórais ZBT (Zero Bus Turnaround) ou NoBL (No Bus Latency) ou
Network SRAM – o nome varia conforme o fabricante – têm seus circuitos
internos de endereçamento organizado de forma que o mesmo
endereçamento usado para a leitura é usado também para a escrita, portanto
não tem necessidade esperar pela desabilitação de um circuito e a
habilitação de outro quando são feitas inversões entre operações de leitura e
gravação. 
Dual Port SRAM
Este é um tipo especial de memória que pode ser acessada simultaneamente
por dois barramentos independentes. A figura 22 mostra o diagrama de uma
memória Dual Port. 
11-20 Hardware Total
*** 75%
***
Figura
11.22
Diagrama de uma
Dual Port SRAM.
Como vemos, existem dois conjuntos de sinais independentes, com
barramento de dados, endereços e controle. Até os circuitos internos são
simétricos e independentes. Ambos acessam uma única matriz de células de
memória. 
Note que existem muitos casos em que são usadas memórias comuns e existe
mais de um circuito que faz acessos. A memória DRAM de uma placa de
CPU, por exemplo, é acessada pelo processador, pelo chipset, pela placa de
vídeo AGP, pelas interfaces de disco rígido e por outras interfaces que
operam com DMA (acesso direto à memória). A diferença é que nesses
casos, apenas um dispositivo pode acessar a memória a cada instante, e
todos os demais têm que aguardar. Já no caso das memórais Dual Port, os
dois dispositivos podem realizar acesso simultâneos. A matriz de células é
dividida em bancos independentes, de modo que é mínima a possibilidade
de colisão, ou seja, quando ambos os circuitos querem acessar o mesmo
banco. Apenas quando ocorre colisão, um circuito terá que esperar pelo
acesso. 
Existem inúmeras aplicações para memórias Dual Port. Um exemplo é a
cache externa em placas com múltiplos processadores (não estamos falando
de PCs, mas de máquinas mais sofisticadas). Placas de vídeo de alto
desempenho também podem fazer uso deste tipo de memória. Ao mesmo
tempo em que a memória de vídeo está sendo lida e transferida para o
monitor, o chip gráfico pode fazer seus acessos a esta mesma memória.
Placas digitalizadoras de vídeo de alto desempenho também podem usar o
mesmo recurso. 
Capítulo 11 - Memórias 11-21
1T-SRAM
Como vimos, as células de memória SRAM são formadas por 6 transistores,
ou então por 4 transitores e 2 resistores. Estamos nos referindo às memórias
que usam a tecnologia MOS, já que existem vários outros tipos. Um exemplo
são as memórais bipolares, que são ainda mais velozes, porém menos densas,
mais caras e com maior dissipação de calor. Existe ainda um tipo especial de
memória SRAM chamada de 1T-SRAM. Cada célula utiliza apenas um
transitor e um capacitor. Este capacitor é o responsável pelo armazenamento
de uma carga que representa um bit, e é na verdade construído com o
mesmo material usado na formação dos transitores. Esta tecnologia foi criada
pela MoSys, que por sua vez a licenciou para vários outros fabricantes, como
UMC, NEC e Sony. Note que este tipo de célula de memória não é na
verdade estático. Trata-se de uma memória dinâmica, porém é acrescida de
circuitos internos (refresh transparente, por exemplo), que a tornam do ponto
de vista externo, similar a uma SRAM. 
Memórias DRAM que fazem refresh interno existem há vários anos, e são
chamadas de RAM pseudo-estáticas. 
Tempo de acesso
O tempo de acesso é um parâmetro muito importante, relacionado com a
velocidade das memórias. Aplica-se especificamente às memórias SRAM
assíncronas, e indica o tempo necessário para que os dados estejam
disponíveis, medido a partir do instante que o chip de memória está
habilitado, através da entrada CE (chip enable). Na figura 23, o tempo de
acesso é T1. Note que os dados estarão disponíveis desde que o sinal OE
(output enable) seja selecionado previamente. Se não for selecionado, os
dados não estarão disponíveis.
Figura 11.23
Tempo de acesso de uma SRAM
assíncrona.
No chip de memória da figura 24 encontramos a inscrição IS61C256AH-20N.
O sufixo –20 indica que seu tempo de acesso é de 20 ns. Este chip faz parte
da cache externa de uma placa de CPU 486. 
11-22 Hardware Total
*** 35% ***
Figura 11.24
Chip de SRAM com tempo de acesso de 20 ns. 
Não faz sentido falar em “tempo de acesso” no caso das memórias síncronas.
Ao invés disso especificamos o seu clock (ou o período de duração do ciclo)
e a latência. Nos chips encontramos sufixos que indicam o clock ou o
período, dependendo do fabricante. O período é igual a 1 segundo dividido
pelo clock. Por exemplo, um clock de 100 MHz corresponde a um período
de 10 ns. 
Ciclo Clock Ciclo Clock
20 ns 50 MHz 7 ns 143 MHz
15 ns 66 MHz 6 ns 166 MHz
13,3 ns 75 MHz 5 ns 200 MHz
12 ns 83 MHz 4 ns 250 MHz
10 ns 100 MHz 3,3 ns 300 MHz
8 ns 125 MHz 3 ns 333 MHz
7,5 ns 133 MHz 2,5 ns 400 MHz
Quando dizemos que um chip de memória tem ciclo de 10 ns, não quer
dizer que demorará 10 ns até entregar um dado. Dependendo do tipo de
memoria, irá demorar 2 ou 3 ciclos par entregar o primeiro dado (isto é o
que chamamos de latência), o que neste caso corresponde a 20 ou 30 ns. A
partir do fornecimento do primeiro dado, os três dados seguintes são
entregues a cada 10 ns, desde que a memória esteja operando em modo
burst. 
Wait states
O wait state é um recurso que permite o uso de memórias lentas com
processdores rápidos. Para isso basta “avisar” o processador para que espere
um pouco mais antes de ler os valores do seu barramento de dados (nas
operações de leitura), ou que espere um pouco mais antes de finalizar uma
escrita, para dar tempo às memórias para receberem o dado. O
funcionamento é exemplificado na figura 25. 
Capítulo 11 - Memórias 11-23
*** 75%
***
Figura
11.25
Acessos à memória.
a) sem wait state
b) com 1 wait state
Ao fazerem acessos aleatórios na memória externa, o processador espera
normalmente 2 ciclos. O ciclo tem duração de acordo com o clock externo
do processador. Por exemplo, com clock externo de 100 MHz, o ciclo tem
duração de 10 ns. Uma operação normal de leitura, com duração de 2 ciclos,
é mostrada na parte A da figura 25. Durante o primeiro ciclo (T1) o
processador deve entregar o endereço ao barramento, juntamente com
outros sinais de controle. No final do ciclo seguinte, o processador testa o
sinal da sua entrada de controle RDY (Ready). Se estiver em nível 0, significa
que o ciclo pode ser finalizado, e que o dado estará disponível no seu
barramento de dados.
Quando as memórias não são suficientemente velozes, o seu circuito de
controle (faz parte do chipset) pode retardar o envio do sinal RDY. Se no
final do ciclo T2 o sinal RDY não estiver ativado (ou seja, com valor 0), o
processador automaticamente esperará mais um ciclo. Esta “prorrogação”,
representada pelo segundo T2 na parte B da figura 25, é o que chamamos de
1 wait state. O processador pode aguardar mais 2, 3 ou quantos wait states
adicionais forem necessários, até que o circuito controlador da memória ative
o sinal RDY com valor 0, o que finaliza o ciclo. No nosso exemplo, usar um
wait state aumentou o tempo total da leitura para 30 ns. Com 2 wait states
teríamos 40 ns, com 3 wait states teríamos 50 ns, e assim por diante. Cabe ao
BIOS da placa de CPU programar o chipsetcom o número recomendado de
wait states suficiente para as memórias em uso. 
Note que os processadores possuem dois pinos de Ready. O primeiro é o
RDY que acabamos de apresentar, e se aplica a leituras e escritas aleatórias,
ou seja, que não usam o modo burst. O segundo controle é o BRDY, que é
usado quando o processador faz leituras e escritas no modo burst. Nesta
modalidade são feitas transferências em grupos de 4. Uma transferência
normal em modo burst obedece à temporização 2-1-1-1, mas através do sinal
BRDY, o processador pode operar em outros modos, como 3-1-1-1, 3-2-2-2, 4-
2-2-2, e assim por diante. Portanto os wait states podem ser usados tanto em
operações assíncronas quanto síncronas. 
11-24 Hardware Total
RAM dinâmica, modos FPM e EDO
Memórias estáticas têm células relativamente grandes, em geral com 6
transistores. Como resultado, essas memórias são pouco densas, ou seja, não
permitem a obtenção das elevadas capacidades de memória exigidas pelos
PCs modernos, a menos que utilizemos um número muito grande de chips.
Além de exigir muito espaço, o uso de memórias estáticas resulta em custo
bem elevado. 
As células de DRAM
As memórias dinâmicas (DRAM) foram criadas visando obter redução de
espaço, aumento de capacidade e redução de custo. Uma célula de DRAM é
formada por um transistor e um capacitor, como vemos na figura 26. O
tamanho do capacitor é pequeno em comparação com o do transitor,
portanto o espaço ocupado é o de praticamente um transistor por célula. 
*** 35% ***
Figura 11.26
Uma célula de DRAM.
O funcionamento desta célula é extremamente simples. Para gravar um bit,
basta colocá-lo em D e ativar a linha SELECT. Isto fará com que a tensão em
D seja transferida para o capacitor. A seguir a linha SELECT é desligada, e o
capacitor irá menter através de sua carga, o valor do bit armazenado. 
A operação de leitura é um pouco mais complexa. Inicialmente a linha D é
carregada com a tensão de alimentação, através da sua capacitância. Quando
a linha SELECT é ligada, a carga armazenada no capacitor da célula e a
carga armazenada na linha D são distribuídas, resultando em tensões iguais.
Se o capacitor estava originalmente descarregado (bit 0), ocorrerá uma
pequena redução na tensão existente em D. Se o capacitor já estava
carregado (bit 1), não ocorrerá esta redução. O novo valor de D será
portanto igual ao original (o que indica bit 1) ou sensivelmente menor que o
original (o que indica bit 0). Os chamados sense amplifiers percebem esta
Capítulo 11 - Memórias 11-25
diferença e identificam se o bit armazenado era 1 ou 0. Note que esta leitura
é destrutiva, pois altera o valor armazenado no capacitor. Terminada a
leitura, o bit identificado é novamente gravado na célula, o que restaura seu
valor original. 
Além do funcionamento desta célula ser relativamente complicado, existe
mais um agravante: o capacitor se descarrega depois de alguns milésimos de
segundo. Para que os bits não sejam perdidos é preciso que toda a memória
seja periodicamente lida, restaurando as cargas dos capacitores. É o que
chamamos de refresh. 
A matriz de células de memória DRAM é um grande grupo de linhas
SELECT que se cruzam com linhas D. Para endereçar uma célula de
memória é preciso selecionar a linha SELECT e a linha D, em função do
endereço desejado. 
A figura 27 mostra de forma simplificada, a construção de uma célula de
DRAM. A célula real é mais complexa, tridimensional. As várias linhas D e
SELECT são dispostas de forma perperndicular, formando uma matriz. 
Figura 11.27
Construção de uma célula de DRAM.
É comum chamar a matriz de células de DRAM de “matriz capacitiva”. Não
deixa de estar correto, pois os capacitores são os responsáveis pelo
armazenamento dos bits. Note entretanto que o transitor ocupa um espaço
bem maior, como vemos na figura 27. O capacitor é mantido com o menor
tamanho possível para que o processo de fabricação resulte em chips com
mais células. Capacitores maiores só teriam como vantagem, a permanência
da carga por um período maior, mas ainda assim na faixa de milésimos de
segundo, não resolvendo o problema da necessidade de refresh. 
11-26 Hardware Total
Estrutura interna de uma DRAM
A figura 13 mostra de forma simplificada, a estrutura interna de uma DRAM.
A matriz de células é dividida em linhas e colunas. Para acessar a matriz é
preciso que o chip de memória receba primeiro o número (ou endereço) da
linha desejada, e depois o endereço da coluna. Os dados lidos são enviados
para o barramento de dados. O mesmo ocorre na operação de escrita, sendo
que os dados são recebidos do barramento de dados e colocados na célula
selecionada. Dois sinais RAS e CAS servem para indicar quando estão
presentes os endereços da linha e coluna. Alguns chips necessitam receber
um sinal externo MA, para comandar o demultiplexador de endereços,
enviando os números da linha e coluna para os circuitos apropriados. A
maioria dos chips de DRAM mais modernos não utiliza este controle,
fazendo sua geração internamente em função dos sinais RAS e CAS. 
*** 75% ***
Figura
11.28
Diagrama simplificado
de uma DRAM.
A figura 29 mostra o diagrama completo de um chip de memória DRAM,
com capacidade de 16M x 4. Possui portanto 16 M células de memória, e
cada uma delas possui 4 bits. Esses bits são representados no diagrama como
DQ0, DQ1, DQ2 e DQ3. Para endereçar essas 16M células, o chip tem 12
bits de endereço. Como o endereço é fornecido em duas etapas (linha e
coluna), são ao todo 24 bits, exatamente o necessário para endereçar 224 =
16M células. 
Capítulo 11 - Memórias 11-27
*** 75%
***
Figura
11.29
Diagrama completo
de um chip DRAM.
Observe ainda na figura 29 que como o chip do exemplo tem “células de 4
bits”, existem ao todo 4 bancos de células independentes. Cada um deles
recebe 4096 linhas (sinais SELECT das figuras 26 e 27) e 4096 colunas, que
são os sinais de dados (são os sinais D nas figuras 26 e 27). Vemos ainda o
chip do exemplo tem um módulo chamado REFRESH CONTROLLER.
Este módulo é capaz de realizar internamente as operações de refresh (é o
que chamamos de self refresh), aliviando o trabalho dos circuitos externos.
Tradicionalmente, o refresh tem sido feito pelo controlador de memória
DRAM (que faz parte do chipset). Em aplicações nas quais o sistema tem
que ficar em estado de espera, o chipset pode ser desligado e o próprio chip
de memória se encarrega de realizar internamente o refresh. Quando o chip
de SRAM não faz self refresh, cabe ao controlador de memória realizar esta
operação, que consiste em fazer leituras periódicas nas linhas da matriz. 
Acessando uma DRAM
Como vimos, o mecanismo de acesso às células da DRAM é bem mais
complexo que o da SRAM. Suas células de memória são organizadas em
uma matriz, formada por linhas e colunas. Por exemplo, uma DRAM com 1
Mbit é formada por uma matriz quadrada, com 1024 linhas e 1024 colunas
(podem existir formatos diferentes, como 2048x512). Para acessar uma dessas
células de memória, é preciso primeiro fornecer à DRAM o endereço da
linha, seguindo de um sinal chamado RAS (Row Address Strobe). Serve
para indicar que o endereço da linha está pronto. A seguir deve ser
fornecido à memória o endereço da coluna, seguido do sinal CAS (Column
Address Strobe). Passado mais um pequeno tempo, o dado daquela célula
de memória cujos números da linha e coluna foram fornecidos, estará
presente e pronto para ser lido pelo processador ou pelo chipset. 
11-28 Hardware Total
Note que os processadores não “enxergam” a memória desta forma, não
estão preparados para gerar sinais RAS e CAS, nem para dividir o endereço
em linha e coluna.O processador simplesmente indica o endereço de
memória que deseja acessar, e a seguir envia um comando de leitura ou
escrita. Cabe ao chipset converter os sinais de acesso à memória vindos do
processador, em sinais compatíveis para a DRAM. Esta é a função de uma
parte do chipset chamada Controlador de DRAM. 
Figura 11.30
O Chipset é encarregado de controlar o
acesso à DRAM.
O trabalho completo do chipset (controlador de DRAM) para obter um
dado proveniente da DRAM é resumido na seguinte seqüência:
1) Chipset recebe do processador, o endereço da célula a ser acessada
2) Chipset desmembra o endereço em duas partes: linha e coluna
3) Chipset envia à DRAM, o endereço da linha
4) Chipset envia à DRAM o sinal RAS
5) Chipset envia à DRAM o endereço da coluna
6) Chipset envia à DRAM o sinal CAS
7) A DRAM acessa o dado armazenado nesta célula e o entrega ao chipset
8) Chipset obtém o dado e o encaminha para o processador
Cada uma dessas micro-etapas leva um pequeno tempo para ser executada.
O tempo total necessário para que o processador receba o dado solicitado da
memória é igual à soma desses tempos. É preciso que você entenda bem este
mecanismo para que possa compreender as memórias mais novas.
Capítulo 11 - Memórias 11-29
Figura 11.31
Ciclo de leitura em uma DRAM.
A figura 31 mostra o ciclo de leitura em uma DRAM. Começa com a
ativação do sinal RAS, que é colocado em nível 0. Neste momento o
barramento de endereços da memória (ADDR) deve estar preparado com o
número da linha (ROW) a ser acessada. Após um tempo especificado, o
barramento de endereços deve receber o número da coluna, e a seguir deve
ser ativado o sinal CAS. Logo a seguir, o barramento de dados (DQ), que
antes estava em tristate, entregará o dado lido da célula selecionada. Note
que para isso é preciso que o sinal OE (Output Enable) seja ativado em zero.
Chamamos tempo de acesso da memória DRAM, o tempo transcorrido
entre a ativação do RAS e a chegada do dado lido. Uma memória com
especificação –50, por exemplo, demorará 50 ns para entregar o dado lido a
partir do instante da ativação do RAS. 
Utilizando a estutura básica da matriz de células de DRAM, vários outros
tipos de memória têm sido desenvolvidos nos últimos anos. As principais
forma a FPM DRAM, EDO DRAM, SDRAM, DDR SDRAM, RDRAM.
Todas elas são mais avançadas que a DRAM original, resultando em maior
velocidade, mas ainda assim todas utilizam matrizes de células idênticas. A
diferença está nos circuitos internos que dão acesso a essas células. Por
exemplo, usando 4 matrizes de células operando de forma simultânea, temos
a SDRAM. Este tipo de memória opera de forma síncrona, e demora um
tempo inicial para acessar o primeiro dado, e a seguir transfer os 3 dados
seguintes (lidos das outras três matrizes de células) em rápida velocidade.
Chips construídos como duas SDRAM operando em parlelo deram origem à
DDR SDRAM, que são duas vezes mais rápidas. Usando 16 ou 32 matrizes
funcionando em conjutno, temos a RDRAM (Rambus RAM). 
FPM DRAM
Essas memórias foram usadas nos PCs antigos, em praticamente todos os PCs
386, 486 e 586 e nos primeiros PCs Pentium. No passado eram encontradas
no encapsulamento DIP, depois foram produzidas em módulos SIPP e
SIMM/30. É correto dizer que todos os módulos SIPP e SIMM eram
formados por chips de FPM DRAM. Chips de FPM DRAM também foram
11-30 Hardware Total
utilizados em módulos SIMM/72, mas não é correto dizer que todo módulo
SIMM/72 é do tipo FPM DRAM. Era comum encontrar módulos SIMM/72
tanto com FPM DRAM como com EDO DRAM. 
Memórias FPM DRAM são capazes de operar no chamado Fast Page Mode.
A idéia é muito simples. A maioria dos acessos à memória são feitos em
células consecutivas. Considere por exemplo um grupo de 4 acessos às
posições consectivas mostradas na figura 32.
Figura 11.32
Quatro células de memória consecutivas.
Os endereços dessas 4 células consecutivas são:
Linha 277, coluna 320
Linha 277, coluna 321
Linha 277, coluna 322
Linha 277, coluna 323
Lembre-se que cada linha é acompanhada de um sinal RAS, e cada coluna é
acompanhada de um sinal CAS. Ora, quando tomamos posições
consecutivas de memória, as linhas são as mesmas e o que varia é apenas a
coluna. Seria então uma perda de tempo repetir no segundo, terceiro e
quarto acessos, o número da linha. Basta indicar o número da coluna. O
chamado Fast Page Mode tem como principal característica, o acesso a várias
colunas de uma mesma linha, bastando que sejam fornecidos os endereços
das colunas, seguidos do sinal CAS, sem a necessidade de repetir o número
da linha. 
O acesso à primeira posição de memória de um grupo é feito pelo mesmo
mecanismo já explicado para as DRAMs convencionais:
1) Chipset recebe do processador, o endereço da célula a ser acessada
Capítulo 11 - Memórias 11-31
2) Chipset desmembra o endereço em duas partes: linha e coluna
3) Chipset envia à DRAM, o endereço da linha
4) Chipset envia à DRAM o sinal RAS
5) Chipset envia à DRAM o endereço da coluna
6) Chipset envia à DRAM o sinal CAS
7) A DRAM acessa o dado armazenado nesta célula e o entrega ao chipset
8) Chipset obtém o dado e o encaminha para o processador
Os acessos seguintes são mais rápidos porque exigem menos etapas: não é
preciso fornecer o sinal RAS nem o endereço da linha:
5) Chipset envia à DRAM o endereço da próxima coluna
6) Chipset envia à DRAM o sinal CAS
7) A DRAM acessa o dado armazenado nesta célula e o entrega ao chipset
8) Chipset obtém o dado e o encaminha para o processador
Digamos que o tempo total para realizar as 8 etapas (1 a 8) do acesso à
primeira célula seja 100 ns, e que para cada um dos três acessos seguintes, o
tempo das etapas (5 a 8) seja de 40 ns. Se a DRAM não fosse do tipo FPM,
todos os acessos seriam iguais ao primeiro, e o tempo total seria de 100 + 100
+ 100 + 100, ou seja, 400 ns. Com a FPM DRAM, o tempo total seria 100 +
40 + 40 + 40, ou seja, 220 ns, bem mais rápido. 
Poderíamos a princípio pensar que o chipset “cronometra” 100 ns para o
primeiro acesso, e depois 40 ns para cada um dos acessos seguintes. É mais
ou menos isso o que ocorre, entretanto o chipset não conta o tempo em ns.
Sua base de tempo é o ciclo de clock, a sua menor unidade de tempo. A
duração de um ciclo de clock depende do clock utilizado pelo chipset, que
em geral é o mesmo clock externo do processador:
Clock Período Clock Período
33 MHz 30 ns 95 MHz 10,5 ns
40 MHz 25 ns 100 MHz 10 ns
50 MHz 20 ns 133 MHz 7,5 ns
60 MHz 16,6 ns 166 MHz 6 ns
66 MHz 15 ns 200 MHz 5 ns
75 MHz 13,3 ns 266 MHz 3,75 ns
83 MHz 12 ns 400 MHz 2,5 ns
De um modo geral, para obter o valor do período, dado em ns, basta dividir
1000 pelo número de MHz. Considere por exemplo um Pentium-200,
operando com clock externo de 66 MHz, ou seja, ciclos de 15 ns. Todas as
suas operações são feitas em múltiplos de 15 ns, ou seja, 15 ns é a sua
11-32 Hardware Total
unidade básica de tempo. Aquela FPM DRAM que precisa operar com a
temporização 100/40/40/40, será controlada pelo chipset com a temporização
7-3-3-3. São 7x15 = 105 ns para o primeiro acesso e 3x15 = 45 ns para cada
um dos acessos seguintes. 
Os processadores modernos, bem como seus chipsets, são orientados para
fazer transferências em blocos de 4 acessos consecutivos. Entretanto as
memórias FPM podem realizar várias transferências consecutivas em Fast
Page Mode, desde que todas elas dentro da mesma linha. Em um caso
extremo, considerando uma matriz de 1024x1024, podemos dar início à
leitura da primeira coluna de uma linha, e ler todas as 1023 células
consecutivas desta mesma linha. Processadores e chipsets fazem por padrão
leituras de 4 células consecutivas, mas outros dispositivospodem tirar melhor
proveito lendo um número maior de células. Por exemplo, uma placa de
vídeo ao usar memórias FPM, pode fazer corresponder cada linha do vídeo a
uma linha da DRAM, e usar transferências em Fast Page Mode para enviar
os pixels consecutivos para o monitor. 
Figura 11.33
Lentura em Fast Page Mode.
A figura 33 mostra o diagrama de tempo de um ciclo em Fast Page Mode,
com 3 leituras consecutivas. Como dissemos, o número de transferências
consecutivas pode variar, desde que dentro da mesma linha. O tempo de
acesso da memória, acrescido de um intervalo inicial para a prepareção do
endereço da linha, é o tempo total que é preciso esperar até que o primeiro
dado seja acessado. A partir daí, mantendo a linha RAS ativada, alteramos o
endereço da coluna e aplicamos pulsos em CAS. O intervalo entre a
chegada de dois dados consecutivos será TPC, que é um tempo bem menor
que o tempo de acesso da memória. Quando o RAS é desativado, termina a
transferência em Fast Page Mode. 
Figura 11.34
Informações do manual de um chip de
FPM DRAM. 
Capítulo 11 - Memórias 11-33
Nos manuais dos chips de memória existem todas as informações sobre a sua
temporização. A figura 34 mostra a tabela extraída do manual de um certo
chip de FPM DRAM. Este chip é oferecido em duas versões: -5 e –6, o que
corresponde a tempos de acesso (tRAC) de 50 e 60 ns, respectivamente.
Encontramos outras informações, como o tRC, que é o tempo total dos ciclos
de leitura. Note que o tempo total do ciclo é bem maior que o tempo de
acesso, pois leva em conta todas as operações envolvidas, não só o acesso.
Outra informação importante é o tPC, o tempo de ciclo em Fast Page Mode.
Note que esses dois chips têm esses tempo iguais a 30 e 35 ns,
respectivamente, que são valores consideravelmente menores que o tempo
de acesso. Podemos ainda encontrar outras informações, como o tCAC, que
é o tempo de acesso medido a partir da ativação do CAS. 
Em uma placa de CPU cabe ao chipset receber os dados da DRAM para
enviá-los ao processador ou à cache. O chipset deve ser ajustado de acordo
com a velocidade da DRAM em uso. Este ajuste é feito através do CMOS
Setup, e normalmente aparece com nomes como “DRAM Read Cycle” e
“DRAM Write Cycle”. Digamos que a placa de CPU em uso opere com
clock externo de 66 MHz, o que corresponde a ciclos de 15 ns. Digamos que
estejamos usando memórias FPM DRAM com as seguintes características:
tRAC = 70 ns
tPC = 40 ns
Como o período de clock é de 15 ns, são necessários 5 ciclos (75 ns) para
englobar o tempo de acesso, e 3 ciclos (45 ns) para englobar tPC. Ciclos
adicionais são necessários no início do primeiro acesso, pois como vimos, o
tempo de acesso é contado a partir da ativação do RAS, mas o ciclo de
leitura começa antes disso. Se reservarmos 2 ciclos iniciais para o início da
transferência, o primeiro acesso seria feito após 7 ciclos. A memória estaria
operando portanto com a temporização 7-3-3-3. Com memórias um pouco
mais rápidas, de 60 ou 50 ns, pode ser possível utilizar menos ciclos, e operar
com temporizações como 6-3-3-3, 7-2-2-2 ou 6-2-2-2. Tudo depende de serem
reduzidos os valores do tempo de acesso (tRAC) e do ciclo de FPM (tPC).
Nas placas de CPU que usavam este tipo de memória, o CMOS Setup usa
uma configuração padrão com valores grandes, para que a placa funcione
com memórias de várias velocidades. Ao utilizar memorias mais rápidas,
tempos menores podem ser usados, mas o ajuste é feito manualmente e
experimentalmente no CMOS Setup, em um processo de “envenenamento”. 
11-34 Hardware Total
Quanto ao encapsulamento, a maioria das memórias FPM DRAM, assim
como a EDO DRAM e outras mais modernas, apresentam em geral os
formatos SOJ e TSOP, mostrados na figura 35 e já apresentados no início
deste capítulo. O número de pinos dependerá da capacidade, do número de
bits de dados e dos bits de endereços. Observe na figura 35 que os pinos
representam o barramento de dados (DQ), de endereços (A0, A1, etc.) e os
sinais de controle, como RAS, CAS, OE, WE, etc. Existem ainda os pinos de
alimentação (VCC) e terra (VSS ou GND). 
Figura 11.35
Chips de memória com encapsulamentos
SOJ e TSOP.
EDO DRAM
Bastante comum a partir de 1995, a EDO (Extended Data Out) DRAM é
obtida a partir de um melhoramento de engenharia nas memórias FPM
DRAM. A idéia é bastante simples. Após completar um ciclo de leitura e
fornecer os dados lidos, pode dar início a um novo ciclo de leitura, mas
mantendo em suas saídas, os dados da leitura anterior. O resultado é uma
economia de tempo, o que equivale a um aumento de velocidade. É
suportada por todas as placas de CPU Pentium, a partir das que apresentam
o chipset i430FX. As primeiras placas de CPU Pentium II também as
suportavam, porém essas memórias caíram em desuso, sendo logo
substituídas pela SDRAM tão logo o Pentium II se tornou comum (1998). 
Módulos de memória EDO DRAM utilizaram muito o encapsulamento
SIMM/72 (assim como a FPM DRAM). Também é possível encontrar
módulos de memória EDO DRAM usando o encapsulamento DIMM/168,
porém são mais raras nesta versão. 
Memórias EDO também são capazes de operar em Page Mode, ou seja,
fazer transferências de vários dados consecutivos, com a ativação apenas do
sinal CAS. Também são chamadas de Hyper Page Mode, enquanto as
Capítulo 11 - Memórias 11-35
memórias FPM comuns passaram a ser chamadas também de SPM
(Standard Page Mode).
Figura 11.36
Funcionamento da EDO DRAM.
O primeiro acesso a uma memória EDO é feito no mesmo tempo que em
uma memória FPM, mas a sua vantagem aparece nos acessos seguintes,
como ocorre nas transferências em Page Mode. A figura 36 mostra a
diferença entre uma memória FPM e uma EDO, ambas operando em Page
Mode. Nas memórais FPM, a descida do CAS ativa o dado, enquanto a sua
subida o desativa. Portanto, antes de fornecer a próxima coluna, é preciso
dar tempo para que o processador ou o chipset recebam os dados, para só
então levantar o CAS, para finalmente ativá-lo em seguida para a próxima
leitura. Nas memórias EDO, a subida do CAS não desativa o dado. Desta
forma pode ser dado início ao fornecimento da próxima coluna, ao mesmo
tempo em que o dado está presente no seu barramento. Somente quando o
CAS é novamente ativado é que o dado é desativado. De certa forma, a
EDO DRAM faz dois trabalhos em paralelo. Mantém os dados nas suas
saídas enquanto recebe o número da próxima coluna para acesso. Pelo fato
de estender o tempo durante o qual os dados ficam ativos, essas memórias
recebem o nome de Extended Data Out (EDO). 
O ganho de velocidade não é excepcional, mas muito bem vindo. Se uma
FPM DRAM opera com a temporização 7-3-3-3, a EDO DRAM com células
idênticas opera com 7-2-2-2. Melhor ainda, como o último dado lido em um
ciclo fica disponível por mais tempo, o próximo ciclo também pode começar
mais cedo, portanto o período de 7 ciclos para o primeiro acesso pode ser
reduzido para 6 ciclos, resultando na temporização 6-2-2-2. Neste caso é um
ganho de desempenho de 33% em relação à FPM DRAM. Nas placas de
CPU este ajuste de temporização é feito através do CMOS Setup. 
11-36 Hardware Total
Memórias EDO DRAM foram muito utilizadas entre 1995 e 1997, em placas
de CPU Pentium com barramento externo de 50, 60 e 66 MHz. Alguns
modelos mais velozes podiam operar com barramentos de 75 e 83 MHz em
placas para processadores Cyrix 6x86, mas muitas vezes o funcionamento era
instável. Somente com a chegada da nova geração de memórias (SDRAM)
tornou-se confiável o funcionamento com clock superiores a 66 MHz. 
Módulos de memória EDO DRAM em geral apresentavam o
encapsulamento SIMM de 72 vias. Entretanto, SIMM/72 não é sinônimo de
EDO DRAM, já que podemos encontrartambém módulos SIMM/72 com
memórais FPM, e alguns módulos DIMM/168 com memórais EDO DRAM,
apesar de raros. 
As placas de CPU que suportavam memórias EDO DRAM em geral
suportavam também memórias FPM, o que possibilitou uma transição
tranqüila entre as duas tecnologias. Também era possível usar nessas placas,
ambos os tipos de memória ao mesmo tempo, desde que em bancos
diferentes. 
Refresh
Como vimos, as células de DRAM, sejam elas do tipo normal, FPM, EDO,
SDRAM, DDR, RDRAM ou que usem qualquer outra tecnologia,
necessitam de refresh, ou seja, precisam ser lidas periodicamente, em
intervalos de alguns milisegundos, para que não percam seus dados. Ler
todas as células de um chip de DRAM seria uma operação bastante
demorada, mas felizmente essas leituras não precisam ser feitas célula por
célula, e sim, linha por linha. É fácil entender porque quando analisamos o
mecanismo de acesso às células da matriz. 
Figura 11.37
Acesso a uma célula de memória.
Capítulo 11 - Memórias 11-37
Na figura 37 vemos o acesso à célula localizada na linha 4, coluna 6. Uma
leitura nesta célula servirá para fazer o seu refresh, mas para tornar a
operação de refresh mais eficiente, os circuitos que controlam a matriz fazem
a leitura simultânea de todas as células da linha selecionada. Todas são lidas
ao mesmo tempo, ou seja, todas as células da linha passam por um refresh,
mas os circuitos que controlam as colunas enviarão para o barramento de
dados, apenas o valor da célula desejada. 
Fazer o refresh em toda a matriz de células consiste em acessar
seqüencialmente cada uma das suas linhas. Por isso nos ciclos de refresh não
é necessário especificar a coluna, apenas a linha. O ciclo de refresh também
é chamado de RAS Only.
Figura 11.38
Ciclo de refresh pelo método RAS Only.
Chips de memória DRAM mais modernos oferecem outros métodos de
refresh, mas o tradicional RAS Only sempre é suportado. Outro método
oferecido nas memórias modernas é o CBR (CAS-Before-RAS). Consiste em
aplicar simplesmente um sinal de CAS, seguido por um sinal RAS, ou seja,
no ordem inversa da utilizada nas operações normais. Esta condição fará
com que a memória utilize o endereço de linha presente em um contator
interno (Refresh Counter). O cliclo de refresh pelo método CBR, além de ser
mais curto, não necesita que seja fornecido um endereço para a memória, já
que ela irá gerar este endereço de linha internamente. Note que nem todos
os chips de DRAM oferecem este recurso. 
Outro recurso ainda melhor oferecido em modelos mais novos de FPM
DRAM e EDO DRAM, e presente em todas as memórias mais novas
(SDRAM, DDR e RDRAM) é o Self Refresh. Essas memórias possuem um
contador interno para endereçar seqüencialmente todas as suas linhas, bem
como circuitos que realizam o refresh dessas linhas. Desta forma o
controlador de memória DRAM (faz parte do chipset) não precisa enviar à
memória, sinais de refresh. 
11-38 Hardware Total
Nos manuais dos chips de DRAM encontramos sempre a indicação do
período de refresh (tREF, refresh period). Seu valor é dado em milésimos de
segundo. É o tempo máximo que as células podem suportar de forma
segura, sem perder os dados. A cada período de refresh, todas as linhas da
memória precisam ser lidas para que dados não sejam perdidos. 
Memórias DRAM antigas apresentavam períodos de refresh de 2 ou 4 ms.
As primeiras versões do IBM PC, produzidas no início dos anos 80, usavam
memórias DRAM modelo 4116. Essas memórias tinham a organização de
16k x 1, portanto 8 delas formavam um banco de 16 kB, e 4 bancos
formavam 64 kB. Elas tinham um período de refresh de 2 ms, ou seja, a cada
2 milésimos de segundo, todas as suas linhas tinham que ser lidas. A matriz
de 16k células tem 128 linhas e 128 colunas (128 x 128 = 16.384). Portanto a
cada 2 milésimos de segundo tinham que ser feitas 128 operações de refresh.
O intervalo entre duas operações de refresh consecutivas deveria ser
portanto de:
2 ms  128 = 15,625 s
Como o IBM PC não tinha um controlador de refresh específico, era
utilizado o canal 0 do controlador de DMA (8237A DMA Controller) para
realizar leituras repetitivas, fazendo assim o refresh. Pulsos de clock a cada
15,625 s eram gerados pelo chip 8253 (programmable interval timer), que
também era responsável pela geração dos sons que iam para o PC Speaker. 
O IBM PC XT já utilizava chips de DRAM mais modernos, como o 4164
(64kx1). Esses chips tinham matrizes de 256x256, duas vezes maiores, mas
seu período de refresh também era maior, com 4 ms. Desta forma os pulsos
de refresh a cada 15,625 s eram suficientes para o correto funcionamento
das memórias. 
Nas placas de CPU atuais, o refresh não é mais feito por DMA, apesar dos
seus chipsets conterem circuitos compatíveis com o controlador 8237A,
porém é utilizado para outras funções. Sendo assim, o canal 0 de DMA está
livre para outras aplicações nos PCs modernos. 
Memórias FPM antigas necessitavam de refresh externo. Modelos mais novos
de FPM DRAM e EDO DRAM eram oferecidos em versões com e sem self
refresh. As memórias mais novas operam exclusivamente com self refresh. 
Capítulo 11 - Memórias 11-39
Um outro tipo de memória que também faz refresh interno é a chamada
pseudo static RAM. Essas memórias, além de fazerem o refresh, possuem
também circuitos internos que desmembram o endereço em linha e coluna,
e geram os sinais RAS e CAS. Externamente esses chips possuem sinais de
dados, endereços, chip enable (CE), write enable (WE) e output enable
(OE). Para todos os efeitos, comportam-se como RAMs estáticas. Note que as
atuais memórias DRAM fazem refresh interno mas seus sinais de controle
são típicos de memórias dinâmicas, dados, endereços divididos em linha e
coluna, RAS, CAS, write enable e output enable. 
Porque a DRAM é mais lenta que a SRAM
É um erro clássico afirmar que o refresh é o culpado pela lentidão da
DRAM. É uma grande injustiça, pois o tempo perdido com o refresh não
chega a comprometer o desempenho do computador. No IBM PC e no PC
XT, as leituras da memória duravam cerca de 0,8 s, e ocorriam a cada
15,625 s. Essas leituras ocupavam portanto apenas 5% do tempo total da
memória, uma degradação bem pequena. Em um Pentium-200, com
barramento externo de 66 MHz, uma leitura de refresh demora cerca de 0,1
s, o que ocupa menos de 1% do tempo total, uma queda de desempenho
imperceptível. Também menor que 1% é a porção total do tempo que uma
DRAM moderna ocupa com o refresh. É portanto um erro técnico, e
também uma injustiça, afirmar que a DRAM é lenta porque necessita de
refresh. 
A lentidão da DRAM é resultado de sua natureza capacitiva. Nas operações
de escrita, os capacitores precisam ser carregados ou descarregados para
armazenar os bits. As leituras, como já apresentamos, provocam alteração na
carga do capacitor selecionado, que precisa ser posteriormente carregado. As
cargas e descargas não são instantâneas, mas têm uma duração que depende
do valor do capacitor e da resistência elétrica percorrida pela corrente. As
RAMs estáticas podem operar de forma muito mais rápida porque não
precisam carregar e descarregar capacitores. Basta ligar os transistores e os
dados são recebidos ou armazenados de forma muito mais rápida que nas
DRAMs. 
Comparando SRAM e DRAM
Já citamos algumas diferenças fundamentais entre a SRAM e a DRAM.
Vamos resumir essas características na tabela abaixo. Como mostra a tabela,
a DRAM leva vantagem em todos os pontos, exceto na velocidade. Esta
desvantagem é compensada com o uso de memória cache. 
11-40 Hardware Total
SRAM DRAM
* Rápida Lenta
Baixa densidade * Altadensidade
Alto custo * Baixo custo
Alto consumo * Baixo consumo
A lentidão da DRAM, como já explicamos, é resultado da sua natureza
capacitiva. A alta densidade da DRAM é devida ao fato das suas células
serem mais simples. Note que apesar dos diagramas mostrarem a matriz de
células em pequeno tamanho em comparação com outros módulos, esta
matriz ocupa a maior parte da área do chip. Uma célula de DRAM tem
apenas um transistor e um pequeno capacitor. Uma célula de SRAM tem 6
transitores, ou então 4 transistores e 2 resistores. Portanto as células de
DRAM são de 3 a 4 vezes menores que as células de SRAM, ou seja, a
DRAM é mais densa, permite a construção de maior número de células por
unidade de área. A mesma tecnologia que permite produzir chips de SRAM
com 1 MB pode permitir produzir chips de DRAM com 4 MB. 
Também como conseqüência das células da DRAM serem mais simples, seu
custo é menor. Lembre-se que os chips são produzidos em pastilhas
circulares de silício chamadas waffers). Quanto mais chips puderem ser
produzidos em cada waffer, menor será o custo de cada chip. Além disso o
processo de produção da DRAM é mais simples, pois utiliza menos camadas
que a SRAM. 
Finalmente, o consumo de cada célula de DRAM é bem menor que das
células de SRAM. A maior parte da energia elétrica de um chip é consumida
quando seus transitores mudam de estado, entre condução e não condução.
Nas células de DRAM temos apenas um transitor trabalhando, contra 6 na
célula de SRAM. Além disso, mesmo quando uma célula está em repouso
(sem ser acessada), dois dos 6 transistores da SRAM estão operando mesmo
que consumindo baixa corrente. Na DRAM, as células em repouso ficam
com seus transitores cortados, sem consumir energia. Apanas para
exemplificar a diferença de consumo entre a SRAM e a DRAM, considere
os chips MT58L64L32P (SRAM, 256 kB) e MT48LC16M8 (DRAM, 4 MB),
ambos produzidos pela Micron Tecnhology utilizando tecnologias de
fabricação semelhantes, ambos operando a 100 MHz. Compare o consumo
dos dois chips:
Chip Capacidade Tensão Corrente Consumo Consumo por MB
SRAM
MT58L64L32P
256 kB 3,3 V 225 mA 0,75 W 3 W/MB
Capítulo 11 - Memórias 11-41
DRAM MT48L-
C16M8
4 MB 3,3 V 140 mA 0,5 W 0,125 W/MB
A mesma tecnologia que resultou em uma SRAM que consome 3 watts por
cada MB de memória, permite produzir memórias DRAM com consumo de
0,125 watts por MB, ou seja, um consumo 24 vezes menor!
Reconhecendo a diferença entre FPM DRAM e EDO DRAM
Nem sempre é fácil reconhecer à primeira vista, a difernça entre memórias
FPM e EDO. Se o módulo for do tipo SIMM/30 ou SIPP/30, é obviamente
do tipo FPM, pois quando as memórias EDO chegaram ao mercado, os
módulos de 30 vias já haviam caído em desuso. A confusão ocorre
basicamente com módulos SIMM/72 produzidos entre 1994 e 1997, comuns
em placas de CPU 386, 486 e nas primeiras placas de CPU Pentium. Placas
de CPU 386 não funcionavam com memórias EDO, e placas de CPU 486
também normalmente não, mas existem alguns modelos que suportam tanto
FPM quanto EDO. Já as primeiras placas de CPU Pentium com soquetes
SIMM/72 suportavam tanto memórias FPM quanto EDO. O BIOS dessas
placas era capaz de detectar o tipo de memória instalado em cada banco e
configura o chipset para acessos de acordo com o tipo detectado.
Figura 11.39
Alguns módulos apresentavam uma
etiqueta “EDO”.
Alguns módulos de EDO DRAM apresentam uma etiqueta indicadora
“EDO”, como na figura 39. Este é um indício para diferenciar memórias
EDO das memórias FPM, mas não nos deixa livres de falsificações, já que
qualquer revendedor inescrupuloso pode produzir etiquetas falsas.
Felizmente esta falsificação não é comum, já que as memórias EDO e FPM
têm preços similares. 
11-42 Hardware Total
Em alguns casos é possível diferenciar entre FPM e EDO de acordo com a
numeração dos chips. Muitos fabricantes usarm para os chips FPM DRAM,
números terminandos com 0, enquanto os chips EDO têm seus números
terminados com 5. A tabela abaixo mostra os principais fabricantes e os
sufixos utilizados para cada tipo de DRAM:
Fabricante Inscrições nos
Chips
Sigla Exemplos Diferença entre FPM e
EDO
OKI MSM
MD
MSM51V17400B
MSM51V17405D
FPM termina com 0
EDO termina com 5 ou 8
Samsung KM KM48V8100C
KM48V8104B
FPM termina com 0 ou 3
EDO termina com 4 ou 5
Texas
Instruments
TMS TMS417400A
TMS416409A
FPM termina com 0
EDO termina com 9
Fujitsu MB MB8118160A
MB8118165A
FPM termina com 0
EDO termina com 5
Mitsubishi M5M M5M417800D
M5M4V17405C
FPM termina com 0
EDO termina com 5
LG
Electronics
 
GM GM71V65160C
GM71V65163C
FPM termina com 0
EDO termina com 3
Hyundai HY HY51V17800B
HY51V17804B
FPM termina com 0
EDO termina com 4
Siemens HYB HYB3166160AJ
HYB3164165AJ
FPM termina com 0
EDO termina com 5
IBM IBM IBM01164DOT3E
IBM0116165BJ3E
FPM termina com 0 
EDO termina com 5
Micron MT MT4C1M16C3DJ
MT4LC1M16E5DJ
Normalmente o 4º dígito
antes do “-“ é “E” nas
memórias EDO. 
Motorola MCM MCM218160B
MCM218165B
FPM termina com 0
EDO termina com 5
NEC NEC 4265160G5
4264165G5
FPM termina com 0
EDO termina com 5
NPNX NN NN51V17800BJ
NN51V17805BJ
FPM termina com 0
EDO termina com 5
Panasonic MN MN41V18160ASJ
MN41V18165ASJ
FPM termina com 0
EDO termina com 5
Toshiba TC TC5118180BJ
TC5165165AJ
FPM termina com 0
EDO termina com 5
Capítulo 11 - Memórias 11-43
Hitachi HM HM5165160A
HM5164165A
FPM termina com 0
EDO termina com 5
Note que os números citados, como 0 e 5 na maioria dos casos, são em geral
seguidos de letras. Essas letras são códigos dos fabricantes, e podem indicar
o encapsulamento, voltagem, faixa de temperatura e outras características. 
Velocidade de memórias FPM e EDO
As memórias FPM e EDO, muito usadas nos PCs produzidos entre 1994 e
1997, apresentam em geral o encapsulamento SIMM/72, e são utilizadas aos
pares. O tempo de acesso dessas memórias é medido em ns (nano-
segundos). Em geral os tempos de acesso são de 50, 60, 70 e 80 ns, sendo
que as de 60 e 70 ns são as mais comuns. Os fabricantes utilizam ao lado do
número de cada chip, um indicador de tempo de acesso. Por exemplo, 60 ns
pode ser indicado como –60, 06, -06 ou similar. A figura 39 mostra chips de
um módulo SIMM/72, com tempo de acesso de 60 ns. 
As marcações usadas pelos vários fabricantes, para memórias FPM e EDO,
são indicadas na tabela abaixo.
Tempo de acesso Marcações
80 ns -80, -8, -08, -X8
70 ns -70, -7, -07, -X7
60 ns -60, -6, -06, -X6
50 ns -50, -5, -05, -X5
Por exemplo, os chips MT4C4007JDJ-6, mostrados na figura 39, são de 60 ns.
Note que as marcações que indicamos dizem respeito a memórias FPM e
EDO, encontradas em módulos SIMM/72 (e também em SIMM/30).
Memórias SDRAM possuem marcações parecidas, mas os significados são
outros. Por exemplo, uma SDRAM com marcação –8 não é de 80 ns, e sim,
de 8 ns. 
Se um módulo de memória é SIMM/30, então certamente é FPM. Se é um
módulo SIMM/72, então certamente é FPM ou EDO. Se o módulo é do tipo
DIMM/168, então provavelmente trata-se de uma SDRAM, mas existem
alguns raros casos de memórias FPM e EDO que usam o encapsulamento
DIMM/168.
EDO com encapsulamento DIMM/168
São bastante raras, mas existem algumas memórias EDO DRAM com
encapsulamento DIMM/168, apesar deste encapsulamento ser mais usado
11-44 Hardware Total
pela SDRAM. É fácil esclarecer a dúvida, basta procurar pelo chip de
EEPROM SPD (apresentado mais adiante neste capítulo). Módulos de
SDRAM possuem este chip, enquanto os raros módulos EDO DRAM com
encapsulamento DIMM/168 não o possuem. 
DRAMs síncronas
Com placas de CPU operando com barramentos mais velozes que 66 MHz,
tornou-se necessário

Outros materiais

Outros materiais