SGPIO - SGPIO
L'entrée/sortie série à usage général (SGPIO) est un bus à quatre signaux (ou à quatre fils) utilisé entre un adaptateur de bus hôte (HBA) et un fond de panier . Sur les quatre signaux, trois sont pilotés par le HBA et un par le fond de panier. En règle générale, le HBA est un contrôleur de stockage situé à l'intérieur d'un serveur, d'un ordinateur de bureau, d'un rack ou d'un poste de travail qui s'interface avec des disques durs ou des disques SSD pour stocker et récupérer des données. Il est considéré comme une extension du concept d' entrée/sortie à usage général (GPIO).
La spécification SGPIO est maintenue par le Small Form Factor Committee dans la norme SFF-8485 . L' interprétation internationale du motif de clignotement indique comment les signaux SGPIO sont interprétés en diodes électroluminescentes (DEL) clignotantes sur les baies de disques et les fonds de panier de stockage.
Histoire
SGPIO a été développé en tant que collaboration d'ingénierie entre American Megatrends Inc, à l'époque fabricant de fonds de panier, et LSI-Logic en 2004. SGPIO a ensuite été publié par le comité SFF sous le nom de spécification SFF-8485 .
Adaptateurs de bus hôte
Le signal SGPIO se compose de 4 signaux électriques ; il provient généralement d'un adaptateur de bus hôte (HBA). Les connecteurs iPass (généralement SFF-8087 ou SFF-8484) transportent les deux connexions électriques SAS/SATA entre le HBA et les disques durs ainsi que les 4 signaux SGPIO.
Fond de panier avec interface de bus SGPIO
Un fond de panier est une carte de circuit imprimé avec des connecteurs et des circuits d'alimentation auxquels les disques durs sont connectés ; ils peuvent avoir plusieurs emplacements, chacun pouvant être rempli d'un disque dur. Typiquement, le fond de panier est équipé de LED qui, par leur couleur et leur activité, indiquent l'état de l'emplacement ; généralement, la LED d'un emplacement émet une couleur particulière ou un motif de clignotement pour indiquer son état actuel.
Interprétation SGPIO et modèles de clignotement des LED
Bien que de nombreux fournisseurs de matériel définissent leur propre modèle de clignotement des LED, la norme commune pour l'interprétation SGPIO et le modèle de clignotement des LED peut être trouvée dans la spécification IBPI .
Sur les fonds de panier, les fournisseurs utilisent généralement 2 ou 3 LED par emplacement - dans les deux implémentations, une LED verte indique la présence et/ou l'activité - pour les fonds de panier avec 2 LED par emplacement, la deuxième LED indique l' état tandis que dans les fonds de panier avec 3 Les deuxième et troisième LED indiquent Locate et Fail .
Caractéristiques électriques du bus SGPIO
Le bus SGPIO se compose de 4 lignes de signaux et provient du HBA, appelé initiateur et se termine à un fond de panier , appelé cible . Si un fond de panier (ou une cible ) n'est pas présent, le HBA peut toujours piloter le bus sans endommager le système ; s'il existe, il peut communiquer avec le HBA à l'aide du 4e fil.
Le bus SGPIO est un bus à collecteur ouvert avec des résistances pull-up de 2,0 kΩ situées au niveau du HBA et du fond de panier - comme sur tout bus à collecteur ouvert, les informations sont transférées par des périphériques sur le bus tirant les lignes à la terre (GND) à l'aide d'un transistor à collecteur ou FET à drain ouvert .
Lignes de signaux du bus SGPIO
Horloge
Le bus SGPIO a une ligne d'horloge dédiée pilotée par l'initiateur (sa fréquence d'horloge maximale est de 100 kHz), bien que de nombreuses implémentations en utilisent des plus lentes (généralement 48 kHz).
Chargez
Cette ligne est synchrone à l'horloge et sert à indiquer le début d'une nouvelle trame de données ; une nouvelle trame SGPIO est indiquée par SLoad étant haut à un front montant d'une horloge après avoir été bas pendant au moins 5 cycles d'horloge. Les 4 fronts d'horloge descendants suivants après une condition de démarrage sont utilisés pour transporter une valeur de 4 bits du HBA vers le fond de panier ; la définition de cette valeur est propriétaire et varie selon les fournisseurs de système.
SDataOut
Cette ligne transporte 3 bits de données du HBA vers le fond de panier : le premier bit transporte généralement l' activité ; le deuxième bit porte localiser ; et le troisième bit porte fail . Une valeur faible pour le premier bit indique aucune activité et une valeur élevée indique une activité .
SDataIn
Cette ligne est utilisée par le fond de panier et indique une condition du fond de panier au HBA. Le premier bit étant élevé indique généralement la présence d'un lecteur. Les deux bits suivants sont généralement inutilisés et bas. Étant donné que cette ligne serait élevée pour les 3 bits lorsqu'aucun fond de panier n'est connecté, un HBA peut détecter la présence d'un fond de panier lorsque le deuxième ou le troisième bit du SDataIn est bas.
Le SDataIn et le SdataOut se répètent ensuite avec 3 horloges par lecteur jusqu'à ce que le dernier lecteur soit atteint, et le cycle recommence.
Implémentation SGPIO
Il existe différentes manières d'implémenter le bus SGPIO entre les fournisseurs de HBA et de contrôleurs de stockage - certains fournisseurs enverront un flux continu de données, ce qui est avantageux pour mettre à jour rapidement les LED sur un fond de panier après le retrait et la réinsertion des câbles, tandis que d'autres envoient données uniquement lorsqu'il est nécessaire de mettre à jour le modèle de LED.
Adoption de la spécification SGPIO
SGPIO et la spécification SGPIO. est généralement adopté et implémenté dans les produits de la plupart des principaux fournisseurs de HBA et de contrôleurs de stockage tels que LSI , Intel , Adaptec , Nvidia , Broadcom , Marvell Technology Group et PMC-Sierra . La plupart des produits livrés avec la prise en charge des disques SAS et SATA prennent en charge cette norme.
Conditions de temporisation SGPIO
La spécification SGPIO demande à la cible de désactiver tous les indicateurs lorsque SClock, SLoad et SDataOut ont été élevés pendant 64 ms ; en pratique, cela n'est pas systématiquement suivi par tous les fournisseurs. De plus, dans les implémentations de certains fournisseurs, l'horloge peut être interrompue sporadiquement ou arrêtée pendant ou entre les cycles. Une autre variation - plutôt peu pratique - entre les fournisseurs est l'état dans lequel l'horloge est laissée après un cycle.
Implémentations de fond de panier du bus SGPIO
L'idée derrière cette spécification était de pouvoir utiliser des CPLD ou des microcontrôleurs à faible coût sur un fond de panier pour piloter des LED ; dans la pratique, il a été constaté qu'il existe des variations dans la synchronisation et les interprétations des bits entre les fournisseurs, ainsi un simple CPLD ne fonctionnerait que pour une implémentation spécifique soigneusement testée avec un produit d'un fournisseur. Un microcontrôleur est plus applicable à cette fin, bien que le bus personnalisé de l'interface SGPIO à 4 bits ne soit pas implémenté sur eux - l'échantillonnage des lignes à 4 bits à l'aide des opérations GPIO à 100 kHz est trop lent pour de nombreux microcontrôleurs à faible coût à gérer lors de la manipulation LED et autres fonctions simultanément. La longueur du flux binaire varie entre le HBA ou le contrôleur de stockage ; certains fournisseurs arrêtent le flux binaire lorsqu'ils atteignent le lecteur souhaité, tandis que d'autres le synchronisent jusqu'au bout. Certains flux de bits de l'extenseur SAS peuvent atteindre 108 (36×3) bits.
La mise en œuvre la plus sûre qui garantit la compatibilité entre tous les fournisseurs de HBA et de contrôleurs de stockage consiste à utiliser un ASIC , en particulier une combinaison d'un cœur de microcontrôleur avec une interface matérielle SGPIO ; ce concept a été breveté en 2006 par AMI et implémenté dans une série de puces de contrôleur de fond de panier nommées MG9071 , MG9072 , MG9077 et MG9082 .
Ces puces recevront 1 ou 2 flux SGPIO et piloteront les LED en conséquence ; la dernière puce d'AMI, la MG9077 , peut être configurée par des résistances pull-up et pull-down pour adopter 16 configurations différentes de bus SGPIO et piloter les LED en conséquence. Depuis la disponibilité de ces puces auprès d'AMI, les principaux équipementiers, notamment NEC , Hitachi , Supermicro , IBM , Sun Microsystems et d'autres, les utilisent sur leurs fonds de panier pour recevoir les flux SGPIO d'une variété de fournisseurs de HBA et de puces de contrôleur embarquées. pour piloter systématiquement les LED avec un motif de clignotement prédéterminé.
Liens externes
- Spécification SFF-8485 pour le bus série GPIO (SGPIO)
- Documents SFF (Documents & Spécifications)