PROCÉDÉ DE CODAGE DE DONNÉES À DOUBLE ENTRELACEMENT DE SYMBOLES DE PARITÉ, POUR UNE INFRASTRUCTURE RADIO, ET CODEC ASSOCIÉ
L'invention concerne la transmission de données par des infrastructures de transmission par voie d'ondes.
On entend ici par « infrastructure de transmission par voie d'ondes », toute infrastructure de communication dans laquelle la transmission de données se fait par voie d'ondes. Par conséquent, il pourra s'agir aussi bien d'un réseau de communication radio que d'un réseau de diffusion par voie d'ondes. A titre d'exemples non limitatifs, il pourra donc s'agir d'un réseau de diffusion sans fil (comme par exemple un réseau terrestre de type DVB-H (pour « Digital Video Broadcasting - Handhelds » - télévision mobile), ou un réseau hybride (c'est-à-dire à la fois satellitaire et terrestre (comme par exemple un réseau de type DVB-SH (pour « Digital Video Broadcasting - Satellite services to Handhelds ») (ou DVB-SSP) - voie satellitaire couplée à une voie radio terrestre de relais))), ou bien d'un réseau cellulaire ou mobile (comme par exemple un réseau de type GSM/EDGE ou UMTS) ou bien encore d'un réseau métropolitain ou MAN (pour « Metropolitan Area
Network » - comme par exemple un réseau de type WiMAX).
Il est rappelé que le réseau DVB-SH est une variante hybride du réseau DVB-H (pour « Digital Video Broadcasting - Handhelds ») qui a été développée pour la télévision mobile, c'est-à-dire pour la diffusion monodirectionnelle de contenus, de type programmes de télévision, en mode « broadcast » (diffusion/point-à-point) ou en mode « multicast » (point-à- multipoints). Dans un réseau DVB-SH la voie satellitaire est destinée à assurer une couverture globale tandis que la voie radio terrestre de relais est destinée à fournir au sol une couverture de type cellulaire. Il est également rappelé que la transmission de contenus en mode diffusion ou en mode multicast se fait par le biais de services dédiés, qui peuvent être éventuellement multiplexes temporellement.
Comme le sait l'homme de l'art, les signaux radio transmis par une infrastructure, par exemple de type hybride, font l'objet de dégradations, en particulier lorsqu'ils empruntent la bande S (comprise entre environ 1 ,55 GHz et environ 5,2 GHz). Le niveau de ces dégradations peut varier en fonction de l'environnement des terminaux de communication qui sont les destinataires des données transmises (éventuellement des contenus). En fait, le canal de propagation peut se trouver dans différents états qui dépendent du niveau d'affaiblissement du signal direct induit par une zone d'ombre locale (par exemple du fait de la présence d'arbre(s) ou de bâtiment(s)). Par exemple, en appliquant un modèle de Markov à une infrastructure de type DVB-SH, on peut montrer que le canal peut se trouver dans trois états appelés LOS (« pour « Line Of Sight » (ligne de visée - dans l'axe de l'émetteur)), ombragé (ou « shadowing ») et bloqué ou non passant (ou encore « blockage »). En présence d'une élévation angulaire satellitaire d'environ 40°, le modèle de Markov reproduit les variations d'affaiblissement du signal à grande échelle ou très faibles dans deux principaux environnements appelés respectivement « ombrage intermédiaire par des arbres » (ou ITS pour « Intermediate Tree Shadowing ») et suburbain (ou SUB pour « suburban »).
Afin de garantir aux terminaux mobiles une qualité de service élevée en présence de conditions radio difficiles (par exemple de type affaiblissement profond ou défaut d'alignement par rapport à l'émetteur), certains réseaux, comme par exemple ceux de type DVB-SH, mettent en œuvre une diversité à grande échelle temporelle. Cette dernière peut être assurée par un entrelacement (ou « interleaving ») effectué au niveau de la couche physique (pour les terminaux de classe 2) ou de la couche de liaison (pour les terminaux de classe 1). L'entrelacement au niveau de la couche de liaison est un entrelacement de salves (ou « bursts ») IP appelé MPE-IFEC (pour « MulitiProtocol Encapsulation - Inter-bursts Forward Error Code » - « encapsulation multiprotocole - codage d'erreur directe »). II est rappelé que la technique appelée FEC consiste à adjoindre côté émission de la redondance à des données pour permettre la correction côté réception d'une partie des erreurs introduites par des pertes sur le canal de transmission de ces données.
La technique MPE-IFEC repose sur ta mise en parallèle de M premières matrices (d'encodage/décodage), appelées ADTs (pour « Application Data Tables » - tables de données d'application), et constituées à partir de sous-ensembles de données d'au moins une salve (éventuellement IP (Internet Protocol)) reçue, les sous-ensembles de données de chaque salve étant répartis dans au moins une matrice d'encodage/décodage, puis la mise en parallèle de M secondes matrices, appelées FDT (pour « FEC Data Tables » - tables de données de FEC) et constituées de symboles de parité résultant d'un encodage (de type Reed- Solomon) des données qui sont contenues dans les M premières matrices, et enfin la répartition par simple entrelacement de sous-ensembles de symboles de parité de chaque seconde matrice dans S ensembles successifs contenant au moins les données respectives des salves successives reçues. On notera que les S ensembles de données FEC sont envoyés avec les données associées dans une tranche temporelle généralement appelée tranche temporelle de salve (ou « time-slice burst »). La technique de codage MPE- IFEC est par ailleurs décrite dans le document DVB Bluebook A.131 , intitulé « MPE-IFEC (draft TS 102 772 V1.1.1 ) », publié en novembre 2008 par l'ETSI (European Télécommunication Standard Institute). Un environnement ITS impose une augmentation de la longueur des salves erronées consécutives, et une réduction de la longueur des salves non erronées consécutives est réduite. En revanche, un environnement SUB impose une réduction de la longueur des salves erronées consécutives, et une augmentation de la longueur des salves non erronées consécutives. Or, on peut montrer que la technique MPE-IFEC n'est véritablement performante en présence d'un environnement ITS qu'à condition que la profondeur de l'entrelacement soit importante (typiquement 30 secondes, ce qui correspond à une variable S de valeur élevée), tandis qu'elle n'est véritablement performante en présence d'un environnement SUB qu'à condition que la profondeur de l'entrelacement soit faible (typiquement 10 secondes, ce qui correspond à une variable S de faible valeur). L'opérateur d'un réseau de type DVB-SH se retrouve donc contraint de configurer ce dernier en fonction du pire environnement, à savoir l'environnement ITS.
L'invention a donc pour but d'améliorer la situation dans une infrastructure de transmission par voie d'ondes.
Elle propose à cet effet un procédé, dédié au codage de données devant être transmises au moyen d'une infrastructure de transmission par voie d'ondes, et comprenant les étapes suivantes :
- constituer en parallèle M premières matrices de T lignes et C colonnes avec des sous-ensembles de données de B salves (ou « bursts ») successives reçues, les sous-ensembles de données de chaque salve étant répartis dans au moins deux premières matrices successives, - constituer en parallèle M deuxièmes matrices de T lignes et N colonnes avec des symboles de parité résultant d'un encodage des données qui sont contenues respectivement dans les lignes de chacune des M premières matrices,
- constituer en parallèle M troisièmes matrices de K lignes et C colonnes avec des symboles de parité résultant d'un encodage des données qui sont contenues respectivement dans les colonnes de chacune des M premières matrices,
- répartir par entrelacement (ou « interleaving »), d'une part, J sous- ensembles de symboles de parité de chaque deuxième matrice dans J ensembles successifs, et d'autre part, P sous-ensembles de symboles de parité de chaque troisième matrice dans P de ces ensembles successifs, et placer dans chacun des ensembles successifs les données respectives des salves successives reçues.
Le procédé selon l'invention peut comporter d'autres caractéristiques qui peuvent être prises séparément ou en combinaison, et notamment :
- la variable M peut être définie par l'équation M = B + max(0 ; max(J ; P) - D) + max(0 ; D - B), où max() est la fonction maximum et D est un délai, exprimé en nombre de salves, entre l'instant de réception des données d'une salve et l'instant de transmission par l'infrastructure des données de cette même salve ;
- la variable B peut être égale à 3 ;
- la variable J peut être égale à 2 ;
- la variable P peut être égale à 4 ;
- les M premières matrices peuvent être constituées au moyen d'une technique dite « encapsulation multiprotocole (MPE) » ;
- les M deuxièmes matrices et les M troisièmes matrices peuvent être constituées au moyen d'une technique dite de « correction d'erreur directe
(FEC) ».
L'invention propose également un codée (ou « codeur-décodeur »), destiné à équiper un équipement de communication propre à se connecter à une infrastructure de transmission par voie d'ondes, et comprenant : - des moyens de codage chargés de constituer en parallèle :
• M premières matrices de T lignes et C colonnes avec des sous- ensembles de données de B salves successives reçues, les sous- ensembles de données de chaque salve étant répartis dans au moins deux premières matrices successives, • M deuxièmes matrices de T lignes et N colonnes avec des symboles de parité résultant d'un encodage des données contenues respectivement dans les lignes de chacune des M premières matrices, et
• M troisièmes matrices de K lignes et C colonnes avec des symboles de parité résultant d'un encodage des données contenues respectivement dans les colonnes de chacune des M premières matrices, et
- des moyens d'entrelacement chargés de répartir par entrelacement, d'une part, J sous-ensembles de symboles de parité de chaque deuxième matrice dans J ensembles successifs, et d'autre part, P sous-ensembles de symboles de parité de chaque troisième matrice dans P de ces ensembles successifs, et de placer dans chacun des ensembles successifs les données respectives des salves successives reçues.
Les moyens de codage peuvent par exemple être chargés de constituer les M premières matrices au moyen d'une technique dite « encapsulation multiprotocole (MPE) ». En variante ou en complément, les moyens de codage peuvent par exemple être chargés de constituer les M troisièmes matrices au moyen d'une technique dite de « correction d'erreur directe (FEC) »
L'invention est particulièrement bien adaptée, bien que de façon non exclusive, aux réseaux hybrides de type DVB-SH (ou DVB-SSP), ainsi qu'à toutes leurs évolutions. Mais, l'invention s'applique d'une manière générale à tout type d'infrastructure de transmission de données par voie d'ondes. D'autres caractéristiques et avantages de l'invention apparaîtront à l'examen de la description détaillée ci-après, et des dessins annexés, sur lesquels :
- la figure 1 illustre de façon très schématique et fonctionnelle une infrastructure de transmission hybride permettant de mettre en œuvre l'invention, et
- la figure 2 illustre de façon partielle et schématique un exemple de codage de données de salves IP selon l'invention.
Les dessins annexés pourront non seulement servir à compléter l'invention, mais aussi contribuer à sa définition, le cas échéant. L'invention a pour objet de proposer un procédé de codage de données en vue de la transmission de ces données par une infrastructure de transmission par voie d'ondes.
Dans ce qui suit, on considère à titre d'exemple non limitatif que l'infrastructure de transmission par voie d'ondes est de type hybride (PFC, SAT, RA), et plus précisément qu'il s'agit d'un réseau de type DVB-SH (ou
DVB-SSP). Mais, l'invention n'est pas limitée à ce type d'infrastructure de transmission par voie d'ondes. Elle concerne en effet tout type d'infrastructure permettant de transmettre des données (éventuellement de contenus, éventuellement multimédia), par voie d'ondes, à destination de terminaux de communication radio. Par conséquent, il pourra s'agir aussi bien d'un réseau de communication radio que d'un réseau de diffusion par voie d'ondes. A titre d'exemples non limitatifs, il pourra également s'agir d'un réseau de diffusion sans fil (comme par exemple un réseau terrestre de type DVB-H (pour « Digital Video Broadcasting - Handhelds » - télévision mobile), ou d'un réseau cellulaire ou mobile (comme par exemple un réseau de type
GSM/EDGE ou UMTS) ou bien encore d'un réseau métropolitain ou MAN (pour « Metropolitan Area Network » - comme par exemple un réseau de type WiMAX).
Par ailleurs, on considère dans ce qui suit, à titre d'exemple non limitatif, que les terminaux de communication radio (TC) sont des téléphones mobiles (ou cellulaires) ou des assistants personnels numériques (ou PDAs) communicants. Mais, l'invention n'est pas limitée à ce type de terminal de communication radio. Elle concerne en effet tout équipement de communication, fixe ou mobile (ou portable ou encore cellulaire), capable au moins de recevoir des données par voie d'ondes via une infrastructure du type précité. Par conséquent, il pourra également s'agir d'un ordinateur fixe ou portable, d'un récepteur de contenus multimédia (comme par exemple un décodeur, une passerelle résidentielle (ou « residential gateway ») ou un STB (« Set-Top Box »)), dès lors qu'il est équipé de moyens de communication par voie d'ondes aptes au moins à la réception de données.
En outre, on considère dans ce qui suit, à titre d'exemple non limitatif, que les données, diffusés vers les terminaux (TC), sont des données de contenus multimédia tels que des programmes de télévision. Mais, l'invention n'est pas limitée à ce type de données. Elle concerne en effet tout type de contenu, et notamment les vidéos, les données de fichiers (ou « data »), les données de signalisation, les programmes de radio, et les contenus audio.
Comme cela est schématiquement illustré sur la figure 1 , la mise en œuvre de l'invention nécessite l'existence d'une infrastructure de transmission par voie d'ondes, ici de type hybride et donc comprenant une voie de transmission satellitaire et une voie de transmission radio terrestre.
La voie de transmission satellitaire comprend une plateforme (ou passerelle) satellitaire PFC pour la fourniture de contenus encodés et au moins un satellite de communication SAT couplés l'un à l'autre par voie d'ondes.
La plateforme satellitaire PFC est par exemple couplée à un serveur de contenus SC qui l'alimente en contenus sous la forme de salves (ou « bursts »), ici de type IP (il pourrait en effet s'agir de données de paquets de type NAL (vidéo) ou RTP, par exemple). Elle est chargée d'encoder ces contenus reçus au moyen d'un codée CD (mettant en œuvre un procédé selon l'invention) avant de les transmettre par voie d'ondes au satellite (de communication) SAT, qui se charge ensuite de les retransmettre (diffuser)
vers des terminaux TC, soit directement, soit indirectement via la voie de transmission radio terrestre.
Cette voie de transmission radio terrestre comprend au moins un réseau d'accès radio RA qui peut par exemple faire partie d'un réseau de communication mobile (ou cellulaire). C'est l'hypothèse qui est retenue dans ce qui suit, à titre d'exemple non limitatif. Par exemple, ce réseau d'accès radio RA est de type UTRAN (ou 3G). Il comporte donc principalement des stations de base N (appelées Node Bs dans le cas d'un UTRAN) et des contrôleurs de réseau radio CR (appelés RNCs dans le cas d'un UTRAN), raccordés entre eux, ainsi qu'un équipement de communication satellitaire PS qui est couplé par voie d'ondes au satellite SAT (pour recevoir les contenus encodés) et par voie filaire aux contrôleurs de réseau radio CR (pour les alimenter en contenus encodés reçus.
Les terminaux TC peuvent recevoir les contenus encodés soit directement du satellite SAT, lorsqu'ils ne sont pas situés dans une zone d'ombre, soit des stations de base N, lorsqu'ils sont situés dans une zone d'ombre.
Chaque terminal TC comprend un codée CD, similaire à celui qui équipe la plateforme satellitaire PFC, de manière à pouvoir décoder les contenus encodés qu'il reçoit.
L'invention propose de mettre en œuvre au sein du codée CD de la plateforme satellitaire PFC un procédé de codage des données de contenu reçues sous la forme de salves IP (et plus précisément encapsulées en
RTP/UDP/IP. Il est rappelé que l'on appelle datagrammes IP les données qui sont contenues dans une salve IP.
Le procédé selon l'invention comprend quatre étapes principales qui sont effectuées par le codée CD lorsque sa plateforme satellitaire PFC reçoit des salves de données de contenu(s) du serveur de contenus SC.
Une première étape principale du procédé selon l'invention consiste à constituer en parallèle M premières matrices de T lignes et C colonnes avec des sous-ensembles de données de B salves IP de données. On comprendra que l'on fonctionne ici au moyen de fenêtres glissantes.
Par exemple, la variable M peut être définie par l'équation suivante :
M = B + max(0 ; max(J ; P) - D) + max(0 ; D - B), où max() est la fonction maximum, J et P sont deux variables représentatives de deux profondeurs d'entrelacement sur lesquelles on reviendra plus loin, et D est un délai qui est exprimé en nombre de salves Si et qui représente l'écart temporel entre l'instant de réception des données d'une salve Si et l'instant de transmission par l'infrastructure hybride (et plus précisément par la plateforme satellitaire PFC) des données de cette même salve Si, une fois encodées par le codée CD.
Chaque première matrice peut être considérée comme un bloc de B sous-blocs qui sont chacun constitués d'un certain nombre de colonnes de données issues d'une salve IP Si (et constituant un sous-ensemble de cette dernière).
La variable B est au moins égale à deux. Par conséquent, les sous- ensembles de données de chaque salve Si sont répartis dans au moins deux premières matrices successives (Si et Si+1). Par exemple, la valeur de B peut être égale à trois ou quatre, voire même plus.
Le nombre C de colonnes de chaque première matrice est par exemple égal à 191. Le nombre T de lignes de chaque première matrice est par exemple au plus égal à 1024. On notera que les M premières matrices peuvent par exemple être constituées au moyen de la technique dite « encapsulation multiprotocole » (ou MPE). On notera également que lorsque la technique d'encodage est celle qui est appelée MPE-IFEC, chaque première matrice est ce que l'homme de l'art appelle une table de données d'application (ou ADT (pour « Application Data Table »)).
Une deuxième étape principale du procédé selon l'invention consiste à constituer en parallèle M deuxièmes matrices de T lignes et N colonnes avec des symboles de parité qui résultent d'un encodage des données qui sont contenues respectivement dans les T lignes de chacune des M premières matrices constituées lors de la première étape principale.
On comprendra que chaque deuxième matrice est issue de (et donc associée à) l'une des M premières matrices.
Par exemple, les M deuxièmes matrices peuvent être constituées au
moyen de la technique dite de « correction d'erreur directe » (ou FEC). Dans ce cas, l'encodage de ligne est de type Reed-Solomon (ou RS) et chaque deuxième matrice est ce que l'homme de l'art appelle une table de données FEC (ou FDT (pour « FEC Data Table »)). Le nombre N de colonnes de chaque deuxième matrice est par exemple égal à 64 (dans le cas DVB-SH).
Une troisième étape principale du procédé selon l'invention consiste à constituer en parallèle M troisièmes matrices de K lignes et C colonnes avec des symboles de parité qui résultent d'un encodage des données qui sont contenues respectivement dans les C colonnes de chacune des M premières matrices constituées lors de la première étape principale.
On comprendra que chaque troisième matrice est issue de (et donc associée à) l'une des M premières matrices.
Par exemple, les M troisièmes matrices peuvent être constituées au moyen de la technique dite de « correction d'erreur directe » (ou FEC). Dans ce cas, l'encodage de ligne est de type Reed-Solomon (ou RS) et chaque troisième matrice est ce que l'homme de l'art appelle une table de données
FEC (ou FDT (pour « FEC Data Table »)).
Le nombre K de lignes de chaque troisième matrice est par exemple égal à 64 (dans le cas DVB-SH).
Il est important de noter que les deuxième et troisième étapes principales peuvent être effectuées sensiblement simultanément.
On notera que les deuxième et troisième matrices qui sont issues de
(et donc associées à) l'une des M premières matrices peuvent être considérées comme deux parties complémentaire d'une « matrice produit » constituée de symboles de parité que l'on peut ici appeler des « codes de produit » Cij (i et j désignent respectivement une ligne et une colonne).
Chaque rangée de cette matrice produit constitue par exemple un mot code
RS du champ Galois GF(q) ayant une capacité de correction d'erreur t1 , et chaque colonne de cette matrice produit constitue par exemple un mot code
RS du champ Galois GF(q) ayant une capacité de correction d'erreur t2.
On notera que les première, deuxième et troisième étapes principales peuvent être mises en œuvre par un module de codage MC du codée CD qui
équipe la plateforme satellitaire PFC.
Une quatrième étape principale du procédé selon l'invention consiste notamment à répartir au moyen d'un double entrelacement (ou « interleaving »), d'une part, J sous-ensembles de symboles de parité de chaque deuxième matrice dans J ensembles Ei successifs, et d'autre part, P sous-ensembles de symboles de parité de chaque troisième matrice dans P de ces ensembles Ei successifs.
Comme indiqué précédemment les variables J et P sont représentatives des deux profondeurs d'entrelacement du procédé d'encodage selon l'invention. On entend ici par « profondeur d'entrelacement » le nombre d'ensembles de données Ei successifs dans lesquels sont répartis les sous-ensembles de symboles de parité d'une deuxième ou troisième matrice.
L'une des deux variables J et P peut être supérieure ou égale à un, tandis que l'autre doit être supérieure ou égale à deux. Par exemple, la valeur de J peut être égale à deux ou trois, voire même plus, et la valeur de P peut être égale à trois ou quatre, voire même plus.
On notera que J peut être égal à P, mais cela n'est pas obligatoire.
La quatrième étape principale consiste également à placer dans chacun des ensembles Ei successifs les données respectives des salves successives Si reçues. Chaque ensemble Ei produit par le procédé de codage selon l'invention est donc finalement constitué au moins des données de l'une des salves Si reçues, de J sous-ensembles de symboles de parité issus de J deuxièmes matrices et de P sous-ensembles de symboles de parité issus de P troisièmes matrices.
On notera également que la quatrième étape principale peut être mise en œuvre par un module d'entrelacement ME du codée CD qui équipe la plateforme satellitaire PFC et qui est couplé au module de codage MC du codée CD. On a schématiquement représenté sur la figure 2 un exemple de codage de données de salves IP effectué au moyen d'un codée CD mettant en œuvre le procédé selon l'invention. Dans cet exemple, la variable M est égale à 4, la variable B est égale à 3, la variable J est égale à 2 et la variable
P est égale à 4. Par ailleurs, la partie « supérieure » de la figure 2 matérialise huit salves S1 à S8 successivement reçues par la plateforme satellitaire PFC, la partie « intermédiaire » de la figure 2 matérialise les quatre (M=4) associations parallèles d'une première matrice (ADT)1 d'une deuxième matrice (FDT1), issue de cette première matrice (ADT), et d'une troisième matrice (FDT2), issue de cette même première matrice (ADT), et la partie « inférieure » de la figure 2 matérialise cinq ensembles E4 à E8 constitués successivement (« au fil de l'eau ») à partir de salves Si précédemment reçues et des deuxième (FDT1) et troisième (FDT2) matrices des associations précitées (conformément aux flèches unidirectionnelles).
Du côté réception (c'est-à-dire dans les terminaux TC), les salves erronées sont corrigées progressivement étant donné que les ensembles Ei précités, qui sont transmis successivement via le satellite SAT et via le réseau d'accès radio RA, comportent des sous-ensembles complémentaires de symboles de parité, et donc qu'il faut attendre d'avoir reçu au moins (B + max(J.P) - D) tranches temporelles de salve (ensembles Ei et FEC associés) pour disposer de l'intégralité des symboles de parité (FEC) nécessaires à la correction des données de contenu d'une salve Si initialement reçue par la plateforme satellitaire PFC. Du côté réception, le décodage des données de contenu (qui inclut les éventuelles corrections) est assuré par les codées CD des terminaux TC.
L'invention est particulièrement avantageuse car elle permet d'effectuer une correction efficace aussi bien dans un environnement ITS que dans un environnement SUB. En outre, elle permet de diminuer Ia bande passante utilisée pour la redondance de correction d'erreur du fait que le taux de codage est réduit, et par conséquent elle permet d'augmenter le nombre de services diffusés grâce aux performances supérieures offertes par les codes de produit en matière de correction d'erreur. Par ailleurs, l'invention offre plus de flexibilité aux opérateurs pour dimensionner leurs infrastructures hybrides, du fait qu'elle permet d'améliorer la qualité des services et d'économiser de la bande passante. Enfin, étant donné que les profondeurs d'entrelacement (J et P) peuvent être faibles, la qualité perçue des contenus est améliorée et le délai de commutation entre contenus de canaux différents
(ou « zapping time ») est réduit (en cas d'erreur il suffit en effet d'attendre un délai égal à min(J,P) pour changer de canal).
L'invention ne se limite pas aux modes de réalisation de procédé de codage, de codée et de plateforme (ou passerelle) décrits ci-avant, seulement à titre d'exemple, mais elle englobe toutes les variantes que pourra envisager l'homme de l'art dans le cadre des revendications ci-après.