Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Денотативно-объектная модель вычислений для встроенных систем Лукичев Александр Николаевич

Денотативно-объектная модель вычислений для встроенных систем
<
Денотативно-объектная модель вычислений для встроенных систем Денотативно-объектная модель вычислений для встроенных систем Денотативно-объектная модель вычислений для встроенных систем Денотативно-объектная модель вычислений для встроенных систем Денотативно-объектная модель вычислений для встроенных систем Денотативно-объектная модель вычислений для встроенных систем Денотативно-объектная модель вычислений для встроенных систем Денотативно-объектная модель вычислений для встроенных систем Денотативно-объектная модель вычислений для встроенных систем Денотативно-объектная модель вычислений для встроенных систем Денотативно-объектная модель вычислений для встроенных систем Денотативно-объектная модель вычислений для встроенных систем
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Лукичев Александр Николаевич. Денотативно-объектная модель вычислений для встроенных систем : диссертация ... кандидата технических наук : 05.13.12 / Лукичев Александр Николаевич; [Место защиты: С.-Петерб. гос. ун-т информац. технологий, механики и оптики]. - Санкт-Петербург, 2008. - 170 с. : ил. РГБ ОД, 61:08-5/903

Содержание к диссертации

Введение

1 Модели вычислений встроенных систем 8

1.1 Введение 8

1.2 Современные тенденции в проектировании ВсС 9

1.2.1 Ключевые особенности встроенных систем 10

1.2.2 Методика Hardware-Software Co-Design 15

1.2.3 Акторное проектирование 17

1.2.4 Аспектный взгляд на процесс проектирования 22

1.3 Модели вычислений встроенных систем 23

1.3.1 Сети потоков данных 24

1.3.2 Модель с дискретными событиями 25

1.3.3 Синхронно-реактивные системы 26

1.4 Модель сигналов с тэгами 27

1.5 Объектно-событийная модель вычислений 29

1.6 Постановка задачи 37

2 Денотативно-объектная модель вычислений 40

2.1 Введение 40

2.2 Денотативное описание 41

2.2.1 Сигналы 41

2.2.2 Функциональные блоки 45

2.2.3 Композиции функциональных блоков 58

2.3 Временные характеристики моделей 66

2.3.1 Вычисление атрибутов ФБ с матрицей Т 66

2.3.2 Вычисление атрибутов синхронных портов сети ФБ 71

2.3.3 Условие иерархичности 76

2.3.4 Временной масштаб 79

2.3.5 Связь функциональных блоков 81

Оглавление

2.4 Источники и приемники сигналов 84

2.4.1 Приемники сигналов 84

2.4.2 Источники сигналов 85

2.5 Свойства вычислительного процесса 88

2.5.1 Детерминизм и строгая каузальность 88

2.5.2 Иерархичность и композициональность 89

2.5.3 Статический анализ временных характеристик 91

2.5.4 Живучесть 91

2.5.5 Отсутствие зеноповых поведений 92

2.6 Выводы 96

3 Прототип САПР системного уровня 98

3.1 Введение 98

3.2 Построение гетерогенных моделей 100

3.2.1 Абстрактный синтаксис 100

3.2.2 Абстрактная семантика 102

3.2.3 Функциональный полиморфизм 106

3.2.4 ДОМВ в другой модели вычислений 111

3.3 Имитационное моделирование 113

3.3.1 Пакет ptolemy.domains.oe.kernel 113

3.3.2 Инициализация 115

3.3.3 Имитационное моделирование 116

3.4 Анализ и верификация модели 119

3.4.1 Методика анализа 119

3.4.2 Вычисление атрибутов синхронных портов 120

3.4.3 Иерархичность и живучесть модели 122

3.4.4 Корректность и качество модели 123

3.5 Выводы 124

4 Применение ДОМВ при проектировании встроенных систем 126

4.1 Введение 126

4.2 СКУ МВРЛ "Аврора" 126

4.2.1 Подсистема контроля и управления 127

4.2.2 Контроллер команд и сигналов 129

4.2.3 Реализация ККС 133

4.3 Прикладное программирование на платформе "Терра" 134

4.3.1 Программно-аппаратная платформа "Терра" 134

4.3.2 Поддержка прикладного программирования 136

4.3.3 Характеристика механизма сигналов 140

4.3.4 Высокоуровневое программирование 142

4.4 Выводы 145

Оглавление

Заключение 147

Список литературы

Введение к работе

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

Высокая сложность и бурное развитие элементной базы ВсС приводит к повышению уровня абстракции, на котором принимается основной объем проектных решений. Это требует широкого использования моделирования и методов математического анализа и формальной верификации моделей ВсС.

На передний план традиционно при этом выступают поведенческие модели, задающие функциональность и поведение во времени проектируемых систем. Важное значение при поведенческом моделировании имеет используемая модель вычислений (модель организации вычислительного процесса). Под моделью вычислений понимается набор правил организации вычислительного процесса, в рамках которых возможен его формальный анализ. Яркими примерами моделей вычислений являются: конечные автоматы, дискретно-событийные, синхронно-реактивные и гибридные модели, сети потоков данных.

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

Введение

составляющие в одной модели, что ограничивает возможности и эффективность существующих методик и инструментов проектирования ВсС. Актуальным является создание моделей вычислений, учитывающих как информационный, так и управляющий аспекты, а также систем автоматизированного проектирования (САПР) на их основе. Важным является возможность объединения таких моделей с моделями аналоговых, механических и других подсистем в рамках гетерогенного моделирования.

В наибольшей степени указанным требованиям отвечают модель сигналов с тэгами (Tagged Signal Model, TSM) E.A. Lee и A. Sangiovanni-Vincentelli и объектно-событийная модель вычислений (ОСМВ) Постникова Н.П. Тем не менее, они обладают рядом серьезных недостатков и ограничений.

Целью работы является создание модели вычислений, учитывающей информационный и управляющий аспекты, реальный масштаб времени и параллелизм вычислительного процесса ВсС, а также исследование подходов к созданию САПР системного уровня на ее основе.

Для достижения указанной цели в работе были решены следующие задачи:

  1. Исследование моделей организации вычислительного процесса, характерных для ВсС. Выделение моделей вычислений, учитывающих информационный и управляющий аспекты ВсС в той или иной степени.

  2. Разработка модели вычислений, в явном виде учитывающей информационный и управляющий аспекты, реальный масштаб времени и параллелизм вычислительного процесса ВсС, и одновременно не имеющей выявленных недостатков рассмотренных моделей вычислений.

  3. Исследование формальных свойств вычислительного процесса в рамках предложенной модели.

  4. Разработка системы количественных оценок моделей ВсС, основу которой составляют понятия связи функциональных блоков и временного масштаба вычислений.

  5. Разработка математического аппарата для расчета временных характеристик моделей, учитывающего обратную связь, времязадающие элементы, источники и приемники событий.

Введение

  1. Разработка метода, на основании которого возможна формальная верификация модели в части ограничений реального времени и отсутствия взаимных блокировок.

  2. Исследование возможностей сопряжения предложенной модели вычислений с другими моделями вычислений встроенных систем, а также условий их иерархического гетерогенного моделирования.

  3. Создание прототипа САПР системного уровня на основе предложенной модели вычислений. САПР позволяет строить иерархические модели ВсС, включающие времязадающие элементы и объекты управления, и производить оценку основных характеристик моделей.

Методологическую базу исследования составляют методы линейной алгебры, теории множеств и решеток, топологии, функционального анализа, формальной логики, теории доменов, функционального и объектно-ориентированного программирования,

имитационного моделирования. '

Научная новизна работы:

  1. Разработана денотативно-объектная модель вычислений (ДОМВ) для встроенных систем на основе TSM и ОСМВ, в явном виде учитывающая информационный и управляющий аспекты ВсС. Модель вычислений позволяет строить логически замкнутые модели ВсС, включающие объекты управления и времязадающие элементы ВсС, а также позволяет использовать обратную связь и объединять управляющие потоки.

  2. Показано, что вычислительный процесс в рамках предложеной модели вычислений обладает детерминизмом, не может иметь каузальных циклов и зеноно-вых поведений.

  3. Предложен механизм на основе ряда ограничений, позволяющий иерархическое сопряжение ДОМВ с классом моделей вычислений, удовлетворяющих актива-ционной абстрактной семантике. На примере трех моделей вычислений из этого класса показано, что такое объединение не противоречит их семантикам.

Введение

  1. Предложен метод вычисления временных характеристик модели, не зависящий от способов расчета характеристик ее отдельных компонентов, ее топологии, допускающий обратную связь, источники и приемники сигналов.

  2. Введены определения связи функциональных блоков и временного масштаба модели. Разработаны методы их количественной оценки.

  3. На основе понятий связи функциональных блоков и временного масштаба модели сформулированы критерии качества модели.

  4. Разработан метод формальной верификации модели, позволяющий проводить проверку выполнения требований реального времени и включающий формальное условие отсутствия блокировок и зависаний в процессе работы системы. Сформулировано необходимое и достаточное условие иерархичности моделей.

Практическая ценность работы заключается в создании прототипа САПР системного уровня на основе разработанной модели вычислений, позволяющего строить логически замкнутые поведенческие модели ВсС, включающие объекты управления и времязадающие элементы. Модели могут иметь иерархию и быть гетерогенными (с использованием ряда моделей вычислений). Предложена методика анализа и верификации модели, реализованная в разработанном прототипе САПР. Сформулированы требования и даны рекомендации по иерархическому сопряжению ДОМВ в рамках гетерогенного моделирования.

Предложена методика высокоуровневого проектирования встроенных вычислителей на платформе "Терра" с использованием разработанного прототипа САПР. Разработаны инструменты автоматического анализа планируемости и частичной трансляции поведенческих моделей в исходный код на языке С. Разработан уровень поддержки ДОМВ в ОС реального времени "Терра", обеспечивающий взаимодействие задач и ресурсов платформы в рамках предложенной модели вычислений.

На основе предложенного в работе метода, разработан алгоритм вычисления временных характеристик иерархической модели. Проведены эксперименты и показано, что для одних и тех же иерархических моделей разработанный алгоритм требует значительно меньших затрат памяти при незначительном изменении времени, по сравнению с алгоритмом ОСМВ.

Введение

Элементы предложенной модели вычислений применены в более, чем 10 НИР и НИОКР. Наиболее показательными из них следует считать: система контроля и управления моноимпульсного вторичного радиолокатора "Аврора" и программно-аппаратная платформа прикладных вычислителей встроенных систем "Терра". Результаты работы использованы в учебных курсах кафедры Вычислительной техники СПбГУ ИТМО в рамках инженерной и магистерской подготовки по специализациям "Информационно-управляющие системы" (230101.65.12) и "Системы реального времени" (230100.68.20), а также в рамках учебных модулей "Проектирование встроенных вычислительных систем" и "Схемотехника интегральных вычислителей" инновационной образовательной программы СПбГУ ИТМО.

Апробация работы произведена в 8 докладах на 7 международных и всероссийских конференциях. Основные результаты опубликованы в 7 работах. Работа поддержана грантом правительства Санкт-Петербурга 03/3.11/15-03/14 в рамках конкурса грантов студентов и аспирантов 2007 года.

Ключевые особенности встроенных систем

Время Наиболее существенным недостатком такой концепции вычислений во встроенных системах является отсутствие в ней понятия времени. Попытки компенсации этого недостатка наблюдаются повсеместно: в архитектуру ВсС добавляют механизмы измерения времени и защиты от чрезмерных задержек (тайм-аут, Watchdog), в области операционных систем реального времени применяют статические алгоритмы планирования и методы анализа времени исполнения задач, в области сетевого взаимодействия применяют механизмы синхронизации и обеспечения гарантированного времени доставки сообщений. Тем не менее, в современной микропроцессорной технике широко используются такие механизмы повышения производительности как конвейерная обработка и выборка команд, предсказание переходов, многоуровневое кэширование инструкций и данных. Современные операционные системы, в том числе и ОСРВ, не обходятся без применения виртуальной памяти, обслуживание которой делает невозможным точно задать время выполнения вычислений. Это зачастую вынуждает разработчика отказываться от того или иного микропроцессора, принудительно отключать механизмы повышения производительности и безопасности (кэш, MMU). Если для вычислительных систем других классов архитектурные улучшения, дающие существенное увеличение средней производительности, активно приветствуются, то в области встроенных систем они считаются в лучшем случае не нужными. Технологические достижения микропроцессорной техники последних 20 лет практически не используются, за исключением увеличения тактовой частоты и разрядности слова [9].

До сих пор основная часть ВсС программируется на Си и с использованием асем блера. Применение этих языков 25 лет назад было оправданно эффективностью использования значительно ограниченных вычислительных ресурсов ВсС. На сегодня эти ограничения практически отсутствуют: объем памяти встроенных систем достигает сотен мегабайт, тактовая частота микропроцессоров до 2 ГГц. По мнению Ли [2,9], истинная причина заключается в том, что программируя на языках низкого уровня, разработчик пытается добиться контроля над временем исполнения программы. На сегодня не существует ни одного широко используемого языка программирования, семантика которого бы учитывала время вычислений. В настоящее время понятие "корректности" программы не имеет ничего общего с понятием "времени".

Для любого языка, обладающего полнотой по Тьюрингу, невозможно найти время выполнения программы. Этот тезис абсурден для встроенных систем, для которых своевременность воздействия на управляемый процесс так oice важна, как и корректный выбор этого воздействия.

Параллелизм

Концепция вычислений на основе машины Тьюринга не содержит в себе понятия параллелизма вычислений. Попытка его включения в эту концепцию через рассмотрение нескольких одновременно работающих машин Тьюринга привела к созданию потоковой модели (threading) исполнения программ.

Для объектов реального мира, с которыми приходится иметь дело в области ВсС, параллелизм процессов является неотъемлемым свойством. Соответственно, создание встроенной системы, управляющей параллельными физическими процессами, требует внедрения параллелизма и в вычисления. Современные ВсС реагируют на множество асинхронных потоков данных от датчиков и параллельно управляют множеством исполнительных устройств. Сложные объекты управления требуют создания распределенных ВсС, в которых вычисления локализованы в нескольких вычислительных узлах, объединенных в контроллерную сеть. Каждый узел в распределенной системе одновременно выполняет несколько задач: управляет объектами и координирует свои действия с другими узлами. Параллелизм вычислений является типичным свойством встроенных систем.

Тем не менее, единственным широко используемым механизмом выражения параллелизма в современных языках программирования является многопотоковость. Даже механизм прерываний, незаменимый при выполнении асинхронного ввода/вывода, не находит достойного места в семантике языков программирования [9,10]. Многопотоковость, однако, по мнению многих исследователей (например, [11-13]), является довольно плохой моделью параллелизма с точки зрения проектирования. Вместо того, чтобы вносить ясность в суть вычислительного процесса, многопотоковая модель часто грозит запутать проектировщика, превращая его работу в предотвращение блокировок, разграничение доступа к совместно используемым ресурсам и "ручную" синхронизацию потоков. Специалисты отмечают необходимость создания более ясной модели, описывающей параллельные вычисления, и внедрения ее в современные языки программирования.

Информационно-управляющая природа

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

С другой стороны, описание логики управления в цифровых (дискретных) системах обычно предполагает реакцию на отдельные события появления новых данных о состоянии объекта (изменение состояния). Управляющий блок реагирует на событие, руководствуясь текущим состоянием процесса управления и новыми данными. При этом, на выбор управляющего воздействия часто влияет также момент времени, в который изменилось состояние объекта. Не менее важным является своевременность выдачи управляющих воздействий, то есть предсказуемость времени вычислений и моментов генерации управляющих сигналов. На передний план при проектировании управляющих блоков выступают такие характеристики как время отклика, задержка управления, детерминизм, безопасность, отсутствие взаимных блокировок и зависаний вычислительного процесса. Требуемая производительность системы, ее ресурсоемкость и точность вычислений важны лишь с точки зрения необходимого минимума. Сигналы в таких блоках представляют собой совокупность упорядоченных во времени событий, интервалы между которыми могут существенно влиять на логику управления. Проектирование управляющих блоков требует наличия ясного механизма координации моментов поступления событий, активизации вычислений и выдачи управляющих воздействий, позволяющего проводить формальный анализ и верификацию процесса управления.

Композиции функциональных блоков

На практике довольно редко встречается ситуация полного совпадения выходных сигналов у различающихся функциональностью компонентов системы. Несовпадение же сигналов на соединенных выходах приводит к конфликту на линии передачи сигнала. С другой стороны, практическая ценность соединения выходов двух компонент, на которые можно подавать лишь некоторые, строго определенные, сигналы, гарантирующие на их выходах полное совпадение (как по значениям, так и по временным меткам событий), вряд ли велика. Даже идентичные с точки зрения модели ФБ в реальности будут совпадать лишь до некоторой степени. В реальной вычислительной системе обеспечение полного совпадения значений на выходах двух компонент представляет большую сложность с технической точки зрения. Если же требуется обеспечить совпадение большего количества выходов, то без применения дополнительных механизмов согласования невозможно обойтись, то есть модель уже будет отличаться от изначальной. Поэтому вряд ли модель такой системы (соединяющая два или несколько выходов ФБ) имеет какую-либо ценность, хотя и допустима с точки зрения TSM.

Соединение между двумя синхронными портами ФБ (выходом и входом) означает также, что (5-ДС сигнал, наблюдаемый на них, должен удовлетворять требованиям обоих портов, то есть значение 5 этого сигнала должно быть не меньше значений 2.2. Денотативное описание их атрибутов (ш и 7)- Если это не так, то сигнал недопустим для соединения, а следовательно поведение не содержится композицией с этим соединением. Кроме того, сигнал должен быть допустим для всей композиции.

Определение 2.17 (Корректность соединения) Соединение С между портами корректно, если множество этих портов Р содержит, максимум один выход, и если сигнал между ними удовлетворяет требованиям всех синхронных портов ps Є Р. То есть, если для всех синхронных портов ps Є Р с атрибутами TS:

Стоит отметить несколько моментов, касающихся корректности соединений и вытекающих из определения 2.17: говорить о корректности соединения можно только при данном сигнале между портами; соединение между портами допускает максимум один выход. То есть, соединения двух или более выходов некорректны; соединение, не содержащее выходного порта, корректно всегда; соединение, не содержащее синхронных входов и содержащее максимум один выход, также корректно всегда; корректное соединение между портами, среди которых есть хотя бы один синхронный, допускает только Й-ДС сигналы; минимальные интервалы между генерируемыми на выходе событиями должны удовлетворять требованиям всех синхронных входов соединения.

Пусть произвольное соединение между портами в композиции функциональных блоков включает один выходной порт ФБ р0. Тогда можно сформулировать условие корректности соединения.

Теорема 2.2 (Корректность соединения с выходом) Соединение между выходом и входами функциональных блоков корректно тогда и только тогда, когда для всех соединенных с ним синхронных входов с атрибутами ji верно и d li, где й есть атрибут выхода ФБ для данного его поведения. 2.2. Денотативное описание

Доказательство. Пусть в композиции ФБ С существует соединение между множеством портов Р, один из которых есть выход р0. Пусть каждый синхронный порт ps Є Р имеет атрибут т3. Очевидно, TS = w, если порт является выходом, ит5 = 7ь ес_ ли он является входом. Согласно определению 2.17, соединение корректно, если для данного поведения композиции 6(a(ps)) т3. Однако, для всякого поведения композиции 5(а(р0)) есть ни что иное, как атрибут й выхода (это тривиально следует из определения атрибутов Г и ГІ). (Достаточность.) По определению, для выхода ФБ й ш, поэтому, если для всех синхронных входов верно и X 7ь то для них также верно й = 5(а(р0)) = 5(a{ps)) TS = 7«, так как Vp Є Р : ?{р0) = {р) (НеобхОДИМОСТЬ.) ПуСТЬ Существует ТаКОЙ СИНХРОННЫЙ ВХОД Ріп Є Р, что и 2 7гп- Тогда для данного поведения и = 5(а(р0)) = S(a(pin)) - тіп = fin, то есть соединение некорректно. Следовательно, если соединение корректно, то должно быть верно обратное, то есть для всех синхронных входов с атрибутом 7г & di 7»- Лю [52] доказал, что произвольная композиция непрерывных акторов с множеством тэгов Т, представляющим собой замкнутое подмножество R, то есть любой интервал действительных чисел, также непрерывно. Функциональный блок является непрерывным, а множество Т в денотативно-объектной модели есть начальный сегмент R+, множества неотрицательных действительных чисел. Следовательно, результаты Лю применимы к ДОМВ, и произвольная композиция ФБ является непрерывной.

Лю также доказывает, что если все акторы в указанной выше композиции каузальны, и в каждую обратную связь включен хотя бы один строго каузальный актор, то такая композиция каузальна. Усилим эту теорему, доказав, что если все акторы строго каузальны, то композиция также строго каузальна.

Теорема 2.3 (Строгая каузальность) Произвольная композиция конечного числа ФБ А = Лі Л /Ь Л ... Л Ап с конечными множествами входных портов Р\п и выходных Р0 (при условии, что множество Р0 непустое) строго каузальна.

Функциональный полиморфизм

Архитектура Ptolemy II, инфраструктура передачи сигналов и управления имитационным моделированием, в частности иерархическая организация абстрактных семантик (см. Рис. 3.3) позволяют добиться функционального полиморфизма акторов, в том смысле, что один и тот же актор может быть использован в рамках различных моделях вычислений. В данном разделе не затрагиваются вопросы полиморфизма с точки зрения типов данных (обработки данных различных типов одинаковым образом), так как они имеют лишь косвенное отношение к понятию модели вычислений. Тем не менее, Ptolemy II позволяет использование полиморфных с точки зрения типов данных акторов, и все акторы его стандартной библиотеки обладают этим свойством.

Понятие функционально полиморфного актора может быть задано лишь до некоторой степени, так как любая модель вычислений имеет свою специфику (дополнительные ограничения), несмотря на то, что она может удовлетворять той или иной абстрактной семантике. Функционально полиморфный актор может быть использован лишь в некоторых моделях вычислений или в одной и той же модели лишь в сочетании с некоторым типом акторов. Обычно относительно функционально полиморфного актора можно сделать следующие предположения [20,39]: функциональность. Одна и та же последовательность токенов на входе должна давать одну и ту же последовательность токенов на выходе; однонаправленность портов. Любой порт актора либо вход либо выход; монотонность. Функция от любого префикса (см. определение 2.5) конечной входной последовательности токенов будет префиксом функции от этой последовательности; отсутствие времени в семантике. Время является дополнительным атрибутом токена, и управление им обычно осуществляется директором {ptolemy-. actor.Director) модели вычислений. Актор, зависящий от этого атрибута, безусловно будет предполагать наличие некоторого интерфейса к директору (например, для получения текущего модельного времени). Такой актор обычно не может быть использован в моделях вычислений, директоры которых не имеют предполагаемого интерфейса. Тем не менее, некоторые полиморфные акторы учитывают возможность его отсутствия и используют время, если это понятие существует в модели вычислений.

Построение гетерогенных моделей нулевое время вычислений. Поскольку в семантике функционально полиморфного актора отсутствует время, при его использовани в модели вычислений, в которой это понятие существует, метки времени токенов на выходе актора будут иметь текущее значение модельного времени, совпадающее с моментом его активации, то есть с меткой времени хотя бы одного токена на его входном порте. Для того, чтобы вычисления производились за ненулевое время, обычно требуется "доработать" актор, создав некоторый атрибут, распознаваемый в модели вычислений; каузальность. Как следствие монотонности в отсутствие времени в семантике; обновление внутреннего состояния в postfireQ. Если актор имеет внутреннее состояние, то оно обновляется в методе postfireQ. Это гарантирует, что состояние будет обновлено только один раз в процессе активации (метод fire() может быть вызван несколько раз). См. [53].

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

В соответствии с определением 2.15, актор является ФБ, если актор функциональный и непрерывный; хотя бы один из его входов синхронный; актор строго каузальный; для него заданы атрибуты синхронных портов и непрерывная функция их вычисления, удовлетворяющая условиям (2.28), (2.29) и (2.30).

Большинство функционально полиморфных акторов удовлетворяют первому требованию, с учетом того, что при имитационном моделировании сигналы будут содержать конечное число токенов, а для конечных сигналов монотонность означает непрерывность. Чтобы актор удовлетворял остальным требованиям, необходимо: хотя бы для одного входа задать атрибут j, создав его параметр (ptolemy.data-.expr.Parameter) с именем gamma типа double (актор должен иметь хотя бы один вход);

Подсистема контроля и управления

Аппаратура МВРЛ размещена в двух контейнерных модулях: наземном и антенном, расположенном на башне высотой 20-50 м, в который вынесены только привод вращения антенны и приемники ответов по трем каналам. Оба помещения оборудованы системой обеспечения теплового режима (отопление, вентиляция и кондиционирование) и пожарной сигнализацией. Локатор имеет источник бесперебойного питания, позволяющий в случае внезапного отключения внешнего питания сохранять работоспособность в течение нескольких часов. Все основные функциональные узлы локатора дублированы и работают в режиме "горячего" резервирования. Схема энергообеспечения и управления устройствами приведена на Рис. 4.1. Управление питанием, коммутацией радиолокационного тракта, температурным режимом и резервированием осуществляется штатной системой контроля и управления (СКУ) МВРЛ "Аврора". СКУ позволяет в автоматизированном режиме осуществлять включение и выключение локатора, проверку работоспособности, калибровку радиолокационных узлов и коммутацию тракта, принудительное переключение с основного на резервный блок, выполнять инструментальные задачи (извлечение архива радиолокационной и служебной информации, обновление программного обеспечения различных узлов, настройку параметров работы локатора и т.д.). В автоматическом режиме СКУ выполняет следующие задачи: регулирование температурного режима помещений, мониторинг работоспособности и резервирование блоков в случае внезапного выхода из строя, архивирование радиолокационной и служебной информации.

Задачи контроля и управления выполняются, в основном, тремя блоками: местный терминал (прием команд оператора и отображение состояния локатора), процессор контроля и управления (системный контроль, управление трактом, настройка и калибровка устройств) и контроллер команд и сигналов (выполнение процедур включения/выключения конкретных устройств, коммутация силовых и высокочастотных цепей, мониторинг их состояния, управление температурным режимом помещений). Структурная схема СКУ изображена на Рис. 4.2. СКУ включает два контроллера команд и сигналов (ККС) для управления устройствами соответственно контейнера и антенного модуля. Местный терминал представляет собой интерактивное приложенис и функционирует в масштабе времени порядка единиц секунд (достаточное для отображения состояния и ввода команд оператором). Временной масштаб ПКУ (дискретность системного контроля) составляет 100 мс, а ККС выполняет задачи в масштабе единиц мс.

Контроллер команд и сигналов (ККС) обеспечивает непосредственное сопряжение СКУ с основной частью устройств локатора. Для мониторинга состояния устройств ККС имеет 36 дискретных и 32 аналоговых входных канала, а для управления устройствами 36 дискретных выходных сигналов. ККС выполняет функции сбора и предварительной обработки (оцифровка аналоговых сигналов, синтез интегральных показателей "норма") информации о состоянии объектов контроля, выполнение процедур управления устройствами в масштабе времени нескольких мс по запросу ПКУ, а также автоматическое управление температурой в помещении. Кроме того,

ККС самостоятельно координирует увправление с резервным комплектом, чтобы в случае переключения на резервный состояние управляющих сигналов не изменилось. С точки зрения ДОМВ, ККС представляет собой на внешнем уровне функциональный блок, выполняющий запросы от ПКУ и реагирующий на состояние соседнего ККС (резервного). Информация о состоянии объектов контроля воспринимается периодически и одновременно в моменты, заданные временным масштабом внутренней реализации ФБ. На Рис. 4.3 представлена модель ККС в рамках ДОМВ. Каждому функциональному блоку модели соответствует одна из вышеперечислен Input 1 ных задач ККС. Назначение ФБ сведено в таблицу 4.2. ФБ MEI на Рис. 4.3 осуществляет прием и обработку запросов от ПКУ на чтение состояния объектов контроля, выполнение операций управления устройствами, переход в резерв и другие действия, а также отправку ответов с результатами. По требованиям ПКУ, обработка запросов (включая пересылку ответа) должна занимать НЄ больше 100 МС (JMEI Rcq) ФБ Sig осуществляет оцифровку и первичную обработку аналоговых сигналов от объектов контроля, обеспечивает адресацию (независимую от цоколевки внешних разъемов ККС) входных и выходных сигналов, а также синхронизирует запросы на установку значений сигналов управления от различных ФБ. Время выполнения запросов на установку сигналов не должно превышать 4 мс (требование объектов управления).

ФБ SSP (Step-by-Step Procedure interpretator) представляет собой виртуальную машину [61,76], по командам от ФБ MEI выполняющую заданную процедуру управления конкретным устройством локатора. Процедуры управления хранятся в энергонезависимой памяти ККС и выполняются по шагам. Время выполнения шага фиксировано и задается периодом синхронизации SSP, которую осуществляет ФБ Cycle.

ФБ TCS (Temperature Control System) осуществляет управление системой обечпе-чения теплового режима в помещении (СОТР), состоящей из набора температурных датчиков, устройств обогрева, вентиляции и кондиционирования, а также контролируемых элементов защиты питания. TCS позволяет управление устройствами СОТР при работоспособности трех, двух или одного из датчиков, имеет возможность блокировки при переводе ККС в резерв или по запросу от ПКУ и настройки параметров управления (пороговых значений температуры и гистерезиса). Управление производится в масштабе времени, соответствующем минимум 500 мс.

ФБ 1С (Intercomplect Control) отвечает за обеспечение резервирования ККС: синхронизацию управления, взаимодействие при начальном старте или потере/восстановлении связи, безопасное для объектов управления переключение на резервный; 1С реагирует на изменение состояния соседнего ККС (резервного/основного) и на запросы от ПКУ, мультиплексируя значения собственных управляющих сигналов и значения соседнего ККС. Управление трактом (7/с other) осуществляется в масштабе времени 10 мкс.

Временной масштаб управления устройствами по запросу от ПКУ (SSP), управления СОТР (TCS) и обновления оцифрованных значений аналоговых сигналов (Sig) задает ФБ Cycle, который представляет собой источник периодических событий. Поскольку дискретность установки значений управляющих сигналов не должна превышать 4 мс (см. выше), временной масштаб этих задач соответствует максимум 4 мс.

Реализация поведения отдельных ФБ в модели изменялась в процессе проектирования. Моделирование производилось с использованием прототипа САПР системного уровня с поддержкой ДОМВ на основе комплекса Ptolemy П. Внутренняя реализация ФБ описывалась на Java либо в среде Vergil в виде гетерогенной модели (ОЕ, DE, СТ, FSM).

На верхнем уровне иерархии модели ККС на Рис. 4.3 отсутствует цепь обратной связи (см. определение 2.21), хотя ее содержит реализация почти всех ФБ (кроме Sig) на более низком уровне иерархии. В частности, Cycle представляет собой источник событий, пример которого был показан на Рис. 2.18.

Различные варианты реализации поведения ФБ давали различные временные характеристики модели. Принятый вариант временных характеристик приведен в таблице 4.3. В таблице указаны характеристики внешних синхронных портов ККС и временные масштабы отдельных ФБ. Временные масштабы указаны в Гц (см. определение 2.22). Из таблицы видно, что временной масштаб ФБ 1С отличается на два порядка от масштабов других ФБ.

Было показано, что вычислительный процесс в модели ККС обладает живучестью (на любой поступивший запрос будет гарантированно получен ответ [57]). Дополнительно к этому, было показано, что время ответа не будет превышать установленного требованиями значения (вычисление минимальных интервалов генерации выходных событий).

Похожие диссертации на Денотативно-объектная модель вычислений для встроенных систем