Источник: greatkorzhik.tripod.com
Углубления и плоские участки на CD ("pits" и "lands") напрямую не соответствуют нулям и единицам двоичного кода. Как начало, так и конец каждого углубления (т.е. его края) соответствуют единицам, а все другие промежутки - нулям. Количество нулей между краями углубления определяются точной синхронизацией. Такой подход упрощает работу с электрическим сигналом. Он называется NRZI (без возвращения к нулю и с инверсией) и легко превращается в NRZ (без инверсии), где единицы кодируются высоким напряжением, а нули - низким.
Точная синхронизация становится возможной благодаря тому, что компакт-диски являются самосинхронизирующимися. Предположим, что у вас есть часы, тикающие раз в секунду. Заткните уши и начните про себя считать секунды, пытаясь выдержать ритм, заданный часами. Через десять секунд послушайте, что у вас получилось: если вы слегка сбились с ритма, то вы можете с легкостью исправиться, поскольку ошибка еще не слишком велика. Возможно, вы ошибаетесь всего на четверть секунды, и вам удастся без труда скорректировать свой отсчет. А теперь попробуйте провести такой же эксперимент в течение десяти минут. Когда вы откроете уши, то вы снова сможете синхронизировать ваш отсчет с часами, но то же количество отсчетов за 10 минут вы сможете получить, только если обладаете отличным врожденным чувством времени. Скорее всего, ваша ошибка составит несколько секунд.
Таким же образом устроен и компакт-диск. Каждый край углубления - это своего рода слышимый отсчет, а все остальные области диска - неслышимые отсчеты. Если бы углубления или плоские участки имели слишком большую протяженность, то генератор считывающего привода мог бы с легкостью сбиться с синхронизации. (Именно поэтому "чистые" записываемые диски не являются полностью чистыми: на них записана специальная спиральная дорожка с частотными данными, используемыми для синхронизации. Тактовый генератор со столь высокими показателями стабильности невозможно использовать в массовых бытовых устройствах из-за его слишком высокой цены).
Чтобы гарантировать запись углублений определенной длины, стандартом CD предусмотрено, что между каждой единицей может быть не менее двух и не более десяти нулей. Это достигается путем преобразования каждого восьмиразрядного байта в 14-разрядный. Такое преобразование носит название EFM-модуляции (Eight to Fourteen Modulation).
Поэтому самое короткое углубление (или плоский участок) состоит из трех битов EFM (100), а самое длинное - из 11 (10000000000). Если одному биту требуется время T для прохождения под считывающей головкой, то участки указанной длины являются участками длиной 3T и 11T соответственно. В случае, когда после перехода к новой области диска привод увидит участок короче 3T или длиннее 11T, в привод поступит сигнал о том, что диск вращается с неправильной скоростью, что позволит внести соответствующие исправления.
Между каждым 14-битным EFM-словом расположены три объединяющих бита ("merging bits"). Так как на CD не могут присутствовать участки короче 3Т или длиннее 11Т, иногда возникает необходимость закончить EFM-код нулем или единицей. К примеру, предположим, что за EFM-кодом, оканчивающимся на единицу, следует другой EFM-код, начинающийся на единицу. Объединяющие биты также служить для того, чтобы не допустить появления синхрогруппы в том месте, где она не должна появляться (см. следующий раздел).
Если существует больше одной возможности для размещения объединяющих битов, удовлетворяющего требованиям длины участков и синхрогрупп, тогда используется синхрогруппа, минимизирующая низкочастотные составляющие сигнала. Это достигается снижением до минимума значения цифровой суммы (DSV), которая рассчитывается путем прибавления единицы к каждому времени T после перехода из углубления к плоскому участку или путем вычитания единицы из каждого Т после перехода к углублению. Добавление единицы к объединяющим битам инвертирует сигнал, вызывая переход от углубления к плоскому участку или наоборот. Снижение до минимума DSV имеет большое значение, поскольку низкочастотные сигналы могут помешать правильной фокусировке лазера и его позиционированию на дорожке. (Предположительно, такие сигналы мешают поиску отсчетов на спиральной дорожке записываемого диска).
EFM-модуляция требует дополнительного кодирования, однако при этом понижается максимально возможная высота частоты на выходе. Соотношение числа передаваемых битов к числу переходов на носителе является высоким, поэтому такой способ является эффективным методом хранения данных с возможностью восстановления тактовой частоты. Необходимо также отметить, что длина участка 3Т составляет 0,833 um, а диаметр точки фокусировки лазера всего вдвое превышает его длину (1,7 um). Если бы на диск использовались участки длиной 2Т или 1Т, то лазеру было бы трудно их распознать. Поэтому чрезвычайно важно, чтобы такие переходы осуществлялись не слишком часто: лазер хорошо справляется с подсчетом времени между переходами, однако не столь хорошо определяет переходы, если они повторяются с высокой частотой. Вследствие этого углубления и плоские участки должны иметь большую длину, что, однако, снижает объем данных, которые теоретически могли бы поместиться на диске.