Bus série, effet de mode ?

Magazine
Marque
Open Silicium
Numéro
7
Mois de parution
juin 2013
Spécialité(s)


Résumé

Tous les bits de données, mettez-vous en file indienne ! Depuis une grosse dizaine d'années maintenant, tous les « vieux » bus parallèles sont remplacés par des systèmes série avec de jolis noms : USB, SATA, HDMI, PCIe. S'agit-il d'un effet de mode ou d'un véritable progrès ?


Body

1. Contraintes mécaniques

Les bus d'interfaces cités en introduction mettent en œuvre des connecteurs permettant le raccordement de périphériques. Cela peut sembler une évidence, et pourtant ces pièces faites de métal et de plastique représentent un premier défi dans la communication. Dans l'idéal, ils doivent être petits, robustes, ne pas altérer le signal et, bien entendu, ne pas coûter trop cher. Nous sommes en droit d'imaginer que le premier critère a sonné le glas du port centronics, qui serait aujourd'hui fort disgracieux sur un laptop de 2cm d'épaisseur.

Pour les ports devant être accessibles hors d'un ordinateur, la robustesse doit être de mise ! Un connecteur compact avec de très nombreux fils est : soit fragile, soit difficile à brancher/débrancher, soit (hélas) les deux. D'ailleurs, en regardant les notices techniques de connecteurs, il y a matière à se faire peur avec des garanties données par les fabricants de quelques dizaines de cycles de connexion-déconnexion, voire parfois à peine une dizaine ! Le passage à une liaison série, avec peu de fils, réduit un peu les contraintes sur les connectiques, ce qui donne par exemple l'USB ou plus récemment le HDMI.

Mais alors, pourquoi sur les bus internes aux machines, tels que le PCI ou (feu) le PATA, la sérialisation s'est également imposée ? Probablement parce que le problème n'est pas seulement mécanico-marketing.

2. Contraintes électriques

Dans le monde idéal qui sert toujours d'introduction à l'apprentissage des principes de l'électricité et de l'électronique, les composants sont parfaits, les signaux toujours carrés ou sinusoïdaux, et l'environnement jamais hostile... Dans ce monde, les bus seraient peut-être encore parallèles. Hélas, le monde réel n'est jamais totalement numérique et de nombreux effets viennent perturber des plans pourtant si parfaits.

2.1. La diaphonie

Une définition possible pour le condensateur est de dire qu'il s'agit de deux armatures conductrices séparées par un isolant. Lorsque deux fils (conducteurs) parcourent une certaine distance côte à côte, par exemple dans un câble multi-brins, nous sommes en présence de condensateurs parasites, leurs gaines plastiques faisant alors office de diélectrique, voir Figure 1. Pour être précis, il s'agit de la capacité linéïque de la ligne. Tant que les niveaux électriques sont stables, aucun problème, le condensateur ne s'opposant qu'aux variations de potentiel. Par contre, lors de transitions, ces capacités parasites vont se charger ou se décharger, adieu les fronts droits des signaux carrés. La figure 2 montre un cas réel dans un câble nappe.

 

nappe_1

 

Figure 1 : Capacités parasites dans un bus

Tout conducteur traversé par un signal va rayonner autour de lui, il a un effet inductif. Si un autre conducteur est dans son environnement immédiat, il va «capter » ce rayonnement, ce qui va créer une différence de potentiel. Cette différence de potentiel (ddp) peut devenir importante, au point de créer des états considérés comme une transition sur le conducteur, avec toutes les désagréables conséquences que cela engendre.

Le fait que des conducteurs, en théorie indépendants, se perturbent, est appelé diaphonie.

 

fig2_signal_cable

 

Figure 2 : Atténuation des fronts : en jaune (en haut) le signal émis, en bleu (au dessous) le signal vu au bout du câble nappe

Par chance (ou génie de nos pairs), il existe des solutions pour en réduire les effets. Par exemple créer une paire torsadée avec chaque signal pour le blinder de sorte que même si les capacités parasites existent toujours, leurs effets sont globalement prédictibles et donc possibles à prendre en compte. Pour les bus planaires (sur PCB ou en câble nappe), cela revient à ajouter des fils à la masse entre les signaux, ce fut utilisé avec l'ultra-DMA pour les disques durs. Une variante est de transmettre deux signaux complémentaires au lieu d'un seul afin de mieux détecter les erreurs, méthode utilisée pour le SCSI (voir [SNLA033]). Si ces solutions fonctionnent bien, elles augmentent significativement le nombre de conducteurs, que ce soit dans les câbles ou sur les cartes.

2.2. Les ondes réfléchies

Que se passe-t-il lorsqu'un signal électrique arrive au bout d'un fil qui n'est connecté à rien ? Pour prendre un cas plus général, disons un signal parcourant un conducteur d'impédance X et qui arrive face à une impédance Y beaucoup plus grande (bout de fil «en l'air » ou entrée de certains transistors). Et bien dans ce cas, tout ou partie du signal est réfléchit et une part de son énergie revient en sens inverse dans le conducteur ! Le rapport entre l'énergie transmise et l'énergie qui revient est le coefficient de réflexion.

 

pci_reflected

 

Figure 3 : Utilisation des ondes réfléchies PCI

Bien entendu, ce signal en retour peut provoquer des effets apparentés à de la diaphonie (sinon, ce serait trop simple).

Pour éviter cela, il faut que le récepteur ou un système tiers absorbe l'énergie résiduelle. Souvenez vous, les «bouchons » sur les câbles réseau coaxiaux, c'était ça (!) idem pour les «terminaisons » sur les câbles SCSI...

3. Le cas du PCI

Pour celles et ceux ayant lu l'article « KNJN » dans Open Silicium 5, le PCI n'a presque plus de secret, à part peut-être au niveau électrique. Parmi les bus cités en introduction, il s'agit d'un cas un peu particulier, intéressant à double titre : d'une part, dans la version bus parallèle (PCI), il utilise au lieu de subir les ondes réfléchies présentées ci-dessus, d'autre part c'est un des (trop) rares cas d'évolution où une grande partie du standard antérieur a été conservée (lors de l'arrivée du PCI-Express).

Lorsqu'un périphérique PCI place un signal sur le bus, il ne fournit que la moitié de l'énergie nécessaire à la transition, par exemple pour passer d'un « 0 » logique (la masse) vers un « 1 » logique (5V ou 3,3V). Lorsque ce signal arrive à l'autre extrémité du bus, il est réfléchi et, au retour, augmente la tension visible sur le bus. La figure 3 montre une simulation d'un tel signal. À ce titre, le PCI a été l'un des premiers bus « green » car il consomme moins d'énergie pour les transitions.

Mais, comme tous les bus parallèles, ses contraintes de fonctionnement ont eu raison de lui, après tout de même le passage de 133MB/s (PCI 32bits et 33MHz) à 533MB/s (PCI 64bits et 66MHz), ainsi qu'un extrême sursaut avec PCI-X à 133MHz. Ainsi, le bus PCI est mort, vive le PCI-Express. Il serait extrêmement réducteur de dire que le PCI-Express n'est qu'une version sérialisée de PCI, de nombreux concepts ont été ajoutés (traitement d'erreur, gestion des files de messages). Toutefois, pour cet article, seule la comparaison physique est mise en avant.

La transmission de données avec PCI-Express se fait par des liens série point-à-point au moyen de paires différentielles (comme la plupart des autres me direz-vous, USB & Co). Chaque paire offre un lien à peu près à 500MB/s (250MB/s dans chaque sens, le lien étant full duplex). Le fait d'avoir utilisé le pluriel pour parler des paires n'est pas anodin, en effet le PCI-E permet d'agréger plusieurs canaux physiques d'où les termes de x2, x4... x32 et atteindre ainsi jusqu'à environ 16GB/s.

En guise de conclusion

S'il semble évident que le passage du parallèle au série va au-delà d'un simple effet de mode, c'est principalement vrai pour les systèmes à la recherche de bande passante toujours plus importante. L'avenir qui se dessine sera peut-être fait de la parallélisation de bus série, ce qui ne serait pas dénué d'un certain côté paradoxal. À moins que d'ici-là, de nouveaux moyens de codage du signal ne voient le jour, car après tout, l'augmentation des performances ne passe pas toujours par une course à la vitesse, comme l'a montré la course au Ghz, puis au nombre de threads dans les microprocesseurs.

Référence

[SNLA033] http://www.ti.com/general/docs/lit/getliterature.tsp?literatureNumber=snla033&fileType=pdf

 



Article rédigé par

Les derniers articles Premiums

Les derniers articles Premium

La place de l’Intelligence Artificielle dans les entreprises

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

L’intelligence artificielle est en train de redéfinir le paysage professionnel. De l’automatisation des tâches répétitives à la cybersécurité, en passant par l’analyse des données, l’IA s’immisce dans tous les aspects de l’entreprise moderne. Toutefois, cette révolution technologique soulève des questions éthiques et sociétales, notamment sur l’avenir des emplois. Cet article se penche sur l’évolution de l’IA, ses applications variées, et les enjeux qu’elle engendre dans le monde du travail.

Petit guide d’outils open source pour le télétravail

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Ah le Covid ! Si en cette période de nombreux cas resurgissent, ce n’est rien comparé aux vagues que nous avons connues en 2020 et 2021. Ce fléau a contraint une large partie de la population à faire ce que tout le monde connaît sous le nom de télétravail. Nous avons dû changer nos habitudes et avons dû apprendre à utiliser de nombreux outils collaboratifs, de visioconférence, etc., dont tout le monde n’était pas habitué. Dans cet article, nous passons en revue quelques outils open source utiles pour le travail à la maison. En effet, pour les adeptes du costume en haut et du pyjama en bas, la communauté open source s’est démenée pour proposer des alternatives aux outils propriétaires et payants.

Sécurisez vos applications web : comment Symfony vous protège des menaces courantes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les frameworks tels que Symfony ont bouleversé le développement web en apportant une structure solide et des outils performants. Malgré ces qualités, nous pouvons découvrir d’innombrables vulnérabilités. Cet article met le doigt sur les failles de sécurité les plus fréquentes qui affectent même les environnements les plus robustes. De l’injection de requêtes à distance à l’exécution de scripts malveillants, découvrez comment ces failles peuvent mettre en péril vos applications et, surtout, comment vous en prémunir.

Bash des temps modernes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les scripts Shell, et Bash spécifiquement, demeurent un standard, de facto, de notre industrie. Ils forment un composant primordial de toute distribution Linux, mais c’est aussi un outil de prédilection pour implémenter de nombreuses tâches d’automatisation, en particulier dans le « Cloud », par eux-mêmes ou conjointement à des solutions telles que Ansible. Pour toutes ces raisons et bien d’autres encore, savoir les concevoir de manière robuste et idempotente est crucial.

Les listes de lecture

7 article(s) - ajoutée le 01/07/2020
La SDR permet désormais de toucher du doigt un domaine qui était jusqu'alors inaccessible : la réception et l'interprétation de signaux venus de l'espace. Découvrez ici différentes techniques utilisables, de la plus simple à la plus avancée...
8 article(s) - ajoutée le 01/07/2020
Au-delà de l'aspect nostalgique, le rétrocomputing est l'opportunité unique de renouer avec les concepts de base dans leur plus simple expression. Vous trouverez ici quelques-unes des technologies qui ont fait de l'informatique ce qu'elle est aujourd'hui.
9 article(s) - ajoutée le 01/07/2020
S'initier à la SDR est une activité financièrement très accessible, mais devant l'offre matérielle il est parfois difficile de faire ses premiers pas. Découvrez ici les options à votre disposition et les bases pour aborder cette thématique sereinement.
Voir les 33 listes de lecture

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous