Введение

Образец, используемый в системе связи для представления цифровых данных.

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

Разнообразие

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

Использовать код постоянного веса. Каждое передаваемое кодовое слово в коде постоянного веса сконструировано таким образом, что каждое кодовое слово, содержащее некоторые положительные или отрицательные уровни, также содержит достаточное количество противоположных уровней, чтобы средний уровень по кодовому слову был равен нулю. Примеры кодов постоянного веса включают код Манчестера и Interleaved 2 of 5. Использовать парный код дисбаланса. Каждое кодовое слово в парном коде дисбаланса, которое в среднем имеет отрицательный уровень, сочетается с другим кодовым словом, которое в среднем имеет положительный уровень. Передатчик отслеживает накопление постоянного тока и выбирает кодовое слово, которое возвращает уровень постоянного тока к нулю. Приемник сконструирован таким образом, что любое кодовое слово из пары декодируется в одни и те же биты данных. Примеры парных кодов дисбаланса включают альтернативную инверсию маркировки, 8b/10b и 4B3T. Использовать скремблер. Например, скремблер, указанный для кодирования 64b/66b.

Коды с ограниченной длиной исполнения

Для надежного восстановления тактовой частоты на приемнике может быть установлено ограничение на длину серии для генерируемой канальной последовательности, то есть максимальное количество последовательных единиц или нулей ограничивается разумным числом. Тактовый период восстанавливается путем наблюдения переходов в принимаемой последовательности, поэтому максимальная длина серии гарантирует достаточное количество переходов для обеспечения качества восстановления тактовой частоты. Коды RLL определяются четырьмя основными параметрами: m, n, d, k. Первые два, m/n, относятся к скорости кода, а остальные два задают минимальное d и максимальное k количество нулей между последовательными единицами. Это используется как в телекоммуникационных, так и в системах хранения данных, которые перемещают носитель информации мимо фиксированной записывающей головки. В частности, RLL ограничивает длину непрерывных последовательностей (серий) повторяющихся битов, в течение которых сигнал не изменяется. Если серии слишком длинные, восстановление тактовой частоты затруднено; если они слишком короткие, высокие частоты могут быть ослаблены каналом связи. Модулируя данные, RLL снижает неопределенность во времени при декодировании сохраненных данных, что может привести к ошибочной вставке или удалению битов при чтении данных. Этот механизм гарантирует, что границы между битами всегда могут быть точно определены (предотвращая сдвиг битов), эффективно используя носитель информации для надежного хранения максимального объема данных в заданном пространстве. Ранние дисковые накопители использовали очень простые схемы кодирования, такие как RLL (0,1) FM код, за которым последовал RLL (1,3) MFM код, которые широко использовались в жестких дисках до середины 1980-х годов и до сих пор применяются в цифровых оптических дисках, таких как CD, DVD, MD, Hi MD и Blu-ray, использующих коды EFM и EFMPLus. Более плотные коды RLL (2,7) и RLL (1,7) стали де-факто стандартами для жестких дисков к началу 1990-х годов.

Синхронизация

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

Другие соображения

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