Dans la couche physique de l'USB 3.0, il y a un encodeur 8b / 10b .
Wikipedia dit que cela a éliminé le décalage DC, tandis que le tutoriel que je lis dit
c'est un schéma de codage commun dans les conceptions série à haute vitesse
Quel est le but de cet encodage dans le contexte de l'USB? De plus, quelles autres applications et avantages ce codage offre-t-il dans d'autres types d'appareils?
Réponses:
La réponse simple pour un codage comme 8b / 10b est qu'il garantit que le flux de données codées a au moins une certaine quantité de transitions de données. Sans un tel encodage, un long flux de 0 ou de 1 aurait tendance à ressembler à une tentative d'envoi de courant continu via le canal.
La même philosophie s'applique au codage Manchester où la bande passante nette à transmettre à travers le canal est deux fois la bande passante réelle des données. Les avantages vantés pour le 8b / 10b est que la bande passante de transmission utilisée est bien inférieure au 2X imposé par Manchester.
On veut éviter DC par le canal pour un certain nombre de raisons. Bien que chaque canal de transmission ait des types d'exigences différents, la principale considération est que le courant continu ne passe pas très bien par les circuits couplés par condensateur ou transformateur. L'autre grande considération, même pour les circuits à couplage direct, est que des transitions sont nécessaires pour pouvoir synchroniser un circuit PLL à l'extrémité du récepteur afin que la synchronisation puisse être récupérée pour permettre le stroboscope des bits de données au bon moment.
la source
Outre les belles propriétés mentionnées par d'autres, les autres bonnes choses que 8b10b vous offre incluent: 1. Discrimination facile au niveau du récepteur entre le contrôle de liaison et les symboles de données 2. Détection facile de ~ 75% des erreurs.
Il est également étonnamment facile de construire des émetteurs et des récepteurs 8b10b en logique programmable; le brevet IBM d'origine spécifie toutes les opérations logiques requises (et si vous êtes trop paresseux pour cela, Chuck Benz l' a fait pour vous dans Verilog).
Wikipédia a également une page très utile sur 8b10b.
la source
Il est expliqué plus loin dans le didacticiel lié, à la page 15.
Les raisons énumérées pour appliquer cet encodage à USB 3.0 sont:
Un collègue a une autre hypothèse. Paraphraser:
Troisièmement, voici une citation de la norme, section 3.2.1
la source