Você está na página 1de 14

UNIVERSIDADE FEDERAL DO CEARÁ

CAMPUS DE SOBRAL
CURSO DE GRADUAÇÃO EM ENGENHARIA ELÉTRICA
DISCIPLINA DE ELETRÔNICA DIGITAL

AMINADABE SOUSA NASCIMENTO 398141

RELATÓRIO IX: MEMÓRIA RAM

SOBRAL
2019
LISTA DE ILUSTRAÇÕES

Figura 1 – Esquema do circuito a ser montado . . . . . . . . . . . . . . . . . . . . . . 9


Figura 2 – Circuito montado em protolab . . . . . . . . . . . . . . . . . . . . . . . . . 9
Figura 3 – Trem de pulsos de um ciclo de gravação . . . . . . . . . . . . . . . . . . . 10
Figura 4 – Trem de pulsos de um ciclo de leitura . . . . . . . . . . . . . . . . . . . . . 11
LISTA DE TABELAS

Tabela 1 – Lógica dos dados gravados . . . . . . . . . . . . . . . . . . . . . . . . . . 10


Tabela 2 – Lógica dos dados gravados pela outra bancada . . . . . . . . . . . . . . . . 11
SUMÁRIO

1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 OBJETIVOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3 MATERIAIS UTILIZADOS . . . . . . . . . . . . . . . . . . . . . . . . . 8
4 PROCEDIMENTO PRÁTICO . . . . . . . . . . . . . . . . . . . . . . . 9
5 CONCLUSÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4

1 INTRODUÇÃO

Um circuito digital de extrema importância, principalmente na construção de circui-


tos que realizam algum tratamento de informação utilizando processadores ou microcontrola-
dores, é a memória. Nestes circuitos, a memória é utilizada não só para armazenar os dados a
serem processados e os resultados obtidos, mas também o próprio programa a ser executado pelo
processador ou microcontrolador (TOCCI et al., 2011).
Desde sua origem, duas famílias de memórias têm coexistido, com características
particulares que as fazem adequadas para aplicações diferentes. A primeira família inicia-se
com as memórias ROM - Read Only Memory (Memória Apenas de Leitura). Estas memórias,
como o nome sugere, apenas podiam ser lidas, uma vez que sua gravação era feita fisicamente
durante o processo de fabricação do semicondutor, e não podia ser mais alterada. Esta memória
era utilizada principalmente para armazenar o programa a ser executado pelo processador ou
microcontrolador, o que conhecemos como firmware. Porém, uma série de limitações permeava
seu uso. Primeiro, porque sua fabricação apenas era financeiramente viável em grandes volumes,
e envolvia um demorado período de fabricação, o que tornava seu uso impraticável para o
desenvolvimento dos programas. Além disso, a atualização do software de um dispositivo,
ou manutenção de uma memória defeituosa, envolvia a troca do dispositivo; uma tarefa que
exige algum conhecimento técnico para ser realizada, ou seja, a atualização de firmware que
estamos frequentemente acostumados quando lidamos com celulares, games, roteadores e outros
dispositivos microprocessados, não era nada simples. Tentando contornar parte dessas limitações,
outros dispositivos desta família foram desenvolvidos:
• PROM (Programmable Read Only Memory): Uma memória somente de leitura progra-
mável (PROM) é uma forma de memória digital em que a configuração de cada bit é
bloqueada por um fusível ou anti-fusível. É um tipo de ROM (memória somente leitura).
Os dados neles são permanentes e não podem ser alterados. As PROMs são usadas em
dispositivos eletrônicos digitais para armazenar dados permanentes, geralmente programas
de baixo nível, como firmware ou microcódigo. A principal diferença de uma ROM padrão
é que os dados são gravados em uma ROM durante a fabricação, enquanto que com uma
PROM os dados são programados neles após a fabricação. Assim, os ROMs tendem
a ser usados apenas para grandes execuções de produção com dados bem verificados,
enquanto os PROMs são usados para permitir que as empresas testem em um subconjunto
de dispositivos em uma ordem antes de gravar dados em todos eles;
5

• EPROM (Erasable Programmable ROM): Uma EPROM (raramente EROM), ou memória


de leitura programável apagável, é um tipo de chip de memória que retém seus dados
quando sua fonte de alimentação é desligada. A memória do computador que pode
recuperar dados armazenados após uma fonte de alimentação ter sido desligada e ligada
novamente é chamada de não volátil. Trata-se de um conjunto de transistores de porta
flutuante, programados individualmente por um dispositivo eletrônico que fornece tensões
mais altas do que as normalmente usadas em circuitos digitais. Uma vez programada, uma
EPROM pode ser apagada, expondo-a a uma fonte de luz ultravioleta forte (como a de uma
lâmpada de vapor de mercúrio). EPROMs são facilmente reconhecíveis pela transparência
janela de quartzo fundido no topo da embalagem, através da qual o chip de silício é visível,
e que permite a exposição à luz ultravioleta durante o apagamento;
• EEPROM ou E2PROM (Electrically Erasable Programmable ROM): EEPROM (também
E 2 PROM) significa memória de leitura programável apagável eletricamente e é um tipo
de memória não volátil usada em computadores, integrada em microcontroladores para
smart cards e sistemas remotos sem chave, e outros dispositivos eletrônicos para armazenar
quantidades relativamente pequenas de dados, mas permitindo que os bytes individuais
sejam apagados e reprogramados;
• Flash EEPROM: A outra família de memórias corresponde as RAMs - Random Access
Memories (Memórias de Acesso Randômico). Elas recebem este nome porque permitem
que qualquer byte em seu interior seja acessado, ao contrário das memórias sequenciais, em
que, para acessar o fim da memória, é preciso percorrer todo seu início. De qualquer forma,
este nome não as distingue bem da família anterior, pois, a vasta maioria das memórias
ROM, também permitia acesso randômico. A principal característica das memórias RAM,
que as diferenciam das memórias ROM, é a volatilidade. A memória RAM geralmente é
capaz de reter a informação gravada enquanto ela estiver alimentada, após desligada, a
informação é perdida. Também houve abordagens construtivas diferentes na família de
memórias RAM;
• DRAM (Dynamic RAM): A memória de acesso aleatório dinâmica (DRAM) é um tipo
de memória de semicondutor de acesso aleatório que armazena cada bit de dados em
um minúsculo capacitor separado dentro de um circuito integrado . O capacitor pode
ser carregado ou descarregado; Esses dois estados são considerados como representando
os dois valores de um bit, convencionalmente chamados de 0 e 1. A carga elétrica nos
6

capacitores lentamente vaza, portanto, sem intervenção, os dados no chip seriam perdidos
em breve. Para evitar isso, a DRAM exige uma atualização de memória externa circuito
que periodicamente reescreve os dados nos capacitores, restaurando-os à sua carga original.
Esse processo de atualização é a característica definidora da memória de acesso aleatório
dinâmica, em contraste com a memória de acesso aleatório estática (SRAM), que não exige
que os dados sejam atualizados. Ao contrário da memória flash, a DRAM é uma memória
volátil (versus memória não volátil ), uma vez que perde seus dados rapidamente quando a
energia é removida. No entanto, a DRAM exibe uma remanência de dados limitada;
• SRAM (Static RAM): A memória de acesso aleatório estático (RAM estática ou SRAM) é
um tipo de memória semicondutora que usa um circuito de travamento biestável (flip-flop)
para armazenar cada bit. A SRAM exibe a remanência de dados, mas ainda é volátil no
sentido convencional de que os dados são eventualmente perdidos quando a memória não é
alimentada. O termo estática diferencia a SRAM da DRAM (memória dinâmica de acesso
aleatório) que deve ser periodicamente atualizada. A SRAM é mais rápida e mais cara que
a DRAM; é normalmente usado para cache da CPU enquanto a DRAM é usada para a
memória principal de um computador;
• NVSRAM (Non-Volatile Static RAM): Independentemente do tipo, toda memória randô-
mica apresenta 3 tipos de barramento: endereço, dados, e controle. O barramento de
dados, em memórias que podem ser gravadas, é bidirecional, sendo que sinais de controle
apropriados determinam se a memória deve fornecer o dado no barramento, ou deve gravar
o dado presente neste barramento em seu interior. Este barramento pode ter tamanhos
diferentes, sendo que os tamanhos mais frequentes são de 1, 8, 16 ou 32 bits. O barramento
de endereços, como o nome sugere, indica qual área da memória está sendo acessada. O
seu tamanho é função da capacidade da memória, por exemplo, uma memória de 32K x 8
(32 kilobytes) deverá ter 15 bits de endereços, pois 215=32768, ou 32KB. O barramento
de controle determina que operações devem ser realizadas, em geral neste barramento
encontramos os sinais CS’ (Chip Select, que em zero habilita o chip), OE’ (Output Enable,
também pode ser indicado como RD’- Read, em 0 este sinal determina que a memória
deve fornecer dados ao barramento de dados, e não o contrário) e WR’ (Write, em zero
determina que a memória deve armazenar o dado existente no barramento);
7

2 OBJETIVOS

• Montar um circuito com uma memória RAM;


• Estudar e discutir as principais características deste tipo de circuito
8

3 MATERIAIS UTILIZADOS

• Módulo de conjuntos didáticos LEG2000;


• Cabos banana.
9

4 PROCEDIMENTO PRÁTICO

Primeiramente, utilizando cabos banana de tamanho apropiado, montou-se na pro-


tolab do laboratório o circuito esquematizado na Figura 1. A Figura 2 exibe o resultado da
montagem do circuito. É possível notar que, como a protolab dispõe de apenas 8 geradores de
níveis lógicos, ligou-se quatro deles aos bits menos significativos do barramento de endereços e
os outros quatro aos bits menos significativos do barramento de dados. Desse modo, isso permitiu
gravar dados na memória com endereços de até 4 bits. Nesse sentido, o padrão escolhido para a
gravação de dados na memória foi o da inversão dos números, como mostra a Tabela 1.

Figura 1 – Esquema do circuito a ser montado

Fonte – Roteiro da prática.

Figura 2 – Circuito montado em protolab

Fonte – Produzido pelo autor.


10

Tabela 1 – Lógica dos dados gravados

Endereço Lido Gravado

0 0 0 0 0 0 0 0 0 0 15 1 1 1 1
1 0 0 0 1 1 0 0 0 1 14 1 1 1 0
2 0 0 1 0 2 0 0 1 0 13 1 1 0 1
3 0 0 1 1 3 0 0 1 1 12 1 1 0 0
4 0 1 0 0 4 0 1 0 0 11 1 0 1 1
5 0 1 0 1 5 0 1 0 1 10 1 0 1 0
6 0 1 1 0 6 0 1 1 0 9 1 0 0 1
7 0 1 1 1 7 0 1 1 1 8 1 0 0 0
8 1 0 0 0 8 1 0 0 0 7 1 0 0 0
9 1 0 0 1 9 1 0 0 1 6 0 1 1 0
10 1 0 1 0 10 1 0 1 0 5 0 1 0 1
11 1 0 1 1 11 1 0 1 1 4 0 1 0 0
12 1 1 0 0 12 1 1 0 0 3 0 0 1 1
13 1 1 0 1 13 1 1 0 1 2 0 0 1 0
14 1 1 1 0 14 1 1 1 0 1 0 0 0 1
15 1 1 1 1 15 1 1 1 1 0 0 0 0 0

Fonte – Produzido pelo autor.

Para realizar a gravação dos dados, primeiramente manteve-se o sinal OE em nível


alto. Depois, escolheu-se o endereço a ser gravado e definiu-se o dado a ser gravado. Logo após,
colocou-se o sinal CS em nível baixo e o sinal WR em nível alto, para em seguida retornar ambos
ao nível alto. Como mostra o diagrama da Figura 3, o dado deve permanecer válido durante
as bordas de subida de WR e CS. De qualquer modo, para evitar possíveis erros de gravação,
manteve-se o dado estático durante todo o ciclo de gravação, que se inicia com CS transitando
para 0, e termina com CS e WR retornando a nível 1.

Figura 3 – Trem de pulsos de um ciclo de gravação

Fonte – Samsung Eletronics (2019)


11

Para a leitura dos dados, manteve-se o sinal WR em nível alto, porém CS e OE em


nível baixo. Escolheu-se, então, o endereço a ser lido. Desse modo, ligou-se o barramento de
dados aos indicadores de nível lógico. O mesmo procedimento foi realizado com os endereços
gravados pela outra bancada, no intuito de verificar o padrão estabelecido pela outra equipe.
Verificou-se que se tratava dos números de matrícula de seus integrantes (403363, 394829, 3988),
como mostra a Tabela 2. A Figura 4 exibe o trem de pulsos de um ciclo de leitura.

Figura 4 – Trem de pulsos de um ciclo de leitura

Fonte – Samsung Eletronics (2019)

Tabela 2 – Lógica dos dados gravados pela outra bancada

Endereço Lido Gravado

0 0 0 0 0 0 0 0 0 0 4 0 1 0 0
1 0 0 0 1 1 0 0 0 1 0 0 0 0 0
2 0 0 1 0 2 0 0 1 0 3 0 0 1 1
3 0 0 1 1 3 0 0 1 1 3 0 0 1 1
4 0 1 0 0 4 0 1 0 0 6 0 1 1 0
5 0 1 0 1 5 0 1 0 1 3 0 0 1 1
6 0 1 1 0 6 0 1 1 0 3 0 0 1 1
7 0 1 1 1 7 0 1 1 1 9 1 0 0 1
8 1 0 0 0 8 1 0 0 0 4 0 1 0 0
9 1 0 0 1 9 1 0 0 1 8 1 0 0 0
10 1 0 1 0 10 1 0 1 0 2 0 0 1 0
11 1 0 1 1 11 1 0 1 1 9 0 0 1 0
12 0 0 1 1 12 1 1 0 0 3 1 0 0 1
13 1 1 0 1 13 1 1 0 1 9 1 0 0 1
14 1 1 1 0 14 1 1 1 0 8 1 0 0 0
15 1 1 1 1 15 1 1 1 1 8 1 0 0 0

Fonte – Produzido pelo autor.


12

5 CONCLUSÃO

Neste experimento, foram apresentados os principais conceitos acerca de uma me-


mória RAM, bem como memórias em geral. Foi possível entender suas utilidades e aplicações
práticas através da gravação e leitura de dados feita em um circuito montado em protolab. Vale
ressaltar que, após o bastidor ser desligado por alguns segundos, os valores não se preservaram,
pois o armazenamento da memória RAM é volátil, não permanente. Além disso, consultando o
datasheet do fabricante, verificou-se que o tempo mínimo necessário para leitura e escrita de um
dado é por volta da faixa de microssegundos. As atividades da prática corresponderam, portanto,
aos objetivos propostos.
13

REFERÊNCIAS

Samsung Eletronics. 32Kx8 bit Low Power CMOS Static RAM. [S.l.]: Samsung, 2019.

TOCCI, R.; WIDMER, N.; MOSS, G. Sistemas digitais: princípios e aplicações. 11. ed. [S.l.]:
Pearson, 2011.

Você também pode gostar