Home Flash SSD

Flash SSD

Componentes Flash

A memória Flash de estado sólido está disponível usando a tecnologia NAND e NOR. A tecnologia NOR permite o endereçamento aleatório direto e o fluxo de dados da mesma forma que um chip de memória RAM normal, permitindo que seja usado para armazenamento e execução de programas em um sistema de processamento. Os chips NOR Flash são mais lentos, menos densos e têm uma capacidade de resistência de reescrita limitada, tornando-os inferiores às soluções baseadas em NAND quando usados ​​como alternativa a um disco rotativo.   

A memória Flash de estado sólido está disponível usando a tecnologia NAND e NOR. A tecnologia NOR permite o endereçamento aleatório direto e o fluxo de dados da mesma forma que um chip de memória RAM normal, permitindo que seja usado para armazenamento e execução de programas em um sistema de processamento. Os chips NOR Flash são mais lentos, menos densos e têm uma capacidade de resistência de reescrita limitada, tornando-os inferiores às soluções baseadas em NAND quando usados ​​como alternativa a um disco rotativo.   

A tecnologia NAND Flash é uma memória serial como uma unidade de disco. Os dados são endereçados e armazenados em blocos, em vez de bits ou bytes endereçáveis ​​individuais. Unidades de estado sólido baseadas em Flash NAND são projetadas para imitar um disco magnético rotativo da perspectiva do sistema, oferecendo tempo de acesso mais rápido e taxas de transferência de dados comparáveis. A principal desvantagem de um SSD em relação ao disco magnético é a densidade de dados e o custo por megabyte.

Componentes Flash
 
Nesta seção, vamos nos concentrar nos componentes NAND, pois eles dominam as ofertas de SSD. Os componentes NAND Flash vêm em densidades de 1 Gb (gigabit) a 64 Gb por chip. Há também configurações de Célula de Nível Único (SLC) e Célula de Nível Múltiplo (MLC), com SLC capaz de armazenar um único bit por célula e MLC capaz de armazenar mais de 1 bit por célula.  
 
Semelhante aos setores e trilhas em uma unidade magnética, os componentes NAND Flash possuem estruturas chamadas páginas e blocos. Páginas são setores e blocos são análogos a trilhas e, assim como em um disco, existe um Código de Correção de Erro (ECC) associado a cada setor. Uma configuração de componente NAND Flash comum é de 128 páginas de 4,096+128 bytes cada para um tamanho de bloco de 512 KB. Os dados são lidos e gravados sequencialmente, também como um disco.
 
O NAND Flash também possui defeitos de célula inerentes, muito parecidos com defeitos de superfície em um disco. Por causa disso, blocos de dados sobressalentes são fornecidos no dispositivo e uma tabela de remapeamento é fornecida no dispositivo para permitir que o software do sistema mascare os blocos de dados defeituosos à medida que são descobertos. 
 
Ao contrário de um disco magnético, o NAND Flash tem uma resistência de reescrita limitada de cerca de 1,000,000 de vezes por bloco. Você simplesmente não pode escrever nos mesmos blocos indefinidamente. Por causa disso, um esquema de nivelamento de desgaste é usado para mover áreas acessadas com mais frequência, como um diretório, periodicamente. O nivelamento de desgaste é semelhante à desfragmentação de um disco rígido; no entanto, no caso do NAND Flash, isso precisa acontecer ou os dados podem ser perdidos.
 
Algum suporte para nivelamento de desgaste é incorporado a alguns chips Flash, embora essa função seja executada principalmente pelo controlador ou pela camada de software do sistema. Muito esforço é feito para ocultar a atividade de nivelamento de desgaste para que não interfira no desempenho normal do dispositivo.
 
O grupo Open NAND Flash Interface (ONFI) desenvolveu um padrão para componentes NAND Flash que foi amplamente adotado pela indústria. Esse padrão fornece um conjunto de comandos e E/S comuns e efetivamente padronizou uma arquitetura comum para componentes compatíveis com ONFI. Essa arquitetura inclui os seguintes elementos comuns:
 
  • Interface de dados – geralmente 8 bits, às vezes 16 bits em partes mais densas
  • Controlador de E/S – multiplexa dados, comandos e tipos de palavras de status. Decodifica comandos
  • Lógica de controle – Gerencia o handshake da transação de E/S com o controlador Flash
  • Registrador de Endereço – Identifica o bloco a ser acessado para leitura ou escrita
  • Registro de dados/cache – um registro estático de palavra única para armazenar dados entre E/S e Array
  • Registro de status – Sinaliza erros em transações e fluxo de dados
  • Decodificação de linha/coluna – divide o valor do endereço em valores de página
  • Flash Array – as células Flash organizadas em linhas e colunas

 

peças de flash
Diagrama de bloco de componente flash SSD típico
 
A tabela abaixo descreve cada uma das linhas de E/S e de controle com mais detalhes para as peças ONFI NAND Flash padrão. 
 
Linha de Controle
Descrição
Uso
DE
Entrada
Ativação da trava de endereço: durante o tempo ALE é ALTO, as informações de endereço são
transferido de I/O[7:0] para o registrador de endereço no chip. Após um BAIXO para ALTO
transição em WE#—quando as informações de endereço não estão sendo carregadas—os sinais ALE
deve ser conduzido para BAIXO.
CE #
Entrada
Ativação de chip: transferências de portões entre o sistema host e o dispositivo NAND Flash.
Após o dispositivo ficar ocupado ou iniciar uma operação PROGRAM ou ERASE, CE# pode ser
negado. Consulte “Operação do barramento” na página 16 para obter detalhes operacionais adicionais.
CLE
Entrada
Ativação da trava de comando: quando CLE está em nível ALTO, as informações são transferidas de
I/O [7:0] para o registro de comando on-chip na borda de subida de WE#. Quando
as informações de comando não estão sendo carregadas, os sinais CLE devem ser direcionados para BAIXO.
BLOQUEIO
Entrada
Quando LOCK é HIGH durante a inicialização, a função BLOCK LOCK é habilitada.
Para desativar o BLOCK LOCK, conecte LOCK ao VSS durante a inicialização ou deixe-o
desconectado (pull-down interno).
REI#
Entrada
Habilitar leitura: transferências de portas do dispositivo NAND Flash para o sistema host.
NÓS#
Entrada
Ativação de gravação: transferências de portas do sistema host para o dispositivo NAND Flash.
WP#
Entrada
Proteção contra gravação: protege contra operações inadvertidas de PROGRAM e ERASE. Todos
As operações PROGRAM e ERASE são desativadas quando WP# é LOW.
E/S[7:0] (x8)
E/S[15:0] (x16)
I / O
Entradas/saídas de dados: Endereço de transferência de sinais de E/S bidirecionais, dados e instruções
Informação. Os dados são emitidos apenas durante as operações READ; outras vezes o I/O
sinais são entradas.
R/B#
saída
Pronto/ocupado: O sinal pronto/ocupado é uma saída ativa de dreno aberto, que usa um
resistor pull-up externo. O sinal é usado para indicar quando o chip está processando um
operação PROGRAMAR ou APAGAR. O sinal também é usado durante as operações READ para
indicam quando os dados estão sendo transferidos do array para o registrador de dados seriais.
Quando essas operações forem concluídas, o sinal de pronto/ocupado retorna para a alta impedância
Estado.
VCC
Supply
VCC: A bola VCC é a fonte de alimentação.
VSS
Supply
VSS: A bola VSS é a conexão de aterramento.
 
Algumas das características deste padrão incluem:
 
  • Descoberta - permite que o controlador Flash determine as características do componente Flash
  • Endereçamento LUN – permite que o controlador ative operações em componentes Flash de forma independente
  • Interleaving – permite que o controlador sincronize as operações em um conjunto de componentes Flash
  • Cache – permite que os dados fluam de/para o controlador independentemente das operações do array Flash
  • Copyback – permite que o componente Flash mova dados de um bloco para outro sem o envolvimento direto do controlador
 
Os principais fornecedores de componentes SSD Flash no mercado desde o início de 2010 incluem:
 
  • Hynix
  • Intel
  • mícron
  • SanDisk
  • Toshiba
  • Numonyx (ST Micro)
  • Samsung
 
Cada fornecedor oferece uma variedade de capacidades, velocidades e recursos para se diferenciar de seus concorrentes.
Os projetistas de sistemas realizam uma série de compensações ao selecionar um fornecedor e um componente Flash específico para seu produto SSD e mercado(s)-alvo.  
 
As compensações incluem:
 
  • Programático – custo, cronograma, suporte, garantia e disponibilidade.
  • Técnicos – desempenho, potência, opções de pacote, recursos, escalabilidade e flexibilidade.
  • Outros – comunalidade, compatibilidade, documentação, suporte ao desenvolvimento, teste e reputação.
 
No processo de seleção do componente Flash, o projetista do sistema também faz a mesma análise para o controlador Flash e outras peças necessárias no projeto do SSD. É um processo iterativo para encontrar a combinação certa de fornecedores e componentes para melhor atender aos requisitos de um produto específico.   
 
evolução da tecnologia
 
A próxima geração de componentes Flash está integrando mais funcionalidade ao componente básico e oferecendo uma interface inteligente em vez de um barramento de memória Flash padrão do tipo ONFI usado por SSDs atualmente.
 
Inicialmente, essa abordagem permitirá que componentes NAND Flash sejam aproximados do barramento do processador host para produtos como dispositivos móveis, oferecendo grande capacidade de armazenamento e suporte para streaming e gravação de dados em alta definição. 
 
Para o PC, atualmente não há padrão “DIMM” para NAND Flash no PC. É necessário. Isso incluiria um tamanho de módulo, conector, tipo de barramento, gerenciamento de erros e drivers. 
 
Guias Relacionados: