IBM PC


каких мегабайтах! Так, например, стандартная


Сколько бит в
байте? Правильно, восемь. А сколько бит в семистах мегабайтах? А это смотря в
каких мегабайтах! Так, например, стандартная 700 Мб CD-R/RW
болванка вмещает в себя по меньшей мере 23 миллиона бит или порядка трех
гигабайт "сырой" информации, большая часть которых расходуется на
служебные структуры данных, обеспечивающие лазерному диску работоспособность.
Колоссальная
избыточность принятой системы кодирования объясняется физическими свойствами
светового луча, который в силу своих волновых свойств одиночные
"питы" и "ленды" просто огибает. Минимальной "горной
формацией" уверенно распознаваемой лазерным лучом является
последовательность из трех "питов" ("лендов"), соответствующая
трем логическим нулям. Переход от пита к ленду или наоборот соответствует


логической единице. Поскольку две соседние единицы всегда оказываются разделены
по меньшей мере тремя нулями, приходится прибегать к сложной системе
перекодировки, преобразующий всякий 8 битный символ исходных данных в
15 битное EFM-слово
(от английского Eight to Fifteenth Modulation – Модуляция Восемь в
Пятнадцать), причем EFM-слова
не могут следовать вплотную друг за другом (задумайтесь, что произойдет, если
за EFM-словом,
оканчивающимся на единицу, попробовать записать EFM-слово с той же самой единицы и
начинающееся) и вынуждены разделяться тремя merging-битами. Таким образом, на каждые 4 бита исходных
данных приходится 9 бит физических. Очевидно, что стандартная схема модуляции
не является идеальной и оставляет достаточный запас для ее усовершенствования
(см. "резерв-6 или дополнительные
источники емкости").
Минимальной
порцией данных, непосредственно адресуемой на программном уровне, является сектор
(или в терминологии Audio CD –
блок).
Один блок состоит из 98 фреймов,
каждый из которых в свою очередь содержит 24 байта полезных данных,
8 байт кодов Рида-Соломона, часто называемых CIRC-кодами, хотя с технической точки


зрения это и не совсем верно, 3 синхробайта и 8 бит каналов
подкода – по одному биту на каждый из восьми каналов, условно обозначаемых
латинскими буквами P, Q, R, S, T, U, V и W соответственно. Q-канал хранит служебную информацию о
разметке диска, P-канал
служит для быстрого поиска пауз, остальные каналы – свободны.
Таким образом,
эффективная емкость одного блока составляет 2352 байта или даже 2400 байт
с учетом каналов подкода (из 98 байт субканальных данных 34 байта отданы под
служебные нужды). Корректирующие коды Рида-Соломона позволяют исправлять до
4 разрушенных байт на каждый фрейм, что составляет 392 байт на целый
блок.
Диски с
данными (CD-Data), ведущие свою
родословную от Audio-дисков,
поддерживают два основных режима обработки данных: MODE 1 и MODE 2.
В режиме MODE 1 из 2352 байт сырой
емкости сектора, лишь 2048 байт отданы непосредственно под
пользовательские данные. Остальные распределены между заголовком сектора (16 байт), контрольной суммой сектора (4 байта) и дополнительными корректирующими кодами, увеличивающими стойкость
диска к физическим повреждениям (276 байт). Оставшиеся 8 байт никак
не задействованы и обычно проинициализированы нулями.
В режиме MODE 2 из 2352 байт сырой емкости сектора только
16 байт отданы под служебные структуры (заголовок), а остальные 2336 байт содержат пользовательские
данные. Легко видеть, что при записи диска в MODE 2 его эффективная емкость становится на ~15% больше, но
и надежность хранения данных при этом приблизительно на треть ниже. Однако при
использовании качественных носителей информации (LG, TDK, Verbatim) и
бережном обращении с ними, риск невосстановимого разрушения данных достаточно
невелик (см. "тестирование дисков на
надежность"). К тому же многие форматы данных безболезненно переносят даже
множественные искажения средней и высокой степени тяжести. К этой категории
относятся DivX, MP3, JPEG и другие типы файлов. C некоторой долей риска можно
записывать архивы и исполняемые файлы, потерей которой вы не сильно огорчитесь


или которые возможно восстановить из основного хранилища (например при переносе
файлов между компьютерами, дублировании дисков, взятых напрокат и т. д.).
Чистый MODE 2 в живой природе
встречается крайне редко, однако с его производными нам приходится сталкиваться
буквально на каждом шагу. Это и CD-ROM XA MODE 2
(применяющийся в многосессионных дисках), и Video CD/Super Video CD, и CD-I, и… многое-многое другое.
Формат CD-ROM XA, возникший на фундаменте MODE 2, выгодно
отличается от своего предшественника возможностью динамической смены типа трека
на всем его протяжении. Часть трека может быть записана в режиме FORM 1, практически
идентичном режиму MODE 1,
но задействовавшем восемь ранее пустующих байт под нужды специального
заголовка, а часть – в FORM 2, –
усовершенствованном MODE 2:
2324 байта пользовательских данных, 16 байт основного и 8 байт
вспомогательного заголовков плюс 4 байта контрольной суммы для контроля
целостности (но не восстановления!) содержимого сектора.
Режим FORM 1 предполагалось
использовать для критических к разрушению данных (исполняемых файлов, архивов и
т. д.), а FORM 2 – для
аудио/видеоданных. Увы, этим замыслам было не суждено сбыться, и широкого
распространения режим FORM 2
так и не получил. Единственным более или менее популярным форматом, опирающимся
на режим XA MODE 2 FORM 2, стал Video CD/Super Video CD,
позволяющий записать на обычном 700 Мб диске до 800 Мб информации и
900 Мб на 90-минутном (плюс over-burn),
что приблизительно на четыре мегабайта меньше чистого MODE 2, но такими потерями можно и
пренебречь. Зато в отличие от чистого MODE 2 формат Video CD/Super Video CD поддерживается
операционным системам семейства Windows
и Linux!

Рисунок 1 "Табель о
рангах" – схема распределения объема лазерного диска по различным
структурам. Как видно, на пользовательские данные отводится немногим более
половины общего дискового пространства.

Рисунок 2 Поверхность
лазерного диска под электронным микроскопом. Видны чередующиеся цепочки


углублений – "питов" (от английского pit – ямка, впадина) и
возвышенностей – "лендов" (от английского land – равнина, земля). Ленды
отражают большую часть падающего на них света лазерного излучателя, а питы в
силу своей удаленности от точки фокуса не отражают практически ничего (рисунок
взят с сайта фирмы EPOS).

Рисунок 3 "Питы" и "ленды" образуют цепочки с
длиной от трех до десяти "питов" ("лендов") каждая. Переход
от "пита" к "ленду" (или наоборот) соответствует логической
единице, а логический нуль представляется отсутствуем переходов в данном месте.
Поскольку диаметр сфокусированного лазерного пятна равен трем
"питам", более короткие цепочки уже не распознаются лазером, а
ограничение длины цепочек сверху обусловлено степенью точности тактового
генератора и равномерностью вращения диска. В самом деле, если точность
такового генератора составляет порядка 10%, то при измерении 10-питовой цепочки
мы получаем погрешность в ±1 пит (рисунок взят с сайта фирмы EPOS). Некоторые производители уменьшают
длину одного "пита" на 30%, что во столько же раз увеличивает
эффективную емкость диска. Возникает вопрос: как же в таком случае привод
ухитряется определить длину той или иной цепочки? Ведь в отсутствие каких бы то
ни было опорных значений, провод вынужден сравнивать длину "питов" со
стандартным эталоном, а это значит, что цепочка из N уплотненных "питов" будет
интерпретирована как N/2!
Дизассемблировав прошивку своего PHILIPS'a,
автор выяснил, что привод имеет автоматический регулятор скорости, подбирающий
такое значение T,
которое соответствовало бы наименьшему количеству ошибок чтения.

Рисунок 4 На CD-R дисках никаких "питов" в прямом смысле этого слова нет, но их заменяет специальный слой прожигаемого
красителя, деформирующего отражающий слой и препятствующий отражению лазерного
луча в данном месте. Однако с точки зрения CD-ROM привода, штампованные и CD-R диски выглядят практически
одинаково, за тем исключением, что штампованные диски более контрастны (рисунок взят с сайта фирмы EPOS).

Содержание раздела