FR2756991A1 - Decodeur reed - solomon destine a etre utilise en television avancee - Google Patents

Decodeur reed - solomon destine a etre utilise en television avancee Download PDF

Info

Publication number
FR2756991A1
FR2756991A1 FR9713577A FR9713577A FR2756991A1 FR 2756991 A1 FR2756991 A1 FR 2756991A1 FR 9713577 A FR9713577 A FR 9713577A FR 9713577 A FR9713577 A FR 9713577A FR 2756991 A1 FR2756991 A1 FR 2756991A1
Authority
FR
France
Prior art keywords
error
value
output
galois
polynomial
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR9713577A
Other languages
English (en)
Other versions
FR2756991B1 (fr
Inventor
Yong Hee Im
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Maple Vision Technologies Inc Ca
Original Assignee
Daewoo Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1019960049690A external-priority patent/KR100192801B1/ko
Priority claimed from KR1019960051202A external-priority patent/KR100215570B1/ko
Priority claimed from KR1019960060085A external-priority patent/KR100192802B1/ko
Application filed by Daewoo Electronics Co Ltd filed Critical Daewoo Electronics Co Ltd
Publication of FR2756991A1 publication Critical patent/FR2756991A1/fr
Application granted granted Critical
Publication of FR2756991B1 publication Critical patent/FR2756991B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Television Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Décodeur Reed-Solomon destiné à être utilisé en télévision avancée comprenant: - un générateur d'impulsions d'horloge, - une mémoire tampon FIFO, - un calculateur de syndrome, - un sélecteur de syndrome, - une unité de calcul de polynôme de localisation d'erreur, - un correcteur d'erreur et - un contrôleur pour générer une pluralité de signaux de contrôle pour contrôler le calculateur de syndrome, le sélecteur de syndrome, l'unité de calcul de polynôme de localisation d'erreur et le correcteur d'erreur.

Description

La présente invention concerne un appareil pour décoder et corriger les
erreurs présentes dans des données transmises ou mémorisées et, plus particulièrement, un décodeur Reed-Solomon pour décoder et corriger les erreurs présentes dans les données codées par le code Reed-Solomon pour obtenir des données originales en Télévision Avancée (Advanced
Television (ATV)).
Il arrive communément que les bruits qui se produisent au cours de la transmission, de la mémorisation ou de la récupération de données entraînent des erreurs dans les données. Divers appareils employant des techniques de codage pour coder les données à transmettre ou à mémoriser,
capables de corriger des erreurs, ont été développés dans le passé.
Dans ces techniques de codage, un ensemble de bits de contrôle est ajouté à un groupe de bits de message ou d'informations pour former un mot de code. Les bits de contrôle, qui sont déterminés par un codeur, sont utilisés pour détecter et corriger les erreurs. A cet égard, le codeur traite essentiellement les bits de message en tant que coefficients d'un polynôme de message binaire i(X) et déduit les bits de contrôle en traitant, par un polynôme de génération de code g(X), le polynôme de message i(X) par multiplication ou par division, pour, de ce fait, fournir un polynôme de mot 2 0 de code c(X). Le polynôme de génération de code g(X) est sélectionné selon les propriétés souhaitées d'un mot de code, de sorte que le mot de code appartiendra à une classe particulière de codes de groupe binaire de correction d'erreur (voir, par exemple, S. Lin et al., "Error Control Coding
Fundamentals and Applications", Prentice-Hall, 1983).
Une classe de codes de correction d'erreur consiste en les codes BCH (Bose-Chaudhuri-Hocquenghen) bien connus, qui comprennent le code ReedSolomon (RS). La base mathématique du code Reed-Solomon est expliquée dans la référence mentionnée ci-dessus de Lin et al. et, également, dans Berlekamp, "Algebraic Coding Theory", McGraw-Hill, 1968, auquel il est fait référence, de plus, dans le Brevet U.S. N 4 162 480 délivré à Berlekamp. En même temps, le décodage des codes de correction d'erreur Reed-Solomon nécessite le calcul de plusieurs polynômes avec des coefficients dans un champ de Galois fini GF(2M). Ces polynômes sont généralement connus en tant que polynôme de syndrome S(X), polynôme
3 5 de localisation d'erreur c(X) et polynôme d'évaluation d'erreur f(X).
Si les racines du polynôme de génération de code g(X) du code Reed-
Solomon sont les 2T puissances consécutives de a comme dans
l'Expression 1, un nombre T d'erreurs peuvent être corrigées.
Expression 1 2T g(X)= (x-a ') i=l
o a correspond à un élément primitif dans le champ de Galois fini GF(2M).
Au cours de la réception ou de la récupération d'un mot de code transmis ou mémorisé, certains bruits sont formés dans un modèle d'erreur dans le mot de code. Afin de traiter le modèle d'erreur généré dans un mot de code codé selon le code Reed-Solomon, une procédure de correction
d'erreur comprenant les quatre étapes suivantes est généralement utilisée.
Pour examiner la procédure de correction d'erreur, on fera référence à un code Reed-Solomon consistant en mots de code contenant un nombre N de symboles de M bits (par exemple, 8 bits) (dont un nombre K de symboles sont des symboles d'informations et un nombre (N-K) de symboles sont des symboles de contrôle. Dans ce cas, le polynôme de mot
de code c(X) devient un polynôme du (N-1)ème ordre et 2T est égal à (N-
K). Dans la première étape de correction d'erreur, un nombre 2T de valeurs 2 0 de syndrome So, Sl,..., S2t 1 sont calculés à partir du mot de code reçu r(X), c'est-à-dire un polynôme du (N-i)ème ordre représentant le mot de code reçu. Le mot de code reçu r(X) est représenté par rN-IX N- +rN-2X N2+...+rlX +r0, o rj est un (N-j)ème symbole dans un mot de code. Dans la seconde étape, les coefficients du polynôme de localisation d'erreur s(X) sont calculés en utilisant le polynôme de syndrome S(X). Dans la troisième étape, le polynôme de localisation d'erreur a(X) est résolu pour obtenir ses racines,
qui représentent l'emplacement d'erreur dans le mot de code reçu. C'està-
dire, si remplacer le polynôme de localisation d'erreur c(X) par une 3 0 puissance de l'élément primitif, ai, aboutit à "O" (c'est-à-dire que ai devient la racine de ca(X)), une erreur s'est produite dans rj, c'est-àdire le (N-J)ème symbole du mot de code reçu. Dans la quatrième étape, les valeurs d'erreur ej sont calculées en utilisant les emplacements d'erreur et les valeurs de syndrome. Les expressions mathématiques des valeurs de syndrome et des coefficients du polynôme de localisation d'erreur sont exposées dans le Brevet U.S. N 4 162 480 mentionné ci- dessus. Maintenant, la quatrième
étape va être expliquée plus en détail.
D'abord, le polynôme d'évaluation d'erreur Q(X) peut être exprimé par l'Expression 2 qui suit. Expression 2 Q(X) = a(X)S(X) o S(X) est le polynôme de syndrome dont les coefficients sont les valeurs
de syndrome.
1 0 Après avoir déduit le polynôme d'évaluation d'erreur Q(X), une valeur
d'erreur ej peut être calculée selon l'Expression 3 qui suit.
eJ =ctj fQ(c-) 1 s o a'(X) est la première dérivée du polynôme de localisation d'erreur a(X), t'J est la racine du polynôme de localisation d'erreur a(X) obtenu dans la troisième étape et les valeurs d'erreur ej correspondent à l'un du (N-j)ème
symbole qui est l'emplacement d'erreur obtenu dans la troisième étape.
C'est-à-dire que, une fois qu'on a trouvé les valeurs d'erreur, le mot de code original peut être récupéré en ajoutant la valeur d'erreur au symbole correspondant. En même temps, les spécifications du code Reed- Solomon à définir en
télévision avancée peuvent être résumées comme suit.
* RS (207 187), la capacité de correction d'erreur t = 10 (c'est-à-dire 80 bits) * Le code Reed-Solomon utilisant une partie des éléments dans le champ de Galois fini GF(2 8) * Le polynôme de génération de champ f(x)=x 8+x4+x3+x2+ 1 * Le polynôme de génération de code 3 0 g(X) = (X + aO) (X + aI)...(X +,a8) (X + 19) * L'octet de synchronisation est ajouté seulement une fois que les données d'informations sont codées en utilisant le code Reed-Solomon Récemment, plusieurs architectures à très grande intégration pour
mettre en oeuvre des décodeurs Reed-Solomon (RS) ont été développées.
3 5 Les décodeurs Reed-Solomon à très grande intégration existants sont destinés à récupérer des données codées par le code Reed-Solomon, présentant une capacité de correction d'erreur t correspondant à un multiple
de 8. Cependant, le décodeur pour le code Reed-Solomon mentionné ci-
dessus à définir en télévision avancée n'a pas été proposé sous forme de matériel. Compte tenu de ce qui précède, c'est un objet de la présente invention de prévoir un décodeur Reed-Solomon pour décoder et corriger les erreurs dans les données codées selon un code Reed-Solomon à définir en
télévision avancée pour obtenir des données originales.
Afin d'atteindre cet objectif, la présente invention prévoit un décodeur Reed-Solomon destiné à être utilisé en télévision avancée pour décoder et corriger les erreurs dans un symbole reçu codé par un code Reed- Solomon présentant une capacité de correction d'erreur de multiples de 10(t), comprenant: 1 5 des moyens de génération d'horloge destinés à générer une horloge RS t fois plus rapide qu'une horloge de symbole; des moyens formant mémoire tampon premier entré-premier sorti destinés à verrouiller le symbole reçu conformément à l'horloge RS; des moyens de calcul de syndrome destinés à calculer des valeurs de 2 0 syndrome à partir du symbole reçu conformément à l'horloge RS; des moyens de sélection de syndrome destinés à sélectionner une des valeurs de syndrome sorties à partir des moyens de calcul de syndrome et une valeur "OxOO" conformément à un signal de sélection de syndrome; des moyens de calcul de polynôme de localisation d'erreur destinés à calculer les coefficients d'un polynôme de localisation d'erreur en utilisant les valeurs de syndrome sorties à partir des moyens de sélection de syndrome conformément à l'horloge RS et destinés à fournir les coefficients et leur ordre le plus élevé; des moyens de correction d'erreur destinés à générer une valeur 3 0 d'erreur en utilisant les valeurs de syndrome et les coefficients du polynôme de localisation d'erreur conformément à l'horloge RS et destinés à fournir un symbole récupéré à erreurs corrigées en ajoutant la valeur d'erreur au symbole reçu sorti à partir des moyens formant mémoire tampon premier entré-premier sorti; et des moyens de contrôle destinés à générer une pluralité de signaux de contrôle pour contrôler les moyens de calcul de syndrome, les moyens de sélection de syndrome, les moyens de calcul de polynôme de localisation
d'erreur et les moyens de correction d'erreur.
Les objets ci-dessus et les autres, caractéristiques et avantages de la
présente invention deviendront évidents lors de la lecture de la description
détaillée qui suit des modes de réalisation préférés de l'invention conjointement avec les dessins joints, sur lesquels: la figure 1 est un schéma fonctionnel d'un décodeur Reed-Solomon 1 0o destiné à être utilisé en télévision avancée selon la présente invention; la figure 2 est une vue illustrant des signaux d'entrée/sortie du contrôleur montré sur la figure 1; la figure 3 est un schéma fonctionnel du calculateur de syndrome montré sur la figure 1; i la figure 4 est un schéma fonctionnel de la cellule de calcul de syndrome montrée sur la figure 3; la figure 5 est un schéma fonctionnel de l'unité de calcul de polynôme de localisation d'erreur montrée sur la figure 1; la figure 6 est un schéma fonctionnel du calculateur de divergence 2 0 montré sur la figure 5; la figure 7 est un schéma fonctionnel du correcteur d'erreur montré sur la figure 1; la figure 8 est un schéma fonctionnel de l'unité de mémorisation d'élément commun montrée sur la figure 7; la figure 9 est un schéma fonctionnel de l'unité de calcul de polynôme d'évaluation d'erreur montrée sur la figure 7; la figure 10 est un schéma fonctionnel de l'unité d'évaluation de polynôme d'évaluation d'erreur montrée sur la figure 7; la figure 11 est un schéma fonctionnel de l'unité d'évaluation de 3 0 polynôme de localisation d'erreur montrée sur la figure 7; la figure 12 est un schéma fonctionnel selon un premier mode de réalisation du calculateur/correcteur de valeur d'erreur montré sur la figure 7; la figure 13 est un schéma fonctionnel selon un autre mode de réalisation du calculateur/correcteur de valeur d'erreur montré sur la figure 7; la figure 14 est un schéma fonctionnel de l'unité de décision d'échec de récupération montrée sur la figure 7; la figure 15 est un schéma fonctionnel du calculateur de taux d'erreur
de bit montré sur la figure 1.
On va maintenant se référer en détail à la présente invention dont des exemples sont illustrés sur les dessins joints. A chaque fois que c'est possible, les mêmes numéros de référence seront utilisés tout au long des
dessins pour faire référence à des parties identiques ou similaires.
Un décodeur Reed-Solomon destiné à être utilisé en télévision avancée selon la présente invention, tel que montré sur la figure 1, comprend un générateur d'impulsions d'horloge 1, une mémoire tampon d'entrée 2, une mémoire tampon premier entré-premier sorti (FIFO) 3, un calculateur de syndrome 4, une mémoire morte 5, un sélecteur de syndrome 6, une unité de calcul de polynôme de localisation d'erreur 7, un correcteur d'erreur 8, un
calculateur de taux d'erreur de bit (BER) 9 et un contrôleur 10.
Sur la figure 1, le générateur d'horloge 1 génère une horloge RS RSCLK 10 fois plus rapide qu'une horloge de symbole et la sort en tant que signal d'horloge à chaque composant, à savoir, à la mémoire tampon d'entrée 2, à la mémoire tampon premier entré-premier sorti 3, au calculateur de syndrome 4, à l'unité de calcul de polynôme de localisation
d'erreur 7, au correcteur d'erreur 8 et au calculateur de taux d'erreur de bit 9.
2 5 La mémoire tampon d'entrée 2 comprend 8 bascules bistables D connectées à 8 bus de données de bit en parallèle, verrouille un symbole de réception R_SYM codé selon le code Reed-Solomon conformément à l'horloge RS RS_CLK et le sort vers la mémoire tampon premier entrépremier sorti 3 et
vers le calculateur de syndrome 4, respectivement.
La mémoire tampon premier entré-premier sorti 3 verrouille le symbole de réception R_SYM provenant de la mémoire tampon d'entrée 2 conformément à l'horloge RS RS_CLK, le retarde d'un temps prédéterminé et le sort vers le correcteur d'erreur 8 et vers le calculateur de taux d'erreur de bit 9, respectivement. Le calculateur de syndrome 4 calcule des valeurs de syndrome à partir du symbole de réception R_SYM sorti de la mémoire tampon d'entrée 2, génère des valeurs de syndrome finales SYND lorsque tous les symboles d'un mot de code R_206 à R_0 sont entrés et les sort vers
le sélecteur de syndrome 6.
Le sélecteur de syndrome 6 sélectionne les valeurs de syndrome SYND sorties du calculateur de syndrome 4 ou une valeur "0x00" mémorisée dans la mémoire morte 5 conformément à un signal de passage de syndrome SYND_PASS sorti du contrôleur 10 et les sort vers l'unité de calcul de polynôme de localisation d'erreur 7 et vers le correcteur d'erreur 8, respectivement. L'unité de calcul de polynôme de localisation d'erreur 7 calcule un coefficient o_COEF d'un polynôme de localisation d'erreur ci(X) en utilisant les valeurs de syndrome SYND sorties du sélecteur de syndrome 6 et sort le coefficient c_COEF du polynôme de localisation d'erreur a(X) et l'ordre le plus élevé L du polynôme de localisation d'erreur c(X) vers le
correcteur d'erreur 8.
Le correcteur d'erreur 8 génère une valeur d'erreur ei en utilisant les valeurs de syndrome SYND provenant du sélecteur de syndrome 6 et le coefficient acCOEF du polynôme de localisation d'erreur a(X) provenant de l'unité de calcul de polynôme de localisation d'erreur 7 et sort un symbole récupéré dont les erreurs sont corrigées C_SYM en ajoutant la 2 0 valeur d'erreur ei au symbole de réception R_SYM provenant de la mémoire tampon premier entré-premier sorti 2. En même temps, le correcteur d'erreur 8 sort un signal d'échec de récupération UNRCVR_FLAG si l'ordre le plus élevé L du polynôme de localisation d'erreur c(X) est supérieur à une
capacité de correction d'erreur t.
2 5 Le calculateur de taux d'erreur de bit 9 calcule un taux d'erreur de bit en comparant le symbole de réception R_SYM au symbole récupéré C_SYM. Le contrôleur 10 génère et sort divers signaux de contrôle pour contrôler le calculateur de syndrome 4, le sélecteur de syndrome 6, l'unité de calcul de polynôme de localisation d'erreur 7, le correcteur d'erreur 8 et
3 0 le calculateur de taux d'erreur de bit 9.
Ensuite, avec référence aux figures 2 à 15, le fonctionnement de chaque composant de la présente invention illustré sur la figure 1 va être
décrit en détail.
Le contrôleur 10, tel que montré sur la figure 2, reçoit un signal de réinitialisation RST, un signal de validation ENA, un signal de synchronisation de symbole SSYNC provenant de l'extérieur et une horloge RS RS_CLK sortie à partir du générateur d'horloge 1 pour générer une pluralité de signaux de contrôle. Parmi les signaux de contrôle, un signal de validation de symbole SCLK_ENA est sorti à la mémoire tampon d'entrée 2 et au calculateur de syndrome 4, un premier signal de fin de mot de code CW_ENDI est sorti au calculateur de syndrome 4 et à l'unité de calcul de polynôme de localisation d'erreur 7 et un second signal de fin de mot de code CW_END2 et un signal de sélection de syndrome SYND_SEL sont sortis au calculateur de syndrome 4. De plus, un signal de passage de syndrome SYNDPASS est sorti au sélecteur de syndrome 6. Un signal de divergence nulle DO_FLAG, un signal de fin de divergence DEND, un signal de validation de polynôme de localisation d'erreur a_ENA, un signal de validation de divergence D_ENA, un signal de sélection de coefficient cCOEF_SEL et un signal de réinitialisation d'échec de récupération UNRCVRFLAG_RST sont sortis à l'unité de calcul de polynôme de localisation d'erreur 7. De plus, un signal de numéro de symbole N0_SYM, un signal d'initialisation de calcul CAL_FIRST, un signal de validation de calcul CALENA, un signal de réinitialisation de symbole RST_SYM, un signal de sélection de racine initiale EIA_SEL et un signal de sélection de mise à jour racine de EASEL sont sortis au correcteur d'erreur 8 et un signal de début d'évaluation EVAL_INIT est sorti au correcteur d'erreur 8 et au calculateur de taux d'erreur de bit 9, un signal de début de divergence de mot de code DCWSTART et un signal de période de contrôle
CHKPERIOD sont sortis au calculateur de taux d'erreur de bit 9.
La figure 3 montre un schéma de réalisation selon un mode de réalisation du calculateur de syndrome 4 illustré sur la figure 1. Le calculateur de syndrome 4 comprend un compteur 30, un inverseur 31, une première cellule de calcul de syndrome 32, une première unité de mémorisation 32a - 32j, un premier multiplexeur 33, une seconde cellule de calcul de syndrome 34, une seconde unité de mémorisation 34a - 34j, une troisième unité de mémorisation 35 pour mémoriser "-10", un additionneur 36, un second multiplexeur 37, un comparateur 38 et un troisième
multiplexeur 39.
Sur la figure 3, le compteur 30, en tant que compteur de 4 bits, est synchronisé avec l'horloge RS RS_CLK pour effectuer le comptage et sort la valeur comptée en tant que signal de sélection de racine alpha ALPHA_SEL. L'inverseur 31 inverse le signal de validation de symbole SCLK_ENA et sort le signal inversé à une borne de mise à zéro du premier compteur 30. La première cellule de calcul de syndrome 32 fonctionne en synchronisation avec l'horloge RS RS_CLK, reçoit le symbole de réception R_SYM, calcule une valeur de syndrome en utilisant une racine alpha ai mémorisée dans la première unité de mémorisation 32a - 32j conformément au signal de sélection de racine alpha ALPHA_SEL et sort 10 valeurs de syndrome S0 à S9 vers le premier multiplexeur 33. Le premier multiplexeur l0 33 sélectionne et sort, de manière séquentielle, les valeurs de syndrome calculées à partir de la première cellule de calcul de syndrome 32 conformément au signal de sélection de syndrome SYND_SEL. La seconde cellule de calcul de syndrome 34 fonctionne également en synchronisation avec l'horloge RS RS_CLK, reçoit le symbole de réception RSYM et calcule une valeur de syndrome en utilisant la racine alpha xi mémorisée dans la seconde unité de mémorisation 34a - 34j conformément au signal de sélection de racine alpha ALPHA_SEL et sort 10 valeurs de syndrome S10 à
Si9 vers le second multiplexeur 37. L'additionneur 36 ajoute une valeur "-
" mémorisée dans la troisième unité de mémorisation 35 au signal de sélection de syndrome SYND_SEL et sort le résultat en tant que signal de sélection du second multiplexeur 37. Le second multiplexeur 37 sélectionne et sort, de manière séquentielle, les valeurs de syndrome calculées S10 à Sl9 à partir de la seconde cellule de calcul de syndrome 34 conformément à une sortie provenant de l'additionneur 36. Le comparateur 38 compare le signal de sélection de syndrome SYND_SEL à un signal de référence prédéterminé "9", sort "0" lorsque le signal de sélection de syndrome est supérieur à "9", tandis qu'il sort "1" lorsqu'il est inférieur à "9". Le troisième multiplexeur 39 sélectionne une sortie provenant du premier multiplexeur 33 si une sortie provenant du comparateur 38 est "1", tandis qu'une sortie provenant du second multiplexeur 34 est sélectionnée si la sortie est "0", et sort le sélectant en tant que valeur de syndrome SYND. A savoir, le troisième multiplexeur 39 sort, de manière séquentielle, les valeurs de syndrome So à Sl9 conformément au signal de sélection de syndrome
SYNDSEL.
Sur la figure 3, une structure de la première cellule de calcul de syndrome 32 est identique à la seconde cellule de calcul de syndrome 34 et
le schéma de réalisation est montré sur la figure 4.
La première cellule de calcul de syndrome 32, montrée sur la figure 4, comprend un générateur de signaux de contrôle 41, un premier registre à décalage 42, un second registre à décalage 43, un quatrième multiplexeur 44 et un opérateur de terme de syndrome 45. De plus, le générateur de signaux de contrôle 41 comprend une porte OU 41a, trois portes ET 41b, 41d et 41f et deux inverseurs 41c et 41 e. L'opérateur de terme de syndrome 45 comprend un cinquième multiplexeur 45-1, un multiplicateur de Galois 45-2
et un additionneur de Galois 45-3.
Sur la figure 4, le symbole de réception RSYM forme un mot de code provenant du symbole d'ordre le plus élevé R_206 au symbole d'ordre le plus faible R_0 reçus dans l'ordre, après avoir reçu un octet de synchronisation non codé SYNCBYTE. En conséquence, le signal de début de mot de code CW_START est généré en tant que "haut" au cours de la période d'horloge de symbole pour recevoir l'octet de synchronisation, le premier signal de fin de mot de code CWEND1 est généré en tant que "haut" au cours de la période d'horloge de symbole pour recevoir le symbole d'ordre le plus faible R_0 et le second signal de fin de mot de code DWEND2 est généré en tant que "haut" au cours de la période d'horloge de
symbole pour recevoir un second symbole R_i à partir du dernier.
Dans le générateur de signaux de contrôle 41, la première porte OU 41 a exécute une opération OU logique entre les signaux sortis à partir du contrôleur (le numéro de référence 10 sur la figure 1), à savoir le premier signal de fin de mot de code CW_END1 et le second signal de fin de mot de code CW_END2. La première porte ET 41lb exécute une opération ET logique entre un signal de sortie provenant de la première porte OU 41a et un signal de validation ENA et fournit le résultat en tant que signal de validation ENA au second registre à décalage 43. Un signal de réinitialisation RST provenant de l'extérieur est sorti en tant que signal de réinitialisation RST au second registre à décalage 43. Le premier inverseur 41 c inverse le premier signal de fin de mot de code CW_END 1. La seconde porte ET 41d exécute une opération ET logique entre un signal de sortie provenant du premier inverseur 41c et le signal de réinitialisation RST provenant de l'extérieur et fournit le résultat en tant que signal de réinitialisation RST au premier registre à décalage 42. Le second inverseur 41 e inverse le signal de début de mot de code SW_START sorti à partir du contrôleur (le numéro de référence 10 sur la figure 1). La troisième porte ET 41 f exécute une opération ET logique entre un signal de sortie provenant du second inverseur 4 le et le signal de validation ENA provenant de l'extérieur et fournit le résultat en tant que signal de validation ENA au premier
registre à décalage 42.
Le premier registre à décalage 42 mémorise 10 valeurs de syndrome intermédiaires, qui sont connectées au bus de données de 8 bits. Le premier registre à décalage 42 est dans un état de validation pendant l'entrée du premier symbole R_206 au second symbole R_1, provenant du dernier mot de code. Il reçoit la valeur de syndrome intermédiaire sortie de l'opérateur de terme de syndrome 45 conformément à l'horloge RS RS_CLK, la décale
et la sort au quatrième multiplexeur 44.
Le registre à décalage de syndrome 43 mémorise 10 valeurs de syndrome. Le second registre à décalage 43 est dans un état de validation lorsque le second symbole R_1, du dernier au dernier symbole R_0 du mot de code sont entrés. Il reçoit la valeur de syndrome sortie de l'opérateur de 2 0 terme de syndrome 45 conformément à l'horloge RS RS_CLK, la décale et la sort vers le quatrième multiplexeur 44 et sort les valeurs de syndrome finales So - S9 vers le sélecteur de syndrome (le numéro de référence 6 sur
la figure 1).
Le quatrième multiplexeur 44, conformément au premier signal de fin de mot de code CW_END1 sorti à partir du contrôleur (le numéro de référence 10 sur la figure 1), sélectionne la valeur de sortie du premier registre à décalage 42 lorsque le premier symbole R_206 au second symbole RI1 provenant du dernier mot de code sont entrés, tandis qu'il sélectionne la valeur de sortie du second registre à décalage 43 lorsque le dernier symbole est entré, pour sortir les valeurs de sortie vers l'opérateur de
terme de syndrome 45.
Dans l'opérateur de terme de syndrome 45, le cinquième multiplexeur -1 sélectionne, de manière séquentielle, les racines ct - c9 d'un polynôme de génération de code g(X) conformément au signal de sélection de racine alpha ALPHA_SEL et les sort. Le multiplicateur de Galois 45-2 reçoit la racine alpha sortie du cinquième multiplexeur 45-1 et la valeur de syndrome intermédiaire sortie du quatrième multiplexeur 44 et effectue une opération
de multiplication de Galois dans des unités d'horloge RS RS_CLK.
L'additionneur de Galois 45-3 exécute une opération d'addition de Galois entre la valeur sortie du multiplicateur de Galois 45-2 et le symbole de réception R_SYM entré dans les unités de symbole, dans des unités
d'horloge RS RS_CLK.
Ensuite, dans les première et seconde cellules de calcul de syndrome 32 et 34 de la figure 4, un procédé de calcul de syndrome de symboles de
réception codés selon Reed-Solomon R_206 R _0 va être décrit en détail.
Au cours de la première période de symbole, le quatrième multiplexeur 44 sélectionne les valeurs initiales "0, 0,..., 0" sorties du premier registre à décalage 42 par le premier signal de fin de mot de code CWEND 1 et les sort vers le multiplicateur de Galois 45-2 de l'opérateur de terme de syndrome 45. Le multiplicateur de Galois 45-2 fonctionne dans des unités d'horloge RS RS_CLK, exécute une opération de multiplication de Galois entre "0, 0,..., 0" sortis du quatrième multiplexeur 44 et les racines alpha ct a9 mémorisées dans les mémoires mortes (les numéros de référence 32a 32j sur la figure 3) et sort le résultat, "0, 0,..., 0" vers l'additionneur de Galois 45-3. L'additionneur de Galois 45-3 exécute une opération d'addition de Galois entre le premier symbole R_206 et la valeur "0, 0,..., 0" sortie du multiplicateur de Galois 45-2 et mémorise le résultat
"R_206, R_206,..., R_206" dans le premier registre à décalage 42.
Au cours de la seconde période de symbole, le quatrième multiplexeur 44 sélectionne les valeurs "R_206, R_206,..., R_206" sorties du premier registre à décalage 42 par le premier signal de fin de mot de code CWEND1 et les sort vers le multiplicateur de Galois 45-2 de l'opérateur de terme de syndrome 45. Le multiplicateur de Galois 45-2 fonctionne dans des unités d'horloge RS RS_CLK, exécute une opération de multiplication de Galois entre les valeurs "R_206, R_206,..., R_206" sorties du quatrième multiplexeur 44 et les racines alpha cc 9, respectivement, et sort le résultat, "R_206 x a , R_206 x a',..., R_206 x a9" vers l'additionneur de Galois 45-3. L'additionneur de Galois 45-3 exécute une opération d'addition de Galois entre le second symbole R_205 et les valeurs "R_206 xa , R_206 x a,..., R_206 x a9" sorties du multiplicateur de Galois 45-2 et mémorise le résultat, "R_206 x ac + R_205, R_206 x al+ R_205,..., R_206 x ca9 +
R_205" dans le premier registre à décalage 42.
De la même manière, au cours de la troisième période d'horloge de symbole pendant laquelle le troisième symbole R_204 est entré, les valeurs "(R_206 x a + R_205)a + R_204, (R_206 x ac + R_205)a' + R_204, (R_206 x a9 + R_205)a9 + R_204" sont mémorisées dans le premier
registre à décalage 42.
Dans le procédé ci-dessus, la valeur de syndrome intermédiaire mémorisée dans le premier registre à décalage 42 est mise à jour continuellement jusqu'à ce que le second symbole RI1 provenant du dernier
d'un mot de code soit entré.
En même temps, lorsque le second symbole RI1 provenant du dernier du mot de code est entré, le second registre à décalage 43 est dans un état de validation et le premier symbole R_206 et le second symbole R_1 provenant du dernier sont mis à jour. Les valeurs de syndrome calculées
sont mémorisées dans le second registre à décalage 43.
Pendant ce temps, le quatrième multiplexeur 44 sélectionne la valeur de syndrome intermédiaire mémorisée dans le second registre à décalage 43 par le premier signal de fin de mot de code CWEND1 et la sort vers le multiplicateur de Galois 45-2. Le multiplicateur de Galois 45-2 qui fonctionne dans des unités d'horloge RS RS_CLK, exécute une opération de multiplication de Galois entre la valeur de syndrome intermédiaire du second registre à décalage 43 sortie du quatrième multiplexeur 44 et les racines a - x9, respectivement, pour mémoriser le résultat dans le second registre à décalage 43. Par conséquent, la valeur de syndrome finale calculée du premier symbole R_206 au dernier symbole R_0 est mémorisée dans le second registre à décalage 43. A cet instant, le premier registre à décalage 42 est réinitialisé pour mémoriser la valeur de syndrome pour le mot de code suivant. A savoir, si tous les symboles jusqu'au dernier sont entrés, les valeurs de syndrome S[0], S[1],..., S[9] pour 1 mot de code mémorisé dans le second registre à décalage 43 sont exprimées par
l'Expression mathématique suivante.
Expression 4 S[0] = ((R206 a + R205) a +... + R1) a + Ro S[1] = ((R206 aI + R205) aI +... + R1) a' + Ro
S[9] = ((R206 9 + R205) C9 +... + R1) (9 + R0
La figure 5 montre un schéma de réalisation selon un mode de réalisation de l'unité de calcul de polynôme de localisation d'erreur 7 illustrée sur la figure 1. L'unité de calcul de polynôme de localisation d'erreur 7 comprend un calculateur de divergence 51, un générateur de variables 52, une mémoire 53 pour mémoriser une table à consulter, un premier multiplicateur de Galois 54, un premier registre à décalage 55, un sélecteur 56, un second multiplicateur de Galois 57, un premier additionneur de Galois 58, un inverseur 59a et une porte ET 59A. De plus, le sélecteur 56 comprend une première porte OU 56a, une seconde porte OU 56b, une mémoire morte 56-1 pour mémoriser "OxOO", un premier
multiplexeur 56-2 et un second multiplexeur 56-3.
Ensuite, un algorithme de Berlekamp récursif, qui est appliqué à l'unité de calcul de polynôme de localisation d'erreur 7 illustrée sur la figure , va être décrit en détail. Dans le cas du code Reed-Solomon pour exécuter t fois la correction d'erreur, qui a des racines inférieures au nombre t, un polynôme de localisation d'erreur peut être obtenu par l'Expression mathématique 5 qui
suit déduite de l'algorithme de Berlekamp.
Expression 5 (X)=(l += (1 il)( + o i2X)... (1 +C j2X)
L'algorithme de Berlekamp récursif répète les 4 étapes qui suivent.
Etape 1: Fixation d'une condition initiale ao()=,0(X) = 1, Bk0=(X),L0,b= 1, ko =, L =, b = Ici, co(X) est une valeur initiale du polynôme de localisation d'erreur v(X), B0(X) est une valeur initiale de la valeur intermédiaire B(X), L0 est une valeur initiale de L (un ordre d'un polynôme de localisation d'erreur pratique ac(X)), k0 est une valeur initiale de k (un ordre d'une variable X) et
o b0 est une valeur initiale d'une dernière divergence b.
En même temps, un nombre t+ 1 de registres comprenant des invariables sont nécessaires pour mémoriser les coefficients du polynôme de localisation d'erreur c(X), qui ont un nombre t de racines. L'ordre L du polynôme de localisation d'erreur ca(X) augmente de un selon que le cas demande une augmentation de l'ordre lors de la mise à jour du polynôme de
localisation d'erreur ((X).
De plus, les valeurs B(X), k, b sont utilisées pour mettre à jour le
polynôme de localisation d'erreur c(X).
Etape 2: calcul de divergence
Dans le code (N. N-2t), la 2tème divergence est calculée.
Une valeur initiale do de la divergence est égale à la valeur de syndrome So, les divergences restantes, à l'exception de la valeur initiale,
peuvent être calculées par l'Expression mathématique 6 qui suit.
1 0o dN =SN + aTiSNI (1 < N) Dans l'Ex!Sression mathématique 6 ci-dessus, dN répète la divergence, ai est un coefficient du polynôme de syndrome et SN et SN.-i sont des valeurs
de syndrome.
Etape 3: Mise à jour Conformément aux conditions qui suivent, une mise à jour est
exécutée dans trois cas.
Cas 1: dN = 0 -- augmenter k jusqu'à "1" Cas 2: dN É 0,2LN < N 2 0 - O N+I(X) = CTN(X)-dNbN' X BN(X) -> LN+l = N + 1 - LN k= 1 -> BN+i(X) = oN(X) -> bN+l(X) =dN Cas3: dN: 0,2LN>N -> cN+i(X) = ON(X)-dNbN' X BN(X) -> augmenter k jusqu'à "1" Etape 4: Exécution de l'étape 2 ci- dessus de manière répétitive jusqu'à ce que N = 2t 3 0 Ensuite, avec référence à la figure 5, une opération de l'unité de calcul
de polynôme de localisation d'erreur 7 va être décrite en détail.
Un indicateur de divergence nulle DOFLAG est un signal "haut" lors du calcul d'une première divergence do, un signal de divergence nulle D_ZERO est un signal "haut" lorsque la divergence calculée est "O" et un signal d'indication de cas 3 CASE3_FLAG est un signal "haut" lorsque dN É 0, 2LN > N (ici, dN représente la divergence et LN représente l'ordre le plus
élevé du polynôme de localisation d'erreur a(X)).
Le calculateur de divergence 51 reçoit une valeur de syndrome sortie du calculateur de syndrome (le numéro de référence 4 sur la figure 1) et le polynôme de localisation d'erreur mis à jour c_IN, exécute l'étape 2 de l'algorithme de Berlekamp récursif pour calculer 20 divergences d de do à dl9. De plus, le calculateur de divergence 51 retarde le polynôme de localisation d'erreur c_IN mis à jour et sorti dans le premier additionneur de Galois 58 pendant un temps prédéterminé et le sort en tant que polynôme de localisation d'erreur a_OUT. De plus, le calculateur de divergence 51 sort le dernier polynôme de localisation d'erreur mis à jour _OUT en tant que
polynôme de localisation d'erreur a(X).
Le générateur de variable 52 reçoit un signal "DZERO", un signal "DOFLAG" et une divergence d et sort un indice N de la dernière divergence b vers la mémoire 53. En même temps, en exécutant l'étape 3 de l'algorithme de Berlekamp récursif, lorsque l'état actuel correspond au cas 3, à savoir dN; O, 2LN > N, un signal "CASE_FLAG" est sorti et un ordre
pratique L du polynôme de localisation d'erreur a(X) est sorti.
La mémoire 53 reçoit l'indice N de la dernière divergence b sortie du générateur de variables 52 et sort une réciproque b'. Le premier multiplicateur de Galois 54 exécute une opération de multiplication de Galois entre la divergence d sortie du calculateur de divergence 51 et la réciproque b' de la dernière divergence b sortie de la mémoire 53 et sort le
résultat vers le second multiplicateur de Galois 57.
Le premier registre à décalage 55 est utilisé pour obtenir une valeur X kB(X) et pour mémoriser la valeur intermédiaire pour mettre à jour le polynôme de localisation d'erreur v(X). Le premier registre à décalage 55 décale et sort la valeur sortie du second multiplexeur 56-3 du sélecteur 56
conformément à l'horloge RS RS_CLK et la retourne simultanément.
Dans le sélecteur 56, la première porte OU 56a sort un signal de sélection SEL2, obtenu en combinant le signal "DO_FLAG" et le signal CASE3_FLAG, vers le second multiplexeur 56-3. La seconde porte OU 56b sort un signal de sélection SEL 1, obtenu en combinant le signal "D_ZERO" et le signal de sélection SEL2, vers le premier multiplexeur 56- 3. Le premier multiplexeur 56-2 sélectionne le polynôme de localisation d'erreur cOUT sorti du calculateur de divergence 51 ou "0xOO" mémorisé dans la mémoire morte 56-1, conformément au signal de sélection SEL1, et le sort vers le second multiplexeur 56-3. Le second multiplexeur 56-3 sélectionne le polynôme de localisation d'erreur cOUT sorti de la sortie du premier multiplexeur 56-2 ou de la sortie du premier registre à décalage 55, conformément au signal de sélection SEL2 et le sort vers le premier registre à décalage 55. A savoir, dans le sélecteur 56, l'étape 3 de l'algorithme de Berlekamp récursif est exécutée conformément aux signaux "CASE3_FLAG", "DO_FLAG" et "D_ZERO". Autrement dit, la valeur "0x00" de la mémoire morte 56-1 est sélectionnée et sortie vers le premier registre à décalage 55 pour le cas 1. La sortie aOUT du calculateur de divergence 51 est sélectionnée et sortie vers le premier registre à décalage pour le cas 2. Une valeur mémorisée dans un 10ème emplacement du premier registre à décalage 55 est retournée et décalée pour le cas 3. Par conséquent, le premier registre à décalage 55 est mis à jour uniquement s'il correspond au cas 2. Enfin, par les opérations ci-dessus, le premier registre à décalage 55 est décalé uniquement une fois dans le cas 1. Le second registre à décalage (le numéro de référence 61 sur la figure 6), le premier registre à décalage 55, l'ordre L et la dernière divergence b sont mis à jour dans le cas 2 et, dans le cas 3, le premier registre à décalage 55 est décalé
une fois et seul le second registre à décalage 61 est mis à jour.
Le multiplicateur de Galois 57 exécute l'opération de multiplication de Galois entre la valeur de sortie provenant du premier multiplicateur de Galois 54 et la valeur de sortie provenant du premier registre à décalage 55 et sort le résultat vers le premier additionneur de Galois 58. Le premier additionneur de Galois 58 exécute l'opération d'addition de Galois entre la valeur de sortie provenant du second multiplicateur de Galois 57 et le polynôme de localisation d'erreur aOUT et retourne le résultat en tant que polynôme de localisation d'erreur mis à jour cIN vers le calculateur de
3 0 divergence 51.
Le premier inverseur 59a inverse le premier signal de fin de mot de code CW_END1. La première porte ET 59b exécute l'opération ET logique entre un signal de réinitialisation provenant de l'extérieur et le signal de sortie provenant du premier inverseur 59a et fournit le résultat en tant que
3 5 signal de réinitialisation RST au premier registre 55.
La figure 6 montre un schéma de réalisation selon un mode de réalisation du calculateur de divergence 51 illustré sur la figure 5. Le calculateur de divergence 51 comprend un second registre 61, un second inverseur 61 a, une seconde porte ET 61 b, un troisième multiplexeur 62, un troisième multiplicateur de Galois 63, un second additionneur de Galois 64, un registre de vecteur de rétroaction 65, un troisième inverseur 65a, une troisième porte ET 65b, un registre de vecteur de sortie 66, une unité de décision 67 et une unité de sortie de coefficient 68. L'unité de sortie de coefficient 68 comprend un générateur de signaux de sélection 68-1, un l0 quatrième multiplexeur 68-2, une mémoire morte 68-3 pour mémoriser
"0x00" et un cinquième multiplexeur 68-4.
Sur la figure 6, dans le second registre 61, 11 registres (= t + 1), connectés en série, décalent, et sortent le polynôme de localisation d'erreur mis à jour a_IN sorti du premier additionneur de Galois 58 conformément à l'horloge RS RS_CLK et sortent les valeurs mises à jour finales d'un à dix étages en parallèle. La valeur sortie correspond au coefficient du polynôme
de localisation d'erreur c(X).
Le troisième multiplexeur 62 sort, de manière sélective, le polynôme de localisation d'erreur a_IN sorti du premier additionneur de Galois 58 ou le polynôme de localisation d'erreur a_OUT décalé et sorti du second registre 61 conformément au signal "DO_FLAG. A savoir, le troisième multiplexeur 62 sort, de manière sélective, le polynôme de localisation d'erreur acOUT décalé et sorti du second registre 61 lorsque DO _FLAG est "haut" correspondant au calcul de la première divergence do. Ensuite, le troisième multiplexeur 62 sélectionne le polynôme de localisation d'erreur sorti mis à jour cIN lorsque DO_FLAG est "bas" correspondant au calcul des divergences restantes dl à dl9 et sort le sélectant vers le troisième
multiplicateur de Galois 63.
Le troisième multiplicateur de Galois 63 exécute l'opération de multiplication de Galois entre la valeur de syndrome SYND sortie du calculateur de syndrome (le numéro de référence 4 sur la figure 1) et la valeur sortie du troisième multiplexeur 62 et sort le résultat vers le second additionneur de Galois 64. Le second additionneur de Galois 64 exécute l'opération d'addition de Galois entre la valeur de sortie provenant du troisième multiplicateur de Galois 63 et la valeur de rétroaction et sort la
somme vers le registre de rétroaction 65 et vers le registre de sortie 66.
Le registre de rétroaction 65 verrouille la valeur de sortie provenant du second additionneur de Galois 64 conformément à l'horloge RS RS_CLK pour la retourner vers le second additionneur de Galois 64. Le troisième inverseur 65a inverse un signal "DEND". La troisième porte ET 65b exécute l'opération ET logique entre le signal de réinitialisation RST provenant de l'extérieur et le signal de sortie provenant du troisième inverseur 65a et fournit le résultat en tant que signal de réinitialisation au
registre de vecteur de rétroaction 65.
Le registre de vecteur de sortie 66 validé par le signal "DEND" verrouille la valeur de sortie provenant du second additionneur de Galois 64 pour la sortir en tant que divergence finale d. L'unité de décision 67 détermine si la divergence sortie du registre de vecteur de sortie 66 est "0" ou non, sort un signal "D_ZERO" "haut" dans l'étape 3 de l'algorithme de
Berlekamp récursif dans le cas de "0".
Dans l'unité de sortie de coefficient 68, le générateur de signaux de sélection 68-1 reçoit le signal de sélection de coefficient a_COEF_SEL et génère les signaux de sélection SEL4 et SEL5 pour le quatrième et le cinquième multiplexeur 68-2 et 68-4. Le cinquième multiplexeur 68-2 sort, de manière sélective, l'une de 10 valeurs sorties en parallèle du second registre 61 conformément au signal de sélection SEL4. Le cinquième
multiplexeur 68-4 sélectionne la valeur sortie du quatrième multiplexeur 68-
2 ou "0x00" de la mémoire morte 68-3 conformément au signal de sélection SEL5 et la sort en tant que coefficient a_COEF vers le polynôme de
localisation d'erreur.
La figure 7 montre un schéma de réalisation selon un mode de réalisation du correcteur d'erreur 8 illustré sur la figure 1. Le correcteur d'erreur 8 comprend une unité de mémorisation d'éléments communs 70, 3 o une unité de calcul de polynôme d'évaluation d'erreur 71, une unité d'évaluation de polynôme d'évaluation d'erreur 72, une unité d'évaluation de polynôme de localisation d'erreur 73, une unité de calcul/correction de
valeur d'erreur 74 et une unité de décision d'échec de récupération 75.
Sur la figure 7, l'unité de mémorisation d'éléments communs 70 mémorise une racine initiale (a'NXI, 1 < i < t) correspondant à une réciproque d'un élément de champ de Galois pour traiter une évaluation à partir de l'ordre le plus élevé du code Reed-Solomon et une racine de mise à jour (id, 1 < i < t) correspondant à un élément de champ de Galois pour mettre à jour l'ordre pour le symbole suivant et fournit une valeur de racine pour traiter l'évaluation du polynôme d'évaluation d'erreur Q(X) et du polynôme de
localisation d'erreur a(X).
L'unité de calcul de polynôme d'évaluation d'erreur 71 reçoit une valeur de syndrome SYND sortie du calculateur de syndrome (le numéro de référence 4 sur la figure 1) et un coefficient a_COEF du polynôme de localisation d'erreur, multiplie les deux valeurs et sort le coefficient
Q_COEF vers le polynôme d'évaluation d'erreur.
L'unité d'évaluation de polynôme d'évaluation d'erreur 72 évalue le polynôme d'évaluation d'erreur Qf(X) et le coefficient d'évaluation d'erreur Q_COEF en utilisant la racine initiale (caNXI, 1 < i < t) sortie de l'unité de mémorisation d'éléments communs 70 et l'élément de champ de Galois, la racine de mise à jour (a', 1 < i < t), et sort le résultat en tant que valeur
d'évaluation d'erreur QVAL.
L'unité d'évaluation de polynôme de localisation d'erreur 73 évalue le polynôme de localisation d'erreur c(X) à partir du coefficient a_COEF du 2 0 polynôme de localisation d'erreur en utilisant la racine initiale (c-NXl, 1 < i < t) sortie de l'unité de mémorisation d'éléments communs 70 et l'élément de champ de Galois, la racine de mise à jour (ctai, 1 < i < t), et sort le signal de localisation d'erreur ERR_FLAG. De plus, l'unité d'évaluation de polynôme de localisation d'erreur 73 évalue une valeur de différentiation du polynôme de localisation d'erreur a(X), un polynôme de différentiation ca'(X), et sort
le résultat en tant que valeur d'évaluation de différentiation ac pVAL.
L'unité de calcul et de correction de valeur d'erreur 74 reçoit la valeur d'évaluation de différentiation a pVAL et la valeur d'évaluation d'erreur Q_VAL, calcule une valeur d'erreur ei par un algorithme de Forney et sort le résultat. De plus, l'unité de calcul et de correction de valeur d'erreur 74 ajoute la valeur d'erreur ei au symbole de réception R_SYM conformément au signal de génération d'erreur ERR_FLAG et sort un symbole récupéré à
erreur corrigée C SYM.
L'unité de décision d'échec de récupération 75 détermine si le symbole récupéré à erreur corrigée C_SYM est correct, ou non, et selon le résultat,
sort un signal d'échec de récupération UNRCVR_FLAG.
Ensuite, avec référence aux figures 8 à 14, une opération du correcteur d'erreur 7 va être décrite en détail. La figure 8 montre un schéma fonctionnel selon un mode de
réalisation de l'unité de mémorisation d'éléments commun 70 sur la figure 7.
L'unité de mémorisation d'éléments communs 70 comprend des premières mémoires mortes 80-1 80-10, un premier multiplexeur 80-11, des
secondes mémoires mortes 80-12 - 80-21 et un second multiplexeur 80-22.
Sur la figure 8, les premières mémoires mortes 80-1 80-10 mémorisent les racines initiales lALPHA o-207, o-207x2, o-207x3,-207x10 a,a, .'., a pour initialiser un traitement d'évaluation. Le premier multiplexeur 80- 11 sélectionne et sort, de manière séquentielle, les racines initiales des mémoires mortes 80-1 - 80-10 conformément au signal de sélection de
racine initiale EIASEL.
Les secondes mémoires mortes 80-12 - 80-21 mémorisent l'élément de champ de Galois pour mettre à jour l'ordre, les racines de mise à jour a',
2 3 4 1
a2, a3, a,... al. Le second multiplexeur 80-22 sélectionne et sort, de
manière séquentielle, les racines de mise à jour des mémoires mortes 80- 1 -
-10 conformément au signal de sélection de racine de mise à jour
EASEL.
La figure 9 montre un schéma fonctionnel selon un mode de réalisation de l'unité de calcul de polynôme d'évaluation d'erreur 71 sur la figure 7. L'unité de calcul de polynôme d'évaluation d'erreur 71 comprend un multiplicateur de Galois 91, un additionneur de Galois 92, un
multiplexeur 93 et un registre à décalage 94.
Sur la figure 9, le multiplicateur de Galois 91 reçoit le coefficient cr_COEF du polynôme de localisation d'erreur et la valeur de syndrome SYND, exécute l'opération de multiplication de Galois entre eux et sort le résultat vers l'additionneur de Galois 92. L'additionneur de Galois 92 exécute l'opération d'addition de Galois entre la valeur de sortie provenant du multiplicateur de Galois 91 et la valeur de sortie provenant du registre à décalage 94 et sort le résultat vers le multiplexeur 93. Le multiplexeur 93 sort, de manière sélective, le coefficient c_COEF du polynôme de localisation d'erreur ou la sortie provenant de l'additionneur de Galois 92 conformément au signal initial FIRST_FLAG. Le registre à décalage 94 pour mémoriser les coefficients 1 - fO1 du polynôme d'évaluation d'erreur décale la sortie provenant du multiplexeur 93 en synchronisation avec l'horloge RS RS_CLK et retourne la valeur décalée vers l'additionneur de Galois 92. Les coefficients calculés du polynôme d'évaluation d'erreur
peuvent être représentés par le tableau 1 qui suit.
Tableau 1
QO=1 Ql=Sl+cyl F2=S2+o1.Sl+c2 23=S3+ 1.S2+a2.S 1+ca3 24=S4+a 1.S3+o2.S2+ ca3.S 1 +a4 -5=S5+a 1.S4+a2.S3+a3.S2+c4.S 1 +5 16=S6+c 1.S5+a2.S4+c3.S3+ a4.S2+a5.S 1+a6 &7=S7+c 1.S6+a2.S5+a3.S4+c4.S3+a5.S2+c6.S 1 +a7 Q8=S8+cl. S7+a2.S6+c3.S5+a4.S4+c5.S3+a6.S2+c7.S 1 +ca8 09=S9+al.S8+a2.S7+ca3.S6+c4. S5+a5.S4+a6.S3+a7.S2+a8.Sl+a9 =S 1 0+ca 1.S9+ca2.S8+o3.S7+c4.S6+a5.S5+c6. S4+a7.S3+c8.S2+C9 Sl+lO Comme montré sur le tableau 1, le coefficient d'ordre O QO du polynôme d'évaluation d'erreur O(X) est toujours "1", il n'est donc pas nécessaire de le mémoriser, de là, 10 registres sont nécessaires pour mémoriser le coefficient du polynôme d'évaluation d'erreur Q(X) au lieu de l 1. Seules les valeurs de syndrome des premier à dixième syndromes SI à
S lO sont utilisées.
1.5 Ensuite, une opération de l'unité de calcul de polynôme d'évaluation
d'erreur 71 illustrée sur la figure 9 va être décrite en détail.
Pendant la première période de symbole, les coefficients des premier à dixième ordres, al à alO, qui sont calculés dans l'unité de calcul de polynôme de localisation d'erreur (le numéro de référence 7 sur la figure 1), 2 o sont entrés conformément à l'horloge RS RS_CLK. Conformément au signal initial FIRST_FLAG du contrôleur 10, le multiplexeur 93 sélectionne les premier à dixième ordres du polynôme de localisation d'erreur et les
mémorise dans le registre à décalage 94.
Pendant la seconde période de symbole, le coefficient d'ordre 0 (a0=" l ") du polynôme de localisation d'erreur est sorti à une borne d'entrée du multiplicateur de Galois 91 et les syndromes d'ordre "SI, S2, S3, S4, S5, S6, S7, S8, S9, S 10" sont entrés dans l'autre borne d'entrée conformément à l'horloge RS TS_CLK pour exécuter l'opération de multiplication de Galois. L'additionneur de Galois 92 exécute l'opération d'addition de Galois entre les sorties provenant du multiplicateur de Galois 91 et la valeur intermédiaire provenant du registre à décalage 94. Le multiplexeur 93 sélectionne les sorties provenant de l'additionneur de Galois 92 et les sort vers le registre à décalage 94. Par conséquent, les valeurs mémorisées dans le registre à décalage 94 sont SI + al, S2 + a2, S3 + a3,..., S9 + a9, S10 + alo0. Pendant la troisième période de symbole, le premier coefficient al du polynôme de localisation d'erreur est sorti à une borne du multiplicateur de Galois 91 et les syndromes d'ordre "0, S1, S2, S3, S4, S5, S6, S7, S8, S9" sont entrés dans l'autre borne d'entrée conformément à l'horloge RS RS_CLK. Le multiplexeur 93 sélectionne la sortie provenant de l'additionneur de Galois 92 et la sort vers le registre à décalage 94. Par conséquent, les valeurs mémorisées dans le registre à décalage 94 sont SI + al, S2 + l. S1 + a2, S3 + l. S2 + a3,..., S9 + l. S8 + 09,S10O + al
S9 + lO.
Pendant la quatrième période de symbole, le second coefficient a2 du polynôme de localisation d'erreur est maintenu et les syndromes d'ordre "0, 0, S1, S2, S3, S4, S5, S6, S7, S8" sont entrés conformément à l'horloge RS RS_CLK. Par conséquent, les valeurs du registre à décalage 94 sont S 1 +
il, S2 + l. S1 + 2, S3 + al. S2 + c2.SI + a3,..., S9 + cil. S8 + a2.
S7 + c9,S10 + l. S9 +o 2. S8 +. l0.
Continuellement, pendant les dernière et onzième horloges de symbole, le dixième coefficient a10 du polynôme de localisation d'erreur est maintenu et les syndromes d'ordre "0, 0, 0, 0, 0, 0, 0, 0, 0, SI" sont entrés conformément à l'horloge RS RS_CLK. Par conséquent, les valeurs du registre à décalage 94 sont les coefficients i 2l10 montrés sur le
tableau 1.
Ici, conformément au signal de passage de syndrome SYND_PASS du contrôleur (le numéro de référence 10 sur la figure 1), la valeur de syndrome correspondante SYND provenant du sélecteur de syndrome (le numéro de référence 6 sur la figure 1) ou "0x00" est entrée, de manière sélective, vers le multiplicateur de Galois 91. A savoir, une fois que le registre à décalage 94 est initialisé aux coefficients ca_COEF: cai aO10 conformément au signal initial FIRST_FLAG, les opérations de multiplication de Galois entre les coefficients c_COEF du polynôme de localisation d'erreur et la valeur de syndrome SYND sont exécutées et l'opération d'addition de Galois entre cette valeur multipliée et la valeur intermédiaire mémorisée précédemment dans le registre à décalage 94 est l0 exécutée pour mettre à jour les coefficients Q_COEF Q l Q1 0 du
polynôme d'évaluation d'erreur.
La figure 10 montre un schéma fonctionnel selon un mode de réalisation de l'unité d'évaluation de polynôme d'évaluation d'erreur 72 sur la figure 7. L'unité d'évaluation de polynôme d'évaluation d'erreur 72 comprend un premier multiplicateur de Galois 100, un sélecteur de terme 102, une unité de mise à jour d'ordre 104, un opérateur de terme 106 et une unité de sortie d'évaluation d'erreur 108. De plus, l'unité de mise à jour d'ordre 104 comprend un registre à décalage 104-1 et un multiplicateur de Galois 104-2. L'opérateur de terme 106 comprend un additionneur de Galois
106-1, une mémoire morte pour mémoriser "0xOO" 106-2, un inverseur 106-
3, une porte ET 106-4, un registre de sommes 106-5 et un multiplexeur 106-
6. De plus, l'unité de sortie de valeur d'évaluation d'erreur 108 comprend un registre de sommes 108-1, une mémoire morte 108-2 pour mémoriser
"0x01" et un additionneur de Galois 108-3.
Sur la figure 10, une sortie provenant du premier multiplexeur 80-11 de l'unité de mémorisation d'éléments communs 70, à savoir les racines -207 -207x2 -207x3 -207x10 initiales a-207, a-207x2, a-207x3 c27X pour évaluer le symbole de réception d'ordre le plus élevé sont entrées, de manière sélective, pendant des unités d'horloge RS RS_CLK vers une borne d'entrée du multiplicateur de Galois conformément au signal de sélection initiale EIA_SEL. De plus, le coefficient Q_COEF du polynôme d'évaluation d'erreur calculé dans l'unité de calcul de polynôme d'évaluation d'erreur (le numéro de référence 71 sur la figure 7) est entré, de manière séquentielle, dans l'autre borne d'entrée. Le premier multiplicateur de Galois 100 exécute l'opération de multiplication de Galois entre ces deux valeurs et sort, de manière 207 -207x2 séquentielle, les valeurs de termes initiales INITIAL Q1-207, -227x2 -30 -207x3 (4 207x4, Q5207x5, 6207x6 -207x7, -n8207x,8,9207x9 4a Q5a ' ( ' Q7a,
Q'-10-207xlo vers le sélecteur de terme 102.
Le sélecteur de terme 102 sélectionne la valeur de terme initialeconformément au signal initial INIT_FLAG et la sort vers 10 registres à décalage 104-1 de l'unité de mise à jour d'ordre 104. Les 10 registres à décalage 104-1 décalent la valeur de terme initiale INITIAL conformément à l'horloge RS RS_CLK et sortent la dernière valeur vers le second
multiplicateur de Galois 122.
En même temps, le second multiplexeur 80-22 de l'unité de mémorisation d'éléments communs (le numéro de référence 70 sur la figure 7) sélectionne, de manière séquentielle, les valeurs a', 2 3 x 4, 05 a06, a 7 a,aaaaa
8 9 10
a8, a 9, a0 mémorisées dans les secondes mémoires mortes 80-12 80-21 et les sort vers le multiplicateur de Galois 104-2. Le multiplicateur de is Galois 104-2 exécute systématiquement l'opération de multiplication de Galois entre la valeur de terme du registre à décalage 104-1 et la valeur de mémoire morte pour mettre à jour l'ordre et sort le résultat, 1Qa206,,2Oa 206x2 206x3 -206x4 a-206x5 6'206x6 -206x7 8- 206x8, (,90[ 13at,04, Q5a, 6a, Q7Ct, n8a
206x9, Q10-206x1o conformément à l'horloge RS RSCLK.
L'additionneur de Galois 106-1 de l'opérateur de terme 106 ajoute la valeur de terme sortie du multiplicateur de Galois 104-2 à la valeur de rétroaction provenant du registre de sommes 106-6 et sort le résultat vers le multiplexeur 106-5. Le registre de sommes 106-6 verrouille la valeur sortie du multiplexeur 106-5 et la retourne vers l'additionneur de Galois 106-1. La somme (SUM1 = n')1X[206, *2'206x2, )30-206x3 Q4- 206x4, Q 5-206x5, Q6 206x6 -206x7,-206x8 -206x9 [-206x10) des premier huitime 7C,08ot, Oga Q, naO) des premier à huitième termes du polynôme d'évaluation d'erreur pour le symbole de réception
d'ordre le plus élevé R_206 est sortie à travers l'opérateur de terme 106.
Le registre de sommes 108-1 de l'unité de sortie de valeur d'évaluation d'erreur 108 est mis dans un état de validation par le signal d'initialisation de symbole RST_SYM, verrouille la somme SUMI sortie de l'additionneur de Galois 106-1 et la sort vers l'additionneur de Galois 108-3. L'additionneur de Galois 108-3 exécute l'opération d'addition de Galois entre la valeur de somme SUM 1 et la valeur "OxOl1" correspondant au coefficient d'ordre 0 n0 chargé à partir de la mémoire morte 108-2 et sort la valeur Q(a -206) pour traiter l'évaluation d'erreur pour le premier symbole de réception R_206 en
tant que valeur d'évaluation Q_VAL du polynôme d'évaluation d'erreur.
Ensuite, pour traiter l'évaluation d'erreur du symbole de réception
R_20 les valeu20rs 6x, - 206x2 3-206x3 Q4-'206x4, ú a-206x5 Q-
R_205, les valeurs, Ill(- 0 3OE Q5c6Q( 206x6 - 206x7 -206x8 -206x9 -206xl0 7206x6 -206x7 206x8, 9- 26x9 oa-206xo sorties du multiplicateur de Galois 104-2 de l'unité de mise à jour d'ordre 104 sont sélectionnées par le sélecteur de terme 102 et le sélectant est sorti vers le registre à décalage
104-1.
Les 10 registres à décalage 104-1 décalent la sortie provenant du sélecteur de terme 102 conformément à l'horloge RS RS_CLK et la sortent vers le multiplicateur de Galois 104-2. Le multiplicateur de Galois 104- 2 exécute l'opération de multiplication de Galois entre cette valeur sortie et les r 2 3 4 5 6 7 8 9 10 racines de mise à jour cc, a, 0x6, cc7, [8, a[9, a, 110 pour mettre à jour l'ordre sorti de l'unité de mémorisation d'éléments communs (le numéro
de référence 70 sur la figure 7).
Ensuite, les valeurs sorties Qlc-205x, Q2a-205x2 Q3 20Sx3 Q -4[205x4 205x,5 Qa-205x6, ?70'205x7 Q -25X8 205x9, 0Qsa[205x9 10 du multiplicateur de Galois 104-2 sont entrées dans l'opérateur de terme 106 et le sélecteur de terme 102 pour mettre à jour leur ordre. L'opérateur de terme 106 et le sélecteur de terme 102 exécutent le traitement d'évaluation d'erreur pour répéter l'opération décrite ci- dessus et, de ce fait, obtenir la valeur d'évaluation d'erreur Q(c-205) à travers l'unité de sortie d'évaluation d'erreur 108. L'opération pour traiter l'évaluation d'erreur décrite ci-dessus pour le symbole de réception R_205 est répétée continuellement jusqu'au dernier
symbole R_0 du mot de code.
La figure 11 montre un schéma fonctionnel selon un mode de réalisation de l'unité d'évaluation de polynôme de localisation d'erreur 73 sur la figure 7. L'unité d'évaluation de polynôme de localisation d'erreur 73 comprend: une unité de mise à jour comprenant, de plus, une unité d'initialisation 110, un sélecteur de terme 111 et une première unité de mise à jour d'ordre 112; une première unité d'évaluation pour évaluer le polynôme de localisation d'erreur a(X) et pour sortir le signal de localisation d'erreur ERR_FLAG, comprenant, de plus, un premier opérateur de termes multiples 113, un second opérateur de termes multiples 114 et une unité de décision d'erreur 115; et une seconde unité d'évaluation pour évaluer le polynôme de différentiation de localisation d'erreur a'(X) et pour sortir une valeur d'évaluation de différentiation c p_VAL, comprenant, de plus, un sélecteur de terme d'ordre impair 116, une seconde unité de mise à jour 117, un troisième opérateur multiple 118 et une unité de sortie de
* valeur d'évaluation de différentiation 119.
Ensuite, un fonctionnement de l'unité d'évaluation de polynôme de localisation d'erreur 73 illustrée sur la figure 11 va être décrite par les trois
opérations qui suivent.
(1) Opération d'initialisation Les valeurs réciproques IALPH-A du champ de Galois, a-207xl, 0-207x2 0207x3 -207x4 -207x5 -207x6 -207x7 -207x8 -207x9 -207x10 sont entres E,aX,a,9a, a, a,aX,a sont entrées, de manière sélective, à partir du premier multiplexeur (le numéro de référence 80-11 sur la figure 8) vers une borne d'entrée du multiplicateur de Galois 110 conformément au signal de sélection initiale EIASEL généré dans les unités d'horloge RS RS_CLK. De plus, les coefficients c_COEF: C1, a2,..., cal0 du polynôme d'évaluation d'erreur calculé dans l'unité de calcul de polynôme d'évaluation d'erreur (le numéro de référence 71 sur la figure 7) sont entrés, de manière séquentielle, dans l'autre borne d'entrée. Le multiplicateur de Galois 110 fonctionnant dans des unités d'horloge RS RS_CLK, exécute l'opération de multiplication de Galois entre ces deux valeurs et sort, de manière séquentielle, les valeurs d'initialisation INITIAL
-207x1 -207x2 -207x3 -207x4 -207x5 -207x6 -207x7 -
(a1, a2a0 ' C3a ' aa 4a[, 65a0[,C6a,a7a ' 8a0
207x8 {9-207x9, a0-207xl0 vers le sélecteur de terme 111.
Le sélecteur de terme 111 sélectionne la valeur d'initialisation conformément au signal initial INIT_FLAG et la sort vers les 10 registres à décalage 112-1. Les 10 registres à décalage 112-1 décalent la valeur d'initialisation INITIAL sortie du sélecteur de terme 111 conformément à
l'horloge RS RS_CLK et la sortent vers le multiplicateur de Galois 112-2.
En même temps, le second multiplexeur 80-22 de l'unité de mémorisation d'éléments communs (le numéro de référence 70 sur la figure 7) sélectionne,
I 2 3 4 5 6 7 8 9 10
de manière séquentielle, les valeurs a0, a, a,4, a5, a6, aa, a,,a1 provenant des secondes mémoires mortes 80-12 - 80-21 conformément au signal de sélection de mise à jour EA_SEL généré dans des unités d'horloge RS RSCLK et les sort vers le multiplicateur de Galois 112-2. Le multiplicateur de Galois 112-2 exécute l'opération de multiplication de Galois entre la valeur d'initialisation INITIAL sortie du registre à décalage 112-1 et la racine de mise à jour ALPHA, dans des unités d'horloge RS RS_CLK, respectivement, et sort systématiquement le résultat, 1c[206x, -206x2 -206x3 -206x4 -206x5 -206x6 -206x7 - 206x8 C2a,3 ,X,a420 '053,' 6la 0.75 a8 C7 '9a 206x9 -206x 10 [ (2) Opération d'évaluation pour générer le signal de localisation d'erreur (ERR_FLAG) L'additionneur de Galois 113-1 de l'opérateur de termes multiples 113 l0 exécuter l'opération d'addition de Galois entre la valeur de terme sortie du multiplicateur de Galois 112-2 et la valeur de rétroaction provenant du registre de sommes 113-6 et sort le résultat vers le multiplexeur 113-5. Le multiplexeur 113-5 sélectionne la valeur sortie de l'additionneur de Galois 113-1 ou "0xOO" de la mémoire morte 113-2 conformément au signal sorti par l'opération ET logique entre le signal de réinitialisation RST et un signal de réinitialisation de symbole inversé RST_SYM et sort la valeur sélectionnée vers le registre de sommes 113-6. Le registre de sommes 113- 6 verrouille la valeur sortie du multiplexeur 113-5 conformément à l'horloge RS RS_CLK et la retourne vers l'additionneur de Galois 113-1. Le signal de sortie de la porte ET 113-4 réinitialise le registre de sommes 113-6. Par conséquent, la somme des termes (SUM1 = i(0[-206xl a2a26x2, CY3a0206x3 -206x4 -206x5 -206x6 -206x7 -206x8 -206x89 - 206x 10 G4O. 0.5[, 0'690 Y78,,c9 y a1Oa des premiers aux dixième ordres du polynôme de localisation d'erreur 6(X) est
calculée dans le premier opérateur de termes multiples 113.
2 5 En même temps, le registre de sommes 114-1 du second opérateur de termes multiples 114 validé par le signal de réinitialisation de symbole RST_SYM, verrouille la valeur de somme SUM1 sortie du premier opérateur de termes multiples 113 et la sort vers l'additionneur de Galois 114-3. L'additionneur de Galois 114-3 exécute l'opération d'addition de Galois entre la valeur de somme et la valeur "0xOO" correspondant au coefficient d'ordre 0 c00 sortie de la mémoire morte 114-2 et sort le résultat en tant que valeur d'évaluation de localisation cy_VAL du polynôme de
localisation d'erreur.
L'unité de décision 115 reçoit la valeur d'évaluation de localisation 3 5 c_VAL sortie du second opérateur de termes multiples 114, génère le signal de localisation d'erreur ERR_FLAG en tant que "1" pour indiquer une génération d'erreur si cette valeur d'évaluation est "0", tandis que l'unité de décision 115 génère le signal de localisation d'erreur ERRFLAG en tant que "0" pour indiquer l'absence de génération d'erreur si cette valeur d'évaluation n'est pas "0". Ci-dessus, l'opération d'évaluation a décrit une procédure pour déterminer l'emplacement de génération d'erreur pour le symbole de réception R_206. Le signal de localisation d'erreur ERR_FLAG pour les
symboles de réception restants est généré par la même procédure.
(3) Opération d'évaluation pour sortir une valeur d'évaluation de différentiation Le multiplexeur 116-2 du sélecteur de terme d'ordre impair 116 utilise le dernier bit du signal de sélection de racine de mise à jour EA_SEL en tant que signal de sélection EA_SELO. Le multiplexeur 116-2 reçoit la valeur de terme sortie du multiplicateur de Galois 112-2 et la valeur "0x00" sortie de la mémoire morte 116-1, sélectionne, de manière séquentielle, cIL'206xl, 0x00, 3a206x3, 0x00, 5a206x5, 0X00, 7206x7, 0X00 206x9 OxOO, et les sort vers le multiplicateur de Galois 118-1 du troisième opérateur de termes
multiples 118.
2 0 Pendant ce temps, le registre 117-3 de la seconde unité de mise à jour d'ordre 117 est inversé par un signal pour inverser le signal d'initialisation iNIT_FLAG, étant validé par le signal de réinitialisation de symbole RST_SYM pour verrouiller la sortie provenant du multiplicateur de Galois 1 17-5 conformément à l'horloge RS RS_CLK. De plus, le registre 117-3 charge la valeur a26 mémorisée dans la mémoire morte 117-2 et la sort vers les multiplicateur de Galois 118-1 du troisième opérateur de termes multiples 118 et vers le multiplicateur de Galois 117-5. Ici, le multiplicateur de Galois 117-5 exécute l'opération de multiplication de Galois entre la valeur cfi mémorisée dans la mémoire morte 117-4 et la valeur sortie du
registre 117-3 et retourne le résultat vers le registre 117-3.
Le multiplicateur de Galois 118-1 du troisième opérateur de termes multiples 118 exécute l'opération de multiplication de Galois entre c206 sorti du registre 1 17-3 et la valeur sortie du sélecteur de terme d'ordre impair 116 -206x1 206 et sort, de manière séquentielle, les valeurs a1a 26 X OX206 OO, C33' 206x3 206 -005206x5 206 0X (72x7 206 -2X06x90, 0X600 3 5 a, OXOO, Ca5a aX, OXOO, Ga7a a, 0X00, a9aC aX, 0X00
vers l'additionneur de Galois 118-2 conformément à l'horloge RS RS_CLK.
L'additionneur de Galois 118-2 exécute l'opération d'addition de Galois entre la valeur sortie du multiplicateur de Galois 118-1 et la valeur sortie du registre de sommes 118-3 et retourne le résultat vers le registre de sommes 118-3. Le registre de sommes 118-3 reçoit la valeur sortie de l'additionneur de Galois 118-2 conformément à l'horloge RS RS_CLK et est réinitialisé
par le signal de réinitialisation de symbole RST_SYM.
L'unité de sortie de valeur d'évaluation de différentiation 119 est validée par le signal de réinitialisation de symbole RST_SYM et sort la valeur d'évaluation de différentiation a pVAL pour le symbole de réception en verrouillant la valeur sortie de l'additionneur de Galois 118-2, à
savoir la valeur d'évaluation de différentiation a p_VAL.
C'est-à-dire que la valeur d'évaluation de différentiation pour le symbole de réception R_206 est sortie en tant que a10a[206xl a206 + a3a'
I5 206x3 206 + S5[-206x5a206 + CS7[-206x7 206 + S9-206x9 = 0206 impair(s(o206)).
Pour les symboles restants, l'ordre ai de la seconde unité de mise à jour d'ordre 117 est diminué par unités de 1 et est multiplié par le terme d'ordre impair, de sorte que la valeur d'évaluation de différentiation cs pVAL soit
obtenue par la même opération.
La figure 12 montre un schéma fonctionnel selon un mode de réalisation de l'unité de calcul et de correction de valeur d'erreur 74 sur la figure 7. L'unité de calcul et de correction de valeur d'erreur 74 comprend une première mémoire 120, un premier multiplicateur de Galois 121, une seconde mémoire 122, un second multiplicateur de Galois 123, une mémoire morte 124 pour mémoriser "OxO0O", un multiplexeur 125 et un
additionneur de Galois 126.
Sur la figure 12, la première mémoire 120 mémorise une valeur réciproque pour une valeur d'évaluation de différentiation prédéterminée sous la forme d'une table à consulter et sort une réciproque (1/cs'(ai)) de la valeur d'évaluation de différentiation (ac' (ai)) correspondant à la valeur d'évaluation de différentiation a pVAL de l'unité d'évaluation de polynôme de localisation d'erreur (le numéro de référence 73 sur la figure 7) vers le
premier multiplicateur de Galois 121.
Le premier multiplicateur de Galois 121 exécute l'opération de multiplication de Galois entre la valeur d'évaluation d'erreur Q_VAL sortie de l'unité d'évaluation de polynôme de localisation d'erreur (le numéro de référence 73 sur la figure 7) et la valeur d'évaluation de différentiation
réciproque (1/a'(ct-i)) sortie de la première mémoire 120.
La seconde mémoire 122 sort un élément ai du champ de Galois correspondant à l'ordre du symbole conformément à un signal de numéro de symbole NO_SYM sorti à partir du contrôleur (le numéro de référence 10 sur la figure 1). Le second multiplicateur de Galois 123 exécute l'opération de multiplication de Galois entre la valeur sortie provenant du premier multiplicateur de Galois 121 et l'élément de champ de Galois ai sorti de la seconde mémoire 122 et sort le résultat en tant que valeur d'erreur ei vers le
multiplexeur 125.
Le multiplexeur 125 sélectionne "OxO0O" mémorisé dans la mémoire morte 124 conformément au signal de localisation d'erreur ERRFLAG ou la valeur d'erreur ei du second multiplicateur de Galois 123 et la sort vers l'additionneur de Galois 126. L'additionneur de Galois 126 exécute l'opération d'addition de Galois entre un symbole de réception RSYM et la valeur de sortie provenant du multiplexeur 125 et sort le résultat en tant que symbole récupéré à erreur corrigée C_SYM. A savoir, conformément au signal de localisation d'erreur ERR_FLAG, la correction d'erreur est exécutée en ajoutant la valeur d'erreur calculée au symbole de réception
dans lequel l'erreur est générée.
La figure 13 montre un schéma fonctionnel selon un second mode de réalisation de l'unité de calcul et de correction de valeur d'erreur 74 sur la figure 7. L'unité de calcul et de correction de valeur d'erreur 74 comprend une première mémoire 130, un premier multiplicateur de Galois 131, une unité de sortie d'élément de champ de Galois 132, un second multiplicateur de Galois 133, une mémoire morte 134 pour mémoriser "0x00", un multiplexeur 135 et un additionneur de Galois 136. De plus, l'unité de sortie d'élément de champ de Galois 132 comprend une première mémoire morte 132-1, une seconde mémoire morte 132-2, un troisième multiplicateur de
Galois 132-3, un multiplexeur 132-4 et un registrer 132-5.
Sur la figure 13, la première mémoire morte 132-1 de l'unité de sortie d'élément de champ de Galois 132 mémorise l'élément primitif d'ordre le plus élevé "iaN-I" du code Reed-Solomon, la seconde mémoire morte 132-2 mémorise "aii" pour diminuer l'élément primitif d'un ordre de un. Le troisième multiplicateur de Galois 132-3 reçoit "a"i" de la seconde mémoire morte 132-2 et la valeur de rétroaction et exécute l'opération de multiplication de Galois pour sortir l'élément primitif de l'ordre diminué d'un ordre de un. Le multiplexeur 132-4 sort, de manière sélective, l'élément primitif d'ordre le plus élevé de la première mémoire morte 132-1 ou l'élément primitif ai calculé à partir du troisième multiplicateur de Galois 132-3 conformément au signal initial INIT_FLAG. Le registre 132-5 verrouille l'élément primitif a' sorti du multiplexeur 132-4, le sort vers le second multiplicateur de Galois 133 et le retourne simultanément vers le
troisième multiplicateur de Galois 132-3.
Ensuite, une opération de l'unité de calcul et de correction de valeur
d'erreur 74 illustrée sur la figure 13 va être décrite en détail.
D'abord, pour calculer une valeur d'erreur pour un symbole de réception d'ordre N-l, yN.1, le multiplexeur 132-4 sélectionne l'élément primitif "aaN'I" pour le symbole d'ordre le plus élevé de la première mémoire morte 132-1 conformément au signal initial INITFLAG et le sort vers le registre 132-5. A cet instant, le registre 132-5 validé par le signal de validation de symbole SCLK_ENA, reçoit l'élément primitif "a&N'' en synchronisation avec l'horloge RS RS_CLK. La première mémoire 130 mémorise une valeur réciproque pour une valeur d'évaluation de différentiation prédéterminée sous la forme d'une table à consulter, reçoit la valeur d'évaluation de différentiation a p_VAL = c'(a )(N1 sortie à partir de l'unité d'évaluation de polynôme de localisation d'erreur (le numéro de référence 73 sur la figure 7) et sort la valeur réciproque correspondante
l/o'(cF(N-î)) vers le premier multiplicateur de Galois 131.
Le multiplicateur de Galois 131 reçoit la valeur réciproque d'évaluation de différentiation 1/o'(oNmi) provenant de la première mémoire et la valeur dévaluation d'erreur a_VAL = fQ(c(N 1)) sortie à partir de l'unité d'évaluation de polynôme d'évaluation d'erreur (le numéro de 3 0 référence 72 sur la figure 7) et sort la valeur multipliée de Galois Q(a'(N' 1))/G'((c(N'I)). Le second multiplicateur de Galois 133 exécute l'opération de multiplication de Galois entre une valeur de sortie provenant du premier multiplicateur de Galois 131 et la valeur d'élément primitif cN'l sortie du registre 132-5 et sort le résultat en tant que valeur d'erreur eN.,. A partir des opérations ci-dessus, la valeur d'erreur eNI = -N- Q(-N'I)/'(a-NI) pour le
symbole d'ordre le plus élevé YN-I est calculée.
Pour calculer une valeur d'erreur pour le symbole de réception d'ordre N2 suivant, YN-I, le troisième multiplicateur de Galois 132-4 exécute l'opération de multiplication de Galois entre l'élément primitif d'ordre le plus élevé "aaNIt' sorti du registre 132-5 et "c'l" de la seconde mémoire morte 132-2 et sort le résultat en tant qu'élément primitif "(N2". Le multiplexeur 132-4 sélectionne et sort la valeur de sortie "caN'2" du troisième multiplicateur de Galois 132-3 conformément au signal d'initialisation INIT_FLAG. Pendant ce temps, la table à consulter de réciproques 30 reçoit la valeur d'évaluation de différentiation a pVAL = a'(ac(N1)) sortie à partir de l'unité d'évaluation de polynôme de localisation d'erreur (le numéro de référence 73 sur la figure 7) et sort la valeur réciproque correspondante
1 /c'(c'(N-2)) vers le premier multiplicateur de Galois 131.
Le premier multiplicateur de Galois 131 reçoit la valeur réciproque d'évaluation de différentiation 1/a'(c'(N'2)) provenant de la première mémoire 130 pour mémoriser la table à consulter de réciproques et la valeur d'évaluation d'erreur ca_VAL = l(a'(N2)) sortie à partir de l'unité d'évaluation de polynôme d'évaluation d'erreur (le numéro de référence 72 sur la figure 7) et sort la valeur multipliée de Galois Q(C'(N'2))/a'(aI(N-2)). Le second multiplicateur de Galois 133 exécute l'opération de multiplication de Galois entre la valeur de sortie provenant du premier multiplicateur de N-2 Galois 131 et la valeur d'élément primitif aN2 sortie du registre 132-5 et sort la valeur d'erreur eN.2. A partir de ces opérations, la valeur d'erreur eN.2 = aCN2 (2Q(at(N2))/ac'(a)(N-2))) pour le symbole d'ordre le plus élevé YN- 2 est calculée. Continuellement, en répétant l'opération telle que ci- dessus, la valeur d'élément primitif est diminuée d'un ordre de un à travers le multiplicateur de Galois 132-3, de sorte que la valeur d'erreur de la valeur d'élément
primitif correspondante est obtenue.
La figure 14 montre un schéma fonctionnel selon un mode de
réalisation de l'unité de décision d'échec de récupération 75 sur la figure 7.
L'unité de décision d'échec de récupération 75 comprend un compteur 140, une porte ET 141, une porte OU 142, un inverseur 143, un comparateur 144
et un registre 145.
Sur la figure 14, le compteur 140 compte un signal de localisation d'erreur ERR_FLAG pour indiquer une génération de bit d'erreur et sort le numéro du symbole pour lequel une erreur est générée. La porte ET 141 exécute l'opération ET logique entre un signal de demande d'évaluation EVAL_RST des unités d'horloge de symbole généré à partir du contrôleur (le numéro de référence 10 sur la figure 1) et le signal de localisation d'erreur ERR_FLAG généré à partir de l'évaluateur de polynôme de localisation d'erreur (le numéro de référence 73 sur la figure 7), pour les évaluer dans des unités de symbole. La porte OU 142 exécute l'opération OU logique entre la sortie provenant de la porte ET 141 et le signal de demande d'échec de correction d'erreur UNRCVRFLAGRST et fournit ce résultat en tant que signal de validation au compteur 140. L'inverseur 143 inverse le signal de demande d'échec de correction d'erreur UNRCVRFLAGRST sorti à partir du contrôleur 10 et sort le résultat en tant que signal de mise à zéro au compteur 140. Le comparateur 144 compare le nombre de symboles d'erreur cnt du compteur 140 avec l'ordre le plus élevé L du polynôme de localisation d'erreur sorti de l'unité de calcul de polynôme de localisation d'erreur (le numéro de référence 7 sur la figure 1) et sort un signal "bas" si les deux valeurs sont équivalentes, tandis qu'il sort un signal "haut" si les deux valeurs ne sont pas équivalentes. Le registre reçoit le signal de sortie provenant du comparateur 144 et sort un signal
d'échec de correction d'erreur UNRCVRFLAG.
A savoir, l'unité de décision d'échec de récupération 75 détermine un succès ou un échec de la correction d'erreur. Si l'ordre le plus élevé L du polynôme de localisation d'erreur sorti de l'unité de calcul de polynôme de localisation d'erreur (le numéro de référence 7 sur la figure 1) est inférieur au 10ème ordre, et si le nombre de symboles de génération d'erreur du compteur 140 est égal à la valeur L, le symbole à erreur corrigée est
correctement récupéré.
3 o La figure 15 montre un schéma fonctionnel selon un mode de réalisation du calculateur de taux d'erreur de bit 9 sur la figure 1. Le calculateur de taux d'erreur de bit 9 comprend un détecteur de bits d'erreur 151, un compteur de bits d'erreur 152 et un calculateur de nombre de bits d'erreur 153. De plus, le détecteur de bits d'erreur 151 comprend un premier
3 5 compteur 151-1, un premier inverseur 151-2, des portes OU exclusif 151 a -
lh et un premier multiplexeur 151-3. De plus, le compteur de bits d'erreur 152 comprend un second compteur 152-1 et un second inverseur 152-2, une mémoire morte 152-3 pour mémoriser "0x21", une première porte ET 152-4 et un second multiplexeur 152-5. De plus, le calculateur de nombre d'erreurs de bit 153 comprend un additionneur 153-1, un registre 153-2, un troisième
inverseur 153-5, une seconde porte ET 153-4 et une troisième porte ET 153-
4. Sur la figure 15, le premier compteur 151-1 du détecteur de bits d'erreur 151 est un compteur à 4 bits, mis à zéro à chaque unité de symbole, qui fournit les valeurs de comptage 0, 1, 2,..., 7, 8, 9, 0, 1,... en tant que signal de sélection de bit SEL_BIT au premier multiplexeur 151-3 en synchronisation avec l'horloge RS RS_CLK. Les huit portes OU exclusif 151 a 15 l h exécutent une opération OU exclusif entre les bits de symbole de réception R_SYM[0] - R SYM[7] sortis de la mémoire tampon premier entré-premier sorti (le numéro de référence 3 sur la figure 1) et les bits de symbole à erreur corrigée C_SYM[0] - C_SYM[7] sortis du correcteur d'erreur (le numéro de référence 8 sur la figure 1), respectivement, pour sortir "0" vers le premier multiplexeur 151-3 si deux bits sont équivalents, tandis qu'il sort "1" vers le multiplexeur 151-3 si deux bits ne sont pas équivalents. Le premier multiplexeur 151-3 reçoit la sortie provenant des huit portes OU logique exclusif 151a - 151h à travers ses première à septième bornes, les sélectionne systématiquement conformément au signal de sélection de bit SEL_BIT et les sort vers le second compteur 152-1. A cet instant, la huitième et la neuvième borne du premier multiplexeur 151-3
sont dans un état de connexion à la masse.
Dans le compteur de bits d'erreur 152, le second compteur 152-1, validé lorsque le signal de sortie provenant du premier multiplexeur 151-3 est "1", exécute une opération de comptage en synchronisation avec l'horloge RS RS_CLK. A savoir, le second compteur 152-1 compte uniquement si le bit du symbole de réception R_SYM[i] et le bit du symbole à erreur corrigée C_SYM[i] sont différents l'un de l'autre, afin de détecter le nombre de bits d'erreur généré. Le second compteur 152-1, en tant que compteur à 7 bits, peut compter jusqu'à 80 bits qui peuvent être générés à partir des 10 symboles dans lesquels l'erreur peut être corrigée pour chaque mot de code. Le second compteur 152-1 est mis à zéro par un signal de début de mot de code CW_START, qui est généré pour chaque mot de code. La première porte ET 152-4 exécute l'opération ET logique entre un signal d'échec de récupération UNRCVR_FLAG (qui est "bas" si la correction d'erreur est un succès, tandis qu'il est "haut" dans le cas contraire) et un signal de début de mot de code CW_START qui est "haut" uniquement pendant l'entrée du premier symbole de chaque mot de code et sort le résultat en tant que signal de sélection du multiplexeur 152-5. Le second multiplexeur 152-5, conformément à la sortie provenant de la première porte ET 152-4, sort, de manière sélective, "0x21" de la mémoire morte 152-3 si le mot de code 1 récupéré n'est pas corrigé, tandis qu'il sort un premier nombre de bitsd'erreur ERRNUM1 généré à partir du mot de code 1 sorti du second compteur 152-1, si le mot de code 1 récupéré est corrigé. Ici, la valeur "0x21" mémorisée dans la mémoire morte 152-3 représente un cas o le nombre d'erreurs généré dépasse le nombre du nombre de correction d'erreur t(=10). De plus, la valeur 33 est représentée comme une notation hexadécimale lorsque l'erreur est générée dans 11
symboles et le nombre d'erreurs généré dans chaque symbole est de 3 bits.
Dans le calculateur de nombre de bits d'erreur 153, l'additionneur 153-
1 ajoute le premier nombre de bits d'erreur ERR_SUM1 à une valeur sortie du registre 153-2 et retourne le résultat vers le registre 153-2. Ici, le registre 153-2 est validé uniquement au début d'un mot de code conformément au résultat de l'opération ET logique entre un signal de début d'évaluation EVALINIT_FLAG et un signal de validation de symbole SCLK_ENA, en synchronisation avec l'horloge RS RS_CLK et est réinitialisé par un signal de période de détection prédéterminée (par exemple, un signal périodique de " 1 " tous les 100 mots de code). Par conséquent, à chaque période de mot de code, l'additionneur 153-1 sort le nombre de bits d'erreur total ERR_NUM2 généré jusqu'au mot de code courant pendant la période de
détection prédéterminée.
C'est-à-dire que le calculateur de taux d'erreur de bit 9 compare le symbole de réception au symbole à erreur corrigée, dans chaque bit, pour compter les bits contraires en tant que bits d'erreur pour détecter le nombre de bits d'erreur ERR NUM1 dans des unités de mot de code, considère le mot de code d'échec de correction d'erreur comme des erreurs de 33 bits, cumule le nombre de bits d'erreur généré dans la pratique pour le mot de code de succès de correction d'erreur pendant une période de détection prédéterminée et met à jour et sort le nombre de bits d'erreur généré depuis
le début jusqu'au mot de code courant.
Les modes de réalisation ci-dessus concernent un décodeur pour récupérer le code Reed-Solomon ayant une capacité de correction d'erreur de 10. En modifiant l'horloge RS, le nombre de racines initiales mémorisées dans la mémoire morte ou la racine de mise à jour et la capacité de divers types de registres, les modes de réalisation de la présente invention peuvent facilement être mis en oeuvre pour récupérer le code Reed-Solomon ayant
une capacité de correction d'erreur de multiples de 10.
Comme décrit ci-dessus, selon la présente invention, le décodeur pour récupérer le code Reed-Solomon (207, 187) destiné à être utilisé en télévision avancée peut être réalisé facilement en utilisant une puce VLSI (à
très haute intégration).
Bien que la présente invention ait été décrite en relation avec ce qu'on considère, à l'heure actuelle, comme étant les modes de réalisation les plus pratiques et préférés, on doit comprendre que l'invention n'est pas limitée aux modes de réalisation décrits mais que, au contraire, on veut couvrir diverses modifications et agencements équivalents compris dans l'esprit et
2 0 le domaine des revendications jointes.

Claims (14)

REVENDICATIONS
1. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée pour décoder et corriger les erreurs dans un symbole reçu codé selon un code Reed-Solomon ayant une capacité de correction d'erreur de multiples de 10(t), caractérisé en ce qu'il comprend: des moyens de génération d'impulsions d'horloge destinés à générer une horloge RS t fois plus rapide qu'une horloge de symbole; des moyens formant mémoire tampon premier entré-premier sorti destinés à verrouiller le symbole reçu conformément à l'horloge RS; des moyens de calcul de syndrome destinés à calculer des valeurs de 1 0 syndrome à partir du symbole reçu conformément à l'horloge RS; des moyens de sélection de syndrome destinés à sélectionner une des valeurs de syndrome sorties à partir desdits moyens de calcul de syndrome et une valeur "0xOO" conformément à un signal de sélection de syndrome; des moyens de calcul de polynôme de localisation d'erreur destinés à calculer les coefficients d'un polynôme de localisation d'erreur en utilisant les valeurs de syndrome sorties à partir desdits moyens de sélection de syndrome conformément à l'horloge RS et destinés à fournir les coefficients et leur ordre le plus élevé; des moyens de correction d'erreur destinés à générer une valeur 2 0 d'erreur en utilisant les valeurs de syndrome et les coefficients du polynôme de localisation d'erreur conformément à l'horloge RS et destinés à fournir un symbole récupéré à erreurs corrigées en ajoutant la valeur d'erreur au symbole reçu sorti à partir desdits moyens formant mémoire tampon premier entré-premier sorti; et des moyens de contrôle destinés à générer une pluralité de signaux de contrôle pour contrôler lesdits moyens de calcul de syndrome, lesdits moyens de sélection de syndrome, lesdits moyens de calcul de polynôme de
localisation d'erreur et lesdits moyens de correction d'erreur.
2. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée 3 0 selon la revendication 1, caractérisé en ce que ledit décodeur ReedSolomon comprend, de plus, des moyens de calcul de taux d'erreur de bit destinés à calculer un taux d'erreur de bit en comparant le symbole reçu au symbole
récupéré à erreur corrigée dans des unités de bit.
3. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée selon la revendication 2, caractérisé en ce que lesdits moyens de calcul de taux d'erreur de bit comprennent: des moyens de détection de bit d'erreur destinés à comparer le symbole reçu et le symbole récupéré à erreur corrigée dans chaque bit, à détecter des bits inégaux et à sortir le résultat détecté, dans des unités d'un symbole prédéterminé; i0 des moyens de comptage de bits d'erreur destinés à compter les bits détectés à partir des moyens de comptage de bits d'erreur et à sortir un premier nombre de bits d'erreur généré pendant une période de mot de code prédéterminée; et des moyens de calcul de nombre de bits d'erreur destinés à recevoir le premier nombre de bits d'erreur à partir desdits moyens de comptage de bits d'erreur et à sortir un second nombre de bits d'erreur généré pendant une
période de détection prédéterminée en tant que taux de bit d'erreur.
4. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée selon la revendication 1, caractérisé en ce que lesdits moyens de calcul de 2 0 syndrome comprennent: des moyens de comptage destinés à effectuer le comptage conformément à l'horloge RS et à sortir la valeur comptée en tant que signal de sélection de racine alpha; une première unité de mémorisation (32a - 32j) destinée à mémoriser 2 5 un premier groupe de racines alpha; une première cellule de calcul de syndrome (32) destinée à calculer un premier groupe de valeurs de syndrome en utilisant le premier groupe de
racines alpha mémorisé dans ladite première unité de mémorisation (32a -
32j) conformément au signal de sélection de racine alpha dans des unités 3 0 d'horloge RS; une seconde unité de mémorisation (34a - 34j) destinée à mémoriser un second groupe de racines alpha; une seconde cellule de calcul de syndrome (34) destinée à calculer un second groupe de valeurs de syndrome en utilisant le second groupe de
racines alpha mémorisé dans ladite seconde unité de mémorisation (34a -
34j) conformément au signal de sélection de racine alpha dans des unités d'horloge RS; des premiers moyens de sélection destinés à sélectionner, de manière séquentielle, une des valeurs du premier groupe de valeurs de syndrome conformément à un premier signal de sélection de syndrome fourni à partir desdits moyens de contrôle; des seconds moyens de sélection destinés à sélectionner, de manière séquentielle, une des valeurs du second groupe de valeurs de syndrome conformément à un second signal de sélection de syndrome fourni à partir i0 desdits moyens de contrôle; et des troisièmes moyens de sélection destinés à sélectionner l'une parmi la sortie provenant desdits premiers moyens de sélection et la sortie provenant desdits seconds moyens de sélection conformément à un troisième signal de sélection de syndrome fourni à partir desdits moyens de
contrôle.
5. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée selon la revendication 4, caractérisé en ce que ladite première cellule de calcul de syndrome (32) comprend: un premier registre à décalage (42) comportant un premier groupe de 2 0 registres, pour mémoriser les valeurs de syndrome intermédiaires calculées à partir du premier symbole jusqu'au second symbole à partir du dernier dans un mot de code, conformément à l'horloge RS; un second registre à décalage (43) comportant un second groupe de registres, pour mémoriser les valeurs de syndrome finales calculées à partir du premier symbole jusqu'au dernier symbole dans le mode de code, conformément à l'horloge RS; des moyens de génération de signaux de contrôle destinés à générer une pluralité de signaux de contrôle pour contrôler lesdits premier et second registres à décalage; 3 0 des moyens de sélection de terme destinés à sélectionner les valeurs de syndrome intermédiaires fournies à partir dudit premier registre à décalage (42) tout en recevant le premier symbole au second symbole à partir du dernier dans le mot de code et destinés à sélectionner les valeurs de syndrome finales fournies à partir dudit second registre à décalage (43) 3 5 pendant la réception du dernier symbole dans le mot de code; et des moyens d'exploitation de terme de syndrome destinés à effectuer une multiplication de Galois entre le premier groupe de racines alpha sélectionné conformément au signal de sélection de racine alpha et les valeurs de syndrome intermédiaires, à effectuer une addition de Galois entre la valeur multipliée et le symbole reçu dans des unités d'horloge RS et à fournir la valeur additionnée en tant que valeurs de syndrome intermédiaire
et finale auxdits premier et second registres à décalage, respectivement.
6. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée selon la revendication 4, caractérisé en ce que ladite seconde cellule de calcul de syndrome (34) comprend: un premier registre à décalage (42) comportant un premier groupe de registres, pour mémoriser les valeurs de syndrome intermédiaires calculées à partir du premier symbole jusqu'au second symbole à partir du dernier dans un mot de code, conformément à l'horloge RS; un second registre à décalage (43) comportant un second groupe de registres, pour mémoriser les valeurs de syndrome finales calculées à partir du premier symbole jusqu'au dernier symbole dans le mot de code, conformément à l'horloge RS; des moyens de génération de signaux de contrôle destinés à générer 2 0 une pluralité de signaux de contrôle pour contrôler lesdits premier et second registres à décalage; des moyens de sélection de terme destinés à sélectionner les valeurs de syndrome intermédiaires fournies à partir dudit premier registre à décalage (42) tout en recevant le premier symbole au second symbole à partir du dernier dans le mot de code et à sélectionner les valeurs de syndrome finales fournies à partir dudit second registre à décalage (43) tout en recevant le dernier symbole dans le mot de code; et des moyens d'exploitation de terme de syndrome destinés à effectuer une multiplication de Galois entre le second groupe de racines alpha sélectionné conformément au signal de sélection de racine alpha et les valeurs de syndrome intermédiaires, destinés à exécuter une addition de Galois entre la valeur multipliée et le symbole reçu dans des unités d'horloge RS et destinés à fournir la valeur additionnée en tant que valeurs de syndrome intermédiaire et finale auxdits premier et second registres à
3 5 décalage, respectivement.
7. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée selon la revendication 1, caractérisé en ce que lesdits moyens de calcul de polynôme de localisation d'erreur comprennent: des moyens de calcul de divergence destinés à retarder un polynôme de localisation d'erreur mis à jour et à calculer un nombre 2t de divergences en utilisant les valeurs de syndrome sorties desdits moyens de sélection de syndrome et le polynôme de localisation d'erreur mis à jour; des moyens de génération de variable destinés à sortir un indice et l'ordre le plus élevé du polynôme de localisation d'erreur, sous le contrôle desdits moyens de calcul de divergence; une unité de mémorisation destinée à mémoriser les réciproques des dernières divergences sous la forme d'une table à consulter et à sortir la réciproque de la dernière divergence correspondant à l'indice; un premier multiplicateur de Galois pour effectuer une multiplication de Galois entre la divergence sortie desdits moyens de calcul de divergence et la réciproque de la dernière divergence sortie de ladite unité de mémorisation; un registre à décalage pour mémoriser une valeur intermédiaire utilisée pour mettre à jour le polynôme de localisation d'erreur; des moyens de sélection destinés à sélectionner l'un du dernier polynôme de localisation d'erreur mis à jour sorti desdits moyens de calcul de divergence et la sortie dudit registre à décalage et à fournir le sélectant audit registre à décalage; un second multiplicateur de Galois pour effectuer une multiplication de Galois entre la sortie dudit premier multiplicateur de Galois et la sortie dudit registre à décalage; et un additionneur de Galois pour effectuer une addition de Galois entre la sortie dudit second multiplicateur de Galois et le polynôme de localisation d'erreur retardé par lesdits moyens de calcul de divergence et 3 0 pour fournir la valeur additionnée auxdits moyens de calcul de divergence
en tant que polynôme de localisation d'erreur mis à jour.
8. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée selon la revendication 1, caractérisé en ce que lesdits moyens de correction d'erreur comprennent: une unité de mémorisation d'éléments communs (70) pour mémoriser un nombre t de racines initiales ('NXl, I < i < t) correspondant à une réciproque d'un élément de champ de Galois pour traiter une évaluation à partir du symbole d'ordre le plus élevé du code Reed-Solomon et pour mémoriser un nombre t de racines de mise à jour (a', 1 < i < t) correspondant à un élément de champ de Galois pour mettre à jour l'ordre pour le symbole suivant; une unité de calcul de polynôme d'évaluation d'erreur (71) pour calculer un polynôme d'évaluation d'erreur par une multiplication de Galois entre les valeurs de syndrome sorties desdits moyens de sélection de syndrome et les coefficients du polynôme de localisation d'erreur et pour sortir les coefficients du polynôme d'évaluation d'erreur; une unité d'évaluation de polynôme d'évaluation d'erreur (72) pour évaluer le polynôme d'évaluation d'erreur en utilisant les coefficients du polynôme d'évaluation d'erreur, les racines initiales et les racines de mise à jour sortis de ladite unité de mémorisation d'éléments communs (70) et pour sortir le résultat d'évaluation en tant que valeur d'évaluation d'erreur; une unité d'évaluation de polynôme de localisation d'erreur (73) pour sortir un signal de localisation d'erreur en évaluant le polynôme d'évaluation 2 0 d'erreur à partir du coefficient du polynôme d'évaluation d'erreur en utilisant les racines initiales et les racines de mise à jour et pour sortir une valeur d'évaluation de différentiation en évaluant un polynôme de différentiation du polynôme de localisation d'erreur; une unité de calcul et de correction de valeur d'erreur (74) pour calculer la valeur d'erreur en utilisant la valeur d'évaluation de différentiation et la valeur d'évaluation d'erreur et pour sortir le symbole récupéré à erreur corrigée en additionnant la valeur d'erreur au symbole reçu conformément au signal de localisation d'erreur; et une unité de décision d'échec de récupération (75) pour déterminer si, 3 0 oui ou non, le symbole récupéré à erreur corrigée est correct et pour sortir
un signal d'échec de récupération en fonction du résultat.
9. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée selon la revendication 8, caractérisé en ce que l'unité de mémorisation d'éléments communs (70) comprend: une première unité de mémorisation (32a - 32j) comprenant un premier groupe de zones de mémorisation, pour mémoriser les racines initiales une seconde unité de mémorisation (34a 34j) comprenant un second groupe de zones de mémorisation, pour mémoriser les racines de mise à jour; un premier sélecteur pour sélectionner et sortir, de manière séquentielle, la racine initiale de ladite première unité de mémorisation (32a - 32j) conformément à un signal de sélection de racine initiale fourni à partir desdits moyens de contrôle; et un second sélecteur pour sélectionner et sortir, de manière séquentielle, la racine de mise à jour de ladite seconde unité de mémorisation (34a - 34j) conformément à un signal de sélection de racine
de mise à jour fourni à partir desdits moyens de contrôle.
10. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée selon la revendication 8, caractérisé en ce que ladite unité de calcul de polynôme d'évaluation d'erreur (71) comprend: un multiplicateur de Galois pour effectuer la multiplication de Galois entre les coefficients du polynôme de localisation d'erreur et les valeurs de 2 0 syndrome sorties desdits moyens de sélection de syndrome; un additionneur de Galois pour effectuer l'addition de Galois entre la sortie dudit multiplicateur de Galois et une valeur de rétroaction; un multiplexeur pour sortir, de manière sélective un des coefficients du polynôme de localisation d'erreur et la sortie provenant dudit 2 5 additionneur de Galois, sous le contrôle desdits moyens de contrôle; et un registre à décalage (94) pour mémoriser les coefficients du polynôme d'évaluation d'erreur en décalant la sortie dudit multiplexeur dans une unité d'horloge RS et pour fournir la valeur mémorisée en valeur de
rétroaction dudit additionneur de Galois en tant que valeur de rétroaction.
3 o 1 1. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée selon la revendication 8, caractérisé en ce que ladite unité d'évaluation de polynôme d'évaluation d'erreur (72) comprend: une unité d'initialisation (110) pour effectuer une multiplication de Galois entre les racines initiales fournies à partir de ladite unité de mémorisation d'éléments communs (70) dans l'unité d'horloge RS et les coefficients du polynôme d'évaluation d'erreur fournis à partir de ladite unité de calcul de polynôme d'évaluation d'erreur (71) dans les unités d'horloge de symbole et pour sortir une valeur de terme initial; un sélecteur de terme (111) pour sélectionner le terme initial et une valeur de terme intermédiaire sous le contrôle desdits moyens de contrôle; une unité de mise à jour d'ordre (112) pour mettre à jour une valeur de terme du polynôme de localisation d'erreur pour le symbole suivant par la sortie dudit sélecteur de terme et pour sortir la valeur de terme mise à jour; un opérateur de terme pour additionner les valeurs de terme sorties de ladite unité de mise à jour d'ordre (112) pendant une horloge de symbole et pour sortir la valeur additionnée; et une unité de sortie de valeur d'évaluation d'erreur (108) pour additionner la sortie dudit opérateur de terme au coefficient d'ordre 0 du polynôme de localisation d'erreur et pour sortir la valeur additionnée en
1 5 valeur d'évaluation d'évaluateur d'erreur.
12. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée selon la revendication 8, caractérisé en ce que ladite unité d'évaluation de polynôme de localisation d'erreur (73) comprend: une unité d'initialisation pour effectuer la multiplication de Galois entre les racines initiales fournies à partir de ladite unité de mémorisation d'éléments communs (70) dans l'unité d'horloge RS et les coefficients du polynôme de localisation d'erreur fourni à partir de ladite unité de calcul de polynôme de localisation d'erreur dans les unités d'horloge de symbole et pour sortir les valeurs multiples en tant que valeur de terme initial; un sélecteur de terme (111) pour sélectionner la valeur de terme initiale et une valeur de terme intermédiaire sous le contrôle desdits moyens de contrôle; une première unité de mise à jour d'ordre (112) pour mettre à jour une valeur de terme du polynôme de localisation d'erreur pour le symbole 3 0 suivant par la sortie dudit sélecteur de terme (11 1) et pour sortir la valeur de terme mise à jour en tant que valeur de terme intermédiaire; un premier opérateur de terme pour additionner les valeurs de terme sorties à partir de ladite première unité de mise à jour d'ordre pendant une horloge de symbole; un second opérateur de terme pour additionner la sortie dudit premier opérateur de terme au coefficient d'ordre 0 du polynôme de localisation d'erreur et pour sortir le résultat en valeur d'évaluation de localisation d'erreur; une unité de décision pour déterminer si, oui ou non, une erreur est générée, à partir de la valeur d'évaluation de localisation d'erreur sortie dudit second opérateur de terme et pour générer le signal de localisation d'erreur; un sélecteur de terme d'ordre impair pour recevoir la sortie de ladite première unité de mise à jour d'ordre et pour sortir, de manière sélective, un terme d'ordre impair du polynôme de localisation d'erreur; une seconde unité de mise à jour d'ordre pour mettre à jour l'ordre d'une racine alpha à partir de l'ordre le plus élevé par "1"; et un troisième opérateur de terme pour additionner les termes d'ordre impair sortis dudit sélecteur de terme d'ordre impair, pour effectuer une multiplication de Galois entre la valeur additionnée et la sortie de ladite seconde unité de mise à jour d'ordre et pour sortir la valeur multipliée en
tant que valeur d'évaluation de différentiation.
13. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée selon la revendication 8, caractérisé en ce que ladite unité de calcul 2 0 et de correction de valeur d'erreur (74) comprend: une première mémoire (120) pour mémoriser la réciproque des valeurs d'évaluation de différentiation sous la forme d'une table à consulter et pour sortir une réciproque de la valeur d'évaluation de différentiation conformément à la valeur d'évaluation de différentiation provenant de ladite 2 5 unité d'évaluation de polynôme de localisation d'erreur (73); un premier multiplicateur de Galois (121) pour effectuer une multiplication de Galois entre la valeur d'évaluation d'erreur sortie de ladite unité d'évaluation de polynôme de localisation d'erreur (73) et la réciproque de la valeur d'évaluation de différentiation sortie de ladite première 3 0 mémoire (120); une seconde mémoire (122) pour mémoriser les éléments primitifs du champ de Galois sous la forme d'une table à consulter et pour sortir l'élément primitif correspondant à un ordre de symbole de celle-ci, sous le
contrôle desdits moyens de contrôle.
un second multiplicateur de Galois (123) pour effectuer une multiplication de Galois entre la sortie dudit premier multiplicateur de Galois (121) et l'élément primitif sorti de ladite seconde mémoire (122) et pour sortir la valeur multipliée en tant que valeur d'erreur; une troisième mémoire pour mémoriser "OxOO" (124); un multiplexeur (125) pour sortir, de manière sélective, l'un de "OxOO" sorti de ladite troisième mémoire et de la valeur d'erreur sortie dudit second multiplicateur de Galois (123) conformément au signal de localisation d'erreur; et un additionneur de Galois (126) pour effectuer une addition de Galois entre le symbole reçu et la sortie dudit multiplexeur et pour sortir la valeur
additionnée en tant que symbole récupéré à erreur corrigée.
14. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée selon la revendication 8, caractérisé en ce que ladite unité de calcul et de correction de valeur d'erreur comprend; une première mémoire pour mémoriser la réciproque des valeurs d'évaluation de différentiation sous la forme d'une table à consulter et pour sortir une réciproque de la valeur d'évaluation de différentiation conformément à la valeur d'évaluation de différentiation provenant de ladite unité d'évaluation de polynôme de localisation d'erreur; un premier multiplicateur de Galois pour effectuer une multiplication de Galois entre la valeur d'évaluation d'erreur sortie de ladite unité d'évaluation de polynôme de localisation d'erreur et la réciproque de la valeur d'évaluation de différentiation sortie de ladite première mémoire; 2 5 une seconde mémoire pour mémoriser un élément primitif correspondant au symbole d'ordre le plus élevé d'un mot de code; une troisième mémoire pour mémoriser ct' pour mettre à jour l'élément primitif; un second multiplicateur de Galois pour effectuer une multiplication 3 0 de Galois entre a'i de ladite troisième mémoire et une valeur de rétroaction et pour sortir l'élément primitif de l'ordre diminué d'un ordre de un; un premier multiplexeur pour sortir, de manière sélective, l'une de la sortie de ladite seconde mémoire et de la sortie de ladite troisième mémoire, sous le contrôle desdits moyens de contrôle; un registre pour verrouiller l'élément primitif sorti dudit premier multiplexeur et pour sortir la valeur verrouillée vers ledit second multiplicateur de Galois en tant que valeur de rétroaction; un troisième multiplicateur de Galois pour effectuer une multiplication de Galois entre l'élément primitif sorti dudit registre et la sortie dudit premier multiplicateur de Galois et pour sortir la valeur multipliée en tant que valeur d'erreur; une quatrième mémoire pour mémoriser "OxOO"; un second multiplexeur pour sortir, de manière sélective, l'un de "OxOO" sorti de ladite troisième mémoire et de la valeur d'erreur sortie dudit troisième multiplicateur de Galois conformément au signal de localisation d'erreur; et un additionneur de Galois pour effectuer une addition de Galois entre le symbole reçu et la sortie dudit multiplexeur et pour sortir la valeur
additionnée en tant que symbole récupéré à erreur corrigée.
15. Décodeur Reed-Solomon destiné à être utilisé en télévision avancée, caractérisé en ce qu'il est réalisé et agencé sensiblement tel que décrit ici avec référence aux dessins ou comme montré sur les dessins joints.
FR9713577A 1996-10-29 1997-10-29 Decodeur reed - solomon destine a etre utilise en television avancee Expired - Fee Related FR2756991B1 (fr)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1019960049690A KR100192801B1 (ko) 1996-10-29 1996-10-29 리드 솔로몬 디코더의 비트 에러율 측정 회로
KR1019960051202A KR100215570B1 (ko) 1996-10-31 1996-10-31 고화질 텔레비젼용 리드 솔로몬 디코더
KR1019960060085A KR100192802B1 (ko) 1996-11-29 1996-11-29 리드 솔로몬 디코더의 에러값 계산 및 정정 장치

Publications (2)

Publication Number Publication Date
FR2756991A1 true FR2756991A1 (fr) 1998-06-12
FR2756991B1 FR2756991B1 (fr) 2004-08-27

Family

ID=27349414

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9713577A Expired - Fee Related FR2756991B1 (fr) 1996-10-29 1997-10-29 Decodeur reed - solomon destine a etre utilise en television avancee

Country Status (7)

Country Link
US (1) US6031875A (fr)
JP (1) JP4012997B2 (fr)
CN (1) CN1222169C (fr)
DE (1) DE19747774B4 (fr)
FR (1) FR2756991B1 (fr)
GB (1) GB2318954B (fr)
IT (1) IT1295890B1 (fr)

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3234130B2 (ja) * 1995-05-30 2001-12-04 三菱電機株式会社 誤り訂正符号復号化方法およびこの方法を用いる回路
KR100260415B1 (ko) * 1997-08-13 2000-07-01 윤종용 고속시리얼에러위치다항식계산회로
JPH11196006A (ja) * 1997-12-26 1999-07-21 Nec Corp 並列処理シンドロ−ム計算回路及びリ−ド・ソロモン複合化回路
FR2776113A1 (fr) * 1998-03-13 1999-09-17 Thomson Multimedia Sa Dispositif de correction d'erreurs et lecteur de disque optique comportant un tel dispositif
DE19825398A1 (de) * 1998-05-27 1999-12-02 Deutsche Telekom Ag Verfahren und Vorrichtung zur Übertragung digitalisierter Daten
US6637002B1 (en) 1998-10-21 2003-10-21 Maxtor Corporation Decoder for error correcting block codes
TW510086B (en) 1998-12-11 2002-11-11 Matsushita Electric Ind Co Ltd Reed-solomon decode device and the control method of the same
US6877129B1 (en) * 1999-04-30 2005-04-05 Rohde & Schwarz Gmbh & Co. Kg Method for measuring the receiver-side bit error rate of a DVB transmission system
FR2794584B1 (fr) * 1999-06-02 2001-09-14 France Telecom Procede de detection en aveugle du mode de codage de donnees numeriques
US6374383B1 (en) * 1999-06-07 2002-04-16 Maxtor Corporation Determining error locations using error correction codes
TW541519B (en) * 2000-05-24 2003-07-11 Acer Labs Inc Encoding/decoding system in optical disk storage device
US6694476B1 (en) * 2000-06-02 2004-02-17 Vitesse Semiconductor Corporation Reed-solomon encoder and decoder
US6732325B1 (en) 2000-11-08 2004-05-04 Digeo, Inc. Error-correction with limited working storage
US7036138B1 (en) * 2000-11-08 2006-04-25 Digeo, Inc. Method and apparatus for scheduling broadcast information
US20030140302A1 (en) * 2002-01-23 2003-07-24 Litwin, Louis Robert Chien search cell for an error-correcting decoder
US6950979B2 (en) * 2003-03-20 2005-09-27 Arraycomm Inc. Low complexity encoder and decoder
US7502986B2 (en) * 2005-02-09 2009-03-10 International Business Machines Corporation Method and apparatus for collecting failure information on error correction code (ECC) protected data
US20080240168A1 (en) * 2007-03-31 2008-10-02 Hoffman Jeffrey D Processing wireless and broadband signals using resource sharing
KR20080112583A (ko) * 2007-06-21 2008-12-26 주식회사 코아로직 리드 솔로몬 디코더 및 그 방법
CN101459431B (zh) * 2008-12-30 2012-03-07 北京大学 一种信道纠错码bch码和rs码的译码方法
US8453038B2 (en) * 2009-06-30 2013-05-28 Apple Inc. Chien search using multiple basis representation
JP5275398B2 (ja) * 2011-03-28 2013-08-28 株式会社東芝 リードソロモン復号器及び受信装置
US8875001B1 (en) * 2011-09-08 2014-10-28 Xilinx, Inc. Circuitry for parallel decoding of data blocks
JP5674700B2 (ja) * 2012-03-22 2015-02-25 株式会社東芝 符号化装置および符号化装置の制御方法、ならびに、記憶装置
US9003269B2 (en) * 2012-08-30 2015-04-07 Kabushiki Kaisha Toshiba Memory controller and semiconductor storage device
US9749548B2 (en) 2015-01-22 2017-08-29 Google Inc. Virtual linebuffers for image signal processors
US10461777B2 (en) * 2015-07-14 2019-10-29 Western Digital Technologies, Inc. Error locator polynomial decoder and method
US10572189B2 (en) 2016-11-04 2020-02-25 Sandisk Technologies Llc Method and decoder to adjust an error locator polynomial based on an error parity
US10439644B2 (en) 2015-07-14 2019-10-08 Western Digital Technologies, Inc. Error locator polynomial decoder and method
US10848182B2 (en) 2018-09-13 2020-11-24 Apple Inc. Iterative decoding with early termination criterion that permits errors in redundancy part
US10756763B2 (en) * 2018-09-28 2020-08-25 Innogrit Technologies Co., Ltd. Systems and methods for decoding bose-chaudhuri-hocquenghem encoded codewords
JP7184839B2 (ja) * 2020-03-13 2022-12-06 アンリツ株式会社 誤り率測定装置及びエラーカウント方法
JP2021153226A (ja) * 2020-03-24 2021-09-30 アンリツ株式会社 誤り率測定装置及びエラーカウント方法
CN112367087B (zh) * 2020-12-01 2024-01-30 西安邮电大学 一种高速rs译码器
JP7381512B2 (ja) * 2021-03-03 2023-11-15 アンリツ株式会社 誤り率測定装置及びエラー分布表示方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0793351A1 (fr) * 1996-02-28 1997-09-03 Daewoo Electronics Co., Ltd Appareil pour le calcul de syndromes pour la correction d'erreur

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58219852A (ja) * 1982-06-15 1983-12-21 Toshiba Corp エラ−訂正回路
US4584686A (en) * 1983-12-22 1986-04-22 Optical Storage International Reed-Solomon error correction apparatus
US4907233A (en) * 1988-05-18 1990-03-06 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration VLSI single-chip (255,223) Reed-Solomon encoder with interleaver
US5168509A (en) * 1989-04-12 1992-12-01 Kabushiki Kaisha Toshiba Quadrature amplitude modulation communication system with transparent error correction
JP2527274B2 (ja) * 1990-11-19 1996-08-21 株式会社小糸製作所 自動車用ヘッドランプ
US5379243A (en) * 1992-08-31 1995-01-03 Comstream Corporation Method and apparatus for performing finite field division
WO1995012850A1 (fr) * 1993-11-04 1995-05-11 Cirrus Logic, Inc. Decodeur reed-solomon
KR0135824B1 (ko) * 1994-11-10 1998-05-15 윤종용 오류 위치 및 추정 다항식 계산방법 및 이를 이용한 리드-솔로몬 복호기

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0793351A1 (fr) * 1996-02-28 1997-09-03 Daewoo Electronics Co., Ltd Appareil pour le calcul de syndromes pour la correction d'erreur

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
IM Y ET AL: "AN ADVANCED VLSI ARCHITECTURE OF RS DECODERS FOR ADVANCED TV", 1997 IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS. MONTREAL, JUNE 8 - 12, 1997, IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS (ICC), NEW YORK, IEEE, US, vol. 3, 8 June 1997 (1997-06-08), pages 1346 - 1350, XP000748864, ISBN: 0-7803-3926-6 *
WHITAKER S R ET AL: "REED SOLOMON VLSI CODEC FOR ADVANCED TELEVISION", IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, IEEE INC. NEW YORK, US, vol. 1, no. 2, 1 June 1991 (1991-06-01), pages 230 - 236, XP000214525, ISSN: 1051-8215 *
YONGHEE IM ET OHSANG KWON: "An advanced achitecture of RS decoders operating on bit clock using recursive Berlekamp algorithm", ICSPAT'96, vol. 1, - October 1996 (1996-10-01), Boston, USA, pages 628 - 632, XP002238782 *

Also Published As

Publication number Publication date
DE19747774B4 (de) 2009-07-09
IT1295890B1 (it) 1999-05-28
GB2318954A (en) 1998-05-06
GB2318954B (en) 2001-05-23
JPH10215188A (ja) 1998-08-11
GB9722792D0 (en) 1997-12-24
CN1188375A (zh) 1998-07-22
ITMI972426A1 (it) 1999-04-29
US6031875A (en) 2000-02-29
JP4012997B2 (ja) 2007-11-28
CN1222169C (zh) 2005-10-05
FR2756991B1 (fr) 2004-08-27
DE19747774A1 (de) 1998-04-30

Similar Documents

Publication Publication Date Title
FR2756991A1 (fr) Decodeur reed - solomon destine a etre utilise en television avancee
EP0838905B1 (fr) Décodeur Reed-Solomon
FR2762163A1 (fr) Dispositif de decodage pour la correction d&#39;erreurs d&#39;un code reed-solomon etendu et dispositif de correction d&#39;erreurs de codes reed-solomon a simple ou double extension
FR2860360A1 (fr) Dispositif de codage /decodage utilisant un codeur/decodeur de reed-solomon
EP0821493A1 (fr) Système de correction d&#39;erreurs dans des trames de données ayant des codes de parité horizontaux et verticaux
EP0690585B1 (fr) Décodeur Reed-Solomon
CN112367087A (zh) 一种高速rs译码器
FR2714555A1 (fr) Procédé et dispositif pour calculer un polynôme localisateur d&#39;erreurs à utiliser dans un décodeur de Reed-Solomon.
FR2540690A1 (fr) Verificateur de codeur
US5483236A (en) Method and apparatus for a reduced iteration decoder
EP0204612B1 (fr) Procédé de transmission, avec possibilité de correction de paquets d&#39;erreurs, de messages d&#39;information et dispositifs de codage et de décodage pour la mise en oeuvre de ce procédé
FR2720528A1 (fr) Décodeur de correction d&#39;erreur.
FR2866998A1 (fr) Decodage et correction d&#39;erreurs pour codes de geometrie algebrique
RU2633148C2 (ru) Способ кодовой цикловой синхронизации для каскадного кода при применении жестких решений
FR2768874A1 (fr) Decodeur de reed-solomon et procede de decodage
US5604752A (en) Communication method and apparatus therefor
KR100192804B1 (ko) 리드 솔로몬 복호화기에서의 다항식 평가 장치
EP3087678A1 (fr) Correction d&#39;erreurs avec test de plusieurs longueurs pour une trame de données
FR2838580A1 (fr) Procedes et dispositifs de faible cout pour le decodage de codes produits
RU2693190C1 (ru) Способ диагностики недвоичных блоковых кодов
EP0876710B1 (fr) Circuit de resolution d&#39;equation-cle et decodeur reed-solomon incorporant un tel circuit
FR2698703A1 (fr) Procédé et dispositif de production de l&#39;inverse d&#39;un élément arbitraire dans un champ fini.
EP0876645B1 (fr) Circuit multiplieur sur un corps de galois, circuit de calcul de syndrome et circuit de recherche de chien
EP0982866A1 (fr) Procédé de codage convolutif et de transmission par paquets d&#39;un flux série de données numériques, procédé et dispositif de décodage correspondants
EP1199628B1 (fr) Unité de calcul dans laquelle on détermine l&#39;inverse d&#39;un entier modulo un grand nombre

Legal Events

Date Code Title Description
TP Transmission of property
TP Transmission of property

Owner name: MAPLE VISION TECHNOLOGIES INC., CA

Effective date: 20131226

ST Notification of lapse

Effective date: 20160630