La Marge Opérationnelle de Canal, ou COM, n'est pas bien comprise. Comme elle n'est pas bien comprise, beaucoup de personnes doutent de sa réelle signification. Après tout, comment la qualité d'un canal peut-elle être représentée par un simple nombre en décibels ? Il s'avère que le COM est en fait la dernière étape évolutive dans une longue progression de techniques de validation de canal utilisant des motifs d'œil. Ce blog retracera l'évolution du COM jusqu'à ses racines et donnera un sens à la fameuse métrique COM.
Commençons par les motifs d'œil. Les motifs d'œil sont une manière d'examiner un long flux de données sérielles. Avant Keysight ADS et PyBERT [1] [2], un motif d'œil était mesuré avec un oscilloscope numérique à échantillonnage ou un oscilloscope en temps réel. Dans la fenêtre du motif d'œil, les unités de l'axe des y sont en tension et celles de l'axe des x sont en temps, couvrant deux intervalles d'unité. Un intervalle d'unité, ou UI, est la durée nécessaire pour qu'un bit passe. Ainsi, sur deux UI de temps, vous pouvez centrer un bit de données à l'écran avec une marge d'un demi-bit de chaque côté. Cependant, au lieu de visualiser juste un bit, tous les bits sont superposés, un à la fois, jusqu'à ce que l'ensemble du flux de données sérielles soit affiché à l'écran. La qualité du signal est quantifiée par la taille du trou au milieu. Si le motif d'œil semble vraiment bon, vous pourriez entendre un ingénieur dire : « On pourrait y conduire un camion à travers cet œil ! » Les méthodes les plus courantes pour quantifier l'ouverture sont la largeur, la hauteur ou la surface. Le croisement de l'œil au point DC est le jitter, et le jitter est typiquement mesuré statistiquement avec un histogramme.
Figure 1. Exemple d'un flux de bits sériel.
Les spécifications des premiers canaux, et dans certains cas celles des composants passifs, utilisaient quelque chose appelé un masque d'œil pour les critères de réussite ou d'échec. Un masque d'œil est généralement une zone en forme de diamant définie par une largeur et une hauteur d'œil. Un œil de passage n'a qu'un nombre limité d'échantillons détectés ou de coups, à l'intérieur du masque d'œil. Les motifs de uns et de zéros sont dictés par la norme et sont généralement une séquence de bits pseudo-aléatoire ou un motif PRBS. Vous pouvez essentiellement classer les motifs en deux catégories : avant 10 Gb/s et après 10 Gb/s. Avant 10 Gb/s, le codage 8b10b était utilisé dans la plupart des systèmes et PRBS 7 était le motif approprié. Lorsque le 10 Gb/s a été introduit par l'IEEE dans 802.3ba, le codage a basculé vers un brouilleur 64b66b et PRBS 31 a pris le relais. Même aujourd'hui à 112 Gb/s, PRBS 31, ou QPRBS 31, reste le motif standard le plus utilisé.
Chronologiquement après les motifs d'œil mesurés, StatEye est la méthode suivante pour qualifier les canaux passifs, et elle a été largement utilisée par l'OIF. L'idée derrière StatEye est expliquée en détail ici : [3] En bref, StatEye prédit les motifs d'œil en utilisant une réponse impulsionnelle d'un système. Une réponse impulsionnelle est la réponse dans le domaine temporel d'un système excité avec une impulsion carrée d'une UI, et le système est un canal passif incluant l'égalisation. Les technologies d'égalisation disponibles dans StatEye sont FFE, CTLA et DFE. La fonction de transfert d'un système est recueillie à partir des paramètres S. Puisque les paramètres S du canal peuvent être simulés, StatEye est un moyen efficace d'essayer de nombreux canaux et réglages d'égalisation pour voir ce qui fonctionne. Tout au long de ce processus, le masque d'œil est le critère de réussite/échec en utilisant l'ouverture d'œil prédite statistiquement.
Entre StatEye et COM, l'analyse de la distorsion de crête (PDA pour Peak Distortion Analysis) est devenue relativement courante. La méthode est bien documentée par Heck et Hall dans Advanced Signal Integrity for High Speed Digital Designs [4]. En résumé, elle utilise la même réponse impulsionnelle que StatEye, mais son résultat est simplement ce qu'on appelle l'ouverture de l'œil en pire cas. La PDA ne fabrique aucune donnée, et c'est pour cette raison que je l'apprécie personnellement. Je l'ai mise en œuvre moi-même et j'ai trouvé que la PDA prédit les motifs de l'œil en pire cas avec une grande confiance. Cependant, la PDA et StatEye n'incluent pas l'impact de l'émetteur et du récepteur dans le canal, et vous devez trouver manuellement le meilleur réglage d'égalisation.
Figure 2 : Exemple d'un motif d'œil en bleu et de la PDA en pointillés noirs.
COM a été développé dans le cadre de l'IEEE 802.3bj, Ethernet 100GBASE, et a ajouté les imperfections des circuits intégrés (IC) au canal simulé. Il est plus facile à utiliser et plus largement adopté que StatEye, et est aujourd'hui l'outil de prédiction de qualité de canal de facto. Comme je l'ai déjà mentionné, COM s'appuie sur StatEye et ajoute plusieurs nouvelles sources de bruit. Plus précisément, les sources de bruit sont la perte due au circuit intégré, les réflexions du boîtier du circuit intégré, le jitter lié au circuit intégré, et une source de bruit gaussien regroupée pour tout le reste se produisant dans le circuit intégré, comme le diaphonie. L'implémentation de COM se trouve dans l'annexe 93A de l'IEEE 802.3 [5].
La plupart des mathématiques derrière COM sont simplifiées par l'organisme de normalisation autant que possible. Par exemple, la concaténation des paramètres S est réduite à de l'algèbre au lieu de conversions des paramètres S en paramètres ABCD ou T et de la multiplication matricielle. L'équation la plus difficile est le calcul de la fonction de densité de probabilité (PDF) du bruit lié à l'ISI, mais après quelques essais, ce n'est vraiment pas si mal. Il y a certaines omissions qui sont considérées comme spécifiques à l'implémentation, telles que la manière de garantir 32 points d'échantillonnage dans chaque UI de données, mais ces détails peuvent être trouvés dans le code source ouvert fourni gratuitement par l'IEEE [5].
COM trouve le meilleur scénario possible pour un canal donné en utilisant un ensemble de réglages d'égalisation possibles. Cela est accompli en balayant tous les réglages d'égalisation et en calculant quelque chose appelé le Figure of Merit (FOM). Le réglage d'égalisation qui produit le meilleur FOM est utilisé pour le reste des calculs. Une fois les PDF de toutes les sources de bruit calculées, le bruit à un taux d'erreur détecté (DER) est identifié. Le DER est le taux d'erreur binaire (BER) souhaité pour le système, et est déterminé par la technique de Corrections d'Erreur en Avant (FEC), si elle est considérée. Le signal disponible est déterminé par la tension de réponse d'impulsion à un point d'échantillonnage spécifique. Le signal disponible est divisé par le bruit au taux d'erreur détecté (rapport signal sur bruit), et ce nombre est converti en décibels. Voilà ! COM ! Voyez, cela a réellement un sens.
Les paramètres utilisés pour COM sont déterminés par la technologie IC disponible. Le niveau de technologie IC est convenu par des leaders de l'industrie tels qu'Intel, Broadcom, Mellanox, Fujitsu, et bien d'autres. En d'autres termes, un IC utilisant la technologie mise en œuvre dans COM devrait être capable de fonctionner dans les canaux de travail comme prédit par COM. Évidemment, ceci est très puissant puisque la norme a maintenant (enfin) attribué une partie de la propriété du canal aux vendeurs d'IC.
Même si cela semble que COM est cette utopie de prédiction de canal, cela a ses limites. Puisqu'il s'agit d'un ensemble de paramètres pour tous les systèmes considérés par la norme, il ne prédit pas la performance d'un IC individuel par lui-même. Pour obtenir une corrélation de mesure, vous devez ajuster les paramètres COM pour chaque IC individuellement. De plus, COM néglige toute contribution de bruit provenant du décalage. Heureusement, un article de DesignCon par Jason Chan aborde cette lacune, et j'espère voir des scripts COM mis à jour utilisant ses idées à l'avenir [6].
Pour résumer, COM n'est pas si mal. C'est une étape logique suivante dans l'évolution de l'analyse des canaux, et cela rend l'évaluation des canaux relativement facile. Je suis très reconnaissant que les auteurs de COM aient eu la gentillesse de libérer et de soutenir gratuitement le code MATLAB. J'espère voir COM implémenté et amélioré par d'autres ingénieurs en intégrité des signaux à l'avenir. Qui sait, peut-être verrons-nous un jour une implémentation en Python ou Octave.
Toutes les figures ont été créées avec GNU Octave, https://www.gnu.org/software/octave/.
[1] Page d'accueil de Keysight ADS, https://www.keysight.com/en/pc-1297113/advanced-design-system-ads?&cc=US&lc=eng
[2] Page d'accueil de PyBERT, https://pypi.org/project/PyBERT/
[3] A. Sanders, M. Resso, J. Ambrosia, Test de conformité des canaux utilisant une nouvelle méthodologie statistique de l'œil, DesignCon 2004, http://www.ece.tamu.edu/~spalermo/ecen689/stateye_theory_sanders_designcon_2004.pdf
[4] S. Hall, H. Heck, Intégrité avancée du signal pour les conceptions numériques à haute vitesse, Wiley 2011
[5] Page d'atterrissage du groupe de travail Ethernet IEEE 802.3, http://www.ieee802.org/3/
[6] J. Chan, G. Zheoff, Conversion de mode et son impact sur les systèmes PAM4 112-Gbps, DesignCon 2019.