В телекоммуникациях линейный код — это образец напряжения, тока или фотонов, используемый для представления цифровых данных, передаваемых по каналу связи или записываемых на носитель данных . Этот набор сигналов обычно называют ограниченным кодом в системах хранения данных. [1] Некоторые сигналы более подвержены ошибкам, чем другие, поскольку физика канала связи или носителя данных ограничивает набор сигналов, которые можно надежно использовать. [2]
Общие линейные кодировки — униполярный , полярный , биполярный и манчестерский код .
После линейного кодирования сигнал передается через физический канал связи, либо среду передачи , либо среду хранения данных . [3] [4] Наиболее распространенными физическими каналами являются:
Некоторые из наиболее распространенных двоичных линейных кодов включают:
Каждый линейный код имеет свои преимущества и недостатки. Коды линий выбираются так, чтобы они соответствовали одному или нескольким из следующих критериев:
Большинство каналов связи на большие расстояния не могут надежно передавать компонент постоянного тока . Компонент постоянного тока также называется диспаратностью , смещением или коэффициентом постоянного тока . Несоответствие битового шаблона — это разница в количестве единиц и числа нулевых битов. Текущая несоответствие представляет собой промежуточную сумму несоответствия всех ранее переданных битов. [5] Самый простой линейный код, униполярный , дает слишком много ошибок в таких системах, поскольку имеет неограниченную постоянную составляющую.
В большинстве линейных кодов отсутствует составляющая постоянного тока — такие коды называются сбалансированными по постоянному току , с нулевым постоянным током или без постоянного тока. Существует три способа устранения составляющей постоянного тока:
Биполярные линейные коды имеют две полярности, обычно реализуются как RZ и имеют систему счисления три, поскольку существует три различных выходных уровня (отрицательный, положительный и нулевой). Одним из основных преимуществ этого типа кода является то, что он позволяет исключить любую составляющую постоянного тока. Это важно, если сигнал должен проходить через трансформатор или длинную линию передачи.
К сожалению, некоторые каналы дальней связи имеют неоднозначность полярности. В этих каналах компенсируются линейные коды, нечувствительные к полярности. [6] [7] [8] [9] Обеспечить однозначный прием битов 0 и 1 по таким каналам можно тремя способами:
Для надежного восстановления тактового сигнала в приемнике на сгенерированную канальную последовательность может быть наложено ограничение на длину серии , т. е. максимальное количество последовательных единиц или нулей ограничивается разумным числом. Период тактового сигнала восстанавливается путем наблюдения за переходами в полученной последовательности, так что максимальная длина прогона гарантирует достаточное количество переходов для обеспечения качества восстановления тактового сигнала.
Коды RLL определяются четырьмя основными параметрами: m , n , d , k . Первые два, m / n , относятся к скорости кода, а остальные два определяют минимальное d и максимальное k количество нулей между последовательными. Это используется как в телекоммуникационных системах, так и в системах хранения данных, которые перемещают носитель мимо фиксированной записывающей головки . [10]
В частности, RLL ограничивает длину отрезков (серий) повторяющихся битов, в течение которых сигнал не изменяется. Если прогоны слишком длинные, восстановление тактовой частоты затруднено; если они слишком короткие, высокие частоты могут быть ослаблены каналом связи. Модулируя данные , RLL уменьшает неопределенность синхронизации при декодировании сохраненных данных, что может привести к возможной ошибочной вставке или удалению битов при обратном чтении данных . Этот механизм гарантирует, что границы между битами всегда можно точно найти (предотвращая проскальзывание битов ), при этом эффективно используя носитель для надежного хранения максимального объема данных в заданном пространстве.
В ранних дисководах использовались очень простые схемы кодирования, такие как код RLL (0,1) FM, за которым следовал код RLL (1,3) MFM, которые широко использовались в жестких дисках до середины 1980-х годов и до сих пор используются в цифровых оптических устройствах. такие диски, как CD , DVD , MD , Hi-MD и Blu-ray , с использованием кодов EFM и EFMPLus. [11] Коды RLL (2,7) и RLL (1,7) более высокой плотности стали де-факто стандартами для жестких дисков к началу 1990-х годов. [ нужна цитата ]
Линейное кодирование должно позволить приемнику синхронизироваться с фазой принимаемого сигнала. Если восстановление тактового сигнала не идеально, то декодируемый сигнал не будет дискретизироваться в оптимальные моменты времени. Это увеличит вероятность ошибки в полученных данных.
Двухфазные линейные коды требуют по крайней мере одного перехода за битовое время. Это облегчает синхронизацию трансиверов и обнаружение ошибок, однако скорость передачи данных выше, чем у кодов NRZ.
Линейный код обычно отражает технические требования к среде передачи, например, к оптическому волокну или экранированной витой паре . Эти требования уникальны для каждой среды, поскольку каждая из них имеет различное поведение, связанное с помехами, искажениями, емкостью и затуханием. [12]
Линейные коды... облегчают передачу данных по телекоммуникационным и компьютерным сетям и их хранение в мультимедийные системы.
Когда используется модуляция данных PSK, существует вероятность неоднозначности полярности принимаемых символов канала. Эту проблему можно решить одним из двух способов. Во-первых... так называемый прозрачный код. ...
Еще одним преимуществом дифференциального кодирования является его нечувствительность к полярности сигнала. ... Если выводы витой пары случайно перепутались...
Дано подробное описание ограничивающих свойств последовательностей с ограниченной длиной.
Описана высокоплотная альтернатива EFM.