Présentation du SSD. Partie 2. Interface

Présentation du SSD. Partie 2. Interface

В dernière partie Dans la série « Introduction au SSD », nous avons parlé de l'histoire de l'apparition des disques. La deuxième partie parlera des interfaces pour interagir avec les lecteurs.

La communication entre le processeur et les périphériques s'effectue selon des conventions prédéfinies appelées interfaces. Ces accords réglementent le niveau physique et logiciel de l'interaction.

L'interface est un ensemble d'outils, de méthodes et de règles d'interaction entre les éléments du système.

L'implémentation physique de l'interface affecte les paramètres suivants :

  • capacité des canaux de communication ;
  • nombre maximum d'appareils connectés simultanément ;
  • nombre d'erreurs qui se produisent.

Les interfaces de disque sont construites sur Ports d'E/S, ce qui est à l'opposé des E/S mémoire et n'occupe pas d'espace dans l'espace d'adressage du processeur.

Ports parallèles et série

Selon la méthode d'échange de données, les ports d'E/S sont divisés en deux types :

  • parallèle;
  • cohérent.

Comme son nom l'indique, un port parallèle envoie un mot machine composé de plusieurs bits à la fois. Un port parallèle constitue le moyen le plus simple d’échanger des données, car il ne nécessite pas de solutions de circuits complexes. Dans le cas le plus simple, chaque bit d'un mot machine est envoyé le long de sa propre ligne de signal, et deux lignes de signal de service sont utilisées pour le retour : Données prêtes и Données acceptées.

Présentation du SSD. Partie 2. Interface
Les ports parallèles semblent très bien évoluer à première vue : plus de lignes de signal signifient que plus de bits sont transférés à la fois et, par conséquent, un débit plus élevé. Cependant, en raison de l'augmentation du nombre de lignes de signaux, des interférences se produisent entre elles, entraînant une distorsion des messages transmis.

Les ports série sont l'opposé des ports parallèles. Les données sont envoyées bit par bit, ce qui réduit le nombre total de lignes de signaux mais ajoute de la complexité au contrôleur d'E/S. Le contrôleur émetteur reçoit un mot machine à la fois et doit transmettre un bit à la fois, et le contrôleur récepteur doit à son tour recevoir les bits et les stocker dans le même ordre.

Présentation du SSD. Partie 2. Interface
Un petit nombre de lignes de signal vous permet d'augmenter la fréquence de transmission des messages sans interférence.

SCSI

Présentation du SSD. Partie 2. Interface
L'interface pour petits systèmes informatiques (SCSI) est apparue en 1978 et a été conçue à l'origine pour combiner des périphériques de différents profils en un seul système. La spécification SCSI-1 prévoyait la connexion jusqu'à 8 périphériques (avec le contrôleur), tels que :

  • scanners;
  • lecteurs de bande (streamers);
  • lecteurs optiques;
  • lecteurs de disque et autres appareils.

SCSI s'appelait à l'origine Shugart Associates System Interface (SASI), mais le comité des normes n'a pas approuvé le nom de l'entreprise, et après une journée de réflexion, le nom Small Computer Systems Interface (SCSI) est né. Le « père » du SCSI, Larry Boucher, voulait que l'acronyme soit prononcé « sexy », mais Dal Allan J'ai lu « scuzzy » (« dis-moi »). Par la suite, la prononciation de « skazi » a été fermement assignée à cette norme.

Dans la terminologie SCSI, les périphériques connectés sont divisés en deux types :

  • initiateurs;
  • appareils cibles.

L'initiateur envoie une commande au périphérique cible, qui envoie ensuite une réponse à l'initiateur. Les initiateurs et les cibles sont connectés à un bus SCSI commun, qui a une bande passante de 1 Mo/s selon la norme SCSI-5.

La topologie « bus commun » utilisée impose un certain nombre de restrictions :

  • Aux extrémités du bus, des dispositifs spéciaux sont nécessaires - des terminateurs ;
  • La bande passante du bus est partagée entre tous les appareils ;
  • Le nombre maximum d'appareils connectés simultanément est limité.

Présentation du SSD. Partie 2. Interface

Les appareils sur le bus sont identifiés par un numéro unique appelé ID cible SCSI. Chaque unité SCSI du système est représentée par au moins un périphérique logique, qui est adressé à l'aide d'un numéro unique au sein du périphérique physique. Numéro d'unité logique (LUN).

Présentation du SSD. Partie 2. Interface
Les commandes SCSI sont envoyées sous forme blocs de description de commande (Command Descriptor Block, CDB), composé d'un code d'opération et de paramètres de commande. La norme décrit plus de 200 commandes, réparties en quatre catégories :

  • Obligatoire - doit être pris en charge par l'appareil ;
  • Optionnel - peut être mis en œuvre ;
  • Spécifique au fournisseur - utilisé par un fabricant spécifique ;
  • Obsolète - commandes obsolètes.

Parmi les nombreuses commandes, seules trois d’entre elles sont obligatoires pour les appareils :

  • UNITÉ DE TEST PRÊTE — vérifier l'état de préparation de l'appareil ;
  • DEMANDE DE SENS — demande le code d'erreur de la commande précédente ;
  • ENQUÊTE — demande des caractéristiques de base de l'appareil.

Après avoir reçu et exécuté la commande, le périphérique cible envoie à l'initiateur un code d'état qui décrit le résultat de l'exécution.

Une nouvelle amélioration du SCSI (spécifications SCSI-2 et Ultra SCSI) a élargi la liste des commandes utilisées et augmenté le nombre de périphériques connectés à 16 et la vitesse d'échange de données sur le bus à 640 Mo/s. Le SCSI étant une interface parallèle, l'augmentation de la fréquence d'échange de données était associée à une diminution de la longueur maximale du câble et entraînait des désagréments d'utilisation.

À partir de la norme Ultra-3 SCSI, la prise en charge du « hot plugging » est apparue : connecter des périphériques lorsque l'appareil est sous tension.

Le premier disque SSD connu doté d'une interface SCSI peut être considéré comme le M-Systems FFD-350, sorti en 1995. Le disque avait un coût élevé et n'était pas répandu.

Actuellement, le SCSI parallèle n'est pas une interface de connexion de disque populaire, mais le jeu de commandes est toujours activement utilisé dans les interfaces USB et SAS.

ATA/PATA

Présentation du SSD. Partie 2. Interface
Interface ATA (Advanced Technology Attachment), également connu sous le nom de PATA (Parallel ATA) a été développé par Western Digital en 1986. Le nom commercial de la norme IDE (Integrated Drive Electronics) mettait l'accent sur une innovation importante : le contrôleur de disque était intégré au disque, plutôt que sur une carte d'extension séparée.

La décision de placer le contrôleur à l’intérieur du lecteur a résolu plusieurs problèmes à la fois. Premièrement, la distance entre le variateur et le contrôleur a diminué, ce qui a un effet positif sur les caractéristiques du variateur. Deuxièmement, le contrôleur intégré n'était « adapté » que pour un certain type de lecteur et, par conséquent, était moins cher.

Présentation du SSD. Partie 2. Interface
ATA, comme SCSI, utilise une méthode d'E/S parallèle, qui affecte les câbles utilisés. Pour connecter des disques à l'aide de l'interface IDE, des câbles à 40 fils, également appelés câbles, sont nécessaires. Les spécifications plus récentes utilisent des boucles de 80 fils : dont plus de la moitié sont des masses pour réduire les interférences dans les hautes fréquences.

Le câble ATA comporte de deux à quatre connecteurs, dont l'un est connecté à la carte mère et le reste aux disques. Lors de la connexion de deux appareils avec un seul câble, l'un d'eux doit être configuré comme Master, et le second - comme Esclave. Le troisième appareil peut être connecté exclusivement en mode lecture seule.

Présentation du SSD. Partie 2. Interface
La position du cavalier spécifie le rôle d'un périphérique spécifique. Les termes maître et esclave en relation avec les appareils ne sont pas tout à fait corrects, car par rapport au contrôleur, tous les appareils connectés sont des esclaves.

Une innovation particulière dans ATA-3 est l'apparence Auto-surveillance, Technologie d'analyse et de reporting (S.M.A.R.T.). Cinq sociétés (IBM, Seagate, Quantum, Conner et Western Digital) ont uni leurs forces et standardisé leur technologie pour évaluer l'état des disques.

La prise en charge des disques SSD est apparue avec la quatrième version de la norme, publiée en 1998. Cette version de la norme offrait des vitesses de transfert de données allant jusqu'à 33.3 Mo/s.

La norme propose des exigences strictes pour les câbles ATA :

  • le train doit être plat ;
  • la longueur maximale du train est de 18 pouces (45.7 centimètres).

Le train court et large était gênant et gênait le refroidissement. Il est devenu de plus en plus difficile d'augmenter la fréquence de transmission à chaque version ultérieure de la norme, et ATA-7 a radicalement résolu le problème : l'interface parallèle a été remplacée par une interface série. Après cela, ATA a acquis le mot Parallel et est devenu connu sous le nom de PATA, et la septième version de la norme a reçu un nom différent - Serial ATA. La numérotation des versions SATA commençait à partir d'une.

SATA

Présentation du SSD. Partie 2. Interface
La norme Serial ATA (SATA) a été introduite le 7 janvier 2003 et a résolu les problèmes de son prédécesseur avec les changements suivants :

  • le port parallèle a été remplacé par un port série ;
  • le câble large à 80 fils est remplacé par un câble à 7 fils ;
  • La topologie « bus commun » a été remplacée par une connexion « point à point ».

Malgré le fait que la norme SATA 1.0 (SATA/150, 150 Mo/s) était légèrement plus rapide que l'ATA-6 (UltraDMA/130, 130 Mo/s), la transition vers une méthode d'échange de données en série a « préparé le terrain » pour augmentation des vitesses

Les seize lignes de signaux pour la transmission des données dans l'ATA ont été remplacées par deux paires torsadées : une pour la transmission, l'autre pour la réception. Les connecteurs SATA sont conçus pour être plus résistants aux reconnexions multiples, et la spécification SATA 1.0 a rendu possible le branchement à chaud.

Certaines broches des disques sont plus courtes que toutes les autres. Ceci est fait pour prendre en charge le Hot Swap. Pendant le processus de remplacement, l'appareil « perd » et « trouve » des lignes dans un ordre prédéterminé.

Un peu plus d'un an plus tard, en avril 2004, la deuxième version de la spécification SATA était publiée. En plus d'une accélération jusqu'à 3 Gbit/s, SATA 2.0 a introduit la technologie File d'attente de commande native (NCQ). Les appareils prenant en charge NCQ sont capables d'organiser indépendamment l'ordre dans lequel les commandes reçues sont exécutées pour obtenir des performances maximales.

Présentation du SSD. Partie 2. Interface
Au cours des trois années suivantes, le groupe de travail SATA a travaillé pour améliorer les spécifications existantes et dans la version 2.6, des connecteurs compacts Slimline et micro SATA (uSATA) sont apparus. Ces connecteurs sont une version plus petite du connecteur SATA d'origine et sont conçus pour les lecteurs optiques et les petits lecteurs des ordinateurs portables.

Même si la deuxième génération de SATA disposait de suffisamment de bande passante pour les disques durs, les SSD en exigeaient davantage. En mai 2009, la troisième version de la spécification SATA a été publiée avec une bande passante augmentée à 6 Gbit/s.

Présentation du SSD. Partie 2. Interface
Une attention particulière a été portée aux disques SSD dans l'édition SATA 3.1. Un connecteur Mini-SATA (mSATA) est apparu, conçu pour connecter des disques SSD dans les ordinateurs portables. Contrairement à Slimline et uSATA, le nouveau connecteur était similaire au PCIe Mini, bien qu'il ne soit pas électriquement compatible avec PCIe. En plus du nouveau connecteur, SATA 3.1 offrait la possibilité de mettre en file d'attente les commandes TRIM avec les commandes de lecture et d'écriture.

La commande TRIM informe le SSD des blocs de données qui ne transportent pas de charge utile. Avant SATA 3.1, l'exécution de cette commande entraînait le vidage des caches et la suspension des E/S, suivie d'une commande TRIM. Cette approche dégradait les performances du disque lors des opérations de suppression.

La spécification SATA n'a pas pu suivre la croissance rapide des vitesses d'accès aux disques SSD, ce qui a conduit à l'apparition en 2013 d'un compromis appelé SATA Express dans la norme SATA 3.2. Au lieu de doubler à nouveau la bande passante SATA, les développeurs ont utilisé le bus PCIe, largement utilisé, dont la vitesse dépasse 6 Gbit/s. Les disques prenant en charge SATA Express ont acquis leur propre facteur de forme appelé M.2.

SAS

Présentation du SSD. Partie 2. Interface
Le standard SCSI, « concurrençant » l'ATA, ne s'est pas arrêté non plus et juste un an après l'apparition du Serial ATA, en 2004, il renaît en tant qu'interface série. Le nom de la nouvelle interface est SCSI en série (CAREX).

Malgré le fait que SAS ait hérité du jeu de commandes SCSI, les changements ont été importants :

  • interface série ;
  • Câble d'alimentation à 29 fils ;
  • connexion point à point

La terminologie SCSI a également été héritée. Le contrôleur est toujours appelé l’initiateur et les appareils connectés sont toujours appelés la cible. Tous les appareils cibles et l'initiateur forment un domaine SAS. Dans SAS, le débit de connexion ne dépend pas du nombre d'appareils dans le domaine, puisque chaque appareil utilise son propre canal dédié.

Le nombre maximum de périphériques connectés simultanément dans un domaine SAS selon la spécification dépasse 16 XNUMX, et au lieu d'un identifiant SCSI, un identifiant est utilisé pour l'adressage. Nom mondial (WWN).

WWN est un identifiant unique de 16 octets, analogue à une adresse MAC pour les périphériques SAS.

Présentation du SSD. Partie 2. Interface
Malgré la similitude des connecteurs SAS et SATA, ces normes ne sont pas totalement compatibles. Cependant, un disque SATA peut être connecté à un connecteur SAS, mais pas l'inverse. La compatibilité entre les disques SATA et le domaine SAS est assurée grâce au SATA Tunneling Protocol (STP).

La première version de la norme SAS-1 a un débit de 3 Gbit/s, et la plus moderne, SAS-4, a amélioré ce chiffre de 7 fois : 22,5 Gbit/s.

PCIe

Présentation du SSD. Partie 2. Interface
Peripheral Component Interconnect Express (PCI Express, PCIe) est une interface série pour le transfert de données, apparue en 2002. Le développement a été lancé par Intel, puis transféré à une organisation spéciale - PCI Special Interest Group.

L'interface série PCIe n'a pas fait exception et est devenue une suite logique du PCI parallèle, conçu pour connecter des cartes d'extension.

PCI Express est très différent de SATA et SAS. L'interface PCIe possède un nombre variable de voies. Le nombre de lignes est égal à des puissances de deux et varie de 1 à 16.

Le terme « voie » dans PCIe ne fait pas référence à une ligne de signal spécifique, mais à un seul canal de communication full-duplex composé des lignes de signal suivantes :

  • réception+ et réception-;
  • transmission+ et transmission-;
  • quatre conducteurs de mise à la terre.

Le nombre de voies PCIe affecte directement le débit maximum de la connexion. La norme moderne PCI Express 4.0 vous permet d'atteindre 1.9 Go/s sur une ligne et 31.5 Go/s lors de l'utilisation de 16 lignes.

Présentation du SSD. Partie 2. Interface
L’appétit pour les disques SSD augmente très rapidement. SATA et SAS n'ont pas le temps d'augmenter leur bande passante pour « suivre » les SSD, ce qui a conduit à l'émergence de disques SSD avec connexions PCIe.

Bien que les cartes d'extension PCIe soient vissées, PCIe est remplaçable à chaud. Les broches PRSNT courtes (présent en anglais - présent) permettent de s'assurer que la carte est complètement installée dans le slot.

Les disques SSD connectés via PCIe sont réglementés par une norme distincte Spécification de l'interface du contrôleur hôte à mémoire non volatile et sont incarnés dans une variété de facteurs de forme, mais nous en parlerons dans la partie suivante.

Lecteurs distants

Lors de la création de grands entrepôts de données, il est devenu nécessaire de disposer de protocoles permettant de connecter des lecteurs situés à l'extérieur du serveur. La première solution dans ce domaine a été InternetSCSI (iSCSI), développé par IBM et Cisco en 1998.

L'idée du protocole iSCSI est simple : les commandes SCSI sont « enveloppées » dans des paquets TCP/IP et transmises au réseau. Malgré la connexion à distance, l'illusion est créée pour les clients que le lecteur est connecté localement. Un réseau de stockage (SAN) basé sur iSCSI peut être construit sur l'infrastructure réseau existante. L'utilisation d'iSCSI réduit considérablement le coût d'organisation d'un SAN.

iSCSI a une option « premium » - Protocole Fibre Channel (FCP). Un SAN utilisant FCP est construit sur des lignes de communication à fibre optique dédiées. Cette approche nécessite un équipement de réseau optique supplémentaire, mais est stable et offre un débit élevé.

Il existe de nombreux protocoles pour envoyer des commandes SCSI sur des réseaux informatiques. Cependant, il n'existe qu'une seule norme qui résout le problème inverse et permet d'envoyer des paquets IP sur le bus SCSI : IP sur SCSI.

La plupart des protocoles SAN utilisent le jeu de commandes SCSI pour gérer les lecteurs, mais il existe des exceptions, telles que de simples ATA sur Ethernet (AoE). Le protocole AoE envoie des commandes ATA dans des paquets Ethernet, mais les lecteurs apparaissent comme SCSI dans le système.

Avec l'avènement des disques NVM Express, les protocoles iSCSI et FCP ne répondent plus aux demandes rapidement croissantes des SSD. Deux solutions sont apparues :

  • déplacer le bus PCI Express hors du serveur ;
  • création du protocole NVMe over Fabrics.

La suppression du bus PCIe implique la création d'équipements de commutation complexes, mais ne modifie pas le protocole.

Le protocole NVMe over Fabrics est devenu une bonne alternative à iSCSI et FCP. NVMe-oF utilise une liaison fibre optique et le jeu d'instructions NVM Express.

DDR-T

Présentation du SSD. Partie 2. Interface
Les normes iSCSI et NVMe-oF résolvent le problème de la connexion des disques distants en tant que disques locaux, mais Intel a emprunté une voie différente et a rapproché le disque local le plus possible du processeur. Le choix s'est porté sur les emplacements DIMM dans lesquels la RAM est connectée. La bande passante maximale d'un canal DDR4 est de 25 Go/s, ce qui est nettement supérieur à la vitesse du bus PCIe. C'est ainsi qu'est né le SSD à mémoire persistante Intel® Optane™ DC.

Un protocole a été inventé pour connecter les disques aux emplacements DIMM DDR-T, physiquement et électriquement compatible avec la DDR4, mais nécessitant un contrôleur spécial qui voit la différence entre la clé USB et le lecteur. La vitesse d'accès du lecteur est plus lente que celle de la RAM, mais plus rapide que celle de NVMe.

La DDR-T est uniquement disponible avec les processeurs Intel® Cascade Lake ou version ultérieure.

Conclusion

Presque toutes les interfaces ont parcouru un long chemin depuis les méthodes de transfert de données série vers parallèle. Les vitesses des SSD augmentent rapidement ; hier encore, les SSD étaient une nouveauté, mais aujourd'hui, le NVMe n'est plus particulièrement surprenant.

Dans notre laboratoire Laboratoire Sélectel vous pouvez tester vous-même les disques SSD et NVMe.

Seuls les utilisateurs enregistrés peuvent participer à l'enquête. se connecters'il te plait.

Les disques NVMe remplaceront-ils prochainement les SSD classiques ?

  • 55.5%Oui100

  • 44.4%Non80

180 utilisateurs ont voté. 28 utilisateurs se sont abstenus.

Source: habr.com

Ajouter un commentaire