Un contrôleur SSD, également appelé processeur, comprend l'électronique qui relie les composants de la mémoire Flash aux interfaces d'entrée/sortie SSD. Le contrôleur est un processeur intégré qui exécute un logiciel au niveau du micrologiciel. Le micrologiciel SSD est spécifique à l'appareil et, dans la plupart des cas, peut être mis à jour.
Un contrôleur SSD, également appelé processeur, comprend l'électronique qui relie les composants de la mémoire Flash aux interfaces d'entrée/sortie SSD. Le contrôleur est un processeur intégré qui exécute un logiciel au niveau du micrologiciel. Le micrologiciel SSD est spécifique à l'appareil et, dans la plupart des cas, peut être mis à jour.
Les contrôleurs SSD grand public incluent les éléments électriques suivants, souvent contenus dans un seul circuit intégré (CI) :
- Processeur intégré - généralement un microcontrôleur 32 bits
- ROM du micrologiciel de données effaçables électriquement
- RAM système
- Prise en charge de la RAM externe - généralement DDR/DDR2 en tant que SDRAM
- Circuit de code de correction d'erreur (ECC)
- Interface de composant Flash - généralement une interface standard telle que l'Open NAND Flash Interface (ONFI)
- Interface électrique hôte - généralement SATA, USB, SAS ou combinaison
Bien que la majorité des produits SSD sur le marché utilisent des composants Flash standard, il existe de nouveaux composants Flash disponibles qui intègrent l'ECC et, dans certains cas, l'ensemble de la fonction de contrôleur dans les puces Flash elles-mêmes. Pour les besoins de cet article, nous nous concentrerons sur les factions de contrôleurs traditionnelles répertoriées ci-dessus.
Éléments typiques du contrôleur SSD
Le tableau ci-dessous décrit plus en détail chacun de ces éléments.
Éléments du contrôleur
|
Description
|
Utilisation
|
Processeur
|
Microcontrôleur embarqué 16 ou 32 bits, programmé en C dans la plupart des cas, et compilé pour fonctionner sur le moteur CPU cible.
|
Exécution du micrologiciel pour l'application Flash principale ainsi que des fonctions de diagnostic (SMART), de nivellement d'usure (Garbage collection/TRIM), de mise en cache et de sécurité.
|
Correction d'erreurs (ECC)
|
Une fonction matérielle qui ajoute des bits de redondance à chaque octet stocké afin de fournir une détection et une correction des erreurs de données lors de la lecture.
|
La détection et la correction des erreurs de données sont effectuées automatiquement dans le matériel ECC pour obtenir un taux d'erreur de fiabilité des données de l'ordre de 1 bit 10E-12.
|
Contrôleur Flash
|
Contient l'adressage, le bus de données et le contrôle pour gérer un ou plusieurs composants Flash. Un contrôleur SSD typique gère jusqu'à 512 Go de Flash.
|
Généralement l'interface Flash NAND ouverte 8 bits (ONFI) pour la mémoire flash NAND standard.
Peut généralement contrôler jusqu'à 16 composants Flash.
|
Contrôleur DRAM
|
Contient l'adressage, le bus de données et le contrôle pour gérer un ou plusieurs composants DRAM. Un contrôleur SSD typique peut gérer jusqu'à 256 Mo de DRAM.
|
La DRAM est principalement utilisée comme mémoire tampon pour faire correspondre le flux de données de la matrice Flash à l'interface d'E/S. Cette mémoire peut également être utilisée comme cache de données pour améliorer les performances globales. Cela nécessite la programmation du micrologiciel
|
Interface d'E/S (c'est-à-dire : SATA)
|
Contient l'interface électrique native selon une norme de système ouvert particulière telle que SATA, USB ou SAS. L'interface est contrôlée par le pilote du micrologiciel du contrôleur. L'adressage et l'établissement de liaison de base sont effectués dans le matériel.
|
Certains contrôleurs permettent le transfert de données entre des interfaces, telles que USB et SATA, sans intervention du contrôleur dans le flux de données.
|
Mémoire du contrôleur
|
Composé d'une mémoire programmée (ROM) et d'une mémoire tampon/bloc-notes étroitement couplée au processeur. Cette mémoire est utilisée par le contrôleur pour l'exécution du programme et pour stocker les valeurs du bloc-notes. Dans certaines applications à coût limité, la RAM agit comme le seul tampon de données pour le SSD.
|
Est généralement de 32 à 64 Ko de ROM et de 128 à 256 Ko ou de RAM.
|
Configuration de la puce
|
Établit le réglage des types et des vitesses des composants de mémoire utilisés, des entrées d'horloge, des E/S de diagnostic et des sorties d'état des voyants.
|
Varie selon le fournisseur.
|
E / S générales
|
Broches programmables à usage général disponibles pour l'application.
|
Généralement 4 à 16 broches fournies.
|
Emballage
|
|
Le BGA à 281 broches est courant
Le LQFP 208 broches est commun
|
Contrôleurs SSD couramment utilisés
Les contrôleurs SSD courants sur le marché au début de 2010 incluent :
- Indilinx "Pieds nus ECO" IDX110MO1
- Indilinx "Pieds nus" IDX110M00
- Intel PC29AS21BA0
- Micron JMF602
- Micron JMF612
- Marvel 88SS9174-BJP2
- Samsung S3C29RBB01-YK40
- SandForce SF-1200
- SandForce SF-1500
- Toshiba T6UG1XBG
Les concepteurs de systèmes effectuent une série de compromis lors de la sélection d'un fournisseur et d'un contrôleur particulier pour leur produit cible et leur(s) marché(s) cible(s).
Les compromis comprennent :
- Programmatique – coût, calendrier, support, garantie et disponibilité.
- Technique - performances, puissance, options de package, fonctionnalités, évolutivité et flexibilité.
- Autre - points communs, compatibilité, documentation, support de développement, tests et réputation.
Lors du processus de sélection du contrôleur, le concepteur du système effectue également la même analyse pour les composants Flash et les autres composants nécessaires à la conception. Il s'agit d'un processus itératif pour trouver la bonne combinaison de fournisseurs et de composants pour répondre au mieux aux exigences d'un produit particulier.
En raison de problèmes de propriété, toutes les données de conception du contrôleur ne sont pas accessibles au grand public sur Internet. Il existe cependant une quantité importante de détails d'application qui peuvent être appris pour chacun des contrôleurs SSD sur le marché en étudiant leur utilisation dans les SSD existants.
Avis sur StorageReview.com et ailleurs aideront à discerner les avantages de chaque contrôleur et son effet sur le SSD. Ces références contextuelles sont importantes car, aussi critique que soit le contrôleur dans les performances d'un SSD, les performances des SSD peuvent varier entre deux fournisseurs différents, même s'ils utilisent exactement le même composant de contrôleur SSD.
Généralement, cet écart de performances est dû au fait que les deux conceptions utilisaient des composants Flash différents, un nombre différent de composants Flash, une quantité différente de mémoire tampon de cache ou utilisaient peut-être un micrologiciel optimisé d'une manière ou d'une autre. Le fait est que le contrôleur SDD n'est qu'une partie de la conception globale d'un système SSD et bien qu'il soit essentiel pour les performances, ce n'est pas le seul facteur à prendre en compte lors de la prise de décision d'achat d'un SSD.
Guides connexes:
Retour à la Guide SSD