Использовал ли космический корабль "Вояджер" код Голея, Рида-Соломона и/или код Хэмминга для кодирования передачи данных с целью исправления ошибок? (Требуется уточнение)

Теперь уже известный ответ на вопрос: «Как укладка апельсинов в 24 измерениях связана с получением и декодированием сигналов от «Вояджеров»? стоит остановиться здесь и вернуться и сначала прочитать.

Хорошо, с возвращением! Комментарий @NgPh под вопросом ссылается на Channel Coding: The Road to Channel Capacity , который также очень стоит прочитать. В нем говорится:

E. Реализации кода Рида-Соломона

Первым крупным применением кодов РС было использование внешних кодов в каскадных системах кодирования для связи в дальнем космосе. Для миссии "Вояджер" 1977 года Лаборатория реактивного движения (JPL) использовала (255, 223, 33) код RS с исправлением 16 ошибок поверх Ф 256 как внешний код, со скоростью 1/2, сверточный внутренний код с 64 состояниями (см. также раздел IV-D). В декодере RS использовалось специальное оборудование для декодирования, и он мог работать со скоростью примерно до 1 Мбит/с [27]. Эта объединенная система кодирования свертки/RS стала стандартом НАСА.

В 1980 году произошло первое крупное коммерческое применение кодов RS в стандарте компакт-дисков (CD). В этой системе использовались два коротких кода RS поверх Ф 256 , а именно (32, 28, 5) и (28, 24, 5) коды RS, и работали на скоростях порядка 4 Мбит/с [28]. Все последующие магнитные системы хранения аудио и видео использовали коды RS для исправления ошибок, в настоящее время с гораздо более высокой скоростью.

[...] Linkabit Corp. была основана Ирвином Джейкобсом, Леном Клейнроком и Энди Витерби в 1968 году как консалтинговая компания. В 1969 году Джерри Хеллер был нанят в качестве первого штатного сотрудника Linkabit. Вскоре после этого Linkabit построил прототип декодера алгоритма Витерби с 64 состояниями («большой монстр, заполняющий стойку» [60]), способный работать со скоростью 2 Мбит/с [61].

  • [27]: Р.В. МакЭлис и Л. Суонсон, «Коды Рида-Соломона и исследование Солнечной системы», в книге «Коды Рида-Соломона и их приложения» (ред. С.Б. Уикер и В.К. Бхаргава), стр. 25–40. Пискатауэй, Нью-Джерси: IEEE Press, 1994.
  • [28]: К.А.С. Имминк, «Коды Рида-Соломона и компакт-диск», в книге «Коды Рида-Соломона и их приложения» (ред. С.Б. Уикер и В.К. Бхаргава), стр. 41–59. Пискатауэй, Нью-Джерси: IEEE Press, 1994.
  • [60]: Д. Мортон, «Эндрю Витерби, инженер-электрик: устная история», IEEE History Center, Rutgers U., New Brunswick, NJ, октябрь 1999 г.
  • [61]: JA Heller и IM Jacobs, «Декодирование Витерби для спутниковой и космической связи», IEEE Trans. коммун. Тех., вып. COM – 19, стр. 835–848, октябрь 1971 г.

Но источники, цитируемые в «Как укладка апельсинов в 24 измерениях связана с получением и декодированием сигналов от Вояджеров?» а в комментариях ниже вопрос и ответ предполагают, что «Вояджер» использовал код Голея, и термин « Хэмминг» также часто используется.

Итак, давайте закрепим это:

Вопрос: Использовал ли космический корабль "Вояджер" код Голея , Рида-Соломона и/или код Хэмминга для кодирования передачи данных с целью исправления ошибок?

В кодах исправления ошибок всегда ограничивает сложность декодера. Кодер обычно может быть реализован с помощью нескольких сдвиговых регистров и двоичных сумматоров. Вполне может быть, что коды Голея и РС никогда не использовались с "Вояджером" в направлении Земли к космическим кораблям.
@NgPh да, существует присущая асимметрия в бюджетах каналов для двух направлений, то есть наземный передатчик в 10³, а в некоторых случаях в 10⁴ раз мощнее, чем передатчик дальнего космоса, поэтому отношение сигнал/шум может быть намного лучше, снижая Требования к обнаружению и исправлению ошибок.

Ответы (1)

Вопрос: Использовал ли космический корабль "Вояджер" код Голея , Рида-Соломона и/или код Хэмминга для кодирования передачи данных с целью исправления ошибок?

Да!

И там также есть сверточный кодер.


Из серии обзоров дизайна и характеристик DESCANSO, Voyager Telecommunications, (2002) :

TMU [блок модуляции телеметрии] кодирует поток данных с высокой скоростью с помощью сверточного кода , имеющего длину ограничения 7 и скорость передачи символов, равную удвоенной скорости передачи битов (k = 7, r = 1/2).

[курсив добавлен]

В вопросе упоминаются только блочные коды , но «Вояджеры» использовали сверточное кодирование . Я, конечно, не эксперт, но Браун, CD (2002). Элементы конструкции космического корабля. США: Американский институт аэронавтики и астронавтики. предполагает, что:

Сверточное кодирование — это более новый тип кодирования, который обеспечивает лучшее снижение частоты битовых ошибок, чем блочное кодирование, для заданного соотношения символов к битам. Кроме того, энкодер проще реализовать на аппаратном уровне, чем блочный энкодер.

Редактировать:

Нашел эту таблицу от DESCANSO , в которой предлагается использовать кодировку Голея или Рида-Соломона (со сверткой):Конфигурации Voyager Link

Браун, Elements of Spacecraft Design называет эту конкатенацию :

Когда требуется еще большая коррекция ошибок, можно комбинировать схемы кодирования, называемые конкатенацией. [...] код Рида-Соломона является внешним слоем, а сверточный код - внутренним слоем. Биты данных сначала сверточно кодируются. Выходной поток символов из сверточных кодеров закодирован Ридом-Соломоном. Эта схема обеспечивает значительное увеличение защиты от ошибок и значительное увеличение скорости передачи символов.

Редактировать 2.0 . Сначала нужно было прочитать все это от DESCANSO :

Алгоритм кодирования Голея , используемый на Юпитере и Сатурне, требовал передачи одного служебного бита для каждого передаваемого информационного бита (100% служебных данных). «Вояджер» нес экспериментальный кодировщик данных Рида-Соломона специально для большей дальности связи на этапе миссии Уран и Нептун. Новая схема кодирования Рида-Соломона уменьшила служебные данные примерно до одного бита из пяти (20 % служебных данных) и уменьшила частоту битовых ошибок в выходной информации с 5 × 10 3 к 10 6

Использовались не только Голей и Рид-Соломонспециальное подмножество кодов [Боуза-Чадхури-Хоккехема] », которые являются « мощным классом кода Хэмминга », Браун, «Элементы проектирования космических кораблей »), но и сверточное кодирование .

Интересный! Кажется, что "символьная скорость, равная удвоенной скорости передачи битов" соответствует "... кодовому слову длиной 24 бита. Из общего числа 16 миллионов кодовых слов они определили только 4096 как действительные. Т.е. 12 бит несут реальную информацию, а еще 12 используются для исправления ошибок». из [предыдущий ответ](). Возможно, это соответствует «r = 1/2»? Мне также интересно, соответствует ли «k = 7» «исправлению 3 ошибок, обнаружению 7 ошибок »?
@uhoh Да, это стандартная запись.
@uhoh, «k=7»: k — это так называемая длина ограничения сверточного кода (CC) . По сути, это память энкодера. Чем выше k, тем лучше, но соответственно возрастает и сложность декодера. НАСА иногда использует k=9, но k=7 считается правильным компромиссом между производительностью и сложностью.
этот ответ ссылается на сжатие данных изображения Voyager и блочное кодирование . Интересно, будет ли здесь полезен рисунок 3 ?