5.4. Memórias de Semicondutores

As memórias de semicondutores são consideradas aquelas que utilizam composição de transistores como forma principal de armazenamento. Dentro deste grupo estão os registradores, memórias cache, memórias principais e, mais recentemente, cartões de memória, pen-drives e os chamados Discos de Estado Sólido (SSD), que não possuem formatos de disco, mas receberam esse nome por serem os candidatos mais cotados a substituírem os Discos Rígidos (HD).

Dentro das memórias de semicondutores vamos apresentar:

5.4.1. Random-Access Memory (RAM)

O termo Random-Access Memory, ou RAM, ou Memória de Acesso Aleatório em português, veio porque essa tecnologia substituiu as anteriores memórias de Acesso Sequencial. No Acesso Sequencial, os endereços são acessados obrigatoriamente de forma sequencial, 0, 1, 2, 3,… Essa é a forma de acesso de memórias magnéticas, como fitas cassete e VHS, e os discos rígidos (com alguma melhoria).

Já as memórias de acesso aleatório podem acessar qualquer endereço aleatoriamente, independente de sua posição. Hoje, o termo Memória RAM é utilizado de forma errada para representar a Memória Principal, mas na verdade, tanto registradores, quanto memória Cache e Memória Principal são feitos utilizando tecnologia RAM. Assim, RAM é uma tecnologia e não uma memória. A partir de hoje então, não utilize mais memória RAM, mas Memória Principal quando se referir à principal memória dos computadores.

5.4.2. Dynamic RAM (DRAM)

As memórias Dynamic RAM são as mais simples de serem fabricadas. Como mostrado na Figura 5.2, “Estrutura de uma DRAM para amazenar um Bit”, é formada simplesmente por um único transistor e um capacitor.

Figura 5.2. Estrutura de uma DRAM para amazenar um Bit


A figura apresenta uma memória de um único bit. O transistor cuida de abrir ou fechar a passagem de corrente para linha B. Já a linha de endereço é utilizada para fechar a porta do transistor e carregar o capacitor. Se o capacitor estiver carregado, é considerado que a memória contém o bit 1. Caso contrário, a memória contém o bit 0.

A simplicidade desta implementação traz resultado no seu principal ponto negativo. Assim como todo capacitor, o capacitor responsável por manter a carga da memória só é capaz de manter a carga por um curto tempo. Aos poucos, a carga vai sendo dissipada, até o momento em que era o bit 1, se torna 0, gerando um erro. Para evitar isso, é adicionado um circuito a parte que de lê o conteúdo da memória periodicamente e recarrega todos capacitores que estão com bit 1.

Vamos lembrar que as memórias hoje estão na casa de Giga Bytes. Ou seja, bilhões de bytes. Então, bilhões de capacitores devem ser lidos e recarregados periodicamente para que os conteúdos não sejam perdidos. Esta técnica é chamada de Refrescagem. Ela resolve o problema dos dados perdidos, mas atrapalha bastante o desempenho da memória. Sempre que a Refrescagem precisa ser realizada, todo acesso é bloqueado. Nada pode ser lido ou escrito enquanto isso. Assim, o processador precisa esperar que o processo de refrescagem termine para poder acessar novamente a memória.

Devido à sua simplicidade de fabricação, as memórias DRAM são mais utilizadas para compor a Memória Principal, devido ao preço mais acessível do que o das mais modernas SRAM.

5.4.3. Static RAM (SRAM)

As memórias RAM Estáticas (Static RAM ou SRAM) se baseiam na composição de transistores para possibilitar que a carga do bit 1 seja compartilhada entre outros transistores. A Figura 5.3, “Estrutura de uma SRAM com transistores compartilhando carga do bit 1” apresenta essa composição de transistores.

Figura 5.3. Estrutura de uma SRAM com transistores compartilhando carga do bit 1


Nesta ilustração, o transistor T5 é que determina se o bit é 0 ou 1, e os transistores, T1 e T3 são utilizados para recarregá-lo, caso sua carga reduza. Já os transistores T2, T4 e T6 são o complemento deles de forma inversa, adicionando um nível a mais de segurança. Essa técnica é chamada Complementary MOS (CMOS).

As memórias SRAM não precisam de circuito de refrescagem, por isso, não precisam parar e tornam-se muito mais rápidas do que as DRAM. O problema é que elas precisam de muito mais transistores por bit, o que torna o projeto maior e, por consequência, mais caro.

Devido ao seu preço, elas são mais utilizadas em memórias Cache, mas em menor quantidade do que as memórias principais.

5.4.4. Synchronous Dynamic RAM (SDRAM)

Já a Synchronous Dynamic RAM (SDRAM) é uma DRAM com um simples avanço. O relógio que determina o tempo das SDRAM vem diretamente do processador, e não de um relógio próprio, como nas DRAM convencionais. Isso faz com que o momento exato da Refrescagem seja determinado pelo processador. Dessa forma, o processador sabe exatamente quando ele não pode acessar a memória, e dedica seu tempo às outras tarefas, ou seja, o processador não perde mais tanto tempo esperando a memória.

5.4.5. Double-Data Rate SDRAM (DDR-DRAM)

Após as SDRAM surgiram as DDR-SDRAM. As memórias DDR são síncronas como as SDRAM, mas elas possuem um barramento extra que faz com que, a cada ciclo de clock da memória, o dobro de dados são transferidos. As memórias DDR e suas sucessoras são mais utilizadas para utilização como memória principal.

5.4.6. Read-Only Memory (ROM)

As memórias ROM também possuem um nome criado há muitos anos e hoje é um termo que não faz tanto sentido. Em português significam Memória Apenas de Leitura. Isso porque as primeiras ROM eram escritas durante a fabricação e não podiam mais ser modificadas. Mas outras gerações foram desenvolvidas que permitiram a escrita e tornou o termo ROM antiquado. Todas memórias ROM são não voláteis, ou seja, mantêm seu conteúdo mesmo com a falta do fornecimento de energia elétrica. São tipos de memória ROM:

As memórias PROM (Programmable ROM)
são memórias que vem com a conexões abertas de fábrica e precisam de uma máquina para que os dados sejam escritos nelas. Uma vez escritos, eles não podem mais ser modificados.
Já as memórias EPROM (Erasable PROM)
se baseiam no mesmo princípio das PROM, mas uma máquina especial que utiliza raios UV pode ser utilizada para apagar todo seu conteúdo e escrever novamente.
As memórias EEPROM (Electronically Erasable PROM)
possuem o mesmo princípio das PROM, mas a máquina utilizada para escrita e apagar é eletrônica. Isso permite que um computador, ou um máquina especial seja utilizada para escrever nas memórias, as tornando muito mais utilizadas.
Já as memórias Flash
se baseiam no princípio das memórias EEPROM, mas o processo de apagar é feito em blocos grandes, o que acelera bastante o processo.

As memórias ROM são muito utilizadas na formação da BIOS dos computadores e as memórias Flash são o princípio básico de cartões de memória, pen-drives e memórias de estado sólido.