<índice> <1> <2> <3> <4> <5> <6> <7> <8> <9> <pág.principal>

 

Memória RAM, DRAM ou Memória Principal

É onde o computador armazena as instruções necessárias ao funcionamento do sistema operacional e programas. O processador precisa de espaço para arrumar as instruções contidas no programa de modo que ele, processador, possa executa-las rapidamente. Todo programa que você executa está na memória RAM, seja ele um software antivírus, um protetor de tela, impressão, etc.

Pentes de memória SRAM e DRAM, respectivamente

Em termos de hardware, são pequenos pentes que são encaixados nos slots de memória das placas motherboard. Atualmente, temos pentes (os mais comuns) de 4 MB, 8 MB, 16 MB e 32 MB. A capacidade total de memória depende do pente e do número de slots na motherboard, geralmente 4 slots de 72 vias (Veja Colocação das Memórias na Motherboard para mais
detalhes). É na memória que ficam todas as informações utilizadas durante as operações de escrita ou leitura nas unidades de armazenamento e os programas, cache de software para hard-disk, drives virtuais e vírus.

Pentes de Memória
Diferenciam no formato físico (DIP, SIPP, SIMM, etc.), número de vias, tempo de acesso (70, 60, 50ns, etc., em ordem crescente de desempenho) e tipo de tecnologia (FPM, EDO, etc.) e são melhor definidas como DRAM (Dynamic Random Access Memory). Precisam continuamente de um sinal da CPU (refresh) para manterem seus dados armazenados.

As memórias FPM (Fast Page Mode) são de tecnologia mais antiga, apesar de serem encontradas nos 486 e nos primeiros Pentium. Possuem tempo de acesso de 80, 70 e 60ns. Suportam velocidades de barramento de até 66 MHz.

As memórias EDO (Extended Data Output) tem leitura mais rápida que as memórias do tipo FPM (Fast Page Mode), com cerca de 20% de vantagem. Esta tecnologia é usada em pentes de 72 vias, possui tempo de acesso de 70, 60 e 50ns, e suporta velocidades de barramento de até 66 MHz. Algumas memórias de melhor qualidade, utilizando a tecnologia EDO, suportam velocidades de barramento de 75 ou até mesmo 83 MHz. Como as novas CPUs requerem altas velocidades de barramento (a exemplo do processador Cyrix 6x86 P200+ que trabalha com um barramento de sistema de 75 MHz e o Pentium II 333 MHz que utiliza barramento de 100 MHz), a EDO RAM já está sendo substituída no mercado.

A SDRAM (Synchronous Dynamic RAM) já é considerada padrão com a chegada dos novos processadores. São módulos de memória DIMM (168 vias) que não necessitam do ciclo de "refresh". Trabalha com tempo de acesso de 10 ou 8ns, suporta uma frequência de barramento de 100 (memórias com tempo de acesso de 10ns) ou 125 MHz (quando possui tempo de acesso de 8ns) e é cerca de 15% mais veloz que a EDO RAM. As memórias com tecnologia SDRAM já são suportadas pelo chipset Intel Triton VX e os novos VIA 580VP, 590VP (para Pentium e 6x86) e 680VP (para Pentium PRO). Espera-se porém, que os PCs futuros trabalhem com barramento de 200 MHz ou mais rápido. Por isso, novas tecnologias de memória
estão em desenvolvimento, tais como RDRAM e SLDRAM.

Conceito de Paridade

Para mantermos a integridade dos dados na memória, evitando que defeitos nesta prejudiquem o funcionamento do sistema, o chipset gera um bit de paridade para cada byte de dado escrito na memória (baseado no número de bits de valor 1).

A lógica de teste da paridade gera o bit de paridade conforme o byte armazenado no chip de memória fazendo a comparação deste bit posteriormente quando for lido qualquer byte da memória. Caso seja detectado um erro, o sistema travará gerando uma NMI (interrupção sem possibilidade de uso do equipamento). Veja tabela de exemplos:
 
 
Byte Bit de paridade
00001111  0
00000111 1
01010101 0
10101100 0
11010101 1
00110100 1
Na maioria das BIOS temos uma opção que habilita/desabilita esse teste de paridade. Sempre devemos deixá-lo habilitado!

Memória Cache secundária (level 2 cache)

Praticamente todas as placas possuem um cache memory. Nos 486 e Pentium este cache pode variar entre 128 KB e 2 MB (geralmente 256KB ou 512KB).

O cache L2 é um conjunto de chips de acesso rápido instalados na placa mãe, ou seja, externo ao processador. A memória principal do computador denominada DRAM é bem mais lenta que a memória cache secundária SRAM (Static Random Access Memory), que tem tempos de acesso de até 12 ns, mas em compensação é bem mais cara.

Assim o cache reduz sensivelmente a velocidade de acesso médio a memória principal armazenando as mais requisitadas instruções e dados. A efetividade do cache está relacionada com o seu tamanho, largura do byte, algorítimo de substituição de dados, esquema de mapeamento e do tipo do programa em execução.

Não é atoa que a tecnologia de cache está presente tanto em winchesters, processadores e em muitas outras placas. Nos processadores, encontramos a memória cache primária (level 1 cache), com 8 KB de dados nos 486, 16 KB nos Pentium e 32 KB nos chips com tecnologia MMX.

A construção das memórias cache segue princípios de construção totalmente diferentes das memórias comuns. Utilizam elementos lógicos compostos basicamente de transistores chamados flip-flops.

Resumindo tudo, o cache trabalha na velocidade do processador enquanto a memória DRAM depende da inclusão de wait states (estados de espera do processador) para disponibilizar o dado devido a sua lentidão.

A memória SRAM pode se apresentar de três formas: soldada na própria placa-mãe, na forma de pente para ser encaixado em um slot especial (possibilitando a expansão dessa memória com a troca do módulo), ou apresentando essas duas configurações simultaneamente.

Chip de memória
A tecnologia Pipeline Burst Cache usada em alguns modelos de cache tenta minimizar os estados de espera para que a memória possa ser acessada o mais rápido possível pelo microprocessador. São usadas as técnicas denominadas burst mode, que automaticamente alcança o próximo conteúdo da memória antes de ser requisitado (é praticamente a mesma técnica usada em caches de disco), e pipelining, para que um valor de memória seja acessado no cache ao mesmo tempo em que outro valor de memória é acessado na memória DRAM.


DISPOSITIVOS DE MEMÓRIA

INTRODUÇÃO

Um sistema digital é capaz de armazenar facilmente uma grande quantidade de informação por períodos de tempo curtos ou longos, sendo esta a sua principal vantagem sobre os sistemas analógicos, pois tal característica torna os sistemas digitais bastante versáteis e adaptáveis a um sem-número de situações.

Este capítulo é dedicado ao estudo dos tipos mais comuns de dispositivos e sistemas de memória empregados no armazenamento de informações em computadores digitais.

Já estamos familiarizados com o flip-flop. Sabemos também que grupos de flip-flops denominados registradores são capazes de armazenar informação estruturada (dados ou instruções), e que tais informações podem ser recebidas/transferidas de/para outros dispositivos de armazenamento.
Os registradores são elementos de memória de alta velocidade, empregados no armazenamento de informação durante o processo de execução de instruções pela unidade de controle da máquina, havendo uma constante movimentação de informações entre os registradores e os demais dispositivos componentes do sistema.

Em geral, um sistema de computador usa memória principal (interna) de alta velocidade e dispositivos de memória secundária (externa ou de massa) lentos, mas com alta capacidade de armazenamento.
 

TERMINOLOGIA

? CÉLULA DE MEMÓRIA - ( Flip-flop, armazenam um único bit)
 
? PALAVRA DE MEMÓRIA - (Um grupo de células, normalmente 4 a 64 bits )
 
? CAPACIDADE - 1K = 1024 , 1M = 1.048.576 - ( 2K x 8 = 2048 x 8 = 16384 bits )
 
? ENDEREÇO - Identifica a posição de uma palavra na memória.
 
? OPERAÇÃO DE LEITURA - Também chamada de �busca� na memória.
 
? OPERAÇÃO DE ESCRITA - Também chamada de �armazenamento�.
 
? TEMPO DE ACESSO - Quantidade de tempo necessária à busca ou armazenamento.
 
? MEMÓRIA VOLÁTIL - Necessitam de energia elétrica para reter a informação armazenada.
 
? MEMÓRIA DE ACESSO RANDÔMICO (RAM) - O tempo de acesso é constante para qualquer endereço da memória.
 
? MEMÓRIA DE ACESSO SEQUENCIAL (SAM) - O tempo de acesso não é constante, mas depende do endereço. Ex: fitas magnéticas.
 
? MEMÓRIA DE LEITURA/ESCRITA (RWM) - Qualquer memória que possa ser lida ou escrita com igual facilidade.
 
? MEMÓRIA DE LEITURA (ROM) - Uma classe de memórias a semicondutor projetadas para aplicações onde a taxa de operações de leitura é infinitamente mais alta do que as de escrita. São não-voláteis.
 
? DISPOSITIVOS DE MEMÓRIA ESTÁTICA - Enquanto houver energia elétrica aplicada, não há necessidade de rescrever a informação.
 
? DISPOSITIVOS DE MEMÓRIA DINÂMICA - Necessitam de recarga ( refresh )
 
? MEMÓRIA PRINCIPAL (INTERNA) - É a mais rápida do sistema. ( Instruções e dados ).
 
? MEMÓRIA DE MASSA - É mais lenta que a principal. Grande capacidade de armazenamento
 

OPERAÇÃO DA MEMÓRIA

Apesar das diferenças existentes na implementação de cada um dos tipos de  memória, um certo conjunto de princípios básicos de operação permanece o mesmo para todos os sistemas de memória.

Cada sistema requer um conjunto de tipos diferentes de entrada e saída para realizar as seguintes funções:

1. Selecionar o endereço que está sendo acessado para uma operação de leitura ou escrita.
2. Selecionar a operação a ser realizada, leitura ou escrita.
3. Fornecer os dados de entrada para a operação de escrita.
4. Manter estáveis as informações de saída da memória resultantes de uma operação de leitura, durante um tempo determinado.
5. Habilitar ( ou desabilitar ) a memória, de forma a fazê-la ( ou não ) responder ao endereço na entrada e ao comando de leitura/escrita.
 

MEMÓRIAS DE LEITURA - ROM

 As ROMs são usadas para guardar instruções e dados que  não vão mudar durante o processo de operação do sistema.

 Uma vez que as ROMs são não-voláteis, os dados nela armazenados não se perdem quando o equipamento é desligado.

 Uma das principais aplicações da ROM é no armazenamento de alguns programas do sistema operacional dos microcomputadores, e também para armazenar informações em equipamentos controlados por microprocessadores, como caixas registradoras eletrônicas, sistemas de segurança industrial e diversos aparelhos eletrodomésticos.

 Para alguns tipos de ROM, os dados que estão armazenados foram gravados durante o processo de fabricação da memória. Para outros tipos, os dados são gravados eletricamente.

O processo de gravação de dados é chamado de programação, ou queima, da ROM. Algumas podem apagar e regravar seus dados quantas vezes forem necessárias.
 

TIPOS DE MEMÓRIAS DE LEITURA - ROM

ROM PROGRAMADA POR MÁSCARA - MROM

 Este tipo tem suas posições de memória escritas ( programadas ) pelo fabricante de acordo com as especificações do cliente. Um negativo fotográfico, denominado máscara, é usado para especificar as conexões elétricas do chip. Uma máscara diferente é requerida para cada conjunto de informações a ser armazenado na ROM. Em razão de tais máscaras serem caras, este tipo de ROM só será viável sob ponto de vista econômico, se for produzido um número muito grande de ROMs com a mesma máscara.
 A maior desvantagem destas ROMs é o fato de elas não poderem ser apagadas e reprogramadas, quando uma mudança qualquer no projeto do dispositivo exigir modificações nos dados armazenados. Neste caso, a ROM com os dados antigos não pode ser reaproveitada, devendo ser substituída por uma outra com os novos dados gravados.
 

ROMs PROGRAMÁVEIS - PROMs

 Para aplicações mais modestas em termos de quantidades de chips a ser produzidos, a indústria desenvolveu as PROMs a fusível, programáveis pelo usuário, isto é, elas não são programadas durante o processo de fabricação, e sim pelo usuário, de acordo com suas necessidades. Porém, uma vez programada, a PROM torna-se  uma MROM, ou seja, não pode ser apagada e novamente programada.
 O processo de programação de uma PROM com a conseqüente verificação dos dados gravados pode ser muito tedioso e demorado, se realizado manualmente. Existe no mercado um sem-número de dispositivos programadores de PROMs que permitem a entrada da programação por teclado, para então realizar a queima dos fusíveis e verificação dos dados gravados, sem a intervenção do usuário.
 

ROM  PROGRAMÁVEL  APAGÁVEL - EPROM

 Uma EPROM pode ser programada pelo usuário, podendo, além disso, ser apagada e reprogramada quantas vezes forem necessárias. Uma vez programada, a EPROM comporta-se como memória não-volátil que reterá os dados nela armazenados indefinidamente.
 Uma vez que uma célula da EPROM tenha sido programada, é possível apagá-la expondo à radiação ultravioleta, aplicada através da janela do chip. Tal processo de apagamento requer uma exposição de 15 a 30 minutos aos raios ultravioletas. Infelizmente não há como apagar células selecionadas. A luz ultravioleta apaga todas as células ao mesmo tempo, de forma que, após a exposição, a EPROM estará novamente armazenando apenas 1s. Uma vez apagada, a EPROM pode ser reprogramada.

 As EPROMs estão disponíveis numa faixa bem ampla de capacidade e tempos de acesso. Dispositivos com capacidade de 128K x 8 com tempo de 45 ns são muito comuns.
 

ROM  PROGRAMÁVEL  APAGÁVEL ELETRICAMENTE - EEPROM

 A EEPROM foi desenvolvida no início dos anos 80, e apresentada ao mercado como um aperfeiçoamento da idéia da PROM.
A maior vantagem da EEPROM sobre a EPROM é a possibilidade de apagamento e reprogramação de palavras individuais, em vez da memória toda. Além disso, uma EEPROM pode ser totalmente apagada em 10 ms, no próprio circuito, contra mais ou menos 30 minutos para uma EPROM que deve ser retirada do circuito para submeter-se à ação da luz ultravioleta.
Uma EEPROM também pode ser programada bem mais rapidamente do que uma EPROM, requerendo um pulso de programação de 10 ms para cada palavra, em contraste com o de 50 ms necessário a se programar uma palavra da EPROM.
 

APLICAÇÕES DAS ROMs

FIRMWARE ( MICROPROGRAMA )
 Programas que não estão sujeitos a mudança.
 Sistemas Operacionais, Interpretadores de linguagem, etc.

MEMÓRIA DE PARTIDA FRIA ( BOOTSTRAP )
 Programa que leva o processador a inicializar o sistema, fazendo com que a parte residente do sistema operacional seja transferida da memória de massa para a memória interna.

TABELAS DE DADOS
 Exemplos: funções trigonométricas e de conversão de código.

CONVERSORES DE DADOS
 Recebem um dado expresso em determinado tipo de código, e produzem uma saída expressa em outro tipo de código.
 Por exemplo, quando o microprocessador está dando saída a dados em binário puro, e precisamos converter tais dados para BCD de forma a excitar corretamente um display de 7 segmentos.

GERADORES DE CARACTERES
 Armazena os códigos do padrão de pontos de cada caracter em um endereço que corresponde ao código ASCII do caracter em questão.
 Por exemplo: Endereço 1000001 ( 41H ) corresponde a letra �A�.
 

MEMÓRIAS DE ACESSO RANDÔMICO - RAM

 O termo RAM é usado para designar uma memória de acesso randômico, ou seja, uma memória com igual facilidade de acesso a todos os endereços, no qual o tempo de acesso a qualquer um deles é constante.

 As RAMs são usadas em computadores para armazenamento temporário de programas e dados.

 A grande desvantagem reside no fato delas serem voláteis. algumas RAMs CMOS têm a capacidade de operar em standby, consumindo muito pouca energia quando não estão sendo acessadas. além disso, algumas podem ser alimentadas por baterias, mantendo seus dados armazenados na ocorrência de eventuais interrupções de energia.
 

RAM ESTÁTICA (SRAM)

 São aquelas que só podem manter a informação armazenada enquanto a alimentação estiver aplicada ao chip.
As células de memória das RAMs estáticas são formadas por flip-flops que estarão em certo estado ( 1 ou 0 ), por tempo indeterminado.

Estão disponíveis nas tecnologias bipolar e mos.
  bipolar: maior velocidade, maior área de integração.
  MOS : maior capacidade de armazenamento e menor consumo de potência.
  alto custo.
  difícil integração ( pouca capacidade em muito espaço ).

TECNOLOGIAS
À medida que o tempo passa, mesmo as memórias estáticas estão ficando lentas para as frequências de operação utilizadas no barramento local do microcomputador.

A solução foi o desenvolvimento de novas tecnologias de memória estática:

 ASYNCHRONOUS SRAM

 Esse é o tipo tradicional de memória estática, utilizada a partir do 80386. embora seja rápida, em frequências de operação acima de 33Mhz, necessita utilizar wait states.
Tem um tempo de acesso típico de 20 a 12 ns.

 SYNCHRONOUS BURST SRAM

 Esse é o melhor tipo de memória estática para micros que utilizem até 66Mhz como frequência de operação do barramento local, pois não é preciso utilizar wait states.
Tem um tempo de acesso típico de 12 a 8,5ns.

 PIPELINED BURST SRAM

 Esse novo tipo consegue trabalhar com barramentos de até 133Mhz sem a necessidade de wait states. Tem um tempo de acesso típico de 8 a 4,5ns.
 

RAM DINÂMICA ( DRAM )

São fabricadas usando a tecnologia MOS.
Apresentam :
 alta capacidade de armazenamento.
 baixo consumo de energia.
 velocidade de operação moderada.
 armazenam 1s e 0s como carga de microcapacitores mos.
 baixo custo.
 desvantagem:
 necessitam de recarga periódica das células de memória
 operação de refresh  de cada célula a cada 2~10 ms.

Sempre que uma operação de leitura for realizada em determinada célula da dram, todas as células desta mesma linha sofrerão refresh.

Mesmo não podendo baixar o tempo de acesso da memória dinâmica ( sobretudo por causa da necessidade de ciclos de refresh ), os fabricantes conseguiram desenvolver diversas novas tecnologias de construção de circuitos de memória RAM.
Embora tenha o mesmo tempo de acesso, circuitos com tecnologias de construção diferentes podem apresentar velocidades diferentes.

Para entendermos as novas tecnologias de construção de memórias dinâmicas e as suas vantagens, devemos ir um pouco mais a fundo no funcionamento das memórias dinâmicas.

As novas tecnologias são alterações na estrutura básica do funcionamento da memória, que fazem com elas gastem um número menor de wait states.

Podemos citar:

 Memória Fast Page Mode ( FPM )
 Memória Extended Data Out ( EDO )
 Memória Burst Extended Data Out ( BEDO )
 Memória Synchronous Dynamic RAM ( SDRAM )
 Memória Double Data Rate SDRAM ( SDRAM-II )
 

RAM NÃO-VOLÁTIL ( NVRAM )

Contém uma matriz de RAM estática e uma matriz EEPROM no mesmo chip.
 cada célula da RAM estática tem uma correspondente na EEPROM, e a informação pode ser transferida entre células correspondentes em ambas as direções.
 elas atuam na ocorrência de falta de energia, ou quando o computador for desligado. a operação de transferência é realizada em paralelo e gasta alguns poucos milissegundos.
 a NVRAM tem a vantagem de não precisar de bateria.
 não estão disponíveis em versões de grande capacidade de armazenamento. neste caso, usa-se RAMs CMOS com bateria.