Un SSD, pour solid-state drive, est un matériel informatique permettant le stockage de données, constitué de mémoire flash. Le terme anglais « solid-state » signifie que ce matériel ne comporte pas de pièces mobiles, contrairement au disque dur classique, sur lequel les données sont écrites sur un support magnétique mobile.
Les SSD offrent un temps d'accès bien plus rapide qu'un disque dur à plateau (0,1 ms contre 13 ms), des débits augmentés jusqu'à 350 Mo/s en lecture et 300 Mo/s en écriture pour les modèles exploitant l'interface SATA III, ainsi qu'une consommation électrique diminuée. Cette technologie vue par beaucoup comme successeur aux disques durs classiques peine à s'imposer en raison de tarifs de vente très élevés.
Les SSD utilisant de la DRAM au lieu de la mémoire flash ne peuvent assurer le maintien de leur contenu qu’avec des batteries et pour une durée limitée.
Le but principal d'un SSD à l'heure actuelle est de s'affranchir des déficiences des disques durs classiques : leur mécanique et leur fragilité, des temps d'accès aux données dépendant de la vitesse de rotation des plateaux et de la vitesse de déplacement des têtes, qui ne progresse qu'au rythme des faibles innovations apportées. La majorité des disques tournent à 7 200 tr/min, soit environ 4,2 ms de latence moyenne, et le temps moyen de recherche (temps nécessaire aux têtes pour se mettre en position) est le plus souvent compris entre 8 ms et 12 ms pour un disque dur grand public, ce qui donne donc un temps d'accès moyen compris entre 12 et 16 ms. Ce temps d'accès moyen n'a pas évolué significativement pendant plus de dix ans, alors que les vitesses des processeurs, des mémoires vives, des cartes vidéos et d'un bon nombre des composants d'un PC ont toutes fait des progrès considérables. En se basant sur de la mémoire flash, on supprime en théorie le problème des temps d'accès, car ce temps est de l'ordre de 0,1 ms seulement. La réactivité de l'ordinateur est donc considérablement augmentée.
Un SSD est composé de deux éléments principaux. Le premier est un certain nombre de puces de mémoire flash, de technologie en général très similaire à celle employée dans les cartes-mémoire des appareils photos, téléphones portables, etc... Le second est un contrôleur de disque et un micrologiciel permettant l'interface entre les puces de mémoire et le reste de l'ordinateur et qui s'occupe donc de la façon dont les données seront gérées lorsque le reste de l'ordinateur lui demandera de lire ou d'écrire des données.
En général, comme un SSD est amené à remplacer un disque dur d'un PC classique, les puces de mémoire se doivent d'être de bonne qualité et d'une fiabilité exemplaire. De même, le contrôleur a une importance toute particulière. Contrairement aux disques durs dont la technologie est développée depuis des décennies, les SSD sont très récents et par conséquent un contrôleur trop bas de gamme pourra nuire considérablement aux performances, voire avoir un effet totalement contre-productif dessus. De nos jours le contrôleur fait ou défait les performances d'un SSD. De même, la durée de vie du SSD sera très dépendante de celle des mémoires flash le composant, bien qu'en général, les constructeurs mettent toujours une quantité de mémoire supérieure à celle vendue pour des raisons d'optimisation des performances et de la durée de vie.
Il existe deux types de mémoire flash : la SLC (Single Level Cell), dans laquelle chaque cellule élémentaire peut stocker un seul bit (deux niveaux de charge) et la MLC (Multi Level Cell), dans laquelle les cellules peuvent stocker plusieurs bits (le plus souvent, 2 bits, soit 4 niveaux de charge, mais parfois 3 bits, soit 8 niveaux de charge, dans les MLC "X3" introduites en 2009).
Le stockage de plusieurs bits par cellule permet de diminuer fortement le coût de fabrication, puisque la densité est au minimum doublée, mais dégrade les performances, surtout en écriture, et réduit grandement la durée de vie des cellules (sur des mémoires 50nm, on passe de 100 000 cycles écriture/effacement en SLC à 10 000 en MLC, soit une durée de vie divisée par 10).
La majorité des SSD grand public utilisent de la mémoire MLC, tandis que la mémoire SLC se retrouve dans les SSD destinées aux entreprises et aux serveurs, ce qui crée le problème principal de la SSD du grand public : la limite des cycles d'écriture.
La commande TRIM, disponible sur la plupart des modèles récents de SSD, permet aux systèmes d'exploitation modernes, tels que les systèmes Linux à partir du noyau 2.6.33 ou le système d'exploitation Microsoft à partir de Windows 7, d'éviter que les performances ne se dégradent avec le temps. Elle sert à notifier le SSD lors de l'effacement d'un fichier. Le contrôleur du SSD peut alors effacer les cellules de mémoire flash anciennement utilisées, afin d'optimiser les écritures ultérieures qui pourront alors être effectuées sans avoir à réaliser l'effacement préalable imposé par la technologie de la mémoire flash.
Afin de délivrer le maximum de leurs débit, il existe des SSD réliés directement à la carte mère par le biais d'un connecteur PCI Express, à l'image d'une carte graphique. Ceci permet à certains SSD de dépasser la barre du Go/s, alors que les interfaces SATA sont limitées à 600 Mo/s pour les toutes dernières générations, et même 300 Mo/s pour les interfaces SATA les plus répandues.
Les SSD au format PCI Express sont le plus souvent constitués d'un contrôleur SATA RAID interfaçant 2 à 8 SSD SATA placés directement sur la carte, permettant ainsi d'obtenir une solution RAID clé en main et bien plus compacte qu'une carte SATA RAID raccordée à des SSD SATA classiques au format 2,5 ou 3,5 pouces.