Como funciona a memória flash

Diferentemente da memória RAM e também das SRAM, a memória Flash permite armazenar dados por longos períodos, sem precisar de alimentação elétrica. Graças a isso, a memória Flash se tornou rapidamente a tecnologia dominante em cartões de memória, pendrives, HDs de estado sólido (SSDs), memória de armazenamento em câmeras, celulares e palmtops e assim por diante.

Se a memória Flash não existisse, todas essas áreas estariam muito atrasadas em relação ao que temos hoje. Os celulares e os palmtops provavelmente ainda utilizariam memória SRAM para armazenar os dados e seriam por isso mais caros e perderiam os dados quando a bateria fosse removida. Os pendrives simplesmente não existiriam e os cartões de memória estariam estagnados nos cartões CompactFlash, utilizando microdrives ou pequenas quantidades de memória SRAM alimentada por uma pequena bateria. Formatos mais compactos, como os cartões SD e miniSD simplesmente não existiriam.

Existem dois tipos de memória Flash. A primeira tecnologia de memória Flash a se popularizar foi o tipo NOR, que chegou ao mercado em 1988. Os chips de memória Flash NOR possuem uma interface de endereços similar à da memória RAM.

Graças a isso, eles rapidamente passaram a ser usados para armazenar o BIOS da placa-mãe e firmwares em dispositivos diversos, que antes eram armazenados em chips de memória ROM ou EEPROM. Nos primeiros PCs, por exemplo, o BIOS da placa-mãe era gravado em um chip de memória ROM e por isso não era atualizável, a menos que o chip fosse fisicamente substituído.

O problema com as memórias NOR é que elas são muito caras e, embora as leituras sejam rápidas, o tempo de gravação das células é muito alto. Em um chip de memória NOR típico, as operações de gravação demoram cerca de 750 nanosegundos, ou seja, teríamos pouco mais de 1300 operações de gravação por segundo!

No caso do BIOS da placa-mãe, isso não é um grande problema, pois você só precisa atualizá-lo esporadicamente. Mas, imagine um palmtop que tentasse utilizar apenas memória NOR com memória de trabalho… O sistema rodaria tão lentamente que a idéia acabaria sendo abandonada mais cedo ou mais tarde. 🙂

Apesar disso, a memória Flash do tipo NOR é bastante usada até hoje em palmtops, celulares e diversos tipos de dispositivos, para armazenar o sistema operacional (nesse caso chamado de firmware), que é carregado durante o boot, sem ser alterado. A vantagem nesse caso é o XiP (execute in place), onde o sistema pode rodar diretamente a partir do chip de memória, sem precisar ser primeiro copiado para a memória RAM.

O chip de memória NOR é complementado por uma pequena quantidade de memória SRAM ou DRAM, que é usada como memória de trabalho. Em muitos casos, a memória é usada também para armazenar dados e configurações que, justamente por isso, podem ser perdidos quando a carga da bateria se esgota completamente.

As memórias Flash NOR chegaram a ser utilizadas nos primeiros cartões de memória PCMCIA e CompactFlash, mas elas desapareceram desse ramo quando foram introduzidas as memórias NAND, que são de longe o tipo mais usado atualmente.

Nelas, cada célula é composta por dois transístores, com uma fina camada de óxido de silício precisamente posicionada entre os dois, que armazena cargas negativas. Isso cria uma espécie de armadilha de elétrons, que permite manter os dados por longos períodos de tempo, sem que seja necessário manter a alimentação elétrica (como nas memórias SRAM), ou muito menos fazer um refresh periódico (como na memória DRAM). Isso simplifica muito o design dos cartões, pendrives e outros dispositivos, pois eles precisam incluir apenas os chips de memória Flash NAND, um chip controlador e as trilhas necessárias. Nada de baterias, circuitos de refresh ou qualquer coisa do gênero.

Aqui temos um diagrama da Intel que mostra uma célula de memória Flash NAND:

Pelo diagrama você pode notar que embora mais complexa que uma célula de memória RAM (onde temos apenas um transístor e um capacitor), a célula de memória Flash ocupa pouco espaço, pois o segundo transístor é posicionado sobre o primeiro. Graças ao tamanho reduzido das células, cada chip de memória Flash NAND armazena uma quantidade muito maior de dados, o que faz com que o preço por megabyte seja muito mais baixo.

Além de mais baratas que as NOR, as memórias NAND também são muito mais rápidas na hora de gravar dados. A principal limitação é que elas são endereçadas usando páginas de 2 KB e acessadas através de um barramento serial. Ou seja, do ponto de vista do sistema, um cartão de memória Flash NAND está mais para um HD do que para uma unidade de memória. Você pode usá-lo para guardar dados, mas na hora que o sistema precisa rodar um programa, precisa primeiro copiá-lo para a memória RAM, da mesma forma que faria ao usar um HD.

De alguns anos para cá, os palmtops e smartphones passaram a cada vez mais utilizar memória Flash NAND como área de armazenamento de dados e programas, substituindo a memória SRAM. Isso se tornou possível graças a um conjunto de truques feitos via software, onde o sistema utiliza uma quantidade menor de memória SRAM como área de trabalho e vai lendo e os arquivos na memória Flash conforme eles são necessários. Esse esquema é muito similar ao que temos num PC, onde os arquivos são salvos no HD, porém processados usando a memória RAM.

Um dos primeiros aparelhos a aderir a esse sistema foi o Treo 650, lançado em 2004. Atualmente ele é utilizado na grande maioria dos modelos, pois, além de cortar custos, melhora a confiabilidade do aparelho, já que os dados não são mais perdidos ao remover a bateria.

O grande boom da memória Flash aconteceu entre 2004 e 2005, quando uma combinação de dois fatores fez com que o preço por MB caísse rapidamente.

O primeiro foi o brutal aumento na produção e a concorrência entre os fabricantes, que empurraram os preços para baixo. Além de gigantes como a Samsung e a Toshiba, até mesmo a Intel e a AMD investiram pesadamente na fabricação de memória Flash.

O segundo foi a introdução da tecnologia MLC (Mult-Level Cell), onde cada célula passa a armazenar dois ou mais bits em vez de apenas um. Isso é possível graças ao uso de tensões intermediárias. Com 4 tensões diferentes, a célula pode armazenar 2 bits, com 8 pode armazenar 3 bits e assim por diante. O MLC foi implantado de forma mais ou menos simultânea pelos diversos fabricantes e permitiu reduzir drasticamente o custo por megabyte, quase que de uma hora para a outra. Outra tecnologia similar é o MBC (Multi-Bit Cell), desenvolvido pela Infineon.

Os chips “tradicionais”, que armazenam um único bit por célula passaram a ser chamados de “SLC” (single-bit cell) e ainda são produzidos com o objetivo de atender o mercado de cartões de alto desempenho (sobretudo os cartões CF destinados ao mercado profissional). Embora muito mais caros, eles oferecem um melhor desempenho e são mais duráveis.

Outra tecnologia usada pelos fabricantes para cortar custos e ao mesmo tempo permitir a criação de chips de maior densidade é o “Die-Stacking”, onde dois ou mais chips são “empilhados”, conectados entre si e selados dentro de um único encapsulamento, que possui o mesmo formato e contatos que um chip tradicional:

Como uma boa parte do custo de um chip de memória Flash corresponde justamente ao processo de encapsulamento, o uso do Die-Stacking permite mais uma redução substancial do custo.

Ver Mais

Esta postagem foi modificada pela última vez em 14/12/2008 09:53

Postagem relacionada