ArithmétiqueNotion · Glossaire
code CIRC
Sigle de Cross Interleave Reed-Solomon Code. Code correcteur d'erreurs combinant un entrelacement croisé et un codage de Reed-Solomon pour obtenir une robustesse élevée face aux erreurs en rafale. On le rencontre par exemple sur des supports audio numériques et dans certaines transmissions de données scientifiques, notamment en astronomie. L'entrelacement redistribue les données selon un schéma précis afin qu'une rafale de longueur compatible soit répartie entre plusieurs mots de code et devienne plus accessible à la correction.
Sommaire
Ce que vous allez apprendre
- Identifier les rôles distincts de l'entrelacement croisé et du codage de Reed-Solomon.
- Suivre sur six symboles la dispersion d'une rafale de trois erreurs.
- Reconnaître pourquoi l'entrelacement ne constitue pas à lui seul une correction.
En clair
Une rayure ou une perturbation peut abîmer plusieurs données numériques qui se suivent. Si ces données restent voisines, la correction doit affronter tout le dommage au même endroit.
Le code CIRC change la donne en redistribuant d'abord les données selon un ordre précis. Après remise en ordre, une rafale d'erreurs se retrouve éparpillée si sa longueur et le schéma d'entrelacement permettent de la répartir entre plusieurs groupes. Le codage de Reed-Solomon peut alors traiter les erreurs de chaque groupe, dans la limite de sa capacité de correction.
Définition
CIRC est le sigle de Cross Interleave Reed-Solomon Code. C'est un code correcteur d'erreurs qui associe deux opérations complémentaires : un codage de Reed-Solomon, qui fournit de la redondance pour repérer et corriger des données altérées, et un entrelacement croisé, qui change leur ordre selon un schéma déterminé.
Lors de la restitution, l'ordre inverse reconstitue les groupes de données. Avec le schéma d'entrelacement prévu, une suite d'erreurs consécutives dont la longueur reste compatible avec la répartition visée se répartit entre plusieurs groupes, au lieu de rester concentrée dans un seul. Cette dispersion rend les erreurs en rafale plus accessibles au mécanisme de Reed-Solomon. Elle ne supprime toutefois aucune erreur par elle-même : la récupération dépend encore de la redondance disponible et de la capacité du code employé.
Le CIRC s'applique aux données numériques. Il est employé sur des supports audio numériques ainsi que dans la transmission de données scientifiques, notamment en astronomie. Le dessin associé montre uniquement le geste logique de l'entrelacement ; il ne prétend pas reproduire tous les paramètres d'une implantation réelle du CIRC.
Un exemple, pas à pas
Considérons un modèle réduit avec trois groupes, A, B et C. Chaque groupe contient deux symboles : A1, A2 ; B1, B2 ; C1, C2. L'ordre transmis est A1, B1, C1, A2, B2, C2. Une rafale altère les trois symboles consécutifs B1, C1 et A2.
1. Remettons les symboles dans leurs groupes d'origine.
2. Le groupe A contient une altération sur A2.
3. Le groupe B contient une altération sur B1.
4. Le groupe C contient une altération sur C1.
2. Le groupe A contient une altération sur A2.
3. Le groupe B contient une altération sur B1.
4. Le groupe C contient une altération sur C1.
La rafale de longueur trois est donc devenue une altération par groupe. On peut refaire le contrôle en lisant l'ordre transmis : les positions 2, 3 et 4 appartiennent bien à B, C et A. Ce modèle vérifie la dispersion produite par l'entrelacement ; il ne fixe pas la capacité de correction d'un code CIRC réel.
En pratique
Sur un support audio numérique, une zone endommagée peut toucher une suite de données voisines. Le schéma d'entrelacement du CIRC vise à répartir cette suite entre plusieurs groupes afin que le décodage ne rencontre pas toutes les altérations dans un même mot de code.
Pour transmettre des données scientifiques, notamment en astronomie, le même principe protège le flux contre les erreurs en rafale : l'ordre est rétabli avant que la correction de Reed-Solomon exploite la redondance.
La récupération dépend de la répartition des erreurs ou des effacements entre les mots de code, de leur nombre dans chacun et de la capacité effective du code. Une rafale devient plus accessible à la correction si le schéma d'entrelacement la répartit suffisamment ; des erreurs déjà isolées ne sont pas pour autant négligeables si elles dépassent cette capacité dans un même mot de code.
À ne pas confondre
Code CIRC et code de Reed-Solomon. Reed-Solomon est la composante de codage correcteur ; le CIRC associe ce codage à un entrelacement croisé. Si l'ordre des données n'est pas redistribué, on ne décrit donc pas à lui seul le mécanisme complet du CIRC.
Entrelacement et correction. L'entrelacement déplace logiquement les données, mais ne répare aucun symbole. Dans l'exemple, les trois altérations subsistent après remise en ordre ; seule leur répartition entre A, B et C a changé.
Limites et pièges
Une rafale n'est pas toujours récupérable. Le symptôme est qu'un groupe reconstitué contient encore plus d'altérations que le codage ne peut en corriger. Il faut alors comparer la répartition obtenue à la capacité du code réellement employé ; cette capacité ne se déduit pas du seul sigle CIRC.
Le schéma d'entrelacement compte. Une redistribution quelconque ne suffit pas. Si plusieurs symboles d'un même groupe restent voisins dans le flux, une seule rafale peut encore les atteindre ensemble ; il faut suivre exactement le schéma prévu au codage puis son inverse au décodage.
Le modèle à six symboles est illustratif. Son cas charnière est la rafale de trois positions consécutives, répartie ici en une altération dans chacun des trois groupes. Ce résultat décrit cet ordre précis, pas tous les paramètres d'un système CIRC réel.
Pour aller plus loin
Pour prolonger l'étude, on peut séparer trois questions : quelle redondance le codage ajoute-t-il, quelle permutation l'entrelacement applique-t-il, et quelle répartition d'erreurs apparaît après l'opération inverse ? Ces trois lectures permettent d'évaluer un dispositif concret sans confondre dispersion et correction. Elles montrent aussi quelles données sont nécessaires pour déterminer une capacité de récupération, au lieu de l'attribuer au seul nom du code.
Explorez les mathématiques autrement
Retrouvez nos magazines, podcasts et jeux pour explorer les mathématiques autrement.
Découvrir les offres
