Les Codecs VLC et l'OFDM

Mots-Clés

- OFDM (Orthogonal Frequency-Division Multiplexing en anglais)
- PLC (Power-Line Communication en Anglais)
- CPL (Courant Porteur en Ligne)
- CPL G3
- CPL Prime
- HomePlug AV
- HomePlug Green PHY
- Réseau Electrique Intelligent (Smart Grid en anglais)
- Ville Intelligente (Smart City en Anglais)
- FFT (Fast Fourier Transform en Anglais)



Résumé

L'OFDM (Orthogonal Frequency-Division Multiplexing en Anglais) est un procédé de codage de signaux numériques par répartition des données sur des fréquences différentes sous forme de multiples sous-porteuses. Il utilise FFT (Fast Fourier Transform) et est couramment utilisé dans la plupart des communications haut débit. On peut citer: la télédiffusion numérique terrestre (TNT, normes DVB-T et DVB-H), la radiodiffusion numérique terrestre (norme DAB), l'ADSL, les courants porteurs en ligne (CPL, norme HomePlug, CPL G3 et CPL Prime), les réseaux locaux sans fil (par exemple la norme 802.11a, la norme 802.11g ou WiFi ou encore la norme 802.16 ou WiMAX), et les réseaux mobiles de nouvelle génération (LTE, 4G).
Avec l'OFDM, on transporte tous les types de données, y compris les données issus des codecs VLC. Néanmoins, en utilisant les propriétés de ces codecs (notamment l'arrière plan) et les propriétés des types de données (notamment le nombre de trames par seconde), on peut augmenter de manière significative le nombre de sous-porteuses ainsi que la portée des communications, et diminuer la consommation d'énergie. Ce document porte uniquement sur les communications par courants porteurs en ligne, utilisées notamment avec les réseaux électriques intelligents (Smart Grids), avec l'Internet de l'Energie, avec les villes intelligentes (Smart Cities), ainsi qu'avec les voitures électriques.

Généralités sur les Communications avec les Courants Porteurs en Ligne

Les communications avec les courants porteurs en ligne (CPL) reposent sur la modulation OFDM.
Pour plus d'informations sur le CPL et l'OFDM, voir aux adresses suivantes:
   - OFDM
   - Courants Porteurs en Ligne
   - HomePlug
   - CPL G3

Nous rappelons ici les principales caractéristiques des quatre principales normes. Les deux premières ont été élaborées pour les longues distances tandis que les deux dernières ont été élaborées pour les courtes distances.

- CPL G3
Fréquence d'échantillonnage: 400 kHz
Taille des tampons FFT: 256
Taille des préfixes cycliques: 30
Nombre de sous-porteuses: 36
Bande passante: 35,9–90,6 kHz
Espacement des sous-porteuses: 1,5625 kHz
Taux de bits maximum: 33,4 Kbps
Modulations: DBPSK, DQPSK
Fenêtrage: oui

- CPL Prime
Fréquence d'échantillonnage: 250 kHz
Taille des tampons FFT: 512
Taille des préfixes cycliques: 48
Nombre de sous-porteuses: 97
Bande passante: 42–89 kHz
Espacement des sous-porteuses: 488 Hz
Taux de bits maximum: 128,6 Kbps
Modulations: DBPSK, DQPSK, D8PSK
Fenêtrage: non

- HomePlug AV
Fréquence d'échantillonnage: 75 MHz
Taille des tampons FFT: 3072
Taille des préfixes cycliques: variable
Nombre de sous-porteuses: 1155
Band passante: 1,8-30 MHz
Espacement des sous-porteuses: 24,414 kHz
Taux de bits maximum: mode normal: 20-200 Mbps, mode ROBO (QPSK): 4-10 Mbps
Modulations: modulation adaptative de BPSK, QPSK, 16 QAM, 64 QAM, 256 QAM, à 1024 QAM, en fonction de la sous-porteuse
Fenêtrage: oui

- HomePlug Green PHY
Fréquence d'échantillonnage: 75 MHz
Taille des tampons FFT: 3072
Taille des préfixes cycliques: variable
Nombre de sous-porteuses: 1155
Band passante: 1,8-30 MHz
Espacement des sous-porteuses: 24,414 kHz
Taux de bits maximum: mode ROBO: 4, 5 et 10 Mbps
Modulation: QPSK
Fenêtrage: oui

Remarques:
- Avec les normes HomePlug, en mode ROBO (Robust OFDM), les données sont transmises en QPSK, de manière redondante en utilisant de multiples sous-porteuses.
En ROBO mini (4 Mbps), il y a 5 copies.
En ROBO standard (5 Mbps), il y a 4 copies.
En ROBO haute vitesse (10 Mbps), il y a 2 copies.

- D'autres normes HomePlug existent comme la norme HomePlug 1.0 ou la norme HomePlug AV2.
Avec la norme HomePlug AV2:
Fréquence d'échantillonnage: 200 MHz
Taille des tampons FFT: 8192
Nombre de sous-porteuses: 3455
Band passante: 1,8-86,13 MHz
Espacement des sous-porteuses: 24,414 kHz
Taux de bits maximum: mode normal: 581-1516 Mbps, mode ROBO (QPSK): 4-10 Mbps
Modulations: modulation adaptative de BPSK, QPSK, 8 QAM, 16 QAM, 64 QAM, 256 QAM, 1024 QAM à 4096 QAM, en fonction de la sous-porteuse

- Les taux de bits maximum concernent la couche physique. Au niveau de la couche MAC, ces taux sont moins élevés.
- Avec le CPL G3, en mode robuste, le taux de bits maximum est inférieur à 6 Kbps.



Propriétés de l'Arrière Plan des Codecs VLC

Les codecs VLC ont été mis au point à partir des signaux audio (voix et musique). Ils utilisent FFT, les plus grands points (les points de plus grande magnitude) et les bandes les plus énergétiques.
Pour plus d'informations sur ces codecs, voir aux adresses suivantes:
   - Algorithmes
   - Page d'Accueil

Dans ce document, nous rappelons les propriétés très importantes de l'arrière plan qui vont être utilisées:

- On ne garde que les bandes les plus énergétiques. Donc l'arrière plan peut supporter des pertes de bandes entières.
On peut utiliser aussi toutes les bandes ou une zone contigüe de bandes. dans ce cas il n'y a pas à transmettre les numéros des bandes retenues.
- A l'intérieur de chaque bande, on peut faire des décimations. Par exemple, avec la décimation simple, on garde le plus grand point sur deux, avec la décimation double, on garde le plus grand point sur quatre.
Si on effectue des décimations, il faut un bit supplémentaire (décimation simple) ou deux bits supplémentaires (décimation double) pour repérer la position du point retenu dans la bande.
- On ne tient pas compte des phases dans l'arrière plan. On peut juste garder un bit de signe (signe de la phase) pour éviter qu'il n'y ait que des sommes lors de la décompression.
- Si on effectue un inverse FFT avec juste les points de l'arrière plan, on constate que le facteur de crête est très bas.
- Le nombre total de points de l'arrière plan est proportionnel à la taille des tampons FFT, contrairement au nombre de points de l'avant plan qui ne dépend que du nombre de fréquences utiles.
Par exemple, pour des tampons FFT de 256, 512, 1024, 1536 ou 3072 points, il y a 128, 256, 512, 768 et 3072 bins FFT (points dans le domaine des fréquences). On peut se contenter de 12 à 48 points pour l'avant plan (cas de la voix avec une bonne qualité, pour des fréquences d'échantillonnage de 8, 16, 32, 48 et 96 kHz). Le reste des points constitue l'arrière plan, regroupé en bandes.
- Les magnitudes de l'arrière plan sont codées avec une précision moindre que celles de l'avant plan.
Si on encode les magnitudes avec le logarithme, on peut prendre par exemple 6 à 8 bits pour les points de l'avant plan et 3 bits pour les point de l'arrière plan. On peut en outre forcer ces valeurs à rester dans l'intervalle 0-3 au lieu de 0-7, d'où une économie d'un bit supplémentaire.
L'arrière plan peut être transmis facilement à l'aide des modulations comme DQPSK ou QPSK avec un minimum de sous-porteuses.

En résumé, l'arrière plan pris au complet ou en grande partie côté émetteur, est compatible avec des transmissions avec atténuations et pertes côté récepteur. Il reste juste à transmettre l'avant plan de manière correcte.

Types de Données Supportées

Tous les signaux unidimensionnels sont concernés.
On peut citer:

- L'audio (voix et musique).
L'ordre de grandeur est de 20 à 50 trames FFT par seconde.

- Les signes vitaux (ElectroCardioGramme ou ECG, ElectroEncéphaloGramme ou EEG, ElectroMyoGramme ou EMG, pression sanguine artérielle, ...).
Ils peuvent être traités comme des signaux audio de basses fréquences.

- Les données des capteurs.
On s'intéresse à des relevés réguliers du genre un relevé toutes les demi secondes, une fois par seconde, une fois toutes les quatre secondes.
Si on effectue par exemple un relevé toutes les deux secondes, au bout de 10 minutes on aura 300 points. On peut prendre des tampons FFT de 300 points ou 512 points (complétés par 212 zéros) et les envoyer comme s'il s'agissait de données audio.
Si les relevés ne sont pas réguliers, il faut effectuer des interpolations pour les rendre réguliers.

- Les données discrètes de santé (données issues de la surveillance des battements cardiaques en continu, de la surveillance du taux de glucose en continu, ...).
Ces données sont à traiter comme les données des capteurs.

- Les images.
Les images peuvent être compressées au niveau d'un espace dit intermédiaire ou au niveau de l'espace k, en unidimensionnel.
Pour plus d'informations, voir à l'adresse suivante:
   - Prise en Compte d'un Espace dit Intermédiaire

Chaque bin d'une ligne (dans le domaine des fréquences) correspond à une ou plusieurs sous-porteuses. Il faut tenir compte du nombre total de lignes et du nombre de plans de couleur.
Les transmissions des images nécessitent plus de sous-porteuses. Il faut une plus grande rapidité de modulation si on veut accélérer les temps de transmission.

- La vidéo.
Pour la vidéo, il faut en plus tenir compte du nombre de trames vidéo par seconde. Les transmissions des images vidéo nécessitent plus de sous-porteuses. Il faut une plus grande rapidité de modulation si on veut effectuer des transmissions en direct.



Communications Longues Distances et Basses Consommations

Avec les images et la vidéo, nous ciblons les courtes et moyennes distances tandis qu'avec les autres signaux nous ciblons les longues distances.

En tenant compte du type de données, donc du nombre de trames par seconde ou de la rapidité de modulation minimale, on peut augmenter le nombre de sous-porteuses. Cette augmentation permet:
- de rallonger les temps d'émission, donc les distances de transmission;
- d'avoir plus de sous-porteuses pour les redondances (modes robustes) dans le transport de l'avant plan;
- de rallonger les intervalles de garde si nécessaire, donc d'éviter les collisions entre trames;
- d'utiliser une certaine redondance et un moyen de vérification simple permettant en même temps de réduire le facteur de crête;
- d'insérer des sous-porteuses nulles au début et à la fin des bandes passantes utilisées pour limiter les émissions hors-bandes;
- d'effectuer des communications à bandes ultra étroites (Ultra-Narrow Band ou UNB en anglais), en n'utilisant que quelques sous-porteuses;
- d'éviter les hautes fréquences où les distorsions sont les plus fortes;
- de diminuer la fréquence d'échantillonnage si nécessaire ou utile.

Exemple:
Pour la voix échantillonnée à 8000 Hz et une taille de tampon FFT de 256 (ou échantillonnée à 16000 Hz et une taille de tampon FFT de 512), il y a 31,25 trames par seconde (durée des trames = 32 millisecondes). L'arrière plan est constitué de 128 bins maximum en comptant les bins correspondants aux bins de l'avant plan mis à zéro (ou de 256 bins qu'on peut limiter aux 128 premiers bins pour le second cas).
Il faut utiliser des durées totales d'émission inférieures à 32 millisecondes. Si on utilise des durées d'émission des symboles de 20 millisecondes, on aura un espacement de 50 Hz entre les sous-porteuses, on aura théoriquement à notre disposition la moitié des sous-porteuses ci-dessous:
- 8000 sous-porteuses avec une fréquence d'échantillonnage de 400 kHz (CPL G3).
- 5000 sous-porteuses avec une fréquence d'échantillonnage de 250 kHz (CPL Prime).
- 3840 sous-porteuses avec une fréquence d'échantillonnage de 192 kHz (choix possible).
- 1920 sous-porteuses avec une fréquence d'échantillonnage de 96 kHz (choix possible).

Pour l'arrière plan, on implémente la décimation simple de la manière suivante:
- on ajoute un bit pour la position du plus grand bin;
- on répète le plus grand bin en remplaçant le plus petit bin;
- on inverse les phases des sous-porteuses encodant le bin répété de manière à minimiser le facteur de crête;
Par exemple, en QPSK, les sous-porteuses des bits 11 et des bits 00 ont des phases opposées. De même, les sous-porteuses des bits 10 et des bits 01 ont des phases opposées.
On introduit donc une certaine redondance et un moyen de vérification simple. En cas d'incohérence, on peut soit ignorer le bin, soit prendre le bin de plus petite magnitude.

Pour l'avant plan, on implémente le même type de répétition, afin de minimiser le facteur de crête. Si on doit implémenter des répétitions supplémentaires, on doit noter qu'on a déjà une redondance double.

Les premières sous-porteuses ne sont pas utilisées pour éviter les basses fréquences ou pour respecter les plages règlementaires.

Les sous-porteuses suivantes, jusqu'à épuisement des points de l'arrière plan, contiennent les données des points de l'arrière plan (magnitudes et signes des phases). Si on utilise 3 bits par point (3 bits limité à deux, plus le signe de la phase) et la décimation simple, chaque point de l'arrière plan nécessite 4 bits, donc deux sous-porteuses en modulation DQPSK ou QPSK (2 bits par sous-porteuse). Il faut un maximum de 128x2 = 256 sous-porteuses pour transporter tout l'arrière plan.
Pour augmenter la qualité, on peut ajouter une ou deux sous-porteuses par point pour transporter une phase additionnelle sur un à quatre bits.

Avec une partie du reste des sous-porteuses, on transmet avec soin les points de l'avant-plan. On pourra appliquer des méthodes issues des protocoles CPL cités plus haut. On utilisera de préférence des modulation comme DQPSK ou QPSK (2 bits par sous-porteuse).
En audio, avec 16 bits par point de l'avant plan (magnitudes, positions, phases), on obtient une bonne qualité. Si on choisit 16 points on aura 256 bits à transmettre par trame, donc on aura besoin de 256/2 = 128 sous-porteuses supplémentaires. Avec la redondance, il faut 256 sous-porteuses supplémentaires.
Il faut juste une modulation pour transmettre une trame entière.
Dans cette zone, il y a assez de sous-porteuses pour utiliser le codage Reed-Solomon, le codage convolutif ainsi qu'un codage supplémentaire des répétitions.

Si on n'utilise pas tous les points de l'arrière plan ou une zone contigüe, il faut transmettre les numéros de bandes retenues. Ces numéros sont à transmettre avant ou après les points de l'avant plan, en suivant les principes du paragraphe précédent. Dans ce cas, le nombre total de sous-porteuses prévu pour l'arrière plan est réduit.

Cas des images:

Pour nous fixer les idées avec un exemple concret, on prend les valeurs de l'exemple précédent, notamment le même espacement entre les sous-porteuses (50 Hz). On considère une image de 720 colonnes et de 576 lignes, avec 3 plans de couleur. Pour un maximum de compression, on choisit l'espace k et on utilise les propriétés de symétrie pour ne considérer qu'un demi-plan. Enfin, on ne garde que la moitié des lignes et la moitié des colonnes de ce demi-plan.
il faut 720/(2x2) = 180 bins par ligne pour l'arrière plan, donc 180x(576/2)x3 = 155520 bins à transmettre, donc 155520x2 sous-porteuses.
Il faut ajouter des sous-porteuses si on veut transporter une phase additionnelle sur un à quatre bits.
S'il y a 96 sous-porteuses minimum pour tous les points de l'avant plan (12 points au total), il faut un total de (180x2 + 96)x288x3 sous-porteuses minimum sans redondance dans l'avant plan, et (180x2 + 96*2)x288x3 sous-porteuses minimum avec redondance.
Il est nécessaire d'augmenter les fréquences d'échantillonnage (au delà de 400 kHz).
En utilisant 8000 sous-porteuses (qui utilisent une bande passante de 400 kHz), il faut environ 59,6 modulations minimum pour transmettre cette image avec redondance.
Le codage Reed-Solomon, le codage convolutif ainsi que le codage supplémentaire des répétitions ne concernent que l'avant plan.
Pour diminuer le nombre de sous-porteuses de l'arrière plan, on peut utiliser des modulations comme 8 QAM et 16 QAM (3 ou 4 bits par sous-porteuse) et utiliser les amplitudes et les phases opposées pour la réduction du facteur de crête.

Cas de la vidéo:

Vidéo avec des images de 720 colonnes, 576 lignes, 3 plans de couleur et 25 images par seconde.
On choisit l'espace k et 12 points pour l'avant plan.
On tient compte de la symétrie et on ne garde qu'une partie des lignes et une partie des colonnes (35% = 0,35, donc on a 126 bins par ligne et 202 lignes).
On choisit comme dans les exemples précédents les modulations DQPSK ou QPSK pour l'arrière plan et l'avant plan.
Il faut (126x2 + 96*2)x202x3x25 sous-porteuses minimum par seconde pour transmettre cette vidéo en direct.
Si on choisit 8000 sous-porteuses, il faut une rapidité de modulation minimum de 841 Hz.
On peut choisir les valeurs suivantes:
Espacement entre sous-porteuses: 1 kHz
Nombre de sous-porteuses: 8000
Bande passante utilisée: 8 MHz
Taille tampons FFT possible: 20000
Fréquence d'échantillonnage: 20 MHz

Vidéo avec des images de 720 colonnes, 480 lignes, 3 plans de couleur et 30 images par seconde.
Nombre de modulations minimum par seconde: 840 Hz ( (126x2 + 96*2)*168*3*30 ) / 8000 ).
On peut choisir les valeurs suivantes:
Espacement entre sous-porteuses: 1 kHz
Nombre de sous-porteuses: 8000
Bande passante utilisée: 8 MHz
Taille tampons FFT possible: 20000
Fréquence d'échantillonnage: 20 MHz

La vidéo est à utiliser avec les courtes distances. On peut néanmoins augmenter sensiblement les distances de transmission.
Le codage Reed-Solomon, le codage convolutif ainsi que le codage des répétitions ne concernent que l'avant plan. Dans ce cas, il sera nécessaire d'augmenter l'espacement entre les sous-porteuses sans être obligé de dépasser les 2 kHz.

Version Codebook

Avec la version codebook des codecs VLC, pour les média qui supportent cette version (par exemple la voix et les signaux quasi-stationnaires), on peut remplacer une trame unidimensionnelle entière par deux entiers courts (ou par quatre entiers courts, si on considère l'amplitude des sinus et l'amplitude des cosinus). Dans ce cas, il faut juste 32 bits ou 16 sous-porteuses pour toute la trame (64 bits ou 32 sous-porteuses dans le second cas).
Pour plus d'informations sur la version codebook, voir aux adresses suivantes:
   - Version Codebook
   - Version Codebook Unilatérale

Notes

- L'ensemble des opérations ci-dessus est compatible avec le recouvrement partiel des trames effectué au niveau des codecs VLC.

- L'ensemble des opérations ci-dessus est compatible avec le brouillage de l'avant plan et des positions des bandes.

- Un facteur de crête élevé est un des principaux inconvénients de la modulation OFDM car il entraîne beaucoup de travail supplémentaire pour les amplificateurs de puissance. L'utilisation des modulations comme DBPSK, BPSK, DQPSK ou QPSK permet de diminuer cet effet mais ne permet pas de le supprimer.

- Pour minimiser les émissions hors-bande (OOB ou Out-of-Band en anglais), on peut réserver quelques sous-porteuses au début (avant l'arrière plan) et à la fin (après l'avant-plan ou les positions des bandes), en ne leur faisant pas transporter d'informations.

- On n'a pas toujours droit à une grande passante. Par exemple, sur les réseaux de distribution, 4 bandes sont définies:
- 9–95 KHz : bande passante réservée au distributeur;
- 95–125 et 140–148,5 KHz : bande passante réservée à la domotique sans protocole d’accès;
- 125–140 KHz : bande passante réservée à la domotique avec protocole d’accès;

- En très bas débit, nos méthodes peuvent être compatibles avec les communications à bandes ultra étroites (Ultra-Narrow Band ou UNB en anglais), en n'utilisant que quelques sous-porteuses, chaque sous-porteuse occupant entre 50 et 100 Hz.

Levée de Fonds

Nous allons organiser une levée de fonds pour fabriquer des modems CPL multi-modes,
- compatibles avec les normes et protocoles décrits dans ce document, dans le cas général;
- offrant des modes permettant de mettre en ouvre nos protocoles.
Il faudra auparavant faire des tests et préciser les gains et les limites en terme de portée, de débit et de consommation d'énergie.
Les résultats seront facilement applicables aux supports physiques visés par la norme IEEE P1901 et la norme ITU-T G.hn, à savoir, en plus des lignes électriques:
- les câbles téléphoniques;
- les câbles coaxiaux;
- les fibres optiques en plastique.
Les méthodes utilisées étant semblables à celles utilisées en 4G LTE-M, les résultats seront facilement applicables aux réseaux cellulaires, en adaptant les espacements entre les sous-porteuses. Les trames générées pourront être compatibles avec les sous-trames de la 5G, la future norme de la téléphonie mobile.