Verwendete das Voyager-Raumschiff einen Golay-, einen Reed-Solomon- und/oder einen Hamming-Code für die Codierung der Datenübertragung zur Fehlerkorrektur? (Klärung erforderlich)

Die mittlerweile berühmte Antwort auf Wie hängt das Stapeln von Orangen in 24 Dimensionen mit dem Empfang und der Dekodierung von Signalen von den Voyagern zusammen? Es lohnt sich, jetzt hier anzuhalten und zurückzugehen und zuerst zu lesen.

Okay, willkommen zurück! Der Kommentar von @NgPh unter der Frage verweist auf Channel Coding: The Road to Channel Capacity , das ebenfalls sehr lesenswert ist. Es sagt:

E. Implementierungen des Reed-Solomon-Codes

Die erste große Anwendung von RS-Codes war als äußere Codes in verketteten Codierungssystemen für die Weltraumkommunikation. Für die Voyager-Mission von 1977 verwendete das Jet Propulsion Laboratory (JPL) einen (255, 223, 33), 16-Fehler-korrigierenden RS-Code F 256 als ein äußerer Code, mit einem konvolutionellen inneren Code mit Rate 1/2 und 64 Zuständen (siehe auch Abschnitt IV-D). Der RS-Decoder verwendete spezielle Hardware zum Decodieren und war in der Lage, bis zu etwa 1 Mb/s zu laufen [27]. Dieses verkettete Faltungs-/RS-Codierungssystem wurde zu einem NASA-Standard.

1980 sah die erste große kommerzielle Anwendung von RS-Codes im Compact Disc (CD)-Standard. Dieses System verwendet zwei kurze RS-Codes über F 256 , nämlich (32, 28, 5) und (28, 24, 5) RS-Codes, und mit Bitraten in der Größenordnung von 4 Mb/s betrieben [28]. Alle nachfolgenden Audio- und Video-Magnetspeichersysteme haben RS-Codes zur Fehlerkorrektur verwendet, heutzutage mit viel höheren Raten.

[...] Linkabit Corp. wurde 1968 von Irwin Jacobs, Len Kleinrock und Andy Viterbi als Beratungsunternehmen gegründet. 1969 wurde Jerry Heller als erster Vollzeitmitarbeiter bei Linkabit eingestellt. Kurz danach baute Linkabit einen Prototyp eines Viterbi-Algorithmus-Decoders mit 64 Zuständen („ein großes Monster, das ein Rack füllt“ [60]), der mit 2 Mb/s laufen kann [61].

  • [27]: RW McEliece und L. Swanson, „Reed-Solomon-Codes und die Erforschung des Sonnensystems“, in Reed-Solomon-Codes und ihre Anwendungen (SB Wicker und VK Bhargava, Hrsg.), S. 25–40. Piscataway, New Jersey: IEEE Press, 1994.
  • [28]: KAS Immink, „Reed-Solomon-Codes und die CD“, in Reed-Solomon-Codes und ihre Anwendungen (SB Wicker und VK Bhargava, Hrsg.), S. 41–59. Piscataway, New Jersey: IEEE Press, 1994.
  • [60]:D. Morton, „Andrew Viterbi, Electrical Engineer: An Oral History“, IEEE History Center, Rutgers U., New Brunswick, NJ, Okt. 1999
  • [61]: JA Heller und IM Jacobs, „Viterbi-Decodierung für Satelliten- und Weltraumkommunikation“, IEEE Trans. Kommun. Tech., Bd. COM–19, S. 835–848, Okt. 1971.

Aber Quellen, die in Wie hängt das Stapeln von Orangen in 24 Dimensionen mit dem Empfang und der Dekodierung von Signalen von den Voyagern zusammen? und in den Kommentaren unter der Frage und der Antwort wird darauf hingewiesen, dass Voyager einen Golay-Code verwendet hat, und der Begriff Hamming wird ebenfalls häufig verwendet.

Also lass uns das festnageln:

Frage: Hat das Voyager-Raumschiff einen Golay- , einen Reed-Solomon- und/oder einen Hamming- Code zur Codierung der Datenübertragung zur Fehlerkorrektur verwendet ?

Bei Fehlerkorrekturcodes ist es immer die Komplexität des Decoders, die limitiert. Der Codierer kann typischerweise mit wenigen Schieberegistern und binären Addierern implementiert werden. Es könnte gut sein, dass Golay- und RS-Codes nie mit Voyager in Richtung Erde zu Raumfahrzeugen verwendet wurden.
@NgPh ja, es gibt eine inhärente Asymmetrie in den Verbindungsbudgets für die beiden Richtungen, dh der Bodensender ist 10³ und in einigen Fällen 10⁴-mal leistungsstärker als der Sender der Weltraumsonde, sodass das S / N viel besser sein kann und das senkt Anforderungen an die Fehlererkennung und -behebung.

Antworten (1)

Frage: Hat das Voyager-Raumschiff einen Golay- , einen Reed-Solomon- und/oder einen Hamming- Code zur Codierung der Datenübertragung zur Fehlerkorrektur verwendet ?

Ja!

Und da ist auch ein Faltungscoder drin.


Aus der DESCANSO Design and Performance Summary Series, Voyager Telecommunications, (2002) :

Die TMU [Telemetry Modulation Unit] codiert den Datenstrom mit hoher Rate mit einem Faltungscode mit einer Beschränkungslänge von 7 und einer Symbolrate gleich der doppelten Bitrate (k = 7, r = 1/2).

[Betonung hinzugefügt]

Die Frage erwähnt nur Blockcodes , aber die Voyager verwendeten Faltungscodierung . Ich bin sicher kein Experte außer Brown, C. D. (2002). Elemente des Raumfahrzeugdesigns. Vereinigte Staaten: Amerikanisches Institut für Luft- und Raumfahrt. schlägt vor, dass:

Die Faltungscodierung ist eine neuere Art der Codierung, die bei einem gegebenen Symbol-zu-Bit-Verhältnis eine bessere Bitfehlerratenreduzierung als die Blockcodierung ergibt. Außerdem ist der Codierer in Hardware einfacher zu implementieren als ein Blockcodierer.

Bearbeiten:

Diese Tabelle von DESCANSO gefunden , die vorschlägt, dass Golay- oder Reed-Solomon -Codierung verwendet wird (mit Faltung):Voyager Link-Konfigurationen

Brown, Elements of Spacecraft Design nennt diese Verkettung :

Wenn eine noch größere Fehlerkorrektur erforderlich ist, ist es möglich, Codierungsschemata zu kombinieren, die als Verkettung bezeichnet werden. [...] wobei der Reed-Solomon-Code die äußere Schicht und der Faltungscode die innere Schicht ist. Die Datenbits werden zunächst faltungscodiert. Der Ausgangssymbolstrom vom Faltungscodierer ist Reed-Solomon-codiert. Dieses Schema bietet eine signifikante Erhöhung des Fehlerschutzes und eine signifikante Erhöhung der Symbolrate.

Bearbeiten 2.0 , Hätte das Ganze zuerst lesen sollen, von DESCANSO :

Der bei Jupiter und Saturn verwendete Golay- Codieralgorithmus erforderte die Übertragung eines Overhead-Bits für jedes übertragene Informationsbit (100% Overhead). Die Voyager trug einen experimentellen Reed-Solomon- Datencodierer, ausdrücklich für die größere Kommunikationsreichweite der Uranus- und Neptun-Phase der Mission. Das neue Reed-Solomon-Codierungsschema reduzierte den Overhead auf etwa eins von fünf Bits (20 % Overhead) und reduzierte die Bitfehlerrate in den Ausgangsinformationen von 5 × 10 3 Zu 10 6

Es wurden nicht nur Golay und Reed-Solomon (" eine spezielle Teilmenge von [Bose-Chadhuri-Hocquehem]-Codes ", die " eine mächtige Klasse von Hamming-Codes sind ", Brown, Elements of Spacecraft Design ) verwendet, sondern es wurde auch Faltungscodierung verwendet.

Interessant! Es scheint, dass "Symbolrate gleich doppelter Bitrate" zu "...einem 24 Bit langen Codewort passt. Von den insgesamt 16 Millionen Codewörtern haben sie nur 4096 als gültig definiert. Dh 12 Bits tragen eigentliche Informationen und weitere 12 dienen der Fehlerkorrektur." aus der [vorherigen Antwort](). Entspricht das vielleicht "r=1/2"? Ich frage mich auch, ob "k = 7" auch "3 Fehlerkorrektur, 7 Fehlererkennung " entspricht?
@uhoh Ja, das ist die Standardnotation.
@uhoh, "k=7": k ist die sogenannte Einschränkungslänge eines Faltungscodes (CC) . Im Grunde ist es der Speicher des Encoders. Je höher k, desto besser, aber auch die Decoderkomplexität steigt entsprechend an. Die NASA verwendet manchmal k=9, aber k=7 gilt als der richtige Kompromiss zwischen Leistung und Komplexität.
Diese Antwort ist mit Voyager Image Data Compression and Block Encoding verknüpft . Ich frage mich, ob Abbildung 3 hier nützlich sein wird?