Mise sous tension avec USB : démêler les normes de livraison de l’alimentation USB

L’alimentation de périphériques externes directement à partir des ports d’E/S d’un PC était une chose bien avant que l’USB ne soit même un scintillement dans l’œil d’un ingénieur. Certains d’entre nous se souviennent peut-être des câbles de transmission PS/2 trop courants qui exploitaient les 275 mA disponibles via ces ports. Lorsque l’USB a été lancé pour la première fois, il fournissait initialement un maximum de 500 mA, que l’USB 3.0 est passé à 900 mA.

Pendant très longtemps, cette alimentation fournie était uniquement destinée à fournir un moyen d’alimenter des périphériques tels que des claviers, des souris et des appareils triviaux similaires plutôt que d’exiger que chacun d’eux soit livré avec son propre adaptateur secteur. À mesure que le nombre de gadgets connectés à un ordinateur augmentait, l’USB deviendrait le principal moyen non seulement d’alimenter directement les petits appareils, mais également de charger les appareils alimentés par batterie et, en fin de compte, de fournir de l’énergie de manière plus générale.

Ce qui nous amène au protocole USB Power Delivery (USB-PD). De manière confuse, l’USB-PD englobe un certain nombre de normes différentes, allant de la charge à tension fixe à l’alimentation programmable et à l’alimentation à tension réglable. Quelles sont les différences exactes entre ces modes, et comment s’y prend-on ?

Amorçage des communications

Pour avoir une idée du fonctionnement de l’alimentation à partir d’un port USB au niveau matériel, nous allons examiner une puce qui implémente l’USB-PD révision 3.0 (R3.0) sous la forme de la Microchip UPD350. La révision 3.0 de la spécification USB-PD prend en charge la charge à tension fixe jusqu’à 100 W – Standard Power Range (SPR) – avec la norme R3.1 actuelle ajoutant Extended Power Range (EPR) qui prend en charge jusqu’à 240 W. Cette augmentation de l’alimentation est assurée principalement par l’utilisation de tensions plus élevées : 48 VDC avec R3.1, contre 20 VDC avec R3.0.

Malgré l’importance de l’USB-PD, il est possible de tirer jusqu’à 3,0 A à 5 V sans se soucier du tout de l’USB-PD, qui est également un mode pris en charge par l’UPD350. Ceci est également détaillé dans Microchip Application Note 1953 (AN1953) :

Valeurs de résistance de pull-up DFP valides
Valeurs de résistance de rappel DFP Rp valides (AN1953, section 3.1, tableau 6)

Ces valeurs concernent la résistance Rp du côté du port orienté vers l’aval (DFP), également appelée source. En définissant cette valeur de résistance, le récepteur (port orienté vers l’amont, UFP) peut indiquer le courant maximal que la source peut fournir.

Disposition USB-C avec résistances.
Vue d’ensemble schématique des connexions source-to-sink avec USB-C, y compris les différentes résistances sur les lignes CCx.

Dans l’UPD350, les valeurs de résistance sont définies via le I2Interface C ou SPI lorsque l’appareil fonctionne en mode DFP. En mode UFP, le comparateur CC interne peut détecter jusqu’à huit seuils différents définis par la résistance Rp du côté DFP. L’une d’entre elles est une option propriétaire :

• 0,20 V
• 0,40 V
• 0,66 V
• 0,80 V
• 1,23 V
• 1,60 V
• 2,60 V
• Mode propriétaire 3,0 V

Inversement côté DFP, la résistance du dissipateur sur la ligne CC lui permet de savoir s’il est connecté à un UFP. Cela permet de transférer facilement jusqu’à 15 watts entre une source et un évier. Afin d’obtenir plus de puissance, il n’est pas facile d’augmenter simplement le courant, c’est alors que les modes de tension fixe de l’USB-PD entrent en jeu.

Bus Ethernet universel

On pourrait pardonner de faire la comparaison entre USB-PD et Ethernet. Les deux utilisent une configuration d’interface MAC et physique similaire, en plus de la communication par paquets. Lorsqu’il s’agit de comprendre l’USB-PD, ce n’est en fait pas un modèle terrible à utiliser, juste avec l’USB-PD étant un protocole semi-duplex à la base puisqu’il ne peut utiliser qu’un seul fil CC pour communiquer.

Jetons un coup d’œil au schéma fonctionnel interne de l’UPD350 pour avoir une idée de sa disposition générale :

Schéma fonctionnel de l'UPD350.
Schéma fonctionnel interne du contrôleur Microchip UPD350 USB-PD. (crédit Microchip)

Le Power Delivery 3.0 MAC est clairement visible dans ce schéma, qui implémente le protocole USB-PD réel tout en fournissant également une interface au I2Contrôleur C ou SPI. Cela peut être considéré comme équivalent au MAC (contrôle d’accès au support) avec Ethernet ou au MAC USB (non-PD). L’interface CC en bande de base est alors la couche physique (PHY) qui se traduit entre le MAC et le frontal analogique connecté à la ligne CC.

Pendant toutes les communications USB-PD, le DFP est le maître du bus et initie ainsi toutes les communications. Comme mentionné, l’USB-PD est semi-duplex, n’utilisant qu’une seule ligne CC pour la communication, qui se produit à un débit en bauds de 300 kbps. Le CRC32 est utilisé pour la détection d’erreurs, avec tous les messages codés à l’aide du code de marque biphasé (BMC) codé 4b/5b sur 32 bits, également connu sous le nom de codage Manchester différentiel (DM).

Le format de message de base pour USB-PD, y compris une section de charge utile, est détaillé dans la spécification USB-PD :

Format de paquet USB-PD avec section de charge utile
Format de message de charge utile USB-PD. (Crédit : USB-IF)

Il existe différents types d’objets de données :

  • Objet de données BIST (BDO) – Utilisé pour les tests de conformité de la couche physique.
  • Objet de données d’alimentation (PDO) – Expose les capacités d’alimentation d’une source ou les exigences d’alimentation d’un récepteur.
  • Objet de données de demande (RDO) – Utilisé par un récepteur pour demander certains paramètres d’alimentation à la source.
  • Objet de données défini par le fournisseur (VDO) – Transmettre des informations spécifiques au fournisseur.
  • Objet de données sur l’état de la batterie (BSDO) – Transmet des informations sur l’état de la batterie.
  • Objet de données d’alerte (ADO) – Indique les événements se produisant sur la source ou le récepteur.

En règle générale, le DFP enverrait une liste de ses capacités (PDO de capacité source), que l’UDF utilisera ensuite pour sélectionner une option appropriée en fonction de ses besoins et enverra une demande à ce sujet à l’aide d’un message d’objet de données RDO. Ce n’est cependant pas tout, car en raison des tensions et des courants plus élevés impliqués, certains de ces niveaux de puissance nécessitent des câbles EMCA actifs « marqués électroniquement ».

Avec une grande puissance

Tous les câbles USB-C doivent prendre en charge 20 V à 3 A pour un total de 60 W. Afin d’être détectés comme capables de tensions et de courants plus élevés par le contrôleur USB-PD, les câbles USB-C doivent contenir un -appelée puce e-marker qui contient un message défini par le fournisseur (VDM) contenant des détails sur le câble et ses capacités.

Il en résulte un schéma de câblage légèrement plus complexe qu’avec un câble non marqué :

Câblage USB-C avec un câble marqué électroniquement (marqué e).

Dans ce cas, la même ligne de signal CC est utilisée pour interroger la puce intégrée dans le câble connecté. Si le contrôleur USB-PD est convaincu que le câble répond aux exigences des paramètres de tension et de courant requis, il procédera à des niveaux de puissance supérieurs à ceux des câbles non marqués.

Cela devient particulièrement important avec la norme R3.1 USB-PD, qui augmente les tensions jusqu’à un maximum de 48 V dans le cadre du mode EPR à tension fixe, tout en conservant le même courant maximum de 5 A. Le courant étant le facteur déterminant pour savoir si les câbles fondre ou non lors de l’utilisation de niveaux de puissance élevés, cela a beaucoup de sens, mais l’augmentation des niveaux de tension s’accompagne d’un risque d’arc, en particulier lors du branchement ou du débranchement d’un câble USB-C.

En théorie, les tensions plus élevées étant fermement verrouillées derrière les câbles EMCA avec des connecteurs USB-C nouvellement conçus qui ont des broches CC et Vbus allongées, un événement de déconnexion avec des tensions EPR actives devrait être détectable à temps pour réduire rapidement le courant et éviter les dommages matériels.

Comparer les différents modes

Jusqu’à présent, nous avons principalement examiné les modes de tension fixe de l’USB-PD. Ceux-ci prennent en charge un certain nombre de tensions fixes comme son nom l’indique. Pour le SPR, ces tensions sont :

Tous ces éléments peuvent être sélectionnés avec des niveaux de courant de 3 A ou 5 A.

EPR ajoute les tensions suivantes, toutes à 5 A :

À certaines fins, ces tensions peuvent ne pas être idéales, auquel cas les modes d’alimentation programmable (PPS) ou d’alimentation de tension réglable (AVS) peuvent être plus appropriés. Le mode PPS peut être utilisé avec le SPR, en suivant les niveaux de tension approximatifs de ce dernier, mais en permettant de régler la tension entre 3,3 V et le niveau de tension du SPR plus 1 ou 2 V, par pas de 20 mV.

Le mode AVS fait fondamentalement la même chose que le PPS, en commençant uniquement à partir de 15 V comme niveau de tension le plus bas, allant jusqu’à l’une des trois tensions EPR par pas de 100 mV. Laquelle de ces tensions est disponible en mode PPS ou AVS fonctionne de la même manière qu’avec une utilisation de tension fixe régulière, en ce sens que le contrôleur USB-PD détermine les limites en fonction du matériel détecté.

Bus d’alimentation universel

Avec le recul, il est à la fois logique et peut-être quelque peu absurde de voir comment le connecteur d’E/S d’un ordinateur conçu à l’origine pour transporter des données vers et depuis des périphériques USB a fini par se transformer en ce que nous avons aujourd’hui sous la forme d’USB-C et de spécification USB-PD. Reste à savoir si la spécification R3.1 USB-PD constitue vraiment le summum de l’USB-PD.

Avec des câbles compatibles USB-C R3.1 EPR maintenant capables de fournir jusqu’à 240 W, on pourrait penser que cela devrait être suffisant pour charger n’importe quel ordinateur portable aujourd’hui et à l’avenir. Déjà à ce stade, le mode EPR a donné un nouveau sens au terme « connexion à chaud » lorsque l’arc électrique est considéré comme une préoccupation par la spécification USB-C. Il est donc probable que l’avenir de l’USB-PD conduira à de nouvelles améliorations facilitant l’utilisation des modes PPS et AVS, ou à l’ajout de nouveaux modes permettant de régler encore plus facilement la tension et le courant souhaités.

Maintenant, si seulement vous pouviez savoir de quoi un port USB-C sur un appareil est capable en le regardant 🙂