Memória flash

Origem: Wikipédia, a enciclopédia livre.
Exemplo de uma memória flash utilizada em um flash drive USB (ou pen drive).

Memória flash é uma memória de computador do tipo EEPROM (Electrically-Erasable Programmable Read-Only Memory), desenvolvida na década de 1980 pela Toshiba, cujos chips são semelhantes ao da Memória RAM, permitindo que múltiplos endereços sejam apagados ou escritos numa só operação. Em termos leigos, trata-se de um chip re-escrevível que, ao contrário de uma memória RAM convencional, preserva o seu conteúdo sem a necessidade de fonte de alimentação.[1][2] Esta memória é comumente usada em cartões de memória, flash drives USB (pen drives), SSD, MP3 Players, dispositivos como os iPods com suporte a vídeo, PDAs, armazenamento interno de câmeras digitais e celulares.

Memória flash é do tipo não-volátil, o que significa que não precisa de energia para manter as informações armazenadas no chip. Além disso, a memória flash oferece um tempo de acesso rápido, embora não tão rápido como a memória volátil (DRAM utilizadas para a memória principal em PCs), e melhor resistência do que discos rígidos. Estas características explicam a popularidade da memória flash em dispositivos portáteis. Outra característica da memória flash é que, quando embaladas em "cartões de memória", são extremamente duráveis, sendo capazes de resistir a pressão intensa, variações extremas de temperatura, e até mesmo imersão em água.[3]

Uma limitação é que a memória flash tem um número finito de modificações (escrita/exclusão). Porém este efeito é parcialmente compensado por alguns chips firmware ou drivers de arquivos de sistema de forma dinâmica e escreve contando o remapeamento dos blocos, a fim de difundir as operações escritas entre os setores.[3]

História

A memória flash (ambos os tipos, NOR e NAND), foi inventada pelo Dr.Fujio Masuoka enquanto trabalhava para a Toshiba em 1980. De acordo com a Toshiba, o nome "flash" foi sugerido por um colega do Dr. Masuoka, Sr. Shoji Ariizumi, pois o processo de apagamento do conteúdo da memória se assemelhava ao flash de uma câmera fotográfica. O Dr. Masuoka apresentou a invenção ao IEEE 1984 International Electron Devices Meeting (IEDM) realizada em San Francisco, Califórnia. A Intel viu o enorme potencial da invenção e introduziu o primeiro chip flash comercial do tipo NOR em 1988. O flash baseado em NOR leva muito tempo para gravar e apagar, porém fornece completamente o endereço e o barramento de dados, permitindo o acesso aleatório a qualquer posição da memória. Isso o torna um substituto adequado para o antigos chips ROM (Read-Only Memory), que são utilizados para armazenar o código do programa que raramente precisa ser atualizado, como a BIOS ou a firmware do set-top boxes de um computador. Sua resistência é de 10.000 a 1.000.000 de ciclos de limpeza. O NOR baseado em flash foi a base do início da mídia removível baseada em flash, o compactflash veio a ser baseado nele, embora mais tarde os cartões tenham deixado de custar caro igual aos flash baseado em NAND.

Vantagens

Cartão de memória que utiliza a tecnologia flash

As maiores vantagens desse tipo de memória é sua ocupação mínima de espaço, seu baixo consumo de energia, sua alta resistência, sua durabilidade e segurança, contando com recursos como ECC (Error Correcting Code), que permite detectar erros na transmissão de dados. A tecnologia faz uso de semicondutores (solid state), sendo assim, não tem peças móveis, evitando problemas de causa mecânica.[1][2]

Também vem começando a ser chamado de disco sólido pelo grande futuro que tem pela frente, já que além de ser muito mais resistente que os discos rígidos atuais, apresenta menor consumo de energia elétrica, latências e peso muito mais baixos. Chega a utilizar apenas 5% dos recursos normalmente empregados na alimentação de discos rígidos.

Com tantas vantagens, a tendência futura é que os fabricantes de computadores tendem a substituir os disco rígidos por unidades flash. O que poderá ser expandida para os desktop nos próximos 5 anos, pois a sua fabricação ainda é de alto custo para as empresas.[1]

Flash NAND e NOR

Existem dois tipos de memórias flash, a NAND e a NOR.

Dois chips de memória flash em comparação com uma moeda

Flash NOR

A memória flash NOR (Not OR) permite acessar os dados da memória de maneira aleatória, com alta velocidade. Foi a primeira a se popularizar, chegando ao mercado em 1988, seus chips possuem uma interface de endereços semelhante à da RAM, sendo utilizado para armazenar o BIOS das placas-mãe e também firmwares de vários dispositivos, que antes eram armazenados em ROM ou EPROM. Alguns dos problemas nesse tipo de memória devem-se ao seu alto custo, e ao seu alto tempo de gravação nas células. Mas embora esses problemas existam, ela é largamente utilizada até hoje em celulares, palmtops e firmware. Chegaram a ser empregadas na fabricação das memórias PCMCIA e CompactFlash, mas com a introdução do tipo NAND, desapareceram deste ramo.[2][4]

Flash NAND

A memória flash NAND (Not AND) trabalha em alta velocidade, faz acesso sequencial às células de memória e trata-as em conjunto, isto é, em blocos de células, em vez de acessá-las de maneira individual.[2] Essa arquitetura foi introduzida pela Toshiba em 1989. Cada bloco consiste em um determinado número de páginas. As páginas são tipicamente 512, 1024, 2048 ou 4096 bytes em tamanho. A página é associada a alguns bytes (tipicamente 12-16 bytes). Atualmente são os tipos de memória mais usados em dispositivos portáteis.[4]

Tamanhos típicos dos blocos

  • 32 páginas de 512 bytes para cada tamanho de um bloco de 16 kB
  • 64 páginas de 2048 bytes para cada tamanho de um bloco de 128 kB
  • 64 páginas de 4096 bytes para cada tamanho de um bloco de 256 kB
  • 128 páginas de 4096 bytes para cada tamanho de um bloco de 512 kB

Embora a programação seja realizada em uma página base,a exclusão dos dados só pode ser executada em um bloco base. Outra limitação do flash NAND é que um bloco de dados só pode ser escrito sequencialmente. Número de Operações (NOPs) é o número de vezes que os setores podem ser programados. A maior parte dos dispositivos NAND saem da fábrica com alguns blocos defeituosos, que normalmente são identificados e classificados de acordo com uma determinada marcação de bloco defeituoso. Ao permitir que alguns blocos defeituosos saiam os fabricantes alcançam mais rendimentos do que seria possível, caso todos os blocos fossem bons. Isto reduz significativamente os custos da Memória flash NAND e diminui ligeiramente a capacidade de armazenamento das partes.[3]

Principais diferenças entre NOR e NAND

  • As conexões das células individuais de memória são diferentes.
  • A densidade de armazenamento chips é atualmente mais elevado em memórias NAND.
  • O custo da NOR é muito mais elevado.
  • A NOR permite acessos aleatórios, enquanto a NAND permite apenas acesso sequencial à memória.
  • A leitura é muito mais rápida na NOR.

Sistema de Arquivos Flash

O conceito básico dos sistemas de arquivos flash é o seguinte: quando os dados armazenados vão ser atualizados, o sistema de arquivos faz uma cópia deles para um novo bloco de memória, remapeia os ponteiros de arquivo e depois apaga o antigo bloco quando tiver tempo. Na prática, esse sistema de arquivos é utilizado em dispositivos com memória flash embutida que não possuem controladores.

Os cartões de memória e drives USB flash são incorporados de controladores e devem desempenhar correção de erros, então o uso de um ou outro sistema de arquivos flash pode não acrescentar nenhum benefício, então os dispositivos flash removíveis utilizam o sistema de arquivos FAT universal, permitindo assim a compatibilidade com câmeras, computadores, PDAs e outros dispositivos portáteis com slots para cartões de memória.[3]

Padronização

Um grupo chamado Open Nand Flash Interface Working Group(ONFI) desenvolveu uma interface padronizada para os chips NAND flash, tornando possível a interoperabilidade entre dispositivos NAND de diferentes fornecedores. A versão 1.0 da especificação ONFI foi liberada em Dezembro de 2006, com as seguintes especificações:

  • interface física normalizada(pinout) para NAND flash em TSOP-48, LGA-52 e BGA-63.
  • um comando padrão estabelecido para ler, escrever e apagar dados nos chips NAND.
  • mecanismo de auto-identificação, comparável ao Serial Presence detection(características dos SDRAM)

O grupo tem apoio dos principais fabricantes de memória NAND - tais como a Intel, Micron Technology e Sony - e dos principais fabricantes de dispositivos que integram chips NAND. Alguns fornecedores, incluindo Intel, Dell e Microsoft, formaram um grupo para proporcionar um padrão de software e hardware programando interfaces para subsistemas de memória não-volátil, incluindo a flash cache, dispositivo ligado ao PCI Express.[3]

Taxas de Transferência

Geralmente é anunciada somente a velocidade máxima de leitura, pois os cartões de memória NAND são mais rápidos lendo do que escrevendo dados. O tempo de acesso influencia no desempenho, mas não tem tanta importância comparando com o disco rígido. Às vezes denotado em MB/s(megabytes por segundo), ou em número de “X” como 60x, 100x ou 150x. O “X” se refere à velocidade com que uma única unidade de CD entregaria os dados, 1x é o mesmo que 150 kilobytes por segundo. Por exemplo, um cartão de memória 100x vai a 150 KiB x 100 = 15000 KiB por segundo = 14,65 MiB por segundo (A velocidade exata depende da definição de Megabyte que o comerciante opta por utilizar).[3]

Substituto para discos rígidos

Uma extensão óbvia da memória flash seria um substituto para os discos rígidos, já que ela não possui as limitações mecânicas e latência dos mesmos. A ideia de um drive de estado sólido, ou SSD, torna-se atraente se considerarmos velocidade, ruído, consumo de energia e confiabilidade. Porém, ainda existem algumas desvantagens que devem ser consideradas. Por exemplo, o custo por gigabyte de memória flash ainda é maior do que dos discos rígidos. Algumas técnicas estão sendo utilizadas na tentativa de combinar as vantagens das duas tecnologias, usando a flash como uma cache de alta velocidade para arquivos do disco que são muito referenciados mas pouco modificados, tais como aplicativos e arquivos executáveis do sistema operacional.[3]

Referências

Ver também