Visão geral da tecnologia Flash

Classificação instantânea

O nome completo do Flash é memória flash, geralmente chamada de "memória flash". É frequentemente usado em campos incorporados, como telefones celulares, plataformas, placas-mãe de computadores, etc. A maioria dos dispositivos de armazenamento móveis, como unidades flash USB, SDCard, cartões MMC e cartões TF, também usam Flash como mídia de armazenamento.

A memória Flash pode ser dividida principalmente em vários tipos: NOR Flash, NAND Flash, eMMC e UFS.

  • O flash NOR suporta execução no chip e pode executar código diretamente nele. O driver de software é mais simples que o NAND. Geralmente, o tipo NOR de pequena capacidade é usado porque o NOR de pequena capacidade tem uma velocidade de leitura rápida. O NOR Flash leva muito tempo para ser apagado, mas fornece endereçamento e barramento de dados completos e permite acesso aleatório a qualquer área da memória, o que o torna muito adequado para substituir chips ROM antigos. Naquela época, os chips ROM eram usados ​​principalmente para armazenar códigos que raramente precisavam ser atualizados, como o BIOS do computador ou o firmware do decodificador (Set-top Box). O NOR Flash pode suportar de 10.000 a 1 milhão de ciclos de apagamento e gravação e é a base para as primeiras mídias de armazenamento flash removíveis.

  • NAND Flash : NAND Flash tipo Toshiba anunciado no International Solid State Circuit Symposium (ISSCC) em 1989. Para ler e gravar dados no Nand Flash, são necessários controle mestre externo e projeto de circuito. . O NAND Flash tem um tempo de apagamento mais rápido e a área de cada célula de memória também é menor, o que permite que o NAND Flash tenha maior densidade de armazenamento e menor custo por bit que o NOR Flash. Ao mesmo tempo, sua capacidade de apagamento é dez vezes maior que a do NOR Flash. No entanto, a interface de E/S do NAND Flash não possui um barramento de endereço externo de acesso aleatório. Ela deve ser lida em bloco. O tamanho típico do bloco do NAND Flash é de centenas a milhares de bits.
    Como a maioria dos microprocessadores e microcontroladores exigem acesso aleatório em nível de byte, o NAND Flash não é adequado para substituir a ROM usada para carregar programas. Dessa perspectiva, o NAND Flash é mais parecido com dispositivos de armazenamento secundário, como discos ópticos e discos rígidos. O NAND Flash é muito adequado para uso em dispositivos de armazenamento em massa, como cartões de memória. A primeira mídia de armazenamento removível baseada em NAND Flash foi SmartMedia.Desde então, muitas mídias de armazenamento também adotaram NAND Flash, incluindo MultiMediaCard, Secure Digital, Memory Stick e cartões xD.

  • eMMC MMC (Embedded Multi Media Card) é estabelecido pela MMC Association. eMMC é equivalente ao IC de controle principal NandFlash+. O protocolo de interface externa é o mesmo dos cartões SD e TF. É principalmente uma especificação padrão para memória incorporada em produtos como como telefones celulares ou tablets. Uma vantagem óbvia do eMMC é que um controlador está integrado ao pacote, que fornece uma interface padrão e gerencia a memória flash, permitindo que os fabricantes de telefones celulares se concentrem em outras partes do desenvolvimento do produto e reduzam o tempo de comercialização dos produtos. Esses recursos são igualmente importantes para os fornecedores de NAND que desejam reduzir o tamanho e o custo da litografia. eMMC consiste em uma solução de armazenamento embarcada com interface MMC (Multimedia Card), dispositivo de memória flash (Nand Flash) e controlador host, tudo em um pequeno pacote BGA. Com velocidades de interface de até 52 MBytes por segundo, o eMMC tem desempenho rápido e escalonável. Ao mesmo tempo, sua tensão de interface pode ser 1,8 V ou 3,3 V.

  • UFS (Universal Flash Storage), falando de UFS, devemos falar de seu antecessor eMMC. eMMC é um cartão multimídia integrado e uma memória não volátil incorporada especificada pela Associação JEDEC. Ele usa tecnologia de transmissão paralela, e a leitura e a escrita devem ser realizadas separadamente. Embora forneça apenas funções de leitura e escrita de canal único, ainda tem as vantagens de tamanho pequeno, alta integração e baixa complexidade. O mais recente padrão eMMC 5.1 tem uma velocidade de leitura contínua de cerca de 250 MB/s.
    O UFS foi lançado pela JEDEC em 2011. Ele usa uma nova tecnologia de transmissão serial e pode ler e escrever operações simultaneamente. A primeira geração do UFS não foi amplamente popularizada devido à pequena diferença de velocidade em relação ao padrão eMMC da época e ao custo relativamente alto. Somente com o advento do padrão UFS 2.0 em 2014, com uma velocidade de leitura contínua de aproximadamente 800 MB/s, é que o UFS se tornou a configuração padrão gradualmente adotada pelos principais telefones Android. O padrão UFS 3.1 mais recente tem uma velocidade de leitura contínua de aproximadamente 1.700 MB/s. Neste momento, a velocidade de transmissão do UFS está muito à frente do eMMC.

FTL

FTL, anteriormente conhecido como "Flash Translation Layer", funciona entre o flash simples (como flash nand, nem flash, flash spi, etc.) e o sistema de arquivos. Ele simula o flash simples como um dispositivo de bloco comum. O sistema de arquivos é montado é o mesmo que o disco rígido, portanto não há necessidade de se preocupar com a camada subjacente. Qual é o meio de hardware. Portanto, FTL geralmente integra gerenciamento de blocos defeituosos, algoritmos de balanceamento dinâmico, mapeamento linear de endereços e outros algoritmos. FTL geralmente é executado no lado da CPU como software. Por exemplo, os sistemas de arquivos yaffs e ubifs implementam funções FTL. Para memórias do tipo eMMC e UFS, eles próprios implementam funções FTL.

MTD

Memory Technology Device é uma tecnologia projetada e desenvolvida pelo kernel Linux para gerenciar uniformemente o flash simples. Ele abstrai as operações flash mencionadas acima e fornece interfaces padrão para sistemas de arquivos de camada superior, como jiffs, yaffs, yaffs2 e ubifs. MTD é equivalente à tecnologia de particionamento de disco no PC. Um bloco inteiro de flash é particionado de acordo com a configuração (como a tabela de partição no arquivo dts do kernel) e, em seguida, o sistema de arquivos é formatado em cada partição, de modo que esta partição pode hospedar Os arquivos ou imagens correspondentes, como BootLoader e kernel, estão disponíveis. Deve-se observar que o MTD não pode gerenciar dispositivos como eMMC e UFS.

Sistema de arquivo

Para flash diferente, diferentes sistemas de arquivos precisam ser selecionados. Para flash simples, como flash NOR e flash NAND, não há FEL em si, e o sistema de arquivos precisa implementar funções relacionadas ao FEL, como jiffs, yaffs e ubifs
.

Para flash como mmc emmc ufs SD, o dispositivo de armazenamento de hardware integra o algoritmo FTL, para que o sistema operacional possa montar diretamente sistemas de arquivos de PC, como ext4 ext3 FAT32.

Acho que você gosta

Origin blog.csdn.net/linux_embedded/article/details/129736045
Recomendado
Clasificación