Материал носит образовательный характер. Открыт к профессиональной дискуссии в комментариях.
Представьте, что ваш код на ПЛИС может самопроизвольно измениться в любой момент. Для космоса это не фантазия, а суровая реальность.
Космическое пространство — это не вакуум в привычном понимании. Для микроэлектроники это агрессивная среда с экстремальным уровнем ионизирующего излучения. Постоянная бомбардировка тяжёлыми заряженными частицами (ТЗЧ), протонами солнечного ветра и галактическими космическими лучами превращает запуск электроники на орбиту в лотерею с высокими ставками.
В этой статье разберём, почему радиация «ломает» ПЛИС (FPGA), какие существуют методы защиты и почему скраббинг конфигурации — это не опция, а базовая необходимость для выживания аппарата.
Почему космос «ломает» электронику: краткий ликбез
В полупроводниковых структурах ионизирующее излучение вызывает четыре ключевых эффекта. Понимание физики процесса критично для выбора метода защиты.
|
Эффект |
Расшифровка |
Механизм |
Последствия для ПЛИС |
|---|---|---|---|
|
SEU |
Single Event Upset |
Заряд от частицы меняет состояние ячейки памяти |
Переворот бита в конфигурации → изменение логики |
|
SEFI |
Single Event Functional Interrupt |
Сбой в управляющей логике или FSM |
Временная потеря функциональности, «зависание» |
|
SEL |
Single Event Latchup |
Запуск паразитной тиристорной структуры |
Рост тока, перегрев, возможное разрушение |
|
TID |
Total Ionizing Dose |
Накопление повреждений в оксидах |
Деградация параметров: утечки, сдвиг порогов |
Особенно уязвимы программируемые логические интегральные схемы (ПЛИС/FPGA) с конфигурационной памятью на основе SRAM/Flash: один переворот бита может изменить маршрутизацию сигналов или логику конечного автомата.
Цифры для понимания масштаба
На низкой околоземной орбите (LEO) плотность потока ТЗЧ может достигать 1–10 частиц/см²/с. Для ПЛИС с миллионом конфигурационных бит это означает вероятность SEU порядка 10⁻⁵–10⁻⁶ в секунду на устройство.
Решение? Скраббинг — непрерывный процесс проверки и коррекции конфигурации. Но не все скрабберы одинаково полезны. Разбираемся в архитектуре.
Что такое скраббер и как он работает
Скраббер для ПЛИС — это аппаратный или программный модуль, который циклически проверяет память конфигурации FPGA и исправляет ошибки, вызванные радиационными воздействиями.
Цикл работы (Readback-метод)
-
Считывание текущего кадра конфигурации из ПЛИС
-
Побитовое сравнение с эталоном (из защищённой FLASH/EEPROM)
-
При несовпадении:
• Фиксация адреса ошибки
• Перезапись кадра эталоном
• Инкремент счётчика SEU
-
Переход к следующему кадру → возврат к п.1 (цикл)
Ключевое требование: период скраббинга должен быть меньше среднего времени между SEU, чтобы не допустить накопления множественных ошибок.
Классификация скрабберов: как выбрать архитектуру
Выбор реализации зависит от требований миссии. Рассмотрим основные подходы.
По расположению
|
Тип |
Где реализован |
Преимущества |
Недостатки |
Область применения |
|---|---|---|---|---|
|
Внутренний |
Логика + память внутри ПЛИС |
• Высокая скорость реакции • Не требует внешних компонентов • Простота интеграции |
• Уязвим к тем же SEU/SEFI, что и основная логика • Занимает ресурсы кристалла (LUT, BRAM) |
Системы с умеренными требованиями к надёжности, где важны массогабаритные показатели |
|
Внешний |
Отдельная ИС / микроконтроллер |
• Независим от состояния ПЛИС• Высокая радиационная стойкость • Гибкость управления и телеметрии |
• Требует доп. компонентов на плате • Обычно медленнее внутреннего |
Критичные системы: спутники, пилотируемые аппараты, военная техника |
|
Гибридный |
Комбинация внутреннего + внешнего |
• Максимальная отказоустойчивость• Быстрая реакция + глубокое восстановление |
• Сложнее в отладке и верификации • Выше стоимость BOM |
Системы с требованиями по ГОСТ РВ, ECSS, DO-254 DAL A |
По методу работы
|
Метод |
Принцип |
Плюсы |
Минусы |
|---|---|---|---|
|
Blind Scrubbing |
Последовательная перезапись всех кадров без проверки |
• Простота реализации • Не требует хранения эталона в оперативном доступе |
• Высокое энергопотребление • Не локализует ошибки для анализа |
|
Readback Scrubbing |
Считывание → сравнение с эталоном → точечная коррекция |
• Точная локализация сбоев • Возможность сбора статистики SEU • Эффективное использование энергии |
• Требует хранения эталонных данных • Сложнее алгоритм и верификация |
|
CRC-based |
Проверка контрольной суммы всей конфигурации |
• Поддерживается «из коробки» многими ПЛИС • Минимальные накладные расходы |
• При ошибке — полная перезагрузка ПЛИС • Нет точечного исправления, возможна потеря состояния |
Вывод: Для космических применений с требованиями по доступности >99.9% оптимален внешний скраббер с методом Readback — он обеспечивает независимое восстановление без остановки полезной нагрузки.
Внешний скраббер: архитектура на примере специализированных ИС
Рассмотрим реализацию внешнего скраббера на примере специализированной ИС BSV7CBRH. Это решение выступает в роли интеллектуального моста между конфигурационной памятью и ПЛИС.
Примечание: BSV7CBRH приведён как пример архитектуры внешнего скраббера. Параметры взяты из открытых технических данных производителя (BMTI, 2025).
Блок-схема скраббера BSV7CBRH
Рис. 1. Блок-схема скраббера BSV7CBRH. Источник: BMTI, 2025
Функциональные возможности
-
Загрузку битового потока при старте системы (Cold Start)
-
Непрерывный мониторинг конфигурации (Readback + Blind-режимы)
-
Обнаружение и коррекцию SEU/SEFI-событий с фиксацией в регистрах статуса
-
Удалённую реконфигурацию через UART/SPI по команде с борта
-
Защиту от несанкционированной перезаписи (опционально, через аппаратный write-protect)
Схема применения специализированной ИС
Рис. 2. Схема применения специализированной ИС. Источник: BMTI, 2025
Поддерживаемые ПЛИС
|
Производитель |
Совместимые серии |
Примечание |
|---|---|---|
|
BMTI |
BQVR, BQR2V, BQR5V, BQR7V, BQR7K |
Нативная поддержка, полный набор функций |
|
Xilinx |
Virtex, Virtex-II, Virtex-IV, Virtex-V, Kintex-7, Virtex-7 |
Совместимость по интерфейсу конфигурации, требуется адаптация битового потока |
|
Другие |
ПЛИС с параллельным slave-интерфейсом конфигурации |
Возможна интеграция при наличии документации по протоколу |
Технические параметры BSV7CBRH
|
Параметр |
Значение |
Примечание |
|---|---|---|
|
Напряжение питания ядра |
1,8 В ±5% |
— |
|
Напряжение питания I/O |
1,8 В / 3,3 В |
Настраивается по банкам |
|
Рабочая частота |
до 20 МГц |
— |
|
Потребление |
~1 Вт |
Тип., при 20 МГц, 125°C |
|
Диапазон температур |
-55...+125 °C |
— |
|
Корпус |
CBGA144 |
Керамика, золотое покрытие выводов |
|
ESD-защита |
2000 В |
По данным производителя |
|
TID |
100 крад (Si) |
Соответствует ~5 лет на LEO |
|
SEL порог |
≥75 МэВ·см²/мг |
Устойчив к ТЗЧ в поясах Ван Аллена |
|
SEU порог |
≥37 МэВ·см²/мг |
Для конфигурационной логики скраббера |
|
Режим конфигурации |
Parallel Slave Mode |
8/16 бит |
|
Время скраббинга* |
~150 мс |
По оценке для 50 Мбит при 20 МГц |
Примечание: точное время скраббинга зависит от объёма конфигурации ПЛИС. По оценке производителя, для типовой конфигурации 50 Мбит цикл занимает порядка 150 мс.
Ключевые аспекты проектирования
1. Размещение на плате
-
Минимизировать длину трасс между скраббером и ПЛИС (<5 см) для снижения риска наводок и задержек.
-
Использовать выделенную земляную плоскость под CBGA-корпусом для теплоотвода.
2. Тактирование
-
Использовать выделенный источник 20 МГц с джиттером <50 пс.
-
Предусмотреть резервный генератор или возможность переключения на внешний clock.
3. Резервирование памяти
-
Хранить эталонный битовый поток в двух независимых ячейках Flash с аппаратным переключением.
-
Реализовать CRC-проверку эталона перед использованием.
4. Телеметрия и диагностика
Выводить в общий канал телеметрии:
-
Счётчик коррекций SEU по адресным диапазонам
-
Статус скраббера (IDLE/READ/COMPARE/WRITE)
-
Флаги ошибок (CRC mismatch, timeout, write-fail)
Это позволяет проводить пост-анализ радиационной обстановки на орбите.
Сравнение с альтернативами: когда выбирать внешний скраббер
|
Критерий |
Встроенный SEM IP |
Внешний контроллер |
МК на RAD5500 |
|---|---|---|---|
|
Независимость от состояния ПЛИС |
❌ Уязвим при SEFI |
✅ Работает при «зависшей» ПЛИС |
✅ Полная независимость |
|
Возможность удалённой реконфигурации |
⚠️ Через JTAG/ICAP, требует ресурсов ПЛИС |
✅ Полноценная поддержка UART/SPI |
✅ Гибкая, но требует ПО |
|
Аппаратная сложность |
✅ Минимальная (IP-ядро) |
⚠️ Доп. ИС на плате |
❌ Высокая (Rad-hard MCU + обвязка) |
|
Гибкость обновления |
⚠️ Требует перепрошивки ПЛИС |
✅ Обновление через интерфейс без остановки |
✅ Через загрузчик ПО |
|
Поддержка legacy-ПЛИС |
❌ Только для 7-й серии и новее |
✅ Virtex-II и новее, BMTI BQR |
✅ Зависит от ПО |
|
Стоимость решения |
Низкая |
Средняя |
Высокая |
Примечание: Сравнение приведено на основе открытых технических данных производителей (BMTI, AMD/Xilinx, Microchip). Параметры могут отличаться в зависимости от конфигурации системы, версии документации и условий эксплуатации.
Практический вывод: Для систем с повышенной радиационной нагрузкой (LEO/MEO) внешний скраббер — архитектурно оправданное решение.
Валидация и испытания
-
TID: Облучение на гамма-установке Co-60 до 100 крад (Si) с контролем параметров в реальном времени.
-
SEL/SEU: Тесты на ускорителе тяжёлых ионов (по данным производителя).
-
Температурные циклы: 1000 циклов -55…+125 °C по MIL-STD-883.
📌 Рекомендация: Запраш��вайте отчёт о радиационных испытаниях и проводите анализ под вашу орбиту (инструменты: SPENVIS, OMERE, CREME96).
Заключение: скраббинг — не опция, а необходимость
Радиационно-стойкий скраббер — это не «дополнительная функция», а базовый элемент надёжной бортовой аппаратуры для космоса и авиации.
Чек-лист при проектировании
-
Проведите радиационный анализ на этапе архитектуры (орбита, срок службы, допустимый уровень сбоев).
-
Выберите метод скраббинга в зависимости от требований к доступности (Blind для простых систем, Readback для критичных).
-
Предусмотрите телеметрию по ошибкам — это бесценные данные для пост-анализа и улучшения следующих поколений аппаратуры.
-
Тестируйте прототипы в условиях, приближенных к эксплуатационным: температура, вибрация, радиация (хотя бы на уровне компонентных испытаний).
Если вы сталкивались с задачами защиты FPGA от радиации — делитесь опытом в комментариях!
Андрей Анатольевич Павлов, ведущий инженер
Автор: sds_tech
