NL8403147A - Dataverwerkingssysteem dat is opgebouwd uit drie dataverwerkingsmodules. - Google Patents

Dataverwerkingssysteem dat is opgebouwd uit drie dataverwerkingsmodules. Download PDF

Info

Publication number
NL8403147A
NL8403147A NL8403147A NL8403147A NL8403147A NL 8403147 A NL8403147 A NL 8403147A NL 8403147 A NL8403147 A NL 8403147A NL 8403147 A NL8403147 A NL 8403147A NL 8403147 A NL8403147 A NL 8403147A
Authority
NL
Netherlands
Prior art keywords
data processing
symbol
code
bit
bit errors
Prior art date
Application number
NL8403147A
Other languages
English (en)
Original Assignee
Philips Nv
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
Application filed by Philips Nv filed Critical Philips Nv
Priority to NL8403147A priority Critical patent/NL8403147A/nl
Priority to DE8585201639T priority patent/DE3579550D1/de
Priority to EP85201639A priority patent/EP0178726B1/en
Priority to US06/786,773 priority patent/US4727546A/en
Priority to JP60228974A priority patent/JPH0656586B2/ja
Publication of NL8403147A publication Critical patent/NL8403147A/nl

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/182Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits based on mutual exchange of the output between redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)
  • Hardware Redundancy (AREA)
  • Multi Processors (AREA)

Description

* '*± _ ® PHN 11.162 1 N.V. Philips' Gloeilanpenfaharieken te Eindhoven
Dataverwerkingssysteem dat is opgebouwd uit drie dataverwerkingsmodules.
De uitvinding betreft een dataverwerkingssysteem dat is op-gebouwd uit drie dataverwerkingsmodules, die bevatten overeenkomstige tewerkingsmiddelen en daarop aangesloten geheugenmodules, en welk dataverwerkingssysteem een interkonnektienetwerk bezit dat is aange-5 sloten op eerste uitgangen van de dataverwerkingsmodules om meerbits bewerkingsresultaten van elk k^4 bits van enige dataverwerkingsmodule aan de andere dataverwerkingsmodules te karrruniceren, en waarbij elke dataverwerkingsmodule een ingangsdekodeur bevat die is aangesloten op het interkonnektienetwerk, en welke ingangsdekodeur telkens een tweede 10 uitgang bezit die is aangesloten op de lokale bewsrkingsmiddelen, om zelfs in het geval van falen van één dataverwerkingsmodule uit onderling incongruente bewerkingsresultatent een karrekt ingangswoord te hervormen. Middels een verdrievoudiging kan een meerderheidsbeslissing genomen warden uit de bewerkingsresultaten. Onder congruent wordt 15 verstaan dat de respektievelijke bewerkingsresultaten in ongestoorde toestand dezelfde informatie representeren. Het dataverwerkingssysteem kan nu karrekt dóórwerken, ook als één der dataverwerkingsmodules defekt raakt en onbetrouwbare informatie uit zendt. Het is bekend dat zulke dataverwerkingsmodules veelal een onderling onafhankelijk fout-20 gedrag vertonen. Als één faalt, kunnen de andere twee de afwijkende module detekteren en middels een meerderheidsbeslissing negeren. In matrixvarm is de generatormatrix van de in het bekende systeem gebruikte foutprotektiekode te schrijven als: G = (I I I), (1) 25 waarin (I) de identiteitsma.tr ix met afmetingen kxk (k is het aantal bits van de enkelvoudige informatie). De uitvinding baseert zich op . het inzicht, dat door de beschreven mate van redundantie additionele foutprotektie realiseerbaar is. Deze doelstelling wordt door de uitvinding gerealiseerd, door dat hij het kenmerk heeft, dat tenminste 30 twee van genoemde dataverwerkingsmodules in de keten tussen genoemde tweede uitgang en genoemde eerste uitgang voorzien zijn van enkodeur-nodules cm een daarin ontvangen meerbits grootheid met onderling en van de identiteitsmatrix verschillende reguliere matrixen te vermenigvul- 8403147 \ Λ EHN 11.162 2 digen, eventueel onder vermenigvuldiging van alle overeenkomstige meerbits grootheden met eenzelfde reguliere matrix en interne permutatie van de elementen van enige zulke meerbits grootheid middels vermenigvuldiging met een permutatiematrix (Q), cm aldus drie kode-5 symbolen te bekomen, en dat de dekodeurs inversie-elementen voor de door de enkodeurs geïntroduceerde bewerkingen bevatten, en dat een moderegister aanwezig is on naast een normale mode waarin één gestoord kodesymbool korrigeerbaar is, daarin tevens de korrektie van alle bit-fouten tot en met twee bits in verschillende kodesymbolen te besturen, 10 en in drie verschillende uitwismodes naast het veronachtzamen van één bijbehorend kodesymbool telkens de korrektie van één willekeurige bit-fout tuiten het veronachtzaamde kodesymbool te besturen. In formulevorm: (6) = (P) (I A B) (Q) waarin (A), (B), en (P) reguliere matrixen zijn, terwijl (Q) een 15 permutatiematrix is; deze laatste bevat drie rijen en drie kolommen van deelpermutatiematrixen, elke rij en elke kolom bevat precies één van nul verschillende deelpermutatiematrix. Elke deelperrautatiematrix werkt op één symbool, zodat daarvan elke kolom en elke rij één bit met de waarde 1 bevat. Voor (Q) voldoet ook de identiteitsmatrix.
20 De uitvinding baseert zich op het inzicht dat naast volledig falende dataverwerkingsmodules ook veel enkele bitfouten optreden bijvoorbeeld door deeltjes kosmische straling die een geheugen treffen. Het is een doelstelling van de uitvinding cm uitgaande van de ver-drievoudigingsredundantie zonder verdere uitbreiding in onderdelen 25 zulke bitfouten korrigeerbaar, respectievelijk detekteerbaar te maken, terwijl ook het volledig uitvallen van een dataverwerkingsmodule de gang van zaken niet verstoort.
Het blijkt dat middels de keuze voor de matrix (G) = (1 a^ a^j een eenvoudige relatie tussen p en q een voldoende en noodzakelijke 30 voorwaarde hiervoor is, namelijk p, q en p-q£ , waarbij het complement van de verzameling is: :=^i“j | i/ j€ , vlS=£i|wt (a1) = 1 , terwijl wt het gewicht aangeeft van het symbool a1 dat gerepresenteerd is ten opzichte van een qp een primitief polynoom gevormde basis van 35 dit Galois-lichaam.
Het is gunstig als voor k^8 het moderegister in de normale mode de korrektie van alle bitfouten tot maximaal drie bits in verschillende kodesymbolen bestuurt, en in een uitwismode telkens de 84 0 3 1 4 7 N - i \ PHN 11.162 3 karrektie van alle bitfouten tot maximaal twee willekeurige bitfouten buiten het veronachtzaamde kodesymbool bestuurt. Voortbouwend pp het volgende kan voer Galois-lichamen met een grotere extensie ook een uitgefcreidere protektie warden verschaft.
5 Verdere onderconclusies geven nadere voordelige representaties van de uitvinding.
Korte beschrijving van de figuren:
De uitvinding wordt nader uitgelegd aan de hand van enkele 10 figuren. Eerst wordt het dataverwerkingssysteem als totaal kort uitgelegd. Daarna worden enkele eigenschappen van de kode besproken; tenslotte warden dekodeurs gepresenteerd voor de gevallen k=4, 8, 16.
De figuren tonen: figuur 1 een dataverwerkingssysteem waarin de uitvinding 15 iirplementeerbaar is; figuur 2 een voorbeeld van een matrix M voor k=4; figuur 3 een voorbeeld van een matrix M voor k=8; figuur 4 een voorbeeld van een matrix M voor k=16; figuur 5 een dekodeur voor k=4; 20 figuur 6 een dekodeur voor k=8; figuur 7 een hulpdekodeur bij figuur 6; figuur 8 een dekodeur voor k=16; 4 tabel 1 geeft de elementen van een Galois-lichaam GF(2 );
ή __ A
tabel 2 geeft de berichten ar in GF(2 ) met een lijst van 25 eigenschappen van de bijbehorende kodewoorden; 16 tabel 3 geeft voor GF(2 ) een aantal normale bases en enkele eigenschappen daarvan; tabel 4 geeft een aantal eigenschappen van foutklassen; tabel 5 geeft enkele logische vergelijkingen bij een dekodeur 30 voor GF(24); tabel 6 geeft het doorlaatpatroon voor de uitwismode bij GF(28); tabel 7 geeft enkele logische funkties voor de besturing
O
van de dekodeur bij GF(2 ); 35 tabel 8 geeft karrigeerbare en detekteerbare foutpatronen 16 in GF(2 ) met enkele eigenschappen ; tabel 8a geeft daarvan een vervolg; tabel 9 geeft datzelfde voor de uitwismodes; 840 3 1 4 7 16 f Λ ΡΗΝ 11.162 4 Λ tabel 10 geeft een logische expressie P bij GF(2 ); tabel 11 geeft enkele logische funkties voor de besturing 16 van de dekodeur bij GF(2 ).
5 Voorbeeld van een dataverwerkinqssysteem:
Figuur 1 geeft een dataverwerkingssysteem waarin de uitvinding implementeerbaar is. Er zijn drie dataverwerkingsinodules 62, 64, 66 die volgens de figuur uit overeenkomstige blokken zijn opgebouwd; de verschillen tussen de modules zijn belichaamd in de enkodeurmodules 10 26, 28, 30. De eerste dataverwerkingsmodule bevat een processormodule 20; deze kan bijvoorbeeld op konventionele manier, een ingangswoord bewerken. De aard van de bewerkingen wordt door het beoogde gebruik van het systeem bepaald. De respektievelijke processormodules voeren hetzelfde programma uit. De processormodule 20 geeft adressen voor de 15 geheugenmodule 32 af qp lijn 38. Data. worden gepresenteerd aan de enkodeurmodule 26. De funktie van laatstgenoemde wordt nader uitgelegd.
De uitgang van enködeurmodule 26 is verbonden met de data-aansluiting van geheugenmodule 32. Enkodeurmodule 26 en geheugenmodule 32 zijn beide verbonden met uitgangsversterker 44; deze dient cm het inter-20 konnektienetwerk (68, 70, 72) te bekrachtigen. Het interkonnektienet-werk is in. elke dataverwerkingsmodule op een register 50, 52, 54 aangesloten, zodat de voor dekodering benodigde informatie tesamen aanwezig is. De bewerkingsresultaten van de drie modules worden in de dekodeurs 56, 58, 60 gedekodeerd en indien nodig en doenlijk gekorrigeerd cm 25 het ingangswoord voor de processormodules te hervormen. De dekodeurs zijn onderling gelijk. De synchronisatie van de dataverwerkingsinodules onderling is eenvoudshalve niet aangegeven; deze is alleen kritisch met betrekking tot de registers 50, 52, 54. De verbindingen met de buitenwereld zijn niet aangegeven. Deze kunnen enkelvoudig zijn en aan 30 alle modules 62, 64, 66 zijn verbonden,· ze kunnen ook op zichzelf redundant geïmplementeerd zijn, bijvoorbeeld ook drievoudig. De processormodules kunnen van gekompliceerde of eenvoudige bouw zijn; het is zelfs mogelijk dat elke dataverwerkingsmodule slechts in hoofdzaak een geheugenfunktie bezit. Het is niet noodzakelijk dat de uitgang 35 van enködeurmodule 26 direkt met het interkonnektienetwerk is verbonden; er kan hier ook steeds een geheugenfunktie tussengeschakeld zijn. Er kunnen voorts in elke dataverwerkingsmodule verdere onderdelen aanwezig zijn, maar de essentialia zijn in de figuur getoond. Zoals uit te leggen, 8403147 EHN 11.162 5 ' kan de schakeling gemodificeerd warden. Zo kan in één der dataver-wsrkingsmodules de enkodeur worden weggelaten. De door de respektieve-lijke enkodeurs te implementeren algarithmes moeten aan bepaalde eisen voldoen zoals nader uitgelegd zal worden. Een deel van dit algarithme 5 kan ook op de dékodeurs warden af geheeld; in dat geval behoeven de dekodeurs dus niet per se identiek te zijn. Een eenvoudig voorbeeld is dat de eerste twee dataverwerkingsroodules dezelfde data verwerken, de laatste dataverwarkingsmodule evenwel de geïnverteerde waarde daarvan. Ook andere interne transformaties kunnen sons voordelig zijn.
10 De respektievelijke enkodeurs kunnen ook direkt op de uitgangen van de dekoduers zijn uitgesloten; in dat geval moeten de processormodules echter verschillende bewerkingen uitvoeren. De enkodeurmodules kunnen samengevoegd zijn mat de bijbehorende versterker (44, 46, 48).
15 Algemene beschrijving van de kode:
Elke dataverwarkingsmodule verwerkt een ingangswoord, dat in de litteratuur der foutprotegerende kodes bekend staat als een k-bits symbool. In de uitvoeringsvormen heeft een symbool 4, 8 of 16 bits, maar de kode is daartoe niet beperkt. De ingangsdekodeurs bewerken 2o elk een kodewoard dat bestaat uit drie symbolen. De enkodeurs vannen elk één kodesymbool cm tesamen een kodewDard te vormen. De generator-matrix kan geschreven warden als: G = (MO M1 M2), waarin Mi een reguliere matrix is van k x k bits. Elk van de drie 25 deelmatrixen mag met een willekeurige permutatiematrix vermenigvuldigd worden cm de kodebits binnen het betreffende symbool op andere kode-bits af te beelden. Eenvoudshalve wordt dit niet verder beschouwd. Eerst wordt de kode beschouwd als een (3, 1) kode over het Galois-lichaam GF(2 ), waarin k=4, 8, 16. De theorie van deze lichamen is uitgebreid 3q behandeld in het boek "The theory of error-correcting codes" door F.J. MacWilliams en N.J.A. Sloane, Amsterdam 1977. De kode bevat dus drie symbolen, en de data-inhoud van één symbool: (3, 1). Het gewicht van een symbool wordt gedefinieerd als het aantal "1"-bits in dat symbool. Het gewicht van een reeks symbolen (vektor) is de som van het 35 gewicht van de symbolen. Het gewichtsprofiel van een vektor is een reeks van evenveel gewichten als er symbolen zijn, terwijl bij elk volgende gewicht van de reeks het "zwaarste" symbool wordt weggelaten voor de bepaling van het rest-gewicht. In een lineaire kode is het 840 3 1 4 7 Λ PHN 11.162 6 ï ' ; gewicht van een kodewoord altijd minstens gelijk aan de minimum afstand van de kode, als de nul-vektor buiten beschouwing wordt gelaten. Er is altijd minstens één kodewcord waarvoor de gelijkheidssituatie optreedt. Het minimum afstandsprofiel van een lineaire kode bestaat 5 uit een aantal elementen, met een waarde die gelijk is aan de laagste waarde van het overeenkomstige element van het gewichtsprofiel van enig kodewcord van de kode.
Een paar (s, t) wordt gedefinieerd als een "beschrijving" van een woord als daarvan s van nul verschillende symbolen kunnen 10 worden weggelaten, zo, dat het gewicht van de rest van het woord gelijk is aan t. De beschrijvingsverzamling (description set) is de verzameling van alle beschrijvingen van een woord. Een verzameling van paren natuurlijke getallen (a^, b^) heet een "lijst" als alle getallen a^ onderling verschillen. Een kodewoord wordt gedekt (covered) door de 15 verzameling van die paren als voor minsten één beschrijving (s, t) een paar (a^, b^) bestaat, zodat a^s, b/^t. Vervolgens worden T, U twee lijsten van paren verondersteld. De kode C korrigeert T fouten (maximaal) en detekteert tegelijk U fouten (maximaal) als alle fouten gedekt door T gekorrigeerd worden en alle fouten die gedekt worden 20 door U en niet gedekt worden door T, gedetekteerd warden. Dit betekent dat het verschil tussen een eerste véktor t, gedekt door T, en een tweede vektor u, gedekt door T of U, nooit een kodewoord is. Er geldt nu dat bovenvermelde kode C de beschreven foutbeschermende eigenschappen heeft uitsluitend indien voor elk paart (s, t) in T en elk 25 paar (u, v) in de vereniging van T en U de (s+u)-de komponent van het minimum afstandsprofiel tenminste gelijk is aan t+v+1. De minimum symboolafstand van de kode is het minimum aantal van nul verschillende symbolen in enig van nul verschillend kodewoord. Als in een kodewoord e symbolen als uitwissymbolen veronachtzaamd worden, geldt voor de 30 (n-e) komponenten van het minimum afstandsprof iel van de nieuwe kode, dat deze minstens gelijk zijn aan de overeenkomstige van de (n-e) laatste komponenten van het minimum afstandprofiel van de oorspronkelijke kode.
Het bepalen van een basis: 35 Als P(x) in het Galois-lichaam GF(2) (x) een primitief poly- noon van de graad k is met een nulpunt a, dan is a een primitief ,
k 2 2K
element van het Galois-lichaam GF(2 ) dat bevat: 0, 1, a, a ... a -2. Een aantal van k elementen vonten daarvan een basis (ab^, a*3^ , 840 31 4 / \ * » FHN 11.162 7 ab^ ... a*3^ 1 ^) als er geen niet-triviale oplossing bestaat voor: k-1 2 = 0 met f± = 0 of 1.
i=0 5 De triviale oplossing is de nul-oplossing; de i stelt hier een ranggetal voor. Elk element van dat Galois-lichaam kan uitgedrukt worden in de basiselementen ervan; het aantal met waarde "1" is het gewicht van het betreffende element met betrekking tot de basis in k-1 kwestie. De basis 1, a ... a is de polynomials basis. Als voor enige 10 waarde van j een basis gevormd wordt door a^, a-*‘2, a-*'22 ... a^*2^ 1 4 dan is dit een normale basis. Tabel 1 geeft voor GF(2 ), met primitief 4 polynoon x + x + 1, links de elementen met betrekking tot de polynomiale basis en vervolgens net betrekking tot de normale 3 6 1 2 24 9 basis: a , a , a , a , = a telkens onder opgave van de bijbehorende 15 gewichten.
Het vormen van de kodes:
Bij de eerder besproken basis (a^^, a*3^, a^2^ ... ^) kan gedefinieerd worden: 20 h = 2 2 daarbij is h een primitief element van GF(2 ): (0, 1, h, h ). Vervolgens wordt de (3, 1) kode C met lengte 3 en dimensie 1 over
Ir GF(2 )# met de generatcrmatrix G= (1 h h2) 25 afgebeeld op een binaire (3k, k) kode met lengte 3k en dimensie k.
(h is een k-tupel van bits). Dit afbeelden (mappen) gebeurt middels 3c de vektorrepresentatie van GF(2 ) met betrekking tot de eerder besproken basis. De generatormatrix van de binaire kode is: G? = (I Μ M2) 30 Hierin is I de identiteitsmatrix (dit is geen beperking). M is een matrix waarvan de i-de rij gevormd wordt door de binaire representatie van h.a*3^ met betrekking tot de eerder besproken basis. Voor k=4 is p(x) = x^ + x + 1 één van de twee primitieve polynomen; daarvoor zijn er twee normale bases, namelijk / 3 6 1.2 9, 35 (a , a , a , a ) 840 31 4 7 Λ ΡΗΝ 11.162 8 basis en tot de loeide normale bases. Tabel 2 geeft de berichten a-5 4 in GF(2 ) met een lijst van eigenschappen daarvan, namelijk de gewichten van de middels de enkodeur gevormde symbolen (c^ ... £2), en het gewichtsprofiel, alles met betrekking tot de polynomiale basis.
5 Deze kode heeft als foutprotegerende karakterisering (1, 0) (0, 2): één symbool is korrigeerbaar, en alternatief twee willekeurige bit-posities. Als één symbool van elk kodewoord wordt veronachtzaamd, ontstaat een (2, 1) kode met een minimum afstandsprofiel (3, 1). Deze heeft een korrektiekapaciteit (0, 1) in relatie tot de polynomiale 10 basis. De figuur 2 geeft het desbetreffende voorbeeld van de generator-(deel) matrix M. De kode kan gemodificeerd worden door een ander primitief polynocm te gebruiken. De waarde van h kan anders gekozen worden, alsook de exponenten van de deelmatrix M. In verschillende gevallen worden dan aantrekkelijke kodes gevonden. De uitgebreid 15 hierboven beschreven kode wordt echter in foutprotektiekapaciteit ten hoogste geëvenaard, maar niet overtroffen.
8 4 3 2
Voor k=8 is p(x) = x + x + x + x + 1 een van de reeks primitieve polynomen; laat a een nulpunt van dit polynoom zijn. Dit Galois-lichaam heeft zestien normale bases, elk van deze kan gesymboli-20 seerd worden door één element a1, daaruit zijn de andere elementen direkt te vinden: de basis wordt hierna aangegeven door de exponent i van a1. De generatormatrix van de kode wordt dan, als het symbool-element a88 wordt gekozen: G = (1 h h2) = (1 a85 a170).
2g Deze heeft een minimum afstandsprofiel van (8, 4, 1) met betrekking tot de normale basis met exponentwaarden 9-, 21, 39, 43, 55, 61, 91, 95, en een afstandsprofiel van (8, 5, 1) met betrekking tot de normale basis met exponentwaarden 5, 11, 15, 29, 47, 53, 63, 87. Een voorbeeld van deelmatrix M is gegeven in figuur 3, met betrekking tot de nor-30 male matrix met i=5. Het minimum afstandsprofiel van deze kode is (8, 5, 1). Dat betekent dat deze kode tegelijkertijd een (1, 0) (0, 3) korrektiekapaciteit heeft én een (0, 4) detektiekapaciteit: er zijn dus korrektiemogelijkheiden voor ófwel een geheel symbool, ofwel tot en met drie bitfouten. Bovendien zijn vier bitfouten detekteerbaar.
35 In het geval één symbool wordt veronachtzaamd (uitwismode), ontstaat
O
er een (2, 1) kode over het Galois-lichaam GF(2 ) met een minimum afstandsprofiel (5, 1). Dit betekent een korrektiekapaciteit ten opzichte van de normale basis met exponentwaarde 5 van (0, 2): twee 840 3 1 4 7 PHN 11.162 9 willekeurige bits buiten het veronachtzaamde symbool zijn alsdan korrigeerbaar.
In het geval k=16 zijn er nog meer verschillende primitieve polyncmen, bijvoorbeeld (x 0 + x + x + x + 1). Als a een wortel is 5 van deze vergelijking, kan bijvoorbeeld genoten worden: h=a (exp 21845). We nonen nu de (3, 1) kode net generatormatrix G = (1 h h2) = (1 aexp21845 aexp43690).
Deze heeft een minimum afstandsprofiel (12, 7, 1) net betrekking tot de normale basis N15 = (a1^, a^, a^, a^ ...). Een 1Q voorbeeld van deelmatrix M is gegeven in figuur 4. Met betrekking tot de gegeven basis heeft deze kode tegelijkertijd een korrektiekapaci-teit van (1, 0) (0, 5) en een detektiekapaciteit van (Ö, 6): er zijn met dus korrektiemogelijkheden voor ófwsl een geheel symbool, ofwel tot en2yijf bitfouten. Bovendien zijn zes bitfouten detekteerbaar. m het geval ,κ één symbool wordt veronachtzaamd in een uitwismode ontstaat er een 3 16 (2, 1) kode over het Galois-lichaam GF(2 ) met een minimum afstandsprofiel (7, 1). Dit betekent een korrektiekapaciteit ten opzichte van genoemde normale basis van (0, 3): drie willekeurige bits tuiten het veronachtzaamde symbool zijn alsdan korrigeerbaar. Tabel 3 geeft een 2Q aantal normale bases voor dit Galois-lichaam tesamen net het minimum afstandprof iel van deze kode ten opzichte van de desbetreffende normale basis: Nj wordt gegeven door (a-*, a2^, a4-1, a^j ...). Er wordt nog opgemerkt dat er geen kodes gevonden zijn die de hiergegeven kodes in protektiekapaciteit te boven gaan. Van het profiel zijn allen de 2g eerste twee elementen gegeven; het derde element heeft altijd de waarde "1".
Algemene beschrijving van het algorithms ter konstruktie van (3, 1) kodes over het lichaam GF(2 ).
1. Kies een primitief polynocm p(x) voor GF(2 ) en laat Q een nulpunt van dit polynocm p(x) zijn 30 t, 2 2^-2 GF(2 ) = 0, 1, a, a , ... , a 9 τΜββ «on *b(0> JXfc-1) 2« KÏGS ΘβΠ D3S IS 3. f3 f · m · f 3.
voor dit lichaam.
35
Als ^ x^ ab^ de representatie is van a^ ten opzichte van j=0 de basis a*3^, a*3^, ... , ab^k ^ , dat wil zeggen 840 31 4 7 ΡΗΝ 11.162 10 \ Λ \ fc k-a a^· = / χ . a°^ r dan is het gewicht wt (a^) gedefinieerd als <-— ij j=0 het aantal konponenten x^, j=0, ... , k-1 gelijk aan 1: 5 wtta1) I = 1 1* 3. Definieer de volgende verzamelingen νχ:={ΐ | wtia1) » x j.
10 wx:={1_j i i( j€ Vx} V=ii_jll6v j€vy} ü £I ieV 3€vk} 15 k
Het komplement ÏÏ van een verzameling U: cio, 1, ... 2-2 j ten {3C "ï Vr 0, 1/ ... / 2 -2J- is gedefinieerd als ÏÏ:={0, 1, ... , 2k-2}\ü 2o 4. Definieer de volgende kondities A: p, q, p-q€W1 B: Pt qr p-q€ w12 25 C: V V £ v2 L P ^ ^V of 9 ^ Yv 3 D: Pt qr P^6W13HW2 E!^rev3Cpe^ °f q£ïr ] enVr6v3[p€^ °fq£Yr3 enVV€v2Cpi=-ïv °fqeY^3 35 5. De (3, 1) kode met generatormatrix (i ap a^j heeft een minimum afstandsprofiel mdp ten opzichte van de basis ^, ... , -h(k-1) diQ V0]_d0et aan
ndp^ (5, 3, 1)** A
84 0 3 1 4 7 * \ * « PHN 11.162 11 mdp^ (6, 4, 1) <—* A en B ndp^, (7, 4, 1)«-» A, B en C ndp^. (8, 5/ 1)<-* A, B, C en D mdp*^. (9/ 5, 1) e-* A, B, C, D en E. g Op deze manier kan voor een bepaald Galois-lichaam een rangorde van kandities worden opgesteld/ waarbij de eerder gegeven kodes vocar GF(2^) , GF(2^) en GF(2^) de voer het betreffende Galois-lichaam maximale protektiekapaciteit bezitten.
10 Algemene beschrijving van de dékodering:
Hierna zullen eerst de gemeenschappelijke eigenschappen van de drie dekodeurs beschreven werden. Als pariteitskontrolematrix bij 2 de generatermatrix G = (I Μ M ) kan werden gekozen: ƒ 0 MT I \
15 i A
\ior/ die voor de dekodering uitgebreid wordt met een derde, redundante,
T T
regel (M 10) tot de getransponeerde matrix H . De syndromen worden
T
gevormd door vermenigvuldiging met matrix H 20 /0 I M\ ' HT =| M 0 I I , \ I M 0/ dus het syndroom £ = rHT = (r^M + r2, r^ + r^M, r^M + r^), waarin r^, r^, r2 de symbolen van het gestoorde kodewoord zijn. Alle fout-25 patronen van een verzameling ü zijn nu kerrigeerbaar als de som van enige twee daarvan geen nieuw ongestoord kodewoord geeft.
Het is voorts de bedoeling dat in het geval een dataverwer-kingsmodule geheel gestoord is, deze buiten beschouwing blijft en dat dan verdere bitfouten kerrigeerbaar zijn. Zonder beperking wordt ver-30 ondersteld dat het kodesymbool r^ veronachtzaamd wordt. Voor de resterende ongestoorde kodesymbolen c^, c2 n^t dan gelden: (£·] ' £2> Φ = 0*
Als deze kode een minimum Haitming-distance (2+1) bezit, kunnen er t willekeurige bitfouten gekerrigeerd worden buiten de veronachtzaamde 35 module.
Tabel 4 geeft een aantal eigenschappen van de syndromen voor het optreden van verschillende foutklassen. Binnen één foutklasse hebben de syndromen telkens een eigenschap gemeen, zodat hierdoor de des- 84 0 3 1 4 7 * \ * PHN 11.162 12 betreffende foutklasse kan worden gedetekteerd. De eerste kolom geeft de foutklasse, dus het verdelingspatroon van de bitfouten over de kodesymbolen. Achtereenvolgens worden alle gevallen tot vijf gestoorde bits beschouwd, en daarvan alleen die, waarin steeds gestoorde bits in 5 twee verschillende symbolen optreden (als slechts één symbool gestoord is, werkt de klassieke verdrievoudigingsmeerderheidsbepaling). Elk getal in de verdere kolommen geeft een "gewicht" aan. De ui kolortinen geven het gewicht aan van de i-de korrponent van het syndroom voor zover dat door de storing veroorzaakt wordt: s(e). De v. kolommen geven het 2 1 10 gewicht aan van de i-de komponent van £(e) . Deze zijn dan voor alle patronen in die foutklasse gelijk. De niet-gegeven getallen (bijvoorbeeld eerste regel u^) warden niet beschouwd. Het gewicht van een komponent is het aantal bits met waarde "1". Voor de niet-gegeven foutmogelijkheden geldt nog: als er geen fouten zijn, is uO = u1 = u2 =0. 15 Als er een storing in één symbool is, geldt dat de daarmee overeenkomende grootheid u^ de waarde nul heeft, doch beide andere grootheden Uj van nul verschillen. De informatie van de verschillende regels van tabel 4 is uniek en daardoor kan, wanneer de kode inderdaad de voor een bepaalde tabelregel vereiste korrektiekapaciteit heeft, telkens 20 het ene korrekte symbool worden aangewezen, zodat dat zonder verdere korrektiebewerking voor een gebruiker beschikbaar kan warden gesteld.
Het blijkt mogelijk om een matrix M te vinden, zodanig dat in het geval k=4 een (8, 4) kode over blijft met een minimum afstand 3 (één bit korrigeerbaar), wanneer één symbool veronachtzaamd wordt.
25 Anderzijds zijn alle willekeurige paren foute bits korrigeerbaar.
In het geval k=8 blijkt het mogelijk om een matrix te vinden waardoor alle getoonde bitfoutpatronen tot en met 3 korrigeerbaar zijn; bovendien zijn dan de foutpatronen "4" detekteerbaar. Als één module veronachtzaamd wordt, blijft er een (16, 8) kode over met een 3Q minimum afstand van "5", zodat er twee fouten korrigeerbaar blijven.
In het geval k=16 blijkt het mogelijk om een matrix M te vinden waarvoor alle getoonde bitfoutpatronen tot en met 5 korrigeerbaar zijn; bovendien zijn dan gevallen met 6 bitfouten detekteerbaar.
Als één module geheel veronachtzaamd wordt, blijft er een (32, 16) kode 35 over met een minimum afstand van "7", zodat drie bitfouten korrigeerbaar zijn. De matrixen zijn bij wijze van voorbeeld getoond in de figuren 2-4; er zijn evenwel vele andere, met ten hoogste dezelfde foutprotektiekapaciteit, doch steéds meer dan die welke door uitsluitend 84 9 3 1 4 7 PEN 11.162 13 verdrievoudiging van de dataverwerkingsmodules bereikbaar is.
Er worden nog enkele algemene signaaldefinities gegeven: p. . = 1 alleen indien u. = j.
q. . = 1 alleen indien v. = j.
13 1 2 5 £^j/ B|/ 1¾ ^mden gedefinieerd als respektievelijk r^, r^M , rgM. De grootheden r^, , r2 zijn de symbolen van het ontvangen kodewoord (alle symbolen warden hier behandeld als rijvektoren). RM=1 betekent dat de de- kodeur in de algemene of "toevallige" mode werkt, waarin a priori alle kcdesymbolen bij de dekodering een bijdrage kunnen leveren, EMi betekent dat 10 de dekodeur symbool r^ veronachtzaamd (uitwismode), SMi betekent dat de de- kodeur alleen symbool r\ behandeld, zodat geen redundantie meer voorhanden is.
Beschrijving van een dekodeur voor k=4:
Figuur 5 geeft een uitvoer ingsvoorbeeld van een dekodeur 15 voor k=4. Uiteraard kan de implementatie van de kode ook op andere manier warden gerealiseerd. De kodewoorden arriveren net een breedte van 12 bits op ingang 100; in de vermenigvuldigingselementen 102 worden alle respektievelijke symbolen onveranderd doorgelaten, respekr 2 tieveligk met de deelmatrices M en M vermenigvuldigd.
20 Element 104 ontvangt het kodewoord en de vermenigvuldigings- resultaten, en vormt hieruit de syndroomsymbolen middels optellings-bewsrkingen, en vermenigvuldigt de syndroomsymbolen nog eens met de deelmatrix M^. Verder fungeert element 104 als verdeelcircuit met negen uitgangen voor de aangegeven grootheden. De gewichtshepalers 106 2g bepalen telkens het gewicht van de eraan toegevoerde grootheid en geven een signaal af dat de betreffende gewichtswaarde representeert.
Voor een gewicht 0 is er één mogelijkheid, voor een gewicht 1 zijn er 4 mogelijkheden. De symbolen kunnen als adres werken, de uitgangs-grootheid als data. De gewichtshepalers kunnen geirultiplext gebruikt 30 worden om achtereenvolgens voor eenzelfde kodewoord meer gewichten achterelkander te bepalen.
Element 108 is een beslisinrichting, die de respektievelijke gewichtsinformaties ontvangt en in funktie bestuurd wordt door het moderegister 110. Het moderegister bestuurt de zeven mogelijke werk-35 modes als aangegeven. Het bevat dus minstens drie bitposities, maar een uitgekodeerde opslag van de beslissingsbits werkt gemakkelijker.
De poortschakelingen 112, 114, 116 ontvangen een 1 -bitsselektiesignaal van de beslisinrichting 108 en anderzijds de drie gerekonstrueerde 840 3 1 4 7 \ 11 2 PHN 11.162 14 versies van het datasymbool r^, r^M en r2M. De desbetreffende versie wordt steeds geblokkeerd of doorgelaten; er is in alle korrigeerbare gevallen steeds tenminste één ongestoord kodesymbool. De uitgangen van de drie EN-poortschakelingen worden bitsgewijze in een OF-funktie g samengenomen in element 118 zodat op de vierbitsbrede uitgang daarvan een gerekonstrueerd datasymbool gepresenteerd kan worden.
Eerst wordt het doorlaatpatroon in de algemene of toevallige mode gegeven: pOO = 1, p10 = 1: geen fouten m^ doorlaten 10 pOO = 1, p10 = 0: symbool fout m^ doorlaten p10 = 1, p20 = 0: symbool r^ fout doorlaten p20 = 1, pOO = 0: symbool r2 fout rr^ doorlaten pi 1 =1, q01 = 1: bitfouten in r^, r^; nu, doorlaten p01 =1/ q21 =1: bitfouten in r^, r2: m^ doorlaten 15 p21 = 1 / q11=1: bitfouten in r^, r_2: m^ doorlaten.
In de uitwismode wordt het volgende doorlaatpatroon geproduceerd: EMO: pOO = 1 / rtLj ? q01 =1 / n^; p01 =1 / m^.
EM1: p10 * 1 / pi 1 = 1 / n^; q11 = 1 / 2q· 20 EM2: p20 = 1 / n^; q21 = 1 / m^; p21 = 1 / ntg.
(EMi betekent dat symbool i veronachtzaamd wordt).
Verder wordt in de enkel-symboolmodes SMi alleen het symbool i gebruikt. Uit het bovenstaande volgen direkt de waarde van de doorlaatbestur ingss ignalen. Door de beschreven keuzen kan slechts één 25 door laatbestur ingss ignaal tegelijk aktief zijn. Als een kodewoord arriveert waarvoor geen der door laatbestur ingss ignalen aktief wordt, is het woord onkorr igeerbaar en wordt een foutsignaal afgegeven op uitgang 120.
Het moderegister wordt ook bijgewerkt. In de hiergevolgde 30 strategie wordt overgeschakeld naar een volgende mode als de maximale foutkorrektiekapaciteit wordt bereikt. Oorspronkelijk is het systeem in de algemene mode. Als er dan een symboolfout optreedt (meer dan 1 foutbit in enig symbool), wordt overgeschakeld naar de uitwismode die het betreffende symbool veronachtzaamt. Als in de uitwismode een 35 bifout optreedt, wordt verder alleen gebruik gemaakt van het (ene) resterende symbool. Het teruggaan door de algemene mode kan bijvoorbeeld gerealiseerd worden door een stuursignaal door een operateur. Uiteraard zijn andere strategieën mogelijk, bijvoorbeeld doordat meer ge- 840 3 1 4 7 EHN 11.162 15 baruik gemaakt wardt van de fouthistorie, maar dat is in deze uitvoering niet aangegeven. Tabel 5 geeft de desbetreffende logische vergelijkingen. In de beschrijving is verder de synchronisatie niet gegeven. Op zichzelf kan deze qp konventionele manier worden gerealiseerd.
5
Beschrijving van een dekodeur voor k=8:
Figuur 6 geeft een uitvoeringsvoorbeeld van een dekodeur voor k=8. De kodewoarden arriveren met een breedte van 24 bits op ingang 130. In de vermenigvuldigingselementen 132 worden de respektieve-10 lijke symbolen onveranderd doorgelaten, respectievelijk vermenigvuldigd net de deelmatrices M en M2. Verder wordt het kodewoord onveranderd toegevoerd aan de generator voor de binaire grootheid par die gelijk is aan de som (modulo-2) van het aantal kodebits met waarde 1. Element 136 ontvangt het kodewoord en de vermenigvuldigings-15 resultaten van de elementen 132, en vormt hieruit de syndroomsymbolen middels optellingsbewsrkingen en vermenigvuldigt de syndroomsymbolen 2 nogmaals net de deelmatrix M . Verder worden hier bepaald vierentwintig grootheden (r^ + Uj) M2 * voor alle waarden van i(0 .. 2) en j (0 .. 7). Verder vormt element 136 nog een verdeelcircuit met 6+3+24=33 uitgangen 20 voor de aangegeven grootheden. De gewichtsbepalers 138 bepalen telkens het gewicht van de eraan toegevoerd grootheid en geven een signaal af dat de desbetreffende gewichtswaarde representeert als aangegeven door de respektievelijke p, g grootheden. Er zijn als aangegeven vijftien uitgangsbits te genereren.
25 Elementen 142 zijn hulpdekodeurs die nader besproken worden.
Element 140 is een beslisinrichting die de respektievelijke gewichts-informaties en de uitgangssignalen van de hulpdekodeurs ontvangt en in funktie bestuurd wordt door het moderegister 144 dat op overeenkomstige manier is opgebouwi als moderegister 110 in figuur 5. De beslisin-30 richting 140 geeft 27 selektiesignalen af en een detéktiesignaal op uitgang 146. Blek 148 is een doorschakeleenheid cm het door te laten datasymbool te vormen uit de 54 ontvangen signalen.
Er wordt gedefinieerd een grootheid R; te bepalen door de beslisinrichting: 35 R = pOO + p10p20 + p20p00 + p11q01 + pQ1q21 + +p21q11 + p12q01 + p11q02 + p01q22 + p02q21 +p22q11 + p21q12.
Eerst wordt de algemane mode besproken. Als R.par de waarde 1 840 314 7 * \ * H3N 11.162 16 heeft dan zijn er minimaal vier bitfouten in meer dan één symbool hetgeen als niet-korrigeerbaar wordt gesignaleerd op uitgang 146. Voor alle korrigeerbare gevallen is er weer een exclusieve signalering door de respektievelijke gewichten. Voor symboolfouten, en voor foutpatronen g met hoogstens twee bitfouten is dit hetzelfde doorlaatpatroon als voer het geval k=4.
Var drie bitfouten is het doorlaatpatroon als volgt: R par = 1 alle symbolen één bitfout n^ doorlaten p12 = q01 = 1; bitfout in , bitfouten in r^; doorlaten 10 p11 = q02 = 1; bitfout in , bitfouten in doorlaten p01 = q22 = 1; bitfout in bitfouten in r^; doorlaten p02 = g21 = 1; bitfout in r^, bitfouten in r2; doorlaten p22 = q11 = 1? bitfout in r^, bitfouten in r^; m^ doorlaten p21 = q12 = 1; bitfout in r^, bitfouten in r2; doorlaten.
1S Het symbool n^j = (R^ + Uj)M2; daarbij is u^ een eenheids- vektor met een 1 qp positie j (en verder alleen nullen). In feite is dit een schatting voor het bericht ra^ door een enkel-bits- fout op positie j in te korrigeren: door deze schatting wordt het betreffende symbool als het ware geërnoleerd. In de uitwismode warden in 2Q de beslisinrichting drie hulpgrootheden gevormd: *1 = lpi0 + ^11 + Pi1 + + %>> ·
Het doorlaatpatroon voor de uitwismode is getoond in tabel 6.
De eerste kolom geeft de foutkonfiguratie, de tweede kolom de logische expressie die alleen voor die f outkonf iguratie de waarde "1" aanneemt, 2g zodat de foutkonfiguratie daardoor detekteerbaar is. De derde kolom geeft de door te laten grootheid. In het geval alle drie kodesymbolen een storing bevatten (drie. enkel-bitsfouten in de toevallige mode, of twee enkel-bitsfouten en een uitwissymbool in de uitwismode) worden er slechts twee kodesymbolen beschouwd op zo'n manier dat ze een 3Q kodewoord vormen met een pariteitskontrolematrix - (Μ I). Drie enkel-bitsfouten geven R par = 1 en dan warden Cq, c^ genomen en de deko-deur 11 dec 1; de andere drie gevallen zijn getoond in tabel 6.
Het foutpatroon is (e., e.), beide foutsymbolen hebben een J ^ m gewicht 1 ten opzichte van de kode met pariteitskontrolematrix (Μ I).
35 Het syndroom is; S = e^ M+e^. Een symbool u met gewicht 1 moet worden gevonden zodat het gewicht van (s+u)M2 = 1: dit is het geschatte foutsymbool en het geschatte datasymbool is dan (rHuJM3”1. De desbetreffende dekodeurs zijn opgebouwd volgens figuur 7. Op ingang 160 00 314 7 PHN 11.162 17 arriveert het resultaat van element 136 in figuur 6. Dit wordt in 8 cp-telelementen 162 bij u^M2 opgeteld; in de elementen 164 wordt van elk van de gevonden symbolen het gewicht t... bepaald. Door de uitgangs-gewichtssignalen wordt de schatting van het desbetreffende symbool c.
5 bestuurd. Er geldt dus met een vektar met een 1 cp de j positie en verder nullen; t.. = 1 als de dekodeur 11 dec. het symbool m schat als (s.-Hi.)jyr 1 = n.. 13 ï J - -i -3 13.
Als ΕΜ^Τ^ = 1 dan is m =
Als EM^T^ = 1 dan is m = n^.
10 Als (RM.R par + EM^^ij <^an ^ m = n-|j·
De logische funkties zijn aangegeven in tabel 7. Er wordt een foutsignaal gevormd als geen der selektiesignalen waar wordt. Het overgaan van de toevallige mode naar de uitwismode gebeurt op overeenkomstige manier als in het geval k=4, vanuit de uitwismode gaat het 15 systeem naar de enkel-symboolxnode als er twee bitfouten optreden In hetzelfde kodesymbool.
Beschrijving van een dekodeur voor k=16;
Figuur 8 geeft een uitroer ingsvoorbeeld van een dekodeur 20 voer k=16. De kodewoerden arriveren met een breedte van 48 bits op ingang 200. In de vermenigvuldigingselementen 202 worden de respektieve-lijke symbolen onveranderd doorgelaten respektievelijk vermenigvuldigd met de deelmatrices M en M2. Verder wordt het kodewoord onveranderd doorgelaten aan de pariteitsgenerator 204 die bepaalt of het aantal "1" 25 bits even of oneven is. Element 206 werkt goeddeels analoog met element 136 In figuur 6: dit ontvangt het kodewoord en de vermenigvul-digingsresultaten van de elementen 202, en vormt middels optellings-bewerkingen de syndroomsymbolen en vermenigvuldigt de syndroansymbolen nogmaals met de matrix M2. Verder worden hier bepaald achtenveertig 30 grootheden n^ voer alle waarden van i(0 ... 2) en j (0 ... 5). Verder vormt element 206 nog een verdeelcircuit net 6+3+48=57 uitgangen voor de grootheden als aangegeven. De gewichtsbepalers 208 bepalen telkens het gewicht van een eraan toegevoerde grootheid en geven een signaal af dat de desbetreffende gewichtswaarde representeert als aangegeven 35 door de p, q grootheden. Er zijn als aangegeven zevenentwintig uit-gangsbits te genereren: elke gewichtsbepaler geeft ten hoogste een enkele "1" bit af op zijn uitgangen.
Elementen 210 zijn hulpdekodeurs die goeddeels werken overeen- 8403147 PHN 1.1.162 18 komstig met de in figuur 7 gedetailleerde werking van de elementen 142 in figuur 6. Enkele verschillen zijn dat de hulpdekodeurs hier twee 1 β-bits grootheden ontvangén en een foutpatroon emuleren voor twee symbolen tegelijk? hulpdekodeur 12 dec 12 dus voor de symbolen én r^. 5 Ze hebben dan ook 32-bits brede uitgangen. Element 212 is een beslisinrichting die de respektievelijke gewichtsinformaties en de uitgangssignalen van de hulpdekodeurs ontvangt en in funktie bestuurd wordt door het moderegister 214 dat op overeenkomstige manier is opgebouwd als het moderegister 144 in figuur 6. Blok 216 is een doorschakeleenheid 10 om het door te laten datasymbool te vormen uit de 48 SEL (ektie) signalen, de 48 n.. symbolen, en de 3 m. symbolen. Er wordt gedefinieerd lj 1 een grootheid P, te bepalen door de beslisinrichting, welke grootheid geformuleerd is in tabel 10. Als er een karrigeerbaar foutpatroon aanwezig is waarvoor P de waarde "1" is dan vertonen alle drie kode-15 symbolen een storing ongelijk 0. In andere gevallen kan dus een ongestoord symbool gebruikt worden om de korrekte uitkomst te vinden. Als P=1 moet de foutwaarde in één symbool worden bepaald; met betrekking
T
tot de pariteitskontrolematrix (Μ I) is dan in de twee beste, (minst-gestoorde) kodesymbolen de gewichtssom van de fouten minstens twee en 20 hoogstens drie. Het syndroom voor deze fouten is: s:= M+ei· In de hulpdekodeurs wordt nu geprobeerd e^ te vinden door de zestien symbolen met gewicht "1" te emuleren voor e^ en te kontroleren of het gewicht van het syndroom s, eu dan inderdaad gelijk is aan 1 of 2. Daarnaast wordt de emulatie ook gedaan voor de omgekeerde kcmbinatie. Hieruit ontstaan 25 de zestien uitgangssignalen van elk der hulpdekodeurs volgens: als er een 16-bits vektor u met gewicht 1 te vinden is, zó dat het gewicht van {s + uM) = 1 of 2, dan wordt m = (r^ + u)M^ ^? als er een 16-bits vektor v met gewicht 1 te vinden is, zó dat het 2 2 3-i gewicht van (sM + vM ) = 1 of 2, dan wordt m = (r^ + v)M ? 30 deze schattingen van m = n^ worden door element 206 beschikbaar gesteld.
Er worden nu twee grootheden A^ en A^ en een grootheid B gedefinieerd: A^ (is de soa over j van t^j) =1 als hulpdekodeur 12 dec(i.) het foutpatroon eu net gewicht 1 schat. A^ (is de som over j van t2_y) = 1 als hulpdekodeur 12 dec(.i) het foutpatroon e^ met 35 gewicht 1 schat. B^ (is de som over j van t^^ . t2ij) = 1 als beide hulpdekodeurs 12 dec(i.) en 12 dec(.i) het foutpatroon e. afschatten door hetzelfde symbool net gewicht 1. Tabellen 8, 8a geven de verschillende korrigeerbare en detekteerbare foutpatronen in de toevallige mode.
840 51 4 7 PHN 11.162 19
De eerste kolcm geeft de foutkonfiguratie. De tweede kolcam geeft de voldoende en noodzakelijke logische expressie die de waarde 1 krijgt cm deze kanfiguratie te detekteren. De derde kolcm geeft de schatting voor het bericht. Daarbij geeft de laatste regel de konditie voor het 5 detekteren van een onkarrigeerbare foutkonfiguratie (deze konditie is voldoende/ maar niet alle foutkonfiguraties kunnen daarmee worden gedetekteerd).
Voor de uitwismode worden de volgende drie grootheden gedefinieerd: 10 Tq:= (pOO + p01 + p02 + p03 + q01 + q02 + q03)
Tj := (p10 + p11 + pT2 + p13 + q11 + q12 + q13) T2:= (p20 + p21 + p22 + p23 + q21 + q22 + q23).
Tabel 9 geeft de karrigeerbare en detecteerbare patronen voor de uit- wismodes op dezelfde manier als tabellen 8, 8a dit geven voor de 15 toevallige mode. 'Tabel 11 kont overeen met tabel 7 in dit geval. Het moderegister wordt eveneens omgesteld naar een andere mode als de maximale korrektiemogelijkheid van de aktuele stand wordt bereikt. De overgang naar de uitwismode vindt plaats pp dezelfde manier als voor k=4. De overgang naar de enkelvoudige mode vindt plaats als er in de 2q uitwismode drie bitfouten in hetzelfde symbool optreden.
25 30 35 340 31 47 PHN 11.162 20
Tab/ 1:
W W WW
0 0000 O 0000 O a7 1101 3 1110 3 1 1000 1 1111 4 a8 1010 2 0011 2 g a 0100 1 1001 2 a9 0101 2 0001 1 a2 0010 1 1100 2 a10 1110 3 1010 2 a3 0001 1 1000 1 a11 0111 3 1101 3 a4 1100 2 0110 2 a12 1111 4 0010 1 a5 0110 2 0101 2 a13 1011 3 1011 3 10 a6 0 0 1 1 2 0 1 0 0 1 a14 1 0 0 1 2 Q 1 1 \ 3 I ; · j ! j I ; :0h!2!3 x3a6£2k9 aaaa aaaa 15
Tab;. 2: wfc (Cq) wt/c-j) wt(c2) weit prof 20 1 1 2 · 3 (6,3,1) a 1 2 3 (6,3,1) a2 1 3 4 (8,4,1) a3 1 '2 3 (6,3,1) a4 2 2 2 (6,.4,2) 25 a5 2 3 1 (6,3,1) a6 2 3 1 (6,3,1) a7 3 4 1 (8,4,1) a8 2 3 1 (6,3,1) a9 2 2 2 (6,4,2) 30 a10 3 1 2 (6,3,1) a11 3 1 2 (6,3,1) a12 4 1 3 (8,4,1) a13 3 1 2 (6,3,1) a14 2 2 2 (6,4,2) t I * / I \ 35 / < \ / < \ / t \ min6 min3 mini 8403147 FHN 11.162 21
Tab. 3: 15 12 7 11475 12 7 32767 12 7 399 12 6 5 8191 12 7 303 12 7 28671 12 7 4077 12 7 16381 12 7 3833 12 6 13 12 7 3505 10 5 12287 12 7 23927 12 7 10 15 12 7 5467 12 7 4095 12 7 10069 12 6 17 10 5 10069 12 6 30719 12 6 11571 12 7 33 12 7 5459 12 7 15 31743 12 7 7799 12 6 35 12 7 2387 12 7 24571 12 7 985 12 7 39 12 7 455 12 6 43 1 2 7 7295 12 7 20 16373 10 5 9719 12 6 45 12 7 1963 12 6 49 12 6 6709 10 5 15359 12 7 9901 12 7 11475 12 7 7315 10 5 25 30 35 84 0 31 4 7 PHN 11.162 22 •“PqVh λ · U0 Ul U2 -¾ v, v2 '(110) 1 1 2 < (101) 1 1 5 [(011) 1 1 ""(210) 2 1 (120) 1 2 3 J (201) 1 2 10 1(102) 2 1 (021) 2 1 J012) 1 2 "(310) 3 1 (130) 1 3 15 (301) 1 3 (103) 3 1 4 <(031) 3 1 (013) 1 3 (220) 2 2 20 (202) 2 2 %(022) 2 2 '(410) 4 1 (140) 1 4 (401) 1 4 25 O04) 4 1 (041) 4 1 5 J(014) 1 4 (320) 3 2 (230) 2 3 30 (302) 2 3 (203) 3 2 (032) 3 2 (023) 2 3 N.
35 84 0 3 1 4 7 PHN 11.162 23
Tab. 5: E^mt = + 1¾%¾, 5 ΈΜ1 = BM P^qP20^21 + Μ1 PHqll' 3¾0^ - + ^21¾¾' ia = ^Vio-fn’ 1¾¾¾1 Voo^oi1' <*0°* = SM^ + EM,% + ®2%' ,8 SM,^ = SM, “ + 0¾% + 0(2%,, ®20'It - ^ + *«0% + Mi“Pir 20 25 30 35 840 3 1 4 7 PHN 11.162 24
Tab.- 6: (EOO) p00 m-, 5 (El 0) ΠΙ2 (E01) p01 S] (E11) TQ n2j (E20) q02 1¾ (EO 2) Pq2 ïï-| 10 (OEO) P10 1¾ (1 EO) P-j-j 2I2 (OEI) · Sq (1E1) T1 15 (2EO) P-|2 1¾ (0E2) q,j2 5¾ (OOE) p20 mg (10E) q2i —1 20 (01E) p21 1¾ (11E) T2 n^j (20E) q22 Si (02E) p22 Sg 25 30 35 84 0 3 1 4 7 PHN 11.162 25
Tab; 7; m = rriQ : SELQ := RM (PqqPi 0^20^00^21^ 1^22^11^21^12) + EM-j + HY^ ^20^21^22^ + SMq = 1, 10 m = nij : SEL*| := RM (PQQPio+p01^21+P01^22+P02g21 ^ + EMq (Ρ0ο+?ο1+Ρ02^ + ΈΡΙ, (q21-H222) + SM, 15 = I, m = nu, : SEL2 .*= RM (Ρκ)Ρ2ο+Ριι%ι^12^01^11¾^ + ^0 ^01"K%2^ 20 + m2 ^P10+P11+P12^ + SM2 = 1/ zg m = nQj: SELoj:= ΕΜ,Τ^ = 1 ; j = 0,1,...,7, m = a,ji SEL^:= (RM R par + Eïyyt^ = 1 ; j = 0,1,...,7, m = n2j: SEL2ji= EM^t^ =1 ; j = 0,1,...,7.
30 35 8403147 EHN 11.162 26
Tab. : 8:
A B C
(00°) PqqP|0 So (*°°) PqqPiq -1 5 (OSO) Ρ10^20 2¾ (00¾) P20P00 Sq (110) p11g01 1¾ (101) p01q21 Sq (011) P2qql1 5¾ 10 (111) YQ:=P par B0B1B2 (210) p12q01 1¾ (120) ?11^02 S2 (201) ?01g22 Sh (102) . Po2q21 -1 15 (021) ^22^11 Sq (012) ^21^12 Sq (310) Ρΐ3^01 ¾ (130) Pl1g03 S2 (301) p01q23 ÏÏ! 20 (103) Pq3^21 Si (031) Ρ23^ι1 So (013) P21<313 Sq (220) Pl2g02 (202) p02g22 Si 25 ( 022) p22qq2_ Sq (211) Yq :=P par B1B2 (121) Y2:=P par BOB 2 (112) Y3:=P par B0B1 30 35 84 0 3 1 4 7 ΡΗΝ η.162 27
Tab. 8a:
A B C
(410) P14qo-| ¾ (140) P11qQ4 S2 5 (401) p01g24 “1 (104) pQ4q21 £l (041) ^24^11 Sq (014) ^21^14 So (320) ^13^02 S2 10 (230) ρ12%3 ^ (302) p02g23 —1 (203) PQ3q22 St (032) ^23^12 So (023) P22q13 _ So 15 (311) y4:=P par Α11Δ22Β1Β2 (131) Yj. :=P par A12A20B0B2 2.2j (113) Yg:=P A10A21BQB1 HQj (221) Y7:=P par B0B1B2 S2j (212) Yg:=P par B0B'1B2 H-jj 20 (122) Y9:=^ par B0B1B2 Soj Y1Q:=^ par (B1B2+B0B2+B0B1) 25 30 35 840 31 4 7 Λ * ΡΗΝ 11.162 28
Tab.'·. 9.;
A Β C
(ΕΟΟ) ρ00 2q (Ε10) qQ1 1¾ 5 (E01) p01 m1 (Ell) Z00:=TOA11A22 (E20) qQ2 1¾ (E02) Pq2 Si (E30) qQ3 1¾ 10 (E03) Pqs 2·] (E21) ZQ1 :^T0AÏTa22 (E12) Z02:=T0A11A22 (OEO) P1Q 22 15 (1EO) p^ 1¾ (OEI) q^ 2q (1E1) Ζ10:=*Γ1Α12Α20 (2E0) P12 5¾ (0E2) q12 2q 20 (3E0) P13 22 (0E3) q13 2q (2E1) Z11:=^?1A12A20 n,2j (1E2) Ζ12:=Φ1ΑΪ2Α20 25 COOE) P20 2q (10E) q21 2i (01E) p21 2q (11E) Z2Q:=^2A10A21 (20E) q22 30 (02E) P22 2q (30E) q33 2·] (03E) P23 2o (21E) Ζ21:=Φ2ΑΤ5α21
(12E) Z22:=T2A10MT
35 040 3 1 4 7 \ PHN 11.162 29
Tab....10: P :== ^00^10^0(^10+P10^20^20^00^11 qQ1 +P01 q21+ -^21^ 1^12¾^ 1 %2+Ρ01 q22+P02q21 +P22q11+ +P21 q12^13¾ 1+P1 ^3^01 q23+P03q21 ^23q11+ +P21q13+P12q02+P02q22+P22q12^1^01^11 q04+ +P01 q24+P04q214p24<311+P21q14+P13q02+P12q03+ 10 +P02q23+P03q22+P23ql 2+P22q13] * 15 20 25 30 35 84 0 3 1 4 7 % w PHN 11.162 30
Tab„M 1: m = njo : SELq : = PM (PqqP-, o+P20P00+P21q11 +P22ql 1+P21 ql 2+P23ql 1+ P21q13+P22q12+P24q11+p21q14+P23q12+P22q13} +; EM1 2^13) + m2 (P20+P21+P22+P23) + SM0 = 1/ 10 Ξ “ ΞΙ1 : SEL1 := ^ ^p00P10+P01q21+P01q22+P02q21+P01q23+P03q21 + +P02q22+P01q24+P04q21+P02q23+P03q22^ + EMq (Pqo+Pq ί +Ρθ2+Ρ03 ^ 15 + EM2 (q21^22^23) + SM1 = b 20 : SEL2 := m (P10P20+P11q01+P12q01+P11q02+P13q01+P11q03+ +P12q02+P14q01+P11g04+P13qQ2+P12q03) ' + ^1^02^03^ + EM1 (P-j q+P-| ί +P-| 2+P-i 3) 25 + SM2 = 1/ Ξ =£oj: SEL0j:= “'WW + EM1(Z10+Z12) + EM2(Z20+Z22) = 1 j = 0,1,...,15, 30 m = £lj: SEL1j:= EM(Y1+ï4+ï8) + mQV00+Z02) + 1¾ = 1 j = 0,1,...,15, 35 2 = a2j: ^23== ™<WY7> + ™0Z01 + ™1Z11 = 1 j — 0,1,...,15, 840 3 1 4 7

Claims (6)

1. Datavervrerkingssysteem dat is opgebauwd uit drie dataver- werkingsmodules (62, 64, 66), die bevatten overeenkomstige bewerkings-middelen (20, 22, 24) en daarop aangesloten geheugenmodules (32, 34, 36), en welk dataververkingssysteem een interkonnektienetwerk bezit (68 , 70, 5 72) dat is aangesloten op eerste ingangen van de dataverwerkingsmodules om meerbits bewerkingsresultaten van elk 4 bits van enige dataver-werkingsmodule aan de andere dataverwerkingsmodules te kcnmmiceren, en waarbij elke dataverwerkingsmodule een ingangsdekodeur (56, 58, 60) bevat die is aangesloten qp het interkonnektienetwerk, en welke ingangs-10 dekodeur telkens een tweede uitgang bezit die is aangesloten op de lokale bewsrkingsmiddelen, om zelfs in het geval van falen van één dataverwerkingsmodule uit onderling incongruente bewerkingsresultaten een karrekt ingangswocrd te hervormen, met het kenmerk, dat tenminste twae van genoemde dataverwarkingsmodules in de keten tussen genoemde 15 tweede uitgang en genoemde eerste uitgang voorzien zijn van enkodeur-modules om een daarin ontvangen meerbits grootheid met onderling en van de identiteitsmatrix verschillende reguliere matrixen te vermenigvuldigen, eventueel onder vermenigvuldiging van alle overeenkomstige meerbits grootheden met eenzelfde reguliere matrix en interne permutatie 2o van de elementen van enige zulke meerbits grootheid middels vermenigvuldiging met een penrutatiematrix (Q), on aldus drie kodesymbolen te bekomen, en dat de dekodeurs inversie-elementen voor de door de enkodeurs geïntroduceerde bewerkingen bevatten, en dat een moderegister aanwezig is om naast een normale mode waarin één gestoord kodesymbool 25 karrigeerbaar is, daarin tevens de korrektie van alle bitfouten tot en met twee bits in verschillende kodesymbolen te besturen, en in drie verschillende uitwismodes naast het veronachtzamen van één bijber horend kodesymbool telkens de korrektie van één willekeurige bitfout buiten het veronachtzaamde kodesymbool te besturen. 30
2· Dataverwerkingssysteem volgens conclusie 1, met het kenmerk, dat voor k^8 het moderegister in de normale mode de korrektie van alle bitfouten tot maximaal drie bits in verschillende kodesymbolen bestuurt, en in een uitwismode telkens de korrektie van alle bitfouten tot maximaal twee willekeurige bitfouten buiten het veronachtzaamde 35 kodesymbool bestuurt.
3. Dataverwerkingssysteem volgens conclusie}2, met het kenmerk, dat in de normale mode het moderegister de detektie van vier willekeurige bitfouten bestuurt. 84 0 31 4 7 ·«. V PHN 11.162 32 'v
4. Dataverwerkingssysteem volgens conclusie 1, 2 of 3, met het kenmerk, dat voor k^-16 het moderegister in de normale mode de korrektie van alle bitfouten tot maximaal vijf bitfouten in verschillende kodesymbolen bestuurt, en in een uitwismode de korrektie van alle 5 bitfouten tot maximaal drie willekeurige bitfouten buiten het veronachtzaamde kodesymbool bestuurt.
5. Dataverwerkingssysteem volgens één der conclusies 1 tot en met 4, met het kenmerk, dat een doorlaatelement en een detektor voor een ongestoord symbool aanwezig is om door een uitgangssignaal van de 10 detektor het doorlaatelement voor een ongestoord symbool doorlaatbaar te maken ter presentatie van dit ongestoorde symbool aan de bewerkings-middelen.
6. Dataverwerkingssysteem volgens conclusie 5, met het kenmerk, dat onder besturing van een korrigeerbare foutkonf igur at ie doch bij 15 afwezigheid van een ongestoord symbool een emulatie-inrichting wordt geaktiveerd om op basis van een minst-gestoord symbool een ongestoord symbool te emuleren ter presentatie aan genoemde door laatmiddelen. 20 25 30 35 840 3 1 4 7
NL8403147A 1984-10-16 1984-10-16 Dataverwerkingssysteem dat is opgebouwd uit drie dataverwerkingsmodules. NL8403147A (nl)

Priority Applications (5)

Application Number Priority Date Filing Date Title
NL8403147A NL8403147A (nl) 1984-10-16 1984-10-16 Dataverwerkingssysteem dat is opgebouwd uit drie dataverwerkingsmodules.
DE8585201639T DE3579550D1 (de) 1984-10-16 1985-10-09 Datenverarbeitungssystem welches aufgebaut ist aus drei datenverarbeitungsmodulen.
EP85201639A EP0178726B1 (en) 1984-10-16 1985-10-09 Data processing system composed of three data processing modules
US06/786,773 US4727546A (en) 1984-10-16 1985-10-11 Data processing system composed of three data processing modules
JP60228974A JPH0656586B2 (ja) 1984-10-16 1985-10-16 データ処理装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
NL8403147A NL8403147A (nl) 1984-10-16 1984-10-16 Dataverwerkingssysteem dat is opgebouwd uit drie dataverwerkingsmodules.
NL8403147 1984-10-16

Publications (1)

Publication Number Publication Date
NL8403147A true NL8403147A (nl) 1986-05-16

Family

ID=19844619

Family Applications (1)

Application Number Title Priority Date Filing Date
NL8403147A NL8403147A (nl) 1984-10-16 1984-10-16 Dataverwerkingssysteem dat is opgebouwd uit drie dataverwerkingsmodules.

Country Status (5)

Country Link
US (1) US4727546A (nl)
EP (1) EP0178726B1 (nl)
JP (1) JPH0656586B2 (nl)
DE (1) DE3579550D1 (nl)
NL (1) NL8403147A (nl)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4967347A (en) * 1986-04-03 1990-10-30 Bh-F (Triplex) Inc. Multiple-redundant fault detection system and related method for its use
GB2194850B (en) * 1986-09-05 1990-10-31 Philips Nv Data processing device
JPH05292931A (ja) * 1992-04-20 1993-11-09 Bairin:Kk うなぎの朴葉蒸し及びその製造法
US6189123B1 (en) * 1997-03-26 2001-02-13 Telefonaktiebolaget Lm Ericsson Method and apparatus for communicating a block of digital information between a sending and a receiving station
FR2814612B1 (fr) * 2000-09-26 2003-02-07 St Microelectronics Sa Code de detection et/ou de correction d'erreurs a haute efficacite

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4861886A (nl) * 1971-12-02 1973-08-29
US4030067A (en) * 1975-12-29 1977-06-14 Honeywell Information Systems, Inc. Table lookup direct decoder for double-error correcting (DEC) BCH codes using a pair of syndromes
US4077028A (en) * 1976-06-14 1978-02-28 Ncr Corporation Error checking and correcting device
GB1597218A (en) * 1976-12-11 1981-09-03 Nat Res Dev Apparatus for electronic encypherment of digital data
US4117458A (en) * 1977-03-04 1978-09-26 Grumman Aerospace Corporation High speed double error correction plus triple error detection system
JPS5936783B2 (ja) * 1977-09-12 1984-09-05 株式会社東芝 符号チエツクにおける重み係数発生方法
CA1170776A (en) * 1980-07-18 1984-07-10 Yoichiro Sako Method of error correction of blocks of data
JPS5736356A (en) * 1980-08-12 1982-02-27 Nippon Signal Co Ltd:The Mutiplexing system
NL8104342A (nl) * 1981-09-21 1983-04-18 Philips Nv Rekenmachinesysteem, gebaseerd op een symboolkorrigerende kode met twee werkmodes.

Also Published As

Publication number Publication date
EP0178726A1 (en) 1986-04-23
US4727546A (en) 1988-02-23
EP0178726B1 (en) 1990-09-05
JPH0656586B2 (ja) 1994-07-27
JPS6198450A (ja) 1986-05-16
DE3579550D1 (de) 1990-10-11

Similar Documents

Publication Publication Date Title
US5099484A (en) Multiple bit error detection and correction system employing a modified Reed-Solomon code incorporating address parity and catastrophic failure detection
US4402045A (en) Multi-processor computer system
US6044483A (en) Error propagation operating mode for error correcting code retrofit apparatus
US7398449B1 (en) Encoding 64-bit data nibble error correct and cyclic-redundancy code (CRC) address error detect for use on a 76-bit memory module
US6453440B1 (en) System and method for detecting double-bit errors and for correcting errors due to component failures
US6473880B1 (en) System and method for protecting data and correcting bit errors due to component failures
NL8104342A (nl) Rekenmachinesysteem, gebaseerd op een symboolkorrigerende kode met twee werkmodes.
US4961193A (en) Extended errors correcting device having single package error correcting and double package error detecting codes
JP6982982B2 (ja) 複数のデータビット及び複数のアドレスビットを有するブロックのエラーコード生成装置及び方法
US6457154B1 (en) Detecting address faults in an ECC-protected memory
US20080104476A1 (en) Method, system, and apparatus for adjacent-symbol error correction and detection code
JPS59197940A (ja) 誤り検出・補正メモリ
JP2005202957A (ja) エラー訂正のためのデータの分割
US20070016843A1 (en) ECC for single 4-bits symbol correction of 32 symbols words with 21 maximum row weight matrix
US7870473B2 (en) Error detection device for an address decoder, and device for error detection for an address decoder
CN1559033A (zh) 双重误差校验码***
US6393597B1 (en) Mechanism for decoding linearly-shifted codes to facilitate correction of bit errors due to component failures
GB2194850A (en) Data processing with error protection
NL8403147A (nl) Dataverwerkingssysteem dat is opgebouwd uit drie dataverwerkingsmodules.
US7093183B2 (en) Symbol level error correction codes which protect against memory chip and bus line failures
US6463563B1 (en) Single symbol correction double symbol detection code employing a modular H-matrix
US10567007B2 (en) Device and method of processing a data word using checkbits
US4868829A (en) Apparatus useful for correction of single bit errors in the transmission of data
US3504340A (en) Triple error correction circuit
JPH04264626A (ja) データ処理システム

Legal Events

Date Code Title Description
A1B A search report has been drawn up
BV The patent application has lapsed