Глава 53 Обрезка и лазейки

Март начался не с капели.

Со сметы.

Плотная пачка серой бумаги с гербом министерства легла на стол Седых утром, к обеду перекочевала к Михалычу, а к трём часам оказалась перед Алексеем. Как всегда, по цепочке.

— Читай, — сказал Иван Михайлович и потёр виски. — Ты у нас молодой, глаза ещё не испорчены.

Алексей взял кипу. Бумага пахла типографской краской и чем‑то кислым — бухгалтерией.

«В целях сокращения номенклатуры и снижения материалоёмкости… довести количество интегральных микросхем в составе изделия БВП‑1 до…» — он пробежал глазами цифры и мысленно присвистнул.

Минус семь корпусов К155 на плату ядра и ОЗУ. Минус два — на клавиатуру. Минус один разъём в корпусе.

Сверху приписка от какого‑то заместителя по экономике: «Считаем возможным сохранить функционал за счёт рационализации схемных решений и перекладывания функций на программную часть».

Красиво сказано. В двадцать первом веке это назвали бы «cost-down review». Здесь — «обрезка по смете».

— Ну? — спросил Михалыч.

— Ну, — Алексей положил лист на стол, — нас любят. Нас хотят облегчить. Чтобы мы лучше летали.

— Мы и так уже как жаворонки, — буркнул тот. — Ладно. Собирайся. Пойдём резать.

КБ‑3 гудело, как всегда: кто‑то стучал по пишущей машинке, кто‑то ругался с кульманом, кто‑то пил чай и обсуждал очереди за колбасой.

Люба сидела у своей чертежной доски, опираясь локтями о столешницу. Перед ней на кальке — знакомая плата ядра. Уже с новыми правками: дорожки потолще, конденсаторы «шахматкой», всё аккуратно и живо. В левом углу красным карандашом надпись: «Ред. 3».

Теперь к ней прилетело: «минус семь корпусов».

— Смотри, — сказала она, едва Алексей подошёл. — Если убрать вот этот счётчик ИЕ7 и вот этот дешифратор, — она обвела карандашом два прямоугольничка К155, — мы теряем один режим в формульной части. Условный переход по признаку отрицательного результата уйдёт.

— А если убрать не их? — осторожно спросил он.

— А кого? — Люба чуть приподняла брови. — Самотест? Детектор питания? Буфер для ВКУ? Или, может, выкинем половину клавиатуры и будем считать только на цифрах?

Она говорила спокойно, но карандаш шуршал по кальке нервно.

— В смете прямо написано, — она ткнула пальцем в лист, — «допускаем перекладывание части функций на программный режим табличных формул». То есть железо резать, а потом Евгению и тебе пусть будет весело.

Слово «весело» прозвучало как «кроваво».

Алексей посмотрел на плату. Семь корпусов К155 — это не так много, если смотреть из 2026 года, где такие вещи прятались внутрь одного чёрного квадратика. Но здесь каждый корпус — это место, тепло, пайка, брак.

— Подожди, — он присел на стул. — Давай сначала поймём, без чего мы точно не можем жить.

Он на автомате начал перечислять:

— ЦУБ со своей микропрограммой — святое. Самотест — святое. Датчик питания — святое. Клавиатура с антидребезгом — я бы тоже не трогал: школьники всё равно доломают, если будет дребезг. Что остаётся?

— Формулы, — резюмировала Люба. — И то, что ты сам назвал «лишними крыльями». Дополнительные входы‑выходы.

Слово «крылья» она произнесла без улыбки.

— Я тебе набросала три варианта, — сказала она. — Первый — как хотят они: выкидываем половину логики формул, убираем разъём ХР‑3 совсем, забываем про служебный порт. Второй — по минимуму: снимаем расширенные ветвления, убираем один буфер по ВКУ, разъём оставляем. Третий — по‑нашему: разъём снаружи убираем, внутри оставляем площадки, логика остаётся, но делаем часть ветвлений в программе Евгения. Платим ночным временем машзала и его нервами.

— И сколько корпусов мы выигрываем в третьем варианте? — спросил Алексей.

— Пять, — сказала Люба. — Ещё два надо где‑то найти. Или выбить у снабжения, — добавила она тихо, как в сказке про золотую рыбку.

Игорь, как всегда, появился незваным, но очень вовремя.

Он вошёл из коридора, отряхнул с плеч снег — март как март, на улице всё ещё сыпалось что-то белое и мокрое — и, увидев кальку на столе, присвистнул.

— О, — сказал он. — Наш блок управления в нижнем белье. Что, опять сверху письмо?

— Смета, — Люба кивнула на лист. — Минус семь корпусов. Задача на три страницы, решение — на одной, всё по ГОСТу.

— Любят нас, — Игорь покачал головой. Подошёл ближе, наклонился над платой. Его пальцы чуть дрожали — совсем не от холода. — Подождите. Это что?

Он ткнул карандашом в левую часть схемы, там, где рядами шли контакты ХР‑3.

— Здесь что было вчера? — спросил он уже без улыбки.

— Вчера здесь была мечта, — сухо сказал Алексей. — Сегодня здесь смета.

— Не драматизируй, — Люба попробовала разрядить обстановку. — Вчера здесь был служебный интерфейс. Для наладки. Сегодня его предлагают считать излишним.

— Излишним, — Игорь повёл плечами. — Значит, лишнее — это возможность подцепить датчик, самодельный стенд, ещё что‑то. Конечно, зачем детям и кружкам что‑то, кроме таблицы умножения.

Слова ударили слишком точно. Может, потому, что эти мысли уже крутил в голове сам Алексей.

— Не посягай на священную смету, — мрачно пошутил он. — Там сверху знают лучше, сколько микросхем нужно детям для счастья.

Игорь не усмехнулся.

— Лёша, — он впервые за время разговора назвал его по‑человечески, не по‑инженерски, — если мы сейчас убираем отсюда нормальный разъём, мы потом себе сами голову будем ломать. Ты понимаешь? Даже не мы. Какой‑нибудь паренёк в Калуге, у которого в кружке появится «Сфера». Он захочет не только таблицу умножения, он захочет прикрутить туда что‑то. А куда?

Он бросил взгляд на чертёж так, будто это была карта, которую собирались сжечь.

Алексей вдруг очень ясно увидел картинку из другой жизни: школьная лаборатория, БК‑0010, крышка снята, над платой наклонился мелкий, рыжий пацан. А рядом — статья из «Радио‑86РК», где автор благодарит разработчиков за то, что они оставили на плате лишний разъём. «Спасибо, товарищи, за контактные площадки…».

Тогда эти площадки казались просто дырками. Теперь — лазейкой.

— Понимаю, — сказал Алексей.

Он уловил то, что говорил Игорь между строк: сейчас они могли одним красным росчерком отрезать будущее всей экосистемы вокруг этой машины. И обратно это не пришить.

— Хорошо, — он вздохнул. — Давай думать не «разъём — или нет», а «как это выглядит на бумаге».

Люба подняла на него взгляд.

— То есть? — спросила она.

— Официально, — Алексей постучал по смете, — у нас в корпусе два разъёма: ВКУ и «учительский». Это они ещё терпят. Всё остальное — под нож. Хорошо. Корпус — закрытая система. Но печатная плата… — он перевёл взгляд на кальку. — Печатная плата — штука гибкая. На ней могут быть… как это правильно… «контрольные точки».

Игорь коротко фыркнул.

— Служебные контакты для наладки, — подсказал он. — Точки измерения. Доступы для осциллографа. Это святое.

Люба уже начинала понимать.

— Ты хочешь оставить на плате выводы ХР‑3, но назвать их «контрольными точками»? — уточнила она.

— Я хочу, — сказал Алексей, — чтобы радиолюбитель, сняв крышку, увидел не голую плату, а набор аккуратных площадок с подписями. И чтобы любой инженер смог сказать: «Да, это контрольные точки для проверки сигналов ЦУБ» — и не покраснеть. А тот парень из Калуги — чтобы припаял туда свой самодельный блок и сделал ещё что‑то хорошее.

Он замолчал. В КБ стало слышно, как щёлкают реле где‑то в другой комнате и как скребёт карандаш у соседнего стола.

— Нам тогда нужно, — медленно произнесла Люба, — убрать из спецификации сам разъём, корпус, гайки, всё железо. Оставить только полигоны и отверстия. В ТУ по плате — оформить как «контрольные точки для диагностики и настройки».

— А в паспорте — молчать, — сказал Алексей. — Нет слова — нет функции.

Игорь посмотрел на него с таким уважением, будто тот только что придумал вечный двигатель.

— Это уже не контрольные точки, — сказал он. — Это завещание. Только аккуратное.

— А вы что скажете, Иван Михайлович? — спросил Алексей. — Формально мы требования сметы выполняем. Фактическое наличие меди на плате смету не утяжеляет. Разъём не устанавливаем. Без вашего слова это будет хитрый саботаж.

— Не льсти, — хмыкнул Михалыч. — Саботаж — это когда эшелон под откос. А у нас — так, мелкое хулиганство.

Он подошёл ближе, наклонился над калькой.

— Контрольные точки, говоришь, — произнёс он. — У нас от этих контрольных точек уже вся страна в шрамах. Но идея здравая. В документации — платформы под проверку. В корпусе — глухая стенка. Кто не знает, тот туда не полезет. Кто знает — найдёт.

Он посмотрел на Любу.

— Нарисуешь так, чтобы проверяющий не упал в обморок? — спросил он.

— Нарисую, — тихо сказала она. — Только… если мы так оставляем, нам придётся ещё сильнее зашить всё в бумагу. Тестовые точки — значит, схема контроля, описание, где и что мерить.

— Это мы с Натальей подумаем, — отмахнулся Михалыч. — Напишем «для специалистов». Главное, чтобы у них там наверху было ощущение, что мы максимально обезопасились.

— А наверху сейчас ощущение, — Алексей поднял смету, — что мы «рационализируем». Режем микросхемы, уплотняем схемы, всё как они любят.

— Вот и рационализируй, — сказал Иван Михайлович. — Вырежешь пару вентилей из формульной части — Евгений тебя три ночи потом будет вспоминать. Но жить можно. А вот разъём выкинешь — он тебя потом не вспомнит. Некому будет.

Наталья Сергеевна отреагировала на слово «контрольные точки» предсказуемо.

— Вы хотите, чтобы я это как назвала? — спросила она, приподнимая очки на лоб. На столе перед ней лежали смета, калька с правками Любы и листок бумажки с корявой надписью Алексея «служебные площадки».

— «Площадки контроля сигналов для целей испытаний и диагностирования», — предложил Алексей.

— Слишком честно, — тут же отрезала она. — Слово «сигнал» и слово «диагностика» в одном предложении — это сразу будет вопрос. Можно так: «площадки для контроля параметров цепей при настройке и ремонте». Уже лучше. И добавить «для специалистов».

— И нигде не писать, что к ним можно что‑то подключать, — подал голос Игорь.

— Это само собой, — Наталья усмехнулась. — С нашим подходом к технике к ним, скорее, подключат чайник.

Она пролистала смету ещё раз.

— По микросхемам, — сказала она, — я вам сильно помочь не могу. Сверху задано «минус семь». Я могу только объяснить, что мы уже сделали: убрали одну ступень ветвления в формульной части, часть логики переложили на софт, разъём внешний сняли, но площадки оставили — и при этом не тронули блок защиты по питанию. Это аргумент.

— Напишите так, чтобы это звучало красиво, — попросил Алексей.

— Я всегда пишу красиво, — Наталья чуть высокомерно вскинула подбородок. — Вопрос в том, что вы там нарисуете. Я на чудеса не подписывалась.

Она остановилась взглядом на Игоре.

— А вы перестаньте так смотреть, будто у вас лично отрезают уши, — сказала она. — Вам оставляют потенциальный райский сад для радиолюбителей. Просто в паспорте об этом ни слова.

— Я просто привык, — Игорь развёл руками, — что если сверху говорят «облегчить», то сверху имеют в виду «обезглавить».

— В данном случае, — вмешался Михалыч, который сел в уголке и что‑то помечал в своём блокноте, — мы снимаем аппендиксы, а не голову. И оставляем в теле пару лишних нервов, которые ещё пригодятся.

— Мне не нравится, как вы говорите о моей плате, — фыркнула Люба. — Это не аппендиксы. Это предусмотренные производителем интерфейсы.

— Тем более, — вздохнул Михалыч.

Наталья взяла карандаш и зачеркнула в смете один пункт, дописав на полях: «Функция реализована программно (режим табличных формул)».

— Евгений меня потом убьёт, — заметил Алексей.

— Пусть сначала подпишет журнал использования машинного времени, — спокойно сказала Наталья. — Тогда будет моральное право.

Евгения нашли в курилке. Он, как обычно, стоял у приоткрытого окна, выпускал дым и глядел на слежавшийся снег во дворе НИИ.

— Сколько? — спросил он, даже не повернувшись. — Сколько микросхем у тебя забрали, дорогой ведущий?

— Семь, — сказал Алексей. — Две перекладываем на тебя.

— Опять, — вздохнул Евгений. — Вечно вы так: «железо не может, пусть программа поработает».

Он затушил окурок, повернулся, опёрся плечом о стену.

— Задача?

— Убираем один уровень ветвления в формульном режиме, — сказал Алексей. — Те ветки, что шли «по знаку» промежуточного результата, придётся делать на алгоритмическом языке. Никаких аппаратных коротких гонок.

— То есть вместо одного такта микрокода я теперь буду крутить цикл, — резюмировал Евгений. — Суммарно получу где‑то плюс сто двадцать микросекунд к реакции. А бухгалтеру в ЖЭКе всё равно. Ладно. Жить можно.

— Зато мы спасаем служебные площадки, — добавил Алексей.

Евгений какое‑то время молча смотрел на него.

— Ты странный, Морозов, — наконец сказал он. — С одной стороны, ты режешь железо, как хирург: «это выкинем, это накостылим программой». С другой — оставляешь под каждым швом нитку, чтобы кто‑нибудь мог его подраспороть.

— Это называется «обратная совместимость», — усмехнулся Алексей.

— Это называется «не сжигать мосты», — поправил его Евгений. — Ладно. Пиши мне свой список ветвлений, которые хочешь отдать на растерзание формульному режиму. Я на них потом буду показывать студентам: «Смотрите, дети, это тот случай, когда двоичная логика не спасла, но помогло терпение».

Дни пошли по новой колее.

Люба сидела над кульманом и вычерчивала плату «Редакция 3 — Сметная»: дорожки чуть толще, логика формул — чуть тоньше, но контрольные площадки под ХР‑3 аккуратно лежали в нижней части платы. Никаких обозначений разъёма, только номера «КТ‑1…КТ‑16». Для «контрольных точек». Для осциллографа. Для кого‑то другого.

Наталья по ночам правила ТУ, выкидывала лишние слова, добавляла нужные. Писала длинные фразы про «снижение материалоёмкости», «рациональное использование элементной базы», «перенос функционала в программный режим табличных формул», а в конце абзаца аккуратно вставляла: «при этом сохранён состав схемы контроля ОЗУ и цепей контроля питания».

Михалыч ходил по КБ с видом человека, который одновременно лепит снеговика и чинит паровоз: то помогал Любе считать корпуса, то шёл к Седых объяснять, почему эти «контрольные точки» — не саботаж, а забота о наладке.

Седых ворчал, но подписывал. Ему показывали смету: «минус семь корпусов». Ему показывали чертёж: «вот, убрали». Ему показывали формулировки Натальи: «перенесено в программный режим». Его совесть и страх за кресло боролись, но в итоге побеждала картинка: школьный кабинет, проверяющий из министерства и директор школы, который потом пишет благодарственное письмо. Не за «разъёмы», а за надёжность.

В конце марта «Редакция 3 — Сметная» висела на стене у кульманов, аккуратно под калькой. Внизу, под подписью «Разработал — Морозов», «Проверил — Ильин», «Утвердил — Седых», было ещё одно крошечное слово карандашом: «Запас». Без фамилии.

Саша Птицын, проходя мимо, остановился, прищурился.

— Это что? — ткнул он.

— Это на твой счёт, — сказал Алексей. — Если через десять лет какой‑нибудь Птицын‑младший решит расковырять «Сферу» и прикрутить к ней что‑нибудь своё, чтобы он ругался на нас немного меньше.

— Через десять лет, — Саша засмеялся, — через десять лет мы уже будем делать ЭВМ на пальце.

— Может быть, — сказал Алексей. — А может — нет. Но даже если будем, вот эта железка всё равно останется где‑нибудь в школьном шкафу. И если у неё внутри будут не только дорожки по смете, но и пара лишних площадок, — он кивнул на чертёж, — мне будет легче.

В окне КБ тускло светился мартовский вечер. На дворе подтаявший снег превращался в кашу. Внутри — на столе — ровной строкой лежали новые платы с аккуратными «КТ‑1…КТ‑16» вдоль края.

Пока это были просто кружочки меди. Будущим предстояло решить, превратятся ли они в «служебные контакты» или в двери.

Алексей достал из тетради свежий лист и написал сверху: «Лазейки. Редакция первая». Потом зачеркнул слово и написал более прилично: «Возможности расширения».

На всякий случай.

Загрузка...