Je n'ai jamais compris comment les nouvelles vitesses de transfert de données record sont obtenues en termes de conversion de / vers des signaux électriques et optiques.
Supposons que nous ayons 255 Tbits de données et que nous voulons les transférer en une seconde. (Il s'agit d'un exploit réel.) Vous avez stocké 255 Tbits dans, disons, 255 billions de condensateurs (c'est de la RAM). On s'attend maintenant à ce que nous puissions lire chacun successivement, en interrogeant chaque bit afin qu'une seconde plus tard, nous en ayons lu les 255 000 milliards. Ce n'est évidemment pas orchestré par un processeur 3 GHz.
Qu'en est-il de l'extrémité de réception? Les impulsions arrivent à 255 THz, mais le taux de rafraîchissement de l'électronique essayant de lire un signal entrant n'est de loin pas 255 THz. La seule chose que je peux imaginer, ce sont des milliers de processeurs avec leurs signaux d'horloge multiplexés dans le temps (retardés) de moins de 0,00000000000001 s. Bien que la façon de réaliser un tel multiplexage me ramène également à mon problème avec cette différence de milliers de fréquences.
Réponses:
Plutôt que de vous soucier d'un document de recherche qui pousse les choses à la limite, commencez par comprendre ce qui se trouve devant vous.
Comment un disque dur SATA 3 dans un ordinateur domestique peut-il mettre 6 Gbits / s sur une liaison série? Le processeur principal n'est pas à 6 GHz et celui du disque dur ne l'est certainement pas, selon votre logique, cela ne devrait pas être possible.
La réponse est que les processeurs ne sont pas assis là à mettre un bit à la fois, il existe un matériel dédié appelé SERDES (sérialiseur / désérialiseur) qui convertit un flux de données parallèle à basse vitesse en un flux série à haute vitesse, puis à nouveau à l'autre extrémité. Si cela fonctionne par blocs de 32 bits, le débit est inférieur à 200 MHz. Et ces données sont ensuite traitées par un système DMA qui déplace automatiquement les données entre le SERDES et la mémoire sans que le processeur soit impliqué. Tout ce que le processeur a à faire est d'indiquer au contrôleur DMA où se trouvent les données, combien envoyer et où répondre. Après cela, le processeur peut s'éteindre et faire autre chose, le contrôleur DMA interrompra une fois le travail terminé.
Et si le processeur passe la plupart de son temps au repos, il pourrait utiliser ce temps pour démarrer un deuxième DMA et SERDES s'exécutant sur un deuxième transfert. En fait, un processeur peut exécuter plusieurs de ces transferts en parallèle, ce qui vous donne un débit de données assez sain.
OK, c'est électrique plutôt qu'optique et c'est 50 000 fois plus lent que le système que vous avez demandé, mais les mêmes concepts de base s'appliquent. Le processeur ne traite que les données en gros morceaux, le matériel dédié les traite en plus petits morceaux et seul un matériel très spécialisé les traite 1 bit à la fois. Vous mettez ensuite beaucoup de ces liens en parallèle.
Un ajout tardif à cela qui est indiqué dans les autres réponses mais qui n'est explicité nulle part est la différence entre le débit binaire et le débit en bauds. Le débit binaire est le débit auquel les données sont transmises, le débit en bauds est le débit auquel les symboles sont transmis. Sur de nombreux systèmes, les symboles transmis au niveau des bits binaires et donc les deux nombres sont effectivement les mêmes, c'est pourquoi il peut y avoir beaucoup de confusion entre les deux.
Cependant, sur certains systèmes, un système de codage multi-bits est utilisé. Si au lieu d'envoyer 0 V ou 3 V sur le câble à chaque période d'horloge, vous envoyez 0 V, 1 V, 2 V ou 3 V pour chaque horloge, votre taux de symboles est le même, 1 symbole par horloge. Mais chaque symbole a 4 états possibles et peut donc contenir 2 bits de données. Cela signifie que votre débit binaire a doublé sans augmenter la fréquence d'horloge.
Aucun système du monde réel que je connaisse n'utilise un symbole multi-bits de style de niveau de tension aussi simple, les calculs derrière les systèmes du monde réel peuvent devenir très désagréables, mais le principe de base reste le même; si vous avez plus de deux états possibles, vous pouvez obtenir plus de bits par horloge. Ethernet et ADSL sont les deux systèmes électriques les plus courants qui utilisent ce type de codage comme à peu près n'importe quel système radio moderne. Comme l'a dit @ alex.forencich dans son excellente réponse, le système que vous avez interrogé sur le format de signal 32-QAM (modulation d'amplitude en quadrature) utilisé, 32 symboles différents possibles signifiant 5 bits par symbole transmis.
la source
Il semble que vous vous référiez spécifiquement à http://www.nature.com/nphoton/journal/v8/n11/full/nphoton.2014.243.html . Il peut être lu ici: https://www.researchgate.net/publication/269099858_Ultra-high-density_spatial_division_multiplexing_with_a_few-mode_multicore_fibre .
Dans ce cas, c'est un peu plus compliqué qu'un "signal optique". Le lien en question utilise plusieurs formes de parallélisme pour atteindre ce chiffre de 255 Tbit / s:
Le multiplexage par répartition en longueur d'onde dense est utilisé pour entasser 50 longueurs d'onde différentes dans la fibre à des intervalles de 50 GHz (~ 0,8 nm dans la bande C à 1550 nm), chacune transportant 1 / 50e des données.
La fibre utilisée est une fibre sur mesure à 7 cœurs, quelques modes, avec 3 modes par cœur, chacun avec 2 polarisations, pour 7 * 3 * 2 = 42 canaux indépendants (plus ou moins). Il semble que le point de vente de leur fibre soit que l'isolement entre les cœurs soit assez bon, donc le récepteur n'a qu'à égaliser la diaphonie entre les modes et les polarisations de chaque cœur séparément (7 parallèles 6x6 au lieu de 42x42).
Ensuite, ils ont utilisé un format de signal 24,3 Gbaud 32-QAM (5 bits par symbole, 24,3 * 5 = 121,5 Gbps) pour tous les canaux 42 * 50, pour une bande passante globale de 0,1215 * 42 * 50 = 255,15 Tbps.
Maintenant, ces gars ont en fait un peu triché ici: ils prennent 50 lasers, les multiplexent ensemble, modulent cela avec un seul modulateur IQ, puis décorrélent les polarisations et les canaux adjacents avec des retards fixes à émuler à l'aide d'émetteurs indépendants. Il ne s'agit donc que d'un seul signal à 121,5 Gbit / s, répété 2100 fois en parallèle. Et le signal transmis est probablement juste une séquence binaire pseudo-aléatoire (PRBS) qui est générée à la volée et non lue de la mémoire. Ou il peut être lu à partir de SRAM rapide ou d'un tableau de DRAM dans un générateur de signaux arbitraires hautes performances.
Côté réception, un traitement numérique du signal est nécessaire pour récupérer les données d'origine en compensant la diaphonie entre les modes et les polarisations dans chaque cœur et en appliquant une correction d'erreur. Le document mentionne un chiffre de 200 Tbps net, qui serait le débit de données avant le codage pour la transmission (similaire à la façon dont 1000BASE-X gigabit ethernet est de 1 Gbps avant le codage et 1,25 Gbps après, ou PCIe est de 2/4 / 7,877 Gbps avant codage et 2,5 / 5/8 Gbps après), mais on ne sait pas quel schéma de codage et de correction d'erreur directe ils supposent.
Il semble également qu'ils n'aient pas construit de véritable récepteur, mais ils utilisent plutôt deux oscilloscopes à haute vitesse avec des détecteurs cohérents pour capturer les données brutes, puis effectuent le traitement du signal et l'égalisation hors ligne. Ils ont également dû effectuer une capture entrelacée sophistiquée car ils devaient exécuter une détection cohérente sur les 3 modes de chaque cœur de fibre en même temps, mais ils n'avaient que 2 oscilloscopes rapides disponibles. Et même cette configuration ne leur permet de recevoir qu'une seule longueur d'onde sur un cœur de fibre à la fois - 729 Gbps, et uniquement en courtes rafales.
Mais tout cela va bien, car le papier concerne la fibre et non le lien réel.
TL; DR: le chiffre de 255 Tbps est un peu trompeur - ils n'ont pas construit un émetteur-récepteur capable de cela, mais ils ont évalué la fibre multicœur qu'ils ont fabriquée avec 2100 copies d'un signal de 121,5 Gpbs et un seul récepteur.
la source
Ignorant les détails de la transmission spécifique en question (dont @ alex.forencich a déjà discuté en détail), il semble qu'il soit probablement utile de considérer le cas plus général.
Bien que cette transmission particulière atteigne 255 Tbit / s via la fibre, des liaisons par fibre extrêmement rapides sont déjà utilisées régulièrement. Je ne sais pas exactement combien de déploiements il y a (probablement pas beaucoup) mais il existe des spécifications commerciales pour OC-1920 / STM-640 et OC-3840 / STM-1280, avec des taux de transmission de 100 et 200 Gbps respectivement . C'est à peu près trois ordres de grandeur plus lent que ce test n'a démontré, mais il est encore assez rapide selon la plupart des mesures ordinaires.
Alors, comment cela se fait-il? Beaucoup des mêmes techniques sont utilisées. En particulier, à peu près tout ce qui fait une transmission par fibre "rapide" utilise le multiplexage à division d'onde dense (DWDM). Cela signifie, en substance, que vous commencez avec un (assez) grand nombre de lasers, chacun transmettant une longueur d'onde de lumière différente. Vous modulez des bits sur ceux-ci, puis les transmettez tous ensemble via la même fibre - mais d'un point de vue électrique, vous alimentez un certain nombre de flux binaires complètement séparés dans les modulateurs, puis vous mélangez les sorties optiquement, donc tous ces différentes couleurs de lumière traversent la même fibre en même temps.
Du côté de la réception, des filtres optiques sont utilisés pour séparer à nouveau les couleurs, puis un phototransistor est utilisé pour lire un flux binaire individuel.
Bien que je n'aie montré que 7 entrées / sorties, les systèmes réels utilisent des dizaines de longueurs d'onde.
Quant à ce qu'il faut sur les extrémités de transmission et de réception: eh bien, il y a une raison pour laquelle les routeurs de la colonne vertébrale sont chers. Même si une seule mémoire ne doit alimenter qu'une fraction de la bande passante globale, vous avez généralement besoin d'une RAM assez rapide - une bonne partie des parties les plus rapides des routeurs utilisent une SRAM assez haut de gamme, donc à ce stade, les données proviennent de des portes, pas des condensateurs.
Il est probablement intéressant de noter que même à des vitesses inférieures (et indépendamment de l'implémentation physique telle que DWDM), il est traditionnel d'isoler les parties les plus rapides du circuit en quelques petites pièces. Par exemple, XGMII spécifie la communication entre 10 gigabits / seconde Ethernet MAC et PHY. Bien que la transmission sur le support physique soit un flux binaire (dans chaque direction) transportant 10 gigabits par seconde, XGMII spécifie un bus large de 32 bits entre le MAC et le PHY, donc la fréquence d'horloge sur ce bus est d'environ 10 GHz / 32 = 312,5 MHz (enfin, techniquement, l'horloge elle-même est la moitié - elle utilise la signalisation DDR, donc il y a des données sur les fronts montant et descendant de l'horloge). Ce n'est qu'à l'intérieur du PHY que quelqu'un doit faire face à une fréquence d'horloge multi-GHz. Bien sûr, XGMII n'est pas la seule interface MAC / PHY,
la source