Arquitetura SSD
Embora a memória FLASH seja a base das unidades de estado sólido (SSDs) e dos dispositivos baseados em FLASH (pen drives USB), antes que os dados cheguem à memória FLASH, eles precisam passar por diversos outros componentes do SSD . As funções principais de um SSD incluem endereçamento FLASH, controle, tratamento de erros e escalonamento.
Uma combinação de abordagens de hardware, firmware e software é usada para cada uma dessas funções de gerenciamento de unidade, com compensações sendo feitas pelo projetista do sistema para estabelecer a combinação ideal para cada unidade baseada em flash.
As principais compensações incluem:
- Desempenho
- Latência de acesso
- Taxa de leitura sustentada
- Taxa de gravação sustentada
- Tempo de reformatação (TRIM)
- Limites físicos e objetivos
- Embalagem (fator de forma, PWB e pacotes de componentes disponíveis)
- Consumo e dissipação de energia
- Peso
- Dimensionamento (adicionar peças, usar peças mais densas, adicionar submódulos)
- Custo
- Oferta de base competitiva
- Oferta em escala competitiva
- Interface do Sistema
- Fixo (uma e apenas uma interface de sistema de destino)
- Disponível com diferentes interfaces (ou seja: SATA e SAS)
- Disponível com várias interfaces (ou seja: 1394/Firewire e USB)
Depois que um conjunto de requisitos é estabelecido para um SSD individual, o arquiteto do sistema pode explorar uma ampla variedade de abordagens para atender aos requisitos. É um processo iterativo onde várias soluções são geradas, simuladas, testadas e comparadas, com um projeto de sistema sendo finalmente selecionado para implementação.
Este projeto final do sistema identifica quais partes de cada uma das funções de gerenciamento (endereçamento, controle, tratamento de erros e dimensionamento) devem ser fornecidas por hardware, firmware e software – tanto no nível de oferta do produto quanto no driver de software no host nível.
Figura 1 ilustra uma visão geral do componente de sistema arquitetônico comum associado a qualquer sistema SDD. A Tabela 1 fornece detalhes resumidos para cada componente da área funcional.
Figura 2 ilustra uma implementação equivalente mais simples com a qual a maioria das pessoas está familiarizada; – um pen drive USB. No caso do pen drive, um simples até dois chips FLASH são combinados com um único chip controlador para compor um drive SSD. O controlador utiliza firmware para muitas funções em vez de hardware dedicado (e mais rápido). No caso de pendrives, o custo é o critério primordial, de modo que mais funções são executadas no software do controlador e no driver do host, em vez do hardware.