Из Википедии, бесплатной энциклопедии
  (Перенаправлено из службы контроля ошибок )
Перейти к навигации Перейти к поиску
Чтобы устранить ошибки передачи, вносимые атмосферой Земли (слева), ученые Годдарда применили исправление ошибок Рида – Соломона (справа), которое обычно используется в компакт-дисках и DVD. К типичным ошибкам относятся недостающие пиксели (белые) и ложные сигналы (черные). Белая полоса указывает на короткий период, когда передача была приостановлена.

В теории информации и теории кодирования с приложениями в информатике и связи , обнаружения и коррекции ошибок или защиты от ошибок методы , которые дают возможность надежной доставки цифровых данных по ненадежным каналам связи . Многие каналы связи подвержены канальному шуму , поэтому при передаче от источника к приемнику могут возникать ошибки. Методы обнаружения ошибок позволяют обнаруживать такие ошибки, а исправление ошибок позволяет во многих случаях восстановить исходные данные.

Определения [ править ]

Обнаружение ошибок - это обнаружение ошибок, вызванных шумом или другими помехами во время передачи от передатчика к приемнику. Исправление ошибок - это обнаружение ошибок и восстановление исходных безошибочных данных.

История [ править ]

В классической древности, переписчики о еврейской Библии были выплачены за их работу в соответствии с количеством stichs (стихотворных строк). Поскольку прозаические книги Библии почти никогда не писались стихами, переписчикам, чтобы оценить объем работы, приходилось пересчитывать буквы. [1] Это также помогло обеспечить точность передачи текста при изготовлении последующих копий. [2] [3] Между 7-м и 10-м веками н.э. группа еврейских писцов формализовала и расширила это, создав Числовую Масору.для обеспечения точного воспроизведения священного текста. Он включал подсчет количества слов в строке, разделе, книге и группах книг, отмечая средний стежок книги, статистику использования слов и комментарии. [1] Стандарты стали такими, что отклонение даже в одной букве в свитке Торы считалось недопустимым. [4] Эффективность их метода исправления ошибок была подтверждена точностью копирования на протяжении веков, продемонстрированной открытием свитков Мертвого моря в 1947–1956 годах, датируемых 150–75 гг. [5]

Современная разработка кодов с исправлением ошибок приписывается Ричарду Хэммингу в 1947 году. [6] Описание кода Хэмминга появилось в « Математической теории коммуникации» Клода Шеннона [7] и было быстро обобщено Марселем Дж . Э. Голеем . [8]

Введение [ править ]

Все схемы обнаружения и исправления ошибок добавляют к сообщению некоторую избыточность (т. Е. Некоторые дополнительные данные), которые получатели могут использовать для проверки согласованности доставленного сообщения и для восстановления данных, которые были определены как поврежденные. Схемы обнаружения и исправления ошибок могут быть систематическими или несистематическими. В систематической схеме передатчик отправляет исходные данные и присоединяет фиксированное количество контрольных битов (или данных четности ), которые выводятся из битов данных с помощью некоторого детерминированного алгоритма.. Если требуется только обнаружение ошибок, приемник может просто применить тот же алгоритм к полученным битам данных и сравнить свой вывод с полученными контрольными битами; если значения не совпадают, в какой-то момент во время передачи произошла ошибка. В системе, которая использует несистематический код, исходное сообщение преобразуется в закодированное сообщение, несущее ту же информацию и имеющее, по крайней мере, столько же битов, сколько и исходное сообщение.

Хорошая эффективность контроля ошибок требует, чтобы схема была выбрана на основе характеристик канала связи. Общие модели каналов включают модели без памяти, в которых ошибки возникают случайным образом и с определенной вероятностью, и динамические модели, в которых ошибки возникают в основном пакетами . Следовательно, ошибки обнаружения и исправления коды могут быть в общем различие между случайным-обнаружения ошибок / коррекции и пакеты ошибок обнаружения / коррекции . Некоторые коды могут также подходить для сочетания случайных ошибок и пакетных ошибок.

Если характеристики канала не могут быть определены или сильно изменяются, схема обнаружения ошибок может быть объединена с системой для повторных передач ошибочных данных. Это называется автоматическим запросом на повторение (ARQ) и чаще всего используется в Интернете. Альтернативный подход к контролю ошибок - это гибридный автоматический запрос на повторение (HARQ), который представляет собой комбинацию ARQ и кодирования с исправлением ошибок.

Типы исправления ошибок [ править ]

Есть три основных типа исправления ошибок. [9]

Автоматический повторный запрос (ARQ) [ править ]

Автоматический повторный запрос (ARQ) - это метод контроля ошибок для передачи данных, который использует коды обнаружения ошибок, сообщения подтверждения и / или отрицательного подтверждения, а также тайм-ауты для достижения надежной передачи данных. Подтверждение является сообщение , отправленное приемником , чтобы указать , что он правильно получил фрейм данных .

Обычно, когда передатчик не получает подтверждения до истечения тайм-аута (т. Е. В течение разумного промежутка времени после отправки кадра данных), он повторно передает кадр до тех пор, пока он не будет либо правильно принят, либо ошибка не сохранится сверх заранее определенного количества повторных передач. .

Три типа протоколов ARQ являются Stop и ждать ARQ , Go-Back-N ARQ и Selective Repeat ARQ .

ARQ подходит, если канал связи имеет переменную или неизвестную пропускную способность , например, в случае с Интернетом. Однако ARQ требует наличия обратного канала , что приводит к возможному увеличению задержки из-за повторных передач и требует обслуживания буферов и таймеров для повторных передач, что в случае перегрузки сети может создать нагрузку на сервер и общую пропускную способность сети. [10]

Например, ARQ используется на коротковолновых линиях радиосвязи в форме ARQ-E или в сочетании с мультиплексированием как ARQ-M .

Прямое исправление ошибок [ править ]

Прямое исправление ошибок (FEC) - это процесс добавления избыточных данных, таких как код исправления ошибок (ECC), в сообщение, чтобы оно могло быть восстановлено получателем, даже если количество ошибок used) были введены либо в процессе передачи, либо при хранении. Поскольку получатель не должен запрашивать у отправителя повторную передачу данных, обратный канал не требуется для прямого исправления ошибок, и поэтому он подходит для симплексной связи, такой как широковещательная передача . Коды с исправлением ошибок часто используются в коммуникациях нижнего уровня , а также для надежного хранения на таких носителях, как компакт-диски., DVD , жесткие диски и RAM .

Коды с исправлением ошибок обычно различают сверточные коды и блочные коды :

  • Сверточные коды обрабатываются побитно. Они особенно подходят для аппаратной реализации, а декодер Витерби обеспечивает оптимальное декодирование .
  • Блочные коды обрабатываются поблочно . Ранние примеры блочных кодов кода повторения , коды Хэмминга и многомерные проверочные коды . За ними последовал ряд эффективных кодов, наиболее заметными из которых стали коды Рида – Соломона из-за их широкого распространения в настоящее время. Турбокоды и коды с низкой плотностью проверки четности (LDPC) - это относительно новые конструкции, которые могут обеспечить почти оптимальную эффективность .

Теорема Шеннона является важной теоремой прямого исправления ошибок и описывает максимальную скорость передачи информации, при которой возможна надежная связь по каналу с определенной вероятностью ошибки или отношением сигнал / шум (SNR). Этот строгий верхний предел выражается в пропускной способности канала . Более конкретно, теорема говорит, что существуют коды, такие, что с увеличением длины кодирования вероятность ошибки на дискретном канале без памяти может быть сделана сколь угодно малой при условии, что скорость кода меньше, чем пропускная способность канала. Скорость коды определяются как дробь к / п из к исходным символам и п закодированные символы.

Фактическая максимальная разрешенная кодовая скорость зависит от используемого кода исправления ошибок и может быть ниже. Это связано с тем, что доказательство Шеннона носило только экзистенциальный характер и не показало, как создавать коды, которые одновременно являются оптимальными и имеют эффективные алгоритмы кодирования и декодирования.

Гибридные схемы [ править ]

Гибридный ARQ - это комбинация ARQ и прямого исправления ошибок. Есть два основных подхода: [10]

  • Сообщения всегда передаются с данными четности FEC (и избыточностью обнаружения ошибок). Приемник декодирует сообщение, используя информацию о четности, и запрашивает повторную передачу с использованием ARQ только в том случае, если данных четности было недостаточно для успешного декодирования (идентифицировано посредством неудачной проверки целостности).
  • Сообщения передаются без данных четности (только с информацией об обнаружении ошибок). Если приемник обнаруживает ошибку, он запрашивает информацию FEC от передатчика с помощью ARQ и использует ее для восстановления исходного сообщения.

Последний подход особенно привлекателен для канала стирания при использовании бесскоростного кода стирания .


Схемы обнаружения ошибок [ править ]

Обнаружение ошибок чаще всего реализуется с использованием подходящей хеш-функции (или, в частности, контрольной суммы , проверки циклическим избыточным кодом или другого алгоритма). Хеш-функция добавляет к сообщению тег фиксированной длины , который позволяет получателям проверять доставленное сообщение, повторно вычисляя тег и сравнивая его с предоставленным.

Существует огромное количество различных конструкций хеш-функций. Однако некоторые из них имеют особенно широкое распространение из-за их простоты или их пригодности для обнаружения определенных видов ошибок (например, производительности циклического контроля избыточности при обнаружении пакетных ошибок ).

Кодирование минимального расстояния [ править ]

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

Коды повторения [ править ]

Код с повторением является схемой кодирования , которая повторяет биты по каналу для достижения безошибочной связи. Учитывая поток данных, которые необходимо передать, данные делятся на блоки битов. Каждый блок передается определенное количество раз. Например, чтобы отправить битовую комбинацию «1011», четырехбитовый блок можно повторить три раза, таким образом получая «1011 1011 1011». Если этот двенадцатибитовый шаблон был получен как «1010 1011 1011» - где первый блок не похож на два других, - произошла ошибка.

Код повторения очень неэффективен и может быть подвержен проблемам, если ошибка возникает точно в одном и том же месте для каждой группы (например, «1010 1010 1010» в предыдущем примере будет обнаружено как правильное). Преимущество кодов повторения состоит в том, что они чрезвычайно просты и фактически используются в некоторых передачах цифровых станций . [11] [12]

Бит четности [ править ]

Бит четности является бит , который добавляется к группе исходных битов , чтобы гарантировать , что количество установленных битов (то есть, биты со значением 1) в исходе четным или нечетным. Это очень простая схема, которую можно использовать для обнаружения одиночного или любого другого нечетного числа (т. Е. Трех, пяти и т. Д.) Ошибок в выводе. Четное количество перевернутых битов сделает бит четности правильным, даже если данные ошибочны.

Биты четности, добавляемые к каждому отправляемому «слову», называются проверками с поперечным избыточным кодом , а биты , добавленные в конце потока «слов», называются проверками с продольным избыточным кодом.. Например, если к каждому из серии m-битных «слов» добавлен бит четности, показывающий, было ли в этом слове нечетное или четное количество единиц, будет обнаружено любое слово с единственной ошибкой в ​​нем. Однако неизвестно, в каком месте слова находится ошибка. Если, кроме того, после каждого потока из n слов отправляется сумма четности, каждый бит которой показывает, было ли нечетное или четное количество единиц в этой битовой позиции, отправленной в самой последней группе, точная позиция ошибки можно определить и исправить ошибку. Однако эффективность этого метода гарантируется только в том случае, если в каждой группе из n слов не более 1 ошибки. Чем больше битов исправления ошибок, тем больше ошибок может быть обнаружено и в некоторых случаях исправлено.

Существуют также другие методы группировки битов.

Контрольная сумма [ править ]

Контрольная сумма сообщения - это модульная арифметическая сумма кодовых слов сообщения фиксированной длины слова (например, байтовых значений). Сумма может быть инвертирована посредством операции дополнения до единиц перед передачей для обнаружения непреднамеренных сообщений с нулевыми значениями.

Схемы контрольных сумм включают в себя биты четности, контрольные цифры и проверки продольной избыточности . Некоторые схемы контрольных сумм, такие как Даммы алгоритм , в алгоритме Лун , и алгоритм верхуфф , специально предназначены для обнаружения ошибок , обычно вносимых человеком в написании или запоминании идентификационных номеров.

Циклический контроль избыточности [ править ]

Циклический избыточный код (CRC) представляет собой незащищенное хэш - функция предназначена для обнаружения случайных изменений цифровых данных в компьютерных сетях. Он не подходит для обнаружения злонамеренно внесенных ошибок. Он характеризуется указанием порождающего полинома , который используется в качестве делителя при полиномиальном делении в длину над конечным полем , принимая входные данные в качестве делимого . Остальное становится результатом.

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

Бит четности можно рассматривать как 1-битную CRC особого случая.

Криптографическая хеш-функция [ править ]

Выходные данные криптографической хеш-функции , также известной как дайджест сообщения , могут обеспечить надежную уверенность в целостности данных , независимо от того, были ли изменения данных случайными (например, из-за ошибок передачи) или внесены злонамеренно. Любое изменение данных, вероятно, будет обнаружено по несоответствию хеш-значения. Кроме того, с учетом некоторого значения хеш-функции обычно невозможно найти некоторые входные данные (кроме заданных), которые дадут такое же значение хеш-функции. Если злоумышленник может изменить не только сообщение, но и значение хеш-функции, то хеш- код с ключом или код аутентификации сообщения(MAC) можно использовать для дополнительной безопасности. Не зная ключа, злоумышленник не может легко и удобно вычислить правильное ключевое значение хеш-функции для измененного сообщения.

Код исправления ошибки [ править ]

Для обнаружения ошибок можно использовать любой код исправления ошибок. Код с минимальным расстоянием Хемминг , д , может обнаружить до г - 1 ошибок в кодовом слове. Использование кодов с коррекцией ошибок на основе минимального расстояния для обнаружения ошибок может быть подходящим, если требуется строгое ограничение на минимальное количество обнаруживаемых ошибок.

Коды с минимальным расстоянием Хэмминга d = 2 являются вырожденными случаями кодов с исправлением ошибок и могут использоваться для обнаружения одиночных ошибок. Бит четности является примером кода обнаружения одиночной ошибки.

Приложения [ править ]

Приложения, которым требуется низкая задержка (например, телефонные разговоры), не могут использовать автоматический запрос на повторение (ARQ); они должны использовать прямое исправление ошибок (FEC). К тому времени, когда система ARQ обнаружит ошибку и повторно передаст ее, повторно отправленные данные прибудут слишком поздно, чтобы их можно было использовать.

Приложения, в которых передатчик сразу же забывает информацию, как только она отправляется (например, большинство телекамер), не могут использовать ARQ; они должны использовать FEC, потому что при возникновении ошибки исходные данные больше не доступны.

Приложения, использующие ARQ, должны иметь обратный канал ; приложения, не имеющие обратного канала, не могут использовать ARQ.

Приложения, требующие крайне низкого уровня ошибок (например, цифровые денежные переводы), должны использовать ARQ из-за возможности неисправимых ошибок с помощью FEC.

Техника обеспечения надежности и контроля также использует теорию кодов с исправлением ошибок. [13]

Интернет [ править ]

В типичном стеке TCP / IP контроль ошибок выполняется на нескольких уровнях:

  • Каждый кадр Ethernet использует обнаружение ошибок CRC-32 . Кадры с обнаруженными ошибками отбрасываются аппаратурой приемника.
  • IPv4 - заголовок содержит контрольную сумму , защищающее содержимое заголовка. Пакеты с неверными контрольными суммами отбрасываются в сети или на приемнике.
  • Контрольная сумма была опущена в заголовке IPv6 , чтобы минимизировать затраты на обработку при сетевой маршрутизации и поскольку предполагается, что текущая технология канального уровня обеспечивает достаточное обнаружение ошибок (см. Также RFC 3819).
  • UDP имеет необязательную контрольную сумму, покрывающую полезную нагрузку и адресную информацию в заголовках UDP и IP. Пакеты с неверными контрольными суммами отбрасываются сетевым стеком . Контрольная сумма не является обязательной для IPv4 и требуется для IPv6. Если не указано иное, предполагается, что уровень канала передачи данных обеспечивает желаемый уровень защиты от ошибок.
  • TCP предоставляет контрольную сумму для защиты полезной нагрузки и адресной информации в заголовках TCP и IP. Пакеты с неверными контрольными суммами отбрасываются сетевым стеком и в конечном итоге повторно передаются с использованием ARQ либо явно (например, через тройное подтверждение ), либо неявно из-за тайм-аута .

Телекоммуникации в дальнем космосе [ править ]

Разработка кодов исправления ошибок была тесно связана с историей полетов в дальний космос из-за чрезмерного ослабления мощности сигнала на межпланетных расстояниях и ограниченной доступной мощности на борту космических зондов. В то время как ранние миссии отправляли свои данные в незашифрованном виде, начиная с 1968 года, цифровая коррекция ошибок была реализована в форме (субоптимально декодированных) сверточных кодов и кодов Рида – Мюллера . [14] Код Рида-Мюллера хорошо подходил к шуму, которому подвергался космический корабль (приблизительно соответствуя колоколообразной кривой ), и был реализован для космического корабля Mariner и использовался в миссиях между 1969 и 1977 годами.

В Voyager 1 и Voyager 2 миссии, которая началась в 1977 году, были разработаны , чтобы обеспечить цветное изображение и научную информацию от Юпитера и Сатурна . [15] Это привело к повышенным требованиям к кодированию, и, таким образом, космический аппарат поддерживался (оптимально декодированным по Витерби ) сверточными кодами, которые можно было объединить с внешним кодом Голея (24,12,8) . Корабль "Вояджер-2" дополнительно поддерживал реализацию кода Рида-Соломона . Конкатенированный код Рида – Соломона – Витерби (RSV) позволил очень мощно исправить ошибки и позволил космическому кораблю совершить длительный полет к Урану.и Нептун . После модернизации системы ECC в 1989 году оба корабля использовали кодирование V2 RSV.

Консультативный комитет по системам космических данных в настоящее время рекомендует использование кодов коррекции ошибок с производительностью аналогична кодой RSV Voyager 2 как минимум. Составные коды все больше теряют популярность в космических полетах и ​​заменяются более мощными кодами, такими как турбокоды или коды LDPC .

Различные виды выполняемых миссий в дальний космос и орбитальные полеты предполагают, что попытка найти универсальную систему исправления ошибок будет постоянной проблемой. Для миссий, близких к Земле, характер шума в канале связи отличается от того, который испытывает космический корабль во время межпланетной миссии. Кроме того, по мере того, как космический корабль удаляется от Земли, проблема коррекции шума становится все более сложной.

Спутниковое вещание [ править ]

Спрос на пропускную способность спутникового ретранслятора продолжает расти, чему способствует желание предоставлять телевидение (включая новые каналы и телевидение высокой четкости ) и данные IP. Доступность транспондеров и ограничения полосы пропускания ограничили этот рост. Пропускная способность транспондера определяется выбранной схемой модуляции и долей пропускной способности, потребляемой FEC.

Хранение данных [ править ]

Коды обнаружения и исправления ошибок часто используются для повышения надежности носителей данных. [16] Дорожка четности, способная обнаруживать однобитовые ошибки, присутствовала в первом хранилище данных на магнитной ленте в 1951 году. Оптимальный прямоугольный код, используемый в записывающих лентах с групповым кодированием, не только обнаруживает, но и исправляет однобитовые ошибки. Некоторые форматы файлов , особенно форматы архивов , включают контрольную сумму (чаще всего CRC32 ) для обнаружения повреждения и усечения и могут использовать файлы избыточности или четности для восстановления частей поврежденных данных. Коды Рида-Соломона используются в компакт-дисках для исправления ошибок, вызванных царапинами.

Современные жесткие диски используют коды Рида – Соломона для обнаружения исправления незначительных ошибок при чтении секторов, восстановления поврежденных данных из вышедших из строя секторов и сохранения этих данных в резервных секторах. [17] В системах RAID используются различные методы исправления ошибок для восстановления данных, когда жесткий диск полностью выходит из строя. Файловые системы, такие как ZFS или Btrfs , а также некоторые реализации RAID поддерживают очистку данных и повторное обновление, что позволяет обнаруживать и (надеюсь) восстанавливать плохие блоки перед их использованием. [18] Восстановленные данные могут быть перезаписаны точно в том же физическом месте для резервирования блоков в другом месте на том же оборудовании, или данные могут быть перезаписаны на заменяющее оборудование.

Память с исправлением ошибок [ править ]

Динамическая память с произвольным доступом (DRAM) может обеспечить более надежную защиту от мягких ошибок , полагаясь на коды исправления ошибок. [19] Такая память с исправлением ошибок, известная как память с защитой ECC или EDAC , особенно желательна для критически важных приложений, таких как научные вычисления, финансы, медицина и т. Д., А также для внеземных приложений из-за повышенной радиации в космосе. .

Контроллеры памяти с исправлением ошибок традиционно используют коды Хэмминга , хотя некоторые используют тройное модульное резервирование . Чередование позволяет распределить эффект одного космического луча, потенциально нарушающего несколько физически соседних битов по нескольким словам, путем связывания соседних битов с разными словами. До тех пор, пока нарушение единичного события (SEU) не превышает пороговое значение ошибки (например, одиночная ошибка) в любом конкретном слове между доступами, оно может быть исправлено (например, с помощью однобитового кода исправления ошибок), и иллюзия безошибочной системы памяти может сохраняться. [20]

В дополнение к аппаратным средствам, обеспечивающим функции, необходимые для работы памяти ECC, операционные системы обычно содержат соответствующие средства отчетности, которые используются для предоставления уведомлений при прозрачном восстановлении программных ошибок. Увеличение количества программных ошибок может указывать на то, что модуль DIMM нуждается в замене, и такая обратная связь не была бы легко доступна без соответствующих возможностей отчетности. Одним из примеров является Linux ядро «s EDAC подсистема (ранее известный как Bluesmoke), который собирает данные от компонентов компьютерной системы с включенной функцией проверки ошибок; Помимо сбора и отправки отчетов о событиях, связанных с памятью ECC, он также поддерживает другие ошибки контрольной суммы, в том числе обнаруженные на шине PCI . [21] [22] [23]

Некоторые системы также поддерживают очистку памяти .

См. Также [ править ]

  • Код Бергера
  • Пакетный код исправления ошибок
  • Плевать будильник
  • Память ECC , тип хранения компьютерных данных
  • Запрещенный ввод
  • Адаптация ссылки
  • Список алгоритмов обнаружения и исправления ошибок
  • Список кодов исправления ошибок
  • Список хеш-функций
  • Надежность (компьютерные сети)

Ссылки [ править ]

  1. ^ а б "Масора". Еврейская энциклопедия .
  2. ^ Pratico, Гэри Д .; Пелт, Майлз В. Ван (2009). Основы библейской грамматики иврита: второе издание . Зондерван. ISBN 978-0-310-55882-8.
  3. ^ Маунс, Уильям Д. (2007). Греческий для остальных: использование греческих инструментов без знания библейских языков . Зондерван. п. 289. ISBN. 978-0-310-28289-1.
  4. Мишне Тора , Тфилин, Мезуза и Сефер Тора, 1: 2. Пример английского перевода: Eliyahu Touger . Мишне Тора Рамбама . Издательская корпорация "Мознаим" .
  5. Брайан М. Фэган (5 декабря 1996 г.). «Свитки Мертвого моря». Оксфордский компаньон археологии . Издательство Оксфордского университета . ISBN 0195076184.
  6. ^ Томпсон, Томас М. (1983), От кодов, исправляющих ошибки, через упаковку сфер до простых групп , Математические монографии Каруса (№ 21), Математическая ассоциация Америки, стр. vii, ISBN 0-88385-023-0
  7. ^ Shannon, CE (1948), "Математическая теория связи", Bell System Technical Journal , 27 (3): 379-423, DOI : 10.1002 / j.1538-7305.1948.tb01338.x , ЛВП : 10338.dmlcz / 101429 , PMID 9230594 
  8. ^ Голе, Марсель JE (1949), "Записки о Digital Coding", Proc.IRE (IEEE) , 37 : 657
  9. ^ Гупта, Викас; Верма, Чандеркант (ноябрь 2012 г.). «Обнаружение и исправление ошибок: Введение». Международный журнал перспективных исследований в области компьютерных наук и программной инженерии . 2 (11). S2CID 17499858 . 
  10. ^ a b А. Дж. Маколи, Надежная широкополосная связь с использованием кода коррекции стирания пакетов, ACM SIGCOMM, 1990.
  11. ^ Франк ван Гервен. «Номера (и другие загадочные) станции» . Проверено 12 марта 2012 года .
  12. ^ Гэри Cutlack (25 августа 2010). "Таинственная русская" Цифровая станция "изменила вещание через 20 лет" . Gizmodo . Проверено 12 марта 2012 года .
  13. ^ Бен-Гал I .; Herer Y .; Раз Т. (2003). «Самокорректирующаяся процедура проверки при проверке ошибок» (PDF) . IIE Сделки . IIE Сделки по качеству и надежности, 34 (6), стр. 529-540. Архивировано из оригинального (PDF) 13.10.2013 . Проверено 10 января 2014 .
  14. ^ К. Эндрюс и др., Разработка кодов Turbo и LDPC для приложений дальнего космоса , Труды IEEE, Vol. 95, No. 11, ноябрь 2007 г.
  15. ^ Хаффман, Уильям Кэри; Плесс, Вера С. (2003). Основы кодов с исправлением ошибок . Издательство Кембриджского университета . ISBN 978-0-521-78280-7.
  16. ^ Куртас, Эрозан М .; Васич, Бэйн (2018-10-03). Расширенные методы контроля ошибок для систем хранения данных . CRC Press. ISBN 978-1-4200-3649-7.[ постоянная мертвая ссылка ]
  17. ^ Скотт А. Моултон. «Мой жесткий диск умер» . Архивировано из оригинала на 2008-02-02.
  18. ^ Цяо, Чжи; Фу, песня; Чен, Синь-Бунг; Сеттлмайер, Брэдли (2019). «Построение надежных высокопроизводительных систем хранения данных: эмпирическое и аналитическое исследование». Международная конференция IEEE по кластерным вычислениям (CLUSTER) 2019 : 1–10. DOI : 10,1109 / CLUSTER.2019.8891006 . ISBN 978-1-7281-4734-5. S2CID  207951690 .
  19. ^ « Обзор методов повышения устойчивости DRAM к ошибкам », Журнал системной архитектуры, 2018
  20. ^ «Использование StrongArm SA-1110 в бортовом компьютере наноспутника» . Космический центр Цинхуа, Университет Цинхуа , Пекин. Архивировано из оригинала на 2011-10-02 . Проверено 16 февраля 2009 .
  21. ^ Джефф Лейтон. «Обнаружение и исправление ошибок» . Журнал Linux . Проверено 12 августа 2014 .
  22. ^ "Проект EDAC" . bluesmoke.sourceforge.net . Проверено 12 августа 2014 .
  23. ^ "Документация / edac.txt" . Документация ядра Linux . kernel.org . 2014-06-16. Архивировано из оригинала на 2009-09-05 . Проверено 12 августа 2014 .

Дальнейшее чтение [ править ]

  • Шу Линь; Дэниел Дж. Костелло-младший (1983). Кодирование с контролем ошибок: основы и приложения . Прентис Холл . ISBN 0-13-283796-X.

Внешние ссылки [ править ]

  • Он-лайн учебник: Теория информации, логический вывод и алгоритмы обучения , написанный Дэвидом Дж. К. Маккеем , содержит главы, посвященные элементарным кодам исправления ошибок; о теоретических пределах исправления ошибок; и на последних современных кодах исправления ошибок, включая коды контроля четности с низкой плотностью , турбокоды и исходные коды .
  • Вычислить параметры линейных кодов - интерактивный интерфейс для генерации и вычисления параметров (например, минимальное расстояние , радиус покрытия ) линейных кодов с исправлением ошибок .
  • Страница ECC
  • SoftECC: система проверки целостности программной памяти
  • Настраиваемая программная библиотека обнаружения и исправления ошибок DRAM для HPC
  • Обнаружение и исправление скрытых искажений данных для крупномасштабных высокопроизводительных вычислений