Аннотация
То, что началось более 20 лет назад как проект Министерства обороны США по созданию перепрограммируемой «на лету» радиосистемы для работы с множеством радиоприложений, превратилось в широко распространенную гибкую архитектуру, изменившую всю индустрию. В результате был разработан архитектурный фреймворк SCA (англ. Software Communication Architecture), который применяется сегодня более чем в 400 000 радиоустройств по всему миру. В этой статье исследуется развитие SCA от появления в рамках программы SPEAKeasy до релиза SCA 4.1.
Введение
SCA — независимый от конечной реализации архитектурный фреймворк, содержащий спецификации стандартизации инфраструктуры SDR (англ. Software-Defined Radio). SCA, изначально разработанная Министерством обороны США, поддерживается Объединенным центром тактических сетей (англ. Joint Tactical Networking Center, JTNC) в сотрудничестве с различными компаниями и организациями, такими как Форум беспроводных инноваций (англ. Wireless Innovation Forum, WinnF) [1]. Спецификация SCA оказала значительное влияние на эволюцию программно-определяемых радиосистем (англ. Software-Defined Radio, SDR), а ее принципы использовались при разработке продуктов в различных сферах промышленности по всему миру, как показано на рисунке 1 [2].
Рисунок 1. Использование SCA в мире.
Технологические достижения в сфере цифровых процессоров, увеличение частоты дискретизации аналого-цифровых преобразователей и другие технологические разработки способствовали продолжающемуся переходу методов обработки комплексных сигналов в цифровую область. Этот рост существенно изменил процесс проектирования радиосистем и их архитектуру. Последние поколения SDR превратились в сложные, преимущественно программные системы, способствующие дальнейшему развитию коммуникационных возможностей. SDR позволила реализовать более экономичный и эффективный жизненный цикл радиосистем, предоставив возможность добавления и обновления системных функций без аппаратных изменений. До того, как SCA стала стандартом с открытой архитектурой, для разработки SDR применялись проприетарные архитектуры, что тесно связывало аппаратные платформы и радиоприложения уникальным для каждого производителя SDR образом. SCA была построена на основе предыдущих поколений SDR, ускорив развитие современных радиосистем за счет эффективного привлечения крупных инвестиций в сферу коммерческого программного обеспечения и продвижения открытых стандартов. Спецификация SCA и окружающие ее технологии способствуют повторному использованию программного обеспечения и упрощенной адаптации радиоприложений к новым аппаратным средствам среди платформ SDR и позволяют достичь ключевых общеотраслевых целей:
SCA предоставляет набор правил и условий взаимодействия между радиоприложениями и аппаратными радиоплатформами, эффективно применяя парадигму объектно-ориентированного программного обеспечения и используя компонентно-ориентированную разработку (англ. Component-Based Development, CBD). Технологию CBD иногда называют «промышленной революцией» программного обеспечения, стимулировавшей появление взаимозаменяемых программных компонентов, созданных согласно спецификациям [3]. При использовании технологий CBD программные компоненты представляются как целостные объекты с набором определенных возможностей и функций ввода/вывода. Компоненты соединяются между собой и создают полноценные приложения, например, радиоприложения SDR. Спецификация SCA также определяет основной набор системных интерфейсов и профилей с открытой архитектурой, который предоставляет возможности конфигурирования, сборки, внедрения и управления компонентами, окончательно формирующими радиоприложения. Компоненты радиоприложений могут располагаться на разных аппаратных элементах SDR таким образом, как это необходимо разработчикам радиосистем. Это расположение должно соответствовать общим требованиям SDR, возможностям и конструктивным особенностям аппаратной части радиоплатформы и совокупности архитектуры и конфигурации программного обеспечения SDR.
Ранние разработки SCA начались в рамках проекта Министерства обороны США – SPEAKeasy. SPEAKeasy был запущен в 1991 году с целью создания SDR-системы, способной к перепрограммированию в процессе работы и поддержке множества стандартов радиоинтерфейсов (названных радиоприложениями) одновременно [4]. Эта возможность была очень привлекательной для военного применения как способ уменьшения долгосрочных затрат на внедрение и обслуживание аппаратных радиосистем. Платформа SPEAKeasy состояла из массива процессоров TMKS320C40 от Texas Instruments и других процессоров специального назначения, размещенных на стандартной печатной плате. Платформа также включала отдельную подсистему трансивера и программируемый модуль информационной безопасности INFOSEC. В целях проверки концепции, помимо SPEAKeasy, финансировались и другие проекты, такие как Объединенный боевой информационный терминал (англ. Joint Combat Information Terminal, JCIT) и Цифровое модульное радио (англ. Digital Modular Radio, DMR). Эти проекты дополнительно подтвердили возможность реализации и внедрения SDR.
По результатам опыта, полученного при создании SPEAKeasy, стало ясно, что существовала необходимость в общей системе управления радиоустройствами для внедрения, конфигурирования и управления программным обеспечением обработки сигналов, а также других компонентов радиоприложений. Эта система управления создавалась отдельно для каждого из ранних проектов, что ограничивало ее повторное использование на разных платформах. Для поддержки актуальности системы и разработки радиоприложений несколько команд одновременно начали создание общего фреймворка и рабочего окружения на второй фазе программы SPEAKeasy [5], которая началась в 1995 году.
Элементы этой программной архитектуры были представлены на форуме многофункциональных модульных систем передачи информации (англ. Modular Multifunction Information Transfer Systems, MMITS), который был основан по инициативе ВВС США в качестве промышленной ассоциации, специализирующейся на развитии технологий SDR. В 1997 году форум MMITS опубликовал «Технический доклад 1.0», в котором были определены архитектура и элементы программно-определяемых радиосистем [6, 7]. В 1998 году форум MMITS был переименован в Форум SDR и продолжил развитие архитектуры силами своего ответвления Mobile Working Group, что привело к созданию архитектуры программного радио (англ. Software Radio Architecture, SRA), опубликованной в «Техническом отчете 2.1» в качестве промышленного стандарта в 1999 году [8].
SRA была разработана для поддержки функциональных интерфейсов, представленных на рисунке 2. Ключевые требования к архитектуре включали масштабируемость, возможность реализации архитектуры на как можно большем количестве радиоплатформ, возможность обновления для расширения функционала и добавления новых радиоприложений без модификаций аппаратных платформ. Для достижения этих целей SRA использует объектно-ориентированный основной фреймворк, состоящий из менеджера домена, файлового менеджера, менеджера ресурсов и устройств, необходимых для установки, удаления и контроля радиоприложений. Общая архитектура брокера объектных запросов (англ. Common Object Request Broker Architecture, CORBA) была выбрана в качестве слоя связующего программного обеспечения или «программной шины» в этой архитектуре, а общее рабочее окружение базировалось на спецификации POSIX. Приложения, использующие этот фреймворк, созданы на базе модели компонентов Рабочей группы разработки и продвижения объектно-ориентированных технологий и стандартов (англ. Object Oriented Group, OMG) и были инстанцированы при помощи «фабрики приложений».
Рисунок 2. Диаграмма функционального интерфейса по версии Форума SDR.
Объединенная система тактической радиосвязи
В конце 1990-х годов было сформировано Управление по разработке совместных программ (англ. Joint Program Office, JPO) в сфере Объединенной системы тактической радиосвязи (англ. Joint Tactical Radio Systems, JTRS) для разработки семейства новых реконфигурируемых программных радиосистем. Одно из первых действий управления — определение общей программной инфраструктуры нового семейства радиосистем. Была профинансирована разработка фреймворка радиоустройства и создан исследовательский консорциум модульных программных радиоустройств (англ. Modular Software Radio Research Consortium MSRC). Принципы SRA развивались членами MSRC, работающими в сотрудничестве с подразделением форума MMITS Mobile Working Group. Это привело к появлению JTRS SCA. [9].
Ранние версии SCA
На временном графике рисунка 3 показаны различные ключевые точки в развитии спецификации SCA. В конце 1990-х годов существовало несколько предварительных версий, предшествовавших v.1.0, которая была выпущена в начале 2000 года. Несмотря на то, что в них часть SCA была реализована в виде прототипов, спецификация в целом не была достаточно развитой и готовой для создания полного программного фреймворка для радиоприложений. Версия 1.0 стала первой версией достаточной, чтобы создавать полноценные прототипы, что и было сделано несколькими членами MSRC.
Следующий релиз, v1.1, был использован в качестве утверждения концепции и демонстрировал, как SCA может быть использована для конфигурации и управления уже существующей радиосистемой. Одна из таких демонстраций, состоявшаяся в 2000 году в рамках второго этапа программы JTRS, являлась совместной демонстрацией Harris Corporation и Exigent: тактическое радио Harris Corporation подключалось к ПК, на котором был запущен основной фреймворк (англ. Core Framework, CF), разработанный Exigent. Демонстрация показала, что размещение и конфигурация радиоприложения на радиосистеме Harris могут успешно выполняться и контролироваться основным фреймворком SCA от Exigent, запущенным на ПК.
Рисунок 3. Развитие спецификаций SCA.
Демонстрация выявила некоторые недостатки спецификации, касающиеся интерфейсов контроля, а также спецификации и конфигурирования устройств. Версия 2.0 стала результатом следующей ревизии и модификации спецификации. Возникшие позднее предварительные улучшения породили дальнейшие модификации, и в ноябре 2011 года была выпущена версия 2.2, которая была признана достаточно развитой, чтобы использоваться в качестве базы для разработки и внедрения тактической SDR-системы.
Вместе с выходом SCA 2.2 правительство США заказало разработку первого поколения радиосистем, совместимых с SCA. В июне 2002 года была профинансирована первая крупная программа с использованием SCA. Cluster 1, позже переименованная в Программу наземного мобильного радио (англ. Ground Mobile Radio, GMR), стала пилотным проектом, который использовал версию SCA 2.2. Позднее были созданы и другие программы JTRS. В апреле 2004 года, почти три года спустя после появления спецификации 2.2, была выпущена версия 2.2.1, которая исправляла ошибки в спецификации 2.2 и вводила некоторые пояснения и улучшения.
SCA 3.0
В то же время в программах JTRS Cluster появились проблемы, связанные с адаптацией радиоприложений к новым аппаратным средствам. Код, разработанный для процессора общего назначения (англ. General Purpose Processor, GPP), достаточно хорошо адаптировался под новые платформы. Однако код для цифрового сигнального процессора (англ. Digital Signal Processor, DSP) и программируемой логической матрицы (англ. Field Programmable Gate Array, FPGA) обычно был привязан к модели процессора и архитектуре радиоустройства.
Задача обеспечения портируемости кода для DSP и FPGA остро встала в конце 2004 года. Для ее решения JPO созвало несколько рабочих встреч, и в результате была разработана спецификация SCA 3.0. Эта версия изменила некоторые ключевые требования SCA. Кроме того, она установила дополнительные ограничения программного обеспечения для DSP, определяющие, какие системные вызовы может использовать его код; сформировала набор компонентов радиоприложений и высокоуровневый способ передачи данных HAL-C; а также содержала в себе секцию API для работы с антенной. Сообщество посчитало, что соответствие новой спецификации требует от них дополнительных усилий и, несмотря на то, что ее принципы и подходы были потенциально полезными, более углубленного и детального понимания того, что из этих принципов и подходов можно эффективно реализовать на практике.
JTRS API и SCA 2.2.2
В конце 2005 - начале 2006 года JPO была реорганизована в JPEO JTRS и вернулась к решению задач адаптации радиоприложений к новым аппаратным средствам, которые обсуждались в рамках программы JTRS. Проблема заключалась в том, что существовало недостаточное количество спецификаций API для основных аппаратных элементов. Это привело к формированию рабочей группы, занимающейся API для анализа и выделения набора интерфейсов аппаратного обеспечения радиосистемы. Первоначальная работа основывалась на программе Cluster 1 и привела к спецификации различных ключевых API общих аппаратных элементов. С релизом SCA 2.2.2 в 2006 году и продолжающейся работой над API разработка SCA 3.0 была сомнительной и значилась на сайте JPEO как «неподдерживаемая». SCA 2.2.2, как видно по номеру, является следующей версией после SCA 2.2.1.
Вклад Форума SDR
В связи со стремительным развитием программы JTRS MSRC был распущен. Большая часть участников MSRC также были основателями Форума SDR, что стало катализатором активности в сфере SCA и в связанных с SCA сферах. Ранняя активность Форума заключалась в спонсорстве проекта по реализации SCA с открытым исходным кодом. Результатом этого проекта стала эталонная реализация SCA (англ. SCA Reference Implementation, SCARI), проект, разработанный научно-исследовательским центром связи (англ. Communication Research Centre, CRC). SCARI-OPEN – реализация SCA с открытым исходным кодом, написанная на языке Java и доступная для скачивания [10]. Другим проектом была разработка эталонной реализации FM3TR, многорежимного радиоприложения, поддерживающего передачу как голоса, так и данных. Оно было разработано в середине 2000-х и на данный момент доступно для исследований сообщества.
В 2004 году представители Harris Corporation и CRC провели демонстрацию совместимости двух независимо разработанных спецификаций SCA. Эта демонстрация подчеркнула эффективность применения общего набора интерфейсов и определений в различных радиосистемах.
Многочисленные вклады были сделаны Форумом в рамках поддержки мирового развития SCA:
SCA Next и SCA 4.1: на пути к гармонизации рынка
Появление специализированных версий SCA потребовало от производителей и разработчиков SDR-технологий рассеивания усилий, чтобы удовлетворить потребности всего международного сообщества. Это привело к постепенному удорожанию, ставшему закономерным результатом снижения эффекта масштаба. Признав эту проблему, члены Форума SDR, переименованного в Форум беспроводных инноваций, в 2010 году сформировали координационный комитет по международным стандартам SCA, содействующий «гармонизации стандартов, основанных на SCA, на международном уровне для взаимной выгоды всех заинтересованных сторон». Первыми этапами работы этого комитета стали создание «Координационной модели для международных стандартов SCA» (документ WINNF-10-R-0018) и утверждение трехуровневой модели стандартизации SCA:
Параллельно Объединенный центр тактических сетей (англ. Joint Tactical Networking Center, JTNC) начал работу над инициативой SCA Next для разработки следующей версии SCA 4.0. Цель этой инициативы — основываясь на опыте, полученном от использования более 400 000 SCA-совместимых радиоустройств по всему миру, повысить производительности SCA и расширить сферы ее применения на рынке SDR. Ключевые особенности, добавленные в эту версию спецификации:
Элементы архитектуры ESSOR и других международных версий были включены в SCA 4.0, основываясь на рекомендациях, предоставленных Форумом беспроводных инноваций [13]. SCA 4.0 была официально выпущена 28 февраля 2012 года. После экспериментальных разработок различными организациями были выявлены элементы, требовавшие дальнейшей доработки для большего соответствия целям новой спецификации. Разработку SCA 4.1 инициировала рабочая группа Форума беспроводных инноваций, ведущая координацию работы всех ключевых участников и взаимодействующая с JTNC. Работы над SCA 4.1 близки к завершению. Форум беспроводных инноваций предоставил шесть рекомендаций и две новые спецификации для JTNC с целью их включения в переработанный стандарт. Черновая версия SCA 4.1 была выпущена в январе 2015 года, а окончательная спецификация позже в том же году. Несмотря на то, что нынешнее ПО для радиосистем все еще базируется на SCA 2.2.2, ожидается, что будущее ПО и проекты будут развиваться в сторону версии SCA 4.x
Что дальше?
SCA доказала свою ценность в качестве эталонного фреймворка для проектирования и разработки военных тактических радиосистем. Она была внедрена и использована солдатами на поле боя по всему миру. Своим компонентным подходом к проектированию SCA значительно изменила современный процесс создания радиоустройства, позволяя реализовать более высокий уровень гибкости и снижать стоимость разработки. Из первоначального стандарта разработки военных радиосистем Министерства обороны США SCA 4.1 превратилась в международную спецификацию, частично, благодаря Форуму беспроводных инноваций, который был инициатором процесса объединения усилий мировых правительственных агентств и промышленностей для улучшения версии SCA 2.2.2.
Будущее SCA находится в руках сообщества, которое должно развивать архитектуру для преодоления барьеров, с которыми сталкивается внедрение новых технологий. На графике кривой внедрения технологии на рынке тактических радиосистем SCA, без сомнений, прошла этап «раннего внедрения» и сейчас двигается по этапу «раннего большинства». Сообщество предпринимает дальнейшие шаги для более широкого внедрения и распространения технологии, чтобы SCA продолжала развиваться.
Разработка международных API
Для завершения работы над полноценным фреймворком разработки радиоустройств и создания настоящего стандарта совместимости важно иметь набор API, на которых могут разрабатываться и согласовываться совместимые платформы и приложения. Некоторые API уже были созданы [14], но многие еще требуют разработки, например, API трансивера и безопасности. Важно, чтобы эти API получили международное признание и поддержку от военных программ закупок. Форум беспроводных инноваций играет основополагающую роль в этой задаче.
Экспансия на другие военные рынки
Сфера тактических радиосистем являлась акселератором в развитии и внедрении этой технологии. Однако SCA не ограничивается лишь применением в сфере военного радио. Подход компонентного проектирования (англ. Component-Based Design, CBD) программного обеспечения может быть использован и в других сферах. Это особенно актуально в сложных гетерогенных и распределенных встраиваемых системах, в которых применение коммерческих подходов CBD неэффективно. Путем простой модификации доменных API многие другие военные системы могут получить преимущества компонентного стандартизованного процесса, который обеспечивает эта технология. Средства радиоэлектронной борьбы, радиолокационные системы, авиационная радиоэлектроника, радиотехническая разведка и системы вооружения являются очень сложными системами, сильно зависящими от обработки сигналов и гетерогенных встраиваемых систем. Необходимо оказать содействие военным организациям по всему миру, чтобы расширить применение этой технологии, помимо сферы радиосвязи. Особенно актуальным это становится с началом исследований когнитивных радиосистем. Стандартизация с использованием проверенной технологии будет намного проще, чем в начальный период программы JTRS, когда лидеры промышленности являлись настоящими пионерами, сделав ставку на революционную технологию.
Очень важно гарантировать внедрение этого стандарта по всему миру, особенно внутри военных структур, чтобы избежать двойной работы в параллельных программах, которая приведет к схожим, но несовместимым архитектурам.
Экспансия на коммерческие рынки
Коммерческий сектор также является важным рынком, на котором SCA могла бы приносить большую прибыль, может быть, не на потребительском, но уж точно на промышленном рынке: в сфере телекоммуникационных систем, тестового и измерительного оборудования, робототехники, транспорта и др. В Японии, например, часть железнодорожных телекоммуникационных систем построена на спецификации SCA [15]. Использование SCA в этих секторах будет способствовать установлению SCA как стандарта для разработки программного обеспечения встраиваемых систем и сред развертывания. Чем шире будет становиться область признания технологии, тем сильнее будет экосистема разработки, предоставляя производителям больший выбор встроенных программных инструментов, аппаратных платформ и компонентов обработки сигналов, которые производители могли бы использовать, снижая сроки и стоимость разработки.
Форум беспроводных инноваций как международная организация продолжит играть важную роль в объединении сил для того, чтобы спецификация и стандартные API продолжали развиваться. Он также сыграет важную роль в продвижении использования спецификации в сферах, отличных от военной радиосвязи.
Источник:
IEEE Communications Magazine
(Volume: 53, Issue: 9, September 2015)