Você está na página 1de 22

Memória Somente de Leitura (ROM)

Diagrama em Blocos de uma ROM

O sinal de controle CS (seleção do chip) habilita a operação de leitura


da posição indicada no barramento de endereços.
O dado é transferido para o barramento de dados. Quando CS está em
ALTO, as saídas da ROM ficam desabilitadas (alta impedância).
Arquitetura de uma ROM (Exemplo:16x8)
Matriz de registradores – onde os dados serão armazenados. Cada
registrador contém um número de células de memória igual ao tamanho da
palavra utilizada. Cada registrador tem duas entradas de habilitação (E):
ambas devem estar em ALTO para que os dados do registrador sejam
colocados no barramento de dados.

Decodificadores de endereços – o barramento de endereço é separado em


duas vias: a primeira seleciona a linha e a segunda seleciona a coluna onde o
registrador se localiza.

Exemplo: Qual o registrador que será habilitado pelo endereço 1101? Que
endereço irá habilitar o registrador 7?

Buffers de saída – o registrador que está habilitado pelas entradas de


endereço coloca seu conteúdo no barramento de dados. Estes dados vão para
os buffers de saída, que colocarão os dados na saída de dados externa, desde
que esteja em BAIXO. Se estiver em alto, os buffers de saída ficarão em alta
impedância.
Temporização de uma ROM

O atraso de propagação entre a aplicação dos sinais de entrada e o


aparecimento dos dados na saída, durante a operação de leitura, é chamado
tempo de acesso (tACC). Existe outro parâmetro de temporização chamado
tempo de habilitação da saída (tOE), que representa o atraso entre a entrada CS
e a saída de dados válidos.

Temporização de uma ROM


Tipos de ROM

ROM Programada por Máscara – este tipo de ROM tem suas posições escritas
(programadas) pelo fabricante de acordo com as especificações do cliente. Uma
máscara (tipo de negativo fotográfico) é usada para informar as conexões elétricas do
chip. Este tipo de ROM é usado para armazenar tabelas ou informações pré-
programadas como códigos geradores de caracteres de terminais de vídeo.

ROM Programável (PROM) – tipo de memória ROM onde a programação é feita


apenas uma única vez pelo usuário. Esta programação consiste na queima ou não de
um fusível que corresponde a um bit de informação por um equipamento chamado
programador.

ROM Programável e Apagável (EPROM) – tipo de memória ROM que pode ser
programada e apagada pelo usuário várias vezes. O processo de programação consiste
em aplicar certos níveis de tensões que provocam a condução permanente ou não
condução de transistores MOS. O apagamento da memória é feito pela exposição dos
circuitos internos à luz ultravioleta através de uma “janela”.

PROM Apagável Eletricamente (EEPROM) – é uma melhoria em relação às EPROMs,


pois pode ser tanto programada como apagada eletricamente. Assim, elas podem ser
programadas e apagadas no próprio circuito, sem a necessidade de luz ultravioleta ou
um programador especial.
CD ROM – tipo de armazenamento somente para leitura que utiliza tecnologia
laser. Os bits são definidos pela reflexão ou não de um feixe laser apontado
para um ponto do disco.

Memória Flash – tipo de memória não-volátil, apagável eletricamente como a


EEPROM, mas com densidades e custos semelhantes aos da EPROM, com o
mesmo tempo de acesso de ambas.

Comparação entre tipos de ROM


Aplicações de ROMs

Firmware – armazenamento de programas ou dados que devem estar


disponíveis no processo de inicialização de sistemas microprocessados. Por
exemplo, produtos como televisores, CD players, fornos de micro-ondas etc.

Memória de Bootstrap – tipo de programa armazenado em uma ROM que


trata da inicialização do hardware de um computador. Após a inicialização, o
programa de bootstrap chama o sistema operacional e o computador começa a
executar o sistema operacional.

Tabela de Dados – as ROMs são bastante utilizadas para armazenar tabelas


de dados que não variam. Por exemplo, tabelas trigonométricas, códigos
ASCII, etc.

Conversor de Códigos – este tipo de aplicação toma valores expressos em


um determinado tipo de código e produz uma saída expressa em outro código.
Por exemplo, o código BCD pode ser convertido para 7 segmentos por uma
ROM.
Gerador de Funções – basicamente, um gerador de funções é um circuito que
produz formas de onda senóides, triangulares e quadradas. Uma ROM com
tabelas de valores armazenados e um conversor D/A podem ser usados para
gerar essas formas de onda.

Armazenamento Auxiliar – dados podem ser armazenados em memórias


ROM apagáveis (EPROM, EEPROM, FLASH), tornando essas memórias como
alternativa aos discos magnéticos de armazenamento.

Memória de Acesso Aleatório (RAM)

Introdução

A memória de acesso aleatório (RAM) semicondutora é um tipo de


memória onde se pode tanto ler como escrever dados.
A principal vantagem de uma RAM é o fato dela poder ser escrita e lida
rapidamente com a mesma facilidade. Uma desvantagem seria o fato da RAM
ser volátil, isto é, se a alimentação for desligada ela perde a informação.
Arquitetura de uma RAM (Exemplo: RAM de 64x4)
A figura acima mostra uma RAM que armazena 64 palavras de quatro bits
(memória 64 x 4). Estas palavras têm endereços que vão de 0 a 63. Para
selecionar uma das 64 posições para escrita ou leitura, um endereço binário é
fornecido ao circuito decodificador. Cada endereço ativa uma saída do
decodificador, habilitando o seu registrador correspondente.

Operação de Leitura

A operação de leitura do conteúdo de um registrador é feita da


seguinte maneira:
Coloca-se o endereço da posição de memória a ser lida no barramento de
endereços;
Indica-se a operação de leitura através da entrada, colocando essa entrada em
ALTO;
Habilita-se o chip de memória para concluir a operação colocando a entrada
em BAIXO.

Quando a memória está habilitada para leitura, os buffers de entrada


são desabilitados e os buffers de saída são habilitados e o conteúdo da
posição de memória selecionada é colocado nas quatro saídas de dados.
Operação de Escrita

A operação de escrita de um dado novo em um registrador selecionado


é feita do seguinte modo:
Coloca-se o endereço da posição de memória a ser escrita no barramento de
endereços;
Coloca-se o dado a ser escrito no barramento de dados;
Indica-se a operação de escrita através da entrada, colocando essa entrada
em BAIXO;
Habilita-se o chip de memória para concluir a operação colocando a entrada
em BAIXO.

Quando a memória está habilitada para escrita, os buffers de entrada


são habilitados e os buffers de saída são desabilitados e o conteúdo da
posição de memória selecionada é perdido com a escrita do novo dado.
Quando a entrada (chip select – seleção de chip) está em ALTO
(memória desabilitada), tanto suas entradas como suas saídas estão em tri-
state (alta impedância), evitando assim escrita ou leitura errônea neste chip.
RAM Estática (SRAM)

Este tipo de memória armazena os dados enquanto for mantida a


alimentação. Suas células são compostas de flip-flops, e por isso seu conteúdo
não é perdido enquanto houver alimentação.

Temporização de uma RAM Estática

Um computador utiliza RAMs como memórias principais e essas


memórias devem ser rápidas o suficiente para responderem aos comandos de
leitura e escrita que a CPU está constantemente realizando.
Ciclo de Leitura

O ciclo de leitura é mostrado na figura abaixo:

Onde:
trc = intervalo de duração
do ciclo de leitura;

tacc = tempo de acesso à


RAM;

tco = tempo que a saída


da RAM leva para sair de
alta impedância e ter um
dado válido;

tod = tempo decorrido


entre a desabilitação da
RAM e o instante que as
saídas da RAM vão para
alta impedância.
Ciclo de leitura de uma RAM estática
Durante o ciclo de leitura, a CPU coloca um endereço no barramento
de endereços ligado à RAM. Este endereço corresponde à posição de memória
que deve ser lida.
A CPU sinaliza a operação de leitura através de um nível ALTO na
entrada R / W . A CPU habilita a memória colocando a entrada CS em nível
BAIXO. A RAM responde a isso colocando o conteúdo da posição endereçada
nas saídas de dados. Depois disso a memória é desabilitada ( CS é ALTO) e
suas saídas ficam em tristate (alta impedância).
Ciclo de Escrita

O ciclo de escrita é mostrado abaixo:

Onde:
twc = intervalo de duração do ciclo
de escrita;
tas = tempo para estabilização do
barramento de endereços, antes de
habilitar a RAM;
tah = intervalo necessário para que
o barramento de endereços
permaneça estável;
tw = tempo de escrita, onde CS e
R / W ficam em BAIXO;
tds = tempo que os dados devem
Ciclo de escrita de uma RAM estática ser mantidos na entrada antes da
desabilitação de CS e R / W ;
tdh = tempo que os dados devem
ser mantidos na entrada depois da
desabilitação de CS e R / W .
No ciclo de escrita, a CPU coloca um endereço estável no barramento
de endereços. Nesse endereço o dado deve ser escrito. Ela coloca o dado a
ser armazenado no barramento de dados.
A CPU sinaliza a operação de escrita, colocando nível BAIXO na
entrada R / W . A CPU habilita a memória colocando a entrada CS em nível
BAIXO. O dado é transferido para a posição de memória indicada pelo
endereço. A memória é, então, desabilitada ( CS é ALTO) e suas saídas ficam
em tristate.

Exemplos de Memórias Estáticas

6264 – 8K x 8
62256 – 32K x 8

RAM Dinâmica (DRAM)

Nesse tipo de memória a informação é armazenada em pequenos


capacitores. Como existe uma tendência normal dos capacitores se
descarregarem, há a necessidade de uma recarga (refresh – refrescamento)
desses capacitores. De tempos em tempos (tipicamente de 2 a 8 ms) o bit
armazenado no capacitor é atualizado.
Esse tipo de memória constitui a memória principal de um computador
por causa de sua alta capacidade e baixo consumo. Em relação à velocidade,
as RAM estáticas são mais rápidas.
A principal vantagem deste tipo de memória é a simplicidade na sua
construção, alcançando, assim, alto grau de integração.

Estrutura e Operação da RAM Dinâmica

Simbolicamente uma célula de memória dinâmica é constituída


conforme a figura abaixo.

Representação simbólica de uma célula de memória dinâmica


Para escrever em uma célula, os sinais provenientes da decodificação
de endereços e da lógica de leitura/escrita fecham as chaves SW1 e SW2,
mantendo SW3 e SW4 abertas. Isto conecta a entrada de dados a C. Um nível
lógico 1 carrega C e um nível lógico 0 o descarrega. Depois disso todas as
chaves são abertas, de modo que C fica desconectado do resto do circuito.
Mesmo desconectado, existe uma corrente de fuga que causa a descarga
gradual do capacitor e por isso o capacitor deve ser “refrescado”.
Para ler uma célula, as chaves SW2, SW3 e SW4 são fechadas, e
SW1 permanece aberta. Isso conecta a tensão armazenada no capacitor ao
amplificador sensor. Assim, na saída do amplificador, será obtido o valor
armazenado no capacitor que é atualizado via SW4 no momento da leitura.

Multiplexação de Endereços

A multiplexação de endereços é uma técnica que visa diminuir a


quantidade de entradas de endereços em uma DRAM. Isso permite que
DRAMs com altas capacidades ocupem espaços menores em placas de
computadores.
Essa multiplexação consiste em colocar no barramento de endereços a
metade superior do endereço (que localiza a linha) e colocar em BAIXO um
sinal chamado RAS (strobe do endereço da linha). Depois é colocado no
barramento de endereços a metade inferior do endereço (que localiza a
coluna) e colocar em BAIXO um sinal chamado CAS (strobe do endereço da
coluna). Após esse procedimento, a posição de memória é localizada e as
operações de leitura ou escrita podem ser realizadas.

Multiplexação de endereços em uma DRAM com 16 linhas de endereço


Refrescamento da DRAM

O refrescamento de uma DRAM é feito por circuitos externos ou no próprio


chip de memória. Existem dois métodos:

Refresh em rajada – a operação normal da memória é suspensa e cada linha


da DRAM é refrescada em sequência até que todas tenham sido refrescadas;

Refresh distribuído – o refrescamento é intercalado com as operações


normais da DRAM.

Tecnologia de RAM Dinâmica Usada em Computadores

Os tipos de DRAM existentes variam em função da capacidade,


velocidade, consumo, custo e versatilidade:

SIMM (single-in-line memory module) e DIMM (dual-in-line memory


module) – são módulos de memória que permitem uma instalação rápida e
são padrões de diversos tipos de DRAMs. Os módulos SIMM e DIMM definem
apenas como a DRAM é “empacotada”.
DRAM FPM (fast page module) – permite acesso mais rápido a qualquer
posição de memória dentro da “página” corrente. Normalmente, os dados
gravados na memória são sequenciais. Nesse tipo de DRAM o endereço da
linha (RAS) é enviado uma vez e o endereço da coluna (CAS) é incrementado.

DRAM EDO (extended data output) – é uma melhoria em relação às FPM. Os


dados são colocados na saída e a DRAM EDO já pode decodificar o próximo
endereço sem que esses dados tenham sido lidos;

DRAM BEDO (burst EDO) – Possui uma arquitetura que permite alcançar alta
velocidade ao se acessar dados sequênciais;

SDRAM (synchronous DRAM) – são organizadas em dois bancos que são


acessados alternadamente utilizando um sinal de clock sincronizado com a
CPU. Desse modo essas memórias alcançam altas taxas de transferências.
Memórias com Funções Especiais

Armazenamento de Dados com o Sistema Desligado – muitos


equipamentos armazenam seus dados em memórias RAM alimentadas com
baterias de reserva (NVRAM – RAM não-volátil);

Memória Cache – tipo de memória de alta velocidade e baixa capacidade de


armazenamento que interage diretamente com a CPU. Na cache estão
contidos os dados mais requisitados pelo processador e isso evita um acesso
desnecessário na RAM.

Memória First-In, First-Out (FIFO) – também conhecidas como buffers para


armazenamento temporário. Por exemplo, os dados são transferidos em altas
taxas do PC para a impressora. Como a impressão é mais lenta que a
transferência, esses dados devem ser armazenados em FIFOs e daí podem
ser impressos.

Você também pode gostar