Artigos

Entenda como funcionam as memórias Flash, o coração dos seus eletrônicos

Flash NAND

Hoje em dia, pendrives, cartões de memória dos mais variados tipos, smartphones, players de mídia, como o famoso iPod, câmeras com armazenamento interno, dentre outros exemplos, são artigos demasiadamente comuns, quase banais para os consumidores. Quebrou, compra outro ali no shopping, rapidinho.

De fato, estes eletrônicos chegaram para ficar e têm o seu lugar ao sol garantido no concorrido mercado da tecnologia. Porém, nenhum deles seria possível sem o advento da memória Flash. Sem essa invenção, desenvolvida nos saudosos anos 80 pela Toshiba, talvez o nicho de portáteis estaria muito atrasado. Não teríamos iPhone, Galaxy Nexus, iPad, Ultrabooks, câmeras digitais, etc. Talvez até tivéssemos, mas seriam muito mais caros e menos eficientes, já que provavelmente ainda usariam memórias DRAM ou SRAM.

Pois bem, hoje pretendemos esclarecer um pouco como funcionam estas memórias que possibilitaram tantos avanços, seus tipos e tecnologias, bem como outras curiosidades. Espero que goste. Vamos lá.

Um pouco da história

Utilizando termos técnicos, a memória Flash é um tipo de memória EEPROM (Electrically-Erasable Programmable Read-Only Memory), algo como Memória de Somente Leitura Programável e Eletricamente Apagável, se porcamente traduzido. Foi desenvolvida nos anos 80 por um funcionário da Toshiba, o Dr. Fujio Masuoka.

O nome Flash, ao contrárido do que muitos podem supor, não foi dado por causa de sua velocidade. Foi sugerido por um amigo do Dr. Masuoka, um cara de nome Shoji Ariizuma, que pensou nesse nome pois o processo para apagar e gravar novos dados se parecia com o Flash de uma câmera fotográfica.

A invenção foi apresentada em um evento na Califórnia em 1984, e a Intel viu potencial na coisa. Então, em 1988 foram lançados os primeiros chips de memória Flash, na época substituindo a memória ROM que eram usadas para gravar o BIOS das placas-mãe. A vantagem, neste caso, é que as memórias Flash do tipo NOR, ofereciam tempos de leitura muito rápidos! Esse foi o começo da historia das memórias Flash.

Arquitetura

Embora existam dois tipos de memória Flash, a arquitetura interna delas é bem semelhante. Cada célula de memória segue basicamente o mesmo padrão, com dois transistores que representam o “Control Gate“, que é usado para ativar a célula e fazer a leitura dos dados, e o “Floating Gate“, que é onde são armazenadas as informações.

O Floating Gate fica exatamente entre duas camadas de óxido de silício, que por sua vez são carregadas negativamente. Isso impede que os elétrons armazenados no Floating Gate “escapem”. Por isso que as memórias Flash têm a capacidade de armazenar dados sem a necessidade de alimentação elétrica por vários anos, até mesmo uma década. Veja uma representação de sua estrutura:

Célula de memória Flash
Arquitetura de uma célula de memória Flash

Este desing é muito eficaz, pois simplifica muito a construção destas memórias. Visto que não é preciso alimentação elétrica ou mesmo periodicamente ficar dando um refresh nos dados, como nas antigas memórias SRAM e DRAM, é possível fazer grandes quantidades num pequeno espaço, e o principal, sem muitos custos.

Um processo de programação grava os dados no Floating Gate, já que eles não passam de tensões elétricas. Isso acontece quando a corrente elétrica flui do “emissor” para o “coletor” e é aplicada uma tensão maior, de 12 volts, no Control Gate. Esta alta tensão serve para puxar os elétrons que estão fluindo do “emissor” para o “coletor”, para o Floating Gate, e uma vez lá, eles estarão presos para sempre, devido às duas camadas de óxido de silício! MUAHAHAHAHA!!! Assim, é só programar a célula e pronto, os dados poderão ser lidos inúmeras vezes por um longo período de tempo. Coisa linda de se ver, você não acha?

Para regravar dados na célula, é preciso primeiro apagar os já existentes. Isso é feito aplicando-se uma corrente elétrica que flui do “emissor” para o Control Gate, essa corrente “limpa” o Floating Gate, eliminando qualquer carga elétrica ali armazenada. Isso faz com que a célula retorne ao seu estado original e então passe pelo mesmo processo explicado no parágrafo acima, de gravação de dados. A regravação só pode ser feita um número finito de vezes, de 10 a 100 mil vezes. Daí aquele mito de que os SSDs têm uma vida útil curta, mas como você viu neste artigo, isso é puro mito, pois você leva muito tempo para alcançar o limite.

Tipos de memória Flash

Existem dois tipos de memória Flash: as NOR e as NAND. A primeira tecnologia a ser desenvolvida foi a NOR, lançada em 1988. Ela tem um sistema de endereçamento muito semelhante à das tradicionais memórias RAM, que usamos em nossos PCs, inclusive com suporte ao Xip (eXecute in Place), que permite rodar programas diretamente da memória. Isso é perfeito, pois elas poderiam substituir as memórias ROM, até então usadas para gravar o BIOS das placas-mães.

As memórias NOR tinham a vantagem de serem extremamente rápidas na leitura dos dados armazenados, mas jogando contra elas tinham a sua extrema lerdeza na hora de gravá-los. Essa peculiaridade fez com que elas fossem usadas para guardar o BIOS de placas-mães e firmwares de muitos equipamentos, desde celulares produzidos até 2006, até as atuais impressoras, roteadores, set-up boxes, e outros, pois nesse caso não é preciso gravar dados com constância.

Flash NOR
Chips de memória Flash NOR

As Flash NAND, que são usadas atualmente, são muito mais baratas que as NOR e, além disso, muito mais rápidas na hora de gravar dados. A diferença dela em relação às NOR, é o sistema de endereçamento. As NAND usam um sistema de páginas de 4 KB que são acessadas de forma serial, da mesma forma que é feito em um HD.

Elas não têm a capacidade de rodar programas a partir de si mesmas, como as NOR têm. Para rodar algum software, é necessário primeiro copiá-lo para a memória RAM. Por isso que o sistema operacional enxerga esses tipos de memória Flash mais como um HD convencional do que como uma memória. Só podemos guardar dados. Por isso que as Flash NAND são usadas em SSDs, pendrives, cartões de memórias, em smartphones e outros dispositivos: são baratas e muito rápidas para gravar dados.

Flash NAND
Chips de memória Flash NAND

Tecnologias

Mesmo assim, as memórias Flash só passaram a ser amplamente usadas depois do desenvolvimento de algumas tecnologias que otimizaram o seu uso e fabricação. Originalmente, os chips de memória se valiam de uma tecnologia chamada SLC (Single-Level Cell).

Neste molde, cada célula só armazenava um único bit (1 ou 0), portanto só eram usadas duas tensões diferentes para definir se o bit seria 0 ou 1. Isso não permitia a criação de chips com maior capacidade, mas permitia que eles tivessem uma maior confiabilidade.

Tanto é que até hoje essa tecnologia é usada em dispositivos para servidores, para garantir a segurança e confiabilidade dos dados. No entanto, sabemos que entre confiabilidade e tamanho, usuários domésticos preferem muito mais o tamanho do seu dispositivo. Quanto maior, melhor! Para isso, foi criada a tecnologia MLC (Multi-Level Cell), que como você já deve estar imaginando, é uma evolução da SLC.

Na MLC cada célula de memória armazena dois bits, ao invés de apenas um. Isso foi conseguido por se usar quatro tensões diferentes, em vez de apenas duas. Provavelmente, as fabricantes já estejam desenvolvendo um meio para guardar 3 bits em cada célula, fazendo uso de oito tensões diferentes.

Essa técnica aumenta a capacidade do drive, porém implica negativamente em sua confiabilidade, já que a controladora terá de lidar com mais variantes, e em se tratando de circuitos eletrônicos, tudo tem que ser muito exato e específico. Porém, isso não afetou em nada as vendas, já que a maioria esmagadora dos dispositivos que fazem uso da memória Flash, como pendrives e SSDs, usam chips MLC.

Outra técnica que popularizou e barateou as memórias Flash NAND foi o Die-Stacking. Ela consiste em empilhar vários chips de memória, conectá-los entre si e fechá-los num mesmo encapsulamento, que tem o mesmo formato e pinagem de um chip tradicional.

Por mais incrível que possa parecer, o maior gasto para se fabricar uma memória flash, é justamente no encapsulamento. Portanto, é mais barato colocar oito chips numa mesma cápsula, do que ter oito chips separados, cada um com seu encapsulamento.

Die-Stacking
Técnica Die-Stacking

Após essa breve história sobre as memórias Flash, podemos facilmente concluir que elas possibilitaram a indústria saltar grandes distâncias, visto que elas foram lançadas há pouco mais de vinte anos. Quem, em sã consciência, vinte anos atrás, poderia imaginar um mundo portátil, com pessoas se comunicando com aparelhos minúsculos, tendo mais informação na palma da mão do que elas com uma grande enciclopédia? Vou ser generoso e dizer que quase ninguém. Qual será a próxima tecnologia de armazenamento de dados, àquela que substituirá as memórias Flash? Você tem alguma aposta? Bom, espero que tenha gostado do artigo e até a próxima.

Tags: Hardware

Você também vai gostar

Leia também!