Способ оптимизации архитектуры бортовой сети летательного аппарата
AIRCRAFT ONBOARD NETWORK ARCHITECTURE OPTIMIZATION METHOD

Изобретение относится к средствам оптимизации архитектуры одноранговой бортовой вычислительной сети летательного аппарата, в частности, к способам снижения внутрисетевого трафика за счет оптимального перераспределения вычислительных задач между элементами бортовой сети в системах авионики, построенных на базе распределенной модульной электроники (РМЭ). Изобретение может быть использовано при проектировании или модернизации архитектуры комплекса бортового оборудования (КБО) воздушного судна, построенного на базе РМЭ.
Системы авионики на базе РМЭ характеризуются увеличением числа функций (здесь и далее под функцией понимается задача или система задач, объединенных общей логической целью, выполняемая специальным приложением, установленным на вычислителе) и повышением степени интегрированности, а также являются более легкими, безопасными и дешевыми в обслуживании по сравнению с системами предыдущих поколений. Перечисленные преимущества достигаются не только за счет разработки новых аппаратных устройств конфигурации системы, но и за счет повышения оптимального планирования архитектуры систем авионики.
Оптимизация архитектуры бортовой вычислительной сети в процессе проектирования или модернизации систем авионики предполагает анализ исследуемых архитектур с использованием современных информационных компьютерных технологий. Формализация необходимых требований к анализируемой системе, например, по надежности и производительности, должна находить отражение в предметно-ориентированных моделях архитектуры системы авионики. Проектирование или модернизация архитектуры систем авионики также зачастую предполагает решение задач автоматизации оценивания целей проектирования (модернизации) таких систем для создания тщательно отработанных проектов.
Автоматизация проектирования (модернизации) системы авионики предполагает автоматическую оптимизацию ее архитектуры. Указанный подход является единственно возможным в настоящее время, так как количество элементов проектируемого комплекса и взаимосвязей между ними настолько велико, что не позволяет решать поставленную задачу «вручную».
Для разработки работоспособной надежной отказоустойчивой архитектуры авионики необходимо грамотно реализовать процедуру проектирования (модернизации). Проектирование (модернизация) системы на базе РМЭ должно осуществляться на основе выбора наилучшего, в смысле набора критериев, решения и обеспечивать оптимальный выбор в смысле этих критериев.
Известен «Способ оптимизации параллельной обработки информации для минимизации ее стоимости», предложенный в патенте РФ № 2191424 от 03.04.2000. Изобретение относится к системам параллельной обработки информации. Его использование в локальных вычислительных сетях позволяет получить технический результат в виде оптимального использования ресурсов локальной вычислительной сети. Способ предназначен для использования в локальных вычислительных сетях, содержащих рабочие станции, среди которых имеется одна главная рабочая станция и удаленные, при этом главная рабочая станция выполняет диспетчерские функции, декомпозируя решаемую задачу и распределяя отдельные вычислительные процессы. Технический результат достигается посредством распределения отдельных вычислительных процессов с наименьшей загрузкой в части использования процессорного времени, а определение оптимального количества параллельно выполняемых процессов осуществляют на главной рабочей станции согласно заранее заданным условиям. Предложенный способ позволяет лишь оптимизировать использование машинного времени, но не учитывает ряд других важных показателей, определяющих ресурсоемкость задачи, таких как занимаемый объем памяти ОЗУ и ПЗУ, количество используемых системных тактов в единицу времени, объем использования несетевых интерфейсов процессора (таких как SPI, I2C и т.п.). Также, предложенный способ ориентирован на оптимизацию архитектуры типа клиент-сервер и не позволяет выбрать состав сети (ее вычислительных элементов) из априорного набора, таким образом, чтобы распределение вычислительного ресурса было оптимальным по таким показателям как количество используемых вычислителей и информационной загрузки сети. Таким образом, описанный способ неприменим для оптимизации архитектуры одноранговой бортовой сети, построенной на базе РМЭ, процесс проектирования (модернизации), поскольку должен учитывать ряд важных параметров (указанных выше), отсутствующих в рассматриваемом способе.
Наиболее близким к заявленному способу является «Система распределения ресурсов», предложенная в патенте РФ №2189073 от 13.10.2000. Технический результат изобретения заключается в расширении круга решаемых задач и упрощении алгоритма работы. В представленной системе происходит последовательный опрос избыточных ресурсов каждого локализованного центра (ЛЦ), суммирование однородных ресурсов, распределение каждому локализованному центру недостаточного ресурса. Каждый ЛЦ формирует избыток по ресурсам, а также представляет перечень ресурсов, в которых он (ЛЦ) нуждается. Система распределения из всего объема суммированных ресурсов распределяет по потребности каждого ресурса каждому ЛЦ. Распределение ресурсов может осуществляться как в обычном режиме (без приоритетов), так и с установлением приоритетов. Описанный аналог может использоваться для аппаратно-программной реализации способа перераспределения вычислительного ресурса бортовой сети в процессе ее работы, но неприменим в качестве способа оптимизации вычислительных ресурсов в процессе проектирования (модернизации) бортовых сетей летательных аппаратов построенных на базе РМЭ, так как этот способ предполагает наличие системы распределения как отдельного функционального блока, к которому поступает информация об избытке или недостатке ресурсов от каждого ЛЦ.
Задачей изобретения является оптимизация архитектуры одноранговой бортовой вычислительной сети летательного аппарата (в смысле минимизации количества вычислителей бортовой сети, а также минимизации внутрисетевого трафика за счет оптимального перераспределения вычислительных задач между элементами бортовой сети) с учетом заданных ограничений, определяющих требуемые характеристики в части функциональности, надежности и отказоустойчивости оптимизируемой бортовой сети.
Технический результат предлагаемого изобретения заключается в повышении надежности и отказоустойчивости проектируемой (модернизируемой) бортовой сети при минимизации количества вычислителей бортовой сети и оптимизации информационных потоков в вычислительной сети РМЭ в части минимизации трафика с соблюдением всех требований к информационному обеспечению КБО.
Технический результат достигается при помощи предлагаемого способа, при котором на первом этапе в электронно-вычислительную машину (ЭВМ) задают состав и параметры анализируемой бортовой вычислительной сети летательного аппарата: перечень типов вычислителей из состава оптимизируемой бортовой сети с заданными параметрами, перечень функций, принадлежащих системам бортовой сети, с заданной ресурсоемкостью, взаимосвязи между заданными функциями, перечень исключений, определяющих запрет нахождения определенных типов функций в одном вычислителе, формируют значения коэффициентов приоритета и пределы загрузки вычислителя.
На втором этапе поочередно сопоставляют ресурсоемкость каждой функции с параметрами каждого вычислителя, и выбирают вычислитель и функцию, обеспечивающие при сопоставлении параметров вычислителя и ресурсоемкости присваиваемых ему функций наименьшее значение сопоставления.
На третьем этапе выбранную на втором этапе функцию поочередно объединяют с каждой оставшейся функцией из заданного перечня, с учетом заданного перечня исключений, и поочередно сопоставляют ресурсоемкость такого объединения функций с параметрами каждого вычислителя из заданного перечня, при этом выбирают вычислитель, обеспечивающий наименьшее значение сопоставления параметров вычислителя и ресурсоемкости присваиваемого ему объединения функций.
На четвертом этапе полученное объединение функций объединяют поочередно с каждой оставшейся функцией из заданного перечня, не входящей в полученное объединение, с учетом заданного перечня исключений и поочередно сопоставляют ресурсоемкость такого объединения функций с параметрами каждого вычислителя из заданного перечня, при этом выбирают вычислитель, обеспечивающий наименьшее значение сопоставления параметров вычислителя и ресурсоемкости присваиваемого ему объединения функций, и повторяют четвертый этап до тех пор, пока при сопоставлении ресурсоемкость объединения функций не превысит параметры каждого вычислителя из заданного перечня.
На пятом этапе используют последнее объединение функций и вычислитель, при сопоставлении ресурсоемкости и параметров которых ресурсоемкость последнего объединения функций не превышала параметры каждого вычислителя из заданного перечня, определяют вычислитель и подмножество функций, входящих в полученное объединение функций, помечают как использованные, далее используют функции и вычислители, не помеченные как использованные на предыдущем этапе, и повторяют этапы со второго по пятый до тех пор, пока каждой функции не будет определен вычислитель. В соответствии с определением (Мильнер Б.З. Теория организаций. М.: Инфра-М, 2008. 480 с) под функционально-структурной организацией бортовой сети воздушного судна будем понимать структуру распределения функций по вычислителям масштабируемой РМЭ второго поколения. В наиболее общем виде функциональные блоки модульной авионики, как информационной системы управления, включают:
- ввод информации из внешних или внутренних источников;
- обработка входной информации и представление ее в удобном виде;
- вывод информации для представления потребителям или передачи в другую интегральную схему;
- обратная связь - это информация, переработанная членами летного экипажа для коррекции входной информации.
Функции авионики не стандартизируются, их состав и структура зависят от выбора авиастроительной компании и типа воздушного судна ( B., Thielecke F. A systems architecting framework for optimal distributed integrated modular avionics architectures // CEAS Aeronaut. J. 2015. Т. 6, № 3. С. 485-496).
Структура функций может быть представлена в виде графа, либо стрелочного, либо вершинного (Таха Х. Введение в исследование операций: в 2-х книгах. М.: Мир, 1985). В первом случае функции обозначаются дугами графа (стрелками), расположенными в заданной логической последовательности, при этом вершины графа задают события начала и окончания действия функции. Во втором случае функции обозначаются как вершины графа, расположенные в последовательности, заданной его дугами. Такое представление целесообразно в связи со связанностью функций, обусловленной необходимостью информационного обмена между ними.
Для планирования системы на базе РМЭ необходимо знать, из каких функциональных блоков состоят системы, отдельные требования к ним и потоки сообщений. Основная задача планирования системы на базе РМЭ заключается в распределении функциональных блоков системы между устройствами разрабатываемой архитектуры.
Функции авионики различаются при статическом проектировании и при динамическом проектировании. Статическое проектирование предполагает не изменяемую конфигурацию устройств, т.е. не изменяемое во времени распределение функциональных блоков между устройствами архитектуры системы РМЭ. Динамическое проектирование предполагает возможность реконфигурации с целью повышения эксплуатационной готовности системы в случае возникновения нештатных ситуаций.
Для иллюстрации состава функций авионики при статическом проектировании можно использовать обобщенный типовой набор функций, выполняемый КБО воздушного судна (Butz H. Open integrated modular avionic (ima): State of the art and future development road map at airbus deutschland // Signal. 2010. Т. 10. 1000 с., Дегтярев А.Р., Медведев Г.В. Алгоритм распределения задач в многопроцессорных комплексах интегрированной модульной авионики // Автоматизация процессов управления. 2014. Т. Т.35, № 1. С. 79-84.):
- решение задач навигационного обеспечения;
- самолетовождение по запрограммированному маршруту;
- формирование и отображение полетно-навигационной информации (ПНИ);
- пилотирование и управление полетом;
- круглосуточная обзорная система;
- оперативный ручной ввод заданных значений параметров полета;
- отсчет и отображение текущего и полетного времени;
- ручная и автоматическая настройка радиотехнических систем навигации и посадки;
- беспечение взаимодействия с радиолокаторами управления воздушным движением;
- передача информации в обеспечение автоматического зависимого наблюдения;
- контроль состояния силовой установки и бортового оборудования;
- управление бортовым оборудованием;
- управление системой электропитания бортового оборудования;
- формирование и регистрация массива полетной информации в бортовом регистраторе;
- функции комплекса средств связи;
- передача радиосигналов бедствия;
- полетный автоматический контроль исправности комплекса с отображением результатов контроля.
При динамическом проектировании добавляются функции, связанные с изменением распределения функциональных блоков между устройствами архитектуры системы при частичной потере работоспособности последних.
Выбор варианта функционально-структурной организации бортовой сети воздушного судна наиболее ответственная задача при проектировании РМЭ, поскольку она определяет эффективность решения задач последующих уровней. Такое утверждение хорошо иллюстрируется метамоделью архитектуры системы РМЭ, предложенной в (Annighofer В., Thielecke F. A systems architecting framework for optimal distributed integrated modular avionics architectures // CEAS Aeronaut. J. 2015. T. 6, № 3. C. 485-496).
Структура архитектуры системы РМЭ основана на трех уровнях - системы, оборудования и установки. Верхний уровень системы отражает функциональную структуру. Каждой функции соответствует программный пакет, который, в свою очередь, состоит из элементарных задач, структура которых определяется передаваемыми сигналами или (и) логической последовательностью выполнения задач. Выбранные на начальном этапе анализа архитектуры состав и структура функций, определяет их распределение по устройствам на следующем уровне. Соответственно планирование линий связи между устройствами определяется сигналами первого уровня. Далее, состав и структура устройств на втором уровне служит исходной информацией для проектирования мест установки устройств и прокладки кабельных трасс на уровне установки. Таким образом, нерациональное распределение функций на системном уровне влечет неэффективные решения на последующих уровнях метамодели, так как отображения программного обеспечения в устройства РМЭ и отображение устройств в места установки зависит от соответствующего распределения. И наоборот, оптимальное распределение функций на системном уровне является необходимым условием оптимальной организации бортовой сети на уровнях оборудования и установки.
Правила выбора рациональной структурной организации функций являются предметом изучения в теории распределенных вычислений. Распределенные вычисления являются частным случаем параллельных вычислений, т.е. одновременного решения различных частей одной вычислительной задачи несколькими вычислительными устройствами. При изучении параллельных вычислений основной акцент делается на методы декомпозиции решаемой задачи на подзадачи, которые могут выполняться одновременно, как правило, для максимального ускорения вычислений. Основная особенность в организации параллельных вычислений заключается в необходимости учитывать различие характеристик доступных вычислительных устройств и наличие существенной временной задержки при обмене данными между ними.
Если рассматривать распределенную систему с аппаратной точки зрения в виде совокупности взаимосвязанных автономных компьютеров или процессоров, с программной точки зрения - в виде совокупности независимых процессов (исполняемых программных компонентов или задач), взаимодействующих посредством передачи сообщений для обмена данными и координации своих действий, то становится очевидным, что структурная организация функций в рамках архитектуры РМЭ близка к организации распределенных вычислений. Следовательно, методы организации функциональных структур в программных приложениях авионики могут основываться на известных методах и алгоритмах декомпозиции в параллельных вычислениях (Гергель В.П., Фурсов В.А. Лекции по параллельным вычислениям. Самара: Изд-во Самарского государственного аэрокосмического университета, 2009).
Цели организации функциональных структур могут варьироваться. При организации параллельных вычислений в качестве цели обычно рассматривается сокращение времени вычислений при заданном количестве вычислительных устройств или минимизация количества вычислительных устройств при ограничении на время. В авионике, при использовании многомашинных комплексов с автономной памятью каждого процессора, необходимо обеспечивать высокую реальную производительность (степень загруженности) крейтов, которая в настоящее время имеет уровень значительно ниже потенциально возможного. С этих позиций, при решении многосвязных задач и задач, схожих с ними по организации вычислительного процесса, в которых задействуется большое число вычислителей с интенсивным межпроцессорным информационным обменом, использование многомашинных вычислительных комплексов нецелесообразно. Возникает актуальная задача разработки математических методов декомпозиции функциональных задач вычислительных комплексов на частные независимые подзадачи, каждая из которых может быть реализована на своем вычислителе в общем крейте комплекса бортового оборудования воздушного судна.
Решение, представленное в изобретении, описывает способ оптимизации архитектуры одноранговой бортовой вычислительной сети летательного на уровне систем, независимо от типа проектирования (статического или динамического). При этом учитываются следующие параметры функций:
- тип функции;
- объем используемой оперативной памяти RAM;
- объем используемой энергонезависимой памяти ROM;
выз.
- периодичность вызова T;
T
- количество тактов вычислителя, за которые выполняется функция N;
- размер сообщения, передаваемого при каждом вызове DataSize.
и вычислителей:
CPU
- объем оперативной памяти RAM;
CPU
- объем энергонезависимой памяти ROM;
CPU
- производительность F;
AFDX
- пропускная способность сетевого интерфейса V.
Будем считать, что ограничения, соответствующие требуемому уровню функциональности, надежности и отказоустойчивости бортовой сети, определяются перечнем взаимных исключений для всех функций уровня систем, который может быть представлен в виде таблицы. Другими словами, перечень взаимных исключений определяет запрет нахождения заданных типов функций в одном вычислителе. Также отметим, что под ресурсоемкостью подмножества функций M будем понимать совокупность следующих параметров:
- объем используемой оперативной памяти ; (1)
- объем используемой энергонезависимой памяти ; (2)
- доля используемой производительности ; (3)
- доля пропускной способности сетевого интерфейса  (4)
Для решения поставленной задачи взаимосвязи между функциями уровня систем метамодели могут быть представлены в виде ориентированного взвешенного графа (графа взаимосвязей). В таком случае вершинами графа являются функции с заданной ресурсоемкостью. Ребра графа взаимодействия определяются связями между функциями на уровне систем, при этом вес ребра определяется интенсивностью обмена данными между связанными функциями.
AFDX
Будем считать, что взаимосвязь между функциями, которые были распределены между разными вычислителями, осуществляется через сетевой интерфейс (для систем авионики это интерфейс AFDX). В процессе оптимизации также учтем минимизацию трафика между всеми вычислителями бортовой сети (параметр V). Сопоставление параметров вычислителя и ресурсоемкости подмножества функций, присваиваемого данному вычислителю в процессе оптимизации архитектуры бортовой сети осуществляется с учетом ограничений, описываемых следующей системой неравенств:
(5)
RAM
ROM
F
где L, L и L – пределы загрузки вычислителя для оперативной памяти, энергонезависимой памяти и производительности соответственно (изменяются от 0,01 до 1).
В процессе оптимизации архитектуры бортовой сети с помощью настоящего способа используется сопоставление параметров вычислителя и ресурсоемкости присваиваемого ему подмножества функций уровня систем метамодели, имеющее следующий вид:
(6)
где
(7)
и выполняются условия
(8)
opt
CPU
CPU
CPU
AFDX
RAM
ROM
F
AFDX
CPU
CPU
CPU
FDXA
Минимизация значения сопоставления I характеризует процесс минимизации неиспользуемых ресурсов вычислителя по набору параметров RAM, ROM, F, а также трафика через сетевой интерфейс вычислителя V, что, в свою очередь, приводит к минимизации количества вычислителей в оптимизируемой бортовой сети, а также интенсивности информационных потоков между ними. Отметим, что априорные требования к ресурсам бортовой сети и приоритетам процесса оптимизации можно задавать с помощью коэффициентов приоритета K, K, K, K (изменяются от 1 до 10), определяющих важность (приоритетность) оптимизации параметров RAM, ROM, F и V соответственно.
opt
Таким образом, способ оптимизации архитектуры бортовой сети летательного аппарата заключается в минимизации значения сопоставления I (6) с учетом выполнения условий (8), а также условий, определяемых перечнем взаимных исключений.
Входными данными для осуществления способа являются перечень взаимных исключений, который может быть представлен в виде таблицы, перечень вычислителей с заданными параметрами, перечень функций с заданной ресурсоемкостью и связи между функциями, которые могут быть представлены при помощи графа взаимосвязей.
Предлагаемое изобретение осуществляется следующим образом.
CPU
CPU
CPU
AFDX
выз.
T
ОЗУ
ПЗУ
F
RAM
ROM
F
AFDX
CPU
CPU
CPU
AFDX
На первом этапе в ЭВМ задают перечень вычислителей оптимизируемой бортовой сети с заданными параметрами: объемом оперативной памяти RAM, объемом энергозависимой памяти ROM, производительностью F, пропускной способностью сетевого интерфейса V. Далее задаются функции, принадлежащие системам оптимизируемой бортовой сети с заданными параметрами: тип функции, объем используемой оперативной памяти RAM, объем используемой энергонезависимой памяти ROM, периодичность вызова T, количество тактов вычислителя, за которые выполняется функция N, размер сообщения, передаваемого при каждом вызове DataSize. Далее задаются связи между функциями по интерфейсу AFDX (граф взаимосвязей с множеством функций M, с заданной ресурсоемкостью и ребрами, определяющими взаимосвязи между заданными функциями) и формируется перечень взаимных исключений, определяющий запрет нахождения заданных типов функций в одном вычислителе. Далее задают пределы загрузки вычислителя для ОЗУ, ПЗУ и производительности соответственно (изменяются в пределах от 0,01 до 1) L, L и L соответственно. Затем формируют значения коэффициентов приоритета K, K, K, K, определяющих важность оптимизации параметров RAM, ROM, F, V соответственно.
Далее определяют возможность помещения всех функций на уровне систем в один из вычислителей заданного перечня, при этом сопоставляют ресурсоемкость множества функций (всего графа множества функций M) каждому вычислителю из заданного перечня, который обеспечивает наименьшее сопоставления параметров вычислителя и ресурсоемкости присваиваемых ему функций Iopt (6).
В случае если найден вычислитель, обеспечивающий наименьшее значение сопоставления параметров вычислителя и ресурсоемкости присваиваемых ему функций Iopt (6), результат записывается в результирующие таблицы и процесс проектирования бортовой сети заканчивается. В таком случае обеспечивается синтез бортовой сети без сетевых взаимодействий с оптимальным соотношением ресурсоемкости вычислителя и набора функций, помещенных в него.
opt
Если такой вычислитель не определен, то далее на втором этапе сопоставляют ресурсоемкость каждой свободную вершину графа с каждым свободным вычислителем из заданного перечня, при этом выбирают вычислитель, который обеспечивает наименьшее значение сопоставления параметров вычислителя и ресурсоемкости присваиваемых ему функций I(6).
opt
На третьем этапе найденную вершину поочередно объединяют с каждой из оставшихся свободных вершин (с учетом заданной на первом этапе перечня взаимных исключений) и сопоставляют каждое такое объединение с каждым оставшимся свободным вычислителем из заданного перечня таким образом, чтобы обеспечивалось наименьшее значение сопоставления параметров вычислителя и ресурсоемкости присваиваемых ему функций l (6).
opt
На четвертом этапе полученное объединение функций объединяют поочередно с каждой оставшейся функцией из заданного перечня, не входящей в полученное объединение, с учетом заданного перечня исключений и поочередно сопоставляют ресурсоемкость такого объединения функций с параметрами каждого вычислителя из заданного перечня, при этом выбирают вычислитель, обеспечивающий наименьшее значение сопоставления параметров вычислителя и ресурсоемкости присваиваемого ему объединения функций I, и повторяют четвертый этап до тех пор, пока при сопоставлении ресурсоемкость объединения функций не превысит параметры каждого вычислителя из заданного перечня.
На пятом этапе, используют последнее объединение функций и вычислитель, при сопоставлении ресурсоемкости и параметров которых ресурсоемкость последнего объединения функций не превышала параметры каждого вычислителя из заданного перечня, определяют вычислитель и подмножество функций, входящих в полученное объединение функций, помечают как использованные.
далее используют функции и вычислители, не помеченные как использованные на предыдущем этапе, и повторяют этапы со второго по пятый до тех пор, пока каждой функции не будет определен вычислитель.
Далее проводится проверка на наличие свободных (не присвоенных ни одному вычислителю) вершин и случае, если свободных вершин не найдено, результаты проведенного проектирования бортовой сети сохраняются. В случае нахождения свободных вершин переходят к третьему этапу.
Процесс останавливается тогда, когда все функции будут помечены как использованные.
Выходными данными способа оптимизации архитектуры бортовой сети летательного аппарата являются перечни задействованных вычислителей исследуемой бортовой сети и перечни функций, принадлежащих каждому вычислителю данного перечня.
Таким образом, благодаря применению указанного способа решается задача оптимизации архитектуры бортовой сети летательного аппарата за счет перераспределения вычислительных задач (функций) между вычислителями бортовой сети с учетом заданных ограничений, определяющих требуемые характеристики в части функциональности, надежности, так как при распределении всех функций на уровне систем по вычислителям, выбираемым из заданного перечня (с заданными параметрами каждого вычислителя), с учетом таблицы (перечня) взаимных исключений, обеспечивается наибольшая загрузка каждого вычислителя по заданным параметрам, что приводит к уменьшению количества вычислителей бортовой сети, а также информационных потоков между элементами сети.