Проектирование Fpga-систем для спутниковой визуализации высокого разрешения
Почему FPGA необходимы для бортового спутникового изображения
Массивный параллелизм и высокая пропускная способность I/O
В отличие от микропроцессоров, которые выполняют потоки инструкций последовательно, FPGA состоят из миллионов настраиваемых логических блоков, срезов DSP и ОЗУ блоков, связанных через программируемую структуру маршрутизации. Эта архитектура позволяет проводить массивный параллелизм — тысячи операций на тактовом цикле — что делает FPGA идеальными для структурированных вычислений на уровне пикселей, присущих конвейерам визуализации. Интервал ввода/вывода современных FPGA, с десятками высокоскоростных приемопередатчиков, работающих на десятках Гбит/с, напрямую соответствует выходу быстрых интеграционных CCD-дисплеев с задержкой времени (TDI) или CMOS-датчиков, используемых в сканерах высокого разрешения. Например, один FPGA может одновременно десериализировать несколько потоков Camera Link или SpaceFibre, выравнивая данные пикселей из разных спектральных диапазонов без внешнего мультиплексирования. Этот уровень интеграции снижает площадь платы, энергопотребление и проблемы целостности сигнала по сравнению с решениями с несколькими чипами.
Радиационная толерантность и реконфигурируемость в полете
Космические FPGA, такие как AMD (Xilinx) XQR Kintex UltraScale и Microchip (ранее Microsemi) RT PolarFire семейства, предназначены для переноса суровой радиационной среды низких и геостационарных орбит. Они включают в себя конфигурационные двигатели для очистки памяти, резервирование тройного модуля (TMR) на критических путях и технологии защелкивания иммунных процессов. Это позволяет им надежно функционировать в течение жизни миссии, которая может охватывать десятилетие или более. Реконфигурируемость FPGA на основе SRAM также позволяет обновляться в полете, позволяя развертывать новые алгоритмы после запуска - способность, которая оказалась бесценной для научных миссий, которые улучшают свои требования к обработке после выхода на орбиту. Например, программно-определенное радиоприложение может быть заменено новым алгоритмом сжатия без изменений оборудования, продлевая срок полезной нагрузки и адаптируясь к меняющимся потребностям миссии.
Ключевые проблемы для визуализации высокого разрешения
Пропускная способность данных и ограничения в реальном времени
Проектирование конвейера обработки для спутникового снимка - это упражнение в балансировке пропускной способности, мощности и устойчивости при жестких ограничениях. Скорость передачи данных от одного панхроматического датчика сканирования линии с 50 000 пикселей, работающих со скоростью 100 000 линий в секунду, может достигать 7,5 Гбит/с, а многоспектральная система с четырьмя полосами умножает эту цифру. Без бортовой обработки весь объем должен быть связан вниз, подавляя ограниченную полосу пропускания радиостанций X-диапазона или Ka-диапазона. Только сжатие может уменьшить объем данных в пять-десять раз, но оно должно быть применено после того, как был исправлен шум фиксированного шаблона, темный ток и неоднородность пикселей - вычисления, которые требуют пиксельных значений, почти в реальном времени пропускной способности. FPGA должен поддерживать эти скорости линии без обратного давления, используя глубоко трубопроводные конструкции, которые обрабатывают пиксели в одном тактовом цикле на стадии. Любой застой в трубопроводе вызовет падение линий, разрушив изображение и теряя ценные возможности нисходящей линии связи
Управление энергией и теплом
Бюджеты мощности на небольших спутниках могут быть всего 20–50 Вт для всей полезной нагрузки, оставляя только несколько ватт для платы FPGA. Управление тепловой энергией усугубляет проблему, потому что устройство должно рассеивать тепло без конвекции. Конструкторы борются с динамической мощностью, используя динамическое забивание часов, снижая активность переключения с помощью оптимизированного по ресурсам кодирования HDL и используя выделенные срезы DSP вместо тканевой логики для умножения и сложения. Например, космический RT PolarFire FPGA может потреблять менее 5 Вт при выполнении сжатия JPEG-LS при 200 мегапикселей в секунду. Термические решения часто включают тепловые трубы, проводящие пути к шасси космического корабля и тщательную компоновку печатной платы для равномерного распределения тепла. Выбор упаковки - керамической или пластиковой - также влияет на тепловые характеристики, с керамическими пакетами, предлагающими лучшую теплопроводность, но более высокую стоимость.
Радиационные эффекты и надежность
Радиационные эффекты, особенно однособытийные распады (SEUs), которые переворачивают биты конфигурации или содержимое BRAM, могут изменять поведение алгоритма и должны быть смягчены посредством избыточности и периодической реконфигурации. Однособытийные защелки (SEL) могут вызывать катастрофические ничьи тока, обязывая технологии SEL-иммунного процесса. Конструкция должна дополнять жесткость уровня устройства с избыточностью тройного модуля конфигурации (TMR) для всех машин критического состояния и машин конечного состояния. Для содержимого BRAM и внешних данных DRAM используются коды коррекции ошибок (ECC) и периодические циклы очистки. Бортовой скруббер непрерывно считывает кадры конфигурации, сравнивает их с золотой копией, хранящейся в закаленной радиацией ПЗУ, и корректирует любые расхождения. Скруббер должен быть спроектирован для работы с минимальной задержкой, чтобы уменьшить окно для многоразрядных расстройств, которые могут перегрузить способность ECC.
Ограничения по массе и объему
Строгие ограничения массы и объема спутниковых платформ требуют высокоинтегрированных компактных форм-факторов, где каждая проблема целостности сигнала - от перекрестного разговора на уровне платы до прекращения - должна быть смоделирована и проверена перед запуском. Разъемы высокой плотности и многослойные ПХД с контролируемым импедансом необходимы. Плата FPGA часто интегрирует регулирование мощности, память и приемопередатчики в один модуль размером менее 100 см2. Такие стандарты, как SpaceVPX, облегчают модульность, позволяя создавать полезные нагрузки для визуализации из совместимых карт FPGA, которые могут быть заменены между миссиями. Этот модульный подход снижает неповторяющиеся инженерные затраты и ускоряет время на орбите для новых конструкций датчиков.
Архитектура системы FPGA-Based Imager
Front-End Data Acquisition (недоступная ссылка)
Хорошо построенная система визуализации на основе FPGA обычно следует за конвейером, который фрагментирует поток данных на одновременно исполняющиеся этапы. На переднем конце высокоскоростные последовательные линии, несущие изображения Camera Link, CoaXPress или SpaceFibre, десерализованы в параллельные пиксельные слова. Затем FPGA применяет вычитание смещения по каналу, коррекцию усиления и замену дефектных пикселей с использованием калибровочных таблиц, хранящихся в бортовой вспышке или плотно связанной DDR4 SDRAM. Эти таблицы периодически обновляются с помощью наземных команд для учета деградации датчика в течение срока службы миссии. Логика десериализации должна тщательно обрабатывать пересечение часовой области, поскольку часы датчика и часы FPGA могут не быть синхронными. Выделенные схемы восстановления часов в приемопередатчиках FPGA обрабатывают это автоматически, обеспечивая чистые часы для трубопровода обработки пикселей.
Нормализация и пространственная обработка
Как только данные сенсорного анализа нормализуются, они переходят в стадию пространственной обработки, которая выполняет демозаичность (для датчиков цветового фильтра), коррекцию геометрических искажений и, для датчиков pushbroom, критический этап сшивания изображения, который собирает линии в смежные кадры. Алгоритмы демозаификации, такие как билинейная интерполяция или адаптивная однородность, ориентированная на демозаичность, реализуются с использованием линейных буферов и срезов DSP. Геометрическая коррекция включает в себя повторную выборку на основе полиномиальной модели искажения линз, которая вычисляется с использованием таблиц поиска координат, хранящихся в блоковой ОЗУ. Стадия сшивания должна обрабатывать перекрытия линий и потенциальное время дрожания от механизма pushbroom, используя буферы FIFO для выравнивания линий перед сборкой в двумерные кадры.
Управление памятью и сжатие
Отдельный контроллер памяти и ДМА-двигатель управляют доступом к внешней DRAM с высокой пропускной способностью. Рамочные буферы, линейные кэши и таблицы поиска разумно разбиты по блок-RAM FPGA и ресурсам UltraRAM для минимизации задержки. После улучшения изображения данные подаются в двигатель сжатия, часто аппаратную реализацию JPEG-LS, вейвлет-ориентированный CCSDS 122.0-B или, все чаще, на основе обучения легкий кодек. Сжатый поток пакетируется и отправляется в интерфейс передатчика через плотно контролируемую арбитражную схему, которая гарантирует качество обслуживания для планирования нисходящей линии связи. Весь конвейер может быть организован встроенным в FPGA процессором с мягким ядром или жестким ядром, который обрабатывает ведение домашнего хозяйства, телеметрию и обработку команд через шину SpaceWire или CAN. Этот процессор также контролирует здоровье трубопровода, перезапуска этапов, если обнаруживаются ошибки.
Проектирование трубопровода обработки в реальном времени
Pixel-Level Streaming Operations (Переводные операции)
Сердцем системы является трубопровод пиксельных уровней, который должен быть спроектирован для поддержания полной скорости строки без обратного давления. Для скорости линии 50 кГц FPGA имеет 20 микросекунд для обработки всей линии по всем полосам. Используя глубоко трубопроводную архитектуру, каждая ступень работает на подмножестве данных потоковым способом. Этап вычитания смещения и коррекции плоского поля обычно использует таблицу поиска на основе BRAM, индексируемую пиксельными координатами, в то время как дефектная коррекция пикселей может быть реализована как простой медианный фильтр, который заменяет плохой пиксель медианой своих соседей из той же спектральной полосы. Эти операции выполняются в одном тактовом цикле на пиксель с использованием комбинаторной логики или небольших срезов DSP. Обеспечение того, чтобы трубопровод никогда не останавливался, требует тщательного управления зависимостями данных и совместного использования ресурсов на этапах.
Многоспектральное выравнивание и пан-затвердевание
Многоспектральное выравнивание и сорегистрация особенно требовательны. Поскольку различные спектральные полосы могут быть выставлены в несколько раз или под разными углами, для выравнивания полос требуется субпиксельная интерполяция. Срезы FPGA DSP ускоряют кубическую или билинейную интерполяцию, а линейные буферы позволяют хранить необходимое временное окно нескольких смежных линий. Для спутников, использующих бортовое паншарпенирование, дополнительная фаза фильтра с высоким пропуском отделяет пространственную деталь от панхроматической полосы и впрыскивает ее в выбранные по выборке многоспектральные полосы, создавая цветное изображение с полным панхроматическим разрешением. Тщательное моделирование с фиксированной точкой каждой арифметической операции является обязательным, чтобы избежать введения артефактов, таких как шум квантования или звон, который ухудшит окончательное качество изображения. Проверка против эталонной модели с плавающей точкой необходима перед подключением к аппаратному обеспечению.
Фиксированная арифметика и оптимизация ресурсов
Точность с фиксированной точкой должна быть проанализирована с помощью моделирования для определения минимальной длины слова, которая позволяет избежать видимых артефактов. Например, 16-битное представление с фиксированной точкой для значений пикселей с 8-битными фракционными частями часто достаточно для коррекции и этапов сжатия, в то время как пространственные фильтры могут потребовать 24-битных аккумуляторов для предотвращения переполнения. Оптимизация ресурсов включает повторное использование ломтиков DSP для нескольких операций, таких как совместное использование множителя для коррекции усиления и интерполяции. Инструменты синтеза высокого уровня (HLS) позволяют дизайнерам исследовать компромиссы между точностью, пропускной способностью и использованием LUT более быстро, чем традиционные методы RTL. Однако логика, генерируемая HLS, должна быть тщательно рассмотрена для космических приложений, поскольку оптимизации инструмента не всегда могут соответствовать методам проектирования, закаленным излучением.
Управление электроэнергией и смягчение радиационного воздействия
Методы динамического снижения мощности
Потребление мощности FPGA является функцией динамического переключения, статической утечки и прекращения ввода/вывода. Конструкторы борются с динамической мощностью, используя тактовое забивание и снижение активности переключения с помощью оптимизированного по ресурсам кодирования HDL. Использование выделенных срезов DSP вместо логики ткани для умножения и сложения уменьшает как мощность, так и перегрузку маршрутизации. Частичное перенастройка позволяет временно неиспользуемые блоки ускорителя - такие как нейронная сеть для обнаружения облаков, которая активируется только периодически - для замены, экономя статическую мощность. Напряжение и частотное масштабирование, в то время как более сложные в космических квалифицированных устройствах, могут быть реализованы через программируемые регуляторы под управлением процессора. Например, снижение напряжения ядра с 0,95 В до 0,85 В может сократить динамическую мощность на 20% без значительного ухудшения времени, при условии, что запас конструкции адекватный.
Радиационное закаливание по дизайну
Радиационное затвердевание является многослойной дисциплиной. Сама FPGA должна быть выбрана для полной толерантности к ионизирующей дозе (TID) (часто > 100 крад) и иммунитета к защелкиванию одномерного события (SEL). Затем конструкция дополняет жесткость на уровне устройства с избыточностью конфигурационной памяти тройного модуля (TMR) для всех критических машин и машин с конечным состоянием. Для содержимого BRAM и внешних данных DRAM используются корректирующие ошибки коды (ECC) и периодические циклы очистки. Бортовой скруббер непрерывно считывает рамки конфигурации, сравнивает их с золотой копией, хранящейся в закаленной радиацией PROM, и исправляет любые расхождения. Этот скруббер может быть реализован в самой логике FPGA, используя мягкий процессор MicroBlaze или RISC-V, или внешне в компаньоне CPLD. Проверенные полетом конструкции часто включают комбинацию всех трех, чтобы пережить наихудшие события солнечных частиц.
Скруббинг и восстановление ошибок
Скруббер должен быть спроектирован с низкой задержкой, чтобы минимизировать окно для многобитных нарушений. Скриншот, который циклически проходит через все рамки конфигурации независимо от ошибок, проще, но тратит энергию. Скринбинг в режиме обратной связи, который проверяет каждый кадр на золотой копии, более эффективен, но требует дополнительной логики. Для внешней памяти скруббер должен координировать с контроллером DMA, чтобы гарантировать, что циклы скрубберинга не мешают передаче данных. Расширенные проекты используют арбитраж на основе приоритета, давая самый высокий приоритет скруббингу по фоновым задачам при сохранении пропускной способности для живых изображений. Скруббер также регистрирует частоту ошибок, обеспечивая телеметрию, которая может использоваться для оценки радиационной среды и соответственно корректировать операции миссии.
Интеграция ИИ и машинного обучения на орбите
Интеллектуальный анализ на борту
Одним из наиболее трансформирующих трендов спутниковой визуализации является переход от простого сжатия к интеллектуальному бортовому анализу. Вместо отправки каждого захваченного пикселя на землю, FPGA теперь могут размещать сверточные нейронные сети, которые выполняют облачный скрининг, маскирование наземных вод, обнаружение судов или идентификацию очагов пожара. Только научно-значимые миниатюры или метаданные связаны вниз, уменьшая задержку от часов до секунд и потребление полосы пропускания до 99% для некоторых приложений наблюдения. Например, обнаружение CNN кораблей в морском наблюдении может обрабатывать изображение размером 10 000x10 000 пикселей менее чем за одну секунду на FPGA космического класса, позволяя оповещения в режиме реального времени для военно-морских операций.
Инструменты и архитектуры для вывода FPGA
Такие инструменты, как AMD Vitis AI и Intel OpenVINO, обеспечивают высокоуровневые потоки синтеза, которые квантовают и компилируют обученные сети в высокопараллельные ускорители FPGA. Механизм вывода CNN, который вписывается в FPGA среднего класса, может обрабатывать более 100 мегапикселей в секунду при бюджете мощности менее 5 Вт. Ключевые компромиссы проектирования включают в себя снижение точности (INT8 или двоичные сети), слияние слоев и оптимальное разделение весов по BRAM и внешней памяти. Поскольку космические FPGA имеют ограниченные ресурсы DSP, сетевая архитектура должна быть совместно разработана с аппаратными ограничениями. Например, использование глубинно-раздельных извилин и обрезки может снизить вычислительную нагрузку в десять раз без существенного влияния на точность спутниковых изображений.
Обновления модели в полете
В полете развертывание обновленных моделей посредством частичной реконфигурации уже демонстрируется в таких миссиях, как ESA ⁇ -sat-2, который несет ускоритель ИИ, интегрированный с гиперспектральным образцом. FPGA может менять модель обнаружения облаков на модель обнаружения пожара в миллисекундах, адаптируясь к потребностям миссии, не прерывая конвейер визуализации. Это достигается путем разделения ткани FPGA на статические и реконфигурируемые разделы, где ускоритель ИИ занимает реконфигурируемую область, которая может быть загружена различными битовыми потоками. Процесс управляется бортовым процессором, который проверяет новый битовый поток перед развертыванием. Эта возможность открывает новые оперативные концепции, такие как корректировка порогов обнаружения на основе сезонных изменений или добавление новых классов целей после запуска.
Тестирование, валидация и квалификация
Моделирование и эмуляция
Неумолимая природа пространства означает, что система визуализации FPGA должна быть проверена до абсолютной строгости перед инкапсуляцией. Валидация начинается с RTL-моделирования всего трубопровода, подачи его синтетическими изображениями наземной правды и проверки битового вывода против модели C. Конструкции синтеза высокого уровня (HLS) тестируются с помощью среды ко-симуляции, которая сравнивает эмуляцию аппаратного обеспечения с исходным кодом C++. По мере созревания дизайна тестирование аппаратного обеспечения в цикле вводит реальные эмуляторы датчиков, которые выдают видеопотоки с полной скоростью, позволяя нажимать на плату DUT при максимальной пропускной способности при мониторинге теплового поведения и частоты ошибок бита. Любые расхождения между имитацией и аппаратным обеспечением отслеживаются и разрешаются до перехода к экологическому тестированию.
Экологическая и радиационная квалификация
Экологическая квалификация подвергает прототип вибрации, удару, тепловому циклу и вакууму. FPGA должна демонстрировать безошибочную работу в широком температурном диапазоне, как правило, от -40 ° C до +85 ° C для деталей промышленного класса или более широкого для устройств военного назначения. Радиационные испытания проводятся на специализированных объектах с использованием протонных или ионных пучков для измерения сечений эффекта одного события и проверки логики смягчения. Время восстановления скруббера, вероятность сбоя голосования TMR и характеристики отжига общей дозы измеряются и документируются. Только после прохождения этих испытаний доска получает статус наследия полета, что позволяет интегрировать ее в спутниковую шину. Для дорогостоящих миссий могут быть протестированы несколько досок для обеспечения статистической уверенности в надежности.
Проверка системы End-to-End
Помимо тестирования компонентов, вся цепочка визуализации должна быть проверена в интегрированной установке, которая включает в себя датчик, оптику, FPGA-плату и передатчик. Это включает в себя захват тестовых шаблонов из цели с высоким разрешением, обработку их через трубопровод FPGA и сравнение результатов с наземной правдой. Испытания скорости битов на интерфейсе нисходящей линии связи проверяют, что ошибки сжатия находятся в допустимых пределах. Квалификация также включает в себя кампании впрыска неисправностей, где SEUs искусственно вводятся для проверки того, что механизмы смягчения восстанавливаются в заданных временных рамках. Система должна демонстрировать изящную деградацию в условиях неисправности, гарантируя, что ни одна точка отказа не может привести к полной потере миссии.
Будущие направления и развивающиеся технологии
Более высокие скорости передачи данных и новые архитектуры FPGA
Следующее поколение снимков высокого разрешения обещает расстояние до образца земли с низкой околоземной орбиты на глубину до 30 см, создавая скорости передачи данных, которые затмят сегодняшние системы. Чтобы справиться с этим, производители FPGA разрабатывают радиационно-толерантные системы-на-чипе, которые сочетают в себе ткань FPGA с закаленными многоядерными процессорами, интерфейсами памяти с высокой пропускной способностью (HBM) и специализированными двигателями ИИ. Адаптивные SoC AMD Versal с AI Engines при адаптации к космосу могут обеспечить более 100 ТОПМ вывода в одном пакете. Технология трехмерного стекания уменьшит паразитные потери между логикой и памятью, что позволит еще меньше мощности на операцию. Эти достижения позволят обрабатывать видеопотоки 8K от мультиспектральных датчиков в режиме реального времени на орбите.
Программно-определяемая визуализация и динамическая реконфигурация
Программно-определяемая визуализация, где трансформация трубопровода FPGA на основе целевого типа — переход от режима высокой динамической дальности над океанами к режиму многокадрового супер-разрешения над городскими районами — станет практичной благодаря обмену динамическими функциями и управлению датчиками на основе машинного обучения. Это позволяет одному спутнику обслуживать различных клиентов с помощью специализированных продуктов данных. Такие стандарты, как SpaceVPX и предстоящие модульные архитектуры NASA SmallSat облегчают интеграцию системы, позволяя создавать полезные нагрузки для визуализации из совместимых карт FPGA, которые могут быть модернизированы между миссиями. Сочетание реконфигурируемого аппаратного и программно-определяемого функционирования позволит спутникам автономно оптимизировать свои параметры визуализации на основе погоды, освещения и запросов пользователей.
Экосистемы открытого исходного кода
Между тем, экосистема с открытым исходным кодом вокруг мягких ядер RISC-V и фреймворка Vitis AI снижает барьер для разработки пользовательских космических ускорителей. Инструменты с открытым исходным кодом, такие как фреймворк LiteX, предоставляют предварительно проверенные IP-ядра для контроллеров памяти, Ethernet и GPIO, сокращая время разработки космических плат FPGA. Архитектура RISC-V предлагает открытый набор инструкций, который можно настроить для конкретных задач визуализации, таких как добавление пользовательских инструкций для интерполяции пикселей или кодирования энтропии. Эта демократизация позволяет небольшим космическим агентствам и стартапам создавать конкурентоспособные полезные нагрузки для визуализации без высоких затрат на лицензирование проприетарных IP-ядер. Растущая доступность библиотек с открытым исходным кодом и эталонных конструкций еще больше ускоряет цикл разработки.
Заключение
Дизайнеры, которые могут освоить кооптимизацию оптики, алгоритмов обработки изображений и аппаратного обеспечения FPGA, будут формировать будущее дистанционного зондирования. Получая больше информации на ватт и на килограмм, они позволяют созвездиям небольших спутников предоставлять постоянный охват с высоким разрешением, когда-то зарезервированный для флагманских миссий с миллиардным разрешением, демократизируя доступ к впечатляющему земному интеллекту. Сочетание закаленных радиацией семейств FPGA, передовых инструментов проектирования и расширения возможностей искусственного интеллекта на орбите гарантирует, что в следующем десятилетии будут видеться образы, которые не только острее, но и умнее, способные автономно фокусироваться на явлениях, которые имеют наибольшее значение для науки и общества. Поскольку скорость передачи данных продолжает расти, а бюджеты остаются ограниченными, FPGA останется незаменимым центром спутниковой цепи визуализации, переводя необработанные фотоны в практические идеи в режиме реального времени.