High performance
GPGPU
Big Data
Data visualization
FPGA
27 May

Аппаратные компоненты бортовой МПС унифицированного ударного истребителя F-35

Приоритеты современной военной авиации сосредоточены на качественной ситуационной осведомлённости, поэтому современный истребитель представляет собой летающий рой высокотехнологичных сенсоров. Сбор информации с этих сенсоров, её обработку и представление пользователю осуществляет бортовая микропроцессорная система (МПС). Вчера для её реализации использовались HPEC-гибриды (включающие в себя CPU, GPU и FPGA). Сегодня для её реализации используются однокристальные SoC-системы, которые помимо того, что все компоненты на один чипсет собирают, так ещё и внутричиповую сеть организуют (NoC), как альтернативу традиционной магистрали передачи данных. Завтра, когда SoC-системы станут ещё более зрелыми, ожидается приход полиморфной наноэлектроники, которая даст существенный прирост производительности и снизит темп своего морального устаревания.



Введение


Если в эру истребителей 4-го поколения показателями боевого превосходства были высокая скорость и экономичное энергопотребление, то в эру истребителей 5-го поколения боевое превосходство измеряется, прежде всего, качеством ситуационной осведомлённости. [6] Поэтому современный истребитель представляет собой летающий рой всевозможных высокотехнологичных сенсоров, обеспечивающих в сумме «360-градусную ситуационную осведомлённость». [5] Сбор информации с этих сенсоров, её обработка и удобоваримое для пилота представление – требуют колоссальных вычислительных мощностей.


Все эти вычисления необходимо делать на борту, поскольку суммарная интенсивность входного потока данных от всего роя сенсоров (видеокамеры, радиолокаторы, ультрафиолетовые и инфракрасные сенсоры, лидар, сонар и др.) – превышает пропускную способность внешних высокоскоростных каналов связи как минимум в 1000 раз. [2] Бортовая обработка сигналов привлекательна ещё и тем, что благодаря ей пилот получает актуальную информацию в режиме реального времени.


Под «удобоваримостью представления» подразумевается, что вся информация, – какой бы разнородной она ни была, – должна быть синтезирована в единую «театральную картину боевых действий», [9] интерпретирование которой не должно превращаться в головоломную аналитическую задачу (как это было в старых моделях истребителей, где пилоту приходилось одновременно наблюдать за десятком дисплеев).



Высокопроизводительная интегрированная система


Ответственность за эту театральную постановку, или говоря формальней, ответственность за решение этой комплексной непростой задачи – лежит на бортовой МПС, которая помимо высокой производительности также должна обеспечивать достаточно низкий уровень SWaP (размеры, масса и энергопотребление), что само по себе является «вечнозелёной проблемой». [8] На сегодняшний день популярным (но не самым передовым) в этой связи решением – является использование тройки разнопрофильных процессоров, размещённых в одном корпусе: CPU, GPU и FPGA. Устоявшееся название такого гибрида – HPEC (высокопроизводительная интегрированная система). [2] Ключ к его, гибрида, успешной реализации – продуманная архитектура МПС, которая берёт от каждого процессора самые лучшие характеристики, а их слабые стороны обходит стороной. При этом цель HPEC-архитектуры заключается в том, чтобы достичь эффекта синергии – когда производительность конечной гибридной системы значительно превосходит суммарную производительность составляющих её частей. Т.о. гибридная архитектура сочетает несколько различных видов процессоров в одном корпусе. Идея состоит в том, что если использовать сильные стороны каждого отдельно взятого компонента, можно построить передовую систему HPEC, которая обвенчается со сногсшибательной производительностью, а их ребёнком станет крошка-SWaP. [10] Рассмотрим более подробно каждую из трёх составляющих HPEC-архитектуры.


Пример HPEС-гибрида


Врезка: Живой пример HPEC-гибрида

В качестве живой иллюстрации HPEC-гибрида можно привести портативную камеру AdLink NEON-1040 x86 (4 мегапикселя, 60 кадров в секунду), предназначенную для жёстких условий эксплуатации. Она оснащена FPGA и GPU, обеспечивающими передовые технологии обработки изображений, а также четырёхядерным CPU (Intel Atom, 1,9 ГГц), благодаря чему алгоритмы обработки могут быть реализованы в виде x86-совместимых программ. Кроме того, камера имеет на борту 32 Гб дискового пространства, где можно хранить видео, программы и архивные данные. [13] Камера AdLink


Преимущество FPGA в том, что на нём алгоритмы реализуются аппаратно, а такая реализация как известно – всегда быстрее. Кроме того, работая на сравнительно невысоких тактовых частотах порядка сотен МГц, FPGA могут производить десятки тысяч вычислений за один такт и при этом потреблять гораздо меньше энергии, чем GPU. С FPGA сложно конкурировать также и по времени отклика (сотни наносекунд – против десятка микросекунд, которые может обеспечить GPU). Также стоит отметить, что современные FPGA обладают возможностью динамического реконфигурирования: их можно перепрограммировать налету (без перезагрузки и остановки) – чтобы адаптировать алгоритмы к изменяющимся условиям эксплуатации. Поэтому FPGA (например, Xilinx) – хорош для первичной обработки поступающих от сенсоров данных. Он просеивает поступающую от сенсоров сырую информацию и передаёт дальше более сжатый полезный поток. FPGA здесь незаменим, поскольку однородный поток данных, обработка которого к тому же ещё и распараллеливанию легко поддаётся, – это как раз та задача, где FPGA является лидером жанра.


Врезка: Проектирование DSP на FPGA

Традиционно FPGA программируются на языке низкого уровня VHDL. Однако Xilinx сумела интегрировать процесс разработки с такой мощнейшей инструментальной средой, как MathWorks Simulink. Одна из приятных особенностей Simulink – её интеграция с MatLab, который в свою очередь является самым популярным инструментом моделирования алгоритмов для военной и коммерческой обработки сигналов; что касается проектирования DSP-компонентов, так здесь MatLab вообще является стандартом де-факто. Такая интеграция позволяет разработчику пользоваться программными кодами и утилитами, разработанными в MatLab. Что в свою очередь облегчает и ускоряет цикл проектирования. В том числе потому, что основная часть тестирования конечной системы – перемещается в среду MatLab, где это делать намного удобней, чем при работе с традиционным FPGA-инструментарием. [1]


FPGA в настоящее время являются ядром самых критических подсистем бортовой МПС военной авиации: бортовой управляющий компьютер, навигационная система, дисплеи в кабинах, тормозные системы, регуляторы температуры и давления в салоне, осветительные приборы, блоки управления авиационными двигателями. [14] Также FPGA являются ядром бортовых сетевых коммуникаций, электрооптической системы наведения и других видов интенсивных ресурсоёмких вычислений для «интегрированных модулей авионики» (IMA) на борту «унифицированного ударного истребителя» (JSF), например такого как F-35. [5]


GPU (например, Nvidia Tesla) – хорош для параллельной обработки алгоритмов с интенсивной математикой и плавающей точкой. Он делает это лучше, чем FPGA и CPU. Массивная параллельная конструкция графического процессора, – состоящего из нескольких сот ядер, – позволяет обрабатывать параллельные алгоритмы намного быстрее, чем CPU. FPGA конечно тоже хорош в параллельной обработке, но только не там, где речь идёт об операциях с плавающей точкой. FPGA сам по себе их делать не умеет, тогда как современный GPU обеспечивает триллион операций с плавающей точкой в секунду, – что, например, весьма полезно для таких задач, как сшивание нескольких гигапиксельных видеопотоков.


Многоядерный CPU (например, Intel Core i7) – хорош для когнитивной обработки.


Итак, взяв лучшие характеристики всех процессоров и обойдя их слабые стороны, можно достичь незаурядных вычислительных мощностей. Кроме того, для достижения ещё более высокой производительности в HPEC могут быть включены и другие специализированные процессоры. Например, для решения задач бортовой системы навигации, может быть использован PPU (Physics Processing Unit) – аппаратный ускоритель физических расчётов, оптимизированный для работы с динамикой твёрдых, жидких и мягких тел, для обнаружения столкновений, для анализа конечных элементов, для анализа разломов объекта и т.д. [11] Другие примеры специализированных процессоров – это аппаратный ускоритель радарной обработки сигналов [1] и аппаратный ускоритель для анализа графов, [12] который будет незаменим при обработке «больших данных». В обозримом будущем, – в связи с удешевлением аппаратных средств и с упрощением процесса их разработки, – ожидается появление самых разнообразных аппаратных ускорителей, которые пополнят «периодическую систему вычислительных первоэлементов», [10] благодаря чему алхимический процесс инженерного проектирования станет ещё более результативным.


Врезка: HPEC на одном чипcете

Разработчики высокопроизводительных элементов военной промышленности (HPEC) часто используют дуэт топового процессора от Intel и FPGA от Altera. Отвечая на потребности разработчиков, Intel сегодня интегрирует в свои топовые процессоры модули FPGA от Altera (которая с недавнего времени вошла в состав Intel). Завтра Intel планирует предоставить разработчикам возможность кастомизации процессоров – их собственными ASIC-компонентами, для чего сотрудничает с корпорацией eASIC. [4] Интерес к ASIC-компонентам обусловлен тем, что какими бы быстрыми и энергоэффективными ни были FPGA-компоненты, поставщики ASIC’ов обещают удвоение производительности при 80-процентном сокращении потребляемой мощности. [3]


Усадка МПС на один чипсет


Итак, мы рассмотрели архитектуру HPEC, которая способна обеспечить высокую производительность при достаточно низком уровне SWaP. Однако в этом отношении есть и более передовое решение: концепция SoC, суть которой заключается в том, чтобы разместить всю микропроцессорную систему – на одном чипсете. SoC объединяет в себе программируемость процессора и конфигурируемость аппаратной части FPGA, обеспечивая непревзойдённый уровень системной производительности, гибкости и масштабируемости.


Значительный сдвиг в этом отношении в сторону программной составляющей – даёт возможность создавать многофункциональные системы со всевозрастающими возможностями и всеуменьшающимся размером и стоимостью. Применение перепрограммируемых компонентов также позволяет производить более дешёвые и быстрые обновления устаревших систем – без необходимости обновления аппаратного обеспечения с каждым инкрементивным улучшением их архитектуры, что для военной промышленности в особенности актуально.



Типичная SoC-система включает в себя:


  • микроконтроллер, многоядерный CPU, или DSP-ядро;
  • блоки памяти, с возможностью выбора: ROM, RAM, EEPROM и флэш;
  • таймеры, – включая генераторы и петли фазовой автоподстройки;
  • периферийные устройства, в том числе контр-таймеры, таймеры реального времени, генераторы включения и сброса;
  • внешние интерфейсы, в том числе общепринятые: USB, FireWire, Ethernet, USART, и SPI;
  • аналоговые интерфейсы, в том числе ЦАП и АЦП блоки;
  • регуляторы напряжения и схемы управления питанием;
  • шины передачи данных, посредством которых все вышеперечисленные блоки обмениваются информацией;
  • DMA-контроллеры, расположенные между внешними интерфейсами и памятью, которые позволяют обмениваться данными минуя ядро процессора, увеличивая тем самым пропускную способность SoC.

Новый тренд в такой широкомасштабной SoC-интеграции, – последней каплей для возникновения которого стала растущая популярность восьмиядерных процессоров, – это «внутричиповая сеть» (NoC). Данная концепция предлагает отказаться от традиционных шин передачи данных, и заменить их – внутричиповой сетью. Так например, Arteris Inc использует концепцию NoC для управления внутричиповым трафиком и для обмена управляющими сигналами, в результате чего достигается значительное увеличение пропускной способности. [7]


Архитектура SoC-системы от Arteris Inc


Врезка: Живой пример SoC-системы

Один из живых примеров SoC-системы – Xilinx' Zynq Ultrascale+ MPSoC. Это истинный SoC, созданный в духе «всё включено». На его борту расположены: 1) программируемая логика, 2) 64-разрядные четырёхядерные ARM A53 процессорные системы, 3) память, 4) функции безопасности, 5) четыре гигабитных приёмника. И всё это на одном чипсете! Архитектура SoC сулит конечному пользователи множество преимуществ: гораздо более высокую производительность, более быструю разработку и вывод на рынок, возможность использования опыта многих лет разработки программных алгоритмических решений – в проектировании аппаратных компонентов. [7] Xilinx' Zynq Ultrascale+ MPSoC


Заключение


Подводя итог обзору высокопроизводительных систем вообще, и SoC в частности, – как наиболее популярному на сегодняшний день их представителю, – можно сказать, что эволюция малого форм-фактора встраиваемых вычислительных систем произошла настолько быстро, а её влияние на архитектуру и на возможности системы настолько обширно, что инженерам-конструкторам могут потребоваться годы – чтобы интегрировать в свои решения эту ультрасовременную концепцию однокристальности. Кроме того, поскольку усилия по развитию SoC-систем в значительной степени направлены на то, чтобы аппаратное обеспечение устаревало как можно медленнее, – в них наблюдается тенденция преобладания перепрограммируемых компонентов. Поэтому есть основания предполагать, что наноэлектроника завтрашнего дня – будет иметь возможность полной пользовательской кастомизаци, в результате чего граница между аппаратным и программным проектированием полностью сотрётся. [7] Фактически такое событие ознаменует начало новой эры – полиморфной наноэлектроники, которая совместит в себе такие противоречивые характеристики, как гибкость программного уровня и высокую производительность аппаратного ускорения. Это позволит разработчикам брать от существующих программных и аппаратных архитектур только самые лучшие их характеристики, а слабые их стороны не то что игнорировать (как это делается при проектировании HPEC-архитектуры), а в принципе не включать в конечный дизайн устройства. При этом вероятность достижения эффекта синергии (о котором говорилось в обсуждении HPEC-архитектуры) значительно повышается. Что несомненно будет играть ключевую роль в повышении качества ситуационной осведомлённости, которая, как было сказано в начале статьи, – на сегодняшний день является ключом к боевому превосходству. Не только в воздушном пространстве, но и во всём остальном «театре боевых действий».



Библиография
  1. David Leas. Rapid Prototyping of Radar Signal Processing // Leading edge: Sensors. 7(2), 2012. pp. 76-79.
  2. Courtney E. Howard. HPEC enables onboard data processing for persistent surveillance // Military & Aerospace electronics: High-performance embedded computing. 27(7), 2016. pp. 16-21.
  3. Cell-based ASIC Migration Path.
  4. John Keller. Intel to boost integrated microprocessor and FPGA offerings with acquisition of Altera.
  5. Courtney E. Howard. Video and image processing at the edge // Military & Aerospace electronics: Progressive avionics. 22(8), 2011.
  6. Stephanie Anne Fraioli. Intelligence Support for the F-35A Lightning II // Air & Space Power Journal. 30(2), 2016. pp. 106-109.
  7. J.R. Wilson. Shrinking boards into systems on chip // Military & Aerospace electronics: Buyer’s Guide. 27(3), 2016. pp. 19-25.
  8. Courtney Howard. Data in demand: answering the call for communications // Military & Aerospace electronics: Wearable Electronics. 27(9), 2016.
  9. Prelipcean G., Boscoianu M., Moisescu F. New ideas on the artificial intelligence support in military applications, in Recent Advances in Artificial Intelligence, Knowledge Engineering and Data Bases, AIKED’10, 2010.
    10. John Keller. Hybrid processor architectures meet demands for SWaP // Military & Aerospace electronics: Avionics upgrades. 26(2), 2015. pp. 18-24.
  10. ASUS PhysX P1 (на базе PPU Ageia PhysX).
  11. Broad Agency Announcement: Hierarchical Identify Verify Exploit (HIVE) Microsystems Technology Office DARPA-BAA-16-52 August 10, 2016.
  12. Rugged smart camera for industrial environments introduced by ADLINK // Military & Aerospace electronics: High-performance embedded computing. 27(7), 2016. p. 27.
  13. Courtney Howard. Avionics: ahead of the curve // Military & Aerospace electronics: Avionics innovations. 24(6), 2013. pp. 10-17.

PS. Первоначально статья была опубликована в «Компоненты и технологии».


+11
7.4k 33
Comments 45