Разбег Пандоры
Шрифт:
В общем, корректирующий код оказался новейшим, но уже вполне известным, носил имя Рида-Соломона и имел в основании число 256 [261] . Однако в технике не использовался, и мне быстро объяснили причину. Сам по себе процесс кодирования очень прост. Порцию данных в 2 килобайта нужно всего-то «пропустить» через полином, порожденный правилами арифметики Галуа. Тут лучше не вдумываться в непонятные термины, а верить специалистам на слово. Плохо другое, алгоритм исправления ошибок минимум на порядок сложнее, следовательно на скорости в 300 бод с ним не справится даже целая БЭСМ-4.
261
Код Рида-Соломона был изобретён
Стала понятной и наша с Катей неспособность что-то понять в записи. Оказывается, каждый байт из потока уже закодированных данных подвергался преобразованию в четырнадцать бит [262] , а между этими словами вставлялись как разделители 3-битные куски так, чтобы на носителе было не более 10 нулей или единиц подряд. Дополнительно к этому добавлялись синхробайты, контрольная сумма и байт служебной информация непонятного назначения.
Уж не знаю, сколько седых волос нажили специалисты-криптографы, разбираясь в этом «взрыве мозга». А применить корректирующее кодирование на практике все равно нельзя, невообразимо сложно для 1966 года. Причем не только алгоритм Рида-Соломона, а любые известные науке варианты. Их, кстати, хватает – у капиталистов отличился Хемминг, в СССР зав. кафедрой Ленинградской академии связи, товарищ Финк предлагал комитетчикам сверточный код еще в конце 50-х…
262
Для физической «читабельности» применяется 14-битное EFM-слово (от английского Eight to Fourteen Modulation – модуляция восемь в четырнадцать).
Разумеется, никто не запрещает сперва создавать образ диска на ЭВМ, а уже потом «кидать» его на резец. Но для этого надо сперва подготовить блок данных в ОЗУ или на магнитном барабане, а лишь потом перенести его на «виниловую дискету». В теории вполне реально, но практика 60-х сразу ставит крест на затее. Нет тут подходящих объемов памяти, и процессорное время стоит совсем не копейки [263] . Потратить несколько часов ЭВМ ради удобства хранения данных? Спецы только пальцем у виска покрутят, да вежливо пошлют… В сад, ага.
263
Первое применение в серийном изделии код Рида-Соломона получил в контроллере жесткого диска IBM 3370 емкостью 571 Мбайт в 1979 году.
Пришлось откатиться на позорный примитив. Федор с расстройства задействовал триады, например вместо «1» – «111». Безусловно, надежность резко выросла, зато емкость упала катастрофически. Двадцать килобайт на мой взгляд попросту не стоили возни, так как влезали на полсотни метров широко распространенной перфоленты.
Поэтому опробовали более экономный вариант – навесили на блоки записываемых данных биты четности для проверки контрольной суммы, и начал записывать на пластинку сразу две копии, разнеся их на пару килогерц. Соответственно, при считывании использовался только «целый» блок. Но ничего хорошего из этого не получилось. Надежность обнаружения дефекта по одному биту оказалась недостаточной, требовалось серьезное усложнение. Вроде бы ничего страшного, задача вполне посильная технике 66-го года… Но уж слишком часто при механическом повреждении дорожки погибали сразу обе копии. В принципе, решение было и тут, достаточно один из каналов «резать» с задержкой по времени…
Однако на этой стадии мне стало окончательно понятно – дешевого и «красивого» варианта не получится. Все эти нагромождения имели смысл только совместно со сложным специализированным контроллером, в котором есть и «математика», и буферная память. По меркам текущей эпохи результатом реализации нашего затянувшегося экспромта грозил стать основательный «шкаф».
Если уж «городить огород», то лучше сразу с магнитным или оптическим диском. Там хоть перспектива
Сухой остаток напоминал анекдот. Вместо купания лошадей в шампанском облили пивом котенка. Единственный алгоритмический бонус имел горький привкус. Ранее я думал, что для копирования CD-ROM не хватает только дешевого маломощного лазера. Поэтому надеялся на быстрый прогресс после окончания работ товарища Алферова. Реальность оказалась жестокой для системного интегратора, не знавшего контроллеров с частотой ниже гигагерца. Даже на основе грампластинки нельзя сделать ничего толкового без микросхем.
Только я начал вспоминать Алферова всуе – он и сам вышел на связь, причем через самый верх, а именно крайне недовольного заминкой министра Шокина. Обещал я Жоресу Ивановичу перезванивать, но в суете забыл. Вот и огреб «обратку» от советской бюрократии. Хотя по сути ничего страшного. Не считая того, что на пути копирования лазеров выросли препятствия размером примерно с Эверест, перескочить которые при всем желании не получалось.
Поэтому будущий Нобелевский лауреат очень просил найти «еще какие-нибудь образцы для ускорения решения первоначальной задачи». В общем, на обычный русский послание переводилось куда проще. А именно «дайте ради Бога содрать что-нибудь попроще, а то начальники уже смотрят зверем, чего доброго закроют неперспективное направление к чертям собачьим».
Перспектива переться в Ленинград ради разговора не радовала. Тем более я совершенно не понимал, чем конкретно помочь ученому кроме пространных советов «брать больше, кидать дальше». Поэтому первым делом «схватился» за трубку ВЧ, благо, вопросы будут обсуждаться не сверхсекретные. В смысле, о будущем не будет сказано ни одного слова. Несмотря на примитивность советских средств связи, я уже начал превращаться в настоящего телефонного паука.
Разговор начался с обмена любезностями. Алферов поблагодарил меня за рекомендацию широко использовать для управления ЭВМ. Процессы, действительно, оказались очень быстрыми, рабочий цикл во многих фазах длился буквально секунды. Попутно рассказал, что теория гетероперехода за прошедший год рванулась вперед буквально скачком, и сулит невероятные, фантастические перспективы. В общем, «все хорошо, прекрасная маркиза, все хорошо как никогда». За исключением пустячка.
А именно, инженеры с технологами попросту не успевали за полетом мысли ученых. Причем это еще очень мягкий термин происходящему. Правильнее происходящее называть бардаком по всем направлениям работы. К примеру, пару «Днепров» пришлось срочно заменить на дорогущие PDP-7 [264] , все реально существующие в природе отечественные ЭВМ попросту не справлялась с управлением процессами. Моя надежда на БЭСМ-6 не оправдалась, Алферову этого монстра пообещали – но только в следующей пятилетке. Да еще предупредили чуть ли не в грубой форме, что адаптировать это чудо под нужды производства придется исключительно собственными силами.
264
PDP-7 – миникомпьютер Digital Equipment Corporation, в серии с 1965 года по цене 72 тысячи долларов. В рекламной брошюре 1964 года обещали 570 000 word trasferts per second, что примерно в 50 раз быстрее ЭВМ «Днепр».
Между тем процесс эпитаксии требовал не просто директивного управления. Вынь и положь реакцию в соответствии с моделью и данными, поступавшими с установки, а там есть такие прелести как торсионные весы, сверхточные термометры, показатели расхода компонентов, давление… Кстати, все это тоже пришлось закупать в разных странах за золото, ничего годного советская индустрия не могла предложить в принципе. Апофеозом стали несовместимые форматы данных, для приведения которых к одному номиналу пришлось разрабатывать отдельные схемы и алгоритмы.