Павло Щербуха

Logo

Персональна освітня сорінка

Розробка на Node.js, VUE.js, Python, IBM Integration Bus (App Connect Ent) , ORACLE PL/SQL
2 September 2026

Чому бортовий комп'ютер «Бурана» не можна порівнювати з IBM PC (і навіть із Space Shuttle)?

by Pavlo Shcherbukha

Чому бортовий комп’ютер «Бурана» не можна порівнювати з IBM PC (і навіть із Space Shuttle)?

Коли заходить мова про радянський космічний човник «Буран», у мережі часто з’являються дві крайнощі:

Але порівнювати космічний БЦВК «Бисер-4» з універсальними комп’ютерами за мегагерцами чи мегабайтами — це глибока інженерна помилка. Це прилад, а не персоналка. І порівнювати його потрібно за досконалістю алгоритмів та живучістю. У своєму новому блозі я спробував розібратися в архітектурних муках та технологічних компромісах тієї епохи.

Підставою до написання цього блогу стало очь це відео «Буран» — наше чудо инженерной мысли, которое выбросили на свалку. Компьютер Бурана , що попалося на youtube. Я його подивився і якось стало таке відчуття що порівняння компютерів Буран та Шатл не релевантне і відповідно проривні висновки для радянського екземпляру не правильні. І почав трошки копати. Щоб довго не описувати, зарзу наведу коротку порівняльну таблицю.

Характеристика БИСЕР‑4 («Буран») IBM AP‑101 («Шаттл»)
Тип Спеціалізований бортовий комп’ютер, розроблений у НВО «Молнія». В одиничному (ну може в кількох) екземплярах, випущений з нуля саме для цього проекту Універсальний комп'ютер, адаптований IBM для авіоніки і доопрацьований для «Шаттла». Універсальні випукалися з 1965 по 1978, а в варіанті як для Шатла з 1967 по 2011
Елементна база Секційні мікропроцесори серії К583 (ІІЛ-технологія), прямим аналогом за призначенням та технологією є AMD Am2900, а за принципом побудови — ціла група західних мікросхем, що випускалася з середини 1970-х до початку 1980-х років. Архітектура на базі mainframe IBM System/360 (серія System/4 Pi)
Розрядність 32‑біт 32‑біт
Продуктивність ~250 тис. оп/с ~325 тис. оп/с
Пам’ять До 64 KB оперативної пам'яті на магнітних кільцях. Та постійна пам'ять на магнітних кільцях, де були прошиті мікропрограми ~424 КБ оперативної пам'яті + магнітна стрічка, як постійна пом'ять
Відмовостійкість 4 синхронних канали (за принципом мажоритування 3 з 4, далі 2 з 3) 4 синхронних канали + 1 повністю незалежний резервний (BFS)
Автоматизація Повністю автоматична посадка Автоматичний політ, але посадка вручну
Програмування ПРОЛОГ/ ПРОЛ-2/ ДИПОЛЬ / ДРАКОН HAL/S (High-order Assembly Language for Shuttle), на базі мови FORTRAN
Операційна система Відсутня. Автомат станів часової петлі (time loop) завантажує операційну систему FCOS Flight Control Operating System (Операційна система управління польотом). FCOS для Шаттла стала еволюційним піком розвитку військового авіаційного софту, який IBM створювала з 1960х років. Відпрацювала всі 133 місії Шатла і прожила до 2011 року.

Роздуми щодо комп’ютерної системи «Бурана», які вдалося вияснити, та власні коментарі

Архітектура та апаратна частина

БЦВК «Бисер-4»: Система будувалася на спеціалізованих 32-розрядних обчислювальних машинах «Бисер-4» (розробка НПЦАП ім. М. Пілюгіна). 4-кратне синхронне резервування: На борту працювали 4 паралельні обчислювальні канали. Усі чотири машини одночасно виконували один і той самий код та обробляли однакові дані від датчиків. Мажоритарна логіка (“голосування”): Результати обчислень порівнювалися між собою. Якщо один із комп’ютерів видавав збійний результат, логіка виключала його з контуру управління без переривання виконання завдання. Система зберігала працездатність навіть при відмові кількох інших комп’ютерів. Тобто працює, доки зберігається кворум голосування 3 з 4 або 2 з 3 комп’ютерах. Ну, як на партійних зборах. Правда, що робити, коли вийде з ладу судя - питання відкрите.

Програмне забезпечення та мови розробки

Елементна база (мікросхеми K583 / K588)

У 1980-х роках у СРСР не могли масово виготовляти надійні монолітні 32-розрядні кристали процесорів космічного класу. Для створення БЦВК «Бисер-4» була потрібна висока обчислювальна потужність у 32 біти, виняткова радіаційна стійкість та мінімальне енергоспоживання. Тому розробники пішли шляхом створення секційної (разрядно-модульної) архітектури (Slice architecture), обравши мікропроцесорний комплект серії К583.Технологія І²L (Integrated Injection Logic): На відміну від стандартної ТТЛ-логіки, інтегрально-інжекційна технологія К583 мала унікальну щільність пакування елементів на кристалі, низьке тепловиділення та, головне, високу стійкість до космічного випромінювання.

БЦВК як системний комплекс та логіка резервування

Сам «Бисер-4» — це не просто процесор, а бортовий цифровий обчислювальний комплекс (БЦВК), що складався з чотирьох паралельних обчислювальних каналів (субмашин). На відміну від звичайних ЕОМ, він мав сувору гарвардську архітектуру загального призначення. Пам’ять команд (ПЗП) та пам’ять даних (ОЗП) були фізично розділені окремими шинами. Це гарантувало, що жоден випадковий збій чи радіаційне наведення в оперативній пам’яті не зможе затерти або модифікувати саму польотну програму. БЦВК мав власні контролери введення-виведення для зняття даних з датчиків та видачі команд на кермові приводи. Головним завданням чотириканальної системи було повне нівелювання як апаратних відмов (виходу з ладу деталей), так і збоїв через іонізуюче космічне випромінювання.

Розглянем комп’ютер IBM AP-101 з Шатл.

Архітектура та апаратна частина

Програмне забезпечення та мови розробки

Елементна база

БЦВК як системний комплекс та логіка резервування

Висновок

«Порівнювати БЦВК “Бисер-4” з IBM AP-101 чи, тим паче, з домашніми ПК за частотою процесора — це все одно, що порівнювати цифровий медичний кардіостимулятор зі смартфоном на Android. Смартфон швидший і має більше пам’яті, але кардіостимулятор працює без перезавантажень 10 років і рятує життя завдяки бездоганному алгоритму. “Бисер-4” був саме таким приладом. І його велич — не в мікросхемах, а в логіці управління, яка дозволила роботу самостійно перехитрити шторм на Байконурі».

Post Scriptum 1

Хоча, є один елемент який можна порівнювати. А порівнювати можна пам’ять. Оперативна пам’ять в обох обчислювачах була магнітна. На феритових кільцях. Чому феритова? Та тому що вона стійка до іонізуючого випромінення і енерго не залежна.
В СРСР магнітна пам’ять, на феритових кільцях, випускалася ще з другої половнни 1960х років і в не змінному вигляді дійшла до Бурана. Під неї випускалися зі спеціальних феритів кільця діаметром до 3 міліметрів і через ці кільця пропускалися тоненькі мідні дроти. Модуль пам’яті був кубом зі стороною мабуть 20 сантимертів в якого з кожної грані виходила купа контактів. Всі ці куби прошивалися вручну жінками під мікроскопами (їх офіційно називали «прошивальниці»). Коли це оперативна пам’ять - це ще нічого. Там всі модулі стандартні і прошивка типова. Але в “Бисер-4” і постійна пам’ять мікропрограм була зібрана також на магнітній пам’яті. А ось тут криється те саме технологічне пекло, тому, що прошивка під програму не стандартна. Кожна зміна коду ДРАКОН чи ПРОЛ-2 для нової прошивки «Бисера» вимагала фізичного виготовлення нової металевої матриці та тижнів ручної праці «прошивальниць» під мікроскопом. Це пояснює, чому софт «Бурана» «заморозили» задовго до старту.

В IBM AP-101 тільки оперативна пам’ять була феритовою. Прошивка там серійна, типова, так вони ще і шилися машинами (станками). А постійна пам’ять була на 2 магнітних накопичувачах (грубо кажучи магнітофонах). Під час польоту Шаттла магнітофон (MMU) використовувався тільки як жорсткий диск для початкового завантаження програми чи зміни фаз пльоту. Сам процесор AP-101 не читав команди безпосередньо зі стрічки в реальному часі — він завантажував їх у феритову ОЗП, і вже з ОЗП виконував код.

Тут можна сказати , що радянські військові та космічні стандарти вимагали, щоб система мала zero boot time (миттєву готовність при подачі живлення) і 100% гарантію від витирання коду під час ядерного спалаху або прольоту через радіаційні пояси Землі. Магнітна стрічка на Шаттлі розглядалася радянськими конструкторами як «крихка механіка з рухомими частинами», яка може заклинити від вібрацій чи перевантажень. Але, на мій погляд причина крилася в іншому. У СРСР вміли проектувати процесорну логіку та алгоритми, але як тільки справа доходила до прецизійної точної механіки (механізмів протягування стрічки, прецизійних магнітних головок, дисків та лакованої майларової плівки) — радянська промисловість потрапляла в технологічну прірву.

У США стрічкові накопичувачі (типу IBM 729) ще у 1950-60-х роках стали стандартом. Секрет полягав у трьох речах:

У СРСР цивільна й навіть обчислювальна стрічка (наприклад, для ЕС ЕОМ) була жахливої якості. Вона опадала «іржою», забивала головки за кілька годин роботи, розтягувалася та рвалася. А аерокосмічні стрічкові накопичувачі для Space Shuttle (MMU — Mass Memory Unit) вимагали закритих герметичних касет із прецизійною механікою, здатною витримувати перевантаження в 8G та вібрації. Для СРСР зробити такий пристрій серійно з гарантією 99.999% було непосильним завданням. В СРСР намагалися зробити свій бортовий магнітофон для космосу. Він називався механічний накопичувач «Куб» (не плутати з феритовим кубом пам’яті). Його розробляли для станцій «Салют» та «Мир», але він постійно жував стрічку через вібрації, тому в «Бисере-4» конструктори з жахом відмовилися від механіки й обрали надійне, хоч і каторжне, дротове ПЗП на феритах. Підтвердженям цьому є незлічення кількість анектодів радянського часу про протирання магнітних головок, там історій з порваними магнітними стрічками.

Тому СРСР жив довгий час: або перфокарти, або магнітна пам’ять з кастомною прошивкою і тижін очікування поки прошивальниці не виконають роботу, або паперові стрічки з перфорацією.

Post Scriptum 2

Коли пишеш таку статтю, виникає якесь подвійне відчуття.

І отут у мене виникає дилема. Люди, що створили “Бисер-4” зробили титанічну роботу, але вона майже не вплинула на покращення життя людей тої епохи. Люди що стврили лінійку IBM360 потім IBM AP-101 - вони створили серійні продукти, проривні для свого часу. IBM AP-101 або її модифікації застосували:

Якщо ж подумати про СРСР то до Буран з “Бисер-4” в космос літали: Суюзи, Протони, космічні станції МИР, Салют. Чому потрібно було робити нову систему з нуля?

Ось як виглядає еволюція радянських бортових ЕОМ від «Аргонів» до БИСЕР‑4.

🧩 Етапи розвитку 1968 — Аргон‑11С
Перший бортовий комп’ютер для «Зонд», мінімальна пам’ять, але вже апаратна відмовостійкість.

1968 — Аргон‑12А
Для орбітальних станцій «Алмаз» (Салют‑2/3/5), подвійна надлишковість.

1973 — Аргон‑16
«Робоча конячка» радянської космонавтики: Союзи, Прогреси, Салют, Мир. Трикомпонентна структура з голосуванням, 8 КБ RAM, 64 КБ ROM. Надійність понад 25 років без відмов.

1980‑ті — Аргон‑16Б
Модернізований варіант для станції «Мир», більше пам’яті, трохи вища продуктивність.

1978–1984 — БИСЕР‑4
Спеціально створений для «Бурана». 4+1 канали з апаратним голосуванням, заточений під автоматичну посадку. Унікальний, не використовувався більше ніде.

⚖️ Висновок До «Бурана» вся радянська космічна техніка жила на Аргонах — серійних, але вузькоспеціалізованих і надзвичайно надійних. «Буран» же отримав штучний екземпляр — БИСЕР‑4, який був потрібен лише для однієї задачі: автоматичного польоту й посадки 100-тонного човна.

Якщо ж згадати ком’ютери, які найбільше вплинути на життя людей тої епохи в СРСР то я б згадав такі:

Впилинула на інженерів на науковців України, як мінімум. Своєю компактністю, простотою управління та високорівневою мовою програмування “Аналитик” комп’ютери повернулися обличчам до людей. І воно не було страшним, а навтіь досить ласкавим і елегантним. Програмування на цій машині давало людям можливість будувати елегантні програмні абстракції, які до цього в СРСР не будували. Тодішнє програмування в машиних кодах з прошивкою в дротом в феритовх кільцях видавалося якоюсь злою електромеханікою. Ці машини Київського Інституту кібернетики були революцією. Мова «Аналитик» дозволяла комп’ютеру оперувати не просто числами, а аналітичними виразами (інтегралами, похідними). IBM пізніше викупила один екземпляр МИР-2, бо Глушков реалізував апаратну підтримку високорівневої мови на рівні мікрокоду швидше за американців!

Хоч архітектурна ідея й була запозичена у калькуляторів HP (із їхньою зворотною польською нотацією), але реалізація була повністю на існуючих технологіях СРСР. Набір команд там явно наслідував великі ЕОМ (адресація точно від асеблер СМ 1420 / PDP-11). Тисячі школярів та студентів грали в ігри на цих калькуляторах, обраховували лабораторні роботи, писали ігри. Сотні радіоаматорів намагалися «хакнути» їх через клавіатуру чи сигнали індикаторів, шукаючи приховані регістри та недокументовані функції. СРСР тоді стояв за крок до винайдення власного аналога Arduino чи Raspberry. Достатньо було додати порт вводу/виводу з прямим записом в регістри пам’яті, ну хоч якийсь RS232, а паралельний - ще краще. А мікросхему, на якій будувався цей калькулятор (серія К145), згодом «обрізали» і масово випускали для ширшого вжитку: у цифрових годинниках, магазинних вагах, контролерах управління перших радянських пральних машин «Вятка-автомат-16». Я вважаю, що це кращий вплив на людське житя.

В СРСР виник цілий рух тих, хто власноруч збирав «Спектруми» з розсипу мікросхем, писав ігри, грав у них, зламував софт та ігри чи вчився програмувати. На основі Z80 згодом умільцями випускалися й знамениті побутові АОН (автоматичні визначники номера). Особисто я зібрав 3 чи 4 екземпляри ZX-Spectrum. Мене неймовірно вразив асемблер Z80. В цьому плані я людина балувана бо перший асемблер, який я вивчив був найелегантніший від PDP-11. Після нього асемблер від К580ВМ80 (Intel 8080) чи 8086 (IBM PC) здавалися якимось сірими та неповними. А от Z80 зайшов одразу — своєю логікою, альтернативними регістрами та роботою з перериваннями, оптимальністю. Ну і варто згадати, що попри купу проблем зі спеціалізованими магнітними накопичувачами в країні, ця манюня стійко і якісно зчитувала програми, записані на старі, потерті касети МК-60 з радянських магнітофонів 4-го класу, у яких і швидкість протяжки плавала, і частотна корекція працювала номінально, і магнітні головки стояли криво. Скільки людей завдяки цьому навчилися програмувати!

tags: