Забытые гиганты: почему аналоговые компьютеры, решавшие уравнения мгновенно, проиграли цифре
«Мгновенно» — определение весьма условное, к которому мы ещё вернемся, подвергнув его жесткой ревизии. Начнем же с фундаментального исторического факта.
В 1956 году инженеры NASA проектировали пилотажный тренажер для легендарного ракетоплана X-15, способного развивать скорость до 7 махов и подниматься на 100-километровую высоту. Комплекс должен был просчитывать аэродинамику в реальном времени, реагируя на действия пилота в кабине. Ни один из существовавших тогда цифровых компьютеров с такой задачей не справлялся. Выход нашли в использовании трех аналоговых комплексов EAI PACE 231R, включавших 380 операционных усилителей, 101 функциональный генератор, 32 сервоусилителя и 5 множительных модулей. Диапазон симуляции охватывал скорости от 0,2 до 7 махов и высоты от уровня моря до 1 056 000 футов (примерно 322 км).
Иными словами, летчика готовили к штурму стратосферы на машине, в которой полностью отсутствовали двоичные нули и единицы.
Обычно подобные рассказы сопровождаются тезисами о том, будто аналоговая техника превосходила цифровую в тысячи раз, что ее преждевременно сдали в архив и что сегодня она возрождается в виде чипов для ИИ. Я встречала этот нарратив неоднократно и всякий раз спотыкалась об одно и то же противоречие: соседство манящей фразы «в тысячи раз быстрее» с непременной оговоркой «точность около 0,1%». При этом никто и никогда не пытался сопоставить эти два параметра наглядно.
Что ж, я решила восполнить этот пробел.
Принцип действия
Для тех читателей, кто заглянул сюда ради заголовка и никогда вживую не видел аналоговых вычислителей.
Возьмите усилитель с огромным коэффициентом усиления и организуйте обратную связь через резистор. На выходе получится сумматор, инвертирующий знак исходного напряжения. Замените резистор на конденсатор — перед вами интегратор, выдающий значение, пропорциональное интегралу входного сигнала по времени. Добавьте потенциометр — и вот готовый умножитель на константу.
Вот и весь базис. Сложение, масштабирование, интегрирование и инверсия. Этого арсенала достаточно для моделирования практически любого обыкновенного дифференциального уравнения. Буквально сборка схемы штекерами на коммутационной панели, напоминающей старинный коммутатор телефонной станции.
В этом кроется кардинальное отличие от цифры. Цифровая система вычисляет уравнение пошагово, дискретизируя время и находя значения в узловых точках. Аналоговая машина уравнение не «решает» — она сама им является. Напряжения в цепях изменяются в строгом соответствии с математическими законами моделируемого процесса, поскольку схема изначально спроектирована под них. Никаких тактовых импульсов и итераций: сигнал просто распространяется по проводникам со скоростью срабатывания элементной базы.
Отсюда и берется «мгновенность». Точнее было бы сказать «в режиме реального времени»: установка функционирует в темпе исследуемого объекта. Масштаб времени при желании можно сжимать или растягивать — скажем, у отечественной МН-14 период интегрирования настраивался в диапазоне от 1 до 10 000 секунд.
Арифметика, решившая судьбу технологии
Теперь обратимся к точности — пожалуй, к самому ключевому моменту.
В цифровой архитектуре точность задается битностью. Хотите повысить прецизионность вдвое — добавьте один бит, один триггер в регистр. Затраты ресурсов растут линейно: N бит требуют пропорционального усложнения схемы.
В аналоговых устройствах точность всецело определяется качеством компонентов. Резистор с допуском 0,1% гарантирует именно эту погрешность, и никакие ухищрения не позволят преодолеть данный барьер. Переведем проценты в привычные биты для наглядности.
|
Погрешность |
Соотношение шкалы и ошибки |
Эквивалент в битах |
|---|---|---|
|
1% |
100 |
6,6 |
|
0,1% |
1 000 |
10,0 |
|
0,01% |
10 000 |
13,3 |
|
0,001% |
100 000 |
16,6 |
Проверяем: 2¹⁰ = 1024, а обратная величина 0,001% равна 1000. Все сходится.
А теперь взглянем на общую картину. Типичные серийные машины работали в диапазоне точности 0,1–1%, передовые — достигали 0,01%. Преодолеть порог в 0,01% удавалось крайне редко, о чем единогласно свидетельствует профильная литература. Иными словами, потолок составлял тринадцать бит.
Для контекста: интегратор упомянутой МН-14 давал погрешность в пределах 0,3% от стовольтовой шкалы за 100 секунд, что эквивалентно примерно 8,4 бита. Обычный настольный калькулятор образца 1974 года оперировал восемью-десятью знаками, что соответствует 27–33 битам.
Чтобы прибавить аналоговой схеме хотя бы один бит, требовались компоненты вдвое точнее. Каждый следующий шаг удваивал жесткость требований. Иными словами, стоимость точности росла экспоненциально, тогда как в цифровой среде — линейно. Эти две кривые были обречены пересечься, вопрос заключался лишь во временных рамках.
Для наглядности представьте высококачественный современный резистор с температурным коэффициентом 10 ppm на градус. Стоит помещению нагреться на десяток градусов, как сопротивление уплывает на 100 ppm (10⁻⁴). Этого достаточно, чтобы полностью исчерпать весь ваш тринадцатибитный запас точности из-за банального сквозняка. Именно поэтому прецизионные аналоговые комплексы требовали термостатированных помещений и постоянного присутствия инженера-калибровщика.
Недостоверность архивных данных
Изучая характеристики советского парка вычислительной техники, я вновь столкнулась с противоречиями в источниках.
Возьмем МН-7 — настольный комплекс 1955 года разработки ОКБ-245 под руководством В. Б. Ушакова. В одном документе указано, что решающий блок насчитывал 16 операционных усилителей. В другом, не менее авторитетном источнике, фигурирует рабочее напряжение 100 В и всего 6 усилителей. Разница принципиальная, поскольку речь идет об оборудовании совершенно иного класса.
Полагаю, где-то банально потерялась цифра, но верифицировать это сегодня уже невозможно.
Тем не менее, устоявшаяся линейка выглядела следующим образом:
|
Модель |
Год |
Порядок уравнений |
Особенности |
|---|---|---|---|
|
МН-2 |
1954 |
6 |
секционная архитектура |
|
МН-7 |
1955 |
6 |
настольная; для сложных задач объединялись в комплексы |
|
МН-8 |
1955 |
32 |
первая отечественная высокопроизводительная прецизионная машина |
|
МН-11 |
1959 |
9 |
автоматизированный поиск решений, периодичность до 100 Гц |
|
МН-14 |
1960 |
20 |
прецизионный класс, ±100 В |
Обратите внимание на МН-7: для усложнения моделей несколько машин просто связывали кабелями. Масштабирование аналоговых систем выглядело именно так — привоз дополнительных блоков и коммутация шнуров, подобно тому, как это делали инженеры NASA с установками EAI.
Был ли злой умысел?
Среди комментаторов популярна теория заговора: мол, аналоговую отрасль задавили искусственно ради продвижения дорогого цифрового «железа».
Давайте проверим эту гипотезу. Если дело крылось исключительно в маркетинге, должна была сохраниться юрисдикция, где аналоговое направление уцелело. Однако рынок был глобальным: EAI в Штатах, Solartron в Великобритании, Hitachi в Японии, а в СССР — пензенские и московские разработки. Отечественные инженеры успешно конкурировали с мировыми лидерами: например, комплекс АВК-2 по стабильности не уступал лучшим зарубежным аналогам (EAI-8800, Hitachi-505, Solartron-7), хотя советская элементная база уступала импортной по погрешностям в 5–10 раз. Это выдающееся инженерное достижение — компенсировать несовершенство деталей грамотной схемотехникой.
И чем все закончилось?
Аналоговые вычислители сошли со сцены повсеместно и практически одновременно. В 1970-х их потеснили гибридные системы, где аналоговая часть выполняла расчеты, а цифровая осуществляла контроль. К 1980-м гибриды удерживали позиции лишь в оборонной сфере и авиации: компания Marconi комплектовала системы Starglow из трех аналоговых EAI 8812 и цифровой EAI 8100. В нидерландском институте TNO гибридный комплекс задействовали при доработке торпед Mk37 вплоть до 1992 года, пока цифра окончательно не монополизировала расчеты.
Никаких заговоров Госплана. Просто в определенный момент цифровая техника научилась просчитывать траекторию полета быстрее реального времени, и единственное безоговорочное преимущество аналога испарилось, обнажив его изначальную ахиллесову пяту — низкую точность.
Почему аналоговым вычислениям не место в кремнии
Чтобы абстрактные рассуждения о «возрождении аналоговых ПК» обрели почву, следует спуститься на уровень физической элементной базы.
Аналоговым системам чужды транзисторы в их привычном цифровом амплуа. Им требуются прецизионные резисторы, конденсаторы и усилители с минимальным дрейфом нуля. А теперь посмотрим, как с этими компонентами обходится прогресс полупроводниковой индустрии.
Точность транзистора подчиняется закону Пелгрома: разброс параметров двух идентичных элементов обратно пропорционален корню из площади их кристалла. Стремитесь вдвое снизить разброс ради заветного дополнительного бита? Готовьтесь увеличить занимаемую площадь вчетверо. Каждый новый бит точности требует пропорционального расширения кремниевой площади, тогда как в цифре он обходится всего одним дополнительным триггером.
Рабочие напряжения неуклонно снижаются. Классические аналоговые машины оперировали диапазоном ±100 В, поскольку динамический диапазон напрямую зависит от соотношения шкалы и шумов. Современные чипы питаются от скромного вольта, тогда как физическая природа шумов остается неизменной. Время работает против аналога.
Пассивные компоненты (R и C) не поддаются масштабированию. Если транзисторы при уменьшении геометрии становятся совершеннее, то резисторы и конденсаторы деградируют: уменьшение размеров ведет к росту погрешностей (все тот же закон Пелгрома).
Суммируя эти факторы, мы получаем однозначный ответ: универсальным аналоговым компьютерам не суждено вернуться.
Неожиданный ренессанс
Тем не менее, аналоговый подход переживает второе рождение — но совершенно в иной ипостаси. Речь идет о матричном умножении непосредственно в структуре памяти.
Концепция предельно элегантна. Подавая напряжение на строки массива памяти, мы получаем токи на столбцах, пропорциональные произведениям напряжений на проводимости ячеек (закон Ома), которые суммируются на выходе (закон Кирхгофа). Фактически происходит умножение матрицы на вектор без единой затраты тактов и без перемещения данных между памятью и процессором.
Для искусственных нейросетей эта операция является главным пожирателем времени и энергии, львиная доля которой уходит именно на транспортировку весов. Аналоговые матрицы устраняют этот изъян.
Но есть важный нюанс: метод эффективен исключительно при низкой точности. Нейросети превосходно функционируют при 4–8 битах на один вес. Вспомним таблицу из начала статьи: восемь бит соответствуют погрешности порядка 0,4% — ровно тому самому рубежу, который полвека назад поставил крест на классических аналоговых машинах.
Аналог вернулся туда, где высокая точность оказалась избыточной.
Масштабы впечатляют: чип IBM образца 2023 года насчитывал 35 млн ячеек энергонезависимой памяти (модель на 17 млн параметров), тогда как GPT-3 оперирует 175 миллиардами. Разрыв колоссален. Тем не менее, стартапы вроде Mythic привлекают миллионные инвестиции, а гиганты вроде TSMC экспериментируют с многослойными аналоговыми структурами, обещая многократное снижение энергопотребления.
Правда, за этот триумф приходится платить: на выходе из аналоговой матрицы неизбежно дежурит АЦП, преобразующий токи обратно в цифру. Он поглощает львиную долю достигнутого выигрыша в производительности, и именно здесь сейчас разворачивается главная инженерная борьба.
Исторический тупик
Изначально я пыталась отыскать первоисточник крылатой фразы о том, что «аналоговый компьютер в тысячи раз быстрее цифрового». Безрезультатно. Встречаются лишь обтекаемые формулировки вроде «высокая скорость обусловлена распространением сигнала по цепи», что абсолютно верно физически, но лишено конкретного математического смысла. Быстрее какой именно цифровой системы? Какого года выпуска? На какой задаче?
Поэтому никаких сенсационных заявлений в стиле «аналог быстрее в 1000 раз» не будет. Корректная формулировка звучит скромнее: в 1956 году для расчетов в реальном времени альтернатив аналоговой технике не существовало, но к середине 70-х годов необходимость в ней отпала.
Эпилог
Призывать к возврату прошлого бессмысленно. Проектировать дифференциальные уравнения на стовольтовых шкалах, коммутируя шнуры и тратя часы на калибровку — сомнительное удовольствие.
Обидно лишь за инженеров 1950-х, искренне веривших, что они создают универсальный вычислительный инструмент, и пытавшихся конкурировать с цифровой парадигмой на чужом поле точности и универсальности. Выиграть там было невозможно из-за математики экспоненциального роста. Настоящий триумф ждал их в совершенно иной плоскости — там, где абсолютная точность оказалась не нужна, а фундаментальные законы физики задействованы напрямую.
Аналоговая установка никогда не «вычисляла» в привычном понимании. Она моделировала реальность, создавая уменьшенную физическую копию исследуемого объекта. Когда цифра научилась просчитывать полет самолета быстрее самого самолета, надобность в материальных копиях отпала.
Сегодняшние чипы для нейросетей повторяют этот путь, выступая моделью не летательного аппарата, а матрицы весов. И эта парадигма просуществует ровно до тех пор, пока цифровая архитектура не научится перемножать эти матрицы с еще меньшими затратами.
ИИ превратит интернет в Вавилонскую библиотеку, но в худшем исполнении
Электрогитара «Ласточкин хвост», ред. 2
Реально ли дата-центрам полностью обойтись без воды?
Код как борьба. Краткая история IT. Часть 6. Ричард Столлман
На чём кодили советские гики? Часть 3
Как создавали модели дорожного движения до появления искусственного интеллекта
Алгоритмический трейдинг: поиск закономерностей в шуме без переобучения моделей
Как глобальное потепление изменит наш рацион?